diff --git a/.editorconfig b/.editorconfig index 3e3bd16bb34..7df89a90eb3 100644 --- a/.editorconfig +++ b/.editorconfig @@ -9,8 +9,6 @@ charset = utf-8 end_of_line = lf insert_final_newline = true -# PHP PSR-2 Coding Standards -# http://www.php-fig.org/psr/psr-2/ [*.php] indent_style = tab indent_size = 4 diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index 5e56ac2a1fc..fed73d7b002 100644 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -4,7 +4,7 @@ How to contribute to Dolibarr Bug reports and feature requests -------------------------------- -*Note*: Issues are not a support forum. If you need help using the software, please use [the forums](http://www.dolibarr.org/forum). +*Note*: Issues are not a support forum. If you need help using the software, please use [the forums](https://www.dolibarr.org/forum). Issues are managed on [GitHub](https://github.com/Dolibarr/dolibarr/issues). @@ -104,31 +104,32 @@ Long description (Can span accross multiple lines). Pull Request (PR) process is the process to submit a change (enhancement, bug fix, ...) into the code of the project. There is some rules to know and a process to follow to optimize the chance to have PRs merged efficiently... -When submitting a pull request, use same rule as [Commits](#commits) for the message. -If your pull request only contains 1 commit, GitHub will be smart enough to fill it for you. -Otherwise, please be a bit verbose about what you're providing. +* A PR must be atomic. It means it must contains the lower possible changes for 1 need (1 bug fix or 1 new feature) without breaking usability of code. If a PR can be split into several PRs, it often means your PR is not atomic. + +* Your Pull Request (PR) must pass the Continuous Integration checks and code quality checks. + +* When submitting a pull request, use same rule as [Commits](#commits) for the message. If your pull request only contains 1 commit, GitHub will be smart enough to fill it for you. Otherwise, please be a bit verbose about what you're providing. -Your Pull Request (PR) must pass the Continuous Integration checks and code quality checks. Also, some code changes need a prior approbation: -* if you want to include a new external library (into htdocs/includes directory), please ask before to the project manager (@eldy) to see if such a library can be accepted. +* if you want to include a new external library (into htdocs/includes directory), please ask before to the core project manager (mention @dolibarr-yoda in your issue) to see if such a library can be accepted. -* if you add a new table, you must first create a page on https://wiki.dolibarr.org/index.php/Category:Table_SQL (copy an existing page changing its name to see it into this index page). Then ask the project manager (@eldy) if the new data model you plan to add is compatible with curent and future works in progress and can be accepted as you suggest. +* if you add a new table, you must first create a page on https://wiki.dolibarr.org/index.php/Category:Table_SQL (copy an existing page changing its name to see it into this index page). Then ask the project manager (@dolibarr-yoda) if the new data model you plan to add is compatible with curent and future works in progress and can be accepted as you suggest. 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 (A label is added in such a case). -If the label of PR start with "WIP" (Work In Progress), it will not be analyzed (until you change the label of PR). +If the label of PR start with "Draft" or "WIP" (Work In Progress), it will not be analyzed for merging until you change the label of PR (but it can be analyzed for discussion). 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 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 tag ask you. The majority of open PR are waiting an action of the author of the PR. -Statistics on Dolibarr project shows that around 95% of submitted PR are reviewed and tagged. Average answer delay is also one of the best among Open source project (just few days before having the Answer Tag set). This is one of the most important ratio of answered PR in Open Source world for a major project. Don't expect the core team to reach the 100%. A so high ratio is very rare on a so popular project and with the increasing popularity of Dolibarr, this ratio will probably decrease in future to a more common level. +Statistics on Dolibarr project shows that 95% of submitted PR are reviewed and tagged. Average answer delay is also one of the best among Open source projects (just few days before having the Answer Tag set). This is one of the most important ratio of answered PR in Open Source world for a major project. Don't expect the core team to reach the 100%. A so high ratio is very rare on a so popular project and with the increasing popularity of Dolibarr, this ratio will probably decrease in future to a more common level. ### Resources -[Developer documentation](http://wiki.dolibarr.org/index.php/Developer_documentation) +[Developer documentation](https://wiki.dolibarr.org/index.php/Developer_documentation) Translations ------------ @@ -144,11 +145,11 @@ to retreive all old translation of a source text, and restore the translation in ### Resources -[Translator documentation](http://wiki.dolibarr.org/index.php/Translator_documentation) +[Translator documentation](https://wiki.dolibarr.org/index.php/Translator_documentation) Documentation ------------- -The project's documentation is maintained on the [Wiki](http://wiki.dolibarr.org/index.php). +The project's documentation is maintained on the [Wiki](https://wiki.dolibarr.org/index.php). *Note*: to help prevent spam, you need to create an account before being able to edit. Everybody is welcome to contribute to its content. diff --git a/.scrutinizer.yml b/.scrutinizer.yml index 7c43ab24aef..6dbf39bde26 100644 --- a/.scrutinizer.yml +++ b/.scrutinizer.yml @@ -194,22 +194,6 @@ tools: - 'test/*' - 'htdocs/includes/*' paths: { } - - php_changetracking: - enabled: false - bug_patterns: - - '\bfix(?:es|ed)?\b' - feature_patterns: - - '\badd(?:s|ed)?\b' - - '\bimplement(?:s|ed)?\b' - filter: - excluded_paths: - - 'build/*' - - 'dev/*' - - 'doc/*' - - 'test/*' - - 'htdocs/includes/*' - paths: { } # Coding-Style / Bug Detection js_hint: diff --git a/.travis.yml b/.travis.yml index 688d706331d..f7903361b02 100644 --- a/.travis.yml +++ b/.travis.yml @@ -291,7 +291,7 @@ script: # Ensure we catch errors set -e # Exclusions are defined in the ruleset.xml file - #phpcs -s -n -p -d memory_limit=-1 --colors --tab-width=4 --standard=dev/setup/codesniffer/ruleset.xml --encoding=utf-8 . + #phpcs -s -p -d memory_limit=-1 --extensions=php --colors --tab-width=4 --standard=dev/setup/codesniffer/ruleset.xml --encoding=utf-8 --runtime-set ignore_warnings_on_exit true . if [ "$TRAVIS_PULL_REQUEST" = "false" ]; then phpcs -s -p -d memory_limit=-1 --extensions=php --colors --tab-width=4 --standard=dev/setup/codesniffer/ruleset.xml --encoding=utf-8 --runtime-set ignore_warnings_on_exit true .; fi set +e echo @@ -404,6 +404,10 @@ script: php upgrade.php 11.0.0 12.0.0 ignoredbversion > $TRAVIS_BUILD_DIR/upgrade11001200.log php upgrade2.php 11.0.0 12.0.0 > $TRAVIS_BUILD_DIR/upgrade11001200-2.log php step5.php 11.0.0 12.0.0 > $TRAVIS_BUILD_DIR/upgrade11001200-3.log + php upgrade.php 12.0.0 13.0.0 ignoredbversion > $TRAVIS_BUILD_DIR/upgrade12001300.log + php upgrade2.php 12.0.0 13.0.0 > $TRAVIS_BUILD_DIR/upgrade12001300-2.log + php step5.php 12.0.0 13.0.0 > $TRAVIS_BUILD_DIR/upgrade12001300-3.log + # Enable modules not enabled into original dump php upgrade2.php 0.0.0 0.0.0 MAIN_MODULE_API,MAIN_MODULE_SUPPLIERPROPOSAL,MAIN_MODULE_WEBSITE,MAIN_MODULE_TICKETSUP,MAIN_MODULE_ACCOUNTING > $TRAVIS_BUILD_DIR/enablemodule.log echo $? diff --git a/ChangeLog b/ChangeLog index 68cd7695057..ffb51bd26c3 100644 --- a/ChangeLog +++ b/ChangeLog @@ -2,6 +2,83 @@ English Dolibarr ChangeLog -------------------------------------------------------------- +***** ChangeLog for 11.0.4 compared to 11.0.3 ***** +FIX: #13749 +FIX: #7594 Expense report multi pagebreak +FIX: Access to undeclared static property: Contact::$table_element +FIX: actions on supplier proposal not saved (bad trigger name) +FIX: Add function "completeTabsHead" to "addreplace" type hook. +FIX: All forms must use newToken() +FIX: Another "Access to undeclared static property: Contact::$table_element" && "Societe::$table_element" +FIX: author search supplier proposal list +FIX: A variable was erased by a temporary variable +FIX: Avoid infinite loop when a fetch is inside a compute field. +FIX: Backto link +FIX: Bad position of total in column +FIX: bad value in currency into discount created from down payment +FIX: buyprice extrafield langfile and tooltip +FIX: Buyprice was updated only if min price for this qty had same qty +FIX: Can switch from double to price type for extrafields +FIX: Can use decimal value in virtual products +FIX: child categories only with good entity rights +FIX: cloning of emailing when no content selected +FIX: closing tags +FIX: Combo list of available users to filter on the list of leaves. +FIX: Compatibility with multicompany, bad numerotation of task. +FIX: consistency of price w/wo vat wrong when price entered with tax +FIX: default value of selectMasssAction broken +FIX: draftordered replenish virtual stock +FIX: Error update SQL into stock reception +FIX: expensereport status in generated pdf +FIX: extra date field incorrect check +FIX: Extrafields of type price must be '' and not '0' if not defined +FIX: Foreign currency lost when splitting a discount +FIX: get remain to pay with rounding decimals +FIX: gzip and bzip2 must use option -f +FIX: IHM, unexpected quote +FIX: keep viewstatut for doli 3.5 +FIX: Link missing into email of some notification +FIX: Look and feel v11 +FIX: md stylesheet to be included by external modules like eldy +FIX: missing array option +FIX: missing default accountancy product buy code +FIX: missing fk_bank during export of suppliers invoices +FIX: missing member entity +FIX: missing selectedlines on supplier order but checkbox are displayed +FIX: Missing token and take into account max date when it can. +FIX: model export list must be sorted by label +FIX: multicurrency manage on hidden conf SUPPLIER_PROPOSAL_UPDATE_PRICE_ON_SUPPlIER_PROPOSAL +FIX: Must escape shell +FIX: Must exclude logs and some dirs for compressed backup +FIX: ordered stock already in $stock +FIX: picture migration script from doli 9.0 +FIX: print pictures on shipment docs +FIX: product get purchase prices +FIX: product purchase prices +FIX: Protection when database has a corrupted product id +FIX: remove unused var, $usercancreate can be change by Multicompany +FIX: replenish stock to buy +FIX: Sanitizing menu parameter +FIX: Send email from bulk action of list of thirdparties +FIX: setup of suggested payment mode on proposals and orders +FIX: Several pb in export of documents +FIX: Situation invoice take into account the credit notes. +FIX: some others modules (like subtotal) use other product_type than 0 or 1 AND must not be considered in this report +FIX: sort by default role makes no sense +FIX: sort on company on member list +FIX: TakePOS buying price +FIX: text version of html emailing (removed the body style) +FIX: The "test smtp connectivity" failed on page to setup mass emailing +FIX: Error logs an Orderline::delete error, but this is an Orderline::insert error +FIX: Translation of tooltips of extrafields +FIX: Use getNomURL instead of hard coded link. Fix limit. +FIX: Use of image into free text for PDF if DOL_DATA_DIR is outside of +FIX: viewstatut to search status +FIX: we must export company mail address on contact vcard only if contact email address is empty +FIX: when we filter a list on a view status, we want this filter to be on bookmark that we create +FIX: Wrong Sql on getListOfTowns api method +FIX: wrong user right's name to top menu "commercial" +FIX: XSS Vulnerability reported by Mehmet Kelepçe / Gais Cyber Security ***** ChangeLog for 12.0.0 compared to 11.0.0 ***** For Users: @@ -27,6 +104,7 @@ Following changes may create regressions for some external modules, but were nec by a "_" automatically when a reference (with a custom numbering mask that use it) is generated. * Library jflot (replace with chartjs) and geoip (replaced with geoip2) were removed. * Hidden constant COMMANDE_VALID_AFTER_CLOSE_PROPAL were renamed into ORDER_VALID_AFTER_CLOSE_PROPAL. +* Object field ref_int is deprecated and set to not used, object fetch by only ref_int is not supported anymore. ***** ChangeLog for 11.0.3 compared to 11.0.2 ***** diff --git a/README.md b/README.md index fbf59a27a74..f611f333e6a 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@ Dolibarr ERP & CRM is a modern software package to manage your organization's activity (contacts, suppliers, invoices, orders, stocks, agenda…). -It's an Open Source Software (written in PHP language) designed for small, medium or large companies, foundations and freelances. +It's an Open Source Software (written in PHP language) designed for small, medium or large companies, foundations and freelancers. You can freely use, study, modify or distribute it according to its Free Software licence. @@ -27,8 +27,8 @@ Other licenses apply for some included dependencies. See [COPYRIGHT](https://git If you have low technical skills and you're looking to install Dolibarr ERP/CRM in just a few clicks, you can use one of the packaged versions: -- DoliWamp for Windows -- DoliDeb for Debian or Ubuntu +- [DoliWamp for Windows](https://wiki.dolibarr.org/index.php/Dolibarr_for_Windows_(DoliWamp) +- [DoliDeb for Debian](https://wiki.dolibarr.org/index.php/Dolibarr_for_Ubuntu_or_Debian - DoliRpm for Redhat, Fedora, OpenSuse, Mandriva or Mageia Releases can be downloaded from [official website](https://www.dolibarr.org/). @@ -67,6 +67,7 @@ You can use a Web server and a supported database (MariaDB, MySQL or PostgreSQL) If you don't have time to install it yourself, you can try some commercial 'ready to use' Cloud offers (See https://saas.dolibarr.org). However, this third solution is not free. + ## UPGRADING - At first make a backup of your Dolibarr files & than see https://wiki.dolibarr.org/index.php/Installation_-_Upgrade#Upgrade_Dolibarr @@ -85,28 +86,27 @@ See the [ChangeLog](https://github.com/Dolibarr/dolibarr/blob/develop/ChangeLog) ### Main application/modules (all optional) -- Customers, Prospects (Leads) and/or Suppliers directory +- Customers, Prospects (Leads) and/or Suppliers directory + Contacts +- Members management - Products and/or Services catalog - Commercial proposals management -- Customer and Supplier Orders management +- Customer & Supplier Orders management +- Shipping management +- Warehouse/Stock management - Invoices and payment management - Standing orders management (European SEPA) - Bank accounts management - Accounting management - Shared calendar/agenda (with ical and vcal export for third party tools integration) - Opportunities and/or project management -- Projects management +- Projects & Tasks management - Contracts management -- Warehouse/Stock management -- Shipping management - Interventions management - Employee's leave requests management - Expense reports - Timesheets - Electronic Document Management (EDM) - Foundations members management -- Mass emailing -- Surveys - Point of Sale (POS) - … @@ -115,11 +115,13 @@ See the [ChangeLog](https://github.com/Dolibarr/dolibarr/blob/develop/ChangeLog) - Bookmarks management - Donations management - Reporting +- Surveys - Data export/import - Barcodes support - Margin calculations - LDAP connectivity - ClickToDial integration +- Mass emailing - RSS integration - Skype integration - Payment platforms integration (PayPal, Stripe, Paybox...) diff --git a/build/docker/Dockerfile b/build/docker/Dockerfile index 4b1df7e0876..9264eed5ef2 100644 --- a/build/docker/Dockerfile +++ b/build/docker/Dockerfile @@ -3,7 +3,7 @@ FROM php:7.2-apache ENV HOST_USER_ID 33 ENV PHP_INI_DATE_TIMEZONE 'UTC' -RUN apt-get update && apt-get install -y libpng-dev libjpeg-dev libldap2-dev libzip-dev zlib1g-dev libicu-dev g++\ +RUN apt-get update && apt-get install -y libpng16-16 libpng-dev libjpeg62-turbo libjpeg62-turbo-dev libldap2-dev zlib1g-dev libicu-dev g++\ && rm -rf /var/lib/apt/lists/* \ && docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr \ && docker-php-ext-install gd \ @@ -14,7 +14,7 @@ RUN apt-get update && apt-get install -y libpng-dev libjpeg-dev libldap2-dev lib && docker-php-ext-install calendar \ && docker-php-ext-configure intl \ && docker-php-ext-install intl \ - && apt-get autoremove --purge -y libjpeg-dev libldap2-dev zlib1g-dev libicu-dev g++ + && apt-get autoremove --purge -y libpng-dev libjpeg62-turbo-dev libldap2-dev zlib1g-dev libicu-dev g++ RUN mkdir /var/documents RUN chown www-data /var/documents diff --git a/build/docker/docker-compose.yml b/build/docker/docker-compose.yml index 3fe6125a874..cc839810e7f 100644 --- a/build/docker/docker-compose.yml +++ b/build/docker/docker-compose.yml @@ -21,5 +21,12 @@ web: - ../../htdocs:/var/www/html links: - mariadb + - mail ports: - "80:80" + +mail: + image: maildev/maildev + ports: + - "8081:80" + - "25:25" \ No newline at end of file diff --git a/build/exe/doliwamp/Languages/MyCatalan.isl b/build/exe/doliwamp/Languages/MyCatalan.isl index d8b86eae5ba..b157d1cea27 100644 --- a/build/exe/doliwamp/Languages/MyCatalan.isl +++ b/build/exe/doliwamp/Languages/MyCatalan.isl @@ -1,45 +1,47 @@ [CustomMessages] -NameAndVersion=%1 versi %2 +NameAndVersion=%1 versió %2 AdditionalIcons=Icones addicionals: CreateDesktopIcon=Crea una icona a l'&Escriptori CreateQuickLaunchIcon=Crea una icona a la &Barra de tasques ProgramOnTheWeb=%1 a Internet -UninstallProgram=Desinstalla %1 +UninstallProgram=Desinstal·la %1 LaunchProgram=Obre %1 -AssocFileExtension=&Associa %1 amb l'extensi de fitxer %2 -AssocingFileExtension=Associant %1 amb l'extensi de fitxer %2... +AssocFileExtension=&Associa %1 amb l'extensió de fitxer %2 +AssocingFileExtension=Associant %1 amb l'extensió de fitxer %2... -YouWillInstallDoliWamp=Va a installar o actualitzar (Apache + Mysql + PHP + Dolibarr) al seu ordinador. -ThisAssistantInstallOrUpgrade=Aquest assistent installa o actualitza Dolibarr ERP-CRM i tots els seus requisits (Apache, Mysql i PHP) optimitzats per a l's de Dolibarr. -IfYouHaveTechnicalKnowledge=Si teniu coneixements tcnics i necessita usar la seva Apache, Mysql i PHP amb altres aplicacions a part de Dolibarr, no utilitzeu aquest assistent, hauria laci manual d'Dolibarr sobre un Apache, Mysql i PHP existent. -ButIfYouLook=Per si busca una installaci automtica, es troba en el bon cam... -DoYouWantToStart=Vol iniciar el procs d'installaci/actualitzaci? +YouWillInstallDoliWamp=Instal·laràs DoliWamp (Dolibarr i altres programaris com Apache, Mysql i PHP) al teu ordinador. +ThisAssistantInstallOrUpgrade=ALERTA: Utilitzar un ERP CRM instal·lat en un ordinador en local pot ser perillós: si l'ordinador s'espatlla, pots perdre totes les teves dades. Fes-ho si estàs preparat per autogestionar-te còpies de seguretat. Si no, pots utilitzar una instal·lació Saas (pots veure https://saas.dolibarr.org). +IfYouHaveTechnicalKnowledge=Si tens coneixements tècnics i vols autogestionar el teu Apache, Mysql i PHP, no utilitzis aquest assistent i fes una instal·lació manual de Dolibarr sobre un servidor existent d'Apache, Mysql i PHP. +ButIfYouLook=Però si busques una instal·lació automàtica en el teu propi ordinador, et trobes en el bon camí... +DoYouWantToStart=Vols iniciar el procés d'instal·lació? -TechnicalParameters=Parmetres tcnics -IfFirstInstall=Si es tracta de la primera instal laci, haur d'especificar alguns parmetres tcnics. Si no els entn, no sabeu o va a procedir a una actualitzaci, deixi els camps amb els valors proposats per defecte. +TechnicalParameters=Paràmetres tècnics +IfFirstInstall=Si es tracta de la primera instal·lació, hauràs d'especificar alguns paràmetres tècnics. Si no els entens, no n'estàs segur, o estàs fent una actualització, pots deixar els valors per defecte. -; WARNING !!! STRINGS HERE MUST BE LOWER THAN 70 CHARACTERS -SMTPServer=Servidor SMTP (El seu o el del seu ISP, nicament primera instal.laci) : -ApachePort=Puerto Apache (nicament primera instal.laci, normalment s el 80) : -MySqlPort=Puerto Mysql (nicament primera instal.laci, normalment s el 3306) : -MySqlPassword=Contrasenya del servidor i la base de dades MySQL de root (nicament primera instal.laci): +; WARNING !!! STRINGS HERE MUST BE LOWER THAN 60 CHARACTERS +SMTPServer=Servidor SMTP (propi o ISP, només primera instal·lació) : +ApachePort=Port Apache (només primera instal·lació, normalment el 80) : +MySqlPort=Port MySql (només primera instal·lació, normalment el 3306) : +MySqlPassword=Contrasenya del servidor i base de dades MySql de root (només primera instal·lació): -FailedToDeleteLock=FailedToDeleteLock=Error en l'eliminaci del fitxer %1/www/dolibarr/install.lock. Pot ignorar l'avs per s possible que hagi de eliminar-lo manualment ms tard. En aquest cas, ser informat. Feu clic a OK per continuar... +FailedToDeleteLock=FailedToDeleteLock=Error en l'eliminació del fitxer %1/www/dolibarr/install.lock. Pots ignorar l'avís però és possible que hagis d'eliminar-lo manualment més tard. En aquest cas, serà informat. Fes clic a OK per continuar... -PortAlreadyInUse=Sembla que el port %1 ja est sent utilitzat. Es recomana cancellar, tornar enrere i especificar un altre valor per al port% 2. Cancellar i escollir un altre valor? +PortAlreadyInUse=Sembla que el port %1 ja està sent utilitzat. Es recomana cancel·lar, tornar enrere i especificar un altre valor per al port% 2. Vols cancel·lar i escollir un altre valor? -FirefoxDetected=S'ha detectat Firefox al seu ordinador. Voleu activar per defecte com a navegador per Dolibarr? -ChromeDetected=S'ha detectat Chrome al seu ordinador. Voleu activar per defecte com a navegador per Dolibarr? -ChooseDefaultBrowser=Esculli el seu navegador per defecte. Si no est segur, simplement feu clic a Obrir: +FirefoxDetected=S'ha detectat Firefox al teu ordinador. El vols utilitzar com a navegador per defecte per Dolibarr? +ChromeDetected=S'ha detectat Chrome al teu ordinador. El vols utilitzar com a navegador per defecte per Dolibarr? +ChooseDefaultBrowser=Escull el teu navegador per defecte (iexplore.exe, firefox.exe, chrome.exe, MicrosoftEdge.exe...).. Si no estàs segur, simplement fes clic a Obre: -LaunchNow=Llanar ara Dolibarr +LaunchNow=Obre ara el Dolibarr -ProgramHasBeenRemoved=Els arxius del programa Dolibarr han estat eliminats. No obstant aix tots els seus arxius de dades es troben encara al directori %1. Haur eliminar aquest directori manualment per a una desinstal completa. +ProgramHasBeenRemoved=Els arxius del programa Dolibarr han estat eliminats. No obstant això tots els seus arxius de dades es troben encara al directori %1. Hauràs d'eliminar aquest directori manualment per a una desinstal·lació completa. -DoliWampWillStartApacheMysql=L'installador DoliWamp intentar iniciar o reiniciar Apache i MySQL, aix pot durar des de diversos segons a un minut desprs de la confirmaci. Iniciar la installaci o actualitzaci dels servidors web i bases de dades requerides per Dolibarr? +DoliWampWillStartApacheMysql=L'instal·lador DoliWamp intentarà iniciar o reiniciar Apache i MySQL, això pot durar des de diversos segons a un minut després de la confirmació. Vols iniciar la instal·lació o actualització dels servidors web i de base de dades requerides per Dolibarr? -OldVersionFoundAndMoveInNew=S'ha trobat una versi antiga de base de dades i ha estat moguda per a ser utilitzada per la nova versi de Dolibarr -OldVersionFoundButFailedToMoveInNew=S'ha trobat una versi antiga de base de dades, per no es pot moure per a ser utilitzada per la nova versi de Dolibarr +OldVersionFoundAndMoveInNew=S'ha trobat una versió antiga de base de dades i ha estat moguda per a ser utilitzada per la nova versió de Dolibarr +OldVersionFoundButFailedToMoveInNew=S'ha trobat una versió antiga de base de dades, però no es pot moure per a ser utilitzada per la nova versió de Dolibarr +DLLMissing=La teva instal·lació windows no té el component "Microsoft Visual C++ Redistributable for Visual Studio 2012". Instal·la primer la versió de 32-bit (vcredist_x86.exe) (pots trobar-la a https://www.microsoft.com/en-us/download/) i reiniciar després la instal·lació/actualització de DoliWamp. +ContinueAnyway=Continua igualment (el procés d'instal·lació podria fallar sense aquest prerequisit) diff --git a/build/exe/doliwamp/Languages/MyGerman.isl b/build/exe/doliwamp/Languages/MyGerman.isl index 9c3a1d38bfc..8bfd78dbea2 100644 --- a/build/exe/doliwamp/Languages/MyGerman.isl +++ b/build/exe/doliwamp/Languages/MyGerman.isl @@ -2,7 +2,7 @@ [CustomMessages] NameAndVersion=%1 Version %2 -AdditionalIcons=Zustzliche Symbole: +AdditionalIcons=Zusätzliche Symbole: CreateDesktopIcon=&Desktop-Symbol erstellen CreateQuickLaunchIcon=Symbol in der Schnellstartleiste erstellen ProgramOnTheWeb=%1 im Internet @@ -10,3 +10,38 @@ UninstallProgram=%1 entfernen LaunchProgram=%1 starten AssocFileExtension=&Registriere %1 mit der %2-Dateierweiterung AssocingFileExtension=%1 wird mit der %2-Dateierweiterung registriert... + + +YouWillInstallDoliWamp=Sie installieren DoliWamp (also Dolibarr + alle erforderliche Software von Drittanbietern wie Apache, MySQL und PHP) auf Ihrem Computer. +ThisAssistantInstallOrUpgrade=WARNUNG: Die Verwendung eines auf einem lokalen Computer installierten ERP-CRM kann gefährlich sein: Wenn Ihr Computer ausfällt, können Sie alle Ihre Daten verlieren. Tun Sie dies, wenn Sie bereit sind, das Backup selbst ernsthaft zu verwalten. Wenn nicht, verwenden Sie stattdessen eine Installation in Saas (siehe https://saas.dolibarr.org). +IfYouHaveTechnicalKnowledge=Wenn Sie über technische Kenntnisse verfügen und Apache, MySQL und PHP selbst verwalten möchten, sollten Sie diesen Assistenten nicht verwenden und eine manuelle Installation von Dolibarr auf Ihrem vorhandenen Server mit Apache, MySQL und PHP durchführen. +ButIfYouLook=Aber wenn Sie auf Ihrem lokalen Computer nach einer automatischen Einrichtung suchen, sind Sie auf dem besten Weg ... +DoYouWantToStart=Möchten Sie den Installationsprozess starten? + +TechnicalParameters=technische Parameter +IfFirstInstall=Geben Sie bei der Erstinstallation einige technische Parameter an. Wenn Sie nicht verstehen, sich nicht sicher sind oder ein Upgrade durchführen, belassen Sie einfach die Standardwerte. + +; WARNING !!! STRINGS HERE MUST BE LOWER THAN 60 CHARACTERS +SMTPServer=SMTP Server (your own or ISP SMTP server, first install only) : +ApachePort=Apache Port (first install only, Standard ist 80) : +MySqlPort=MySQL Port (first install only, Standard ist 3306) : +MySqlPassword=MySQL Server und Datenbank Passwort für root (first install only): + +FailedToDeleteLock=Fehler beim Löschen der Datei %1/www/dolibarr/install.lock. Sie können die Warnung ignorieren, müssen sie jedoch möglicherweise später manuell entfernen, wenn Sie dazu aufgefordert werden. Klicken Sie auf OK, um fortzufahren ... + +PortAlreadyInUse=Port %1 scheint bereits verwendet zu werden. Sie sollten zurückgehen und einen anderen Wert für %2 Port wählen. Auswahl abbrechen und einen anderen Wert wählen ? + +FirefoxDetected=Firefox wurde auf Ihrem Computer erkannt. Möchten Sie ihn als Standardbrowser für Dolibarr verwenden? +ChromeDetected=Chrome wurde auf Ihrem Computer erkannt. Möchten Sie ihn als Standardbrowser für Dolibarr verwenden? +ChooseDefaultBrowser=Bitte wählen Sie Ihren Standardbrowser (iexplore.exe, firefox.exe, chrome.exe, MicrosoftEdge.exe...). Wenn Sie sich nicht sicher sind, klicken Sie einfach auf Öffnen: + +LaunchNow=Starten Sie jetzt Dolibarr + +ProgramHasBeenRemoved=Die Dolibarr-Programmdateien wurden entfernt. Alle Ihre Daten befinden sich jedoch noch im Verzeichnis %1. Für eine vollständige Deinstallation, müssen Sie dieses Verzeichnis manuell entfernen. +DoliWampWillStartApacheMysql=Die DoliWamp-Installation wird nun starten oder Apache und MySQL neu starten. Dies kann nach dieser Bestätigung einige Sekunden bis eine Minute dauern. Wollen Sie mit der Installation oder Aktualisierung des von Dolibarr benötigten Web- und Datenbankservers starten ? + +OldVersionFoundAndMoveInNew=Eine alte Datenbankversion wurde gefunden und verschoben, um von der neuen Dolibarr-Version verwendet zu werden. +OldVersionFoundButFailedToMoveInNew=Eine alte Datenbankversion wurde gefunden, konnte jedoch nicht verschoben werden, um mit der neuen Dolibarr-Version verwendet zu werden. + +DLLMissing=Your Windows installation is missing The "Micrsoft Visual C++ Redistributable for Visual Studio 2012" component. Please install the 32-bit version (vcredist_x86.exe) first (you can find it at https://www.microsoft.com/en-us/download/) and restart DoliWamp installation/upgrade after. +ContinueAnyway=Fahren Sie trotzdem fort (der Installationsvorgang kann ohne diese Voraussetzung fehlschlagen). diff --git a/build/exe/doliwamp/Languages/MySpanish.isl b/build/exe/doliwamp/Languages/MySpanish.isl index 63c0136f351..c31aedf895f 100644 --- a/build/exe/doliwamp/Languages/MySpanish.isl +++ b/build/exe/doliwamp/Languages/MySpanish.isl @@ -1,45 +1,47 @@ [CustomMessages] -NameAndVersion=%1 versin %2 +NameAndVersion=%1 versión %2 AdditionalIcons=Iconos adicionales: CreateDesktopIcon=Crear un icono en el &escritorio -CreateQuickLaunchIcon=Crear un icono de Inicio Rpido +CreateQuickLaunchIcon=Crear un icono de Inicio Rápido ProgramOnTheWeb=%1 en la Web UninstallProgram=Desinstalar %1 LaunchProgram=Ejecutar %1 -AssocFileExtension=&Asociar %1 con la extensin de archivo %2 -AssocingFileExtension=Asociando %1 con la extensin de archivo %2... +AssocFileExtension=&Asociar %1 con la extensión de archivo %2 +AssocingFileExtension=Asociando %1 con la extensión de archivo %2... -YouWillInstallDoliWamp=Va a instalar o actualizar (Apache+Mysql+PHP+Dolibarr) en su ordenador. -ThisAssistantInstallOrUpgrade=Este asistente instala o actualiza Dolibarr ERP-CRM y todos sus requisitos (Apache, Mysql y PHP) optimizados para el uso de Dolibarr. -IfYouHaveTechnicalKnowledge=Si tiene conocimientos tcnicos y necesita usar su Apache, Mysql y PHP con otras aplicaciones aparte de Dolibarr, no debera usar este asistente, debera realizar una instalacin manual de Dolibarr sobre un Apache, Mysql y PHP existente. -ButIfYouLook=Pero si busca una instalacin automtica, se encuentra en el buen camino... -DoYouWantToStart=Quiere iniciar el proceso de instalacin/actualizacin? +YouWillInstallDoliWamp=Va a instalar DoliWamp (Dolibarr y otro software como Apache, Mysql y PHP) en su ordenador. +ThisAssistantInstallOrUpgrade=ALERTA: Utilizar un ERP CRM instalado en un ordenador en local puede ser peligroso: si el ordenador se estropea, puede perder todos sus datos. Hágalo si está preparado para autogestionar sus copias de seguridad. Si no, puede utilizar una instalacion Saas (puede ver https://saas.dolibarr.org). +IfYouHaveTechnicalKnowledge=Si tiene conocimientos técnicos y necesita usar su Apache, Mysql y PHP con otras aplicaciones aparte de Dolibarr, no debería usar este asistente, debería realizar una instalación manual de Dolibarr sobre un Apache, Mysql y PHP existente. +ButIfYouLook=Pero si busca una instalación automática en tu propio ordenador, se encuentra en el buen camino... +DoYouWantToStart=¿Quiere iniciar el proceso de instalación? -TechnicalParameters=Parmetros tcnicos -IfFirstInstall=Si se trata de la primera instalacin, deber especificar algunos parmetros tcnicos. Si no los entiende, no est seguro o va a proceder a una actualizacin, deje los campos con los valores propuestos por defecto. +TechnicalParameters=Parámetros técnicos +IfFirstInstall=Si se trata de la primera instalación, deberá especificar algunos parámetros técnicos. Si no los entiende, no está seguro o va a proceder a una actualización, deje los campos con los valores propuestos por defecto. -; WARNING !!! STRINGS HERE MUST BE LOWER THAN 70 CHARACTERS -SMTPServer=Servidor SMTP (El suyo o el de su ISP, nicamente primera instalacin) : -ApachePort=Puerto Apache (nicamente primera instalacin, normalmente es el 80) : -MySqlPort=Puerto Mysql (nicamente primera instalacin, normalmente es el 3306) : -MySqlPassword=Contrasea del servidor y la base de datos MySQL de root (nicamente primera instalacin): +; WARNING !!! STRINGS HERE MUST BE LOWER THAN 60 CHARACTERS +SMTPServer=Servidor SMTP (propio o su ISP, sólo primera instalación) : +ApachePort=Puerto Apache (sólo primera instalación, normalmente el 80) : +MySqlPort=Puerto Mysql (sólo primera instalación, normalmente el 3306) : +MySqlPassword=Contraseña del servidor y la base de datos MySQL de root (sólo primera instalación): -FailedToDeleteLock=Error en la eliminacin del archivo %1/www/dolibarr/install.lock. Puede ignorar el aviso pero es posible que deba eliminarlo manualmente ms tarde. En este caso, ser informado. Haga clic en OK para continuar... +FailedToDeleteLock=Error en la eliminación del archivo %1/www/dolibarr/install.lock. Puede ignorar el aviso pero es posible que deba eliminarlo manualmente más tarde. En este caso, será informado. Haga clic en OK para continuar... -PortAlreadyInUse=Parece que el puerto %1 ya esta siendo usado. Se recomienda cancelar, volver atras y especificar otro valor para el puerto %2. Cancelar y escojer otro valor? +PortAlreadyInUse=Parece que el puerto %1 ya esta siendo usado. Se recomienda cancelar, volver atras y especificar otro valor para el puerto %2. ¿Cancelar y escojer otro valor? FirefoxDetected=Se ha detectado Firefox en su ordenador. Desea activarlo por defecto como navegador para Dolibarr ? ChromeDetected=Se ha detectado Chrome en su ordenador. Desea activarlo por defecto como navegador para Dolibarr ? -ChooseDefaultBrowser=Escoja su navegador por defecto. Si no est seguro, simplementa haga clic en Abrir : +ChooseDefaultBrowser=Escoja su navegador por defecto (iexplore.exe, firefox.exe, chrome.exe, MicrosoftEdge.exe...). Si no está seguro, simplementa haga clic en Abrir : LaunchNow=Lanzar ahora Dolibarr -ProgramHasBeenRemoved=Los archivos del programa Dolibarr han sido eliminados. Sin embargo todos sus archivos de datos se encuentran todava en el directorio %1. Deber eliminar este directorio manualmente para una desinstalacin completa. +ProgramHasBeenRemoved=Los archivos del programa Dolibarr han sido eliminados. Sin embargo todos sus archivos de datos se encuentran todavía en el directorio %1. Deberá eliminar este directorio manualmente para una desinstalación completa. -DoliWampWillStartApacheMysql=El instalador DoliWamp intentar iniciar o reiniciar Apache y MySQL, esto puede durar desde varios segundos a un minuto despus de la confirmacin. Iniciar la instalacin o actualizacin de los servidores Web y bases de datos requeridas por Dolibarr? +DoliWampWillStartApacheMysql=El instalador DoliWamp intentará iniciar o reiniciar Apache y MySQL, esto puede durar desde varios segundos a un minuto después de la confirmación. ¿Iniciar la instalación o actualización de los servidores Web y bases de datos requeridas por Dolibarr? -OldVersionFoundAndMoveInNew=Se ha encontrado una versin antigua de base de datos y ha sido movida para ser utilizada por la nueva versin de Dolibarr -OldVersionFoundButFailedToMoveInNew=Se ha encontrado una versin antigua de base de datos, pero no se pudo mover para ser utilizada por la nueva versin de Dolibarr - \ No newline at end of file +OldVersionFoundAndMoveInNew=Se ha encontrado una versión antigua de base de datos y ha sido movida para ser utilizada por la nueva versión de Dolibarr +OldVersionFoundButFailedToMoveInNew=Se ha encontrado una versión antigua de base de datos, pero no se pudo mover para ser utilizada por la nueva versión de Dolibarr + +DLLMissing=Su instalación Windows no tiene el componente "Microsoft Visual C++ Redistributable for Visual Studio 2012". Instale primero la versión de 32-bit (vcredist_x86.exe) (puedes encontrarlo en https://www.microsoft.com/en-us/download/) y reiniciar después la instalación/actualización de DoliWamp. +ContinueAnyway=Continua igualmente (el proceso de instalación podría fallar sin este prerequisito) diff --git a/build/generate_filelist_xml.php b/build/generate_filelist_xml.php index 976f2cb6ba3..581353b758b 100755 --- a/build/generate_filelist_xml.php +++ b/build/generate_filelist_xml.php @@ -110,7 +110,7 @@ print "Working on files into : ".DOL_DOCUMENT_ROOT."\n"; print "Include custom in signature : ".$includecustom."\n"; print "Include constants in signature : "; foreach ($includeconstants as $countrycode => $tmp) { - foreach($tmp as $constname => $constvalue) { + foreach ($tmp as $constname => $constvalue) { print $constname.'='.$constvalue." "; } } @@ -130,7 +130,7 @@ fputs($fp, ''."\n"); - foreach($tmp as $constname => $constvalue) { + foreach ($tmp as $constname => $constvalue) { $valueforchecksum=(empty($constvalue)?'0':$constvalue); $checksumconcat[]=$valueforchecksum; fputs($fp, ' '.$valueforchecksum.''."\n"); diff --git a/build/makepack-dolibarr.pl b/build/makepack-dolibarr.pl index c06dc51aec1..24b32dcff91 100755 --- a/build/makepack-dolibarr.pl +++ b/build/makepack-dolibarr.pl @@ -19,7 +19,7 @@ use Term::ANSIColor; # Change this to defined target for option 98 and 99 $PROJECT="dolibarr"; $PUBLISHSTABLE="eldy,dolibarr\@frs.sourceforge.net:/home/frs/project/dolibarr"; -$PUBLISHBETARC="dolibarr\@vmprod1.dolibarr.org:/home/dolibarr/dolibarr.org/httpdocs/files"; +$PUBLISHBETARC="dolibarr\@vmprod1.dolibarr.org:/home/dolibarr/asso.dolibarr.org/dolibarr_documents/website/www.dolibarr.org/files"; #@LISTETARGET=("TGZ","ZIP","RPM_GENERIC","RPM_FEDORA","RPM_MANDRIVA","RPM_OPENSUSE","DEB","EXEDOLIWAMP","SNAPSHOT"); # Possible packages diff --git a/dev/examples/code/create_invoice.php b/dev/examples/code/create_invoice.php index 1b212e0a5d7..1acf181a4ba 100755 --- a/dev/examples/code/create_invoice.php +++ b/dev/examples/code/create_invoice.php @@ -87,14 +87,11 @@ if ($idobject > 0) // Change status to validated $result=$obj->validate($user); if ($result > 0) print "OK Object created with id ".$idobject."\n"; - else - { + else { $error++; dol_print_error($db, $obj->error); } -} -else -{ +} else { $error++; dol_print_error($db, $obj->error); } @@ -106,9 +103,7 @@ if (! $error) { $db->commit(); print '--- end ok'."\n"; -} -else -{ +} else { print '--- end error code='.$error."\n"; $db->rollback(); } diff --git a/dev/examples/code/create_order.php b/dev/examples/code/create_order.php index 703254ad5e9..7fe1a82251a 100755 --- a/dev/examples/code/create_order.php +++ b/dev/examples/code/create_order.php @@ -85,14 +85,11 @@ if ($idobject > 0) // Change status to validated $result=$com->valid($user); if ($result > 0) print "OK Object created with id ".$idobject."\n"; - else - { + else { $error++; dol_print_error($db, $com->error); } -} -else -{ +} else { $error++; dol_print_error($db, $com->error); } @@ -104,9 +101,7 @@ if (! $error) { $db->commit(); print '--- end ok'."\n"; -} -else -{ +} else { print '--- end error code='.$error."\n"; $db->rollback(); } diff --git a/dev/examples/code/create_product.php b/dev/examples/code/create_product.php index 234658388df..20b898a92aa 100755 --- a/dev/examples/code/create_product.php +++ b/dev/examples/code/create_product.php @@ -82,9 +82,7 @@ $idobject = $myproduct->create($user); if ($idobject > 0) { print "OK Object created with id ".$idobject."\n"; -} -else -{ +} else { $error++; dol_print_error($db, $myproduct->error); } @@ -95,9 +93,7 @@ if (! $error) { $db->commit(); print '--- end ok'."\n"; -} -else -{ +} else { print '--- end error code='.$error."\n"; $db->rollback(); } diff --git a/dev/examples/code/create_user.php b/dev/examples/code/create_user.php index 96d369085d2..d585b490a9c 100755 --- a/dev/examples/code/create_user.php +++ b/dev/examples/code/create_user.php @@ -74,18 +74,14 @@ if ($idobject > 0) // Change status to validated $result=$obj->setStatut(1); if ($result > 0) print "OK Object created with id ".$idobject."\n"; - else - { + else { $error++; dol_print_error($db, $obj->error); } -} -elseif ($obj->error == 'ErrorLoginAlreadyExists') +} elseif ($obj->error == 'ErrorLoginAlreadyExists') { print "User with login ".$obj->login." already exists\n"; -} -else -{ +} else { $error++; dol_print_error($db, $obj->error); } @@ -97,9 +93,7 @@ if (! $error) { $db->commit(); print '--- end ok'."\n"; -} -else -{ +} else { print '--- end error code='.$error."\n"; $db->rollback(); } diff --git a/dev/initdata/dbf/importdb-products.php b/dev/initdata/dbf/importdb-products.php index 845064f0688..2c06c07e103 100644 --- a/dev/initdata/dbf/importdb-products.php +++ b/dev/initdata/dbf/importdb-products.php @@ -227,8 +227,7 @@ while ($fields = $db->fetch_array($resql)) { $error++; // $errorrecord will be reset } $j++; -} else - die("error : $sql"); +} else die("error : $sql"); diff --git a/dev/initdata/dbf/importdb-thirdparties.php b/dev/initdata/dbf/importdb-thirdparties.php index 8f0eb0635f0..a6b2697eed8 100644 --- a/dev/initdata/dbf/importdb-thirdparties.php +++ b/dev/initdata/dbf/importdb-thirdparties.php @@ -179,8 +179,7 @@ while ($fields = $db->fetch_array($resql)) { $object->town = trim($fields['FVILLE']); if ($fields['FPAYS']) $object->country_id = dol_getIdFromCode($db, trim(ucwords(strtolower($fields['FPAYS']))), 'c_country', 'label', 'rowid'); - else - $object->country_id = 1; + else $object->country_id = 1; $object->phone = trim($fields['FTEL']) ? trim($fields['FTEL']) : trim($fields['FCONTACT']); $object->phone = substr($object->phone, 0, 20); $object->fax = trim($fields['FFAX']) ? trim($fields['FFAX']) : trim($fields['FCONTACT']); @@ -299,8 +298,7 @@ while ($fields = $db->fetch_array($resql)) { $contact->town = trim($fields['LVILLE']); if ($fields['FPAYS']) $contact->country_id = dol_getIdFromCode($db, trim(ucwords(strtolower($fields['LPAYS']))), 'c_country', 'label', 'rowid'); - else - $contact->country_id = 1; + else $contact->country_id = 1; $contact->email = $fields['LMAIL']; $contact->phone = trim($fields['LTEL']) ? trim($fields['LTEL']) : trim($fields['LCONTACT']); $contact->fax = trim($fields['LFAX']) ? trim($fields['LFAX']) : trim($fields['LCONTACT']); @@ -340,8 +338,7 @@ while ($fields = $db->fetch_array($resql)) { $error++; // $errorrecord will be reset } $j++; -} else - die("error : $sql"); +} else die("error : $sql"); $db->commit(); diff --git a/dev/initdata/dbf/includes/dbase.class.php b/dev/initdata/dbf/includes/dbase.class.php index 0c2f6820a96..e70f18087c4 100644 --- a/dev/initdata/dbf/includes/dbase.class.php +++ b/dev/initdata/dbf/includes/dbase.class.php @@ -207,8 +207,7 @@ class DBase $value = true; elseif ($value == 'f' || $value == 'n') $value = false; - else - $value = null; + else $value = null; } $record[$i] = $value; } @@ -295,8 +294,7 @@ class DBase $i = unpack("S$n", $data); if ($n == 1) return (int) $i[1]; - else - return array_merge($i); + else return array_merge($i); } private static function putInt16($fd, $value) @@ -310,8 +308,7 @@ class DBase $i = unpack("L$n", $data); if ($n == 1) return (int) $i[1]; - else - return array_merge($i); + else return array_merge($i); } private static function putInt32($fd, $value) diff --git a/dev/initdata/generate-invoice.php b/dev/initdata/generate-invoice.php index 3fe058e8d3e..c35fe2440ef 100755 --- a/dev/initdata/generate-invoice.php +++ b/dev/initdata/generate-invoice.php @@ -179,14 +179,10 @@ while ($i < GEN_NUMBER_FACTURE && $result >= 0) if ($result) { print " OK with ref ".$object->ref."\n";; - } - else - { + } else { dol_print_error($db, $object->error); } - } - else - { + } else { dol_print_error($db, $object->error); } } diff --git a/dev/initdata/generate-order.php b/dev/initdata/generate-order.php index 1dc56aa5582..c421e39ffe3 100755 --- a/dev/initdata/generate-order.php +++ b/dev/initdata/generate-order.php @@ -124,8 +124,7 @@ if ($resql) { $row = $db->fetch_row($resql); $societesid[$i] = $row[0]; } -} -else { print "err"; } +} else { print "err"; } $commandesid = array(); $sql = "SELECT rowid FROM ".MAIN_DB_PREFIX."commande"; @@ -138,8 +137,7 @@ if ($resql) { $row = $db->fetch_row($resql); $commandesid[$i] = $row[0]; } -} -else { print "err"; } +} else { print "err"; } $prodids = array(); $sql = "SELECT rowid FROM ".MAIN_DB_PREFIX."product WHERE tosell=1"; @@ -206,16 +204,12 @@ for ($s = 0 ; $s < GEN_NUMBER_COMMANDE ; $s++) { $db->commit(); print " OK with ref ".$object->ref."\n"; - } - else - { + } else { print " KO\n"; $db->rollback(); dol_print_error($db, $object->error); } - } - else - { + } else { print " KO\n"; $db->rollback(); dol_print_error($db, $object->error); diff --git a/dev/initdata/generate-proposal.php b/dev/initdata/generate-proposal.php index 4c5d70aadc4..42c0c4098f2 100755 --- a/dev/initdata/generate-proposal.php +++ b/dev/initdata/generate-proposal.php @@ -210,16 +210,12 @@ while ($i < GEN_NUMBER_PROPAL && $result >= 0) { $db->commit(); print " OK with ref ".$object->ref."\n"; - } - else - { + } else { print " KO\n"; $db->rollback(); dol_print_error($db, $object->error); } - } - else - { + } else { dol_print_error($db, $object->error); } } diff --git a/dev/initdata/generate-thirdparty.php b/dev/initdata/generate-thirdparty.php index 05ac6416aa3..a13e2351e9c 100755 --- a/dev/initdata/generate-thirdparty.php +++ b/dev/initdata/generate-thirdparty.php @@ -136,9 +136,7 @@ for ($s = 0 ; $s < GEN_NUMBER_SOCIETE ; $s++) } print "Company ".$s." created nom=".$soc->name."\n"; - } - else - { + } else { print "Error: ".$soc->error."\n"; } } diff --git a/dev/initdata/import-products.php b/dev/initdata/import-products.php index 4288c5bf3b1..fb07143f972 100755 --- a/dev/initdata/import-products.php +++ b/dev/initdata/import-products.php @@ -163,9 +163,7 @@ while ($fields=fgetcsv($fhandle, $linelength, $delimiter, $enclosure, $escape)) { print " - Error in create result code = ".$ret." - ".$produit->errorsToString(); $errorrecord++; - } - else - { + } else { print " - Creation OK with ref ".$produit->ref." - id = ".$ret; } @@ -180,9 +178,7 @@ while ($fields=fgetcsv($fhandle, $linelength, $delimiter, $enclosure, $escape)) { print " - Error in updatePrice result code = ".$ret1." ".$ret2." - ".$produit->errorsToString(); $errorrecord++; - } - else - { + } else { print " - updatePrice OK"; } } @@ -200,9 +196,7 @@ while ($fields=fgetcsv($fhandle, $linelength, $delimiter, $enclosure, $escape)) { print " - Error in setMultiLangs result code = ".$ret." - ".$produit->errorsToString(); $errorrecord++; - } - else - { + } else { print " - setMultiLangs OK"; } } @@ -227,9 +221,7 @@ if ($mode != 'confirmforced' && ($error || $mode != 'confirm')) { print "Rollback any changes.\n"; $db->rollback(); -} -else -{ +} else { print "Commit all changes.\n"; $db->commit(); } diff --git a/dev/initdata/import-thirdparties.php b/dev/initdata/import-thirdparties.php index ef1dfcc99ab..a0ddaac7674 100755 --- a/dev/initdata/import-thirdparties.php +++ b/dev/initdata/import-thirdparties.php @@ -181,9 +181,7 @@ while ($fields=fgetcsv($fhandle, $linelength, $delimiter, $enclosure, $escape)) { print " - Error in create result code = ".$ret." - ".$object->errorsToString(); $errorrecord++; - } - else - { + } else { print " - Creation OK with name ".$object->name." - id = ".$ret; } } @@ -212,9 +210,7 @@ while ($fields=fgetcsv($fhandle, $linelength, $delimiter, $enclosure, $escape)) { print " - Error in create link with sale representative result code = ".$result." - ".$object->errorsToString(); $errorrecord++; - } - else - { + } else { print " - create link sale representative OK"; } } @@ -243,9 +239,7 @@ while ($fields=fgetcsv($fhandle, $linelength, $delimiter, $enclosure, $escape)) { print " - Error in create contact result code = ".$ret1." ".$ret2." - ".$object->errorsToString(); $errorrecord++; - } - else - { + } else { print " - create contact OK"; } } @@ -277,9 +271,7 @@ while ($fields=fgetcsv($fhandle, $linelength, $delimiter, $enclosure, $escape)) { print " - Error in create contact result code = ".$ret1." ".$ret2." - ".$object->errorsToString(); $errorrecord++; - } - else - { + } else { print " - create contact OK"; } } @@ -305,9 +297,7 @@ if ($mode != 'confirmforced' && ($error || $mode != 'confirm')) { print "Rollback any changes.\n"; $db->rollback(); -} -else -{ +} else { print "Commit all changes.\n"; $db->commit(); } diff --git a/dev/initdata/import-users.php b/dev/initdata/import-users.php index 4247415288c..8e4878577a1 100755 --- a/dev/initdata/import-users.php +++ b/dev/initdata/import-users.php @@ -142,9 +142,7 @@ while ($fields=fgetcsv($fhandle, $linelength, $delimiter, $enclosure, $escape)) { print " - Error in create result code = ".$ret." - ".$object->errorsToString(); $errorrecord++; - } - else - { + } else { print " - Creation OK with login ".$object->login." - id = ".$ret; } @@ -168,9 +166,7 @@ if ($mode != 'confirmforced' && ($error || $mode != 'confirm')) { print "Rollback any changes.\n"; $db->rollback(); -} -else -{ +} else { print "Commit all changes.\n"; $db->commit(); } diff --git a/dev/initdata/purge-data.php b/dev/initdata/purge-data.php index b1aadd56ed8..183140af202 100755 --- a/dev/initdata/purge-data.php +++ b/dev/initdata/purge-data.php @@ -198,7 +198,7 @@ if (empty($option)) if ($option != 'all') { $listofoptions=explode(',', $option); - foreach($listofoptions as $cursoroption) + foreach ($listofoptions as $cursoroption) { if (! in_array($cursoroption, array_keys($sqls))) { print "Usage: $script_file (test|confirm) (all|option) (all|YYYY-MM-DD) [dbtype dbhost dbuser dbpassword dbname dbport]\n"; @@ -264,7 +264,7 @@ function processfamily($family, $date) global $db, $sqls; $error=0; - foreach($sqls[$family] as $sql) + foreach ($sqls[$family] as $sql) { if (preg_match('/^@/', $sql)) { @@ -302,10 +302,10 @@ function processfamily($family, $date) $db->begin(); $listofoptions=explode(',', $option); -foreach($listofoptions as $cursoroption) +foreach ($listofoptions as $cursoroption) { $oldfamily=''; - foreach($sqls as $family => $familysql) + foreach ($sqls as $family => $familysql) { if ($cursoroption && $cursoroption != 'all' && $cursoroption != $family) continue; @@ -325,9 +325,7 @@ if ($error || $mode != 'confirm') { print "\nRollback any changes.\n"; $db->rollback(); -} -else -{ +} else { print "Commit all changes.\n"; $db->commit(); } diff --git a/dev/initdemo/sftpget_and_loaddump.php b/dev/initdemo/sftpget_and_loaddump.php index 5b16d3afe9b..4da5ffaad58 100755 --- a/dev/initdemo/sftpget_and_loaddump.php +++ b/dev/initdemo/sftpget_and_loaddump.php @@ -95,8 +95,7 @@ if ($connection) dol_syslog("Could not authenticate with username ".$login." . and password ".preg_replace('/./', '*', $password), LOG_ERR); exit(-5); } - else - { + else { //$stream = ssh2_exec($connection, '/usr/bin/php -i'); /* print "Generate dump ".$filesys1.'.bz2'."\n"; @@ -125,14 +124,13 @@ if ($connection) $return_var=0; print strftime("%Y%m%d-%H%M%S").' '.$fullcommand."\n"; exec($fullcommand, $output, $return_var); - foreach($output as $line) print $line."\n"; + foreach ($output as $line) print $line."\n"; //ssh2_sftp_unlink($sftp, $fileinstalllock); //print $output; } } -else -{ +else { print 'Failed to connect to ssh2 to '.$server; exit(-6); } diff --git a/dev/initdemo/updatedemo.php b/dev/initdemo/updatedemo.php index 0cc43a18a9d..95d5ad12c83 100755 --- a/dev/initdemo/updatedemo.php +++ b/dev/initdemo/updatedemo.php @@ -87,7 +87,7 @@ while ($year <= $currentyear) if ($delta1) { - foreach($tables as $tablekey => $tableval) + foreach ($tables as $tablekey => $tableval) { print "Correct ".$tablekey." for year ".$year." and move them to current year ".$currentyear." "; $sql="select rowid from ".MAIN_DB_PREFIX.$tablekey." where ".$tableval[0]." between '".$year."-01-01' and '".$year."-12-31' and ".$tableval[0]." < DATE_ADD(NOW(), INTERVAL -1 YEAR)"; @@ -105,7 +105,7 @@ while ($year <= $currentyear) print "."; $sql2="UPDATE ".MAIN_DB_PREFIX.$tablekey." set "; $j=0; - foreach($tableval as $field) + foreach ($tableval as $field) { if ($j) $sql2.=", "; $sql2.= $field." = ".$db->ifsql("DATE_ADD(".$field.", INTERVAL ".$delta1." YEAR) > NOW()", "DATE_ADD(".$field.", INTERVAL ".$delta2." YEAR)", "DATE_ADD(".$field.", INTERVAL ".$delta1." YEAR)"); diff --git a/dev/resources/iso-normes/Accountancy-format_Winfic-eWinfic-WinSisCompta.pdf b/dev/resources/iso-normes/Accountancy-format_Winfic-eWinfic-WinSisCompta.pdf new file mode 100644 index 00000000000..2fbaad04699 Binary files /dev/null and b/dev/resources/iso-normes/Accountancy-format_Winfic-eWinfic-WinSisCompta.pdf differ diff --git a/dev/setup/codesniffer/README b/dev/setup/codesniffer/README index 8a68d8a1140..087fb318f6f 100644 --- a/dev/setup/codesniffer/README +++ b/dev/setup/codesniffer/README @@ -6,6 +6,10 @@ This directory contains ruleset files to use to develop Dolibarr EPR & CRM. To install/upgrade phpcs: > sudo pear upgrade PHP_CodeSniffer +To run phpcs: +> cd dolibarrgitrepo +> phpcs --standard=dev/setup/codesniffer/ruleset.xml --extensions=php --parallel=8 . + Note with Eclipse: You must setup the PTI plugin of Eclipse into PHPCodeSniffer menu with: * tab value to 4 * path of code sniffer standard to dev/codesniffer diff --git a/dev/setup/codesniffer/ruleset.xml b/dev/setup/codesniffer/ruleset.xml index 10d6e29bbe2..03104270dcf 100644 --- a/dev/setup/codesniffer/ruleset.xml +++ b/dev/setup/codesniffer/ruleset.xml @@ -23,25 +23,21 @@ - - 0 - + + - - - - + @@ -70,23 +66,12 @@ 0 - - 0 - - + - - - @@ -106,17 +91,31 @@ + + + + 0 - - + @@ -125,13 +124,6 @@ - - 0 - - - 0 - - @@ -141,7 +133,7 @@ - + @@ -179,7 +171,6 @@ - 0 @@ -196,6 +187,13 @@ + + + + + @@ -205,25 +203,25 @@ - - 0 - - - 0 - - + + + + 0 + + + + - 0 @@ -235,23 +233,16 @@ + - - - - - - 0 - + - - 0 - + 0 @@ -260,66 +251,32 @@ 0 - 0 - 0 - 0 - - - - - - 5 - - - - + 0 - 0 - + - - 0 - - - - 0 - + 0 @@ -352,19 +309,21 @@ - - + 0 - + + 0 + - 0 + 0 - + + 0 @@ -373,27 +332,25 @@ - + 0 - + + 0 - - 0 - + + + - 0 + 0 - - 0 - - - 0 - + + + @@ -402,26 +359,26 @@ 0 + - 0 + 0 - + 0 + - - 0 - + 0 0 - + 0 @@ -432,16 +389,16 @@ + + 0 + - - - - + 0 @@ -452,7 +409,6 @@ 0 - 0 @@ -462,15 +418,17 @@ - - - - - + + + + + + + diff --git a/dev/tools/dolibarr-postgres2mysql.php b/dev/tools/dolibarr-postgres2mysql.php index f2794455ca3..c17a73dfe12 100644 --- a/dev/tools/dolibarr-postgres2mysql.php +++ b/dev/tools/dolibarr-postgres2mysql.php @@ -76,14 +76,12 @@ function getfieldname($l) if (preg_match("/`(.*)`/", $l, $regs)) { if ($regs[1]) return $regs[1]; - else - return null; + else return null; } // if its not in quotes, then it should (we hope!) be the first "word" on the line, up to the first space. elseif (preg_match("/([^\ ]*)/", trim($l), $regs)) { if ($regs[1]) return $regs[1]; - else - return null; + else return null; } } @@ -102,8 +100,7 @@ function formatsize($s) return sprintf("%.1f", round($s / 1024, 1)) . "K"; elseif ($s < pow(2, 30)) return sprintf("%.1f", round($s / 1024 / 1024, 1)) . "M"; - else - return sprintf("%.1f", round($s / 1024 / 1024 / 1024, 1)) . "G"; + else return sprintf("%.1f", round($s / 1024 / 1024 / 1024, 1)) . "G"; } /** @@ -146,8 +143,7 @@ function pg2mysql_large($infilename, $outfilename) if ($c % 2 != 0) { if ($inquotes) $inquotes = false; - else - $inquotes = true; + else $inquotes = true; } if ($linenum % 10000 == 0) { @@ -329,8 +325,7 @@ function pg2mysql(&$input, &$arrayofprimaryalreadyintabledef, $header = true) $num = $regs[1]; if ($num <= 255) $line = preg_replace("/ character varying\([0-9]*\)/", " varchar($num)", $line); - else - $line = preg_replace("/ character varying\([0-9]*\)/", " text", $line); + else $line = preg_replace("/ character varying\([0-9]*\)/", " text", $line); } // character varying with no size, we will default to varchar(255) if (preg_match("/ character varying/", $line)) { @@ -352,8 +347,7 @@ function pg2mysql(&$input, &$arrayofprimaryalreadyintabledef, $header = true) $num = $regs[1]; if ($num <= 255) $line = preg_replace("/ character\([0-9]*\)/", " varchar($num)", $line); - else - $line = preg_replace("/ character\([0-9]*\)/", " text", $line); + else $line = preg_replace("/ character\([0-9]*\)/", " text", $line); } // timestamps $line = str_replace(" timestamp with time zone", " datetime", $line); @@ -465,8 +459,7 @@ function pg2mysql(&$input, &$arrayofprimaryalreadyintabledef, $header = true) if ($c % 2 != 0) { if ($inquotes) $inquotes = false; - else - $inquotes = true; + else $inquotes = true; // echo "inquotes=$inquotes\n"; } } while (substr($lines[$linenumber], - 3, - 1) != ");" || $inquotes); diff --git a/dev/tools/test/testdiv.php b/dev/tools/test/testdiv.php deleted file mode 100644 index 438df80b69e..00000000000 --- a/dev/tools/test/testdiv.php +++ /dev/null @@ -1,71 +0,0 @@ - - - - - - - - - -Login Dolibarr 3.4.0-alpha - - - - - - - - - - - -
- - - -
- - - - diff --git a/dev/translation/autotranslator.class.php b/dev/translation/autotranslator.class.php index f9657482c86..b51515a42cb 100644 --- a/dev/translation/autotranslator.class.php +++ b/dev/translation/autotranslator.class.php @@ -77,7 +77,7 @@ class autoTranslator $files = $this->getTranslationFilesArray($this->_refLang); $counter = 1; - foreach($files as $file) + foreach ($files as $file) { if ($this->_limittofile && $this->_limittofile != $file) continue; $counter++; @@ -94,7 +94,7 @@ class autoTranslator // If we must process all languages $arraytmp=dol_dir_list($this->_langDir, 'directories', 0); - foreach($arraytmp as $dirtmp) + foreach ($arraytmp as $dirtmp) { if ($dirtmp['name'] === $this->_refLang) continue; // We discard source language $tmppart=explode('_', $dirtmp['name']); @@ -112,7 +112,7 @@ class autoTranslator } // Process translation of source file for each target languages - foreach($targetlangs as $my_destlang) + foreach ($targetlangs as $my_destlang) { $this->_translatedFiles = array(); @@ -124,15 +124,14 @@ class autoTranslator echo "File not found: " . $destPath . ". We generate it.
\n"; $this->createTranslationFile($destPath, $my_destlang); } - else - { + else { echo "Updating file: " . $destPath . "
\n"; } // Translate lines $fileContentDest = file($destPath, FILE_IGNORE_NEW_LINES|FILE_SKIP_EMPTY_LINES); $newlines=0; - foreach($fileContent as $line){ + foreach ($fileContent as $line){ $key = $this->getLineKey($line); $value = $this->getLineValue($line); if ($key && $value) @@ -167,7 +166,7 @@ class autoTranslator fwrite($fp, "\n"); fwrite($fp, "// START - Lines generated via autotranslator.php tool (".$this->_time.").\n"); fwrite($fp, "// Reference language: ".$this->_refLang." -> ".$my_destlang."\n"); - foreach($this->_translatedFiles[$file] as $line) { + foreach ($this->_translatedFiles[$file] as $line) { fwrite($fp, $line . "\n"); } fwrite($fp, "// STOP - Lines generated via autotranslator.php tool (".$this->_time_end.").\n"); @@ -209,7 +208,7 @@ class autoTranslator { //print "key =".$key."\n"; - foreach($content as $line) { + foreach ($content as $line) { $destKey = $this->getLineKey($line); $destValue = $this->getLineValue($line); // If translated return @@ -273,8 +272,8 @@ class autoTranslator private function getTranslationFilesArray($lang) { $dir = new DirectoryIterator($this->_langDir.$lang); - while($dir->valid()) { - if(!$dir->isDot() && $dir->isFile() && ! preg_match('/^\./', $dir->getFilename())) { + while ($dir->valid()) { + if (!$dir->isDot() && $dir->isFile() && ! preg_match('/^\./', $dir->getFilename())) { $files[] = $dir->getFilename(); } $dir->next(); diff --git a/dev/translation/sanity_check_en_langfiles.php b/dev/translation/sanity_check_en_langfiles.php index f568ba2b04b..0268fc94ed8 100755 --- a/dev/translation/sanity_check_en_langfiles.php +++ b/dev/translation/sanity_check_en_langfiles.php @@ -360,16 +360,14 @@ if ((! empty($_REQUEST['unused']) && $_REQUEST['unused'] == 'true') || (isset($a $unused[$value] = $line; echo $line; // $trad contains the \n } - else - { + else { unset($output); //print 'X'.$output.'Y'; } } if (empty($unused)) print "No string not used found.\n"; - else - { + else { $filetosave='/tmp/'.($argv[2]?$argv[2]:"").'notused.lang'; print "Strings in en_US that are never used are saved into file ".$filetosave.":\n"; file_put_contents($filetosave, implode("", $unused)); diff --git a/dev/translation/strip_language_file.php b/dev/translation/strip_language_file.php index ce28ca5de63..adc5a706d06 100755 --- a/dev/translation/strip_language_file.php +++ b/dev/translation/strip_language_file.php @@ -80,8 +80,8 @@ $aEnglish = array(); if ($filesToProcess == 'all') { $dir = new DirectoryIterator('htdocs/langs/'.$lPrimary); - while($dir->valid()) { - if(!$dir->isDot() && $dir->isFile() && ! preg_match('/^\./', $dir->getFilename())) { + while ($dir->valid()) { + if (!$dir->isDot() && $dir->isFile() && ! preg_match('/^\./', $dir->getFilename())) { $files[] = $dir->getFilename(); } $dir->next(); @@ -94,7 +94,7 @@ else $filesToProcess=explode(',', $filesToProcess); // Loop on each file -foreach($filesToProcess as $fileToProcess) +foreach ($filesToProcess as $fileToProcess) { $lPrimaryFile = 'htdocs/langs/'.$lPrimary.'/'.$fileToProcess; $lSecondaryFile = 'htdocs/langs/'.$lSecondary.'/'.$fileToProcess; @@ -250,11 +250,11 @@ foreach($filesToProcess as $fileToProcess) { if ( ! $oh = fopen($output, 'w') ) { - print "ERROR in writing to file $output\n"; + print "ERROR in writing to file ".$output."\n"; exit; } - print "Read Primary File $lPrimaryFile and write ".$output.":\n"; + print "Read Primary File ".$lPrimaryFile." and write ".$output.":\n"; fwrite($oh, "# Dolibarr language file - Source file is en_US - ".(preg_replace('/\.lang$/', '', $fileToProcess))."\n"); @@ -285,8 +285,7 @@ foreach($filesToProcess as $fileToProcess) print "Key $key is redundant in file $lPrimaryFile (line: $cnt) - Already found into ".$fileFirstFound[$key]." (line: ".$lineFirstFound[$key].").\n"; continue; } - else - { + else { $fileFirstFound[$key] = $fileToProcess; $lineFirstFound[$key] = $cnt; } diff --git a/dev/translation/txpull.sh b/dev/translation/txpull.sh index fcccae98221..65d5af3689b 100755 --- a/dev/translation/txpull.sh +++ b/dev/translation/txpull.sh @@ -33,8 +33,16 @@ if [ "x$1" = "xall" ] then if [ "x$2" = "x" ] then - echo "tx pull" - tx pull + echo "tx pull -a" + tx pull -a + + echo "Remove some language directories (not enough translated)" + rm -fr htdocs/langs/ach + rm -fr htdocs/langs/br_FR + rm -fr htdocs/langs/en + rm -fr htdocs/langs/frp + rm -fr htdocs/langs/fy_NL + else for dir in `find htdocs/langs/* -type d` do diff --git a/doc/images/background_dolibarr.jpg b/doc/images/background_dolibarr.jpg new file mode 100644 index 00000000000..6c4cc11460d Binary files /dev/null and b/doc/images/background_dolibarr.jpg differ diff --git a/htdocs/accountancy/admin/account.php b/htdocs/accountancy/admin/account.php index f735a0a0cfc..f6a4adac21e 100644 --- a/htdocs/accountancy/admin/account.php +++ b/htdocs/accountancy/admin/account.php @@ -119,8 +119,7 @@ if (empty($reshook)) { $obj = $db->fetch_object($resql); $country_code = $obj->code; - } - else dol_print_error($db); + } else dol_print_error($db); // Try to load sql file if ($country_code) @@ -143,9 +142,7 @@ if (empty($reshook)) if ($result > 0) { setEventMessages($langs->trans("ChartLoaded"), null, 'mesgs'); - } - else - { + } else { setEventMessages($langs->trans("ErrorDuringChartLoad"), null, 'warnings'); } } @@ -161,7 +158,7 @@ if (empty($reshook)) if ($action == 'disable') { if ($accounting->fetch($id)) { $mode = GETPOST('mode', 'int'); - $result = $accounting->account_desactivate($id, $mode); + $result = $accounting->accountDeactivate($id, $mode); } $action = 'update'; @@ -235,8 +232,7 @@ if (strlen(trim($search_account))) { } $sql .= " AND (aa.account_number LIKE '".$startchar.$search_account_tmp_clean."'"; $sql .= " OR aa.account_number LIKE '".$startchar.$search_account_clean."%')"; - } - else $sql .= natural_search("aa.account_number", $search_account_tmp); + } else $sql .= natural_search("aa.account_number", $search_account_tmp); } } if (strlen(trim($search_label))) $sql .= natural_search("aa.label", $search_label); @@ -267,7 +263,7 @@ if ($resql) { $num = $db->num_rows($resql); - $param = ''; + $param = ''; if (!empty($contextpage) && $contextpage != $_SERVER["PHP_SELF"]) $param .= '&contextpage='.$contextpage; if ($limit > 0 && $limit != $conf->liste_limit) $param .= '&limit='.$limit; if ($search_account) $param .= '&search_account='.urlencode($search_account); @@ -328,8 +324,7 @@ if ($resql) $i++; } - } - else dol_print_error($db); + } else dol_print_error($db); print ""; print ajax_combobox("chartofaccounts"); print ''; @@ -431,9 +426,7 @@ if ($resql) print $accountparent->getNomUrl(1); print "\n"; if (!$i) $totalarray['nbfield']++; - } - else - { + } else { print ' '; if (!$i) $totalarray['nbfield']++; } @@ -488,11 +481,11 @@ if ($resql) // Action print ''; if ($user->rights->accounting->chartofaccount) { - print ''; + print ''; print img_edit(); print ''; print ' '; - print ''; + print ''; print img_delete(); print ''; } diff --git a/htdocs/accountancy/admin/accountmodel.php b/htdocs/accountancy/admin/accountmodel.php index 0ab42d582d1..9794198332e 100644 --- a/htdocs/accountancy/admin/accountmodel.php +++ b/htdocs/accountancy/admin/accountmodel.php @@ -228,8 +228,7 @@ if (GETPOST('actionadd', 'alpha') || GETPOST('actionmodify', 'alpha')) { if ($value == 'price' || preg_match('/^amount/i', $value) || $value == 'taux') { $_POST[$listfieldvalue[$i]] = price2num($_POST[$listfieldvalue[$i]], 'MU'); - } - elseif ($value == 'entity') { + } elseif ($value == 'entity') { $_POST[$listfieldvalue[$i]] = $conf->entity; } if ($i) $sql .= ","; @@ -245,13 +244,10 @@ if (GETPOST('actionadd', 'alpha') || GETPOST('actionmodify', 'alpha')) { setEventMessages($langs->transnoentities("RecordSaved"), null, 'mesgs'); $_POST = array('id'=>$id); // Clean $_POST array, we keep only - } - else - { + } else { if ($db->errno() == 'DB_ERROR_RECORD_ALREADY_EXISTS') { setEventMessages($langs->transnoentities("ErrorRecordAlreadyExists"), null, 'errors'); - } - else { + } else { dol_print_error($db); } } @@ -260,8 +256,7 @@ if (GETPOST('actionadd', 'alpha') || GETPOST('actionmodify', 'alpha')) // Si verif ok et action modify, on modifie la ligne if ($ok && GETPOST('actionmodify', 'alpha')) { - if ($tabrowid[$id]) { $rowidcol = $tabrowid[$id]; } - else { $rowidcol = "rowid"; } + if ($tabrowid[$id]) { $rowidcol = $tabrowid[$id]; } else { $rowidcol = "rowid"; } // Modify entry $sql = "UPDATE ".$tabname[$id]." SET "; @@ -276,8 +271,7 @@ if (GETPOST('actionadd', 'alpha') || GETPOST('actionmodify', 'alpha')) { if ($field == 'price' || preg_match('/^amount/i', $field) || $field == 'taux') { $_POST[$listfieldvalue[$i]] = price2num($_POST[$listfieldvalue[$i]], 'MU'); - } - elseif ($field == 'entity') { + } elseif ($field == 'entity') { $_POST[$listfieldvalue[$i]] = $conf->entity; } if ($i) $sql .= ","; @@ -306,8 +300,7 @@ if (GETPOST('actioncancel', 'alpha')) if ($action == 'confirm_delete' && $confirm == 'yes') // delete { - if ($tabrowid[$id]) { $rowidcol = $tabrowid[$id]; } - else { $rowidcol = "rowid"; } + if ($tabrowid[$id]) { $rowidcol = $tabrowid[$id]; } else { $rowidcol = "rowid"; } $sql = "DELETE from ".$tabname[$id]." WHERE ".$rowidcol."='".$rowid."'"; @@ -318,9 +311,7 @@ if ($action == 'confirm_delete' && $confirm == 'yes') // delete if ($db->errno() == 'DB_ERROR_CHILD_EXISTS') { setEventMessages($langs->transnoentities("ErrorRecordIsUsedByChild"), null, 'errors'); - } - else - { + } else { dol_print_error($db); } } @@ -329,13 +320,11 @@ if ($action == 'confirm_delete' && $confirm == 'yes') // delete // activate if ($action == $acts[0]) { - if ($tabrowid[$id]) { $rowidcol = $tabrowid[$id]; } - else { $rowidcol = "rowid"; } + if ($tabrowid[$id]) { $rowidcol = $tabrowid[$id]; } else { $rowidcol = "rowid"; } if ($rowid) { $sql = "UPDATE ".$tabname[$id]." SET active = 1 WHERE ".$rowidcol."='".$rowid."'"; - } - elseif ($code) { + } elseif ($code) { $sql = "UPDATE ".$tabname[$id]." SET active = 1 WHERE code='".$code."'"; } @@ -349,13 +338,11 @@ if ($action == $acts[0]) // disable if ($action == $acts[1]) { - if ($tabrowid[$id]) { $rowidcol = $tabrowid[$id]; } - else { $rowidcol = "rowid"; } + if ($tabrowid[$id]) { $rowidcol = $tabrowid[$id]; } else { $rowidcol = "rowid"; } if ($rowid) { $sql = "UPDATE ".$tabname[$id]." SET active = 0 WHERE ".$rowidcol."='".$rowid."'"; - } - elseif ($code) { + } elseif ($code) { $sql = "UPDATE ".$tabname[$id]." SET active = 0 WHERE code='".$code."'"; } @@ -369,13 +356,11 @@ if ($action == $acts[1]) // favorite if ($action == 'activate_favorite') { - if ($tabrowid[$id]) { $rowidcol = $tabrowid[$id]; } - else { $rowidcol = "rowid"; } + if ($tabrowid[$id]) { $rowidcol = $tabrowid[$id]; } else { $rowidcol = "rowid"; } if ($rowid) { $sql = "UPDATE ".$tabname[$id]." SET favorite = 1 WHERE ".$rowidcol."='".$rowid."'"; - } - elseif ($code) { + } elseif ($code) { $sql = "UPDATE ".$tabname[$id]." SET favorite = 1 WHERE code='".$code."'"; } @@ -389,13 +374,11 @@ if ($action == 'activate_favorite') // disable favorite if ($action == 'disable_favorite') { - if ($tabrowid[$id]) { $rowidcol = $tabrowid[$id]; } - else { $rowidcol = "rowid"; } + if ($tabrowid[$id]) { $rowidcol = $tabrowid[$id]; } else { $rowidcol = "rowid"; } if ($rowid) { $sql = "UPDATE ".$tabname[$id]." SET favorite = 0 WHERE ".$rowidcol."='".$rowid."'"; - } - elseif ($code) { + } elseif ($code) { $sql = "UPDATE ".$tabname[$id]." SET favorite = 0 WHERE code='".$code."'"; } @@ -581,9 +564,7 @@ if ($id) print ''; print $form->select_country($search_country_id, 'search_country_id', '', 28, 'maxwidth200 maxwidthonsmartphone'); print ''; - } - else - { + } else { print ''; } } @@ -629,9 +610,7 @@ if ($id) print ' '; print ' '; - } - else - { + } else { $tmpaction = 'view'; $parameters = array('var'=>$var, 'fieldlist'=>$fieldlist, 'tabname'=>$tabname[$id]); $reshook = $hookmanager->executeHooks('viewDictionaryFieldlist', $parameters, $obj, $tmpaction); // Note that $action and $object may have been modified by some hooks @@ -652,26 +631,20 @@ if ($id) if ($value == 'element') { $valuetoshow = isset($elementList[$valuetoshow]) ? $elementList[$valuetoshow] : $valuetoshow; - } - elseif ($value == 'source') + } elseif ($value == 'source') { $valuetoshow = isset($sourceList[$valuetoshow]) ? $sourceList[$valuetoshow] : $valuetoshow; - } - elseif ($valuetoshow == 'all') { + } elseif ($valuetoshow == 'all') { $valuetoshow = $langs->trans('All'); - } - elseif ($fieldlist[$field] == 'country') { + } elseif ($fieldlist[$field] == 'country') { if (empty($obj->country_code)) { $valuetoshow = '-'; - } - else - { + } else { $key = $langs->trans("Country".strtoupper($obj->country_code)); $valuetoshow = ($key != "Country".strtoupper($obj->country_code) ? $obj->country_code." - ".$key : $obj->country); } - } - elseif ($fieldlist[$field] == 'country_id') { + } elseif ($fieldlist[$field] == 'country_id') { $showfield = 0; } @@ -696,7 +669,7 @@ if ($id) print ""; // Modify link - if ($canbemodified) print ''.img_edit().''; + if ($canbemodified) print ''.img_edit().''; else print ' '; // Delete link @@ -708,8 +681,7 @@ if ($id) $i++; } } - } - else { + } else { dol_print_error($db); } @@ -761,8 +733,7 @@ function fieldListAccountModel($fieldlist, $obj = '', $tabname = '', $context = $fieldname = 'country'; print $form->select_country((!empty($obj->country_code) ? $obj->country_code : (!empty($obj->country) ? $obj->country : '')), $fieldname, '', 28, 'maxwidth200 maxwidthonsmartphone'); print ''; - } - elseif ($fieldlist[$field] == 'country_id') + } elseif ($fieldlist[$field] == 'country_id') { if (!in_array('country', $fieldlist)) // If there is already a field country, we don't show country_id (avoid duplicate) { @@ -771,8 +742,7 @@ function fieldListAccountModel($fieldlist, $obj = '', $tabname = '', $context = print ''; print ''; } - } - elseif ($fieldlist[$field] == 'type_cdr') { + } elseif ($fieldlist[$field] == 'type_cdr') { if ($fieldlist[$field] == 'type_cdr') print ''; else print ''; if ($fieldlist[$field] == 'type_cdr') { @@ -781,12 +751,9 @@ function fieldListAccountModel($fieldlist, $obj = '', $tabname = '', $context = print $form->selectyesno($fieldlist[$field], (!empty($obj->{$fieldlist[$field]}) ? $obj->{$fieldlist[$field]}:''), 1); } print ''; - } - elseif ($fieldlist[$field] == 'code' && isset($obj->{$fieldlist[$field]})) { + } elseif ($fieldlist[$field] == 'code' && isset($obj->{$fieldlist[$field]})) { print ''; - } - else - { + } else { print ''; $size = ''; $class = ''; if ($fieldlist[$field] == 'code') $size = 'size="8" '; diff --git a/htdocs/accountancy/admin/card.php b/htdocs/accountancy/admin/card.php index 708165fc757..bc695da0203 100644 --- a/htdocs/accountancy/admin/card.php +++ b/htdocs/accountancy/admin/card.php @@ -75,18 +75,14 @@ if ($action == 'add' && $user->rights->accounting->chartofaccount) if ($conf->global->ACCOUNTING_MANAGE_ZERO == 1) { $account_number = GETPOST('account_number', 'string'); - } - else - { + } else { $account_number = clean_account(GETPOST('account_number', 'string')); } if (GETPOST('account_parent', 'int') <= 0) { $account_parent = 0; - } - else - { + } else { $account_parent = GETPOST('account_parent', 'int'); } @@ -104,13 +100,11 @@ if ($action == 'add' && $user->rights->accounting->chartofaccount) $error = 1; $action = "create"; setEventMessages($object->error, $object->errors, 'errors'); - } - elseif ($res == - 4) { + } elseif ($res == - 4) { $error = 2; $action = "create"; setEventMessages($object->error, $object->errors, 'errors'); - } - elseif ($res < 0) + } elseif ($res < 0) { $error++; setEventMessages($object->error, $object->errors, 'errors'); @@ -140,18 +134,14 @@ if ($action == 'add' && $user->rights->accounting->chartofaccount) if ($conf->global->ACCOUNTING_MANAGE_ZERO == 1) { $account_number = GETPOST('account_number', 'string'); - } - else - { + } else { $account_number = clean_account(GETPOST('account_number', 'string')); } if (GETPOST('account_parent', 'int') <= 0) { $account_parent = 0; - } - else - { + } else { $account_parent = GETPOST('account_parent', 'int'); } @@ -269,8 +259,7 @@ if ($action == 'create') { print ''; print ''; -} -elseif ($id > 0 || $ref) { +} elseif ($id > 0 || $ref) { $result = $object->fetch($id, $ref, 1); if ($result > 0) { diff --git a/htdocs/accountancy/admin/categories_list.php b/htdocs/accountancy/admin/categories_list.php index 500a0d3cbba..ddd4240a073 100644 --- a/htdocs/accountancy/admin/categories_list.php +++ b/htdocs/accountancy/admin/categories_list.php @@ -235,13 +235,10 @@ if (GETPOST('actionadd', 'alpha') || GETPOST('actionmodify', 'alpha')) { setEventMessages($langs->transnoentities("RecordSaved"), null, 'mesgs'); $_POST = array('id'=>$id); // Clean $_POST array, we keep only - } - else - { + } else { if ($db->errno() == 'DB_ERROR_RECORD_ALREADY_EXISTS') { setEventMessages($langs->transnoentities("ErrorRecordAlreadyExists"), null, 'errors'); - } - else { + } else { dol_print_error($db); } } @@ -250,8 +247,7 @@ if (GETPOST('actionadd', 'alpha') || GETPOST('actionmodify', 'alpha')) // Si verif ok et action modify, on modifie la ligne if ($ok && GETPOST('actionmodify', 'alpha')) { - if ($tabrowid[$id]) { $rowidcol = $tabrowid[$id]; } - else { $rowidcol = "rowid"; } + if ($tabrowid[$id]) { $rowidcol = $tabrowid[$id]; } else { $rowidcol = "rowid"; } // Modify entry $sql = "UPDATE ".$tabname[$id]." SET "; @@ -266,8 +262,7 @@ if (GETPOST('actionadd', 'alpha') || GETPOST('actionmodify', 'alpha')) { if ($field == 'fk_country' && $_POST['country'] > 0) { $_POST[$listfieldvalue[$i]] = $_POST['country']; - } - elseif ($field == 'entity') { + } elseif ($field == 'entity') { $_POST[$listfieldvalue[$i]] = $conf->entity; } if ($i) $sql .= ","; @@ -296,8 +291,7 @@ if (GETPOST('actioncancel', 'alpha')) if ($action == 'confirm_delete' && $confirm == 'yes') // delete { - if ($tabrowid[$id]) { $rowidcol = $tabrowid[$id]; } - else { $rowidcol = "rowid"; } + if ($tabrowid[$id]) { $rowidcol = $tabrowid[$id]; } else { $rowidcol = "rowid"; } $sql = "DELETE from ".$tabname[$id]." WHERE ".$rowidcol." = '".$db->escape($rowid)."'"; @@ -308,9 +302,7 @@ if ($action == 'confirm_delete' && $confirm == 'yes') // delete if ($db->errno() == 'DB_ERROR_CHILD_EXISTS') { setEventMessages($langs->transnoentities("ErrorRecordIsUsedByChild"), null, 'errors'); - } - else - { + } else { dol_print_error($db); } } @@ -319,13 +311,11 @@ if ($action == 'confirm_delete' && $confirm == 'yes') // delete // activate if ($action == $acts[0]) { - if ($tabrowid[$id]) { $rowidcol = $tabrowid[$id]; } - else { $rowidcol = "rowid"; } + if ($tabrowid[$id]) { $rowidcol = $tabrowid[$id]; } else { $rowidcol = "rowid"; } if ($rowid) { $sql = "UPDATE ".$tabname[$id]." SET active = 1 WHERE ".$rowidcol." = '".$db->escape($rowid)."'"; - } - elseif ($code) { + } elseif ($code) { $sql = "UPDATE ".$tabname[$id]." SET active = 1 WHERE code = '".$db->escape($code)."'"; } @@ -339,13 +329,11 @@ if ($action == $acts[0]) // disable if ($action == $acts[1]) { - if ($tabrowid[$id]) { $rowidcol = $tabrowid[$id]; } - else { $rowidcol = "rowid"; } + if ($tabrowid[$id]) { $rowidcol = $tabrowid[$id]; } else { $rowidcol = "rowid"; } if ($rowid) { $sql = "UPDATE ".$tabname[$id]." SET active = 0 WHERE ".$rowidcol." = '".$db->escape($rowid)."'"; - } - elseif ($code) { + } elseif ($code) { $sql = "UPDATE ".$tabname[$id]." SET active = 0 WHERE code = '".$db->escape($code)."'"; } @@ -359,13 +347,11 @@ if ($action == $acts[1]) // favorite if ($action == 'activate_favorite') { - if ($tabrowid[$id]) { $rowidcol = $tabrowid[$id]; } - else { $rowidcol = "rowid"; } + if ($tabrowid[$id]) { $rowidcol = $tabrowid[$id]; } else { $rowidcol = "rowid"; } if ($rowid) { $sql = "UPDATE ".$tabname[$id]." SET favorite = 1 WHERE ".$rowidcol." = '".$db->escape($rowid)."'"; - } - elseif ($code) { + } elseif ($code) { $sql = "UPDATE ".$tabname[$id]." SET favorite = 1 WHERE code = '".$db->escape($code)."'"; } @@ -379,13 +365,11 @@ if ($action == 'activate_favorite') // disable favorite if ($action == 'disable_favorite') { - if ($tabrowid[$id]) { $rowidcol = $tabrowid[$id]; } - else { $rowidcol = "rowid"; } + if ($tabrowid[$id]) { $rowidcol = $tabrowid[$id]; } else { $rowidcol = "rowid"; } if ($rowid) { $sql = "UPDATE ".$tabname[$id]." SET favorite = 0 WHERE ".$rowidcol." = '".$db->escape($rowid)."'"; - } - elseif ($code) { + } elseif ($code) { $sql = "UPDATE ".$tabname[$id]." SET favorite = 0 WHERE code = '".$db->escape($code)."'"; } @@ -408,7 +392,7 @@ llxHeader('', $langs->trans('DictionaryAccountancyCategory')); $titre = $langs->trans($tablib[$id]); $linkback = ''; -$titlepicto = 'title_setup'; +$titlepicto = 'title_accountancy'; print load_fiche_titre($titre, $linkback, $titlepicto); @@ -597,9 +581,7 @@ if ($id) print $form->select_country($search_country_id, 'search_country_id', '', 28, 'maxwidth200 maxwidthonsmartphone'); print ''; $filterfound++; - } - else - { + } else { print ''; } } @@ -726,10 +708,8 @@ if ($id) print ''; print ''; print ''; - } - else - { - $tmpaction = 'view'; + } else { + $tmpaction = 'view'; $parameters = array('var'=>$var, 'fieldlist'=>$fieldlist, 'tabname'=>$tabname[$id]); $reshook = $hookmanager->executeHooks('viewDictionaryFieldlist', $parameters, $obj, $tmpaction); // Note that $action and $object may have been modified by some hooks @@ -745,35 +725,27 @@ if ($id) if ($value == 'category_type') { $valuetoshow = yn($valuetoshow); - } - elseif ($valuetoshow == 'all') { + } elseif ($valuetoshow == 'all') { $valuetoshow = $langs->trans('All'); - } - elseif ($fieldlist[$field] == 'country') { + } elseif ($fieldlist[$field] == 'country') { if (empty($obj->country_code)) { $valuetoshow = '-'; - } - else - { + } else { $key = $langs->trans("Country".strtoupper($obj->country_code)); $valuetoshow = ($key != "Country".strtoupper($obj->country_code) ? $obj->country_code." - ".$key : $obj->country); } - } - elseif ($fieldlist[$field] == 'label' && $tabname[$id] == MAIN_DB_PREFIX.'c_country') { + } elseif ($fieldlist[$field] == 'label' && $tabname[$id] == MAIN_DB_PREFIX.'c_country') { $key = $langs->trans("Country".strtoupper($obj->code)); $valuetoshow = ($obj->code && $key != "Country".strtoupper($obj->code) ? $key : $obj->{$fieldlist[$field]}); - } - elseif ($fieldlist[$field] == 'label' && $tabname[$id] == MAIN_DB_PREFIX.'c_availability') { + } elseif ($fieldlist[$field] == 'label' && $tabname[$id] == MAIN_DB_PREFIX.'c_availability') { $langs->loadLangs(array("propal")); $key = $langs->trans("AvailabilityType".strtoupper($obj->code)); $valuetoshow = ($obj->code && $key != "AvailabilityType".strtoupper($obj->code) ? $key : $obj->{$fieldlist[$field]}); - } - elseif ($fieldlist[$field] == 'libelle' && $tabname[$id] == MAIN_DB_PREFIX.'c_actioncomm') { + } elseif ($fieldlist[$field] == 'libelle' && $tabname[$id] == MAIN_DB_PREFIX.'c_actioncomm') { $key = $langs->trans("Action".strtoupper($obj->code)); $valuetoshow = ($obj->code && $key != "Action".strtoupper($obj->code) ? $key : $obj->{$fieldlist[$field]}); - } - elseif ($fieldlist[$field] == 'region_id' || $fieldlist[$field] == 'country_id') { + } elseif ($fieldlist[$field] == 'region_id' || $fieldlist[$field] == 'country_id') { $showfield = 0; } @@ -799,14 +771,13 @@ if ($id) // Active print ''; if ($canbedisabled) print ''.$actl[$obj->active].''; - else - { + else { print $langs->trans("AlwaysActive"); } print ""; // Modify link - if ($canbemodified) print ''.img_edit().''; + if ($canbemodified) print ''.img_edit().''; else print ' '; // Delete link @@ -816,8 +787,7 @@ if ($id) if ($user->admin) print ''.img_delete().''; //else print ''.img_delete().''; // Some dictionary can be edited by other profile than admin print ''; - } - else print ' '; + } else print ' '; // Link to setup the group print ''; @@ -833,8 +803,7 @@ if ($id) $i++; } } - } - else { + } else { dol_print_error($db); } @@ -882,14 +851,11 @@ function fieldListAccountingCategories($fieldlist, $obj = '', $tabname = '', $co { $fieldname = 'country_id'; print $form->select_country(GETPOST('country_id', 'int'), $fieldname, '', 28, 'maxwidth200 maxwidthonsmartphone'); - } - else - { + } else { print $form->select_country((!empty($obj->country_code) ? $obj->country_code : (!empty($obj->country) ? $obj->country : $mysoc->country_code)), $fieldname, '', 28, 'maxwidth200 maxwidthonsmartphone'); } print ''; - } - elseif ($fieldlist[$field] == 'country_id') + } elseif ($fieldlist[$field] == 'country_id') { if (!in_array('country', $fieldlist)) // If there is already a field country, we don't show country_id (avoid duplicate) { @@ -898,17 +864,13 @@ function fieldListAccountingCategories($fieldlist, $obj = '', $tabname = '', $co print ''; print ''; } - } - elseif ($fieldlist[$field] == 'category_type') { + } elseif ($fieldlist[$field] == 'category_type') { print ''; print $form->selectyesno($fieldlist[$field], (!empty($obj->{$fieldlist[$field]}) ? $obj->{$fieldlist[$field]}:''), 1); print ''; - } - elseif ($fieldlist[$field] == 'code' && isset($obj->{$fieldlist[$field]})) { + } elseif ($fieldlist[$field] == 'code' && isset($obj->{$fieldlist[$field]})) { print ''; - } - else - { + } else { print ''; $size = ''; $class = ''; if ($fieldlist[$field] == 'code') $class = 'maxwidth100'; diff --git a/htdocs/accountancy/admin/defaultaccounts.php b/htdocs/accountancy/admin/defaultaccounts.php index ad22a88f415..96303f36b1d 100644 --- a/htdocs/accountancy/admin/defaultaccounts.php +++ b/htdocs/accountancy/admin/defaultaccounts.php @@ -193,8 +193,7 @@ foreach ($list_account as $key) { $reg = array(); if (preg_match('/---(.*)---/', $key, $reg)) { print ''.$langs->trans($reg[1]).''; - } - else { + } else { print ''; // Param $label = $langs->trans($key); diff --git a/htdocs/accountancy/admin/fiscalyear_card.php b/htdocs/accountancy/admin/fiscalyear_card.php index 88890aa004f..27ef1ea7bd1 100644 --- a/htdocs/accountancy/admin/fiscalyear_card.php +++ b/htdocs/accountancy/admin/fiscalyear_card.php @@ -71,9 +71,7 @@ if ($action == 'confirm_delete' && $confirm == "yes") { } else { setEventMessages($object->error, $object->errors, 'errors'); } -} - -elseif ($action == 'add') { +} elseif ($action == 'add') { if (!GETPOST('cancel', 'alpha')) { $error = 0; diff --git a/htdocs/accountancy/admin/index.php b/htdocs/accountancy/admin/index.php index 02963557222..006db08fe9c 100644 --- a/htdocs/accountancy/admin/index.php +++ b/htdocs/accountancy/admin/index.php @@ -236,6 +236,7 @@ if (!empty($user->admin)) } print ''; + /* Set this option as a hidden option but keep it for some needs. print ''; print ''.$langs->trans("ACCOUNTING_ENABLE_EXPORT_DRAFT_JOURNAL").''; if (!empty($conf->global->ACCOUNTING_ENABLE_EXPORT_DRAFT_JOURNAL)) { @@ -248,6 +249,7 @@ if (!empty($user->admin)) print ''; } print ''; + */ print ''; print ''.$langs->trans("BANK_DISABLE_DIRECT_INPUT").''; diff --git a/htdocs/accountancy/admin/journals_list.php b/htdocs/accountancy/admin/journals_list.php index eccb7450594..74247c5fccd 100644 --- a/htdocs/accountancy/admin/journals_list.php +++ b/htdocs/accountancy/admin/journals_list.php @@ -238,13 +238,10 @@ if (GETPOST('actionadd', 'alpha') || GETPOST('actionmodify', 'alpha')) { setEventMessages($langs->transnoentities("RecordSaved"), null, 'mesgs'); $_POST = array('id'=>$id); // Clean $_POST array, we keep only - } - else - { + } else { if ($db->errno() == 'DB_ERROR_RECORD_ALREADY_EXISTS') { setEventMessages($langs->transnoentities("ErrorRecordAlreadyExists"), null, 'errors'); - } - else { + } else { dol_print_error($db); } } @@ -253,8 +250,7 @@ if (GETPOST('actionadd', 'alpha') || GETPOST('actionmodify', 'alpha')) // Si verif ok et action modify, on modifie la ligne if ($ok && GETPOST('actionmodify', 'alpha')) { - if ($tabrowid[$id]) { $rowidcol = $tabrowid[$id]; } - else { $rowidcol = "rowid"; } + if ($tabrowid[$id]) { $rowidcol = $tabrowid[$id]; } else { $rowidcol = "rowid"; } // Modify entry $sql = "UPDATE ".$tabname[$id]." SET "; @@ -269,8 +265,7 @@ if (GETPOST('actionadd', 'alpha') || GETPOST('actionmodify', 'alpha')) { if ($field == 'price' || preg_match('/^amount/i', $field) || $field == 'taux') { $_POST[$listfieldvalue[$i]] = price2num($_POST[$listfieldvalue[$i]], 'MU'); - } - elseif ($field == 'entity') { + } elseif ($field == 'entity') { $_POST[$listfieldvalue[$i]] = $conf->entity; } if ($i) $sql .= ","; @@ -300,8 +295,7 @@ if (GETPOST('actionadd', 'alpha') || GETPOST('actionmodify', 'alpha')) if ($action == 'confirm_delete' && $confirm == 'yes') // delete { - if ($tabrowid[$id]) { $rowidcol = $tabrowid[$id]; } - else { $rowidcol = "rowid"; } + if ($tabrowid[$id]) { $rowidcol = $tabrowid[$id]; } else { $rowidcol = "rowid"; } $sql = "DELETE from ".$tabname[$id]." WHERE ".$rowidcol."='".$rowid."'"; $sql .= " AND entity = ".$conf->entity; @@ -313,9 +307,7 @@ if ($action == 'confirm_delete' && $confirm == 'yes') // delete if ($db->errno() == 'DB_ERROR_CHILD_EXISTS') { setEventMessages($langs->transnoentities("ErrorRecordIsUsedByChild"), null, 'errors'); - } - else - { + } else { dol_print_error($db); } } @@ -324,13 +316,11 @@ if ($action == 'confirm_delete' && $confirm == 'yes') // delete // activate if ($action == $acts[0]) { - if ($tabrowid[$id]) { $rowidcol = $tabrowid[$id]; } - else { $rowidcol = "rowid"; } + if ($tabrowid[$id]) { $rowidcol = $tabrowid[$id]; } else { $rowidcol = "rowid"; } if ($rowid) { $sql = "UPDATE ".$tabname[$id]." SET active = 1 WHERE ".$rowidcol."='".$rowid."'"; - } - elseif ($code) { + } elseif ($code) { $sql = "UPDATE ".$tabname[$id]." SET active = 1 WHERE code='".$code."'"; } $sql .= " AND entity = ".$conf->entity; @@ -345,13 +335,11 @@ if ($action == $acts[0]) // disable if ($action == $acts[1]) { - if ($tabrowid[$id]) { $rowidcol = $tabrowid[$id]; } - else { $rowidcol = "rowid"; } + if ($tabrowid[$id]) { $rowidcol = $tabrowid[$id]; } else { $rowidcol = "rowid"; } if ($rowid) { $sql = "UPDATE ".$tabname[$id]." SET active = 0 WHERE ".$rowidcol."='".$rowid."'"; - } - elseif ($code) { + } elseif ($code) { $sql = "UPDATE ".$tabname[$id]." SET active = 0 WHERE code='".$code."'"; } $sql .= " AND entity = ".$conf->entity; @@ -595,9 +583,7 @@ if ($id) print ''; print '
'; print ''; - } - else - { + } else { $tmpaction = 'view'; $parameters = array('var'=>$var, 'fieldlist'=>$fieldlist, 'tabname'=>$tabname[$id]); $reshook = $hookmanager->executeHooks('viewDictionaryFieldlist', $parameters, $obj, $tmpaction); // Note that $action and $object may have been modified by some hooks @@ -614,12 +600,10 @@ if ($id) $valuetoshow = $obj->{$fieldlist[$field]}; if ($valuetoshow == 'all') { $valuetoshow = $langs->trans('All'); - } - elseif ($fieldlist[$field] == 'nature' && $tabname[$id] == MAIN_DB_PREFIX.'accounting_journal') { + } elseif ($fieldlist[$field] == 'nature' && $tabname[$id] == MAIN_DB_PREFIX.'accounting_journal') { $key = $langs->trans("AccountingJournalType".strtoupper($obj->nature)); $valuetoshow = ($obj->nature && $key != "AccountingJournalType".strtoupper($langs->trans($obj->nature)) ? $key : $obj->{$fieldlist[$field]}); - } - elseif ($fieldlist[$field] == 'label' && $tabname[$id] == MAIN_DB_PREFIX.'accounting_journal') { + } elseif ($fieldlist[$field] == 'label' && $tabname[$id] == MAIN_DB_PREFIX.'accounting_journal') { $valuetoshow = $langs->trans($obj->label); } @@ -657,7 +641,7 @@ if ($id) print ""; // Modify link - if ($canbemodified) print ''.img_edit().''; + if ($canbemodified) print ''.img_edit().''; else print ' '; // Delete link @@ -667,8 +651,7 @@ if ($id) if ($user->admin) print ''.img_delete().''; //else print ''.img_delete().''; // Some dictionary can be edited by other profile than admin print ''; - } - else print ' '; + } else print ' '; print ''; @@ -679,8 +662,7 @@ if ($id) $i++; } } - } - else { + } else { dol_print_error($db); } @@ -724,12 +706,9 @@ function fieldListJournal($fieldlist, $obj = '', $tabname = '', $context = '') print ''; print $form->selectarray('nature', $sourceList, (!empty($obj->{$fieldlist[$field]}) ? $obj->{$fieldlist[$field]}:'')); print ''; - } - elseif ($fieldlist[$field] == 'code' && isset($obj->{$fieldlist[$field]})) { + } elseif ($fieldlist[$field] == 'code' && isset($obj->{$fieldlist[$field]})) { print ''; - } - else - { + } else { print ''; $size = ''; $class = ''; if ($fieldlist[$field] == 'code') $class = 'maxwidth100'; diff --git a/htdocs/accountancy/admin/productaccount.php b/htdocs/accountancy/admin/productaccount.php index c6c76a57621..b6465b95355 100644 --- a/htdocs/accountancy/admin/productaccount.php +++ b/htdocs/accountancy/admin/productaccount.php @@ -252,25 +252,19 @@ $sql .= " FROM ".MAIN_DB_PREFIX."product as p"; $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."accounting_account as aa ON"; if ($accounting_product_mode == 'ACCOUNTANCY_BUY') { $sql .= " p.accountancy_code_buy = aa.account_number AND aa.fk_pcg_version = '".$pcgvercode."'"; -} -elseif ($accounting_product_mode == 'ACCOUNTANCY_BUY_INTRA') +} elseif ($accounting_product_mode == 'ACCOUNTANCY_BUY_INTRA') { $sql .= " p.accountancy_code_buy_intra = aa.account_number AND aa.fk_pcg_version = '".$pcgvercode."'"; -} -elseif ($accounting_product_mode == 'ACCOUNTANCY_BUY_EXPORT') +} elseif ($accounting_product_mode == 'ACCOUNTANCY_BUY_EXPORT') { $sql .= " p.accountancy_code_buy_export = aa.account_number AND aa.fk_pcg_version = '".$pcgvercode."'"; -} -elseif ($accounting_product_mode == 'ACCOUNTANCY_SELL') +} elseif ($accounting_product_mode == 'ACCOUNTANCY_SELL') { $sql .= " p.accountancy_code_sell = aa.account_number AND aa.fk_pcg_version = '".$pcgvercode."'"; -} -elseif ($accounting_product_mode == 'ACCOUNTANCY_SELL_INTRA') +} elseif ($accounting_product_mode == 'ACCOUNTANCY_SELL_INTRA') { $sql .= " p.accountancy_code_sell_intra = aa.account_number AND aa.fk_pcg_version = '".$pcgvercode."'"; -} -else -{ +} else { $sql .= " p.accountancy_code_sell_export = aa.account_number AND aa.fk_pcg_version = '".$pcgvercode."'"; } $sql .= ' WHERE p.entity IN ('.getEntity('product').')'; @@ -290,13 +284,11 @@ if ($accounting_product_mode == 'ACCOUNTANCY_BUY') { if (strlen(trim($search_current_account))) { $sql .= natural_search("p.accountancy_code_sell", $search_current_account); } -} -elseif ($accounting_product_mode == 'ACCOUNTANCY_SELL_INTRA') { +} elseif ($accounting_product_mode == 'ACCOUNTANCY_SELL_INTRA') { if (strlen(trim($search_current_account))) { $sql .= natural_search("p.accountancy_code_sell_intra", $search_current_account); } -} -else { +} else { if (strlen(trim($search_current_account))) { $sql .= natural_search("p.accountancy_code_sell_export", $search_current_account); } @@ -362,7 +354,6 @@ if ($result) print ''; print ''; print ''; - print ''; print load_fiche_titre($langs->trans("ProductsBinding"), '', 'title_accountancy'); print '
'; @@ -412,7 +403,7 @@ if ($result) //print '
'.$buttonsave.'
'; $texte = $langs->trans("ListOfProductsServices"); - print_barre_liste($texte, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $buttonsave, $num, $nbtotalofrecords, '', 0, '', '', $limit); + print_barre_liste($texte, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $buttonsave, $num, $nbtotalofrecords, '', 0, '', '', $limit, 0, 0, 1); print '
'; print ''; @@ -493,34 +484,27 @@ if ($result) if ($accounting_product_mode == 'ACCOUNTANCY_SELL') { $compta_prodsell = (!empty($conf->global->ACCOUNTING_PRODUCT_SOLD_ACCOUNT) ? $conf->global->ACCOUNTING_PRODUCT_SOLD_ACCOUNT : $langs->trans("CodeNotDef")); $compta_prodsell_id = $aarowid_prodsell; - } - elseif ($accounting_product_mode == 'ACCOUNTANCY_SELL_INTRA') { + } elseif ($accounting_product_mode == 'ACCOUNTANCY_SELL_INTRA') { $compta_prodsell = (!empty($conf->global->ACCOUNTING_PRODUCT_SOLD_INTRA_ACCOUNT) ? $conf->global->ACCOUNTING_PRODUCT_SOLD_INTRA_ACCOUNT : $langs->trans("CodeNotDef")); $compta_prodsell_id = $aarowid_prodsell_intra; - } - elseif ($accounting_product_mode == 'ACCOUNTANCY_SELL_EXPORT') { + } elseif ($accounting_product_mode == 'ACCOUNTANCY_SELL_EXPORT') { $compta_prodsell = (!empty($conf->global->ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT) ? $conf->global->ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT : $langs->trans("CodeNotDef")); $compta_prodsell_id = $aarowid_prodsell_export; - } - else { + } else { $compta_prodsell = (!empty($conf->global->ACCOUNTING_PRODUCT_SOLD_ACCOUNT) ? $conf->global->ACCOUNTING_PRODUCT_SOLD_ACCOUNT : $langs->trans("CodeNotDef")); $compta_prodsell_id = $aarowid_prodsell; } - } - else { + } else { if ($accounting_product_mode == 'ACCOUNTANCY_SELL') { $compta_prodsell = (!empty($conf->global->ACCOUNTING_SERVICE_SOLD_ACCOUNT) ? $conf->global->ACCOUNTING_SERVICE_SOLD_ACCOUNT : $langs->trans("CodeNotDef")); $compta_prodsell_id = $aarowid_servsell; - } - elseif ($accounting_product_mode == 'ACCOUNTANCY_SELL_INTRA') { + } elseif ($accounting_product_mode == 'ACCOUNTANCY_SELL_INTRA') { $compta_prodsell = (!empty($conf->global->ACCOUNTING_SERVICE_SOLD_INTRA_ACCOUNT) ? $conf->global->ACCOUNTING_SERVICE_SOLD_INTRA_ACCOUNT : $langs->trans("CodeNotDef")); $compta_prodsell_id = $aarowid_servsell_intra; - } - elseif ($accounting_product_mode == 'ACCOUNTANCY_SELL_EXPORT') { + } elseif ($accounting_product_mode == 'ACCOUNTANCY_SELL_EXPORT') { $compta_prodsell = (!empty($conf->global->ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT) ? $conf->global->ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT : $langs->trans("CodeNotDef")); $compta_prodsell_id = $aarowid_servsell_export; - } - else { + } else { $compta_prodsell = (!empty($conf->global->ACCOUNTING_SERVICE_SOLD_ACCOUNT) ? $conf->global->ACCOUNTING_SERVICE_SOLD_ACCOUNT : $langs->trans("CodeNotDef")); $compta_prodsell_id = $aarowid_servsell; } @@ -531,34 +515,27 @@ if ($result) if ($accounting_product_mode == 'ACCOUNTANCY_BUY') { $compta_prodbuy = (!empty($conf->global->ACCOUNTING_PRODUCT_BUY_ACCOUNT) ? $conf->global->ACCOUNTING_PRODUCT_BUY_ACCOUNT : $langs->trans("CodeNotDef")); $compta_prodbuy_id = $aarowid_prodbuy; - } - elseif ($accounting_product_mode == 'ACCOUNTANCY_BUY_INTRA') { + } elseif ($accounting_product_mode == 'ACCOUNTANCY_BUY_INTRA') { $compta_prodbuy = (!empty($conf->global->ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT) ? $conf->global->ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT : $langs->trans("CodeNotDef")); $compta_prodbuy_id = $aarowid_prodbuy_intra; - } - elseif ($accounting_product_mode == 'ACCOUNTANCY_BUY_EXPORT') { + } elseif ($accounting_product_mode == 'ACCOUNTANCY_BUY_EXPORT') { $compta_prodbuy = (!empty($conf->global->ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT) ? $conf->global->ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT : $langs->trans("CodeNotDef")); $compta_prodbuy_id = $aarowid_prodbuy_export; - } - else { + } else { $compta_prodbuy = (!empty($conf->global->ACCOUNTING_PRODUCT_BUY_ACCOUNT) ? $conf->global->ACCOUNTING_PRODUCT_BUY_ACCOUNT : $langs->trans("CodeNotDef")); $compta_prodbuy_id = $aarowid_prodbuy; } - } - else { + } else { if ($accounting_product_mode == 'ACCOUNTANCY_BUY') { $compta_prodbuy = (!empty($conf->global->ACCOUNTING_SERVICE_BUY_ACCOUNT) ? $conf->global->ACCOUNTING_SERVICE_BUY_ACCOUNT : $langs->trans("CodeNotDef")); $compta_prodbuy_id = $aarowid_servbuy; - } - elseif ($accounting_product_mode == 'ACCOUNTANCY_BUY_INTRA') { + } elseif ($accounting_product_mode == 'ACCOUNTANCY_BUY_INTRA') { $compta_prodbuy = (!empty($conf->global->ACCOUNTING_SERVICE_BUY_INTRA_ACCOUNT) ? $conf->global->ACCOUNTING_SERVICE_BUY_INTRA_ACCOUNT : $langs->trans("CodeNotDef")); $compta_prodbuy_id = $aarowid_servbuy_intra; - } - elseif ($accounting_product_mode == 'ACCOUNTANCY_BUY_EXPORT') { + } elseif ($accounting_product_mode == 'ACCOUNTANCY_BUY_EXPORT') { $compta_prodbuy = (!empty($conf->global->ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT) ? $conf->global->ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT : $langs->trans("CodeNotDef")); $compta_prodbuy_id = $aarowid_servbuy_export; - } - else { + } else { $compta_prodbuy = (!empty($conf->global->ACCOUNTING_SERVICE_BUY_ACCOUNT) ? $conf->global->ACCOUNTING_SERVICE_BUY_ACCOUNT : $langs->trans("CodeNotDef")); $compta_prodbuy_id = $aarowid_servbuy; } @@ -621,7 +598,7 @@ if ($result) if (!empty($obj->aaid)) $defaultvalue = ''; // Do not suggest default new value is code is already valid print $form->select_account($defaultvalue, 'codeventil_'.$product_static->id, 1, array(), 1); print ''; - } elseif ($accounting_product_mode == 'ACCOUNTANCY_BUY_INTRA') { + } elseif ($accounting_product_mode == 'ACCOUNTANCY_BUY_INTRA') { // Accounting account buy intra (In EEC) print ''; - } elseif ($accounting_product_mode == 'ACCOUNTANCY_BUY_EXPORT') { + } elseif ($accounting_product_mode == 'ACCOUNTANCY_BUY_EXPORT') { // Accounting account buy export (Out of EEC) print ''; - // Permet d'afficher le compte comptable - if (empty($displayed_account) || $root_account_description != $displayed_account) + if (!empty($show_subgroup)) { - // Affiche un Sous-Total par compte comptable - if ($displayed_account != "") { - print ''; - print "\n"; + // Show accounting account + if (empty($displayed_account) || $root_account_description != $displayed_account) { + // Show subtotal per accounting account + if ($displayed_account != "") { + print ''; + print ''; + print ''; + print ''; + print ''; + print "\n"; + print ''; + } + + // Show first line of a break + print ''; + print ''; print ''; + + $displayed_account = $root_account_description; + $sous_total_debit = 0; + $sous_total_credit = 0; } - - // Show first line of a break - print ''; - print ''; - print ''; - - $displayed_account = $root_account_description; - $sous_total_debit = 0; - $sous_total_credit = 0; } - // $object->get_compte_racine($line->numero_compte); print ''; @@ -326,12 +338,15 @@ if ($action != 'export_csv') $sous_total_credit += $line->credit; } - print ''; - print "\n"; - print ''; + if (!empty($show_subgroup)) + { + print ''; + print "\n"; + print ''; + } print ''; - print "\n"; + print "\n"; print ''; print "
'; //$defaultvalue=GETPOST('codeventil_' . $product_static->id,'alpha'); This is id and we need a code @@ -631,7 +608,7 @@ if ($result) if (!empty($obj->aaid)) $defaultvalue = ''; // Do not suggest default new value is code is already valid print $form->select_account($defaultvalue, 'codeventil_'.$product_static->id, 1, array(), 1); print ''; //$defaultvalue=GETPOST('codeventil_' . $product_static->id,'alpha'); This is id and we need a code diff --git a/htdocs/accountancy/bookkeeping/balance.php b/htdocs/accountancy/bookkeeping/balance.php index b2a25b00ce2..4de2be6fcbb 100644 --- a/htdocs/accountancy/bookkeeping/balance.php +++ b/htdocs/accountancy/bookkeeping/balance.php @@ -55,7 +55,7 @@ $pagenext = $page + 1; //if (! $sortfield) $sortfield="p.date_fin"; //if (! $sortorder) $sortorder="DESC"; - +$show_subgroup = GETPOST('show_subgroup', 'alpha'); $search_date_start = dol_mktime(0, 0, 0, GETPOST('date_startmonth', 'int'), GETPOST('date_startday', 'int'), GETPOST('date_startyear', 'int')); $search_date_end = dol_mktime(23, 59, 59, GETPOST('date_endmonth', 'int'), GETPOST('date_endday', 'int'), GETPOST('date_endyear', 'int')); @@ -130,10 +130,11 @@ if (!empty($search_accountancy_code_end)) { if (GETPOST('button_removefilter_x', 'alpha') || GETPOST('button_removefilter.x', 'alpha') || GETPOST('button_removefilter', 'alpha')) // All tests are required to be compatible with all browsers { - $search_accountancy_code_start = ''; - $search_accountancy_code_end = ''; + $show_subgroup = ''; $search_date_start = ''; $search_date_end = ''; + $search_accountancy_code_start = ''; + $search_accountancy_code_end = ''; $filter = array(); } @@ -223,6 +224,12 @@ if ($action != 'export_csv') $moreforfilter .= $form->selectDate($search_date_start ? $search_date_start : -1, 'date_start', 0, 0, 1, '', 1, 0); $moreforfilter .= $langs->trans('DateEnd').': '; $moreforfilter .= $form->selectDate($search_date_end ? $search_date_end : -1, 'date_end', 0, 0, 1, '', 1, 0); + + $moreforfilter .= ' - '; + $moreforfilter .= $langs->trans('ShowSubtotalByGroup').': '; + $moreforfilter .= ''; + + $moreforfilter .= ''; if (!empty($moreforfilter)) { @@ -289,26 +296,31 @@ if ($action != 'export_csv') } print '
'.$langs->trans("SubTotal").':'.price($sous_total_debit).''.price($sous_total_credit).''.price(price2num($sous_total_credit - $sous_total_debit)).' 
'.$langs->trans("SubTotal").':'.price($sous_total_debit).''.price($sous_total_credit).''.price(price2num($sous_total_credit - $sous_total_debit)).'
'.$line->numero_compte.($root_account_description ? ' - '.$root_account_description : '').'
'.$line->numero_compte.($root_account_description ? ' - '.$root_account_description : '').'
'.length_accountg($line->numero_compte).'
'.$langs->trans("SubTotal").':'.price($sous_total_debit).''.price($sous_total_credit).''.price(price2num($sous_total_debit - $sous_total_credit)).' 
'.$langs->trans("SubTotal").':'.price($sous_total_debit).''.price($sous_total_credit).''.price(price2num($sous_total_debit - $sous_total_credit)).'
'.$langs->trans("AccountBalance").':'.price($total_debit).''.price($total_credit).''.price(price2num($total_debit - $total_credit)).' 
"; diff --git a/htdocs/accountancy/bookkeeping/card.php b/htdocs/accountancy/bookkeeping/card.php index 26476119cca..1fcce431b24 100644 --- a/htdocs/accountancy/bookkeeping/card.php +++ b/htdocs/accountancy/bookkeeping/card.php @@ -138,9 +138,7 @@ if ($action == "confirm_update") { } } } -} - -elseif ($action == "add") { +} elseif ($action == "add") { $error = 0; if ((floatval($debit) != 0.0) && (floatval($credit) != 0.0)) @@ -199,9 +197,7 @@ elseif ($action == "add") { $action = ''; } } -} - -elseif ($action == "confirm_delete") { +} elseif ($action == "confirm_delete") { $object = new BookKeeping($db); $result = $object->fetch($id, null, $mode); @@ -216,9 +212,7 @@ elseif ($action == "confirm_delete") { } } $action = ''; -} - -elseif ($action == "confirm_create") { +} elseif ($action == "confirm_create") { $error = 0; $object = new BookKeeping($db); @@ -438,7 +432,7 @@ if ($action == 'create') print $langs->trans('Docdate'); print ''; if ($action != 'editdate') - print 'piece_num.'&mode='.$mode.'">'.img_edit($langs->transnoentitiesnoconv('SetDate'), 1).''; + print 'piece_num.'&mode='.$mode.'">'.img_edit($langs->transnoentitiesnoconv('SetDate'), 1).''; print ''; print ''; if ($action == 'editdate') { @@ -462,7 +456,7 @@ if ($action == 'create') print $langs->trans('Codejournal'); print ''; if ($action != 'editjournal') - print 'piece_num.'&mode='.$mode.'">'.img_edit($langs->transnoentitiesnoconv('Edit'), 1).''; + print 'piece_num.'&mode='.$mode.'">'.img_edit($langs->transnoentitiesnoconv('Edit'), 1).''; print ''; print ''; if ($action == 'editjournal') { @@ -486,7 +480,7 @@ if ($action == 'create') print $langs->trans('Piece'); print ''; if ($action != 'editdocref') - print 'piece_num.'&mode='.$mode.'">'.img_edit($langs->transnoentitiesnoconv('Edit'), 1).''; + print 'piece_num.'&mode='.$mode.'">'.img_edit($langs->transnoentitiesnoconv('Edit'), 1).''; print ''; print ''; if ($action == 'editdocref') { @@ -628,9 +622,7 @@ if ($action == 'create') if (!empty($conf->global->ACCOUNTANCY_COMBO_FOR_AUX)) { print $formaccounting->select_auxaccount((GETPOSTISSET("subledger_account") ? GETPOST("subledger_account", "alpha") : $line->subledger_account), 'subledger_account', 1); - } - else - { + } else { print 'subledger_account).'">'; } print ''; @@ -650,8 +642,8 @@ if ($action == 'create') print ''.price($line->credit).''; print ''; - print 'id.'&piece_num='.$line->piece_num.'&mode='.$mode.'">'; - print img_edit(); + print 'id.'&piece_num='.$line->piece_num.'&mode='.$mode.'">'; + print img_edit('', 0, 'class="marginrightonly"'); print '  '; $actiontodelete = 'delete'; @@ -685,9 +677,7 @@ if ($action == 'create') if (!empty($conf->global->ACCOUNTANCY_COMBO_FOR_AUX)) { print $formaccounting->select_auxaccount('', 'subledger_account', 1); - } - else - { + } else { print ''; } print ''; @@ -707,9 +697,7 @@ if ($action == 'create') if ($total_debit == $total_credit) { print ''.$langs->trans("ValidTransaction").''; - } - else - { + } else { print ''; } diff --git a/htdocs/accountancy/bookkeeping/list.php b/htdocs/accountancy/bookkeeping/list.php index 065a72a5257..3282f7f363f 100644 --- a/htdocs/accountancy/bookkeeping/list.php +++ b/htdocs/accountancy/bookkeeping/list.php @@ -351,18 +351,14 @@ if ($action == 'delbookkeepingyearconfirm' && $user->rights->accounting->mouveme $result = $object->deleteByYearAndJournal($delyear, $deljournal, '', ($delmonth > 0 ? $delmonth : 0)); if ($result < 0) { setEventMessages($object->error, $object->errors, 'errors'); - } - else - { + } else { setEventMessages("RecordDeleted", null, 'mesgs'); } // Make a redirect to avoid to launch the delete later after a back button header("Location: list.php".($param ? '?'.$param : '')); exit; - } - else - { + } else { setEventMessages("NoRecordDeleted", null, 'warnings'); } } @@ -373,9 +369,7 @@ if ($action == 'delmouvconfirm' && $user->rights->accounting->mouvements->suppri $result = $object->deleteMvtNum($mvt_num); if ($result < 0) { setEventMessages($object->error, $object->errors, 'errors'); - } - else - { + } else { setEventMessages($langs->trans("RecordDeleted"), null, 'mesgs'); } @@ -480,9 +474,7 @@ if ($action == 'export_file' && $user->rights->accounting->mouvements->export) { if ($result < 0) { setEventMessages($object->error, $object->errors, 'errors'); - } - else - { + } else { // Export files $accountancyexport = new AccountancyExport($db); $accountancyexport->export($object->lines, $formatexportset); @@ -490,9 +482,7 @@ if ($action == 'export_file' && $user->rights->accounting->mouvements->export) { if (!empty($accountancyexport->errors)) { setEventMessages('', $accountancyexport->errors, 'errors'); - } - else - { + } else { // Specify as export : update field date_export $error = 0; $db->begin(); @@ -521,9 +511,7 @@ if ($action == 'export_file' && $user->rights->accounting->mouvements->export) { { $db->commit(); // setEventMessages($langs->trans("AllExportedMovementsWereRecordedAsExported"), null, 'mesgs'); - } - else - { + } else { $error++; $db->rollback(); setEventMessages($langs->trans("NotAllExportedMovementsCouldBeRecordedAsExported"), null, 'errors'); @@ -559,9 +547,7 @@ if (empty($conf->global->MAIN_DISABLE_FULL_SCANLIST)) if (is_numeric($nbtotalofrecords) && $limit > $nbtotalofrecords) { $num = $nbtotalofrecords; -} -else -{ +} else { $sql .= $db->plimit($limit + 1, $offset); $resql = $db->query($sql); @@ -721,9 +707,7 @@ if (!empty($arrayfields['t.subledger_account']['checked'])) if (!empty($conf->global->ACCOUNTANCY_COMBO_FOR_AUX)) { print $formaccounting->select_auxaccount($search_accountancy_aux_code_start, 'search_accountancy_aux_code_start', 1); - } - else - { + } else { print ''; } print '
'; @@ -734,9 +718,7 @@ if (!empty($arrayfields['t.subledger_account']['checked'])) if (!empty($conf->global->ACCOUNTANCY_COMBO_FOR_AUX)) { print $formaccounting->select_auxaccount($search_accountancy_aux_code_end, 'search_accountancy_aux_code_end', 1); - } - else - { + } else { print ''; } print ''; @@ -929,8 +911,7 @@ while ($i < min($num, $limit)) $filedir = $conf->facture->dir_output.'/'.dol_sanitizeFileName($line->doc_ref); $urlsource = $_SERVER['PHP_SELF'].'?id='.$objectstatic->id; $documentlink = $formfile->getDocumentsLink($objectstatic->element, $filename, $filedir); - } - elseif ($line->doc_type == 'supplier_invoice') + } elseif ($line->doc_type == 'supplier_invoice') { $langs->loadLangs(array('bills')); @@ -943,8 +924,7 @@ while ($i < min($num, $limit)) $filedir = $conf->fournisseur->facture->dir_output.'/'.get_exdir($line->fk_doc, 2, 0, 0, $objectstatic, $modulepart).dol_sanitizeFileName($line->doc_ref); $subdir = get_exdir($objectstatic->id, 2, 0, 0, $objectstatic, $modulepart).dol_sanitizeFileName($line->doc_ref); $documentlink = $formfile->getDocumentsLink($objectstatic->element, $subdir, $filedir); - } - elseif ($line->doc_type == 'expense_report') + } elseif ($line->doc_type == 'expense_report') { $langs->loadLangs(array('trips')); @@ -957,9 +937,7 @@ while ($i < min($num, $limit)) $filedir = $conf->expensereport->dir_output.'/'.dol_sanitizeFileName($line->doc_ref); $urlsource = $_SERVER['PHP_SELF'].'?id='.$objectstatic->id; $documentlink = $formfile->getDocumentsLink($objectstatic->element, $filename, $filedir); - } - else - { + } else { // Other type } @@ -1006,7 +984,7 @@ while ($i < min($num, $limit)) // Amount debit if (!empty($arrayfields['t.debit']['checked'])) { - print ''.($line->debit ? price($line->debit) : '').''; + print ''.($line->debit != 0 ? price($line->debit) : '').''; if (!$i) $totalarray['nbfield']++; if (!$i) $totalarray['pos'][$totalarray['nbfield']] = 'totaldebit'; $totalarray['val']['totaldebit'] += $line->debit; @@ -1015,7 +993,7 @@ while ($i < min($num, $limit)) // Amount credit if (!empty($arrayfields['t.credit']['checked'])) { - print ''.($line->credit ? price($line->credit) : '').''; + print ''.($line->credit != 0 ? price($line->credit) : '').''; if (!$i) $totalarray['nbfield']++; if (!$i) $totalarray['pos'][$totalarray['nbfield']] = 'totalcredit'; $totalarray['val']['totalcredit'] += $line->credit; @@ -1039,7 +1017,7 @@ while ($i < min($num, $limit)) } // Fields from hook - $parameters = array('arrayfields'=>$arrayfields, 'obj'=>$obj); + $parameters = array('arrayfields'=>$arrayfields, 'obj'=>$obj, 'i'=>$i, 'totalarray'=>&$totalarray); $reshook = $hookmanager->executeHooks('printFieldListValue', $parameters); // Note that $action and $object may have been modified by hook print $hookmanager->resPrint; diff --git a/htdocs/accountancy/bookkeeping/listbyaccount.php b/htdocs/accountancy/bookkeeping/listbyaccount.php index 78f29e97595..1f4ac513806 100644 --- a/htdocs/accountancy/bookkeeping/listbyaccount.php +++ b/htdocs/accountancy/bookkeeping/listbyaccount.php @@ -57,6 +57,12 @@ $search_direction = GETPOST('search_direction', 'alpha'); $search_ledger_code = GETPOST('search_ledger_code', 'alpha'); $search_debit = GETPOST('search_debit', 'alpha'); $search_credit = GETPOST('search_credit', 'alpha'); +$search_lettering_code = GETPOST('search_lettering_code', 'alpha'); +$search_not_reconciled = GETPOST('search_reconciled_option', 'alpha'); + +if (GETPOST("button_delmvt_x") || GETPOST("button_delmvt.x") || GETPOST("button_delmvt")) { + $action = 'delbookkeepingyear'; +} // Load variable for pagination $limit = GETPOST('limit', 'int') ?GETPOST('limit', 'int') : (empty($conf->global->ACCOUNTING_LIMIT_LIST_VENTILATION) ? $conf->liste_limit : $conf->global->ACCOUNTING_LIMIT_LIST_VENTILATION); @@ -70,6 +76,13 @@ $pagenext = $page + 1; if ($sortorder == "") $sortorder = "ASC"; if ($sortfield == "") $sortfield = "t.doc_date,t.rowid"; +// Initialize technical object to manage hooks of page. Note that conf->hooks_modules contains array of hook context +$object = new BookKeeping($db); +$hookmanager->initHooks(array('bookkeepingbyaccountlist')); + +$formaccounting = new FormAccounting($db); +$form = new Form($db); + if (empty($search_date_start) && empty($search_date_end) && GETPOSTISSET('search_date_startday') && GETPOSTISSET('search_date_startmonth') && GETPOSTISSET('search_date_starthour')) { $sql = "SELECT date_start, date_end from ".MAIN_DB_PREFIX."accounting_fiscalyear "; $sql .= " where date_start < '".$db->idate(dol_now())."' and date_end > '".$db->idate(dol_now())."'"; @@ -96,98 +109,175 @@ if (empty($search_date_start) && empty($search_date_end) && GETPOSTISSET('search } } -$object = new BookKeeping($db); +$arrayfields = array( + // 't.subledger_account'=>array('label'=>$langs->trans("SubledgerAccount"), 'checked'=>1), + 't.code_journal'=>array('label'=>$langs->trans("Codejournal"), 'checked'=>1), + 't.piece_num'=>array('label'=>$langs->trans("TransactionNumShort"), 'checked'=>1), + 't.doc_date'=>array('label'=>$langs->trans("Docdate"), 'checked'=>1), + 't.doc_ref'=>array('label'=>$langs->trans("Piece"), 'checked'=>1), + 't.label_operation'=>array('label'=>$langs->trans("Label"), 'checked'=>1), + 't.debit'=>array('label'=>$langs->trans("Debit"), 'checked'=>1), + 't.credit'=>array('label'=>$langs->trans("Credit"), 'checked'=>1), + 't.lettering_code'=>array('label'=>$langs->trans("LetteringCode"), 'checked'=>1), +); + +if (empty($conf->global->ACCOUNTING_ENABLE_LETTERING)) unset($arrayfields['t.lettering_code']); /* * Action */ -if (GETPOST('button_removefilter_x', 'alpha') || GETPOST('button_removefilter.x', 'alpha') || GETPOST('button_removefilter', 'alpha')) // All tests are required to be compatible with all browsers +if (GETPOST('cancel', 'alpha')) { $action = 'list'; $massaction = ''; } +if (!GETPOST('confirmmassaction', 'alpha') && $massaction != 'presend' && $massaction != 'confirm_presend') { $massaction = ''; } + +$parameters = array('socid'=>$socid); +$reshook = $hookmanager->executeHooks('doActions', $parameters, $object, $action); // Note that $action and $object may have been modified by some hooks +if ($reshook < 0) setEventMessages($hookmanager->error, $hookmanager->errors, 'errors'); + +if (empty($reshook)) { - $search_doc_date = ''; - $search_accountancy_code = ''; - $search_accountancy_code_start = ''; - $search_accountancy_code_end = ''; - $search_label_account = ''; - $search_doc_ref = ''; - $search_label_operation = ''; - $search_direction = ''; - $search_ledger_code = ''; - $search_date_start = ''; - $search_date_end = ''; - $search_date_startyear = ''; - $search_date_startmonth = ''; - $search_date_startday = ''; - $search_date_endyear = ''; - $search_date_endmonth = ''; - $search_date_endday = ''; - $search_debit = ''; - $search_credit = ''; + include DOL_DOCUMENT_ROOT . '/core/actions_changeselectedfields.inc.php'; + + if (GETPOST('button_removefilter_x', 'alpha') || GETPOST('button_removefilter.x', 'alpha') || GETPOST('button_removefilter', 'alpha')) // All tests are required to be compatible with all browsers + { + $search_doc_date = ''; + $search_accountancy_code = ''; + $search_accountancy_code_start = ''; + $search_accountancy_code_end = ''; + $search_label_account = ''; + $search_doc_ref = ''; + $search_label_operation = ''; + $search_direction = ''; + $search_ledger_code = ''; + $search_date_start = ''; + $search_date_end = ''; + $search_date_startyear = ''; + $search_date_startmonth = ''; + $search_date_startday = ''; + $search_date_endyear = ''; + $search_date_endmonth = ''; + $search_date_endday = ''; + $search_debit = ''; + $search_credit = ''; + $search_lettering_code = ''; + $search_not_reconciled = ''; + } + + // Must be after the remove filter action, before the export. + $param = ''; + $filter = array(); + + if (!empty($search_date_start)) { + $filter['t.doc_date>='] = $search_date_start; + $param .= '&search_date_startmonth=' . GETPOST('search_date_startmonth', 'int') . '&search_date_startday=' . GETPOST('search_date_startday', 'int') . '&search_date_startyear=' . GETPOST('search_date_startyear', 'int'); + } + if (!empty($search_date_end)) { + $filter['t.doc_date<='] = $search_date_end; + $param .= '&search_date_endmonth=' . GETPOST('search_date_endmonth', 'int') . '&search_date_endday=' . GETPOST('search_date_endday', 'int') . '&search_date_endyear=' . GETPOST('search_date_endyear', 'int'); + } + if (!empty($search_doc_date)) { + $filter['t.doc_date'] = $search_doc_date; + $param .= '&doc_datemonth=' . GETPOST('doc_datemonth', 'int') . '&doc_dateday=' . GETPOST('doc_dateday', 'int') . '&doc_dateyear=' . GETPOST('doc_dateyear', 'int'); + } + if (!empty($search_accountancy_code_start)) { + $filter['t.numero_compte>='] = $search_accountancy_code_start; + $param .= '&search_accountancy_code_start=' . urlencode($search_accountancy_code_start); + } + if (!empty($search_accountancy_code_end)) { + $filter['t.numero_compte<='] = $search_accountancy_code_end; + $param .= '&search_accountancy_code_end=' . urlencode($search_accountancy_code_end); + } + if (!empty($search_label_account)) { + $filter['t.label_compte'] = $search_label_account; + $param .= '&search_label_compte=' . urlencode($search_label_account); + } + if (!empty($search_doc_ref)) { + $filter['t.doc_ref'] = $search_doc_ref; + $param .= '&search_doc_ref=' . urlencode($search_doc_ref); + } + if (!empty($search_label_operation)) { + $filter['t.label_operation'] = $search_label_operation; + $param .= '&search_label_operation=' . urlencode($search_label_operation); + } + if (!empty($search_direction)) { + $filter['t.sens'] = $search_direction; + $param .= '&search_direction=' . urlencode($search_direction); + } + if (!empty($search_ledger_code)) { + $filter['t.code_journal'] = $search_ledger_code; + $param .= '&search_ledger_code=' . urlencode($search_ledger_code); + } + if (!empty($search_debit)) { + $filter['t.debit'] = $search_debit; + $param .= '&search_debit=' . urlencode($search_debit); + } + if (!empty($search_credit)) { + $filter['t.credit'] = $search_credit; + $param .= '&search_credit=' . urlencode($search_credit); + } + if (!empty($search_lettering_code)) { + $filter['t.lettering_code'] = $search_lettering_code; + $param .= '&search_lettering_code='.urlencode($search_lettering_code); + } + if (!empty($search_not_reconciled)) { + $filter['t.reconciled_option'] = $search_not_reconciled; + $param .= '&search_not_reconciled='.urlencode($search_not_reconciled); + } } -// Must be after the remove filter action, before the export. -$param = ''; -$filter = array(); +if ($action == 'delbookkeeping' && $user->rights->accounting->mouvements->supprimer) { + $import_key = GETPOST('importkey', 'alpha'); -if (!empty($search_date_start)) { - $filter['t.doc_date>='] = $search_date_start; - $param .= '&search_date_startmonth='.GETPOST('search_date_startmonth', 'int').'&search_date_startday='.GETPOST('search_date_startday', 'int').'&search_date_startyear='.GETPOST('search_date_startyear', 'int'); -} -if (!empty($search_date_end)) { - $filter['t.doc_date<='] = $search_date_end; - $param .= '&search_date_endmonth='.GETPOST('search_date_endmonth', 'int').'&search_date_endday='.GETPOST('search_date_endday', 'int').'&search_date_endyear='.GETPOST('search_date_endyear', 'int'); -} -if (!empty($search_doc_date)) { - $filter['t.doc_date'] = $search_doc_date; - $param .= '&doc_datemonth='.GETPOST('doc_datemonth', 'int').'&doc_dateday='.GETPOST('doc_dateday', 'int').'&doc_dateyear='.GETPOST('doc_dateyear', 'int'); -} -if (!empty($search_accountancy_code_start)) { - $filter['t.numero_compte>='] = $search_accountancy_code_start; - $param .= '&search_accountancy_code_start='.urlencode($search_accountancy_code_start); -} -if (!empty($search_accountancy_code_end)) { - $filter['t.numero_compte<='] = $search_accountancy_code_end; - $param .= '&search_accountancy_code_end='.urlencode($search_accountancy_code_end); -} -if (!empty($search_label_account)) { - $filter['t.label_compte'] = $search_label_account; - $param .= '&search_label_compte='.urlencode($search_label_account); -} -if (!empty($search_doc_ref)) { - $filter['t.doc_ref'] = $search_doc_ref; - $param .= '&search_doc_ref='.urlencode($search_doc_ref); -} -if (!empty($search_label_operation)) { - $filter['t.label_operation'] = $search_label_operation; - $param .= '&search_label_operation='.urlencode($search_label_operation); -} -if (!empty($search_direction)) { - $filter['t.sens'] = $search_direction; - $param .= '&search_direction='.urlencode($search_direction); -} -if (!empty($search_ledger_code)) { - $filter['t.code_journal'] = $search_ledger_code; - $param .= '&search_ledger_code='.urlencode($search_ledger_code); -} -if (!empty($search_debit)) { - $filter['t.debit'] = $search_debit; - $param .= '&search_debit='.urlencode($search_debit); -} -if (!empty($search_credit)) { - $filter['t.credit'] = $search_credit; - $param .= '&search_credit='.urlencode($search_credit); -} + if (!empty($import_key)) { + $result = $object->deleteByImportkey($import_key); + if ($result < 0) { + setEventMessages($object->error, $object->errors, 'errors'); + } + // Make a redirect to avoid to launch the delete later after a back button + header("Location: listbyaccount.php".($param ? '?'.$param : '')); + exit; + } +} +if ($action == 'delbookkeepingyearconfirm' && $user->rights->accounting->mouvements->supprimer_tous) { + $delmonth = GETPOST('delmonth', 'int'); + $delyear = GETPOST('delyear', 'int'); + if ($delyear == -1) { + $delyear = 0; + } + $deljournal = GETPOST('deljournal', 'alpha'); + if ($deljournal == -1) { + $deljournal = 0; + } -if ($action == 'delmouvconfirm') { + if (!empty($delmonth) || !empty($delyear) || !empty($deljournal)) + { + $result = $object->deleteByYearAndJournal($delyear, $deljournal, '', ($delmonth > 0 ? $delmonth : 0)); + if ($result < 0) { + setEventMessages($object->error, $object->errors, 'errors'); + } else { + setEventMessages("RecordDeleted", null, 'mesgs'); + } + + // Make a redirect to avoid to launch the delete later after a back button + header("Location: listbyaccount.php".($param ? '?'.$param : '')); + exit; + } else { + setEventMessages("NoRecordDeleted", null, 'warnings'); + } +} +if ($action == 'delmouvconfirm' && $user->rights->accounting->mouvements->supprimer) { $mvt_num = GETPOST('mvt_num', 'int'); if (!empty($mvt_num)) { $result = $object->deleteMvtNum($mvt_num); if ($result < 0) { setEventMessages($object->error, $object->errors, 'errors'); + } else { + setEventMessages($langs->trans("RecordDeleted"), null, 'mesgs'); } - Header("Location: listbyaccount.php"); - exit(); + + header("Location: listbyaccount.php?noreset=1".($param ? '&'.$param : '')); + exit; } } @@ -229,22 +319,42 @@ if ($action == 'delmouv') { } if ($action == 'delbookkeepingyear') { $form_question = array(); - $delyear = GETPOST('delyear'); + $delyear = GETPOST('delyear', 'int'); + $deljournal = GETPOST('deljournal', 'alpha'); if (empty($delyear)) { $delyear = dol_print_date(dol_now(), '%Y'); } + $month_array = array(); + for ($i = 1; $i <= 12; $i++) { + $month_array[$i] = $langs->trans("Month".sprintf("%02d", $i)); + } $year_array = $formaccounting->selectyear_accountancy_bookkepping($delyear, 'delyear', 0, 'array'); + $journal_array = $formaccounting->select_journal($deljournal, 'deljournal', '', 1, 1, 1, '', 0, 1); + $form_question['delmonth'] = array( + 'name' => 'delmonth', + 'type' => 'select', + 'label' => $langs->trans('DelMonth'), + 'values' => $month_array, + 'default' => '' + ); $form_question['delyear'] = array( - 'name' => 'delyear', - 'type' => 'select', - 'label' => $langs->trans('DelYear'), - 'values' => $year_array, - 'default' => $delyear + 'name' => 'delyear', + 'type' => 'select', + 'label' => $langs->trans('DelYear'), + 'values' => $year_array, + 'default' => $delyear + ); + $form_question['deljournal'] = array( + 'name' => 'deljournal', + 'type' => 'other', // We don't use select here, the journal_array is already a select html component + 'label' => $langs->trans('DelJournal'), + 'value' => $journal_array, + 'default' => $deljournal ); - $formconfirm = $form->formconfirm($_SERVER["PHP_SELF"], $langs->trans('DeleteMvt'), $langs->trans('ConfirmDeleteMvt'), 'delbookkeepingyearconfirm', $form_question, 0, 1, 250); + $formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?'.$param, $langs->trans('DeleteMvt'), $langs->trans('ConfirmDeleteMvt'), 'delbookkeepingyearconfirm', $form_question, '', 1, 300); print $formconfirm; } @@ -267,53 +377,115 @@ if ($limit > 0 && $limit != $conf->liste_limit) $param .= '&limit='.urlencode($l print_barre_liste($title_page, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, '', $result, $nbtotalofrecords, 'title_accountancy', 0, $viewflat.$newcardbutton, '', $limit); +$varpage = empty($contextpage) ? $_SERVER["PHP_SELF"] : $contextpage; +$selectedfields = $form->multiSelectArrayWithCheckbox('selectedfields', $arrayfields, $varpage); // This also change content of $arrayfields +if ($massactionbutton) $selectedfields .= $form->showCheckAddButtons('checkforselect', 1); + // Reverse sort order if (preg_match('/^asc/i', $sortorder)) $sortorder = "asc"; else $sortorder = "desc"; -print '
'; -print ''; +$moreforfilter = ''; -print ''; -print ''; -print ''; + +print '
'; +print '
'; -print '
'; -print $langs->trans('From').' '; -print $formaccounting->select_account($search_accountancy_code_start, 'search_accountancy_code_start', 1, array(), 1, 1, 'maxwidth200'); +// Accountancy account +$moreforfilter .= '
'; +$moreforfilter .= $langs->trans('AccountAccounting').': '; +$moreforfilter .= '
'; +$moreforfilter .= $langs->trans('From').' '; +$moreforfilter .= $formaccounting->select_account($search_accountancy_code_start, 'search_accountancy_code_start', 1, array(), 1, 1, 'maxwidth200'); +$moreforfilter .= $langs->trans('to').' '; +$moreforfilter .= $formaccounting->select_account($search_accountancy_code_end, 'search_accountancy_code_end', 1, array(), 1, 1, 'maxwidth200'); +$moreforfilter .= '
'; +$moreforfilter .= '
'; + +$parameters = array(); +$reshook = $hookmanager->executeHooks('printFieldPreListTitle', $parameters); // Note that $action and $object may have been modified by hook +if (empty($reshook)) $moreforfilter .= $hookmanager->resPrint; +else $moreforfilter = $hookmanager->resPrint; + +print '
'; +print $moreforfilter; print '
'; -print '
'; -print $langs->trans('to').' '; -print $formaccounting->select_account($search_accountancy_code_end, 'search_accountancy_code_end', 1, array(), 1, 1, 'maxwidth200'); -print '
'; -print '
'; + +// Filters lines +print ''; + +// Code journal +if (!empty($arrayfields['t.code_journal']['checked'])) { + print ''; +} +// Date document +if (!empty($arrayfields['t.doc_date']['checked'])) { + print ''; +} +// Movement number +if (!empty($arrayfields['t.piece_num']['checked'])) +{ + print ''; +} +// Ref document +if (!empty($arrayfields['t.doc_ref']['checked'])) { + print ''; +} +// Label operation +if (!empty($arrayfields['t.label_operation']['checked'])) { + print ''; +} +// Debit +if (!empty($arrayfields['t.debit']['checked'])) { + print ''; +} +// Credit +if (!empty($arrayfields['t.credit']['checked'])) { + print ''; +} +// Lettering code +if (!empty($arrayfields['t.lettering_code']['checked'])) +{ + print ''; +} + +// Fields from hook +$parameters = array('arrayfields'=>$arrayfields); +$reshook = $hookmanager->executeHooks('printFieldListOption', $parameters); // Note that $action and $object may have been modified by hook +print $hookmanager->resPrint; + +// Action column print ''; -print ''; -print ''; -print ''; -print ''; -print ''; -print ''; -print ''; +print "\n"; print ''; -print_liste_field_titre("AccountAccountingShort", $_SERVER['PHP_SELF']); -print_liste_field_titre("TransactionNumShort", $_SERVER['PHP_SELF'], "t.piece_num", "", $param, '', $sortfield, $sortorder, 'right '); -print_liste_field_titre("Docdate", $_SERVER['PHP_SELF'], "t.doc_date", "", $param, '', $sortfield, $sortorder, 'center '); -print_liste_field_titre("Piece", $_SERVER['PHP_SELF'], "t.doc_ref", "", $param, "", $sortfield, $sortorder); -print_liste_field_titre("Label"); -print_liste_field_titre("Debit", $_SERVER['PHP_SELF'], "t.debit", "", $param, '', $sortfield, $sortorder, 'right '); -print_liste_field_titre("Credit", $_SERVER['PHP_SELF'], "t.credit", "", $param, '', $sortfield, $sortorder, 'right '); -print_liste_field_titre("Codejournal", $_SERVER['PHP_SELF'], "t.code_journal", "", $param, '', $sortfield, $sortorder, 'center '); -print_liste_field_titre('', $_SERVER["PHP_SELF"], "", $param, "", 'width="60"', $sortfield, $sortorder, 'center '); +if (!empty($arrayfields['t.code_journal']['checked'])) print_liste_field_titre($arrayfields['t.code_journal']['label'], $_SERVER['PHP_SELF'], "t.code_journal", "", $param, '', $sortfield, $sortorder, 'center '); +if (!empty($arrayfields['t.doc_date']['checked'])) print_liste_field_titre($arrayfields['t.doc_date']['label'], $_SERVER['PHP_SELF'], "t.doc_date", "", $param, '', $sortfield, $sortorder, 'center '); +if (!empty($arrayfields['t.piece_num']['checked'])) print_liste_field_titre($arrayfields['t.piece_num']['label'], $_SERVER['PHP_SELF'], "t.piece_num", "", $param, '', $sortfield, $sortorder); +if (!empty($arrayfields['t.doc_ref']['checked'])) print_liste_field_titre($arrayfields['t.doc_ref']['label'], $_SERVER['PHP_SELF'], "t.doc_ref", "", $param, "", $sortfield, $sortorder); +if (!empty($arrayfields['t.label_operation']['checked'])) print_liste_field_titre($arrayfields['t.label_operation']['label'], $_SERVER['PHP_SELF'], "t.label_operation", "", $param, "", $sortfield, $sortorder); +if (!empty($arrayfields['t.debit']['checked'])) print_liste_field_titre($arrayfields['t.debit']['label'], $_SERVER['PHP_SELF'], "t.debit", "", $param, '', $sortfield, $sortorder, 'right '); +if (!empty($arrayfields['t.credit']['checked'])) print_liste_field_titre($arrayfields['t.credit']['label'], $_SERVER['PHP_SELF'], "t.credit", "", $param, '', $sortfield, $sortorder, 'right '); +if (!empty($arrayfields['t.lettering_code']['checked'])) print_liste_field_titre($arrayfields['t.lettering_code']['label'], $_SERVER['PHP_SELF'], "t.lettering_code", "", $param, '', $sortfield, $sortorder, 'center '); +// Hook fields +$parameters = array('arrayfields'=>$arrayfields, 'param'=>$param, 'sortfield'=>$sortfield, 'sortorder'=>$sortorder); +$reshook = $hookmanager->executeHooks('printFieldListTitle', $parameters); // Note that $action and $object may have been modified by hook +print $hookmanager->resPrint; +print_liste_field_titre($selectedfields, $_SERVER["PHP_SELF"], "", '', '', '', $sortfield, $sortorder, 'center maxwidthsearch '); print "\n"; @@ -323,7 +495,10 @@ $sous_total_debit = 0; $sous_total_credit = 0; $displayed_account_number = null; // Start with undefined to be able to distinguish with empty +// Loop on record +// -------------------------------------------------------------------- $i = 0; +$totalarray = array(); while ($i < min($num, $limit)) { $line = $object->lines[$i]; @@ -336,18 +511,39 @@ while ($i < min($num, $limit)) // Is it a break ? if ($accountg != $displayed_account_number || !isset($displayed_account_number)) { - // Affiche un Sous-Total par compte comptable + $colspan = $totalarray['nbfield'] - 3; + $colspanend = $totalarray['nbfield'] - 7; + // Show a subtotal by accounting account if (isset($displayed_account_number)) { - print ''; - print "\n"; - print "\n"; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + // Show balance of last shown account + $balance = $sous_total_debit - $sous_total_credit; + print ''; + print ''; + if ($balance > 0 ) + { + print ''; + print ''; + } else { + print ''; + print ''; + } + print ''; print ''; } // Show the break account - $colspan = 9; print ""; - print ''; @@ -357,72 +553,206 @@ while ($i < min($num, $limit)) //if (empty($displayed_account_number)) $displayed_account_number='-'; $sous_total_debit = 0; $sous_total_credit = 0; + + $colspan = 0; } print ''; - print ''; - print ''; - print ''; - // TODO Add a link according to doc_type and fk_doc - print ''; + if (!$i) $totalarray['nbfield']++; + } + + // Document date + if (!empty($arrayfields['t.doc_date']['checked'])) + { + print ''; + if (!$i) $totalarray['nbfield']++; + } + + // Piece number + if (!empty($arrayfields['t.piece_num']['checked'])) + { + print ''; + if (!$i) $totalarray['nbfield']++; + } + + // Document ref + if (!empty($arrayfields['t.doc_ref']['checked'])) + { + if ($line->doc_type == 'customer_invoice') + { + $langs->loadLangs(array('bills')); + + require_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php'; + $objectstatic = new Facture($db); + $objectstatic->fetch($line->fk_doc); + //$modulepart = 'facture'; + + $filename = dol_sanitizeFileName($line->doc_ref); + $filedir = $conf->facture->dir_output.'/'.dol_sanitizeFileName($line->doc_ref); + $urlsource = $_SERVER['PHP_SELF'].'?id='.$objectstatic->id; + $documentlink = $formfile->getDocumentsLink($objectstatic->element, $filename, $filedir); + } elseif ($line->doc_type == 'supplier_invoice') + { + $langs->loadLangs(array('bills')); + + require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php'; + $objectstatic = new FactureFournisseur($db); + $objectstatic->fetch($line->fk_doc); + //$modulepart = 'invoice_supplier'; + + $filename = dol_sanitizeFileName($line->doc_ref); + $filedir = $conf->fournisseur->facture->dir_output.'/'.get_exdir($line->fk_doc, 2, 0, 0, $objectstatic, $modulepart).dol_sanitizeFileName($line->doc_ref); + $subdir = get_exdir($objectstatic->id, 2, 0, 0, $objectstatic, $modulepart).dol_sanitizeFileName($line->doc_ref); + $documentlink = $formfile->getDocumentsLink($objectstatic->element, $subdir, $filedir); + } elseif ($line->doc_type == 'expense_report') + { + $langs->loadLangs(array('trips')); + + require_once DOL_DOCUMENT_ROOT.'/expensereport/class/expensereport.class.php'; + $objectstatic = new ExpenseReport($db); + $objectstatic->fetch($line->fk_doc); + //$modulepart = 'expensereport'; + + $filename = dol_sanitizeFileName($line->doc_ref); + $filedir = $conf->expensereport->dir_output.'/'.dol_sanitizeFileName($line->doc_ref); + $urlsource = $_SERVER['PHP_SELF'].'?id='.$objectstatic->id; + $documentlink = $formfile->getDocumentsLink($objectstatic->element, $filename, $filedir); + } else { + // Other type + } + + print '\n"; + if (!$i) $totalarray['nbfield']++; + } + + // Label operation + if (!empty($arrayfields['t.label_operation']['checked'])) { + // Affiche un lien vers la facture client/fournisseur + $doc_ref = preg_replace('/\(.*\)/', '', $line->doc_ref); + print strlen(length_accounta($line->subledger_account)) == 0 ? '' : ''; + if (!$i) $totalarray['nbfield']++; + } + + // Amount debit + if (!empty($arrayfields['t.debit']['checked'])) + { + print ''; + if (!$i) $totalarray['nbfield']++; + if (!$i) $totalarray['pos'][$totalarray['nbfield']] = 'totaldebit'; + $totalarray['val']['totaldebit'] += $line->debit; + } + + // Amount credit + if (!empty($arrayfields['t.credit']['checked'])) { + print ''; + if (!$i) $totalarray['nbfield']++; + if (!$i) $totalarray['pos'][$totalarray['nbfield']] = 'totalcredit'; + $totalarray['val']['totalcredit'] += $line->credit; + } + + // Lettering code + if (!empty($arrayfields['t.lettering_code']['checked'])) + { + print ''; + if (!$i) $totalarray['nbfield']++; + } + + // Fields from hook + $parameters = array('arrayfields'=>$arrayfields, 'obj'=>$obj); + $reshook = $hookmanager->executeHooks('printFieldListValue', $parameters); // Note that $action and $object may have been modified by hook + print $hookmanager->resPrint; + + // Action column + print ''; - - // Affiche un lien vers la facture client/fournisseur - $doc_ref = preg_replace('/\(.*\)/', '', $line->doc_ref); - print strlen(length_accounta($line->subledger_account)) == 0 ? '' : ''; - - - print ''; - print ''; - - $accountingjournal = new AccountingJournal($db); - $result = $accountingjournal->fetch('', $line->code_journal); - $journaltoshow = (($result > 0) ? $accountingjournal->getNomUrl(0, 0, 0, '', 0) : $line->code_journal); - print ''; - - print ''; - print "\n"; + if (!$i) $totalarray['nbfield']++; // Comptabilise le sous-total $sous_total_debit += $line->debit; $sous_total_credit += $line->credit; + print "\n"; + $i++; } // Show sub-total of last shown account +$colspan = $totalarray['nbfield'] - 3; +$colspanend = $totalarray['nbfield'] - 8; print ''; -print ''; -print ''; -print ''; +print ''; +print ''; +print ''; +print ''; +print ''; +// Show balance of last shown account +$balance = $sous_total_debit - $sous_total_credit; +print ''; +print ''; +if ($balance > 0 ) +{ + print ''; + print ''; +} else { + print ''; + print ''; +} +print ''; print ''; +// Show total line +include DOL_DOCUMENT_ROOT.'/core/tpl/list_print_total.tpl.php'; -// Show total -print ''; -print ''; -print ''; -print ''; -print ''; -print ''; -print ''; print "
'; + print '
'; + print $langs->trans('From') . ': '; + print $form->selectDate($search_date_start, 'search_date_start', 0, 0, 1); + print '
'; + print '
'; + print $langs->trans('to') . ': '; + print $form->selectDate($search_date_end, 'search_date_end', 0, 0, 1); + print '
'; + print '
'; + print ''; + print '
'.$langs->trans("NotReconciled").''; + print '
'; -print $langs->trans('From').': '; -print $form->selectDate($search_date_start, 'search_date_start', 0, 0, 1); -print '
'; -print $langs->trans('to').': '; -print $form->selectDate($search_date_end, 'search_date_end', 0, 0, 1); -print '
'; -$searchpicto = $form->showFilterAndCheckAddButtons(0); +$searchpicto = $form->showFilterButtons(); print $searchpicto; print '
'.$langs->trans("SubTotal").':'.price($sous_total_debit).''.price($sous_total_credit).'  
'.$langs->trans("TotalForAccount").' '.length_accountg($displayed_account_number).':'.price($sous_total_debit).''.price($sous_total_credit).'
'.$langs->trans("Balance").':'; + print price($sous_total_debit - $sous_total_credit); + print ''; + print price($sous_total_credit - $sous_total_debit); + print '
'; + print ''; if ($line->numero_compte != "" && $line->numero_compte != '-1') print length_accountg($line->numero_compte).' : '.$object->get_compte_desc($line->numero_compte); else print ''.$langs->trans("Unknown").''; print '
 '.$line->piece_num.''.dol_print_date($line->doc_date, 'day').''; - //if ($line->doc_type == 'supplier_invoice') - //if ($line->doc_type == 'customer_invoice') - print $line->doc_ref; + // Journal code + if (!empty($arrayfields['t.code_journal']['checked'])) + { + $accountingjournal = new AccountingJournal($db); + $result = $accountingjournal->fetch('', $line->code_journal); + $journaltoshow = (($result > 0) ? $accountingjournal->getNomUrl(0, 0, 0, '', 0) : $line->code_journal); + print ''.$journaltoshow.''.dol_print_date($line->doc_date, 'day').''; + $object->id = $line->id; + $object->piece_num = $line->piece_num; + print $object->getNomUrl(1, '', 0, '', 1); + print ''; + + print ''; + // Picto + Ref + print '
'; + + if ($line->doc_type == 'customer_invoice' || $line->doc_type == 'supplier_invoice' || $line->doc_type == 'expense_report') + { + print $objectstatic->getNomUrl(1, '', 0, 0, '', 0, -1, 1); + print $documentlink; + } else { + print $line->doc_ref; + } + print '
'; + + print "
' . $line->label_operation . '' . $line->label_operation . '
(' . length_accounta($line->subledger_account) . ')
'.($line->debit ? price($line->debit) : '').'' . ($line->credit ? price($line->credit) : '') . ''.$line->lettering_code.''; + if (empty($line->date_export)) { + if ($user->rights->accounting->mouvements->creer) { + print ''.img_edit().''; + } + if ($user->rights->accounting->mouvements->supprimer) { + print ' '.img_delete().''; + } + } print ''.$line->label_operation.''.$line->label_operation.'
('.length_accounta($line->subledger_account).')
'.($line->debit ? price($line->debit) : '').''.($line->credit ? price($line->credit) : '').''.$journaltoshow.''; - print ''.img_edit().' '; - print ''.img_delete().''; - print '
'.$langs->trans("SubTotal").':'.price($sous_total_debit).''.price($sous_total_credit).''; -print price($sous_total_debit - $sous_total_credit); -print ''.$langs->trans("TotalForAccount").' '.$accountg.':'.price($sous_total_debit).''.price($sous_total_credit).'
'.$langs->trans("Balance").':'; + print price($sous_total_debit - $sous_total_credit); + print ''; + print price($sous_total_credit - $sous_total_debit); + print '
'.$langs->trans("Total").':'; -print price($total_debit); -print ''; -print price($total_credit); -print '
"; print '
'; +// TODO Replace this with mass delete action +if ($user->rights->accounting->mouvements->supprimer_tous) { + print '
'."\n"; + print ''.$langs->trans("DeleteMvt").''; + print '
'; +} + print ''; // End of page diff --git a/htdocs/accountancy/class/accountancycategory.class.php b/htdocs/accountancy/class/accountancycategory.class.php index cc93232dcdc..c7f7f8cf68c 100644 --- a/htdocs/accountancy/class/accountancycategory.class.php +++ b/htdocs/accountancy/class/accountancycategory.class.php @@ -209,9 +209,7 @@ class AccountancyCategory // extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return $this->id; } @@ -241,8 +239,7 @@ class AccountancyCategory // extends CommonObject $sql .= " t.active"; $sql .= " FROM ".MAIN_DB_PREFIX."c_accounting_category as t"; if ($id) $sql .= " WHERE t.rowid = ".$id; - else - { + else { $sql .= " WHERE t.entity IN (".getEntity('c_accounting_category').")"; // Dont't use entity if you use rowid if ($code) $sql .= " AND t.code = '".$this->db->escape($code)."'"; elseif ($label) $sql .= " AND t.label = '".$this->db->escape($label)."'"; @@ -270,9 +267,7 @@ class AccountancyCategory // extends CommonObject $this->db->free($resql); return 1; - } - else - { + } else { $this->error = "Error ".$this->db->lasterror(); return -1; } @@ -335,9 +330,7 @@ class AccountancyCategory // extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } @@ -375,9 +368,7 @@ class AccountancyCategory // extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } @@ -709,9 +700,7 @@ class AccountancyCategory // extends CommonObject $listofaccount .= "'".$cptcursor."'"; } $sql .= " AND t.numero_compte IN (".$listofaccount.")"; - } - else - { + } else { $sql .= " AND t.numero_compte = '".$this->db->escape($cpt)."'"; } if (!empty($date_start) && !empty($date_end) && (empty($month) || empty($year))) // If month/year provided, it is stronger than filter date_start/date_end @@ -833,9 +822,7 @@ class AccountancyCategory // extends CommonObject $sql .= " WHERE t.fk_accounting_category = ".$cat_id; $sql .= " AND t.entity = ".$conf->entity; $sql .= " ORDER BY t.account_number"; - } - else - { + } else { $sql = "SELECT t.rowid, t.account_number, t.label as account_label"; $sql .= " FROM ".MAIN_DB_PREFIX."accounting_account as t"; $sql .= " WHERE ".$predefinedgroupwhere; diff --git a/htdocs/accountancy/class/accountancyexport.class.php b/htdocs/accountancy/class/accountancyexport.class.php index 1e641564de4..1c76d0408da 100644 --- a/htdocs/accountancy/class/accountancyexport.class.php +++ b/htdocs/accountancy/class/accountancyexport.class.php @@ -5,11 +5,12 @@ * Copyright (C) 2015 Florian Henry * Copyright (C) 2015 Raphaël Doursenaud * Copyright (C) 2016 Pierre-Henry Favre - * Copyright (C) 2016-2019 Alexandre Spangaro + * Copyright (C) 2016-2020 Alexandre Spangaro * Copyright (C) 2013-2017 Olivier Geffroy * Copyright (C) 2017 Elarifr. Ari Elbaz * Copyright (C) 2017-2019 Frédéric France * Copyright (C) 2017 André Schild + * Copyright (C) 2020 Guillaume Alexandre * * 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 @@ -52,6 +53,7 @@ class AccountancyExport public static $EXPORT_TYPE_SAGE50_SWISS = 45; public static $EXPORT_TYPE_CHARLEMAGNE = 50; public static $EXPORT_TYPE_QUADRATUS = 60; + public static $EXPORT_TYPE_WINFIC = 70; public static $EXPORT_TYPE_OPENCONCERTO = 100; public static $EXPORT_TYPE_LDCOMPTA = 110; public static $EXPORT_TYPE_LDCOMPTA10 = 120; @@ -105,6 +107,7 @@ class AccountancyExport self::$EXPORT_TYPE_BOB50 => $langs->trans('Modelcsv_bob50'), self::$EXPORT_TYPE_CIEL => $langs->trans('Modelcsv_ciel'), self::$EXPORT_TYPE_QUADRATUS => $langs->trans('Modelcsv_quadratus'), + self::$EXPORT_TYPE_WINFIC => $langs->trans('Modelcsv_winfic'), self::$EXPORT_TYPE_EBP => $langs->trans('Modelcsv_ebp'), self::$EXPORT_TYPE_COGILOG => $langs->trans('Modelcsv_cogilog'), self::$EXPORT_TYPE_AGIRIS => $langs->trans('Modelcsv_agiris'), @@ -136,6 +139,7 @@ class AccountancyExport self::$EXPORT_TYPE_BOB50 => 'bob50', self::$EXPORT_TYPE_CIEL => 'ciel', self::$EXPORT_TYPE_QUADRATUS => 'quadratus', + self::$EXPORT_TYPE_WINFIC => 'winfic', self::$EXPORT_TYPE_EBP => 'ebp', self::$EXPORT_TYPE_COGILOG => 'cogilog', self::$EXPORT_TYPE_AGIRIS => 'agiris', @@ -184,6 +188,10 @@ class AccountancyExport 'label' => $langs->trans('Modelcsv_quadratus'), 'ACCOUNTING_EXPORT_FORMAT' => 'txt', ), + self::$EXPORT_TYPE_WINFIC => array( + 'label' => $langs->trans('Modelcsv_winfic'), + 'ACCOUNTING_EXPORT_FORMAT' => 'txt', + ), self::$EXPORT_TYPE_EBP => array( 'label' => $langs->trans('Modelcsv_ebp'), ), @@ -246,7 +254,7 @@ class AccountancyExport $filename = 'general_ledger-'.$this->getFormatCode($formatexportset); $type_export = 'general_ledger'; - global $db; // The tpl file use $db + global $db; // The tpl file use $db include DOL_DOCUMENT_ROOT.'/accountancy/tpl/export_journal.tpl.php'; @@ -269,6 +277,9 @@ class AccountancyExport case self::$EXPORT_TYPE_QUADRATUS : $this->exportQuadratus($TData); break; + case self::$EXPORT_TYPE_WINFIC : + $this->exportWinfic($TData); + break; case self::$EXPORT_TYPE_EBP : $this->exportEbp($TData); break; @@ -351,7 +362,7 @@ class AccountancyExport if ($line->sens == 'D') { print price($line->montant).$separator; print ''.$separator; - }elseif ($line->sens == 'C') { + } elseif ($line->sens == 'C') { print ''.$separator; print price($line->montant).$separator; } @@ -507,11 +518,12 @@ class AccountancyExport $Tab['contrepartie'] = str_repeat(' ', 8); // elarifr: date format must be fixed format : 6 char ddmmyy = %d%m%yand not defined by user / dolibarr setting - if (!empty($data->date_echeance)) + if (!empty($data->date_echeance)) { //$Tab['date_echeance'] = dol_print_date($data->date_echeance, $conf->global->ACCOUNTING_EXPORT_DATE); $Tab['date_echeance'] = dol_print_date($data->date_echeance, '%d%m%y'); // elarifr: format must be ddmmyy - else + } else { $Tab['date_echeance'] = '000000'; + } //elarifr please keep quadra named field lettrage(2) + codestat(3) instead of fake lettrage(5) //$Tab['lettrage'] = str_repeat(' ', 5); @@ -548,6 +560,85 @@ class AccountancyExport } } + /** + * Export format : WinFic - eWinfic - WinSis Compta + * + * + * @param array $TData data + * @return void + */ + public function exportWinfic(&$TData) + { + global $conf; + + $end_line = "\r\n"; + + //We should use dol_now function not time however this is wrong date to transfert in accounting + //$date_ecriture = dol_print_date(dol_now(), $conf->global->ACCOUNTING_EXPORT_DATE); // format must be ddmmyy + //$date_ecriture = dol_print_date(time(), $conf->global->ACCOUNTING_EXPORT_DATE); // format must be ddmmyy + foreach ($TData as $data) { + $code_compta = $data->numero_compte; + if (!empty($data->subledger_account)) + $code_compta = $data->subledger_account; + + $Tab = array(); + //$Tab['type_ligne'] = 'M'; + $Tab['code_journal'] = str_pad(self::trunc($data->code_journal, 2), 2); + + //We use invoice date $data->doc_date not $date_ecriture which is the transfert date + //maybe we should set an option for customer who prefer to keep in accounting software the tranfert date instead of invoice date ? + //$Tab['date_ecriture'] = $date_ecriture; + $Tab['date_operation'] = dol_print_date($data->doc_date, '%d%m%Y'); + + $Tab['folio'] = ' 1'; + + $Tab['num_ecriture'] = str_pad(self::trunc($data->piece_num, 6), 6, ' ', STR_PAD_LEFT); + + $Tab['jour_ecriture'] = dol_print_date($data->doc_date, '%d%m%y'); + + $Tab['num_compte'] = str_pad(self::trunc($code_compta, 6), 6, '0'); + + if ($data->sens == 'D') { + $Tab['montant_debit'] = str_pad(number_format(abs($data->montant), 2, ',', ''), 13, ' ', STR_PAD_LEFT); + + $Tab['montant_crebit'] = str_pad(number_format(0, 2, ',', ''), 13, ' ', STR_PAD_LEFT); + } else { + $Tab['montant_debit'] = str_pad(number_format(0, 2, ',', ''), 13, ' ', STR_PAD_LEFT); + + $Tab['montant_crebit'] = str_pad(number_format(abs($data->montant), 2, ',', ''), 13, ' ', STR_PAD_LEFT); + } + + $Tab['libelle_ecriture'] = str_pad(self::trunc(dol_string_unaccent($data->doc_ref).' '.dol_string_unaccent($data->label_operation), 30), 30); + + $Tab['lettrage'] = str_repeat(' ', 2); + + $Tab['code_piece'] = str_repeat(' ', 5); + + $Tab['code_stat'] = str_repeat(' ', 4); + + if (!empty($data->date_echeance)) { + //$Tab['date_echeance'] = dol_print_date($data->date_echeance, $conf->global->ACCOUNTING_EXPORT_DATE); + $Tab['date_echeance'] = dol_print_date($data->date_echeance, '%d%m%Y'); + } else { + $Tab['date_echeance'] = dol_print_date($data->doc_date, '%d%m%Y'); + } + + $Tab['monnaie'] = '1'; + + $Tab['filler'] = ' '; + + $Tab['ind_compteur'] = ' '; + + $Tab['quantite'] = '0,000000000'; + + $Tab['code_pointage'] = str_repeat(' ', 2); + + $Tab['end_line'] = $end_line; + + print implode('|', $Tab); + } + } + /** * Export format : EBP @@ -807,12 +898,10 @@ class AccountancyExport if ($aIndex - 2 >= 0 && $objectLines[$aIndex - 2]->piece_num == $line->piece_num) { $sammelBuchung = true; - } - elseif ($aIndex + 2 < $aSize && $objectLines[$aIndex + 2]->piece_num == $line->piece_num) + } elseif ($aIndex + 2 < $aSize && $objectLines[$aIndex + 2]->piece_num == $line->piece_num) { $sammelBuchung = true; - } - elseif ($aIndex + 1 < $aSize + } elseif ($aIndex + 1 < $aSize && $objectLines[$aIndex + 1]->piece_num == $line->piece_num && $aIndex - 1 < $aSize && $objectLines[$aIndex - 1]->piece_num == $line->piece_num @@ -834,9 +923,7 @@ class AccountancyExport if ($line->sens == 'D') { print 'S'.$this->separator; - } - else - { + } else { print 'H'.$this->separator; } //Grp @@ -847,14 +934,10 @@ class AccountancyExport if ($line->piece_num == $thisPieceNum) { print length_accounta($thisPieceAccountNr).$this->separator; - } - else - { + } else { print "div".$this->separator; } - } - else - { + } else { print length_accounta($line->code_tiers).$this->separator; } //SId @@ -870,9 +953,7 @@ class AccountancyExport if ($sammelBuchung) { print "2".$this->separator; - } - else - { + } else { print "1".$this->separator; } // Code @@ -881,9 +962,7 @@ class AccountancyExport if ($line->montant >= 0) { print $line->montant.$this->separator; - } - else - { + } else { print ($line->montant * -1).$this->separator; } // Steuer @@ -930,7 +1009,7 @@ class AccountancyExport } /** - * Export format : LD Compta version 9 & higher + * Export format : LD Compta version 9 * http://www.ldsysteme.fr/fileadmin/telechargement/np/ldcompta/Documentation/IntCptW9.pdf * * @param array $objectLines data @@ -1368,7 +1447,9 @@ class AccountancyExport print self::trunc($line->code_journal, 6).$separator; //Journal code if (!empty($line->subledger_account)) $account = $line->subledger_account; - else $account = $line->numero_compte; + else { + $account = $line->numero_compte; + } print self::trunc($account, 15).$separator; //Account number print self::trunc($line->label_compte, 60).$separator; //Account label diff --git a/htdocs/accountancy/class/accountingaccount.class.php b/htdocs/accountancy/class/accountingaccount.class.php index a32918cc5bf..6a3fa8e7998 100644 --- a/htdocs/accountancy/class/accountingaccount.class.php +++ b/htdocs/accountancy/class/accountingaccount.class.php @@ -553,24 +553,19 @@ class AccountingAccount extends CommonObject } } - // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps /** - * Account deactivated + * Deactivate an account (for status active or status reconcilable) * * @param int $id Id - * @param int $mode 0=field active, 1=field active_customer_list, 2=field_active_supplier_list + * @param int $mode 0=field active, 1=field reconcilable * @return int <0 if KO, >0 if OK */ - public function account_desactivate($id, $mode = 0) + public function accountDeactivate($id, $mode = 0) { - // phpcs:enable $result = $this->checkUsage(); - if ($mode == 0) - { - $fieldtouse = 'active'; - } - elseif ($mode == 1) + $fieldtouse = 'active'; + if ($mode == 1) { $fieldtouse = 'reconcilable'; } @@ -582,7 +577,7 @@ class AccountingAccount extends CommonObject $sql .= "SET ".$fieldtouse." = '0'"; $sql .= " WHERE rowid = ".$this->db->escape($id); - dol_syslog(get_class($this)."::account_desactivate ".$fieldtouse." sql=".$sql, LOG_DEBUG); + dol_syslog(get_class($this)."::accountDeactivate ".$fieldtouse." sql=".$sql, LOG_DEBUG); $result = $this->db->query($sql); if ($result) { @@ -614,8 +609,7 @@ class AccountingAccount extends CommonObject if ($mode == 0) { $fieldtouse = 'active'; - } - elseif ($mode == 1) + } elseif ($mode == 1) { $fieldtouse = 'reconcilable'; } @@ -666,28 +660,23 @@ class AccountingAccount extends CommonObject { if ($status == 1) return $langs->trans('Enabled'); elseif ($status == 0) return $langs->trans('Disabled'); - } - elseif ($mode == 1) + } elseif ($mode == 1) { if ($status == 1) return $langs->trans('Enabled'); elseif ($status == 0) return $langs->trans('Disabled'); - } - elseif ($mode == 2) + } elseif ($mode == 2) { if ($status == 1) return img_picto($langs->trans('Enabled'), 'statut4').' '.$langs->trans('Enabled'); elseif ($status == 0) return img_picto($langs->trans('Disabled'), 'statut5').' '.$langs->trans('Disabled'); - } - elseif ($mode == 3) + } elseif ($mode == 3) { if ($status == 1) return img_picto($langs->trans('Enabled'), 'statut4'); elseif ($status == 0) return img_picto($langs->trans('Disabled'), 'statut5'); - } - elseif ($mode == 4) + } elseif ($mode == 4) { if ($status == 1) return img_picto($langs->trans('Enabled'), 'statut4').' '.$langs->trans('Enabled'); elseif ($status == 0) return img_picto($langs->trans('Disabled'), 'statut5').' '.$langs->trans('Disabled'); - } - elseif ($mode == 5) + } elseif ($mode == 5) { if ($status == 1) return $langs->trans('Enabled').' '.img_picto($langs->trans('Enabled'), 'statut4'); elseif ($status == 0) return $langs->trans('Disabled').' '.img_picto($langs->trans('Disabled'), 'statut5'); diff --git a/htdocs/accountancy/class/accountingjournal.class.php b/htdocs/accountancy/class/accountingjournal.class.php index 727e68346fa..6067f557cfb 100644 --- a/htdocs/accountancy/class/accountingjournal.class.php +++ b/htdocs/accountancy/class/accountingjournal.class.php @@ -109,8 +109,7 @@ class AccountingJournal extends CommonObject $sql .= " WHERE"; if ($rowid) { $sql .= " rowid = ".(int) $rowid; - } - elseif ($journal_code) + } elseif ($journal_code) { $sql .= " code = '".$this->db->escape($journal_code)."'"; $sql .= " AND entity = ".$conf->entity; @@ -136,9 +135,7 @@ class AccountingJournal extends CommonObject } else { return 0; } - } - else - { + } else { $this->error = "Error ".$this->db->lasterror(); $this->errors[] = "Error ".$this->db->lasterror(); } @@ -311,8 +308,7 @@ class AccountingJournal extends CommonObject elseif ($nature == 3) return $langs->trans('AccountingJournalType3'); elseif ($nature == 2) return $langs->trans('AccountingJournalType2'); elseif ($nature == 1) return $langs->trans('AccountingJournalType1'); - } - elseif ($mode == 1) + } elseif ($mode == 1) { if ($nature == 9) return $langs->trans('AccountingJournalType9'); elseif ($nature == 5) return $langs->trans('AccountingJournalType5'); diff --git a/htdocs/accountancy/class/bookkeeping.class.php b/htdocs/accountancy/class/bookkeeping.class.php index 43762c2d36a..713d5175d31 100644 --- a/htdocs/accountancy/class/bookkeeping.class.php +++ b/htdocs/accountancy/class/bookkeeping.class.php @@ -258,9 +258,7 @@ class BookKeeping extends CommonObject if (in_array($this->doc_type, array('bank', 'expense_report'))) { $this->errors[] = $langs->trans('ErrorFieldAccountNotDefinedForBankLine', $this->fk_docdet, $this->doc_type); - } - else - { + } else { //$this->errors[]=$langs->trans('ErrorFieldAccountNotDefinedForInvoiceLine', $this->doc_ref, $this->label_compte); $mesg = $this->doc_ref.', '.$langs->trans("AccountAccounting").': '.$this->numero_compte; if ($this->subledger_account && $this->subledger_account != $this->numero_compte) @@ -477,8 +475,7 @@ class BookKeeping extends CommonObject } $linkclose .= ' title="'.dol_escape_htmltag($label, 1).'"'; $linkclose .= ' class="classfortooltip'.($morecss ? ' '.$morecss : '').'"'; - } - else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); + } else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); $linkstart = ''; @@ -704,7 +701,7 @@ class BookKeeping extends CommonObject $sql .= ' WHERE 1 = 1'; $sql .= " AND entity IN (".getEntity('accountancy').")"; if (null !== $ref) { - $sql .= ' AND t.ref = '.'\''.$ref.'\''; + $sql .= " AND t.ref = '".$this->db->escape($ref)."'"; } else { $sql .= ' AND t.rowid = '.$id; } diff --git a/htdocs/accountancy/closure/index.php b/htdocs/accountancy/closure/index.php index 39ed325b5fe..ed8fc8ecc7e 100644 --- a/htdocs/accountancy/closure/index.php +++ b/htdocs/accountancy/closure/index.php @@ -42,8 +42,7 @@ if (!$user->rights->accounting->fiscalyear->write) $month_start = ($conf->global->SOCIETE_FISCAL_MONTH_START ? ($conf->global->SOCIETE_FISCAL_MONTH_START) : 1); if (GETPOST("year", 'int')) $year_start = GETPOST("year", 'int'); -else -{ +else { $year_start = dol_print_date(dol_now(), '%Y'); if (dol_print_date(dol_now(), '%m') < $month_start) $year_start--; // If current month is lower that starting fiscal month, we start last year } diff --git a/htdocs/accountancy/closure/validate.php b/htdocs/accountancy/closure/validate.php index fe7fda5054f..808ccfba0ef 100644 --- a/htdocs/accountancy/closure/validate.php +++ b/htdocs/accountancy/closure/validate.php @@ -42,8 +42,7 @@ if ($user->socid > 0) $month_start = ($conf->global->SOCIETE_FISCAL_MONTH_START ? ($conf->global->SOCIETE_FISCAL_MONTH_START) : 1); if (GETPOST("year", 'int')) $year_start = GETPOST("year", 'int'); -else -{ +else { $year_start = dol_print_date(dol_now(), '%Y'); if (dol_print_date(dol_now(), '%m') < $month_start) $year_start--; // If current month is lower that starting fiscal month, we start last year } diff --git a/htdocs/accountancy/customer/card.php b/htdocs/accountancy/customer/card.php index 0a39fbc8254..4d24110f7e6 100644 --- a/htdocs/accountancy/customer/card.php +++ b/htdocs/accountancy/customer/card.php @@ -59,9 +59,7 @@ if ($action == 'ventil' && $user->rights->accounting->bind->write) $resql = $db->query($sql); if (!$resql) { setEventMessages($db->lasterror(), null, 'errors'); - } - else - { + } else { setEventMessages($langs->trans("RecordModifiedSuccessfully"), null, 'mesgs'); if ($backtopage) { diff --git a/htdocs/accountancy/customer/index.php b/htdocs/accountancy/customer/index.php index eff348816fb..425e8aecc81 100644 --- a/htdocs/accountancy/customer/index.php +++ b/htdocs/accountancy/customer/index.php @@ -47,8 +47,7 @@ if (!$user->rights->accounting->bind->write) $month_start = ($conf->global->SOCIETE_FISCAL_MONTH_START ? ($conf->global->SOCIETE_FISCAL_MONTH_START) : 1); if (GETPOST("year", 'int')) $year_start = GETPOST("year", 'int'); -else -{ +else { $year_start = dol_print_date(dol_now(), '%Y'); if (dol_print_date(dol_now(), '%m') < $month_start) $year_start--; // If current month is lower that starting fiscal month, we start last year } @@ -202,8 +201,7 @@ if ($action == 'validatehistory') { if ($error) { $db->rollback(); - } - else { + } else { $db->commit(); setEventMessages($langs->trans('AutomaticBindingDone'), null, 'mesgs'); } @@ -278,15 +276,13 @@ if ($resql) { if ($row[0] == 'tobind') { print $langs->trans("Unknown"); - } - else print length_accountg($row[0]); + } else print length_accountg($row[0]); print ''; print ''; if ($row[0] == 'tobind') { print $langs->trans("UseMenuToSetBindindManualy", DOL_URL_ROOT.'/accountancy/customer/list.php?search_year='.$y, $langs->transnoentitiesnoconv("ToBind")); - } - else print $row[1]; + } else print $row[1]; print ''; for ($i = 2; $i <= 12; $i++) { print ''.price($row[$i]).''; @@ -353,16 +349,14 @@ if ($resql) { if ($row[0] == 'tobind') { print $langs->trans("Unknown"); - } - else print length_accountg($row[0]); + } else print length_accountg($row[0]); print ''; print ''; if ($row[0] == 'tobind') { print $langs->trans("UseMenuToSetBindindManualy", DOL_URL_ROOT.'/accountancy/customer/list.php?search_year='.$y, $langs->transnoentitiesnoconv("ToBind")); - } - else print $row[1]; + } else print $row[1]; print ''; for ($i = 2; $i <= 12; $i++) { diff --git a/htdocs/accountancy/customer/lines.php b/htdocs/accountancy/customer/lines.php index 7e51160195b..af98dc14653 100644 --- a/htdocs/accountancy/customer/lines.php +++ b/htdocs/accountancy/customer/lines.php @@ -1,6 +1,6 @@ - * Copyright (C) 2013-2016 Alexandre Spangaro + * Copyright (C) 2013-2020 Alexandre Spangaro * Copyright (C) 2014-2015 Ari Elbaz (elarifr) * Copyright (C) 2014-2016 Florian Henry * Copyright (C) 2014 Juanjo Menent @@ -27,10 +27,12 @@ require '../../main.inc.php'; require_once DOL_DOCUMENT_ROOT.'/core/class/html.formaccounting.class.php'; +require_once DOL_DOCUMENT_ROOT.'/core/class/html.formother.class.php'; +require_once DOL_DOCUMENT_ROOT.'/core/class/html.formcompany.class.php'; require_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php'; require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php'; +require_once DOL_DOCUMENT_ROOT.'/accountancy/class/accountingaccount.class.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/accounting.lib.php'; -require_once DOL_DOCUMENT_ROOT.'/core/class/html.formother.class.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/company.lib.php'; @@ -42,6 +44,7 @@ $optioncss = GETPOST('optioncss', 'aZ'); // Option for the css output (always '' $account_parent = GETPOST('account_parent'); $changeaccount = GETPOST('changeaccount'); // Search Getpost +$search_societe = GETPOST('search_societe', 'alpha'); $search_lineid = GETPOST('search_lineid', 'int'); $search_ref = GETPOST('search_ref', 'alpha'); $search_invoice = GETPOST('search_invoice', 'alpha'); @@ -89,6 +92,7 @@ $formaccounting = new FormAccounting($db); // Purge search criteria if (GETPOST('button_removefilter_x', 'alpha') || GETPOST('button_removefilter.x', 'alpha') || GETPOST('button_removefilter', 'alpha')) // All tests are required to be compatible with all browsers { + $search_societe=''; $search_lineid = ''; $search_ref = ''; $search_invoice = ''; @@ -175,7 +179,7 @@ $sql .= " s.rowid as socid, s.nom as name, s.code_compta, s.code_client,"; $sql .= " p.rowid as product_id, p.fk_product_type as product_type, p.ref as product_ref, p.label as product_label, p.accountancy_code_sell, aa.rowid as fk_compte, aa.account_number, aa.label as label_compte,"; $sql .= " fd.situation_percent,"; $sql .= " co.code as country_code, co.label as country,"; -$sql .= " s.tva_intra"; +$sql .= " s.rowid as socid, s.nom as name, s.tva_intra, s.email, s.town, s.zip, s.fk_pays, s.client, s.fournisseur, s.code_client, s.code_fournisseur, s.code_compta as code_compta_client, s.code_compta_fournisseur"; $parameters = array(); $reshook = $hookmanager->executeHooks('printFieldListSelect', $parameters); // Note that $action and $object may have been modified by hook $sql .= $hookmanager->resPrint; @@ -193,6 +197,10 @@ if (!empty($conf->global->FACTURE_DEPOSITS_ARE_JUST_PAYMENTS)) { } else { $sql .= " AND f.type IN (".Facture::TYPE_STANDARD.",".Facture::TYPE_STANDARD.",".Facture::TYPE_CREDIT_NOTE.",".Facture::TYPE_DEPOSIT.",".Facture::TYPE_SITUATION.")"; } +// Add search filter like +if ($search_societe) { + $sql .= natural_search('s.nom', $search_societe); +} if ($search_lineid) { $sql .= natural_search("fd.rowid", $search_lineid, 1); } @@ -262,6 +270,7 @@ if ($result) { $param = ''; if (!empty($contextpage) && $contextpage != $_SERVER["PHP_SELF"]) $param .= '&contextpage='.urlencode($contextpage); if ($limit > 0 && $limit != $conf->liste_limit) $param .= '&limit='.urlencode($limit); + if ($search_societe) $param .= "&search_societe=".urlencode($search_societe); if ($search_invoice) $param .= "&search_invoice=".urlencode($search_invoice); if ($search_ref) $param .= "&search_ref=".urlencode($search_ref); if ($search_label) $param .= "&search_label=".urlencode($search_label); @@ -296,7 +305,7 @@ if ($result) { print ''."\n"; print ''; - print ''; + print ''; print ''; print ''; print ''; print ''; + print ''; print ''; print ''; @@ -330,27 +340,44 @@ if ($result) { print_liste_field_titre("Description", $_SERVER["PHP_SELF"], "fd.description", "", $param, '', $sortfield, $sortorder); print_liste_field_titre("Amount", $_SERVER["PHP_SELF"], "fd.total_ht", "", $param, '', $sortfield, $sortorder, 'right '); print_liste_field_titre("VATRate", $_SERVER["PHP_SELF"], "fd.tva_tx", "", $param, '', $sortfield, $sortorder, 'right '); + print_liste_field_titre("ThirdParty", $_SERVER["PHP_SELF"], "s.nom", "", $param, '', $sortfield, $sortorder); print_liste_field_titre("Country", $_SERVER["PHP_SELF"], "co.label", "", $param, '', $sortfield, $sortorder); print_liste_field_titre("VATIntra", $_SERVER["PHP_SELF"], "s.tva_intra", "", $param, '', $sortfield, $sortorder); - print_liste_field_titre("Account", $_SERVER["PHP_SELF"], "aa.account_number", "", $param, '', $sortfield, $sortorder); + print_liste_field_titre("AccountAccounting", $_SERVER["PHP_SELF"], "aa.account_number", "", $param, '', $sortfield, $sortorder); $clickpicto = $form->showCheckAddButtons(); print_liste_field_titre($clickpicto, '', '', '', '', '', '', '', 'center '); print "\n"; - $facture_static = new Facture($db); - $product_static = new Product($db); + $thirdpartystatic=new Societe($db); + $facturestatic = new Facture($db); + $productstatic = new Product($db); + $accountingaccountstatic = new AccountingAccount($db); - while ($objp = $db->fetch_object($result)) { - $codecompta = length_accountg($objp->account_number).' - '.$objp->label_compte.''; + while ($objp = $db->fetch_object($result)) + { + $accountingaccountstatic->account_number = $objp->account_number; + $accountingaccountstatic->label = $objp->label_account; + $accountingaccountstatic->labelshort = $objp->labelshort_account; - $facture_static->ref = $objp->ref; - $facture_static->id = $objp->facid; - $facture_static->type = $objp->ftype; + $facturestatic->ref = $objp->ref; + $facturestatic->id = $objp->facid; + $facturestatic->type = $objp->ftype; - $product_static->ref = $objp->product_ref; - $product_static->id = $objp->product_id; - $product_static->label = $objp->product_label; - $product_static->type = $objp->line_type; + $thirdpartystatic->id = $objp->socid; + $thirdpartystatic->name = $objp->name; + $thirdpartystatic->client = $objp->client; + $thirdpartystatic->fournisseur = $objp->fournisseur; + $thirdpartystatic->code_client = $objp->code_client; + $thirdpartystatic->code_compta_client = $objp->code_compta_client; + $thirdpartystatic->code_fournisseur = $objp->code_fournisseur; + $thirdpartystatic->code_compta_fournisseur = $objp->code_compta_fournisseur; + $thirdpartystatic->email = $objp->email; + $thirdpartystatic->country_code = $objp->country_code; + + $productstatic->ref = $objp->product_ref; + $productstatic->id = $objp->product_id; + $productstatic->label = $objp->product_label; + $productstatic->type = $objp->line_type; print ''; @@ -358,16 +385,16 @@ if ($result) { print ''; // Ref Invoice - print ''; + print ''; // Date invoice print ''; // Ref Product print ''; print ''; + // Thirdparty + print ''; + // Country print ''; - print ''; diff --git a/htdocs/accountancy/customer/list.php b/htdocs/accountancy/customer/list.php index 9dbb846370c..bf28da1d5d2 100644 --- a/htdocs/accountancy/customer/list.php +++ b/htdocs/accountancy/customer/list.php @@ -1,6 +1,6 @@ - * Copyright (C) 2013-2019 Alexandre Spangaro + * Copyright (C) 2013-2020 Alexandre Spangaro * Copyright (C) 2014-2015 Ari Elbaz (elarifr) * Copyright (C) 2013-2014 Florian Henry * Copyright (C) 2014 Juanjo Menent @@ -27,12 +27,13 @@ */ require '../../main.inc.php'; +require_once DOL_DOCUMENT_ROOT.'/core/class/html.formaccounting.class.php'; +require_once DOL_DOCUMENT_ROOT.'/core/class/html.formother.class.php'; +require_once DOL_DOCUMENT_ROOT.'/core/class/html.formcompany.class.php'; require_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php'; require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php'; -require_once DOL_DOCUMENT_ROOT.'/core/class/html.formaccounting.class.php'; require_once DOL_DOCUMENT_ROOT.'/accountancy/class/accountingaccount.class.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/accounting.lib.php'; -require_once DOL_DOCUMENT_ROOT.'/core/class/html.formother.class.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/company.lib.php'; @@ -49,6 +50,7 @@ $toselect = GETPOST('toselect', 'array'); $mesCasesCochees = GETPOST('toselect', 'array'); // Search Getpost +$search_societe = GETPOST('search_societe', 'alpha'); $search_lineid = GETPOST('search_lineid', 'int'); $search_ref = GETPOST('search_ref', 'alpha'); $search_invoice = GETPOST('search_invoice', 'alpha'); @@ -112,6 +114,7 @@ if (empty($reshook)) // Purge search criteria if (GETPOST('button_removefilter_x', 'alpha') || GETPOST('button_removefilter.x', 'alpha') || GETPOST('button_removefilter', 'alpha')) // All test are required to be compatible with all browsers { + $search_societe=''; $search_lineid = ''; $search_ref = ''; $search_invoice = ''; @@ -156,9 +159,7 @@ if ($massaction == 'ventil') { { $msg .= '
'.$langs->trans("Lineofinvoice").' '.$monId.' - '.$langs->trans("NoAccountSelected").'
'; $ko++; - } - else - { + } else { $sql = " UPDATE ".MAIN_DB_PREFIX."facturedet"; $sql .= " SET fk_code_ventilation = ".$monCompte; $sql .= " WHERE rowid = ".$monId; @@ -212,7 +213,7 @@ $sql .= " p.accountancy_code_buy as code_buy, p.accountancy_code_buy_intra as co $sql .= " p.tosell as status, p.tobuy as status_buy,"; $sql .= " aa.rowid as aarowid, aa2.rowid as aarowid_intra, aa3.rowid as aarowid_export,"; $sql .= " co.code as country_code, co.label as country_label,"; -$sql .= " s.tva_intra"; +$sql .= " s.rowid as socid, s.nom as name, s.tva_intra, s.email, s.town, s.zip, s.fk_pays, s.client, s.fournisseur, s.code_client, s.code_fournisseur, s.code_compta as code_compta_client, s.code_compta_fournisseur"; $parameters = array(); $reshook = $hookmanager->executeHooks('printFieldListSelect', $parameters); // Note that $action and $object may have been modified by hook $sql .= $hookmanager->resPrint; @@ -227,6 +228,9 @@ $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."accounting_account as aa3 ON p.accountancy $sql .= " WHERE f.fk_statut > 0 AND l.fk_code_ventilation <= 0"; $sql .= " AND l.product_type <= 2"; // Add search filter like +if ($search_societe) { + $sql .= natural_search('s.nom', $search_societe); +} if ($search_lineid) { $sql .= natural_search("l.rowid", $search_lineid, 1); } @@ -314,6 +318,7 @@ if ($result) { $param = ''; if (!empty($contextpage) && $contextpage != $_SERVER["PHP_SELF"]) $param .= '&contextpage='.urlencode($contextpage); if ($limit > 0 && $limit != $conf->liste_limit) $param .= '&limit='.urlencode($limit); + if ($search_societe) $param .= '&search_societe='.urlencode($search_societe); if ($search_lineid) $param .= '&search_lineid='.urlencode($search_lineid); if ($search_day) $param .= '&search_day='.urlencode($search_day); if ($search_month) $param .= '&search_month='.urlencode($search_month); @@ -363,7 +368,7 @@ if ($result) { // We add search filter print '
'; - print ''; + print ''; print ''; print ''; print ''; print ''; + print ''; print '\n"; + $thirdpartystatic = new Societe($db); $facture_static = new Facture($db); $product_static = new Product($db); @@ -421,6 +429,17 @@ if ($result) { $objp->code_sell_l = ''; $objp->code_sell_p = ''; + $thirdpartystatic->id = $objp->socid; + $thirdpartystatic->name = $objp->name; + $thirdpartystatic->client = $objp->client; + $thirdpartystatic->fournisseur = $objp->fournisseur; + $thirdpartystatic->code_client = $objp->code_client; + $thirdpartystatic->code_compta_client = $objp->code_compta_client; + $thirdpartystatic->code_fournisseur = $objp->code_fournisseur; + $thirdpartystatic->code_compta_fournisseur = $objp->code_compta_fournisseur; + $thirdpartystatic->email = $objp->email; + $thirdpartystatic->country_code = $objp->country_code; + $product_static->ref = $objp->product_ref; $product_static->id = $objp->product_id; $product_static->type = $objp->type; @@ -558,6 +577,9 @@ if ($result) { print vatrate($objp->tva_tx_line.($objp->vat_src_code ? ' ('.$objp->vat_src_code.')' : '')); print ''; + // Thirdparty + print ''; + // Country print ''; // Found accounts - print ''; @@ -605,8 +627,7 @@ if ($result) { $suggestedid = $tmpaccount->id; } $accountingaccount_codetotid_cache[$objp->code_sell_l] = $tmpaccount->id; - } - else { + } else { $suggestedid = $accountingaccount_codetotid_cache[$objp->code_sell_l]; } } diff --git a/htdocs/accountancy/expensereport/card.php b/htdocs/accountancy/expensereport/card.php index 36d587e0c99..8b04ca74c81 100644 --- a/htdocs/accountancy/expensereport/card.php +++ b/htdocs/accountancy/expensereport/card.php @@ -63,9 +63,7 @@ if ($action == 'ventil' && $user->rights->accounting->bind->write) $resql = $db->query($sql); if (!$resql) { setEventMessages($db->lasterror(), null, 'errors'); - } - else - { + } else { setEventMessages($langs->trans("RecordModifiedSuccessfully"), null, 'mesgs'); if ($backtopage) { diff --git a/htdocs/accountancy/expensereport/index.php b/htdocs/accountancy/expensereport/index.php index 387cfd0fb8e..9fe07b18a37 100644 --- a/htdocs/accountancy/expensereport/index.php +++ b/htdocs/accountancy/expensereport/index.php @@ -43,8 +43,7 @@ if (!$user->rights->accounting->bind->write) $month_start = ($conf->global->SOCIETE_FISCAL_MONTH_START ? ($conf->global->SOCIETE_FISCAL_MONTH_START) : 1); if (GETPOST("year", 'int')) $year_start = GETPOST("year", 'int'); -else -{ +else { $year_start = dol_print_date(dol_now(), '%Y'); if (dol_print_date(dol_now(), '%m') < $month_start) $year_start--; // If current month is lower that starting fiscal month, we start last year } @@ -190,15 +189,13 @@ if ($resql) { if ($row[0] == 'tobind') { print $langs->trans("Unknown"); - } - else print length_accountg($row[0]); + } else print length_accountg($row[0]); print ''; print ''; for ($i = 2; $i <= 12; $i++) { print ''; @@ -261,16 +258,14 @@ if ($resql) { if ($row[0] == 'tobind') { print $langs->trans("Unknown"); - } - else print length_accountg($row[0]); + } else print length_accountg($row[0]); print ''; print ''; for ($i = 2; $i <= 12; $i++) { print ''; diff --git a/htdocs/accountancy/expensereport/lines.php b/htdocs/accountancy/expensereport/lines.php index 8cc398a00bf..7ffbb9518f8 100644 --- a/htdocs/accountancy/expensereport/lines.php +++ b/htdocs/accountancy/expensereport/lines.php @@ -28,19 +28,22 @@ require '../../main.inc.php'; require_once DOL_DOCUMENT_ROOT.'/core/class/html.formaccounting.class.php'; require_once DOL_DOCUMENT_ROOT.'/expensereport/class/expensereport.class.php'; +require_once DOL_DOCUMENT_ROOT.'/accountancy/class/accountingaccount.class.php'; +require_once DOL_DOCUMENT_ROOT.'/user/class/user.class.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/accounting.lib.php'; require_once DOL_DOCUMENT_ROOT.'/core/class/html.formother.class.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php'; // Load translation files required by the page -$langs->loadLangs(array("compta", "bills", "other", "accountancy", "trips", "productbatch")); +$langs->loadLangs(array("compta", "bills", "other", "accountancy", "trips", "productbatch", "hrm")); $optioncss = GETPOST('optioncss', 'aZ'); // Option for the css output (always '' except when 'print') $account_parent = GETPOST('account_parent', 'int'); $changeaccount = GETPOST('changeaccount'); // Search Getpost +$search_login = GETPOST('search_login', 'alpha'); $search_expensereport = GETPOST('search_expensereport', 'alpha'); $search_label = GETPOST('search_label', 'alpha'); $search_desc = GETPOST('search_desc', 'alpha'); @@ -84,7 +87,8 @@ $formaccounting = new FormAccounting($db); // Purge search criteria if (GETPOST('button_removefilter_x', 'alpha') || GETPOST('button_removefilter.x', 'alpha') || GETPOST('button_removefilter', 'alpha')) // Both test are required to be compatible with all browsers { - $search_expensereport = ''; + $search_login = ''; + $search_expensereport = ''; $search_label = ''; $search_desc = ''; $search_amount = ''; @@ -162,14 +166,21 @@ print ''."\n"; } - if (is_object($objsoc) && $objsoc->id > 0) - { + if (is_object($objsoc) && $objsoc->id > 0) { $this->tpl['company'] = $objsoc->getNomUrl(1); $this->tpl['company_id'] = $objsoc->id; - } - else - { + } else { $this->tpl['company'] = $form->select_company($this->object->socid, 'socid', '', 1); } @@ -128,8 +122,7 @@ abstract class ActionsAdherentCardCommon $this->tpl['select_civility'] = $formcompany->select_civility($this->object->civility_id); // Predefined with third party - if ((isset($objsoc->typent_code) && $objsoc->typent_code == 'TE_PRIVATE')) - { + if ((isset($objsoc->typent_code) && $objsoc->typent_code == 'TE_PRIVATE')) { if (dol_strlen(trim($this->object->address)) == 0) $this->tpl['address'] = $objsoc->address; if (dol_strlen(trim($this->object->zip)) == 0) $this->object->zip = $objsoc->zip; if (dol_strlen(trim($this->object->town)) == 0) $this->object->town = $objsoc->town; @@ -161,38 +154,30 @@ abstract class ActionsAdherentCardCommon $this->tpl['select_morphy'] = $form->selectarray('morphy', $selectarray, $this->object->morphy, 0); } - if ($action == 'view' || $action == 'edit' || $action == 'delete') - { + if ($action == 'view' || $action == 'edit' || $action == 'delete') { // Emailing - if (!empty($conf->mailing->enabled)) - { + if (!empty($conf->mailing->enabled)) { $langs->load("mails"); $this->tpl['nb_emailing'] = $this->object->getNbOfEMailings(); } // Dolibarr user - if ($this->object->user_id) - { + if ($this->object->user_id) { $dolibarr_user = new User($this->db); $result = $dolibarr_user->fetch($this->object->user_id); $this->tpl['dolibarr_user'] = $dolibarr_user->getLoginUrl(1); - } - else $this->tpl['dolibarr_user'] = $langs->trans("NoDolibarrAccess"); + } else $this->tpl['dolibarr_user'] = $langs->trans("NoDolibarrAccess"); } - if ($action == 'view' || $action == 'delete') - { + if ($action == 'view' || $action == 'delete') { $this->tpl['showrefnav'] = $form->showrefnav($this->object, 'id'); - if ($this->object->socid > 0) - { + if ($this->object->socid > 0) { $objsoc = new Societe($this->db); $objsoc->fetch($this->object->socid); $this->tpl['company'] = $objsoc->getNomUrl(1); - } - else - { + } else { $this->tpl['company'] = $langs->trans("AdherentNotLinkedToThirdParty"); } @@ -214,8 +199,7 @@ abstract class ActionsAdherentCardCommon $this->tpl['note'] = nl2br($this->object->note); } - if ($action == 'create_user') - { + if ($action == 'create_user') { // Full firstname and lastname separated with a dot : firstname.lastname include_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/security2.lib.php'; @@ -263,19 +247,15 @@ abstract class ActionsAdherentCardCommon $this->object->canvas = $_POST["canvas"]; // We set country_id, and country_code label of the chosen country - if ($this->object->country_id) - { + if ($this->object->country_id) { $sql = "SELECT code, label FROM ".MAIN_DB_PREFIX."c_country WHERE rowid = ".$this->object->country_id; $resql = $this->db->query($sql); - if ($resql) - { + if ($resql) { $obj = $this->db->fetch_object($resql); $this->object->country_code = $obj->code; $this->object->country = $langs->trans("Country".$obj->code) ? $langs->trans("Country".$obj->code) : $obj->libelle; - } - else - { + } else { dol_print_error($this->db); } } diff --git a/htdocs/adherents/canvas/default/actions_adherentcard_default.class.php b/htdocs/adherents/canvas/default/actions_adherentcard_default.class.php index 60bb2ecd034..db2473c55d9 100644 --- a/htdocs/adherents/canvas/default/actions_adherentcard_default.class.php +++ b/htdocs/adherents/canvas/default/actions_adherentcard_default.class.php @@ -90,8 +90,7 @@ class ActionsAdherentCardDefault extends ActionsAdherentCardCommon $this->tpl['error'] = $this->error; $this->tpl['errors'] = $this->errors; - if ($action == 'view') - { + if ($action == 'view') { // Card header $head = member_prepare_head($this->object); $title = $this->getTitle($action); @@ -105,18 +104,14 @@ class ActionsAdherentCardDefault extends ActionsAdherentCardCommon $this->tpl['actionstodo'] = show_actions_todo($conf, $langs, $db, $objsoc, $this->object, 1); $this->tpl['actionsdone'] = show_actions_done($conf, $langs, $db, $objsoc, $this->object, 1); - } - else - { + } else { // Confirm delete contact - if ($action == 'delete' && $user->rights->adherent->supprimer) - { + if ($action == 'delete' && $user->rights->adherent->supprimer) { $this->tpl['action_delete'] = $form->formconfirm($_SERVER["PHP_SELF"]."?id=".$this->object->id, $langs->trans("DeleteAdherent"), $langs->trans("ConfirmDeleteAdherent"), "confirm_delete", '', 0, 1); } } - if ($action == 'list') - { + if ($action == 'list') { $this->LoadListDatas($limit, $offset, $sortfield, $sortorder); } } diff --git a/htdocs/adherents/canvas/default/tpl/adherentcard_create.tpl.php b/htdocs/adherents/canvas/default/tpl/adherentcard_create.tpl.php index 92f1e11d7a2..b6c0b542d27 100644 --- a/htdocs/adherents/canvas/default/tpl/adherentcard_create.tpl.php +++ b/htdocs/adherents/canvas/default/tpl/adherentcard_create.tpl.php @@ -17,8 +17,7 @@ */ // Protection to avoid direct call of template -if (empty($conf) || !is_object($conf)) -{ +if (empty($conf) || !is_object($conf)) { print "Error, template page can't be called as URL"; exit; } diff --git a/htdocs/adherents/canvas/default/tpl/adherentcard_edit.tpl.php b/htdocs/adherents/canvas/default/tpl/adherentcard_edit.tpl.php index 36e2deab14c..92a4fbddd38 100644 --- a/htdocs/adherents/canvas/default/tpl/adherentcard_edit.tpl.php +++ b/htdocs/adherents/canvas/default/tpl/adherentcard_edit.tpl.php @@ -17,8 +17,7 @@ */ // Protection to avoid direct call of template -if (empty($conf) || !is_object($conf)) -{ +if (empty($conf) || !is_object($conf)) { print "Error, template page can't be called as URL"; exit; } diff --git a/htdocs/adherents/canvas/default/tpl/adherentcard_view.tpl.php b/htdocs/adherents/canvas/default/tpl/adherentcard_view.tpl.php index b738f549247..8789b2fcb34 100644 --- a/htdocs/adherents/canvas/default/tpl/adherentcard_view.tpl.php +++ b/htdocs/adherents/canvas/default/tpl/adherentcard_view.tpl.php @@ -17,8 +17,7 @@ */ // Protection to avoid direct call of template -if (empty($conf) || !is_object($conf)) -{ +if (empty($conf) || !is_object($conf)) { print "Error, template page can't be called as URL"; exit; } diff --git a/htdocs/adherents/card.php b/htdocs/adherents/card.php index c913d6a1b49..727a99e060c 100644 --- a/htdocs/adherents/card.php +++ b/htdocs/adherents/card.php @@ -55,8 +55,7 @@ $typeid = GETPOST('typeid', 'int'); $userid = GETPOST('userid', 'int'); $socid = GETPOST('socid', 'int'); -if (!empty($conf->mailmanspip->enabled)) -{ +if (!empty($conf->mailmanspip->enabled)) { include_once DOL_DOCUMENT_ROOT.'/mailmanspip/class/mailmanspip.class.php'; $langs->load('mailmanspip'); @@ -76,8 +75,7 @@ $socialnetworks = getArrayOfSocialNetworks(); $object->getCanvas($id); $canvas = $object->canvas ? $object->canvas : GETPOST("canvas"); $objcanvas = null; -if (!empty($canvas)) -{ +if (!empty($canvas)) { require_once DOL_DOCUMENT_ROOT.'/core/class/canvas.class.php'; $objcanvas = new Canvas($db, $action); $objcanvas->getCanvas('adherent', 'membercard', $canvas); @@ -86,16 +84,14 @@ if (!empty($canvas)) // Security check $result = restrictedArea($user, 'adherent', $id, '', '', 'socid', 'rowid', $objcanvas); -if ($id > 0) -{ +if ($id > 0) { // Load member $result = $object->fetch($id); // Define variables to know what current user can do on users $canadduser = ($user->admin || $user->rights->user->user->creer); // Define variables to know what current user can do on properties of user linked to edited member - if ($object->user_id) - { + if ($object->user_id) { // $User is the user who edits, $object->user_id is the id of the related user in the edited member $caneditfielduser = ((($user->id == $object->user_id) && $user->rights->user->self->creer) || (($user->id != $object->user_id) && $user->rights->user->user->creer)); @@ -107,8 +103,7 @@ if ($id > 0) // Define variables to determine what the current user can do on the members $canaddmember = $user->rights->adherent->creer; // Define variables to determine what the current user can do on the properties of a member -if ($id) -{ +if ($id) { $caneditfieldmember = $user->rights->adherent->creer; } @@ -125,34 +120,26 @@ $parameters = array('id'=>$id, 'rowid'=>$id, 'objcanvas'=>$objcanvas, 'confirm'= $reshook = $hookmanager->executeHooks('doActions', $parameters, $object, $action); // Note that $action and $object may have been modified by some hooks if ($reshook < 0) setEventMessages($hookmanager->error, $hookmanager->errors, 'errors'); -if (empty($reshook)) -{ - if ($cancel) - { - if (!empty($backtopage)) - { +if (empty($reshook)) { + if ($cancel) { + if (!empty($backtopage)) { header("Location: ".$backtopage); exit; } $action = ''; } - if ($action == 'setuserid' && ($user->rights->user->self->creer || $user->rights->user->user->creer)) - { + if ($action == 'setuserid' && ($user->rights->user->self->creer || $user->rights->user->user->creer)) { $error = 0; - if (empty($user->rights->user->user->creer)) // If can edit only itself user, we can link to itself only - { - if ($userid != $user->id && $userid != $object->user_id) - { + if (empty($user->rights->user->user->creer)) { // If can edit only itself user, we can link to itself only + if ($userid != $user->id && $userid != $object->user_id) { $error++; setEventMessages($langs->trans("ErrorUserPermissionAllowsToLinksToItselfOnly"), null, 'errors'); } } - if (!$error) - { - if ($userid != $object->user_id) // If link differs from currently in database - { + if (!$error) { + if ($userid != $object->user_id) { // If link differs from currently in database $result = $object->setUserId($userid); if ($result < 0) dol_print_error($object->db, $object->error); $action = ''; @@ -160,22 +147,17 @@ if (empty($reshook)) } } - if ($action == 'setsocid') - { + if ($action == 'setsocid') { $error = 0; - if (!$error) - { - if ($socid != $object->socid) // If link differs from currently in database - { + if (!$error) { + if ($socid != $object->socid) { // If link differs from currently in database $sql = "SELECT rowid FROM ".MAIN_DB_PREFIX."adherent"; $sql .= " WHERE socid = '".$socid."'"; $sql .= " AND entity = ".$conf->entity; $resql = $db->query($sql); - if ($resql) - { + if ($resql) { $obj = $db->fetch_object($resql); - if ($obj && $obj->rowid > 0) - { + if ($obj && $obj->rowid > 0) { $othermember = new Adherent($db); $othermember->fetch($obj->rowid); $thirdparty = new Societe($db); @@ -185,8 +167,7 @@ if (empty($reshook)) } } - if (!$error) - { + if (!$error) { $result = $object->setThirdPartyId($socid); if ($result < 0) dol_print_error($object->db, $object->error); $action = ''; @@ -196,57 +177,45 @@ if (empty($reshook)) } // Create user from a member - if ($action == 'confirm_create_user' && $confirm == 'yes' && $user->rights->user->user->creer) - { - if ($result > 0) - { + if ($action == 'confirm_create_user' && $confirm == 'yes' && $user->rights->user->user->creer) { + if ($result > 0) { // Creation user $nuser = new User($db); $result = $nuser->create_from_member($object, GETPOST('login', 'alphanohtml')); - if ($result < 0) - { + if ($result < 0) { $langs->load("errors"); setEventMessages($langs->trans($nuser->error), null, 'errors'); } - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } // Create third party from a member - if ($action == 'confirm_create_thirdparty' && $confirm == 'yes' && $user->rights->societe->creer) - { - if ($result > 0) - { + if ($action == 'confirm_create_thirdparty' && $confirm == 'yes' && $user->rights->societe->creer) { + if ($result > 0) { // User creation $company = new Societe($db); $result = $company->create_from_member($object, GETPOST('companyname', 'alpha'), GETPOST('companyalias', 'alpha')); - if ($result < 0) - { + if ($result < 0) { $langs->load("errors"); setEventMessages($langs->trans($company->error), null, 'errors'); setEventMessages($company->error, $company->errors, 'errors'); } - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } - if ($action == 'update' && !$cancel && $user->rights->adherent->creer) - { + if ($action == 'update' && !$cancel && $user->rights->adherent->creer) { require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; $birthdate = ''; if (isset($_POST["birthday"]) && $_POST["birthday"] && isset($_POST["birthmonth"]) && $_POST["birthmonth"] - && isset($_POST["birthyear"]) && $_POST["birthyear"]) - { + && isset($_POST["birthyear"]) && $_POST["birthyear"]) { $birthdate = dol_mktime(12, 0, 0, $_POST["birthmonth"], $_POST["birthday"], $_POST["birthyear"]); } $lastname = $_POST["lastname"]; @@ -271,16 +240,14 @@ if (empty($reshook)) setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("Company")), null, 'errors'); } // Check if the login already exists - if (empty($conf->global->ADHERENT_LOGIN_NOT_REQUIRED)) - { + if (empty($conf->global->ADHERENT_LOGIN_NOT_REQUIRED)) { if (empty($login)) { $error++; setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("Login")), null, 'errors'); } } // Create new object - if ($result > 0 && !$error) - { + if ($result > 0 && !$error) { $object->oldcopy = clone $object; // Change values @@ -333,32 +300,27 @@ if (empty($reshook)) // Check if we need to also synchronize user information $nosyncuser = 0; - if ($object->user_id) // If linked to a user - { + if ($object->user_id) { // If linked to a user if ($user->id != $object->user_id && empty($user->rights->user->user->creer)) $nosyncuser = 1; // Disable synchronizing } // Check if we need to also synchronize password information $nosyncuserpass = 0; - if ($object->user_id) // If linked to a user - { + if ($object->user_id) { // If linked to a user if ($user->id != $object->user_id && empty($user->rights->user->user->password)) $nosyncuserpass = 1; // Disable synchronizing } $result = $object->update($user, 0, $nosyncuser, $nosyncuserpass); - if ($result >= 0 && !count($object->errors)) - { + if ($result >= 0 && !count($object->errors)) { $categories = GETPOST('memcats', 'array'); $object->setCategories($categories); // Logo/Photo save $dir = $conf->adherent->dir_output.'/'.get_exdir(0, 0, 0, 1, $object, 'member').'/photos'; $file_OK = is_uploaded_file($_FILES['photo']['tmp_name']); - if ($file_OK) - { - if (GETPOST('deletephoto')) - { + if ($file_OK) { + if (GETPOST('deletephoto')) { require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; $fileimg = $conf->adherent->dir_output.'/'.get_exdir(0, 0, 0, 1, $object, 'member').'/photos/'.$object->photo; $dirthumbs = $conf->adherent->dir_output.'/'.get_exdir(0, 0, 0, 1, $object, 'member').'/photos/thumbs'; @@ -366,33 +328,23 @@ if (empty($reshook)) dol_delete_dir_recursive($dirthumbs); } - if (image_format_supported($_FILES['photo']['name']) > 0) - { + if (image_format_supported($_FILES['photo']['name']) > 0) { dol_mkdir($dir); - if (@is_dir($dir)) - { + if (@is_dir($dir)) { $newfile = $dir.'/'.dol_sanitizeFileName($_FILES['photo']['name']); - if (!dol_move_uploaded_file($_FILES['photo']['tmp_name'], $newfile, 1, 0, $_FILES['photo']['error']) > 0) - { + if (!dol_move_uploaded_file($_FILES['photo']['tmp_name'], $newfile, 1, 0, $_FILES['photo']['error']) > 0) { setEventMessages($langs->trans("ErrorFailedToSaveFile"), null, 'errors'); - } - else - { + } else { // Create thumbs $object->addThumbs($newfile); } } - } - else - { + } else { setEventMessages("ErrorBadImageFormat", null, 'errors'); } - } - else - { - switch ($_FILES['photo']['error']) - { + } else { + switch ($_FILES['photo']['error']) { case 1: //uploaded file exceeds the upload_max_filesize directive in php.ini case 2: //uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the html form $errors[] = "ErrorFileSizeTooLarge"; @@ -407,37 +359,29 @@ if (empty($reshook)) $id = $object->id; $action = ''; - if (!empty($backtopage)) - { + if (!empty($backtopage)) { header("Location: ".$backtopage); exit; } - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); $action = ''; } - } - else - { + } else { $action = 'edit'; } } - if ($action == 'add' && $user->rights->adherent->creer) - { + if ($action == 'add' && $user->rights->adherent->creer) { if ($canvas) $object->canvas = $canvas; $birthdate = ''; if (isset($_POST["birthday"]) && $_POST["birthday"] && isset($_POST["birthmonth"]) && $_POST["birthmonth"] - && isset($_POST["birthyear"]) && $_POST["birthyear"]) - { + && isset($_POST["birthyear"]) && $_POST["birthyear"]) { $birthdate = dol_mktime(12, 0, 0, $_POST["birthmonth"], $_POST["birthday"], $_POST["birthyear"]); } $datesubscription = ''; - if (isset($_POST["reday"]) && isset($_POST["remonth"]) && isset($_POST["reyear"])) - { + if (isset($_POST["reday"]) && isset($_POST["remonth"]) && isset($_POST["reyear"])) { $datesubscription = dol_mktime(12, 0, 0, $_POST["remonth"], $_POST["reday"], $_POST["reyear"]); } @@ -522,13 +466,11 @@ if (empty($reshook)) setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("MemberNature")), null, 'errors'); } // Tests if the login already exists - if (empty($conf->global->ADHERENT_LOGIN_NOT_REQUIRED)) - { + if (empty($conf->global->ADHERENT_LOGIN_NOT_REQUIRED)) { if (empty($login)) { $error++; setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("Login")), null, 'errors'); - } - else { + } else { $sql = "SELECT login FROM ".MAIN_DB_PREFIX."adherent WHERE login='".$db->escape($login)."'"; $result = $db->query($sql); if ($result) { @@ -572,14 +514,12 @@ if (empty($reshook)) $public = 0; if (isset($public)) $public = 1; - if (!$error) - { + if (!$error) { $db->begin(); // Email about right and login does not exist $result = $object->create($user); - if ($result > 0) - { + if ($result > 0) { // Foundation categories $memcats = GETPOST('memcats', 'array'); $object->setCategories($memcats); @@ -588,9 +528,7 @@ if (empty($reshook)) $rowid = $object->id; $id = $object->id; $action = ''; - } - else - { + } else { $db->rollback(); if ($object->error) { @@ -601,36 +539,27 @@ if (empty($reshook)) $action = 'create'; } - } - else { + } else { $action = 'create'; } } - if ($user->rights->adherent->supprimer && $action == 'confirm_delete' && $confirm == 'yes') - { + if ($user->rights->adherent->supprimer && $action == 'confirm_delete' && $confirm == 'yes') { $result = $object->delete($id, $user); - if ($result > 0) - { - if (!empty($backtopage)) - { + if ($result > 0) { + if (!empty($backtopage)) { header("Location: ".$backtopage); exit; - } - else - { + } else { header("Location: list.php"); exit; } - } - else - { + } else { $errmesg = $object->error; } } - if ($user->rights->adherent->creer && $action == 'confirm_valid' && $confirm == 'yes') - { + if ($user->rights->adherent->creer && $action == 'confirm_valid' && $confirm == 'yes') { $error = 0; $db->begin(); @@ -640,11 +569,9 @@ if (empty($reshook)) $result = $object->validate($user); - if ($result >= 0 && !count($object->errors)) - { + if ($result >= 0 && !count($object->errors)) { // Send confirmation email (according to parameters of member type. Otherwise generic) - if ($object->email && GETPOST("send_mail")) - { + if ($object->email && GETPOST("send_mail")) { $subject = ''; $msg = ''; @@ -662,8 +589,7 @@ if (empty($reshook)) if (!empty($labeltouse)) $arraydefaultmessage = $formmail->getEMailTemplate($db, 'member', $user, $outputlangs, 0, 1, $labeltouse); - if (!empty($labeltouse) && is_object($arraydefaultmessage) && $arraydefaultmessage->id > 0) - { + if (!empty($labeltouse) && is_object($arraydefaultmessage) && $arraydefaultmessage->id > 0) { $subject = $arraydefaultmessage->topic; $msg = $arraydefaultmessage->content; } @@ -672,8 +598,7 @@ if (empty($reshook)) //fallback on the old configuration. setEventMessages('WarningMandatorySetupNotComplete', null, 'errors'); $error++; - } - else { + } else { $substitutionarray = getCommonSubstitutionArray($outputlangs, 0, null, $object); complete_substitutions_array($substitutionarray, $outputlangs, $object); $subjecttosend = make_substitutions($subject, $substitutionarray, $outputlangs); @@ -682,16 +607,13 @@ if (empty($reshook)) $moreinheader = 'X-Dolibarr-Info: send_an_email by adherents/card.php'."\r\n"; $result = $object->send_an_email($texttosend, $subjecttosend, array(), array(), array(), "", "", 0, -1, '', $moreinheader); - if ($result < 0) - { + if ($result < 0) { $error++; setEventMessages($object->error, $object->errors, 'errors'); } } } - } - else - { + } else { $error++; if ($object->error) { setEventMessages($object->error, $object->errors, 'errors'); @@ -700,32 +622,25 @@ if (empty($reshook)) } } - if (!$error) - { + if (!$error) { $db->commit(); - } - else - { + } else { $db->rollback(); } $action = ''; } - if ($user->rights->adherent->supprimer && $action == 'confirm_resign') - { + if ($user->rights->adherent->supprimer && $action == 'confirm_resign') { $error = 0; - if ($confirm == 'yes') - { + if ($confirm == 'yes') { $adht = new AdherentType($db); $adht->fetch($object->typeid); $result = $object->resiliate($user); - if ($result >= 0 && !count($object->errors)) - { - if ($object->email && GETPOST("send_mail")) - { + if ($result >= 0 && !count($object->errors)) { + if ($object->email && GETPOST("send_mail")) { $subject = ''; $msg = ''; @@ -743,8 +658,7 @@ if (empty($reshook)) if (!empty($labeltouse)) $arraydefaultmessage = $formmail->getEMailTemplate($db, 'member', $user, $outputlangs, 0, 1, $labeltouse); - if (!empty($labeltouse) && is_object($arraydefaultmessage) && $arraydefaultmessage->id > 0) - { + if (!empty($labeltouse) && is_object($arraydefaultmessage) && $arraydefaultmessage->id > 0) { $subject = $arraydefaultmessage->topic; $msg = $arraydefaultmessage->content; } @@ -753,8 +667,7 @@ if (empty($reshook)) //fallback on the old configuration. setEventMessages('WarningMandatorySetupNotComplete', null, 'errors'); $error++; - } - else { + } else { $substitutionarray = getCommonSubstitutionArray($outputlangs, 0, null, $object); complete_substitutions_array($substitutionarray, $outputlangs, $object); $subjecttosend = make_substitutions($subject, $substitutionarray, $outputlangs); @@ -763,16 +676,13 @@ if (empty($reshook)) $moreinheader = 'X-Dolibarr-Info: send_an_email by adherents/card.php'."\r\n"; $result = $object->send_an_email($texttosend, $subjecttosend, array(), array(), array(), "", "", 0, -1, '', $moreinheader); - if ($result < 0) - { + if ($result < 0) { $error++; setEventMessages($object->error, $object->errors, 'errors'); } } } - } - else - { + } else { $error++; if ($object->error) { @@ -783,31 +693,24 @@ if (empty($reshook)) $action = ''; } } - if (!empty($backtopage) && !$error) - { + if (!empty($backtopage) && !$error) { header("Location: ".$backtopage); exit; } } // SPIP Management - if ($user->rights->adherent->supprimer && $action == 'confirm_del_spip' && $confirm == 'yes') - { - if (!count($object->errors)) - { - if (!$mailmanspip->del_to_spip($object)) - { + if ($user->rights->adherent->supprimer && $action == 'confirm_del_spip' && $confirm == 'yes') { + if (!count($object->errors)) { + if (!$mailmanspip->del_to_spip($object)) { setEventMessages($langs->trans('DeleteIntoSpipError').': '.$mailmanspip->error, null, 'errors'); } } } - if ($user->rights->adherent->creer && $action == 'confirm_add_spip' && $confirm == 'yes') - { - if (!count($object->errors)) - { - if (!$mailmanspip->add_to_spip($object)) - { + if ($user->rights->adherent->creer && $action == 'confirm_add_spip' && $confirm == 'yes') { + if (!count($object->errors)) { + if (!$mailmanspip->add_to_spip($object)) { setEventMessages($langs->trans('AddIntoSpipError').': '.$mailmanspip->error, null, 'errors'); } } @@ -844,28 +747,23 @@ llxHeader('', $title, $help_url); $countrynotdefined = $langs->trans("ErrorSetACountryFirst").' ('.$langs->trans("SeeAbove").')'; -if (is_object($objcanvas) && $objcanvas->displayCanvasExists($action)) -{ +if (is_object($objcanvas) && $objcanvas->displayCanvasExists($action)) { // ----------------------------------------- // When used with CANVAS // ----------------------------------------- - if (empty($object->error) && $id) - { + if (empty($object->error) && $id) { $object = new Adherent($db); $result = $object->fetch($id); if ($result <= 0) dol_print_error('', $object->error); } $objcanvas->assign_values($action, $object->id, $object->ref); // Set value for templates $objcanvas->display_canvas($action); // Show template -} -else -{ +} else { // ----------------------------------------- // When used in standard mode // ----------------------------------------- - if ($action == 'create') - { + if ($action == 'create') { /* ************************************************************************** */ /* */ /* Creation mode */ @@ -876,8 +774,7 @@ else // We set country_id, country_code and country for the selected country $object->country_id = GETPOST('country_id', 'int') ?GETPOST('country_id', 'int') : $mysoc->country_id; - if ($object->country_id) - { + if ($object->country_id) { $tmparray = getCountry($object->country_id, 'all'); $object->country_code = $tmparray['code']; $object->country = $tmparray['label']; @@ -887,8 +784,7 @@ else $object = new Societe($db); if ($socid > 0) $object->fetch($socid); - if (!($object->id > 0)) - { + if (!($object->id > 0)) { $langs->load("errors"); print($langs->trans('ErrorRecordNotFound')); exit; @@ -899,8 +795,7 @@ else print load_fiche_titre($langs->trans("NewMember"), '', 'members'); - if ($conf->use_javascript_ajax) - { + if ($conf->use_javascript_ajax) { print "\n".''); -} -else -{ +} else { echo (''); diff --git a/htdocs/cashdesk/index_verif.php b/htdocs/cashdesk/index_verif.php index 251b3f2e997..204af8f51f7 100644 --- a/htdocs/cashdesk/index_verif.php +++ b/htdocs/cashdesk/index_verif.php @@ -116,14 +116,10 @@ if ($retour >= 0) header('Location: '.DOL_URL_ROOT.'/cashdesk/affIndex.php?menutpl=facturation&id=NOUV'); exit; - } - else - { + } else { dol_print_error($db); } -} -else -{ +} else { // Load translation files required by the page $langs->loadLangs(array("other", "errors")); $retour = $langs->trans("ErrorBadLoginPassword"); diff --git a/htdocs/cashdesk/tpl/facturation1.tpl.php b/htdocs/cashdesk/tpl/facturation1.tpl.php index f1e19b4df20..0d81f6e947e 100644 --- a/htdocs/cashdesk/tpl/facturation1.tpl.php +++ b/htdocs/cashdesk/tpl/facturation1.tpl.php @@ -169,24 +169,21 @@ for ($i = 0; $i < $nbtoshow; $i++) { $langs->load("errors"); print 'transnoentitiesnoconv("CashDesk"))).'" />'; - } - else print ''; + } else print ''; print ''; print '
'; if (empty($_SESSION['CASHDESK_ID_BANKACCOUNT_CB']) || $_SESSION['CASHDESK_ID_BANKACCOUNT_CB'] < 0) { $langs->load("errors"); print 'transnoentitiesnoconv("CashDesk"))).'" />'; - } - else print ''; + } else print ''; print '
'; print '
'; if (empty($_SESSION['CASHDESK_ID_BANKACCOUNT_CHEQUE']) || $_SESSION['CASHDESK_ID_BANKACCOUNT_CHEQUE'] < 0) { $langs->load("errors"); print 'transnoentitiesnoconv("CashDesk")).'" />'; - } - else print ''; + } else print ''; print '
'; print '
'; print '
'; diff --git a/htdocs/cashdesk/tpl/liste_articles.tpl.php b/htdocs/cashdesk/tpl/liste_articles.tpl.php index 6fffbd3ed52..bd73954f6a0 100644 --- a/htdocs/cashdesk/tpl/liste_articles.tpl.php +++ b/htdocs/cashdesk/tpl/liste_articles.tpl.php @@ -49,8 +49,7 @@ $tab = (!empty($_SESSION['poscart']) ? $_SESSION['poscart'] : array()); $tab_size = count($tab); if ($tab_size <= 0) print '
'.$langs->trans("NoArticle").'

'; -else -{ +else { for ($i = 0; $i < $tab_size; $i++) { echo ('
'."\n"); diff --git a/htdocs/cashdesk/tpl/validation1.tpl.php b/htdocs/cashdesk/tpl/validation1.tpl.php index 3b38aba3159..6fe42b35aa4 100644 --- a/htdocs/cashdesk/tpl/validation1.tpl.php +++ b/htdocs/cashdesk/tpl/validation1.tpl.php @@ -40,9 +40,7 @@ $langs->loadLangs(array("main", "bills", "banks")); // Affichage de la tva par taux if ($obj_facturation->montantTva()) { echo ('
'); -} -else -{ +} else { echo (''); } ?> diff --git a/htdocs/cashdesk/validation_verif.php b/htdocs/cashdesk/validation_verif.php index bc67350bbf1..b2711479596 100644 --- a/htdocs/cashdesk/validation_verif.php +++ b/htdocs/cashdesk/validation_verif.php @@ -96,9 +96,7 @@ switch ($action) $encaisse = $obj_facturation->montantEncaisse(); $obj_facturation->montantRendu($encaisse - $total); - } - else - { + } else { //$txtDatePaiement=$_POST['txtDatePaiement']; $datePaiement = dol_mktime(0, 0, 0, $_POST['txtDatePaiementmonth'], $_POST['txtDatePaiementday'], $_POST['txtDatePaiementyear']); $txtDatePaiement = dol_print_date($datePaiement, 'dayrfc'); @@ -252,17 +250,13 @@ switch ($action) } } } - } - else - { + } else { setEventMessages($invoice->error, $invoice->errors, 'errors'); $error++; } $id = $invoice->id; - } - else - { + } else { $resultcreate = $invoice->create($user, 0, 0); if ($resultcreate > 0) { @@ -330,15 +324,11 @@ switch ($action) //print 'set paid';exit; } } - } - else - { + } else { setEventMessages($invoice->error, $invoice->errors, 'errors'); $error++; } - } - else - { + } else { setEventMessages($invoice->error, $invoice->errors, 'errors'); $error++; } @@ -349,9 +339,7 @@ switch ($action) { $db->commit(); $redirection = 'affIndex.php?menutpl=validation_ok&facid='.$id; // Ajout de l'id de la facture, pour l'inclure dans un lien pointant directement vers celle-ci dans Dolibarr - } - else - { + } else { $db->rollback(); $redirection = 'affIndex.php?facid='.$id.'&error=1&mesg=ErrorFailedToCreateInvoice'; // Ajout de l'id de la facture, pour l'inclure dans un lien pointant directement vers celle-ci dans Dolibarr } diff --git a/htdocs/categories/admin/categorie.php b/htdocs/categories/admin/categorie.php index 6dd313692db..eb8af1ee44a 100644 --- a/htdocs/categories/admin/categorie.php +++ b/htdocs/categories/admin/categorie.php @@ -47,9 +47,7 @@ if (preg_match('/set_([a-z0-9_\-]+)/i', $action, $reg)) { header("Location: ".$_SERVER["PHP_SELF"]); exit; - } - else - { + } else { setEventMessages($db->lasterror(), null, 'errors'); } } @@ -61,9 +59,7 @@ if (preg_match('/del_([a-z0-9_\-]+)/i', $action, $reg)) { header("Location: ".$_SERVER["PHP_SELF"]); exit; - } - else - { + } else { setEventMessages($db->lasterror(), null, 'errors'); } } @@ -107,15 +103,11 @@ print '\n"; } print "
'; if (!empty($conf->global->MAIN_LIST_FILTER_ON_DAY)) { @@ -310,8 +319,9 @@ if ($result) { print ''; - print $form->select_country($search_country, 'search_country', '', 0, 'maxwidth200', 'code2', 1, 0, 1); + print $form->select_country($search_country, 'search_country', '', 0, 'maxwidth150', 'code2', 1, 0, 1); //print ''; print '
'.$objp->rowid.''.$facture_static->getNomUrl(1).''.$facturestatic->getNomUrl(1).''.dol_print_date($db->jdate($objp->datef), 'day').''; - if ($product_static->id > 0) print $product_static->getNomUrl(1); - if ($product_static->id > 0 && $objp->product_label) print '
'; - if ($objp->product_label) print $objp->product_label; + if ($productstatic->id > 0) print $productstatic->getNomUrl(1); + if ($productstatic->id > 0 && $objp->product_label) print '
'; + if ($objp->product_label) print ''.$objp->product_label.''; print '
'; @@ -380,6 +407,9 @@ if ($result) { print ''.vatrate($objp->tva_tx.($objp->vat_src_code ? ' ('.$objp->vat_src_code.')' : '')).'' . $thirdpartystatic->getNomUrl(1, 'customer') . ''; if ($objp->country_code) @@ -390,8 +420,9 @@ if ($result) { print ''.$objp->tva_intra.''; - print $codecompta.' '; + print ''; + print $accountingaccountstatic->getNomUrl(0, 1, 1, '', 1); + print ' '; print img_edit(); print ''; print '
'; if (!empty($conf->global->MAIN_LIST_FILTER_ON_DAY)) { @@ -377,6 +382,7 @@ if ($result) { print ''; print $form->select_country($search_country, 'search_country', '', 0, 'maxwidth150', 'code2', 1, 0, 1); //print ''; @@ -399,6 +405,7 @@ if ($result) { print_liste_field_titre("ProductDescription", $_SERVER["PHP_SELF"], "l.description", "", $param, '', $sortfield, $sortorder); print_liste_field_titre("Amount", $_SERVER["PHP_SELF"], "l.total_ht", "", $param, '', $sortfield, $sortorder, 'right maxwidth50 '); print_liste_field_titre("VATRate", $_SERVER["PHP_SELF"], "l.tva_tx", "", $param, '', $sortfield, $sortorder, 'right '); + print_liste_field_titre("ThirdParty", $_SERVER["PHP_SELF"], "s.nom", "", $param, '', $sortfield, $sortorder); print_liste_field_titre("Country", $_SERVER["PHP_SELF"], "co.label", "", $param, '', $sortfield, $sortorder); print_liste_field_titre("VATIntra", $_SERVER["PHP_SELF"], "s.tva_intra", "", $param, '', $sortfield, $sortorder); print_liste_field_titre("AccountAccountingSuggest", '', '', '', '', '', '', '', 'nowraponall '); @@ -408,6 +415,7 @@ if ($result) { print_liste_field_titre($checkpicto, '', '', '', '', '', '', '', 'center '); print "
' . $thirdpartystatic->getNomUrl(1, 'customer') . ''; $labelcountry = ($objp->country_code && ($langs->trans("Country".$objp->country_code) != "Country".$objp->country_code)) ? $langs->trans("Country".$objp->country_code) : $objp->country_label; @@ -567,12 +589,12 @@ if ($result) { print ''.$objp->tva_intra.''; + print ''; $s = ''.(($objp->type_l == 1) ? $langs->trans("DefaultForService") : $langs->trans("DefaultForProduct")).': '; $shelp = ''; if ($suggestedaccountingaccountbydefaultfor == 'eec') $shelp .= $langs->trans("SaleEEC"); elseif ($suggestedaccountingaccountbydefaultfor == 'export') $shelp .= $langs->trans("SaleExport"); - $s .= ($objp->code_sell_l > 0 ? length_accountg($objp->code_sell_l) : $langs->trans("NotDefined")); + $s .= ($objp->code_sell_l > 0 ? length_accountg($objp->code_sell_l) : ''.$langs->trans("NotDefined").''); print $form->textwithpicto($s, $shelp, 1, 'help', '', 0, 2, '', 1); if ($objp->product_id > 0) { @@ -583,7 +605,7 @@ if ($result) { elseif ($suggestedaccountingaccountfor == 'eecwithvat') $shelp = $langs->trans("SaleEECWithVAT"); elseif ($suggestedaccountingaccountfor == 'eecwithoutvatnumber') $shelp = $langs->trans("SaleEECWithoutVATNumber"); elseif ($suggestedaccountingaccountfor == 'export') $shelp = $langs->trans("SaleExport"); - $s .= (empty($objp->code_sell_p) ? $langs->trans("NotDefined") : length_accountg($objp->code_sell_p)); + $s .= (empty($objp->code_sell_p) ? ''.$langs->trans("NotDefined").'' : length_accountg($objp->code_sell_p)); print $form->textwithpicto($s, $shelp, 1, 'help', '', 0, 2, '', 1); } print ''; if ($row[0] == 'tobind') { print $langs->trans("UseMenuToSetBindindManualy", DOL_URL_ROOT.'/accountancy/expensereport/list.php?search_year='.$y, $langs->transnoentitiesnoconv("ToBind")); - } - else print $row[1]; + } else print $row[1]; print ''.price($row[$i]).''; if ($row[0] == 'tobind') { print $langs->trans("UseMenuToSetBindindManualy", DOL_URL_ROOT.'/accountancy/expensereport/list.php?search_year='.$y, $langs->transnoentitiesnoconv("ToBind")); - } - else print $row[1]; + } else print $row[1]; print ''.price($row[$i]).'
'.$langs->trans("VAT").''.price(price2num($obj_facturation->montantTva(), 'MT'), 0, $langs, 0, 0, -1, $conf->currency).'
'.$langs->trans("VAT").''.$langs->trans("NoVAT").'
'; if ($conf->use_javascript_ajax) { print ajax_constantonoff('CATEGORIE_RECURSIV_ADD'); -} -else -{ +} else { if (empty($conf->global->CATEGORIE_RECURSIV_ADD)) { print ''.img_picto($langs->trans("Disabled"), 'off').''; - } - else - { + } else { print ''.img_picto($langs->trans("Enabled"), 'on').''; } } diff --git a/htdocs/categories/card.php b/htdocs/categories/card.php index 67adacb5aae..8eb6c3d8eda 100644 --- a/htdocs/categories/card.php +++ b/htdocs/categories/card.php @@ -88,39 +88,31 @@ if ($action == 'add' && $user->rights->categorie->creer) { header("Location: ".$urlfrom); exit; - } - elseif ($idProdOrigin) + } elseif ($idProdOrigin) { header("Location: ".DOL_URL_ROOT.'/categories/viewcat.php?id='.$idProdOrigin.'&type='.$type); exit; - } - elseif ($idCompanyOrigin) + } elseif ($idCompanyOrigin) { header("Location: ".DOL_URL_ROOT.'/categories/viewcat.php?id='.$idCompanyOrigin.'&type='.$type); exit; - } - elseif ($idSupplierOrigin) + } elseif ($idSupplierOrigin) { header("Location: ".DOL_URL_ROOT.'/categories/viewcat.php?id='.$idSupplierOrigin.'&type='.$type); exit; - } - elseif ($idMemberOrigin) + } elseif ($idMemberOrigin) { header("Location: ".DOL_URL_ROOT.'/categories/viewcat.php?id='.$idMemberOrigin.'&type='.$type); exit; - } - elseif ($idContactOrigin) + } elseif ($idContactOrigin) { header("Location: ".DOL_URL_ROOT.'/categories/viewcat.php?id='.$idContactOrigin.'&type='.$type); exit; - } - elseif ($idProjectOrigin) + } elseif ($idProjectOrigin) { header("Location: ".DOL_URL_ROOT.'/categories/viewcat.php?id='.$idProjectOrigin.'&type='.$type); exit; - } - else - { + } else { header("Location: ".DOL_URL_ROOT.'/categories/index.php?leftmenu=cat&type='.$type); exit; } @@ -155,9 +147,7 @@ if ($action == 'add' && $user->rights->categorie->creer) { $action = 'confirmed'; $_POST["addcat"] = ''; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -173,38 +163,31 @@ if (($action == 'add' || $action == 'confirmed') && $user->rights->categorie->cr { header("Location: ".$urlfrom); exit; - } - elseif ($backtopage) + } elseif ($backtopage) { header("Location: ".$backtopage); exit; - } - elseif ($idProdOrigin) + } elseif ($idProdOrigin) { header("Location: ".DOL_URL_ROOT.'/categories/viewcat.php?id='.$idProdOrigin.'&type='.$type.'&mesg='.urlencode($langs->trans("CatCreated"))); exit; - } - elseif ($idCompanyOrigin) + } elseif ($idCompanyOrigin) { header("Location: ".DOL_URL_ROOT.'/categories/viewcat.php?id='.$idCompanyOrigin.'&type='.$type.'&mesg='.urlencode($langs->trans("CatCreated"))); exit; - } - elseif ($idSupplierOrigin) + } elseif ($idSupplierOrigin) { header("Location: ".DOL_URL_ROOT.'/categories/viewcat.php?id='.$idSupplierOrigin.'&type='.$type.'&mesg='.urlencode($langs->trans("CatCreated"))); exit; - } - elseif ($idMemberOrigin) + } elseif ($idMemberOrigin) { header("Location: ".DOL_URL_ROOT.'/categories/viewcat.php?id='.$idMemberOrigin.'&type='.$type.'&mesg='.urlencode($langs->trans("CatCreated"))); exit; - } - elseif ($idContactOrigin) + } elseif ($idContactOrigin) { header("Location: ".DOL_URL_ROOT.'/categories/viewcat.php?id='.$idContactOrigin.'&type='.$type.'&mesg='.urlencode($langs->trans("CatCreated"))); exit; - } - elseif ($idProjectOrigin) + } elseif ($idProjectOrigin) { header("Location: ".DOL_URL_ROOT.'/categories/viewcat.php?id='.$idProjectOrigin.'&type='.$type.'&mesg='.urlencode($langs->trans("CatCreated"))); exit; diff --git a/htdocs/categories/class/api_categories.class.php b/htdocs/categories/class/api_categories.class.php index d6eff682908..1cbaf4cbe14 100644 --- a/htdocs/categories/class/api_categories.class.php +++ b/htdocs/categories/class/api_categories.class.php @@ -179,8 +179,7 @@ class Categories extends DolibarrApi } $i++; } - } - else { + } else { throw new RestException(503, 'Error when retrieve category list : '.$db->lasterror()); } if (!count($obj_ret)) { @@ -243,9 +242,7 @@ class Categories extends DolibarrApi if ($this->category->update(DolibarrApiAccess::$user) > 0) { return $this->get($id); - } - else - { + } else { throw new RestException(500, $this->category->error); } } diff --git a/htdocs/categories/class/categorie.class.php b/htdocs/categories/class/categorie.class.php index 9c0985078e7..762e0f10f78 100644 --- a/htdocs/categories/class/categorie.class.php +++ b/htdocs/categories/class/categorie.class.php @@ -64,9 +64,7 @@ class Categorie extends CommonObject /** - * @var array ID mapping from type string - * - * @note This array should be removed in future, once previous constants are moved to the string value. Deprecated + * @var array Table of mapping between type string and ID used for field 'type' in table llx_categories */ protected $MAP_ID = array( 'product' => 0, @@ -79,7 +77,8 @@ class Categorie extends CommonObject 'user' => 7, 'bank_line' => 8, 'warehouse' => 9, - 'actioncomm' => 10 + 'actioncomm' => 10, + 'website_page' => 11 ); /** @@ -316,13 +315,10 @@ class Categorie extends CommonObject if ($id > 0) { $sql .= " WHERE rowid = ".$id; - } - elseif (!empty($ref_ext)) + } elseif (!empty($ref_ext)) { $sql .= " WHERE ref_ext LIKE '".$this->db->escape($ref_ext)."'"; - } - else - { + } else { $sql .= " WHERE label = '".$this->db->escape($label)."' AND entity IN (".getEntity('category').")"; if (!is_null($type)) $sql .= " AND type = ".$this->db->escape($type); } @@ -361,14 +357,10 @@ class Categorie extends CommonObject if (!empty($conf->global->MAIN_MULTILANGS)) $this->getMultiLangs(); return 1; - } - else - { + } else { return 0; } - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -461,7 +453,7 @@ class Categorie extends CommonObject $action = 'create'; // Actions on extra fields - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + if (!$error) { $result = $this->insertExtraFields(); if ($result < 0) @@ -482,21 +474,15 @@ class Categorie extends CommonObject { $this->db->commit(); return $id; - } - else - { + } else { $this->db->rollback(); return -3; } - } - else - { + } else { $this->db->rollback(); return -2; } - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -1; @@ -553,7 +539,7 @@ class Categorie extends CommonObject $action = 'update'; // Actions on extra fields - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + if (!$error) { $result = $this->insertExtraFields(); if ($result < 0) @@ -573,9 +559,7 @@ class Categorie extends CommonObject $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); dol_print_error($this->db); return -1; @@ -646,7 +630,7 @@ class Categorie extends CommonObject } // Removed extrafields - if (!$error && empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + if (!$error) { $result = $this->deleteExtraFields(); if ($result < 0) @@ -660,9 +644,7 @@ class Categorie extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -721,9 +703,7 @@ class Categorie extends CommonObject } } } - } - else - { + } else { $error++; $this->error = $this->db->lasterror(); } @@ -747,23 +727,17 @@ class Categorie extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -2; } - } - else - { + } else { $this->db->rollback(); if ($this->db->lasterrno() == 'DB_ERROR_RECORD_ALREADY_EXISTS') { $this->error = $this->db->lasterrno(); return -3; - } - else - { + } else { $this->error = $this->db->lasterror(); } return -1; @@ -814,15 +788,11 @@ class Categorie extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -2; } - } - else - { + } else { $this->db->rollback(); $this->error = $this->db->lasterror(); return -1; @@ -873,18 +843,14 @@ class Categorie extends CommonObject if ($onlyids) { $objs[] = $rec['fk_'.(empty($this->MAP_CAT_FK[$type]) ? $type : $this->MAP_CAT_FK[$type])]; - } - else - { + } else { $obj = new $this->MAP_OBJ_CLASS[$type]($this->db); $obj->fetch($rec['fk_'.(empty($this->MAP_CAT_FK[$type]) ? $type : $this->MAP_CAT_FK[$type])]); $objs[] = $obj; } } return $objs; - } - else - { + } else { $this->error = $this->db->error().' sql='.$sql; return -1; } @@ -1009,8 +975,7 @@ class Categorie extends CommonObject } $i++; } - } - else { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -1045,9 +1010,7 @@ class Categorie extends CommonObject $cats[] = $cat; } return $cats; - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -1079,9 +1042,7 @@ class Categorie extends CommonObject $this->motherof[$obj->id_son] = $obj->id_parent; } return 1; - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -1113,23 +1074,23 @@ class Categorie extends CommonObject global $conf, $langs; if (!is_numeric($type)) $type = $this->MAP_ID[$type]; + if (is_null($type)) { + $this->error = 'BadValueForParameterType'; + return -1; + } if (is_string($markafterid)) { $markafterid = explode(',', $markafterid); - } - elseif (is_numeric($markafterid)) + } elseif (is_numeric($markafterid)) { if ($markafterid > 0) { $markafterid = array($markafterid); - } - else - { + } else { $markafterid = array(); } - } - elseif (!is_array($markafterid)) + } elseif (!is_array($markafterid)) { $markafterid = array(); } @@ -1165,9 +1126,7 @@ class Categorie extends CommonObject $this->cats[$obj->rowid]['ref_ext'] = $obj->ref_ext; $i++; } - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -1311,9 +1270,7 @@ class Categorie extends CommonObject $cats[$rec['rowid']] = $cat; } return $cats; - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -1375,9 +1332,7 @@ class Categorie extends CommonObject } dol_syslog(get_class($this)."::already_exists no category with same name=".$this->label." and same parent ".$this->fk_parent." than category id=".$this->id, LOG_DEBUG); return 0; - } - else - { + } else { $this->error = $this->db->error(); return -1; } @@ -1429,9 +1384,7 @@ class Categorie extends CommonObject $link = ''; $linkend = ''; $w[] = $link.($addpicto ? img_object('', 'category', 'class="paddingright"') : '').$cat->label.$linkend; - } - else - { + } else { $w[] = "".($addpicto ? img_object('', 'category') : '').$cat->label.""; } } @@ -1472,9 +1425,7 @@ class Categorie extends CommonObject } } return $parents; - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -1553,15 +1504,11 @@ class Categorie extends CommonObject $cats[] = $cat; } } - } - else - { + } else { dol_print_error($this->db); return -1; } - } - else - { + } else { $sql = "SELECT ct.fk_categorie, c.label, c.rowid"; $sql .= " FROM ".MAIN_DB_PREFIX."categorie_".(empty($this->MAP_CAT_TABLE[$type]) ? $type : $this->MAP_CAT_TABLE[$type])." as ct, ".MAIN_DB_PREFIX."categorie as c"; $sql .= " WHERE ct.fk_categorie = c.rowid AND ct.fk_".(empty($this->MAP_CAT_FK[$type]) ? $type : $this->MAP_CAT_FK[$type])." = ".(int) $id." AND c.type = ".$this->MAP_ID[$type]; @@ -1582,9 +1529,7 @@ class Categorie extends CommonObject $cats[] = $cat; } } - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -1632,8 +1577,7 @@ class Categorie extends CommonObject $nom = '%'.str_replace('*', '%', $nom).'%'; if (!$case) $sql .= " AND label LIKE '".$this->db->escape($nom)."'"; - else - $sql .= " AND label LIKE BINARY '".$this->db->escape($nom)."'"; + else $sql .= " AND label LIKE BINARY '".$this->db->escape($nom)."'"; } if ($id) { @@ -1651,9 +1595,7 @@ class Categorie extends CommonObject } return $cats; - } - else - { + } else { $this->error = $this->db->error().' sql='.$sql; return -1; } @@ -1878,9 +1820,7 @@ class Categorie extends CommonObject $sql2 .= " SET label='".$this->db->escape($this->label)."',"; $sql2 .= " description='".$this->db->escape($this->description)."'"; $sql2 .= " WHERE fk_category=".$this->id." AND lang='".$this->db->escape($key)."'"; - } - else - { + } else { $sql2 = "INSERT INTO ".MAIN_DB_PREFIX."categorie_lang (fk_category, lang, label, description)"; $sql2 .= " VALUES(".$this->id.",'".$key."','".$this->db->escape($this->label); $sql2 .= "','".$this->db->escape($this->multilangs["$key"]["description"])."')"; @@ -1891,8 +1831,7 @@ class Categorie extends CommonObject $this->error = $this->db->lasterror(); return -1; } - } - elseif (isset($this->multilangs["$key"])) + } elseif (isset($this->multilangs["$key"])) { if ($this->db->num_rows($result)) // si aucune ligne dans la base { @@ -1900,9 +1839,7 @@ class Categorie extends CommonObject $sql2 .= " SET label='".$this->db->escape($this->multilangs["$key"]["label"])."',"; $sql2 .= " description='".$this->db->escape($this->multilangs["$key"]["description"])."'"; $sql2 .= " WHERE fk_category=".$this->id." AND lang='".$this->db->escape($key)."'"; - } - else - { + } else { $sql2 = "INSERT INTO ".MAIN_DB_PREFIX."categorie_lang (fk_category, lang, label, description)"; $sql2 .= " VALUES(".$this->id.",'".$key."','".$this->db->escape($this->multilangs["$key"]["label"]); $sql2 .= "','".$this->db->escape($this->multilangs["$key"]["description"])."')"; @@ -1960,9 +1897,7 @@ class Categorie extends CommonObject $this->multilangs["$obj->lang"]["description"] = $obj->description; } return 1; - } - else - { + } else { $this->error = $langs->trans("Error")." : ".$this->db->error()." - ".$sql; return -1; } @@ -2054,8 +1989,7 @@ class Categorie extends CommonObject if (intval($searchCategory) == -2) { $searchCategorySqlList[] = " cp.fk_categorie IS NULL"; - } - elseif (intval($searchCategory) > 0) + } elseif (intval($searchCategory) > 0) { $searchCategorySqlList[] = " ".$rowIdName ." IN (SELECT fk_".$type." FROM ".MAIN_DB_PREFIX."categorie_".$type @@ -2066,9 +2000,7 @@ class Categorie extends CommonObject if (!empty($searchCategorySqlList)) { return " AND (".implode(' AND ', $searchCategorySqlList).")"; - } - else - { + } else { return ""; } } diff --git a/htdocs/categories/edit.php b/htdocs/categories/edit.php index 48bd82b9326..53a343046b7 100644 --- a/htdocs/categories/edit.php +++ b/htdocs/categories/edit.php @@ -90,8 +90,7 @@ if ($action == 'update' && $user->rights->categorie->creer) if ($parent != "-1") $object->fk_parent = $parent; - else - $object->fk_parent = ""; + else $object->fk_parent = ""; if (empty($object->label)) @@ -109,14 +108,10 @@ if ($action == 'update' && $user->rights->categorie->creer) { header('Location: '.DOL_URL_ROOT.'/categories/viewcat.php?id='.$object->id.'&type='.$type); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } diff --git a/htdocs/categories/index.php b/htdocs/categories/index.php index d3b8f81c94d..ccdd8be58b9 100644 --- a/htdocs/categories/index.php +++ b/htdocs/categories/index.php @@ -54,7 +54,10 @@ $typetext = $type; if ($type == Categorie::TYPE_ACCOUNT) $title = $langs->trans('AccountsCategoriesArea'); elseif ($type == Categorie::TYPE_WAREHOUSE) $title = $langs->trans('StocksCategoriesArea'); elseif ($type == Categorie::TYPE_ACTIONCOMM) $title = $langs->trans('ActionCommCategoriesArea'); -else $title = $langs->trans(ucfirst($type).'sCategoriesArea'); +elseif ($type == Categorie::TYPE_WEBSITE_PAGE) $title = $langs->trans('WebsitePagesCategoriesArea'); +else { + $title = $langs->trans(ucfirst($type).'sCategoriesArea'); +} $arrayofjs = array('/includes/jquery/plugins/jquerytreeview/jquery.treeview.js', '/includes/jquery/plugins/jquerytreeview/lib/jquery.cookie.js'); $arrayofcss = array('/includes/jquery/plugins/jquerytreeview/jquery.treeview.css'); @@ -69,8 +72,6 @@ if (!empty($user->rights->categorie->creer)) { print load_fiche_titre($title, $newcardbutton, 'object_category'); -//print ''; -//print ''; print ''; print ''; -/* -// faire une rech dans une sous categorie uniquement -print ''; -print ''; -*/ - print '
'; print '
'; @@ -88,20 +89,9 @@ print '
'.$langs->trans("Search").'
'; print $langs->trans("Name").':
'; -print $langs->trans("SubCatOf").':'; - -print $form->select_all_categories('','subcatof'); -print '
'; -//print '
'; print '
'; @@ -134,11 +124,9 @@ if ($catname || $id > 0) print "\t
"; -} -else print ' '; +} else print ' '; -//print ''; print ''; print '

'; @@ -184,9 +172,7 @@ foreach ($fulltree as $key => $val) 'rowid'=>$val['rowid'], 'fk_menu'=>$val['fk_parent'], 'entry'=>''.$counter. - //''. - ''. - '
color ? ' style="background: #'.$categstatic->color.';"' : ' style="background: #aaa"').'>'.$li.''.dolGetFirstLineOfText($desc).''.img_view().'
' + '
'.img_view().'' ); } @@ -197,7 +183,7 @@ print ''; print ''; @@ -208,9 +194,7 @@ if ($nbofentries > 0) print ''; -} -else -{ +} else { print ''; print ''; print "\n"; } - } - else - { + } else { print ''; } print "
'.$langs->trans("Categories").''; if (!empty($conf->use_javascript_ajax)) { - print ''; + print ''; } print '
'; tree_recur($data, $data[0], 0); print '
'; print ''; print ''; print ''; -} -else -{ +} else { $categstatic = new Categorie($db); $fulltree = $categstatic->get_full_arbo($type, $object->id, 1); @@ -407,9 +391,7 @@ else print ''; print ''; - } - else - { + } else { print ''; print '\n"; } - } - else - { + } else { print ''; } print "
'.img_picto_common('', 'treemenu/branchbottom.gif').''; diff --git a/htdocs/categories/photos.php b/htdocs/categories/photos.php index 07e5d56d268..ba09852d61b 100644 --- a/htdocs/categories/photos.php +++ b/htdocs/categories/photos.php @@ -179,9 +179,7 @@ if ($object->id) { print ''; print $langs->trans("AddPhoto").''; - } - else - { + } else { print ''; print $langs->trans("AddPhoto").''; } @@ -231,9 +229,7 @@ if ($object->id) if ($obj['photo_vignette']) { $filename = $obj['photo_vignette']; - } - else - { + } else { $filename = $obj['photo']; } @@ -280,9 +276,7 @@ if ($object->id) print '
'.$langs->trans("NoPhotoYet")."
"; } } -} -else -{ +} else { print $langs->trans("ErrorUnknown"); } diff --git a/htdocs/categories/traduction.php b/htdocs/categories/traduction.php index c3f87e404b7..ea36ce40edd 100644 --- a/htdocs/categories/traduction.php +++ b/htdocs/categories/traduction.php @@ -292,8 +292,7 @@ if ($action == 'edit') print ''; print ''; -} -elseif ($action != 'add') +} elseif ($action != 'add') { if ($cnt_trans) print '
'; diff --git a/htdocs/categories/viewcat.php b/htdocs/categories/viewcat.php index d259c8ca5a5..6c2a71fe21e 100644 --- a/htdocs/categories/viewcat.php +++ b/htdocs/categories/viewcat.php @@ -103,47 +103,40 @@ if ($id > 0 && $removeelem > 0) $tmpobject = new Product($db); $result = $tmpobject->fetch($removeelem); $elementtype = 'product'; - } - elseif ($type == Categorie::TYPE_SUPPLIER && $user->rights->societe->creer) + } elseif ($type == Categorie::TYPE_SUPPLIER && $user->rights->societe->creer) { $tmpobject = new Societe($db); $result = $tmpobject->fetch($removeelem); $elementtype = 'supplier'; - } - elseif ($type == Categorie::TYPE_CUSTOMER && $user->rights->societe->creer) + } elseif ($type == Categorie::TYPE_CUSTOMER && $user->rights->societe->creer) { $tmpobject = new Societe($db); $result = $tmpobject->fetch($removeelem); $elementtype = 'customer'; - } - elseif ($type == Categorie::TYPE_MEMBER && $user->rights->adherent->creer) + } elseif ($type == Categorie::TYPE_MEMBER && $user->rights->adherent->creer) { require_once DOL_DOCUMENT_ROOT.'/adherents/class/adherent.class.php'; $tmpobject = new Adherent($db); $result = $tmpobject->fetch($removeelem); $elementtype = 'member'; - } - elseif ($type == Categorie::TYPE_CONTACT && $user->rights->societe->creer) { + } elseif ($type == Categorie::TYPE_CONTACT && $user->rights->societe->creer) { require_once DOL_DOCUMENT_ROOT.'/contact/class/contact.class.php'; $tmpobject = new Contact($db); $result = $tmpobject->fetch($removeelem); $elementtype = 'contact'; - } - elseif ($type == Categorie::TYPE_ACCOUNT && $user->rights->banque->configurer) + } elseif ($type == Categorie::TYPE_ACCOUNT && $user->rights->banque->configurer) { require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php'; $tmpobject = new Account($db); $result = $tmpobject->fetch($removeelem); $elementtype = 'account'; - } - elseif ($type == Categorie::TYPE_PROJECT && $user->rights->projet->creer) + } elseif ($type == Categorie::TYPE_PROJECT && $user->rights->projet->creer) { require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php'; $tmpobject = new Project($db); $result = $tmpobject->fetch($removeelem); $elementtype = 'project'; - } - elseif ($type == Categorie::TYPE_USER && $user->rights->user->user->creer) + } elseif ($type == Categorie::TYPE_USER && $user->rights->user->user->creer) { require_once DOL_DOCUMENT_ROOT.'/user/class/user.class.php'; $tmpobject = new User($db); @@ -161,9 +154,7 @@ if ($user->rights->categorie->supprimer && $action == 'confirm_delete' && $confi { header("Location: ".DOL_URL_ROOT.'/categories/index.php?type='.$type); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -180,15 +171,11 @@ if ($type == Categorie::TYPE_PRODUCT && $elemid && $action == 'addintocategory' if ($result >= 0) { setEventMessages($langs->trans("WasAddedSuccessfully", $newobject->ref), null, 'mesgs'); - } - else - { + } else { if ($cat->error == 'DB_ERROR_RECORD_ALREADY_EXISTS') { setEventMessages($langs->trans("ObjectAlreadyLinkedToCategory"), null, 'warnings'); - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -317,9 +304,9 @@ print '
'; if (!empty($conf->use_javascript_ajax)) { print ''; } @@ -330,15 +317,12 @@ $cats = $object->get_filles(); if ($cats < 0) { dol_print_error($db, $cats->error, $cats->errors); -} -elseif (count($cats) < 1) +} elseif (count($cats) < 1) { print '
'.$langs->trans("NoSubCat").'
'; print ''; @@ -450,9 +432,7 @@ if ($type == Categorie::TYPE_PRODUCT) if ($prods < 0) { dol_print_error($db, $prods->error, $prods->errors); - } - else - { + } else { // Form to add record into a category $showclassifyform = 1; if ($showclassifyform) @@ -514,9 +494,7 @@ if ($type == Categorie::TYPE_PRODUCT) print ''; print "\n"; } - } - else - { + } else { print ''; } print "
'.$langs->trans("ThisCategoryHasNoItems").'
\n"; @@ -533,9 +511,7 @@ if ($type == Categorie::TYPE_SUPPLIER) if ($socs < 0) { dol_print_error($db, $socs->error, $socs->errors); - } - else - { + } else { print '
'; print ''; print ''; @@ -575,9 +551,7 @@ if ($type == Categorie::TYPE_SUPPLIER) print "
'.$langs->trans("ThisCategoryHasNoItems").'
\n"; @@ -594,9 +568,7 @@ if ($type == Categorie::TYPE_CUSTOMER) if ($socs < 0) { dol_print_error($db, $socs->error, $socs->errors); - } - else - { + } else { print ''; print ''; print ''; @@ -635,9 +607,7 @@ if ($type == Categorie::TYPE_CUSTOMER) print '
'.$langs->trans("ThisCategoryHasNoItems").'
\n"; @@ -657,9 +627,7 @@ if ($type == Categorie::TYPE_MEMBER) if ($prods < 0) { dol_print_error($db, $prods->error, $prods->errors); - } - else - { + } else { print ''; print ''; print ''; @@ -700,9 +668,7 @@ if ($type == Categorie::TYPE_MEMBER) } print "\n"; } - } - else - { + } else { print ''.$langs->trans("ThisCategoryHasNoItems").''; } print "\n"; @@ -720,9 +686,7 @@ if ($type == Categorie::TYPE_CONTACT) if ($contacts < 0) { dol_print_error($db, $contacts->error, $contacts->errors); - } - else - { + } else { print ''; print ''; print ''; @@ -735,7 +699,7 @@ if ($type == Categorie::TYPE_CONTACT) $num = count($contacts); $nbtotalofrecords = ''; $newcardbutton = ''; - print_barre_liste($langs->trans("Contact"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'contacts', 0, $newcardbutton, '', $limit); + print_barre_liste($langs->trans("Contact"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'contact', 0, $newcardbutton, '', $limit); print ''."\n"; print ''."\n"; @@ -764,9 +728,7 @@ if ($type == Categorie::TYPE_CONTACT) print ''; print "\n"; } - } - else - { + } else { print ''; } print "
'.$langs->trans("Ref").'
'.$langs->trans("ThisCategoryHasNoItems").'
\n"; @@ -786,9 +748,7 @@ if ($type == Categorie::TYPE_ACCOUNT) if ($accounts < 0) { dol_print_error($db, $accounts->error, $accounts->errors); - } - else - { + } else { print ''; print ''; print ''; @@ -828,9 +788,7 @@ if ($type == Categorie::TYPE_ACCOUNT) } print "\n"; } - } - else - { + } else { print ''.$langs->trans("ThisCategoryHasNoItems").''; } print "\n"; @@ -850,9 +808,7 @@ if ($type == Categorie::TYPE_PROJECT) if ($objects < 0) { dol_print_error($db, $object->error, $object->errors); - } - else - { + } else { print ''; print ''; print ''; @@ -893,9 +849,7 @@ if ($type == Categorie::TYPE_PROJECT) } print "\n"; } - } - else - { + } else { print ''.$langs->trans("ThisCategoryHasNoItems").''; } print "\n"; @@ -913,9 +867,7 @@ if ($type == Categorie::TYPE_USER) if ($users < 0) { dol_print_error($db, $object->error, $object->errors); - } - else - { + } else { print ''; print ''; print ''; @@ -953,9 +905,7 @@ if ($type == Categorie::TYPE_USER) } print "\n"; } - } - else - { + } else { print ''.$langs->trans("ThisCategoryHasNoItems").''; } print "\n"; @@ -976,9 +926,7 @@ if ($type == Categorie::TYPE_WAREHOUSE) if ($objects < 0) { dol_print_error($db, $object->error, $object->errors); - } - else - { + } else { print ''; print ''; print ''; @@ -989,7 +937,7 @@ if ($type == Categorie::TYPE_WAREHOUSE) print '
'; $param = '&limit='.$limit.'&id='.$id.'&type='.$type; $num = count($objects); $nbtotalofrecords = ''; $newcardbutton = ''; - print_barre_liste($langs->trans("Warehouses"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'generic', 0, $newcardbutton, '', $limit); + print_barre_liste($langs->trans("Warehouses"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'stock', 0, $newcardbutton, '', $limit); print "\n"; print ''."\n"; @@ -1019,9 +967,7 @@ if ($type == Categorie::TYPE_WAREHOUSE) } print "\n"; } - } - else - { + } else { print ''; } print "
'.$langs->trans("Ref").'
'.$langs->trans("ThisCategoryHasNoItems").'
\n"; diff --git a/htdocs/collab/index.php b/htdocs/collab/index.php index c570e12ba31..0c457fb6f47 100644 --- a/htdocs/collab/index.php +++ b/htdocs/collab/index.php @@ -94,9 +94,7 @@ if ($action == 'add') $db->commit(); setEventMessages($langs->trans("PageAdded", $objectpage->pageurl), null, 'mesgs'); $action = ''; - } - else - { + } else { $db->rollback(); } @@ -129,14 +127,10 @@ if ($action == 'delete') header("Location: ".$_SERVER["PHP_SELF"].'?website='.$website); exit; - } - else - { + } else { $db->rollback(); } - } - else - { + } else { dol_print_error($db); } } diff --git a/htdocs/comm/action/card.php b/htdocs/comm/action/card.php index fb07acbd337..55cca00d7d7 100644 --- a/htdocs/comm/action/card.php +++ b/htdocs/comm/action/card.php @@ -172,9 +172,7 @@ if (empty($reshook) && $action == 'confirm_clone' && $confirm == 'yes') if (1 == 0 && !GETPOST('clone_content') && !GETPOST('clone_receivers')) { setEventMessages($langs->trans("NoCloneOptionsSpecified"), null, 'errors'); - } - else - { + } else { if ($id > 0) { //$object->fetch($id); if (!empty($object->socpeopleassigned)) { @@ -242,9 +240,7 @@ if (empty($reshook) && $action == 'add') $error++; $donotclearsession = 1; $action = 'create'; setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("Type")), null, 'errors'); - } - else - { + } else { $object->type_code = GETPOST('actioncode', 'aZ09'); } @@ -262,14 +258,11 @@ if (empty($reshook) && $action == 'add') if (GETPOST('actioncode', 'aZ09') == 'AC_RDV' && $contact->getFullName($langs)) { $object->label = $langs->transnoentitiesnoconv("TaskRDVWith", $contact->getFullName($langs)); - } - else - { + } else { if ($langs->trans("Action".$object->type_code) != "Action".$object->type_code) { $object->label = $langs->transnoentitiesnoconv("Action".$object->type_code)."\n"; - } - else { + } else { $cactioncomm->fetch($object->type_code); $object->label = $cactioncomm->label; } @@ -317,7 +310,7 @@ if (empty($reshook) && $action == 'add') if (GETPOST("doneby") > 0) $object->userdoneid = GETPOST("doneby", "int"); } - $object->note = trim(GETPOST("note")); + $object->note_private = trim(GETPOST("note")); if (isset($_POST["contactid"])) $object->contact = $contact; @@ -389,19 +382,14 @@ if (empty($reshook) && $action == 'add') { dol_syslog("Back to ".$backtopage.($moreparam ? (preg_match('/\?/', $backtopage) ? '&'.$moreparam : '?'.$moreparam) : '')); header("Location: ".$backtopage.($moreparam ? (preg_match('/\?/', $backtopage) ? '&'.$moreparam : '?'.$moreparam) : '')); - } - elseif ($idaction) + } elseif ($idaction) { header("Location: ".DOL_URL_ROOT.'/comm/action/card.php?id='.$idaction.($moreparam ? '&'.$moreparam : '')); - } - else - { + } else { header("Location: ".DOL_URL_ROOT.'/comm/action/index.php'.($moreparam ? '?'.$moreparam : '')); } exit; - } - else - { + } else { // If error $db->rollback(); $langs->load("errors"); @@ -409,9 +397,7 @@ if (empty($reshook) && $action == 'add') setEventMessages($error, null, 'errors'); $action = 'create'; $donotclearsession = 1; } - } - else - { + } else { $db->rollback(); setEventMessages($object->error, $object->errors, 'errors'); $action = 'create'; $donotclearsession = 1; @@ -465,7 +451,6 @@ if (empty($reshook) && $action == 'update') $object->contactid = key($object->socpeopleassigned); } $object->fk_project = GETPOST("projectid", 'int'); - $object->note = GETPOST("note", "none"); // deprecated $object->note_private = GETPOST("note", "none"); $object->fk_element = GETPOST("fk_element", "int"); $object->elementtype = GETPOST("elementtype", "alphanohtml"); @@ -489,8 +474,7 @@ if (empty($reshook) && $action == 'update') { if ($val['id'] > 0 && $val['id'] != $assignedtouser) $listofuserid[$val['id']] = $val; } - } - else { + } else { $assignedtouser = (!empty($object->userownerid) && $object->userownerid > 0 ? $object->userownerid : 0); if ($assignedtouser) $listofuserid[$assignedtouser] = array('id'=>$assignedtouser, 'mandatory'=>0, 'transparency'=>($user->id == $assignedtouser ? $transparency : '')); // Owner first } @@ -517,9 +501,7 @@ if (empty($reshook) && $action == 'update') $error++; $donotclearsession = 1; $action = 'edit'; setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("Type")), null, 'errors'); - } - else - { + } else { $result = $cactioncomm->fetch(GETPOST('actioncode', 'aZ09')); } if (empty($object->userownerid)) @@ -607,9 +589,7 @@ if (empty($reshook) && $action == 'update') unset($_SESSION['assignedtouser']); $db->commit(); - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); $db->rollback(); } @@ -646,9 +626,7 @@ if (empty($reshook) && $action == 'confirm_delete' && GETPOST("confirm") == 'yes { header("Location: index.php"); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -756,9 +734,7 @@ if (empty($reshook) && GETPOST('actionmove', 'alpha') == 'mupdate') { header("Location: ".$backtopage); exit; - } - else - { + } else { $action = ''; } } @@ -958,8 +934,7 @@ if ($action == 'create') $percent = -1; if (isset($_GET['status']) || isset($_POST['status'])) $percent = GETPOST('status'); elseif (isset($_GET['percentage']) || isset($_POST['percentage'])) $percent = GETPOST('percentage'); - else - { + else { if (GETPOST('complete') == '0' || GETPOST("afaire") == 1) $percent = '0'; elseif (GETPOST('complete') == 100 || GETPOST("afaire") == 2) $percent = 100; } @@ -981,9 +956,7 @@ if ($action == 'create') if ($assignedtouser) $listofuserid[$assignedtouser] = array('id'=>$assignedtouser, 'mandatory'=>0, 'transparency'=>$object->transparency); // Owner first $listofuserid[$user->id]['transparency'] = GETPOSTISSET('transparency') ?GETPOST('transparency', 'alpha') : 1; // 1 by default at first init $_SESSION['assignedtouser'] = json_encode($listofuserid); - } - else - { + } else { if (!empty($_SESSION['assignedtouser'])) { $listofuserid = json_decode($_SESSION['assignedtouser'], true); @@ -1035,9 +1008,7 @@ if ($action == 'create') $societe->fetch(GETPOST('socid', 'int')); print $societe->getNomUrl(1); print ''; - } - else - { + } else { $events = array(); $events[] = array('method' => 'getContacts', 'url' => dol_buildpath('/core/ajax/contacts.php?showempty=1', 1), 'htmlname' => 'contactid', 'params' => array('add-customer-contact' => 'disabled')); //For external user force the company to user company @@ -1122,7 +1093,7 @@ if ($action == 'create') // Description print ''.$langs->trans("Description").''; require_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php'; - $doleditor = new DolEditor('note', (GETPOST('note', 'none') ?GETPOST('note', 'none') : $object->note), '', 180, 'dolibarr_notes', 'In', true, true, $conf->fckeditor->enabled, ROWS_4, '90%'); + $doleditor = new DolEditor('note', (GETPOST('note', 'none') ?GETPOST('note', 'none') : $object->note_private), '', 180, 'dolibarr_notes', 'In', true, true, $conf->fckeditor->enabled, ROWS_4, '90%'); $doleditor->Create(); print ''; @@ -1188,7 +1159,7 @@ if ($id > 0) $object->contactid = GETPOST("contactid", 'int'); $object->fk_project = GETPOST("projectid", 'int'); - $object->note = GETPOST("note", 'none'); + $object_private = GETPOST("note", 'none'); } if ($result2 < 0 || $result3 < 0 || $result4 < 0 || $result5 < 0) @@ -1266,9 +1237,7 @@ if ($id > 0) if ($object->type_code != 'AC_OTH_AUTO') { $formactions->select_type_actions(GETPOST("actioncode", 'aZ09') ?GETPOST("actioncode", 'aZ09') : $object->type_code, "actioncode", "systemauto"); - } - else - { + } else { print ''.$langs->trans("Action".$object->type_code); } print ''; @@ -1398,9 +1367,7 @@ if ($id > 0) } } $_SESSION['assignedtouser'] = json_encode($listofuserid); - } - else - { + } else { if (!empty($_SESSION['assignedtouser'])) { $listofuserid = json_decode($_SESSION['assignedtouser'], true); @@ -1523,9 +1490,7 @@ if ($id > 0) print ''; print ''; - } - else - { + } else { print ''; print dolGetElementUrl($object->fk_element, $object->elementtype, 1); print ''; @@ -1540,7 +1505,7 @@ if ($id > 0) print ''.$langs->trans("Description").''; // Editeur wysiwyg require_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php'; - $doleditor = new DolEditor('note', $object->note, '', 200, 'dolibarr_notes', 'In', true, true, $conf->fckeditor->enabled, ROWS_5, '90%'); + $doleditor = new DolEditor('note', $object->note_private, '', 200, 'dolibarr_notes', 'In', true, true, $conf->fckeditor->enabled, ROWS_5, '90%'); $doleditor->Create(); print ''; @@ -1564,9 +1529,7 @@ if ($id > 0) print '
'; print ''; - } - else - { + } else { dol_fiche_head($head, 'card', $langs->trans("Action"), -1, 'action'); @@ -1709,9 +1672,7 @@ if ($id > 0) } } $_SESSION['assignedtouser'] = json_encode($listofuserid); - } - else - { + } else { if (!empty($_SESSION['assignedtouser'])) { $listofuserid = json_decode($_SESSION['assignedtouser'], true); @@ -1797,9 +1758,7 @@ if ($id > 0) print '
'; } } - } - else - { + } else { print ''.$langs->trans("None").''; } print ''; @@ -1856,9 +1815,7 @@ if ($id > 0) (($object->authorid == $user->id || $object->userownerid == $user->id) && $user->rights->agenda->myactions->create)) { print ''; - } - else - { + } else { print ''; } @@ -1866,9 +1823,7 @@ if ($id > 0) (($object->authorid == $user->id || $object->userownerid == $user->id) && $user->rights->agenda->myactions->create)) { print ''; - } - else - { + } else { print ''; } @@ -1876,9 +1831,7 @@ if ($id > 0) (($object->authorid == $user->id || $object->userownerid == $user->id) && $user->rights->agenda->myactions->delete)) { print ''; - } - else - { + } else { print ''; } } diff --git a/htdocs/comm/action/class/actioncomm.class.php b/htdocs/comm/action/class/actioncomm.class.php index 8c1e2051a81..2cda34a494b 100644 --- a/htdocs/comm/action/class/actioncomm.class.php +++ b/htdocs/comm/action/class/actioncomm.class.php @@ -177,12 +177,6 @@ class ActionComm extends CommonObject */ public $fulldayevent = 0; - /** - * @var int Milestone - * @deprecated Milestone is already event with end date = start date - */ - public $punctual = 1; - /** * @var integer Percentage */ @@ -343,6 +337,20 @@ class ActionComm extends CommonObject */ public $errors_to; + /** + * Typical value for a event that is in a todo state + */ + const EVENT_TODO = 0; + + /** + * Typical value for a event that is in a progress state + */ + const EVENT_IN_PROGRESS = 50; + + /** + * Typical value for a event that is in a finished state + */ + const EVENT_FINISHED = 100; /** * Constructor @@ -380,11 +388,10 @@ class ActionComm extends CommonObject // Clean parameters $this->label = dol_trunc(trim($this->label), 128); $this->location = dol_trunc(trim($this->location), 128); - $this->note = dol_htmlcleanlastbr(trim($this->note)); + $this->note_private = dol_htmlcleanlastbr(trim(empty($this->note_private) ? $this->note : $this->note_private)); if (empty($this->percentage)) $this->percentage = 0; if (empty($this->priority) || !is_numeric($this->priority)) $this->priority = 0; if (empty($this->fulldayevent)) $this->fulldayevent = 0; - if (empty($this->punctual)) $this->punctual = 0; if (empty($this->transparency)) $this->transparency = 0; if ($this->percentage > 100) $this->percentage = 100; //if ($this->percentage == 100 && ! $this->dateend) $this->dateend = $this->date; @@ -405,7 +412,6 @@ class ActionComm extends CommonObject $this->userassigned[$tmpid] = array('id'=>$tmpid, 'transparency'=>$this->transparency); } - $userownerid = $this->userownerid; $userdoneid = $this->userdoneid; @@ -425,14 +431,11 @@ class ActionComm extends CommonObject { $this->type_id = $cactioncomm->id; $this->type_code = $cactioncomm->code; - } - elseif ($result == 0) + } elseif ($result == 0) { $this->error = 'Failed to get record with id '.$this->type_id.' code '.$this->type_code.' from dictionary "type of events"'; return -1; - } - else - { + } else { $this->error = $cactioncomm->error; return -1; } @@ -463,7 +466,7 @@ class ActionComm extends CommonObject $sql .= "fk_user_author,"; $sql .= "fk_user_action,"; $sql .= "fk_user_done,"; - $sql .= "label,percent,priority,fulldayevent,location,punctual,"; + $sql .= "label,percent,priority,fulldayevent,location,"; $sql .= "transparency,"; $sql .= "fk_element,"; $sql .= "elementtype,"; @@ -484,16 +487,16 @@ class ActionComm extends CommonObject $sql .= (strval($this->datef) != '' ? "'".$this->db->idate($this->datef)."'" : "null").", "; $sql .= ((isset($this->durationp) && $this->durationp >= 0 && $this->durationp != '') ? "'".$this->db->escape($this->durationp)."'" : "null").", "; // deprecated $sql .= (isset($this->type_id) ? $this->type_id : "null").","; - $sql .= ($code ? ("'".$code."'") : "null").", "; + $sql .= ($code ? ("'".$this->db->escape($code)."'") : "null").", "; $sql .= ($this->ref_ext ? ("'".$this->db->idate($this->ref_ext)."'") : "null").", "; $sql .= ((isset($this->socid) && $this->socid > 0) ? $this->socid : "null").", "; $sql .= ((isset($this->fk_project) && $this->fk_project > 0) ? $this->fk_project : "null").", "; - $sql .= " '".$this->db->escape($this->note_private ? $this->note_private : $this->note)."', "; + $sql .= " '".$this->db->escape($this->note_private)."', "; $sql .= ((isset($this->contactid) && $this->contactid > 0) ? $this->contactid : "null").", "; $sql .= (isset($user->id) && $user->id > 0 ? $user->id : "null").", "; $sql .= ($userownerid > 0 ? $userownerid : "null").", "; $sql .= ($userdoneid > 0 ? $userdoneid : "null").", "; - $sql .= "'".$this->db->escape($this->label)."','".$this->db->escape($this->percentage)."','".$this->db->escape($this->priority)."','".$this->db->escape($this->fulldayevent)."','".$this->db->escape($this->location)."','".$this->db->escape($this->punctual)."', "; + $sql .= "'".$this->db->escape($this->label)."','".$this->db->escape($this->percentage)."','".$this->db->escape($this->priority)."','".$this->db->escape($this->fulldayevent)."','".$this->db->escape($this->location)."', "; $sql .= "'".$this->db->escape($this->transparency)."', "; $sql .= (!empty($this->fk_element) ? $this->fk_element : "null").", "; $sql .= (!empty($this->elementtype) ? "'".$this->db->escape($this->elementtype)."'" : "null").", "; @@ -567,14 +570,11 @@ class ActionComm extends CommonObject if (!$error) { // Actions on extra fields - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used - { - $result = $this->insertExtraFields(); - if ($result < 0) - { - $error++; - } - } + $result = $this->insertExtraFields(); + if ($result < 0) + { + $error++; + } } if (!$error && !$notrigger) @@ -589,15 +589,11 @@ class ActionComm extends CommonObject { $this->db->commit(); return $this->id; - } - else - { + } else { $this->db->rollback(); return -1; } - } - else - { + } else { $this->db->rollback(); $this->error = $this->db->lasterror(); return -1; @@ -661,9 +657,7 @@ class ActionComm extends CommonObject { $this->db->commit(); return $this->id; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -683,6 +677,7 @@ class ActionComm extends CommonObject $sql = "SELECT a.id,"; $sql .= " a.id as ref,"; + $sql .= " a.entity,"; $sql .= " a.ref_ext,"; $sql .= " a.datep,"; $sql .= " a.datep2,"; @@ -696,7 +691,7 @@ class ActionComm extends CommonObject $sql .= " a.fk_user_action, a.fk_user_done,"; $sql .= " a.fk_contact, a.percent as percentage,"; $sql .= " a.fk_element as elementid, a.elementtype,"; - $sql .= " a.priority, a.fulldayevent, a.location, a.punctual, a.transparency,"; + $sql .= " a.priority, a.fulldayevent, a.location, a.transparency,"; $sql .= " c.id as type_id, c.code as type_code, c.libelle as type_label, c.color as type_color, c.picto as type_picto,"; $sql .= " s.nom as socname,"; $sql .= " u.firstname, u.lastname as lastname"; @@ -719,6 +714,7 @@ class ActionComm extends CommonObject $obj = $this->db->fetch_object($resql); $this->id = $obj->id; + $this->entity = $obj->entity; $this->ref = $obj->ref; $this->ref_ext = $obj->ref_ext; @@ -733,14 +729,14 @@ class ActionComm extends CommonObject $this->type_short = (($transcode != "Action".$obj->type_code.'Short') ? $transcode : ''); $this->code = $obj->code; - $this->label = $obj->label; - $this->datep = $this->db->jdate($obj->datep); - $this->datef = $this->db->jdate($obj->datep2); + $this->label = $obj->label; + $this->datep = $this->db->jdate($obj->datep); + $this->datef = $this->db->jdate($obj->datep2); - $this->datec = $this->db->jdate($obj->datec); - $this->datem = $this->db->jdate($obj->datem); + $this->datec = $this->db->jdate($obj->datec); + $this->datem = $this->db->jdate($obj->datem); - $this->note = $obj->note; + $this->note = $obj->note; // deprecated $this->note_private = $obj->note; $this->percentage = $obj->percentage; @@ -760,7 +756,6 @@ class ActionComm extends CommonObject $this->fulldayevent = $obj->fulldayevent; $this->location = $obj->location; $this->transparency = $obj->transparency; - $this->punctual = $obj->punctual; // deprecated $this->socid = $obj->fk_soc; // To have fetch_thirdparty method working $this->contactid = $obj->fk_contact; // To have fetch_contact method working @@ -776,9 +771,7 @@ class ActionComm extends CommonObject $this->fetchResources(); } $this->db->free($resql); - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -823,9 +816,7 @@ class ActionComm extends CommonObject } return 1; - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -878,9 +869,7 @@ class ActionComm extends CommonObject } return 1; - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -962,15 +951,11 @@ class ActionComm extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -2; } - } - else - { + } else { $this->db->rollback(); $this->error = $this->db->lasterror(); return -1; @@ -993,7 +978,7 @@ class ActionComm extends CommonObject // Clean parameters $this->label = trim($this->label); - $this->note = trim($this->note); + $this->note_private = dol_htmlcleanlastbr(trim(empty($this->note_private) ? $this->note : $this->note_private)); if (empty($this->percentage)) $this->percentage = 0; if (empty($this->priority) || !is_numeric($this->priority)) $this->priority = 0; if (empty($this->transparency)) $this->transparency = 0; @@ -1027,7 +1012,7 @@ class ActionComm extends CommonObject $sql .= ", datep = ".(strval($this->datep) != '' ? "'".$this->db->idate($this->datep)."'" : 'null'); $sql .= ", datep2 = ".(strval($this->datef) != '' ? "'".$this->db->idate($this->datef)."'" : 'null'); $sql .= ", durationp = ".(isset($this->durationp) && $this->durationp >= 0 && $this->durationp != '' ? "'".$this->db->escape($this->durationp)."'" : "null"); // deprecated - $sql .= ", note = '".$this->db->escape($this->note_private ? $this->note_private : $this->note)."'"; + $sql .= ", note = '".$this->db->escape($this->note_private)."'"; $sql .= ", fk_project =".($this->fk_project > 0 ? $this->fk_project : "null"); $sql .= ", fk_soc =".($socid > 0 ? $socid : "null"); $sql .= ", fk_contact =".($contactid > 0 ? $contactid : "null"); @@ -1048,7 +1033,7 @@ class ActionComm extends CommonObject $action = 'update'; // Actions on extra fields - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + if (!$error) { $result = $this->insertExtraFields(); if ($result < 0) @@ -1116,16 +1101,12 @@ class ActionComm extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); dol_syslog(get_class($this)."::update ".join(',', $this->errors), LOG_ERR); return -2; } - } - else - { + } else { $this->db->rollback(); $this->error = $this->db->lasterror(); return -1; @@ -1184,9 +1165,7 @@ class ActionComm extends CommonObject } $db->free($resql); return $resarray; - } - else - { + } else { return $db->lasterror(); } } @@ -1245,9 +1224,7 @@ class ActionComm extends CommonObject $this->db->free($resql); if (empty($load_state_board)) return $response; else return 1; - } - else - { + } else { dol_print_error($this->db); $this->error = $this->db->error(); return -1; @@ -1297,9 +1274,7 @@ class ActionComm extends CommonObject if (!empty($obj->fk_user_mod)) $this->date_modification = $this->db->jdate($obj->datem); } $this->db->free($result); - } - else - { + } else { dol_print_error($this->db); } } @@ -1406,8 +1381,8 @@ class ActionComm extends CommonObject $tooltip .= '
'.$langs->trans('Type').': '.$labeltype; if (!empty($this->location)) $tooltip .= '
'.$langs->trans('Location').': '.$this->location; - if (!empty($this->note)) - $tooltip .= '
'.$langs->trans('Note').': '.(dol_textishtml($this->note) ? str_replace(array("\r", "\n"), "", $this->note) : str_replace(array("\r", "\n"), '
', $this->note)); + if (!empty($this->note_private)) + $tooltip .= '
'.$langs->trans('Note').': '.(dol_textishtml($this->note_private) ? str_replace(array("\r", "\n"), "", $this->note_private) : str_replace(array("\r", "\n"), '
', $this->note_private)); $linkclose = ''; if (!empty($conf->global->AGENDA_USE_EVENT_TYPE) && $this->type_color) $linkclose = ' style="background-color:#'.$this->type_color.'"'; @@ -1428,16 +1403,14 @@ class ActionComm extends CommonObject $reshook=$hookmanager->executeHooks('getnomurltooltip',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks $linkclose = ($hookmanager->resPrint ? $hookmanager->resPrint : $linkclose); */ - } - else $linkclose .= ' class="'.$classname.'"'; + } else $linkclose .= ' class="'.$classname.'"'; $url = ''; if ($option == 'birthday') $url = DOL_URL_ROOT.'/contact/perso.php?id='.$this->id; elseif ($option == 'holiday') $url = DOL_URL_ROOT.'/holiday/card.php?id='.$this->id; - else - $url = DOL_URL_ROOT.'/comm/action/card.php?id='.$this->id; + else $url = DOL_URL_ROOT.'/comm/action/card.php?id='.$this->id; if ($option !== 'nolink') { // Add param to save lastsearch_values or not @@ -1460,9 +1433,7 @@ class ActionComm extends CommonObject $libelle = $label; if (!empty($conf->global->AGENDA_USE_EVENT_TYPE)) $libelle = $labeltype; $libelleshort = ''; - } - else - { + } else { $libelle = (empty($this->libelle) ? $label : $this->libelle.(($label && $label != $this->libelle) ? ' '.$label : '')); if (!empty($conf->global->AGENDA_USE_EVENT_TYPE) && empty($libelle)) $libelle = $labeltype; if ($maxlength < 0) $libelleshort = $this->ref; @@ -1614,7 +1585,7 @@ class ActionComm extends CommonObject $sql .= " a.fk_user_action,"; $sql .= " a.fk_contact, a.percent as percentage,"; $sql .= " a.fk_element, a.elementtype,"; - $sql .= " a.priority, a.fulldayevent, a.location, a.punctual, a.transparency,"; + $sql .= " a.priority, a.fulldayevent, a.location, a.transparency,"; $sql .= " u.firstname, u.lastname, u.email,"; $sql .= " s.nom as socname,"; $sql .= " c.id as type_id, c.code as type_code, c.libelle as type_label"; @@ -1703,9 +1674,7 @@ class ActionComm extends CommonObject { $dateend = $this->db->jdate($obj->datep2) - (empty($conf->global->AGENDA_EXPORT_FIX_TZ) ? 0 : ($conf->global->AGENDA_EXPORT_FIX_TZ * 3600)); - } - else - { + } else { // use start date as fall-back to avoid import erros on empty end date $dateend = $datestart; } @@ -1721,7 +1690,6 @@ class ActionComm extends CommonObject $event['fulldayevent'] = $obj->fulldayevent; $event['location'] = $obj->location; $event['transparency'] = (($obj->transparency > 0) ? 'OPAQUE' : 'TRANSPARENT'); // OPAQUE (busy) or TRANSPARENT (not busy) - $event['punctual'] = $obj->punctual; $event['category'] = $obj->type_label; $event['email'] = $obj->email; // Define $urlwithroot @@ -1762,9 +1730,7 @@ class ActionComm extends CommonObject { $eventarray = $hookmanager->resArray; } - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -1797,16 +1763,13 @@ class ActionComm extends CommonObject $timestampStart = dol_stringtotime($obj->date_start." 00:00:00", 0); $timestampEnd = dol_stringtotime($obj->date_end." 12:00:00", 0); - } - elseif ($obj->halfday == 1) + } elseif ($obj->halfday == 1) { $event['fulldayevent'] = false; $timestampStart = dol_stringtotime($obj->date_start." 12:00:00", 0); $timestampEnd = dol_stringtotime($obj->date_end." 23:59:59", 0); - } - else - { + } else { $event['fulldayevent'] = true; $timestampStart = dol_stringtotime($obj->date_start." 00:00:00", 0); @@ -1840,9 +1803,7 @@ class ActionComm extends CommonObject { // 2 = leave wait for approval $event['summary'] = $title." - ".$obj->lastname." (wait for approval)"; - } - else - { + } else { // 3 = leave approved $event['summary'] = $title." - ".$obj->lastname; } @@ -1867,9 +1828,7 @@ class ActionComm extends CommonObject $title = 'Dolibarr actions '.$mysoc->name.' - '.$more; $desc = $more; $desc .= ' ('.$mysoc->name.' - built by Dolibarr)'; - } - else - { + } else { $title = 'Dolibarr actions '.$mysoc->name; $desc = $langs->transnoentities('ListOfActions'); $desc .= ' ('.$mysoc->name.' - built by Dolibarr)'; @@ -1887,16 +1846,13 @@ class ActionComm extends CommonObject if ($result >= 0) { if (dol_move($outputfiletmp, $outputfile, 0, 1)) $result = 1; - else - { + else { $this->error = 'Failed to rename '.$outputfiletmp.' into '.$outputfile; dol_syslog(get_class($this)."::build_exportfile ".$this->error, LOG_ERR); dol_delete_file($outputfiletmp, 0, 1); $result = -1; } - } - else - { + } else { dol_syslog(get_class($this)."::build_exportfile build_xxxfile function fails to for format=".$format." outputfiletmp=".$outputfile, LOG_ERR); dol_delete_file($outputfiletmp, 0, 1); $langs->load("errors"); @@ -1931,17 +1887,12 @@ class ActionComm extends CommonObject $this->datem = $now; $this->datep = $now; $this->datef = $now; - $this->author = $user; - $this->usermod = $user; - $this->usertodo = $user; $this->fulldayevent = 0; - $this->punctual = 0; $this->percentage = 0; $this->location = 'Location'; $this->transparency = 1; // 1 means opaque $this->priority = 1; - $this->note = "This is a 'public' note"; - $this->note_public = "This is a 'public' note."; + //$this->note_public = "This is a 'public' note."; $this->note_private = "This is a 'private' note."; $this->userownerid = $user->id; @@ -2024,4 +1975,30 @@ class ActionComm extends CommonObject return $error; } + + /** + * Udpate the percent value of a event with the given id + * + * @param int $id The id of the event + * @param int $percent The new percent value for the event + * @return int 1 when update of the event was suscessfull, otherwise -1 + */ + public function updatePercent($id, $percent) + { + $this->db->begin(); + + $sql = "UPDATE ".MAIN_DB_PREFIX."actioncomm "; + $sql .= " SET percent = ".(int) $percent; + $sql .= " WHERE id=".$id; + + if ($this->db->query($sql)) + { + $this->db->commit(); + return 1; + } else { + $this->db->rollback(); + $this->error = $this->db->lasterror(); + return -1; + } + } } diff --git a/htdocs/comm/action/class/actioncommreminder.class.php b/htdocs/comm/action/class/actioncommreminder.class.php index f987d551766..d3f4fb3f238 100644 --- a/htdocs/comm/action/class/actioncommreminder.class.php +++ b/htdocs/comm/action/class/actioncommreminder.class.php @@ -200,28 +200,23 @@ class ActionCommReminder extends CommonObject { if ($status == 1) return $langs->trans('Done'); elseif ($status == 0) return $langs->trans('ToDo'); - } - elseif ($mode == 2) + } elseif ($mode == 2) { if ($status == 1) return img_picto($langs->trans('Done'), 'statut4').' '.$langs->trans('Done'); elseif ($status == 0) return img_picto($langs->trans('ToDo'), 'statut5').' '.$langs->trans('ToDo'); - } - elseif ($mode == 3) + } elseif ($mode == 3) { if ($status == 1) return img_picto($langs->trans('Done'), 'statut4'); elseif ($status == 0) return img_picto($langs->trans('ToDo'), 'statut5'); - } - elseif ($mode == 4) + } elseif ($mode == 4) { if ($status == 1) return img_picto($langs->trans('Done'), 'statut4').' '.$langs->trans('Done'); elseif ($status == 0) return img_picto($langs->trans('ToDo'), 'statut5').' '.$langs->trans('ToDo'); - } - elseif ($mode == 5) + } elseif ($mode == 5) { if ($status == 1) return $langs->trans('Done').' '.img_picto($langs->trans('Done'), 'statut4'); elseif ($status == 0) return $langs->trans('ToDo').' '.img_picto($langs->trans('ToDo'), 'statut5'); - } - elseif ($mode == 6) + } elseif ($mode == 6) { if ($status == 1) return $langs->trans('Done').' '.img_picto($langs->trans('Done'), 'statut4'); elseif ($status == 0) return $langs->trans('ToDo').' '.img_picto($langs->trans('ToDo'), 'statut5'); diff --git a/htdocs/comm/action/class/api_agendaevents.class.php b/htdocs/comm/action/class/api_agendaevents.class.php index a8cb6b5de8f..20b88dd73d7 100644 --- a/htdocs/comm/action/class/api_agendaevents.class.php +++ b/htdocs/comm/action/class/api_agendaevents.class.php @@ -175,8 +175,7 @@ class AgendaEvents extends DolibarrApi } $i++; } - } - else { + } else { throw new RestException(503, 'Error when retrieve Agenda Event list : '.$db->lasterror()); } if (!count($obj_ret)) { diff --git a/htdocs/comm/action/class/cactioncomm.class.php b/htdocs/comm/action/class/cactioncomm.class.php index 0ea298a0372..147a6ff7ef0 100644 --- a/htdocs/comm/action/class/cactioncomm.class.php +++ b/htdocs/comm/action/class/cactioncomm.class.php @@ -104,15 +104,11 @@ class CActionComm $this->db->free($resql); return 1; - } - else - { + } else { $this->db->free($resql); return 0; } - } - else - { + } else { $this->error = $this->db->error(); return -1; } @@ -166,12 +162,12 @@ class CActionComm if ($qualified && $obj->module) { - if ($obj->module == 'invoice' && !$conf->facture->enabled) $qualified = 0; - if ($obj->module == 'order' && !$conf->commande->enabled) $qualified = 0; - if ($obj->module == 'propal' && !$conf->propal->enabled) $qualified = 0; - if ($obj->module == 'invoice_supplier' && !$conf->fournisseur->enabled) $qualified = 0; - if ($obj->module == 'order_supplier' && !$conf->fournisseur->enabled) $qualified = 0; - if ($obj->module == 'shipping' && !$conf->expedition->enabled) $qualified = 0; + if ($obj->module == 'invoice' && !$conf->facture->enabled) $qualified=0; + if ($obj->module == 'order' && !$conf->commande->enabled) $qualified=0; + if ($obj->module == 'propal' && !$conf->propal->enabled) $qualified=0; + if ($obj->module == 'invoice_supplier' && ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || ! $conf->supplier_invoice->enabled)) $qualified=0; + if ($obj->module == 'order_supplier' && ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || ! $conf->supplier_order->enabled)) $qualified=0; + if ($obj->module == 'shipping' && !$conf->expedition->enabled) $qualified=0; } if ($qualified) @@ -208,9 +204,7 @@ class CActionComm if ($idorcode == 'id') $this->liste_array = $repid; if ($idorcode == 'code') $this->liste_array = $repcode; return $this->liste_array; - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } diff --git a/htdocs/comm/action/class/ical.class.php b/htdocs/comm/action/class/ical.class.php index e985b8ea09e..b806dde94f9 100644 --- a/htdocs/comm/action/class/ical.class.php +++ b/htdocs/comm/action/class/ical.class.php @@ -179,16 +179,13 @@ class ICal $tmpkey = ''; $tmpvalue = ''; } - } - elseif (preg_match('/^ENCODING=QUOTED-PRINTABLE:/i', $value)) + } elseif (preg_match('/^ENCODING=QUOTED-PRINTABLE:/i', $value)) { if (preg_match('/=$/', $value)) { $tmpkey = $key; $tmpvalue = $tmpvalue.preg_replace('/=$/', "", $value); // We must wait to have next line to have complete message - } - else - { + } else { $value = quotedPrintDecode(preg_replace('/^ENCODING=QUOTED-PRINTABLE:/i', '', $tmpvalue.$value)); } } //$value=quotedPrintDecode($tmpvalue.$value); @@ -236,9 +233,7 @@ class ICal if (stristr($key, "DTSTART;VALUE=DATE") || stristr($key, "DTEND;VALUE=DATE")) { list($key, $value) = array($key, $value); - } - else - { + } else { list($key, $value) = $this->ical_dt_date($key, $value); } } @@ -377,9 +372,7 @@ class ICal { usort($temp, array(&$this, "ical_dtstart_compare")); return $temp; - } - else - { + } else { return false; } } diff --git a/htdocs/comm/action/document.php b/htdocs/comm/action/document.php index 20e76b6e7d5..fa4387b0861 100644 --- a/htdocs/comm/action/document.php +++ b/htdocs/comm/action/document.php @@ -62,11 +62,12 @@ if ($id > 0) } // Get parameters +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; if (!$sortorder) $sortorder = "ASC"; @@ -214,9 +215,7 @@ if ($object->id > 0) } } $_SESSION['assignedtouser'] = json_encode($listofuserid); - } - else - { + } else { if (!empty($_SESSION['assignedtouser'])) { $listofuserid = json_decode($_SESSION['assignedtouser'], true); @@ -262,9 +261,7 @@ if ($object->id > 0) $permission = $user->rights->agenda->myactions->create || $user->rights->agenda->allactions->create; $param = '&id='.$object->id; include_once DOL_DOCUMENT_ROOT.'/core/tpl/document_actions_post_headers.tpl.php'; -} -else -{ +} else { print $langs->trans("ErrorUnknown"); } diff --git a/htdocs/comm/action/index.php b/htdocs/comm/action/index.php index b480586bc6a..e0ded511928 100644 --- a/htdocs/comm/action/index.php +++ b/htdocs/comm/action/index.php @@ -95,9 +95,7 @@ if (GETPOST('search_actioncode', 'array')) { $actioncode = GETPOST('search_actioncode', 'array', 3); if (!count($actioncode)) $actioncode = '0'; -} -else -{ +} else { $actioncode = GETPOST("search_actioncode", "alpha", 3) ?GETPOST("search_actioncode", "alpha", 3) : (GETPOST("search_actioncode") == '0' ? '0' : (empty($conf->global->AGENDA_DEFAULT_FILTER_TYPE) ? '' : $conf->global->AGENDA_DEFAULT_FILTER_TYPE)); } if ($actioncode == '' && empty($actioncodearray)) $actioncode = (empty($conf->global->AGENDA_DEFAULT_FILTER_TYPE) ? '' : $conf->global->AGENDA_DEFAULT_FILTER_TYPE); @@ -460,13 +458,11 @@ if (!empty($conf->use_javascript_ajax)) // If javascript on if (empty($reshook)) { $s .= $hookmanager->resPrint; - } - elseif ($reshook > 1) + } elseif ($reshook > 1) { $s = $hookmanager->resPrint; } -} -else // If javascript off +} else // If javascript off { $newparam = $param; // newparam is for birthday links $newparam = preg_replace('/showbirthday=[0-1]/i', 'showbirthday='.(empty($showbirthday) ? 1 : 0), $newparam); @@ -512,24 +508,18 @@ if (!empty($actioncode)) { if ($actioncode == 'AC_NON_AUTO') $sql .= " AND ca.type != 'systemauto'"; elseif ($actioncode == 'AC_ALL_AUTO') $sql .= " AND ca.type = 'systemauto'"; - else - { + else { if ($actioncode == 'AC_OTH') $sql .= " AND ca.type != 'systemauto'"; if ($actioncode == 'AC_OTH_AUTO') $sql .= " AND ca.type = 'systemauto'"; } - } - else - { + } else { if ($actioncode == 'AC_NON_AUTO') $sql .= " AND ca.type != 'systemauto'"; elseif ($actioncode == 'AC_ALL_AUTO') $sql .= " AND ca.type = 'systemauto'"; - else - { + else { if (is_array($actioncode)) { $sql .= " AND ca.code IN ('".implode("','", $actioncode)."')"; - } - else - { + } else { $sql .= " AND ca.code IN ('".implode("','", explode(',', $actioncode))."')"; } } @@ -553,9 +543,7 @@ if ($action == 'show_day') $sql .= " (a.datep < '".$db->idate(dol_mktime(0, 0, 0, $month, $day, $year))."'"; $sql .= " AND a.datep2 > '".$db->idate(dol_mktime(23, 59, 59, $month, $day, $year))."')"; $sql .= ')'; -} -else -{ +} else { // To limit array $sql .= " AND ("; $sql .= " (a.datep BETWEEN '".$db->idate(dol_mktime(0, 0, 0, $month, 1, $year) - (60 * 60 * 24 * 7))."'"; // Start 7 days before @@ -651,9 +639,7 @@ if ($resql) $event->date_start_in_calendar >= $lastdaytoshow) { // This record is out of visible range - } - else - { + } else { if ($event->date_start_in_calendar < $firstdaytoshow) $event->date_start_in_calendar = $firstdaytoshow; if ($event->date_end_in_calendar >= $lastdaytoshow) $event->date_end_in_calendar = ($lastdaytoshow - 1); @@ -666,8 +652,7 @@ if ($resql) // Loop on each day covered by action to prepare an index to show on calendar $loop = true; $j = 0; $daykey = dol_mktime(0, 0, 0, $mois, $jour, $annee); - do - { + do { //if ($event->id==408) print 'daykey='.$daykey.' '.$event->datep.' '.$event->datef.'
'; $eventarray[$daykey][] = $event; @@ -675,17 +660,14 @@ if ($resql) $daykey += 60 * 60 * 24; if ($daykey > $event->date_end_in_calendar) $loop = false; - } - while ($loop); + } while ($loop); //print 'Event '.$i.' id='.$event->id.' (start='.dol_print_date($event->datep).'-end='.dol_print_date($event->datef); //print ' startincalendar='.dol_print_date($event->date_start_in_calendar).'-endincalendar='.dol_print_date($event->date_end_in_calendar).') was added in '.$j.' different index key of array
'; } $i++; } -} -else -{ +} else { dol_print_error($db); } @@ -701,9 +683,7 @@ if ($showbirthday) { $sql .= ' AND MONTH(birthday) = '.$month; $sql .= ' AND DAY(birthday) = '.$day; - } - else - { + } else { $sql .= ' AND MONTH(birthday) = '.$month; } $sql .= ' ORDER BY birthday'; @@ -741,18 +721,14 @@ if ($showbirthday) $loop = true; $daykey = dol_mktime(0, 0, 0, $mois, $jour, $annee); - do - { + do { $eventarray[$daykey][] = $event; $daykey += 60 * 60 * 24; if ($daykey > $event->date_end_in_calendar) $loop = false; - } - while ($loop); + } while ($loop); $i++; } - } - else - { + } else { dol_print_error($db); } } @@ -769,12 +745,10 @@ if ($conf->global->AGENDA_SHOW_HOLIDAYS) { // Request only leaves for the current selected day $sql .= " AND '".$year."-".$month."-".$day."' BETWEEN x.date_debut AND x.date_fin"; - } - elseif ($action == 'show_week') + } elseif ($action == 'show_week') { // TODO: Add filter to reduce database request - } - elseif ($action == 'show_month') + } elseif ($action == 'show_month') { // TODO: Add filter to reduce database request } @@ -807,8 +781,7 @@ if ($conf->global->AGENDA_SHOW_HOLIDAYS) { // Show no symbol for leave with state "leave approved" $event->percentage = -1; - } - elseif ($obj->status == 2) + } elseif ($obj->status == 2) { // Show TO-DO symbol for leave with state "leave wait for approval" $event->percentage = 0; @@ -817,13 +790,10 @@ if ($conf->global->AGENDA_SHOW_HOLIDAYS) if ($obj->halfday == 1) { $event->label = $obj->lastname.' ('.$langs->trans("Morning").')'; - } - elseif ($obj->halfday == -1) + } elseif ($obj->halfday == -1) { $event->label = $obj->lastname.' ('.$langs->trans("Afternoon").')'; - } - else - { + } else { $event->label = $obj->lastname; } @@ -832,14 +802,11 @@ if ($conf->global->AGENDA_SHOW_HOLIDAYS) $jour = date('d', $event->date_start_in_calendar); $daykey = dol_mktime(0, 0, 0, $mois, $jour, $annee); - do - { + do { $eventarray[$daykey][] = $event; $daykey += 60 * 60 * 24; - } - - while ($daykey <= $event->date_end_in_calendar); + } while ($daykey <= $event->date_end_in_calendar); $i++; } @@ -881,8 +848,7 @@ if (count($listofextcals)) { $datecurstart = dol_stringtotime($icalevent['DTSTART;VALUE=DATE'], 1); $datecurend = dol_stringtotime($icalevent['DTEND;VALUE=DATE'], 1) - 1; // We remove one second to get last second of day - } - elseif (is_array($icalevent['DTSTART']) && !empty($icalevent['DTSTART']['unixtime'])) + } elseif (is_array($icalevent['DTSTART']) && !empty($icalevent['DTSTART']['unixtime'])) { $datecurstart = $icalevent['DTSTART']['unixtime']; $datecurend = $icalevent['DTEND']['unixtime']; @@ -902,9 +868,7 @@ if (count($listofextcals)) } // datecurstart and datecurend are now GMT date //var_dump($datecurstart); var_dump($datecurend); exit; - } - else - { + } else { // Not a recongized record dol_syslog("Found a not recognized repeatable record with unknown date start", LOG_ERR); continue; @@ -928,9 +892,7 @@ if (count($listofextcals)) { $newevent['DTSTART;VALUE=DATE'] = dol_print_date($datecurstart, '%Y%m%d'); $newevent['DTEND;VALUE=DATE'] = dol_print_date($datecurend + 1, '%Y%m%d'); - } - else - { + } else { $newevent['DTSTART'] = $datecurstart; $newevent['DTEND'] = $datecurend; } @@ -948,13 +910,11 @@ if (count($listofextcals)) { $datecurstart = dol_time_plus_duree($datecurstart, $interval, 'w'); $datecurend = dol_time_plus_duree($datecurend, $interval, 'w'); - } - elseif ($icalevent['RRULE']['FREQ'] == 'MONTHLY') + } elseif ($icalevent['RRULE']['FREQ'] == 'MONTHLY') { $datecurstart = dol_time_plus_duree($datecurstart, $interval, 'm'); $datecurend = dol_time_plus_duree($datecurend, $interval, 'm'); - } - elseif ($icalevent['RRULE']['FREQ'] == 'YEARLY') + } elseif ($icalevent['RRULE']['FREQ'] == 'YEARLY') { $datecurstart = dol_time_plus_duree($datecurstart, $interval, 'y'); $datecurend = dol_time_plus_duree($datecurend, $interval, 'y'); @@ -991,8 +951,7 @@ if (count($listofextcals)) //print dol_print_date($dateend,'dayhour','gmt'); $event->fulldayevent = 1; $addevent = true; - } - elseif (!is_array($icalevent['DTSTART'])) // not fullday event (DTSTART is not array. It is a value like '19700101T000000Z' for 00:00 in greenwitch) + } elseif (!is_array($icalevent['DTSTART'])) // not fullday event (DTSTART is not array. It is a value like '19700101T000000Z' for 00:00 in greenwitch) { $datestart = $icalevent['DTSTART']; $dateend = $icalevent['DTEND']; @@ -1003,8 +962,7 @@ if (count($listofextcals)) $addevent = true; //var_dump($offsettz); //var_dump(dol_print_date($datestart, 'dayhour', 'gmt')); - } - elseif (isset($icalevent['DTSTART']['unixtime'])) // File contains a local timezone + a TZ (for example when using bluemind) + } elseif (isset($icalevent['DTSTART']['unixtime'])) // File contains a local timezone + a TZ (for example when using bluemind) { $datestart = $icalevent['DTSTART']['unixtime']; $dateend = $icalevent['DTEND']['unixtime']; @@ -1066,9 +1024,7 @@ if (count($listofextcals)) //print 'x'.$datestart.'-'.$dateend;exit; //print 'x'.$datestart.'-'.$dateend;exit; // This record is out of visible range - } - else - { + } else { if ($event->date_start_in_calendar < $firstdaytoshow) $event->date_start_in_calendar = $firstdaytoshow; if ($event->date_end_in_calendar >= $lastdaytoshow) $event->date_end_in_calendar = ($lastdaytoshow - 1); @@ -1083,14 +1039,12 @@ if (count($listofextcals)) // daykey must be date that represent day box in calendar so must be a user time $daykey = dol_mktime(0, 0, 0, $mois, $jour, $annee); $daykeygmt = dol_mktime(0, 0, 0, $mois, $jour, $annee, true, 0); - do - { + do { //if ($event->fulldayevent) print dol_print_date($daykeygmt,'dayhour','gmt').'-'.dol_print_date($daykey,'dayhour','gmt').'-'.dol_print_date($event->date_end_in_calendar,'dayhour','gmt').' '; $eventarray[$daykey][] = $event; $daykey += 60 * 60 * 24; $daykeygmt += 60 * 60 * 24; // Add one day if (($event->fulldayevent ? $daykeygmt : $daykey) > $event->date_end_in_calendar) $loop = false; - } - while ($loop); + } while ($loop); } } } @@ -1159,8 +1113,7 @@ if (empty($action) || $action == 'show_month') // View by month { $labelshort = array(0=>'SundayMin', 1=>'MondayMin', 2=>'TuesdayMin', 3=>'WednesdayMin', 4=>'ThursdayMin', 5=>'FridayMin', 6=>'SaturdayMin'); print $langs->trans($labelshort[$numdayinweek]); - } - else print $langs->trans("Day".$numdayinweek); + } else print $langs->trans("Day".$numdayinweek); print ' '."\n"; $i++; } @@ -1171,23 +1124,18 @@ if (empty($action) || $action == 'show_month') // View by month // In loops, tmpday contains day nb in current month (can be zero or negative for days of previous month) //var_dump($eventarray); - for ($iter_week = 0; $iter_week < 6; $iter_week++) - { + for ($iter_week = 0; $iter_week < 6; $iter_week++) { echo " \n"; - for ($iter_day = 0; $iter_day < 7; $iter_day++) - { - /* Show days before the beginning of the current month (previous month) */ - if ($tmpday <= 0) - { + for ($iter_day = 0; $iter_day < 7; $iter_day++) { + if ($tmpday <= 0) { + /* Show days before the beginning of the current month (previous month) */ $style = 'cal_other_month cal_past'; - if ($iter_day == 6) $style .= ' cal_other_month_right'; + if ($iter_day == 6) $style .= ' cal_other_month_right'; echo ' '; show_day_events($db, $max_day_in_prev_month + $tmpday, $prev_month, $prev_year, $month, $style, $eventarray, $maxprint, $maxnbofchar, $newparam); echo " \n"; - } - /* Show days of the current month */ - elseif ($tmpday <= $max_day_in_month) - { + } elseif ($tmpday <= $max_day_in_month) { + /* Show days of the current month */ $curtime = dol_mktime(0, 0, 0, $month, $tmpday, $year); $style = 'cal_current_month'; if ($iter_day == 6) $style .= ' cal_current_month_right'; @@ -1199,10 +1147,8 @@ if (empty($action) || $action == 'show_month') // View by month echo ' '; show_day_events($db, $tmpday, $month, $year, $month, $style, $eventarray, $maxprint, $maxnbofchar, $newparam); echo " \n"; - } - /* Show days after the current month (next month) */ - else - { + } else { + /* Show days after the current month (next month) */ $style = 'cal_other_month'; if ($iter_day == 6) $style .= ' cal_other_month_right'; echo ' '; @@ -1219,9 +1165,8 @@ if (empty($action) || $action == 'show_month') // View by month print ''; print ''; print ''; -} -elseif ($action == 'show_week') // View by week -{ +} elseif ($action == 'show_week') { + // View by week $newparam = $param; // newparam is for birthday links $newparam = preg_replace('/showbirthday=/i', 'showbirthday_=', $newparam); // To avoid replacement when replace day= is done $newparam = preg_replace('/action=show_month&?/i', '', $newparam); @@ -1237,8 +1182,7 @@ elseif ($action == 'show_week') // View by week print ''; print ' '; $i = 0; - while ($i < 7) - { + while ($i < 7) { echo ' \n"; $i++; } @@ -1246,8 +1190,7 @@ elseif ($action == 'show_week') // View by week echo " \n"; - for ($iter_day = 0; $iter_day < 7; $iter_day++) - { + for ($iter_day = 0; $iter_day < 7; $iter_day++) { // Show days of the current week $curtime = dol_time_plus_duree($firstdaytoshow, $iter_day, 'd'); $tmparray = dol_getdate($curtime, true); @@ -1274,8 +1217,7 @@ elseif ($action == 'show_week') // View by week echo ''; echo ''; echo ''; -} -else // View by day +} else // View by day { $newparam = $param; // newparam is for birthday links $newparam = preg_replace('/action=show_month&?/i', '', $newparam); @@ -1349,9 +1291,7 @@ else // View by day show_day_events($db, $day, $month, $year, $month, $style, $eventarray, 0, $maxnbofchar, $newparam, 1, 300, 1); print ''; - } - else - { + } else { print '
'; // You can use div-table-responsive-no-min if you dont need reserved height for your table show_day_events($db, $day, $month, $year, $month, $style, $eventarray, 0, $maxnbofchar, $newparam, 1, 300, 0); @@ -1472,8 +1412,7 @@ function show_day_events($db, $day, $month, $year, $monthshown, $style, &$eventa // We decide to choose color of owner of event (event->userownerid is user id of owner, event->userassigned contains all users assigned to event) if (!empty($cacheusers[$event->userownerid]->color)) $color = $cacheusers[$event->userownerid]->color; - } - elseif ($event->type_code == 'ICALEVENT') // Event come from external ical file + } elseif ($event->type_code == 'ICALEVENT') // Event come from external ical file { $numical++; if (!empty($event->icalname)) { @@ -1485,13 +1424,10 @@ function show_day_events($db, $day, $month, $year, $monthshown, $style, &$eventa $color = ($event->icalcolor ? $event->icalcolor : -1); $cssclass = (!empty($event->icalname) ? 'family_ext'.md5($event->icalname) : 'family_other'); - } - elseif ($event->type_code == 'BIRTHDAY') + } elseif ($event->type_code == 'BIRTHDAY') { $numbirthday++; $colorindex = 2; $cssclass = 'family_birthday unmovable'; $color = sprintf("%02x%02x%02x", $theme_datacolor[$colorindex][0], $theme_datacolor[$colorindex][1], $theme_datacolor[$colorindex][2]); - } - else - { + } else { $numother++; $color = ($event->icalcolor ? $event->icalcolor : -1); $cssclass = (!empty($event->icalname) ? 'family_ext'.md5($event->icalname) : 'family_other'); @@ -1515,9 +1451,7 @@ function show_day_events($db, $day, $month, $year, $monthshown, $style, &$eventa if (isset($colorindexused[$idusertouse])) { $colorindex = $colorindexused[$idusertouse]; // Color already assigned to this user - } - else - { + } else { $colorindex = $nextindextouse; $colorindexused[$idusertouse] = $colorindex; if (!empty($theme_datacolor[$nextindextouse + 1])) $nextindextouse++; // Prepare to use next color @@ -1532,8 +1466,7 @@ function show_day_events($db, $day, $month, $year, $monthshown, $style, &$eventa if ($event->type_code == 'AC_OTH_AUTO') { $cssclass .= " unmovable"; - } - elseif ($event->type_code == 'ICALEVENT') + } elseif ($event->type_code == 'ICALEVENT') { $cssclass .= " unmovable"; } elseif ($event->date_end_in_calendar && date('Ymd', $event->date_start_in_calendar) != date('Ymd', $event->date_end_in_calendar)) { @@ -1544,8 +1477,7 @@ function show_day_events($db, $day, $month, $year, $monthshown, $style, &$eventa { $cssclass .= " unmovable"; } - } - else { + } else { if ($user->rights->agenda->allactions->create || (($event->authorid == $user->id || $event->userownerid == $user->id) && $user->rights->agenda->myactions->create)) { @@ -1579,9 +1511,7 @@ function show_day_events($db, $day, $month, $year, $monthshown, $style, &$eventa if (empty($event->transparency) && empty($conf->global->AGENDA_NO_TRANSPARENT_ON_NOT_BUSY)) { print 'border: 2px solid #'.$colortouse.';'; - } - else - { + } else { print 'background: #'.$colortouse.';'; print 'background: -webkit-gradient(linear, left top, left bottom, from(#'.dol_color_minus($colortouse, -3).'), to(#'.dol_color_minus($colortouse, -1).'));'; } @@ -1600,12 +1530,10 @@ function show_day_events($db, $day, $month, $year, $monthshown, $style, &$eventa if ($event->type_code == 'BIRTHDAY') // It's a birthday { print $event->getNomUrl(1, $maxnbofchar, 'cal_event', 'birthday', 'contact'); - } - elseif ($event->type_code == 'HOLIDAY') + } elseif ($event->type_code == 'HOLIDAY') { print $event->getNomUrl(1, $maxnbofchar, 'cal_event', 'holiday', 'user'); - } - elseif ($event->type_code != 'BIRTHDAY' && $event->type_code != 'HOLIDAY') + } elseif ($event->type_code != 'BIRTHDAY' && $event->type_code != 'HOLIDAY') { // Picto if (empty($event->fulldayevent)) @@ -1648,9 +1576,7 @@ function show_day_events($db, $day, $month, $year, $monthshown, $style, &$eventa if ($tmpyearend == $annee && $tmpmonthend == $mois && $tmpdayend == $jour) $daterange .= dol_print_date($event->date_end_in_calendar, '%H:%M'); // Il faudrait utiliser ici tzuser, mais si on ne peut pas car qd on rentre un date dans fiche action, en input la conversion local->gmt se base sur le TZ server et non user } - } - else - { + } else { if ($showinfo) { print $langs->trans("EventOnFullDay")."
\n"; @@ -1705,8 +1631,7 @@ function show_day_events($db, $day, $month, $year, $monthshown, $style, &$eventa $thirdparty = new Societe($db); $thirdparty->fetch($thirdparty_id); $cachethirdparties[$thirdparty_id] = $thirdparty; - } - else $thirdparty = $cachethirdparties[$thirdparty_id]; + } else $thirdparty = $cachethirdparties[$thirdparty_id]; if (!empty($thirdparty->id)) $linerelatedto .= $thirdparty->getNomUrl(1, '', 0); } if (!empty($contact_id) && $contact_id > 0) @@ -1716,8 +1641,7 @@ function show_day_events($db, $day, $month, $year, $monthshown, $style, &$eventa $contact = new Contact($db); $contact->fetch($contact_id); $cachecontacts[$contact_id] = $contact; - } - else $contact = $cachecontacts[$contact_id]; + } else $contact = $cachecontacts[$contact_id]; if ($linerelatedto) $linerelatedto .= ' '; if (!empty($contact->id)) $linerelatedto .= $contact->getNomUrl(1, '', 0); } @@ -1754,9 +1678,7 @@ function show_day_events($db, $day, $month, $year, $monthshown, $style, &$eventa print '
'.$langs->trans("Day".(($i + (isset($conf->global->MAIN_START_WEEK) ? $conf->global->MAIN_START_WEEK : 1)) % 7))."
'; print ''."\n"; $i++; - } - else - { + } else { print 'global->AGENDA_DEFAULT_FILTER_TYPE) ? '' : $conf->global->AGENDA_DEFAULT_FILTER_TYPE)); } if ($actioncode == '' && empty($actioncodearray)) $actioncode = (empty($conf->global->AGENDA_DEFAULT_FILTER_TYPE) ? '' : $conf->global->AGENDA_DEFAULT_FILTER_TYPE); @@ -185,9 +187,42 @@ if (GETPOST('button_removefilter_x', 'alpha') || GETPOST('button_removefilter.x' $datestart = ''; $dateend = ''; $search_status = ''; + $toselect = ''; $search_array_options = array(); } +if (empty($reshook) && !empty($massaction)) +{ + unset($percent); + + switch ($massaction) + { + case 'set_all_events_to_todo': + $percent = ActionComm::EVENT_TODO; + break; + + case 'set_all_events_to_in_progress': + $percent = ActionComm::EVENT_IN_PROGRESS; + break; + + case 'set_all_events_to_finished': + $percent = ActionComm::EVENT_FINISHED; + break; + } + + if (isset($percent)) + { + foreach ($toselect as $toselectid) + { + $result = $object->updatePercent($toselectid, $percent); + if ($result < 0) + { + dol_print_error($db); + break; + } + } + } +} /* * View @@ -239,10 +274,19 @@ if ($optioncss != '') $param .= '&optioncss='.urlencode($optioncss); // Add $param from extra fields include DOL_DOCUMENT_ROOT.'/core/tpl/extrafields_list_search_param.tpl.php'; +// List of mass actions available +$arrayofmassactions = array( + 'set_all_events_to_todo' => $langs->trans("SetAllEventsToTodo"), + 'set_all_events_to_in_progress' => $langs->trans("SetAllEventsToInProgress"), + 'set_all_events_to_finished' => $langs->trans("SetAllEventsToFinished"), +); + +$massactionbutton = $form->selectMassAction('', $arrayofmassactions); + $sql = "SELECT"; if ($usergroup > 0) $sql .= " DISTINCT"; $sql .= " s.nom as societe, s.rowid as socid, s.client, s.email as socemail,"; -$sql .= " a.id, a.label, a.note, a.datep as dp, a.datep2 as dp2, a.fulldayevent, a.location,"; +$sql .= " a.id, a.code, a.label, a.note, a.datep as dp, a.datep2 as dp2, a.fulldayevent, a.location,"; $sql .= ' a.fk_user_author,a.fk_user_action,'; $sql .= " a.fk_contact, a.note, a.percent as percent,"; $sql .= " a.fk_element, a.elementtype, a.datec, a.tms as datem,"; @@ -279,24 +323,18 @@ if (!empty($actioncode)) { if ($actioncode == 'AC_NON_AUTO') $sql .= " AND c.type != 'systemauto'"; elseif ($actioncode == 'AC_ALL_AUTO') $sql .= " AND c.type = 'systemauto'"; - else - { + else { if ($actioncode == 'AC_OTH') $sql .= " AND c.type != 'systemauto'"; if ($actioncode == 'AC_OTH_AUTO') $sql .= " AND c.type = 'systemauto'"; } - } - else - { + } else { if ($actioncode == 'AC_NON_AUTO') $sql .= " AND c.type != 'systemauto'"; elseif ($actioncode == 'AC_ALL_AUTO') $sql .= " AND c.type = 'systemauto'"; - else - { + else { if (is_array($actioncode)) { $sql .= " AND c.code IN ('".implode("','", $actioncode)."')"; - } - else - { + } else { $sql .= " AND c.code IN ('".implode("','", explode(',', $actioncode))."')"; } } @@ -366,6 +404,8 @@ if ($resql) $num = $db->num_rows($resql); + $arrayofselected = is_array($toselect) ? $toselect : array(); + // Local calendar $newtitle = '
'.$langs->trans("LocalAgenda").'  
'; //$newtitle=$langs->trans($title); @@ -385,14 +425,8 @@ if ($resql) print ''; $nav = ''; - //if ($actioncode) $nav.=''; - //if ($resourceid) $nav.=''; if ($filter) $nav .= ''; - //if ($filtert) $nav.=''; - //if ($socid) $nav.=''; if ($showbirthday) $nav .= ''; - //if ($pid) $nav.=''; - //if ($usergroup) $nav.=''; print $nav; dol_fiche_head($head, $tabactive, $langs->trans('Agenda'), 0, 'action'); @@ -424,8 +458,7 @@ if ($resql) if (empty($reshook)) { $s .= $hookmanager->resPrint; - } - elseif ($reshook > 1) + } elseif ($reshook > 1) { $s = $hookmanager->resPrint; } @@ -442,7 +475,7 @@ if ($resql) $newcardbutton .= dolGetButtonTitle($langs->trans('AddAction'), '', 'fa fa-plus-circle', DOL_URL_ROOT.'/comm/action/card.php?action=create&datep='.sprintf("%04d%02d%02d", $tmpforcreatebutton['year'], $tmpforcreatebutton['mon'], $tmpforcreatebutton['mday']).$hourminsec.'&backtopage='.urlencode($_SERVER["PHP_SELF"].($newparam ? '?'.$newparam : ''))); } - print_barre_liste($s, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, '', $num, -1 * $nbtotalofrecords, '', 0, $nav.$newcardbutton, '', $limit, 0, 0, 1); + print_barre_liste($s, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, -1 * $nbtotalofrecords, '', 0, $nav.$newcardbutton, '', $limit, 0, 0, 1); $moreforfilter = ''; @@ -548,13 +581,13 @@ if ($resql) $actionstatic->id = $obj->id; $actionstatic->ref = $obj->id; + $actionstatic->code = $obj->code; $actionstatic->type_code = $obj->type_code; $actionstatic->type_label = $obj->type_label; $actionstatic->type_picto = $obj->type_picto; $actionstatic->label = $obj->label; $actionstatic->location = $obj->location; - $actionstatic->note = dol_htmlentitiesbr($obj->note); // deprecated - $actionstatic->note_public = dol_htmlentitiesbr($obj->note); + $actionstatic->note_private = dol_htmlentitiesbr($obj->note); $actionstatic->fetchResources(); @@ -575,8 +608,7 @@ if ($resql) { $userstatic->fetch($obj->fk_user_action); print $userstatic->getNomUrl(-1); - } - else print ' '; + } else print ' '; print ''; } @@ -584,21 +616,30 @@ if ($resql) if (!empty($arrayfields['c.libelle']['checked'])) { print ''; + $actioncomm = $actionstatic; + // TODO Code common with code into showactions + $imgpicto = ''; if (!empty($conf->global->AGENDA_USE_EVENT_TYPE)) { - if ($actionstatic->type_picto) print img_picto('', $actionstatic->type_picto); - else { - if ($actionstatic->type_code == 'AC_RDV') print img_picto('', 'object_group', '', false, 0, 0, '', '').' '; - elseif ($actionstatic->type_code == 'AC_TEL') print img_picto('', 'object_phoning', '', false, 0, 0, '', '').' '; - elseif ($actionstatic->type_code == 'AC_FAX') print img_picto('', 'object_phoning_fax', '', false, 0, 0, '', '').' '; - elseif ($actionstatic->type_code == 'AC_EMAIL') print img_picto('', 'object_email', '', false, 0, 0, '', '').' '; - elseif ($actionstatic->type_code == 'AC_INT') print img_picto('', 'object_intervention', '', false, 0, 0, '', '').' '; - elseif (!preg_match('/_AUTO/', $actionstatic->type_code)) print img_picto('', 'object_other', '', false, 0, 0, '', '').' '; - } + if ($actioncomm->type_picto) { + $imgpicto = img_picto('', $actioncomm->type_picto); + } else { + if ($actioncomm->type_code == 'AC_RDV') $imgpicto = img_picto('', 'object_group', '', false, 0, 0, '', 'paddingright').' '; + elseif ($actioncomm->type_code == 'AC_TEL') $imgpicto = img_picto('', 'object_phoning', '', false, 0, 0, '', 'paddingright').' '; + elseif ($actioncomm->type_code == 'AC_FAX') $imgpicto = img_picto('', 'object_phoning_fax', '', false, 0, 0, '', 'paddingright').' '; + elseif ($actioncomm->type_code == 'AC_EMAIL') $imgpicto = img_picto('', 'object_email', '', false, 0, 0, '', 'paddingright').' '; + elseif ($actioncomm->type_code == 'AC_INT') $imgpicto = img_picto('', 'object_intervention', '', false, 0, 0, '', 'paddingright').' '; + elseif ($actioncomm->type_code == 'AC_OTH' && $actioncomm->code == 'TICKET_MSG') $imgpicto = img_picto('', 'object_conversation', '', false, 0, 0, '', 'paddingright').' '; + elseif (!preg_match('/_AUTO/', $actioncomm->type_code)) $imgpicto = img_picto('', 'object_other', '', false, 0, 0, '', 'paddingright').' '; + } } + print $imgpicto; + $labeltype = $obj->type_code; if (empty($conf->global->AGENDA_USE_EVENT_TYPE) && empty($arraylist[$labeltype])) $labeltype = 'AC_OTH'; - if (!empty($arraylist[$labeltype])) $labeltype = $arraylist[$labeltype]; + if ($actioncomm->type_code == 'AC_OTH' && $actioncomm->code == 'TICKET_MSG') { + $labeltype = $langs->trans("Message"); + } elseif (!empty($arraylist[$labeltype])) $labeltype = $arraylist[$labeltype]; print dol_trunc($labeltype, 28); print ''; } @@ -613,15 +654,15 @@ if ($resql) // Description if (!empty($arrayfields['a.note']['checked'])) { print ''; - $text = dolGetFirstLineOfText(dol_string_nohtmltag($actionstatic->note, 0)); - print $form->textwithtooltip(dol_trunc($text, 40), $actionstatic->note); + $text = dolGetFirstLineOfText(dol_string_nohtmltag($actionstatic->note_private, 0)); + print $form->textwithtooltip(dol_trunc($text, 40), $actionstatic->note_private); print ''; } $formatToUse = $obj->fulldayevent ? 'day' : 'dayhour'; // Start date if (!empty($arrayfields['a.datep']['checked'])) { - print ''; + print ''; print dol_print_date($db->jdate($obj->dp), $formatToUse); $late = 0; if ($obj->percent == 0 && $obj->dp && $db->jdate($obj->dp) < ($now - $delay_warning)) $late = 1; @@ -634,7 +675,7 @@ if ($resql) // End date if (!empty($arrayfields['a.datep2']['checked'])) { - print ''; + print ''; print dol_print_date($db->jdate($obj->dp2), $formatToUse); print ''; } @@ -650,8 +691,7 @@ if ($resql) $societestatic->email = $obj->socemail; print $societestatic->getNomUrl(1, '', 28); - } - else print ' '; + } else print ' '; print ''; } @@ -673,8 +713,7 @@ if ($resql) $contactListCache[$socpeopleassigned['id']] = $contact->getNomUrl(1, '', 0); $contactList[] = $contact->getNomUrl(1, '', 0); } - } - else { + } else { // use cache $contactList[] = $contactListCache[$socpeopleassigned['id']]; } @@ -682,8 +721,7 @@ if ($resql) if (!empty($contactList)) { print implode(', ', $contactList); } - } - elseif ($obj->fk_contact > 0) //keep for retrocompatibility with faraway event + } elseif ($obj->fk_contact > 0) //keep for retrocompatibility with faraway event { $contactstatic->id = $obj->fk_contact; $contactstatic->email = $obj->email; @@ -694,9 +732,7 @@ if ($resql) $contactstatic->phone_perso = $obj->phone_perso; $contactstatic->country_id = $obj->country_id; print $contactstatic->getNomUrl(1, '', 0); - } - else - { + } else { print " "; } print ''; @@ -718,7 +754,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, 'totalarray'=>&$totalarray); $reshook = $hookmanager->executeHooks('printFieldListValue', $parameters); // Note that $action and $object may have been modified by hook print $hookmanager->resPrint; @@ -736,7 +772,15 @@ if ($resql) $datep = $db->jdate($obj->datep); print ''.$actionstatic->LibStatut($obj->percent, 5, 0, $datep).''; } - 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 + { + $selected = 0; + if (in_array($obj->id, $arrayofselected)) $selected = 1; + print ''; + } + print ''; print "\n"; $i++; @@ -746,9 +790,7 @@ if ($resql) print ''; $db->free($resql); -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/comm/action/pertype.php b/htdocs/comm/action/pertype.php index 6dfbc6c7f9c..a769d709c4d 100644 --- a/htdocs/comm/action/pertype.php +++ b/htdocs/comm/action/pertype.php @@ -93,9 +93,7 @@ if (GETPOST('actioncode', 'array')) { $actioncode = GETPOST('actioncode', 'array', 3); if (!count($actioncode)) $actioncode = '0'; -} -else -{ +} else { $actioncode = GETPOST("actioncode", "alpha", 3) ?GETPOST("actioncode", "alpha", 3) : (GETPOST("actioncode", "alpha") == '0' ? '0' : (empty($conf->global->AGENDA_DEFAULT_FILTER_TYPE) ? '' : $conf->global->AGENDA_DEFAULT_FILTER_TYPE)); } if ($actioncode == '' && empty($actioncodearray)) $actioncode = (empty($conf->global->AGENDA_DEFAULT_FILTER_TYPE) ? '' : $conf->global->AGENDA_DEFAULT_FILTER_TYPE); @@ -329,8 +327,7 @@ if ($conf->use_javascript_ajax) if (empty($reshook)) { $s .= $hookmanager->resPrint; - } - elseif ($reshook > 1) + } elseif ($reshook > 1) { $s = $hookmanager->resPrint; } @@ -372,18 +369,14 @@ if (!empty($actioncode)) { if ($actioncode == 'AC_NON_AUTO') $sql .= " AND ca.type != 'systemauto'"; elseif ($actioncode == 'AC_ALL_AUTO') $sql .= " AND ca.type = 'systemauto'"; - else - { + else { if ($actioncode == 'AC_OTH') $sql .= " AND ca.type != 'systemauto'"; if ($actioncode == 'AC_OTH_AUTO') $sql .= " AND ca.type = 'systemauto'"; } - } - else - { + } else { if ($actioncode == 'AC_NON_AUTO') $sql .= " AND ca.type != 'systemauto'"; elseif ($actioncode == 'AC_ALL_AUTO') $sql .= " AND ca.type = 'systemauto'"; - else - { + else { $sql .= " AND ca.code IN ('".implode("','", explode(',', $actioncode))."')"; } } @@ -406,9 +399,7 @@ if ($action == 'show_day') $sql .= " (a.datep < '".$db->idate(dol_mktime(0, 0, 0, $month, $day, $year))."'"; $sql .= " AND a.datep2 > '".$db->idate(dol_mktime(23, 59, 59, $month, $day, $year))."')"; $sql .= ')'; -} -else -{ +} else { // To limit array $sql .= " AND ("; $sql .= " (a.datep BETWEEN '".$db->idate(dol_mktime(0, 0, 0, 1, 1, $year) - (60 * 60 * 24 * 7))."'"; // Start 7 days before @@ -490,9 +481,7 @@ if ($resql) $event->date_start_in_calendar = $datep; if ($datep2 != '' && $datep2 >= $datep) $event->date_end_in_calendar = $datep2; else $event->date_end_in_calendar = $datep; - } - else - { + } else { $event->date_start_in_calendar = $datep; if ($datep2 != '' && $datep2 >= $datep) $event->date_end_in_calendar = $datep2; else $event->date_end_in_calendar = $datep; @@ -509,9 +498,7 @@ if ($resql) { // This record is out of visible range unset($event); - } - else - { + } else { //print $i.' - '.dol_print_date($this->date_start_in_calendar, 'dayhour').' - '.dol_print_date($this->date_end_in_calendar, 'dayhour').'
'."\n"; $event->fetch_userassigned(); // This load $event->userassigned @@ -527,8 +514,7 @@ if ($resql) // Loop on each day covered by action to prepare an index to show on calendar $loop = true; $j = 0; $daykey = dol_mktime(0, 0, 0, $mois, $jour, $annee); - do - { + do { //if ($event->id==408) print 'daykey='.$daykey.' '.$event->datep.' '.$event->datef.'
'; $eventarray[$daykey][] = $event; @@ -536,17 +522,14 @@ if ($resql) $daykey += 60 * 60 * 24; if ($daykey > $event->date_end_in_calendar) $loop = false; - } - while ($loop); + } while ($loop); //print 'Event '.$i.' id='.$event->id.' (start='.dol_print_date($event->datep).'-end='.dol_print_date($event->datef); //print ' startincalendar='.dol_print_date($event->date_start_in_calendar).'-endincalendar='.dol_print_date($event->date_end_in_calendar).') was added in '.$j.' different index key of array
'; } $i++; } -} -else -{ +} else { dol_print_error($db); } @@ -808,8 +791,7 @@ function show_day_events_pertype($username, $day, $month, $year, $monthshown, $s { $nummytasks++; $cssclass = 'family_mytasks'; if (!empty($conf->global->AGENDA_USE_EVENT_TYPE)) $color = $event->type_color; - } - elseif ($event->type_code == 'ICALEVENT') + } elseif ($event->type_code == 'ICALEVENT') { $numical++; if (!empty($event->icalname)) @@ -822,13 +804,10 @@ function show_day_events_pertype($username, $day, $month, $year, $monthshown, $s $color = $event->icalcolor; $cssclass = (!empty($event->icalname) ? 'family_ext'.md5($event->icalname) : 'family_other unsortable'); - } - elseif ($event->type_code == 'BIRTHDAY') + } elseif ($event->type_code == 'BIRTHDAY') { $numbirthday++; $colorindex = 2; $cssclass = 'family_birthday unsortable'; $color = sprintf("%02x%02x%02x", $theme_datacolor[$colorindex][0], $theme_datacolor[$colorindex][1], $theme_datacolor[$colorindex][2]); - } - else - { + } else { $numother++; $cssclass = 'family_other'; if (!empty($conf->global->AGENDA_USE_EVENT_TYPE)) $color = $event->type_color; } @@ -840,9 +819,7 @@ function show_day_events_pertype($username, $day, $month, $year, $monthshown, $s if (isset($colorindexused[$idusertouse])) { $colorindex = $colorindexused[$idusertouse]; // Color already assigned to this user - } - else - { + } else { $colorindex = $nextindextouse; $colorindexused[$idusertouse] = $colorindex; if (!empty($theme_datacolor[$nextindextouse + 1])) $nextindextouse++; // Prepare to use next color @@ -960,9 +937,7 @@ function show_day_events_pertype($username, $day, $month, $year, $monthshown, $s $cases2[$h][$event->id]['string'] .= ', '.$cachecontacts[$event->contactid]->getFullName($langs); } } - } - else - { + } else { $busy = $event->transparency; $cases1[$h][$event->id]['busy'] = $busy; $cases2[$h][$event->id]['busy'] = $busy; @@ -1025,8 +1000,7 @@ function show_day_events_pertype($username, $day, $month, $year, $monthshown, $s $title1 = $langs->trans("Ref").' '.$ids1.($title1 ? ' - '.$title1 : ''); if ($output[0]['string']) $title1 .= ($title1 ? ' - ' : '').$output[0]['string']; if ($output[0]['color']) $color1 = $output[0]['color']; - } - elseif (count($cases1[$h]) > 1) + } elseif (count($cases1[$h]) > 1) { $title1 = $langs->trans("Ref").' '.$ids1.($title1 ? ' - '.$title1 : ''); $color1 = '222222'; @@ -1038,8 +1012,7 @@ function show_day_events_pertype($username, $day, $month, $year, $monthshown, $s $title2 = $langs->trans("Ref").' '.$ids2.($title2 ? ' - '.$title2 : ''); if ($output[0]['string']) $title2 .= ($title2 ? ' - ' : '').$output[0]['string']; if ($output[0]['color']) $color2 = $output[0]['color']; - } - elseif (count($cases2[$h]) > 1) + } elseif (count($cases2[$h]) > 1) { $title2 = $langs->trans("Ref").' '.$ids2.($title2 ? ' - '.$title2 : ''); $color2 = '222222'; diff --git a/htdocs/comm/action/peruser.php b/htdocs/comm/action/peruser.php index f2cce5c8023..ef2c60e5ae6 100644 --- a/htdocs/comm/action/peruser.php +++ b/htdocs/comm/action/peruser.php @@ -94,9 +94,7 @@ if (GETPOST('search_actioncode', 'array')) { $actioncode = GETPOST('search_actioncode', 'array', 3); if (!count($actioncode)) $actioncode = '0'; -} -else -{ +} else { $actioncode = GETPOST("search_actioncode", "alpha", 3) ?GETPOST("search_actioncode", "alpha", 3) : (GETPOST("search_actioncode", "alpha") == '0' ? '0' : (empty($conf->global->AGENDA_DEFAULT_FILTER_TYPE) ? '' : $conf->global->AGENDA_DEFAULT_FILTER_TYPE)); } if ($actioncode == '' && empty($actioncodearray)) $actioncode = (empty($conf->global->AGENDA_DEFAULT_FILTER_TYPE) ? '' : $conf->global->AGENDA_DEFAULT_FILTER_TYPE); @@ -376,8 +374,7 @@ if ($conf->use_javascript_ajax) if (empty($reshook)) { $s .= $hookmanager->resPrint; - } - elseif ($reshook > 1) + } elseif ($reshook > 1) { $s = $hookmanager->resPrint; } @@ -431,24 +428,18 @@ if (!empty($actioncode)) { if ($actioncode == 'AC_NON_AUTO') $sql .= " AND ca.type != 'systemauto'"; elseif ($actioncode == 'AC_ALL_AUTO') $sql .= " AND ca.type = 'systemauto'"; - else - { + else { if ($actioncode == 'AC_OTH') $sql .= " AND ca.type != 'systemauto'"; if ($actioncode == 'AC_OTH_AUTO') $sql .= " AND ca.type = 'systemauto'"; } - } - else - { + } else { if ($actioncode == 'AC_NON_AUTO') $sql .= " AND ca.type != 'systemauto'"; elseif ($actioncode == 'AC_ALL_AUTO') $sql .= " AND ca.type = 'systemauto'"; - else - { + else { if (is_array($actioncode)) { $sql .= " AND ca.code IN ('".implode("','", $actioncode)."')"; - } - else - { + } else { $sql .= " AND ca.code IN ('".implode("','", explode(',', $actioncode))."')"; } } @@ -472,9 +463,7 @@ if ($action == 'show_day') $sql .= " (a.datep < '".$db->idate(dol_mktime(0, 0, 0, $month, $day, $year))."'"; $sql .= " AND a.datep2 > '".$db->idate(dol_mktime(23, 59, 59, $month, $day, $year))."')"; $sql .= ')'; -} -else -{ +} else { // To limit array $sql .= " AND ("; $sql .= " (a.datep BETWEEN '".$db->idate($firstdaytoshow - (60 * 60 * 24 * 2))."'"; // Start 2 day before $firstdaytoshow @@ -557,9 +546,7 @@ if ($resql) $event->date_start_in_calendar = $datep; if ($datep2 != '' && $datep2 >= $datep) $event->date_end_in_calendar = $datep2; else $event->date_end_in_calendar = $datep; - } - else - { + } else { $event->date_start_in_calendar = $datep; if ($datep2 != '' && $datep2 >= $datep) $event->date_end_in_calendar = $datep2; else $event->date_end_in_calendar = $datep; @@ -576,9 +563,7 @@ if ($resql) { // This record is out of visible range unset($event); - } - else - { + } else { //print $i.' - '.dol_print_date($this->date_start_in_calendar, 'dayhour').' - '.dol_print_date($this->date_end_in_calendar, 'dayhour').'
'."\n"; $event->fetch_userassigned(); // This load $event->userassigned @@ -594,8 +579,7 @@ if ($resql) // Loop on each day covered by action to prepare an index to show on calendar $loop = true; $j = 0; $daykey = dol_mktime(0, 0, 0, $mois, $jour, $annee); - do - { + do { //if ($event->id==408) print 'daykey='.$daykey.' '.$event->datep.' '.$event->datef.'
'; $eventarray[$daykey][] = $event; @@ -603,8 +587,7 @@ if ($resql) $daykey += 60 * 60 * 24; if ($daykey > $event->date_end_in_calendar) $loop = false; - } - while ($loop); + } while ($loop); //print 'Event '.$i.' id='.$event->id.' (start='.dol_print_date($event->datep).'-end='.dol_print_date($event->datef); //print ' startincalendar='.dol_print_date($event->date_start_in_calendar).'-endincalendar='.dol_print_date($event->date_end_in_calendar).') was added in '.$j.' different index key of array
'; @@ -612,9 +595,7 @@ if ($resql) $i++; } $db->free($resql); -} -else -{ +} else { dol_print_error($db); } @@ -713,16 +694,13 @@ while ($currentdaytoshow < $lastdaytoshow) { { $event->fetch_userassigned(); $listofuserid = $event->userassigned; - foreach ($listofuserid as $userid => $tmp) - { + foreach ($listofuserid as $userid => $tmp) { if (!in_array($userid, $usernamesid)) $usernamesid[$userid] = $userid; } } } - } - /* Use this list to have for all users */ - else - { + } else { + /* Use this list to have for all users */ $sql = "SELECT u.rowid, u.lastname as lastname, u.firstname, u.statut, u.login, u.admin, u.entity"; $sql .= " FROM ".MAIN_DB_PREFIX."user as u"; if ($usergroup > 0) $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."usergroup_user as ug ON u.rowid = ug.fk_user"; @@ -730,8 +708,7 @@ while ($currentdaytoshow < $lastdaytoshow) { if ($usergroup > 0) $sql .= " AND ug.fk_usergroup = ".$usergroup; //print $sql; $resql = $db->query($sql); - if ($resql) - { + if ($resql) { $num = $db->num_rows($resql); $i = 0; if ($num) @@ -743,8 +720,7 @@ while ($currentdaytoshow < $lastdaytoshow) { $i++; } } - } - else dol_print_error($db); + } else dol_print_error($db); } //var_dump($usernamesid); foreach ($usernamesid as $id) @@ -992,8 +968,7 @@ function show_day_events2($username, $day, $month, $year, $monthshown, $style, & if (!empty($cacheusers[$event->userownerid]->color)) $color = $cacheusers[$event->userownerid]->color; if (!empty($conf->global->AGENDA_USE_COLOR_PER_EVENT_TYPE)) $color = $event->type_color; - } - elseif ($event->type_code == 'ICALEVENT') + } elseif ($event->type_code == 'ICALEVENT') { $numical++; if (!empty($event->icalname)) @@ -1006,13 +981,10 @@ function show_day_events2($username, $day, $month, $year, $monthshown, $style, & $color = $event->icalcolor; $cssclass = (!empty($event->icalname) ? 'family_ext'.md5($event->icalname) : 'family_other unsortable'); - } - elseif ($event->type_code == 'BIRTHDAY') + } elseif ($event->type_code == 'BIRTHDAY') { $numbirthday++; $colorindex = 2; $cssclass = 'family_birthday unsortable'; $color = sprintf("%02x%02x%02x", $theme_datacolor[$colorindex][0], $theme_datacolor[$colorindex][1], $theme_datacolor[$colorindex][2]); - } - else - { + } else { $numother++; $color = ($event->icalcolor ? $event->icalcolor : -1); $cssclass = (!empty($event->icalname) ? 'family_ext'.md5($event->icalname) : 'family_other'); @@ -1038,9 +1010,7 @@ function show_day_events2($username, $day, $month, $year, $monthshown, $style, & if (isset($colorindexused[$idusertouse])) { $colorindex = $colorindexused[$idusertouse]; // Color already assigned to this user - } - else - { + } else { $colorindex = $nextindextouse; $colorindexused[$idusertouse] = $colorindex; if (!empty($theme_datacolor[$nextindextouse + 1])) $nextindextouse++; // Prepare to use next color @@ -1158,9 +1128,7 @@ function show_day_events2($username, $day, $month, $year, $monthshown, $style, & $cases2[$h][$event->id]['string'] .= ', '.$cachecontacts[$event->contactid]->getFullName($langs); } } - } - else - { + } else { $busy = $event->transparency; $cases1[$h][$event->id]['busy'] = $busy; $cases2[$h][$event->id]['busy'] = $busy; @@ -1224,8 +1192,7 @@ function show_day_events2($username, $day, $month, $year, $monthshown, $style, & $title1 = $langs->trans("Ref").' '.$ids1.($title1 ? ' - '.$title1 : ''); if ($output[0]['string']) $title1 .= ($title1 ? ' - ' : '').$output[0]['string']; if ($output[0]['color']) $color1 = $output[0]['color']; - } - elseif (is_array($cases1[$h]) && count($cases1[$h]) > 1) + } elseif (is_array($cases1[$h]) && count($cases1[$h]) > 1) { $title1 = $langs->trans("Ref").' '.$ids1.($title1 ? ' - '.$title1 : ''); $color1 = '222222'; @@ -1237,8 +1204,7 @@ function show_day_events2($username, $day, $month, $year, $monthshown, $style, & $title2 = $langs->trans("Ref").' '.$ids2.($title2 ? ' - '.$title2 : ''); if ($output[0]['string']) $title2 .= ($title2 ? ' - ' : '').$output[0]['string']; if ($output[0]['color']) $color2 = $output[0]['color']; - } - elseif (is_array($cases2[$h]) && count($cases2[$h]) > 1) + } elseif (is_array($cases2[$h]) && count($cases2[$h]) > 1) { $title2 = $langs->trans("Ref").' '.$ids2.($title2 ? ' - '.$title2 : ''); $color2 = '222222'; diff --git a/htdocs/comm/action/rapport/index.php b/htdocs/comm/action/rapport/index.php index 82477d307fc..35c0f7a890e 100644 --- a/htdocs/comm/action/rapport/index.php +++ b/htdocs/comm/action/rapport/index.php @@ -186,8 +186,7 @@ if ($resql) print ''; print ''.dol_print_date(dol_filemtime($file), 'dayhour').''; print ''.dol_print_size(dol_filesize($file)).''; - } - else { + } else { print ' '; print ' '; print ' '; @@ -202,9 +201,7 @@ if ($resql) print ''; $db->free($resql); -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/comm/card.php b/htdocs/comm/card.php index f1ea3c0923d..b3b11a95a36 100644 --- a/htdocs/comm/card.php +++ b/htdocs/comm/card.php @@ -5,7 +5,7 @@ * Copyright (C) 2006 Andre Cianfarani * Copyright (C) 2005-2017 Regis Houssin * Copyright (C) 2008 Raphael Bertrand (Resultic) - * Copyright (C) 2010-2014 Juanjo Menent + * Copyright (C) 2010-2020 Juanjo Menent * Copyright (C) 2013 Alexandre Spangaro * Copyright (C) 2015-2019 Frédéric France * Copyright (C) 2015 Marcos García @@ -65,11 +65,12 @@ $result = restrictedArea($user, 'societe', $id, '&societe'); $action = GETPOST('action', 'aZ09'); $mode = GETPOST("mode"); +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; if (!$sortorder) $sortorder = "ASC"; @@ -329,9 +330,7 @@ if ($object->id > 0) if ($action == 'editconditions') { $form->form_conditions_reglement($_SERVER['PHP_SELF'].'?socid='.$object->id, $object->cond_reglement_id, 'cond_reglement_id', 1); - } - else - { + } else { $form->form_conditions_reglement($_SERVER['PHP_SELF'].'?socid='.$object->id, $object->cond_reglement_id, 'none'); } print ""; @@ -348,9 +347,7 @@ if ($object->id > 0) if ($action == 'editmode') { $form->form_modes_reglement($_SERVER['PHP_SELF'].'?socid='.$object->id, $object->mode_reglement_id, 'mode_reglement_id', 'CRDT', 1, 1); - } - else - { + } else { $form->form_modes_reglement($_SERVER['PHP_SELF'].'?socid='.$object->id, $object->mode_reglement_id, 'none'); } print ""; @@ -369,9 +366,7 @@ if ($object->id > 0) if ($action == 'editbankaccount') { $form->formSelectAccount($_SERVER['PHP_SELF'].'?socid='.$object->id, $object->fk_account, 'fk_account', 1); - } - else - { + } else { $form->formSelectAccount($_SERVER['PHP_SELF'].'?socid='.$object->id, $object->fk_account, 'none'); } print ""; @@ -477,9 +472,7 @@ if ($object->id > 0) if ($action == 'editshipping') { $form->formSelectShippingMethod($_SERVER['PHP_SELF'].'?socid='.$object->id, $object->shipping_method_id, 'shipping_method_id', 1); - } - else - { + } else { $form->formSelectShippingMethod($_SERVER['PHP_SELF'].'?socid='.$object->id, $object->shipping_method_id, 'none'); } print ""; @@ -516,9 +509,7 @@ if ($object->id > 0) { $adh->ref = $adh->getFullName($langs); print $adh->getNomUrl(1); - } - else - { + } else { print ''.$langs->trans("ThirdpartyNotLinkedToMember").''; } print ''; @@ -545,9 +536,7 @@ if ($object->id > 0) if ($action == 'editlevel') { $formcompany->form_prospect_level($_SERVER['PHP_SELF'].'?socid='.$object->id, $object->fk_prospectlevel, 'prospect_level_id', 1); - } - else - { + } else { print $object->getLibProspLevel(); } print ""; @@ -581,7 +570,7 @@ if ($object->id > 0) $boxstat .= ''; $boxstat .= '
'; - if (!empty($conf->propal->enabled)) + if (!empty($conf->propal->enabled) && $user->rights->propal->lire) { // Box proposals $tmp = $object->getOutstandingProposals(); @@ -599,7 +588,7 @@ if ($object->id > 0) if ($link) $boxstat .= ''; } - if (!empty($conf->commande->enabled)) + if (!empty($conf->commande->enabled) && $user->rights->commande->lire) { // Box commandes $tmp = $object->getOutstandingOrders(); @@ -617,7 +606,7 @@ if ($object->id > 0) if ($link) $boxstat .= ''; } - if (!empty($conf->facture->enabled)) + if (!empty($conf->facture->enabled) && $user->rights->facture->lire) { // Box factures $tmp = $object->getOutstandingBills(); @@ -730,9 +719,7 @@ if ($object->id > 0) print "
"; print ''; } - } - else - { + } else { dol_print_error($db); } } @@ -816,9 +803,7 @@ if ($object->id > 0) print ""; print ''; } - } - else - { + } else { dol_print_error($db); } } @@ -959,9 +944,7 @@ if ($object->id > 0) print ""; print ''; } - } - else - { + } else { dol_print_error($db); } } @@ -1020,9 +1003,7 @@ if ($object->id > 0) print ""; print ''; } - } - else - { + } else { dol_print_error($db); } } @@ -1091,15 +1072,11 @@ if ($object->id > 0) if ($objp->frequency && $objp->date_last_gen > 0) { print ''.dol_print_date($db->jdate($objp->date_last_gen), 'day').''; - } - else - { + } else { if ($objp->dc > 0) { print ''.dol_print_date($db->jdate($objp->dc), 'day').''; - } - else - { + } else { print '!!!'; } } @@ -1128,9 +1105,7 @@ if ($object->id > 0) print ""; print ''; } - } - else - { + } else { dol_print_error($db); } } @@ -1193,9 +1168,7 @@ if ($object->id > 0) if ($objp->df > 0) { print ''.dol_print_date($db->jdate($objp->df), 'day').''; - } - else - { + } else { print '!!!'; } print ''; @@ -1220,9 +1193,7 @@ if ($object->id > 0) print ""; print ''; } - } - else - { + } else { dol_print_error($db); } } @@ -1287,9 +1258,7 @@ if ($object->id > 0) if (empty($user->rights->facture->creer)) { print '
'; - } - else - { + } else { $langs->load("bills"); $langs->load("orders"); @@ -1299,8 +1268,7 @@ if ($object->id > 0) { if (!empty($orders2invoice) && $orders2invoice > 0) print ''; else print ''; - } - else print ''; + } else print ''; } if ($object->client != 0 && $object->client != 2) print ''; @@ -1315,9 +1283,7 @@ if ($object->id > 0) if ($user->rights->agenda->myactions->create) { print ''; - } - else - { + } else { print ''; } } @@ -1341,9 +1307,7 @@ if ($object->id > 0) // List of done actions show_actions_done($conf, $langs, $db, $object); } -} -else -{ +} else { $langs->load("errors"); print $langs->trans('ErrorRecordNotFound'); } diff --git a/htdocs/comm/contact.php b/htdocs/comm/contact.php index 8c9a63d97e2..d3075916367 100644 --- a/htdocs/comm/contact.php +++ b/htdocs/comm/contact.php @@ -170,9 +170,7 @@ if ($resql) print ''; $db->free($resql); -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/comm/index.php b/htdocs/comm/index.php index f11c53f3352..b542a110832 100644 --- a/htdocs/comm/index.php +++ b/htdocs/comm/index.php @@ -35,7 +35,7 @@ if (!empty($conf->contrat->enabled)) require_once DOL_DOCUMENT_ROOT.'/contrat/cl if (!empty($conf->propal->enabled)) require_once DOL_DOCUMENT_ROOT.'/comm/propal/class/propal.class.php'; if (!empty($conf->supplier_proposal->enabled)) require_once DOL_DOCUMENT_ROOT.'/supplier_proposal/class/supplier_proposal.class.php'; if (!empty($conf->commande->enabled)) require_once DOL_DOCUMENT_ROOT.'/commande/class/commande.class.php'; -if (!empty($conf->fournisseur->enabled)) require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.commande.class.php'; +if (!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || ! empty($conf->supplier_order->enabled)) require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.commande.class.php'; if (!$user->rights->societe->lire) accessforbidden(); @@ -76,7 +76,7 @@ $companystatic = new Societe($db); if (!empty($conf->propal->enabled)) $propalstatic = new Propal($db); if (!empty($conf->supplier_proposal->enabled)) $supplierproposalstatic = new SupplierProposal($db); if (!empty($conf->commande->enabled)) $orderstatic = new Commande($db); -if (!empty($conf->fournisseur->enabled)) $supplierorderstatic = new CommandeFournisseur($db); +if (!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || !empty($conf->supplier_order->enabled)) $supplierorderstatic = new CommandeFournisseur($db); llxHeader("", $langs->trans("CommercialArea")); @@ -102,7 +102,7 @@ if (!empty($conf->global->MAIN_SEARCH_FORM_ON_HOME_AREAS)) // This is useles $listofsearchfields['search_supplier_proposal'] = array('text'=>'SupplierProposalShort'); } // Search supplier order - if (!empty($conf->fournisseur->enabled) && $user->rights->fournisseur->commande->lire) + if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || !empty($conf->supplier_order->enabled)) && $user->rights->fournisseur->commande->lire) { $listofsearchfields['search_supplier_order'] = array('text'=>'SupplierOrder'); } @@ -209,22 +209,17 @@ if (!empty($conf->propal->enabled) && $user->rights->propal->lire) if ($num > $nbofloop) { print ''.$langs->trans("XMoreLines", ($num - $nbofloop)).""; - } - elseif ($total > 0) + } elseif ($total > 0) { print ''.$langs->trans("Total").''.price($total).""; } - } - else - { + } else { print ''.$langs->trans("NoProposal").''; } print "
"; $db->free($resql); - } - else - { + } else { dol_print_error($db); } } @@ -297,22 +292,17 @@ if (!empty($conf->supplier_proposal->enabled) && $user->rights->supplier_proposa if ($num > $nbofloop) { print ''.$langs->trans("XMoreLines", ($num - $nbofloop)).""; - } - elseif ($total > 0) + } elseif ($total > 0) { print ''.$langs->trans("Total").''.price($total).""; } - } - else - { + } else { print ''.$langs->trans("NoProposal").''; } print "
"; $db->free($resql); - } - else - { + } else { dol_print_error($db); } } @@ -379,8 +369,7 @@ if (!empty($conf->commande->enabled) && $user->rights->commande->lire) print ''; if (!empty($conf->global->MAIN_DASHBOARD_USE_TOTAL_HT)) { print ''.price($obj->total_ht).''; - } - else { + } else { print ''.price($obj->total_ttc).''; } $i++; @@ -389,23 +378,18 @@ if (!empty($conf->commande->enabled) && $user->rights->commande->lire) if ($num > $nbofloop) { print ''.$langs->trans("XMoreLines", ($num - $nbofloop)).""; - } - elseif ($total > 0) + } elseif ($total > 0) { print ''.$langs->trans("Total").''.price($total).""; } - } - else - { + } else { print ''.$langs->trans("NoOrder").''; } print ""; print "
"; $db->free($resql); - } - else - { + } else { dol_print_error($db); } } @@ -414,7 +398,7 @@ if (!empty($conf->commande->enabled) && $user->rights->commande->lire) /* * Draft suppliers orders */ -if (!empty($conf->fournisseur->enabled) && $user->rights->fournisseur->commande->lire) +if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || !empty($conf->supplier_order->enabled)) && $user->rights->fournisseur->commande->lire) { $langs->load("orders"); @@ -472,8 +456,7 @@ if (!empty($conf->fournisseur->enabled) && $user->rights->fournisseur->commande- print ''; if (!empty($conf->global->MAIN_DASHBOARD_USE_TOTAL_HT)) { print ''.price($obj->total_ht).''; - } - else { + } else { print ''.price($obj->total_ttc).''; } $i++; @@ -482,14 +465,11 @@ if (!empty($conf->fournisseur->enabled) && $user->rights->fournisseur->commande- if ($num > $nbofloop) { print ''.$langs->trans("XMoreLines", ($num - $nbofloop)).""; - } - elseif ($total > 0) + } elseif ($total > 0) { print ''.$langs->trans("Total").''.price($total).""; } - } - else - { + } else { print ''.$langs->trans("NoSupplierOrder").''; } print ""; @@ -570,9 +550,7 @@ if (!empty($conf->societe->enabled) && $user->rights->societe->lire) } $db->free($resql); - } - else - { + } else { print ''.$langs->trans("None").''; } print ""; @@ -581,7 +559,7 @@ if (!empty($conf->societe->enabled) && $user->rights->societe->lire) } // Last suppliers -if (!empty($conf->fournisseur->enabled) && $user->rights->societe->lire) +if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)) && $user->rights->societe->lire) { $langs->load("boxes"); @@ -629,9 +607,7 @@ if (!empty($conf->fournisseur->enabled) && $user->rights->societe->lire) $i++; } - } - else - { + } else { print ''.$langs->trans("None").''; } print ''; @@ -717,9 +693,7 @@ if (!empty($conf->contrat->enabled) && $user->rights->contrat->lire && 0) // TOD print ""; print "
"; } - } - else - { + } else { dol_print_error($db); } } @@ -805,8 +779,7 @@ if (!empty($conf->propal->enabled) && $user->rights->propal->lire) print dol_print_date($db->jdate($obj->dp), 'day').''."\n"; if (!empty($conf->global->MAIN_DASHBOARD_USE_TOTAL_HT)) { print ''.price($obj->total_ht).''; - } - else { + } else { print ''.price($obj->total_ttc).''; } print ''.$propalstatic->LibStatut($obj->fk_statut, 3).''."\n"; @@ -817,17 +790,14 @@ if (!empty($conf->propal->enabled) && $user->rights->propal->lire) if ($num > $nbofloop) { print ''.$langs->trans("XMoreLines", ($num - $nbofloop)).""; - } - elseif ($total > 0) + } elseif ($total > 0) { print ''.$langs->trans("Total")."".price($total)." "; } print ""; print "
"; } - } - else - { + } else { dol_print_error($db); } } @@ -913,8 +883,7 @@ if (!empty($conf->commande->enabled) && $user->rights->commande->lire) print dol_print_date($db->jdate($obj->dp), 'day').''."\n"; if (!empty($conf->global->MAIN_DASHBOARD_USE_TOTAL_HT)) { print ''.price($obj->total_ht).''; - } - else { + } else { print ''.price($obj->total_ttc).''; } print ''.$orderstatic->LibStatut($obj->fk_statut, $obj->billed, 3).''."\n"; @@ -925,17 +894,14 @@ if (!empty($conf->commande->enabled) && $user->rights->commande->lire) if ($num > $nbofloop) { print ''.$langs->trans("XMoreLines", ($num - $nbofloop)).""; - } - elseif ($total > 0) + } elseif ($total > 0) { print ''.$langs->trans("Total")."".price($total)." "; } print ""; print "
"; } - } - else - { + } else { dol_print_error($db); } } diff --git a/htdocs/comm/mailing/advtargetemailing.php b/htdocs/comm/mailing/advtargetemailing.php index b716790aa8f..da24f7bcb4f 100644 --- a/htdocs/comm/mailing/advtargetemailing.php +++ b/htdocs/comm/mailing/advtargetemailing.php @@ -87,9 +87,7 @@ if (empty($template_id)) { if ($result < 0) { setEventMessages($advTarget->error, $advTarget->errors, 'errors'); -} -else -{ +} else { if (!empty($advTarget->id)) { $array_query = json_decode($advTarget->filtervalue, true); } @@ -147,15 +145,15 @@ if ($action == 'add') { if (preg_match("/st_dt/", $key)) { $dtarr = array(); $dtarr = explode('_', $key); - if (!array_key_exists('options_'.$dtarr[1].'_st_dt'.'_cnct', $array_query)) { - $array_query['options_'.$dtarr[1].'_st_dt'.'_cnct'] = dol_mktime(0, 0, 0, GETPOST('options_'.$dtarr[1].'_st_dtmonth'.'_cnct', 'int'), GETPOST('options_'.$dtarr[1].'_st_dtday'.'_cnct', 'int'), GETPOST('options_'.$dtarr[1].'_st_dtyear'.'_cnct', 'int')); + if (!array_key_exists('options_'.$dtarr[1].'_st_dt_cnct', $array_query)) { + $array_query['options_'.$dtarr[1].'_st_dt_cnct'] = dol_mktime(0, 0, 0, GETPOST('options_'.$dtarr[1].'_st_dtmonth_cnct', 'int'), GETPOST('options_'.$dtarr[1].'_st_dtday_cnct', 'int'), GETPOST('options_'.$dtarr[1].'_st_dtyear_cnct', 'int')); } } elseif (preg_match("/end_dt/", $key)) { // Special case for end date come with 3 inputs day, month, year $dtarr = array(); $dtarr = explode('_', $key); - if (!array_key_exists('options_'.$dtarr[1].'_end_dt'.'_cnct', $array_query)) { - $array_query['options_'.$dtarr[1].'_end_dt'.'_cnct'] = dol_mktime(0, 0, 0, GETPOST('options_'.$dtarr[1].'_end_dtmonth'.'_cnct', 'int'), GETPOST('options_'.$dtarr[1].'_end_dtday'.'_cnct', 'int'), GETPOST('options_'.$dtarr[1].'_end_dtyear'.'_cnct', 'int')); + if (!array_key_exists('options_'.$dtarr[1].'_end_dt_cnct', $array_query)) { + $array_query['options_'.$dtarr[1].'_end_dt_cnct'] = dol_mktime(0, 0, 0, GETPOST('options_'.$dtarr[1].'_end_dtmonth_cnct', 'int'), GETPOST('options_'.$dtarr[1].'_end_dtday_cnct', 'int'), GETPOST('options_'.$dtarr[1].'_end_dtyear_cnct', 'int')); } } else { $array_query[$key] = GETPOST($key); @@ -299,15 +297,15 @@ if ($action == 'savefilter' || $action == 'createfilter') { if (preg_match("/st_dt/", $key)) { $dtarr = array(); $dtarr = explode('_', $key); - if (!array_key_exists('options_'.$dtarr[1].'_st_dt'.'_cnct', $array_query)) { - $array_query['options_'.$dtarr[1].'_st_dt'.'_cnct'] = dol_mktime(0, 0, 0, GETPOST('options_'.$dtarr[1].'_st_dtmonth'.'_cnct', 'int'), GETPOST('options_'.$dtarr[1].'_st_dtday'.'_cnct', 'int'), GETPOST('options_'.$dtarr[1].'_st_dtyear'.'_cnct', 'int')); + if (!array_key_exists('options_'.$dtarr[1].'_st_dt_cnct', $array_query)) { + $array_query['options_'.$dtarr[1].'_st_dt_cnct'] = dol_mktime(0, 0, 0, GETPOST('options_'.$dtarr[1].'_st_dtmonth_cnct', 'int'), GETPOST('options_'.$dtarr[1].'_st_dtday_cnct', 'int'), GETPOST('options_'.$dtarr[1].'_st_dtyear_cnct', 'int')); } } elseif (preg_match("/end_dt/", $key)) { // Special case for end date come with 3 inputs day, month, year $dtarr = array(); $dtarr = explode('_', $key); - if (!array_key_exists('options_'.$dtarr[1].'_end_dt'.'_cnct', $array_query)) { - $array_query['options_'.$dtarr[1].'_end_dt'.'_cnct'] = dol_mktime(0, 0, 0, GETPOST('options_'.$dtarr[1].'_end_dtmonth'.'_cnct', 'int'), GETPOST('options_'.$dtarr[1].'_end_dtday'.'_cnct', 'int'), GETPOST('options_'.$dtarr[1].'_end_dtyear'.'_cnct', 'int')); + if (!array_key_exists('options_'.$dtarr[1].'_end_dt_cnct', $array_query)) { + $array_query['options_'.$dtarr[1].'_end_dt_cnct'] = dol_mktime(0, 0, 0, GETPOST('options_'.$dtarr[1].'_end_dtmonth_cnct', 'int'), GETPOST('options_'.$dtarr[1].'_end_dtday_cnct', 'int'), GETPOST('options_'.$dtarr[1].'_end_dtyear_cnct', 'int')); // print $array_query['cnct_options_'.$dtarr[1].'_end_dt']; // 01/02/1013=1361228400 } diff --git a/htdocs/comm/mailing/card.php b/htdocs/comm/mailing/card.php index 68a6b8db331..ea81c4e35b9 100644 --- a/htdocs/comm/mailing/card.php +++ b/htdocs/comm/mailing/card.php @@ -93,17 +93,13 @@ if (empty($reshook)) if (!GETPOST("clone_content", 'alpha') && !GETPOST("clone_receivers", 'alpha')) { setEventMessages($langs->trans("NoCloneOptionsSpecified"), null, 'errors'); - } - else - { + } else { $result = $object->createFromClone($user, $object->id, GETPOST("clone_content", 'alpha'), GETPOST("clone_receivers", 'alpha')); if ($result > 0) { header("Location: ".$_SERVER['PHP_SELF'].'?id='.$result); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -120,14 +116,11 @@ if (empty($reshook)) setEventMessages('', null, 'warnings'); setEventMessages($langs->trans("MailingNeedCommand2"), null, 'warnings'); $action = ''; - } - elseif ($conf->global->MAILING_LIMIT_SENDBYWEB < 0) + } elseif ($conf->global->MAILING_LIMIT_SENDBYWEB < 0) { setEventMessages($langs->trans("NotEnoughPermissions"), null, 'warnings'); $action = ''; - } - else - { + } else { $upload_dir = $conf->mailing->dir_output."/".get_exdir($object->id, 2, 0, 1, $object, 'mailing'); if ($object->statut == 0) @@ -235,9 +228,7 @@ if (empty($reshook)) $substitutionarray['__SECUREKEYPAYMENT_ORDER__'] = dol_hash($conf->global->PAYMENT_SECURITY_TOKEN, 2); $substitutionarray['__SECUREKEYPAYMENT_INVOICE__'] = dol_hash($conf->global->PAYMENT_SECURITY_TOKEN, 2); $substitutionarray['__SECUREKEYPAYMENT_CONTRACTLINE__'] = dol_hash($conf->global->PAYMENT_SECURITY_TOKEN, 2); - } - else - { + } else { $substitutionarray['__SECUREKEYPAYMENT_MEMBER__'] = dol_hash($conf->global->PAYMENT_SECURITY_TOKEN.'membersubscription'.$obj->source_id, 2); $substitutionarray['__SECUREKEYPAYMENT_ORDER__'] = dol_hash($conf->global->PAYMENT_SECURITY_TOKEN.'order'.$obj->source_id, 2); $substitutionarray['__SECUREKEYPAYMENT_INVOICE__'] = dol_hash($conf->global->PAYMENT_SECURITY_TOKEN.'invoice'.$obj->source_id, 2); @@ -316,9 +307,7 @@ if (empty($reshook)) if (!$resql2) { dol_print_error($db); - } - else - { + } else { //if cheack read is use then update prospect contact status if (strpos($message, '__CHECK_READ__') !== false) { @@ -350,9 +339,7 @@ if (empty($reshook)) } //test if CHECK READ change statut prospect contact - } - else - { + } else { // Mail failed $nbko++; @@ -369,9 +356,7 @@ if (empty($reshook)) $i++; } - } - else - { + } else { setEventMessages($langs->transnoentitiesnoconv("NoMoreRecipientToSendTo"), null, 'mesgs'); } @@ -381,16 +366,12 @@ if (empty($reshook)) $statut = 2; // Status 'sent partially' (because at least one error) if ($nbok > 0) setEventMessages($langs->transnoentitiesnoconv("EMailSentToNRecipients", $nbok), null, 'mesgs'); else setEventMessages($langs->transnoentitiesnoconv("EMailSentToNRecipients", $nbok), null, 'mesgs'); - } - else - { + } else { if ($nbok >= $num) { $statut = 3; // Send to everybody setEventMessages($langs->transnoentitiesnoconv("EMailSentToNRecipients", $nbok), null, 'mesgs'); - } - else - { + } else { $statut = 2; // Status 'sent partially' (because not send to everybody) setEventMessages($langs->transnoentitiesnoconv("EMailSentToNRecipients", $nbok), null, 'mesgs'); } @@ -403,9 +384,7 @@ if (empty($reshook)) { dol_print_error($db); } - } - else - { + } else { dol_syslog($db->error()); dol_print_error($db); } @@ -472,9 +451,7 @@ if (empty($reshook)) { setEventMessages($langs->trans("MailSuccessfulySent", $mailfile->getValidAddress($object->email_from, 2), $mailfile->getValidAddress($object->sendto, 2)), null, 'mesgs'); $action = ''; - } - else - { + } else { setEventMessages($langs->trans("ResultKo").'
'.$mailfile->error.' '.$result, null, 'errors'); $action = 'test'; } @@ -611,9 +588,7 @@ if (empty($reshook)) setEventMessages($mesg, $mesgs, 'errors'); $action = "edit"; - } - else - { + } else { $action = "edit"; } } @@ -627,9 +602,7 @@ if (empty($reshook)) setEventMessages($langs->trans("MailingSuccessfullyValidated"), null, 'mesgs'); header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else - { + } else { dol_print_error($db); } } @@ -645,14 +618,10 @@ if (empty($reshook)) //setEventMessages($langs->trans("MailingSuccessfullyValidated"), null, 'mesgs'); header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } - } - else - { + } else { dol_print_error($db); } } @@ -675,15 +644,11 @@ if (empty($reshook)) $db->commit(); header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); $db->rollback(); } - } - else - { + } else { dol_print_error($db); } } @@ -742,7 +707,7 @@ if ($action == 'create') // Print mail form - print load_fiche_titre($langs->trans("NewMailing"), $availablelink, 'generic'); + print load_fiche_titre($langs->trans("NewMailing"), $availablelink, 'object_email'); dol_fiche_head(); @@ -783,9 +748,7 @@ if ($action == 'create') print '
'; print ''; -} -else -{ +} else { if ($object->id > 0) { $upload_dir = $conf->mailing->dir_output."/".get_exdir($object->id, 2, 0, 1, $object, 'mailing'); @@ -801,13 +764,11 @@ else if ($action == 'valid') { print $form->formconfirm($_SERVER["PHP_SELF"]."?id=".$object->id, $langs->trans("ValidMailing"), $langs->trans("ConfirmValidMailing"), "confirm_valid", '', '', 1); - } - // Confirm reset + } // Confirm reset elseif ($action == 'reset') { print $form->formconfirm($_SERVER["PHP_SELF"]."?id=".$object->id, $langs->trans("ResetMailing"), $langs->trans("ConfirmResetMailing", $object->ref), "confirm_reset", '', '', 2); - } - // Confirm delete + } // Confirm delete elseif ($action == 'delete') { print $form->formconfirm($_SERVER["PHP_SELF"]."?id=".$object->id.(!empty($urlfrom) ? '&urlfrom='.urlencode($urlfrom) : ''), $langs->trans("DeleteAMailing"), $langs->trans("ConfirmDeleteMailing"), "confirm_delete", '', '', 1); @@ -841,8 +802,7 @@ else setEventMessages($langs->trans("MailSendSetupIs2", $linktoadminemailbefore, $linktoadminemailend, $langs->transnoentitiesnoconv("MAIN_MAIL_SENDMODE"), $listofmethods['smtps']), null, 'warnings'); if (!empty($conf->global->MAILING_SMTP_SETUP_EMAILS_FOR_QUESTIONS)) setEventMessages($langs->trans("MailSendSetupIs3", $conf->global->MAILING_SMTP_SETUP_EMAILS_FOR_QUESTIONS), null, 'warnings'); $_GET["action"] = ''; - } - elseif ($conf->global->MAILING_LIMIT_SENDBYWEB < 0) + } elseif ($conf->global->MAILING_LIMIT_SENDBYWEB < 0) { if (!empty($conf->global->MAILING_LIMIT_WARNING_PHPMAIL) && $sendingmode == 'mail') setEventMessages($langs->transnoentitiesnoconv($conf->global->MAILING_LIMIT_WARNING_PHPMAIL), null, 'warnings'); if (!empty($conf->global->MAILING_LIMIT_WARNING_NOPHPMAIL) && $sendingmode != 'mail') setEventMessages($langs->transnoentitiesnoconv($conf->global->MAILING_LIMIT_WARNING_NOPHPMAIL), null, 'warnings'); @@ -855,9 +815,7 @@ else setEventMessages($langs->trans("MailingNeedCommand2"), null, 'warnings'); // You can send online with constant... } $_GET["action"] = ''; - } - else - { + } else { if (!empty($conf->global->MAILING_LIMIT_WARNING_PHPMAIL) && $sendingmode == 'mail') setEventMessages($langs->transnoentitiesnoconv($conf->global->MAILING_LIMIT_WARNING_PHPMAIL), null, 'warnings'); if (!empty($conf->global->MAILING_LIMIT_WARNING_NOPHPMAIL) && $sendingmode != 'mail') setEventMessages($langs->transnoentitiesnoconv($conf->global->MAILING_LIMIT_WARNING_NOPHPMAIL), null, 'warnings'); @@ -939,9 +897,7 @@ else if ($conf->global->MAILING_LIMIT_SENDBYWEB > 0) { $text .= $langs->trans('LimitSendingEmailing', $conf->global->MAILING_LIMIT_SENDBYWEB); - } - else - { + } else { $text .= $langs->trans('SendingFromWebInterfaceIsNotAllowed'); } } @@ -949,9 +905,7 @@ else if ($text) { print $form->textwithpicto($nbemail, $text, 1, 'warning'); - } - else - { + } else { print $nbemail; } } @@ -998,9 +952,7 @@ else if (!empty($conf->fckeditor->enabled) && !empty($conf->global->FCKEDITOR_ENABLE_MAILING)) { print ''.$langs->trans("EditWithEditor").''; - } - else - { + } else { print ''.$langs->trans("EditWithTextEditor").''; } @@ -1012,9 +964,7 @@ else if (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !$user->rights->mailing->mailing_advance->send) { print ''.$langs->trans("TestMailing").''; - } - else - { + } else { print ''.$langs->trans("TestMailing").''; } @@ -1023,13 +973,10 @@ else if ($object->nbemail <= 0) { print ''.$langs->trans("ValidMailing").''; - } - elseif (empty($user->rights->mailing->valider)) + } elseif (empty($user->rights->mailing->valider)) { print ''.$langs->trans("ValidMailing").''; - } - else - { + } else { print ''.$langs->trans("ValidMailing").''; } } @@ -1039,13 +986,10 @@ else if ($conf->global->MAILING_LIMIT_SENDBYWEB < 0) { print ''.$langs->trans("SendMailing").''; - } - elseif (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !$user->rights->mailing->mailing_advance->send) + } elseif (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !$user->rights->mailing->mailing_advance->send) { print ''.$langs->trans("SendMailing").''; - } - else - { + } else { print ''.$langs->trans("SendMailing").''; } } @@ -1060,9 +1004,7 @@ else if (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !$user->rights->mailing->mailing_advance->send) { print ''.$langs->trans("ResetMailing").''; - } - else - { + } else { print ''.$langs->trans("ResetMailing").''; } } @@ -1072,9 +1014,7 @@ else if ($object->statut > 0 && (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !$user->rights->mailing->mailing_advance->delete)) { print ''.$langs->trans("DeleteMailing").''; - } - else - { + } else { print ''.$langs->trans("DeleteMailing").''; } } @@ -1153,9 +1093,7 @@ else print img_mime($listofpaths[$key]['name']).' '.$listofpaths[$key]['name']; print '
'; } - } - else - { + } else { print ''.$langs->trans("NoAttachedFiles").'
'; } print ''; @@ -1176,14 +1114,11 @@ else require_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php'; $doleditor = new DolEditor('bodyemail', $object->body, '', 600, 'dolibarr_mailings', '', false, true, empty($conf->global->FCKEDITOR_ENABLE_MAILING) ? 0 : 1, 20, '90%', $readonly); $doleditor->Create(); - } - else print dol_htmlentitiesbr($object->body); + } else print dol_htmlentitiesbr($object->body); print ''; dol_fiche_end(); - } - else - { + } else { /* * Mailing en mode edition (CKeditor or HTML source) */ @@ -1229,9 +1164,7 @@ else if ($conf->global->MAILING_LIMIT_SENDBYWEB > 0) { $text .= $langs->trans('LimitSendingEmailing', $conf->global->MAILING_LIMIT_SENDBYWEB); - } - else - { + } else { $text .= $langs->trans('SendingFromWebInterfaceIsNotAllowed'); } } @@ -1239,9 +1172,7 @@ else if ($text) { print $form->textwithpicto($nbemail, $text, 1, 'warning'); - } - else - { + } else { print $nbemail; } } @@ -1315,9 +1246,7 @@ else $out .= ' '; $out .= '
'; } - } - else - { + } else { $out .= $langs->trans("NoAttachedFiles").'
'; } // Add link to add file @@ -1366,9 +1295,7 @@ else print ''; print '
'; } - } - else - { + } else { dol_print_error($db, $object->error); } } diff --git a/htdocs/comm/mailing/cibles.php b/htdocs/comm/mailing/cibles.php index d8d9873b88b..27e0c2e5b0c 100644 --- a/htdocs/comm/mailing/cibles.php +++ b/htdocs/comm/mailing/cibles.php @@ -160,9 +160,7 @@ if (GETPOST('exportcsv', 'int')) } exit; - } - else - { + } else { dol_print_error($db); } exit; @@ -181,15 +179,11 @@ if ($action == 'delete') $obj->update_nb($id); setEventMessages($langs->trans("RecordDeleted"), null, 'mesgs'); - } - else - { + } else { header("Location: list.php"); exit; } - } - else - { + } else { dol_print_error($db); } } @@ -293,9 +287,7 @@ if ($object->fetch($id) >= 0) if ($conf->global->MAILING_LIMIT_SENDBYWEB > 0) { $text .= $langs->trans('LimitSendingEmailing', $conf->global->MAILING_LIMIT_SENDBYWEB); - } - else - { + } else { $text .= $langs->trans('SendingFromWebInterfaceIsNotAllowed'); } } @@ -303,9 +295,7 @@ if ($object->fetch($id) >= 0) if ($text) { print $form->textwithpicto($nbemail, $text, 1, 'warning'); - } - else - { + } else { print $nbemail; } } @@ -405,9 +395,7 @@ if ($object->fetch($id) >= 0) { print '
'; print ''; - } - else - { + } else { print '
'; } @@ -420,8 +408,7 @@ if ($object->fetch($id) >= 0) try { $nbofrecipient = $obj->getNbOfRecipients(''); - } - catch (Exception $e) + } catch (Exception $e) { dol_syslog($e->getMessage(), LOG_ERR); } @@ -430,9 +417,7 @@ if ($object->fetch($id) >= 0) if ($nbofrecipient >= 0) { print $nbofrecipient; - } - else - { + } else { print $langs->trans("Error").' '.img_error($obj->error); } print '
'; @@ -442,8 +427,7 @@ if ($object->fetch($id) >= 0) { try { $filter = $obj->formFilter(); - } - catch (Exception $e) + } catch (Exception $e) { dol_syslog($e->getMessage(), LOG_ERR); } @@ -456,9 +440,7 @@ if ($object->fetch($id) >= 0) if ($allowaddtarget) { print ''; - } - else - { + } else { print ''; //print $langs->trans("MailNoChangePossible"); print " "; @@ -632,31 +614,24 @@ if ($object->fetch($id) >= 0) if (empty($obj->source_id) || empty($obj->source_type)) { print empty($obj->source_url) ? '' : $obj->source_url; // For backward compatibility - } - else - { + } else { if ($obj->source_type == 'member') { $objectstaticmember->fetch($obj->source_id); print $objectstaticmember->getNomUrl(1); - } - elseif ($obj->source_type == 'user') + } elseif ($obj->source_type == 'user') { $objectstaticuser->fetch($obj->source_id); print $objectstaticuser->getNomUrl(1); - } - elseif ($obj->source_type == 'thirdparty') + } elseif ($obj->source_type == 'thirdparty') { $objectstaticcompany->fetch($obj->source_id); print $objectstaticcompany->getNomUrl(1); - } - elseif ($obj->source_type == 'contact') + } elseif ($obj->source_type == 'contact') { $objectstaticcontact->fetch($obj->source_id); print $objectstaticcontact->getNomUrl(1); - } - else - { + } else { print $obj->source_url; } } @@ -676,9 +651,7 @@ if ($object->fetch($id) >= 0) print ''; print $object::libStatutDest($obj->statut, 2, ''); print ''; - } - else - { + } else { // Date sent print ''.$obj->date_envoi.''; @@ -704,9 +677,7 @@ if ($object->fetch($id) >= 0) $i++; } - } - else - { + } else { if ($object->statut < 2) { print ''; @@ -720,9 +691,7 @@ if ($object->fetch($id) >= 0) print '
'; $db->free($resql); - } - else - { + } else { dol_print_error($db); } diff --git a/htdocs/comm/mailing/class/advtargetemailing.class.php b/htdocs/comm/mailing/class/advtargetemailing.class.php index 83ea16641fe..983ad374980 100644 --- a/htdocs/comm/mailing/class/advtargetemailing.class.php +++ b/htdocs/comm/mailing/class/advtargetemailing.class.php @@ -165,9 +165,7 @@ class AdvanceTargetingMailing extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return $this->id; } @@ -221,9 +219,7 @@ class AdvanceTargetingMailing extends CommonObject $this->db->free($resql); return 1; - } - else - { + } else { $this->error = "Error ".$this->db->lasterror(); dol_syslog(get_class($this)."::fetch ".$this->error, LOG_ERR); return -1; @@ -284,9 +280,7 @@ class AdvanceTargetingMailing extends CommonObject $this->db->free($resql); return 1; - } - else - { + } else { $this->error = "Error ".$this->db->lasterror(); dol_syslog(get_class($this)."::fetch ".$this->error, LOG_ERR); return -1; @@ -351,9 +345,7 @@ class AdvanceTargetingMailing extends CommonObject $this->db->free($resql); return 1; - } - else - { + } else { $this->error = "Error ".$this->db->lasterror(); dol_syslog(get_class($this)."::fetch ".$this->error, LOG_ERR); return -1; @@ -411,9 +403,7 @@ class AdvanceTargetingMailing extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } @@ -453,9 +443,7 @@ class AdvanceTargetingMailing extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } @@ -570,7 +558,8 @@ class AdvanceTargetingMailing extends CommonObject //Standard Extrafield feature if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) { - $elementtype = Societe::$table_element; + $socstatic = new Societe($this->db); + $elementtype = $socstatic->table_element; $extrafields->fetch_name_optionals_label($elementtype); @@ -688,9 +677,7 @@ class AdvanceTargetingMailing extends CommonObject if (!empty($arrayquery['contact_no_email'])) { $tmpwhere .= "(t.email IN (SELECT email FROM ".MAIN_DB_PREFIX."mailing_unsubscribe WHERE t.entity IN (".getEntity('mailing').") AND email = '".$this->db->escape($arrayquery['contact_no_email'])."'))"; - } - else - { + } else { $tmpwhere .= "(t.email NOT IN (SELECT email FROM ".MAIN_DB_PREFIX."mailing_unsubscribe WHERE t.entity IN (".getEntity('mailing').") AND email = '".$this->db->escape($arrayquery['contact_no_email'])."'))"; } $sqlwhere[] = $tmpwhere; @@ -707,7 +694,8 @@ class AdvanceTargetingMailing extends CommonObject //Standard Extrafield feature if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) { - $elementtype = Contact::$table_element; + $contactstatic = new Contact($this->db); + $elementtype = $contactstatic->table_element; // fetch optionals attributes and labels dol_include_once('/core/class/extrafields.class.php'); @@ -724,13 +712,13 @@ class AdvanceTargetingMailing extends CommonObject } } elseif (($extrafields->attributes[$elementtype]['type'][$key] == 'int') || ($extrafields->attributes[$elementtype]['type'][$key] == 'double')) { - if (!empty($arrayquery['options_'.$key.'_max'.'_cnct'])) { - $sqlwhere[] = " (te.".$key." >= ".$arrayquery['options_'.$key.'_max'.'_cnct']." AND te.".$key." <= ".$arrayquery['options_'.$key.'_min'.'_cnct'].")"; + if (!empty($arrayquery['options_'.$key.'_max_cnct'])) { + $sqlwhere[] = " (te.".$key." >= ".$arrayquery['options_'.$key.'_max_cnct']." AND te.".$key." <= ".$arrayquery['options_'.$key.'_min_cnct'].")"; } } elseif (($extrafields->attributes[$elementtype]['type'][$key] == 'date') || ($extrafields->attributes[$elementtype]['type'][$key] == 'datetime')) { - if (!empty($arrayquery['options_'.$key.'_end_dt'.'_cnct'])) { - $sqlwhere[] = " (te.".$key." >= '".$this->db->idate($arrayquery['options_'.$key.'_st_dt'.'_cnct'])."' AND te.".$key." <= '".$this->db->idate($arrayquery['options_'.$key.'_end_dt'.'_cnct'])."')"; + if (!empty($arrayquery['options_'.$key.'_end_dt_cnct'])) { + $sqlwhere[] = " (te.".$key." >= '".$this->db->idate($arrayquery['options_'.$key.'_st_dt_cnct'])."' AND te.".$key." <= '".$this->db->idate($arrayquery['options_'.$key.'_end_dt_cnct'])."')"; } } elseif ($extrafields->attributes[$elementtype]['type'][$key] == 'boolean') { if ($arrayquery['options_'.$key.'_cnct'] != '') { @@ -809,7 +797,8 @@ class AdvanceTargetingMailing extends CommonObject //Standard Extrafield feature if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) { - $elementtype = Societe::$table_element; + $socstatic = new Societe($this->db); + $elementtype = $socstatic->table_element; // fetch optionals attributes and labels dol_include_once('/core/class/extrafields.class.php'); diff --git a/htdocs/comm/mailing/class/html.formadvtargetemailing.class.php b/htdocs/comm/mailing/class/html.formadvtargetemailing.class.php index b9782515735..e6f928d539f 100644 --- a/htdocs/comm/mailing/class/html.formadvtargetemailing.class.php +++ b/htdocs/comm/mailing/class/html.formadvtargetemailing.class.php @@ -314,9 +314,7 @@ class FormAdvTargetEmailing extends Form $i++; } } - } - else - { + } else { dol_print_error($this->db); } @@ -400,9 +398,7 @@ class FormAdvTargetEmailing extends Form $i++; } } - } - else - { + } else { dol_print_error($this->db); } diff --git a/htdocs/comm/mailing/class/mailing.class.php b/htdocs/comm/mailing/class/mailing.class.php index 56a115a2fea..1bb4864876c 100644 --- a/htdocs/comm/mailing/class/mailing.class.php +++ b/htdocs/comm/mailing/class/mailing.class.php @@ -144,18 +144,14 @@ class Mailing extends CommonObject if ($this->update($user) > 0) { $this->db->commit(); - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -1; } return $this->id; - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -1; @@ -186,9 +182,7 @@ class Mailing extends CommonObject if ($result) { return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -253,15 +247,11 @@ class Mailing extends CommonObject $this->extraparams = (array) json_decode($obj->extraparams, true); return 1; - } - else - { + } else { dol_syslog(get_class($this)."::fetch Erreur -1"); return -1; } - } - else - { + } else { dol_syslog(get_class($this)."::fetch Erreur -2"); return -2; } @@ -368,9 +358,7 @@ class Mailing extends CommonObject ); } } - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -386,9 +374,7 @@ class Mailing extends CommonObject { $this->db->commit(); return $object->id; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -412,9 +398,7 @@ class Mailing extends CommonObject if ($this->db->query($sql)) { return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -437,9 +421,7 @@ class Mailing extends CommonObject if ($resql) { return $this->delete_targets(); - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -462,9 +444,7 @@ class Mailing extends CommonObject if ($resql) { return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); return 0; } @@ -490,9 +470,7 @@ class Mailing extends CommonObject if ($resql) { return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -512,8 +490,7 @@ class Mailing extends CommonObject if ($mode == 'alreadysent') $sql .= " AND statut <> 0"; elseif ($mode == 'alreadysentok') $sql .= " AND statut > 0"; elseif ($mode == 'alreadysentko') $sql .= " AND statut = -1"; - else - { + else { $this->error = 'BadValueForParameterMode'; return -2; } @@ -523,9 +500,7 @@ class Mailing extends CommonObject { $obj = $this->db->fetch_object($resql); if ($obj) return $obj->nb; - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -585,8 +560,7 @@ class Mailing extends CommonObject $reshook=$hookmanager->executeHooks('getnomurltooltip',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks if ($reshook > 0) $linkclose = $hookmanager->resPrint; */ - } - else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); + } else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); $linkstart = ''; diff --git a/htdocs/comm/mailing/index.php b/htdocs/comm/mailing/index.php index 61187f2e647..cf439e4314b 100644 --- a/htdocs/comm/mailing/index.php +++ b/htdocs/comm/mailing/index.php @@ -129,9 +129,7 @@ if (is_resource($handle)) } $db->free($result); - } - else - { + } else { dol_print_error($db); } print ''; @@ -157,6 +155,7 @@ print '
'; $limit = 10; $sql = "SELECT m.rowid, m.titre, m.nbemail, m.statut, m.date_creat"; $sql .= " FROM ".MAIN_DB_PREFIX."mailing as m"; +$sql .= " WHERE m.entity = ".$conf->entity; $sql .= " ORDER BY m.date_creat DESC"; $sql .= " LIMIT ".$limit; $result = $db->query($sql); @@ -190,16 +189,12 @@ if ($result) { print ''; $i++; } - } - else - { + } else { print ''.$langs->trans("None").''; } print "

"; $db->free($result); -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/comm/mailing/list.php b/htdocs/comm/mailing/list.php index 8feaa5a4d93..d22dd130507 100644 --- a/htdocs/comm/mailing/list.php +++ b/htdocs/comm/mailing/list.php @@ -130,9 +130,7 @@ if ($filteremail) if ($search_all) $sql .= " AND (m.titre like '%".$db->escape($search_all)."%' OR m.sujet like '%".$db->escape($search_all)."%' OR m.body like '%".$db->escape($search_all)."%')"; if (!$sortorder) $sortorder = "ASC"; if (!$sortfield) $sortfield = "m.rowid"; -} -else -{ +} else { $sql = "SELECT m.rowid, m.titre, m.nbemail, m.statut, m.date_creat as datec, m.date_envoi as date_envoi"; $sql .= " FROM ".MAIN_DB_PREFIX."mailing as m"; $sql .= " WHERE m.entity = ".$conf->entity; @@ -188,7 +186,7 @@ if ($resql) print ''; print ''; - print_barre_liste($title, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, '', $num, $nbtotalofrecords, 'generic', 0, $newcardbutton, '', $limit, 0, 0, 1); + print_barre_liste($title, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, '', $num, $nbtotalofrecords, 'object_email', 0, $newcardbutton, '', $limit, 0, 0, 1); $moreforfilter = ''; @@ -274,9 +272,7 @@ if ($resql) if ($filteremail) { print $email::libStatutDest($obj->sendstatut, 2); - } - else - { + } else { print $email->LibStatut($obj->statut, 5); } print ''; @@ -297,9 +293,7 @@ if ($resql) print ''; $db->free($resql); -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/comm/multiprix.php b/htdocs/comm/multiprix.php index 6d80626242d..cd5d5c9ace9 100644 --- a/htdocs/comm/multiprix.php +++ b/htdocs/comm/multiprix.php @@ -152,9 +152,7 @@ if ($_socid > 0) } $db->free($resql); print ""; - } - else - { + } else { dol_print_error($db); } } diff --git a/htdocs/comm/propal/card.php b/htdocs/comm/propal/card.php index 92338ebf68e..e737aa1d8c3 100644 --- a/htdocs/comm/propal/card.php +++ b/htdocs/comm/propal/card.php @@ -161,9 +161,7 @@ if (empty($reshook)) if (!GETPOST('socid', 3)) { setEventMessages($langs->trans("NoCloneOptionsSpecified"), null, 'errors'); - } - else - { + } else { if ($object->id > 0) { if (!empty($conf->global->PROPAL_CLONE_DATE_DELIVERY)) { //Get difference between old and new delivery date and change lines according to difference @@ -204,9 +202,7 @@ if (empty($reshook)) } } } - } - - // Delete proposal + } // Delete proposal elseif ($action == 'confirm_delete' && $confirm == 'yes' && $usercandelete) { $result = $object->delete($user); @@ -217,9 +213,7 @@ if (empty($reshook)) $langs->load("errors"); setEventMessages($object->error, $object->errors, 'errors'); } - } - - // Remove line + } // Remove line elseif ($action == 'confirm_deleteline' && $confirm == 'yes' && $usercancreate) { $result = $object->deleteline($lineid); @@ -241,9 +235,7 @@ if (empty($reshook)) header('Location: '.$_SERVER["PHP_SELF"].'?id='.$object->id); exit(); - } - - // Validation + } // Validation elseif ($action == 'confirm_validate' && $confirm == 'yes' && $usercanvalidate) { $result = $object->valid($user); @@ -269,9 +261,7 @@ if (empty($reshook)) if (count($object->errors) > 0) setEventMessages($object->error, $object->errors, 'errors'); else setEventMessages($langs->trans($object->error), null, 'errors'); } - } - - elseif ($action == 'setdate' && $usercancreate) + } elseif ($action == 'setdate' && $usercancreate) { $datep = dol_mktime(12, 0, 0, $_POST['remonth'], $_POST['reday'], $_POST['reyear']); @@ -285,21 +275,17 @@ if (empty($reshook)) if ($result < 0) dol_print_error($db, $object->error); } - } - elseif ($action == 'setecheance' && $usercancreate) + } elseif ($action == 'setecheance' && $usercancreate) { $result = $object->set_echeance($user, dol_mktime(12, 0, 0, $_POST['echmonth'], $_POST['echday'], $_POST['echyear'])); if ($result < 0) dol_print_error($db, $object->error); - } - elseif ($action == 'setdate_livraison' && $usercancreate) + } elseif ($action == 'setdate_livraison' && $usercancreate) { $result = $object->set_date_livraison($user, dol_mktime(12, 0, 0, $_POST['date_livraisonmonth'], $_POST['date_livraisonday'], $_POST['date_livraisonyear'])); if ($result < 0) dol_print_error($db, $object->error); - } - - // Positionne ref client + } // Positionne ref client elseif ($action == 'setref_client' && $usercancreate) { $result = $object->set_ref_client($user, GETPOST('ref_client')); @@ -307,15 +293,11 @@ if (empty($reshook)) { setEventMessages($object->error, $object->errors, 'errors'); } - } - - // Set incoterm + } // Set incoterm elseif ($action == 'set_incoterms' && !empty($conf->incoterm->enabled) && $usercancreate) { $result = $object->setIncoterms(GETPOST('incoterm_id', 'int'), GETPOST('location_incoterms', 'alpha')); - } - - // Create proposal + } // Create proposal elseif ($action == 'add' && $usercancreate) { $object->socid = $socid; @@ -511,7 +493,7 @@ if (empty($reshook)) } // Extrafields - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED) && method_exists($lines[$i], 'fetch_optionals')) { + if (method_exists($lines[$i], 'fetch_optionals')) { $lines[$i]->fetch_optionals(); $array_options = $lines[$i]->array_options; } @@ -549,9 +531,8 @@ if (empty($reshook)) setEventMessages($object->error, $object->errors, 'errors'); $error++; } - } // Standard creation - else - { + } // Standard creation + else { $id = $object->create($user); } @@ -602,24 +583,18 @@ if (empty($reshook)) header('Location: '.$_SERVER["PHP_SELF"].'?id='.$id); exit(); - } - else - { + } else { $db->rollback(); $action = 'create'; } - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); $db->rollback(); $action = 'create'; } } } - } - - // Classify billed + } // Classify billed elseif ($action == 'classifybilled' && $usercanclose) { $db->begin(); @@ -634,14 +609,10 @@ if (empty($reshook)) if (!$error) { $db->commit(); - } - else - { + } else { $db->rollback(); } - } - - // Close proposal + } // Close proposal elseif ($action == 'setstatut' && $usercanclose && !GETPOST('cancel', 'alpha')) { if (!(GETPOST('statut', 'int') > 0)) { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("CloseAs")), null, 'errors'); @@ -662,16 +633,12 @@ if (empty($reshook)) if (!$error) { $db->commit(); - } - else - { + } else { $db->rollback(); } } } - } - - // Reopen proposal + } // Reopen proposal elseif ($action == 'confirm_reopen' && $usercanclose && !GETPOST('cancel', 'alpha')) { // prevent browser refresh from reopening proposal several times if ($object->statut == Propal::STATUS_SIGNED || $object->statut == Propal::STATUS_NOTSIGNED || $object->statut == Propal::STATUS_BILLED) @@ -688,15 +655,11 @@ if (empty($reshook)) if (!$error) { $db->commit(); - } - else - { + } else { $db->rollback(); } } - } - - // add lines from objectlinked + } // add lines from objectlinked elseif ($action == 'import_lines_from_object' && $user->rights->propal->creer && $object->statut == Propal::STATUS_DRAFT @@ -712,8 +675,7 @@ if (empty($reshook)) { dol_include_once('/'.$fromElement.'/class/'.$fromElement.'.class.php'); $lineClassName = 'OrderLine'; - } - elseif ($fromElement == 'propal') + } elseif ($fromElement == 'propal') { dol_include_once('/comm/'.$fromElement.'/class/'.$fromElement.'.class.php'); $lineClassName = 'PropaleLigne'; @@ -765,8 +727,7 @@ if (empty($reshook)) } else { $error++; } - } - else { + } else { $error++; } } @@ -805,9 +766,7 @@ if (empty($reshook)) $ret = $object->fetch($id); // Reload to get new records $object->generateDocument($object->modelpdf, $outputlangs, $hidedetails, $hidedesc, $hideref); } - } - - elseif ($action == "setabsolutediscount" && $usercancreate) { + } elseif ($action == "setabsolutediscount" && $usercancreate) { if ($_POST["remise_id"]) { if ($object->id > 0) { $result = $object->insert_discount($_POST["remise_id"]); @@ -816,9 +775,7 @@ if (empty($reshook)) } } } - } - - // Add line + } // Add line elseif ($action == 'addline' && $usercancreate) { // Set if we used free entry or predefined product $predef = ''; @@ -830,9 +787,7 @@ if (empty($reshook)) { $idprod = 0; $tva_tx = (GETPOST('tva_tx') ? GETPOST('tva_tx') : 0); - } - else - { + } else { $idprod = GETPOST('idprod', 'int'); $tva_tx = ''; } @@ -924,8 +879,7 @@ if (empty($reshook)) if (isset($prod->multiprices_tva_tx[$object->thirdparty->price_level])) $tva_tx = $prod->multiprices_tva_tx[$object->thirdparty->price_level]; if (isset($prod->multiprices_recuperableonly[$object->thirdparty->price_level])) $tva_npr = $prod->multiprices_recuperableonly[$object->thirdparty->price_level]; } - } - // If price per customer + } // If price per customer elseif (!empty($conf->global->PRODUIT_CUSTOMER_PRICES)) { require_once DOL_DOCUMENT_ROOT.'/product/class/productcustomerprice.class.php'; @@ -947,8 +901,7 @@ if (empty($reshook)) if (empty($tva_tx)) $tva_npr = 0; } } - } - // If price per quantity + } // If price per quantity elseif (!empty($conf->global->PRODUIT_CUSTOMER_PRICES_BY_QTY)) { if ($prod->prices_by_qty[0]) // yes, this product has some prices per quantity @@ -964,17 +917,14 @@ if (empty($reshook)) if ($priceforthequantityarray['price_base_type'] == 'HT') { $pu_ht = $priceforthequantityarray['unitprice']; - } - else - { + } else { $pu_ttc = $priceforthequantityarray['unitprice']; } // Note: the remise_percent or price by qty is used to set data on form, so we will use value from POST. break; } } - } - // If price per quantity and customer + } // If price per quantity and customer elseif (!empty($conf->global->PRODUIT_CUSTOMER_PRICES_BY_QTY_MULTIPRICES)) { if ($prod->prices_by_qty[$object->thirdparty->price_level]) // yes, this product has some prices per quantity @@ -990,9 +940,7 @@ if (empty($reshook)) if ($priceforthequantityarray['price_base_type'] == 'HT') { $pu_ht = $priceforthequantityarray['unitprice']; - } - else - { + } else { $pu_ttc = $priceforthequantityarray['unitprice']; } // Note: the remise_percent or price by qty is used to set data on form, so we will use value from POST. @@ -1008,8 +956,7 @@ if (empty($reshook)) if (!empty($price_ht)) { $pu_ht = price2num($price_ht, 'MU'); $pu_ttc = price2num($pu_ht * (1 + ($tmpvat / 100)), 'MU'); - } - // On reevalue prix selon taux tva car taux tva transaction peut etre different + } // On reevalue prix selon taux tva car taux tva transaction peut etre different // de ceux du produit par defaut (par exemple si pays different entre vendeur et acheteur). elseif ($tmpvat != $tmpprodvat) { if ($price_base_type != 'HT') { @@ -1180,9 +1127,7 @@ if (empty($reshook)) } } } - } - - // Update a line within proposal + } // Update a line within proposal elseif ($action == 'updateline' && $usercancreate && GETPOST('save')) { // Define info_bits @@ -1319,62 +1264,38 @@ if (empty($reshook)) } elseif ($action == 'updateline' && $usercancreate && GETPOST('cancel', 'alpha')) { header('Location: '.$_SERVER['PHP_SELF'].'?id='.$object->id); // Pour reaffichage de la fiche en cours d'edition exit(); - } - - elseif ($action == 'classin' && $usercancreate) { + } elseif ($action == 'classin' && $usercancreate) { // Set project $object->setProject(GETPOST('projectid', 'int')); - } - - // Delivery time + } // Delivery time elseif ($action == 'setavailability' && $usercancreate) { $result = $object->set_availability($user, GETPOST('availability_id', 'int')); - } - - // Origin of the commercial proposal + } // Origin of the commercial proposal elseif ($action == 'setdemandreason' && $usercancreate) { $result = $object->set_demand_reason($user, GETPOST('demand_reason_id', 'int')); - } - - // Terms of payment + } // Terms of payment elseif ($action == 'setconditions' && $usercancreate) { $result = $object->setPaymentTerms(GETPOST('cond_reglement_id', 'int')); - } - - elseif ($action == 'setremisepercent' && $usercancreate) { + } elseif ($action == 'setremisepercent' && $usercancreate) { $result = $object->set_remise_percent($user, $_POST['remise_percent']); - } - - elseif ($action == 'setremiseabsolue' && $usercancreate) { + } elseif ($action == 'setremiseabsolue' && $usercancreate) { $result = $object->set_remise_absolue($user, $_POST['remise_absolue']); - } - - // Payment choice + } // Payment choice elseif ($action == 'setmode' && $usercancreate) { $result = $object->setPaymentMethods(GETPOST('mode_reglement_id', 'int')); - } - - // Multicurrency Code + } // Multicurrency Code elseif ($action == 'setmulticurrencycode' && $usercancreate) { $result = $object->setMulticurrencyCode(GETPOST('multicurrency_code', 'alpha')); - } - - // Multicurrency rate + } // Multicurrency rate elseif ($action == 'setmulticurrencyrate' && $usercancreate) { $result = $object->setMulticurrencyRate(price2num(GETPOST('multicurrency_tx'))); - } - - // bank account + } // bank account elseif ($action == 'setbankaccount' && $usercancreate) { $result = $object->setBankAccount(GETPOST('fk_account', 'int')); - } - - // shipping method + } // shipping method elseif ($action == 'setshippingmethod' && $usercancreate) { $result = $object->setShippingMethod(GETPOST('shipping_method_id', 'int')); - } - - elseif ($action == 'update_extras') { + } elseif ($action == 'update_extras') { $object->oldcopy = dol_clone($object); // Fill array 'array_options' with data from update form @@ -1412,18 +1333,14 @@ if (empty($reshook)) setEventMessages($object->error, $object->errors, 'errors'); } } - } - - // Toggle the status of a contact + } // Toggle the status of a contact elseif ($action == 'swapstatut') { if ($object->fetch($id) > 0) { $result = $object->swapContactStatus(GETPOST('ligne')); } else { dol_print_error($db); } - } - - // Delete a contact + } // Delete a contact elseif ($action == 'deletecontact') { $object->fetch($id); $result = $object->delete_contact($lineid); @@ -1448,8 +1365,6 @@ if (empty($reshook)) * View */ -llxHeader('', $langs->trans('Proposal'), 'EN:Commercial_Proposals|FR:Proposition_commerciale|ES:Presupuestos'); - $form = new Form($db); $formother = new FormOther($db); $formfile = new FormFile($db); @@ -1458,6 +1373,9 @@ $formmargin = new FormMargin($db); $companystatic = new Societe($db); if (!empty($conf->projet->enabled)) { $formproject = new FormProjets($db); } +$help_url = 'EN:Commercial_Proposals|FR:Proposition_commerciale|ES:Presupuestos'; +llxHeader('', $langs->trans('Proposal'), $help_url); + $now = dol_now(); // Add new proposal @@ -1465,7 +1383,7 @@ if ($action == 'create') { $currency_code = $conf->currency; - print load_fiche_titre($langs->trans("NewProp")); + print load_fiche_titre($langs->trans("NewProp"), '', 'propal'); $soc = new Societe($db); if ($socid > 0) @@ -1532,9 +1450,7 @@ if ($action == 'create') if (!empty($conf->global->MULTICURRENCY_USE_ORIGIN_TX) && !empty($objectsrc->multicurrency_tx)) $currency_tx = $objectsrc->multicurrency_tx; } } - } - else - { + } else { if (!empty($conf->multicurrency->enabled) && !empty($soc->multicurrency_code)) $currency_code = $soc->multicurrency_code; } @@ -1907,24 +1823,16 @@ if ($action == 'create') } $formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id, $langs->trans('SetAcceptedRefused'), $text, 'setstatut', $formquestion, '', 1, 250); - } - - // Confirm delete + } // Confirm delete elseif ($action == 'delete') { $formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id, $langs->trans('DeleteProp'), $langs->trans('ConfirmDeleteProp', $object->ref), 'confirm_delete', '', 0, 1); - } - - // Confirm reopen + } // Confirm reopen elseif ($action == 'reopen') { $formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id, $langs->trans('ReOpen'), $langs->trans('ConfirmReOpenProp', $object->ref), 'confirm_reopen', '', 0, 1); - } - - // Confirmation delete product/service line + } // Confirmation delete product/service line elseif ($action == 'ask_deleteline') { $formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id.'&lineid='.$lineid, $langs->trans('DeleteProductLine'), $langs->trans('ConfirmDeleteProductLine'), 'confirm_deleteline', '', 0, 1); - } - - // Confirm validate proposal + } // Confirm validate proposal elseif ($action == 'validate') { $error = 0; @@ -2308,9 +2216,7 @@ if ($action == 'create') if ($action != 'editincoterm') { print $form->textwithpicto($object->display_incoterms(), $object->label_incoterms, 1); - } - else - { + } else { print $form->select_incoterms((!empty($object->fk_incoterms) ? $object->fk_incoterms : ''), (!empty($object->location_incoterms) ? $object->location_incoterms : ''), $_SERVER['PHP_SELF'].'?id='.$object->id); } print ''; @@ -2477,9 +2383,7 @@ if ($action == 'create') if ($usercanvalidate) { print '
'.$langs->trans('Validate').''; - } - else - print ''.$langs->trans('Validate').''; + } else print ''.$langs->trans('Validate').''; } // Create event /*if ($conf->agenda->enabled && ! empty($conf->global->MAIN_ADD_EVENT_ON_ELEMENT_CARD)) // Add hidden condition because this is not a "workflow" action so should appears somewhere else on page. @@ -2502,8 +2406,7 @@ if ($action == 'create') if ($object->statut == Propal::STATUS_VALIDATED || $object->statut == Propal::STATUS_SIGNED || !empty($conf->global->PROPOSAL_SENDBYEMAIL_FOR_ALL_STATUS)) { if ($usercansend) { print ''.$langs->trans('SendMail').''; - } else - print ''.$langs->trans('SendMail').''; + } else print ''.$langs->trans('SendMail').''; } } @@ -2555,9 +2458,7 @@ if ($action == 'create') if ($usercanclose) { print 'socid.'">'.$langs->trans("ClassifyBilled").''; - } - else - { + } else { print ''.$langs->trans("ClassifyBilled").''; } } @@ -2595,13 +2496,13 @@ if ($action == 'create') /* * Documents generes */ - $filename = dol_sanitizeFileName($object->ref); + $objref = dol_sanitizeFileName($object->ref); $filedir = $conf->propal->multidir_output[$object->entity]."/".dol_sanitizeFileName($object->ref); $urlsource = $_SERVER["PHP_SELF"]."?id=".$object->id; $genallowed = $usercanread; $delallowed = $usercancreate; - print $formfile->showdocuments('propal', $filename, $filedir, $urlsource, $genallowed, $delallowed, $object->modelpdf, 1, 0, 0, 28, 0, '', 0, '', $soc->default_lang, '', $object); + print $formfile->showdocuments('propal', $objref, $filedir, $urlsource, $genallowed, $delallowed, $object->modelpdf, 1, 0, 0, 28, 0, '', 0, '', $soc->default_lang, '', $object); // Show links to link elements $linktoelem = $form->showLinkToObjectBlock($object, null, array('propal')); diff --git a/htdocs/comm/propal/class/api_proposals.class.php b/htdocs/comm/propal/class/api_proposals.class.php index 87c91d0f621..8efc4aa5c19 100644 --- a/htdocs/comm/propal/class/api_proposals.class.php +++ b/htdocs/comm/propal/class/api_proposals.class.php @@ -220,8 +220,7 @@ class Proposals extends DolibarrApi } $i++; } - } - else { + } else { throw new RestException(503, 'Error when retrieve propal list : '.$db->lasterror()); } if (!count($obj_ret)) { @@ -456,9 +455,7 @@ class Proposals extends DolibarrApi $updateRes = $this->propal->deleteline($lineid); if ($updateRes > 0) { return $this->get($id); - } - else - { + } else { throw new RestException(405, $this->propal->error); } } @@ -588,9 +585,7 @@ class Proposals extends DolibarrApi if ($this->propal->update(DolibarrApiAccess::$user) > 0) { return $this->get($id); - } - else - { + } else { throw new RestException(500, $this->propal->error); } } diff --git a/htdocs/comm/propal/class/propal.class.php b/htdocs/comm/propal/class/propal.class.php index 6a2eac53f95..63e3864245b 100644 --- a/htdocs/comm/propal/class/propal.class.php +++ b/htdocs/comm/propal/class/propal.class.php @@ -390,9 +390,7 @@ class Propal extends CommonObject if ($conf->global->PRODUIT_MULTIPRICES && $this->thirdparty->price_level) { $price = $prod->multiprices[$this->thirdparty->price_level]; - } - else - { + } else { $price = $prod->price; } @@ -473,22 +471,16 @@ class Propal extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = $line->error; $this->db->rollback(); return -2; } - } - else - { + } else { $this->db->rollback(); return -2; } @@ -561,9 +553,7 @@ class Propal extends CommonObject if ($price_base_type == 'HT') { $pu = $pu_ht; - } - else - { + } else { $pu = $pu_ttc; } @@ -715,23 +705,17 @@ class Propal extends CommonObject { $this->db->commit(); return $this->line->id; - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = $this->line->error; $this->db->rollback(); return -2; } - } - else - { + } else { dol_syslog(get_class($this)."::addline status of proposal must be Draft to allow use of ->addline()", LOG_ERR); return -3; } @@ -917,17 +901,13 @@ class Propal extends CommonObject $this->db->commit(); return $result; - } - else - { + } else { $this->error = $this->line->error; $this->db->rollback(); return -1; } - } - else - { + } else { dol_syslog(get_class($this)."::updateline Erreur -2 Propal en mode incompatible pour cette action"); return -2; } @@ -959,15 +939,11 @@ class Propal extends CommonObject $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = 'ErrorDeleteLineNotAllowedByObjectStatus'; return -2; } @@ -1141,8 +1117,7 @@ class Propal extends CommonObject $error++; } } - } - else // Old behaviour, if linked_object has only one link per type, so is something like array('contract'=>id1)) + } else // Old behaviour, if linked_object has only one link per type, so is something like array('contract'=>id1)) { $origin_id = $tmp_origin_id; $ret = $this->add_object_linked($origin, $origin_id); @@ -1169,9 +1144,7 @@ class Propal extends CommonObject if (!is_object($this->lines[$i])) // If this->lines is not array of objects, coming from REST API { // Convert into object this->lines[$i]. $line = (object) $this->lines[$i]; - } - else - { + } else { $line = $this->lines[$i]; } // Reset fk_parent_line for line that are not child lines or special product @@ -1253,13 +1226,10 @@ class Propal extends CommonObject // Actions on extra fields if (!$error) { - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + $result = $this->insertExtraFields(); + if ($result < 0) { - $result = $this->insertExtraFields(); - if ($result < 0) - { - $error++; - } + $error++; } } @@ -1270,16 +1240,12 @@ class Propal extends CommonObject if ($result < 0) { $error++; } // End call triggers } - } - else - { + } else { $this->error = $this->db->lasterror(); $error++; } } - } - else - { + } else { $this->error = $this->db->lasterror(); $error++; } @@ -1289,15 +1255,11 @@ class Propal extends CommonObject $this->db->commit(); dol_syslog(get_class($this)."::create done id=".$this->id); return $this->id; - } - else - { + } else { $this->db->rollback(); return -2; } - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -1; @@ -1377,9 +1339,7 @@ class Propal extends CommonObject $object->ref_client = ''; // TODO Change product price if multi-prices - } - else - { + } else { $objsoc->fetch($object->socid); } @@ -1447,9 +1407,7 @@ class Propal extends CommonObject { $this->db->commit(); return $object->id; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -1503,8 +1461,7 @@ class Propal extends CommonObject if ($ref) { $sql .= " WHERE p.entity IN (".getEntity('propal').")"; // Dont't use entity if you use rowid $sql .= " AND p.ref='".$this->db->escape($ref)."'"; - } - else $sql .= " WHERE p.rowid=".$rowid; + } else $sql .= " WHERE p.rowid=".$rowid; dol_syslog(get_class($this)."::fetch", LOG_DEBUG); $resql = $this->db->query($sql); @@ -1614,9 +1571,7 @@ class Propal extends CommonObject $this->error = "Record Not Found"; return 0; - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -1683,7 +1638,7 @@ class Propal extends CommonObject $error++; $this->errors[] = "Error ".$this->db->lasterror(); } - if (!$error && empty($conf->global->MAIN_EXTRAFIELDS_DISABLED) && is_array($this->array_options) && count($this->array_options) > 0) + if (!$error) { $result = $this->insertExtraFields(); if ($result < 0) @@ -1710,9 +1665,7 @@ class Propal extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } @@ -1840,9 +1793,7 @@ class Propal extends CommonObject $this->db->free($result); return $num; - } - else - { + } else { $this->error = $this->db->lasterror(); return -3; } @@ -1890,9 +1841,7 @@ class Propal extends CommonObject if (!$error && (preg_match('/^[\(]?PROV/i', $this->ref) || empty($this->ref))) // empty should not happened, but when it occurs, the test save life { $num = $this->getNextNumRef($soc); - } - else - { + } else { $num = $this->ref; } $this->newref = dol_sanitizeFileName($num); @@ -1965,9 +1914,7 @@ class Propal extends CommonObject $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -2029,9 +1976,7 @@ class Propal extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { foreach ($this->errors as $errmsg) { dol_syslog(__METHOD__.' Error: '.$errmsg, LOG_ERR); @@ -2091,9 +2036,7 @@ class Propal extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { foreach ($this->errors as $errmsg) { dol_syslog(__METHOD__.' Error: '.$errmsg, LOG_ERR); @@ -2153,9 +2096,7 @@ class Propal extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { foreach ($this->errors as $errmsg) { dol_syslog(__METHOD__.' Error: '.$errmsg, LOG_ERR); @@ -2216,9 +2157,7 @@ class Propal extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { foreach ($this->errors as $errmsg) { dol_syslog(__METHOD__.' Error: '.$errmsg, LOG_ERR); @@ -2227,9 +2166,7 @@ class Propal extends CommonObject $this->db->rollback(); return -1 * $error; } - } - else - { + } else { $error_str = 'Propal status do not meet requirement '.$this->statut; dol_syslog(__METHOD__.$error_str, LOG_ERR); $this->error = $error_str; @@ -2289,9 +2226,7 @@ class Propal extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { foreach ($this->errors as $errmsg) { dol_syslog(__METHOD__.' Error: '.$errmsg, LOG_ERR); @@ -2300,9 +2235,7 @@ class Propal extends CommonObject $this->db->rollback(); return -1 * $error; } - } - else - { + } else { $error_str = 'Propal status do not meet requirement '.$this->statut; dol_syslog(__METHOD__.$error_str, LOG_ERR); $this->error = $error_str; @@ -2358,9 +2291,7 @@ class Propal extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { foreach ($this->errors as $errmsg) { dol_syslog(__METHOD__.' Error: '.$errmsg, LOG_ERR); @@ -2369,9 +2300,7 @@ class Propal extends CommonObject $this->db->rollback(); return -1 * $error; } - } - else - { + } else { return -1; } } @@ -2428,9 +2357,7 @@ class Propal extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { foreach ($this->errors as $errmsg) { dol_syslog(__METHOD__.' Error: '.$errmsg, LOG_ERR); @@ -2496,9 +2423,7 @@ class Propal extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { foreach ($this->errors as $errmsg) { dol_syslog(__METHOD__.' Error: '.$errmsg, LOG_ERR); @@ -2564,9 +2489,7 @@ class Propal extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } @@ -2659,9 +2582,7 @@ class Propal extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->statut = $this->oldcopy->statut; $this->date_cloture = $this->oldcopy->date_cloture; $this->note_private = $this->oldcopy->note_private; @@ -2669,9 +2590,7 @@ class Propal extends CommonObject $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -1; @@ -2720,9 +2639,7 @@ class Propal extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { foreach ($this->errors as $errmsg) { dol_syslog(__METHOD__.' Error: '.$errmsg, LOG_ERR); @@ -2787,9 +2704,7 @@ class Propal extends CommonObject $this->db->commit(); return 1; - } - else - { + } else { foreach ($this->errors as $errmsg) { dol_syslog(__METHOD__.' Error: '.$errmsg, LOG_ERR); @@ -2855,13 +2770,10 @@ class Propal extends CommonObject if ($shortlist == 1) { $ga[$obj->propalid] = $obj->ref; - } - elseif ($shortlist == 2) + } elseif ($shortlist == 2) { $ga[$obj->propalid] = $obj->ref.' ('.$obj->name.')'; - } - else - { + } else { $ga[$i]['id'] = $obj->propalid; $ga[$i]['ref'] = $obj->ref; $ga[$i]['name'] = $obj->name; @@ -2871,9 +2783,7 @@ class Propal extends CommonObject } } return $ga; - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -2913,10 +2823,8 @@ class Propal extends CommonObject if ($objecttype == 'facture') { $linkedInvoices[] = $object; - } - // Cas des factures liees par un autre objet (ex: commande) - else - { + } // Cas des factures liees par un autre objet (ex: commande) + else { $this->fetchObjectLinked($object, $objecttype); foreach ($this->linkedObjectsIds as $subobjecttype => $subobjectid) { @@ -2967,13 +2875,10 @@ class Propal extends CommonObject } } return $ga; - } - else - { + } else { return -1; } - } - else return $ga; + } else return $ga; } /** @@ -3002,8 +2907,11 @@ class Propal extends CommonObject if (!$error) { + $main = MAIN_DB_PREFIX.'propaldet'; + $ef = $main."_extrafields"; + $sqlef = "DELETE FROM $ef WHERE fk_object IN (SELECT rowid FROM $main WHERE fk_propal = ".$this->id.")"; $sql = "DELETE FROM ".MAIN_DB_PREFIX."propaldet WHERE fk_propal = ".$this->id; - if ($this->db->query($sql)) + if ($this->db->query($sqlef) && $this->db->query($sql)) { $sql = "DELETE FROM ".MAIN_DB_PREFIX."propal WHERE rowid = ".$this->id; if ($this->db->query($sql)) @@ -3053,15 +2961,12 @@ class Propal extends CommonObject // Removed extrafields if (!$error) { - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + $result = $this->deleteExtraFields(); + if ($result < 0) { - $result = $this->deleteExtraFields(); - if ($result < 0) - { - $error++; - $errorflag = -4; - dol_syslog(get_class($this)."::delete erreur ".$errorflag." ".$this->error, LOG_ERR); - } + $error++; + $errorflag = -4; + dol_syslog(get_class($this)."::delete erreur ".$errorflag." ".$this->error, LOG_ERR); } } @@ -3070,30 +2975,22 @@ class Propal extends CommonObject dol_syslog(get_class($this)."::delete ".$this->id." by ".$user->id, LOG_DEBUG); $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return 0; } - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -3; } - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -2; } - } - else - { + } else { $this->db->rollback(); return -1; } @@ -3147,9 +3044,7 @@ class Propal extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { foreach ($this->errors as $errmsg) { dol_syslog(__METHOD__.' Error: '.$errmsg, LOG_ERR); @@ -3158,9 +3053,7 @@ class Propal extends CommonObject $this->db->rollback(); return -1 * $error; } - } - else - { + } else { $error_str = 'Propal status do not meet requirement '.$this->statut; dol_syslog(__METHOD__.$error_str, LOG_ERR); $this->error = $error_str; @@ -3219,9 +3112,7 @@ class Propal extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { foreach ($this->errors as $errmsg) { dol_syslog(__METHOD__.' Error: '.$errmsg, LOG_ERR); @@ -3230,9 +3121,7 @@ class Propal extends CommonObject $this->db->rollback(); return -1 * $error; } - } - else - { + } else { $error_str = 'Propal status do not meet requirement '.$this->statut; dol_syslog(__METHOD__.$error_str, LOG_ERR); $this->error = $error_str; @@ -3289,9 +3178,7 @@ class Propal extends CommonObject } } $this->db->free($result); - } - else - { + } else { dol_print_error($this->db); } } @@ -3426,9 +3313,7 @@ class Propal extends CommonObject } return $response; - } - else - { + } else { $this->error = $this->db->error(); return -1; } @@ -3506,9 +3391,7 @@ class Propal extends CommonObject $line->total_ttc = 60; $line->total_tva = 10; $line->remise_percent = 50; - } - else - { + } else { $line->total_ht = 100; $line->total_ttc = 120; $line->total_tva = 20; @@ -3567,9 +3450,7 @@ class Propal extends CommonObject } $this->db->free($resql); return 1; - } - else - { + } else { dol_print_error($this->db); $this->error = $this->db->error(); return -1; @@ -3619,16 +3500,12 @@ class Propal extends CommonObject if ($numref != "") { return $numref; - } - else - { + } else { $this->error = $obj->error; //dol_print_error($db,"Propale::getNextNumRef ".$obj->error); return ""; } - } - else - { + } else { $langs->load("errors"); print $langs->trans("Error")." ".$langs->trans("ErrorModuleSetupNotComplete", $langs->transnoentitiesnoconv("Proposal")); return ""; @@ -3676,14 +3553,11 @@ class Propal extends CommonObject if ($option == '') { $url = DOL_URL_ROOT.'/comm/propal/card.php?id='.$this->id.$get_params; - } - elseif ($option == 'compta') { // deprecated + } elseif ($option == 'compta') { // deprecated $url = DOL_URL_ROOT.'/comm/propal/card.php?id='.$this->id.$get_params; - } - elseif ($option == 'expedition') { + } elseif ($option == 'expedition') { $url = DOL_URL_ROOT.'/expedition/propal.php?id='.$this->id.$get_params; - } - elseif ($option == 'document') { + } elseif ($option == 'document') { $url = DOL_URL_ROOT.'/comm/propal/document.php?id='.$this->id.$get_params; } @@ -4031,14 +3905,10 @@ class PropaleLigne extends CommonObjectLine $this->db->free($result); return 1; - } - else - { + } else { return 0; } - } - else - { + } else { return -1; } } @@ -4087,9 +3957,7 @@ class PropaleLigne extends CommonObjectLine if (($result = $this->defineBuyPrice($this->subprice, $this->remise_percent, $this->fk_product)) < 0) { return $result; - } - else - { + } else { $this->pa_ht = $result; } } @@ -4152,7 +4020,7 @@ class PropaleLigne extends CommonObjectLine { $this->rowid = $this->db->last_insert_id(MAIN_DB_PREFIX.'propaldet'); - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + if (!$error) { $this->id = $this->rowid; $result = $this->insertExtraFields(); @@ -4176,9 +4044,7 @@ class PropaleLigne extends CommonObjectLine $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->error()." sql=".$sql; $this->db->rollback(); return -1; @@ -4204,7 +4070,7 @@ class PropaleLigne extends CommonObjectLine if ($this->db->query($sql)) { // Remove extrafields - if ((!$error) && (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED))) // For avoid conflicts if trigger used + if (!$error) { $this->id = $this->rowid; $result = $this->deleteExtraFields(); @@ -4230,9 +4096,7 @@ class PropaleLigne extends CommonObjectLine $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->error()." sql=".$sql; $this->db->rollback(); return -1; @@ -4279,9 +4143,7 @@ class PropaleLigne extends CommonObjectLine if (($result = $this->defineBuyPrice($this->subprice, $this->remise_percent, $this->fk_product)) < 0) { return $result; - } - else - { + } else { $this->pa_ht = $result; } } @@ -4334,7 +4196,7 @@ class PropaleLigne extends CommonObjectLine $resql = $this->db->query($sql); if ($resql) { - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + if (!$error) { $this->id = $this->rowid; $result = $this->insertExtraFields(); @@ -4358,9 +4220,7 @@ class PropaleLigne extends CommonObjectLine $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -2; @@ -4393,9 +4253,7 @@ class PropaleLigne extends CommonObjectLine { $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -2; diff --git a/htdocs/comm/propal/class/propalestats.class.php b/htdocs/comm/propal/class/propalestats.class.php index d5c48006430..747bb75433c 100644 --- a/htdocs/comm/propal/class/propalestats.class.php +++ b/htdocs/comm/propal/class/propalestats.class.php @@ -3,6 +3,7 @@ * Copyright (c) 2005-2013 Laurent Destailleur * Copyright (C) 2005-2009 Regis Houssin * Copyright (c) 2011 Juanjo Menent + * Copyright (C) 2020 Maxime DEMAREST * * 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 @@ -46,23 +47,27 @@ class PropaleStats extends Stats public $from; public $field; public $where; + public $join; /** * Constructor * - * @param DoliDB $db Database handler - * @param int $socid Id third party for filter. This value must be forced during the new to external user company if user is an external user. - * @param int $userid Id user for filter (creation user) - * @param string $mode Option ('customer', 'supplier') + * @param DoliDB $db Database handler + * @param int $socid Id third party for filter. This value must be forced during the new to external user company if user is an external user. + * @param int $userid Id user for filter (creation user) + * @param string $mode Option ('customer', 'supplier') + * @param int $typentid Id typent of thirdpary for filter + * @param int $categid Id category of thirdpary for filter */ - public function __construct($db, $socid = 0, $userid = 0, $mode = 'customer') + public function __construct($db, $socid = 0, $userid = 0, $mode = 'customer', $typentid = 0, $categid = 0) { global $user, $conf; $this->db = $db; $this->socid = ($socid > 0 ? $socid : 0); $this->userid = $userid; + $this->join = ''; if ($mode == 'customer') { @@ -96,6 +101,19 @@ class PropaleStats extends Stats $this->where .= " AND p.fk_soc = ".$this->socid; } if ($this->userid > 0) $this->where .= ' AND fk_user_author = '.$this->userid; + + if ($typentid) + { + $this->join .= ' LEFT JOIN '.MAIN_DB_PREFIX.'societe as s ON s.rowid = p.fk_soc'; + $this->where .= ' AND s.fk_typent = '.$typentid; + } + + if ($categid) + { + $this->join .= ' LEFT JOIN '.MAIN_DB_PREFIX.'categorie_societe as cs ON cs.fk_soc = p.fk_soc'; + $this->join .= ' LEFT JOIN '.MAIN_DB_PREFIX.'categorie as c ON c.rowid = cs.fk_categorie'; + $this->where .= ' AND c.rowid = '.$categid; + } } @@ -113,6 +131,7 @@ class PropaleStats extends Stats $sql = "SELECT date_format(".$this->field_date.",'%m') as dm, COUNT(*) as nb"; $sql .= " FROM ".$this->from; if (!$user->rights->societe->client->voir && !$user->socid) $sql .= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; + $sql .= $this->join; $sql .= " WHERE ".$this->field_date." BETWEEN '".$this->db->idate(dol_get_first_day($year))."' AND '".$this->db->idate(dol_get_last_day($year))."'"; $sql .= " AND ".$this->where; $sql .= " GROUP BY dm"; @@ -135,6 +154,7 @@ class PropaleStats extends Stats $sql = "SELECT date_format(".$this->field_date.",'%Y') as dm, COUNT(*) as nb, SUM(c.".$this->field.")"; $sql .= " FROM ".$this->from; if (!$user->rights->societe->client->voir && !$this->socid) $sql .= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; + $sql .= $this->join; $sql .= " WHERE ".$this->where; $sql .= " GROUP BY dm"; $sql .= $this->db->order('dm', 'DESC'); @@ -156,6 +176,7 @@ class PropaleStats extends Stats $sql = "SELECT date_format(".$this->field_date.",'%m') as dm, SUM(p.".$this->field.")"; $sql .= " FROM ".$this->from; if (!$user->rights->societe->client->voir && !$this->socid) $sql .= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; + $sql .= $this->join; $sql .= " WHERE ".$this->field_date." BETWEEN '".$this->db->idate(dol_get_first_day($year))."' AND '".$this->db->idate(dol_get_last_day($year))."'"; $sql .= " AND ".$this->where; $sql .= " GROUP BY dm"; @@ -178,6 +199,7 @@ class PropaleStats extends Stats $sql = "SELECT date_format(".$this->field_date.",'%m') as dm, AVG(p.".$this->field.")"; $sql .= " FROM ".$this->from; if (!$user->rights->societe->client->voir && !$this->socid) $sql .= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; + $sql .= $this->join; $sql .= " WHERE ".$this->field_date." BETWEEN '".$this->db->idate(dol_get_first_day($year))."' AND '".$this->db->idate(dol_get_last_day($year))."'"; $sql .= " AND ".$this->where; $sql .= " GROUP BY dm"; @@ -198,6 +220,7 @@ class PropaleStats extends Stats $sql = "SELECT date_format(".$this->field_date.",'%Y') as year, COUNT(*) as nb, SUM(".$this->field.") as total, AVG(".$this->field.") as avg"; $sql .= " FROM ".$this->from; if (!$user->rights->societe->client->voir && !$this->socid) $sql .= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; + $sql .= $this->join; $sql .= " WHERE ".$this->where; $sql .= " GROUP BY year"; $sql .= $this->db->order('year', 'DESC'); @@ -221,6 +244,7 @@ class PropaleStats extends Stats $sql = "SELECT product.ref, COUNT(product.ref) as nb, SUM(tl.".$this->field_line.") as total, AVG(tl.".$this->field_line.") as avg"; $sql .= " FROM ".$this->from.", ".$this->from_line.", ".MAIN_DB_PREFIX."product as product"; if (!$user->rights->societe->client->voir && !$user->socid) $sql .= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; + $sql .= $this->join; $sql .= " WHERE ".$this->where; $sql .= " AND p.rowid = tl.fk_propal AND tl.fk_product = product.rowid"; $sql .= " AND ".$this->field_date." BETWEEN '".$this->db->idate(dol_get_first_day($year, 1, false))."' AND '".$this->db->idate(dol_get_last_day($year, 12, false))."'"; diff --git a/htdocs/comm/propal/contact.php b/htdocs/comm/propal/contact.php index da86625b78f..c2f60516f1c 100644 --- a/htdocs/comm/propal/contact.php +++ b/htdocs/comm/propal/contact.php @@ -55,8 +55,7 @@ if ($id > 0 || !empty($ref)) $langs->load("errors"); setEventMessages($langs->trans('ErrorRecordNotFound'), null, 'errors'); $error++; - } - elseif ($ret < 0) + } elseif ($ret < 0) { setEventMessages($object->error, $object->errors, 'errors'); $error++; @@ -65,9 +64,7 @@ if ($id > 0 || !empty($ref)) if (!$error) { $object->fetch_thirdparty(); -} -else -{ +} else { header('Location: '.DOL_URL_ROOT.'/comm/propal/list.php'); exit; } @@ -89,31 +86,23 @@ if ($action == 'addcontact' && $user->rights->propale->creer) { header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else - { + } else { if ($object->error == 'DB_ERROR_RECORD_ALREADY_EXISTS') { $langs->load("errors"); setEventMessages($langs->trans("ErrorThisContactIsAlreadyDefinedAsThisType"), null, 'errors'); - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } -} - -// Toggle the status of a contact +} // Toggle the status of a contact elseif ($action == 'swapstatut' && $user->rights->propale->creer) { if ($object->id > 0) { $result = $object->swapContactStatus(GETPOST('ligne')); } -} - -// Deletes a contact +} // Deletes a contact elseif ($action == 'deletecontact' && $user->rights->propale->creer) { $result = $object->delete_contact($lineid); @@ -122,9 +111,7 @@ elseif ($action == 'deletecontact' && $user->rights->propale->creer) { header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else - { + } else { dol_print_error($db); } } diff --git a/htdocs/comm/propal/document.php b/htdocs/comm/propal/document.php index 02d801860a5..70c67566091 100644 --- a/htdocs/comm/propal/document.php +++ b/htdocs/comm/propal/document.php @@ -53,11 +53,12 @@ if (!empty($user->socid)) $result = restrictedArea($user, 'propal', $id); // Get parameters +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; @@ -178,9 +179,7 @@ if ($object->id > 0) $permtoedit = $user->rights->propal->creer; $param = '&id='.$object->id; include_once DOL_DOCUMENT_ROOT.'/core/tpl/document_actions_post_headers.tpl.php'; -} -else -{ +} else { print $langs->trans("ErrorUnknown"); } diff --git a/htdocs/comm/propal/index.php b/htdocs/comm/propal/index.php index a0aac3e0387..9e138c52cbe 100644 --- a/htdocs/comm/propal/index.php +++ b/htdocs/comm/propal/index.php @@ -58,7 +58,7 @@ $help_url = "EN:Module_Commercial_Proposals|FR:Module_Propositions_commerciales| llxHeader("", $langs->trans("ProspectionArea"), $help_url); -print load_fiche_titre($langs->trans("ProspectionArea"), '', 'commercial'); +print load_fiche_titre($langs->trans("ProspectionArea"), '', 'propal'); //print ''; //print ''; print ''; print "
'; @@ -163,9 +163,7 @@ if ($resql) //print '
'.$langs->trans("Total").' ('.$langs->trans("CustomersOrdersRunning").')'.$totalinprocess.'
'.$langs->trans("Total").''.$total.'

"; -} -else -{ +} else { dol_print_error($db); } @@ -220,8 +218,7 @@ if (!empty($conf->propal->enabled)) if ($num > $nbofloop) { print ''.$langs->trans("XMoreLines", ($num - $nbofloop)).""; - } - elseif ($total > 0) + } elseif ($total > 0) { print ''.$langs->trans("Total").''.price($total).""; } @@ -310,8 +307,7 @@ if ($resql) } print ""; print "
"; -} -else dol_print_error($db); +} else dol_print_error($db); /* @@ -394,17 +390,14 @@ if (!empty($conf->propal->enabled) && $user->rights->propale->lire) if ($num > $nbofloop) { print ''.$langs->trans("XMoreLines", ($num - $nbofloop)).""; - } - elseif ($total > 0) + } elseif ($total > 0) { print ''.$langs->trans("Total")."".price($total)." "; } print ""; print "
"; } - } - else - { + } else { dol_print_error($db); } } diff --git a/htdocs/comm/propal/list.php b/htdocs/comm/propal/list.php index 955c4f38832..6710ac56b58 100644 --- a/htdocs/comm/propal/list.php +++ b/htdocs/comm/propal/list.php @@ -414,9 +414,7 @@ if ($resql) $soc->fetch($socid); $title = $langs->trans('ListOfProposals').' - '.$soc->name; if (empty($search_societe)) $search_societe = $soc->name; - } - else - { + } else { $title = $langs->trans('ListOfProposals'); } @@ -496,10 +494,10 @@ if ($resql) print ''; print ''; - print_barre_liste($title, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'commercial', 0, $newcardbutton, '', $limit, 0, 0, 1); + print_barre_liste($title, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'propal', 0, $newcardbutton, '', $limit, 0, 0, 1); $topicmail = "SendPropalRef"; - $modelmail = "proposal_send"; + $modelmail = "propal_send"; $objecttmp = new Propal($db); $trackid = 'pro'.$object->id; include DOL_DOCUMENT_ROOT.'/core/tpl/massactions_pre.tpl.php'; @@ -1028,9 +1026,7 @@ if ($resql) { print ''.dol_print_date($db->jdate($obj->dfv), 'day'); print ''; - } - else - { + } else { print ' '; } if (!$i) $totalarray['nbfield']++; @@ -1042,9 +1038,7 @@ if ($resql) { print ''.dol_print_date($db->jdate($obj->ddelivery), 'day'); print ''; - } - else - { + } else { print ' '; } if (!$i) $totalarray['nbfield']++; @@ -1169,8 +1163,7 @@ if ($resql) if ($nbofsalesrepresentative > 3) // We print only number { print $nbofsalesrepresentative; - } - elseif ($nbofsalesrepresentative > 0) + } elseif ($nbofsalesrepresentative > 0) { $userstatic = new User($db); $j = 0; @@ -1192,9 +1185,7 @@ if ($resql) } } //else print $langs->trans("NoSalesRepresentativeAffected"); - } - else - { + } else { print ' '; } print ''; @@ -1204,7 +1195,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, 'i'=>$i); + $parameters = array('arrayfields'=>$arrayfields, 'obj'=>$obj, 'i'=>$i, 'totalarray'=>&$totalarray); $reshook = $hookmanager->executeHooks('printFieldListValue', $parameters); // Note that $action and $object may have been modified by hook print $hookmanager->resPrint; // Date creation @@ -1279,9 +1270,7 @@ if ($resql) $delallowed = $user->rights->propal->creer; print $formfile->showdocuments('massfilesarea_proposals', '', $filedir, $urlsource, 0, $delallowed, '', 1, 1, 0, 48, 1, $param, $title, '', '', '', null, $hidegeneratedfilelistifempty); -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/comm/propal/stats/index.php b/htdocs/comm/propal/stats/index.php index e836d37a1b9..00a79f3c1be 100644 --- a/htdocs/comm/propal/stats/index.php +++ b/htdocs/comm/propal/stats/index.php @@ -4,6 +4,7 @@ * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2012 Marcos García * Copyright (C) 2015 Jean-François Ferry + * Copyright (C) 2020 Maxime DEMAREST * * 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 @@ -28,7 +29,10 @@ require '../../../main.inc.php'; require_once DOL_DOCUMENT_ROOT.'/comm/propal/class/propalestats.class.php'; require_once DOL_DOCUMENT_ROOT.'/core/class/dolgraph.class.php'; +require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php'; require_once DOL_DOCUMENT_ROOT.'/core/class/html.formpropal.class.php'; +require_once DOL_DOCUMENT_ROOT.'/core/class/html.formcompany.class.php'; +require_once DOL_DOCUMENT_ROOT.'/core/class/html.formother.class.php'; $WIDTH = DolGraph::getDefaultGraphSizeForStats('width'); $HEIGHT = DolGraph::getDefaultGraphSizeForStats('height'); @@ -38,6 +42,8 @@ if ($mode == 'customer' && !$user->rights->propale->lire) accessforbidden(); if ($mode == 'supplier' && !$user->rights->supplier_proposal->lire) accessforbidden(); $object_status = GETPOST('object_status'); +$typent_id = GETPOST('typent_id', 'int'); +$categ_id = GETPOST('categ_id', 'categ_id'); $userid = GETPOST('userid', 'int'); $socid = GETPOST('socid', 'int'); @@ -64,29 +70,37 @@ $langs->loadLangs(array('orders', 'companies', 'other', 'suppliers', 'supplier_p $form = new Form($db); $formpropal = new FormPropal($db); +$formcompany = new FormCompany($db); +$formother = new FormOther($db); $langs->loadLangs(array('propal', 'other', 'companies')); if ($mode == 'customer') { + $picto = 'propal'; $title = $langs->trans("ProposalsStatistics"); $dir = $conf->propale->dir_temp; + $cat_type = Categorie::TYPE_CUSTOMER; + $cat_label = $langs->trans("Category").' '.lcfirst($langs->trans("Customer")); } if ($mode == 'supplier') { + $picto = 'supplier_proposal'; $title = $langs->trans("ProposalsStatisticsSuppliers").' ('.$langs->trans("SentToSuppliers").")"; $dir = $conf->supplier_proposal->dir_temp; + $cat_type = Categorie::TYPE_SUPPLIER; + $cat_label = $langs->trans("Category").' '.lcfirst($langs->trans("Supplier")); } llxHeader('', $title); -print load_fiche_titre($title, '', 'commercial'); +print load_fiche_titre($title, '', $picto); dol_mkdir($dir); -$stats = new PropaleStats($db, $socid, ($userid > 0 ? $userid : 0), $mode); +$stats = new PropaleStats($db, $socid, ($userid > 0 ? $userid : 0), $mode, ($typent_id > 0 ? $typent_id : 0), ($categ_id > 0 ? $categ_id : 0)); if ($object_status != '' && $object_status >= 0) $stats->where .= ' AND p.fk_statut IN ('.$db->escape($object_status).')'; // Build graphic number of object @@ -98,9 +112,7 @@ if (!$user->rights->societe->client->voir || $user->socid) { $filenamenb = $dir.'/proposalsnbinyear-'.$user->id.'-'.$year.'.png'; $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=propalstats&file=proposalsnbinyear-'.$user->id.'-'.$year.'.png'; -} -else -{ +} else { $filenamenb = $dir.'/proposalsnbinyear-'.$year.'.png'; $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=propalstats&file=proposalsnbinyear-'.$year.'.png'; } @@ -138,9 +150,7 @@ if (!$user->rights->societe->client->voir || $user->socid) { $filenameamount = $dir.'/proposalsamountinyear-'.$user->id.'-'.$year.'.png'; $fileurlamount = DOL_URL_ROOT.'/viewimage.php?modulepart=propalstats&file=proposalsamountinyear-'.$user->id.'-'.$year.'.png'; -} -else -{ +} else { $filenameamount = $dir.'/proposalsamountinyear-'.$year.'.png'; $fileurlamount = DOL_URL_ROOT.'/viewimage.php?modulepart=propalstats&file=proposalsamountinyear-'.$year.'.png'; } @@ -178,9 +188,7 @@ if (!$user->rights->societe->client->voir || $user->socid) $filename_avg = $dir.'/ordersaverage-'.$user->id.'-'.$year.'.png'; if ($mode == 'customer') $fileurl_avg = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstats&file=ordersaverage-'.$user->id.'-'.$year.'.png'; if ($mode == 'supplier') $fileurl_avg = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstatssupplier&file=ordersaverage-'.$user->id.'-'.$year.'.png'; -} -else -{ +} else { $filename_avg = $dir.'/ordersaverage-'.$year.'.png'; if ($mode == 'customer') $fileurl_avg = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstats&file=ordersaverage-'.$year.'.png'; if ($mode == 'supplier') $fileurl_avg = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstatssupplier&file=ordersaverage-'.$year.'.png'; @@ -252,6 +260,16 @@ print '
'; $filter = 's.client IN (1,2,3)'; print $form->select_company($socid, 'socid', $filter, 1, 0, 0, array(), 0, '', 'style="width: 95%"'); print ''; + // ThirdParty Type + print ''.$langs->trans("ThirdPartyType").''; + $sortparam_typent = (empty($conf->global->SOCIETE_SORT_ON_TYPEENT) ? 'ASC' : $conf->global->SOCIETE_SORT_ON_TYPEENT); // NONE means we keep sort of original array, so we sort on position. ASC, means next function will sort on label. + print $form->selectarray("typent_id", $formcompany->typent_array(0), $typent_id, 0, 0, 0, '', 0, 0, 0, $sortparam_typent); + if ($user->admin) print ' '.info_admin($langs->trans("YouCanChangeValuesForThisListFromDictionarySetup"), 1); + print ''; + // Category + print ''.$cat_label.''; + print $formother->select_categories($cat_type, $categ_id, 'categ_id', true); + print ''; // User print ''.$langs->trans("CreatedBy").''; print $form->select_dolusers($userid, 'userid', 1, '', 0, '', '', 0, 0, 0, '', 0, '', 'maxwidth300'); @@ -323,8 +341,7 @@ print '
'; // Show graphs print '
'; -if ($mesg) { print $mesg; } -else { +if ($mesg) { print $mesg; } else { print $px1->show(); print "
\n"; print $px2->show(); diff --git a/htdocs/comm/prospect/index.php b/htdocs/comm/prospect/index.php index ff0beef4037..b49f334dadd 100644 --- a/htdocs/comm/prospect/index.php +++ b/htdocs/comm/prospect/index.php @@ -223,9 +223,7 @@ if (!empty($conf->propal->enabled) && $user->rights->propale->lire) } print "

"; } - } - else - { + } else { dol_print_error($db); } } diff --git a/htdocs/comm/prospect/recap-prospect.php b/htdocs/comm/prospect/recap-prospect.php index b3b852c591a..e393f5fce56 100644 --- a/htdocs/comm/prospect/recap-prospect.php +++ b/htdocs/comm/prospect/recap-prospect.php @@ -83,9 +83,7 @@ if ($socid > 0) print $langs->trans("FeatureNotYetAvailable"); -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/comm/recap-client.php b/htdocs/comm/recap-client.php index 09f5e46f94b..284c248f1f0 100644 --- a/htdocs/comm/recap-client.php +++ b/htdocs/comm/recap-client.php @@ -83,9 +83,7 @@ if ($socid > 0) print $langs->trans("FeatureNotYetAvailable"); -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/comm/remise.php b/htdocs/comm/remise.php index dc41845516a..a7517c9cb60 100644 --- a/htdocs/comm/remise.php +++ b/htdocs/comm/remise.php @@ -70,15 +70,11 @@ if (GETPOST('action', 'aZ09') == 'setremise') { header("Location: ".$backtopage); exit; - } - else - { + } else { header("Location: remise.php?id=".$_GET["id"]); exit; } - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -252,16 +248,12 @@ if ($socid > 0) print ''; $i++; } - } - else - { + } else { print ''.$langs->trans("None").''; } $db->free($resql); print ""; - } - else - { + } else { dol_print_error($db); } } @@ -311,16 +303,12 @@ if ($socid > 0) print ''; $i++; } - } - else - { + } else { print ''.$langs->trans("None").''; } $db->free($resql); print ""; - } - else - { + } else { dol_print_error($db); } diff --git a/htdocs/comm/remx.php b/htdocs/comm/remx.php index c312591aeec..ffd4c1738c0 100644 --- a/htdocs/comm/remx.php +++ b/htdocs/comm/remx.php @@ -105,9 +105,7 @@ if ($action == 'confirm_split' && GETPOST("confirm", "alpha") == 'yes') { $newdiscount1->description = $discount->description; $newdiscount2->description = $discount->description; - } - else - { + } else { $newdiscount1->description = $discount->description.' (1)'; $newdiscount2->description = $discount->description.' (2)'; } @@ -150,9 +148,7 @@ if ($action == 'confirm_split' && GETPOST("confirm", "alpha") == 'yes') $db->commit(); header("Location: ".$_SERVER["PHP_SELF"].'?id='.$id.($backtopage ? '&backtopage='.urlencode($backtopage) : '')); // To avoid pb whith back exit; - } - else - { + } else { $db->rollback(); } } @@ -189,22 +185,16 @@ if ($action == 'setremise' && $user->rights->societe->creer) { header("Location: ".$backtopage.'&discountid='.$discountid); exit; - } - else - { + } else { header("Location: remx.php?id=".$id); exit; } - } - else - { + } else { $error++; setEventMessages($soc->error, $soc->errors, 'errors'); } } - } - else - { + } else { setEventMessages($langs->trans("ErrorFieldFormat", $langs->transnoentitiesnoconv("AmountHT")), null, 'errors'); } } @@ -224,9 +214,7 @@ if (GETPOST('action', 'aZ09') == 'confirm_remove' && GETPOST("confirm") == 'yes' $db->commit(); header("Location: ".$_SERVER["PHP_SELF"].'?id='.$id); // To avoid pb whith back exit; - } - else - { + } else { setEventMessages($discount->error, $discount->errors, 'errors'); $db->rollback(); } @@ -300,9 +288,7 @@ if ($socid > 0) $obj = $db->fetch_object($resql); $remise_all += $obj->amount; if ($obj->fk_user == $user->id) $remise_user += $obj->amount; - } - else - { + } else { dol_print_error($db); } @@ -332,9 +318,7 @@ if ($socid > 0) $obj = $db->fetch_object($resql); $remise_all += $obj->amount; if ($obj->fk_user == $user->id) $remise_user += $obj->amount; - } - else - { + } else { dol_print_error($db); } @@ -489,8 +473,7 @@ if ($socid > 0) $facturestatic->type = $obj->type; print preg_replace('/\(CREDIT_NOTE\)/', $langs->trans("CreditNote"), $obj->description).' '.$facturestatic->getNomURl(1); print ''; - } - elseif (preg_match('/\(DEPOSIT\)/', $obj->description)) + } elseif (preg_match('/\(DEPOSIT\)/', $obj->description)) { print ''; $facturestatic->id = $obj->fk_facture_source; @@ -498,8 +481,7 @@ if ($socid > 0) $facturestatic->type = $obj->type; print preg_replace('/\(DEPOSIT\)/', $langs->trans("InvoiceDeposit"), $obj->description).' '.$facturestatic->getNomURl(1); print ''; - } - elseif (preg_match('/\(EXCESS RECEIVED\)/', $obj->description)) + } elseif (preg_match('/\(EXCESS RECEIVED\)/', $obj->description)) { print ''; $facturestatic->id = $obj->fk_facture_source; @@ -507,9 +489,7 @@ if ($socid > 0) $facturestatic->type = $obj->type; print preg_replace('/\(EXCESS RECEIVED\)/', $langs->trans("ExcessReceived"), $obj->description).' '.$facturestatic->getNomURl(1); print ''; - } - else - { + } else { print ''; print $obj->description; print ''; @@ -535,8 +515,7 @@ if ($socid > 0) print 'rowid.($backtopage ? '&backtopage='.urlencode($backtopage) : '').'">'.img_split($langs->trans("SplitDiscount")).''; print 'rowid.($backtopage ? '&backtopage='.urlencode($backtopage) : '').'">'.img_delete($langs->trans("RemoveDiscount")).''; print ''; - } - else print ' '; + } else print ' '; print ''; if ($_GET["action"] == 'split' && GETPOST('remid') == $obj->rowid) @@ -546,9 +525,7 @@ if ($socid > 0) } $i++; } - } - else - { + } else { $colspan = 8; if (!empty($conf->multicurrency->enabled)) $colspan += 2; print ''.$langs->trans("None").''; @@ -569,9 +546,7 @@ if ($socid > 0) $langs->load("dict"); print $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id.'&remid='.$showconfirminfo['rowid'].($backtopage ? '&backtopage='.urlencode($backtopage) : ''), $langs->trans('SplitDiscount'), $langs->trans('ConfirmSplitDiscount', price($showconfirminfo['amount_ttc']), $langs->transnoentities("Currency".$conf->currency)), 'confirm_split', $formquestion, '', 0); } - } - else - { + } else { dol_print_error($db); } } @@ -646,8 +621,7 @@ if ($socid > 0) $facturefournstatic->type = $obj->type; print preg_replace('/\(CREDIT_NOTE\)/', $langs->trans("CreditNote"), $obj->description).' '.$facturefournstatic->getNomURl(1); print ''; - } - elseif (preg_match('/\(DEPOSIT\)/', $obj->description)) + } elseif (preg_match('/\(DEPOSIT\)/', $obj->description)) { print ''; $facturefournstatic->id = $obj->fk_invoice_supplier_source; @@ -655,8 +629,7 @@ if ($socid > 0) $facturefournstatic->type = $obj->type; print preg_replace('/\(DEPOSIT\)/', $langs->trans("InvoiceDeposit"), $obj->description).' '.$facturefournstatic->getNomURl(1); print ''; - } - elseif (preg_match('/\(EXCESS PAID\)/', $obj->description)) + } elseif (preg_match('/\(EXCESS PAID\)/', $obj->description)) { print ''; $facturefournstatic->id = $obj->fk_invoice_supplier_source; @@ -664,9 +637,7 @@ if ($socid > 0) $facturefournstatic->type = $obj->type; print preg_replace('/\(EXCESS PAID\)/', $langs->trans("ExcessPaid"), $obj->description).' '.$facturefournstatic->getNomURl(1); print ''; - } - else - { + } else { print ''; print $obj->description; print ''; @@ -692,8 +663,7 @@ if ($socid > 0) print 'rowid.($backtopage ? '&backtopage='.urlencode($backtopage) : '').'">'.img_split($langs->trans("SplitDiscount")).''; print 'rowid.($backtopage ? '&backtopage='.urlencode($backtopage) : '').'">'.img_delete($langs->trans("RemoveDiscount")).''; print ''; - } - else print ' '; + } else print ' '; print ''; if ($_GET["action"] == 'split' && GETPOST('remid') == $obj->rowid) @@ -703,9 +673,7 @@ if ($socid > 0) } $i++; } - } - else - { + } else { $colspan = 8; if (!empty($conf->multicurrency->enabled)) $colspan += 2; print ''.$langs->trans("None").''; @@ -726,9 +694,7 @@ if ($socid > 0) $langs->load("dict"); print $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id.'&remid='.$showconfirminfo['rowid'].($backtopage ? '&backtopage='.urlencode($backtopage) : ''), $langs->trans('SplitDiscount'), $langs->trans('ConfirmSplitDiscount', price($showconfirminfo['amount_ttc']), $langs->transnoentities("Currency".$conf->currency)), 'confirm_split', $formquestion, 0, 0); } - } - else - { + } else { dol_print_error($db); } @@ -857,8 +823,7 @@ if ($socid > 0) $facturestatic->type = $obj->type; print preg_replace('/\(CREDIT_NOTE\)/', $langs->trans("CreditNote"), $obj->description).' '.$facturestatic->getNomURl(1); print ''; - } - elseif (preg_match('/\(DEPOSIT\)/', $obj->description)) + } elseif (preg_match('/\(DEPOSIT\)/', $obj->description)) { print ''; $facturestatic->id = $obj->fk_facture_source; @@ -866,8 +831,7 @@ if ($socid > 0) $facturestatic->type = $obj->type; print preg_replace('/\(DEPOSIT\)/', $langs->trans("InvoiceDeposit"), $obj->description).' '.$facturestatic->getNomURl(1); print ''; - } - elseif (preg_match('/\(EXCESS RECEIVED\)/', $obj->description)) + } elseif (preg_match('/\(EXCESS RECEIVED\)/', $obj->description)) { print ''; $facturestatic->id = $obj->fk_facture_source; @@ -875,9 +839,7 @@ if ($socid > 0) $facturestatic->type = $obj->type; print preg_replace('/\(EXCESS RECEIVED\)/', $langs->trans("Invoice"), $obj->description).' '.$facturestatic->getNomURl(1); print ''; - } - else - { + } else { print ''; print $obj->description; print ''; @@ -906,9 +868,7 @@ if ($socid > 0) print ''; $i++; } - } - else - { + } else { $colspan = 8; if (!empty($conf->multicurrency->enabled)) $colspan += 2; print ''.$langs->trans("None").''; @@ -916,9 +876,7 @@ if ($socid > 0) print ""; print '
'; - } - else - { + } else { dol_print_error($db); } } @@ -1035,8 +993,7 @@ if ($socid > 0) $facturefournstatic->type = $obj->type; print preg_replace('/\(CREDIT_NOTE\)/', $langs->trans("CreditNote"), $obj->description).' '.$facturefournstatic->getNomURl(1); print ''; - } - elseif (preg_match('/\(DEPOSIT\)/', $obj->description)) + } elseif (preg_match('/\(DEPOSIT\)/', $obj->description)) { print ''; $facturefournstatic->id = $obj->fk_invoice_supplier_source; @@ -1044,8 +1001,7 @@ if ($socid > 0) $facturefournstatic->type = $obj->type; print preg_replace('/\(DEPOSIT\)/', $langs->trans("InvoiceDeposit"), $obj->description).' '.$facturefournstatic->getNomURl(1); print ''; - } - elseif (preg_match('/\(EXCESS PAID\)/', $obj->description)) + } elseif (preg_match('/\(EXCESS PAID\)/', $obj->description)) { print ''; $facturefournstatic->id = $obj->fk_invoice_supplier_source; @@ -1053,9 +1009,7 @@ if ($socid > 0) $facturefournstatic->type = $obj->type; print preg_replace('/\(EXCESS PAID\)/', $langs->trans("Invoice"), $obj->description).' '.$facturefournstatic->getNomURl(1); print ''; - } - else - { + } else { print ''; print $obj->description; print ''; @@ -1083,9 +1037,7 @@ if ($socid > 0) print ''; $i++; } - } - else - { + } else { $colspan = 8; if (!empty($conf->multicurrency->enabled)) $colspan += 2; print ''.$langs->trans("None").''; @@ -1093,9 +1045,7 @@ if ($socid > 0) print ""; print '
'; - } - else - { + } else { dol_print_error($db); } diff --git a/htdocs/commande/card.php b/htdocs/commande/card.php index b43a702c2f2..3efb94855a7 100644 --- a/htdocs/commande/card.php +++ b/htdocs/commande/card.php @@ -154,9 +154,7 @@ if (empty($reshook)) if (1 == 0 && !GETPOST('clone_content') && !GETPOST('clone_receivers')) { setEventMessages($langs->trans("NoCloneOptionsSpecified"), null, 'errors'); - } - else - { + } else { if ($object->id > 0) { // Because createFromClone modifies the object, we must clone it so that we can restore it later @@ -167,9 +165,7 @@ if (empty($reshook)) { header("Location: ".$_SERVER['PHP_SELF'].'?id='.$result); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); $object = $orig; $action = ''; @@ -187,9 +183,7 @@ if (empty($reshook)) if ($result > 0) { setEventMessages($langs->trans('OrderReopened', $object->ref), null); - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -203,9 +197,7 @@ if (empty($reshook)) { header('Location: list.php?restore_lastsearch_values=1'); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -234,9 +226,7 @@ if (empty($reshook)) header('Location: '.$_SERVER["PHP_SELF"].'?id='.$object->id); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -384,7 +374,7 @@ if (empty($reshook)) } // Extrafields - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED) && method_exists($lines[$i], 'fetch_optionals')) // For avoid conflicts if trigger used + if (method_exists($lines[$i], 'fetch_optionals')) // For avoid conflicts if trigger used { $lines[$i]->fetch_optionals(); $array_options = $lines[$i]->array_options; @@ -502,17 +492,14 @@ if (empty($reshook)) setEventMessages($object->error, $object->errors, 'errors'); } } - } - - elseif ($action == 'classifybilled' && $usercancreate) + } elseif ($action == 'classifybilled' && $usercancreate) { $ret = $object->classifyBilled($user); if ($ret < 0) { setEventMessages($object->error, $object->errors, 'errors'); } - } - elseif ($action == 'classifyunbilled' && $usercancreate) + } elseif ($action == 'classifyunbilled' && $usercancreate) { $ret = $object->classifyUnBilled(); if ($ret < 0) { @@ -527,17 +514,13 @@ if (empty($reshook)) { setEventMessages($object->error, $object->errors, 'errors'); } - } - - elseif ($action == 'setremise' && $usercancreate) { + } elseif ($action == 'setremise' && $usercancreate) { $result = $object->set_remise($user, GETPOST('remise')); if ($result < 0) { setEventMessages($object->error, $object->errors, 'errors'); } - } - - elseif ($action == 'setabsolutediscount' && $usercancreate) { + } elseif ($action == 'setabsolutediscount' && $usercancreate) { if (GETPOST('remise_id')) { if ($object->id > 0) { $object->insert_discount(GETPOST('remise_id')); @@ -545,9 +528,7 @@ if (empty($reshook)) dol_print_error($db, $object->error); } } - } - - elseif ($action == 'setdate' && $usercancreate) { + } 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')); @@ -555,19 +536,16 @@ if (empty($reshook)) if ($result < 0) { setEventMessages($object->error, $object->errors, 'errors'); } - } + } elseif ($action == 'setdate_livraison' && $usercancreate) { + // print "x ".$_POST['liv_month'].", ".$_POST['liv_day'].", ".$_POST['liv_year']; + $datedelivery = dol_mktime(GETPOST('liv_hour', 'int'), GETPOST('liv_min', 'int'), 0, GETPOST('liv_month', 'int'), GETPOST('liv_day', 'int'), GETPOST('liv_year', 'int')); - 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')); - - $result = $object->set_date_livraison($user, $datelivraison); - if ($result < 0) { - setEventMessages($object->error, $object->errors, 'errors'); - } - } - - elseif ($action == 'setmode' && $usercancreate) { + $object->fetch($id); + $result = $object->set_date_livraison($user, $datedelivery); + if ($result < 0) { + setEventMessages($object->error, $object->errors, 'errors'); + } + } elseif ($action == 'setmode' && $usercancreate) { $result = $object->setPaymentMethods(GETPOST('mode_reglement_id', 'int')); if ($result < 0) setEventMessages($object->error, $object->errors, 'errors'); @@ -581,21 +559,15 @@ if (empty($reshook)) // Multicurrency rate elseif ($action == 'setmulticurrencyrate' && $usercancreate) { $result = $object->setMulticurrencyRate(price2num(GETPOST('multicurrency_tx'))); - } - - elseif ($action == 'setavailability' && $usercancreate) { + } elseif ($action == 'setavailability' && $usercancreate) { $result = $object->availability(GETPOST('availability_id')); if ($result < 0) setEventMessages($object->error, $object->errors, 'errors'); - } - - elseif ($action == 'setdemandreason' && $usercancreate) { + } elseif ($action == 'setdemandreason' && $usercancreate) { $result = $object->demand_reason(GETPOST('demand_reason_id')); if ($result < 0) setEventMessages($object->error, $object->errors, 'errors'); - } - - elseif ($action == 'setconditions' && $usercancreate) { + } elseif ($action == 'setconditions' && $usercancreate) { $result = $object->setPaymentTerms(GETPOST('cond_reglement_id', 'int')); if ($result < 0) { dol_print_error($db, $object->error); @@ -648,13 +620,9 @@ if (empty($reshook)) if ($result < 0) { setEventMessages($object->error, $object->errors, 'errors'); } - } - - elseif ($action == 'setremisepercent' && $usercancreate) { + } elseif ($action == 'setremisepercent' && $usercancreate) { $result = $object->set_remise($user, GETPOST('remise_percent')); - } - - elseif ($action == 'setremiseabsolue' && $usercancreate) { + } elseif ($action == 'setremiseabsolue' && $usercancreate) { $result = $object->set_remise_absolue($user, GETPOST('remise_absolue')); } @@ -674,9 +642,7 @@ if (empty($reshook)) { $idprod = 0; $tva_tx = (GETPOST('tva_tx') ? GETPOST('tva_tx') : 0); - } - else - { + } else { $idprod = GETPOST('idprod', 'int'); $tva_tx = ''; } @@ -724,9 +690,7 @@ if (empty($reshook)) if ($res = $prodcomb->fetchByProductCombination2ValuePairs($idprod, $combinations)) { $idprod = $res->fk_product_child; - } - else - { + } else { setEventMessages($langs->trans('ErrorProductCombinationNotFound'), null, 'errors'); $error++; } @@ -794,9 +758,7 @@ if (empty($reshook)) $tva_npr = $prodcustprice->lines[0]->recuperableonly; if (empty($tva_tx)) $tva_npr = 0; } - } - else - { + } else { setEventMessages($prodcustprice->error, $prodcustprice->errors, 'errors'); } } @@ -816,9 +778,7 @@ if (empty($reshook)) if ($priceforthequantityarray['price_base_type'] == 'HT') { $pu_ht = $priceforthequantityarray['unitprice']; - } - else - { + } else { $pu_ttc = $priceforthequantityarray['unitprice']; } // Note: the remise_percent or price by qty is used to set data on form, so we will use value from POST. @@ -841,9 +801,7 @@ if (empty($reshook)) if ($priceforthequantityarray['price_base_type'] == 'HT') { $pu_ht = $priceforthequantityarray['unitprice']; - } - else - { + } else { $pu_ttc = $priceforthequantityarray['unitprice']; } // Note: the remise_percent or price by qty is used to set data on form, so we will use value from POST. @@ -1156,9 +1114,7 @@ if (empty($reshook)) } 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' && $usercanvalidate) + } elseif ($action == 'confirm_validate' && $confirm == 'yes' && $usercanvalidate) { $idwarehouse = GETPOST('idwarehouse'); @@ -1166,9 +1122,7 @@ if (empty($reshook)) if (empty($conf->global->STOCK_SUPPORTS_SERVICES)) { $qualified_for_stock_change = $object->hasProductsOrServices(2); - } - else - { + } else { $qualified_for_stock_change = $object->hasProductsOrServices(1); } @@ -1203,9 +1157,7 @@ if (empty($reshook)) $object->generateDocument($model, $outputlangs, $hidedetails, $hidedesc, $hideref); } - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -1219,9 +1171,7 @@ if (empty($reshook)) if (empty($conf->global->STOCK_SUPPORTS_SERVICES)) { $qualified_for_stock_change = $object->hasProductsOrServices(2); - } - else - { + } else { $qualified_for_stock_change = $object->hasProductsOrServices(1); } @@ -1258,16 +1208,12 @@ if (empty($reshook)) } } } - } - - elseif ($action == 'confirm_shipped' && $confirm == 'yes' && $usercanclose) { + } 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' && $usercanvalidate) + } elseif ($action == 'confirm_cancel' && $confirm == 'yes' && $usercanvalidate) { $idwarehouse = GETPOST('idwarehouse'); @@ -1275,9 +1221,7 @@ if (empty($reshook)) if (empty($conf->global->STOCK_SUPPORTS_SERVICES)) { $qualified_for_stock_change = $object->hasProductsOrServices(2); - } - else - { + } else { $qualified_for_stock_change = $object->hasProductsOrServices(1); } @@ -1348,8 +1292,7 @@ if (empty($reshook)) { dol_include_once('/'.$fromElement.'/class/'.$fromElement.'.class.php'); $lineClassName = 'OrderLine'; - } - elseif ($fromElement == 'propal') + } elseif ($fromElement == 'propal') { dol_include_once('/comm/'.$fromElement.'/class/'.$fromElement.'.class.php'); $lineClassName = 'PropaleLigne'; @@ -1401,8 +1344,7 @@ if (empty($reshook)) } else { $error++; } - } - else { + } else { $error++; } } @@ -1493,7 +1435,7 @@ if (!empty($conf->projet->enabled)) { $formproject = new FormProjets($db); } // Mode creation if ($action == 'create' && $usercancreate) { - print load_fiche_titre($langs->trans('CreateOrder'), '', 'commercial'); + print load_fiche_titre($langs->trans('CreateOrder'), '', 'order'); $soc = new Societe($db); if ($socid > 0) @@ -1532,12 +1474,10 @@ if ($action == 'create' && $usercancreate) // For compatibility if ($element == 'order' || $element == 'commande') { $element = $subelement = 'commande'; - } - elseif ($element == 'propal') { + } elseif ($element == 'propal') { $element = 'comm/propal'; $subelement = 'propal'; - } - elseif ($element == 'contract') { + } elseif ($element == 'contract') { $element = $subelement = 'contrat'; } @@ -1583,9 +1523,7 @@ if ($action == 'create' && $usercancreate) // Object source contacts list $srccontactslist = $objectsrc->liste_contact(-1, 'external', 1); } - } - else - { + } else { $cond_reglement_id = $soc->cond_reglement_id; $mode_reglement_id = $soc->mode_reglement_id; $fk_account = $soc->fk_account; @@ -1623,8 +1561,7 @@ if ($action == 'create' && $usercancreate) print ''.$langs->trans('RefCustomer').''; if (!empty($conf->global->MAIN_USE_PROPAL_REFCLIENT_FOR_ORDER) && !empty($origin) && !empty($originid)) print ''; - else - print ''; + else print ''; print ''; // Thirdparty @@ -1681,15 +1618,14 @@ if ($action == 'create' && $usercancreate) print $form->selectDate('', 're', '', '', '', "crea_commande", 1, 1); // Always autofill date with current date print ''; - // Delivery date planed - print "".$langs->trans("DateDeliveryPlanned").''; - if (empty($datedelivery)) - { - if (!empty($conf->global->DATE_LIVRAISON_WEEK_DELAY)) $datedelivery = time() + ((7 * $conf->global->DATE_LIVRAISON_WEEK_DELAY) * 24 * 60 * 60); - else $datedelivery = empty($conf->global->MAIN_AUTOFILL_DATE_DELIVERY) ?-1 : ''; - } - print $form->selectDate($datedelivery, 'liv_', '', '', '', "crea_commande", 1, 1); - print ""; + // Date delivery planned + print ''.$langs->trans("DateDeliveryPlanned").''; + print ''; + //print dol_print_date($object->date_livraison, "day"); // date_livraison come from order and will be stored into date_delivery planed. + $date_delivery = ($date_delivery ? $date_delivery : $object->date_livraison); // $date_delivery comes from GETPOST + print $form->selectDate($date_delivery ? $date_delivery : -1, 'date_delivery', 1, 1, 1); + print "\n"; + print ''; // terms of the settlement print ''.$langs->trans('PaymentConditionsShort').''; @@ -1957,9 +1893,7 @@ if ($action == 'create' && $usercancreate) if (empty($conf->global->STOCK_SUPPORTS_SERVICES)) { $qualified_for_stock_change = $object->hasProductsOrServices(2); - } - else - { + } else { $qualified_for_stock_change = $object->hasProductsOrServices(1); } @@ -1989,9 +1923,7 @@ if ($action == 'create' && $usercancreate) if (empty($conf->global->STOCK_SUPPORTS_SERVICES)) { $qualified_for_stock_change = $object->hasProductsOrServices(2); - } - else - { + } else { $qualified_for_stock_change = $object->hasProductsOrServices(1); } @@ -2031,9 +1963,7 @@ if ($action == 'create' && $usercancreate) if (empty($conf->global->STOCK_SUPPORTS_SERVICES)) { $qualified_for_stock_change = $object->hasProductsOrServices(2); - } - else - { + } else { $qualified_for_stock_change = $object->hasProductsOrServices(1); } @@ -2209,11 +2139,11 @@ if ($action == 'create' && $usercancreate) print '
'; print ''; print ''; - print $form->selectDate($object->date_livraison ? $object->date_livraison : - 1, 'liv_', '', '', '', "setdate_livraison"); + print $form->selectDate($object->date_livraison ? $object->date_livraison : -1, 'liv_', 1, 1, '', "setdate_livraison", 1, 0); print ''; print '
'; } else { - print $object->date_livraison ? dol_print_date($object->date_livraison, 'daytext') : ' '; + print $object->date_livraison ? dol_print_date($object->date_livraison, 'dayhour') : ' '; if ($object->hasDelay() && !empty($object->date_livraison)) { print ' '.img_picto($langs->trans("Late").' : '.$object->showDelay(), "warning"); } @@ -2387,9 +2317,7 @@ if ($action == 'create' && $usercancreate) if ($action != 'editincoterm') { print $form->textwithpicto($object->display_incoterms(), $object->label_incoterms, 1); - } - else - { + } else { print $form->select_incoterms((!empty($object->fk_incoterms) ? $object->fk_incoterms : ''), (!empty($object->location_incoterms) ? $object->location_incoterms : ''), $_SERVER['PHP_SELF'].'?id='.$object->id); } print ''; @@ -2561,8 +2489,7 @@ if ($action == 'create' && $usercancreate) if ($object->statut > Commande::STATUS_DRAFT || !empty($conf->global->COMMANDE_SENDBYEMAIL_FOR_ALL_STATUS)) { if ($usercansend) { print ''.$langs->trans('SendMail').''; - } else - print ''.$langs->trans('SendMail').''; + } else print ''.$langs->trans('SendMail').''; } } @@ -2688,13 +2615,13 @@ if ($action == 'create' && $usercancreate) print '
'; print ''; // ancre // Documents - $comref = dol_sanitizeFileName($object->ref); - $relativepath = $comref.'/'.$comref.'.pdf'; - $filedir = $conf->commande->multidir_output[$object->entity].'/'.$comref; + $objref = dol_sanitizeFileName($object->ref); + $relativepath = $objref.'/'.$objref.'.pdf'; + $filedir = $conf->commande->multidir_output[$object->entity].'/'.$objref; $urlsource = $_SERVER["PHP_SELF"]."?id=".$object->id; $genallowed = $usercanread; $delallowed = $usercancreate; - print $formfile->showdocuments('commande', $comref, $filedir, $urlsource, $genallowed, $delallowed, $object->modelpdf, 1, 0, 0, 28, 0, '', '', '', $soc->default_lang, '', $object); + print $formfile->showdocuments('commande', $objref, $filedir, $urlsource, $genallowed, $delallowed, $object->modelpdf, 1, 0, 0, 28, 0, '', '', '', $soc->default_lang, '', $object); // Show links to link elements diff --git a/htdocs/commande/class/api_orders.class.php b/htdocs/commande/class/api_orders.class.php index 289bbea2c7e..cc7db3db852 100644 --- a/htdocs/commande/class/api_orders.class.php +++ b/htdocs/commande/class/api_orders.class.php @@ -33,7 +33,8 @@ class Orders extends DolibarrApi * @var array $FIELDS Mandatory fields, checked when create and update object */ static $FIELDS = array( - 'socid' + 'socid', + 'date' ); /** @@ -222,8 +223,7 @@ class Orders extends DolibarrApi } $i++; } - } - else { + } else { throw new RestException(503, 'Error when retrieve commande list : '.$db->lasterror()); } if (!count($obj_ret)) { @@ -233,7 +233,9 @@ class Orders extends DolibarrApi } /** - * Create order object + * Create a sale order + * + * Exemple: { "socid": 2, "date": 1595196000, "type": 0, "lines": [{ "fk_product": 2, "qty": 1 }] } * * @param array $request_data Request data * @return int ID of order @@ -566,9 +568,7 @@ class Orders extends DolibarrApi if ($this->commande->update(DolibarrApiAccess::$user) > 0) { return $this->get($id); - } - else - { + } else { throw new RestException(500, $this->commande->error); } } @@ -696,7 +696,7 @@ class Orders extends DolibarrApi $result = $this->commande->set_reopen(DolibarrApiAccess::$user); if ($result < 0) { throw new RestException(405, $this->commande->error); - }elseif ($result == 0) { + } elseif ($result == 0) { throw new RestException(304); } diff --git a/htdocs/commande/class/commande.class.php b/htdocs/commande/class/commande.class.php index c39a5a05a13..1c3c44dce93 100644 --- a/htdocs/commande/class/commande.class.php +++ b/htdocs/commande/class/commande.class.php @@ -406,16 +406,12 @@ class Commande extends CommonOrder if ($numref != "") { return $numref; - } - else - { + } else { $this->error = $obj->error; //dol_print_error($this->db,get_class($this)."::getNextNumRef ".$obj->error); return ""; } - } - else - { + } else { print $langs->trans("Error")." ".$langs->trans("Error_COMMANDE_ADDON_NotDefined"); return ""; } @@ -468,9 +464,7 @@ class Commande extends CommonOrder if (!$error && (preg_match('/^[\(]?PROV/i', $this->ref) || empty($this->ref))) // empty should not happened, but when it occurs, the test save life { $num = $this->getNextNumRef($soc); - } - else - { + } else { $num = $this->ref; } $this->newref = dol_sanitizeFileName($num); @@ -581,9 +575,7 @@ class Commande extends CommonOrder { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -668,9 +660,7 @@ class Commande extends CommonOrder $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -1; @@ -711,9 +701,7 @@ class Commande extends CommonOrder $result = $this->call_trigger('ORDER_REOPEN', $user); if ($result < 0) $error++; // End call triggers - } - else - { + } else { $error++; $this->error = $this->db->lasterror(); dol_print_error($this->db); @@ -726,9 +714,7 @@ class Commande extends CommonOrder $this->db->commit(); return 1; - } - else - { + } else { foreach ($this->errors as $errmsg) { dol_syslog(get_class($this)."::set_reopen ".$errmsg, LOG_ERR); @@ -783,15 +769,11 @@ class Commande extends CommonOrder $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); @@ -861,9 +843,7 @@ class Commande extends CommonOrder $this->statut = self::STATUS_CANCELED; $this->db->commit(); return 1; - } - else - { + } else { foreach ($this->errors as $errmsg) { dol_syslog(get_class($this)."::cancel ".$errmsg, LOG_ERR); @@ -872,9 +852,7 @@ class Commande extends CommonOrder $this->db->rollback(); return -1 * $error; } - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -1; @@ -1100,8 +1078,7 @@ class Commande extends CommonOrder $error++; } } - } - else // Old behaviour, if linked_object has only one link per type, so is something like array('contract'=>id1)) + } else // Old behaviour, if linked_object has only one link per type, so is something like array('contract'=>id1)) { $origin_id = $tmp_origin_id; $ret = $this->add_object_linked($origin, $origin_id); @@ -1147,8 +1124,7 @@ class Commande extends CommonOrder //print $objcontact->code.'-'.$objcontact->source.'-'.$objcontact->fk_socpeople."\n"; $this->add_contact($objcontact->fk_socpeople, $objcontact->code, $objcontact->source); // May failed because of duplicate key or because code of contact type does not exists for new object } - } - else dol_print_error($resqlcontact); + } else dol_print_error($resqlcontact); } if (!$error) @@ -1169,23 +1145,17 @@ class Commande extends CommonOrder { $this->db->commit(); return $this->id; - } - else - { + } else { $this->db->rollback(); return -1 * $error; } - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -1; } } - } - else - { + } else { dol_print_error($this->db); $this->db->rollback(); return -1; @@ -1288,9 +1258,7 @@ class Commande extends CommonOrder { $this->db->commit(); return $this->id; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -1421,10 +1389,8 @@ class Commande extends CommonOrder $this->valid($user); } return $ret; - } - else return -1; - } - else return -1; + } else return -1; + } else return -1; } @@ -1504,9 +1470,7 @@ class Commande extends CommonOrder if ($price_base_type == 'HT') { $pu = $pu_ht; - } - else - { + } else { $pu = $pu_ttc; } $label = trim($label); @@ -1665,23 +1629,17 @@ class Commande extends CommonOrder { $this->db->commit(); return $this->line->id; - } - else - { + } else { $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = $this->line->error; dol_syslog(get_class($this)."::addline error=".$this->error, LOG_ERR); $this->db->rollback(); return -2; } - } - else - { + } else { dol_syslog(get_class($this)."::addline status of order must be Draft to allow use of ->addline()", LOG_ERR); return -3; } @@ -1920,15 +1878,11 @@ class Commande extends CommonOrder return -3; } return 1; - } - else - { + } else { $this->error = 'Order with id '.$id.' not found sql='.$sql; return 0; } - } - else - { + } else { $this->error = $this->db->error(); return -1; } @@ -1992,22 +1946,16 @@ class Commande extends CommonOrder { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = $line->error; $this->db->rollback(); return -2; } - } - else - { + } else { $this->db->rollback(); return -2; } @@ -2018,7 +1966,7 @@ class Commande extends CommonOrder /** * Load array lines * - * @param int $only_product Return only physical products + * @param int $only_product Return only physical products, not services * @param int $loadalsotranslation Return translation for products * @return int <0 if KO, >0 if OK */ @@ -2132,9 +2080,7 @@ class Commande extends CommonOrder $this->db->free($result); return 1; - } - else - { + } else { $this->error = $this->db->error(); return -3; } @@ -2197,9 +2143,7 @@ class Commande extends CommonOrder $this->db->free($resql); return $nb; - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -2244,9 +2188,7 @@ class Commande extends CommonOrder } $this->db->free($resql); return $num; - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -2275,8 +2217,7 @@ class Commande extends CommonOrder { $row = $this->db->fetch_row($resql); return $row[0]; - } - else dol_print_error($this->db); + } else dol_print_error($this->db); } // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps @@ -2362,36 +2303,26 @@ class Commande extends CommonOrder { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); $this->error = $this->db->lasterror(); return -1; } - } - else - { + } else { $this->db->rollback(); $this->error = $line->error; return -1; } - } - else - { + } else { $this->db->rollback(); return 0; } - } - else - { + } else { $this->db->rollback(); $this->error = $this->db->lasterror(); return -1; } - } - else - { + } else { $this->error = 'ErrorDeleteLineNotAllowedByObjectStatus'; return -1; } @@ -2450,9 +2381,7 @@ class Commande extends CommonOrder { $this->db->commit(); return 1; - } - else - { + } else { foreach ($this->errors as $errmsg) { dol_syslog(__METHOD__.' Error: '.$errmsg, LOG_ERR); @@ -2518,9 +2447,7 @@ class Commande extends CommonOrder { $this->db->commit(); return 1; - } - else - { + } else { foreach ($this->errors as $errmsg) { dol_syslog(__METHOD__.' Error: '.$errmsg, LOG_ERR); @@ -2581,9 +2508,7 @@ class Commande extends CommonOrder { $this->db->commit(); return 1; - } - else - { + } else { foreach ($this->errors as $errmsg) { dol_syslog(__METHOD__.' Error: '.$errmsg, LOG_ERR); @@ -2592,9 +2517,7 @@ class Commande extends CommonOrder $this->db->rollback(); return -1 * $error; } - } - else - { + } else { return -2; } } @@ -2647,9 +2570,7 @@ class Commande extends CommonOrder { $this->db->commit(); return 1; - } - else - { + } else { foreach ($this->errors as $errmsg) { dol_syslog(__METHOD__.' Error: '.$errmsg, LOG_ERR); @@ -2658,9 +2579,7 @@ class Commande extends CommonOrder $this->db->rollback(); return -1 * $error; } - } - else - { + } else { return -2; } } @@ -2717,13 +2636,10 @@ class Commande extends CommonOrder if ($shortlist == 1) { $ga[$obj->cid] = $obj->ref; - } - elseif ($shortlist == 2) + } elseif ($shortlist == 2) { $ga[$obj->cid] = $obj->ref.' ('.$obj->name.')'; - } - else - { + } else { $ga[$i]['id'] = $obj->cid; $ga[$i]['ref'] = $obj->ref; $ga[$i]['name'] = $obj->name; @@ -2732,9 +2648,7 @@ class Commande extends CommonOrder } } return $ga; - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -2788,9 +2702,7 @@ class Commande extends CommonOrder { $this->db->commit(); return 1; - } - else - { + } else { foreach ($this->errors as $errmsg) { dol_syslog(__METHOD__.' Error: '.$errmsg, LOG_ERR); @@ -2799,9 +2711,7 @@ class Commande extends CommonOrder $this->db->rollback(); return -1 * $error; } - } - else - { + } else { $error_str = 'Command status do not meet requirement '.$this->statut; dol_syslog(__METHOD__.$error_str, LOG_ERR); $this->error = $error_str; @@ -2860,9 +2770,7 @@ class Commande extends CommonOrder { $this->db->commit(); return 1; - } - else - { + } else { foreach ($this->errors as $errmsg) { dol_syslog(__METHOD__.' Error: '.$errmsg, LOG_ERR); @@ -2871,9 +2779,7 @@ class Commande extends CommonOrder $this->db->rollback(); return -1 * $error; } - } - else - { + } else { $error_str = 'order status do not meet requirement '.$this->statut; dol_syslog(__METHOD__.$error_str, LOG_ERR); $this->error = $error_str; @@ -2929,9 +2835,7 @@ class Commande extends CommonOrder { $this->db->commit(); return 1; - } - else - { + } else { foreach ($this->errors as $errmsg) { dol_syslog(__METHOD__.' Error: '.$errmsg, LOG_ERR); @@ -2940,9 +2844,7 @@ class Commande extends CommonOrder $this->db->rollback(); return -1 * $error; } - } - else - { + } else { return -1; } } @@ -2984,9 +2886,7 @@ class Commande extends CommonOrder { $this->db->commit(); return 1; - } - else - { + } else { foreach ($this->errors as $errmsg) { dol_syslog(get_class($this)."::classifyBilled ".$errmsg, LOG_ERR); @@ -2995,9 +2895,7 @@ class Commande extends CommonOrder $this->db->rollback(); return -1 * $error; } - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -1; @@ -3039,9 +2937,7 @@ class Commande extends CommonOrder $this->db->commit(); return 1; - } - else - { + } else { foreach ($this->errors as $errmsg) { dol_syslog(get_class($this)."::classifyUnBilled ".$errmsg, LOG_ERR); @@ -3050,9 +2946,7 @@ class Commande extends CommonOrder $this->db->rollback(); return -1 * $error; } - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -1; @@ -3160,9 +3054,7 @@ class Commande extends CommonOrder if ($price_base_type == 'TTC') { $subprice = $pu_ttc; - } - else - { + } else { $subprice = $pu_ht; } $remise = 0; @@ -3265,17 +3157,13 @@ class Commande extends CommonOrder $this->db->commit(); return $result; - } - else - { + } else { $this->error = $this->line->error; $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = get_class($this)."::updateline Order status makes operation forbidden"; $this->errors = array('OrderStatusMakeOperationForbidden'); return -2; @@ -3342,7 +3230,7 @@ class Commande extends CommonOrder $error++; $this->errors[] = "Error ".$this->db->lasterror(); } - if (!$error && empty($conf->global->MAIN_EXTRAFIELDS_DISABLED) && is_array($this->array_options) && count($this->array_options) > 0) + if (!$error) { $result = $this->insertExtraFields(); if ($result < 0) @@ -3369,9 +3257,7 @@ class Commande extends CommonOrder } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } @@ -3409,6 +3295,19 @@ class Commande extends CommonOrder $error++; } + if (!$error) + { + // Delete extrafields of order details + $main = MAIN_DB_PREFIX.'commandedet'; + $ef = $main."_extrafields"; + $sql = "DELETE FROM $ef WHERE fk_object IN (SELECT rowid FROM $main WHERE fk_commande = ".$this->id.")"; + if (!$this->db->query($sql)) + { + $error++; + $this->errors[] = $this->db->lasterror(); + } + } + if (!$error) { // Delete order details @@ -3437,14 +3336,11 @@ class Commande extends CommonOrder if (!$error) { // Remove extrafields - if ((!$error) && (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED))) // For avoid conflicts if trigger used + $result = $this->deleteExtraFields(); + if ($result < 0) { - $result = $this->deleteExtraFields(); - if ($result < 0) - { - $error++; - dol_syslog(get_class($this)."::delete error -4 ".$this->error, LOG_ERR); - } + $error++; + dol_syslog(get_class($this)."::delete error -4 ".$this->error, LOG_ERR); } } @@ -3493,9 +3389,7 @@ class Commande extends CommonOrder { $this->db->commit(); return 1; - } - else - { + } else { foreach ($this->errors as $errmsg) { $this->error .= ($this->error ? ', '.$errmsg : $errmsg); @@ -3560,9 +3454,7 @@ class Commande extends CommonOrder } return $response; - } - else - { + } else { $this->error = $this->db->error(); return -1; } @@ -3616,38 +3508,31 @@ class Commande extends CommonOrder $labelStatus = $langs->trans('StatusOrderCanceled'); $labelStatusShort = $langs->trans('StatusOrderCanceledShort'); $statusType = 'status9'; - } - elseif ($status == self::STATUS_DRAFT) { + } elseif ($status == self::STATUS_DRAFT) { $labelStatus = $langs->trans('StatusOrderDraft'); $labelStatusShort = $langs->trans('StatusOrderDraftShort'); $statusType = 'status0'; - } - elseif ($status == self::STATUS_VALIDATED) { + } elseif ($status == self::STATUS_VALIDATED) { $labelStatus = $langs->trans('StatusOrderValidated').$billedtext; $labelStatusShort = $langs->trans('StatusOrderValidatedShort').$billedtext; $statusType = 'status1'; - } - elseif ($status == self::STATUS_SHIPMENTONPROCESS) { + } elseif ($status == self::STATUS_SHIPMENTONPROCESS) { $labelStatus = $langs->trans('StatusOrderSentShort').$billedtext; $labelStatusShort = $langs->trans('StatusOrderSentShort').$billedtext; $statusType = 'status4'; - } - elseif ($status == self::STATUS_CLOSED && (!$billed && empty($conf->global->WORKFLOW_BILL_ON_SHIPMENT))) { + } elseif ($status == self::STATUS_CLOSED && (!$billed && empty($conf->global->WORKFLOW_BILL_ON_SHIPMENT))) { $labelStatus = $langs->trans('StatusOrderToBill'); $labelStatusShort = $langs->trans('StatusOrderToBillShort'); $statusType = 'status4'; - } - elseif ($status == self::STATUS_CLOSED && ($billed && empty($conf->global->WORKFLOW_BILL_ON_SHIPMENT))) { + } elseif ($status == self::STATUS_CLOSED && ($billed && empty($conf->global->WORKFLOW_BILL_ON_SHIPMENT))) { $labelStatus = $langs->trans('StatusOrderProcessed').$billedtext; $labelStatusShort = $langs->trans('StatusOrderProcessed').$billedtext; $statusType = 'status6'; - } - elseif ($status == self::STATUS_CLOSED && (!empty($conf->global->WORKFLOW_BILL_ON_SHIPMENT))) { + } elseif ($status == self::STATUS_CLOSED && (!empty($conf->global->WORKFLOW_BILL_ON_SHIPMENT))) { $labelStatus = $langs->trans('StatusOrderDelivered'); $labelStatusShort = $langs->trans('StatusOrderDelivered'); $statusType = 'status6'; - } - else { + } else { $labelStatus = $langs->trans('Unknown'); $labelStatusShort = ''; $statusType = ''; @@ -3809,9 +3694,7 @@ class Commande extends CommonOrder } $this->db->free($result); - } - else - { + } else { dol_print_error($this->db); } } @@ -3885,9 +3768,7 @@ class Commande extends CommonOrder $line->total_ttc = 60; $line->total_tva = 10; $line->remise_percent = 50; - } - else - { + } else { $line->total_ht = 100; $line->total_ttc = 120; $line->total_tva = 20; @@ -3945,9 +3826,7 @@ class Commande extends CommonOrder } $this->db->free($resql); return 1; - } - else - { + } else { dol_print_error($this->db); $this->error = $this->db->error(); return -1; @@ -4198,9 +4077,7 @@ class OrderLine extends CommonOrderLine $this->db->free($result); return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -4255,7 +4132,7 @@ class OrderLine extends CommonOrderLine if ($resql) { // Remove extrafields - if ((!$error) && (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED))) // For avoid conflicts if trigger used + if (!$error) { $this->id = $this->rowid; $result = $this->deleteExtraFields(); @@ -4286,9 +4163,7 @@ class OrderLine extends CommonOrderLine } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -4333,9 +4208,7 @@ class OrderLine extends CommonOrderLine if (($result = $this->defineBuyPrice($this->subprice, $this->remise_percent, $this->fk_product)) < 0) { return $result; - } - else - { + } else { $this->pa_ht = $result; } } @@ -4401,7 +4274,7 @@ class OrderLine extends CommonOrderLine $this->id = $this->db->last_insert_id(MAIN_DB_PREFIX.'commandedet'); $this->rowid = $this->id; - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + if (!$error) { $result = $this->insertExtraFields(); if ($result < 0) @@ -4430,9 +4303,7 @@ class OrderLine extends CommonOrderLine } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -2; @@ -4479,9 +4350,7 @@ class OrderLine extends CommonOrderLine if (($result = $this->defineBuyPrice($this->subprice, $this->remise_percent, $this->fk_product)) < 0) { return $result; - } - else - { + } else { $this->pa_ht = $result; } } @@ -4534,7 +4403,7 @@ class OrderLine extends CommonOrderLine $resql = $this->db->query($sql); if ($resql) { - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + if (!$error) { $this->id = $this->rowid; $result = $this->insertExtraFields(); @@ -4564,9 +4433,7 @@ class OrderLine extends CommonOrderLine } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -2; @@ -4605,9 +4472,7 @@ class OrderLine extends CommonOrderLine { $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -2; diff --git a/htdocs/commande/class/commandestats.class.php b/htdocs/commande/class/commandestats.class.php index 8b6dc4db6ec..5af5fb23060 100644 --- a/htdocs/commande/class/commandestats.class.php +++ b/htdocs/commande/class/commandestats.class.php @@ -3,6 +3,7 @@ * Copyright (c) 2005-2013 Laurent Destailleur * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2012 Marcos García + * Copyright (C) 2020 Maxime DEMAREST * * 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 @@ -45,17 +46,20 @@ class CommandeStats extends Stats public $from; public $field; public $where; + public $join; /** * Constructor * - * @param DoliDB $db Database handler - * @param int $socid Id third party for filter. This value must be forced during the new to external user company if user is an external user. - * @param string $mode Option ('customer', 'supplier') - * @param int $userid Id user for filter (creation user) + * @param DoliDB $db Database handler + * @param int $socid Id third party for filter. This value must be forced during the new to external user company if user is an external user. + * @param string $mode Option ('customer', 'supplier') + * @param int $userid Id user for filter (creation user) + * @param int $typentid Id typent of thirdpary for filter + * @param int $categid Id category of thirdpary for filter */ - public function __construct($db, $socid, $mode, $userid = 0) + public function __construct($db, $socid, $mode, $userid = 0, $typentid = 0, $categid = 0) { global $user, $conf; @@ -64,6 +68,7 @@ class CommandeStats extends Stats $this->socid = ($socid > 0 ? $socid : 0); $this->userid = $userid; $this->cachefilesuffix = $mode; + $this->join = ''; if ($mode == 'customer') { @@ -73,8 +78,7 @@ class CommandeStats extends Stats $this->field = 'total_ht'; $this->field_line = 'total_ht'; $this->where .= " c.fk_statut > 0"; // Not draft and not cancelled - } - elseif ($mode == 'supplier') + } elseif ($mode == 'supplier') { $object = new CommandeFournisseur($this->db); $this->from = MAIN_DB_PREFIX.$object->table_element." as c"; @@ -92,6 +96,19 @@ class CommandeStats extends Stats $this->where .= " AND c.fk_soc = ".$this->socid; } if ($this->userid > 0) $this->where .= ' AND c.fk_user_author = '.$this->userid; + + if ($typentid) + { + $this->join .= ' LEFT JOIN '.MAIN_DB_PREFIX.'societe as s ON s.rowid = c.fk_soc'; + $this->where .= ' AND s.fk_typent = '.$typentid; + } + + if ($categid) + { + $this->join .= ' LEFT JOIN '.MAIN_DB_PREFIX.'categorie_societe as cats ON cats.fk_soc = c.fk_soc'; + $this->join .= ' LEFT JOIN '.MAIN_DB_PREFIX.'categorie as cat ON cat.rowid = cats.fk_categorie'; + $this->where .= ' AND cat.rowid = '.$categid; + } } /** @@ -108,6 +125,7 @@ class CommandeStats extends Stats $sql = "SELECT date_format(c.date_commande,'%m') as dm, COUNT(*) as nb"; $sql .= " FROM ".$this->from; if (!$user->rights->societe->client->voir && !$this->socid) $sql .= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; + $sql .= $this->join; $sql .= " WHERE c.date_commande BETWEEN '".$this->db->idate(dol_get_first_day($year))."' AND '".$this->db->idate(dol_get_last_day($year))."'"; $sql .= " AND ".$this->where; $sql .= " GROUP BY dm"; @@ -130,6 +148,7 @@ class CommandeStats extends Stats $sql = "SELECT date_format(c.date_commande,'%Y') as dm, COUNT(*) as nb, SUM(c.".$this->field.")"; $sql .= " FROM ".$this->from; if (!$user->rights->societe->client->voir && !$this->socid) $sql .= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; + $sql .= $this->join; $sql .= " WHERE ".$this->where; $sql .= " GROUP BY dm"; $sql .= $this->db->order('dm', 'DESC'); @@ -151,6 +170,7 @@ class CommandeStats extends Stats $sql = "SELECT date_format(c.date_commande,'%m') as dm, SUM(c.".$this->field.")"; $sql .= " FROM ".$this->from; if (!$user->rights->societe->client->voir && !$this->socid) $sql .= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; + $sql .= $this->join; $sql .= " WHERE c.date_commande BETWEEN '".$this->db->idate(dol_get_first_day($year))."' AND '".$this->db->idate(dol_get_last_day($year))."'"; $sql .= " AND ".$this->where; $sql .= " GROUP BY dm"; @@ -173,6 +193,7 @@ class CommandeStats extends Stats $sql = "SELECT date_format(c.date_commande,'%m') as dm, AVG(c.".$this->field.")"; $sql .= " FROM ".$this->from; if (!$user->rights->societe->client->voir && !$this->socid) $sql .= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; + $sql .= $this->join; $sql .= " WHERE c.date_commande BETWEEN '".$this->db->idate(dol_get_first_day($year))."' AND '".$this->db->idate(dol_get_last_day($year))."'"; $sql .= " AND ".$this->where; $sql .= " GROUP BY dm"; @@ -193,6 +214,7 @@ class CommandeStats extends Stats $sql = "SELECT date_format(c.date_commande,'%Y') as year, COUNT(*) as nb, SUM(c.".$this->field.") as total, AVG(".$this->field.") as avg"; $sql .= " FROM ".$this->from; if (!$user->rights->societe->client->voir && !$this->socid) $sql .= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; + $sql .= $this->join; $sql .= " WHERE ".$this->where; $sql .= " GROUP BY year"; $sql .= $this->db->order('year', 'DESC'); @@ -214,6 +236,7 @@ class CommandeStats extends Stats $sql = "SELECT product.ref, COUNT(product.ref) as nb, SUM(tl.".$this->field_line.") as total, AVG(tl.".$this->field_line.") as avg"; $sql .= " FROM ".$this->from.", ".$this->from_line.", ".MAIN_DB_PREFIX."product as product"; if (!$user->rights->societe->client->voir && !$user->socid) $sql .= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; + $sql .= $this->join; $sql .= " WHERE ".$this->where; $sql .= " AND c.rowid = tl.fk_commande AND tl.fk_product = product.rowid"; $sql .= " AND c.date_commande BETWEEN '".$this->db->idate(dol_get_first_day($year, 1, false))."' AND '".$this->db->idate(dol_get_last_day($year, 12, false))."'"; diff --git a/htdocs/commande/contact.php b/htdocs/commande/contact.php index 6b9e3ae039a..2d11feeeee2 100644 --- a/htdocs/commande/contact.php +++ b/htdocs/commande/contact.php @@ -63,16 +63,12 @@ if ($action == 'addcontact' && $user->rights->commande->creer) { header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else - { + } else { if ($object->error == 'DB_ERROR_RECORD_ALREADY_EXISTS') { $langs->load("errors"); setEventMessages($langs->trans("ErrorThisContactIsAlreadyDefinedAsThisType"), null, 'errors'); - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -84,9 +80,7 @@ elseif ($action == 'swapstatut' && $user->rights->commande->creer) if ($object->fetch($id)) { $result = $object->swapContactStatus(GETPOST('ligne')); - } - else - { + } else { dol_print_error($db); } } @@ -101,8 +95,7 @@ elseif ($action == 'deletecontact' && $user->rights->commande->creer) { header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else { + } else { dol_print_error($db); } } @@ -206,9 +199,7 @@ if ($id > 0 || !empty($ref)) $res = @include dol_buildpath($reldir.'/contacts.tpl.php'); if ($res) break; } - } - else - { + } else { // Contact not found print "ErrorRecordNotFound"; } diff --git a/htdocs/commande/customer.php b/htdocs/commande/customer.php index 1e445a602f7..f78d6ce2e84 100644 --- a/htdocs/commande/customer.php +++ b/htdocs/commande/customer.php @@ -184,9 +184,7 @@ if ($resql) print ''; $db->free($resql); -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/commande/document.php b/htdocs/commande/document.php index 4fa1095998a..27d38378bcb 100644 --- a/htdocs/commande/document.php +++ b/htdocs/commande/document.php @@ -52,11 +52,12 @@ if ($user->socid) $result = restrictedArea($user, 'commande', $id, ''); // Get parameters +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; @@ -181,14 +182,10 @@ if ($id > 0 || !empty($ref)) $permtoedit = $user->rights->commande->creer; $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 - { + } else { dol_print_error($db); } -} -else -{ +} else { header('Location: index.php'); exit; } diff --git a/htdocs/commande/index.php b/htdocs/commande/index.php index 52e5108ff5f..96476caeeed 100644 --- a/htdocs/commande/index.php +++ b/htdocs/commande/index.php @@ -64,7 +64,7 @@ $help_url = "EN:Module_Customers_Orders|FR:Module_Commandes_Clients|ES:Módulo_P llxHeader("", $langs->trans("Orders"), $help_url); -print load_fiche_titre($langs->trans("OrdersArea"), '', 'commercial'); +print load_fiche_titre($langs->trans("OrdersArea"), '', 'order'); print '
'; @@ -106,6 +106,7 @@ if ($resql) $total = 0; $totalinprocess = 0; $dataseries = array(); + $colorseries = array(); $vals = array(); // -1=Canceled, 0=Draft, 1=Validated, 2=Accepted/On process, 3=Closed (Sent/Received, billed or not) while ($i < $num) @@ -172,9 +173,7 @@ if ($resql) //if ($totalinprocess != $total) print ''.$langs->trans("Total").''.$total.''; print "

"; -} -else -{ +} else { dol_print_error($db); } @@ -231,9 +230,7 @@ if (!empty($conf->commande->enabled)) print ''; $i++; } - } - else - { + } else { print ''.$langs->trans("NoOrder").''; } print "

"; @@ -322,8 +319,7 @@ if ($resql) } } print "

"; -} -else dol_print_error($db); +} else dol_print_error($db); $max = 10; @@ -409,8 +405,7 @@ if (!empty($conf->commande->enabled)) } print "

"; - } - else dol_print_error($db); + } else dol_print_error($db); } /* @@ -494,8 +489,7 @@ if (!empty($conf->commande->enabled)) } } print "

"; - } - else dol_print_error($db); + } else dol_print_error($db); } diff --git a/htdocs/commande/list.php b/htdocs/commande/list.php index dda9bee327f..5770df78a82 100644 --- a/htdocs/commande/list.php +++ b/htdocs/commande/list.php @@ -395,9 +395,7 @@ if ($resql) $soc->fetch($socid); $title = $langs->trans('ListOfOrders').' - '.$soc->name; if (empty($search_company)) $search_company = $soc->name; - } - else - { + } else { $title = $langs->trans('ListOfOrders'); } if (strval($search_status) == '0') @@ -502,7 +500,7 @@ if ($resql) print ''; print ''; - print_barre_liste($title, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'commercial', 0, $newcardbutton, '', $limit, 0, 0, 1); + print_barre_liste($title, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'order', 0, $newcardbutton, '', $limit, 0, 0, 1); $topicmail = "SendOrderRef"; $modelmail = "order_send"; @@ -541,9 +539,7 @@ if ($resql) { print $form->selectyesno('validate_invoices', 0, 1, 1); print ' ('.$langs->trans("AutoValidationNotPossibleWhenStockIsDecreasedOnInvoiceValidation").')'; - } - else - { + } else { print $form->selectyesno('validate_invoices', 0, 1); } if (!empty($conf->workflow->enabled) && !empty($conf->global->WORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_ORDER)) print '     '.$langs->trans("IfValidateInvoiceIsNoOrderStayUnbilled").''; @@ -962,8 +958,7 @@ if ($resql) { $notshippable++; } - } - else { // Detailed code, looks bugged + } else { // Detailed code, looks bugged // stock order and stock order_supplier $stock_order = 0; $stock_order_supplier = 0; @@ -1147,7 +1142,7 @@ if ($resql) if (!empty($arrayfields['c.date_delivery']['checked'])) { print ''; - print dol_print_date($db->jdate($obj->date_delivery), 'day'); + print dol_print_date($db->jdate($obj->date_delivery), 'dayhour'); print ''; if (!$i) $totalarray['nbfield']++; } @@ -1226,7 +1221,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, 'i'=>$i); + $parameters = array('arrayfields'=>$arrayfields, 'obj'=>$obj, 'i'=>$i, 'totalarray'=>&$totalarray); $reshook = $hookmanager->executeHooks('printFieldListValue', $parameters); // Note that $action and $object may have been modified by hook print $hookmanager->resPrint; // Date creation @@ -1310,9 +1305,7 @@ if ($resql) $delallowed = $user->rights->commande->creer; print $formfile->showdocuments('massfilesarea_orders', '', $filedir, $urlsource, 0, $delallowed, '', 1, 1, 0, 48, 1, $param, $title, '', '', '', null, $hidegeneratedfilelistifempty); -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/commande/orderstoinvoice.php b/htdocs/commande/orderstoinvoice.php index bad5034eac5..c3d82821249 100644 --- a/htdocs/commande/orderstoinvoice.php +++ b/htdocs/commande/orderstoinvoice.php @@ -83,9 +83,7 @@ if ($action == 'create') { $error++; setEventMessages($langs->trans('Error_OrderNotChecked'), null, 'errors'); - } - else - { + } else { $origin = GETPOST('origin'); $originid = GETPOST('originid'); } @@ -209,9 +207,7 @@ if (($action == 'create' || $action == 'add') && !$error) if ($db->query($sql)) { $db->commit(); - } - else - { + } else { $db->rollback(); } } @@ -256,16 +252,12 @@ if (($action == 'create' || $action == 'add') && !$error) { $result = $object->insert_discount($discountid); //$result=$discount->link_to_invoice($lineid,$id); - } - else - { + } else { setEventMessages($discount->error, $discount->errors, 'errors'); $error++; break; } - } - else - { + } else { // Positive line $product_type = ($lines[$i]->product_type ? $lines[$i]->product_type : 0); // Date start @@ -285,7 +277,7 @@ if (($action == 'create' || $action == 'add') && !$error) } // Extrafields - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED) && method_exists($lines[$i], 'fetch_optionals')) { + if (method_exists($lines[$i], 'fetch_optionals')) { $lines[$i]->fetch_optionals(); $array_options = $lines[$i]->array_options; } @@ -320,9 +312,7 @@ if (($action == 'create' || $action == 'add') && !$error) if ($result > 0) { $lineid = $result; - } - else - { + } else { $lineid = 0; $error++; break; @@ -334,17 +324,13 @@ if (($action == 'create' || $action == 'add') && !$error) } } } - } - else - { + } else { setEventMessages($objectsrc->error, $objectsrc->errors, 'errors'); $error++; } $ii++; } - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); $error++; } @@ -358,9 +344,7 @@ if (($action == 'create' || $action == 'add') && !$error) $db->commit(); header('Location: '.DOL_URL_ROOT.'/compta/facture/card.php?facid='.$id); exit; - } - else - { + } else { $db->rollback(); $action = 'create'; $_GET["origin"] = $_POST["origin"]; @@ -729,9 +713,7 @@ if (($action != 'create' && $action != 'add') || ($action == 'create' && $error) print ''; $db->free($resql); - } - else - { + } else { dol_print_error($db); } } diff --git a/htdocs/commande/stats/index.php b/htdocs/commande/stats/index.php index cc62d7a9089..0910e4ee7ad 100644 --- a/htdocs/commande/stats/index.php +++ b/htdocs/commande/stats/index.php @@ -4,6 +4,7 @@ * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2012 Marcos García * Copyright (C) 2015 Jean-François Ferry + * Copyright (C) 2020 Maxime DEMAREST * * 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 @@ -28,7 +29,10 @@ require '../../main.inc.php'; require_once DOL_DOCUMENT_ROOT.'/commande/class/commande.class.php'; require_once DOL_DOCUMENT_ROOT.'/commande/class/commandestats.class.php'; +require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php'; require_once DOL_DOCUMENT_ROOT.'/core/class/html.formorder.class.php'; +require_once DOL_DOCUMENT_ROOT.'/core/class/html.formcompany.class.php'; +require_once DOL_DOCUMENT_ROOT.'/core/class/html.formother.class.php'; require_once DOL_DOCUMENT_ROOT.'/core/class/dolgraph.class.php'; $WIDTH = DolGraph::getDefaultGraphSizeForStats('width'); @@ -39,6 +43,8 @@ if ($mode == 'customer' && !$user->rights->commande->lire) accessforbidden(); if ($mode == 'supplier' && !$user->rights->fournisseur->commande->lire) accessforbidden(); $object_status = GETPOST('object_status'); +$typent_id = GETPOST('typent_id', 'int'); +$categ_id = GETPOST('categ_id', 'categ_id'); $userid = GETPOST('userid', 'int'); $socid = GETPOST('socid', 'int'); @@ -65,25 +71,27 @@ $langs->loadLangs(array('orders', 'companies', 'other', 'suppliers')); $form = new Form($db); $formorder = new FormOrder($db); +$formcompany = new FormCompany($db); +$formother = new FormOther($db); + +$picto = 'order'; +$title = $langs->trans("OrdersStatistics"); +$dir = $conf->commande->dir_temp; -if ($mode == 'customer') -{ - $title = $langs->trans("OrdersStatistics"); - $dir = $conf->commande->dir_temp; -} if ($mode == 'supplier') { + $picto = 'supplier_order'; $title = $langs->trans("OrdersStatisticsSuppliers").' ('.$langs->trans("SentToSuppliers").")"; $dir = $conf->fournisseur->commande->dir_temp; } llxHeader('', $title); -print load_fiche_titre($title, '', 'commercial'); +print load_fiche_titre($title, '', $picto); dol_mkdir($dir); -$stats = new CommandeStats($db, $socid, $mode, ($userid > 0 ? $userid : 0)); +$stats = new CommandeStats($db, $socid, $mode, ($userid > 0 ? $userid : 0), ($typent_id > 0 ? $typent_id : 0), ($categ_id > 0 ? $categ_id : 0)); if ($mode == 'customer') { if ($object_status != '' && $object_status >= -1) $stats->where .= ' AND c.fk_statut IN ('.$db->escape($object_status).')'; @@ -106,9 +114,7 @@ if (!$user->rights->societe->client->voir || $user->socid) $filenamenb = $dir.'/ordersnbinyear-'.$user->id.'-'.$year.'.png'; if ($mode == 'customer') $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstats&file=ordersnbinyear-'.$user->id.'-'.$year.'.png'; if ($mode == 'supplier') $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstatssupplier&file=ordersnbinyear-'.$user->id.'-'.$year.'.png'; -} -else -{ +} else { $filenamenb = $dir.'/ordersnbinyear-'.$year.'.png'; if ($mode == 'customer') $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstats&file=ordersnbinyear-'.$year.'.png'; if ($mode == 'supplier') $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstatssupplier&file=ordersnbinyear-'.$year.'.png'; @@ -149,9 +155,7 @@ if (!$user->rights->societe->client->voir || $user->socid) $filenameamount = $dir.'/ordersamountinyear-'.$user->id.'-'.$year.'.png'; if ($mode == 'customer') $fileurlamount = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstats&file=ordersamountinyear-'.$user->id.'-'.$year.'.png'; if ($mode == 'supplier') $fileurlamount = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstatssupplier&file=ordersamountinyear-'.$user->id.'-'.$year.'.png'; -} -else -{ +} else { $filenameamount = $dir.'/ordersamountinyear-'.$year.'.png'; if ($mode == 'customer') $fileurlamount = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstats&file=ordersamountinyear-'.$year.'.png'; if ($mode == 'supplier') $fileurlamount = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstatssupplier&file=ordersamountinyear-'.$year.'.png'; @@ -190,9 +194,7 @@ if (!$user->rights->societe->client->voir || $user->socid) $filename_avg = $dir.'/ordersaverage-'.$user->id.'-'.$year.'.png'; if ($mode == 'customer') $fileurl_avg = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstats&file=ordersaverage-'.$user->id.'-'.$year.'.png'; if ($mode == 'supplier') $fileurl_avg = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstatssupplier&file=ordersaverage-'.$user->id.'-'.$year.'.png'; -} -else -{ +} else { $filename_avg = $dir.'/ordersaverage-'.$year.'.png'; if ($mode == 'customer') $fileurl_avg = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstats&file=ordersaverage-'.$year.'.png'; if ($mode == 'supplier') $fileurl_avg = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstatssupplier&file=ordersaverage-'.$year.'.png'; @@ -266,6 +268,26 @@ if ($mode == 'customer') $filter = 's.client IN (1,2,3)'; if ($mode == 'supplier') $filter = 's.fournisseur = 1'; print $form->select_company($socid, 'socid', $filter, 1, 0, 0, array(), 0, '', 'style="width: 95%"'); print ''; +// ThirdParty Type +print ''.$langs->trans("ThirdPartyType").''; +$sortparam_typent = (empty($conf->global->SOCIETE_SORT_ON_TYPEENT) ? 'ASC' : $conf->global->SOCIETE_SORT_ON_TYPEENT); // NONE means we keep sort of original array, so we sort on position. ASC, means next function will sort on label. +print $form->selectarray("typent_id", $formcompany->typent_array(0), $typent_id, 0, 0, 0, '', 0, 0, 0, $sortparam_typent); +if ($user->admin) print ' '.info_admin($langs->trans("YouCanChangeValuesForThisListFromDictionarySetup"), 1); +print ''; +// Category +if ($mode == 'customer') +{ + $cat_type = Categorie::TYPE_CUSTOMER; + $cat_label = $langs->trans("Category").' '.lcfirst($langs->trans("Customer")); +} +if ($mode == 'supplier') +{ + $cat_type = Categorie::TYPE_SUPPLIER; + $cat_label = $langs->trans("Supplier").' '.lcfirst($langs->trans("Customer")); +} +print ''.$cat_label.''; +print $formother->select_categories($cat_type, $categ_id, 'categ_id', true); +print ''; // User print ''.$langs->trans("CreatedBy").''; print $form->select_dolusers($userid, 'userid', 1, '', 0, '', '', 0, 0, 0, '', 0, '', 'maxwidth300'); @@ -353,8 +375,7 @@ print '
'; // Show graphs print ''; - } - else - { + } else { // Sort array by date ASC to calculate balance - $totalET = 0; - $totalIT = 0; - $totalVAT = 0; - $totalDebit = 0; - $totalCredit = 0; + $totalET_debit = 0; + $totalIT_debit = 0; + $totalVAT_debit = 0; + $totalET_credit = 0; + $totalIT_credit = 0; + $totalVAT_credit = 0; // Display array foreach ($TData as $data) @@ -592,25 +652,49 @@ if (!empty($date_start) && !empty($date_stop)) // Ref print ''; // File link print '\n"; @@ -619,11 +703,11 @@ if (!empty($date_start) && !empty($date_stop)) print ''; // Total ET - print '\n"; + print '\n"; // Total IT - print '\n"; + print '\n"; // Total VAT - print '\n"; + print '\n"; print '\n"; @@ -633,42 +717,42 @@ if (!empty($date_start) && !empty($date_stop)) print '\n"; - // Debit - //print '\n"; - // Credit - //print '\n"; - - $totalET += $data['amount_ht']; - $totalIT += $data['amount_ttc']; - $totalVAT += $data['amount_vat']; - - $totalDebit += ($data['amount_ttc'] > 0) ? abs($data['amount_ttc']) : 0; - $totalCredit += ($data['amount_ttc'] > 0) ? 0 : abs($data['amount_ttc']); - - // Balance - //print '\n"; + if ($data['sens']) { + $totalET_credit += $data['amount_ht']; + $totalIT_credit += $data['amount_ttc']; + $totalVAT_credit += $data['amount_vat']; + } else { + $totalET_debit -= $data['amount_ht']; + $totalIT_debit -= $data['amount_ttc']; + $totalVAT_debit -= $data['amount_vat']; + } print "\n"; } + // Total credits print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - /*print ''; - print ''; - print ''; - */ + print ''; + print ''; + print ''; + print ''; + print ''; + print "\n"; + // Total debits + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print "\n"; + // Balance + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; print "\n"; } } diff --git a/htdocs/compta/ajaxpayment.php b/htdocs/compta/ajaxpayment.php index f380d8b4ee5..0129d1e5f43 100644 --- a/htdocs/compta/ajaxpayment.php +++ b/htdocs/compta/ajaxpayment.php @@ -81,13 +81,11 @@ if ($currentInvId) // Here to breakdown $remainAmount = $currentRemain - $currentAmount; // To keep value between curRemain and curAmount $result += $remainAmount; // result must be deduced by $currentAmount += $remainAmount; // curAmount put to curRemain - } else - { + } else { $currentAmount = $currentRemain; $result += $currentRemain; } - } else - { + } else { // Reset the substraction for this amount $result += price2num($currentAmount); $currentAmount = 0; diff --git a/htdocs/compta/bank/account_statement_document.php b/htdocs/compta/bank/account_statement_document.php index 1df1f000a61..767c8f8709b 100644 --- a/htdocs/compta/bank/account_statement_document.php +++ b/htdocs/compta/bank/account_statement_document.php @@ -57,11 +57,12 @@ if ($user->socid) $socid = $user->socid; // Get parameters +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; if (!$sortorder) @@ -137,12 +138,10 @@ if ($id > 0 || !empty($ref)) { $moreparam = '&num='.urlencode($num); ; $relativepathwithnofile = $id."/statement/".dol_sanitizeFileName($num)."/"; include_once DOL_DOCUMENT_ROOT.'/core/tpl/document_actions_post_headers.tpl.php'; - } - else { + } else { dol_print_error($db); } -} -else { +} else { Header('Location: index.php'); exit; } diff --git a/htdocs/compta/bank/annuel.php b/htdocs/compta/bank/annuel.php index 1f6e5e6620c..72a7e33d3f2 100644 --- a/htdocs/compta/bank/annuel.php +++ b/htdocs/compta/bank/annuel.php @@ -50,9 +50,7 @@ if (!$year_start) { $year_start = $year_current - 2; $year_end = $year_current; -} -else -{ +} else { $year_end = $year_start + 2; } @@ -107,9 +105,7 @@ if ($resql) $encaiss[$row[1]] = $row[0]; $i++; } -} -else -{ +} else { dol_print_error($db); } @@ -135,9 +131,7 @@ if ($resql) $decaiss[$row[1]] = -$row[0]; $i++; } -} -else -{ +} else { dol_print_error($db); } @@ -157,9 +151,7 @@ if (!empty($id)) if (!preg_match('/,/', $id)) { dol_banner_tab($object, 'ref', $linkback, 1, 'ref', 'ref', $morehtmlref, '', 0, '', '', 1); - } - else - { + } else { $bankaccount = new Account($db); $listid = explode(',', $id); foreach ($listid as $key => $aId) @@ -170,9 +162,7 @@ if (!empty($id)) if ($key < (count($listid) - 1)) print ', '; } } -} -else -{ +} else { print $langs->trans("AllAccounts"); } @@ -257,8 +247,7 @@ if ($resql) { $obj = $db->fetch_object($resql); if ($obj) $balance = $obj->total; -} -else { +} else { dol_print_error($db); } @@ -280,9 +269,7 @@ if ($result < 0) $langs->load("errors"); $error++; setEventMessages($langs->trans("ErrorFailedToCreateDir"), null, 'errors'); -} -else -{ +} else { // Calcul de $min et $max $sql = "SELECT MIN(b.datev) as min, MAX(b.datev) as max"; $sql .= " FROM ".MAIN_DB_PREFIX."bank as b"; @@ -298,9 +285,7 @@ else $obj = $db->fetch_object($resql); $min = $db->jdate($obj->min); $max = $db->jdate($obj->max); - } - else - { + } else { dol_print_error($db); } $log = "graph.php: min=".$min." max=".$max; @@ -338,9 +323,7 @@ else $i++; } $db->free($resql); - } - else - { + } else { dol_print_error($db); } } @@ -425,9 +408,7 @@ else $i++; } $db->free($resql); - } - else - { + } else { dol_print_error($db); } } diff --git a/htdocs/compta/bank/bankentries_list.php b/htdocs/compta/bank/bankentries_list.php index 7b531d31bc0..0af1f84d9f6 100644 --- a/htdocs/compta/bank/bankentries_list.php +++ b/htdocs/compta/bank/bankentries_list.php @@ -68,9 +68,7 @@ if ($fielvalue) { if ($user->socid) $socid = $user->socid; $result = restrictedArea($user, 'banque', $fieldvalue, 'bank_account&bank_account', '', '', $fieldtype); -} -else -{ +} else { if ($user->socid) $socid = $user->socid; $result = restrictedArea($user, 'banque'); } @@ -241,16 +239,12 @@ if ((GETPOST('confirm_savestatement', 'alpha') || GETPOST('confirm_reconcile', ' } } } - } - else - { + } else { $error++; $langs->load("errors"); setEventMessages($langs->trans("NoRecordSelected"), null, 'errors'); } - } - else - { + } else { $error++; $langs->load("errors"); setEventMessages($langs->trans("ErrorPleaseTypeBankTransactionReportName"), null, 'errors'); @@ -286,9 +280,7 @@ if (GETPOST('save') && !$cancel && $user->rights->banque->modifier) if (price2num($_POST["addcredit"]) > 0) { $amount = price2num($_POST["addcredit"]); - } - else - { + } else { $amount = - price2num($_POST["adddebit"]); } @@ -337,14 +329,10 @@ if (GETPOST('save') && !$cancel && $user->rights->banque->modifier) setEventMessages($langs->trans("RecordSaved"), null, 'mesgs'); header("Location: ".$_SERVER['PHP_SELF'].($id ? "?id=".$id : '')); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } - } - else - { + } else { $action = 'addline'; } } @@ -468,9 +456,7 @@ if ($id > 0 || !empty($ref)) } } } -} -else -{ +} else { llxHeader('', $langs->trans("BankTransactions"), '', '', 0, 0, array(), array(), $param); } @@ -674,9 +660,7 @@ if ($resql) if ($numr >= $nbmax) $liste = "...   ".$liste; print $liste; if ($numr <= 0) print ''.$langs->trans("None").''; - } - else - { + } else { dol_print_error($db); } @@ -792,14 +776,11 @@ if ($resql) if (empty($conf->global->BANK_USE_OLD_VARIOUS_PAYMENT)) // If direct entries is done using miscellaneous payments { $newcardbutton = dolGetButtonTitle($langs->trans('AddBankRecord'), '', 'fa fa-plus-circle', DOL_URL_ROOT.'/compta/bank/various_payment/card.php?action=create&accountid='.$search_account.'&backtopage='.urlencode($_SERVER['PHP_SELF'].'?id='.urlencode($search_account)), '', $user->rights->banque->modifier); - } - else // If direct entries is not done using miscellaneous payments + } else // If direct entries is not done using miscellaneous payments { $newcardbutton = dolGetButtonTitle($langs->trans('AddBankRecord'), '', 'fa fa-plus-circle', $_SERVER["PHP_SELF"].'?action=addline&page='.$page.$param, '', $user->rights->banque->modifier); } - } - else - { + } else { $newcardbutton = dolGetButtonTitle($langs->trans('AddBankRecord'), '', 'fa fa-plus-circle', $_SERVER["PHP_SELF"].'?action=addline&page='.$page.$param, '', -1); } } @@ -1039,15 +1020,12 @@ if ($resql) if ($sortfield == 'b.datev,b.dateo,b.rowid' && $sortorder == 'desc,desc,desc') { $balancebefore = $objforbalance->previoustotal + ($sign * $objp->amount); - } - // If sort is asc,asc,asc then total of previous date is balance of line before the next line to show - else - { + } // If sort is asc,asc,asc then total of previous date is balance of line before the next line to show + else { $balance = $objforbalance->previoustotal; } } - } - else dol_print_error($db); + } else dol_print_error($db); $balancecalculated = true; @@ -1128,9 +1106,7 @@ if ($resql) { $balance = price2num($balancebefore, 'MT'); // balance = balancebefore of previous line (sort is desc) $balancebefore = price2num($balancebefore - ($sign * $objp->amount), 'MT'); - } - else - { + } else { $balancebefore = price2num($balance, 'MT'); // balancebefore = balance of previous line (sort is asc) $balance = price2num($balance + ($sign * $objp->amount), 'MT'); } @@ -1141,9 +1117,7 @@ if ($resql) $bankaccounttmp->fetch($objp->bankid); $cachebankaccount[$objp->bankid] = $bankaccounttmp; $bankaccount = $bankaccounttmp; - } - else - { + } else { $bankaccount = $cachebankaccount[$objp->bankid]; } @@ -1207,63 +1181,53 @@ if ($resql) $banktransferstatic->id = $links[$key]['url_id']; $banktransferstatic->ref = $links[$key]['label']; print ' '.$banktransferstatic->getNomUrl(0); - } - elseif ($links[$key]['type'] == 'payment') + } elseif ($links[$key]['type'] == 'payment') { $paymentstatic->id = $links[$key]['url_id']; $paymentstatic->ref = $links[$key]['url_id']; // FIXME This is id, not ref of payment print ' '.$paymentstatic->getNomUrl(2); - } - elseif ($links[$key]['type'] == 'payment_supplier') + } elseif ($links[$key]['type'] == 'payment_supplier') { $paymentsupplierstatic->id = $links[$key]['url_id']; $paymentsupplierstatic->ref = $links[$key]['url_id']; // FIXME This is id, not ref of payment print ' '.$paymentsupplierstatic->getNomUrl(2); - } - elseif ($links[$key]['type'] == 'payment_sc') + } elseif ($links[$key]['type'] == 'payment_sc') { print ''; print ' '.img_object($langs->trans('ShowPayment'), 'payment').' '; //print $langs->trans("SocialContributionPayment"); print ''; - } - elseif ($links[$key]['type'] == 'payment_vat') + } elseif ($links[$key]['type'] == 'payment_vat') { $paymentvatstatic->id = $links[$key]['url_id']; $paymentvatstatic->ref = $links[$key]['url_id']; print ' '.$paymentvatstatic->getNomUrl(2); - } - elseif ($links[$key]['type'] == 'payment_salary') + } elseif ($links[$key]['type'] == 'payment_salary') { $paymentsalstatic->id = $links[$key]['url_id']; $paymentsalstatic->ref = $links[$key]['url_id']; print ' '.$paymentsalstatic->getNomUrl(2); - } - elseif ($links[$key]['type'] == 'payment_loan') + } elseif ($links[$key]['type'] == 'payment_loan') { print ''; print ' '.img_object($langs->trans('ShowPayment'), 'payment').' '; print ''; - } - elseif ($links[$key]['type'] == 'payment_donation') + } elseif ($links[$key]['type'] == 'payment_donation') { print ''; print ' '.img_object($langs->trans('ShowPayment'), 'payment').' '; print ''; - } - elseif ($links[$key]['type'] == 'payment_expensereport') + } elseif ($links[$key]['type'] == 'payment_expensereport') { $paymentexpensereportstatic->id = $links[$key]['url_id']; $paymentexpensereportstatic->ref = $links[$key]['url_id']; print ' '.$paymentexpensereportstatic->getNomUrl(2); - } - elseif ($links[$key]['type'] == 'payment_various') + } elseif ($links[$key]['type'] == 'payment_various') { $paymentvariousstatic->id = $links[$key]['url_id']; $paymentvariousstatic->ref = $links[$key]['url_id']; print ' '.$paymentvariousstatic->getNomUrl(2); - } - elseif ($links[$key]['type'] == 'banktransfert') + } elseif ($links[$key]['type'] == 'banktransfert') { // Do not show link to transfer since there is no transfer card (avoid confusion). Can already be accessed from transaction detail. if ($objp->amount > 0) @@ -1278,9 +1242,7 @@ if ($resql) $bankstatic->label = $objp->bankref; print $bankstatic->getNomUrl(1, ''); print ')'; - } - else - { + } else { $bankstatic->id = $objp->bankid; $bankstatic->label = $objp->bankref; print ' ('.$langs->trans("TransferFrom").' '; @@ -1293,21 +1255,15 @@ if ($resql) print ')'; } //var_dump($links); - } - elseif ($links[$key]['type'] == 'company') + } elseif ($links[$key]['type'] == 'company') { - } - elseif ($links[$key]['type'] == 'user') + } elseif ($links[$key]['type'] == 'user') { - } - elseif ($links[$key]['type'] == 'member') + } elseif ($links[$key]['type'] == 'member') { - } - elseif ($links[$key]['type'] == 'sc') - { - } - else + } elseif ($links[$key]['type'] == 'sc') { + } else { // Show link with label $links[$key]['label'] if (!empty($objp->label) && !empty($links[$key]['label'])) print ' - '; print ''; @@ -1316,9 +1272,7 @@ if ($resql) // Label generique car entre parentheses. On l'affiche en le traduisant if ($reg[1] == 'paiement') $reg[1] = 'Payment'; print ' '.$langs->trans($reg[1]); - } - else - { + } else { print ' '.$links[$key]['label']; } print ''; @@ -1395,9 +1349,7 @@ if ($resql) $companystatic->code_compta = $objp->code_compta; $companystatic->code_compta_fournisseur = $objp->code_compta_fournisseur; print $companystatic->getNomUrl(1); - } - else - { + } else { print ' '; } print ''; @@ -1449,14 +1401,10 @@ if ($resql) if ($balancebefore >= 0) { print ''; - } - else - { + } else { print ''; } - } - else - { + } else { print ''; } if (!$i) $totalarray['nbfield']++; @@ -1469,14 +1417,10 @@ if ($resql) if ($balance >= 0) { print ''; - } - else - { + } else { print ''; } - } - else - { + } else { print ''; } if (!$i) $totalarray['nbfield']++; @@ -1519,20 +1463,16 @@ if ($resql) // Transaction reconciliated or edit link if ($objp->conciliated && $bankaccount->canBeConciliated() > 0) // If line not conciliated and account can be conciliated { - print ''; + print ''; print img_edit(); print ''; - } - else - { + } else { if ($user->rights->banque->modifier || $user->rights->banque->consolidate) { print ''; print img_edit(); print ''; - } - else - { + } else { print ''; print img_view(); print ''; @@ -1582,16 +1522,14 @@ if ($resql) { if ($num < $limit && empty($offset)) print ''; else print ''; - } - elseif ($totalarray['totaldebfield'] == $i) print ''; + } elseif ($totalarray['totaldebfield'] == $i) print ''; elseif ($totalarray['totalcredfield'] == $i) print ''; elseif ($i == $posconciliatecol) { print ''; - } - else print ''; + } else print ''; } print ''; } @@ -1609,9 +1547,7 @@ if ($resql) print ''; $db->free($resql); -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/compta/bank/budget.php b/htdocs/compta/bank/budget.php index 042117808d5..8559096477d 100644 --- a/htdocs/compta/bank/budget.php +++ b/htdocs/compta/bank/budget.php @@ -89,9 +89,7 @@ if ($result) print ''; print ''; print ''; -} -else -{ +} else { dol_print_error($db); } print "
'; -if ($mesg) { print $mesg; } -else { +if ($mesg) { print $mesg; } else { print $px1->show(); print "
\n"; print $px2->show(); diff --git a/htdocs/compta/accounting-files.php b/htdocs/compta/accounting-files.php index 8b671656f0f..0c20e46e316 100644 --- a/htdocs/compta/accounting-files.php +++ b/htdocs/compta/accounting-files.php @@ -2,6 +2,7 @@ /* Copyright (C) 2001-2006 Rodolphe Quiedeville * Copyright (C) 2004-2019 Laurent Destailleur * Copyright (C) 2017 Pierre-Henry Favre + * Copyright (C) 2020 Maxime DEMAREST * * 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 @@ -23,8 +24,8 @@ * \brief Page to show portoflio and files of a thirdparty and download it */ -if ($_GET['action'] == 'dl' || $_POST['action'] == 'dl') { // To not replace token when downloading file - if (!defined('NOTOKENRENEWAL')) define('NOTOKENRENEWAL', '1'); +if ((array_key_exists('action', $_GET) && $_GET['action'] == 'dl') || (array_key_exists('action', $_POST) && $_POST['action'] == 'dl')) { // To not replace token when downloading file + if (!defined('NOTOKENRENEWAL')) define('NOTOKENRENEWAL', '1'); } require '../main.inc.php'; @@ -37,8 +38,16 @@ require_once DOL_DOCUMENT_ROOT.'/compta/sociales/class/chargesociales.class.php' require_once DOL_DOCUMENT_ROOT.'/don/class/don.class.php'; require_once DOL_DOCUMENT_ROOT.'/expensereport/class/expensereport.class.php'; require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php'; +require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php'; +require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/paymentvarious.class.php'; +require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php'; +require_once DOL_DOCUMENT_ROOT.'/loan/class/paymentloan.class.php'; -$langs->loadLangs(array("accountancy", "bills", "companies", "salaries", "compta", "trips")); +// Constant to define payment sens +const PAY_DEBIT = 0; +const PAY_CREDIT = 1; + +$langs->loadLangs(array("accountancy", "bills", "companies", "salaries", "compta", "trips", "banks", "loan")); $date_start = GETPOST('date_start', 'alpha'); $date_startDay = GETPOST('date_startday', 'int'); @@ -140,7 +149,7 @@ if (($action == 'searchfiles' || $action == 'dl')) { // Customer invoices if (GETPOST('selectinvoices')) { if (!empty($sql)) $sql .= " UNION ALL"; - $sql .= "SELECT t.rowid as id, t.entity, t.ref, t.paye as paid, t.total as total_ht, t.total_ttc, t.tva as total_vat, t.fk_soc, t.datef as date, t.date_lim_reglement as date_due, 'Invoice' as item, s.nom as thirdparty_name, s.code_client as thirdparty_code, c.code as country_code, s.tva_intra as vatnum"; + $sql .= "SELECT t.rowid as id, t.entity, t.ref, t.paye as paid, t.total as total_ht, t.total_ttc, t.tva as total_vat, t.fk_soc, t.datef as date, t.date_lim_reglement as date_due, 'Invoice' as item, s.nom as thirdparty_name, s.code_client as thirdparty_code, c.code as country_code, s.tva_intra as vatnum, ".PAY_CREDIT." as sens"; $sql .= " FROM ".MAIN_DB_PREFIX."facture as t LEFT JOIN ".MAIN_DB_PREFIX."societe as s ON s.rowid = t.fk_soc LEFT JOIN ".MAIN_DB_PREFIX."c_country as c ON c.rowid = s.fk_pays"; $sql .= " WHERE datef between ".$wheretail; $sql .= " AND t.entity IN (".($entity == 1 ? '0,1' : $entity).')'; @@ -149,7 +158,7 @@ if (($action == 'searchfiles' || $action == 'dl')) { // Vendor invoices if (GETPOST('selectsupplierinvoices')) { if (!empty($sql)) $sql .= " UNION ALL"; - $sql .= " SELECT t.rowid as id, t.entity, t.ref, t.paye as paid, t.total_ht, t.total_ttc, t.total_tva as total_vat, t.fk_soc, t.datef as date, t.date_lim_reglement as date_due, 'SupplierInvoice' as item, s.nom as thirdparty_name, s.code_fournisseur as thirdparty_code, c.code as country_code, s.tva_intra as vatnum"; + $sql .= " SELECT t.rowid as id, t.entity, t.ref, t.paye as paid, t.total_ht, t.total_ttc, t.total_tva as total_vat, t.fk_soc, t.datef as date, t.date_lim_reglement as date_due, 'SupplierInvoice' as item, s.nom as thirdparty_name, s.code_fournisseur as thirdparty_code, c.code as country_code, s.tva_intra as vatnum, ".PAY_DEBIT." as sens"; $sql .= " FROM ".MAIN_DB_PREFIX."facture_fourn as t LEFT JOIN ".MAIN_DB_PREFIX."societe as s ON s.rowid = t.fk_soc LEFT JOIN ".MAIN_DB_PREFIX."c_country as c ON c.rowid = s.fk_pays"; $sql .= " WHERE datef between ".$wheretail; $sql .= " AND t.entity IN (".($entity == 1 ? '0,1' : $entity).')'; @@ -158,7 +167,7 @@ if (($action == 'searchfiles' || $action == 'dl')) { // Expense reports if (GETPOST('selectexpensereports')) { if (!empty($sql)) $sql .= " UNION ALL"; - $sql .= " SELECT t.rowid as id, t.entity, t.ref, t.paid, t.total_ht, t.total_ttc, t.total_tva as total_vat, t.fk_user_author as fk_soc, t.date_fin as date, t.date_fin as date_due, 'ExpenseReport' as item, CONCAT(CONCAT(u.lastname, ' '), u.firstname) as thirdparty_name, '' as thirdparty_code, c.code as country_code, '' as vatnum"; + $sql .= " SELECT t.rowid as id, t.entity, t.ref, t.paid, t.total_ht, t.total_ttc, t.total_tva as total_vat, t.fk_user_author as fk_soc, t.date_fin as date, t.date_fin as date_due, 'ExpenseReport' as item, CONCAT(CONCAT(u.lastname, ' '), u.firstname) as thirdparty_name, '' as thirdparty_code, c.code as country_code, '' as vatnum, ".PAY_DEBIT." as sens"; $sql .= " FROM ".MAIN_DB_PREFIX."expensereport as t LEFT JOIN ".MAIN_DB_PREFIX."user as u ON u.rowid = t.fk_user_author LEFT JOIN ".MAIN_DB_PREFIX."c_country as c ON c.rowid = u.fk_country"; $sql .= " WHERE date_fin between ".$wheretail; $sql .= " AND t.entity IN (".($entity == 1 ? '0,1' : $entity).')'; @@ -167,7 +176,7 @@ if (($action == 'searchfiles' || $action == 'dl')) { // Donations if (GETPOST('selectdonations')) { if (!empty($sql)) $sql .= " UNION ALL"; - $sql .= " SELECT t.rowid as id, t.entity, t.ref, paid, amount as total_ht, amount as total_ttc, 0 as total_vat, 0 as fk_soc, t.datedon as date, t.datedon as date_due, 'Donation' as item, t.societe as thirdparty_name, '' as thirdparty_code, c.code as country_code, '' as vatnum"; + $sql .= " SELECT t.rowid as id, t.entity, t.ref, paid, amount as total_ht, amount as total_ttc, 0 as total_vat, 0 as fk_soc, t.datedon as date, t.datedon as date_due, 'Donation' as item, t.societe as thirdparty_name, '' as thirdparty_code, c.code as country_code, '' as vatnum, ".PAY_CREDIT." as sens"; $sql .= " FROM ".MAIN_DB_PREFIX."don as t LEFT JOIN ".MAIN_DB_PREFIX."c_country as c ON c.rowid = t.fk_country"; $sql .= " WHERE datedon between ".$wheretail; $sql .= " AND t.entity IN (".($entity == 1 ? '0,1' : $entity).')'; @@ -176,7 +185,7 @@ if (($action == 'searchfiles' || $action == 'dl')) { // Paiements of salaries if (GETPOST('selectpaymentsofsalaries')) { if (!empty($sql)) $sql .= " UNION ALL"; - $sql .= " SELECT t.rowid as id, t.entity, t.ref as ref, 1 as paid, amount as total_ht, amount as total_ttc, 0 as total_vat, t.fk_user as fk_soc, t.datep as date, t.dateep as date_due, 'SalaryPayment' as item, CONCAT(CONCAT(u.lastname, ' '), u.firstname) as thirdparty_name, '' as thirdparty_code, c.code as country_code, '' as vatnum"; + $sql .= " SELECT t.rowid as id, t.entity, t.label as ref, 1 as paid, amount as total_ht, amount as total_ttc, 0 as total_vat, t.fk_user as fk_soc, t.datep as date, t.dateep as date_due, 'SalaryPayment' as item, CONCAT(CONCAT(u.lastname, ' '), u.firstname) as thirdparty_name, '' as thirdparty_code, c.code as country_code, '' as vatnum, ".PAY_DEBIT." as sens"; $sql .= " FROM ".MAIN_DB_PREFIX."payment_salary as t LEFT JOIN ".MAIN_DB_PREFIX."user as u ON u.rowid = t.fk_user LEFT JOIN ".MAIN_DB_PREFIX."c_country as c ON c.rowid = u.fk_country"; $sql .= " WHERE datep between ".$wheretail; $sql .= " AND t.entity IN (".($entity == 1 ? '0,1' : $entity).')'; @@ -185,12 +194,28 @@ if (($action == 'searchfiles' || $action == 'dl')) { // Social contributions if (GETPOST('selectsocialcontributions')) { if (!empty($sql)) $sql .= " UNION ALL"; - $sql .= " SELECT t.rowid as id, t.entity, t.libelle as ref, t.paye as paid, t.amount as total_ht, t.amount as total_ttc, 0 as total_tva, 0 as fk_soc, t.date_creation as date, t.date_ech as date_due, 'SocialContributions' as item, '' as thirdparty_name, '' as thirdparty_code, '' as country_code, '' as vatnum"; + $sql .= " SELECT t.rowid as id, t.entity, t.libelle as ref, t.paye as paid, t.amount as total_ht, t.amount as total_ttc, 0 as total_tva, 0 as fk_soc, t.date_ech as date, t.periode as date_due, 'SocialContributions' as item, '' as thirdparty_name, '' as thirdparty_code, '' as country_code, '' as vatnum, ".PAY_DEBIT." as sens"; $sql .= " FROM ".MAIN_DB_PREFIX."chargesociales as t"; - $sql .= " WHERE date_creation between ".$wheretail; + $sql .= " WHERE t.date_ech between ".$wheretail; $sql .= " AND t.entity IN (".($entity == 1 ? '0,1' : $entity).')'; //$sql.=" AND fk_statut <> ".ChargeSociales::STATUS_DRAFT; } + // Various payments + if (GETPOST('selectvariouspayment')) { + if (!empty($sql)) $sql .= " UNION ALL"; + $sql .= " SELECT t.rowid as id, t.entity, t.label as ref, 1 as paid, t.amount as total_ht, t.amount as total_ttc, 0 as total_tva, 0 as fk_soc, t.datep as date, t.datep as date_due, 'VariousPayment' as item, '' as thirdparty_name, '' as thirdparty_code, '' as country_code, '' as vatnum, sens"; + $sql .= " FROM ".MAIN_DB_PREFIX."payment_various as t"; + $sql .= " WHERE datep between ".$wheretail; + $sql .= " AND t.entity IN (".($entity == 1 ? '0,1' : $entity).')'; + } + // Loan payments + if (GETPOST('selectloanspayment')) { + if (!empty($sql)) $sql .= " UNION ALL"; + $sql .= " SELECT t.rowid as id, l.entity, l.label as ref, 1 as paid, (t.amount_capital+t.amount_insurance+t.amount_interest) as total_ht, (t.amount_capital+t.amount_insurance+t.amount_interest) as total_ttc, 0 as total_tva, 0 as fk_soc, t.datep as date, t.datep as date_due, 'LoanPayment' as item, '' as thirdparty_name, '' as thirdparty_code, '' as country_code, '' as vatnum, ".PAY_DEBIT." as sens"; + $sql .= " FROM ".MAIN_DB_PREFIX."payment_loan as t LEFT JOIN ".MAIN_DB_PREFIX."loan as l ON l.rowid = t.fk_loan"; + $sql .= " WHERE datep between ".$wheretail; + $sql .= " AND l.entity IN (".($entity == 1 ? '0,1' : $entity).')'; + } if ($sql) { $sql .= $db->order($sortfield, $sortorder); @@ -221,6 +246,7 @@ if (($action == 'searchfiles' || $action == 'dl')) { $subdir .= ($subdir ? '/' : '').dol_sanitizeFileName($objd->ref); $upload_dir = $conf->facture->dir_output.'/'.$subdir; $link = "document.php?modulepart=facture&file=".str_replace('/', '%2F', $subdir).'%2F'; + $modulepart = "facture"; break; case "SupplierInvoice": $tmpinvoicesupplier->fetch($objd->id); @@ -228,18 +254,21 @@ if (($action == 'searchfiles' || $action == 'dl')) { $subdir .= ($subdir ? '/' : '').dol_sanitizeFileName($objd->ref); $upload_dir = $conf->fournisseur->facture->dir_output.'/'.$subdir; $link = "document.php?modulepart=facture_fournisseur&file=".str_replace('/', '%2F', $subdir).'%2F'; + $modulepart = "facture_fournisseur"; break; case "ExpenseReport": $subdir = ''; $subdir .= ($subdir ? '/' : '').dol_sanitizeFileName($objd->ref); $upload_dir = $conf->expensereport->dir_output.'/'.$subdir; $link = "document.php?modulepart=expensereport&file=".str_replace('/', '%2F', $subdir).'%2F'; + $modulepart = "expensereport"; break; case "SalaryPayment": $subdir = ''; $subdir .= ($subdir ? '/' : '').dol_sanitizeFileName($objd->id); $upload_dir = $conf->salaries->dir_output.'/'.$subdir; $link = "document.php?modulepart=salaries&file=".str_replace('/', '%2F', $subdir).'%2F'; + $modulepart = "salaries"; break; case "Donation": $tmpdonation->fetch($objp->id); @@ -247,12 +276,28 @@ if (($action == 'searchfiles' || $action == 'dl')) { $subdir .= ($subdir ? '/' : '').dol_sanitizeFileName($objd->id); $upload_dir = $conf->don->dir_output.'/'.$subdir; $link = "document.php?modulepart=don&file=".str_replace('/', '%2F', $subdir).'%2F'; + $modulepart = "don"; break; case "SocialContributions": $subdir = ''; $subdir .= ($subdir ? '/' : '').dol_sanitizeFileName($objd->id); $upload_dir = $conf->tax->dir_output.'/'.$subdir; $link = "document.php?modulepart=tax&file=".str_replace('/', '%2F', $subdir).'%2F'; + $modulepart = "tax"; + break; + case "VariousPayment": + $subdir = ''; + $subdir .= ($subdir ? '/' : '').dol_sanitizeFileName($objd->id); + $upload_dir = $conf->bank->dir_output.'/'.$subdir; + $link = "document.php?modulepart=banque&file=".str_replace('/', '%2F', $subdir).'%2F'; + $modulepart = "banque"; + break; + case "LoanPayment": + // Loan payment has no linked file + $subdir = ''; + $upload_dir = $conf->loan->dir_output.'/'.$subdir; + $link = ""; + $modulepart = ""; break; default: $subdir = ''; @@ -286,11 +331,10 @@ if (($action == 'searchfiles' || $action == 'dl')) { $nofile['thirdparty_code'] = $objd->thirdparty_code; $nofile['country_code'] = $objd->country_code; $nofile['vatnum'] = $objd->vatnum; + $nofile['sens'] = $objd->sens; $filesarray[$nofile['item'].'_'.$nofile['id']] = $nofile; - } - else - { + } else { foreach ($files as $key => $file) { $file['id'] = $objd->id; @@ -304,11 +348,11 @@ if (($action == 'searchfiles' || $action == 'dl')) { $file['ref'] = ($objd->ref ? $objd->ref : $objd->id); $file['fk'] = $objd->fk_soc; $file['item'] = $objd->item; - $file['thirdparty_name'] = $objd->thirdparty_name; $file['thirdparty_code'] = $objd->thirdparty_code; $file['country_code'] = $objd->country_code; $file['vatnum'] = $objd->vatnum; + $file['sens'] = $objd->sens; // Save record into array (only the first time it is found) if (empty($filesarray[$file['item'].'_'.$file['id']])) { @@ -319,7 +363,16 @@ if (($action == 'searchfiles' || $action == 'dl')) { if (empty($filesarray[$file['item'].'_'.$file['id']]['files'])) { $filesarray[$file['item'].'_'.$file['id']]['files'] = array(); } - $filesarray[$file['item'].'_'.$file['id']]['files'][] = array('link' => $link.$file['name'], 'name'=>$file['name'], 'ref'=>$file['ref'], 'fullname' => $file['fullname'], 'relpathnamelang' => $langs->trans($file['item']).'/'.$file['name']); + $filesarray[$file['item'].'_'.$file['id']]['files'][] = array( + 'link' => $link.urlencode($file['name']), + 'name'=>$file['name'], + 'ref'=>$file['ref'], + 'fullname' => $file['fullname'], + 'relpath' => '/'.$file['name'], + 'relpathnamelang' => $langs->trans($file['item']).'/'.$file['name'], + 'modulepart' => $modulepart, + 'subdir' => $subdir, + ); //var_dump($file['item'].'_'.$file['id']); //var_dump($filesarray[$file['item'].'_'.$file['id']]['files']); } @@ -328,15 +381,12 @@ if (($action == 'searchfiles' || $action == 'dl')) { $i++; } - } - else - { + } else { dol_print_error($db); } $db->free($resd); - } - else { + } else { setEventMessages($langs->trans("ErrorSelectAtLeastOne"), null, 'errors'); $error++; } @@ -383,7 +433,8 @@ if ($result && $action == "dl" && !$error) $log .= ','.$langs->transnoentitiesnoconv("ThirdParty"); $log .= ','.$langs->transnoentitiesnoconv("Code"); $log .= ','.$langs->transnoentitiesnoconv("Country"); - $log .= ','.$langs->transnoentitiesnoconv("VATIntra")."\n"; + $log .= ','.$langs->transnoentitiesnoconv("VATIntra"); + $log .= ','.$langs->transnoentitiesnoconv("Sens")."\n"; $zipname = $dirfortmpfile.'/'.dol_print_date($date_start, 'dayrfc')."-".dol_print_date($date_stop, 'dayrfc').'_export.zip'; dol_delete_file($zipname); @@ -394,11 +445,13 @@ if ($result && $action == "dl" && !$error) { foreach ($filesarray as $key => $file) { - foreach ($file['files'] as $filecursor) { - if (file_exists($filecursor["fullname"])) { - $zip->addFile($filecursor["fullname"], $filecursor["relpathnamelang"]); - } - } + if (!empty($file['files'])) { + foreach ($file['files'] as $filecursor) { + if (file_exists($filecursor["fullname"])) { + $zip->addFile($filecursor["fullname"], $filecursor["relpathnamelang"]); + } + } + } $log .= '"'.$langs->trans($file['item']).'"'; if (!empty($conf->multicompany->enabled) && is_object($mc)) @@ -418,6 +471,7 @@ if ($result && $action == "dl" && !$error) $log .= ',"'.$file['thirdparty_code'].'"'; $log .= ',"'.$file['country_code'].'"'; $log .= ',"'.$file['vatnum'].'"'; + $log .= ',"'.$file['sens'].'"'; $log .= "\n"; } $zip->addFromString('transactions.csv', $log); @@ -432,9 +486,7 @@ if ($result && $action == "dl" && !$error) dol_delete_file($zipname); exit(); - } - else - { + } else { setEventMessages($langs->trans("FailedToOpenFile", $zipname), null, 'errors'); } } @@ -444,10 +496,17 @@ if ($result && $action == "dl" && !$error) * View */ -$form = new Form($db); +$form = new form($db); +$formfile = new FormFile($db); $userstatic = new User($db); $invoice = new Facture($db); $supplier_invoice = new FactureFournisseur($db); +$expensereport = new ExpenseReport($db); +$don = new Don($db); +$salary_payment = new PaymentSalary($db); +$charge_sociales = new ChargeSociales($db); +$various_payment = new PaymentVarious($db); +$payment_loan = new PaymentLoan($db); $title = $langs->trans("ComptaFiles").' - '.$langs->trans("List"); $help_url = ''; @@ -492,7 +551,9 @@ $listofchoices = array( 'selectexpensereports'=>array('label'=>'ExpenseReports', 'lang'=>'trips'), 'selectdonations'=>array('label'=>'Donations', 'lang'=>'donation'), 'selectpaymentsofsalaries'=>array('label'=>'SalariesPayments', 'lang'=>'salaries'), - 'selectsocialcontributions'=>array('label'=>'SocialContributions') + 'selectsocialcontributions'=>array('label'=>'SocialContributions'), + 'selectvariouspayment'=>array('label'=>'VariousPayment'), + 'selectloanspayment'=>array('label'=>'PaymentLoan'), ); foreach ($listofchoices as $choice => $val) { $checked = (((!GETPOSTISSET('search') && $action != 'searchfiles') || GETPOST($choice)) ? ' checked="checked"' : ''); @@ -557,16 +618,15 @@ if (!empty($date_start) && !empty($date_stop)) if (empty($TData)) { print '
'.$langs->trans("NoItem").'
'; - if ($data['item'] == 'Invoice') { - $invoice->id = $data['id']; + if ($data['item'] == 'Invoice') { + $invoice->id = $data['id']; $invoice->ref = $data['ref']; print $invoice->getNomUrl(1, '', 0, 0, '', 0, 0, 0); - } elseif ($data['item'] == 'SupplierInvoice') { + } elseif ($data['item'] == 'SupplierInvoice') { $supplier_invoice->id = $data['id']; $supplier_invoice->ref = $data['ref']; print $supplier_invoice->getNomUrl(1, '', 0, 0, '', 0, 0, 0); - } else { + } elseif ($data['item'] == 'ExpenseReport') { + $expensereport->id = $data['id']; + $expensereport->ref = $data['ref']; + print $expensereport->getNomUrl(1, 0, 0, '', 0, 0); + } elseif ($data['item'] == 'SalaryPayment') { + $salary_payment->id = $data['id']; + $salary_payment->ref = $data['ref']; + print $salary_payment->getNomUrl(1, '', 0, '', 0); + } elseif ($data['item'] == 'Donation') { + $don->id = $data['id']; + $don->ref = $data['ref']; + print $don->getNomUrl(1, 0, '', 0); + } elseif ($data['item'] == 'SocialContributions') { + $charge_sociales->id = $data['id']; + $charge_sociales->ref = $data['ref']; + print $charge_sociales->getNomUrl(1, 0, 0, 0, 0); + } elseif ($data['item'] == 'VariousPayment') { + $various_payment->id = $data['id']; + $various_payment->ref = $data['ref']; + print $various_payment->getNomUrl(1, '', 0, 0); + } elseif ($data['item'] == 'LoanPayment') { + $payment_loan->id = $data['id']; + $payment_loan->ref = $data['ref']; + print $payment_loan->getNomUrl(1, 0, 0, '', 0); + } else { print $data['ref']; - } + } print ''; if (!empty($data['files'])) { - foreach ($data['files'] as $filecursor) { - print ''.($filecursor['name'] ? $filecursor['name'] : $filecursor['ref']).'
'; + foreach ($data['files'] as $id=>$filecursor) { + print ''.($filecursor['name'] ? $filecursor['name'] : $filecursor['ref']).' '.$formfile->showPreview($filecursor, $filecursor['modulepart'], $filecursor['subdir'].'/'.$filecursor['name']).'
'; } } print "
'.$data['paid'].''.price($data['amount_ht'])."'.price($data['sens'] ? $data['amount_ht'] : -$data['amount_ht'])."'.price($data['amount_ttc'])."'.price($data['sens'] ? $data['amount_ttc'] : -$data['amount_ttc'])."'.price($data['amount_vat'])."'.price($data['sens'] ? $data['amount_vat'] : -$data['amount_vat'])."'.$data['thirdparty_name']."'.$data['vatnum']."'.(($data['amount_ttc'] > 0) ? price(abs($data['amount_ttc'])) : '')."'.(($data['amount_ttc'] > 0) ? '' : price(abs($data['amount_ttc'])))."'.price($data['balance'])."
'.price(price2num($totalET, 'MT')).''.price(price2num($totalIT, 'MT')).''.price(price2num($totalVAT, 'MT')).''.price($totalDebit).''.price($totalCredit).''.price(price2num($totalDebit - $totalCredit, 'MT')).''.$langs->trans('Total').' '.$langs->trans('Income').''.price(price2num($totalET_credit, 'MT')).''.price(price2num($totalIT_credit, 'MT')).''.price(price2num($totalVAT_credit, 'MT')).'
'.$langs->trans('Total').' '.$langs->trans('Outcome').''.price(price2num($totalET_debit, 'MT')).''.price(price2num($totalIT_debit, 'MT')).''.price(price2num($totalVAT_debit, 'MT')).'
'.$langs->trans('Total').''.price(price2num($totalET_credit + $totalET_debit, 'MT')).''.price(price2num($totalIT_credit + $totalIT_debit, 'MT')).''.price(price2num($totalVAT_credit + $totalVAT_debit, 'MT')).'
 '.price($balancebefore).' '.price($balancebefore).'- '.price($balance).' '.price($balance).'-'.$langs->trans("Total").''.$langs->trans("Totalforthispage").''.price(-1 * $totalarray['totaldeb']).''.price(-1 * $totalarray['totaldeb']).''.price($totalarray['totalcred']).''; if ($user->rights->banque->consolidate && $action == 'reconcile') print ''; print '
'.$langs->trans("Total").''.price($total).''.price($totalnb ?price2num($total / $totalnb, 'MT') : 0).'
"; diff --git a/htdocs/compta/bank/card.php b/htdocs/compta/bank/card.php index 593893878e0..c99f303210b 100644 --- a/htdocs/compta/bank/card.php +++ b/htdocs/compta/bank/card.php @@ -99,9 +99,7 @@ if ($action == 'add') if (empty($account_number) || $account_number == '-1') { $object->account_number = ''; - } - else - { + } else { $object->account_number = $account_number; } $fk_accountancy_journal = GETPOST('fk_accountancy_journal', 'int'); @@ -155,8 +153,7 @@ if ($action == 'add') $_GET["id"] = $id; // Force chargement page en mode visu $action = ''; - } - else { + } else { $error++; setEventMessages($object->error, $object->errors, 'errors'); @@ -167,9 +164,7 @@ if ($action == 'add') if (!$error) { $db->commit(); - } - else - { + } else { $db->rollback(); } } @@ -205,9 +200,7 @@ if ($action == 'update') if (empty($account_number) || $account_number == '-1') { $object->account_number = ''; - } - else - { + } else { $object->account_number = $account_number; } $fk_accountancy_journal = GETPOST('fk_accountancy_journal', 'int'); @@ -259,9 +252,7 @@ if ($action == 'update') $object->setCategories($categories); $_GET["id"] = $_POST["id"]; // Force chargement page en mode visu - } - else - { + } else { $error++; setEventMessages($object->error, $object->errors, 'errors'); $action = 'edit'; // Force chargement page edition @@ -271,9 +262,7 @@ if ($action == 'update') if (!$error) { $db->commit(); - } - else - { + } else { $db->rollback(); } } @@ -290,9 +279,7 @@ if ($action == 'confirm_delete' && $_POST["confirm"] == "yes" && $user->rights-> setEventMessages($langs->trans("RecordDeleted"), null, 'mesgs'); header("Location: ".DOL_URL_ROOT."/compta/bank/list.php"); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); $action = ''; } @@ -383,8 +370,7 @@ if ($action == 'create') if (isset($_POST["account_country_id"])) { $selectedcode = $_POST["account_country_id"] ? $_POST["account_country_id"] : $object->country_code; - } - elseif (empty($selectedcode)) $selectedcode = $mysoc->country_code; + } elseif (empty($selectedcode)) $selectedcode = $mysoc->country_code; $object->country_code = getCountry($selectedcode, 2); // Force country code on account to have following field on bank fields matching country rules print ''.$langs->trans("BankAccountCountry").''; @@ -398,9 +384,7 @@ if ($action == 'create') if ($selectedcode) { $formcompany->select_departement(isset($_POST["account_state_id"]) ? $_POST["account_state_id"] : '', $selectedcode, 'account_state_id'); - } - else - { + } else { print $countrynotdefined; } print ''; @@ -544,9 +528,7 @@ if ($action == 'create') print ''; print $formaccounting->select_account($object->account_number, 'account_number', 1, '', 1, 1); print ''; - } - else - { + } else { print ''.$langs->trans("AccountancyCode").''; print 'account_number).'">'; } @@ -571,16 +553,14 @@ if ($action == 'create') print '
'; print ''; -} -/* ************************************************************************** */ -/* */ -/* Visu et edition */ -/* */ -/* ************************************************************************** */ -else -{ - if (($_GET["id"] || $_GET["ref"]) && $action != 'edit') - { +} else { + /* ************************************************************************** */ + /* */ + /* Visu et edition */ + /* */ + /* ************************************************************************** */ + + if (($_GET["id"] || $_GET["ref"]) && $action != 'edit') { $object = new Account($db); if ($_GET["id"]) { @@ -886,9 +866,7 @@ else if ($selectedcode) { print $formcompany->select_state(isset($_POST["account_state_id"]) ? $_POST["account_state_id"] : $object->state_id, $selectedcode, 'account_state_id'); - } - else - { + } else { print $countrynotdefined; } print ''; diff --git a/htdocs/compta/bank/categ.php b/htdocs/compta/bank/categ.php index 29701f57c59..0f71134d08a 100644 --- a/htdocs/compta/bank/categ.php +++ b/htdocs/compta/bank/categ.php @@ -131,15 +131,12 @@ if ($result) print ''; print ''; print ''; - print ""; - } - else - { + } else { print "".$objp->label.""; - print ''; - print ''.img_edit().'  '; - print ''.img_delete().''; + print ''; + print ''.img_edit().''; + print ''.img_delete().''; print ''; } print ""; diff --git a/htdocs/compta/bank/class/account.class.php b/htdocs/compta/bank/class/account.class.php index ab99173b614..adb170ee81d 100644 --- a/htdocs/compta/bank/class/account.class.php +++ b/htdocs/compta/bank/class/account.class.php @@ -343,9 +343,9 @@ class Account extends CommonObject $string .= $this->code_guichet.' '; } elseif ($val == 'BankAccountNumberKey') { $string .= $this->cle_rib.' '; - }elseif ($val == 'BIC') { + } elseif ($val == 'BIC') { $string .= $this->bic.' '; - }elseif ($val == 'IBAN') { + } elseif ($val == 'IBAN') { $string .= $this->iban.' '; } } @@ -403,9 +403,7 @@ class Account extends CommonObject { $rowid = $this->db->last_insert_id(MAIN_DB_PREFIX."bank_url"); return $rowid; - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -437,8 +435,7 @@ class Account extends CommonObject $sql .= " FROM ".MAIN_DB_PREFIX."bank_url"; if ($fk_bank > 0) { $sql .= " WHERE fk_bank = ".$fk_bank; - } - else { $sql .= " WHERE url_id = ".$url_id." AND type = '".$type."'"; + } else { $sql .= " WHERE url_id = ".$url_id." AND type = '".$type."'"; } $sql .= " ORDER BY type, label"; @@ -464,8 +461,7 @@ class Account extends CommonObject $lines[$i]['fk_bank'] = $obj->fk_bank; $i++; } - } - else dol_print_error($this->db); + } else dol_print_error($this->db); return $lines; } @@ -509,9 +505,7 @@ class Account extends CommonObject { $obj = $this->db->fetch_object($resql); $oper = $obj->code; - } - else - { + } else { dol_print_error($this->db, 'Failed to get payment type code'); return -1; } @@ -720,20 +714,15 @@ class Account extends CommonObject if ($result < 0) $error++; // End call triggers } - } - else - { + } else { $error++; } - } - else - { + } else { if ($this->db->errno() == 'DB_ERROR_RECORD_ALREADY_EXISTS') { $this->error = $langs->trans("ErrorBankLabelAlreadyExists"); $error++; - } - else { + } else { $this->error = $this->db->error()." sql=".$sql; $error++; } @@ -743,9 +732,7 @@ class Account extends CommonObject { $this->db->commit(); return $this->id; - } - else - { + } else { $this->db->rollback(); return -1 * $error; } @@ -823,13 +810,10 @@ class Account extends CommonObject if ($result) { // Actions on extra fields (by external module or standard code) - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + if (!$error) { - if (!$error) - { - $result = $this->insertExtraFields(); - if ($result < 0) $error++; - } + $result = $this->insertExtraFields(); + if ($result < 0) $error++; } if (!$error && !$notrigger) @@ -839,9 +823,7 @@ class Account extends CommonObject if ($result < 0) $error++; // End call triggers } - } - else - { + } else { $error++; $this->error = $this->db->lasterror(); dol_print_error($this->db); @@ -851,9 +833,7 @@ class Account extends CommonObject { $this->db->commit(); return $this->id; - } - else - { + } else { $this->db->rollback(); return -1 * $error; } @@ -910,9 +890,7 @@ class Account extends CommonObject if ($result) { return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); dol_print_error($this->db); return -1; @@ -1009,14 +987,10 @@ class Account extends CommonObject $this->fetch_optionals(); return 1; - } - else - { + } else { return 0; } - } - else - { + } else { $this->error = $this->db->lasterror; $this->errors[] = $this->error; return -1; @@ -1107,7 +1081,7 @@ class Account extends CommonObject if ($result) { // Remove extrafields - if ((empty($conf->global->MAIN_EXTRAFIELDS_DISABLED))) // For avoid conflicts if trigger used + if (!$error) { $result = $this->deleteExtraFields(); if ($result < 0) @@ -1116,9 +1090,7 @@ class Account extends CommonObject dol_syslog(get_class($this)."::delete error -4 ".$this->error, LOG_ERR); } } - } - else - { + } else { $error++; $this->error = "Error ".$this->db->lasterror(); } @@ -1128,9 +1100,7 @@ class Account extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -1195,8 +1165,7 @@ class Account extends CommonObject if ($resql) { $obj = $this->db->fetch_object($resql); if ($obj->nb <= 1) $can_be_deleted = true; // Juste le solde - } - else { + } else { dol_print_error($this->db); } return $can_be_deleted; @@ -1294,9 +1263,7 @@ class Account extends CommonObject } return $response; - } - else - { + } else { dol_print_error($this->db); $this->error = $this->db->error(); return -1; @@ -1333,9 +1300,7 @@ class Account extends CommonObject $this->nb["banklines"] = $obj->nb; } $this->db->free($resql); - } - else - { + } else { dol_print_error($this->db); $this->error = $this->db->error(); return -1; @@ -1369,8 +1334,7 @@ class Account extends CommonObject { $obj = $db->fetch_object($resql); $nb = $obj->nb; - } - else dol_print_error($db); + } else dol_print_error($db); return $nb; } @@ -1417,8 +1381,7 @@ class Account extends CommonObject if ($mode == 'transactions') { $url = DOL_URL_ROOT.'/compta/bank/bankentries_list.php?id='.$this->id; - } - elseif ($mode == 'receipts') + } elseif ($mode == 'receipts') { $url = DOL_URL_ROOT.'/compta/bank/releve.php?account='.$this->id; } @@ -1478,9 +1441,7 @@ class Account extends CommonObject if ($this->error_number == 0) { return 1; - } - else - { + } else { return 0; } } @@ -1675,8 +1636,7 @@ class Account extends CommonObject //Replace the old AccountNumber key with the new BankAccountNumber key $fieldlists = explode( ' ', - preg_replace('/ ?[^Bank]AccountNumber ?/', 'BankAccountNumber', - $conf->global->BANK_SHOW_ORDER_OPTION) + preg_replace('/ ?[^Bank]AccountNumber ?/', 'BankAccountNumber', $conf->global->BANK_SHOW_ORDER_OPTION) ); } } @@ -1900,9 +1860,7 @@ class AccountLine extends CommonObject } $this->db->free($result); return $ret; - } - else - { + } else { return -1; } } @@ -1989,8 +1947,7 @@ class AccountLine extends CommonObject $this->db->rollback(); return -1; } - } - else { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -1; @@ -2018,9 +1975,7 @@ class AccountLine extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -$nbko; } @@ -2057,9 +2012,7 @@ class AccountLine extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -$nbko; } @@ -2089,9 +2042,7 @@ class AccountLine extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); $this->error = $this->db->error(); return -1; @@ -2155,9 +2106,7 @@ class AccountLine extends CommonObject $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -2193,14 +2142,11 @@ class AccountLine extends CommonObject { return 1; } - } - else - { + } else { dol_print_error($this->db); return 0; } - } - else dol_print_error($this->db); + } else dol_print_error($this->db); return 0; } @@ -2260,14 +2206,11 @@ class AccountLine extends CommonObject { return 1; } - } - else - { + } else { dol_print_error($this->db); return 0; } - } - else dol_print_error($this->db); + } else dol_print_error($this->db); return 0; } @@ -2337,9 +2280,7 @@ class AccountLine extends CommonObject //$this->date_rappro = $obj->daterappro; // Not yet managed } $this->db->free($result); - } - else - { + } else { dol_print_error($this->db); } } @@ -2480,9 +2421,7 @@ class AccountLine extends CommonObject { $alreadydispatched = $obj->nb; } - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } diff --git a/htdocs/compta/bank/class/api_bankaccounts.class.php b/htdocs/compta/bank/class/api_bankaccounts.class.php index bc5b9d46be1..3293f746033 100644 --- a/htdocs/compta/bank/class/api_bankaccounts.class.php +++ b/htdocs/compta/bank/class/api_bankaccounts.class.php @@ -73,12 +73,12 @@ class BankAccounts extends DolibarrApi $sql = "SELECT rowid FROM ".MAIN_DB_PREFIX."bank_account as t"; if ($category > 0) { - $sql .= ", ".MAIN_DB_PREFIX."categorie_account as c"; + $sql .= ", ".MAIN_DB_PREFIX."categorie_account as c"; } $sql .= ' WHERE t.entity IN ('.getEntity('bank_account').')'; // Select accounts of given category if ($category > 0) { - $sql .= " AND c.fk_categorie = ".$db->escape($category)." AND c.fk_account = t.rowid "; + $sql .= " AND c.fk_categorie = ".$this->db->escape($category)." AND c.fk_account = t.rowid "; } // Add sql filters if ($sqlfilters) @@ -225,9 +225,7 @@ class BankAccounts extends DolibarrApi if ($accountto->currency_code == $accountfrom->currency_code) { $amount_to = $amount; - } - else - { + } 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.'); @@ -303,9 +301,7 @@ class BankAccounts extends DolibarrApi 'message' => 'Internal wire transfer created successfully.' ) ); - } - else - { + } else { $this->db->rollback(); throw new RestException(500, $accountfrom->error.' '.$accountto->error); } @@ -338,9 +334,7 @@ class BankAccounts extends DolibarrApi if ($account->update(DolibarrApiAccess::$user) > 0) { return $this->get($id); - } - else - { + } else { throw new RestException(500, $account->error); } } diff --git a/htdocs/compta/bank/class/paymentvarious.class.php b/htdocs/compta/bank/class/paymentvarious.class.php index 6af394ad4b4..65c7e7ce2ea 100644 --- a/htdocs/compta/bank/class/paymentvarious.class.php +++ b/htdocs/compta/bank/class/paymentvarious.class.php @@ -169,9 +169,7 @@ class PaymentVarious extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -244,9 +242,7 @@ class PaymentVarious extends CommonObject $this->db->free($resql); return 1; - } - else - { + } else { $this->error = "Error ".$this->db->lasterror(); return -1; } @@ -430,9 +426,7 @@ class PaymentVarious extends CommonObject if ($bank_line_id > 0) { $this->update_fk_bank($bank_line_id); - } - else - { + } else { $this->error = $acc->error; $error++; } @@ -461,22 +455,17 @@ class PaymentVarious extends CommonObject $result = $this->call_trigger('PAYMENT_VARIOUS_CREATE', $user); if ($result < 0) $error++; // End call triggers - } - else $error++; + } else $error++; if (!$error) { $this->db->commit(); return $this->id; - } - else - { + } else { $this->db->rollback(); return -2; } - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -1; @@ -499,9 +488,7 @@ class PaymentVarious extends CommonObject if ($result) { return 1; - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -535,30 +522,25 @@ class PaymentVarious extends CommonObject if ($mode == 0) { return $langs->trans($this->statuts[$status]); - } - elseif ($mode == 1) + } elseif ($mode == 1) { return $langs->trans($this->statuts_short[$status]); - } - elseif ($mode == 2) + } elseif ($mode == 2) { if ($status == 0) return img_picto($langs->trans($this->statuts_short[$status]), 'statut0').' '.$langs->trans($this->statuts_short[$status]); elseif ($status == 1) return img_picto($langs->trans($this->statuts_short[$status]), 'statut4').' '.$langs->trans($this->statuts_short[$status]); elseif ($status == 2) return img_picto($langs->trans($this->statuts_short[$status]), 'statut6').' '.$langs->trans($this->statuts_short[$status]); - } - elseif ($mode == 3) + } elseif ($mode == 3) { if ($status == 0 && !empty($this->statuts_short[$status])) return img_picto($langs->trans($this->statuts_short[$status]), 'statut0'); elseif ($status == 1 && !empty($this->statuts_short[$status])) return img_picto($langs->trans($this->statuts_short[$status]), 'statut4'); elseif ($status == 2 && !empty($this->statuts_short[$status])) return img_picto($langs->trans($this->statuts_short[$status]), 'statut6'); - } - elseif ($mode == 4) + } elseif ($mode == 4) { if ($status == 0 && !empty($this->statuts_short[$status])) return img_picto($langs->trans($this->statuts_short[$status]), 'statut0').' '.$langs->trans($this->statuts[$status]); elseif ($status == 1 && !empty($this->statuts_short[$status])) return img_picto($langs->trans($this->statuts_short[$status]), 'statut4').' '.$langs->trans($this->statuts[$status]); elseif ($status == 2 && !empty($this->statuts_short[$status])) return img_picto($langs->trans($this->statuts_short[$status]), 'statut6').' '.$langs->trans($this->statuts[$status]); - } - elseif ($mode == 5) + } elseif ($mode == 5) { if ($status == 0 && !empty($this->statuts_short[$status])) return $langs->trans($this->statuts_short[$status]).' '.img_picto($langs->trans($this->statuts_short[$status]), 'statut0'); elseif ($status == 1 && !empty($this->statuts_short[$status])) return $langs->trans($this->statuts_short[$status]).' '.img_picto($langs->trans($this->statuts_short[$status]), 'statut4'); @@ -616,8 +598,7 @@ class PaymentVarious extends CommonObject $reshook=$hookmanager->executeHooks('getnomurltooltip',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks if ($reshook > 0) $linkclose = $hookmanager->resPrint; */ - } - else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); + } else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); $linkstart = ''; @@ -676,9 +657,7 @@ class PaymentVarious extends CommonObject $this->date_modif = $this->db->jdate($obj->tms); } $this->db->free($result); - } - else - { + } else { dol_print_error($this->db); } } @@ -705,9 +684,7 @@ class PaymentVarious extends CommonObject { $alreadydispatched = $obj->nb; } - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } diff --git a/htdocs/compta/bank/document.php b/htdocs/compta/bank/document.php index 9fd2207f3ec..09cd81d4198 100644 --- a/htdocs/compta/bank/document.php +++ b/htdocs/compta/bank/document.php @@ -54,11 +54,12 @@ if ($user->socid) $socid = $user->socid; // Get parameters +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; if (!$sortorder) @@ -136,12 +137,10 @@ if ($id > 0 || !empty($ref)) { $permtoedit = $user->rights->banque->modifier; $param = '&id='.$object->id; include_once DOL_DOCUMENT_ROOT.'/core/tpl/document_actions_post_headers.tpl.php'; - } - else { + } else { dol_print_error($db); } -} -else { +} else { Header('Location: index.php'); exit; } diff --git a/htdocs/compta/bank/graph.php b/htdocs/compta/bank/graph.php index 347353be84f..296211bf35c 100644 --- a/htdocs/compta/bank/graph.php +++ b/htdocs/compta/bank/graph.php @@ -84,9 +84,7 @@ if ($result < 0) $langs->load("errors"); $error++; setEventMessages($langs->trans("ErrorFailedToCreateDir"), null, 'errors'); -} -else -{ +} else { // Calcul $min and $max $sql = "SELECT MIN(b.datev) as min, MAX(b.datev) as max"; $sql .= " FROM ".MAIN_DB_PREFIX."bank as b"; @@ -102,9 +100,7 @@ else $obj = $db->fetch_object($resql); $min = $db->jdate($obj->min); $max = $db->jdate($obj->max); - } - else - { + } else { dol_print_error($db); } if (empty($min)) $min = dol_now() - 3600 * 24; @@ -151,9 +147,7 @@ else $i++; } $db->free($resql); - } - else - { + } else { dol_print_error($db); } @@ -174,9 +168,7 @@ else $row = $db->fetch_row($resql); $solde = $row[0]; $db->free($resql); - } - else - { + } else { dol_print_error($db); } @@ -199,9 +191,7 @@ else if ($day > time()) { $datas[$i] = ''; // Valeur speciale permettant de ne pas tracer le graph - } - else - { + } else { $datas[$i] = $solde + $subtotal; } $datamin[$i] = $object->min_desired; @@ -294,9 +284,7 @@ else $i++; } $db->free($resql); - } - else - { + } else { dol_print_error($db); } @@ -317,9 +305,7 @@ else $row = $db->fetch_row($resql); $solde = $row[0]; $db->free($resql); - } - else - { + } else { dol_print_error($db); } @@ -343,9 +329,7 @@ else if ($day > $now) { $datas[$i] = ''; // Valeur speciale permettant de ne pas tracer le graph - } - else - { + } else { $datas[$i] = $solde + $subtotal; } $datamin[$i] = $object->min_desired; @@ -431,9 +415,7 @@ else $amounts[$row[0]] = $row[1]; $i++; } - } - else - { + } else { dol_print_error($db); } @@ -459,9 +441,7 @@ else if ($day > ($max + 86400)) { $datas[$i] = ''; // Valeur speciale permettant de ne pas tracer le graph - } - else - { + } else { $datas[$i] = 0 + $solde + $subtotal; } $datamin[$i] = $object->min_desired; @@ -557,9 +537,7 @@ else $i++; } $db->free($resql); - } - else - { + } else { dol_print_error($db); } @@ -591,9 +569,7 @@ else $debits[$row[0]] = abs($row[1]); } $db->free($resql); - } - else - { + } else { dol_print_error($db); } @@ -674,9 +650,7 @@ else $i++; } $db->free($resql); - } - else - { + } else { dol_print_error($db); } $sql = "SELECT date_format(b.datev,'%m')"; @@ -699,9 +673,7 @@ else $debits[$row[0]] = abs($row[1]); } $db->free($resql); - } - else - { + } else { dol_print_error($db); } @@ -770,16 +742,12 @@ if ($account) { $morehtml = ''.$langs->trans("ShowAllAccounts").''; dol_banner_tab($object, 'ref', $linkback, 1, 'ref', 'ref', '', $moreparam, 0, '', '', 1); - } - else - { + } else { $morehtml = ''.$langs->trans("BackToAccount").''; print $langs->trans("AllAccounts"); //print $morehtml; } - } - else - { + } else { $bankaccount = new Account($db); $listid = explode(',', $account); foreach ($listid as $key => $id) @@ -790,9 +758,7 @@ if ($account) if ($key < (count($listid) - 1)) print ', '; } } -} -else -{ +} else { print $langs->trans("AllAccounts"); } @@ -808,9 +774,7 @@ if ($mode == 'showalltime') print ''; print $langs->trans("GoBack"); print ''; -} -else -{ +} else { print ''; print $langs->trans("ShowAllTimeBalance"); print ''; diff --git a/htdocs/compta/bank/info.php b/htdocs/compta/bank/info.php index abab3b4ff9c..6f6d7236f15 100644 --- a/htdocs/compta/bank/info.php +++ b/htdocs/compta/bank/info.php @@ -46,7 +46,7 @@ $object->info($id); $h = 0; $head[$h][0] = DOL_URL_ROOT.'/compta/bank/line.php?rowid='.$id; -$head[$h][1] = $langs->trans("Card"); +$head[$h][1] = $langs->trans("BankTransaction"); $h++; $head[$h][0] = DOL_URL_ROOT.'/compta/bank/info.php?rowid='.$id; diff --git a/htdocs/compta/bank/line.php b/htdocs/compta/bank/line.php index 5c64c4ee5d9..d2b3e6099dd 100644 --- a/htdocs/compta/bank/line.php +++ b/htdocs/compta/bank/line.php @@ -76,15 +76,15 @@ if ($user->rights->banque->consolidate && $action == 'donext') { $al = new AccountLine($db); $al->dateo_next($_GET["rowid"]); -}elseif ($user->rights->banque->consolidate && $action == 'doprev') +} elseif ($user->rights->banque->consolidate && $action == 'doprev') { $al = new AccountLine($db); $al->dateo_previous($_GET["rowid"]); -}elseif ($user->rights->banque->consolidate && $action == 'dvnext') +} elseif ($user->rights->banque->consolidate && $action == 'dvnext') { $al = new AccountLine($db); $al->datev_next($_GET["rowid"]); -}elseif ($user->rights->banque->consolidate && $action == 'dvprev') +} elseif ($user->rights->banque->consolidate && $action == 'dvprev') { $al = new AccountLine($db); $al->datev_previous($_GET["rowid"]); @@ -99,9 +99,7 @@ if ($action == 'confirm_delete_categ' && $confirm == "yes" && $user->rights->ban { dol_print_error($db); } - } - else - { + } else { setEventMessages($langs->trans("MissingIds"), null, 'errors'); } } @@ -120,9 +118,7 @@ if ($user->rights->banque->modifier && $action == "update") if (GETPOST('accountid', 'int') > 0 && !$acline->rappro && !$acline->getVentilExportCompta()) // We ask to change bank account { $actarget->fetch(GETPOST('accountid', 'int')); - } - else - { + } else { $actarget->fetch($id); } @@ -191,9 +187,7 @@ if ($user->rights->banque->modifier && $action == "update") { setEventMessages($langs->trans("RecordSaved"), null, 'mesgs'); $db->commit(); - } - else - { + } else { $db->rollback(); dol_print_error($db); } @@ -229,9 +223,7 @@ if ($user->rights->banque->consolidate && ($action == 'num_releve' || $action == { setEventMessages($langs->trans("RecordSaved"), null, 'mesgs'); $db->commit(); - } - else - { + } else { $db->rollback(); dol_print_error($db); } @@ -257,7 +249,7 @@ foreach ($cats as $cat) { $tabs = array( array( DOL_URL_ROOT.'/compta/bank/line.php?rowid='.$rowid, - $langs->trans('Card') + $langs->trans('BankTransaction') ), array( DOL_URL_ROOT.'/compta/bank/info.php?rowid='.$rowid, @@ -324,9 +316,7 @@ if ($result) if (!$objp->rappro && !$bankline->getVentilExportCompta()) { $form->select_comptes($acct->id, 'accountid', 0, '', 0); - } - else - { + } else { print $acct->getNomUrl(1, 'transactions', 'reflabel'); } print ''; @@ -346,94 +336,80 @@ if ($result) $paymenttmp->fetch($links[$key]['url_id']); $paymenttmp->ref = $langs->trans("Payment").' '.$paymenttmp->ref; /*print ''; - print img_object($langs->trans('ShowPayment'),'payment').' '; + print img_object($langs->trans('Payment'),'payment').' '; print $langs->trans("Payment"); print '';*/ print $paymenttmp->getNomUrl(1); - } - elseif ($links[$key]['type'] == 'payment_supplier') { + } elseif ($links[$key]['type'] == 'payment_supplier') { require_once DOL_DOCUMENT_ROOT.'/fourn/class/paiementfourn.class.php'; $paymenttmp = new PaiementFourn($db); $paymenttmp->fetch($links[$key]['url_id']); $paymenttmp->ref = $langs->trans("Payment").' '.$paymenttmp->ref; /*print ''; - print img_object($langs->trans('ShowPayment'),'payment').' '; + print img_object($langs->trans('Payment'),'payment').' '; print $langs->trans("Payment"); print '';*/ print $paymenttmp->getNomUrl(1); - } - elseif ($links[$key]['type'] == 'company') { + } elseif ($links[$key]['type'] == 'company') { $societe = new Societe($db); $societe->fetch($links[$key]['url_id']); print $societe->getNomUrl(1); - } - elseif ($links[$key]['type'] == 'sc') { + } elseif ($links[$key]['type'] == 'sc') { print ''; - print img_object($langs->trans('ShowSocialContribution'), 'bill').' '; + print img_object($langs->trans('SocialContribution'), 'bill').' '; print $langs->trans("SocialContribution").($links[$key]['label'] ? ' - '.$links[$key]['label'] : ''); print ''; - } - elseif ($links[$key]['type'] == 'payment_sc') { + } elseif ($links[$key]['type'] == 'payment_sc') { print ''; - print img_object($langs->trans('ShowPayment'), 'payment').' '; + print img_object($langs->trans('Payment'), 'payment').' '; print $langs->trans("SocialContributionPayment"); print ''; - } - elseif ($links[$key]['type'] == 'payment_vat') { + } elseif ($links[$key]['type'] == 'payment_vat') { print ''; - print img_object($langs->trans('ShowVAT'), 'payment').' '; + print img_object($langs->trans('VAT'), 'payment').' '; print $langs->trans("VATPayment"); print ''; - } - elseif ($links[$key]['type'] == 'payment_salary') { + } elseif ($links[$key]['type'] == 'payment_salary') { print ''; - print img_object($langs->trans('ShowPaymentSalary'), 'payment').' '; + print img_object($langs->trans('PaymentSalary'), 'payment').' '; print $langs->trans("SalaryPayment"); print ''; - } - elseif ($links[$key]['type'] == 'payment_loan') { + } elseif ($links[$key]['type'] == 'payment_loan') { print ''; - print img_object($langs->trans('ShowLoanPayment'), 'payment').' '; + print img_object($langs->trans('LoanPayment'), 'payment').' '; print $langs->trans("PaymentLoan"); print ''; - } - elseif ($links[$key]['type'] == 'loan') { + } elseif ($links[$key]['type'] == 'loan') { print ''; - print img_object($langs->trans('ShowLoan'), 'bill').' '; + print img_object($langs->trans('Loan'), 'bill').' '; print $langs->trans("Loan"); print ''; - } - elseif ($links[$key]['type'] == 'member') { + } elseif ($links[$key]['type'] == 'member') { print ''; - print img_object($langs->trans('ShowMember'), 'user').' '; + print img_object($langs->trans('Member'), 'user').' '; print $links[$key]['label']; print ''; - } - elseif ($links[$key]['type'] == 'payment_donation') { + } elseif ($links[$key]['type'] == 'payment_donation') { print ''; - print img_object($langs->trans('ShowDonation'), 'payment').' '; + print img_object($langs->trans('Donation'), 'payment').' '; print $langs->trans("DonationPayment"); print ''; - } - elseif ($links[$key]['type'] == 'banktransfert') { + } elseif ($links[$key]['type'] == 'banktransfert') { print ''; - print img_object($langs->trans('ShowTransaction'), 'payment').' '; + print img_object($langs->trans('Transaction'), 'payment').' '; print $langs->trans("TransactionOnTheOtherAccount"); print ''; - } - elseif ($links[$key]['type'] == 'user') { + } elseif ($links[$key]['type'] == 'user') { print ''; - print img_object($langs->trans('ShowUser'), 'user').' '; + print img_object($langs->trans('User'), 'user').' '; print $langs->trans("User"); print ''; - } - elseif ($links[$key]['type'] == 'payment_various') { + } elseif ($links[$key]['type'] == 'payment_various') { print ''; - print img_object($langs->trans('ShowVariousPayment'), 'payment').' '; + print img_object($langs->trans('VariousPayment'), 'payment').' '; print $langs->trans("VariousPayment"); print ''; - } - else { + } else { print ''; print img_object('', 'generic').' '; print $links[$key]['label']; @@ -463,9 +439,7 @@ if ($result) print '     '.$langs->trans("CheckReceipt").': '.$receipt->getNomUrl(2); } print ''; - } - else - { + } else { print ''.$objp->fk_type.' '.$objp->num_chq.''; } print ""; @@ -479,9 +453,7 @@ if ($result) print ''; print ''; print ''; - } - else - { + } else { print ''.$objp->emetteur.''; } print ""; @@ -495,9 +467,7 @@ if ($result) print ''; print ''; print ''; - } - else - { + } else { print ''.$objp->banque.''; } print ""; @@ -517,9 +487,7 @@ if ($result) print img_edit_add().""; } print ''; - } - else - { + } else { print ''; print dol_print_date($db->jdate($objp->do), "day"); print ''; @@ -541,9 +509,7 @@ if ($result) print img_edit_add().""; } print ''; - } - else - { + } else { print ''; print dol_print_date($db->jdate($objp->dv), "day"); print ''; @@ -560,24 +526,18 @@ if ($result) { // Label generique car entre parentheses. On l'affiche en le traduisant print $langs->trans($reg[1]); - } - else - { + } else { print $objp->label; } print '">'; print ''; - } - else - { + } else { print ''; if (preg_match('/^\((.*)\)$/i', $objp->label, $reg)) { // Label generique car entre parentheses. On l'affiche en le traduisant print $langs->trans($reg[1]); - } - else - { + } else { print $objp->label; } print ''; @@ -591,9 +551,7 @@ if ($result) print ''; print 'rappro ? ' disabled' : '').' value="'.price($objp->amount).'"> '.$langs->trans("Currency".$acct->currency_code); print ''; - } - else - { + } else { print ''; print price($objp->amount); print ''; @@ -649,16 +607,12 @@ if ($result) { print $langs->trans("AccountStatement").' rappro ? ' disabled' : '').'>'; print ''; - } - else - { + } else { print $langs->trans("AccountStatement").' rappro ? ' disabled' : '').'>'; } if ($objp->num_releve) print '   ('.$langs->trans("AccountStatement").' '.$objp->num_releve.')'; print ''; - } - else - { + } else { print ''.$objp->num_releve.' '; } print ''; @@ -669,9 +623,7 @@ if ($result) print ''; print 'rappro ? ' checked="checked"' : '')).'">'; print ''; - } - else - { + } else { print ''.yn($objp->rappro).''; } print ''; @@ -694,8 +646,7 @@ if ($result) } $db->free($result); -} -else dol_print_error($db); +} else dol_print_error($db); // End of page llxFooter(); diff --git a/htdocs/compta/bank/list.php b/htdocs/compta/bank/list.php index eaefdfb6573..882244518f7 100644 --- a/htdocs/compta/bank/list.php +++ b/htdocs/compta/bank/list.php @@ -212,8 +212,7 @@ if ($resql) $i++; } $db->free($resql); -} -else dol_print_error($db); +} else dol_print_error($db); @@ -487,9 +486,7 @@ foreach ($accounts as $key=>$type) $accountingaccount = new AccountingAccount($db); $accountingaccount->fetch('', $objecttmp->account_number, 1); print $accountingaccount->getNomUrl(0, 1, 1, '', 1); - } - else - { + } else { print $objecttmp->account_number; } print ''; @@ -505,9 +502,7 @@ foreach ($accounts as $key=>$type) $accountingjournal = new AccountingJournal($db); $accountingjournal->fetch($objecttmp->fk_accountancy_journal); print $accountingjournal->getNomUrl(0, 1, 1, '', 1); - } - else - { + } else { print ''; } print ''; @@ -556,9 +551,15 @@ foreach ($accounts as $key=>$type) } // Extra fields + if (is_array($objecttmp->array_options)) { + $obj = new stdClass(); + foreach ($objecttmp->array_options as $k => $v) { + $obj->$k = $v; + } + } include DOL_DOCUMENT_ROOT.'/core/tpl/extrafields_list_print_fields.tpl.php'; // Fields from hook - $parameters = array('arrayfields'=>$arrayfields); + $parameters = array('arrayfields'=>$arrayfields, 'obj'=>$obj, 'i'=>$i, 'totalarray'=>&$totalarray); $reshook = $hookmanager->executeHooks('printFieldListValue', $parameters, $objecttmp); // Note that $action and $objecttmpect may have been modified by hook print $hookmanager->resPrint; // Date creation diff --git a/htdocs/compta/bank/releve.php b/htdocs/compta/bank/releve.php index c737af4a89e..ba5896d6d7d 100644 --- a/htdocs/compta/bank/releve.php +++ b/htdocs/compta/bank/releve.php @@ -125,8 +125,7 @@ if ($_GET["rel"] == 'prev') $found = true; } } -} -elseif ($_GET["rel"] == 'next') +} elseif ($_GET["rel"] == 'next') { // Recherche valeur pour num = numero releve precedent $sql = "SELECT DISTINCT(b.num_releve) as num"; @@ -147,8 +146,7 @@ elseif ($_GET["rel"] == 'next') $found = true; } } -} -else { +} else { // On veut le releve num $found = true; } @@ -179,7 +177,7 @@ $sqlrequestforbankline = $sql; if ($action == 'confirm_editbankreceipt' && !empty($oldbankreceipt) && !empty($newbankreceipt)) { // TODO Add a test to check newbankreceipt does not exists yet - $sqlupdate = 'UPDATE '.MAIN_DB_PREFIX.'bank SET num_releve = "'.$db->escape($newbankreceipt).'" WHERE num_releve = "'.$db->escape($oldbankreceipt).'"'; + $sqlupdate = 'UPDATE '.MAIN_DB_PREFIX.'bank SET num_releve = "'.$db->escape($newbankreceipt).'" WHERE num_releve = "'.$db->escape($oldbankreceipt).'" AND fk_account = '.$id; $result = $db->query($sqlupdate); if ($result < 0) dol_print_error($db); @@ -295,17 +293,13 @@ if (empty($numref)) if (!isset($objp->numr)) { // - } - else - { + } else { print ''; print ''; if ($action != 'editbankreceipt' || $objp->numr != $brref) { print ''.$objp->numr.''; - } - else - { + } else { print ''; print ''; print ''; @@ -355,14 +349,10 @@ if (empty($numref)) print ''; print "\n
\n"; - } - else - { + } else { dol_print_error($db); } -} -else -{ +} else { /** * Show list of record into a bank statement */ @@ -488,58 +478,50 @@ else $paymentstatic->ref = $langs->trans("Payment"); print ' '.$paymentstatic->getNomUrl(1); $newline = 0; - } - elseif ($links[$key]['type'] == 'payment_supplier') + } elseif ($links[$key]['type'] == 'payment_supplier') { $paymentsupplierstatic->id = $links[$key]['url_id']; $paymentsupplierstatic->ref = $langs->trans("Payment"); print ' '.$paymentsupplierstatic->getNomUrl(1); $newline = 0; - } - elseif ($links[$key]['type'] == 'payment_sc') + } elseif ($links[$key]['type'] == 'payment_sc') { print ''; print ' '.img_object($langs->trans('ShowPayment'), 'payment').' '; print $langs->trans("SocialContributionPayment"); print ''; $newline = 0; - } - elseif ($links[$key]['type'] == 'payment_vat') + } elseif ($links[$key]['type'] == 'payment_vat') { $paymentvatstatic->id = $links[$key]['url_id']; $paymentvatstatic->ref = $langs->trans("Payment"); print ' '.$paymentvatstatic->getNomUrl(1); - } - elseif ($links[$key]['type'] == 'payment_salary') + } elseif ($links[$key]['type'] == 'payment_salary') { print ''; print ' '.img_object($langs->trans('ShowPayment'), 'payment').' '; print $langs->trans("Payment"); print ''; $newline = 0; - } - elseif ($links[$key]['type'] == 'payment_donation') + } elseif ($links[$key]['type'] == 'payment_donation') { $paymentdonationstatic->id = $links[$key]['url_id']; $paymentdonationstatic->ref = $langs->trans("Payment"); print ' '.$paymentdonationstatic->getNomUrl(1); $newline = 0; - } - elseif ($links[$key]['type'] == 'payment_loan') + } elseif ($links[$key]['type'] == 'payment_loan') { $paymentloanstatic->id = $links[$key]['url_id']; $paymentloanstatic->ref = $langs->trans("Payment"); print ' '.$paymentloanstatic->getNomUrl(1); $newline = 0; - } - elseif ($links[$key]['type'] == 'payment_various') + } elseif ($links[$key]['type'] == 'payment_various') { $paymentvariousstatic->id = $links[$key]['url_id']; $paymentvariousstatic->ref = $langs->trans("Payment"); print ' '.$paymentvariousstatic->getNomUrl(1); $newline = 0; - } - elseif ($links[$key]['type'] == 'banktransfert') { + } elseif ($links[$key]['type'] == 'banktransfert') { // Do not show link to transfer since there is no transfer card (avoid confusion). Can already be accessed from transaction detail. if ($objp->amount > 0) { @@ -553,9 +535,7 @@ else $bankstatic->label = $objp->bankref; print $bankstatic->getNomUrl(1, ''); print ')'; - } - else - { + } else { $bankstatic->id = $objp->bankid; $bankstatic->label = $objp->bankref; print ' ('.$langs->trans("from").' '; @@ -567,35 +547,30 @@ else print $bankstatic->getNomUrl(1, 'transactions'); print ')'; } - } - elseif ($links[$key]['type'] == 'company') { + } elseif ($links[$key]['type'] == 'company') { $societestatic->id = $links[$key]['url_id']; $societestatic->name = $links[$key]['label']; print $societestatic->getNomUrl(1, 'company', 24); $newline = 0; - } - elseif ($links[$key]['type'] == 'member') { + } elseif ($links[$key]['type'] == 'member') { print ''; print img_object($langs->trans('ShowMember'), 'user').' '; print $links[$key]['label']; print ''; $newline = 0; - } - elseif ($links[$key]['type'] == 'user') { + } elseif ($links[$key]['type'] == 'user') { print ''; print img_object($langs->trans('ShowUser'), 'user').' '; print $links[$key]['label']; print ''; $newline = 0; - } - elseif ($links[$key]['type'] == 'sc') { + } elseif ($links[$key]['type'] == 'sc') { print ''; print img_object($langs->trans('ShowBill'), 'bill').' '; print $langs->trans("SocialContribution"); print ''; $newline = 0; - } - else { + } else { print ''; print $links[$key]['label']; print ''; @@ -625,9 +600,7 @@ else print "
".$objc->label.""; $ii++; } - } - else - { + } else { dol_print_error($db); } } @@ -638,9 +611,7 @@ else { $totald = $totald + abs($objp->amount); print ''.price($objp->amount * -1)." \n"; - } - else - { + } else { $totalc = $totalc + abs($objp->amount); print ' '.price($objp->amount)."\n"; } @@ -652,9 +623,7 @@ else print ''; print img_edit(); print ""; - } - else - { + } else { print " "; } print ""; diff --git a/htdocs/compta/bank/transfer.php b/htdocs/compta/bank/transfer.php index aa4c39e55ee..7228c38fe50 100644 --- a/htdocs/compta/bank/transfer.php +++ b/htdocs/compta/bank/transfer.php @@ -87,9 +87,7 @@ if ($action == 'add') if ($accountto->currency_code == $accountfrom->currency_code) { $amountto = $amount; - } - else - { + } else { if (!$amountto) { $error++; @@ -130,15 +128,11 @@ if ($action == 'add') $mesgs = $langs->trans("TransferFromToDone", ''.$accountfrom->label."", ''.$accountto->label."", $amount, $langs->transnoentities("Currency".$conf->currency)); setEventMessages($mesgs, null, 'mesgs'); $db->commit(); - } - else - { + } else { setEventMessages($accountfrom->error.' '.$accountto->error, null, 'errors'); $db->rollback(); } - } - else - { + } else { $error++; setEventMessages($langs->trans("ErrorFromToAccountsMustDiffers"), null, 'errors'); } diff --git a/htdocs/compta/bank/treso.php b/htdocs/compta/bank/treso.php index b8d259cdc8d..cf494b77a90 100644 --- a/htdocs/compta/bank/treso.php +++ b/htdocs/compta/bank/treso.php @@ -72,9 +72,7 @@ if ($_REQUEST["account"] || $_REQUEST["ref"]) if ($vline) { $viewline = $vline; - } - else - { + } else { $viewline = 20; } @@ -290,8 +288,7 @@ if ($_REQUEST["account"] || $_REQUEST["ref"]) if ($obj->family == 'invoice') { $mc->getInfo($obj->entity); print "".$mc->label.""; - } - else { + } else { print ""; } } @@ -304,9 +301,7 @@ if ($_REQUEST["account"] || $_REQUEST["ref"]) $i++; } - } - else - { + } else { dol_print_error($db); } @@ -326,9 +321,7 @@ if ($_REQUEST["account"] || $_REQUEST["ref"]) print ""; print ""; -} -else -{ +} else { print $langs->trans("ErrorBankAccountNotFound"); } diff --git a/htdocs/compta/bank/various_payment/card.php b/htdocs/compta/bank/various_payment/card.php index ccd6b24c6b9..071a5abf0a9 100644 --- a/htdocs/compta/bank/various_payment/card.php +++ b/htdocs/compta/bank/various_payment/card.php @@ -163,9 +163,7 @@ if (empty($reshook)) $urltogo = ($backtopage ? $backtopage : DOL_URL_ROOT.'/compta/bank/various_payment/list.php'); header("Location: ".$urltogo); exit; - } - else - { + } else { $db->rollback(); setEventMessages($object->error, $object->errors, 'errors'); $action = "create"; @@ -198,22 +196,16 @@ if (empty($reshook)) $db->commit(); header("Location: ".DOL_URL_ROOT.'/compta/bank/various_payment/list.php'); exit; - } - else - { + } else { $object->error = $accountline->error; $db->rollback(); setEventMessages($object->error, $object->errors, 'errors'); } - } - else - { + } else { $db->rollback(); setEventMessages($object->error, $object->errors, 'errors'); } - } - else - { + } else { setEventMessages('Error try do delete a line linked to a conciliated bank transaction', null, 'errors'); } } @@ -277,7 +269,7 @@ if ($action == 'create') print ''; print ''; - print load_fiche_titre($langs->trans("NewVariousPayment"), '', 'invoicing'); + print load_fiche_titre($langs->trans("NewVariousPayment"), '', 'object_payment'); dol_fiche_head('', ''); @@ -375,8 +367,7 @@ if ($action == 'create') print ''; print $formaccounting->select_account($accountancy_code, 'accountancy_code', 1, null, 1, 1); print ''; - } - else // For external software + } else // For external software { print ''.$langs->trans("AccountAccounting").''; print ''; @@ -391,14 +382,11 @@ if ($action == 'create') if (!empty($conf->global->ACCOUNTANCY_COMBO_FOR_AUX)) { print $formaccounting->select_auxaccount($subledger_account, 'subledger_account', 1, ''); - } - else - { + } else { print ''; } print ''; - } - else // For external software + } else // For external software { print ''.$langs->trans("SubledgerAccount").''; print ''; @@ -564,14 +552,10 @@ if ($id) } else { print ''; } - } - else - { + } else { print ''; } - } - else - { + } else { print ''; } diff --git a/htdocs/compta/bank/various_payment/document.php b/htdocs/compta/bank/various_payment/document.php index 618cc6006a5..7a89fd77986 100644 --- a/htdocs/compta/bank/various_payment/document.php +++ b/htdocs/compta/bank/various_payment/document.php @@ -43,11 +43,12 @@ if ($user->socid) $socid = $user->socid; $result = restrictedArea($user, 'banque', '', '', ''); // Get parameters +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST('sortfield', 'alpha'); $sortorder = GETPOST('sortorder', 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; if (!$sortorder) $sortorder = "ASC"; @@ -148,9 +149,7 @@ if ($object->id) $permission = $user->rights->banque->modifier; $param = '&id='.$object->id; include_once DOL_DOCUMENT_ROOT.'/core/tpl/document_actions_post_headers.tpl.php'; -} -else -{ +} else { print $langs->trans("ErrorUnknown"); } diff --git a/htdocs/compta/bank/various_payment/list.php b/htdocs/compta/bank/various_payment/list.php index e2aa6517417..d02f75819e4 100644 --- a/htdocs/compta/bank/various_payment/list.php +++ b/htdocs/compta/bank/various_payment/list.php @@ -58,7 +58,7 @@ $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; if (!$sortfield) $sortfield = "v.datep,v.rowid"; @@ -75,9 +75,7 @@ if (!GETPOST('typeid')) $part = explode(':', $val); if ($part[0] == 'v.fk_typepayment') $typeid = $part[1]; } -} -else -{ +} else { $typeid = GETPOST('typeid'); } @@ -95,6 +93,7 @@ if (GETPOST('button_removefilter_x', 'alpha') || GETPOST('button_removefilter.x' $typeid = ""; } + /* * View */ @@ -178,9 +177,8 @@ if ($result) print ''; print ''; print ''; - print ''; - print_barre_liste($langs->trans("VariousPayments"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, '', $num, $totalnboflines, 'invoicing', 0, $newcardbutton, '', $limit); + print_barre_liste($langs->trans("VariousPayments"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, '', $num, $totalnboflines, 'object_payment', 0, $newcardbutton, '', $limit, 0, 0, 1); print '
'; print ''."\n"; @@ -313,8 +311,7 @@ if ($result) $accountstatic->label = $obj->blabel; print $accountstatic->getNomUrl(1); - } - else print ' '; + } else print ' '; print ''; if (!$i) $totalarray['nbfield']++; } @@ -373,9 +370,7 @@ if ($result) print ''; $db->free($result); -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/compta/cashcontrol/cashcontrol_card.php b/htdocs/compta/cashcontrol/cashcontrol_card.php index 70a26d231e1..b14b77d5264 100644 --- a/htdocs/compta/cashcontrol/cashcontrol_card.php +++ b/htdocs/compta/cashcontrol/cashcontrol_card.php @@ -107,8 +107,7 @@ if (GETPOST('cancel', 'alpha')) { if ($action == 'valid') { $action = 'view'; - } - else { + } else { $action = 'create'; } } @@ -144,8 +143,7 @@ if ($action == "start") $action = 'create'; $error++; } -} -elseif ($action == "add") +} elseif ($action == "add") { if (GETPOST('opening', 'alpha') == '') { @@ -177,9 +175,7 @@ elseif ($action == "add") { $db->commit(); $action = "view"; - } - else - { + } else { $db->rollback; $action = "view"; } @@ -217,9 +213,7 @@ if ($action == "valid") // validate = close { setEventMessages($object->error, $object->errors, 'errors'); $db->rollback(); - } - else - { + } else { setEventMessages($langs->trans("CashFenceDone"), null); $db->commit(); } @@ -253,9 +247,7 @@ if ($action == 'confirm_delete' && !empty($permissiontodelete)) setEventMessages("RecordDeleted", null, 'mesgs'); header("Location: ".$backurlforlist); exit; - } - else - { + } else { if (!empty($object->errors)) setEventMessages(null, $object->errors, 'errors'); else setEventMessages($object->error, null, 'errors'); } @@ -282,8 +274,7 @@ if ($action == "create" || $action == "start" || $action == 'close') $syear = $object->year_close; $smonth = $object->month_close; $sday = $object->day_close; - } - elseif (GETPOST('posnumber', 'alpha') != '' && GETPOST('posnumber', 'alpha') != '' && GETPOST('posnumber', 'alpha') != '-1') + } elseif (GETPOST('posnumber', 'alpha') != '' && GETPOST('posnumber', 'alpha') != '' && GETPOST('posnumber', 'alpha') != '-1') { $posmodule = GETPOST('posmodule', 'alpha'); $terminalid = GETPOST('posnumber', 'alpha'); @@ -327,11 +318,8 @@ if ($action == "create" || $action == "start" || $action == 'close') { $obj = $db->fetch_object($resql); if ($obj) $initialbalanceforterminal[$terminalid][$key] = $obj->total; - } - else dol_print_error($db); - } - else - { + } else dol_print_error($db); + } else { setEventMessages($langs->trans("SetupOfTerminalNotComplete", $terminaltouse), null, 'errors'); $error++; } @@ -350,8 +338,7 @@ if ($action == "create" || $action == "start" || $action == 'close') if ($key == 'cash') $sql .= " AND cp.code = 'LIQ'"; elseif ($key == 'cheque') $sql .= " AND cp.code = 'CHQ'"; elseif ($key == 'card') $sql .= " AND cp.code = 'CB'"; - else - { + else { dol_print_error('Value for key = '.$key.' not supported'); exit; } @@ -371,8 +358,7 @@ if ($action == "create" || $action == "start" || $action == 'close') $theoricalamountforterminal[$terminalid][$key] = price2num($theoricalamountforterminal[$terminalid][$key] + $obj->total); $theoricalnbofinvoiceforterminal[$terminalid][$key] = $obj->nb; } - } - else dol_print_error($db); + } else dol_print_error($db); } } @@ -388,14 +374,11 @@ if ($action == "create" || $action == "start" || $action == 'close') if ($action == 'start' && GETPOST('posnumber', 'int') != '' && GETPOST('posnumber', 'int') != '' && GETPOST('posnumber', 'int') != '-1') { print ''; - } - elseif ($action == 'close') + } elseif ($action == 'close') { print ''; print ''; - } - else - { + } else { print ''; } @@ -469,9 +452,7 @@ if ($action == "create" || $action == "start" || $action == 'close') if ($action == 'start' && GETPOST('posnumber') != '' && GETPOST('posnumber') != '' && GETPOST('posnumber') != '-1') { print ''; - } - else - { + } else { print ''; } print ''; @@ -569,8 +550,7 @@ if ($action == "create" || $action == "start" || $action == 'close') { $object->fetch($id); print $object->opening; - } - else print (GETPOSTISSET('opening') ?price2num(GETPOST('opening', 'alpha')) : price($initialbalanceforterminal[$terminalid]['cash'])); + } else print (GETPOSTISSET('opening') ?price2num(GETPOST('opening', 'alpha')) : price($initialbalanceforterminal[$terminalid]['cash'])); print '">'; print ''; // Amount per payment type @@ -608,11 +588,10 @@ if (empty($action) || $action == "view" || $action == "close") if ($result <= 0) { print $langs->trans("ErrorRecordNotFound"); - } - else { + } else { $head = array(); $head[0][0] = DOL_URL_ROOT.'/compta/cashcontrol/cashcontrol_card.php?id='.$object->id; - $head[0][1] = $langs->trans("Card"); + $head[0][1] = $langs->trans("CashControl"); $head[0][2] = 'cashcontrol'; dol_fiche_head($head, 'cashcontrol', $langs->trans("CashControl"), -1, 'account'); @@ -706,14 +685,11 @@ if (empty($action) || $action == "view" || $action == "close") if ($action == 'start' && GETPOST('posnumber', 'int') != '' && GETPOST('posnumber', 'int') != '' && GETPOST('posnumber', 'int') != '-1') { print ''; - } - elseif ($action == 'close') + } elseif ($action == 'close') { print ''; print ''; - } - else - { + } else { print ''; } @@ -860,8 +836,7 @@ if (empty($action) || $action == "view" || $action == "close") { $object->fetch($id); print $object->opening; - } - else print (GETPOSTISSET('opening') ?price2num(GETPOST('opening', 'alpha')) : price($initialbalanceforterminal[$terminalid]['cash'])); + } else print (GETPOSTISSET('opening') ?price2num(GETPOST('opening', 'alpha')) : price($initialbalanceforterminal[$terminalid]['cash'])); print '">'; print ''; // Amount per payment type diff --git a/htdocs/compta/cashcontrol/cashcontrol_list.php b/htdocs/compta/cashcontrol/cashcontrol_list.php index 313627016c8..0279ad5143c 100644 --- a/htdocs/compta/cashcontrol/cashcontrol_list.php +++ b/htdocs/compta/cashcontrol/cashcontrol_list.php @@ -259,9 +259,7 @@ if (empty($conf->global->MAIN_DISABLE_FULL_SCANLIST)) if (is_numeric($nbtotalofrecords) && $limit > $nbtotalofrecords) { $num = $nbtotalofrecords; -} -else -{ +} else { $sql .= $db->plimit($limit + 1, $offset); $resql = $db->query($sql); @@ -495,7 +493,7 @@ while ($i < min($num, $limit)) // 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, 'totalarray'=>&$totalarray); $reshook = $hookmanager->executeHooks('printFieldListValue', $parameters, $object); // Note that $action and $object may have been modified by hook print $hookmanager->resPrint; // Action column diff --git a/htdocs/compta/cashcontrol/class/cashcontrol.class.php b/htdocs/compta/cashcontrol/class/cashcontrol.class.php index 81a19389244..0f60be3c3a8 100644 --- a/htdocs/compta/cashcontrol/class/cashcontrol.class.php +++ b/htdocs/compta/cashcontrol/class/cashcontrol.class.php @@ -404,8 +404,7 @@ class CashControl extends CommonObject $reshook=$hookmanager->executeHooks('getnomurltooltip',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks if ($reshook > 0) $linkclose = $hookmanager->resPrint; */ - } - else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); + } else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); $linkstart = ''; diff --git a/htdocs/compta/cashcontrol/report.php b/htdocs/compta/cashcontrol/report.php index 1ea06eba9e9..f2d8e38fb15 100644 --- a/htdocs/compta/cashcontrol/report.php +++ b/htdocs/compta/cashcontrol/report.php @@ -172,9 +172,7 @@ if ($resql) $bankaccounttmp->fetch($objp->bankid); $cachebankaccount[$objp->bankid] = $bankaccounttmp; $bankaccount = $bankaccounttmp; - } - else - { + } else { $bankaccount = $cachebankaccount[$objp->bankid]; } @@ -208,8 +206,7 @@ if ($resql) print $bankaccount->getNomUrl(1); if ($cashcontrol->posmodule == "takepos") { $var1 = 'CASHDESK_ID_BANKACCOUNT_CASH'.$cashcontrol->posnumber; - } - else { + } else { $var1 = 'CASHDESK_ID_BANKACCOUNT_CASH'; } if ($objp->code == 'CHQ') { @@ -311,9 +308,7 @@ if ($resql) print ''; $db->free($resql); -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/compta/charges/index.php b/htdocs/compta/charges/index.php index e9aa35d80b3..968c93fd25f 100644 --- a/htdocs/compta/charges/index.php +++ b/htdocs/compta/charges/index.php @@ -89,6 +89,8 @@ if ($mode == 'sconly') $param = '&mode=sconly'; if ($sortfield) $param .= '&sortfield='.$sortfield; if ($sortorder) $param .= '&sortorder='.$sortorder; +$totalnboflines = 0; +$num = 0; print '
'; if ($optioncss != '') print ''; @@ -99,14 +101,13 @@ print ''; print ''; print ''; +$nav = ''; if ($mode != 'sconly') { - $center = ($year ? '
'.img_previous($langs->trans("Previous"), 'class="valignbottom"')." ".$langs->trans("Year").' '.$year.' '.img_next($langs->trans("Next"), 'class="valignbottom"')."" : ""); - print_barre_liste($title, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $center, $num, $totalnboflines, 'title_accountancy', 0, '', '', $limit, 1); -} -else -{ - print_barre_liste($title, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $center, $num, $totalnboflines, 'title_accountancy', 0, '', '', $limit); + $nav = ($year ? ''.img_previous($langs->trans("Previous"), 'class="valignbottom"')." ".$langs->trans("Year").' '.$year.' '.img_next($langs->trans("Next"), 'class="valignbottom"')."" : ""); + print_barre_liste($title, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, '', $num, $totalnboflines, 'object_payment', 0, $nav, '', $limit, 1); +} else { + print_barre_liste($title, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, '', $num, $totalnboflines, 'object_payment', 0, $nav, '', $limit, 0); } if ($year) $param .= '&year='.$year; @@ -217,8 +218,7 @@ if (!empty($conf->tax->enabled) && $user->rights->tax->charges->lire) $accountstatic->accountancy_journal = $obj->accountancy_journal; $accountstatic->label = $obj->blabel; print $accountstatic->getNomUrl(1); - } - else print ' '; + } else print ' '; print ''; } // Paid @@ -240,9 +240,7 @@ if (!empty($conf->tax->enabled) && $user->rights->tax->charges->lire) if (!empty($conf->banque->enabled)) print ''; print '"; print ""; - } - else - { + } else { dol_print_error($db); } print '
'.price($totalpaye)."
'; @@ -334,8 +332,7 @@ if (!empty($conf->tax->enabled) && $user->rights->tax->charges->lire) $accountstatic->accountancy_journal = $obj->accountancy_journal; $accountstatic->label = $obj->blabel; print $accountstatic->getNomUrl(1); - } - else print ' '; + } else print ' '; print ''; } @@ -356,9 +353,7 @@ if (!empty($conf->tax->enabled) && $user->rights->tax->charges->lire) print ""; $db->free($result); - } - else - { + } else { dol_print_error($db); } } @@ -369,19 +364,15 @@ if ($mysoc->localtax1_assuj == "1" && $mysoc->localtax2_assuj == "1") { $j = 1; $numlt = 3; -} -elseif ($mysoc->localtax1_assuj == "1") +} elseif ($mysoc->localtax1_assuj == "1") { $j = 1; $numlt = 2; -} -elseif ($mysoc->localtax2_assuj == "1") +} elseif ($mysoc->localtax2_assuj == "1") { $j = 2; $numlt = 3; -} -else -{ +} else { $j = 0; $numlt = 0; } @@ -451,9 +442,7 @@ while ($j < $numlt) print ""; $db->free($result); - } - else - { + } else { dol_print_error($db); } } @@ -546,8 +535,7 @@ if (!empty($conf->salaries->enabled) && !empty($user->rights->salaries->read)) $accountstatic->accountancy_journal = $obj->accountancy_journal; $accountstatic->label = $obj->blabel; print $accountstatic->getNomUrl(1); - } - else print ' '; + } else print ' '; print ''; } @@ -565,9 +553,7 @@ if (!empty($conf->salaries->enabled) && !empty($user->rights->salaries->read)) $db->free($result); print "
"; - } - else - { + } else { dol_print_error($db); } } diff --git a/htdocs/compta/clients.php b/htdocs/compta/clients.php index 1dc13c0580f..5632e8ebc1a 100644 --- a/htdocs/compta/clients.php +++ b/htdocs/compta/clients.php @@ -44,11 +44,12 @@ $langs->load("companies"); $mode = GETPOST("mode"); +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; if (!$sortorder) $sortorder = "ASC"; @@ -195,9 +196,7 @@ if ($resql) print ''; $db->free($resql); -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/compta/deplacement/card.php b/htdocs/compta/deplacement/card.php index 463d9ea699f..4d3ec6b1ee6 100644 --- a/htdocs/compta/deplacement/card.php +++ b/htdocs/compta/deplacement/card.php @@ -70,15 +70,11 @@ if ($action == 'validate' && $user->rights->deplacement->creer) { header("Location: ".$_SERVER["PHP_SELF"]."?id=".$id); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } -} - -elseif ($action == 'classifyrefunded' && $user->rights->deplacement->creer) +} elseif ($action == 'classifyrefunded' && $user->rights->deplacement->creer) { $object->fetch($id); if ($object->statut == Deplacement::STATUS_VALIDATED) @@ -88,29 +84,21 @@ elseif ($action == 'classifyrefunded' && $user->rights->deplacement->creer) { header("Location: ".$_SERVER["PHP_SELF"]."?id=".$id); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } -} - -elseif ($action == 'confirm_delete' && $confirm == "yes" && $user->rights->deplacement->supprimer) +} elseif ($action == 'confirm_delete' && $confirm == "yes" && $user->rights->deplacement->supprimer) { $result = $object->delete($id); if ($result >= 0) { header("Location: index.php"); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } -} - -elseif ($action == 'add' && $user->rights->deplacement->creer) +} elseif ($action == 'add' && $user->rights->deplacement->creer) { if (!GETPOST('cancel', 'alpha')) { @@ -149,26 +137,18 @@ elseif ($action == 'add' && $user->rights->deplacement->creer) { header("Location: ".$_SERVER["PHP_SELF"]."?id=".$id); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); $action = 'create'; } - } - else - { + } else { $action = 'create'; } - } - else - { + } else { header("Location: index.php"); exit; } -} - -// Update record +} // Update record elseif ($action == 'update' && $user->rights->deplacement->creer) { if (!GETPOST('cancel', 'alpha')) @@ -189,36 +169,27 @@ elseif ($action == 'update' && $user->rights->deplacement->creer) { header("Location: ".$_SERVER["PHP_SELF"]."?id=".$id); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } - } - else - { + } else { header("Location: ".$_SERVER["PHP_SELF"]."?id=".$id); exit; } -} - -// Set into a project +} // Set into a project elseif ($action == 'classin' && $user->rights->deplacement->creer) { $object->fetch($id); $result = $object->setProject(GETPOST('projectid', 'int')); if ($result < 0) dol_print_error($db, $object->error); -} - -// Set fields +} // Set fields elseif ($action == 'setdated' && $user->rights->deplacement->creer) { $dated = dol_mktime(GETPOST('datedhour', 'int'), GETPOST('datedmin', 'int'), GETPOST('datedsec', 'int'), GETPOST('datedmonth', 'int'), GETPOST('datedday', 'int'), GETPOST('datedyear', 'int')); $object->fetch($id); $result = $object->setValueFrom('dated', $dated, '', '', 'date', '', $user, 'DEPLACEMENT_MODIFY'); if ($result < 0) dol_print_error($db, $object->error); -} -elseif ($action == 'setkm' && $user->rights->deplacement->creer) +} elseif ($action == 'setkm' && $user->rights->deplacement->creer) { $object->fetch($id); $result = $object->setValueFrom('km', GETPOST('km', 'int'), '', null, 'text', '', $user, 'DEPLACEMENT_MODIFY'); @@ -313,8 +284,7 @@ if ($action == 'create') print '
'; print ''; -} -elseif ($id) +} elseif ($id) { $result = $object->fetch($id); if ($result > 0) @@ -412,9 +382,7 @@ elseif ($id) print ''; print ''; - } - else - { + } else { /* * Confirm delete trip */ @@ -492,9 +460,7 @@ elseif ($id) if ($action == 'classify') { $form->form_project($_SERVER['PHP_SELF'].'?id='.$object->id, $object->socid, $object->fk_project, 'projectid', 0, 0, 1); - } - else - { + } else { $form->form_project($_SERVER['PHP_SELF'].'?id='.$object->id, $object->socid, $object->fk_project, 'none', 0, 0); } print ''; @@ -528,9 +494,7 @@ elseif ($id) if ($user->rights->deplacement->creer) { print ''.$langs->trans('Modify').''; - } - else - { + } else { print ''.$langs->trans('Modify').''; } } @@ -540,9 +504,7 @@ elseif ($id) if ($user->rights->deplacement->creer) { print ''.$langs->trans('Validate').''; - } - else - { + } else { print ''.$langs->trans('Validate').''; } } @@ -552,9 +514,7 @@ elseif ($id) if ($user->rights->deplacement->creer) { print ''.$langs->trans('ClassifyRefunded').''; - } - else - { + } else { print ''.$langs->trans('ClassifyRefunded').''; } } @@ -562,17 +522,13 @@ elseif ($id) if ($user->rights->deplacement->supprimer) { print ''.$langs->trans('Delete').''; - } - else - { + } else { print ''.$langs->trans('Delete').''; } print ''; } - } - else - { + } else { dol_print_error($db); } } diff --git a/htdocs/compta/deplacement/class/deplacement.class.php b/htdocs/compta/deplacement/class/deplacement.class.php index ec4610179e2..69baf710b95 100644 --- a/htdocs/compta/deplacement/class/deplacement.class.php +++ b/htdocs/compta/deplacement/class/deplacement.class.php @@ -199,16 +199,12 @@ class Deplacement extends CommonObject { $this->db->commit(); return $this->id; - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return $result; } - } - else - { + } else { $this->error = $this->db->error()." sql=".$sql; $this->db->rollback(); return -1; @@ -267,9 +263,7 @@ class Deplacement extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -1; @@ -312,9 +306,7 @@ class Deplacement extends CommonObject $this->extraparams = (array) json_decode($obj->extraparams, true); return 1; - } - else - { + } else { $this->error = $this->db->error(); return -1; } @@ -338,9 +330,7 @@ class Deplacement extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -1; @@ -375,30 +365,25 @@ class Deplacement extends CommonObject if ($mode == 0) { return $langs->trans($this->statuts[$status]); - } - elseif ($mode == 1) + } elseif ($mode == 1) { return $langs->trans($this->statuts_short[$status]); - } - elseif ($mode == 2) + } elseif ($mode == 2) { if ($status == 0) return img_picto($langs->trans($this->statuts_short[$status]), 'statut0').' '.$langs->trans($this->statuts_short[$status]); elseif ($status == 1) return img_picto($langs->trans($this->statuts_short[$status]), 'statut4').' '.$langs->trans($this->statuts_short[$status]); elseif ($status == 2) return img_picto($langs->trans($this->statuts_short[$status]), 'statut6').' '.$langs->trans($this->statuts_short[$status]); - } - elseif ($mode == 3) + } elseif ($mode == 3) { if ($status == 0 && !empty($this->statuts_short[$status])) return img_picto($langs->trans($this->statuts_short[$status]), 'statut0'); elseif ($status == 1 && !empty($this->statuts_short[$status])) return img_picto($langs->trans($this->statuts_short[$status]), 'statut4'); elseif ($status == 2 && !empty($this->statuts_short[$status])) return img_picto($langs->trans($this->statuts_short[$status]), 'statut6'); - } - elseif ($mode == 4) + } elseif ($mode == 4) { if ($status == 0 && !empty($this->statuts_short[$status])) return img_picto($langs->trans($this->statuts_short[$status]), 'statut0').' '.$langs->trans($this->statuts[$status]); elseif ($status == 1 && !empty($this->statuts_short[$status])) return img_picto($langs->trans($this->statuts_short[$status]), 'statut4').' '.$langs->trans($this->statuts[$status]); elseif ($status == 2 && !empty($this->statuts_short[$status])) return img_picto($langs->trans($this->statuts_short[$status]), 'statut6').' '.$langs->trans($this->statuts[$status]); - } - elseif ($mode == 5) + } elseif ($mode == 5) { if ($status == 0 && !empty($this->statuts_short[$status])) return $langs->trans($this->statuts_short[$status]).' '.img_picto($langs->trans($this->statuts_short[$status]), 'statut0'); elseif ($status == 1 && !empty($this->statuts_short[$status])) return $langs->trans($this->statuts_short[$status]).' '.img_picto($langs->trans($this->statuts_short[$status]), 'statut4'); @@ -460,9 +445,7 @@ class Deplacement extends CommonObject $ret[$obj->code] = (($langs->trans($obj->code) != $obj->code) ? $langs->trans($obj->code) : $obj->label); $i++; } - } - else - { + } else { dol_print_error($this->db); } @@ -507,9 +490,7 @@ class Deplacement extends CommonObject $this->date_modification = $this->db->jdate($obj->tms); } $this->db->free($result); - } - else - { + } else { dol_print_error($this->db); } } diff --git a/htdocs/compta/deplacement/document.php b/htdocs/compta/deplacement/document.php index 4f42ae2292b..889eb390ca2 100644 --- a/htdocs/compta/deplacement/document.php +++ b/htdocs/compta/deplacement/document.php @@ -48,11 +48,12 @@ $result = restrictedArea($user, 'deplacement', $id, ''); // Get parameters +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST('sortfield', 'alpha'); $sortorder = GETPOST('sortorder', 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; if (!$sortorder) $sortorder = "ASC"; @@ -122,9 +123,7 @@ if ($object->id) $permission = $user->rights->deplacement->creer; $param = '&id='.$object->id; include_once DOL_DOCUMENT_ROOT.'/core/tpl/document_actions_post_headers.tpl.php'; -} -else -{ +} else { print $langs->trans("ErrorUnknown"); } diff --git a/htdocs/compta/deplacement/index.php b/htdocs/compta/deplacement/index.php index e95d7f95732..0cea847f9ce 100644 --- a/htdocs/compta/deplacement/index.php +++ b/htdocs/compta/deplacement/index.php @@ -35,11 +35,12 @@ $socid = GETPOST('socid', 'int'); if ($user->socid) $socid = $user->socid; $result = restrictedArea($user, 'deplacement', '', ''); +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; if (!$sortorder) $sortorder = "DESC"; @@ -191,14 +192,11 @@ if ($result) $i++; } - } - else - { + } else { print ''.$langs->trans("None").''; } print '
'; -} -else dol_print_error($db); +} else dol_print_error($db); print ''; diff --git a/htdocs/compta/deplacement/list.php b/htdocs/compta/deplacement/list.php index a4cc8f24019..78c1f32556d 100644 --- a/htdocs/compta/deplacement/list.php +++ b/htdocs/compta/deplacement/list.php @@ -196,9 +196,7 @@ if ($resql) print ""; print "\n"; $db->free($resql); -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/compta/deplacement/stats/index.php b/htdocs/compta/deplacement/stats/index.php index cf745b784fc..7707cb40786 100644 --- a/htdocs/compta/deplacement/stats/index.php +++ b/htdocs/compta/deplacement/stats/index.php @@ -167,9 +167,7 @@ if (!$user->rights->societe->client->voir || $user->socid) $filename_avg = $dir.'/ordersaverage-'.$user->id.'-'.$year.'.png'; if ($mode == 'customer') $fileurl_avg = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstats&file=ordersaverage-'.$user->id.'-'.$year.'.png'; if ($mode == 'supplier') $fileurl_avg = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstatssupplier&file=ordersaverage-'.$user->id.'-'.$year.'.png'; -} -else -{ +} else { $filename_avg = $dir.'/ordersaverage-'.$year.'.png'; if ($mode == 'customer') $fileurl_avg = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstats&file=ordersaverage-'.$year.'.png'; if ($mode == 'supplier') $fileurl_avg = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstatssupplier&file=ordersaverage-'.$year.'.png'; @@ -294,8 +292,7 @@ print '
'; // Show graphs print '"; - } - else - { + } else { print ''; } @@ -1198,14 +1148,10 @@ if ($action == 'create') print ''; print ''; print "\n"; - } - else - { + } else { dol_print_error('', "Error, no invoice ".$object->id); } -} -else -{ +} else { /* * View mode */ @@ -1328,9 +1274,7 @@ else if ($action == 'editconditions') { $form->form_conditions_reglement($_SERVER['PHP_SELF'].'?facid='.$object->id, $object->cond_reglement_id, 'cond_reglement_id'); - } - else - { + } else { $form->form_conditions_reglement($_SERVER['PHP_SELF'].'?facid='.$object->id, $object->cond_reglement_id, 'none'); } } else { @@ -1350,9 +1294,7 @@ else if ($action == 'editmode') { $form->form_modes_reglement($_SERVER['PHP_SELF'].'?facid='.$object->id, $object->mode_reglement_id, 'mode_reglement_id', 'CRDT', 1, 1); - } - else - { + } else { $form->form_modes_reglement($_SERVER['PHP_SELF'].'?facid='.$object->id, $object->mode_reglement_id, 'none'); } print ''; @@ -1459,9 +1401,7 @@ else if ($action == 'editbankaccount') { $form->formSelectAccount($_SERVER['PHP_SELF'].'?id='.$object->id, $object->fk_account, 'fk_account', 1); - } - else - { + } else { $form->formSelectAccount($_SERVER['PHP_SELF'].'?id='.$object->id, $object->fk_account, 'none'); } print ""; @@ -1486,9 +1426,7 @@ else } $select = 'select;'.implode(',', $list); print $form->editfieldval($langs->trans("Model"), 'modelpdf', $object->modelpdf, $object, $user->rights->facture->creer, $select); - } - else - { + } else { print $object->modelpdf; } print ""; @@ -1536,15 +1474,11 @@ else print ''; print ''; print '
'; -if ($mesg) { print $mesg; } -else { +if ($mesg) { print $mesg; } else { print $px1->show(); print "
\n"; print $px2->show(); diff --git a/htdocs/compta/facture/card-rec.php b/htdocs/compta/facture/card-rec.php index 26eee81375f..cc3a0769e70 100644 --- a/htdocs/compta/facture/card-rec.php +++ b/htdocs/compta/facture/card-rec.php @@ -238,9 +238,7 @@ if (empty($reshook)) setEventMessages($oldinvoice->error, $oldinvoice->errors, 'errors'); $action = "create"; } - } - else - { + } else { $error++; setEventMessages($object->error, $object->errors, 'errors'); $action = "create"; @@ -252,9 +250,7 @@ if (empty($reshook)) header("Location: ".$_SERVER['PHP_SELF'].'?facid='.$object->id); exit; - } - else - { + } else { $db->rollback(); $error++; @@ -279,18 +275,15 @@ if (empty($reshook)) if ($action == 'setconditions' && $user->rights->facture->creer) { $result = $object->setPaymentTerms(GETPOST('cond_reglement_id', 'int')); - } - // Set mode + } // Set mode elseif ($action == 'setmode' && $user->rights->facture->creer) { $result = $object->setPaymentMethods(GETPOST('mode_reglement_id', 'int')); - } - // Set project + } // Set project elseif ($action == 'classin' && $user->rights->facture->creer) { $object->setProject(GETPOST('projectid', 'int')); - } - // Set bank account + } // Set bank account elseif ($action == 'setref' && $user->rights->facture->creer) { //var_dump(GETPOST('ref', 'alpha'));exit; @@ -300,47 +293,37 @@ if (empty($reshook)) $object->titre = GETPOST('ref', 'alpha'); // deprecated $object->title = GETPOST('ref', 'alpha'); $object->ref = $object->title; - } - else dol_print_error($db, $object->error, $object->errors); - } - // Set bank account + } else dol_print_error($db, $object->error, $object->errors); + } // Set bank account elseif ($action == 'setbankaccount' && $user->rights->facture->creer) { $result = $object->setBankAccount(GETPOST('fk_account', 'int')); - } - // Set frequency and unit frequency + } // Set frequency and unit frequency elseif ($action == 'setfrequency' && $user->rights->facture->creer) { $object->setFrequencyAndUnit(GETPOST('frequency', 'int'), GETPOST('unit_frequency', 'alpha')); - } - // Set next date of execution + } // Set next date of execution elseif ($action == 'setdate_when' && $user->rights->facture->creer) { $date = dol_mktime(GETPOST('date_whenhour'), GETPOST('date_whenmin'), 0, GETPOST('date_whenmonth'), GETPOST('date_whenday'), GETPOST('date_whenyear')); if (!empty($date)) $object->setNextDate($date); - } - // Set max period + } // Set max period elseif ($action == 'setnb_gen_max' && $user->rights->facture->creer) { $object->setMaxPeriod(GETPOST('nb_gen_max', 'int')); - } - // Set auto validate + } // Set auto validate elseif ($action == 'setauto_validate' && $user->rights->facture->creer) { $object->setAutoValidate(GETPOST('auto_validate', 'int')); - } - // Set generate pdf + } // Set generate pdf elseif ($action == 'setgenerate_pdf' && $user->rights->facture->creer) { $object->setGeneratepdf(GETPOST('generate_pdf', 'int')); - } - // Set model pdf + } // Set model pdf elseif ($action == 'setmodelpdf' && $user->rights->facture->creer) { $object->setModelpdf(GETPOST('modelpdf', 'alpha')); - } - - // Set status disabled + } // Set status disabled elseif ($action == 'disable' && $user->rights->facture->creer) { $db->begin(); @@ -356,15 +339,11 @@ if (empty($reshook)) if (!$error) { $db->commit(); - } - else - { + } else { $db->rollback(); setEventMessages($object->error, $object->errors, 'errors'); } - } - - // Set status enabled + } // Set status enabled elseif ($action == 'enable' && $user->rights->facture->creer) { $db->begin(); @@ -380,19 +359,14 @@ if (empty($reshook)) if (!$error) { $db->commit(); - } - else - { + } else { $db->rollback(); setEventMessages($object->error, $object->errors, 'errors'); } - } - // Multicurrency Code + } // Multicurrency Code elseif ($action == 'setmulticurrencycode' && $usercancreate) { $result = $object->setMulticurrencyCode(GETPOST('multicurrency_code', 'alpha')); - } - - // Multicurrency rate + } // Multicurrency rate elseif ($action == 'setmulticurrencyrate' && $usercancreate) { $result = $object->setMulticurrencyRate(price2num(GETPOST('multicurrency_tx')), GETPOST('calculation_mode', 'int')); } @@ -418,20 +392,15 @@ if (empty($reshook)) { $db->commit(); $object->fetch($object->id); // Reload lines - } - else - { + } else { $db->rollback(); setEventMessages($db->lasterror(), null, 'errors'); } - } - else - { + } else { $db->rollback(); setEventMessages($line->error, $line->errors, 'errors'); } - } - elseif ($action == 'update_extras') + } elseif ($action == 'update_extras') { $object->oldcopy = dol_clone($object); @@ -466,9 +435,7 @@ if (empty($reshook)) { $idprod = 0; $tva_tx = (GETPOST('tva_tx', 'alpha') ? GETPOST('tva_tx', 'alpha') : 0); - } - else - { + } else { $idprod = GETPOST('idprod', 'int'); $tva_tx = ''; } @@ -570,17 +537,14 @@ if (empty($reshook)) { $pu_ht = price2num($price_ht, 'MU'); $pu_ttc = price2num($pu_ht * (1 + ($tmpvat / 100)), 'MU'); - } - // On reevalue prix selon taux tva car taux tva transaction peut etre different + } // On reevalue prix selon taux tva car taux tva transaction peut etre different // de ceux du produit par defaut (par exemple si pays different entre vendeur et acheteur). elseif ($tmpvat != $tmpprodvat) { if ($price_base_type != 'HT') { $pu_ht = price2num($pu_ttc / (1 + ($tmpvat / 100)), 'MU'); - } - else - { + } else { $pu_ttc = price2num($pu_ht * (1 + ($tmpvat / 100)), 'MU'); } } @@ -603,9 +567,7 @@ if (empty($reshook)) } $desc = (!empty($prod->multilangs [$outputlangs->defaultlang] ["description"])) ? $prod->multilangs [$outputlangs->defaultlang] ["description"] : $prod->description; - } - else - { + } else { $desc = $prod->description; } @@ -640,9 +602,7 @@ if (empty($reshook)) $type = $prod->type; $fk_unit = $prod->fk_unit; - } - else - { + } else { $pu_ht = price2num($price_ht, 'MU'); $pu_ttc = price2num(GETPOST('price_ttc'), 'MU'); $tva_npr = (preg_match('/\*/', $tva_tx) ? 1 : 0); @@ -672,9 +632,7 @@ if (empty($reshook)) if ($usercanproductignorepricemin && (!empty($price_min) && (price2num($pu_ht) * (1 - price2num($remise_percent) / 100) < price2num($price_min)))) { $mesg = $langs->trans("CantBeLessThanMinPrice", price(price2num($price_min, 'MU'), 0, $langs, 0, 0, - 1, $conf->currency)); setEventMessages($mesg, null, 'errors'); - } - else - { + } else { // Insert line $result = $object->addline($desc, $pu_ht, $qty, $tva_tx, $localtax1_tx, $localtax2_tx, $idprod, $remise_percent, $price_base_type, $info_bits, '', $pu_ttc, $type, - 1, $special_code, $label, $fk_unit, 0, $date_start_fill, $date_end_fill, $fournprice, $buyingprice); @@ -738,18 +696,14 @@ if (empty($reshook)) unset($_POST['situations']); unset($_POST['progress']); - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } $action = ''; } } - } - - elseif ($action == 'updateline' && $usercancreate && !GETPOST('cancel', 'alpha')) + } elseif ($action == 'updateline' && $usercancreate && !GETPOST('cancel', 'alpha')) { if (!$object->fetch($id) > 0) dol_print_error($db); $object->fetch_thirdparty(); @@ -947,9 +901,7 @@ if (empty($reshook)) unset($_POST['situations']); unset($_POST['progress']); - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -979,7 +931,7 @@ $today = dol_mktime(23, 59, 59, $tmparray['mon'], $tmparray['mday'], $tmparray[' */ if ($action == 'create') { - print load_fiche_titre($langs->trans("CreateRepeatableInvoice"), '', 'invoicing'); + print load_fiche_titre($langs->trans("CreateRepeatableInvoice"), '', 'bill'); $object = new Facture($db); // Source invoice $product_static = new Product($db); @@ -1144,9 +1096,7 @@ if ($action == 'create') $select = array('0'=>$langs->trans('DoNotGenerateDoc'), '1'=>$langs->trans('AutoGenerateDoc')); print $form->selectarray('generate_pdf', $select, GETPOST('generate_pdf')); print "
'; - } - else - { + } else { if ($object->frequency > 0) { print $langs->trans('FrequencyPer_'.$object->unit_frequency, $object->frequency); - } - else - { + } else { print $langs->trans("NotARecurringInvoiceTemplate"); } } @@ -1555,9 +1489,7 @@ else if ($action == 'date_when' || $object->frequency > 0) { print $form->editfieldkey($langs->trans("NextDateToExecution"), 'date_when', $object->date_when, $object, $user->rights->facture->creer, 'day'); - } - else - { + } else { print $langs->trans("NextDateToExecution"); } print ''; @@ -1569,9 +1501,7 @@ else if (!$object->isMaxNbGenReached()) { if (!$object->suspended && $action != 'editdate_when' && $object->frequency > 0 && $object->date_when && $object->date_when < $now) print img_warning($langs->trans("Late")); - } - else - { + } else { print img_info($langs->trans("MaxNumberOfGenerationReached")); } print ''; @@ -1582,18 +1512,14 @@ else if ($action == 'nb_gen_max' || $object->frequency > 0) { print $form->editfieldkey($langs->trans("MaxPeriodNumber"), 'nb_gen_max', $object->nb_gen_max, $object, $user->rights->facture->creer); - } - else - { + } else { print $langs->trans("MaxPeriodNumber"); } print ''; if ($action == 'nb_gen_max' || $object->frequency > 0) { print $form->editfieldval($langs->trans("MaxPeriodNumber"), 'nb_gen_max', $object->nb_gen_max ? $object->nb_gen_max : '', $object, $user->rights->facture->creer); - } - else - { + } else { print ''; } print ''; @@ -1603,8 +1529,7 @@ else print ''; if ($action == 'auto_validate' || $object->frequency > 0) print $form->editfieldkey($langs->trans("StatusOfGeneratedInvoices"), 'auto_validate', $object->auto_validate, $object, $user->rights->facture->creer); - else - print $langs->trans("StatusOfGeneratedInvoices"); + else print $langs->trans("StatusOfGeneratedInvoices"); print ''; $select = 'select;0:'.$langs->trans('BillStatusDraft').',1:'.$langs->trans('BillStatusValidated'); if ($action == 'auto_validate' || $object->frequency > 0) @@ -1619,8 +1544,7 @@ else print ''; if ($action == 'generate_pdf' || $object->frequency > 0) print $form->editfieldkey($langs->trans("StatusOfGeneratedDocuments"), 'generate_pdf', $object->generate_pdf, $object, $user->rights->facture->creer); - else - print $langs->trans("StatusOfGeneratedDocuments"); + else print $langs->trans("StatusOfGeneratedDocuments"); print ''; print ''; $select = 'select;0:'.$langs->trans('DoNotGenerateDoc').',1:'.$langs->trans('AutogenerateDoc'); @@ -1630,9 +1554,7 @@ else } print ''; print ''; - } - else - { + } else { print ''; } @@ -1733,21 +1655,15 @@ else if (!empty($object->frequency) && $object->nb_gen_max > 0 && ($object->nb_gen_done >= $object->nb_gen_max)) { print ''; - } - else - { + } else { if (empty($object->frequency) || $object->date_when <= $today) { print ''; - } - else - { + } else { print ''; } } - } - else - { + } else { print ''; } } @@ -1757,9 +1673,7 @@ else if (empty($object->suspended)) { print ''; - } - else - { + } else { print ''; } } diff --git a/htdocs/compta/facture/card.php b/htdocs/compta/facture/card.php index 5e280535c27..2f4faf93c13 100644 --- a/htdocs/compta/facture/card.php +++ b/htdocs/compta/facture/card.php @@ -140,8 +140,8 @@ $isdraft = (($object->statut == Facture::STATUS_DRAFT) ? 1 : 0); $result = restrictedArea($user, 'facture', $id, '', '', 'fk_soc', $fieldid, $isdraft); // retained warranty invoice available type -$retainedWarrantyInvoiceAvailableType=array(); -if(!empty($conf->global->INVOICE_USE_RETAINED_WARRANTY)) { +$retainedWarrantyInvoiceAvailableType = array(); +if (!empty($conf->global->INVOICE_USE_RETAINED_WARRANTY)) { $retainedWarrantyInvoiceAvailableType = explode('+', $conf->global->INVOICE_USE_RETAINED_WARRANTY); } @@ -188,9 +188,7 @@ if (empty($reshook)) setEventMessages($object->error, $object->errors, 'errors'); $action = ''; } - } - - // Change status of invoice + } // Change status of invoice elseif ($action == 'reopen' && $usercancreate) { $result = $object->fetch($id); @@ -203,9 +201,7 @@ if (empty($reshook)) setEventMessages($object->error, $object->errors, 'errors'); } } - } - - // Delete invoice + } // Delete invoice elseif ($action == 'confirm_delete' && $confirm == 'yes') { $result = $object->fetch($id); $object->fetch_thirdparty(); @@ -233,9 +229,7 @@ if (empty($reshook)) $action = ''; } } - } - - // Delete line + } // Delete line elseif ($action == 'confirm_deleteline' && $confirm == 'yes' && $usercancreate) { $object->fetch($id); @@ -267,17 +261,13 @@ if (empty($reshook)) setEventMessages($object->error, $object->errors, 'errors'); $action = ''; } - } - - // Delete link of credit note to invoice + } // Delete link of credit note to invoice elseif ($action == 'unlinkdiscount' && $usercancreate) { $discount = new DiscountAbsolute($db); $result = $discount->fetch(GETPOST("discountid")); $discount->unlink_invoice(); - } - - // Validation + } // Validation elseif ($action == 'valid' && $usercancreate) { $object->fetch($id); @@ -335,32 +325,24 @@ if (empty($reshook)) } } } - } - - elseif ($action == 'set_thirdparty' && $usercancreate) + } elseif ($action == 'set_thirdparty' && $usercancreate) { $object->fetch($id); $object->setValueFrom('fk_soc', $socid, '', null, 'int', '', $user, 'BILL_MODIFY'); header('Location: '.$_SERVER["PHP_SELF"].'?facid='.$id); exit(); - } - - elseif ($action == 'classin' && $usercancreate) + } elseif ($action == 'classin' && $usercancreate) { $object->fetch($id); $object->setProject($_POST['projectid']); - } - - elseif ($action == 'setmode' && $usercancreate) + } elseif ($action == 'setmode' && $usercancreate) { $object->fetch($id); $result = $object->setPaymentMethods(GETPOST('mode_reglement_id', 'int')); if ($result < 0) dol_print_error($db, $object->error); - } - - elseif ($action == 'setretainedwarrantyconditions' && $user->rights->facture->creer) + } elseif ($action == 'setretainedwarrantyconditions' && $user->rights->facture->creer) { $object->fetch($id); $object->retained_warranty_fk_cond_reglement = 0; // To clean property @@ -373,36 +355,25 @@ if (empty($reshook)) if ($object->retained_warranty_date_limit < $object->date) $object->retained_warranty_date_limit = $object->date; $result = $object->update($user); if ($result < 0) dol_print_error($db, $object->error); - } - - elseif ($action == 'setretainedwarranty' && $user->rights->facture->creer) + } elseif ($action == 'setretainedwarranty' && $user->rights->facture->creer) { $object->fetch($id); $result = $object->setRetainedWarranty(GETPOST('retained_warranty', 'float')); if ($result < 0) dol_print_error($db, $object->error); - } - - elseif ($action == 'setretainedwarrantydatelimit' && $user->rights->facture->creer) + } elseif ($action == 'setretainedwarrantydatelimit' && $user->rights->facture->creer) { $object->fetch($id); $result = $object->setRetainedWarrantyDateLimit(GETPOST('retained_warranty_date_limit', 'float')); if ($result < 0) dol_print_error($db, $object->error); - } - - - // Multicurrency Code + } // Multicurrency Code elseif ($action == 'setmulticurrencycode' && $usercancreate) { $result = $object->setMulticurrencyCode(GETPOST('multicurrency_code', 'alpha')); - } - - // Multicurrency rate + } // Multicurrency rate elseif ($action == 'setmulticurrencyrate' && $usercancreate) { $result = $object->setMulticurrencyRate(price2num(GETPOST('multicurrency_tx')), GETPOST('calculation_mode', 'int')); - } - - elseif ($action == 'setinvoicedate' && $usercancreate) + } elseif ($action == 'setinvoicedate' && $usercancreate) { $object->fetch($id); $old_date_lim_reglement = $object->date_lim_reglement; @@ -421,9 +392,7 @@ if (empty($reshook)) if ($result < 0) { dol_print_error($db, $object->error); } - } - - elseif ($action == 'setdate_pointoftax' && $usercancreate) + } elseif ($action == 'setdate_pointoftax' && $usercancreate) { $object->fetch($id); $date_pointoftax = dol_mktime(12, 0, 0, $_POST['date_pointoftaxmonth'], $_POST['date_pointoftaxday'], $_POST['date_pointoftaxyear']); @@ -432,9 +401,7 @@ if (empty($reshook)) if ($result < 0) { dol_print_error($db, $object->error); } - } - - elseif ($action == 'setconditions' && $usercancreate) + } elseif ($action == 'setconditions' && $usercancreate) { $object->fetch($id); $object->cond_reglement_code = 0; // To clean property @@ -450,9 +417,7 @@ if (empty($reshook)) if ($result < 0) { dol_print_error($db, $object->error); } - } - - elseif ($action == 'setpaymentterm' && $usercancreate) + } elseif ($action == 'setpaymentterm' && $usercancreate) { $object->fetch($id); $object->date_lim_reglement = dol_mktime(12, 0, 0, $_POST['paymenttermmonth'], $_POST['paymenttermday'], $_POST['paymenttermyear']); @@ -464,9 +429,7 @@ if (empty($reshook)) if ($result < 0) { dol_print_error($db, $object->error); } - } - - elseif ($action == 'setrevenuestamp' && $usercancreate) + } elseif ($action == 'setrevenuestamp' && $usercancreate) { $object->fetch($id); $object->revenuestamp = GETPOST('revenuestamp'); @@ -494,27 +457,19 @@ if (empty($reshook)) if ($result < 0) setEventMessages($object->error, $object->errors, 'errors'); } } - } - - // Set incoterm + } // Set incoterm elseif ($action == 'set_incoterms' && !empty($conf->incoterm->enabled)) { $result = $object->setIncoterms(GETPOST('incoterm_id', 'int'), GETPOST('location_incoterms', 'alpha')); - } - - // bank account + } // bank account elseif ($action == 'setbankaccount' && $usercancreate) { $result = $object->setBankAccount(GETPOST('fk_account', 'int')); - } - - elseif ($action == 'setremisepercent' && $usercancreate) + } elseif ($action == 'setremisepercent' && $usercancreate) { $object->fetch($id); $result = $object->set_remise($user, $_POST['remise_percent']); - } - - elseif ($action == "setabsolutediscount" && $usercancreate) + } elseif ($action == "setabsolutediscount" && $usercancreate) { // POST[remise_id] or POST[remise_id_for_payment] @@ -570,21 +525,15 @@ if (empty($reshook)) $result = $object->generateDocument($object->modelpdf, $outputlangs, $hidedetails, $hidedesc, $hideref); if ($result < 0) setEventMessages($object->error, $object->errors, 'errors'); } - } - - elseif ($action == 'setref' && $usercancreate) + } elseif ($action == 'setref' && $usercancreate) { $object->fetch($id); $object->setValueFrom('ref', GETPOST('ref'), '', null, '', '', $user, 'BILL_MODIFY'); - } - - elseif ($action == 'setref_client' && $usercancreate) + } elseif ($action == 'setref_client' && $usercancreate) { $object->fetch($id); $object->set_ref_client(GETPOST('ref_client')); - } - - // Classify to validated + } // Classify to validated elseif ($action == 'confirm_valid' && $confirm == 'yes' && $usercanvalidate) { $idwarehouse = GETPOST('idwarehouse', 'int'); @@ -618,9 +567,7 @@ if (empty($reshook)) } } } - } - else - { + } else { //var_dump($conf->global->SOCIETE_EMAIL_MANDATORY); if ($key == 'EMAIL') { @@ -695,16 +642,12 @@ if (empty($reshook)) $result = $object->generateDocument($model, $outputlangs, $hidedetails, $hidedesc, $hideref); if ($result < 0) setEventMessages($object->error, $object->errors, 'errors'); } - } - else - { + } else { if (count($object->errors)) setEventMessages(null, $object->errors, 'errors'); else setEventMessages($object->error, $object->errors, 'errors'); } } - } - - // Go back to draft status (unvalidate) + } // Go back to draft status (unvalidate) elseif ($action == 'confirm_modif' && $usercanunvalidate) { $idwarehouse = GETPOST('idwarehouse', 'int'); @@ -785,9 +728,7 @@ if (empty($reshook)) } } } - } - - // Classify "paid" + } // Classify "paid" elseif ($action == 'confirm_paid' && $confirm == 'yes' && $usercanissuepayment) { $object->fetch($id); @@ -816,9 +757,7 @@ if (empty($reshook)) } else { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("Reason")), null, 'errors'); } - } - - // Convertir en reduc + } // Convertir en reduc elseif ($action == 'confirm_converttoreduc' && $confirm == 'yes' && $usercancreate) { $object->fetch($id); @@ -952,7 +891,7 @@ if (empty($reshook)) } $discount->tva_tx = abs($tva_tx); - $discount->vat_src_code =$vat_src_code; + $discount->vat_src_code = $vat_src_code; $result = $discount->create($user); if ($result < 0) @@ -971,25 +910,19 @@ if (empty($reshook)) if ($result >= 0) { $db->commit(); - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); $db->rollback(); } } else { $db->commit(); } - } - else - { + } else { setEventMessages($discount->error, $discount->errors, 'errors'); $db->rollback(); } } - } - - // Delete payment + } // Delete payment elseif ($action == 'confirm_delete_paiement' && $confirm == 'yes' && $usercancreate) { $object->fetch($id); @@ -1005,9 +938,7 @@ if (empty($reshook)) setEventMessages($paiement->error, $paiement->errors, 'errors'); } } - } - - /* + } /* * Insert new invoice in database */ elseif ($action == 'add' && $usercancreate) @@ -1025,7 +956,7 @@ if (empty($reshook)) // Replacement invoice if ($_POST['type'] == Facture::TYPE_REPLACEMENT) { - $dateinvoice = dol_mktime(12, 0, 0, $_POST['remonth'], $_POST['reday'], $_POST['reyear']); + $dateinvoice = dol_mktime(12, 0, 0, GETPOST('remonth', 'int'), GETPOST('reday', 'int'), GETPOST('reyear', 'int')); if (empty($dateinvoice)) { $error++; @@ -1086,7 +1017,7 @@ if (empty($reshook)) $action = 'create'; } - $dateinvoice = dol_mktime(12, 0, 0, $_POST['remonth'], $_POST['reday'], $_POST['reyear']); + $dateinvoice = dol_mktime(12, 0, 0, GETPOST('remonth', 'int'), GETPOST('reday', 'int'), GETPOST('reyear', 'int')); if (empty($dateinvoice)) { $error++; @@ -1146,7 +1077,7 @@ if (empty($reshook)) foreach ($facture_source->lines as $line) { // Extrafields - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED) && method_exists($line, 'fetch_optionals')) { + if (method_exists($line, 'fetch_optionals')) { // load extrafields $line->fetch_optionals(); } @@ -1175,9 +1106,7 @@ if (empty($reshook)) { $searchPreviousInvoice = false; // find, exit; break; - } - else - { + } else { $lineIndex--; // go to previous invoice in cycle } } @@ -1269,7 +1198,7 @@ if (empty($reshook)) // Standard invoice or Deposit invoice, created from a Predefined template invoice if (($_POST['type'] == Facture::TYPE_STANDARD || $_POST['type'] == Facture::TYPE_DEPOSIT) && GETPOST('fac_rec', 'int') > 0) { - $dateinvoice = dol_mktime(12, 0, 0, $_POST['remonth'], $_POST['reday'], $_POST['reyear']); + $dateinvoice = dol_mktime(12, 0, 0, GETPOST('remonth', 'int'), GETPOST('reday', 'int'), GETPOST('reyear', 'int')); if (empty($dateinvoice)) { $error++; @@ -1320,7 +1249,7 @@ if (empty($reshook)) $action = 'create'; } - $dateinvoice = dol_mktime(12, 0, 0, $_POST['remonth'], $_POST['reday'], $_POST['reyear']); + $dateinvoice = dol_mktime(12, 0, 0, GETPOST('remonth', 'int'), GETPOST('reday', 'int'), GETPOST('reyear', 'int')); if (empty($dateinvoice)) { $error++; @@ -1362,11 +1291,10 @@ if (empty($reshook)) $object->situation_cycle_ref = $object->newCycle(); } - if(in_array($object->type, $retainedWarrantyInvoiceAvailableType)){ + if (in_array($object->type, $retainedWarrantyInvoiceAvailableType)) { $object->retained_warranty = GETPOST('retained_warranty', 'int'); $object->retained_warranty_fk_cond_reglement = GETPOST('retained_warranty_fk_cond_reglement', 'int'); - } - else{ + } else { $object->retained_warranty = 0; $object->retained_warranty_fk_cond_reglement = 0; } @@ -1469,14 +1397,11 @@ if (empty($reshook)) $amount_ttc_diff += $am; $amountdeposit[$tva] += $am / (1 + $tva / 100); // Convert into HT for the addline } - } - else - { + } else { if ($typeamount == 'amount') { $amountdeposit[0] = $valuedeposit; - } - elseif ($typeamount == 'variable') + } elseif ($typeamount == 'variable') { if ($result > 0) { @@ -1644,7 +1569,7 @@ if (empty($reshook)) } // Extrafields - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED) && method_exists($lines[$i], 'fetch_optionals')) { + if (method_exists($lines[$i], 'fetch_optionals')) { $lines[$i]->fetch_optionals(); $array_options = $lines[$i]->array_options; } @@ -1724,9 +1649,7 @@ if (empty($reshook)) setEventMessages($object->error, $object->errors, 'errors'); $error++; } - } - else - { // If some invoice's lines coming from page + } else { // If some invoice's lines coming from page $id = $object->create($user); for ($i = 1; $i <= $NBLINES; $i++) { @@ -1745,7 +1668,7 @@ if (empty($reshook)) // Situation invoices if (GETPOST('type') == Facture::TYPE_SITUATION && (!empty($_POST['situations']))) { - $datefacture = dol_mktime(12, 0, 0, $_POST['remonth'], $_POST['reday'], $_POST['reyear']); + $datefacture = dol_mktime(12, 0, 0, GETPOST('remonth', 'int'), GETPOST('reday', 'int'), GETPOST('reyear', 'int')); if (empty($datefacture)) { $error++; $mesg = $langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("Date")); @@ -1768,19 +1691,21 @@ if (empty($reshook)) if (!empty($origin) && !empty($originid)) { + include_once DOL_DOCUMENT_ROOT.'/core/lib/price.lib.php'; + $object->origin = $origin; $object->origin_id = $originid; // retained warranty - if(!empty($conf->global->INVOICE_USE_RETAINED_WARRANTY)) + if (!empty($conf->global->INVOICE_USE_RETAINED_WARRANTY)) { $retained_warranty = GETPOST('retained_warranty', 'int'); - if(price2num($retained_warranty) > 0) + if (price2num($retained_warranty) > 0) { - $object->retained_warranty = price2num($retained_warranty); + $object->retained_warranty = price2num($retained_warranty); } - if(GETPOST('retained_warranty_fk_cond_reglement', 'int') > 0) + if (GETPOST('retained_warranty_fk_cond_reglement', 'int') > 0) { $object->retained_warranty_fk_cond_reglement = GETPOST('retained_warranty_fk_cond_reglement', 'int'); } @@ -1800,6 +1725,17 @@ if (empty($reshook)) $line->fetch_optionals(); $line->situation_percent = $line->get_prev_progress($object->id); // get good progress including credit note + // The $line->situation_percent has been modified, so we must recalculate all amounts + $tabprice = calcul_price_total($line->qty, $line->subprice, $line->remise_percent, $line->tva_tx, $line->localtax1_tx, $line->localtax2_tx, 0, 'HT', 0, $line->product_type, $mysoc, '', $line->situation_percent); + $line->total_ht = $tabprice[0]; + $line->total_tva = $tabprice[1]; + $line->total_ttc = $tabprice[2]; + $line->total_localtax1 = $tabprice[9]; + $line->total_localtax2 = $tabprice[10]; + $line->multicurrency_total_ht = $tabprice[16]; + $line->multicurrency_total_tva = $tabprice[17]; + $line->multicurrency_total_ttc = $tabprice[18]; + // Si fk_remise_except defini on vérifie si la réduction à déjà été appliquée if ($line->fk_remise_except) { @@ -1839,11 +1775,10 @@ if (empty($reshook)) if ($id <= 0) { $mesg = $object->error; - } - else - { + } else { $nextSituationInvoice = new Facture($db); $nextSituationInvoice->fetch($id); + // create extrafields with data from create form $extrafields->fetch_name_optionals_label($nextSituationInvoice->table_element); $ret = $extrafields->setOptionalsFromPost(null, $nextSituationInvoice); @@ -1880,18 +1815,14 @@ if (empty($reshook)) header('Location: '.$_SERVER["PHP_SELF"].'?facid='.$id); exit(); - } - else - { + } else { $db->rollback(); $action = 'create'; $_GET["origin"] = $_POST["origin"]; $_GET["originid"] = $_POST["originid"]; setEventMessages($object->error, $object->errors, 'errors'); } - } - - // Add a new line + } // Add a new line elseif ($action == 'addline' && $usercancreate) { $langs->load('errors'); @@ -1907,9 +1838,7 @@ if (empty($reshook)) { $idprod = 0; $tva_tx = (GETPOST('tva_tx', 'alpha') ? GETPOST('tva_tx', 'alpha') : 0); - } - else - { + } else { $idprod = GETPOST('idprod', 'int'); $tva_tx = ''; } @@ -1956,9 +1885,7 @@ if (empty($reshook)) setEventMessages($langs->trans("ErrorFieldCantBeNegativeOnInvoice", $langs->transnoentitiesnoconv("UnitPriceHT"), $langs->transnoentitiesnoconv("CustomerAbsoluteDiscountShort")), null, 'errors'); } $error++; - } - else - { + } else { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("UnitPriceHT")), null, 'errors'); $error++; } @@ -1984,9 +1911,7 @@ if (empty($reshook)) if ($res = $prodcomb->fetchByProductCombination2ValuePairs($idprod, $combinations)) { $idprod = $res->fk_product_child; - } - else - { + } else { setEventMessages($langs->trans('ErrorProductCombinationNotFound'), null, 'errors'); $error++; } @@ -2042,17 +1967,14 @@ if (empty($reshook)) { $pu_ht = price2num($price_ht, 'MU'); $pu_ttc = price2num($pu_ht * (1 + ($tmpvat / 100)), 'MU'); - } - // On reevalue prix selon taux tva car taux tva transaction peut etre different + } // On reevalue prix selon taux tva car taux tva transaction peut etre different // de ceux du produit par defaut (par exemple si pays different entre vendeur et acheteur). elseif ($tmpvat != $tmpprodvat) { if ($price_base_type != 'HT') { $pu_ht = price2num($pu_ttc / (1 + ($tmpvat / 100)), 'MU'); - } - else - { + } else { $pu_ttc = price2num($pu_ht * (1 + ($tmpvat / 100)), 'MU'); } } @@ -2219,9 +2141,7 @@ if (empty($reshook)) $action = ''; } } - } - - elseif ($action == 'updateline' && $usercancreate && !GETPOST('cancel', 'alpha')) + } elseif ($action == 'updateline' && $usercancreate && !GETPOST('cancel', 'alpha')) { if (!$object->fetch($id) > 0) dol_print_error($db); $object->fetch_thirdparty(); @@ -2278,16 +2198,14 @@ if (empty($reshook)) setEventMessages($mesg, null, 'warnings'); $error++; $result = -1; - } - elseif (GETPOST('progress') < $line->situation_percent) // TODO : use a modified $line->get_prev_progress($object->id) result + } elseif (GETPOST('progress') < $line->situation_percent) // TODO : use a modified $line->get_prev_progress($object->id) result { $mesg = $langs->trans("CantBeLessThanMinPercent"); setEventMessages($mesg, null, 'warnings'); $error++; $result = -1; } - } - elseif (GETPOST('progress') < $percent) + } elseif (GETPOST('progress') < $percent) { $mesg = '
'.$langs->trans("CantBeLessThanMinPercent").'
'; setEventMessages($mesg, null, 'warnings'); @@ -2342,9 +2260,7 @@ if (empty($reshook)) setEventMessages($langs->trans("ErrorFieldCantBeNegativeOnInvoice", $langs->transnoentitiesnoconv("UnitPriceHT"), $langs->transnoentitiesnoconv("CustomerAbsoluteDiscountShort")), null, 'errors'); } $error++; - } - else - { + } else { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("UnitPriceHT")), null, 'errors'); $error++; } @@ -2429,9 +2345,7 @@ if (empty($reshook)) setEventMessages($object->error, $object->errors, 'errors'); } } - } - - elseif ($action == 'updatealllines' && $usercancreate && $_POST['all_percent'] == $langs->trans('Modifier')) // Update all lines of situation invoice + } elseif ($action == 'updatealllines' && $usercancreate && $_POST['all_percent'] == $langs->trans('Modifier')) // Update all lines of situation invoice { if (!$object->fetch($id) > 0) dol_print_error($db); if (GETPOST('all_progress') != "") @@ -2444,18 +2358,13 @@ if (empty($reshook)) $mesg = $langs->trans("Line").' '.$i.' : '.$langs->trans("CantBeLessThanMinPercent"); setEventMessages($mesg, null, 'warnings'); $result = -1; - } else - $object->update_percent($line, $_POST['all_progress']); + } else $object->update_percent($line, $_POST['all_progress']); } } - } - - elseif ($action == 'updateline' && $usercancreate && $_POST['cancel'] == $langs->trans('Cancel')) { + } elseif ($action == 'updateline' && $usercancreate && $_POST['cancel'] == $langs->trans('Cancel')) { header('Location: '.$_SERVER["PHP_SELF"].'?facid='.$id); // To show again edited page exit(); - } - - // Outing situation invoice from cycle + } // Outing situation invoice from cycle elseif ($action == 'confirm_situationout' && $confirm == 'yes' && $usercancreate) { $object->fetch($id, '', '', '', true); @@ -2525,9 +2434,7 @@ if (empty($reshook)) { $searchPreviousInvoice = false; // find, exit; break; - } - else - { + } else { $lineIndex--; // go to previous invoice in cycle } } @@ -2554,25 +2461,17 @@ if (empty($reshook)) { setEventMessages($langs->trans('Updated'), '', 'mesgs'); header("Location: ".$_SERVER['PHP_SELF']."?id=".$id); - } - else - { + } else { setEventMessages($langs->trans('ErrorOutingSituationInvoiceCreditNote'), array(), 'errors'); } - } - else - { + } else { setEventMessages($langs->trans('ErrorOutingSituationInvoiceOnUpdate'), array(), 'errors'); } - } - else - { + } else { setEventMessages($langs->trans('ErrorFindNextSituationInvoice'), array(), 'errors'); } } - } - - // add lines from objectlinked + } // add lines from objectlinked elseif ($action == 'import_lines_from_object' && $usercancreate && $object->statut == Facture::STATUS_DRAFT @@ -2588,8 +2487,7 @@ if (empty($reshook)) { dol_include_once('/'.$fromElement.'/class/'.$fromElement.'.class.php'); $lineClassName = 'OrderLine'; - } - elseif ($fromElement == 'propal') + } elseif ($fromElement == 'propal') { dol_include_once('/comm/'.$fromElement.'/class/'.$fromElement.'.class.php'); $lineClassName = 'PropaleLigne'; @@ -2629,10 +2527,9 @@ if (empty($reshook)) $pa_ht = $originLine->pa_ht; $label = $originLine->label; $array_options = $originLine->array_options; - if($object->type == Facture::TYPE_SITUATION){ + if ($object->type == Facture::TYPE_SITUATION) { $situation_percent = 0; - } - else{ + } else { $situation_percent = 100; } $fk_prev_id = ''; @@ -2646,8 +2543,7 @@ if (empty($reshook)) } else { $error++; } - } - else { + } else { $error++; } } @@ -2770,7 +2666,7 @@ if ($action == 'create') $facturestatic = new Facture($db); $extrafields->fetch_name_optionals_label($facturestatic->table_element); - print load_fiche_titre($langs->trans('NewBill'), '', 'invoicing'); + print load_fiche_titre($langs->trans('NewBill'), '', 'bill'); if ($socid > 0) $res = $soc->fetch($socid); @@ -2860,9 +2756,7 @@ if ($action == 'create') //Replicate extrafields $expesrc->fetch_optionals(); $object->array_options = $expesrc->array_options; - } - else - { + } else { $cond_reglement_id = (!empty($objectsrc->cond_reglement_id) ? $objectsrc->cond_reglement_id : (!empty($soc->cond_reglement_id) ? $soc->cond_reglement_id : 0)); $mode_reglement_id = (!empty($objectsrc->mode_reglement_id) ? $objectsrc->mode_reglement_id : (!empty($soc->mode_reglement_id) ? $soc->mode_reglement_id : 0)); $fk_account = (!empty($objectsrc->fk_account) ? $objectsrc->fk_account : (!empty($soc->fk_account) ? $soc->fk_account : 0)); @@ -2880,9 +2774,7 @@ if ($action == 'create') $object->array_options = $objectsrc->array_options; } } - } - else - { + } else { $cond_reglement_id = $soc->cond_reglement_id; $mode_reglement_id = $soc->mode_reglement_id; $fk_account = $soc->fk_account; @@ -2893,12 +2785,21 @@ if ($action == 'create') if (!empty($conf->multicurrency->enabled) && !empty($soc->multicurrency_code)) $currency_code = $soc->multicurrency_code; } + // when payment condition is empty (means not override by payment condition form a other object, like third-party), try to use default value + if (empty($cond_reglement_id)) { + $cond_reglement_id = GETPOST("cond_reglement_id"); + } + + // when payment mode is empty (means not override by payment mode form a other object, like third-party), try to use default value + if (empty($mode_reglement_id)) { + $mode_reglement_id = GETPOST("mode_reglement_id"); + } + if (!empty($soc->id)) $absolute_discount = $soc->getAvailableDiscounts(); $note_public = $object->getDefaultCreateValueFor('note_public', ((!empty($origin) && !empty($originid) && is_object($objectsrc) && !empty($conf->global->FACTURE_REUSE_NOTES_ON_CREATE_FROM)) ? $objectsrc->note_public : null)); $note_private = $object->getDefaultCreateValueFor('note_private', ((!empty($origin) && !empty($originid) && is_object($objectsrc) && !empty($conf->global->FACTURE_REUSE_NOTES_ON_CREATE_FROM)) ? $objectsrc->note_private : null)); - if (!empty($conf->use_javascript_ajax)) - { + if (!empty($conf->use_javascript_ajax)) { require_once DOL_DOCUMENT_ROOT.'/core/lib/ajax.lib.php'; print ajax_combobox('fac_replacement'); print ajax_combobox('fac_avoir'); @@ -2964,9 +2865,7 @@ if ($action == 'create') print ')'; print ''; print ''."\n"; - } - else - { + } else { print ''.$langs->trans('Customer').''; print ''; print $form->select_company($soc->id, 'socid', '((s.client = 1 OR s.client = 3) AND s.status=1)', 'SelectThirdParty', 0, 0, null, 0, 'minwidth300'); @@ -3120,10 +3019,10 @@ if ($action == 'create') print '
'; // Next situation invoice - $opt = $form->selectSituationInvoices(GETPOST('originid'), $socid); + $opt = $form->selectSituationInvoices(GETPOST('originid', 'int'), $socid); print '
'; - $tmp = ''.$langs->trans('NoSituations').'') || (GETPOST('origin') && GETPOST('origin') != 'facture' && GETPOST('origin') != 'commande')) $tmp .= ' disabled'; $tmp .= '> '; @@ -3189,9 +3088,7 @@ if ($action == 'create') print $desc; print '
'; } - } - else - { + } else { if (!empty($conf->global->INVOICE_USE_SITUATION)) { print '
'; @@ -3296,9 +3193,7 @@ if ($action == 'create') print '
'; } - } - else - { + } else { print '
'; if (empty($conf->global->INVOICE_CREDIT_NOTE_STANDALONE)) $tmp = ' '; else $tmp = ' '; @@ -3393,19 +3288,19 @@ if ($action == 'create') print ''; - if($conf->global->INVOICE_USE_RETAINED_WARRANTY){ + if ($conf->global->INVOICE_USE_RETAINED_WARRANTY) { $rwStyle = 'display:none;'; - if(in_array(GETPOST('type', 'int'), $retainedWarrantyInvoiceAvailableType)){ + if (in_array(GETPOST('type', 'int'), $retainedWarrantyInvoiceAvailableType)) { $rwStyle = ''; } $retained_warranty = GETPOST('retained_warranty', 'int'); - if(empty($retained_warranty)){ - if(!empty($objectsrc->retained_warranty)){ // use previous situation value + if (empty($retained_warranty)) { + if (!empty($objectsrc->retained_warranty)) { // use previous situation value $retained_warranty = $objectsrc->retained_warranty; } } - $retained_warranty_js_default = !empty($retained_warranty)?$retained_warranty:$conf->global->INVOICE_SITUATION_DEFAULT_RETAINED_WARRANTY_PERCENT; + $retained_warranty_js_default = !empty($retained_warranty) ? $retained_warranty : $conf->global->INVOICE_SITUATION_DEFAULT_RETAINED_WARRANTY_PERCENT; print ''.$langs->trans('RetainedWarranty').''; print '%'; @@ -3413,11 +3308,11 @@ if ($action == 'create') // Retained warranty payment term print ''.$langs->trans('PaymentConditionsShortRetainedWarranty').''; $retained_warranty_fk_cond_reglement = GETPOST('retained_warranty_fk_cond_reglement', 'int'); - if(empty($retained_warranty_fk_cond_reglement)){ + if (empty($retained_warranty_fk_cond_reglement)) { $retained_warranty_fk_cond_reglement = $conf->global->INVOICE_SITUATION_DEFAULT_RETAINED_WARRANTY_COND_ID; - if(!empty($objectsrc->retained_warranty_fk_cond_reglement)){ // use previous situation value + if (!empty($objectsrc->retained_warranty_fk_cond_reglement)) { // use previous situation value $retained_warranty_fk_cond_reglement = $objectsrc->retained_warranty_fk_cond_reglement; - }else{ + } else { $retained_warranty_fk_cond_reglement = $conf->global->INVOICE_SITUATION_DEFAULT_RETAINED_WARRANTY_COND_ID; } } @@ -3665,8 +3560,7 @@ if ($action == 'create') } print '
'; -} -elseif ($id > 0 || !empty($ref)) +} elseif ($id > 0 || !empty($ref)) { /* * Show object in view mode @@ -3775,9 +3669,7 @@ elseif ($id > 0 || !empty($ref)) array('type' => 'other', 'name' => 'idwarehouse', 'label' => $label, 'value' => $formproduct->selectWarehouses(GETPOST('idwarehouse') ?GETPOST('idwarehouse') : 'ifone', 'idwarehouse', '', 1, 0, 0, $langs->trans("NoStockAction"), 0, $forcecombo)) ); $formconfirm = $form->formconfirm($_SERVER['PHP_SELF'].'?facid='.$object->id, $langs->trans('DeleteBill'), $text, 'confirm_delete', $formquestion, "yes", 1); - } - else - { + } else { $formconfirm = $form->formconfirm($_SERVER['PHP_SELF'].'?facid='.$object->id, $langs->trans('DeleteBill'), $text, 'confirm_delete', '', 'no', 1); } } else { @@ -4114,8 +4006,7 @@ elseif ($id > 0 || !empty($ref)) foreach ($facidavoir as $id) { if ($i == 0) print ' '; - else - print ','; + else print ','; $facavoir = new Facture($db); $facavoir->fetch($id); print $facavoir->getNomUrl(1); @@ -4259,9 +4150,7 @@ elseif ($id > 0 || !empty($ref)) if ($action == 'editmode') { $form->form_modes_reglement($_SERVER['PHP_SELF'].'?facid='.$object->id, $object->mode_reglement_id, 'mode_reglement_id', 'CRDT', 1, 1); - } - else - { + } else { $form->form_modes_reglement($_SERVER['PHP_SELF'].'?facid='.$object->id, $object->mode_reglement_id, 'none', 'CRDT'); } print ''; @@ -4324,9 +4213,7 @@ elseif ($id > 0 || !empty($ref)) if ($action == 'editbankaccount') { $form->formSelectAccount($_SERVER['PHP_SELF'].'?id='.$object->id, $object->fk_account, 'fk_account', 1); - } - else - { + } else { $form->formSelectAccount($_SERVER['PHP_SELF'].'?id='.$object->id, $object->fk_account, 'none'); } print ""; @@ -4347,9 +4234,7 @@ elseif ($id > 0 || !empty($ref)) if ($action != 'editincoterm') { print $form->textwithpicto($object->display_incoterms(), $object->label_incoterms, 1); - } - else - { + } else { print $form->select_incoterms((!empty($object->fk_incoterms) ? $object->fk_incoterms : ''), (!empty($object->location_incoterms) ? $object->location_incoterms : ''), $_SERVER['PHP_SELF'].'?id='.$object->id); } print ''; @@ -4357,16 +4242,13 @@ elseif ($id > 0 || !empty($ref)) - if(!empty($object->retained_warranty) || !empty($conf->global->INVOICE_USE_RETAINED_WARRANTY)) { - + if (!empty($object->retained_warranty) || !empty($conf->global->INVOICE_USE_RETAINED_WARRANTY)) { $displayWarranty = true; - if(!in_array($object->type, $retainedWarrantyInvoiceAvailableType) && empty($object->retained_warranty)){ + if (!in_array($object->type, $retainedWarrantyInvoiceAvailableType) && empty($object->retained_warranty)) { $displayWarranty = false; } - if($displayWarranty) - { - + if ($displayWarranty) { // Retained Warranty print ''; print ''; @@ -4421,9 +4301,7 @@ elseif ($id > 0 || !empty($ref)) $form->select_conditions_paiements($retained_warranty_fk_cond_reglement, 'retained_warranty_fk_cond_reglement', -1, 1); print ''; print ''; - } - else - { + } else { $form->form_conditions_reglement($_SERVER['PHP_SELF'].'?facid='.$object->id, $object->retained_warranty_fk_cond_reglement, 'none'); if (!$displayWarranty) { print img_picto($langs->trans('RetainedWarrantyNeed100Percent'), 'warning.png', 'class="pictowarning valignmiddle" '); @@ -4456,9 +4334,7 @@ elseif ($id > 0 || !empty($ref)) print ''; print ''; print ''; - } - else - { + } else { print dol_print_date($object->retained_warranty_date_limit, 'day'); } print ''; @@ -4622,7 +4498,7 @@ elseif ($id > 0 || !empty($ref)) $current_situation_counter = array(); foreach ($object->tab_previous_situation_invoice as $prev_invoice) { - $totalpaye_prev = $prev_invoice->getSommePaiement(); + $tmptotalpaidforthisinvoice = $prev_invoice->getSommePaiement(); $total_prev_ht += $prev_invoice->total_ht; $total_prev_ttc += $prev_invoice->total_ttc; $current_situation_counter[] = (($prev_invoice->type == Facture::TYPE_CREDIT_NOTE) ?-1 : 1) * $prev_invoice->situation_counter; @@ -4633,7 +4509,7 @@ elseif ($id > 0 || !empty($ref)) if (!empty($conf->banque->enabled)) print ''; print ''; print ''; - print ''; + print ''; print ''; } } @@ -4820,8 +4696,7 @@ elseif ($id > 0 || !empty($ref)) print ''; $resteapayeraffiche = $resteapayer; @@ -4916,9 +4791,7 @@ elseif ($id > 0 || !empty($ref)) if ($object->type == Facture::TYPE_SITUATION) { $retainedWarranty = $total_global_ttc * $object->retained_warranty / 100; - } - else - { + } else { // Because one day retained warranty could be used on standard invoices $retainedWarranty = $object->total_ttc * $object->retained_warranty / 100; } @@ -4933,8 +4806,7 @@ elseif ($id > 0 || !empty($ref)) print !empty($object->retained_warranty_date_limit) ? ' '.$langs->trans("ToPayOn", dol_print_date($object->retained_warranty_date_limit, 'day')) : ''; print ' :'; } - } - else // Credit note + } else // Credit note { $cssforamountpaymentcomplete = 'amountpaymentneutral'; @@ -5049,8 +4921,9 @@ elseif ($id > 0 || !empty($ref)) print '
'; @@ -4386,9 +4268,7 @@ elseif ($id > 0 || !empty($ref)) print ''; print ''; print ''; - } - else - { + } else { print price($object->retained_warranty).'%'; } print '
'.price($prev_invoice->total_ht).''.price($prev_invoice->total_ttc).''.$prev_invoice->getLibStatut(3, $totalpaye_prev).''.$prev_invoice->getLibStatut(3, $tmptotalpaidforthisinvoice).'
'; if ($object->type != Facture::TYPE_DEPOSIT) print $langs->trans('AlreadyPaidNoCreditNotesNoDeposits'); - else - print $langs->trans('AlreadyPaid'); + else print $langs->trans('AlreadyPaid'); print ' :'.price($totalpaye).' 
'.price($retainedWarranty).' 
'; // Show object lines - if (!empty($object->lines)) + if (!empty($object->lines)) { $ret = $object->printObjectLines($action, $mysoc, $soc, $lineid, 1); + } // Form to add new line if ($object->statut == 0 && $usercancreate && $action != 'valid' && $action != 'editline') @@ -5106,9 +4979,7 @@ elseif ($id > 0 || !empty($ref)) print ''.$langs->trans('Modify').''; } } - } - else - { + } else { print ''.$langs->trans('Modify').''; } } @@ -5147,8 +5018,7 @@ elseif ($id > 0 || !empty($ref)) } else { if ($usercansend) { print ''.$langs->trans('SendMail').''; - } else - print ''.$langs->trans('SendMail').''; + } else print ''.$langs->trans('SendMail').''; } } } @@ -5166,14 +5036,10 @@ elseif ($id > 0 || !empty($ref)) } else { print ''.$langs->trans('MakeWithdrawRequest').''; } - } - else - { + } else { //print ''.$langs->trans("MakeWithdrawRequest").''; } - } - else - { + } else { //print ''.$langs->trans("MakeWithdrawRequest").''; } } @@ -5207,9 +5073,7 @@ elseif ($id > 0 || !empty($ref)) if ($resteapayer == 0) { print ''.$langs->trans('DoPaymentBack').''; - } - else - { + } else { print ''.$langs->trans('DoPaymentBack').''; } } @@ -5248,17 +5112,13 @@ elseif ($id > 0 || !empty($ref)) { // If one payment or one credit note was linked to this invoice print ''.$langs->trans('ClassifyPaidPartially').''; - } - else - { + } else { if (empty($conf->global->INVOICE_CAN_NEVER_BE_CANCELED)) { if ($objectidnext) { print ''.$langs->trans('ClassifyCanceled').''; - } - else - { + } else { print ''.$langs->trans('ClassifyCanceled').''; } } @@ -5270,7 +5130,7 @@ elseif ($id > 0 || !empty($ref)) { if (!$objectidnext) { - print ''.$langs->trans("CreateCreditNote").''; + print ''.$langs->trans("CreateCreditNote").''; } } @@ -5320,9 +5180,7 @@ elseif ($id > 0 || !empty($ref)) if (($object->total_ttc - $totalcreditnotes) == 0) { print ''.$langs->trans("RemoveSituationFromCycle").''; - } - else - { + } else { print ''.$langs->trans("RemoveSituationFromCycle").''; } } @@ -5345,26 +5203,19 @@ elseif ($id > 0 || !empty($ref)) //var_dump($isErasable); if ($isErasable == -4) { print ''.$langs->trans('Delete').''; - } - elseif ($isErasable == -3) { + } elseif ($isErasable == -3) { print ''.$langs->trans('Delete').''; - } - elseif ($isErasable == -2) { + } elseif ($isErasable == -2) { print ''.$langs->trans('Delete').''; - } - elseif ($isErasable == -1) { + } elseif ($isErasable == -1) { print ''.$langs->trans('Delete').''; - } - elseif ($isErasable <= 0) // Any other cases + } elseif ($isErasable <= 0) // Any other cases { print ''.$langs->trans('Delete').''; - } - elseif ($objectidnext) + } elseif ($objectidnext) { print ''.$langs->trans('Delete').''; - } - else - { + } else { print ''.$langs->trans('Delete').''; } } else { diff --git a/htdocs/compta/facture/class/api_invoices.class.php b/htdocs/compta/facture/class/api_invoices.class.php index 95c6af527b6..c1ed5b809da 100644 --- a/htdocs/compta/facture/class/api_invoices.class.php +++ b/htdocs/compta/facture/class/api_invoices.class.php @@ -244,8 +244,7 @@ class Invoices extends DolibarrApi } $i++; } - } - else { + } else { throw new RestException(503, 'Error when retrieve invoice list : '.$db->lasterror()); } if (!count($obj_ret)) { @@ -502,8 +501,7 @@ class Invoices extends DolibarrApi } $result = $this->invoice->delete_contact($rowid); - - if (!$result) { + if ($result < 0) { throw new RestException(500, 'Error when deleted the contact'); } @@ -549,9 +547,7 @@ class Invoices extends DolibarrApi $updateRes = $this->invoice->deleteline($lineid); if ($updateRes > 0) { return $this->get($id); - } - else - { + } else { throw new RestException(405, $this->invoice->error); } } @@ -600,7 +596,7 @@ class Invoices extends DolibarrApi /** * Delete invoice * - * @param int $id Invoice ID + * @param int $id Invoice ID * @return array */ public function delete($id) @@ -617,7 +613,8 @@ class Invoices extends DolibarrApi throw new RestException(401, 'Access not allowed for login '.DolibarrApiAccess::$user->login); } - if ($this->invoice->delete($id) < 0) + $result = $this->invoice->delete(DolibarrApiAccess::$user); + if ($result < 0) { throw new RestException(500); } @@ -1041,14 +1038,11 @@ class Invoices extends DolibarrApi $discount = new DiscountAbsolute($this->db); if ($this->invoice->type == Facture::TYPE_CREDIT_NOTE) { $discount->description = '(CREDIT_NOTE)'; - } - elseif ($this->invoice->type == Facture::TYPE_DEPOSIT) { + } elseif ($this->invoice->type == Facture::TYPE_DEPOSIT) { $discount->description = '(DEPOSIT)'; - } - elseif ($this->invoice->type == Facture::TYPE_STANDARD || $this->invoice->type == Facture::TYPE_REPLACEMENT || $this->invoice->type == Facture::TYPE_SITUATION) { + } elseif ($this->invoice->type == Facture::TYPE_STANDARD || $this->invoice->type == Facture::TYPE_REPLACEMENT || $this->invoice->type == Facture::TYPE_SITUATION) { $discount->description = '(EXCESS RECEIVED)'; - } - else { + } else { throw new RestException(500, 'Cant convert to reduc an Invoice of this type'); } @@ -1124,18 +1118,14 @@ class Invoices extends DolibarrApi if ($result >= 0) { $this->db->commit(); - } - else - { + } else { $this->db->rollback(); throw new RestException(500, 'Could not set paid'); } } else { $this->db->commit(); } - } - else - { + } else { $this->db->rollback(); throw new RestException(500, 'Discount creation error'); } diff --git a/htdocs/compta/facture/class/facture-rec.class.php b/htdocs/compta/facture/class/facture-rec.class.php index 205ca88290e..581e63be08a 100644 --- a/htdocs/compta/facture/class/facture-rec.class.php +++ b/htdocs/compta/facture/class/facture-rec.class.php @@ -336,13 +336,12 @@ class FactureRec extends CommonInvoice if ($result_insert < 0) { $error++; - } - else { + } else { $objectline = new FactureLigneRec($this->db); if ($objectline->fetch($result_insert)) { // Extrafields - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED) && method_exists($facsrc->lines[$i], 'fetch_optionals')) { + if (method_exists($facsrc->lines[$i], 'fetch_optionals')) { $facsrc->lines[$i]->fetch_optionals($facsrc->lines[$i]->rowid); $objectline->array_options = $facsrc->lines[$i]->array_options; } @@ -377,8 +376,7 @@ class FactureRec extends CommonInvoice $error++; } } - } - else // Old behaviour, if linked_object has only one link per type, so is something like array('contract'=>id1)) + } else // Old behaviour, if linked_object has only one link per type, so is something like array('contract'=>id1)) { $origin_id = $tmp_origin_id; $ret = $this->add_object_linked($origin, $origin_id); @@ -394,22 +392,16 @@ class FactureRec extends CommonInvoice if ($error) { $this->db->rollback(); - } - else - { + } else { $this->db->commit(); return $this->id; } - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -2; } - } - else - { + } else { $this->db->rollback(); return -1; } @@ -438,7 +430,7 @@ class FactureRec extends CommonInvoice $resql = $this->db->query($sql); if ($resql) { - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + if (!$error) { $result = $this->insertExtraFields(); if ($result < 0) @@ -460,9 +452,7 @@ class FactureRec extends CommonInvoice } $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -2; @@ -584,16 +574,12 @@ class FactureRec extends CommonInvoice return -3; } return 1; - } - else - { + } else { $this->error = 'Bill with id '.$rowid.' or ref '.$ref.' not found sql='.$sql; dol_syslog('Facture::Fetch Error '.$this->error, LOG_ERR); return -2; } - } - else - { + } else { $this->error = $this->db->error(); return -1; } @@ -722,9 +708,7 @@ class FactureRec extends CommonInvoice $this->db->free($result); return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); return -3; } @@ -748,9 +732,13 @@ class FactureRec extends CommonInvoice $error = 0; $this->db->begin(); + $main = MAIN_DB_PREFIX.'facturedet_rec'; + $ef = $main."_extrafields"; + $sqlef = "DELETE FROM $ef WHERE fk_object IN (SELECT rowid FROM $main WHERE fk_facture = $rowid)"; + dol_syslog($sqlef); $sql = "DELETE FROM ".MAIN_DB_PREFIX."facturedet_rec WHERE fk_facture = ".$rowid; dol_syslog($sql); - if ($this->db->query($sql)) + if ($this->db->query($sqlef) && $this->db->query($sql)) { $sql = "DELETE FROM ".MAIN_DB_PREFIX."facture_rec WHERE rowid = ".$rowid; dol_syslog($sql); @@ -759,15 +747,14 @@ class FactureRec extends CommonInvoice // Delete linked object $res = $this->deleteObjectLinked(); if ($res < 0) $error = -3; - } - else - { + // Delete extrafields + $res = $this->deleteExtraFields(); + if ($res < 0) $error = -4; + } else { $this->error = $this->db->lasterror(); $error = -1; } - } - else - { + } else { $this->error = $this->db->lasterror(); $error = -2; } @@ -776,9 +763,7 @@ class FactureRec extends CommonInvoice { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return $error; } @@ -853,9 +838,7 @@ class FactureRec extends CommonInvoice if ($price_base_type == 'HT') { $pu = $pu_ht; - } - else - { + } else { $pu = $pu_ttc; } @@ -962,9 +945,7 @@ class FactureRec extends CommonInvoice $this->id = $facid; $this->update_price(); return $lineId; - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -1038,9 +1019,7 @@ class FactureRec extends CommonInvoice if ($price_base_type == 'HT') { $pu = $pu_ht; - } - else - { + } else { $pu = $pu_ttc; } @@ -1124,9 +1103,7 @@ class FactureRec extends CommonInvoice $this->id = $facid; $this->update_price(); return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -1219,8 +1196,7 @@ class FactureRec extends CommonInvoice if ($num) $this->output .= $langs->trans("FoundXQualifiedRecurringInvoiceTemplate", $num)."\n"; - else - $this->output .= $langs->trans("NoQualifiedRecurringInvoiceTemplateFound"); + else $this->output .= $langs->trans("NoQualifiedRecurringInvoiceTemplateFound"); $saventity = $conf->entity; @@ -1281,9 +1257,7 @@ class FactureRec extends CommonInvoice $error++; } } - } - else - { + } else { $error++; $this->error = "Failed to load invoice template with id=".$line->rowid.", entity=".$conf->entity."\n"; $this->errors[] = "Failed to load invoice template with id=".$line->rowid.", entity=".$conf->entity; @@ -1296,9 +1270,7 @@ class FactureRec extends CommonInvoice dol_syslog("createRecurringInvoices Process invoice template ".$facturerec->ref." is finished with a success generation"); $nb_create++; $this->output .= $langs->trans("InvoiceGeneratedFromTemplate", $facture->ref, $facturerec->ref)."\n"; - } - else - { + } else { $db->rollback("createRecurringInvoices Process invoice template id=".$facturerec->id.", ref=".$facturerec->ref); } @@ -1316,8 +1288,7 @@ class FactureRec extends CommonInvoice } $conf->entity = $saventity; // Restore entity context - } - else dol_print_error($db); + } else dol_print_error($db); $this->output = trim($this->output); @@ -1423,69 +1394,54 @@ class FactureRec extends CommonInvoice { if ($status == self::STATUS_SUSPENDED) { $labelStatus = $langs->trans('Disabled'); - } - else { + } else { $labelStatus = $langs->trans('Active'); } - } - else - { + } else { if ($status == self::STATUS_SUSPENDED) { $labelStatus = $langs->trans('Disabled'); - } - else { + } else { $labelStatus = $langs->trans("Draft"); } } - } - elseif ($mode == 1) + } elseif ($mode == 1) { $prefix = 'Short'; if ($recur) { if ($status == self::STATUS_SUSPENDED) { $labelStatus = $langs->trans('Disabled'); - } - else { + } else { $labelStatus = $langs->trans('Active'); } - } - else - { + } else { if ($status == self::STATUS_SUSPENDED) { $labelStatus = $langs->trans('Disabled'); - } - else { + } else { $labelStatus = $langs->trans("Draft"); } } - } - elseif ($mode == 2) + } elseif ($mode == 2) { if ($recur) { if ($status == self::STATUS_SUSPENDED) { $statusType = 'status6'; $labelStatus = $langs->trans('Disabled'); - } - else { + } else { $statusType = 'status4'; $labelStatus = $langs->trans('Active'); } - } - else - { + } else { if ($status == self::STATUS_SUSPENDED) { $statusType = 'status6'; $labelStatus = $langs->trans('Disabled'); - } - else { + } else { $statusType = 'status0'; $labelStatus = $langs->trans('Draft'); } } - } - elseif ($mode == 3) + } elseif ($mode == 3) { if ($recur) { @@ -1493,25 +1449,20 @@ class FactureRec extends CommonInvoice if ($status == self::STATUS_SUSPENDED) { $statusType = 'status6'; $labelStatus = $langs->trans('Disabled'); - } - else { + } else { $statusType = 'status4'; $labelStatus = $langs->trans('Active'); } - } - else - { + } else { if ($status == self::STATUS_SUSPENDED) { $statusType = 'status6'; $labelStatus = $langs->trans('Disabled'); - } - else { + } else { $statusType = 'status0'; $labelStatus = $langs->trans('Draft'); } } - } - elseif ($mode == 4) + } elseif ($mode == 4) { $prefix = ''; if ($recur) @@ -1519,25 +1470,20 @@ class FactureRec extends CommonInvoice if ($status == self::STATUS_SUSPENDED) { $statusType = 'status6'; $labelStatus = $langs->trans('Disabled'); - } - else { + } else { $statusType = 'status4'; $labelStatus = $langs->trans('Active'); } - } - else - { + } else { if ($status == self::STATUS_SUSPENDED) { $statusType = 'status6'; $labelStatus = $langs->trans('Disabled'); - } - else { + } else { $statusType = 'status0'; $labelStatus = $langs->trans('Draft'); } } - } - elseif ($mode == 5 || $mode == 6) + } elseif ($mode == 5 || $mode == 6) { $prefix = ''; if ($mode == 5) $prefix = 'Short'; @@ -1546,19 +1492,15 @@ class FactureRec extends CommonInvoice if ($status == self::STATUS_SUSPENDED) { $statusType = 'status6'; $labelStatus = $langs->trans('Disabled'); - } - else { + } else { $statusType = 'status4'; $labelStatus = $langs->trans('Active'); } - } - else - { + } else { if ($status == self::STATUS_SUSPENDED) { $statusType = 'status6'; $labelStatus = $langs->trans('Disabled'); - } - else { + } else { $statusType = 'status0'; $labelStatus = $langs->trans('Draft'); } @@ -1647,16 +1589,14 @@ class FactureRec extends CommonInvoice $line->total_ht = -100; $line->total_ttc = -119.6; $line->total_tva = -19.6; - } - elseif ($xnbp == 2) // UP is negative (free line) + } elseif ($xnbp == 2) // UP is negative (free line) { $line->subprice = -100; $line->total_ht = -100; $line->total_ttc = -119.6; $line->total_tva = -19.6; $line->remise_percent = 0; - } - elseif ($xnbp == 3) // Discount is 50% (product line) + } elseif ($xnbp == 3) // Discount is 50% (product line) { $prodid = mt_rand(1, $num_prods); $line->fk_product = $prodids[$prodid]; @@ -1664,8 +1604,7 @@ class FactureRec extends CommonInvoice $line->total_ttc = 59.8; $line->total_tva = 9.8; $line->remise_percent = 50; - } - else // (product line) + } else // (product line) { $prodid = mt_rand(1, $num_prods); $line->fk_product = $prodids[$prodid]; @@ -1754,9 +1693,7 @@ class FactureRec extends CommonInvoice $this->frequency = $frequency; if (!empty($unit)) $this->unit_frequency = $unit; return 1; - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -1787,9 +1724,7 @@ class FactureRec extends CommonInvoice $this->date_when = $date; if ($increment_nb_gen_done > 0) $this->nb_gen_done++; return 1; - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -1820,9 +1755,7 @@ class FactureRec extends CommonInvoice { $this->nb_gen_max = $nb; return 1; - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -1851,9 +1784,7 @@ class FactureRec extends CommonInvoice { $this->auto_validate = $validate; return 1; - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -1882,9 +1813,7 @@ class FactureRec extends CommonInvoice { $this->generate_pdf = $validate; return 1; - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -1913,9 +1842,7 @@ class FactureRec extends CommonInvoice { $this->modelpdf = $model; return 1; - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -1966,6 +1893,14 @@ class FactureLigneRec extends CommonInvoiceLine } } + if (!$error) + { + $result = $this->deleteExtraFields(); + if ($result < 0) { + $error++; + } + } + if (!$error) { $sql = 'DELETE FROM '.MAIN_DB_PREFIX.$this->table_element.' WHERE rowid='.$this->id; @@ -2052,9 +1987,7 @@ class FactureLigneRec extends CommonInvoiceLine $this->db->free($result); return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); return -3; } @@ -2112,7 +2045,7 @@ class FactureLigneRec extends CommonInvoiceLine $resql = $this->db->query($sql); if ($resql) { - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + if (!$error) { $result = $this->insertExtraFields(); if ($result < 0) @@ -2134,9 +2067,7 @@ class FactureLigneRec extends CommonInvoiceLine } $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -2; diff --git a/htdocs/compta/facture/class/facture.class.php b/htdocs/compta/facture/class/facture.class.php index b6f9c4d7969..28f0883bb90 100644 --- a/htdocs/compta/facture/class/facture.class.php +++ b/htdocs/compta/facture/class/facture.class.php @@ -678,8 +678,7 @@ class Facture extends CommonInvoice $error++; } } - } - else // Old behaviour, if linked_object has only one link per type, so is something like array('contract'=>id1)) + } else // Old behaviour, if linked_object has only one link per type, so is something like array('contract'=>id1)) { $origin_id = $tmp_origin_id; $ret = $this->add_object_linked($origin, $origin_id); @@ -726,8 +725,7 @@ class Facture extends CommonInvoice //print $objcontact->code.'-'.$objcontact->source.'-'.$objcontact->fk_socpeople."\n"; $this->add_contact($objcontact->fk_socpeople, $objcontact->code, $objcontact->source); // May failed because of duplicate key or because code of contact type does not exists for new object } - } - else dol_print_error($resqlcontact); + } else dol_print_error($resqlcontact); } /* @@ -787,8 +785,7 @@ class Facture extends CommonInvoice break; } } - } - elseif (!$error && empty($this->fac_rec)) // If this->lines is an array of invoice line arrays + } elseif (!$error && empty($this->fac_rec)) // If this->lines is an array of invoice line arrays { $fk_parent_line = 0; @@ -813,12 +810,12 @@ class Facture extends CommonInvoice $vatrate = $line->tva_tx; if ($line->vat_src_code && !preg_match('/\(.*\)/', $vatrate)) $vatrate .= ' ('.$line->vat_src_code.')'; - if(!empty($conf->global->MAIN_CREATEFROM_KEEP_LINE_ORIGIN_INFORMATION)) { - $originid=$line->origin_id; - $origintype=$line->origin; + if (!empty($conf->global->MAIN_CREATEFROM_KEEP_LINE_ORIGIN_INFORMATION)) { + $originid = $line->origin_id; + $origintype = $line->origin; } else { - $originid=$line->id; - $origintype=$this->element; + $originid = $line->id; + $origintype = $this->element; } $result = $this->addline( @@ -987,29 +984,21 @@ class Facture extends CommonInvoice { $this->db->commit(); return $this->id; - } - else - { + } else { $this->db->rollback(); return -4; } - } - else - { + } else { $this->error = $langs->trans('FailedToUpdatePrice'); $this->db->rollback(); return -3; } - } - else - { + } else { dol_syslog(get_class($this)."::create error ".$this->error, LOG_ERR); $this->db->rollback(); return -2; } - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -1; @@ -1094,8 +1083,7 @@ class Facture extends CommonInvoice { $this->error = $facture->error; $this->errors = $facture->errors; - } - elseif ($this->type == self::TYPE_SITUATION && !empty($conf->global->INVOICE_USE_SITUATION)) + } elseif ($this->type == self::TYPE_SITUATION && !empty($conf->global->INVOICE_USE_SITUATION)) { $this->fetchObjectLinked('', '', $this->id, 'facture'); @@ -1177,6 +1165,30 @@ class Facture extends CommonInvoice { unset($object->lines[$i]); unset($object->products[$i]); // Tant que products encore utilise + } + // Bloc to update dates of service (month by month only if previously filled at 1d near start or end of month) + // If it's a service with start and end dates + if (!empty($line->date_start) && !empty($line->date_end) ) { + // Get the dates + $start = dol_getdate($line->date_start); + $end = dol_getdate($line->date_end); + + // Get the first and last day of the month + $first = dol_get_first_day($start['year'], $start['mon']); + $last = dol_get_first_day($end['year'], $end['mon']); + + // Get diff betweend start/end of month and previously filled + $diffFirst = num_between_day($first, dol_mktime($start['hours'], $start['minutes'], $start['seconds'], $start['mon'], $start['mday'], $start['year'], 'user')); + $diffLast = num_between_day(dol_mktime($end['hours'], $end['minutes'], $end['seconds'], $end['mon'], $end['mday'], $end['year'], 'user'), $last); + + // If there is <= 1d (or 2?) of start/or/end of month + if ($diffFirst <= 2 && $diffLast <= 2) { + $nextMonth = dol_get_next_month($end['mon'], $end['year']); + $newFirst = dol_get_first_day($nextMonth['year'], $nextMonth['month']); + $newLast = dol_get_last_day($nextMonth['year'], $nextMonth['month']); + $object->lines[$i]->date_start = $newFirst; + $object->lines[$i]->date_end = $newLast; + } } } @@ -1216,9 +1228,7 @@ class Facture extends CommonInvoice { $this->db->commit(); return $object->id; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -1343,10 +1353,8 @@ class Facture extends CommonInvoice if (!$error) { return 1; - } - else return -1; - } - else return -1; + } else return -1; + } else return -1; } /** @@ -1394,11 +1402,11 @@ class Facture extends CommonInvoice $label = ''; if ($user->rights->facture->lire) { - $label = ''.$langs->trans("ShowInvoice").''; - if ($this->type == self::TYPE_REPLACEMENT) $label = ''.$langs->transnoentitiesnoconv("ShowInvoiceReplace").''; - if ($this->type == self::TYPE_CREDIT_NOTE) $label = ''.$langs->transnoentitiesnoconv("ShowInvoiceAvoir").''; - if ($this->type == self::TYPE_DEPOSIT) $label = ''.$langs->transnoentitiesnoconv("ShowInvoiceDeposit").''; - if ($this->type == self::TYPE_SITUATION) $label = ''.$langs->transnoentitiesnoconv("ShowInvoiceSituation").''; + $label = ''.$langs->trans("Invoice").''; + if ($this->type == self::TYPE_REPLACEMENT) $label = ''.$langs->transnoentitiesnoconv("ReplacementInvoice").''; + if ($this->type == self::TYPE_CREDIT_NOTE) $label = ''.$langs->transnoentitiesnoconv("CreditNote").''; + if ($this->type == self::TYPE_DEPOSIT) $label = ''.$langs->transnoentitiesnoconv("Deposit").''; + if ($this->type == self::TYPE_SITUATION) $label = ''.$langs->transnoentitiesnoconv("InvoiceSituation").''; if (!empty($this->ref)) $label .= '
'.$langs->trans('Ref').': '.$this->ref; if (!empty($this->ref_client)) @@ -1426,7 +1434,7 @@ class Facture extends CommonInvoice { if (!empty($conf->global->MAIN_OPTIMIZEFORTEXTBROWSER)) { - $label = $langs->trans("ShowInvoice"); + $label = $langs->trans("Invoice"); $linkclose .= ' alt="'.dol_escape_htmltag($label, 1).'"'; } $linkclose .= ' title="'.dol_escape_htmltag($label, 1).'"'; @@ -1452,9 +1460,10 @@ class Facture extends CommonInvoice $txttoshow = ($user->socid > 0 ? $this->note_public : $this->note_private); if ($txttoshow) { - $notetoshow = $langs->trans("ViewPrivateNote").':
'.dol_string_nohtmltag($txttoshow, 1); + //$notetoshow = $langs->trans("ViewPrivateNote").':
'.dol_string_nohtmltag($txttoshow, 1); + $notetoshow = $langs->trans("ViewPrivateNote").':
'.$txttoshow; $result .= ' '; - $result .= ''; + $result .= ''; $result .= img_picto('', 'note'); $result .= ''; //$result.=img_picto($langs->trans("ViewNote"),'object_generic'); @@ -1620,16 +1629,12 @@ class Facture extends CommonInvoice return -3; } return 1; - } - else - { + } else { $this->error = 'Invoice with id='.$rowid.' or ref='.$ref.' or ref_ext='.$ref_ext.' not found'; dol_syslog(get_class($this)."::fetch Error ".$this->error, LOG_ERR); return 0; } - } - else - { + } else { $this->error = $this->db->error(); return -1; } @@ -1750,9 +1755,7 @@ class Facture extends CommonInvoice } $this->db->free($result); return 1; - } - else - { + } else { $this->error = $this->db->error(); return -3; } @@ -1790,9 +1793,7 @@ class Facture extends CommonInvoice ) { $this->tab_previous_situation_invoice[] = $invoice; - } - else - { + } else { $this->tab_next_situation_invoice[] = $invoice; } } @@ -1881,7 +1882,7 @@ class Facture extends CommonInvoice $error++; $this->errors[] = "Error ".$this->db->lasterror(); } - if (!$error && empty($conf->global->MAIN_EXTRAFIELDS_DISABLED) && is_array($this->array_options) && count($this->array_options) > 0) + if (!$error) { $result = $this->insertExtraFields(); if ($result < 0) @@ -1908,9 +1909,7 @@ class Facture extends CommonInvoice } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } @@ -1996,23 +1995,17 @@ class Facture extends CommonInvoice $this->db->commit(); return 1; - } - else - { + } else { $this->error = $facligne->error; $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = $facligne->error; $this->db->rollback(); return -2; } - } - else - { + } else { $this->db->rollback(); return -3; } @@ -2038,8 +2031,7 @@ class Facture extends CommonInvoice $sql = 'UPDATE '.MAIN_DB_PREFIX.'facture'; if (empty($ref_client)) $sql .= ' SET ref_client = NULL'; - else - $sql .= ' SET ref_client = \''.$this->db->escape($ref_client).'\''; + else $sql .= ' SET ref_client = \''.$this->db->escape($ref_client).'\''; $sql .= ' WHERE rowid = '.$this->id; dol_syslog(__METHOD__.' this->id='.$this->id.', ref_client='.$ref_client, LOG_DEBUG); @@ -2069,9 +2061,7 @@ class Facture extends CommonInvoice $this->db->commit(); return 1; - } - else - { + } else { foreach ($this->errors as $errmsg) { dol_syslog(__METHOD__.' Error: '.$errmsg, LOG_ERR); @@ -2185,13 +2175,16 @@ class Facture extends CommonInvoice } } - + // Invoice line extrafileds + $main = MAIN_DB_PREFIX.'facturedet'; + $ef = $main."_extrafields"; + $sqlef = "DELETE FROM $ef WHERE fk_object IN (SELECT rowid FROM $main WHERE fk_facture = $rowid)"; // Delete invoice line $sql = 'DELETE FROM '.MAIN_DB_PREFIX.'facturedet WHERE fk_facture = '.$rowid; dol_syslog(get_class($this)."::delete", LOG_DEBUG); - if ($this->db->query($sql) && $this->delete_linked_contact()) + if ($this->db->query($sqlef) && $this->db->query($sql) && $this->delete_linked_contact()) { $sql = 'DELETE FROM '.MAIN_DB_PREFIX.'facture WHERE rowid = '.$rowid; @@ -2232,23 +2225,17 @@ class Facture extends CommonInvoice $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->lasterror()." sql=".$sql; $this->db->rollback(); return -6; } - } - else - { + } else { $this->error = $this->db->lasterror()." sql=".$sql; $this->db->rollback(); return -4; } - } - else - { + } else { $this->db->rollback(); return -2; } @@ -2293,9 +2280,7 @@ class Facture extends CommonInvoice $result = $this->call_trigger('BILL_PAYED', $user); if ($result < 0) $error++; // End call triggers - } - else - { + } else { $error++; $this->error = $this->db->lasterror(); } @@ -2304,15 +2289,11 @@ class Facture extends CommonInvoice { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } - } - else - { + } else { return 0; } } @@ -2348,9 +2329,7 @@ class Facture extends CommonInvoice $result = $this->call_trigger('BILL_UNPAYED', $user); if ($result < 0) $error++; // End call triggers - } - else - { + } else { $error++; $this->error = $this->db->error(); dol_print_error($this->db); @@ -2360,9 +2339,7 @@ class Facture extends CommonInvoice { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -2417,16 +2394,12 @@ class Facture extends CommonInvoice $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->error()." sql=".$sql; $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = $this->db->error()." sql=".$sql; $this->db->rollback(); return -2; @@ -2535,8 +2508,7 @@ class Facture extends CommonInvoice if ($force_number) { $num = $force_number; - } - elseif (preg_match('/^[\(]?PROV/i', $this->ref) || empty($this->ref)) // empty should not happened, but when it occurs, the test save life + } elseif (preg_match('/^[\(]?PROV/i', $this->ref) || empty($this->ref)) // empty should not happened, but when it occurs, the test save life { if (!empty($conf->global->FAC_FORCE_DATE_VALIDATION)) // If option enabled, we force invoice date { @@ -2544,9 +2516,7 @@ class Facture extends CommonInvoice $this->date_lim_reglement = $this->calculate_date_lim_reglement(); } $num = $this->getNextNumRef($this->thirdparty); - } - else - { + } else { $num = $this->ref; } $this->newref = dol_sanitizeFileName($num); @@ -2775,9 +2745,7 @@ class Facture extends CommonInvoice $this->setFinal($user); } } - } - else - { + } else { $error++; } @@ -2785,9 +2753,7 @@ class Facture extends CommonInvoice { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -2914,15 +2880,11 @@ class Facture extends CommonInvoice { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -1; @@ -3041,9 +3003,7 @@ class Facture extends CommonInvoice if ($price_base_type == 'HT') { $pu = $pu_ht; - } - else - { + } else { $pu = $pu_ttc; } @@ -3184,23 +3144,17 @@ class Facture extends CommonInvoice { $this->db->commit(); return $this->line->id; - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = $this->line->error; $this->db->rollback(); return -2; } - } - else - { + } else { dol_syslog(get_class($this)."::addline status of order must be Draft to allow use of ->addline()", LOG_ERR); return -3; } @@ -3415,16 +3369,12 @@ class Facture extends CommonInvoice $this->update_price(1); $this->db->commit(); return $result; - } - else - { + } else { $this->error = $this->line->error; $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = "Invoice statut makes operation forbidden"; return -2; } @@ -3544,16 +3494,12 @@ class Facture extends CommonInvoice { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); $this->error = $this->db->lasterror(); return -1; } - } - else - { + } else { $this->db->rollback(); $this->error = $line->error; return -1; @@ -3611,9 +3557,7 @@ class Facture extends CommonInvoice $this->db->commit(); return 1; - } - else - { + } else { foreach ($this->errors as $errmsg) { dol_syslog(__METHOD__.' Error: '.$errmsg, LOG_ERR); @@ -3680,9 +3624,7 @@ class Facture extends CommonInvoice { $this->db->commit(); return 1; - } - else - { + } else { foreach ($this->errors as $errmsg) { dol_syslog(__METHOD__.' Error: '.$errmsg, LOG_ERR); @@ -3733,44 +3675,44 @@ class Facture extends CommonInvoice } if (!empty($addon)) { - dol_syslog("Call getNextNumRef with " . $addonConstName . " = " . $conf->global->FACTURE_ADDON . ", thirdparty=" . $soc->nom . ", type=" . $soc->typent_code, LOG_DEBUG); + dol_syslog("Call getNextNumRef with ".$addonConstName." = ".$conf->global->FACTURE_ADDON.", thirdparty=".$soc->nom.", type=".$soc->typent_code, LOG_DEBUG); $mybool = false; - $file = $addon . '.php'; + $file = $addon.'.php'; $classname = $addon; // Include file with class $dirmodels = array_merge(array('/'), (array) $conf->modules_parts['models']); foreach ($dirmodels as $reldir) { - $dir = dol_buildpath($reldir . 'core/modules/' . $moduleName . '/'); + $dir = dol_buildpath($reldir.'core/modules/'.$moduleName.'/'); // Load file with numbering class (if found) - if (is_file($dir . $file) && is_readable($dir . $file)) { - $mybool |= include_once $dir . $file; + if (is_file($dir.$file) && is_readable($dir.$file)) { + $mybool |= include_once $dir.$file; } } // For compatibility if (!$mybool) { - $file = $addon . '/' . $addon . '.modules.php'; - $classname = 'mod_' . $moduleName . '_' . $addon; + $file = $addon.'/'.$addon.'.modules.php'; + $classname = 'mod_'.$moduleName.'_'.$addon; $classname = preg_replace('/\-.*$/', '', $classname); // Include file with class foreach ($conf->file->dol_document_root as $dirroot) { - $dir = $dirroot . '/core/modules/' . $moduleName . '/'; + $dir = $dirroot.'/core/modules/'.$moduleName.'/'; // Load file with numbering class (if found) - if (is_file($dir . $file) && is_readable($dir . $file)) { - $mybool |= include_once $dir . $file; + if (is_file($dir.$file) && is_readable($dir.$file)) { + $mybool |= include_once $dir.$file; } } } if (!$mybool) { - dol_print_error('', 'Failed to include file ' . $file); + dol_print_error('', 'Failed to include file '.$file); return ''; } @@ -3789,7 +3731,7 @@ class Facture extends CommonInvoice return $numref; } else { $langs->load('errors'); - print $langs->trans('Error') . ' ' . $langs->trans('ErrorModuleSetupNotComplete', $langs->transnoentitiesnoconv($moduleSourceName)); + print $langs->trans('Error').' '.$langs->trans('ErrorModuleSetupNotComplete', $langs->transnoentitiesnoconv($moduleSourceName)); return ''; } } @@ -3840,9 +3782,7 @@ class Facture extends CommonInvoice $this->date_closing = $this->db->jdate($obj->dateclosing); } $this->db->free($result); - } - else - { + } else { dol_print_error($this->db); } } @@ -3900,13 +3840,10 @@ class Facture extends CommonInvoice if ($shortlist == 1) { $ga[$obj->fid] = $obj->ref; - } - elseif ($shortlist == 2) + } elseif ($shortlist == 2) { $ga[$obj->fid] = $obj->ref.' ('.$obj->name.')'; - } - else - { + } else { $ga[$i]['id'] = $obj->fid; $ga[$i]['ref'] = $obj->ref; $ga[$i]['name'] = $obj->name; @@ -3915,9 +3852,7 @@ class Facture extends CommonInvoice } } return $ga; - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -3965,9 +3900,7 @@ class Facture extends CommonInvoice } //print_r($return); return $return; - } - else - { + } else { $this->error = $this->db->error(); return -1; } @@ -4013,9 +3946,7 @@ class Facture extends CommonInvoice $sqlSit .= " GROUP BY fs.situation_cycle_ref"; $sqlSit .= " ORDER BY fs.situation_counter"; $sql .= " AND ( f.type != ".self::TYPE_SITUATION." OR f.rowid IN (".$sqlSit.") )"; // Type non 5 si facture non avoir - } - else - { + } else { $sql .= " AND f.type != ".self::TYPE_SITUATION; // Type non 5 si facture non avoir } @@ -4040,9 +3971,7 @@ class Facture extends CommonInvoice } return $return; - } - else - { + } else { $this->error = $this->db->error(); return -1; } @@ -4118,9 +4047,7 @@ class Facture extends CommonInvoice dol_syslog(get_class($this).'::demandeprelevement Erreur'); $error++; } - } - else - { + } else { $this->error = 'WithdrawRequestErrorNilAmount'; dol_syslog(get_class($this).'::demandeprelevement WithdrawRequestErrorNilAmount'); $error++; @@ -4138,23 +4065,17 @@ class Facture extends CommonInvoice if ($error) return -1; return 1; - } - else - { + } else { $this->error = "A request already exists"; dol_syslog(get_class($this).'::demandeprelevement Impossible de creer une demande, demande deja en cours'); return 0; } - } - else - { + } else { $this->error = $this->db->error(); dol_syslog(get_class($this).'::demandeprelevement Erreur -2'); return -2; } - } - else - { + } else { $this->error = "Status of invoice does not allow this"; dol_syslog(get_class($this)."::demandeprelevement ".$this->error." $this->statut, $this->paye, $this->mode_reglement_id"); return -3; @@ -4178,9 +4099,7 @@ class Facture extends CommonInvoice if ($this->db->query($sql)) { return 0; - } - else - { + } else { $this->error = $this->db->lasterror(); dol_syslog(get_class($this).'::demande_prelevement_delete Error '.$this->error); return -1; @@ -4245,9 +4164,7 @@ class Facture extends CommonInvoice } return $response; - } - else - { + } else { dol_print_error($this->db); $this->error = $this->db->error(); return -1; @@ -4367,8 +4284,7 @@ class Facture extends CommonInvoice $line->multicurrency_total_ht = -200; $line->multicurrency_total_ttc = -239.2; $line->multicurrency_total_tva = -39.2; - } - elseif ($xnbp == 2) // UP is negative (free line) + } elseif ($xnbp == 2) // UP is negative (free line) { $line->subprice = -100; $line->total_ht = -100; @@ -4378,8 +4294,7 @@ class Facture extends CommonInvoice $line->multicurrency_total_ht = -200; $line->multicurrency_total_ttc = -239.2; $line->multicurrency_total_tva = -39.2; - } - elseif ($xnbp == 3) // Discount is 50% (product line) + } elseif ($xnbp == 3) // Discount is 50% (product line) { $prodid = mt_rand(1, $num_prods); $line->fk_product = $prodids[$prodid]; @@ -4390,8 +4305,7 @@ class Facture extends CommonInvoice $line->multicurrency_total_ttc = 119.6; $line->multicurrency_total_tva = 19.6; $line->remise_percent = 50; - } - else // (product line) + } else // (product line) { $prodid = mt_rand(1, $num_prods); $line->fk_product = $prodids[$prodid]; @@ -4477,9 +4391,7 @@ class Facture extends CommonInvoice } $this->db->free($resql); return 1; - } - else - { + } else { dol_print_error($this->db); $this->error = $this->db->error(); return -1; @@ -4640,9 +4552,7 @@ class Facture extends CommonInvoice { $this->db->commit(); return 1; - } - else - { + } else { foreach ($this->errors as $errmsg) { dol_syslog(__METHOD__.' Error: '.$errmsg, LOG_ERR); @@ -4727,13 +4637,10 @@ class Facture extends CommonInvoice if (($totalpaye < $this->total_ttc - $RetainedWarrantyAmount) && $this->date_lim_reglement < ($now - $conf->facture->client->warning_delay)) { $hasDelay = 1; - } - elseif ($totalpaye < $this->total_ttc && $this->retained_warranty_date_limit < ($now - $conf->facture->client->warning_delay)) + } elseif ($totalpaye < $this->total_ttc && $this->retained_warranty_date_limit < ($now - $conf->facture->client->warning_delay)) { $hasDelay = 1; - } - else - { + } else { $hasDelay = 0; } } @@ -4755,7 +4662,7 @@ class Facture extends CommonInvoice // note : we dont need to test INVOICE_USE_RETAINED_WARRANTY because if $this->retained_warranty is not empty it's because it was set when this conf was active $displayWarranty = false; - if(!empty($this->retained_warranty)) { + if (!empty($this->retained_warranty)) { $displayWarranty = true; if ($this->type == Facture::TYPE_SITUATION && !empty($conf->global->INVOICE_RETAINED_WARRANTY_LIMITED_TO_FINAL_SITUATION)) { @@ -4794,7 +4701,7 @@ class Facture extends CommonInvoice $retainedWarrantyAmount = 0; // Billed - retained warranty - if($this->type == Facture::TYPE_SITUATION && !empty($conf->global->INVOICE_RETAINED_WARRANTY_LIMITED_TO_FINAL_SITUATION)) + if ($this->type == Facture::TYPE_SITUATION && !empty($conf->global->INVOICE_RETAINED_WARRANTY_LIMITED_TO_FINAL_SITUATION)) { $displayWarranty = true; // Check if this situation invoice is 100% for real @@ -4819,13 +4726,10 @@ class Facture extends CommonInvoice $total2BillWT += $this->total_ttc; $retainedWarrantyAmount = $total2BillWT * $this->retained_warranty / 100; - } - else { + } else { return -1; } - } - else - { + } else { // Because one day retained warranty could be used on standard invoices $retainedWarrantyAmount = $this->total_ttc * $this->retained_warranty / 100; } @@ -4834,7 +4738,7 @@ class Facture extends CommonInvoice $rounding = min($conf->global->MAIN_MAX_DECIMALS_UNIT, $conf->global->MAIN_MAX_DECIMALS_TOT); } - if($rounding>0){ + if ($rounding > 0) { return round($retainedWarrantyAmount, $rounding); } @@ -4861,16 +4765,12 @@ class Facture extends CommonInvoice { $this->retained_warranty = floatval($value); return 1; - } - else - { + } else { dol_syslog(get_class($this).'::setRetainedWarranty Erreur '.$sql.' - '.$this->db->error()); $this->error = $this->db->error(); return -1; } - } - else - { + } else { dol_syslog(get_class($this).'::setRetainedWarranty, status of the object is incompatible'); $this->error = 'Status of the object is incompatible '.$this->statut; return -2; @@ -4904,16 +4804,12 @@ class Facture extends CommonInvoice { $this->retained_warranty_date_limit = $timestamp; return 1; - } - else - { + } else { dol_syslog(get_class($this).'::setRetainedWarrantyDateLimit Erreur '.$sql.' - '.$this->db->error()); $this->error = $this->db->error(); return -1; } - } - else - { + } else { dol_syslog(get_class($this).'::setRetainedWarrantyDateLimit, status of the object is incompatible'); $this->error = 'Status of the object is incompatible '.$this->statut; return -2; @@ -5094,9 +4990,7 @@ class FactureLigne extends CommonInvoiceLine $this->db->free($result); return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -5149,9 +5043,7 @@ class FactureLigne extends CommonInvoiceLine if (($result = $this->defineBuyPrice($this->subprice, $this->remise_percent, $this->fk_product)) < 0) { return $result; - } - else - { + } else { $this->pa_ht = $result; } } @@ -5237,7 +5129,7 @@ class FactureLigne extends CommonInvoiceLine $this->id = $this->db->last_insert_id(MAIN_DB_PREFIX.'facturedet'); $this->rowid = $this->id; // For backward compatibility - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + if (!$error) { $result = $this->insertExtraFields(); if ($result < 0) @@ -5267,9 +5159,7 @@ class FactureLigne extends CommonInvoiceLine $this->db->rollback(); return -3; } - } - else - { + } else { $result = $discount->link_to_invoice($this->rowid, 0); if ($result < 0) { @@ -5279,17 +5169,13 @@ class FactureLigne extends CommonInvoiceLine return -3; } } - } - else - { + } else { $this->error = $langs->trans("ErrorADiscountThatHasBeenRemovedIsIncluded"); dol_syslog(get_class($this)."::insert Error ".$this->error, LOG_ERR); $this->db->rollback(); return -3; } - } - else - { + } else { $this->error = $discount->error; dol_syslog(get_class($this)."::insert Error ".$this->error, LOG_ERR); $this->db->rollback(); @@ -5311,9 +5197,7 @@ class FactureLigne extends CommonInvoiceLine $this->db->commit(); return $this->id; - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -2; @@ -5366,9 +5250,7 @@ class FactureLigne extends CommonInvoiceLine if (($result = $this->defineBuyPrice($this->subprice, $this->remise_percent, $this->fk_product)) < 0) { return $result; - } - else - { + } else { $this->pa_ht = $result; } } @@ -5423,7 +5305,7 @@ class FactureLigne extends CommonInvoiceLine $resql = $this->db->query($sql); if ($resql) { - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + if (!$error) { $this->id = $this->rowid; $result = $this->insertExtraFields(); @@ -5446,9 +5328,7 @@ class FactureLigne extends CommonInvoiceLine } $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -2; @@ -5476,6 +5356,13 @@ class FactureLigne extends CommonInvoiceLine } // End call triggers + // extrafields + $result = $this->deleteExtraFields(); + if ($result < 0) + { + $this->db->rollback(); + return -1; + } $sql = "DELETE FROM ".MAIN_DB_PREFIX."facturedet WHERE rowid = ".$this->rowid; dol_syslog(get_class($this)."::delete", LOG_DEBUG); @@ -5483,9 +5370,7 @@ class FactureLigne extends CommonInvoiceLine { $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->error()." sql=".$sql; $this->db->rollback(); return -1; @@ -5525,9 +5410,7 @@ class FactureLigne extends CommonInvoiceLine { $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -2; @@ -5568,7 +5451,7 @@ class FactureLigne extends CommonInvoiceLine $sql = 'SELECT fd.situation_percent FROM '.MAIN_DB_PREFIX.'facturedet fd'; $sql .= ' JOIN '.MAIN_DB_PREFIX.'facture f ON (f.rowid = fd.fk_facture) '; $sql .= ' WHERE fd.fk_prev_id ='.$this->fk_prev_id; - $sql .= ' AND f.situation_cycle_ref = '.$tmpinvoice->situation_cycle_ref; // Prevent cycle outed + $sql .= ' AND f.situation_cycle_ref = '.$invoicecache[$invoiceid]->situation_cycle_ref; // Prevent cycle outed $sql .= ' AND f.type = '.Facture::TYPE_CREDIT_NOTE; $res = $this->db->query($sql); @@ -5576,6 +5459,8 @@ class FactureLigne extends CommonInvoiceLine while ($obj = $this->db->fetch_object($res)) { $returnPercent = $returnPercent + floatval($obj->situation_percent); } + } else { + dol_print_error($this->db); } } diff --git a/htdocs/compta/facture/class/facturestats.class.php b/htdocs/compta/facture/class/facturestats.class.php index ea0b17bc59a..6b95c939e2a 100644 --- a/htdocs/compta/facture/class/facturestats.class.php +++ b/htdocs/compta/facture/class/facturestats.class.php @@ -2,6 +2,7 @@ /* Copyright (C) 2003 Rodolphe Quiedeville * Copyright (c) 2005-2013 Laurent Destailleur * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2020 Maxime DEMAREST * * 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 @@ -43,6 +44,7 @@ class FactureStats extends Stats public $from; public $field; public $where; + public $join; /** @@ -52,8 +54,10 @@ class FactureStats extends Stats * @param int $socid Id third party for filter. This value must be forced during the new to external user company if user is an external user. * @param string $mode Option ('customer', 'supplier') * @param int $userid Id user for filter (creation user) + * @param int $typentid Id typent of thirdpary for filter + * @param int $categid Id category of thirdpary for filter */ - public function __construct($db, $socid, $mode, $userid = 0) + public function __construct($db, $socid, $mode, $userid = 0, $typentid = 0, $categid = 0) { global $user, $conf; @@ -61,6 +65,7 @@ class FactureStats extends Stats $this->socid = ($socid > 0 ? $socid : 0); $this->userid = $userid; $this->cachefilesuffix = $mode; + $this->join = ''; if ($mode == 'customer') { @@ -79,6 +84,7 @@ class FactureStats extends Stats $this->field_line = 'total_ht'; } + $this->where = " f.fk_statut >= 0"; $this->where .= " AND f.entity IN (".getEntity('invoice').")"; if (!$user->rights->societe->client->voir && !$this->socid) $this->where .= " AND f.fk_soc = sc.fk_soc AND sc.fk_user = ".$user->id; @@ -90,6 +96,19 @@ class FactureStats extends Stats if ($this->userid > 0) $this->where .= ' AND f.fk_user_author = '.$this->userid; if (!empty($conf->global->FACTURE_DEPOSITS_ARE_JUST_PAYMENTS)) $this->where .= " AND f.type IN (0,1,2,5)"; else $this->where .= " AND f.type IN (0,1,2,3,5)"; + + if ($typentid) + { + $this->join .= ' LEFT JOIN '.MAIN_DB_PREFIX.'societe as s ON s.rowid = f.fk_soc'; + $this->where .= ' AND s.fk_typent = '.$typentid; + } + + if ($categid) + { + $this->join .= ' LEFT JOIN '.MAIN_DB_PREFIX.'categorie_societe as cs ON cs.fk_soc = f.fk_soc'; + $this->join .= ' LEFT JOIN '.MAIN_DB_PREFIX.'categorie as c ON c.rowid = cs.fk_categorie'; + $this->where .= ' AND c.rowid = '.$categid; + } } @@ -107,6 +126,7 @@ class FactureStats extends Stats $sql = "SELECT date_format(f.datef,'%m') as dm, COUNT(*) as nb"; $sql .= " FROM ".$this->from; if (!$user->rights->societe->client->voir && !$this->socid) $sql .= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; + $sql .= $this->join; $sql .= " WHERE f.datef BETWEEN '".$this->db->idate(dol_get_first_day($year))."' AND '".$this->db->idate(dol_get_last_day($year))."'"; $sql .= " AND ".$this->where; $sql .= " GROUP BY dm"; @@ -130,6 +150,7 @@ class FactureStats extends Stats $sql = "SELECT date_format(f.datef,'%Y') as dm, COUNT(*), SUM(c.".$this->field.")"; $sql .= " FROM ".$this->from; if (!$user->rights->societe->client->voir && !$this->socid) $sql .= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; + $sql .= $this->join; $sql .= " WHERE ".$this->where; $sql .= " GROUP BY dm"; $sql .= $this->db->order('dm', 'DESC'); @@ -152,6 +173,7 @@ class FactureStats extends Stats $sql = "SELECT date_format(datef,'%m') as dm, SUM(f.".$this->field.")"; $sql .= " FROM ".$this->from; if (!$user->rights->societe->client->voir && !$this->socid) $sql .= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; + $sql .= $this->join; $sql .= " WHERE f.datef BETWEEN '".$this->db->idate(dol_get_first_day($year))."' AND '".$this->db->idate(dol_get_last_day($year))."'"; $sql .= " AND ".$this->where; $sql .= " GROUP BY dm"; @@ -175,6 +197,7 @@ class FactureStats extends Stats $sql = "SELECT date_format(datef,'%m') as dm, AVG(f.".$this->field.")"; $sql .= " FROM ".$this->from; if (!$user->rights->societe->client->voir && !$this->socid) $sql .= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; + $sql .= $this->join; $sql .= " WHERE f.datef BETWEEN '".$this->db->idate(dol_get_first_day($year))."' AND '".$this->db->idate(dol_get_last_day($year))."'"; $sql .= " AND ".$this->where; $sql .= " GROUP BY dm"; @@ -195,6 +218,7 @@ class FactureStats extends Stats $sql = "SELECT date_format(datef,'%Y') as year, COUNT(*) as nb, SUM(f.".$this->field.") as total, AVG(f.".$this->field.") as avg"; $sql .= " FROM ".$this->from; if (!$user->rights->societe->client->voir && !$this->socid) $sql .= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; + $sql .= $this->join; $sql .= " WHERE ".$this->where; $sql .= " GROUP BY year"; $sql .= $this->db->order('year', 'DESC'); @@ -216,6 +240,7 @@ class FactureStats extends Stats $sql = "SELECT product.ref, COUNT(product.ref) as nb, SUM(tl.".$this->field_line.") as total, AVG(tl.".$this->field_line.") as avg"; $sql .= " FROM ".$this->from.", ".$this->from_line.", ".MAIN_DB_PREFIX."product as product"; if (!$user->rights->societe->client->voir && !$this->socid) $sql .= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; + $sql .= $this->join; $sql .= " WHERE ".$this->where; $sql .= " AND f.rowid = tl.fk_facture AND tl.fk_product = product.rowid"; $sql .= " AND f.datef BETWEEN '".$this->db->idate(dol_get_first_day($year, 1, false))."' AND '".$this->db->idate(dol_get_last_day($year, 12, false))."'"; diff --git a/htdocs/compta/facture/class/paymentterm.class.php b/htdocs/compta/facture/class/paymentterm.class.php index 427daf445c5..9888bd23d13 100644 --- a/htdocs/compta/facture/class/paymentterm.class.php +++ b/htdocs/compta/facture/class/paymentterm.class.php @@ -145,9 +145,7 @@ class PaymentTerm // extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return $this->id; } @@ -202,9 +200,7 @@ class PaymentTerm // extends CommonObject $this->db->free($resql); return 1; - } - else - { + } else { $this->error = "Error ".$this->db->lasterror(); return -1; } @@ -239,9 +235,7 @@ class PaymentTerm // extends CommonObject } $this->db->free($resql); return $ret; - } - else - { + } else { $this->error = "Error ".$this->db->lasterror(); return -1; } @@ -305,9 +299,7 @@ class PaymentTerm // extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } @@ -345,9 +337,7 @@ class PaymentTerm // extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } @@ -396,9 +386,7 @@ class PaymentTerm // extends CommonObject { $this->db->commit(); return $object->id; - } - else - { + } else { $this->db->rollback(); return -1; } diff --git a/htdocs/compta/facture/contact.php b/htdocs/compta/facture/contact.php index 8eb47268186..c88fef5015c 100644 --- a/htdocs/compta/facture/contact.php +++ b/htdocs/compta/facture/contact.php @@ -69,35 +69,25 @@ if ($action == 'addcontact' && $user->rights->facture->creer) { header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else - { + } else { if ($object->error == 'DB_ERROR_RECORD_ALREADY_EXISTS') { $langs->load("errors"); setEventMessages($langs->trans("ErrorThisContactIsAlreadyDefinedAsThisType"), null, 'errors'); - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } -} - -// Toggle the status of a contact +} // Toggle the status of a contact elseif ($action == 'swapstatut' && $user->rights->facture->creer) { if ($object->fetch($id)) { $result = $object->swapContactStatus(GETPOST('ligne')); - } - else - { + } else { dol_print_error($db); } -} - -// Deletes a contact +} // Deletes a contact elseif ($action == 'deletecontact' && $user->rights->facture->creer) { $object->fetch($id); @@ -107,8 +97,7 @@ elseif ($action == 'deletecontact' && $user->rights->facture->creer) { header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else { + } else { dol_print_error($db); } } @@ -207,9 +196,7 @@ if ($id > 0 || !empty($ref)) $res = @include dol_buildpath($reldir.'/contacts.tpl.php'); if ($res) break; } - } - else - { + } else { // Record not found print "ErrorRecordNotFound"; } diff --git a/htdocs/compta/facture/document.php b/htdocs/compta/facture/document.php index e09c8aee11c..ed9b032ae90 100644 --- a/htdocs/compta/facture/document.php +++ b/htdocs/compta/facture/document.php @@ -56,11 +56,12 @@ if ($user->socid) $result = restrictedArea($user, 'facture', $id, ''); // Get parameters +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; if (!$sortorder) $sortorder = "ASC"; @@ -180,14 +181,10 @@ if ($id > 0 || !empty($ref)) $permtoedit = $user->rights->facture->creer; $param = '&id='.$object->id; include_once DOL_DOCUMENT_ROOT.'/core/tpl/document_actions_post_headers.tpl.php'; - } - else - { + } else { dol_print_error($db); } -} -else -{ +} else { print $langs->trans("ErrorUnknown"); } diff --git a/htdocs/compta/facture/invoicetemplate_list.php b/htdocs/compta/facture/invoicetemplate_list.php index 759e9cc3944..dfda4a5b16d 100644 --- a/htdocs/compta/facture/invoicetemplate_list.php +++ b/htdocs/compta/facture/invoicetemplate_list.php @@ -328,13 +328,12 @@ if ($resql) print ''; print ''; print ''; - print ''; print ''; print ''; $title = $langs->trans("RepeatableInvoices"); - print_barre_liste($title, $page, $_SERVER['PHP_SELF'], $param, $sortfield, $sortorder, '', $num, $nbtotalofrecords, 'invoicing', 0, '', '', $limit); + print_barre_liste($title, $page, $_SERVER['PHP_SELF'], $param, $sortfield, $sortorder, '', $num, $nbtotalofrecords, 'bill', 0, '', '', $limit, 0, 0, 1); print ''.$langs->trans("ToCreateAPredefinedInvoice", $langs->transnoentitiesnoconv("ChangeIntoRepeatableInvoice")).'

'; @@ -610,9 +609,7 @@ if ($resql) if (!$invoicerectmp->isMaxNbGenReached()) { if (!$objp->suspended && $objp->frequency > 0 && $db->jdate($objp->date_when) && $db->jdate($objp->date_when) < $now) print img_warning($langs->trans("Late")); - } - else - { + } else { print img_info($langs->trans("MaxNumberOfGenerationReached")); } print ''; @@ -655,19 +652,14 @@ if ($resql) if ($invoicerectmp->isMaxNbGenReached()) { print $langs->trans("MaxNumberOfGenerationReached"); - } - elseif (empty($objp->frequency) || $db->jdate($objp->date_when) <= $today) + } elseif (empty($objp->frequency) || $db->jdate($objp->date_when) <= $today) { print ''; print $langs->trans("CreateBill").''; - } - else - { + } else { print $form->textwithpicto('', $langs->trans("DateIsNotEnough")); } - } - else - { + } else { print " "; } if (!$i) $totalarray['nbfield']++; @@ -677,9 +669,7 @@ if ($resql) $i++; } - } - else - { + } else { $colspan = 1; foreach ($arrayfields as $key => $val) { if (!empty($val['checked'])) $colspan++; } print '
'; @@ -694,9 +684,7 @@ if ($resql) print ""; $db->free($resql); -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/compta/facture/list.php b/htdocs/compta/facture/list.php index 17f70cab375..c21d19ad538 100644 --- a/htdocs/compta/facture/list.php +++ b/htdocs/compta/facture/list.php @@ -297,7 +297,14 @@ if (empty($reshook)) include DOL_DOCUMENT_ROOT.'/core/actions_massactions.inc.php'; } -if ($massaction == 'withdrawrequest') +if ($massaction == 'makepayment'){ + $arrayofselected=is_array($toselect)?$toselect:array(); + + $loc = dol_buildpath('/compta/paiement.php', 2).'?action=create&facids='.implode(',', $arrayofselected); + + header('Location: '.$loc); + exit; +} elseif ($massaction == 'withdrawrequest') { $langs->load("withdrawals"); @@ -305,9 +312,7 @@ if ($massaction == 'withdrawrequest') { $error++; setEventMessages($langs->trans("NotEnoughPermissions"), null, 'errors'); - } - else - { + } else { //Checking error $error = 0; @@ -355,12 +360,10 @@ if ($massaction == 'withdrawrequest') if ($numprlv > 0) { $error++; setEventMessages($objecttmp->ref.' '.$langs->trans("RequestAlreadyDone"), $objecttmp->errors, 'warnings'); - } - elseif (!empty($objecttmp->mode_reglement_code) && $objecttmp->mode_reglement_code != 'PRE') { + } elseif (!empty($objecttmp->mode_reglement_code) && $objecttmp->mode_reglement_code != 'PRE') { $error++; setEventMessages($objecttmp->ref.' '.$langs->trans("BadPaymentMethod"), $objecttmp->errors, 'errors'); - } - else { + } else { $listofbills[] = $objecttmp; // $listofbills will only contains invoices with good payment method and no request already done } } @@ -378,9 +381,7 @@ if ($massaction == 'withdrawrequest') { $db->commit(); $nbwithdrawrequestok++; - } - else - { + } else { $db->rollback(); setEventMessages($aBill->error, $aBill->errors, 'errors'); } @@ -507,9 +508,7 @@ if ($search_status != '-1' && $search_status != '') if ($search_status == '1') $sql .= " AND f.fk_statut = 1"; // unpayed if ($search_status == '2') $sql .= " AND f.fk_statut = 2"; // payed Not that some corrupted data may contains f.fk_statut = 1 AND f.paye = 1 (it means payed too but should not happend. If yes, reopen and reclassify billed) if ($search_status == '3') $sql .= " AND f.fk_statut = 3"; // abandonned - } - else - { + } else { $sql .= " AND f.fk_statut IN (".$db->escape($search_status).")"; // When search_status is '1,2' for example } } @@ -555,9 +554,7 @@ if (!$sall) if (!empty($extrafields->attributes[$object->table_element]['label'])) { foreach ($extrafields->attributes[$object->table_element]['label'] as $key => $val) $sql .= ($extrafields->attributes[$object->table_element]['type'][$key] != 'separate' ? ", ef.".$key : ''); } -} -else -{ +} else { $sql .= natural_search(array_keys($fieldstosearchall), $sall); } @@ -657,6 +654,7 @@ if ($resql) 'generate_doc'=>$langs->trans("ReGeneratePDF"), 'builddoc'=>$langs->trans("PDFMerge"), 'presend'=>$langs->trans("SendByMail"), + //'makepayment'=>$langs->trans("InvoicePaymentsLimits"), TODO Blank page when using this ); if ($conf->prelevement->enabled) { $langs->load("withdrawals"); @@ -665,8 +663,7 @@ if ($resql) if ($user->rights->facture->supprimer) { if (!empty($conf->global->INVOICE_CAN_REMOVE_DRAFT_ONLY)) { $arrayofmassactions['predeletedraft'] = $langs->trans("Deletedraft"); - } - elseif (!empty($conf->global->INVOICE_CAN_ALWAYS_BE_REMOVED)) { // mass deletion never possible on invoices on such situation + } elseif (!empty($conf->global->INVOICE_CAN_ALWAYS_BE_REMOVED)) { // mass deletion never possible on invoices on such situation $arrayofmassactions['predelete'] = $langs->trans("Delete"); } } @@ -691,7 +688,7 @@ if ($resql) print ''; print ''; - print_barre_liste($langs->trans('BillsCustomers').' '.($socid ? ' '.$soc->name : ''), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'invoicing', 0, $newcardbutton, '', $limit, 0, 0, 1); + print_barre_liste($langs->trans('BillsCustomers').' '.($socid ? ' '.$soc->name : ''), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'bill', 0, $newcardbutton, '', $limit, 0, 0, 1); $topicmail = "SendBillRef"; $modelmail = "facture_send"; @@ -1210,9 +1207,7 @@ if ($resql) if ($contextpage == 'poslist') { print $obj->ref; - } - else - { + } else { print $facturestatic->getNomUrl(1, '', 200, 0, '', 0, 1); } @@ -1307,9 +1302,7 @@ if ($resql) if ($contextpage == 'poslist') { print $thirdpartystatic->name; - } - else - { + } else { print $thirdpartystatic->getNomUrl(1, 'customer'); } print ''; @@ -1530,7 +1523,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, 'i'=>$i); + $parameters = array('arrayfields'=>$arrayfields, 'obj'=>$obj, 'i'=>$i, 'totalarray'=>&$totalarray); $reshook = $hookmanager->executeHooks('printFieldListValue', $parameters); // Note that $action and $object may have been modified by hook print $hookmanager->resPrint; // Date creation @@ -1610,9 +1603,7 @@ if ($resql) $title = ''; print $formfile->showdocuments('massfilesarea_invoices', '', $filedir, $urlsource, 0, $delallowed, '', 1, 1, 0, 48, 1, $param, $title, '', '', '', null, $hidegeneratedfilelistifempty); -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/compta/facture/prelevement.php b/htdocs/compta/facture/prelevement.php index 337aea12033..7cbe336e126 100644 --- a/htdocs/compta/facture/prelevement.php +++ b/htdocs/compta/facture/prelevement.php @@ -24,7 +24,7 @@ /** * \file htdocs/compta/facture/prelevement.php * \ingroup facture - * \brief Gestion des prelevement d'une facture + * \brief Management of direct debit order of invoices */ require '../../main.inc.php'; @@ -32,9 +32,7 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/invoice.lib.php'; require_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php'; require_once DOL_DOCUMENT_ROOT.'/compta/prelevement/class/bonprelevement.class.php'; require_once DOL_DOCUMENT_ROOT.'/core/class/discount.class.php'; -if (!empty($conf->projet->enabled)) { - require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php'; -} +require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php'; if (!$user->rights->facture->lire) accessforbidden(); @@ -88,9 +86,7 @@ if (empty($reshook)) $db->commit(); setEventMessages($langs->trans("RecordSaved"), null, 'mesgs'); - } - else - { + } else { $db->rollback(); setEventMessages($object->error, $object->errors, 'errors'); } @@ -294,14 +290,10 @@ if ($object->id > 0) if ($action == 'editinvoicedate') { $form->form_date($_SERVER['PHP_SELF'].'?id='.$object->id, $object->date, 'invoicedate'); - } - else - { + } else { print dol_print_date($object->date, 'daytext'); } - } - else - { + } else { print dol_print_date($object->date, 'daytext'); } print ''; @@ -320,14 +312,10 @@ if ($object->id > 0) if ($action == 'editconditions') { $form->form_conditions_reglement($_SERVER['PHP_SELF'].'?id='.$object->id, $object->cond_reglement_id, 'cond_reglement_id'); - } - else - { + } else { $form->form_conditions_reglement($_SERVER['PHP_SELF'].'?id='.$object->id, $object->cond_reglement_id, 'none'); } - } - else - { + } else { print ' '; } print ''; @@ -345,17 +333,13 @@ if ($object->id > 0) if ($action == 'editpaymentterm') { $form->form_date($_SERVER['PHP_SELF'].'?id='.$object->id, $object->date_lim_reglement, 'paymentterm'); - } - else - { + } else { print dol_print_date($object->date_lim_reglement, 'daytext'); if ($object->hasDelay()) { print img_warning($langs->trans('Late')); } } - } - else - { + } else { print ' '; } print ''; @@ -371,9 +355,7 @@ if ($object->id > 0) if ($action == 'editmode') { $form->form_modes_reglement($_SERVER['PHP_SELF'].'?id='.$object->id, $object->mode_reglement_id, 'mode_reglement_id'); - } - else - { + } else { $form->form_modes_reglement($_SERVER['PHP_SELF'].'?id='.$object->id, $object->mode_reglement_id, 'none'); } print ''; @@ -390,9 +372,7 @@ if ($object->id > 0) if ($action == 'editbankaccount') { $form->formSelectAccount($_SERVER['PHP_SELF'].'?id='.$object->id, $object->fk_account, 'fk_account', 1); - } - else - { + } else { $form->formSelectAccount($_SERVER['PHP_SELF'].'?id='.$object->id, $object->fk_account, 'none'); } print ""; @@ -504,9 +484,7 @@ if ($object->id > 0) { $num = $db->num_rows($result_sql); $numopen = $num; - } - else - { + } else { dol_print_error($db); } @@ -522,9 +500,7 @@ if ($object->id > 0) { $obj = $db->fetch_object($result_sql); if ($obj) $pending = $obj->amount; - } - else - { + } else { dol_print_error($db); } @@ -551,25 +527,18 @@ if ($object->id > 0) print ''; print ''; print ''; - } - else - { + } else { print ''.$langs->trans("MakeWithdrawRequest").''; } - } - else - { + } else { print ''.$langs->trans("MakeWithdrawRequest").''; } - } - else - { + } else { if ($num == 0) { if ($object->statut > Facture::STATUS_DRAFT) print ''.$langs->trans("MakeWithdrawRequest").''; else print ''.$langs->trans("MakeWithdrawRequest").''; - } - else print ''.$langs->trans("MakeWithdrawRequest").''; + } else print ''.$langs->trans("MakeWithdrawRequest").''; } print "
\n"; @@ -636,9 +605,7 @@ if ($object->id > 0) } $db->free($result_sql); - } - else - { + } else { dol_print_error($db); } @@ -698,9 +665,7 @@ if ($object->id > 0) print ''; $db->free($result); - } - else - { + } else { dol_print_error($db); } diff --git a/htdocs/compta/facture/stats/index.php b/htdocs/compta/facture/stats/index.php index 79257413716..82ba8a33467 100644 --- a/htdocs/compta/facture/stats/index.php +++ b/htdocs/compta/facture/stats/index.php @@ -4,6 +4,7 @@ * Copyright (C) 2012 Marcos García * Copyright (C) 2013 Juanjo Menent * Copyright (C) 2015 Jean-François Ferry + * Copyright (C) 2020 Maxime DEMAREST * * 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 @@ -27,19 +28,29 @@ require '../../../main.inc.php'; require_once DOL_DOCUMENT_ROOT.'/core/class/dolgraph.class.php'; +require_once DOL_DOCUMENT_ROOT.'/core/class/html.formcompany.class.php'; +require_once DOL_DOCUMENT_ROOT.'/core/class/html.formother.class.php'; +require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php'; require_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facturestats.class.php'; +if (!empty($conf->category->enabled)) require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php'; $WIDTH = DolGraph::getDefaultGraphSizeForStats('width'); $HEIGHT = DolGraph::getDefaultGraphSizeForStats('height'); +// Load translation files required by the page +$langs->loadLangs(array('bills', 'companies', 'other')); + $mode = GETPOST("mode") ?GETPOST("mode") : 'customer'; if ($mode == 'customer' && !$user->rights->facture->lire) accessforbidden(); if ($mode == 'supplier' && !$user->rights->fournisseur->facture->lire) accessforbidden(); $object_status = GETPOST('object_status'); +$typent_id = GETPOST('typent_id', 'int'); +$categ_id = GETPOST('categ_id', 'categ_id'); $userid = GETPOST('userid', 'int'); $socid = GETPOST('socid', 'int'); +$custcats = GETPOST('custcats', 'array'); // Security check if ($user->socid > 0) { @@ -49,40 +60,45 @@ if ($user->socid > 0) $nowyear = strftime("%Y", dol_now()); $year = GETPOST('year') > 0 ?GETPOST('year') : $nowyear; -//$startyear=$year-2; -$startyear = $year - 1; +if (!empty($conf->global->INVOICE_STATS_GRAPHS_SHOW_2_YEARS)) $startyear=$year-2; +else $startyear=$year-1; $endyear = $year; /* * View */ -// Load translation files required by the page -$langs->loadLangs(array('bills', 'companies', 'other')); - +if (!empty($conf->category->enabled)) $langs->load('categories'); $form = new Form($db); +$formcompany = new FormCompany($db); +$formother = new FormOther($db); llxHeader(); -if ($mode == 'customer') -{ - $title = $langs->trans("BillsStatistics"); - $dir = $conf->facture->dir_temp; -} +$picto = 'bill'; +$title = $langs->trans("BillsStatistics"); +$dir = $conf->facture->dir_temp; + if ($mode == 'supplier') { + $picto = 'supplier_invoice'; $title = $langs->trans("BillsStatisticsSuppliers"); $dir = $conf->fournisseur->facture->dir_temp; } -print load_fiche_titre($title, '', 'invoicing'); + +print load_fiche_titre($title, '', $picto); dol_mkdir($dir); -$stats = new FactureStats($db, $socid, $mode, ($userid > 0 ? $userid : 0)); +$stats = new FactureStats($db, $socid, $mode, ($userid > 0 ? $userid : 0), ($typent_id > 0 ? $typent_id : 0), ($categ_id > 0 ? $categ_id : 0)); if ($mode == 'customer') { if ($object_status != '' && $object_status >= 0) $stats->where .= ' AND f.fk_statut IN ('.$db->escape($object_status).')'; + if (is_array($custcats) && !empty($custcats)) { + $stats->from .= ' LEFT JOIN '.MAIN_DB_PREFIX.'categorie_societe as cat ON (f.fk_soc = cat.fk_soc)'; + $stats->where .= ' AND cat.fk_categorie IN ('.implode(',', $custcats).')'; + } } if ($mode == 'supplier') { @@ -164,9 +180,7 @@ if (!$user->rights->societe->client->voir || $user->socid) $filename_avg = $dir.'/ordersaverage-'.$user->id.'-'.$year.'.png'; if ($mode == 'customer') $fileurl_avg = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstats&file=ordersaverage-'.$user->id.'-'.$year.'.png'; if ($mode == 'supplier') $fileurl_avg = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstatssupplier&file=ordersaverage-'.$user->id.'-'.$year.'.png'; -} -else -{ +} else { $filename_avg = $dir.'/ordersaverage-'.$year.'.png'; if ($mode == 'customer') $fileurl_avg = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstats&file=ordersaverage-'.$year.'.png'; if ($mode == 'supplier') $fileurl_avg = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstatssupplier&file=ordersaverage-'.$year.'.png'; @@ -246,6 +260,33 @@ if ($mode == 'customer') $filter = 's.client in (1,2,3)'; if ($mode == 'supplier') $filter = 's.fournisseur = 1'; print $form->selectarray('socid', $companies, $socid, 1, 0, 0, 'style="width: 95%"', 0, 0, 0, '', '', 1); print ''; + +// ThirdParty Type +print ''; + +// Category +if (! empty($conf->category->enabled)) { + if ($mode == 'customer') + { + $cat_type = Categorie::TYPE_CUSTOMER; + $cat_label = $langs->trans("Category").' '.lcfirst($langs->trans("Customer")); + } + if ($mode == 'supplier') + { + $cat_type = Categorie::TYPE_SUPPLIER; + $cat_label = $langs->trans("Category").' '.lcfirst($langs->trans("Supplier")); + } + print ''; +} + // User print ''; print ''; print ''; print ''; - } - else - { + } else { print ''; } print "
'.$langs->trans("NoRecordFound").'
'.$langs->trans("None").'
'.$langs->trans("ThirdPartyType").''; +$sortparam_typent = (empty($conf->global->SOCIETE_SORT_ON_TYPEENT) ? 'ASC' : $conf->global->SOCIETE_SORT_ON_TYPEENT); // NONE means we keep sort of original array, so we sort on position. ASC, means next function will sort on label. +print $form->selectarray("typent_id", $formcompany->typent_array(0), $typent_id, 0, 0, 0, '', 0, 0, 0, $sortparam_typent); +if ($user->admin) print ' '.info_admin($langs->trans("YouCanChangeValuesForThisListFromDictionarySetup"), 1); +print '
'.$cat_label.''; + $cate_arbo = $form->select_all_categories(Categorie::TYPE_CUSTOMER, null, 'parent', null, null, 1); + print $form->multiselectarray('custcats', $cate_arbo, GETPOST('custcats', 'array'), null, null, null, null, "90%"); + //print $formother->select_categories($cat_type, $categ_id, 'categ_id', true); + print '
'.$langs->trans("CreatedBy").''; print $form->select_dolusers($userid, 'userid', 1, '', 0, '', '', 0, 0, 0, '', 0, '', 'maxwidth300'); @@ -254,7 +295,7 @@ print '
'.$langs->trans("Status").''; if ($mode == 'customer') { - $liststatus = array('0'=>$langs->trans("BillStatusDraft"), '1'=>$langs->trans("BillStatusNotPaid"), '2'=>$langs->trans("BillStatusPaid"), '3'=>$langs->trans("BillStatusCanceled")); + $liststatus = array('0'=>$langs->trans("BillStatusDraft"), '1'=>$langs->trans("BillStatusNotPaid"), '2'=>$langs->trans("BillStatusPaid"), '1,2'=>$langs->trans("BillStatusNotPaid").' / '.$langs->trans("BillStatusPaid"), '3'=>$langs->trans("BillStatusCanceled")); print $form->selectarray('object_status', $liststatus, $object_status, 1); } if ($mode == 'supplier') @@ -326,8 +367,7 @@ print '
'; // Show graphs print ''; print ''; print ''; - } - else - { + } else { print ''; } print "
'; -if ($mesg) { print $mesg; } -else { +if ($mesg) { print $mesg; } else { print $px1->show(); print "
\n"; print $px2->show(); diff --git a/htdocs/compta/facture/tpl/linkedobjectblock.tpl.php b/htdocs/compta/facture/tpl/linkedobjectblock.tpl.php index a02a0fc1682..ef35c03eb54 100644 --- a/htdocs/compta/facture/tpl/linkedobjectblock.tpl.php +++ b/htdocs/compta/facture/tpl/linkedobjectblock.tpl.php @@ -78,9 +78,7 @@ foreach ($linkedObjectBlock as $key => $objectlink) // If not abandonned $total = $total + $sign * $objectlink->total_ht; echo price($objectlink->total_ht); - } - else - { + } else { echo ''.price($objectlink->total_ht).''; } } diff --git a/htdocs/compta/index.php b/htdocs/compta/index.php index 6aa05f1cd7e..d5daadcb557 100644 --- a/htdocs/compta/index.php +++ b/htdocs/compta/index.php @@ -87,7 +87,7 @@ $thirdpartystatic = new Societe($db); llxHeader("", $langs->trans("AccountancyTreasuryArea")); -print load_fiche_titre($langs->trans("AccountancyTreasuryArea"), '', 'invoicing'); +print load_fiche_titre($langs->trans("AccountancyTreasuryArea"), '', 'bill'); print '
'; @@ -101,7 +101,7 @@ if (!empty($conf->global->MAIN_SEARCH_FORM_ON_HOME_AREAS)) // This is useles $listofsearchfields['search_invoice'] = array('text'=>'CustomerInvoice'); } // Search supplier invoices - if (!empty($conf->fournisseur->enabled) && $user->rights->fournisseur->lire) + if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)) && $user->rights->fournisseur->lire) { $listofsearchfields['search_supplier_invoice'] = array('text'=>'SupplierInvoice'); } @@ -214,16 +214,12 @@ if (!empty($conf->facture->enabled) && $user->rights->facture->lire) print '
'.$langs->trans("Total").''.price($tot_ttc).'
'.$langs->trans("NoInvoice").'

"; $db->free($resql); - } - else - { + } else { dol_print_error($db); } } @@ -231,7 +227,7 @@ if (!empty($conf->facture->enabled) && $user->rights->facture->lire) /** * Draft suppliers invoices */ -if (!empty($conf->fournisseur->enabled) && $user->rights->fournisseur->facture->lire) +if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || !empty($conf->supplier_invoice->enabled)) && $user->rights->fournisseur->facture->lire) { $sql = "SELECT f.ref, f.rowid, f.total_ht, f.total_tva, f.total_ttc, f.type, f.ref_supplier"; $sql .= ", s.nom as name"; @@ -302,16 +298,12 @@ if (!empty($conf->fournisseur->enabled) && $user->rights->fournisseur->facture-> print '
'.$langs->trans("Total").''.price($tot_ttc).'
'.$langs->trans("NoInvoice").'

"; $db->free($resql); - } - else - { + } else { dol_print_error($db); } } @@ -428,18 +420,14 @@ if (!empty($conf->facture->enabled) && $user->rights->facture->lire) $i++; } - } - else - { + } else { $colspan = 5; if (!empty($conf->global->MAIN_SHOW_HT_ON_SUMMARY)) $colspan++; print ''.$langs->trans("NoInvoice").''; } print '

'; $db->free($resql); - } - else - { + } else { dol_print_error($db); } } @@ -447,7 +435,7 @@ if (!empty($conf->facture->enabled) && $user->rights->facture->lire) // Last modified supplier invoices -if (!empty($conf->fournisseur->enabled) && $user->rights->fournisseur->facture->lire) +if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || !empty($conf->supplier_invoice->enabled)) && $user->rights->fournisseur->facture->lire) { $langs->load("boxes"); $facstatic = new FactureFournisseur($db); @@ -529,17 +517,13 @@ if (!empty($conf->fournisseur->enabled) && $user->rights->fournisseur->facture-> $totalam += $obj->am; $i++; } - } - else - { + } else { $colspan = 5; if (!empty($conf->global->MAIN_SHOW_HT_ON_SUMMARY)) $colspan++; print ''.$langs->trans("NoInvoice").''; } print '
'; - } - else - { + } else { dol_print_error($db); } } @@ -608,14 +592,11 @@ if (!empty($conf->don->enabled) && $user->rights->don->lire) $i++; } - } - else - { + } else { print ''.$langs->trans("None").''; } print '
'; - } - else dol_print_error($db); + } else dol_print_error($db); } /** @@ -686,16 +667,12 @@ if (!empty($conf->tax->enabled) && $user->rights->tax->charges->lire) print ''; print ' '; print ''; - } - else - { + } else { print ''.$langs->trans("None").''; } print "
"; $db->free($resql); - } - else - { + } else { dol_print_error($db); } } @@ -815,9 +792,7 @@ if (!empty($conf->facture->enabled) && !empty($conf->commande->enabled) && $user print '
'; } $db->free($resql); - } - else - { + } else { dol_print_error($db); } } @@ -939,18 +914,14 @@ if (!empty($conf->facture->enabled) && $user->rights->facture->lire) print ''.price($totalam).''; print ' '; print ''; - } - else - { + } else { $colspan = 6; if (!empty($conf->global->MAIN_SHOW_HT_ON_SUMMARY)) $colspan++; print ''.$langs->trans("NoInvoice").''; } print '
'; $db->free($resql); - } - else - { + } else { dol_print_error($db); } } @@ -958,7 +929,7 @@ if (!empty($conf->facture->enabled) && $user->rights->facture->lire) /* * Unpayed supplier invoices */ -if (!empty($conf->fournisseur->enabled) && $user->rights->fournisseur->facture->lire) +if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || !empty($conf->supplier_invoice->enabled)) && $user->rights->fournisseur->facture->lire) { $facstatic = new FactureFournisseur($db); @@ -1049,17 +1020,13 @@ if (!empty($conf->fournisseur->enabled) && $user->rights->fournisseur->facture-> print ''.price($totalam).''; print ' '; print ''; - } - else - { + } else { $colspan = 6; if (!empty($conf->global->MAIN_SHOW_HT_ON_SUMMARY)) $colspan++; print ''.$langs->trans("NoInvoice").''; } print '
'; - } - else - { + } else { dol_print_error($db); } } diff --git a/htdocs/compta/journal/purchasesjournal.php b/htdocs/compta/journal/purchasesjournal.php index 1459bbf2402..78ef32072d6 100644 --- a/htdocs/compta/journal/purchasesjournal.php +++ b/htdocs/compta/journal/purchasesjournal.php @@ -91,7 +91,7 @@ $exportlink = ''; $builddate = dol_now(); $description = $langs->trans("DescPurchasesJournal").'
'; if (!empty($conf->global->FACTURE_DEPOSITS_ARE_JUST_PAYMENTS)) $description .= $langs->trans("DepositsAreNotIncluded"); -else $description .= $langs->trans("DepositsAreIncluded"); +else $description .= $langs->trans("DepositsAreIncluded"); $period = $form->selectDate($date_start, 'date_start', 0, 0, 0, '', 1, 0).' - '.$form->selectDate($date_end, 'date_end', 0, 0, 0, '', 1, 0); report_header($name, '', $period, $periodlink, $description, $builddate, $exportlink); @@ -168,8 +168,7 @@ if ($result) $i++; } -} -else { +} else { dol_print_error($db); } @@ -238,9 +237,7 @@ foreach ($tabfac as $key => $val) { print ''.($mt < 0 ?price(-$mt) : '').""; print ''.($mt >= 0 ?price($mt) : '').""; - } - else - { + } else { print ''.($mt >= 0 ?price($mt) : '').""; print ''.($mt < 0 ?price(-$mt) : '').""; } diff --git a/htdocs/compta/journal/sellsjournal.php b/htdocs/compta/journal/sellsjournal.php index 98bd5e989f7..bd44f6c47cc 100644 --- a/htdocs/compta/journal/sellsjournal.php +++ b/htdocs/compta/journal/sellsjournal.php @@ -93,7 +93,7 @@ $exportlink = ''; $builddate = dol_now(); $description = $langs->trans("DescSellsJournal").'
'; if (!empty($conf->global->FACTURE_DEPOSITS_ARE_JUST_PAYMENTS)) $description .= $langs->trans("DepositsAreNotIncluded"); -else $description .= $langs->trans("DepositsAreIncluded"); +else $description .= $langs->trans("DepositsAreIncluded"); $period = $form->selectDate($date_start, 'date_start', 0, 0, 0, '', 1, 0).' - '.$form->selectDate($date_end, 'date_end', 0, 0, 0, '', 1, 0); report_header($name, '', $period, $periodlink, $description, $builddate, $exportlink); @@ -114,8 +114,7 @@ $sql .= " WHERE f.entity IN (".getEntity('invoice').")"; $sql .= " AND f.fk_statut > 0"; if (!empty($conf->global->FACTURE_DEPOSITS_ARE_JUST_PAYMENTS)) { $sql .= " AND f.type IN (".Facture::TYPE_STANDARD.",".Facture::TYPE_REPLACEMENT.",".Facture::TYPE_CREDIT_NOTE.",".Facture::TYPE_SITUATION.")"; -} -else { +} else { $sql .= " AND f.type IN (".Facture::TYPE_STANDARD.",".Facture::TYPE_STANDARD.",".Facture::TYPE_CREDIT_NOTE.",".Facture::TYPE_DEPOSIT.",".Facture::TYPE_SITUATION.")"; } @@ -195,8 +194,7 @@ if ($result) $tabcompany[$obj->rowid] = array('id'=>$obj->socid, 'name'=>$obj->name, 'client'=>$obj->client); $i++; } -} -else { +} else { dol_print_error($db); } @@ -268,9 +266,7 @@ foreach ($tabfac as $key => $val) { print ''.($mt >= 0 ?price($mt) : '').""; print ''.($mt < 0 ?price(-$mt) : '').""; - } - else - { + } else { print ''.($mt < 0 ?price(-$mt) : '').""; print ''.($mt >= 0 ?price($mt) : '').""; } diff --git a/htdocs/compta/localtax/card.php b/htdocs/compta/localtax/card.php index 51275c7159f..cd7bbfd11c2 100644 --- a/htdocs/compta/localtax/card.php +++ b/htdocs/compta/localtax/card.php @@ -80,9 +80,7 @@ if ($action == 'add' && $_POST["cancel"] <> $langs->trans("Cancel")) $db->commit(); header("Location: list.php?localTaxType=".$lttype); exit; - } - else - { + } else { $db->rollback(); setEventMessages($object->error, $object->errors, 'errors'); $_GET["action"] = "create"; @@ -113,22 +111,16 @@ if ($action == 'delete') $db->commit(); header("Location: ".DOL_URL_ROOT.'/compta/localtax/list.php?localTaxType='.$object->ltt); exit; - } - else - { + } else { $object->error = $accountline->error; $db->rollback(); setEventMessages($object->error, $object->errors, 'errors'); } - } - else - { + } else { $db->rollback(); setEventMessages($object->error, $object->errors, 'errors'); } - } - else - { + } else { $mesg = 'Error try do delete a line linked to a conciliated bank transaction'; setEventMessages($mesg, null, 'errors'); } @@ -289,9 +281,7 @@ if ($id) if ($object->rappro == 0) { print ''.$langs->trans("Delete").''; - } - else - { + } else { print ''.$langs->trans("Delete").''; } print ""; diff --git a/htdocs/compta/localtax/class/localtax.class.php b/htdocs/compta/localtax/class/localtax.class.php index 6aa7c2b1a87..1dfeb0b8930 100644 --- a/htdocs/compta/localtax/class/localtax.class.php +++ b/htdocs/compta/localtax/class/localtax.class.php @@ -137,15 +137,11 @@ class Localtax extends CommonObject { $this->db->commit(); return $this->id; - } - else - { + } else { $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = "Error ".$this->db->lasterror(); $this->db->rollback(); return -1; @@ -206,9 +202,7 @@ class Localtax extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -270,9 +264,7 @@ class Localtax extends CommonObject $this->db->free($resql); return 1; - } - else - { + } else { $this->error = "Error ".$this->db->lasterror(); return -1; } @@ -377,15 +369,11 @@ class Localtax extends CommonObject $ret = $obj->amount; $this->db->free($result); return $ret; - } - else - { + } else { $this->db->free($result); return 0; } - } - else - { + } else { print $this->db->lasterror(); return -1; } @@ -418,15 +406,11 @@ class Localtax extends CommonObject $ret = $obj->total_localtax; $this->db->free($result); return $ret; - } - else - { + } else { $this->db->free($result); return 0; } - } - else - { + } else { print $this->db->lasterror(); return -1; } @@ -461,15 +445,11 @@ class Localtax extends CommonObject $ret = $obj->amount; $this->db->free($result); return $ret; - } - else - { + } else { $this->db->free($result); return 0; } - } - else - { + } else { print $this->db->lasterror(); return -1; } @@ -547,9 +527,7 @@ class Localtax extends CommonObject if ($bank_line_id > 0) { $this->update_fk_bank($bank_line_id); - } - else - { + } else { $this->error = $acc->error; $ok = 0; } @@ -567,22 +545,16 @@ class Localtax extends CommonObject { $this->db->commit(); return $this->id; - } - else - { + } else { $this->db->rollback(); return -3; } - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -2; } - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -1; @@ -604,9 +576,7 @@ class Localtax extends CommonObject $result = $this->db->query($sql); if ($result) { return 1; - } - else - { + } else { dol_print_error($this->db); return -1; } diff --git a/htdocs/compta/localtax/clients.php b/htdocs/compta/localtax/clients.php index 61a11a042f2..10111dd7faa 100644 --- a/htdocs/compta/localtax/clients.php +++ b/htdocs/compta/localtax/clients.php @@ -53,17 +53,13 @@ if (empty($date_start) || empty($date_end)) // We define date_start and date_end $q = GETPOST("q"); if (empty($q)) { - if (GETPOST("month")) { $date_start = dol_get_first_day($year_start, GETPOST("month"), false); $date_end = dol_get_last_day($year_start, GETPOST("month"), false); } - else - { + if (GETPOST("month")) { $date_start = dol_get_first_day($year_start, GETPOST("month"), false); $date_end = dol_get_last_day($year_start, GETPOST("month"), false); } else { $date_start = dol_get_first_day($year_start, empty($conf->global->SOCIETE_FISCAL_MONTH_START) ? 1 : $conf->global->SOCIETE_FISCAL_MONTH_START, false); if (empty($conf->global->MAIN_INFO_VAT_RETURN) || $conf->global->MAIN_INFO_VAT_RETURN == 2) $date_end = dol_time_plus_duree($date_start, 3, 'm') - 1; elseif ($conf->global->MAIN_INFO_VAT_RETURN == 3) $date_end = dol_time_plus_duree($date_start, 1, 'y') - 1; elseif ($conf->global->MAIN_INFO_VAT_RETURN == 1) $date_end = dol_time_plus_duree($date_start, 1, 'm') - 1; } - } - else - { + } else { if ($q == 1) { $date_start = dol_get_first_day($year_start, 1, false); $date_end = dol_get_last_day($year_start, 3, false); } if ($q == 2) { $date_start = dol_get_first_day($year_start, 4, false); $date_end = dol_get_last_day($year_start, 6, false); } if ($q == 3) { $date_start = dol_get_first_day($year_start, 7, false); $date_end = dol_get_last_day($year_start, 9, false); } @@ -201,9 +197,7 @@ if ($calc == 0 || $calc == 2) if ($coll->assuj == '1') { $intra = $langs->trans('Unknown'); - } - else - { + } else { $intra = ''; } } @@ -229,16 +223,13 @@ if ($calc == 0 || $calc == 2) print ''.price($totalamount).''; print ''.price($total).''; print ''; - } - else - { + } else { $langs->load("errors"); if ($coll_list == -1) print ''.$langs->trans("ErrorNoAccountancyModuleLoaded").''; elseif ($coll_list == -2) print ''.$langs->trans("FeatureNotYetAvailable").''; - else - print ''.$langs->trans("Error").''; + else print ''.$langs->trans("Error").''; } } @@ -274,9 +265,7 @@ if ($calc == 0 || $calc == 1) { if ($coll->assuj == '1') { $intra = $langs->trans('Unknown'); - } - else - { + } else { $intra = ''; } } @@ -304,16 +293,13 @@ if ($calc == 0 || $calc == 1) { print ''; print ''; - } - else - { + } else { $langs->load("errors"); if ($coll_list == -1) print ''.$langs->trans("ErrorNoAccountancyModuleLoaded").''; elseif ($coll_list == -2) print ''.$langs->trans("FeatureNotYetAvailable").''; - else - print ''.$langs->trans("Error").''; + else print ''.$langs->trans("Error").''; } } diff --git a/htdocs/compta/localtax/index.php b/htdocs/compta/localtax/index.php index 7755e4ffd16..8e810495ff4 100644 --- a/htdocs/compta/localtax/index.php +++ b/htdocs/compta/localtax/index.php @@ -52,15 +52,11 @@ if (empty($date_start) || empty($date_end)) // We define date_start and date_end $q = GETPOST("q", "int"); if (empty($q)) { - if (GETPOST("month", "int")) { $date_start = dol_get_first_day($year_start, GETPOST("month", "int"), false); $date_end = dol_get_last_day($year_start, GETPOST("month", "int"), false); } - else - { + if (GETPOST("month", "int")) { $date_start = dol_get_first_day($year_start, GETPOST("month", "int"), false); $date_end = dol_get_last_day($year_start, GETPOST("month", "int"), false); } else { $date_start = dol_get_first_day($year_start, $conf->global->SOCIETE_FISCAL_MONTH_START, false); $date_end = dol_time_plus_duree($date_start, 1, 'y') - 1; } - } - else - { + } else { if ($q == 1) { $date_start = dol_get_first_day($year_start, 1, false); $date_end = dol_get_last_day($year_start, 3, false); } if ($q == 2) { $date_start = dol_get_first_day($year_start, 4, false); $date_end = dol_get_last_day($year_start, 6, false); } if ($q == 3) { $date_start = dol_get_first_day($year_start, 7, false); $date_end = dol_get_last_day($year_start, 9, false); } @@ -152,9 +148,7 @@ function pt($db, $sql, $date) $amountpaid = 0; $previousmode = ''; $previousmonth = ''; - } - else - { + } else { $previousmode = $obj->mode; $previousmonth = $obj->dm; } @@ -182,8 +176,7 @@ function pt($db, $sql, $date) print ""; $db->free($result); - } - else { + } else { dol_print_error($db); } } @@ -250,7 +243,7 @@ llxHeader('', $name); //$textprevyear="".img_previous().""; //$textnextyear=" ".img_next().""; -//print load_fiche_titre($langs->transcountry($LT,$mysoc->country_code),"$textprevyear ".$langs->trans("Year")." $year_start $textnextyear", 'invoicing'); +//print load_fiche_titre($langs->transcountry($LT,$mysoc->country_code),"$textprevyear ".$langs->trans("Year")." $year_start $textnextyear", 'bill'); report_header($name, '', $period, $periodlink, $description, $builddate, $exportlink, array(), $calcmode); //report_header($name,'',$textprevyear.$langs->trans("Year")." ".$year_start.$textnextyear,'',$description,$builddate,$exportlink,array(),$calcmode); @@ -388,9 +381,7 @@ while ((($y < $yend) || ($y == $yend && $m <= $mend)) && $mcursor < 1000) // $mc 'localtax2' =>$x_paye[$my_paye_rate]['localtax2_list'][$id], //'link' =>$expensereport->getNomUrl(1) ); - } - else - { + } else { //$invoice_supplier->id=$x_paye[$my_paye_rate]['facid'][$id]; //$invoice_supplier->ref=$x_paye[$my_paye_rate]['facnum'][$id]; //$invoice_supplier->type=$x_paye[$my_paye_rate]['type'][$id]; diff --git a/htdocs/compta/localtax/list.php b/htdocs/compta/localtax/list.php index 911eb7e88f3..a8b37c3ef93 100644 --- a/htdocs/compta/localtax/list.php +++ b/htdocs/compta/localtax/list.php @@ -48,7 +48,7 @@ if ($user->rights->tax->charges->creer) $newcardbutton .= dolGetButtonTitle($langs->trans('NewLocalTaxPayment', ($ltt + 1)), '', 'fa fa-plus-circle', DOL_URL_ROOT.'/compta/localtax/card.php?action=create&localTaxType='.$ltt); } -print load_fiche_titre($langs->transcountry($ltt == 2 ? "LT2Payments" : "LT1Payments", $mysoc->country_code), $newcardbutton, 'invoicing'); +print load_fiche_titre($langs->transcountry($ltt == 2 ? "LT2Payments" : "LT1Payments", $mysoc->country_code), $newcardbutton, 'title_accountancy'); $sql = "SELECT rowid, amount, label, f.datev, f.datep"; $sql .= " FROM ".MAIN_DB_PREFIX."localtax as f "; @@ -95,9 +95,7 @@ if ($result) print ""; $db->free($result); -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/compta/localtax/quadri_detail.php b/htdocs/compta/localtax/quadri_detail.php index 8e2e871251f..058f6871c7d 100644 --- a/htdocs/compta/localtax/quadri_detail.php +++ b/htdocs/compta/localtax/quadri_detail.php @@ -63,17 +63,13 @@ if (empty($date_start) || empty($date_end)) // We define date_start and date_end $q = GETPOST("q", "int"); if (empty($q)) { - if (GETPOST("month", "int")) { $date_start = dol_get_first_day($year_start, GETPOST("month", "int"), false); $date_end = dol_get_last_day($year_start, GETPOST("month", "int"), false); } - else - { + if (GETPOST("month", "int")) { $date_start = dol_get_first_day($year_start, GETPOST("month", "int"), false); $date_end = dol_get_last_day($year_start, GETPOST("month", "int"), false); } else { $date_start = dol_get_first_day($year_start, empty($conf->global->SOCIETE_FISCAL_MONTH_START) ? 1 : $conf->global->SOCIETE_FISCAL_MONTH_START, false); if (empty($conf->global->MAIN_INFO_VAT_RETURN) || $conf->global->MAIN_INFO_VAT_RETURN == 2) $date_end = dol_time_plus_duree($date_start, 3, 'm') - 1; elseif ($conf->global->MAIN_INFO_VAT_RETURN == 3) $date_end = dol_time_plus_duree($date_start, 1, 'y') - 1; elseif ($conf->global->MAIN_INFO_VAT_RETURN == 1) $date_end = dol_time_plus_duree($date_start, 1, 'm') - 1; } - } - else - { + } else { if ($q == 1) { $date_start = dol_get_first_day($year_start, 1, false); $date_end = dol_get_last_day($year_start, 3, false); } if ($q == 2) { $date_start = dol_get_first_day($year_start, 4, false); $date_end = dol_get_last_day($year_start, 6, false); } if ($q == 3) { $date_start = dol_get_first_day($year_start, 7, false); $date_end = dol_get_last_day($year_start, 9, false); } @@ -222,11 +218,8 @@ if (!is_array($x_coll) || !is_array($x_paye)) print ''.$langs->trans("ErrorNoAccountancyModuleLoaded").''; elseif ($x_coll == -2) print ''.$langs->trans("FeatureNotYetAvailable").''; - else - print ''.$langs->trans("Error").''; -} -else -{ + else print ''.$langs->trans("Error").''; +} else { $x_both = array(); //now, from these two arrays, get another array with one rate per line @@ -372,9 +365,7 @@ else $product_static->type = $fields['ptype']; print $product_static->getNomUrl(1); if (dol_string_nohtmltag($fields['descr'])) print ' - '.dol_trunc(dol_string_nohtmltag($fields['descr']), 16); - } - else - { + } else { if ($type) $text = img_object($langs->trans('Service'), 'service'); else $text = img_object($langs->trans('Product'), 'product'); if (preg_match('/^\((.*)\)$/', $fields['descr'], $reg)) @@ -416,8 +407,7 @@ else if ($type == 0) { print $langs->trans("NotUsedForGoods"); - } - else { + } else { print price($fields['payment_amount']); if (isset($fields['payment_amount'])) print ' ('.round($ratiopaymentinvoice * 100, 2).'%)'; } @@ -532,9 +522,7 @@ else $product_static->type = $fields['ptype']; print $product_static->getNomUrl(1); if (dol_string_nohtmltag($fields['descr'])) print ' - '.dol_trunc(dol_string_nohtmltag($fields['descr']), 16); - } - else - { + } else { if ($type) $text = img_object($langs->trans('Service'), 'service'); else $text = img_object($langs->trans('Product'), 'product'); print $text.' '.dol_trunc(dol_string_nohtmltag($fields['descr']), 16); @@ -572,9 +560,7 @@ else if ($type == 0) { print $langs->trans("NA"); - } - else - { + } else { print price(price2num($fields['payment_amount'], 'MT')); if (isset($fields['payment_amount'])) { print ' ('.round($ratiopaymentinvoice * 100, 2).'%)'; diff --git a/htdocs/compta/paiement.php b/htdocs/compta/paiement.php index 4a7e387987c..4eea16f706b 100644 --- a/htdocs/compta/paiement.php +++ b/htdocs/compta/paiement.php @@ -131,8 +131,7 @@ if (empty($reshook)) } $formquestion[$i++] = array('type' => 'hidden', 'name' => $key, 'value' => $_POST[$key]); - } - elseif (substr($key, 0, 21) == 'multicurrency_amount_') + } elseif (substr($key, 0, 21) == 'multicurrency_amount_') { $cursorfacid = substr($key, 21); $multicurrency_amounts[$cursorfacid] = price2num(trim(GETPOST($key))); @@ -312,9 +311,7 @@ if (empty($reshook)) else $loc = DOL_URL_ROOT.'/compta/paiement/card.php?id='.$paiement_id; header('Location: '.$loc); exit; - } - else - { + } else { $db->rollback(); } } @@ -503,9 +500,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie print ''; $form->select_comptes($accountid, 'accountid', 0, '', 2); print ''; - } - else - { + } else { print ' '; } print "\n"; @@ -560,9 +555,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie if ($facture->type != Facture::TYPE_CREDIT_NOTE) { $sql .= ' AND type IN (0,1,3,5)'; // Standard invoice, replacement, deposit, situation - } - else - { + } else { $sql .= ' AND type = 2'; // If paying back a credit note, we show all credit notes } // Sort invoices by date and serial number: the older one comes first @@ -665,9 +658,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie } print ''; - } - else - { + } else { print ''; } @@ -710,9 +701,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie print img_picto("Auto fill", 'rightarrow', "class='AutoFillAmout' data-rowname='".$namef."' data-value='".($sign * $multicurrency_remaintopay)."'"); print ''; print ''; - } - else - { + } else { print ''; print ''; } @@ -746,9 +735,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie print img_picto("Auto fill", 'rightarrow', "class='AutoFillAmout' data-rowname='".$namef."' data-value='".($sign * $remaintopay)."'"); print ''; print ''; - } - else - { + } else { print ''; print ''; } @@ -803,9 +790,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie //print "\n"; } $db->free($resql); - } - else - { + } else { dol_print_error($db); } diff --git a/htdocs/compta/paiement/card.php b/htdocs/compta/paiement/card.php index 29d6f982d59..4acfd34a53a 100644 --- a/htdocs/compta/paiement/card.php +++ b/htdocs/compta/paiement/card.php @@ -65,9 +65,7 @@ if ($action == 'setnote' && $user->rights->facture->paiement) { $db->commit(); $action = ''; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); $db->rollback(); } @@ -87,15 +85,11 @@ if ($action == 'confirm_delete' && $confirm == 'yes' && $user->rights->facture-> { header("Location: ".$backtopage); exit; - } - else - { + } else { header("Location: list.php"); exit; } - } - else - { + } else { $langs->load("errors"); setEventMessages($object->error, $object->errors, 'errors'); $db->rollback(); @@ -131,9 +125,7 @@ if ($action == 'confirm_valide' && $confirm == 'yes' && $user->rights->facture-> header('Location: '.$_SERVER['PHP_SELF'].'?id='.$object->id); exit; - } - else - { + } else { $langs->load("errors"); setEventMessages($object->error, $object->errors, 'errors'); $db->rollback(); @@ -147,9 +139,7 @@ if ($action == 'setnum_paiement' && !empty($_POST['num_paiement'])) if ($res === 0) { setEventMessages($langs->trans('PaymentNumberUpdateSucceeded'), null, 'mesgs'); - } - else - { + } else { setEventMessages($langs->trans('PaymentNumberUpdateFailed'), null, 'errors'); } } @@ -162,9 +152,7 @@ if ($action == 'setdatep' && !empty($_POST['datepday'])) if ($res === 0) { setEventMessages($langs->trans('PaymentDateUpdateSucceeded'), null, 'mesgs'); - } - else - { + } else { setEventMessages($langs->trans('PaymentDateUpdateFailed'), null, 'errors'); } } @@ -342,7 +330,7 @@ if ($resql) print ''; print ''.$langs->trans('Bill').''; print ''.$langs->trans('Company').''; - if ($conf->global->MULTICOMPANY_INVOICE_SHARING_ENABLED)print ''.$langs->trans('Entity').''; + if (!empty($conf->multicompany->enabled) && !empty($conf->global->MULTICOMPANY_INVOICE_SHARING_ENABLED)) print ''.$langs->trans('Entity').''; print ''.$langs->trans('ExpectedToPay').''; print ''.$langs->trans('PayedByThisPayment').''; print ''.$langs->trans('RemainderToPay').''; @@ -379,7 +367,7 @@ if ($resql) print ''; // Expected to pay - if ($conf->global->MULTICOMPANY_INVOICE_SHARING_ENABLED) { + if (!empty($conf->multicompany->enabled) && !empty($conf->global->MULTICOMPANY_INVOICE_SHARING_ENABLED)) { print ''; $mc->getInfo($objp->entity); print $mc->label; @@ -413,9 +401,7 @@ if ($resql) print ''; $db->free($resql); -} -else -{ +} else { dol_print_error($db); } @@ -445,9 +431,7 @@ if ($user->socid == 0 && $action == '') if (!$disable_delete) { print ''.$langs->trans('Delete').''; - } - else - { + } else { print ''.$langs->trans('Delete').''; } } diff --git a/htdocs/compta/paiement/cheque/card.php b/htdocs/compta/paiement/cheque/card.php index eeb578ad731..4b1c1637c89 100644 --- a/htdocs/compta/paiement/cheque/card.php +++ b/htdocs/compta/paiement/cheque/card.php @@ -79,9 +79,7 @@ if ($action == 'setdate' && $user->rights->banque->cheque) { setEventMessages($object->error, $object->errors, 'errors'); } - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -98,9 +96,7 @@ if ($action == 'setrefext' && $user->rights->banque->cheque) { setEventMessages($object->error, $object->errors, 'errors'); } - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -117,9 +113,7 @@ if ($action == 'setref' && $user->rights->banque->cheque) { setEventMessages($object->error, $object->errors, 'errors'); } - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -149,14 +143,10 @@ if ($action == 'create' && $_POST["accountid"] > 0 && $user->rights->banque->che header("Location: ".$_SERVER["PHP_SELF"]."?id=".$object->id); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } - } - else - { + } else { setEventMessages($langs->trans("ErrorSelectAtLeastOne"), null, 'mesgs'); $action = 'new'; } @@ -170,9 +160,7 @@ if ($action == 'remove' && $id > 0 && $_GET["lineid"] > 0 && $user->rights->banq { header("Location: ".$_SERVER["PHP_SELF"]."?id=".$object->id); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -185,9 +173,7 @@ if ($action == 'confirm_delete' && $confirm == 'yes' && $user->rights->banque->c { header("Location: index.php"); exit; - } - else - { + } else { setEventMessages($paiement->error, $paiement->errors, 'errors'); } } @@ -212,9 +198,7 @@ if ($action == 'confirm_valide' && $confirm == 'yes' && $user->rights->banque->c header("Location: ".$_SERVER["PHP_SELF"]."?id=".$object->id); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -232,9 +216,7 @@ if ($action == 'confirm_reject_check' && $confirm == 'yes' && $user->rights->ban //header("Location: ".DOL_URL_ROOT.'/compta/paiement/card.php?id='.$paiement_id); //exit; $action = ''; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); $action = ''; } @@ -261,15 +243,11 @@ if ($action == 'builddoc' && $user->rights->banque->cheque) { dol_print_error($db, $object->error); exit; - } - else - { + } else { header('Location: '.$_SERVER["PHP_SELF"].'?id='.$object->id.(empty($conf->global->MAIN_JUMP_TAG) ? '' : '#builddoc')); exit; } -} - -// Remove file in doc form +} // Remove file in doc form elseif ($action == 'remove_file' && $user->rights->banque->cheque) { if ($object->fetch($id) > 0) @@ -314,9 +292,7 @@ if ($action == 'new') $h++; print load_fiche_titre($langs->trans("Cheques"), '', 'bank_account'); -} -else -{ +} else { $result = $object->fetch($id, $ref); if ($result < 0) { @@ -509,9 +485,7 @@ if ($action == 'new') if ($paymentstatic->id) { print $paymentstatic->getNomUrl(1); - } - else - { + } else { print ' '; } print ''; @@ -521,9 +495,7 @@ if ($action == 'new') if ($accountlinestatic->rowid) { print $accountlinestatic->getNomUrl(1); - } - else - { + } else { print ' '; } print ''; @@ -543,17 +515,13 @@ if ($action == 'new') if ($user->rights->banque->cheque) { print ''; - } - else - { + } else { print ''.$langs->trans('NewCheckDepositOn', $account_label).''; } print '
'; print ''; } -} -else -{ +} else { $paymentstatic = new Paiement($db); $accountlinestatic = new AccountLine($db); $accountstatic = new Account($db); @@ -587,9 +555,7 @@ else print $form->selectDate($object->date_bordereau, 'datecreate_', '', '', '', "setdate"); print ''; print ''; - } - else - { + } else { print $object->date_bordereau ? dol_print_date($object->date_bordereau, 'day') : ' '; } @@ -699,9 +665,7 @@ else if ($paymentstatic->id) { print $paymentstatic->getNomUrl(1); - } - else - { + } else { print ' '; } print ''; @@ -711,9 +675,7 @@ else if ($accountlinestatic->rowid) { print $accountlinestatic->getNomUrl(1); - } - else - { + } else { print ' '; } print ''; @@ -736,9 +698,7 @@ else $i++; } - } - else - { + } else { print ''; print $langs->trans("None"); print ''; @@ -755,9 +715,7 @@ else } print ""; - } - else - { + } else { dol_print_error($db); } diff --git a/htdocs/compta/paiement/cheque/class/remisecheque.class.php b/htdocs/compta/paiement/cheque/class/remisecheque.class.php index 746065647d5..48c58dc7219 100644 --- a/htdocs/compta/paiement/cheque/class/remisecheque.class.php +++ b/htdocs/compta/paiement/cheque/class/remisecheque.class.php @@ -120,18 +120,14 @@ class RemiseCheque extends CommonObject if ($this->statut == 0) { $this->ref = "(PROV".$this->id.")"; - } - else - { + } else { $this->ref = $obj->ref; } } $this->db->free($resql); return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -227,9 +223,7 @@ class RemiseCheque extends CommonObject array_push($lines, $row[0]); } $this->db->free($resql); - } - else - { + } else { $this->errno = -1026; dol_syslog("RemiseCheque::Create Error ".$this->errno, LOG_ERR); } @@ -269,9 +263,7 @@ class RemiseCheque extends CommonObject dol_syslog("RemiseCheque::Create Error update amount ".$this->errno, LOG_ERR); } } - } - else - { + } else { $this->errno = -1; $this->error = $this->db->lasterror(); $this->errno = $this->db->lasterrno(); @@ -288,9 +280,7 @@ class RemiseCheque extends CommonObject $this->db->commit(); dol_syslog("RemiseCheque::Create end", LOG_DEBUG); return $this->id; - } - else - { + } else { $this->db->rollback(); dol_syslog("RemiseCheque::Create end", LOG_DEBUG); return $this->errno; @@ -341,9 +331,7 @@ class RemiseCheque extends CommonObject if ($this->errno === 0) { $this->db->commit(); - } - else - { + } else { $this->db->rollback(); dol_syslog("RemiseCheque::Delete ROLLBACK ($this->errno)"); } @@ -385,15 +373,11 @@ class RemiseCheque extends CommonObject { $this->ref = $numref; $this->statut = 1; - } - else - { + } else { $this->errno = -1029; dol_syslog("Remisecheque::Validate Error ".$this->errno, LOG_ERR); } - } - else - { + } else { $this->errno = -1033; dol_syslog("Remisecheque::Validate Error ".$this->errno, LOG_ERR); } @@ -404,9 +388,7 @@ class RemiseCheque extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); dol_syslog("RemiseCheque::Validate ".$this->errno, LOG_ERR); return $this->errno; @@ -488,9 +470,7 @@ class RemiseCheque extends CommonObject } return $numref; - } - else - { + } else { $langs->load("errors"); print $langs->trans("Error")." ".$langs->trans("ErrorModuleSetupNotComplete", $langs->transnoentitiesnoconv("Bank")); return ""; @@ -544,9 +524,7 @@ class RemiseCheque extends CommonObject } return $response; - } - else - { + } else { dol_print_error($this->db); $this->error = $this->db->error(); return -1; @@ -584,9 +562,7 @@ class RemiseCheque extends CommonObject } $this->db->free($resql); return 1; - } - else - { + } else { dol_print_error($this->db); $this->error = $this->db->error(); return -1; @@ -664,17 +640,13 @@ class RemiseCheque extends CommonObject { //$outputlangs->charset_output=$sav_charset_output; return 1; - } - else - { + } else { //$outputlangs->charset_output=$sav_charset_output; dol_syslog("Error"); dol_print_error($this->db, $docmodel->error); return 0; } - } - else - { + } else { $this->error = $langs->trans("ErrorFileDoesNotExists", $dir.$file); return -1; } @@ -720,9 +692,7 @@ class RemiseCheque extends CommonObject $this->errno = -1030; dol_syslog("RemiseCheque::updateAmount ERREUR UPDATE ($this->errno)"); } - } - else - { + } else { $this->errno = -1031; dol_syslog("RemiseCheque::updateAmount ERREUR SELECT ($this->errno)"); } @@ -730,9 +700,7 @@ class RemiseCheque extends CommonObject if ($this->errno === 0) { $this->db->commit(); - } - else - { + } else { $this->db->rollback(); dol_syslog("RemiseCheque::updateAmount ROLLBACK ($this->errno)"); } @@ -761,9 +729,7 @@ class RemiseCheque extends CommonObject if ($resql) { $this->updateAmount(); - } - else - { + } else { $this->errno = -1032; dol_syslog("RemiseCheque::removeCheck ERREUR UPDATE ($this->errno)"); } @@ -838,31 +804,23 @@ class RemiseCheque extends CommonObject { $this->db->commit(); return $rejectedPayment->id; - } - else - { + } else { $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = $rejectedPayment->error; $this->errors = $rejectedPayment->errors; $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = $rejectedPayment->error; $this->errors = $rejectedPayment->errors; $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -1; @@ -935,15 +893,11 @@ class RemiseCheque extends CommonObject { $this->date_bordereau = $date; return 1; - } - else - { + } else { $this->error = $this->db->error(); return -1; } - } - else - { + } else { return -2; } } @@ -970,15 +924,11 @@ class RemiseCheque extends CommonObject if ($resql) { return 1; - } - else - { + } else { $this->error = $this->db->error(); return -1; } - } - else - { + } else { return -2; } } @@ -1046,8 +996,7 @@ class RemiseCheque extends CommonObject } $linkclose .= ' title="'.dol_escape_htmltag($label, 1).'"'; $linkclose .= ' class="classfortooltip'.($morecss ? ' '.$morecss : '').'"'; - } - else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); + } else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); $linkstart = ''; diff --git a/htdocs/compta/paiement/cheque/index.php b/htdocs/compta/paiement/cheque/index.php index c85553d59a8..1ee79aeafd9 100644 --- a/htdocs/compta/paiement/cheque/index.php +++ b/htdocs/compta/paiement/cheque/index.php @@ -76,9 +76,7 @@ if ($resql) { print ''.$num.''; print ''; print "\n"; -} -else -{ +} else { dol_print_error($db); } @@ -140,9 +138,7 @@ if ($resql) print ""; $db->free($resql); -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/compta/paiement/cheque/list.php b/htdocs/compta/paiement/cheque/list.php index fe1f7c31050..e76936c71fd 100644 --- a/htdocs/compta/paiement/cheque/list.php +++ b/htdocs/compta/paiement/cheque/list.php @@ -221,9 +221,7 @@ if ($resql) print "\n"; $i++; } - } - else - { + } else { print ''; print ''.$langs->trans("None").""; print ''; @@ -231,9 +229,7 @@ if ($resql) print ""; print ""; print "\n"; -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/compta/paiement/class/cpaiement.class.php b/htdocs/compta/paiement/class/cpaiement.class.php index 5b66dbec15e..d1cd1f0015b 100644 --- a/htdocs/compta/paiement/class/cpaiement.class.php +++ b/htdocs/compta/paiement/class/cpaiement.class.php @@ -185,7 +185,7 @@ class Cpaiement $sql .= ' FROM '.MAIN_DB_PREFIX.$this->table_element.' as t'; if (null !== $ref) { $sql .= ' WHERE t.entity IN ('.getEntity('c_paiement').')'; - $sql .= ' AND t.code = '.'\''.$ref.'\''; + $sql .= " AND t.code = '".$this->db->escape($ref)."'"; } else { $sql .= ' WHERE t.id = '.$id; } diff --git a/htdocs/compta/paiement/class/paiement.class.php b/htdocs/compta/paiement/class/paiement.class.php index 9b0ee645fc7..f57e4408a6f 100644 --- a/htdocs/compta/paiement/class/paiement.class.php +++ b/htdocs/compta/paiement/class/paiement.class.php @@ -200,15 +200,11 @@ class Paiement extends CommonObject $this->db->free($resql); return 1; - } - else - { + } else { $this->db->free($resql); return 0; } - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -242,9 +238,7 @@ class Paiement extends CommonObject { $amounts = &$this->amounts; $amounts_to_update = &$this->multicurrency_amounts; - } - else - { + } else { $amounts = &$this->multicurrency_amounts; $amounts_to_update = &$this->amounts; } @@ -282,9 +276,7 @@ class Paiement extends CommonObject { $total = $totalamount; $mtotal = $totalamount_converted; // Maybe use price2num with MT for the converted value - } - else - { + } else { $total = $totalamount_converted; // Maybe use price2num with MT for the converted value $mtotal = $totalamount; } @@ -340,8 +332,7 @@ class Paiement extends CommonObject if (!in_array($invoice->type, $affected_types)) dol_syslog("Invoice ".$facid." is not a standard, nor replacement invoice, nor credit note, nor deposit invoice, nor situation invoice. We do nothing more."); elseif ($remaintopay) dol_syslog("Remain to pay for invoice ".$facid." not null. We do nothing more."); //else if ($mustwait) dol_syslog("There is ".$mustwait." differed payment to process, we do nothing more."); - else - { + else { // If invoice is a down payment, we also convert down payment to discount if ($invoice->type == Facture::TYPE_DEPOSIT) { @@ -429,15 +420,11 @@ class Paiement extends CommonObject $error++; } } - } - else - { + } else { $this->error = $this->db->lasterror(); $error++; } - } - else - { + } else { dol_syslog(get_class($this).'::Create Amount line '.$key.' not a number. We discard it.'); } } @@ -449,9 +436,7 @@ class Paiement extends CommonObject if ($result < 0) { $error++; } // Fin appel triggers } - } - else - { + } else { $this->error = $this->db->lasterror(); $error++; } @@ -463,9 +448,7 @@ class Paiement extends CommonObject $this->multicurrency_amount = $mtotal; $this->db->commit(); return $this->id; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -501,9 +484,7 @@ class Paiement extends CommonObject $this->db->rollback(); return -1; } - } - else - { + } else { $this->db->rollback(); return -2; } @@ -567,9 +548,7 @@ class Paiement extends CommonObject $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->error; $this->db->rollback(); return -5; @@ -730,9 +709,7 @@ class Paiement extends CommonObject if ($result < 0) { $error++; } // Fin appel triggers } - } - else - { + } else { $this->error = $acc->error; $error++; } @@ -740,9 +717,7 @@ class Paiement extends CommonObject if (!$error) { $this->db->commit(); - } - else - { + } else { $this->db->rollback(); } } @@ -750,9 +725,7 @@ class Paiement extends CommonObject if (!$error) { return $bank_line_id; - } - else - { + } else { return -1; } } @@ -776,9 +749,7 @@ class Paiement extends CommonObject if ($result) { return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); dol_syslog(get_class($this).'::update_fk_bank '.$this->error); return -1; @@ -839,9 +810,7 @@ class Paiement extends CommonObject $this->db->commit(); return 0; - } - else - { + } else { $this->db->rollback(); return -2; } @@ -870,9 +839,7 @@ class Paiement extends CommonObject { $this->num_payment = $this->db->escape($num); return 0; - } - else - { + } else { $this->error = 'Error -1 '.$this->db->error(); return -2; } @@ -895,9 +862,7 @@ class Paiement extends CommonObject if ($result) { return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); dol_syslog(get_class($this).'::valide '.$this->error); return -1; @@ -919,9 +884,7 @@ class Paiement extends CommonObject if ($result) { return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); dol_syslog(get_class($this).'::reject '.$this->error); return -1; @@ -965,9 +928,7 @@ class Paiement extends CommonObject $this->date_modification = $this->db->jdate($obj->tms); } $this->db->free($result); - } - else - { + } else { dol_print_error($this->db); } } @@ -999,9 +960,7 @@ class Paiement extends CommonObject } return $billsarray; - } - else - { + } else { $this->error = $this->db->error(); dol_syslog(get_class($this).'::getBillsArray Error '.$this->error.' -', LOG_DEBUG); return -1; @@ -1033,9 +992,7 @@ class Paiement extends CommonObject } return $amounts; - } - else - { + } else { $this->error = $this->db->error(); dol_syslog(get_class($this).'::getAmountsArray Error '.$this->error.' -', LOG_DEBUG); return -1; @@ -1118,9 +1075,7 @@ class Paiement extends CommonObject } return $numref; - } - else - { + } else { $langs->load("errors"); print $langs->trans("Error")." ".$langs->trans("ErrorModuleSetupNotComplete", $langs->transnoentitiesnoconv("Invoice")); return ""; @@ -1221,8 +1176,7 @@ class Paiement extends CommonObject } $linkclose .= ' title="'.dol_escape_htmltag($label, 1).'"'; $linkclose .= ' class="classfortooltip'.($morecss ? ' '.$morecss : '').'"'; - } - else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); + } else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); $url = DOL_URL_ROOT.'/compta/paiement/card.php?id='.$this->id; diff --git a/htdocs/compta/paiement/list.php b/htdocs/compta/paiement/list.php index 3cb06396c80..eb2523960f3 100644 --- a/htdocs/compta/paiement/list.php +++ b/htdocs/compta/paiement/list.php @@ -129,9 +129,7 @@ if (GETPOST("orphelins", "alpha")) $parameters = array(); $reshook = $hookmanager->executeHooks('printFieldListWhere', $parameters); // Note that $action and $object may have been modified by hook $sql .= $hookmanager->resPrint; -} -else -{ +} else { $sql = "SELECT DISTINCT p.rowid, p.ref, p.datep as dp, p.amount,"; // DISTINCT is to avoid duplicate when there is a link to sales representatives $sql .= " p.statut, p.num_paiement as num_payment,"; $sql .= " c.code as paiement_code,"; @@ -161,7 +159,7 @@ else if ($userid) { if ($userid == -1) $sql .= " AND f.fk_user_author IS NULL"; - else $sql .= " AND f.fk_user_author = ".$userid; + else $sql .= " AND f.fk_user_author = ".$userid; } // Search criteria $sql .= dolSqlDateFilter("p.datep", $day, $month, $year); @@ -215,10 +213,9 @@ if ($resql) print ''; print ''; print ''; - print ''; print ''; - print_barre_liste($langs->trans("ReceivedCustomersPayments"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, '', $num, $nbtotalofrecords, 'invoicing', 0, '', '', $limit); + print_barre_liste($langs->trans("ReceivedCustomersPayments"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, '', $num, $nbtotalofrecords, 'bill', 0, '', '', $limit, 0, 0, 1); print '
'; print ''."\n"; @@ -379,9 +376,7 @@ if ($resql) print "
\n"; print "
"; print "\n"; -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/compta/paiement/rapport.php b/htdocs/compta/paiement/rapport.php index 2fb87440d78..9d3bae3140d 100644 --- a/htdocs/compta/paiement/rapport.php +++ b/htdocs/compta/paiement/rapport.php @@ -2,6 +2,7 @@ /* Copyright (C) 2003-2006 Rodolphe Quiedeville * Copyright (C) 2004-2014 Laurent Destailleur * Copyright (C) 2015 Jean-François Ferry + * Copyright (C) 2020 Maxime DEMAREST * * 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 @@ -26,6 +27,7 @@ require '../../main.inc.php'; require_once DOL_DOCUMENT_ROOT.'/core/modules/rapport/pdf_paiement.class.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php'; require_once DOL_DOCUMENT_ROOT.'/core/class/html.formother.class.php'; // Security check @@ -68,9 +70,7 @@ if ($action == 'builddoc') if ($rap->write_file($dir, $_POST["remonth"], $_POST["reyear"], $outputlangs) > 0) { $outputlangs->charset_output = $sav_charset_output; - } - else - { + } else { $outputlangs->charset_output = $sav_charset_output; dol_print_error($db, $obj->error); } @@ -84,11 +84,12 @@ if ($action == 'builddoc') */ $formother = new FormOther($db); +$formfile = new FormFile($db); llxHeader(); $titre = ($year ? $langs->trans("PaymentsReportsForYear", $year) : $langs->trans("PaymentsReports")); -print load_fiche_titre($titre, '', 'invoicing'); +print load_fiche_titre($titre, '', 'bill'); // Formulaire de generation print '
'; @@ -154,9 +155,11 @@ if ($year) { $tfile = $dir.'/'.$year.'/'.$file; $relativepath = $year.'/'.$file; - print ''.''.img_pdf().' '.$file.''; + print ''; + print ''.img_pdf().' '.$file.''.$formfile->showPreview($file, 'facture_paiement', $relativepath, 0).''; print ''.dol_print_size(dol_filesize($tfile)).''; - print ''.dol_print_date(dol_filemtime($tfile), "dayhour").''; + print ''.dol_print_date(dol_filemtime($tfile), "dayhour").''; + print ''; } } closedir($handle); diff --git a/htdocs/compta/paiement/tovalidate.php b/htdocs/compta/paiement/tovalidate.php index 91ef2c215e6..349c483a5db 100644 --- a/htdocs/compta/paiement/tovalidate.php +++ b/htdocs/compta/paiement/tovalidate.php @@ -126,9 +126,7 @@ if ($resql) if ($objp->statut == 0) { print ''.$langs->trans("PaymentStatusToValidShort").''; - } - else - { + } else { print "-"; } diff --git a/htdocs/compta/paiement_charge.php b/htdocs/compta/paiement_charge.php index 509e20f3613..9c5ceea22bf 100644 --- a/htdocs/compta/paiement_charge.php +++ b/htdocs/compta/paiement_charge.php @@ -141,9 +141,7 @@ if ($action == 'add_payment' || ($action == 'confirm_paiement' && $confirm == 'y $loc = DOL_URL_ROOT.'/compta/sociales/card.php?id='.$chid; header('Location: '.$loc); exit; - } - else - { + } else { $db->rollback(); } } @@ -283,9 +281,7 @@ if ($action == 'create') if ($objp->date_ech > 0) { print ''.dol_print_date($objp->date_ech, 'day').''."\n"; - } - else - { + } else { print "!!!\n"; } @@ -305,9 +301,7 @@ if ($action == 'create') $remaintopay = $objp->amount - $sumpaid; print ''; print ''; - } - else - { + } else { print '-'; } print ""; diff --git a/htdocs/compta/payment_sc/card.php b/htdocs/compta/payment_sc/card.php index bf790bb9a9d..fbe5d926d33 100644 --- a/htdocs/compta/payment_sc/card.php +++ b/htdocs/compta/payment_sc/card.php @@ -66,9 +66,7 @@ if ($action == 'confirm_delete' && $confirm == 'yes' && $user->rights->tax->char $db->commit(); header("Location: ".DOL_URL_ROOT."/compta/sociales/payments.php?mode=sconly"); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); $db->rollback(); } @@ -128,7 +126,7 @@ $form = new Form($db); $h = 0; $head[$h][0] = DOL_URL_ROOT.'/compta/payment_sc/card.php?id='.$id; -$head[$h][1] = $langs->trans("Card"); +$head[$h][1] = $langs->trans("PaymentSocialContribution"); $hselected = $h; $h++; @@ -283,9 +281,7 @@ if ($resql) print "\n"; $db->free($resql); -} -else -{ +} else { dol_print_error($db); } @@ -316,9 +312,7 @@ if ($action == '') if (!$disable_delete) { print ''.$langs->trans('Delete').''; - } - else - { + } else { print ''.$langs->trans('Delete').''; } } diff --git a/htdocs/compta/paymentbybanktransfer/index.php b/htdocs/compta/paymentbybanktransfer/index.php new file mode 100644 index 00000000000..63769e2bd9e --- /dev/null +++ b/htdocs/compta/paymentbybanktransfer/index.php @@ -0,0 +1,228 @@ + + * Copyright (C) 2005-2020 Laurent Destailleur + * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2011 Juanjo Menent + * Copyright (C) 2013 Florian Henry + * + * 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/compta/paymentbybanktransfer/index.php + * \ingroup paymentbybanktransfer + * \brief Payment by bank transfer index page + */ + + +require '../../main.inc.php'; +require_once DOL_DOCUMENT_ROOT.'/compta/prelevement/class/bonprelevement.class.php'; +require_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php'; +require_once DOL_DOCUMENT_ROOT.'/societe/class/societe.class.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/prelevement.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php'; + +// Load translation files required by the page +$langs->loadLangs(array('banks', 'categories', 'withdrawals')); + +// Security check +$socid = GETPOST('socid', 'int'); +if ($user->socid) $socid = $user->socid; +$result = restrictedArea($user, 'paymentbybanktransfer', '', ''); + + +/* + * Actions + */ + + + + +/* + * View + */ + +llxHeader('', $langs->trans("SuppliersStandingOrdersArea")); + +if (prelevement_check_config() < 0) +{ + $langs->load("errors"); + setEventMessages($langs->trans("ErrorModuleSetupNotComplete", $langs->transnoentitiesnoconv("Withdraw")), null, 'errors'); +} + +print load_fiche_titre($langs->trans("SuppliersStandingOrdersArea")); + + +print '
'; + + +$thirdpartystatic = new Societe($db); +$invoicestatic = new Facture($db); +$bprev = new BonPrelevement($db); + +print '
'; +print ''; +print ''; + +print ''; +print ''; + +print ''; +print '
'.$langs->trans("Statistics").'
'.$langs->trans("NbOfInvoiceToWithdraw").''; +print ''; +print $bprev->NbFactureAPrelever(); +print ''; +print '
'.$langs->trans("AmountToWithdraw").''; +print price($bprev->SommeAPrelever(), '', '', 1, -1, -1, 'auto'); +print '

'; + + + +/* + * Invoices waiting for withdraw + */ +$sql = "SELECT f.ref, f.rowid, f.total_ttc, f.fk_statut, f.paye, f.type,"; +$sql .= " pfd.date_demande, pfd.amount,"; +$sql .= " s.nom as name, s.rowid as socid"; +$sql .= " FROM ".MAIN_DB_PREFIX."facture as f,"; +$sql .= " ".MAIN_DB_PREFIX."societe as s"; +if (!$user->rights->societe->client->voir && !$socid) $sql .= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; +$sql .= " , ".MAIN_DB_PREFIX."prelevement_facture_demande as pfd"; +$sql .= " WHERE s.rowid = f.fk_soc"; +$sql .= " AND f.entity IN (".getEntity('invoice').")"; +$sql .= " AND f.total_ttc > 0"; +if (empty($conf->global->WITHDRAWAL_ALLOW_ANY_INVOICE_STATUS)) +{ + $sql .= " AND f.fk_statut = ".Facture::STATUS_VALIDATED; +} +$sql .= " AND pfd.traite = 0 AND pfd.fk_facture_fourn = f.rowid"; +if (!$user->rights->societe->client->voir && !$socid) $sql .= " AND s.rowid = sc.fk_soc AND sc.fk_user = ".$user->id; +if ($socid) $sql .= " AND f.fk_soc = ".$socid; + +$resql = $db->query($sql); +if ($resql) +{ + $num = $db->num_rows($resql); + $i = 0; + + print '
'; + print ''; + print ''; + print ''; + if ($num) + { + while ($i < $num && $i < 20) + { + $obj = $db->fetch_object($resql); + + $invoicestatic->id = $obj->rowid; + $invoicestatic->ref = $obj->ref; + $invoicestatic->statut = $obj->fk_statut; + $invoicestatic->paye = $obj->paye; + $invoicestatic->type = $obj->type; + $alreadypayed = $invoicestatic->getSommePaiement(); + + + print ''; + + print ''; + + print ''; + + print ''; + + print ''; + print ''; + $i++; + } + } else { + print ''; + } + print "
'.$langs->trans("SupplierInvoiceWaitingWithdraw").' ('.$num.')
'; + print $invoicestatic->getNomUrl(1, 'withdraw'); + print ''; + $thirdpartystatic->id = $obj->socid; + $thirdpartystatic->name = $obj->name; + print $thirdpartystatic->getNomUrl(1, 'customer'); + print ''; + print price($obj->amount); + print ''; + print dol_print_date($db->jdate($obj->date_demande), 'day'); + print ''; + print $invoicestatic->getLibStatut(3, $alreadypayed); + print '
'.$langs->trans("NoSupplierInvoiceToWithdraw", $langs->transnoentitiesnoconv("BankTransfer")).'

"; +} else { + dol_print_error($db); +} + + +print '
'; + + +/* + * Withdraw receipts + */ +$limit = 5; +$sql = "SELECT p.rowid, p.ref, p.amount, p.datec, p.statut"; +$sql .= " FROM ".MAIN_DB_PREFIX."prelevement_bons as p"; +$sql .= " ORDER BY datec DESC"; +$sql .= $db->plimit($limit); + +$result = $db->query($sql); +if ($result) +{ + $num = $db->num_rows($result); + $i = 0; + + print"\n\n"; + print '
'; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + + while ($i < min($num, $limit)) + { + $obj = $db->fetch_object($result); + + + print ''; + + print "\n"; + print '\n"; + print '\n"; + print '\n"; + + print "\n"; + $i++; + } + print "
'.$langs->trans("LatestBankTransferReceipts", $limit).''.$langs->trans("Date").''.$langs->trans("Amount").''.$langs->trans("Status").'
"; + $bprev->id = $obj->rowid; + $bprev->ref = $obj->ref; + $bprev->statut = $obj->statut; + print $bprev->getNomUrl(1); + print "'.dol_print_date($db->jdate($obj->datec), "dayhour")."'.price($obj->amount)."'.$bprev->getLibStatut(3)."

"; + $db->free($result); +} else { + dol_print_error($db); +} + + +print '
'; + +// End of page +llxFooter(); +$db->close(); diff --git a/htdocs/compta/prelevement/bons.php b/htdocs/compta/prelevement/bons.php index 935b57e0faa..347b3ebb37f 100644 --- a/htdocs/compta/prelevement/bons.php +++ b/htdocs/compta/prelevement/bons.php @@ -31,12 +31,14 @@ require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php'; // Load translation files required by the page $langs->loadLangs(array('banks', 'categories', 'widthdrawals')); +$contextpage = GETPOST('contextpage', 'aZ') ? GETPOST('contextpage', 'aZ') : 'myobjectlist'; // To manage different context of search + // Security check $socid = GETPOST('socid', 'int'); if ($user->socid) $socid = $user->socid; $result = restrictedArea($user, 'prelevement', '', '', 'bons'); -$limit = GETPOST('limit', 'int') ?GETPOST('limit', 'int') : $conf->liste_limit; +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST('sortfield', 'alpha'); $sortorder = GETPOST('sortorder', 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); @@ -52,7 +54,8 @@ $statut = GETPOST('statut', 'int'); $search_ref = GETPOST('search_ref', 'alpha'); $search_amount = GETPOST('search_amount', 'alpha'); -$bon = new BonPrelevement($db, ""); +$bon = new BonPrelevement($db); +$hookmanager->initHooks(array('withdrawalsreceiptslist')); /* @@ -101,7 +104,10 @@ if ($result) $num = $db->num_rows($result); $i = 0; - $urladd = "&statut=".$statut; + $param = ''; + if (!empty($contextpage) && $contextpage != $_SERVER["PHP_SELF"]) $param .= '&contextpage='.urlencode($contextpage); + if ($limit > 0 && $limit != $conf->liste_limit) $param .= '&limit='.urlencode($limit); + $param .= "&statut=".urlencode($statut); $selectedfields = ''; @@ -119,10 +125,9 @@ if ($result) print ''; print ''; print ''; - print ''; print ''; - print_barre_liste($langs->trans("WithdrawalsReceipts"), $page, $_SERVER["PHP_SELF"], $urladd, $sortfield, $sortorder, '', $num, $nbtotalofrecords, 'generic', 0, $newcardbutton, '', $limit); + print_barre_liste($langs->trans("WithdrawalsReceipts"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, '', $num, $nbtotalofrecords, 'generic', 0, $newcardbutton, '', $limit, 0, 0, 1); $moreforfilter = ''; @@ -141,11 +146,11 @@ if ($result) print ''; print ''; - print_liste_field_titre("WithdrawalsReceipts", $_SERVER["PHP_SELF"], "p.ref", '', '', 'class="liste_titre"', $sortfield, $sortorder); - print_liste_field_titre("Date", $_SERVER["PHP_SELF"], "p.datec", "", "", 'class="liste_titre" align="center"', $sortfield, $sortorder); - print_liste_field_titre("Amount", $_SERVER["PHP_SELF"], "p.amount", "", "", 'class="right"', $sortfield, $sortorder); - print_liste_field_titre("Status", $_SERVER["PHP_SELF"], "", "", "", 'class="right"', $sortfield, $sortorder); - print getTitleFieldOfList($selectedfields, 0, $_SERVER["PHP_SELF"], "", '', '', 'align="center"', $sortfield, $sortorder, 'maxwidthsearch ')."\n"; + print_liste_field_titre("WithdrawalsReceipts", $_SERVER["PHP_SELF"], "p.ref", '', $param, '', $sortfield, $sortorder); + print_liste_field_titre("Date", $_SERVER["PHP_SELF"], "p.datec", "", $param, '', $sortfield, $sortorder, 'center '); + print_liste_field_titre("Amount", $_SERVER["PHP_SELF"], "p.amount", "", $param, '', $sortfield, $sortorder, 'right '); + print_liste_field_titre("Status", $_SERVER["PHP_SELF"], "", "", $param, '', $sortfield, $sortorder, 'right '); + print getTitleFieldOfList($selectedfields, 0, $_SERVER["PHP_SELF"], "", '', $param, '', $sortfield, $sortorder, 'maxwidthsearch center ')."\n"; print "\n"; $directdebitorder = new BonPrelevement($db); @@ -185,9 +190,7 @@ if ($result) print ''; $db->free($result); -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/compta/prelevement/card.php b/htdocs/compta/prelevement/card.php index 68f40999aa7..7d56cec823e 100644 --- a/htdocs/compta/prelevement/card.php +++ b/htdocs/compta/prelevement/card.php @@ -58,13 +58,14 @@ $pagenext = $page + 1; if (!$sortfield) $sortfield = 'pl.fk_soc'; if (!$sortorder) $sortorder = 'DESC'; -$object = new BonPrelevement($db, ""); +$object = new BonPrelevement($db); // Load object include DOL_DOCUMENT_ROOT.'/core/actions_fetchobject.inc.php'; // Must be include, not include_once // Must be include, not include_once. Include fetch and fetch_thirdparty but not fetch_optionals $hookmanager->initHooks(array('directdebitprevcard', 'globalcard', 'directdebitprevlist')); + /* * Actions */ @@ -271,10 +272,6 @@ if ($id > 0 || $ref) print ''.$langs->trans("TransMetod").''; print $form->selectarray("methode", $object->methodes_trans); print ''; - /*print ''.$langs->trans("File").''; - print ''; - print '
'; - print '';*/ print '
'; print '
'; print ''; @@ -321,7 +318,7 @@ if ($id > 0 || $ref) } - $ligne = new LignePrelevement($db, $user); + $ligne = new LignePrelevement($db); /* * Lines into withdraw request @@ -411,9 +408,7 @@ if ($id > 0 || $ref) if ($obj->statut == 3) { print ''.$langs->trans("StatusRefused").''; - } - else - { + } else { print " "; } @@ -445,9 +440,7 @@ if ($id > 0 || $ref) print ''; $db->free($result); - } - else - { + } else { dol_print_error($db); } } diff --git a/htdocs/compta/prelevement/class/bonprelevement.class.php b/htdocs/compta/prelevement/class/bonprelevement.class.php index df1ecf094ca..6192d97d92f 100644 --- a/htdocs/compta/prelevement/class/bonprelevement.class.php +++ b/htdocs/compta/prelevement/class/bonprelevement.class.php @@ -83,18 +83,16 @@ class BonPrelevement extends CommonObject * Constructor * * @param DoliDB $db Database handler - * @param string $filename Filename of withdraw receipt */ - public function __construct($db, $filename = '') + public function __construct($db) { global $conf, $langs; - $error = 0; $this->db = $db; - $this->filename = $filename; + $this->filename = ''; - $this->date_echeance = time(); + $this->date_echeance = dol_now(); $this->raison_sociale = ""; $this->reference_remise = ""; @@ -153,21 +151,15 @@ class BonPrelevement extends CommonObject if ($this->db->query($sql)) { $result = 0; - } - else - { + } else { $result = -1; dol_syslog(get_class($this)."::AddFacture Erreur $result"); } - } - else - { + } else { $result = -2; dol_syslog(get_class($this)."::AddFacture Erreur $result"); } - } - else - { + } else { $result = -3; dol_syslog(get_class($this)."::AddFacture Erreur $result"); } @@ -210,14 +202,10 @@ class BonPrelevement extends CommonObject if ($resql) { $num = $this->db->num_rows($resql); - } - else - { + } else { $result = -1; } - } - else - { + } else { /* * No aggregate */ @@ -245,9 +233,7 @@ class BonPrelevement extends CommonObject { $line_id = $this->db->last_insert_id(MAIN_DB_PREFIX."prelevement_lignes"); $result = 0; - } - else - { + } else { dol_syslog(get_class($this)."::addline Error -2"); $result = -2; } @@ -322,15 +308,11 @@ class BonPrelevement extends CommonObject $this->fetched = 1; return 1; - } - else - { + } else { dol_syslog(get_class($this)."::Fetch Erreur aucune ligne retournee"); return -1; } - } - else - { + } else { return -2; } } @@ -398,17 +380,13 @@ class BonPrelevement extends CommonObject { $this->db->commit(); return 0; - } - else - { + } else { $this->db->rollback(); dol_syslog(get_class($this)."::set_credite ROLLBACK "); return -1; } - } - else - { + } else { dol_syslog(get_class($this)."::set_credite Ouverture transaction SQL impossible "); return -2; } @@ -492,9 +470,7 @@ class BonPrelevement extends CommonObject { dol_syslog(get_class($this)."::set_infocredit AddPayment Error"); $error++; - } - else - { + } else { $result = $paiement->addPaymentToBank($user, 'payment', '(WithdrawalPayment)', $bankaccount, '', ''); if ($result < 0) { @@ -518,9 +494,7 @@ class BonPrelevement extends CommonObject dol_syslog(get_class($this)."::set_infocredit Update lines Error"); $error++; } - } - else - { + } else { dol_syslog(get_class($this)."::set_infocredit Update Bons Error"); $error++; } @@ -535,28 +509,20 @@ class BonPrelevement extends CommonObject $this->db->commit(); return 0; - } - else - { + } else { $this->db->rollback(); dol_syslog("bon-prelevment::set_infocredit ROLLBACK "); return -1; } - } - else - { + } else { dol_syslog(get_class($this)."::set_infocredit 1025 Open SQL transaction impossible "); return -1025; } - } - else - { + } else { dol_syslog("bon-prelevment::set_infocredit 1027 Date de credit < Date de trans "); return -1027; } - } - else - { + } else { return -1026; } } @@ -598,9 +564,7 @@ class BonPrelevement extends CommonObject $message .= $langs->trans("InfoTransData", price($this->amount), $this->methodes_trans[$this->method_trans], dol_print_date($date, 'day')); // TODO Call trigger to create a notification using notification module - } - else - { + } else { $error++; } @@ -611,17 +575,13 @@ class BonPrelevement extends CommonObject $this->db->commit(); return 0; - } - else - { + } else { $this->db->rollback(); dol_syslog(get_class($this)."::set_infotrans ROLLBACK", LOG_ERR); return -1; } - } - else - { + } else { dol_syslog(get_class($this)."::set_infotrans Ouverture transaction SQL impossible", LOG_CRIT); return -2; } @@ -666,8 +626,7 @@ class BonPrelevement extends CommonObject { $row = $this->db->fetch_row($resql); if (!$amounts) $arr[$i] = $row[0]; - else - { + else { $arr[$i] = array( $row[0], $row[1] @@ -677,9 +636,7 @@ class BonPrelevement extends CommonObject } } $this->db->free($resql); - } - else - { + } else { dol_syslog(get_class($this)."::getListInvoices Erreur"); } @@ -716,9 +673,7 @@ class BonPrelevement extends CommonObject $this->db->free($resql); return $obj->nb; - } - else - { + } else { $error = 1; dol_syslog(get_class($this)."::SommeAPrelever Erreur -1"); dol_syslog($this->db->error()); @@ -761,9 +716,7 @@ class BonPrelevement extends CommonObject $this->db->free($resql); return $obj->nb; - } - else - { + } else { $this->error = get_class($this)."::NbFactureAPrelever Erreur -1 sql=".$this->db->error(); return -1; } @@ -850,9 +803,7 @@ class BonPrelevement extends CommonObject } $this->db->free($resql); dol_syslog(__METHOD__."::Read invoices, ".$i." invoices to withdraw", LOG_DEBUG); - } - else - { + } else { $error++; dol_syslog(__METHOD__."::Read invoices error ".$this->db->error(), LOG_ERR); } @@ -892,31 +843,23 @@ class BonPrelevement extends CommonObject if ($bac->verif() >= 1) { $factures_prev[$i] = $fac; - /* second tableau necessaire pour BonPrelevement */ + /* second array necessary for BonPrelevement */ $factures_prev_id[$i] = $fac[0]; $i++; //dol_syslog(__METHOD__."::RIB is ok", LOG_DEBUG); - } - else - { + } else { dol_syslog(__METHOD__."::Check RIB Error on default bank number IBAN/BIC for thirdparty reported by verif() ".$fact->socid." ".$soc->name, LOG_WARNING); $this->invoice_in_error[$fac[0]] = "Error on default bank number IBAN/BIC for invoice ".$fact->getNomUrl(0)." for thirdparty ".$soc->getNomUrl(0); $this->thirdparty_in_error[$soc->id] = "Error on default bank number IBAN/BIC for invoice ".$fact->getNomUrl(0)." for thirdparty ".$soc->getNomUrl(0); } - } - else - { + } else { dol_syslog(__METHOD__."::Check RIB Failed to read company", LOG_WARNING); } - } - else - { + } else { dol_syslog(__METHOD__."::Check RIB Failed to read invoice", LOG_WARNING); } } - } - else - { + } else { dol_syslog(__METHOD__."::Check RIB No invoice to process", LOG_WARNING); } } @@ -942,9 +885,7 @@ class BonPrelevement extends CommonObject if ($mode == 'real') { $ok = 1; - } - else - { + } else { print $langs->trans("ModeWarning"); //"Option for real mode was not set, we stop after this simulation\n"; } } @@ -1001,15 +942,11 @@ class BonPrelevement extends CommonObject $prev_id = $this->db->last_insert_id(MAIN_DB_PREFIX."prelevement_bons"); $this->id = $prev_id; $this->ref = $ref; - } - else - { + } else { $error++; dol_syslog(__METHOD__."::Create withdraw receipt ".$this->db->lasterror(), LOG_ERR); } - } - else - { + } else { $error++; dol_syslog(__METHOD__."::Get last withdraw receipt ".$this->db->lasterror(), LOG_ERR); } @@ -1130,16 +1067,12 @@ class BonPrelevement extends CommonObject if (!$error) { $this->db->commit(); - } - else - { + } else { $this->db->rollback(); } return count($factures_prev); - } - else - { + } else { return 0; } } @@ -1199,9 +1132,7 @@ class BonPrelevement extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -1229,6 +1160,9 @@ class BonPrelevement extends CommonObject $label = ''.$langs->trans("ShowWithdraw").''; $label .= '
'; $label .= ''.$langs->trans('Ref').': '.$this->ref; + if (isset($this->statut)) { + $label .= '
'.$langs->trans("Status").": ".$this->getLibStatut(5); + } $url = DOL_URL_ROOT.'/compta/prelevement/card.php?id='.$this->id; @@ -1257,8 +1191,7 @@ class BonPrelevement extends CommonObject $reshook=$hookmanager->executeHooks('getnomurltooltip',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks if ($reshook > 0) $linkclose = $hookmanager->resPrint; */ - } - else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); + } else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); $linkstart = ''; @@ -1299,9 +1232,7 @@ class BonPrelevement extends CommonObject if ($this->db->query($sql)) { return 0; - } - else - { + } else { return -1; } } @@ -1325,9 +1256,7 @@ class BonPrelevement extends CommonObject if ($this->db->query($sql)) { return 0; - } - else - { + } else { return -1; } } @@ -1357,9 +1286,7 @@ class BonPrelevement extends CommonObject if ($this->db->query($sql)) { $result = 0; - } - else - { + } else { $result = -1; dol_syslog(get_class($this)."::AddNotification Error $result"); } @@ -1462,9 +1389,7 @@ class BonPrelevement extends CommonObject $i++; } $nbtotalDrctDbtTxInf = $i; - } - else - { + } else { fputs($this->file, 'ERROR DEBITOR '.$sql.$CrLf); // DEBITOR = Customers $result = -2; } @@ -1473,9 +1398,7 @@ class BonPrelevement extends CommonObject if ($result != -2) { $fileEmetteurSection .= $this->EnregEmetteurSEPA($conf, $date_actu, $nbtotalDrctDbtTxInf, $this->total, $CrLf, $format); - } - else - { + } else { fputs($this->file, 'ERROR CREDITOR'.$CrLf); // CREDITOR = My company } @@ -1541,9 +1464,7 @@ class BonPrelevement extends CommonObject $this->total = $this->total + $obj->amount; $i++; } - } - else - { + } else { $result = -2; } @@ -1913,9 +1834,7 @@ class BonPrelevement extends CommonObject $XML_SEPA_INFO .= ' '.$CrLf; $XML_SEPA_INFO .= ' '.$CrLf; $XML_SEPA_INFO .= ' '.$CrLf; - } - else - { + } else { fputs($this->file, 'INCORRECT EMETTEUR '.$XML_SEPA_INFO.$CrLf); $result = -2; } diff --git a/htdocs/compta/prelevement/class/ligneprelevement.class.php b/htdocs/compta/prelevement/class/ligneprelevement.class.php index dd24ad9522c..1e731b24524 100644 --- a/htdocs/compta/prelevement/class/ligneprelevement.class.php +++ b/htdocs/compta/prelevement/class/ligneprelevement.class.php @@ -48,14 +48,12 @@ class LignePrelevement * Constructor * * @param DoliDb $db Database handler - * @param User $user Objet user */ - public function __construct($db, $user) + public function __construct($db) { global $conf, $langs; $this->db = $db; - $this->user = $user; // List of language codes for status @@ -98,17 +96,13 @@ class LignePrelevement $this->statut = $obj->statut; $this->bon_ref = $obj->ref; $this->bon_rowid = $obj->bon_rowid; - } - else - { + } else { $result++; dol_syslog("LignePrelevement::Fetch rowid=$rowid numrows=0"); } $this->db->free($resql); - } - else - { + } else { $result++; dol_syslog("LignePrelevement::Fetch rowid=$rowid"); dol_syslog($this->db->error()); @@ -144,20 +138,17 @@ class LignePrelevement if ($mode == 0) { return $langs->trans($this->statuts[$status]); - } - elseif ($mode == 1) + } elseif ($mode == 1) { if ($status == 0) return img_picto($langs->trans($this->statuts[$status]), 'statut1').' '.$langs->trans($this->statuts[$status]); // Waiting elseif ($status == 2) return img_picto($langs->trans($this->statuts[$status]), 'statut6').' '.$langs->trans($this->statuts[$status]); // Credited elseif ($status == 3) return img_picto($langs->trans($this->statuts[$status]), 'statut8').' '.$langs->trans($this->statuts[$status]); // Refused - } - elseif ($mode == 2) + } elseif ($mode == 2) { if ($status == 0) return img_picto($langs->trans($this->statuts[$status]), 'statut1'); elseif ($status == 2) return img_picto($langs->trans($this->statuts[$status]), 'statut6'); elseif ($status == 3) return img_picto($langs->trans($this->statuts[$status]), 'statut8'); - } - elseif ($mode == 3) + } elseif ($mode == 3) { if ($status == 0) return $langs->trans($this->statuts[$status]).' '.img_picto($langs->trans($this->statuts[$status]), 'statut1'); elseif ($status == 2) return $langs->trans($this->statuts[$status]).' '.img_picto($langs->trans($this->statuts[$status]), 'statut6'); diff --git a/htdocs/compta/prelevement/class/rejetprelevement.class.php b/htdocs/compta/prelevement/class/rejetprelevement.class.php index 74626baed13..8599987fb23 100644 --- a/htdocs/compta/prelevement/class/rejetprelevement.class.php +++ b/htdocs/compta/prelevement/class/rejetprelevement.class.php @@ -160,9 +160,7 @@ class RejetPrelevement { $error++; dol_syslog("RejetPrelevement::Create Error creation payment invoice ".$facs[$i][0]); - } - else - { + } else { $result = $pai->addPaymentToBank($user, 'payment', '(InvoiceRefused)', $bankaccount, '', ''); if ($result < 0) { @@ -191,9 +189,7 @@ class RejetPrelevement { dol_syslog("RejetPrelevement::Create Commit"); $this->db->commit(); - } - else - { + } else { dol_syslog("RejetPrelevement::Create Rollback"); $this->db->rollback(); } @@ -227,9 +223,7 @@ class RejetPrelevement $row = $this->db->fetch_row($resql); $userid = $row[0]; } - } - else - { + } else { dol_syslog("RejetPrelevement::_send_email Erreur lecture user"); } @@ -247,6 +241,7 @@ class RejetPrelevement $sendto = $emuser->getFullName($langs)." <".$emuser->email.">"; $from = $this->user->getFullName($langs)." <".$this->user->email.">"; $msgishtml = 1; + $trackid = 'use'.$emuser->id; $arr_file = array(); $arr_mime = array(); @@ -258,20 +253,16 @@ class RejetPrelevement $message = $langs->trans("InfoRejectMessage", $facref, $socname, $amount, $userinfo); - $mailfile = new CMailFile($subject, $sendto, $from, $message, $arr_file, $arr_mime, $arr_name, '', '', 0, $msgishtml, $this->user->email); + $mailfile = new CMailFile($subject, $sendto, $from, $message, $arr_file, $arr_mime, $arr_name, '', '', 0, $msgishtml, $this->user->email, '', $trackid); $result = $mailfile->sendfile(); if ($result) { dol_syslog("RejetPrelevement::_send_email email envoye"); - } - else - { + } else { dol_syslog("RejetPrelevement::_send_email Erreur envoi email"); } - } - else - { + } else { dol_syslog("RejetPrelevement::_send_email Userid invalide"); } } @@ -309,8 +300,7 @@ class RejetPrelevement { $row = $this->db->fetch_row($resql); if (!$amounts) $arr[$i] = $row[0]; - else - { + else { $arr[$i] = array( $row[0], $row[1] @@ -320,9 +310,7 @@ class RejetPrelevement } } $this->db->free($resql); - } - else - { + } else { dol_syslog("getListInvoices", LOG_ERR); } @@ -357,15 +345,11 @@ class RejetPrelevement $this->db->free($resql); return 0; - } - else - { + } else { dol_syslog("RejetPrelevement::Fetch Erreur rowid=$rowid numrows=0"); return -1; } - } - else - { + } else { dol_syslog("RejetPrelevement::Fetch Erreur rowid=$rowid"); return -2; } diff --git a/htdocs/compta/prelevement/create.php b/htdocs/compta/prelevement/create.php index 45c413efb76..015380a669d 100644 --- a/htdocs/compta/prelevement/create.php +++ b/htdocs/compta/prelevement/create.php @@ -83,8 +83,7 @@ if (empty($reshook)) if ($result < 0) { setEventMessages($bprev->error, $bprev->errors, 'errors'); - } - elseif ($result == 0) + } elseif ($result == 0) { $mesg = $langs->trans("NoInvoiceCouldBeWithdrawed", $format); setEventMessages($mesg, null, 'errors'); @@ -93,9 +92,7 @@ if (empty($reshook)) { $mesg .= ''.$val."
\n"; } - } - else - { + } else { setEventMessages($langs->trans("DirectDebitOrderCreated", $bprev->getNomUrl(1)), null); } } @@ -174,22 +171,16 @@ if ($nb) { } else { print '
'.$langs->trans("CreateAll")."\n"; } - } - else - { + } else { if ($mysoc->isInEEC()) { print ''.$langs->trans("CreateForSepaFRST")."\n"; print ''.$langs->trans("CreateForSepaRCUR")."\n"; - } - else - { + } else { print ''.$langs->trans("CreateAll")."\n"; } } -} -else -{ +} else { print 'transnoentitiesnoconv("StandingOrders"))).'">'.$langs->trans("CreateAll")."\n"; } @@ -252,7 +243,7 @@ if ($resql) print ''; } - print_barre_liste($langs->trans("InvoiceWaitingWithdraw"), $page, $_SERVER['PHP_SELF'], $param, '', '', '', $num, $nbtotalofrecords, 'invoicing', 0, '', '', $limit); + print_barre_liste($langs->trans("InvoiceWaitingWithdraw"), $page, $_SERVER['PHP_SELF'], $param, '', '', '', $num, $nbtotalofrecords, 'bill', 0, '', '', $limit); print ''; print ''; @@ -307,17 +298,13 @@ if ($resql) print ''; $i++; } - } - else - { + } else { print ''; } print "
'.$langs->trans("None").'
"; print ""; print "
\n"; -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/compta/prelevement/demandes.php b/htdocs/compta/prelevement/demandes.php index 181f71a678c..30618de8c24 100644 --- a/htdocs/compta/prelevement/demandes.php +++ b/htdocs/compta/prelevement/demandes.php @@ -88,9 +88,7 @@ if (GETPOST('button_removefilter_x', 'alpha') || GETPOST('button_removefilter.x' if (!$status) { $title = $langs->trans("RequestStandingOrderToTreat"); -} -else -{ +} else { $title = $langs->trans("RequestStandingOrderTreated"); } @@ -142,9 +140,7 @@ if (empty($conf->global->MAIN_DISABLE_FULL_SCANLIST)) if (is_numeric($nbtotalofrecords) && $limit > $nbtotalofrecords) { $num = $nbtotalofrecords; -} -else -{ +} else { $sql .= $db->plimit($limit + 1, $offset); $resql = $db->query($sql); diff --git a/htdocs/compta/prelevement/factures.php b/htdocs/compta/prelevement/factures.php index ec004717946..c0fa4f55e68 100644 --- a/htdocs/compta/prelevement/factures.php +++ b/htdocs/compta/prelevement/factures.php @@ -53,7 +53,7 @@ $pagenext = $page + 1; if (!$sortfield) $sortfield = 'p.ref'; if (!$sortorder) $sortorder = 'DESC'; -$object = new BonPrelevement($db, ""); +$object = new BonPrelevement($db); @@ -134,9 +134,7 @@ if ($prev_id > 0 || $ref) print ''; dol_fiche_end(); - } - else - { + } else { dol_print_error($db); } } @@ -246,12 +244,10 @@ if ($result) if ($obj->statut == 0) { print '-'; - } - elseif ($obj->statut == 2) + } elseif ($obj->statut == 2) { print $langs->trans("StatusCredited"); - } - elseif ($obj->statut == 3) + } elseif ($obj->statut == 3) { print ''.$langs->trans("StatusRefused").''; } @@ -289,9 +285,7 @@ if ($result) print ''; $db->free($result); -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/compta/prelevement/fiche-rejet.php b/htdocs/compta/prelevement/fiche-rejet.php index 44be3d1cd01..65116878bb9 100644 --- a/htdocs/compta/prelevement/fiche-rejet.php +++ b/htdocs/compta/prelevement/fiche-rejet.php @@ -51,7 +51,7 @@ $offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; -$object = new BonPrelevement($db, ""); +$object = new BonPrelevement($db); @@ -135,9 +135,7 @@ if ($prev_id > 0 || $ref) print ''; dol_fiche_end(); - } - else - { + } else { dol_print_error($db); } } @@ -220,9 +218,7 @@ if ($resql) $i++; } - } - else - { + } else { print ''.$langs->trans("None").''; } @@ -238,9 +234,7 @@ if ($resql) print ''; $db->free($resql); -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/compta/prelevement/fiche-stat.php b/htdocs/compta/prelevement/fiche-stat.php index 6e8e8390ae8..0ada15853d9 100644 --- a/htdocs/compta/prelevement/fiche-stat.php +++ b/htdocs/compta/prelevement/fiche-stat.php @@ -50,7 +50,7 @@ $pageprev = $page - 1; $pagenext = $page + 1; -$object = new BonPrelevement($db, ""); +$object = new BonPrelevement($db); /* @@ -132,9 +132,7 @@ if ($prev_id > 0 || $ref) print ''; dol_fiche_end(); - } - else - { + } else { $langs->load("errors"); print $langs->trans("Error"); } @@ -142,7 +140,7 @@ if ($prev_id > 0 || $ref) /* * Stats */ - $ligne = new LignePrelevement($db, $user); + $ligne = new LignePrelevement($db); $sql = "SELECT sum(pl.amount), pl.statut"; $sql .= " FROM ".MAIN_DB_PREFIX."prelevement_lignes as pl"; @@ -185,9 +183,7 @@ if ($prev_id > 0 || $ref) print ""; $db->free($resql); - } - else - { + } else { print $db->error().' '.$sql; } } diff --git a/htdocs/compta/prelevement/index.php b/htdocs/compta/prelevement/index.php index eb2932fd4cb..d182176f0fa 100644 --- a/htdocs/compta/prelevement/index.php +++ b/htdocs/compta/prelevement/index.php @@ -158,15 +158,11 @@ if ($resql) print ''; $i++; } - } - else - { + } else { print ''.$langs->trans("NoInvoiceToWithdraw", $langs->transnoentitiesnoconv("StandingOrders")).''; } print "
"; -} -else -{ +} else { dol_print_error($db); } @@ -220,9 +216,7 @@ if ($result) } print "
"; $db->free($result); -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/compta/prelevement/line.php b/htdocs/compta/prelevement/line.php index 19ba5892474..fd77d6d90f6 100644 --- a/htdocs/compta/prelevement/line.php +++ b/htdocs/compta/prelevement/line.php @@ -43,9 +43,22 @@ $action = GETPOST('action', 'alpha'); $id = GETPOST('id', 'int'); $socid = GETPOST('socid', 'int'); -$page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortorder = GETPOST('sortorder', 'alpha'); $sortfield = GETPOST('sortfield', 'alpha'); +$page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); +if ($page == -1 || $page == null) { $page = 0; } +$offset = $limit * $page; +$pageprev = $page - 1; +$pagenext = $page + 1; + +if ($sortorder == "") $sortorder = "DESC"; +if ($sortfield == "") $sortfield = "pl.fk_soc"; + + +/* + * Actions + */ if ($action == 'confirm_rejet') { @@ -60,9 +73,7 @@ if ($action == 'confirm_rejet') { $error++; setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("Date")), null, 'errors'); - } - - elseif ($daterej > dol_now()) + } elseif ($daterej > dol_now()) { $error++; $langs->load("error"); @@ -77,7 +88,7 @@ if ($action == 'confirm_rejet') if (!$error) { - $lipre = new LignePrelevement($db, $user); + $lipre = new LignePrelevement($db); if ($lipre->fetch($id) == 0) @@ -89,14 +100,10 @@ if ($action == 'confirm_rejet') header("Location: line.php?id=".$id); exit; } - } - else - { + } else { $action = "rejet"; } - } - else - { + } else { header("Location: line.php?id=".$id); exit; } @@ -113,13 +120,13 @@ llxHeader('', $langs->trans("StandingOrder")); $h = 0; $head[$h][0] = DOL_URL_ROOT.'/compta/prelevement/line.php?id='.$id; -$head[$h][1] = $langs->trans("Card"); +$head[$h][1] = $langs->trans("StandingOrder"); $hselected = $h; $h++; if ($id) { - $lipre = new LignePrelevement($db, $user); + $lipre = new LignePrelevement($db); if ($lipre->fetch($id) == 0) { @@ -148,25 +155,19 @@ if ($id) { /* Historique pour certaines install */ print $langs->trans("Unknown"); - } - else - { + } else { print dol_print_date($rej->date_rejet, 'day'); } print ''; print ''.$langs->trans("RefusedInvoicing").''.$rej->invoicing.''; - } - else - { + } else { print ''.$resf.''; } } print ''; dol_fiche_end(); - } - else - { + } else { dol_print_error($db); } @@ -232,31 +233,16 @@ if ($id) if ($user->rights->prelevement->bons->credit) { print "id\">".$langs->trans("StandingOrderReject").""; - } - else - { + } else { print "trans("NotAllowed")."\">".$langs->trans("StandingOrderReject").""; } - } - else - { + } else { print "trans("NotPossibleForThisStatusOfWithdrawReceiptORLine")."\">".$langs->trans("StandingOrderReject").""; } } print ""; - - - if ($page == -1 || $page == null) { $page = 0; } - - $offset = $conf->liste_limit * $page; - $pageprev = $page - 1; - $pagenext = $page + 1; - - if ($sortorder == "") $sortorder = "DESC"; - if ($sortfield == "") $sortfield = "pl.fk_soc"; - /* * List of invoices */ @@ -327,9 +313,7 @@ if ($id) print ""; $db->free($result); - } - else - { + } else { dol_print_error($db); } } diff --git a/htdocs/compta/prelevement/list.php b/htdocs/compta/prelevement/list.php index bbac6c6232e..3130aa475f6 100644 --- a/htdocs/compta/prelevement/list.php +++ b/htdocs/compta/prelevement/list.php @@ -32,12 +32,21 @@ require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php'; // Load translation files required by the page $langs->loadLangs(array('banks', 'withdrawals', 'companies', 'categories')); +$action = GETPOST('action', 'aZ09') ?GETPOST('action', 'aZ09') : 'view'; // The action 'add', 'create', 'edit', 'update', 'view', ... +$massaction = GETPOST('massaction', 'alpha'); // The bulk action (combo box choice into lists) +$show_files = GETPOST('show_files', 'int'); // Show files area generated by bulk actions ? +$confirm = GETPOST('confirm', 'alpha'); // Result of a confirmation +$cancel = GETPOST('cancel', 'alpha'); // We click on a Cancel button +$toselect = GETPOST('toselect', 'array'); // Array of ids of elements selected into a list +$contextpage = GETPOST('contextpage', 'aZ') ? GETPOST('contextpage', 'aZ') : 'myobjectlist'; // To manage different context of search +$backtopage = GETPOST('backtopage', 'alpha'); // Go back to a dedicated page +$optioncss = GETPOST('optioncss', 'aZ'); // Option for the css output (always '' except when 'print') + // Security check $socid = GETPOST('socid', 'int'); if ($user->socid) $socid=$user->socid; $result = restrictedArea($user, 'prelevement', '', '', 'bons'); - $limit = GETPOST('limit', 'int')?GETPOST('limit', 'int'):$conf->liste_limit; $sortfield = GETPOST('sortfield', 'alpha'); $sortorder = GETPOST('sortorder', 'alpha'); @@ -55,8 +64,11 @@ $search_code = GETPOST('search_code', 'alpha'); $search_company = GETPOST('search_company', 'alpha'); $statut = GETPOST('statut', 'int'); -$bon = new BonPrelevement($db, ""); -$ligne = new LignePrelevement($db, $user); +$bon = new BonPrelevement($db); +$line = new LignePrelevement($db); +$company = new Societe($db); + +$hookmanager->initHooks(array('withdrawalsreceiptslineslist')); /* @@ -81,9 +93,9 @@ $form = new Form($db); llxHeader('', $langs->trans("WithdrawalsLines")); -$sql = "SELECT p.rowid, p.ref, p.statut, p.datec"; -$sql .= " ,f.rowid as facid, f.ref, f.total_ttc"; -$sql .= " , s.rowid as socid, s.nom as name, s.code_client"; +$sql = "SELECT p.rowid, p.ref, p.statut as status, p.datec"; +$sql .= " ,f.rowid as facid, f.ref as invoiceref, f.total_ttc"; +$sql .= " , s.rowid as socid, s.nom as name, s.code_client, s.email"; $sql .= " , pl.amount, pl.statut as statut_ligne, pl.rowid as rowid_ligne"; $sql .= " FROM ".MAIN_DB_PREFIX."prelevement_bons as p"; $sql .= " , ".MAIN_DB_PREFIX."prelevement_lignes as pl"; @@ -124,14 +136,21 @@ if ($result) $num = $db->num_rows($result); $i = 0; - $urladd = "&statut=".$statut; - $urladd .= "&search_bon=".$search_bon; - if ($limit > 0 && $limit != $conf->liste_limit) $urladd .= '&limit='.urlencode($limit); + $param = "&statut=".urlencode($statut); + $param .= "&search_bon=".urlencode($search_bon); + if ($limit > 0 && $limit != $conf->liste_limit) $param .= '&limit='.urlencode($limit); print"\n\n"; - print '
'; + print ''."\n"; + if ($optioncss != '') print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; - print_barre_liste($langs->trans("WithdrawalsLines"), $page, $_SERVER["PHP_SELF"], $urladd, $sortfield, $sortorder, '', $num, $nbtotalofrecords, 'generic', 0, '', '', $limit); + print_barre_liste($langs->trans("WithdrawalsLines"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, '', $num, $nbtotalofrecords, 'generic', 0, '', '', $limit, 0, 0, 1); $moreforfilter = ''; @@ -153,13 +172,13 @@ if ($result) print ''; print ''; - print_liste_field_titre("Line", $_SERVER["PHP_SELF"]); - print_liste_field_titre("WithdrawalsReceipts", $_SERVER["PHP_SELF"], "p.ref"); - print_liste_field_titre("Bill", $_SERVER["PHP_SELF"], "f.ref", '', $urladd); - print_liste_field_titre("Company", $_SERVER["PHP_SELF"], "s.nom"); - print_liste_field_titre("CustomerCode", $_SERVER["PHP_SELF"], "s.code_client", '', '', 'align="center"'); - print_liste_field_titre("Date", $_SERVER["PHP_SELF"], "p.datec", "", "", 'align="center"'); - print_liste_field_titre("Amount", $_SERVER["PHP_SELF"], "pl.amount", "", "", 'class="right"'); + print_liste_field_titre("Line", $_SERVER["PHP_SELF"], '', '', $param, '', $sortfield, $sortorder); + print_liste_field_titre("WithdrawalsReceipts", $_SERVER["PHP_SELF"], "p.ref", '', $param, '', $sortfield, $sortorder); + print_liste_field_titre("Bill", $_SERVER["PHP_SELF"], "f.ref", '', $param, '', $sortfield, $sortorder); + print_liste_field_titre("Company", $_SERVER["PHP_SELF"], "s.nom", '', $param, '', $sortfield, $sortorder); + print_liste_field_titre("CustomerCode", $_SERVER["PHP_SELF"], "s.code_client", '', $param, '', $sortfield, $sortorder, 'center '); + print_liste_field_titre("Date", $_SERVER["PHP_SELF"], "p.datec", "", $param, '', $sortfield, $sortorder, 'center '); + print_liste_field_titre("Amount", $_SERVER["PHP_SELF"], "pl.amount", "", $param, '', $sortfield, $sortorder, 'right '); print_liste_field_titre(''); print "\n"; @@ -167,28 +186,37 @@ if ($result) { $obj = $db->fetch_object($result); - print ''; + $bon->ref = $obj->ref; + $bon->statut = $obj->status; - print $ligne->LibStatut($obj->statut_ligne, 2); + $company->id = $obj->socid; + $company->name = $obj->name; + $company->email = $obj->email; + $company->code_client = $obj->code_client; + + print ''; + + print ''; + print $line->LibStatut($obj->statut_ligne, 2); print " "; - print ''; print substr('000000'.$obj->rowid_ligne, -6); print ''; print ''; + print $bon->getNomUrl(1); + print "\n"; - print $bon->LibStatut($obj->statut, 2); - print " "; - - print ''.$obj->ref."\n"; - - print ''; + print ''; + print ''; print img_object($langs->trans("ShowBill"), "bill"); - print ' '.$obj->ref."\n"; - print ''; + print ' '.$obj->invoiceref."\n"; + print ''; + print ''; - print ''.$obj->name."\n"; + print ''; + print $company->getNomUrl(1); + print "\n"; print ''.$obj->code_client."\n"; @@ -207,9 +235,7 @@ if ($result) print '
'; $db->free($result); -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/compta/prelevement/rejets.php b/htdocs/compta/prelevement/rejets.php index 1bc2a1844e2..61417a2cd5f 100644 --- a/htdocs/compta/prelevement/rejets.php +++ b/htdocs/compta/prelevement/rejets.php @@ -39,25 +39,28 @@ if ($user->socid) $socid = $user->socid; $result = restrictedArea($user, 'prelevement', '', '', 'bons'); // Get supervariables -$page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortorder = GETPOST('sortorder', 'alpha'); $sortfield = GETPOST('sortfield', 'alpha'); - +$page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); +if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 +$offset = $limit * $page; +$pageprev = $page - 1; +$pagenext = $page + 1; /* * View */ llxHeader('', $langs->trans("WithdrawsRefused")); -$offset = $conf->liste_limit * $page; -$pageprev = $page - 1; -$pagenext = $page + 1; - if ($sortorder == "") $sortorder = "DESC"; if ($sortfield == "") $sortfield = "p.datec"; $rej = new RejetPrelevement($db, $user); -$ligne = new LignePrelevement($db, $user); +$line = new LignePrelevement($db); + +$hookmanager->initHooks(array('withdrawalsreceiptsrejectedlist')); + /* * Liste des factures @@ -85,7 +88,7 @@ if ($result) print_barre_liste($langs->trans("WithdrawsRefused"), $page, $_SERVER["PHP_SELF"], $urladd, $sortfield, $sortorder, '', $num); print"\n\n"; - print ''; + print '
'; print ''; print_liste_field_titre("Line", $_SERVER["PHP_SELF"], "p.ref", '', $urladd); print_liste_field_titre("ThirdParty", $_SERVER["PHP_SELF"], "s.nom", '', $urladd); @@ -99,7 +102,7 @@ if ($result) $obj = $db->fetch_object($result); print '"; @@ -114,9 +117,7 @@ if ($result) print "
'; - print $ligne->LibStatut($obj->statut, 2).' '; + print $line->LibStatut($obj->statut, 2).' '; print ''; print substr('000000'.$obj->rowid, -6)."
"; $db->free($result); -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/compta/prelevement/stats.php b/htdocs/compta/prelevement/stats.php index c19603df967..b12a6a2bb35 100644 --- a/htdocs/compta/prelevement/stats.php +++ b/htdocs/compta/prelevement/stats.php @@ -73,7 +73,7 @@ if ($resql) print '
'; print load_fiche_titre($langs->trans("WithdrawStatistics"), '', ''); -$ligne = new LignePrelevement($db, $user); +$ligne = new LignePrelevement($db); $sql = "SELECT sum(pl.amount), count(pl.amount), pl.statut"; $sql .= " FROM ".MAIN_DB_PREFIX."prelevement_lignes as pl"; @@ -125,9 +125,7 @@ if ($resql) print ' '; print ""; $db->free(); -} -else -{ +} else { dol_print_error($db); } @@ -219,9 +217,7 @@ if ($resql) print ' '; print ""; $db->free($resql); -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/compta/recap-compta.php b/htdocs/compta/recap-compta.php index 3f2112537b1..8b75ec38fce 100644 --- a/htdocs/compta/recap-compta.php +++ b/htdocs/compta/recap-compta.php @@ -211,15 +211,11 @@ if ($id > 0) } $db->free($resqlp); - } - else - { + } else { dol_print_error($db); } } - } - else - { + } else { dol_print_error($db); } @@ -288,9 +284,7 @@ if ($id > 0) print ""; } -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/compta/resultat/clientfourn.php b/htdocs/compta/resultat/clientfourn.php index 17d2becfc19..671921506d5 100644 --- a/htdocs/compta/resultat/clientfourn.php +++ b/htdocs/compta/resultat/clientfourn.php @@ -8,6 +8,7 @@ * Copyright (C) 2014 Juanjo Menent * Copyright (C) 2014 Florian Henry * Copyright (C) 2018 Frédéric France + * Copyright (C) 2020 Maxime DEMAREST * * 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 @@ -38,7 +39,7 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php'; require_once DOL_DOCUMENT_ROOT.'/accountancy/class/accountancycategory.class.php'; // Load translation files required by the page -$langs->loadLangs(array('compta', 'bills', 'donation', 'salaries', 'accountancy')); +$langs->loadLangs(array('compta', 'bills', 'donation', 'salaries', 'accountancy', 'loan')); $date_startmonth = GETPOST('date_startmonth', 'int'); $date_startday = GETPOST('date_startday', 'int'); @@ -98,8 +99,7 @@ if (empty($date_start) || empty($date_end)) // We define date_start and date_end $month_end = $month_start - 1; if ($month_end < 1) $month_end = 12; else $year_end++; - } - else $month_end = $month_start; + } else $month_end = $month_start; $date_start = dol_get_first_day($year_start, $month_start, false); $date_end = dol_get_last_day($year_end, $month_end, false); } if ($q == 1) { $date_start = dol_get_first_day($year_start, 1, false); $date_end = dol_get_last_day($year_start, 3, false); } @@ -150,11 +150,10 @@ if ($modecompta == "CREANCES-DETTES") $periodlink = ($year_start ? "".img_previous()." ".img_next()."" : ""); $description = $langs->trans("RulesResultDue"); if (!empty($conf->global->FACTURE_DEPOSITS_ARE_JUST_PAYMENTS)) $description .= $langs->trans("DepositsAreNotIncluded"); - else $description .= $langs->trans("DepositsAreIncluded"); + else $description .= $langs->trans("DepositsAreIncluded"); $builddate = dol_now(); //$exportlink=$langs->trans("NotYetAvailable"); -} -elseif ($modecompta == "RECETTES-DEPENSES") +} elseif ($modecompta == "RECETTES-DEPENSES") { $name = $langs->trans("ReportInOut").', '.$langs->trans("ByPredefinedAccountGroups"); $calcmode = $langs->trans("CalcModeEngagement"); @@ -165,8 +164,7 @@ elseif ($modecompta == "RECETTES-DEPENSES") $description = $langs->trans("RulesResultInOut"); $builddate = dol_now(); //$exportlink=$langs->trans("NotYetAvailable"); -} -elseif ($modecompta == "BOOKKEEPING") +} elseif ($modecompta == "BOOKKEEPING") { $name = $langs->trans("ReportInOut").', '.$langs->trans("ByPredefinedAccountGroups"); $calcmode = $langs->trans("CalcModeBookkeeping"); @@ -211,9 +209,7 @@ print_liste_field_titre(''); if ($modecompta == 'BOOKKEEPING') { print_liste_field_titre("Amount", $_SERVER["PHP_SELF"], 'amount', '', $param, 'class="right"', $sortfield, $sortorder); -} -else -{ +} else { if ($modecompta == 'CREANCES-DETTES') { print_liste_field_titre("AmountHT", $_SERVER["PHP_SELF"], 'amount_ht', '', $param, 'class="right"', $sortfield, $sortorder); @@ -227,17 +223,15 @@ print "\n"; if ($modecompta == 'BOOKKEEPING') { $predefinedgroupwhere = "("; - //$predefinedgroupwhere.= " (pcg_type = 'EXPENSE' and pcg_subtype in ('PRODUCT','SERVICE'))"; $predefinedgroupwhere .= " (pcg_type = 'EXPENSE')"; $predefinedgroupwhere .= " OR "; - //$predefinedgroupwhere.= " (pcg_type = 'INCOME' and pcg_subtype in ('PRODUCT','SERVICE'))"; $predefinedgroupwhere .= " (pcg_type = 'INCOME')"; $predefinedgroupwhere .= ")"; $charofaccountstring = $conf->global->CHARTOFACCOUNTS; $charofaccountstring = dol_getIdFromCode($db, $conf->global->CHARTOFACCOUNTS, 'accounting_system', 'rowid', 'pcg_version'); - $sql = "SELECT f.thirdparty_code as name, -1 as socid, aa.pcg_type, aa.pcg_subtype, sum(f.credit - f.debit) as amount"; + $sql = "SELECT f.thirdparty_code as name, -1 as socid, aa.pcg_type, SUM(f.credit - f.debit) as amount"; $sql .= " FROM ".MAIN_DB_PREFIX."accounting_bookkeeping as f"; $sql .= ", ".MAIN_DB_PREFIX."accounting_account as aa"; $sql .= " WHERE f.numero_compte = aa.account_number"; @@ -271,7 +265,7 @@ if ($modecompta == 'BOOKKEEPING') print ''; print ' '; - print ''.$objp->pcg_type.($objp->pcg_subtype != 'XXXXXX' ? ' - '.$objp->pcg_subtype : '').($objp->name ? ' ('.$objp->name.')' : '')."\n"; + print ''.$objp->pcg_type.($objp->name ? ' ('.$objp->name.')' : '')."\n"; print ''.price($objp->amount)."\n"; print "\n"; @@ -282,7 +276,7 @@ if ($modecompta == 'BOOKKEEPING') // This make 14 calls for each detail of account (NP, N and month m) if ($showaccountdetail != 'no') { - $tmppredefinedgroupwhere = "pcg_type = '".$db->escape($objp->pcg_type)."' AND pcg_subtype = '".$db->escape($objp->pcg_subtype)."'"; + $tmppredefinedgroupwhere = "pcg_type = '".$db->escape($objp->pcg_type)."'"; $tmppredefinedgroupwhere .= " AND fk_pcg_version = '".$db->escape($charofaccountstring)."'"; //$tmppredefinedgroupwhere.= " AND thirdparty_code = '".$db->escape($objp->name)."'"; @@ -313,16 +307,11 @@ if ($modecompta == 'BOOKKEEPING') $i++; } - } - else - { + } else { print ''.$langs->trans("NoRecordFound").''; } - } - else dol_print_error($db); -} -else -{ + } else dol_print_error($db); +} else { /* * Factures clients */ @@ -337,12 +326,10 @@ else $sql .= " AND f.fk_statut IN (1,2)"; if (!empty($conf->global->FACTURE_DEPOSITS_ARE_JUST_PAYMENTS)) $sql .= " AND f.type IN (0,1,2,5)"; - else - $sql .= " AND f.type IN (0,1,2,3,5)"; + else $sql .= " AND f.type IN (0,1,2,3,5)"; if (!empty($date_start) && !empty($date_end)) $sql .= " AND f.datef >= '".$db->idate($date_start)."' AND f.datef <= '".$db->idate($date_end)."'"; - } - elseif ($modecompta == 'RECETTES-DEPENSES') + } elseif ($modecompta == 'RECETTES-DEPENSES') { /* * Liste des paiements (les anciens paiements ne sont pas vus par cette requete car, sur les @@ -464,12 +451,10 @@ else $sql .= " AND f.fk_statut IN (1,2)"; if (!empty($conf->global->FACTURE_DEPOSITS_ARE_JUST_PAYMENTS)) $sql .= " AND f.type IN (0,1,2)"; - else - $sql .= " AND f.type IN (0,1,2,3)"; + else $sql .= " AND f.type IN (0,1,2,3)"; if (!empty($date_start) && !empty($date_end)) $sql .= " AND f.datef >= '".$db->idate($date_start)."' AND f.datef <= '".$db->idate($date_end)."'"; - } - elseif ($modecompta == 'RECETTES-DEPENSES') + } elseif ($modecompta == 'RECETTES-DEPENSES') { $sql = "SELECT s.nom as name, s.rowid as socid, sum(pf.amount) as amount_ttc"; $sql .= " FROM ".MAIN_DB_PREFIX."paiementfourn as p"; @@ -518,9 +503,7 @@ else print "\n"; $i++; } - } - else - { + } else { print ' '; print ''.$langs->trans("None").''; print ''; @@ -553,8 +536,7 @@ else $sql .= " AND c.deductible = 0"; if (!empty($date_start) && !empty($date_end)) $sql .= " AND cs.date_ech >= '".$db->idate($date_start)."' AND cs.date_ech <= '".$db->idate($date_end)."'"; - } - elseif ($modecompta == 'RECETTES-DEPENSES') + } elseif ($modecompta == 'RECETTES-DEPENSES') { $sql = "SELECT c.id, c.libelle as label, sum(p.amount) as amount"; $sql .= " FROM ".MAIN_DB_PREFIX."c_chargesociales as c"; @@ -598,8 +580,7 @@ else print ''; $i++; } - } - else { + } else { print ' '; print ''.$langs->trans("None").''; print ''; @@ -630,8 +611,7 @@ else if (!empty($date_start) && !empty($date_end)) $sql .= " AND cs.date_ech >= '".$db->idate($date_start)."' AND cs.date_ech <= '".$db->idate($date_end)."'"; $sql .= " AND cs.entity = ".$conf->entity; - } - elseif ($modecompta == 'RECETTES-DEPENSES') + } elseif ($modecompta == 'RECETTES-DEPENSES') { $sql = "SELECT c.id, c.libelle as label, sum(p.amount) as amount"; $sql .= " FROM ".MAIN_DB_PREFIX."c_chargesociales as c"; @@ -675,8 +655,7 @@ else print ''; $i++; } - } - else { + } else { print ' '; print ''.$langs->trans("None").''; print ''; @@ -768,16 +747,12 @@ else print ''; $i++; } - } - else - { + } else { print ' '; print ''.$langs->trans("None").''; print ''; } - } - else - { + } else { dol_print_error($db); } print ''; @@ -854,16 +829,12 @@ else print ''.price(-$obj->amount_ttc).''; print ''; } - } - else - { + } else { print ' '; print ''.$langs->trans("None").''; print ''; } - } - else - { + } else { dol_print_error($db); } print ''; @@ -888,9 +859,7 @@ else $sql .= " FROM ".MAIN_DB_PREFIX."don as p"; $sql .= " WHERE p.entity IN (".getEntity('donation').")"; $sql .= " AND fk_statut in (1,2)"; - } - else - { + } else { $sql = "SELECT p.societe as nom, p.firstname, p.lastname, date_format(p.datedon,'%Y-%m') as dm, sum(p.amount) as amount"; $sql .= " FROM ".MAIN_DB_PREFIX."don as p"; $sql .= " INNER JOIN ".MAIN_DB_PREFIX."payment_donation as pe ON pe.fk_donation = p.rowid"; @@ -936,16 +905,12 @@ else print ''; $i++; } - } - else - { + } else { print ' '; print ''.$langs->trans("None").''; print ''; } - } - else - { + } else { dol_print_error($db); } print ''; @@ -955,6 +920,113 @@ else print ''; } + /* + * Various Payments + */ + + if (!empty($conf->global->ACCOUNTING_REPORTS_INCLUDE_VARPAY) && !empty($conf->banque->enabled) && ($modecompta == 'CREANCES-DETTES' || $modecompta == "RECETTES-DEPENSES")) + { + $subtotal_ht = 0; + $subtotal_ttc = 0; + + print ''.$langs->trans("VariousPayment").''; + + // Debit + $sql = "SELECT SUM(p.amount) AS amount FROM ".MAIN_DB_PREFIX."payment_various as p"; + $sql .= ' WHERE 1 = 1'; + if (!empty($date_start) && !empty($date_end)) + $sql .= " AND p.datep >= '".$db->idate($date_start)."' AND p.datep <= '".$db->idate($date_end)."'"; + $sql .= ' GROUP BY p.sens'; + $sql .= ' ORDER BY p.sens'; + + dol_syslog('get various payments', LOG_DEBUG); + $result = $db->query($sql); + if ($result) + { + // Debit + $obj = $db->fetch_object($result); + if (isset($obj->amount)) + { + $subtotal_ht += -$obj->amount; + $subtotal_ttc += -$obj->amount; + } + print ' '; + print "".$langs->trans("Debit")."\n"; + if ($modecompta == 'CREANCES-DETTES') print ''.price(-$obj->amount).''; + print ''.price(-$obj->amount)."\n"; + print "\n"; + + // Credit + $obj = $db->fetch_object($result); + if (isset($obj->amount)) + { + $subtotal_ht += $obj->amount; + $subtotal_ttc += $obj->amount; + } + print ' '; + print "".$langs->trans("Credit")."\n"; + if ($modecompta == 'CREANCES-DETTES') print ''.price($obj->amount).''; + print ''.price($obj->amount)."\n"; + print "\n"; + + // Total + $total_ht += $subtotal_ht; + $total_ttc += $subtotal_ttc; + print ''; + if ($modecompta == 'CREANCES-DETTES') + print ''.price($subtotal_ht).''; + print ''.price($subtotal_ttc).''; + print ''; + } else dol_print_error($db); + } + + /* + * Payement Loan + */ + + if (!empty($conf->global->ACCOUNTING_REPORTS_INCLUDE_LOAN) && !empty($conf->loan->enabled) && ($modecompta == 'CREANCES-DETTES' || $modecompta == "RECETTES-DEPENSES")) + { + $subtotal_ht = 0; + $subtotal_ttc = 0; + + print ''.$langs->trans("PaymentLoan").''; + + $sql = 'SELECT l.rowid as id, l.label AS label, SUM(p.amount_capital + p.amount_insurance + p.amount_interest) as amount FROM '.MAIN_DB_PREFIX.'payment_loan as p'; + $sql .= ' LEFT JOIN '.MAIN_DB_PREFIX.'loan AS l ON l.rowid = p.fk_loan'; + $sql .= ' WHERE 1 = 1'; + if (!empty($date_start) && !empty($date_end)) + $sql .= " AND p.datep >= '".$db->idate($date_start)."' AND p.datep <= '".$db->idate($date_end)."'"; + $sql .= ' GROUP BY p.fk_loan'; + $sql .= ' ORDER BY p.fk_loan'; + + dol_syslog('get loan payments', LOG_DEBUG); + $result = $db->query($sql); + if ($result) + { + require_once DOL_DOCUMENT_ROOT.'/loan/class/loan.class.php'; + $loan_static = new Loan($db); + while ($obj = $db->fetch_object($result)) + { + $loan_static->id = $obj->id; + $loan_static->ref = $obj->id; + $loan_static->label = $obj->label; + print ' '; + print "".$loan_static->getNomUrl(1).' - '.$obj->label."\n"; + if ($modecompta == 'CREANCES-DETTES') print ''.price(-$obj->amount).''; + print ''.price(-$obj->amount)."\n"; + print "\n"; + $subtotal_ht -= $obj->amount; + $subtotal_ttc -= $obj->amount; + } + $total_ht += $subtotal_ht; + $total_ttc += $subtotal_ttc; + print ''; + if ($modecompta == 'CREANCES-DETTES') + print ''.price($subtotal_ht).''; + print ''.price($subtotal_ttc).''; + print ''; + } else dol_print_error($db); + } /* * VAT @@ -975,8 +1047,7 @@ else $sql .= " WHERE f.fk_statut IN (1,2)"; if (!empty($conf->global->FACTURE_DEPOSITS_ARE_JUST_PAYMENTS)) $sql .= " AND f.type IN (0,1,2,5)"; - else - $sql .= " AND f.type IN (0,1,2,3,5)"; + else $sql .= " AND f.type IN (0,1,2,3,5)"; if (!empty($date_start) && !empty($date_end)) $sql .= " AND f.datef >= '".$db->idate($date_start)."' AND f.datef <= '".$db->idate($date_end)."'"; $sql .= " AND f.entity IN (".getEntity('invoice').")"; @@ -1023,8 +1094,7 @@ else $sql .= " WHERE f.fk_statut IN (1,2)"; if (!empty($conf->global->FACTURE_DEPOSITS_ARE_JUST_PAYMENTS)) $sql .= " AND f.type IN (0,1,2)"; - else - $sql .= " AND f.type IN (0,1,2,3)"; + else $sql .= " AND f.type IN (0,1,2,3)"; if (!empty($date_start) && !empty($date_end)) $sql .= " AND f.datef >= '".$db->idate($date_start)."' AND f.datef <= '".$db->idate($date_end)."'"; $sql .= " AND f.entity = ".$conf->entity; @@ -1064,9 +1134,7 @@ else print ' '."\n"; print ''.price($amount)."\n"; print "\n"; - } - else - { + } else { // VAT really already paid $amount = 0; $sql = "SELECT date_format(t.datev,'%Y-%m') as dm, sum(t.amount) as amount"; @@ -1145,9 +1213,7 @@ else } } $db->free($result); - } - else - { + } else { dol_print_error($db); } print ' '; diff --git a/htdocs/compta/resultat/index.php b/htdocs/compta/resultat/index.php index d462007d273..7221e932ca6 100644 --- a/htdocs/compta/resultat/index.php +++ b/htdocs/compta/resultat/index.php @@ -6,6 +6,7 @@ * Copyright (C) 2014 Juanjo Menent * Copyright (C) 2014 Florian Henry * Copyright (C) 2018 Frédéric France + * Copyright (C) 2020 Maxime DEMAREST * * 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 @@ -77,8 +78,7 @@ if (empty($date_start) || empty($date_end)) // We define date_start and date_end $month_end = $month_start - 1; if ($month_end < 1) $month_end = 12; else $year_end++; - } - else $month_end = $month_start; + } else $month_end = $month_start; $date_start = dol_get_first_day($year_start, $month_start, false); $date_end = dol_get_last_day($year_end, $month_end, false); } if ($q == 1) { $date_start = dol_get_first_day($year_start, 1, false); $date_end = dol_get_last_day($year_start, 3, false); } @@ -130,11 +130,10 @@ if ($modecompta == 'CREANCES-DETTES') $description = $langs->trans("RulesAmountWithTaxIncluded"); $description .= '
'.$langs->trans("RulesResultDue"); if (!empty($conf->global->FACTURE_DEPOSITS_ARE_JUST_PAYMENTS)) $description .= "
".$langs->trans("DepositsAreNotIncluded"); - else $description .= "
".$langs->trans("DepositsAreIncluded"); + else $description .= "
".$langs->trans("DepositsAreIncluded"); $builddate = dol_now(); //$exportlink=$langs->trans("NotYetAvailable"); -} -elseif ($modecompta == "RECETTES-DEPENSES") { +} elseif ($modecompta == "RECETTES-DEPENSES") { $name = $langs->trans("ReportInOut").', '.$langs->trans("ByYear"); $calcmode = $langs->trans("CalcModeEngagement"); $calcmode .= '
('.$langs->trans("SeeReportInDueDebtMode", '', '').')'; @@ -145,8 +144,7 @@ elseif ($modecompta == "RECETTES-DEPENSES") { $description .= '
'.$langs->trans("RulesResultInOut"); $builddate = dol_now(); //$exportlink=$langs->trans("NotYetAvailable"); -} -elseif ($modecompta == "BOOKKEEPING") +} elseif ($modecompta == "BOOKKEEPING") { $name = $langs->trans("ReportInOut").', '.$langs->trans("ByYear"); $calcmode = $langs->trans("CalcModeBookkeeping"); @@ -190,8 +188,7 @@ if (!empty($conf->facture->enabled) && ($modecompta == 'CREANCES-DETTES' || $mod else $sql .= " AND f.type IN (0,1,2,3,5)"; if (!empty($date_start) && !empty($date_end)) $sql .= " AND f.datef >= '".$db->idate($date_start)."' AND f.datef <= '".$db->idate($date_end)."'"; - } - elseif ($modecompta == "RECETTES-DEPENSES") + } elseif ($modecompta == "RECETTES-DEPENSES") { /* * Liste des paiements (les anciens paiements ne sont pas vus par cette requete car, sur les @@ -227,12 +224,10 @@ if (!empty($conf->facture->enabled) && ($modecompta == 'CREANCES-DETTES' || $mod $i++; } $db->free($result); - } - else { + } else { dol_print_error($db); } -} -elseif ($modecompta == "BOOKKEEPING") +} elseif ($modecompta == "BOOKKEEPING") { // Nothing from this table } @@ -273,17 +268,14 @@ if (!empty($conf->facture->enabled) && ($modecompta == 'CREANCES-DETTES' || $mod $i++; } - } - else { + } else { dol_print_error($db); } - } - elseif ($modecompta == "RECETTES-DEPENSES") + } elseif ($modecompta == "RECETTES-DEPENSES") { // Nothing from this table } -} -elseif ($modecompta == "BOOKKEEPING") +} elseif ($modecompta == "BOOKKEEPING") { // Nothing from this table } @@ -306,8 +298,7 @@ if (!empty($conf->facture->enabled) && ($modecompta == 'CREANCES-DETTES' || $mod else $sql .= " AND f.type IN (0,1,2,3)"; if (!empty($date_start) && !empty($date_end)) $sql .= " AND f.datef >= '".$db->idate($date_start)."' AND f.datef <= '".$db->idate($date_end)."'"; - } - elseif ($modecompta == "RECETTES-DEPENSES") + } elseif ($modecompta == "RECETTES-DEPENSES") { $sql = "SELECT sum(pf.amount) as amount_ttc, date_format(p.datep,'%Y-%m') as dm"; $sql .= " FROM ".MAIN_DB_PREFIX."paiementfourn as p"; @@ -342,12 +333,10 @@ if (!empty($conf->facture->enabled) && ($modecompta == 'CREANCES-DETTES' || $mod $i++; } $db->free($result); - } - else { + } else { dol_print_error($db); } -} -elseif ($modecompta == "BOOKKEEPING") +} elseif ($modecompta == "BOOKKEEPING") { // Nothing from this table } @@ -428,8 +417,7 @@ if (!empty($conf->tax->enabled) && ($modecompta == 'CREANCES-DETTES' || $modecom } else { dol_print_error($db); } - } - elseif ($modecompta == "RECETTES-DEPENSES") + } elseif ($modecompta == "RECETTES-DEPENSES") { // TVA really already paid $sql = "SELECT sum(t.amount) as amount, date_format(t.datev,'%Y-%m') as dm"; @@ -492,8 +480,7 @@ if (!empty($conf->tax->enabled) && ($modecompta == 'CREANCES-DETTES' || $modecom dol_print_error($db); } } -} -elseif ($modecompta == "BOOKKEEPING") +} elseif ($modecompta == "BOOKKEEPING") { // Nothing from this table } @@ -515,8 +502,7 @@ if (!empty($conf->tax->enabled) && ($modecompta == 'CREANCES-DETTES' || $modecom $sql .= " AND c.deductible = 0"; if (!empty($date_start) && !empty($date_end)) $sql .= " AND cs.date_ech >= '".$db->idate($date_start)."' AND cs.date_ech <= '".$db->idate($date_end)."'"; - } - elseif ($modecompta == "RECETTES-DEPENSES") + } elseif ($modecompta == "RECETTES-DEPENSES") { $sql = "SELECT c.libelle as nom, date_format(p.datep,'%Y-%m') as dm, sum(p.amount) as amount"; $sql .= " FROM ".MAIN_DB_PREFIX."c_chargesociales as c"; @@ -553,8 +539,7 @@ if (!empty($conf->tax->enabled) && ($modecompta == 'CREANCES-DETTES' || $modecom } else { dol_print_error($db); } -} -elseif ($modecompta == "BOOKKEEPING") +} elseif ($modecompta == "BOOKKEEPING") { // Nothing from this table } @@ -577,8 +562,7 @@ if (!empty($conf->tax->enabled) && ($modecompta == 'CREANCES-DETTES' || $modecom $sql .= " AND c.deductible = 1"; if (!empty($date_start) && !empty($date_end)) $sql .= " AND cs.date_ech >= '".$db->idate($date_start)."' AND cs.date_ech <= '".$db->idate($date_end)."'"; - } - elseif ($modecompta == "RECETTES-DEPENSES") + } elseif ($modecompta == "RECETTES-DEPENSES") { $sql = "SELECT c.libelle as nom, date_format(p.datep,'%Y-%m') as dm, sum(p.amount) as amount"; $sql .= " FROM ".MAIN_DB_PREFIX."c_chargesociales as c"; @@ -615,8 +599,7 @@ if (!empty($conf->tax->enabled) && ($modecompta == 'CREANCES-DETTES' || $modecom } else { dol_print_error($db); } -} -elseif ($modecompta == "BOOKKEEPING") +} elseif ($modecompta == "BOOKKEEPING") { // Nothing from this table } @@ -663,8 +646,7 @@ if (!empty($conf->salaries->enabled) && ($modecompta == 'CREANCES-DETTES' || $mo } else { dol_print_error($db); } -} -elseif ($modecompta == "BOOKKEEPING") +} elseif ($modecompta == "BOOKKEEPING") { // Nothing from this table } @@ -722,13 +704,10 @@ if (!empty($conf->expensereport->enabled) && ($modecompta == 'CREANCES-DETTES' | $decaiss_ttc[$obj->dm] += $obj->amount_ttc; } } - } - else - { + } else { dol_print_error($db); } -} -elseif ($modecompta == 'BOOKKEEPING') { +} elseif ($modecompta == 'BOOKKEEPING') { // Nothing from this table } @@ -784,16 +763,114 @@ if (!empty($conf->don->enabled) && ($modecompta == 'CREANCES-DETTES' || $modecom $i++; } } - } - else - { + } else { dol_print_error($db); } -} -elseif ($modecompta == 'BOOKKEEPING') { +} elseif ($modecompta == 'BOOKKEEPING') { // Nothing from this table } +/* + * Various Payments + */ + +if (!empty($conf->global->ACCOUNTING_REPORTS_INCLUDE_VARPAY) && !empty($conf->banque->enabled) && ($modecompta == 'CREANCES-DETTES' || $modecompta == "RECETTES-DEPENSES")) +{ + // decaiss + + $sql = "SELECT date_format(p.datep, '%Y-%m') AS dm, SUM(p.amount) AS amount FROM ".MAIN_DB_PREFIX."payment_various as p"; + $sql .= ' WHERE p.sens = 0'; + if (!empty($date_start) && !empty($date_end)) + $sql .= " AND p.datep >= '".$db->idate($date_start)."' AND p.datep <= '".$db->idate($date_end)."'"; + $sql .= ' GROUP BY dm'; + + dol_syslog("get various payments"); + $result = $db->query($sql); + if ($result) + { + $num = $db->num_rows($result); + $i = 0; + if ($num) + { + while ($i < $num) + { + $obj = $db->fetch_object($result); + if (!isset($decaiss_ttc[$obj->dm])) $decaiss_ttc[$obj->dm] = 0; + if (isset($obj->amount)) $decaiss_ttc[$obj->dm] += $obj->amount; + $i++; + } + } + } else { + dol_print_error($db); + } + + // encaiss + + $sql = "SELECT date_format(p.datep, '%Y-%m') AS dm, SUM(p.amount) AS amount FROM ".MAIN_DB_PREFIX."payment_various AS p"; + $sql .= ' WHERE p.sens = 1'; + if (!empty($date_start) && !empty($date_end)) + $sql .= " AND p.datep >= '".$db->idate($date_start)."' AND p.datep <= '".$db->idate($date_end)."'"; + $sql .= ' GROUP BY dm'; + + dol_syslog("get various payments"); + $result = $db->query($sql); + if ($result) + { + $num = $db->num_rows($result); + $i = 0; + if ($num) + { + while ($i < $num) + { + $obj = $db->fetch_object($result); + if (!isset($encaiss_ttc[$obj->dm])) $encaiss_ttc[$obj->dm] = 0; + if (isset($obj->amount)) $encaiss_ttc[$obj->dm] += $obj->amount; + $i++; + } + } + } else { + dol_print_error($db); + } +} +// Useless with BOOKKEEPING +//elseif ($modecompta == 'BOOKKEEPING') { +//} + +/* + * Payement Loan + */ + +if (!empty($conf->global->ACCOUNTING_REPORTS_INCLUDE_LOAN) && !empty($conf->loan->enabled) && ($modecompta == 'CREANCES-DETTES' || $modecompta == "RECETTES-DEPENSES")) +{ + $sql = "SELECT date_format(p.datep, '%Y-%m') AS dm, SUM(p.amount_capital + p.amount_insurance + p.amount_interest) AS amount FROM ".MAIN_DB_PREFIX."payment_loan AS p"; + $sql .= ' WHERE 1 = 1'; + if (!empty($date_start) && !empty($date_end)) + $sql .= " AND p.datep >= '".$db->idate($date_start)."' AND p.datep <= '".$db->idate($date_end)."'"; + $sql .= ' GROUP BY dm'; + + dol_syslog("get loan payments"); + $result = $db->query($sql); + if ($result) + { + $num = $db->num_rows($result); + $i = 0; + if ($num) + { + while ($i < $num) + { + $obj = $db->fetch_object($result); + if (!isset($decaiss_ttc[$obj->dm])) $decaiss_ttc[$obj->dm] = 0; + if (isset($obj->amount)) $decaiss_ttc[$obj->dm] += $obj->amount; + $i++; + } + } + } else { + dol_print_error($db); + } +} +// Useless with BOOKKEEPING +//elseif ($modecompta == 'BOOKKEEPING') { +//} /* @@ -852,9 +929,7 @@ if (!empty($conf->accounting->enabled) && ($modecompta == 'BOOKKEEPING')) $i++; } } - } - else - { + } else { dol_print_error($db); } } @@ -933,9 +1008,7 @@ for ($mois = 1 + $nb_mois_decalage; $mois <= 12 + $nb_mois_decalage; $mois++) if (!isset($totsorties[$annee])) $totsorties[$annee] = 0; $totsorties[$annee] += $decaiss[$case]; } - } - else - { + } else { if (isset($decaiss_ttc[$case]) && $decaiss_ttc[$case] != 0) { print ''.price(price2num($decaiss_ttc[$case], 'MT')).''; @@ -954,9 +1027,7 @@ for ($mois = 1 + $nb_mois_decalage; $mois <= 12 + $nb_mois_decalage; $mois++) if (!isset($totentrees[$annee])) $totentrees[$annee] = 0; $totentrees[$annee] += $encaiss[$case]; } - } - else - { + } else { if (isset($encaiss_ttc[$case])) { print ''.price(price2num($encaiss_ttc[$case], 'MT')).''; diff --git a/htdocs/compta/resultat/result.php b/htdocs/compta/resultat/result.php index 66adea3371f..48cb8b1154e 100644 --- a/htdocs/compta/resultat/result.php +++ b/htdocs/compta/resultat/result.php @@ -90,8 +90,7 @@ if (empty($date_start) || empty($date_end)) // We define date_start and date_end $month_end = $month_start - 1; if ($month_end < 1) $month_end = 12; else $year_end++; - } - else $month_end = $month_start; + } else $month_end = $month_start; $date_start = dol_get_first_day($year_start, $month_start, false); $date_end = dol_get_last_day($year_end, $month_end, false); } if ($q == 1) { $date_start = dol_get_first_day($year_start, 1, false); $date_end = dol_get_last_day($year_start, 3, false); } @@ -178,11 +177,10 @@ if ($modecompta == "CREANCES-DETTES") //$periodlink=''.img_previous().' '.img_next().''; $description = $langs->trans("RulesResultDue"); if (!empty($conf->global->FACTURE_DEPOSITS_ARE_JUST_PAYMENTS)) $description .= $langs->trans("DepositsAreNotIncluded"); - else $description .= $langs->trans("DepositsAreIncluded"); + else $description .= $langs->trans("DepositsAreIncluded"); $builddate = dol_now(); //$exportlink=$langs->trans("NotYetAvailable"); -} -elseif ($modecompta == "RECETTES-DEPENSES") { +} elseif ($modecompta == "RECETTES-DEPENSES") { $name = $langs->trans("AnnualByAccountInputOutputMode"); $calcmode = $langs->trans("CalcModeEngagement"); $calcmode .= '
('.$langs->trans("SeeReportInDueDebtMode", '', '').')'; @@ -192,8 +190,7 @@ elseif ($modecompta == "RECETTES-DEPENSES") { $description = $langs->trans("RulesResultInOut"); $builddate = dol_now(); //$exportlink=$langs->trans("NotYetAvailable"); -} -elseif ($modecompta == "BOOKKEEPING") +} elseif ($modecompta == "BOOKKEEPING") { $name = $langs->trans("ReportInOut").', '.$langs->trans("ByPersonalizedAccountGroups"); $calcmode = $langs->trans("CalcModeBookkeeping"); @@ -248,13 +245,11 @@ if ($modecompta == 'CREANCES-DETTES') { //if (! empty($date_start) && ! empty($date_end)) // $sql.= " AND f.datef >= '".$db->idate($date_start)."' AND f.datef <= '".$db->idate($date_end)."'"; -} -elseif ($modecompta == "RECETTES-DEPENSES") +} elseif ($modecompta == "RECETTES-DEPENSES") { //if (! empty($date_start) && ! empty($date_end)) // $sql.= " AND p.datep >= '".$db->idate($date_start)."' AND p.datep <= '".$db->idate($date_end)."'"; -} -elseif ($modecompta == "BOOKKEEPING") +} elseif ($modecompta == "BOOKKEEPING") { // Get array of all report groups that are active $cats = $AccCat->getCats(); // WARNING: Computed groups must be after group they include @@ -375,7 +370,7 @@ elseif ($modecompta == "BOOKKEEPING") print "\n"; //var_dump($sommes); - } else // normal category + } else // normal category { $code = $cat['code']; // Category code we process diff --git a/htdocs/compta/sociales/card.php b/htdocs/compta/sociales/card.php index d7f20622a43..f9d5a90d543 100644 --- a/htdocs/compta/sociales/card.php +++ b/htdocs/compta/sociales/card.php @@ -128,9 +128,7 @@ if ($action == 'confirm_delete' && $confirm == 'yes') { header("Location: list.php"); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -145,29 +143,23 @@ if ($action == 'add' && $user->rights->tax->charges->creer) { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("Date")), null, 'errors'); $action = 'create'; - } - elseif (!$dateperiod) + } elseif (!$dateperiod) { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("Period")), null, 'errors'); $action = 'create'; - } - elseif (!$actioncode > 0) + } elseif (!$actioncode > 0) { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("Type")), null, 'errors'); $action = 'create'; - } - elseif (empty($amount)) + } elseif (empty($amount)) { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("Amount")), null, 'errors'); $action = 'create'; - } - elseif (!is_numeric($amount)) + } elseif (!is_numeric($amount)) { setEventMessages($langs->trans("ErrorFieldMustBeANumeric", $langs->transnoentities("Amount")), null, 'errors'); $action = 'create'; - } - else - { + } else { $object->type = $actioncode; $object->label = GETPOST('label', 'alpha'); $object->date_ech = $dateech; @@ -195,24 +187,19 @@ if ($action == 'update' && !$_POST["cancel"] && $user->rights->tax->charges->cre { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("Date")), null, 'errors'); $action = 'edit'; - } - elseif (!$dateperiod) + } elseif (!$dateperiod) { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("Period")), null, 'errors'); $action = 'edit'; - } - elseif (empty($amount)) + } elseif (empty($amount)) { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("Amount")), null, 'errors'); $action = 'edit'; - } - elseif (!is_numeric($amount)) + } elseif (!is_numeric($amount)) { setEventMessages($langs->trans("ErrorFieldMustBeANumeric", $langs->transnoentities("Amount")), null, 'errors'); $action = 'create'; - } - else - { + } else { $result = $object->fetch($id); $object->date_ech = $dateech; @@ -245,16 +232,14 @@ if ($action == 'confirm_clone' && $confirm == 'yes' && ($user->rights->tax->char if (GETPOST('clone_label', 'alphanohtml')) { $object->label = GETPOST('clone_label', 'alphanohtml'); - } - else { + } else { $object->label = $langs->trans("CopyOf").' '.$object->label; } if (GETPOST('clone_for_next_month', 'int')) { $object->periode = dol_time_plus_duree($object->periode, 1, 'm'); $object->date_ech = dol_time_plus_duree($object->date_ech, 1, 'm'); - } - else { + } else { $newdateperiod = dol_mktime(0, 0, 0, GETPOST('clone_periodmonth', 'int'), GETPOST('clone_periodday', 'int'), GETPOST('clone_periodyear', 'int')); $newdateech = dol_mktime(0, 0, 0, GETPOST('clone_date_echmonth', 'int'), GETPOST('clone_date_echday', 'int'), GETPOST('clone_date_echyear', 'int')); if ($newdateperiod) $object->periode = $newdateperiod; @@ -271,18 +256,14 @@ if ($action == 'confirm_clone' && $confirm == 'yes' && ($user->rights->tax->char header("Location: ".$_SERVER["PHP_SELF"]."?id=".$id); exit; - } - else - { + } else { $id = $originalId; $db->rollback(); setEventMessages($object->error, $object->errors, 'errors'); } } - } - else - { + } else { $db->rollback(); dol_print_error($db, $object->error); } @@ -431,9 +412,7 @@ if ($id > 0) if (!empty($conf->global->TAX_ADD_CLON_FOR_NEXT_MONTH_CHECKBOX)) { $formquestion[] = array('type' => 'checkbox', 'name' => 'clone_for_next_month', 'label' => $langs->trans("CloneTaxForNextMonth"), 'value' => 1); - } - else - { + } else { $formquestion[] = array('type' => 'date', 'name' => 'clone_date_ech', 'label' => $langs->trans("Date"), 'value' => -1); $formquestion[] = array('type' => 'date', 'name' => 'clone_period', 'label' => $langs->trans("PeriodEndDate"), 'value' => -1); } @@ -535,9 +514,7 @@ if ($id > 0) if ($action == 'edit') { print $form->selectDate($object->periode, 'period', 0, 0, 0, 'charge', 1); - } - else - { + } else { print dol_print_date($object->periode, "day"); } print ""; @@ -548,8 +525,7 @@ if ($id > 0) print ''.$langs->trans("AmountTTC").""; print ''; print ""; - } - else { + } else { print ''.$langs->trans("AmountTTC").''.price($object->amount, 0, $outputlangs, 1, -1, -1, $conf->currency).''; } @@ -674,9 +650,7 @@ if ($id > 0) $totalpaye += $objp->amount; $i++; } - } - else - { + } else { print ''.$langs->trans("None").''; print ''; print ''; @@ -695,9 +669,7 @@ if ($id > 0) print ''; $db->free($resql); - } - else - { + } else { dol_print_error($db); } @@ -767,9 +739,7 @@ if ($id > 0) print ""; } - } - else - { + } else { /* Social contribution not found */ dol_print_error('', $object->error); } diff --git a/htdocs/compta/sociales/class/cchargesociales.class.php b/htdocs/compta/sociales/class/cchargesociales.class.php index b91d9ca31ee..cc66b56aabd 100644 --- a/htdocs/compta/sociales/class/cchargesociales.class.php +++ b/htdocs/compta/sociales/class/cchargesociales.class.php @@ -459,28 +459,23 @@ class Cchargesociales { if ($status == 1) return $langs->trans('Enabled'); elseif ($status == 0) return $langs->trans('Disabled'); - } - elseif ($mode == 1) + } elseif ($mode == 1) { if ($status == 1) return $langs->trans('Enabled'); elseif ($status == 0) return $langs->trans('Disabled'); - } - elseif ($mode == 2) + } elseif ($mode == 2) { if ($status == 1) return img_picto($langs->trans('Enabled'), 'statut4').' '.$langs->trans('Enabled'); elseif ($status == 0) return img_picto($langs->trans('Disabled'), 'statut5').' '.$langs->trans('Disabled'); - } - elseif ($mode == 3) + } elseif ($mode == 3) { if ($status == 1) return img_picto($langs->trans('Enabled'), 'statut4'); elseif ($status == 0) return img_picto($langs->trans('Disabled'), 'statut5'); - } - elseif ($mode == 4) + } elseif ($mode == 4) { if ($status == 1) return img_picto($langs->trans('Enabled'), 'statut4').' '.$langs->trans('Enabled'); elseif ($status == 0) return img_picto($langs->trans('Disabled'), 'statut5').' '.$langs->trans('Disabled'); - } - elseif ($mode == 5) + } elseif ($mode == 5) { if ($status == 1) return $langs->trans('Enabled').' '.img_picto($langs->trans('Enabled'), 'statut4'); elseif ($status == 0) return $langs->trans('Disabled').' '.img_picto($langs->trans('Disabled'), 'statut5'); diff --git a/htdocs/compta/sociales/class/chargesociales.class.php b/htdocs/compta/sociales/class/chargesociales.class.php index f6ff04ebe54..81ae1e28f20 100644 --- a/htdocs/compta/sociales/class/chargesociales.class.php +++ b/htdocs/compta/sociales/class/chargesociales.class.php @@ -171,14 +171,10 @@ class ChargeSociales extends CommonObject $this->db->free($resql); return 1; - } - else - { + } else { return 0; } - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -252,14 +248,11 @@ class ChargeSociales extends CommonObject if (empty($error)) { $this->db->commit(); return $this->id; - } - else { + } else { $this->db->rollback(); return -1 * $error; } - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -1; @@ -328,9 +321,7 @@ class ChargeSociales extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -386,9 +377,7 @@ class ChargeSociales extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } @@ -421,14 +410,10 @@ class ChargeSociales extends CommonObject $obj = $this->db->fetch_object($result); $this->db->free($result); return $obj->amount; - } - else - { + } else { return 0; } - } - else - { + } else { print $this->db->error(); return -1; } @@ -556,7 +541,7 @@ class ChargeSociales extends CommonObject if (empty($this->ref)) $this->ref = $this->label; - $label = ''.$langs->trans("ShowSocialContribution").''; + $label = ''.$langs->trans("SocialContribution").''; if (!empty($this->ref)) $label .= '
'.$langs->trans('Ref').': '.$this->ref; if (!empty($this->label)) @@ -569,7 +554,7 @@ class ChargeSociales extends CommonObject { if (!empty($conf->global->MAIN_OPTIMIZEFORTEXTBROWSER)) { - $label = $langs->trans("ShowSocialContribution"); + $label = $langs->trans("SocialContribution"); $linkclose .= ' alt="'.dol_escape_htmltag($label, 1).'"'; } $linkclose .= ' title="'.dol_escape_htmltag($label, 1).'"'; @@ -612,9 +597,7 @@ class ChargeSociales extends CommonObject $this->db->free($resql); return $amount; - } - else - { + } else { return -1; } } @@ -667,9 +650,7 @@ class ChargeSociales extends CommonObject } $this->db->free($result); - } - else - { + } else { dol_print_error($this->db); } } diff --git a/htdocs/compta/sociales/class/paymentsocialcontribution.class.php b/htdocs/compta/sociales/class/paymentsocialcontribution.class.php index bae8d28a756..4cb81422284 100644 --- a/htdocs/compta/sociales/class/paymentsocialcontribution.class.php +++ b/htdocs/compta/sociales/class/paymentsocialcontribution.class.php @@ -194,14 +194,11 @@ class PaymentSocialContribution extends CommonObject if ($remaintopay == 0) { $result = $contrib->set_paid($user); - } - else dol_syslog("Remain to pay for conrib ".$contribid." not null. We do nothing."); + } else dol_syslog("Remain to pay for conrib ".$contribid." not null. We do nothing."); } } } - } - else - { + } else { $error++; } } @@ -215,9 +212,7 @@ class PaymentSocialContribution extends CommonObject $this->total = $totalamount; // deprecated $this->db->commit(); return $this->id; - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -1; @@ -286,9 +281,7 @@ class PaymentSocialContribution extends CommonObject $this->db->free($resql); return 1; - } - else - { + } else { $this->error = "Error ".$this->db->lasterror(); return -1; } @@ -358,9 +351,7 @@ class PaymentSocialContribution extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } @@ -414,9 +405,7 @@ class PaymentSocialContribution extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } @@ -465,9 +454,7 @@ class PaymentSocialContribution extends CommonObject { $this->db->commit(); return $object->id; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -577,9 +564,7 @@ class PaymentSocialContribution extends CommonObject if ($result <= 0) dol_print_error($this->db); } } - } - else - { + } else { $this->error = $acc->error; $error++; } @@ -588,9 +573,7 @@ class PaymentSocialContribution extends CommonObject if (!$error) { return 1; - } - else - { + } else { return -1; } } @@ -613,9 +596,7 @@ class PaymentSocialContribution extends CommonObject if ($result) { return 1; - } - else - { + } else { $this->error = $this->db->error(); return 0; } diff --git a/htdocs/compta/sociales/document.php b/htdocs/compta/sociales/document.php index a64c0432be9..e7d76b94a76 100644 --- a/htdocs/compta/sociales/document.php +++ b/htdocs/compta/sociales/document.php @@ -52,13 +52,14 @@ $result = restrictedArea($user, 'tax', $id, 'chargesociales', 'charges'); // Get parameters +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; if (!$sortorder) $sortorder = "ASC"; @@ -162,9 +163,7 @@ if ($object->id) $permtoedit = $user->rights->fournisseur->facture->creer; $param = '&id='.$object->id; include_once DOL_DOCUMENT_ROOT.'/core/tpl/document_actions_post_headers.tpl.php'; -} -else -{ +} else { print $langs->trans("ErrorUnknown"); } diff --git a/htdocs/compta/sociales/list.php b/htdocs/compta/sociales/list.php index 9cfec1868fa..43823490ed9 100644 --- a/htdocs/compta/sociales/list.php +++ b/htdocs/compta/sociales/list.php @@ -80,9 +80,7 @@ if (!GETPOSTISSET('search_typeid')) $part = explode(':', $val); if ($part[0] == 'cs.fk_type') $search_typeid = $part[1]; } -} -else -{ +} else { $search_typeid = GETPOST('search_typeid', 'int'); } @@ -191,19 +189,16 @@ if ($resql) print ''; print ''; print ''; - print ''; print ''; + $center = ''; if ($year) { $center = ($year ? "".img_previous()." ".$langs->trans("Year")." $year ".img_next()."" : ""); - print_barre_liste($langs->trans("SocialContributions"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $center, $num, $totalnboflines, 'invoicing', 0, $newcardbutton, '', $limit); - } - else - { - print_barre_liste($langs->trans("SocialContributions"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, '', $num, $totalnboflines, 'invoicing', 0, $newcardbutton, '', $limit); } + print_barre_liste($langs->trans("SocialContributions"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $center, $num, $totalnboflines, 'bill', 0, $newcardbutton, '', $limit, 0, 0, 1); + if (empty($mysoc->country_id) && empty($mysoc->country_code)) { print '
'; @@ -211,9 +206,7 @@ if ($resql) $countrynotdefined = $langs->trans("ErrorSetACountryFirst"); print $countrynotdefined; print '
'; - } - else - { + } else { print '
'; print ''."\n"; @@ -316,9 +309,7 @@ if ($resql) if ($obj->periode) { print 'jdate($obj->periode)).'">'.dol_print_date($db->jdate($obj->periode), 'day').''; - } - else - { + } else { print ' '; } print "\n"; @@ -348,9 +339,7 @@ if ($resql) print ''; } print ''; -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/compta/sociales/payments.php b/htdocs/compta/sociales/payments.php index 5cfa5df06ed..fc1f66d5e2c 100644 --- a/htdocs/compta/sociales/payments.php +++ b/htdocs/compta/sociales/payments.php @@ -92,9 +92,7 @@ if ($mode != 'sconly') { $center = ($year ? ''.img_previous($langs->trans("Previous"), 'class="valignbottom"')." ".$langs->trans("Year").' '.$year.' '.img_next($langs->trans("Next"), 'class="valignbottom"')."" : ""); print_barre_liste($title, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $center, $num, $totalnboflines, 'title_accountancy', 0, '', '', $limit, 1); -} -else -{ +} else { print_barre_liste($title, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $center, $num, $totalnboflines, 'title_accountancy', 0, '', '', $limit); } @@ -208,9 +206,7 @@ if (!empty($conf->tax->enabled) && $user->rights->tax->charges->lire) print ''; print '"; print ""; - } - else - { + } else { dol_print_error($db); } print '
 '.price($totalpaye)."
'; @@ -287,9 +283,7 @@ if (!empty($conf->tax->enabled) && $user->rights->tax->charges->lire) print ""; $db->free($result); - } - else - { + } else { dol_print_error($db); } } @@ -300,19 +294,15 @@ if ($mysoc->localtax1_assuj == "1" && $mysoc->localtax2_assuj == "1") { $j = 1; $numlt = 3; -} -elseif ($mysoc->localtax1_assuj == "1") +} elseif ($mysoc->localtax1_assuj == "1") { $j = 1; $numlt = 2; -} -elseif ($mysoc->localtax2_assuj == "1") +} elseif ($mysoc->localtax2_assuj == "1") { $j = 2; $numlt = 3; -} -else -{ +} else { $j = 0; $numlt = 0; } @@ -388,9 +378,7 @@ while ($j < $numlt) print ""; $db->free($result); - } - else - { + } else { dol_print_error($db); } } @@ -472,9 +460,7 @@ if (!empty($conf->salaries->enabled) && !empty($user->rights->salaries->read)) $db->free($result); print "
"; - } - else - { + } else { dol_print_error($db); } } diff --git a/htdocs/compta/stats/byratecountry.php b/htdocs/compta/stats/byratecountry.php index acd58f90217..dc5ebd1731d 100644 --- a/htdocs/compta/stats/byratecountry.php +++ b/htdocs/compta/stats/byratecountry.php @@ -77,9 +77,7 @@ if (empty($date_start) || empty($date_end)) // We define date_start and date_end else $year_end++; } $date_start = dol_get_first_day($year_start, $month_start, false); $date_end = dol_get_last_day($year_end, $month_end, false); - } - else - { + } else { if ($q == 1) { $date_start = dol_get_first_day($year_start, 1, false); $date_end = dol_get_last_day($year_start, 3, false); } if ($q == 2) { $date_start = dol_get_first_day($year_start, 4, false); $date_end = dol_get_last_day($year_start, 6, false); } if ($q == 3) { $date_start = dol_get_first_day($year_start, 7, false); $date_end = dol_get_last_day($year_start, 9, false); } @@ -209,8 +207,7 @@ if ($modecompta == "CREANCES-DETTES") { } $builddate = dol_now(); -} -elseif ($modecompta == "RECETTES-DEPENSES") +} elseif ($modecompta == "RECETTES-DEPENSES") { $name = $langs->trans("TurnoverCollected").', '.$langs->trans("ByVatRate"); $calcmode = $langs->trans("CalcModeEngagement"); @@ -220,11 +217,9 @@ elseif ($modecompta == "RECETTES-DEPENSES") $description .= $langs->trans("DepositsAreIncluded"); $builddate = dol_now(); -} -elseif ($modecompta == "BOOKKEEPING") +} elseif ($modecompta == "BOOKKEEPING") { -} -elseif ($modecompta == "BOOKKEEPINGCOLLECTED") +} elseif ($modecompta == "BOOKKEEPINGCOLLECTED") { } $period = $form->selectDate($date_start, 'date_start', 0, 0, 0, '', 1, 0).' - '.$form->selectDate($date_end, 'date_end', 0, 0, 0, '', 1, 0); diff --git a/htdocs/compta/stats/cabyprodserv.php b/htdocs/compta/stats/cabyprodserv.php index 5831467ce63..ab2c1dcadb1 100644 --- a/htdocs/compta/stats/cabyprodserv.php +++ b/htdocs/compta/stats/cabyprodserv.php @@ -103,9 +103,7 @@ if (empty($date_start) || empty($date_end)) // We define date_start and date_end else $year_end++; } $date_start = dol_get_first_day($year_start, $month_start, false); $date_end = dol_get_last_day($year_end, $month_end, false); - } - else - { + } else { if ($q == 1) { $date_start = dol_get_first_day($year_start, 1, false); $date_end = dol_get_last_day($year_start, 3, false); } if ($q == 2) { $date_start = dol_get_first_day($year_start, 4, false); $date_end = dol_get_last_day($year_start, 6, false); } if ($q == 3) { $date_start = dol_get_first_day($year_start, 7, false); $date_end = dol_get_last_day($year_start, 9, false); } @@ -181,8 +179,7 @@ if ($modecompta == "CREANCES-DETTES") { } $builddate = dol_now(); -} -elseif ($modecompta == "RECETTES-DEPENSES") +} elseif ($modecompta == "RECETTES-DEPENSES") { $name = $langs->trans("TurnoverCollected").', '.$langs->trans("ByProductsAndServices"); $calcmode = $langs->trans("CalcModeEngagement"); @@ -192,11 +189,9 @@ elseif ($modecompta == "RECETTES-DEPENSES") $description .= $langs->trans("DepositsAreIncluded"); $builddate = dol_now(); -} -elseif ($modecompta == "BOOKKEEPING") +} elseif ($modecompta == "BOOKKEEPING") { -} -elseif ($modecompta == "BOOKKEEPINGCOLLECTED") +} elseif ($modecompta == "BOOKKEEPINGCOLLECTED") { } @@ -232,8 +227,7 @@ if ($modecompta == 'CREANCES-DETTES') if ($selected_cat === -2) // Without any category { $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."categorie_product as cp ON p.rowid = cp.fk_product"; - } - elseif ($selected_cat) // Into a specific category + } elseif ($selected_cat) // Into a specific category { $sql .= ", ".MAIN_DB_PREFIX."categorie as c, ".MAIN_DB_PREFIX."categorie_product as cp"; } @@ -255,8 +249,7 @@ if ($modecompta == 'CREANCES-DETTES') if ($selected_cat === -2) // Without any category { $sql .= " AND cp.fk_product is null"; - } - elseif ($selected_cat) { // Into a specific category + } elseif ($selected_cat) { // Into a specific category $sql .= " AND (c.rowid = ".$selected_cat; if ($subcat) $sql .= " OR c.fk_parent = ".$selected_cat; $sql .= ")"; diff --git a/htdocs/compta/stats/cabyuser.php b/htdocs/compta/stats/cabyuser.php index 9a4ce5b0427..8b6caa89a8f 100644 --- a/htdocs/compta/stats/cabyuser.php +++ b/htdocs/compta/stats/cabyuser.php @@ -96,9 +96,7 @@ if (empty($date_start) || empty($date_end)) // We define date_start and date_end if ($q == 2) { $date_start = dol_get_first_day($year_start, 4, false); $date_end = dol_get_last_day($year_start, 6, false); } if ($q == 3) { $date_start = dol_get_first_day($year_start, 7, false); $date_end = dol_get_last_day($year_start, 9, false); } if ($q == 4) { $date_start = dol_get_first_day($year_start, 10, false); $date_end = dol_get_last_day($year_start, 12, false); } -} -else -{ +} else { // TODO We define q } // $date_start and $date_end are defined. We force $year_start and $nbofyear @@ -154,11 +152,10 @@ if ($modecompta == "CREANCES-DETTES") { //$calcmode.='
('.$langs->trans("SeeReportInInputOutputMode",'','').')'; $description = $langs->trans("RulesCADue"); if (!empty($conf->global->FACTURE_DEPOSITS_ARE_JUST_PAYMENTS)) $description .= $langs->trans("DepositsAreNotIncluded"); - else $description .= $langs->trans("DepositsAreIncluded"); + else $description .= $langs->trans("DepositsAreIncluded"); $builddate = dol_now(); //$exportlink=$langs->trans("NotYetAvailable"); -} -elseif ($modecompta == "RECETTES-DEPENSES") +} elseif ($modecompta == "RECETTES-DEPENSES") { $name = $langs->trans("TurnoverCollected").', '.$langs->trans("ByUserAuthorOfInvoice"); $calcmode = $langs->trans("CalcModeEngagement"); @@ -167,12 +164,10 @@ elseif ($modecompta == "RECETTES-DEPENSES") $description .= $langs->trans("DepositsAreIncluded"); $builddate = dol_now(); //$exportlink=$langs->trans("NotYetAvailable"); -} -elseif ($modecompta == "BOOKKEEPING") +} elseif ($modecompta == "BOOKKEEPING") { // TODO -} -elseif ($modecompta == "BOOKKEEPINGCOLLECTED") +} elseif ($modecompta == "BOOKKEEPINGCOLLECTED") { // TODO } @@ -396,8 +391,7 @@ if (count($amount)) { } else { //print ''; } - } - elseif ($modecompta == 'CREANCES-DETTES') { + } elseif ($modecompta == 'CREANCES-DETTES') { if ($key > 0) { print ''; } else { @@ -416,8 +410,7 @@ if (count($amount)) { } else { //print ''; } - } - elseif ($modecompta == 'CREANCES-DETTES') { + } elseif ($modecompta == 'CREANCES-DETTES') { if ($key > 0) { print ''; } else { @@ -431,8 +424,7 @@ if (count($amount)) { } else { //print ''; } - } - elseif ($modecompta == 'CREANCES-DETTES') { + } elseif ($modecompta == 'CREANCES-DETTES') { if ($key > 0) { print ''; } @@ -462,7 +454,7 @@ if (count($amount)) { print ''; print ''.$langs->trans("Total").''; if ($modecompta != 'CREANCES-DETTES') { - print ''; + print ''; } else { print ''.price($catotal_ht).''; } diff --git a/htdocs/compta/stats/casoc.php b/htdocs/compta/stats/casoc.php index c563d8c5ae6..ab71b147b50 100644 --- a/htdocs/compta/stats/casoc.php +++ b/htdocs/compta/stats/casoc.php @@ -113,9 +113,7 @@ if (empty($date_start) || empty($date_end)) // We define date_start and date_end if ($q == 2) { $date_start = dol_get_first_day($year_start, 4, false); $date_end = dol_get_last_day($year_start, 6, false); } if ($q == 3) { $date_start = dol_get_first_day($year_start, 7, false); $date_end = dol_get_last_day($year_start, 9, false); } if ($q == 4) { $date_start = dol_get_first_day($year_start, 10, false); $date_end = dol_get_last_day($year_start, 12, false); } -} -else -{ +} else { // TODO We define q } @@ -180,11 +178,10 @@ if ($modecompta == "CREANCES-DETTES") //$calcmode.='
('.$langs->trans("SeeReportInInputOutputMode",'','').')'; $description = $langs->trans("RulesCADue"); if (!empty($conf->global->FACTURE_DEPOSITS_ARE_JUST_PAYMENTS)) $description .= $langs->trans("DepositsAreNotIncluded"); - else $description .= $langs->trans("DepositsAreIncluded"); + else $description .= $langs->trans("DepositsAreIncluded"); $builddate = dol_now(); //$exportlink=$langs->trans("NotYetAvailable"); -} -elseif ($modecompta == "RECETTES-DEPENSES") +} elseif ($modecompta == "RECETTES-DEPENSES") { $name = $langs->trans("TurnoverCollected").', '.$langs->trans("ByThirdParties"); $calcmode = $langs->trans("CalcModeEngagement"); @@ -193,11 +190,9 @@ elseif ($modecompta == "RECETTES-DEPENSES") $description .= $langs->trans("DepositsAreIncluded"); $builddate = dol_now(); //$exportlink=$langs->trans("NotYetAvailable"); -} -elseif ($modecompta == "BOOKKEEPING") +} elseif ($modecompta == "BOOKKEEPING") { -} -elseif ($modecompta == "BOOKKEEPINGCOLLECTED") +} elseif ($modecompta == "BOOKKEEPINGCOLLECTED") { } $period = $form->selectDate($date_start, 'date_start', 0, 0, 0, '', 1, 0).' - '.$form->selectDate($date_end, 'date_end', 0, 0, 0, '', 1, 0); @@ -223,8 +218,7 @@ if ($modecompta == 'CREANCES-DETTES') { if ($selected_cat === -2) // Without any category { $sql .= " LEFT OUTER JOIN ".MAIN_DB_PREFIX."categorie_societe as cs ON s.rowid = cs.fk_soc"; - } - elseif ($selected_cat) // Into a specific category + } elseif ($selected_cat) // Into a specific category { $sql .= ", ".MAIN_DB_PREFIX."categorie as c, ".MAIN_DB_PREFIX."categorie_societe as cs"; } @@ -241,8 +235,7 @@ if ($modecompta == 'CREANCES-DETTES') { if ($selected_cat === -2) // Without any category { $sql .= " AND cs.fk_soc is null"; - } - elseif ($selected_cat) { // Into a specific category + } elseif ($selected_cat) { // Into a specific category $sql .= " AND (c.rowid = ".$db->escape($selected_cat); if ($subcat) $sql .= " OR c.fk_parent = ".$db->escape($selected_cat); $sql .= ")"; @@ -261,8 +254,7 @@ if ($modecompta == 'CREANCES-DETTES') { if ($selected_cat === -2) // Without any category { $sql .= " LEFT OUTER JOIN ".MAIN_DB_PREFIX."categorie_societe as cs ON s.rowid = cs.fk_soc"; - } - elseif ($selected_cat) // Into a specific category + } elseif ($selected_cat) // Into a specific category { $sql .= ", ".MAIN_DB_PREFIX."categorie as c, ".MAIN_DB_PREFIX."categorie_societe as cs"; } @@ -275,8 +267,7 @@ if ($modecompta == 'CREANCES-DETTES') { if ($selected_cat === -2) // Without any category { $sql .= " AND cs.fk_soc is null"; - } - elseif ($selected_cat) { // Into a specific category + } elseif ($selected_cat) { // Into a specific category $sql .= " AND (c.rowid = ".$selected_cat; if ($subcat) $sql .= " OR c.fk_parent = ".$selected_cat; $sql .= ")"; @@ -625,7 +616,7 @@ if (count($amount)) { print ' '; print ' '; if ($modecompta != 'CREANCES-DETTES') { - print ''; + print ''; } else { print ''.price($catotal_ht).''; } diff --git a/htdocs/compta/stats/index.php b/htdocs/compta/stats/index.php index d1a64e218d2..796ce2cc6a6 100644 --- a/htdocs/compta/stats/index.php +++ b/htdocs/compta/stats/index.php @@ -73,8 +73,7 @@ if (empty($date_start) || empty($date_end)) // We define date_start and date_end } $month_end = $month_start - 1; if ($month_end < 1) $month_end = 12; - } - else $month_end = $month_start; + } else $month_end = $month_start; $date_start = dol_get_first_day($year_start, $month_start, false); $date_end = dol_get_last_day($year_end, $month_end, false); } if ($q == 1) { $date_start = dol_get_first_day($year_start, 1, false); $date_end = dol_get_last_day($year_start, 3, false); } @@ -124,11 +123,10 @@ if ($modecompta == "CREANCES-DETTES") $periodlink = ($year_start ? "".img_previous()." ".img_next()."" : ""); $description = $langs->trans("RulesCADue"); if (!empty($conf->global->FACTURE_DEPOSITS_ARE_JUST_PAYMENTS)) $description .= $langs->trans("DepositsAreNotIncluded"); - else $description .= $langs->trans("DepositsAreIncluded"); + else $description .= $langs->trans("DepositsAreIncluded"); $builddate = dol_now(); //$exportlink=$langs->trans("NotYetAvailable"); -} -elseif ($modecompta == "RECETTES-DEPENSES") +} elseif ($modecompta == "RECETTES-DEPENSES") { $name = $langs->trans("TurnoverCollected"); $calcmode = $langs->trans("CalcModeEngagement"); @@ -140,8 +138,7 @@ elseif ($modecompta == "RECETTES-DEPENSES") $description .= $langs->trans("DepositsAreIncluded"); $builddate = dol_now(); //$exportlink=$langs->trans("NotYetAvailable"); -} -elseif ($modecompta == "BOOKKEEPING") +} elseif ($modecompta == "BOOKKEEPING") { $name = $langs->trans("Turnover"); $calcmode = $langs->trans("CalcModeBookkeeping"); @@ -173,8 +170,7 @@ if ($modecompta == 'CREANCES-DETTES') else $sql .= " AND f.type IN (0,1,2,3,5)"; $sql .= " AND f.entity IN (".getEntity('invoice').")"; if ($socid) $sql .= " AND f.fk_soc = ".$socid; -} -elseif ($modecompta == "RECETTES-DEPENSES") +} elseif ($modecompta == "RECETTES-DEPENSES") { /* * Liste des paiements (les anciens paiements ne sont pas vus par cette requete car, sur les @@ -188,8 +184,7 @@ elseif ($modecompta == "RECETTES-DEPENSES") $sql .= " AND pf.fk_facture = f.rowid"; $sql .= " AND f.entity IN (".getEntity('invoice').")"; if ($socid) $sql .= " AND f.fk_soc = ".$socid; -} -elseif ($modecompta == "BOOKKEEPING") +} elseif ($modecompta == "BOOKKEEPING") { $sql = "SELECT date_format(b.doc_date,'%Y-%m') as dm, sum(b.credit) as amount_ttc"; $sql .= " FROM ".MAIN_DB_PREFIX."accounting_bookkeeping as b, ".MAIN_DB_PREFIX."accounting_journal as aj"; @@ -223,8 +218,7 @@ if ($result) $i++; } $db->free($result); -} -else { +} else { dol_print_error($db); } @@ -259,9 +253,7 @@ if ($modecompta == 'RECETTES-DEPENSES') } $i++; } - } - else - { + } else { dol_print_error($db); } } @@ -339,11 +331,8 @@ for ($mois = 1 + $nb_mois_decalage; $mois <= 12 + $nb_mois_decalage; $mois++) { $now_show_delta = 1; // On a trouve le premier mois de la premiere annee generant du chiffre. print ''.price($cum_ht[$case], 1).''; - } - else - { - if ($minyearmonth < $case && $case <= max($maxyearmonth, $nowyearmonth)) { print '0'; } - else { print ' '; } + } else { + if ($minyearmonth < $case && $case <= max($maxyearmonth, $nowyearmonth)) { print '0'; } else { print ' '; } } print ""; } @@ -356,11 +345,8 @@ for ($mois = 1 + $nb_mois_decalage; $mois <= 12 + $nb_mois_decalage; $mois++) if ($modecompta != 'BOOKKEEPING') print ''; print price($cum[$case], 1); if ($modecompta != 'BOOKKEEPING') print ''; - } - else - { - if ($minyearmonth < $case && $case <= max($maxyearmonth, $nowyearmonth)) { print '0'; } - else { print ' '; } + } else { + if ($minyearmonth < $case && $case <= max($maxyearmonth, $nowyearmonth)) { print '0'; } else { print ' '; } } print ""; @@ -390,12 +376,9 @@ for ($mois = 1 + $nb_mois_decalage; $mois <= 12 + $nb_mois_decalage; $mois++) { print '-'; } - } - else - { + } else { print ''; - if ($minyearmonth <= $case && $case <= $maxyearmonth) { print '-'; } - else { print ' '; } + if ($minyearmonth <= $case && $case <= $maxyearmonth) { print '-'; } else { print ' '; } print ''; } @@ -483,9 +466,7 @@ for ($annee = $year_start; $annee <= $year_end; $annee++) if ($total_ht[$annee] || ($annee >= $minyear && $annee <= max($nowyear, $maxyear))) { print ''.($total_ht[$annee] ?price($total_ht[$annee]) : "0").""; - } - else - { + } else { print ' '; } } @@ -494,9 +475,7 @@ for ($annee = $year_start; $annee <= $year_end; $annee++) if ($total[$annee] || ($annee >= $minyear && $annee <= max($nowyear, $maxyear))) { print ''.($total[$annee] ?price($total[$annee]) : "0").""; - } - else - { + } else { print ' '; } @@ -519,12 +498,9 @@ for ($annee = $year_start; $annee <= $year_end; $annee++) { print '+0%'; } - } - else - { + } else { print ''; - if ($total[$annee] || ($minyear <= $annee && $annee <= max($nowyear, $maxyear))) { print '-'; } - else { print ' '; } + if ($total[$annee] || ($minyear <= $annee && $annee <= max($nowyear, $maxyear))) { print '-'; } else { print ' '; } print ''; } diff --git a/htdocs/compta/stats/supplier_turnover.php b/htdocs/compta/stats/supplier_turnover.php index 3ff41f4d114..c257d5d1f73 100644 --- a/htdocs/compta/stats/supplier_turnover.php +++ b/htdocs/compta/stats/supplier_turnover.php @@ -69,8 +69,7 @@ if (empty($date_start) || empty($date_end)) // We define date_start and date_end } $month_end = $month_start - 1; if ($month_end < 1) $month_end = 12; - } - else $month_end = $month_start; + } else $month_end = $month_start; $date_start = dol_get_first_day($year_start, $month_start, false); $date_end = dol_get_last_day($year_end, $month_end, false); } if ($q == 1) { $date_start = dol_get_first_day($year_start, 1, false); $date_end = dol_get_last_day($year_start, 3, false); } @@ -121,8 +120,7 @@ if ($modecompta == "CREANCES-DETTES") $description = $langs->trans("RulesPurchaseTurnoverDue"); $builddate = dol_now(); //$exportlink=$langs->trans("NotYetAvailable"); -} -elseif ($modecompta == "RECETTES-DEPENSES") +} elseif ($modecompta == "RECETTES-DEPENSES") { $name = $langs->trans("PurchaseTurnoverCollected"); $calcmode = $langs->trans("CalcModeEngagement"); @@ -133,8 +131,7 @@ elseif ($modecompta == "RECETTES-DEPENSES") $description = $langs->trans("RulesPurchaseTurnoverIn"); $builddate = dol_now(); //$exportlink=$langs->trans("NotYetAvailable"); -} -elseif ($modecompta == "BOOKKEEPING") +} elseif ($modecompta == "BOOKKEEPING") { $name = $langs->trans("PurchaseTurnover"); $calcmode = $langs->trans("CalcModeBookkeeping"); @@ -165,8 +162,7 @@ if ($modecompta == 'CREANCES-DETTES') $sql .= " AND f.type IN (0,2)"; $sql .= " AND f.entity IN (".getEntity('supplier_invoice').")"; if ($socid) $sql .= " AND f.fk_soc = ".$socid; -} -elseif ($modecompta == "RECETTES-DEPENSES") +} elseif ($modecompta == "RECETTES-DEPENSES") { $sql = "SELECT date_format(p.datep,'%Y-%m') as dm, sum(pf.amount) as amount_ttc"; $sql .= " FROM ".MAIN_DB_PREFIX."facture_fourn as f"; @@ -176,8 +172,7 @@ elseif ($modecompta == "RECETTES-DEPENSES") $sql .= " AND pf.fk_facturefourn = f.rowid"; $sql .= " AND f.entity IN (".getEntity('supplier_invoice').")"; if ($socid) $sql .= " AND f.fk_soc = ".$socid; -} -elseif ($modecompta == "BOOKKEEPING") +} elseif ($modecompta == "BOOKKEEPING") { $sql = "SELECT date_format(b.doc_date,'%Y-%m') as dm, sum(b.debit) as amount_ttc"; $sql .= " FROM ".MAIN_DB_PREFIX."accounting_bookkeeping as b, ".MAIN_DB_PREFIX."accounting_journal as aj"; @@ -211,8 +206,7 @@ if ($result) $i++; } $db->free($result); -} -else { +} else { dol_print_error($db); } @@ -289,11 +283,8 @@ for ($mois = 1 + $nb_mois_decalage; $mois <= 12 + $nb_mois_decalage; $mois++) { $now_show_delta = 1; // On a trouve le premier mois de la premiere annee generant du chiffre. print ''.price($cum_ht[$case], 1).''; - } - else - { - if ($minyearmonth < $case && $case <= max($maxyearmonth, $nowyearmonth)) { print '0'; } - else { print ' '; } + } else { + if ($minyearmonth < $case && $case <= max($maxyearmonth, $nowyearmonth)) { print '0'; } else { print ' '; } } print ""; } @@ -306,11 +297,8 @@ for ($mois = 1 + $nb_mois_decalage; $mois <= 12 + $nb_mois_decalage; $mois++) if ($modecompta != 'BOOKKEEPING') print ''; print price($cum[$case], 1); if ($modecompta != 'BOOKKEEPING') print ''; - } - else - { - if ($minyearmonth < $case && $case <= max($maxyearmonth, $nowyearmonth)) { print '0'; } - else { print ' '; } + } else { + if ($minyearmonth < $case && $case <= max($maxyearmonth, $nowyearmonth)) { print '0'; } else { print ' '; } } print ""; @@ -340,12 +328,9 @@ for ($mois = 1 + $nb_mois_decalage; $mois <= 12 + $nb_mois_decalage; $mois++) { print '-'; } - } - else - { + } else { print ''; - if ($minyearmonth <= $case && $case <= $maxyearmonth) { print '-'; } - else { print ' '; } + if ($minyearmonth <= $case && $case <= $maxyearmonth) { print '-'; } else { print ' '; } print ''; } @@ -368,9 +353,7 @@ for ($annee = $year_start; $annee <= $year_end; $annee++) if ($total_ht[$annee] || ($annee >= $minyear && $annee <= max($nowyear, $maxyear))) { print ''.($total_ht[$annee] ?price($total_ht[$annee]) : "0").""; - } - else - { + } else { print ' '; } } @@ -379,9 +362,7 @@ for ($annee = $year_start; $annee <= $year_end; $annee++) if ($total[$annee] || ($annee >= $minyear && $annee <= max($nowyear, $maxyear))) { print ''.($total[$annee] ?price($total[$annee]) : "0").""; - } - else - { + } else { print ' '; } @@ -404,12 +385,9 @@ for ($annee = $year_start; $annee <= $year_end; $annee++) { print '+0%'; } - } - else - { + } else { print ''; - if ($total[$annee] || ($minyear <= $annee && $annee <= max($nowyear, $maxyear))) { print '-'; } - else { print ' '; } + if ($total[$annee] || ($minyear <= $annee && $annee <= max($nowyear, $maxyear))) { print '-'; } else { print ' '; } print ''; } diff --git a/htdocs/compta/stats/supplier_turnover_by_prodserv.php b/htdocs/compta/stats/supplier_turnover_by_prodserv.php index fafb967ace1..5911daaba45 100644 --- a/htdocs/compta/stats/supplier_turnover_by_prodserv.php +++ b/htdocs/compta/stats/supplier_turnover_by_prodserv.php @@ -100,9 +100,7 @@ if (empty($date_start) || empty($date_end)) // We define date_start and date_end else $year_end++; } $date_start = dol_get_first_day($year_start, $month_start, false); $date_end = dol_get_last_day($year_end, $month_end, false); - } - else - { + } else { if ($q == 1) { $date_start = dol_get_first_day($year_start, 1, false); $date_end = dol_get_last_day($year_start, 3, false); } if ($q == 2) { $date_start = dol_get_first_day($year_start, 4, false); $date_end = dol_get_last_day($year_start, 6, false); } if ($q == 3) { $date_start = dol_get_first_day($year_start, 7, false); $date_end = dol_get_last_day($year_start, 9, false); } @@ -172,8 +170,7 @@ if ($modecompta == "CREANCES-DETTES") { $description = $langs->trans("RulesPurchaseTurnoverDue"); $builddate = dol_now(); -} -elseif ($modecompta == "RECETTES-DEPENSES") +} elseif ($modecompta == "RECETTES-DEPENSES") { $name = $langs->trans("PurchaseTurnoverCollected").', '.$langs->trans("ByProductsAndServices"); $calcmode = $langs->trans("CalcModeEngagement"); @@ -181,11 +178,9 @@ elseif ($modecompta == "RECETTES-DEPENSES") $description = $langs->trans("RulesPurchaseTurnoverIn"); $builddate = dol_now(); -} -elseif ($modecompta == "BOOKKEEPING") +} elseif ($modecompta == "BOOKKEEPING") { -} -elseif ($modecompta == "BOOKKEEPINGCOLLECTED") +} elseif ($modecompta == "BOOKKEEPINGCOLLECTED") { } @@ -221,8 +216,7 @@ if ($modecompta == 'CREANCES-DETTES') if ($selected_cat === -2) // Without any category { $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."categorie_product as cp ON p.rowid = cp.fk_product"; - } - elseif ($selected_cat) // Into a specific category + } elseif ($selected_cat) // Into a specific category { $sql .= ", ".MAIN_DB_PREFIX."categorie as c, ".MAIN_DB_PREFIX."categorie_product as cp"; } @@ -240,8 +234,7 @@ if ($modecompta == 'CREANCES-DETTES') if ($selected_cat === -2) // Without any category { $sql .= " AND cp.fk_product is null"; - } - elseif ($selected_cat) { // Into a specific category + } elseif ($selected_cat) { // Into a specific category $sql .= " AND (c.rowid = ".$selected_cat; if ($subcat) $sql .= " OR c.fk_parent = ".$selected_cat; $sql .= ")"; diff --git a/htdocs/compta/stats/supplier_turnover_by_thirdparty.php b/htdocs/compta/stats/supplier_turnover_by_thirdparty.php index a9cdef94711..60d65049800 100644 --- a/htdocs/compta/stats/supplier_turnover_by_thirdparty.php +++ b/htdocs/compta/stats/supplier_turnover_by_thirdparty.php @@ -107,9 +107,7 @@ if (empty($date_start) || empty($date_end)) // We define date_start and date_end if ($q == 2) { $date_start = dol_get_first_day($year_start, 4, false); $date_end = dol_get_last_day($year_start, 6, false); } if ($q == 3) { $date_start = dol_get_first_day($year_start, 7, false); $date_end = dol_get_last_day($year_start, 9, false); } if ($q == 4) { $date_start = dol_get_first_day($year_start, 10, false); $date_end = dol_get_last_day($year_start, 12, false); } -} -else -{ +} else { // TODO We define q } @@ -175,8 +173,7 @@ if ($modecompta == "CREANCES-DETTES") $description = $langs->trans("RulesPurchaseTurnoverDue"); $builddate = dol_now(); //$exportlink=$langs->trans("NotYetAvailable"); -} -elseif ($modecompta == "RECETTES-DEPENSES") +} elseif ($modecompta == "RECETTES-DEPENSES") { $name = $langs->trans("PurchaseTurnoverCollected").', '.$langs->trans("ByThirdParties"); $calcmode = $langs->trans("CalcModeEngagement"); @@ -184,11 +181,9 @@ elseif ($modecompta == "RECETTES-DEPENSES") $description = $langs->trans("RulesPurchaseTurnoverIn"); $builddate = dol_now(); //$exportlink=$langs->trans("NotYetAvailable"); -} -elseif ($modecompta == "BOOKKEEPING") +} elseif ($modecompta == "BOOKKEEPING") { -} -elseif ($modecompta == "BOOKKEEPINGCOLLECTED") +} elseif ($modecompta == "BOOKKEEPINGCOLLECTED") { } $period = $form->selectDate($date_start, 'date_start', 0, 0, 0, '', 1, 0).' - '.$form->selectDate($date_end, 'date_end', 0, 0, 0, '', 1, 0); @@ -215,8 +210,7 @@ if ($modecompta == 'CREANCES-DETTES') { if ($selected_cat === -2) // Without any category { $sql .= " LEFT OUTER JOIN ".MAIN_DB_PREFIX."categorie_societe as cs ON s.rowid = cs.fk_soc"; - } - elseif ($selected_cat) // Into a specific category + } elseif ($selected_cat) // Into a specific category { $sql .= ", ".MAIN_DB_PREFIX."categorie as c, ".MAIN_DB_PREFIX."categorie_societe as cs"; } @@ -229,8 +223,7 @@ if ($modecompta == 'CREANCES-DETTES') { if ($selected_cat === -2) // Without any category { $sql .= " AND cs.fk_soc is null"; - } - elseif ($selected_cat) { // Into a specific category + } elseif ($selected_cat) { // Into a specific category $sql .= " AND (c.rowid = ".$db->escape($selected_cat); if ($subcat) $sql .= " OR c.fk_parent = ".$db->escape($selected_cat); $sql .= ")"; @@ -245,8 +238,7 @@ if ($modecompta == 'CREANCES-DETTES') { if ($selected_cat === -2) // Without any category { $sql .= " LEFT OUTER JOIN ".MAIN_DB_PREFIX."categorie_societe as cs ON s.rowid = cs.fk_soc"; - } - elseif ($selected_cat) // Into a specific category + } elseif ($selected_cat) // Into a specific category { $sql .= ", ".MAIN_DB_PREFIX."categorie as c, ".MAIN_DB_PREFIX."categorie_societe as cs"; } @@ -259,8 +251,7 @@ if ($modecompta == 'CREANCES-DETTES') { if ($selected_cat === -2) // Without any category { $sql .= " AND cs.fk_soc is null"; - } - elseif ($selected_cat) { // Into a specific category + } elseif ($selected_cat) { // Into a specific category $sql .= " AND (c.rowid = ".$selected_cat; if ($subcat) $sql .= " OR c.fk_parent = ".$selected_cat; $sql .= ")"; @@ -574,7 +565,7 @@ if (count($amount)) { print ' '; print ' '; if ($modecompta != 'CREANCES-DETTES') { - print ''; + print ''; } else { print ''.price($catotal_ht).''; } diff --git a/htdocs/compta/tva/card.php b/htdocs/compta/tva/card.php index 658c9353a00..6fa22885dee 100644 --- a/htdocs/compta/tva/card.php +++ b/htdocs/compta/tva/card.php @@ -131,9 +131,7 @@ if ($action == 'add' && $_POST["cancel"] <> $langs->trans("Cancel")) $db->commit(); header("Location: list.php"); exit; - } - else - { + } else { $db->rollback(); setEventMessages($object->error, $object->errors, 'errors'); $action = "create"; @@ -166,22 +164,16 @@ if ($action == 'delete') $db->commit(); header("Location: ".DOL_URL_ROOT.'/compta/tva/list.php'); exit; - } - else - { + } else { $object->error = $accountline->error; $db->rollback(); setEventMessages($object->error, $object->errors, 'errors'); } - } - else - { + } else { $db->rollback(); setEventMessages($object->error, $object->errors, 'errors'); } - } - else - { + } else { $mesg = 'Error try do delete a line linked to a conciliated bank transaction'; setEventMessages($mesg, null, 'errors'); } @@ -388,14 +380,10 @@ if ($id) if (!empty($user->rights->tax->charges->supprimer)) { print ''; - } - else - { + } else { print ''; } - } - else - { + } else { print ''; } print "
"; diff --git a/htdocs/compta/tva/class/tva.class.php b/htdocs/compta/tva/class/tva.class.php index c01408f3c9a..3274a3eaebd 100644 --- a/htdocs/compta/tva/class/tva.class.php +++ b/htdocs/compta/tva/class/tva.class.php @@ -150,15 +150,11 @@ class Tva extends CommonObject { $this->db->commit(); return $this->id; - } - else - { + } else { $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = "Error ".$this->db->lasterror(); $this->db->rollback(); return -1; @@ -224,9 +220,7 @@ class Tva extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -293,9 +287,7 @@ class Tva extends CommonObject $this->db->free($resql); return 1; - } - else - { + } else { $this->error = "Error ".$this->db->lasterror(); return -1; } @@ -404,15 +396,11 @@ class Tva extends CommonObject $ret = $obj->amount; $this->db->free($result); return $ret; - } - else - { + } else { $this->db->free($result); return 0; } - } - else - { + } else { print $this->db->lasterror(); return -1; } @@ -445,15 +433,11 @@ class Tva extends CommonObject $ret = $obj->total_tva; $this->db->free($result); return $ret; - } - else - { + } else { $this->db->free($result); return 0; } - } - else - { + } else { print $this->db->lasterror(); return -1; } @@ -488,15 +472,11 @@ class Tva extends CommonObject $ret = $obj->amount; $this->db->free($result); return $ret; - } - else - { + } else { $this->db->free($result); return 0; } - } - else - { + } else { print $this->db->lasterror(); return -1; } @@ -612,9 +592,7 @@ class Tva extends CommonObject if ($bank_line_id > 0) { $this->update_fk_bank($bank_line_id); - } - else - { + } else { $this->error = $acc->error; $ok = 0; } @@ -632,21 +610,15 @@ class Tva extends CommonObject { $this->db->commit(); return $this->id; - } - else - { + } else { $this->db->rollback(); return -3; } - } - else - { + } else { $this->db->rollback(); return -2; } - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -1; @@ -669,9 +641,7 @@ class Tva extends CommonObject if ($result) { return 1; - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -710,8 +680,7 @@ class Tva extends CommonObject } $linkclose .= ' title="'.dol_escape_htmltag($label, 1).'"'; $linkclose .= ' class="classfortooltip'.($morecss ? ' '.$morecss : '').'"'; - } - else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); + } else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); $linkstart = ''; @@ -752,9 +721,7 @@ class Tva extends CommonObject $this->db->free($resql); return $amount; - } - else - { + } else { return -1; } } @@ -799,9 +766,7 @@ class Tva extends CommonObject } $this->db->free($result); - } - else - { + } else { dol_print_error($this->db); } } diff --git a/htdocs/compta/tva/clients.php b/htdocs/compta/tva/clients.php index 0bce99df2ff..52466e33d84 100644 --- a/htdocs/compta/tva/clients.php +++ b/htdocs/compta/tva/clients.php @@ -66,14 +66,11 @@ if (empty($date_start) || empty($date_end)) // We define date_start and date_end $q = GETPOST("q", "int"); if (empty($q)) { - if (GETPOST("month", 'int')) { $date_start = dol_get_first_day($year_start, GETPOST("month", 'int'), false); $date_end = dol_get_last_day($year_start, GETPOST("month", 'int'), false); } - else - { + if (GETPOST("month", 'int')) { $date_start = dol_get_first_day($year_start, GETPOST("month", 'int'), false); $date_end = dol_get_last_day($year_start, GETPOST("month", 'int'), false); } else { if (empty($conf->global->MAIN_INFO_VAT_RETURN) || $conf->global->MAIN_INFO_VAT_RETURN == 2) { // quaterly vat, we take last past complete quarter $date_start = dol_time_plus_duree(dol_get_first_day($year_start, $current_date['mon'], false), -3 - (($current_date['mon'] - $conf->global->SOCIETE_FISCAL_MONTH_START) % 3), 'm'); $date_end = dol_time_plus_duree($date_start, 3, 'm') - 1; - } - elseif ($conf->global->MAIN_INFO_VAT_RETURN == 3) { // yearly vat + } elseif ($conf->global->MAIN_INFO_VAT_RETURN == 3) { // yearly vat if ($current_date['mon'] < $conf->global->SOCIETE_FISCAL_MONTH_START) { if (($conf->global->SOCIETE_FISCAL_MONTH_START - $current_date['mon']) > 6) { // If period started from less than 6 years, we show past year $year_start--; @@ -85,15 +82,12 @@ if (empty($date_start) || empty($date_end)) // We define date_start and date_end } $date_start = dol_get_first_day($year_start, $conf->global->SOCIETE_FISCAL_MONTH_START, false); $date_end = dol_time_plus_duree($date_start, 1, 'y') - 1; - } - elseif ($conf->global->MAIN_INFO_VAT_RETURN == 1) { // monthly vat, we take last past complete month + } elseif ($conf->global->MAIN_INFO_VAT_RETURN == 1) { // monthly vat, we take last past complete month $date_start = dol_time_plus_duree(dol_get_first_day($year_start, $current_date['mon'], false), -1, 'm'); $date_end = dol_time_plus_duree($date_start, 1, 'm') - 1; } } - } - else - { + } else { if ($q == 1) { $date_start = dol_get_first_day($year_start, 1, false); $date_end = dol_get_last_day($year_start, 3, false); } if ($q == 2) { $date_start = dol_get_first_day($year_start, 4, false); $date_end = dol_get_last_day($year_start, 6, false); } if ($q == 3) { $date_start = dol_get_first_day($year_start, 7, false); $date_end = dol_get_last_day($year_start, 9, false); } @@ -191,15 +185,15 @@ if (!empty($conf->global->MAIN_MODULE_ACCOUNTING)) $description .= '
'.$langs $description .= ($description ? '
' : '').$fsearch; if (!empty($conf->global->TAX_REPORT_EXTRA_REPORT)) { - $description .= '
' - . ' ' - . $langs->trans('SimpleReport') - . '' - . '
' - . ' ' - . $langs->trans('AddExtraReport') - . '' - . '
'; + $description .= '
'; + $description .= ' '; + $description .= $langs->trans('SimpleReport'); + $description .= ''; + $description .= '
'; + $description .= ' '; + $description .= $langs->trans('AddExtraReport'); + $description .= ''; + $description .= '
'; } $elementcust = $langs->trans("CustomersInvoices"); @@ -321,9 +315,7 @@ if (!is_array($x_coll) || !is_array($x_paye)) 'vat' =>$x_paye[$my_paye_thirdpartyid]['vat_list'][$id], 'link' =>$expensereport->getNomUrl(1) ); - } - else - { + } else { $invoice_supplier->id = $x_paye[$my_paye_thirdpartyid]['facid'][$id]; $invoice_supplier->ref = $x_paye[$my_paye_thirdpartyid]['facnum'][$id]; $invoice_supplier->type = $x_paye[$my_paye_thirdpartyid]['type'][$id]; @@ -693,9 +685,7 @@ if (!is_array($x_coll) || !is_array($x_paye)) || ($type == 1 && $conf->global->TAX_MODE_BUY_SERVICE == 'invoice')) { print $langs->trans("NA"); - } - else - { + } else { if (isset($fields['payment_amount']) && $fields['ftotal_ttc']) { $ratiopaymentinvoice = ($fields['payment_amount'] / $fields['ftotal_ttc']); } diff --git a/htdocs/compta/tva/document.php b/htdocs/compta/tva/document.php index 037e6baa5c3..cb26304cde5 100644 --- a/htdocs/compta/tva/document.php +++ b/htdocs/compta/tva/document.php @@ -53,14 +53,14 @@ $result = restrictedArea($user, 'tax', '', 'vat', 'charges'); // Get parameters +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } - -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; if (!$sortorder) $sortorder = "ASC"; @@ -148,9 +148,7 @@ if ($object->id) $permtoedit = $user->rights->fournisseur->facture->creer; $param = '&id='.$object->id; include_once DOL_DOCUMENT_ROOT.'/core/tpl/document_actions_post_headers.tpl.php'; -} -else -{ +} else { print $langs->trans("ErrorUnknown"); } diff --git a/htdocs/compta/tva/index.php b/htdocs/compta/tva/index.php index 43463c34e56..43db8353c4c 100644 --- a/htdocs/compta/tva/index.php +++ b/htdocs/compta/tva/index.php @@ -57,14 +57,11 @@ if (empty($date_start) || empty($date_end)) // We define date_start and date_end $q = GETPOST("q", "int"); if (empty($q)) { - if (GETPOST("month", "int")) { $date_start = dol_get_first_day($year_start, GETPOST("month", "int"), false); $date_end = dol_get_last_day($year_start, GETPOST("month", "int"), false); } - else - { + if (GETPOST("month", "int")) { $date_start = dol_get_first_day($year_start, GETPOST("month", "int"), false); $date_end = dol_get_last_day($year_start, GETPOST("month", "int"), false); } else { if (empty($conf->global->MAIN_INFO_VAT_RETURN) || $conf->global->MAIN_INFO_VAT_RETURN == 2) { // quaterly vat, we take last past complete quarter $date_start = dol_time_plus_duree(dol_get_first_day($year_start, $current_date['mon'], false), -3 - (($current_date['mon'] - $conf->global->SOCIETE_FISCAL_MONTH_START) % 3), 'm'); $date_end = dol_time_plus_duree($date_start, 3, 'm') - 1; - } - elseif ($conf->global->MAIN_INFO_VAT_RETURN == 3) { // yearly vat + } elseif ($conf->global->MAIN_INFO_VAT_RETURN == 3) { // yearly vat if ($current_date['mon'] < $conf->global->SOCIETE_FISCAL_MONTH_START) { if (($conf->global->SOCIETE_FISCAL_MONTH_START - $current_date['mon']) > 6) { // If period started from less than 6 years, we show past year $year_start--; @@ -76,15 +73,12 @@ if (empty($date_start) || empty($date_end)) // We define date_start and date_end } $date_start = dol_get_first_day($year_start, $conf->global->SOCIETE_FISCAL_MONTH_START, false); $date_end = dol_time_plus_duree($date_start, 1, 'y') - 1; - } - elseif ($conf->global->MAIN_INFO_VAT_RETURN == 1) { // monthly vat, we take last past complete month + } elseif ($conf->global->MAIN_INFO_VAT_RETURN == 1) { // monthly vat, we take last past complete month $date_start = dol_time_plus_duree(dol_get_first_day($year_start, $current_date['mon'], false), -1, 'm'); $date_end = dol_time_plus_duree($date_start, 1, 'm') - 1; } } - } - else - { + } else { if ($q == 1) { $date_start = dol_get_first_day($year_start, 1, false); $date_end = dol_get_last_day($year_start, 3, false); } if ($q == 2) { $date_start = dol_get_first_day($year_start, 4, false); $date_end = dol_get_last_day($year_start, 6, false); } if ($q == 3) { $date_start = dol_get_first_day($year_start, 7, false); $date_end = dol_get_last_day($year_start, 9, false); } @@ -176,9 +170,7 @@ function pt($db, $sql, $date) $amountpaid = 0; $previousmode = ''; $previousmonth = ''; - } - else - { + } else { $previousmode = $obj->mode; $previousmonth = $obj->dm; } @@ -207,8 +199,7 @@ function pt($db, $sql, $date) print ""; $db->free($result); - } - else { + } else { dol_print_error($db); } } @@ -255,7 +246,7 @@ llxHeader('', $name); //$textprevyear="
".img_previous($langs->trans("Previous"), 'class="valignbottom"').""; //$textnextyear=" ".img_next($langs->trans("Next"), 'class="valignbottom"').""; -//print load_fiche_titre($langs->transcountry("VAT", $mysoc->country_code), $textprevyear." ".$langs->trans("Year")." ".$year_start." ".$textnextyear, 'invoicing'); +//print load_fiche_titre($langs->transcountry("VAT", $mysoc->country_code), $textprevyear." ".$langs->trans("Year")." ".$year_start." ".$textnextyear, 'bill'); report_header($name, '', $period, $periodlink, $description, $builddate, $exportlink, array(), $calcmode); //report_header($name,'',$textprevyear.$langs->trans("Year")." ".$year_start.$textnextyear,'',$description,$builddate,$exportlink,array(),$calcmode); @@ -371,9 +362,7 @@ while ((($y < $yend) || ($y == $yend && $m <= $mend)) && $mcursor < 1000) // $mc 'vat' =>$x_paye[$my_paye_rate]['vat_list'][$id], //'link' =>$expensereport->getNomUrl(1) ); - } - else - { + } else { //$invoice_supplier->id=$x_paye[$my_paye_rate]['facid'][$id]; //$invoice_supplier->ref=$x_paye[$my_paye_rate]['facnum'][$id]; //$invoice_supplier->type=$x_paye[$my_paye_rate]['type'][$id]; diff --git a/htdocs/compta/tva/list.php b/htdocs/compta/tva/list.php index 35c5dc2c052..5b09da5305c 100644 --- a/htdocs/compta/tva/list.php +++ b/htdocs/compta/tva/list.php @@ -1,6 +1,6 @@ - * Copyright (C) 2004-2018 Laurent Destailleur + * Copyright (C) 2004-2020 Laurent Destailleur * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2011-2019 Alexandre Spangaro * @@ -72,9 +72,7 @@ if (empty($_REQUEST['typeid'])) $part = explode(':', $val); if ($part[0] == 't.fk_typepayment') $typeid = $part[1]; } -} -else -{ +} else { $typeid = $_REQUEST['typeid']; } @@ -160,9 +158,8 @@ if ($result) print ''; print ''; print ''; - print ''; - print_barre_liste($langs->trans("VATPayments"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, '', $num, $totalnboflines, 'title_accountancy', 0, $newcardbutton, '', $limit); + print_barre_liste($langs->trans("VATPayments"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, '', $num, $totalnboflines, 'title_accountancy', 0, $newcardbutton, '', $limit, 0, 0, 1); print '
'; print ''."\n"; @@ -229,9 +226,7 @@ if ($result) if ($obj->payment_code <> '') { $type = ''; - } - else - { + } else { $type = ''; } @@ -267,8 +262,7 @@ if ($result) $bankstatic->label = $obj->blabel; print $bankstatic->getNomUrl(1); - } - else print ' '; + } else print ' '; print ''; } // Amount @@ -292,9 +286,7 @@ if ($result) print ''; $db->free($result); -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/compta/tva/quadri_detail.php b/htdocs/compta/tva/quadri_detail.php index 79ee69a030c..abd5fb6841c 100644 --- a/htdocs/compta/tva/quadri_detail.php +++ b/htdocs/compta/tva/quadri_detail.php @@ -66,14 +66,11 @@ if (empty($date_start) || empty($date_end)) // We define date_start and date_end $q = GETPOST("q", "int"); if (empty($q)) { - if (GETPOST("month", "int")) { $date_start = dol_get_first_day($year_start, GETPOST("month", "int"), false); $date_end = dol_get_last_day($year_start, GETPOST("month", "int"), false); } - else - { + if (GETPOST("month", "int")) { $date_start = dol_get_first_day($year_start, GETPOST("month", "int"), false); $date_end = dol_get_last_day($year_start, GETPOST("month", "int"), false); } else { if (empty($conf->global->MAIN_INFO_VAT_RETURN) || $conf->global->MAIN_INFO_VAT_RETURN == 2) { // quaterly vat, we take last past complete quarter $date_start = dol_time_plus_duree(dol_get_first_day($year_start, $current_date['mon'], false), -3 - (($current_date['mon'] - $conf->global->SOCIETE_FISCAL_MONTH_START) % 3), 'm'); $date_end = dol_time_plus_duree($date_start, 3, 'm') - 1; - } - elseif ($conf->global->MAIN_INFO_VAT_RETURN == 3) { // yearly vat + } elseif ($conf->global->MAIN_INFO_VAT_RETURN == 3) { // yearly vat if ($current_date['mon'] < $conf->global->SOCIETE_FISCAL_MONTH_START) { if (($conf->global->SOCIETE_FISCAL_MONTH_START - $current_date['mon']) > 6) { // If period started from less than 6 years, we show past year $year_start--; @@ -85,15 +82,12 @@ if (empty($date_start) || empty($date_end)) // We define date_start and date_end } $date_start = dol_get_first_day($year_start, $conf->global->SOCIETE_FISCAL_MONTH_START, false); $date_end = dol_time_plus_duree($date_start, 1, 'y') - 1; - } - elseif ($conf->global->MAIN_INFO_VAT_RETURN == 1) { // monthly vat, we take last past complete month + } elseif ($conf->global->MAIN_INFO_VAT_RETURN == 1) { // monthly vat, we take last past complete month $date_start = dol_time_plus_duree(dol_get_first_day($year_start, $current_date['mon'], false), -1, 'm'); $date_end = dol_time_plus_duree($date_start, 1, 'm') - 1; } } - } - else - { + } else { if ($q == 1) { $date_start = dol_get_first_day($year_start, 1, false); $date_end = dol_get_last_day($year_start, 3, false); } if ($q == 2) { $date_start = dol_get_first_day($year_start, 4, false); $date_end = dol_get_last_day($year_start, 6, false); } if ($q == 3) { $date_start = dol_get_first_day($year_start, 7, false); $date_end = dol_get_last_day($year_start, 9, false); } @@ -315,9 +309,7 @@ if (!is_array($x_coll) || !is_array($x_paye)) 'vat' =>$x_paye[$my_paye_rate]['vat_list'][$id], 'link' =>$expensereport->getNomUrl(1) ); - } - else - { + } else { $invoice_supplier->id = $x_paye[$my_paye_rate]['facid'][$id]; $invoice_supplier->ref = $x_paye[$my_paye_rate]['facnum'][$id]; $invoice_supplier->type = $x_paye[$my_paye_rate]['type'][$id]; @@ -439,9 +431,7 @@ if (!is_array($x_coll) || !is_array($x_paye)) if (dol_string_nohtmltag($fields['descr'])) { print ' - '.dol_trunc(dol_string_nohtmltag($fields['descr']), 24); } - } - else - { + } else { if ($type) { $text = img_object($langs->trans('Service'), 'service'); } else { @@ -620,9 +610,7 @@ if (!is_array($x_coll) || !is_array($x_paye)) if (dol_string_nohtmltag($fields['descr'])) { print ' - '.dol_trunc(dol_string_nohtmltag($fields['descr']), 24); } - } - else - { + } else { if ($type) { $text = img_object($langs->trans('Service'), 'service'); } else { @@ -673,9 +661,7 @@ if (!is_array($x_coll) || !is_array($x_paye)) || ($type == 1 && $conf->global->TAX_MODE_BUY_SERVICE == 'invoice')) { print $langs->trans("NA"); - } - else - { + } else { if (isset($fields['payment_amount']) && $fields['ftotal_ttc']) { $ratiopaymentinvoice = ($fields['payment_amount'] / $fields['ftotal_ttc']); } diff --git a/htdocs/contact/agenda.php b/htdocs/contact/agenda.php index 625cf524169..0ea0018632b 100644 --- a/htdocs/contact/agenda.php +++ b/htdocs/contact/agenda.php @@ -76,9 +76,7 @@ if (GETPOST('actioncode', 'array')) { $actioncode = GETPOST('actioncode', 'array', 3); if (!count($actioncode)) $actioncode = '0'; -} -else -{ +} else { $actioncode = GETPOST("actioncode", "alpha", 3) ?GETPOST("actioncode", "alpha", 3) : (GETPOST("actioncode") == '0' ? '0' : (empty($conf->global->AGENDA_DEFAULT_FILTER_TYPE_FOR_OBJECT) ? '' : $conf->global->AGENDA_DEFAULT_FILTER_TYPE_FOR_OBJECT)); } $search_agenda_label = GETPOST('search_agenda_label'); @@ -159,9 +157,7 @@ if (is_object($objcanvas) && $objcanvas->displayCanvasExists($action)) } $objcanvas->assign_values($action, $object->id, $object->ref); // Set value for templates $objcanvas->display_canvas($action); // Show template -} -else -{ +} else { // ----------------------------------------- // When used in standard mode // ----------------------------------------- diff --git a/htdocs/contact/canvas/actions_contactcard_common.class.php b/htdocs/contact/canvas/actions_contactcard_common.class.php index fbd31812fe8..415d9e47790 100644 --- a/htdocs/contact/canvas/actions_contactcard_common.class.php +++ b/htdocs/contact/canvas/actions_contactcard_common.class.php @@ -119,9 +119,7 @@ abstract class ActionsContactCardCommon { $this->tpl['company'] = $objsoc->getNomUrl(1); $this->tpl['company_id'] = $objsoc->id; - } - else - { + } else { $this->tpl['company'] = $form->select_company($this->object->socid, 'socid', '', 1); } @@ -208,8 +206,7 @@ abstract class ActionsContactCardCommon $dolibarr_user = new User($this->db); $result = $dolibarr_user->fetch($this->object->user_id); $this->tpl['dolibarr_user'] = $dolibarr_user->getLoginUrl(1); - } - else $this->tpl['dolibarr_user'] = $langs->trans("NoDolibarrAccess"); + } else $this->tpl['dolibarr_user'] = $langs->trans("NoDolibarrAccess"); } if ($action == 'view' || $action == 'delete') @@ -222,9 +219,7 @@ abstract class ActionsContactCardCommon $objsoc->fetch($this->object->socid); $this->tpl['company'] = $objsoc->getNomUrl(1); - } - else - { + } else { $this->tpl['company'] = $langs->trans("ContactNotLinkedToCompany"); } @@ -309,9 +304,7 @@ abstract class ActionsContactCardCommon if ($resql) { $obj = $this->db->fetch_object($resql); - } - else - { + } else { dol_print_error($this->db); } $this->object->country_id = $langs->trans("Country".$obj->code) ? $langs->trans("Country".$obj->code) : $obj->label; diff --git a/htdocs/contact/canvas/default/actions_contactcard_default.class.php b/htdocs/contact/canvas/default/actions_contactcard_default.class.php index 54b3f137967..099c973b0a4 100644 --- a/htdocs/contact/canvas/default/actions_contactcard_default.class.php +++ b/htdocs/contact/canvas/default/actions_contactcard_default.class.php @@ -104,9 +104,7 @@ class ActionsContactCardDefault extends ActionsContactCardCommon $this->tpl['actionstodo'] = show_actions_todo($conf, $langs, $db, $objsoc, $this->object, 1); $this->tpl['actionsdone'] = show_actions_done($conf, $langs, $db, $objsoc, $this->object, 1); - } - else - { + } else { // Confirm delete contact if ($action == 'delete' && $user->rights->societe->contact->supprimer) { diff --git a/htdocs/contact/card.php b/htdocs/contact/card.php index cecc7867b0f..6b73172decc 100644 --- a/htdocs/contact/card.php +++ b/htdocs/contact/card.php @@ -128,21 +128,15 @@ if (empty($reshook)) if ($result2) { $db->commit(); - } - else - { + } else { $error = $nuser->error; $errors = $nuser->errors; $db->rollback(); } - } - else - { + } else { $error = $nuser->error; $errors = $nuser->errors; $db->rollback(); } - } - else - { + } else { $error = $object->error; $errors = $object->errors; } } @@ -155,9 +149,7 @@ if (empty($reshook)) if ($object->setstatus(0) < 0) { setEventMessages($object->error, $object->errors, 'errors'); - } - else - { + } else { header("Location: ".$_SERVER['PHP_SELF'].'?id='.$id); exit; } @@ -170,9 +162,7 @@ if (empty($reshook)) if ($object->setstatus(1) < 0) { setEventMessages($object->error, $object->errors, 'errors'); - } - else - { + } else { header("Location: ".$_SERVER['PHP_SELF'].'?id='.$id); exit; } @@ -277,9 +267,7 @@ if (empty($reshook)) else $url = 'card.php?id='.$id; header("Location: ".$url); exit; - } - else - { + } else { $db->rollback(); } } @@ -299,15 +287,11 @@ if (empty($reshook)) { header("Location: ".$backtopage); exit; - } - else - { + } else { header("Location: ".DOL_URL_ROOT.'/contact/list.php'); exit; } - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -350,23 +334,17 @@ if (empty($reshook)) if (!$result > 0) { $errors[] = "ErrorFailedToSaveFile"; - } - else - { + } else { $object->photo = dol_sanitizeFileName($_FILES['photo']['name']); // Create thumbs $object->addThumbs($newfile); } } - } - else - { + } else { $errors[] = "ErrorBadImageFormat"; } - } - else - { + } else { switch ($_FILES['photo']['error']) { case 1: //uploaded file exceeds the upload_max_filesize directive in php.ini @@ -451,9 +429,7 @@ if (empty($reshook)) $resql = $db->query($sql); } } - } - else - { + } else { $sql = "DELETE FROM ".MAIN_DB_PREFIX."mailing_unsubscribe WHERE email = '".$db->escape($object->email)."' AND entity = ".$db->escape(getEntity('mailing', 0)); $resql = $db->query($sql); } @@ -464,9 +440,7 @@ if (empty($reshook)) $object->old_lastname = ''; $object->old_firstname = ''; $action = 'view'; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); $action = 'edit'; } @@ -525,9 +499,7 @@ if (is_object($objcanvas) && $objcanvas->displayCanvasExists($action)) } $objcanvas->assign_values($action, $object->id, $object->ref); // Set value for templates $objcanvas->display_canvas($action); // Show template -} -else -{ +} else { // ----------------------------------------- // When used in standard mode // ----------------------------------------- @@ -646,8 +618,7 @@ else print ''; print ''; print ''; - } - else { + } else { print ''; @@ -691,6 +662,7 @@ else // Country print ''; @@ -701,18 +673,14 @@ else if (!empty($conf->global->MAIN_SHOW_REGION_IN_STATE_SELECT) && ($conf->global->MAIN_SHOW_REGION_IN_STATE_SELECT == 1 || $conf->global->MAIN_SHOW_REGION_IN_STATE_SELECT == 2)) { print ''; @@ -722,24 +690,34 @@ else if (($objsoc->typent_code == 'TE_PRIVATE' || !empty($conf->global->CONTACT_USE_COMPANY_ADDRESS)) && dol_strlen(trim($object->fax)) == 0) $object->fax = $objsoc->fax; // Predefined with third party // Phone / Fax - print ''; - print ''; + print ''; + print ''; if ($conf->browser->layout == 'phone') print ''; - print ''; - print ''; + print ''; + print ''; - print ''; - print ''; + print ''; + print ''; if ($conf->browser->layout == 'phone') print ''; - print ''; - print ''; + print ''; + print ''; print ''; if (($objsoc->typent_code == 'TE_PRIVATE' || !empty($conf->global->CONTACT_USE_COMPANY_ADDRESS)) && dol_strlen(trim($object->email)) == 0) $object->email = $objsoc->email; // Predefined with third party // Email - print ''; - print ''; + print ''; + print ''; print ''; if (!empty($conf->mailing->enabled)) @@ -859,9 +837,7 @@ else if ($object->birthday) { print $form->selectDate($object->birthday, 'birthday', 0, 0, 0, "perso", 1, 0); - } - else - { + } else { print $form->selectDate('', 'birthday', 0, 0, 1, "perso", 1, 0); } print ''; @@ -870,9 +846,7 @@ else if ($object->birthday_alert) { print ''; - } - else - { + } else { print ''; } print ''; @@ -888,17 +862,14 @@ else { print '     '; print ''; - } - else - { + } else { print '     '; print ''; } print ''; print ""; - } - elseif ($action == 'edit' && !empty($id)) + } elseif ($action == 'edit' && !empty($id)) { /* * Fiche en mode edition @@ -964,12 +935,12 @@ else // Lastname print ''; - print ''; + print ''; print ''; print ''; // Firstname print ''; - print ''; + print ''; print ''; // Company @@ -988,13 +959,13 @@ else print ''; print ''; - print ''; + print ''; // Address print ''; print ''; // Country print ''; @@ -1018,9 +990,7 @@ else if (!empty($conf->global->MAIN_SHOW_REGION_IN_STATE_SELECT) && ($conf->global->MAIN_SHOW_REGION_IN_STATE_SELECT == 1 || $conf->global->MAIN_SHOW_REGION_IN_STATE_SELECT == 2)) { print ''; - print ''; - print ''; - print ''; + print ''; + print ''; + print ''; + print ''; - print ''; - print ''; - print ''; - print ''; + print ''; + print ''; + print ''; + print ''; // EMail - print ''; - print ''; + print ''; + print ''; if (!empty($conf->mailing->enabled)) { $langs->load("mails"); print ''; print ''; - } - else - { + } else { print ''; } print ''; @@ -1073,9 +1051,7 @@ else print ''; print ''; - } - else - { + } else { print ''; } print ''; @@ -1220,8 +1196,7 @@ else $dolibarr_user = new User($db); $result = $dolibarr_user->fetch($object->user_id); print $dolibarr_user->getLoginUrl(1); - } - else print $langs->trans("NoDolibarrAccess"); + } else print $langs->trans("NoDolibarrAccess"); print ''; // Photo @@ -1396,8 +1371,7 @@ else if (!empty($conf->commande->enabled) || !empty($conf->expedition->enabled)) { print ''; print ''; @@ -1456,9 +1429,7 @@ else { $langs->load("mails"); print ''; - } - else - { + } else { $langs->load("mails"); print ''; } diff --git a/htdocs/contact/class/contact.class.php b/htdocs/contact/class/contact.class.php index 7f52195297b..cfe41eafca2 100644 --- a/htdocs/contact/class/contact.class.php +++ b/htdocs/contact/class/contact.class.php @@ -287,9 +287,7 @@ class Contact extends CommonObject } $this->db->free($resql); return 1; - } - else - { + } else { dol_print_error($this->db); $this->error = $this->db->lasterror(); return -1; @@ -388,16 +386,12 @@ class Contact extends CommonObject { $this->db->commit(); return $this->id; - } - else - { + } else { $this->db->rollback(); dol_syslog(get_class($this)."::create ".$this->error, LOG_ERR); return -2; } - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); @@ -489,7 +483,7 @@ class Contact extends CommonObject $action = 'update'; // Actions on extra fields - if (!$error && empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) + if (!$error) { $result = $this->insertExtraFields(); if ($result < 0) @@ -596,16 +590,12 @@ class Contact extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { dol_syslog(get_class($this)."::update Error ".$this->error, LOG_ERR); $this->db->rollback(); return -$error; } - } - else - { + } else { $this->error = $this->db->lasterror().' sql='.$sql; $this->db->rollback(); return -1; @@ -761,14 +751,10 @@ class Contact extends CommonObject $error++; $this->error = $this->db->lasterror(); } - } - else - { + } else { $result = true; } - } - else - { + } else { $sql = "DELETE FROM ".MAIN_DB_PREFIX."user_alert "; $sql .= "WHERE type=1 AND fk_contact=".$this->db->escape($id)." AND fk_user=".$user->id; $result = $this->db->query($sql); @@ -791,9 +777,7 @@ class Contact extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { dol_syslog(get_class($this)."::update Error ".$this->error, LOG_ERR); $this->db->rollback(); return -$error; @@ -846,8 +830,7 @@ class Contact extends CommonObject $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."user as u ON c.rowid = u.fk_socpeople"; $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."societe as s ON c.fk_soc = s.rowid"; if ($id) $sql .= " WHERE c.rowid = ".$id; - else - { + else { $sql .= " WHERE c.entity IN (".getEntity($this->element).")"; if ($ref_ext) { $sql .= " AND c.ref_ext = '".$this->db->escape($ref_ext)."'"; @@ -867,8 +850,7 @@ class Contact extends CommonObject dol_syslog($this->error, LOG_ERR); return 2; - } - elseif ($num) // $num = 1 + } elseif ($num) // $num = 1 { $obj = $this->db->fetch_object($resql); @@ -942,9 +924,7 @@ class Contact extends CommonObject $this->user_id = $uobj->rowid; } $this->db->free($resql); - } - else - { + } else { $this->error = $this->db->error(); return -1; } @@ -970,9 +950,7 @@ class Contact extends CommonObject $this->birthday_alert = 1; } $this->db->free($resql); - } - else - { + } else { $this->error = $this->db->error(); return -1; } @@ -987,15 +965,11 @@ class Contact extends CommonObject } return 1; - } - else - { + } else { $this->error = $langs->trans("RecordNotFound"); return 0; } - } - else - { + } else { $this->error = $this->db->error(); return -1; } @@ -1016,8 +990,7 @@ class Contact extends CommonObject if (in_array($this->civility_id, array('MR')) || in_array($this->civility_code, array('MR'))) { $this->gender = 'man'; - } - elseif (in_array($this->civility_id, array('MME', 'MLE')) || in_array($this->civility_code, array('MME', 'MLE'))) + } elseif (in_array($this->civility_id, array('MME', 'MLE')) || in_array($this->civility_code, array('MME', 'MLE'))) { $this->gender = 'woman'; } @@ -1061,9 +1034,7 @@ class Contact extends CommonObject } $this->db->free($resql); return 0; - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -1118,9 +1089,7 @@ class Contact extends CommonObject $i++; } - } - else - { + } else { $error++; $this->error = $this->db->error().' sql='.$sql; } @@ -1168,7 +1137,7 @@ class Contact extends CommonObject } // Removed extrafields - if ((!$error) && (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED))) { + if (!$error) { // For avoid conflicts if trigger used $result = $this->deleteExtraFields(); if ($result < 0) $error++; @@ -1186,9 +1155,7 @@ class Contact extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); dol_syslog("Error ".$this->error, LOG_ERR); return -1; @@ -1235,9 +1202,7 @@ class Contact extends CommonObject } $this->db->free($resql); - } - else - { + } else { print $this->db->error(); } } @@ -1262,9 +1227,7 @@ class Contact extends CommonObject $this->db->free($resql); return $nb; - } - else - { + } else { $this->error = $this->db->error(); return -1; } @@ -1525,9 +1488,7 @@ class Contact extends CommonObject { $this->db->rollback(); return -$error; - } - else - { + } else { $this->db->commit(); return 1; } @@ -1590,7 +1551,7 @@ class Contact extends CommonObject public static function replaceThirdparty(DoliDB $db, $origin_id, $dest_id) { $tables = array( - 'socpeople' + 'socpeople', 'societe_contacts' ); return CommonObject::commonReplaceThirdparty($db, $origin_id, $dest_id, $tables); @@ -1680,9 +1641,7 @@ class Contact extends CommonObject } return $tab; - } - else - { + } else { $this->error = $this->db->error(); dol_print_error($this->db); return -1; diff --git a/htdocs/contact/consumption.php b/htdocs/contact/consumption.php index fe230ba45b9..7655e00ea3f 100644 --- a/htdocs/contact/consumption.php +++ b/htdocs/contact/consumption.php @@ -147,11 +147,11 @@ if ($conf->ficheinter->enabled && $user->rights->ficheinter->lire) $elementTypeA if ($object->thirdparty->fournisseur) { $thirdTypeArray['supplier'] = $langs->trans("supplier"); - if ($conf->fournisseur->enabled && $user->rights->fournisseur->facture->lire) $elementTypeArray['supplier_invoice'] = $langs->transnoentitiesnoconv('SuppliersInvoices'); - if ($conf->fournisseur->enabled && $user->rights->fournisseur->commande->lire) $elementTypeArray['supplier_order'] = $langs->transnoentitiesnoconv('SuppliersOrders'); + if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || !empty($conf->supplier_invoice->enabled)) && $user->rights->fournisseur->facture->lire) $elementTypeArray['supplier_invoice'] = $langs->transnoentitiesnoconv('SuppliersInvoices'); + if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || !empty($conf->supplier_order->enabled)) && $user->rights->fournisseur->commande->lire) $elementTypeArray['supplier_order']= $langs->transnoentitiesnoconv('SuppliersOrders'); - // There no contact type for supplier proposals - // if ($conf->fournisseur->enabled && $user->rights->supplier_proposal->lire) $elementTypeArray['supplier_proposal']=$langs->transnoentitiesnoconv('SupplierProposals'); + // There no contact type for supplier proposals + // if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)) && $user->rights->supplier_proposal->lire) $elementTypeArray['supplier_proposal']=$langs->transnoentitiesnoconv('SupplierProposals'); } print '
'.$langs->trans("PaymentTypeShort".$obj->payment_code).' '.$obj->num_payment.' 
'; print $form->select_company($socid, 'socid', '', 'SelectThirdParty'); print '
'; + print img_picto('', 'globe-americas', 'class="paddingrightonly"'); print $form->select_country((GETPOST("country_id", 'alpha') ? GETPOST("country_id", 'alpha') : $object->country_id), 'country_id'); if ($user->admin) print info_admin($langs->trans("YouCanChangeValuesForThisListFromDictionarySetup"), 1); print '
'; - } - else - { + } else { print '
'; } if ($object->country_id) { print $formcompany->select_state(GETPOST("state_id", 'alpha') ? GETPOST("state_id", 'alpha') : $object->state_id, $object->country_code, 'state_id'); - } - else - { + } else { print $countrynotdefined; } print '
'.img_picto('', 'object_phoning').' '.$form->editfieldkey('PhonePro', 'phone_pro', '', $object, 0).'
'.$form->editfieldkey('PhonePro', 'phone_pro', '', $object, 0).''; + print img_picto('', 'object_phoning'); + print '
'.img_picto('', 'object_phoning').' '.$form->editfieldkey('PhonePerso', 'phone_perso', '', $object, 0).'
'.$form->editfieldkey('PhonePerso', 'phone_perso', '', $object, 0).''; + print img_picto('', 'object_phoning'); + print '
'.img_picto('', 'object_phoning_mobile').' '.$form->editfieldkey('PhoneMobile', 'phone_mobile', '', $object, 0).'
'.$form->editfieldkey('PhoneMobile', 'phone_mobile', '', $object, 0).''; + print img_picto('', 'object_phoning_mobile'); + print '
'.img_picto('', 'object_phoning_fax').' '.$form->editfieldkey('Fax', 'fax', '', $object, 0).''.$form->editfieldkey('Fax', 'fax', '', $object, 0).''; + print img_picto('', 'object_phoning_fax'); + print '
'.img_picto('', 'object_email').' '.$form->editfieldkey('EMail', 'email', '', $object, 0, 'string', '').'
'.$form->editfieldkey('EMail', 'email', '', $object, 0, 'string', '').''; + print img_picto('', 'object_email'); + print '
lastname).'" autofocus="autofocus">lastname).'" autofocus="autofocus">
firstname).'">firstname).'">
poste).'">
poste).'">
'; - print '
'; - print ''; + print '
'; + print ''; print '
'; if ($conf->use_javascript_ajax) print ''.$langs->trans('CopyAddressFromSoc').'
'; print '
'; @@ -1002,13 +973,14 @@ else // Zip / Town print '
/ '; - print $formcompany->select_ziptown((isset($_POST["zipcode"]) ?GETPOST("zipcode") : $object->zip), 'zipcode', array('town', 'selectcountry_id', 'state_id'), 6).' '; - print $formcompany->select_ziptown((isset($_POST["town"]) ?GETPOST("town") : $object->town), 'town', array('zipcode', 'selectcountry_id', 'state_id')); + print $formcompany->select_ziptown((GETPOSTISSET("zipcode") ? GETPOST("zipcode") : $object->zip), 'zipcode', array('town', 'selectcountry_id', 'state_id'), 6).' '; + print $formcompany->select_ziptown((GETPOSTISSET("town") ? GETPOST("town") : $object->town), 'town', array('zipcode', 'selectcountry_id', 'state_id')); print '
'; - print $form->select_country(isset($_POST["country_id"]) ?GETPOST("country_id") : $object->country_id, 'country_id'); + print img_picto('', 'globe-americas', 'class="paddingrightonly"'); + print $form->select_country(GETPOSTISSET("country_id") ? GETPOST("country_id") : $object->country_id, 'country_id'); if ($user->admin) print info_admin($langs->trans("YouCanChangeValuesForThisListFromDictionarySetup"), 1); print '
'; - } - else - { + } else { print '
'; } @@ -1029,27 +999,35 @@ else } // Phone - print '
'.img_picto('', 'object_phoning').' '.$form->editfieldkey('PhonePro', 'phone_pro', GETPOST('phone_pro', 'alpha'), $object, 0).''.img_picto('', 'object_phoning').' '.$form->editfieldkey('PhonePerso', 'fax', GETPOST('phone_perso', 'alpha'), $object, 0).'
'.$form->editfieldkey('PhonePro', 'phone_pro', GETPOST('phone_pro', 'alpha'), $object, 0).''; + print img_picto('', 'object_phoning'); + print ''.$form->editfieldkey('PhonePerso', 'fax', GETPOST('phone_perso', 'alpha'), $object, 0).''; + print img_picto('', 'object_phoning'); + print '
'.img_picto('', 'object_phoning_mobile').' '.$form->editfieldkey('PhoneMobile', 'phone_mobile', GETPOST('phone_mobile', 'alpha'), $object, 0, 'string', '').''.img_picto('', 'object_phoning_fax').' '.$form->editfieldkey('Fax', 'fax', GETPOST('fax', 'alpha'), $object, 0).'
'.$form->editfieldkey('PhoneMobile', 'phone_mobile', GETPOST('phone_mobile', 'alpha'), $object, 0, 'string', '').''; + print img_picto('', 'object_phoning_mobile'); + print ''.$form->editfieldkey('Fax', 'fax', GETPOST('fax', 'alpha'), $object, 0).''; + print img_picto('', 'object_phoning_fax'); + print '
'.img_picto('', 'object_email').' '.$form->editfieldkey('EMail', 'email', GETPOST('email', 'alpha'), $object, 0, 'string', '', (!empty($conf->global->SOCIETE_EMAIL_MANDATORY))).'
'.$form->editfieldkey('EMail', 'email', GETPOST('email', 'alpha'), $object, 0, 'string', '', (!empty($conf->global->SOCIETE_EMAIL_MANDATORY))).''; + print img_picto('', 'object_email'); + print ''.$langs->trans("NbOfEMailingsSend").''.$object->getNbOfEMailings().'
'.$form->selectyesno('no_email', (GETPOSTISSET("no_email") ?GETPOST("no_email", 'alpha') : $noemail), 1).'
'; - if (!empty($conf->expedition->enabled)) { print $langs->trans("ContactForOrdersOrShipments"); } - else print $langs->trans("ContactForOrders"); + if (!empty($conf->expedition->enabled)) { print $langs->trans("ContactForOrdersOrShipments"); } else print $langs->trans("ContactForOrders"); print ''; $none = $langs->trans("NoContactForAnyOrder"); if (!empty($conf->expedition->enabled)) { $none = $langs->trans("NoContactForAnyOrderOrShipments"); } @@ -1425,14 +1399,13 @@ else $dolibarr_user = new User($db); $result = $dolibarr_user->fetch($object->user_id); print $dolibarr_user->getLoginUrl(1); - } - else print $langs->trans("NoDolibarrAccess"); + } else print $langs->trans("NoDolibarrAccess"); print '
'; print $langs->trans("VCard").''; print ''; - print img_picto($langs->trans("Download"), 'vcard.png').' '; + print img_picto($langs->trans("Download"), 'vcard.png', 'class="paddingrightonly"'); print $langs->trans("Download"); print ''; print '
'; @@ -178,8 +178,7 @@ if ($type_element == 'fichinter') $where = ' WHERE f.entity IN ('.getEntity('ficheinter').')'; $dateprint = 'f.datec'; $doc_number = 'f.ref'; -} -elseif ($type_element == 'invoice') +} elseif ($type_element == 'invoice') { // Customer : show products from invoices require_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php'; $documentstatic = new Facture($db); @@ -193,8 +192,7 @@ elseif ($type_element == 'invoice') $dateprint = 'f.datef'; $doc_number = 'f.ref'; $thirdTypeSelect = 'customer'; -} -elseif ($type_element == 'propal') +} elseif ($type_element == 'propal') { require_once DOL_DOCUMENT_ROOT.'/comm/propal/class/propal.class.php'; $documentstatic = new Propal($db); @@ -208,8 +206,7 @@ elseif ($type_element == 'propal') $datePrint = 'c.datep'; $doc_number = 'c.ref'; $thirdTypeSelect = 'customer'; -} -elseif ($type_element == 'order') +} elseif ($type_element == 'order') { require_once DOL_DOCUMENT_ROOT.'/commande/class/commande.class.php'; $documentstatic = new Commande($db); @@ -223,8 +220,7 @@ elseif ($type_element == 'order') $dateprint = 'c.date_commande'; $doc_number = 'c.ref'; $thirdTypeSelect = 'customer'; -} -elseif ($type_element == 'supplier_invoice') +} elseif ($type_element == 'supplier_invoice') { // Supplier : Show products from invoices. require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php'; $documentstatic = new FactureFournisseur($db); @@ -266,8 +262,7 @@ elseif ($type_element == 'supplier_order') $dateprint = 'c.date_valid'; $doc_number = 'c.ref'; $thirdTypeSelect = 'supplier'; -} -elseif ($type_element == 'contract') +} elseif ($type_element == 'contract') { // Order require_once DOL_DOCUMENT_ROOT.'/contrat/class/contrat.class.php'; $documentstatic = new Contrat($db); @@ -423,9 +418,7 @@ if ($sql_select) if ($type_element == 'contract') { print $documentstaticline->getLibStatut(2); - } - else - { + } else { print $documentstatic->getLibStatut(2); } print ''; @@ -467,9 +460,7 @@ if ($sql_select) } $label = (!empty($prod->multilangs[$outputlangs->defaultlang]["label"])) ? $prod->multilangs[$outputlangs->defaultlang]["label"] : $objp->product_label; - } - else - { + } else { $label = $objp->product_label; } @@ -501,29 +492,23 @@ if ($sql_select) $discount = new DiscountAbsolute($db); $discount->fetch($objp->fk_remise_except); echo ($txt ? ' - ' : '').$langs->transnoentities("DiscountFromExcessReceived", $discount->getNomUrl(0)); - } - elseif ($objp->description == '(EXCESS PAID)' && $objp->fk_remise_except > 0) + } elseif ($objp->description == '(EXCESS PAID)' && $objp->fk_remise_except > 0) { $discount = new DiscountAbsolute($db); $discount->fetch($objp->fk_remise_except); echo ($txt ? ' - ' : '').$langs->transnoentities("DiscountFromExcessPaid", $discount->getNomUrl(0)); - } - elseif ($objp->description == '(DEPOSIT)' && $objp->fk_remise_except > 0) + } elseif ($objp->description == '(DEPOSIT)' && $objp->fk_remise_except > 0) { $discount = new DiscountAbsolute($db); $discount->fetch($objp->fk_remise_except); echo ($txt ? ' - ' : '').$langs->transnoentities("DiscountFromDeposit", $discount->getNomUrl(0)); // Add date of deposit if (!empty($conf->global->INVOICE_ADD_DEPOSIT_DATE)) echo ' ('.dol_print_date($discount->datec).')'; - } - else - { + } else { echo ($txt ? ' - ' : '').dol_htmlentitiesbr($objp->description); } } - } - else - { + } else { if ($objp->fk_product > 0) { echo $form->textwithtooltip($text, $description, 3, '', '', $i, 0, ''); diff --git a/htdocs/contact/document.php b/htdocs/contact/document.php index 28d8ac42f6b..e21ee3e492b 100644 --- a/htdocs/contact/document.php +++ b/htdocs/contact/document.php @@ -55,11 +55,12 @@ if ($user->socid) $socid = $user->socid; $result = restrictedArea($user, 'contact', $id, 'socpeople&societe', '', '', 'rowid', $objcanvas); // If we create a contact with no company (shared contacts), no check on write permission // Get parameters +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; diff --git a/htdocs/contact/ldap.php b/htdocs/contact/ldap.php index 842d03cb3a6..f601086ad05 100644 --- a/htdocs/contact/ldap.php +++ b/htdocs/contact/ldap.php @@ -67,9 +67,7 @@ if ($action == 'dolibarr2ldap') { setEventMessages($langs->trans("ContactSynchronized"), null, 'mesgs'); $db->commit(); - } - else - { + } else { setEventMessages($ldap->error, $ldap->errors, 'errors'); $db->rollback(); } @@ -106,9 +104,7 @@ if ($object->socid > 0) $thirdparty->fetch($object->socid); print ''.$langs->trans("ThirdParty").''.$thirdparty->getNomUrl(1).''; -} -else -{ +} else { print ''.$langs->trans("ThirdParty").''; print $langs->trans("ContactNotLinkedToCompany"); print ''; @@ -183,22 +179,16 @@ if ($result > 0) if (!is_array($records)) { print ''.$langs->trans("ErrorFailedToReadLDAP").''; - } - else - { + } else { $result = show_ldap_content($records, 0, $records['count'], true); } - } - else - { + } else { print ''.$langs->trans("LDAPRecordNotFound").' (dn='.$dn.' - search='.$search.')'; } $ldap->unbind(); $ldap->close(); -} -else -{ +} else { setEventMessages($ldap->error, $ldap->errors, 'errors'); } diff --git a/htdocs/contact/list.php b/htdocs/contact/list.php index 25242dc2185..3f7791019ec 100644 --- a/htdocs/contact/list.php +++ b/htdocs/contact/list.php @@ -123,14 +123,12 @@ if ($type == "c") if (empty($contextpage) || $contextpage == 'contactlist') $contextpage = 'contactcustomerlist'; $titre .= ' ('.$langs->trans("ThirdPartyCustomers").')'; $urlfiche = "card.php"; -} -elseif ($type == "f") +} elseif ($type == "f") { if (empty($contextpage) || $contextpage == 'contactlist') $contextpage = 'contactsupplierlist'; $titre .= ' ('.$langs->trans("ThirdPartySuppliers").')'; $urlfiche = "card.php"; -} -elseif ($type == "o") +} elseif ($type == "o") { if (empty($contextpage) || $contextpage == 'contactlist') $contextpage = 'contactotherlist'; $titre .= ' ('.$langs->trans("OthersNotLinkedToThirdParty").')'; @@ -326,9 +324,7 @@ if (!empty($userid)) // propre au commercial if ($search_priv != '0' && $search_priv != '1') { $sql .= " AND (p.priv='0' OR (p.priv='1' AND p.fk_user_creat=".$user->id."))"; -} -else -{ +} else { if ($search_priv == '0') $sql .= " AND p.priv='0'"; if ($search_priv == '1') $sql .= " AND (p.priv='1' AND p.fk_user_creat=".$user->id.")"; } @@ -358,7 +354,6 @@ if (strlen($search_fax)) $sql .= natural_search('p.fax', $search_fax) if (!empty($conf->socialnetworks->enabled)) { foreach ($socialnetworks as $key => $value) { if ($value['active'] && strlen($search_{$key})) { - //$sql.= natural_search("p.socialnetworks->'$.".$key."'", $search_{$key}); $sql .= ' AND p.socialnetworks LIKE \'%"'.$key.'":"'.$search_{$key}.'%\''; } } @@ -376,16 +371,13 @@ if ($search_import_key) $sql .= natural_search("p.import_key", $sear if ($type == "o") // filtre sur type { $sql .= " AND p.fk_soc IS NULL"; -} -elseif ($type == "f") // filtre sur type +} elseif ($type == "f") // filtre sur type { $sql .= " AND s.fournisseur = 1"; -} -elseif ($type == "c") // filtre sur type +} elseif ($type == "c") // filtre sur type { $sql .= " AND s.client IN (1, 3)"; -} -elseif ($type == "p") // filtre sur type +} elseif ($type == "p") // filtre sur type { $sql .= " AND s.client IN (2, 3)"; } @@ -403,9 +395,7 @@ $sql .= $hookmanager->resPrint; if ($view == "recent") { $sql .= $db->order("p.datec", "DESC"); -} -else -{ +} else { $sql .= $db->order($sortfield, $sortorder); } @@ -922,9 +912,7 @@ while ($i < min($num, $limit)) $objsoc = new Societe($db); $objsoc->fetch($obj->socid); print $objsoc->getNomUrl(1); - } - else - print ' '; + } else print ' '; print ''; if (!$i) $totalarray['nbfield']++; } @@ -939,7 +927,7 @@ while ($i < min($num, $limit)) // 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, 'totalarray'=>&$totalarray); $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/contact/perso.php b/htdocs/contact/perso.php index 5a6ea3eb032..a5a1714b6e5 100644 --- a/htdocs/contact/perso.php +++ b/htdocs/contact/perso.php @@ -85,21 +85,15 @@ if ($action == 'update' && !$_POST["cancel"] && $user->rights->societe->contact- if (!dol_move_uploaded_file($_FILES['photo']['tmp_name'], $newfile, 1, 0, $_FILES['photo']['error']) > 0) { setEventMessages($langs->trans("ErrorFailedToSaveFile"), null, 'errors'); - } - else - { + } else { // Create thumbs $object->addThumbs($newfile); } } - } - else - { + } else { setEventMessages("ErrorBadImageFormat", null, 'errors'); } - } - else - { + } else { switch ($_FILES['photo']['error']) { case 1: //uploaded file exceeds the upload_max_filesize directive in php.ini @@ -111,9 +105,7 @@ if ($action == 'update' && !$_POST["cancel"] && $user->rights->societe->contact- break; } } - } - else - { + } else { $error = $object->error; } } @@ -183,9 +175,7 @@ if ($action == 'edit') $objsoc->fetch($object->socid); print ''.$langs->trans("ThirdParty").''.$objsoc->getNomUrl(1).''; - } - else - { + } else { print ''.$langs->trans("ThirdParty").''; print $langs->trans("ContactNotLinkedToCompany"); print ''; @@ -207,9 +197,7 @@ if ($action == 'edit') if (!empty($object->birthday_alert)) { print ''; - } - else - { + } else { print ''; } print ''; @@ -225,9 +213,7 @@ if ($action == 'edit') print '
'; print ""; -} -else -{ +} else { // View mode dol_fiche_head($head, 'perso', $title, -1, 'contact'); @@ -301,9 +287,7 @@ else if ($object->birthday_alert) print $langs->trans("BirthdayAlertOn"); else print $langs->trans("BirthdayAlertOff"); print ''; - } - else - { + } else { print ''.$langs->trans("DateToBirth").''; } print ""; diff --git a/htdocs/contact/vcard.php b/htdocs/contact/vcard.php index de064d6bccf..ee325317033 100644 --- a/htdocs/contact/vcard.php +++ b/htdocs/contact/vcard.php @@ -2,6 +2,7 @@ /* Copyright (C) 2004 Rodolphe Quiedeville * Copyright (C) 2004-2010 Laurent Destailleur * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2020 Tobias Sekan * * 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 @@ -57,29 +58,57 @@ $v = new vCard(); $v->setProdId('Dolibarr '.DOL_VERSION); $v->setUid('DOLIBARR-CONTACTID-'.$contact->id); -$v->setName($contact->lastname, $contact->firstname, "", "", ""); -$v->setFormattedName($contact->getFullName($langs)); +$v->setName($contact->lastname, $contact->firstname, "", $contact->civility, ""); +$v->setFormattedName($contact->getFullName($langs, 1)); -// By default, all informations are for work (except phone_perso and phone_mobile) $v->setPhoneNumber($contact->phone_pro, "TYPE=WORK;VOICE"); +//$v->setPhoneNumber($contact->phone_perso,"TYPE=HOME;VOICE"); $v->setPhoneNumber($contact->phone_mobile, "TYPE=CELL;VOICE"); $v->setPhoneNumber($contact->fax, "TYPE=WORK;FAX"); -$v->setAddress("", "", $contact->address, $contact->town, "", $contact->zip, ($contact->country_code ? $contact->country : ''), "TYPE=WORK;POSTAL"); -$v->setLabel("", "", $contact->address, $contact->town, "", $contact->zip, ($contact->country_code ? $contact->country : ''), "TYPE=WORK"); -$v->setEmail($contact->email, 'TYPE=PREF,INTERNET'); -$v->setNote($contact->note); +$country = $contact->country_code ? $contact->country : '' ; +$v->setAddress("", "", $contact->address, $contact->town, $contact->state, $contact->zip, $country, "TYPE=WORK;POSTAL"); +$v->setLabel("", "", $contact->address, $contact->town, $contact->state, $contact->zip, $country, "TYPE=WORK"); + +$v->setEmail($contact->email); +$v->setNote($contact->note); $v->setTitle($contact->poste); // Data from linked company if ($company->id) { $v->setURL($company->url, "TYPE=WORK"); - if (!$contact->phone_pro) $v->setPhoneNumber($company->phone, "TYPE=WORK;VOICE"); - if (!$contact->fax) $v->setPhoneNumber($company->fax, "TYPE=WORK;FAX"); - if (!$contact->zip) $v->setAddress("", "", $company->address, $company->town, "", $company->zip, $company->country, "TYPE=WORK;POSTAL"); - if ($company->email != $contact->email) $v->setEmail($company->email, 'TYPE=PREF,INTERNET'); + if (! $contact->phone_pro) $v->setPhoneNumber($company->phone, "TYPE=WORK;VOICE"); + if (! $contact->fax) $v->setPhoneNumber($company->fax, "TYPE=WORK;FAX"); + if (! $contact->zip) $v->setAddress("", "", $company->address, $company->town, $company->state, $company->zip, $company->country, "TYPE=WORK;POSTAL"); + + // when company e-mail is empty, use only contact e-mail + if (empty(trim($company->email))) + { + // was set before, don't set twice + } + // when contact e-mail is empty, use only company e-mail + elseif (empty(trim($contact->email))) + { + $v->setEmail($company->email); + } + // when e-mail domain of contact and company are the same, use contact e-mail at first (and company e-mail at second) + elseif (strtolower(end(explode("@", $contact->email))) == strtolower(end(explode("@", $company->email)))) + { + $v->setEmail($contact->email); + + // support by Microsoft Outlook (2019 and possible earlier) + $v->setEmail($company->email, 'INTERNET'); + } + // when e-mail of contact and company complete different use company e-mail at first (and contact e-mail at second) + else { + $v->setEmail($company->email); + + // support by Microsoft Outlook (2019 and possible earlier) + $v->setEmail($contact->email, 'INTERNET'); + } + // Si contact lie a un tiers non de type "particulier" if ($contact->typent_code != 'TE_PRIVATE') $v->setOrg($company->name); } @@ -95,7 +124,7 @@ $db->close(); $output = $v->getVCard(); -$filename = trim(urldecode($v->getFileName())); // "Nom prenom.vcf" +$filename = trim(urldecode($v->getFileName())); // "Nom prenom.vcf" $filenameurlencoded = dol_sanitizeFileName(urlencode($filename)); //$filename = dol_sanitizeFileName($filename); diff --git a/htdocs/contrat/agenda.php b/htdocs/contrat/agenda.php index 2b7ca20c6e8..d016cb23d75 100644 --- a/htdocs/contrat/agenda.php +++ b/htdocs/contrat/agenda.php @@ -39,9 +39,7 @@ if (GETPOST('actioncode', 'array')) { $actioncode = GETPOST('actioncode', 'array', 3); if (!count($actioncode)) $actioncode = '0'; -} -else -{ +} else { $actioncode = GETPOST("actioncode", "alpha", 3) ?GETPOST("actioncode", "alpha", 3) : (GETPOST("actioncode") == '0' ? '0' : (empty($conf->global->AGENDA_DEFAULT_FILTER_TYPE_FOR_OBJECT) ? '' : $conf->global->AGENDA_DEFAULT_FILTER_TYPE_FOR_OBJECT)); } $search_agenda_label = GETPOST('search_agenda_label'); @@ -146,14 +144,16 @@ if ($id > 0) $morehtmlref .= $form->editfieldval("", 'ref', $object->ref, $object, $user->rights->contrat->creer, 'string', '', 0, 2); } + $permtoedit = 0; + $morehtmlref .= '
'; // Ref customer - $morehtmlref .= $form->editfieldkey("RefCustomer", 'ref_customer', $object->ref_customer, $object, $user->rights->contrat->creer, 'string', '', 0, 1); - $morehtmlref .= $form->editfieldval("RefCustomer", 'ref_customer', $object->ref_customer, $object, $user->rights->contrat->creer, 'string', '', null, null, '', 1, 'getFormatedCustomerRef'); + $morehtmlref .= $form->editfieldkey("RefCustomer", 'ref_customer', $object->ref_customer, $object, $permtoedit, 'string', '', 0, 1); + $morehtmlref .= $form->editfieldval("RefCustomer", 'ref_customer', $object->ref_customer, $object, $permtoedit, 'string', '', null, null, '', 1, 'getFormatedCustomerRef'); // Ref supplier $morehtmlref .= '
'; - $morehtmlref .= $form->editfieldkey("RefSupplier", 'ref_supplier', $object->ref_supplier, $object, $user->rights->contrat->creer, 'string', '', 0, 1); - $morehtmlref .= $form->editfieldval("RefSupplier", 'ref_supplier', $object->ref_supplier, $object, $user->rights->contrat->creer, 'string', '', null, null, '', 1, 'getFormatedSupplierRef'); + $morehtmlref .= $form->editfieldkey("RefSupplier", 'ref_supplier', $object->ref_supplier, $object, $permtoedit, 'string', '', 0, 1); + $morehtmlref .= $form->editfieldval("RefSupplier", 'ref_supplier', $object->ref_supplier, $object, $permtoedit, 'string', '', null, null, '', 1, 'getFormatedSupplierRef'); // Thirdparty $morehtmlref .= '
'.$langs->trans('ThirdParty').' : '.$object->thirdparty->getNomUrl(1); if (empty($conf->global->MAIN_DISABLE_OTHER_LINK) && $object->thirdparty->id > 0) $morehtmlref .= ' ('.$langs->trans("OtherContracts").')'; @@ -165,7 +165,8 @@ if ($id > 0) if ($user->rights->contrat->creer) { if ($action != 'classify') { - $morehtmlref .= ''.img_edit($langs->transnoentitiesnoconv('SetProject')).' : '; + //$morehtmlref .= ''.img_edit($langs->transnoentitiesnoconv('SetProject')).''; + $morehtmlref .= ' : '; } if ($action == 'classify') { //$morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'projectid', 0, 0, 1, 1); diff --git a/htdocs/contrat/card.php b/htdocs/contrat/card.php index 9d240a31a79..c4f923a7372 100644 --- a/htdocs/contrat/card.php +++ b/htdocs/contrat/card.php @@ -112,13 +112,10 @@ if (empty($reshook)) { header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else { + } else { setEventMessages($object->error, $object->errors, 'errors'); } - } - - elseif ($action == 'confirm_closeline' && $confirm == 'yes' && $user->rights->contrat->activer) + } elseif ($action == 'confirm_closeline' && $confirm == 'yes' && $user->rights->contrat->activer) { if (!GETPOST('dateend')) { @@ -132,9 +129,7 @@ if (empty($reshook)) { header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -302,21 +297,18 @@ if (empty($reshook)) } $label = (!empty($prod->multilangs[$outputlangs->defaultlang]["libelle"])) ? $prod->multilangs[$outputlangs->defaultlang]["libelle"] : $lines[$i]->product_label; - } - else - { + } else { $label = $lines[$i]->product_label; } $desc = ($lines[$i]->desc && $lines[$i]->desc != $lines[$i]->libelle) ?dol_htmlentitiesbr($lines[$i]->desc) : ''; - } - else { + } else { $desc = dol_htmlentitiesbr($lines[$i]->desc); } // Extrafields $array_options = array(); // For avoid conflicts if trigger used - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED) && method_exists($lines[$i], 'fetch_optionals')) { + if (method_exists($lines[$i], 'fetch_optionals')) { $lines[$i]->fetch_optionals(); $array_options = $lines[$i]->array_options; } @@ -354,9 +346,7 @@ if (empty($reshook)) } } } - } - else - { + } else { setEventMessages($srcobject->error, $srcobject->errors, 'errors'); $error++; } @@ -367,30 +357,23 @@ if (empty($reshook)) // modified by hook if ($reshook < 0) $error++; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); $error++; } - } - else - { + } else { $result = $object->create($user); if ($result > 0) { header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else { + } else { setEventMessages($object->error, $object->errors, 'errors'); } $action = 'create'; } } - } - - elseif ($action == 'classin' && $user->rights->contrat->creer) + } elseif ($action == 'classin' && $user->rights->contrat->creer) { $object->setProject(GETPOST('projectid')); } @@ -407,9 +390,7 @@ if (empty($reshook)) { $idprod = 0; $tva_tx = (GETPOST('tva_tx', 'alpha') ? GETPOST('tva_tx', 'alpha') : 0); - } - else - { + } else { $idprod = GETPOST('idprod', 'int'); $tva_tx = ''; } @@ -480,8 +461,7 @@ if (empty($reshook)) $pu_ttc = $prod->multiprices_ttc[$object->thirdparty->price_level]; $price_min = $prod->multiprices_min[$object->thirdparty->price_level]; $price_base_type = $prod->multiprices_base_type[$object->thirdparty->price_level]; - } - elseif (!empty($conf->global->PRODUIT_CUSTOMER_PRICES)) + } elseif (!empty($conf->global->PRODUIT_CUSTOMER_PRICES)) { require_once DOL_DOCUMENT_ROOT.'/product/class/productcustomerprice.class.php'; @@ -513,19 +493,17 @@ if (empty($reshook)) if ($price_base_type != 'HT') { $pu_ht = price2num($pu_ttc / (1 + ($tmpvat / 100)), 'MU'); - } - else - { + } else { $pu_ttc = price2num($pu_ht * (1 + ($tmpvat / 100)), 'MU'); } } $desc = $prod->description; - $desc = dol_concatdesc($desc, $product_desc, '', !empty($conf->global->MAIN_CHANGE_ORDER_CONCAT_DESCRIPTION)); + if (!empty($product_desc) && !empty($conf->global->MAIN_NO_CONCAT_DESCRIPTION)) $desc = $product_desc; + else $desc = dol_concatdesc($desc, $product_desc, '', !empty($conf->global->MAIN_CHANGE_ORDER_CONCAT_DESCRIPTION)); + $fk_unit = $prod->fk_unit; - } - else - { + } else { $pu_ht = GETPOST('price_ht'); $price_base_type = 'HT'; $tva_tx = GETPOST('tva_tx') ?str_replace('*', '', GETPOST('tva_tx')) : 0; // tva_tx field may be disabled, so we use vat rate 0 @@ -541,8 +519,7 @@ if (empty($reshook)) $fk_fournprice = $_POST['fournprice']; if (!empty($_POST['buying_price'])) $pa_ht = $_POST['buying_price']; - else - $pa_ht = null; + else $pa_ht = null; $info_bits = 0; if ($tva_npr) $info_bits |= 0x01; @@ -552,9 +529,7 @@ if (empty($reshook)) { $object->error = $langs->trans("CantBeLessThanMinPrice", price(price2num($price_min, 'MU'), 0, $langs, 0, 0, -1, $conf->currency)); $result = -1; - } - else - { + } else { // Insert line $result = $object->addline( $desc, @@ -627,15 +602,11 @@ if (empty($reshook)) unset($_POST['date_endday']); unset($_POST['date_endmonth']); unset($_POST['date_endyear']); - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } - } - - elseif ($action == 'updateline' && $user->rights->contrat->creer && !GETPOST('cancel', 'alpha')) { + } elseif ($action == 'updateline' && $user->rights->contrat->creer && !GETPOST('cancel', 'alpha')) { $error = 0; if (!empty($date_start_update) && !empty($date_end_update) && $date_start_update > $date_end_update) @@ -690,8 +661,7 @@ if (empty($reshook)) $fk_fournprice = $_POST['fournprice']; if (!empty($_POST['buying_price'])) $pa_ht = $_POST['buying_price']; - else - $pa_ht = null; + else $pa_ht = null; $fk_unit = GETPOST('unit', 'alpha'); @@ -742,14 +712,10 @@ if (empty($reshook)) if (!$error) { $db->commit(); - } - else - { + } else { $db->rollback(); } - } - - elseif ($action == 'confirm_deleteline' && $confirm == 'yes' && $user->rights->contrat->creer) + } elseif ($action == 'confirm_deleteline' && $confirm == 'yes' && $user->rights->contrat->creer) { $result = $object->deleteline(GETPOST('lineid'), $user); @@ -757,14 +723,10 @@ if (empty($reshook)) { header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } - } - - elseif ($action == 'confirm_valid' && $confirm == 'yes' && $user->rights->contrat->creer) + } elseif ($action == 'confirm_valid' && $confirm == 'yes' && $user->rights->contrat->creer) { $result = $object->validate($user); @@ -786,14 +748,10 @@ if (empty($reshook)) $object->generateDocument($model, $outputlangs, $hidedetails, $hidedesc, $hideref); } - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } - } - - elseif ($action == 'reopen' && $user->rights->contrat->creer) + } elseif ($action == 'reopen' && $user->rights->contrat->creer) { $result = $object->reopen($user); if ($result < 0) @@ -820,23 +778,17 @@ if (empty($reshook)) { setEventMessages($object->error, $object->errors, 'errors'); } - } - - elseif ($action == 'confirm_delete' && $confirm == 'yes' && $user->rights->contrat->supprimer) + } elseif ($action == 'confirm_delete' && $confirm == 'yes' && $user->rights->contrat->supprimer) { $result = $object->delete($user); if ($result >= 0) { header("Location: list.php?restore_lastsearch_values=1"); return; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } - } - - elseif ($action == 'confirm_move' && $confirm == 'yes' && $user->rights->contrat->creer) + } elseif ($action == 'confirm_move' && $confirm == 'yes' && $user->rights->contrat->creer) { if (GETPOST('newcid') > 0) { @@ -848,18 +800,13 @@ if (empty($reshook)) { header("Location: ".$_SERVER['PHP_SELF']."?id=".$id); return; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } - } - else - { + } else { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("RefNewContract")), null, 'errors'); } - } - elseif ($action == 'update_extras') + } elseif ($action == 'update_extras') { $object->oldcopy = dol_clone($object); @@ -879,8 +826,7 @@ if (empty($reshook)) if ($error) { $action = 'edit_extras'; } - } - elseif ($action == 'setref_supplier') + } elseif ($action == 'setref_supplier') { $cancelbutton = GETPOST('cancel', 'alpha'); if (!$cancelbutton) { @@ -894,13 +840,11 @@ if (empty($reshook)) header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; } - } - else { + } else { header("Location: ".$_SERVER['PHP_SELF']."?id=".$id); exit; } - } - elseif ($action == 'setref_customer') + } elseif ($action == 'setref_customer') { $cancelbutton = GETPOST('cancel', 'alpha'); @@ -916,13 +860,11 @@ if (empty($reshook)) header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; } - } - else { + } else { header("Location: ".$_SERVER['PHP_SELF']."?id=".$id); exit; } - } - elseif ($action == 'setref') + } elseif ($action == 'setref') { $cancelbutton = GETPOST('cancel', 'alpha'); @@ -956,13 +898,11 @@ if (empty($reshook)) header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; } - } - else { + } else { header("Location: ".$_SERVER['PHP_SELF']."?id=".$id); exit; } - } - elseif ($action == 'setdate_contrat') + } elseif ($action == 'setdate_contrat') { $cancelbutton = GETPOST('cancel', 'alpha'); @@ -980,8 +920,7 @@ if (empty($reshook)) header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; } - } - else { + } else { header("Location: ".$_SERVER['PHP_SELF']."?id=".$id); exit; } @@ -1012,16 +951,12 @@ if (empty($reshook)) { header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else - { + } else { if ($object->error == 'DB_ERROR_RECORD_ALREADY_EXISTS') { $langs->load("errors"); setEventMessages($langs->trans("ErrorThisContactIsAlreadyDefinedAsThisType"), null, 'errors'); - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -1042,8 +977,7 @@ if (empty($reshook)) { header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -1055,9 +989,7 @@ if (empty($reshook)) if (!GETPOST('socid', 3)) { setEventMessages($langs->trans("NoCloneOptionsSpecified"), null, 'errors'); - } - else - { + } else { if ($object->id > 0) { $result = $object->createFromClone($user, $socid); if ($result > 0) { @@ -1098,7 +1030,7 @@ if ($result > 0) // Create if ($action == 'create') { - print load_fiche_titre($langs->trans('AddContract'), '', 'commercial'); + print load_fiche_titre($langs->trans('AddContract'), '', 'contract'); $soc = new Societe($db); if ($socid > 0) $soc->fetch($socid); @@ -1117,9 +1049,7 @@ if ($action == 'create') if ($element == 'project') { $projectid = GETPOST('originid'); - } - else - { + } else { // For compatibility if ($element == 'order' || $element == 'commande') { $element = $subelement = 'commande'; } if ($element == 'propal') { $element = 'comm/propal'; $subelement = 'propal'; } @@ -1146,8 +1076,7 @@ if ($action == 'create') // Object source contacts list $srccontactslist = $objectsrc->liste_contact(-1, 'external', 1); } - } - else { + } else { $projectid = GETPOST('projectid', 'int'); $note_private = GETPOST("note_private"); $note_public = GETPOST("note_public"); @@ -1193,9 +1122,7 @@ if ($action == 'create') print $soc->getNomUrl(1); print ''; print ''; - } - else - { + } else { print ''; print $form->select_company('', 'socid', '', 'SelectThirdParty', 1, 0, null, 0, 'minwidth300'); print ' '.$langs->trans("AddThirdParty").''; @@ -1289,9 +1216,7 @@ if ($action == 'create') } print "\n"; -} -else -/* *************************************************************************** */ +} else /* *************************************************************************** */ /* */ /* Mode vue et edition */ /* */ @@ -1450,7 +1375,7 @@ else print ''; - // Ligne info remises tiers + // Line info of thirdparty discounts print ''; - } - else - { + } else { print '\n"; } // VAT @@ -1622,9 +1543,7 @@ else if ($objp->remise_percent > 0) { print '\n"; - } - else - { + } else { print ''; } @@ -1642,13 +1561,13 @@ else } if ($user->rights->contrat->creer && ($object->statut >= 0)) { - print ''; + print ''; print img_edit(); print ''; } if ($user->rights->contrat->creer && ($object->statut >= 0)) { - print ''; + print ''; print img_delete(); print ''; } @@ -1681,8 +1600,7 @@ else $textlate = $langs->trans("Late").' = '.$langs->trans("DateReference").' > '.$langs->trans("DateToday").' '.(ceil($warning_delay) >= 0 ? '+' : '').ceil($warning_delay).' '.$langs->trans("days"); print " ".img_warning($textlate); } - } - else print $langs->trans("Unknown"); + } else print $langs->trans("Unknown"); print '  -  '; print $langs->trans("DateEndPlanned").': '; if ($objp->date_fin) @@ -1693,8 +1611,7 @@ else $textlate = $langs->trans("Late").' = '.$langs->trans("DateReference").' > '.$langs->trans("DateToday").' '.(ceil($warning_delay) >= 0 ? '+' : '').ceil($warning_delay).' '.$langs->trans("days"); print " ".img_warning($textlate); } - } - else print $langs->trans("Unknown"); + } else print $langs->trans("Unknown"); print ''; print ''; @@ -1709,8 +1626,7 @@ else } } // Line in mode update - else - { + else { // Ligne carac print ''; print ''; } print ''; print ''; @@ -1801,9 +1715,7 @@ else } $db->free($result); - } - else - { + } else { dol_print_error($db); } @@ -1873,9 +1785,7 @@ else if (empty($dateactend)) { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("DateEndReal")), null, 'errors'); - } - else - { + } else { print $form->formconfirm($_SERVER["PHP_SELF"]."?id=".$object->id."&ligne=".GETPOST('ligne', 'int')."&date=".$dateactstart."&dateend=".$dateactend."&comment=".urlencode($comment), $langs->trans("CloseService"), $langs->trans("ConfirmCloseService", dol_print_date($dateactend, "%A %d %B %Y")), "confirm_closeline", '', 0, 1); } print '
'.$langs->trans('Discount').''; if ($object->thirdparty->remise_percent) print $langs->trans("CompanyHasRelativeDiscount", $object->thirdparty->remise_percent); else print $langs->trans("CompanyHasNoRelativeDiscount"); @@ -1500,8 +1425,6 @@ else } - $colorb = '666666'; - $arrayothercontracts = $object->getListOfContracts('others'); /* @@ -1599,9 +1522,7 @@ else echo $form->textwithtooltip($text, $description, 3, '', '', $cursorline, 0, (!empty($line->fk_parent_line) ?img_picto('', 'rightarrow') : '')); print ''.img_object($langs->trans("ShowProductOrService"), ($objp->product_type ? 'service' : 'product')).' '.dol_htmlentitiesbr($objp->description)."'.$objp->remise_percent."% 
'; @@ -1723,9 +1639,7 @@ else print $productstatic->getNomUrl(1, '', 32); print $objp->label ? ' - '.dol_trunc($objp->label, 32) : ''; print '
'; - } - else - { + } else { print $objp->label ? $objp->label.'
' : ''; } @@ -1773,8 +1687,8 @@ else print '
'; - print ''; - print '
'; + print ''; + print '
'; print '
'; @@ -2112,8 +2022,7 @@ else if ($object->statut == 1) { if ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) || $user->rights->commande->order_advance->send)) { print ''; - } else - print ''; + } else print ''; } } @@ -2152,9 +2061,7 @@ else if ($user->rights->contrat->activer) { print ''; - } - else - { + } else { print ''; } } @@ -2163,9 +2070,7 @@ else if ($user->rights->contrat->desactiver) { print ''; - } - else - { + } else { print ''; } @@ -2184,9 +2089,7 @@ else if (($user->rights->contrat->creer && $object->statut == 0) || $user->rights->contrat->supprimer) { print ''; - } - else - { + } else { print ''; } } @@ -2225,13 +2128,12 @@ else $MAXEVENT = 10; - $morehtmlright = dolGetButtonTitle($langs->trans('SeeAll'), '', 'fa fa-list-alt', DOL_URL_ROOT.'/contrat/agenda.php?id='.$object->id); + $morehtmlcenter = dolGetButtonTitle($langs->trans('SeeAll'), '', 'fa fa-list-alt imgforviewmode', DOL_URL_ROOT.'/contrat/agenda.php?id='.$object->id); // List of actions on element include_once DOL_DOCUMENT_ROOT.'/core/class/html.formactions.class.php'; $formactions = new FormActions($db); - $somethingshown = $formactions->showactions($object, 'contract', $socid, 1, 'listactions', $MAXEVENT, '', $morehtmlright); - + $somethingshown = $formactions->showactions($object, 'contract', $socid, 1, 'listactions', $MAXEVENT, '', $morehtmlcenter); print '
'; } diff --git a/htdocs/contrat/class/api_contracts.class.php b/htdocs/contrat/class/api_contracts.class.php index a35d3c871de..ffe66208afe 100644 --- a/htdocs/contrat/class/api_contracts.class.php +++ b/htdocs/contrat/class/api_contracts.class.php @@ -169,8 +169,7 @@ class Contracts extends DolibarrApi } $i++; } - } - else { + } else { throw new RestException(503, 'Error when retrieve contrat list : '.$db->lasterror()); } if (!count($obj_ret)) { @@ -464,9 +463,7 @@ class Contracts extends DolibarrApi $updateRes = $this->contract->deleteline($lineid, DolibarrApiAccess::$user); if ($updateRes > 0) { return $this->get($id); - } - else - { + } else { throw new RestException(405, $this->contract->error); } } @@ -501,9 +498,7 @@ class Contracts extends DolibarrApi if ($this->contract->update(DolibarrApiAccess::$user) > 0) { return $this->get($id); - } - else - { + } else { throw new RestException(500, $this->contract->error); } } diff --git a/htdocs/contrat/class/contrat.class.php b/htdocs/contrat/class/contrat.class.php index 310aed1cd52..c2200a411c2 100644 --- a/htdocs/contrat/class/contrat.class.php +++ b/htdocs/contrat/class/contrat.class.php @@ -298,16 +298,12 @@ class Contrat extends CommonObject if ($numref != "") { return $numref; - } - else - { + } else { $this->error = $obj->error; dol_print_error($db, get_class($this)."::getNextValue ".$obj->error); return ""; } - } - else - { + } else { $langs->load("errors"); print $langs->trans("Error")." ".$langs->trans("ErrorModuleSetupNotComplete", $langs->transnoentitiesnoconv("Contract")); return ""; @@ -410,9 +406,7 @@ class Contrat extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -467,9 +461,7 @@ class Contrat extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -508,13 +500,10 @@ class Contrat extends CommonObject if ($force_number) { $num = $force_number; - } - elseif (!$error && (preg_match('/^[\(]?PROV/i', $this->ref) || empty($this->ref))) // empty should not happened, but when it occurs, the test save life + } elseif (!$error && (preg_match('/^[\(]?PROV/i', $this->ref) || empty($this->ref))) // empty should not happened, but when it occurs, the test save life { $num = $this->getNextNumRef($this->thirdparty); - } - else - { + } else { $num = $this->ref; } $this->newref = dol_sanitizeFileName($num); @@ -591,9 +580,7 @@ class Contrat extends CommonObject $this->brouillon = 0; $this->date_validation = $now; } - } - else - { + } else { $error++; } @@ -601,9 +588,7 @@ class Contrat extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -666,9 +651,7 @@ class Contrat extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -720,8 +703,7 @@ class Contrat extends CommonObject $this->error = 'Fetch found several records.'; dol_syslog($this->error, LOG_ERR); $result = -2; - } - elseif ($num) // $num = 1 + } elseif ($num) // $num = 1 { $obj = $this->db->fetch_object($resql); if ($obj) @@ -770,16 +752,12 @@ class Contrat extends CommonObject return $this->id; } - } - else - { + } else { dol_syslog(get_class($this)."::fetch Contract not found"); $this->error = "Contract not found"; return 0; } - } - else - { + } else { dol_syslog(get_class($this)."::fetch Error searching contract"); $this->error = $this->db->error(); return -1; @@ -939,9 +917,7 @@ class Contrat extends CommonObject $pos++; } $this->db->free($result); - } - else - { + } else { dol_syslog(get_class($this)."::Fetch Error when reading lines of contracts linked to products"); return -3; } @@ -1035,7 +1011,7 @@ class Contrat extends CommonObject } } - if (!$error && empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) + if (!$error) { $result = $this->insertExtraFields(); if ($result < 0) @@ -1081,8 +1057,7 @@ class Contrat extends CommonObject $error++; } } - } - else // Old behaviour, if linked_object has only one link per type, so is something like array('contract'=>id1)) + } else // Old behaviour, if linked_object has only one link per type, so is something like array('contract'=>id1)) { $origin_id = $tmp_origin_id; $ret = $this->add_object_linked($origin, $origin_id); @@ -1129,8 +1104,7 @@ class Contrat extends CommonObject //print $objcontact->code.'-'.$objcontact->source.'-'.$objcontact->fk_socpeople."\n"; $this->add_contact($objcontact->fk_socpeople, $objcontact->code, $objcontact->source); // May failed because of duplicate key or because code of contact type does not exists for new object } - } - else dol_print_error($resqlcontact); + } else dol_print_error($resqlcontact); } } @@ -1145,24 +1119,18 @@ class Contrat extends CommonObject { $this->db->commit(); return $this->id; - } - else - { + } else { dol_syslog(get_class($this)."::create - 30 - ".$this->error, LOG_ERR); $this->db->rollback(); return -3; } - } - else - { + } else { $this->error = "Failed to add contract"; dol_syslog(get_class($this)."::create - 20 - ".$this->error, LOG_ERR); $this->db->rollback(); return -2; } - } - else - { + } else { $this->error = $langs->trans("UnknownError: ".$this->db->error()." -", LOG_DEBUG); $this->db->rollback(); @@ -1252,6 +1220,22 @@ class Contrat extends CommonObject } } + if (!$error) + { + // Delete contratdet extrafields + $main = MAIN_DB_PREFIX.'contratdet'; + $ef = $main."_extrafields"; + $sql = "DELETE FROM $ef WHERE fk_object IN (SELECT rowid FROM $main WHERE fk_contrat = ".$this->id.")"; + + dol_syslog(get_class($this)."::delete contratdet_extrafields", LOG_DEBUG); + $resql = $this->db->query($sql); + if (!$resql) + { + $this->error = $this->db->error(); + $error++; + } + } + if (!$error) { // Delete contratdet @@ -1315,9 +1299,7 @@ class Contrat extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -1; @@ -1383,7 +1365,7 @@ class Contrat extends CommonObject $resql = $this->db->query($sql); if (!$resql) { $error++; $this->errors[] = "Error ".$this->db->lasterror(); } - if (!$error && empty($conf->global->MAIN_EXTRAFIELDS_DISABLED) && is_array($this->array_options) && count($this->array_options) > 0) + if (!$error) { $result = $this->insertExtraFields(); if ($result < 0) @@ -1410,9 +1392,7 @@ class Contrat extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } @@ -1489,9 +1469,7 @@ class Contrat extends CommonObject if ($price_base_type == 'HT') { $pu = $pu_ht; - } - else - { + } else { $pu = $pu_ttc; } @@ -1542,9 +1520,7 @@ class Contrat extends CommonObject if (($result = $this->defineBuyPrice($pu_ht, $remise_percent, $fk_product)) < 0) { return $result; - } - else - { + } else { $pa_ht = $result; } } @@ -1588,7 +1564,7 @@ class Contrat extends CommonObject { $contractlineid = $this->db->last_insert_id(MAIN_DB_PREFIX."contratdet"); - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED) && is_array($array_options) && count($array_options) > 0) // For avoid conflicts if trigger used + if (!$error) { $contractline = new ContratLigne($this->db); $contractline->array_options = $array_options; @@ -1615,22 +1591,16 @@ class Contrat extends CommonObject { $this->db->rollback(); return -1; - } - else - { + } else { $this->db->commit(); return $contractlineid; } - } - else - { + } else { $this->db->rollback(); $this->error = $this->db->error()." sql=".$sql; return -1; } - } - else - { + } else { dol_syslog(get_class($this)."::addline ErrorTryToAddLineOnValidatedContract", LOG_ERR); return -2; } @@ -1682,9 +1652,7 @@ class Contrat extends CommonObject { $remise = round(($pu * $remise_percent / 100), 2); $price = $pu - $remise; - } - else - { + } else { $remise_percent = 0; } @@ -1734,9 +1702,7 @@ class Contrat extends CommonObject if (($result = $this->defineBuyPrice($pu, $remise_percent)) < 0) { return $result; - } - else - { + } else { $pa_ht = $result; } } @@ -1759,14 +1725,10 @@ class Contrat extends CommonObject $sql .= ", total_ttc='".price2num($total_ttc)."'"; $sql .= ", fk_product_fournisseur_price=".($fk_fournprice > 0 ? $fk_fournprice : "null"); $sql .= ", buy_price_ht='".price2num($pa_ht)."'"; - if ($date_start > 0) { $sql .= ",date_ouverture_prevue='".$this->db->idate($date_start)."'"; } - else { $sql .= ",date_ouverture_prevue=null"; } - if ($date_end > 0) { $sql .= ",date_fin_validite='".$this->db->idate($date_end)."'"; } - else { $sql .= ",date_fin_validite=null"; } - if ($date_debut_reel > 0) { $sql .= ",date_ouverture='".$this->db->idate($date_debut_reel)."'"; } - else { $sql .= ",date_ouverture=null"; } - if ($date_fin_reel > 0) { $sql .= ",date_cloture='".$this->db->idate($date_fin_reel)."'"; } - else { $sql .= ",date_cloture=null"; } + if ($date_start > 0) { $sql .= ",date_ouverture_prevue='".$this->db->idate($date_start)."'"; } else { $sql .= ",date_ouverture_prevue=null"; } + if ($date_end > 0) { $sql .= ",date_fin_validite='".$this->db->idate($date_end)."'"; } else { $sql .= ",date_fin_validite=null"; } + if ($date_debut_reel > 0) { $sql .= ",date_ouverture='".$this->db->idate($date_debut_reel)."'"; } else { $sql .= ",date_ouverture=null"; } + if ($date_fin_reel > 0) { $sql .= ",date_cloture='".$this->db->idate($date_fin_reel)."'"; } else { $sql .= ",date_cloture=null"; } $sql .= ", fk_unit=".($fk_unit ? "'".$this->db->escape($fk_unit)."'" : "null"); $sql .= " WHERE rowid = ".$rowid; @@ -1777,7 +1739,7 @@ class Contrat extends CommonObject $result = $this->update_statut($user); if ($result >= 0) { - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED) && is_array($array_options) && count($array_options) > 0) // For avoid conflicts if trigger used + if (is_array($array_options) && count($array_options) > 0) // For avoid conflicts if trigger used { $contractline = new ContratLigne($this->db); $contractline->fetch($rowid); @@ -1809,16 +1771,12 @@ class Contrat extends CommonObject $this->db->commit(); return 1; } - } - else - { + } else { $this->db->rollback(); dol_syslog(get_class($this)."::updateline Erreur -2"); return -2; } - } - else - { + } else { $this->db->rollback(); $this->error = $this->db->error(); dol_syslog(get_class($this)."::updateline Erreur -1"); @@ -1859,18 +1817,15 @@ class Contrat extends CommonObject $error++; } - if (empty($error)) { + if (!$error) { // Remove extrafields - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + $contractline = new ContratLigne($this->db); + $contractline->id = $idline; + $result = $contractline->deleteExtraFields(); + if ($result < 0) { - $contractline = new ContratLigne($this->db); - $contractline->id = $idline; - $result = $contractline->deleteExtraFields(); - if ($result < 0) - { - $error++; - $this->error = "Error ".get_class($this)."::deleteline deleteExtraFields error -4 ".$contractline->error; - } + $error++; + $this->error = "Error ".get_class($this)."::deleteline deleteExtraFields error -4 ".$contractline->error; } } @@ -1882,9 +1837,7 @@ class Contrat extends CommonObject $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = 'ErrorDeleteLineNotAllowedByObjectStatus'; return -2; } @@ -1980,9 +1933,7 @@ class Contrat extends CommonObject $text .= ($mode != 7 || $this->nbofservicesclosed > 0) ? ($this->nbofservicesclosed.ContratLigne::LibStatut(5, 3, -1, 'class="marginleft2"')) : ''; $text .= ($mode == 7 ? '' : ''); return $text; - } - else - { + } else { return dolGetStatus($this->labelStatus[$status], $this->labelStatusShort[$status], '', $statusType, $mode); } } @@ -2100,9 +2051,7 @@ class Contrat extends CommonObject } $this->db->free($result); - } - else - { + } else { dol_print_error($this->db); } } @@ -2137,9 +2086,7 @@ class Contrat extends CommonObject $i++; } return $tab; - } - else - { + } else { $this->error = $this->db->error(); return -1; } @@ -2175,9 +2122,7 @@ class Contrat extends CommonObject $i++; } return $tab; - } - else - { + } else { $this->error = $this->db->error(); return -1; } @@ -2209,8 +2154,7 @@ class Contrat extends CommonObject $sql .= " WHERE c.statut = 1"; $sql .= " AND c.rowid = cd.fk_contrat"; $sql .= " AND cd.statut = 0"; - } - elseif ($mode == 'expired') + } elseif ($mode == 'expired') { $sql = "SELECT cd.rowid, cd.date_fin_validite as datefin"; $sql .= $this->from; @@ -2218,8 +2162,7 @@ class Contrat extends CommonObject $sql .= " AND c.rowid = cd.fk_contrat"; $sql .= " AND cd.statut = 4"; $sql .= " AND cd.date_fin_validite < '".$this->db->idate(dol_now())."'"; - } - elseif ($mode == 'active') + } elseif ($mode == 'active') { $sql = "SELECT cd.rowid, cd.date_fin_validite as datefin"; $sql .= $this->from; @@ -2245,8 +2188,7 @@ class Contrat extends CommonObject $label = $langs->trans("BoardNotActivatedServices"); $labelShort = $langs->trans("BoardNotActivatedServicesShort"); $url = DOL_URL_ROOT.'/contrat/services_list.php?mainmenu=commercial&leftmenu=contracts&mode=0&sortfield=cd.date_fin_validite&sortorder=asc'; - } - elseif ($mode == 'expired') { + } elseif ($mode == 'expired') { $warning_delay = $conf->contrat->services->expires->warning_delay; $url = DOL_URL_ROOT.'/contrat/services_list.php?mainmenu=commercial&leftmenu=contracts&mode=4&filter=expired&sortfield=cd.date_fin_validite&sortorder=asc'; $label = $langs->trans("BoardExpiredServices"); @@ -2277,9 +2219,7 @@ class Contrat extends CommonObject } return $response; - } - else - { + } else { dol_print_error($this->db); $this->error = $this->db->error(); return -1; @@ -2320,9 +2260,7 @@ class Contrat extends CommonObject } $this->db->free($resql); return 1; - } - else - { + } else { dol_print_error($this->db); $this->error = $this->db->error(); return -1; @@ -2778,11 +2716,22 @@ class ContratLigne extends CommonObjectLine global $langs; $langs->load("contracts"); - if ($status == self::STATUS_INITIAL) { $labelStatus = $langs->trans("ServiceStatusInitial"); $labelStatusShort = $langs->trans("ServiceStatusInitial"); } - elseif ($status == self::STATUS_OPEN && $expired == -1) { $labelStatus = $langs->trans("ServiceStatusRunning"); $labelStatusShort = $langs->trans("ServiceStatusRunning"); } - elseif ($status == self::STATUS_OPEN && $expired == 0) { $labelStatus = $langs->trans("ServiceStatusNotLate"); $labelStatusShort = $langs->trans("ServiceStatusNotLateShort"); } - elseif ($status == self::STATUS_OPEN && $expired == 1) { $labelStatus = $langs->trans("ServiceStatusLate"); $labelStatusShort = $langs->trans("ServiceStatusLateShort"); } - elseif ($status == self::STATUS_CLOSED) { $labelStatus = $langs->trans("ServiceStatusClosed"); $labelStatusShort = $langs->trans("ServiceStatusClosed"); } + if ($status == self::STATUS_INITIAL) { + $labelStatus = $langs->trans("ServiceStatusInitial"); + $labelStatusShort = $langs->trans("ServiceStatusInitial"); + } elseif ($status == self::STATUS_OPEN && $expired == -1) { + $labelStatus = $langs->trans("ServiceStatusRunning"); + $labelStatusShort = $langs->trans("ServiceStatusRunning"); + } elseif ($status == self::STATUS_OPEN && $expired == 0) { + $labelStatus = $langs->trans("ServiceStatusNotLate"); + $labelStatusShort = $langs->trans("ServiceStatusNotLateShort"); + } elseif ($status == self::STATUS_OPEN && $expired == 1) { + $labelStatus = $langs->trans("ServiceStatusLate"); + $labelStatusShort = $langs->trans("ServiceStatusLateShort"); + } elseif ($status == self::STATUS_CLOSED) { + $labelStatus = $langs->trans("ServiceStatusClosed"); + $labelStatusShort = $langs->trans("ServiceStatusClosed"); + } $statusType = 'status'.$status; if ($status == self::STATUS_OPEN && $expired == 1) $statusType = 'status1'; @@ -2946,9 +2895,7 @@ class ContratLigne extends CommonObjectLine $this->db->free($resql); return 1; - } - else - { + } else { $this->error = "Error ".$this->db->lasterror(); return -1; } @@ -3033,9 +2980,7 @@ class ContratLigne extends CommonObjectLine if (($result = $this->defineBuyPrice($this->subprice, $this->remise_percent, $this->fk_product)) < 0) { return $result; - } - else - { + } else { $this->pa_ht = $result; } } @@ -3092,7 +3037,7 @@ class ContratLigne extends CommonObjectLine $error++; } - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED) && is_array($this->array_options) && count($this->array_options) > 0) // For avoid conflicts if trigger used + if (!$error) // For avoid conflicts if trigger used { $result = $this->insertExtraFields(); if ($result < 0) @@ -3182,9 +3127,7 @@ class ContratLigne extends CommonObjectLine { $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -2; @@ -3202,6 +3145,8 @@ class ContratLigne extends CommonObjectLine { global $conf, $user; + $error = 0; + // Insertion dans la base $sql = "INSERT INTO ".MAIN_DB_PREFIX."contratdet"; $sql .= " (fk_contrat, label, description, fk_product, qty, vat_src_code, tva_tx,"; @@ -3240,7 +3185,7 @@ class ContratLigne extends CommonObjectLine $this->id = $this->db->last_insert_id(MAIN_DB_PREFIX.'contratdet'); // Insert of extrafields - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED) && is_array($this->array_options) && count($this->array_options) > 0) // For avoid conflicts if trigger used + if (!$error) { $result = $this->insertExtraFields(); if ($result < 0) @@ -3263,9 +3208,7 @@ class ContratLigne extends CommonObjectLine $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); $this->error = $this->db->error()." sql=".$sql; return -1; @@ -3318,9 +3261,7 @@ class ContratLigne extends CommonObjectLine $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } diff --git a/htdocs/contrat/contact.php b/htdocs/contrat/contact.php index 1da2416ce84..02d9c71776d 100644 --- a/htdocs/contrat/contact.php +++ b/htdocs/contrat/contact.php @@ -70,9 +70,7 @@ if ($action == 'addcontact' && $user->rights->contrat->creer) { header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else - { + } else { if ($object->error == 'DB_ERROR_RECORD_ALREADY_EXISTS') { $langs->load("errors"); $msg = $langs->trans("ErrorThisContactIsAlreadyDefinedAsThisType"); @@ -90,9 +88,7 @@ if ($action == 'swapstatut' && $user->rights->contrat->creer) if ($object->fetch($id)) { $result = $object->swapContactStatus(GETPOST('ligne')); - } - else - { + } else { dol_print_error($db, $object->error); } } diff --git a/htdocs/contrat/document.php b/htdocs/contrat/document.php index c104d210617..d60d54258bb 100644 --- a/htdocs/contrat/document.php +++ b/htdocs/contrat/document.php @@ -55,11 +55,12 @@ if ($user->socid > 0) $result = restrictedArea($user, 'contrat', $id); // Get parameters +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; if (!$sortorder) $sortorder = "ASC"; @@ -135,6 +136,7 @@ if ($object->id) $morehtmlref .= $form->editfieldval("RefSupplier", 'ref_supplier', $object->ref_supplier, $object, 0, 'string', '', null, null, '', 1, 'getFormatedSupplierRef'); // Thirdparty $morehtmlref .= '
'.$langs->trans('ThirdParty').' : '.$object->thirdparty->getNomUrl(1); + if (empty($conf->global->MAIN_DISABLE_OTHER_LINK) && $object->thirdparty->id > 0) $morehtmlref .= ' ('.$langs->trans("OtherContracts").')'; // Project if (!empty($conf->projet->enabled)) { @@ -177,7 +179,6 @@ if ($object->id) print '
'; print '
'; - print ''; print ''; print ''; @@ -192,9 +193,7 @@ if ($object->id) $permtoedit = $user->rights->contrat->creer; $param = '&id='.$object->id; include_once DOL_DOCUMENT_ROOT.'/core/tpl/document_actions_post_headers.tpl.php'; -} -else -{ +} else { print $langs->trans("ErrorUnknown"); } diff --git a/htdocs/contrat/index.php b/htdocs/contrat/index.php index 3c306453c00..40a9a4100da 100644 --- a/htdocs/contrat/index.php +++ b/htdocs/contrat/index.php @@ -70,7 +70,7 @@ $now = dol_now(); llxHeader(); -print load_fiche_titre($langs->trans("ContractsArea"), '', 'commercial'); +print load_fiche_titre($langs->trans("ContractsArea"), '', 'contract'); //print '
'.$langs->trans("NbOfAttachedFiles").''.count($filearray).'
'.$langs->trans("TotalSizeOfAttachedFiles").''.dol_print_size($totalsize, 1, 1).'
'; @@ -140,9 +140,7 @@ if ($resql) $i++; } $db->free($resql); -} -else -{ +} else { dol_print_error($db); } // Search by status (only expired) @@ -179,9 +177,7 @@ if ($resql) $i++; } $db->free($resql); -} -else -{ +} else { dol_print_error($db); } @@ -298,16 +294,12 @@ if (!empty($conf->contrat->enabled) && $user->rights->contrat->lire) //$tot_ttc+=$obj->total_ttc; $i++; } - } - else - { + } else { print ''; } print "
'.$langs->trans("NoContracts").'

"; $db->free($resql); - } - else - { + } else { dol_print_error($db); } } @@ -360,7 +352,7 @@ if ($result) $obj = $db->fetch_object($result); print ''; - print ''; + print ''; $staticcontrat->ref = ($obj->ref ? $obj->ref : $obj->cid); $staticcontrat->id = $obj->cid; print $staticcontrat->getNomUrl(1, 16); @@ -383,9 +375,7 @@ if ($result) $db->free($result); print ""; -} -else -{ +} else { dol_print_error($db); } @@ -425,7 +415,7 @@ if ($resql) $obj = $db->fetch_object($resql); print ''; - print ''; + print ''; $staticcontrat->ref = ($obj->ref ? $obj->ref : $obj->fk_contrat); $staticcontrat->id = $obj->fk_contrat; print $staticcontrat->getNomUrl(1, 16); @@ -439,9 +429,7 @@ if ($resql) $productstatic->ref = $obj->pref; $productstatic->entity = $obj->pentity; print $productstatic->getNomUrl(1, '', 20); - } - else - { + } else { print ''.img_object($langs->trans("ShowService"), "service"); if ($obj->label) print ' '.dol_trunc($obj->label, 20).''; else print ' '.dol_trunc($obj->note, 20); @@ -462,9 +450,7 @@ if ($resql) $db->free(); print ""; -} -else -{ +} else { dol_print_error($db); } @@ -506,7 +492,7 @@ if ($resql) print ''; - print ''; + print ''; $staticcontrat->ref = ($obj->ref ? $obj->ref : $obj->fk_contrat); $staticcontrat->id = $obj->fk_contrat; print $staticcontrat->getNomUrl(1, 16); @@ -519,9 +505,7 @@ if ($resql) $productstatic->ref = $obj->pref; $productstatic->entity = $obj->pentity; print $productstatic->getNomUrl(1, '', 20); - } - else - { + } else { print ''.img_object($langs->trans("ShowService"), "service"); if ($obj->label) print ' '.dol_trunc($obj->label, 20).''; else print ' '.dol_trunc($obj->note, 20); @@ -541,9 +525,7 @@ if ($resql) $db->free(); print ""; -} -else -{ +} else { dol_print_error($db); } @@ -586,7 +568,7 @@ if ($resql) print ''; - print ''; + print ''; $staticcontrat->ref = ($obj->ref ? $obj->ref : $obj->fk_contrat); $staticcontrat->id = $obj->fk_contrat; print $staticcontrat->getNomUrl(1, 16); @@ -599,9 +581,7 @@ if ($resql) $productstatic->ref = $obj->pref; $productstatic->entity = $obj->pentity; print $productstatic->getNomUrl(1, '', 20); - } - else - { + } else { print ''.img_object($langs->trans("ShowService"), "service"); if ($obj->label) print ' '.dol_trunc($obj->label, 20).''; else print ' '.dol_trunc($obj->note, 20); @@ -621,9 +601,7 @@ if ($resql) $db->free(); print ""; -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/contrat/list.php b/htdocs/contrat/list.php index 380ab05f01a..3627661c727 100644 --- a/htdocs/contrat/list.php +++ b/htdocs/contrat/list.php @@ -1,6 +1,6 @@ - * Copyright (C) 2004-2019 Laurent Destailleur + * Copyright (C) 2004-2020 Laurent Destailleur * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2013 Cédric Salvador * Copyright (C) 2014-2019 Juanjo Menent @@ -384,7 +384,7 @@ print ''; print ''; print ''; -print_barre_liste($langs->trans("ListOfContracts"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $totalnboflines, 'commercial', 0, $newcardbutton, '', $limit, 0, 0, 1); +print_barre_liste($langs->trans("ListOfContracts"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $totalnboflines, 'contract', 0, $newcardbutton, '', $limit, 0, 0, 1); $topicmail = "SendContractRef"; $modelmail = "contract"; @@ -612,9 +612,11 @@ while ($i < min($num, $limit)) } print ''; + + // Ref if (!empty($arrayfields['c.ref']['checked'])) { - print ''; + print ''; print $contracttmp->getNomUrl(1); if ($obj->nb_late) print img_warning($langs->trans("Late")); if (!empty($obj->note_private) || !empty($obj->note_public)) { @@ -631,6 +633,7 @@ while ($i < min($num, $limit)) print ''; } + if (!empty($arrayfields['c.ref_customer']['checked'])) { print ''.$contracttmp->getFormatedCustomerRef($obj->ref_customer).''; @@ -705,8 +708,7 @@ while ($i < min($num, $limit)) if ($nbofsalesrepresentative > 3) { // We print only number print $nbofsalesrepresentative; - } - elseif ($nbofsalesrepresentative > 0) + } elseif ($nbofsalesrepresentative > 0) { $userstatic = new User($db); $j = 0; @@ -728,9 +730,7 @@ while ($i < min($num, $limit)) } } //else print $langs->trans("NoSalesRepresentativeAffected"); - } - else - { + } else { print ' '; } print ''; @@ -743,7 +743,7 @@ while ($i < min($num, $limit)) // 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, 'totalarray'=>&$totalarray); $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/contrat/services_list.php b/htdocs/contrat/services_list.php index c8a6c321b6e..fd46b8eba98 100644 --- a/htdocs/contrat/services_list.php +++ b/htdocs/contrat/services_list.php @@ -98,14 +98,11 @@ if ($search_status != '') $tmp = explode('&', $search_status); $mode = $tmp[0]; if (empty($tmp[1])) $filter = ''; - else - { + else { if ($tmp[1] == 'filter=notexpired') $filter = 'notexpired'; if ($tmp[1] == 'filter=expired') $filter = 'expired'; } -} -else -{ +} else { $search_status = $mode; if ($filter == 'expired') $search_status .= '&filter=expired'; if ($filter == 'notexpired') $search_status .= '&filter=notexpired'; @@ -247,22 +244,31 @@ if ($search_name) $sql .= " AND s.nom LIKE '%".$db->escape($search_name)."%' if ($search_contract) $sql .= " AND c.ref LIKE '%".$db->escape($search_contract)."%' "; if ($search_service) $sql .= " AND (p.ref LIKE '%".$db->escape($search_service)."%' OR p.description LIKE '%".$db->escape($search_service)."%' OR cd.description LIKE '%".$db->escape($search_service)."%')"; if ($socid > 0) $sql .= " AND s.rowid = ".$socid; -$filter_dateouvertureprevue = dol_mktime(0, 0, 0, $opouvertureprevuemonth, $opouvertureprevueday, $opouvertureprevueyear); -if ($filter_dateouvertureprevue != '' && $filter_opouvertureprevue == -1) $filter_opouvertureprevue = '='; -$filter_date1 = dol_mktime(0, 0, 0, $op1month, $op1day, $op1year); -if ($filter_date1 != '' && $filter_op1 == -1) $filter_op1 = '='; +$filter_dateouvertureprevue_start=dol_mktime(0, 0, 0, $opouvertureprevuemonth, $opouvertureprevueday, $opouvertureprevueyear); +$filter_dateouvertureprevue_end=dol_mktime(23, 59, 59, $opouvertureprevuemonth, $opouvertureprevueday, $opouvertureprevueyear); +if ($filter_dateouvertureprevue_start != '' && $filter_opouvertureprevue == -1) $filter_opouvertureprevue = ' BETWEEN '; -$filter_date2 = dol_mktime(0, 0, 0, $op2month, $op2day, $op2year); -if ($filter_date2 != '' && $filter_op2 == -1) $filter_op2 = '='; +$filter_date1_start =dol_mktime(0, 0, 0, $op1month, $op1day, $op1year); +$filter_date1_end =dol_mktime(23, 59, 59, $op1month, $op1day, $op1year); +if ($filter_date1_start != '' && $filter_op1 == -1) $filter_op1 = ' BETWEEN '; -$filter_datecloture = dol_mktime(0, 0, 0, $opcloturemonth, $opclotureday, $opclotureyear); -if ($filter_datecloture != '' && $filter_opcloture == -1) $filter_opcloture = '='; +$filter_date2_start=dol_mktime(0, 0, 0, $op2month, $op2day, $op2year); +$filter_date2_end=dol_mktime(23, 59, 59, $op2month, $op2day, $op2year); +if ($filter_date2_start != '' && $filter_op2 == -1) $filter_op2 = ' BETWEEN '; -if (!empty($filter_opouvertureprevue) && $filter_opouvertureprevue != -1 && $filter_dateouvertureprevue != '') $sql .= " AND cd.date_ouverture_prevue ".$filter_opouvertureprevue." '".$db->idate($filter_dateouvertureprevue)."'"; -if (!empty($filter_op1) && $filter_op1 != -1 && $filter_date1 != '') $sql .= " AND cd.date_ouverture ".$filter_op1." '".$db->idate($filter_date1)."'"; -if (!empty($filter_op2) && $filter_op2 != -1 && $filter_date2 != '') $sql .= " AND cd.date_fin_validite ".$filter_op2." '".$db->idate($filter_date2)."'"; -if (!empty($filter_opcloture) && $filter_opcloture != -1 && $filter_datecloture != '') $sql .= " AND cd.date_cloture ".$filter_opcloture." '".$db->idate($filter_datecloture)."'"; +$filter_datecloture_start=dol_mktime(0, 0, 0, $opcloturemonth, $opclotureday, $opclotureyear); +$filter_datecloture_end=dol_mktime(23, 59, 59, $opcloturemonth, $opclotureday, $opclotureyear); +if ($filter_datecloture_start != '' && $filter_opcloture == -1) $filter_opcloture = ' BETWEEN '; + +if (! empty($filter_opouvertureprevue) && $filter_opouvertureprevue != -1 && $filter_opouvertureprevue != ' BETWEEN ' && $filter_dateouvertureprevue_start != '') $sql.= " AND cd.date_ouverture_prevue ".$filter_opouvertureprevue." '".$db->idate($filter_dateouvertureprevue_start)."'"; +if (! empty($filter_opouvertureprevue) && $filter_opouvertureprevue == ' BETWEEN ') $sql.= " AND '".$db->idate($filter_dateouvertureprevue_end)."'"; +if (! empty($filter_op1) && $filter_op1 != -1 && $filter_op1 != ' BETWEEN ' && $filter_date1_start != '') $sql.= " AND cd.date_ouverture ".$filter_op1." '".$db->idate($filter_date1_start)."'"; +if (! empty($filter_op1) && $filter_op1==' BETWEEN ') $sql.= " AND '".$db->idate($filter_date1_end)."'"; +if (! empty($filter_op2) && $filter_op2 != -1 && $filter_op2 != ' BETWEEN ' && $filter_date2_start != '') $sql.= " AND cd.date_fin_validite ".$filter_op2." '".$db->idate($filter_date2_start)."'"; +if (! empty($filter_op2) && $filter_op2==' BETWEEN ') $sql.= " AND '".$db->idate($filter_date2_end)."'"; +if (! empty($filter_opcloture) && $filter_opcloture != ' BETWEEN ' && $filter_opcloture != -1 && $filter_datecloture_start != '') $sql.= " AND cd.date_cloture ".$filter_opcloture." '".$db->idate($filter_datecloture_start)."'"; +if (! empty($filter_opcloture) && $filter_opcloture==' BETWEEN ') $sql.= " AND '".$db->idate($filter_datecloture_end)."'"; // Add where from extra fields include DOL_DOCUMENT_ROOT.'/core/tpl/extrafields_list_search_sql.tpl.php'; $sql .= $db->order($sortfield, $sortorder); @@ -349,7 +355,8 @@ if ($mode == "0") $title = $langs->trans("ListOfInactiveServices"); // Must use if ($mode == "4" && $filter != "expired") $title = $langs->trans("ListOfRunningServices"); if ($mode == "4" && $filter == "expired") $title = $langs->trans("ListOfExpiredServices"); if ($mode == "5") $title = $langs->trans("ListOfClosedServices"); -print_barre_liste($title, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'commercial', 0, '', '', $limit); + +print_barre_liste($title, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'contract', 0, '', '', $limit); if ($sall) { @@ -587,9 +594,7 @@ while ($i < min($num, $limit)) print $productstatic->getNomUrl(1, '', 24); print $obj->label ? ' - '.dol_trunc($obj->label, 16) : ''; if (!empty($obj->description) && !empty($conf->global->PRODUCT_DESC_IN_LIST)) print '
'.dol_nl2br($obj->description); - } - else - { + } else { if ($obj->type == 0) print img_object($obj->description, 'product').' '.dol_trunc($obj->description, 24); if ($obj->type == 1) print img_object($obj->description, 'service').' '.dol_trunc($obj->description, 24); } @@ -672,8 +677,7 @@ while ($i < min($num, $limit)) $warning_delay = $conf->contrat->services->expires->warning_delay / 3600 / 24; $textlate = $langs->trans("Late").' = '.$langs->trans("DateReference").' > '.$langs->trans("DateToday").' '.(ceil($warning_delay) >= 0 ? '+' : '').ceil($warning_delay).' '.$langs->trans("days"); print img_warning($textlate); - } - else print '    '; + } else print '    '; print ''; if (!$i) $totalarray['nbfield']++; } @@ -687,7 +691,7 @@ while ($i < min($num, $limit)) // 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, 'totalarray'=>&$totalarray); $reshook = $hookmanager->executeHooks('printFieldListValue', $parameters); // Note that $action and $object may have been modified by hook print $hookmanager->resPrint; // Date creation @@ -714,9 +718,7 @@ while ($i < min($num, $limit)) { // If contract is draft, we say line is also draft print $contractstatic->LibStatut(0, 5); - } - else - { + } else { print $staticcontratligne->LibStatut($obj->statut, 5, ($obj->date_fin_validite && $db->jdate($obj->date_fin_validite) < $now) ? 1 : 0); } print ''; diff --git a/htdocs/core/actions_addupdatedelete.inc.php b/htdocs/core/actions_addupdatedelete.inc.php index 66ed09413ef..f9f10f636ca 100644 --- a/htdocs/core/actions_addupdatedelete.inc.php +++ b/htdocs/core/actions_addupdatedelete.inc.php @@ -40,8 +40,7 @@ if ($cancel) { header("Location: ".$backtopageforcancel); exit; - } - elseif (!empty($backtopage)) + } elseif (!empty($backtopage)) { header("Location: ".$backtopage); exit; @@ -57,8 +56,7 @@ if ($action == 'add' && !empty($permissiontoadd)) { if ($object->fields[$key]['type'] == 'duration') { if (GETPOST($key.'hour') == '' && GETPOST($key.'min') == '') continue; // The field was not submited to be edited - } - else { + } else { if (!GETPOSTISSET($key)) continue; // The field was not submited to be edited } // Ignore special fields @@ -106,17 +104,13 @@ if ($action == 'add' && !empty($permissiontoadd)) $urltogo = preg_replace('/--IDFORBACKTOPAGE--/', $object->id, $urltogo); // New method to autoselect project after a New on another form object creation header("Location: ".$urltogo); exit; - } - else - { + } else { // Creation KO if (!empty($object->errors)) setEventMessages(null, $object->errors, 'errors'); - else setEventMessages($object->error, null, 'errors'); + else setEventMessages($object->error, null, 'errors'); $action = 'create'; } - } - else - { + } else { $action = 'create'; } } @@ -129,15 +123,12 @@ if ($action == 'update' && !empty($permissiontoadd)) // Check if field was submited to be edited if ($object->fields[$key]['type'] == 'duration') { if (!GETPOSTISSET($key.'hour') || !GETPOSTISSET($key.'min')) continue; // The field was not submited to be edited - } - elseif ($object->fields[$key]['type'] == 'boolean') { + } elseif ($object->fields[$key]['type'] == 'boolean') { if (!GETPOSTISSET($key)) { $object->$key = 0; // use 0 instead null if the field is defined as not null continue; } - } - - else { + } else { if (!GETPOSTISSET($key)) continue; // The field was not submited to be edited } // Ignore special fields @@ -180,16 +171,12 @@ if ($action == 'update' && !empty($permissiontoadd)) if ($result > 0) { $action = 'view'; - } - else - { + } else { // Creation KO setEventMessages($object->error, $object->errors, 'errors'); $action = 'edit'; } - } - else - { + } else { $action = 'edit'; } } @@ -208,9 +195,7 @@ if ($action == "update_extras" && !empty($permissiontoadd)) { setEventMessages($langs->trans('RecordSaved'), null, 'mesgs'); $action = 'view'; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); $action = 'edit_extras'; } @@ -232,9 +217,7 @@ if ($action == 'confirm_delete' && !empty($permissiontodelete)) setEventMessages("RecordDeleted", null, 'mesgs'); header("Location: ".$backurlforlist); exit; - } - else - { + } else { if (!empty($object->errors)) setEventMessages(null, $object->errors, 'errors'); else setEventMessages($object->error, null, 'errors'); } @@ -269,9 +252,7 @@ if ($action == 'confirm_deleteline' && $confirm == 'yes' && !empty($permissionto setEventMessages($langs->trans('RecordDeleted'), null, 'mesgs'); header('Location: '.$_SERVER["PHP_SELF"].'?id='.$object->id); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -298,9 +279,7 @@ if ($action == 'confirm_validate' && $confirm == 'yes' && $permissiontoadd) $object->generateDocument($model, $outputlangs, $hidedetails, $hidedesc, $hideref); } - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -327,9 +306,7 @@ if ($action == 'confirm_close' && $confirm == 'yes' && $permissiontoadd) $object->generateDocument($model, $outputlangs, $hidedetails, $hidedesc, $hideref); } - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -341,9 +318,7 @@ if ($action == 'confirm_setdraft' && $confirm == 'yes' && $permissiontoadd) if ($result >= 0) { // Nothing else done - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -370,9 +345,7 @@ if ($action == 'confirm_reopen' && $confirm == 'yes' && $permissiontoadd) $object->generateDocument($model, $outputlangs, $hidedetails, $hidedesc, $hideref); } - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -383,9 +356,7 @@ if ($action == 'confirm_clone' && $confirm == 'yes' && !empty($permissiontoadd)) if (1 == 0 && !GETPOST('clone_content') && !GETPOST('clone_receivers')) { setEventMessages($langs->trans("NoCloneOptionsSpecified"), null, 'errors'); - } - else - { + } else { $objectutil = dol_clone($object, 1); // To avoid to denaturate loaded object when setting some properties for clone or if createFromClone modifies the object. We use native clone to keep this->db valid. //$objectutil->date = dol_mktime(12, 0, 0, GETPOST('newdatemonth', 'int'), GETPOST('newdateday', 'int'), GETPOST('newdateyear', 'int')); // ... @@ -397,9 +368,7 @@ if ($action == 'confirm_clone' && $confirm == 'yes' && !empty($permissiontoadd)) else $newid = $result; header("Location: ".$_SERVER['PHP_SELF'].'?id='.$newid); // Open record of new object exit; - } - else - { + } else { setEventMessages($objectutil->error, $objectutil->errors, 'errors'); $action = ''; } diff --git a/htdocs/core/actions_builddoc.inc.php b/htdocs/core/actions_builddoc.inc.php index ce582040ac9..eb51796eccd 100644 --- a/htdocs/core/actions_builddoc.inc.php +++ b/htdocs/core/actions_builddoc.inc.php @@ -37,9 +37,7 @@ if ($action == 'builddoc' && $permissiontoadd) if (is_numeric(GETPOST('model', 'alpha'))) { $error = $langs->trans("ErrorFieldRequired", $langs->transnoentities("Model")); - } - else - { + } else { // Reload to get all modified line records and be ready for hooks $ret = $object->fetch($id); $ret = $object->fetch_thirdparty(); @@ -89,9 +87,7 @@ if ($action == 'builddoc' && $permissiontoadd) { setEventMessages($object->error, $object->errors, 'errors'); $action = ''; - } - else - { + } else { if (empty($donotredirect)) // This is set when include is done by bulk action "Bill Orders" { setEventMessages($langs->trans("FileGenerated"), null); @@ -134,8 +130,7 @@ if ($action == 'remove_file' && $permissiontoadd) header('Location: '.$urltoredirect); exit; - } - else { + } else { setEventMessages('BugFoundVarUploaddirnotDefined', null, 'errors'); } } diff --git a/htdocs/core/actions_comments.inc.php b/htdocs/core/actions_comments.inc.php index 07829999c10..c352f07f9f7 100644 --- a/htdocs/core/actions_comments.inc.php +++ b/htdocs/core/actions_comments.inc.php @@ -49,9 +49,7 @@ if ($action == 'addcomment') setEventMessages($langs->trans("CommentAdded"), null, 'mesgs'); header('Location: '.$varpage.'?id='.$id.($withproject ? '&withproject=1' : '')); exit; - } - else - { + } else { setEventMessages($comment->error, $comment->errors, 'errors'); $action = ''; } @@ -67,9 +65,7 @@ if ($action === 'updatecomment') setEventMessages($langs->trans("CommentAdded"), null, 'mesgs'); header('Location: '.$varpage.'?id='.$id.($withproject ? '&withproject=1#comment' : '')); exit; - } - else - { + } else { setEventMessages($comment->error, $comment->errors, 'errors'); $action = ''; } @@ -84,9 +80,7 @@ if ($action == 'deletecomment') setEventMessages($langs->trans("CommentDeleted"), null, 'mesgs'); header('Location: '.$varpage.'?id='.$id.($withproject ? '&withproject=1' : '')); exit; - } - else - { + } else { setEventMessages($comment->error, $comment->errors, 'errors'); $action = ''; } diff --git a/htdocs/core/actions_extrafields.inc.php b/htdocs/core/actions_extrafields.inc.php index bb5a7516fb2..46a6a31c202 100644 --- a/htdocs/core/actions_extrafields.inc.php +++ b/htdocs/core/actions_extrafields.inc.php @@ -122,9 +122,7 @@ if ($action == 'add') $mesg[] = $langs->trans("ErrorBadFormatValueList", $param_ligne); $action = 'create'; } - } - else - { + } else { $error++; $langs->load("errors"); $mesg[] = $langs->trans("ErrorBadFormatValueList", $param_ligne); @@ -149,9 +147,7 @@ if ($action == 'add') { $params['options'] = array($parameters=>null); } - } - else - { + } else { //Esle it's separated key/value and coma list foreach ($parameters_array as $param_ligne) { @@ -191,25 +187,19 @@ if ($action == 'add') setEventMessages($langs->trans('SetupSaved'), null, 'mesgs'); header("Location: ".$_SERVER["PHP_SELF"]); exit; - } - else - { + } else { $error++; $mesg = $extrafields->error; setEventMessages($mesg, null, 'errors'); } - } - else - { + } else { $error++; $langs->load("errors"); $mesg = $langs->trans("ErrorFieldCanNotContainSpecialNorUpperCharacters", $langs->transnoentities("AttributeCode")); setEventMessages($mesg, null, 'errors'); $action = 'create'; } - } - else - { + } else { setEventMessages($mesg, null, 'errors'); } } @@ -293,9 +283,7 @@ if ($action == 'update') $mesg[] = $langs->trans("ErrorBadFormatValueList", $param_ligne); $action = 'edit'; } - } - else - { + } else { $error++; $langs->load("errors"); $mesg[] = $langs->trans("ErrorBadFormatValueList", $param_ligne); @@ -319,9 +307,7 @@ if ($action == 'update') { $params['options'] = array($parameters=>null); } - } - else - { + } else { //Esle it's separated key/value and coma list foreach ($parameters_array as $param_ligne) { @@ -361,24 +347,18 @@ if ($action == 'update') setEventMessages($langs->trans('SetupSaved'), null, 'mesgs'); header("Location: ".$_SERVER["PHP_SELF"]); exit; - } - else - { + } else { $error++; $mesg = $extrafields->error; setEventMessages($mesg, null, 'errors'); } - } - else - { + } else { $error++; $langs->load("errors"); $mesg = $langs->trans("ErrorFieldCanNotContainSpecialCharacters", $langs->transnoentities("AttributeCode")); setEventMessages($mesg, null, 'errors'); } - } - else - { + } else { setEventMessages($mesg, null, 'errors'); } } @@ -394,11 +374,8 @@ if ($action == 'delete') { header("Location: ".$_SERVER["PHP_SELF"]); exit; - } - else $mesg = $extrafields->error; - } - else - { + } else $mesg = $extrafields->error; + } else { $error++; $langs->load("errors"); $mesg = $langs->trans("ErrorFieldCanNotContainSpecialCharacters", $langs->transnoentities("AttributeCode")); diff --git a/htdocs/core/actions_fetchobject.inc.php b/htdocs/core/actions_fetchobject.inc.php index 268d37d92d2..a77fc6e5ff6 100644 --- a/htdocs/core/actions_fetchobject.inc.php +++ b/htdocs/core/actions_fetchobject.inc.php @@ -37,17 +37,14 @@ if (($id > 0 || (!empty($ref) && !in_array($action, array('create', 'createtask' { $object->fetch_thirdparty(); $id = $object->id; - } - else - { + } else { if (empty($object->error) && !count($object->errors)) { if ($ret < 0) // if $ret == 0, it means not found. { setEventMessages('Fetch on object (type '.get_class($object).') return an error without filling $object->error nor $object->errors', null, 'errors'); } - } - else setEventMessages($object->error, $object->errors, 'errors'); + } else setEventMessages($object->error, $object->errors, 'errors'); $action = ''; } } diff --git a/htdocs/core/actions_linkedfiles.inc.php b/htdocs/core/actions_linkedfiles.inc.php index 2542cf23268..ea55052f880 100644 --- a/htdocs/core/actions_linkedfiles.inc.php +++ b/htdocs/core/actions_linkedfiles.inc.php @@ -41,8 +41,7 @@ if (GETPOST('sendit', 'alpha') && !empty($conf->global->MAIN_UPLOAD_DOC)) $error++; if ($_FILES['userfile']['error'][$key] == 1 || $_FILES['userfile']['error'][$key] == 2) { setEventMessages($langs->trans('ErrorFileSizeTooLarge'), null, 'errors'); - } - else { + } else { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("File")), null, 'errors'); } } @@ -58,15 +57,13 @@ if (GETPOST('sendit', 'alpha') && !empty($conf->global->MAIN_UPLOAD_DOC)) if (!empty($upload_dirold) && !empty($conf->global->PRODUCT_USE_OLD_PATH_FOR_PHOTO)) { $result = dol_add_file_process($upload_dirold, $allowoverwrite, 1, 'userfile', GETPOST('savingdocmask', 'alpha'), null, '', $generatethumbs); - } - elseif (!empty($upload_dir)) + } elseif (!empty($upload_dir)) { $result = dol_add_file_process($upload_dir, $allowoverwrite, 1, 'userfile', GETPOST('savingdocmask', 'alpha'), null, '', $generatethumbs); } } } -} -elseif (GETPOST('linkit', 'none') && !empty($conf->global->MAIN_UPLOAD_DOC)) +} elseif (GETPOST('linkit', 'none') && !empty($conf->global->MAIN_UPLOAD_DOC)) { $link = GETPOST('link', 'alpha'); if ($link) @@ -86,8 +83,7 @@ if ($action == 'confirm_deletefile' && $confirm == 'yes') if (GETPOST('section', 'alpha')) { // For a delete from the ECM module, upload_dir is ECM root dir and urlfile contains relative path from upload_dir $file = $upload_dir.(preg_match('/\/$/', $upload_dir) ? '' : '/').$urlfile; - } - else // For a delete from the file manager into another module, or from documents pages, upload_dir contains already path to file from module dir, so we clean path into urlfile. + } else // For a delete from the file manager into another module, or from documents pages, upload_dir contains already path to file from module dir, so we clean path into urlfile. { $urlfile = basename($urlfile); $file = $upload_dir.(preg_match('/\/$/', $upload_dir) ? '' : '/').$urlfile; @@ -124,8 +120,7 @@ if ($action == 'confirm_deletefile' && $confirm == 'yes') } else { setEventMessages($langs->trans("ErrorFailToDeleteFile", $urlfile), null, 'errors'); } - } - elseif ($linkid) // delete of external link + } elseif ($linkid) // delete of external link { require_once DOL_DOCUMENT_ROOT.'/core/class/link.class.php'; $link = new Link($db); @@ -148,16 +143,13 @@ if ($action == 'confirm_deletefile' && $confirm == 'yes') if ($backtopage) { header('Location: '.$backtopage); exit; - } - else - { + } else { $tmpurl = $_SERVER["PHP_SELF"].'?id='.$object->id.(GETPOST('section_dir', 'alpha') ? '§ion_dir='.urlencode(GETPOST('section_dir', 'alpha')) : '').(!empty($withproject) ? '&withproject=1' : ''); header('Location: '.$tmpurl); exit; } } -} -elseif ($action == 'confirm_updateline' && GETPOST('save', 'alpha') && GETPOST('link', 'alpha')) +} elseif ($action == 'confirm_updateline' && GETPOST('save', 'alpha') && GETPOST('link', 'alpha')) { require_once DOL_DOCUMENT_ROOT.'/core/class/link.class.php'; $langs->load('link'); @@ -176,13 +168,10 @@ elseif ($action == 'confirm_updateline' && GETPOST('save', 'alpha') && GETPOST(' { setEventMessages($langs->trans("ErrorFailedToUpdateLink", $link->label), null, 'mesgs'); } - } - else - { + } else { //error fetching } -} -elseif ($action == 'renamefile' && GETPOST('renamefilesave', 'alpha')) +} elseif ($action == 'renamefile' && GETPOST('renamefilesave', 'alpha')) { // For documents pages, upload_dir contains already path to file from module dir, so we clean path into urlfile. if (!empty($upload_dir)) @@ -235,15 +224,11 @@ elseif ($action == 'renamefile' && GETPOST('renamefilesave', 'alpha')) } setEventMessages($langs->trans("FileRenamed"), null); - } - else - { + } else { $langs->load("errors"); // key must be loaded because we can't rely on loading during output, we need var substitution to be done now. setEventMessages($langs->trans("ErrorFailToRenameFile", $filenamefrom, $filenameto), null, 'errors'); } - } - else - { + } else { $langs->load("errors"); // key must be loaded because we can't rely on loading during output, we need var substitution to be done now. setEventMessages($langs->trans("ErrorDestinationAlreadyExists", $filenameto), null, 'errors'); } @@ -269,9 +254,7 @@ elseif ($action == 'renamefile' && GETPOST('renamefilesave', 'alpha')) require_once DOL_DOCUMENT_ROOT.'/core/lib/security2.lib.php'; $ecmfile->share = getRandomPassword(true); } - } - else - { + } else { $ecmfile->share = ''; } $result = $ecmfile->update($user); diff --git a/htdocs/core/actions_massactions.inc.php b/htdocs/core/actions_massactions.inc.php index e8cfa803573..23c76ae81fb 100644 --- a/htdocs/core/actions_massactions.inc.php +++ b/htdocs/core/actions_massactions.inc.php @@ -180,8 +180,7 @@ if (!$error && $massaction == 'confirm_presend') if ($val == 'thirdparty') // Id of third party or user { $tmparray[] = $thirdparty->name.' <'.$thirdparty->email.'>'; - } - elseif ($val && method_exists($thirdparty, 'contact_get_property')) // Id of contact + } elseif ($val && method_exists($thirdparty, 'contact_get_property')) // Id of contact { $tmparray[] = $thirdparty->contact_get_property((int) $val, 'email'); $sendtoid[] = $val; @@ -210,8 +209,7 @@ if (!$error && $massaction == 'confirm_presend') if ($val == 'thirdparty') // Id of third party { $tmparray[] = $thirdparty->name.' <'.$thirdparty->email.'>'; - } - elseif ($val) // Id du contact + } elseif ($val) // Id du contact { $tmparray[] = $thirdparty->contact_get_property((int) $val, 'email'); //$sendtoid[] = $val; TODO Add also id of contact in CC ? @@ -256,20 +254,17 @@ if (!$error && $massaction == 'confirm_presend') if ($objectobj->element == 'societe') { $sendto = $objectobj->email; - } - elseif ($objectobj->element == 'expensereport') + } elseif ($objectobj->element == 'expensereport') { $fuser = new User($db); $fuser->fetch($objectobj->fk_user_author); $sendto = $fuser->email; - } - elseif ($objectobj->element == 'holiday') + } elseif ($objectobj->element == 'holiday') { $fuser = new User($db); $fuser->fetch($objectobj->fk_user); $sendto = $fuser->email; - } - elseif ($objectobj->element == 'facture' && !empty($listofobjectcontacts[$objectid])) + } elseif ($objectobj->element == 'facture' && !empty($listofobjectcontacts[$objectid])) { $emails_to_sends = array(); $objectobj->fetch_thirdparty(); @@ -283,9 +278,7 @@ if (!$error && $massaction == 'confirm_presend') if (count($emails_to_sends) > 0) { $sendto = implode(',', $emails_to_sends); } - } - else - { + } else { $objectobj->fetch_thirdparty(); $sendto = $objectobj->thirdparty->email; } @@ -336,9 +329,7 @@ if (!$error && $massaction == 'confirm_presend') 'names'=>array($filename), 'mimes'=>array($mime) ); - } - else - { + } else { $nbignored++; $langs->load("errors"); $resaction .= '
'.$langs->trans('ErrorCantReadFile', $file).'

'; @@ -364,19 +355,15 @@ if (!$error && $massaction == 'confirm_presend') $fromtype = GETPOST('fromtype'); if ($fromtype === 'user') { $from = $user->getFullName($langs).' <'.$user->email.'>'; - } - elseif ($fromtype === 'company') { + } elseif ($fromtype === 'company') { $from = $conf->global->MAIN_INFO_SOCIETE_NOM.' <'.$conf->global->MAIN_INFO_SOCIETE_MAIL.'>'; - } - elseif (preg_match('/user_aliases_(\d+)/', $fromtype, $reg)) { + } elseif (preg_match('/user_aliases_(\d+)/', $fromtype, $reg)) { $tmp = explode(',', $user->email_aliases); $from = trim($tmp[($reg[1] - 1)]); - } - elseif (preg_match('/global_aliases_(\d+)/', $fromtype, $reg)) { + } elseif (preg_match('/global_aliases_(\d+)/', $fromtype, $reg)) { $tmp = explode(',', $conf->global->MAIN_INFO_SOCIETE_MAIL_ALIASES); $from = trim($tmp[($reg[1] - 1)]); - } - elseif (preg_match('/senderprofile_(\d+)_(\d+)/', $fromtype, $reg)) { + } elseif (preg_match('/senderprofile_(\d+)_(\d+)/', $fromtype, $reg)) { $sql = 'SELECT rowid, label, email FROM '.MAIN_DB_PREFIX.'c_email_senderprofile WHERE rowid = '.(int) $reg[1]; $resql = $db->query($sql); $obj = $db->fetch_object($resql); @@ -384,8 +371,7 @@ if (!$error && $massaction == 'confirm_presend') { $from = $obj->label.' <'.$obj->email.'>'; } - } - else { + } else { $from = $_POST['fromname'].' <'.$_POST['frommail'].'>'; } @@ -412,9 +398,7 @@ if (!$error && $massaction == 'confirm_presend') { $looparray[$key]->thirdparty = $thirdparty; // Force thirdparty on object } - } - else - { + } else { $objectforloop = new $objectclass($db); $objectforloop->thirdparty = $thirdparty; // Force thirdparty on object (even if object was not loaded) $looparray[0] = $objectforloop; @@ -464,8 +448,7 @@ if (!$error && $massaction == 'confirm_presend') ); } } - } - elseif (!empty($attachedfilesThirdpartyObj[$thirdparty->id][$objectid])) { + } elseif (!empty($attachedfilesThirdpartyObj[$thirdparty->id][$objectid])) { // Create form object // if "one email per recipient" isn't check we must separate $attachedfiles by object $attachedfiles = $attachedfilesThirdpartyObj[$thirdparty->id][$objectid]; @@ -481,9 +464,7 @@ if (!$error && $massaction == 'confirm_presend') $trackid = 'thi'.$thirdparty->id; if ($objecttmp->element == 'expensereport') $trackid = 'use'.$thirdparty->id; if ($objecttmp->element == 'holiday') $trackid = 'use'.$thirdparty->id; - } - else - { + } else { $trackid = strtolower(get_class($objecttmp)); if (get_class($objecttmp) == 'Contrat') $trackid = 'con'; if (get_class($objecttmp) == 'Propal') $trackid = 'pro'; @@ -507,9 +488,7 @@ if (!$error && $massaction == 'confirm_presend') if ($mailfile->error) { $resaction .= '
'.$mailfile->error.'
'; - } - else - { + } else { $result = $mailfile->sendfile(); if ($result) { @@ -574,17 +553,13 @@ if (!$error && $massaction == 'confirm_presend') $nbsent++; // Nb of object sent } - } - else - { + } else { $langs->load("other"); if ($mailfile->error) { $resaction .= $langs->trans('ErrorFailedToSendMail', $from, $sendto); $resaction .= '
'.$mailfile->error.'
'; - } - else - { + } else { $resaction .= '
No mail sent. Feature is disabled by option MAIN_DISABLE_ALL_MAILS
'; } } @@ -605,9 +580,7 @@ if (!$error && $massaction == 'confirm_presend') //setEventMessages($langs->trans("EMailSentToNRecipients", $nbsent.'/'.count($toselect)), null, 'mesgs'); setEventMessages($langs->trans("EMailSentForNElements", $nbsent.'/'.count($toselect)), null, 'mesgs'); setEventMessages($resaction, null, 'mesgs'); - } - else - { + } else { //setEventMessages($langs->trans("EMailSentToNRecipients", 0), null, 'warnings'); // May be object has no generated PDF file setEventMessages($resaction, null, 'warnings'); } @@ -722,16 +695,12 @@ if ($massaction == 'confirm_createbills') // Create bills from orders { $result = $objecttmp->insert_discount($discountid); //$result=$discount->link_to_invoice($lineid,$id); - } - else - { + } else { setEventMessages($discount->error, $discount->errors, 'errors'); $error++; break; } - } - else - { + } else { // Positive line $product_type = ($lines[$i]->product_type ? $lines[$i]->product_type : 0); // Date start @@ -751,7 +720,7 @@ if ($massaction == 'confirm_createbills') // Create bills from orders } // Extrafields - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED) && method_exists($lines[$i], 'fetch_optionals')) { + if (method_exists($lines[$i], 'fetch_optionals')) { $lines[$i]->fetch_optionals(); $array_options = $lines[$i]->array_options; } @@ -789,9 +758,7 @@ if ($massaction == 'confirm_createbills') // Create bills from orders if ($result > 0) { $lineid = $result; - } - else - { + } else { $lineid = 0; $error++; break; @@ -881,9 +848,7 @@ if ($massaction == 'confirm_createbills') // Create bills from orders header("Location: ".$_SERVER['PHP_SELF'].'?'.$param); exit; - } - else - { + } else { $db->rollback(); $action = 'create'; $_GET["origin"] = $_POST["origin"]; @@ -913,29 +878,22 @@ if (!$error && $massaction == 'cancelorders') setEventMessages($langs->trans("ErrorObjectMustHaveStatusValidToBeCanceled", $cmd->ref), null, 'errors'); $error++; break; - } - else - $result = $cmd->cancel(); + } else $result = $cmd->cancel(); if ($result < 0) { setEventMessages($cmd->error, $cmd->errors, 'errors'); $error++; break; - } - else - $nbok++; + } else $nbok++; } if (!$error) { if ($nbok > 1) setEventMessages($langs->trans("RecordsModified", $nbok), null, 'mesgs'); - else - setEventMessages($langs->trans("RecordsModified", $nbok), null, 'mesgs'); + else setEventMessages($langs->trans("RecordsModified", $nbok), null, 'mesgs'); $db->commit(); - } - else - { + } else { $db->rollback(); } } @@ -1036,13 +994,10 @@ if (!$error && $massaction == "builddoc" && $permissiontoread && !GETPOST('butto $langs->load("exports"); setEventMessages($langs->trans('FileSuccessfullyBuilt', $filename.'_'.dol_print_date($now, 'dayhourlog')), null, 'mesgs'); - } - else - { + } else { setEventMessages($langs->trans('NoPDFAvailableForDocGenAmongChecked'), null, 'errors'); } - } - else { + } else { // Create empty PDF $formatarray = pdf_getFormat(); $page_largeur = $formatarray['width']; @@ -1099,9 +1054,7 @@ if (!$error && $massaction == "builddoc" && $permissiontoread && !GETPOST('butto $langs->load("exports"); setEventMessages($langs->trans('FileSuccessfullyBuilt', $filename.'_'.dol_print_date($now, 'dayhourlog')), null, 'mesgs'); - } - else - { + } else { setEventMessages($langs->trans('NoPDFAvailableForDocGenAmongChecked'), null, 'errors'); } } @@ -1157,17 +1110,13 @@ if (!$error && $massaction == 'validate' && $permissiontoadd) setEventMessages($langs->trans("ErrorObjectMustHaveStatusDraftToBeValidated", $objecttmp->ref), null, 'errors'); $error++; break; - } - elseif ($result < 0) + } elseif ($result < 0) { setEventMessages($objecttmp->error, $objecttmp->errors, 'errors'); $error++; break; - } - else $nbok++; - } - else - { + } else $nbok++; + } else { setEventMessages($objecttmp->error, $objecttmp->errors, 'errors'); $error++; break; @@ -1179,9 +1128,7 @@ if (!$error && $massaction == 'validate' && $permissiontoadd) if ($nbok > 1) setEventMessages($langs->trans("RecordsModified", $nbok), null, 'mesgs'); else setEventMessages($langs->trans("RecordsModified", $nbok), null, 'mesgs'); $db->commit(); - } - else - { + } else { $db->rollback(); } //var_dump($listofobjectthirdparties);exit; @@ -1202,10 +1149,8 @@ if (!$error && $massaction == 'closed' && $objectclass == "Propal" && $permissio setEventMessages($objecttmp->error, $objecttmp->errors, 'errors'); $error++; break; - } else - $nbok++; - } - else { + } else $nbok++; + } else { setEventMessages($objecttmp->error, $objecttmp->errors, 'errors'); $error++; break; @@ -1215,11 +1160,9 @@ if (!$error && $massaction == 'closed' && $objectclass == "Propal" && $permissio if (!$error) { if ($nbok > 1) setEventMessages($langs->trans("RecordsModified", $nbok), null, 'mesgs'); - else - setEventMessages($langs->trans("RecordsModified", $nbok), null, 'mesgs'); + else setEventMessages($langs->trans("RecordsModified", $nbok), null, 'mesgs'); $db->commit(); - } - else { + } else { $db->rollback(); } } @@ -1266,11 +1209,8 @@ if (!$error && ($massaction == 'delete' || ($action == 'delete' && $confirm == ' setEventMessages($objecttmp->error, $objecttmp->errors, 'errors'); $error++; break; - } - else $nbok++; - } - else - { + } else $nbok++; + } else { setEventMessages($objecttmp->error, $objecttmp->errors, 'errors'); $error++; break; @@ -1282,9 +1222,7 @@ if (!$error && ($massaction == 'delete' || ($action == 'delete' && $confirm == ' if ($nbok > 1) setEventMessages($langs->trans("RecordsDeleted", $nbok), null, 'mesgs'); else setEventMessages($langs->trans("RecordDeleted", $nbok), null, 'mesgs'); $db->commit(); - } - else - { + } else { $db->rollback(); } //var_dump($listofobjectthirdparties);exit; @@ -1328,11 +1266,8 @@ if (!$error && $massaction == 'generate_doc' && $permissiontoread) setEventMessages($objecttmp->error, $objecttmp->errors, 'errors'); $error++; break; - } - else $nbok++; - } - else - { + } else $nbok++; + } else { setEventMessages($objecttmp->error, $objecttmp->errors, 'errors'); $error++; break; @@ -1344,9 +1279,7 @@ if (!$error && $massaction == 'generate_doc' && $permissiontoread) if ($nbok > 1) setEventMessages($langs->trans("RecordsGenerated", $nbok), null, 'mesgs'); else setEventMessages($langs->trans("RecordGenerated", $nbok), null, 'mesgs'); $db->commit(); - } - else - { + } else { $db->rollback(); } } diff --git a/htdocs/core/actions_printing.inc.php b/htdocs/core/actions_printing.inc.php index e2da8a4170c..e88fc937e38 100644 --- a/htdocs/core/actions_printing.inc.php +++ b/htdocs/core/actions_printing.inc.php @@ -75,8 +75,7 @@ if ($action == 'print_file' && $user->rights->printing->read) { setEventMessages($printer->error, $printer->errors); setEventMessages($langs->transnoentitiesnoconv("FileWasSentToPrinter", basename(GETPOST('file', 'alpha'))).' '.$langs->transnoentitiesnoconv("ViaModule").' '.$printer->name, null); } - } - catch (Exception $e) + } catch (Exception $e) { $ret = 1; setEventMessages($e->getMessage(), null, 'errors'); diff --git a/htdocs/core/actions_sendmails.inc.php b/htdocs/core/actions_sendmails.inc.php index e23d2ce01a9..bc38d9839af 100644 --- a/htdocs/core/actions_sendmails.inc.php +++ b/htdocs/core/actions_sendmails.inc.php @@ -120,38 +120,32 @@ if (($action == 'send' || $action == 'relance') && !$_POST['addfile'] && !$_POST if ($object->element == 'user' && $result == 0) $result = 1; // Even if not found, we consider ok $thirdparty = $object->thirdparty; $sendtosocid = $thirdparty->id; - } - elseif ($object->element == 'member' || $object->element == 'user') + } elseif ($object->element == 'member' || $object->element == 'user') { $thirdparty = $object; if ($object->socid > 0) $sendtosocid = $object->socid; - } - elseif ($object->element == 'expensereport') + } elseif ($object->element == 'expensereport') { $tmpuser = new User($db); $tmpuser->fetch($object->fk_user_author); $thirdparty = $tmpuser; if ($object->socid > 0) $sendtosocid = $object->socid; - } - elseif ($object->element == 'societe') + } elseif ($object->element == 'societe') { $thirdparty = $object; if ($thirdparty->id > 0) $sendtosocid = $thirdparty->id; - } - elseif ($object->element == 'contact') + } elseif ($object->element == 'contact') { $contact = $object; if ($contact->id > 0) $sendtosocid = $contact->fetch_thirdparty()->id; - } - else dol_print_error('', "Use actions_sendmails.in.php for an element/object '".$object->element."' that is not supported"); + } else dol_print_error('', "Use actions_sendmails.in.php for an element/object '".$object->element."' that is not supported"); if (is_object($hookmanager)) { $parameters = array(); $reshook = $hookmanager->executeHooks('initSendToSocid', $parameters, $object, $action); // Note that $action and $object may have been modified by some hooks } - } - else $thirdparty = $mysoc; + } else $thirdparty = $mysoc; if ($result > 0) { @@ -189,8 +183,7 @@ if (($action == 'send' || $action == 'relance') && !$_POST['addfile'] && !$_POST elseif ($val == 'contact') // Key selected means current contact { $tmparray[] = dol_string_nospecial($contact->getFullName($langs), ' ', array(",")).' <'.$contact->email.'>'; - } - elseif ($val) // $val is the Id of a contact + } elseif ($val) // $val is the Id of a contact { $tmparray[] = $thirdparty->contact_get_property((int) $val, 'email'); $sendtoid[] = $val; @@ -239,8 +232,7 @@ if (($action == 'send' || $action == 'relance') && !$_POST['addfile'] && !$_POST elseif ($val == 'contact') // Key selected means current contact { $tmparray[] = dol_string_nospecial($contact->name, ' ', array(",")).' <'.$contact->email.'>'; - } - elseif ($val) // $val is the Id of a contact + } elseif ($val) // $val is the Id of a contact { $tmparray[] = $thirdparty->contact_get_property((int) $val, 'email'); //$sendtoid[] = $val; TODO Add also id of contact in CC ? @@ -277,22 +269,17 @@ if (($action == 'send' || $action == 'relance') && !$_POST['addfile'] && !$_POST $fromtype = GETPOST('fromtype', 'alpha'); if ($fromtype === 'robot') { $from = dol_string_nospecial($conf->global->MAIN_MAIL_EMAIL_FROM, ' ', array(",")).' <'.$conf->global->MAIN_MAIL_EMAIL_FROM.'>'; - } - elseif ($fromtype === 'user') { + } elseif ($fromtype === 'user') { $from = dol_string_nospecial($user->getFullName($langs), ' ', array(",")).' <'.$user->email.'>'; - } - elseif ($fromtype === 'company') { + } elseif ($fromtype === 'company') { $from = dol_string_nospecial($conf->global->MAIN_INFO_SOCIETE_NOM, ' ', array(",")).' <'.$conf->global->MAIN_INFO_SOCIETE_MAIL.'>'; - } - elseif (preg_match('/user_aliases_(\d+)/', $fromtype, $reg)) { + } elseif (preg_match('/user_aliases_(\d+)/', $fromtype, $reg)) { $tmp = explode(',', $user->email_aliases); $from = trim($tmp[($reg[1] - 1)]); - } - elseif (preg_match('/global_aliases_(\d+)/', $fromtype, $reg)) { + } elseif (preg_match('/global_aliases_(\d+)/', $fromtype, $reg)) { $tmp = explode(',', $conf->global->MAIN_INFO_SOCIETE_MAIL_ALIASES); $from = trim($tmp[($reg[1] - 1)]); - } - elseif (preg_match('/senderprofile_(\d+)_(\d+)/', $fromtype, $reg)) { + } elseif (preg_match('/senderprofile_(\d+)_(\d+)/', $fromtype, $reg)) { $sql = 'SELECT rowid, label, email FROM '.MAIN_DB_PREFIX.'c_email_senderprofile'; $sql .= ' WHERE rowid = '.(int) $reg[1]; $resql = $db->query($sql); @@ -301,8 +288,7 @@ if (($action == 'send' || $action == 'relance') && !$_POST['addfile'] && !$_POST { $from = dol_string_nospecial($obj->label, ' ', array(",")).' <'.$obj->email.'>'; } - } - else { + } else { $from = dol_string_nospecial($_POST['fromname'], ' ', array(",")).' <'.$_POST['frommail'].'>'; } @@ -419,9 +405,7 @@ if (($action == 'send' || $action == 'relance') && !$_POST['addfile'] && !$_POST { setEventMessages($mailfile->error, $mailfile->errors, 'errors'); $action = 'presend'; - } - else - { + } else { $result = $mailfile->sendfile(); if ($result) { @@ -479,18 +463,14 @@ if (($action == 'send' || $action == 'relance') && !$_POST['addfile'] && !$_POST if (isset($paramname2) || isset($paramval2)) $moreparam .= '&'.($paramname2 ? $paramname2 : 'mid').'='.$paramval2; header('Location: '.$_SERVER["PHP_SELF"].'?'.($paramname ? $paramname : 'id').'='.(is_object($object) ? $object->id : '').$moreparam); exit; - } - else - { + } else { $langs->load("other"); $mesg = '
'; if ($mailfile->error) { $mesg .= $langs->transnoentities('ErrorFailedToSendMail', dol_escape_htmltag($from), dol_escape_htmltag($sendto)); $mesg .= '
'.$mailfile->error; - } - else - { + } else { $mesg .= 'No mail sent. Feature is disabled by option MAIN_DISABLE_ALL_MAILS'; } $mesg .= '
'; @@ -499,17 +479,13 @@ if (($action == 'send' || $action == 'relance') && !$_POST['addfile'] && !$_POST $action = 'presend'; } } - } - else - { + } else { $langs->load("errors"); setEventMessages($langs->trans('ErrorFieldRequired', $langs->transnoentitiesnoconv("MailTo")), null, 'warnings'); dol_syslog('Try to send email with no recipient defined', LOG_WARNING); $action = 'presend'; } - } - else - { + } else { $langs->load("other"); setEventMessages($langs->trans('ErrorFailedToReadObject', $object->element), null, 'errors'); dol_syslog('Failed to read data of object id='.$object->id.' element='.$object->element); diff --git a/htdocs/core/actions_setmoduleoptions.inc.php b/htdocs/core/actions_setmoduleoptions.inc.php index 313375d1aa1..05be4a31d18 100644 --- a/htdocs/core/actions_setmoduleoptions.inc.php +++ b/htdocs/core/actions_setmoduleoptions.inc.php @@ -50,9 +50,7 @@ if ($action == 'update' && is_array($arrayofparameters)) { $db->commit(); if (empty($nomessageinupdate)) setEventMessages($langs->trans("SetupSaved"), null, 'mesgs'); - } - else - { + } else { $db->rollback(); if (empty($nomessageinupdate)) setEventMessages($langs->trans("SetupNotSaved"), null, 'errors'); } @@ -96,8 +94,7 @@ if ($action == 'setModuleOptions') unset($listofdir[$key]); continue; } if (!is_dir($tmpdir)) $texttitle .= img_warning($langs->trans("ErrorDirNotFound", $tmpdir), 0); - else - { + else { $upload_dir = $tmpdir; } } @@ -112,9 +109,7 @@ if ($action == 'setModuleOptions') { $db->commit(); if (empty($nomessageinsetmoduleoptions)) setEventMessages($langs->trans("SetupSaved"), null, 'mesgs'); - } - else - { + } else { $db->rollback(); if (empty($nomessageinsetmoduleoptions)) setEventMessages($langs->trans("SetupNotSaved"), null, 'errors'); } diff --git a/htdocs/core/ajax/ajaxdirpreview.php b/htdocs/core/ajax/ajaxdirpreview.php index 31d0b449d5b..9fb743f1208 100644 --- a/htdocs/core/ajax/ajaxdirpreview.php +++ b/htdocs/core/ajax/ajaxdirpreview.php @@ -46,11 +46,12 @@ if (!isset($mode) || $mode != 'noajax') // For ajax call $urlsource = GETPOST("urlsource", 'alpha'); $search_doc_ref = GETPOST('search_doc_ref', 'alpha'); + $limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 - $offset = $conf->liste_limit * $page; + $offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; if (!$sortorder) $sortorder = "ASC"; @@ -67,8 +68,7 @@ if (!isset($mode) || $mode != 'noajax') // For ajax call //dol_print_error($db,$ecmdir->error); //exit; } -} -else // For no ajax call +} else // For no ajax call { $rootdirfordoc = $conf->ecm->dir_output; @@ -84,8 +84,7 @@ else // For no ajax call } $relativepath = $ecmdir->getRelativePath(); // Example 'mydir/' - } - elseif (GETPOST('section_dir')) + } elseif (GETPOST('section_dir')) { $relativepath = GETPOST('section_dir'); } @@ -233,8 +232,7 @@ if ($type == 'directory') $formfile->list_of_autoecmfiles($upload_dir, $filearray, $module, $param, 1, '', $perm, 1, $textifempty, $maxlengthname, $url, 1); } // Manual list - else - { + else { if ($module == 'medias') { /* @@ -258,9 +256,7 @@ if ($type == 'directory') if (!preg_match('/pageid=/', $param)) $param .= '&pageid='.urlencode(GETPOST('pageid', 'int')); //if (!preg_match('/backtopage=/',$param)) $param.='&backtopage='.urlencode($_SERVER["PHP_SELF"].'?file_manager=1&website='.$websitekey.'&pageid='.$pageid); } - } - else - { + } else { $relativepath = $ecmdir->getRelativePath(); $upload_dir = $conf->ecm->dir_output.'/'.$relativepath; } @@ -269,9 +265,7 @@ if ($type == 'directory') if (($section === '0' || empty($section)) && ($module != 'medias')) { $filearray = array(); - } - else - { + } else { $filearray = dol_dir_list($upload_dir, "files", 0, '', array('^\.', '(\.meta|_preview.*\.png)$', '^temp$', '^CVS$'), $sortfield, $sorting, 1); } @@ -281,13 +275,11 @@ if ($type == 'directory') if (isset($search_doc_ref) && $search_doc_ref != '') $param .= '&search_doc_ref='.$search_doc_ref; $textifempty = $langs->trans('NoFileFound'); - } - elseif ($section === '0') + } elseif ($section === '0') { if ($module == 'ecm') $textifempty = '
'.$langs->trans("DirNotSynchronizedSyncFirst").'

'; else $textifempty = $langs->trans('NoFileFound'); - } - else $textifempty = ($showonrightsize == 'featurenotyetavailable' ? $langs->trans("FeatureNotYetAvailable") : $langs->trans("ECMSelectASection")); + } else $textifempty = ($showonrightsize == 'featurenotyetavailable' ? $langs->trans("FeatureNotYetAvailable") : $langs->trans("ECMSelectASection")); if ($module == 'medias') { @@ -295,8 +287,7 @@ if ($type == 'directory') $modulepart = 'medias'; $perm = ($user->rights->website->write || $user->rights->emailing->creer); $title = 'none'; - } - elseif ($module == 'ecm') // DMS/ECM -> manual structure + } elseif ($module == 'ecm') // DMS/ECM -> manual structure { if ($user->rights->ecm->read) { @@ -319,9 +310,7 @@ if ($type == 'directory') $perm = $user->rights->ecm->upload; $modulepart = 'ecm'; $title = ''; // Use default - } - else - { + } else { $useinecm = 5; $modulepart = 'ecm'; $perm = $user->rights->ecm->upload; diff --git a/htdocs/core/ajax/ajaxdirtree.php b/htdocs/core/ajax/ajaxdirtree.php index 04687b77829..620643da8f2 100644 --- a/htdocs/core/ajax/ajaxdirtree.php +++ b/htdocs/core/ajax/ajaxdirtree.php @@ -49,8 +49,7 @@ if (!isset($mode) || $mode != 'noajax') // For ajax call $preopened = GETPOST('preopened'); if ($selecteddir != '/') $selecteddir = preg_replace('/\/$/', '', $selecteddir); // We removed last '/' except if it is '/' -} -else // For no ajax call +} else // For no ajax call { //if (GETPOST('preopened')) { $_GET['dir'] = $_POST['dir'] = GETPOST('preopened'); } @@ -73,8 +72,7 @@ if ($modulepart == 'ecm') { $fullpathselecteddir = $conf->ecm->dir_output.'/'.($selecteddir != '/' ? $selecteddir : ''); $fullpathpreopened = $conf->ecm->dir_output.'/'.($preopened != '/' ? $preopened : ''); -} -elseif ($modulepart == 'medias') +} elseif ($modulepart == 'medias') { $fullpathselecteddir = $dolibarr_main_data_root.'/medias/'.($selecteddir != '/' ? $selecteddir : ''); $fullpathpreopened = $dolibarr_main_data_root.'/medias/'.($preopened != '/' ? $preopened : ''); @@ -95,8 +93,7 @@ if (preg_match('/\.\./', $fullpathselecteddir) || preg_match('/[<>|]/', $fullpat if ($modulepart == 'ecm') { if (!$user->rights->ecm->read) accessforbidden(); -} -elseif ($modulepart == 'medias') +} elseif ($modulepart == 'medias') { // Always allowed } @@ -428,11 +425,11 @@ function treeOutputForAbsoluteDir($sqltree, $selecteddir, $fullpathselecteddir, print (isset($val['cachenbofdoc']) && $val['cachenbofdoc'] >= 0) ? $val['cachenbofdoc'] : ' '; print ''; print ''; - if ($nbofsubdir > 0 && $nboffilesinsubdir > 0) print '+'.$nboffilesinsubdir.' '; + if ($nbofsubdir > 0 && $nboffilesinsubdir > 0) print '+'.$nboffilesinsubdir.' '; print ''; // Edit link - print ''.img_edit($langs->trans("Edit").' - '.$langs->trans("View"), 0, 'class="valignmiddle opacitymedium"').''; @@ -471,8 +468,7 @@ function treeOutputForAbsoluteDir($sqltree, $selecteddir, $fullpathselecteddir, if ($modulepart == 'ecm') { $newfullpathselecteddir = $conf->ecm->dir_output.'/'.($val['fullrelativename'] != '/' ? $val['fullrelativename'] : ''); - } - elseif ($modulepart == 'medias') + } elseif ($modulepart == 'medias') { $newfullpathselecteddir = $dolibarr_main_data_root.'/medias/'.($val['fullrelativename'] != '/' ? $val['fullrelativename'] : ''); } @@ -486,7 +482,6 @@ function treeOutputForAbsoluteDir($sqltree, $selecteddir, $fullpathselecteddir, echo "\n"; } - } - else print "PermissionDenied"; + } else print "PermissionDenied"; } } diff --git a/htdocs/core/ajax/check_notifications.php b/htdocs/core/ajax/check_notifications.php index d8f4985f6d8..98d7d00a8dc 100644 --- a/htdocs/core/ajax/check_notifications.php +++ b/htdocs/core/ajax/check_notifications.php @@ -60,9 +60,7 @@ if ($time >= $_SESSION['auto_check_events_not_before']) dol_syslog("We ask to check browser notification on a too large period. We fix this with current date."); $starttime = $time; } - } - else - { + } else { $starttime = $time; } @@ -109,9 +107,7 @@ if ($time >= $_SESSION['auto_check_events_not_before']) $eventfound[] = $event; } - } - else - { + } else { dol_syslog("Error sql = ".$db->lasterror(), LOG_ERR); } } diff --git a/htdocs/core/ajax/constantonoff.php b/htdocs/core/ajax/constantonoff.php index c7e5bbd8991..1ed8ca34076 100644 --- a/htdocs/core/ajax/constantonoff.php +++ b/htdocs/core/ajax/constantonoff.php @@ -57,8 +57,7 @@ if (!empty($action) && !empty($name)) if ($action == 'set') { dolibarr_set_const($db, $name, $value, 'chaine', 0, '', $entity); - } - elseif ($action == 'del') + } elseif ($action == 'del') { dolibarr_del_const($db, $name, $entity); } diff --git a/htdocs/core/ajax/extraparams.php b/htdocs/core/ajax/extraparams.php index a3db4505f70..16f39af9bde 100644 --- a/htdocs/core/ajax/extraparams.php +++ b/htdocs/core/ajax/extraparams.php @@ -51,20 +51,38 @@ if (!empty($id) && !empty($element) && !empty($htmlelement) && !empty($type)) $classpath = $subelement = $element; // For compatibility - if ($element == 'order' || $element == 'commande') { $classpath = $subelement = 'commande'; } - elseif ($element == 'propal') { $classpath = 'comm/propal'; $subelement = 'propal'; } - elseif ($element == 'facture') { $classpath = 'compta/facture'; $subelement = 'facture'; } - elseif ($element == 'contract') { $classpath = $subelement = 'contrat'; } - elseif ($element == 'shipping') { $classpath = $subelement = 'expedition'; } - elseif ($element == 'deplacement') { $classpath = 'compta/deplacement'; $subelement = 'deplacement'; } - elseif ($element == 'order_supplier') { $classpath = 'fourn'; $subelement = 'fournisseur.commande'; } - elseif ($element == 'invoice_supplier') { $classpath = 'fourn'; $subelement = 'fournisseur.facture'; } + if ($element == 'order' || $element == 'commande') { + $classpath = $subelement = 'commande'; + } elseif ($element == 'propal') { + $classpath = 'comm/propal'; + $subelement = 'propal'; + } elseif ($element == 'facture') { + $classpath = 'compta/facture'; + $subelement = 'facture'; + } elseif ($element == 'contract') { + $classpath = $subelement = 'contrat'; + } elseif ($element == 'shipping') { + $classpath = $subelement = 'expedition'; + } elseif ($element == 'deplacement') { + $classpath = 'compta/deplacement'; + $subelement = 'deplacement'; + } elseif ($element == 'order_supplier') { + $classpath = 'fourn'; + $subelement = 'fournisseur.commande'; + } elseif ($element == 'invoice_supplier') { + $classpath = 'fourn'; + $subelement = 'fournisseur.facture'; + } dol_include_once('/'.$classpath.'/class/'.$subelement.'.class.php'); - if ($element == 'order_supplier') { $classname = 'CommandeFournisseur'; } - elseif ($element == 'invoice_supplier') { $classname = 'FactureFournisseur'; } - else $classname = ucfirst($subelement); + if ($element == 'order_supplier') { + $classname = 'CommandeFournisseur'; + } elseif ($element == 'invoice_supplier') { + $classname = 'FactureFournisseur'; + } else { + $classname = ucfirst($subelement); + } $object = new $classname($db); $object->fetch($id); diff --git a/htdocs/core/ajax/loadinplace.php b/htdocs/core/ajax/loadinplace.php index 14258e1ebb1..b1a72868312 100644 --- a/htdocs/core/ajax/loadinplace.php +++ b/htdocs/core/ajax/loadinplace.php @@ -62,8 +62,7 @@ if (!empty($field) && !empty($element) && !empty($table_element) && !empty($fk_e elseif ($element == 'order_supplier') { $element = 'fournisseur'; $subelement = 'commande'; - } - elseif ($element == 'invoice_supplier') { + } elseif ($element == 'invoice_supplier') { $element = 'fournisseur'; $subelement = 'facture'; } @@ -83,8 +82,7 @@ if (!empty($field) && !empty($element) && !empty($table_element) && !empty($fk_e { $ret = $form->$methodname(); if ($ret > 0) echo json_encode($form->$cachename); - } - elseif (!empty($ext_element)) + } elseif (!empty($ext_element)) { $module = $subelement = $ext_element; if (preg_match('/^([^_]+)_([^_]+)/i', $ext_element, $regs)) @@ -99,16 +97,12 @@ if (!empty($field) && !empty($element) && !empty($table_element) && !empty($fk_e $ret = $object->$methodname($fk_element); if ($ret > 0) echo json_encode($object->$cachename); } - } - else - { + } else { $object = new GenericObject($db); $value = $object->$loadmethod($table_element, $fk_element, $field); echo $value; } - } - else - { + } else { echo $langs->transnoentities('NotEnoughPermissions'); } } diff --git a/htdocs/core/ajax/objectonoff.php b/htdocs/core/ajax/objectonoff.php index dd39bce6d4e..6c9f97bfbb0 100644 --- a/htdocs/core/ajax/objectonoff.php +++ b/htdocs/core/ajax/objectonoff.php @@ -43,9 +43,9 @@ if (!empty($user->socid)) { $socid = $user->socid; } -if (empty($conf->global->MAIN_DIRECT_STATUS_UPDATE)) { +/*if (empty($conf->global->MAIN_DIRECT_STATUS_UPDATE)) { accessforbidden('Calling this file is allowed only when MAIN_DIRECT_STATUS_UPDATE is set'); -} +}*/ /* @@ -58,11 +58,9 @@ print ''."\n"; // Load original field value -if (! empty($output) && isset($amount) && isset($tva_tx)) +if (!empty($output) && isset($amount) && isset($tva_tx)) { - $return=array(); - $price=''; + $return = array(); + $price = ''; if (is_numeric($amount) && $amount != '') { if ($output == 'price_ttc') { - $price = price2num($amount * (1 + ($tva_tx/100)), 'MU'); + $price = price2num($amount * (1 + ($tva_tx / 100)), 'MU'); $return['price_ht'] = $amount; $return['price_ttc'] = (isset($price) && $price != '' ? price($price) : ''); - } - elseif ($output == 'price_ht') { - $price = price2num($amount / (1 + ($tva_tx/100)), 'MU'); + } elseif ($output == 'price_ht') { + $price = price2num($amount / (1 + ($tva_tx / 100)), 'MU'); $return['price_ht'] = (isset($price) && $price != '' ? price($price) : ''); $return['price_ttc'] = ($tva_tx == 0 ? $price : $amount); } diff --git a/htdocs/core/ajax/saveinplace.php b/htdocs/core/ajax/saveinplace.php index 0eb0545a9ea..8273683b8de 100644 --- a/htdocs/core/ajax/saveinplace.php +++ b/htdocs/core/ajax/saveinplace.php @@ -59,51 +59,60 @@ top_httphead(); if (!empty($field) && !empty($element) && !empty($table_element) && !empty($fk_element)) { $ext_element = GETPOST('ext_element', 'alpha', 2); - $field = substr($field, 8); // remove prefix val_ + $field = substr($field, 8); // remove prefix val_ $type = GETPOST('type', 'alpha', 2); - $value = ($type == 'ckeditor' ? GETPOST('value', '', 2) : GETPOST('value', 'alpha', 2)); - $loadmethod = GETPOST('loadmethod', 'alpha', 2); - $savemethod = GETPOST('savemethod', 'alpha', 2); + $value = ($type == 'ckeditor' ? GETPOST('value', '', 2) : GETPOST('value', 'alpha', 2)); + $loadmethod = GETPOST('loadmethod', 'alpha', 2); + $savemethod = GETPOST('savemethod', 'alpha', 2); $savemethodname = (!empty($savemethod) ? $savemethod : 'setValueFrom'); - $newelement = $element; + $newelement = $element; $view = ''; $format = 'text'; $return = array(); $error = 0; - if ($element != 'order_supplier' && $element != 'invoice_supplier' && preg_match('/^([^_]+)_([^_]+)/i', $element, $regs)) - { + if ($element != 'order_supplier' && $element != 'invoice_supplier' && preg_match('/^([^_]+)_([^_]+)/i', $element, $regs)) { $element = $regs[1]; $subelement = $regs[2]; } - if ($element == 'propal') $newelement = 'propale'; - elseif ($element == 'fichinter') $newelement = 'ficheinter'; - elseif ($element == 'product') $newelement = 'produit'; - elseif ($element == 'member') $newelement = 'adherent'; - elseif ($element == 'order_supplier') { + if ($element == 'propal') { + $newelement = 'propale'; + } elseif ($element == 'fichinter') { + $newelement = 'ficheinter'; + } elseif ($element == 'product') { + $newelement = 'produit'; + } elseif ($element == 'member') { + $newelement = 'adherent'; + } elseif ($element == 'order_supplier') { $newelement = 'fournisseur'; $subelement = 'commande'; - } - elseif ($element == 'invoice_supplier') { + } elseif ($element == 'invoice_supplier') { $newelement = 'fournisseur'; $subelement = 'facture'; + } else { + $newelement = $element; } - else $newelement = $element; $_POST['action'] = 'update'; // Hack so restrictarea will test permissions on write too $feature = $newelement; $feature2 = $subelement; $object_id = $fk_element; - if ($feature == 'expedition' || $feature == 'shipping') - { + if ($feature == 'expedition' || $feature == 'shipping') { $feature = 'commande'; $object_id = 0; } - if ($feature == 'shipping') $feature = 'commande'; - if ($feature == 'payment') { $feature = 'facture'; } - if ($feature == 'payment_supplier') { $feature = 'fournisseur'; $feature2 = 'facture'; } + if ($feature == 'shipping') { + $feature = 'commande'; + } + if ($feature == 'payment') { + $feature = 'facture'; + } + if ($feature == 'payment_supplier') { + $feature = 'fournisseur'; + $feature2 = 'facture'; + } //var_dump(GETPOST('action','aZ09')); //var_dump($newelement.'-'.$subelement."-".$feature."-".$object_id); $check_access = restrictedArea($user, $feature, $object_id, '', $feature2); @@ -130,15 +139,11 @@ if (!empty($field) && !empty($element) && !empty($table_element) && !empty($fk_e $error++; $return['error'] = $langs->trans('ErrorBadValue'); } - } - elseif ($type == 'datepicker') - { + } elseif ($type == 'datepicker') { $timestamp = GETPOST('timestamp', 'int', 2); $format = 'date'; $newvalue = ($timestamp / 1000); - } - elseif ($type == 'select') - { + } elseif ($type == 'select') { $loadmethodname = 'load_cache_'.$loadmethod; $loadcachename = 'cache_'.$loadmethod; $loadviewname = 'view_'.$loadmethod; @@ -157,15 +162,11 @@ if (!empty($field) && !empty($element) && !empty($table_element) && !empty($fk_e $loadview = $form->$loadviewname; $view = $loadview[$newvalue]; } - } - else - { + } else { $error++; $return['error'] = $form->error; } - } - else - { + } else { $module = $subelement = $ext_element; if (preg_match('/^([^_]+)_([^_]+)/i', $ext_element, $regs)) { @@ -187,9 +188,7 @@ if (!empty($field) && !empty($element) && !empty($table_element) && !empty($fk_e $loadview = $object->$loadviewname; $view = $loadview[$newvalue]; } - } - else - { + } else { $error++; $return['error'] = $object->error; } @@ -215,17 +214,13 @@ if (!empty($field) && !empty($element) && !empty($table_element) && !empty($fk_e $return['value'] = $value; $return['view'] = (!empty($view) ? $view : $value); - } - else - { + } else { $return['error'] = $object->error; } } echo json_encode($return); - } - else - { + } else { echo $langs->trans('NotEnoughPermissions'); } } diff --git a/htdocs/core/ajax/selectsearchbox.php b/htdocs/core/ajax/selectsearchbox.php index e43ea5d0fc5..21d6ae9aad1 100644 --- a/htdocs/core/ajax/selectsearchbox.php +++ b/htdocs/core/ajax/selectsearchbox.php @@ -56,7 +56,7 @@ $arrayresult = array(); if (!empty($conf->adherent->enabled) && empty($conf->global->MAIN_SEARCHFORM_ADHERENT_DISABLED) && $user->rights->adherent->lire) { - $arrayresult['searchintomember'] = array('position'=>8, 'shortcut'=>'M', 'img'=>'object_user', 'label'=>$langs->trans("SearchIntoMembers", $search_boxvalue), 'text'=>img_picto('', 'object_user').' '.$langs->trans("SearchIntoMembers", $search_boxvalue), 'url'=>DOL_URL_ROOT.'/adherents/list.php'.($search_boxvalue ? '?sall='.urlencode($search_boxvalue) : '')); + $arrayresult['searchintomember'] = array('position'=>8, 'shortcut'=>'M', 'img'=>'object_member', 'label'=>$langs->trans("SearchIntoMembers", $search_boxvalue), 'text'=>img_picto('', 'object_member').' '.$langs->trans("SearchIntoMembers", $search_boxvalue), 'url'=>DOL_URL_ROOT.'/adherents/list.php'.($search_boxvalue ? '?sall='.urlencode($search_boxvalue) : '')); } if (((!empty($conf->societe->enabled) && (empty($conf->global->SOCIETE_DISABLE_PROSPECTS) || empty($conf->global->SOCIETE_DISABLE_CUSTOMERS))) || !empty($conf->fournisseur->enabled)) && empty($conf->global->MAIN_SEARCHFORM_SOCIETE_DISABLED) && $user->rights->societe->lire) @@ -75,13 +75,18 @@ if (((!empty($conf->product->enabled) && $user->rights->produit->lire) || (!empt $arrayresult['searchintoproduct'] = array('position'=>30, 'shortcut'=>'P', 'img'=>'object_product', 'label'=>$langs->trans("SearchIntoProductsOrServices", $search_boxvalue), 'text'=>img_picto('', 'object_product').' '.$langs->trans("SearchIntoProductsOrServices", $search_boxvalue), 'url'=>DOL_URL_ROOT.'/product/list.php'.($search_boxvalue ? '?sall='.urlencode($search_boxvalue) : '')); } +if (!empty($conf->mrp->enabled) && $user->rights->mrp->read && empty($conf->global->MAIN_SEARCHFORM_MRP_DISABLED)) +{ + $arrayresult['searchintomo'] = array('position'=>35, 'shortcut'=>'', 'img'=>'object_mrp', 'label'=>$langs->trans("SearchIntoMO", $search_boxvalue), 'text'=>img_picto('', 'object_mrp').' '.$langs->trans("SearchIntoMO", $search_boxvalue), 'url'=>DOL_URL_ROOT.'/mrp/mo_list.php'.($search_boxvalue ? '?search_all='.urlencode($search_boxvalue) : '')); +} + if (!empty($conf->projet->enabled) && empty($conf->global->MAIN_SEARCHFORM_PROJECT_DISABLED) && $user->rights->projet->lire) { - $arrayresult['searchintoprojects'] = array('position'=>40, 'shortcut'=>'Q', 'img'=>'object_projectpub', 'label'=>$langs->trans("SearchIntoProjects", $search_boxvalue), 'text'=>img_picto('', 'object_projectpub').' '.$langs->trans("SearchIntoProjects", $search_boxvalue), 'url'=>DOL_URL_ROOT.'/projet/list.php'.($search_boxvalue ? '?search_all='.urlencode($search_boxvalue) : '')); + $arrayresult['searchintoprojects'] = array('position'=>40, 'shortcut'=>'Q', 'img'=>'object_projectpub', 'label'=>$langs->trans("SearchIntoProjects", $search_boxvalue), 'text'=>img_picto('', 'object_project').' '.$langs->trans("SearchIntoProjects", $search_boxvalue), 'url'=>DOL_URL_ROOT.'/projet/list.php'.($search_boxvalue ? '?search_all='.urlencode($search_boxvalue) : '')); } if (!empty($conf->projet->enabled) && empty($conf->global->MAIN_SEARCHFORM_TASK_DISABLED) && $user->rights->projet->lire) { - $arrayresult['searchintotasks'] = array('position'=>45, 'img'=>'object_task', 'label'=>$langs->trans("SearchIntoTasks", $search_boxvalue), 'text'=>img_picto('', 'object_task').' '.$langs->trans("SearchIntoTasks", $search_boxvalue), 'url'=>DOL_URL_ROOT.'/projet/tasks/list.php'.($search_boxvalue ? '?search_all='.urlencode($search_boxvalue) : '')); + $arrayresult['searchintotasks'] = array('position'=>45, 'img'=>'object_projecttask', 'label'=>$langs->trans("SearchIntoTasks", $search_boxvalue), 'text'=>img_picto('', 'object_projecttask').' '.$langs->trans("SearchIntoTasks", $search_boxvalue), 'url'=>DOL_URL_ROOT.'/projet/tasks/list.php'.($search_boxvalue ? '?search_all='.urlencode($search_boxvalue) : '')); } if (!empty($conf->propal->enabled) && empty($conf->global->MAIN_SEARCHFORM_CUSTOMER_PROPAL_DISABLED) && $user->rights->propal->lire) @@ -94,7 +99,7 @@ if (!empty($conf->commande->enabled) && empty($conf->global->MAIN_SEARCHFORM_CUS } if (!empty($conf->expedition->enabled) && empty($conf->global->MAIN_SEARCHFORM_CUSTOMER_SHIPMENT_DISABLED) && $user->rights->expedition->lire) { - $arrayresult['searchintoshipment'] = array('position'=>80, 'img'=>'object_sending', 'label'=>$langs->trans("SearchIntoCustomerShipments", $search_boxvalue), 'text'=>img_picto('', 'object_sending').' '.$langs->trans("SearchIntoCustomerShipments", $search_boxvalue), 'url'=>DOL_URL_ROOT.'/expedition/list.php'.($search_boxvalue ? '?sall='.urlencode($search_boxvalue) : '')); + $arrayresult['searchintoshipment'] = array('position'=>80, 'img'=>'object_shipment', 'label'=>$langs->trans("SearchIntoCustomerShipments", $search_boxvalue), 'text'=>img_picto('', 'object_shipment').' '.$langs->trans("SearchIntoCustomerShipments", $search_boxvalue), 'url'=>DOL_URL_ROOT.'/expedition/list.php'.($search_boxvalue ? '?sall='.urlencode($search_boxvalue) : '')); } if (!empty($conf->facture->enabled) && empty($conf->global->MAIN_SEARCHFORM_CUSTOMER_INVOICE_DISABLED) && $user->rights->facture->lire) { @@ -103,15 +108,15 @@ if (!empty($conf->facture->enabled) && empty($conf->global->MAIN_SEARCHFORM_CUST if (!empty($conf->supplier_proposal->enabled) && empty($conf->global->MAIN_SEARCHFORM_SUPPLIER_PROPAL_DISABLED) && $user->rights->supplier_proposal->lire) { - $arrayresult['searchintosupplierpropal'] = array('position'=>100, 'img'=>'object_propal', 'label'=>$langs->trans("SearchIntoSupplierProposals", $search_boxvalue), 'text'=>img_picto('', 'object_propal').' '.$langs->trans("SearchIntoSupplierProposals", $search_boxvalue), 'url'=>DOL_URL_ROOT.'/supplier_proposal/list.php'.($search_boxvalue ? '?sall='.urlencode($search_boxvalue) : '')); + $arrayresult['searchintosupplierpropal'] = array('position'=>100, 'img'=>'object_propal', 'label'=>$langs->trans("SearchIntoSupplierProposals", $search_boxvalue), 'text'=>img_picto('', 'object_supplier_proposal').' '.$langs->trans("SearchIntoSupplierProposals", $search_boxvalue), 'url'=>DOL_URL_ROOT.'/supplier_proposal/list.php'.($search_boxvalue ? '?sall='.urlencode($search_boxvalue) : '')); } -if (!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_SEARCHFORM_SUPPLIER_ORDER_DISABLED) && $user->rights->fournisseur->commande->lire) +if ((! empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_SEARCHFORM_SUPPLIER_ORDER_DISABLED) || ! empty($conf->supplier_order->enabled)) && $user->rights->fournisseur->commande->lire) { - $arrayresult['searchintosupplierorder'] = array('position'=>110, 'img'=>'object_order', 'label'=>$langs->trans("SearchIntoSupplierOrders", $search_boxvalue), 'text'=>img_picto('', 'object_order').' '.$langs->trans("SearchIntoSupplierOrders", $search_boxvalue), 'url'=>DOL_URL_ROOT.'/fourn/commande/list.php'.($search_boxvalue ? '?search_all='.urlencode($search_boxvalue) : '')); + $arrayresult['searchintosupplierorder'] = array('position'=>110, 'img'=>'object_order', 'label'=>$langs->trans("SearchIntoSupplierOrders", $search_boxvalue), 'text'=>img_picto('', 'object_supplier_order').' '.$langs->trans("SearchIntoSupplierOrders", $search_boxvalue), 'url'=>DOL_URL_ROOT.'/fourn/commande/list.php'.($search_boxvalue ? '?search_all='.urlencode($search_boxvalue) : '')); } -if (!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_SEARCHFORM_SUPPLIER_INVOICE_DISABLED) && $user->rights->fournisseur->facture->lire) +if ((! empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_SEARCHFORM_SUPPLIER_INVOICE_DISABLED) || ! empty($conf->supplier_invoice->enabled)) && $user->rights->fournisseur->facture->lire) { - $arrayresult['searchintosupplierinvoice'] = array('position'=>120, 'img'=>'object_bill', 'label'=>$langs->trans("SearchIntoSupplierInvoices", $search_boxvalue), 'text'=>img_picto('', 'object_bill').' '.$langs->trans("SearchIntoSupplierInvoices", $search_boxvalue), 'url'=>DOL_URL_ROOT.'/fourn/facture/list.php'.($search_boxvalue ? '?sall='.urlencode($search_boxvalue) : '')); + $arrayresult['searchintosupplierinvoice'] = array('position'=>120, 'img'=>'object_bill', 'label'=>$langs->trans("SearchIntoSupplierInvoices", $search_boxvalue), 'text'=>img_picto('', 'object_supplier_invoice').' '.$langs->trans("SearchIntoSupplierInvoices", $search_boxvalue), 'url'=>DOL_URL_ROOT.'/fourn/facture/list.php'.($search_boxvalue ? '?sall='.urlencode($search_boxvalue) : '')); } if (!empty($conf->contrat->enabled) && empty($conf->global->MAIN_SEARCHFORM_CONTRACT_DISABLED) && $user->rights->contrat->lire) @@ -122,6 +127,10 @@ if (!empty($conf->ficheinter->enabled) && empty($conf->global->MAIN_SEARCHFORM_F { $arrayresult['searchintointervention'] = array('position'=>140, 'img'=>'object_intervention', 'label'=>$langs->trans("SearchIntoInterventions", $search_boxvalue), 'text'=>img_picto('', 'object_intervention').' '.$langs->trans("SearchIntoInterventions", $search_boxvalue), 'url'=>DOL_URL_ROOT.'/fichinter/list.php'.($search_boxvalue ? '?sall='.urlencode($search_boxvalue) : '')); } +if (!empty($conf->ticket->enabled) && empty($conf->global->MAIN_SEARCHFORM_TICKET_DISABLED) && $user->rights->ticket->read) +{ + $arrayresult['searchintotickets'] = array('position'=>145, 'img'=>'object_ticket', 'label'=>$langs->trans("SearchIntoTickets", $search_boxvalue), 'text'=>img_picto('', 'object_ticket').' '.$langs->trans("SearchIntoTickets", $search_boxvalue), 'url'=>DOL_URL_ROOT.'/ticket/list.php?mainmenu=ticket'.($search_boxvalue ? '&sall='.urlencode($search_boxvalue) : '')); +} // HR if (!empty($conf->user->enabled) && empty($conf->global->MAIN_SEARCHFORM_USER_DISABLED) && $user->rights->user->user->lire) @@ -136,10 +145,6 @@ if (!empty($conf->holiday->enabled) && empty($conf->global->MAIN_SEARCHFORM_HOLI { $arrayresult['searchintoleaves'] = array('position'=>220, 'img'=>'object_holiday', 'label'=>$langs->trans("SearchIntoLeaves", $search_boxvalue), 'text'=>img_picto('', 'object_holiday').' '.$langs->trans("SearchIntoLeaves", $search_boxvalue), 'url'=>DOL_URL_ROOT.'/holiday/list.php?mainmenu=hrm'.($search_boxvalue ? '&sall='.urlencode($search_boxvalue) : '')); } -if (!empty($conf->ticket->enabled) && empty($conf->global->MAIN_SEARCHFORM_TICKET_DISABLED) && $user->rights->ticket->read) -{ - $arrayresult['searchintotickets'] = array('position'=>220, 'img'=>'object_ticket', 'label'=>$langs->trans("SearchIntoTickets", $search_boxvalue), 'text'=>img_picto('', 'object_ticket').' '.$langs->trans("SearchIntoTickets", $search_boxvalue), 'url'=>DOL_URL_ROOT.'/ticket/list.php?mainmenu=ticket'.($search_boxvalue ? '&sall='.urlencode($search_boxvalue) : '')); -} /* Do we really need this. We already have a select for users, and we should be able to filter into user list on employee flag @@ -156,8 +161,7 @@ $reshook = $hookmanager->executeHooks('addSearchEntry', $parameters); if (empty($reshook)) { $arrayresult = array_merge($arrayresult, $hookmanager->resArray); -} -else $arrayresult = $hookmanager->resArray; +} else $arrayresult = $hookmanager->resArray; // This allow to keep a search entry to the top if (!empty($conf->global->DEFAULT_SEARCH_INTO_MODULE)) { diff --git a/htdocs/core/ajax/vatrates.php b/htdocs/core/ajax/vatrates.php index 9edcad9f4fa..b0ab6ed2a7e 100644 --- a/htdocs/core/ajax/vatrates.php +++ b/htdocs/core/ajax/vatrates.php @@ -52,9 +52,7 @@ if (!empty($id) && !empty($action) && !empty($htmlname)) { $seller = $mysoc; $buyer = $soc; - } - else - { + } else { $buyer = $mysoc; $seller = $soc; } diff --git a/htdocs/core/ajax/ziptown.php b/htdocs/core/ajax/ziptown.php index 850d25bae47..568fd5b2f4c 100644 --- a/htdocs/core/ajax/ziptown.php +++ b/htdocs/core/ajax/ziptown.php @@ -75,8 +75,7 @@ if (!empty($_GET['zipcode']) || !empty($_GET['town'])) if ($town) $sql .= " AND z.town LIKE '%".$db->escape($town)."%'"; $sql .= " ORDER BY z.zip, z.town"; $sql .= $db->plimit(100); // Avoid pb with bad criteria - } - else // Use table of third parties + } else // Use table of third parties { $sql = "SELECT DISTINCT s.zip, s.town, s.fk_departement as fk_county, s.fk_pays as fk_country"; $sql .= ", c.code as country_code, c.label as country"; @@ -128,9 +127,7 @@ if (!empty($_GET['zipcode']) || !empty($_GET['town'])) } echo json_encode($return_arr); -} -else -{ +} else { } $db->close(); diff --git a/htdocs/core/antispamimage.php b/htdocs/core/antispamimage.php index 68e585c3ea0..7d6512a64a9 100644 --- a/htdocs/core/antispamimage.php +++ b/htdocs/core/antispamimage.php @@ -43,7 +43,7 @@ $number = strlen($letters); $string = ''; for ($i = 0; $i < $length; $i++) { - $string .= $letters{mt_rand(0, $number - 1)}; + $string .= $letters[mt_rand(0, $number - 1)]; } //print $string; diff --git a/htdocs/core/boxes/box_accountancy_last_manual_entries.php b/htdocs/core/boxes/box_accountancy_last_manual_entries.php index f1ee00c6c59..6198c90e663 100644 --- a/htdocs/core/boxes/box_accountancy_last_manual_entries.php +++ b/htdocs/core/boxes/box_accountancy_last_manual_entries.php @@ -140,7 +140,10 @@ class box_accountancy_last_manual_entries extends ModeleBoxes $line++; } - if ($num == 0) $this->info_box_contents[$line][0] = array('td' => 'class="center"', 'text'=>$langs->trans("NoRecordedManualEntries")); + if ($num == 0) $this->info_box_contents[$line][0] = array( + 'td' => 'class="center opacitymedium"', + 'text'=>$langs->trans("NoRecordedManualEntries") + ); $this->db->free($result); } else { diff --git a/htdocs/core/boxes/box_actions.php b/htdocs/core/boxes/box_actions.php index 448e7d915c9..a951402fd7b 100644 --- a/htdocs/core/boxes/box_actions.php +++ b/htdocs/core/boxes/box_actions.php @@ -244,9 +244,7 @@ class box_actions extends ModeleBoxes $out .= '}, '.($conf->global->SHOW_DIALOG_HOMEPAGE * 1000).');'; } $out .= ''; - } - else - { + } else { $out .= ''; diff --git a/htdocs/core/boxes/box_activity.php b/htdocs/core/boxes/box_activity.php index 8fc7b8766e4..a59edbbf337 100644 --- a/htdocs/core/boxes/box_activity.php +++ b/htdocs/core/boxes/box_activity.php @@ -141,9 +141,7 @@ class box_activity extends ModeleBoxes } else { dol_print_error($this->db); } - } - else - { + } else { $data = dol_readcachefile($cachedir, $filename); } diff --git a/htdocs/core/boxes/box_birthdays.php b/htdocs/core/boxes/box_birthdays.php index 7c8c110db88..e6d032d41f8 100644 --- a/htdocs/core/boxes/box_birthdays.php +++ b/htdocs/core/boxes/box_birthdays.php @@ -89,7 +89,7 @@ class box_birthdays extends ModeleBoxes $sql = "SELECT u.rowid, u.firstname, u.lastname, u.birth"; $sql .= " FROM ".MAIN_DB_PREFIX."user as u"; $sql .= " WHERE u.entity IN (".getEntity('user').")"; - $sql .= dolSqlDateFilter('u.birth', 0, $tmparray['mon'], $tmparray['year']); + $sql .= dolSqlDateFilter('u.birth', 0, $tmparray['mon'], 0); $sql .= " ORDER BY u.birth ASC"; $sql .= $this->db->plimit($max, 0); @@ -132,16 +132,14 @@ class box_birthdays extends ModeleBoxes if ($num == 0) $this->info_box_contents[$line][0] = array('td' => 'class="center opacitymedium"', 'text'=>$langs->trans("None")); $this->db->free($result); - } - else { + } else { $this->info_box_contents[0][0] = array( 'td' => '', 'maxlength'=>500, 'text' => ($this->db->error().' sql='.$sql) ); } - } - else { + } else { $this->info_box_contents[0][0] = array( 'td' => 'class="nohover opacitymedium left"', 'text' => $langs->trans("ReadPermissionNotAllowed") diff --git a/htdocs/core/boxes/box_birthdays_members.php b/htdocs/core/boxes/box_birthdays_members.php index 96fc97f2e37..e49d21ba387 100644 --- a/htdocs/core/boxes/box_birthdays_members.php +++ b/htdocs/core/boxes/box_birthdays_members.php @@ -90,7 +90,7 @@ class box_birthdays_members extends ModeleBoxes $sql .= " FROM ".MAIN_DB_PREFIX."adherent as u"; $sql .= " WHERE u.entity IN (".getEntity('adherent').")"; $sql .= " AND u.statut = 1"; - $sql .= dolSqlDateFilter('u.birth', 0, $tmparray['mon'], $tmparray['year']); + $sql .= dolSqlDateFilter('u.birth', 0, $tmparray['mon'], 0); $sql .= " ORDER BY u.birth ASC"; $sql .= $this->db->plimit($max, 0); @@ -133,16 +133,14 @@ class box_birthdays_members extends ModeleBoxes if ($num == 0) $this->info_box_contents[$line][0] = array('td' => 'class="center opacitymedium"', 'text'=>$langs->trans("None")); $this->db->free($result); - } - else { + } else { $this->info_box_contents[0][0] = array( 'td' => '', 'maxlength'=>500, 'text' => ($this->db->error().' sql='.$sql) ); } - } - else { + } else { $this->info_box_contents[0][0] = array( 'td' => 'class="nohover opacitymedium left"', 'text' => $langs->trans("ReadPermissionNotAllowed") diff --git a/htdocs/core/boxes/box_boms.php b/htdocs/core/boxes/box_boms.php index 57c5ce2e2e2..c75c4c24e8f 100644 --- a/htdocs/core/boxes/box_boms.php +++ b/htdocs/core/boxes/box_boms.php @@ -153,7 +153,10 @@ class box_boms extends ModeleBoxes $line++; } - if ($num == 0) $this->info_box_contents[$line][0] = array('td' => 'class="center"', 'text'=>$langs->trans("NoRecordedOrders")); + if ($num == 0) $this->info_box_contents[$line][0] = array( + 'td' => 'class="center opacitymedium"', + 'text'=>$langs->trans("NoRecordedOrders") + ); $this->db->free($result); } else { diff --git a/htdocs/core/boxes/box_bookmarks.php b/htdocs/core/boxes/box_bookmarks.php index f5bbf7021e9..c81e226decb 100644 --- a/htdocs/core/boxes/box_bookmarks.php +++ b/htdocs/core/boxes/box_bookmarks.php @@ -79,9 +79,7 @@ class box_bookmarks extends ModeleBoxes if ($user->rights->bookmark->creer) { $this->info_box_head['subpicto'] = 'bookmark'; $this->info_box_head['subtext'] = $langs->trans("BookmarksManagement"); - } - else - { + } else { $this->info_box_head['subpicto'] = 'bookmark'; $this->info_box_head['subtext'] = $langs->trans("ListOfBookmark"); } diff --git a/htdocs/core/boxes/box_clients.php b/htdocs/core/boxes/box_clients.php index d82a4aee71e..00cad787e0b 100644 --- a/htdocs/core/boxes/box_clients.php +++ b/htdocs/core/boxes/box_clients.php @@ -148,19 +148,20 @@ class box_clients extends ModeleBoxes $line++; } - if ($num == 0) $this->info_box_contents[$line][0] = array('td' => 'class="center"', 'text'=>$langs->trans("NoRecordedCustomers")); + if ($num == 0) $this->info_box_contents[$line][0] = array( + 'td' => 'class="center opacitymedium"', + 'text'=>$langs->trans("NoRecordedCustomers") + ); $this->db->free($result); - } - else { + } else { $this->info_box_contents[0][0] = array( 'td' => '', 'maxlength'=>500, 'text' => ($this->db->error().' sql='.$sql) ); } - } - else { + } else { $this->info_box_contents[0][0] = array( 'td' => 'class="nohover opacitymedium left"', 'text' => $langs->trans("ReadPermissionNotAllowed") diff --git a/htdocs/core/boxes/box_commandes.php b/htdocs/core/boxes/box_commandes.php index 37a25c8084d..7ec5071b6e3 100644 --- a/htdocs/core/boxes/box_commandes.php +++ b/htdocs/core/boxes/box_commandes.php @@ -174,7 +174,10 @@ class box_commandes extends ModeleBoxes $line++; } - if ($num == 0) $this->info_box_contents[$line][0] = array('td' => 'class="center"', 'text'=>$langs->trans("NoRecordedOrders")); + if ($num == 0) $this->info_box_contents[$line][0] = array( + 'td' => 'class="center opacitymedium"', + 'text'=>$langs->trans("NoRecordedOrders") + ); $this->db->free($result); } else { diff --git a/htdocs/core/boxes/box_external_rss.php b/htdocs/core/boxes/box_external_rss.php index 93ac43d6c22..48268b28914 100644 --- a/htdocs/core/boxes/box_external_rss.php +++ b/htdocs/core/boxes/box_external_rss.php @@ -103,9 +103,7 @@ class box_external_rss extends ModeleBoxes // Show warning $title .= " ".img_error($langs->trans("FailedToRefreshDataInfoNotUpToDate", ($rssparser->getLastFetchDate() ?dol_print_date($rssparser->getLastFetchDate(), "dayhourtext") : $langs->trans("Unknown")))); $this->info_box_head = array('text' => $title, 'limit' => 0); - } - else - { + } else { $this->info_box_head = array( 'text' => $title, 'sublink' => $link, diff --git a/htdocs/core/boxes/box_factures_imp.php b/htdocs/core/boxes/box_factures_imp.php index 0a44105a853..f5fe3e76dde 100644 --- a/htdocs/core/boxes/box_factures_imp.php +++ b/htdocs/core/boxes/box_factures_imp.php @@ -180,20 +180,20 @@ class box_factures_imp extends ModeleBoxes $line++; } - if ($num == 0) $this->info_box_contents[$line][0] = array('td' => 'class="center"', 'text'=>$langs->trans("NoUnpaidCustomerBills")); + if ($num == 0) $this->info_box_contents[$line][0] = array( + 'td' => 'class="center opacitymedium"', + 'text'=>$langs->trans("NoUnpaidCustomerBills") + ); $this->db->free($result); - } - else - { + } else { $this->info_box_contents[0][0] = array( 'td' => '', 'maxlength'=>500, 'text' => ($this->db->error().' sql='.$sql), ); } - } - else { + } else { $this->info_box_contents[0][0] = array( 'td' => 'class="nohover opacitymedium left"', 'text' => $langs->trans("ReadPermissionNotAllowed") diff --git a/htdocs/core/boxes/box_ficheinter.php b/htdocs/core/boxes/box_ficheinter.php index e289c83d541..2c104bea729 100644 --- a/htdocs/core/boxes/box_ficheinter.php +++ b/htdocs/core/boxes/box_ficheinter.php @@ -145,22 +145,21 @@ class box_ficheinter extends ModeleBoxes $i++; } - if ($num == 0) $this->info_box_contents[$i][] = array('td' => 'class="center"', 'text'=>$langs->trans("NoRecordedInterventions")); + if ($num == 0) $this->info_box_contents[$i][0] = array( + 'td' => 'class="center opacitymedium"', + 'text'=>$langs->trans("NoRecordedInterventions") + ); $this->db->free($resql); - } - else - { - $this->info_box_contents[0][] = array( + } else { + $this->info_box_contents[0][0] = array( 'td' => '', 'maxlength'=>500, 'text' => ($this->db->error().' sql='.$sql), ); } - } - else - { - $this->info_box_contents[0][] = array( + } else { + $this->info_box_contents[0][0] = array( 'td' => 'class="nohover opacitymedium left"', 'text' => $langs->trans("ReadPermissionNotAllowed") ); diff --git a/htdocs/core/boxes/box_fournisseurs.php b/htdocs/core/boxes/box_fournisseurs.php index 2f55a379362..44dd891bfb8 100644 --- a/htdocs/core/boxes/box_fournisseurs.php +++ b/htdocs/core/boxes/box_fournisseurs.php @@ -136,7 +136,7 @@ class box_fournisseurs extends ModeleBoxes } if ($num == 0) $this->info_box_contents[$line][0] = array( - 'td' => 'class="center"', + 'td' => 'class="center opacitymedium"', 'text'=>$langs->trans("NoRecordedSuppliers"), ); diff --git a/htdocs/core/boxes/box_goodcustomers.php b/htdocs/core/boxes/box_goodcustomers.php index 79eb6f9ab8e..66497c2e94f 100644 --- a/htdocs/core/boxes/box_goodcustomers.php +++ b/htdocs/core/boxes/box_goodcustomers.php @@ -142,19 +142,20 @@ class box_goodcustomers extends ModeleBoxes $line++; } - if ($num == 0) $this->info_box_contents[$line][0] = array('td' => 'class="center"', 'text'=>$langs->trans("NoRecordedCustomers")); + if ($num == 0) $this->info_box_contents[$line][0] = array( + 'td' => 'class="center opacitymedium"', + 'text'=>$langs->trans("NoRecordedCustomers") + ); $this->db->free($result); - } - else { + } else { $this->info_box_contents[0][0] = array( 'td' => '', 'maxlength'=>500, 'text' => ($this->db->error().' sql='.$sql), ); } - } - else { + } else { $this->info_box_contents[0][0] = array( 'td' => 'class="nohover opacitymedium left"', 'text' => $langs->trans("ReadPermissionNotAllowed") diff --git a/htdocs/core/boxes/box_graph_invoices_permonth.php b/htdocs/core/boxes/box_graph_invoices_permonth.php index e78b6e235b1..9d5aeda7b36 100644 --- a/htdocs/core/boxes/box_graph_invoices_permonth.php +++ b/htdocs/core/boxes/box_graph_invoices_permonth.php @@ -111,9 +111,7 @@ class box_graph_invoices_permonth extends ModeleBoxes $endyear = GETPOST($param_year, 'int'); $shownb = GETPOST($param_shownb, 'alpha'); $showtot = GETPOST($param_showtot, 'alpha'); - } - else - { + } else { $tmparray = json_decode($_COOKIE['DOLUSERCOOKIE_box_'.$this->boxcode], true); $endyear = $tmparray['year']; $shownb = $tmparray['shownb']; @@ -153,9 +151,7 @@ class box_graph_invoices_permonth extends ModeleBoxes if ($startmonth != 1) { $legend[] = sprintf("%d/%d", $i - 2001, $i - 2000); - } - else - { + } else { $legend[] = $i; } $i++; @@ -200,9 +196,7 @@ class box_graph_invoices_permonth extends ModeleBoxes if ($startmonth != 1) { $legend[] = sprintf("%d/%d", $i - 2001, $i - 2000); - } - else - { + } else { $legend[] = $i; } $i++; @@ -270,13 +264,10 @@ class box_graph_invoices_permonth extends ModeleBoxes $stringtoshow .= ''; } $this->info_box_contents[0][0] = array('tr'=>'class="oddeven nohover"', 'td' => 'class="nohover center"', 'textnoformat'=>$stringtoshow); - } - else - { + } else { $this->info_box_contents[0][0] = array('tr'=>'class="oddeven nohover"', 'td' => 'class="nohover left"', 'maxlength'=>500, 'text' => $mesg); } - } - else { + } else { $this->info_box_contents[0][0] = array( 'td' => 'class="nohover opacitymedium left"', 'text' => $langs->trans("ReadPermissionNotAllowed") diff --git a/htdocs/core/boxes/box_graph_invoices_supplier_permonth.php b/htdocs/core/boxes/box_graph_invoices_supplier_permonth.php index 52dcdc995cd..b9fde24b759 100644 --- a/htdocs/core/boxes/box_graph_invoices_supplier_permonth.php +++ b/htdocs/core/boxes/box_graph_invoices_supplier_permonth.php @@ -108,9 +108,7 @@ class box_graph_invoices_supplier_permonth extends ModeleBoxes $endyear = GETPOST($param_year, 'int'); $shownb = GETPOST($param_shownb, 'alpha'); $showtot = GETPOST($param_showtot, 'alpha'); - } - else - { + } else { $tmparray = json_decode($_COOKIE['DOLUSERCOOKIE_box_'.$this->boxcode], true); $endyear = $tmparray['year']; $shownb = $tmparray['shownb']; @@ -151,9 +149,7 @@ class box_graph_invoices_supplier_permonth extends ModeleBoxes if ($startmonth != 1) { $legend[] = sprintf("%d/%d", $i - 2001, $i - 2000); - } - else - { + } else { $legend[] = $i; } $i++; @@ -197,9 +193,7 @@ class box_graph_invoices_supplier_permonth extends ModeleBoxes if ($startmonth != 1) { $legend[] = sprintf("%d/%d", $i - 2001, $i - 2000); - } - else - { + } else { $legend[] = $i; } $i++; @@ -267,9 +261,7 @@ class box_graph_invoices_supplier_permonth extends ModeleBoxes $stringtoshow .= ''; } $this->info_box_contents[0][0] = array('tr'=>'class="oddeven nohover"', 'td' => 'class="nohover center"', 'textnoformat'=>$stringtoshow); - } - else - { + } else { $this->info_box_contents[0][0] = array( 'tr'=>'class="oddeven nohover"', 'td' => 'class="nohover left"', @@ -277,8 +269,7 @@ class box_graph_invoices_supplier_permonth extends ModeleBoxes 'text' => $mesg, ); } - } - else { + } else { $this->info_box_contents[0][0] = array( 'td' => 'class="nohover opacitymedium left"', 'text' => $langs->trans("ReadPermissionNotAllowed") diff --git a/htdocs/core/boxes/box_graph_orders_permonth.php b/htdocs/core/boxes/box_graph_orders_permonth.php index 45459805f00..2ff1a579798 100644 --- a/htdocs/core/boxes/box_graph_orders_permonth.php +++ b/htdocs/core/boxes/box_graph_orders_permonth.php @@ -111,9 +111,7 @@ class box_graph_orders_permonth extends ModeleBoxes $endyear = GETPOST($param_year, 'int'); $shownb = GETPOST($param_shownb, 'alpha'); $showtot = GETPOST($param_showtot, 'alpha'); - } - else - { + } else { $tmparray = json_decode($_COOKIE['DOLUSERCOOKIE_box_'.$this->boxcode], true); $endyear = $tmparray['year']; $shownb = $tmparray['shownb']; @@ -152,9 +150,7 @@ class box_graph_orders_permonth extends ModeleBoxes if ($startmonth != 1) { $legend[] = sprintf("%d/%d", $i - 2001, $i - 2000); - } - else - { + } else { $legend[] = $i; } $i++; @@ -196,9 +192,7 @@ class box_graph_orders_permonth extends ModeleBoxes if ($startmonth != 1) { $legend[] = sprintf("%d/%d", $i - 2001, $i - 2000); - } - else - { + } else { $legend[] = $i; } $i++; @@ -270,9 +264,7 @@ class box_graph_orders_permonth extends ModeleBoxes 'td' => 'class="nohover center"', 'textnoformat'=>$stringtoshow, ); - } - else - { + } else { $this->info_box_contents[0][0] = array( 'tr'=>'class="oddeven nohover"', 'td' => 'class="nohover left"', @@ -280,8 +272,7 @@ class box_graph_orders_permonth extends ModeleBoxes 'text' => $mesg, ); } - } - else { + } else { $this->info_box_contents[0][0] = array( 'td' => 'class="nohover opacitymedium left"', 'text' => $langs->trans("ReadPermissionNotAllowed") diff --git a/htdocs/core/boxes/box_graph_orders_supplier_permonth.php b/htdocs/core/boxes/box_graph_orders_supplier_permonth.php index 99426be8cb1..fb40ee1f68f 100644 --- a/htdocs/core/boxes/box_graph_orders_supplier_permonth.php +++ b/htdocs/core/boxes/box_graph_orders_supplier_permonth.php @@ -110,9 +110,7 @@ class box_graph_orders_supplier_permonth extends ModeleBoxes $endyear = GETPOST($param_year, 'int'); $shownb = GETPOST($param_shownb, 'alpha'); $showtot = GETPOST($param_showtot, 'alpha'); - } - else - { + } else { $tmparray = json_decode($_COOKIE['DOLUSERCOOKIE_box_'.$this->boxcode], true); $endyear = $tmparray['year']; $shownb = $tmparray['shownb']; @@ -151,9 +149,7 @@ class box_graph_orders_supplier_permonth extends ModeleBoxes if ($startmonth != 1) { $legend[] = sprintf("%d/%d", $i - 2001, $i - 2000); - } - else - { + } else { $legend[] = $i; } $i++; @@ -195,9 +191,7 @@ class box_graph_orders_supplier_permonth extends ModeleBoxes if ($startmonth != 1) { $legend[] = sprintf("%d/%d", $i - 2001, $i - 2000); - } - else - { + } else { $legend[] = $i; } $i++; @@ -269,9 +263,7 @@ class box_graph_orders_supplier_permonth extends ModeleBoxes 'td' => 'class="nohover center"', 'textnoformat'=>$stringtoshow, ); - } - else - { + } else { $this->info_box_contents[0][0] = array( 'tr'=>'class="oddeven nohover"', 'td' => 'class="nohover left"', @@ -279,8 +271,7 @@ class box_graph_orders_supplier_permonth extends ModeleBoxes 'text' => $mesg, ); } - } - else { + } else { $this->info_box_contents[0][0] = array( 'td' => 'class="nohover opacitymedium left"', 'text' => $langs->trans("ReadPermissionNotAllowed") diff --git a/htdocs/core/boxes/box_graph_product_distribution.php b/htdocs/core/boxes/box_graph_product_distribution.php index e8337d74303..fbf1874a132 100644 --- a/htdocs/core/boxes/box_graph_product_distribution.php +++ b/htdocs/core/boxes/box_graph_product_distribution.php @@ -94,9 +94,7 @@ class box_graph_product_distribution extends ModeleBoxes $showinvoicenb = GETPOST($param_showinvoicenb, 'alpha'); $showpropalnb = GETPOST($param_showpropalnb, 'alpha'); $showordernb = GETPOST($param_showordernb, 'alpha'); - } - else - { + } else { $tmparray = json_decode($_COOKIE['DOLUSERCOOKIE_box_'.$this->boxcode], true); $year = $tmparray['year']; $showinvoicenb = $tmparray['showinvoicenb']; @@ -393,9 +391,7 @@ class box_graph_product_distribution extends ModeleBoxes 'td' => 'class="nohover center"', 'textnoformat'=>$stringtoshow, ); - } - else - { + } else { $this->info_box_contents[0][0] = array( 'td' => 'class="nohover opacitymedium left"', 'maxlength'=>500, diff --git a/htdocs/core/boxes/box_graph_propales_permonth.php b/htdocs/core/boxes/box_graph_propales_permonth.php index 42b95e516b5..4231638948a 100644 --- a/htdocs/core/boxes/box_graph_propales_permonth.php +++ b/htdocs/core/boxes/box_graph_propales_permonth.php @@ -111,9 +111,7 @@ class box_graph_propales_permonth extends ModeleBoxes $endyear = GETPOST($param_year, 'int'); $shownb = GETPOST($param_shownb, 'alpha'); $showtot = GETPOST($param_showtot, 'alpha'); - } - else - { + } else { $tmparray = json_decode($_COOKIE['DOLUSERCOOKIE_box_'.$this->boxcode], true); $endyear = $tmparray['year']; $shownb = $tmparray['shownb']; @@ -150,9 +148,7 @@ class box_graph_propales_permonth extends ModeleBoxes if ($startmonth != 1) { $legend[] = sprintf("%d/%d", $i - 2001, $i - 2000); - } - else - { + } else { $legend[] = $i; } $i++; @@ -196,9 +192,7 @@ class box_graph_propales_permonth extends ModeleBoxes if ($startmonth != 1) { $legend[] = sprintf("%d/%d", $i - 2001, $i - 2000); - } - else - { + } else { $legend[] = $i; } $i++; @@ -270,9 +264,7 @@ class box_graph_propales_permonth extends ModeleBoxes 'td' => 'class="nohover center"', 'textnoformat'=>$stringtoshow, ); - } - else - { + } else { $this->info_box_contents[0][0] = array( 'tr'=>'class="oddeven nohover"', 'td' => 'class="nohover left"', @@ -280,8 +272,7 @@ class box_graph_propales_permonth extends ModeleBoxes 'text' => $mesg, ); } - } - else { + } else { $this->info_box_contents[0][0] = array( 'td' => 'class="nohover opacitymedium left"', 'text' => $langs->trans("ReadPermissionNotAllowed") diff --git a/htdocs/core/boxes/box_mos.php b/htdocs/core/boxes/box_mos.php index 9b863aa2d5a..ec21d5d00cf 100644 --- a/htdocs/core/boxes/box_mos.php +++ b/htdocs/core/boxes/box_mos.php @@ -149,7 +149,10 @@ class box_mos extends ModeleBoxes $line++; } - if ($num == 0) $this->info_box_contents[$line][0] = array('td' => 'class="center"', 'text'=>$langs->trans("NoRecordedOrders")); + if ($num == 0) $this->info_box_contents[$line][0] = array( + 'td' => 'class="center opacitymedium"', + 'text'=>$langs->trans("NoRecordedOrders") + ); $this->db->free($result); } else { diff --git a/htdocs/core/boxes/box_produits.php b/htdocs/core/boxes/box_produits.php index 374e9ab1bae..8dffe4adf20 100644 --- a/htdocs/core/boxes/box_produits.php +++ b/htdocs/core/boxes/box_produits.php @@ -149,8 +149,7 @@ class box_produits extends ModeleBoxes if (empty($conf->dynamicprices->enabled) || empty($objp->fk_price_expression)) { $price_base_type = $langs->trans($objp->price_base_type); $price = ($objp->price_base_type == 'HT') ?price($objp->price) : $price = price($objp->price_ttc); - } - else //Parse the dynamic price + } else //Parse the dynamic price { $productstatic->fetch($objp->rowid, '', '', 1); $priceparser = new PriceParser($this->db); @@ -159,9 +158,7 @@ class box_produits extends ModeleBoxes if ($objp->price_base_type == 'HT') { $price_base_type = $langs->trans("HT"); - } - else - { + } else { $price_result = $price_result * (1 + ($productstatic->tva_tx / 100)); $price_base_type = $langs->trans("TTC"); } diff --git a/htdocs/core/boxes/box_produits_alerte_stock.php b/htdocs/core/boxes/box_produits_alerte_stock.php index f4a433c013d..5b17ef22ddf 100644 --- a/htdocs/core/boxes/box_produits_alerte_stock.php +++ b/htdocs/core/boxes/box_produits_alerte_stock.php @@ -88,7 +88,9 @@ class box_produits_alerte_stock extends ModeleBoxes if (($user->rights->produit->lire || $user->rights->service->lire) && $user->rights->stock->lire) { - $sql = "SELECT p.rowid, p.label, p.price, p.ref, p.price_base_type, p.price_ttc, p.fk_product_type, p.tms, p.tosell, p.tobuy, p.seuil_stock_alerte, p.entity,"; + $sql = "SELECT p.rowid, p.label, p.price, p.ref, p.price_base_type, p.price_ttc, p.fk_product_type, p.tms, p.tosell, p.tobuy, p.barcode, p.seuil_stock_alerte, p.entity,"; + $sql .= " p.accountancy_code_sell, p.accountancy_code_sell_intra, p.accountancy_code_sell_export,"; + $sql .= " p.accountancy_code_buy, p.accountancy_code_buy_intra, p.accountancy_code_buy_export,"; $sql .= " SUM(".$this->db->ifsql("s.reel IS NULL", "0", "s.reel").") as total_stock"; $sql .= " FROM ".MAIN_DB_PREFIX."product as p"; $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."product_stock as s on p.rowid = s.fk_product"; @@ -103,8 +105,10 @@ class box_produits_alerte_stock extends ModeleBoxes $reshook = $hookmanager->executeHooks('printFieldListWhere', $parameters); // Note that $action and $object may have been modified by hook $sql .= $hookmanager->resPrint; } - $sql .= " GROUP BY p.rowid, p.ref, p.label, p.price, p.price_base_type, p.price_ttc, p.fk_product_type, p.tms, p.tosell, p.tobuy, p.seuil_stock_alerte, p.entity"; - $sql .= " HAVING SUM(".$this->db->ifsql("s.reel IS NULL", "0", "s.reel").") < p.seuil_stock_alerte"; + $sql .= " GROUP BY p.rowid, p.ref, p.label, p.price, p.price_base_type, p.price_ttc, p.fk_product_type, p.tms, p.tosell, p.tobuy, p.barcode, p.seuil_stock_alerte, p.entity,"; + $sql .= " p.accountancy_code_sell, p.accountancy_code_sell_intra, p.accountancy_code_sell_export,"; + $sql .= " p.accountancy_code_buy, p.accountancy_code_buy_intra, p.accountancy_code_buy_export"; + $sql .= " HAVING SUM(".$this->db->ifsql("s.reel IS NULL", "0", "s.reel").") < p.seuil_stock_alerte"; $sql .= $this->db->order('p.seuil_stock_alerte', 'DESC'); $sql .= $this->db->plimit($max, 0); @@ -142,6 +146,15 @@ class box_produits_alerte_stock extends ModeleBoxes $productstatic->type = $objp->fk_product_type; $productstatic->label = $objp->label; $productstatic->entity = $objp->entity; + $productstatic->barcode = $objp->barcode; + $productstatic->status = $objp->tosell; + $productstatic->status_buy = $objp->tobuy; + $productstatic->accountancy_code_sell = $objp->accountancy_code_sell; + $productstatic->accountancy_code_sell_intra = $objp->accountancy_code_sell_intra; + $productstatic->accountancy_code_sell_export = $objp->accountancy_code_sell_export; + $productstatic->accountancy_code_buy = $objp->accountancy_code_buy; + $productstatic->accountancy_code_buy_intra = $objp->accountancy_code_buy_intra; + $productstatic->accountancy_code_buy_export = $objp->accountancy_code_buy_export; $this->info_box_contents[$line][] = array( 'td' => '', @@ -158,8 +171,7 @@ class box_produits_alerte_stock extends ModeleBoxes { $price_base_type = $langs->trans($objp->price_base_type); $price = ($objp->price_base_type == 'HT') ?price($objp->price) : $price = price($objp->price_ttc); - } - else //Parse the dynamic price + } else //Parse the dynamic price { $productstatic->fetch($objp->rowid, '', '', 1); $priceparser = new PriceParser($this->db); @@ -168,9 +180,7 @@ class box_produits_alerte_stock extends ModeleBoxes if ($objp->price_base_type == 'HT') { $price_base_type = $langs->trans("HT"); - } - else - { + } else { $price_result = $price_result * (1 + ($productstatic->tva_tx / 100)); $price_base_type = $langs->trans("TTC"); } @@ -215,17 +225,14 @@ class box_produits_alerte_stock extends ModeleBoxes ); $this->db->free($result); - } - else - { + } else { $this->info_box_contents[0][0] = array( 'td' => '', 'maxlength'=>500, 'text' => ($this->db->error().' sql='.$sql), ); } - } - else { + } else { $this->info_box_contents[0][0] = array( 'td' => 'class="nohover opacitymedium left"', 'text' => $langs->trans("ReadPermissionNotAllowed") diff --git a/htdocs/core/boxes/box_project.php b/htdocs/core/boxes/box_project.php index c99f07ff311..e8b056322da 100644 --- a/htdocs/core/boxes/box_project.php +++ b/htdocs/core/boxes/box_project.php @@ -146,8 +146,7 @@ class box_project extends ModeleBoxes 'td' => 'class="right"', 'text' => round($objTask->totprogress / $objTask->nb, 0)."%", ); - else - $this->info_box_contents[$i][] = array('td' => 'class="right"', 'text' => "N/A "); + else $this->info_box_contents[$i][] = array('td' => 'class="right"', 'text' => "N/A "); $totalnbTask += $objTask->nb; } else { $this->info_box_contents[$i][] = array('td' => 'class="right"', 'text' => round(0)); diff --git a/htdocs/core/boxes/box_prospect.php b/htdocs/core/boxes/box_prospect.php index 54ed1c76051..1024ef1d4ec 100644 --- a/htdocs/core/boxes/box_prospect.php +++ b/htdocs/core/boxes/box_prospect.php @@ -149,8 +149,8 @@ class box_prospect extends ModeleBoxes if ($num == 0) { $this->info_box_contents[$line][0] = array( - 'td' => 'class="center"', - 'text'=>$langs->trans("NoRecordedProspects"), + 'td' => 'class="center opacitymedium"', + 'text'=> $langs->trans("NoRecordedProspects"), ); } diff --git a/htdocs/core/boxes/box_services_contracts.php b/htdocs/core/boxes/box_services_contracts.php index f8e6dd22452..f81e8e72a51 100644 --- a/htdocs/core/boxes/box_services_contracts.php +++ b/htdocs/core/boxes/box_services_contracts.php @@ -186,9 +186,7 @@ class box_services_contracts extends ModeleBoxes } $s = $form->textwithtooltip($text, $description, 3, '', '', $cursorline, 0, (!empty($line->fk_parent_line) ?img_picto('', 'rightarrow') : '')); - } - else - { + } else { $s = img_object($langs->trans("ShowProductOrService"), ($objp->product_type ? 'service' : 'product')).' '.dol_htmlentitiesbr($objp->description); } @@ -223,20 +221,20 @@ class box_services_contracts extends ModeleBoxes $i++; } - if ($num == 0) $this->info_box_contents[$i][0] = array('td' => 'class="center"', 'text'=>$langs->trans("NoContractedProducts")); + if ($num == 0) $this->info_box_contents[$i][0] = array( + 'td' => 'class="center opacitymedium"', + 'text'=>$langs->trans("NoContractedProducts") + ); $this->db->free($result); - } - else - { + } else { $this->info_box_contents[0][0] = array( 'td' => '', 'maxlength' => 500, 'text' => ($this->db->error().' sql='.$sql), ); } - } - else { + } else { $this->info_box_contents[0][0] = array( 'td' => 'class="nohover opacitymedium left"', 'text' => $langs->trans("ReadPermissionNotAllowed") diff --git a/htdocs/core/boxes/box_services_expired.php b/htdocs/core/boxes/box_services_expired.php index 94b4764eeae..d7b3433f6d2 100644 --- a/htdocs/core/boxes/box_services_expired.php +++ b/htdocs/core/boxes/box_services_expired.php @@ -170,18 +170,14 @@ class box_services_expired extends ModeleBoxes } $this->db->free($resql); - } - else - { + } else { $this->info_box_contents[0][] = array( 'td' => '', 'maxlength'=>500, 'text' => ($this->db->error().' sql='.$sql), ); } - } - else - { + } else { $this->info_box_contents[0][0] = array( 'td' => 'class="nohover opacitymedium left"', 'text' => $langs->trans("ReadPermissionNotAllowed") diff --git a/htdocs/core/boxes/box_shipments.php b/htdocs/core/boxes/box_shipments.php index 26f45bc08db..8908f52640c 100644 --- a/htdocs/core/boxes/box_shipments.php +++ b/htdocs/core/boxes/box_shipments.php @@ -133,7 +133,7 @@ class box_shipments extends ModeleBoxes $societestatic->logo = $objp->logo; $this->info_box_contents[$line][] = array( - 'td' => '', + 'td' => 'class="nowraponall"', 'text' => $shipmentstatic->getNomUrl(1), 'asis' => 1, ); @@ -145,7 +145,7 @@ class box_shipments extends ModeleBoxes ); $this->info_box_contents[$line][] = array( - 'td' => '', + 'td' => 'class="nowraponall"', 'text' => $orderstatic->getNomUrl(1), 'asis' => 1, ); @@ -158,7 +158,10 @@ class box_shipments extends ModeleBoxes $line++; } - if ($num == 0) $this->info_box_contents[$line][0] = array('td' => 'class="center"', 'text'=>$langs->trans("NoRecordedShipments")); + if ($num == 0) $this->info_box_contents[$line][0] = array( + 'td' => 'class="center opacitymedium"', + 'text'=>$langs->trans("NoRecordedShipments") + ); $this->db->free($result); } else { diff --git a/htdocs/core/boxes/box_supplier_orders.php b/htdocs/core/boxes/box_supplier_orders.php index c019062313c..5ba940f2af2 100644 --- a/htdocs/core/boxes/box_supplier_orders.php +++ b/htdocs/core/boxes/box_supplier_orders.php @@ -167,9 +167,7 @@ class box_supplier_orders extends ModeleBoxes 'text' => ($this->db->error().' sql='.$sql), ); } - } - else - { + } else { $this->info_box_contents[0][] = array( 'td' => 'class="nohover opacitymedium left"', 'text' => $langs->trans("ReadPermissionNotAllowed") diff --git a/htdocs/core/boxes/box_supplier_orders_awaiting_reception.php b/htdocs/core/boxes/box_supplier_orders_awaiting_reception.php index f70f5bef450..952e0b78d92 100644 --- a/htdocs/core/boxes/box_supplier_orders_awaiting_reception.php +++ b/htdocs/core/boxes/box_supplier_orders_awaiting_reception.php @@ -174,9 +174,7 @@ class box_supplier_orders_awaiting_reception extends ModeleBoxes 'text' => ($this->db->error().' sql='.$sql), ); } - } - else - { + } else { $this->info_box_contents[0][] = array( 'td' => 'class="nohover opacitymedium left"', 'text' => $langs->trans("ReadPermissionNotAllowed") diff --git a/htdocs/core/boxes/box_task.php b/htdocs/core/boxes/box_task.php index f9a974ae1c5..55557cd355a 100644 --- a/htdocs/core/boxes/box_task.php +++ b/htdocs/core/boxes/box_task.php @@ -93,15 +93,13 @@ class box_task extends ModeleBoxes $filterValue = 'all'; if (in_array(GETPOST($cookie_name), array('all', 'im_project_contact', 'im_task_contact'))) { $filterValue = GETPOST($cookie_name); - } - elseif (!empty($_COOKIE[$cookie_name])) { + } elseif (!empty($_COOKIE[$cookie_name])) { $filterValue = $_COOKIE[$cookie_name]; } if ($filterValue == 'im_task_contact') { $textHead .= ' : '.$langs->trans("WhichIamLinkedTo"); - } - elseif ($filterValue == 'im_project_contact') { + } elseif ($filterValue == 'im_project_contact') { $textHead .= ' : '.$langs->trans("WhichIamLinkedToProject"); } @@ -158,8 +156,7 @@ class box_task extends ModeleBoxes if ($filterValue === 'im_task_contact') { $sql .= " JOIN ".MAIN_DB_PREFIX."element_contact as ec ON (ec.element_id = pt.rowid AND ec.fk_socpeople = '".$user->id."' )"; $sql .= " JOIN ".MAIN_DB_PREFIX."c_type_contact as tc ON (ec.fk_c_type_contact = tc.rowid AND tc.element = 'project_task' AND tc.source = 'internal' )"; - } - elseif ($filterValue === 'im_project_contact') { + } elseif ($filterValue === 'im_project_contact') { $sql .= " JOIN ".MAIN_DB_PREFIX."element_contact as ec ON (ec.element_id = p.rowid AND ec.fk_socpeople = '".$user->id."' )"; $sql .= " JOIN ".MAIN_DB_PREFIX."c_type_contact as tc ON (ec.fk_c_type_contact = tc.rowid AND tc.element = 'project' AND tc.source = 'internal' )"; } diff --git a/htdocs/core/boxes/modules_boxes.php b/htdocs/core/boxes/modules_boxes.php index 01fbcdef47b..e5fa9d8fb0d 100644 --- a/htdocs/core/boxes/modules_boxes.php +++ b/htdocs/core/boxes/modules_boxes.php @@ -161,14 +161,10 @@ class ModeleBoxes // Can't be abtract as it is instantiated to build "empty" box $this->box_order = $obj->box_order; $this->fk_user = $obj->fk_user; return 1; - } - else - { + } else { return -1; } - } - else - { + } else { return -1; } } @@ -438,13 +434,10 @@ class ModeleBoxes // Can't be abtract as it is instantiated to build "empty" box { $langs->load("errors"); print '
'.$langs->trans("Error").' : '.$langs->trans("ErrorDuplicateWidget", $modName, "").'
'; - } - else - { + } else { try { include_once $newdir.'/'.$file; - } - catch (Exception $e) + } catch (Exception $e) { print $e->getMessage(); } diff --git a/htdocs/core/class/CMailFile.class.php b/htdocs/core/class/CMailFile.class.php index 5c7251c40e2..1b5faeff52e 100644 --- a/htdocs/core/class/CMailFile.class.php +++ b/htdocs/core/class/CMailFile.class.php @@ -215,9 +215,7 @@ class CMailFile { $this->msgishtml = 0; if (dol_textishtml($msg)) $this->msgishtml = 1; - } - else - { + } else { $this->msgishtml = $msgishtml; } @@ -319,8 +317,7 @@ class CMailFile $this->message = 'This is a message with multiple parts in MIME format.'.$this->eol; $this->message .= $text_body.$files_encoded; $this->message .= "--".$this->mixed_boundary."--".$this->eol; - } - elseif ($this->sendmode == 'smtps') + } elseif ($this->sendmode == 'smtps') { // Use SMTPS library // ------------------------------------------ @@ -386,8 +383,7 @@ class CMailFile $this->msgid = time().'.SMTPs-dolibarr-'.$trackid.'@'.$host; $this->smtps = $smtps; - } - elseif ($this->sendmode == 'swiftmailer') + } elseif ($this->sendmode == 'swiftmailer') { // Use Swift Mailer library $host = dol_getprefix('email'); @@ -499,9 +495,7 @@ class CMailFile if (!empty($addr_bcc)) $this->message->setBcc($this->getArrayAddress($addr_bcc)); //if (! empty($errors_to)) $this->message->setErrorsTo($this->getArrayAddress($errors_to); if (isset($deliveryreceipt) && $deliveryreceipt == 1) $this->message->setReadReceiptTo($this->getArrayAddress($from)); - } - else - { + } else { // Send mail method not correctly defined // -------------------------------------- $this->error = 'Bad value for sendmode'; @@ -707,9 +701,7 @@ class CMailFile $this->error .= ".
"; $this->error .= $langs->trans("ErrorPhpMailDelivery"); dol_syslog("CMailFile::sendfile: mail end error=".$this->error, LOG_ERR); - } - else - { + } else { dol_syslog("CMailFile::sendfile: mail end success", LOG_DEBUG); } } @@ -722,8 +714,7 @@ class CMailFile // Restore parameters if (!empty($conf->global->$keyforsmtpserver)) ini_restore('SMTP'); if (!empty($conf->global->$keyforsmtpport)) ini_restore('smtp_port'); - } - elseif ($this->sendmode == 'smtps') + } elseif ($this->sendmode == 'smtps') { if (!is_object($this->smtps)) { @@ -794,16 +785,13 @@ class CMailFile { dol_syslog("CMailFile::sendfile: mail end success", LOG_DEBUG); $res = true; - } - else - { + } else { if (empty($this->error)) $this->error = $result; dol_syslog("CMailFile::sendfile: mail end error with smtps lib to HOST=".$server.", PORT=".$conf->global->$keyforsmtpport."
".$this->error, LOG_ERR); $res = false; } } - } - elseif ($this->sendmode == 'swiftmailer') + } elseif ($this->sendmode == 'swiftmailer') { // Use Swift Mailer library // ------------------------------------------ @@ -860,14 +848,10 @@ class CMailFile if (!empty($this->error) || !$result) { dol_syslog("CMailFile::sendfile: mail end error=".$this->error, LOG_ERR); $res = false; - } - else - { + } else { dol_syslog("CMailFile::sendfile: mail end success", LOG_DEBUG); } - } - else - { + } else { // Send mail method not correctly defined // -------------------------------------- @@ -883,9 +867,7 @@ class CMailFile return $reshook; } - } - else - { + } else { $this->error = 'No mail sent. Feature is disabled by option MAIN_DISABLE_ALL_MAILS'; dol_syslog("CMailFile::sendfile: ".$this->error, LOG_WARNING); } @@ -924,9 +906,7 @@ class CMailFile $contents = file_get_contents($newsourcefile); // Need PHP 4.3 $encoded = chunk_split(base64_encode($contents), 76, $this->eol); // 76 max is defined into http://tools.ietf.org/html/rfc2047 return $encoded; - } - else - { + } else { $this->error = "Error: Can't read file '".$sourcefile."' into _encode_file"; dol_syslog("CMailFile::encode_file: ".$this->error, LOG_ERR); return -1; @@ -957,12 +937,10 @@ class CMailFile fputs($fp, $this->headers); fputs($fp, $this->eol); // This eol is added by the mail function, so we add it in log fputs($fp, $this->message); - } - elseif ($this->sendmode == 'smtps') + } elseif ($this->sendmode == 'smtps') { fputs($fp, $this->smtps->log); // this->smtps->log is filled only if MAIN_MAIL_DEBUG was set to on - } - elseif ($this->sendmode == 'swiftmailer') + } elseif ($this->sendmode == 'swiftmailer') { fputs($fp, $this->logger->dump()); // this->logger is filled only if MAIN_MAIL_DEBUG was set to on } @@ -991,9 +969,7 @@ class CMailFile $out .= ">"; $out .= $msg; $out .= ""; - } - else - { + } else { $out = $msg; } @@ -1074,9 +1050,7 @@ class CMailFile $out .= 'Message-ID: <'.$this->msgid.">".$this->eol2; // Uppercase seems replaced by phpmail $out .= 'References: <'.$this->msgid.">".$this->eol2; $out .= 'X-Dolibarr-TRACKID: '.$trackid.'@'.$host.$this->eol2; - } - else - { + } else { $this->msgid = time().'.phpmail@'.$host; $out .= 'Message-ID: <'.$this->msgid.">".$this->eol2; } @@ -1205,9 +1179,7 @@ class CMailFile { $out .= "--".$this->alternative_boundary."--".$this->eol; } - } - else - { + } else { $out .= "Content-Type: text/plain; charset=".$conf->file->character_set_client.$this->eol; //$out.= "Content-Transfer-Encoding: 7bit".$this->eol; $out .= $this->eol.$strContent.$this->eol; @@ -1265,9 +1237,7 @@ class CMailFile $out .= $encoded; $out .= $this->eol; //$out.= $this->eol; - } - else - { + } else { return $encoded; } } @@ -1365,9 +1335,7 @@ class CMailFile // Check response from Server if ($_retVal = $this->server_parse($socket, "220")) $_retVal = $socket; - } - else - { + } else { $this->error = utf8_check('Error '.$errno.' - '.$errstr) ? 'Error '.$errno.' - '.$errstr : utf8_encode('Error '.$errno.' - '.$errstr); } } @@ -1487,16 +1455,12 @@ class CMailFile } $i++; } - } - else - { + } else { return -1; } return 1; - } - else - { + } else { return 0; } } @@ -1532,9 +1496,7 @@ class CMailFile { $name = trim($regs[1]); $email = trim($regs[2]); - } - else - { + } else { $name = ''; $email = trim($val); } @@ -1603,9 +1565,7 @@ class CMailFile { $name = trim($regs[1]); $email = trim($regs[2]); - } - else - { + } else { $name = null; $email = trim($val); } diff --git a/htdocs/core/class/CSMSFile.class.php b/htdocs/core/class/CSMSFile.class.php index 4cd06a81233..4e496408f1d 100644 --- a/htdocs/core/class/CSMSFile.class.php +++ b/htdocs/core/class/CSMSFile.class.php @@ -140,21 +140,17 @@ class CSMSFile { $this->error = $sms->error; dol_syslog("CSMSFile::sendfile: sms send error=".$this->error, LOG_ERR); - } - else - { + } else { dol_syslog("CSMSFile::sendfile: sms send success with id=".$res, LOG_DEBUG); //var_dump($res); // 1973128 if (!empty($conf->global->MAIN_SMS_DEBUG)) $this->dump_sms_result($res); } - } - elseif (!empty($conf->global->MAIN_SMS_SENDMODE)) // $conf->global->MAIN_SMS_SENDMODE looks like a value 'class@module' + } elseif (!empty($conf->global->MAIN_SMS_SENDMODE)) // $conf->global->MAIN_SMS_SENDMODE looks like a value 'class@module' { $tmp = explode('@', $conf->global->MAIN_SMS_SENDMODE); $classfile = $tmp[0]; $module = (empty($tmp[1]) ? $tmp[0] : $tmp[1]); dol_include_once('/'.$module.'/class/'.$classfile.'.class.php'); - try - { + try { $classname = ucfirst($classfile); $sms = new $classname($this->db); $sms->expe = $this->addr_from; @@ -176,29 +172,22 @@ class CSMSFile if ($res <= 0) { dol_syslog("CSMSFile::sendfile: sms send error=".$this->error, LOG_ERR); - } - else - { + } else { dol_syslog("CSMSFile::sendfile: sms send success with id=".$res, LOG_DEBUG); //var_dump($res); // 1973128 if (!empty($conf->global->MAIN_SMS_DEBUG)) $this->dump_sms_result($res); } - } - catch (Exception $e) + } catch (Exception $e) { dol_print_error('', 'Error to get list of senders: '.$e->getMessage()); } - } - else - { + } else { // Send sms method not correctly defined // -------------------------------------- return 'Bad value for MAIN_SMS_SENDMODE constant'; } - } - else - { + } else { $this->error = 'No sms sent. Feature is disabled by option MAIN_DISABLE_ALL_SMS'; dol_syslog("CSMSFile::sendfile: ".$this->error, LOG_WARNING); } diff --git a/htdocs/core/class/ccountry.class.php b/htdocs/core/class/ccountry.class.php index a70a2f9cafc..cf671eb57ca 100644 --- a/htdocs/core/class/ccountry.class.php +++ b/htdocs/core/class/ccountry.class.php @@ -138,9 +138,7 @@ class Ccountry // extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return $this->id; } @@ -184,13 +182,10 @@ class Ccountry // extends CommonObject $this->db->free($resql); return 1; - } - else { + } else { return 0; } - } - else - { + } else { $this->error = "Error ".$this->db->lasterror(); return -1; } @@ -243,9 +238,7 @@ class Ccountry // extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } @@ -283,9 +276,7 @@ class Ccountry // extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } diff --git a/htdocs/core/class/comment.class.php b/htdocs/core/class/comment.class.php index eff934b635f..91fba374181 100644 --- a/htdocs/core/class/comment.class.php +++ b/htdocs/core/class/comment.class.php @@ -156,9 +156,7 @@ class Comment extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return $this->id; } @@ -216,9 +214,7 @@ class Comment extends CommonObject if ($num_rows) return 1; else return 0; - } - else - { + } else { $this->error = "Error ".$this->db->lasterror(); return -1; } @@ -280,9 +276,7 @@ class Comment extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } diff --git a/htdocs/core/class/commondocgenerator.class.php b/htdocs/core/class/commondocgenerator.class.php index e868934e55a..a9b75cd5ad6 100644 --- a/htdocs/core/class/commondocgenerator.class.php +++ b/htdocs/core/class/commondocgenerator.class.php @@ -170,12 +170,13 @@ abstract class CommonDocGenerator * * @param Societe $object Object * @param Translate $outputlangs Language object for output + * @param string $array_key Name of the key for return array * @return array Array of substitution key->code */ - public function get_substitutionarray_thirdparty($object, $outputlangs) + public function get_substitutionarray_thirdparty($object, $outputlangs, $array_key = 'company') { // phpcs:enable - global $conf; + global $conf, $extrafields; if (empty($object->country) && !empty($object->country_code)) { @@ -221,27 +222,13 @@ abstract class CommonDocGenerator 'company_default_bank_bic'=>$object->bank_account->bic ); - // Retrieve extrafields - if (is_array($object->array_options) && count($object->array_options)) - { - require_once DOL_DOCUMENT_ROOT.'/core/class/extrafields.class.php'; - $extrafields = new ExtraFields($this->db); - $extrafields->fetch_name_optionals_label($object->table_element, true); - $object->fetch_optionals(); + // Retrieve extrafields + if (is_array($object->array_options) && count($object->array_options)) + { + $object->fetch_optionals(); - foreach ($extrafields->attributes[$object->table_element]['label'] as $key=>$label) - { - if ($extrafields->attributes[$object->table_element]['type'][$key] == 'price') - { - $object->array_options['options_'.$key] = price($object->array_options['options_'.$key], 0, $outputlangs, 0, 0, -1, $conf->currency); - } - elseif ($extrafields->attributes[$object->table_element]['type'][$key] == 'select' || $extrafields->attributes[$object->table_element]['type'][$key] == 'checkbox') - { - $object->array_options['options_'.$key] = $extrafields->attributes[$object->table_element]['param'][$key]['options'][$object->array_options['options_'.$key]]; - } - $array_thirdparty = array_merge($array_thirdparty, array('company_options_'.$key => $object->array_options ['options_'.$key])); - } - } + $array_thirdparty = $this->fill_substitutionarray_with_extrafields($object, $array_thirdparty, $extrafields, $array_key, $outputlangs); + } return $array_thirdparty; } @@ -251,13 +238,13 @@ abstract class CommonDocGenerator * * @param Contact $object contact * @param Translate $outputlangs object for output - * @param array $array_key Name of the key for return array + * @param string $array_key Name of the key for return array * @return array Array of substitution key->code */ public function get_substitutionarray_contact($object, $outputlangs, $array_key = 'object') { // phpcs:enable - global $conf; + global $conf, $extrafields; if (empty($object->country) && !empty($object->country_code)) { @@ -298,24 +285,13 @@ abstract class CommonDocGenerator $array_key.'_civility' => $object->civility, ); - // Retrieve extrafields - require_once DOL_DOCUMENT_ROOT.'/core/class/extrafields.class.php'; - $extrafields = new ExtraFields($this->db); - $extrafields->fetch_name_optionals_label($object->table_element, true); - $object->fetch_optionals(); + // Retrieve extrafields + if (is_array($object->array_options) && count($object->array_options)) + { + $object->fetch_optionals(); - foreach ($extrafields->attributes[$object->table_element]['label'] as $key => $label) - { - if ($extrafields->attributes[$object->table_element]['type'][$key] == 'price') - { - $object->array_options['options_'.$key] = price($object->array_options ['options_'.$key], 0, $outputlangs, 0, 0, - 1, $conf->currency); - } - elseif ($extrafields->attributes[$object->table_element]['type'][$key] == 'select' || $extrafields->attributes[$object->table_element]['type'][$key] == 'checkbox') - { - $object->array_options['options_'.$key] = $extrafields->attributes[$object->table_element]['param'][$key]['options'][$object->array_options['options_'.$key]]; - } - $array_contact = array_merge($array_contact, array($array_key.'_options_'.$key => $object->array_options['options_'.$key])); - } + $array_contact = $this->fill_substitutionarray_with_extrafields($object, $array_contact, $extrafields, $array_key, $outputlangs); + } return $array_contact; } @@ -349,7 +325,7 @@ abstract class CommonDocGenerator foreach ($conf->global as $key => $val) { - if (preg_match('/(_pass|password|secret|_key|key$)/i', $key)) $newval = '*****forbidden*****'; + if (preg_match('/(_pass|_pw|password|secret|_key|key$)/i', $key)) $newval = '*****forbidden*****'; else $newval = $val; $array_other['__['.$key.']__'] = $newval; } @@ -370,7 +346,7 @@ abstract class CommonDocGenerator public function get_substitutionarray_object($object, $outputlangs, $array_key = 'object') { // phpcs:enable - global $conf; + global $conf, $extrafields; $sumpayed = $sumdeposit = $sumcreditnote = ''; $already_payed_all = 0; @@ -389,7 +365,7 @@ abstract class CommonDocGenerator $remain_to_pay = $sumpayed - $sumdeposit - $sumcreditnote; if ($object->fk_account > 0) { - require_once DOL_DOCUMENT_ROOT .'/compta/bank/class/account.class.php'; + require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php'; $bank_account = new Account($this->db); $bank_account->fetch($object->fk_account); } @@ -528,11 +504,6 @@ abstract class CommonDocGenerator // Retrieve extrafields if (is_array($object->array_options) && count($object->array_options)) { - $extrafieldkey = $object->element; - - require_once DOL_DOCUMENT_ROOT.'/core/class/extrafields.class.php'; - $extrafields = new ExtraFields($this->db); - $extrafields->fetch_name_optionals_label($extrafieldkey, true); $object->fetch_optionals(); $resarray = $this->fill_substitutionarray_with_extrafields($object, $resarray, $extrafields, $array_key, $outputlangs); @@ -605,7 +576,7 @@ abstract class CommonDocGenerator } // Retrieve extrafields - $extrafieldkey = $line->element; + $extrafieldkey = $line->table_element; $array_key = "line"; require_once DOL_DOCUMENT_ROOT.'/core/class/extrafields.class.php'; $extrafields = new ExtraFields($this->db); @@ -672,7 +643,7 @@ abstract class CommonDocGenerator public function get_substitutionarray_shipment($object, $outputlangs, $array_key = 'object') { // phpcs:enable - global $conf; + global $conf, $extrafields; dol_include_once('/core/lib/product.lib.php'); $object->list_delivery_methods($object->shipping_method_id); $calculatedVolume = ($object->trueWidth * $object->trueHeight * $object->trueDepth); @@ -708,16 +679,13 @@ abstract class CommonDocGenerator $array_shipment[$array_key.'_total_vat_'.$line->tva_tx] += $line->total_tva; } - // Retrieve extrafields - if (is_array($object->array_options) && count($object->array_options)) - { - require_once DOL_DOCUMENT_ROOT.'/core/class/extrafields.class.php'; - $extrafields = new ExtraFields($this->db); - $extrafields->fetch_name_optionals_label('expedition', true); - $object->fetch_optionals(); + // Retrieve extrafields + if (is_array($object->array_options) && count($object->array_options)) + { + $object->fetch_optionals(); - $array_shipment = $this->fill_substitutionarray_with_extrafields($object, $array_shipment, $extrafields, $array_key, $outputlangs); - } + $array_shipment = $this->fill_substitutionarray_with_extrafields($object, $array_shipment, $extrafields, $array_key, $outputlangs); + } return $array_shipment; } @@ -826,12 +794,10 @@ abstract class CommonDocGenerator $object->array_options['options_'.$key.'_currency'] = price($object->array_options['options_'.$key], 0, $outputlangs, 0, 0, -1, $conf->currency); //Add value to store price with currency $array_to_fill = array_merge($array_to_fill, array($array_key.'_options_'.$key.'_currency' => $object->array_options['options_'.$key.'_currency'])); - } - elseif ($extrafields->attributes[$object->table_element]['type'][$key] == 'select') + } elseif ($extrafields->attributes[$object->table_element]['type'][$key] == 'select') { $object->array_options['options_'.$key] = $extrafields->attributes[$object->table_element]['param'][$key]['options'][$object->array_options['options_'.$key]]; - } - elseif ($extrafields->attributes[$object->table_element]['type'][$key] == 'checkbox') { + } elseif ($extrafields->attributes[$object->table_element]['type'][$key] == 'checkbox') { $valArray = explode(',', $object->array_options['options_'.$key]); $output = array(); foreach ($extrafields->attributes[$object->table_element]['param'][$key]['options'] as $keyopt=>$valopt) { @@ -840,8 +806,7 @@ abstract class CommonDocGenerator } } $object->array_options['options_'.$key] = implode(', ', $output); - } - elseif ($extrafields->attributes[$object->table_element]['type'][$key] == 'date') + } elseif ($extrafields->attributes[$object->table_element]['type'][$key] == 'date') { if (strlen($object->array_options['options_'.$key]) > 0) { @@ -849,17 +814,14 @@ abstract class CommonDocGenerator $object->array_options['options_'.$key] = dol_print_date($date, 'day'); // using company output language $object->array_options['options_'.$key.'_locale'] = dol_print_date($date, 'day', 'tzserver', $outputlangs); // using output language format $object->array_options['options_'.$key.'_rfc'] = dol_print_date($date, 'dayrfc'); // international format - } - else - { + } else { $object->array_options['options_'.$key] = ''; $object->array_options['options_'.$key.'_locale'] = ''; $object->array_options['options_'.$key.'_rfc'] = ''; } $array_to_fill = array_merge($array_to_fill, array($array_key.'_options_'.$key.'_locale' => $object->array_options['options_'.$key.'_locale'])); $array_to_fill = array_merge($array_to_fill, array($array_key.'_options_'.$key.'_rfc' => $object->array_options['options_'.$key.'_rfc'])); - } - elseif ($extrafields->attributes[$object->table_element]['label'][$key] == 'datetime') + } elseif ($extrafields->attributes[$object->table_element]['label'][$key] == 'datetime') { $datetime = $object->array_options['options_'.$key]; $object->array_options['options_'.$key] = ($datetime != "0000-00-00 00:00:00" ?dol_print_date($object->array_options['options_'.$key], 'dayhour') : ''); // using company output language @@ -867,8 +829,7 @@ abstract class CommonDocGenerator $object->array_options['options_'.$key.'_rfc'] = ($datetime != "0000-00-00 00:00:00" ?dol_print_date($object->array_options['options_'.$key], 'dayhourrfc') : ''); // international format $array_to_fill = array_merge($array_to_fill, array($array_key.'_options_'.$key.'_locale' => $object->array_options['options_'.$key.'_locale'])); $array_to_fill = array_merge($array_to_fill, array($array_key.'_options_'.$key.'_rfc' => $object->array_options['options_'.$key.'_rfc'])); - } - elseif ($extrafields->attributes[$object->table_element]['type'][$key] == 'link') + } elseif ($extrafields->attributes[$object->table_element]['type'][$key] == 'link') { $id = $object->array_options['options_'.$key]; if ($id != "") @@ -978,8 +939,7 @@ abstract class CommonDocGenerator if (empty($colDef['width'])) { $countFlexCol++; - } - else { + } else { $totalDefinedColWidth += $colDef['width']; } } @@ -989,16 +949,14 @@ abstract class CommonDocGenerator // setting empty conf with default if (!empty($colDef['title'])) { $colDef['title'] = array_replace($this->defaultTitlesFieldsStyle, $colDef['title']); - } - else { + } else { $colDef['title'] = $this->defaultTitlesFieldsStyle; } // setting empty conf with default if (!empty($colDef['content'])) { $colDef['content'] = array_replace($this->defaultContentsFieldsStyle, $colDef['content']); - } - else { + } else { $colDef['content'] = $this->defaultContentsFieldsStyle; } @@ -1327,7 +1285,7 @@ abstract class CommonDocGenerator if (!empty($fields)) { // Sort extrafields by rank - uasort($fields, function($a, $b) { + uasort($fields, function ($a, $b) { return ($a->rank > $b->rank) ? -1 : 1; }); @@ -1354,8 +1312,7 @@ abstract class CommonDocGenerator $html .= $field->content; $i++; } - } - elseif ($params['display'] == 'table') { + } elseif ($params['display'] == 'table') { // Display in table format $html .= ''; @@ -1420,8 +1377,7 @@ abstract class CommonDocGenerator { if (!empty($this->cols[$colKey]['status'])) { return true; - } - else return false; + } else return false; } /** @@ -1466,12 +1422,12 @@ abstract class CommonDocGenerator // save curent cell padding $curentCellPaddinds = $pdf->getCellPaddings(); + // Add space for lines (more if we need to show a second alternative language) global $outputlangsbis; if (is_object($outputlangsbis)) { // set cell padding with column title definition $pdf->setCellPaddings($colDef['title']['padding'][3], $colDef['title']['padding'][0], $colDef['title']['padding'][1], 0.5); - } - else { + } else { // set cell padding with column title definition $pdf->setCellPaddings($colDef['title']['padding'][3], $colDef['title']['padding'][0], $colDef['title']['padding'][1], $colDef['title']['padding'][2]); } @@ -1480,8 +1436,8 @@ abstract class CommonDocGenerator $textWidth = $colDef['width']; $pdf->MultiCell($textWidth, 2, $colDef['title']['label'], '', $colDef['title']['align']); - - if (is_object($outputlangsbis)) { + // Add variant of translation if $outputlangsbis is an object + if (is_object($outputlangsbis) && trim($colDef['title']['label'])) { $pdf->setCellPaddings($colDef['title']['padding'][3], 0, $colDef['title']['padding'][1], $colDef['title']['padding'][2]); $pdf->SetXY($colDef['xStartPos'], $pdf->GetY()); $textbis = $outputlangsbis->transnoentities($colDef['title']['textkey']); @@ -1495,6 +1451,7 @@ abstract class CommonDocGenerator } } } + return $this->tabTitleHeight; } diff --git a/htdocs/core/class/commoninvoice.class.php b/htdocs/core/class/commoninvoice.class.php index c37ece437d4..81a553100f2 100644 --- a/htdocs/core/class/commoninvoice.class.php +++ b/htdocs/core/class/commoninvoice.class.php @@ -140,9 +140,7 @@ abstract class CommonInvoice extends CommonObject $this->db->free($resql); if ($multicurrency) return $obj->multicurrency_amount; else return $obj->amount; - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -170,9 +168,7 @@ abstract class CommonInvoice extends CommonObject if ($result >= 0) { return $result; - } - else - { + } else { $this->error = $discountstatic->error; return -1; } @@ -193,9 +189,7 @@ abstract class CommonInvoice extends CommonObject if ($result >= 0) { return $result; - } - else - { + } else { $this->error = $discountstatic->error; return -1; } @@ -216,9 +210,7 @@ abstract class CommonInvoice extends CommonObject if ($result >= 0) { return $result; - } - else - { + } else { $this->error = $discountstatic->error; return -1; } @@ -248,9 +240,7 @@ abstract class CommonInvoice extends CommonObject $idarray[] = $row[0]; $i++; } - } - else - { + } else { dol_print_error($this->db); } return $idarray; @@ -284,15 +274,11 @@ abstract class CommonInvoice extends CommonObject { // If there is any return $obj->rowid; - } - else - { + } else { // If no invoice replaces it return 0; } - } - else - { + } else { return -1; } } @@ -352,8 +338,7 @@ abstract class CommonInvoice extends CommonObject $sql .= ' FROM '.MAIN_DB_PREFIX.'societe_remise_except as rc, '.MAIN_DB_PREFIX.'facture as f'; $sql .= ' WHERE rc.fk_facture_source=f.rowid AND rc.fk_facture = '.$this->id; $sql .= ' AND (f.type = 2 OR f.type = 0 OR f.type = 3)'; // Find discount coming from credit note or excess received or deposits (payments from deposits are always null except if FACTURE_DEPOSITS_ARE_JUST_PAYMENTS is set) - } - elseif ($this->element == 'facture_fourn' || $this->element == 'invoice_supplier') + } elseif ($this->element == 'facture_fourn' || $this->element == 'invoice_supplier') { $sql = 'SELECT rc.amount_ttc as amount, rc.multicurrency_amount_ttc as multicurrency_amount, rc.datec as date, f.ref as ref, rc.description as type'; $sql .= ' FROM '.MAIN_DB_PREFIX.'societe_remise_except as rc, '.MAIN_DB_PREFIX.'facture_fourn as f'; @@ -372,15 +357,12 @@ abstract class CommonInvoice extends CommonObject $obj = $this->db->fetch_object($resql); if ($multicurrency) { $retarray[] = array('amount'=>$obj->multicurrency_amount, 'type'=>$obj->type, 'date'=>$obj->date, 'num'=>'0', 'ref'=>$obj->ref); - } - else { + } else { $retarray[] = array('amount'=>$obj->amount, 'type'=>$obj->type, 'date'=>$obj->date, 'num'=>'', 'ref'=>$obj->ref); } $i++; } - } - else - { + } else { $this->error = $this->db->lasterror(); dol_print_error($this->db); return array(); @@ -389,9 +371,7 @@ abstract class CommonInvoice extends CommonObject } return $retarray; - } - else - { + } else { $this->error = $this->db->lasterror(); dol_print_error($this->db); return array(); @@ -482,9 +462,7 @@ abstract class CommonInvoice extends CommonObject { $alreadydispatched = $obj->nb; } - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -549,41 +527,33 @@ abstract class CommonInvoice extends CommonObject if ($status == 0) { $labelStatus = $langs->trans('BillStatusDraft'); $labelStatusShort = $langs->trans('Bill'.$prefix.'StatusDraft'); - } - elseif (($status == 3 || $status == 2) && $alreadypaid <= 0) { + } elseif (($status == 3 || $status == 2) && $alreadypaid <= 0) { $labelStatus = $langs->trans('BillStatusClosedUnpaid'); $labelStatusShort = $langs->trans('Bill'.$prefix.'StatusClosedUnpaid'); $statusType = 'status5'; - } - elseif (($status == 3 || $status == 2) && $alreadypaid > 0) { + } elseif (($status == 3 || $status == 2) && $alreadypaid > 0) { $labelStatus = $langs->trans('BillStatusClosedPaidPartially'); $labelStatusShort = $langs->trans('Bill'.$prefix.'StatusClosedPaidPartially'); $statusType = 'status9'; - } - elseif ($alreadypaid <= 0) { + } elseif ($alreadypaid <= 0) { $labelStatus = $langs->trans('BillStatusNotPaid'); $labelStatusShort = $langs->trans('Bill'.$prefix.'StatusNotPaid'); $statusType = 'status1'; - } - else { + } else { $labelStatus = $langs->trans('BillStatusStarted'); $labelStatusShort = $langs->trans('Bill'.$prefix.'StatusStarted'); $statusType = 'status3'; } - } - else - { + } else { $statusType = 'status6'; if ($type == self::TYPE_CREDIT_NOTE) { $labelStatus = $langs->trans('BillStatusPaidBackOrConverted'); // credit note $labelStatusShort = $langs->trans('Bill'.$prefix.'StatusPaidBackOrConverted'); // credit note - } - elseif ($type == self::TYPE_DEPOSIT) { + } elseif ($type == self::TYPE_DEPOSIT) { $labelStatus = $langs->trans('BillStatusConverted'); // deposit invoice $labelStatusShort = $langs->trans('Bill'.$prefix.'StatusConverted'); // deposit invoice - } - else { + } else { $labelStatus = $langs->trans('BillStatusPaid'); $labelStatusShort = $langs->trans('Bill'.$prefix.'StatusPaid'); } @@ -629,9 +599,7 @@ abstract class CommonInvoice extends CommonObject $cdr_type = $obj->type_cdr; $cdr_decalage = $obj->decalage; } - } - else - { + } else { $this->error = $this->db->error(); return -1; } @@ -657,9 +625,7 @@ abstract class CommonInvoice extends CommonObject { $mois = 1; $annee += 1; - } - else - { + } else { $mois += 1; } // We move at the beginning of the next month, and we take a day off @@ -682,8 +648,7 @@ abstract class CommonInvoice extends CommonObject if ($diff < 0) $datelim = $date_lim_current; else $datelim = $date_lim_next; - } - else return 'Bad value for type_cdr in database for record cond_reglement = '.$cond_reglement; + } else return 'Bad value for type_cdr in database for record cond_reglement = '.$cond_reglement; return $datelim; } diff --git a/htdocs/core/class/commonobject.class.php b/htdocs/core/class/commonobject.class.php index f9c3e260e6f..3d4372a0cb1 100644 --- a/htdocs/core/class/commonobject.class.php +++ b/htdocs/core/class/commonobject.class.php @@ -667,7 +667,7 @@ abstract class CommonObject $namecoords .= $this->getFullName($langs, 1).'
'.$coords; // hideonsmatphone because copyToClipboard call jquery dialog that does not work with jmobile $out .= ''; - $out .= img_picto($langs->trans("Address"), 'object_address.png'); + $out .= img_picto($langs->trans("Address"), 'map-marker-alt'); $out .= ' '; } $out .= dol_print_address($coords, 'address_'.$htmlkey.'_'.$this->id, $this->element, $this->id, 1, ', '); $outdone++; @@ -705,8 +705,7 @@ abstract class CommonObject { if (!empty($conf->global->MAIN_SHOW_REGION_IN_STATE_SELECT) && $conf->global->MAIN_SHOW_REGION_IN_STATE_SELECT == 1 && $this->region) { $out .= ($outdone ? ' - ' : '').$this->region.' - '.$this->state; - } - else { + } else { $out .= ($outdone ? ' - ' : '').$this->state; } $outdone++; @@ -833,10 +832,8 @@ abstract class CommonObject $this->errors = $ecmfile->errors; } */ - } - else return ''; - } - elseif (empty($ecmfile->share)) + } else return ''; + } elseif (empty($ecmfile->share)) { // Add entry into index if ($initsharekey) @@ -844,8 +841,7 @@ abstract class CommonObject require_once DOL_DOCUMENT_ROOT.'/core/lib/security2.lib.php'; $ecmfile->share = getRandomPassword(true); $ecmfile->update($user); - } - else return ''; + } else return ''; } // Define $urlwithroot $urlwithouturlroot = preg_replace('/'.preg_quote(DOL_URL_ROOT, '/').'$/i', '', trim($dolibarr_main_url_root)); @@ -867,9 +863,7 @@ abstract class CommonObject if ($relativelink) { $linktoreturn = 'document.php'.($paramlink ? '?'.$paramlink : ''); - } - else - { + } else { $linktoreturn = $urlwithroot.'/document.php'.($paramlink ? '?'.$paramlink : ''); } @@ -916,9 +910,7 @@ abstract class CommonObject if (is_numeric($type_contact)) { $id_type_contact = $type_contact; - } - else - { + } else { // We look for id type_contact $sql = "SELECT tc.rowid"; $sql .= " FROM ".MAIN_DB_PREFIX."c_type_contact as tc"; @@ -981,18 +973,14 @@ abstract class CommonObject $this->db->commit(); return 1; - } - else - { + } else { if ($this->db->errno() == 'DB_ERROR_RECORD_ALREADY_EXISTS') { $this->error = $this->db->errno(); $this->db->rollback(); echo 'err rollback'; return -2; - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -1; @@ -1047,9 +1035,7 @@ abstract class CommonObject if ($resql) { return 0; - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -1085,9 +1071,7 @@ abstract class CommonObject $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -1; @@ -1123,9 +1107,7 @@ abstract class CommonObject if ($this->db->query($sql)) { return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -1185,9 +1167,7 @@ abstract class CommonObject 'nom'=>$obj->lastname, // For backward compatibility 'civility'=>$obj->civility, 'lastname'=>$obj->lastname, 'firstname'=>$obj->firstname, 'email'=>$obj->email, 'login'=>$obj->login, 'photo'=>$obj->photo, 'statuscontact'=>$obj->statuscontact, 'rowid'=>$obj->rowid, 'code'=>$obj->code, 'libelle'=>$libelle_type, 'status'=>$obj->statuslink, 'fk_c_type_contact'=>$obj->fk_c_type_contact); - } - else - { + } else { $tab[$i] = $obj->id; } @@ -1195,9 +1175,7 @@ abstract class CommonObject } return $tab; - } - else - { + } else { $this->error = $this->db->lasterror(); dol_print_error($this->db); return -1; @@ -1231,9 +1209,7 @@ abstract class CommonObject $result = $this->update_contact($rowid, $newstatut); $this->db->free($resql); return $result; - } - else - { + } else { $this->error = $this->db->error(); dol_print_error($this->db); return -1; @@ -1285,9 +1261,7 @@ abstract class CommonObject $i++; } return $tab; - } - else - { + } else { $this->error = $this->db->lasterror(); //dol_print_error($this->db); return null; @@ -1359,7 +1333,7 @@ abstract class CommonObject } if ($conf->{$modulename}->enabled) { $libelle_element = $langs->trans('ContactDefault_'.$obj->element); - $transkey = "TypeContact_".$this->element."_".$source."_".$obj->code; + $transkey = "TypeContact_".$obj->element."_".$source."_".$obj->code; $libelle_type = ($langs->trans($transkey) != $transkey ? $langs->trans($transkey) : $obj->libelle); if (empty($option)) $tab[$obj->rowid] = $libelle_element.' - '.$libelle_type; @@ -1368,9 +1342,7 @@ abstract class CommonObject } } return $tab; - } - else - { + } else { $this->error = $this->db->lasterror(); return null; } @@ -1430,9 +1402,7 @@ abstract class CommonObject $result[$i] = $obj->fk_socpeople; $i++; } - } - else - { + } else { $this->error = $this->db->error(); return null; } @@ -1493,8 +1463,7 @@ abstract class CommonObject } return $result; - } else - return -1; + } else return -1; } @@ -1564,9 +1533,7 @@ abstract class CommonObject $this->barcode_type_label = $obj->label; $this->barcode_type_coder = $obj->coder; return 1; - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -1773,9 +1740,7 @@ abstract class CommonObject if (empty($this->fields) && method_exists($this, 'fetch')) { $result = $this->fetch($id); - } - else - { + } else { $result = $this->fetchCommon($id); } if ($result >= 0) $result = $this->call_trigger($trigkey, (!empty($fuser) && is_object($fuser)) ? $fuser : $user); // This may set this->errors @@ -1787,15 +1752,11 @@ abstract class CommonObject if (property_exists($this, $field)) $this->$field = $value; $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -2; } - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -1; @@ -1840,8 +1801,7 @@ abstract class CommonObject if (isset($this->ismultientitymanaged) && !is_numeric($this->ismultientitymanaged)) { $tmparray = explode('@', $this->ismultientitymanaged); $sql .= ", ".MAIN_DB_PREFIX.$tmparray[1]." as ".($tmparray[1] == 'societe' ? 's' : 'parenttable'); // If we need to link to this table to limit select to entity - } - elseif ($this->restrictiononfksoc == 1 && $this->element != 'societe' && !$user->rights->societe->client->voir && !$socid) $sql .= ", ".MAIN_DB_PREFIX."societe as s"; // If we need to link to societe to limit select to socid + } elseif ($this->restrictiononfksoc == 1 && $this->element != 'societe' && !$user->rights->societe->client->voir && !$socid) $sql .= ", ".MAIN_DB_PREFIX."societe as s"; // If we need to link to societe to limit select to socid elseif ($this->restrictiononfksoc == 2 && $this->element != 'societe' && !$user->rights->societe->client->voir && !$socid) $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."societe as s ON te.fk_soc = s.rowid"; // If we need to link to societe to limit select to socid if ($this->restrictiononfksoc && !$user->rights->societe->client->voir && !$socid) $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."societe_commerciaux as sc ON ".$aliastablesociete.".rowid = sc.fk_soc"; $sql .= " WHERE te.".$fieldid." < '".$this->db->escape($this->ref)."'"; // ->ref must always be defined (set to id if field does not exists) @@ -1855,8 +1815,7 @@ abstract class CommonObject if (isset($this->ismultientitymanaged) && !is_numeric($this->ismultientitymanaged)) { $tmparray = explode('@', $this->ismultientitymanaged); $sql .= ' AND te.'.$tmparray[0].' = '.($tmparray[1] == 'societe' ? 's' : 'parenttable').'.rowid'; // If we need to link to this table to limit select to entity - } - elseif ($this->restrictiononfksoc == 1 && $this->element != 'societe' && !$user->rights->societe->client->voir && !$socid) $sql .= ' AND te.fk_soc = s.rowid'; // If we need to link to societe to limit select to socid + } elseif ($this->restrictiononfksoc == 1 && $this->element != 'societe' && !$user->rights->societe->client->voir && !$socid) $sql .= ' AND te.fk_soc = s.rowid'; // If we need to link to societe to limit select to socid if (isset($this->ismultientitymanaged) && $this->ismultientitymanaged == 1) { if ($this->element == 'user' && !empty($conf->global->MULTICOMPANY_TRANSVERSE_MODE)) { if (!empty($user->admin) && empty($user->entity) && $conf->entity == 1) { @@ -1954,7 +1913,7 @@ abstract class CommonObject while ($i < $num) { if ($source == 'thirdparty') $contactAlreadySelected[$i] = $tab[$i]['socid']; - else $contactAlreadySelected[$i] = $tab[$i]['id']; + else $contactAlreadySelected[$i] = $tab[$i]['id']; $i++; } return $contactAlreadySelected; @@ -1981,14 +1940,12 @@ abstract class CommonObject if ($projectid) $sql .= ' SET fk_project = '.$projectid; else $sql .= ' SET fk_project = NULL'; $sql .= ' WHERE rowid = '.$this->id; - } - elseif ($this->table_element == 'actioncomm') // Special case for actioncomm + } elseif ($this->table_element == 'actioncomm') // Special case for actioncomm { if ($projectid) $sql .= ' SET fk_project = '.$projectid; else $sql .= ' SET fk_project = NULL'; $sql .= ' WHERE id = '.$this->id; - } - else // Special case for old architecture objects + } else // Special case for old architecture objects { if ($projectid) $sql .= ' SET fk_projet = '.$projectid; else $sql .= ' SET fk_projet = NULL'; @@ -2000,9 +1957,7 @@ abstract class CommonObject { $this->fk_project = $projectid; return 1; - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -2034,16 +1989,12 @@ abstract class CommonObject // for supplier if (get_class($this) == 'Fournisseur') $this->mode_reglement_supplier_id = $id; return 1; - } - else - { + } else { dol_syslog(get_class($this).'::setPaymentMethods Erreur '.$sql.' - '.$this->db->error()); $this->error = $this->db->error(); return -1; } - } - else - { + } else { dol_syslog(get_class($this).'::setPaymentMethods, status of the object is incompatible'); $this->error = 'Status of the object is incompatible '.$this->statut; return -2; @@ -2075,16 +2026,12 @@ abstract class CommonObject if ($rate) $this->setMulticurrencyRate($rate, 2); return 1; - } - else - { + } else { dol_syslog(get_class($this).'::setMulticurrencyCode Erreur '.$sql.' - '.$this->db->error()); $this->error = $this->db->error(); return -1; } - } - else - { + } else { dol_syslog(get_class($this).'::setMulticurrencyCode, status of the object is incompatible'); $this->error = 'Status of the object is incompatible '.$this->statut; return -2; @@ -2183,16 +2130,12 @@ abstract class CommonObject } return 1; - } - else - { + } else { dol_syslog(get_class($this).'::setMulticurrencyRate Erreur '.$sql.' - '.$this->db->error()); $this->error = $this->db->error(); return -1; } - } - else - { + } else { dol_syslog(get_class($this).'::setMulticurrencyRate, status of the object is incompatible'); $this->error = 'Status of the object is incompatible '.$this->statut; return -2; @@ -2226,16 +2169,12 @@ abstract class CommonObject if (get_class($this) == 'Fournisseur') $this->cond_reglement_supplier_id = $id; $this->cond_reglement = $id; // for compatibility return 1; - } - else - { + } else { dol_syslog(get_class($this).'::setPaymentTerms Erreur '.$sql.' - '.$this->db->error()); $this->error = $this->db->error(); return -1; } - } - else - { + } else { dol_syslog(get_class($this).'::setPaymentTerms, status of the object is incompatible'); $this->error = 'Status of the object is incompatible '.$this->statut; return -2; @@ -2264,16 +2203,12 @@ abstract class CommonObject { $this->retained_warranty_fk_cond_reglement = $id; return 1; - } - else - { + } else { dol_syslog(get_class($this).'::setRetainedWarrantyPaymentTerms Erreur '.$sql.' - '.$this->db->error()); $this->error = $this->db->error(); return -1; } - } - else - { + } else { dol_syslog(get_class($this).'::setRetainedWarrantyPaymentTerms, status of the object is incompatible'); $this->error = 'Status of the object is incompatible '.$this->statut; return -2; @@ -2299,9 +2234,7 @@ abstract class CommonObject { $this->fk_delivery_address = $id; return 1; - } - else - { + } else { $this->error = $this->db->error(); dol_syslog(get_class($this).'::setDeliveryAddress Erreur '.$sql.' - '.$this->error); return -1; @@ -2425,9 +2358,7 @@ abstract class CommonObject { $this->modelpdf = $modelpdf; return 1; - } - else - { + } else { dol_print_error($this->db); return 0; } @@ -2469,9 +2400,7 @@ abstract class CommonObject dol_syslog(get_class($this).'::setBankAccount Error '.$sql.' - '.$this->db->error()); $this->error = $this->db->lasterror(); $error++; - } - else - { + } else { if (!$notrigger) { // Call trigger @@ -2485,9 +2414,7 @@ abstract class CommonObject { $this->db->rollback(); return -1; - } - else - { + } else { $this->fk_account = ($fk_account == 'NULL') ?null:$fk_account; $this->db->commit(); return 1; @@ -2534,8 +2461,7 @@ abstract class CommonObject { $row = $this->db->fetch_row($resql); $nl = $row[0]; - } - else dol_print_error($this->db); + } else dol_print_error($this->db); if ($nl > 0) { // The goal of this part is to reorder all lines, with all children lines sharing the same @@ -2577,9 +2503,7 @@ abstract class CommonObject $this->updateRangOfLine($row, ($key + 1)); } } - } - else - { + } else { dol_print_error($this->db); } } @@ -2725,9 +2649,7 @@ abstract class CommonObject { dol_print_error($this->db); } - } - else - { + } else { dol_print_error($this->db); } } @@ -2759,9 +2681,7 @@ abstract class CommonObject { dol_print_error($this->db); } - } - else - { + } else { dol_print_error($this->db); } } @@ -2834,16 +2754,13 @@ abstract class CommonObject if (!empty($row[0])) { return $row[0]; - } - else - { + } else { return $this->getRangOfLine($fk_parent_line); } } } // If not, search the last rang of element - else - { + else { $sql = 'SELECT max('.$positionfield.') FROM '.MAIN_DB_PREFIX.$this->table_element_line; $sql .= ' WHERE '.$this->fk_element.' = '.$this->id; @@ -2882,9 +2799,7 @@ abstract class CommonObject { $this->ref_ext = $ref_ext; return 1; - } - else - { + } else { $this->error = $this->db->error(); return -1; } @@ -2929,15 +2844,12 @@ abstract class CommonObject { if ($suffix == '_public') $this->note_public = $note; elseif ($suffix == '_private') $this->note_private = $note; - else - { + else { $this->note = $note; // deprecated $this->note_private = $note; } return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -2974,6 +2886,14 @@ abstract class CommonObject // phpcs:enable global $conf, $hookmanager, $action; + $parameters = array('exclspec' => $exclspec, 'roundingadjust' => $roundingadjust, 'nodatabaseupdate' => $nodatabaseupdate, 'seller' => $seller); + $reshook = $hookmanager->executeHooks('updateTotalPrice', $parameters, $this, $action); // Note that $action and $object may have been modified by some hooks + if ($reshook > 0) { + return 1; // replacement code + } elseif ($reshook < 0) { + return -1; // failure + } // reshook = 0 => execute normal code + // Some external module want no update price after a trigger because they have another method to calculate the total (ex: with an extrafield) $MODULE = ""; if ($this->element == 'propal') @@ -3028,8 +2948,8 @@ abstract class CommonObject $sql = 'SELECT rowid, qty, '.$fieldup.' as up, remise_percent, total_ht, '.$fieldtva.' as total_tva, total_ttc, '.$fieldlocaltax1.' as total_localtax1, '.$fieldlocaltax2.' as total_localtax2,'; $sql .= ' tva_tx as vatrate, localtax1_tx, localtax2_tx, localtax1_type, localtax2_type, info_bits, product_type'; - if ($this->table_element_line == 'facturedet') $sql .= ', situation_percent'; - $sql .= ', multicurrency_total_ht, multicurrency_total_tva, multicurrency_total_ttc'; + if ($this->table_element_line == 'facturedet') $sql .= ', situation_percent'; + $sql .= ', multicurrency_total_ht, multicurrency_total_tva, multicurrency_total_ttc'; $sql .= ' FROM '.MAIN_DB_PREFIX.$this->table_element_line; $sql .= ' WHERE '.$this->fk_element.' = '.$this->id; if ($exclspec) @@ -3068,18 +2988,23 @@ abstract class CommonObject if (empty($reshook) && $forcedroundingmode == '0') // Check if data on line are consistent. This may solve lines that were not consistent because set with $forcedroundingmode='auto' { + // This part of code is to fix data. We should not call it too often. $localtax_array = array($obj->localtax1_type, $obj->localtax1_tx, $obj->localtax2_type, $obj->localtax2_tx); $tmpcal = calcul_price_total($obj->qty, $obj->up, $obj->remise_percent, $obj->vatrate, $obj->localtax1_tx, $obj->localtax2_tx, 0, 'HT', $obj->info_bits, $obj->product_type, $seller, $localtax_array, (isset($obj->situation_percent) ? $obj->situation_percent : 100), $multicurrency_tx); - $diff = price2num($tmpcal[1] - $obj->total_tva, 'MT', 1); - if ($diff) + + $diff_when_using_price_ht = price2num($tmpcal[1] - $obj->total_tva, 'MT', 1); // If price was set with tax price adn unit price HT has a low number of digits, then we may have a diff on recalculation from unit price HT. + $diff_on_current_total = price2num($obj->total_ttc - $obj->total_ht - $obj->total_tva - $obj->total_localtax1 - $obj->total_localtax2, 'MT', 1); + //var_dump($obj->total_ht.' '.$obj->total_tva.' '.$obj->total_localtax1.' '.$obj->total_localtax2.' =? '.$obj->total_ttc); + //var_dump($diff_when_using_price_ht.' '.$diff_on_current_total); + + if ($diff_when_using_price_ht && $diff_on_current_total) { $sqlfix = "UPDATE ".MAIN_DB_PREFIX.$this->table_element_line." SET ".$fieldtva." = ".$tmpcal[1].", total_ttc = ".$tmpcal[2]." WHERE rowid = ".$obj->rowid; - dol_syslog('We found unconsistent data into detailed line (difference of '.$diff.') for line rowid = '.$obj->rowid." (total vat of line calculated=".$tmpcal[1].", database=".$obj->total_tva."). We fix the total_vat and total_ttc of line by running sqlfix = ".$sqlfix); - $resqlfix = $this->db->query($sqlfix); - if (!$resqlfix) dol_print_error($this->db, 'Failed to update line'); - $obj->total_tva = $tmpcal[1]; - $obj->total_ttc = $tmpcal[2]; - // + dol_syslog('We found unconsistent data into detailed line (diff_when_using_price_ht = '.$diff_when_using_price_ht.' and diff_on_current_total = '.$diff_on_current_total.') for line rowid = '.$obj->rowid." (total vat of line calculated=".$tmpcal[1].", database=".$obj->total_tva."). We fix the total_vat and total_ttc of line by running sqlfix = ".$sqlfix, LOG_WARNING); + $resqlfix = $this->db->query($sqlfix); + if (!$resqlfix) dol_print_error($this->db, 'Failed to update line'); + $obj->total_tva = $tmpcal[1]; + $obj->total_ttc = $tmpcal[2]; } } @@ -3184,14 +3109,10 @@ abstract class CommonObject if (!$error) { return 1; - } - else - { + } else { return -1; } - } - else - { + } else { dol_print_error($this->db, 'Bad request in update_price'); return -1; } @@ -3236,9 +3157,7 @@ abstract class CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return 0; @@ -3311,15 +3230,12 @@ abstract class CommonObject { $sql .= "fk_source = ".$sourceid." AND sourcetype = '".$sourcetype."'"; if ($withtargettype) $sql .= " AND targettype = '".$targettype."'"; - } - elseif ($justtarget) + } elseif ($justtarget) { $sql .= "fk_target = ".$targetid." AND targettype = '".$targettype."'"; if ($withsourcetype) $sql .= " AND sourcetype = '".$sourcetype."'"; } - } - else - { + } else { $sql .= "(fk_source = ".$sourceid." AND sourcetype = '".$sourcetype."')"; $sql .= " ".$clause." (fk_target = ".$targetid." AND targettype = '".$targettype."')"; } @@ -3339,14 +3255,11 @@ abstract class CommonObject if ($justsource) { $this->linkedObjectsIds[$obj->targettype][$obj->rowid] = $obj->fk_target; - } - elseif ($justtarget) + } elseif ($justtarget) { $this->linkedObjectsIds[$obj->sourcetype][$obj->rowid] = $obj->fk_source; } - } - else - { + } else { if ($obj->fk_source == $sourceid && $obj->sourcetype == $sourcetype) { $this->linkedObjectsIds[$obj->targettype][$obj->rowid] = $obj->fk_target; @@ -3377,32 +3290,23 @@ abstract class CommonObject // To work with non standard classpath or module name if ($objecttype == 'facture') { $classpath = 'compta/facture/class'; - } - elseif ($objecttype == 'facturerec') { + } elseif ($objecttype == 'facturerec') { $classpath = 'compta/facture/class'; $module = 'facture'; - } - elseif ($objecttype == 'propal') { + } elseif ($objecttype == 'propal') { $classpath = 'comm/propal/class'; - } - elseif ($objecttype == 'supplier_proposal') { + } elseif ($objecttype == 'supplier_proposal') { $classpath = 'supplier_proposal/class'; - } - elseif ($objecttype == 'shipping') { + } elseif ($objecttype == 'shipping') { $classpath = 'expedition/class'; $subelement = 'expedition'; $module = 'expedition_bon'; - } - elseif ($objecttype == 'delivery') { + } elseif ($objecttype == 'delivery') { $classpath = 'livraison/class'; $subelement = 'livraison'; $module = 'livraison_bon'; - } - elseif ($objecttype == 'invoice_supplier' || $objecttype == 'order_supplier') { + } elseif ($objecttype == 'invoice_supplier' || $objecttype == 'order_supplier') { $classpath = 'fourn/class'; $module = 'fournisseur'; - } - elseif ($objecttype == 'fichinter') { + } elseif ($objecttype == 'fichinter') { $classpath = 'fichinter/class'; $subelement = 'fichinter'; $module = 'ficheinter'; - } - elseif ($objecttype == 'subscription') { + } elseif ($objecttype == 'subscription') { $classpath = 'adherents/class'; $module = 'adherent'; - } - elseif ($objecttype == 'contact') { + } elseif ($objecttype == 'contact') { $module = 'societe'; } @@ -3411,23 +3315,17 @@ abstract class CommonObject if ($objecttype == 'order') { $classfile = 'commande'; $classname = 'Commande'; - } - elseif ($objecttype == 'invoice_supplier') { + } elseif ($objecttype == 'invoice_supplier') { $classfile = 'fournisseur.facture'; $classname = 'FactureFournisseur'; - } - elseif ($objecttype == 'order_supplier') { + } elseif ($objecttype == 'order_supplier') { $classfile = 'fournisseur.commande'; $classname = 'CommandeFournisseur'; - } - elseif ($objecttype == 'supplier_proposal') { + } elseif ($objecttype == 'supplier_proposal') { $classfile = 'supplier_proposal'; $classname = 'SupplierProposal'; - } - elseif ($objecttype == 'facturerec') { + } elseif ($objecttype == 'facturerec') { $classfile = 'facture-rec'; $classname = 'FactureRec'; - } - elseif ($objecttype == 'subscription') { + } elseif ($objecttype == 'subscription') { $classfile = 'subscription'; $classname = 'Subscription'; - } - elseif ($objecttype == 'project' || $objecttype == 'projet') { + } elseif ($objecttype == 'project' || $objecttype == 'projet') { $classpath = 'projet/class'; $classfile = 'project'; $classname = 'Project'; } @@ -3451,17 +3349,13 @@ abstract class CommonObject } } } - } - else - { + } else { unset($this->linkedObjectsIds[$objecttype]); } } } return 1; - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -3492,8 +3386,7 @@ abstract class CommonObject $sql .= ", sourcetype = '".$this->db->escape($sourcetype)."'"; $sql .= " WHERE fk_target = ".$this->id; $sql .= " AND targettype = '".$this->db->escape($this->element)."'"; - } - elseif ($updatetarget) + } elseif ($updatetarget) { $sql .= "fk_target = ".$targetid; $sql .= ", targettype = '".$this->db->escape($targettype)."'"; @@ -3505,9 +3398,7 @@ abstract class CommonObject if ($this->db->query($sql)) { return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -3542,21 +3433,16 @@ abstract class CommonObject if ($rowid > 0) { $sql .= " rowid = ".$rowid; - } - else - { + } else { if ($deletesource) { $sql .= " fk_source = ".$sourceid." AND sourcetype = '".$this->db->escape($sourcetype)."'"; $sql .= " AND fk_target = ".$this->id." AND targettype = '".$this->db->escape($this->element)."'"; - } - elseif ($deletetarget) + } elseif ($deletetarget) { $sql .= " fk_target = ".$targetid." AND targettype = '".$this->db->escape($targettype)."'"; $sql .= " AND fk_source = ".$this->id." AND sourcetype = '".$this->db->escape($this->element)."'"; - } - else - { + } else { $sql .= " (fk_source = ".$this->id." AND sourcetype = '".$this->db->escape($this->element)."')"; $sql .= " OR"; $sql .= " (fk_target = ".$this->id." AND targettype = '".$this->db->escape($this->element)."')"; @@ -3567,9 +3453,7 @@ abstract class CommonObject if ($this->db->query($sql)) { return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); $this->errors[] = $this->error; return -1; @@ -3646,16 +3530,12 @@ abstract class CommonObject } return 1; - } - else - { + } else { $this->db->rollback(); dol_syslog(get_class($this)."::setStatut ".$this->error, LOG_ERR); return -1; } - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -1; @@ -3694,11 +3574,8 @@ abstract class CommonObject { $this->canvas = $obj->canvas; return 1; - } - else return 0; - } - else - { + } else return 0; + } else { dol_print_error($this->db); return -1; } @@ -3771,16 +3648,13 @@ abstract class CommonObject if (is_numeric($elementname)) // old usage { $this->errors[] = $langs->trans("ErrorRecordHasAtLeastOneChildOfType", $table); - } - else // new usage: $elementname=Translation key + } else // new usage: $elementname=Translation key { $this->errors[] = $langs->trans("ErrorRecordHasAtLeastOneChildOfType", $langs->transnoentitiesnoconv($elementname)); } break; // We found at least one, we stop here } - } - else - { + } else { $this->errors[] = $this->db->lasterror(); return -1; } @@ -3789,8 +3663,7 @@ abstract class CommonObject { $this->errors[] = "ErrorRecordHasChildren"; return $haschild; - } - else return 0; + } else return 0; } /** @@ -3882,8 +3755,7 @@ abstract class CommonObject { if (empty($totalToShip)) $totalToShip = 0; // Avoid warning because $totalToShip is '' $totalToShip += $line->qty_shipped; // defined for shipment only - } - elseif ($line->element == 'commandefournisseurdispatch' && isset($line->qty)) + } elseif ($line->element == 'commandefournisseurdispatch' && isset($line->qty)) { if (empty($totalToShip)) $totalToShip = 0; $totalToShip += $line->qty; // defined for reception only @@ -3893,8 +3765,7 @@ abstract class CommonObject if ($this->element == 'shipping') { // for shipments $qty = $line->qty_shipped ? $line->qty_shipped : 0; - } - else { + } else { $qty = $line->qty ? $line->qty : 0; } @@ -3921,8 +3792,7 @@ abstract class CommonObject { $trueWeightUnit = pow(10, $weightUnit); $totalWeight += $weight * $qty * $trueWeightUnit; - } - else { + } else { if ($weight_units == 99) { // conversion 1 Pound = 0.45359237 KG $trueWeightUnit = 0.45359237; @@ -3931,8 +3801,7 @@ abstract class CommonObject // conversion 1 Ounce = 0.0283495 KG $trueWeightUnit = 0.0283495; $totalWeight += $weight * $qty * $trueWeightUnit; - } - else { + } else { $totalWeight += $weight * $qty; // This may be wrong if we mix different units } } @@ -3942,9 +3811,7 @@ abstract class CommonObject $trueVolumeUnit = pow(10, $volumeUnit); //print $line->volume; $totalVolume += $volume * $qty * $trueVolumeUnit; - } - else - { + } else { $totalVolume += $volume * $qty; // This may be wrong if we mix different units } } @@ -3975,9 +3842,7 @@ abstract class CommonObject $this->error = $this->db->lasterror(); $this->db->rollback(); return -1; - } - else - { + } else { $this->db->commit(); return 1; } @@ -4028,14 +3893,10 @@ abstract class CommonObject { $res = $this->db->fetch_object($resql); return 'Incoterm : '.$res->code.' - '.$this->location_incoterms; - } - else - { + } else { return ''; } - } - else - { + } else { $this->errors[] = $this->db->lasterror(); return false; } @@ -4071,14 +3932,11 @@ abstract class CommonObject $this->label_incoterms = $obj->libelle; } return 1; - } - else - { + } else { $this->errors[] = $this->db->lasterror(); return -1; } - } - else return -1; + } else return -1; } @@ -4119,9 +3977,7 @@ abstract class CommonObject if (!empty($module)) { $tpl = dol_buildpath($reldir.'/objectline_create.tpl.php'); - } - else - { + } else { $tpl = DOL_DOCUMENT_ROOT.$reldir.'/objectline_create.tpl.php'; } @@ -4186,9 +4042,7 @@ abstract class CommonObject if (!empty($module)) { $tpl = dol_buildpath($reldir.'/objectline_title.tpl.php'); - } - else - { + } else { $tpl = DOL_DOCUMENT_ROOT.$reldir.'/objectline_title.tpl.php'; } if (empty($conf->file->strict_mode)) { @@ -4215,9 +4069,7 @@ abstract class CommonObject { $parameters = array('line'=>$line, 'num'=>$num, 'i'=>$i, 'dateSelector'=>$dateSelector, 'seller'=>$seller, 'buyer'=>$buyer, 'selected'=>$selected, 'table_element_line'=>$line->table_element); $reshook = $hookmanager->executeHooks('printObjectLine', $parameters, $this, $action); // Note that $action and $object may have been modified by some hooks - } - else - { + } else { $parameters = array('line'=>$line, 'num'=>$num, 'i'=>$i, 'dateSelector'=>$dateSelector, 'seller'=>$seller, 'buyer'=>$buyer, 'selected'=>$selected, 'table_element_line'=>$line->table_element, 'fk_parent_line'=>$line->fk_parent_line); $reshook = $hookmanager->executeHooks('printObjectSubLine', $parameters, $this, $action); // Note that $action and $object may have been modified by some hooks } @@ -4298,9 +4150,7 @@ abstract class CommonObject } $label = (!empty($prod->multilangs[$outputlangs->defaultlang]["label"])) ? $prod->multilangs[$outputlangs->defaultlang]["label"] : $line->product_label; - } - else - { + } else { $label = $line->product_label; } @@ -4319,9 +4169,7 @@ abstract class CommonObject if (!empty($module)) { $tpl = dol_buildpath($reldir.'/objectline_view.tpl.php'); - } - else - { + } else { $tpl = DOL_DOCUMENT_ROOT.$reldir.'/objectline_view.tpl.php'; } @@ -4350,9 +4198,7 @@ abstract class CommonObject if (!empty($module)) { $tpl = dol_buildpath($reldir.'/objectline_edit.tpl.php'); - } - else - { + } else { $tpl = DOL_DOCUMENT_ROOT.$reldir.'/objectline_edit.tpl.php'; } @@ -4412,9 +4258,7 @@ abstract class CommonObject $action = ''; $hookmanager->executeHooks('printOriginObjectLine', $parameters, $this, $action); // Note that $action and $object may have been modified by some hooks } - } - else - { + } else { $this->printOriginLine($line, '', $restrictlist, '/core/tpl', $selectedLines); } @@ -4444,18 +4288,14 @@ abstract class CommonObject if (!empty($line->date_start)) { $date_start = $line->date_start; - } - else - { + } else { $date_start = $line->date_debut_prevue; if ($line->date_debut_reel) $date_start = $line->date_debut_reel; } if (!empty($line->date_end)) { $date_end = $line->date_end; - } - else - { + } else { $date_end = $line->date_fin_prevue; if ($line->date_fin_reel) $date_end = $line->date_fin_reel; } @@ -4470,8 +4310,7 @@ abstract class CommonObject $discount = new DiscountAbsolute($this->db); $discount->fk_soc = $this->socid; $this->tpl['label'] .= $discount->getNomUrl(0, 'discount'); - } - elseif (!empty($line->fk_product)) + } elseif (!empty($line->fk_product)) { $productstatic = new Product($this->db); $productstatic->id = $line->fk_product; @@ -4489,9 +4328,7 @@ abstract class CommonObject { $this->tpl['label'] .= get_date_range($date_start, $date_end); } - } - else - { + } else { $this->tpl['label'] .= ($line->product_type == -1 ? ' ' : ($line->product_type == 1 ? img_object($langs->trans(''), 'service') : img_object($langs->trans(''), 'product'))); if (!empty($line->desc)) { $this->tpl['label'] .= $line->desc; @@ -4513,32 +4350,25 @@ abstract class CommonObject $discount = new DiscountAbsolute($this->db); $discount->fetch($line->fk_remise_except); $this->tpl['description'] = $langs->transnoentities("DiscountFromCreditNote", $discount->getNomUrl(0)); - } - elseif ($line->desc == '(DEPOSIT)') // TODO Not sure this is used for source object + } elseif ($line->desc == '(DEPOSIT)') // TODO Not sure this is used for source object { $discount = new DiscountAbsolute($this->db); $discount->fetch($line->fk_remise_except); $this->tpl['description'] = $langs->transnoentities("DiscountFromDeposit", $discount->getNomUrl(0)); - } - elseif ($line->desc == '(EXCESS RECEIVED)') + } elseif ($line->desc == '(EXCESS RECEIVED)') { $discount = new DiscountAbsolute($this->db); $discount->fetch($line->fk_remise_except); $this->tpl['description'] = $langs->transnoentities("DiscountFromExcessReceived", $discount->getNomUrl(0)); - } - elseif ($line->desc == '(EXCESS PAID)') + } elseif ($line->desc == '(EXCESS PAID)') { $discount = new DiscountAbsolute($this->db); $discount->fetch($line->fk_remise_except); $this->tpl['description'] = $langs->transnoentities("DiscountFromExcessPaid", $discount->getNomUrl(0)); - } - else - { + } else { $this->tpl['description'] = dol_trunc($line->desc, 60); } - } - else - { + } else { $this->tpl['description'] = ' '; } @@ -4565,9 +4395,7 @@ abstract class CommonObject if (!empty($module)) { $tpl = dol_buildpath($reldir.'/originproductline.tpl.php'); - } - else - { + } else { $tpl = DOL_DOCUMENT_ROOT.$reldir.'/originproductline.tpl.php'; } @@ -4618,9 +4446,7 @@ abstract class CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return 0; @@ -4654,9 +4480,7 @@ abstract class CommonObject $this->error = $this->db->lasterror(); $this->db->rollback(); return -1; - } - else - { + } else { if (!$notrigger) { $result = $this->call_trigger(strtoupper($element).'_DELETE_RESOURCE', $user); @@ -4819,9 +4643,7 @@ abstract class CommonObject { $arrayofrecords = array(); // The write_file of templates of adherent class need this var $resultwritefile = $obj->write_file($this, $outputlangs, $srctemplatepath, 'member', 1, $moreparams); - } - else - { + } else { $resultwritefile = $obj->write_file($this, $outputlangs, $srctemplatepath, $hidedetails, $hidedesc, $hideref, $moreparams); } // After call of write_file $obj->result['fullpath'] is set with generated file. It will be used to update the ECM database index. @@ -4889,9 +4711,7 @@ abstract class CommonObject if ($result < 0) { setEventMessages($ecmfile->error, $ecmfile->errors, 'warnings'); } - } - else - { + } else { $ecmfile->entity = $conf->entity; $ecmfile->filepath = $rel_dir; $ecmfile->filename = $filename; @@ -4930,9 +4750,7 @@ abstract class CommonObject } } } - } - else - { + } else { dol_syslog('Method ->write_file was called on object '.get_class($obj).' and return a success but the return array ->result["fullpath"] was not set.', LOG_WARNING); } @@ -4940,22 +4758,17 @@ abstract class CommonObject dol_meta_create($this); return 1; - } - else - { + } else { $outputlangs->charset_output = $sav_charset_output; dol_print_error($this->db, "Error generating document for ".__CLASS__.". Error: ".$obj->error, $obj->errors); return -1; } - } - else - { + } else { $this->error = $langs->trans("Error")." ".$langs->trans("ErrorFileDoesNotExists", $file); dol_print_error('', $this->error); return -1; } - } - else return $reshook; + } else return $reshook; } /** @@ -5060,9 +4873,7 @@ abstract class CommonObject if (!empty($this->errors)) { $this->errors = array_unique(array_merge($this->errors, $interface->errors)); // We use array_unique because when a trigger call another trigger on same object, this->errors is added twice. - } - else - { + } else { $this->errors = $interface->errors; } } @@ -5123,9 +4934,7 @@ abstract class CommonObject if (preg_match('/date/', $type)) { $this->array_languages[$key][$codelang] = $this->db->jdate($value); - } - else - { + } else { $this->array_languages[$key][$codelang] = $value; } @@ -5137,9 +4946,7 @@ abstract class CommonObject if ($numrows) return $numrows; else return 0; - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -5188,14 +4995,12 @@ abstract class CommonObject // Clean parameters // TODO GMT date in memory must be GMT so we should add gm=true in parameters $value_key = dol_mktime(0, 0, 0, $_POST[$postfieldkey."month"], $_POST[$postfieldkey."day"], $_POST[$postfieldkey."year"]); - } - elseif (in_array($key_type, array('datetime'))) + } elseif (in_array($key_type, array('datetime'))) { // Clean parameters // TODO GMT date in memory must be GMT so we should add gm=true in parameters $value_key = dol_mktime($_POST[$postfieldkey."hour"], $_POST[$postfieldkey."min"], 0, $_POST[$postfieldkey."month"], $_POST[$postfieldkey."day"], $_POST[$postfieldkey."year"]); - } - elseif (in_array($key_type, array('checkbox', 'chkbxlst'))) + } elseif (in_array($key_type, array('checkbox', 'chkbxlst'))) { $value_arr = GETPOST($postfieldkey, 'array'); // check if an array if (!empty($value_arr)) { @@ -5203,14 +5008,11 @@ abstract class CommonObject } else { $value_key = ''; } - } - elseif (in_array($key_type, array('price', 'double'))) + } elseif (in_array($key_type, array('price', 'double'))) { $value_arr = GETPOST($postfieldkey, 'alpha'); $value_key = price2num($value_arr); - } - else - { + } else { $value_key = GETPOST($postfieldkey); if (in_array($key_type, array('link')) && $value_key == '-1') $value_key = ''; } @@ -5230,6 +5032,25 @@ abstract class CommonObject /* Functions for extrafields */ + /** + * Function to make a fetch but set environment to avoid to load computed values before. + * + * @param int $id ID of object + * @return int >0 if OK, 0 if not found, <0 if KO + */ + public function fetchNoCompute($id) + { + global $conf; + + $savDisableCompute = $conf->disable_compute; + $conf->disable_compute = 1; + + $ret = $this->fetch($id); + + $conf->disable_compute = $savDisableCompute; + + return $ret; + } // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps /** @@ -5244,7 +5065,7 @@ abstract class CommonObject public function fetch_optionals($rowid = null, $optionsArray = null) { // phpcs:enable - global $extrafields; + global $conf, $extrafields; if (empty($rowid)) $rowid = $this->id; if (empty($rowid)) $rowid = $this->rowid; @@ -5271,9 +5092,7 @@ abstract class CommonObject $extrafields->fetch_name_optionals_label($this->table_element); } $optionsArray = (!empty($extrafields->attributes[$this->table_element]['label']) ? $extrafields->attributes[$this->table_element]['label'] : null); - } - else - { + } else { global $extrafields; dol_syslog("Warning: fetch_optionals was called with param optionsArray defined when you should pass null now", LOG_WARNING); } @@ -5314,9 +5133,7 @@ abstract class CommonObject { //var_dump($extrafields->attributes[$this->table_element]['type'][$key]); $this->array_options["options_".$key] = $this->db->jdate($value); - } - else - { + } else { $this->array_options["options_".$key] = $value; } @@ -5328,7 +5145,10 @@ abstract class CommonObject foreach ($tab as $key => $value) { if (!empty($extrafields) && !empty($extrafields->attributes[$this->table_element]['computed'][$key])) { - $this->array_options["options_".$key] = dol_eval($extrafields->attributes[$this->table_element]['computed'][$key], 1, 0); + //var_dump($conf->disable_compute); + if (empty($conf->disable_compute)) { + $this->array_options["options_".$key] = dol_eval($extrafields->attributes[$this->table_element]['computed'][$key], 1, 0); + } } } } @@ -5337,9 +5157,7 @@ abstract class CommonObject if ($numrows) return $numrows; else return 0; - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -5351,9 +5169,14 @@ abstract class CommonObject * Delete all extra fields values for the current object. * * @return int <0 if KO, >0 if OK + * @see deleteExtraLanguages(), insertExtraField(), updateExtraField(), setValueFrom() */ public function deleteExtraFields() { + global $conf; + + if (!empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) return 0; + $this->db->begin(); $table_element = $this->table_element; @@ -5367,9 +5190,7 @@ abstract class CommonObject $this->error = $this->db->lasterror(); $this->db->rollback(); return -1; - } - else - { + } else { $this->db->commit(); return 1; } @@ -5383,18 +5204,18 @@ abstract class CommonObject * @param string $trigger If defined, call also the trigger (for example COMPANY_MODIFY) * @param User $userused Object user * @return int -1=error, O=did nothing, 1=OK - * @see insertExtraLanguages(), updateExtraField(), setValueFrom() + * @see insertExtraLanguages(), updateExtraField(), deleteExtraField(), setValueFrom() */ public function insertExtraFields($trigger = '', $userused = null) { global $conf, $langs, $user; + if (!empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) return 0; + if (empty($userused)) $userused = $user; $error = 0; - if (!empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) return 0; // For avoid conflicts if trigger used - if (!empty($this->array_options)) { // Check parameters @@ -5444,9 +5265,7 @@ abstract class CommonObject $value = dol_eval($attrfieldcomputed, 1, 0); dol_syslog($langs->trans("Extrafieldcomputed")." sur ".$attributeLabel."(".$value.")", LOG_DEBUG); $new_array_options[$key] = $value; - } - else - { + } else { $new_array_options[$key] = null; } } @@ -5458,8 +5277,7 @@ abstract class CommonObject { $this->errors[] = $langs->trans("ExtraFieldHasWrongValue", $attributeLabel); return -1; - } - elseif ($value == '') + } elseif ($value == '') { $new_array_options[$key] = null; } @@ -5471,8 +5289,7 @@ abstract class CommonObject dol_syslog($langs->trans("ExtraFieldHasWrongValue")." sur ".$attributeLabel."(".$value."is not '".$attributeType."')", LOG_DEBUG); $this->errors[] = $langs->trans("ExtraFieldHasWrongValue", $attributeLabel); return -1; - } - elseif ($value == '') + } elseif ($value == '') { $new_array_options[$key] = null; } @@ -5503,21 +5320,16 @@ abstract class CommonObject if ($this->array_options[$key] == $this->oldcopy->array_options[$key]) // If old value crypted in database is same than submited new value, it means we don't change it, so we don't update. { $new_array_options[$key] = $this->array_options[$key]; // Value is kept - } - else - { + } else { // var_dump($algo); $newvalue = dol_hash($this->array_options[$key], $algo); $new_array_options[$key] = $newvalue; } - } - else - { + } else { $new_array_options[$key] = $this->array_options[$key]; // Value is kept } } - } - else // Common usage + } else // Common usage { $new_array_options[$key] = $this->array_options[$key]; } @@ -5544,24 +5356,20 @@ abstract class CommonObject if ($value == '-1') // -1 is key for no defined in combo list of objects { $new_array_options[$key] = ''; - } - elseif ($value) + } elseif ($value) { $object = new $InfoFieldList[0]($this->db); if (is_numeric($value)) $res = $object->fetch($value); else $res = $object->fetch('', $value); if ($res > 0) $new_array_options[$key] = $object->id; - else - { + else { $this->error = "Id/Ref '".$value."' for object '".$object->element."' not found"; $this->db->rollback(); return -1; } } - } - else - { + } else { dol_syslog('Error bad setup of extrafield', LOG_WARNING); } break; @@ -5608,9 +5416,7 @@ abstract class CommonObject if ($new_array_options[$key] != '' || $new_array_options[$key] == '0') { $sql .= ",'".$this->db->escape($new_array_options[$key])."'"; - } - else - { + } else { $sql .= ",null"; } } @@ -5651,14 +5457,11 @@ abstract class CommonObject { $this->db->rollback(); return -1; - } - else - { + } else { $this->db->commit(); return 1; } - } - else return 0; + } else return 0; } /** @@ -5701,8 +5504,7 @@ abstract class CommonObject { $this->errors[] = $langs->trans("ExtraLanguageHasWrongValue", $attributeLabel); return -1; - } - elseif ($value == '') + } elseif ($value == '') { $new_array_languages[$key] = null; } @@ -5714,8 +5516,7 @@ abstract class CommonObject dol_syslog($langs->trans("ExtraLanguageHasWrongValue")." sur ".$attributeLabel."(".$value."is not '".$attributeType."')", LOG_DEBUG); $this->errors[] = $langs->trans("ExtraLanguageHasWrongValue", $attributeLabel); return -1; - } - elseif ($value == '') + } elseif ($value == '') { $new_array_languages[$key] = null; } @@ -5774,14 +5575,11 @@ abstract class CommonObject { $this->db->rollback(); return -1; - } - else - { + } else { $this->db->commit(); return 1; } - } - else return 0; + } else return 0; } /** @@ -5792,18 +5590,18 @@ abstract class CommonObject * @param string $trigger If defined, call also the trigger (for example COMPANY_MODIFY) * @param User $userused Object user * @return int -1=error, O=did nothing, 1=OK - * @see updateExtraLanguages(), setValueFrom(), insertExtraFields() + * @see updateExtraLanguages(), insertExtraFields(), deleteExtraFields(), setValueFrom() */ public function updateExtraField($key, $trigger = null, $userused = null) { global $conf, $langs, $user; + if (!empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) return 0; + if (empty($userused)) $userused = $user; $error = 0; - if (!empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) return 0; // For avoid conflicts if trigger used - if (!empty($this->array_options) && isset($this->array_options["options_".$key])) { // Check parameters @@ -5829,8 +5627,7 @@ abstract class CommonObject { $this->errors[] = $langs->trans("ExtraFieldHasWrongValue", $attributeLabel); return -1; - } - elseif ($value === '') + } elseif ($value === '') { $this->array_options["options_".$key] = null; } @@ -5842,8 +5639,7 @@ abstract class CommonObject dol_syslog($langs->trans("ExtraFieldHasWrongValue")." sur ".$attributeLabel."(".$value."is not '".$attributeType."')", LOG_DEBUG); $this->errors[] = $langs->trans("ExtraFieldHasWrongValue", $attributeLabel); return -1; - } - elseif ($value === '') + } elseif ($value === '') { $this->array_options["options_".$key] = null; } @@ -5904,14 +5700,11 @@ abstract class CommonObject dol_syslog(__METHOD__.$this->error, LOG_ERR); $this->db->rollback(); return -1; - } - else - { + } else { $this->db->commit(); return 1; } - } - else return 0; + } else return 0; } /** @@ -6006,6 +5799,7 @@ abstract class CommonObject $computed = $this->fields[$key]['computed']; $unique = $this->fields[$key]['unique']; $required = $this->fields[$key]['required']; + $autofocusoncreate = $this->fields[$key]['autofocusoncreate']; $langfile = $this->fields[$key]['langfile']; $list = $this->fields[$key]['list']; @@ -6023,39 +5817,30 @@ abstract class CommonObject if (empty($morecss) && !empty($val['css'])) { $morecss = $val['css']; - } - elseif (empty($morecss)) + } elseif (empty($morecss)) { if ($type == 'date') { $morecss = 'minwidth100imp'; - } - elseif ($type == 'datetime' || $type == 'link') + } elseif ($type == 'datetime' || $type == 'link') { $morecss = 'minwidth200imp'; - } - elseif (in_array($type, array('int', 'integer', 'price')) || preg_match('/^double(\([0-9],[0-9]\)){0,1}/', $type)) + } elseif (in_array($type, array('int', 'integer', 'price')) || preg_match('/^double(\([0-9],[0-9]\)){0,1}/', $type)) { $morecss = 'maxwidth75'; } elseif ($type == 'url') { $morecss = 'minwidth400'; - } - elseif ($type == 'boolean') + } elseif ($type == 'boolean') { $morecss = ''; - } - else - { + } else { if (round($size) < 12) { $morecss = 'minwidth100'; - } - elseif (round($size) <= 48) + } elseif (round($size) <= 48) { $morecss = 'minwidth200'; - } - else - { + } else { $morecss = 'minwidth400'; } } @@ -6073,56 +5858,44 @@ abstract class CommonObject // TODO Must also support $moreparam $out = $form->selectDate($value, $keyprefix.$key.$keysuffix, $showtime, $showtime, $required, '', 1, (($keyprefix != 'search_' && $keyprefix != 'search_options_') ? 1 : 0), 0, 1); - } - elseif (in_array($type, array('duration'))) + } elseif (in_array($type, array('duration'))) { $out = $form->select_duration($keyprefix.$key.$keysuffix, $value, 0, 'text', 0, 1); - } - elseif (in_array($type, array('int', 'integer'))) + } elseif (in_array($type, array('int', 'integer'))) { $tmp = explode(',', $size); $newsize = $tmp[0]; - $out = ''; - } - elseif (in_array($type, array('real'))) + $out = ''; + } elseif (in_array($type, array('real'))) { - $out = ''; - } - elseif (preg_match('/varchar/', $type)) + $out = ''; + } elseif (preg_match('/varchar/', $type)) { - $out = ''; - } - elseif (in_array($type, array('mail', 'phone', 'url'))) + $out = ''; + } elseif (in_array($type, array('mail', 'phone', 'url'))) { - $out = ''; - } - elseif ($type == 'text') + $out = ''; + } elseif ($type == 'text') { if (!preg_match('/search_/', $keyprefix)) // If keyprefix is search_ or search_options_, we must just use a simple text field { require_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php'; $doleditor = new DolEditor($keyprefix.$key.$keysuffix, $value, '', 200, 'dolibarr_notes', 'In', false, false, false, ROWS_5, '90%'); $out = $doleditor->Create(1); - } - else - { + } else { $out = ''; } - } - elseif ($type == 'html') + } elseif ($type == 'html') { if (!preg_match('/search_/', $keyprefix)) // If keyprefix is search_ or search_options_, we must just use a simple text field { require_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php'; $doleditor = new DolEditor($keyprefix.$key.$keysuffix, $value, '', 200, 'dolibarr_notes', 'In', false, false, !empty($conf->fckeditor->enabled) && $conf->global->FCKEDITOR_ENABLE_SOCIETE, ROWS_5, '90%'); $out = $doleditor->Create(1); - } - else - { + } else { $out = ''; } - } - elseif ($type == 'boolean') + } elseif ($type == 'boolean') { $checked = ''; if (!empty($value)) { @@ -6131,22 +5904,19 @@ abstract class CommonObject $checked = ' value="1" '; } $out = ''; - } - elseif ($type == 'price') + } elseif ($type == 'price') { if (!empty($value)) { // $value in memory is a php numeric, we format it into user number format. $value = price($value); } $out = ' '.$langs->getCurrencySymbol($conf->currency); - } - elseif (preg_match('/^double(\([0-9],[0-9]\)){0,1}/', $type)) + } elseif (preg_match('/^double(\([0-9],[0-9]\)){0,1}/', $type)) { if (!empty($value)) { // $value in memory is a php numeric, we format it into user number format. $value = price($value); } $out = ' '; - } - elseif ($type == 'select') + } elseif ($type == 'select') { $out = ''; if (!empty($conf->use_javascript_ajax) && !empty($conf->global->MAIN_EXTRAFIELDS_USE_SELECT2)) @@ -6167,8 +5937,7 @@ abstract class CommonObject $out .= '>'.$val.''; } $out .= ''; - } - elseif ($type == 'sellist') + } elseif ($type == 'sellist') { $out = ''; if (!empty($conf->use_javascript_ajax) && !empty($conf->global->MAIN_EXTRAFIELDS_USE_SELECT2)) @@ -6235,14 +6004,10 @@ abstract class CommonObject { $sql .= ' as main, '.MAIN_DB_PREFIX.$InfoFieldList[0].'_extrafields as extra'; $sqlwhere .= ' WHERE extra.fk_object=main.'.$InfoFieldList[2].' AND '.$InfoFieldList[4]; - } - else - { + } else { $sqlwhere .= ' WHERE '.$InfoFieldList[4]; } - } - else - { + } else { $sqlwhere .= ' WHERE 1=1'; } // Some tables may have field, some other not. For the moment we disable it. @@ -6277,9 +6042,7 @@ abstract class CommonObject { $labeltoshow .= $obj->$field_toshow.' '; } - } - else - { + } else { $labeltoshow = $obj->{$InfoFieldList[1]}; } $labeltoshow = dol_trunc($labeltoshow, 45); @@ -6296,16 +6059,13 @@ abstract class CommonObject } } $out .= ''; - } - else - { + } else { if (!$notrans) { $translabel = $langs->trans($obj->{$InfoFieldList[1]}); if ($translabel != $obj->{$InfoFieldList[1]}) { $labeltoshow = dol_trunc($translabel, 18); - } - else { + } else { $labeltoshow = dol_trunc($obj->{$InfoFieldList[1]}, 18); } } @@ -6329,19 +6089,16 @@ abstract class CommonObject $i++; } $this->db->free($resql); - } - else { + } else { print 'Error in request '.$sql.' '.$this->db->lasterror().'. Check setup of extra parameters.
'; } } $out .= ''; - } - elseif ($type == 'checkbox') + } elseif ($type == 'checkbox') { $value_arr = explode(',', $value); $out = $form->multiselectarray($keyprefix.$key.$keysuffix, (empty($param['options']) ?null:$param['options']), $value_arr, '', 0, '', 0, '100%'); - } - elseif ($type == 'radio') + } elseif ($type == 'radio') { $out = ''; foreach ($param['options'] as $keyopt => $val) @@ -6352,13 +6109,11 @@ abstract class CommonObject $out .= ($value == $keyopt ? 'checked' : ''); $out .= '/>
'; } - } - elseif ($type == 'chkbxlst') + } elseif ($type == 'chkbxlst') { if (is_array($value)) { $value_arr = $value; - } - else { + } else { $value_arr = explode(',', $value); } @@ -6496,8 +6251,7 @@ abstract class CommonObject print 'Error in request '.$sql.' '.$this->db->lasterror().'. Check setup of extra parameters.
'; } } - } - elseif ($type == 'link') + } elseif ($type == 'link') { $param_list = array_keys($param['options']); // $param_list='ObjectName:classPath[:AddCreateButtonOrNot[:Filter]]' $param_list_array = explode(':', $param_list[0]); @@ -6520,13 +6274,11 @@ abstract class CommonObject $out .= ''; } } - } - elseif ($type == 'password') + } elseif ($type == 'password') { // If prefix is 'search_', field is used as a filter, we use a common text field. $out = ''; - } - elseif ($type == 'array') + } elseif ($type == 'array') { $newval = $val; $newval['type'] = 'varchar(256)'; @@ -6605,8 +6357,7 @@ abstract class CommonObject { $type = 'varchar'; // convert varchar(xx) int varchar $size = $reg[1]; - } - elseif (preg_match('/varchar/', $type)) $type = 'varchar'; // convert varchar(xx) int varchar + } elseif (preg_match('/varchar/', $type)) $type = 'varchar'; // convert varchar(xx) int varchar if (is_array($val['arrayofkeyval'])) $type = 'select'; if (preg_match('/^integer:(.*):(.*)/i', $val['type'], $reg)) $type = 'link'; @@ -6622,8 +6373,7 @@ abstract class CommonObject { $type = 'link'; $param['options'] = array($reg[1].':'.$reg[2]=>$reg[1].':'.$reg[2]); - } - elseif (preg_match('/^sellist:(.*):(.*):(.*):(.*)/i', $val['type'], $reg)) { + } elseif (preg_match('/^sellist:(.*):(.*):(.*):(.*)/i', $val['type'], $reg)) { $param['options'] = array($reg[1].':'.$reg[2].':'.$reg[3].':'.$reg[4] => 'N'); $type = 'sellist'; } @@ -6648,35 +6398,26 @@ abstract class CommonObject if ($type == 'date') { $morecss = 'minwidth100imp'; - } - elseif ($type == 'datetime' || $type == 'timestamp') + } elseif ($type == 'datetime' || $type == 'timestamp') { $morecss = 'minwidth200imp'; - } - elseif (in_array($type, array('int', 'double', 'price'))) + } elseif (in_array($type, array('int', 'double', 'price'))) { $morecss = 'maxwidth75'; - } - elseif ($type == 'url') + } elseif ($type == 'url') { $morecss = 'minwidth400'; - } - elseif ($type == 'boolean') + } elseif ($type == 'boolean') { $morecss = ''; - } - else - { + } else { if (round($size) < 12) { $morecss = 'minwidth100'; - } - elseif (round($size) <= 48) + } elseif (round($size) <= 48) { $morecss = 'minwidth200'; - } - else - { + } else { $morecss = 'minwidth400'; } } @@ -6692,59 +6433,49 @@ abstract class CommonObject } else { $value = ''; } - } - elseif ($type == 'datetime' || $type == 'timestamp') + } elseif ($type == 'datetime' || $type == 'timestamp') { if (!empty($value)) { $value = dol_print_date($value, 'dayhour'); } else { $value = ''; } - } - elseif ($type == 'duration') + } elseif ($type == 'duration') { include_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php'; if (!is_null($value) && $value !== '') { $value = convertSecondToTime($value, 'allhourmin'); } - } - elseif ($type == 'double' || $type == 'real') + } elseif ($type == 'double' || $type == 'real') { if (!is_null($value) && $value !== '') { $value = price($value); } - } - elseif ($type == 'boolean') + } elseif ($type == 'boolean') { $checked = ''; if (!empty($value)) { $checked = ' checked '; } $value = ''; - } - elseif ($type == 'mail') + } elseif ($type == 'mail') { $value = dol_print_email($value, 0, 0, 0, 64, 1, 1); - } - elseif ($type == 'url') + } elseif ($type == 'url') { $value = dol_print_url($value, '_blank', 32, 1); - } - elseif ($type == 'phone') + } elseif ($type == 'phone') { $value = dol_print_phone($value, '', 0, 0, '', ' ', 1); - } - elseif ($type == 'price') + } elseif ($type == 'price') { if (!is_null($value) && $value !== '') { $value = price($value, 0, $langs, 0, 0, -1, $conf->currency); } - } - elseif ($type == 'select') + } elseif ($type == 'select') { $value = $param['options'][$value]; - } - elseif ($type == 'sellist') + } elseif ($type == 'sellist') { $param_list = array_keys($param['options']); $InfoFieldList = explode(":", $param_list[0]); @@ -6805,9 +6536,7 @@ abstract class CommonObject $value .= $obj->$field_toshow.' '; } } - } - else - { + } else { $translabel = ''; if (!empty($obj->{$InfoFieldList[1]})) { $translabel = $langs->trans($obj->{$InfoFieldList[1]}); @@ -6818,14 +6547,11 @@ abstract class CommonObject $value = $obj->{$InfoFieldList[1]}; } } - } - else dol_syslog(get_class($this).'::showOutputField error '.$this->db->lasterror(), LOG_WARNING); - } - elseif ($type == 'radio') + } else dol_syslog(get_class($this).'::showOutputField error '.$this->db->lasterror(), LOG_WARNING); + } elseif ($type == 'radio') { $value = $param['options'][$value]; - } - elseif ($type == 'checkbox') + } elseif ($type == 'checkbox') { $value_arr = explode(',', $value); $value = ''; @@ -6837,8 +6563,7 @@ abstract class CommonObject } $value = '
    '.implode(' ', $toprint).'
'; } - } - elseif ($type == 'chkbxlst') + } elseif ($type == 'chkbxlst') { $value_arr = explode(',', $value); @@ -6905,8 +6630,7 @@ abstract class CommonObject } else { dol_syslog(get_class($this).'::showOutputField error '.$this->db->lasterror(), LOG_WARNING); } - } - elseif ($type == 'link') + } elseif ($type == 'link') { $out = ''; @@ -6928,24 +6652,18 @@ abstract class CommonObject $object->fetch($value); $value = $object->getNomUrl($getnomurlparam); } - } - else - { + } else { dol_syslog('Error bad setup of extrafield', LOG_WARNING); return 'Error bad setup of extrafield'; } - } - else $value = ''; - } - elseif ($type == 'text' || $type == 'html') + } else $value = ''; + } elseif ($type == 'text' || $type == 'html') { $value = dol_htmlentitiesbr($value); - } - elseif ($type == 'password') + } elseif ($type == 'password') { $value = preg_replace('/./i', '*', $value); - } - elseif ($type == 'array') + } elseif ($type == 'array') { $value = implode('
', $value); } @@ -7023,13 +6741,11 @@ abstract class CommonObject if (is_array($params) && count($params) > 0) { if (array_key_exists('cols', $params)) { $colspan = $params['cols']; - } - elseif (array_key_exists('colspan', $params)) { // For backward compatibility. Use cols instead now. + } elseif (array_key_exists('colspan', $params)) { // For backward compatibility. Use cols instead now. $reg = array(); if (preg_match('/colspan="(\d+)"/', $params['colspan'], $reg)) { $colspan = $reg[1]; - } - else { + } else { $colspan = $params['colspan']; } } @@ -7075,9 +6791,7 @@ abstract class CommonObject } $out .= $extrafields->showSeparator($key, $this, ($colspan + 1)); - } - else - { + } else { $class = (!empty($extrafields->attributes[$this->table_element]['hidden'][$key]) ? 'hideobject ' : ''); $csstyle = ''; if (is_array($params) && count($params) > 0) { @@ -7117,6 +6831,13 @@ abstract class CommonObject { $value = GETPOSTISSET($keyprefix.'options_'.$key.$keysuffix) ?price2num(GETPOST($keyprefix.'options_'.$key.$keysuffix, 'alpha', 3)) : $this->array_options['options_'.$key]; } + // HTML, select, integer and text add default value + if (in_array($extrafields->attributes[$this->table_element]['type'][$key], array('html', 'text', 'select', 'int'))) + { + if ($action == 'create') $value = $extrafields->attributes[$this->table_element]['default'][$key]; + else $value = $this->array_options['options_'.$key]; + } + $labeltoshow = $langs->trans($label); $helptoshow = $langs->trans($extrafields->attributes[$this->table_element]['help'][$key]); @@ -7267,9 +6988,7 @@ abstract class CommonObject if (($unitPrice > 0) && (isset($conf->global->ForceBuyingPriceIfNull) && $conf->global->ForceBuyingPriceIfNull == 1)) // In most cases, test here is false { $buyPrice = $unitPrice * (1 - $discountPercent / 100); - } - else - { + } else { // Get cost price for margin calculation if (!empty($fk_product)) { @@ -7286,13 +7005,11 @@ abstract class CommonObject if ($product->cost_price > 0) { $buyPrice = $product->cost_price; - } - elseif ($product->pmp > 0) + } elseif ($product->pmp > 0) { $buyPrice = $product->pmp; } - } - elseif (isset($conf->global->MARGIN_TYPE) && $conf->global->MARGIN_TYPE == 'pmp') + } elseif (isset($conf->global->MARGIN_TYPE) && $conf->global->MARGIN_TYPE == 'pmp') { require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php'; $product = new Product($this->db); @@ -7315,8 +7032,7 @@ abstract class CommonObject if (($result = $productFournisseur->find_min_price_product_fournisseur($fk_product)) > 0) { $buyPrice = $productFournisseur->fourn_unitprice; - } - elseif ($result < 0) + } elseif ($result < 0) { $this->errors[] = $productFournisseur->error; return -2; @@ -7429,8 +7145,7 @@ abstract class CommonObject if ($nbphoto % $nbbyrow == 1) $return .= ''; $return .= ''; if (($nbphoto % $nbbyrow) == 0) $return .= ''; - } - elseif ($nbbyrow < 0) $return .= ''; + } elseif ($nbbyrow < 0) $return .= ''; } if (empty($size)) { // Format origine @@ -7600,8 +7308,7 @@ abstract class CommonObject { if (isset($info['type']) && ($info['type'] == 'duration')) return true; else return false; - } - else return false; + } else return false; } /** @@ -7616,8 +7323,7 @@ abstract class CommonObject { if (isset($info['type']) && ($info['type'] == 'int' || preg_match('/^integer/i', $info['type']))) return true; else return false; - } - else return false; + } else return false; } /** @@ -7721,13 +7427,10 @@ abstract class CommonObject if (empty($this->{$field})) { $queryarray[$field] = null; - } - else - { + } else { $queryarray[$field] = $this->db->idate($this->{$field}); } - } - elseif ($this->isArray($info)) + } elseif ($this->isArray($info)) { if (!empty($this->{$field})) { if (!is_array($this->{$field})) { @@ -7737,28 +7440,22 @@ abstract class CommonObject } else { $queryarray[$field] = null; } - } - elseif ($this->isDuration($info)) + } elseif ($this->isDuration($info)) { // $this->{$field} may be null, '', 0, '0', 123, '123' if ($this->{$field} != '' || !empty($info['notnull'])) $queryarray[$field] = (int) $this->{$field}; // If '0', it may be set to null later if $info['notnull'] == -1 else $queryarray[$field] = null; - } - elseif ($this->isInt($info) || $this->isFloat($info)) + } elseif ($this->isInt($info) || $this->isFloat($info)) { if ($field == 'entity' && is_null($this->{$field})) $queryarray[$field] = $conf->entity; - else - { + else { // $this->{$field} may be null, '', 0, '0', 123, '123' if ($this->{$field} != '' || !empty($info['notnull'])) { if ($this->isInt($info)) $queryarray[$field] = (int) $this->{$field}; // If '0', it may be set to null later if $info['notnull'] == -1 if ($this->isFloat($info)) $queryarray[$field] = (double) $this->{$field}; // If '0', it may be set to null later if $info['notnull'] == -1 - } - else $queryarray[$field] = null; + } else $queryarray[$field] = null; } - } - else - { + } else { $queryarray[$field] = $this->{$field}; } @@ -7783,8 +7480,7 @@ abstract class CommonObject { if (empty($obj->{$field}) || $obj->{$field} === '0000-00-00 00:00:00' || $obj->{$field} === '1000-01-01 00:00:00') $this->{$field} = 0; else $this->{$field} = strtotime($obj->{$field}); - } - elseif ($this->isArray($info)) + } elseif ($this->isArray($info)) { if (!empty($obj->{$field})) { $this->{$field} = @unserialize($obj->{$field}); @@ -7793,19 +7489,15 @@ abstract class CommonObject } else { $this->{$field} = array(); } - } - elseif ($this->isInt($info)) + } elseif ($this->isInt($info)) { if ($field == 'rowid') $this->id = (int) $obj->{$field}; - else - { + else { if ($this->isForcedToNullIfZero($info)) { if (empty($obj->{$field})) $this->{$field} = null; else $this->{$field} = (double) $obj->{$field}; - } - else - { + } else { if (!is_null($obj->{$field}) || (isset($info['notnull']) && $info['notnull'] == 1)) { $this->{$field} = (int) $obj->{$field}; } else { @@ -7813,25 +7505,20 @@ abstract class CommonObject } } } - } - elseif ($this->isFloat($info)) + } elseif ($this->isFloat($info)) { if ($this->isForcedToNullIfZero($info)) { if (empty($obj->{$field})) $this->{$field} = null; else $this->{$field} = (double) $obj->{$field}; - } - else - { + } else { if (!is_null($obj->{$field}) || (isset($info['notnull']) && $info['notnull'] == 1)) { $this->{$field} = (double) $obj->{$field}; } else { $this->{$field} = null; } } - } - else - { + } else { $this->{$field} = $obj->{$field}; } } @@ -8023,7 +7710,10 @@ abstract class CommonObject { if (empty($id) && empty($ref) && empty($morewhere)) return -1; - $sql = 'SELECT '.$this->getFieldList(); + $fieldlist = $this->getFieldList(); + if (empty($fieldlist)) return 0; + + $sql = 'SELECT '.$fieldlist; $sql .= ' FROM '.MAIN_DB_PREFIX.$this->table_element; if (!empty($id)) $sql .= ' WHERE rowid = '.$id; @@ -8041,14 +7731,10 @@ abstract class CommonObject { $this->setVarsFromFetchObj($obj); return $this->id; - } - else - { + } else { return 0; } - } - else - { + } else { $this->error = $this->db->lasterror(); $this->errors[] = $this->error; return -1; @@ -8096,9 +7782,7 @@ abstract class CommonObject } return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); $this->errors[] = $this->error; return -1; @@ -8167,7 +7851,7 @@ abstract class CommonObject } // Update extrafield - if (!$error && empty($conf->global->MAIN_EXTRAFIELDS_DISABLED) && is_array($this->array_options) && count($this->array_options) > 0) + if (!$error) { $result = $this->insertExtraFields(); if ($result < 0) @@ -8225,8 +7909,7 @@ abstract class CommonObject return -1; } } - } - elseif (!empty($this->fk_element) && !empty($this->childtables)) // If object has childs linked with a foreign key field, we check all child tables. + } elseif (!empty($this->fk_element) && !empty($this->childtables)) // If object has childs linked with a foreign key field, we check all child tables. { $objectisused = $this->isObjectUsed($this->id); if (!empty($objectisused)) @@ -8328,7 +8011,7 @@ abstract class CommonObject if (empty($error)) { // Remove extrafields - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + if (!$error) { $tmpobjectline = new $tmpforobjectlineclass($this->db); $tmpobjectline->id = $idline; @@ -8392,9 +8075,7 @@ abstract class CommonObject $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -1; @@ -8472,8 +8153,68 @@ abstract class CommonObject } } + /* Part for categories/tags */ + /** - * copy related categories to another object + * Sets object to given categories. + * + * Deletes object from existing categories not supplied. + * Adds it to non existing supplied categories. + * Existing categories are left untouch. + * + * @param int[]|int $categories Category ID or array of Categories IDs + * @param string $type_categ Category type ('customer', 'supplier', 'website_page', ...) + * @return int <0 if KO, >0 if OK + */ + public function setCategories($categories, $type_categ) + { + require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php'; + + // Handle single category + if (!is_array($categories)) { + $categories = array($categories); + } + + // Get current categories + $c = new Categorie($this->db); + $existing = $c->containing($this->id, $type_categ, 'id'); + + // Diff + if (is_array($existing)) { + $to_del = array_diff($existing, $categories); + $to_add = array_diff($categories, $existing); + } else { + $to_del = array(); // Nothing to delete + $to_add = $categories; + } + + $error = 0; + + // Process + foreach ($to_del as $del) { + if ($c->fetch($del) > 0) { + $c->del_type($this, $type_categ); + } + } + foreach ($to_add as $add) { + if ($c->fetch($add) > 0) + { + $result = $c->add_type($this, $type_categ); + if ($result < 0) + { + $error++; + $this->error = $c->error; + $this->errors = $c->errors; + break; + } + } + } + + return $error ? -1 : 1; + } + + /** + * Copy related categories to another object * * @param int $fromId Id object source * @param int $toId Id object cible diff --git a/htdocs/core/class/commonobjectline.class.php b/htdocs/core/class/commonobjectline.class.php index 5a09dbfed29..f92004120ff 100644 --- a/htdocs/core/class/commonobjectline.class.php +++ b/htdocs/core/class/commonobjectline.class.php @@ -54,8 +54,8 @@ abstract class CommonObjectLine extends CommonObject * Returns the translation key from units dictionary. * A langs->trans() must be called on result to get translated value. * - * @param string $type Label type (long or short) - * @return string|int <0 if ko, label if ok + * @param string $type Label type (long or short). This can be a translation key. + * @return string|int <0 if ko, label if ok */ public function getLabelOfUnit($type = 'long') { @@ -82,9 +82,7 @@ abstract class CommonObjectLine extends CommonObject $label = $res[$label_type]; $this->db->free($resql); return $label; - } - else - { + } else { $this->error = $this->db->error().' sql='.$sql; dol_syslog(get_class($this)."::getLabelOfUnit Error ".$this->error, LOG_ERR); return -1; diff --git a/htdocs/core/class/commonstickergenerator.class.php b/htdocs/core/class/commonstickergenerator.class.php index 50330f26b17..6c832c4788d 100644 --- a/htdocs/core/class/commonstickergenerator.class.php +++ b/htdocs/core/class/commonstickergenerator.class.php @@ -175,8 +175,7 @@ abstract class CommonStickerGenerator $hauteur = abs($y1 - $y2); if ($length > $hauteur) { $Pointilles = ($length / $nbPointilles) / 2; // taille des pointilles - } - else { + } else { $Pointilles = ($hauteur / $nbPointilles) / 2; } for ($i = $x1; $i <= $x2; $i += $Pointilles + $Pointilles) { diff --git a/htdocs/core/class/conf.class.php b/htdocs/core/class/conf.class.php index 7a0c46a39c4..7973bc5ff16 100644 --- a/htdocs/core/class/conf.class.php +++ b/htdocs/core/class/conf.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2003 Xavier Dutoit - * Copyright (C) 2004-2016 Laurent Destailleur + * Copyright (C) 2004-2020 Laurent Destailleur * Copyright (C) 2005-2017 Regis Houssin * Copyright (C) 2006 Jean Heimburger * @@ -37,7 +37,7 @@ class Conf public $file; /** - * @var DoliDB Database handler. + * @var Object Associative array with some properties ->type, ->db, ... */ public $db; @@ -48,6 +48,8 @@ class Conf //! To store if javascript/ajax is enabked public $use_javascript_ajax; + //! To store if javascript/ajax is enabked + public $disable_compute; //! Used to store current currency (ISO code like 'USD', 'EUR', ...) public $currency; //! Used to store current css (from theme) @@ -247,8 +249,7 @@ class Conf { try { date_default_timezone_set($this->global->MAIN_SERVER_TZ); - } - catch (Exception $e) + } catch (Exception $e) { dol_syslog("Error: Bad value for parameter MAIN_SERVER_TZ=".$this->global->MAIN_SERVER_TZ, LOG_ERR); } @@ -330,9 +331,7 @@ class Conf // For backward compatibility $this->$module->$dirname = $rootfordata."/".$name; - } - else - { + } else { // For multicompany sharings $this->$module->$multidirname = array($this->entity => $rootfortemp."/".$name."/temp"); @@ -688,8 +687,6 @@ class Conf $this->global->AGENDA_DEFAULT_FILTER_TYPE = '0'; // 'AC_NON_AUTO' does not exists when AGENDA_DEFAULT_FILTER_TYPE is not on. } - if (!isset($this->global->MAIN_USE_OLD_TITLE_BUTTON)) $this->global->MAIN_USE_OLD_TITLE_BUTTON = 0; - if (!isset($this->global->MAIN_JS_GRAPH)) $this->global->MAIN_JS_GRAPH = 'chart'; // Use chart.js library if (empty($this->global->MAIN_MODULE_DOLISTORE_API_SRV)) $this->global->MAIN_MODULE_DOLISTORE_API_SRV = 'https://www.dolistore.com'; diff --git a/htdocs/core/class/coreobject.class.php b/htdocs/core/class/coreobject.class.php index 999b01341f0..caaeb706c32 100644 --- a/htdocs/core/class/coreobject.class.php +++ b/htdocs/core/class/coreobject.class.php @@ -74,9 +74,7 @@ class CoreObject extends CommonObject $this->is_clone = false; return true; - } - else - { + } else { return false; } } @@ -93,9 +91,7 @@ class CoreObject extends CommonObject if (isset($this->fields[$field]) && method_exists($this, 'is_'.$type)) { return $this->{'is_'.$type}($this->fields[$field]); - } - else - { + } else { return false; } } @@ -199,9 +195,7 @@ class CoreObject extends CommonObject $this->{$className}[] = $o; } - } - else - { + } else { $this->errors[] = $this->db->lasterror(); } } @@ -256,9 +250,7 @@ class CoreObject extends CommonObject $result = $this->call_trigger(strtoupper($this->element).'_UPDATE', $user); if ($result < 0) $error++; else $this->saveChild($user); - } - else - { + } else { $error++; $this->error = $this->db->lasterror(); $this->errors[] = $this->error; @@ -268,9 +260,7 @@ class CoreObject extends CommonObject { $this->db->commit(); return $this->id; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -297,9 +287,7 @@ class CoreObject extends CommonObject $result = $this->call_trigger(strtoupper($this->element).'_CREATE', $user); if ($result < 0) $error++; else $this->saveChild($user); - } - else - { + } else { $error++; $this->error = $this->db->lasterror(); $this->errors[] = $this->error; @@ -309,9 +297,7 @@ class CoreObject extends CommonObject { $this->db->commit(); return $this->id; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -356,9 +342,7 @@ class CoreObject extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); $this->errors[] = $this->error; $this->db->rollback(); @@ -377,8 +361,7 @@ class CoreObject extends CommonObject public function getDate($field, $format = '') { if (empty($this->{$field})) return ''; - else - { + else { return dol_print_date($this->{$field}, $format); } } @@ -395,9 +378,7 @@ class CoreObject extends CommonObject if (empty($date)) { $this->{$field} = 0; - } - else - { + } else { require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php'; $this->{$field} = dol_stringtotime($date); } @@ -419,16 +400,12 @@ class CoreObject extends CommonObject if ($this->checkFieldType($key, 'date')) { $this->setDate($key, $value); - } - elseif ($this->checkFieldType($key, 'float')) + } elseif ($this->checkFieldType($key, 'float')) { $this->{$key} = (double) price2num($value); - } - elseif ($this->checkFieldType($key, 'int')) { + } elseif ($this->checkFieldType($key, 'int')) { $this->{$key} = (int) price2num($value); - } - else - { + } else { $this->{$key} = dol_string_nohtmltag($value); } } diff --git a/htdocs/core/class/cstate.class.php b/htdocs/core/class/cstate.class.php index 406615aada6..34ef707b674 100644 --- a/htdocs/core/class/cstate.class.php +++ b/htdocs/core/class/cstate.class.php @@ -132,9 +132,7 @@ class Cstate // extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return $this->id; } @@ -176,9 +174,7 @@ class Cstate // extends CommonObject $this->db->free($resql); return 1; - } - else - { + } else { $this->error = "Error ".$this->db->lasterror(); return -1; } @@ -264,9 +260,7 @@ class Cstate // extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } diff --git a/htdocs/core/class/ctypent.class.php b/htdocs/core/class/ctypent.class.php index 2524445b294..07d3563088e 100644 --- a/htdocs/core/class/ctypent.class.php +++ b/htdocs/core/class/ctypent.class.php @@ -136,9 +136,7 @@ class Ctypent // extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return $this->id; } @@ -185,9 +183,7 @@ class Ctypent // extends CommonObject $this->db->free($resql); return 1; - } - else - { + } else { $this->error = "Error ".$this->db->lasterror(); return -1; } @@ -240,9 +236,7 @@ class Ctypent // extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } @@ -280,9 +274,7 @@ class Ctypent // extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } diff --git a/htdocs/core/class/cunits.class.php b/htdocs/core/class/cunits.class.php index 65baf0056e9..ac7b07ea5a9 100644 --- a/htdocs/core/class/cunits.class.php +++ b/htdocs/core/class/cunits.class.php @@ -135,9 +135,7 @@ class CUnits // extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return $this->id; } @@ -147,7 +145,7 @@ class CUnits // extends CommonObject /** * Load object in memory from database * - * @param int $id Id object + * @param int $id Id of CUnit object to fetch (rowid) * @param string $code Code * @param string $short_label Short Label ('g', 'kg', ...) * @param string $unit_type Unit type ('size', 'surface', 'volume', 'weight', ...) @@ -168,7 +166,7 @@ class CUnits // extends CommonObject $sql .= " t.active"; $sql .= " FROM ".MAIN_DB_PREFIX."c_units as t"; $sql_where = array(); - if ($id) $sql_where[] = " t.id = ".$id; + if ($id) $sql_where[] = " t.rowid = ".$id; if ($unit_type) $sql_where[] = " t.unit_type = '".$this->db->escape($unit_type)."'"; if ($code) $sql_where[] = " t.code = '".$this->db->escape($code)."'"; if ($short_label) $sql_where[] = " t.short_label = '".$this->db->escape($short_label)."'"; @@ -195,9 +193,7 @@ class CUnits // extends CommonObject $this->db->free($resql); return 1; - } - else - { + } else { $this->error = "Error ".$this->db->lasterror(); return -1; } @@ -236,14 +232,11 @@ class CUnits // extends CommonObject foreach ($filter as $key => $value) { if ($key == 't.rowid' || $key == 't.active' || $key == 't.scale') { $sqlwhere[] = $key.'='.(int) $value; - } - elseif (strpos($key, 'date') !== false) { + } elseif (strpos($key, 'date') !== false) { $sqlwhere[] = $key.' = \''.$this->db->idate($value).'\''; - } - elseif ($key == 't.unit_type' || $key == 't.code' || $key == 't.short_label') { + } elseif ($key == 't.unit_type' || $key == 't.code' || $key == 't.short_label') { $sqlwhere[] = $key.' = \''.$this->db->escape($value).'\''; - } - else { + } else { $sqlwhere[] = $key.' LIKE \'%'.$this->db->escape($value).'%\''; } } @@ -339,9 +332,7 @@ class CUnits // extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } @@ -379,11 +370,79 @@ class CUnits // extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } } + + + /** + * Get unit from code + * @param string $code code of unit + * @param string $mode 0= id , short_label=Use short label as value, code=use code + * @return int <0 if KO, Id of code if OK + */ + public function getUnitFromCode($code, $mode = 'code') + { + + if ($mode == 'short_label'){ + return dol_getIdFromCode($this->db, $code, 'c_units', 'short_label', 'rowid'); + } elseif ($mode == 'code'){ + return dol_getIdFromCode($this->db, $code, 'c_units', 'code', 'rowid'); + } + + return $code; + } + + /** + * Unit converter + * @param double $value value to convert + * @param int $fk_unit current unit id of value + * @param int $fk_new_unit the id of unit to convert in + * @return double + */ + public function unitConverter($value, $fk_unit, $fk_new_unit = 0) + { + $value = doubleval(price2num($value)); + $fk_unit = intval($fk_unit); + + // Calcul en unité de base + $scaleUnitPow = $this->scaleOfUnitPow($fk_unit); + + // convert to standard unit + $value = $value * $scaleUnitPow; + if ($fk_new_unit !=0 ){ + // Calcul en unité de base + $scaleUnitPow = $this->scaleOfUnitPow($fk_new_unit); + if (!empty($scaleUnitPow)) + { + // convert to new unit + $value = $value / $scaleUnitPow; + } + } + return round($value, 2); + } + + /** + * get scale of unit factor + * @param int $id id of unit in dictionary + * @return float|int + */ + public function scaleOfUnitPow($id) + { + $base = 10; + // TODO : add base col into unit dictionary table + $unit = $this->db->getRow('SELECT scale, unit_type from '.MAIN_DB_PREFIX.'c_units WHERE rowid = '.intval($id)); + if ($unit) { + // TODO : if base exist in unit dictionary table remove this convertion exception and update convertion infos in database exemple time hour currently scale 3600 will become scale 2 base 60 + if ($unit->unit_type == 'time') { + return doubleval($unit->scale); + } + + return pow($base, doubleval($unit->scale)); + } + + return 0; + } } diff --git a/htdocs/core/class/discount.class.php b/htdocs/core/class/discount.class.php index 724b2a778d8..4cddc65d636 100644 --- a/htdocs/core/class/discount.class.php +++ b/htdocs/core/class/discount.class.php @@ -187,15 +187,11 @@ class DiscountAbsolute $this->db->free($resql); return 1; - } - else - { + } else { $this->db->free($resql); return 0; } - } - else - { + } else { $this->error = $this->db->error(); return -1; } @@ -264,9 +260,7 @@ class DiscountAbsolute { $this->id = $this->db->last_insert_id(MAIN_DB_PREFIX."societe_remise_except"); return $this->id; - } - else - { + } else { $this->error = $this->db->lasterror().' - sql='.$sql; return -1; } @@ -303,9 +297,7 @@ class DiscountAbsolute $this->error = 'ErrorThisPartOrAnotherIsAlreadyUsedSoDiscountSerieCantBeRemoved'; return -2; } - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -331,9 +323,7 @@ class DiscountAbsolute $this->error = 'ErrorThisPartOrAnotherIsAlreadyUsedSoDiscountSerieCantBeRemoved'; return -2; } - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -368,15 +358,12 @@ class DiscountAbsolute { $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -1; } - } - elseif ($this->fk_invoice_supplier_source) { + } elseif ($this->fk_invoice_supplier_source) { $sql = "UPDATE ".MAIN_DB_PREFIX."facture_fourn"; $sql .= " set paye=0, fk_statut=1"; $sql .= " WHERE (type = 2 or type = 3) AND rowid=".$this->fk_invoice_supplier_source; @@ -387,22 +374,16 @@ class DiscountAbsolute { $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -1; } - } - else - { + } else { $this->db->commit(); return 1; } - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -1; @@ -458,9 +439,7 @@ class DiscountAbsolute $this->fk_facture = $rowidinvoice; } return 1; - } - else - { + } else { $this->error = $this->db->error(); return -3; } @@ -490,9 +469,7 @@ class DiscountAbsolute if ($resql) { return 1; - } - else - { + } else { $this->error = $this->db->error(); return -3; } @@ -568,16 +545,13 @@ class DiscountAbsolute $sql .= ' FROM '.MAIN_DB_PREFIX.'societe_remise_except as rc, '.MAIN_DB_PREFIX.'facture as f'; $sql .= ' WHERE rc.fk_facture_source=f.rowid AND rc.fk_facture = '.$invoice->id; $sql .= ' AND f.type = 3'; - } - elseif ($invoice->element == 'invoice_supplier') + } elseif ($invoice->element == 'invoice_supplier') { $sql = 'SELECT sum(rc.amount_ttc) as amount, sum(rc.multicurrency_amount_ttc) as multicurrency_amount'; $sql .= ' FROM '.MAIN_DB_PREFIX.'societe_remise_except as rc, '.MAIN_DB_PREFIX.'facture_fourn as f'; $sql .= ' WHERE rc.fk_invoice_supplier_source=f.rowid AND rc.fk_invoice_supplier = '.$invoice->id; $sql .= ' AND f.type = 3'; - } - else - { + } else { $this->error = get_class($this)."::getSumDepositsUsed was called with a bad object as a first parameter"; dol_print_error($this->error); return -1; @@ -589,9 +563,7 @@ class DiscountAbsolute $obj = $this->db->fetch_object($resql); if ($multicurrency == 1) return $obj->multicurrency_amount; else return $obj->amount; - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -614,16 +586,13 @@ class DiscountAbsolute $sql .= ' FROM '.MAIN_DB_PREFIX.'societe_remise_except as rc, '.MAIN_DB_PREFIX.'facture as f'; $sql .= ' WHERE rc.fk_facture_source=f.rowid AND rc.fk_facture = '.$invoice->id; $sql .= ' AND f.type IN ('.$invoice::TYPE_STANDARD.', '.$invoice::TYPE_CREDIT_NOTE.', '.$invoice::TYPE_SITUATION.')'; // Find discount coming from credit note or excess received - } - elseif ($invoice->element == 'invoice_supplier') + } elseif ($invoice->element == 'invoice_supplier') { $sql = 'SELECT sum(rc.amount_ttc) as amount, sum(rc.multicurrency_amount_ttc) as multicurrency_amount'; $sql .= ' FROM '.MAIN_DB_PREFIX.'societe_remise_except as rc, '.MAIN_DB_PREFIX.'facture_fourn as f'; $sql .= ' WHERE rc.fk_invoice_supplier_source=f.rowid AND rc.fk_invoice_supplier = '.$invoice->id; $sql .= ' AND f.type IN ('.$invoice::TYPE_STANDARD.', '.$invoice::TYPE_CREDIT_NOTE.')'; // Find discount coming from credit note or excess paid - } - else - { + } else { $this->error = get_class($this)."::getSumCreditNotesUsed was called with a bad object as a first parameter"; dol_print_error($this->error); return -1; @@ -635,9 +604,7 @@ class DiscountAbsolute $obj = $this->db->fetch_object($resql); if ($multicurrency == 1) return $obj->multicurrency_amount; else return $obj->amount; - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -658,15 +625,12 @@ class DiscountAbsolute $sql = 'SELECT sum(rc.amount_ttc) as amount, sum(rc.multicurrency_amount_ttc) as multicurrency_amount'; $sql .= ' FROM '.MAIN_DB_PREFIX.'societe_remise_except as rc'; $sql .= ' WHERE rc.fk_facture IS NULL AND rc.fk_facture_source = '.$invoice->id; - } - elseif ($invoice->element == 'invoice_supplier') + } elseif ($invoice->element == 'invoice_supplier') { $sql = 'SELECT sum(rc.amount_ttc) as amount, sum(rc.multicurrency_amount_ttc) as multicurrency_amount'; $sql .= ' FROM '.MAIN_DB_PREFIX.'societe_remise_except as rc'; $sql .= ' WHERE rc.fk_invoice_supplier IS NULL AND rc.fk_invoice_supplier_source = '.$invoice->id; - } - else - { + } else { $this->error = get_class($this)."::getSumCreditNotesUsed was called with a bad object as a first parameter"; dol_print_error($this->error); return -1; @@ -678,9 +642,7 @@ class DiscountAbsolute $obj = $this->db->fetch_object($resql); if ($multicurrency) return $obj->multicurrency_amount; else return $obj->amount; - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } diff --git a/htdocs/core/class/doleditor.class.php b/htdocs/core/class/doleditor.class.php index 8c7a88e925a..d4ee7ccaced 100644 --- a/htdocs/core/class/doleditor.class.php +++ b/htdocs/core/class/doleditor.class.php @@ -259,7 +259,7 @@ class DolEditor })'; $out .= ''."\n"; } -var_dump($this->height); + $out .= '
gi = new GeoIp2\Database\Reader($datfile); // '/usr/local/share/GeoIP/GeoIP2-City.mmdb'
-			}
-			catch (Exception $e)
+			} catch (Exception $e)
 			{
 				$this->error = $e->getMessage();
 				dol_syslog('DolGeoIP '.$this->errorlabel, LOG_ERR);
 				return 0;
 			}
-		}
-		elseif (function_exists('geoip_open'))
+		} elseif (function_exists('geoip_open'))
 		{
 			$this->gi = geoip_open($datfile, GEOIP_STANDARD);
-		}
-		else
-		{
+		} else {
 		    $this->gi = 'NOGI'; // We are using embedded php geoip functions
 		    //print 'function_exists(geoip_country_code_by_name))='.function_exists('geoip_country_code_by_name');
 		    //print geoip_database_info();
@@ -126,9 +120,7 @@ class DolGeoIP
 		{
 		    // geoip_country_code_by_addr does not exists
     		return strtolower(geoip_country_code_by_name($ip));
-		}
-		else
-		{
+		} else {
 			if (preg_match('/^[0-9]+.[0-9]+\.[0-9]+\.[0-9]+/', $ip))
 			{
 				if ($geoipversion == '2')
@@ -136,33 +128,25 @@ class DolGeoIP
 					try {
 						$record = $this->gi->country($ip);
 						return strtolower($record->country->isoCode);
-					}
-					catch (Exception $e) {
+					} catch (Exception $e) {
 						//return $e->getMessage();
 						return '';
 					}
-				}
-				else
-				{
+				} else {
 			    	if (!function_exists('geoip_country_code_by_addr')) return strtolower(geoip_country_code_by_name($this->gi, $ip));
 			    	return strtolower(geoip_country_code_by_addr($this->gi, $ip));
 				}
-			}
-			else
-			{
+			} else {
 				if ($geoipversion == '2')
 				{
 					try {
 						$record = $this->gi->country($ip);
 						return strtolower($record->country->isoCode);
-					}
-					catch (Exception $e) {
+					} catch (Exception $e) {
 						//return $e->getMessage();
 						return '';
 					}
-				}
-				else
-				{
+				} else {
 					if (!function_exists('geoip_country_code_by_addr_v6')) return strtolower(geoip_country_code_by_name_v6($this->gi, $ip));
 					return strtolower(geoip_country_code_by_addr_v6($this->gi, $ip));
 				}
@@ -193,14 +177,11 @@ class DolGeoIP
 			try {
 				$record = $this->gi->country($name);
 				return $record->country->isoCode;
-			}
-			catch (Exception $e) {
+			} catch (Exception $e) {
 				//return $e->getMessage();
 				return '';
 			}
-		}
-		else
-		{
+		} else {
 			return geoip_country_code_by_name($this->gi, $name);
 		}
 	}
diff --git a/htdocs/core/class/dolgraph.class.php b/htdocs/core/class/dolgraph.class.php
index 8af46154223..4ca072897bb 100644
--- a/htdocs/core/class/dolgraph.class.php
+++ b/htdocs/core/class/dolgraph.class.php
@@ -472,14 +472,10 @@ class DolGraph
 			{
 				//print 'ee'.join(',',$theme_bgcoloronglet);
 				$this->bgcolor = $theme_bgcoloronglet;
-			}
-			else
-			{
+			} else {
 				$this->bgcolor = $theme_bgcolor;
 			}
-		}
-		else
-		{
+		} else {
 			$this->bgcolor = $bg_color;
 		}
 	}
@@ -502,14 +498,10 @@ class DolGraph
 			{
 				//print 'ee'.join(',',$theme_bgcoloronglet);
 				$this->bgcolorgrid = $theme_bgcoloronglet;
-			}
-			else
-			{
+			} else {
 				$this->bgcolorgrid = $theme_bgcolor;
 			}
-		}
-		else
-		{
+		} else {
 			$this->bgcolorgrid = $bg_colorgrid;
 		}
 	}
@@ -725,9 +717,7 @@ class DolGraph
 				foreach ($values as $x => $y) {
 					if (isset($y)) $serie[$i] .= 'd'.$i.'.push({"label":"'.dol_escape_js($legends[$x]).'", "data":'.$y.'});'."\n";
 				}
-			}
-			else
-			{
+			} else {
 				foreach ($values as $x => $y) {
 					if (isset($y)) $serie[$i] .= 'd'.$i.'.push(['.$x.', '.$y.']);'."\n";
 				}
@@ -758,9 +748,7 @@ class DolGraph
 		if ($nblot < 0)
 		{
 			$this->stringtoshow .= ''."\n";
-		}
-		else
-		{
+		} else {
 			while ($i < $nblot)
 			{
 				$this->stringtoshow .= ''."\n";
@@ -835,8 +823,7 @@ class DolGraph
 		}'."\n";
 		}
 		// Other cases, graph of type 'bars', 'lines'
-		else
-		{
+		else {
 			// Add code to support tooltips
 		    // TODO: remove js css and use graph-tooltip-inner class instead by adding css in each themes
 			$this->stringtoshow .= '
@@ -894,7 +881,14 @@ class DolGraph
 				if ($i > $firstlot) $this->stringtoshow .= ', '."\n";
 				$color = sprintf("%02x%02x%02x", $this->datacolor[$i][0], $this->datacolor[$i][1], $this->datacolor[$i][2]);
 				$this->stringtoshow .= '{ ';
-				if (!isset($this->type[$i]) || $this->type[$i] == 'bars') $this->stringtoshow .= 'bars: { lineWidth: 1, show: true, align: "'.($i == $firstlot ? 'center' : 'left').'", barWidth: 0.5 }, ';
+				if (! isset($this->type[$i]) || $this->type[$i] == 'bars') {
+                    if ($nblot == 3) {
+                        if ($i == $firstlot) $align = 'right';
+                        elseif ($i == $firstlot + 1) $align = 'center';
+                        else $align = 'left';
+                        $this->stringtoshow .= 'bars: { lineWidth: 1, show: true, align: "'.$align.'", barWidth: 0.45 }, ';
+                    } else $this->stringtoshow.='bars: { lineWidth: 1, show: true, align: "'.($i==$firstlot?'center':'left').'", barWidth: 0.5 }, ';
+                }
 				if (isset($this->type[$i]) && ($this->type[$i] == 'lines' || $this->type[$i] == 'linesnopoint')) $this->stringtoshow .= 'lines: { show: true, fill: false }, points: { show: '.($this->type[$i] == 'linesnopoint' ? 'false' : 'true').' }, ';
 				$this->stringtoshow .= 'color: "#'.$color.'", label: "'.(isset($this->Legend[$i]) ? dol_escape_js($this->Legend[$i]) : '').'", data: d'.$i.' }';
 				$i++;
@@ -1050,9 +1044,7 @@ class DolGraph
 		if ($nblot < 0)
 		{
 			$this->stringtoshow .= '';
-		}
-		else
-		{
+		} else {
 			while ($i < $nblot)
 			{
 				//$this->stringtoshow .= ''."\n";
@@ -1095,8 +1087,7 @@ class DolGraph
 					if (strpos($tmp, '-') !== false) {
 						$foundnegativecolor++;
 						$color = '#FFFFFF'; // If $val is '-123'
-					}
-					else $color = "#".$tmp; // If $val is '123' or '#123'
+					} else $color = "#".$tmp; // If $val is '123' or '#123'
 				}
 				$this->stringtoshow .= "'".$color."'";
 				$i++;
@@ -1162,8 +1153,7 @@ class DolGraph
 			$this->stringtoshow .= '});'."\n";
 		}
 		// Other cases, graph of type 'bars', 'lines', 'linesnopoint'
-		else
-		{
+		else {
 			$type = 'bar';
 			if (!isset($this->type[$firstlot]) || $this->type[$firstlot] == 'bars') $type = 'bar';
 			if (isset($this->type[$firstlot]) && ($this->type[$firstlot] == 'lines' || $this->type[$firstlot] == 'linesnopoint')) $type = 'line';
diff --git a/htdocs/core/class/dolreceiptprinter.class.php b/htdocs/core/class/dolreceiptprinter.class.php
index 7c5f72e12c6..f921e8ad638 100644
--- a/htdocs/core/class/dolreceiptprinter.class.php
+++ b/htdocs/core/class/dolreceiptprinter.class.php
@@ -732,7 +732,7 @@ class dolReceiptPrinter extends Printer
                         break;
 					case 'DOL_PRINT_ORDER_LINES':
 						foreach ($object->lines as $line) {
-							if ($line->special_code==$this->orderprinter)
+							if ($line->special_code == $this->orderprinter)
 							{
 								$spacestoadd = $nbcharactbyline - strlen($line->ref) - strlen($line->qty) - 10 - 1;
 								$spaces = str_repeat(' ', $spacestoadd);
diff --git a/htdocs/core/class/emailsenderprofile.class.php b/htdocs/core/class/emailsenderprofile.class.php
index 3bac7c8c2cc..25a0d2a25c5 100644
--- a/htdocs/core/class/emailsenderprofile.class.php
+++ b/htdocs/core/class/emailsenderprofile.class.php
@@ -350,28 +350,23 @@ class EmailSenderProfile extends CommonObject
 		{
 			if ($status == 1) return $langs->trans('Enabled');
 			elseif ($status == 0) return $langs->trans('Disabled');
-		}
-		elseif ($mode == 2)
+		} elseif ($mode == 2)
 		{
 			if ($status == 1) return img_picto($langs->trans('Enabled'), 'statut4').' '.$langs->trans('Enabled');
 			elseif ($status == 0) return img_picto($langs->trans('Disabled'), 'statut5').' '.$langs->trans('Disabled');
-		}
-		elseif ($mode == 3)
+		} elseif ($mode == 3)
 		{
 			if ($status == 1) return img_picto($langs->trans('Enabled'), 'statut4');
 			elseif ($status == 0) return img_picto($langs->trans('Disabled'), 'statut5');
-		}
-		elseif ($mode == 4)
+		} elseif ($mode == 4)
 		{
 			if ($status == 1) return img_picto($langs->trans('Enabled'), 'statut4').' '.$langs->trans('Enabled');
 			elseif ($status == 0) return img_picto($langs->trans('Disabled'), 'statut5').' '.$langs->trans('Disabled');
-		}
-		elseif ($mode == 5)
+		} elseif ($mode == 5)
 		{
 			if ($status == 1) return $langs->trans('Enabled').' '.img_picto($langs->trans('Enabled'), 'statut4');
 			elseif ($status == 0) return $langs->trans('Disabled').' '.img_picto($langs->trans('Disabled'), 'statut5');
-		}
-		elseif ($mode == 6)
+		} elseif ($mode == 6)
 		{
 			if ($status == 1) return $langs->trans('Enabled').' '.img_picto($langs->trans('Enabled'), 'statut4');
 			elseif ($status == 0) return $langs->trans('Disabled').' '.img_picto($langs->trans('Disabled'), 'statut5');
@@ -424,9 +419,7 @@ class EmailSenderProfile extends CommonObject
 			}
 
 			$this->db->free($result);
-		}
-		else
-		{
+		} else {
 			dol_print_error($this->db);
 		}
 	}
diff --git a/htdocs/core/class/evalmath.class.php b/htdocs/core/class/evalmath.class.php
index b0fcc963eba..4b261a0f3c6 100644
--- a/htdocs/core/class/evalmath.class.php
+++ b/htdocs/core/class/evalmath.class.php
@@ -272,8 +272,7 @@ class EvalMath
 				while (($o2 = $stack->pop()) != '(') { // pop off the stack back to the last (
 					if (is_null($o2))
 						return $this->trigger(5, "unexpected ')'", ")");
-					else
-						$output[] = $o2;
+					else $output[] = $o2;
 				}
 				if (preg_match("/^([a-z]\w*)\($/", $stack->last(2), $matches)) { // did we just close a function?
 					$fnn = $matches[1]; // get the function name
@@ -295,8 +294,7 @@ class EvalMath
 				while (($o2 = $stack->pop()) != '(') {
 					if (is_null($o2))
 						return $this->trigger(5, "unexpected ','", ","); // oops, never had a (
-					else
-						$output[] = $o2; // pop the argument expression stuff and push onto the output
+					else $output[] = $o2; // pop the argument expression stuff and push onto the output
 				}
 				// make sure there was a function
 				if (!preg_match("/^([a-z]\w*)\($/", $stack->last(2), $matches))
diff --git a/htdocs/core/class/events.class.php b/htdocs/core/class/events.class.php
index 9c2e5b145dd..bffd23f05d2 100644
--- a/htdocs/core/class/events.class.php
+++ b/htdocs/core/class/events.class.php
@@ -173,9 +173,7 @@ class Events // extends CommonObject
 		{
 			$this->id = $this->db->last_insert_id(MAIN_DB_PREFIX."events");
 			return $this->id;
-		}
-		else
-		{
+		} else {
 			$this->error = "Error ".$this->db->lasterror();
 			return -1;
 		}
@@ -260,9 +258,7 @@ class Events // extends CommonObject
 			$this->db->free($resql);
 
 			return 1;
-		}
-		else
-		{
+		} else {
 			$this->error = "Error ".$this->db->lasterror();
 			return -1;
 		}
diff --git a/htdocs/core/class/extrafields.class.php b/htdocs/core/class/extrafields.class.php
index a5c6e74733c..c82e877fa80 100644
--- a/htdocs/core/class/extrafields.class.php
+++ b/htdocs/core/class/extrafields.class.php
@@ -43,7 +43,7 @@ class ExtraFields
     public $db;
 
 	/**
-     * @var string type of element (for what object is the extrafield)
+     * @var array Array with type of element (for what object is the extrafield)
 	 * @deprecated
      */
     public $attribute_elementtype;
@@ -253,11 +253,8 @@ class ExtraFields
 				$this->error = '';
 				$this->errno = 0;
 				return 1;
-			}
-			else return -2;
-		}
-		else
-		{
+			} else return -2;
+		} else {
 			return -1;
 		}
 	}
@@ -338,16 +335,12 @@ class ExtraFields
 					$resql = $this->db->query($sql, 1, 'dml');
 				}
 				return 1;
-			}
-			else
-			{
+			} else {
 				$this->error = $this->db->lasterror();
 				$this->errno = $this->db->lasterrno();
 				return -1;
 			}
-		}
-		else
-		{
+		} else {
 			return 0;
 		}
 	}
@@ -401,13 +394,10 @@ class ExtraFields
 			if (is_array($param) && count($param) > 0)
 			{
 				$params = serialize($param);
-			}
-			elseif (strlen($param) > 0)
+			} elseif (strlen($param) > 0)
 			{
 				$params = trim($param);
-			}
-			else
-			{
+			} else {
 				$params = '';
 			}
 
@@ -465,9 +455,7 @@ class ExtraFields
 			if ($this->db->query($sql))
 			{
 				return 1;
-			}
-			else
-			{
+			} else {
 				$this->error = $this->db->lasterror();
 				$this->errno = $this->db->lasterrno();
 				return -1;
@@ -527,9 +515,7 @@ class ExtraFields
 			}
 
 			return $result;
-		}
-		else
-		{
+		} else {
 			return 0;
 		}
 	}
@@ -562,15 +548,11 @@ class ExtraFields
 			if ($resql)
 			{
 				return 1;
-			}
-			else
-			{
+			} else {
 				dol_print_error($this->db);
 				return -1;
 			}
-		}
-		else
-		{
+		} else {
 			return 0;
 		}
 	}
@@ -659,29 +641,21 @@ class ExtraFields
 					if ($unique)
 					{
 						$sql = "ALTER TABLE ".MAIN_DB_PREFIX.$table." ADD UNIQUE INDEX uk_".$table."_".$attrname." (".$attrname.")";
-					}
-					else
-					{
+					} else {
 						$sql = "ALTER TABLE ".MAIN_DB_PREFIX.$table." DROP INDEX uk_".$table."_".$attrname;
 					}
 					dol_syslog(get_class($this).'::update', LOG_DEBUG);
 					$resql = $this->db->query($sql, 1, 'dml');
 					return 1;
-				}
-				else
-				{
+				} else {
 					$this->error = $this->db->lasterror();
 					return -1;
 				}
-			}
-			else
-			{
+			} else {
 				$this->error = $this->db->lasterror();
 				return -1;
 			}
-		}
-		else
-		{
+		} else {
 			return 0;
 		}
 	}
@@ -739,13 +713,10 @@ class ExtraFields
 			if (is_array($param) && count($param) > 0)
 			{
 				$params = serialize($param);
-			}
-			elseif (strlen($param) > 0)
+			} elseif (strlen($param) > 0)
 			{
 				$params = trim($param);
-			}
-			else
-			{
+			} else {
 				$params = '';
 			}
 
@@ -756,9 +727,7 @@ class ExtraFields
 				$sql_del .= " WHERE name = '".$attrname."'";
 				$sql_del .= " AND entity IN (0, ".($entity === '' ? $conf->entity : $entity).")";
 				$sql_del .= " AND elementtype = '".$elementtype."'";
-			}
-			else
-			{
+			} else {
 				// We want on all entities ($entities = '0'), we delete on all only (we keep setup specific to each entity)
 				$sql_del = "DELETE FROM ".MAIN_DB_PREFIX."extrafields";
 				$sql_del .= " WHERE name = '".$attrname."'";
@@ -823,16 +792,12 @@ class ExtraFields
 			{
 				$this->db->commit();
 				return 1;
-			}
-			else
-			{
+			} else {
 				$this->db->rollback();
 				dol_print_error($this->db);
 				return -1;
 			}
-		}
-		else
-		{
+		} else {
 			return 0;
 		}
 	}
@@ -932,9 +897,7 @@ class ExtraFields
 				}
 			}
 			if ($elementtype) $this->attributes[$elementtype]['loaded'] = 1; // If nothing found, we also save tag 'loaded'
-		}
-		else
-		{
+		} else {
 			$this->error = $this->db->lasterror();
 			dol_syslog(get_class($this)."::fetch_name_optionals_label ".$this->error, LOG_ERR);
 		}
@@ -991,8 +954,7 @@ class ExtraFields
 			$totalizable = $this->attributes[$extrafieldsobjectkey]['totalizable'][$key];
 			$help = $this->attributes[$extrafieldsobjectkey]['help'][$key];
 			$hidden = (empty($list) ? 1 : 0); // If empty, we are sure it is hidden, otherwise we show. If it depends on mode (view/create/edit form or list, this must be filtered by caller)
-		}
-		else	// Old usage
+		} else // Old usage
 		{
 			$label = $this->attribute_label[$key];
 			$type = $this->attribute_type[$key];
@@ -1020,39 +982,29 @@ class ExtraFields
 			if ($type == 'date')
 			{
 				$morecss = 'minwidth100imp';
-			}
-			elseif ($type == 'datetime' || $type == 'link')
+			} elseif ($type == 'datetime' || $type == 'link')
 			{
 				$morecss = 'minwidth200imp';
-			}
-			elseif (in_array($type, array('int', 'integer', 'double', 'price')))
+			} elseif (in_array($type, array('int', 'integer', 'double', 'price')))
 			{
 				$morecss = 'maxwidth75';
-			}
-			elseif ($type == 'password')
+			} elseif ($type == 'password')
 			{
 				$morecss = 'maxwidth100';
-			}
-			elseif ($type == 'url')
+			} elseif ($type == 'url')
 			{
 				$morecss = 'minwidth400';
-			}
-			elseif ($type == 'boolean')
+			} elseif ($type == 'boolean')
 			{
 				$morecss = '';
-			}
-			else
-			{
+			} else {
 				if (round($size) < 12)
 				{
 					$morecss = 'minwidth100';
-				}
-				elseif (round($size) <= 48)
+				} elseif (round($size) <= 48)
 				{
 					$morecss = 'minwidth200';
-				}
-				else
-				{
+				} else {
 					$morecss = 'minwidth400';
 				}
 			}
@@ -1070,48 +1022,38 @@ class ExtraFields
 
 			// TODO Must also support $moreparam
 			$out = $form->selectDate($value, $keyprefix.$key.$keysuffix, $showtime, $showtime, $required, '', 1, (($keyprefix != 'search_' && $keyprefix != 'search_options_') ? 1 : 0), 0, 1);
-		}
-		elseif (in_array($type, array('int', 'integer')))
+		} elseif (in_array($type, array('int', 'integer')))
 		{
 			$tmp = explode(',', $size);
 			$newsize = $tmp[0];
 			$out = '';
-		}
-		elseif (preg_match('/varchar/', $type))
+		} elseif (preg_match('/varchar/', $type))
 		{
 			$out = '';
-		}
-		elseif (in_array($type, array('mail', 'phone', 'url')))
+		} elseif (in_array($type, array('mail', 'phone', 'url')))
 		{
 			$out = '';
-		}
-		elseif ($type == 'text')
+		} elseif ($type == 'text')
 		{
 			if (!preg_match('/search_/', $keyprefix))		// If keyprefix is search_ or search_options_, we must just use a simple text field
 			{
 				require_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php';
 				$doleditor = new DolEditor($keyprefix.$key.$keysuffix, $value, '', 200, 'dolibarr_notes', 'In', false, false, false, ROWS_5, '90%');
 				$out = $doleditor->Create(1);
-			}
-			else
-			{
+			} else {
 				$out = '';
 			}
-		}
-		elseif ($type == 'html')
+		} elseif ($type == 'html')
 		{
 			if (!preg_match('/search_/', $keyprefix))		// If keyprefix is search_ or search_options_, we must just use a simple text field
 			{
 				require_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php';
 				$doleditor = new DolEditor($keyprefix.$key.$keysuffix, $value, '', 200, 'dolibarr_notes', 'In', false, false, !empty($conf->fckeditor->enabled) && $conf->global->FCKEDITOR_ENABLE_SOCIETE, ROWS_5, '90%');
 				$out = $doleditor->Create(1);
-			}
-			else
-			{
+			} else {
 				$out = '';
 			}
-		}
-		elseif ($type == 'boolean')
+		} elseif ($type == 'boolean')
 		{
 			if (empty($mode))
 			{
@@ -1122,27 +1064,22 @@ class ExtraFields
 					$checked = ' value="1" ';
 				}
 				$out = '';
-			}
-			else
-			{
+			} else {
 				$out .= $form->selectyesno($keyprefix.$key.$keysuffix, $value, 1, false, 1);
 			}
-		}
-		elseif ($type == 'price')
+		} elseif ($type == 'price')
 		{
 			if (!empty($value)) {		// $value in memory is a php numeric, we format it into user number format.
 				$value = price($value);
 			}
 			$out = ' '.$langs->getCurrencySymbol($conf->currency);
-		}
-		elseif ($type == 'double')
+		} elseif ($type == 'double')
 		{
 			if (!empty($value)) {		// $value in memory is a php numeric, we format it into user number format.
 				$value = price($value);
 			}
 			$out = ' ';
-		}
-		elseif ($type == 'select')
+		} elseif ($type == 'select')
 		{
 			$out = '';
 			if (!empty($conf->use_javascript_ajax) && !empty($conf->global->MAIN_EXTRAFIELDS_USE_SELECT2))
@@ -1166,8 +1103,7 @@ class ExtraFields
 				$out .= '';
 			}
 			$out .= '';
-		}
-		elseif ($type == 'sellist')
+		} elseif ($type == 'sellist')
 		{
 			$out = '';
 			if (!empty($conf->use_javascript_ajax) && !empty($conf->global->MAIN_EXTRAFIELDS_USE_SELECT2))
@@ -1326,13 +1262,11 @@ class ExtraFields
                 }
 			}
 			$out .= '';
-		}
-		elseif ($type == 'checkbox')
+		} elseif ($type == 'checkbox')
 		{
 			$value_arr = explode(',', $value);
 			$out = $form->multiselectarray($keyprefix.$key.$keysuffix, (empty($param['options']) ?null:$param['options']), $value_arr, '', 0, '', 0, '100%');
-		}
-		elseif ($type == 'radio')
+		} elseif ($type == 'radio')
 		{
 			$out = '';
 			foreach ($param['options'] as $keyopt => $val)
@@ -1343,13 +1277,11 @@ class ExtraFields
 				$out .= ($value == $keyopt ? 'checked' : '');
 				$out .= '/>
'; } - } - elseif ($type == 'chkbxlst') + } elseif ($type == 'chkbxlst') { if (is_array($value)) { $value_arr = $value; - } - else { + } else { $value_arr = explode(',', $value); } @@ -1547,14 +1479,12 @@ class ExtraFields $out = $form->multiselectarray($keyprefix.$key.$keysuffix, $data, $value_arr, '', 0, '', 0, '100%'); } } - } - elseif ($type == 'link') + } elseif ($type == 'link') { $param_list = array_keys($param['options']); // $param_list='ObjectName:classPath' $showempty = (($required && $default != '') ? 0 : 1); $out = $form->selectForForms($param_list[0], $keyprefix.$key.$keysuffix, $value, $showempty, '', '', $morecss); - } - elseif ($type == 'password') + } elseif ($type == 'password') { // If prefix is 'search_', field is used as a filter, we use a common text field. $out = ''; // Hidden field to reduce impact of evil Google Chrome autopopulate bug. @@ -1602,8 +1532,7 @@ class ExtraFields $list = dol_eval($this->attributes[$extrafieldsobjectkey]['list'][$key], 1); $help = $this->attributes[$extrafieldsobjectkey]['help'][$key]; $hidden = (empty($list) ? 1 : 0); // If $list empty, we are sure it is hidden, otherwise we show. If it depends on mode (view/create/edit form or list, this must be filtered by caller) - } - else // Old usage + } else // Old usage { //dol_syslog("Warning: parameter 'extrafieldsobjectkey' is missing", LOG_WARNING); $label = $this->attribute_label[$key]; @@ -1630,17 +1559,14 @@ class ExtraFields { $showsize = 10; $value = dol_print_date($value, 'day'); - } - elseif ($type == 'datetime') + } elseif ($type == 'datetime') { $showsize = 19; $value = dol_print_date($value, 'dayhour'); - } - elseif ($type == 'int') + } elseif ($type == 'int') { $showsize = 10; - } - elseif ($type == 'double') + } elseif ($type == 'double') { if (!empty($value)) { //$value=price($value); @@ -1648,37 +1574,31 @@ class ExtraFields $number_decimals = $sizeparts[1]; $value = price($value, 0, $langs, 0, 0, $number_decimals, ''); } - } - elseif ($type == 'boolean') + } elseif ($type == 'boolean') { $checked = ''; if (!empty($value)) { $checked = ' checked '; } $value = ''; - } - elseif ($type == 'mail') + } elseif ($type == 'mail') { $value = dol_print_email($value, 0, 0, 0, 64, 1, 1); - } - elseif ($type == 'url') + } elseif ($type == 'url') { $value = dol_print_url($value, '_blank', 32, 1); - } - elseif ($type == 'phone') + } elseif ($type == 'phone') { $value = dol_print_phone($value, '', 0, 0, '', ' ', 'phone'); - } - elseif ($type == 'price') + } elseif ($type == 'price') { - $value = price($value, 0, $langs, 0, 0, -1, $conf->currency); - } - elseif ($type == 'select') + //$value = price($value, 0, $langs, 0, 0, -1, $conf->currency); + if ($value || $value == '0') $value = price($value, 0, $langs, 0, 0, -1); + } elseif ($type == 'select') { if ($langfile && $param['options'][$value]) $value = $langs->trans($param['options'][$value]); else $value = $param['options'][$value]; - } - elseif ($type == 'sellist') + } elseif ($type == 'sellist') { $param_list = array_keys($param['options']); $InfoFieldList = explode(":", $param_list[0]); @@ -1739,9 +1659,7 @@ class ExtraFields $value .= $obj->$field_toshow.' '; } } - } - else - { + } else { $translabel = ''; if (!empty($obj->{$InfoFieldList[1]})) { $translabel = $langs->trans($obj->{$InfoFieldList[1]}); @@ -1752,14 +1670,11 @@ class ExtraFields $value = $obj->{$InfoFieldList[1]}; } } - } - else dol_syslog(get_class($this).'::showOutputField error '.$this->db->lasterror(), LOG_WARNING); - } - elseif ($type == 'radio') + } else dol_syslog(get_class($this).'::showOutputField error '.$this->db->lasterror(), LOG_WARNING); + } elseif ($type == 'radio') { $value = $param['options'][$value]; - } - elseif ($type == 'checkbox') + } elseif ($type == 'checkbox') { $value_arr = explode(',', $value); $value = ''; @@ -1771,8 +1686,7 @@ class ExtraFields } } $value = '
    '.implode(' ', $toprint).'
'; - } - elseif ($type == 'chkbxlst') + } elseif ($type == 'chkbxlst') { $value_arr = explode(',', $value); @@ -1839,8 +1753,7 @@ class ExtraFields } else { dol_syslog(get_class($this).'::showOutputField error '.$this->db->lasterror(), LOG_WARNING); } - } - elseif ($type == 'link') + } elseif ($type == 'link') { $out = ''; @@ -1861,28 +1774,21 @@ class ExtraFields $object->fetch($value); $value = $object->getNomUrl(3); } - } - else - { + } else { dol_syslog('Error bad setup of extrafield', LOG_WARNING); return 'Error bad setup of extrafield'; } } - } - elseif ($type == 'text') + } elseif ($type == 'text') { $value = dol_htmlentitiesbr($value); - } - elseif ($type == 'html') + } elseif ($type == 'html') { $value = dol_htmlentitiesbr($value); - } - elseif ($type == 'password') + } elseif ($type == 'password') { $value = dol_trunc(preg_replace('/./i', '*', $value), 8, 'right', 'UTF-8', 1); - } - else - { + } else { $showsize = round($size); if ($showsize > 48) $showsize = 48; } @@ -1912,36 +1818,28 @@ class ExtraFields if ($type == 'date') { $align = "center"; - } - elseif ($type == 'datetime') + } elseif ($type == 'datetime') { $align = "center"; - } - elseif ($type == 'int') + } elseif ($type == 'int') { $align = "right"; - } - elseif ($type == 'price') + } elseif ($type == 'price') { $align = "right"; - } - elseif ($type == 'double') + } elseif ($type == 'double') { $align = "right"; - } - elseif ($type == 'boolean') + } elseif ($type == 'boolean') { $align = "center"; - } - elseif ($type == 'radio') + } elseif ($type == 'radio') { $align = "center"; - } - elseif ($type == 'checkbox') + } elseif ($type == 'checkbox') { $align = "center"; - } - elseif ($type == 'price') + } elseif ($type == 'price') { $align = "right"; } @@ -2064,14 +1962,12 @@ class ExtraFields // Clean parameters // TODO GMT date in memory must be GMT so we should add gm=true in parameters $value_key = dol_mktime(0, 0, 0, $_POST["options_".$key."month"], $_POST["options_".$key."day"], $_POST["options_".$key."year"]); - } - elseif (in_array($key_type, array('datetime'))) + } elseif (in_array($key_type, array('datetime'))) { // Clean parameters // TODO GMT date in memory must be GMT so we should add gm=true in parameters $value_key = dol_mktime($_POST["options_".$key."hour"], $_POST["options_".$key."min"], 0, $_POST["options_".$key."month"], $_POST["options_".$key."day"], $_POST["options_".$key."year"]); - } - elseif (in_array($key_type, array('checkbox', 'chkbxlst'))) + } elseif (in_array($key_type, array('checkbox', 'chkbxlst'))) { $value_arr = GETPOST("options_".$key, 'array'); // check if an array if (!empty($value_arr)) { @@ -2079,14 +1975,11 @@ class ExtraFields } else { $value_key = ''; } - } - elseif (in_array($key_type, array('price', 'double'))) + } elseif (in_array($key_type, array('price', 'double'))) { $value_arr = GETPOST("options_".$key, 'alpha'); $value_key = price2num($value_arr); - } - else - { + } else { $value_key = GETPOST("options_".$key); if (in_array($key_type, array('link')) && $value_key == '-1') $value_key = ''; } @@ -2098,12 +1991,10 @@ class ExtraFields $langs->load('errors'); setEventMessages($langs->trans('ErrorFieldsRequired').' : '.implode(', ', $error_field_required), null, 'errors'); return -1; - } - else { + } else { return 1; } - } - else { + } else { return 0; } } @@ -2123,9 +2014,7 @@ class ExtraFields if (is_string($extrafieldsobjectkey) && is_array($this->attributes[$extrafieldsobjectkey]['label'])) { $extralabels = $this->attributes[$extrafieldsobjectkey]['label']; - } - else - { + } else { $extralabels = $extrafieldsobjectkey; } @@ -2147,23 +2036,19 @@ class ExtraFields if (!GETPOSTISSET($keysuffix."options_".$key.$keyprefix."year")) continue; // Value was not provided, we should not set it. // Clean parameters $value_key = dol_mktime(GETPOST($keysuffix."options_".$key.$keyprefix."hour", 'int'), GETPOST($keysuffix."options_".$key.$keyprefix."min", 'int'), 0, GETPOST($keysuffix."options_".$key.$keyprefix."month", 'int'), GETPOST($keysuffix."options_".$key.$keyprefix."day", 'int'), GETPOST($keysuffix."options_".$key.$keyprefix."year", 'int')); - } - elseif (in_array($key_type, array('checkbox', 'chkbxlst'))) + } elseif (in_array($key_type, array('checkbox', 'chkbxlst'))) { if (!GETPOSTISSET($keysuffix."options_".$key.$keyprefix)) continue; // Value was not provided, we should not set it. $value_arr = GETPOST($keysuffix."options_".$key.$keyprefix); // Make sure we get an array even if there's only one checkbox $value_arr = (array) $value_arr; $value_key = implode(',', $value_arr); - } - elseif (in_array($key_type, array('price', 'double', 'int'))) + } elseif (in_array($key_type, array('price', 'double', 'int'))) { if (!GETPOSTISSET($keysuffix."options_".$key.$keyprefix)) continue; // Value was not provided, we should not set it. $value_arr = GETPOST($keysuffix."options_".$key.$keyprefix); $value_key = price2num($value_arr); - } - else - { + } else { if (!GETPOSTISSET($keysuffix."options_".$key.$keyprefix)) continue; // Value was not provided, we should not set it. $value_key = GETPOST($keysuffix."options_".$key.$keyprefix); } diff --git a/htdocs/core/class/extralanguages.class.php b/htdocs/core/class/extralanguages.class.php index 8f61e84839c..17851b09a6d 100644 --- a/htdocs/core/class/extralanguages.class.php +++ b/htdocs/core/class/extralanguages.class.php @@ -18,7 +18,7 @@ /** * \file htdocs/core/class/extralanguages.class.php * \ingroup core - * \brief File of class to manage extra fields + * \brief File of class to manage extra languages for some fields */ @@ -69,7 +69,10 @@ class ExtraLanguages // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps /** - * Load array this->attributes + * Load array this->attributes with list of fields per object that need an alternate translation. The object and field must be managed with + * the widgetForTranslation() method. + * You can set variable MAIN_USE_ALTERNATE_TRANSLATION_FOR=elementA:fieldname,fieldname2;elementB:... + * Example: MAIN_USE_ALTERNATE_TRANSLATION_FOR=societe:name,town;contact:firstname,lastname * * @param string $elementtype Type of element ('' = all, 'adherent', 'commande', 'thirdparty', 'facture', 'propal', 'product', ...). * @param boolean $forceload Force load of extra fields whatever is status of cache. @@ -86,11 +89,25 @@ class ExtraLanguages if ($elementtype == 'contact') $elementtype = 'socpeople'; if ($elementtype == 'order_supplier') $elementtype = 'commande_fournisseur'; - $array_name_label = array( - 'societe' => array('name'=>'Name'), - 'contact' => array('firstname' => 'Firstname', 'lastname' => 'Lastname') - ); + $array_name_label = array(); + if (!empty($conf->global->MAIN_USE_ALTERNATE_TRANSLATION_FOR)) { + $tmpelement = explode(';', $conf->global->MAIN_USE_ALTERNATE_TRANSLATION_FOR); + foreach ($tmpelement as $elementstring) { + $reg = array(); + preg_match('/^(.*):(.*)$/', $elementstring, $reg); + $element = $reg[1]; + $array_name_label[$element] = array(); + $tmpfields = explode(',', $reg[2]); + foreach ($tmpfields as $field) { + //var_dump($fields); + //$tmpkeyvar = explode(':', $fields); + //$array_name_label[$element][$tmpkeyvar[0]] = $tmpkeyvar[1]; + $array_name_label[$element][$field] = $field; + } + } + } + //var_dump($array_name_label); $this->attributes = $array_name_label; return $array_name_label; @@ -103,16 +120,16 @@ class ExtraLanguages * * @param string $key Key of attribute * @param string $value Preselected value to show (for date type it must be in timestamp format, for amount or price it must be a php numeric value) + * @param string $extrafieldsobjectkey If defined (for example $object->table_element), use the new method to get extrafields data * @param string $moreparam To add more parametes on html input tag * @param string $keysuffix Prefix string to add after name and id of field (can be used to avoid duplicate names) * @param string $keyprefix Suffix string to add before name and id of field (can be used to avoid duplicate names) * @param string $morecss More css (to defined size of field. Old behaviour: may also be a numeric) * @param int $objectid Current object id - * @param string $extrafieldsobjectkey If defined (for example $object->table_element), use the new method to get extrafields data * @param string $mode 1=Used for search filters * @return string */ - public function showInputField($key, $value, $moreparam = '', $keysuffix = '', $keyprefix = '', $morecss = '', $objectid = 0, $extrafieldsobjectkey = '', $mode = 0) + public function showInputField($key, $value, $extrafieldsobjectkey, $moreparam = '', $keysuffix = '', $keyprefix = '', $morecss = '', $objectid = 0, $mode = 0) { global $conf, $langs, $form; @@ -129,601 +146,6 @@ class ExtraLanguages $keyprefix = $keyprefix.'options_'; } - if (!empty($extrafieldsobjectkey)) - { - $label = $this->attributes[$extrafieldsobjectkey]['label'][$key]; - $type = $this->attributes[$extrafieldsobjectkey]['type'][$key]; - $size = $this->attributes[$extrafieldsobjectkey]['size'][$key]; - $default = $this->attributes[$extrafieldsobjectkey]['default'][$key]; - $computed = $this->attributes[$extrafieldsobjectkey]['computed'][$key]; - $unique = $this->attributes[$extrafieldsobjectkey]['unique'][$key]; - $required = $this->attributes[$extrafieldsobjectkey]['required'][$key]; - $param = $this->attributes[$extrafieldsobjectkey]['param'][$key]; - $perms = dol_eval($this->attributes[$extrafieldsobjectkey]['perms'][$key], 1); - $langfile = $this->attributes[$extrafieldsobjectkey]['langfile'][$key]; - $list = dol_eval($this->attributes[$extrafieldsobjectkey]['list'][$key], 1); - $totalizable = $this->attributes[$extrafieldsobjectkey]['totalizable'][$key]; - $help = $this->attributes[$extrafieldsobjectkey]['help'][$key]; - $hidden = (empty($list) ? 1 : 0); // If empty, we are sure it is hidden, otherwise we show. If it depends on mode (view/create/edit form or list, this must be filtered by caller) - } - else // Old usage - { - $label = $this->attribute_label[$key]; - $type = $this->attribute_type[$key]; - $size = $this->attribute_size[$key]; - $elementtype = $this->attribute_elementtype[$key]; // Seems not used - $default = $this->attribute_default[$key]; - $computed = $this->attribute_computed[$key]; - $unique = $this->attribute_unique[$key]; - $required = $this->attribute_required[$key]; - $param = $this->attribute_param[$key]; - $langfile = $this->attribute_langfile[$key]; - $list = $this->attribute_list[$key]; - $totalizable = $this->attribute_totalizable[$key]; - $hidden = (empty($list) ? 1 : 0); // If empty, we are sure it is hidden, otherwise we show. If it depends on mode (view/create/edit form or list, this must be filtered by caller) - } - - if ($computed) - { - if (!preg_match('/^search_/', $keyprefix)) return ''.$langs->trans("AutomaticallyCalculated").''; - else return ''; - } - - if (empty($morecss)) - { - if ($type == 'date') - { - $morecss = 'minwidth100imp'; - } - elseif ($type == 'datetime' || $type == 'link') - { - $morecss = 'minwidth200imp'; - } - elseif (in_array($type, array('int', 'integer', 'double', 'price'))) - { - $morecss = 'maxwidth75'; - } - elseif ($type == 'password') - { - $morecss = 'maxwidth100'; - } - elseif ($type == 'url') - { - $morecss = 'minwidth400'; - } - elseif ($type == 'boolean') - { - $morecss = ''; - } - else - { - if (round($size) < 12) - { - $morecss = 'minwidth100'; - } - elseif (round($size) <= 48) - { - $morecss = 'minwidth200'; - } - else - { - $morecss = 'minwidth400'; - } - } - } - - if (in_array($type, array('date', 'datetime'))) - { - $tmp = explode(',', $size); - $newsize = $tmp[0]; - - $showtime = in_array($type, array('datetime')) ? 1 : 0; - - // Do not show current date when field not required (see selectDate() method) - if (!$required && $value == '') $value = '-1'; - - // TODO Must also support $moreparam - $out = $form->selectDate($value, $keyprefix.$key.$keysuffix, $showtime, $showtime, $required, '', 1, (($keyprefix != 'search_' && $keyprefix != 'search_options_') ? 1 : 0), 0, 1); - } - elseif (in_array($type, array('int', 'integer'))) - { - $tmp = explode(',', $size); - $newsize = $tmp[0]; - $out = ''; - } - elseif (preg_match('/varchar/', $type)) - { - $out = ''; - } - elseif (in_array($type, array('mail', 'phone', 'url'))) - { - $out = ''; - } - elseif ($type == 'text') - { - if (!preg_match('/search_/', $keyprefix)) // If keyprefix is search_ or search_options_, we must just use a simple text field - { - require_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php'; - $doleditor = new DolEditor($keyprefix.$key.$keysuffix, $value, '', 200, 'dolibarr_notes', 'In', false, false, false, ROWS_5, '90%'); - $out = $doleditor->Create(1); - } - else - { - $out = ''; - } - } - elseif ($type == 'html') - { - if (!preg_match('/search_/', $keyprefix)) // If keyprefix is search_ or search_options_, we must just use a simple text field - { - require_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php'; - $doleditor = new DolEditor($keyprefix.$key.$keysuffix, $value, '', 200, 'dolibarr_notes', 'In', false, false, !empty($conf->fckeditor->enabled) && $conf->global->FCKEDITOR_ENABLE_SOCIETE, ROWS_5, '90%'); - $out = $doleditor->Create(1); - } - else - { - $out = ''; - } - } - elseif ($type == 'boolean') - { - if (empty($mode)) - { - $checked = ''; - if (!empty($value)) { - $checked = ' checked value="1" '; - } else { - $checked = ' value="1" '; - } - $out = ''; - } - else - { - $out .= $form->selectyesno($keyprefix.$key.$keysuffix, $value, 1, false, 1); - } - } - elseif ($type == 'price') - { - if (!empty($value)) { // $value in memory is a php numeric, we format it into user number format. - $value = price($value); - } - $out = ' '.$langs->getCurrencySymbol($conf->currency); - } - elseif ($type == 'double') - { - if (!empty($value)) { // $value in memory is a php numeric, we format it into user number format. - $value = price($value); - } - $out = ' '; - } - elseif ($type == 'select') - { - $out = ''; - if (!empty($conf->use_javascript_ajax) && !empty($conf->global->MAIN_EXTRAFIELDS_USE_SELECT2)) - { - include_once DOL_DOCUMENT_ROOT.'/core/lib/ajax.lib.php'; - $out .= ajax_combobox($keyprefix.$key.$keysuffix, array(), 0); - } - - $out .= ''; - } - elseif ($type == 'sellist') - { - $out = ''; - if (!empty($conf->use_javascript_ajax) && !empty($conf->global->MAIN_EXTRAFIELDS_USE_SELECT2)) - { - include_once DOL_DOCUMENT_ROOT.'/core/lib/ajax.lib.php'; - $out .= ajax_combobox($keyprefix.$key.$keysuffix, array(), 0); - } - - $out .= ''; - } - elseif ($type == 'checkbox') - { - $value_arr = explode(',', $value); - $out = $form->multiselectarray($keyprefix.$key.$keysuffix, (empty($param['options']) ?null:$param['options']), $value_arr, '', 0, '', 0, '100%'); - } - elseif ($type == 'radio') - { - $out = ''; - foreach ($param['options'] as $keyopt => $val) - { - $out .= ''.$val.'
'; - } - } - elseif ($type == 'chkbxlst') - { - if (is_array($value)) { - $value_arr = $value; - } - else { - $value_arr = explode(',', $value); - } - - if (is_array($param['options'])) { - $param_list = array_keys($param['options']); - $InfoFieldList = explode(":", $param_list[0]); - $parentName = ''; - $parentField = ''; - // 0 : tableName - // 1 : label field name - // 2 : key fields name (if differ of rowid) - // 3 : key field parent (for dependent lists) - // 4 : where clause filter on column or table extrafield, syntax field='value' or extra.field=value - // 5 : id category type - // 6 : ids categories list separated by comma for category root - $keyList = (empty($InfoFieldList[2]) ? 'rowid' : $InfoFieldList[2].' as rowid'); - - if (count($InfoFieldList) > 3 && !empty($InfoFieldList[3])) { - list ($parentName, $parentField) = explode('|', $InfoFieldList[3]); - $keyList .= ', '.$parentField; - } - if (count($InfoFieldList) > 4 && !empty($InfoFieldList[4])) { - if (strpos($InfoFieldList[4], 'extra.') !== false) { - $keyList = 'main.'.$InfoFieldList[2].' as rowid'; - } else { - $keyList = $InfoFieldList[2].' as rowid'; - } - } - - $filter_categorie = false; - if (count($InfoFieldList) > 5) { - if ($InfoFieldList[0] == 'categorie') { - $filter_categorie = true; - } - } - - if ($filter_categorie === false) { - $fields_label = explode('|', $InfoFieldList[1]); - if (is_array($fields_label)) { - $keyList .= ', '; - $keyList .= implode(', ', $fields_label); - } - - $sqlwhere = ''; - $sql = 'SELECT '.$keyList; - $sql .= ' FROM '.MAIN_DB_PREFIX.$InfoFieldList[0]; - if (!empty($InfoFieldList[4])) { - // can use SELECT request - if (strpos($InfoFieldList[4], '$SEL$') !== false) { - $InfoFieldList[4] = str_replace('$SEL$', 'SELECT', $InfoFieldList[4]); - } - - // current object id can be use into filter - if (strpos($InfoFieldList[4], '$ID$') !== false && !empty($objectid)) { - $InfoFieldList[4] = str_replace('$ID$', $objectid, $InfoFieldList[4]); - } elseif (preg_match("#^.*list.php$#", $_SERVER["PHP_SELF"])) { - // Pattern for word=$ID$ - $word = '\b[a-zA-Z0-9-\.-_]+\b=\$ID\$'; - - // Removing space arount =, ( and ) - $InfoFieldList[4] = preg_replace('# *(=|\(|\)) *#', '$1', $InfoFieldList[4]); - - $nbPreg = 1; - // While we have parenthesis - while ($nbPreg != 0) { - // Init des compteurs - $nbPregRepl = $nbPregSel = 0; - // On retire toutes les parenthèses sans = avant - $InfoFieldList[4] = preg_replace('#([^=])(\([^)^(]*('.$word.')[^)^(]*\))#', '$1 $3 ', $InfoFieldList[4], -1, $nbPregRepl); - // On retire les espaces autour des = et parenthèses - $InfoFieldList[4] = preg_replace('# *(=|\(|\)) *#', '$1', $InfoFieldList[4]); - // On retire toutes les parenthèses avec = avant - $InfoFieldList[4] = preg_replace('#\b[a-zA-Z0-9-\.-_]+\b=\([^)^(]*('.$word.')[^)^(]*\)#', '$1 ', $InfoFieldList[4], -1, $nbPregSel); - // On retire les espaces autour des = et parenthèses - $InfoFieldList[4] = preg_replace('# *(=|\(|\)) *#', '$1', $InfoFieldList[4]); - - // Calcul du compteur général pour la boucle - $nbPreg = $nbPregRepl + $nbPregSel; - } - - // Si l'on a un AND ou un OR, avant ou après - preg_match('#(AND|OR|) *('.$word.') *(AND|OR|)#', $InfoFieldList[4], $matchCondition); - while (!empty($matchCondition[0])) { - // If the two sides differ but are not empty - if (!empty($matchCondition[1]) && !empty($matchCondition[3]) && $matchCondition[1] != $matchCondition[3]) { - // Nobody sain would do that without parentheses - $InfoFieldList[4] = str_replace('$ID$', '0', $InfoFieldList[4]); - } else { - if (!empty($matchCondition[1])) { - $boolCond = (($matchCondition[1] == "AND") ? ' AND TRUE ' : ' OR FALSE '); - $InfoFieldList[4] = str_replace($matchCondition[0], $boolCond.$matchCondition[3], $InfoFieldList[4]); - } elseif (!empty($matchCondition[3])) { - $boolCond = (($matchCondition[3] == "AND") ? ' TRUE AND ' : ' FALSE OR'); - $InfoFieldList[4] = str_replace($matchCondition[0], $boolCond, $InfoFieldList[4]); - } else { - $InfoFieldList[4] = " TRUE "; - } - } - - // Si l'on a un AND ou un OR, avant ou après - preg_match('#(AND|OR|) *('.$word.') *(AND|OR|)#', $InfoFieldList[4], $matchCondition); - } - } else { - $InfoFieldList[4] = str_replace('$ID$', '0', $InfoFieldList[4]); - } - - // We have to join on extrafield table - if (strpos($InfoFieldList[4], 'extra.') !== false) { - $sql .= ' as main, '.MAIN_DB_PREFIX.$InfoFieldList[0].'_extrafields as extra'; - $sqlwhere .= ' WHERE extra.fk_object=main.'.$InfoFieldList[2].' AND '.$InfoFieldList[4]; - } else { - $sqlwhere .= ' WHERE '.$InfoFieldList[4]; - } - } else { - $sqlwhere .= ' WHERE 1=1'; - } - // Some tables may have field, some other not. For the moment we disable it. - if (in_array($InfoFieldList[0], array('tablewithentity'))) { - $sqlwhere .= ' AND entity = '.$conf->entity; - } - // $sql.=preg_replace('/^ AND /','',$sqlwhere); - // print $sql; - - $sql .= $sqlwhere; - dol_syslog(get_class($this).'::showInputField type=chkbxlst', LOG_DEBUG); - $resql = $this->db->query($sql); - if ($resql) { - $num = $this->db->num_rows($resql); - $i = 0; - - $data = array(); - - while ($i < $num) { - $labeltoshow = ''; - $obj = $this->db->fetch_object($resql); - - $notrans = false; - // Several field into label (eq table:code|libelle:rowid) - $fields_label = explode('|', $InfoFieldList[1]); - if (is_array($fields_label)) { - $notrans = true; - foreach ($fields_label as $field_toshow) { - $labeltoshow .= $obj->$field_toshow.' '; - } - } else { - $labeltoshow = $obj->{$InfoFieldList[1]}; - } - $labeltoshow = dol_trunc($labeltoshow, 45); - - if (is_array($value_arr) && in_array($obj->rowid, $value_arr)) { - foreach ($fields_label as $field_toshow) { - $translabel = $langs->trans($obj->$field_toshow); - if ($translabel != $obj->$field_toshow) { - $labeltoshow = dol_trunc($translabel, 18).' '; - } else { - $labeltoshow = dol_trunc($obj->$field_toshow, 18).' '; - } - } - - $data[$obj->rowid] = $labeltoshow; - } else { - if (!$notrans) { - $translabel = $langs->trans($obj->{$InfoFieldList[1]}); - if ($translabel != $obj->{$InfoFieldList[1]}) { - $labeltoshow = dol_trunc($translabel, 18); - } else { - $labeltoshow = dol_trunc($obj->{$InfoFieldList[1]}, 18); - } - } - if (empty($labeltoshow)) - $labeltoshow = '(not defined)'; - - if (is_array($value_arr) && in_array($obj->rowid, $value_arr)) { - $data[$obj->rowid] = $labeltoshow; - } - - if (!empty($InfoFieldList[3]) && $parentField) { - $parent = $parentName.':'.$obj->{$parentField}; - } - - $data[$obj->rowid] = $labeltoshow; - } - - $i++; - } - $this->db->free($resql); - - $out = $form->multiselectarray($keyprefix.$key.$keysuffix, $data, $value_arr, '', 0, '', 0, '100%'); - } else { - print 'Error in request '.$sql.' '.$this->db->lasterror().'. Check setup of extra parameters.
'; - } - } else { - require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php'; - $data = $form->select_all_categories(Categorie::$MAP_ID_TO_CODE[$InfoFieldList[5]], '', 'parent', 64, $InfoFieldList[6], 1, 1); - $out = $form->multiselectarray($keyprefix.$key.$keysuffix, $data, $value_arr, '', 0, '', 0, '100%'); - } - } - } - elseif ($type == 'link') - { - $param_list = array_keys($param['options']); // $param_list='ObjectName:classPath' - $showempty = (($required && $default != '') ? 0 : 1); - $out = $form->selectForForms($param_list[0], $keyprefix.$key.$keysuffix, $value, $showempty, '', '', $morecss); - } - elseif ($type == 'password') - { - // If prefix is 'search_', field is used as a filter, we use a common text field. - $out = ''; // Hidden field to reduce impact of evil Google Chrome autopopulate bug. - $out .= ''; - } - if (!empty($hidden)) { - $out = ''; - } - /* Add comments - if ($type == 'date') $out.=' (YYYY-MM-DD)'; - elseif ($type == 'datetime') $out.=' (YYYY-MM-DD HH:MM:SS)'; - */ - /*if (! empty($help) && $keyprefix != 'search_options_') { - $out .= $form->textwithpicto('', $help, 1, 'help', '', 0, 3); - }*/ return $out; } @@ -733,601 +155,16 @@ class ExtraLanguages * * @param string $key Key of attribute * @param string $value Value to show - * @param string $moreparam To add more parameters on html input tag (only checkbox use html input for output rendering) * @param string $extrafieldsobjectkey If defined (for example $object->table_element), function uses the new method to get extrafields data + * @param string $moreparam To add more parameters on html input tag (only checkbox use html input for output rendering) * @return string Formated value */ - public function showOutputField($key, $value, $moreparam = '', $extrafieldsobjectkey = '') + public function showOutputField($key, $value, $extrafieldsobjectkey, $moreparam = '') { global $conf, $langs; - if (!empty($extrafieldsobjectkey)) - { - $label = $this->attributes[$extrafieldsobjectkey]['label'][$key]; - $type = $this->attributes[$extrafieldsobjectkey]['type'][$key]; - $size = $this->attributes[$extrafieldsobjectkey]['size'][$key]; - $default = $this->attributes[$extrafieldsobjectkey]['default'][$key]; - $computed = $this->attributes[$extrafieldsobjectkey]['computed'][$key]; - $unique = $this->attributes[$extrafieldsobjectkey]['unique'][$key]; - $required = $this->attributes[$extrafieldsobjectkey]['required'][$key]; - $param = $this->attributes[$extrafieldsobjectkey]['param'][$key]; - $perms = dol_eval($this->attributes[$extrafieldsobjectkey]['perms'][$key], 1); - $langfile = $this->attributes[$extrafieldsobjectkey]['langfile'][$key]; - $list = dol_eval($this->attributes[$extrafieldsobjectkey]['list'][$key], 1); - $help = $this->attributes[$extrafieldsobjectkey]['help'][$key]; - $hidden = (empty($list) ? 1 : 0); // If $list empty, we are sure it is hidden, otherwise we show. If it depends on mode (view/create/edit form or list, this must be filtered by caller) - } - else // Old usage - { - //dol_syslog("Warning: parameter 'extrafieldsobjectkey' is missing", LOG_WARNING); - $label = $this->attribute_label[$key]; - $type = $this->attribute_type[$key]; - $size = $this->attribute_size[$key]; - $default = $this->attribute_default[$key]; - $computed = $this->attribute_computed[$key]; - $unique = $this->attribute_unique[$key]; - $required = $this->attribute_required[$key]; - $param = $this->attribute_param[$key]; - $perms = dol_eval($this->attribute_perms[$key], 1); - $langfile = $this->attribute_langfile[$key]; - $list = dol_eval($this->attribute_list[$key], 1); - $help = ''; // Not supported with old syntax - $hidden = (empty($list) ? 1 : 0); // If $list empty, we are sure it is hidden, otherwise we show. If it depends on mode (view/create/edit form or list, this must be filtered by caller) - } - - if ($hidden) return ''; // This is a protection. If field is hidden, we should just not call this method. - - //if ($computed) $value = // $value is already calculated into $value before calling this method - - $showsize = 0; - if ($type == 'date') - { - $showsize = 10; - $value = dol_print_date($value, 'day'); - } - elseif ($type == 'datetime') - { - $showsize = 19; - $value = dol_print_date($value, 'dayhour'); - } - elseif ($type == 'int') - { - $showsize = 10; - } - elseif ($type == 'double') - { - if (!empty($value)) { - //$value=price($value); - $sizeparts = explode(",", $size); - $number_decimals = $sizeparts[1]; - $value = price($value, 0, $langs, 0, 0, $number_decimals, ''); - } - } - elseif ($type == 'boolean') - { - $checked = ''; - if (!empty($value)) { - $checked = ' checked '; - } - $value = ''; - } - elseif ($type == 'mail') - { - $value = dol_print_email($value, 0, 0, 0, 64, 1, 1); - } - elseif ($type == 'url') - { - $value = dol_print_url($value, '_blank', 32, 1); - } - elseif ($type == 'phone') - { - $value = dol_print_phone($value, '', 0, 0, '', ' ', 'phone'); - } - elseif ($type == 'price') - { - $value = price($value, 0, $langs, 0, 0, -1, $conf->currency); - } - elseif ($type == 'select') - { - if ($langfile && $param['options'][$value]) $value = $langs->trans($param['options'][$value]); - else $value = $param['options'][$value]; - } - elseif ($type == 'sellist') - { - $param_list = array_keys($param['options']); - $InfoFieldList = explode(":", $param_list[0]); - - $selectkey = "rowid"; - $keyList = 'rowid'; - - if (count($InfoFieldList) >= 3) - { - $selectkey = $InfoFieldList[2]; - $keyList = $InfoFieldList[2].' as rowid'; - } - - $fields_label = explode('|', $InfoFieldList[1]); - if (is_array($fields_label)) { - $keyList .= ', '; - $keyList .= implode(', ', $fields_label); - } - - $sql = 'SELECT '.$keyList; - $sql .= ' FROM '.MAIN_DB_PREFIX.$InfoFieldList[0]; - if (strpos($InfoFieldList[4], 'extra') !== false) - { - $sql .= ' as main'; - } - if ($selectkey == 'rowid' && empty($value)) { - $sql .= " WHERE ".$selectkey."=0"; - } elseif ($selectkey == 'rowid') { - $sql .= " WHERE ".$selectkey."=".$this->db->escape($value); - } else { - $sql .= " WHERE ".$selectkey."='".$this->db->escape($value)."'"; - } - - //$sql.= ' AND entity = '.$conf->entity; - - dol_syslog(get_class($this).':showOutputField:$type=sellist', LOG_DEBUG); - $resql = $this->db->query($sql); - if ($resql) - { - $value = ''; // value was used, so now we reste it to use it to build final output - - $obj = $this->db->fetch_object($resql); - - // Several field into label (eq table:code|libelle:rowid) - $fields_label = explode('|', $InfoFieldList[1]); - - if (is_array($fields_label) && count($fields_label) > 1) - { - foreach ($fields_label as $field_toshow) - { - $translabel = ''; - if (!empty($obj->$field_toshow)) { - $translabel = $langs->trans($obj->$field_toshow); - } - if ($translabel != $field_toshow) { - $value .= dol_trunc($translabel, 18).' '; - } else { - $value .= $obj->$field_toshow.' '; - } - } - } - else - { - $translabel = ''; - if (!empty($obj->{$InfoFieldList[1]})) { - $translabel = $langs->trans($obj->{$InfoFieldList[1]}); - } - if ($translabel != $obj->{$InfoFieldList[1]}) { - $value = dol_trunc($translabel, 18); - } else { - $value = $obj->{$InfoFieldList[1]}; - } - } - } - else dol_syslog(get_class($this).'::showOutputField error '.$this->db->lasterror(), LOG_WARNING); - } - elseif ($type == 'radio') - { - $value = $param['options'][$value]; - } - elseif ($type == 'checkbox') - { - $value_arr = explode(',', $value); - $value = ''; - $toprint = array(); - if (is_array($value_arr)) - { - foreach ($value_arr as $keyval=>$valueval) { - $toprint[] = '
  • '.$param['options'][$valueval].'
  • '; - } - } - $value = '
      '.implode(' ', $toprint).'
    '; - } - elseif ($type == 'chkbxlst') - { - $value_arr = explode(',', $value); - - $param_list = array_keys($param['options']); - $InfoFieldList = explode(":", $param_list[0]); - - $selectkey = "rowid"; - $keyList = 'rowid'; - - if (count($InfoFieldList) >= 3) { - $selectkey = $InfoFieldList[2]; - $keyList = $InfoFieldList[2].' as rowid'; - } - - $fields_label = explode('|', $InfoFieldList[1]); - if (is_array($fields_label)) { - $keyList .= ', '; - $keyList .= implode(', ', $fields_label); - } - - $sql = 'SELECT '.$keyList; - $sql .= ' FROM '.MAIN_DB_PREFIX.$InfoFieldList[0]; - if (strpos($InfoFieldList[4], 'extra') !== false) { - $sql .= ' as main'; - } - // $sql.= " WHERE ".$selectkey."='".$this->db->escape($value)."'"; - // $sql.= ' AND entity = '.$conf->entity; - - dol_syslog(get_class($this).':showOutputField:$type=chkbxlst', LOG_DEBUG); - $resql = $this->db->query($sql); - if ($resql) { - $value = ''; // value was used, so now we reste it to use it to build final output - $toprint = array(); - while ($obj = $this->db->fetch_object($resql)) { - // Several field into label (eq table:code|libelle:rowid) - $fields_label = explode('|', $InfoFieldList[1]); - if (is_array($value_arr) && in_array($obj->rowid, $value_arr)) { - if (is_array($fields_label) && count($fields_label) > 1) { - foreach ($fields_label as $field_toshow) { - $translabel = ''; - if (!empty($obj->$field_toshow)) { - $translabel = $langs->trans($obj->$field_toshow); - } - if ($translabel != $field_toshow) { - $toprint[] = '
  • '.dol_trunc($translabel, 18).'
  • '; - } else { - $toprint[] = '
  • '.$obj->$field_toshow.'
  • '; - } - } - } else { - $translabel = ''; - if (!empty($obj->{$InfoFieldList[1]})) { - $translabel = $langs->trans($obj->{$InfoFieldList[1]}); - } - if ($translabel != $obj->{$InfoFieldList[1]}) { - $toprint[] = '
  • '.dol_trunc($translabel, 18).'
  • '; - } else { - $toprint[] = '
  • '.$obj->{$InfoFieldList[1]}.'
  • '; - } - } - } - } - $value = '
      '.implode(' ', $toprint).'
    '; - } else { - dol_syslog(get_class($this).'::showOutputField error '.$this->db->lasterror(), LOG_WARNING); - } - } - elseif ($type == 'link') - { - $out = ''; - - // Only if something to display (perf) - if ($value) // If we have -1 here, pb is into insert, not into ouptut (fix insert instead of changing code here to compensate) - { - $param_list = array_keys($param['options']); // $param_list='ObjectName:classPath' - - $InfoFieldList = explode(":", $param_list[0]); - $classname = $InfoFieldList[0]; - $classpath = $InfoFieldList[1]; - if (!empty($classpath)) - { - dol_include_once($InfoFieldList[1]); - if ($classname && class_exists($classname)) - { - $object = new $classname($this->db); - $object->fetch($value); - $value = $object->getNomUrl(3); - } - } - else - { - dol_syslog('Error bad setup of extrafield', LOG_WARNING); - return 'Error bad setup of extrafield'; - } - } - } - elseif ($type == 'text') - { - $value = dol_htmlentitiesbr($value); - } - elseif ($type == 'html') - { - $value = dol_htmlentitiesbr($value); - } - elseif ($type == 'password') - { - $value = dol_trunc(preg_replace('/./i', '*', $value), 8, 'right', 'UTF-8', 1); - } - else - { - $showsize = round($size); - if ($showsize > 48) $showsize = 48; - } - - //print $type.'-'.$size; - $out = $value; + $out = $this->attributes[$extrafieldsobjectkey][$key]; return $out; } - - /** - * Return tag to describe alignement to use for this extrafield - * - * @param string $key Key of attribute - * @param string $extrafieldsobjectkey If defined, use the new method to get extrafields data - * @return string Formated value - */ - public function getAlignFlag($key, $extrafieldsobjectkey = '') - { - global $conf, $langs; - - if (!empty($extrafieldsobjectkey)) $type = $this->attributes[$extrafieldsobjectkey]['type'][$key]; - else $type = $this->attribute_type[$key]; - - $align = ''; - - if ($type == 'date') - { - $align = "center"; - } - elseif ($type == 'datetime') - { - $align = "center"; - } - elseif ($type == 'int') - { - $align = "right"; - } - elseif ($type == 'price') - { - $align = "right"; - } - elseif ($type == 'double') - { - $align = "right"; - } - elseif ($type == 'boolean') - { - $align = "center"; - } - elseif ($type == 'radio') - { - $align = "center"; - } - elseif ($type == 'checkbox') - { - $align = "center"; - } - elseif ($type == 'price') - { - $align = "right"; - } - - return $align; - } - - /** - * Return HTML string to print separator extrafield - * - * @param string $key Key of attribute - * @param string $object Object - * @param int $colspan Value of colspan to use (it must includes the first column with title) - * @return string HTML code with line for separator - */ - public function showSeparator($key, $object, $colspan = 2) - { - global $langs; - - $out = '
    '; - - $extrafield_param = $this->attributes[$object->table_element]['param'][$key]; - if (!empty($extrafield_param) && is_array($extrafield_param)) { - $extrafield_param_list = array_keys($extrafield_param['options']); - - if (count($extrafield_param_list) > 0) { - $extrafield_collapse_display_value = intval($extrafield_param_list[0]); - if ($extrafield_collapse_display_value == 1 || $extrafield_collapse_display_value == 2) { - // Set the collapse_display status to cookie in priority or if ignorecollapsesetup is 1, if cookie and ignorecollapsesetup not defined, use the setup. - $collapse_display = ((isset($_COOKIE['DOLCOLLAPSE_'.$object->table_element.'_extrafields_'.$key]) || GETPOST('ignorecollapsesetup', 'int')) ? ($_COOKIE['DOLCOLLAPSE_'.$object->table_element.'_extrafields_'.$key] ? true : false) : ($extrafield_collapse_display_value == 2 ? false : true)); - $extrafields_collapse_num = $this->attributes[$object->table_element]['pos'][$key]; - - $out .= ''; - $out .= ''; - } - } - } - - return $out; - } - - /** - * Fill array_options property of object by extrafields value (using for data sent by forms) - * - * @param array $extralabels Deprecated (old $array of extrafields, now set this to null) - * @param object $object Object - * @param string $onlykey Only the following key is filled. When we make update of only one extrafield ($action = 'update_extras'), calling page must set this to avoid to have other extrafields being reset. - * @return int 1 if array_options set, 0 if no value, -1 if error (field required missing for example) - */ - public function setOptionalsFromPost($extralabels, &$object, $onlykey = '') - { - global $_POST, $langs; - - $nofillrequired = 0; // For error when required field left blank - $error_field_required = array(); - - if (is_array($this->attributes[$object->table_element]['label'])) $extralabels = $this->attributes[$object->table_element]['label']; - - if (is_array($extralabels)) - { - // Get extra fields - foreach ($extralabels as $key => $value) - { - if (!empty($onlykey) && $key != $onlykey) continue; - - $key_type = $this->attributes[$object->table_element]['type'][$key]; - if ($key_type == 'separate') continue; - - $enabled = 1; - if (isset($this->attributes[$object->table_element]['list'][$key])) - { - $enabled = dol_eval($this->attributes[$object->table_element]['list'][$key], 1); - } - $perms = 1; - if (isset($this->attributes[$object->table_element]['perms'][$key])) - { - $perms = dol_eval($this->attributes[$object->table_element]['perms'][$key], 1); - } - if (empty($enabled)) continue; - if (empty($perms)) continue; - - if ($this->attributes[$object->table_element]['required'][$key]) // Value is required - { - // Check if empty without using GETPOST, value can be alpha, int, array, etc... - if ((!is_array($_POST["options_".$key]) && empty($_POST["options_".$key]) && $this->attributes[$object->table_element]['type'][$key] != 'select' && $_POST["options_".$key] != '0') - || (!is_array($_POST["options_".$key]) && empty($_POST["options_".$key]) && $this->attributes[$object->table_element]['type'][$key] == 'select') - || (is_array($_POST["options_".$key]) && empty($_POST["options_".$key]))) - { - //print 'ccc'.$value.'-'.$this->attributes[$object->table_element]['required'][$key]; - $nofillrequired++; - $error_field_required[] = $langs->transnoentitiesnoconv($value); - } - } - - if (in_array($key_type, array('date'))) - { - // Clean parameters - // TODO GMT date in memory must be GMT so we should add gm=true in parameters - $value_key = dol_mktime(0, 0, 0, $_POST["options_".$key."month"], $_POST["options_".$key."day"], $_POST["options_".$key."year"]); - } - elseif (in_array($key_type, array('datetime'))) - { - // Clean parameters - // TODO GMT date in memory must be GMT so we should add gm=true in parameters - $value_key = dol_mktime($_POST["options_".$key."hour"], $_POST["options_".$key."min"], 0, $_POST["options_".$key."month"], $_POST["options_".$key."day"], $_POST["options_".$key."year"]); - } - elseif (in_array($key_type, array('checkbox', 'chkbxlst'))) - { - $value_arr = GETPOST("options_".$key, 'array'); // check if an array - if (!empty($value_arr)) { - $value_key = implode($value_arr, ','); - } else { - $value_key = ''; - } - } - elseif (in_array($key_type, array('price', 'double'))) - { - $value_arr = GETPOST("options_".$key, 'alpha'); - $value_key = price2num($value_arr); - } - else - { - $value_key = GETPOST("options_".$key); - if (in_array($key_type, array('link')) && $value_key == '-1') $value_key = ''; - } - - $object->array_options["options_".$key] = $value_key; - } - - if ($nofillrequired) { - $langs->load('errors'); - setEventMessages($langs->trans('ErrorFieldsRequired').' : '.implode(', ', $error_field_required), null, 'errors'); - return -1; - } - else { - return 1; - } - } - else { - return 0; - } - } - - /** - * return array_options array of data of extrafields value of object sent by a search form - * - * @param array|string $extrafieldsobjectkey array of extrafields (old usage) or value of object->table_element (new usage) - * @param string $keyprefix Prefix string to add into name and id of field (can be used to avoid duplicate names) - * @param string $keysuffix Suffix string to add into name and id of field (can be used to avoid duplicate names) - * @return array|int array_options set or 0 if no value - */ - public function getOptionalsFromPost($extrafieldsobjectkey, $keyprefix = '', $keysuffix = '') - { - global $_POST; - - if (is_string($extrafieldsobjectkey) && is_array($this->attributes[$extrafieldsobjectkey]['label'])) - { - $extralabels = $this->attributes[$extrafieldsobjectkey]['label']; - } - else - { - $extralabels = $extrafieldsobjectkey; - } - - if (is_array($extralabels)) - { - $array_options = array(); - - // Get extra fields - foreach ($extralabels as $key => $value) - { - $key_type = ''; - if (is_string($extrafieldsobjectkey)) - { - $key_type = $this->attributes[$extrafieldsobjectkey]['type'][$key]; - } - - if (in_array($key_type, array('date', 'datetime'))) - { - if (!GETPOSTISSET($keysuffix."options_".$key.$keyprefix."year")) continue; // Value was not provided, we should not set it. - // Clean parameters - $value_key = dol_mktime(GETPOST($keysuffix."options_".$key.$keyprefix."hour", 'int'), GETPOST($keysuffix."options_".$key.$keyprefix."min", 'int'), 0, GETPOST($keysuffix."options_".$key.$keyprefix."month", 'int'), GETPOST($keysuffix."options_".$key.$keyprefix."day", 'int'), GETPOST($keysuffix."options_".$key.$keyprefix."year", 'int')); - } - elseif (in_array($key_type, array('checkbox', 'chkbxlst'))) - { - if (!GETPOSTISSET($keysuffix."options_".$key.$keyprefix)) continue; // Value was not provided, we should not set it. - $value_arr = GETPOST($keysuffix."options_".$key.$keyprefix); - // Make sure we get an array even if there's only one checkbox - $value_arr = (array) $value_arr; - $value_key = implode(',', $value_arr); - } - elseif (in_array($key_type, array('price', 'double', 'int'))) - { - if (!GETPOSTISSET($keysuffix."options_".$key.$keyprefix)) continue; // Value was not provided, we should not set it. - $value_arr = GETPOST($keysuffix."options_".$key.$keyprefix); - $value_key = price2num($value_arr); - } - else - { - if (!GETPOSTISSET($keysuffix."options_".$key.$keyprefix)) continue; // Value was not provided, we should not set it. - $value_key = GETPOST($keysuffix."options_".$key.$keyprefix); - } - - $array_options[$keysuffix."options_".$key] = $value_key; // No keyprefix here. keyprefix is used only for read. - } - - return $array_options; - } - - return 0; - } } diff --git a/htdocs/core/class/fileupload.class.php b/htdocs/core/class/fileupload.class.php index c9bb7372bd2..c941a3a0745 100644 --- a/htdocs/core/class/fileupload.class.php +++ b/htdocs/core/class/fileupload.class.php @@ -64,46 +64,36 @@ class FileUpload if ($element == 'propal') { $pathname = 'comm/propal'; $dir_output = $conf->$element->dir_output; - } - elseif ($element == 'facture') { + } elseif ($element == 'facture') { $pathname = 'compta/facture'; $dir_output = $conf->$element->dir_output; - } - elseif ($element == 'project') { + } elseif ($element == 'project') { $element = $pathname = 'projet'; $dir_output = $conf->$element->dir_output; - } - elseif ($element == 'project_task') { + } elseif ($element == 'project_task') { $pathname = 'projet'; $filename = 'task'; $dir_output = $conf->projet->dir_output; $parentForeignKey = 'fk_project'; $parentClass = 'Project'; $parentElement = 'projet'; $parentObject = 'project'; - } - elseif ($element == 'fichinter') { + } elseif ($element == 'fichinter') { $element = 'ficheinter'; $dir_output = $conf->$element->dir_output; - } - elseif ($element == 'order_supplier') { + } elseif ($element == 'order_supplier') { $pathname = 'fourn'; $filename = 'fournisseur.commande'; $dir_output = $conf->fournisseur->commande->dir_output; - } - elseif ($element == 'invoice_supplier') { + } elseif ($element == 'invoice_supplier') { $pathname = 'fourn'; $filename = 'fournisseur.facture'; $dir_output = $conf->fournisseur->facture->dir_output; - } - elseif ($element == 'product') { + } elseif ($element == 'product') { $dir_output = $conf->product->multidir_output[$conf->entity]; - } - elseif ($element == 'productbatch') { + } elseif ($element == 'productbatch') { $dir_output = $conf->productbatch->multidir_output[$conf->entity]; - } - elseif ($element == 'action') { + } elseif ($element == 'action') { $pathname = 'comm/action'; $filename = 'actioncomm'; $dir_output = $conf->agenda->dir_output; - } - elseif ($element == 'chargesociales') { + } elseif ($element == 'chargesociales') { $pathname = 'compta/sociales'; $filename = 'chargesociales'; $dir_output = $conf->tax->dir_output; } else { @@ -298,9 +288,7 @@ class FileUpload if (preg_match('/error/i', $res)) return false; return true; - } - else - { + } else { return false; } } @@ -451,9 +439,7 @@ class FileUpload } else { dol_move_uploaded_file($uploaded_file, $file_path, 1, 0, 0, 0, 'userfile'); } - } - else - { + } else { // Non-multipart uploads (PUT method support) file_put_contents($file_path, fopen('php://input', 'r'), $append_file ? FILE_APPEND : 0); } @@ -469,8 +455,7 @@ class FileUpload $file->{$version.'_url'} = $options['upload_url'].rawurlencode($tmp[0].'_mini.'.$tmp[1]); } } - } - elseif ($this->options['discard_aborted_uploads']) + } elseif ($this->options['discard_aborted_uploads']) { unlink($file_path); $file->error = 'abort'; @@ -493,9 +478,7 @@ class FileUpload if ($file_name) { $info = $this->getFileObject($file_name); - } - else - { + } else { $info = $this->getFileObjects(); } header('Content-type: application/json'); diff --git a/htdocs/core/class/fiscalyear.class.php b/htdocs/core/class/fiscalyear.class.php index 514782593d9..0686b68115a 100644 --- a/htdocs/core/class/fiscalyear.class.php +++ b/htdocs/core/class/fiscalyear.class.php @@ -157,16 +157,12 @@ class Fiscalyear extends CommonObject { $this->db->commit(); return $this->id; - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return $result; } - } - else - { + } else { $this->error = $this->db->lasterror()." sql=".$sql; $this->db->rollback(); return -1; @@ -206,9 +202,7 @@ class Fiscalyear extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); dol_syslog($this->error, LOG_ERR); $this->db->rollback(); @@ -242,9 +236,7 @@ class Fiscalyear extends CommonObject $this->statut = $obj->statut; return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -268,9 +260,7 @@ class Fiscalyear extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -1; @@ -304,27 +294,22 @@ class Fiscalyear extends CommonObject if ($mode == 0) { return $langs->trans($this->statuts[$status]); - } - elseif ($mode == 1) + } elseif ($mode == 1) { return $langs->trans($this->statuts_short[$status]); - } - elseif ($mode == 2) + } elseif ($mode == 2) { if ($status == 0) return img_picto($langs->trans($this->statuts_short[$status]), 'statut4').' '.$langs->trans($this->statuts_short[$status]); elseif ($status == 1) return img_picto($langs->trans($this->statuts_short[$status]), 'statut8').' '.$langs->trans($this->statuts_short[$status]); - } - elseif ($mode == 3) + } elseif ($mode == 3) { if ($status == 0 && !empty($this->statuts_short[$status])) return img_picto($langs->trans($this->statuts_short[$status]), 'statut4'); elseif ($status == 1 && !empty($this->statuts_short[$status])) return img_picto($langs->trans($this->statuts_short[$status]), 'statut8'); - } - elseif ($mode == 4) + } elseif ($mode == 4) { if ($status == 0 && !empty($this->statuts_short[$status])) return img_picto($langs->trans($this->statuts_short[$status]), 'statut4').' '.$langs->trans($this->statuts[$status]); elseif ($status == 1 && !empty($this->statuts_short[$status])) return img_picto($langs->trans($this->statuts_short[$status]), 'statut8').' '.$langs->trans($this->statuts[$status]); - } - elseif ($mode == 5) + } elseif ($mode == 5) { if ($status == 0 && !empty($this->statuts_short[$status])) return $langs->trans($this->statuts_short[$status]).' '.img_picto($langs->trans($this->statuts_short[$status]), 'statut4'); elseif ($status == 1 && !empty($this->statuts_short[$status])) return $langs->trans($this->statuts_short[$status]).' '.img_picto($langs->trans($this->statuts_short[$status]), 'statut6'); @@ -369,9 +354,7 @@ class Fiscalyear extends CommonObject $this->date_modification = $this->db->jdate($obj->tms); } $this->db->free($result); - } - else - { + } else { dol_print_error($this->db); } } @@ -402,8 +385,7 @@ class Fiscalyear extends CommonObject { $obj = $this->db->fetch_object($resql); $nb = $obj->nb; - } - else dol_print_error($this->db); + } else dol_print_error($this->db); return $nb; } @@ -434,8 +416,7 @@ class Fiscalyear extends CommonObject { $obj = $this->db->fetch_object($resql); $nb = $obj->nb; - } - else dol_print_error($this->db); + } else dol_print_error($this->db); return $nb; } diff --git a/htdocs/core/class/hookmanager.class.php b/htdocs/core/class/hookmanager.class.php index e24bce5e247..97c45e2f926 100644 --- a/htdocs/core/class/hookmanager.class.php +++ b/htdocs/core/class/hookmanager.class.php @@ -266,8 +266,7 @@ class HookManager if (!empty($actionclassinstance->resprints)) $this->resPrint .= $actionclassinstance->resprints; } // Generic hooks that return a string or array (printLeftBlock, formAddObjectLine, formBuilddocOptions, ...) - else - { + else { // TODO. this test should be done into the method of hook by returning nothing if (is_array($parameters) && !empty($parameters['special_code']) && $parameters['special_code'] > 3 && $parameters['special_code'] != $actionclassinstance->module_number) continue; diff --git a/htdocs/core/class/html.form.class.php b/htdocs/core/class/html.form.class.php index 9a8ade00367..108fd211865 100644 --- a/htdocs/core/class/html.form.class.php +++ b/htdocs/core/class/html.form.class.php @@ -124,9 +124,7 @@ class Form } if ($fieldrequired) $ret .= ''; $ret .= ''."\n"; - } - else - { + } else { if ($fieldrequired) $ret .= ''; if ($help) { $ret .= $this->textwithpicto($langs->trans($text), $help); @@ -135,9 +133,7 @@ class Form } if ($fieldrequired) $ret .= ''; } - } - else - { + } else { if (empty($notabletag) && GETPOST('action', 'aZ09') != 'edit'.$htmlname && $perm) $ret .= '
    '; - } - elseif ($nbbyrow < 0) $return .= '
    '; + } elseif ($nbbyrow < 0) $return .= '
    '; $return .= "\n"; @@ -7456,26 +7171,20 @@ abstract class CommonObject { $return .= ''; $return .= ''; - } - else { + } else { $return .= ''; $return .= ''; } - } - else - { + } else { $return .= ''; $return .= ''; } - } - else - { + } else { if (empty($maxHeight) || $photo_vignette && $imgarray['height'] > $maxHeight) { $return .= ''; $return .= ''; - } - else { + } else { $return .= ''; $return .= ''; } @@ -7510,8 +7219,7 @@ abstract class CommonObject { $return .= '
    '; - $out .= $langs->trans($this->attributes[$object->table_element]['label'][$key]); - $out .= '
    '; if ($fieldrequired) $ret .= ''; if ($help) { @@ -190,9 +186,7 @@ class Form if (!empty($conf->global->MAIN_USE_JQUERY_JEDITABLE) && !preg_match('/^select;|datehourpicker/', $typeofdata)) // TODO add jquery timepicker and support select { $ret .= $this->editInPlace($object, $value, $htmlname, $perm, $typeofdata, $editvalue, $extObject, $custommsg); - } - else - { + } else { if (GETPOST('action', 'aZ09') == 'edit'.$htmlname) { $ret .= "\n"; @@ -206,14 +200,12 @@ class Form { $tmp = explode(':', $typeofdata); $ret .= ''; - } - elseif (preg_match('/^(numeric|amount)/', $typeofdata)) + } elseif (preg_match('/^(numeric|amount)/', $typeofdata)) { $tmp = explode(':', $typeofdata); $valuetoshow = price2num($editvalue ? $editvalue : $value); $ret .= ''; - } - elseif (preg_match('/^text/', $typeofdata) || preg_match('/^note/', $typeofdata)) // if wysiwyg is enabled $typeofdata = 'ckeditor' + } elseif (preg_match('/^text/', $typeofdata) || preg_match('/^note/', $typeofdata)) // if wysiwyg is enabled $typeofdata = 'ckeditor' { $tmp = explode(':', $typeofdata); $cols = $tmp[2]; @@ -231,16 +223,13 @@ class Form $valuetoshow = str_replace('&', '&', $valuetoshow); $ret .= dol_string_neverthesehtmltags($valuetoshow, array('textarea')); $ret .= ''; - } - elseif ($typeofdata == 'day' || $typeofdata == 'datepicker') + } elseif ($typeofdata == 'day' || $typeofdata == 'datepicker') { $ret .= $this->selectDate($value, $htmlname, 0, 0, 1, 'form'.$htmlname, 1, 0); - } - elseif ($typeofdata == 'dayhour' || $typeofdata == 'datehourpicker') + } elseif ($typeofdata == 'dayhour' || $typeofdata == 'datehourpicker') { $ret .= $this->selectDate($value, $htmlname, 1, 1, 1, 'form'.$htmlname, 1, 0); - } - elseif (preg_match('/^select;/', $typeofdata)) + } elseif (preg_match('/^select;/', $typeofdata)) { $arraydata = explode(',', preg_replace('/^select;/', '', $typeofdata)); $arraylist = array(); @@ -251,8 +240,7 @@ class Form $arraylist[$tmpkey] = $tmp[1]; } $ret .= $this->selectarray($htmlname, $arraylist, $value); - } - elseif (preg_match('/^ckeditor/', $typeofdata)) + } elseif (preg_match('/^ckeditor/', $typeofdata)) { $tmp = explode(':', $typeofdata); // Example: ckeditor:dolibarr_zzz:width:height:savemethod:toolbarstartexpanded:rows:cols:uselocalbrowser require_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php'; @@ -270,9 +258,7 @@ class Form if (empty($notabletag)) $ret .= '
    '."\n"; $ret .= ''."\n"; - } - else - { + } else { if (preg_match('/^(email)/', $typeofdata)) $ret .= dol_print_email($value, 0, 0, 0, 0, 1); elseif (preg_match('/^(amount|numeric)/', $typeofdata)) $ret .= ($value != '' ? price($value, '', $langs, 0, -1, -1, $conf->currency) : ''); elseif (preg_match('/^text/', $typeofdata) || preg_match('/^note/', $typeofdata)) $ret .= dol_htmlentitiesbr($value); @@ -289,8 +275,7 @@ class Form $arraylist[$tmp[0]] = $tmp[1]; } $ret .= $arraylist[$value]; - } - elseif (preg_match('/^ckeditor/', $typeofdata)) + } elseif (preg_match('/^ckeditor/', $typeofdata)) { $tmpcontent = dol_htmlentitiesbr($value); if (!empty($conf->global->MAIN_DISABLE_NOTES_TAB)) @@ -302,8 +287,7 @@ class Form // We dont use dol_escape_htmltag to get the html formating active, but this need we must also // clean data from some dangerous html $ret .= dol_string_onlythesehtmltags(dol_htmlentitiesbr($tmpcontent)); - } - else { + } else { $ret .= dol_escape_htmltag($value); } @@ -348,6 +332,7 @@ class Form return ''; // No extralang field to show } + $result .= ''."\n"; $result .= '
    '; $s = img_picto($langs->trans("ShowOtherLanguages"), 'language', '', false, 0, 0, '', 'fa-15 editfieldlang'); $result .= $s; @@ -367,6 +352,8 @@ class Form $s = picto_from_langcode($langcode, 'class="pictoforlang paddingright"'); $resultforextrlang .= $s; + + // TODO Use the showInputField() method of ExtraLanguages object if ($typeofdata == 'textarea') { $resultforextrlang .= ''; print '
    '.$langs->trans("SmsInfoCharRemain").': '.(160 - dol_strlen($defaultmessage)).'
    '; } diff --git a/htdocs/core/class/html.formsocialcontrib.class.php b/htdocs/core/class/html.formsocialcontrib.class.php index 5ecef635d73..c6d28a7b70f 100644 --- a/htdocs/core/class/html.formsocialcontrib.class.php +++ b/htdocs/core/class/html.formsocialcontrib.class.php @@ -79,9 +79,7 @@ class FormSocialContrib $sql .= " WHERE c.active = 1"; $sql .= " AND c.fk_pays = ".$mysoc->country_id; $sql .= " ORDER BY c.libelle ASC"; - } - else - { + } else { $sql = "SELECT c.id, c.libelle as type"; $sql .= " FROM ".MAIN_DB_PREFIX."c_chargesociales as c, ".MAIN_DB_PREFIX."c_country as co"; $sql .= " WHERE c.active = 1 AND c.fk_pays = co.rowid"; @@ -111,14 +109,10 @@ class FormSocialContrib print ''; if ($user->admin && $help) print info_admin($langs->trans("YouCanChangeValuesForThisListFromDictionarySetup"), 1); if (!empty($conf->use_javascript_ajax)) print ajax_combobox($htmlname); - } - else - { + } else { print $langs->trans("ErrorNoSocialContributionForSellerCountry", $mysoc->country_code); } - } - else - { + } else { dol_print_error($db, $db->lasterror()); } } diff --git a/htdocs/core/class/html.formticket.class.php b/htdocs/core/class/html.formticket.class.php index 35e5d00bab8..a8654f6bfc5 100644 --- a/htdocs/core/class/html.formticket.class.php +++ b/htdocs/core/class/html.formticket.class.php @@ -175,7 +175,7 @@ class FormTicket print ''; } - // Si origin du ticket + // If ticket created from another object if (isset($this->param['origin']) && $this->param['originid'] > 0) { // Parse element/subelement (ex: project_task) $element = $subelement = $this->param['origin']; @@ -225,7 +225,7 @@ class FormTicket if ($this->withthreadid > 0) { $subject = $langs->trans('SubjectAnswerToTicket').' '.$this->withthreadid.' : '.$this->topic_title.''; } - print ''; + print ''; print ''; } } @@ -247,7 +247,7 @@ class FormTicket $doleditor->Create(); print ''; - // FK_USER_CREATE + // User of creation if ($this->withusercreate > 0 && $this->fk_user_create) { print ''.$langs->trans("CreatedBy").''; $langs->load("users"); @@ -270,6 +270,7 @@ class FormTicket print ''.$langs->trans("ThirdParty").''; $events = array(); $events[] = array('method' => 'getContacts', 'url' => dol_buildpath('/core/ajax/contacts.php', 1), 'htmlname' => 'contactid', 'params' => array('add-customer-contact' => 'disabled')); + print img_picto('', 'company', 'class="paddingright"'); print $form->select_company($this->withfromsocid, 'socid', '', 1, 1, '', $events, 0, 'minwidth200'); print ''; if (!empty($conf->use_javascript_ajax) && !empty($conf->global->COMPANY_USE_SEARCH_TO_SELECT)) { @@ -330,6 +331,7 @@ class FormTicket print ''.$langs->trans("Contact").''; // If no socid, set to -1 to avoid full contacts list $selectedCompany = ($this->withfromsocid > 0) ? $this->withfromsocid : -1; + print img_picto('', 'contact', 'class="paddingright"'); $nbofcontacts = $form->select_contacts($selectedCompany, $this->withfromcontactid, 'contactid', 3, '', '', 0, 'minwidth200'); print ' '; $formcompany->selectTypeContact($ticketstatic, '', 'type', 'external', '', 0, 'maginleftonly'); diff --git a/htdocs/core/class/html.formwebsite.class.php b/htdocs/core/class/html.formwebsite.class.php index 7b067fa11d6..c656f5e39ee 100644 --- a/htdocs/core/class/html.formwebsite.class.php +++ b/htdocs/core/class/html.formwebsite.class.php @@ -79,9 +79,7 @@ class FormWebsite if ($selected == $obj->rowid) { $out .= '
    '; diff --git a/htdocs/core/lib/donation.lib.php b/htdocs/core/lib/donation.lib.php index b2280657481..425dd05fbb5 100644 --- a/htdocs/core/lib/donation.lib.php +++ b/htdocs/core/lib/donation.lib.php @@ -68,7 +68,7 @@ function donation_prepare_head($object) $head = array(); $head[$h][0] = DOL_URL_ROOT.'/don/card.php?id='.$object->id; - $head[$h][1] = $langs->trans("Card"); + $head[$h][1] = $langs->trans("Donation"); $head[$h][2] = 'card'; $h++; diff --git a/htdocs/core/lib/ecm.lib.php b/htdocs/core/lib/ecm.lib.php index 4dbb418855a..b9da91093bb 100644 --- a/htdocs/core/lib/ecm.lib.php +++ b/htdocs/core/lib/ecm.lib.php @@ -81,14 +81,12 @@ function ecm_prepare_head($object, $module = 'ecm', $section = '') if ($module == 'ecm') { $head[$h][0] = DOL_URL_ROOT.'/ecm/dir_card.php?section='.$object->id; - $head[$h][1] = $langs->trans("Card"); + $head[$h][1] = $langs->trans("Directory"); $head[$h][2] = 'card'; $h++; - } - else - { + } else { $head[$h][0] = DOL_URL_ROOT.'/ecm/dir_card.php?section='.$section.'&module='.$module; - $head[$h][1] = $langs->trans("Card"); + $head[$h][1] = $langs->trans("Directory"); $head[$h][2] = 'card'; $h++; } @@ -109,7 +107,7 @@ function ecm_file_prepare_head($object) $head = array(); $head[$h][0] = DOL_URL_ROOT.'/ecm/file_card.php?section='.$object->section_id.'&urlfile='.urlencode($object->label); - $head[$h][1] = $langs->trans("Card"); + $head[$h][1] = $langs->trans("File"); $head[$h][2] = 'card'; $h++; diff --git a/htdocs/core/lib/expensereport.lib.php b/htdocs/core/lib/expensereport.lib.php index 2767af2e792..4c54ca09e31 100644 --- a/htdocs/core/lib/expensereport.lib.php +++ b/htdocs/core/lib/expensereport.lib.php @@ -35,7 +35,7 @@ function expensereport_prepare_head($object) $head = array(); $head[$h][0] = DOL_URL_ROOT.'/expensereport/card.php?id='.$object->id; - $head[$h][1] = $langs->trans("Card"); + $head[$h][1] = $langs->trans("ExpenseReport"); $head[$h][2] = 'card'; $h++; @@ -94,7 +94,7 @@ function payment_expensereport_prepare_head(PaymentExpenseReport $object) $head = array(); $head[$h][0] = DOL_URL_ROOT.'/expensereport/payment/card.php?id='.$object->id; - $head[$h][1] = $langs->trans("Card"); + $head[$h][1] = $langs->trans("ExpenseReport"); $head[$h][2] = 'payment'; $h++; diff --git a/htdocs/core/lib/fichinter.lib.php b/htdocs/core/lib/fichinter.lib.php index 8d0809f9768..260bbf980f8 100644 --- a/htdocs/core/lib/fichinter.lib.php +++ b/htdocs/core/lib/fichinter.lib.php @@ -42,7 +42,7 @@ function fichinter_prepare_head($object) $head = array(); $head[$h][0] = DOL_URL_ROOT.'/fichinter/card.php?id='.$object->id; - $head[$h][1] = $langs->trans("Card"); + $head[$h][1] = $langs->trans("Intervention"); $head[$h][2] = 'card'; $h++; diff --git a/htdocs/core/lib/files.lib.php b/htdocs/core/lib/files.lib.php index 9746c1047b8..03bb8a419c9 100644 --- a/htdocs/core/lib/files.lib.php +++ b/htdocs/core/lib/files.lib.php @@ -118,8 +118,7 @@ function dol_dir_list($path, $types = "all", $recursive = 0, $filter = "", $excl if (is_array($excludefilter)) { $excludefilterarray = array_merge($excludefilterarray, $excludefilter); - } - elseif ($excludefilter) $excludefilterarray[] = $excludefilter; + } elseif ($excludefilter) $excludefilterarray[] = $excludefilter; // Check if file is qualified foreach ($excludefilterarray as $filt) { @@ -167,8 +166,7 @@ function dol_dir_list($path, $types = "all", $recursive = 0, $filter = "", $excl $file_list = array_merge($file_list, dol_dir_list($path."/".$file, $types, $recursive, $filter, $excludefilter, $sortcriteria, $sortorder, $mode, $nohook, ($relativename != '' ? $relativename.'/' : '').$file, $donotfollowsymlinks)); } } - } - elseif (!$isdir && (($types == "files") || ($types == "all"))) + } elseif (!$isdir && (($types == "files") || ($types == "all"))) { // Add file into file_list array if ($loaddate || $sortcriteria == 'date') $filedate = dol_filemtime($path."/".$file); @@ -279,9 +277,7 @@ function dol_dir_list_in_database($path, $filter = "", $excludefilter = null, $s } return $file_list; - } - else - { + } else { dol_print_error($db); return array(); } @@ -372,14 +368,10 @@ function completeFileArrayWithDatabaseInfo(&$filearray, $relativedir) if ($result < 0) { setEventMessages($ecmfile->error, $ecmfile->errors, 'warnings'); - } - else - { + } else { $filearray[$key]['rowid'] = $result; } - } - else - { + } else { $filearray[$key]['rowid'] = 0; // Should not happened } } @@ -403,8 +395,7 @@ function dol_compare_file($a, $b) $sortorder = strtoupper($sortorder); - if ($sortorder == 'ASC') { $retup = -1; $retdown = 1; } - else { $retup = 1; $retdown = -1; } + if ($sortorder == 'ASC') { $retup = -1; $retdown = 1; } else { $retup = 1; $retdown = -1; } if ($sortfield == 'name') { @@ -512,9 +503,7 @@ function dol_dir_is_emtpy($folder) if ($folder_content == "...") return true; else return false; - } - else - return true; // Dir does not exists + } else return true; // Dir does not exists } /** @@ -540,9 +529,7 @@ function dol_count_nb_of_line($file) if (!$line === false) $nb++; } fclose($fp); - } - else - { + } else { $nb = -1; } @@ -625,9 +612,7 @@ function dolReplaceInFile($srcfile, $arrayreplacement, $destfile = '', $newmask if (empty($arrayreplacementisregex)) { $content = make_substitutions($content, $arrayreplacement, null); - } - else - { + } else { foreach ($arrayreplacement as $key => $value) { $content = preg_replace($key, $value, $content); @@ -720,10 +705,11 @@ function dol_copy($srcfile, $destfile, $newmask = 0, $overwriteifexists = 1) * @param int $newmask Mask for new file (0 by default means $conf->global->MAIN_UMASK). Example: '0666' * @param int $overwriteifexists Overwrite file if exists (1 by default) * @param array $arrayreplacement Array to use to replace filenames with another one during the copy (works only on file names, not on directory names). + * @param int $excludesubdir 0=Do not exclude subdirectories, 1=Exclude subdirectories, 2=Exclude subdirectories if name is not a 2 chars (used for country codes subdirectories). * @return int <0 if error, 0 if nothing done (all files already exists and overwriteifexists=0), >0 if OK * @see dol_copy() */ -function dolCopyDir($srcfile, $destfile, $newmask, $overwriteifexists, $arrayreplacement = null) +function dolCopyDir($srcfile, $destfile, $newmask, $overwriteifexists, $arrayreplacement = null, $excludesubdir = 0) { global $conf; @@ -759,11 +745,20 @@ function dolCopyDir($srcfile, $destfile, $newmask, $overwriteifexists, $arrayrep { if (is_dir($ossrcfile."/".$file)) { - //var_dump("xxx dolCopyDir $srcfile/$file, $destfile/$file, $newmask, $overwriteifexists"); - $tmpresult = dolCopyDir($srcfile."/".$file, $destfile."/".$file, $newmask, $overwriteifexists, $arrayreplacement); - } - else - { + if (empty($excludesubdir) || ($excludesubdir == 2 && strlen($file) == 2)) { + $newfile = $file; + // Replace destination filename with a new one + if (is_array($arrayreplacement)) + { + foreach ($arrayreplacement as $key => $val) + { + $newfile = str_replace($key, $val, $newfile); + } + } + //var_dump("xxx dolCopyDir $srcfile/$file, $destfile/$file, $newmask, $overwriteifexists"); + $tmpresult = dolCopyDir($srcfile."/".$file, $destfile."/".$newfile, $newmask, $overwriteifexists, $arrayreplacement, $excludesubdir); + } + } else { $newfile = $file; // Replace destination filename with a new one if (is_array($arrayreplacement)) @@ -779,18 +774,14 @@ function dolCopyDir($srcfile, $destfile, $newmask, $overwriteifexists, $arrayrep if ($result > 0 && $tmpresult >= 0) { // Do nothing, so we don't set result to 0 if tmpresult is 0 and result was success in a previous pass - } - else - { + } else { $result = $tmpresult; } if ($result < 0) break; } } closedir($dir_handle); - } - else - { + } else { // Source directory does not exists $result = -2; } @@ -856,8 +847,7 @@ function dol_move($srcfile, $destfile, $newmask = 0, $overwriteifexists = 1, $te // We force delete and try again. Rename function sometimes fails to replace dest file with some windows NTFS partitions. dol_delete_file($destfile); $result = @rename($newpathofsrcfile, $newpathofdestfile); // To see errors, remove @ - } - else dol_syslog("files.lib.php::dol_move Failed.", LOG_WARNING); + } else dol_syslog("files.lib.php::dol_move Failed.", LOG_WARNING); } // Move ok @@ -894,8 +884,7 @@ function dol_move($srcfile, $destfile, $newmask = 0, $overwriteifexists = 1, $te $ecmfile->filepath = $rel_dir; $ecmfile->filename = $filename; $resultecm = $ecmfile->update($user); - } - elseif ($resultecm == 0) // If no entry were found for src files, create/update target file + } elseif ($resultecm == 0) // If no entry were found for src files, create/update target file { $filename = basename($rel_filetorenameafter); $rel_dir = dirname($rel_filetorenameafter); @@ -914,8 +903,7 @@ function dol_move($srcfile, $destfile, $newmask = 0, $overwriteifexists = 1, $te { setEventMessages($ecmfile->error, $ecmfile->errors, 'warnings'); } - } - elseif ($resultecm < 0) + } elseif ($resultecm < 0) { setEventMessages($ecmfile->error, $ecmfile->errors, 'warnings'); } @@ -960,18 +948,18 @@ function dol_unescapefile($filename) */ function dolCheckVirus($src_file) { - global $conf, $db; + global $conf; if (!empty($conf->global->MAIN_ANTIVIRUS_COMMAND)) { if (!class_exists('AntiVir')) { require_once DOL_DOCUMENT_ROOT.'/core/class/antivir.class.php'; } - $antivir = new AntiVir($db); + $antivir=new AntiVir($db); $result = $antivir->dol_avscan_file($src_file); if ($result < 0) // If virus or error, we stop here { - $reterrors = $antivir->errors; + $reterrors=$antivir->errors; return $reterrors; } } @@ -1079,8 +1067,7 @@ function dol_move_uploaded_file($src_file, $dest_file, $allowoverwrite, $disable $errmsg = join(',', $hookmanager->errors); if (empty($errmsg)) $errmsg = 'ErrorReturnedBySomeHooks'; // Should not occurs. Added if hook is bugged and does not set ->errors when there is error. return $errmsg; - } - elseif (empty($reshook)) + } elseif (empty($reshook)) { // The file functions must be in OS filesystem encoding. $src_file_osencoded = dol_osencode($src_file); @@ -1110,9 +1097,7 @@ function dol_move_uploaded_file($src_file, $dest_file, $allowoverwrite, $disable if (!empty($conf->global->MAIN_UMASK)) @chmod($file_name_osencoded, octdec($conf->global->MAIN_UMASK)); dol_syslog("Files.lib::dol_move_uploaded_file Success to move ".$src_file." to ".$file_name." - Umask=".$conf->global->MAIN_UMASK, LOG_DEBUG); return 1; // Success - } - else - { + } else { dol_syslog("Files.lib::dol_move_uploaded_file Failed to move ".$src_file." to ".$file_name, LOG_ERR); return -3; // Unknown error } @@ -1170,9 +1155,7 @@ function dol_delete_file($file, $disableglob = 0, $nophperrors = 0, $nohook = 0, { if ($reshook < 0) return false; return true; - } - else - { + } else { $error = 0; //print "x".$file." ".$disableglob;exit; @@ -1215,19 +1198,14 @@ function dol_delete_file($file, $disableglob = 0, $nophperrors = 0, $nohook = 0, } } } - } - else - { + } else { dol_syslog("Failed to remove file ".$filename, LOG_WARNING); // TODO Failure to remove can be because file was already removed or because of permission // If error because it does not exists, we should return true, and we should return false if this is a permission problem } } - } - else dol_syslog("No files to delete found", LOG_DEBUG); - } - else - { + } else dol_syslog("No files to delete found", LOG_DEBUG); + } else { $ok = false; if ($nophperrors) $ok = @unlink($file_osencoded); else $ok = unlink($file_osencoded); @@ -1289,9 +1267,7 @@ function dol_delete_dir_recursive($dir, $count = 0, $nophperrors = 0, $onlysub = if (is_dir(dol_osencode("$dir/$item")) && !is_link(dol_osencode("$dir/$item"))) { $count = dol_delete_dir_recursive("$dir/$item", $count, $nophperrors, 0, $countdeleted); - } - else - { + } else { $result = dol_delete_file("$dir/$item", 1, $nophperrors); $count++; if ($result) $countdeleted++; @@ -1371,9 +1347,7 @@ function dol_delete_preview($object) $object->error = $langs->trans("ErrorFailedToDeleteFile", $filepreviewold); return 0; } - } - else - { + } else { $multiple = $filepreviewold."."; for ($i = 0; $i < 20; $i++) { @@ -1461,9 +1435,7 @@ function dol_meta_create($object) @chmod($file, octdec($conf->global->MAIN_UMASK)); return 1; - } - else - { + } else { dol_syslog('FailedToDetectDirInDolMetaCreateFor'.$object->element, LOG_WARNING); } @@ -1606,27 +1578,22 @@ function dol_add_file_process($upload_dir, $allowoverwrite = 0, $donotupdatesess { if ($allowoverwrite) { // Do not show error message. We can have an error due to DB_ERROR_RECORD_ALREADY_EXISTS - } - else { + } else { setEventMessages('FailedToAddFileIntoDatabaseIndex', '', 'warnings'); } } } $nbok++; - } - else - { + } else { $langs->load("errors"); if ($resupload < 0) // Unknown error { setEventMessages($langs->trans("ErrorFileNotUploaded"), null, 'errors'); - } - elseif (preg_match('/ErrorFileIsInfectedWithAVirus/', $resupload)) // Files infected by a virus + } elseif (preg_match('/ErrorFileIsInfectedWithAVirus/', $resupload)) // Files infected by a virus { setEventMessages($langs->trans("ErrorFileIsInfectedWithAVirus"), null, 'errors'); - } - else // Known error + } else // Known error { setEventMessages($langs->trans($resupload), null, 'errors'); } @@ -1653,9 +1620,7 @@ function dol_add_file_process($upload_dir, $allowoverwrite = 0, $donotupdatesess } else { setEventMessages($langs->trans("ErrorFileNotLinked"), null, 'errors'); } - } - else - { + } else { $langs->load("errors"); setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("File")), null, 'errors'); } @@ -1853,35 +1818,27 @@ function dol_convert_file($fileinput, $ext = 'png', $fileoutput = '', $page = '' if (empty($fileoutput)) $fileoutput = $fileinput.".".$ext; $count = $image->getNumberImages(); + if (!dol_is_file($fileoutput) || is_writeable($fileoutput)) { try { $ret = $image->writeImages($fileoutput, true); - } - catch (Exception $e) + } catch (Exception $e) { dol_syslog($e->getMessage(), LOG_WARNING); } - } - else - { + } else { dol_syslog("Warning: Failed to write cache preview file '.$fileoutput.'. Check permission on file/dir", LOG_ERR); } if ($ret) return $count; else return -3; - } - else - { + } else { return -2; } - } - else - { + } else { return -1; } - } - else - { + } else { return 0; } } @@ -1903,14 +1860,11 @@ function dol_compress_file($inputfile, $outputfile, $mode = "gz", &$errorstring $foundhandler = 0; - try - { + 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); } - elseif ($mode == 'zip') + if ($mode == 'gz') { $foundhandler = 1; $compressdata = gzencode($data, 9); } elseif ($mode == 'bz') { $foundhandler = 1; $compressdata = bzcompress($data, 9); } elseif ($mode == 'zip') { if (class_exists('ZipArchive') && !empty($conf->global->MAIN_USE_ZIPARCHIVE_FOR_ZIP_COMPRESS)) { @@ -1982,9 +1936,7 @@ function dol_compress_file($inputfile, $outputfile, $mode = "gz", &$errorstring $errorstring = "dol_compress_file error archive->errorCode = ".$archive->errorCode()." errormsg=".$errormsg; dol_syslog("dol_compress_file failure - ".$errormsg, LOG_ERR); return -3; - } - else - { + } else { dol_syslog("dol_compress_file success - ".count($result)." files"); return 1; } @@ -1997,9 +1949,7 @@ function dol_compress_file($inputfile, $outputfile, $mode = "gz", &$errorstring fwrite($fp, $compressdata); fclose($fp); return 1; - } - else - { + } else { $errorstring = "Try to zip with format ".$mode." with no handler for this format"; dol_syslog($errorstring, LOG_ERR); @@ -2007,8 +1957,7 @@ function dol_compress_file($inputfile, $outputfile, $mode = "gz", &$errorstring $errormsg = $errorstring; return -2; } - } - catch (Exception $e) + } catch (Exception $e) { global $langs, $errormsg; $langs->load("errors"); @@ -2039,8 +1988,7 @@ function dol_uncompress($inputfile, $outputdir) $result = $archive->extract(PCLZIP_OPT_PATH, $outputdir); //var_dump($result); if (!is_array($result) && $result <= 0) return array('error'=>$archive->errorInfo(true)); - else - { + else { $ok = 1; $errmsg = ''; // Loop on each file to check result for unzipping file foreach ($result as $key => $val) @@ -2069,9 +2017,7 @@ function dol_uncompress($inputfile, $outputdir) $zip->extractTo($outputdir.'/'); $zip->close(); return array(); - } - else - { + } else { return array('error'=>'ErrUnzipFails'); } } @@ -2104,11 +2050,8 @@ function dol_compress_dir($inputdir, $outputfile, $mode = "zip", $excludefiles = return -3; } - try - { - if ($mode == 'gz') { $foundhandler = 0; } - elseif ($mode == 'bz') { $foundhandler = 0; } - elseif ($mode == 'zip') + try { + if ($mode == 'gz') { $foundhandler = 0; } elseif ($mode == 'bz') { $foundhandler = 0; } elseif ($mode == 'zip') { /*if (defined('ODTPHP_PATHTOPCLZIP')) { @@ -2172,13 +2115,10 @@ function dol_compress_dir($inputdir, $outputfile, $mode = "zip", $excludefiles = { dol_syslog("Try to zip with format ".$mode." with no handler for this format", LOG_ERR); return -2; - } - else - { + } else { return 0; } - } - catch (Exception $e) + } catch (Exception $e) { global $langs, $errormsg; $langs->load("errors"); @@ -2258,20 +2198,17 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, if (empty($entity) || empty($conf->medias->multidir_output[$entity])) return array('accessallowed'=>0, 'error'=>'Value entity must be provided'); $accessallowed = 1; $original_file = $conf->medias->multidir_output[$entity].'/'.$original_file; - } - // Wrapping for *.log files, like when used with url http://.../document.php?modulepart=logs&file=dolibarr.log + } // Wrapping for *.log files, like when used with url http://.../document.php?modulepart=logs&file=dolibarr.log elseif ($modulepart == 'logs' && !empty($dolibarr_main_data_root)) { $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 + } // 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 + } // 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)) { // Dir for custom dirs @@ -2280,203 +2217,169 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, $accessallowed = ($user->admin && preg_match('/^module_.*\.zip$/', basename($original_file))); $original_file = $dirins.'/'.$original_file; - } - // Wrapping for some images + } // Wrapping for some images elseif ($modulepart == 'mycompany' && !empty($conf->mycompany->dir_output)) { $accessallowed = 1; $original_file = $conf->mycompany->dir_output.'/'.$original_file; - } - // Wrapping for users photos + } // Wrapping for users photos elseif ($modulepart == 'userphoto' && !empty($conf->user->dir_output)) { $accessallowed = 1; $original_file = $conf->user->dir_output.'/'.$original_file; - } - // Wrapping for members photos + } // Wrapping for members photos elseif ($modulepart == 'memberphoto' && !empty($conf->adherent->dir_output)) { $accessallowed = 1; $original_file = $conf->adherent->dir_output.'/'.$original_file; - } - // Wrapping pour les apercu factures + } // Wrapping pour les apercu factures elseif ($modulepart == 'apercufacture' && !empty($conf->facture->multidir_output[$entity])) { if ($fuser->rights->facture->{$lire}) $accessallowed = 1; $original_file = $conf->facture->multidir_output[$entity].'/'.$original_file; - } - // Wrapping pour les apercu propal + } // Wrapping pour les apercu propal elseif ($modulepart == 'apercupropal' && !empty($conf->propal->multidir_output[$entity])) { if ($fuser->rights->propale->{$lire}) $accessallowed = 1; $original_file = $conf->propal->multidir_output[$entity].'/'.$original_file; - } - // Wrapping pour les apercu commande + } // Wrapping pour les apercu commande elseif ($modulepart == 'apercucommande' && !empty($conf->commande->multidir_output[$entity])) { if ($fuser->rights->commande->{$lire}) $accessallowed = 1; $original_file = $conf->commande->multidir_output[$entity].'/'.$original_file; - } - // Wrapping pour les apercu intervention + } // Wrapping pour les apercu intervention elseif (($modulepart == 'apercufichinter' || $modulepart == 'apercuficheinter') && !empty($conf->ficheinter->dir_output)) { if ($fuser->rights->ficheinter->{$lire}) $accessallowed = 1; $original_file = $conf->ficheinter->dir_output.'/'.$original_file; - } - // Wrapping pour les apercu conat + } // Wrapping pour les apercu conat elseif (($modulepart == 'apercucontract') && !empty($conf->contrat->dir_output)) { if ($fuser->rights->contrat->{$lire}) $accessallowed = 1; $original_file = $conf->contrat->dir_output.'/'.$original_file; - } - // Wrapping pour les apercu supplier proposal + } // Wrapping pour les apercu supplier proposal elseif (($modulepart == 'apercusupplier_proposal' || $modulepart == 'apercusupplier_proposal') && !empty($conf->supplier_proposal->dir_output)) { if ($fuser->rights->supplier_proposal->{$lire}) $accessallowed = 1; $original_file = $conf->supplier_proposal->dir_output.'/'.$original_file; - } - // Wrapping pour les apercu supplier order + } // Wrapping pour les apercu supplier order elseif (($modulepart == 'apercusupplier_order' || $modulepart == 'apercusupplier_order') && !empty($conf->fournisseur->commande->dir_output)) { if ($fuser->rights->fournisseur->commande->{$lire}) $accessallowed = 1; $original_file = $conf->fournisseur->commande->dir_output.'/'.$original_file; - } - // Wrapping pour les apercu supplier invoice + } // Wrapping pour les apercu supplier invoice elseif (($modulepart == 'apercusupplier_invoice' || $modulepart == 'apercusupplier_invoice') && !empty($conf->fournisseur->facture->dir_output)) { if ($fuser->rights->fournisseur->facture->{$lire}) $accessallowed = 1; $original_file = $conf->fournisseur->facture->dir_output.'/'.$original_file; - } - // Wrapping pour les apercu supplier invoice + } // Wrapping pour les apercu supplier invoice elseif (($modulepart == 'apercuexpensereport') && !empty($conf->expensereport->dir_output)) { if ($fuser->rights->expensereport->{$lire}) $accessallowed = 1; $original_file = $conf->expensereport->dir_output.'/'.$original_file; - } - // Wrapping pour les images des stats propales + } // Wrapping pour les images des stats propales elseif ($modulepart == 'propalstats' && !empty($conf->propal->multidir_temp[$entity])) { if ($fuser->rights->propale->{$lire}) $accessallowed = 1; $original_file = $conf->propal->multidir_temp[$entity].'/'.$original_file; - } - // Wrapping pour les images des stats commandes + } // Wrapping pour les images des stats commandes elseif ($modulepart == 'orderstats' && !empty($conf->commande->dir_temp)) { if ($fuser->rights->commande->{$lire}) $accessallowed = 1; $original_file = $conf->commande->dir_temp.'/'.$original_file; - } - elseif ($modulepart == 'orderstatssupplier' && !empty($conf->fournisseur->dir_output)) + } elseif ($modulepart == 'orderstatssupplier' && !empty($conf->fournisseur->dir_output)) { if ($fuser->rights->fournisseur->commande->{$lire}) $accessallowed = 1; $original_file = $conf->fournisseur->commande->dir_temp.'/'.$original_file; - } - // Wrapping pour les images des stats factures + } // Wrapping pour les images des stats factures elseif ($modulepart == 'billstats' && !empty($conf->facture->dir_temp)) { if ($fuser->rights->facture->{$lire}) $accessallowed = 1; $original_file = $conf->facture->dir_temp.'/'.$original_file; - } - elseif ($modulepart == 'billstatssupplier' && !empty($conf->fournisseur->dir_output)) + } elseif ($modulepart == 'billstatssupplier' && !empty($conf->fournisseur->dir_output)) { if ($fuser->rights->fournisseur->facture->{$lire}) $accessallowed = 1; $original_file = $conf->fournisseur->facture->dir_temp.'/'.$original_file; - } - // Wrapping pour les images des stats expeditions + } // Wrapping pour les images des stats expeditions elseif ($modulepart == 'expeditionstats' && !empty($conf->expedition->dir_temp)) { if ($fuser->rights->expedition->{$lire}) $accessallowed = 1; $original_file = $conf->expedition->dir_temp.'/'.$original_file; - } - // Wrapping pour les images des stats expeditions + } // Wrapping pour les images des stats expeditions elseif ($modulepart == 'tripsexpensesstats' && !empty($conf->deplacement->dir_temp)) { if ($fuser->rights->deplacement->{$lire}) $accessallowed = 1; $original_file = $conf->deplacement->dir_temp.'/'.$original_file; - } - // Wrapping pour les images des stats expeditions + } // Wrapping pour les images des stats expeditions elseif ($modulepart == 'memberstats' && !empty($conf->adherent->dir_temp)) { if ($fuser->rights->adherent->{$lire}) $accessallowed = 1; $original_file = $conf->adherent->dir_temp.'/'.$original_file; - } - // Wrapping pour les images des stats produits + } // Wrapping pour les images des stats produits elseif (preg_match('/^productstats_/i', $modulepart) && !empty($conf->product->dir_temp)) { if ($fuser->rights->produit->{$lire} || $fuser->rights->service->{$lire}) $accessallowed = 1; $original_file = (!empty($conf->product->multidir_temp[$entity]) ? $conf->product->multidir_temp[$entity] : $conf->service->multidir_temp[$entity]).'/'.$original_file; - } - // Wrapping for taxes + } // Wrapping for taxes elseif (in_array($modulepart, array('tax', 'tax-vat')) && !empty($conf->tax->dir_output)) { if ($fuser->rights->tax->charges->{$lire}) $accessallowed = 1; $modulepartsuffix = str_replace('tax-', '', $modulepart); $original_file = $conf->tax->dir_output.'/'.($modulepartsuffix != 'tax' ? $modulepartsuffix.'/' : '').$original_file; - } - // Wrapping for events + } // Wrapping for events elseif ($modulepart == 'actions' && !empty($conf->agenda->dir_output)) { if ($fuser->rights->agenda->myactions->{$read}) $accessallowed = 1; $original_file = $conf->agenda->dir_output.'/'.$original_file; - } - // Wrapping for categories - elseif ($modulepart == 'category' && !empty($conf->categorie->dir_output)) + } // Wrapping for categories + elseif ($modulepart == 'category' && !empty($conf->categorie->multidir_output[$entity])) { if (empty($entity) || empty($conf->categorie->multidir_output[$entity])) return array('accessallowed'=>0, 'error'=>'Value entity must be provided'); if ($fuser->rights->categorie->{$lire}) $accessallowed = 1; $original_file = $conf->categorie->multidir_output[$entity].'/'.$original_file; - } - // Wrapping pour les prelevements + } // Wrapping pour les prelevements elseif ($modulepart == 'prelevement' && !empty($conf->prelevement->dir_output)) { if ($fuser->rights->prelevement->bons->{$lire} || preg_match('/^specimen/i', $original_file)) $accessallowed = 1; $original_file = $conf->prelevement->dir_output.'/'.$original_file; - } - // Wrapping pour les graph energie + } // Wrapping pour les graph energie elseif ($modulepart == 'graph_stock' && !empty($conf->stock->dir_temp)) { $accessallowed = 1; $original_file = $conf->stock->dir_temp.'/'.$original_file; - } - // Wrapping pour les graph fournisseurs + } // Wrapping pour les graph fournisseurs elseif ($modulepart == 'graph_fourn' && !empty($conf->fournisseur->dir_temp)) { $accessallowed = 1; $original_file = $conf->fournisseur->dir_temp.'/'.$original_file; - } - // Wrapping pour les graph des produits + } // Wrapping pour les graph des produits elseif ($modulepart == 'graph_product' && !empty($conf->product->dir_temp)) { $accessallowed = 1; $original_file = $conf->product->multidir_temp[$entity].'/'.$original_file; - } - // Wrapping pour les code barre + } // Wrapping pour les code barre elseif ($modulepart == 'barcode') { $accessallowed = 1; // If viewimage is called for barcode, we try to output an image on the fly, with no build of file on disk. //$original_file=$conf->barcode->dir_temp.'/'.$original_file; $original_file = ''; - } - // Wrapping pour les icones de background des mailings + } // Wrapping pour les icones de background des mailings elseif ($modulepart == 'iconmailing' && !empty($conf->mailing->dir_temp)) { $accessallowed = 1; $original_file = $conf->mailing->dir_temp.'/'.$original_file; - } - // Wrapping pour le scanner + } // Wrapping pour le scanner elseif ($modulepart == 'scanner_user_temp' && !empty($conf->scanner->dir_temp)) { $accessallowed = 1; $original_file = $conf->scanner->dir_temp.'/'.$fuser->id.'/'.$original_file; - } - // Wrapping pour les images fckeditor + } // Wrapping pour les images fckeditor elseif ($modulepart == 'fckeditor' && !empty($conf->fckeditor->dir_output)) { $accessallowed = 1; $original_file = $conf->fckeditor->dir_output.'/'.$original_file; - } - - // Wrapping for users + } // Wrapping for users elseif ($modulepart == 'user' && !empty($conf->user->dir_output)) { $canreaduser = (!empty($fuser->admin) || $fuser->rights->user->user->{$lire}); @@ -2486,10 +2389,8 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, $accessallowed = 1; } $original_file = $conf->user->dir_output.'/'.$original_file; - } - - // Wrapping for third parties - elseif (($modulepart == 'company' || $modulepart == 'societe' || $modulepart == 'thirdparty') && !empty($conf->societe->dir_output)) + } // Wrapping for third parties + elseif (($modulepart == 'company' || $modulepart == 'societe' || $modulepart == 'thirdparty') && !empty($conf->societe->multidir_output[$entity])) { if (empty($entity) || empty($conf->societe->multidir_output[$entity])) return array('accessallowed'=>0, 'error'=>'Value entity must be provided'); if ($fuser->rights->societe->{$lire} || preg_match('/^specimen/i', $original_file)) @@ -2498,10 +2399,8 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, } $original_file = $conf->societe->multidir_output[$entity].'/'.$original_file; $sqlprotectagainstexternals = "SELECT rowid as fk_soc FROM ".MAIN_DB_PREFIX."societe WHERE rowid='".$db->escape($refname)."' AND entity IN (".getEntity('societe').")"; - } - - // Wrapping for contact - elseif ($modulepart == 'contact' && !empty($conf->societe->dir_output)) + } // Wrapping for contact + elseif ($modulepart == 'contact' && !empty($conf->societe->multidir_output[$entity])) { if (empty($entity) || empty($conf->societe->multidir_output[$entity])) return array('accessallowed'=>0, 'error'=>'Value entity must be provided'); if ($fuser->rights->societe->{$lire}) @@ -2509,9 +2408,7 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, $accessallowed = 1; } $original_file = $conf->societe->multidir_output[$entity].'/contact/'.$original_file; - } - - // Wrapping for invoices + } // Wrapping for invoices elseif (($modulepart == 'facture' || $modulepart == 'invoice') && !empty($conf->facture->multidir_output[$entity])) { if ($fuser->rights->facture->{$lire} || preg_match('/^specimen/i', $original_file)) @@ -2519,9 +2416,8 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, $accessallowed = 1; } $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 + $sqlprotectagainstexternals = "SELECT fk_soc as fk_soc FROM ".MAIN_DB_PREFIX."facture WHERE ref='".$db->escape($refname)."' AND entity IN (".getEntity('invoice').")"; + } // Wrapping for mass actions elseif ($modulepart == 'massfilesarea_proposals' && !empty($conf->propal->multidir_output[$entity])) { if ($fuser->rights->propal->{$lire} || preg_match('/^specimen/i', $original_file)) @@ -2529,81 +2425,70 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, $accessallowed = 1; } $original_file = $conf->propal->multidir_output[$entity].'/temp/massgeneration/'.$user->id.'/'.$original_file; - } - elseif ($modulepart == 'massfilesarea_orders') + } elseif ($modulepart == 'massfilesarea_orders') { if ($fuser->rights->commande->{$lire} || preg_match('/^specimen/i', $original_file)) { $accessallowed = 1; } $original_file = $conf->commande->multidir_output[$entity].'/temp/massgeneration/'.$user->id.'/'.$original_file; - } - elseif ($modulepart == 'massfilesarea_sendings') + } elseif ($modulepart == 'massfilesarea_sendings') { if ($fuser->rights->expedition->{$lire} || preg_match('/^specimen/i', $original_file)) { $accessallowed = 1; } $original_file = $conf->expedition->dir_output.'/sending/temp/massgeneration/'.$user->id.'/'.$original_file; - } - elseif ($modulepart == 'massfilesarea_invoices') + } elseif ($modulepart == 'massfilesarea_invoices') { if ($fuser->rights->facture->{$lire} || preg_match('/^specimen/i', $original_file)) { $accessallowed = 1; } $original_file = $conf->facture->multidir_output[$entity].'/temp/massgeneration/'.$user->id.'/'.$original_file; - } - elseif ($modulepart == 'massfilesarea_expensereport') + } elseif ($modulepart == 'massfilesarea_expensereport') { if ($fuser->rights->facture->{$lire} || preg_match('/^specimen/i', $original_file)) { $accessallowed = 1; } $original_file = $conf->expensereport->dir_output.'/temp/massgeneration/'.$user->id.'/'.$original_file; - } - elseif ($modulepart == 'massfilesarea_interventions') + } elseif ($modulepart == 'massfilesarea_interventions') { if ($fuser->rights->ficheinter->{$lire} || preg_match('/^specimen/i', $original_file)) { $accessallowed = 1; } $original_file = $conf->ficheinter->dir_output.'/temp/massgeneration/'.$user->id.'/'.$original_file; - } - elseif ($modulepart == 'massfilesarea_supplier_proposal' && !empty($conf->supplier_proposal->dir_output)) + } elseif ($modulepart == 'massfilesarea_supplier_proposal' && !empty($conf->supplier_proposal->dir_output)) { if ($fuser->rights->supplier_proposal->{$lire} || preg_match('/^specimen/i', $original_file)) { $accessallowed = 1; } $original_file = $conf->supplier_proposal->dir_output.'/temp/massgeneration/'.$user->id.'/'.$original_file; - } - elseif ($modulepart == 'massfilesarea_supplier_order') + } elseif ($modulepart == 'massfilesarea_supplier_order') { if ($fuser->rights->fournisseur->commande->{$lire} || preg_match('/^specimen/i', $original_file)) { $accessallowed = 1; } $original_file = $conf->fournisseur->commande->dir_output.'/temp/massgeneration/'.$user->id.'/'.$original_file; - } - elseif ($modulepart == 'massfilesarea_supplier_invoice') + } elseif ($modulepart == 'massfilesarea_supplier_invoice') { if ($fuser->rights->fournisseur->facture->{$lire} || preg_match('/^specimen/i', $original_file)) { $accessallowed = 1; } $original_file = $conf->fournisseur->facture->dir_output.'/temp/massgeneration/'.$user->id.'/'.$original_file; - } - elseif ($modulepart == 'massfilesarea_contract' && !empty($conf->contrat->dir_output)) + } elseif ($modulepart == 'massfilesarea_contract' && !empty($conf->contrat->dir_output)) { if ($fuser->rights->contrat->{$lire} || preg_match('/^specimen/i', $original_file)) { $accessallowed = 1; } $original_file = $conf->contrat->dir_output.'/temp/massgeneration/'.$user->id.'/'.$original_file; - } - - // Wrapping for interventions + } // Wrapping for interventions elseif (($modulepart == 'fichinter' || $modulepart == 'ficheinter') && !empty($conf->ficheinter->dir_output)) { if ($fuser->rights->ficheinter->{$lire} || preg_match('/^specimen/i', $original_file)) @@ -2612,9 +2497,7 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, } $original_file = $conf->ficheinter->dir_output.'/'.$original_file; $sqlprotectagainstexternals = "SELECT fk_soc as fk_soc FROM ".MAIN_DB_PREFIX."fichinter WHERE ref='".$db->escape($refname)."' AND entity=".$conf->entity; - } - - // Wrapping pour les deplacements et notes de frais + } // Wrapping pour les deplacements et notes de frais elseif ($modulepart == 'deplacement' && !empty($conf->deplacement->dir_output)) { if ($fuser->rights->deplacement->{$lire} || preg_match('/^specimen/i', $original_file)) @@ -2623,8 +2506,7 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, } $original_file = $conf->deplacement->dir_output.'/'.$original_file; //$sqlprotectagainstexternals = "SELECT fk_soc as fk_soc FROM ".MAIN_DB_PREFIX."fichinter WHERE ref='".$db->escape($refname)."' AND entity=".$conf->entity; - } - // Wrapping pour les propales + } // Wrapping pour les propales elseif (($modulepart == 'propal' || $modulepart == 'propale') && !empty($conf->propal->multidir_output[$entity])) { if ($fuser->rights->propale->{$lire} || preg_match('/^specimen/i', $original_file)) @@ -2632,10 +2514,8 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, $accessallowed = 1; } $original_file = $conf->propal->multidir_output[$entity].'/'.$original_file; - $sqlprotectagainstexternals = "SELECT fk_soc as fk_soc FROM ".MAIN_DB_PREFIX."propal WHERE ref='".$db->escape($refname)."' AND entity=".$conf->entity; - } - - // Wrapping pour les commandes + $sqlprotectagainstexternals = "SELECT fk_soc as fk_soc FROM ".MAIN_DB_PREFIX."propal WHERE ref='".$db->escape($refname)."' AND entity IN (".getEntity('propal').")"; + } // Wrapping pour les commandes elseif (($modulepart == 'commande' || $modulepart == 'order') && !empty($conf->commande->multidir_output[$entity])) { if ($fuser->rights->commande->{$lire} || preg_match('/^specimen/i', $original_file)) @@ -2643,10 +2523,8 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, $accessallowed = 1; } $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; - } - - // Wrapping pour les projets + $sqlprotectagainstexternals = "SELECT fk_soc as fk_soc FROM ".MAIN_DB_PREFIX."commande WHERE ref='".$db->escape($refname)."' AND entity IN (".getEntity('order').")"; + } // Wrapping pour les projets elseif ($modulepart == 'project' && !empty($conf->projet->dir_output)) { if ($fuser->rights->projet->{$lire} || preg_match('/^specimen/i', $original_file)) @@ -2655,8 +2533,7 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, } $original_file = $conf->projet->dir_output.'/'.$original_file; $sqlprotectagainstexternals = "SELECT fk_soc as fk_soc FROM ".MAIN_DB_PREFIX."projet WHERE ref='".$db->escape($refname)."' AND entity IN (".getEntity('project').")"; - } - elseif ($modulepart == 'project_task' && !empty($conf->projet->dir_output)) + } elseif ($modulepart == 'project_task' && !empty($conf->projet->dir_output)) { if ($fuser->rights->projet->{$lire} || preg_match('/^specimen/i', $original_file)) { @@ -2664,9 +2541,7 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, } $original_file = $conf->projet->dir_output.'/'.$original_file; $sqlprotectagainstexternals = "SELECT fk_soc as fk_soc FROM ".MAIN_DB_PREFIX."projet WHERE ref='".$db->escape($refname)."' AND entity IN (".getEntity('project').")"; - } - - // Wrapping pour les commandes fournisseurs + } // Wrapping pour les commandes fournisseurs elseif (($modulepart == 'commande_fournisseur' || $modulepart == 'order_supplier') && !empty($conf->fournisseur->commande->dir_output)) { if ($fuser->rights->fournisseur->commande->{$lire} || preg_match('/^specimen/i', $original_file)) @@ -2675,9 +2550,7 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, } $original_file = $conf->fournisseur->commande->dir_output.'/'.$original_file; $sqlprotectagainstexternals = "SELECT fk_soc as fk_soc FROM ".MAIN_DB_PREFIX."commande_fournisseur WHERE ref='".$db->escape($refname)."' AND entity=".$conf->entity; - } - - // Wrapping pour les factures fournisseurs + } // Wrapping pour les factures fournisseurs elseif (($modulepart == 'facture_fournisseur' || $modulepart == 'invoice_supplier') && !empty($conf->fournisseur->facture->dir_output)) { if ($fuser->rights->fournisseur->facture->{$lire} || preg_match('/^specimen/i', $original_file)) @@ -2686,8 +2559,7 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, } $original_file = $conf->fournisseur->facture->dir_output.'/'.$original_file; $sqlprotectagainstexternals = "SELECT fk_soc as fk_soc FROM ".MAIN_DB_PREFIX."facture_fourn WHERE ref='".$db->escape($refname)."' AND entity=".$conf->entity; - } - // Wrapping pour les rapport de paiements + } // Wrapping pour les rapport de paiements elseif ($modulepart == 'supplier_payment') { if ($fuser->rights->fournisseur->facture->{$lire} || preg_match('/^specimen/i', $original_file)) @@ -2696,9 +2568,7 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, } $original_file = $conf->fournisseur->payment->dir_output.'/'.$original_file; $sqlprotectagainstexternals = "SELECT fk_soc as fk_soc FROM ".MAIN_DB_PREFIX."paiementfournisseur WHERE ref='".$db->escape($refname)."' AND entity=".$conf->entity; - } - - // Wrapping pour les rapport de paiements + } // Wrapping pour les rapport de paiements elseif ($modulepart == 'facture_paiement' && !empty($conf->facture->dir_output)) { if ($fuser->rights->facture->{$lire} || preg_match('/^specimen/i', $original_file)) @@ -2707,9 +2577,7 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, } if ($fuser->societe_id > 0) $original_file = $conf->facture->dir_output.'/payments/private/'.$fuser->id.'/'.$original_file; else $original_file = $conf->facture->dir_output.'/payments/'.$original_file; - } - - // Wrapping for accounting exports + } // Wrapping for accounting exports elseif ($modulepart == 'export_compta' && !empty($conf->accounting->dir_output)) { if ($fuser->rights->accounting->bind->write || preg_match('/^specimen/i', $original_file)) @@ -2717,9 +2585,7 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, $accessallowed = 1; } $original_file = $conf->accounting->dir_output.'/'.$original_file; - } - - // Wrapping pour les expedition + } // Wrapping pour les expedition elseif ($modulepart == 'expedition' && !empty($conf->expedition->dir_output)) { if ($fuser->rights->expedition->{$lire} || preg_match('/^specimen/i', $original_file)) @@ -2727,8 +2593,7 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, $accessallowed = 1; } $original_file = $conf->expedition->dir_output."/sending/".$original_file; - } - // Wrapping pour les bons de livraison + } // Wrapping pour les bons de livraison elseif ($modulepart == 'livraison' && !empty($conf->expedition->dir_output)) { if ($fuser->rights->expedition->livraison->{$lire} || preg_match('/^specimen/i', $original_file)) @@ -2736,9 +2601,7 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, $accessallowed = 1; } $original_file = $conf->expedition->dir_output."/receipt/".$original_file; - } - - // Wrapping pour les actions + } // Wrapping pour les actions elseif ($modulepart == 'actions' && !empty($conf->agenda->dir_output)) { if ($fuser->rights->agenda->myactions->{$read} || preg_match('/^specimen/i', $original_file)) @@ -2746,9 +2609,7 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, $accessallowed = 1; } $original_file = $conf->agenda->dir_output.'/'.$original_file; - } - - // Wrapping pour les actions + } // Wrapping pour les actions elseif ($modulepart == 'actionsreport' && !empty($conf->agenda->dir_temp)) { if ($fuser->rights->agenda->allactions->{$read} || preg_match('/^specimen/i', $original_file)) @@ -2756,9 +2617,7 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, $accessallowed = 1; } $original_file = $conf->agenda->dir_temp."/".$original_file; - } - - // Wrapping pour les produits et services + } // Wrapping pour les produits et services elseif ($modulepart == 'product' || $modulepart == 'produit' || $modulepart == 'service' || $modulepart == 'produit|service') { if (empty($entity) || (empty($conf->product->multidir_output[$entity]) && empty($conf->service->multidir_output[$entity]))) return array('accessallowed'=>0, 'error'=>'Value entity must be provided'); @@ -2768,9 +2627,7 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, } if (!empty($conf->product->enabled)) $original_file = $conf->product->multidir_output[$entity].'/'.$original_file; elseif (!empty($conf->service->enabled)) $original_file = $conf->service->multidir_output[$entity].'/'.$original_file; - } - - // Wrapping pour les lots produits + } // Wrapping pour les lots produits elseif ($modulepart == 'product_batch' || $modulepart == 'produitlot') { if (empty($entity) || (empty($conf->productbatch->multidir_output[$entity]))) return array('accessallowed'=>0, 'error'=>'Value entity must be provided'); @@ -2779,9 +2636,7 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, $accessallowed = 1; } if (!empty($conf->productbatch->enabled)) $original_file = $conf->productbatch->multidir_output[$entity].'/'.$original_file; - } - - // Wrapping for stock movements + } // Wrapping for stock movements elseif ($modulepart == 'movement' || $modulepart == 'mouvement') { if (empty($entity) || empty($conf->stock->multidir_output[$entity])) return array('accessallowed'=>0, 'error'=>'Value entity must be provided'); @@ -2790,9 +2645,7 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, $accessallowed = 1; } if (!empty($conf->stock->enabled)) $original_file = $conf->stock->multidir_output[$entity].'/movement/'.$original_file; - } - - // Wrapping pour les contrats + } // Wrapping pour les contrats elseif ($modulepart == 'contract' && !empty($conf->contrat->dir_output)) { if ($fuser->rights->contrat->{$lire} || preg_match('/^specimen/i', $original_file)) @@ -2801,9 +2654,7 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, } $original_file = $conf->contrat->dir_output.'/'.$original_file; $sqlprotectagainstexternals = "SELECT fk_soc as fk_soc FROM ".MAIN_DB_PREFIX."contrat WHERE ref='".$db->escape($refname)."' AND entity IN (".getEntity('contract').")"; - } - - // Wrapping pour les dons + } // Wrapping pour les dons elseif ($modulepart == 'donation' && !empty($conf->don->dir_output)) { if ($fuser->rights->don->{$lire} || preg_match('/^specimen/i', $original_file)) @@ -2811,9 +2662,7 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, $accessallowed = 1; } $original_file = $conf->don->dir_output.'/'.$original_file; - } - - // Wrapping pour les dons + } // Wrapping pour les dons elseif ($modulepart == 'dolresource' && !empty($conf->resource->dir_output)) { if ($fuser->rights->resource->{$read} || preg_match('/^specimen/i', $original_file)) @@ -2821,9 +2670,7 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, $accessallowed = 1; } $original_file = $conf->resource->dir_output.'/'.$original_file; - } - - // Wrapping pour les remises de cheques + } // Wrapping pour les remises de cheques elseif ($modulepart == 'remisecheque' && !empty($conf->bank->dir_output)) { if ($fuser->rights->banque->{$lire} || preg_match('/^specimen/i', $original_file)) @@ -2832,9 +2679,7 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, } $original_file = $conf->bank->dir_output.'/checkdeposits/'.$original_file; // original_file should contains relative path so include the get_exdir result - } - - // Wrapping for bank + } // Wrapping for bank elseif (($modulepart == 'banque' || $modulepart == 'bank') && !empty($conf->bank->dir_output)) { if ($fuser->rights->banque->{$lire}) @@ -2842,55 +2687,41 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, $accessallowed = 1; } $original_file = $conf->bank->dir_output.'/'.$original_file; - } - - // Wrapping for export module + } // Wrapping for export module elseif ($modulepart == 'export' && !empty($conf->export->dir_temp)) { // Aucun test necessaire car on force le rep de download sur // le rep export qui est propre a l'utilisateur $accessallowed = 1; $original_file = $conf->export->dir_temp.'/'.$fuser->id.'/'.$original_file; - } - - // Wrapping for import module + } // Wrapping for import module elseif ($modulepart == 'import' && !empty($conf->import->dir_temp)) { $accessallowed = 1; $original_file = $conf->import->dir_temp.'/'.$original_file; - } - - // Wrapping pour l'editeur wysiwyg + } // Wrapping pour l'editeur wysiwyg elseif ($modulepart == 'editor' && !empty($conf->fckeditor->dir_output)) { $accessallowed = 1; $original_file = $conf->fckeditor->dir_output.'/'.$original_file; - } - - // Wrapping for backups + } // Wrapping for backups elseif ($modulepart == 'systemtools' && !empty($conf->admin->dir_output)) { if ($fuser->admin) $accessallowed = 1; $original_file = $conf->admin->dir_output.'/'.$original_file; - } - - // Wrapping for upload file test + } // Wrapping for upload file test elseif ($modulepart == 'admin_temp' && !empty($conf->admin->dir_temp)) { if ($fuser->admin) $accessallowed = 1; $original_file = $conf->admin->dir_temp.'/'.$original_file; - } - - // Wrapping pour BitTorrent + } // Wrapping pour BitTorrent elseif ($modulepart == 'bittorrent' && !empty($conf->bittorrent->dir_output)) { $accessallowed = 1; $dir = 'files'; if (dol_mimetype($original_file) == 'application/x-bittorrent') $dir = 'torrents'; $original_file = $conf->bittorrent->dir_output.'/'.$dir.'/'.$original_file; - } - - // Wrapping pour Foundation module + } // Wrapping pour Foundation module elseif ($modulepart == 'member' && !empty($conf->adherent->dir_output)) { if ($fuser->rights->adherent->{$lire} || preg_match('/^specimen/i', $original_file)) @@ -2898,22 +2729,17 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, $accessallowed = 1; } $original_file = $conf->adherent->dir_output.'/'.$original_file; - } - - // Wrapping for Scanner + } // Wrapping for Scanner elseif ($modulepart == 'scanner_user_temp' && !empty($conf->scanner->dir_temp)) { $accessallowed = 1; $original_file = $conf->scanner->dir_temp.'/'.$fuser->id.'/'.$original_file; - } - - // GENERIC Wrapping + } // GENERIC Wrapping // If modulepart=module_user_temp Allows any module to open a file if file is in directory called DOL_DATA_ROOT/modulepart/temp/iduser // If modulepart=module_temp Allows any module to open a file if file is in directory called DOL_DATA_ROOT/modulepart/temp // If modulepart=module_user Allows any module to open a file if file is in directory called DOL_DATA_ROOT/modulepart/iduser // If modulepart=module Allows any module to open a file if file is in directory called DOL_DATA_ROOT/modulepart - else - { + else { if (preg_match('/^specimen/i', $original_file)) $accessallowed = 1; // If link to a file called specimen. Test must be done before changing $original_file int full path. if ($fuser->admin) $accessallowed = 1; // If user is admin @@ -2928,8 +2754,7 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, } if ($fuser->rights->{$reg[1]}->{$lire} || $fuser->rights->{$reg[1]}->{$read} || ($fuser->rights->{$reg[1]}->{$download})) $accessallowed = 1; $original_file = $conf->{$reg[1]}->dir_temp.'/'.$fuser->id.'/'.$original_file; - } - elseif (preg_match('/^([a-z]+)_temp$/i', $modulepart, $reg)) + } elseif (preg_match('/^([a-z]+)_temp$/i', $modulepart, $reg)) { if (empty($conf->{$reg[1]}->dir_temp)) // modulepart not supported { @@ -2938,8 +2763,7 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, } if ($fuser->rights->{$reg[1]}->{$lire} || $fuser->rights->{$reg[1]}->{$read} || ($fuser->rights->{$reg[1]}->{$download})) $accessallowed = 1; $original_file = $conf->{$reg[1]}->dir_temp.'/'.$original_file; - } - elseif (preg_match('/^([a-z]+)_user$/i', $modulepart, $reg)) + } elseif (preg_match('/^([a-z]+)_user$/i', $modulepart, $reg)) { if (empty($conf->{$reg[1]}->dir_output)) // modulepart not supported { @@ -2948,8 +2772,7 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, } if ($fuser->rights->{$reg[1]}->{$lire} || $fuser->rights->{$reg[1]}->{$read} || ($fuser->rights->{$reg[1]}->{$download})) $accessallowed = 1; $original_file = $conf->{$reg[1]}->dir_output.'/'.$fuser->id.'/'.$original_file; - } - elseif (preg_match('/^massfilesarea_([a-z]+)$/i', $modulepart, $reg)) + } elseif (preg_match('/^massfilesarea_([a-z]+)$/i', $modulepart, $reg)) { if (empty($conf->{$reg[1]}->dir_output)) // modulepart not supported { @@ -2961,9 +2784,7 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, $accessallowed = 1; } $original_file = $conf->{$reg[1]}->dir_output.'/temp/massgeneration/'.$user->id.'/'.$original_file; - } - else - { + } else { 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.'). The module for this modulepart value may not be activated.'); @@ -3092,17 +2913,13 @@ function getFilesUpdated(&$file_list, SimpleXMLElement $dir, $path = '', $pathre if (!file_exists($pathref.'/'.$filename)) { $file_list['missing'][] = array('filename'=>$filename, 'expectedmd5'=>$expectedmd5, 'expectedsize'=>$expectedsize); - } - else - { + } else { $md5_local = md5_file($pathref.'/'.$filename); if ($conffile == '/etc/dolibarr/conf.php' && $filename == '/filefunc.inc.php') // For install with deb or rpm, we ignore test on filefunc.inc.php that was modified by package { $checksumconcat[] = $expectedmd5; - } - else - { + } else { if ($md5_local != $expectedmd5) $file_list['updated'][] = array('filename'=>$filename, 'expectedmd5'=>$expectedmd5, 'expectedsize'=>$expectedsize, 'md5'=>(string) $md5_local); $checksumconcat[] = $md5_local; } diff --git a/htdocs/core/lib/fiscalyear.lib.php b/htdocs/core/lib/fiscalyear.lib.php index f54772c2339..8bd3ff55624 100644 --- a/htdocs/core/lib/fiscalyear.lib.php +++ b/htdocs/core/lib/fiscalyear.lib.php @@ -35,7 +35,7 @@ function fiscalyear_prepare_head(Fiscalyear $object) $head = array(); $head[$h][0] = DOL_URL_ROOT.'/accountancy/admin/fiscalyear_card.php?id='.$object->id; - $head[$h][1] = $langs->trans("Card"); + $head[$h][1] = $langs->trans("FiscalPeriod"); $head[$h][2] = 'card'; $h++; diff --git a/htdocs/core/lib/format_cards.lib.php b/htdocs/core/lib/format_cards.lib.php index c46cd150a51..1693329329e 100644 --- a/htdocs/core/lib/format_cards.lib.php +++ b/htdocs/core/lib/format_cards.lib.php @@ -55,9 +55,7 @@ if ($resql) $_Avery_Labels[$row['code']]['custom_x'] = $row['custom_x']; $_Avery_Labels[$row['code']]['custom_y'] = $row['custom_y']; } -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php index f6584a49c77..5b78dae709c 100644 --- a/htdocs/core/lib/functions.lib.php +++ b/htdocs/core/lib/functions.lib.php @@ -84,9 +84,7 @@ function getEntity($element, $shared = 1, $currentobject = null) if (is_object($mc)) { return $mc->getEntity($element, $shared, $currentobject); - } - else - { + } else { $out = ''; $addzero = array('user', 'usergroup', 'c_email_templates', 'email_template', 'default_values'); if (in_array($element, $addzero)) $out .= '0,'; @@ -108,9 +106,7 @@ function setEntity($currentobject) if (is_object($mc) && method_exists($mc, 'setEntity')) { return $mc->setEntity($currentobject); - } - else - { + } else { return ((is_object($currentobject) && $currentobject->id > 0 && $currentobject->entity > 0) ? $currentobject->entity : $conf->entity); } } @@ -168,21 +164,13 @@ function getBrowserInfo($user_agent) } // OS - if (preg_match('/linux/i', $user_agent)) { $os = 'linux'; } - elseif (preg_match('/macintosh/i', $user_agent)) { $os = 'macintosh'; } - elseif (preg_match('/windows/i', $user_agent)) { $os = 'windows'; } + if (preg_match('/linux/i', $user_agent)) { $os = 'linux'; } elseif (preg_match('/macintosh/i', $user_agent)) { $os = 'macintosh'; } elseif (preg_match('/windows/i', $user_agent)) { $os = 'windows'; } // Name - if (preg_match('/firefox(\/|\s)([\d\.]*)/i', $user_agent, $reg)) { $name = 'firefox'; $version = $reg[2]; } - elseif (preg_match('/edge(\/|\s)([\d\.]*)/i', $user_agent, $reg)) { $name = 'edge'; $version = $reg[2]; } - elseif (preg_match('/chrome(\/|\s)([\d\.]+)/i', $user_agent, $reg)) { $name = 'chrome'; $version = $reg[2]; } // we can have 'chrome (Mozilla...) chrome x.y' in one string - elseif (preg_match('/chrome/i', $user_agent, $reg)) { $name = 'chrome'; } - elseif (preg_match('/iceweasel/i', $user_agent)) { $name = 'iceweasel'; } - elseif (preg_match('/epiphany/i', $user_agent)) { $name = 'epiphany'; } - elseif (preg_match('/safari(\/|\s)([\d\.]*)/i', $user_agent, $reg)) { $name = 'safari'; $version = $reg[2]; } // Safari is often present in string for mobile but its not. - elseif (preg_match('/opera(\/|\s)([\d\.]*)/i', $user_agent, $reg)) { $name = 'opera'; $version = $reg[2]; } - elseif (preg_match('/(MSIE\s([0-9]+\.[0-9]))|.*(Trident\/[0-9]+.[0-9];.*rv:([0-9]+\.[0-9]+))/i', $user_agent, $reg)) { $name = 'ie'; $version = end($reg); } // MS products at end - elseif (preg_match('/(Windows NT\s([0-9]+\.[0-9])).*(Trident\/[0-9]+.[0-9];.*rv:([0-9]+\.[0-9]+))/i', $user_agent, $reg)) { $name = 'ie'; $version = end($reg); } // MS products at end + if (preg_match('/firefox(\/|\s)([\d\.]*)/i', $user_agent, $reg)) { $name = 'firefox'; $version = $reg[2]; } elseif (preg_match('/edge(\/|\s)([\d\.]*)/i', $user_agent, $reg)) { $name = 'edge'; $version = $reg[2]; } elseif (preg_match('/chrome(\/|\s)([\d\.]+)/i', $user_agent, $reg)) { $name = 'chrome'; $version = $reg[2]; } // we can have 'chrome (Mozilla...) chrome x.y' in one string + elseif (preg_match('/chrome/i', $user_agent, $reg)) { $name = 'chrome'; } elseif (preg_match('/iceweasel/i', $user_agent)) { $name = 'iceweasel'; } elseif (preg_match('/epiphany/i', $user_agent)) { $name = 'epiphany'; } elseif (preg_match('/safari(\/|\s)([\d\.]*)/i', $user_agent, $reg)) { $name = 'safari'; $version = $reg[2]; } // Safari is often present in string for mobile but its not. + elseif (preg_match('/opera(\/|\s)([\d\.]*)/i', $user_agent, $reg)) { $name = 'opera'; $version = $reg[2]; } elseif (preg_match('/(MSIE\s([0-9]+\.[0-9]))|.*(Trident\/[0-9]+.[0-9];.*rv:([0-9]+\.[0-9]+))/i', $user_agent, $reg)) { $name = 'ie'; $version = end($reg); } // MS products at end + elseif (preg_match('/(Windows NT\s([0-9]+\.[0-9])).*(Trident\/[0-9]+.[0-9];.*rv:([0-9]+\.[0-9]+))/i', $user_agent, $reg)) { $name = 'ie'; $version = end($reg); } // MS products at end elseif (preg_match('/l(i|y)n(x|ks)(\(|\/|\s)*([\d\.]+)/i', $user_agent, $reg)) { $name = 'lynxlinks'; $version = $reg[4]; } if ($tablet) { @@ -257,17 +245,14 @@ function GETPOSTISSET($paramname) if ($paramname == 'contextpage' && !empty($_SESSION['lastsearch_contextpage_'.$relativepathstring])) { $isset = 1; - } - elseif ($paramname == 'page' && !empty($_SESSION['lastsearch_page_'.$relativepathstring])) + } elseif ($paramname == 'page' && !empty($_SESSION['lastsearch_page_'.$relativepathstring])) + { + $isset = 1; + } elseif ($paramname == 'limit' && !empty($_SESSION['lastsearch_limit_'.$relativepathstring])) { $isset = 1; } - elseif ($paramname == 'limit' && !empty($_SESSION['lastsearch_limit_'.$relativepathstring])) - { - $isset = 1; - } - } - else { + } else { $isset = (isset($_POST[$paramname]) || isset($_GET[$paramname])); } @@ -350,17 +335,14 @@ function GETPOST($paramname, $check = 'alphanohtml', $method = 0, $filter = null if ($paramname == 'contextpage' && !empty($_SESSION['lastsearch_contextpage_'.$relativepathstring])) { $out = $_SESSION['lastsearch_contextpage_'.$relativepathstring]; - } - elseif ($paramname == 'page' && !empty($_SESSION['lastsearch_page_'.$relativepathstring])) + } elseif ($paramname == 'page' && !empty($_SESSION['lastsearch_page_'.$relativepathstring])) { $out = $_SESSION['lastsearch_page_'.$relativepathstring]; - } - elseif ($paramname == 'limit' && !empty($_SESSION['lastsearch_limit_'.$relativepathstring])) + } elseif ($paramname == 'limit' && !empty($_SESSION['lastsearch_limit_'.$relativepathstring])) { $out = $_SESSION['lastsearch_limit_'.$relativepathstring]; } - } - // Else, retreive default values if we are not doing a sort + } // Else, retreive default values if we are not doing a sort elseif (!isset($_GET['sortfield'])) // If we did a click on a field to sort, we do no apply default values. Same if option MAIN_ENABLE_DEFAULT_VALUES is not set { if (!empty($_GET['action']) && $_GET['action'] == 'create' && !isset($_GET[$paramname]) && !isset($_POST[$paramname])) @@ -395,8 +377,7 @@ function GETPOST($paramname, $check = 'alphanohtml', $method = 0, $filter = null } if (!$foundintru) $qualified = 1; //var_dump($defkey.'-'.$qualified); - } - else $qualified = 1; + } else $qualified = 1; if ($qualified) { @@ -410,8 +391,7 @@ function GETPOST($paramname, $check = 'alphanohtml', $method = 0, $filter = null } } } - } - // Management of default search_filters and sort order + } // Management of default search_filters and sort order //elseif (preg_match('/list.php$/', $_SERVER["PHP_SELF"]) && ! empty($paramname) && ! isset($_GET[$paramname]) && ! isset($_POST[$paramname])) elseif (!empty($paramname) && !isset($_GET[$paramname]) && !isset($_POST[$paramname])) { @@ -436,8 +416,7 @@ function GETPOST($paramname, $check = 'alphanohtml', $method = 0, $filter = null } if (!$foundintru) $qualified = 1; //var_dump($defkey.'-'.$qualified); - } - else $qualified = 1; + } else $qualified = 1; if ($qualified) { @@ -458,8 +437,7 @@ function GETPOST($paramname, $check = 'alphanohtml', $method = 0, $filter = null } } } - } - elseif (isset($user->default_values[$relativepathstring]['filters'])) + } elseif (isset($user->default_values[$relativepathstring]['filters'])) { foreach ($user->default_values[$relativepathstring]['filters'] as $defkey => $defval) // $defkey is a querystring like 'a=b&c=d', $defval is key of user { @@ -475,8 +453,7 @@ function GETPOST($paramname, $check = 'alphanohtml', $method = 0, $filter = null } if (!$foundintru) $qualified = 1; //var_dump($defkey.'-'.$qualified); - } - else $qualified = 1; + } else $qualified = 1; if ($qualified) { @@ -488,9 +465,7 @@ function GETPOST($paramname, $check = 'alphanohtml', $method = 0, $filter = null $forbidden_chars_to_replace = array(" ", "'", "/", "\\", ":", "*", "?", "\"", "<", ">", "|", "[", "]", ";", "="); // we accept _, -, . and , $out = dol_string_nospecial($user->default_values[$relativepathstring]['filters'][$defkey][$paramname], '', $forbidden_chars_to_replace); } - } - else - { + } else { $forbidden_chars_to_replace = array(" ", "'", "/", "\\", ":", "*", "?", "\"", "<", ">", "|", "[", "]", ";", "="); // we accept _, -, . and , $out = dol_string_nospecial($user->default_values[$relativepathstring]['filters'][$defkey][$paramname], '', $forbidden_chars_to_replace); } @@ -515,32 +490,48 @@ function GETPOST($paramname, $check = 'alphanohtml', $method = 0, $filter = null { $loopnb++; $newout = ''; - if ($reg[1] == 'DAY') { $tmp = dol_getdate(dol_now(), true); $newout = $tmp['mday']; } - elseif ($reg[1] == 'MONTH') { $tmp = dol_getdate(dol_now(), true); $newout = $tmp['mon']; } - elseif ($reg[1] == 'YEAR') { $tmp = dol_getdate(dol_now(), true); $newout = $tmp['year']; } - elseif ($reg[1] == 'PREVIOUS_DAY') { $tmp = dol_getdate(dol_now(), true); $tmp2 = dol_get_prev_day($tmp['mday'], $tmp['mon'], $tmp['year']); $newout = $tmp2['day']; } - elseif ($reg[1] == 'PREVIOUS_MONTH') { $tmp = dol_getdate(dol_now(), true); $tmp2 = dol_get_prev_month($tmp['mon'], $tmp['year']); $newout = $tmp2['month']; } - elseif ($reg[1] == 'PREVIOUS_YEAR') { $tmp = dol_getdate(dol_now(), true); $newout = ($tmp['year'] - 1); } - elseif ($reg[1] == 'NEXT_DAY') { $tmp = dol_getdate(dol_now(), true); $tmp2 = dol_get_next_day($tmp['mday'], $tmp['mon'], $tmp['year']); $newout = $tmp2['day']; } - elseif ($reg[1] == 'NEXT_MONTH') { $tmp = dol_getdate(dol_now(), true); $tmp2 = dol_get_next_month($tmp['mon'], $tmp['year']); $newout = $tmp2['month']; } - elseif ($reg[1] == 'NEXT_YEAR') { $tmp = dol_getdate(dol_now(), true); $newout = ($tmp['year'] + 1); } - elseif ($reg[1] == 'MYCOMPANY_COUNTRY_ID' || $reg[1] == 'MYCOUNTRY_ID' || $reg[1] == 'MYCOUNTRYID') - { + if ($reg[1] == 'DAY') { + $tmp = dol_getdate(dol_now(), true); + $newout = $tmp['mday']; + } elseif ($reg[1] == 'MONTH') { + $tmp = dol_getdate(dol_now(), true); + $newout = $tmp['mon']; + } elseif ($reg[1] == 'YEAR') { + $tmp = dol_getdate(dol_now(), true); + $newout = $tmp['year']; + } elseif ($reg[1] == 'PREVIOUS_DAY') { + $tmp = dol_getdate(dol_now(), true); + $tmp2 = dol_get_prev_day($tmp['mday'], $tmp['mon'], $tmp['year']); + $newout = $tmp2['day']; + } elseif ($reg[1] == 'PREVIOUS_MONTH') { + $tmp = dol_getdate(dol_now(), true); + $tmp2 = dol_get_prev_month($tmp['mon'], $tmp['year']); + $newout = $tmp2['month']; + } elseif ($reg[1] == 'PREVIOUS_YEAR') { + $tmp = dol_getdate(dol_now(), true); + $newout = ($tmp['year'] - 1); + } elseif ($reg[1] == 'NEXT_DAY') { + $tmp = dol_getdate(dol_now(), true); + $tmp2 = dol_get_next_day($tmp['mday'], $tmp['mon'], $tmp['year']); + $newout = $tmp2['day']; + } elseif ($reg[1] == 'NEXT_MONTH') { + $tmp = dol_getdate(dol_now(), true); + $tmp2 = dol_get_next_month($tmp['mon'], $tmp['year']); + $newout = $tmp2['month']; + } elseif ($reg[1] == 'NEXT_YEAR') { + $tmp = dol_getdate(dol_now(), true); + $newout = ($tmp['year'] + 1); + } elseif ($reg[1] == 'MYCOMPANY_COUNTRY_ID' || $reg[1] == 'MYCOUNTRY_ID' || $reg[1] == 'MYCOUNTRYID') { $newout = $mysoc->country_id; - } - elseif ($reg[1] == 'USER_ID' || $reg[1] == 'USERID') - { + } elseif ($reg[1] == 'USER_ID' || $reg[1] == 'USERID') { $newout = $user->id; - } - elseif ($reg[1] == 'USER_SUPERVISOR_ID' || $reg[1] == 'SUPERVISOR_ID' || $reg[1] == 'SUPERVISORID') - { + } elseif ($reg[1] == 'USER_SUPERVISOR_ID' || $reg[1] == 'SUPERVISOR_ID' || $reg[1] == 'SUPERVISORID') { $newout = $user->fk_user; - } - elseif ($reg[1] == 'ENTITY_ID' || $reg[1] == 'ENTITYID') - { + } elseif ($reg[1] == 'ENTITY_ID' || $reg[1] == 'ENTITYID') { $newout = $conf->entity; + } else { + $newout = ''; // Key not found, we replace with empty string } - else $newout = ''; // Key not found, we replace with empty string //var_dump('__'.$reg[1].'__ -> '.$newout); $out = preg_replace('/__'.preg_quote($reg[1], '/').'__/', $newout, $out); } @@ -558,8 +549,7 @@ function GETPOST($paramname, $check = 'alphanohtml', $method = 0, $filter = null if (preg_match('/[^0-9,-]+/i', $out)) $out = ''; break; case 'alpha': - if (!is_array($out)) - { + if (!is_array($out)) { // '"' is dangerous because param in url can close the href= or src= and add javascript functions. // '../' is dangerous because it allows dir transversals $out = str_replace(array('"', '../'), '', trim($out)); @@ -746,8 +736,7 @@ function dol_buildpath($path, $type = 0, $returnemptyifnotfound = 0) { if ($returnemptyifnotfound == 1 || !file_exists($res)) return ''; } - } - else // For an url path + } else // For an url path { // We try to get local path of file on filesystem from url // Note that trying to know if a file on disk exist by forging path on disk from url @@ -824,9 +813,7 @@ function dol_clone($object, $native = 0) if (empty($native)) { $myclone = unserialize(serialize($object)); - } - else - { + } else { $myclone = clone $object; // PHP clone is a shallow copy only, not a real clone, so properties of references will keep references (refer to the same target/variable) } @@ -917,9 +904,7 @@ function dol_string_unaccent($str) ); $string = strtr($string, $replacements); return rawurldecode($string); - } - else - { + } else { // See http://www.ascii-code.com/ $string = strtr( $str, @@ -977,10 +962,8 @@ function dol_escape_js($stringtoescape, $mode = 0, $noescapebackslashn = 0) $substitjs = array("'"=>"\\'", "\r"=>'\\r'); //$substitjs['syslog->enabled)) return; + // Check if we are into execution of code of a website + if (defined('USEEXTERNALSERVER') && ! defined('USEDOLIBARRSERVER') && ! defined('USEDOLIBARREDITOR')) { + global $website, $websitekey; + if (is_object($website) && ! empty($website->ref)) $suffixinfilename.='_website_'.$website->ref; + elseif (! empty($websitekey)) $suffixinfilename.='_website_'.$websitekey; + } + if ($ident < 0) { foreach ($conf->loghandlers as $loghandlerinstance) @@ -1128,8 +1118,7 @@ function dol_syslog($message, $level = LOG_INFO, $ident = 0, $suffixinfilename = // This is when server run behind a reverse proxy if (!empty($_SERVER['HTTP_X_FORWARDED_FOR']) && $_SERVER['HTTP_X_FORWARDED_FOR'] != $remoteip) $data['ip'] = $_SERVER['HTTP_X_FORWARDED_FOR'].' -> '.$data['ip']; elseif (!empty($_SERVER['HTTP_CLIENT_IP']) && $_SERVER['HTTP_CLIENT_IP'] != $remoteip) $data['ip'] = $_SERVER['HTTP_CLIENT_IP'].' -> '.$data['ip']; - } - // This is when PHP session is ran inside a web server but not inside a client request (example: init code of apache) + } // This is when PHP session is ran inside a web server but not inside a client request (example: init code of apache) elseif (!empty($_SERVER['SERVER_ADDR'])) $data['ip'] = $_SERVER['SERVER_ADDR']; // This is when PHP session is ran outside a web server, like from Windows command line (Not always defined, but useful if OS defined it). elseif (!empty($_SERVER['COMPUTERNAME'])) $data['ip'] = $_SERVER['COMPUTERNAME'].(empty($_SERVER['USERNAME']) ? '' : '@'.$_SERVER['USERNAME']); @@ -1247,8 +1236,7 @@ function dol_get_fiche_head($links = array(), $active = '', $title = '', $notab { if ((is_numeric($active) && $i == $active) || (!empty($links[$i][2]) && !is_numeric($active) && $active == $links[$i][2])) { $isactive = true; - } - else { + } else { $isactive = false; } @@ -1260,13 +1248,10 @@ function dol_get_fiche_head($links = array(), $active = '', $title = '', $notab if (!empty($links[$i][0])) { $out .= ''.$links[$i][1].''."\n"; - } - else - { + } else { $out .= ''.$links[$i][1].''."\n"; } - } - elseif (!empty($links[$i][1])) + } elseif (!empty($links[$i][1])) { //print "x $i $active ".$links[$i][2]." z"; if ($isactive) @@ -1274,18 +1259,14 @@ function dol_get_fiche_head($links = array(), $active = '', $title = '', $notab $out .= ''; $out .= $links[$i][1]; $out .= ''."\n"; - } - else - { + } else { $out .= ''; $out .= $links[$i][1]; $out .= ''."\n"; } } $out .= ''; - } - else - { + } else { // The popup with the other tabs if (!$popuptab) { @@ -1297,10 +1278,8 @@ function dol_get_fiche_head($links = array(), $active = '', $title = '', $notab { if (!empty($links[$i][0])) $outmore .= ''.$links[$i][1].''."\n"; - else - $outmore .= ''.$links[$i][1].''."\n"; - } - elseif (!empty($links[$i][1])) + else $outmore .= ''.$links[$i][1].''."\n"; + } elseif (!empty($links[$i][1])) { $outmore .= ''; $outmore .= preg_replace('/([a-z])\/([a-z])/i', '\\1 / \\2', $links[$i][1]); // Replace x/y with x / y to allow wrap on long composed texts. @@ -1432,19 +1411,16 @@ function dol_banner_tab($object, $paramid, $morehtml = '', $shownav = 1, $fieldi $maxvisiblephotos = (isset($conf->global->PRODUCT_MAX_VISIBLE_PHOTO) ? $conf->global->PRODUCT_MAX_VISIBLE_PHOTO : 5); if ($conf->browser->layout == 'phone') $maxvisiblephotos = 1; if ($showimage) $morehtmlleft .= '
    '.$object->show_photos('product', $conf->product->multidir_output[$entity], 'small', $maxvisiblephotos, 0, 0, 0, $width, 0).'
    '; - else - { + else { if (!empty($conf->global->PRODUCT_NODISPLAYIFNOPHOTO)) { $nophoto = ''; $morehtmlleft .= '
    '; - } - else { // Show no photo link + } else { // Show no photo link $nophoto = '/public/theme/common/nophoto.png'; $morehtmlleft .= '
    No photo
    '; } } - } - elseif ($object->element == 'ticket') + } elseif ($object->element == 'ticket') { $width = 80; $cssclass = 'photoref'; $showimage = $object->is_photo_available($conf->ticket->multidir_output[$entity].'/'.$object->ref); @@ -1456,9 +1432,7 @@ function dol_banner_tab($object, $paramid, $morehtml = '', $shownav = 1, $fieldi if ($object->nbphoto > 0) { $morehtmlleft .= '
    '.$showphoto.'
    '; - } - else - { + } else { $showimage = 0; } } @@ -1467,15 +1441,12 @@ function dol_banner_tab($object, $paramid, $morehtml = '', $shownav = 1, $fieldi if (!empty($conf->global->TICKET_NODISPLAYIFNOPHOTO)) { $nophoto = ''; $morehtmlleft .= '
    '; - } - else { // Show no photo link + } else { // Show no photo link $nophoto = '/public/theme/common/nophoto.png'; $morehtmlleft .= '
    No photo
    '; } } - } - else - { + } else { if ($showimage) { if ($modulepart != 'unknown') @@ -1490,9 +1461,7 @@ function dol_banner_tab($object, $paramid, $morehtml = '', $shownav = 1, $fieldi { $subdir = get_exdir($object->id, 2, 0, 1, $object, $modulepart); $subdir .= ((!empty($subdir) && !preg_match('/\/$/', $subdir)) ? '/' : '').$objectref; // the objectref dir is not included into get_exdir when used with level=2, so we add it at end - } - else - { + } else { $subdir = get_exdir($object->id, 0, 0, 1, $object, $modulepart); } if (empty($subdir)) $subdir = 'errorgettingsubdirofobject'; // Protection to avoid to return empty path @@ -1535,8 +1504,7 @@ function dol_banner_tab($object, $paramid, $morehtml = '', $shownav = 1, $fieldi $phototoshow .= ''; } } - } - elseif (!$phototoshow) + } elseif (!$phototoshow) { $phototoshow .= $form->showphoto($modulepart, $object, 0, 0, 0, 'photoref', 'small', 1, 0, $maxvisiblephotos); } @@ -1557,9 +1525,7 @@ function dol_banner_tab($object, $paramid, $morehtml = '', $shownav = 1, $fieldi $width = 80; $cssclass = 'photorefcenter'; $nophoto = img_picto('No photo', 'title_agenda'); - } - else - { + } else { $width = 14; $cssclass = 'photorefcenter'; $picto = $object->picto; if ($object->element == 'project' && !$object->public) $picto = 'project'; // instead of projectpub @@ -1582,12 +1548,10 @@ function dol_banner_tab($object, $paramid, $morehtml = '', $shownav = 1, $fieldi if (!empty($conf->use_javascript_ajax) && $user->rights->societe->creer && !empty($conf->global->MAIN_DIRECT_STATUS_UPDATE)) { $morehtmlstatus .= ajax_object_onoff($object, 'status', 'status', 'InActivity', 'ActivityCeased'); - } - else { + } else { $morehtmlstatus .= $object->getLibStatut(6); } - } - elseif ($object->element == 'product') + } elseif ($object->element == 'product') { //$morehtmlstatus.=$langs->trans("Status").' ('.$langs->trans("Sell").') '; if (!empty($conf->use_javascript_ajax) && $user->rights->produit->creer && !empty($conf->global->MAIN_DIRECT_STATUS_UPDATE)) { @@ -1602,32 +1566,27 @@ function dol_banner_tab($object, $paramid, $morehtml = '', $shownav = 1, $fieldi } else { $morehtmlstatus .= ''.$object->getLibStatut(6, 1).''; } - } - elseif (in_array($object->element, array('facture', 'invoice', 'invoice_supplier', 'chargesociales', 'loan'))) + } elseif (in_array($object->element, array('facture', 'invoice', 'invoice_supplier', 'chargesociales', 'loan'))) { $tmptxt = $object->getLibStatut(6, $object->totalpaye); if (empty($tmptxt) || $tmptxt == $object->getLibStatut(3)) $tmptxt = $object->getLibStatut(5, $object->totalpaye); $morehtmlstatus .= $tmptxt; - } - elseif ($object->element == 'contrat' || $object->element == 'contract') + } elseif ($object->element == 'contrat' || $object->element == 'contract') { if ($object->statut == 0) $morehtmlstatus .= $object->getLibStatut(5); else $morehtmlstatus .= $object->getLibStatut(4); - } - elseif ($object->element == 'facturerec') + } elseif ($object->element == 'facturerec') { if ($object->frequency == 0) $morehtmlstatus .= $object->getLibStatut(2); else $morehtmlstatus .= $object->getLibStatut(5); - } - elseif ($object->element == 'project_task') + } elseif ($object->element == 'project_task') { $object->fk_statut = 1; if ($object->progress > 0) $object->fk_statut = 2; if ($object->progress >= 100) $object->fk_statut = 3; $tmptxt = $object->getLibStatut(5); $morehtmlstatus .= $tmptxt; // No status on task - } - else { // Generic case + } else { // Generic case $tmptxt = $object->getLibStatut(6); if (empty($tmptxt) || $tmptxt == $object->getLibStatut(3)) $tmptxt = $object->getLibStatut(5); $morehtmlstatus .= $tmptxt; @@ -1746,8 +1705,7 @@ function dol_format_address($object, $withcountry = 0, $sep = "\n", $outputlangs $ret .= ($ret ? ", " : '').$object->state; } if ($object->zip) $ret .= ($ret ? ", " : '').$object->zip; - } - elseif (in_array($object->country_code, array('GB', 'UK'))) // UK: title firstname name \n address lines \n town state \n zip \n country + } elseif (in_array($object->country_code, array('GB', 'UK'))) // UK: title firstname name \n address lines \n town state \n zip \n country { $town = ($extralangcode ? $object->array_languages['town'][$extralangcode] : $object->town); $ret .= ($ret ? $sep : '').$town; @@ -1756,8 +1714,7 @@ function dol_format_address($object, $withcountry = 0, $sep = "\n", $outputlangs $ret .= ($ret ? ", " : '').$object->state; } if ($object->zip) $ret .= ($ret ? $sep : '').$object->zip; - } - elseif (in_array($object->country_code, array('ES', 'TR'))) // ES: title firstname name \n address lines \n zip town \n state \n country + } elseif (in_array($object->country_code, array('ES', 'TR'))) // ES: title firstname name \n address lines \n zip town \n state \n country { $ret .= ($ret ? $sep : '').$object->zip; $town = ($extralangcode ? $object->array_languages['town'][$extralangcode] : $object->town); @@ -1766,15 +1723,13 @@ function dol_format_address($object, $withcountry = 0, $sep = "\n", $outputlangs { $ret .= "\n".$object->state; } - } - elseif (in_array($object->country_code, array('IT'))) // IT: tile firstname name\n address lines \n zip (Code Departement) \n country + } elseif (in_array($object->country_code, array('IT'))) // IT: tile firstname name\n address lines \n zip (Code Departement) \n country { $ret .= ($ret ? $sep : '').$object->zip; $town = ($extralangcode ? $object->array_languages['town'][$extralangcode] : $object->town); $ret .= ($town ? (($object->zip ? ' ' : '').$town) : ''); $ret .= ($object->state_code ? (' '.($object->state_code)) : ''); - } - else // Other: title firstname name \n address lines \n zip town \n country + } else // Other: title firstname name \n address lines \n zip town \n country { $town = ($extralangcode ? $object->array_languages['town'][$extralangcode] : $object->town); $ret .= $object->zip ? (($ret ? $sep : '').$object->zip) : ''; @@ -1808,8 +1763,7 @@ function dol_strftime($fmt, $ts = false, $is_gmt = false) { if ((abs($ts) <= 0x7FFFFFFF)) { // check if number in 32-bit signed range return ($is_gmt) ? @gmstrftime($fmt, $ts) : @strftime($fmt, $ts); - } - else return 'Error date into a not supported range'; + } else return 'Error date into a not supported range'; } /** @@ -1851,8 +1805,7 @@ function dol_print_date($time, $format = '', $tzoutput = 'tzserver', $outputlang $offsettzstring = @date_default_timezone_get(); // Example 'Europe/Berlin' or 'Indian/Reunion' $offsettz = 0; $offsetdst = 0; - } - elseif ($tzoutput == 'tzuser' || $tzoutput == 'tzuserrel') + } elseif ($tzoutput == 'tzuser' || $tzoutput == 'tzuserrel') { $to_gmt = true; $offsettzstring = (empty($_SESSION['dol_tz_string']) ? 'UTC' : $_SESSION['dol_tz_string']); // Example 'Europe/Berlin' or 'Indian/Reunion' @@ -1917,8 +1870,7 @@ function dol_print_date($time, $format = '', $tzoutput = 'tzserver', $outputlang { dol_print_error("Functions.lib::dol_print_date function called with a bad value from page ".$_SERVER["PHP_SELF"]); return ''; - } - elseif (preg_match('/^([0-9]+)\-([0-9]+)\-([0-9]+) ?([0-9]+)?:?([0-9]+)?:?([0-9]+)?/i', $time, $reg)) // Still available to solve problems in extrafields of type date + } elseif (preg_match('/^([0-9]+)\-([0-9]+)\-([0-9]+) ?([0-9]+)?:?([0-9]+)?:?([0-9]+)?/i', $time, $reg)) // Still available to solve problems in extrafields of type date { // This part of code should not be used. dol_syslog("Functions.lib::dol_print_date function called with a bad value from page ".$_SERVER["PHP_SELF"], LOG_WARNING); @@ -1933,17 +1885,14 @@ function dol_print_date($time, $format = '', $tzoutput = 'tzserver', $outputlang $time = dol_mktime($shour, $smin, $ssec, $smonth, $sday, $syear, true); $ret = adodb_strftime($format, $time + $offsettz + $offsetdst, $to_gmt); - } - else - { + } else { // Date is a timestamps if ($time < 100000000000) // Protection against bad date values { $timetouse = $time + $offsettz + $offsetdst; // TODO Replace this with function Date PHP. We also should not use anymore offsettz and offsetdst but only offsettzstring. $ret = adodb_strftime($format, $timetouse, $to_gmt); - } - else $ret = 'Bad value '.$time.' for date'; + } else $ret = 'Bad value '.$time.' for date'; } if (preg_match('/__b__/i', $format)) @@ -1957,9 +1906,7 @@ function dol_print_date($time, $format = '', $tzoutput = 'tzserver', $outputlang { $monthtext = $outputlangs->transnoentities('Month'.$month); $monthtextshort = $outputlangs->transnoentities('MonthShort'.$month); - } - else - { + } else { $monthtext = $outputlangs->transnoentitiesnoconv('Month'.$month); $monthtextshort = $outputlangs->transnoentitiesnoconv('MonthShort'.$month); } @@ -2027,9 +1974,7 @@ function dol_getdate($timestamp, $fast = false) if ($usealternatemethod) { $arrayinfo = adodb_getdate($timestamp, $fast); - } - else - { + } else { $arrayinfo = getdate($timestamp); } @@ -2080,28 +2025,23 @@ function dol_mktime($hour, $minute, $second, $month, $day, $year, $gm = false, $ { $default_timezone = @date_default_timezone_get(); // Example 'Europe/Berlin' $localtz = new DateTimeZone($default_timezone); - } - elseif ($gm === 'user') + } elseif ($gm === 'user') { // We use dol_tz_string first because it is more reliable. $default_timezone = (empty($_SESSION["dol_tz_string"]) ? @date_default_timezone_get() : $_SESSION["dol_tz_string"]); // Example 'Europe/Berlin' try { $localtz = new DateTimeZone($default_timezone); - } - catch (Exception $e) + } catch (Exception $e) { dol_syslog("Warning dol_tz_string contains an invalid value ".$_SESSION["dol_tz_string"], LOG_WARNING); $default_timezone = @date_default_timezone_get(); } - } - elseif (strrpos($gm, "tz,") !== false) + } elseif (strrpos($gm, "tz,") !== false) { $timezone = str_replace("tz,", "", $gm); // Example 'tz,Europe/Berlin' - try - { + try { $localtz = new DateTimeZone($timezone); - } - catch (Exception $e) + } catch (Exception $e) { dol_syslog("Warning passed timezone contains an invalid value ".$timezone, LOG_WARNING); } @@ -2140,8 +2080,7 @@ function dol_now($mode = 'gmt') require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php'; $tzsecond = getServerTimeZoneInt('now'); // Contains tz+dayling saving time $ret = (int) (dol_now('gmt') + ($tzsecond * 3600)); - } - /*elseif ($mode == 'tzref') // Time for now with parent company timezone is added + } /*elseif ($mode == 'tzref') // Time for now with parent company timezone is added { require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php'; $tzsecond=getParentCompanyTimeZoneInt(); // Contains tz+dayling saving time @@ -2180,16 +2119,13 @@ function dol_print_size($size, $shortvalue = 0, $shortunit = 0) $ret = $size; $textunitshort = $langs->trans("b"); $textunitlong = $langs->trans("Bytes"); - } - else - { + } else { $ret = round($size / $level, 0); $textunitshort = $langs->trans("Kb"); $textunitlong = $langs->trans("KiloBytes"); } // Use long or short text unit - if (empty($shortunit)) { $ret .= ' '.$textunitlong; } - else { $ret .= ' '.$textunitshort; } + if (empty($shortunit)) { $ret .= ' '.$textunitlong; } else { $ret .= ' '.$textunitshort; } return $ret; } @@ -2261,9 +2197,7 @@ function dol_print_email($email, $cid = 0, $socid = 0, $addlink = 0, $max = 64, if (!empty($conf->global->AGENDA_ADDACTIONFOREMAIL)) $link = ''.img_object($langs->trans("AddAction"), "calendar").''; if ($link) $newemail = '
    '.$newemail.' '.$link.'
    '; } - } - else - { + } else { if ($showinvalid && !isValidEmail($email)) { $langs->load("errors"); @@ -2355,9 +2289,7 @@ function dol_print_socialnetworks($value, $cid, $socid, $type) $htmllink .= ($link ? ' '.$link : ''); } $htmllink .= ''; - } - else - { + } else { $langs->load("errors"); $htmllink .= img_warning($langs->trans("ErrorBadSocialNetworkValue", $value)); } @@ -2397,284 +2329,236 @@ function dol_print_phone($phone, $countrycode = '', $cid = 0, $socid = 0, $addli // France if (dol_strlen($phone) == 10) { $newphone = substr($newphone, 0, 2).$separ.substr($newphone, 2, 2).$separ.substr($newphone, 4, 2).$separ.substr($newphone, 6, 2).$separ.substr($newphone, 8, 2); - } - elseif (dol_strlen($phone) == 7) + } elseif (dol_strlen($phone) == 7) { $newphone = substr($newphone, 0, 3).$separ.substr($newphone, 3, 2).$separ.substr($newphone, 5, 2); - } - elseif (dol_strlen($phone) == 9) + } elseif (dol_strlen($phone) == 9) { $newphone = substr($newphone, 0, 2).$separ.substr($newphone, 2, 3).$separ.substr($newphone, 5, 2).$separ.substr($newphone, 7, 2); - } - elseif (dol_strlen($phone) == 11) + } elseif (dol_strlen($phone) == 11) { $newphone = substr($newphone, 0, 3).$separ.substr($newphone, 3, 2).$separ.substr($newphone, 5, 2).$separ.substr($newphone, 7, 2).$separ.substr($newphone, 9, 2); - } - elseif (dol_strlen($phone) == 12) + } elseif (dol_strlen($phone) == 12) { $newphone = substr($newphone, 0, 4).$separ.substr($newphone, 4, 2).$separ.substr($newphone, 6, 2).$separ.substr($newphone, 8, 2).$separ.substr($newphone, 10, 2); } - } - - elseif (strtoupper($countrycode) == "CA") + } elseif (strtoupper($countrycode) == "CA") { if (dol_strlen($phone) == 10) { $newphone = ($separ != '' ? '(' : '').substr($newphone, 0, 3).($separ != '' ? ')' : '').$separ.substr($newphone, 3, 3).($separ != '' ? '-' : '').substr($newphone, 6, 4); } - } - elseif (strtoupper($countrycode) == "PT") + } elseif (strtoupper($countrycode) == "PT") {//Portugal if (dol_strlen($phone) == 13) {//ex: +351_ABC_DEF_GHI $newphone = substr($newphone, 0, 4).$separ.substr($newphone, 4, 3).$separ.substr($newphone, 7, 3).$separ.substr($newphone, 10, 3); } - } - elseif (strtoupper($countrycode) == "SR") + } elseif (strtoupper($countrycode) == "SR") {//Suriname if (dol_strlen($phone) == 10) {//ex: +597_ABC_DEF $newphone = substr($newphone, 0, 4).$separ.substr($newphone, 4, 3).$separ.substr($newphone, 7, 3); - } - elseif (dol_strlen($phone) == 11) + } elseif (dol_strlen($phone) == 11) {//ex: +597_ABC_DEFG $newphone = substr($newphone, 0, 4).$separ.substr($newphone, 4, 3).$separ.substr($newphone, 7, 4); } - } - elseif (strtoupper($countrycode) == "DE") + } elseif (strtoupper($countrycode) == "DE") {//Allemagne if (dol_strlen($phone) == 14) {//ex: +49_ABCD_EFGH_IJK $newphone = substr($newphone, 0, 3).$separ.substr($newphone, 3, 4).$separ.substr($newphone, 7, 4).$separ.substr($newphone, 11, 3); - } - elseif (dol_strlen($phone) == 13) + } elseif (dol_strlen($phone) == 13) {//ex: +49_ABC_DEFG_HIJ $newphone = substr($newphone, 0, 3).$separ.substr($newphone, 3, 3).$separ.substr($newphone, 6, 4).$separ.substr($newphone, 10, 3); } - } - elseif (strtoupper($countrycode) == "ES") + } elseif (strtoupper($countrycode) == "ES") {//Espagne if (dol_strlen($phone) == 12) {//ex: +34_ABC_DEF_GHI $newphone = substr($newphone, 0, 3).$separ.substr($newphone, 3, 3).$separ.substr($newphone, 6, 3).$separ.substr($newphone, 9, 3); } - } - elseif (strtoupper($countrycode) == "BF") + } elseif (strtoupper($countrycode) == "BF") {// Burkina Faso if (dol_strlen($phone) == 12) {//ex : +22 A BC_DE_FG_HI $newphone = substr($newphone, 0, 3).$separ.substr($newphone, 3, 1).$separ.substr($newphone, 4, 2).$separ.substr($newphone, 6, 2).$separ.substr($newphone, 8, 2).$separ.substr($newphone, 10, 2); } - } - elseif (strtoupper($countrycode) == "RO") + } elseif (strtoupper($countrycode) == "RO") {// Roumanie if (dol_strlen($phone) == 12) {//ex : +40 AB_CDE_FG_HI $newphone = substr($newphone, 0, 3).$separ.substr($newphone, 3, 2).$separ.substr($newphone, 5, 3).$separ.substr($newphone, 8, 2).$separ.substr($newphone, 10, 2); } - } - elseif (strtoupper($countrycode) == "TR") + } elseif (strtoupper($countrycode) == "TR") {//Turquie if (dol_strlen($phone) == 13) {//ex : +90 ABC_DEF_GHIJ $newphone = substr($newphone, 0, 3).$separ.substr($newphone, 3, 3).$separ.substr($newphone, 6, 3).$separ.substr($newphone, 9, 4); } - } - elseif (strtoupper($countrycode) == "US") + } elseif (strtoupper($countrycode) == "US") {//Etat-Unis if (dol_strlen($phone) == 12) {//ex: +1 ABC_DEF_GHIJ $newphone = substr($newphone, 0, 2).$separ.substr($newphone, 2, 3).$separ.substr($newphone, 5, 3).$separ.substr($newphone, 8, 4); } - } - elseif (strtoupper($countrycode) == "MX") + } elseif (strtoupper($countrycode) == "MX") {//Mexique if (dol_strlen($phone) == 12) {//ex: +52 ABCD_EFG_HI $newphone = substr($newphone, 0, 3).$separ.substr($newphone, 3, 4).$separ.substr($newphone, 7, 3).$separ.substr($newphone, 10, 2); - } - elseif (dol_strlen($phone) == 11) + } elseif (dol_strlen($phone) == 11) {//ex: +52 AB_CD_EF_GH $newphone = substr($newphone, 0, 3).$separ.substr($newphone, 3, 2).$separ.substr($newphone, 5, 2).$separ.substr($newphone, 7, 2).$separ.substr($newphone, 9, 2); - } - elseif (dol_strlen($phone) == 13) + } elseif (dol_strlen($phone) == 13) {//ex: +52 ABC_DEF_GHIJ $newphone = substr($newphone, 0, 3).$separ.substr($newphone, 3, 3).$separ.substr($newphone, 6, 3).$separ.substr($newphone, 9, 4); } - } - elseif (strtoupper($countrycode) == "ML") + } elseif (strtoupper($countrycode) == "ML") {//Mali if (dol_strlen($phone) == 12) {//ex: +223 AB_CD_EF_GH $newphone = substr($newphone, 0, 4).$separ.substr($newphone, 4, 2).$separ.substr($newphone, 6, 2).$separ.substr($newphone, 8, 2).$separ.substr($newphone, 10, 2); } - } - elseif (strtoupper($countrycode) == "TH") + } elseif (strtoupper($countrycode) == "TH") {//Thaïlande if (dol_strlen($phone) == 11) {//ex: +66_ABC_DE_FGH $newphone = substr($newphone, 0, 3).$separ.substr($newphone, 3, 3).$separ.substr($newphone, 6, 2).$separ.substr($newphone, 8, 3); - } - elseif (dol_strlen($phone) == 12) + } elseif (dol_strlen($phone) == 12) {//ex: +66_A_BCD_EF_GHI $newphone = substr($newphone, 0, 3).$separ.substr($newphone, 3, 1).$separ.substr($newphone, 4, 3).$separ.substr($newphone, 7, 2).$separ.substr($newphone, 9, 3); } - } - elseif (strtoupper($countrycode) == "MU") + } elseif (strtoupper($countrycode) == "MU") { //Maurice if (dol_strlen($phone) == 11) {//ex: +230_ABC_DE_FG $newphone = substr($newphone, 0, 4).$separ.substr($newphone, 4, 3).$separ.substr($newphone, 7, 2).$separ.substr($newphone, 9, 2); - } - elseif (dol_strlen($phone) == 12) + } elseif (dol_strlen($phone) == 12) {//ex: +230_ABCD_EF_GH $newphone = substr($newphone, 0, 4).$separ.substr($newphone, 4, 4).$separ.substr($newphone, 8, 2).$separ.substr($newphone, 10, 2); } - } - elseif (strtoupper($countrycode) == "ZA") + } elseif (strtoupper($countrycode) == "ZA") {//Afrique du sud if (dol_strlen($phone) == 12) {//ex: +27_AB_CDE_FG_HI $newphone = substr($newphone, 0, 3).$separ.substr($newphone, 3, 2).$separ.substr($newphone, 5, 3).$separ.substr($newphone, 8, 2).$separ.substr($newphone, 10, 2); } - } - elseif (strtoupper($countrycode) == "SY") + } elseif (strtoupper($countrycode) == "SY") {//Syrie if (dol_strlen($phone) == 12) {//ex: +963_AB_CD_EF_GH $newphone = substr($newphone, 0, 4).$separ.substr($newphone, 4, 2).$separ.substr($newphone, 6, 2).$separ.substr($newphone, 8, 2).$separ.substr($newphone, 10, 2); - } - elseif (dol_strlen($phone) == 13) + } elseif (dol_strlen($phone) == 13) {//ex: +963_AB_CD_EF_GHI $newphone = substr($newphone, 0, 4).$separ.substr($newphone, 4, 2).$separ.substr($newphone, 6, 2).$separ.substr($newphone, 8, 2).$separ.substr($newphone, 10, 3); } - } - elseif (strtoupper($countrycode) == "AE") + } elseif (strtoupper($countrycode) == "AE") {//Emirats Arabes Unis if (dol_strlen($phone) == 12) {//ex: +971_ABC_DEF_GH $newphone = substr($newphone, 0, 4).$separ.substr($newphone, 4, 3).$separ.substr($newphone, 7, 3).$separ.substr($newphone, 10, 2); - } - elseif (dol_strlen($phone) == 13) + } elseif (dol_strlen($phone) == 13) {//ex: +971_ABC_DEF_GHI $newphone = substr($newphone, 0, 4).$separ.substr($newphone, 4, 3).$separ.substr($newphone, 7, 3).$separ.substr($newphone, 10, 3); - } - elseif (dol_strlen($phone) == 14) + } elseif (dol_strlen($phone) == 14) {//ex: +971_ABC_DEF_GHIK $newphone = substr($newphone, 0, 4).$separ.substr($newphone, 4, 3).$separ.substr($newphone, 7, 3).$separ.substr($newphone, 10, 4); } - } - elseif (strtoupper($countrycode) == "DZ") + } elseif (strtoupper($countrycode) == "DZ") {//Algérie if (dol_strlen($phone) == 13) {//ex: +213_ABC_DEF_GHI $newphone = substr($newphone, 0, 4).$separ.substr($newphone, 4, 3).$separ.substr($newphone, 7, 3).$separ.substr($newphone, 10, 3); } - } - elseif (strtoupper($countrycode) == "BE") + } elseif (strtoupper($countrycode) == "BE") {//Belgique if (dol_strlen($phone) == 11) {//ex: +32_ABC_DE_FGH $newphone = substr($newphone, 0, 3).$separ.substr($newphone, 3, 3).$separ.substr($newphone, 6, 2).$separ.substr($newphone, 8, 3); - } - elseif (dol_strlen($phone) == 12) + } elseif (dol_strlen($phone) == 12) {//ex: +32_ABC_DEF_GHI $newphone = substr($newphone, 0, 3).$separ.substr($newphone, 3, 3).$separ.substr($newphone, 6, 3).$separ.substr($newphone, 9, 3); } - } - elseif (strtoupper($countrycode) == "PF") + } elseif (strtoupper($countrycode) == "PF") {//Polynésie française if (dol_strlen($phone) == 12) {//ex: +689_AB_CD_EF_GH $newphone = substr($newphone, 0, 4).$separ.substr($newphone, 4, 2).$separ.substr($newphone, 6, 2).$separ.substr($newphone, 8, 2).$separ.substr($newphone, 10, 2); } - } - elseif (strtoupper($countrycode) == "CO") + } elseif (strtoupper($countrycode) == "CO") {//Colombie if (dol_strlen($phone) == 13) {//ex: +57_ABC_DEF_GH_IJ $newphone = substr($newphone, 0, 3).$separ.substr($newphone, 3, 3).$separ.substr($newphone, 6, 3).$separ.substr($newphone, 9, 2).$separ.substr($newphone, 11, 2); } - } - elseif (strtoupper($countrycode) == "JO") + } elseif (strtoupper($countrycode) == "JO") {//Jordanie if (dol_strlen($phone) == 12) {//ex: +962_A_BCD_EF_GH $newphone = substr($newphone, 0, 4).$separ.substr($newphone, 4, 1).$separ.substr($newphone, 5, 3).$separ.substr($newphone, 7, 2).$separ.substr($newphone, 9, 2); } - } - elseif (strtoupper($countrycode) == "JM") + } elseif (strtoupper($countrycode) == "JM") {//Jamaïque if (dol_strlen($newphone) == 12) {//ex: +1867_ABC_DEFG $newphone = substr($newphone, 0, 5).$separ.substr($newphone, 5, 3).$separ.substr($newphone, 8, 4); } - } - elseif (strtoupper($countrycode) == "MG") + } elseif (strtoupper($countrycode) == "MG") {//Madagascar if (dol_strlen($phone) == 13) {//ex: +261_AB_CD_EF_GHI $newphone = substr($newphone, 0, 4).$separ.substr($newphone, 4, 2).$separ.substr($newphone, 6, 2).$separ.substr($newphone, 8, 2).$separ.substr($newphone, 10, 3); } - } - elseif (strtoupper($countrycode) == "GB") + } elseif (strtoupper($countrycode) == "GB") {//Royaume uni if (dol_strlen($phone) == 13) {//ex: +44_ABCD_EFG_HIJ $newphone = substr($newphone, 0, 3).$separ.substr($newphone, 3, 4).$separ.substr($newphone, 7, 3).$separ.substr($newphone, 10, 3); } - } - elseif (strtoupper($countrycode) == "CH") + } elseif (strtoupper($countrycode) == "CH") {//Suisse if (dol_strlen($phone) == 12) {//ex: +41_AB_CDE_FG_HI $newphone = substr($newphone, 0, 3).$separ.substr($newphone, 3, 2).$separ.substr($newphone, 5, 3).$separ.substr($newphone, 8, 2).$separ.substr($newphone, 10, 2); - } - elseif (dol_strlen($phone) == 15) + } elseif (dol_strlen($phone) == 15) {// +41_AB_CDE_FGH_IJKL $newphone = $newphone = substr($newphone, 0, 3).$separ.substr($newphone, 3, 2).$separ.substr($newphone, 5, 3).$separ.substr($newphone, 8, 3).$separ.substr($newphone, 11, 4); } - } - elseif (strtoupper($countrycode) == "TN") + } elseif (strtoupper($countrycode) == "TN") {//Tunisie if (dol_strlen($phone) == 12) {//ex: +216_AB_CDE_FGH $newphone = substr($newphone, 0, 4).$separ.substr($newphone, 4, 2).$separ.substr($newphone, 6, 3).$separ.substr($newphone, 9, 3); } - } - elseif (strtoupper($countrycode) == "GF") + } elseif (strtoupper($countrycode) == "GF") {//Guyane francaise if (dol_strlen($phone) == 13) {//ex: +594_ABC_DE_FG_HI (ABC=594 de nouveau) $newphone = substr($newphone, 0, 4).$separ.substr($newphone, 4, 3).$separ.substr($newphone, 7, 2).$separ.substr($newphone, 9, 2).$separ.substr($newphone, 11, 2); } - } - elseif (strtoupper($countrycode) == "GP") + } elseif (strtoupper($countrycode) == "GP") {//Guadeloupe if (dol_strlen($phone) == 13) {//ex: +590_ABC_DE_FG_HI (ABC=590 de nouveau) $newphone = substr($newphone, 0, 4).$separ.substr($newphone, 4, 3).$separ.substr($newphone, 7, 2).$separ.substr($newphone, 9, 2).$separ.substr($newphone, 11, 2); } - } - elseif (strtoupper($countrycode) == "MQ") + } elseif (strtoupper($countrycode) == "MQ") {//Martinique if (dol_strlen($phone) == 13) {//ex: +596_ABC_DE_FG_HI (ABC=596 de nouveau) $newphone = substr($newphone, 0, 4).$separ.substr($newphone, 4, 3).$separ.substr($newphone, 7, 2).$separ.substr($newphone, 9, 2).$separ.substr($newphone, 11, 2); } - } - elseif (strtoupper($countrycode) == "IT") + } elseif (strtoupper($countrycode) == "IT") {//Italie if (dol_strlen($phone) == 12) {//ex: +39_ABC_DEF_GHI $newphone = substr($newphone, 0, 3).$separ.substr($newphone, 3, 3).$separ.substr($newphone, 6, 3).$separ.substr($newphone, 9, 3); - } - elseif (dol_strlen($phone) == 13) + } elseif (dol_strlen($phone) == 13) {//ex: +39_ABC_DEF_GH_IJ $newphone = substr($newphone, 0, 3).$separ.substr($newphone, 3, 3).$separ.substr($newphone, 6, 3).$separ.substr($newphone, 9, 2).$separ.substr($newphone, 11, 2); } - } - elseif (strtoupper($countrycode) == "AU") + } elseif (strtoupper($countrycode) == "AU") { //Australie if (dol_strlen($phone) == 12) @@ -2690,8 +2574,7 @@ function dol_print_phone($phone, $countrycode = '', $cid = 0, $socid = 0, $addli $newphoneform = $newphone; $newphone = ''; - } - elseif (!empty($conf->clicktodial->enabled) && $addlink == 'AC_TEL') // If click to dial, we use click to dial url + } elseif (!empty($conf->clicktodial->enabled) && $addlink == 'AC_TEL') // If click to dial, we use click to dial url { if (empty($user->clicktodial_loaded)) $user->fetch_clicktodial(); @@ -2744,9 +2627,9 @@ function dol_print_phone($phone, $countrycode = '', $cid = 0, $socid = 0, $addli if ($withpicto) { if ($withpicto == 'fax') { $picto = 'phoning_fax'; - }elseif ($withpicto == 'phone') { + } elseif ($withpicto == 'phone') { $picto = 'phoning'; - }elseif ($withpicto == 'mobile') { + } elseif ($withpicto == 'mobile') { $picto = 'phoning_mobile'; } else { $picto = ''; @@ -2785,11 +2668,8 @@ function dol_print_ip($ip, $mode = 0) if (file_exists(DOL_DOCUMENT_ROOT.'/theme/common/flags/'.$countrycode.'.png')) { $ret .= ' '.img_picto($countrycode.' '.$langs->trans("AccordingToGeoIPDatabase"), DOL_URL_ROOT.'/theme/common/flags/'.$countrycode.'.png', '', 1); - } - else $ret .= ' ('.$countrycode.')'; - } - else - { + } else $ret .= ' ('.$countrycode.')'; + } else { // Nothing } } @@ -3011,20 +2891,14 @@ function dol_substr($string, $start, $length, $stringencoding = '', $trunconbyte if (function_exists('mb_substr')) { $ret = mb_substr($string, $start, $length, $stringencoding); - } - else - { + } else { $ret = substr($string, $start, $length); } - } - else - { + } else { if (function_exists('mb_strcut')) { $ret = mb_strcut($string, $start, $length, $stringencoding); - } - else - { + } else { $ret = substr($string, $start, $length); } } @@ -3061,11 +2935,9 @@ function dol_trunc($string, $size = 40, $trunc = 'right', $stringencoding = 'UTF $newstring = dol_textishtml($string) ?dol_string_nohtmltag($string, 1) : $string; if (dol_strlen($newstring, $stringencoding) > ($size + ($nodot ? 0 : 3))) // If nodot is 0 and size is 1,2 or 3 chars more, we don't trunc and don't add ... return dol_substr($newstring, 0, $size, $stringencoding).($nodot ? '' : '...'); - else - //return 'u'.$size.'-'.$newstring.'-'.dol_strlen($newstring,$stringencoding).'-'.$string; + else //return 'u'.$size.'-'.$newstring.'-'.dol_strlen($newstring,$stringencoding).'-'.$string; return $string; - } - elseif ($trunc == 'middle') + } elseif ($trunc == 'middle') { $newstring = dol_textishtml($string) ?dol_string_nohtmltag($string, 1) : $string; if (dol_strlen($newstring, $stringencoding) > 2 && dol_strlen($newstring, $stringencoding) > ($size + 1)) @@ -3073,27 +2945,20 @@ function dol_trunc($string, $size = 40, $trunc = 'right', $stringencoding = 'UTF $size1 = round($size / 2); $size2 = round($size / 2); return dol_substr($newstring, 0, $size1, $stringencoding).'...'.dol_substr($newstring, dol_strlen($newstring, $stringencoding) - $size2, $size2, $stringencoding); - } - else - return $string; - } - elseif ($trunc == 'left') + } else return $string; + } elseif ($trunc == 'left') { $newstring = dol_textishtml($string) ?dol_string_nohtmltag($string, 1) : $string; if (dol_strlen($newstring, $stringencoding) > ($size + ($nodot ? 0 : 3))) // If nodot is 0 and size is 1,2 or 3 chars more, we don't trunc and don't add ... return '...'.dol_substr($newstring, dol_strlen($newstring, $stringencoding) - $size, $size, $stringencoding); - else - return $string; - } - elseif ($trunc == 'wrap') + else return $string; + } elseif ($trunc == 'wrap') { $newstring = dol_textishtml($string) ?dol_string_nohtmltag($string, 1) : $string; if (dol_strlen($newstring, $stringencoding) > ($size + 1)) return dol_substr($newstring, 0, $size, $stringencoding)."\n".dol_trunc(dol_substr($newstring, $size, dol_strlen($newstring, $stringencoding) - $size, $stringencoding), $size, $trunc); - else - return $string; - } - else return 'BadParam3CallingDolTrunc'; + else return $string; + } else return 'BadParam3CallingDolTrunc'; } /** @@ -3141,31 +3006,37 @@ function img_picto($titlealt, $picto, $moreatt = '', $pictoisfullpath = false, $ if (empty($srconly) && in_array($pictowithouttext, array( '1downarrow', '1uparrow', '1leftarrow', '1rightarrow', '1uparrow_selected', '1downarrow_selected', '1leftarrow_selected', '1rightarrow_selected', - 'address', 'bank_account', 'barcode', 'bank', 'bookmark', 'bom', 'building', 'cash-register', 'check', 'close_title', 'company', 'contact', 'cubes', - 'delete', 'dolly', 'edit', 'ellipsis-h', 'external-link-alt', 'external-link-square-alt', - 'filter', 'file-code', 'file-export', 'file-import', 'file-upload', 'folder', 'folder-open', 'grip', 'grip_title', 'help', 'language', 'list', 'listlight', 'lot', 'mrp', 'note', 'stock', - 'object_accounting', 'object_action', 'object_account', 'object_barcode', 'object_bom', - 'object_category', 'object_bookmark', 'object_bug', 'object_generic', 'object_list-alt', 'object_calendar', 'object_calendarweek', 'object_calendarmonth', 'object_calendarday', 'object_calendarperuser', - 'object_cash-register', 'object_company', 'object_contact', 'object_contract', 'object_dynamicprice', - 'object_holiday', 'object_hrm', 'object_intervention', 'object_multicurrency', 'object_order', 'object_payment', - 'object_lot', 'object_mrp', 'object_product', 'object_propal', 'object_supplier_proposal', 'object_service', 'object_stock', - 'object_paragraph', 'object_printer', 'object_project', 'object_projectpub', 'object_propal', 'object_resource', 'object_rss', 'object_projecttask', - 'object_technic', 'object_ticket', 'object_trip', 'object_user', 'object_group', 'object_member', 'object_other', - 'object_phoning', 'object_phoning_fax', 'object_email', - 'off', 'on', - 'paiment', 'play', 'playdisabled', 'printer', 'product', 'propal', 'resize', 'service', 'stats', 'trip', - 'note', 'setup', 'sign-out', 'split', 'switch_off', 'switch_on', 'tools', 'unlink', 'uparrow', 'user', 'wrench', 'globe', + 'accountancy', 'address', 'bank_account', 'barcode', 'bank', 'bill', 'bookmark', 'bom', 'building', + 'cash-register', 'category', 'check', 'close_title', 'company', 'contact', 'contract', 'cubes', + 'delete', 'dolly', 'dollyrevert', 'edit', 'ellipsis-h', 'external-link-alt', 'external-link-square-alt', + 'filter', 'file-code', 'file-export', 'file-import', 'file-upload', 'folder', 'folder-open', 'globe', 'globe-americas', 'grip', 'grip_title', 'help', + 'intervention', 'label', 'language', 'list', 'listlight', 'lot', + 'map-marker-alt', 'money-bill-alt', 'mrp', 'note', + 'object_accounting', 'object_action', 'object_account', 'object_barcode', 'object_bill', 'object_billa', 'object_billd', 'object_bom', + 'object_category', 'object_conversation', 'object_bookmark', 'object_bug', 'object_dolly', 'object_dollyrevert', 'object_generic', 'object_folder', + 'object_list-alt', 'object_calendar', 'object_calendarweek', 'object_calendarmonth', 'object_calendarday', 'object_calendarperuser', + 'object_cash-register', 'object_company', 'object_contact', 'object_contract', 'object_donation', 'object_dynamicprice', + 'object_globe', 'object_holiday', 'object_hrm', 'object_invoice', 'object_intervention', 'object_label', + 'object_margin', 'object_money-bill-alt', 'object_multicurrency', 'object_order', 'object_payment', + 'object_lot', 'object_mrp', 'object_payment', 'object_product', 'object_propal', + 'object_other', 'object_paragraph', 'object_poll', 'object_printer', 'object_project', 'object_projectpub', 'object_propal', 'object_resource', 'object_rss', 'object_projecttask', + 'object_shipment', 'object_supplier_invoice', 'object_supplier_invoicea', 'object_supplier_invoiced', 'object_supplier_order', 'object_supplier_proposal', 'object_service', 'object_stock', + 'object_technic', 'object_ticket', 'object_trip', 'object_user', 'object_group', 'object_member', + 'object_phoning', 'object_phoning_mobile', 'object_phoning_fax', 'object_email', 'object_website', + 'off', 'on', 'order', + 'paiment', 'play', 'playdisabled', 'poll', 'printer', 'product', 'propal', 'projecttask', 'stock', 'resize', 'service', 'stats', 'trip', + 'setup', 'sign-out', 'split', 'switch_off', 'switch_on', 'tools', 'unlink', 'uparrow', 'user', 'vcard', 'wrench', 'jabber', 'skype', 'twitter', 'facebook', 'linkedin', 'instagram', 'snapchat', 'youtube', 'google-plus-g', 'whatsapp', 'chevron-left', 'chevron-right', 'chevron-down', 'chevron-top', - 'home', 'companies', 'products', 'commercial', 'invoicing', 'accountancy', 'preview', 'project', 'projectpub', 'hrm', 'members', 'ticket', 'generic', - 'error', 'warning', + 'home', 'companies', 'products', 'commercial', 'invoicing', 'pencil-ruler', 'preview', 'project', 'projectpub', 'supplier_invoice', 'hrm', 'members', 'ticket', 'generic', + 'error', 'warning', 'supplier_proposal', 'supplier_order', 'supplier_invoice', 'title_setup', 'title_accountancy', 'title_bank', 'title_hrm', 'title_agenda' ) )) { $fakey = $pictowithouttext; $facolor = ''; $fasize = ''; $fa = 'fas'; - if (in_array($pictowithouttext, array('object_generic', 'note', 'off', 'on', 'object_bookmark', 'bookmark'))) { + if (in_array($pictowithouttext, array('object_generic', 'note', 'off', 'on', 'object_bookmark', 'bookmark', 'vcard'))) { $fa = 'far'; } if (in_array($pictowithouttext, array('skype', 'twitter', 'facebook', 'linkedin', 'instagram', 'snapchat', 'youtube', 'google-plus-g', 'whatsapp'))) { @@ -3175,62 +3046,58 @@ function img_picto($titlealt, $picto, $moreatt = '', $pictoisfullpath = false, $ $pictowithouttext = str_replace('object_', '', $pictowithouttext); $arrayconvpictotofa = array( - 'account'=>'university', 'action'=>'calendar-alt', 'address'=> 'address-book', 'bank_account'=>'university', 'bom'=>'cubes', - 'company'=>'building', 'contact'=>'address-book', 'contract'=>'suitcase', 'dynamicprice'=>'hand-holding-usd', - 'setup'=>'cog', 'companies'=>'building', 'products'=>'cube', 'commercial'=>'suitcase', 'invoicing'=>'coins', 'accountancy'=>'money-check-alt', - 'accounting'=>'chart-line', 'category'=>'tag', - 'hrm'=>'umbrella-beach', 'members'=>'users', 'ticket'=>'ticket-alt', 'globe'=>'external-link-alt', 'lot'=>'barcode', + 'account'=>'university', 'accountancy'=>'money-check-alt', 'action'=>'calendar-alt', 'address'=> 'address-book', + 'bank_account'=>'university', 'bill'=>'file-invoice-dollar', 'billa'=>'file-excel', 'supplier_invoicea'=>'file-excel', 'billd'=>'file-medical', 'supplier_invoiced'=>'file-medical', 'bom'=>'cubes', + 'company'=>'building', 'contact'=>'address-book', 'contract'=>'suitcase', 'conversation'=>'comments', 'donation'=>'file-alt', 'dynamicprice'=>'hand-holding-usd', + 'setup'=>'cog', 'companies'=>'building', 'products'=>'cube', 'commercial'=>'suitcase', 'invoicing'=>'coins', + 'accounting'=>'chart-line', 'category'=>'tag', 'dollyrevert'=>'dolly', + 'hrm'=>'umbrella-beach', 'margin'=>'calculator', 'members'=>'users', 'ticket'=>'ticket-alt', 'globe'=>'external-link-alt', 'lot'=>'barcode', 'email'=>'at', 'edit'=>'pencil-alt', 'grip_title'=>'arrows-alt', 'grip'=>'arrows-alt', 'help'=>'info-circle', - 'generic'=>'file', 'holiday'=>'umbrella-beach', 'member'=>'users', 'mrp'=>'cubes', 'trip'=>'wallet', 'group'=>'users', + 'generic'=>'file', 'holiday'=>'umbrella-beach', 'label'=>'layer-group', + 'member'=>'users', 'mrp'=>'cubes', 'trip'=>'wallet', 'group'=>'users', 'sign-out'=>'sign-out-alt', 'switch_off'=>'toggle-off', 'switch_on'=>'toggle-on', 'check'=>'check', 'bookmark'=>'star', 'bookmark'=>'star', 'bank'=>'university', 'close_title'=>'window-close', 'delete'=>'trash', 'edit'=>'pencil-alt', 'filter'=>'filter', 'list-alt'=>'list-alt', 'calendar'=>'calendar-alt', 'calendarweek'=>'calendar-week', 'calendarmonth'=>'calendar-alt', 'calendarday'=>'calendar-day', 'calendarperuser'=>'table', - 'intervention'=>'ambulance', 'multicurrency'=>'dollar-sign', 'order'=>'file-invoice', + 'intervention'=>'ambulance', 'invoice'=>'file-invoice-dollar', 'multicurrency'=>'dollar-sign', 'order'=>'file-invoice', 'error'=>'exclamation-triangle', 'warning'=>'exclamation-triangle', 'other'=>'square', - 'playdisabled'=>'play', 'preview'=>'binoculars', 'project'=>'sitemap', 'projectpub'=>'sitemap', 'projecttask'=>'tasks', 'propal'=>'file-signature', - 'resize'=>'crop', 'supplier_proposal'=>'file-signature', - 'payment'=>'money-bill-alt', 'phoning'=>'phone', 'phoning_fax'=>'fax', 'printer'=>'print', 'product'=>'cube', 'service'=>'concierge-bell', + 'playdisabled'=>'play', 'poll'=>'check-double', 'preview'=>'binoculars', 'project'=>'sitemap', 'projectpub'=>'sitemap', 'projecttask'=>'tasks', 'propal'=>'file-signature', + 'resize'=>'crop', 'supplier_order'=>'dol-order_supplier', 'supplier_proposal'=>'file-signature', + 'payment'=>'money-check-alt', 'phoning'=>'phone', 'phoning_mobile'=>'mobile-alt', 'phoning_fax'=>'fax', 'printer'=>'print', 'product'=>'cube', 'service'=>'concierge-bell', 'resource'=>'laptop-house', - 'stock'=>'box-open', 'stats' => 'chart-bar', 'split'=>'code-branch', 'technic'=>'cogs', 'ticket'=>'ticket-alt', + 'shipment'=>'dolly', 'stock'=>'box-open', 'stats' => 'chart-bar', 'split'=>'code-branch', 'supplier_invoice'=>'file-invoice-dollar', 'technic'=>'cogs', 'ticket'=>'ticket-alt', 'title_setup'=>'tools', 'title_accountancy'=>'money-check-alt', 'title_bank'=>'university', 'title_hrm'=>'umbrella-beach', 'title_agenda'=>'calendar-alt', - 'uparrow'=>'mail-forward', - 'jabber'=>'comment-o' + 'uparrow'=>'mail-forward', 'vcard'=>'address-card', + 'jabber'=>'comment-o', + 'website'=>'globe-americas' ); if ($pictowithouttext == 'off') { $fakey = 'fa-square'; $fasize = '1.3em'; - } - elseif ($pictowithouttext == 'on') { + } elseif ($pictowithouttext == 'on') { $fakey = 'fa-check-square'; $fasize = '1.3em'; - } - elseif ($pictowithouttext == 'listlight') { + } elseif ($pictowithouttext == 'listlight') { $fakey = 'fa-download'; $marginleftonlyshort = 1; - } - elseif ($pictowithouttext == 'printer') { + } elseif ($pictowithouttext == 'printer') { $fakey = 'fa-print'; $fasize = '1.2em'; - } - elseif ($pictowithouttext == 'note') { + } elseif ($pictowithouttext == 'note') { $fakey = 'fa-sticky-note'; $marginleftonlyshort = 1; - } - elseif (in_array($pictowithouttext, array('1uparrow', '1downarrow', '1leftarrow', '1rightarrow', '1uparrow_selected', '1downarrow_selected', '1leftarrow_selected', '1rightarrow_selected'))) { + } elseif (in_array($pictowithouttext, array('1uparrow', '1downarrow', '1leftarrow', '1rightarrow', '1uparrow_selected', '1downarrow_selected', '1leftarrow_selected', '1rightarrow_selected'))) { $convertarray = array('1uparrow'=>'caret-up', '1downarrow'=>'caret-down', '1leftarrow'=>'caret-left', '1rightarrow'=>'caret-right', '1uparrow_selected'=>'caret-up', '1downarrow_selected'=>'caret-down', '1leftarrow_selected'=>'caret-left', '1rightarrow_selected'=>'caret-right'); $fakey = 'fa-'.$convertarray[$pictowithouttext]; if (preg_match('/selected/', $pictowithouttext)) $facolor = '#888'; $marginleftonlyshort = 1; - } - elseif (!empty($arrayconvpictotofa[$pictowithouttext])) + } elseif (!empty($arrayconvpictotofa[$pictowithouttext])) { $fakey = 'fa-'.$arrayconvpictotofa[$pictowithouttext]; - } - else { + } else { $fakey = 'fa-'.$pictowithouttext; } @@ -3246,18 +3113,24 @@ function img_picto($titlealt, $picto, $moreatt = '', $pictoisfullpath = false, $ // Add CSS $arrayconvpictotomorcess = array( - 'action'=>'bg-infobox-action', 'account'=>'bg-infobox-bank_account', 'bank_account'=>'bg-infobox-bank_account', 'cash-register'=>'bg-infobox-bank_account', - 'contract'=>'bg-infobox-contrat', - 'multicurrency'=>'bg-infobox-bank_account', - 'check'=>'font-status4', + 'action'=>'bg-infobox-action', 'account'=>'bg-infobox-bank_account', 'accountancy'=>'bg-infobox-bank_account', + 'bank_account'=>'bg-infobox-bank_account', + 'bill'=>'bg-infobox-commande', 'billa'=>'bg-infobox-commande', 'billd'=>'bg-infobox-commande', + 'cash-register'=>'bg-infobox-bank_account', 'contract'=>'bg-infobox-contrat', 'check'=>'font-status4', 'conversation'=>'bg-infobox-contrat', + 'donation'=>'bg-infobox-commande', 'dollyrevert'=>'flip', 'ecm'=>'bg-infobox-action', 'hrm'=>'bg-infobox-adherent', 'group'=>'bg-infobox-adherent', 'intervention'=>'bg-infobox-contrat', - 'members'=>'bg-infobox-adherent', 'member'=>'bg-infobox-adherent', 'order'=>'bg-infobox-commande', + 'multicurrency'=>'bg-infobox-bank_account', + 'members'=>'bg-infobox-adherent', 'member'=>'bg-infobox-adherent', 'money-bill-alt'=>'bg-infobox-bank_account', + 'order'=>'bg-infobox-commande', 'user'=>'bg-infobox-adherent', 'users'=>'bg-infobox-adherent', 'error'=>'pictoerror', 'warning'=>'pictowarning', 'switch_on'=>'font-status4', - 'holiday'=>'bg-infobox-holiday', - 'payment'=>'bg-infobox-bank_account', 'project'=>'bg-infobox-project', 'projecttask'=>'bg-infobox-project', 'propal'=>'bg-infobox-propal', - 'resource'=>'bg-infobox-action', 'supplier_proposal'=>'bg-infobox-supplier_proposal', - 'ticket'=>'bg-infobox-contrat', 'title_hrm'=>'bg-infobox-holiday', 'trip'=>'bg-infobox-expensereport', 'title_agenda'=>'bg-infobox-action', + 'holiday'=>'bg-infobox-holiday', 'invoice'=>'bg-infobox-commande', + 'payment'=>'bg-infobox-bank_account', 'poll'=>'bg-infobox-adherent', 'project'=>'bg-infobox-project', 'projecttask'=>'bg-infobox-project', 'propal'=>'bg-infobox-propal', + 'resource'=>'bg-infobox-action', + 'supplier_invoice'=>'bg-infobox-order_supplier', 'supplier_invoicea'=>'bg-infobox-order_supplier', 'supplier_invoiced'=>'bg-infobox-order_supplier', + 'supplier_order'=>'bg-infobox-order_supplier', 'supplier_proposal'=>'bg-infobox-supplier_proposal', + 'ticket'=>'bg-infobox-contrat', 'title_accountancy'=>'bg-infobox-bank_account', 'title_hrm'=>'bg-infobox-holiday', 'trip'=>'bg-infobox-expensereport', 'title_agenda'=>'bg-infobox-action', + //'title_setup'=>'bg-infobox-action', 'tools'=>'bg-infobox-action', 'list-alt'=>'imgforviewmode', 'calendar'=>'imgforviewmode', 'calendarweek'=>'imgforviewmode', 'calendarmonth'=>'imgforviewmode', 'calendarday'=>'imgforviewmode', 'calendarperuser'=>'imgforviewmode' ); if (!empty($arrayconvpictotomorcess[$pictowithouttext])) { @@ -3269,10 +3142,12 @@ function img_picto($titlealt, $picto, $moreatt = '', $pictoisfullpath = false, $ 'address'=>'#37a', 'building'=>'#37a', 'bom'=>'#a69944', 'companies'=>'#37a', 'company'=>'#37a', 'contact'=>'#37a', 'dynamicprice'=>'#a69944', 'edit'=>'#444', 'note'=>'#999', 'error'=>'', 'listlight'=>'#999', - 'lot'=>'#a69944', 'mrp'=>'#a69944', 'product'=>'#a69944', 'service'=>'#a69944', 'stock'=>'#a69944', + 'dolly'=>'#a69944', 'dollyrevert'=>'#a69944', 'lot'=>'#a69944', + 'map-marker-alt'=>'#aaa', 'mrp'=>'#a69944', 'product'=>'#a69944', 'service'=>'#a69944', 'stock'=>'#a69944', 'other'=>'#ddd', 'playdisabled'=>'#ccc', 'printer'=>'#444', 'projectpub'=>'#986c6a', 'resize'=>'#444', 'rss'=>'#cba', - 'stats'=>'#444', 'switch_off'=>'#999', 'uparrow'=>'#555', 'warning'=>'' + 'shipment'=>'#a69944', 'stats'=>'#444', 'switch_off'=>'#999', 'uparrow'=>'#555', 'globe-americas'=>'#aaa', + 'website'=>'#304' ); if (isset($arrayconvpictotocolor[$pictowithouttext])) { $facolor = $arrayconvpictotocolor[$pictowithouttext]; @@ -3303,11 +3178,9 @@ function img_picto($titlealt, $picto, $moreatt = '', $pictoisfullpath = false, $ if (!empty($conf->global->MAIN_OVERWRITE_THEME_PATH)) { $path = $conf->global->MAIN_OVERWRITE_THEME_PATH.'/theme/'.$theme; // If the theme does not have the same name as the module - } - elseif (!empty($conf->global->MAIN_OVERWRITE_THEME_RES)) { + } elseif (!empty($conf->global->MAIN_OVERWRITE_THEME_RES)) { $path = $conf->global->MAIN_OVERWRITE_THEME_RES.'/theme/'.$conf->global->MAIN_OVERWRITE_THEME_RES; // To allow an external module to overwrite image resources whatever is activated theme - } - elseif (!empty($conf->modules_parts['theme']) && array_key_exists($theme, $conf->modules_parts['theme'])) { + } elseif (!empty($conf->modules_parts['theme']) && array_key_exists($theme, $conf->modules_parts['theme'])) { $path = $theme.'/theme/'.$theme; // If the theme have the same name as the module } @@ -3361,7 +3234,8 @@ function img_picto($titlealt, $picto, $moreatt = '', $pictoisfullpath = false, $ */ function img_object($titlealt, $picto, $moreatt = '', $pictoisfullpath = false, $srconly = 0, $notitle = 0) { - return img_picto($titlealt, 'object_'.$picto, $moreatt, $pictoisfullpath, $srconly, $notitle); + if (strpos($picto, '^') === 0) return img_picto($titlealt, str_replace('^', '', $picto), $moreatt, $pictoisfullpath, $srconly, $notitle); + else return img_picto($titlealt, 'object_'.$picto, $moreatt, $pictoisfullpath, $srconly, $notitle); } /** @@ -3384,8 +3258,7 @@ function img_weather($titlealt, $picto, $moreatt = '', $pictoisfullpath = 0, $mo $leveltopicto = array(0=>'weather-clear.png', 1=>'weather-few-clouds.png', 2=>'weather-clouds.png', 3=>'weather-many-clouds.png', 4=>'weather-storm.png'); //return ''; $picto = $leveltopicto[$picto]; - } - elseif (!preg_match('/(\.png|\.gif)$/i', $picto)) $picto .= '.png'; + } elseif (!preg_match('/(\.png|\.gif)$/i', $picto)) $picto .= '.png'; $path = DOL_URL_ROOT.'/theme/'.$conf->theme.'/img/weather/'.$picto; @@ -3409,8 +3282,7 @@ function img_picto_common($titlealt, $picto, $moreatt = '', $pictoisfullpath = 0 if (!preg_match('/(\.png|\.gif)$/i', $picto)) $picto .= '.png'; if ($pictoisfullpath) $path = $picto; - else - { + else { $path = DOL_URL_ROOT.'/theme/common/'.$picto; if (!empty($conf->global->MAIN_MODULE_CAN_OVERWRITE_COMMONICONS)) @@ -3437,12 +3309,25 @@ function img_action($titlealt, $numaction) if (empty($titlealt) || $titlealt == 'default') { - if ($numaction == '-1' || $numaction == 'ST_NO') { $numaction = -1; $titlealt = $langs->transnoentitiesnoconv('ChangeDoNotContact'); } - elseif ($numaction == '0' || $numaction == 'ST_NEVER') { $numaction = 0; $titlealt = $langs->transnoentitiesnoconv('ChangeNeverContacted'); } - elseif ($numaction == '1' || $numaction == 'ST_TODO') { $numaction = 1; $titlealt = $langs->transnoentitiesnoconv('ChangeToContact'); } - elseif ($numaction == '2' || $numaction == 'ST_PEND') { $numaction = 2; $titlealt = $langs->transnoentitiesnoconv('ChangeContactInProcess'); } - elseif ($numaction == '3' || $numaction == 'ST_DONE') { $numaction = 3; $titlealt = $langs->transnoentitiesnoconv('ChangeContactDone'); } - else { $titlealt = $langs->transnoentitiesnoconv('ChangeStatus '.$numaction); $numaction = 0; } + if ($numaction == '-1' || $numaction == 'ST_NO') { + $numaction = -1; + $titlealt = $langs->transnoentitiesnoconv('ChangeDoNotContact'); + } elseif ($numaction == '0' || $numaction == 'ST_NEVER') { + $numaction = 0; + $titlealt = $langs->transnoentitiesnoconv('ChangeNeverContacted'); + } elseif ($numaction == '1' || $numaction == 'ST_TODO') { + $numaction = 1; + $titlealt = $langs->transnoentitiesnoconv('ChangeToContact'); + } elseif ($numaction == '2' || $numaction == 'ST_PEND') { + $numaction = 2; + $titlealt = $langs->transnoentitiesnoconv('ChangeContactInProcess'); + } elseif ($numaction == '3' || $numaction == 'ST_DONE') { + $numaction = 3; + $titlealt = $langs->transnoentitiesnoconv('ChangeContactDone'); + } else { + $titlealt = $langs->transnoentitiesnoconv('ChangeStatus '.$numaction); + $numaction = 0; + } } if (!is_numeric($numaction)) $numaction = 0; @@ -3727,7 +3612,9 @@ function img_left($titlealt = 'default', $selected = 0, $moreatt = '') { global $langs; - if ($titlealt == 'default') $titlealt = $langs->trans('Left'); + if ($titlealt == 'default') { + $titlealt = $langs->trans('Left'); + } return img_picto($titlealt, ($selected ? '1leftarrow_selected.png' : '1leftarrow.png'), $moreatt); } @@ -3770,21 +3657,29 @@ function img_allow($allow, $titlealt = 'default') /** * Return image of a credit card according to its brand name * - * @param string $brand Brand name of credit card - * @param string $morecss More CSS + * @param string $brand Brand name of credit card + * @param string $morecss More CSS * @return string Return img tag */ function img_credit_card($brand, $morecss = null) { if (is_null($morecss)) $morecss = 'fa-2x'; - if ($brand == 'visa' || $brand == 'Visa') {$brand = 'cc-visa'; } - elseif ($brand == 'mastercard' || $brand == 'MasterCard') {$brand = 'cc-mastercard'; } - elseif ($brand == 'amex' || $brand == 'American Express') {$brand = 'cc-amex'; } - elseif ($brand == 'discover' || $brand == 'Discover') {$brand = 'cc-discover'; } - elseif ($brand == 'jcb' || $brand == 'JCB') {$brand = 'cc-jcb'; } - elseif ($brand == 'diners' || $brand == 'Diners club') {$brand = 'cc-diners-club'; } - elseif (!in_array($brand, array('cc-visa', 'cc-mastercard', 'cc-amex', 'cc-discover', 'cc-jcb', 'cc-diners-club'))) {$brand = 'credit-card'; } + if ($brand == 'visa' || $brand == 'Visa') { + $brand = 'cc-visa'; + } elseif ($brand == 'mastercard' || $brand == 'MasterCard') { + $brand = 'cc-mastercard'; + } elseif ($brand == 'amex' || $brand == 'American Express') { + $brand = 'cc-amex'; + } elseif ($brand == 'discover' || $brand == 'Discover') { + $brand = 'cc-discover'; + } elseif ($brand == 'jcb' || $brand == 'JCB') { + $brand = 'cc-jcb'; + } elseif ($brand == 'diners' || $brand == 'Diners club') { + $brand = 'cc-diners-club'; + } elseif (!in_array($brand, array('cc-visa', 'cc-mastercard', 'cc-amex', 'cc-discover', 'cc-jcb', 'cc-diners-club'))) { + $brand = 'credit-card'; + } return ''; } @@ -3872,8 +3767,7 @@ function info_admin($text, $infoonimgalt = 0, $nodiv = 0, $admin = '1', $morecss if ($infoonimgalt) { $result = img_picto($text, 'info', 'class="hideonsmartphone'.($morecss ? ' '.$morecss : '').'"'); - } - else { + } else { if (empty($conf->use_javascript_ajax)) $textfordropdown = ''; $class = (empty($admin) ? 'undefined' : ($admin == '1' ? 'info' : $admin)); @@ -3953,8 +3847,7 @@ function dol_print_error($db = '', $error = '', $errors = null) $out .= "
    \n"; $syslog .= "url=".dol_escape_htmltag($_SERVER["REQUEST_URI"]); $syslog .= ", query_string=".dol_escape_htmltag($_SERVER["QUERY_STRING"]); - } - else // Mode CLI + } else // Mode CLI { $out .= '> '.$langs->transnoentities("ErrorInternalErrorDetected").":\n".$argv[0]."\n"; $syslog .= "pid=".dol_getmypid(); @@ -3974,8 +3867,7 @@ function dol_print_error($db = '', $error = '', $errors = null) $out .= "".$langs->trans("ReturnCodeLastAccessInError").": ".($db->lasterrno() ?dol_escape_htmltag($db->lasterrno()) : $langs->trans("ErrorNoRequestInError"))."
    \n"; $out .= "".$langs->trans("InformationLastAccessInError").": ".($db->lasterror() ?dol_escape_htmltag($db->lasterror()) : $langs->trans("ErrorNoRequestInError"))."
    \n"; $out .= "
    \n"; - } - else // Mode CLI + } else // Mode CLI { // No dol_escape_htmltag for output, we are in CLI mode $out .= '> '.$langs->transnoentities("DatabaseTypeManager").":\n".$db->type."\n"; @@ -4003,8 +3895,7 @@ function dol_print_error($db = '', $error = '', $errors = null) if ($_SERVER['DOCUMENT_ROOT']) // Mode web { $out .= "".$langs->trans("Message").": ".dol_escape_htmltag($msg)."
    \n"; - } - else // Mode CLI + } else // Mode CLI { $out .= '> '.$langs->transnoentities("Message").":\n".$msg."\n"; } @@ -4022,8 +3913,8 @@ function dol_print_error($db = '', $error = '', $errors = null) } if (empty($dolibarr_main_prod)) print $out; - else // This should not happen, except if there is a bug somewhere. Enabled and check log in such case. - { + else { + // This should not happen, except if there is a bug somewhere. Enabled and check log in such case. print 'This website or feature is currently temporarly not available.

    This may be due to a maintenance operation. Current status of operation are on next line...

    '."\n"; $langs->load("errors"); print $langs->trans("DolibarrHasDetectedError").'. '; @@ -4132,8 +4023,7 @@ function getTitleFieldOfList($name, $thead = 0, $file = "", $field = "", $begin $out .= '<'.$tag.' class="'.$prefix.'liste_titre_sel" '.$moreattrib; $out .= (($field && empty($conf->global->MAIN_DISABLE_WRAPPING_ON_COLUMN_TITLE) && preg_match('/^[a-zA-Z_0-9\s\.\-:]*$/', $name)) ? ' title="'.dol_escape_htmltag($langs->trans($name)).'"' : ''); $out .= '>'; - } - else { + } else { $out .= '<'.$tag.' class="'.$prefix.'liste_titre" '.$moreattrib; $out .= (($field && empty($conf->global->MAIN_DISABLE_WRAPPING_ON_COLUMN_TITLE) && preg_match('/^[a-zA-Z_0-9\s\.\-:]*$/', $name)) ? ' title="'.dol_escape_htmltag($langs->trans($name)).'"' : ''); $out .= '>'; @@ -4152,20 +4042,16 @@ function getTitleFieldOfList($name, $thead = 0, $file = "", $field = "", $begin if (preg_match('/^DESC/i', $sortorder)) { $sortordertouseinlink .= str_repeat('desc,', count(explode(',', $field))); - } - else // We reverse the var $sortordertouseinlink + } else // We reverse the var $sortordertouseinlink { $sortordertouseinlink .= str_repeat('asc,', count(explode(',', $field))); } - } - else // We are on field that is the first current sorting criteria + } else // We are on field that is the first current sorting criteria { if (preg_match('/^ASC/i', $sortorder)) // We reverse the var $sortordertouseinlink { $sortordertouseinlink .= str_repeat('desc,', count(explode(',', $field))); - } - else - { + } else { $sortordertouseinlink .= str_repeat('asc,', count(explode(',', $field))); } } @@ -4194,9 +4080,7 @@ function getTitleFieldOfList($name, $thead = 0, $file = "", $field = "", $begin { //$out.= '
    '.img_down("A-Z",0).''; //$out.= ''.img_up("Z-A",0).''; - } - else - { + } else { if (preg_match('/^DESC/', $sortorder)) { //$out.= ''.img_down("A-Z",0).''; //$out.= ''.img_up("Z-A",1).''; @@ -4325,9 +4209,7 @@ function print_barre_liste($titre, $page, $file, $options = '', $sortfield = '', if ($savlimit != 0 && (($num > $limit) || ($num == -1) || ($limit == 0))) { $nextpage = 1; - } - else - { + } else { $nextpage = 0; } //print 'totalnboflines='.$totalnboflines.'-savlimit='.$savlimit.'-limit='.$limit.'-num='.$num.'-nextpage='.$nextpage; @@ -4377,8 +4259,7 @@ function print_barre_liste($titre, $page, $file, $options = '', $sortfield = '', } } - do - { + do { if ($pagenavastextinput) { if ($cpt == $page) { @@ -4390,15 +4271,12 @@ function print_barre_liste($titre, $page, $file, $options = '', $sortfield = '', if ($cpt == $page) { $pagelist .= ''; - } - else - { + } else { $pagelist .= ''; } } $cpt++; - } - while ($cpt < $nbpages && $cpt <= ($page + $maxnbofpage)); + } while ($cpt < $nbpages && $cpt <= ($page + $maxnbofpage)); if (empty($pagenavastextinput)) { if ($cpt < $nbpages) @@ -4413,9 +4291,7 @@ function print_barre_liste($titre, $page, $file, $options = '', $sortfield = '', $pagelist .= ''; //} } - } - else - { + } else { $pagelist .= '"; } } @@ -4502,15 +4378,17 @@ function print_fleche_navigation($page, $file, $options = '', $nextpage = 0, $be } if ($page > 0) { - print ''; + print ''; } if ($betweenarrows) { + print ''; print $betweenarrows; + print ''; } if ($nextpage > 0) { - print ''; + print ''; } if ($afterarrows) { @@ -4554,8 +4432,7 @@ function vatrate($rate, $addpercent = false, $info_bits = 0, $usestarfornpr = 0) // If rate is '9/9/9' we don't change it. If rate is '9.000' we apply price() if (!preg_match('/\//', $rate)) $ret = price($rate, 0, '', 0, 0).($addpercent ? '%' : ''); - else - { + else { // TODO Split on / and output with a price2num to have clean numbers without ton of 000. $ret = $rate.($addpercent ? '%' : ''); } @@ -4640,14 +4517,12 @@ function price($amount, $form = 0, $outlangs = '', $trunc = 1, $rounding = -1, $ { if ($currency_code == 'auto') $currency_code = $conf->currency; - $listofcurrenciesbefore = array('USD', 'GBP', 'AUD', 'HKD', 'MXN', 'PEN', 'CNY', 'CAD'); + $listofcurrenciesbefore = array('AUD', 'CAD', 'CNY', 'COP', 'CLP', 'GBP', 'HKD', 'MXN', 'PEN', 'USD'); $listoflanguagesbefore = array('nl_NL'); if (in_array($currency_code, $listofcurrenciesbefore) || in_array($outlangs->defaultlang, $listoflanguagesbefore)) { $cursymbolbefore .= $outlangs->getCurrencySymbol($currency_code); - } - else - { + } else { $tmpcur = $outlangs->getCurrencySymbol($currency_code); $cursymbolafter .= ($tmpcur == $currency_code ? ' '.$tmpcur : $tmpcur); } @@ -4660,9 +4535,9 @@ function price($amount, $form = 0, $outlangs = '', $trunc = 1, $rounding = -1, $ /** * Function that return a number with universal decimal format (decimal separator is '.') from an amount typed by a user. * Function to use on each input amount before any numeric test or database insert. A better name for this function - * should be text2num(). + * should be roundtext2num(). * - * @param float $amount Amount to convert/clean + * @param float $amount Amount to convert/clean or round * @param string $rounding ''=No rounding * 'MU'=Round to Max unit price (MAIN_MAX_DECIMALS_UNIT) * 'MT'=Round to Max for totals with Tax (MAIN_MAX_DECIMALS_TOT) @@ -4770,18 +4645,15 @@ function showDimensionInBestUnit($dimension, $unit, $type, $outputlangs, $round { $dimension = $dimension * 1000000; $unit = $unit - 6; - } - elseif (($forceunitoutput == 'no' && $dimension < 1 / 10 && $unit < 90) || (is_numeric($forceunitoutput) && $forceunitoutput == -3)) + } elseif (($forceunitoutput == 'no' && $dimension < 1 / 10 && $unit < 90) || (is_numeric($forceunitoutput) && $forceunitoutput == -3)) { $dimension = $dimension * 1000; $unit = $unit - 3; - } - elseif (($forceunitoutput == 'no' && $dimension > 100000000 && $unit < 90) || (is_numeric($forceunitoutput) && $forceunitoutput == 6)) + } elseif (($forceunitoutput == 'no' && $dimension > 100000000 && $unit < 90) || (is_numeric($forceunitoutput) && $forceunitoutput == 6)) { $dimension = $dimension / 1000000; $unit = $unit + 6; - } - elseif (($forceunitoutput == 'no' && $dimension > 100000 && $unit < 90) || (is_numeric($forceunitoutput) && $forceunitoutput == 3)) + } elseif (($forceunitoutput == 'no' && $dimension > 100000 && $unit < 90) || (is_numeric($forceunitoutput) && $forceunitoutput == 3)) { $dimension = $dimension / 1000; $unit = $unit + 3; @@ -4847,9 +4719,7 @@ function get_localtax($vatrate, $local, $thirdparty_buyer = "", $thirdparty_sell if ($thirdparty_seller->id == $mysoc->id) { if (!$thirdparty_buyer->localtax1_assuj) return 0; - } - else - { + } else { if (!$thirdparty_seller->localtax1_assuj) return 0; } } @@ -4861,15 +4731,11 @@ function get_localtax($vatrate, $local, $thirdparty_buyer = "", $thirdparty_sell if ($thirdparty_seller->id == $mysoc->id) { if (!$thirdparty_buyer->localtax2_assuj) return 0; - } - else - { + } else { if (!$thirdparty_seller->localtax2_assuj) return 0; } } - } - else - { + } else { if ($local == 1 && !$thirdparty_seller->localtax1_assuj) return 0; if ($local == 2 && !$thirdparty_seller->localtax2_assuj) return 0; } @@ -4891,8 +4757,7 @@ function get_localtax($vatrate, $local, $thirdparty_buyer = "", $thirdparty_sell { return $thirdparty_seller->localtax1_value; } - } - else // i am the seller + } else // i am the seller { if (!isOnlyOneLocalTax($local)) // TODO If seller is me, why not always returning this, even if there is only one locatax vat. { @@ -4909,15 +4774,12 @@ function get_localtax($vatrate, $local, $thirdparty_buyer = "", $thirdparty_sell { return $thirdparty_seller->localtax2_value; } - } - else // i am the seller + } else // i am the seller { if (in_array($mysoc->country_code, array('ES'))) { return $thirdparty_buyer->localtax2_value; - } - else - { + } else { return $conf->global->MAIN_INFO_VALUE_LOCALTAX2; } } @@ -4962,9 +4824,7 @@ function isOnlyOneLocalTax($local) if (count($valors) > 1) { return false; - } - else - { + } else { return true; } } @@ -5018,8 +4878,7 @@ function getTaxesFromId($vatrate, $buyer = null, $seller = null, $firstparamisid $sql = "SELECT t.rowid, t.code, t.taux as rate, t.recuperableonly as npr, t.accountancy_code_sell, t.accountancy_code_buy"; $sql .= " FROM ".MAIN_DB_PREFIX."c_tva as t"; if ($firstparamisid) $sql .= " WHERE t.rowid = ".(int) $vatrate; - else - { + else { $vatratecleaned = $vatrate; $vatratecode = ''; if (preg_match('/^(.*)\s*\((.*)\)$/', $vatrate, $reg)) // If vat is "xx (yy)" @@ -5042,8 +4901,7 @@ function getTaxesFromId($vatrate, $buyer = null, $seller = null, $firstparamisid $obj = $db->fetch_object($resql); if ($obj) return array('rowid'=>$obj->rowid, 'code'=>$obj->code, 'rate'=>$obj->rate, 'npr'=>$obj->npr, 'accountancy_code_sell'=>$obj->accountancy_code_sell, 'accountancy_code_buy'=>$obj->accountancy_code_buy); else return array(); - } - else dol_print_error($db); + } else dol_print_error($db); return array(); } @@ -5074,8 +4932,7 @@ function getLocalTaxesFromRate($vatrate, $local, $buyer, $seller, $firstparamisi $sql = "SELECT t.taux as rate, t.code, t.localtax1, t.localtax1_type, t.localtax2, t.localtax2_type, t.accountancy_code_sell, t.accountancy_code_buy"; $sql .= " FROM ".MAIN_DB_PREFIX."c_tva as t"; if ($firstparamisid) $sql .= " WHERE t.rowid = ".(int) $vatrate; - else - { + else { $vatratecleaned = $vatrate; $vatratecode = ''; $reg = array(); @@ -5102,13 +4959,10 @@ function getLocalTaxesFromRate($vatrate, $local, $buyer, $seller, $firstparamisi if ($local == 1) { return array($obj->localtax1_type, get_localtax($vateratestring, $local, $buyer, $seller), $obj->accountancy_code_sell, $obj->accountancy_code_buy); - } - elseif ($local == 2) + } elseif ($local == 2) { return array($obj->localtax2_type, get_localtax($vateratestring, $local, $buyer, $seller), $obj->accountancy_code_sell, $obj->accountancy_code_buy); - } - else - { + } else { return array($obj->localtax1_type, get_localtax($vateratestring, 1, $buyer, $seller), $obj->localtax2_type, get_localtax($vateratestring, 2, $buyer, $seller), $obj->accountancy_code_sell, $obj->accountancy_code_buy); } } @@ -5148,16 +5002,12 @@ function get_product_vat_for_country($idprod, $thirdparty_seller, $idprodfournpr $product->get_buyprice($idprodfournprice, 0, 0, 0); $ret = $product->vatrate_supplier; if ($product->default_vat_code) $ret .= ' ('.$product->default_vat_code.')'; - } - else - { + } else { $ret = $product->tva_tx; // Default vat of product we defined if ($product->default_vat_code) $ret .= ' ('.$product->default_vat_code.')'; } $found = 1; - } - else - { + } else { // TODO Read default product vat according to countrycode and product. Vat for couple countrycode/product is a feature not implemeted yet. // May be usefull/required if hidden option SERVICE_ARE_ECOMMERCE_200238EC is on } @@ -5184,10 +5034,8 @@ function get_product_vat_for_country($idprod, $thirdparty_seller, $idprodfournpr if ($obj->default_vat_code) $ret .= ' ('.$obj->default_vat_code.')'; } $db->free($sql); - } - else dol_print_error($db); - } - else $ret = $conf->global->MAIN_VAT_DEFAULT_IF_AUTODETECT_FAILS; // Forced value if autodetect fails + } else dol_print_error($db); + } else $ret = $conf->global->MAIN_VAT_DEFAULT_IF_AUTODETECT_FAILS; // Forced value if autodetect fails } dol_syslog("get_product_vat_for_country: ret=".$ret); @@ -5227,9 +5075,7 @@ function get_product_localtax_for_country($idprod, $local, $thirdparty_seller) elseif ($local==2) $ret=$product->localtax2_tx; $found=1; */ - } - else - { + } else { // TODO Read default product vat according to countrycode and product } } @@ -5252,8 +5098,7 @@ function get_product_localtax_for_country($idprod, $local, $thirdparty_seller) if ($local == 1) $ret = $obj->localtax1; elseif ($local == 2) $ret = $obj->localtax2; } - } - else dol_print_error($db); + } else dol_print_error($db); } dol_syslog("get_product_localtax_for_country: ret=".$ret); @@ -5333,9 +5178,7 @@ function get_default_tva(Societe $thirdparty_seller, Societe $thirdparty_buyer, { //print 'VATRULE 3'; return 0; - } - else - { + } else { //print 'VATRULE 4'; return get_product_vat_for_country($idprod, $thirdparty_seller, $idprodfournprice); } @@ -5375,8 +5218,7 @@ function get_default_npr(Societe $thirdparty_seller, Societe $thirdparty_buyer, $prodprice = new ProductFournisseur($db); $prodprice->fetch_product_fournisseur_price($idprodfournprice); return $prodprice->fourn_tva_npr; - } - elseif ($idprod > 0) + } elseif ($idprod > 0) { if (!class_exists('Product')) { require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php'; @@ -5414,15 +5256,12 @@ function get_default_localtax($thirdparty_seller, $thirdparty_buyer, $local, $id if ($mysoc->country_code == 'ES') { if (is_numeric($thirdparty_buyer->localtax1_assuj) && !$thirdparty_buyer->localtax1_assuj) return 0; - } - else - { + } else { // Si vendeur non assujeti a Localtax1, localtax1 par default=0 if (is_numeric($thirdparty_seller->localtax1_assuj) && !$thirdparty_seller->localtax1_assuj) return 0; if (!is_numeric($thirdparty_seller->localtax1_assuj) && $thirdparty_seller->localtax1_assuj == 'localtax1off') return 0; } - } - elseif ($local == 2) //I Localtax 2 + } elseif ($local == 2) //I Localtax 2 { // Si vendeur non assujeti a Localtax2, localtax2 par default=0 if (is_numeric($thirdparty_seller->localtax2_assuj) && !$thirdparty_seller->localtax2_assuj) return 0; @@ -5457,8 +5296,7 @@ function yn($yesno, $case = 1, $color = 0) if ($case == 3) $result = ' '.$result; $classname = 'ok'; - } - elseif ($yesno == 0 || strtolower($yesno) == 'no' || strtolower($yesno) == 'false') + } elseif ($yesno == 0 || strtolower($yesno) == 'no' || strtolower($yesno) == 'false') { $result = $langs->trans("no"); if ($case == 1 || $case == 3) $result = $langs->trans("No"); @@ -5504,9 +5342,7 @@ function get_exdir($num, $level, $alpha, $withoutslash, $object, $modulepart) if ($level == 1) $path = substr($num, 0, 1); if ($level == 2) $path = substr($num, 1, 1).'/'.substr($num, 0, 1); if ($level == 3) $path = substr($num, 2, 1).'/'.substr($num, 1, 1).'/'.substr($num, 0, 1); - } - else - { + } else { // TODO // We will enhance here a common way of forging path for document storage // Here, object->id, object->ref and modulepart are required. @@ -5578,16 +5414,12 @@ function dol_mkdir($dir, $dataroot = '', $newmask = null) // Si le is_dir a renvoye une fausse info, alors on passe ici. dol_syslog("functions.lib::dol_mkdir: Fails to create directory '".$ccdir."' or directory already exists.", LOG_WARNING); $nberr++; - } - else - { + } else { dol_syslog("functions.lib::dol_mkdir: Directory '".$ccdir."' created", LOG_DEBUG); $nberr = 0; // On remet a zero car si on arrive ici, cela veut dire que les echecs precedents peuvent etre ignore $nbcreated++; } - } - else - { + } else { $nberr = 0; // On remet a zero car si on arrive ici, cela veut dire que les echecs precedents peuvent etre ignores } } @@ -5727,29 +5559,23 @@ function dolGetFirstLineOfText($text, $nboflines = 1, $charset = 'UTF-8') { $firstline = preg_replace('/]*>.*$/s', '', $text); // The s pattern modifier means the . can match newline characters $firstline = preg_replace('/]*>.*$/s', '', $firstline); // The s pattern modifier means the . can match newline characters - } - else - { + } else { $firstline = preg_replace('/[\n\r].*/', '', $text); } return $firstline.((strlen($firstline) != strlen($text)) ? '...' : ''); - } - else - { + } else { $ishtml = 0; if (dol_textishtml($text)) { $text = preg_replace('/\n/', '', $text); $ishtml = 1; $repTable = array("\t" => " ", "\n" => " ", "\r" => " ", "\0" => " ", "\x0B" => " "); - } - else - { + } else { $repTable = array("\t" => " ", "\n" => "
    ", "\r" => " ", "\0" => " ", "\x0B" => " "); } $text = strtr($text, $repTable); - if ($charset == 'UTF-8') { $pattern = '/(]*>)/Uu'; } // /U is to have UNGREEDY regex to limit to one html tag. /u is for UTF8 support + if ($charset == 'UTF-8') { $pattern = '/(]*>)/Uu'; } // /U is to have UNGREEDY regex to limit to one html tag. /u is for UTF8 support else $pattern = '/(]*>)/U'; // /U is to have UNGREEDY regex to limit to one html tag. $a = preg_split($pattern, $text, -1, PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_NO_EMPTY); @@ -5769,7 +5595,8 @@ function dolGetFirstLineOfText($text, $nboflines = 1, $charset = 'UTF-8') /** - * Replace CRLF in string with a HTML BR tag + * Replace CRLF in string with a HTML BR tag. + * WARNING: The content after operation contains some HTML tags (the
    ) so be sure to also have encode the special chars of stringtoencode into HTML before. * * @param string $stringtoencode String to encode * @param int $nl2brmode 0=Adding br before \n, 1=Replacing \n by br @@ -5815,9 +5642,7 @@ function dol_htmlentitiesbr($stringtoencode, $nl2brmode = 0, $pagecodefrom = 'UT $newstring = strtr($newstring, array('&'=>'__and__', '<'=>'__lt__', '>'=>'__gt__', '"'=>'__dquot__')); $newstring = dol_htmlentities($newstring, ENT_COMPAT, $pagecodefrom); // Make entity encoding $newstring = strtr($newstring, array('__and__'=>'&', '__lt__'=>'<', '__gt__'=>'>', '__dquot__'=>'"')); - } - else - { + } else { if ($removelasteolbr) $newstring = preg_replace('/(\r\n|\r|\n)$/i', '', $newstring); // Remove last \n (may remove several) $newstring = dol_nl2br(dol_htmlentities($newstring, ENT_COMPAT, $pagecodefrom), $nl2brmode); } @@ -5906,9 +5731,7 @@ function dol_string_is_good_iso($s, $clean = 0) { $ordchar = ord($s[$scursor]); //print $scursor.'-'.$ordchar.'
    '; - if ($ordchar < 32 && $ordchar != 13 && $ordchar != 10) { $ok = 0; break; } - elseif ($ordchar > 126 && $ordchar < 160) { $ok = 0; break; } - elseif ($clean) { + if ($ordchar < 32 && $ordchar != 13 && $ordchar != 10) { $ok = 0; break; } elseif ($ordchar > 126 && $ordchar < 160) { $ok = 0; break; } elseif ($clean) { $out .= $s[$scursor]; } } @@ -5949,7 +5772,7 @@ function dol_nboflines_bis($text, $maxlinesize = 0, $charset = 'UTF-8') if (dol_textishtml($text)) $repTable = array("\t" => " ", "\n" => " ", "\r" => " ", "\0" => " ", "\x0B" => " "); $text = strtr($text, $repTable); - if ($charset == 'UTF-8') { $pattern = '/(]*>)/Uu'; } // /U is to have UNGREEDY regex to limit to one html tag. /u is for UTF8 support + if ($charset == 'UTF-8') { $pattern = '/(]*>)/Uu'; } // /U is to have UNGREEDY regex to limit to one html tag. /u is for UTF8 support else $pattern = '/(]*>)/U'; // /U is to have UNGREEDY regex to limit to one html tag. $a = preg_split($pattern, $text, -1, PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_NO_EMPTY); @@ -5993,9 +5816,7 @@ function dol_textishtml($msg, $option = 0) elseif (preg_match('/<\/textarea/i', $msg)) return true; elseif (preg_match('/
    instead of \n if html content detected, true=Use
    instead of \n if html content detected + * @param bool $forxml true=Use
    instead of
    if we have to add a br tag * @param bool $invert invert order of description lines (we often use config MAIN_CHANGE_ORDER_CONCAT_DESCRIPTION in this parameter) * @return string Text 1 + new line + Text2 * @see dol_textishtml() @@ -6038,9 +5859,9 @@ function dol_concatdesc($text1, $text2, $forxml = false, $invert = false) } $ret = ''; - $ret .= (!dol_textishtml($text1) && dol_textishtml($text2)) ?dol_nl2br($text1, 0, $forxml) : $text1; + $ret .= (!dol_textishtml($text1) && dol_textishtml($text2)) ? dol_nl2br(dol_escape_htmltag($text1, 0, 1, '', 1), 0, $forxml) : $text1; $ret .= (!empty($text1) && !empty($text2)) ? ((dol_textishtml($text1) || dol_textishtml($text2)) ? ($forxml ? "
    \n" : "
    \n") : "\n") : ""; - $ret .= (dol_textishtml($text1) && !dol_textishtml($text2)) ?dol_nl2br($text2, 0, $forxml) : $text2; + $ret .= (dol_textishtml($text1) && !dol_textishtml($text2)) ? dol_nl2br(dol_escape_htmltag($text2, 0, 1, '', 1), 0, $forxml) : $text2; return $ret; } @@ -6188,9 +6009,7 @@ function getCommonSubstitutionArray($outputlangs, $onlykey = 0, $exclude = null, $substitutionarray['__SHIPPINGTRACKNUM__'] = 'Shipping tacking number'; $substitutionarray['__SHIPPINGTRACKNUMURL__'] = 'Shipping tracking url'; } - } - else - { + } else { $substitutionarray['__ID__'] = $object->id; $substitutionarray['__REF__'] = $object->ref; $substitutionarray['__REF_CLIENT__'] = (isset($object->ref_client) ? $object->ref_client : (isset($object->ref_customer) ? $object->ref_customer : null)); @@ -6262,8 +6081,7 @@ function getCommonSubstitutionArray($outputlangs, $onlykey = 0, $exclude = null, $substitutionarray['__THIRDPARTY_TVAINTRA__'] = (is_object($object) ? $object->tva_intra : ''); $substitutionarray['__THIRDPARTY_NOTE_PUBLIC__'] = (is_object($object) ?dol_htmlentitiesbr($object->note_public) : ''); $substitutionarray['__THIRDPARTY_NOTE_PRIVATE__'] = (is_object($object) ?dol_htmlentitiesbr($object->note_private) : ''); - } - elseif (is_object($object->thirdparty) && $object->thirdparty->id > 0) + } elseif (is_object($object->thirdparty) && $object->thirdparty->id > 0) { $substitutionarray['__THIRDPARTY_ID__'] = (is_object($object->thirdparty) ? $object->thirdparty->id : ''); $substitutionarray['__THIRDPARTY_NAME__'] = (is_object($object->thirdparty) ? $object->thirdparty->name : ''); @@ -6338,6 +6156,17 @@ function getCommonSubstitutionArray($outputlangs, $onlykey = 0, $exclude = null, { foreach ($extrafields->attributes[$object->table_element]['label'] as $key => $label) { $substitutionarray['__EXTRAFIELD_'.strtoupper($key).'__'] = $object->array_options['options_'.$key]; + if ($extrafields->attribute_type[$key] == 'date') { + $substitutionarray['__EXTRAFIELD_' . strtoupper($key) . '__'] = dol_print_date($object->array_options['options_' . $key], 'day'); + $substitutionarray['__EXTRAFIELD_' . strtoupper($key) . '_LOCALE__'] = dol_print_date($object->array_options['options_' . $key], 'day', 'tzserver', $outputlangs); + $substitutionarray['__EXTRAFIELD_' . strtoupper($key) . '_RFC__'] = dol_print_date($object->array_options['options_' . $key], 'dayrfc'); + } elseif ($extrafields->attribute_type[$key] == 'datetime') { + $datetime = $object->array_options['options_'.$key]; + $substitutionarray['__EXTRAFIELD_' . strtoupper($key) . '__'] = ($datetime != "0000-00-00 00:00:00" ? dol_print_date($datetime, 'dayhour') : ''); + $substitutionarray['__EXTRAFIELD_' . strtoupper($key) . '_LOCALE__'] = ($datetime != "0000-00-00 00:00:00" ? dol_print_date($datetime, 'dayhour', 'tzserver', $outputlangs) : ''); + $substitutionarray['__EXTRAFIELD_' . strtoupper($key) . '_DAY_LOCALE__'] = ($datetime != "0000-00-00 00:00:00" ? dol_print_date($datetime, 'day', 'tzserver', $outputlangs) : ''); + $substitutionarray['__EXTRAFIELD_' . strtoupper($key) . '_RFC__'] = ($datetime != "0000-00-00 00:00:00" ? dol_print_date($datetime, 'dayhourrfc') : ''); + } } } } @@ -6348,9 +6177,7 @@ function getCommonSubstitutionArray($outputlangs, $onlykey = 0, $exclude = null, if (empty($substitutionarray['__REF__'])) { $paymenturl = ''; - } - else - { + } else { // Set the online payment url link into __ONLINE_PAYMENT_URL__ key require_once DOL_DOCUMENT_ROOT.'/core/lib/payments.lib.php'; $outputlangs->loadLangs(array('paypal', 'other')); @@ -6370,18 +6197,15 @@ function getCommonSubstitutionArray($outputlangs, $onlykey = 0, $exclude = null, if (!empty($conf->global->PROPOSAL_ALLOW_EXTERNAL_DOWNLOAD) && is_object($object) && $object->element == 'propal') { $substitutionarray['__DIRECTDOWNLOAD_URL_PROPOSAL__'] = $object->getLastMainDocLink($object->element); - } - else $substitutionarray['__DIRECTDOWNLOAD_URL_PROPOSAL__'] = ''; + } else $substitutionarray['__DIRECTDOWNLOAD_URL_PROPOSAL__'] = ''; if (!empty($conf->global->ORDER_ALLOW_EXTERNAL_DOWNLOAD) && is_object($object) && $object->element == 'commande') { $substitutionarray['__DIRECTDOWNLOAD_URL_ORDER__'] = $object->getLastMainDocLink($object->element); - } - else $substitutionarray['__DIRECTDOWNLOAD_URL_ORDER__'] = ''; + } else $substitutionarray['__DIRECTDOWNLOAD_URL_ORDER__'] = ''; if (!empty($conf->global->INVOICE_ALLOW_EXTERNAL_DOWNLOAD) && is_object($object) && $object->element == 'facture') { $substitutionarray['__DIRECTDOWNLOAD_URL_INVOICE__'] = $object->getLastMainDocLink($object->element); - } - else $substitutionarray['__DIRECTDOWNLOAD_URL_INVOICE__'] = ''; + } else $substitutionarray['__DIRECTDOWNLOAD_URL_INVOICE__'] = ''; if (is_object($object) && $object->element == 'propal') $substitutionarray['__URL_PROPOSAL__'] = DOL_MAIN_URL_ROOT."/comm/propal/card.php?id=".$object->id; if (is_object($object) && $object->element == 'commande') $substitutionarray['__URL_ORDER__'] = DOL_MAIN_URL_ROOT."/commande/card.php?id=".$object->id; @@ -6510,7 +6334,7 @@ function make_substitutions($text, $substitutionarray, $outputlangs = null) if (dol_textishtml($text, 1)) $msgishtml = 1; $keyfound = $reg[1]; - if (preg_match('/(_pass|password|secret|_key|key$)/i', $keyfound)) $newval = '*****forbidden*****'; + if (preg_match('/(_pass|_pw|password|secret|_key|key$)/i', $keyfound)) $newval = '*****forbidden*****'; else $newval = empty($conf->global->$keyfound) ? '' : $conf->global->$keyfound; $text = preg_replace('/__\['.preg_quote($keyfound, '/').'\]__/', $msgishtml ?dol_htmlentitiesbr($newval) : $newval, $text); } @@ -6656,17 +6480,14 @@ function dolGetFirstLastname($firstname, $lastname, $nameorder = -1) $ret .= $firstname; if ($firstname && $lastname) $ret .= ' '; $ret .= $lastname; - } - elseif ($nameorder == 2 || $nameorder == 3) + } elseif ($nameorder == 2 || $nameorder == 3) { $ret .= $firstname; if (empty($ret) && $nameorder == 3) { $ret .= $lastname; } - } - else - { + } else { $ret .= $lastname; if ($firstname && $lastname) $ret .= ' '; $ret .= $firstname; @@ -6691,8 +6512,7 @@ function setEventMessage($mesgs, $style = 'mesgs') if (!is_array($mesgs)) // If mesgs is a string { if ($mesgs) $_SESSION['dol_events'][$style][] = $mesgs; - } - else // If mesgs is an array + } else // If mesgs is an array { foreach ($mesgs as $mesg) { @@ -6717,9 +6537,7 @@ function setEventMessages($mesg, $mesgs, $style = 'mesgs', $messagekey = '') if (empty($mesg) && empty($mesgs)) { dol_syslog("Try to add a message in stack with empty message", LOG_WARNING); - } - else - { + } else { if ($messagekey) { // Complete message with a js link to set a cookie "DOLHIDEMESSAGE".$messagekey; @@ -6730,8 +6548,7 @@ function setEventMessages($mesg, $mesgs, $style = 'mesgs', $messagekey = '') { if (!in_array((string) $style, array('mesgs', 'warnings', 'errors'))) dol_print_error('', 'Bad parameter style='.$style.' for setEventMessages'); if (empty($mesgs)) setEventMessage($mesg, $style); - else - { + else { if (!empty($mesg) && !in_array($mesg, $mesgs)) setEventMessage($mesg, $style); // Add message string if not already into array setEventMessage($mesgs, $style); } @@ -6838,9 +6655,7 @@ function get_htmloutput_mesg($mesgstring = '', $mesgarray = '', $style = 'ok', $ } }); '; - } - else - { + } else { $return = $out; } } @@ -6890,8 +6705,7 @@ function dol_htmloutput_mesg($mesgstring = '', $mesgarray = array(), $style = 'o if ($val && preg_match('/class="error"/i', $val)) { $iserror++; break; } if ($val && preg_match('/class="warning"/i', $val)) { $iswarning++; break; } } - } - elseif ($mesgstring && preg_match('/class="error"/i', $mesgstring)) $iserror++; + } elseif ($mesgstring && preg_match('/class="error"/i', $mesgstring)) $iserror++; elseif ($mesgstring && preg_match('/class="warning"/i', $mesgstring)) $iswarning++; if ($style == 'error') $iserror++; if ($style == 'warning') $iswarning++; @@ -6914,17 +6728,14 @@ function dol_htmloutput_mesg($mesgstring = '', $mesgarray = array(), $style = 'o $tmpmesgstring = preg_replace('/
    /', '', $tmpmesgstring); $tmpmesgstring = preg_replace('/<\/div>/', '', $tmpmesgstring); $newmesgarray[] = $tmpmesgstring; - } - else - { + } else { dol_syslog("Error call of dol_htmloutput_mesg with an array with a value that is not a string", LOG_WARNING); } } $mesgarray = $newmesgarray; } print get_htmloutput_mesg($mesgstring, $mesgarray, ($iserror ? 'error' : 'warning'), $keepembedded); - } - else print get_htmloutput_mesg($mesgstring, $mesgarray, 'ok', $keepembedded); + } else print get_htmloutput_mesg($mesgstring, $mesgarray, 'ok', $keepembedded); } /** @@ -6972,9 +6783,7 @@ function dol_sort_array(&$array, $index, $order = 'asc', $natsort = 0, $case_sen if (is_object($array[$key])) { $temp[$key] = $array[$key]->$index; - } - else - { + } else { $temp[$key] = $array[$key][$index]; } } @@ -7109,9 +6918,7 @@ function dol_getIdFromCode($db, $key, $tablename, $fieldkey = 'code', $fieldid = else $cache_codes[$tablename][$key][$fieldid] = ''; $db->free($resql); return $cache_codes[$tablename][$key][$fieldid]; - } - else - { + } else { return -1; } } @@ -7164,9 +6971,7 @@ function dol_eval($s, $returnvalue = 0, $hideerrors = 1) { if ($hideerrors) return @eval('return '.$s.';'); else return eval('return '.$s.';'); - } - else - { + } else { if ($hideerrors) @eval($s); else eval($s); } @@ -7210,8 +7015,7 @@ function picto_from_langcode($codelang, $moreatt = '') ); if (isset($langtocountryflag[$codelang])) $flagImage = $langtocountryflag[$codelang]; - else - { + else { $tmparray = explode('_', $codelang); $flagImage = empty($tmparray[1]) ? $tmparray[0] : $tmparray[1]; } @@ -7429,9 +7233,7 @@ function getLanguageCodeFromCountryCode($countrycode) return strtolower($locale_language).'_'.strtoupper($locale_region); } } - } - else - { + } else { dol_syslog("Warning Exention php-intl is not available", LOG_WARNING); } @@ -7491,16 +7293,14 @@ function complete_head_from_modules($conf, $langs, $object, &$head, &$h, $type, $substitutionarray = array(); complete_substitutions_array($substitutionarray, $langs, $object, array('needforkey'=>$values[2])); $label = make_substitutions($reg[1], $substitutionarray); - } - else $label = $langs->trans($values[2]); + } else $label = $langs->trans($values[2]); $head[$h][0] = dol_buildpath(preg_replace('/__ID__/i', ((is_object($object) && !empty($object->id)) ? $object->id : ''), $values[5]), 1); $head[$h][1] = $label; $head[$h][2] = str_replace('+', '', $values[1]); $h++; } - } - elseif (count($values) == 5) // deprecated + } elseif (count($values) == 5) // deprecated { dol_syslog('Passing 5 values in tabs module_parts is deprecated. Please update to 6 with permissions.', LOG_WARNING); @@ -7511,16 +7311,14 @@ function complete_head_from_modules($conf, $langs, $object, &$head, &$h, $type, $substitutionarray = array(); complete_substitutions_array($substitutionarray, $langs, $object, array('needforkey'=>$values[2])); $label = make_substitutions($reg[1], $substitutionarray); - } - else $label = $langs->trans($values[2]); + } else $label = $langs->trans($values[2]); $head[$h][0] = dol_buildpath(preg_replace('/__ID__/i', ((is_object($object) && !empty($object->id)) ? $object->id : ''), $values[4]), 1); $head[$h][1] = $label; $head[$h][2] = str_replace('+', '', $values[1]); $h++; } - } - elseif ($mode == 'remove' && preg_match('/^\-/', $values[1])) + } elseif ($mode == 'remove' && preg_match('/^\-/', $values[1])) { if ($values[0] != $type) continue; $tabname = str_replace('-', '', $values[1]); @@ -7625,8 +7423,7 @@ function printCommonFooter($zone = 'private') } if (!$foundintru) $qualified = 1; //var_dump($defkey.'-'.$qualified); - } - else $qualified = 1; + } else $qualified = 1; if ($qualified) { @@ -7657,8 +7454,7 @@ function printCommonFooter($zone = 'private') } if (!$foundintru) $qualified = 1; //var_dump($defkey.'-'.$qualified); - } - else $qualified = 1; + } else $qualified = 1; if ($qualified) { @@ -7735,8 +7531,7 @@ function printCommonFooter($zone = 'private') $debugbar['time']->stopMeasure('pageaftermaster'); print ''."\n"; print $debugbar->getRenderer()->render(); - } - elseif (count($conf->logbuffer)) // If there is some logs in buffer to show + } elseif (count($conf->logbuffer)) // If there is some logs in buffer to show { print "\n"; print "'."\n"; + print "\n".''."\n"; print preg_replace(array('/^.*]*>/ims', '/<\/body>.*$/ims'), array('', ''), $tmpoutput); if (!$res) @@ -533,25 +532,26 @@ function includeContainer($containerref) /** * Return HTML content to add structured data for an article, news or Blog Post. + * Use the json-ld format. * - * @param string $type 'blogpost', 'product', 'software'... + * @param string $type 'blogpost', 'product', 'software', 'organization', ... * @param array $data Array of data parameters for structured data * @return string HTML content */ 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 $conf, $db, $hookmanager, $langs, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs; // Very important. Required to have var available when running inluded containers. if ($type == 'software') { - $ret = ''."\n"; + $ret = ''."\n"; $ret .= ''."\n"; - } - elseif ($type == 'blogpost') + } elseif ($type == 'organization') + { + $companyname = $mysoc->name; + $url = $mysoc->url; + + $ret = ''."\n"; + $ret .= ''."\n"; + } elseif ($type == 'blogpost') { if (!empty($websitepage->author_alias)) { @@ -581,7 +617,7 @@ function getStructuredData($type, $data = array()) $pageurl = str_replace('__WEBSITE_KEY__', $website->ref, $pageurl); $title = str_replace('__WEBSITE_KEY__', $website->ref, $title); - $image = str_replace('__WEBSITE_KEY__', $website->ref, $image); + $image = 'medias/'.str_replace('__WEBSITE_KEY__', $website->ref, $image); $companyname = str_replace('__WEBSITE_KEY__', $website->ref, $companyname); $description = str_replace('__WEBSITE_KEY__', $website->ref, $description); @@ -598,6 +634,7 @@ function getStructuredData($type, $data = array()) "image": [ "'.dol_escape_json($image).'" ], + "dateCreated": "'.dol_print_date($websitepage->date_creation, 'dayhourrfc').'", "datePublished": "'.dol_print_date($websitepage->date_creation, 'dayhourrfc').'", "dateModified": "'.dol_print_date($websitepage->date_modification, 'dayhourrfc').'", "author": { @@ -609,17 +646,27 @@ function getStructuredData($type, $data = array()) "name": "'.dol_escape_json($companyname).'", "logo": { "@type": "ImageObject", - "url": "/viewimage.php?modulepart=mycompany&file=logos%2F'.urlencode($mysoc->logo).'" + "url": "/wrapper.php?modulepart=mycompany&file=logos%2F'.urlencode($mysoc->logo).'" } - }, - "description": "'.dol_escape_json($description).'" - }'."\n"; + },'."\n"; + if ($websitepage->keywords) { + $ret .= '"keywords": ['; + $i = 0; + $arrayofkeywords = explode(',', $websitepage->keywords); + foreach ($arrayofkeywords as $keyword) { + $ret.= '"'.dol_escape_json($keyword).'"'; + $i++; + if ($i < count($arrayofkeywords)) $ret .= ', '; + } + $ret .= '],'."\n"; + } + $ret .= '"description": "'.dol_escape_json($description).'"'; + $ret .= "\n".'}'."\n"; $ret .= ''."\n"; } - } - elseif ($type == 'product') + } elseif ($type == 'product') { - $ret = ''."\n"; + $ret = ''."\n"; $ret .= ' $langs->trans("NoPriceDefinedForThisSupplier") // translation of an error saved into var 'warning' (for example shown we select a disabled option into combo) ); $alsoproductwithnosupplierprice = 0; - } - else - { + } else { $ajaxoptions = array( 'update' => array('remise_percent' => 'discount') // html id tags that will be edited with each ajax json response key ); @@ -448,9 +429,7 @@ if ((!empty($conf->service->enabled) || ($object->element == 'contrat')) && $dat print $form->selectDate($date_start, "date_start", $usehm, $usehm, 1, "addproduct"); print '   '.$langs->trans("DateEndPlanned").' '; print $form->selectDate($date_end, "date_end", $usehm, $usehm, 1, "addproduct"); - } - else - { + } else { print $langs->trans('ServiceLimitedDuration').' '.$langs->trans('From').' '; print $form->selectDate($date_start, 'date_start', empty($conf->global->MAIN_USE_HOURMIN_IN_DATE_RANGE) ? 0 : 1, empty($conf->global->MAIN_USE_HOURMIN_IN_DATE_RANGE) ? 0 : 1, 1, "addproduct", 1, 0); print ' '.$langs->trans('to').' '; @@ -813,7 +792,7 @@ if (!empty($usemargins) && $user->rights->margins->creer) jQuery("#prod_entry_mode_free").prop('checked',true).change(); jQuery("#prod_entry_mode_predef").prop('checked',false).change(); jQuery("#search_idprod, #idprod, #search_idprodfournprice, #buying_price").val(''); - jQuery("#price_ht, #multicurrency_price_ht, #price_ttc, #price_ttc, #fourn_ref, #tva_tx, #buying_price, #title_vat, #title_up_ht, #title_up_ht_currency, #title_up_ttc, #title_up_ttc_currency").show(); + jQuery("#price_ht, #multicurrency_price_ht, #price_ttc, #price_ttc, #fourn_ref, #tva_tx, #buying_price, #title_fourn_ref, #title_vat, #title_up_ht, #title_up_ht_currency, #title_up_ttc, #title_up_ttc_currency").show(); jQuery("#np_marginRate, #np_markRate, .np_marginRate, .np_markRate, #units, #title_units").show(); jQuery("#fournprice_predef").hide(); } @@ -825,11 +804,13 @@ if (!empty($usemargins) && $user->rights->margins->creer) global->MAIN_DISABLE_EDIT_PREDEF_PRICEHT)) { ?> jQuery("#price_ht").val('').show(); jQuery("#multicurrency_price_ht").val('').show(); + jQuery("#title_up_ht, #title_up_ht_currency").show(); jQuery("#price_ht").val('').hide(); jQuery("#multicurrency_price_ht").val('').hide(); + jQuery("#title_up_ht, #title_up_ht_currency").hide(); - jQuery("#price_ttc, #fourn_ref, #tva_tx, #title_vat, #title_up_ht_currency, #title_up_ttc, #title_up_ttc_currency").hide(); + jQuery("#price_ttc, #fourn_ref, #tva_tx, #title_fourn_ref, #title_vat, #title_up_ttc, #title_up_ttc_currency").hide(); jQuery("#np_marginRate, #np_markRate, .np_marginRate, .np_markRate, #units, #title_units").hide(); jQuery("#buying_price").show(); jQuery('#trlinefordates, .divlinefordates').show(); diff --git a/htdocs/core/tpl/objectline_edit.tpl.php b/htdocs/core/tpl/objectline_edit.tpl.php index d316afb6966..ba63288b58f 100644 --- a/htdocs/core/tpl/objectline_edit.tpl.php +++ b/htdocs/core/tpl/objectline_edit.tpl.php @@ -231,18 +231,15 @@ $coldisplay++; // if credit note, dont allow to modify margin if ($line->subprice < 0) echo ''.$margin_rate.'%'; - else - echo '%'; + else echo '%'; $coldisplay++; - } - elseif (!empty($conf->global->DISPLAY_MARK_RATES)) + } elseif (!empty($conf->global->DISPLAY_MARK_RATES)) { $mark_rate = (isset($_POST["np_markRate"]) ?GETPOST("np_markRate", 'alpha', 2) : price($line->marque_tx)); // if credit note, dont allow to modify margin if ($line->subprice < 0) echo ''.$mark_rate.'%'; - else - echo '%'; + else echo '%'; $coldisplay++; } } diff --git a/htdocs/core/tpl/objectline_title.tpl.php b/htdocs/core/tpl/objectline_title.tpl.php index bd5abc498d2..f04bfc50da8 100644 --- a/htdocs/core/tpl/objectline_title.tpl.php +++ b/htdocs/core/tpl/objectline_title.tpl.php @@ -83,7 +83,7 @@ print ''.$langs->trans('ReductionShort').'situation_cycle_ref) { print ''.$langs->trans('Progress').''; - print ''.$langs->trans('TotalHT100Short').''; + print ''.$form->textwithpicto($langs->trans('TotalHT100Short'), $langs->trans('UnitPriceXQtyLessDiscount')).''; } if ($usemargins && !empty($conf->margin->enabled) && empty($user->socid)) diff --git a/htdocs/core/tpl/objectline_view.tpl.php b/htdocs/core/tpl/objectline_view.tpl.php index d61810c5178..1e90b04fba7 100644 --- a/htdocs/core/tpl/objectline_view.tpl.php +++ b/htdocs/core/tpl/objectline_view.tpl.php @@ -45,7 +45,7 @@ if (empty($object) || !is_object($object)) exit; } - +global $mysoc; global $forceall, $senderissupplier, $inputalsopricewithtax, $outputalsopricetotalwithtax; $usemargins = 0; @@ -89,8 +89,7 @@ if (($line->info_bits & 2) == 2) { $discount = new DiscountAbsolute($this->db); $discount->fetch($line->fk_remise_except); print ($txt ? ' - ' : '').$langs->transnoentities("DiscountFromCreditNote", $discount->getNomUrl(0)); - } - elseif ($line->description == '(DEPOSIT)' && $line->fk_remise_except > 0) + } elseif ($line->description == '(DEPOSIT)' && $line->fk_remise_except > 0) { $discount = new DiscountAbsolute($this->db); $discount->fetch($line->fk_remise_except); @@ -98,35 +97,27 @@ if (($line->info_bits & 2) == 2) { // Add date of deposit if (!empty($conf->global->INVOICE_ADD_DEPOSIT_DATE)) print ' ('.dol_print_date($discount->datec).')'; - } - elseif ($line->description == '(EXCESS RECEIVED)' && $objp->fk_remise_except > 0) + } elseif ($line->description == '(EXCESS RECEIVED)' && $objp->fk_remise_except > 0) { $discount = new DiscountAbsolute($this->db); $discount->fetch($line->fk_remise_except); print ($txt ? ' - ' : '').$langs->transnoentities("DiscountFromExcessReceived", $discount->getNomUrl(0)); - } - elseif ($line->description == '(EXCESS PAID)' && $objp->fk_remise_except > 0) + } elseif ($line->description == '(EXCESS PAID)' && $objp->fk_remise_except > 0) { $discount = new DiscountAbsolute($this->db); $discount->fetch($line->fk_remise_except); print ($txt ? ' - ' : '').$langs->transnoentities("DiscountFromExcessPaid", $discount->getNomUrl(0)); - } - else - { + } else { print ($txt ? ' - ' : '').dol_htmlentitiesbr($line->description); } } -} -else -{ +} else { $format = $conf->global->MAIN_USE_HOURMIN_IN_DATE_RANGE ? 'dayhour' : 'day'; if ($line->fk_product > 0) { print $form->textwithtooltip($text, $description, 3, '', '', $i, 0, (!empty($line->fk_parent_line) ?img_picto('', 'rightarrow') : '')); - } - else - { + } else { $type = (!empty($line->product_type) ? $line->product_type : $line->fk_product_type); if ($type == 1) $text = img_object($langs->trans('Service'), 'service'); else $text = img_object($langs->trans('Product'), 'product'); @@ -139,8 +130,7 @@ else if (preg_match('/^\(DEPOSIT\)/', $line->description)) { $newdesc = preg_replace('/^\(DEPOSIT\)/', $langs->trans("Deposit"), $line->description); print $text.' '.dol_htmlentitiesbr($newdesc); - } - else { + } else { print $text.' '.dol_htmlentitiesbr($line->description); } } @@ -153,8 +143,7 @@ else if ($line->date_start_fill && $line->date_end_fill) print ' - '; if ($line->date_end_fill) print $langs->trans('AutoFillDateToShort').': '.yn($line->date_end_fill); if ($line->date_start_fill || $line->date_end_fill) print '
    '; - } - else { + } else { if ($line->date_start || $line->date_end) print '
    '.get_date_range($line->date_start, $line->date_end, $format).'
    '; //print get_date_range($line->date_start, $line->date_end, $format); } @@ -177,9 +166,7 @@ if ($user->rights->fournisseur->lire && $line->fk_fournprice > 0) if ($user->rights->produit->creer || $user->rights->service->creer) // change required right here { print $productfourn->getNomUrl(); - } - else - { + } else { print $productfourn->ref_supplier; } } @@ -282,13 +269,21 @@ if ($line->special_code == 3) { ?> $coldisplay++; if (empty($conf->global->MAIN_OPTIMIZEFORTEXTBROWSER)) { - print 'country_code).'='.price($line->total_ht); - print '
    '.$langs->transcountry("TotalVAT", ($senderissupplier ? $object->thirdparty->country_code : $mysoc->country_code)).'='.price($line->total_tva); - if (price2num($line->total_localtax1)) print '
    '.$langs->transcountry("TotalLT1", ($senderissupplier ? $object->thirdparty->country_code : $mysoc->country_code)).'='.price($line->total_localtax1); - if (price2num($line->total_localtax2)) print '
    '.$langs->transcountry("TotalLT2", ($senderissupplier ? $object->thirdparty->country_code : $mysoc->country_code)).'='.price($line->total_localtax2); - print '
    '.$langs->transcountry("TotalTTC", $mysoc->country_code).'='.price($line->total_ttc); - print '">'; + $tooltiponprice = $langs->transcountry("TotalHT", $mysoc->country_code).'='.price($line->total_ht); + $tooltiponprice .= '
    '.$langs->transcountry("TotalVAT", ($senderissupplier ? $object->thirdparty->country_code : $mysoc->country_code)).'='.price($line->total_tva); + if (!$senderissupplier && is_object($object->thirdparty)) { + if ($object->thirdparty->useLocalTax(1)) { + if (price2num($line->total_localtax1)) $tooltiponprice .= '
    '.$langs->transcountry("TotalLT1", ($senderissupplier ? $object->thirdparty->country_code : $mysoc->country_code)).'='.price($line->total_localtax1); + else $tooltiponprice .= '
    '.$langs->transcountry("TotalLT1", ($senderissupplier ? $object->thirdparty->country_code : $mysoc->country_code)).'='.$langs->trans("NotUsedForThisCustomer").''; + } + if ($object->thirdparty->useLocalTax(1)) { + if (price2num($line->total_localtax2)) $tooltiponprice .= '
    '.$langs->transcountry("TotalLT2", ($senderissupplier ? $object->thirdparty->country_code : $mysoc->country_code)).'='.price($line->total_localtax2); + else $tooltiponprice .= '
    '.$langs->transcountry("TotalLT2", ($senderissupplier ? $object->thirdparty->country_code : $mysoc->country_code)).'='.$langs->trans("NotUsedForThisCustomer").''; + } + } + $tooltiponprice .= '
    '.$langs->transcountry("TotalTTC", $mysoc->country_code).'='.price($line->total_ttc); + + print ''; } print price($line->total_ht); if (empty($conf->global->MAIN_OPTIMIZEFORTEXTBROWSER)) diff --git a/htdocs/core/tpl/passwordforgotten.tpl.php b/htdocs/core/tpl/passwordforgotten.tpl.php index ab12b48aa08..ad62ad43686 100644 --- a/htdocs/core/tpl/passwordforgotten.tpl.php +++ b/htdocs/core/tpl/passwordforgotten.tpl.php @@ -40,6 +40,7 @@ if (!empty($conf->dol_use_jmobile)) $conf->use_javascript_ajax = 1; $php_self = $_SERVER['PHP_SELF']; $php_self .= dol_escape_htmltag($_SERVER["QUERY_STRING"]) ? '?'.dol_escape_htmltag($_SERVER["QUERY_STRING"]) : ''; +$php_self = str_replace('action=validatenewpassword', '', $php_self); $titleofpage = $langs->trans('SendNewPassword'); @@ -119,8 +120,7 @@ if (!empty($morelogincontent)) { echo $option; } } - } - else { + } else { echo ''; echo $morelogincontent; } @@ -213,8 +213,7 @@ if (!empty($morelogincontent)) { echo $option."\n"; } } -} -elseif (!empty($moreloginextracontent)) { +} elseif (!empty($moreloginextracontent)) { echo ''; echo $moreloginextracontent; } diff --git a/htdocs/core/tpl/resource_view.tpl.php b/htdocs/core/tpl/resource_view.tpl.php index 2680a763a59..50eb0167f36 100644 --- a/htdocs/core/tpl/resource_view.tpl.php +++ b/htdocs/core/tpl/resource_view.tpl.php @@ -49,9 +49,7 @@ if ((array) $linked_resources && count($linked_resources) > 0) print '
    '.$form->selectyesno('mandatory', $linked_resource['mandatory'] ? 1 : 0, 1).'
    '; print '
    '; print ''; - } - else - { + } else { $class = ''; if ($linked_resource['rowid'] == GETPOST('lineid')) $class = 'highlight'; @@ -87,8 +85,7 @@ if ((array) $linked_resources && count($linked_resources) > 0) print ''; } } -} -else { +} else { print '
    '; print '
    '.$langs->trans('NoResourceLinked').'
    '; print '
    '; diff --git a/htdocs/core/triggers/interface_20_all_Logevents.class.php b/htdocs/core/triggers/interface_20_all_Logevents.class.php index fceb1552f0b..4f368f95473 100644 --- a/htdocs/core/triggers/interface_20_all_Logevents.class.php +++ b/htdocs/core/triggers/interface_20_all_Logevents.class.php @@ -106,8 +106,7 @@ class InterfaceLogevents extends DolibarrTriggers // Initialisation donnees (date,duree,texte,desc) $text = $langs->transnoentities("NewUserCreated", $object->login); $desc = $langs->transnoentities("NewUserCreated", $object->login); - } - elseif ($action == 'USER_MODIFY') + } elseif ($action == 'USER_MODIFY') { dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id); $langs->load("users"); @@ -115,8 +114,7 @@ class InterfaceLogevents extends DolibarrTriggers // Initialisation donnees (date,duree,texte,desc) $text = $langs->transnoentities("EventUserModified", $object->login); $desc = $langs->transnoentities("EventUserModified", $object->login); - } - elseif ($action == 'USER_NEW_PASSWORD') + } elseif ($action == 'USER_NEW_PASSWORD') { dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id); $langs->load("users"); @@ -124,8 +122,7 @@ class InterfaceLogevents extends DolibarrTriggers // Initialisation donnees (date,duree,texte,desc) $text = $langs->transnoentities("NewUserPassword", $object->login); $desc = $langs->transnoentities("NewUserPassword", $object->login); - } - elseif ($action == 'USER_ENABLEDISABLE') + } elseif ($action == 'USER_ENABLEDISABLE') { dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id); $langs->load("users"); @@ -140,8 +137,7 @@ class InterfaceLogevents extends DolibarrTriggers $text = $langs->transnoentities("UserDisabled", $object->login); $desc = $langs->transnoentities("UserDisabled", $object->login); } - } - elseif ($action == 'USER_DELETE') + } elseif ($action == 'USER_DELETE') { dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id); $langs->load("users"); @@ -158,16 +154,14 @@ class InterfaceLogevents extends DolibarrTriggers // Initialisation donnees (date,duree,texte,desc) $text = $langs->transnoentities("NewGroupCreated", $object->name); $desc = $langs->transnoentities("NewGroupCreated", $object->name); - } - elseif ($action == 'USERGROUP_MODIFY') + } elseif ($action == 'USERGROUP_MODIFY') { dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id); $langs->load("users"); // Initialisation donnees (date,duree,texte,desc) $text = $langs->transnoentities("GroupModified", $object->name); $desc = $langs->transnoentities("GroupModified", $object->name); - } - elseif ($action == 'USERGROUP_DELETE') + } elseif ($action == 'USERGROUP_DELETE') { dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id); $langs->load("users"); @@ -202,9 +196,7 @@ class InterfaceLogevents extends DolibarrTriggers if ($result > 0) { return 1; - } - else - { + } else { $error = "Failed to insert security event: ".$event->error; $this->errors[] = $error; $this->error = $error; diff --git a/htdocs/core/triggers/interface_50_modAgenda_ActionsAuto.class.php b/htdocs/core/triggers/interface_50_modAgenda_ActionsAuto.class.php index 3206e9377d3..2807a3b5a56 100644 --- a/htdocs/core/triggers/interface_50_modAgenda_ActionsAuto.class.php +++ b/htdocs/core/triggers/interface_50_modAgenda_ActionsAuto.class.php @@ -96,8 +96,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->sendtoid = 0; $object->socid = $object->id; - } - elseif ($action == 'COMPANY_SENTBYMAIL') + } elseif ($action == 'COMPANY_SENTBYMAIL') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "orders")); @@ -106,8 +105,7 @@ class InterfaceActionsAuto extends DolibarrTriggers // Parameters $object->sendtoid defined by caller //$object->sendtoid=0; - } - elseif ($action == 'CONTRACT_VALIDATE') + } elseif ($action == 'CONTRACT_VALIDATE') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "contracts")); @@ -116,8 +114,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->actionmsg = $langs->transnoentities("ContractValidatedInDolibarr", ($object->newref ? $object->newref : $object->ref)); $object->sendtoid = 0; - } - elseif ($action == 'CONTRACT_SENTBYMAIL') + } elseif ($action == 'CONTRACT_SENTBYMAIL') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "contracts")); @@ -130,8 +127,7 @@ class InterfaceActionsAuto extends DolibarrTriggers // Parameters $object->sendtoid defined by caller //$object->sendtoid=0; - } - elseif ($action == 'PROPAL_VALIDATE') + } elseif ($action == 'PROPAL_VALIDATE') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "propal")); @@ -140,8 +136,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->actionmsg = $langs->transnoentities("PropalValidatedInDolibarr", ($object->newref ? $object->newref : $object->ref)); $object->sendtoid = 0; - } - elseif ($action == 'PROPAL_SENTBYMAIL') + } elseif ($action == 'PROPAL_SENTBYMAIL') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "propal")); @@ -154,8 +149,7 @@ class InterfaceActionsAuto extends DolibarrTriggers // Parameters $object->sendtoid defined by caller //$object->sendtoid=0; - } - elseif ($action == 'PROPAL_CLOSE_SIGNED') + } elseif ($action == 'PROPAL_CLOSE_SIGNED') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "propal")); @@ -164,8 +158,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->actionmsg = $langs->transnoentities("PropalClosedSignedInDolibarr", $object->ref); $object->sendtoid = 0; - } - elseif ($action == 'PROPAL_CLASSIFY_BILLED') + } elseif ($action == 'PROPAL_CLASSIFY_BILLED') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "propal")); @@ -174,8 +167,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->actionmsg = $langs->transnoentities("PropalClassifiedBilledInDolibarr", $object->ref); $object->sendtoid = 0; - } - elseif ($action == 'PROPAL_CLOSE_REFUSED') + } elseif ($action == 'PROPAL_CLOSE_REFUSED') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "propal")); @@ -184,8 +176,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->actionmsg = $langs->transnoentities("PropalClosedRefusedInDolibarr", $object->ref); $object->sendtoid = 0; - } - elseif ($action == 'ORDER_VALIDATE') + } elseif ($action == 'ORDER_VALIDATE') { // Load translation files required by the page $langs->loadLangs(array("agenda", "orders")); @@ -194,8 +185,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->actionmsg = $langs->transnoentities("OrderValidatedInDolibarr", ($object->newref ? $object->newref : $object->ref)); $object->sendtoid = 0; - } - elseif ($action == 'ORDER_CLOSE') + } elseif ($action == 'ORDER_CLOSE') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "orders")); @@ -204,8 +194,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->actionmsg = $langs->transnoentities("OrderDeliveredInDolibarr", $object->ref); $object->sendtoid = 0; - } - elseif ($action == 'ORDER_CLASSIFY_BILLED') + } elseif ($action == 'ORDER_CLASSIFY_BILLED') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "orders")); @@ -214,8 +203,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->actionmsg = $langs->transnoentities("OrderBilledInDolibarr", $object->ref); $object->sendtoid = 0; - } - elseif ($action == 'ORDER_CANCEL') + } elseif ($action == 'ORDER_CANCEL') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "orders")); @@ -224,8 +212,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->actionmsg = $langs->transnoentities("OrderCanceledInDolibarr", $object->ref); $object->sendtoid = 0; - } - elseif ($action == 'ORDER_SENTBYMAIL') + } elseif ($action == 'ORDER_SENTBYMAIL') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "orders")); @@ -238,8 +225,7 @@ class InterfaceActionsAuto extends DolibarrTriggers // Parameters $object->sendtoid defined by caller //$object->sendtoid=0; - } - elseif ($action == 'BILL_VALIDATE') + } elseif ($action == 'BILL_VALIDATE') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "bills")); @@ -248,8 +234,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->actionmsg = $langs->transnoentities("InvoiceValidatedInDolibarr", ($object->newref ? $object->newref : $object->ref)); $object->sendtoid = 0; - } - elseif ($action == 'BILL_UNVALIDATE') + } elseif ($action == 'BILL_UNVALIDATE') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "bills")); @@ -258,8 +243,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->actionmsg = $langs->transnoentities("InvoiceBackToDraftInDolibarr", $object->ref); $object->sendtoid = 0; - } - elseif ($action == 'BILL_SENTBYMAIL') + } elseif ($action == 'BILL_SENTBYMAIL') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "bills")); @@ -272,8 +256,7 @@ class InterfaceActionsAuto extends DolibarrTriggers // Parameters $object->sendtoid defined by caller //$object->sendtoid=0; - } - elseif ($action == 'BILL_PAYED') + } elseif ($action == 'BILL_PAYED') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "bills")); @@ -283,8 +266,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->actionmsg = $langs->transnoentities("InvoicePaidInDolibarr", $object->ref); $object->sendtoid = 0; - } - elseif ($action == 'BILL_CANCEL') + } elseif ($action == 'BILL_CANCEL') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "bills")); @@ -293,8 +275,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->actionmsg = $langs->transnoentities("InvoiceCanceledInDolibarr", $object->ref); $object->sendtoid = 0; - } - elseif ($action == 'FICHINTER_CREATE') + } elseif ($action == 'FICHINTER_CREATE') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "interventions")); @@ -305,8 +286,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->sendtoid = 0; $object->fk_element = 0; $object->elementtype = ''; - } - elseif ($action == 'FICHINTER_VALIDATE') + } elseif ($action == 'FICHINTER_VALIDATE') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "interventions")); @@ -317,8 +297,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->sendtoid = 0; $object->fk_element = 0; $object->elementtype = ''; - } - elseif ($action == 'FICHINTER_MODIFY') + } elseif ($action == 'FICHINTER_MODIFY') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "interventions")); @@ -329,8 +308,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->sendtoid = 0; $object->fk_element = 0; $object->elementtype = ''; - } - elseif ($action == 'FICHINTER_SENTBYMAIL') + } elseif ($action == 'FICHINTER_SENTBYMAIL') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "interventions")); @@ -343,8 +321,7 @@ class InterfaceActionsAuto extends DolibarrTriggers // Parameters $object->sendtoid defined by caller //$object->sendtoid=0; - } - elseif ($action == 'FICHINTER_CLASSIFY_BILLED') + } elseif ($action == 'FICHINTER_CLASSIFY_BILLED') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "interventions")); @@ -353,8 +330,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->actionmsg = $langs->transnoentities("InterventionClassifiedBilledInDolibarr", $object->ref); $object->sendtoid = 0; - } - elseif ($action == 'FICHINTER_CLASSIFY_UNBILLED') + } elseif ($action == 'FICHINTER_CLASSIFY_UNBILLED') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "interventions")); @@ -363,8 +339,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->actionmsg = $langs->transnoentities("InterventionClassifiedUnbilledInDolibarr", $object->ref); $object->sendtoid = 0; - } - elseif ($action == 'FICHINTER_DELETE') + } elseif ($action == 'FICHINTER_DELETE') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "interventions")); @@ -375,8 +350,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->sendtoid = 0; $object->fk_element = 0; $object->elementtype = ''; - } - elseif ($action == 'SHIPPING_VALIDATE') + } elseif ($action == 'SHIPPING_VALIDATE') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "sendings")); @@ -389,8 +363,7 @@ class InterfaceActionsAuto extends DolibarrTriggers // Parameters $object->sendtoid defined by caller //$object->sendtoid=0; - } - elseif ($action == 'SHIPPING_SENTBYMAIL') + } elseif ($action == 'SHIPPING_SENTBYMAIL') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "sendings")); @@ -417,8 +390,7 @@ class InterfaceActionsAuto extends DolibarrTriggers // Parameters $object->sendtoid defined by caller //$object->sendtoid=0; - } - elseif ($action == 'RECEPTION_SENTBYMAIL') + } elseif ($action == 'RECEPTION_SENTBYMAIL') { $langs->load("agenda"); $langs->load("other"); @@ -432,8 +404,7 @@ class InterfaceActionsAuto extends DolibarrTriggers // Parameters $object->sendtoid defined by caller //$object->sendtoid=0; - } - elseif ($action == 'PROPOSAL_SUPPLIER_VALIDATE') + } elseif ($action == 'PROPOSAL_SUPPLIER_VALIDATE') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "propal")); @@ -442,8 +413,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->actionmsg = $langs->transnoentities("PropalValidatedInDolibarr", ($object->newref ? $object->newref : $object->ref)); $object->sendtoid = 0; - } - elseif ($action == 'PROPOSAL_SUPPLIER_SENTBYMAIL') + } elseif ($action == 'PROPOSAL_SUPPLIER_SENTBYMAIL') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "propal")); @@ -456,8 +426,7 @@ class InterfaceActionsAuto extends DolibarrTriggers // Parameters $object->sendtoid defined by caller //$object->sendtoid=0; - } - elseif ($action == 'PROPOSAL_SUPPLIER_CLOSE_SIGNED') + } elseif ($action == 'PROPOSAL_SUPPLIER_CLOSE_SIGNED') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "propal")); @@ -466,8 +435,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->actionmsg = $langs->transnoentities("PropalClosedSignedInDolibarr", $object->ref); $object->sendtoid = 0; - } - elseif ($action == 'PROPOSAL_SUPPLIER_CLOSE_REFUSED') + } elseif ($action == 'PROPOSAL_SUPPLIER_CLOSE_REFUSED') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "propal")); @@ -476,8 +444,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->actionmsg = $langs->transnoentities("PropalClosedRefusedInDolibarr", $object->ref); $object->sendtoid = 0; - } - elseif ($action == 'ORDER_SUPPLIER_CREATE') + } elseif ($action == 'ORDER_SUPPLIER_CREATE') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "orders")); @@ -486,8 +453,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->actionmsg = $langs->transnoentities("OrderCreatedInDolibarr", ($object->newref ? $object->newref : $object->ref)); $object->sendtoid = 0; - } - elseif ($action == 'ORDER_SUPPLIER_VALIDATE') + } elseif ($action == 'ORDER_SUPPLIER_VALIDATE') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "orders")); @@ -496,8 +462,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->actionmsg = $langs->transnoentities("OrderValidatedInDolibarr", ($object->newref ? $object->newref : $object->ref)); $object->sendtoid = 0; - } - elseif ($action == 'ORDER_SUPPLIER_APPROVE') + } elseif ($action == 'ORDER_SUPPLIER_APPROVE') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "orders")); @@ -506,8 +471,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->actionmsg = $langs->transnoentities("OrderApprovedInDolibarr", $object->ref); $object->sendtoid = 0; - } - elseif ($action == 'ORDER_SUPPLIER_REFUSE') + } elseif ($action == 'ORDER_SUPPLIER_REFUSE') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "orders")); @@ -516,8 +480,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->actionmsg = $langs->transnoentities("OrderRefusedInDolibarr", $object->ref); $object->sendtoid = 0; - } - elseif ($action == 'ORDER_SUPPLIER_SUBMIT') + } elseif ($action == 'ORDER_SUPPLIER_SUBMIT') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "orders")); @@ -526,8 +489,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->actionmsg = $langs->transnoentities("SupplierOrderSubmitedInDolibarr", ($object->newref ? $object->newref : $object->ref)); $object->sendtoid = 0; - } - elseif ($action == 'ORDER_SUPPLIER_RECEIVE') + } elseif ($action == 'ORDER_SUPPLIER_RECEIVE') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "orders")); @@ -536,8 +498,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->actionmsg = $langs->transnoentities("SupplierOrderReceivedInDolibarr", ($object->newref ? $object->newref : $object->ref)); $object->sendtoid = 0; - } - elseif ($action == 'ORDER_SUPPLIER_SENTBYMAIL') + } elseif ($action == 'ORDER_SUPPLIER_SENTBYMAIL') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "bills", "orders")); @@ -550,8 +511,7 @@ class InterfaceActionsAuto extends DolibarrTriggers // Parameters $object->sendtoid defined by caller //$object->sendtoid=0; - } - elseif ($action == 'ORDER_SUPPLIER_CLASSIFY_BILLED') + } elseif ($action == 'ORDER_SUPPLIER_CLASSIFY_BILLED') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "bills", "orders")); @@ -563,8 +523,7 @@ class InterfaceActionsAuto extends DolibarrTriggers } $object->sendtoid = 0; - } - elseif ($action == 'BILL_SUPPLIER_VALIDATE') + } elseif ($action == 'BILL_SUPPLIER_VALIDATE') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "bills")); @@ -573,8 +532,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->actionmsg = $langs->transnoentities("InvoiceValidatedInDolibarr", ($object->newref ? $object->newref : $object->ref)); $object->sendtoid = 0; - } - elseif ($action == 'BILL_SUPPLIER_UNVALIDATE') + } elseif ($action == 'BILL_SUPPLIER_UNVALIDATE') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "bills")); @@ -583,8 +541,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->actionmsg = $langs->transnoentities("InvoiceBackToDraftInDolibarr", $object->ref); $object->sendtoid = 0; - } - elseif ($action == 'BILL_SUPPLIER_SENTBYMAIL') + } elseif ($action == 'BILL_SUPPLIER_SENTBYMAIL') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "bills", "orders")); @@ -597,8 +554,7 @@ class InterfaceActionsAuto extends DolibarrTriggers // Parameters $object->sendtoid defined by caller //$object->sendtoid=0; - } - elseif ($action == 'BILL_SUPPLIER_PAYED') + } elseif ($action == 'BILL_SUPPLIER_PAYED') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "bills")); @@ -607,8 +563,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->actionmsg = $langs->transnoentities("InvoicePaidInDolibarr", $object->ref); $object->sendtoid = 0; - } - elseif ($action == 'BILL_SUPPLIER_CANCELED') + } elseif ($action == 'BILL_SUPPLIER_CANCELED') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "bills")); @@ -631,8 +586,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->actionmsg .= "\n".$langs->transnoentities("Type").': '.$object->type; $object->sendtoid = 0; - } - elseif ($action == 'MEMBER_MODIFY') + } elseif ($action == 'MEMBER_MODIFY') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "members")); @@ -643,8 +597,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->actionmsg .= "\n".$langs->transnoentities("Type").': '.$object->type; $object->sendtoid = 0; - } - elseif ($action == 'MEMBER_SUBSCRIPTION_CREATE') + } elseif ($action == 'MEMBER_SUBSCRIPTION_CREATE') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "members")); @@ -666,8 +619,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->sendtoid = 0; if ($object->fk_soc > 0) $object->socid = $object->fk_soc; - } - elseif ($action == 'MEMBER_SUBSCRIPTION_MODIFY') + } elseif ($action == 'MEMBER_SUBSCRIPTION_MODIFY') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "members")); @@ -689,8 +641,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->sendtoid = 0; if ($object->fk_soc > 0) $object->socid = $object->fk_soc; - } - elseif ($action == 'MEMBER_SUBSCRIPTION_DELETE') + } elseif ($action == 'MEMBER_SUBSCRIPTION_DELETE') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "members")); @@ -704,8 +655,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->sendtoid = 0; if ($object->fk_soc > 0) $object->socid = $object->fk_soc; - } - elseif ($action == 'MEMBER_RESILIATE') + } elseif ($action == 'MEMBER_RESILIATE') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "members")); @@ -716,8 +666,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->actionmsg .= "\n".$langs->transnoentities("Type").': '.$object->type; $object->sendtoid = 0; - } - elseif ($action == 'MEMBER_DELETE') + } elseif ($action == 'MEMBER_DELETE') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "members")); @@ -741,8 +690,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->actionmsg .= "\n".$langs->transnoentities("Project").': '.$object->ref; $object->sendtoid = 0; - } - elseif ($action == 'PROJECT_VALIDATE') + } elseif ($action == 'PROJECT_VALIDATE') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "projects")); @@ -752,8 +700,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->actionmsg .= "\n".$langs->transnoentities("Project").': '.$object->ref; $object->sendtoid = 0; - } - elseif ($action == 'PROJECT_MODIFY') + } elseif ($action == 'PROJECT_MODIFY') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "projects")); @@ -776,8 +723,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->actionmsg .= "\n".$langs->transnoentities("Task").': '.$object->ref; $object->sendtoid = 0; - } - elseif ($action == 'TASK_MODIFY') + } elseif ($action == 'TASK_MODIFY') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "projects")); @@ -787,8 +733,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->actionmsg .= "\n".$langs->transnoentities("Task").': '.$object->ref; $object->sendtoid = 0; - } - elseif ($action == 'TASK_DELETE') + } elseif ($action == 'TASK_DELETE') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "projects")); @@ -798,8 +743,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $object->actionmsg .= "\n".$langs->transnoentities("Task").': '.$object->ref; $object->sendtoid = 0; - } - elseif ($action == 'TICKET_ASSIGNED') + } elseif ($action == 'TICKET_ASSIGNED') { // Load translation files required by the page $langs->loadLangs(array("agenda", "other", "projects")); @@ -811,9 +755,7 @@ class InterfaceActionsAuto extends DolibarrTriggers $tmpuser = new User($this->db); $tmpuser->fetch($object->oldcopy->fk_user_assign); $object->actionmsg .= "\n".$langs->transnoentities("OldUser").': '.$tmpuser->getFullName($langs); - } - else - { + } else { $object->actionmsg .= "\n".$langs->transnoentities("OldUser").': '.$langs->trans("None"); } if ($object->fk_user_assign > 0) @@ -821,15 +763,13 @@ class InterfaceActionsAuto extends DolibarrTriggers $tmpuser = new User($this->db); $tmpuser->fetch($object->fk_user_assign); $object->actionmsg .= "\n".$langs->transnoentities("NewUser").': '.$tmpuser->getFullName($langs); - } - else - { + } else { $object->actionmsg .= "\n".$langs->transnoentities("NewUser").': '.$langs->trans("None"); } $object->sendtoid = 0; } // TODO Merge all previous cases into this generic one - else // $action = BILL_DELETE, TICKET_CREATE, TICKET_MODIFY, TICKET_DELETE, ... + else // $action = BILL_DELETE, TICKET_CREATE, TICKET_MODIFY, TICKET_DELETE, ... { // Note: We are here only if $conf->global->MAIN_AGENDA_ACTIONAUTO_action is on (tested at begining of this function). // Note that these key can be set in agenda setup, only if defined into c_action_trigger @@ -866,9 +806,7 @@ class InterfaceActionsAuto extends DolibarrTriggers if (is_array($object->sendtoid)) { if (count($object->sendtoid) == 1) $contactforaction->fetch(reset($object->sendtoid)); - } - else - { + } else { if ($object->sendtoid > 0) $contactforaction->fetch($object->sendtoid); } // Set societeforaction. @@ -898,7 +836,6 @@ class InterfaceActionsAuto extends DolibarrTriggers $actioncomm->datep = $now; $actioncomm->datef = $now; $actioncomm->durationp = 0; - $actioncomm->punctual = 1; $actioncomm->percentage = -1; // Not applicable $actioncomm->socid = $societeforaction->id; $actioncomm->contactid = $contactforaction->id; @@ -952,9 +889,7 @@ class InterfaceActionsAuto extends DolibarrTriggers { $_SESSION['LAST_ACTION_CREATED'] = $ret; return 1; - } - else - { + } else { $this->error = "Failed to insert event : ".$actioncomm->error." ".join(',', $actioncomm->errors); $this->errors = $actioncomm->errors; diff --git a/htdocs/core/triggers/interface_50_modBlockedlog_ActionsBlockedLog.class.php b/htdocs/core/triggers/interface_50_modBlockedlog_ActionsBlockedLog.class.php index 2135f463ca7..19eab2e5974 100644 --- a/htdocs/core/triggers/interface_50_modBlockedlog_ActionsBlockedLog.class.php +++ b/htdocs/core/triggers/interface_50_modBlockedlog_ActionsBlockedLog.class.php @@ -93,8 +93,7 @@ class InterfaceActionsBlockedLog extends DolibarrTriggers elseif ($action == 'CASHCONTROL_VALIDATE') { $amounts = (double) $object->cash + (double) $object->cheque + (double) $object->card; - } - else $amounts = (double) $object->total_ttc; + } else $amounts = (double) $object->total_ttc; } /*if ($action === 'BILL_PAYED' || $action==='BILL_UNPAYED' || $action === 'BILL_SUPPLIER_PAYED' || $action === 'BILL_SUPPLIER_UNPAYED') @@ -112,8 +111,7 @@ class InterfaceActionsBlockedLog extends DolibarrTriggers $amounts += price2num($amount); } } - } - elseif (strpos($action, 'PAYMENT') !== false && !in_array($action, array('PAYMENT_ADD_TO_BANK'))) + } elseif (strpos($action, 'PAYMENT') !== false && !in_array($action, array('PAYMENT_ADD_TO_BANK'))) { $qualified++; $amounts = (double) $object->amount; @@ -142,9 +140,7 @@ class InterfaceActionsBlockedLog extends DolibarrTriggers $this->error = $b->error; $this->errors = $b->errors; return -1; - } - else - { + } else { return 1; } } diff --git a/htdocs/core/triggers/interface_50_modLdap_Ldapsynchro.class.php b/htdocs/core/triggers/interface_50_modLdap_Ldapsynchro.class.php index 8b8c392615a..9c3987cbeb1 100644 --- a/htdocs/core/triggers/interface_50_modLdap_Ldapsynchro.class.php +++ b/htdocs/core/triggers/interface_50_modLdap_Ldapsynchro.class.php @@ -91,8 +91,7 @@ class InterfaceLdapsynchro extends DolibarrTriggers if ($result < 0) $this->error = "ErrorLDAP ".$ldap->error; } - } - elseif ($action == 'USER_MODIFY') + } elseif ($action == 'USER_MODIFY') { dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id); if (!empty($conf->global->LDAP_SYNCHRO_ACTIVE) && $conf->global->LDAP_SYNCHRO_ACTIVE === 'dolibarr2ldap') @@ -130,8 +129,7 @@ class InterfaceLdapsynchro extends DolibarrTriggers if ($result < 0) $this->error = "ErrorLDAP ".$ldap->error; } - } - elseif ($action == 'USER_NEW_PASSWORD') + } elseif ($action == 'USER_NEW_PASSWORD') { dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id); if (!empty($conf->global->LDAP_SYNCHRO_ACTIVE) && $conf->global->LDAP_SYNCHRO_ACTIVE === 'dolibarr2ldap') @@ -167,12 +165,10 @@ class InterfaceLdapsynchro extends DolibarrTriggers if ($result < 0) $this->error = "ErrorLDAP ".$ldap->error; } - } - elseif ($action == 'USER_ENABLEDISABLE') + } elseif ($action == 'USER_ENABLEDISABLE') { dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id); - } - elseif ($action == 'USER_DELETE') + } elseif ($action == 'USER_DELETE') { dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id); if (!empty($conf->global->LDAP_SYNCHRO_ACTIVE) && $conf->global->LDAP_SYNCHRO_ACTIVE === 'dolibarr2ldap') @@ -190,8 +186,7 @@ class InterfaceLdapsynchro extends DolibarrTriggers if ($result < 0) $this->error = "ErrorLDAP ".$ldap->error; } - } - elseif ($action == 'USER_SETINGROUP') + } elseif ($action == 'USER_SETINGROUP') { dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id); if (!empty($conf->global->LDAP_SYNCHRO_ACTIVE) && $conf->global->LDAP_SYNCHRO_ACTIVE === 'dolibarr2ldap') @@ -228,8 +223,7 @@ class InterfaceLdapsynchro extends DolibarrTriggers if ($result < 0) $this->error = "ErrorLDAP ".$ldap->error; } - } - elseif ($action == 'USER_REMOVEFROMGROUP') + } elseif ($action == 'USER_REMOVEFROMGROUP') { dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id); if (!empty($conf->global->LDAP_SYNCHRO_ACTIVE) && $conf->global->LDAP_SYNCHRO_ACTIVE === 'dolibarr2ldap') @@ -292,8 +286,7 @@ class InterfaceLdapsynchro extends DolibarrTriggers if ($result < 0) $this->error = "ErrorLDAP ".$ldap->error; } - } - elseif ($action == 'USERGROUP_MODIFY') + } elseif ($action == 'USERGROUP_MODIFY') { dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id); if (!empty($conf->global->LDAP_SYNCHRO_ACTIVE) && $conf->global->LDAP_SYNCHRO_ACTIVE === 'dolibarr2ldap') @@ -329,8 +322,7 @@ class InterfaceLdapsynchro extends DolibarrTriggers if ($result < 0) $this->error = "ErrorLDAP ".$ldap->error; } - } - elseif ($action == 'USERGROUP_DELETE') + } elseif ($action == 'USERGROUP_DELETE') { dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id); if (!empty($conf->global->LDAP_SYNCHRO_ACTIVE) && $conf->global->LDAP_SYNCHRO_ACTIVE === 'dolibarr2ldap') @@ -369,8 +361,7 @@ class InterfaceLdapsynchro extends DolibarrTriggers if ($result < 0) $this->error = "ErrorLDAP ".$ldap->error; } - } - elseif ($action == 'CONTACT_MODIFY') + } elseif ($action == 'CONTACT_MODIFY') { dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id); if (!empty($conf->global->LDAP_CONTACT_ACTIVE)) @@ -406,8 +397,7 @@ class InterfaceLdapsynchro extends DolibarrTriggers if ($result < 0) $this->error = "ErrorLDAP ".$ldap->error; } - } - elseif ($action == 'CONTACT_DELETE') + } elseif ($action == 'CONTACT_DELETE') { dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id); if (!empty($conf->global->LDAP_CONTACT_ACTIVE)) @@ -475,8 +465,7 @@ class InterfaceLdapsynchro extends DolibarrTriggers if ($result < 0) $this->error = "ErrorLDAP ".$ldap->error; } - } - elseif ($action == 'MEMBER_VALIDATE') + } elseif ($action == 'MEMBER_VALIDATE') { dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id); if (!empty($conf->global->LDAP_MEMBER_ACTIVE) && (string) $conf->global->LDAP_MEMBER_ACTIVE == '1') @@ -499,8 +488,7 @@ class InterfaceLdapsynchro extends DolibarrTriggers if ($result < 0) $this->error = "ErrorLDAP ".$ldap->error; } } - } - elseif ($action == 'MEMBER_SUBSCRIPTION') + } elseif ($action == 'MEMBER_SUBSCRIPTION') { dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id); if (!empty($conf->global->LDAP_MEMBER_ACTIVE) && (string) $conf->global->LDAP_MEMBER_ACTIVE == '1') @@ -527,8 +515,7 @@ class InterfaceLdapsynchro extends DolibarrTriggers if ($result < 0) $this->error = "ErrorLDAP ".$ldap->error; } } - } - elseif ($action == 'MEMBER_MODIFY') + } elseif ($action == 'MEMBER_MODIFY') { dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id); if (!empty($conf->global->LDAP_MEMBER_ACTIVE) && (string) $conf->global->LDAP_MEMBER_ACTIVE == '1') @@ -626,8 +613,7 @@ class InterfaceLdapsynchro extends DolibarrTriggers $this->errors[] = "ErrorLDAP ".$ldap->error; } } - } - elseif ($action == 'MEMBER_NEW_PASSWORD') + } elseif ($action == 'MEMBER_NEW_PASSWORD') { dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id); if (!empty($conf->global->LDAP_MEMBER_ACTIVE) && (string) $conf->global->LDAP_MEMBER_ACTIVE == '1') @@ -653,8 +639,7 @@ class InterfaceLdapsynchro extends DolibarrTriggers } } } - } - elseif ($action == 'MEMBER_RESILIATE') + } elseif ($action == 'MEMBER_RESILIATE') { dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id); if (!empty($conf->global->LDAP_MEMBER_ACTIVE) && (string) $conf->global->LDAP_MEMBER_ACTIVE == '1') @@ -680,8 +665,7 @@ class InterfaceLdapsynchro extends DolibarrTriggers } } } - } - elseif ($action == 'MEMBER_DELETE') + } elseif ($action == 'MEMBER_DELETE') { dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id); if (!empty($conf->global->LDAP_MEMBER_ACTIVE) && (string) $conf->global->LDAP_MEMBER_ACTIVE == '1') @@ -764,8 +748,7 @@ class InterfaceLdapsynchro extends DolibarrTriggers $this->errors[] = "ErrorLDAP ".$ldap->error; } } - } - elseif ($action == 'MEMBER_TYPE_MODIFY') + } elseif ($action == 'MEMBER_TYPE_MODIFY') { dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id); if (!empty($conf->global->LDAP_MEMBER_TYPE_ACTIVE) && (string) $conf->global->LDAP_MEMBER_TYPE_ACTIVE == '1') @@ -807,8 +790,7 @@ class InterfaceLdapsynchro extends DolibarrTriggers $this->errors[] = "ErrorLDAP ".$ldap->error; } } - } - elseif ($action == 'MEMBER_TYPE_DELETE') + } elseif ($action == 'MEMBER_TYPE_DELETE') { dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id); if (!empty($conf->global->LDAP_MEMBER_TYPE_ACTIVE) && (string) $conf->global->LDAP_MEMBER_TYPE_ACTIVE == '1') diff --git a/htdocs/core/triggers/interface_50_modMailmanspip_Mailmanspipsynchro.class.php b/htdocs/core/triggers/interface_50_modMailmanspip_Mailmanspipsynchro.class.php index be5465c06f2..59005b2f34d 100644 --- a/htdocs/core/triggers/interface_50_modMailmanspip_Mailmanspipsynchro.class.php +++ b/htdocs/core/triggers/interface_50_modMailmanspip_Mailmanspipsynchro.class.php @@ -71,15 +71,12 @@ class InterfaceMailmanSpipsynchro extends DolibarrTriggers $this->error = $object->context['linkto']->error; $this->errors = $object->context['linkto']->errors; $return = -1; - } - else - { + } else { $return = 1; } return $return; - } - elseif ($action == 'CATEGORY_UNLINK') + } elseif ($action == 'CATEGORY_UNLINK') { dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id); @@ -89,9 +86,7 @@ class InterfaceMailmanSpipsynchro extends DolibarrTriggers $this->error = $object->context['unlinkoff']->error; $this->errors = $object->context['unlinkoff']->errors; $return = -1; - } - else - { + } else { $return = 1; } @@ -109,15 +104,12 @@ class InterfaceMailmanSpipsynchro extends DolibarrTriggers $this->errors = $object->errors; if (!empty($object->error)) $this->errors[] = $object->error; $return = -1; - } - else - { + } else { $return = 1; } return $return; - } - elseif ($action == 'MEMBER_MODIFY') + } elseif ($action == 'MEMBER_MODIFY') { dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id); @@ -132,9 +124,7 @@ class InterfaceMailmanSpipsynchro extends DolibarrTriggers $this->errors = $object->oldcopy->errors; if (!empty($object->oldcopy->error)) $this->errors[] = $object->oldcopy->error; $return = -1; - } - else - { + } else { $return = 1; } } @@ -144,16 +134,13 @@ class InterfaceMailmanSpipsynchro extends DolibarrTriggers $this->errors = $object->errors; if (!empty($object->error)) $this->errors[] = $object->error; $return = -1; - } - else - { + } else { $return = 1; } } return $return; - } - elseif ($action == 'MEMBER_RESILIATE' || $action == 'MEMBER_DELETE') + } elseif ($action == 'MEMBER_RESILIATE' || $action == 'MEMBER_DELETE') { dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id); @@ -164,9 +151,7 @@ class InterfaceMailmanSpipsynchro extends DolibarrTriggers $this->errors = $object->errors; if (!empty($object->error)) $this->errors[] = $object->error; $return = -1; - } - else - { + } else { $return = 1; } diff --git a/htdocs/core/triggers/interface_50_modNotification_Notification.class.php b/htdocs/core/triggers/interface_50_modNotification_Notification.class.php index 760a2101087..a7157ea866a 100644 --- a/htdocs/core/triggers/interface_50_modNotification_Notification.class.php +++ b/htdocs/core/triggers/interface_50_modNotification_Notification.class.php @@ -140,8 +140,7 @@ class InterfaceNotification extends DolibarrTriggers $i++; } - } - else dol_print_error($this->db); + } else dol_print_error($this->db); return $ret; } diff --git a/htdocs/core/triggers/interface_50_modTicket_TicketEmail.class.php b/htdocs/core/triggers/interface_50_modTicket_TicketEmail.class.php index 6bd33c5b2f9..3b915dee032 100644 --- a/htdocs/core/triggers/interface_50_modTicket_TicketEmail.class.php +++ b/htdocs/core/triggers/interface_50_modTicket_TicketEmail.class.php @@ -170,9 +170,7 @@ class InterfaceTicketEmail extends DolibarrTriggers } $ok = 1; - } - else - { + } else { $this->error = $userstat->error; $this->errors = $userstat->errors; } diff --git a/htdocs/core/triggers/interface_80_modStripe_Stripe.class.php b/htdocs/core/triggers/interface_80_modStripe_Stripe.class.php index af2ed9cc96b..5c0f17dd90d 100644 --- a/htdocs/core/triggers/interface_80_modStripe_Stripe.class.php +++ b/htdocs/core/triggers/interface_80_modStripe_Stripe.class.php @@ -33,7 +33,7 @@ require_once DOL_DOCUMENT_ROOT.'/core/triggers/dolibarrtriggers.class.php'; /** * Class of triggers for stripe module */ -class InterfaceStripe +class InterfaceStripe extends DolibarrTriggers { /** * @var DoliDB Database handler. @@ -53,7 +53,7 @@ class InterfaceStripe $this->family = 'stripe'; $this->description = "Triggers of the module Stripe"; $this->version = 'dolibarr'; // 'development', 'experimental', 'dolibarr' or version - $this->picto = 'stripe@stripe'; + $this->picto = 'stripe'; } /** @@ -77,29 +77,6 @@ class InterfaceStripe return $this->description; } - /** - * Trigger version - * - * @return string Version of trigger file - */ - public function getVersion() - { - global $langs; - $langs->load("admin"); - - if ($this->version == 'development') { - return $langs->trans("Development"); - } elseif ($this->version == 'experimental') { - return $langs->trans("Experimental"); - } elseif ($this->version == 'dolibarr') { - return DOL_VERSION; - } elseif ($this->version) { - return $this->version; - } else { - return $langs->trans("Unknown"); - } - } - /** * Function called when a Dolibarrr business event is done. * All functions "runTrigger" are triggered if file @@ -200,9 +177,7 @@ class InterfaceStripe //$taxids = $customer->allTaxIds($customer->id); $customer->createTaxId($customer->id, array('type'=>'eu_vat', 'value'=>$vatcleaned)); } - } - else - { + } else { $taxids = $customer->allTaxIds($customer->id); if (is_array($taxids->data)) { @@ -216,8 +191,7 @@ class InterfaceStripe // Update Customer on Stripe $customer->save(); - } - catch (Exception $e) + } catch (Exception $e) { //var_dump(\Stripe\Stripe::getApiVersion()); $this->errors[] = $e->getMessage(); @@ -237,8 +211,7 @@ class InterfaceStripe { try { $customer->delete(); - } - catch (Exception $e) + } catch (Exception $e) { dol_syslog("Failed to delete Stripe customer ".$e->getMessage(), LOG_WARNING); } @@ -277,8 +250,7 @@ class InterfaceStripe $card->metadata = array('dol_id'=>$object->id, 'dol_version'=>DOL_VERSION, 'dol_entity'=>$conf->entity, 'ipaddress'=>(empty($_SERVER['REMOTE_ADDR']) ? '' : $_SERVER['REMOTE_ADDR'])); try { $card->save(); - } - catch (Exception $e) + } catch (Exception $e) { $ok = -1; $this->error = $e->getMessages(); diff --git a/htdocs/core/website.inc.php b/htdocs/core/website.inc.php index b90da632fac..00379c36329 100644 --- a/htdocs/core/website.inc.php +++ b/htdocs/core/website.inc.php @@ -19,7 +19,7 @@ /** * \file htdocs/core/website.inc.php * \brief Common file loaded by all website pages (after master.inc.php). It set the new object $weblangs, using parameter 'l'. - * This file is included in top of all container pages. + * This file is included in top of all container pages and is run only when a web page is called. * The global variable $websitekey must be defined. */ @@ -27,17 +27,24 @@ include_once DOL_DOCUMENT_ROOT.'/website/class/website.class.php'; include_once DOL_DOCUMENT_ROOT.'/website/class/websitepage.class.php'; +// Detection browser (copy of code from main.inc.php) +if (isset($_SERVER["HTTP_USER_AGENT"]) && is_object($conf) && empty($conf->browser->name)) +{ + $tmp = getBrowserInfo($_SERVER["HTTP_USER_AGENT"]); + $conf->browser->name = $tmp['browsername']; + $conf->browser->os = $tmp['browseros']; + $conf->browser->version = $tmp['browserversion']; + $conf->browser->layout = $tmp['layout']; // 'classic', 'phone', 'tablet' + //var_dump($conf->browser); + + if ($conf->browser->layout == 'phone') $conf->dol_no_mouse_hover = 1; +} // Define $website if (!is_object($website)) { $website = new Website($db); $website->fetch(0, $websitekey); } -// Define $weblangs -if (!is_object($weblangs)) -{ - $weblangs = dol_clone($langs); // TODO Use an object lang from a language set into $website object instead of backoffice -} // Define $websitepage if we have $websitepagefile defined if (!$pageid && !empty($websitepagefile)) { @@ -48,10 +55,22 @@ if (!is_object($websitepage)) { $websitepage = new WebsitePage($db); } +// Define $weblangs +if (!is_object($weblangs)) +{ + $weblangs = new Translate('', $conf); +} +if (!is_object($pagelangs)) +{ + $pagelangs = new Translate('', $conf); +} if ($pageid > 0) { $websitepage->fetch($pageid); + $weblangs->setDefaultLang(GETPOSTISSET('lang') ? GETPOST('lang', 'aZ09') : (empty($_COOKIE['weblangs-shortcode']) ? 'auto' : $_COOKIE['weblangs-shortcode'])); + $pagelangs->setDefaultLang($websitepage->lang ? $websitepage->lang : $weblangs->shortlang); + if (!defined('USEDOLIBARREDITOR') && in_array($websitepage->type_container, array('menu', 'other'))) { $weblangs->load("website"); @@ -98,9 +117,7 @@ if ($_SERVER['PHP_SELF'] != DOL_URL_ROOT.'/website/index.php') // If we browsing if (defined('USEDOLIBARRSERVER')) { header("Location: ".DOL_URL_ROOT.'/public/website/index.php?website='.$websitekey.'&pageid='.$newpageid.'&l='.GETPOST('l', 'aZ09')); exit; - } - else - { + } else { $newpageref = $obj->pageurl; header("Location: ".$newpageref.'.php?l='.GETPOST('l', 'aZ09')); exit; diff --git a/htdocs/cron/admin/cron.php b/htdocs/cron/admin/cron.php index b9c00885d69..55a205bffd8 100644 --- a/htdocs/cron/admin/cron.php +++ b/htdocs/cron/admin/cron.php @@ -50,9 +50,7 @@ if (!empty($actionsave)) { $db->commit(); setEventMessages($langs->trans("SetupSaved"), null, 'mesgs'); - } - else - { + } else { $db->rollback(); setEventMessages($langs->trans("Error"), null, 'errors'); } @@ -96,9 +94,7 @@ if (empty($conf->global->CRON_DISABLE_KEY_CHANGE)) print ''; if (!empty($conf->use_javascript_ajax)) print ' '.img_picto($langs->trans('Generate'), 'refresh', 'id="generate_token" class="linkobject"'); -} -else -{ +} else { print (!empty($conf->global->CRON_KEY) ? $conf->global->CRON_KEY : ''); print ''; } diff --git a/htdocs/cron/card.php b/htdocs/cron/card.php index 9ebbcda6c44..461c78efbdb 100644 --- a/htdocs/cron/card.php +++ b/htdocs/cron/card.php @@ -65,16 +65,12 @@ if (!empty($cancel)) if (!empty($id) && empty($backtourl)) { $action = ''; - } - else - { + } else { if ($backtourl) { header("Location: ".$backtourl); exit; - } - else - { + } else { header("Location: ".DOL_URL_ROOT.'/cron/list.php'); exit; } @@ -90,9 +86,7 @@ if ($action == 'confirm_delete' && $confirm == "yes" && $user->rights->cron->del { setEventMessages($object->error, $object->errors, 'errors'); $action = 'edit'; - } - else - { + } else { Header("Location: ".DOL_URL_ROOT.'/cron/list.php'); exit; } @@ -105,9 +99,7 @@ if ($action == 'confirm_execute' && $confirm == "yes" && $user->rights->cron->ex { setEventMessages('Security key '.$securitykey.' is wrong', null, 'errors'); $action = ''; - } - else - { + } else { $now = dol_now(); // Date we start $result = $object->run_jobs($user->login); @@ -116,18 +108,14 @@ if ($action == 'confirm_execute' && $confirm == "yes" && $user->rights->cron->ex { setEventMessages($object->error, $object->errors, 'errors'); $action = ''; - } - else - { + } else { $res = $object->reprogram_jobs($user->login, $now); if ($res > 0) { if ($object->lastresult > 0) setEventMessages($langs->trans("JobFinished"), null, 'warnings'); else setEventMessages($langs->trans("JobFinished"), null, 'mesgs'); $action = ''; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); $action = ''; } @@ -163,8 +151,7 @@ if ($action == 'add') if ($result < 0) { setEventMessages($object->error, $object->errors, 'errors'); $action = 'create'; - } - else { + } else { setEventMessages($langs->trans('CronSaveSucess'), null, 'mesgs'); $action = ''; } @@ -199,8 +186,7 @@ if ($action == 'update') if ($result < 0) { setEventMessages($object->error, $object->errors, 'errors'); $action = 'edit'; - } - else { + } else { setEventMessages($langs->trans('CronSaveSucess'), null, 'mesgs'); $action = ''; } @@ -217,8 +203,7 @@ if ($action == 'activate') if ($result < 0) { setEventMessages($object->error, $object->errors, 'errors'); $action = 'edit'; - } - else { + } else { setEventMessages($langs->trans('CronSaveSucess'), null, 'mesgs'); $action = ''; } @@ -236,8 +221,7 @@ if ($action == 'inactive') if ($result < 0) { setEventMessages($object->error, $object->errors, 'errors'); $action = 'edit'; - } - else { + } else { setEventMessages($langs->trans('CronSaveSucess'), null, 'mesgs'); $action = ''; } @@ -257,8 +241,7 @@ llxHeader('', $langs->trans("CronTask")); if ($action == 'edit' || empty($action) || $action == 'delete' || $action == 'execute') { $head = cron_prepare_head($object); -} -elseif ($action == 'create') +} elseif ($action == 'create') { print load_fiche_titre($langs->trans("CronTask"), '', 'title_setup'); } @@ -415,9 +398,7 @@ if (($action == "create") || ($action == "edit")) if ($object->frequency == $i) { print ""; - } - else - { + } else { print ""; } } @@ -426,8 +407,7 @@ if (($action == "create") || ($action == "edit")) if ($object->unitfrequency == "60") { $input .= ' checked />'; - } - else { + } else { $input .= ' />'; } $input .= ""; @@ -436,8 +416,7 @@ if (($action == "create") || ($action == "edit")) $input = " unitfrequency == "3600") { $input .= ' checked />'; - } - else { + } else { $input .= ' />'; } $input .= ""; @@ -446,8 +425,7 @@ if (($action == "create") || ($action == "edit")) $input = " unitfrequency == "86400") { $input .= ' checked />'; - } - else { + } else { $input .= ' />'; } $input .= ""; @@ -456,8 +434,7 @@ if (($action == "create") || ($action == "edit")) $input = " unitfrequency == "604800") { $input .= ' checked />'; - } - else { + } else { $input .= ' />'; } $input .= ""; @@ -472,9 +449,7 @@ if (($action == "create") || ($action == "edit")) if (!empty($object->datestart)) { print $form->selectDate($object->datestart, 'datestart', 1, 1, '', "cronform"); - } - else - { + } else { print $form->selectDate('', 'datestart', 1, 1, '', "cronform"); } print ""; @@ -486,8 +461,7 @@ if (($action == "create") || ($action == "edit")) print $langs->trans('CronDtEnd').""; if (!empty($object->dateend)) { print $form->selectDate($object->dateend, 'dateend', 1, 1, '', "cronform"); - } - else { + } else { print $form->selectDate(-1, 'dateend', 1, 1, 1, "cronform"); } print ""; @@ -526,9 +500,7 @@ if (($action == "create") || ($action == "edit")) if (!empty($object->datenextrun)) { print $form->selectDate($object->datenextrun, 'datenextrun', 1, 1, '', "cronform"); - } - else - { + } else { print $form->selectDate(-1, 'datenextrun', 1, 1, '', "cronform"); } print ""; @@ -547,9 +519,7 @@ if (($action == "create") || ($action == "edit")) print "
    "; print "\n"; -} -else -{ +} else { /* * view card */ @@ -621,9 +591,7 @@ else if (!$object->entity) { print $langs->trans("AllEntities"); - } - else - { + } else { $mc->getInfo($object->entity); print $mc->label; } @@ -681,8 +649,7 @@ else print ' ('.$langs->trans('CronFrom').')'; print ""; if (!$object->status) print $langs->trans("Disabled"); - elseif (!empty($object->datenextrun)) { print img_picto('', 'object_calendarday').' '.dol_print_date($object->datenextrun, 'dayhoursec'); } - else { print $langs->trans('CronNone'); } + elseif (!empty($object->datenextrun)) { print img_picto('', 'object_calendarday').' '.dol_print_date($object->datenextrun, 'dayhoursec'); } else { print $langs->trans('CronNone'); } if ($object->status == Cronjob::STATUS_ENABLED) { if ($object->maxrun && $object->nbrun >= $object->maxrun) print img_warning($langs->trans("MaxRunReached")); @@ -737,12 +704,10 @@ else if ((empty($user->rights->cron->execute))) { print ''.$langs->trans("CronExecute").''; - } - elseif (empty($object->status)) + } elseif (empty($object->status)) { print ''.$langs->trans("CronExecute").''; - } - else { + } else { print ''.$langs->trans("CronExecute").''; } diff --git a/htdocs/cron/class/cronjob.class.php b/htdocs/cron/class/cronjob.class.php index 92a132a6789..47347cce82d 100644 --- a/htdocs/cron/class/cronjob.class.php +++ b/htdocs/cron/class/cronjob.class.php @@ -279,9 +279,7 @@ class Cronjob extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return $this->id; } @@ -377,9 +375,7 @@ class Cronjob extends CommonObject $this->db->free($resql); return 1; - } - else - { + } else { $this->error = "Error ".$this->db->lasterror(); return -1; } @@ -517,9 +513,7 @@ class Cronjob extends CommonObject $this->db->free($resql); return 1; - } - else - { + } else { $this->error = "Error ".$this->db->lasterror(); return -1; } @@ -654,9 +648,7 @@ class Cronjob extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } @@ -696,9 +688,7 @@ class Cronjob extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } @@ -752,9 +742,7 @@ class Cronjob extends CommonObject { $this->db->commit(); return $object->id; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -848,8 +836,7 @@ class Cronjob extends CommonObject } $linkclose .= ' title="'.dol_escape_htmltag($label, 1).'"'; $linkclose .= ' class="classfortooltip'.($morecss ? ' '.$morecss : '').'"'; - } - else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); + } else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); $linkstart = ''; @@ -894,9 +881,7 @@ class Cronjob extends CommonObject $this->db->free($resql); return 1; - } - else - { + } else { $this->error = "Error ".$this->db->lasterror(); return -1; } @@ -951,9 +936,7 @@ class Cronjob extends CommonObject dol_syslog(get_class($this)."::run_jobs ".$this->error, LOG_ERR); $conf->entity = $savcurrententity; return -1; - } - else - { + } else { if (empty($user->id)) { $this->error = " User user login:".$userlogin." do not exists"; @@ -1056,9 +1039,7 @@ class Cronjob extends CommonObject if (!is_array($params_arr)) { $result = call_user_func(array($object, $this->methodename), $this->params); - } - else - { + } else { $result = call_user_func_array(array($object, $this->methodename), $params_arr); } @@ -1078,9 +1059,7 @@ class Cronjob extends CommonObject $this->lastresult = is_numeric($result) ? $result : -1; $retval = $this->lastresult; $error++; - } - else - { + } else { dol_syslog(get_class($this)."::run_jobs END"); $this->lastoutput = $object->output; $this->lastresult = var_export($result, true); @@ -1116,9 +1095,7 @@ class Cronjob extends CommonObject if (!is_array($params_arr)) { $result = call_user_func($this->methodename, $this->params); - } - else - { + } else { $result = call_user_func_array($this->methodename, $params_arr); } @@ -1131,9 +1108,7 @@ class Cronjob extends CommonObject $this->lastresult = is_numeric($result) ? $result : -1; $retval = $this->lastresult; $error++; - } - else - { + } else { $this->lastoutput = var_export($result, true); $this->lastresult = var_export($result, true); // Return code $retval = $this->lastresult; @@ -1201,9 +1176,7 @@ class Cronjob extends CommonObject $this->error = "User Error : ".$user->error; dol_syslog(get_class($this)."::reprogram_jobs ".$this->error, LOG_ERR); return -1; - } - else - { + } else { if (empty($user->id)) { $this->error = " User user login:".$userlogin." do not exists"; @@ -1229,9 +1202,7 @@ class Cronjob extends CommonObject // TODO For exact frequency (every month, every year, ...), use instead a dol_time_plus_duree($time, $duration_value, $duration_unit) } - } - else - { + } else { //$this->datenextrun=$this->datenextrun + ($this->frequency * $this->unitfrequency); dol_syslog(get_class($this)."::reprogram_jobs datenextrun is already in future, we do not change it"); } diff --git a/htdocs/cron/list.php b/htdocs/cron/list.php index e9afad3b48b..45c938da7bf 100644 --- a/htdocs/cron/list.php +++ b/htdocs/cron/list.php @@ -132,9 +132,7 @@ if (empty($reshook)) { setEventMessages('Security key '.$securitykey.' is wrong', null, 'errors'); $action = ''; - } - else - { + } else { $object = new Cronjob($db); $job = $object->fetch($id); @@ -155,9 +153,7 @@ if (empty($reshook)) else setEventMessages($langs->trans("JobFinished"), null, 'errors'); } $action = ''; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); $action = ''; } @@ -196,9 +192,7 @@ if (empty($reshook)) elseif ($massaction == 'enable') $result = $tmpcron->setStatut(Cronjob::STATUS_ENABLED); //else dol_print_error($db, 'Bad value for massaction'); if ($result < 0) setEventMessages($tmpcron->error, $tmpcron->errors, 'errors'); - } - else - { + } else { $error++; } } @@ -444,9 +438,7 @@ if ($num > 0) $object->ref = $langs->trans($obj->label); print $object->getNomUrl(0, '', 1); $object->ref = $obj->rowid; - } - else - { + } else { //print $langs->trans('CronNone'); } print ''; @@ -466,8 +458,7 @@ if ($num > 0) $texttoshow .= $langs->trans('CronMethod').': '.$obj->methodename; $texttoshow .= '
    '.$langs->trans('CronArgs').': '.$obj->params; $texttoshow .= '
    '.$langs->trans('Comment').': '.$langs->trans($obj->note); - } - elseif ($obj->jobtype == 'command') + } elseif ($obj->jobtype == 'command') { $text = $langs->trans('CronCommand'); $texttoshow = $langs->trans('CronCommand').': '.dol_trunc($obj->command); @@ -586,9 +577,7 @@ if ($num > 0) $i++; } -} -else -{ +} else { print ''.$langs->trans('CronNoJobs').''; } diff --git a/htdocs/datapolicy/class/actions_datapolicy.class.php b/htdocs/datapolicy/class/actions_datapolicy.class.php index 3ef5a12d720..74c254d395f 100644 --- a/htdocs/datapolicy/class/actions_datapolicy.class.php +++ b/htdocs/datapolicy/class/actions_datapolicy.class.php @@ -117,15 +117,15 @@ class ActionsDatapolicy $object->state_id = ''; $object->skype = ''; $object->country_id = ''; - $object->note_private = $object->note_private . '
    ' . $langs->trans('ANONYMISER_AT', dol_print_date(time())); + $object->note_private = $object->note_private.'
    '.$langs->trans('ANONYMISER_AT', dol_print_date(time())); if ($object->update($object->id, $user, 0)) { // On supprime les contacts associé - $sql = "DELETE FROM " . MAIN_DB_PREFIX . "socpeople WHERE fk_soc = " . $object->id; + $sql = "DELETE FROM ".MAIN_DB_PREFIX."socpeople WHERE fk_soc = ".$object->id; $this->db->query($sql); setEventMessages($langs->trans('ANONYMISER_SUCCESS'), array()); - header('Location:' . $_SERVER["PHP_SELF"] . "?socid=" . $object->id); + header('Location:'.$_SERVER["PHP_SELF"]."?socid=".$object->id); } } } elseif ($parameters['currentcontext'] == 'thirdpartycard' && $action == 'datapolicy_portabilite') { @@ -394,40 +394,40 @@ class ActionsDatapolicy if ($parameters['currentcontext'] == 'thirdpartycard') { if (GETPOST('action') == 'create' || GETPOST('action') == 'edit' || GETPOST('action') == '') { $jsscript .= ''; } elseif (GETPOST('action') == 'confirm_delete' && GETPOST('confirm') == 'yes' && GETPOST('socid') > 0) { // La suppression n'a pas été possible - require_once DOL_DOCUMENT_ROOT . '/societe/class/societe.class.php'; + require_once DOL_DOCUMENT_ROOT.'/societe/class/societe.class.php'; $societe = new Societe($this->db); $societe->fetch(GETPOST('socid')); // On vérifie si il est utilisé if ((in_array($object->forme_juridique_code, array(11, 12, 13, 15, 17, 18, 19, 35, 60, 200, 311, 312, 316, 401, 600, 700, 1005)) || $societe->typent_id == 8) && $societe->isObjectUsed(GETPOST('socid'))) { - require_once DOL_DOCUMENT_ROOT . '/core/class/html.form.class.php'; + require_once DOL_DOCUMENT_ROOT.'/core/class/html.form.class.php'; $form = new Form($this->db); - echo $form->formconfirm($_SERVER["PHP_SELF"] . "?socid=" . GETPOST('socid'), substr($langs->trans("DATAPOLICIES_POPUP_ANONYME_TITLE"), 0, strlen($langs->trans("DATAPOLICIES_POPUP_ANONYME_TITLE")) - 2), $langs->trans("DATAPOLICIES_POPUP_ANONYME_TEXTE"), 'anonymiser', '', '', 1); + echo $form->formconfirm($_SERVER["PHP_SELF"]."?socid=".GETPOST('socid'), substr($langs->trans("DATAPOLICIES_POPUP_ANONYME_TITLE"), 0, strlen($langs->trans("DATAPOLICIES_POPUP_ANONYME_TITLE")) - 2), $langs->trans("DATAPOLICIES_POPUP_ANONYME_TEXTE"), 'anonymiser', '', '', 1); } } if (GETPOST('socid')) { - require_once DOL_DOCUMENT_ROOT . '/societe/class/societe.class.php'; + require_once DOL_DOCUMENT_ROOT.'/societe/class/societe.class.php'; $societe = new Societe($this->db); $societe->fetch(GETPOST('socid')); if (!in_array($object->forme_juridique_code, array(11, 12, 13, 15, 17, 18, 19, 35, 60, 200, 311, 312, 316, 401, 600, 700, 1005)) && $societe->typent_id != 8) { - require_once DOL_DOCUMENT_ROOT . '/core/class/html.form.class.php'; + require_once DOL_DOCUMENT_ROOT.'/core/class/html.form.class.php'; $jsscript .= ''; } } diff --git a/htdocs/datapolicy/class/datapolicycron.class.php b/htdocs/datapolicy/class/datapolicycron.class.php index 13598015688..280f900f307 100644 --- a/htdocs/datapolicy/class/datapolicycron.class.php +++ b/htdocs/datapolicy/class/datapolicycron.class.php @@ -1,6 +1,6 @@ - * Copyright (C) 2018 Frédéric France + * Copyright (C) 2018-2020 Frédéric France * * 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 @@ -470,19 +470,19 @@ class DataPolicyCron { $sql = sprintf($params['sql'], (int) $conf->entity, (int) $conf->global->$key, (int) $conf->global->$key); - $resql = $db->query($sql); + $resql = $this->db->query($sql); - if ($resql && $db->num_rows($resql) > 0) + if ($resql && $this->db->num_rows($resql) > 0) { - $num = $db->num_rows($resql); + $num = $this->db->num_rows($resql); $i = 0; require_once $params['file']; - $object = new $params['class']($db); + $object = new $params['class']($this->db); while ($i < $num && !$error) { - $obj = $db->fetch_object($resql); + $obj = $this->db->fetch_object($resql); $object->fetch($obj->rowid); $object->id = $obj->rowid; @@ -505,9 +505,7 @@ class DataPolicyCron $error++; } } - } - else - { + } else { $errormsg = $object->error; $error++; } @@ -538,9 +536,7 @@ class DataPolicyCron if (!$error) { $this->output = $nbupdated.' record updated, '.$nbdeleted.' record deleted'; - } - else - { + } else { $this->error = $errormsg; } diff --git a/htdocs/dav/dav.class.php b/htdocs/dav/dav.class.php index 60912b86a8a..195f8e800a7 100644 --- a/htdocs/dav/dav.class.php +++ b/htdocs/dav/dav.class.php @@ -88,9 +88,7 @@ class CdavLib LEFT JOIN '.MAIN_DB_PREFIX.'societe AS s ON (s.rowid = sc.fk_soc) LEFT JOIN '.MAIN_DB_PREFIX.'socpeople AS sp ON (sp.fk_soc = sc.fk_soc AND sp.rowid = a.fk_contact) LEFT JOIN '.MAIN_DB_PREFIX.'actioncomm_cdav AS ac ON (a.id = ac.fk_object)'; - } - else - { + } else { $sql .= ' LEFT JOIN '.MAIN_DB_PREFIX.'societe AS s ON (s.rowid = a.fk_soc) LEFT JOIN '.MAIN_DB_PREFIX.'socpeople AS sp ON (sp.rowid = a.fk_contact) LEFT JOIN '.MAIN_DB_PREFIX.'actioncomm_cdav AS ac ON (a.id = ac.fk_object)'; @@ -105,9 +103,7 @@ class CdavLib if ($ouri === false) { $sql .= ' AND a.id = '.intval($oid); - } - else - { + } else { $sql .= ' AND (a.id = '.intval($oid).' OR ac.uuidext = \''.$this->db->escape($ouri).'\')'; } } @@ -161,8 +157,7 @@ class CdavLib if ($obj->percent == -1 && trim($obj->datep) != '') $type = 'VEVENT'; - else - $type = 'VTODO'; + else $type = 'VTODO'; $timezone = date_default_timezone_get(); @@ -176,8 +171,7 @@ class CdavLib $caldata .= "DTSTAMP:".gmdate('Ymd\THis', strtotime($obj->lastupd))."Z\n"; if ($obj->sourceuid == '') $caldata .= "UID:".$obj->id.'-ev-'.$calid.'-cal-'.constant('CDAV_URI_KEY')."\n"; - else - $caldata .= "UID:".$obj->sourceuid."\n"; + else $caldata .= "UID:".$obj->sourceuid."\n"; $caldata .= "SUMMARY:".$obj->label."\n"; $caldata .= "LOCATION:".$location."\n"; $caldata .= "PRIORITY:".$obj->priority."\n"; @@ -188,30 +182,23 @@ class CdavLib { if (trim($obj->datep2) != '') $caldata .= "DTEND;VALUE=DATE:".date('Ymd', strtotime($obj->datep2) + 1)."\n"; - else - $caldata .= "DTEND;VALUE=DATE:".date('Ymd', strtotime($obj->datep) + (25 * 3600))."\n"; - } - elseif (trim($obj->datep2) != '') + else $caldata .= "DTEND;VALUE=DATE:".date('Ymd', strtotime($obj->datep) + (25 * 3600))."\n"; + } elseif (trim($obj->datep2) != '') $caldata .= "DUE;VALUE=DATE:".date('Ymd', strtotime($obj->datep2) + 1)."\n"; - } - else - { + } else { $caldata .= "DTSTART;TZID=".$timezone.":".strtr($obj->datep, array(" "=>"T", ":"=>"", "-"=>""))."\n"; if ($type == 'VEVENT') { if (trim($obj->datep2) != '') $caldata .= "DTEND;TZID=".$timezone.":".strtr($obj->datep2, array(" "=>"T", ":"=>"", "-"=>""))."\n"; - else - $caldata .= "DTEND;TZID=".$timezone.":".strtr($obj->datep, array(" "=>"T", ":"=>"", "-"=>""))."\n"; - } - elseif (trim($obj->datep2) != '') + else $caldata .= "DTEND;TZID=".$timezone.":".strtr($obj->datep, array(" "=>"T", ":"=>"", "-"=>""))."\n"; + } elseif (trim($obj->datep2) != '') $caldata .= "DUE;TZID=".$timezone.":".strtr($obj->datep2, array(" "=>"T", ":"=>"", "-"=>""))."\n"; } $caldata .= "CLASS:PUBLIC\n"; if ($obj->transparency == 1) $caldata .= "TRANSP:TRANSPARENT\n"; - else - $caldata .= "TRANSP:OPAQUE\n"; + else $caldata .= "TRANSP:OPAQUE\n"; if ($type == 'VEVENT') $caldata .= "STATUS:CONFIRMED\n"; @@ -219,8 +206,7 @@ class CdavLib $caldata .= "STATUS:NEEDS-ACTION\n"; elseif ($obj->percent == 100) $caldata .= "STATUS:COMPLETED\n"; - else - { + else { $caldata .= "STATUS:IN-PROCESS\n"; $caldata .= "PERCENT-COMPLETE:".$obj->percent."\n"; } @@ -284,9 +270,7 @@ class CdavLib 'size' => strlen($calendardata), 'component' => strpos($calendardata, 'BEGIN:VEVENT') > 0 ? 'vevent' : 'vtodo', ); - } - else - { + } else { $calevents[] = array( // 'calendardata' => $calendardata, not necessary because etag+size are present 'uri' => $obj->id.'-ev-'.constant('CDAV_URI_KEY'), diff --git a/htdocs/dav/dav.lib.php b/htdocs/dav/dav.lib.php index b306ec7161a..bb4835c4d52 100644 --- a/htdocs/dav/dav.lib.php +++ b/htdocs/dav/dav.lib.php @@ -26,8 +26,7 @@ if (!defined('CDAV_CONTACT_TAG')) { if (isset($conf->global->CDAV_CONTACT_TAG)) define('CDAV_CONTACT_TAG', $conf->global->CDAV_CONTACT_TAG); - else - define('CDAV_CONTACT_TAG', ''); + else define('CDAV_CONTACT_TAG', ''); } // define CDAV_URI_KEY if not @@ -35,8 +34,7 @@ if (!defined('CDAV_URI_KEY')) { if (isset($conf->global->CDAV_URI_KEY)) define('CDAV_URI_KEY', $conf->global->CDAV_URI_KEY); - else - define('CDAV_URI_KEY', substr(md5($_SERVER['HTTP_HOST']), 0, 8)); + else define('CDAV_URI_KEY', substr(md5($_SERVER['HTTP_HOST']), 0, 8)); } diff --git a/htdocs/dav/fileserver.php b/htdocs/dav/fileserver.php index ce3157414f5..18b8bc8b07c 100644 --- a/htdocs/dav/fileserver.php +++ b/htdocs/dav/fileserver.php @@ -82,7 +82,7 @@ $tmpDir = $conf->dav->multidir_output[$entity]; // We need root dir, not a dir t // Authentication callback function -$authBackend = new \Sabre\DAV\Auth\Backend\BasicCallBack(function($username, $password) { +$authBackend = new \Sabre\DAV\Auth\Backend\BasicCallBack(function ($username, $password) { global $user; global $conf; global $dolibarr_main_authentication, $dolibarr_auto_user; diff --git a/htdocs/debugbar/class/DataCollector/DolLogsCollector.php b/htdocs/debugbar/class/DataCollector/DolLogsCollector.php index fd9f993e1e8..1ff336a16b8 100644 --- a/htdocs/debugbar/class/DataCollector/DolLogsCollector.php +++ b/htdocs/debugbar/class/DataCollector/DolLogsCollector.php @@ -77,9 +77,7 @@ class DolLogsCollector extends MessagesCollector if ($uselogfile) { $this->getStorageLogs($this->path); - } - else - { + } else { $log_levels = $this->getLevels(); foreach ($conf->logbuffer as $line) { diff --git a/htdocs/debugbar/class/autoloader.php b/htdocs/debugbar/class/autoloader.php index a68ace2c3c0..1d5c85c975d 100644 --- a/htdocs/debugbar/class/autoloader.php +++ b/htdocs/debugbar/class/autoloader.php @@ -4,7 +4,7 @@ * Simple autoloader, so we don't need Composer just for this. */ -spl_autoload_register(function($class) { +spl_autoload_register(function ($class) { if (preg_match('/^DebugBar/', $class) || preg_match('/^'.preg_quote('Psr\Log', '/').'/', $class)) { $file = DOL_DOCUMENT_ROOT.'/includes/'.str_replace('\\', DIRECTORY_SEPARATOR, $class).'.php'; //var_dump($class.' - '.file_exists($file).' - '.$file); diff --git a/htdocs/document.php b/htdocs/document.php index c1ed149649e..3afa7d252cf 100644 --- a/htdocs/document.php +++ b/htdocs/document.php @@ -133,20 +133,14 @@ if (!empty($hashp)) // We remove first level of directory $original_file = (($tmp[1] ? $tmp[1].'/' : '').$ecmfile->filename); // this is relative to module dir //var_dump($original_file); exit; - } - else - { + } else { accessforbidden('Bad link. File is from another module part.', 0, 0, 1); } - } - else - { + } else { $modulepart = $moduleparttocheck; $original_file = (($tmp[1] ? $tmp[1].'/' : '').$ecmfile->filename); // this is relative to module dir } - } - else - { + } else { $langs->load("errors"); accessforbidden($langs->trans("ErrorFileNotFoundWithSharedLink"), 0, 0, 1); } @@ -184,9 +178,7 @@ if (!empty($hashp)) { $accessallowed = 1; // When using hashp, link is public so we force $accessallowed $sqlprotectagainstexternals = ''; -} -else -{ +} else { // Basic protection (against external users only) if ($user->socid > 0) { diff --git a/htdocs/don/admin/donation.php b/htdocs/don/admin/donation.php index e8e7fa4f5b9..5c0d8fc8576 100644 --- a/htdocs/don/admin/donation.php +++ b/htdocs/don/admin/donation.php @@ -70,15 +70,11 @@ if ($action == 'specimen') { header("Location: ".DOL_URL_ROOT."/document.php?modulepart=donation&file=SPECIMEN.html"); return; - } - else - { + } else { setEventMessages($obj->error, $obj->errors, 'errors'); dol_syslog($obj->error, LOG_ERR); } - } - else - { + } else { setEventMessages($langs->trans("ErrorModuleNotFound"), null, 'errors'); dol_syslog($langs->trans("ErrorModuleNotFound"), LOG_ERR); } @@ -106,9 +102,7 @@ elseif ($action == 'setdoc') elseif ($action == 'set') { $ret = addDocumentModel($value, $type, $label, $scandir); -} - -elseif ($action == 'del') +} elseif ($action == 'del') { $ret = delDocumentModel($value, $type); if ($ret > 0) @@ -129,9 +123,7 @@ if ($action == 'set_DONATION_ACCOUNTINGACCOUNT') if (!$error) { setEventMessages($langs->trans("SetupSaved"), null, 'mesgs'); - } - else - { + } else { setEventMessages($langs->trans("Error"), null, 'errors'); } } @@ -147,9 +139,7 @@ if ($action == 'set_DONATION_MESSAGE') if (!$error) { setEventMessages($langs->trans("SetupSaved"), null, 'mesgs'); - } - else - { + } else { setEventMessages($langs->trans("Error"), null, 'errors'); } } @@ -164,9 +154,7 @@ if (preg_match('/set_([a-z0-9_\-]+)/i', $action, $reg)) { header("Location: ".$_SERVER["PHP_SELF"]); exit; - } - else - { + } else { dol_print_error($db); } } @@ -178,9 +166,7 @@ if (preg_match('/del_([a-z0-9_\-]+)/i', $action, $reg)) { header("Location: ".$_SERVER["PHP_SELF"]); exit; - } - else - { + } else { dol_print_error($db); } } @@ -222,9 +208,7 @@ if ($resql) array_push($def, $array[0]); $i++; } -} -else -{ +} else { dol_print_error($db); } @@ -275,16 +259,12 @@ if (is_resource($handle)) print "\n"; print img_picto($langs->trans("Enabled"), 'switch_on'); print ''; - } - else - { + } else { print "\n"; print '
    scandir.'&label='.urlencode($module->name).'">'.img_picto($langs->trans("Enabled"), 'switch_on').''; print ''; } - } - else - { + } else { print "\n"; print 'scandir.'&label='.urlencode($module->name).'">'.img_picto($langs->trans("Disabled"), 'switch_off').''; print ""; @@ -296,9 +276,7 @@ if (is_resource($handle)) print ""; print img_picto($langs->trans("Default"), 'on'); print ''; - } - else - { + } else { print ""; print 'scandir.'&label='.urlencode($module->name).'" alt="'.$langs->trans("Default").'">'.img_picto($langs->trans("Disabled"), 'off').''; print ''; @@ -370,9 +348,7 @@ print ''; if (!empty($conf->accounting->enabled)) { print $formaccounting->select_account($conf->global->DONATION_ACCOUNTINGACCOUNT, 'DONATION_ACCOUNTINGACCOUNT', 1, '', 1, 1); -} -else -{ +} else { print ''; } print ''; diff --git a/htdocs/don/card.php b/htdocs/don/card.php index 4eb6123b305..90498568d6e 100644 --- a/htdocs/don/card.php +++ b/htdocs/don/card.php @@ -180,9 +180,7 @@ if ($action == 'add') { header("Location: ".$_SERVER['PHP_SELF'].'?id='.$res); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -195,9 +193,7 @@ if ($action == 'confirm_delete' && GETPOST("confirm") == "yes" && $user->rights- { header("Location: index.php"); exit; - } - else - { + } else { dol_syslog($object->error, LOG_DEBUG); setEventMessages($object->error, $object->errors, 'errors'); } @@ -211,8 +207,7 @@ if ($action == 'valid_promesse') header("Location: ".$_SERVER['PHP_SELF']."?id=".$id); exit; - } - else { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -223,8 +218,7 @@ if ($action == 'set_cancel') { header("Location: ".$_SERVER['PHP_SELF']."?id=".$id); exit; - } - else { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -235,12 +229,10 @@ if ($action == 'set_paid') { header("Location: ".$_SERVER['PHP_SELF']."?id=".$id); exit; - } - else { + } else { setEventMessages($object->error, $object->errors, 'errors'); } -} -elseif ($action == 'classin' && $user->rights->don->creer) +} elseif ($action == 'classin' && $user->rights->don->creer) { $object->fetch($id); $object->setProject($projectid); @@ -318,7 +310,7 @@ if (!empty($conf->projet->enabled)) { $formproject = new FormProjets($db); } if ($action == 'create') { - print load_fiche_titre($langs->trans("AddDonation"), '', 'invoicing'); + print load_fiche_titre($langs->trans("AddDonation"), '', 'object_donation'); print '
    '; print ''; @@ -354,9 +346,7 @@ if ($action == 'create') } print ')'; print ''; - } - else - { + } else { print ''; print $form->select_company($soc->id, 'socid', '(s.client = 1 OR s.client = 3) AND status=1', 'SelectThirdParty', 0, 0, null, 0, 'minwidth300'); // Option to reload page to retrieve customer informations. Note, this clear other input @@ -500,7 +490,7 @@ if (!empty($id) && $action == 'edit') print ''; - dol_fiche_head($head, $hselected, $langs->trans("Donation"), 0, 'generic'); + dol_fiche_head($head, $hselected, $langs->trans("Donation"), 0, 'donation'); print ''; @@ -519,9 +509,7 @@ if (!empty($id) && $action == 'edit') if ($object->statut == 0) { print "".''; - } - else - { + } else { print ''; @@ -629,7 +617,7 @@ if (!empty($id) && $action != 'edit') $hselected = 'card'; $head = donation_prepare_head($object); - dol_fiche_head($head, $hselected, $langs->trans("Donation"), -1, 'generic'); + dol_fiche_head($head, $hselected, $langs->trans("Donation"), -1, 'donation'); // Print form confirm print $formconfirm; @@ -776,9 +764,7 @@ if (!empty($id) && $action != 'edit') } print "
    '.$langs->trans("Amount").' '.$langs->trans("Currency".$conf->currency).'
    '.$langs->trans("Amount").''; print price($object->amount, 0, $langs, 0, 0, -1, $conf->currency); print '
    "; $db->free($resql); - } - else - { + } else { dol_print_error($db); } @@ -814,9 +800,7 @@ if (!empty($id) && $action != 'edit') if ($remaintopay == 0) { print '
    '.$langs->trans('DoPayment').'
    '; - } - else - { + } else { print ''; } } @@ -833,14 +817,10 @@ if (!empty($id) && $action != 'edit') if ($object->statut == -1 || $object->statut == 0) { print '"; - } - else - { + } else { print '"; } - } - else - { + } else { print '"; } diff --git a/htdocs/don/class/api_donations.class.php b/htdocs/don/class/api_donations.class.php index 872e2009b9b..5d35b24707f 100644 --- a/htdocs/don/class/api_donations.class.php +++ b/htdocs/don/class/api_donations.class.php @@ -157,8 +157,7 @@ class Donations extends DolibarrApi } $i++; } - } - else { + } else { throw new RestException(503, 'Error when retrieve donation list : '.$db->lasterror()); } if (!count($obj_ret)) { @@ -230,9 +229,7 @@ class Donations extends DolibarrApi if ($this->don->update(DolibarrApiAccess::$user) > 0) { return $this->get($id); - } - else - { + } else { throw new RestException(500, $this->don->error); } } diff --git a/htdocs/don/class/don.class.php b/htdocs/don/class/don.class.php index 8260656e4d0..6b6cbb3d36e 100644 --- a/htdocs/don/class/don.class.php +++ b/htdocs/don/class/don.class.php @@ -60,7 +60,7 @@ class Don extends CommonObject /** * @var string String with name of icon for object don. Must be the part after the 'object_' into object_myobject.png */ - public $picto = 'generic'; + public $picto = 'donation'; /** * @var string Date of the donation @@ -314,9 +314,7 @@ class Don extends CommonObject { $error_string[] = $langs->trans('ErrorFieldRequired', $langs->transnoentitiesnoconv('Amount')); $err++; - } - else - { + } else { if ($this->amount < $minimum && $minimum > 0) { $error_string[] = $langs->trans('MinimumAmount', $langs->transnoentitiesnoconv('$minimum')); @@ -329,9 +327,7 @@ class Don extends CommonObject { $this->errors = $error_string; return 0; - } - else - { + } else { return 1; } } @@ -422,9 +418,7 @@ class Don extends CommonObject if ($result < 0) { $error++; } // End call triggers } - } - else - { + } else { $this->error = $this->db->lasterror(); $this->errno = $this->db->lasterrno(); $error++; @@ -432,7 +426,7 @@ class Don extends CommonObject // Update extrafield if (!$error) { - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + if (!$error) { $result = $this->insertExtraFields(); if ($result < 0) @@ -452,9 +446,7 @@ class Don extends CommonObject { $this->db->commit(); return $ret; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -519,7 +511,7 @@ class Don extends CommonObject // Update extrafield if (!$error) { - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + if (!$error) { $result = $this->insertExtraFields(); if ($result < 0) @@ -533,15 +525,11 @@ class Don extends CommonObject { $this->db->commit(); $result = 1; - } - else - { + } else { $this->db->rollback(); $result = -1; } - } - else - { + } else { $this->error = $this->db->lasterror(); $this->errors[] = $this->error; $this->db->rollback(); @@ -612,9 +600,7 @@ class Don extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { foreach ($this->errors as $errmsg) { dol_syslog(get_class($this)."::delete ".$errmsg, LOG_ERR); @@ -652,8 +638,7 @@ class Don extends CommonObject if (!empty($id)) { $sql .= " AND d.rowid=".$id; - } - elseif (!empty($ref)) + } elseif (!empty($ref)) { $sql .= " AND d.ref='".$this->db->escape($ref)."'"; } @@ -708,9 +693,7 @@ class Don extends CommonObject $this->fetch_optionals(); } return 1; - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -761,9 +744,7 @@ class Don extends CommonObject // End call triggers } } - } - else - { + } else { $error++; $this->error = $this->db->lasterror(); } @@ -772,9 +753,7 @@ class Don extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -804,14 +783,10 @@ class Don extends CommonObject if ($this->db->affected_rows($resql)) { return 1; - } - else - { + } else { return 0; } - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -835,14 +810,10 @@ class Don extends CommonObject if ($this->db->affected_rows($resql)) { return 1; - } - else - { + } else { return 0; } - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -904,9 +875,7 @@ class Don extends CommonObject } $this->db->free($resql); return 1; - } - else - { + } else { dol_print_error($this->db); $this->error = $this->db->error(); return -1; @@ -916,22 +885,36 @@ class Don extends CommonObject /** * Return clicable name (with picto eventually) * - * @param int $withpicto 0=No picto, 1=Include picto into link, 2=Only picto - * @param int $notooltip 1=Disable tooltip - * @return string Chaine avec URL + * @param int $withpicto 0=No picto, 1=Include picto into link, 2=Only picto + * @param int $notooltip 1=Disable tooltip + * @param string $moretitle Add more text to title tooltip + * @param int $save_lastsearch_value -1=Auto, 0=No save of lastsearch_values when clicking, 1=Save lastsearch_values whenclicking + * @return string Chaine avec URL */ - public function getNomUrl($withpicto = 0, $notooltip = 0) + public function getNomUrl($withpicto = 0, $notooltip = 0, $moretitle = '', $save_lastsearch_value = -1) { - global $langs; + global $conf, $langs; + + if (!empty($conf->dol_no_mouse_hover)) $notooltip = 1; // Force disable tooltips $result = ''; - $label = $langs->trans("ShowDonation").': '.$this->id; + $label = ''.$langs->trans("Donation").''; + if (!empty($this->id)) { + $label .= '
    '.$langs->trans('Ref').': '.$this->id; + } + if ($moretitle) $label .= ' - '.$moretitle; - $linkstart = ''; + $url = DOL_URL_ROOT.'/don/card.php?id='.$this->id; + + $add_save_lastsearch_values = ($save_lastsearch_value == 1 ? 1 : 0); + if ($save_lastsearch_value == -1 && preg_match('/list\.php/', $_SERVER["PHP_SELF"])) $add_save_lastsearch_values = 1; + if ($add_save_lastsearch_values) $url .= '&save_lastsearch_values=1'; + + $linkstart = ''; $linkend = ''; $result .= $linkstart; - if ($withpicto) $result .= img_object(($notooltip ? '' : $label), ($this->picto ? $this->picto : 'generic'), ($notooltip ? (($withpicto != 2) ? 'class="paddingright"' : '') : 'class="'.(($withpicto != 2) ? 'paddingright ' : '').'classfortooltip"'), 0, 0, $notooltip ? 0 : 1); + if ($withpicto) $result .= img_object(($notooltip ? '' : $label), $this->picto, ($notooltip ? (($withpicto != 2) ? 'class="paddingright"' : '') : 'class="'.(($withpicto != 2) ? 'paddingright ' : '').'classfortooltip"'), 0, 0, $notooltip ? 0 : 1); if ($withpicto != 2) $result .= $this->ref; $result .= $linkend; @@ -976,9 +959,7 @@ class Don extends CommonObject $this->date_modification = $this->db->jdate($obj->tms); } $this->db->free($result); - } - else - { + } else { dol_print_error($this->db); } } @@ -1074,17 +1055,13 @@ class Don extends CommonObject require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; dol_delete_preview($object); return 1; - } - else - { + } else { $outputlangs->charset_output = $sav_charset_output; dol_syslog("Erreur dans don_create"); dol_print_error($this->db, $obj->error); return 0; } - } - else - { + } else { print $langs->trans("Error")." ".$langs->trans("ErrorFileDoesNotExists", $file); return 0; } diff --git a/htdocs/don/class/paymentdonation.class.php b/htdocs/don/class/paymentdonation.class.php index ee8156c229e..e9a38c50bef 100644 --- a/htdocs/don/class/paymentdonation.class.php +++ b/htdocs/don/class/paymentdonation.class.php @@ -55,11 +55,17 @@ class PaymentDonation extends CommonObject public $fk_donation; public $datec = ''; + public $tms = ''; + public $datep = ''; - public $amount; // Total amount of payment - public $amounts = array(); // Array of amounts + + public $amount; // Total amount of payment + + public $amounts = array(); // Array of amounts + public $typepayment; + public $num_payment; /** @@ -121,14 +127,14 @@ class PaymentDonation extends CommonObject } // Clean parameters - if (isset($this->fk_donation)) $this->fk_donation = (int) $this->fk_donation; - if (isset($this->amount)) $this->amount = trim($this->amount); + if (isset($this->fk_donation)) $this->fk_donation = (int) $this->fk_donation; + if (isset($this->amount)) $this->amount = trim($this->amount); if (isset($this->fk_typepayment)) $this->fk_typepayment = trim($this->fk_typepayment); - if (isset($this->num_payment)) $this->num_payment = trim($this->num_payment); - if (isset($this->note_public)) $this->note_public = trim($this->note_public); - if (isset($this->fk_bank)) $this->fk_bank = (int) $this->fk_bank; - if (isset($this->fk_user_creat)) $this->fk_user_creat = (int) $this->fk_user_creat; - if (isset($this->fk_user_modif)) $this->fk_user_modif = (int) $this->fk_user_modif; + if (isset($this->num_payment)) $this->num_payment = trim($this->num_payment); + if (isset($this->note_public)) $this->note_public = trim($this->note_public); + if (isset($this->fk_bank)) $this->fk_bank = (int) $this->fk_bank; + if (isset($this->fk_user_creat)) $this->fk_user_creat = (int) $this->fk_user_creat; + if (isset($this->fk_user_modif)) $this->fk_user_modif = (int) $this->fk_user_modif; $totalamount = 0; foreach ($this->amounts as $key => $value) // How payment is dispatch @@ -161,9 +167,7 @@ class PaymentDonation extends CommonObject { $this->id = $this->db->last_insert_id(MAIN_DB_PREFIX."payment_donation"); $this->ref = $this->id; - } - else - { + } else { $error++; } } @@ -182,9 +186,7 @@ class PaymentDonation extends CommonObject $this->total = $totalamount; // deprecated $this->db->commit(); return $this->id; - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -1; @@ -228,33 +230,31 @@ class PaymentDonation extends CommonObject { $obj = $this->db->fetch_object($resql); - $this->id = $obj->rowid; - $this->ref = $obj->rowid; + $this->id = $obj->rowid; + $this->ref = $obj->rowid; - $this->fk_donation = $obj->fk_donation; - $this->datec = $this->db->jdate($obj->datec); - $this->tms = $this->db->jdate($obj->tms); - $this->datep = $this->db->jdate($obj->datep); - $this->amount = $obj->amount; + $this->fk_donation = $obj->fk_donation; + $this->datec = $this->db->jdate($obj->datec); + $this->tms = $this->db->jdate($obj->tms); + $this->datep = $this->db->jdate($obj->datep); + $this->amount = $obj->amount; $this->fk_typepayment = $obj->fk_typepayment; - $this->num_payment = $obj->num_payment; - $this->note_public = $obj->note_public; - $this->fk_bank = $obj->fk_bank; - $this->fk_user_creat = $obj->fk_user_creat; - $this->fk_user_modif = $obj->fk_user_modif; + $this->num_payment = $obj->num_payment; + $this->note_public = $obj->note_public; + $this->fk_bank = $obj->fk_bank; + $this->fk_user_creat = $obj->fk_user_creat; + $this->fk_user_modif = $obj->fk_user_modif; - $this->type_code = $obj->type_code; + $this->type_code = $obj->type_code; $this->type_label = $obj->type_label; $this->bank_account = $obj->fk_account; - $this->bank_line = $obj->fk_bank; + $this->bank_line = $obj->fk_bank; } $this->db->free($resql); return 1; - } - else - { + } else { $this->error = "Error ".$this->db->lasterror(); return -1; } @@ -335,9 +335,7 @@ class PaymentDonation extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } @@ -405,9 +403,7 @@ class PaymentDonation extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } @@ -460,9 +456,7 @@ class PaymentDonation extends CommonObject { $this->db->commit(); return $object->id; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -586,9 +580,7 @@ class PaymentDonation extends CommonObject dol_print_error($this->db); } } - } - else - { + } else { $this->error = $acc->error; $error++; } @@ -597,9 +589,7 @@ class PaymentDonation extends CommonObject if (!$error) { return 1; - } - else - { + } else { return -1; } } @@ -622,9 +612,7 @@ class PaymentDonation extends CommonObject if ($result) { return 1; - } - else - { + } else { $this->error = $this->db->error(); return 0; } diff --git a/htdocs/don/document.php b/htdocs/don/document.php index 8dbb6f99fda..0d56ff5bd63 100644 --- a/htdocs/don/document.php +++ b/htdocs/don/document.php @@ -55,11 +55,12 @@ $result = restrictedArea($user, 'don', $id, ''); // Get parameters +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST('sortfield', 'alpha'); $sortorder = GETPOST('sortorder', 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; if (!$sortorder) $sortorder = "ASC"; @@ -103,7 +104,7 @@ if ($object->id) $head = donation_prepare_head($object); - dol_fiche_head($head, 'documents', $langs->trans("Donation"), -1, 'generic'); + dol_fiche_head($head, 'documents', $langs->trans("Donation"), -1, 'donation'); // Build file list @@ -185,9 +186,7 @@ if ($object->id) $permtoedit = $user->rights->don->creer; $param = '&id='.$object->id; include_once DOL_DOCUMENT_ROOT.'/core/tpl/document_actions_post_headers.tpl.php'; -} -else -{ +} else { print $langs->trans("ErrorUnknown"); } diff --git a/htdocs/don/index.php b/htdocs/don/index.php index 3f74cfa53a1..030d61d03de 100644 --- a/htdocs/don/index.php +++ b/htdocs/don/index.php @@ -85,7 +85,7 @@ if ($result) dol_print_error($db); } -print load_fiche_titre($langs->trans("DonationsArea"), '', 'invoicing'); +print load_fiche_titre($langs->trans("DonationsArea"), '', 'object_donation'); print '
    '; @@ -246,8 +246,7 @@ if ($resql) } } print "
    "; -} -else dol_print_error($db); +} else dol_print_error($db); print '
    '; diff --git a/htdocs/don/info.php b/htdocs/don/info.php index cff4aceae79..170c577dc00 100644 --- a/htdocs/don/info.php +++ b/htdocs/don/info.php @@ -67,7 +67,7 @@ $object->info($id); $head = donation_prepare_head($object); -dol_fiche_head($head, 'info', $langs->trans("Donation"), -1, 'generic'); +dol_fiche_head($head, 'info', $langs->trans("Donation"), -1, 'donation'); $linkback = ''.$langs->trans("BackToList").''; diff --git a/htdocs/don/list.php b/htdocs/don/list.php index a61a97f7c78..cc12daabb6c 100644 --- a/htdocs/don/list.php +++ b/htdocs/don/list.php @@ -32,10 +32,12 @@ if (!empty($conf->projet->enabled)) require_once DOL_DOCUMENT_ROOT.'/projet/clas // Load translation files required by the page $langs->loadLangs(array("companies", "donations")); +$contextpage = GETPOST('contextpage', 'aZ') ?GETPOST('contextpage', 'aZ') : 'sclist'; + +$limit = GETPOST('limit', 'int') ?GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); -$limit = GETPOST('limit', 'int') ?GETPOST('limit', 'int') : $conf->liste_limit; if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 $offset = $limit * $page; $pageprev = $page - 1; @@ -75,17 +77,17 @@ $fieldstosearchall = array( 'd.firstname'=>'Firstname', ); + /* * View */ +$donationstatic = new Don($db); $form = new Form($db); if (!empty($conf->projet->enabled)) $projectstatic = new Project($db); llxHeader('', $langs->trans("Donations"), 'EN:Module_Donations|FR:Module_Dons|ES:Módulo_Donaciones'); -$donationstatic = new Don($db); - // Genere requete de liste des dons $sql = "SELECT d.rowid, d.datedon, d.fk_soc as socid, d.firstname, d.lastname, d.societe,"; $sql .= " d.amount, d.fk_statut as status,"; @@ -137,6 +139,8 @@ if ($resql) $i = 0; $param = ''; + if (!empty($contextpage) && $contextpage != $_SERVER["PHP_SELF"]) $param .= '&contextpage='.urlencode($contextpage); + if ($limit > 0 && $limit != $conf->liste_limit) $param .= '&limit='.urlencode($limit); if ($optioncss != '') $param .= '&optioncss='.urlencode($optioncss); if ($search_status && $search_status != -1) $param .= '&search_status='.urlencode($search_status); if ($search_ref) $param .= '&search_ref='.urlencode($search_ref); @@ -159,7 +163,7 @@ if ($resql) print ''; print ''; - print_barre_liste($langs->trans("Donations"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, '', $num, $nbtotalofrecords, 'invoicing', 0, $newcardbutton); + print_barre_liste($langs->trans("Donations"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, '', $num, $nbtotalofrecords, 'object_donation', 0, $newcardbutton, '', $limit, 0, 0, 1); if ($search_all) { @@ -265,8 +269,7 @@ if ($resql) $projectstatic->public = $objp->public; $projectstatic->title = $objp->title; print $projectstatic->getNomUrl(1); - } - else print ' '; + } else print ' '; print "\n"; } print ''.price($objp->amount).''; @@ -279,9 +282,7 @@ if ($resql) print ''; print "
    \n"; $db->free($resql); -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/don/note.php b/htdocs/don/note.php index 08b8c05b520..111ea2399a3 100644 --- a/htdocs/don/note.php +++ b/htdocs/don/note.php @@ -83,7 +83,7 @@ if ($id > 0 || !empty($ref)) $head = donation_prepare_head($object); - dol_fiche_head($head, 'note', $langs->trans("Donation"), -1, 'generic'); + dol_fiche_head($head, 'note', $langs->trans("Donation"), -1, 'donation'); $linkback = ''.$langs->trans("BackToList").''; diff --git a/htdocs/don/payment/card.php b/htdocs/don/payment/card.php index 0017f0a8556..6d1285b5f17 100644 --- a/htdocs/don/payment/card.php +++ b/htdocs/don/payment/card.php @@ -63,9 +63,7 @@ if ($action == 'confirm_delete' && $confirm == 'yes' && $user->rights->don->supp $db->commit(); header("Location: ".DOL_URL_ROOT."/don/index.php"); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); $db->rollback(); } @@ -101,9 +99,7 @@ if ($action == 'confirm_valide' && $confirm == 'yes' && $user->rights->don->cree header('Location: card.php?id='.$object->id); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); $db->rollback(); } @@ -122,7 +118,7 @@ $form = new Form($db); $h = 0; $head[$h][0] = DOL_URL_ROOT.'/don/payment/card.php?id='.$id; -$head[$h][1] = $langs->trans("Card"); +$head[$h][1] = $langs->trans("DonationPayment"); $hselected = $h; $h++; @@ -253,9 +249,7 @@ if ($resql) print "\n"; $db->free($resql); -} -else -{ +} else { dol_print_error($db); } @@ -289,9 +283,7 @@ if (empty($action)) if (!$disable_delete) { print ''.$langs->trans('Delete').''; - } - else - { + } else { print ''.$langs->trans('Delete').''; } } diff --git a/htdocs/don/payment/payment.php b/htdocs/don/payment/payment.php index b3ab7e2d360..50c469a5f1a 100644 --- a/htdocs/don/payment/payment.php +++ b/htdocs/don/payment/payment.php @@ -137,9 +137,7 @@ if ($action == 'add_payment') $loc = DOL_URL_ROOT.'/don/card.php?rowid='.$chid; header('Location: '.$loc); exit; - } - else - { + } else { $db->rollback(); } } @@ -260,9 +258,7 @@ if ($action == 'create') { $namef = "amount_".$objp->id; print ''; - } - else - { + } else { print '-'; } print ""; diff --git a/htdocs/don/stats/index.php b/htdocs/don/stats/index.php index 46b0d93d564..bda437fa6b5 100644 --- a/htdocs/don/stats/index.php +++ b/htdocs/don/stats/index.php @@ -75,9 +75,7 @@ $data = $stats->getNbByMonthWithPrevYear($endyear, $startyear); if (!$user->rights->societe->client->voir || $user->socid) { $filenamenb = $dir.'/shipmentsnbinyear-'.$user->id.'-'.$year.'.png'; -} -else -{ +} else { $filenamenb = $dir.'/shipmentsnbinyear-'.$year.'.png'; } @@ -285,8 +283,7 @@ print '
    '; // Show graphs print ''; - } - else - { + } else { // Qty to ship or shipped print ''; @@ -2361,8 +2268,7 @@ elseif ($id || $ref) $entrepot = new Entrepot($db); $entrepot->fetch($lines[$i]->entrepot_id); print $entrepot->getNomUrl(1); - } - elseif (count($lines[$i]->details_entrepot) > 1) + } elseif (count($lines[$i]->details_entrepot) > 1) { $detail = ''; foreach ($lines[$i]->details_entrepot as $detail_entrepot) @@ -2398,9 +2304,7 @@ elseif ($id || $ref) $detail .= '
    '; } print $form->textwithtooltip(img_picto('', 'object_barcode').' '.$langs->trans("DetailBatchNumber"), $detail); - } - else - { + } else { print $langs->trans("NA"); } print ''; @@ -2431,8 +2335,7 @@ elseif ($id || $ref) print '
    '; print '
    '; print ''; - } - elseif ($object->statut == Expedition::STATUS_DRAFT) + } elseif ($object->statut == Expedition::STATUS_DRAFT) { // edit-delete buttons print ''; $i++; } - } else - { + } else { print ''; } @@ -193,8 +192,7 @@ if ($resql) print "
    '; -if ($mesg) { print $mesg; } -else { +if ($mesg) { print $mesg; } else { print $px1->show(); print "
    \n"; /*print $px2->show(); diff --git a/htdocs/ecm/ajax/ecmdatabase.php b/htdocs/ecm/ajax/ecmdatabase.php index 9f4820cd723..5ba61c53a8d 100644 --- a/htdocs/ecm/ajax/ecmdatabase.php +++ b/htdocs/ecm/ajax/ecmdatabase.php @@ -114,15 +114,11 @@ if (isset($action) && !empty($action)) //print "Yes with id ".$parentdirisindatabase."
    \n"; $fk_parent = $parentdirisindatabase; //break; // We found parent, we can stop the while loop - } - else - { + } else { dol_syslog("No"); //print "No
    \n"; } - } - else - { + } else { dol_syslog("Parent is root"); $fk_parent = 0; // Parent is root } @@ -148,13 +144,10 @@ if (isset($action) && !empty($action)) $sqltree[] = $newdirsql; // We complete fulltree for following loops //var_dump($sqltree); $adirwascreated = 1; - } - else - { + } else { dol_syslog("Failed to create directory ".$ecmdirtmp->label, LOG_ERR); } - } - else { + } else { $txt = "Parent of ".$dirdesc['fullname']." not found"; dol_syslog($txt); //print $txt."
    \n"; diff --git a/htdocs/ecm/class/ecmdirectory.class.php b/htdocs/ecm/class/ecmdirectory.class.php index 3bddd70bfaa..9c09ee0f534 100644 --- a/htdocs/ecm/class/ecmdirectory.class.php +++ b/htdocs/ecm/class/ecmdirectory.class.php @@ -164,9 +164,7 @@ class EcmDirectory // extends CommonObject $this->error = "ErrorDirAlreadyExists"; dol_syslog(get_class($this)."::create ".$this->error, LOG_WARNING); return -1; - } - else - { + } else { $this->db->begin(); // Insert request @@ -207,15 +205,11 @@ class EcmDirectory // extends CommonObject { $this->db->commit(); return $this->id; - } - else - { + } else { $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = "Error ".$this->db->lasterror(); $this->db->rollback(); return -1; @@ -273,9 +267,7 @@ class EcmDirectory // extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -302,9 +294,7 @@ class EcmDirectory // extends CommonObject { $this->error = "Error ".$this->db->lasterror(); return -1; - } - else - { + } else { if (preg_match('/[0-9]+/', $value)) $this->cachenbofdoc = (int) $value; elseif ($value == '+') $this->cachenbofdoc++; elseif ($value == '-') $this->cachenbofdoc--; @@ -358,9 +348,7 @@ class EcmDirectory // extends CommonObject $this->db->free($resql); return $obj ? 1 : 0; - } - else - { + } else { $this->error = "Error ".$this->db->lasterror(); return -1; } @@ -398,9 +386,7 @@ class EcmDirectory // extends CommonObject $this->db->rollback(); $this->error = "Error ".$this->db->lasterror(); return -2; - } - else - { + } else { // Call trigger $result = $this->call_trigger('MYECMDIR_DELETE', $user); if ($result < 0) @@ -417,9 +403,7 @@ class EcmDirectory // extends CommonObject if ($deletedirrecursive) { $result = @dol_delete_dir_recursive($file, 0, 0); - } - else - { + } else { $result = @dol_delete_dir($file, 0); } } @@ -427,9 +411,7 @@ class EcmDirectory // extends CommonObject if ($result || !@is_dir(dol_osencode($file))) { $this->db->commit(); - } - else - { + } else { $this->error = 'ErrorFailToDeleteDir'; dol_syslog(get_class($this)."::delete ".$this->error, LOG_ERR); $this->db->rollback(); @@ -529,8 +511,7 @@ class EcmDirectory // extends CommonObject $idtosearch = $this->cats[$cursorindex]['id_mere']; $i++; } - } - while ($cursorindex >= 0 && !empty($idtosearch) && $i < 100); // i avoid infinite loop + } while ($cursorindex >= 0 && !empty($idtosearch) && $i < 100); // i avoid infinite loop return $ret; } @@ -564,9 +545,7 @@ class EcmDirectory // extends CommonObject $this->motherof[$obj->id_son] = $obj->id_parent; } return 1; - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -672,18 +651,14 @@ class EcmDirectory // extends CommonObject $newelempos = count($this->cats[$obj->rowid]['id_children']); //print "this->cats[$i]['id_children'] est deja un tableau de $newelem elements
    "; $this->cats[$obj->rowid]['id_children'][$newelempos] = $obj->rowid_fille; - } - else - { + } else { //print "this->cats[".$obj->rowid."]['id_children'] n'est pas encore un tableau
    "; $this->cats[$obj->rowid]['id_children'] = array($obj->rowid_fille); } } $i++; } - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -722,9 +697,7 @@ class EcmDirectory // extends CommonObject $this->cats[$id_categ]['fullrelativename'] .= '/'.$this->cats[$id_categ]['label']; $this->cats[$id_categ]['fulllabel'] = $this->cats[$this->cats[$id_categ]['id_mere']]['fulllabel']; $this->cats[$id_categ]['fulllabel'] .= ' >> '.$this->cats[$id_categ]['label']; - } - else - { + } else { $this->cats[$id_categ]['fullpath'] = '_'.$id_categ; $this->cats[$id_categ]['fullrelativename'] = $this->cats[$id_categ]['label']; $this->cats[$id_categ]['fulllabel'] = $this->cats[$id_categ]['label']; @@ -767,9 +740,7 @@ class EcmDirectory // extends CommonObject if (empty($all)) // By default { $sql .= " WHERE rowid = ".$this->id; - } - else - { + } else { $sql .= " WHERE entity = ".$conf->entity; } @@ -779,9 +750,7 @@ class EcmDirectory // extends CommonObject { $this->cachenbofdoc = count($filelist); return $this->cachenbofdoc; - } - else - { + } else { $this->error = "Error ".$this->db->lasterror(); return -1; } @@ -812,9 +781,7 @@ class EcmDirectory // extends CommonObject if (!empty($this->errors)) { $this->errors = array_merge($this->errors, $interface->errors); - } - else - { + } else { $this->errors = $interface->errors; } } diff --git a/htdocs/ecm/class/ecmfiles.class.php b/htdocs/ecm/class/ecmfiles.class.php index 0c7c4c4cebb..8006b864d87 100644 --- a/htdocs/ecm/class/ecmfiles.class.php +++ b/htdocs/ecm/class/ecmfiles.class.php @@ -182,8 +182,7 @@ class EcmFiles extends CommonObject if (!empty($this->ref)) { $ref = $this->ref; - } - else { + } else { include_once DOL_DOCUMENT_ROOT.'/core/lib/security.lib.php'; $ref = dol_hash($this->filepath.'/'.$this->filename, 3); } @@ -199,16 +198,12 @@ class EcmFiles extends CommonObject { $obj = $this->db->fetch_object($resql); $maxposition = (int) $obj->maxposition; - } - else - { + } else { $this->errors[] = 'Error '.$this->db->lasterror(); return --$error; } $maxposition = $maxposition + 1; - } - else - { + } else { $maxposition = $this->position; } @@ -353,26 +348,21 @@ class EcmFiles extends CommonObject if ($relativepath) { $sql .= " AND t.filepath = '".$this->db->escape(dirname($relativepath))."' AND t.filename = '".$this->db->escape(basename($relativepath))."'"; $sql .= " AND t.entity = ".$conf->entity; // unique key include the entity so each company has its own index - } - elseif (!empty($ref)) { // hash of file path + } elseif (!empty($ref)) { // hash of file path $sql .= " AND t.ref = '".$this->db->escape($ref)."'"; $sql .= " AND t.entity = ".$conf->entity; // unique key include the entity so each company has its own index - } - elseif (!empty($hashoffile)) { // hash of content + } elseif (!empty($hashoffile)) { // hash of content $sql .= " AND t.label = '".$this->db->escape($hashoffile)."'"; $sql .= " AND t.entity = ".$conf->entity; // unique key include the entity so each company has its own index - } - elseif (!empty($hashforshare)) { + } elseif (!empty($hashforshare)) { $sql .= " AND t.share = '".$this->db->escape($hashforshare)."'"; //$sql .= " AND t.entity = ".$conf->entity; // hashforshare already unique - } - elseif ($src_object_type && $src_object_id) + } elseif ($src_object_type && $src_object_id) { // Warning: May return several record, and only first one is returned ! $sql .= " AND t.src_object_type ='".$this->db->escape($src_object_type)."' AND t.src_object_id = ".$this->db->escape($src_object_id); $sql .= " AND t.entity = ".$conf->entity; - } - else { + } else { $sql .= ' AND t.rowid = '.$this->db->escape($id); // rowid already unique } @@ -772,7 +762,6 @@ class EcmFiles extends CommonObject if (!empty($conf->dol_no_mouse_hover)) $notooltip = 1; // Force disable tooltips $result = ''; - $companylink = ''; $label = ''.$langs->trans("MyModule").''; $label .= '
    '; @@ -790,8 +779,7 @@ class EcmFiles extends CommonObject } $linkclose .= ' title="'.dol_escape_htmltag($label, 1).'"'; $linkclose .= ' class="classfortooltip'.($morecss ? ' '.$morecss : '').'"'; - } - else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); + } else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); $linkstart = ''; @@ -867,6 +855,9 @@ class EcmFiles extends CommonObject } +/** + * Class of an index line of a document + */ class EcmfilesLine { /** diff --git a/htdocs/ecm/class/htmlecm.form.class.php b/htdocs/ecm/class/htmlecm.form.class.php index de9f289eb79..5c84cade8e4 100644 --- a/htdocs/ecm/class/htmlecm.form.class.php +++ b/htdocs/ecm/class/htmlecm.form.class.php @@ -69,8 +69,7 @@ class FormEcm { $cat = new EcmDirectory($this->db); $cate_arbo = $cat->get_full_arbo(); - } - elseif ($module == 'medias') + } elseif ($module == 'medias') { include_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; $path = $conf->medias->multidir_output[$conf->entity]; @@ -81,8 +80,7 @@ class FormEcm if (is_array($cate_arbo)) { if (!count($cate_arbo)) $output .= ''; - else - { + else { $output .= ''; foreach ($cate_arbo as $key => $value) { @@ -90,9 +88,7 @@ class FormEcm if ($selected && $valueforoption == $selected) { $add = 'selected '; - } - else - { + } else { $add = ''; } $output .= ''; diff --git a/htdocs/ecm/dir_add_card.php b/htdocs/ecm/dir_add_card.php index 0c9190b9a4c..e17892097af 100644 --- a/htdocs/ecm/dir_add_card.php +++ b/htdocs/ecm/dir_add_card.php @@ -56,17 +56,17 @@ if (empty($urlsection)) $urlsection = 'misc'; if ($module == 'ecm') { $upload_dir = $conf->ecm->dir_output.'/'.$urlsection; -} -else // For example $module == 'medias' +} else // For example $module == 'medias' { $upload_dir = $conf->medias->multidir_output[$conf->entity]; } +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; if (!$sortorder) $sortorder = "ASC"; @@ -114,9 +114,7 @@ if ($action == 'add' && $permtoadd) { header("Location: ".$backtopage); exit; - } - else - { + } else { header("Location: ".DOL_URL_ROOT.'/ecm/index.php?action=file_manager'.($module ? '&module='.$module : '')); exit; } @@ -154,8 +152,7 @@ if ($action == 'add' && $permtoadd) setEventMessages($ecmdir->error, $ecmdir->errors, 'errors'); $action = 'create'; } - } - else // For example $module == 'medias' + } else // For example $module == 'medias' { $dirfornewdir = ''; if ($module == 'medias') @@ -176,9 +173,7 @@ if ($action == 'add' && $permtoadd) { setEventMessages($langs->trans('ErrorFailToCreateDir', $label), null, 'errors'); $error++; - } - else - { + } else { setEventMessages($langs->trans("ECMSectionWasCreated", $label), null, 'mesgs'); } } @@ -191,9 +186,7 @@ if ($action == 'add' && $permtoadd) { header("Location: ".$backtopage); exit; - } - else - { + } else { header("Location: ".DOL_URL_ROOT.'/ecm/index.php?action=file_manager'); exit; } @@ -240,7 +233,7 @@ if ($action == 'create') print ''; // Label - print ''."\n"; + print ''."\n"; print ''; print ''; @@ -476,9 +449,7 @@ if ($action != 'edit' && $action != 'delete') if ($permtoadd) { print ''.$langs->trans('ECMAddSection').''; - } - else - { + } else { print ''.$langs->trans('ECMAddSection').''; } @@ -487,9 +458,7 @@ if ($action != 'edit' && $action != 'delete') if ($permtoadd) { print ''.$langs->trans('Delete').''; - } - else - { + } else { print ''.$langs->trans('Delete').''; } /*} diff --git a/htdocs/ecm/file_card.php b/htdocs/ecm/file_card.php index 4b2d6006c5c..9a4c86aba02 100644 --- a/htdocs/ecm/file_card.php +++ b/htdocs/ecm/file_card.php @@ -46,11 +46,12 @@ if ($user->socid > 0) $socid = $user->socid; } +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; if (!$sortorder) $sortorder = "ASC"; @@ -112,9 +113,7 @@ if ($cancel) { header("Location: ".$backtopage); exit; - } - else - { + } else { header('Location: '.$_SERVER["PHP_SELF"].'?urlfile='.urlencode($urlfile).'§ion='.urlencode($section).($module ? '&module='.urlencode($module) : '')); exit; } @@ -169,9 +168,7 @@ if ($action == 'update') { require_once DOL_DOCUMENT_ROOT.'/core/lib/security2.lib.php'; $object->share = getRandomPassword(true); - } - else - { + } else { $object->share = ''; } @@ -183,9 +180,7 @@ if ($action == 'update') { setEventMessages($object->error, $object->errors, 'warnings'); } - } - else - { + } else { // Call create to insert record $object->entity = $conf->entity; $object->filepath = preg_replace('/[\\/]+$/', '', $newdirrelativetodocument); @@ -210,9 +205,7 @@ if ($action == 'update') $urlfile = $newlabel; header('Location: '.$_SERVER["PHP_SELF"].'?urlfile='.urlencode($urlfile).'§ion='.urlencode($section)); exit; - } - else - { + } else { $db->rollback(); } } @@ -256,9 +249,7 @@ while ($tmpecmdir && $result > 0) { $s = ' -> '.$s; $result = $tmpecmdir->fetch($tmpecmdir->fk_parent); - } - else - { + } else { $tmpecmdir = 0; } $i++; @@ -297,9 +288,7 @@ $object->fetch(0, '', $filepathtodocument); if (!empty($object->label)) { print $object->label; -} -else -{ +} else { print img_warning().' '.$langs->trans("FileNotYetIndexedInDatabase"); } print ''; @@ -347,20 +336,14 @@ if (!empty($object->share)) if ($action != 'edit') print ''; else print $fulllink; if ($action != 'edit') print ' '.$langs->trans("Download").''; // No target here - } - else - { + } else { print 'share ? ' checked="checked"' : '').' /> '; } -} -else -{ +} else { if ($action != 'edit') { print ''.$langs->trans("FileNotShared").''; - } - else - { + } else { print 'share ? ' checked="checked"' : '').' /> '; } } diff --git a/htdocs/ecm/index.php b/htdocs/ecm/index.php index 9e51da09899..adb1df99ab5 100644 --- a/htdocs/ecm/index.php +++ b/htdocs/ecm/index.php @@ -45,11 +45,12 @@ $section = GETPOST('section', 'int') ?GETPOST('section', 'int') : GETPOST('secti if (!$section) $section = 0; $section_dir = GETPOST('section_dir', 'alpha'); +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; if (!$sortorder) $sortorder = "ASC"; @@ -100,8 +101,7 @@ if (GETPOST("sendit", 'none') && !empty($conf->global->MAIN_UPLOAD_DOC)) $error++; if ($_FILES['userfile']['error'][$key] == 1 || $_FILES['userfile']['error'][$key] == 2) { setEventMessages($langs->trans('ErrorFileSizeTooLarge'), null, 'errors'); - } - else { + } else { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("File")), null, 'errors'); } } @@ -134,9 +134,7 @@ if ($action == 'confirm_deletefile') { setEventMessages($langs->trans("FileWasRemoved", GETPOST('urlfile', 'alpha')), null, 'mesgs'); $result = $ecmdir->changeNbOfFiles('-'); - } - else - { + } else { setEventMessages($langs->trans("ErrorFailToDeleteFile", GETPOST('urlfile', 'alpha')), null, 'errors'); } @@ -157,9 +155,7 @@ if ($action == 'add' && $user->rights->ecm->setup) { header("Location: ".$_SERVER["PHP_SELF"]); exit; - } - else - { + } else { setEventMessages('Error '.$langs->trans($ecmdir->error), null, 'errors'); $action = "create"; } @@ -245,15 +241,11 @@ if ($action == 'refreshmanual') //print "Yes with id ".$parentdirisindatabase."
    \n"; $fk_parent = $parentdirisindatabase; //break; // We found parent, we can stop the while loop - } - else - { + } else { dol_syslog("No"); //print "No
    \n"; } - } - else - { + } else { dol_syslog("Parent is root"); $fk_parent = 0; // Parent is root } @@ -279,13 +271,10 @@ if ($action == 'refreshmanual') $sqltree[] = $newdirsql; // We complete fulltree for following loops //var_dump($sqltree); $adirwascreated = 1; - } - else - { + } else { dol_syslog("Failed to create directory ".$ecmdirtmp->label, LOG_ERR); } - } - else { + } else { $txt = "Parent of ".$dirdesc['fullname']." not found"; dol_syslog($txt); //print $txt."
    \n"; diff --git a/htdocs/ecm/index_auto.php b/htdocs/ecm/index_auto.php index 6c245e3ad1c..c9a8e1dc551 100644 --- a/htdocs/ecm/index_auto.php +++ b/htdocs/ecm/index_auto.php @@ -47,11 +47,12 @@ $section_dir = GETPOST('section_dir', 'alpha'); $search_doc_ref = GETPOST('search_doc_ref', 'alpha'); +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; if (!$sortorder) $sortorder = "ASC"; @@ -101,9 +102,7 @@ if ($action == 'add' && $user->rights->ecm->setup) { header("Location: ".$_SERVER["PHP_SELF"]); exit; - } - else - { + } else { setEventMessages('Error '.$langs->trans($ecmdir->error), null, 'errors'); $action = "create"; } @@ -126,8 +125,7 @@ if ($action == 'confirm_deletefile') exit; } $relativepath = $ecmdir->getRelativePath(); - } - else $relativepath = ''; + } else $relativepath = ''; $upload_dir = $conf->ecm->dir_output.($relativepath ? '/'.$relativepath : ''); $file = $upload_dir."/".GETPOST('urlfile'); // Do not use urldecode here ($_GET and $_POST are already decoded by PHP). @@ -220,15 +218,11 @@ if ($action == 'refreshmanual') //print "Yes with id ".$parentdirisindatabase."
    \n"; $fk_parent = $parentdirisindatabase; //break; // We found parent, we can stop the while loop - } - else - { + } else { dol_syslog("No"); //print "No
    \n"; } - } - else - { + } else { dol_syslog("Parent is root"); $fk_parent = 0; // Parent is root } @@ -254,13 +248,10 @@ if ($action == 'refreshmanual') $sqltree[] = $newdirsql; // We complete fulltree for following loops //var_dump($sqltree); $adirwascreated = 1; - } - else - { + } else { dol_syslog("Failed to create directory ".$ecmdirtmp->label, LOG_ERR); } - } - else { + } else { $txt = "Parent of ".$dirdesc['fullname']." not found"; dol_syslog($txt); //print $txt."
    \n"; @@ -417,9 +408,7 @@ if (empty($action) || $action == 'file_manager' || preg_match('/refresh/i', $act print ''; print $val['label']; print ''; - } - else - { + } else { print ''; print $val['label']; print ''; diff --git a/htdocs/ecm/search.php b/htdocs/ecm/search.php index 1b90ae77411..e125824a8c8 100644 --- a/htdocs/ecm/search.php +++ b/htdocs/ecm/search.php @@ -52,11 +52,12 @@ if (empty($module)) $module = 'ecm'; $upload_dir = $conf->ecm->dir_output.'/'.$section; +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; if (!$sortorder) $sortorder = "ASC"; diff --git a/htdocs/emailcollector/class/emailcollector.class.php b/htdocs/emailcollector/class/emailcollector.class.php index 11cf2477720..55bd07d7789 100644 --- a/htdocs/emailcollector/class/emailcollector.class.php +++ b/htdocs/emailcollector/class/emailcollector.class.php @@ -100,8 +100,9 @@ class EmailCollector extends CommonObject 'ref' => array('type'=>'varchar(128)', 'label'=>'Ref', 'enabled'=>1, 'visible'=>1, 'notnull'=>1, 'showoncombobox'=>1, 'index'=>1, 'position'=>10, 'searchall'=>1, 'help'=>'Example: MyCollector1'), 'label' => array('type'=>'varchar(255)', 'label'=>'Label', 'visible'=>1, 'enabled'=>1, 'position'=>30, 'notnull'=>-1, 'searchall'=>1, 'help'=>'Example: My Email collector'), 'description' => array('type'=>'text', 'label'=>'Description', 'visible'=>-1, 'enabled'=>1, 'position'=>60, 'notnull'=>-1), - 'host' => array('type'=>'varchar(255)', 'label'=>'EMailHost', 'visible'=>1, 'enabled'=>1, 'position'=>100, 'notnull'=>1, 'searchall'=>1, 'comment'=>"IMAP server", 'help'=>'Example: imap.gmail.com'), - 'login' => array('type'=>'varchar(128)', 'label'=>'Login', 'visible'=>1, 'enabled'=>1, 'position'=>101, 'notnull'=>-1, 'index'=>1, 'comment'=>"IMAP login", 'help'=>'Example: myaccount@gmail.com'), + 'host' => array('type'=>'varchar(255)', 'label'=>'EMailHost', 'visible'=>1, 'enabled'=>1, 'position'=>90, 'notnull'=>1, 'searchall'=>1, 'comment'=>"IMAP server", 'help'=>'Example: imap.gmail.com'), + 'hostcharset' => array('type'=>'varchar(16)', 'label'=>'HostCharset', 'visible'=>-1, 'enabled'=>1, 'position'=>91, 'notnull'=>0, 'searchall'=>0, 'comment'=>"IMAP server charset", 'help'=>'Example: "UTF-8" (May be "US-ASCII" with some Office365)'), + 'login' => array('type'=>'varchar(128)', 'label'=>'Login', 'visible'=>1, 'enabled'=>1, 'position'=>101, 'notnull'=>-1, 'index'=>1, 'comment'=>"IMAP login", 'help'=>'Example: myaccount@gmail.com'), 'password' => array('type'=>'password', 'label'=>'Password', 'visible'=>-1, 'enabled'=>1, 'position'=>102, 'notnull'=>-1, 'comment'=>"IMAP password", 'help'=>'WithGMailYouCanCreateADedicatedPassword'), 'source_directory' => array('type'=>'varchar(255)', 'label'=>'MailboxSourceDirectory', 'visible'=>-1, 'enabled'=>1, 'position'=>103, 'notnull'=>1, 'default' => 'Inbox', 'help'=>'Example: INBOX'), //'filter' => array('type'=>'text', 'label'=>'Filter', 'visible'=>1, 'enabled'=>1, 'position'=>105), @@ -173,6 +174,7 @@ class EmailCollector extends CommonObject public $host; + public $hostcharset; public $login; public $password; public $source_directory; @@ -476,8 +478,7 @@ class EmailCollector extends CommonObject $reshook=$hookmanager->executeHooks('getnomurltooltip',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks if ($reshook > 0) $linkclose = $hookmanager->resPrint; */ - } - else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); + } else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); $linkstart = ''; @@ -583,9 +584,7 @@ class EmailCollector extends CommonObject } $this->db->free($result); - } - else - { + } else { dol_print_error($this->db); } } @@ -627,8 +626,7 @@ class EmailCollector extends CommonObject $i++; } $this->db->free($resql); - } - else dol_print_error($this->db); + } else dol_print_error($this->db); return 1; } @@ -659,8 +657,7 @@ class EmailCollector extends CommonObject $i++; } $this->db->free($resql); - } - else dol_print_error($this->db); + } else dol_print_error($this->db); } @@ -711,8 +708,7 @@ class EmailCollector extends CommonObject $this->error = "error: is not possible to encode this string '".$str."'"; return false; } - } - else { + } else { return $str; } } @@ -770,9 +766,7 @@ class EmailCollector extends CommonObject { $tmpclass = $tmparray[0]; $tmpproperty = $tmparray[1]; - } - else - { + } else { $tmpproperty = $tmparray[0]; } if ($tmpclass && ($tmpclass != $object->element)) continue; // Property is for another type of object @@ -790,8 +784,7 @@ class EmailCollector extends CommonObject $sourcefield = $regforregex[1]; $regexstring = $regforregex[2]; //$transofrmationstring=$regforregex[3]; - } - elseif (preg_match('/^EXTRACT:([a-zA-Z0-9]+):(.*)$/', $valueforproperty, $regforregex)) + } elseif (preg_match('/^EXTRACT:([a-zA-Z0-9]+):(.*)$/', $valueforproperty, $regforregex)) { $sourcefield = $regforregex[1]; $regexstring = $regforregex[2]; @@ -815,22 +808,17 @@ class EmailCollector extends CommonObject //var_dump($regforval[count($regforval)-1]);exit; // Overwrite param $tmpproperty $object->$tmpproperty = isset($regforval[count($regforval) - 1]) ?trim($regforval[count($regforval) - 1]) : null; - } - else - { + } else { // Regex not found $object->$tmpproperty = null; } - } - else - { + } else { // Nothing can be done for this param $errorforthisaction++; $this->error = 'The extract rule to use has on an unknown source (must be HEADER, SUBJECT or BODY)'; $this->errors[] = $this->error; } - } - elseif (preg_match('/^(SET|SETIFEMPTY):(.*)$/', $valueforproperty, $regforregex)) + } elseif (preg_match('/^(SET|SETIFEMPTY):(.*)$/', $valueforproperty, $regforregex)) { $valuecurrent = ''; if (preg_match('/^options_/', $tmpproperty)) $valuecurrent = $object->array_options[preg_replace('/^options_/', '', $tmpproperty)]; @@ -860,9 +848,7 @@ class EmailCollector extends CommonObject if (preg_match('/^options_/', $tmpproperty)) $object->array_options[preg_replace('/^options_/', '', $tmpproperty)] = $valuetouse; else $object->$tmpproperty = $valuetouse; } - } - else - { + } else { $errorforthisaction++; $this->error = 'Bad syntax for description of action parameters: '.$actionparam; $this->errors[] = $this->error; @@ -935,8 +921,8 @@ class EmailCollector extends CommonObject } imap_errors(); // Clear stack of errors. - // $conf->global->MAIL_PREFIX_FOR_EMAIL_ID must be defined $host = dol_getprefix('email'); + //$host = '123456'; // Define the IMAP search string // See https://tools.ietf.org/html/rfc3501#section-6.4.4 for IMAPv4 (PHP not yet compatible) @@ -985,9 +971,10 @@ class EmailCollector extends CommonObject $nbemailprocessed = 0; $nbemailok = 0; $nbactiondone = 0; + $charset = ($this->hostcharset ? $this->hostcharset : "UTF-8"); // Scan IMAP inbox - $arrayofemail = imap_search($connection, $search, null, "UTF-8"); + $arrayofemail = imap_search($connection, $search, null, $charset); if ($arrayofemail === false) { // Nothing found or search string not understood @@ -1078,6 +1065,7 @@ class EmailCollector extends CommonObject dol_syslog("Start of loop on email", LOG_INFO, 1); + $i = 0; foreach ($arrayofemail as $imapemail) { if ($nbemailprocessed > 1000) @@ -1085,12 +1073,17 @@ class EmailCollector extends CommonObject break; // Do not process more than 1000 email per launch (this is a different protection than maxnbcollectedpercollect } + $i++; + $header = imap_fetchheader($connection, $imapemail, 0); + $header = preg_replace('/\r\n\s+/m', ' ', $header); // When a header line is on several lines, merge lines $matches = array(); preg_match_all('/([^: ]+): (.+?(?:\r\n\s(?:.+?))*)\r\n/m', $header, $matches); $headers = array_combine($matches[1], $matches[2]); //var_dump($headers); + dol_syslog("** Process email ".$i." References: ".$headers['References']); + // If there is a filter on trackid if ($searchfilterdoltrackid > 0) { @@ -1126,13 +1119,15 @@ class EmailCollector extends CommonObject // GET Email meta datas $overview = imap_fetch_overview($connection, $imapemail, 0); - dol_syslog("** Process email - msgid=".$overview[0]->message_id." date=".dol_print_date($overview[0]->udate, 'dayrfc', 'gmt')." subject=".$overview[0]->subject); + dol_syslog("msgid=".$overview[0]->message_id." date=".dol_print_date($overview[0]->udate, 'dayrfc', 'gmt')." subject=".$overview[0]->subject); // Decode $overview[0]->subject according to RFC2047 // Can use also imap_mime_header_decode($str) // Can use also mb_decode_mimeheader($str) // Can use also iconv_mime_decode($str, ICONV_MIME_DECODE_CONTINUE_ON_ERROR, 'UTF-8') - if (function_exists('imap_mime_header_decode')) { + if (function_exists('iconv_mime_decode')) { + $overview[0]->subject = iconv_mime_decode($overview[0]->subject, ICONV_MIME_DECODE_CONTINUE_ON_ERROR, 'UTF-8'); + } elseif (function_exists('imap_mime_header_decode')) { $elements = imap_mime_header_decode($overview[0]->subject); $newstring = ''; if (!empty($elements)) { @@ -1142,10 +1137,11 @@ class EmailCollector extends CommonObject } $overview[0]->subject = $newstring; } - } - elseif (function_exists('mb_decode_mimeheader')) { + } elseif (function_exists('mb_decode_mimeheader')) { $overview[0]->subject = mb_decode_mimeheader($overview[0]->subject); } + // Removed emojis + $overview[0]->subject = preg_replace('/[\x{10000}-\x{10FFFF}]/u', "\xEF\xBF\xBD", $overview[0]->subject); // Parse IMAP email structure global $htmlmsg, $plainmsg, $charset, $attachments; @@ -1153,6 +1149,9 @@ class EmailCollector extends CommonObject //$htmlmsg,$plainmsg,$charset,$attachments $messagetext = $plainmsg ? $plainmsg : dol_string_nohtmltag($htmlmsg, 0); + // Removed emojis + $messagetext = preg_replace('/[\x{10000}-\x{10FFFF}]/u', "\xEF\xBF\xBD", $messagetext); + /*var_dump($plainmsg); var_dump($htmlmsg); var_dump($messagetext);*/ @@ -1221,9 +1220,7 @@ class EmailCollector extends CommonObject { $from = $reg[2]; $fromtext = $reg[1]; - } - else - { + } else { $from = $fromstring; $fromtext = ''; } @@ -1296,8 +1293,7 @@ class EmailCollector extends CommonObject { $result = $projectstatic->fetch($projectid); if ($result <= 0) $projectstatic->id = 0; - else - { + else { $projectid = $projectstatic->id; $projectfoundby = 'trackid ('.$trackid.')'; if (empty($contactid)) $contactid = $projectstatic->fk_contact; @@ -1309,8 +1305,7 @@ class EmailCollector extends CommonObject { $result = $contactstatic->fetch($contactid); if ($result <= 0) $contactstatic->id = 0; - else - { + else { $contactid = $contactstatic->id; $contactfoundby = 'trackid ('.$trackid.')'; if (empty($thirdpartyid)) $thirdpartyid = $contactstatic->fk_soc; @@ -1321,8 +1316,7 @@ class EmailCollector extends CommonObject { $result = $thirdpartystatic->fetch($thirdpartyid); if ($result <= 0) $thirdpartystatic->id = 0; - else - { + else { $thirdpartyid = $thirdpartystatic->id; $thirdpartyfoundby = 'trackid ('.$trackid.')'; } @@ -1391,9 +1385,7 @@ class EmailCollector extends CommonObject $errorforactions++; $this->error = "Action loadthirdparty or loadandcreatethirdparty has empty parameter. Must be 'SET:xxx' or 'EXTRACT:(body|subject):regex' to define how to extract data"; $this->errors[] = $this->error; - } - else - { + } else { $actionparam = $operation['actionparam']; $nametouseforthirdparty = ''; @@ -1427,30 +1419,23 @@ class EmailCollector extends CommonObject //var_dump($regforval[count($regforval)-1]);exit; // Overwrite param $tmpproperty $nametouseforthirdparty = isset($regforval[count($regforval) - 1]) ?trim($regforval[count($regforval) - 1]) : null; - } - else - { + } else { // Regex not found $nametouseforthirdparty = null; } //var_dump($object->$tmpproperty);exit; - } - else - { + } else { // Nothing can be done for this param $errorforactions++; $this->error = 'The extract rule to use to load thirdparty has on an unknown source (must be HEADER, SUBJECT or BODY)'; $this->errors[] = $this->error; } - } - elseif (preg_match('/^(SET|SETIFEMPTY):(.*)$/', $valueforproperty, $reg)) + } elseif (preg_match('/^(SET|SETIFEMPTY):(.*)$/', $valueforproperty, $reg)) { //if (preg_match('/^options_/', $tmpproperty)) $object->array_options[preg_replace('/^options_/', '', $tmpproperty)] = $reg[1]; //else $object->$tmpproperty = $reg[1]; $nametouseforthirdparty = $reg[2]; - } - else - { + } else { $errorforactions++; $this->error = 'Bad syntax for description of action parameters: '.$actionparam; $this->errors[] = $this->error; @@ -1467,8 +1452,7 @@ class EmailCollector extends CommonObject $this->error = 'Error when getting thirdparty with name '.$nametouseforthirdparty.' (may be 2 record exists with same name ?)'; $this->errors[] = $this->error; break; - } - elseif ($result == 0) + } elseif ($result == 0) { if ($operation['type'] == 'loadthirdparty') { @@ -1477,8 +1461,7 @@ class EmailCollector extends CommonObject $errorforactions++; $this->error = 'ErrorFailedToLoadThirdParty'; $this->errors[] = 'ErrorFailedToLoadThirdParty'; - } - elseif ($operation['type'] == 'loadandcreatethirdparty') + } elseif ($operation['type'] == 'loadandcreatethirdparty') { dol_syslog("Third party with name ".$nametouseforthirdparty." was not found. We try to create it."); @@ -1493,9 +1476,7 @@ class EmailCollector extends CommonObject if ($errorforthisaction) { $errorforactions++; - } - else - { + } else { $result = $thirdpartystatic->create($user); if ($result <= 0) { @@ -1580,9 +1561,7 @@ class EmailCollector extends CommonObject if ($errorforthisaction) { $errorforactions++; - } - else - { + } else { $result = $actioncomm->create($user); if ($result <= 0) { @@ -1667,8 +1646,7 @@ class EmailCollector extends CommonObject $errorforactions++; setEventMessages('You loaded a thirdparty (id='.$savesocid.') and you force another thirdparty id (id='.$projecttocreate->socid.') by setting socid in operation with a different value', null, 'errors'); } - } - else { + } else { if ($projecttocreate->socid > 0) { $thirdpartystatic->fetch($projecttocreate->socid); @@ -1683,16 +1661,12 @@ class EmailCollector extends CommonObject if ($errorforthisaction) { $errorforactions++; - } - else - { + } else { if (empty($projecttocreate->ref) || (is_numeric($projecttocreate->ref) && $projecttocreate->ref <= 0)) { $errorforactions++; $this->error = 'Failed to create project: Can\'t get a valid value for the field ref with numbering template = '.$modele.', thirdparty id = '.$thirdpartystatic->id; - } - else - { + } else { // Create project $result = $projecttocreate->create($user); if ($result <= 0) @@ -1782,8 +1756,7 @@ class EmailCollector extends CommonObject $errorforactions++; setEventMessages('You loaded a thirdparty (id='.$savesocid.') and you force another thirdparty id (id='.$tickettocreate->socid.') by setting socid in operation with a different value', null, 'errors'); } - } - else { + } else { if ($tickettocreate->socid > 0) { $thirdpartystatic->fetch($tickettocreate->socid); @@ -1831,16 +1804,12 @@ class EmailCollector extends CommonObject if ($errorforthisaction) { $errorforactions++; - } - else - { + } else { if (is_numeric($tickettocreate->ref) && $tickettocreate->ref <= 0) { $errorforactions++; $this->error = 'Failed to create ticket: Can\'t get a valid value for the field ref with numbering template = '.$modele.', thirdparty id = '.$thirdpartystatic->id; - } - else - { + } else { // Create project $result = $tickettocreate->create($user); if ($result <= 0) @@ -1872,14 +1841,10 @@ class EmailCollector extends CommonObject $this->errors[] = $this->error; dol_syslog(imap_last_error()); } - } - else - { + } else { dol_syslog("EmailCollector::doCollectOneCollector message ".$imapemail." to ".$connectstringtarget." was set to read", LOG_DEBUG); } - } - else - { + } else { $errorforemail++; } @@ -1903,9 +1868,7 @@ class EmailCollector extends CommonObject dol_syslog("EmailCollect::doCollectOneCollector We reach maximum of ".$nbemailok." collected with success, so we stop this collector now."); break; } - } - else - { + } else { $error++; $this->db->rollback(); @@ -1915,9 +1878,7 @@ class EmailCollector extends CommonObject $output = $langs->trans('XEmailsDoneYActionsDone', $nbemailprocessed, $nbemailok, $nbactiondone); dol_syslog("End of loop on emails", LOG_INFO, -1); - } - else - { + } else { $output = $langs->trans('NoNewEmailToProcess'); } @@ -2054,8 +2015,7 @@ class EmailCollector extends CommonObject // so append parts together with blank row. if (strtolower($p->subtype) == 'plain') $plainmsg .= trim($data)."\n\n"; - else - $htmlmsg .= $data."

    "; + else $htmlmsg .= $data."

    "; $charset = $params['charset']; // assume all parts are same charset } diff --git a/htdocs/emailcollector/class/emailcollectoraction.class.php b/htdocs/emailcollector/class/emailcollectoraction.class.php index d0d6239a7f2..ed6942f34d6 100644 --- a/htdocs/emailcollector/class/emailcollectoraction.class.php +++ b/htdocs/emailcollector/class/emailcollectoraction.class.php @@ -369,8 +369,7 @@ class EmailCollectorAction extends CommonObject $reshook=$hookmanager->executeHooks('getnomurltooltip',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks if ($reshook > 0) $linkclose = $hookmanager->resPrint; */ - } - else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); + } else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); $linkstart = '
    '; @@ -425,32 +424,26 @@ class EmailCollectorAction extends CommonObject if ($mode == 0) { return $this->labelStatus[$status]; - } - elseif ($mode == 1) + } elseif ($mode == 1) { return $this->labelStatus[$status]; - } - elseif ($mode == 2) + } elseif ($mode == 2) { if ($status == 1) return img_picto($this->labelStatus[$status], 'statut4', '', false, 0, 0, '', 'valignmiddle').' '.$this->labelStatus[$status]; elseif ($status == 0) return img_picto($this->labelStatus[$status], 'statut5', '', false, 0, 0, '', 'valignmiddle').' '.$this->labelStatus[$status]; - } - elseif ($mode == 3) + } elseif ($mode == 3) { if ($status == 1) return img_picto($this->labelStatus[$status], 'statut4', '', false, 0, 0, '', 'valignmiddle'); elseif ($status == 0) return img_picto($this->labelStatus[$status], 'statut5', '', false, 0, 0, '', 'valignmiddle'); - } - elseif ($mode == 4) + } elseif ($mode == 4) { if ($status == 1) return img_picto($this->labelStatus[$status], 'statut4', '', false, 0, 0, '', 'valignmiddle').' '.$this->labelStatus[$status]; elseif ($status == 0) return img_picto($this->labelStatus[$status], 'statut5', '', false, 0, 0, '', 'valignmiddle').' '.$this->labelStatus[$status]; - } - elseif ($mode == 5) + } elseif ($mode == 5) { if ($status == 1) return $this->labelStatus[$status].' '.img_picto($this->labelStatus[$status], 'statut4', '', false, 0, 0, '', 'valignmiddle'); elseif ($status == 0) return $this->labelStatus[$status].' '.img_picto($this->labelStatus[$status], 'statut5', '', false, 0, 0, '', 'valignmiddle'); - } - elseif ($mode == 6) + } elseif ($mode == 6) { if ($status == 1) return $this->labelStatus[$status].' '.img_picto($this->labelStatus[$status], 'statut4', '', false, 0, 0, '', 'valignmiddle'); elseif ($status == 0) return $this->labelStatus[$status].' '.img_picto($this->labelStatus[$status], 'statut5', '', false, 0, 0, '', 'valignmiddle'); @@ -503,9 +496,7 @@ class EmailCollectorAction extends CommonObject } $this->db->free($result); - } - else - { + } else { dol_print_error($this->db); } } diff --git a/htdocs/emailcollector/class/emailcollectorfilter.class.php b/htdocs/emailcollector/class/emailcollectorfilter.class.php index 63521e81c3a..8e4f5814db4 100644 --- a/htdocs/emailcollector/class/emailcollectorfilter.class.php +++ b/htdocs/emailcollector/class/emailcollectorfilter.class.php @@ -344,8 +344,7 @@ class EmailCollectorFilter extends CommonObject $reshook=$hookmanager->executeHooks('getnomurltooltip',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks if ($reshook > 0) $linkclose = $hookmanager->resPrint; */ - } - else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); + } else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); $linkstart = ''; @@ -400,32 +399,26 @@ class EmailCollectorFilter extends CommonObject if ($mode == 0) { return $this->labelStatus[$status]; - } - elseif ($mode == 1) + } elseif ($mode == 1) { return $this->labelStatus[$status]; - } - elseif ($mode == 2) + } elseif ($mode == 2) { if ($status == 1) return img_picto($this->labelStatus[$status], 'statut4', '', false, 0, 0, '', 'valignmiddle').' '.$this->labelStatus[$status]; elseif ($status == 0) return img_picto($this->labelStatus[$status], 'statut5', '', false, 0, 0, '', 'valignmiddle').' '.$this->labelStatus[$status]; - } - elseif ($mode == 3) + } elseif ($mode == 3) { if ($status == 1) return img_picto($this->labelStatus[$status], 'statut4', '', false, 0, 0, '', 'valignmiddle'); elseif ($status == 0) return img_picto($this->labelStatus[$status], 'statut5', '', false, 0, 0, '', 'valignmiddle'); - } - elseif ($mode == 4) + } elseif ($mode == 4) { if ($status == 1) return img_picto($this->labelStatus[$status], 'statut4', '', false, 0, 0, '', 'valignmiddle').' '.$this->labelStatus[$status]; elseif ($status == 0) return img_picto($this->labelStatus[$status], 'statut5', '', false, 0, 0, '', 'valignmiddle').' '.$this->labelStatus[$status]; - } - elseif ($mode == 5) + } elseif ($mode == 5) { if ($status == 1) return $this->labelStatus[$status].' '.img_picto($this->labelStatus[$status], 'statut4', '', false, 0, 0, '', 'valignmiddle'); elseif ($status == 0) return $this->labelStatus[$status].' '.img_picto($this->labelStatus[$status], 'statut5', '', false, 0, 0, '', 'valignmiddle'); - } - elseif ($mode == 6) + } elseif ($mode == 6) { if ($status == 1) return $this->labelStatus[$status].' '.img_picto($this->labelStatus[$status], 'statut4', '', false, 0, 0, '', 'valignmiddle'); elseif ($status == 0) return $this->labelStatus[$status].' '.img_picto($this->labelStatus[$status], 'statut5', '', false, 0, 0, '', 'valignmiddle'); @@ -478,9 +471,7 @@ class EmailCollectorFilter extends CommonObject } $this->db->free($result); - } - else - { + } else { dol_print_error($this->db); } } diff --git a/htdocs/emailcollector/lib/emailcollector.lib.php b/htdocs/emailcollector/lib/emailcollector.lib.php index 089545e8d7e..fe4a5f1b19c 100644 --- a/htdocs/emailcollector/lib/emailcollector.lib.php +++ b/htdocs/emailcollector/lib/emailcollector.lib.php @@ -26,7 +26,7 @@ * Prepare array of tabs for EmailCollector * * @param EmailCollector $object EmailCollector - * @return array Array of tabs + * @return array Array of tabs */ function emailcollectorPrepareHead($object) { @@ -38,7 +38,7 @@ function emailcollectorPrepareHead($object) $head = array(); $head[$h][0] = dol_buildpath("/admin/emailcollector_card.php", 1).'?id='.$object->id; - $head[$h][1] = $langs->trans("Card"); + $head[$h][1] = $langs->trans("EmailCollector"); $head[$h][2] = 'card'; $h++; diff --git a/htdocs/expedition/card.php b/htdocs/expedition/card.php index e4fc2868b99..3d0a58dac7a 100644 --- a/htdocs/expedition/card.php +++ b/htdocs/expedition/card.php @@ -12,6 +12,7 @@ * Copyright (C) 2016-2018 Ferran Marcet * Copyright (C) 2016 Yasser Carreón * Copyright (C) 2018 Frédéric France + * Copyright (C) 2020 Lenin Rivas * * 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 @@ -264,9 +265,7 @@ if (empty($reshook)) $batch_line[$i]['ix_l'] = GETPOST($idl, 'int'); $totalqty += $subtotalqty; - } - else - { + } else { // No detail were provided for lots if (!empty($_POST[$qty])) { @@ -276,8 +275,7 @@ if (empty($reshook)) setEventMessages($langs->trans("StockIsRequiredToChooseWhichLotToUse"), null, 'errors'); } } - } - elseif (GETPOSTISSET($stockLocation)) + } elseif (GETPOSTISSET($stockLocation)) { //shipment line from multiple stock locations $qty .= '_'.$j; @@ -294,9 +292,7 @@ if (empty($reshook)) $stockLocation = "ent1".$i."_".$j; $qty = "qtyl".$i.'_'.$j; } - } - else - { + } else { //var_dump(GETPOST($qty,'int')); var_dump($_POST); var_dump($batch);exit; //shipment line for product with no batch management and no multiple stock location if (GETPOST($qty, 'int') > 0) $totalqty += GETPOST($qty, 'int'); @@ -340,9 +336,7 @@ if (empty($reshook)) } } } - } - else - { + } else { if (GETPOST($qty, 'int') > 0 || (GETPOST($qty, 'int') == 0 && $conf->global->SHIPMENT_GETS_ALL_ORDER_PRODUCTS)) { $ent = "entl".$i; @@ -359,9 +353,7 @@ if (empty($reshook)) } } } - } - else - { + } else { // batch mode if ($batch_line[$i]['qty'] > 0) { @@ -387,9 +379,7 @@ if (empty($reshook)) $error++; } } - } - else - { + } else { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("QtyToShip").'/'.$langs->transnoentitiesnoconv("Warehouse")), null, 'errors'); $error++; } @@ -399,9 +389,7 @@ if (empty($reshook)) $db->commit(); header("Location: card.php?id=".$object->id); exit; - } - else - { + } else { $db->rollback(); $_GET["commande_id"] = GETPOST('commande_id', 'int'); $action = 'create'; @@ -418,14 +406,10 @@ if (empty($reshook)) { header("Location: ".DOL_URL_ROOT.'/livraison/card.php?action=create_delivery&id='.$result); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } - } - - elseif ($action == 'confirm_valid' && $confirm == 'yes' && + } elseif ($action == 'confirm_valid' && $confirm == 'yes' && ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->expedition->creer)) || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->expedition->shipping_advance->validate))) ) @@ -438,9 +422,7 @@ if (empty($reshook)) { $langs->load("errors"); setEventMessages($langs->trans($object->error), $object->errors, 'errors'); - } - else - { + } else { // Define output language if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) { @@ -459,9 +441,17 @@ if (empty($reshook)) if ($result < 0) dol_print_error($db, $result); } } - } - - elseif ($action == 'confirm_delete' && $confirm == 'yes' && $user->rights->expedition->supprimer) + } elseif ($action == 'confirm_cancel' && $confirm == 'yes' && $user->rights->expedition->supprimer) + { + $also_update_stock = (GETPOST('alsoUpdateStock', 'alpha') ? 1 : 0); + $result = $object->cancel(0, $also_update_stock); + if ($result > 0) + { + $result = $object->setStatut(-1); + } else { + setEventMessages($object->error, $object->errors, 'errors'); + } + } elseif ($action == 'confirm_delete' && $confirm == 'yes' && $user->rights->expedition->supprimer) { $also_update_stock = (GETPOST('alsoUpdateStock', 'alpha') ? 1 : 0); $result = $object->delete(0, $also_update_stock); @@ -469,9 +459,7 @@ if (empty($reshook)) { header("Location: ".DOL_URL_ROOT.'/expedition/index.php'); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -537,9 +525,7 @@ if (empty($reshook)) } $action = ""; - } - - elseif ($action == 'classifybilled') + } elseif ($action == 'classifybilled') { $object->fetch($id); $result = $object->set_billed(); @@ -548,9 +534,7 @@ if (empty($reshook)) exit(); } setEventMessages($object->error, $object->errors, 'errors'); - } - - elseif ($action == 'classifyclosed') + } elseif ($action == 'classifyclosed') { $object->fetch($id); $result = $object->setClosed(); @@ -585,9 +569,7 @@ if (empty($reshook)) $error++; } } - } - else - { + } else { // delete single warehouse line $line->id = $line_id; if (!$error && $line->delete($user) < 0) @@ -602,9 +584,7 @@ if (empty($reshook)) if (!$error) { header('Location: '.$_SERVER["PHP_SELF"].'?id='.$object->id); exit(); - } - else - { + } else { setEventMessages($line->error, $line->errors, 'errors'); } } @@ -668,9 +648,7 @@ if (empty($reshook)) setEventMessages($line->error, $line->errors, 'errors'); $error++; } - } - else - { + } else { setEventMessages($lotStock->error, $lotStock->errors, 'errors'); $error++; } @@ -697,8 +675,7 @@ if (empty($reshook)) { $lineIdToAddLot = $line_id; } - } - elseif (count($lines[$i]->details_entrepot) > 1) + } elseif (count($lines[$i]->details_entrepot) > 1) { // multi warehouse shipment lines foreach ($lines[$i]->details_entrepot as $detail_entrepot) @@ -722,15 +699,11 @@ if (empty($reshook)) setEventMessages($line->error, $line->errors, 'errors'); $error++; } - } - else - { + } else { setEventMessages($line->error, $line->errors, 'errors'); $error++; } - } - else - { + } else { // create new line with new lot $line->origin_line_id = $lines[$i]->origin_line_id; $line->entrepot_id = $lotStock->warehouseid; @@ -745,16 +718,12 @@ if (empty($reshook)) $error++; } } - } - else - { + } else { setEventMessages($lotStock->error, $lotStock->errors, 'errors'); $error++; } } - } - else - { + } else { if ($lines[$i]->fk_product > 0) { // line without lot @@ -772,8 +741,7 @@ if (empty($reshook)) } unset($_POST[$stockLocation]); unset($_POST[$qty]); - } - elseif (count($lines[$i]->details_entrepot) > 1) + } elseif (count($lines[$i]->details_entrepot) > 1) { // multi warehouse shipment lines foreach ($lines[$i]->details_entrepot as $detail_entrepot) @@ -797,9 +765,7 @@ if (empty($reshook)) } } } - } - else - { + } else { // Product no predefined $qty = "qtyl".$line_id; $line->id = $line_id; @@ -834,9 +800,7 @@ if (empty($reshook)) $ret = $object->fetch($object->id); // Reload to get new records $object->generateDocument($object->modelpdf, $outputlangs, $hidedetails, $hidedesc, $hideref); } - } - else - { + } else { header('Location: '.$_SERVER['PHP_SELF'].'?id='.$object->id); // To redisplay the form being edited exit(); } @@ -874,8 +838,9 @@ $warehousestatic = new Entrepot($db); if ($action == 'create2') { - print load_fiche_titre($langs->trans("CreateShipment")).'
    '; - print $langs->trans("ShipmentCreationIsDoneFromOrder"); + print load_fiche_titre($langs->trans("CreateShipment"), '', 'dolly'); + + print '
    '.$langs->trans("ShipmentCreationIsDoneFromOrder"); $action = ''; $id = ''; $ref = ''; } @@ -884,7 +849,8 @@ if ($action == 'create') { $expe = new Expedition($db); - print load_fiche_titre($langs->trans("CreateShipment")); + print load_fiche_titre($langs->trans("CreateShipment"), '', 'dolly'); + if (!$origin) { setEventMessages($langs->trans("ErrorBadParameters"), null, 'errors'); @@ -958,8 +924,9 @@ if ($action == 'create') $langs->load("projects"); print '
    '; print ''; print ''; } @@ -1114,9 +1081,7 @@ if ($action == 'create') if (empty($conf->productbatch->enabled)) { print ''; - } - else - { + } else { print ''; } } @@ -1176,9 +1141,7 @@ if ($action == 'create') } print ''; - } - else - { + } else { print "'; // Stock @@ -1270,9 +1230,7 @@ if ($action == 'create') } } } - } - else - { + } else { print $langs->trans("Service"); } print ''; @@ -1302,9 +1260,7 @@ if ($action == 'create') } } } - } - else - { + } else { // Product need lot print ''; // end line and start a new one for lot/serial print ''; @@ -1358,9 +1314,7 @@ if ($action == 'create') $subj++; print ''; } - } - else - { + } else { print ''; print ''; } } - } - else - { + } else { // ship from multiple locations if (empty($conf->productbatch->enabled) || !$product->hasbatch()) { @@ -1407,8 +1359,7 @@ if ($action == 'create') { print ''; print ''; - } - else print $langs->trans("NA"); + } else print $langs->trans("NA"); print ''; // Stock @@ -1421,9 +1372,7 @@ if ($action == 'create') print ''; print '('.$stock.')'; - } - else - { + } else { print $langs->trans("Service"); } print ''; @@ -1461,9 +1410,7 @@ if ($action == 'create') } } } - } - else - { + } else { print ''; print ''; // end line and start a new one for lot/serial @@ -1534,9 +1481,7 @@ if ($action == 'create') $disabled = 'disabled="disabled"'; } print ' '; - } - else - { + } else { print $langs->trans("NA"); } print ''; @@ -1550,15 +1495,11 @@ if ($action == 'create') $warehouseObject = new Entrepot($db); $warehouseObject->fetch($warehouse_selected_id); print img_warning().' '.$langs->trans("NoProductToShipFoundIntoStock", $warehouseObject->label); - } - else - { + } else { if ($line->fk_product) print img_warning().' '.$langs->trans("StockTooLow"); else print ''; } - } - else - { + } else { print $langs->trans("Service"); } print ''; @@ -1598,14 +1539,11 @@ if ($action == 'create') print ''; print '
    '; - } - else - { + } else { dol_print_error($db); } } -} -elseif ($id || $ref) +} elseif ($id || $ref) /* *************************************************************************** */ /* */ /* Edit and view mode */ @@ -1668,9 +1606,7 @@ elseif ($id || $ref) if ($objectref == 'PROV') { $numref = $object->getNextNumRef($soc); - } - else - { + } else { $numref = $object->ref; } @@ -1687,7 +1623,7 @@ elseif ($id || $ref) $formconfirm = $form->formconfirm($_SERVER['PHP_SELF'].'?id='.$object->id, $langs->trans('ValidateSending'), $text, 'confirm_valid', '', 0, 1); } // Confirm cancelation - if ($action == 'annuler') + if ($action == 'cancel') { $formconfirm = $form->formconfirm($_SERVER['PHP_SELF'].'?id='.$object->id, $langs->trans('CancelSending'), $langs->trans("ConfirmCancelSending", $object->ref), 'confirm_cancel', '', 0, 1); } @@ -1815,9 +1751,7 @@ elseif ($id || $ref) print $form->selectDate($object->date_delivery ? $object->date_delivery : -1, 'liv_', 1, 1, '', "setdate_livraison", 1, 0); print ''; print ''; - } - else - { + } else { print $object->date_delivery ? dol_print_date($object->date_delivery, 'dayhour') : ' '; } print ''; @@ -1839,9 +1773,7 @@ elseif ($id || $ref) print ' '; print ' '; print ''; - } - else - { + } else { print $object->trueWeight; print ($object->trueWeight && $object->weight_units != '') ? ' '.measuringUnitString(0, "weight", $object->weight_units) : ''; } @@ -1874,9 +1806,7 @@ elseif ($id || $ref) print ' '; print ' '; print ''; - } - else - { + } else { print $object->trueHeight; print ($object->trueHeight && $object->height_units != '') ? ' '.measuringUnitString(0, "size", $object->height_units) : ''; } @@ -1907,8 +1837,7 @@ elseif ($id || $ref) if ($volumeUnit < 50) { print showDimensionInBestUnit($calculatedVolume, $volumeUnit, "volume", $langs, isset($conf->global->MAIN_VOLUME_DEFAULT_ROUND) ? $conf->global->MAIN_VOLUME_DEFAULT_ROUND : -1, isset($conf->global->MAIN_VOLUME_DEFAULT_UNIT) ? $conf->global->MAIN_VOLUME_DEFAULT_UNIT : 'no'); - } - else print $calculatedVolume.' '.measuringUnitString(0, "volume", $volumeUnit); + } else print $calculatedVolume.' '.measuringUnitString(0, "volume", $volumeUnit); } if ($totalVolume > 0) { @@ -1952,9 +1881,7 @@ elseif ($id || $ref) if ($user->admin) print info_admin($langs->trans("YouCanChangeValuesForThisListFromDictionarySetup"), 1); print ''; print ''; - } - else - { + } else { if ($object->shipping_method_id > 0) { // Get code using getLabelFromKey @@ -1985,9 +1912,7 @@ elseif ($id || $ref) if ($action != 'editincoterm') { print $form->textwithpicto($object->display_incoterms(), $object->label_incoterms, 1); - } - else - { + } else { print $form->select_incoterms((!empty($object->fk_incoterms) ? $object->fk_incoterms : ''), (!empty($object->location_incoterms) ? $object->location_incoterms : ''), $_SERVER['PHP_SELF'].'?id='.$object->id); } print ''; @@ -2046,9 +1971,7 @@ elseif ($id || $ref) if ($object->statut <= 1) { print $langs->trans("QtyToShip").' - '; - } - else - { + } else { print $langs->trans("QtyShipped").' - '; } if (!empty($conf->stock->enabled)) @@ -2060,15 +1983,11 @@ elseif ($id || $ref) print $langs->trans("Batch"); } print ''; - } - else - { + } else { if ($object->statut <= 1) { print '
    '; - } - else - { + } else { print ''; } if (!empty($conf->stock->enabled)) @@ -2177,9 +2096,7 @@ elseif ($id || $ref) $prod = new Product($db); $prod->fetch($lines[$i]->fk_product); $label = (!empty($prod->multilangs[$outputlangs->defaultlang]["label"])) ? $prod->multilangs[$outputlangs->defaultlang]["label"] : $lines[$i]->product_label; - } - else - $label = (!empty($lines[$i]->label) ? $lines[$i]->label : $lines[$i]->product_label); + } else $label = (!empty($lines[$i]->label) ? $lines[$i]->label : $lines[$i]->product_label); print '\n"; - } - else - { + } else { print ''; // Qty to ship or shipped - print ''; + print ''; // Batch number managment if ($lines[$i]->entrepot_id == 0) { @@ -2289,12 +2204,11 @@ elseif ($id || $ref) // add a 0 qty lot row to be able to add a lot print ''; // Qty to ship or shipped - print ''; + print ''; // Batch number managment print ''; print ''; - } - elseif (!empty($conf->stock->enabled)) + } elseif (!empty($conf->stock->enabled)) { if ($lines[$i]->fk_product > 0) { @@ -2303,52 +2217,45 @@ elseif ($id || $ref) print ''; print ''; // Qty to ship or shipped - print ''; + print ''; // Warehouse source print ''; // Batch number managment print ''; print ''; - } - elseif (count($lines[$i]->details_entrepot) > 1) + } elseif (count($lines[$i]->details_entrepot) > 1) { print ''; foreach ($lines[$i]->details_entrepot as $detail_entrepot) { print ''; // Qty to ship or shipped - print ''; + print ''; // Warehouse source print ''; // Batch number managment print ''; print ''; } - } - else - { + } else { print ''; print ''; } - } - else - { + } else { print ''; print ''; // Qty to ship or shipped - print ''; + print ''; // Warehouse source - print ''; + print ''; // Batch number managment - print ''; + print ''; print ''; } } print '
    '.$langs->trans("Label").'
    '.$langs->trans("Label").'
    '.$langs->trans("AddIn").''; print $formecm->selectAllSections((GETPOST("catParent", 'alpha') ? GETPOST("catParent", 'alpha') : $ecmdir->fk_parent), 'catParent', $module); @@ -300,9 +293,7 @@ if (empty($action) || $action == 'delete_section') if ($user->rights->ecm->setup) { print ''.$langs->trans('Delete').''; - } - else - { + } else { print ''.$langs->trans('Delete').''; } print ''; diff --git a/htdocs/ecm/dir_card.php b/htdocs/ecm/dir_card.php index 42c6b140f3c..27d08e9119f 100644 --- a/htdocs/ecm/dir_card.php +++ b/htdocs/ecm/dir_card.php @@ -42,11 +42,12 @@ $pageid = GETPOST('pageid', 'int'); if (empty($module)) $module = 'ecm'; // Get parameters +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; if (!$sortorder) $sortorder = "ASC"; @@ -73,8 +74,7 @@ if ($module == 'ecm') $relativepath = $ecmdir->getRelativePath(); $upload_dir = $conf->ecm->dir_output.'/'.$relativepath; -} -else // For example $module == 'medias' +} else // For example $module == 'medias' { $relativepath = $section; $upload_dir = $conf->medias->multidir_output[$conf->entity].'/'.$relativepath; @@ -109,9 +109,7 @@ if (GETPOST("sendit") && !empty($conf->global->MAIN_UPLOAD_DOC)) if (is_numeric($resupload) && $resupload > 0) { $result = $ecmdir->changeNbOfFiles('+'); - } - else - { + } else { $langs->load("errors"); if ($resupload < 0) // Unknown error { @@ -119,15 +117,12 @@ if (GETPOST("sendit") && !empty($conf->global->MAIN_UPLOAD_DOC)) } elseif (preg_match('/ErrorFileIsInfectedWithAVirus/', $resupload)) { // Files infected by a virus setEventMessages($langs->trans("ErrorFileIsInfectedWithAVirus"), null, 'errors'); - } - else // Known error + } else // Known error { setEventMessages($langs->trans($resupload), null, 'errors'); } } - } - else - { + } else { // Failed transfer (exceeding the limit file?) $langs->load("errors"); setEventMessages($langs->trans("ErrorFailToCreateDir", $upload_dir), null, 'errors'); @@ -166,20 +161,15 @@ if ($action == 'confirm_deletedir' && $confirm == 'yes') $langs->load('errors'); setEventMessages($langs->trans($ecmdir->error, $ecmdir->label), null, 'errors'); } - } - else - { + } else { if ($deletedirrecursive) { $resbool = dol_delete_dir_recursive($upload_dir, 0, 1); - } - else - { + } else { $resbool = dol_delete_dir($upload_dir, 1); } if ($resbool) $result = 1; - else - { + else { $langs->load('errors'); setEventMessages($langs->trans("ErrorFailToDeleteDir", $upload_dir), null, 'errors'); $result = 0; @@ -202,9 +192,7 @@ if ($action == 'update' && !GETPOST('cancel', 'alpha')) $oldlabel = $ecmdir->label; $olddir = $ecmdir->getRelativePath(0); $olddir = $conf->ecm->dir_output.'/'.$olddir; - } - else - { + } else { $olddir = GETPOST('section', 'alpha'); $olddir = $conf->medias->multidir_output[$conf->entity].'/'.$relativepath; } @@ -241,20 +229,14 @@ if ($action == 'update' && !GETPOST('cancel', 'alpha')) // Set new value after renaming $relativepath = $ecmdir->getRelativePath(); $upload_dir = $conf->ecm->dir_output.'/'.$relativepath; - } - else - { + } else { $db->rollback(); } - } - else - { + } else { $db->rollback(); setEventMessages($ecmdir->error, $ecmdir->errors, 'errors'); } - } - else - { + } else { $newdir = $conf->medias->multidir_output[$conf->entity].'/'.GETPOST('oldrelparentdir', 'alpha').'/'.GETPOST('label', 'alpha'); $result = @rename($olddir, $newdir); @@ -333,15 +315,12 @@ if ($module == 'ecm') if ($i == 0 && $action == 'edit') { $s = ''; - } - else $s = $tmpecmdir->getNomUrl(1).$s; + } else $s = $tmpecmdir->getNomUrl(1).$s; if ($tmpecmdir->fk_parent) { $s = ' -> '.$s; $result = $tmpecmdir->fetch($tmpecmdir->fk_parent); - } - else - { + } else { $tmpecmdir = 0; } $i++; @@ -364,8 +343,7 @@ if ($module == 'medias') $s .= ''; $s .= ''; $s .= ''; - } - else $s .= $subdir; + } else $s .= $subdir; } if ($i < (count($subdirs) - 1)) { @@ -396,8 +374,7 @@ if ($module == 'ecm') print ''; - } - else print dol_nl2br($ecmdir->description); + } else print dol_nl2br($ecmdir->description); print '
    '.$langs->trans("ECMCreationUser").''; @@ -410,9 +387,7 @@ print '
    '.$langs->trans("ECMCreationDate").'' if ($module == 'ecm') { print dol_print_date($ecmdir->date_c, 'dayhour'); -} -else -{ +} else { //var_dump($upload_dir); print dol_print_date(dol_filemtime($upload_dir), 'dayhour'); } @@ -421,9 +396,7 @@ print '
    '.$langs->trans("ECMDirectoryForFiles").''; if ($module == 'ecm') { print '/ecm/'.$relativepath; -} -else -{ +} else { print '/'.$module.'/'.$relativepath; } print '
    '.$langs->trans("Project").''; + print img_picto('', 'project'); $numprojet = $formproject->select_projects($soc->id, $projectid, 'projectid', 0); - print '   id).'">'.$langs->trans("AddProject").''; + print ' id).'">'; print '
    '.$langs->trans("Warehouse").' ('.$langs->trans("Stock").')'.$langs->trans("Warehouse").' / '.$langs->trans("Batch").' ('.$langs->trans("Stock").')"; if ($type == 1) $text = img_object($langs->trans('Service'), 'service'); else $text = img_object($langs->trans('Product'), 'product'); @@ -1213,9 +1176,7 @@ if ($action == 'create') if ($line->product_type == 1 && empty($conf->global->STOCK_SUPPORTS_SERVICES)) { $quantityToBeDelivered = 0; - } - else - { + } else { $quantityToBeDelivered = $quantityAsked - $quantityDelivered; } $warehouse_id = GETPOST('entrepot_id', 'int'); @@ -1237,8 +1198,7 @@ if ($action == 'create') if (GETPOST('qtyl'.$indiceAsked, 'int')) $deliverableQty = GETPOST('qtyl'.$indiceAsked, 'int'); print ''; print ''; - } - else print $langs->trans("NA"); + } else print $langs->trans("NA"); print '
    '; print ' '; @@ -1371,9 +1325,7 @@ if ($action == 'create') print '
    '.$langs->trans("QtyToShip").''.$langs->trans("QtyShipped").''; @@ -2212,9 +2129,7 @@ elseif ($id || $ref) print (!empty($lines[$i]->description) && $lines[$i]->description != $lines[$i]->product) ? '
    '.dol_htmlentitiesbr($lines[$i]->description) : ''; } print "
    '; if ($lines[$i]->product_type == Product::TYPE_SERVICE) $text = img_object($langs->trans('Service'), 'service'); else $text = img_object($langs->trans('Product'), 'product'); @@ -2276,7 +2191,7 @@ elseif ($id || $ref) { print '
    '.''.'
    '.''.''.$formproduct->selectLotStock('', 'batchl'.$line_id.'_0', '', 1, 0, $lines[$i]->fk_product).'
    '.''.''.$formproduct->selectWarehouses($lines[$i]->entrepot_id, 'entl'.$line_id, '', 1, 0, $lines[$i]->fk_product, '', 1).' - '.$langs->trans("NA").'
    '.''.''.$formproduct->selectWarehouses($detail_entrepot->entrepot_id, 'entl'.$detail_entrepot->line_id, '', 1, 0, $lines[$i]->fk_product, '', 1).' - '.$langs->trans("NA").'
    '.$langs->trans("NotEnoughStock").'
    '.''.''.''.'
    '.$lines[$i]->qty_shipped.''; @@ -2465,9 +2368,7 @@ elseif ($id || $ref) if ($action == 'editline' && $line->id == $line_id) { print $lines[$i]->showOptionals($extrafields, 'edit', array('colspan'=>$colspan), $indiceAsked); - } - else - { + } else { print $lines[$i]->showOptionals($extrafields, 'view', array('colspan'=>$colspan), $indiceAsked); } } @@ -2507,9 +2408,7 @@ elseif ($id || $ref) || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->expedition->shipping_advance->validate))) { print ''.$langs->trans("Validate").''; - } - else - { + } else { print ''.$langs->trans("Validate").''; } } @@ -2521,9 +2420,7 @@ elseif ($id || $ref) if (!empty($conf->facture->enabled) && !empty($conf->global->WORKFLOW_BILL_ON_SHIPMENT)) // Quand l'option est on, il faut avoir le bouton en plus et non en remplacement du Close ? { print ''.$langs->trans("ClassifyUnbilled").''; - } - else - { + } else { print ''.$langs->trans("ReOpen").''; } } @@ -2535,8 +2432,7 @@ elseif ($id || $ref) if (empty($conf->global->MAIN_USE_ADVANCED_PERMS) || $user->rights->expedition->shipping_advance->send) { print ''.$langs->trans('SendMail').''; - } - else print ''.$langs->trans('SendMail').''; + } else print ''.$langs->trans('SendMail').''; } } @@ -2573,6 +2469,16 @@ elseif ($id || $ref) } } + // Cancel + if ($object->statut == Expedition::STATUS_VALIDATED) + { + if ($user->rights->expedition->supprimer) + { + print ''.$langs->trans("Cancel").''; + } + } + + // Delete if ($user->rights->expedition->supprimer) { print ''.$langs->trans("Delete").''; diff --git a/htdocs/expedition/class/api_shipments.class.php b/htdocs/expedition/class/api_shipments.class.php index e337ee5ffb8..7bc4db0a511 100644 --- a/htdocs/expedition/class/api_shipments.class.php +++ b/htdocs/expedition/class/api_shipments.class.php @@ -166,8 +166,7 @@ class Shipments extends DolibarrApi } $i++; } - } - else { + } else { throw new RestException(503, 'Error when retrieve commande list : '.$db->lasterror()); } if (!count($obj_ret)) { @@ -398,9 +397,7 @@ class Shipments extends DolibarrApi $updateRes = $this->shipment->deleteline(DolibarrApiAccess::$user, $lineid); if ($updateRes > 0) { return $this->get($id); - } - else - { + } else { throw new RestException(405, $this->shipment->error); } } @@ -435,9 +432,7 @@ class Shipments extends DolibarrApi if ($this->shipment->update(DolibarrApiAccess::$user) > 0) { return $this->get($id); - } - else - { + } else { throw new RestException(500, $this->shipment->error); } } diff --git a/htdocs/expedition/class/expedition.class.php b/htdocs/expedition/class/expedition.class.php index 7cce1c282da..6b08d4db5e6 100644 --- a/htdocs/expedition/class/expedition.class.php +++ b/htdocs/expedition/class/expedition.class.php @@ -12,6 +12,7 @@ * Copyright (C) 2016 Ferran Marcet * Copyright (C) 2018 Nicolas ZABOURI * Copyright (C) 2018 Frédéric France + * Copyright (C) 2020 Lenin Rivas * * 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 @@ -74,7 +75,7 @@ class Expedition extends CommonObject /** * @var string String with name of icon for myobject. Must be the part after the 'object_' into object_myobject.png */ - public $picto = 'sending'; + public $picto = 'dolly'; public $socid; @@ -175,6 +176,10 @@ class Expedition extends CommonObject */ const STATUS_CLOSED = 2; + /** + * Canceled status + */ + const STATUS_CANCELED = -1; /** @@ -246,15 +251,11 @@ class Expedition extends CommonObject if ($numref != "") { return $numref; - } - else - { + } else { dol_print_error($this->db, get_class($this)."::getNextNumRef ".$obj->error); return ""; } - } - else - { + } else { print $langs->trans("Error")." ".$langs->trans("Error_EXPEDITION_ADDON_NUMBER_NotDefined"); return ""; } @@ -291,6 +292,7 @@ class Expedition extends CommonObject $sql .= ", entity"; $sql .= ", ref_customer"; $sql .= ", ref_int"; + $sql .= ", ref_ext"; $sql .= ", date_creation"; $sql .= ", fk_user_author"; $sql .= ", date_expedition"; @@ -315,6 +317,7 @@ class Expedition extends CommonObject $sql .= ", ".$conf->entity; $sql .= ", ".($this->ref_customer ? "'".$this->db->escape($this->ref_customer)."'" : "null"); $sql .= ", ".($this->ref_int ? "'".$this->db->escape($this->ref_int)."'" : "null"); + $sql .= ", ".($this->ref_ext ? "'".$this->db->escape($this->ref_ext)."'" : "null"); $sql .= ", '".$this->db->idate($now)."'"; $sql .= ", ".$user->id; $sql .= ", ".($this->date_expedition > 0 ? "'".$this->db->idate($this->date_expedition)."'" : "null"); @@ -360,9 +363,7 @@ class Expedition extends CommonObject { $error++; } - } - else - { // with batch management + } else { // with batch management if (!$this->create_line_batch($this->lines[$i], $this->lines[$i]->array_options) > 0) { $error++; @@ -380,7 +381,7 @@ class Expedition extends CommonObject } // Actions on extra fields - if (!$error && empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) + if (!$error) { $result = $this->insertExtraFields(); if ($result < 0) @@ -400,9 +401,7 @@ class Expedition extends CommonObject { $this->db->commit(); return $this->id; - } - else - { + } else { foreach ($this->errors as $errmsg) { dol_syslog(get_class($this)."::create ".$errmsg, LOG_ERR); @@ -411,25 +410,19 @@ class Expedition extends CommonObject $this->db->rollback(); return -1 * $error; } - } - else - { + } else { $error++; $this->error = $this->db->lasterror()." - sql=$sql"; $this->db->rollback(); return -3; } - } - else - { + } else { $error++; $this->error = $this->db->lasterror()." - sql=$sql"; $this->db->rollback(); return -2; } - } - else - { + } else { $error++; $this->error = $this->db->error()." - sql=$sql"; $this->db->rollback(); @@ -498,9 +491,7 @@ class Expedition extends CommonObject if (($line_id = $this->create_line($stockLocation, $line_ext->origin_line_id, $qty, $line_ext->rang, $array_options)) < 0) { $error++; - } - else - { + } else { // create shipment batch lines for stockLocation foreach ($tab as $detbatch) { @@ -534,7 +525,7 @@ class Expedition extends CommonObject // Check parameters if (empty($id) && empty($ref) && empty($ref_ext)) return -1; - $sql = "SELECT e.rowid, e.ref, e.fk_soc as socid, e.date_creation, e.ref_customer, e.ref_ext, e.ref_int, e.fk_user_author, e.fk_statut, e.fk_projet as fk_project, e.billed"; + $sql = "SELECT e.rowid, e.entity, e.ref, e.fk_soc as socid, e.date_creation, e.ref_customer, e.ref_ext, e.ref_int, e.fk_user_author, e.fk_statut, e.fk_projet as fk_project, e.billed"; $sql .= ", e.date_valid"; $sql .= ", e.weight, e.weight_units, e.size, e.size_units, e.width, e.height"; $sql .= ", e.date_expedition as date_expedition, e.model_pdf, e.fk_address, e.date_delivery"; @@ -563,6 +554,7 @@ class Expedition extends CommonObject $obj = $this->db->fetch_object($result); $this->id = $obj->rowid; + $this->entity = $obj->entity; $this->ref = $obj->ref; $this->socid = $obj->socid; $this->ref_customer = $obj->ref_customer; @@ -640,16 +632,12 @@ class Expedition extends CommonObject } return 1; - } - else - { + } else { dol_syslog(get_class($this).'::Fetch no expedition found', LOG_ERR); $this->error = 'Delivery with id '.$id.' not found'; return 0; } - } - else - { + } else { $this->error = $this->db->error(); return -1; } @@ -700,9 +688,7 @@ class Expedition extends CommonObject if (!$error && (preg_match('/^[\(]?PROV/i', $this->ref) || empty($this->ref))) // empty should not happened, but when it occurs, the test save life { $numref = $this->getNextNumRef($soc); - } - else - { + } else { $numref = "EXP".$this->id; } $this->newref = dol_sanitizeFileName($numref); @@ -753,9 +739,7 @@ class Expedition extends CommonObject if (empty($obj->edbrowid)) { $qty = $obj->qty; - } - else - { + } else { $qty = $obj->edbqty; } if ($qty <= 0) continue; @@ -777,9 +761,7 @@ class Expedition extends CommonObject $this->errors = array_merge($this->errors, $mouvS->errors); break; } - } - else - { + } else { // line with batch detail // We decrement stock of product (and sub-products) -> update table llx_product_stock (key of this table is fk_product+fk_entrepot) and add a movement record. @@ -793,9 +775,7 @@ class Expedition extends CommonObject } } } - } - else - { + } else { $this->db->rollback(); $this->error = $this->db->error(); return -2; @@ -869,9 +849,7 @@ class Expedition extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1 * $error; } @@ -901,16 +879,12 @@ class Expedition extends CommonObject if ($result > 0) { return $result; - } - else - { + } else { $this->error = $delivery->error; return $result; } - } - else return 0; - } - else return 0; + } else return 0; + } else return 0; } /** @@ -961,9 +935,7 @@ class Expedition extends CommonObject if ($entrepot_id > 0) { $product->load_stock('warehouseopen'); $product_stock = $product->stock_warehouse[$entrepot_id]->real; - } - else - $product_stock = $product->stock_reel; + } else $product_stock = $product->stock_reel; $product_type = $product->type; if ($product_type == 0 && $product_stock < $qty) @@ -1046,7 +1018,8 @@ class Expedition extends CommonObject } } $line->entrepot_id = $linebatch->entrepot_id; - $line->origin_line_id = $dbatch['ix_l']; + $line->origin_line_id = $dbatch['ix_l']; // deprecated + $line->fk_origin_line = $dbatch['ix_l']; $line->qty = $dbatch['qty']; $line->detail_batch = $tab; @@ -1104,6 +1077,7 @@ class Expedition extends CommonObject $sql .= " tms=".(dol_strlen($this->tms) != 0 ? "'".$this->db->idate($this->tms)."'" : 'null').","; $sql .= " ref=".(isset($this->ref) ? "'".$this->db->escape($this->ref)."'" : "null").","; + $sql .= " ref_ext=".(isset($this->ref_ext) ? "'".$this->db->escape($this->ref_ext)."'" : "null").","; $sql .= " ref_customer=".(isset($this->ref_customer) ? "'".$this->db->escape($this->ref_customer)."'" : "null").","; $sql .= " fk_soc=".(isset($this->socid) ? $this->socid : "null").","; $sql .= " date_creation=".(dol_strlen($this->date_creation) != 0 ? "'".$this->db->idate($this->date_creation)."'" : 'null').","; @@ -1157,14 +1131,218 @@ class Expedition extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } } + + /** + * Cancel shipment. + * + * @param int $notrigger Disable triggers + * @param bool $also_update_stock true if the stock should be increased back (false by default) + * @return int >0 if OK, 0 if deletion done but failed to delete files, <0 if KO + */ + public function cancel($notrigger = 0, $also_update_stock = false) + { + global $conf, $langs, $user; + + require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; + require_once DOL_DOCUMENT_ROOT.'/expedition/class/expeditionbatch.class.php'; + + $error=0; + $this->error=''; + + $this->db->begin(); + + // Add a protection to refuse deleting if shipment has at least one delivery + $this->fetchObjectLinked($this->id, 'shipping', 0, 'delivery'); // Get deliveries linked to this shipment + if (count($this->linkedObjectsIds) > 0) + { + $this->error='ErrorThereIsSomeDeliveries'; + $error++; + } + + if (! $error) + { + if (! $notrigger) + { + // Call trigger + $result=$this->call_trigger('SHIPPING_CANCEL', $user); + if ($result < 0) { $error++; } + // End call triggers + } + } + + // Stock control + if (! $error && $conf->stock->enabled && + (($conf->global->STOCK_CALCULATE_ON_SHIPMENT && $this->statut > self::STATUS_DRAFT) || + ($conf->global->STOCK_CALCULATE_ON_SHIPMENT_CLOSE && $this->statut == self::STATUS_CLOSED && $also_update_stock))) + { + require_once DOL_DOCUMENT_ROOT."/product/stock/class/mouvementstock.class.php"; + + $langs->load("agenda"); + + // Loop on each product line to add a stock movement and delete features + $sql = "SELECT cd.fk_product, cd.subprice, ed.qty, ed.fk_entrepot, ed.rowid as expeditiondet_id"; + $sql .= " FROM ".MAIN_DB_PREFIX."commandedet as cd,"; + $sql .= " ".MAIN_DB_PREFIX."expeditiondet as ed"; + $sql .= " WHERE ed.fk_expedition = ".$this->id; + $sql .= " AND cd.rowid = ed.fk_origin_line"; + + dol_syslog(get_class($this)."::delete select details", LOG_DEBUG); + $resql = $this->db->query($sql); + if ($resql) + { + $cpt = $this->db->num_rows($resql); + for ($i = 0; $i < $cpt; $i++) + { + dol_syslog(get_class($this)."::delete movement index ".$i); + $obj = $this->db->fetch_object($resql); + + $mouvS = new MouvementStock($this->db); + // we do not log origin because it will be deleted + $mouvS->origin = null; + // get lot/serial + $lotArray = null; + if ($conf->productbatch->enabled) + { + $lotArray = ExpeditionLineBatch::fetchAll($this->db, $obj->expeditiondet_id); + if (!is_array($lotArray)) + { + $error++; $this->errors[] = "Error ".$this->db->lasterror(); + } + } + if (empty($lotArray)) { + // no lot/serial + // We increment stock of product (and sub-products) + // We use warehouse selected for each line + $result = $mouvS->reception($user, $obj->fk_product, $obj->fk_entrepot, $obj->qty, 0, $langs->trans("ShipmentCanceledInDolibarr", $this->ref)); // Price is set to 0, because we don't want to see WAP changed + if ($result < 0) + { + $error++; $this->errors = $this->errors + $mouvS->errors; + break; + } + } else { + // We increment stock of batches + // We use warehouse selected for each line + foreach ($lotArray as $lot) + { + $result = $mouvS->reception($user, $obj->fk_product, $obj->fk_entrepot, $lot->qty, 0, $langs->trans("ShipmentCanceledInDolibarr", $this->ref), $lot->eatby, $lot->sellby, $lot->batch); // Price is set to 0, because we don't want to see WAP changed + if ($result < 0) + { + $error++; $this->errors = $this->errors + $mouvS->errors; + break; + } + } + if ($error) break; // break for loop incase of error + } + } + } else { + $error++; $this->errors[] = "Error ".$this->db->lasterror(); + } + } + + // delete batch expedition line + if (!$error && $conf->productbatch->enabled) + { + if (ExpeditionLineBatch::deletefromexp($this->db, $this->id) < 0) + { + $error++; $this->errors[] = "Error ".$this->db->lasterror(); + } + } + + + if (!$error) + { + $sql = "DELETE FROM ".MAIN_DB_PREFIX."expeditiondet"; + $sql .= " WHERE fk_expedition = ".$this->id; + + if ($this->db->query($sql)) + { + // Delete linked object + $res = $this->deleteObjectLinked(); + if ($res < 0) $error++; + + // No delete expedition + if (!$error) + { + $sql = "SELECT rowid FROM ".MAIN_DB_PREFIX."expedition"; + $sql .= " WHERE rowid = ".$this->id; + + if ($this->db->query($sql)) + { + if (!empty($this->origin) && $this->origin_id > 0) + { + $this->fetch_origin(); + $origin = $this->origin; + if ($this->$origin->statut == Commande::STATUS_SHIPMENTONPROCESS) // If order source of shipment is "shipment in progress" + { + // Check if there is no more shipment. If not, we can move back status of order to "validated" instead of "shipment in progress" + $this->$origin->loadExpeditions(); + //var_dump($this->$origin->expeditions);exit; + if (count($this->$origin->expeditions) <= 0) + { + $this->$origin->setStatut(Commande::STATUS_VALIDATED); + } + } + } + + if (!$error) + { + $this->db->commit(); + + // We delete PDFs + $ref = dol_sanitizeFileName($this->ref); + if (!empty($conf->expedition->dir_output)) + { + $dir = $conf->expedition->dir_output.'/sending/'.$ref; + $file = $dir.'/'.$ref.'.pdf'; + if (file_exists($file)) + { + if (!dol_delete_file($file)) + { + return 0; + } + } + if (file_exists($dir)) + { + if (!dol_delete_dir_recursive($dir)) + { + $this->error = $langs->trans("ErrorCanNotDeleteDir", $dir); + return 0; + } + } + } + + return 1; + } else { + $this->db->rollback(); + return -1; + } + } else { + $this->error = $this->db->lasterror()." - sql=$sql"; + $this->db->rollback(); + return -3; + } + } else { + $this->error = $this->db->lasterror()." - sql=$sql"; + $this->db->rollback(); + return -2; + }//*/ + } else { + $this->error = $this->db->lasterror()." - sql=$sql"; + $this->db->rollback(); + return -1; + } + } else { + $this->db->rollback(); + return -1; + } + } + /** * Delete shipment. * Warning, do not delete a shipment if a delivery is linked to (with table llx_element_element) @@ -1253,9 +1431,7 @@ class Expedition extends CommonObject $error++; $this->errors = $this->errors + $mouvS->errors; break; } - } - else - { + } else { // We increment stock of batches // We use warehouse selected for each line foreach ($lotArray as $lot) @@ -1270,9 +1446,7 @@ class Expedition extends CommonObject if ($error) break; // break for loop incase of error } } - } - else - { + } else { $error++; $this->errors[] = "Error ".$this->db->lasterror(); } } @@ -1288,15 +1462,23 @@ class Expedition extends CommonObject if (!$error) { + $main = MAIN_DB_PREFIX.'expeditiondet'; + $ef = $main."_extrafields"; + $sqlef = "DELETE FROM $ef WHERE fk_object IN (SELECT rowid FROM $main WHERE fk_expedition = ".$this->id.")"; + $sql = "DELETE FROM ".MAIN_DB_PREFIX."expeditiondet"; $sql .= " WHERE fk_expedition = ".$this->id; - if ($this->db->query($sql)) + if ($this->db->query($sqlef) && $this->db->query($sql)) { // Delete linked object $res = $this->deleteObjectLinked(); if ($res < 0) $error++; + // delete extrafields + $res = $this->deleteExtraFields(); + if ($res < 0) $error++; + if (!$error) { $sql = "DELETE FROM ".MAIN_DB_PREFIX."expedition"; @@ -1348,36 +1530,26 @@ class Expedition extends CommonObject } return 1; - } - else - { + } else { $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = $this->db->lasterror()." - sql=$sql"; $this->db->rollback(); return -3; } - } - else - { + } else { $this->error = $this->db->lasterror()." - sql=$sql"; $this->db->rollback(); return -2; } - } - else - { + } else { $this->error = $this->db->lasterror()." - sql=$sql"; $this->db->rollback(); return -1; } - } - else - { + } else { $this->db->rollback(); return -1; } @@ -1534,9 +1706,7 @@ class Expedition extends CommonObject if ($originline != $obj->fk_origin_line) { $line->detail_batch = $newdetailbatch; - } - else - { + } else { $line->detail_batch = array_merge($line->detail_batch, $newdetailbatch); } } @@ -1546,9 +1716,7 @@ class Expedition extends CommonObject { $this->lines[$lineindex] = $line; $lineindex++; - } - else - { + } else { $line->total_ht += $tabprice[0]; $line->total_localtax1 += $tabprice[9]; $line->total_localtax2 += $tabprice[10]; @@ -1561,9 +1729,7 @@ class Expedition extends CommonObject } $this->db->free($resql); return 1; - } - else - { + } else { $this->error = $this->db->error(); return -3; } @@ -1595,15 +1761,11 @@ class Expedition extends CommonObject $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = 'ErrorDeleteLineNotAllowedByObjectStatus'; return -2; } @@ -1626,7 +1788,7 @@ class Expedition extends CommonObject global $langs, $conf; $result = ''; - $label = ''.$langs->trans("ShowSending").''; + $label = ''.$langs->trans("Shipment").''; $label .= '
    '.$langs->trans('Ref').': '.$this->ref; $label .= '
    '.$langs->trans('RefCustomer').': '.($this->ref_customer ? $this->ref_customer : $this->ref_client); @@ -1647,14 +1809,15 @@ class Expedition extends CommonObject { if (!empty($conf->global->MAIN_OPTIMIZEFORTEXTBROWSER)) { - $label = $langs->trans("ShowSending"); + $label = $langs->trans("Shipment"); $linkclose .= ' alt="'.dol_escape_htmltag($label, 1).'"'; } $linkclose .= ' title="'.dol_escape_htmltag($label, 1).'"'; $linkclose .= ' class="classfortooltip"'; } - $linkstart = ''; + $linkstart = ''; $linkend = ''; $result .= $linkstart; @@ -1802,15 +1965,11 @@ class Expedition extends CommonObject { $this->date_delivery = $date_livraison; return 1; - } - else - { + } else { $this->error = $this->db->error(); return -1; } - } - else - { + } else { return -2; } } @@ -1895,9 +2054,7 @@ class Expedition extends CommonObject $sql = "INSERT INTO ".MAIN_DB_PREFIX."c_shipment_mode (code, libelle, description, tracking)"; $sql .= " VALUES ('".$this->db->escape($this->update['code'])."','".$this->db->escape($this->update['libelle'])."','".$this->db->escape($this->update['description'])."','".$this->db->escape($this->update['tracking'])."')"; $resql = $this->db->query($sql); - } - else - { + } else { $sql = "UPDATE ".MAIN_DB_PREFIX."c_shipment_mode SET"; $sql .= " code='".$this->db->escape($this->update['code'])."'"; $sql .= ",libelle='".$this->db->escape($this->update['libelle'])."'"; @@ -1971,9 +2128,7 @@ class Expedition extends CommonObject { $url = str_replace('{TRACKID}', $value, $tracking); $this->tracking_url = sprintf(''.($value ? $value : 'url').'', $url, $url); - } - else - { + } else { $this->tracking_url = $value; } } @@ -2063,9 +2218,7 @@ class Expedition extends CommonObject if (empty($obj->edbrowid)) { $qty = $obj->qty; - } - else - { + } else { $qty = $obj->edbqty; } if ($qty <= 0) continue; @@ -2085,9 +2238,7 @@ class Expedition extends CommonObject $this->errors = $mouvS->errors; $error++; break; } - } - else - { + } else { // line with batch detail // We decrement stock of product (and sub-products) -> update table llx_product_stock (key of this table is fk_product+fk_entrepot) and add a movement record @@ -2099,9 +2250,7 @@ class Expedition extends CommonObject } } } - } - else - { + } else { $this->error = $this->db->lasterror(); $error++; } @@ -2115,9 +2264,7 @@ class Expedition extends CommonObject $error++; } } - } - else - { + } else { dol_print_error($this->db); $error++; } @@ -2126,9 +2273,7 @@ class Expedition extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->statut = self::STATUS_VALIDATED; $this->db->rollback(); return -1; @@ -2171,9 +2316,7 @@ class Expedition extends CommonObject if (empty($error)) { $this->db->commit(); return 1; - } - else - { + } else { $this->statut = self::STATUS_VALIDATED; $this->billed = 0; $this->db->rollback(); @@ -2240,9 +2383,7 @@ class Expedition extends CommonObject if (empty($obj->edbrowid)) { $qty = $obj->qty; - } - else - { + } else { $qty = $obj->edbqty; } if ($qty <= 0) continue; @@ -2263,9 +2404,7 @@ class Expedition extends CommonObject $this->errors = $mouvS->errors; $error++; break; } - } - else - { + } else { // line with batch detail // We decrement stock of product (and sub-products) -> update table llx_product_stock (key of this table is fk_product+fk_entrepot) and add a movement record @@ -2277,9 +2416,7 @@ class Expedition extends CommonObject } } } - } - else - { + } else { $this->error = $this->db->lasterror(); $error++; } @@ -2301,9 +2438,7 @@ class Expedition extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->statut = self::STATUS_CLOSED; $this->billed = $oldbilled; $this->db->rollback(); @@ -2555,9 +2690,7 @@ class ExpeditionLigne extends CommonObjectLine $this->db->free($result); return 1; - } - else - { + } else { $this->errors[] = $this->db->lasterror(); $this->error = $this->db->lasterror(); return -1; @@ -2616,7 +2749,7 @@ class ExpeditionLigne extends CommonObjectLine { $this->id = $this->db->last_insert_id(MAIN_DB_PREFIX."expeditiondet"); - if (!$error && empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) + if (!$error) { $result = $this->insertExtraFields(); if ($result < 0) @@ -2649,9 +2782,7 @@ class ExpeditionLigne extends CommonObjectLine $this->db->rollback(); return -1 * $error; - } - else - { + } else { $error++; } } @@ -2690,7 +2821,7 @@ class ExpeditionLigne extends CommonObjectLine if (!$error && $this->db->query($sql)) { // Remove extrafields - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + if (!$error) { $result = $this->deleteExtraFields(); if ($result < 0) @@ -2710,9 +2841,7 @@ class ExpeditionLigne extends CommonObjectLine } // End call triggers } - } - else - { + } else { $this->errors[] = $this->db->lasterror()." - sql=$sql"; $error++; } @@ -2720,9 +2849,7 @@ class ExpeditionLigne extends CommonObjectLine if (!$error) { $this->db->commit(); return 1; - } - else - { + } else { foreach ($this->errors as $errmsg) { dol_syslog(get_class($this)."::delete ".$errmsg, LOG_ERR); @@ -2764,9 +2891,7 @@ class ExpeditionLigne extends CommonObjectLine dol_syslog(get_class($this).'::update only possible for one batch', LOG_ERR); $this->errors[] = 'ErrorBadParameters'; $error++; - } - else - { + } else { $batch = $this->detail_batch[0]->batch; $batch_id = $this->detail_batch[0]->fk_origin_stock; $expedition_batch_id = $this->detail_batch[0]->id; @@ -2778,8 +2903,7 @@ class ExpeditionLigne extends CommonObjectLine } $qty = price2num($this->detail_batch[0]->qty); } - } - elseif (!empty($this->detail_batch)) + } elseif (!empty($this->detail_batch)) { $batch = $this->detail_batch->batch; $batch_id = $this->detail_batch->fk_origin_stock; @@ -2820,9 +2944,7 @@ class ExpeditionLigne extends CommonObjectLine { $this->errors[] = $this->db->lasterror()." - ExpeditionLineBatch::fetchAll"; $error++; - } - else - { + } else { // caculate new total line qty foreach ($lotArray as $lot) { @@ -2894,7 +3016,7 @@ class ExpeditionLigne extends CommonObjectLine if (!$error) { - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + if (!$error) { $result = $this->insertExtraFields(); if ($result < 0) @@ -2919,9 +3041,7 @@ class ExpeditionLigne extends CommonObjectLine if (!$error) { $this->db->commit(); return 1; - } - else - { + } else { foreach ($this->errors as $errmsg) { dol_syslog(get_class($this)."::update ".$errmsg, LOG_ERR); diff --git a/htdocs/expedition/class/expeditionbatch.class.php b/htdocs/expedition/class/expeditionbatch.class.php index 6c9942dd9a8..703d44e6896 100644 --- a/htdocs/expedition/class/expeditionbatch.class.php +++ b/htdocs/expedition/class/expeditionbatch.class.php @@ -90,9 +90,7 @@ class ExpeditionLineBatch extends CommonObject $this->db->free($resql); return 1; - } - else - { + } else { $this->error = "Error ".$this->db->lasterror(); return -1; } @@ -135,9 +133,7 @@ class ExpeditionLineBatch extends CommonObject $this->id = $this->db->last_insert_id(MAIN_DB_PREFIX.self::$_table_element); $this->fk_expeditiondet = $id_line_expdet; return $this->id; - } - else - { + } else { foreach ($this->errors as $errmsg) { dol_syslog(get_class($this)."::create ".$errmsg, LOG_ERR); @@ -166,9 +162,7 @@ class ExpeditionLineBatch extends CommonObject if ($db->query($sql)) { return 1; - } - else - { + } else { return -1; } } @@ -230,9 +224,7 @@ class ExpeditionLineBatch extends CommonObject } $db->free($resql); return $ret; - } - else - { + } else { dol_print_error($db); return -1; } diff --git a/htdocs/expedition/contact.php b/htdocs/expedition/contact.php index 36d471b59d3..c20e2bb4088 100644 --- a/htdocs/expedition/contact.php +++ b/htdocs/expedition/contact.php @@ -87,9 +87,7 @@ if ($action == 'addcontact' && $user->rights->expedition->creer) { header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else - { + } else { if ($objectsrc->error == 'DB_ERROR_RECORD_ALREADY_EXISTS') { $langs->load("errors"); @@ -117,8 +115,7 @@ elseif ($action == 'deletecontact' && $user->rights->expedition->creer) { header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else { + } else { dol_print_error($db); } } diff --git a/htdocs/expedition/document.php b/htdocs/expedition/document.php index 65786dfbdae..69f59cb3385 100644 --- a/htdocs/expedition/document.php +++ b/htdocs/expedition/document.php @@ -53,11 +53,12 @@ if ($user->socid) $result = restrictedArea($user, 'expedition', $id, ''); // Get parameters +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; if (!$sortorder) $sortorder = "ASC"; @@ -175,12 +176,10 @@ if ($id > 0 || !empty($ref)) { $permtoedit = $user->rights->expedition->creer; $param = '&id='.$object->id; include_once DOL_DOCUMENT_ROOT.'/core/tpl/document_actions_post_headers.tpl.php'; - } - else { + } else { dol_print_error($db); } -} -else { +} else { header('Location: index.php'); exit; } diff --git a/htdocs/expedition/index.php b/htdocs/expedition/index.php index a930fed21b0..849e2054cd6 100644 --- a/htdocs/expedition/index.php +++ b/htdocs/expedition/index.php @@ -47,7 +47,7 @@ $shipment = new Expedition($db); $helpurl = 'EN:Module_Shipments|FR:Module_Expéditions|ES:Módulo_Expediciones'; llxHeader('', $langs->trans("Shipment"), $helpurl); -print load_fiche_titre($langs->trans("SendingsArea")); +print load_fiche_titre($langs->trans("SendingsArea"), '', 'dolly'); print '
    '; @@ -120,8 +120,7 @@ if ($resql) print '
    '.$langs->trans("None").'

    "; } $db->free($resql); -} -else dol_print_error($db); +} else dol_print_error($db); /* * Open orders @@ -259,8 +257,7 @@ if ($resql) print "

    "; } -} -else dol_print_error($db); +} else dol_print_error($db); print ''; diff --git a/htdocs/expedition/list.php b/htdocs/expedition/list.php index 6f33c41c9dc..74efaaeb27a 100644 --- a/htdocs/expedition/list.php +++ b/htdocs/expedition/list.php @@ -56,6 +56,7 @@ $search_ref_exp = GETPOST("search_ref_exp", 'alpha'); $search_ref_liv = GETPOST('search_ref_liv', 'alpha'); $search_ref_customer = GETPOST('search_ref_customer', 'alpha'); $search_company = GETPOST("search_company", 'alpha'); +$search_tracking = GETPOST("search_tracking", 'alpha'); $search_town = GETPOST('search_town', 'alpha'); $search_zip = GETPOST('search_zip', 'alpha'); $search_state = trim(GETPOST("search_state")); @@ -106,6 +107,7 @@ $fieldstosearchall = array( 'e.ref'=>"Ref", 's.nom'=>"ThirdParty", 'e.note_public'=>'NotePublic', + 'e.tracking_number'=>"TrackingNumber", ); if (empty($user->socid)) $fieldstosearchall["e.note_private"] = "NotePrivate"; @@ -120,6 +122,7 @@ $arrayfields = array( 'country.code_iso'=>array('label'=>$langs->trans("Country"), 'checked'=>0), 'typent.code'=>array('label'=>$langs->trans("ThirdPartyType"), 'checked'=>$checkedtypetiers), 'e.date_delivery'=>array('label'=>$langs->trans("DateDeliveryPlanned"), 'checked'=>1), + 'e.tracking_number'=>array('label'=>$langs->trans("TrackingNumber"), 'checked'=>1), 'e.weight'=>array('label'=>$langs->trans("Weight"), 'checked'=>0), 'e.datec'=>array('label'=>$langs->trans("DateCreation"), 'checked'=>0, 'position'=>500), 'e.tms'=>array('label'=>$langs->trans("DateModificationShort"), 'checked'=>0, 'position'=>500), @@ -172,6 +175,7 @@ if (GETPOST('button_removefilter_x', 'alpha') || GETPOST('button_removefilter.x' $search_state = ""; $search_type = ''; $search_country = ''; + $search_tracking=''; $search_type_thirdparty = ''; $search_billed = ''; $search_datedelivery_start = ''; @@ -214,7 +218,7 @@ llxHeader('', $langs->trans('ListOfSendings'), $helpurl); $sql = 'SELECT'; if ($sall || $search_product_category > 0) $sql = 'SELECT DISTINCT'; -$sql .= " e.rowid, e.ref, e.ref_customer, e.date_expedition as date_expedition, e.weight, e.weight_units, e.date_delivery as date_livraison, l.date_delivery as date_reception, e.fk_statut, e.billed,"; +$sql .= " e.rowid, e.ref, e.ref_customer, e.date_expedition as date_expedition, e.weight, e.weight_units, e.date_delivery as date_livraison, l.date_delivery as date_reception, e.fk_statut, e.billed, e.tracking_number,"; $sql .= " s.rowid as socid, s.nom as name, s.town, s.zip, s.fk_pays, s.client, s.code_client, "; $sql .= " typent.code as typent_code,"; $sql .= " state.code_departement as state_code, state.nom as state_name,"; @@ -273,6 +277,7 @@ if ($search_town) $sql .= natural_search('s.town', $search_town); if ($search_zip) $sql .= natural_search("s.zip", $search_zip); if ($search_state) $sql .= natural_search("state.nom", $search_state); if ($search_country) $sql .= " AND s.fk_pays IN (".$search_country.')'; +if ($search_tracking) $sql.= natural_search("e.tracking_number", $search_tracking); if ($search_type_thirdparty) $sql .= " AND s.fk_typent IN (".$search_type_thirdparty.')'; if ($search_sale > 0) $sql .= " AND s.rowid = sc.fk_soc AND sc.fk_user = ".$search_sale; if ($search_ref_exp) $sql .= natural_search('e.ref', $search_ref_exp); @@ -330,6 +335,7 @@ if ($resql) if ($search_user > 0) $param .= '&search_user='.urlencode($search_user); if ($search_sale > 0) $param .= '&search_sale='.urlencode($search_sale); if ($search_company) $param .= "&search_company=".urlencode($search_company); + if ($search_tracking) $param.= "&search_tracking=".urlencode($search_tracking); if ($search_town) $param .= '&search_town='.urlencode($search_town); if ($search_zip) $param .= '&search_zip='.urlencode($search_zip); @@ -365,11 +371,10 @@ if ($resql) print ''; print ''; print ''; - print ''; print ''; print ''; - print_barre_liste($langs->trans('ListOfSendings'), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, '', 0, $newcardbutton, '', $limit); + print_barre_liste($langs->trans('ListOfSendings'), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'dolly', 0, $newcardbutton, '', $limit, 0, 0, 1); $topicmail = "SendShippingRef"; $modelmail = "shipping_send"; @@ -508,6 +513,13 @@ if ($resql) print ''; print ''; } + // Tracking number + if (! empty($arrayfields['e.tracking_number']['checked'])) + { + print ''; + print ''; + print ''; + } if (!empty($arrayfields['l.ref']['checked'])) { // Delivery ref @@ -580,6 +592,7 @@ if ($resql) if (!empty($arrayfields['typent.code']['checked'])) print_liste_field_titre($arrayfields['typent.code']['label'], $_SERVER["PHP_SELF"], "typent.code", "", $param, '', $sortfield, $sortorder, 'center '); if (!empty($arrayfields['e.weight']['checked'])) print_liste_field_titre($arrayfields['e.weight']['label'], $_SERVER["PHP_SELF"], "e.weight", "", $param, '', $sortfield, $sortorder, 'center '); if (!empty($arrayfields['e.date_delivery']['checked'])) print_liste_field_titre($arrayfields['e.date_delivery']['label'], $_SERVER["PHP_SELF"], "e.date_delivery", "", $param, '', $sortfield, $sortorder, 'center '); + if (! empty($arrayfields['e.tracking_number']['checked'])) print_liste_field_titre($arrayfields['e.tracking_number']['label'], $_SERVER["PHP_SELF"], "e.tracking_number", "", $param, '', $sortfield, $sortorder, 'center '); if (!empty($arrayfields['l.ref']['checked'])) print_liste_field_titre($arrayfields['l.ref']['label'], $_SERVER["PHP_SELF"], "l.ref", "", $param, '', $sortfield, $sortorder); if (!empty($arrayfields['l.date_delivery']['checked'])) print_liste_field_titre($arrayfields['l.date_delivery']['label'], $_SERVER["PHP_SELF"], "l.date_delivery", "", $param, '', $sortfield, $sortorder, 'center '); // Extra fields @@ -687,9 +700,7 @@ if ($resql) $tmparray = $object->getTotalWeightVolume(); print showDimensionInBestUnit($tmparray['weight'], 0, "weight", $langs, isset($conf->global->MAIN_WEIGHT_DEFAULT_ROUND) ? $conf->global->MAIN_WEIGHT_DEFAULT_ROUND : -1, isset($conf->global->MAIN_WEIGHT_DEFAULT_UNIT) ? $conf->global->MAIN_WEIGHT_DEFAULT_UNIT : 'no'); print $form->textwithpicto('', $langs->trans('EstimatedWeight'), 1); - } - else - { + } else { print $object->trueWeight; print ($object->trueWeight && $object->weight_units != '') ? ' '.measuringUnitString(0, "weight", $object->weight_units) : ''; } @@ -700,13 +711,19 @@ if ($resql) if (!empty($arrayfields['e.date_delivery']['checked'])) { print ''; - print dol_print_date($db->jdate($obj->date_livraison), "day"); + print dol_print_date($db->jdate($obj->date_livraison), "dayhour"); /*$now = time(); if ( ($now - $db->jdate($obj->date_expedition)) > $conf->warnings->lim && $obj->statutid == 1 ) { }*/ print "\n"; } + // Tracking number + if (! empty($arrayfields['e.tracking_number']['checked'])) + { + print ''.$obj->tracking_number."\n"; + if (! $i) $totalarray['nbfield']++; + } if (!empty($arrayfields['l.ref']['checked']) || !empty($arrayfields['l.date_delivery']['checked'])) { @@ -734,7 +751,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, 'totalarray'=>&$totalarray); $reshook = $hookmanager->executeHooks('printFieldListValue', $parameters); // Note that $action and $object may have been modified by hook print $hookmanager->resPrint; // Date creation @@ -804,9 +821,7 @@ if ($resql) $title = ''; print $formfile->showdocuments('massfilesarea_sendings', '', $filedir, $urlsource, 0, $delallowed, '', 1, 1, 0, 48, 1, $param, $title, '', '', '', null, $hidegeneratedfilelistifempty); -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/expedition/shipment.php b/htdocs/expedition/shipment.php index 75ee2ef4da3..f494ef563fb 100644 --- a/htdocs/expedition/shipment.php +++ b/htdocs/expedition/shipment.php @@ -103,16 +103,17 @@ if (empty($reshook)) } if ($action == 'setdatedelivery' && $user->rights->commande->creer) - { - //print "x ".$_POST['liv_month'].", ".$_POST['liv_day'].", ".$_POST['liv_year']; - $datelivraison = dol_mktime(0, 0, 0, GETPOST('liv_month', 'int'), GETPOST('liv_day', 'int'), GETPOST('liv_year', 'int')); + { + //print "x ".$_POST['liv_month'].", ".$_POST['liv_day'].", ".$_POST['liv_year']; + $datedelivery = dol_mktime(GETPOST('liv_hour', 'int'), GETPOST('liv_min', 'int'), 0, GETPOST('liv_month', 'int'), GETPOST('liv_day', 'int'), GETPOST('liv_year', 'int')); - $object = new Commande($db); - $object->fetch($id); - $result = $object->set_date_livraison($user, $datelivraison); - if ($result < 0) - setEventMessages($object->error, $object->errors, 'errors'); - } + $object->fetch($id); + $result = $object->set_date_livraison($user, $datedelivery); + if ($result < 0) + { + setEventMessages($object->error, $object->errors, 'errors'); + } + } /* if ($action == 'setdeliveryaddress' && $user->rights->commande->creer) { @@ -352,7 +353,7 @@ if ($id > 0 || !empty($ref)) // Date print ''.$langs->trans('Date').''; print ''; - print dol_print_date($object->date, 'daytext'); + print dol_print_date($object->date, 'day'); if ($object->hasDelay() && empty($object->date_livraison)) { print ' '.img_picto($langs->trans("Late").' : '.$object->showDelay(), "warning"); } @@ -373,13 +374,11 @@ if ($id > 0 || !empty($ref)) print '
    '; print ''; print ''; - print $form->selectDate($object->date_livraison > 0 ? $object->date_livraison : -1, 'liv_', '', '', '', "setdatedelivery"); + print $form->selectDate($object->date_livraison ? $object->date_livraison : -1, 'liv_', 1, 1, '', "setdate_livraison", 1, 0); print ''; print '
    '; - } - else - { - print dol_print_date($object->date_livraison, 'daytext'); + } else { + print dol_print_date($object->date_livraison, 'dayhour'); if ($object->hasDelay() && !empty($object->date_livraison)) { print ' '.img_picto($langs->trans("Late").' : '.$object->showDelay(), "warning"); } @@ -530,9 +529,7 @@ if ($id > 0 || !empty($ref)) if ($action != 'editincoterm') { print $form->textwithpicto($object->display_incoterms(), $object->label_incoterms, 1); - } - else - { + } else { print $form->select_incoterms((!empty($object->fk_incoterms) ? $object->fk_incoterms : ''), (!empty($object->location_incoterms) ? $object->location_incoterms : ''), $_SERVER['PHP_SELF'].'?id='.$object->id); } print ''; @@ -643,9 +640,7 @@ if ($id > 0 || !empty($ref)) if (!empty($conf->stock->enabled)) { print ''.$langs->trans("RealStock").''; - } - else - { + } else { print ' '; } print "\n"; @@ -696,9 +691,7 @@ if ($id > 0 || !empty($ref)) } $label = (!empty($prod->multilangs[$outputlangs->defaultlang]["label"])) ? $prod->multilangs[$outputlangs->defaultlang]["label"] : $objp->product_label; - } - else - $label = (!empty($objp->label) ? $objp->label : $objp->product_label); + } else $label = (!empty($objp->label) ? $objp->label : $objp->product_label); print ''; print ''; // ancre pour retourner sur la ligne @@ -738,9 +731,7 @@ if ($id > 0 || !empty($ref)) } print ''; - } - else - { + } else { print ""; if ($type == 1) $text = img_object($langs->trans('Service'), 'service'); else $text = img_object($langs->trans('Product'), 'product'); @@ -775,9 +766,7 @@ if ($id > 0 || !empty($ref)) $toBeShipped[$objp->fk_product] = $objp->qty - $qtyAlreadyShipped; $toBeShippedTotal += $toBeShipped[$objp->fk_product]; print $toBeShipped[$objp->fk_product]; - } - else - { + } else { print '0 ('.$langs->trans("Service").')'; } print ''; @@ -798,9 +787,7 @@ if ($id > 0 || !empty($ref)) print ' '.img_warning($langs->trans("StockTooLow")); } print ''; - } - else - { + } else { print ' '; } print "\n"; @@ -843,9 +830,7 @@ if ($id > 0 || !empty($ref)) } print ""; - } - else - { + } else { dol_print_error($db); } @@ -870,9 +855,7 @@ if ($id > 0 || !empty($ref)) { print ' '.img_warning($langs->trans("WarningNoQtyLeftToSend")); } - } - else - { + } else { print ''.$langs->trans("CreateShipment").''; } } @@ -934,9 +917,7 @@ if ($id > 0 || !empty($ref)) print ''; $somethingshown = 1; - } - else - { + } else { print ''; @@ -944,9 +925,7 @@ if ($id > 0 || !empty($ref)) } show_list_sending_receive('commande', $object->id); - } - else - { + } else { /* Order not found */ setEventMessages($langs->trans("NonExistentOrder"), null, 'errors'); } diff --git a/htdocs/expedition/stats/index.php b/htdocs/expedition/stats/index.php index 5d3c8038bc2..fcccb545a33 100644 --- a/htdocs/expedition/stats/index.php +++ b/htdocs/expedition/stats/index.php @@ -58,7 +58,7 @@ $form = new Form($db); llxHeader(); -print load_fiche_titre($langs->trans("StatisticsOfSendings"), $mesg); +print load_fiche_titre($langs->trans("StatisticsOfSendings"), '', 'dolly'); dol_mkdir($dir); @@ -74,9 +74,7 @@ $data = $stats->getNbByMonthWithPrevYear($endyear, $startyear); if (!$user->rights->societe->client->voir || $user->socid) { $filenamenb = $dir.'/shipmentsnbinyear-'.$user->id.'-'.$year.'.png'; -} -else -{ +} else { $filenamenb = $dir.'/shipmentsnbinyear-'.$year.'.png'; } @@ -290,8 +288,7 @@ print '
    '; // Show graphs print ''; print ''; - } - else - { + } else { print ''; print ''; print ''; - } - elseif ($object->fk_statut == ExpenseReport::STATUS_CANCELED) + } elseif ($object->fk_statut == ExpenseReport::STATUS_CANCELED) { print ''; print ''; @@ -1893,9 +1799,7 @@ else print ''; print ''; print ''; - } - else - { + } else { print ''; print ''; print ''; $db->free($resql); - } - else - { + } else { dol_print_error($db); } print "
    '; -if ($mesg) { print $mesg; } -else { +if ($mesg) { print $mesg; } else { print $px1->show(); print "
    \n"; /*print $px2->show(); diff --git a/htdocs/expensereport/ajax/ajaxik.php b/htdocs/expensereport/ajax/ajaxik.php index b2c89f68e41..413bc061fbf 100644 --- a/htdocs/expensereport/ajax/ajaxik.php +++ b/htdocs/expensereport/ajax/ajaxik.php @@ -52,22 +52,18 @@ $fk_c_exp_tax_cat = GETPOST('fk_c_exp_tax_cat'); if (empty($fk_expense) || $fk_expense < 0) echo json_encode(array('error' => $langs->transnoentitiesnoconv('ErrorBadValueForParameter', $fk_expense, 'fk_expense'))); elseif (empty($fk_c_exp_tax_cat) || $fk_c_exp_tax_cat < 0) echo json_encode(array('error' => $langs->transnoentitiesnoconv('ErrorBadValueForParameter', $fk_c_exp_tax_cat, 'fk_c_exp_tax_cat'))); -else -{ +else { // @see ndfp.class.php:3576 (method: compute_total_km) $expense = new ExpenseReport($db); if ($expense->fetch($fk_expense) <= 0) echo json_encode(array('error' => $langs->transnoentitiesnoconv('ErrorRecordNotFound'), 'fk_expense' => $fk_expense)); - else - { + else { $userauthor = new User($db); if ($userauthor->fetch($expense->fk_user_author) <= 0) echo json_encode(array('error' => $langs->transnoentitiesnoconv('ErrorRecordNotFound'), 'fk_user_author' => $expense->fk_user_author)); - else - { + else { $range = ExpenseReportIk::getRangeByUser($userauthor, $fk_c_exp_tax_cat); if (empty($range)) echo json_encode(array('error' => $langs->transnoentitiesnoconv('ErrorRecordNotFound'), 'range' => $range)); - else - { + else { $ikoffset = price($range->ikoffset, 0, $langs, 1, -1, -1, $conf->currency); echo json_encode(array('up' => $range->coef, 'ikoffset' => $range->ikoffset, 'title' => $langs->transnoentitiesnoconv('ExpenseRangeOffset', $offset), 'comment' => 'offset should be apply on addline or updateline')); } diff --git a/htdocs/expensereport/ajax/ajaxprojet.php b/htdocs/expensereport/ajax/ajaxprojet.php index 2fdb0cd4fdb..49a7bd4201e 100644 --- a/htdocs/expensereport/ajax/ajaxprojet.php +++ b/htdocs/expensereport/ajax/ajaxprojet.php @@ -76,13 +76,9 @@ if (GETPOST('fk_projet') != '') } echo json_encode($return_arr); - } - else - { + } else { echo json_encode(array('nom'=>'Error', 'label'=>'Error', 'key'=>'Error', 'value'=>'Error')); } -} -else -{ +} else { echo json_encode(array('nom'=>'ErrorBadParameter', 'label'=>'ErrorBadParameter', 'key'=>'ErrorBadParameter', 'value'=>'ErrorBadParameter')); } diff --git a/htdocs/expensereport/card.php b/htdocs/expensereport/card.php index fd582ac0a1e..f5348bb4261 100644 --- a/htdocs/expensereport/card.php +++ b/htdocs/expensereport/card.php @@ -177,9 +177,7 @@ if (empty($reshook)) if (1 == 0 && !GETPOST('clone_content', 'alpha') && !GETPOST('clone_receivers', 'alpha')) { setEventMessages($langs->trans("NoCloneOptionsSpecified"), null, 'errors'); - } - else - { + } else { if ($object->id > 0) { // Because createFromClone modifies the object, we must clone it so that we can restore it later if it fails @@ -190,9 +188,7 @@ if (empty($reshook)) { header("Location: ".$_SERVER['PHP_SELF'].'?id='.$result); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); $object = $orig; $action = ''; @@ -210,9 +206,7 @@ if (empty($reshook)) { header("Location: index.php"); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -264,9 +258,7 @@ if (empty($reshook)) $db->commit(); Header("Location: ".$_SERVER["PHP_SELF"]."?id=".$id); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); $db->rollback(); $action = 'create'; @@ -297,9 +289,7 @@ if (empty($reshook)) { header("Location: ".$_SERVER["PHP_SELF"]."?id=".$_POST['id']); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -356,9 +346,7 @@ if (empty($reshook)) $object->generateDocument($model, $outputlangs, $hidedetails, $hidedesc, $hideref); } - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); $error++; } @@ -415,9 +403,7 @@ if (empty($reshook)) { $mesg = $langs->trans('MailSuccessfulySent', $mailfile->getValidAddress($emailFrom, 2), $mailfile->getValidAddress($emailTo, 2)); setEventMessages($mesg, null, 'mesgs'); - } - else - { + } else { $langs->load("other"); if ($mailfile->error) { @@ -425,21 +411,15 @@ if (empty($reshook)) $mesg .= $langs->trans('ErrorFailedToSendMail', $emailFrom, $emailTo); $mesg .= '
    '.$mailfile->error; setEventMessages($mesg, null, 'errors'); - } - else - { + } else { setEventMessages('No mail sent. Feature is disabled by option MAIN_DISABLE_ALL_MAILS', null, 'warnings'); } } - } - else - { + } else { setEventMessages($mailfile->error, $mailfile->errors, 'errors'); $action = ''; } - } - else - { + } else { setEventMessages($langs->trans("NoEmailSentBadSenderOrRecipientEmail"), null, 'warnings'); $action = ''; } @@ -450,9 +430,7 @@ if (empty($reshook)) $db->commit(); header("Location: ".$_SERVER["PHP_SELF"]."?id=".$id); exit; - } - else - { + } else { $db->rollback(); } } @@ -542,9 +520,7 @@ if (empty($reshook)) setEventMessages($mesg, null, 'mesgs'); header("Location: ".$_SERVER["PHP_SELF"]."?id=".$id); exit; - } - else - { + } else { $langs->load("other"); if ($mailfile->error) { @@ -552,27 +528,19 @@ if (empty($reshook)) $mesg .= $langs->trans('ErrorFailedToSendMail', $emailFrom, $emailTo); $mesg .= '
    '.$mailfile->error; setEventMessages($mesg, null, 'errors'); - } - else - { + } else { setEventMessages('No mail sent. Feature is disabled by option MAIN_DISABLE_ALL_MAILS', null, 'warnings'); } } - } - else - { + } else { setEventMessages($mailfile->error, $mailfile->errors, 'errors'); $action = ''; } - } - else - { + } else { setEventMessages($langs->trans("NoEmailSentBadSenderOrRecipientEmail"), null, 'warnings'); $action = ''; } - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -665,9 +633,7 @@ if (empty($reshook)) setEventMessages($mesg, null, 'mesgs'); header("Location: ".$_SERVER["PHP_SELF"]."?id=".$id); exit; - } - else - { + } else { $langs->load("other"); if ($mailfile->error) { @@ -675,27 +641,19 @@ if (empty($reshook)) $mesg .= $langs->trans('ErrorFailedToSendMail', $emailFrom, $emailTo); $mesg .= '
    '.$mailfile->error; setEventMessages($mesg, null, 'errors'); - } - else - { + } else { setEventMessages('No mail sent. Feature is disabled by option MAIN_DISABLE_ALL_MAILS', null, 'warnings'); } } - } - else - { + } else { setEventMessages($mailfile->error, $mailfile->errors, 'errors'); $action = ''; } - } - else - { + } else { setEventMessages($langs->trans("NoEmailSentBadSenderOrRecipientEmail"), null, 'warnings'); $action = ''; } - } - else - { + } else { setEventMessages($langs->trans("FailedtoSetToApprove"), null, 'warnings'); $action = ''; } @@ -786,9 +744,7 @@ if (empty($reshook)) setEventMessages($mesg, null, 'mesgs'); header("Location: ".$_SERVER["PHP_SELF"]."?id=".$id); exit; - } - else - { + } else { $langs->load("other"); if ($mailfile->error) { @@ -796,27 +752,19 @@ if (empty($reshook)) $mesg .= $langs->trans('ErrorFailedToSendMail', $emailFrom, $emailTo); $mesg .= '
    '.$mailfile->error; setEventMessages($mesg, null, 'errors'); - } - else - { + } else { setEventMessages('No mail sent. Feature is disabled by option MAIN_DISABLE_ALL_MAILS', null, 'warnings'); } } - } - else - { + } else { setEventMessages($mailfile->error, $mailfile->errors, 'errors'); $action = ''; } - } - else - { + } else { setEventMessages($langs->trans("NoEmailSentBadSenderOrRecipientEmail"), null, 'warnings'); $action = ''; } - } - else - { + } else { setEventMessages($langs->trans("FailedtoSetToDeny"), null, 'warnings'); $action = ''; } @@ -828,9 +776,7 @@ if (empty($reshook)) if (!GETPOST('detail_cancel', 'alpha')) { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("Comment")), null, 'errors'); - } - else - { + } else { $object = new ExpenseReport($db); $object->fetch($id); @@ -916,9 +862,7 @@ if (empty($reshook)) setEventMessages($mesg, null, 'mesgs'); header("Location: ".$_SERVER["PHP_SELF"]."?id=".$id); exit; - } - else - { + } else { $langs->load("other"); if ($mailfile->error) { @@ -926,33 +870,23 @@ if (empty($reshook)) $mesg .= $langs->trans('ErrorFailedToSendMail', $emailFrom, $emailTo); $mesg .= '
    '.$mailfile->error; setEventMessages($mesg, null, 'errors'); - } - else - { + } else { setEventMessages('No mail sent. Feature is disabled by option MAIN_DISABLE_ALL_MAILS', null, 'warnings'); } } - } - else - { + } else { setEventMessages($mailfile->error, $mailfile->errors, 'errors'); $action = ''; } - } - else - { + } else { setEventMessages($langs->trans("NoEmailSentBadSenderOrRecipientEmail"), null, 'warnings'); $action = ''; } - } - else - { + } else { setEventMessages($langs->trans("FailedToSetToCancel"), null, 'warnings'); $action = ''; } - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -990,14 +924,10 @@ if (empty($reshook)) { header("Location: ".$_SERVER["PHP_SELF"]."?id=".$id); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } - } - else - { + } else { setEventMessages("NOT_AUTHOR", '', 'errors'); } } @@ -1131,9 +1061,7 @@ if (empty($reshook)) setEventMessages($mesg, null, 'mesgs'); header("Location: ".$_SERVER["PHP_SELF"]."?id=".$id); exit; - } - else - { + } else { $langs->load("other"); if ($mailfile->error) { @@ -1141,27 +1069,19 @@ if (empty($reshook)) $mesg .= $langs->trans('ErrorFailedToSendMail', $emailFrom, $emailTo); $mesg .= '
    '.$mailfile->error; setEventMessages($mesg, null, 'errors'); - } - else - { + } else { setEventMessages('No mail sent. Feature is disabled by option MAIN_DISABLE_ALL_MAILS', null, 'warnings'); } } - } - else - { + } else { setEventMessages($mailfile->error, $mailfile->errors, 'errors'); $action = ''; } - } - else - { + } else { setEventMessages($langs->trans("NoEmailSentBadSenderOrRecipientEmail"), null, 'warnings'); $action = ''; } - } - else - { + } else { setEventMessages($langs->trans("FailedToSetPaid"), null, 'warnings'); $action = ''; } @@ -1312,9 +1232,7 @@ if (empty($reshook)) $object->update_totaux_del($object_ligne->total_ht, $object_ligne->total_tva); header("Location: ".$_SERVER["PHP_SELF"]."?id=".$_GET['id']); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -1407,9 +1325,7 @@ if (empty($reshook)) //header("Location: ".$_SERVER["PHP_SELF"]."?id=".$id); //exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -1497,8 +1413,7 @@ if ($action == 'create') $object = new ExpenseReport($db); $include_users = $object->fetch_users_approver_expensereport(); if (empty($include_users)) print img_warning().' '.$langs->trans("NobodyHasPermissionToValidateExpenseReport"); - else - { + else { $defaultselectuser = (empty($user->fk_user_expense_validator) ? $user->fk_user : $user->fk_user_expense_validator); // Will work only if supervisor has permission to approve so is inside include_users if (!empty($conf->global->EXPENSEREPORT_DEFAULT_VALIDATOR)) $defaultselectuser = $conf->global->EXPENSEREPORT_DEFAULT_VALIDATOR; // Can force default approver if (GETPOST('fk_user_validator', 'int') > 0) $defaultselectuser = GETPOST('fk_user_validator', 'int'); @@ -1558,9 +1473,7 @@ if ($action == 'create') print ''; print ''; -} -else -{ +} else { if ($id > 0 || $ref) { $result = $object->fetch($id, $ref); @@ -1601,9 +1514,7 @@ else if ($object->fk_statut == 99) { print ''; - } - else - { + } else { print ''; } @@ -1660,9 +1571,7 @@ else print $form->textwithpicto($s, $langs->trans("AnyOtherInThisListCanValidate")); print '
    '.$langs->trans("VALIDOR").''; @@ -1697,9 +1606,7 @@ else print ''; print ''; - } - else - { + } else { dol_fiche_head($head, 'card', $langs->trans("ExpenseReport"), -1, 'trip'); // Clone confirmation @@ -1871,8 +1778,7 @@ else } } print '
    '.$langs->trans("CANCEL_USER").''.$langs->trans("DATE_CANCEL").''.dol_print_date($object->date_cancel, 'dayhour').'
    '.$langs->trans("ApprovedBy").''; @@ -2080,8 +1984,7 @@ else { $cssforamountpaymentcomplete = 'amountpaymentneutral'; $resteapayeraffiche = 0; - } - elseif ($object->paid == 0) + } elseif ($object->paid == 0) { $cssforamountpaymentcomplete = 'amountpaymentneutral'; } @@ -2092,9 +1995,7 @@ else print ''.price($resteapayeraffiche).'
    "; @@ -2200,9 +2101,7 @@ else if (!empty($line->value_unit_ht)) { print price($line->value_unit_ht); - } - else - { + } else { $tmpvat = price2num(preg_replace('/\s*\(.*\)/', '', $line->vatrate)); $pricenettoshow = price2num($line->value_unit / (1 + $tmpvat / 100), 'MU'); print $pricenettoshow; @@ -2245,9 +2144,7 @@ else } print ''; print ''; - } - else - { + } else { $modulepart = 'expensereport'; $thumbshown = 0; if (preg_match('/\.pdf$/i', $ecmfilesstatic->filename)) @@ -2330,7 +2227,7 @@ else print ''; if (empty($conf->global->EXPENSEREPORT_DISABLE_ATTACHMENT_ON_LINES)) { - print '   -   '.''.$langs->trans("AttachTheNewLineToTheDocument"); + print '   -   '.$langs->trans("AttachTheNewLineToTheDocument"); print img_picto($langs->trans("AttachTheNewLineToTheDocument"), 'chevron-down', '', false, 0, 0, '', 'marginleftonly'); print ''; } @@ -2478,7 +2375,7 @@ else print ''; if (empty($conf->global->EXPENSEREPORT_DISABLE_ATTACHMENT_ON_LINES)) { - print '   -   '.''.$langs->trans("AttachTheNewLineToTheDocument"); + print '   -   '.$langs->trans("AttachTheNewLineToTheDocument"); print img_picto($langs->trans("AttachTheNewLineToTheDocument"), 'chevron-down', '', false, 0, 0, '', 'marginleftonly'); print ''; } @@ -2625,8 +2522,7 @@ else dol_fiche_end(); } // end edit or not edit } // end of if result - else - { + else { dol_print_error($db); } } //fin si id > 0 @@ -2748,9 +2644,7 @@ if ($action != 'create' && $action != 'edit') if ($remaintopay == 0) { print '
    '.$langs->trans('DoPayment').'
    '; - } - else - { + } else { print ''; } } @@ -2794,8 +2688,7 @@ if ($action != 'create' && $action != 'edit') { // Delete print ''; - } - elseif ($user->rights->expensereport->supprimer && $object->fk_statut != ExpenseReport::STATUS_CLOSED) + } elseif ($user->rights->expensereport->supprimer && $object->fk_statut != ExpenseReport::STATUS_CLOSED) { // Delete print ''; diff --git a/htdocs/expensereport/class/api_expensereports.class.php b/htdocs/expensereport/class/api_expensereports.class.php index 18fef29e04c..c246da650af 100644 --- a/htdocs/expensereport/class/api_expensereports.class.php +++ b/htdocs/expensereport/class/api_expensereports.class.php @@ -145,8 +145,7 @@ class ExpenseReports extends DolibarrApi } $i++; } - } - else { + } else { throw new RestException(503, 'Error when retrieve Expense Report list : '.$db->lasterror()); } if (!count($obj_ret)) { @@ -411,9 +410,7 @@ class ExpenseReports extends DolibarrApi if ($this->expensereport->update(DolibarrApiAccess::$user) > 0) { return $this->get($id); - } - else - { + } else { throw new RestException(500, $this->expensereport->error); } } diff --git a/htdocs/expensereport/class/expensereport.class.php b/htdocs/expensereport/class/expensereport.class.php index 48170d68763..e2ea2b377a4 100644 --- a/htdocs/expensereport/class/expensereport.class.php +++ b/htdocs/expensereport/class/expensereport.class.php @@ -308,8 +308,7 @@ class ExpenseReport extends CommonObject $newndfline->rule_warning_message = $line->rule_warning_message; $newndfline->fk_c_exp_tax_cat = $line->fk_c_exp_tax_cat; $newndfline->fk_ecm_files = $line->fk_ecm_files; - } - else { + } else { $newndfline = $line; } //$newndfline=new ExpenseReportLine($this->db); @@ -351,28 +350,20 @@ class ExpenseReport extends CommonObject { $this->db->commit(); return $this->id; - } - else - { + } else { $this->db->rollback(); return -4; } - } - else - { + } else { $this->db->rollback(); return -3; } - } - else - { + } else { dol_syslog(get_class($this)."::create error ".$this->error, LOG_ERR); $this->db->rollback(); return -2; } - } - else - { + } else { $this->error = $this->db->lasterror()." sql=".$sql; $this->db->rollback(); return -1; @@ -440,9 +431,7 @@ class ExpenseReport extends CommonObject { $this->db->commit(); return $this->id; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -504,16 +493,12 @@ class ExpenseReport extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); $this->error = $this->db->error(); return -2; } - } - else - { + } else { $this->db->rollback(); $this->error = $this->db->error(); return -1; @@ -605,14 +590,10 @@ class ExpenseReport extends CommonObject $result = $this->fetch_lines(); return $result; - } - else - { + } else { return 0; } - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -658,22 +639,16 @@ class ExpenseReport extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); $this->error = $this->db->error(); return -2; } - } - else - { + } else { $this->db->commit(); return 0; } - } - else - { + } else { $this->db->rollback(); dol_print_error($this->db); return -1; @@ -704,8 +679,8 @@ class ExpenseReport extends CommonObject // phpcs:enable global $langs; - $labelStatus = $langs->trans($this->statuts[$status]); - $labelStatusShort = $langs->trans($this->statuts_short[$status]); + $labelStatus = $langs->transnoentitiesnoconv($this->statuts[$status]); + $labelStatusShort = $langs->transnoentitiesnoconv($this->statuts_short[$status]); $statusType = $this->statuts_logo[$status]; @@ -780,9 +755,7 @@ class ExpenseReport extends CommonObject } } $this->db->free($resql); - } - else - { + } else { dol_print_error($this->db); } } @@ -946,9 +919,7 @@ class ExpenseReport extends CommonObject print ''.$langs->trans("TotalTTC").' : '.price($total_TTC).''; print ' '; print ''; - } - else - { + } else { $this->error = $db->lasterror(); return -1; } @@ -992,14 +963,12 @@ class ExpenseReport extends CommonObject if ($result): $this->db->free($result); return 1; - else: + else : $this->error = $this->db->lasterror(); dol_syslog(get_class($this)."::recalculer: Error ".$this->error, LOG_ERR); return -3; endif; - } - else - { + } else { $this->error = $this->db->lasterror(); dol_syslog(get_class($this)."::recalculer: Error ".$this->error, LOG_ERR); return -3; @@ -1031,9 +1000,7 @@ class ExpenseReport extends CommonObject if (!empty($conf->global->EXPENSEREPORT_LINES_SORTED_BY_ROWID)) { $sql .= ' ORDER BY de.rang ASC, de.rowid ASC'; - } - else - { + } else { $sql .= ' ORDER BY de.rang ASC, de.date ASC'; } @@ -1049,7 +1016,7 @@ class ExpenseReport extends CommonObject $deplig = new ExpenseReportLine($this->db); $deplig->rowid = $objp->rowid; - $deplig->id = $objp->id; + $deplig->id = $objp->rowid; $deplig->comments = $objp->comments; $deplig->qty = $objp->qty; $deplig->value_unit = $objp->value_unit; @@ -1082,9 +1049,7 @@ class ExpenseReport extends CommonObject } $this->db->free($resql); return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); dol_syslog(get_class($this)."::fetch_lines: Error ".$this->error, LOG_ERR); return -3; @@ -1113,17 +1078,13 @@ class ExpenseReport extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->error()." sql=".$sql; dol_syslog(get_class($this)."::delete ".$this->error, LOG_ERR); $this->db->rollback(); return -6; } - } - else - { + } else { $this->error = $this->db->error()." sql=".$sql; dol_syslog(get_class($this)."::delete ".$this->error, LOG_ERR); $this->db->rollback(); @@ -1158,9 +1119,7 @@ class ExpenseReport extends CommonObject if (!$error && (preg_match('/^[\(]?PROV/i', $this->ref) || empty($this->ref))) // empty should not happened, but when it occurs, the test save life { $num = $this->getNextNumRef(); - } - else - { + } else { $num = $this->ref; } if (empty($num) || $num < 0) return -1; @@ -1243,16 +1202,12 @@ class ExpenseReport extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); $this->error = $this->db->error(); return -2; } - } - else - { + } else { $this->db->rollback(); $this->error = $this->db->lasterror(); return -1; @@ -1293,15 +1248,11 @@ class ExpenseReport extends CommonObject if ($this->db->query($sql)) { return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } - } - else - { + } else { dol_syslog(get_class($this)."::set_save_from_refuse expensereport already with save status", LOG_WARNING); } } @@ -1345,23 +1296,17 @@ class ExpenseReport extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); $this->error = $this->db->error(); return -2; } - } - else - { + } else { $this->db->rollback(); $this->error = $this->db->lasterror(); return -1; } - } - else - { + } else { dol_syslog(get_class($this)."::setApproved expensereport already with approve status", LOG_WARNING); } @@ -1412,23 +1357,17 @@ class ExpenseReport extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); $this->error = $this->db->error(); return -2; } - } - else - { + } else { $this->db->rollback(); $this->error = $this->db->lasterror(); return -1; } - } - else - { + } else { dol_syslog(get_class($this)."::setDeny expensereport already with refuse status", LOG_WARNING); } } @@ -1473,23 +1412,17 @@ class ExpenseReport extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); $this->error = $this->db->error(); return -2; } - } - else - { + } else { $this->db->rollback(); $this->error = $this->db->error(); return -1; } - } - else - { + } else { dol_syslog(get_class($this)."::set_unpaid expensereport already with unpaid status", LOG_WARNING); } } @@ -1537,23 +1470,17 @@ class ExpenseReport extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); $this->error = $this->db->error(); return -2; } - } - else - { + } else { $this->db->rollback(); $this->error = $this->db->error(); return -1; } - } - else - { + } else { dol_syslog(get_class($this)."::set_cancel expensereport already with cancel status", LOG_WARNING); } } @@ -1596,17 +1523,13 @@ class ExpenseReport extends CommonObject if ($numref != "") { return $numref; - } - else - { + } else { $this->error = $obj->error; $this->errors = $obj->errors; //dol_print_error($this->db,get_class($this)."::getNextNumRef ".$obj->error); return -1; } - } - else - { + } else { $this->error = "Error_EXPENSEREPORT_ADDON_NotDefined"; return -2; } @@ -1703,7 +1626,7 @@ class ExpenseReport extends CommonObject $result = $this->db->query($sql); if ($result): return 1; - else: + else : $this->error = $this->db->error(); return -1; endif; @@ -1733,7 +1656,7 @@ class ExpenseReport extends CommonObject $result = $this->db->query($sql); if ($result): return 1; - else: + else : $this->error = $this->db->error(); return -1; endif; @@ -1822,23 +1745,17 @@ class ExpenseReport extends CommonObject { $this->db->commit(); return $this->line->id; - } - else - { + } else { $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = $this->line->error; dol_syslog(get_class($this)."::addline error=".$this->error, LOG_ERR); $this->db->rollback(); return -2; } - } - else - { + } else { dol_syslog(get_class($this)."::addline status of expense report must be Draft to allow use of ->addline()", LOG_ERR); $this->error = 'ErrorExpenseNotDraft'; return -3; @@ -1887,9 +1804,7 @@ class ExpenseReport extends CommonObject $new_current_total_ttc -= $amount_to_test - $rule->amount; // ex, entered 16€, limit 12€, subtracts 4€; $rule_warning_message_tab[] = $langs->trans('ExpenseReportConstraintViolationError', $rule->id, price($amount_to_test, 0, $langs, 1, -1, -1, $conf->currency), price($rule->amount, 0, $langs, 1, -1, -1, $conf->currency), $langs->trans('by'.$rule->code_expense_rules_type, price($new_current_total_ttc, 0, $langs, 1, -1, -1, $conf->currency))); - } - else - { + } else { $this->error = 'ExpenseReportConstraintViolationWarning'; $this->errors[] = $this->error; @@ -1912,8 +1827,7 @@ class ExpenseReport extends CommonObject $this->line->total_tva = $tmp[1]; return false; - } - else return true; + } else return true; } /** @@ -1984,9 +1898,7 @@ class ExpenseReport extends CommonObject { $num = $this->db->num_rows($resql); if ($num > 0) return true; - } - else - { + } else { dol_print_error($this->db); } @@ -2105,9 +2017,7 @@ class ExpenseReport extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->line->error; $this->errors = $this->line->errors; $this->db->rollback(); @@ -2187,14 +2097,10 @@ class ExpenseReport extends CommonObject if ($existe) return 1; else return 0; - } - else - { + } else { return 0; } - } - else - { + } else { $this->error = $this->db->lasterror(); dol_syslog(get_class($this)."::periode_existe Error ".$this->error, LOG_ERR); return -1; @@ -2235,9 +2141,7 @@ class ExpenseReport extends CommonObject $i++; } return $users_validator; - } - else - { + } else { $this->error = $this->db->lasterror(); dol_syslog(get_class($this)."::fetch_users_approver_expensereport Error ".$this->error, LOG_ERR); return -1; @@ -2301,9 +2205,7 @@ class ExpenseReport extends CommonObject $ret[$obj->code] = (($langs->trans($obj->code) != $obj->code) ? $langs->trans($obj->code) : $obj->label); $i++; } - } - else - { + } else { dol_print_error($this->db); } return $ret; @@ -2318,7 +2220,7 @@ class ExpenseReport extends CommonObject public function load_state_board() { // phpcs:enable - global $conf; + global $conf, $user; $this->nb = array(); @@ -2326,6 +2228,12 @@ class ExpenseReport extends CommonObject $sql .= " FROM ".MAIN_DB_PREFIX."expensereport as ex"; $sql .= " WHERE ex.fk_statut > 0"; $sql .= " AND ex.entity IN (".getEntity('expensereport').")"; + if (empty($user->rights->expensereport->readall)) + { + $userchildids = $user->getAllChildIds(1); + $sql .= " AND (ex.fk_user_author IN (".join(',', $userchildids).")"; + $sql .= " OR ex.fk_user_validator IN (".join(',', $userchildids)."))"; + } $resql = $this->db->query($sql); if ($resql) { @@ -2334,9 +2242,7 @@ class ExpenseReport extends CommonObject } $this->db->free($resql); return 1; - } - else - { + } else { dol_print_error($this->db); $this->error = $this->db->error(); return -1; @@ -2360,15 +2266,17 @@ class ExpenseReport extends CommonObject $now = dol_now(); - $userchildids = $user->getAllChildIds(1); - $sql = "SELECT ex.rowid, ex.date_valid"; $sql .= " FROM ".MAIN_DB_PREFIX."expensereport as ex"; if ($option == 'toapprove') $sql .= " WHERE ex.fk_statut = 2"; else $sql .= " WHERE ex.fk_statut = 5"; $sql .= " AND ex.entity IN (".getEntity('expensereport').")"; - $sql .= " AND (ex.fk_user_author IN (".join(',', $userchildids).")"; - $sql .= " OR ex.fk_user_validator IN (".join(',', $userchildids)."))"; + if (empty($user->rights->expensereport->readall)) + { + $userchildids = $user->getAllChildIds(1); + $sql .= " AND (ex.fk_user_author IN (".join(',', $userchildids).")"; + $sql .= " OR ex.fk_user_validator IN (".join(',', $userchildids)."))"; + } $resql = $this->db->query($sql); if ($resql) @@ -2382,9 +2290,7 @@ class ExpenseReport extends CommonObject $response->label = $langs->trans("ExpenseReportsToApprove"); $response->labelShort = $langs->trans("ToApprove"); $response->url = DOL_URL_ROOT.'/expensereport/list.php?mainmenu=hrm&statut=2'; - } - else - { + } else { $response->warning_delay = $conf->expensereport->payment->warning_delay / 60 / 60 / 24; $response->label = $langs->trans("ExpenseReportsToPay"); $response->labelShort = $langs->trans("StatusToPay"); @@ -2401,9 +2307,7 @@ class ExpenseReport extends CommonObject if ($this->db->jdate($obj->date_valid) < ($now - $conf->expensereport->approve->warning_delay)) { $response->nbtodolate++; } - } - else - { + } else { if ($this->db->jdate($obj->date_valid) < ($now - $conf->expensereport->payment->warning_delay)) { $response->nbtodolate++; } @@ -2411,9 +2315,7 @@ class ExpenseReport extends CommonObject } return $response; - } - else - { + } else { dol_print_error($this->db); $this->error = $this->db->error(); return -1; @@ -2438,9 +2340,7 @@ class ExpenseReport extends CommonObject if ($option == 'toapprove') { return ($this->datevalid ? $this->datevalid : $this->date_valid) < ($now - $conf->expensereport->approve->warning_delay); - } - else - return ($this->datevalid ? $this->datevalid : $this->date_valid) < ($now - $conf->expensereport->payment->warning_delay); + } else return ($this->datevalid ? $this->datevalid : $this->date_valid) < ($now - $conf->expensereport->payment->warning_delay); } /** @@ -2463,9 +2363,7 @@ class ExpenseReport extends CommonObject { $alreadydispatched = $obj->nb; } - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -2498,9 +2396,7 @@ class ExpenseReport extends CommonObject $obj = $this->db->fetch_object($resql); $this->db->free($resql); return $obj->amount; - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -2694,9 +2590,7 @@ class ExpenseReportLine $this->errors = $tmpparent->errors; } } - } - else - { + } else { $error++; } @@ -2704,9 +2598,7 @@ class ExpenseReportLine { $this->db->commit(); return $this->id; - } - else - { + } else { $this->error = $this->db->lasterror(); dol_syslog("ExpenseReportLine::insert Error ".$this->error, LOG_ERR); $this->db->rollback(); @@ -2747,9 +2639,7 @@ class ExpenseReportLine $obj = $this->db->fetch_object($resql); $amount = (double) $obj->total_amount; } - } - else - { + } else { dol_print_error($this->db); } @@ -2812,16 +2702,12 @@ class ExpenseReportLine $this->error = $tmpparent->error; $this->errors = $tmpparent->errors; } - } - else - { + } else { $error++; $this->error = $tmpparent->error; $this->errors = $tmpparent->errors; } - } - else - { + } else { $error++; dol_print_error($this->db); } @@ -2830,9 +2716,7 @@ class ExpenseReportLine { $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); dol_syslog("ExpenseReportLine::update Error ".$this->error, LOG_ERR); $this->db->rollback(); @@ -2867,9 +2751,7 @@ function select_expensereport_statut($selected = '', $htmlname = 'fk_statut', $u if ($selected != '' && $selected == $key) { print '

    '; -} -else dol_print_error($db); +} else dol_print_error($db); print '
    '; diff --git a/htdocs/expensereport/list.php b/htdocs/expensereport/list.php index bf2e1ee696f..6b165c1042e 100644 --- a/htdocs/expensereport/list.php +++ b/htdocs/expensereport/list.php @@ -226,9 +226,7 @@ if (empty($reshook)) if ($db->errno() == 'DB_ERROR_RECORD_ALREADY_EXISTS') { $langs->load("errors"); setEventMessages($langs->trans("ErrorLoginAlreadyExists", $objectuser->login), null, 'errors'); - } - else - { + } else { setEventMessages($objectuser->error, $objectuser->errors, 'errors'); } } @@ -237,8 +235,7 @@ if (empty($reshook)) if (!$error && !count($objectuser->errors)) { setEventMessages($langs->trans("UserModified"), null, 'mesgs'); $db->commit(); - } - else { + } else { $db->rollback(); } } @@ -407,9 +404,7 @@ if ($resql) $maxRangeNum = ExpenseReportIk::getMaxRangeNumber($fuser->default_c_exp_tax_cat); print $form->selectarray('default_range', range(0, $maxRangeNum), $fuser->default_range); print ''; - } - else - { + } else { print ''.$langs->trans("DefaultCategoryCar").''; print ''; print dol_getIdFromCode($db, $fuser->default_c_exp_tax_cat, 'c_exp_tax_cat', 'rowid', 'label'); @@ -458,16 +453,12 @@ if ($resql) } print ''; - } - else - { + } else { print '
    '; print ''; print '

    '; } - } - else - { + } else { $title = $langs->trans("ListTripsAndExpenses"); $newcardbutton = ''; @@ -760,7 +751,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, 'totalarray'=>&$totalarray); $reshook = $hookmanager->executeHooks('printFieldListValue', $parameters); // Note that $action and $object may have been modified by hook print $hookmanager->resPrint; @@ -805,9 +796,7 @@ if ($resql) $i++; } - } - else - { + } else { $colspan = 1; foreach ($arrayfields as $key => $val) { if (!empty($val['checked'])) $colspan++; } print ''.$langs->trans("NoRecordFound").''; @@ -842,9 +831,7 @@ if ($resql) print $formfile->showdocuments('massfilesarea_expensereport', '', $filedir, $urlsource, 0, $delallowed, '', 1, 1, 0, 48, 1, $param, $title, '', '', '', null, $hidegeneratedfilelistifempty); } -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/expensereport/payment/card.php b/htdocs/expensereport/payment/card.php index 85bc3cc300c..3e8da949bff 100644 --- a/htdocs/expensereport/payment/card.php +++ b/htdocs/expensereport/payment/card.php @@ -64,9 +64,7 @@ if ($action == 'confirm_delete' && $confirm == 'yes' && $user->rights->expensere $db->commit(); header("Location: ".DOL_URL_ROOT."/expensereport/index.php"); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); $db->rollback(); } @@ -102,9 +100,7 @@ if ($action == 'confirm_valide' && $confirm == 'yes' && $user->rights->expensere header('Location: card.php?id='.$object->id); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); $db->rollback(); } @@ -280,9 +276,7 @@ if ($resql) print ''; $db->free($resql); -} -else -{ +} else { dol_print_error($db); } @@ -300,9 +294,7 @@ if ($action == '') if (!$disable_delete) { print ''.$langs->trans('Delete').''; - } - else - { + } else { print ''.$langs->trans('Delete').''; } } diff --git a/htdocs/expensereport/payment/payment.php b/htdocs/expensereport/payment/payment.php index 872bd5a0792..00d690f20d5 100644 --- a/htdocs/expensereport/payment/payment.php +++ b/htdocs/expensereport/payment/payment.php @@ -158,9 +158,7 @@ if ($action == 'add_payment') $loc = DOL_URL_ROOT.'/expensereport/card.php?id='.$id; header('Location: '.$loc); exit; - } - else - { + } else { $db->rollback(); } } @@ -321,9 +319,7 @@ if ($action == 'create' || empty($action)) $remaintopay = $objp->total_ttc - $sumpaid; // autofill remainder amount print ''; // autofill remainder amount print ''; - } - else - { + } else { print '-'; } print ""; diff --git a/htdocs/expensereport/stats/index.php b/htdocs/expensereport/stats/index.php index 3b931bd4418..eff10cd9323 100644 --- a/htdocs/expensereport/stats/index.php +++ b/htdocs/expensereport/stats/index.php @@ -151,9 +151,7 @@ if (!$user->rights->societe->client->voir || $user->socid) $filename_avg = $dir.'/ordersaverage-'.$user->id.'-'.$year.'.png'; if ($mode == 'customer') $fileurl_avg = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstats&file=ordersaverage-'.$user->id.'-'.$year.'.png'; if ($mode == 'supplier') $fileurl_avg = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstatssupplier&file=ordersaverage-'.$user->id.'-'.$year.'.png'; -} -else -{ +} else { $filename_avg = $dir.'/ordersaverage-'.$year.'.png'; if ($mode == 'customer') $fileurl_avg = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstats&file=ordersaverage-'.$year.'.png'; if ($mode == 'supplier') $fileurl_avg = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstatssupplier&file=ordersaverage-'.$year.'.png'; @@ -289,8 +287,7 @@ print '
    '; // Show graphs print ''; - } - else - { + } else { print 'global->MAIN_OPTIMIZEFORTEXTBROWSER) ? ' style="display: none"' : '').'>'; print ''; } - } - else - { + } else { print ''; } print '
    '; -if ($mesg) { print $mesg; } -else { +if ($mesg) { print $mesg; } else { print $px1->show(); print "
    \n"; print $px2->show(); diff --git a/htdocs/expensereport/tpl/expensereport_linktofile.tpl.php b/htdocs/expensereport/tpl/expensereport_linktofile.tpl.php index d0096390489..f4f460719a0 100644 --- a/htdocs/expensereport/tpl/expensereport_linktofile.tpl.php +++ b/htdocs/expensereport/tpl/expensereport_linktofile.tpl.php @@ -42,9 +42,7 @@ if (empty($conf->global->EXPENSEREPORT_DISABLE_ATTACHMENT_ON_LINES)) print ''; print ''; print ''; - } - else - { + } else { $error = 0; $thumbshown = ''; @@ -106,8 +104,7 @@ if (empty($conf->global->EXPENSEREPORT_DISABLE_ATTACHMENT_ON_LINES)) { $checked = ' checked'; break; - } - elseif ($file['relativename'] && in_array($file['relativename'], GETPOST('attachfile', 'array'))) { + } elseif ($file['relativename'] && in_array($file['relativename'], GETPOST('attachfile', 'array'))) { $checked = ' checked'; break; } @@ -132,9 +129,7 @@ if (empty($conf->global->EXPENSEREPORT_DISABLE_ATTACHMENT_ON_LINES)) print ''; print '
    '; print ''.$langs->trans("NoFilesUploadedYet").''; diff --git a/htdocs/exports/class/export.class.php b/htdocs/exports/class/export.class.php index 978a3059ace..e04b8f20dfb 100644 --- a/htdocs/exports/class/export.class.php +++ b/htdocs/exports/class/export.class.php @@ -141,9 +141,7 @@ class Export if (!empty($perm[2])) { $bool = $user->rights->{$perm[0]}->{$perm[1]}->{$perm[2]}; - } - else - { + } else { $bool = $user->rights->{$perm[0]}->{$perm[1]}; } if ($perm[0] == 'user' && $user->admin) $bool = true; @@ -295,8 +293,7 @@ class Export case 'Text': if (!(strpos($ValueField, '%') === false)) $szFilterQuery .= " ".$NameField." LIKE '".$ValueField."'"; - else - $szFilterQuery .= " ".$NameField." = '".$ValueField."'"; + else $szFilterQuery .= " ".$NameField." = '".$ValueField."'"; break; case 'Date': if (strpos($ValueField, "+") > 0) @@ -305,13 +302,10 @@ class Export $ValueArray = explode("+", $ValueField); $szFilterQuery = "(".$this->conditionDate($NameField, trim($ValueArray[0]), ">="); $szFilterQuery .= " AND ".$this->conditionDate($NameField, trim($ValueArray[1]), "<=").")"; - } - else - { + } else { if (is_numeric(substr($ValueField, 0, 1))) $szFilterQuery = $this->conditionDate($NameField, trim($ValueField), "="); - else - $szFilterQuery = $this->conditionDate($NameField, trim(substr($ValueField, 1)), substr($ValueField, 0, 1)); + else $szFilterQuery = $this->conditionDate($NameField, trim(substr($ValueField, 1)), substr($ValueField, 0, 1)); } break; case 'Duree': @@ -324,13 +318,10 @@ class Export $ValueArray = explode("+", $ValueField); $szFilterQuery = "(".$NameField.">=".$ValueArray[0]; $szFilterQuery .= " AND ".$NameField."<=".$ValueArray[1].")"; - } - else - { + } else { if (is_numeric(substr($ValueField, 0, 1))) $szFilterQuery = " ".$NameField."=".$ValueField; - else - $szFilterQuery = " ".$NameField.substr($ValueField, 0, 1).substr($ValueField, 1); + else $szFilterQuery = " ".$NameField.substr($ValueField, 0, 1).substr($ValueField, 1); } break; case 'Boolean': @@ -343,8 +334,7 @@ class Export else { if (!(strpos($ValueField, '%') === false)) $szFilterQuery = " ".$NameField." LIKE '".$ValueField."'"; - else - $szFilterQuery = " ".$NameField." = '".$ValueField."'"; + else $szFilterQuery = " ".$NameField." = '".$ValueField."'"; } break; default: @@ -367,7 +357,7 @@ class Export // TODO date_format is forbidden, not performant and not portable. Use instead BETWEEN if (strlen($Value) == 4) $Condition = " date_format(".$Field.",'%Y') ".$Sens." '".$Value."'"; elseif (strlen($Value) == 6) $Condition = " date_format(".$Field.",'%Y%m') ".$Sens." '".$Value."'"; - else $Condition = " date_format(".$Field.",'%Y%m%d') ".$Sens." ".$Value; + else $Condition = " date_format(".$Field.",'%Y%m%d') ".$Sens." ".$Value; return $Condition; } @@ -428,8 +418,7 @@ class Export if (!empty($InfoFieldList[3])) $keyList = $InfoFieldList[3]; - else - $keyList = 'rowid'; + else $keyList = 'rowid'; $sql = 'SELECT '.$keyList.' as rowid, '.$InfoFieldList[2].' as label'.(empty($InfoFieldList[3]) ? '' : ', '.$InfoFieldList[3].' as code'); if ($InfoFieldList[1] == 'c_stcomm') $sql = 'SELECT id as id, '.$keyList.' as rowid, '.$InfoFieldList[2].' as label'.(empty($InfoFieldList[3]) ? '' : ', '.$InfoFieldList[3].' as code'); if ($InfoFieldList[1] == 'c_country') $sql = 'SELECT '.$keyList.' as rowid, '.$InfoFieldList[2].' as label, code as code'; @@ -473,9 +462,7 @@ class Export if (!empty($ValueField) && $ValueField == $obj->rowid) { $szFilterField .= ''; - } - else - { + } else { $szFilterField .= ''; } $i++; @@ -484,8 +471,7 @@ class Export $szFilterField .= ""; $this->db->free($resql); - } - else dol_print_error($this->db); + } else dol_print_error($this->db); break; } @@ -564,8 +550,7 @@ class Export $objmodel = new $classname($this->db); if (!empty($sqlquery)) $sql = $sqlquery; - else - { + else { // Define value for indice from $datatoexport $foundindice = 0; foreach ($this->array_export_code as $key => $dataset) @@ -595,8 +580,7 @@ class Export //$this->array_export_label[$indice] if ($conf->global->EXPORT_PREFIX_SPEC) $filename = $conf->global->EXPORT_PREFIX_SPEC."_".$datatoexport; - else - $filename = "export_".$datatoexport; + else $filename = "export_".$datatoexport; $filename .= '.'.$objmodel->getDriverExtension(); $dirname = $conf->export->dir_temp.'/'.$user->id; @@ -664,9 +648,7 @@ class Export $remaintopay = $tmpobjforcomputecall->getRemainToPay(); } $obj->$alias = $remaintopay; - } - else - { + } else { // TODO FIXME Export of compute field does not work. $obj containt $obj->alias_field and formulat will contains $obj->field $computestring = $this->array_export_special[$indice][$key]; $tmp = dol_eval($computestring, 1, 0); @@ -688,16 +670,12 @@ class Export $objmodel->close_file(); return 1; - } - else - { + } else { $this->error = $objmodel->error; dol_syslog("Export::build_file Error: ".$this->error, LOG_ERR); return -1; } - } - else - { + } else { $this->error = $this->db->error()." - sql=".$sql; return -1; } @@ -739,9 +717,7 @@ class Export { $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); $this->errno = $this->db->lasterrno(); $this->db->rollback(); @@ -776,15 +752,11 @@ class Export $this->hexafiltervalue = $obj->filter; return 1; - } - else - { + } else { $this->error = "ModelNotFound"; return -2; } - } - else - { + } else { dol_print_error($this->db); return -3; } @@ -822,9 +794,7 @@ class Export } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } diff --git a/htdocs/exports/export.php b/htdocs/exports/export.php index 6543747d1f7..98353d42bf1 100644 --- a/htdocs/exports/export.php +++ b/htdocs/exports/export.php @@ -173,9 +173,7 @@ if ($action == 'selectfield') // Selection of field at step 2 //print_r($array_selected); $_SESSION["export_selected_fields"] = $array_selected; } - } - else - { + } else { $warnings = array(); $array_selected[$field] = count($array_selected) + 1; // We tag the key $field as "selected" @@ -190,8 +188,7 @@ if ($action == 'selectfield') // Selection of field at step 2 $tmp = $fieldsdependenciesarray[$fieldsentitiesarray[$field]]; // $fieldsdependenciesarray=array('element'=>'fd.rowid') or array('element'=>array('fd.rowid','ab.rowid')) if (is_array($tmp)) $listofdependencies = $tmp; else $listofdependencies = array($tmp); - } - elseif (!empty($field) && !empty($fieldsdependenciesarray[$field])) + } elseif (!empty($field) && !empty($fieldsdependenciesarray[$field])) { // We found a dependency on a dedicated field $tmp = $fieldsdependenciesarray[$field]; // $fieldsdependenciesarray=array('fd.fieldx'=>'fd.rowid') or array('fd.fieldx'=>array('fd.rowid','ab.rowid')) @@ -222,9 +219,7 @@ if ($action == 'unselectfield') { $array_selected = array(); $_SESSION["export_selected_fields"] = $array_selected; - } - else - { + } else { unset($array_selected[$_GET["field"]]); // Renumber fields of array_selected (from 1 to nb_elements) asort($array_selected); @@ -287,9 +282,7 @@ if ($action == 'builddoc') { setEventMessages($objexport->error, $objexport->errors, 'errors'); $sqlusedforexport = $objexport->sqlusedforexport; - } - else - { + } else { setEventMessages($langs->trans("FileSuccessfullyBuilt"), null, 'mesgs'); $sqlusedforexport = $objexport->sqlusedforexport; } @@ -350,18 +343,13 @@ if ($action == 'add_export_model') if ($result >= 0) { setEventMessages($langs->trans("ExportModelSaved", $objexport->model_name), null, 'mesgs'); - } - else - { + } else { $langs->load("errors"); if ($objexport->errno == 'DB_ERROR_RECORD_ALREADY_EXISTS') setEventMessages($langs->trans("ErrorExportDuplicateProfil"), null, 'errors'); - else - setEventMessages($objexport->error, $objexport->errors, 'errors'); + else setEventMessages($objexport->error, $objexport->errors, 'errors'); } - } - else - { + } else { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("ExportModelName")), null, 'errors'); } } @@ -472,16 +460,12 @@ if ($step == 1 || !$datatoexport) if ($objexport->array_export_perms[$key]) { print ''.img_picto($langs->trans("NewExport"), 'filenew').''; - } - else - { + } else { print $langs->trans("NotEnoughPermissions"); } print '
    '.$langs->trans("NoExportableData").'
    '; @@ -546,8 +530,7 @@ if ($step == 2 && $datatoexport) print ''.$langs->trans("SelectExportFields").' '; if (empty($conf->global->EXPORTS_SHARE_MODELS)) { $htmlother->select_export_model($exportmodelid, 'exportmodelid', $datatoexport, 1, $user->id); - } - else { + } else { $htmlother->select_export_model($exportmodelid, 'exportmodelid', $datatoexport, 1); } print ' '; @@ -614,9 +597,7 @@ if ($step == 2 && $datatoexport) if (!empty($objexport->array_export_special[0][$code])) { $htmltext .= ''.$langs->trans("ComputedField")." -> ".$langs->trans("Method")." : ".$objexport->array_export_special[0][$code]."
    "; - } - else - { + } else { $htmltext .= ''.$langs->trans("Table")." -> ".$langs->trans("Field").": ".$tablename." -> ".preg_replace('/^.*\./', '', $code)."
    "; } if (!empty($objexport->array_export_examplevalues[0][$code])) @@ -642,9 +623,7 @@ if ($step == 2 && $datatoexport) print $form->textwithpicto($text, $htmltext); //print ' ('.$code.')'; print ''; - } - else - { + } else { // Fields not selected print ''; //print $text.'-'.$htmltext."
    "; @@ -672,14 +651,10 @@ if ($step == 2 && $datatoexport) if ($usefilters && isset($objexport->array_export_TypeFields[0]) && is_array($objexport->array_export_TypeFields[0])) { print ''.$langs->trans("NextStep").''; - } - else - { + } else { print ''.$langs->trans("NextStep").''; } - } - else - { + } else { print ''.$langs->trans("NextStep").''; } @@ -810,9 +785,7 @@ if ($step == 3 && $datatoexport) if (!empty($objexport->array_export_special[0][$code])) { $htmltext .= ''.$langs->trans("ComputedField")." -> ".$langs->trans("Method")." : ".$objexport->array_export_special[0][$code]."
    "; - } - else - { + } else { $htmltext .= ''.$langs->trans("Table")." -> ".$langs->trans("Field").": ".$tablename." -> ".preg_replace('/^.*\./', '', $code)."
    "; } if (!empty($objexport->array_export_examplevalues[0][$code])) @@ -841,9 +814,7 @@ if ($step == 3 && $datatoexport) { $tmp = $objexport->build_filterField($Typefieldsarray[$code], $code, $ValueFilter); print $form->textwithpicto($tmp, $szInfoFiltre); - } - else - { + } else { print $objexport->build_filterField($Typefieldsarray[$code], $code, $ValueFilter); } } @@ -1005,9 +976,7 @@ if ($step == 4 && $datatoexport) if (!empty($objexport->array_export_special[0][$code])) { $htmltext .= ''.$langs->trans("ComputedField")." -> ".$langs->trans("Method")." : ".$objexport->array_export_special[0][$code]."
    "; - } - else - { + } else { $htmltext .= ''.$langs->trans("Table")." -> ".$langs->trans("Field").": ".$tablename." -> ".preg_replace('/^.*\./', '', $code)."
    "; } if (!empty($objexport->array_export_examplevalues[0][$code])) @@ -1111,8 +1080,7 @@ if ($step == 4 && $datatoexport) print ''; $i++; } - } - else { + } else { dol_print_error($this->db); } @@ -1306,6 +1274,5 @@ function getablenamefromfield($code, $sqlmaxforexport) if (preg_match($regexstring, $newsql, $reg)) { return $reg[1]; // The tablename - } - else return ''; + } else return ''; } diff --git a/htdocs/externalsite/admin/externalsite.php b/htdocs/externalsite/admin/externalsite.php index b1e3dc7fac8..e2af9e5267d 100644 --- a/htdocs/externalsite/admin/externalsite.php +++ b/htdocs/externalsite/admin/externalsite.php @@ -59,9 +59,7 @@ if ($action == 'update') { $db->commit(); setEventMessages($langs->trans("SetupSaved"), null, 'mesgs'); - } - else - { + } else { $db->rollback(); setEventMessages($db->lasterror(), null, 'errors'); } diff --git a/htdocs/externalsite/frames.php b/htdocs/externalsite/frames.php index 3a1b1c04b82..4827d832af4 100644 --- a/htdocs/externalsite/frames.php +++ b/htdocs/externalsite/frames.php @@ -63,19 +63,15 @@ if (!empty($keyforcontent)) { $langs->load("errors"); print $langs->trans("ErrorBadSyntaxForParamKeyForContent", 'EXTERNAL_SITE_CONTENT_', 'EXTERNAL_SITE_URL_'); - } - elseif (empty($conf->global->$keyforcontent)) + } elseif (empty($conf->global->$keyforcontent)) { $langs->load("errors"); print $langs->trans("ErrorVariableKeyForContentMustBeSet", 'EXTERNAL_SITE_CONTENT_'.$keyforcontent, 'EXTERNAL_SITE_URL_'.$keyforcontent); - } - else - { + } else { if (preg_match('/EXTERNAL_SITE_CONTENT_/', $keyforcontent)) { print $conf->global->$keyforcontent; - } - elseif (preg_match('/EXTERNAL_SITE_URL_/', $keyforcontent)) + } elseif (preg_match('/EXTERNAL_SITE_URL_/', $keyforcontent)) { /*print " @@ -114,9 +110,7 @@ if (!empty($keyforcontent)) print '
    '; llxFooter(); -} -else -{ +} else { if (preg_match('/^\//', $conf->global->EXTERNALSITE_URL) || preg_match('/^http/i', $conf->global->EXTERNALSITE_URL)) { print " @@ -150,9 +144,7 @@ else "; - } - else - { + } else { llxHeader(); print '
    '; print $conf->global->EXTERNALSITE_URL; diff --git a/htdocs/fichinter/card-rec.php b/htdocs/fichinter/card-rec.php index 7b0ad3180ec..55ad529df3b 100644 --- a/htdocs/fichinter/card-rec.php +++ b/htdocs/fichinter/card-rec.php @@ -224,7 +224,7 @@ if ($action == 'add') { * View */ -llxHeader('', $langs->trans("RepeatableInterventional"), 'ch-fichinter.html#s-fac-fichinter-rec'); +llxHeader('', $langs->trans("RepeatableIntervention"), 'ch-fichinter.html#s-fac-fichinter-rec'); $form = new Form($db); $companystatic = new Societe($db); @@ -245,7 +245,7 @@ $today = dol_mktime(23, 59, 59, $tmparray['mon'], $tmparray['mday'], $tmparray[' * Create mode */ if ($action == 'create') { - print load_fiche_titre($langs->trans("CreateRepeatableIntervention"), '', 'fichinter'); + print load_fiche_titre($langs->trans("CreateRepeatableIntervention"), '', 'intervention'); $object = new Fichinter($db); // Source invoice //$object = new Managementfichinter($db); // Source invoice @@ -424,12 +424,11 @@ if ($action == 'create') { print ''; print '
    '; print "\n"; - } - else { + } else { dol_print_error('', "Error, no fichinter ".$object->id); } } elseif ($action == 'selsocforcreatefrommodel') { - print load_fiche_titre($langs->trans("CreateRepeatableIntervention"), '', 'commercial'); + print load_fiche_titre($langs->trans("CreateRepeatableIntervention"), '', 'intervention'); dol_fiche_head(''); print '
    '; @@ -596,8 +595,7 @@ if ($action == 'create') { } else { if ($object->frequency > 0) print $langs->trans('FrequencyPer_'.$object->unit_frequency, $object->frequency); - else - print $langs->trans("NotARecurringInterventionalTemplate"); + else print $langs->trans("NotARecurringInterventionalTemplate"); } print ''; @@ -619,15 +617,12 @@ if ($action == 'create') { print ''; if ($user->rights->ficheinter->creer && ($action == 'nb_gen_max' || $object->frequency > 0)) { print $form->editfieldkey($langs->trans("MaxPeriodNumber"), 'nb_gen_max', $object->nb_gen_max, $object, $user->rights->facture->creer); - } else - print $langs->trans("MaxPeriodNumber"); + } else print $langs->trans("MaxPeriodNumber"); print ''; if ($action == 'nb_gen_max' || $object->frequency > 0) { print $form->editfieldval($langs->trans("MaxPeriodNumber"), 'nb_gen_max', $object->nb_gen_max ? $object->nb_gen_max : '', $object, $user->rights->facture->creer); - } - else - print ''; + } else print ''; print ''; print ''; @@ -693,8 +688,7 @@ if ($action == 'create') { // Show product and description if (isset($object->lines[$i]->product_type)) $type = $object->lines[$i]->product_type; - else - $object->lines[$i]->fk_product_type; + else $object->lines[$i]->fk_product_type; // Try to enhance type detection using date_start and date_end for free lines when type // was not saved. if (!empty($objp->date_start)) $type = 1; @@ -731,8 +725,7 @@ if ($action == 'create') { print $langs->trans('Delete').'
    '; } print '
    '; - } else - print $langs->trans("ErrorRecordNotFound"); + } else print $langs->trans("ErrorRecordNotFound"); } else { /* * List mode @@ -764,20 +757,10 @@ if ($action == 'create') { $resql = $db->query($sql); if ($resql) { $num = $db->num_rows($resql); - print_barre_liste( - $langs->trans("RepeatableInterventional"), - $page, - $_SERVER['PHP_SELF'], - "&socid=$socid", - $sortfield, - $sortorder, - '', - $num, - '', - 'commercial' - ); - print $langs->trans("ToCreateAPredefinedInterventional").'

    '; + print_barre_liste($langs->trans("RepeatableIntervention"), $page, $_SERVER['PHP_SELF'], "&socid=$socid", $sortfield, $sortorder, '', $num, '', 'intervention'); + + print ''.$langs->trans("ToCreateAPredefinedIntervention").'

    '; $i = 0; print ''; @@ -870,10 +853,8 @@ if ($action == 'create') { print ''; print $langs->trans("CreateFichInter").''; - } else - print $langs->trans("DateIsNotEnough"); - } else - print " "; + } else print $langs->trans("DateIsNotEnough"); + } else print " "; print ""; diff --git a/htdocs/fichinter/card.php b/htdocs/fichinter/card.php index 20f25a1207b..ed01164b3df 100644 --- a/htdocs/fichinter/card.php +++ b/htdocs/fichinter/card.php @@ -129,9 +129,7 @@ if (empty($reshook)) if (1 == 0 && !GETPOST('clone_content') && !GETPOST('clone_receivers')) { setEventMessages($langs->trans("NoCloneOptionsSpecified"), null, 'errors'); - } - else - { + } else { if ($object->id > 0) { // Because createFromClone modifies the object, we must clone it so that we can restore it later @@ -142,9 +140,7 @@ if (empty($reshook)) { header("Location: ".$_SERVER['PHP_SELF'].'?id='.$result); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); $object = $orig; $action = ''; @@ -176,14 +172,10 @@ if (empty($reshook)) header('Location: '.$_SERVER["PHP_SELF"].'?id='.$object->id); exit; - } - else - { + } else { $mesg = '
    '.$object->error.'
    '; } - } - - elseif ($action == 'confirm_modify' && $confirm == 'yes' && $user->rights->ficheinter->creer) + } elseif ($action == 'confirm_modify' && $confirm == 'yes' && $user->rights->ficheinter->creer) { $result = $object->setDraft($user); if ($result >= 0) @@ -205,14 +197,10 @@ if (empty($reshook)) header('Location: '.$_SERVER["PHP_SELF"].'?id='.$object->id); exit; - } - else - { + } else { $mesg = '
    '.$object->error.'
    '; } - } - - elseif ($action == 'add' && $user->rights->ficheinter->creer) + } elseif ($action == 'add' && $user->rights->ficheinter->creer) { $object->socid = $socid; $object->duration = GETPOST('duration', 'int'); @@ -383,21 +371,15 @@ if (empty($reshook)) } } } - } - else - { + } else { $mesg = $srcobject->error; $error++; } - } - else - { + } else { $mesg = $object->error; $error++; } - } - else - { + } else { // Fill array 'array_options' with data from add form $ret = $extrafields->setOptionalsFromPost(null, $object); if ($ret < 0) { @@ -416,24 +398,18 @@ if (empty($reshook)) if ($result > 0) { $id = $result; // Force raffraichissement sur fiche venant d'etre cree - } - else - { + } else { $langs->load("errors"); setEventMessages($object->error, $object->errors, 'errors'); $action = 'create'; } } } - } - else - { + } else { $mesg = '
    '.$langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("ThirdParty")).'
    '; $action = 'create'; } - } - - elseif ($action == 'update' && $user->rights->ficheinter->creer) + } elseif ($action == 'update' && $user->rights->ficheinter->creer) { $object->socid = $socid; $object->fk_project = GETPOST('projectid', 'int'); @@ -460,9 +436,7 @@ if (empty($reshook)) { $result = $object->set_contrat($user, GETPOST('contratid', 'int')); if ($result < 0) dol_print_error($db, $object->error); - } - - elseif ($action == 'confirm_delete' && $confirm == 'yes' && $user->rights->ficheinter->supprimer) + } elseif ($action == 'confirm_delete' && $confirm == 'yes' && $user->rights->ficheinter->supprimer) { $result = $object->delete($user); if ($result < 0) { @@ -471,9 +445,7 @@ if (empty($reshook)) header('Location: '.DOL_URL_ROOT.'/fichinter/list.php?leftmenu=ficheinter&restore_lastsearch_values=1'); exit; - } - - elseif ($action == 'setdescription' && $user->rights->ficheinter->creer) + } elseif ($action == 'setdescription' && $user->rights->ficheinter->creer) { $result = $object->set_description($user, GETPOST('description')); if ($result < 0) dol_print_error($db, $object->error); @@ -537,9 +509,7 @@ if (empty($reshook)) if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) fichinter_create($db, $object, $object->modelpdf, $outputlangs); header('Location: '.$_SERVER["PHP_SELF"].'?id='.$object->id); exit; - } - else - { + } else { $mesg = $object->error; $db->rollback(); } @@ -554,9 +524,7 @@ if (empty($reshook)) { header('Location: '.$_SERVER["PHP_SELF"].'?id='.$object->id); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -569,9 +537,7 @@ if (empty($reshook)) { header('Location: '.$_SERVER["PHP_SELF"].'?id='.$object->id); exit; - } - else - { + } else { $mesg = '
    '.$object->error.'
    '; } } @@ -584,9 +550,7 @@ if (empty($reshook)) { header('Location: '.$_SERVER["PHP_SELF"].'?id='.$object->id); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -698,9 +662,7 @@ if (empty($reshook)) header('Location: '.$_SERVER["PHP_SELF"].'?id='.$object->id.'#'.$lineid); exit; - } - - elseif ($action == 'down' && $user->rights->ficheinter->creer) + } elseif ($action == 'down' && $user->rights->ficheinter->creer) { $object->line_down($lineid); @@ -769,16 +731,12 @@ if (empty($reshook)) { header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else - { + } else { if ($object->error == 'DB_ERROR_RECORD_ALREADY_EXISTS') { $langs->load("errors"); $mesg = '
    '.$langs->trans("ErrorThisContactIsAlreadyDefinedAsThisType").'
    '; - } - else - { + } else { $mesg = '
    '.$object->error.'
    '; } } @@ -799,8 +757,7 @@ if (empty($reshook)) { header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else { + } else { dol_print_error($db); } } @@ -825,7 +782,7 @@ if ($action == 'create') $soc = new Societe($db); - print load_fiche_titre($langs->trans("AddIntervention"), '', 'commercial'); + print load_fiche_titre($langs->trans("AddIntervention"), '', 'intervention'); dol_htmloutput_mesg($mesg); @@ -845,9 +802,7 @@ if ($action == 'create') if ($element == 'project') { $projectid = GETPOST('originid', 'int'); - } - else - { + } else { // For compatibility if ($element == 'order' || $element == 'commande') { $element = $subelement = 'commande'; @@ -881,8 +836,7 @@ if ($action == 'create') // Object source contacts list $srccontactslist = $objectsrc->liste_contact(-1, 'external', 1); } - } - else { + } else { $projectid = GETPOST('projectid', 'int'); } @@ -1061,9 +1015,7 @@ if ($action == 'create') print '
    '; } - } - else - { + } else { print ''; print ''; @@ -1094,8 +1046,7 @@ if ($action == 'create') print ''; } -} -elseif ($id > 0 || !empty($ref)) +} elseif ($id > 0 || !empty($ref)) { /* * Affichage en mode visu @@ -1134,9 +1085,7 @@ elseif ($id > 0 || !empty($ref)) $error++; setEventMessages($object->error, $object->errors, 'errors'); } - } - else - { + } else { $numref = $object->ref; } $text = $langs->trans('ConfirmValidateIntervention', $numref); @@ -1290,18 +1239,14 @@ elseif ($id > 0 || !empty($ref)) { $formcontract = new Formcontract($db); $formcontract->formSelectContract($_SERVER["PHP_SELF"].'?id='.$object->id, $object->socid, $object->fk_contrat, 'contratid', 0, 1); - } - else - { + } else { if ($object->fk_contrat) { $contratstatic = new Contrat($db); $contratstatic->fetch($object->fk_contrat); //print ''.$projet->title.''; print $contratstatic->getNomUrl(0, '', 1); - } - else - { + } else { print " "; } } @@ -1363,9 +1308,7 @@ elseif ($id > 0 || !empty($ref)) { print ''; print ''; - } - else - { + } else { print ''; } @@ -1446,9 +1389,7 @@ elseif ($id > 0 || !empty($ref)) } } print ''; - } - else - { + } else { print ' '; } @@ -1584,9 +1525,7 @@ elseif ($id > 0 || !empty($ref)) } if ($num) print ''; - } - else - { + } else { dol_print_error($db); } @@ -1636,8 +1575,7 @@ elseif ($id > 0 || !empty($ref)) if (empty($conf->global->MAIN_USE_ADVANCED_PERMS) || $user->rights->ficheinter->ficheinter_advance->send) { print ''; - } - else print ''; + } else print ''; } } @@ -1674,9 +1612,7 @@ elseif ($id > 0 || !empty($ref)) if ($object->statut != Fichinter::STATUS_BILLED) { print ''; - } - else - { + } else { print ''; } } diff --git a/htdocs/fichinter/class/api_interventions.class.php b/htdocs/fichinter/class/api_interventions.class.php index 4f81930355e..b36ca265b6f 100644 --- a/htdocs/fichinter/class/api_interventions.class.php +++ b/htdocs/fichinter/class/api_interventions.class.php @@ -172,8 +172,7 @@ class Interventions extends DolibarrApi } $i++; } - } - else { + } else { throw new RestException(503, 'Error when retrieve intervention list : '.$db->lasterror()); } if (!count($obj_ret)) { diff --git a/htdocs/fichinter/class/fichinter.class.php b/htdocs/fichinter/class/fichinter.class.php index f8a62da7ba6..754fc8dd507 100644 --- a/htdocs/fichinter/class/fichinter.class.php +++ b/htdocs/fichinter/class/fichinter.class.php @@ -206,9 +206,7 @@ class Fichinter extends CommonObject } $this->db->free($resql); return 1; - } - else - { + } else { dol_print_error($this->db); $this->error = $this->db->error(); return -1; @@ -305,7 +303,7 @@ class Fichinter extends CommonObject if (!$resql) $error++; } - if (!$error && empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) + if (!$error) { $result = $this->insertExtraFields(); if ($result < 0) @@ -334,17 +332,13 @@ class Fichinter extends CommonObject { $this->db->commit(); return $this->id; - } - else - { + } else { $this->db->rollback(); $this->error = join(',', $this->errors); dol_syslog(get_class($this)."::create ".$this->error, LOG_ERR); return -1; } - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -1; @@ -385,7 +379,7 @@ class Fichinter extends CommonObject dol_syslog(get_class($this)."::update", LOG_DEBUG); if ($this->db->query($sql)) { - if (!$error && empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + if (!$error) { $result = $this->insertExtraFields(); if ($result < 0) @@ -404,9 +398,7 @@ class Fichinter extends CommonObject $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -1; @@ -431,8 +423,7 @@ class Fichinter extends CommonObject if ($ref) { $sql .= " WHERE f.entity IN (".getEntity('intervention').")"; $sql .= " AND f.ref='".$this->db->escape($ref)."'"; - } - else $sql .= " WHERE f.rowid=".$rowid; + } else $sql .= " WHERE f.rowid=".$rowid; dol_syslog(get_class($this)."::fetch", LOG_DEBUG); $resql = $this->db->query($sql); @@ -480,9 +471,7 @@ class Fichinter extends CommonObject $this->db->free($resql); return 1; } - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -535,9 +524,7 @@ class Fichinter extends CommonObject $this->db->rollback(); return -1; } - } - else - { + } else { $this->db->rollback(); $this->error = $this->db->lasterror(); return -1; @@ -568,9 +555,7 @@ class Fichinter extends CommonObject if (!$error && (preg_match('/^[\(]?PROV/i', $this->ref) || empty($this->ref))) // empty should not happened, but when it occurs, the test save life { $num = $this->getNextNumRef($this->thirdparty); - } - else - { + } else { $num = $this->ref; } $this->newref = dol_sanitizeFileName($num); @@ -655,9 +640,7 @@ class Fichinter extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); dol_syslog(get_class($this)."::setValid ".$this->error, LOG_ERR); return -1; @@ -877,15 +860,11 @@ class Fichinter extends CommonObject if ($numref != "") { return $numref; - } - else - { + } else { dol_print_error($db, "Fichinter::getNextNumRef ".$obj->error); return ""; } - } - else - { + } else { $langs->load("errors"); print $langs->trans("Error")." ".$langs->trans("Error_FICHEINTER_ADDON_NotDefined"); return ""; @@ -943,9 +922,7 @@ class Fichinter extends CommonObject } } $this->db->free($resql); - } - else - { + } else { dol_print_error($this->db); } } @@ -992,6 +969,16 @@ class Fichinter extends CommonObject } } + if (!$error) + { + $main = MAIN_DB_PREFIX.'fichinterdet'; + $ef = $main."_extrafields"; + $sql = "DELETE FROM $ef WHERE fk_object IN (SELECT rowid FROM $main WHERE fk_fichinter = ".$this->id.")"; + + $resql = $this->db->query($sql); + if (!$resql) $error++; + } + if (!$error) { $sql = "DELETE FROM ".MAIN_DB_PREFIX."fichinterdet"; @@ -1001,7 +988,7 @@ class Fichinter extends CommonObject if (!$resql) $error++; } - if ((!$error) && (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED))) // For avoid conflicts if trigger used + if (!$error) { // Remove extrafields $res = $this->deleteExtraFields(); @@ -1054,9 +1041,7 @@ class Fichinter extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -1086,9 +1071,7 @@ class Fichinter extends CommonObject { $this->date_delivery = $date_delivery; return 1; - } - else - { + } else { $this->error = $this->db->error(); dol_syslog("Fichinter::set_date_delivery Erreur SQL"); return -1; @@ -1120,9 +1103,7 @@ class Fichinter extends CommonObject { $this->description = $description; return 1; - } - else - { + } else { $this->error = $this->db->error(); dol_syslog("Fichinter::set_description Erreur SQL"); return -1; @@ -1154,9 +1135,7 @@ class Fichinter extends CommonObject { $this->fk_contrat = $contractid; return 1; - } - else - { + } else { $this->error = $this->db->error(); return -1; } @@ -1246,9 +1225,7 @@ class Fichinter extends CommonObject { $this->db->commit(); return $this->id; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -1292,9 +1269,7 @@ class Fichinter extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -1; @@ -1385,9 +1360,7 @@ class Fichinter extends CommonObject $this->db->free($resql); return 1; - } - else - { + } else { $this->error = $this->db->error(); return -1; } @@ -1490,9 +1463,7 @@ class FichinterLigne extends CommonObjectLine $this->db->free($result); return 1; - } - else - { + } else { $this->error = $this->db->error().' sql='.$sql; return -1; } @@ -1526,9 +1497,7 @@ class FichinterLigne extends CommonObjectLine { $obj = $this->db->fetch_object($resql); $rangToUse = $obj->max + 1; - } - else - { + } else { dol_print_error($this->db); $this->db->rollback(); return -1; @@ -1552,7 +1521,7 @@ class FichinterLigne extends CommonObjectLine $this->id = $this->db->last_insert_id(MAIN_DB_PREFIX.'fichinterdet'); $this->rowid = $this->id; - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + if (!$error) { $result = $this->insertExtraFields(); if ($result < 0) @@ -1580,15 +1549,11 @@ class FichinterLigne extends CommonObjectLine if (!$error) { $this->db->commit(); return $result; - } - else - { + } else { $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = $this->db->error()." sql=".$sql; $this->db->rollback(); return -1; @@ -1623,7 +1588,7 @@ class FichinterLigne extends CommonObjectLine $resql = $this->db->query($sql); if ($resql) { - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + if (!$error) { $result = $this->insertExtraFields(); if ($result < 0) @@ -1648,16 +1613,12 @@ class FichinterLigne extends CommonObjectLine { $this->db->commit(); return $result; - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -1; @@ -1701,16 +1662,12 @@ class FichinterLigne extends CommonObjectLine { $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -2; } - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -1; @@ -1735,6 +1692,13 @@ class FichinterLigne extends CommonObjectLine dol_syslog(get_class($this)."::deleteline lineid=".$this->id); $this->db->begin(); + $result = $this->deleteExtraFields(); + if ($result < 0) { + $error++; + $this->db->rollback(); + return -1; + } + $sql = "DELETE FROM ".MAIN_DB_PREFIX."fichinterdet WHERE rowid = ".$this->id; $resql = $this->db->query($sql); @@ -1753,22 +1717,16 @@ class FichinterLigne extends CommonObjectLine $this->db->commit(); return $result; - } - else - { + } else { $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = $this->db->error()." sql=".$sql; $this->db->rollback(); return -1; } - } - else - { + } else { return -2; } } diff --git a/htdocs/fichinter/contact.php b/htdocs/fichinter/contact.php index fa0ec89d558..e991efb2009 100644 --- a/htdocs/fichinter/contact.php +++ b/htdocs/fichinter/contact.php @@ -66,9 +66,7 @@ if ($action == 'addcontact' && $user->rights->ficheinter->creer) { header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else - { + } else { if ($object->error == 'DB_ERROR_RECORD_ALREADY_EXISTS') { $langs->load("errors"); $mesg = $langs->trans("ErrorThisContactIsAlreadyDefinedAsThisType"); @@ -95,8 +93,7 @@ elseif ($action == 'deletecontact' && $user->rights->ficheinter->creer) { header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else { + } else { dol_print_error($db); } } diff --git a/htdocs/fichinter/document.php b/htdocs/fichinter/document.php index 925ad7be709..9825c0a58d1 100644 --- a/htdocs/fichinter/document.php +++ b/htdocs/fichinter/document.php @@ -52,11 +52,12 @@ $result = restrictedArea($user, 'ficheinter', $id, 'fichinter'); // Get parameters +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST('sortfield', 'alpha'); $sortorder = GETPOST('sortorder', 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; if (!$sortorder) $sortorder = "ASC"; @@ -169,9 +170,7 @@ if ($object->id) $permtoedit = $user->rights->ficheinter->creer; $param = '&id='.$object->id; include_once DOL_DOCUMENT_ROOT.'/core/tpl/document_actions_post_headers.tpl.php'; -} -else -{ +} else { print $langs->trans("ErrorUnknown"); } diff --git a/htdocs/fichinter/index.php b/htdocs/fichinter/index.php index c371be369f3..ccadf89f1e4 100644 --- a/htdocs/fichinter/index.php +++ b/htdocs/fichinter/index.php @@ -62,7 +62,7 @@ $help_url = "EN:ModuleFichinters|FR:Module_Fiche_Interventions|ES:Módulo_FichaI llxHeader("", $langs->trans("Interventions"), $help_url); -print load_fiche_titre($langs->trans("InterventionsArea"), '', 'commercial'); +print load_fiche_titre($langs->trans("InterventionsArea"), '', 'intervention'); print '
    '; @@ -179,9 +179,7 @@ if ($resql) //print ''.$langs->trans("Total").' ('.$langs->trans("CustomersOrdersRunning").')'.$totalinprocess.''; print ''.$langs->trans("Total").''.$total.''; print "

    "; -} -else -{ +} else { dol_print_error($db); } @@ -298,8 +296,7 @@ if ($resql) } } print "

    "; -} -else dol_print_error($db); +} else dol_print_error($db); /* @@ -369,8 +366,7 @@ if (!empty($conf->ficheinter->enabled)) } print "

    "; - } - else dol_print_error($db); + } else dol_print_error($db); } print ''; diff --git a/htdocs/fichinter/list.php b/htdocs/fichinter/list.php index 7e9dd073925..4d18a54cb54 100644 --- a/htdocs/fichinter/list.php +++ b/htdocs/fichinter/list.php @@ -566,7 +566,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, 'totalarray'=>&$totalarray); $reshook = $hookmanager->executeHooks('printFieldListValue', $parameters); // Note that $action and $object may have been modified by hook print $hookmanager->resPrint; // Date creation @@ -652,9 +652,7 @@ if ($resql) $delallowed = $user->rights->ficheinter->creer; print $formfile->showdocuments('massfilesarea_interventions', '', $filedir, $urlsource, 0, $delallowed, '', 1, 1, 0, 48, 1, $param, $title, '', '', '', null, $hidegeneratedfilelistifempty); -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/fichinter/stats/index.php b/htdocs/fichinter/stats/index.php index 9e133f8c5de..cb076e01ef1 100644 --- a/htdocs/fichinter/stats/index.php +++ b/htdocs/fichinter/stats/index.php @@ -65,7 +65,7 @@ $dir = $conf->ficheinter->dir_temp; llxHeader('', $title); -print load_fiche_titre($title, '', 'commercial'); +print load_fiche_titre($title, '', 'intervention'); dol_mkdir($dir); @@ -81,9 +81,7 @@ if (!$user->rights->societe->client->voir || $user->socid) { $filenamenb = $dir.'/interventionsnbinyear-'.$user->id.'-'.$year.'.png'; $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=interventionstats&file=interventionsnbinyear-'.$user->id.'-'.$year.'.png'; -} -else -{ +} else { $filenamenb = $dir.'/interventionsnbinyear-'.$year.'.png'; $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=interventionstats&file=interventionsnbinyear-'.$year.'.png'; } @@ -121,9 +119,7 @@ if (!$user->rights->societe->client->voir || $user->socid) { $filenameamount = $dir.'/interventionsamountinyear-'.$user->id.'-'.$year.'.png'; $fileurlamount = DOL_URL_ROOT.'/viewimage.php?modulepart=interventionstats&file=interventionsamountinyear-'.$user->id.'-'.$year.'.png'; -} -else -{ +} else { $filenameamount = $dir.'/interventionsamountinyear-'.$year.'.png'; $fileurlamount = DOL_URL_ROOT.'/viewimage.php?modulepart=interventionstats&file=interventionsamountinyear-'.$year.'.png'; } @@ -160,9 +156,7 @@ if (!$user->rights->societe->client->voir || $user->socid) { $filename_avg = $dir.'/interventionsaverage-'.$user->id.'-'.$year.'.png'; $fileurl_avg = DOL_URL_ROOT.'/viewimage.php?modulepart=interventionstats&file=interventionsaverage-'.$user->id.'-'.$year.'.png'; -} -else -{ +} else { $filename_avg = $dir.'/interventionsaverage-'.$year.'.png'; $fileurl_avg = DOL_URL_ROOT.'/viewimage.php?modulepart=interventionstats&file=interventionsaverage-'.$year.'.png'; } @@ -313,8 +307,7 @@ print '
    '; // Show graphs print '"; @@ -254,9 +252,7 @@ if ($object->id > 0) if ($action == 'editmode') { $form->form_modes_reglement($_SERVER['PHP_SELF'].'?socid='.$object->id, $object->mode_reglement_supplier_id, 'mode_reglement_supplier_id', 'DBIT', 1, 1); - } - else - { + } else { $form->form_modes_reglement($_SERVER['PHP_SELF'].'?socid='.$object->id, $object->mode_reglement_supplier_id, 'none'); } print ""; @@ -295,7 +291,7 @@ if ($object->id > 0) print ''; print ''; - if (!empty($conf->fournisseur->enabled) && !empty($conf->global->ORDER_MANAGE_MIN_AMOUNT)) + if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || !empty($conf->supplier_order->enabled)) && !empty($conf->global->ORDER_MANAGE_MIN_AMOUNT)) { print ''; print ''; @@ -378,7 +372,7 @@ if ($object->id > 0) if ($link) $boxstat .= ''; } - if ($conf->fournisseur->enabled) + if (!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)) { // Box proposals $tmp = $object->getOutstandingOrders('supplier'); @@ -396,7 +390,7 @@ if ($object->id > 0) if ($link) $boxstat .= ''; } - if ($conf->fournisseur->enabled) + if (!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)) { $tmp = $object->getOutstandingBills('supplier'); $outstandingOpened = $tmp['opened']; @@ -566,9 +560,7 @@ if ($object->id > 0) if ($obj->dc) { print dol_print_date($db->jdate($obj->dc), 'day'); - } - else - { + } else { print "-"; } print ''; @@ -579,9 +571,7 @@ if ($object->id > 0) $db->free($resql); if ($num > 0) print "
    '; -if ($mesg) { print $mesg; } -else { +if ($mesg) { print $mesg; } else { print $px1->show(); /*print "
    \n"; print $px2->show(); diff --git a/htdocs/filefunc.inc.php b/htdocs/filefunc.inc.php index 0780154118e..d1a33d24344 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', '12.0.0-alpha'); // a.b.c-alpha, a.b.c-beta, a.b.c-rcX or a.b.c +if (!defined('DOL_VERSION')) define('DOL_VERSION', '13.0.0-alpha'); // a.b.c-alpha, a.b.c-beta, a.b.c-rcX or a.b.c if (!defined('EURO')) define('EURO', chr(128)); @@ -87,9 +87,7 @@ if (!$result && !empty($_SERVER["GATEWAY_INTERFACE"])) // If install not done // Note: If calling page was an index.php not into htdocs (ie comm/index.php, ...), then this redirect will fails, // but we don't want to change this because when URL is correct, we must be sure the redirect to install/index.php will be correct. $path = ''; - } - else - { + } else { // If what we look is not index.php, we can try to guess location of root. May not work all the time. // There is no real solution, because the only way to know the apache url relative path is to have it into conf file. // If it fails to find correct $path, then only solution is to ask user to enter the correct URL to index.php or install/index.php @@ -114,9 +112,7 @@ if (!$result && !empty($_SERVER["GATEWAY_INTERFACE"])) // If install not done if (!empty($dolibarr_strict_mode)) { error_reporting(E_ALL | E_STRICT); -} -else -{ +} else { error_reporting(E_ALL & ~(E_STRICT | E_NOTICE | E_DEPRECATED)); } @@ -156,8 +152,7 @@ if (!defined('NOCSRFCHECK') && empty($dolibarr_nocsrfcheck)) { $csrfattack = false; if (empty($_SERVER['HTTP_REFERER'])) $csrfattack = true; // An evil browser was used - else - { + else { $tmpa = parse_url($_SERVER['HTTP_HOST']); $tmpb = parse_url($_SERVER['HTTP_REFERER']); if ((empty($tmpa['host']) ? $tmpa['path'] : $tmpa['host']) != (empty($tmpb['host']) ? $tmpb['path'] : $tmpb['host'])) $csrfattack = true; diff --git a/htdocs/fourn/card.php b/htdocs/fourn/card.php index 5f872b09bae..c10b9dbf162 100644 --- a/htdocs/fourn/card.php +++ b/htdocs/fourn/card.php @@ -235,9 +235,7 @@ if ($object->id > 0) if ($action == 'editconditions') { $form->form_conditions_reglement($_SERVER['PHP_SELF'].'?socid='.$object->id, $object->cond_reglement_supplier_id, 'cond_reglement_supplier_id', -1, 1); - } - else - { + } else { $form->form_conditions_reglement($_SERVER['PHP_SELF'].'?socid='.$object->id, $object->cond_reglement_supplier_id, 'none'); } print "
    '; @@ -334,9 +330,7 @@ if ($object->id > 0) { $adh->ref = $adh->getFullName($langs); print $adh->getNomUrl(1); - } - else - { + } else { print $langs->trans("ThirdpartyNotLinkedToMember"); } print '
    "; - } - else - { + } else { dol_print_error($db); } } @@ -606,9 +596,7 @@ if ($object->id > 0) if (empty($conf->global->SUPPLIER_ORDER_TO_INVOICE_STATUS)) { $sql2 .= " AND c.fk_statut IN (".CommandeFournisseur::STATUS_RECEIVED_COMPLETELY.")"; // Must match filter in htdocs/fourn/orderstoinvoice.php - } - else - { + } else { // CommandeFournisseur::STATUS_ORDERSENT.", ".CommandeFournisseur::STATUS_RECEIVED_PARTIALLY.", ".CommandeFournisseur::STATUS_RECEIVED_COMPLETELY $sql2 .= " AND c.fk_statut IN (".$db->escape($conf->global->SUPPLIER_ORDER_TO_INVOICE_STATUS).")"; } @@ -677,9 +665,7 @@ if ($object->id > 0) if ($obj->dc) { print dol_print_date($db->jdate($obj->dc), 'day'); - } - else - { + } else { print "-"; } print ''; @@ -690,9 +676,7 @@ if ($object->id > 0) $db->free($resql); if ($num > 0) print ""; - } - else - { + } else { dol_print_error($db); } } @@ -761,9 +745,7 @@ if ($object->id > 0) } $db->free($resql); if ($num > 0) print ''; - } - else - { + } else { dol_print_error($db); } } @@ -817,13 +799,10 @@ if ($object->id > 0) { // Company is open print ''; - } - else - { + } else { print ''; } - } - else print ''; + } else print ''; } if ($user->rights->fournisseur->facture->creer) @@ -842,9 +821,7 @@ if ($object->id > 0) if ($user->rights->agenda->myactions->create) { print ''.$langs->trans("AddAction").''; - } - else - { + } else { print ''.$langs->trans("AddAction").''; } } @@ -870,9 +847,7 @@ if ($object->id > 0) // List of done actions show_actions_done($conf, $langs, $db, $object); } -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/fourn/class/api_supplier_invoices.class.php b/htdocs/fourn/class/api_supplier_invoices.class.php index 179b9f158bc..5ec2b6f49a6 100644 --- a/htdocs/fourn/class/api_supplier_invoices.class.php +++ b/htdocs/fourn/class/api_supplier_invoices.class.php @@ -177,8 +177,7 @@ class SupplierInvoices extends DolibarrApi } $i++; } - } - else { + } else { throw new RestException(503, 'Error when retrieve supplier invoice list : '.$db->lasterror()); } if (!count($obj_ret)) { @@ -479,6 +478,201 @@ class SupplierInvoices extends DolibarrApi return $paiement_id; } + /** + * Get lines of a supplier invoice + * + * @param int $id Id of supplier invoice + * + * @url GET {id}/lines + * + * @return array + */ + public function getLines($id) + { + 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'); + } + + if (!DolibarrApi::_checkAccessToResource('fournisseur', $this->invoice->id, 'facture_fourn', 'facture')) { + throw new RestException(401, 'Access not allowed for login '.DolibarrApiAccess::$user->login); + } + $this->invoice->fetch_lines(); + $result = array(); + foreach ($this->invoice->lines as $line) { + array_push($result, $this->_cleanObjectDatas($line)); + } + return $result; + } + + /** + * Add a line to given supplier invoice + * + * @param int $id Id of supplier invoice to update + * @param array $request_data supplier invoice line data + * + * @url POST {id}/lines + * + * @return int|bool + */ + public function postLine($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'); + } + + if (!DolibarrApi::_checkAccessToResource('fournisseur', $this->invoice->id, 'facture_fourn', 'facture')) { + throw new RestException(401, 'Access not allowed for login '.DolibarrApiAccess::$user->login); + } + $request_data = (object) $request_data; + + $updateRes = $this->invoice->addline( + $request_data->description, + $request_data->pu_ht, + $request_data->tva_tx, + $request_data->localtax1_tx, + $request_data->localtax2_tx, + $request_data->qty, + $request_data->fk_product, + $request_data->remise_percent, + $request_data->date_start, + $request_data->date_end, + $request_data->ventil, + $request_data->info_bits, + 'HT', + $request_data->product_type, + $request_data->rang, + false, + $request_data->array_options, + $request_data->fk_unit, + $request_data->origin_id, + $request_data->multicurrency_subprice, + $request_data->ref_supplier, + $request_data->special_code + ); + + if ($updateRes < 0) { + throw new RestException(400, 'Unable to insert the new line. Check your inputs. '.$this->invoice->error); + } + + return $updateRes; + } + + /** + * Update a line to a given supplier invoice + * + * @param int $id Id of supplier invoice to update + * @param int $lineid Id of line to update + * @param array $request_data InvoiceLine data + * + * @url PUT {id}/lines/{lineid} + * + * @return object + * + * @throws 200 + * @throws 304 + * @throws 401 + * @throws 404 + */ + public function putLine($id, $lineid, $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'); + } + + if (!DolibarrApi::_checkAccessToResource('fournisseur', $this->invoice->id, 'facture_fourn', 'facture')) { + throw new RestException(401, 'Access not allowed for login '.DolibarrApiAccess::$user->login); + } + $request_data = (object) $request_data; + $updateRes = $this->invoice->updateline( + $lineid, + $request_data->description, + $request_data->pu_ht, + $request_data->tva_tx, + $request_data->localtax1_tx, + $request_data->localtax2_tx, + $request_data->qty, + $request_data->fk_product, + 'HT', + $request_data->info_bits, + $request_data->product_type, + $request_data->remise_percent, + false, + $request_data->date_start, + $request_data->date_end, + $request_data->array_options, + $request_data->fk_unit, + $request_data->multicurrency_subprice, + $request_data->ref_supplier + ); + + if ($updateRes > 0) { + $result = $this->get($id); + unset($result->line); + return $this->_cleanObjectDatas($result); + } else { + throw new RestException(304, $this->invoice->error); + } + } + + /** + * Deletes a line of a given supplier invoice + * + * @param int $id Id of supplier invoice + * @param int $lineid Id of the line to delete + * + * @url DELETE {id}/lines/{lineid} + * + * @return array + * + * @throws 400 + * @throws 401 + * @throws 404 + * @throws 405 + */ + public function deleteLine($id, $lineid) + { + 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'); + } + + if (empty($lineid)) { + throw new RestException(400, 'Line 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); + } + + // TODO Check the lineid $lineid is a line of ojbect + + $updateRes = $this->invoice->deleteline($lineid); + if ($updateRes > 0) { + return $this->get($id); + } else { + throw new RestException(405, $this->invoice->error); + } + } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Clean sensible object datas diff --git a/htdocs/fourn/class/api_supplier_orders.class.php b/htdocs/fourn/class/api_supplier_orders.class.php index 9e22d952920..bee6346386b 100644 --- a/htdocs/fourn/class/api_supplier_orders.class.php +++ b/htdocs/fourn/class/api_supplier_orders.class.php @@ -175,8 +175,7 @@ class SupplierOrders extends DolibarrApi } $i++; } - } - else { + } else { throw new RestException(503, 'Error when retrieve supplier order list : '.$db->lasterror()); } if (!count($obj_ret)) { diff --git a/htdocs/fourn/class/fournisseur.class.php b/htdocs/fourn/class/fournisseur.class.php index 30995b3b0df..e9ba334313c 100644 --- a/htdocs/fourn/class/fournisseur.class.php +++ b/htdocs/fourn/class/fournisseur.class.php @@ -95,9 +95,7 @@ class Fournisseur extends Societe { $obj = $this->db->fetch_object($resql); return $obj->nb; - } - else - { + } else { return -1; } } @@ -136,9 +134,7 @@ class Fournisseur extends Societe } $this->db->free($resql); return 1; - } - else - { + } else { dol_print_error($this->db); $this->error = $this->db->error(); return -1; @@ -166,9 +162,7 @@ class Fournisseur extends Societe { dol_syslog("Fournisseur::CreateCategory : Success"); return 0; - } - else - { + } else { $this->error = $this->db->lasterror(); dol_syslog("Fournisseur::CreateCategory : Failed (".$this->error.")"); return -1; @@ -204,9 +198,7 @@ class Fournisseur extends Societe { $arr[$obj->rowid] = $obj->name; } - } - else - { + } else { dol_print_error($this->db); $this->error = $this->db->lasterror(); } diff --git a/htdocs/fourn/class/fournisseur.commande.class.php b/htdocs/fourn/class/fournisseur.commande.class.php index e5505cbaa9f..c544658a921 100644 --- a/htdocs/fourn/class/fournisseur.commande.class.php +++ b/htdocs/fourn/class/fournisseur.commande.class.php @@ -65,7 +65,7 @@ class CommandeFournisseur extends CommonOrder /** * @var string String with name of icon for myobject. Must be the part after the 'object_' into object_myobject.png */ - public $picto = 'order'; + public $picto = 'supplier_order'; /** * 0=No test on entity, 1=Test with field entity, 2=Test with link by societe @@ -422,14 +422,10 @@ class CommandeFournisseur extends CommonOrder if ($result < 0) { return -1; - } - else - { + } else { return 1; } - } - else - { + } else { $this->error = $this->db->error()." sql=".$sql; return -1; } @@ -547,9 +543,7 @@ class CommandeFournisseur extends CommonOrder $this->db->free($result); return $num; - } - else - { + } else { $this->error = $this->db->error()." sql=".$sql; return -1; } @@ -585,9 +579,7 @@ class CommandeFournisseur extends CommonOrder if (preg_match('/^[\(]?PROV/i', $this->ref) || empty($this->ref)) // empty should not happened, but when it occurs, the test save life { $num = $this->getNextNumRef($soc); - } - else - { + } else { $num = $this->ref; } $this->newref = dol_sanitizeFileName($num); @@ -666,15 +658,11 @@ class CommandeFournisseur extends CommonOrder { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = 'NotAuthorized'; dol_syslog(get_class($this)."::valid ".$this->error, LOG_ERR); return -1; @@ -881,15 +869,11 @@ class CommandeFournisseur extends CommonOrder if ($numref != "") { return $numref; - } - else - { + } else { $this->error = $obj->error; return -1; } - } - else - { + } else { $this->error = "Error_COMMANDE_SUPPLIER_ADDON_NotDefined"; return -2; } @@ -923,15 +907,11 @@ class CommandeFournisseur extends CommonOrder $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } - } - else - { + } else { dol_print_error($this->db); $this->db->rollback(); @@ -970,9 +950,7 @@ class CommandeFournisseur extends CommonOrder if (preg_match('/^[\(]?PROV/i', $this->ref) || empty($this->ref)) // empty should not happened, but when it occurs, the test save life { $num = $this->getNextNumRef($soc); - } - else - { + } else { $num = $this->ref; } $this->newref = dol_sanitizeFileName($num); @@ -995,8 +973,7 @@ class CommandeFournisseur extends CommonOrder $comment = ' (first level)'; } } - } - else // request a second level approval + } else // request a second level approval { $sql .= " date_approve2='".$this->db->idate($now)."',"; $sql .= " fk_user_approve2 = ".$user->id; @@ -1063,8 +1040,7 @@ class CommandeFournisseur extends CommonOrder { $this->date_approve = $now; $this->user_approve_id = $user->id; - } - else // request a second level approval + } else // request a second level approval { $this->date_approve2 = $now; $this->user_approve_id2 = $user->id; @@ -1072,22 +1048,16 @@ class CommandeFournisseur extends CommonOrder $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } - } - else - { + } else { $this->db->rollback(); $this->error = $this->db->lasterror(); return -1; } - } - else - { + } else { dol_syslog(get_class($this)."::approve Not Authorized", LOG_ERR); } return -1; @@ -1126,22 +1096,16 @@ class CommandeFournisseur extends CommonOrder { $error++; $this->db->rollback(); - } - else - $this->db->commit(); + } else $this->db->commit(); // End call triggers } - } - else - { + } else { $this->db->rollback(); $this->error = $this->db->lasterror(); dol_syslog(get_class($this)."::refuse Error -1"); $result = -1; } - } - else - { + } else { dol_syslog(get_class($this)."::refuse Not Authorized"); } return $result; @@ -1187,23 +1151,17 @@ class CommandeFournisseur extends CommonOrder { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } - } - else - { + } else { $this->db->rollback(); $this->error = $this->db->lasterror(); dol_syslog(get_class($this)."::cancel ".$this->error); return -1; } - } - else - { + } else { dol_syslog(get_class($this)."::cancel Not Authorized"); return -1; } @@ -1247,9 +1205,7 @@ class CommandeFournisseur extends CommonOrder $result = $this->call_trigger('ORDER_SUPPLIER_SUBMIT', $user); if ($result < 0) $error++; // End call triggers - } - else - { + } else { $error++; $this->error = $this->db->lasterror(); $this->errors[] = $this->db->lasterror(); @@ -1258,14 +1214,10 @@ class CommandeFournisseur extends CommonOrder if (!$error) { $this->db->commit(); - } - else - { + } else { $this->db->rollback(); } - } - else - { + } else { $error++; $this->error = $langs->trans('NotAuthorized'); $this->errors[] = $langs->trans('NotAuthorized'); @@ -1428,8 +1380,7 @@ class CommandeFournisseur extends CommonOrder $error++; } } - } - else // Old behaviour, if linked_object has only one link per type, so is something like array('contract'=>id1)) + } else // Old behaviour, if linked_object has only one link per type, so is something like array('contract'=>id1)) { $origin_id = $tmp_origin_id; $ret = $this->add_object_linked($origin, $origin_id); @@ -1463,17 +1414,13 @@ class CommandeFournisseur extends CommonOrder $this->db->commit(); return $this->id; - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -2; } } - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -1; @@ -1557,9 +1504,7 @@ class CommandeFournisseur extends CommonOrder { $this->db->commit(); return $this->id; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -1626,9 +1571,7 @@ class CommandeFournisseur extends CommonOrder if ($price_base_type == 'HT') { $pu = $pu_ht; - } - else - { + } else { $pu = $pu_ttc; } $desc = trim($desc); @@ -1698,9 +1641,7 @@ class CommandeFournisseur extends CommonOrder dol_syslog(get_class($this)."::addline result=".$result." - ".$this->error, LOG_ERR); return -1; } - } - else - { + } else { $this->error = $prod->error; $this->db->rollback(); return -1; @@ -1715,9 +1656,7 @@ class CommandeFournisseur extends CommonOrder if ($qty < $prod->packaging) { $qty = $prod->packaging; - } - else - { + } else { if (($qty % $prod->packaging) > 0) { $coeff = intval($qty / $prod->packaging) + 1; @@ -1726,9 +1665,7 @@ class CommandeFournisseur extends CommonOrder } } } - } - else - { + } else { $product_type = $type; } @@ -1841,15 +1778,11 @@ class CommandeFournisseur extends CommonOrder { $this->db->commit(); return $this->line->id; - } - else - { + } else { $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = $this->line->error; $this->errors = $this->line->errors; dol_syslog(get_class($this)."::addline error=".$this->error, LOG_ERR); @@ -1922,13 +1855,10 @@ class CommandeFournisseur extends CommonOrder if ($result < 0) { $error++; - return -1; } // End call triggers } - } - else - { + } else { $this->error = $this->db->lasterror(); $error++; } @@ -1956,15 +1886,11 @@ class CommandeFournisseur extends CommonOrder { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = 'BadStatusForObject'; return -2; } @@ -1992,16 +1918,12 @@ class CommandeFournisseur extends CommonOrder { $this->update_price(); return 1; - } - else - { + } else { $this->error = $line->error; $this->errors = $line->errors; return -1; } - } - else - { + } else { return -2; } } @@ -2030,11 +1952,23 @@ class CommandeFournisseur extends CommonOrder { $this->errors[] = 'ErrorWhenRunningTrigger'; dol_syslog(get_class($this)."::delete ".$this->error, LOG_ERR); + $this->db->rollback(); return -1; } // End call triggers } + $main = MAIN_DB_PREFIX.'commande_fournisseurdet'; + $ef = $main."_extrafields"; + $sql = "DELETE FROM $ef WHERE fk_object IN (SELECT rowid FROM $main WHERE fk_commande = ".$this->id.")"; + dol_syslog(get_class($this)."::delete extrafields lines", LOG_DEBUG); + if (!$this->db->query($sql)) + { + $this->error = $this->db->lasterror(); + $this->errors[] = $this->db->lasterror(); + $error++; + } + $sql = "DELETE FROM ".MAIN_DB_PREFIX."commande_fournisseurdet WHERE fk_commande =".$this->id; dol_syslog(get_class($this)."::delete", LOG_DEBUG); if (!$this->db->query($sql)) @@ -2054,16 +1988,14 @@ class CommandeFournisseur extends CommonOrder $this->errors[] = $this->db->lasterror(); $error++; } - } - else - { + } else { $this->error = $this->db->lasterror(); $this->errors[] = $this->db->lasterror(); $error++; } // Remove extrafields - if ((!$error) && (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED))) // For avoid conflicts if trigger used + if (!$error) { $result = $this->deleteExtraFields(); if ($result < 0) @@ -2118,9 +2050,7 @@ class CommandeFournisseur extends CommonOrder dol_syslog(get_class($this)."::delete $this->id by $user->id", LOG_DEBUG); $this->db->commit(); return 1; - } - else - { + } else { dol_syslog(get_class($this)."::delete ".$this->error, LOG_ERR); $this->db->rollback(); return -$error; @@ -2155,9 +2085,7 @@ class CommandeFournisseur extends CommonOrder $i++; } return 0; - } - else - { + } else { return -1; } } @@ -2207,8 +2135,7 @@ class CommandeFournisseur extends CommonOrder $i++; } - } - else dol_print_error($this->db, 'Failed to execute request to get dispatched lines'); + } else dol_print_error($this->db, 'Failed to execute request to get dispatched lines'); return $ret; } @@ -2304,25 +2231,19 @@ class CommandeFournisseur extends CommonOrder if (!$error) { $this->db->commit(); - } - else - { + } else { $this->statut = $old_statut; $this->db->rollback(); $this->error = $this->db->lasterror(); $result = -1; } - } - else - { + } else { $this->db->rollback(); $this->error = $this->db->lasterror(); $result = -1; } } - } - else - { + } else { $this->error = $langs->trans('NotAuthorized'); $this->errors[] = $langs->trans('NotAuthorized'); dol_syslog(get_class($this)."::Livraison Not Authorized"); @@ -2379,9 +2300,7 @@ class CommandeFournisseur extends CommonOrder { $this->db->commit(); return 1; - } - else - { + } else { foreach ($this->errors as $errmsg) { dol_syslog(__METHOD__.' Error: '.$errmsg, LOG_ERR); @@ -2390,9 +2309,7 @@ class CommandeFournisseur extends CommonOrder $this->db->rollback(); return -1 * $error; } - } - else - { + } else { return -2; } } @@ -2446,9 +2363,7 @@ class CommandeFournisseur extends CommonOrder { $this->db->commit(); return 1; - } - else - { + } else { foreach ($this->errors as $errmsg) { dol_syslog(__METHOD__.' Error: '.$errmsg, LOG_ERR); @@ -2457,9 +2372,7 @@ class CommandeFournisseur extends CommonOrder $this->db->rollback(); return -1 * $error; } - } - else - { + } else { return -2; } } @@ -2546,9 +2459,7 @@ class CommandeFournisseur extends CommonOrder $result = $this->call_trigger("ORDER_SUPPLIER_STATUS_".$triggerName[$status], $user); if ($result < 0) { $error++; } // End call triggers - } - else - { + } else { $error++; $this->error = $this->db->lasterror(); dol_syslog(get_class($this)."::setStatus ".$this->error); @@ -2559,9 +2470,7 @@ class CommandeFournisseur extends CommonOrder $this->statut = $status; $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -2684,9 +2593,7 @@ class CommandeFournisseur extends CommonOrder if ($qty < $this->line->packaging) { $qty = $this->line->packaging; - } - else - { + } else { if (($qty % $this->line->packaging) > 0) { $coeff = intval($qty / $this->line->packaging) + 1; @@ -2751,16 +2658,12 @@ class CommandeFournisseur extends CommonOrder $this->update_price('', 'auto'); $this->db->commit(); return $result; - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = "Order status makes operation forbidden"; dol_syslog(get_class($this)."::updateline ".$this->error, LOG_ERR); return -2; @@ -2838,9 +2741,7 @@ class CommandeFournisseur extends CommonOrder $line->total_ttc = 59.8; $line->total_tva = 9.8; $line->remise_percent = 50; - } - else - { + } else { $line->total_ht = 100; $line->total_ttc = 119.6; $line->total_tva = 19.6; @@ -2891,9 +2792,7 @@ class CommandeFournisseur extends CommonOrder $this->date_validation = $this->db->idate($obj->date_validation); } $this->db->free($result); - } - else - { + } else { dol_print_error($this->db); } } @@ -2932,9 +2831,7 @@ class CommandeFournisseur extends CommonOrder } $this->db->free($resql); return 1; - } - else - { + } else { dol_print_error($this->db); $this->error = $this->db->error(); return -1; @@ -2967,8 +2864,7 @@ class CommandeFournisseur extends CommonOrder $sql .= $clause." c.entity = ".$conf->entity; if ($mode === 'awaiting') { $sql .= " AND c.fk_statut = ".self::STATUS_ORDERSENT; - } - else { + } else { $sql .= " AND c.fk_statut IN (".self::STATUS_VALIDATED.", ".self::STATUS_ACCEPTED.")"; } if ($user->socid) $sql .= " AND c.fk_soc = ".$user->socid; @@ -3005,9 +2901,7 @@ class CommandeFournisseur extends CommonOrder } return $response; - } - else - { + } else { $this->error = $this->db->error(); return -1; } @@ -3043,8 +2937,7 @@ class CommandeFournisseur extends CommonOrder } return $string; } - } - else dol_print_error($db); + } else dol_print_error($db); } return ''; @@ -3189,7 +3082,7 @@ class CommandeFournisseur extends CommonOrder { global $conf, $langs; - if (!empty($conf->fournisseur->enabled)) + if (!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || !empty($conf->supplier_order->enabled)) { require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.commande.dispatch.class.php'; @@ -3207,9 +3100,7 @@ class CommandeFournisseur extends CommonOrder { $this->error = $supplierorderdispatch->error; $this->errors = $supplierorderdispatch->errors; return $ret; - } - else - { + } else { if (is_array($supplierorderdispatch->lines) && count($supplierorderdispatch->lines) > 0) { $date_liv = dol_now(); @@ -3242,9 +3133,7 @@ class CommandeFournisseur extends CommonOrder return -1; } return 5; - } - else - { + } else { //Diff => received partially //$ret=$this->setStatus($user,4); $ret = $this->Livraison($user, $date_liv, 'par', $comment); // GETPOST("type") is 'tot', 'par', 'nev', 'can' @@ -3282,9 +3171,7 @@ class CommandeFournisseur extends CommonOrder return -1; } return 5; - } - else - { + } else { //Diff => received partially $ret = $this->Livraison($user, $date_liv, 'par', $comment); // GETPOST("type") is 'tot', 'par', 'nev', 'can' if ($ret < 0) { @@ -3292,9 +3179,7 @@ class CommandeFournisseur extends CommonOrder } return 4; } - } - else - { + } else { //all the products are not received $ret = $this->Livraison($user, $date_liv, 'par', $comment); // GETPOST("type") is 'tot', 'par', 'nev', 'can' if ($ret < 0) { @@ -3302,9 +3187,7 @@ class CommandeFournisseur extends CommonOrder } return 4; } - } - else - { + } else { //Diff => received partially $ret = $this->Livraison($user, $date_liv, 'par', $comment); // GETPOST("type") is 'tot', 'par', 'nev', 'can' if ($ret < 0) { @@ -3359,9 +3242,7 @@ class CommandeFournisseur extends CommonOrder $this->db->free(); return $num; - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -3522,16 +3403,12 @@ class CommandeFournisseurLigne extends CommonOrderLine $this->db->free($result); return 1; - } - else - { + } else { $this->error = 'Supplier order line with id='.$rowid.' not found'; dol_syslog(get_class($this)."::fetch Error ".$this->error, LOG_ERR); return 0; } - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -3592,8 +3469,7 @@ class CommandeFournisseurLigne extends CommonOrderLine $sql .= " VALUES (".$this->fk_commande.", '".$this->db->escape($this->label)."','".$this->db->escape($this->desc)."',"; $sql .= " ".($this->date_start ? "'".$this->db->idate($this->date_start)."'" : "null").","; $sql .= " ".($this->date_end ? "'".$this->db->idate($this->date_end)."'" : "null").","; - if ($this->fk_product) { $sql .= $this->fk_product.","; } - else { $sql .= "null,"; } + if ($this->fk_product) { $sql .= $this->fk_product.","; } else { $sql .= "null,"; } $sql .= "'".$this->db->escape($this->product_type)."',"; $sql .= "'".$this->db->escape($this->special_code)."',"; $sql .= "'".$this->db->escape($this->rang)."',"; @@ -3626,7 +3502,7 @@ class CommandeFournisseurLigne extends CommonOrderLine $this->id = $this->db->last_insert_id(MAIN_DB_PREFIX.$this->table_element); $this->rowid = $this->id; - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + if (!$error) { $result = $this->insertExtraFields(); if ($result < 0) @@ -3655,9 +3531,7 @@ class CommandeFournisseurLigne extends CommonOrderLine } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->errors[] = $this->db->error(); $this->db->rollback(); return -2; @@ -3716,7 +3590,7 @@ class CommandeFournisseurLigne extends CommonOrderLine $result = $this->db->query($sql); if ($result > 0) { - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + if (!$error) { $result = $this->insertExtraFields(); if ($result < 0) @@ -3742,15 +3616,11 @@ class CommandeFournisseurLigne extends CommonOrderLine { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -1; @@ -3771,6 +3641,14 @@ class CommandeFournisseurLigne extends CommonOrderLine $this->db->begin(); + // extrafields + $result = $this->deleteExtraFields(); + if ($result < 0) + { + $this->db->rollback(); + return -1; + } + $sql = 'DELETE FROM '.MAIN_DB_PREFIX."commande_fournisseurdet WHERE rowid=".$this->id; dol_syslog(__METHOD__, LOG_DEBUG); @@ -3798,9 +3676,7 @@ class CommandeFournisseurLigne extends CommonOrderLine } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } diff --git a/htdocs/fourn/class/fournisseur.commande.dispatch.class.php b/htdocs/fourn/class/fournisseur.commande.dispatch.class.php index 6a7d8a3e8ba..518c6885411 100644 --- a/htdocs/fourn/class/fournisseur.commande.dispatch.class.php +++ b/htdocs/fourn/class/fournisseur.commande.dispatch.class.php @@ -210,22 +210,11 @@ class CommandeFournisseurDispatch extends CommonObject } } - // Actions on extra fields (by external module or standard code) - // TODO le hook fait double emploi avec le trigger !! - $hookmanager->initHooks(array('commandefournisseurdispatchdao')); - $parameters = array('id'=>$this->id); - $reshook = $hookmanager->executeHooks('insertExtraFields', $parameters, $this, $action); // Note that $action and $object may have been modified by some hooks - if (empty($reshook)) - { - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used - { - $result = $this->insertExtraFields(); - - if ($result < 0) - { - $error++; - } - } + // Create extrafields + if (!$error) + { + $result = $this->insertExtraFields(); + if ($result < 0) $error++; } // Commit or rollback @@ -238,9 +227,7 @@ class CommandeFournisseurDispatch extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return $this->id; } @@ -303,13 +290,12 @@ class CommandeFournisseurDispatch extends CommonObject $this->batch = $obj->batch; $this->eatby = $this->db->jdate($obj->eatby); $this->sellby = $this->db->jdate($obj->sellby); + $this->fetch_optionals(); } $this->db->free($resql); return 1; - } - else - { + } else { $this->error = "Error ".$this->db->lasterror(); return -1; } @@ -373,7 +359,7 @@ class CommandeFournisseurDispatch extends CommonObject if (!$error) { - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + if (!$error) { if (empty($this->id) && !empty($this->rowid))$this->id = $this->rowid; $result = $this->insertExtraFields(); @@ -402,9 +388,7 @@ class CommandeFournisseurDispatch extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } @@ -439,6 +423,16 @@ class CommandeFournisseurDispatch extends CommonObject } } + // Remove extrafields + if (!$error) { + $result = $this->deleteExtraFields(); + if ($result < 0) + { + $error++; + dol_syslog(get_class($this)."::delete error deleteExtraFields ".$this->error, LOG_ERR); + } + } + if (!$error) { $sql = "DELETE FROM ".MAIN_DB_PREFIX.$this->table_element; @@ -459,9 +453,7 @@ class CommandeFournisseurDispatch extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } @@ -514,9 +506,7 @@ class CommandeFournisseurDispatch extends CommonObject { $this->db->commit(); return $object->id; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -552,28 +542,23 @@ class CommandeFournisseurDispatch extends CommonObject if ($mode == 0) { return $langs->trans($this->statuts[$status]); - } - elseif ($mode == 1) + } elseif ($mode == 1) { return $langs->trans($this->statutshort[$status]); - } - elseif ($mode == 2) + } elseif ($mode == 2) { return $langs->trans($this->statuts[$status]); - } - elseif ($mode == 3) + } elseif ($mode == 3) { if ($status == 0) return img_picto($langs->trans($this->statuts[$status]), 'statut0'); elseif ($status == 1) return img_picto($langs->trans($this->statuts[$status]), 'statut4'); elseif ($status == 2) return img_picto($langs->trans($this->statuts[$status]), 'statut8'); - } - elseif ($mode == 4) + } elseif ($mode == 4) { if ($status == 0) return img_picto($langs->trans($this->statuts[$status]), 'statut0').' '.$langs->trans($this->statuts[$status]); elseif ($status == 1) return img_picto($langs->trans($this->statuts[$status]), 'statut4').' '.$langs->trans($this->statuts[$status]); elseif ($status == 2) return img_picto($langs->trans($this->statuts[$status]), 'statut8').' '.$langs->trans($this->statuts[$status]); - } - elseif ($mode == 5) + } elseif ($mode == 5) { if ($status == 0) return ''.$langs->trans($this->statutshort[$status]).' '.img_picto($langs->trans($this->statuts[$status]), 'statut0'); elseif ($status == 1) return ''.$langs->trans($this->statutshort[$status]).' '.img_picto($langs->trans($this->statuts[$status]), 'statut4'); @@ -689,6 +674,7 @@ class CommandeFournisseurDispatch extends CommonObject $line->batch = $obj->batch; $line->eatby = $this->db->jdate($obj->eatby); $line->sellby = $this->db->jdate($obj->sellby); + $line->fetch_optionals(); $this->lines[$line->id] = $line; } diff --git a/htdocs/fourn/class/fournisseur.facture.class.php b/htdocs/fourn/class/fournisseur.facture.class.php index 916ef2f001d..9949c4d3253 100644 --- a/htdocs/fourn/class/fournisseur.facture.class.php +++ b/htdocs/fourn/class/fournisseur.facture.class.php @@ -12,7 +12,7 @@ * Copyright (C) 2015-2019 Ferran Marcet * Copyright (C) 2016 Alexandre Spangaro * Copyright (C) 2018 Nicolas ZABOURI - * Copyright (C) 2018 Frédéric France + * Copyright (C) 2018-2020 Frédéric France * * 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 @@ -66,7 +66,7 @@ class FactureFournisseur extends CommonInvoice /** * @var string String with name of icon for myobject. Must be the part after the 'object_' into object_myobject.png */ - public $picto = 'bill'; + public $picto = 'supplier_invoice'; /** * 0=No test on entity, 1=Test with field entity, 2=Test with link by societe @@ -455,8 +455,7 @@ class FactureFournisseur extends CommonInvoice $error++; } } - } - else // Old behaviour, if linked_object has only one link per type, so is something like array('contract'=>id1)) + } else // Old behaviour, if linked_object has only one link per type, so is something like array('contract'=>id1)) { $origin_id = $tmp_origin_id; $ret = $this->add_object_linked($origin, $origin_id); @@ -502,16 +501,13 @@ class FactureFournisseur extends CommonInvoice $this->lines[$i]->fk_unit, $this->lines[$i]->pu_ht_devise ); - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -5; } } - } - else // If this->lines is an array of invoice line arrays + } else // If this->lines is an array of invoice line arrays { dol_syslog("There is ".count($this->lines)." lines that are array lines"); foreach ($this->lines as $i => $val) @@ -543,9 +539,7 @@ class FactureFournisseur extends CommonInvoice (!empty($line->info_bits) ? $line->info_bits : ''), $line->product_type ); - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -5; @@ -558,7 +552,7 @@ class FactureFournisseur extends CommonInvoice if ($result > 0) { // Actions on extra fields - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + if (!$error) { $result = $this->insertExtraFields(); // This also set $this->error or $this->errors if errors are found if ($result < 0) @@ -579,30 +573,22 @@ class FactureFournisseur extends CommonInvoice { $this->db->commit(); return $this->id; - } - else - { + } else { $this->db->rollback(); return -4; } - } - else - { + } else { $this->error = $langs->trans('FailedToUpdatePrice'); $this->db->rollback(); return -3; } - } - else - { + } else { if ($this->db->errno() == 'DB_ERROR_RECORD_ALREADY_EXISTS') { $this->error = $langs->trans('ErrorRefAlreadyExists'); $this->db->rollback(); return -1; - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -2; @@ -757,9 +743,7 @@ class FactureFournisseur extends CommonInvoice $this->error = $this->db->lasterror(); return -3; } - } - else - { + } else { $this->error = 'Bill with id '.$id.' not found'; dol_syslog(get_class($this).'::fetch '.$this->error); return 0; @@ -767,9 +751,7 @@ class FactureFournisseur extends CommonInvoice $this->db->free($resql); return 1; - } - else - { + } else { $this->error = "Error ".$this->db->lasterror(); return -1; } @@ -869,9 +851,7 @@ class FactureFournisseur extends CommonInvoice } $this->db->free($resql_rows); return 1; - } - else - { + } else { $this->error = $this->db->error(); return -3; } @@ -977,6 +957,15 @@ class FactureFournisseur extends CommonInvoice } } + if (!$error) + { + $result = $this->insertExtraFields(); + if ($result < 0) + { + $error++; + } + } + if (!$error) { if (!$notrigger) @@ -998,9 +987,7 @@ class FactureFournisseur extends CommonInvoice } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } @@ -1087,23 +1074,17 @@ class FactureFournisseur extends CommonInvoice $this->db->commit(); return 1; - } - else - { + } else { $this->error = $facligne->error; $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = $facligne->error; $this->db->rollback(); return -2; } - } - else - { + } else { $this->db->rollback(); return -3; } @@ -1171,10 +1152,14 @@ class FactureFournisseur extends CommonInvoice if (!$error) { + $main = MAIN_DB_PREFIX.'facture_fourn_det'; + $ef = $main."_extrafields"; + $sqlef = "DELETE FROM $ef WHERE fk_object IN (SELECT rowid FROM $main WHERE fk_facture_fourn = $rowid)"; + $resqlef = $this->db->query($sqlef); $sql = 'DELETE FROM '.MAIN_DB_PREFIX.'facture_fourn_det WHERE fk_facture_fourn = '.$rowid.';'; dol_syslog(get_class($this)."::delete", LOG_DEBUG); $resql = $this->db->query($sql); - if ($resql) + if ($resqlef && $resql) { $sql = 'DELETE FROM '.MAIN_DB_PREFIX.'facture_fourn WHERE rowid = '.$rowid; dol_syslog(get_class($this)."::delete", LOG_DEBUG); @@ -1182,8 +1167,7 @@ class FactureFournisseur extends CommonInvoice if (!$resql2) { $error++; } - } - else { + } else { $error++; } } @@ -1234,7 +1218,7 @@ class FactureFournisseur extends CommonInvoice } // Remove extrafields - if ((!$error) && (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED))) // For avoid conflicts if trigger used + if (!$error) { $result = $this->deleteExtraFields(); if ($result < 0) @@ -1249,9 +1233,7 @@ class FactureFournisseur extends CommonInvoice dol_syslog(get_class($this)."::delete $this->id by $user->id", LOG_DEBUG); $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -$error; @@ -1288,9 +1270,7 @@ class FactureFournisseur extends CommonInvoice $result = $this->call_trigger('BILL_SUPPLIER_PAYED', $user); if ($result < 0) $error++; // End call triggers - } - else - { + } else { $error++; $this->error = $this->db->error(); dol_print_error($this->db); @@ -1300,9 +1280,7 @@ class FactureFournisseur extends CommonInvoice { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -1338,9 +1316,7 @@ class FactureFournisseur extends CommonInvoice $result = $this->call_trigger('BILL_SUPPLIER_UNPAYED', $user); if ($result < 0) $error++; // End call triggers - } - else - { + } else { $error++; $this->error = $this->db->lasterror(); dol_syslog("FactureFournisseur::set_unpaid ".$this->error); @@ -1350,9 +1326,7 @@ class FactureFournisseur extends CommonInvoice { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -1407,13 +1381,10 @@ class FactureFournisseur extends CommonInvoice if ($force_number) { $num = $force_number; - } - elseif (preg_match('/^[\(]?PROV/i', $this->ref) || empty($this->ref)) // empty should not happened, but when it occurs, the test save life + } elseif (preg_match('/^[\(]?PROV/i', $this->ref) || empty($this->ref)) // empty should not happened, but when it occurs, the test save life { $num = $this->getNextNumRef($this->thirdparty); - } - else - { + } else { $num = $this->ref; } $this->newref = dol_sanitizeFileName($num); @@ -1512,15 +1483,11 @@ class FactureFournisseur extends CommonInvoice { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -1; @@ -1594,15 +1561,11 @@ class FactureFournisseur extends CommonInvoice { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -1; @@ -1726,17 +1689,13 @@ class FactureFournisseur extends CommonInvoice dol_syslog(get_class($this)."::addline result=".$result." - ".$this->error, LOG_ERR); return -1; } - } - else - { + } else { $this->error = $prod->error; $this->db->rollback(); return -1; } } - } - else - { + } else { $product_type = $type; } @@ -1848,24 +1807,18 @@ class FactureFournisseur extends CommonInvoice { $this->db->commit(); return $this->line->id; - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = $this->line->error; $this->errors = $this->line->errors; $this->db->rollback(); return -2; } - } - else - { + } else { return 0; } } @@ -1963,9 +1916,7 @@ class FactureFournisseur extends CommonInvoice $product = new Product($this->db); $result = $product->fetch($idproduct); $product_type = $product->type; - } - else - { + } else { $product_type = $type; } @@ -2025,7 +1976,7 @@ class FactureFournisseur extends CommonInvoice $this->errors[] = $line->error; } else { // Update total price into invoice record - $res = $this->update_price('', 'auto'); + $res = $this->update_price('', 'auto', 0, $this->thirdparty); } return $res; @@ -2079,9 +2030,7 @@ class FactureFournisseur extends CommonInvoice { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); $this->error = $this->db->lasterror(); return -4; @@ -2133,9 +2082,7 @@ class FactureFournisseur extends CommonInvoice //$this->date_validation = $obj->datev; // This field is not available. Should be store into log table and using this function should be replaced with showing content of log (like for supplier orders) } $this->db->free($result); - } - else - { + } else { dol_print_error($this->db); } } @@ -2183,9 +2130,7 @@ class FactureFournisseur extends CommonInvoice } //print_r($return); return $return; - } - else - { + } else { $this->error = $this->db->error(); return -1; } @@ -2236,9 +2181,7 @@ class FactureFournisseur extends CommonInvoice } return $return; - } - else - { + } else { $this->error = $this->db->error(); return -1; } @@ -2295,9 +2238,7 @@ class FactureFournisseur extends CommonInvoice } $this->db->free($resql); return $response; - } - else - { + } else { dol_print_error($this->db); $this->error = $this->db->error(); return -1; @@ -2342,7 +2283,10 @@ class FactureFournisseur extends CommonInvoice if ($this->type == self::TYPE_CREDIT_NOTE) $picto .= 'a'; // Credit note if ($this->type == self::TYPE_DEPOSIT) $picto .= 'd'; // Deposit invoice - $label = ''.$langs->trans("ShowSupplierInvoice").''; + $label = ''.$langs->trans("SupplierInvoice").''; + if ($this->type == self::TYPE_REPLACEMENT) $label = ''.$langs->transnoentitiesnoconv("InvoiceReplace").''; + elseif ($this->type == self::TYPE_CREDIT_NOTE) $label = ''.$langs->transnoentitiesnoconv("CreditNote").''; + elseif ($this->type == self::TYPE_DEPOSIT) $label = ''.$langs->transnoentitiesnoconv("Deposit").''; if (!empty($this->ref)) $label .= '
    '.$langs->trans('Ref').': '.$this->ref; if (!empty($this->ref_supplier)) @@ -2357,9 +2301,6 @@ class FactureFournisseur extends CommonInvoice $label .= '
    '.$langs->trans('VAT').': '.price($this->total_tva, 0, $langs, 0, -1, -1, $conf->currency); if (!empty($this->total_ttc)) $label .= '
    '.$langs->trans('AmountTTC').': '.price($this->total_ttc, 0, $langs, 0, -1, -1, $conf->currency); - if ($this->type == self::TYPE_REPLACEMENT) $label = $langs->transnoentitiesnoconv("ShowInvoiceReplace").': '.$this->ref; - elseif ($this->type == self::TYPE_CREDIT_NOTE) $label = $langs->transnoentitiesnoconv("ShowInvoiceAvoir").': '.$this->ref; - elseif ($this->type == self::TYPE_DEPOSIT) $label = $langs->transnoentitiesnoconv("ShowInvoiceDeposit").': '.$this->ref; if ($moretitle) $label .= ' - '.$moretitle; if (isset($this->statut) && isset($this->alreadypaid)) { $label .= '
    '.$langs->trans("Status").": ".$this->getLibStatut(5, $this->alreadypaid); @@ -2451,9 +2392,7 @@ class FactureFournisseur extends CommonInvoice if ($numref != "") { return $numref; - } - else - { + } else { $this->error = $obj->error; //dol_print_error($db,get_class($this)."::getNextNumRef ".$obj->error); return false; @@ -2536,9 +2475,7 @@ class FactureFournisseur extends CommonInvoice $line->total_ttc = 59.8; $line->total_tva = 9.8; $line->remise_percent = 50; - } - else - { + } else { $line->total_ht = 100; $line->total_ttc = 119.6; $line->total_tva = 19.6; @@ -2603,9 +2540,7 @@ class FactureFournisseur extends CommonInvoice } $this->db->free($resql); return 1; - } - else - { + } else { dol_print_error($this->db); $this->error = $this->db->error(); return -1; @@ -2665,6 +2600,7 @@ class FactureFournisseur extends CommonInvoice if ($result < 0) { $this->error = $object->error; + $this->errors = $object->errors; $error++; } @@ -2679,9 +2615,7 @@ class FactureFournisseur extends CommonInvoice { $this->db->commit(); return $object->id; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -2710,9 +2644,7 @@ class FactureFournisseur extends CommonInvoice if (!empty($conf->global->INVOICE_SUPPLIER_ADDON_PDF)) { $modele = $conf->global->INVOICE_SUPPLIER_ADDON_PDF; - } - else - { + } else { $modele = ''; // No default value. For supplier invoice, we allow to disable all PDF generation } } @@ -2720,9 +2652,7 @@ class FactureFournisseur extends CommonInvoice if (empty($modele)) { return 0; - } - else - { + } else { $modelpath = "core/modules/supplier_invoice/doc/"; return $this->commonGenerateDocument($modelpath, $modele, $outputlangs, $hidedetails, $hidedesc, $hideref, $moreparams); @@ -3119,7 +3049,7 @@ class SupplierInvoiceLine extends CommonObjectLine */ public function delete($notrigger = 0) { - global $user; + global $user, $conf; dol_syslog(get_class($this)."::deleteline rowid=".$this->id, LOG_DEBUG); @@ -3135,6 +3065,17 @@ class SupplierInvoiceLine extends CommonObjectLine $this->deleteObjectLinked(); + // Remove extrafields + if (!$error) + { + $result = $this->deleteExtraFields(); + if ($result < 0) + { + $error++; + dol_syslog(get_class($this)."::delete error -4 ".$this->error, LOG_ERR); + } + } + if (!$error) { // Supprime ligne $sql = 'DELETE FROM '.MAIN_DB_PREFIX.'facture_fourn_det '; @@ -3151,9 +3092,7 @@ class SupplierInvoiceLine extends CommonObjectLine { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -3245,7 +3184,7 @@ class SupplierInvoiceLine extends CommonObjectLine $this->rowid = $this->id; $error = 0; - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + if (!$error) { $result = $this->insertExtraFields(); if ($result < 0) @@ -3386,7 +3325,7 @@ class SupplierInvoiceLine extends CommonObjectLine $this->id = $this->db->last_insert_id(MAIN_DB_PREFIX.$this->table_element); $this->rowid = $this->id; // backward compatibility - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + if (!$error) { $result = $this->insertExtraFields(); if ($result < 0) @@ -3409,9 +3348,7 @@ class SupplierInvoiceLine extends CommonObjectLine $this->db->commit(); return $this->id; - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -2; @@ -3445,9 +3382,7 @@ class SupplierInvoiceLine extends CommonObjectLine { $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -2; diff --git a/htdocs/fourn/class/fournisseur.product.class.php b/htdocs/fourn/class/fournisseur.product.class.php index c00ee77df53..a2ed4b6c0aa 100644 --- a/htdocs/fourn/class/fournisseur.product.class.php +++ b/htdocs/fourn/class/fournisseur.product.class.php @@ -149,9 +149,7 @@ class ProductFournisseur extends Product { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -287,8 +285,7 @@ class ProductFournisseur extends Product $localtax1 = $localtaxes_array['1']; $localtaxtype2 = $localtaxes_array['2']; $localtax2 = $localtaxes_array['3']; - } - else // old method. deprecated because ot can't retreive type + } else // old method. deprecated because ot can't retreive type { $localtaxtype1 = '0'; $localtax1 = get_localtax($newvat, 1); @@ -384,22 +381,16 @@ class ProductFournisseur extends Product { $this->db->commit(); return $this->product_fourn_price_id; - } - else - { + } else { $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = $this->db->error()." sql=".$sql; $this->db->rollback(); return -2; } - } - else - { + } else { dol_syslog(get_class($this).'::update_buyprice without knowing id of line, so we delete from company, quantity and supplier_ref and insert again', LOG_DEBUG); // Delete price for this quantity @@ -447,8 +438,7 @@ class ProductFournisseur extends Product $resql = $this->db->query($sql); if ($resql) { $this->product_fourn_price_id = $this->db->last_insert_id(MAIN_DB_PREFIX."product_fournisseur_price"); - } - else { + } else { $error++; } @@ -566,23 +556,17 @@ class ProductFournisseur extends Product if ($this->fourn_qty != 0) { $this->fourn_unitprice = price2num($this->fourn_price / $this->fourn_qty, 'MU'); - } - else - { + } else { $this->fourn_unitprice = ""; } } } return 1; - } - else - { + } else { return 0; } - } - else - { + } else { $this->error = $this->db->error(); return -1; } @@ -685,9 +669,7 @@ class ProductFournisseur extends Product if ($prodfourn->fourn_qty != 0) { $prodfourn->fourn_unitprice = price2num($prodfourn->fourn_price / $prodfourn->fourn_qty, 'MU'); - } - else - { + } else { $prodfourn->fourn_unitprice = ""; } } @@ -697,9 +679,7 @@ class ProductFournisseur extends Product $this->db->free($resql); return $retarray; - } - else - { + } else { $this->error = $this->db->error(); return -1; } @@ -775,9 +755,7 @@ class ProductFournisseur extends Product { $this->db->free($resql); return 0; - } - else - { + } else { $min = -1; foreach ($record_array as $record) { @@ -798,9 +776,7 @@ class ProductFournisseur extends Product if ($record["quantity"] != 0) { $fourn_unitprice = price2num($fourn_price / $record["quantity"], 'MU'); - } - else - { + } else { $fourn_unitprice = $fourn_price; } } @@ -835,9 +811,7 @@ class ProductFournisseur extends Product $this->db->free($resql); return 1; - } - else - { + } else { $this->error = $this->db->error(); return -1; } @@ -868,9 +842,7 @@ class ProductFournisseur extends Product { $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->error()." sql=".$sql; $this->db->rollback(); return -1; @@ -997,9 +969,7 @@ class ProductFournisseur extends Product $this->db->free($resql); return $retarray; - } - else - { + } else { $this->error = $this->db->error(); return -1; } @@ -1087,8 +1057,7 @@ class ProductFournisseur extends Product } $linkclose .= ' title="'.dol_escape_htmltag($label, 1).'"'; $linkclose .= ' class="classfortooltip'.($morecss ? ' '.$morecss : '').'"'; - } - else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); + } else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); $linkstart = ''; diff --git a/htdocs/fourn/class/paiementfourn.class.php b/htdocs/fourn/class/paiementfourn.class.php index ace596b6bb4..a2df6ba9b74 100644 --- a/htdocs/fourn/class/paiementfourn.class.php +++ b/htdocs/fourn/class/paiementfourn.class.php @@ -67,6 +67,8 @@ class PaiementFourn extends Paiement */ public $type_code; + + /** * Constructor * @@ -129,15 +131,11 @@ class PaiementFourn extends Paiement $this->type_label = $obj->paiement_type; $this->statut = $obj->statut; $error = 1; - } - else - { + } else { $error = -2; // TODO Use 0 instead } $this->db->free($resql); - } - else - { + } else { dol_print_error($this->db); $error = -1; } @@ -169,9 +167,7 @@ class PaiementFourn extends Paiement { $amounts = &$this->amounts; $amounts_to_update = &$this->multicurrency_amounts; - } - else - { + } else { $amounts = &$this->multicurrency_amounts; $amounts_to_update = &$this->amounts; } @@ -200,9 +196,7 @@ class PaiementFourn extends Paiement { $total = $totalamount; $mtotal = $totalamount_converted; // Maybe use price2num with MT for the converted value - } - else - { + } else { $total = $totalamount_converted; // Maybe use price2num with MT for the converted value $mtotal = $totalamount; } @@ -245,8 +239,7 @@ class PaiementFourn extends Paiement if ($remaintopay == 0) { $result = $invoice->set_paid($user, '', ''); - } - else dol_syslog("Remain to pay for invoice ".$facid." not null. We do nothing."); + } else dol_syslog("Remain to pay for invoice ".$facid." not null. We do nothing."); } // Regenerate documents of invoices @@ -266,15 +259,11 @@ class PaiementFourn extends Paiement $error++; } } - } - else - { + } else { $this->error = $this->db->lasterror(); $error++; } - } - else - { + } else { dol_syslog(get_class($this).'::Create Amount line '.$key.' not a number. We discard it.'); } } @@ -286,15 +275,11 @@ class PaiementFourn extends Paiement if ($result < 0) $error++; // End call triggers } - } - else - { + } else { $this->error = $this->db->lasterror(); $error++; } - } - else - { + } else { $this->error = "ErrorTotalIsNull"; dol_syslog('PaiementFourn::Create Error '.$this->error, LOG_ERR); $error++; @@ -308,9 +293,7 @@ class PaiementFourn extends Paiement $this->db->commit(); dol_syslog('PaiementFourn::Create Ok Total = '.$this->total); return $this->id; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -344,9 +327,7 @@ class PaiementFourn extends Paiement $this->db->rollback(); return -1; } - } - else - { + } else { $this->db->rollback(); return -2; } @@ -412,9 +393,7 @@ class PaiementFourn extends Paiement $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->error; $this->db->rollback(); return -5; @@ -458,9 +437,7 @@ class PaiementFourn extends Paiement $this->date_modification = $this->db->jdate($obj->tms); } $this->db->free($resql); - } - else - { + } else { dol_print_error($this->db); } } @@ -494,9 +471,7 @@ class PaiementFourn extends Paiement } return $billsarray; - } - else - { + } else { $this->error = $this->db->error(); dol_syslog(get_class($this).'::getBillsArray Error '.$this->error); return -1; @@ -583,13 +558,14 @@ class PaiementFourn extends Paiement $result = ''; $text = $this->ref; // Sometimes ref contains label + $reg = array(); if (preg_match('/^\((.*)\)$/i', $text, $reg)) { // Label generique car entre parentheses. On l'affiche en le traduisant if ($reg[1] == 'paiement') $reg[1] = 'Payment'; $text = $langs->trans($reg[1]); } - $label = ''.$langs->trans("ShowPayment").'
    '; + $label = ''.$langs->trans("Payment").'
    '; $label .= ''.$langs->trans("Ref").': '.$text; if ($this->datepaye ? $this->datepaye : $this->date) $label .= '
    '.$langs->trans("Date").': '.dol_print_date($this->datepaye ? $this->datepaye : $this->date, 'dayhour'); @@ -702,9 +678,7 @@ class PaiementFourn extends Paiement } return $numref; - } - else - { + } else { $langs->load("errors"); print $langs->trans("Error")." ".$langs->trans("ErrorModuleSetupNotComplete", $langs->transnoentitiesnoconv("Supplier")); return ""; @@ -734,9 +708,7 @@ class PaiementFourn extends Paiement if (!empty($conf->global->SUPPLIER_PAYMENT_ADDON_PDF)) { $modele = $conf->global->SUPPLIER_PAYMENT_ADDON_PDF; - } - else - { + } else { $modele = ''; // No default value. For supplier invoice, we allow to disable all PDF generation } } @@ -744,9 +716,7 @@ class PaiementFourn extends Paiement if (empty($modele)) { return 0; - } - else - { + } else { $modelpath = "core/modules/supplier_payment/doc/"; return $this->commonGenerateDocument($modelpath, $modele, $outputlangs, $hidedetails, $hidedesc, $hideref, $moreparams); diff --git a/htdocs/fourn/commande/card.php b/htdocs/fourn/commande/card.php index bc86076644c..4c4f83baf38 100644 --- a/htdocs/fourn/commande/card.php +++ b/htdocs/fourn/commande/card.php @@ -99,8 +99,7 @@ if ($id > 0 || !empty($ref)) if ($ret < 0) dol_print_error($db, $object->error); $ret = $object->fetch_thirdparty(); if ($ret < 0) dol_print_error($db, $object->error); -} -elseif (!empty($socid) && $socid > 0) +} elseif (!empty($socid) && $socid > 0) { $fourn = new Fournisseur($db); $ret = $fourn->fetch($socid); @@ -238,8 +237,7 @@ if (empty($reshook)) $l->total_ttc = 0; $l->ref_supplier = ''; $l->update(); - } - else { + } else { // No need for loop to keep best supplier price $obj = $db->fetch_object($resql); $l->subprice = $obj->unitprice; @@ -250,8 +248,7 @@ if (empty($reshook)) $l->ref_supplier = $obj->ref_fourn; $l->update(); } - } - else { + } else { dol_print_error($db); } $db->free($resql); @@ -284,8 +281,7 @@ if (empty($reshook)) //$newstatus=3; // Submited // TODO If there is at least one reception, we can set to Received->Received partially $newstatus = 4; // Received partially - } - elseif ($object->statut == 6) $newstatus = 2; // Canceled->Approved + } elseif ($object->statut == 6) $newstatus = 2; // Canceled->Approved elseif ($object->statut == 7) $newstatus = 3; // Canceled->Process running elseif ($object->statut == 9) $newstatus = 1; // Refused->Validated else $newstatus = 2; @@ -316,9 +312,7 @@ if (empty($reshook)) header('Location: '.$_SERVER["PHP_SELF"].'?id='.$object->id); exit; - } - else - { + } else { $db->rollback(); setEventMessages($object->error, $object->errors, 'errors'); @@ -356,9 +350,7 @@ if (empty($reshook)) $idprod = 0; $price_ht = GETPOST('price_ht'); $tva_tx = (GETPOST('tva_tx') ? GETPOST('tva_tx') : 0); - } - else - { + } else { $idprod = GETPOST('idprod', 'int'); $price_ht = GETPOST('price_ht'); $tva_tx = ''; @@ -441,14 +433,11 @@ if (empty($reshook)) { $productsupplier->ref_supplier = ''; } - } - else - { + } else { $fksoctosearch = $object->thirdparty->id; $productsupplier->get_buyprice(0, -1, $idprod, 'none', $fksoctosearch); // We force qty to -1 to be sure to find if a supplier price exist } - } - elseif (GETPOST('idprodfournprice', 'alpha') > 0) + } elseif (GETPOST('idprodfournprice', 'alpha') > 0) { $qtytosearch = $qty; // Just to see if a price exists for the quantity. Not used to found vat. //$qtytosearch=-1; // We force qty to -1 to be sure to find if a supplier price exist @@ -534,8 +523,7 @@ if (empty($reshook)) $langs->load("errors"); setEventMessages($langs->trans("ErrorQtyTooLowForThisSupplier"), null, 'errors'); } - } - elseif (empty($error)) // $price_ht is already set + } elseif (empty($error)) // $price_ht is already set { $tva_npr = (preg_match('/\*/', $tva_tx) ? 1 : 0); $tva_tx = str_replace('*', '', $tva_tx); @@ -555,9 +543,7 @@ if (empty($reshook)) if ($price_ht !== '') { $pu_ht = price2num($price_ht, 'MU'); // $pu_ht must be rounded according to settings - } - else - { + } else { $pu_ttc = price2num(GETPOST('price_ttc'), 'MU'); $pu_ht = price2num($pu_ttc / (1 + ($tva_tx / 100)), 'MU'); // $pu_ht must be rounded according to settings } @@ -623,9 +609,7 @@ if (empty($reshook)) unset($_POST['date_endday']); unset($_POST['date_endmonth']); unset($_POST['date_endyear']); - } - else - { + } else { $db->rollback(); setEventMessages($object->error, $object->errors, 'errors'); } @@ -674,9 +658,7 @@ if (empty($reshook)) { $price_base_type = 'HT'; $ht = price2num(GETPOST('price_ht')); - } - else - { + } else { $vatratecleaned = $vat_rate; if (preg_match('/^(.*)\s*\((.*)\)$/', $vat_rate, $reg)) // If vat is "xx (yy)" { @@ -768,9 +750,7 @@ if (empty($reshook)) $result = $object->generateDocument($model, $outputlangs, $hidedetails, $hidedesc, $hideref); if ($result < 0) dol_print_error($db, $result); } - } - else - { + } else { dol_print_error($db, $object->error); exit; } @@ -800,9 +780,7 @@ if (empty($reshook)) header('Location: '.$_SERVER["PHP_SELF"].'?id='.$object->id); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); /* Fix bug 1485 : Reset action to avoid asking again confirmation on failure */ $action = ''; @@ -836,9 +814,7 @@ if (empty($reshook)) $result = $object->generateDocument($model, $outputlangs, $hidedetails, $hidedesc, $hideref); if ($result < 0) dol_print_error($db, $result); } - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } @@ -857,9 +833,7 @@ if (empty($reshook)) if (empty($conf->global->STOCK_SUPPORTS_SERVICES)) { $qualified_for_stock_change = $object->hasProductsOrServices(2); - } - else - { + } else { $qualified_for_stock_change = $object->hasProductsOrServices(1); } @@ -892,9 +866,7 @@ if (empty($reshook)) } header("Location: ".$_SERVER["PHP_SELF"]."?id=".$object->id); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -907,9 +879,7 @@ if (empty($reshook)) { header("Location: ".$_SERVER["PHP_SELF"]."?id=".$object->id); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -944,9 +914,7 @@ if (empty($reshook)) $action = ''; header("Location: ".$_SERVER["PHP_SELF"]."?id=".$object->id); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -959,9 +927,7 @@ if (empty($reshook)) { header("Location: ".DOL_URL_ROOT.'/fourn/commande/list.php?restore_lastsearch_values=1'); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -972,9 +938,7 @@ if (empty($reshook)) if (1 == 0 && !GETPOST('clone_content') && !GETPOST('clone_receivers')) { setEventMessages($langs->trans("NoCloneOptionsSpecified"), null, 'errors'); - } - else - { + } else { if ($object->id > 0) { $orig = clone $object; @@ -984,9 +948,7 @@ if (empty($reshook)) { header("Location: ".$_SERVER['PHP_SELF'].'?id='.$result); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); $object = $orig; $action = ''; @@ -1008,18 +970,13 @@ if (empty($reshook)) $langs->load("deliveries"); setEventMessages($langs->trans("DeliveryStateSaved"), null); $action = ''; - } - elseif ($result == -3) + } elseif ($result == -3) { setEventMessages($object->error, $object->errors, 'errors'); - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } - } - else - { + } else { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("Delivery")), null, 'errors'); } } @@ -1031,9 +988,7 @@ if (empty($reshook)) { header("Location: ".$_SERVER["PHP_SELF"]."?id=".$object->id); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -1064,7 +1019,7 @@ if (empty($reshook)) if (!$error) { // Actions on extra fields - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + if (!$error) { $result = $object->insertExtraFields('ORDER_SUPPLIER_MODIFY'); if ($result < 0) @@ -1128,14 +1083,11 @@ if (empty($reshook)) { $classname = 'Propal'; $element = 'comm/propal'; $subelement = 'propal'; - } - elseif ($origin == 'order' || $origin == 'commande') + } elseif ($origin == 'order' || $origin == 'commande') { $classname = 'Commande'; $element = $subelement = 'commande'; - } - else - { + } else { $classname = 'SupplierProposal'; $element = 'supplier_proposal'; $subelement = 'supplier_proposal'; @@ -1190,7 +1142,7 @@ if (empty($reshook)) } // Extrafields - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED) && method_exists($lines[$i], 'fetch_optionals')) // For avoid conflicts if + if (method_exists($lines[$i], 'fetch_optionals')) // For avoid conflicts if { $lines[$i]->fetch_optionals(); $array_option = $lines[$i]->array_options; @@ -1207,9 +1159,7 @@ if (empty($reshook)) $ref_supplier = $productsupplier->ref_supplier; $product_fourn_price_id = $productsupplier->product_fourn_price_id; } - } - else - { + } else { $ref_supplier = $lines[$i]->ref_fourn; $product_fourn_price_id = 0; } @@ -1276,9 +1226,7 @@ if (empty($reshook)) setEventMessages($object->error, $object->errors, 'errors'); $error++; } - } - else - { + } else { $id = $object->create($user); if ($id < 0) { @@ -1294,9 +1242,7 @@ if (empty($reshook)) $db->rollback(); $action = 'create'; $_GET['socid'] = $_POST['socid']; - } - else - { + } else { $db->commit(); header("Location: ".$_SERVER['PHP_SELF']."?id=".$id); exit; @@ -1383,13 +1329,10 @@ if (empty($reshook)) if (empty($result_order["result"]["result_code"])) //No result, check error str { setEventMessages($langs->trans("SOAPError")." '".$soapclient_order->error_str."'", null, 'errors'); - } - elseif ($result_order["result"]["result_code"] != "OK") //Something went wrong + } elseif ($result_order["result"]["result_code"] != "OK") //Something went wrong { setEventMessages($langs->trans("SOAPError")." '".$result_order["result"]["result_code"]."' - '".$result_order["result"]["result_label"]."'", null, 'errors'); - } - else - { + } else { setEventMessages($langs->trans("RemoteOrderRef")." ".$result_order["ref"], null, 'mesgs'); } } @@ -1409,16 +1352,12 @@ if (empty($reshook)) { header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else - { + } else { if ($object->error == 'DB_ERROR_RECORD_ALREADY_EXISTS') { $langs->load("errors"); setEventMessages($langs->trans("ErrorThisContactIsAlreadyDefinedAsThisType"), null, 'errors'); - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -1439,8 +1378,7 @@ if (empty($reshook)) { header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else { + } else { dol_print_error($db); } } @@ -1465,7 +1403,7 @@ llxHeader('', $langs->trans("Order"), $help_url); $now = dol_now(); if ($action == 'create') { - print load_fiche_titre($langs->trans('NewOrderSupplier')); + print load_fiche_titre($langs->trans('NewOrderSupplier'), '', 'supplier_order'); dol_htmloutput_events(); @@ -1492,14 +1430,11 @@ if ($action == 'create') { $classname = 'Propal'; $element = 'comm/propal'; $subelement = 'propal'; - } - elseif ($origin == 'order' || $origin == 'commande') + } elseif ($origin == 'order' || $origin == 'commande') { $classname = 'Commande'; $element = $subelement = 'commande'; - } - else - { + } else { $classname = 'SupplierProposal'; $element = 'supplier_proposal'; $subelement = 'supplier_proposal'; @@ -1544,9 +1479,7 @@ if ($action == 'create') // Object source contacts list $srccontactslist = $objectsrc->liste_contact(-1, 'external', 1); - } - else - { + } else { $cond_reglement_id = $societe->cond_reglement_supplier_id; $mode_reglement_id = $societe->mode_reglement_supplier_id; @@ -1584,9 +1517,7 @@ if ($action == 'create') { print $societe->getNomUrl(1); print ''; - } - else - { + } else { print $form->select_company((empty($socid) ? '' : $socid), 'socid', 's.fournisseur=1', 'SelectThirdParty', 0, 0, null, 0, 'minwidth300'); // reload page to retrieve customer informations if (!empty($conf->global->RELOAD_PAGE_ON_SUPPLIER_CHANGE)) @@ -1770,8 +1701,7 @@ if ($action == 'create') print ''; } print "\n"; -} -elseif (!empty($object->id)) +} elseif (!empty($object->id)) { $result = $object->fetch($id, $ref); @@ -1819,16 +1749,13 @@ elseif (!empty($object->id)) if (preg_match('/^[\(]?PROV/i', $object->ref) || empty($object->ref)) // empty should not happened, but when it occurs, the test save life { $newref = $object->getNextNumRef($object->thirdparty); - } - else $newref = $object->ref; + } else $newref = $object->ref; if ($newref < 0) { setEventMessages($object->error, $object->errors, 'errors'); $action = ''; - } - else - { + } else { $text = $langs->trans('ConfirmValidateOrder', $newref); if (!empty($conf->notification->enabled)) { @@ -1849,9 +1776,7 @@ elseif (!empty($object->id)) if (empty($conf->global->STOCK_SUPPORTS_SERVICES)) { $qualified_for_stock_change = $object->hasProductsOrServices(2); - } - else - { + } else { $qualified_for_stock_change = $object->hasProductsOrServices(1); } @@ -1958,20 +1883,17 @@ elseif (!empty($object->id)) $morehtmlref .= $formproject->select_projects((empty($conf->global->PROJECT_CAN_ALWAYS_LINK_TO_ALL_SUPPLIERS) ? $object->socid : -1), $object->fk_project, 'projectid', $maxlength, 0, 1, 0, 1, 0, 0, '', 1); $morehtmlref .= ''; $morehtmlref .= ''; - } - else { + } else { $morehtmlref .= $form->form_project($_SERVER['PHP_SELF'].'?id='.$object->id, $object->socid, $object->fk_project, 'none', 0, 0, 0, 1); } - } - else { + } else { if (!empty($object->fk_project)) { $proj = new Project($db); $proj->fetch($object->fk_project); $morehtmlref .= '
    '; $morehtmlref .= $proj->ref; $morehtmlref .= ''; - } - else { + } else { $morehtmlref .= ''; } } @@ -2044,9 +1966,7 @@ elseif (!empty($object->id)) if ($action == 'editconditions') { $form->form_conditions_reglement($_SERVER['PHP_SELF'].'?id='.$object->id, $object->cond_reglement_id, 'cond_reglement_id'); - } - else - { + } else { $form->form_conditions_reglement($_SERVER['PHP_SELF'].'?id='.$object->id, $object->cond_reglement_id, 'none'); } print ""; @@ -2064,9 +1984,7 @@ elseif (!empty($object->id)) if ($action == 'editmode') { $form->form_modes_reglement($_SERVER['PHP_SELF'].'?id='.$object->id, $object->mode_reglement_id, 'mode_reglement_id', 'DBIT', 1, 1); - } - else - { + } else { $form->form_modes_reglement($_SERVER['PHP_SELF'].'?id='.$object->id, $object->mode_reglement_id, 'none'); } print ''; @@ -2159,9 +2077,7 @@ elseif (!empty($object->id)) print $form->selectDate($object->date_livraison ? $object->date_livraison : -1, 'liv_', $usehourmin, $usehourmin, '', "setdate_livraison"); print ''; print ''; - } - else - { + } else { $usehourmin = 'day'; if (!empty($conf->global->SUPPLIER_ORDER_USE_HOUR_FOR_DELIVERY_DATE)) $usehourmin = 'dayhour'; print $object->date_livraison ? dol_print_date($object->date_livraison, $usehourmin) : ' '; @@ -2192,9 +2108,7 @@ elseif (!empty($object->id)) if ($action != 'editincoterm') { print $form->textwithpicto($object->display_incoterms(), $object->label_incoterms, 1); - } - else - { + } else { print $form->select_incoterms((!empty($object->fk_incoterms) ? $object->fk_incoterms : ''), (!empty($object->location_incoterms) ? $object->location_incoterms : ''), $_SERVER['PHP_SELF'].'?id='.$object->id); } print ''; @@ -2393,14 +2307,10 @@ elseif (!empty($object->id)) if (!empty($conf->global->SUPPLIER_ORDER_3_STEPS_TO_BE_APPROVED) && $conf->global->MAIN_FEATURES_LEVEL > 0 && $object->total_ht >= $conf->global->SUPPLIER_ORDER_3_STEPS_TO_BE_APPROVED && !empty($object->user_approve_id)) { print ''.$langs->trans("ApproveOrder").''; - } - else - { + } else { print ''.$langs->trans("ApproveOrder").''; } - } - else - { + } else { print ''.$langs->trans("ApproveOrder").''; } } @@ -2415,14 +2325,10 @@ elseif (!empty($object->id)) if (!empty($object->user_approve_id2)) { print ''.$langs->trans("Approve2Order").''; - } - else - { + } else { print ''.$langs->trans("Approve2Order").''; } - } - else - { + } else { print ''.$langs->trans("Approve2Order").''; } } @@ -2434,9 +2340,7 @@ elseif (!empty($object->id)) if ($user->rights->fournisseur->commande->approuver || $user->rights->fournisseur->commande->approve2) { print ''.$langs->trans("RefuseOrder").''; - } - else - { + } else { print ''.$langs->trans("RefuseOrder").''; } } @@ -2503,9 +2407,7 @@ elseif (!empty($object->id)) if ($user->rights->fournisseur->commande->commander) { print ''; - } - else - { + } else { print ''; } } @@ -2537,18 +2439,14 @@ elseif (!empty($object->id)) if (empty($conf->facture->enabled)) { print ''.$langs->trans("ClassifyBilled").''; - } - else - { + } else { if (!empty($object->linkedObjectsIds['invoice_supplier'])) { if ($user->rights->fournisseur->facture->creer) { print ''.$langs->trans("ClassifyBilled").''; } - } - else - { + } else { print ''.$langs->trans("ClassifyBilled").''; } } @@ -2625,15 +2523,15 @@ elseif (!empty($object->id)) print '
    '; // Generated documents - $comfournref = dol_sanitizeFileName($object->ref); - $file = $conf->fournisseur->dir_output.'/commande/'.$comfournref.'/'.$comfournref.'.pdf'; - $relativepath = $comfournref.'/'.$comfournref.'.pdf'; - $filedir = $conf->fournisseur->dir_output.'/commande/'.$comfournref; + $objref = dol_sanitizeFileName($object->ref); + $file = $conf->fournisseur->dir_output.'/commande/'.$objref.'/'.$objref.'.pdf'; + $relativepath = $objref.'/'.$objref.'.pdf'; + $filedir = $conf->fournisseur->dir_output.'/commande/'.$objref; $urlsource = $_SERVER["PHP_SELF"]."?id=".$object->id; $genallowed = $user->rights->fournisseur->commande->lire; $delallowed = $user->rights->fournisseur->commande->creer; - print $formfile->showdocuments('commande_fournisseur', $comfournref, $filedir, $urlsource, $genallowed, $delallowed, $object->modelpdf, 1, 0, 0, 0, 0, '', '', '', $object->thirdparty->default_lang); + print $formfile->showdocuments('commande_fournisseur', $objref, $filedir, $urlsource, $genallowed, $delallowed, $object->modelpdf, 1, 0, 0, 0, 0, '', '', '', $object->thirdparty->default_lang); $somethingshown = $formfile->numoffiles; // Show links to link elements @@ -2733,9 +2631,7 @@ elseif (!empty($object->id)) { print "
    ".$langs->trans("ErrorOccurredReviseAndRetry")."
    "; print ''; - } - else - { + } else { $textinput_size = "50"; // Webservice url print ''.$langs->trans("WebServiceURL").''.dol_print_url($ws_url).''; @@ -2755,8 +2651,7 @@ elseif (!empty($object->id)) //End table/form print ''; print ''; - } - elseif ($mode == "check") + } elseif ($mode == "check") { $ws_entity = ''; $ws_thirdparty = ''; @@ -2782,9 +2677,7 @@ elseif (!empty($object->id)) { setEventMessages($langs->trans("RemoteUserMissingAssociatedSoc"), null, 'errors'); $error_occurred = true; - } - else - { + } else { //Create SOAP client and connect it to product/service $soapclient_product = new nusoap_client($ws_url."/webservices/server_productorservice.php"); $soapclient_product->soap_defencoding = 'UTF-8'; @@ -2813,15 +2706,12 @@ elseif (!empty($object->id)) if (empty($status_code)) //No result, check error str { setEventMessages($langs->trans("SOAPError")." '".$soapclient_order->error_str."'", null, 'errors'); - } - elseif ($status_code != "OK") //Something went wrong + } elseif ($status_code != "OK") //Something went wrong { if ($status_code == "NOT_FOUND") { setEventMessages($line_id.$langs->trans("SupplierMissingRef")." '".$ref_supplier."'", null, 'warnings'); - } - else - { + } else { setEventMessages($line_id.$langs->trans("ResponseNonOK")." '".$status_code."' - '".$result_product["result"]["result_label"]."'", null, 'errors'); $error_occurred = true; break; @@ -2856,19 +2746,15 @@ elseif (!empty($object->id)) } } } - } - elseif ($user_status_code == "PERMISSION_DENIED") + } elseif ($user_status_code == "PERMISSION_DENIED") { setEventMessages($langs->trans("RemoteUserNotPermission"), null, 'errors'); $error_occurred = true; - } - elseif ($user_status_code == "BAD_CREDENTIALS") + } elseif ($user_status_code == "BAD_CREDENTIALS") { setEventMessages($langs->trans("RemoteUserBadCredentials"), null, 'errors'); $error_occurred = true; - } - else - { + } else { setEventMessages($langs->trans("ResponseNonOK")." '".$user_status_code."'", null, 'errors'); $error_occurred = true; } @@ -2885,9 +2771,7 @@ elseif (!empty($object->id)) if ($error_occurred) { print "
    ".$langs->trans("ErrorOccurredReviseAndRetry")."
    "; - } - else - { + } else { print ''; print '     '; } diff --git a/htdocs/fourn/commande/contact.php b/htdocs/fourn/commande/contact.php index 7ff0dd1c85a..b3d2e3aa664 100644 --- a/htdocs/fourn/commande/contact.php +++ b/htdocs/fourn/commande/contact.php @@ -65,16 +65,12 @@ if ($action == 'addcontact' && $user->rights->fournisseur->commande->creer) { header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else - { + } else { if ($object->error == 'DB_ERROR_RECORD_ALREADY_EXISTS') { $langs->load("errors"); setEventMessages($langs->trans("ErrorThisContactIsAlreadyDefinedAsThisType"), null, 'errors'); - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -86,9 +82,7 @@ elseif ($action == 'swapstatut' && $user->rights->fournisseur->commande->creer) if ($object->fetch($id)) { $result = $object->swapContactStatus(GETPOST('ligne')); - } - else - { + } else { dol_print_error($db); } } @@ -103,8 +97,7 @@ elseif ($action == 'deletecontact' && $user->rights->fournisseur->commande->cree { header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else { + } else { dol_print_error($db); } } @@ -193,9 +186,7 @@ if ($id > 0 || !empty($ref)) // Contacts lines include DOL_DOCUMENT_ROOT.'/core/tpl/contacts.tpl.php'; - } - else - { + } else { // Contact not found print "ErrorRecordNotFound"; } diff --git a/htdocs/fourn/commande/dispatch.php b/htdocs/fourn/commande/dispatch.php index d132a87233f..d7ad3785338 100644 --- a/htdocs/fourn/commande/dispatch.php +++ b/htdocs/fourn/commande/dispatch.php @@ -8,7 +8,7 @@ * Copyright (C) 2016 Florian Henry * Copyright (C) 2017 Ferran Marcet * Copyright (C) 2018 Frédéric France - * Copyright (C) 2019 Christophe Battarel + * Copyright (C) 2019-2020 Christophe Battarel * * 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 @@ -38,6 +38,8 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/fourn.lib.php'; require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.commande.class.php'; require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.commande.dispatch.class.php'; require_once DOL_DOCUMENT_ROOT.'/product/class/html.formproduct.class.php'; +require_once DOL_DOCUMENT_ROOT . '/product/stock/class/mouvementstock.class.php'; + if (!empty($conf->projet->enabled)) require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php'; @@ -53,6 +55,8 @@ $ref = GETPOST('ref'); $lineid = GETPOST('lineid', 'int'); $action = GETPOST('action', 'aZ09'); $fk_default_warehouse = GETPOST('fk_default_warehouse', 'int'); +$cancel = GETPOST('cancel', 'alpha'); +$confirm = GETPOST('confirm', 'alpha'); if ($user->socid) $socid = $user->socid; @@ -128,9 +132,7 @@ if ($action == 'checkdispatchline' && !((empty($conf->global->MAIN_USE_ADVANCED_ if (!$error) { $db->commit(); - } - else - { + } else { $db->rollback(); } } @@ -171,9 +173,7 @@ if ($action == 'uncheckdispatchline' && !((empty($conf->global->MAIN_USE_ADVANCE if (!$error) { $db->commit(); - } - else - { + } else { $db->rollback(); } } @@ -214,9 +214,7 @@ if ($action == 'denydispatchline' && !((empty($conf->global->MAIN_USE_ADVANCED_P if (!$error) { $db->commit(); - } - else - { + } else { $db->rollback(); } } @@ -366,6 +364,121 @@ if ($action == 'dispatch' && $user->rights->fournisseur->commande->receptionner) } } +// Remove a dispatched line +if ($action == 'confirm_deleteline' && $confirm == 'yes' && $user->rights->fournisseur->commande->receptionner) +{ + $db->begin(); + + $supplierorderdispatch = new CommandeFournisseurDispatch($db); + $result = $supplierorderdispatch->fetch($lineid); + if ($result > 0) + { + $qty = $supplierorderdispatch->qty; + $entrepot = $supplierorderdispatch->fk_entrepot; + $product = $supplierorderdispatch->fk_product; + $price = GETPOST('price'); + $comment = $supplierorderdispatch->comment; + $eatby = $supplierorderdispatch->fk_product; + $sellby = $supplierorderdispatch->sellby; + $batch = $supplierorderdispatch->batch; + + $result = $supplierorderdispatch->delete($user); + } + if ($result < 0) + { + $errors = $object->errors; + $error++; + } + else { + // If module stock is enabled and the stock increase is done on purchase order dispatching + if ($entrepot > 0 && ! empty($conf->stock->enabled) && ! empty($conf->global->STOCK_CALCULATE_ON_SUPPLIER_DISPATCH_ORDER)) + { + $mouv = new MouvementStock($db); + if ($product > 0) + { + $mouv->origin = &$object; + $result=$mouv->livraison($user, $product, $entrepot, $qty, $price, $comment, '', $eatby, $sellby, $batch); + if ($result < 0) + { + $errors=$mouv->errors; + $error++; + } + } + } + } + if ($error > 0) + { + $db->rollback(); + setEventMessages($error, $errors, 'errors'); + } + else { + $db->commit(); + } +} + +// Update a dispatched line +if ($action == 'updateline' && $user->rights->fournisseur->commande->receptionner) +{ + $db->begin(); + $error = 0; + + $supplierorderdispatch = new CommandeFournisseurDispatch($db); + $result = $supplierorderdispatch->fetch($lineid); + if ($result > 0) + { + $qty = $supplierorderdispatch->qty; + $entrepot = $supplierorderdispatch->fk_entrepot; + $product = $supplierorderdispatch->fk_product; + $price = GETPOST('price'); + $comment = $supplierorderdispatch->comment; + $eatby = $supplierorderdispatch->fk_product; + $sellby = $supplierorderdispatch->sellby; + $batch = $supplierorderdispatch->batch; + + $supplierorderdispatch->qty = GETPOST('qty', 'int'); + $supplierorderdispatch->fk_entrepot = GETPOST('fk_entrepot'); + $result = $supplierorderdispatch->update($user); + } + if ($result < 0) + { + $error++; + $errors=$supplierorderdispatch->errors; + } + else { + // If module stock is enabled and the stock increase is done on purchase order dispatching + if ($entrepot > 0 && ! empty($conf->stock->enabled) && ! empty($conf->global->STOCK_CALCULATE_ON_SUPPLIER_DISPATCH_ORDER)) + { + $mouv = new MouvementStock($db); + if ($product > 0) + { + $mouv->origin = &$object; + $result=$mouv->livraison($user, $product, $entrepot, $qty, $price, $comment, '', $eatby, $sellby, $batch); + if ($result < 0) + { + $errors=$mouv->errors; + $error++; + } + else { + $mouv->origin = &$object; + $result=$mouv->reception($user, $product, $supplierorderdispatch->fk_entrepot, $supplierorderdispatch->qty, $price, $comment, $eatby, $sellby, $batch); + if ($result < 0) + { + $errors=$mouv->errors; + $error++; + } + } + } + } + } + if ($error > 0) + { + $db->rollback(); + setEventMessages($error, $errors, 'errors'); + } + else { + $db->commit(); + } +} /* * View @@ -379,7 +492,7 @@ $warehouse_static = new Entrepot($db); $supplierorderdispatch = new CommandeFournisseurDispatch($db); $help_url = 'EN:Module_Suppliers_Orders|FR:CommandeFournisseur|ES:Módulo_Pedidos_a_proveedores'; -llxHeader('', $langs->trans("Order"), $help_url, '', 0, 0, array('/fourn/js/lib_dispatch.js.php')); +llxHeader('', $langs->trans("OrderDispatch"), $help_url, '', 0, 0, array('/fourn/js/lib_dispatch.js.php')); if ($id > 0 || !empty($ref)) { $soc = new Societe($db); @@ -393,6 +506,23 @@ if ($id > 0 || !empty($ref)) { $title = $langs->trans("SupplierOrder"); dol_fiche_head($head, 'dispatch', $title, -1, 'order'); + $formconfirm=''; + + // Confirmation to delete line + if ($action == 'ask_deleteline') + { + $formconfirm=$form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id.'&lineid='.$lineid, $langs->trans('DeleteLine'), $langs->trans('ConfirmDeleteLine'), 'confirm_deleteline', '', 0, 1); + } + + // Call Hook formConfirm + $parameters = array('lineid' => $lineid); + // Note that $action and $object may be modified by hook + $reshook = $hookmanager->executeHooks('formConfirm', $parameters, $object, $action); + if (empty($reshook)) $formconfirm.=$hookmanager->resPrint; + elseif ($reshook > 0) $formconfirm=$hookmanager->resPrint; + + // Print form confirm + print $formconfirm; // Supplier order card @@ -493,6 +623,9 @@ if ($id > 0 || !empty($ref)) { require_once DOL_DOCUMENT_ROOT.'/product/class/html.formproduct.class.php'; $formproduct = new FormProduct($db); $formproduct->loadWarehouses(); + $entrepot = new Entrepot($db); + $listwarehouses=$entrepot->list_array(1); + if (empty($conf->reception->enabled))print '
    '; else print ''; @@ -567,20 +700,14 @@ if ($id > 0 || !empty($ref)) { $i = 0; if ($num) { - $entrepot = new Entrepot($db); - $listwarehouses = $entrepot->list_array(1); - print ''; print ''.$langs->trans("Description").''; - if (!empty($conf->productbatch->enabled)) - { + if (!empty($conf->productbatch->enabled)) { print ''.$langs->trans("batch_number").''; print ''.$langs->trans("EatByDate").''; print ''.$langs->trans("SellByDate").''; - } - else - { + } else { print ''; print ''; print ''; @@ -602,12 +729,9 @@ if ($id > 0 || !empty($ref)) { print ''.$langs->trans("Warehouse"); // Select warehouse to force it everywhere - if (count($listwarehouses) > 1) - { + if (count($listwarehouses) > 1) { print '
    '.$langs->trans("ForceTo").' '.$form->selectarray('fk_default_warehouse', $listwarehouses, $fk_default_warehouse, 1, 0, 0, '', 0, 0, $disabled); - } - elseif (count($listwarehouses) == 1) - { + } elseif (count($listwarehouses) == 1) { print '
    '.$langs->trans("ForceTo").' '.$form->selectarray('fk_default_warehouse', $listwarehouses, $fk_default_warehouse, 0, 0, 0, '', 0, 0, $disabled); } @@ -734,9 +858,7 @@ if ($id > 0 || !empty($ref)) { if (!empty($conf->global->SUPPLIER_ORDER_EDIT_BUYINGPRICE_DURING_RECEIPT)) // Not tested ! { print $langs->trans("BuyingPrice").': '; - } - else - { + } else { print ''; } @@ -790,9 +912,7 @@ if ($id > 0 || !empty($ref)) { if (!empty($conf->global->SUPPLIER_ORDER_EDIT_BUYINGPRICE_DURING_RECEIPT)) // Not tested ! { print $langs->trans("BuyingPrice").': '; - } - else - { + } else { print ''; } @@ -808,9 +928,7 @@ if ($id > 0 || !empty($ref)) { if (!empty($conf->productbatch->enabled) && $objp->tobatch == 1) { $type = 'batch'; print img_picto($langs->trans('AddStockLocationLine'), 'split.png', 'class="splitbutton" onClick="addDispatchLine('.$i.', \''.$type.'\')"'); - } - else - { + } else { $type = 'dispatch'; print img_picto($langs->trans('AddStockLocationLine'), 'split.png', 'class="splitbutton" onClick="addDispatchLine('.$i.', \''.$type.'\')"'); } @@ -908,8 +1026,7 @@ if ($id > 0 || !empty($ref)) { print "
    \n"; if (empty($conf->global->SUPPLIER_ORDER_DISABLE_STOCK_DISPATCH_WHEN_TOTAL_REACHED)) print '
    '.$langs->trans("NoPredefinedProductToDispatch").'
    '; // No predefined line at all - else - print '
    '.$langs->trans("NoMorePredefinedProductToDispatch").'
    '; // No predefined line that remain to be dispatched. + else print '
    '.$langs->trans("NoMorePredefinedProductToDispatch").'
    '; // No predefined line that remain to be dispatched. } print '
    '; @@ -931,9 +1048,11 @@ if ($id > 0 || !empty($ref)) { $sql = "SELECT p.ref, p.label,"; $sql .= " e.rowid as warehouse_id, e.ref as entrepot,"; $sql .= " cfd.rowid as dispatchlineid, cfd.fk_product, cfd.qty, cfd.eatby, cfd.sellby, cfd.batch, cfd.comment, cfd.status, cfd.datec"; + $sql.=" ,cd.rowid, cd.subprice"; if ($conf->reception->enabled)$sql .= " ,cfd.fk_reception, r.date_delivery"; $sql .= " FROM ".MAIN_DB_PREFIX."product as p,"; $sql .= " ".MAIN_DB_PREFIX."commande_fournisseur_dispatch as cfd"; + $sql .= " LEFT JOIN " . MAIN_DB_PREFIX . "commande_fournisseurdet as cd ON cd.rowid = cfd.fk_commandefourndet"; $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."entrepot as e ON cfd.fk_entrepot = e.rowid"; if ($conf->reception->enabled)$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."reception as r ON cfd.fk_reception = r.rowid"; $sql .= " WHERE cfd.fk_commande = ".$object->id; @@ -965,26 +1084,33 @@ if ($id > 0 || !empty($ref)) { print ''.$langs->trans("SellByDate").''; } print ''.$langs->trans("QtyDispatched").''; - print ''; print ''.$langs->trans("Warehouse").''; print ''.$langs->trans("Comment").''; // Status if (!empty($conf->global->SUPPLIER_ORDER_USE_DISPATCH_STATUS) && empty($reception->rowid)) { print ''.$langs->trans("Status").''; - } - elseif (!empty($conf->reception->enabled)) { + } elseif (!empty($conf->reception->enabled)) { print ''; } - print ''; + print ''; print "\n"; while ($i < $num) { $objp = $db->fetch_object($resql); - print ""; + if ($action == 'editline' && $lineid == $objp->dispatchlineid) + { + print '
    + + + + '; + } + + print ''; if (!empty($conf->reception->enabled)) { print ''; @@ -1011,14 +1137,35 @@ if ($id > 0 || !empty($ref)) { } // Qty - print ''.$objp->qty.''; - print ' '; + print ''; + if ($action == 'editline' && $lineid == $objp->dispatchlineid) + { + print ''; + } + else { + print $objp->qty; + } + print ''; + print ''; // Warehouse print ''; - $warehouse_static->id = $objp->warehouse_id; - $warehouse_static->libelle = $objp->entrepot; - print $warehouse_static->getNomUrl(1); + if ($action == 'editline' && $lineid == $objp->dispatchlineid) + { + if (count($listwarehouses) > 1) { + print $formproduct->selectWarehouses(GETPOST("fk_entrepot")?GETPOST("fk_entrepot"):($objp->warehouse_id?$objp->warehouse_id:''), "fk_entrepot", '', 1, 0, $objp->fk_product, '', 1, 1, null, 'csswarehouse'); + } elseif (count($listwarehouses) == 1) { + print $formproduct->selectWarehouses(GETPOST("fk_entrepot")?GETPOST("fk_entrepot"):($objp->warehouse_id?$objp->warehouse_id:''), "fk_entrepot", '', 0, 0, $objp->fk_product, '', 1, 1, null, 'csswarehouse'); + } else { + $langs->load("errors"); + print $langs->trans("ErrorNoWarehouseDefined"); + } + } + else { + $warehouse_static->id = $objp->warehouse_id; + $warehouse_static->libelle = $objp->entrepot; + print $warehouse_static->getNomUrl(1); + } print ''; // Comment @@ -1069,9 +1216,32 @@ if ($id > 0 || !empty($ref)) { print ''; } - print ''; + if ($action != 'editline' ||  && $lineid != $objp->dispatchlineid) + { + print ''; + print 'dispatchlineid .'#line_'. $objp->dispatchlineid . '">'; + print img_edit(); + print ''; + print ''; + + print ''; + print 'dispatchlineid . '#dispatch_received_products">'; + print img_delete(); + print ''; + print ''; + } + else { + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + } + print "\n"; + if ($action == 'editline' && $lineid == $objp->dispatchlineid) print '
    '; $i++; } diff --git a/htdocs/fourn/commande/document.php b/htdocs/fourn/commande/document.php index 2292f335c40..56516b440f7 100644 --- a/htdocs/fourn/commande/document.php +++ b/htdocs/fourn/commande/document.php @@ -51,11 +51,12 @@ if ($user->socid) $socid = $user->socid; $result = restrictedArea($user, 'fournisseur', $id, 'commande_fournisseur', 'commande'); // Get parameters +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; if (!$sortorder) $sortorder = "ASC"; @@ -176,9 +177,7 @@ if ($object->id > 0) $permtoedit = $user->rights->fournisseur->commande->creer; $param = '&id='.$object->id; include_once DOL_DOCUMENT_ROOT.'/core/tpl/document_actions_post_headers.tpl.php'; -} -else -{ +} else { header('Location: index.php'); exit; } diff --git a/htdocs/fourn/commande/index.php b/htdocs/fourn/commande/index.php index c12d74e7045..6891e3bdf92 100644 --- a/htdocs/fourn/commande/index.php +++ b/htdocs/fourn/commande/index.php @@ -54,7 +54,7 @@ $commandestatic = new CommandeFournisseur($db); $userstatic = new User($db); $formfile = new FormFile($db); -print load_fiche_titre($langs->trans("SuppliersOrdersArea"), '', 'commercial'); +print load_fiche_titre($langs->trans("SuppliersOrdersArea"), '', 'supplier_order'); print '
    '; @@ -160,9 +160,7 @@ if ($resql) print ''.$langs->trans("Total").''.$total.''; print "

    "; -} -else -{ +} else { dol_print_error($db); } @@ -226,9 +224,7 @@ if (!empty($conf->multicompany->enabled) && !empty($conf->global->MULTICOMPANY_T $sql .= " WHERE ((ug.fk_user = u.rowid"; $sql .= " AND ug.entity IN (".getEntity('usergroup')."))"; $sql .= " OR u.entity = 0)"; // Show always superadmin -} -else -{ +} else { $sql .= " WHERE (u.entity IN (".getEntity('user')."))"; } $sql .= " AND u.fk_soc IS NULL"; // An external user can not approved @@ -269,9 +265,7 @@ if ($resql) } print "

    "; $db->free($resql); -} -else -{ +} else { dol_print_error($db); } @@ -344,8 +338,7 @@ if ($resql) } } print "

    "; -} -else dol_print_error($db); +} else dol_print_error($db); /* diff --git a/htdocs/fourn/commande/info.php b/htdocs/fourn/commande/info.php index 3605c2b5751..195e87e5b5d 100644 --- a/htdocs/fourn/commande/info.php +++ b/htdocs/fourn/commande/info.php @@ -40,13 +40,22 @@ $id = GETPOST('id', 'int'); $ref = GETPOST('ref', 'alpha'); $action = GETPOST('action', 'alpha'); +$limit = GETPOST('limit', 'int') ?GETPOST('limit', 'int') : $conf->liste_limit; +$sortfield = GETPOST("sortfield", 'alpha'); +$sortorder = GETPOST("sortorder", 'alpha'); +$page = GETPOST("page", 'int'); +if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 +$offset = $limit * $page; +$pageprev = $page - 1; +$pagenext = $page + 1; +if (!$sortfield) $sortfield = 'a.datep,a.id'; +if (!$sortorder) $sortorder = 'DESC,DESC'; + if (GETPOST('actioncode', 'array')) { $actioncode = GETPOST('actioncode', 'array', 3); if (!count($actioncode)) $actioncode = '0'; -} -else -{ +} else { $actioncode = GETPOST("actioncode", "alpha", 3) ?GETPOST("actioncode", "alpha", 3) : (GETPOST("actioncode") == '0' ? '0' : (empty($conf->global->AGENDA_DEFAULT_FILTER_TYPE_FOR_OBJECTS) ? '' : $conf->global->AGENDA_DEFAULT_FILTER_TYPE_FOR_OBJECTS)); } $search_agenda_label = GETPOST('search_agenda_label'); @@ -185,9 +194,7 @@ if (!empty($conf->agenda->enabled)) if (!empty($user->rights->agenda->myactions->create) || !empty($user->rights->agenda->allactions->create)) { print ''.$langs->trans("AddAction").''; - } - else - { + } else { print ''.$langs->trans("AddAction").''; } } @@ -212,12 +219,12 @@ if (!empty($object->id)) //show_actions_todo($conf,$langs,$db,$object,null,0,$actioncode); // List of done actions - //show_actions_done($conf,$langs,$db,$object,null,0,$actioncode); + //show_actions_done($conf,$langs,$db,$object,null,0,$actioncode, '', $filters, $sortfield, $sortorder); // List of all actions $filters = array(); $filters['search_agenda_label'] = $search_agenda_label; - show_actions_done($conf, $langs, $db, $object, null, 0, $actioncode, '', $filters); + show_actions_done($conf, $langs, $db, $object, null, 0, $actioncode, '', $filters, $sortfield, $sortorder); } // End of page diff --git a/htdocs/fourn/commande/list.php b/htdocs/fourn/commande/list.php index f1f64b996a5..8ffc6be6c05 100644 --- a/htdocs/fourn/commande/list.php +++ b/htdocs/fourn/commande/list.php @@ -335,16 +335,12 @@ if (empty($reshook)) { $result = $object->insert_discount($discountid); //$result=$discount->link_to_invoice($lineid,$id); - } - else - { + } else { setEventMessages($discount->error, $discount->errors, 'errors'); $error++; break; } - } - else - { + } else { // Positive line $product_type = ($lines[$i]->product_type ? $lines[$i]->product_type : 0); // Date start @@ -391,9 +387,7 @@ if (empty($reshook)) if ($result > 0) { $lineid = $result; - } - else - { + } else { $lineid = 0; $error++; break; @@ -447,9 +441,7 @@ if (empty($reshook)) { $db->commit(); setEventMessages($langs->trans('BillCreated', $nb_bills_created), null, 'mesgs'); - } - else - { + } else { $db->rollback(); $action = 'create'; $_GET["origin"] = $_POST["origin"]; @@ -596,9 +588,7 @@ if ($resql) $soc = new Societe($db); $soc->fetch($socid); $title = $langs->trans('ListOfSupplierOrders').' - '.$soc->name; - } - else - { + } else { $title = $langs->trans('ListOfSupplierOrders'); } @@ -675,7 +665,7 @@ if ($resql) print ''; print ''; - print_barre_liste($title, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'commercial', 0, $newcardbutton, '', $limit, 0, 0, 1); + print_barre_liste($title, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'supplier_order', 0, $newcardbutton, '', $limit, 0, 0, 1); $topicmail = "SendOrderRef"; $modelmail = "order_supplier_send"; @@ -1261,9 +1251,7 @@ if ($resql) $delallowed = $user->rights->fournisseur->commande->creer; print $formfile->showdocuments('massfilesarea_supplier_order', '', $filedir, $urlsource, 0, $delallowed, '', 1, 1, 0, 48, 1, $param, $title, '', '', '', null, $hidegeneratedfilelistifempty); -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/fourn/commande/note.php b/htdocs/fourn/commande/note.php index 87effcd5863..53efd68faa6 100644 --- a/htdocs/fourn/commande/note.php +++ b/htdocs/fourn/commande/note.php @@ -145,9 +145,7 @@ if ($id > 0 || !empty($ref)) print '
    '; dol_fiche_end(); - } - else - { + } else { /* Order not found */ $langs->load("errors"); print $langs->trans("ErrorRecordNotFound"); diff --git a/htdocs/fourn/commande/orderstoinvoice.php b/htdocs/fourn/commande/orderstoinvoice.php index 909dec03796..d7f8ef489ab 100644 --- a/htdocs/fourn/commande/orderstoinvoice.php +++ b/htdocs/fourn/commande/orderstoinvoice.php @@ -83,9 +83,7 @@ if ($action == 'create') if (!GETPOST('createbill')) { $action = ''; - } - else - { + } else { if (!is_array($selected)) { //$error++; @@ -448,9 +446,7 @@ if (($action != 'create' && $action != 'add') && !$error) { if (empty($conf->global->SUPPLIER_ORDER_TO_INVOICE_STATUS)) { $sql .= " AND c.fk_statut IN (".CommandeFournisseur::STATUS_RECEIVED_COMPLETELY.")"; // Must match filter in htdocs/fourn/card.php - } - else - { + } else { // CommandeFournisseur::STATUS_ORDERSENT.", ".CommandeFournisseur::STATUS_RECEIVED_PARTIALLY.", ".CommandeFournisseur::STATUS_RECEIVED_COMPLETELY $sql .= " AND c.fk_statut IN (".$db->escape($conf->global->SUPPLIER_ORDER_TO_INVOICE_STATUS).")"; } diff --git a/htdocs/fourn/contact.php b/htdocs/fourn/contact.php index 06e7f09edd7..edcccbc6a88 100644 --- a/htdocs/fourn/contact.php +++ b/htdocs/fourn/contact.php @@ -41,11 +41,12 @@ if ($user->socid > 0) $socid = $user->socid; } +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; if (!$sortorder) $sortorder = "ASC"; @@ -123,9 +124,7 @@ if ($result) } print ""; $db->free($result); -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/fourn/facture/card.php b/htdocs/fourn/facture/card.php index 828424b9f15..1e0e64fb695 100644 --- a/htdocs/fourn/facture/card.php +++ b/htdocs/fourn/facture/card.php @@ -162,17 +162,12 @@ if (empty($reshook)) { header("Location: ".$_SERVER['PHP_SELF'].'?id='.$result); exit; - } - else - { + } else { $langs->load("errors"); setEventMessages($objectutil->error, $objectutil->errors, 'errors'); $action = ''; } - } - - elseif ($action == 'confirm_valid' && $confirm == 'yes' && $usercanvalidate) - { + } elseif ($action == 'confirm_valid' && $confirm == 'yes' && $usercanvalidate) { $idwarehouse = GETPOST('idwarehouse'); $object->fetch($id); @@ -182,9 +177,7 @@ if (empty($reshook)) if (empty($conf->global->STOCK_SUPPORTS_SERVICES)) { $qualified_for_stock_change = $object->hasProductsOrServices(2); - } - else - { + } else { $qualified_for_stock_change = $object->hasProductsOrServices(1); } @@ -226,9 +219,7 @@ if (empty($reshook)) } } } - } - - elseif ($action == 'confirm_delete' && $confirm == 'yes') + } elseif ($action == 'confirm_delete' && $confirm == 'yes') { $object->fetch($id); $object->fetch_thirdparty(); @@ -242,9 +233,7 @@ if (empty($reshook)) { header('Location: list.php?restore_lastsearch_values=1'); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -274,9 +263,7 @@ if (empty($reshook)) header('Location: '.$_SERVER["PHP_SELF"].'?id='.$object->id); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); /* Fix bug 1485 : Reset action to avoid asking again confirmation on failure */ $action = ''; @@ -289,10 +276,7 @@ if (empty($reshook)) $discount = new DiscountAbsolute($db); $result = $discount->fetch(GETPOST("discountid")); $discount->unlink_invoice(); - } - - elseif ($action == 'confirm_paid' && $confirm == 'yes' && $usercancreate) - { + } elseif ($action == 'confirm_paid' && $confirm == 'yes' && $usercancreate) { $object->fetch($id); $result = $object->set_paid($user); if ($result < 0) @@ -308,9 +292,7 @@ if (empty($reshook)) if ($object->update($user) < 0) { setEventMessages($object->error, $object->errors, 'errors'); - } - else - { + } else { // Define output language $outputlangs = $langs; $newlang = ''; @@ -371,9 +353,7 @@ if (empty($reshook)) $object->label = GETPOST('label'); $result = $object->update($user); if ($result < 0) dol_print_error($db); - } - elseif ($action == 'setdatef' && $usercancreate) - { + } elseif ($action == 'setdatef' && $usercancreate) { $newdate = dol_mktime(0, 0, 0, $_POST['datefmonth'], $_POST['datefday'], $_POST['datefyear']); if ($newdate > (dol_now() + (empty($conf->global->INVOICE_MAX_OFFSET_IN_FUTURE) ? 0 : $conf->global->INVOICE_MAX_OFFSET_IN_FUTURE))) { @@ -396,9 +376,7 @@ if (empty($reshook)) $result = $object->update($user); if ($result < 0) dol_print_error($db, $object->error); - } - elseif ($action == 'setdate_lim_reglement' && $usercancreate) - { + } elseif ($action == 'setdate_lim_reglement' && $usercancreate) { $object->fetch($id); $object->date_echeance = dol_mktime(12, 0, 0, $_POST['date_lim_reglementmonth'], $_POST['date_lim_reglementday'], $_POST['date_lim_reglementyear']); if (!empty($object->date_echeance) && $object->date_echeance < $object->date) @@ -408,8 +386,7 @@ if (empty($reshook)) } $result = $object->update($user); if ($result < 0) dol_print_error($db, $object->error); - } - elseif ($action == "setabsolutediscount" && $usercancreate) + } elseif ($action == "setabsolutediscount" && $usercancreate) { // POST[remise_id] or POST[remise_id_for_payment] @@ -598,18 +575,14 @@ if (empty($reshook)) if ($result >= 0) { $db->commit(); - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); $db->rollback(); } } else { $db->commit(); } - } - else - { + } else { setEventMessages($discount->error, $discount->errors, 'errors'); $db->rollback(); } @@ -648,7 +621,7 @@ if (empty($reshook)) $ret = $extrafields->setOptionalsFromPost(null, $object); if ($ret < 0) $error++; - $datefacture = dol_mktime(12, 0, 0, $_POST['remonth'], $_POST['reday'], $_POST['reyear']); + $datefacture = dol_mktime(12, 0, 0, GETPOST('remonth', 'int'), GETPOST('reday', 'int'), GETPOST('reyear', 'int')); $datedue = dol_mktime(12, 0, 0, $_POST['echmonth'], $_POST['echday'], $_POST['echyear']); // Replacement invoice @@ -955,7 +928,7 @@ if (empty($reshook)) $product_type = ($lines[$i]->product_type ? $lines[$i]->product_type : 0); // Extrafields - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED) && method_exists($lines[$i], 'fetch_optionals')) { + if (method_exists($lines[$i], 'fetch_optionals')) { $lines[$i]->fetch_optionals(); } @@ -976,9 +949,7 @@ if (empty($reshook)) { $pu = 0; $pu_currency = $lines[$i]->multicurrency_subprice; - } - else - { + } else { $pu = $lines[$i]->subprice; $pu_currency = 0; } @@ -1018,18 +989,13 @@ if (empty($reshook)) // Now reload line $object->fetch_lines(); - } - else - { + } else { $error++; } - } - else - { + } else { $error++; } - } - elseif (!$error) + } elseif (!$error) { $id = $object->create($user); if ($id < 0) @@ -1048,9 +1014,7 @@ if (empty($reshook)) setEventMessages($object->error, $object->errors, 'errors'); $action = 'create'; $_GET['socid'] = $_POST['socid']; - } - else - { + } else { $db->commit(); if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) { @@ -1082,9 +1046,7 @@ if (empty($reshook)) { $up = price2num(GETPOST('price_ht')); $price_base_type = 'HT'; - } - else - { + } else { $up = price2num(GETPOST('price_ttc')); $price_base_type = 'TTC'; } @@ -1106,9 +1068,7 @@ if (empty($reshook)) if (trim($_POST['product_desc']) != trim($label)) $label = $_POST['product_desc']; $type = $prod->type; - } - else - { + } else { $label = $_POST['product_desc']; $type = $_POST["type"] ? $_POST["type"] : 0; } @@ -1158,16 +1118,11 @@ if (empty($reshook)) unset($_POST['date_endyear']); $db->commit(); - } - else - { + } else { $db->rollback(); setEventMessages($object->error, $object->errors, 'errors'); } - } - - elseif ($action == 'addline' && $usercancreate) - { + } elseif ($action == 'addline' && $usercancreate) { $db->begin(); $ret = $object->fetch($id); @@ -1193,9 +1148,7 @@ if (empty($reshook)) $idprod = 0; $price_ht = GETPOST('price_ht'); $tva_tx = (GETPOST('tva_tx') ? GETPOST('tva_tx') : 0); - } - else - { + } else { $idprod = GETPOST('idprod', 'int'); $price_ht = GETPOST('price_ht'); $tva_tx = ''; @@ -1278,14 +1231,11 @@ if (empty($reshook)) { $productsupplier->ref_supplier = ''; } - } - else - { + } else { $fksoctosearch = $object->thirdparty->id; $productsupplier->get_buyprice(0, -1, $idprod, 'none', $fksoctosearch); // We force qty to -1 to be sure to find if a supplier price exist } - } - elseif (GETPOST('idprodfournprice', 'alpha') > 0) + } elseif (GETPOST('idprodfournprice', 'alpha') > 0) { $qtytosearch = $qty; // Just to see if a price exists for the quantity. Not used to found vat. //$qtytosearch=-1; // We force qty to -1 to be sure to find if a supplier price exist @@ -1369,8 +1319,7 @@ if (empty($reshook)) $langs->load("errors"); setEventMessages($langs->trans("ErrorQtyTooLowForThisSupplier"), null, 'errors'); } - } - elseif (empty($error)) // $price_ht is already set + } elseif (empty($error)) // $price_ht is already set { $tva_npr = (preg_match('/\*/', $tva_tx) ? 1 : 0); $tva_tx = str_replace('*', '', $tva_tx); @@ -1390,9 +1339,7 @@ if (empty($reshook)) if ($price_ht !== '') { $pu_ht = price2num($price_ht, 'MU'); // $pu_ht must be rounded according to settings - } - else - { + } else { $pu_ttc = price2num(GETPOST('price_ttc'), 'MU'); $pu_ht = price2num($pu_ttc / (1 + ($tva_tx / 100)), 'MU'); // $pu_ht must be rounded according to settings } @@ -1457,18 +1404,13 @@ if (empty($reshook)) unset($_POST['date_endday']); unset($_POST['date_endmonth']); unset($_POST['date_endyear']); - } - else - { + } else { $db->rollback(); setEventMessages($object->error, $object->errors, 'errors'); } $action = ''; - } - - elseif ($action == 'classin' && $usercancreate) - { + } elseif ($action == 'classin' && $usercancreate) { $object->fetch($id); $result = $object->setProject($projectid); } @@ -1498,9 +1440,7 @@ if (empty($reshook)) if (empty($conf->global->STOCK_SUPPORTS_SERVICES)) { $qualified_for_stock_change = $object->hasProductsOrServices(2); - } - else - { + } else { $qualified_for_stock_change = $object->hasProductsOrServices(1); } @@ -1553,9 +1493,7 @@ if (empty($reshook)) { header('Location: '.$_SERVER["PHP_SELF"].'?id='.$id); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -1601,7 +1539,7 @@ if (empty($reshook)) if (!$error) { // Actions on extra fields - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + if (!$error) { $result = $object->insertExtraFields('BILL_SUPPLIER_MODIFY'); if ($result < 0) @@ -1631,16 +1569,12 @@ if (empty($reshook)) { header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else - { + } else { if ($object->error == 'DB_ERROR_RECORD_ALREADY_EXISTS') { $langs->load("errors"); setEventMessages($langs->trans("ErrorThisContactIsAlreadyDefinedAsThisType"), null, 'errors'); - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -1652,9 +1586,7 @@ if (empty($reshook)) if ($object->fetch($id)) { $result = $object->swapContactStatus(GETPOST('ligne')); - } - else - { + } else { dol_print_error($db); } } @@ -1669,8 +1601,7 @@ if (empty($reshook)) { header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else { + } else { dol_print_error($db); } } @@ -1699,7 +1630,7 @@ if ($action == 'create') { $facturestatic = new FactureFournisseur($db); - print load_fiche_titre($langs->trans('NewBill')); + print load_fiche_titre($langs->trans('NewBill'), '', 'supplier_invoice'); dol_htmloutput_events(); @@ -1762,7 +1693,7 @@ if ($action == 'create') if (!empty($conf->global->MULTICURRENCY_USE_ORIGIN_TX) && !empty($objectsrc->multicurrency_tx)) $currency_tx = $objectsrc->multicurrency_tx; } - $datetmp = dol_mktime(12, 0, 0, $_POST['remonth'], $_POST['reday'], $_POST['reyear']); + $datetmp = dol_mktime(12, 0, 0, GETPOST('remonth', 'int'), GETPOST('reday', 'int'), GETPOST('reyear', 'int')); $dateinvoice = ($datetmp == '' ? (empty($conf->global->MAIN_AUTOFILL_DATE) ?-1 : '') : $datetmp); $datetmp = dol_mktime(12, 0, 0, $_POST['echmonth'], $_POST['echday'], $_POST['echyear']); $datedue = ($datetmp == '' ?-1 : $datetmp); @@ -1770,13 +1701,11 @@ if ($action == 'create') // Replicate extrafields $objectsrc->fetch_optionals(); $object->array_options = $objectsrc->array_options; - } - else - { + } else { $cond_reglement_id = $societe->cond_reglement_supplier_id; $mode_reglement_id = $societe->mode_reglement_supplier_id; $fk_account = $societe->fk_account; - $datetmp = dol_mktime(12, 0, 0, $_POST['remonth'], $_POST['reday'], $_POST['reyear']); + $datetmp = dol_mktime(12, 0, 0, GETPOST('remonth', 'int'), GETPOST('reday', 'int'), GETPOST('reyear', 'int')); $dateinvoice = ($datetmp == '' ? (empty($conf->global->MAIN_AUTOFILL_DATE) ?-1 : '') : $datetmp); $datetmp = dol_mktime(12, 0, 0, $_POST['echmonth'], $_POST['echday'], $_POST['echyear']); $datedue = ($datetmp == '' ?-1 : $datetmp); @@ -1784,6 +1713,16 @@ if ($action == 'create') if (!empty($conf->multicurrency->enabled) && !empty($soc->multicurrency_code)) $currency_code = $soc->multicurrency_code; } + // when payment condition is empty (means not override by payment condition form a other object, like third-party), try to use default value + if (empty($cond_reglement_id)) { + $cond_reglement_id = GETPOST("cond_reglement_id"); + } + + // when payment mode is empty (means not override by payment condition form a other object, like third-party), try to use default value + if (empty($mode_reglement_id)) { + $mode_reglement_id = GETPOST("mode_reglement_id"); + } + print '
    '; print ''; print ''; @@ -1808,9 +1747,7 @@ if ($action == 'create') $absolute_discount = $societe->getAvailableDiscounts('', '', 0, 1); print $societe->getNomUrl(1); print ''; - } - else - { + } else { print $form->select_company($societe->id, 'socid', 's.fournisseur=1', 'SelectThirdParty', 0, 0, null, 0, 'minwidth300'); // reload page to retrieve supplier informations if (!empty($conf->global->RELOAD_PAGE_ON_SUPPLIER_CHANGE)) @@ -2020,9 +1957,7 @@ if ($action == 'create') print '
    '; } - } - else - { + } else { print '
    '; $tmp = ' '; $text = $tmp.$langs->trans("InvoiceAvoir").' '; @@ -2225,9 +2160,7 @@ if ($action == 'create') print ''; } -} -else -{ +} else { if ($id > 0 || !empty($ref)) { /* *************************************************************************** */ @@ -2320,9 +2253,7 @@ else { $savdate = $object->date; $numref = $object->getNextNumRef($societe); - } - else - { + } else { $numref = $object->ref; } @@ -2340,9 +2271,7 @@ else if (empty($conf->global->STOCK_SUPPORTS_SERVICES)) { $qualified_for_stock_change = $object->hasProductsOrServices(2); - } - else - { + } else { $qualified_for_stock_change = $object->hasProductsOrServices(1); } @@ -2377,9 +2306,7 @@ else if (empty($conf->global->STOCK_SUPPORTS_SERVICES)) { $qualified_for_stock_change = $object->hasProductsOrServices(2); - } - else - { + } else { $qualified_for_stock_change = $object->hasProductsOrServices(1); } if (!empty($conf->stock->enabled) && !empty($conf->global->STOCK_CALCULATE_ON_SUPPLIER_BILL) && $qualified_for_stock_change) @@ -2586,9 +2513,7 @@ else if ($action == 'editconditions') { $form->form_conditions_reglement($_SERVER['PHP_SELF'].'?id='.$object->id, $object->cond_reglement_id, 'cond_reglement_id'); - } - else - { + } else { $form->form_conditions_reglement($_SERVER['PHP_SELF'].'?id='.$object->id, $object->cond_reglement_id, 'none'); } print ""; @@ -2608,9 +2533,7 @@ else if ($action == 'editmode') { $form->form_modes_reglement($_SERVER['PHP_SELF'].'?id='.$object->id, $object->mode_reglement_id, 'mode_reglement_id', 'DBIT', 1, 1); - } - else - { + } else { $form->form_modes_reglement($_SERVER['PHP_SELF'].'?id='.$object->id, $object->mode_reglement_id, 'none'); } print ''; @@ -2696,9 +2619,7 @@ else if ($action != 'editincoterm') { print $form->textwithpicto($object->display_incoterms(), $object->label_incoterms, 1); - } - else - { + } else { print $form->select_incoterms((!empty($object->fk_incoterms) ? $object->fk_incoterms : ''), (!empty($object->location_incoterms) ? $object->location_incoterms : ''), $_SERVER['PHP_SELF'].'?id='.$object->id); } print ''; @@ -2741,7 +2662,7 @@ else if (GETPOST('calculationrule')) $calculationrule = GETPOST('calculationrule', 'alpha'); else $calculationrule = (empty($conf->global->MAIN_ROUNDOFTOTAL_NOT_TOTALOFROUND) ? 'totalofround' : 'roundoftotal'); if ($calculationrule == 'totalofround') $calculationrulenum = 1; - else $calculationrulenum = 2; + else $calculationrulenum = 2; // Show link for "recalculate" if ($object->getVentilExportCompta() == 0) { $s = $langs->trans("ReCalculate").' '; @@ -2870,9 +2791,7 @@ else $totalpaye += $objp->amount; $i++; } - } - else - { + } else { print ''.$langs->trans("None").''; } @@ -2890,9 +2809,7 @@ else */ $db->free($result); - } - else - { + } else { dol_print_error($db); } @@ -2902,8 +2819,7 @@ else print ''; if ($object->type != FactureFournisseur::TYPE_DEPOSIT) print $langs->trans('AlreadyPaidNoCreditNotesNoDeposits'); - else - print $langs->trans('AlreadyPaid'); + else print $langs->trans('AlreadyPaid'); print ' : 0) ? ' class="amountalreadypaid"' : '').'>'.price($totalpaye).' '; //$resteapayer = $object->total_ttc - $totalpaye; @@ -2992,13 +2908,11 @@ else print ''; if ($resteapayeraffiche >= 0) print $langs->trans('RemainderToPay'); - else - print $langs->trans('ExcessPaid'); + else print $langs->trans('ExcessPaid'); print ' :'; print ''.price($resteapayeraffiche).''; print ' '; - } - else // Credit note + } else // Credit note { $cssforamountpaymentcomplete = 'amountpaymentneutral'; @@ -3014,8 +2928,7 @@ else print ''; if ($resteapayeraffiche <= 0) print $langs->trans('RemainderToPayBack'); - else - print $langs->trans('ExcessPaid'); + else print $langs->trans('ExcessPaid'); print ' :'; print ''.price($sign * $resteapayeraffiche).''; print ' '; @@ -3122,9 +3035,7 @@ else if ($ventilExportCompta == 0) { print ''; - } - else - { + } else { print '
    '.$langs->trans('Modify').'
    '; } } @@ -3140,9 +3051,7 @@ else if (!$facidnext && $object->close_code != 'replaced' && $usercancreate) // Not replaced by another invoice { print ''; - } - else - { + } else { if ($usercancreate) { print '
    '.$langs->trans('ReOpen').'
    '; } elseif (empty($conf->global->MAIN_BUTTON_HIDE_UNAUTHORIZED)) { @@ -3158,8 +3067,7 @@ else if ($usercansend) { print ''; - } - else print '
    '.$langs->trans('SendMail').'
    '; + } else print '
    '.$langs->trans('SendMail').'
    '; } } @@ -3186,9 +3094,7 @@ else if ($resteapayer == 0) { print '
    '.$langs->trans('DoPaymentBack').'
    '; - } - else - { + } else { print ''; } } @@ -3220,9 +3126,7 @@ else { print ''; - } - else - { + } else { print ''; } @@ -3257,22 +3161,16 @@ else //var_dump($isErasable); if ($isErasable == -4) { print ''; - } - elseif ($isErasable == -3) { // Should never happen with supplier invoice + } elseif ($isErasable == -3) { // Should never happen with supplier invoice print ''; - } - elseif ($isErasable == -2) { // Should never happen with supplier invoice + } elseif ($isErasable == -2) { // Should never happen with supplier invoice print ''; - } - elseif ($isErasable == -1) { + } elseif ($isErasable == -1) { print ''; - } - elseif ($isErasable <= 0) // Any other cases + } elseif ($isErasable <= 0) // Any other cases { print ''; - } - else - { + } else { print ''; } } diff --git a/htdocs/fourn/facture/contact.php b/htdocs/fourn/facture/contact.php index ebe3573bd99..5cd1043de8f 100644 --- a/htdocs/fourn/facture/contact.php +++ b/htdocs/fourn/facture/contact.php @@ -65,16 +65,12 @@ if ($action == 'addcontact' && $user->rights->fournisseur->facture->creer) { header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else - { + } else { if ($object->error == 'DB_ERROR_RECORD_ALREADY_EXISTS') { $langs->load("errors"); setEventMessages($langs->trans("ErrorThisContactIsAlreadyDefinedAsThisType"), null, 'errors'); - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -86,9 +82,7 @@ elseif ($action == 'swapstatut' && $user->rights->fournisseur->facture->creer) if ($object->fetch($id)) { $result = $object->swapContactStatus(GETPOST('ligne')); - } - else - { + } else { dol_print_error($db); } } @@ -103,8 +97,7 @@ elseif ($action == 'deletecontact' && $user->rights->fournisseur->facture->creer { header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else { + } else { dol_print_error($db); } } @@ -267,9 +260,7 @@ if ($id > 0 || !empty($ref)) // Contacts lines include DOL_DOCUMENT_ROOT.'/core/tpl/contacts.tpl.php'; - } - else - { + } else { print "ErrorRecordNotFound"; } } diff --git a/htdocs/fourn/facture/document.php b/htdocs/fourn/facture/document.php index 287a85bc7cc..3b06f1276d6 100644 --- a/htdocs/fourn/facture/document.php +++ b/htdocs/fourn/facture/document.php @@ -50,11 +50,12 @@ if ($user->socid) $socid = $user->socid; $result = restrictedArea($user, 'fournisseur', $id, 'facture_fourn', 'facture'); // Get parameters +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; if (!$sortorder) $sortorder = "ASC"; @@ -252,9 +253,7 @@ if ($object->id > 0) $permtoedit = $user->rights->fournisseur->facture->creer; $param = '&facid='.$object->id; include_once DOL_DOCUMENT_ROOT.'/core/tpl/document_actions_post_headers.tpl.php'; -} -else -{ +} else { print $langs->trans('ErrorUnknown'); } diff --git a/htdocs/fourn/facture/impayees.php b/htdocs/fourn/facture/impayees.php index 4e5ed4dbae2..b37de34301d 100644 --- a/htdocs/fourn/facture/impayees.php +++ b/htdocs/fourn/facture/impayees.php @@ -54,9 +54,10 @@ $search_company = GETPOST('search_company', 'alpha'); $search_amount_no_tax = GETPOST('search_amount_no_tax', 'alpha'); $search_amount_all_tax = GETPOST('search_amount_all_tax', 'alpha'); +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; if (!$sortfield) $sortfield = "f.date_lim_reglement"; @@ -289,9 +290,7 @@ if ($user->rights->fournisseur->facture->lire) print ''; $db->free($resql); - } - else - { + } else { dol_print_error($db); } } diff --git a/htdocs/fourn/facture/list.php b/htdocs/fourn/facture/list.php index 1c636cf116d..1be897fa411 100644 --- a/htdocs/fourn/facture/list.php +++ b/htdocs/fourn/facture/list.php @@ -414,9 +414,7 @@ if (!$search_all) $sql .= ($extrafields->attributes[$object->table_element]['type'][$key] != 'separate' ? ",ef.".$key : ''); } } -} -else -{ +} else { $sql .= natural_search(array_keys($fieldstosearchall), $search_all); } @@ -525,7 +523,7 @@ if ($resql) print ''; print ''; - print_barre_liste($langs->trans("BillsSuppliers").($socid ? ' '.$soc->name : ''), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'invoicing', 0, $newcardbutton, '', $limit, 0, 0, 1); + print_barre_liste($langs->trans("BillsSuppliers").($socid ? ' '.$soc->name : ''), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'supplier_invoice', 0, $newcardbutton, '', $limit, 0, 0, 1); $topicmail = "SendBillRef"; $modelmail = "invoice_supplier_send"; @@ -955,6 +953,9 @@ if ($resql) $multicurrency_remaintopay = price2num($facturestatic->multicurrency_total_ttc - $multicurrency_totalpay); $facturestatic->alreadypaid = ($paiement ? $paiement : 0); + $facturestatic->paye = $obj->paye; + $facturestatic->statut = $obj->fk_statut; + $facturestatic->type = $obj->type; //If invoice has been converted and the conversion has been used, we dont have remain to pay on invoice @@ -1226,7 +1227,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, 'totalarray'=>&$totalarray); $reshook = $hookmanager->executeHooks('printFieldListValue', $parameters); // Note that $action and $object may have been modified by hook print $hookmanager->resPrint; // Date creation @@ -1298,9 +1299,7 @@ if ($resql) $title = ''; print $formfile->showdocuments('massfilesarea_supplier_invoice', '', $filedir, $urlsource, 0, $delallowed, '', 1, 1, 0, 48, 1, $param, $title, '', '', '', null, $hidegeneratedfilelistifempty); -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/fourn/facture/paiement.php b/htdocs/fourn/facture/paiement.php index a907bcd6bb0..db5bc9acfb5 100644 --- a/htdocs/fourn/facture/paiement.php +++ b/htdocs/fourn/facture/paiement.php @@ -1,7 +1,7 @@ * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2004-2016 Laurent Destailleur + * Copyright (C) 2004-2020 Laurent Destailleur * Copyright (C) 2004 Christophe Combelles * Copyright (C) 2005 Marc Barilley / Ocebo * Copyright (C) 2005-2012 Regis Houssin @@ -168,8 +168,7 @@ if (empty($reshook)) } $formquestion[$i++] = array('type' => 'hidden', 'name' => $key, 'value' => $_POST[$key]); - } - elseif (substr($key, 0, 21) == 'multicurrency_amount_') + } elseif (substr($key, 0, 21) == 'multicurrency_amount_') { $cursorfacid = substr($key, 21); $multicurrency_amounts[$cursorfacid] = price2num(trim(GETPOST($key))); @@ -345,9 +344,7 @@ if (empty($reshook)) else $loc = DOL_URL_ROOT.'/fourn/paiement/card.php?id='.$paiement_id; header('Location: '.$loc); exit; - } - else - { + } else { $db->rollback(); } } @@ -497,9 +494,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie print ''.$langs->trans('Account').''; $form->select_comptes(empty($accountid) ? $obj->fk_account : $accountid, 'accountid', 0, '', 2); print ''; - } - else - { + } else { print ' '; } print ''.$langs->trans('Numero').''; @@ -531,9 +526,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie if ($object->type != FactureFournisseur::TYPE_CREDIT_NOTE) { $sql .= ' AND f.type IN (0,1,3,5)'; // Standard invoice, replacement, deposit, situation - } - else - { + } else { $sql .= ' AND f.type = 2'; // If paying back a credit note, we show all credit notes } // Group by because we have a total @@ -627,9 +620,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie { print ''; print dol_print_date($db->jdate($objp->df), 'day').''; - } - else - { + } else { print '!!!'; } @@ -645,9 +636,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie } print ''; - } - else - { + } else { print '--'; } @@ -700,9 +689,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie print img_picto("Auto fill", 'rightarrow', "class='AutoFillAmout' data-rowname='".$namef."' data-value='".($sign * $remaintopay)."'"); print ''; print ''; - } - else - { + } else { print ''; print ''; } @@ -725,9 +712,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie print img_picto("Auto fill", 'rightarrow', "class='AutoFillAmout' data-rowname='".$namef."' data-value='".($sign * $multicurrency_remaintopay)."'"); print ''; print ''; - } - else - { + } else { print ''; print ''; } @@ -767,9 +752,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie print "
    "; } $db->free($resql); - } - else - { + } else { dol_print_error($db); } } @@ -802,8 +785,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie print ''; } - } - else dol_print_error($db); + } else dol_print_error($db); } /* @@ -822,7 +804,7 @@ if (empty($action) || $action == 'list') if (!$sortorder) $sortorder = 'DESC'; if (!$sortfield) $sortfield = 'p.datep'; - $sql = 'SELECT p.rowid as pid, p.datep as dp, p.amount as pamount, p.num_paiement,'; + $sql = 'SELECT p.rowid as pid, p.ref, p.datep as dp, p.amount as pamount, p.num_paiement,'; $sql .= ' s.rowid as socid, s.nom as name,'; $sql .= ' c.code as paiement_type, c.libelle as paiement_libelle,'; $sql .= ' ba.rowid as bid, ba.label,'; @@ -889,8 +871,6 @@ if (empty($action) || $action == 'list') $massactionbutton = $form->selectMassAction('', $massaction == 'presend' ? array() : array('presend'=>$langs->trans("SendByMail"), 'builddoc'=>$langs->trans("PDFMerge"))); - print_barre_liste($langs->trans('SupplierPayments'), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, '', $num, $nbtotalofrecords, 'invoicing', 0, '', '', $limit); - print '
    '; if ($optioncss != '') print ''; print ''; @@ -898,7 +878,8 @@ if (empty($action) || $action == 'list') print ''; print ''; print ''; - print ''; + + print_barre_liste($langs->trans('SupplierPayments'), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, '', $num, $nbtotalofrecords, 'supplier_invoice', 0, '', '', $limit, 0, 0, 1); $moreforfilter = ''; @@ -973,16 +954,24 @@ if (empty($action) || $action == 'list') print_liste_field_titre('', $_SERVER["PHP_SELF"], "", '', '', '', $sortfield, $sortorder, 'maxwidthsearch '); print "\n"; + $paymentfournstatic = new PaiementFourn($db); + $i = 0; $totalarray = array(); while ($i < min($num, $limit)) { $objp = $db->fetch_object($resql); + $paymentfournstatic->id = $objp->pid; + $paymentfournstatic->ref = $objp->ref; + $paymentfournstatic->datepaye = $objp->dp; + print ''; // Ref payment - print ''.img_object($langs->trans('ShowPayment'), 'payment').' '.$objp->pid.''; + print ''; + print $paymentfournstatic->getNomUrl(1); + print ''; if (!$i) $totalarray['nbfield']++; // Date @@ -1043,9 +1032,7 @@ if (empty($action) || $action == 'list') print ""; print "
    "; print "\n"; - } - else - { + } else { dol_print_error($db); } } diff --git a/htdocs/fourn/facture/rapport.php b/htdocs/fourn/facture/rapport.php index 3e9326a94bf..7873dd81b2d 100644 --- a/htdocs/fourn/facture/rapport.php +++ b/htdocs/fourn/facture/rapport.php @@ -1,5 +1,6 @@ + * Copyright (C) 2020 Maxime DEMAREST * * 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 @@ -24,6 +25,7 @@ require '../../main.inc.php'; require_once DOL_DOCUMENT_ROOT.'/core/modules/rapport/pdf_paiement_fourn.class.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php'; require_once DOL_DOCUMENT_ROOT.'/core/class/html.formother.class.php'; $langs->loadLangs(array('bills')); @@ -70,9 +72,7 @@ if ($action == 'builddoc') if ($rap->write_file($dir, $_POST["remonth"], $_POST["reyear"], $outputlangs) > 0) { $outputlangs->charset_output = $sav_charset_output; - } - else - { + } else { $outputlangs->charset_output = $sav_charset_output; dol_print_error($db, $obj->error); } @@ -86,12 +86,13 @@ if ($action == 'builddoc') */ $formother = new FormOther($db); +$formfile = new FormFile($db); $titre = ($year ? $langs->trans("PaymentsReportsForYear", $year) : $langs->trans("PaymentsReports")); llxHeader('', $titre); -print load_fiche_titre($titre, '', 'invoicing'); +print load_fiche_titre($titre, '', 'supplier_invoice'); // Formulaire de generation print '
    '; @@ -157,13 +158,14 @@ if ($year) { $tfile = $dir.'/'.$year.'/'.$file; $relativepath = $year.'/'.$file; - print ''.''.img_pdf().' '.$file.''; + print ''.img_pdf().' '.$file.''.$formfile->showPreview($file, 'facture_fournisseur', 'payments/'.$relativepath, 0).''; print ''.dol_print_size(dol_filesize($tfile)).''; print ''.dol_print_date(dol_filemtime($tfile), "dayhour").''; } } closedir($handle); } + print ''; } } diff --git a/htdocs/fourn/facture/tpl/linkedobjectblock.tpl.php b/htdocs/fourn/facture/tpl/linkedobjectblock.tpl.php index 1b85082616a..0826a4ab200 100644 --- a/htdocs/fourn/facture/tpl/linkedobjectblock.tpl.php +++ b/htdocs/fourn/facture/tpl/linkedobjectblock.tpl.php @@ -59,9 +59,7 @@ foreach ($linkedObjectBlock as $key => $objectlink) // If not abandonned $total = $total + $sign * $objectlink->total_ht; echo price($objectlink->total_ht); - } - else - { + } else { echo ''.price($objectlink->total_ht).''; } } ?> diff --git a/htdocs/fourn/index.php b/htdocs/fourn/index.php index 813d573d27e..5d82021bf3c 100644 --- a/htdocs/fourn/index.php +++ b/htdocs/fourn/index.php @@ -89,15 +89,13 @@ if ($resql) print ""; print "
    \n"; $db->free($resql); -} -else -{ +} else { dol_print_error($db); } // Draft orders -if (!empty($conf->fournisseur->enabled)) +if (!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || !empty($conf->supplier_order->enabled)) { $langs->load("orders"); @@ -154,7 +152,7 @@ if (!empty($conf->fournisseur->enabled)) } // Draft invoices -if (!empty($conf->fournisseur->enabled) && $user->rights->fournisseur->facture->lire) +if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || !empty($conf->supplier_invoice->enabled)) && $user->rights->fournisseur->facture->lire) { $sql = "SELECT ff.ref_supplier, ff.rowid, ff.total_ttc, ff.type"; $sql .= ", s.nom as name, s.rowid as socid"; @@ -210,9 +208,7 @@ if (!empty($conf->fournisseur->enabled) && $user->rights->fournisseur->facture-> print "
    \n"; } $db->free($resql); - } - else - { + } else { dol_print_error($db); } } @@ -264,9 +260,7 @@ if ($resql) print "\n"; $db->free($resql); -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/fourn/paiement/card.php b/htdocs/fourn/paiement/card.php index 09ed7acc1e4..a93d093022c 100644 --- a/htdocs/fourn/paiement/card.php +++ b/htdocs/fourn/paiement/card.php @@ -59,9 +59,7 @@ if ($action == 'setnote' && $user->rights->fournisseur->facture->creer) { $db->commit(); $action = ''; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); $db->rollback(); } @@ -78,9 +76,7 @@ if ($action == 'confirm_delete' && $confirm == 'yes' && $user->rights->fournisse $db->commit(); header('Location: '.DOL_URL_ROOT.'/fourn/facture/paiement.php'); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); $db->rollback(); } @@ -99,9 +95,7 @@ if ($action == 'confirm_valide' && $confirm == 'yes' && $db->commit(); header('Location: '.$_SERVER['PHP_SELF'].'?id='.$object->id); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); $db->rollback(); } @@ -114,9 +108,7 @@ if ($action == 'setnum_paiement' && !empty($_POST['num_paiement'])) if ($res === 0) { setEventMessages($langs->trans('PaymentNumberUpdateSucceeded'), null, 'mesgs'); - } - else - { + } else { setEventMessages($langs->trans('PaymentNumberUpdateFailed'), null, 'errors'); } } @@ -129,9 +121,7 @@ if ($action == 'setdatep' && !empty($_POST['datepday'])) if ($res === 0) { setEventMessages($langs->trans('PaymentDateUpdateSucceeded'), null, 'mesgs'); - } - else - { + } else { setEventMessages($langs->trans('PaymentDateUpdateFailed'), null, 'errors'); } } @@ -326,9 +316,7 @@ if ($result > 0) print "\n"; $db->free($resql); - } - else - { + } else { dol_print_error($db); } @@ -358,9 +346,7 @@ if ($result > 0) if ($allow_delete) { print ''.$langs->trans('Delete').''; - } - else - { + } else { print ''.$langs->trans('Delete').''; } } @@ -397,9 +383,7 @@ if ($result > 0) */ print ''; -} -else -{ +} else { $langs->load("errors"); print $langs->trans("ErrorRecordNotFound"); } diff --git a/htdocs/fourn/product/list.php b/htdocs/fourn/product/list.php index 5e83ae93923..91cd3636bbe 100644 --- a/htdocs/fourn/product/list.php +++ b/htdocs/fourn/product/list.php @@ -331,9 +331,7 @@ if ($resql) print ""; print '
    '; -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/fourn/recap-fourn.php b/htdocs/fourn/recap-fourn.php index 2cd52bfeb77..540ed1cbc18 100644 --- a/htdocs/fourn/recap-fourn.php +++ b/htdocs/fourn/recap-fourn.php @@ -65,7 +65,7 @@ if ($socid > 0) dol_banner_tab($societe, 'socid', '', ($user->socid ? 0 : 1), 'rowid', 'nom'); dol_fiche_end(); - if (!empty($conf->fournisseur->enabled) && $user->rights->facture->lire) + if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || !empty($conf->supplier_invoice->enabled)) && $user->rights->facture->lire) { // Invoice list print load_fiche_titre($langs->trans("SupplierPreview")); @@ -77,7 +77,7 @@ if ($socid > 0) $sql .= " u.login, u.rowid as userid"; $sql .= " FROM ".MAIN_DB_PREFIX."societe as s,".MAIN_DB_PREFIX."facture_fourn as f,".MAIN_DB_PREFIX."user as u"; $sql .= " WHERE f.fk_soc = s.rowid AND s.rowid = ".$societe->id; - $sql .= " AND f.entity IN (".getEntity("facture_fourn").")"; // Reconaissance de l'entité attribuée à cette facture pour Multicompany + $sql .= " AND f.entity IN (".getEntity("facture_fourn").")"; // Recognition of the entity attributed to this invoice for Multicompany $sql .= " AND f.fk_user_valid = u.rowid"; $sql .= " ORDER BY f.datef DESC"; @@ -173,23 +173,17 @@ if ($socid > 0) } $db->free($resqlp); - } - else - { + } else { dol_print_error($db); } } - } - else - { + } else { dol_print_error($db); } print ""; } -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/ftp/admin/ftpclient.php b/htdocs/ftp/admin/ftpclient.php index 39f5cc61bd2..49af7141d84 100644 --- a/htdocs/ftp/admin/ftpclient.php +++ b/htdocs/ftp/admin/ftpclient.php @@ -50,9 +50,7 @@ if ($result) $obj = $db->fetch_object($result); preg_match('/([0-9]+)$/i', $obj->name, $reg); if ($reg[1]) $lastftpentry = $reg[1]; -} -else -{ +} else { dol_print_error($db); } @@ -96,9 +94,7 @@ if ($action == 'add' || GETPOST('modify', 'alpha')) $db->commit(); header("Location: ".$_SERVER["PHP_SELF"]); exit; - } - else - { + } else { $db->rollback(); dol_print_error($db); } @@ -123,9 +119,7 @@ if (GETPOST('delete', 'alpha')) $db->commit(); header("Location: ".$_SERVER["PHP_SELF"]); exit; - } - else - { + } else { $db->rollback(); dol_print_error($db); } @@ -148,9 +142,7 @@ print '
    '; if (!function_exists('ftp_connect')) { print $langs->trans("FTPFeatureNotSupportedByYourPHP"); -} -else -{ +} else { // Formulaire ajout print '
    '; print ''; @@ -300,9 +292,7 @@ else $i++; } - } - else - { + } else { dol_print_error($db); } } diff --git a/htdocs/ftp/index.php b/htdocs/ftp/index.php index eedfa9c3c73..5310a0b3bf8 100644 --- a/htdocs/ftp/index.php +++ b/htdocs/ftp/index.php @@ -47,11 +47,12 @@ $confirm = GETPOST('confirm'); $upload_dir = $conf->ftp->dir_temp; $download_dir = $conf->ftp->dir_temp; +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; if (!$sortorder) $sortorder = "ASC"; @@ -101,8 +102,7 @@ if (GETPOST("sendit") && !empty($conf->global->MAIN_UPLOAD_DOC)) if (is_numeric($resupload) && $resupload > 0) { $result = $ecmdir->changeNbOfFiles('+'); - } - else { + } else { $langs->load("errors"); if ($resupload < 0) // Unknown error { @@ -110,15 +110,12 @@ if (GETPOST("sendit") && !empty($conf->global->MAIN_UPLOAD_DOC)) } elseif (preg_match('/ErrorFileIsInfectedWithAVirus/', $resupload)) { // Files infected by a virus setEventMessages($langs->trans("ErrorFileIsInfectedWithAVirus"), null, 'errors'); - } - else // Known error + } else // Known error { setEventMessages($langs->trans($resupload), null, 'errors'); } } - } - else - { + } else { // Echec transfert (fichier depassant la limite ?) $langs->load("errors"); setEventMessages($langs->trans("ErrorFailToCreateDir", $upload_dir), null, 'errors'); @@ -137,9 +134,7 @@ if ($action == 'add' && $user->rights->ftp->setup) { header("Location: ".$_SERVER["PHP_SELF"]); exit; - } - else - { + } else { setEventMessages($langs->trans("ErrorFailToCreateDir"), null, 'errors'); $action = "create"; } @@ -173,9 +168,7 @@ if ($action == 'confirm_deletefile' && $_REQUEST['confirm'] == 'yes') if ($result) { setEventMessages($langs->trans("FileWasRemoved", $file), null, 'mesgs'); - } - else - { + } else { dol_syslog("ftp/index.php ftp_delete", LOG_ERR); setEventMessages($langs->trans("FTPFailedToRemoveFile", $file), null, 'errors'); } @@ -183,9 +176,7 @@ if ($action == 'confirm_deletefile' && $_REQUEST['confirm'] == 'yes') //ftp_close($conn_id); Close later $action = ''; - } - else - { + } else { dol_print_error('', $mesg); } } @@ -223,9 +214,7 @@ if ($_POST["const"] && $_POST["delete"] && $_POST["delete"] == $langs->trans("De if ($result) { setEventMessages($langs->trans("FileWasRemoved", $file), null, 'mesgs'); - } - else - { + } else { dol_syslog("ftp/index.php ftp_delete", LOG_ERR); setEventMessages($langs->trans("FTPFailedToRemoveFile", $file), null, 'errors'); } @@ -235,9 +224,7 @@ if ($_POST["const"] && $_POST["delete"] && $_POST["delete"] == $langs->trans("De $action = ''; } } - } - else - { + } else { dol_print_error('', $mesg); } } @@ -266,18 +253,14 @@ if ($action == 'confirm_deletesection' && $confirm == 'yes') if ($result) { setEventMessages($langs->trans("DirWasRemoved", $file), null, 'mesgs'); - } - else - { + } else { setEventMessages($langs->trans("FTPFailedToRemoveDir", $file), null, 'errors'); } //ftp_close($conn_id); Close later $action = ''; - } - else - { + } else { dol_print_error('', $mesg); } } @@ -333,14 +316,10 @@ if ($action == 'download') ftp_close($conn_id); exit; - } - else - { + } else { setEventMessages($langs->transnoentitiesnoconv('FailedToGetFile', $remotefile), null, 'errors'); } - } - else - { + } else { dol_print_error('', $mesg); } @@ -397,9 +376,7 @@ print $langs->trans("FTPAreaDesc")."
    "; if (!function_exists('ftp_connect')) { print $langs->trans("FTPFeatureNotSupportedByYourPHP"); -} -else -{ +} else { if (!empty($ftp_server)) { // Confirm remove file @@ -496,9 +473,7 @@ else { $buff[$i] = "---------- - root root 1234 Aug 01 2000 ".$key; } - } - else - { + } else { $buff = ftp_rawlist($conn_id, $newsectioniso); $contents = ftp_nlist($conn_id, $newsectioniso); // Sometimes rawlist fails but never nlist //var_dump($contents); @@ -533,9 +508,7 @@ else { if (preg_match('/^d/', $vals[0])) $is_directory = 1; if (preg_match('/^l/', $vals[0])) $is_link = 1; - } - else - { + } else { // Remote file $filename = $file; //print "section=".$section.' file='.$file.'X'; @@ -585,15 +558,12 @@ else { if ($file != '..') print ''.img_delete().''; else print ' '; - } - elseif ($is_link) + } elseif ($is_link) { $newfile = $file; $newfile = preg_replace('/ ->.*/', '', $newfile); print ''.img_delete().''; - } - else - { + } else { print ''.img_picto('', 'file').''; print '   '; print ''; @@ -634,9 +604,7 @@ else print ''; print "
    "; - } - else - { + } else { $foundsetup = false; $MAXFTP = 20; $i = 1; @@ -654,9 +622,7 @@ else if (!$foundsetup) { print $langs->trans("SetupOfFTPClientModuleNotComplete"); - } - else - { + } else { print $langs->trans("ChooseAFTPEntryIntoMenu"); } } @@ -669,13 +635,10 @@ if ($conn_id) { if (!empty($conf->global->FTP_CONNECT_WITH_SFTP)) { - } - elseif (!empty($conf->global->FTP_CONNECT_WITH_SSL)) + } elseif (!empty($conf->global->FTP_CONNECT_WITH_SSL)) { ftp_close($conn_id); - } - else - { + } else { ftp_close($conn_id); } } @@ -717,14 +680,11 @@ function dol_ftp_connect($ftp_server, $ftp_port, $ftp_user, $ftp_password, $sect { dol_syslog('Try to connect with ssh2_ftp'); $tmp_conn_id = ssh2_connect($ftp_server, $ftp_port); - } - elseif (!empty($conf->global->FTP_CONNECT_WITH_SSL)) + } elseif (!empty($conf->global->FTP_CONNECT_WITH_SSL)) { dol_syslog('Try to connect with ftp_ssl_connect'); $conn_id = ftp_ssl_connect($ftp_server, $ftp_port, $connecttimeout); - } - else - { + } else { dol_syslog('Try to connect with ftp_connect'); $conn_id = ftp_connect($ftp_server, $ftp_port, $connecttimeout); } @@ -749,16 +709,12 @@ function dol_ftp_connect($ftp_server, $ftp_port, $ftp_user, $ftp_password, $sect $ok = 0; $error++; } - } - else - { + } else { $mesg = $langs->transnoentitiesnoconv("FailedToConnectToFTPServerWithCredentials"); $ok = 0; $error++; } - } - else - { + } else { if (ftp_login($conn_id, $ftp_user, $ftp_password)) { // Turn on passive mode transfers (must be after a successful login @@ -767,18 +723,14 @@ function dol_ftp_connect($ftp_server, $ftp_port, $ftp_user, $ftp_password, $sect // Change the dir $newsectioniso = utf8_decode($section); ftp_chdir($conn_id, $newsectioniso); - } - else - { + } else { $mesg = $langs->transnoentitiesnoconv("FailedToConnectToFTPServerWithCredentials"); $ok = 0; $error++; } } } - } - else - { + } else { dol_syslog('FailedToConnectToFTPServer '.$ftp_server.' '.$ftp_port, LOG_ERR); $mesg = $langs->transnoentitiesnoconv("FailedToConnectToFTPServer", $ftp_server, $ftp_port); $ok = 0; @@ -803,9 +755,7 @@ function ftp_isdir($connect_id, $dir) { ftp_cdup($connect_id); return 1; - } - else - { + } else { return 0; } } diff --git a/htdocs/holiday/card.php b/htdocs/holiday/card.php index d2701381bbd..6e639370aa9 100644 --- a/htdocs/holiday/card.php +++ b/htdocs/holiday/card.php @@ -228,9 +228,7 @@ if (empty($reshook)) header('Location: '.$_SERVER["PHP_SELF"].'?id='.$object->id); exit; - } - else - { + } else { $db->rollback(); } } @@ -252,9 +250,7 @@ if (empty($reshook)) { setEventMessages($object->error, $object->errors, 'warnings'); $action = 'editvalidator'; - } - else - { + } else { header('Location: '.$_SERVER["PHP_SELF"].'?id='.$object->id); exit; } @@ -339,21 +335,15 @@ if (empty($reshook)) { setEventMessages($object->error, $object->errors, 'warnings'); $action = 'edit'; - } - else - { + } else { header('Location: '.$_SERVER["PHP_SELF"].'?id='.$object->id); exit; } - } - else - { + } else { setEventMessages($langs->trans("NotEnoughPermissions"), null, 'errors'); $action = ''; } - } - else - { + } else { setEventMessages($langs->trans("ErrorBadStatus"), null, 'errors'); $action = ''; } @@ -375,9 +365,7 @@ if (empty($reshook)) if ($candelete) { $result = $object->delete($user); - } - else - { + } else { $error++; setEventMessages($langs->trans('ErrorCantDeleteCP'), null, 'errors'); $action = ''; @@ -389,9 +377,7 @@ if (empty($reshook)) $db->commit(); header('Location: list.php?restore_lastsearch_values=1'); exit; - } - else - { + } else { $db->rollback(); } } @@ -484,15 +470,11 @@ if (empty($reshook)) { setEventMessages($mail->error, $mail->errors, 'warnings'); $action = ''; - } - else - { + } else { header('Location: '.$_SERVER["PHP_SELF"].'?id='.$object->id); exit; } - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); $action = ''; } @@ -580,9 +562,7 @@ if (empty($reshook)) if (!$emailTo) { dol_syslog("User that request leave has no email, so we redirect directly to finished page without sending email"); - } - else - { + } else { // From $expediteur = new User($db); $expediteur->fetch($object->fk_validator); @@ -625,9 +605,7 @@ if (empty($reshook)) header('Location: '.$_SERVER["PHP_SELF"].'?id='.$object->id); exit; - } - else - { + } else { $db->rollback(); $action = ''; } @@ -668,9 +646,7 @@ if (empty($reshook)) if (!$emailTo) { dol_syslog("User that request leave has no email, so we redirect directly to finished page without sending email"); - } - else - { + } else { // From $expediteur = new User($db); $expediteur->fetch($object->fk_validator); @@ -706,9 +682,7 @@ if (empty($reshook)) $action = ''; } } - } - else - { + } else { $action = ''; } @@ -718,9 +692,7 @@ if (empty($reshook)) header('Location: '.$_SERVER["PHP_SELF"].'?id='.$object->id); exit; - } - else - { + } else { $db->rollback(); $action = ''; } @@ -755,9 +727,7 @@ if (empty($reshook)) header('Location: '.$_SERVER["PHP_SELF"].'?id='.$object->id); exit; - } - else - { + } else { $db->rollback(); } } @@ -805,9 +775,7 @@ if (empty($reshook)) if (!$error) { $db->commit(); - } - else - { + } else { $db->rollback(); } @@ -857,9 +825,7 @@ if (empty($reshook)) { setEventMessages($mail->error, $mail->errors, 'warnings'); $action = ''; - } - else - { + } else { header('Location: '.$_SERVER["PHP_SELF"].'?id='.$object->id); exit; } @@ -903,9 +869,7 @@ if ((empty($id) && empty($ref)) || $action == 'add' || $action == 'request' || $ if (($fuserid == $user->id && empty($user->rights->holiday->write)) || ($fuserid != $user->id && empty($user->rights->holiday->write_all))) { $errors[] = $langs->trans('CantCreateCP'); - } - else - { + } else { // Formulaire de demande de congés payés print load_fiche_titre($langs->trans('MenuAddCP'), '', 'title_hrm.png'); @@ -999,8 +963,7 @@ if ((empty($id) && empty($ref)) || $action == 'add' || $action == 'request' || $ print $out; dol_fiche_end(); - } - elseif (!is_numeric($conf->global->HOLIDAY_HIDE_BALANCE)) + } elseif (!is_numeric($conf->global->HOLIDAY_HIDE_BALANCE)) { print $langs->trans($conf->global->HOLIDAY_HIDE_BALANCE).'
    '; } @@ -1021,8 +984,7 @@ if ((empty($id) && empty($ref)) || $action == 'add' || $action == 'request' || $ { print $form->select_dolusers(($fuserid ? $fuserid : $user->id), 'fuserid', 0, '', 0, 'hierarchyme', '', '0,'.$conf->entity, 0, 0, $morefilter, 0, '', 'maxwidth300'); //print ''; - } - else print $form->select_dolusers(GETPOST('fuserid', 'int') ?GETPOST('fuserid', 'int') : $user->id, 'fuserid', 0, '', 0, '', '', '0,'.$conf->entity, 0, 0, $morefilter, 0, '', 'maxwidth300'); + } else print $form->select_dolusers(GETPOST('fuserid', 'int') ?GETPOST('fuserid', 'int') : $user->id, 'fuserid', 0, '', 0, '', '', '0,'.$conf->entity, 0, 0, $morefilter, 0, '', 'maxwidth300'); print ''; print ''; @@ -1089,8 +1051,7 @@ if ((empty($id) && empty($ref)) || $action == 'add' || $action == 'request' || $ $object = new Holiday($db); $include_users = $object->fetch_users_approver_holiday(); if (empty($include_users)) print img_warning().' '.$langs->trans("NobodyHasPermissionToValidateHolidays"); - else - { + else { $defaultselectuser = (empty($user->fk_user_holiday_validator) ? $user->fk_user : $user->fk_user_holiday_validator); // Will work only if supervisor has permission to approve so is inside include_users if (!empty($conf->global->HOLIDAY_DEFAULT_VALIDATOR)) $defaultselectuser = $conf->global->HOLIDAY_DEFAULT_VALIDATOR; // Can force default approver if (GETPOST('valideur', 'int') > 0) $defaultselectuser = GETPOST('valideur', 'int'); @@ -1126,18 +1087,14 @@ if ((empty($id) && empty($ref)) || $action == 'add' || $action == 'request' || $ print ''."\n"; } -} -else -{ +} else { if ($error) { print '
    '; print $error; print '

    '; print '
    '; - } - else - { + } else { // Affichage de la fiche d'une demande de congés payés if (($id > 0) || $ref) { @@ -1246,9 +1203,7 @@ else print ''.$langs->trans($listhalfday[$starthalfday]).''; print ''; print ''; - } - else - { + } else { print ''; print ''.$langs->trans('DateDebCP').' ('.$langs->trans("FirstDayOfHoliday").')'; print ''; @@ -1268,9 +1223,7 @@ else print ''.$langs->trans($listhalfday[$endhalfday]).''; print ''; print ''; - } - else - { + } else { print ''; print ''.$langs->trans('DateFinCP').' ('.$langs->trans("LastDayOfHoliday").')'; print ''; @@ -1291,7 +1244,9 @@ else if ($includesunday) $htmlhelp .= '
    '.$langs->trans("DayIsANonWorkingDay", $langs->trans("Sunday")); print $form->textwithpicto($langs->trans('NbUseDaysCP'), $htmlhelp); print ''; - print ''.num_open_day($object->date_debut_gmt, $object->date_fin_gmt, 0, 1, $object->halfday).''; + print ''; + print num_open_day($object->date_debut_gmt, $object->date_fin_gmt, 0, 1, $object->halfday); + print ''; print ''; if ($object->statut == Holiday::STATUS_REFUSED) @@ -1309,9 +1264,7 @@ else print ''.$langs->trans('DescCP').''; print ''.nl2br($object->description).''; print ''; - } - else - { + } else { print ''; print ''.$langs->trans('DescCP').''; print ''; @@ -1371,8 +1324,7 @@ else $include_users[] = $object->fk_validator; } if (empty($include_users)) print img_warning().' '.$langs->trans("NobodyHasPermissionToValidateHolidays"); - else - { + else { $arrayofvalidatorstoexclude = (($user->admin || ($user->id != $userRequest->id)) ? '' : array($user->id)); // Nobody if we are admin or if we are not the user of the leave. $s = $form->select_dolusers($object->fk_validator, "valideur", (($action == 'editvalidator') ? 0 : 1), $arrayofvalidatorstoexclude, 0, $include_users); print $form->textwithpicto($s, $langs->trans("AnyOtherInThisListCanValidate")); @@ -1495,9 +1447,7 @@ else { print ''.$langs->trans("Approve").''; print ''.$langs->trans("ActionRefuseCP").''; - } - else - { + } else { print ''.$langs->trans("Approve").''; print ''.$langs->trans("ActionRefuseCP").''; } diff --git a/htdocs/holiday/class/holiday.class.php b/htdocs/holiday/class/holiday.class.php index 4e306943b4b..ce4c74d786a 100644 --- a/htdocs/holiday/class/holiday.class.php +++ b/htdocs/holiday/class/holiday.class.php @@ -204,16 +204,12 @@ class Holiday extends CommonObject if ($numref != "") { return $numref; - } - else - { + } else { $this->error = $obj->error; //dol_print_error($this->db,get_class($this)."::getNextNumRef ".$obj->error); return ""; } - } - else - { + } else { print $langs->trans("Error")." ".$langs->trans("Error_HOLIDAY_ADDON_NotDefined"); return ""; } @@ -238,9 +234,7 @@ class Holiday extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -344,9 +338,7 @@ class Holiday extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return $this->id; } @@ -427,16 +419,13 @@ class Holiday extends CommonObject $this->fetch_optionals(); $result = 1; - } - else { + } else { $result = 0; } $this->db->free($resql); return $result; - } - else - { + } else { $this->error = "Error ".$this->db->lasterror(); return -1; } @@ -560,9 +549,7 @@ class Holiday extends CommonObject // Returns 1 with the filled array $this->holiday = $tab_result; return 1; - } - else - { + } else { // SQL Error $this->error = "Error ".$this->db->lasterror(); return -1; @@ -685,9 +672,7 @@ class Holiday extends CommonObject // Returns 1 and adds the array to the variable $this->holiday = $tab_result; return 1; - } - else - { + } else { // SQL Error $this->error = "Error ".$this->db->lasterror(); return -1; @@ -711,9 +696,7 @@ class Holiday extends CommonObject if (!$error && (preg_match('/^[\(]?PROV/i', $this->ref) || empty($this->ref) || $this->ref == $this->id)) { $num = $this->getNextNumRef(null); - } - else - { + } else { $num = $this->ref; } $this->newref = dol_sanitizeFileName($num); @@ -757,9 +740,7 @@ class Holiday extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } @@ -871,9 +852,7 @@ class Holiday extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } @@ -984,9 +963,7 @@ class Holiday extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } @@ -1037,9 +1014,7 @@ class Holiday extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } @@ -1082,8 +1057,7 @@ class Holiday extends CommonObject { return false; } - } - elseif ($halfday == -1) + } elseif ($halfday == -1) { // new start afternoon, new end afternoon if ($dateStart >= $infos_CP['date_debut'] && $dateStart <= $infos_CP['date_fin']) @@ -1095,8 +1069,7 @@ class Holiday extends CommonObject if ($dateStart < $dateEnd) return false; if ($dateEnd < $infos_CP['date_fin'] || in_array($infos_CP['halfday'], array(0, -1))) return false; } - } - elseif ($halfday == 1) + } elseif ($halfday == 1) { // new start morning, new end morning if ($dateStart >= $infos_CP['date_debut'] && $dateStart <= $infos_CP['date_fin']) @@ -1108,8 +1081,7 @@ class Holiday extends CommonObject { if ($dateEnd > $infos_CP['date_debut'] || in_array($infos_CP['halfday'], array(0, 1))) return false; } - } - elseif ($halfday == 2) + } elseif ($halfday == 2) { // new start afternoon, new end morning if ($dateStart >= $infos_CP['date_debut'] && $dateStart <= $infos_CP['date_fin']) @@ -1120,9 +1092,7 @@ class Holiday extends CommonObject { if ($dateEnd > $infos_CP['date_debut'] || in_array($infos_CP['halfday'], array(0, 1))) return false; } - } - else - { + } else { dol_print_error('', 'Bad value of parameter halfday when calling function verifDateHolidayCP'); } } @@ -1189,8 +1159,7 @@ class Holiday extends CommonObject break; } } - } - else dol_print_error($this->db); + } else dol_print_error($this->db); return array('morning'=>$isavailablemorning, 'afternoon'=>$isavailableafternoon); } @@ -1307,8 +1276,7 @@ class Holiday extends CommonObject for ($i = 1; $i < $nb; $i++) { if ($i == $selected) { $statut .= ''."\n"; - } - else { + } else { $statut .= ''."\n"; } } @@ -1370,20 +1338,14 @@ class Holiday extends CommonObject if ($result) { return $createifnotfound; - } - else - { + } else { $this->error = $this->db->lasterror(); return -2; } - } - else - { + } else { return ''; } - } - else - { + } else { return $obj->value; } } else { @@ -1463,18 +1425,14 @@ class Holiday extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } } return 0; - } - else - { + } else { // Mise à jour pour un utilisateur $nbHoliday = price2num($nbHoliday, 5); @@ -1497,9 +1455,7 @@ class Holiday extends CommonObject $error++; $this->errors[] = $this->db->lasterror(); } - } - else - { + } else { // Insert for user $sql = "INSERT INTO ".MAIN_DB_PREFIX."holiday_users(nb_holiday, fk_user, fk_type) VALUES ("; $sql .= $nbHoliday; @@ -1511,9 +1467,7 @@ class Holiday extends CommonObject $this->errors[] = $this->db->lasterror(); } } - } - else - { + } else { $this->errors[] = $this->db->lasterror(); $error++; } @@ -1521,9 +1475,7 @@ class Holiday extends CommonObject if (!$error) { return 1; - } - else - { + } else { return -1; } } @@ -1579,9 +1531,7 @@ class Holiday extends CommonObject $resql = $this->db->query($sql); if (!$resql) dol_print_error($this->db); } - } - else - { + } else { $sql = "INSERT INTO ".MAIN_DB_PREFIX."holiday_users"; $sql .= " (fk_user, nb_holiday)"; $sql .= " VALUES ('".$userid."','0')"; @@ -1629,9 +1579,7 @@ class Holiday extends CommonObject //return number_format($obj->nb_holiday,2); if ($obj) return $obj->nb_holiday; else return null; - } - else - { + } else { return null; } } @@ -1668,9 +1616,7 @@ class Holiday extends CommonObject $sql .= " WHERE ((ug.fk_user = u.rowid"; $sql .= " AND ug.entity IN (".getEntity('usergroup')."))"; $sql .= " OR u.entity = 0)"; // Show always superadmin - } - else - { + } else { $sql .= " WHERE u.entity IN (".getEntity('user').")"; } $sql .= " AND u.statut > 0"; @@ -1699,16 +1645,12 @@ class Holiday extends CommonObject } // Retoune le tableau des utilisateurs return $stringlist; - } - else - { + } else { // Erreur SQL $this->error = "Error ".$this->db->lasterror(); return -1; } - } - else - { + } else { // We want only list of vacation balance for user ids $sql = "SELECT DISTINCT cpu.fk_user"; $sql .= " FROM ".MAIN_DB_PREFIX."holiday_users as cpu, ".MAIN_DB_PREFIX."user as u"; @@ -1738,17 +1680,13 @@ class Holiday extends CommonObject } // Retoune le tableau des utilisateurs return $stringlist; - } - else - { + } else { // Erreur SQL $this->error = "Error ".$this->db->lasterror(); return -1; } } - } - else - { + } else { // Si faux donc return array // List for Dolibarr users if ($type) @@ -1767,9 +1705,7 @@ class Holiday extends CommonObject $sql .= " WHERE ((ug.fk_user = u.rowid"; $sql .= " AND ug.entity IN (".getEntity('usergroup')."))"; $sql .= " OR u.entity = 0)"; // Show always superadmin - } - else - { + } else { $sql .= " WHERE u.entity IN (".getEntity('user').")"; } @@ -1810,9 +1746,7 @@ class Holiday extends CommonObject $this->errors[] = "Error ".$this->db->lasterror(); return -1; } - } - else - { + } else { // List of vacation balance users $sql = "SELECT cpu.fk_type, cpu.nb_holiday, u.rowid, u.lastname, u.firstname, u.gender, u.photo, u.employee, u.statut, u.fk_user"; $sql .= " FROM ".MAIN_DB_PREFIX."holiday_users as cpu, ".MAIN_DB_PREFIX."user as u"; @@ -1850,9 +1784,7 @@ class Holiday extends CommonObject } // Retoune le tableau des utilisateurs return $tab_result; - } - else - { + } else { // Erreur SQL $this->error = "Error ".$this->db->lasterror(); return -1; @@ -1895,9 +1827,7 @@ class Holiday extends CommonObject $i++; } return $users_validator; - } - else - { + } else { $this->error = $this->db->lasterror(); dol_syslog(get_class($this)."::fetch_users_approver_holiday Error ".$this->error, LOG_ERR); return -1; @@ -2018,9 +1948,7 @@ class Holiday extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return $this->optRowid; } @@ -2091,9 +2019,7 @@ class Holiday extends CommonObject // Retourne 1 et ajoute le tableau à la variable $this->logs = $tab_result; return 1; - } - else - { + } else { // Erreur SQL $this->error = "Error ".$this->db->lasterror(); return -1; @@ -2131,8 +2057,7 @@ class Holiday extends CommonObject return $types; } - } - else dol_print_error($this->db); + } else dol_print_error($this->db); return array(); } @@ -2173,12 +2098,20 @@ class Holiday extends CommonObject public function load_state_board() { // phpcs:enable + global $user; + $this->nb = array(); $sql = "SELECT count(h.rowid) as nb"; $sql .= " FROM ".MAIN_DB_PREFIX."holiday as h"; $sql .= " WHERE h.statut > 1"; $sql .= " AND h.entity IN (".getEntity('holiday').")"; + if (empty($user->rights->expensereport->read_all)) + { + $userchildids = $user->getAllChildIds(1); + $sql.= " AND (h.fk_user IN (".join(',', $userchildids).")"; + $sql.= " OR h.fk_validator IN (".join(',', $userchildids)."))"; + } $resql = $this->db->query($sql); if ($resql) { @@ -2187,9 +2120,7 @@ class Holiday extends CommonObject } $this->db->free($resql); return 1; - } - else - { + } else { dol_print_error($this->db); $this->error = $this->db->error(); return -1; @@ -2212,14 +2143,16 @@ class Holiday extends CommonObject $now = dol_now(); - $userchildids = $user->getAllChildIds(1); - $sql = "SELECT h.rowid, h.date_debut"; $sql .= " FROM ".MAIN_DB_PREFIX."holiday as h"; $sql .= " WHERE h.statut = 2"; $sql .= " AND h.entity IN (".getEntity('holiday').")"; - $sql .= " AND (h.fk_user IN (".join(',', $userchildids).")"; - $sql .= " OR h.fk_validator IN (".join(',', $userchildids)."))"; + if (empty($user->rights->expensereport->read_all)) + { + $userchildids = $user->getAllChildIds(1); + $sql.= " AND (h.fk_user IN (".join(',', $userchildids).")"; + $sql.= " OR h.fk_validator IN (".join(',', $userchildids)."))"; + } $resql = $this->db->query($sql); if ($resql) @@ -2243,9 +2176,7 @@ class Holiday extends CommonObject } return $response; - } - else - { + } else { dol_print_error($this->db); $this->error = $this->db->error(); return -1; diff --git a/htdocs/holiday/define_holiday.php b/htdocs/holiday/define_holiday.php index d957ade168e..51145fb1f42 100644 --- a/htdocs/holiday/define_holiday.php +++ b/htdocs/holiday/define_holiday.php @@ -232,9 +232,7 @@ if (count($typeleaves) == 0) print $langs->trans("NoLeaveWithCounterDefined")."
    \n"; print $langs->trans("GoIntoDictionaryHolidayTypes"); //print ''; -} -else -{ +} else { $canedit = 0; if (!empty($user->rights->holiday->define_holiday)) $canedit = 1; @@ -260,9 +258,7 @@ else { print ''; } - } - else - { + } else { print ''; } print ''; @@ -285,9 +281,7 @@ else $labeltype = ($langs->trans($val['code']) != $val['code']) ? $langs->trans($val['code']) : $langs->trans($val['label']); print_liste_field_titre($labeltype, $_SERVER["PHP_SELF"], '', '', '', '', '', '', 'center '); } - } - else - { + } else { print_liste_field_titre('NoLeaveWithCounterDefined', $_SERVER["PHP_SELF"], '', '', '', ''); } print_liste_field_titre((empty($user->rights->holiday->define_holiday) ? '' : 'Note'), $_SERVER["PHP_SELF"]); @@ -342,9 +336,7 @@ else //print ' '.$langs->trans('days'); print ''."\n"; } - } - else - { + } else { print ''; } diff --git a/htdocs/holiday/document.php b/htdocs/holiday/document.php index 5df844175d4..256e69028f2 100644 --- a/htdocs/holiday/document.php +++ b/htdocs/holiday/document.php @@ -49,11 +49,12 @@ if ($user->socid) $socid = $user->socid; $result = restrictedArea($user, 'holiday', $id, 'holiday'); // Get parameters +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST('sortfield', 'alpha'); $sortorder = GETPOST('sortorder', 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; if (!$sortorder) $sortorder = "ASC"; @@ -145,9 +146,7 @@ if ($object->id) print ''.$langs->trans($listhalfday[$starthalfday]).''; print ''; print ''; - } - else - { + } else { print ''; print ''.$langs->trans('DateDebCP').' ('.$langs->trans("FirstDayOfHoliday").')'; print ''; @@ -167,9 +166,7 @@ if ($object->id) print ''.$langs->trans($listhalfday[$endhalfday]).''; print ''; print ''; - } - else - { + } else { print ''; print ''.$langs->trans('DateFinCP').' ('.$langs->trans("LastDayOfHoliday").')'; print ''; @@ -199,9 +196,7 @@ if ($object->id) print ''.$langs->trans('DescCP').''; print ''.nl2br($object->description).''; print ''; - } - else - { + } else { print ''; print ''.$langs->trans('DescCP').''; print ''; @@ -288,9 +283,7 @@ if ($object->id) $permtoedit = $user->rights->holiday->write; $param = '&id='.$object->id; include_once DOL_DOCUMENT_ROOT.'/core/tpl/document_actions_post_headers.tpl.php'; -} -else -{ +} else { print $langs->trans("ErrorUnknown"); } diff --git a/htdocs/holiday/list.php b/htdocs/holiday/list.php index daa5a37b51b..5a4f782deac 100644 --- a/htdocs/holiday/list.php +++ b/htdocs/holiday/list.php @@ -1,9 +1,9 @@ - * Copyright (C) 2013-2018 Laurent Destailleur + * Copyright (C) 2013-2020 Laurent Destailleur * Copyright (C) 2012-2016 Regis Houssin * Copyright (C) 2018 Charlene Benke - * Copyright (C) 2019 Frédéric France + * Copyright (C) 2019 Frédéric France * * 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 @@ -429,9 +429,7 @@ if ($resql) } print ''; - } - else - { + } else { $title = $langs->trans("ListeCP"); $newcardbutton = ''; @@ -475,7 +473,7 @@ if ($resql) $include = ''; - if (!empty($user->rights->holiday->read_all)) $include = 'hierarchyme'; // Can see all + if (empty($user->rights->holiday->read_all)) $include = 'hierarchyme'; // Can see only its hierarchyl print '
    '; print ''."\n"; @@ -487,7 +485,7 @@ if ($resql) if (!empty($arrayfields['cp.ref']['checked'])) { print ''; } @@ -523,9 +521,7 @@ if ($resql) foreach ($valideurobjects as $val) $valideurarray[$val->id] = $val->id; print $form->select_dolusers($search_valideur, "search_valideur", 1, "", 0, $valideurarray, '', 0, 0, 0, $morefilter, 0, '', 'maxwidth200'); print ''; - } - else - { + } else { print ''; } } @@ -643,8 +639,7 @@ if ($resql) $langs->load("errors"); print ''; $result = 0; - } - elseif ($num > 0 && !empty($mysoc->country_id)) + } elseif ($num > 0 && !empty($mysoc->country_id)) { // Lines $userstatic = new User($db); @@ -743,7 +738,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, 'totalarray'=>&$totalarray); $reshook = $hookmanager->executeHooks('printFieldListValue', $parameters); // Note that $action and $object may have been modified by hook print $hookmanager->resPrint; @@ -793,9 +788,7 @@ if ($resql) print ''; print ''; -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/holiday/month_report.php b/htdocs/holiday/month_report.php index 0444157704b..0c4ffe76335 100644 --- a/htdocs/holiday/month_report.php +++ b/htdocs/holiday/month_report.php @@ -120,9 +120,7 @@ print ''; if ($num == 0) { print ''; -} -else -{ +} else { while ($obj = $db->fetch_object($resql)) { $user = new User($db); diff --git a/htdocs/holiday/view_log.php b/htdocs/holiday/view_log.php index ce394cbd691..0d987844924 100644 --- a/htdocs/holiday/view_log.php +++ b/htdocs/holiday/view_log.php @@ -166,8 +166,7 @@ if ($lastUpdate) $yearLastUpdate = $lastUpdate[0].$lastUpdate[1].$lastUpdate[2].$lastUpdate[3]; print ''.dol_print_date($db->jdate($object->getConfCP('lastUpdate')), 'dayhour', 'tzuser').''; print '
    '.$langs->trans("MonthOfLastMonthlyUpdate").': '.$yearLastUpdate.'-'.$monthLastUpdate.''."\n"; -} -else print $langs->trans('None'); +} else print $langs->trans('None'); print "
    \n"; $moreforfilter = ''; diff --git a/htdocs/hrm/admin/admin_establishment.php b/htdocs/hrm/admin/admin_establishment.php index c0d7885850b..a260941ab0d 100644 --- a/htdocs/hrm/admin/admin_establishment.php +++ b/htdocs/hrm/admin/admin_establishment.php @@ -44,11 +44,16 @@ foreach ($tmpstatus2label as $key => $val) $status2label[$key] = $langs->trans($ * Actions */ +// None + + /* * View */ + llxHeader('', $langs->trans("Establishments")); +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortorder = GETPOST("sortorder"); $sortfield = GETPOST("sortfield"); if (!$sortorder) $sortorder = "DESC"; @@ -58,7 +63,7 @@ if (empty($page) || $page == -1) { $page = 0; } -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; $limit = GETPOST('limit', 'int') ?GETPOST('limit', 'int') : $conf->liste_limit; @@ -124,16 +129,12 @@ if ($result) $i++; } - } - else - { + } else { print ''; } print '
    '; - print ''; + print ''; print ' 
    '.$langs->trans("NotEnoughPermissions").'
    '.$langs->trans('None').'
    '.$langs->trans("None").'
    '; -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/hrm/class/establishment.class.php b/htdocs/hrm/class/establishment.class.php index 621f93ca247..37ae050cd9b 100644 --- a/htdocs/hrm/class/establishment.class.php +++ b/htdocs/hrm/class/establishment.class.php @@ -260,9 +260,7 @@ class Establishment extends CommonObject $this->country = $obj->country; return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -286,9 +284,7 @@ class Establishment extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -1; @@ -322,27 +318,22 @@ class Establishment extends CommonObject if ($mode == 0) { return $langs->trans($this->statuts[$status]); - } - elseif ($mode == 1) + } elseif ($mode == 1) { return $langs->trans($this->statuts_short[$status]); - } - elseif ($mode == 2) + } elseif ($mode == 2) { if ($status == 0) return img_picto($langs->trans($this->statuts_short[$status]), 'statut5').' '.$langs->trans($this->statuts_short[$status]); elseif ($status == 1) return img_picto($langs->trans($this->statuts_short[$status]), 'statut4').' '.$langs->trans($this->statuts_short[$status]); - } - elseif ($mode == 3) + } elseif ($mode == 3) { if ($status == 0 && !empty($this->statuts_short[$status])) return img_picto($langs->trans($this->statuts_short[$status]), 'statut5'); elseif ($status == 1 && !empty($this->statuts_short[$status])) return img_picto($langs->trans($this->statuts_short[$status]), 'statut4'); - } - elseif ($mode == 4) + } elseif ($mode == 4) { if ($status == 0 && !empty($this->statuts_short[$status])) return img_picto($langs->trans($this->statuts_short[$status]), 'statut5').' '.$langs->trans($this->statuts[$status]); elseif ($status == 1 && !empty($this->statuts_short[$status])) return img_picto($langs->trans($this->statuts_short[$status]), 'statut4').' '.$langs->trans($this->statuts[$status]); - } - elseif ($mode == 5) + } elseif ($mode == 5) { if ($status == 0 && !empty($this->statuts_short[$status])) return $langs->trans($this->statuts_short[$status]).' '.img_picto($langs->trans($this->statuts_short[$status]), 'statut5'); elseif ($status == 1 && !empty($this->statuts_short[$status])) return $langs->trans($this->statuts_short[$status]).' '.img_picto($langs->trans($this->statuts_short[$status]), 'statut4'); @@ -388,9 +379,7 @@ class Establishment extends CommonObject } } $this->db->free($result); - } - else - { + } else { dol_print_error($this->db); } } @@ -417,9 +406,7 @@ class Establishment extends CommonObject $obj = $this->db->fetch_object($result); } $this->db->free($result); - } - else - { + } else { dol_print_error($this->db); } diff --git a/htdocs/hrm/establishment/card.php b/htdocs/hrm/establishment/card.php index 0122e92090f..aa1ac36a9f1 100644 --- a/htdocs/hrm/establishment/card.php +++ b/htdocs/hrm/establishment/card.php @@ -63,14 +63,10 @@ if ($action == 'confirm_delete' && $confirm == "yes") { header("Location: ../admin/admin_establishment.php"); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } -} - -elseif ($action == 'add') +} elseif ($action == 'add') { if (!$cancel) { @@ -100,19 +96,13 @@ elseif ($action == 'add') { header("Location: ".$_SERVER["PHP_SELF"]."?id=".$id); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } - } - else - { + } else { $action = 'create'; } - } - else - { + } else { header("Location: ../admin/admin_establishment.php"); exit; } @@ -147,9 +137,7 @@ elseif ($action == 'update') { header("Location: ".$_SERVER["PHP_SELF"]."?id=".$_POST['id']); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -340,8 +328,7 @@ if (($id || $ref) && $action == 'edit') print ''; } - } - else dol_print_error($db); + } else dol_print_error($db); } if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'create'))) diff --git a/htdocs/hrm/index.php b/htdocs/hrm/index.php index ba33ecbbdb3..7cc72c1792e 100644 --- a/htdocs/hrm/index.php +++ b/htdocs/hrm/index.php @@ -77,7 +77,7 @@ $childids[] = $user->id; llxHeader('', $langs->trans('HRMArea')); -print load_fiche_titre($langs->trans("HRMArea"), '', 'hrm'); +print load_fiche_titre($langs->trans("HRMArea"), '', 'user'); if (!empty($setupcompanynotcomplete)) @@ -160,8 +160,7 @@ if (!empty($conf->holiday->enabled)) print ''; print ''; print '

    '; - } - elseif (!is_numeric($conf->global->HOLIDAY_HIDE_BALANCE)) + } elseif (!is_numeric($conf->global->HOLIDAY_HIDE_BALANCE)) { print $langs->trans($conf->global->HOLIDAY_HIDE_BALANCE).'
    '; } @@ -241,16 +240,13 @@ if (!empty($conf->holiday->enabled) && $user->rights->holiday->read) $i++; } - } - else - { + } else { print ''.$langs->trans("None").''; } print ''; print ''; print '
    '; - } - else dol_print_error($db); + } else dol_print_error($db); } @@ -314,15 +310,12 @@ if (!empty($conf->expensereport->enabled) && $user->rights->expensereport->lire) $i++; } - } - else - { + } else { print ''.$langs->trans("None").''; } print ''; print ''; - } - else dol_print_error($db); + } else dol_print_error($db); } diff --git a/htdocs/imports/class/import.class.php b/htdocs/imports/class/import.class.php index f2aad5baee3..12dfc5d19e9 100644 --- a/htdocs/imports/class/import.class.php +++ b/htdocs/imports/class/import.class.php @@ -260,9 +260,7 @@ class Import { $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); $this->errno = $this->db->lasterrno(); $this->db->rollback(); @@ -295,15 +293,11 @@ class Import $this->datatoimport = $obj->type; $this->fk_user = $obj->fk_user; return 1; - } - else - { + } else { $this->error = "Model not found"; return -2; } - } - else - { + } else { dol_print_error($this->db); return -3; } @@ -353,9 +347,7 @@ class Import } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } diff --git a/htdocs/imports/import.php b/htdocs/imports/import.php index a84b255601d..eb0d7470dbb 100644 --- a/htdocs/imports/import.php +++ b/htdocs/imports/import.php @@ -141,9 +141,7 @@ if ($action == 'builddoc') if ($result < 0) { setEventMessages($objimport->error, $objimport->errors, 'errors'); - } - else - { + } else { setEventMessages($langs->trans("FileSuccessfullyBuilt"), null, 'mesgs'); } } @@ -178,21 +176,16 @@ if ($action == 'add_import_model') if ($result >= 0) { setEventMessages($langs->trans("ImportModelSaved", $objimport->model_name), null, 'mesgs'); - } - else - { + } else { $langs->load("errors"); if ($objimport->errno == 'DB_ERROR_RECORD_ALREADY_EXISTS') { setEventMessages($langs->trans("ErrorImportDuplicateProfil"), null, 'errors'); - } - else { + } else { setEventMessages($objimport->error, null, 'errors'); } } - } - else - { + } else { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("ImportModelName")), null, 'errors'); } } @@ -208,9 +201,7 @@ if ($step == 3 && $datatoimport) if (dol_move_uploaded_file($_FILES['userfile']['tmp_name'], $fullpath, 1) > 0) { dol_syslog("File ".$fullpath." was added for import"); - } - else - { + } else { $langs->load("errors"); setEventMessages($langs->trans("ErrorFailedToSaveFile"), null, 'errors'); } @@ -371,16 +362,12 @@ if ($step == 1 || !$datatoimport) if ($objimport->array_import_perms[$key]) { print ''.img_picto($langs->trans("NewImport"), 'filenew').''; - } - else - { + } else { print $langs->trans("NotEnoughPermissions"); } print ''; } - } - else - { + } else { print ''.$langs->trans("NoImportableData").''; } print ''; @@ -612,9 +599,7 @@ if ($step == 3 && $datatoimport) $langs->load('other'); $out .= ' '; $out .= info_admin($langs->trans("ThisLimitIsDefinedInSetup", $max, $maxphptoshow), 1); - } - else - { + } else { $out .= ' ('.$langs->trans("UploadDisabled").')'; } print $out; @@ -976,15 +961,12 @@ if ($step == 4 && $datatoimport) // Source field info $htmltext = ''.$langs->trans("FieldSource").'
    '; if ($filecolumn > count($fieldssource)) $htmltext .= $langs->trans("DataComeFromNoWhere").'
    '; - else - { + else { if (empty($objimport->array_import_convertvalue[0][$code])) // If source file does not need convertion { $filecolumntoshow = $filecolumn; $htmltext .= $langs->trans("DataComeFromFileFieldNb", $filecolumntoshow).'
    '; - } - else - { + } else { if ($objimport->array_import_convertvalue[0][$code]['rule'] == 'fetchidfromref') $htmltext .= $langs->trans("DataComeFromIdFoundFromRef", $filecolumn, $langs->transnoentitiesnoconv($entitylang)).'
    '; if ($objimport->array_import_convertvalue[0][$code]['rule'] == 'fetchidfromcodeid') $htmltext .= $langs->trans("DataComeFromIdFoundFromCodeId", $filecolumn, $langs->transnoentitiesnoconv($objimport->array_import_convertvalue[0][$code]['dict'])).'
    '; } @@ -996,9 +978,7 @@ if ($step == 4 && $datatoimport) if (empty($objimport->array_import_convertvalue[0][$code])) // If source file does not need convertion { if ($example) $htmltext .= $langs->trans("SourceExample").': '.$example.'
    '; - } - else - { + } else { if ($objimport->array_import_convertvalue[0][$code]['rule'] == 'fetchidfromref') $htmltext .= $langs->trans("SourceExample").': '.$langs->transnoentitiesnoconv("ExampleAnyRefFoundIntoElement", $entitylang).($example ? ' ('.$langs->transnoentitiesnoconv("Example").': '.$example.')' : '').'
    '; elseif ($objimport->array_import_convertvalue[0][$code]['rule'] == 'fetchidfromcodeid') $htmltext .= $langs->trans("SourceExample").': '.$langs->trans("ExampleAnyCodeOrIdFoundIntoDictionary", $langs->transnoentitiesnoconv($objimport->array_import_convertvalue[0][$code]['dict'])).($example ? ' ('.$langs->transnoentitiesnoconv("Example").': '.$example.')' : '').'
    '; elseif ($example) $htmltext .= $langs->trans("SourceExample").': '.$example.'
    '; @@ -1014,9 +994,7 @@ if ($step == 4 && $datatoimport) if (empty($objimport->array_import_convertvalue[0][$code])) // If source file does not need convertion { $htmltext .= $langs->trans("DataIsInsertedInto").'
    '; - } - else - { + } else { if ($objimport->array_import_convertvalue[0][$code]['rule'] == 'fetchidfromref') $htmltext .= $langs->trans("DataIDSourceIsInsertedInto").'
    '; if ($objimport->array_import_convertvalue[0][$code]['rule'] == 'fetchidfromcodeid') $htmltext .= $langs->trans("DataCodeIDSourceIsInsertedInto").'
    '; } @@ -1126,9 +1104,7 @@ if ($step == 4 && $datatoimport) if ($mandatoryfieldshavesource) { print ''.$langs->trans("NextStep").''; - } - else - { + } else { print ''.$langs->trans("NextStep").''; } } @@ -1189,8 +1165,7 @@ if ($step == 4 && $datatoimport) print ''; $i++; } - } - else { + } else { dol_print_error($db); } @@ -1326,9 +1301,7 @@ if ($step == 5 && $datatoimport) { print ''; print ''; - } - else - { + } else { print ''; print $form->textwithpicto("", $langs->trans("SetThisValueTo2ToExcludeFirstLine")); } @@ -1337,9 +1310,7 @@ if ($step == 5 && $datatoimport) { print ''; print ''; - } - else - { + } else { print ''; print $form->textwithpicto("", $langs->trans("KeepEmptyToGoToEndOfFile")); } @@ -1354,9 +1325,7 @@ if ($step == 5 && $datatoimport) if (count($updatekeys)) { print $form->multiselectarray('updatekeysbis', $objimport->array_import_updatekeys[0], $updatekeys, 0, 0, '', 1, '80%', 'disabled'); - } - else - { + } else { print ''.$langs->trans("NoUpdateAttempt").'   -'; } foreach ($updatekeys as $val) { @@ -1368,9 +1337,7 @@ if ($step == 5 && $datatoimport) { //TODO dropdown UL is created inside nested SPANS print $form->multiselectarray('updatekeys', $objimport->array_import_updatekeys[0], $updatekeys, 0, 0, '', 1, '80%'); print $form->textwithpicto("", $langs->trans("SelectPrimaryColumnsForUpdateAttempt")); - } - else - { + } else { print ''.$langs->trans("UpdateNotYetSupportedForThisImport").''; } } @@ -1425,8 +1392,7 @@ if ($step == 5 && $datatoimport) }*/ print $newval; } - } - else print $langs->trans("Error"); + } else print $langs->trans("Error"); print ''; // Fields imported @@ -1468,15 +1434,11 @@ if ($step == 5 && $datatoimport) if ($user->rights->import->run) { print ''; - } - else - { + } else { print ''.$langs->trans("RunSimulateImportFile").''; } print ''; - } - else - { + } else { // Launch import $arrayoferrors = array(); $arrayofwarnings = array(); @@ -1526,9 +1488,7 @@ if ($step == 5 && $datatoimport) } // Close file $obj->import_close_file(); - } - else - { + } else { print $langs->trans("ErrorFailedToOpenFile", $pathfile); } @@ -1558,8 +1518,7 @@ if ($step == 5 && $datatoimport) print '
    '.img_picto($langs->trans("OK"), 'tick').' '.$langs->trans("NoError").'


    '; print $langs->trans("NbInsert", $obj->nbinsert).'
    '; print $langs->trans("NbUpdate", $obj->nbupdate).'

    '; - } - else print $langs->trans("NbOfLinesOK", $nbok).'

    '; + } else print $langs->trans("NbOfLinesOK", $nbok).'

    '; // Show Errors //var_dump($arrayoferrors); @@ -1626,16 +1585,12 @@ if ($step == 5 && $datatoimport) if (empty($nboferrors)) { print ''.$langs->trans("RunImportFile").''; - } - else - { + } else { //print ''; print ''.$langs->trans("RunImportFile").''; } - } - else - { + } else { print ''.$langs->trans("RunSimulateImportFile").''; print ''.$langs->trans("RunImportFile").''; @@ -1821,8 +1776,7 @@ if ($step == 6 && $datatoimport) }*/ print $newval; } - } - else print $langs->trans("Error"); + } else print $langs->trans("Error"); print ''; // Fields imported @@ -1894,15 +1848,12 @@ if ($step == 6 && $datatoimport) } // Close file $obj->import_close_file(); - } - else - { + } else { print $langs->trans("ErrorFailedToOpenFile", $pathfile); } if (count($arrayoferrors) > 0) $db->rollback(); // We force rollback because this was errors. - else - { + else { $error = 0; // Run the sql after import if defined @@ -1987,8 +1938,7 @@ function show_elem($fieldssource, $pos, $key, $var, $nostyle = '') print $langs->trans("NoFields"); print ''; print ''; - } - elseif ($key == 'none') // Empty line + } elseif ($key == 'none') // Empty line { print ''; print ''; @@ -1998,8 +1948,7 @@ function show_elem($fieldssource, $pos, $key, $var, $nostyle = '') print ' '; print ''; print ''; - } - else // Print field of source file + } else // Print field of source file { print ''; print ''; diff --git a/htdocs/index.php b/htdocs/index.php index 850a6c3a932..231be576cfa 100644 --- a/htdocs/index.php +++ b/htdocs/index.php @@ -1,6 +1,6 @@ - * Copyright (C) 2004-2017 Laurent Destailleur + * Copyright (C) 2004-2020 Laurent Destailleur * Copyright (C) 2005-2017 Regis Houssin * Copyright (C) 2011-2012 Juanjo Menent * Copyright (C) 2015 Marcos García @@ -80,7 +80,7 @@ llxHeader('', $title); $resultboxes = FormOther::getBoxesArea($user, "0"); // Load $resultboxes (selectboxlist + boxactivated + boxlista + boxlistb) -print load_fiche_titre($langs->trans("HomeArea"), $resultboxes['selectboxlist'], 'home', 0, '', 'titleforhome'); +print load_fiche_titre(' ', $resultboxes['selectboxlist'], '', 0, '', 'titleforhome'); if (!empty($conf->global->MAIN_MOTD)) { @@ -125,228 +125,193 @@ if (empty($user->socid) && empty($conf->global->MAIN_DISABLE_GLOBAL_BOXSTATS)) if (empty($reshook)) { + // Cle array returned by the method load_state_board for each line + $keys = array( + 'users', + 'members', + 'expensereports', + 'holidays', + 'customers', + 'prospects', + 'suppliers', + 'contacts', + 'products', + 'services', + 'projects', + 'proposals', + 'orders', + 'invoices', + 'donations', + 'supplier_proposals', + 'supplier_orders', + 'supplier_invoices', + 'contracts', + 'interventions', + 'ticket' + ); + // Condition to be checked for each display line dashboard $conditions = array( - $user->rights->user->user->lire, - !empty($conf->societe->enabled) && $user->rights->societe->lire && empty($conf->global->SOCIETE_DISABLE_CUSTOMERS) && empty($conf->global->SOCIETE_DISABLE_CUSTOMERS_STATS), - !empty($conf->societe->enabled) && $user->rights->societe->lire && empty($conf->global->SOCIETE_DISABLE_PROSPECTS) && empty($conf->global->SOCIETE_DISABLE_PROSPECTS_STATS), - !empty($conf->fournisseur->enabled) && $user->rights->fournisseur->lire && empty($conf->global->SOCIETE_DISABLE_SUPPLIERS_STATS), - !empty($conf->societe->enabled) && $user->rights->societe->contact->lire, - !empty($conf->adherent->enabled) && $user->rights->adherent->lire, - !empty($conf->product->enabled) && $user->rights->produit->lire, - !empty($conf->service->enabled) && $user->rights->service->lire, - !empty($conf->propal->enabled) && $user->rights->propale->lire, - !empty($conf->commande->enabled) && $user->rights->commande->lire, - !empty($conf->facture->enabled) && $user->rights->facture->lire, - !empty($conf->contrat->enabled) && $user->rights->contrat->lire, - !empty($conf->ficheinter->enabled) && $user->rights->ficheinter->lire, - !empty($conf->supplier_order->enabled) && $user->rights->fournisseur->commande->lire && empty($conf->global->SOCIETE_DISABLE_SUPPLIERS_ORDERS_STATS), - !empty($conf->supplier_invoice->enabled) && $user->rights->fournisseur->facture->lire && empty($conf->global->SOCIETE_DISABLE_SUPPLIERS_INVOICES_STATS), - !empty($conf->supplier_proposal->enabled) && $user->rights->supplier_proposal->lire && empty($conf->global->SOCIETE_DISABLE_SUPPLIERS_PROPOSAL_STATS), - !empty($conf->projet->enabled) && $user->rights->projet->lire, - !empty($conf->expensereport->enabled) && $user->rights->expensereport->lire, - !empty($conf->holiday->enabled) && $user->rights->holiday->read, - !empty($conf->don->enabled) && $user->rights->don->lire, - !empty($conf->ticket->enabled) && $user->rights->ticket->read + 'users' => $user->rights->user->user->lire, + 'members' => !empty($conf->adherent->enabled) && $user->rights->adherent->lire, + 'customers' => !empty($conf->societe->enabled) && $user->rights->societe->lire && empty($conf->global->SOCIETE_DISABLE_CUSTOMERS) && empty($conf->global->SOCIETE_DISABLE_CUSTOMERS_STATS), + 'prospects' => !empty($conf->societe->enabled) && $user->rights->societe->lire && empty($conf->global->SOCIETE_DISABLE_PROSPECTS) && empty($conf->global->SOCIETE_DISABLE_PROSPECTS_STATS), + 'suppliers' => !empty($conf->fournisseur->enabled) && $user->rights->fournisseur->lire && empty($conf->global->SOCIETE_DISABLE_SUPPLIERS_STATS), + 'contacts' => !empty($conf->societe->enabled) && $user->rights->societe->contact->lire, + 'services' => !empty($conf->product->enabled) && $user->rights->produit->lire, + 'services' => !empty($conf->service->enabled) && $user->rights->service->lire, + 'proposals' => !empty($conf->propal->enabled) && $user->rights->propale->lire, + 'orders' => !empty($conf->commande->enabled) && $user->rights->commande->lire, + 'invoices' => !empty($conf->facture->enabled) && $user->rights->facture->lire, + 'donations' => !empty($conf->don->enabled) && $user->rights->don->lire, + 'contracts' => !empty($conf->contrat->enabled) && $user->rights->contrat->lire, + 'interventions' => !empty($conf->ficheinter->enabled) && $user->rights->ficheinter->lire, + 'supplier_orders' => !empty($conf->supplier_order->enabled) && $user->rights->fournisseur->commande->lire && empty($conf->global->SOCIETE_DISABLE_SUPPLIERS_ORDERS_STATS), + 'supplier_invoices' => !empty($conf->supplier_invoice->enabled) && $user->rights->fournisseur->facture->lire && empty($conf->global->SOCIETE_DISABLE_SUPPLIERS_INVOICES_STATS), + 'supplier_proposals' => !empty($conf->supplier_proposal->enabled) && $user->rights->supplier_proposal->lire && empty($conf->global->SOCIETE_DISABLE_SUPPLIERS_PROPOSAL_STATS), + 'projects' => !empty($conf->projet->enabled) && $user->rights->projet->lire, + 'expensereports' => !empty($conf->expensereport->enabled) && $user->rights->expensereport->lire, + 'holidays' => !empty($conf->holiday->enabled) && $user->rights->holiday->read, + 'ticket' => !empty($conf->ticket->enabled) && $user->rights->ticket->read ); // Class file containing the method load_state_board for each line $includes = array( - DOL_DOCUMENT_ROOT."/user/class/user.class.php", - DOL_DOCUMENT_ROOT."/adherents/class/adherent.class.php", - DOL_DOCUMENT_ROOT."/societe/class/client.class.php", - DOL_DOCUMENT_ROOT."/societe/class/client.class.php", - DOL_DOCUMENT_ROOT."/fourn/class/fournisseur.class.php", - DOL_DOCUMENT_ROOT."/contact/class/contact.class.php", - DOL_DOCUMENT_ROOT."/product/class/product.class.php", - DOL_DOCUMENT_ROOT."/product/class/product.class.php", - DOL_DOCUMENT_ROOT."/comm/propal/class/propal.class.php", - DOL_DOCUMENT_ROOT."/commande/class/commande.class.php", - DOL_DOCUMENT_ROOT."/compta/facture/class/facture.class.php", - DOL_DOCUMENT_ROOT."/don/class/don.class.php", - DOL_DOCUMENT_ROOT."/contrat/class/contrat.class.php", - DOL_DOCUMENT_ROOT."/fichinter/class/fichinter.class.php", - DOL_DOCUMENT_ROOT."/fourn/class/fournisseur.commande.class.php", - DOL_DOCUMENT_ROOT."/fourn/class/fournisseur.facture.class.php", - DOL_DOCUMENT_ROOT."/supplier_proposal/class/supplier_proposal.class.php", - DOL_DOCUMENT_ROOT."/projet/class/project.class.php", - DOL_DOCUMENT_ROOT."/expensereport/class/expensereport.class.php", - DOL_DOCUMENT_ROOT."/holiday/class/holiday.class.php", - DOL_DOCUMENT_ROOT."/ticket/class/ticket.class.php" + 'users' => DOL_DOCUMENT_ROOT."/user/class/user.class.php", + 'members' => DOL_DOCUMENT_ROOT."/adherents/class/adherent.class.php", + 'customers' => DOL_DOCUMENT_ROOT."/societe/class/client.class.php", + 'prospects' => DOL_DOCUMENT_ROOT."/societe/class/client.class.php", + 'suppliers' => DOL_DOCUMENT_ROOT."/fourn/class/fournisseur.class.php", + 'contacts' => DOL_DOCUMENT_ROOT."/contact/class/contact.class.php", + 'products' => DOL_DOCUMENT_ROOT."/product/class/product.class.php", + 'services' => DOL_DOCUMENT_ROOT."/product/class/product.class.php", + 'proposals' => DOL_DOCUMENT_ROOT."/comm/propal/class/propal.class.php", + 'orders' => DOL_DOCUMENT_ROOT."/commande/class/commande.class.php", + 'invoices' => DOL_DOCUMENT_ROOT."/compta/facture/class/facture.class.php", + 'donations' => DOL_DOCUMENT_ROOT."/don/class/don.class.php", + 'contracts' => DOL_DOCUMENT_ROOT."/contrat/class/contrat.class.php", + 'interventions' => DOL_DOCUMENT_ROOT."/fichinter/class/fichinter.class.php", + 'supplier_orders' => DOL_DOCUMENT_ROOT."/fourn/class/fournisseur.commande.class.php", + 'supplier_invoices' => DOL_DOCUMENT_ROOT."/fourn/class/fournisseur.facture.class.php", + 'supplier_proposals' => DOL_DOCUMENT_ROOT."/supplier_proposal/class/supplier_proposal.class.php", + 'projects' => DOL_DOCUMENT_ROOT."/projet/class/project.class.php", + 'expensereports' => DOL_DOCUMENT_ROOT."/expensereport/class/expensereport.class.php", + 'holidays' => DOL_DOCUMENT_ROOT."/holiday/class/holiday.class.php", + 'ticket' => DOL_DOCUMENT_ROOT."/ticket/class/ticket.class.php" ); // Name class containing the method load_state_board for each line $classes = array( - 'User', - 'Adherent', - 'Client', - 'Client', - 'Fournisseur', - 'Contact', - 'Product', - 'Product', - 'Propal', - 'Commande', - 'Facture', - 'Don', - 'Contrat', - 'Fichinter', - 'CommandeFournisseur', - 'FactureFournisseur', - 'SupplierProposal', - 'Project', - 'ExpenseReport', - 'Holiday', - 'Ticket', - ); - // Cle array returned by the method load_state_board for each line - $keys = array( - 'users', - 'members', - 'customers', - 'prospects', - 'suppliers', - 'contacts', - 'products', - 'services', - 'proposals', - 'orders', - 'invoices', - 'donations', - 'contracts', - 'interventions', - 'supplier_orders', - 'supplier_invoices', - 'askprice', - 'projects', - 'expensereports', - 'holidays', - 'ticket' - ); - // Dashboard Icon lines - $icons = array( - 'user', - 'user', - 'company', - 'company', - 'company', - 'contact', - 'product', - 'service', - 'propal', - 'order', - 'bill', - 'generic', - 'contract', - 'intervention', - 'order', - 'bill', - 'propal', - 'project', - 'trip', - 'holiday', - 'ticket', + 'users' => 'User', + 'members' => 'Adherent', + 'customers' => 'Client', + 'prospects' => 'Client', + 'suppliers' => 'Fournisseur', + 'contacts' => 'Contact', + 'products' => 'Product', + 'services' => 'ProductService', + 'proposals' => 'Propal', + 'orders' => 'Commande', + 'invoices' => 'Facture', + 'donations' => 'Don', + 'contracts' => 'Contrat', + 'interventions' => 'Fichinter', + 'supplier_orders' => 'CommandeFournisseur', + 'supplier_invoices' => 'FactureFournisseur', + 'supplier_proposals' => 'SupplierProposal', + 'projects' => 'Project', + 'expensereports' => 'ExpenseReport', + 'holidays' => 'Holiday', + 'ticket' => 'Ticket', ); // Translation keyword $titres = array( - "Users", - "Members", - "ThirdPartyCustomersStats", - "ThirdPartyProspectsStats", - "Suppliers", - "Contacts", - "Products", - "Services", - "CommercialProposalsShort", - "CustomersOrders", - "BillsCustomers", - "Donations", - "Contracts", - "Interventions", - "SuppliersOrders", - "SuppliersInvoices", - "SupplierProposalShort", - "Projects", - "ExpenseReports", - "Holidays", - "Ticket", + 'users' => "Users", + 'members' => "Members", + 'customers' => "ThirdPartyCustomersStats", + 'prospects' => "ThirdPartyProspectsStats", + 'suppliers' => "Suppliers", + 'contacts' => "Contacts", + 'products' => "Products", + 'services' => "Services", + 'proposals' => "CommercialProposalsShort", + 'orders' => "CustomersOrders", + 'invoices' => "BillsCustomers", + 'donations' => "Donations", + 'contracts' => "Contracts", + 'interventions' => "Interventions", + 'supplier_orders' => "SuppliersOrders", + 'supplier_invoices' => "SuppliersInvoices", + 'supplier_proposals' => "SupplierProposalShort", + 'projects' => "Projects", + 'expensereports' => "ExpenseReports", + 'holidays' => "Holidays", + 'ticket' => "Ticket", ); // Dashboard Link lines $links = array( - DOL_URL_ROOT.'/user/list.php', - DOL_URL_ROOT.'/adherents/list.php?statut=1&mainmenu=members', - DOL_URL_ROOT.'/societe/list.php?type=c&mainmenu=companies', - DOL_URL_ROOT.'/societe/list.php?type=p&mainmenu=companies', - DOL_URL_ROOT.'/societe/list.php?type=f&mainmenu=companies', - DOL_URL_ROOT.'/contact/list.php?mainmenu=companies', - DOL_URL_ROOT.'/product/list.php?type=0&mainmenu=products', - DOL_URL_ROOT.'/product/list.php?type=1&mainmenu=products', - DOL_URL_ROOT.'/comm/propal/list.php?mainmenu=commercial&leftmenu=propals', - DOL_URL_ROOT.'/commande/list.php?mainmenu=commercial&leftmenu=orders', - DOL_URL_ROOT.'/compta/facture/list.php?mainmenu=billing&leftmenu=customers_bills', - DOL_URL_ROOT.'/don/list.php?leftmenu=donations', - DOL_URL_ROOT.'/contrat/list.php?mainmenu=commercial&leftmenu=contracts', - DOL_URL_ROOT.'/fichinter/list.php?mainmenu=commercial&leftmenu=ficheinter', - DOL_URL_ROOT.'/fourn/commande/list.php?mainmenu=commercial&leftmenu=orders_suppliers', - DOL_URL_ROOT.'/fourn/facture/list.php?mainmenu=billing&leftmenu=suppliers_bills', - DOL_URL_ROOT.'/supplier_proposal/list.php?mainmenu=commercial&leftmenu=', - DOL_URL_ROOT.'/projet/list.php?mainmenu=project', - DOL_URL_ROOT.'/expensereport/list.php?mainmenu=hrm&leftmenu=expensereport', - DOL_URL_ROOT.'/holiday/list.php?mainmenu=hrm&leftmenu=holiday', - DOL_URL_ROOT.'/ticket/list.php?leftmenu=ticket' + 'users' => DOL_URL_ROOT.'/user/list.php', + 'members' => DOL_URL_ROOT.'/adherents/list.php?statut=1&mainmenu=members', + 'customers' => DOL_URL_ROOT.'/societe/list.php?type=c&mainmenu=companies', + 'prospects' => DOL_URL_ROOT.'/societe/list.php?type=p&mainmenu=companies', + 'suppliers' => DOL_URL_ROOT.'/societe/list.php?type=f&mainmenu=companies', + 'contacts' => DOL_URL_ROOT.'/contact/list.php?mainmenu=companies', + 'products' => DOL_URL_ROOT.'/product/list.php?type=0&mainmenu=products', + 'services' => DOL_URL_ROOT.'/product/list.php?type=1&mainmenu=products', + 'proposals' => DOL_URL_ROOT.'/comm/propal/list.php?mainmenu=commercial&leftmenu=propals', + 'orders' => DOL_URL_ROOT.'/commande/list.php?mainmenu=commercial&leftmenu=orders', + 'invoices' => DOL_URL_ROOT.'/compta/facture/list.php?mainmenu=billing&leftmenu=customers_bills', + 'donations' => DOL_URL_ROOT.'/don/list.php?leftmenu=donations', + 'contracts' => DOL_URL_ROOT.'/contrat/list.php?mainmenu=commercial&leftmenu=contracts', + 'interventions' => DOL_URL_ROOT.'/fichinter/list.php?mainmenu=commercial&leftmenu=ficheinter', + 'supplier_orders' => DOL_URL_ROOT.'/fourn/commande/list.php?mainmenu=commercial&leftmenu=orders_suppliers', + 'supplier_invoices' => DOL_URL_ROOT.'/fourn/facture/list.php?mainmenu=billing&leftmenu=suppliers_bills', + 'supplier_proposals' => DOL_URL_ROOT.'/supplier_proposal/list.php?mainmenu=commercial&leftmenu=', + 'projects' => DOL_URL_ROOT.'/projet/list.php?mainmenu=project', + 'expensereports' => DOL_URL_ROOT.'/expensereport/list.php?mainmenu=hrm&leftmenu=expensereport', + 'holidays' => DOL_URL_ROOT.'/holiday/list.php?mainmenu=hrm&leftmenu=holiday', + 'ticket' => DOL_URL_ROOT.'/ticket/list.php?leftmenu=ticket' ); // Translation lang files $langfile = array( - "users", - "members", - "companies", - "prospects", - "suppliers", - "companies", - "products", - "products", - "propal", - "orders", - "bills", - "donations", - "contracts", - "interventions", - "bills", - "bills", - "supplier_proposal", - "projects", - "trips", - "holiday", - "ticket" + 'customers' => "companies", + 'contacts' => "companies", + 'services' => "products", + 'proposals' => "propal", + 'invoices' => "bills", + 'supplier_orders' => "orders", + 'supplier_invoices' => "bills", + 'supplier_proposals' => 'supplier_proposal', + 'expensereports' => "trips", + 'holidays' => "holiday", ); // Loop and displays each line of table $boardloaded = array(); - foreach ($keys as $key => $val) + foreach ($keys as $val) { - if ($conditions[$key]) + if ($conditions[$val]) { $boxstatItem = ''; - $classe = $classes[$key]; + $class = $classes[$val]; // Search in cache if load_state_board is already realized - if (!isset($boardloaded[$classe]) || !is_object($boardloaded[$classe])) + if (!isset($boardloaded[$class]) || !is_object($boardloaded[$class])) { - include_once $includes[$key]; // Loading a class cost around 1Mb + include_once $includes[$val]; // Loading a class cost around 1Mb - $board = new $classe($db); - $board->load_state_board($user); - $boardloaded[$classe] = $board; - } - else - { - $board = $boardloaded[$classe]; + $board = new $class($db); + $board->load_state_board(); + $boardloaded[$class] = $board; + } else { + $board = $boardloaded[$class]; } - if (!empty($langfile[$key])) $langs->load($langfile[$key]); - $text = $langs->trans($titres[$key]); - $boxstatItem .= ''; + $langs->load(empty($langfile[$val]) ? $val : $langfile[$val]); + + $text = $langs->trans($titres[$val]); + $boxstatItem .= ''; $boxstatItem .= '
    '; $boxstatItem .= ''.$text.'
    '; - $boxstatItem .= ''.img_object("", $icons[$key], 'class="inline-block"').' '.($board->nb[$val] ? $board->nb[$val] : 0).''; + $boxstatItem .= ''.img_object("", $board->picto, 'class="inline-block"').' '.($board->nb[$val] ? $board->nb[$val] : 0).''; $boxstatItem .= '
    '; $boxstatItem .= '
    '; @@ -470,7 +435,7 @@ if (empty($conf->global->MAIN_DISABLE_GLOBAL_WORKBOARD)) { if (!empty($conf->banque->enabled) && $user->rights->banque->lire && !$user->socid && empty($conf->global->BANK_DISABLE_CHECK_DEPOSIT)) { include_once DOL_DOCUMENT_ROOT.'/compta/paiement/cheque/class/remisecheque.class.php'; $board = new RemiseCheque($db); - $dashboardlines['RemiseCheque'] = $board->load_board($user); + $dashboardlines[$board->element] = $board->load_board($user); } // Number of foundation members @@ -485,21 +450,21 @@ if (empty($conf->global->MAIN_DISABLE_GLOBAL_WORKBOARD)) { if (!empty($conf->expensereport->enabled) && $user->rights->expensereport->approve) { include_once DOL_DOCUMENT_ROOT.'/expensereport/class/expensereport.class.php'; $board = new ExpenseReport($db); - $dashboardlines['ExpenseReport'] = $board->load_board($user, 'toapprove'); + $dashboardlines[$board->element . '_toapprove'] = $board->load_board($user, 'toapprove'); } // Number of expense reports to pay if (!empty($conf->expensereport->enabled) && $user->rights->expensereport->to_paid) { include_once DOL_DOCUMENT_ROOT.'/expensereport/class/expensereport.class.php'; $board = new ExpenseReport($db); - $dashboardlines['ExpenseReport'] = $board->load_board($user, 'topay'); + $dashboardlines[$board->element . '_topay'] = $board->load_board($user, 'topay'); } // Number of holidays to approve if (!empty($conf->holiday->enabled) && $user->rights->holiday->approve) { include_once DOL_DOCUMENT_ROOT.'/holiday/class/holiday.class.php'; $board = new Holiday($db); - $dashboardlines['Holiday'] = $board->load_board($user); + $dashboardlines[$board->element] = $board->load_board($user); } $object = new stdClass(); @@ -584,28 +549,28 @@ if (empty($conf->global->MAIN_DISABLE_GLOBAL_WORKBOARD)) { array( 'groupName' => 'BankAccount', 'stats' => - array('bank_account', 'RemiseCheque'), + array('bank_account', 'chequereceipt'), ), - 'Adherent' => + 'member' => array( 'groupName' => 'Members', 'globalStatsKey' => 'members', 'stats' => - array('member_shift', 'member_expired'), + array('member_shift', 'member_expired'), ), - 'ExpenseReport' => + 'expensereport' => array( 'groupName' => 'ExpenseReport', 'globalStatsKey' => 'expensereports', 'stats' => - array('ExpenseReport'), + array('expensereport_toapprove', 'expensereport_topay'), ), - 'Holiday' => + 'holiday' => array( 'groupName' => 'Holidays', 'globalStatsKey' => 'holidays', 'stats' => - array('Holiday'), + array('holiday'), ), ); @@ -722,7 +687,7 @@ if (empty($conf->global->MAIN_DISABLE_GLOBAL_WORKBOARD)) { } } - $openedDashBoard .= '
    '."\n"; + $openedDashBoard .= '
    '."\n"; $openedDashBoard .= '
    '."\n"; $openedDashBoard .= ' '."\n"; $openedDashBoard .= ' '."\n"; @@ -769,6 +734,7 @@ if (empty($conf->global->MAIN_DISABLE_GLOBAL_WORKBOARD)) { $openedDashBoard .= '
    '."\n"; $openedDashBoard .= '
    '."\n"; + $openedDashBoard .= '
    '."\n"; $openedDashBoard .= '
    '."\n"; $openedDashBoard .= "\n"; } @@ -787,7 +753,7 @@ if (empty($conf->global->MAIN_DISABLE_GLOBAL_WORKBOARD)) { } $text .= '. '.$langs->transnoentitiesnoconv("LateDesc"); - $weatherDashBoard = '
    '."\n"; + $weatherDashBoard = '
    '."\n"; $weatherDashBoard .= '
    '."\n"; $weatherDashBoard .= ' '; $weatherDashBoard .= img_weather('', $weather->level, '', 0, 'valignmiddle width50'); @@ -811,6 +777,7 @@ if (empty($conf->global->MAIN_DISABLE_GLOBAL_WORKBOARD)) { $weatherDashBoard .= '
    '."\n"; $weatherDashBoard .= '
    '."\n"; + $weatherDashBoard .= '
    '."\n"; $weatherDashBoard .= '
    '."\n"; $weatherDashBoard .= "\n"; diff --git a/htdocs/install/check.php b/htdocs/install/check.php index 95e3082cb56..267e1629f36 100644 --- a/htdocs/install/check.php +++ b/htdocs/install/check.php @@ -82,14 +82,11 @@ if (versioncompare(versionphparray(), $arrayphpminversionerror) < 0) // M { print 'Error '.$langs->trans("ErrorPHPVersionTooLow", versiontostring($arrayphpminversionerror)); $checksok = 0; // 0=error, 1=warning -} -elseif (versioncompare(versionphparray(), $arrayphpminversionwarning) < 0) // Minimum supported (warning if lower) +} elseif (versioncompare(versionphparray(), $arrayphpminversionwarning) < 0) // Minimum supported (warning if lower) { print 'Error '.$langs->trans("ErrorPHPVersionTooLow", versiontostring($arrayphpminversionwarning)); $checksok = 0; // 0=error, 1=warning -} -else -{ +} else { print 'Ok '.$langs->trans("PHPVersion")." ".versiontostring(versionphparray()); } if (empty($force_install_nophpinfo)) print ' ('.$langs->trans("MoreInformation").')'; @@ -103,9 +100,7 @@ if (!isset($_GET["testget"]) && !isset($_POST["testpost"])) print ' ('.$langs->trans("Recheck").')'; print "
    \n"; $checksok = 0; -} -else -{ +} else { print 'Ok '.$langs->trans("PHPSupportPOSTGETOk")."
    \n"; } @@ -115,9 +110,7 @@ if (!function_exists("session_id")) { print 'Error '.$langs->trans("ErrorPHPDoesNotSupportSessions")."
    \n"; $checksok = 0; -} -else -{ +} else { print 'Ok '.$langs->trans("PHPSupportSessions")."
    \n"; } @@ -128,9 +121,7 @@ if (!function_exists("imagecreate")) $langs->load("errors"); print 'Error '.$langs->trans("ErrorPHPDoesNotSupportGD")."
    \n"; // $checksok = 0; // If ko, just warning. So check must still be 1 (otherwise no way to install) -} -else -{ +} else { print 'Ok '.$langs->trans("PHPSupportGD")."
    \n"; } @@ -141,9 +132,7 @@ if (!function_exists("curl_init")) $langs->load("errors"); print 'Error '.$langs->trans("ErrorPHPDoesNotSupportCurl")."
    \n"; // $checksok = 0; // If ko, just warning. So check must still be 1 (otherwise no way to install) -} -else -{ +} else { print 'Ok '.$langs->trans("PHPSupportCurl")."
    \n"; } @@ -151,9 +140,7 @@ else if (!function_exists("easter_date")) { print 'Error '.$langs->trans("ErrorPHPDoesNotSupportCalendar")."
    \n"; -} -else -{ +} else { print 'Ok '.$langs->trans("PHPSupportCalendar")."
    \n"; } @@ -164,9 +151,7 @@ if (!function_exists("utf8_encode")) $langs->load("errors"); print 'Error '.$langs->trans("ErrorPHPDoesNotSupportUTF8")."
    \n"; // $checksok = 0; // If ko, just warning. So check must still be 1 (otherwise no way to install) -} -else -{ +} else { print 'Ok '.$langs->trans("PHPSupportUTF8")."
    \n"; } @@ -179,9 +164,7 @@ if (empty($_SERVER["SERVER_ADMIN"]) || $_SERVER["SERVER_ADMIN"] != 'doliwamp@loc $langs->load("errors"); print 'Error '.$langs->trans("ErrorPHPDoesNotSupportIntl")."
    \n"; // $checksok = 0; // If ko, just warning. So check must still be 1 (otherwise no way to install) - } - else - { + } else { print 'Ok '.$langs->trans("PHPSupportIntl")."
    \n"; } } @@ -191,9 +174,7 @@ if (!class_exists('ZipArchive')) $langs->load("errors"); print 'Error '.$langs->trans("ErrorPHPDoesNotSupport", "ZIP")."
    \n"; // $checksok = 0; // If ko, just warning. So check must still be 1 (otherwise no way to install) -} -else -{ +} else { print 'Ok '.$langs->trans("PHPSupport", "ZIP")."
    \n"; } @@ -214,9 +195,7 @@ if ($memmaxorig != '') if ($memmax >= $memrequired || $memmax == -1) { print 'Ok '.$langs->trans("PHPMemoryOK", $memmaxorig, $memrequiredorig)."
    \n"; - } - else - { + } else { print 'Warning '.$langs->trans("PHPMemoryTooLow", $memmaxorig, $memrequiredorig)."
    \n"; } } @@ -235,14 +214,10 @@ if (is_readable($conffile) && filesize($conffile) > 8) { // Already installed for all parts (config and database). We can propose upgrade. $allowupgrade = true; - } - else - { + } else { $allowupgrade = false; } -} -else -{ +} else { // If not, we create it dolibarr_install_syslog("check: we try to create conf file '".$conffile."'"); $confexists = 0; @@ -252,9 +227,7 @@ else { // Success dolibarr_install_syslog("check: successfully copied file ".$conffile.".example into ".$conffile); - } - else - { + } else { // If failed, we try to create an empty file dolibarr_install_syslog("check: failed to copy file ".$conffile.".example into ".$conffile.". We try to create it.", LOG_WARNING); @@ -264,8 +237,7 @@ else @fwrite($fp, 'trans("CorrectProblemAndReloadPage", $_SERVER['PHP_SELF'].'?testget=ok'); $err++; -} -else -{ +} else { if (dol_is_dir($conffile)) { print 'Warning '.$langs->trans("ConfFileMustBeAFileNotADir", $conffiletoshow); @@ -299,9 +269,7 @@ else if ($confexists) { print 'Ok '.$langs->trans("ConfFileExists", $conffiletoshow); - } - else - { + } else { print 'Ok '.$langs->trans("ConfFileCouldBeCreated", $conffiletoshow); } print "
    "; @@ -311,14 +279,11 @@ else $allowinstall = 0; } // File exists and can be modified - else - { + else { if ($confexists) { print 'Ok '.$langs->trans("ConfFileExists", $conffiletoshow); - } - else - { + } else { print 'Ok '.$langs->trans("ConfFileCouldBeCreated", $conffiletoshow); } print "
    "; @@ -344,9 +309,7 @@ else { print 'A '.$conffiletoshow.' file exists with a dolibarr_main_document_root to '.$dolibarr_main_document_root.' that seems wrong. Try to fix or remove the '.$conffiletoshow.' file.
    '."\n"; dol_syslog("A '".$conffiletoshow."' file exists with a dolibarr_main_document_root to ".$dolibarr_main_document_root." that seems wrong. Try to fix or remove the '".$conffiletoshow."' file.", LOG_WARNING); - } - else - { + } else { require_once $dolibarr_main_document_root.'/core/lib/admin.lib.php'; // If password is encoded, we decode it @@ -357,8 +320,7 @@ else { $dolibarr_main_db_encrypted_pass = preg_replace('/crypted:/i', '', $dolibarr_main_db_pass); // We need to set this as it is used to know the password was initially crypted $dolibarr_main_db_pass = dol_decode($dolibarr_main_db_encrypted_pass); - } - else $dolibarr_main_db_pass = dol_decode($dolibarr_main_db_encrypted_pass); + } else $dolibarr_main_db_pass = dol_decode($dolibarr_main_db_encrypted_pass); } // $conf already created in inc.php @@ -404,8 +366,7 @@ else //print ' '.img_warning($langs->trans("RunningUpdateProcessMayBeRequired")); print '
    '; print '
    '; - } - else print "
    \n"; + } else print "
    \n"; //print $langs->trans("InstallEasy")." "; print '

    '.$langs->trans("ChooseYourSetupMode").'

    '; @@ -430,7 +391,7 @@ else { $choice .= '
    '; //print $langs->trans("InstallChoiceRecommanded",DOL_VERSION,$conf->global->MAIN_VERSION_LAST_UPGRADE); - $choice .= '
    '.$langs->trans("InstallChoiceSuggested").'
    '; + $choice .= '
    '.$langs->trans("InstallChoiceSuggested").'
    '; // Ok '; } @@ -439,9 +400,7 @@ else if ($allowinstall) { $choice .= ''.$langs->trans("Start").''; - } - else - { + } else { $choice .= ($foundrecommandedchoice ? '' : '').$langs->trans("InstallNotAllowed").($foundrecommandedchoice ? '' : ''); } $choice .= ''."\n"; @@ -479,7 +438,8 @@ else array('from'=>'8.0.0', 'to'=>'9.0.0'), array('from'=>'9.0.0', 'to'=>'10.0.0'), array('from'=>'10.0.0', 'to'=>'11.0.0'), - array('from'=>'11.0.0', 'to'=>'12.0.0') + array('from'=>'11.0.0', 'to'=>'12.0.0'), + array('from'=>'12.0.0', 'to'=>'13.0.0') ); $count = 0; @@ -516,8 +476,7 @@ else $foundrecommandedchoice = 1; // To show only once $recommended_choice = true; } - } - else { + } else { // We cannot recommend a choice. // A version of install may be known, but we need last upgrade. } @@ -534,7 +493,7 @@ else $choice .= '
    '; //print $langs->trans("InstallChoiceRecommanded",DOL_VERSION,$conf->global->MAIN_VERSION_LAST_UPGRADE); $choice .= '
    '; - $choice .= '
    '.$langs->trans("InstallChoiceSuggested").'
    '; + $choice .= '
    '.$langs->trans("InstallChoiceSuggested").'
    '; if ($count < count($migarray)) // There are other choices after { print $langs->trans("MigrateIsDoneStepByStep", DOL_VERSION); @@ -558,14 +517,10 @@ else if ($disabled) { $choice .= ''.$langs->trans("NotYetAvailable").''; - } - else - { + } else { $choice .= ''.$langs->trans("Start").''; } - } - else - { + } else { $choice .= $langs->trans("NotAvailable"); } $choice .= ''; diff --git a/htdocs/install/default.css b/htdocs/install/default.css index f0e51caecab..e469a3bbb80 100644 --- a/htdocs/install/default.css +++ b/htdocs/install/default.css @@ -53,7 +53,7 @@ div.titre { } span.titre { - font-weight: bold; + /* font-weight: bold; */ background: #FFFFFF; color: rgb(0,113,121); border: 1px solid #bbb; @@ -361,7 +361,7 @@ a.button:link,a.button:visited,a.button:active { background: #ddd; color: #fff; /* border: 1px solid #e0e0e0; */ - padding: 0.3em 0.7em; + padding: 0.5em 0.7em; margin: 0 0.5em; -moz-border-radius: 3px; -webkit-border-radius: 3px; @@ -374,6 +374,13 @@ a.button:hover { text-decoration:none; } +.suggestedchoice { + color: rgba(70, 3, 62, 0.6) !important; + /* background-color: rgba(70, 3, 62, 0.3); */ + padding: 2px 4px; + border-radius: 4px; + white-space: nowrap; +} .choiceselected { background-color: #f4f6f4; background-repeat: repeat-x; diff --git a/htdocs/install/inc.php b/htdocs/install/inc.php index 3a3adc2322c..ff983618c41 100644 --- a/htdocs/install/inc.php +++ b/htdocs/install/inc.php @@ -123,14 +123,10 @@ if (!defined('DONOTLOADCONF') && file_exists($conffile) && filesize($conffile) > $includeconferror = 'ErrorBadValueForDolibarrMainDBType'; } } - } - else - { + } else { $includeconferror = 'ErrorBadValueForDolibarrMainDocumentRoot'; } - } - else - { + } else { $includeconferror = 'ErrorBadFormatForConfFile'; } } @@ -209,9 +205,7 @@ if (@file_exists($lockfile)) print ''; print $langs->trans("ClickHereToGoToApp"); print ''; - } - else - { + } else { print 'If you always reach this page, you must remove install.lock file manually.
    '; } exit; @@ -364,9 +358,7 @@ function pHeader($subtitle, $next, $action = 'set', $param = '', $forcejqueryurl { $jQueryCustomPath = $forcejqueryurl; $jQueryUiCustomPath = $forcejqueryurl; - } - else - { + } else { $jQueryCustomPath = (defined('JS_JQUERY') && constant('JS_JQUERY')) ? JS_JQUERY : false; $jQueryUiCustomPath = (defined('JS_JQUERY_UI') && constant('JS_JQUERY_UI')) ? JS_JQUERY_UI : false; } @@ -547,11 +539,9 @@ function detect_dolibarr_main_url_root() $proto = ((!empty($_SERVER["HTTPS"]) && $_SERVER["HTTPS"] == 'on') || (!empty($_SERVER['SERVER_PORT']) && $_SERVER['SERVER_PORT'] == 443)) ? 'https' : 'http'; if (!empty($_SERVER["HTTP_HOST"])) { $serverport = $_SERVER["HTTP_HOST"]; - } - elseif (!empty($_SERVER["SERVER_NAME"])) { + } elseif (!empty($_SERVER["SERVER_NAME"])) { $serverport = $_SERVER["SERVER_NAME"]; - } - else { + } else { $serverport = 'localhost'; } $dolibarr_main_url_root = $proto."://".$serverport.$_SERVER["SCRIPT_NAME"]; diff --git a/htdocs/install/lib/repair.lib.php b/htdocs/install/lib/repair.lib.php index 9e58ac4230f..19b91bb0a26 100644 --- a/htdocs/install/lib/repair.lib.php +++ b/htdocs/install/lib/repair.lib.php @@ -40,8 +40,7 @@ function checkElementExist($id, $table) $num = $db->num_rows($resql); if ($num > 0) return true; else return false; - } - else return true; // for security + } else return true; // for security } /** @@ -137,8 +136,7 @@ function clean_data_ecm_directories() if (!$resqlupdate) dol_print_error($db, 'Failed to update'); } } - } - else dol_print_error($db, 'Failed to run request'); + } else dol_print_error($db, 'Failed to run request'); return; } 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 bc4b562711b..2a7a8963e9f 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 @@ -582,3 +582,14 @@ create table llx_commande_fournisseur_dispatch_extrafields ALTER TABLE llx_commande_fournisseur_dispatch_extrafields ADD INDEX idx_commande_fournisseur_dispatch_extrafields (fk_object); + +create table llx_facturedet_rec_extrafields +( + rowid integer AUTO_INCREMENT PRIMARY KEY, + tms timestamp, + fk_object integer NOT NULL, -- object id + import_key varchar(14) -- import key +)ENGINE=innodb; + +ALTER TABLE llx_facturedet_rec_extrafields ADD INDEX idx_facturedet_rec_extrafields (fk_object); + diff --git a/htdocs/install/mysql/migration/11.0.0-12.0.0.sql b/htdocs/install/mysql/migration/11.0.0-12.0.0.sql index 681731e27a5..5e673d97611 100644 --- a/htdocs/install/mysql/migration/11.0.0-12.0.0.sql +++ b/htdocs/install/mysql/migration/11.0.0-12.0.0.sql @@ -30,6 +30,9 @@ -- Missing in v11 +UPDATE llx_c_units set scale = 3600 where code = 'H' and unit_type = 'time'; +UPDATE llx_c_units set scale = 86400 where code = 'D' and unit_type = 'time'; + create table llx_commande_fournisseur_dispatch_extrafields ( rowid integer AUTO_INCREMENT PRIMARY KEY, @@ -42,6 +45,29 @@ ALTER TABLE llx_commande_fournisseur_dispatch_extrafields ADD INDEX idx_commande UPDATE llx_accounting_system SET fk_country = NULL, active = 0 WHERE pcg_version = 'SYSCOHADA'; +create table llx_c_shipment_package_type +( + rowid integer AUTO_INCREMENT PRIMARY KEY, + label varchar(50) NOT NULL, -- Short name + description varchar(255), -- Description + active integer DEFAULT 1 NOT NULL, -- Active or not + entity integer DEFAULT 1 NOT NULL -- Multi company id +)ENGINE=innodb; + +create table llx_facturedet_rec_extrafields +( + rowid integer AUTO_INCREMENT PRIMARY KEY, + tms timestamp, + fk_object integer NOT NULL, -- object id + import_key varchar(14) -- import key +)ENGINE=innodb; + +ALTER TABLE llx_facturedet_rec_extrafields ADD INDEX idx_facturedet_rec_extrafields (fk_object); + +ALTER TABLE llx_facture_rec MODIFY COLUMN titre varchar(200) NOT NULL; + +-- This var is per entity now, so we remove const if global if exists +delete from llx_const where name = 'PROJECT_HIDE_TASKS' and entity = 0; -- For v12 @@ -50,6 +76,8 @@ UPDATE llx_accounting_system SET fk_country = NULL, active = 0 WHERE pcg_version -- VMYSQL4.1 DROP INDEX ix_fk_product_stock on llx_product_batch; -- VPGSQL8.2 DROP INDEX ix_fk_product_stock +ALTER TABLE llx_actioncomm DROP COLUMN punctual; + DELETE FROM llx_menu where module='supplier_proposal'; UPDATE llx_website SET lang = 'en' WHERE lang like 'en_%'; @@ -226,9 +254,11 @@ ALTER TABLE llx_blockedlog ADD COLUMN object_version varchar(32) DEFAULT ''; ALTER TABLE llx_product_lot MODIFY COLUMN batch varchar(128); ALTER TABLE llx_product_batch MODIFY COLUMN batch varchar(128); +ALTER TABLE llx_expeditiondet_batch MODIFY COLUMN batch varchar(128); ALTER TABLE llx_commande_fournisseur_dispatch MODIFY COLUMN batch varchar(128); ALTER TABLE llx_stock_mouvement MODIFY COLUMN batch varchar(128); ALTER TABLE llx_mrp_production MODIFY COLUMN batch varchar(128); +ALTER TABLE llx_mrp_production MODIFY qty real NOT NULL DEFAULT 1; create table llx_categorie_website_page ( @@ -250,3 +280,18 @@ ALTER TABLE llx_categorie ADD COLUMN fk_user_creat integer; ALTER TABLE llx_categorie ADD COLUMN fk_user_modif integer; ALTER TABLE llx_commandedet ADD CONSTRAINT fk_commandedet_fk_commandefourndet FOREIGN KEY (fk_commandefourndet) REFERENCES llx_commande_fournisseurdet (rowid); + + +-- VMYSQL4.3 ALTER TABLE llx_prelevement_facture_demande MODIFY COLUMN fk_facture INTEGER NULL; +-- VPGSQL8.2 ALTER TABLE llx_prelevement_facture_demande ALTER COLUMN fk_facture DROP NOT NULL; +ALTER TABLE llx_prelevement_facture_demande ADD COLUMN fk_facture_fourn INTEGER NULL; + +-- VMYSQL4.3 ALTER TABLE llx_prelevement_facture MODIFY COLUMN fk_facture INTEGER NULL; +-- VPGSQL8.2 ALTER TABLE llx_prelevement_facture ALTER COLUMN fk_facture DROP NOT NULL; +ALTER TABLE llx_prelevement_facture ADD COLUMN fk_facture_fourn INTEGER NULL; + +ALTER TABLE llx_menu MODIFY COLUMN module varchar(255); + +UPDATE llx_actioncomm SET fk_action = 50 where fk_action = 40 AND code = 'TICKET_MSG'; + +ALTER TABLE llx_emailcollector_emailcollector ADD COLUMN hostcharset varchar(16) DEFAULT 'UTF-8'; diff --git a/htdocs/install/mysql/migration/12.0.0-13.0.0.sql b/htdocs/install/mysql/migration/12.0.0-13.0.0.sql new file mode 100644 index 00000000000..a6a1870e807 --- /dev/null +++ b/htdocs/install/mysql/migration/12.0.0-13.0.0.sql @@ -0,0 +1,39 @@ +-- +-- Be carefull to requests order. +-- This file must be loaded by calling /install/index.php page +-- when current version is 13.0.0 or higher. +-- +-- To restrict request to Mysql version x.y minimum use -- VMYSQLx.y +-- To restrict request to Pgsql version x.y minimum use -- VPGSQLx.y +-- To rename a table: ALTER TABLE llx_table RENAME TO llx_table_new; +-- To add a column: ALTER TABLE llx_table ADD COLUMN newcol varchar(60) NOT NULL DEFAULT '0' AFTER existingcol; +-- To rename a column: ALTER TABLE llx_table CHANGE COLUMN oldname newname varchar(60); +-- To drop a column: ALTER TABLE llx_table DROP COLUMN oldname; +-- To change type of field: ALTER TABLE llx_table MODIFY COLUMN name varchar(60); +-- To drop a foreign key: ALTER TABLE llx_table DROP FOREIGN KEY fk_name; +-- To create a unique index ALTER TABLE llx_table ADD UNIQUE INDEX uk_table_field (field); +-- To drop an index: -- VMYSQL4.1 DROP INDEX nomindex on llx_table +-- To drop an index: -- VPGSQL8.2 DROP INDEX nomindex +-- To make pk to be auto increment (mysql): -- VMYSQL4.3 ALTER TABLE llx_table CHANGE COLUMN rowid rowid INTEGER NOT NULL AUTO_INCREMENT; +-- To make pk to be auto increment (postgres): +-- -- VPGSQL8.2 CREATE SEQUENCE llx_table_rowid_seq OWNED BY llx_table.rowid; +-- -- VPGSQL8.2 ALTER TABLE llx_table ADD PRIMARY KEY (rowid); +-- -- VPGSQL8.2 ALTER TABLE llx_table ALTER COLUMN rowid SET DEFAULT nextval('llx_table_rowid_seq'); +-- -- VPGSQL8.2 SELECT setval('llx_table_rowid_seq', MAX(rowid)) FROM llx_table; +-- To set a field as NULL: -- VMYSQL4.3 ALTER TABLE llx_table MODIFY COLUMN name varchar(60) NULL; +-- To set a field as NULL: -- VPGSQL8.2 ALTER TABLE llx_table ALTER COLUMN name DROP NOT NULL; +-- To set a field as NOT NULL: -- VMYSQL4.3 ALTER TABLE llx_table MODIFY COLUMN name varchar(60) NOT NULL; +-- To set a field as NOT NULL: -- VPGSQL8.2 ALTER TABLE llx_table ALTER COLUMN name SET NOT NULL; +-- To set a field as default NULL: -- VPGSQL8.2 ALTER TABLE llx_table ALTER COLUMN name SET DEFAULT NULL; +-- Note: fields with type BLOB/TEXT can't have default value. + + +-- Missing in v12 + + +-- For v13 + +ALTER TABLE llx_commande MODIFY COLUMN date_livraison DATETIME; + +ALTER TABLE llx_website ADD COLUMN position integer DEFAULT 0; + diff --git a/htdocs/install/mysql/migration/8.0.0-9.0.0.sql b/htdocs/install/mysql/migration/8.0.0-9.0.0.sql index 61f4dc544ba..b7fe131c3f9 100644 --- a/htdocs/install/mysql/migration/8.0.0-9.0.0.sql +++ b/htdocs/install/mysql/migration/8.0.0-9.0.0.sql @@ -200,7 +200,7 @@ CREATE TABLE llx_emailcollector_emailcollectorfilter( rowid integer AUTO_INCREMENT PRIMARY KEY NOT NULL, fk_emailcollector INTEGER NOT NULL, type varchar(128) NOT NULL, - rulevalue varchar(255) NULL, + rulevalue varchar(128) NULL, date_creation datetime NOT NULL, tms timestamp NOT NULL, fk_user_creat integer NOT NULL, diff --git a/htdocs/install/mysql/migration/repair.sql b/htdocs/install/mysql/migration/repair.sql index 4297c5f324d..7546790b151 100644 --- a/htdocs/install/mysql/migration/repair.sql +++ b/htdocs/install/mysql/migration/repair.sql @@ -350,9 +350,14 @@ UPDATE llx_c_lead_status set code = 'WON' where code = 'WIN'; -- To replace amount on all invoice and lines when forgetting to apply a 20% vat -- update llx_facturedet set tva_tx = 20 where tva_tx = 0; -- update llx_facturedet set total_ht = round(total_ttc / 1.2, 5) where total_ht = total_ttc; --- update llx_facturedet set total_tva = total_ttc - total_ht where total_vat = 0; -- update llx_facture set total = round(total_ttc / 1.2, 5) where total_ht = total_ttc; --- update llx_facture set tva = total_ttc - total where tva = 0; + +-- To fix bad total of price excluding tax, vat and price tax including tax. +-- select * from llx_facture where tva <> (total_ttc - total - localtax1 - localtax2 - revenuestamp); +-- update llx_facture set tva = (total_ttc - total - localtax1 - localtax2 - revenuestamp) where tva <> (total_ttc - total - localtax1 - localtax2 - revenuestamp); +-- select * from llx_facturedet where total_tva <> (total_ttc - total_ht - total_localtax1 - total_localtax2); +-- update llx_facturedet set total_tva = (total_ttc - total_ht - total_localtax1 - total_localtax2) where total_tva <> (total_ttc - total_ht - total_localtax1 - total_localtax2); + -- To insert elements into a category -- Search idcategory: select rowid from llx_categorie where type=0 and ref like '%xxx%' @@ -486,8 +491,13 @@ UPDATE llx_accounting_bookkeeping set date_creation = tms where date_creation IS -- UPDATE llx_facturedet_rec set label = NULL WHERE label IS NOT NULL; + UPDATE llx_facturedet SET situation_percent = 100 WHERE situation_percent IS NULL AND fk_prev_id IS NULL; +-- Test inconsistency of data into situation invoices: If it differs, it may be the total_ht that is wrong and situation_percent that is good. +-- select f.rowid, f.type, qty, subprice, situation_percent, fd.total_ht, fd.total_ttc, fd.total_tva, fd.multicurrency_total_ht, fd.multicurrency_total_tva, fd.multicurrency_total_ttc, (situation_percent / 100 * subprice * qty * (1 - (fd.remise_percent / 100))) +-- from llx_facturedet as fd, llx_facture as f where fd.fk_facture = f.rowid AND (fd.total_ht - situation_percent / 100 * subprice * qty * (1 - (fd.remise_percent / 100))) > 0.01 and f.type = 5; + -- Note to make all deposit as payed when there is already a discount generated from it. --drop table tmp_invoice_deposit_mark_as_available; @@ -496,6 +506,7 @@ UPDATE llx_facturedet SET situation_percent = 100 WHERE situation_percent IS NUL + -- Note to migrate from old counter aquarium to new one -- drop table tmp; -- create table tmp select rowid, code_client, concat(substr(code_client, 1, 6),'-0',substr(code_client, 8, 5)) as code_client2 from llx_societe where code_client like 'CU____-____'; diff --git a/htdocs/install/mysql/tables/llx_actioncomm.sql b/htdocs/install/mysql/tables/llx_actioncomm.sql index 1cd3c9cf27e..8c50964eb59 100644 --- a/htdocs/install/mysql/tables/llx_actioncomm.sql +++ b/htdocs/install/mysql/tables/llx_actioncomm.sql @@ -48,7 +48,6 @@ create table llx_actioncomm priority smallint, -- priority (ical standard) visibility varchar(12) DEFAULT 'default', -- visibility (ical standard) - 'default', 'public', 'private', 'confidential' fulldayevent smallint NOT NULL default 0, -- full day (ical standard) - punctual smallint NOT NULL default 1, -- deprecated. milestone is event with date start (datep) = date end (datep2) percent smallint NOT NULL default 0, location varchar(128), durationp real, -- planed duration diff --git a/htdocs/install/mysql/tables/llx_c_shipment_package_type b/htdocs/install/mysql/tables/llx_c_shipment_package_type.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_shipment_package_type rename to htdocs/install/mysql/tables/llx_c_shipment_package_type.sql diff --git a/htdocs/install/mysql/tables/llx_commande.sql b/htdocs/install/mysql/tables/llx_commande.sql index c6b9049a64f..aa237383452 100644 --- a/htdocs/install/mysql/tables/llx_commande.sql +++ b/htdocs/install/mysql/tables/llx_commande.sql @@ -58,14 +58,14 @@ create table llx_commande last_main_doc varchar(255), -- relative filepath+filename of last main generated document module_source varchar(32), -- name of module when order generated by a dedicated module (POS, ...) - pos_source varchar(32), -- name of POS station when order is generated by a POS module + pos_source varchar(32), -- numero of POS terminal when order is generated by a POS module, IDsession@IDwebsite when order is generated for a website basket. facture tinyint default 0, fk_account integer, -- bank account fk_currency varchar(3), -- currency code fk_cond_reglement integer, -- condition de reglement fk_mode_reglement integer, -- mode de reglement - - date_livraison date default NULL, + + date_livraison datetime default NULL, fk_shipping_method integer, -- shipping method id fk_warehouse integer default NULL, fk_availability integer NULL, diff --git a/htdocs/install/mysql/tables/llx_emailcollector_emailcollector.sql b/htdocs/install/mysql/tables/llx_emailcollector_emailcollector.sql index 10f3e4f8b9b..87581f418e8 100644 --- a/htdocs/install/mysql/tables/llx_emailcollector_emailcollector.sql +++ b/htdocs/install/mysql/tables/llx_emailcollector_emailcollector.sql @@ -21,7 +21,8 @@ CREATE TABLE llx_emailcollector_emailcollector( ref varchar(128) NOT NULL, label varchar(255), description text, - host varchar(255), + host varchar(255), + hostcharset varchar(16) DEFAULT 'UTF-8', login varchar(128), password varchar(128), source_directory varchar(255) NOT NULL, diff --git a/htdocs/install/mysql/tables/llx_facture.sql b/htdocs/install/mysql/tables/llx_facture.sql index 5a2d5464cfc..429095e1111 100644 --- a/htdocs/install/mysql/tables/llx_facture.sql +++ b/htdocs/install/mysql/tables/llx_facture.sql @@ -65,7 +65,7 @@ create table llx_facture fk_user_closing integer, -- user closing module_source varchar(32), -- name of module when invoice generated by a dedicated module (POS, ...) - pos_source varchar(32), -- name of POS station when invoice is generated by a POS module + pos_source varchar(32), -- numero of POS terminal when order is generated by a POS module, IDsession@IDwebsite when order is generated for a website basket. fk_fac_rec_source integer, -- facture rec source fk_facture_source integer, -- facture origin if credit notes or replacement invoice fk_projet integer DEFAULT NULL, -- project invoice is linked to diff --git a/htdocs/install/mysql/tables/llx_facture_rec.sql b/htdocs/install/mysql/tables/llx_facture_rec.sql index d0e4486262a..220c1fa608a 100644 --- a/htdocs/install/mysql/tables/llx_facture_rec.sql +++ b/htdocs/install/mysql/tables/llx_facture_rec.sql @@ -22,7 +22,7 @@ create table llx_facture_rec ( rowid integer AUTO_INCREMENT PRIMARY KEY, - titre varchar(100) NOT NULL, + titre varchar(200) NOT NULL, entity integer DEFAULT 1 NOT NULL, -- multi company id fk_soc integer NOT NULL, datec datetime, -- date de creation diff --git a/htdocs/install/mysql/tables/llx_menu.sql b/htdocs/install/mysql/tables/llx_menu.sql index 59bb96297d7..cb279cb5c56 100644 --- a/htdocs/install/mysql/tables/llx_menu.sql +++ b/htdocs/install/mysql/tables/llx_menu.sql @@ -25,7 +25,7 @@ CREATE TABLE llx_menu rowid integer AUTO_INCREMENT NOT NULL PRIMARY KEY, menu_handler varchar(16) NOT NULL, -- Menu handler name entity integer DEFAULT 1 NOT NULL, -- Multi company id - module varchar(64), -- Module name if record is added by a module + module varchar(255), -- Module name if record is added by a module type varchar(4) NOT NULL, -- Menu top or left mainmenu varchar(100) NOT NULL, -- Name family/module for top menu (home, companies, ...) leftmenu varchar(100) NULL, -- Name family/module for left menu (setup, info, ...) diff --git a/htdocs/install/mysql/tables/llx_prelevement_bons.sql b/htdocs/install/mysql/tables/llx_prelevement_bons.sql index 2a8fd114440..e7e0b9a89f1 100644 --- a/htdocs/install/mysql/tables/llx_prelevement_bons.sql +++ b/htdocs/install/mysql/tables/llx_prelevement_bons.sql @@ -18,10 +18,10 @@ -- =================================================================== -- --- Bons de prelevement +-- Direct debit or credit orders -- --- statut 1 : transmis a la banque --- statut 2 : credite +-- statut 1 : sent to the bank +-- statut 2 : paid -- create table llx_prelevement_bons ( diff --git a/htdocs/install/mysql/tables/llx_prelevement_facture.sql b/htdocs/install/mysql/tables/llx_prelevement_facture.sql index 2524f854a9c..dbe2cb85f84 100644 --- a/htdocs/install/mysql/tables/llx_prelevement_facture.sql +++ b/htdocs/install/mysql/tables/llx_prelevement_facture.sql @@ -19,7 +19,8 @@ create table llx_prelevement_facture ( rowid integer AUTO_INCREMENT PRIMARY KEY, - fk_facture integer NOT NULL, + fk_facture integer NULL, + fk_facture_foun integer NULL, fk_prelevement_lignes integer NOT NULL )ENGINE=innodb; diff --git a/htdocs/install/mysql/tables/llx_prelevement_facture_demande.sql b/htdocs/install/mysql/tables/llx_prelevement_facture_demande.sql index b1f625de872..4e1f37c6d3f 100644 --- a/htdocs/install/mysql/tables/llx_prelevement_facture_demande.sql +++ b/htdocs/install/mysql/tables/llx_prelevement_facture_demande.sql @@ -21,7 +21,8 @@ create table llx_prelevement_facture_demande ( rowid integer AUTO_INCREMENT PRIMARY KEY, entity integer DEFAULT 1 NOT NULL, - fk_facture integer NOT NULL, + fk_facture integer NULL, + fk_facture_fourn integer NULL, sourcetype varchar(32), amount double(24,8) NOT NULL, date_demande datetime NOT NULL, diff --git a/htdocs/install/mysql/tables/llx_societe_account.sql b/htdocs/install/mysql/tables/llx_societe_account.sql index feffc7c9bd6..6a78a9a7839 100644 --- a/htdocs/install/mysql/tables/llx_societe_account.sql +++ b/htdocs/install/mysql/tables/llx_societe_account.sql @@ -20,15 +20,15 @@ CREATE TABLE llx_societe_account( -- BEGIN MODULEBUILDER FIELDS rowid integer AUTO_INCREMENT PRIMARY KEY NOT NULL, entity integer DEFAULT 1, - key_account varchar(128), -- the id of third party in external web site (for site_account if site_account defined) login varchar(128) NOT NULL, pass_encoding varchar(24), pass_crypted varchar(128), pass_temp varchar(128), -- temporary password when asked for forget password fk_soc integer, + fk_website integer, -- id of local web site site varchar(128), -- name of external web site site_account varchar(128), -- a key to identify the account on external web site - fk_website integer, -- id of local web site + key_account varchar(128), -- the id of third party in external web site (for site_account if site_account defined) note_private text, date_last_login datetime, date_previous_login datetime, diff --git a/htdocs/install/mysql/tables/llx_website.sql b/htdocs/install/mysql/tables/llx_website.sql index 743d4ec9ca8..717052f795c 100644 --- a/htdocs/install/mysql/tables/llx_website.sql +++ b/htdocs/install/mysql/tables/llx_website.sql @@ -35,6 +35,7 @@ CREATE TABLE llx_website fk_user_creat integer, fk_user_modif integer, date_creation datetime, + position integer DEFAULT 0, tms timestamp, import_key varchar(14) -- import key ) ENGINE=innodb; diff --git a/htdocs/install/repair.php b/htdocs/install/repair.php index d129fbeb1e4..d427e529a8d 100644 --- a/htdocs/install/repair.php +++ b/htdocs/install/repair.php @@ -99,8 +99,7 @@ if (preg_match('/crypted:/i', $dolibarr_main_db_pass) || !empty($dolibarr_main_d $dolibarr_main_db_pass = preg_replace('/crypted:/i', '', $dolibarr_main_db_pass); $dolibarr_main_db_pass = dol_decode($dolibarr_main_db_pass); $dolibarr_main_db_encrypted_pass = $dolibarr_main_db_pass; // We need to set this as it is used to know the password was initially crypted - } - else $dolibarr_main_db_pass = dol_decode($dolibarr_main_db_encrypted_pass); + } else $dolibarr_main_db_pass = dol_decode($dolibarr_main_db_encrypted_pass); } // $conf is already instancied inside inc.php @@ -123,9 +122,7 @@ if ($db->connected) print $langs->trans("ServerConnection")." : $dolibarr_main_db_host".$langs->trans("OK").""; dolibarr_install_syslog("repair: ".$langs->transnoentities("ServerConnection").": ".$dolibarr_main_db_host.$langs->transnoentities("OK")); $ok = 1; -} -else -{ +} else { print "".$langs->trans("ErrorFailedToConnectToDatabase", $dolibarr_main_db_name)."".$langs->transnoentities("Error").""; dolibarr_install_syslog("repair: ".$langs->transnoentities("ErrorFailedToConnectToDatabase", $dolibarr_main_db_name)); $ok = 0; @@ -139,9 +136,7 @@ if ($ok) print $langs->trans("DatabaseConnection")." : ".$dolibarr_main_db_name."".$langs->trans("OK").""; dolibarr_install_syslog("repair: database connection successful: ".$dolibarr_main_db_name); $ok = 1; - } - else - { + } else { print "".$langs->trans("ErrorFailedToConnectToDatabase", $dolibarr_main_db_name)."".$langs->trans("Error").""; dolibarr_install_syslog("repair: ".$langs->transnoentities("ErrorFailedToConnectToDatabase", $dolibarr_main_db_name)); $ok = 0; @@ -256,9 +251,7 @@ if ($ok && GETPOST('standard', 'alpha')) { $fieldname = $obj->Field; $fieldtype = $obj->Type; - } - else - { + } else { $fieldname = isset($obj->Key) ? $obj->Key : $obj->attname; $fieldtype = isset($obj->Type) ? $obj->Type : 'varchar'; } @@ -285,7 +278,7 @@ if ($ok && GETPOST('standard', 'alpha')) } elseif ($type == 'phone') { $typedb = 'varchar'; $lengthdb = '20'; - }elseif ($type == 'mail') { + } elseif ($type == 'mail') { $typedb = 'varchar'; $lengthdb = '128'; } elseif (($type == 'select') || ($type == 'sellist') || ($type == 'radio') || ($type == 'checkbox') || ($type == 'chkbxlst')) { @@ -317,23 +310,17 @@ if ($ok && GETPOST('standard', 'alpha')) if ($result < 0) { print "KO ".$db->lasterror."
    \n"; - } - else - { + } else { print "OK
    \n"; } - } - else - { + } else { print ' - Mode test, no column added.'; } } } print " \n"; - } - else - { + } else { dol_print_error($db); } } @@ -398,14 +385,10 @@ if ($ok && GETPOST('standard', 'alpha')) $db->query($sqldelete); print 'Widget '.$obj->name.' set in entity '.$obj->entity.' with value '.$obj->value.' -> Module '.$name.' not enabled in entity '.$obj->entity.', we delete record'; - } - else - { + } else { print 'Widget '.$obj->name.' set in entity '.$obj->entity.' with value '.$obj->value.' -> Module '.$name.' not enabled in entity '.$obj->entity.', we should delete record (not done, mode test)'; } - } - else - { + } else { //print 'Constant '.$obj->name.' set in entity '.$obj->entity.' with value '.$obj->value.' -> Module found in entity '.$obj->entity.', we keep record'; } } @@ -471,14 +454,10 @@ if ($ok && GETPOST('standard', 'alpha')) $db->query($sqldeleteb); print 'Constant '.$obj->file.' set in boxes_def for entity '.$obj->entity.' but MAIN_MODULE_'.strtoupper($module).' not defined in entity '.$obj->entity.', we delete record'; - } - else - { + } else { print 'Constant '.$obj->file.' set in boxes_def for entity '.$obj->entity.' but MAIN_MODULE_'.strtoupper($module).' not defined in entity '.$obj->entity.', we should delete record (not done, mode test)'; } - } - else - { + } else { //print 'Constant '.$obj->name.' set in entity '.$obj->entity.' with value '.$obj->value.' -> Module found in entity '.$obj->entity.', we keep record'; } } @@ -566,9 +545,7 @@ if ($ok && GETPOST('restore_thirdparties_logos')) $i++; } - } - else - { + } else { $ok = 0; dol_print_error($db); } @@ -670,9 +647,7 @@ if ($ok && GETPOST('restore_user_pictures', 'alpha')) $i++; } - } - else - { + } else { $ok = 0; dol_print_error($db); } @@ -729,9 +704,7 @@ if ($ok && GETPOST('rebuild_product_thumbs', 'alpha')) $i++; } - } - else - { + } else { $ok = 0; dol_print_error($db); } @@ -815,17 +788,11 @@ if ($ok && GETPOST('clean_menus', 'alpha')) { $error++; dol_print_error($db); - } - else - print ' - Cleaned'; - } - else - { + } else print ' - Cleaned'; + } else { print ' - Canceled (test mode)'; } - } - else - { + } else { print ' - Module condition '.$modulecond.' is ok, we do nothing.'; } } @@ -839,14 +806,10 @@ if ($ok && GETPOST('clean_menus', 'alpha')) $i++; } - } - else - { + } else { print 'No menu entries of disabled menus found'; } - } - else - { + } else { dol_print_error($db); } } @@ -884,33 +847,27 @@ if ($ok && GETPOST('clean_orphelin_dir', 'alpha')) { include_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php'; $object_instance = new Facture($db); - } - elseif ($modulepart == 'invoice_supplier') + } elseif ($modulepart == 'invoice_supplier') { include_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php'; $object_instance = new FactureFournisseur($db); - } - elseif ($modulepart == 'propal') + } elseif ($modulepart == 'propal') { include_once DOL_DOCUMENT_ROOT.'/comm/propal/class/propal.class.php'; $object_instance = new Propal($db); - } - elseif ($modulepart == 'order') + } elseif ($modulepart == 'order') { include_once DOL_DOCUMENT_ROOT.'/commande/class/commande.class.php'; $object_instance = new Commande($db); - } - elseif ($modulepart == 'order_supplier') + } elseif ($modulepart == 'order_supplier') { include_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.commande.class.php'; $object_instance = new CommandeFournisseur($db); - } - elseif ($modulepart == 'contract') + } elseif ($modulepart == 'contract') { include_once DOL_DOCUMENT_ROOT.'/contrat/class/contrat.class.php'; $object_instance = new Contrat($db); - } - elseif ($modulepart == 'tax') + } elseif ($modulepart == 'tax') { include_once DOL_DOCUMENT_ROOT.'/compta/sociales/class/chargesociales.class.php'; $object_instance = new ChargeSociales($db); @@ -969,8 +926,7 @@ if ($ok && GETPOST('clean_orphelin_dir', 'alpha')) dol_delete_dir(dirname($file['fullname']), 1); } print ""; - } - elseif ($result < 0) print 'Error in '.get_class($object_instance).'.fetch of id'.$id.' ref='.$ref.', result='.$result.'
    '; + } elseif ($result < 0) print 'Error in '.get_class($object_instance).'.fetch of id'.$id.' ref='.$ref.', result='.$result.'
    '; } } } @@ -1048,9 +1004,7 @@ if ($ok && GETPOST('clean_product_stock_batch', 'alpha')) $error++; dol_print_error($db); } - } - else - { + } else { $error++; dol_print_error($db); } @@ -1065,14 +1019,10 @@ if ($ok && GETPOST('clean_product_stock_batch', 'alpha')) $i++; } - } - else - { + } else { print 'Nothing to do'; } - } - else - { + } else { dol_print_error($db); } } @@ -1155,14 +1105,10 @@ if ($ok && GETPOST('set_empty_time_spent_amount', 'alpha')) $i++; } - } - else - { + } else { print 'No time spent with empty line on users with a hourly rate defined'; } - } - else - { + } else { dol_print_error($db); } } @@ -1230,8 +1176,7 @@ if ($ok && GETPOST('force_disable_of_modules_not_found', 'alpha')) //var_dump($key.' - '.$value.' - '.$reloffile); try { $result = dol_buildpath($reloffile, 0, 2); - } - catch (Exception $e) + } catch (Exception $e) { // No catch yet $result = 'found'; // If error, we force lke if we found to avoid any deletion @@ -1256,17 +1201,11 @@ if ($ok && GETPOST('force_disable_of_modules_not_found', 'alpha')) { $error++; dol_print_error($db); - } - else - print ' - Cleaned'; - } - else - { + } else print ' - Cleaned'; + } else { print ' - Canceled (test mode)'; } - } - else - { + } else { print ' - File of '.$key.' ('.$reloffile.') found, we do nothing.'; } } @@ -1281,14 +1220,10 @@ if ($ok && GETPOST('force_disable_of_modules_not_found', 'alpha')) $i++; } - } - else - { + } else { print 'No active module with missing files found by searching on MAIN_MODULE_(.*)_'.strtoupper($key).''; } - } - else - { + } else { dol_print_error($db); } } @@ -1333,14 +1268,10 @@ if ($ok && GETPOST('clean_perm_table', 'alpha')) } $i++; } - } - else - { + } else { print 'No lines of a disabled external module (with id > 100000) found into table rights_def'; } - } - else - { + } else { dol_print_error($db); } } @@ -1379,8 +1310,7 @@ if ($ok && GETPOST('force_utf8_on_tables', 'alpha')) { $resql = $db->query($sql); print ' - Done ('.($resql ? 'OK' : 'KO').')'; - } - else print ' - Disabled'; + } else print ' - Disabled'; print ''; } @@ -1391,9 +1321,7 @@ if ($ok && GETPOST('force_utf8_on_tables', 'alpha')) print ''; $resql = $db->query($sql); } - } - else - { + } else { print 'Not available with database type '.$db->type.''; } } @@ -1440,9 +1368,9 @@ if ($ok && GETPOST('repair_link_dispatch_lines_supplier_order_lines')) { exit; } while ($obj_dispatch = $db->fetch_object($resql_dispatch)) { - $sql_line = 'SELECT line.rowid, line.qty FROM '.MAIN_DB_PREFIX.'commande_fournisseurdet AS line' - . ' WHERE line.fk_commande = '.$obj_dispatch->fk_commande - . ' AND line.fk_product = '.$obj_dispatch->fk_product; + $sql_line = 'SELECT line.rowid, line.qty FROM '.MAIN_DB_PREFIX.'commande_fournisseurdet AS line'; + $sql_line .= ' WHERE line.fk_commande = '.$obj_dispatch->fk_commande; + $sql_line .= ' AND line.fk_product = '.$obj_dispatch->fk_product; $resql_line = $db->query($sql_line); // s’il y a plusieurs lignes avec le même produit sur cette commande fournisseur, @@ -1465,9 +1393,9 @@ if ($ok && GETPOST('repair_link_dispatch_lines_supplier_order_lines')) { } $qty_for_line = min($remaining_qty, $obj_line->qty); if ($first_iteration) { - $sql_attach = 'UPDATE '.MAIN_DB_PREFIX.'commande_fournisseur_dispatch' - . ' SET fk_commandefourndet = '.$obj_line->rowid.', qty = '.$qty_for_line - . ' WHERE rowid = '.$obj_dispatch->rowid; + $sql_attach = 'UPDATE '.MAIN_DB_PREFIX.'commande_fournisseur_dispatch'; + $sql_attach .= ' SET fk_commandefourndet = '.$obj_line->rowid.', qty = '.$qty_for_line; + $sql_attach .= ' WHERE rowid = '.$obj_dispatch->rowid; $first_iteration = false; } else { $sql_attach_values = array( @@ -1487,17 +1415,15 @@ if ($ok && GETPOST('repair_link_dispatch_lines_supplier_order_lines')) { ); $sql_attach_values = join(', ', $sql_attach_values); - $sql_attach = 'INSERT INTO '.MAIN_DB_PREFIX.'commande_fournisseur_dispatch' - . ' (fk_commande, fk_product, fk_commandefourndet, qty, fk_entrepot, fk_user, datec, comment, status, tms, batch, eatby, sellby)' - . ' VALUES ('.$sql_attach_values.')'; + $sql_attach = 'INSERT INTO '.MAIN_DB_PREFIX.'commande_fournisseur_dispatch'; + $sql_attach .= ' (fk_commande, fk_product, fk_commandefourndet, qty, fk_entrepot, fk_user, datec, comment, status, tms, batch, eatby, sellby)'; + $sql_attach .= ' VALUES ('.$sql_attach_values.')'; } if ($repair_link_dispatch_lines_supplier_order_lines == 'confirmed') { $resql_attach = $db->query($sql_attach); - } - else - { + } else { $resql_attach = true; // Force success in test mode } @@ -1551,9 +1477,7 @@ if ($oneoptionset) print ''; -} -else -{ +} else { print '
    '; print $langs->trans("SetAtLeastOneOptionAsUrlParameter"); print '
    '; diff --git a/htdocs/install/step1.php b/htdocs/install/step1.php index 9d81bca42ce..62a10a0b7b3 100644 --- a/htdocs/install/step1.php +++ b/htdocs/install/step1.php @@ -226,13 +226,10 @@ if (!$error) { if ($db_type == 'mysql' || $db_type == 'mysqli') { $databasefortest = 'mysql'; - } - elseif ($db_type == 'pgsql') + } elseif ($db_type == 'pgsql') { $databasefortest = 'postgres'; - } - else - { + } else { $databasefortest = 'master'; } } @@ -274,9 +271,7 @@ if (!$error) { $error++; } } - } - else - { + } else { print "
    \nFailed to include_once(\"".$main_dir."/core/db/".$db_type.".class.php\")
    \n"; print '
    '.$langs->trans("ErrorWrongValueForParameter", $langs->transnoentities("WebPagesDirectory")).'
    '; //print ''; @@ -284,10 +279,7 @@ if (!$error) { //print ''; $error++; } -} - -else -{ +} else { if (isset($db)) print $db->lasterror(); if (isset($db) && !$db->connected) print '
    '.$langs->trans("BecauseConnectionFailedParametersMayBeWrong").'

    '; print $langs->trans("ErrorGoBackAndCorrectParameters"); @@ -317,8 +309,7 @@ if (!$error && $db->connected) $defaultCharacterSet = $db->forcecharset; $defaultDBSortingCollation = $db->forcecollate; - } - else // If already created, we take current value + } else // If already created, we take current value { $defaultCharacterSet = $db->getDefaultCharacterSetDatabase(); $defaultDBSortingCollation = $db->getDefaultCollationDatabase(); @@ -400,9 +391,7 @@ if (!$error && $db->connected && $action == "set") print ""; print '
    '.$langs->trans("CorrectProblemAndReloadPage", $_SERVER['PHP_SELF'].'?testget=ok').''; $error++; - } - else - { + } else { // Create .htaccess file in document directory $pathhtaccess = $main_data_dir.'/.htaccess'; if (!file_exists($pathhtaccess)) @@ -437,9 +426,7 @@ if (!$error && $db->connected && $action == "set") if (is_dir($dir[$i])) { dolibarr_install_syslog("step1: directory '".$dir[$i]."' exists"); - } - else - { + } else { if (dol_mkdir($dir[$i]) < 0) { print ""; @@ -448,9 +435,7 @@ if (!$error && $db->connected && $action == "set") print $langs->trans("Error"); print ""; $error++; - } - else - { + } else { dolibarr_install_syslog("step1: directory '".$dir[$i]."' created"); } } @@ -471,9 +456,7 @@ if (!$error && $db->connected && $action == "set") print ''.$langs->trans("Error").''; print ""; print '
    '.$langs->trans("CorrectProblemAndReloadPage", $_SERVER['PHP_SELF'].'?testget=ok').''; - } - else - { + } else { //ODT templates $srcroot = $main_dir.'/install/doctemplates'; $destroot = $main_data_dir.'/doctemplates'; @@ -546,12 +529,10 @@ if (!$error && $db->connected && $action == "set") if ($conf->db->type == 'mysql' || $conf->db->type == 'mysqli') { $databasefortest = 'mysql'; - } - elseif ($conf->db->type == 'pgsql') + } elseif ($conf->db->type == 'pgsql') { $databasefortest = 'postgres'; - } - elseif ($conf->db->type == 'mssql') + } elseif ($conf->db->type == 'mssql') { $databasefortest = 'master'; } @@ -566,21 +547,21 @@ if (!$error && $db->connected && $action == "set") $error++; } - if (! $error) + if (!$error) { if ($db->connected) { $resultbis = 1; // Create user - $result=$db->DDLCreateUser($dolibarr_main_db_host, $dolibarr_main_db_user, $dolibarr_main_db_pass, $dolibarr_main_db_name); + $result = $db->DDLCreateUser($dolibarr_main_db_host, $dolibarr_main_db_user, $dolibarr_main_db_pass, $dolibarr_main_db_name); // Create user bis if ($databasefortest == 'mysql') { - if (! in_array($dolibarr_main_db_host, array('127.0.0.1', '::1', 'localhost', 'localhost.local'))) + if (!in_array($dolibarr_main_db_host, array('127.0.0.1', '::1', 'localhost', 'localhost.local'))) { - $resultbis=$db->DDLCreateUser('%', $dolibarr_main_db_user, $dolibarr_main_db_pass, $dolibarr_main_db_name); + $resultbis = $db->DDLCreateUser('%', $dolibarr_main_db_user, $dolibarr_main_db_pass, $dolibarr_main_db_name); } } @@ -591,9 +572,7 @@ if (!$error && $db->connected && $action == "set") print $dolibarr_main_db_user; print ''; print 'Ok'; - } - else - { + } else { if ($db->errno() == 'DB_ERROR_RECORD_ALREADY_EXISTS' || $db->errno() == 'DB_ERROR_KEY_NAME_ALREADY_EXISTS' || $db->errno() == 'DB_ERROR_USER_ALREADY_EXISTS') @@ -604,9 +583,7 @@ if (!$error && $db->connected && $action == "set") print $dolibarr_main_db_user; print ''; print ''.$langs->trans("LoginAlreadyExists").''; - } - else - { + } else { dolibarr_install_syslog("step1: failed to create user", LOG_ERR); print ''; print $langs->trans("UserCreation").' : '; @@ -617,9 +594,7 @@ if (!$error && $db->connected && $action == "set") } $db->close(); - } - else - { + } else { print ''; print $langs->trans("UserCreation").' : '; print $dolibarr_main_db_user; @@ -667,9 +642,7 @@ if (!$error && $db->connected && $action == "set") // If values differs, we save conf file again //if ($check1 != $dolibarr_main_db_character_set) dolibarr_install_syslog('step1: value for character_set is not the one asked for database creation', LOG_WARNING); //if ($check2 != $dolibarr_main_db_collation) dolibarr_install_syslog('step1: value for collation is not the one asked for database creation', LOG_WARNING); - } - else - { + } else { // warning message print '
    '; print $langs->trans("ErrorFailedToCreateDatabase", $dolibarr_main_db_name).'
    '; @@ -682,8 +655,7 @@ if (!$error && $db->connected && $action == "set") $error++; } $newdb->close(); - } - else { + } else { print ''; print $langs->trans("DatabaseCreation")." (".$langs->trans("User")." ".$userroot.") : "; print $dolibarr_main_db_name; @@ -734,9 +706,7 @@ if (!$error && $db->connected && $action == "set") print ""; $error = 0; - } - else - { + } else { dolibarr_install_syslog("step1: connection to database ".$conf->db->name." by user ".$conf->db->user." failed", LOG_ERR); print ""; print $langs->trans("DatabaseConnection")." (".$langs->trans("User")." ".$conf->db->user.") : "; @@ -754,9 +724,7 @@ if (!$error && $db->connected && $action == "set") $error++; } - } - else - { + } else { dolibarr_install_syslog("step1: connection to server by user ".$conf->db->user." failed", LOG_ERR); print ""; print $langs->trans("ServerConnection")." (".$langs->trans("User")." ".$conf->db->user.") : "; @@ -1030,9 +998,7 @@ function write_conf_file($conffile) print ""; print 'Ok'; print ""; - } - else - { + } else { $error++; } } diff --git a/htdocs/install/step2.php b/htdocs/install/step2.php index 5b794b781bd..1a56019f321 100644 --- a/htdocs/install/step2.php +++ b/htdocs/install/step2.php @@ -99,9 +99,7 @@ if ($action == "set") print ""; print $langs->trans("ServerConnection")." : ".$conf->db->host.'Ok'; $ok = 1; - } - else - { + } else { print "Failed to connect to server : ".$conf->db->host.'Error'; } @@ -110,9 +108,7 @@ if ($action == "set") if ($db->database_selected) { dolibarr_install_syslog("step2: successful connection to database: ".$conf->db->name); - } - else - { + } else { dolibarr_install_syslog("step2: failed connection to database :".$conf->db->name, LOG_ERR); print "Failed to select database ".$conf->db->name.'Error'; $ok = 0; @@ -201,9 +197,7 @@ if ($action == "set") if ($conf->db->type == 'mysql' || $conf->db->type == 'mysqli') // For Mysql 5.5+, we must replace type=innodb with ENGINE=innodb { $buffer = preg_replace('/type=innodb/i', 'ENGINE=innodb', $buffer); - } - else - { + } else { // Keyword ENGINE is MySQL-specific, so scrub it for // other database types (mssql, pgsql) $buffer = preg_replace('/type=innodb/i', '', $buffer); @@ -225,16 +219,12 @@ if ($action == "set") { // print "OK requete ==== $buffer"; $db->free($resql); - } - else - { + } else { if ($db->errno() == 'DB_ERROR_TABLE_ALREADY_EXISTS' || $db->errno() == 'DB_ERROR_TABLE_OR_KEY_ALREADY_EXISTS') { //print "Deja existante"; - } - else - { + } else { print "".$langs->trans("CreateTableAndPrimaryKey", $name); print "
    \n".$langs->trans("Request").' '.$requestnb.' : '.$buffer.'
    Executed query : '.$db->lastquery; print "\n"; @@ -242,9 +232,7 @@ if ($action == "set") $error++; } } - } - else - { + } else { print "".$langs->trans("CreateTableAndPrimaryKey", $name); print ""; print ''.$langs->trans("Error").' Failed to open file '.$dir.$file.''; @@ -261,9 +249,7 @@ if ($action == "set") print $langs->trans("TablesAndPrimaryKeysCreation").'Ok'; $ok = 1; } - } - else - { + } else { print ''.$langs->trans("ErrorFailedToFindSomeFiles", $dir).'Error'; dolibarr_install_syslog("step2: failed to find files to create database in directory ".$dir, LOG_ERR); } @@ -368,9 +354,7 @@ if ($action == "set") { //print "OK requete ==== $buffer"; $db->free($resql); - } - else - { + } else { if ($db->errno() == 'DB_ERROR_KEY_NAME_ALREADY_EXISTS' || $db->errno() == 'DB_ERROR_CANNOT_CREATE' || $db->errno() == 'DB_ERROR_PRIMARY_KEY_ALREADY_EXISTS' || @@ -379,9 +363,7 @@ if ($action == "set") { //print "Deja existante"; $key_exists = 1; - } - else - { + } else { print "".$langs->trans("CreateOtherKeysForTable", $name); print "
    \n".$langs->trans("Request").' '.$requestnb.' : '.$db->lastqueryerror(); print "\n"; @@ -391,9 +373,7 @@ if ($action == "set") } } } - } - else - { + } else { print "".$langs->trans("CreateOtherKeysForTable", $name); print ""; print ''.$langs->trans("Error")." Failed to open file ".$dir.$file.""; @@ -464,16 +444,12 @@ if ($action == "set") { $ok = 1; $db->free($resql); - } - else - { + } else { if ($db->errno() == 'DB_ERROR_RECORD_ALREADY_EXISTS' || $db->errno() == 'DB_ERROR_KEY_NAME_ALREADY_EXISTS') { //print "Insert line : ".$buffer."
    \n"; - } - else - { + } else { $ok = 0; print "".$langs->trans("FunctionsCreation"); @@ -490,9 +466,7 @@ if ($action == "set") if ($ok) { print 'Ok'; - } - else - { + } else { print 'Error'; $ok = 1; } @@ -588,15 +562,11 @@ if ($action == "set") if ($resql) { //$db->free($resql); // Not required as request we launch here does not return memory needs. - } - else - { + } else { if ($db->lasterrno() == 'DB_ERROR_RECORD_ALREADY_EXISTS') { //print "Insertion ligne : $buffer"; - } - else - { + } else { $ok = 0; $okallfile = 0; print ''.$langs->trans("ErrorSQL")." : ".$db->lasterrno()." - ".$db->lastqueryerror()." - ".$db->lasterror()."
    "; @@ -613,17 +583,13 @@ if ($action == "set") if ($ok) { print 'Ok'; - } - else - { + } else { print 'Error'; $ok = 1; // Data loading are not blocking errors } } print ''; -} -else -{ +} else { print 'Parameter action=set not defined'; } diff --git a/htdocs/install/step5.php b/htdocs/install/step5.php index 1609035e415..ed64de7cbb1 100644 --- a/htdocs/install/step5.php +++ b/htdocs/install/step5.php @@ -130,8 +130,7 @@ if ($action == "set" || empty($action) || preg_match('/upgrade/i', $action)) $dolibarr_main_db_pass = preg_replace('/crypted:/i', '', $dolibarr_main_db_pass); $dolibarr_main_db_pass = dol_decode($dolibarr_main_db_pass); $dolibarr_main_db_encrypted_pass = $dolibarr_main_db_pass; // We need to set this as it is used to know the password was initially crypted - } - else $dolibarr_main_db_pass = dol_decode($dolibarr_main_db_encrypted_pass); + } else $dolibarr_main_db_pass = dol_decode($dolibarr_main_db_encrypted_pass); } $conf->db->type = $dolibarr_main_db_type; @@ -187,8 +186,7 @@ if ($action == "set" || empty($action) || preg_match('/upgrade/i', $action)) dolibarr_set_const($db, "MAIN_SECURITY_SALT", dol_print_date(dol_now(), 'dayhourlog'), 'chaine', 0, '', 0); // All entities if (function_exists('password_hash')) dolibarr_set_const($db, "MAIN_SECURITY_HASH_ALGO", 'password_hash', 'chaine', 0, '', 0); // All entities - else - dolibarr_set_const($db, "MAIN_SECURITY_HASH_ALGO", 'sha1md5', 'chaine', 0, '', 0); // All entities + else dolibarr_set_const($db, "MAIN_SECURITY_HASH_ALGO", 'sha1md5', 'chaine', 0, '', 0); // All entities } dolibarr_install_syslog('step5: DATABASE_PWD_ENCRYPTED = '.$conf->global->DATABASE_PWD_ENCRYPTED.' MAIN_SECURITY_HASH_ALGO = '.$conf->global->MAIN_SECURITY_HASH_ALGO, LOG_INFO); @@ -214,17 +212,13 @@ if ($action == "set" || empty($action) || preg_match('/upgrade/i', $action)) { print $langs->trans("AdminLoginCreatedSuccessfuly", $login)."
    "; $success = 1; - } - else - { + } else { if ($newuser->error == 'ErrorLoginAlreadyExists') { dolibarr_install_syslog('step5: AdminLoginAlreadyExists', LOG_WARNING); print '
    '.$langs->trans("AdminLoginAlreadyExists", $login)."

    "; $success = 1; - } - else - { + } else { dolibarr_install_syslog('step5: FailedToCreateAdminLogin '.$newuser->error, LOG_ERR); print '
    '.$langs->trans("FailedToCreateAdminLogin").' '.$newuser->error.'


    '; } @@ -240,9 +234,7 @@ if ($action == "set" || empty($action) || preg_match('/upgrade/i', $action)) { $conf->global->MAIN_VERSION_FIRST_INSTALL = $targetversion; $db->commit(); - } - else - { + } else { //if (! $resql) dol_print_error($db,'Error in setup program'); // We ignore errors. Key may already exists $db->commit(); } @@ -292,9 +284,7 @@ if ($action == "set" || empty($action) || preg_match('/upgrade/i', $action)) $db->commit(); } - } - else - { + } else { print $langs->trans("ErrorFailedToConnect")."
    "; } } @@ -311,8 +301,7 @@ if ($action == "set" || empty($action) || preg_match('/upgrade/i', $action)) // Define if we need to update the MAIN_VERSION_LAST_UPGRADE value in database $tagdatabase = false; if (empty($conf->global->MAIN_VERSION_LAST_UPGRADE)) $tagdatabase = true; // We don't know what it was before, so now we consider we are version choosed. - else - { + else { $mainversionlastupgradearray = preg_split('/[.-]/', $conf->global->MAIN_VERSION_LAST_UPGRADE); $targetversionarray = preg_split('/[.-]/', $targetversion); if (versioncompare($targetversionarray, $mainversionlastupgradearray) > 0) $tagdatabase = true; @@ -326,19 +315,13 @@ if ($action == "set" || empty($action) || preg_match('/upgrade/i', $action)) $resql = $db->query("INSERT INTO ".MAIN_DB_PREFIX."const(name,value,type,visible,note,entity) VALUES (".$db->encrypt('MAIN_VERSION_LAST_UPGRADE', 1).",".$db->encrypt($targetversion, 1).",'chaine',0,'Dolibarr version for last upgrade',0)"); if (!$resql) dol_print_error($db, 'Error in setup program'); $conf->global->MAIN_VERSION_LAST_UPGRADE = $targetversion; - } - else - { + } else { dolibarr_install_syslog('step5: we run an upgrade to version '.$targetversion.' but database was already upgraded to '.$conf->global->MAIN_VERSION_LAST_UPGRADE.'. We keep MAIN_VERSION_LAST_UPGRADE as it is.'); } - } - else - { + } else { print $langs->trans("ErrorFailedToConnect")."
    "; } - } - else - { + } else { dol_print_error('', 'step5.php: unknown choice of action'); } @@ -384,14 +367,12 @@ if ($action == "set" && $success) print "
    "; - print $langs->trans("YouNeedToPersonalizeSetup")."

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


    "; print ''; - } - else - { + } else { // If here MAIN_VERSION_LAST_UPGRADE is not empty print $langs->trans("VersionLastUpgrade").': '.$conf->global->MAIN_VERSION_LAST_UPGRADE.'
    '; print $langs->trans("VersionProgram").': '.DOL_VERSION.'
    '; @@ -399,7 +380,7 @@ if ($action == "set" && $success) print "
    "; print ''; } } @@ -435,11 +416,9 @@ elseif (empty($action) || preg_match('/upgrade/i', $action)) print "

    "; print '
    '; - } - else - { + } else { // If here MAIN_VERSION_LAST_UPGRADE is not empty print $langs->trans("VersionLastUpgrade").': '.$conf->global->MAIN_VERSION_LAST_UPGRADE.'
    '; print $langs->trans("VersionProgram").': '.DOL_VERSION.''; @@ -447,12 +426,10 @@ elseif (empty($action) || preg_match('/upgrade/i', $action)) print "
    "; print ''; } -} -else -{ +} else { dol_print_error('', 'step5.php: unknown choice of action'); } diff --git a/htdocs/install/upgrade.php b/htdocs/install/upgrade.php index b71707bef4b..af05fb374d2 100644 --- a/htdocs/install/upgrade.php +++ b/htdocs/install/upgrade.php @@ -120,8 +120,7 @@ if (!GETPOST('action', 'aZ09') || preg_match('/upgrade/i', GETPOST('action', 'aZ $dolibarr_main_db_pass = preg_replace('/crypted:/i', '', $dolibarr_main_db_pass); $dolibarr_main_db_pass = dol_decode($dolibarr_main_db_pass); $dolibarr_main_db_encrypted_pass = $dolibarr_main_db_pass; // We need to set this as it is used to know the password was initially crypted - } - else $dolibarr_main_db_pass = dol_decode($dolibarr_main_db_encrypted_pass); + } else $dolibarr_main_db_pass = dol_decode($dolibarr_main_db_encrypted_pass); } // $conf is already instancied inside inc.php @@ -150,9 +149,7 @@ if (!GETPOST('action', 'aZ09') || preg_match('/upgrade/i', GETPOST('action', 'aZ print $langs->trans("ServerConnection")." : $dolibarr_main_db_host".$langs->trans("OK")."\n"; dolibarr_install_syslog("upgrade: ".$langs->transnoentities("ServerConnection").": $dolibarr_main_db_host ".$langs->transnoentities("OK")); $ok = 1; - } - else - { + } else { print "".$langs->trans("ErrorFailedToConnectToDatabase", $dolibarr_main_db_name)."".$langs->transnoentities("Error")."\n"; dolibarr_install_syslog("upgrade: ".$langs->transnoentities("ErrorFailedToConnectToDatabase", $dolibarr_main_db_name)); $ok = 0; @@ -166,9 +163,7 @@ if (!GETPOST('action', 'aZ09') || preg_match('/upgrade/i', GETPOST('action', 'aZ print $langs->trans("DatabaseConnection")." : ".$dolibarr_main_db_name."".$langs->trans("OK")."\n"; dolibarr_install_syslog("upgrade: Database connection successful: ".$dolibarr_main_db_name); $ok = 1; - } - else - { + } else { print "".$langs->trans("ErrorFailedToConnectToDatabase", $dolibarr_main_db_name)."".$langs->trans("Error")."\n"; dolibarr_install_syslog("upgrade: ".$langs->transnoentities("ErrorFailedToConnectToDatabase", $dolibarr_main_db_name)); $ok = 0; @@ -292,9 +287,7 @@ if (!GETPOST('action', 'aZ09') || preg_match('/upgrade/i', GETPOST('action', 'aZ $i++; } $db->free($resql); - } - else - { + } else { if ($db->lasterrno() != 'DB_ERROR_NOSUCHTABLE') { print ''.$sql.' : '.$db->lasterror()."\n"; @@ -334,9 +327,7 @@ if (!GETPOST('action', 'aZ09') || preg_match('/upgrade/i', GETPOST('action', 'aZ if (preg_match('/\.sql$/i', $file)) $filesindir[] = $file; } sort($filesindir); - } - else - { + } else { print '
    '.$langs->trans("ErrorCanNotReadDir", $dir).'
    '; } @@ -346,8 +337,7 @@ if (!GETPOST('action', 'aZ09') || preg_match('/upgrade/i', GETPOST('action', 'aZ if (preg_match('/'.$from.'/i', $file)) { $filelist[] = $file; - } - elseif (preg_match('/'.$to.'/i', $file)) // First test may be false if we migrate from x.y.* to x.y.* + } elseif (preg_match('/'.$to.'/i', $file)) // First test may be false if we migrate from x.y.* to x.y.* { $filelist[] = $file; } @@ -356,9 +346,7 @@ if (!GETPOST('action', 'aZ09') || preg_match('/upgrade/i', GETPOST('action', 'aZ if (count($filelist) == 0) { print '
    '.$langs->trans("ErrorNoMigrationFilesFoundForParameters").'
    '; - } - else - { + } else { $listoffileprocessed = array(); // Protection to avoid to process twice the same file // Loop on each migrate files diff --git a/htdocs/install/upgrade2.php b/htdocs/install/upgrade2.php index 70f4bb32d19..13e50732566 100644 --- a/htdocs/install/upgrade2.php +++ b/htdocs/install/upgrade2.php @@ -1,4 +1,6 @@ * Copyright (C) 2005-2018 Laurent Destailleur * Copyright (C) 2005-2011 Regis Houssin @@ -66,8 +68,7 @@ $err = error_reporting(); error_reporting(0); if (!empty($conf->global->MAIN_OVERRIDE_TIME_LIMIT)) @set_time_limit((int) $conf->global->MAIN_OVERRIDE_TIME_LIMIT); -else - @set_time_limit(600); +else @set_time_limit(600); error_reporting($err); $setuplang = GETPOST("selectlang", 'aZ09', 3) ?GETPOST("selectlang", 'aZ09', 3) : 'auto'; @@ -125,8 +126,7 @@ if (!GETPOST('action', 'aZ09') || preg_match('/upgrade/i', GETPOST('action', 'aZ $dolibarr_main_db_pass = preg_replace('/crypted:/i', '', $dolibarr_main_db_pass); $dolibarr_main_db_pass = dol_decode($dolibarr_main_db_pass); $dolibarr_main_db_encrypted_pass = $dolibarr_main_db_pass; // We need to set this as it is used to know the password was initially crypted - } - else $dolibarr_main_db_pass = dol_decode($dolibarr_main_db_encrypted_pass); + } else $dolibarr_main_db_pass = dol_decode($dolibarr_main_db_encrypted_pass); } // $conf is already instancied inside inc.php @@ -156,9 +156,7 @@ if (!GETPOST('action', 'aZ09') || preg_match('/upgrade/i', GETPOST('action', 'aZ if ($db->database_selected) { dolibarr_install_syslog('upgrade2: database connection successful :'.$dolibarr_main_db_name); - } - else - { + } else { $error++; } } @@ -498,7 +496,7 @@ if (!GETPOST('action', 'aZ09') || preg_match('/upgrade/i', GETPOST('action', 'aZ migrate_reload_modules($db, $langs, $conf, $listofmodule); // Reload menus (this must be always and only into last targeted version) - migrate_reload_menu($db, $langs, $conf, $versionto); + migrate_reload_menu($db, $langs, $conf); } // Can force activation of some module during migration with parameter 'enablemodules=MAIN_MODULE_XXX,MAIN_MODULE_YYY,...' @@ -533,17 +531,13 @@ if (!GETPOST('action', 'aZ09') || preg_match('/upgrade/i', GETPOST('action', 'aZ print $hookmanager->error; print ""; print ''; - } - else - { + } else { print ''; print ''.$langs->trans('UpgradeExternalModule').': OK'; print ""; print ''; } - } - else - { + } else { //if (! empty($conf->modules)) if (!empty($conf->modules_parts['hooks'])) // If there is at least one module with one hook, we show message to say nothing was done { @@ -582,9 +576,7 @@ if (!GETPOST('action', 'aZ09') || preg_match('/upgrade/i', GETPOST('action', 'aZ migrate_rename_directories($db, $langs, $conf, '/banque/bordereau', '/bank/checkdeposits'); print '

    '.$langs->trans("MigrationFinished").'
    '; -} -else -{ +} else { print '
    '.$langs->trans('ErrorWrongParameters').'
    '; $error++; } @@ -643,9 +635,7 @@ function migrate_paiements($db, $langs, $conf) $row[$i][2] = $obj->amount; $i++; } - } - else - { + } else { dol_print_error($db); } @@ -675,20 +665,14 @@ function migrate_paiements($db, $langs, $conf) { $db->commit(); print $langs->trans('MigrationSuccessfullUpdate')."
    "; - } - else - { + } else { $db->rollback(); print $langs->trans('MigrationUpdateFailed').'
    '; } - } - else - { + } else { print $langs->trans('MigrationPaymentsNothingToUpdate')."
    \n"; } - } - else - { + } else { print $langs->trans('MigrationPaymentsNothingToUpdate')."
    \n"; } @@ -750,9 +734,7 @@ function migrate_paiements_orphelins_1($db, $langs, $conf) } $i++; } - } - else - { + } else { dol_print_error($db); } @@ -791,9 +773,7 @@ function migrate_paiements_orphelins_1($db, $langs, $conf) print $langs->trans('MigrationProcessPaymentUpdate', 'facid='.$facid.'-paymentid='.$row[$i]['paymentid'].'-amount='.$row[$i]['pamount'])."
    \n"; } - } - else - { + } else { print 'ERROR'; } } @@ -801,21 +781,15 @@ function migrate_paiements_orphelins_1($db, $langs, $conf) if ($res > 0) { print $langs->trans('MigrationSuccessfullUpdate')."
    "; - } - else - { + } else { print $langs->trans('MigrationPaymentsNothingUpdatable')."
    \n"; } $db->commit(); - } - else - { + } else { print $langs->trans('MigrationPaymentsNothingUpdatable')."
    \n"; } - } - else - { + } else { print $langs->trans('MigrationPaymentsNothingUpdatable')."
    \n"; } @@ -876,9 +850,7 @@ function migrate_paiements_orphelins_2($db, $langs, $conf) } $i++; } - } - else - { + } else { dol_print_error($db); } @@ -918,9 +890,7 @@ function migrate_paiements_orphelins_2($db, $langs, $conf) print $langs->trans('MigrationProcessPaymentUpdate', 'facid='.$facid.'-paymentid='.$row[$i]['paymentid'].'-amount='.$row[$i]['pamount'])."
    \n"; } - } - else - { + } else { print 'ERROR'; $nberr++; } @@ -929,16 +899,12 @@ function migrate_paiements_orphelins_2($db, $langs, $conf) if ($res > 0) { print $langs->trans('MigrationSuccessfullUpdate')."
    "; - } - else - { + } else { print $langs->trans('MigrationPaymentsNothingUpdatable')."
    \n"; } $db->commit(); - } - else - { + } else { print $langs->trans('MigrationPaymentsNothingUpdatable')."
    \n"; } @@ -951,15 +917,11 @@ function migrate_paiements_orphelins_2($db, $langs, $conf) if (!$nberr) { $db->commit(); - } - else - { + } else { print 'ERROR'; $db->rollback(); } - } - else - { + } else { print $langs->trans('MigrationPaymentsNothingUpdatable')."
    \n"; } @@ -1029,9 +991,7 @@ function migrate_contracts_det($db, $langs, $conf) if ($db->query($sql)) { print $langs->trans('MigrationContractsLineCreation', $obj->cref)."
    \n"; - } - else - { + } else { dol_print_error($db); $nberr++; } @@ -1044,20 +1004,14 @@ function migrate_contracts_det($db, $langs, $conf) // $db->rollback(); $db->commit(); print $langs->trans('MigrationSuccessfullUpdate')."
    "; - } - else - { + } else { $db->rollback(); print $langs->trans('MigrationUpdateFailed').'
    '; } - } - else - { + } else { print $langs->trans('MigrationContractsNothingToUpdate')."
    \n"; } - } - else - { + } else { print $langs->trans('MigrationContractsFieldDontExist')."
    \n"; // dol_print_error($db); } @@ -1130,19 +1084,14 @@ function migrate_links_transfert($db, $langs, $conf) // $db->rollback(); $db->commit(); print $langs->trans('MigrationSuccessfullUpdate')."
    "; - } - else - { + } else { $db->rollback(); print $langs->trans('MigrationUpdateFailed').'
    '; } - } - else { + } else { print $langs->trans('MigrationBankTransfertsNothingToUpdate')."
    \n"; } - } - else - { + } else { dol_print_error($db); } @@ -1170,8 +1119,7 @@ function migrate_contracts_date1($db, $langs, $conf) if (!$resql) dol_print_error($db); if ($db->affected_rows($resql) > 0) print $langs->trans('MigrationContractsEmptyDatesUpdateSuccess')."
    \n"; - else - print $langs->trans('MigrationContractsEmptyDatesNothingToUpdate')."
    \n"; + else print $langs->trans('MigrationContractsEmptyDatesNothingToUpdate')."
    \n"; $sql = "update ".MAIN_DB_PREFIX."contrat set datec=tms where datec is null"; dolibarr_install_syslog("upgrade2::migrate_contracts_date1"); @@ -1179,14 +1127,18 @@ function migrate_contracts_date1($db, $langs, $conf) if (!$resql) dol_print_error($db); if ($db->affected_rows($resql) > 0) print $langs->trans('MigrationContractsEmptyCreationDatesUpdateSuccess')."
    \n"; - else - print $langs->trans('MigrationContractsEmptyCreationDatesNothingToUpdate')."
    \n"; + else print $langs->trans('MigrationContractsEmptyCreationDatesNothingToUpdate')."
    \n"; print ''; } -/* - * Mise a jour date contrat avec date min effective mise en service si inferieur +/** + * Update contracts with date min real if service date is lower + * + * @param DoliDB $db Database handler + * @param Translate $langs Language + * @param Conf $conf Conf + * @return void */ function migrate_contracts_date2($db, $langs, $conf) { @@ -1237,12 +1189,9 @@ function migrate_contracts_date2($db, $langs, $conf) if ($nbcontratsmodifie) print $langs->trans('MigrationContractsInvalidDatesNumber', $nbcontratsmodifie)."
    \n"; - else - print $langs->trans('MigrationContractsInvalidDatesNothingToUpdate')."
    \n"; + else print $langs->trans('MigrationContractsInvalidDatesNothingToUpdate')."
    \n"; } - } - else - { + } else { dol_print_error($db); } @@ -1270,8 +1219,7 @@ function migrate_contracts_date3($db, $langs, $conf) if (!$resql) dol_print_error($db); if ($db->affected_rows($resql) > 0) print $langs->trans('MigrationContractsIncoherentCreationDateUpdateSuccess')."
    \n"; - else - print $langs->trans('MigrationContractsIncoherentCreationDateNothingToUpdate')."
    \n"; + else print $langs->trans('MigrationContractsIncoherentCreationDateNothingToUpdate')."
    \n"; print ''; } @@ -1326,11 +1274,9 @@ function migrate_contracts_open($db, $langs, $conf) if ($nbcontratsmodifie) print $langs->trans('MigrationReopenedContractsNumber', $nbcontratsmodifie)."
    \n"; - else - print $langs->trans('MigrationReopeningContractsNothingToUpdate')."
    \n"; + else print $langs->trans('MigrationReopeningContractsNothingToUpdate')."
    \n"; } - } - else print $langs->trans('MigrationReopeningContractsNothingToUpdate')."
    \n"; + } else print $langs->trans('MigrationReopeningContractsNothingToUpdate')."
    \n"; print ''; } @@ -1408,24 +1354,18 @@ function migrate_paiementfourn_facturefourn($db, $langs, $conf) { $nb++; print ''.$langs->trans("OK").''; - } - else - { + } else { print 'Error on insert'; $error++; } print ''; } - } - else - { + } else { $error++; } $i++; } - } - else - { + } else { $error++; } @@ -1439,15 +1379,11 @@ function migrate_paiementfourn_facturefourn($db, $langs, $conf) $sql = "ALTER TABLE ".MAIN_DB_PREFIX."paiementfourn DROP COLUMN fk_facture_fourn"; $db->query($sql); - } - else - { + } else { print ''.$langs->trans("Error").''; $db->rollback(); } - } - else - { + } else { print ''.$langs->trans("AlreadyDone").''; } } @@ -1532,15 +1468,11 @@ function migrate_price_facture($db, $langs, $conf) if ($facture->update_price() > 0) { //print $facture->id; - } - else - { + } else { print "Error id=".$facture->id; $err++; } - } - else - { + } else { print "Error #3"; $err++; } @@ -1549,17 +1481,13 @@ function migrate_price_facture($db, $langs, $conf) $i++; } - } - else - { + } else { print $langs->trans("AlreadyDone"); } $db->free($resql); $db->commit(); - } - else - { + } else { print "Error #1 ".$db->error(); $err++; @@ -1657,18 +1585,14 @@ function migrate_price_propal($db, $langs, $conf) */ $i++; } - } - else - { + } else { print $langs->trans("AlreadyDone"); } $db->free($resql); $db->commit(); - } - else - { + } else { print "Error #1 ".$db->error(); $db->rollback(); @@ -1746,18 +1670,14 @@ function migrate_price_contrat($db, $langs, $conf) $i++; } - } - else - { + } else { print $langs->trans("AlreadyDone"); } $db->free($resql); $db->commit(); - } - else - { + } else { print "Error #1 ".$db->error(); $db->rollback(); @@ -1853,9 +1773,7 @@ function migrate_price_commande($db, $langs, $conf) */ $i++; } - } - else - { + } else { print $langs->trans("AlreadyDone"); } @@ -1872,9 +1790,7 @@ function migrate_price_commande($db, $langs, $conf) */ $db->commit(); - } - else - { + } else { print "Error #1 ".$db->error(); $db->rollback(); @@ -1970,9 +1886,7 @@ function migrate_price_commande_fournisseur($db, $langs, $conf) */ $i++; } - } - else - { + } else { print $langs->trans("AlreadyDone"); } @@ -1989,9 +1903,7 @@ function migrate_price_commande_fournisseur($db, $langs, $conf) */ $db->commit(); - } - else - { + } else { print "Error #1 ".$db->error(); $db->rollback(); @@ -2118,20 +2030,14 @@ function migrate_commande_expedition($db, $langs, $conf) $sql = "ALTER TABLE ".MAIN_DB_PREFIX."expedition DROP COLUMN fk_commande"; print $langs->trans('FieldRenamed')."
    \n"; $db->query($sql); - } - else - { + } else { $db->rollback(); } - } - else - { + } else { dol_print_error($db); $db->rollback(); } - } - else - { + } else { print $langs->trans('AlreadyDone')."
    \n"; } print ''; @@ -2194,9 +2100,7 @@ function migrate_commande_livraison($db, $langs, $conf) $error++; dol_print_error($db); } - } - else - { + } else { $error++; dol_print_error($db); } @@ -2211,20 +2115,14 @@ function migrate_commande_livraison($db, $langs, $conf) $sql = "ALTER TABLE ".MAIN_DB_PREFIX."livraison DROP COLUMN fk_commande"; print $langs->trans('FieldRenamed')."
    \n"; $db->query($sql); - } - else - { + } else { $db->rollback(); } - } - else - { + } else { dol_print_error($db); $db->rollback(); } - } - else - { + } else { print $langs->trans('AlreadyDone')."
    \n"; } print ''; @@ -2302,15 +2200,11 @@ function migrate_detail_livraison($db, $langs, $conf) $error++; dol_print_error($db); } - } - else - { + } else { $error++; dol_print_error($db); } - } - else - { + } else { $error++; dol_print_error($db); } @@ -2325,20 +2219,14 @@ function migrate_detail_livraison($db, $langs, $conf) $sql = "ALTER TABLE ".MAIN_DB_PREFIX."livraisondet CHANGE fk_commande_ligne fk_origin_line integer"; print $langs->trans('FieldRenamed')."
    \n"; $db->query($sql); - } - else - { + } else { $db->rollback(); } - } - else - { + } else { dol_print_error($db); $db->rollback(); } - } - else - { + } else { $result = $db->DDLDescTable(MAIN_DB_PREFIX."livraisondet", "fk_origin_line"); $obj = $db->fetch_object($result); if (!$obj) @@ -2394,9 +2282,7 @@ function migrate_stocks($db, $langs, $conf) $resql2 = $db->query($sql); if ($resql2) { - } - else - { + } else { $error++; dol_print_error($db); } @@ -2408,14 +2294,10 @@ function migrate_stocks($db, $langs, $conf) if ($error == 0) { $db->commit(); - } - else - { + } else { $db->rollback(); } - } - else - { + } else { dol_print_error($db); $db->rollback(); } @@ -2470,9 +2352,7 @@ function migrate_menus($db, $langs, $conf) $resql2 = $db->query($sql); if ($resql2) { - } - else - { + } else { $error++; dol_print_error($db); } @@ -2484,20 +2364,14 @@ function migrate_menus($db, $langs, $conf) if ($error == 0) { $db->commit(); - } - else - { + } else { $db->rollback(); } - } - else - { + } else { dol_print_error($db); $db->rollback(); } - } - else - { + } else { print $langs->trans('AlreadyDone')."
    \n"; } @@ -2559,29 +2433,21 @@ function migrate_commande_deliveryaddress($db, $langs, $conf) print ". "; $i++; } - } - else - { + } else { print $langs->trans('AlreadyDone')."
    \n"; } if ($error == 0) { $db->commit(); - } - else - { + } else { $db->rollback(); } - } - else - { + } else { dol_print_error($db); $db->rollback(); } - } - else - { + } else { print $langs->trans('AlreadyDone')."
    \n"; } @@ -2656,20 +2522,15 @@ function migrate_restore_missing_links($db, $langs, $conf) //print ". "; $i++; } - } - else print $langs->trans('AlreadyDone')."
    \n"; + } else print $langs->trans('AlreadyDone')."
    \n"; if ($error == 0) { $db->commit(); - } - else - { + } else { $db->rollback(); } - } - else - { + } else { dol_print_error($db); $db->rollback(); } @@ -2721,23 +2582,17 @@ function migrate_restore_missing_links($db, $langs, $conf) //print ". "; $i++; } - } - else - { + } else { print $langs->trans('AlreadyDone')."
    \n"; } if ($error == 0) { $db->commit(); - } - else - { + } else { $db->rollback(); } - } - else - { + } else { dol_print_error($db); $db->rollback(); } @@ -2818,25 +2673,17 @@ function migrate_project_user_resp($db, $langs, $conf) if ($db->query($sqlDrop)) { $db->commit(); - } - else - { + } else { $db->rollback(); } - } - else - { + } else { $db->rollback(); } - } - else - { + } else { dol_print_error($db); $db->rollback(); } - } - else - { + } else { print $langs->trans('AlreadyDone')."
    \n"; } print ''; @@ -2910,25 +2757,17 @@ function migrate_project_task_actors($db, $langs, $conf) if ($db->query($sqlDrop)) { $db->commit(); - } - else - { + } else { $db->rollback(); } - } - else - { + } else { $db->rollback(); } - } - else - { + } else { dol_print_error($db); $db->rollback(); } - } - else - { + } else { print $langs->trans('AlreadyDone')."
    \n"; } print ''; @@ -2998,9 +2837,7 @@ function migrate_relationship_tables($db, $langs, $conf, $table, $fk_source, $so print ". "; $i++; } - } - else - { + } else { print $langs->trans('AlreadyDone')."
    \n"; } @@ -3010,25 +2847,17 @@ function migrate_relationship_tables($db, $langs, $conf, $table, $fk_source, $so if ($db->query($sqlDrop)) { $db->commit(); - } - else - { + } else { $db->rollback(); } - } - else - { + } else { $db->rollback(); } - } - else - { + } else { dol_print_error($db); $db->rollback(); } - } - else - { + } else { print $langs->trans('AlreadyDone')."
    \n"; } @@ -3096,9 +2925,7 @@ function migrate_project_task_time($db, $langs, $conf) $oldtime++; if (!empty($totaltime[$obj->fk_task])) $totaltime[$obj->fk_task] += $newtime; else $totaltime[$obj->fk_task] = $newtime; - } - else - { + } else { if (!empty($totaltime[$obj->fk_task])) $totaltime[$obj->fk_task] += $obj->task_duration; else $totaltime[$obj->fk_task] = $obj->task_duration; } @@ -3123,33 +2950,23 @@ function migrate_project_task_time($db, $langs, $conf) dol_print_error($db); } } - } - else - { + } else { print $langs->trans('AlreadyDone')."
    \n"; } - } - else - { + } else { dol_print_error($db); } - } - else - { + } else { print $langs->trans('AlreadyDone')."
    \n"; } - } - else - { + } else { dol_print_error($db); } if ($error == 0) { $db->commit(); - } - else - { + } else { $db->rollback(); } @@ -3221,36 +3038,26 @@ function migrate_customerorder_shipping($db, $langs, $conf) print ". "; $i++; } - } - else - { + } else { print $langs->trans('AlreadyDone')."
    \n"; } if ($error == 0) { $db->commit(); - } - else - { + } else { dol_print_error($db); $db->rollback(); } - } - else - { + } else { dol_print_error($db); $db->rollback(); } - } - else - { + } else { dol_print_error($db); $db->rollback(); } - } - else - { + } else { print $langs->trans('AlreadyDone')."
    \n"; } @@ -3323,17 +3130,13 @@ function migrate_shipping_delivery($db, $langs, $conf) dol_print_error($db); } print ". "; - } - else - { + } else { $error++; dol_print_error($db); } $i++; } - } - else - { + } else { print $langs->trans('AlreadyDone')."
    \n"; } @@ -3347,21 +3150,15 @@ function migrate_shipping_delivery($db, $langs, $conf) // DDL commands must not be inside a transaction $sqlDrop = "ALTER TABLE ".MAIN_DB_PREFIX."livraison DROP COLUMN fk_expedition"; $db->query($sqlDrop); - } - else - { + } else { dol_print_error($db); $db->rollback(); } - } - else - { + } else { dol_print_error($db); $db->rollback(); } - } - else - { + } else { print $langs->trans('AlreadyDone')."
    \n"; } @@ -3428,24 +3225,18 @@ function migrate_shipping_delivery2($db, $langs, $conf) print ". "; $i++; } - } - else - { + } else { print $langs->trans('AlreadyDone')."
    \n"; } if ($error == 0) { $db->commit(); - } - else - { + } else { dol_print_error($db); $db->rollback(); } - } - else - { + } else { dol_print_error($db); $db->rollback(); } @@ -3503,15 +3294,11 @@ function migrate_actioncomm_element($db, $langs, $conf) //$sqlDrop = "ALTER TABLE ".MAIN_DB_PREFIX."actioncomm DROP COLUMN ".$field; //$db->query($sqlDrop); //print ". "; - } - else - { + } else { dol_print_error($db); $db->rollback(); } - } - else - { + } else { print $langs->trans('AlreadyDone')."
    \n"; } } @@ -3595,15 +3382,11 @@ function migrate_mode_reglement($db, $langs, $conf) if (!$error) { $db->commit(); - } - else - { + } else { dol_print_error($db); $db->rollback(); } - } - else - { + } else { dol_print_error($db); $db->rollback(); } @@ -3624,10 +3407,9 @@ function migrate_mode_reglement($db, $langs, $conf) * @param DoliDB $db Database handler * @param Translate $langs Object langs * @param Conf $conf Object conf - * @param string $versionto Version target * @return void */ -function migrate_clean_association($db, $langs, $conf, $versionto) +function migrate_clean_association($db, $langs, $conf) { $result = $db->DDLDescTable(MAIN_DB_PREFIX."categorie_association"); if ($result) // result defined for version 3.2 or - @@ -3687,17 +3469,13 @@ function migrate_clean_association($db, $langs, $conf, $versionto) print ''.$langs->trans("MigrationCategorieAssociation").''; print ''.$langs->trans("RemoveDuplicates").' '.$langs->trans("Success").' ('.$num.'=>'.count($couples).')'; $db->commit(); - } - else - { + } else { print ''.$langs->trans("MigrationCategorieAssociation").''; print ''.$langs->trans("RemoveDuplicates").' '.$langs->trans("Failed").''; $db->rollback(); } } - } - else - { + } else { print ''.$langs->trans("Error").''; print '
    '.$db->lasterror().'
    '; } @@ -3757,9 +3535,7 @@ function migrate_categorie_association($db, $langs, $conf) print ". "; $i++; } - } - else - { + } else { print $langs->trans('AlreadyDone')."
    \n"; } @@ -3779,20 +3555,14 @@ function migrate_categorie_association($db, $langs, $conf) */ $db->commit(); - } - else - { + } else { $db->rollback(); } - } - else - { + } else { dol_print_error($db); $db->rollback(); } - } - else - { + } else { print $langs->trans('AlreadyDone')."
    \n"; } @@ -3851,23 +3621,17 @@ function migrate_event_assignement($db, $langs, $conf) print ". "; $i++; } - } - else - { + } else { print $langs->trans('AlreadyDone')."
    \n"; } if (!$error) { $db->commit(); - } - else - { + } else { $db->rollback(); } - } - else - { + } else { dol_print_error($db); $db->rollback(); } @@ -3928,23 +3692,17 @@ function migrate_event_assignement_contact($db, $langs, $conf) print ". "; $i++; } - } - else - { + } else { print $langs->trans('AlreadyDone')."
    \n"; } if (!$error) { $db->commit(); - } - else - { + } else { $db->rollback(); } - } - else - { + } else { dol_print_error($db); $db->rollback(); } @@ -4015,9 +3773,7 @@ function migrate_reset_blocked_log($db, $langs, $conf) { $error++; dol_print_error($db); - } - else - { + } else { // Add set line $object = new stdClass(); $object->id = 1; @@ -4034,36 +3790,26 @@ function migrate_reset_blocked_log($db, $langs, $conf) $error++; } } - } - else - { + } else { print ' - '.$langs->trans('AlreadyInV7').'
    '; } - } - else - { + } else { dol_print_error($db); } $i++; } - } - else - { + } else { print $langs->trans('NothingToDo')."
    \n"; } if (!$error) { $db->commit(); - } - else - { + } else { $db->rollback(); } - } - else - { + } else { dol_print_error($db); $db->rollback(); } @@ -4125,23 +3871,17 @@ function migrate_remise_entity($db, $langs, $conf) print ". "; $i++; } - } - else - { + } else { print $langs->trans('AlreadyDone')."
    \n"; } if (!$error) { $db->commit(); - } - else - { + } else { $db->rollback(); } - } - else - { + } else { dol_print_error($db); $db->rollback(); } @@ -4193,16 +3933,13 @@ function migrate_remise_except_entity($db, $langs, $conf) $sqlSelect2 = "SELECT f.entity"; $sqlSelect2 .= " FROM ".MAIN_DB_PREFIX."facture as f"; $sqlSelect2 .= " WHERE f.rowid = ".$fk_facture; - } - elseif (!empty($obj->fk_facture_line)) + } elseif (!empty($obj->fk_facture_line)) { $sqlSelect2 = "SELECT f.entity"; $sqlSelect2 .= " FROM ".MAIN_DB_PREFIX."facture as f, ".MAIN_DB_PREFIX."facturedet as fd"; $sqlSelect2 .= " WHERE fd.rowid = ".$obj->fk_facture_line; $sqlSelect2 .= " AND fd.fk_facture = f.rowid"; - } - else - { + } else { $sqlSelect2 = "SELECT s.entity"; $sqlSelect2 .= " FROM ".MAIN_DB_PREFIX."societe as s"; $sqlSelect2 .= " WHERE s.rowid = ".$obj->fk_soc; @@ -4226,9 +3963,7 @@ function migrate_remise_except_entity($db, $langs, $conf) dol_print_error($db); } } - } - else - { + } else { $error++; dol_print_error($db); } @@ -4236,23 +3971,17 @@ function migrate_remise_except_entity($db, $langs, $conf) print ". "; $i++; } - } - else - { + } else { print $langs->trans('AlreadyDone')."
    \n"; } if (!$error) { $db->commit(); - } - else - { + } else { $db->rollback(); } - } - else - { + } else { dol_print_error($db); $db->rollback(); } @@ -4312,23 +4041,17 @@ function migrate_user_rights_entity($db, $langs, $conf) print ". "; $i++; } - } - else - { + } else { print $langs->trans('AlreadyDone')."
    \n"; } if (!$error) { $db->commit(); - } - else - { + } else { $db->rollback(); } - } - else - { + } else { dol_print_error($db); $db->rollback(); } @@ -4388,23 +4111,17 @@ function migrate_usergroup_rights_entity($db, $langs, $conf) print ". "; $i++; } - } - else - { + } else { print $langs->trans('AlreadyDone')."
    \n"; } if (!$error) { $db->commit(); - } - else - { + } else { $db->rollback(); } - } - else - { + } else { dol_print_error($db); $db->rollback(); } @@ -4587,8 +4304,7 @@ function migrate_reload_modules($db, $langs, $conf, $listofmodule = array(), $fo $mod->remove('noboxes'); $mod->init($reloadmode); } - } - elseif ($moduletoreload == 'MAIN_MODULE_API') + } elseif ($moduletoreload == 'MAIN_MODULE_API') { dolibarr_install_syslog("upgrade2::migrate_reload_modules Reactivate Rest API module"); $res = @include_once DOL_DOCUMENT_ROOT.'/core/modules/modApi.class.php'; @@ -4597,8 +4313,7 @@ function migrate_reload_modules($db, $langs, $conf, $listofmodule = array(), $fo //$mod->remove('noboxes'); $mod->init($reloadmode); } - } - elseif ($moduletoreload == 'MAIN_MODULE_BARCODE') + } elseif ($moduletoreload == 'MAIN_MODULE_BARCODE') { dolibarr_install_syslog("upgrade2::migrate_reload_modules Reactivate Barcode module"); $res = @include_once DOL_DOCUMENT_ROOT.'/core/modules/modBarcode.class.php'; @@ -4607,8 +4322,7 @@ function migrate_reload_modules($db, $langs, $conf, $listofmodule = array(), $fo $mod->remove('noboxes'); $mod->init($reloadmode); } - } - elseif ($moduletoreload == 'MAIN_MODULE_CRON') + } elseif ($moduletoreload == 'MAIN_MODULE_CRON') { dolibarr_install_syslog("upgrade2::migrate_reload_modules Reactivate Cron module"); $res = @include_once DOL_DOCUMENT_ROOT.'/core/modules/modCron.class.php'; @@ -4617,8 +4331,7 @@ function migrate_reload_modules($db, $langs, $conf, $listofmodule = array(), $fo $mod->remove('noboxes'); $mod->init($reloadmode); } - } - elseif ($moduletoreload == 'MAIN_MODULE_SOCIETE') + } elseif ($moduletoreload == 'MAIN_MODULE_SOCIETE') { dolibarr_install_syslog("upgrade2::migrate_reload_modules Reactivate Societe module"); $res = @include_once DOL_DOCUMENT_ROOT.'/core/modules/modSociete.class.php'; @@ -4627,8 +4340,7 @@ function migrate_reload_modules($db, $langs, $conf, $listofmodule = array(), $fo $mod->remove('noboxes'); $mod->init($reloadmode); } - } - elseif ($moduletoreload == 'MAIN_MODULE_PRODUIT') // Permission has changed into 2.7 + } elseif ($moduletoreload == 'MAIN_MODULE_PRODUIT') // Permission has changed into 2.7 { dolibarr_install_syslog("upgrade2::migrate_reload_modules Reactivate Produit module"); $res = @include_once DOL_DOCUMENT_ROOT.'/core/modules/modProduct.class.php'; @@ -4637,8 +4349,7 @@ function migrate_reload_modules($db, $langs, $conf, $listofmodule = array(), $fo //$mod->remove('noboxes'); $mod->init($reloadmode); } - } - elseif ($moduletoreload == 'MAIN_MODULE_SERVICE') // Permission has changed into 2.7 + } elseif ($moduletoreload == 'MAIN_MODULE_SERVICE') // Permission has changed into 2.7 { dolibarr_install_syslog("upgrade2::migrate_reload_modules Reactivate Service module"); $res = @include_once DOL_DOCUMENT_ROOT.'/core/modules/modService.class.php'; @@ -4647,8 +4358,7 @@ function migrate_reload_modules($db, $langs, $conf, $listofmodule = array(), $fo //$mod->remove('noboxes'); $mod->init($reloadmode); } - } - elseif ($moduletoreload == 'MAIN_MODULE_COMMANDE') // Permission has changed into 2.9 + } elseif ($moduletoreload == 'MAIN_MODULE_COMMANDE') // Permission has changed into 2.9 { dolibarr_install_syslog("upgrade2::migrate_reload_modules Reactivate Commande module"); $res = @include_once DOL_DOCUMENT_ROOT.'/core/modules/modCommande.class.php'; @@ -4657,8 +4367,7 @@ function migrate_reload_modules($db, $langs, $conf, $listofmodule = array(), $fo //$mod->remove('noboxes'); $mod->init($reloadmode); } - } - elseif ($moduletoreload == 'MAIN_MODULE_FACTURE') // Permission has changed into 2.9 + } elseif ($moduletoreload == 'MAIN_MODULE_FACTURE') // Permission has changed into 2.9 { dolibarr_install_syslog("upgrade2::migrate_reload_modules Reactivate Facture module"); $res = @include_once DOL_DOCUMENT_ROOT.'/core/modules/modFacture.class.php'; @@ -4667,8 +4376,7 @@ function migrate_reload_modules($db, $langs, $conf, $listofmodule = array(), $fo //$mod->remove('noboxes'); $mod->init($reloadmode); } - } - elseif ($moduletoreload == 'MAIN_MODULE_FOURNISSEUR') // Permission has changed into 2.9 + } elseif ($moduletoreload == 'MAIN_MODULE_FOURNISSEUR') // Permission has changed into 2.9 { dolibarr_install_syslog("upgrade2::migrate_reload_modules Reactivate Fournisseur module"); $res = @include_once DOL_DOCUMENT_ROOT.'/core/modules/modFournisseur.class.php'; @@ -4677,8 +4385,7 @@ function migrate_reload_modules($db, $langs, $conf, $listofmodule = array(), $fo //$mod->remove('noboxes'); $mod->init($reloadmode); } - } - elseif ($moduletoreload == 'MAIN_MODULE_HOLIDAY') // Permission and tabs has changed into 3.8 + } elseif ($moduletoreload == 'MAIN_MODULE_HOLIDAY') // Permission and tabs has changed into 3.8 { dolibarr_install_syslog("upgrade2::migrate_reload_modules Reactivate Leave Request module"); $res = @include_once DOL_DOCUMENT_ROOT.'/core/modules/modHoliday.class.php'; @@ -4687,8 +4394,7 @@ function migrate_reload_modules($db, $langs, $conf, $listofmodule = array(), $fo $mod->remove('noboxes'); $mod->init($reloadmode); } - } - elseif ($moduletoreload == 'MAIN_MODULE_DEPLACEMENT') // Permission has changed into 3.0 + } elseif ($moduletoreload == 'MAIN_MODULE_DEPLACEMENT') // Permission has changed into 3.0 { dolibarr_install_syslog("upgrade2::migrate_reload_modules Reactivate Deplacement module"); $res = @include_once DOL_DOCUMENT_ROOT.'/core/modules/modDeplacement.class.php'; @@ -4697,8 +4403,7 @@ function migrate_reload_modules($db, $langs, $conf, $listofmodule = array(), $fo //$mod->remove('noboxes'); $mod->init($reloadmode); } - } - elseif ($moduletoreload == 'MAIN_MODULE_EXPENSEREPORT') + } elseif ($moduletoreload == 'MAIN_MODULE_EXPENSEREPORT') { dolibarr_install_syslog("upgrade2::migrate_reload_modules Reactivate Expense Report module"); $res = @include_once DOL_DOCUMENT_ROOT.'/core/modules/modExpenseReport.class.php'; @@ -4707,8 +4412,7 @@ function migrate_reload_modules($db, $langs, $conf, $listofmodule = array(), $fo //$mod->remove('noboxes'); $mod->init($reloadmode); } - } - elseif ($moduletoreload == 'MAIN_MODULE_DON') // Permission has changed into 3.0 + } elseif ($moduletoreload == 'MAIN_MODULE_DON') // Permission has changed into 3.0 { dolibarr_install_syslog("upgrade2::migrate_reload_modules Reactivate Don module"); $res = @include_once DOL_DOCUMENT_ROOT.'/core/modules/modDon.class.php'; @@ -4717,8 +4421,7 @@ function migrate_reload_modules($db, $langs, $conf, $listofmodule = array(), $fo //$mod->remove('noboxes'); $mod->init($reloadmode); } - } - elseif ($moduletoreload == 'MAIN_MODULE_ECM') // Permission has changed into 3.0 and 3.1 + } elseif ($moduletoreload == 'MAIN_MODULE_ECM') // Permission has changed into 3.0 and 3.1 { dolibarr_install_syslog("upgrade2::migrate_reload_modules Reactivate ECM module"); $res = @include_once DOL_DOCUMENT_ROOT.'/core/modules/modECM.class.php'; @@ -4727,8 +4430,7 @@ function migrate_reload_modules($db, $langs, $conf, $listofmodule = array(), $fo $mod->remove('noboxes'); // We need to remove because a permission id has been removed $mod->init($reloadmode); } - } - elseif ($moduletoreload == 'MAIN_MODULE_PAYBOX') // Permission has changed into 3.0 + } elseif ($moduletoreload == 'MAIN_MODULE_PAYBOX') // Permission has changed into 3.0 { dolibarr_install_syslog("upgrade2::migrate_reload_modules Reactivate Paybox module"); $res = @include_once DOL_DOCUMENT_ROOT.'/core/modules/modPaybox.class.php'; @@ -4737,8 +4439,7 @@ function migrate_reload_modules($db, $langs, $conf, $listofmodule = array(), $fo $mod->remove('noboxes'); // We need to remove because id of module has changed $mod->init($reloadmode); } - } - elseif ($moduletoreload == 'MAIN_MODULE_SUPPLIERPROPOSAL') // Module after 3.5 + } elseif ($moduletoreload == 'MAIN_MODULE_SUPPLIERPROPOSAL') // Module after 3.5 { dolibarr_install_syslog("upgrade2::migrate_reload_modules Reactivate Supplier Proposal module"); $res = @include_once DOL_DOCUMENT_ROOT.'/core/modules/modSupplierProposal.class.php'; @@ -4747,8 +4448,7 @@ function migrate_reload_modules($db, $langs, $conf, $listofmodule = array(), $fo $mod->remove('noboxes'); // We need to remove because id of module has changed $mod->init($reloadmode); } - } - elseif ($moduletoreload == 'MAIN_MODULE_OPENSURVEY') // Permission has changed into 3.0 + } elseif ($moduletoreload == 'MAIN_MODULE_OPENSURVEY') // Permission has changed into 3.0 { dolibarr_install_syslog("upgrade2::migrate_reload_modules Reactivate Opensurvey module"); $res = @include_once DOL_DOCUMENT_ROOT.'/core/modules/modOpenSurvey.class.php'; @@ -4757,8 +4457,7 @@ function migrate_reload_modules($db, $langs, $conf, $listofmodule = array(), $fo $mod->remove('noboxes'); // We need to remove because menu entries has changed $mod->init($reloadmode); } - } - elseif ($moduletoreload == 'MAIN_MODULE_TAKEPOS') // Permission has changed into 10.0 + } elseif ($moduletoreload == 'MAIN_MODULE_TAKEPOS') // Permission has changed into 10.0 { dolibarr_install_syslog("upgrade2::migrate_reload_modules Reactivate Takepos module"); $res = @include_once DOL_DOCUMENT_ROOT.'/core/modules/modTakePos.class.php'; @@ -4767,9 +4466,7 @@ function migrate_reload_modules($db, $langs, $conf, $listofmodule = array(), $fo $mod->remove('noboxes'); // We need to remove because menu entries has changed $mod->init($reloadmode); } - } - else - { + } else { $reg = array(); $tmp = preg_match('/MAIN_MODULE_([a-zA-Z0-9]+)/', $moduletoreload, $reg); if (!empty($reg[1])) @@ -4777,8 +4474,7 @@ function migrate_reload_modules($db, $langs, $conf, $listofmodule = array(), $fo if (strtoupper($moduletoreload) == $moduletoreload) // If key is un uppercase { $moduletoreloadshort = ucfirst(strtolower($reg[1])); - } - else // If key is a mix of up and low case + } else // If key is a mix of up and low case { $moduletoreloadshort = $reg[1]; } @@ -4789,9 +4485,7 @@ function migrate_reload_modules($db, $langs, $conf, $listofmodule = array(), $fo $mod = new $classname($db); //$mod->remove('noboxes'); $mod->init($reloadmode); - } - else - { + } else { dolibarr_install_syslog('Failed to include '.DOL_DOCUMENT_ROOT.'/core/modules/mod'.$moduletoreloadshort.'.class.php'); $res = @dol_include_once(strtolower($moduletoreloadshort).'/core/modules/mod'.$moduletoreloadshort.'.class.php'); @@ -4800,15 +4494,11 @@ function migrate_reload_modules($db, $langs, $conf, $listofmodule = array(), $fo $mod = new $classname($db); //$mod->remove('noboxes'); $mod->init($reloadmode); - } - else - { + } else { dolibarr_install_syslog('Failed to include '.strtolower($moduletoreloadshort).'/core/modules/mod'.$moduletoreloadshort.'.class.php'); } } - } - else - { + } else { dolibarr_install_syslog("Error, can't find module with name ".$moduletoreload, LOG_WARNING); print "Error, can't find module with name ".$moduletoreload; } @@ -4834,10 +4524,9 @@ function migrate_reload_modules($db, $langs, $conf, $listofmodule = array(), $fo * @param DoliDB $db Database handler * @param Translate $langs Object langs * @param Conf $conf Object conf - * @param string $versionto Version target * @return void */ -function migrate_reload_menu($db, $langs, $conf, $versionto) +function migrate_reload_menu($db, $langs, $conf) { global $conf; dolibarr_install_syslog("upgrade2::migrate_reload_menu"); @@ -4943,8 +4632,7 @@ function migrate_user_photospath() } // dol_delete_dir($origin.'/'.$file); } - } - else // it is a file + } else // it is a file { if (!dol_is_file($destin.'/'.$file)) { diff --git a/htdocs/langs/am_ET/accountancy.lang b/htdocs/langs/am_ET/accountancy.lang new file mode 100644 index 00000000000..b8ce37a0956 --- /dev/null +++ b/htdocs/langs/am_ET/accountancy.lang @@ -0,0 +1,382 @@ +# Dolibarr language file - en_US - Accountancy (Double entries) +Accountancy=Accountancy +Accounting=Accounting +ACCOUNTING_EXPORT_SEPARATORCSV=Column separator for export file +ACCOUNTING_EXPORT_DATE=Date format for export file +ACCOUNTING_EXPORT_PIECE=Export the number of piece +ACCOUNTING_EXPORT_GLOBAL_ACCOUNT=Export with global account +ACCOUNTING_EXPORT_LABEL=Export label +ACCOUNTING_EXPORT_AMOUNT=Export amount +ACCOUNTING_EXPORT_DEVISE=Export currency +Selectformat=Select the format for the file +ACCOUNTING_EXPORT_FORMAT=Select the format for the file +ACCOUNTING_EXPORT_ENDLINE=Select the carriage return type +ACCOUNTING_EXPORT_PREFIX_SPEC=Specify the prefix for the file name +ThisService=This service +ThisProduct=This product +DefaultForService=Default for service +DefaultForProduct=Default for product +CantSuggest=Can't suggest +AccountancySetupDoneFromAccountancyMenu=Most setup of the accountancy is done from the menu %s +ConfigAccountingExpert=Configuration of the module accounting expert +Journalization=Journalization +Journaux=Journals +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 +OtherInfo=Other information +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 + +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 + +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... + +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 + +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. + +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. + +AccountancyAreaDescClosePeriod=STEP %s: Close period so we can't make modification in a future. + +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 +AccountAccountingShort=Account +SubledgerAccount=Subledger account +SubledgerAccountLabel=Subledger account label +ShowAccountingAccount=Show accounting account +ShowAccountingJournal=Show accounting journal +AccountAccountingSuggest=Accounting account suggested +MenuDefaultAccounts=Default accounts +MenuBankAccounts=Bank accounts +MenuVatAccounts=Vat accounts +MenuTaxAccounts=Tax accounts +MenuExpenseReportAccounts=Expense report accounts +MenuLoanAccounts=Loan accounts +MenuProductsAccounts=Product accounts +MenuClosureAccounts=Closure accounts +MenuAccountancyClosure=Closure +MenuAccountancyValidationMovements=Validate movements +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 +TotalForAccount=Total for accounting account + + +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 + +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_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=Length of the third-party accounting accounts (If you set value to 6 here, the account '401' will appear like '401000' on screen) +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_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_RESULT_PROFIT=Result accounting account (Profit) +ACCOUNTING_RESULT_LOSS=Result accounting account (Loss) +ACCOUNTING_CLOSURE_DEFAULT_JOURNAL=Journal of closure + +ACCOUNTING_ACCOUNT_TRANSFER_CASH=Accounting account of transitional bank transfer +TransitionalAccount=Transitional bank transfer account + +ACCOUNTING_ACCOUNT_SUSPENSE=Accounting account of wait +DONATION_ACCOUNTINGACCOUNT=Accounting account to register donations +ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions + +ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (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 products sold in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported 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_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (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_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) + +Doctype=Type of document +Docdate=Date +Docref=Reference +LabelAccount=Label account +LabelOperation=Label operation +Sens=Sens +LetteringCode=Lettering code +Lettering=Lettering +Codejournal=Journal +JournalLabel=Journal label +NumPiece=Piece number +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=By year +NotMatch=Not Set +DeleteMvt=Delete Ledger lines +DelMonth=Month to delete +DelYear=Year to delete +DelJournal=Journal to delete +ConfirmDeleteMvt=This will delete all lines of the Ledger for the year/month and/or from a specific journal (At least one criterion is required). You will have to reuse the feature 'Registration in accounting' to have the deleted record back in the ledger. +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=Third-party account +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=List third-party account +DescThirdPartyReport=Consult here the list of third-party customers and vendors and their accounting accounts +ListAccounts=List of the accounting accounts +UnknownAccountForThirdparty=Unknown third-party account. We will use %s +UnknownAccountForThirdpartyBlocking=Unknown third-party account. Blocking error +ThirdpartyAccountNotDefinedOrThirdPartyUnknown=Third-party account not defined or third party unknown. We will use %s +ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unknown and subledger not defined on the payment. We will keep the subledger account value empty. +ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. +UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error +PaymentsNotLinkedToProduct=Payment not linked to any product / service +OpeningBalance=Opening balance +ShowOpeningBalance=Show opening balance +HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group + +Pcgtype=Group of account +PcgtypeDesc=Group 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. + +Reconcilable=Reconcilable + +TotalVente=Total turnover before tax +TotalMarge=Total sales margin + +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: +Vide=- +DescVentilSupplier=Consult here the list of vendor invoice lines bound or not yet bound to a product accounting account (only record not already transfered in accountancy are visible) +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 + +DescClosure=Consult here the number of movements by month who are not validated & fiscal years already open +OverviewOfMovementsNotValidated=Step 1/ Overview of movements not validated. (Necessary to close a fiscal year) +ValidateMovements=Validate movements +DescValidateMovements=Any modification or deletion of writing, lettering and deletes will be prohibited. All entries for an exercise must be validated otherwise closing will not be possible +SelectMonthAndValidate=Select month and validate movements + +ValidateHistory=Bind Automatically +AutomaticBindingDone=Automatic binding done + +ErrorAccountancyCodeIsAlreadyUse=Error, you cannot delete this accounting account because it is used +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 +ShowTutorial=Show Tutorial +NotReconciled=Not reconciled + +## Admin +ApplyMassCategories=Apply mass categories +AddAccountFromBookKeepingWithNoCategories=Available account not yet in the personalized group +CategoryDeleted=Category for the accounting account has been removed +AccountingJournals=Accounting journals +AccountingJournal=Accounting journal +NewAccountingJournal=New accounting journal +ShowAccountingJournal=Show accounting journal +NatureOfJournal=Nature of Journal +AccountingJournalType1=Miscellaneous operations +AccountingJournalType2=Sales +AccountingJournalType3=Purchases +AccountingJournalType4=Bank +AccountingJournalType5=Expenses report +AccountingJournalType8=Inventory +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 + +## 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) +Modelcsv_openconcerto=Export for OpenConcerto (Test) +Modelcsv_configurable=Export CSV Configurable +Modelcsv_FEC=Export FEC +Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta +ChartofaccountsId=Chart of accounts Id + +## 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 used for accounting closures. +Options=Options +OptionModeProductSell=Mode sales +OptionModeProductSellIntra=Mode sales exported in EEC +OptionModeProductSellExport=Mode sales exported in other countries +OptionModeProductBuy=Mode purchases +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries +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. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign 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 +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. + +## Dictionary +Range=Range of accounting account +Calculated=Calculated +Formula=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 + +## 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 diff --git a/htdocs/langs/am_ET/admin.lang b/htdocs/langs/am_ET/admin.lang new file mode 100644 index 00000000000..7eb67d7a4ab --- /dev/null +++ b/htdocs/langs/am_ET/admin.lang @@ -0,0 +1,2002 @@ +# Dolibarr language file - Source file is en_US - admin +Foundation=Foundation +Version=Version +Publisher=Publisher +VersionProgram=Version program +VersionLastInstall=Initial install version +VersionLastUpgrade=Latest version upgrade +VersionExperimental=Experimental +VersionDevelopment=Development +VersionUnknown=Unknown +VersionRecommanded=Recommended +FileCheck=Fileset Integrity Checks +FileCheckDesc=This tool allows you to check the integrity of files and the setup of your application, comparing each file with the official one. The value of some setup constants may also be checked. You can use this tool to determine if any files have been modified (e.g by a hacker). +FileIntegrityIsStrictlyConformedWithReference=Files integrity is strictly conformed with the reference. +FileIntegrityIsOkButFilesWereAdded=Files integrity check has passed, however some new files have been added. +FileIntegritySomeFilesWereRemovedOrModified=Files integrity check has failed. Some files were modified, removed or added. +GlobalChecksum=Global checksum +MakeIntegrityAnalysisFrom=Make integrity analysis of application files from +LocalSignature=Embedded local signature (less reliable) +RemoteSignature=Remote distant signature (more reliable) +FilesMissing=Missing Files +FilesUpdated=Updated Files +FilesModified=Modified Files +FilesAdded=Added Files +FileCheckDolibarr=Check integrity of application files +AvailableOnlyOnPackagedVersions=The local file for integrity checking is only available when the application is installed from an official package +XmlNotFound=Xml Integrity File of application not found +SessionId=Session ID +SessionSaveHandler=Handler to save sessions +SessionSavePath=Session save location +PurgeSessions=Purge of sessions +ConfirmPurgeSessions=Do you really want to purge all sessions? This will disconnect every user (except yourself). +NoSessionListWithThisHandler=Save session handler configured in your PHP does not allow listing all running sessions. +LockNewSessions=Lock new connections +ConfirmLockNewSessions=Are you sure you want to restrict any new Dolibarr connection to yourself? Only user %s will be able to connect after that. +UnlockNewSessions=Remove connection lock +YourSession=Your session +Sessions=Users Sessions +WebUserGroup=Web server user/group +NoSessionFound=Your PHP configuration seems to not allow listing of active sessions. The directory used to save sessions (%s) may be protected (for example by OS permissions or by PHP directive open_basedir). +DBStoringCharset=Database charset to store data +DBSortingCharset=Database charset to sort data +HostCharset=Host charset +ClientCharset=Client charset +ClientSortingCharset=Client collation +WarningModuleNotActive=Module %s must be enabled +WarningOnlyPermissionOfActivatedModules=Only permissions related to activated modules are shown here. You can activate other modules in the Home->Setup->Modules page. +DolibarrSetup=Dolibarr install or upgrade +InternalUser=Internal user +ExternalUser=External user +InternalUsers=Internal users +ExternalUsers=External users +GUISetup=Display +SetupArea=Setup +UploadNewTemplate=Upload new template(s) +FormToTestFileUploadForm=Form to test file upload (according to setup) +IfModuleEnabled=Note: yes is effective only if module %s is enabled +RemoveLock=Remove/rename file %s if it exists, to allow usage of the Update/Install tool. +RestoreLock=Restore file %s, with read permission only, to disable any further use of the Update/Install tool. +SecuritySetup=Security setup +SecurityFilesDesc=Define here options related to security about uploading files. +ErrorModuleRequirePHPVersion=Error, this module requires PHP version %s or higher +ErrorModuleRequireDolibarrVersion=Error, this module requires Dolibarr version %s or higher +ErrorDecimalLargerThanAreForbidden=Error, a precision higher than %s is not supported. +DictionarySetup=Dictionary setup +Dictionary=Dictionaries +ErrorReservedTypeSystemSystemAuto=Value 'system' and 'systemauto' for type is reserved. You can use 'user' as value to add your own record +ErrorCodeCantContainZero=Code can't contain value 0 +DisableJavascript=Disable JavaScript and Ajax functions +DisableJavascriptNote=Note: For test or debug purpose. For optimization for blind person or text browsers, you may prefer to use the setup on the profile of user +UseSearchToSelectCompanyTooltip=Also if you have a large number of third parties (> 100 000), you can increase speed by setting constant COMPANY_DONOTSEARCH_ANYWHERE to 1 in Setup->Other. Search will then be limited to start of string. +UseSearchToSelectContactTooltip=Also if you have a large number of third parties (> 100 000), you can increase speed by setting constant CONTACT_DONOTSEARCH_ANYWHERE to 1 in Setup->Other. Search will then be limited to start of string. +DelaiedFullListToSelectCompany=Wait until a key is pressed before loading content of Third Parties combo list.
    This may increase performance if you have a large number of third parties, but it is less convenient. +DelaiedFullListToSelectContact=Wait until a key is pressed before loading content of Contact combo list.
    This may increase performance if you have a large number of contacts, but it is less convenient) +NumberOfKeyToSearch=Number of characters to trigger search: %s +NumberOfBytes=Number of Bytes +SearchString=Search string +NotAvailableWhenAjaxDisabled=Not available when Ajax disabled +AllowToSelectProjectFromOtherCompany=On document of a third party, can choose a project linked to another third party +JavascriptDisabled=JavaScript disabled +UsePreviewTabs=Use preview tabs +ShowPreview=Show preview +PreviewNotAvailable=Preview not available +ThemeCurrentlyActive=Theme currently active +CurrentTimeZone=TimeZone PHP (server) +MySQLTimeZone=TimeZone MySql (database) +TZHasNoEffect=Dates are stored and returned by database server as if they were kept as submitted string. The timezone has effect only when using the UNIX_TIMESTAMP function (that should not be used by Dolibarr, so database TZ should have no effect, even if changed after data was entered). +Space=Space +Table=Table +Fields=Fields +Index=Index +Mask=Mask +NextValue=Next value +NextValueForInvoices=Next value (invoices) +NextValueForCreditNotes=Next value (credit notes) +NextValueForDeposit=Next value (down payment) +NextValueForReplacements=Next value (replacements) +MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the maximum filesize for upload to %s %s, irrespective of the value of this parameter +NoMaxSizeByPHPLimit=Note: No limit is set in your PHP configuration +MaxSizeForUploadedFiles=Maximum size for uploaded files (0 to disallow any upload) +UseCaptchaCode=Use graphical code (CAPTCHA) on login page +AntiVirusCommand=Full path to antivirus command +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe +AntiVirusParam= More parameters on command line +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" +ComptaSetup=Accounting module setup +UserSetup=User management setup +MultiCurrencySetup=Multi-currency setup +MenuLimits=Limits and accuracy +MenuIdParent=Parent menu ID +DetailMenuIdParent=ID of parent menu (empty for a top menu) +DetailPosition=Sort number to define menu position +AllMenus=All +NotConfigured=Module/Application not configured +Active=Active +SetupShort=Setup +OtherOptions=Other options +OtherSetup=Other Setup +CurrentValueSeparatorDecimal=Decimal separator +CurrentValueSeparatorThousand=Thousand separator +Destination=Destination +IdModule=Module ID +IdPermissions=Permissions ID +LanguageBrowserParameter=Parameter %s +LocalisationDolibarrParameters=Localization parameters +ClientTZ=Client Time Zone (user) +ClientHour=Client time (user) +OSTZ=Server OS Time Zone +PHPTZ=PHP server Time Zone +DaylingSavingTime=Daylight saving time +CurrentHour=PHP Time (server) +CurrentSessionTimeOut=Current session timeout +YouCanEditPHPTZ=To set a different PHP timezone (not required), you can try to add a .htaccess file with a line like this "SetEnv TZ Europe/Paris" +HoursOnThisPageAreOnServerTZ=Warning, in contrary of other screens, hours on this page are not in your local timezone, but of the timezone of the server. +Box=Widget +Boxes=Widgets +MaxNbOfLinesForBoxes=Max. number of lines for widgets +AllWidgetsWereEnabled=All available widgets are enabled +PositionByDefault=Default order +Position=Position +MenusDesc=Menu managers set content of the two menu bars (horizontal and vertical). +MenusEditorDesc=The menu editor allows you to define custom menu entries. Use it carefully to avoid instability and permanently unreachable menu entries.
    Some modules add menu entries (in menu All mostly). If you remove some of these entries by mistake, you can restore them disabling and reenabling the module. +MenuForUsers=Menu for users +LangFile=.lang file +Language_en_US_es_MX_etc=Language (en_US, es_MX, ...) +System=System +SystemInfo=System information +SystemToolsArea=System tools area +SystemToolsAreaDesc=This area provides administration functions. Use the menu to choose the required feature. +Purge=Purge +PurgeAreaDesc=This page allows you to delete all files generated or stored by Dolibarr (temporary files or all files in %s directory). Using this feature is not normally necessary. It is provided as a workaround for users whose Dolibarr is hosted by a provider that does not offer permissions to delete files generated by the web server. +PurgeDeleteLogFile=Delete log files, including %s defined for Syslog module (no risk of losing data) +PurgeDeleteTemporaryFiles=Delete all temporary files (no risk of losing data). Note: Deletion is done only if the temp directory was created 24 hours ago. +PurgeDeleteTemporaryFilesShort=Delete temporary files +PurgeDeleteAllFilesInDocumentsDir=Delete all files in directory: %s.
    This will delete all generated documents related to elements (third parties, invoices etc...), files uploaded into the ECM module, database backup dumps and temporary files. +PurgeRunNow=Purge now +PurgeNothingToDelete=No directory or files to delete. +PurgeNDirectoriesDeleted=%s files or directories deleted. +PurgeNDirectoriesFailed=Failed to delete %s files or directories. +PurgeAuditEvents=Purge all security events +ConfirmPurgeAuditEvents=Are you sure you want to purge all security events? All security logs will be deleted, no other data will be removed. +GenerateBackup=Generate backup +Backup=Backup +Restore=Restore +RunCommandSummary=Backup has been launched with the following command +BackupResult=Backup result +BackupFileSuccessfullyCreated=Backup file successfully generated +YouCanDownloadBackupFile=The generated file can now be downloaded +NoBackupFileAvailable=No backup files available. +ExportMethod=Export method +ImportMethod=Import method +ToBuildBackupFileClickHere=To build a backup file, click here. +ImportMySqlDesc=To import a MySQL backup file, you may use phpMyAdmin via your hosting or use the mysql command from the Command line.
    For example: +ImportPostgreSqlDesc=To import a backup file, you must use pg_restore command from command line: +ImportMySqlCommand=%s %s < mybackupfile.sql +ImportPostgreSqlCommand=%s %s mybackupfile.sql +FileNameToGenerate=Filename for backup: +Compression=Compression +CommandsToDisableForeignKeysForImport=Command to disable foreign keys on import +CommandsToDisableForeignKeysForImportWarning=Mandatory if you want to be able to restore your sql dump later +ExportCompatibility=Compatibility of generated export file +ExportUseMySQLQuickParameter=Use the --quick parameter +ExportUseMySQLQuickParameterHelp=The '--quick' parameter helps limit RAM consumption for large tables. +MySqlExportParameters=MySQL export parameters +PostgreSqlExportParameters= PostgreSQL export parameters +UseTransactionnalMode=Use transactional mode +FullPathToMysqldumpCommand=Full path to mysqldump command +FullPathToPostgreSQLdumpCommand=Full path to pg_dump command +AddDropDatabase=Add DROP DATABASE command +AddDropTable=Add DROP TABLE command +ExportStructure=Structure +NameColumn=Name columns +ExtendedInsert=Extended INSERT +NoLockBeforeInsert=No lock commands around INSERT +DelayedInsert=Delayed insert +EncodeBinariesInHexa=Encode binary data in hexadecimal +IgnoreDuplicateRecords=Ignore errors of duplicate record (INSERT IGNORE) +AutoDetectLang=Autodetect (browser language) +FeatureDisabledInDemo=Feature disabled in demo +FeatureAvailableOnlyOnStable=Feature only available on official stable versions +BoxesDesc=Widgets are components showing some information that you can add to personalize some pages. You can choose between showing the widget or not by selecting target page and clicking 'Activate', or by clicking the trashcan to disable it. +OnlyActiveElementsAreShown=Only elements from enabled modules are shown. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. +ModulesMarketPlaceDesc=You can find more modules to download on external websites on the Internet... +ModulesDeployDesc=If permissions on your file system allow it, you can use this tool to deploy an external module. The module will then be visible on the tab %s. +ModulesMarketPlaces=Find external app/modules +ModulesDevelopYourModule=Develop your own app/modules +ModulesDevelopDesc=You may also develop your own module or find a partner to develop one for you. +DOLISTOREdescriptionLong=Instead of switching on www.dolistore.com web site to find an external module, you can use this embedded tool that will perform the search on the external market place for you (may be slow, need an internet access)... +NewModule=New +FreeModule=Free +CompatibleUpTo=Compatible with version %s +NotCompatible=This module does not seem compatible with your Dolibarr %s (Min %s - Max %s). +CompatibleAfterUpdate=This module requires an update to your Dolibarr %s (Min %s - Max %s). +SeeInMarkerPlace=See in Market place +SeeSetupOfModule=See setup of module %s +Updated=Updated +Nouveauté=Novelty +AchatTelechargement=Buy / Download +GoModuleSetupArea=To deploy/install a new module, go to the Module setup area: %s. +DoliStoreDesc=DoliStore, the official market place for Dolibarr ERP/CRM external modules +DoliPartnersDesc=List of companies providing custom-developed modules or features.
    Note: since Dolibarr is an open source application, anyone experienced in PHP programming may develop a module. +WebSiteDesc=External websites for more add-on (non-core) modules... +DevelopYourModuleDesc=Some solutions to develop your own module... +URL=URL +RelativeURL=Relative URL +BoxesAvailable=Widgets available +BoxesActivated=Widgets activated +ActivateOn=Activate on +ActiveOn=Activated on +SourceFile=Source file +AvailableOnlyIfJavascriptAndAjaxNotDisabled=Available only if JavaScript is not disabled +Required=Required +UsedOnlyWithTypeOption=Used by some agenda option only +Security=Security +Passwords=Passwords +DoNotStoreClearPassword=Encrypt passwords stored in database (NOT as plain-text). It is strongly recommended to activate this option. +MainDbPasswordFileConfEncrypted=Encrypt database password stored in conf.php. It is strongly recommended to activate this option. +InstrucToEncodePass=To have password encoded into the conf.php file, replace the line
    $dolibarr_main_db_pass="...";
    by
    $dolibarr_main_db_pass="crypted:%s"; +InstrucToClearPass=To have password decoded (clear) into the conf.php file, replace the line
    $dolibarr_main_db_pass="crypted:...";
    by
    $dolibarr_main_db_pass="%s"; +ProtectAndEncryptPdfFiles=Protect generated PDF files. This is NOT recommended as it breaks bulk PDF generation. +ProtectAndEncryptPdfFilesDesc=Protection of a PDF document keeps it available to read and print with any PDF browser. However, editing and copying is not possible anymore. Note that using this feature makes building of a global merged PDFs not working. +Feature=Feature +DolibarrLicense=License +Developpers=Developers/contributors +OfficialWebSite=Dolibarr official web site +OfficialWebSiteLocal=Local web site (%s) +OfficialWiki=Dolibarr documentation / Wiki +OfficialDemo=Dolibarr online demo +OfficialMarketPlace=Official market place for external modules/addons +OfficialWebHostingService=Referenced web hosting services (Cloud hosting) +ReferencedPreferredPartners=Preferred Partners +OtherResources=Other resources +ExternalResources=External Resources +SocialNetworks=Social Networks +ForDocumentationSeeWiki=For user or developer documentation (Doc, FAQs...),
    take a look at the Dolibarr Wiki:
    %s +ForAnswersSeeForum=For any other questions/help, you can use the Dolibarr forum:
    %s +HelpCenterDesc1=Here are some resources for getting help and support with Dolibarr. +HelpCenterDesc2=Some of these resources are only available in english. +CurrentMenuHandler=Current menu handler +MeasuringUnit=Measuring unit +LeftMargin=Left margin +TopMargin=Top margin +PaperSize=Paper type +Orientation=Orientation +SpaceX=Space X +SpaceY=Space Y +FontSize=Font size +Content=Content +NoticePeriod=Notice period +NewByMonth=New by month +Emails=Emails +EMailsSetup=Emails setup +EMailsDesc=This page allows you to override your default PHP parameters for email sending. In most cases on Unix/Linux OS, the PHP setup is correct and these parameters are unnecessary. +EmailSenderProfiles=Emails sender profiles +EMailsSenderProfileDesc=You can keep this section empty. If you enter some emails here, they will be added to the list of possible senders into the combobox when your write a new email. +MAIN_MAIL_SMTP_PORT=SMTP/SMTPS Port (default value in php.ini: %s) +MAIN_MAIL_SMTP_SERVER=SMTP/SMTPS Host (default value in php.ini: %s) +MAIN_MAIL_SMTP_PORT_NotAvailableOnLinuxLike=SMTP/SMTPS Port (Not defined into PHP on Unix-like systems) +MAIN_MAIL_SMTP_SERVER_NotAvailableOnLinuxLike=SMTP/SMTPS Host (Not defined into PHP on Unix-like systems) +MAIN_MAIL_EMAIL_FROM=Sender email for automatic emails (default value in php.ini: %s) +MAIN_MAIL_ERRORS_TO=Email used for error returns emails (fields 'Errors-To' in emails sent) +MAIN_MAIL_AUTOCOPY_TO= Copy (Bcc) all sent emails to +MAIN_DISABLE_ALL_MAILS=Disable all email sending (for test purposes or demos) +MAIN_MAIL_FORCE_SENDTO=Send all emails to (instead of real recipients, for test purposes) +MAIN_MAIL_ENABLED_USER_DEST_SELECT=Suggest emails of employees (if defined) into the list of predefined recipient when writing a new email +MAIN_MAIL_SENDMODE=Email sending method +MAIN_MAIL_SMTPS_ID=SMTP ID (if sending server requires authentication) +MAIN_MAIL_SMTPS_PW=SMTP Password (if sending server requires authentication) +MAIN_MAIL_EMAIL_TLS=Use TLS (SSL) encryption +MAIN_MAIL_EMAIL_STARTTLS=Use TLS (STARTTLS) encryption +MAIN_MAIL_EMAIL_DKIM_ENABLED=Use DKIM to generate email signature +MAIN_MAIL_EMAIL_DKIM_DOMAIN=Email Domain for use with dkim +MAIN_MAIL_EMAIL_DKIM_SELECTOR=Name of dkim selector +MAIN_MAIL_EMAIL_DKIM_PRIVATE_KEY=Private key for dkim signing +MAIN_DISABLE_ALL_SMS=Disable all SMS sending (for test purposes or demos) +MAIN_SMS_SENDMODE=Method to use to send SMS +MAIN_MAIL_SMS_FROM=Default sender phone number for SMS sending +MAIN_MAIL_DEFAULT_FROMTYPE=Default sender email for manual sending (User email or Company email) +UserEmail=User email +CompanyEmail=Company Email +FeatureNotAvailableOnLinux=Feature not available on Unix like systems. Test your sendmail program locally. +SubmitTranslation=If the translation for this language is not complete or you find errors, you can correct this by editing files in directory langs/%s and submit your change to www.transifex.com/dolibarr-association/dolibarr/ +SubmitTranslationENUS=If translation for this language is not complete or you find errors, you can correct this by editing files into directory langs/%s and submit modified files on dolibarr.org/forum or for developers on github.com/Dolibarr/dolibarr. +ModuleSetup=Module setup +ModulesSetup=Modules/Application setup +ModuleFamilyBase=System +ModuleFamilyCrm=Customer Relationship Management (CRM) +ModuleFamilySrm=Vendor Relationship Management (VRM) +ModuleFamilyProducts=Product Management (PM) +ModuleFamilyHr=Human Resource Management (HR) +ModuleFamilyProjects=Projects/Collaborative work +ModuleFamilyOther=Other +ModuleFamilyTechnic=Multi-modules tools +ModuleFamilyExperimental=Experimental modules +ModuleFamilyFinancial=Financial Modules (Accounting/Treasury) +ModuleFamilyECM=Electronic Content Management (ECM) +ModuleFamilyPortal=Websites and other frontal application +ModuleFamilyInterface=Interfaces with external systems +MenuHandlers=Menu handlers +MenuAdmin=Menu editor +DoNotUseInProduction=Do not use in production +ThisIsProcessToFollow=Upgrade procedure: +ThisIsAlternativeProcessToFollow=This is an alternative setup to process manually: +StepNb=Step %s +FindPackageFromWebSite=Find a package that provides the features you need (for example on the official web site %s). +DownloadPackageFromWebSite=Download package (for example from the official web site %s). +UnpackPackageInDolibarrRoot=Unpack/unzip the packaged files into your Dolibarr server directory: %s +UnpackPackageInModulesRoot=To deploy/install an external module, unpack/unzip the packaged files into the server directory dedicated to external modules:
    %s +SetupIsReadyForUse=Module deployment is finished. You must however enable and setup the module in your application by going to the page setup modules: %s. +NotExistsDirect=The alternative root directory is not defined to an existing directory.
    +InfDirAlt=Since version 3, it is possible to define an alternative root directory. This allows you to store, into a dedicated directory, plug-ins and custom templates.
    Just create a directory at the root of Dolibarr (eg: custom).
    +InfDirExample=
    Then declare it in the file conf.php
    $dolibarr_main_url_root_alt='/custom'
    $dolibarr_main_document_root_alt='/path/of/dolibarr/htdocs/custom'
    If these lines are commented with "#", to enable them, just uncomment by removing the "#" character. +YouCanSubmitFile=You can upload the .zip file of module package from here: +CurrentVersion=Dolibarr current version +CallUpdatePage=Browse to the page that updates the database structure and data: %s. +LastStableVersion=Latest stable version +LastActivationDate=Latest activation date +LastActivationAuthor=Latest activation author +LastActivationIP=Latest activation IP +UpdateServerOffline=Update server offline +WithCounter=Manage a counter +GenericMaskCodes=You may enter any numbering mask. In this mask, the following tags could be used:
    {000000} corresponds to a number which will be incremented on each %s. Enter as many zeros as the desired length of the counter. The counter will be completed by zeros from the left in order to have as many zeros as the mask.
    {000000+000} same as previous but an offset corresponding to the number to the right of the + sign is applied starting on first %s.
    {000000@x} same as previous but the counter is reset to zero when month x is reached (x between 1 and 12, or 0 to use the early months of fiscal year defined in your configuration, or 99 to reset to zero every month). If this option is used and x is 2 or higher, then sequence {yy}{mm} or {yyyy}{mm} is also required.
    {dd} day (01 to 31).
    {mm} month (01 to 12).
    {yy}, {yyyy} or {y} year over 2, 4 or 1 numbers.
    +GenericMaskCodes2={cccc} the client code on n characters
    {cccc000} the client code on n characters is followed by a counter dedicated for customer. This counter dedicated to customer is reset at same time than global counter.
    {tttt} The code of third party type on n characters (see menu Home - Setup - Dictionary - Types of third parties). If you add this tag, the counter will be different for each type of third party.
    +GenericMaskCodes3=All other characters in the mask will remain intact.
    Spaces are not allowed.
    +GenericMaskCodes4a=Example on the 99th %s of the third party TheCompany, with date 2007-01-31:
    +GenericMaskCodes4b=Example on third party created on 2007-03-01:
    +GenericMaskCodes4c=Example on product created on 2007-03-01:
    +GenericMaskCodes5=ABC{yy}{mm}-{000000} will give ABC0701-000099
    {0000+100@1}-ZZZ/{dd}/XXX will give 0199-ZZZ/31/XXX
    IN{yy}{mm}-{0000}-{t} will give IN0701-0099-A if the type of company is 'Responsable Inscripto' with code for type that is 'A_RI' +GenericNumRefModelDesc=Returns a customizable number according to a defined mask. +ServerAvailableOnIPOrPort=Server is available at address %s on port %s +ServerNotAvailableOnIPOrPort=Server is not available at address %s on port %s +DoTestServerAvailability=Test server connectivity +DoTestSend=Test sending +DoTestSendHTML=Test sending HTML +ErrorCantUseRazIfNoYearInMask=Error, can't use option @ to reset counter each year if sequence {yy} or {yyyy} is not in mask. +ErrorCantUseRazInStartedYearIfNoYearMonthInMask=Error, can't use option @ if sequence {yy}{mm} or {yyyy}{mm} is not in mask. +UMask=UMask parameter for new files on Unix/Linux/BSD/Mac file system. +UMaskExplanation=This parameter allow you to define permissions set by default on files created by Dolibarr on server (during upload for example).
    It must be the octal value (for example, 0666 means read and write for everyone).
    This parameter is useless on a Windows server. +SeeWikiForAllTeam=Take a look at the Wiki page for a list of contributors and their organization +UseACacheDelay= Delay for caching export response in seconds (0 or empty for no cache) +DisableLinkToHelpCenter=Hide link "Need help or support" on login page +DisableLinkToHelp=Hide link to online help "%s" +AddCRIfTooLong=There is no automatic text wrapping, text that is too long will not display on documents. Please add carriage returns in the text area if needed. +ConfirmPurge=Are you sure you want to execute this purge?
    This will permanently delete all your data files with no way to restore them (ECM files, attached files...). +MinLength=Minimum length +LanguageFilesCachedIntoShmopSharedMemory=Files .lang loaded in shared memory +LanguageFile=Language file +ExamplesWithCurrentSetup=Examples with current configuration +ListOfDirectories=List of OpenDocument templates directories +ListOfDirectoriesForModelGenODT=List of directories containing templates files with OpenDocument format.

    Put here full path of directories.
    Add a carriage return between eah 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. +NumberOfModelFilesFound=Number of ODT/ODS template files found in these directories +ExampleOfDirectoriesForModelGen=Examples of syntax:
    c:\\mydir
    /home/mydir
    DOL_DATA_ROOT/ecm/ecmdir +FollowingSubstitutionKeysCanBeUsed=
    To know how to create your odt document templates, before storing them in those directories, read wiki documentation: +FullListOnOnlineDocumentation=http://wiki.dolibarr.org/index.php/Create_an_ODT_document_template +FirstnameNamePosition=Position of Name/Lastname +DescWeather=The following images will be shown on the dashboard when the number of late actions reach the following values: +KeyForWebServicesAccess=Key to use Web Services (parameter "dolibarrkey" in webservices) +TestSubmitForm=Input test form +ThisForceAlsoTheme=Using this menu manager will also use its own theme whatever the user choice. Also this menu manager specialized for smartphones does not work on all smartphone. Use another menu manager if you experience problems with yours. +ThemeDir=Skins directory +ConnectionTimeout=Connection timeout +ResponseTimeout=Response timeout +SmsTestMessage=Test message from __PHONEFROM__ to __PHONETO__ +ModuleMustBeEnabledFirst=Module %s must be enabled first if you need this feature. +SecurityToken=Key to secure URLs +NoSmsEngine=No SMS sender manager available. A SMS sender manager is not installed with the default distribution because they depend on an external vendor, but you can find some on %s +PDF=PDF +PDFDesc=Global options for PDF generation. +PDFAddressForging=Rules for address boxes +HideAnyVATInformationOnPDF=Hide all information related to Sales Tax / VAT +PDFRulesForSalesTax=Rules for Sales Tax / VAT +PDFLocaltax=Rules for %s +HideLocalTaxOnPDF=Hide %s rate in column Tax Sale +HideDescOnPDF=Hide products description +HideRefOnPDF=Hide products ref. +HideDetailsOnPDF=Hide product lines details +PlaceCustomerAddressToIsoLocation=Use french standard position (La Poste) for customer address position +Library=Library +UrlGenerationParameters=Parameters to secure URLs +SecurityTokenIsUnique=Use a unique securekey parameter for each URL +EnterRefToBuildUrl=Enter reference for object %s +GetSecuredUrl=Get calculated URL +ButtonHideUnauthorized=Hide buttons for non-admin users for unauthorized actions instead of showing greyed disabled buttons +OldVATRates=Old VAT rate +NewVATRates=New VAT rate +PriceBaseTypeToChange=Modify on prices with base reference value defined on +MassConvert=Launch bulk conversion +PriceFormatInCurrentLanguage=Price Format In Current Language +String=String +TextLong=Long text +HtmlText=Html text +Int=Integer +Float=Float +DateAndTime=Date and hour +Unique=Unique +Boolean=Boolean (one checkbox) +ExtrafieldPhone = Phone +ExtrafieldPrice = Price +ExtrafieldMail = Email +ExtrafieldUrl = Url +ExtrafieldSelect = Select list +ExtrafieldSelectList = Select from table +ExtrafieldSeparator=Separator (not a field) +ExtrafieldPassword=Password +ExtrafieldRadio=Radio buttons (one choice only) +ExtrafieldCheckBox=Checkboxes +ExtrafieldCheckBoxFromList=Checkboxes from table +ExtrafieldLink=Link to an object +ComputedFormula=Computed field +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +Computedpersistent=Store computed field +ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! +ExtrafieldParamHelpPassword=Leaving this field blank means this value will be stored without encryption (field must be only hidden with star on screen).
    Set 'auto' to use the default encryption rule to save password into database (then value read will be the hash only, no way to retrieve original value) +ExtrafieldParamHelpselect=List of values must be lines with format key,value (where key can't be '0')

    for example:
    1,value1
    2,value2
    code3,value3
    ...

    In order to have the list depending on another complementary attribute list:
    1,value1|options_parent_list_code:parent_key
    2,value2|options_parent_list_code:parent_key

    In order to have the list depending on another list:
    1,value1|parent_list_code:parent_key
    2,value2|parent_list_code:parent_key +ExtrafieldParamHelpcheckbox=List of values must be lines with format key,value (where key can't be '0')

    for example:
    1,value1
    2,value2
    3,value3
    ... +ExtrafieldParamHelpradio=List of values must be lines with format key,value (where key can't be '0')

    for example:
    1,value1
    2,value2
    3,value3
    ... +ExtrafieldParamHelpsellist=List of values comes from a table
    Syntax: table_name:label_field:id_field::filter
    Example: c_typent:libelle:id::filter

    - idfilter is necessarly a primary int key
    - filter can be a simple test (eg active=1) to display only active value
    You can also use $ID$ in filter witch is the current id of current object
    To do a SELECT in filter use $SEL$
    if you want to filter on extrafields use syntax extra.fieldcode=... (where field code is the code of extrafield)

    In order to have the list depending on another complementary attribute list:
    c_typent:libelle:id:options_parent_list_code|parent_column:filter

    In order to have the list depending on another list:
    c_typent:libelle:id:parent_list_code|parent_column:filter +ExtrafieldParamHelpchkbxlst=List of values comes from a table
    Syntax: table_name:label_field:id_field::filter
    Example: c_typent:libelle:id::filter

    filter can be a simple test (eg active=1) to display only active value
    You can also use $ID$ in filter witch is the current id of current object
    To do a SELECT in filter use $SEL$
    if you want to filter on extrafields use syntax extra.fieldcode=... (where field code is the code of extrafield)

    In order to have the list depending on another complementary attribute list:
    c_typent:libelle:id:options_parent_list_code|parent_column:filter

    In order to have the list depending on another list:
    c_typent:libelle:id:parent_list_code|parent_column:filter +ExtrafieldParamHelplink=Parameters must be ObjectName:Classpath
    Syntax: ObjectName:Classpath
    Examples:
    Societe:societe/class/societe.class.php
    Contact:contact/class/contact.class.php +ExtrafieldParamHelpSeparator=Keep empty for a simple separator
    Set this to 1 for a collapsing separator (open by default for new session, then status is kept for each user session)
    Set this to 2 for a collapsing separator (collapsed by default for new session, then status is kept fore each user session) +LibraryToBuildPDF=Library used for PDF generation +LocalTaxDesc=Some countries may apply two or three taxes on each invoice line. If this is the case, choose the type for the second and third tax and its rate. Possible type are:
    1: local tax apply on products and services without vat (localtax is calculated on amount without tax)
    2: local tax apply on products and services including vat (localtax is calculated on amount + main tax)
    3: local tax apply on products without vat (localtax is calculated on amount without tax)
    4: local tax apply on products including vat (localtax is calculated on amount + main vat)
    5: local tax apply on services without vat (localtax is calculated on amount without tax)
    6: local tax apply on services including vat (localtax is calculated on amount + tax) +SMS=SMS +LinkToTestClickToDial=Enter a phone number to call to show a link to test the ClickToDial url for user %s +RefreshPhoneLink=Refresh link +LinkToTest=Clickable link generated for user %s (click phone number to test) +KeepEmptyToUseDefault=Keep empty to use default value +DefaultLink=Default link +SetAsDefault=Set as default +ValueOverwrittenByUserSetup=Warning, this value may be overwritten by user specific setup (each user can set his own clicktodial url) +ExternalModule=External module +InstalledInto=Installed into directory %s +BarcodeInitForthird-parties=Mass barcode init for third-parties +BarcodeInitForProductsOrServices=Mass barcode init or reset for products or services +CurrentlyNWithoutBarCode=Currently, you have %s record on %s %s without barcode defined. +InitEmptyBarCode=Init value for next %s empty records +EraseAllCurrentBarCode=Erase all current barcode values +ConfirmEraseAllCurrentBarCode=Are you sure you want to erase all current barcode values? +AllBarcodeReset=All barcode values have been removed +NoBarcodeNumberingTemplateDefined=No numbering barcode template enabled in the Barcode module setup. +EnableFileCache=Enable file cache +ShowDetailsInPDFPageFoot=Add more details into footer, such as company address or manager names (in addition to professional ids, company capital and VAT number). +NoDetails=No additional details in footer +DisplayCompanyInfo=Display company address +DisplayCompanyManagers=Display manager names +DisplayCompanyInfoAndManagers=Display company address and manager names +EnableAndSetupModuleCron=If you want to have this recurring invoice generated automatically, module *%s* must be enabled and correctly setup. Otherwise, generation of invoices must be done manually from this template using the *Create* button. Note that even if you enabled automatic generation, you can still safely launch manual generation. Generation of duplicates for the same period is not possible. +ModuleCompanyCodeCustomerAquarium=%s followed by customer code for a customer accounting code +ModuleCompanyCodeSupplierAquarium=%s followed by vendor code for a vendor accounting code +ModuleCompanyCodePanicum=Return an empty accounting code. +ModuleCompanyCodeDigitaria=Returns a compound accounting code according to the name of the third party. The code consists of a prefix that can be defined in the first position followed by the number of characters defined in the third party code. +ModuleCompanyCodeCustomerDigitaria=%s followed by the truncated customer name by the number of characters: %s for the customer accounting code. +ModuleCompanyCodeSupplierDigitaria=%s followed by the truncated supplier name by the number of characters: %s for the supplier accounting code. +Use3StepsApproval=By default, Purchase Orders need to be created and approved by 2 different users (one step/user to create and one step/user to approve. Note that if user has both permission to create and approve, one step/user will be enough). You can ask with this option to introduce a third step/user approval, if amount is higher than a dedicated value (so 3 steps will be necessary: 1=validation, 2=first approval and 3=second approval if amount is enough).
    Set this to empty if one approval (2 steps) is enough, set it to a very low value (0.1) if a second approval (3 steps) is always required. +UseDoubleApproval=Use a 3 steps approval when amount (without tax) is higher than... +WarningPHPMail=WARNING: It is often better to setup outgoing emails to use the email server of your provider instead of the default setup. Some email providers (like Yahoo) do not allow you to send an email from another server than their own server. Your current setup uses the server of the application to send email and not the server of your email provider, so some recipients (the one compatible with the restrictive DMARC protocol), will ask your email provider if they can accept your email and some email providers (like Yahoo) may respond "no" because the server is not theirs, so few of your sent Emails may not be accepted (be careful also of your email provider's sending quota).
    If your Email provider (like Yahoo) has this restriction, you must change Email setup to choose the other method "SMTP server" and enter the SMTP server and credentials provided by your Email provider. +WarningPHPMail2=If your email SMTP provider need to restrict email client to some IP addresses (very rare), this is the IP address of the mail user agent (MUA) for your ERP CRM application: %s. +WarningPHPMailSPF=If the domain name in your sender email address is protected by SPF (ask you email provider), you must include the following IPs in the SPF record of the DNS of your domain: %s. +ClickToShowDescription=Click to show description +DependsOn=This module needs the module(s) +RequiredBy=This module is required by module(s) +TheKeyIsTheNameOfHtmlField=This is the name of the HTML field. Technical knowledge is required to read the content of the HTML page to get the key name of a field. +PageUrlForDefaultValues=You must enter the relative path of the page URL. If you include parameters in URL, the default values will be effective if all parameters are set to same value. +PageUrlForDefaultValuesCreate=
    Example:
    For the form to create a new third party, it is %s.
    For URL of external modules installed into custom directory, do not include the "custom/", so use path like mymodule/mypage.php and not custom/mymodule/mypage.php.
    If you want default value only if url has some parameter, you can use %s +PageUrlForDefaultValuesList=
    Example:
    For the page that lists third parties, it is %s.
    For URL of external modules installed into custom directory, do not include the "custom/" so use a path like mymodule/mypagelist.php and not custom/mymodule/mypagelist.php.
    If you want default value only if url has some parameter, you can use %s +AlsoDefaultValuesAreEffectiveForActionCreate=Also note that overwritting default values for form creation works only for pages that were correctly designed (so with parameter action=create or presend...) +EnableDefaultValues=Enable customization of default values +EnableOverwriteTranslation=Enable usage of overwritten translation +GoIntoTranslationMenuToChangeThis=A translation has been found for the key with this code. To change this value, you must edit it from Home-Setup-translation. +WarningSettingSortOrder=Warning, setting a default sort order may result in a technical error when going on the list page if field is an unknown field. If you experience such an error, come back to this page to remove the default sort order and restore default behavior. +Field=Field +ProductDocumentTemplates=Document templates to generate product document +FreeLegalTextOnExpenseReports=Free legal text on expense reports +WatermarkOnDraftExpenseReports=Watermark on draft expense reports +AttachMainDocByDefault=Set this to 1 if you want to attach main document to email by default (if applicable) +FilesAttachedToEmail=Attach file +SendEmailsReminders=Send agenda reminders by emails +davDescription=Setup a WebDAV server +DAVSetup=Setup of module DAV +DAV_ALLOW_PRIVATE_DIR=Enable the generic private directory (WebDAV dedicated directory named "private" - login required) +DAV_ALLOW_PRIVATE_DIRTooltip=The generic private directory is a WebDAV directory anybody can access with its application login/pass. +DAV_ALLOW_PUBLIC_DIR=Enable the generic public directory (WebDAV dedicated directory named "public" - no login required) +DAV_ALLOW_PUBLIC_DIRTooltip=The generic public directory is a WebDAV directory anybody can access (in read and write mode), with no authorization required (login/password account). +DAV_ALLOW_ECM_DIR=Enable the DMS/ECM private directory (root directory of the DMS/ECM module - login required) +DAV_ALLOW_ECM_DIRTooltip=The root directory where all files are manually uploaded when using the DMS/ECM module. Similarly as access from the web interface, you will need a valid login/password with adecuate permissions to access it. +# Modules +Module0Name=Users & Groups +Module0Desc=Users / Employees and Groups management +Module1Name=Third Parties +Module1Desc=Companies and contacts management (customers, prospects...) +Module2Name=Commercial +Module2Desc=Commercial management +Module10Name=Accounting (simplified) +Module10Desc=Simple accounting reports (journals, turnover) based on database content. Does not use any ledger table. +Module20Name=Proposals +Module20Desc=Commercial proposal management +Module22Name=Mass Emailings +Module22Desc=Manage bulk emailing +Module23Name=Energy +Module23Desc=Monitoring the consumption of energies +Module25Name=Sales Orders +Module25Desc=Sales order management +Module30Name=Invoices +Module30Desc=Management of invoices and credit notes for customers. Management of invoices and credit notes for suppliers +Module40Name=Vendors +Module40Desc=Vendors and purchase management (purchase orders and billing of supplier invoices) +Module42Name=Debug Logs +Module42Desc=Logging facilities (file, syslog, ...). Such logs are for technical/debug purposes. +Module49Name=Editors +Module49Desc=Editor management +Module50Name=Products +Module50Desc=Management of Products +Module51Name=Mass mailings +Module51Desc=Mass paper mailing management +Module52Name=Stocks +Module52Desc=Stock management +Module53Name=Services +Module53Desc=Management of Services +Module54Name=Contracts/Subscriptions +Module54Desc=Management of contracts (services or recurring subscriptions) +Module55Name=Barcodes +Module55Desc=Barcode management +Module56Name=Telephony +Module56Desc=Telephony integration +Module57Name=Bank Direct Debit payments +Module57Desc=Management of Direct Debit payment orders. It includes generation of SEPA file for European countries. +Module58Name=ClickToDial +Module58Desc=Integration of a ClickToDial system (Asterisk, ...) +Module59Name=Bookmark4u +Module59Desc=Add function to generate Bookmark4u account from a Dolibarr account +Module60Name=Stickers +Module60Desc=Management of stickers +Module70Name=Interventions +Module70Desc=Intervention management +Module75Name=Expense and trip notes +Module75Desc=Expense and trip notes management +Module80Name=Shipments +Module80Desc=Shipments and delivery note management +Module85Name=Banks & Cash +Module85Desc=Management of bank or cash accounts +Module100Name=External Site +Module100Desc=Add a link to an external website as a main menu icon. Website is shown in a frame under the top menu. +Module105Name=Mailman and SPIP +Module105Desc=Mailman or SPIP interface for member module +Module200Name=LDAP +Module200Desc=LDAP directory synchronization +Module210Name=PostNuke +Module210Desc=PostNuke integration +Module240Name=Data exports +Module240Desc=Tool to export Dolibarr data (with assistance) +Module250Name=Data imports +Module250Desc=Tool to import data into Dolibarr (with assistance) +Module310Name=Members +Module310Desc=Foundation members management +Module320Name=RSS Feed +Module320Desc=Add a RSS feed to Dolibarr pages +Module330Name=Bookmarks & Shortcuts +Module330Desc=Create shortcuts, always accessible, to the internal or external pages to which you frequently access +Module400Name=Projects or Leads +Module400Desc=Management of projects, leads/opportunities and/or tasks. You can also assign any element (invoice, order, proposal, intervention, ...) to a project and get a transversal view from the project view. +Module410Name=Webcalendar +Module410Desc=Webcalendar integration +Module500Name=Taxes & Special Expenses +Module500Desc=Management of other expenses (sale taxes, social or fiscal taxes, dividends, ...) +Module510Name=Salaries +Module510Desc=Record and track employee payments +Module520Name=Loans +Module520Desc=Management of loans +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 +Module610Desc=Creation of product variants (color, size etc.) +Module700Name=Donations +Module700Desc=Donation management +Module770Name=Expense Reports +Module770Desc=Manage expense reports claims (transportation, meal, ...) +Module1120Name=Vendor Commercial Proposals +Module1120Desc=Request vendor commercial proposal and prices +Module1200Name=Mantis +Module1200Desc=Mantis integration +Module1520Name=Document Generation +Module1520Desc=Mass email document generation +Module1780Name=Tags/Categories +Module1780Desc=Create tags/category (products, customers, suppliers, contacts or members) +Module2000Name=WYSIWYG editor +Module2000Desc=Allow text fields to be edited/formatted using CKEditor (html) +Module2200Name=Dynamic Prices +Module2200Desc=Use maths expressions for auto-generation of prices +Module2300Name=Scheduled jobs +Module2300Desc=Scheduled jobs management (alias cron or chrono table) +Module2400Name=Events/Agenda +Module2400Desc=Track events. Log automatic events for tracking purposes or record manual events or meetings. This is the principal module for good Customer or Vendor Relationship Management. +Module2500Name=DMS / ECM +Module2500Desc=Document Management System / Electronic Content Management. Automatic organization of your generated or stored documents. Share them when you need. +Module2600Name=API/Web services (SOAP server) +Module2600Desc=Enable the Dolibarr SOAP server providing API services +Module2610Name=API/Web services (REST server) +Module2610Desc=Enable the Dolibarr REST server providing API services +Module2660Name=Call WebServices (SOAP client) +Module2660Desc=Enable the Dolibarr web services client (Can be used to push data/requests to external servers. Only Purchase orders are currently supported.) +Module2700Name=Gravatar +Module2700Desc=Use online Gravatar service (www.gravatar.com) to show photo of users/members (found with their emails). Needs Internet access +Module2800Desc=FTP Client +Module2900Name=GeoIPMaxmind +Module2900Desc=GeoIP Maxmind conversions capabilities +Module3200Name=Unalterable Archives +Module3200Desc=Enable an unalterable log of business events. Events are archived in real-time. The log is a read-only table of chained events that can be exported. This module may be mandatory for some countries. +Module4000Name=HRM +Module4000Desc=Human resources management (management of department, employee contracts and feelings) +Module5000Name=Multi-company +Module5000Desc=Allows you to manage multiple companies +Module6000Name=Workflow +Module6000Desc=Workflow management (automatic creation of object and/or automatic status change) +Module10000Name=Websites +Module10000Desc=Create websites (public) with a WYSIWYG editor. This is a webmaster or developer oriented CMS (it is better to know HTML and CSS language). Just setup your web server (Apache, Nginx, ...) to point to the dedicated Dolibarr directory to have it online on the internet with your own domain name. +Module20000Name=Leave Request Management +Module20000Desc=Define and track employee leave requests +Module39000Name=Product Lots +Module39000Desc=Lots, serial numbers, eat-by/sell-by date management for products +Module40000Name=Multicurrency +Module40000Desc=Use alternative currencies in prices and documents +Module50000Name=PayBox +Module50000Desc=Offer customers a PayBox online payment page (credit/debit cards). This can be used to allow your customers to make ad-hoc payments or payments related to a specific Dolibarr object (invoice, order etc...) +Module50100Name=POS SimplePOS +Module50100Desc=Point of Sale module SimplePOS (simple POS). +Module50150Name=POS TakePOS +Module50150Desc=Point of Sale module TakePOS (touchscreen POS, for shops, bars or restaurants). +Module50200Name=Paypal +Module50200Desc=Offer customers a PayPal online payment page (PayPal account or credit/debit cards). This can be used to allow your customers to make ad-hoc payments or payments related to a specific Dolibarr object (invoice, order etc...) +Module50300Name=Stripe +Module50300Desc=Offer customers a Stripe online payment page (credit/debit cards). This can be used to allow your customers to make ad-hoc payments or payments related to a specific Dolibarr object (invoice, order etc...) +Module50400Name=Accounting (double entry) +Module50400Desc=Accounting management (double entries, support general and auxiliary ledgers). Export the ledger in several other accounting software formats. +Module54000Name=PrintIPP +Module54000Desc=Direct print (without opening the documents) using Cups IPP interface (Printer must be visible from server, and CUPS must be installed on server). +Module55000Name=Poll, Survey or Vote +Module55000Desc=Create online polls, surveys or votes (like Doodle, Studs, RDVz etc...) +Module59000Name=Margins +Module59000Desc=Module to manage margins +Module60000Name=Commissions +Module60000Desc=Module to manage commissions +Module62000Name=Incoterms +Module62000Desc=Add features to manage Incoterms +Module63000Name=Resources +Module63000Desc=Manage resources (printers, cars, rooms, ...) for allocating to events +Permission11=Read customer invoices +Permission12=Create/modify customer invoices +Permission13=Unvalidate customer invoices +Permission14=Validate customer invoices +Permission15=Send customer invoices by email +Permission16=Create payments for customer invoices +Permission19=Delete customer invoices +Permission21=Read commercial proposals +Permission22=Create/modify commercial proposals +Permission24=Validate commercial proposals +Permission25=Send commercial proposals +Permission26=Close commercial proposals +Permission27=Delete commercial proposals +Permission28=Export commercial proposals +Permission31=Read products +Permission32=Create/modify products +Permission34=Delete products +Permission36=See/manage hidden products +Permission38=Export products +Permission41=Read projects and tasks (shared project and projects I'm contact for). Can also enter time consumed, for me or my hierarchy, on assigned tasks (Timesheet) +Permission42=Create/modify projects (shared project and projects I'm contact for). Can also create tasks and assign users to project and tasks +Permission44=Delete projects (shared project and projects I'm contact for) +Permission45=Export projects +Permission61=Read interventions +Permission62=Create/modify interventions +Permission64=Delete interventions +Permission67=Export interventions +Permission71=Read members +Permission72=Create/modify members +Permission74=Delete members +Permission75=Setup types of membership +Permission76=Export data +Permission78=Read subscriptions +Permission79=Create/modify subscriptions +Permission81=Read customers orders +Permission82=Create/modify customers orders +Permission84=Validate customers orders +Permission86=Send customers orders +Permission87=Close customers orders +Permission88=Cancel customers orders +Permission89=Delete customers orders +Permission91=Read social or fiscal taxes and vat +Permission92=Create/modify social or fiscal taxes and vat +Permission93=Delete social or fiscal taxes and vat +Permission94=Export social or fiscal taxes +Permission95=Read reports +Permission101=Read sendings +Permission102=Create/modify sendings +Permission104=Validate sendings +Permission106=Export sendings +Permission109=Delete sendings +Permission111=Read financial accounts +Permission112=Create/modify/delete and compare transactions +Permission113=Setup financial accounts (create, manage categories) +Permission114=Reconcile transactions +Permission115=Export transactions and account statements +Permission116=Transfers between accounts +Permission117=Manage checks dispatching +Permission121=Read third parties linked to user +Permission122=Create/modify third parties linked to user +Permission125=Delete third parties linked to user +Permission126=Export third parties +Permission141=Read all projects and tasks (also private projects for which I am not a contact) +Permission142=Create/modify all projects and tasks (also private projects for which I am not a contact) +Permission144=Delete all projects and tasks (also private projects i am not contact for) +Permission146=Read providers +Permission147=Read stats +Permission151=Read direct debit payment orders +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=Read contracts/subscriptions +Permission162=Create/modify contracts/subscriptions +Permission163=Activate a service/subscription of a contract +Permission164=Disable a service/subscription of a contract +Permission165=Delete contracts/subscriptions +Permission167=Export contracts +Permission171=Read trips and expenses (yours and your subordinates) +Permission172=Create/modify trips and expenses +Permission173=Delete trips and expenses +Permission174=Read all trips and expenses +Permission178=Export trips and expenses +Permission180=Read suppliers +Permission181=Read purchase orders +Permission182=Create/modify purchase orders +Permission183=Validate purchase orders +Permission184=Approve purchase orders +Permission185=Order or cancel purchase orders +Permission186=Receive purchase orders +Permission187=Close purchase orders +Permission188=Cancel purchase orders +Permission192=Create lines +Permission193=Cancel lines +Permission194=Read the bandwidth lines +Permission202=Create ADSL connections +Permission203=Order connections orders +Permission204=Order connections +Permission205=Manage connections +Permission206=Read connections +Permission211=Read Telephony +Permission212=Order lines +Permission213=Activate line +Permission214=Setup Telephony +Permission215=Setup providers +Permission221=Read emailings +Permission222=Create/modify emailings (topic, recipients...) +Permission223=Validate emailings (allows sending) +Permission229=Delete emailings +Permission237=View recipients and info +Permission238=Manually send mailings +Permission239=Delete mailings after validation or sent +Permission241=Read categories +Permission242=Create/modify categories +Permission243=Delete categories +Permission244=See the contents of the hidden categories +Permission251=Read other users and groups +PermissionAdvanced251=Read other users +Permission252=Read permissions of other users +Permission253=Create/modify other users, groups and permissions +PermissionAdvanced253=Create/modify internal/external users and permissions +Permission254=Create/modify external users only +Permission255=Modify other users password +Permission256=Delete or disable other users +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). +Permission271=Read CA +Permission272=Read invoices +Permission273=Issue invoices +Permission281=Read contacts +Permission282=Create/modify contacts +Permission283=Delete contacts +Permission286=Export contacts +Permission291=Read tariffs +Permission292=Set permissions on the tariffs +Permission293=Modify customer's tariffs +Permission300=Read barcodes +Permission301=Create/modify barcodes +Permission302=Delete barcodes +Permission311=Read services +Permission312=Assign service/subscription to contract +Permission331=Read bookmarks +Permission332=Create/modify bookmarks +Permission333=Delete bookmarks +Permission341=Read its own permissions +Permission342=Create/modify his own user information +Permission343=Modify his own password +Permission344=Modify its own permissions +Permission351=Read groups +Permission352=Read groups permissions +Permission353=Create/modify groups +Permission354=Delete or disable groups +Permission358=Export users +Permission401=Read discounts +Permission402=Create/modify discounts +Permission403=Validate discounts +Permission404=Delete discounts +Permission430=Use Debug Bar +Permission511=Read payments of salaries +Permission512=Create/modify payments of salaries +Permission514=Delete payments of salaries +Permission517=Export salaries +Permission520=Read Loans +Permission522=Create/modify loans +Permission524=Delete loans +Permission525=Access loan calculator +Permission527=Export loans +Permission531=Read services +Permission532=Create/modify services +Permission534=Delete services +Permission536=See/manage hidden services +Permission538=Export services +Permission650=Read Bills of Materials +Permission651=Create/Update Bills of Materials +Permission652=Delete Bills of Materials +Permission701=Read donations +Permission702=Create/modify donations +Permission703=Delete donations +Permission771=Read expense reports (yours and your subordinates) +Permission772=Create/modify expense reports +Permission773=Delete expense reports +Permission774=Read all expense reports (even for user not subordinates) +Permission775=Approve expense reports +Permission776=Pay expense reports +Permission779=Export expense reports +Permission1001=Read stocks +Permission1002=Create/modify warehouses +Permission1003=Delete warehouses +Permission1004=Read stock movements +Permission1005=Create/modify stock movements +Permission1101=Read delivery receipts +Permission1102=Create/modify delivery receipts +Permission1104=Validate delivery receipts +Permission1109=Delete delivery receipts +Permission1121=Read supplier proposals +Permission1122=Create/modify supplier proposals +Permission1123=Validate supplier proposals +Permission1124=Send supplier proposals +Permission1125=Delete supplier proposals +Permission1126=Close supplier price requests +Permission1181=Read suppliers +Permission1182=Read purchase orders +Permission1183=Create/modify purchase orders +Permission1184=Validate purchase orders +Permission1185=Approve purchase orders +Permission1186=Order purchase orders +Permission1187=Acknowledge receipt of purchase orders +Permission1188=Delete purchase orders +Permission1190=Approve (second approval) purchase orders +Permission1201=Get result of an export +Permission1202=Create/Modify an export +Permission1231=Read vendor invoices +Permission1232=Create/modify vendor invoices +Permission1233=Validate vendor invoices +Permission1234=Delete vendor invoices +Permission1235=Send vendor invoices by email +Permission1236=Export vendor invoices, attributes and payments +Permission1237=Export purchase orders and their details +Permission1251=Run mass imports of external data into database (data load) +Permission1321=Export customer invoices, attributes and payments +Permission1322=Reopen a paid bill +Permission1421=Export sales orders and attributes +Permission2401=Read actions (events or tasks) linked to his user account (if owner of event or just assigned to) +Permission2402=Create/modify actions (events or tasks) linked to his user account (if owner of event) +Permission2403=Delete actions (events or tasks) linked to his user account (if owner of event) +Permission2411=Read actions (events or tasks) of others +Permission2412=Create/modify actions (events or tasks) of others +Permission2413=Delete actions (events or tasks) of others +Permission2414=Export actions/tasks of others +Permission2501=Read/Download documents +Permission2502=Download documents +Permission2503=Submit or delete documents +Permission2515=Setup documents directories +Permission2801=Use FTP client in read mode (browse and download only) +Permission2802=Use FTP client in write mode (delete or upload files) +Permission3200=Read archived events and fingerprints +Permission4001=See employees +Permission4002=Create employees +Permission4003=Delete employees +Permission4004=Export employees +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. +Permission10005=Delete website content +Permission20001=Read leave requests (your leave and those of your subordinates) +Permission20002=Create/modify your leave requests (your leave and those of your subordinates) +Permission20003=Delete leave requests +Permission20004=Read all leave requests (even of user not subordinates) +Permission20005=Create/modify leave requests for everybody (even of user not subordinates) +Permission20006=Admin leave requests (setup and update balance) +Permission20007=Approve leave requests +Permission23001=Read Scheduled job +Permission23002=Create/update Scheduled job +Permission23003=Delete Scheduled job +Permission23004=Execute Scheduled job +Permission50101=Use Point of Sale +Permission50201=Read transactions +Permission50202=Import transactions +Permission50401=Bind products and invoices with accounting accounts +Permission50411=Read operations in ledger +Permission50412=Write/Edit operations in ledger +Permission50414=Delete operations in ledger +Permission50415=Delete all operations by year and journal in ledger +Permission50418=Export operations of the ledger +Permission50420=Report and export reports (turnover, balance, journals, ledger) +Permission50430=Define fiscal periods. Validate transactions and close fiscal periods. +Permission50440=Manage chart of accounts, setup of accountancy +Permission51001=Read assets +Permission51002=Create/Update assets +Permission51003=Delete assets +Permission51005=Setup types of asset +Permission54001=Print +Permission55001=Read polls +Permission55002=Create/modify polls +Permission59001=Read commercial margins +Permission59002=Define commercial margins +Permission59003=Read every user margin +Permission63001=Read resources +Permission63002=Create/modify resources +Permission63003=Delete resources +Permission63004=Link resources to agenda events +DictionaryCompanyType=Third-party types +DictionaryCompanyJuridicalType=Third-party legal entities +DictionaryProspectLevel=Prospect potential +DictionaryCanton=States/Provinces +DictionaryRegion=Regions +DictionaryCountry=Countries +DictionaryCurrency=Currencies +DictionaryCivility=Honorific titles +DictionaryActions=Types of agenda events +DictionarySocialContributions=Types of social or fiscal taxes +DictionaryVAT=VAT Rates or Sales Tax Rates +DictionaryRevenueStamp=Amount of tax stamps +DictionaryPaymentConditions=Payment Terms +DictionaryPaymentModes=Payment Modes +DictionaryTypeContact=Contact/Address types +DictionaryTypeOfContainer=Website - Type of website pages/containers +DictionaryEcotaxe=Ecotax (WEEE) +DictionaryPaperFormat=Paper formats +DictionaryFormatCards=Card formats +DictionaryFees=Expense report - Types of expense report lines +DictionarySendingMethods=Shipping methods +DictionaryStaff=Number of Employees +DictionaryAvailability=Delivery delay +DictionaryOrderMethods=Ordering methods +DictionarySource=Origin of proposals/orders +DictionaryAccountancyCategory=Personalized groups for reports +DictionaryAccountancysystem=Models for chart of accounts +DictionaryAccountancyJournal=Accounting journals +DictionaryEMailTemplates=Email Templates +DictionaryUnits=Units +DictionaryMeasuringUnits=Measuring Units +DictionarySocialNetworks=Social Networks +DictionaryProspectStatus=Prospect status +DictionaryHolidayTypes=Types of leave +DictionaryOpportunityStatus=Lead status for project/lead +DictionaryExpenseTaxCat=Expense report - Transportation categories +DictionaryExpenseTaxRange=Expense report - Range by transportation category +SetupSaved=Setup saved +SetupNotSaved=Setup not saved +BackToModuleList=Back to Module list +BackToDictionaryList=Back to Dictionaries list +TypeOfRevenueStamp=Type of tax stamp +VATManagement=Sales Tax Management +VATIsUsedDesc=By default when creating prospects, invoices, orders etc. the Sales Tax rate follows the active standard rule:
    If the seller is not subject to Sales tax, then Sales tax defaults to 0. End of rule.
    If the (seller's country = buyer's country), then the Sales tax by default equals the Sales tax of the product in the seller's country. End of rule.
    If the seller and buyer are both in the European Community and goods are transport-related products (haulage, shipping, airline), the default VAT is 0. This rule is dependant on the seller's country - please consult with your accountant. The VAT should be paid by the buyer to the customs office in their country and not to the seller. End of rule.
    If the seller and buyer are both in the European Community and the buyer is not a company (with a registered intra-Community VAT number) then the VAT defaults to the VAT rate of the seller's country. End of rule.
    If the seller and buyer are both in the European Community and the buyer is a company (with a registered intra-Community VAT number), then the VAT is 0 by default. End of rule.
    In any other case the proposed default is Sales tax=0. End of rule. +VATIsNotUsedDesc=By default the proposed Sales tax is 0 which can be used for cases like associations, individuals or small companies. +VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. +VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. +##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax +LTRate=Rate +LocalTax1IsNotUsed=Do not use second tax +LocalTax1IsUsedDesc=Use a second type of tax (other than first one) +LocalTax1IsNotUsedDesc=Do not use other type of tax (other than first one) +LocalTax1Management=Second type of tax +LocalTax1IsUsedExample= +LocalTax1IsNotUsedExample= +LocalTax2IsNotUsed=Do not use third tax +LocalTax2IsUsedDesc=Use a third type of tax (other than first one) +LocalTax2IsNotUsedDesc=Do not use other type of tax (other than first one) +LocalTax2Management=Third type of tax +LocalTax2IsUsedExample= +LocalTax2IsNotUsedExample= +LocalTax1ManagementES=RE Management +LocalTax1IsUsedDescES=The RE rate by default when creating prospects, invoices, orders etc. follow the active standard rule:
    If the buyer is not subjected to RE, RE by default=0. End of rule.
    If the buyer is subjected to RE then the RE by default. End of rule.
    +LocalTax1IsNotUsedDescES=By default the proposed RE is 0. End of rule. +LocalTax1IsUsedExampleES=In Spain they are professionals subject to some specific sections of the Spanish IAE. +LocalTax1IsNotUsedExampleES=In Spain they are professional and societies and subject to certain sections of the Spanish IAE. +LocalTax2ManagementES=IRPF Management +LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices, orders etc. follow the active standard rule:
    If the seller is not subjected to IRPF, then IRPF by default=0. End of rule.
    If the seller is subjected to IRPF then the IRPF by default. End of rule.
    +LocalTax2IsNotUsedDescES=By default the proposed IRPF is 0. End of rule. +LocalTax2IsUsedExampleES=In Spain, freelancers and independent professionals who provide services and companies who have chosen the tax system of modules. +LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) +CalcLocaltax=Reports on local taxes +CalcLocaltax1=Sales - Purchases +CalcLocaltax1Desc=Local Taxes reports are calculated with the difference between localtaxes sales and localtaxes purchases +CalcLocaltax2=Purchases +CalcLocaltax2Desc=Local Taxes reports are the total of localtaxes purchases +CalcLocaltax3=Sales +CalcLocaltax3Desc=Local Taxes reports are the total of localtaxes sales +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax +LabelUsedByDefault=Label used by default if no translation can be found for code +LabelOnDocuments=Label on documents +LabelOrTranslationKey=Label or translation key +ValueOfConstantKey=Value of a configuration constant +NbOfDays=No. of days +AtEndOfMonth=At end of month +CurrentNext=Current/Next +Offset=Offset +AlwaysActive=Always active +Upgrade=Upgrade +MenuUpgrade=Upgrade / Extend +AddExtensionThemeModuleOrOther=Deploy/install external app/module +WebServer=Web server +DocumentRootServer=Web server's root directory +DataRootServer=Data files directory +IP=IP +Port=Port +VirtualServerName=Virtual server name +OS=OS +PhpWebLink=Web-Php link +Server=Server +Database=Database +DatabaseServer=Database host +DatabaseName=Database name +DatabasePort=Database port +DatabaseUser=Database user +DatabasePassword=Database password +Tables=Tables +TableName=Table name +NbOfRecord=No. of records +Host=Server +DriverType=Driver type +SummarySystem=System information summary +SummaryConst=List of all Dolibarr setup parameters +MenuCompanySetup=Company/Organization +DefaultMenuManager= Standard menu manager +DefaultMenuSmartphoneManager=Smartphone menu manager +Skin=Skin theme +DefaultSkin=Default skin theme +MaxSizeList=Max length for list +DefaultMaxSizeList=Default max length for lists +DefaultMaxSizeShortList=Default max length for short lists (i.e. in customer card) +MessageOfDay=Message of the day +MessageLogin=Login page message +LoginPage=Login page +BackgroundImageLogin=Background image +PermanentLeftSearchForm=Permanent search form on left menu +DefaultLanguage=Default language +EnableMultilangInterface=Enable multilanguage support +EnableShowLogo=Show the company logo in the menu +CompanyInfo=Company/Organization +CompanyIds=Company/Organization identities +CompanyName=Name +CompanyAddress=Address +CompanyZip=Zip +CompanyTown=Town +CompanyCountry=Country +CompanyCurrency=Main currency +CompanyObject=Object of the company +IDCountry=ID country +Logo=Logo +LogoDesc=Main logo of company. Will be used into generated documents (PDF, ...) +LogoSquarred=Logo (squarred) +LogoSquarredDesc=Must be a squarred icon (width = height). This logo will be used as the favorite icon or other need like for the top menu bar (if not disabled into display setup). +DoNotSuggestPaymentMode=Do not suggest +NoActiveBankAccountDefined=No active bank account defined +OwnerOfBankAccount=Owner of bank account %s +BankModuleNotActive=Bank accounts module not enabled +ShowBugTrackLink=Show link "%s" +Alerts=Alerts +DelaysOfToleranceBeforeWarning=Delay before displaying a warning alert for: +DelaysOfToleranceDesc=Set the delay before an alert icon %s is shown onscreen for the late element. +Delays_MAIN_DELAY_ACTIONS_TODO=Planned events (agenda events) not completed +Delays_MAIN_DELAY_PROJECT_TO_CLOSE=Project not closed in time +Delays_MAIN_DELAY_TASKS_TODO=Planned task (project tasks) not completed +Delays_MAIN_DELAY_ORDERS_TO_PROCESS=Order not processed +Delays_MAIN_DELAY_SUPPLIER_ORDERS_TO_PROCESS=Purchase order not processed +Delays_MAIN_DELAY_PROPALS_TO_CLOSE=Proposal not closed +Delays_MAIN_DELAY_PROPALS_TO_BILL=Proposal not billed +Delays_MAIN_DELAY_NOT_ACTIVATED_SERVICES=Service to activate +Delays_MAIN_DELAY_RUNNING_SERVICES=Expired service +Delays_MAIN_DELAY_SUPPLIER_BILLS_TO_PAY=Unpaid vendor invoice +Delays_MAIN_DELAY_CUSTOMER_BILLS_UNPAYED=Unpaid customer invoice +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 +Delays_MAIN_DELAY_HOLIDAYS=Leave requests 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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. +SetupDescription5=Other Setup menu entries manage optional parameters. +LogEvents=Security audit events +Audit=Audit +InfoDolibarr=About Dolibarr +InfoBrowser=About Browser +InfoOS=About OS +InfoWebServer=About Web Server +InfoDatabase=About Database +InfoPHP=About PHP +InfoPerf=About Performances +BrowserName=Browser name +BrowserOS=Browser OS +ListOfSecurityEvents=List of Dolibarr security events +SecurityEventsPurged=Security events purged +LogEventDesc=Enable logging for specific security events. Administrators the log via menu %s - %s. Warning, this feature can generate a large amount of data in the database. +AreaForAdminOnly=Setup parameters can be set by administrator users only. +SystemInfoDesc=System information is miscellaneous technical information you get in read only mode and visible for administrators only. +SystemAreaForAdminOnly=This area is available to administrator users only. Dolibarr user permissions cannot change this restriction. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. +AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. +AccountantFileNumber=Accountant code +DisplayDesc=Parameters affecting the look and behaviour of Dolibarr can be modified here. +AvailableModules=Available app/modules +ToActivateModule=To activate modules, go on setup Area (Home->Setup->Modules). +SessionTimeOut=Time out for session +SessionExplanation=This number guarantees that the session will never expire before this delay, if the session cleaner is done by Internal PHP session cleaner (and nothing else). Internal PHP session cleaner does not guarantee that the session will expire after this delay. It will expire, after this delay, and when the session cleaner is run, so every %s/%s access, but only during access made by other sessions (if value is 0, it means clearing of session is done only by an external process).
    Note: on some servers with an external session cleaning mechanism (cron under debian, ubuntu ...), the sessions can be destroyed after a period defined by an external setup, no matter what the value entered here is. +TriggersAvailable=Available triggers +TriggersDesc=Triggers are files that will modify the behavior of Dolibarr workflow once copied into the directory htdocs/core/triggers. They realize new actions, activated on Dolibarr events (new company creation, invoice validation, ...). +TriggerDisabledByName=Triggers in this file are disabled by the -NORUN suffix in their name. +TriggerDisabledAsModuleDisabled=Triggers in this file are disabled as module %s is disabled. +TriggerAlwaysActive=Triggers in this file are always active, whatever are the activated Dolibarr modules. +TriggerActiveAsModuleActive=Triggers in this file are active as module %s is enabled. +GeneratedPasswordDesc=Choose the method to be used for auto-generated passwords. +DictionaryDesc=Insert all reference data. You can add your values to the default. +ConstDesc=This page allows you to edit (override) parameters not available in other pages. These are mostly reserved parameters for developers/advanced troubleshooting only. +MiscellaneousDesc=All other security related parameters are defined here. +LimitsSetup=Limits/Precision setup +LimitsDesc=You can define limits, precisions and optimizations used by Dolibarr here +MAIN_MAX_DECIMALS_UNIT=Max. decimals for unit prices +MAIN_MAX_DECIMALS_TOT=Max. decimals for total prices +MAIN_MAX_DECIMALS_SHOWN=Max. decimals for prices shown on screen. Add an ellipsis ... after this parameter (e.g. "2...") if you want to see "..." suffixed to the truncated price. +MAIN_ROUNDING_RULE_TOT=Step of rounding range (for countries where rounding is done on something other than base 10. For example, put 0.05 if rounding is done by 0.05 steps) +UnitPriceOfProduct=Net unit price of a product +TotalPriceAfterRounding=Total price (excl/vat/incl tax) after rounding +ParameterActiveForNextInputOnly=Parameter effective for next input only +NoEventOrNoAuditSetup=No security event has been logged. This is normal if Audit has not been enabled in the "Setup - Security - Events" page. +NoEventFoundWithCriteria=No security event has been found for this search criteria. +SeeLocalSendMailSetup=See your local sendmail setup +BackupDesc=A complete backup of a Dolibarr installation requires two steps. +BackupDesc2=Backup the contents of the "documents" directory (%s) containing all uploaded and generated files. This will also include all the dump files generated in Step 1. This operation may last several minutes. +BackupDesc3=Backup the structure and contents of your database (%s) into a dump file. For this, you can use the following assistant. +BackupDescX=The archived directory should be stored in a secure place. +BackupDescY=The generated dump file should be stored in a secure place. +BackupPHPWarning=Backup cannot be guaranteed with this method. Previous one recommended. +RestoreDesc=To restore a Dolibarr backup, two steps are required. +RestoreDesc2=Restore the backup file (zip file for example) of the "documents" directory to a new Dolibarr installation or into this current documents directory (%s). +RestoreDesc3=Restore the database structure and data from a backup dump file into the database of the new Dolibarr installation or into the database of this current installation (%s). Warning, once the restore is complete, you must use a login/password, that existed from the backup time/installation to connect again.
    To restore a backup database into this current installation, you can follow this assistant. +RestoreMySQL=MySQL import +ForcedToByAModule= This rule is forced to %s by an activated module +PreviousDumpFiles=Existing backup files +PreviousArchiveFiles=Existing archive files +WeekStartOnDay=First day of the week +RunningUpdateProcessMayBeRequired=Running the upgrade process seems to be required (Program version %s differs from Database version %s) +YouMustRunCommandFromCommandLineAfterLoginToUser=You must run this command from command line after login to a shell with user %s or you must add -W option at end of command line to provide %s password. +YourPHPDoesNotHaveSSLSupport=SSL functions not available in your PHP +DownloadMoreSkins=More skins to download +SimpleNumRefModelDesc=Returns the reference number with format %syymm-nnnn where yy is year, mm is month and nnnn is sequential with no reset +ShowProfIdInAddress=Show professional id with addresses +ShowVATIntaInAddress=Hide intra-Community VAT number with addresses +TranslationUncomplete=Partial translation +MAIN_DISABLE_METEO=Disable meteorological view +MeteoStdMod=Standard mode +MeteoStdModEnabled=Standard mode enabled +MeteoPercentageMod=Percentage mode +MeteoPercentageModEnabled=Percentage mode enabled +MeteoUseMod=Click to use %s +TestLoginToAPI=Test login to API +ProxyDesc=Some features of Dolibarr require internet access. Define here the internet connection parameters such as access through a proxy server if necessary. +ExternalAccess=External/Internet Access +MAIN_PROXY_USE=Use a proxy server (otherwise access is direct to the internet) +MAIN_PROXY_HOST=Proxy server: Name/Address +MAIN_PROXY_PORT=Proxy server: Port +MAIN_PROXY_USER=Proxy server: Login/User +MAIN_PROXY_PASS=Proxy server: Password +DefineHereComplementaryAttributes=Define here any additional/custom attributes that you want to be included for: %s +ExtraFields=Complementary attributes +ExtraFieldsLines=Complementary attributes (lines) +ExtraFieldsLinesRec=Complementary attributes (templates invoices lines) +ExtraFieldsSupplierOrdersLines=Complementary attributes (order lines) +ExtraFieldsSupplierInvoicesLines=Complementary attributes (invoice lines) +ExtraFieldsThirdParties=Complementary attributes (third party) +ExtraFieldsContacts=Complementary attributes (contacts/address) +ExtraFieldsMember=Complementary attributes (member) +ExtraFieldsMemberType=Complementary attributes (member type) +ExtraFieldsCustomerInvoices=Complementary attributes (invoices) +ExtraFieldsCustomerInvoicesRec=Complementary attributes (templates invoices) +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). +PathToDocuments=Path to documents +PathDirectory=Directory +SendmailOptionMayHurtBuggedMTA=Feature to send mails using method "PHP mail direct" will generate a mail message that might not be parsed correctly by some receiving mail servers. The result is that some mails can't be read by people hosted by those bugged platforms. This is the case for some Internet providers (Ex: Orange in France). This is not a problem with Dolibarr or PHP but with the receiving mail server. You can however add an option MAIN_FIX_FOR_BUGGED_MTA to 1 in Setup - Other to modify Dolibarr to avoid this. However, you may experience problems with other servers that strictly use the SMTP standard. The other solution (recommended) is to use the method "SMTP socket library" which has no disadvantages. +TranslationSetup=Setup of translation +TranslationKeySearch=Search a translation key or string +TranslationOverwriteKey=Overwrite a translation string +TranslationDesc=How to set the display language:
    * Default/Systemwide: menu Home -> Setup -> Display
    * Per user: Click on the username at the top of the screen and modify the User Display Setup tab on the user card. +TranslationOverwriteDesc=You can also override strings filling the following table. Choose your language from "%s" dropdown, insert the translation key string into "%s" and your new translation into "%s" +TranslationOverwriteDesc2=You can use the other tab to help you know which translation key to use +TranslationString=Translation string +CurrentTranslationString=Current translation string +WarningAtLeastKeyOrTranslationRequired=A search criteria is required at least for key or translation string +NewTranslationStringToShow=New translation string to show +OriginalValueWas=The original translation is overwritten. Original value was:

    %s +TransKeyWithoutOriginalValue=You forced a new translation for the translation key '%s' that does not exist in any language files +TotalNumberOfActivatedModules=Activated application/modules: %s / %s +YouMustEnableOneModule=You must at least enable 1 module +ClassNotFoundIntoPathWarning=Class %s not found in PHP path +YesInSummer=Yes in summer +OnlyFollowingModulesAreOpenedToExternalUsers=Note, only the following modules are available to external users (irrespective of the permissions of such users) and only if permissions are granted:
    +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. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. +SearchOptim=Search optimization +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. +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. +FieldEdition=Edition of field %s +FillThisOnlyIfRequired=Example: +2 (fill only if timezone offset problems are experienced) +GetBarCode=Get barcode +NumberingModules=Numbering models +##### Module password generation +PasswordGenerationStandard=Return a password generated according to internal Dolibarr algorithm: 8 characters containing shared numbers and characters in lowercase. +PasswordGenerationNone=Do not suggest a generated password. Password must be typed in manually. +PasswordGenerationPerso=Return a password according to your personally defined configuration. +SetupPerso=According to your configuration +PasswordPatternDesc=Password pattern description +##### Users setup ##### +RuleForGeneratedPasswords=Rules to generate and validate passwords +DisableForgetPasswordLinkOnLogonPage=Do not show the "Password Forgotten" link on the Login page +UsersSetup=Users module setup +UserMailRequired=Email required to create a new user +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record +##### HRM setup ##### +HRMSetup=HRM module setup +##### Company setup ##### +CompanySetup=Companies module setup +CompanyCodeChecker=Options for automatic generation of customer/vendor codes +AccountCodeManager=Options for automatic generation of customer/vendor accounting codes +NotificationsDesc=Email notifications can be sent automatically for some Dolibarr events.
    Recipients of notifications can be defined: +NotificationsDescUser=* per user, one user at a time. +NotificationsDescContact=* per third-party contacts (customers or vendors), one contact at a time. +NotificationsDescGlobal=* or by setting global email addresses in this setup page. +ModelModules=Document Templates +DocumentModelOdt=Generate documents from OpenDocument templates (.ODT / .ODS files from LibreOffice, OpenOffice, KOffice, TextEdit,...) +WatermarkOnDraft=Watermark on draft document +JSOnPaimentBill=Activate feature to autofill payment lines on payment form +CompanyIdProfChecker=Rules for Professional IDs +MustBeUnique=Must be unique? +MustBeMandatory=Mandatory to create third parties (if VAT number or type of company defined) ? +MustBeInvoiceMandatory=Mandatory to validate invoices? +TechnicalServicesProvided=Technical services provided +#####DAV ##### +WebDAVSetupDesc=This is the link to access the WebDAV directory. It contains a "public" dir open to any user knowing the URL (if public directory access allowed) and a "private" directory that needs an existing login account/password for access. +WebDavServer=Root URL of %s server: %s +##### Webcal setup ##### +WebCalUrlForVCalExport=An export link to %s format is available at following link: %s +##### Invoices ##### +BillsSetup=Invoices module setup +BillsNumberingModule=Invoices and credit notes numbering model +BillsPDFModules=Invoice documents models +BillsPDFModulesAccordindToInvoiceType=Invoice documents models according to invoice type +PaymentsPDFModules=Payment documents models +ForceInvoiceDate=Force invoice date to validation date +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice +SuggestPaymentByRIBOnAccount=Suggest payment by withdrawal on account +SuggestPaymentByChequeToAddress=Suggest payment by check to +FreeLegalTextOnInvoices=Free text on invoices +WatermarkOnDraftInvoices=Watermark on draft invoices (none if empty) +PaymentsNumberingModule=Payments numbering model +SuppliersPayment=Vendor payments +SupplierPaymentSetup=Vendor payments setup +##### Proposals ##### +PropalSetup=Commercial proposals module setup +ProposalsNumberingModules=Commercial proposal numbering models +ProposalsPDFModules=Commercial proposal documents models +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal +FreeLegalTextOnProposal=Free text on commercial proposals +WatermarkOnDraftProposal=Watermark on draft commercial proposals (none if empty) +BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal +##### SupplierProposal ##### +SupplierProposalSetup=Price requests suppliers module setup +SupplierProposalNumberingModules=Price requests suppliers numbering models +SupplierProposalPDFModules=Price requests suppliers documents models +FreeLegalTextOnSupplierProposal=Free text on price requests suppliers +WatermarkOnDraftSupplierProposal=Watermark on draft price requests suppliers (none if empty) +BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_PROPOSAL=Ask for bank account destination of price request +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 ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order +OrdersSetup=Sales Orders management setup +OrdersNumberingModules=Orders numbering models +OrdersModelModule=Order documents models +FreeLegalTextOnOrders=Free text on orders +WatermarkOnDraftOrders=Watermark on draft orders (none if empty) +ShippableOrderIconInList=Add an icon in Orders list which indicate if order is shippable +BANK_ASK_PAYMENT_BANK_DURING_ORDER=Ask for bank account destination of order +##### Interventions ##### +InterventionsSetup=Interventions module setup +FreeLegalTextOnInterventions=Free text on intervention documents +FicheinterNumberingModules=Intervention numbering models +TemplatePDFInterventions=Intervention card documents models +WatermarkOnDraftInterventionCards=Watermark on intervention card documents (none if empty) +##### Contracts ##### +ContractsSetup=Contracts/Subscriptions module setup +ContractsNumberingModules=Contracts numbering modules +TemplatePDFContracts=Contracts documents models +FreeLegalTextOnContracts=Free text on contracts +WatermarkOnDraftContractCards=Watermark on draft contracts (none if empty) +##### Members ##### +MembersSetup=Members module setup +MemberMainOptions=Main options +AdherentLoginRequired= Manage a Login for each member +AdherentMailRequired=Email required to create a new member +MemberSendInformationByMailByDefault=Checkbox to send mail confirmation to members (validation or new subscription) is on by default +VisitorCanChooseItsPaymentMode=Visitor can choose from available payment modes +MEMBER_REMINDER_EMAIL=Enable automatic reminder by email of expired subscriptions. Note: Module %s must be enabled and correctly setup to send reminders. +##### LDAP setup ##### +LDAPSetup=LDAP Setup +LDAPGlobalParameters=Global parameters +LDAPUsersSynchro=Users +LDAPGroupsSynchro=Groups +LDAPContactsSynchro=Contacts +LDAPMembersSynchro=Members +LDAPMembersTypesSynchro=Members types +LDAPSynchronization=LDAP synchronisation +LDAPFunctionsNotAvailableOnPHP=LDAP functions are not available on your PHP +LDAPToDolibarr=LDAP -> Dolibarr +DolibarrToLDAP=Dolibarr -> LDAP +LDAPNamingAttribute=Key in LDAP +LDAPSynchronizeUsers=Organization of users in LDAP +LDAPSynchronizeGroups=Organization of groups in LDAP +LDAPSynchronizeContacts=Organization of contacts in LDAP +LDAPSynchronizeMembers=Organization of foundation's members in LDAP +LDAPSynchronizeMembersTypes=Organization of foundation's members types in LDAP +LDAPPrimaryServer=Primary server +LDAPSecondaryServer=Secondary server +LDAPServerPort=Server port +LDAPServerPortExample=Default port: 389 +LDAPServerProtocolVersion=Protocol version +LDAPServerUseTLS=Use TLS +LDAPServerUseTLSExample=Your LDAP server use TLS +LDAPServerDn=Server DN +LDAPAdminDn=Administrator DN +LDAPAdminDnExample=Complete DN (ex: cn=admin,dc=example,dc=com or cn=Administrator,cn=Users,dc=example,dc=com for active directory) +LDAPPassword=Administrator password +LDAPUserDn=Users' DN +LDAPUserDnExample=Complete DN (ex: ou=users,dc=example,dc=com) +LDAPGroupDn=Groups' DN +LDAPGroupDnExample=Complete DN (ex: ou=groups,dc=example,dc=com) +LDAPServerExample=Server address (ex: localhost, 192.168.0.2, ldaps://ldap.example.com/) +LDAPServerDnExample=Complete DN (ex: dc=example,dc=com) +LDAPDnSynchroActive=Users and groups synchronization +LDAPDnSynchroActiveExample=LDAP to Dolibarr or Dolibarr to LDAP synchronization +LDAPDnContactActive=Contacts' synchronization +LDAPDnContactActiveExample=Activated/Unactivated synchronization +LDAPDnMemberActive=Members' synchronization +LDAPDnMemberActiveExample=Activated/Unactivated synchronization +LDAPDnMemberTypeActive=Members types' synchronization +LDAPDnMemberTypeActiveExample=Activated/Unactivated synchronization +LDAPContactDn=Dolibarr contacts' DN +LDAPContactDnExample=Complete DN (ex: ou=contacts,dc=example,dc=com) +LDAPMemberDn=Dolibarr members DN +LDAPMemberDnExample=Complete DN (ex: ou=members,dc=example,dc=com) +LDAPMemberObjectClassList=List of objectClass +LDAPMemberObjectClassListExample=List of objectClass defining record attributes (ex: top,inetOrgPerson or top,user for active directory) +LDAPMemberTypeDn=Dolibarr members types DN +LDAPMemberTypepDnExample=Complete DN (ex: ou=memberstypes,dc=example,dc=com) +LDAPMemberTypeObjectClassList=List of objectClass +LDAPMemberTypeObjectClassListExample=List of objectClass defining record attributes (ex: top,groupOfUniqueNames) +LDAPUserObjectClassList=List of objectClass +LDAPUserObjectClassListExample=List of objectClass defining record attributes (ex: top,inetOrgPerson or top,user for active directory) +LDAPGroupObjectClassList=List of objectClass +LDAPGroupObjectClassListExample=List of objectClass defining record attributes (ex: top,groupOfUniqueNames) +LDAPContactObjectClassList=List of objectClass +LDAPContactObjectClassListExample=List of objectClass defining record attributes (ex: top,inetOrgPerson or top,user for active directory) +LDAPTestConnect=Test LDAP connection +LDAPTestSynchroContact=Test contacts synchronization +LDAPTestSynchroUser=Test user synchronization +LDAPTestSynchroGroup=Test group synchronization +LDAPTestSynchroMember=Test member synchronization +LDAPTestSynchroMemberType=Test member type synchronization +LDAPTestSearch= Test a LDAP search +LDAPSynchroOK=Synchronization test successful +LDAPSynchroKO=Failed synchronization test +LDAPSynchroKOMayBePermissions=Failed synchronization test. Check that the connection to the server is correctly configured and allows LDAP updates +LDAPTCPConnectOK=TCP connect to LDAP server successful (Server=%s, Port=%s) +LDAPTCPConnectKO=TCP connect to LDAP server failed (Server=%s, Port=%s) +LDAPBindOK=Connect/Authenticate to LDAP server successful (Server=%s, Port=%s, Admin=%s, Password=%s) +LDAPBindKO=Connect/Authenticate to LDAP server failed (Server=%s, Port=%s, Admin=%s, Password=%s) +LDAPSetupForVersion3=LDAP server configured for version 3 +LDAPSetupForVersion2=LDAP server configured for version 2 +LDAPDolibarrMapping=Dolibarr Mapping +LDAPLdapMapping=LDAP Mapping +LDAPFieldLoginUnix=Login (unix) +LDAPFieldLoginExample=Example: uid +LDAPFilterConnection=Search filter +LDAPFilterConnectionExample=Example: &(objectClass=inetOrgPerson) +LDAPFieldLoginSamba=Login (samba, activedirectory) +LDAPFieldLoginSambaExample=Example: samaccountname +LDAPFieldFullname=Full name +LDAPFieldFullnameExample=Example: cn +LDAPFieldPasswordNotCrypted=Password not encrypted +LDAPFieldPasswordCrypted=Password encrypted +LDAPFieldPasswordExample=Example: userPassword +LDAPFieldCommonNameExample=Example: cn +LDAPFieldName=Name +LDAPFieldNameExample=Example: sn +LDAPFieldFirstName=First name +LDAPFieldFirstNameExample=Example: givenName +LDAPFieldMail=Email address +LDAPFieldMailExample=Example: mail +LDAPFieldPhone=Professional phone number +LDAPFieldPhoneExample=Example: telephonenumber +LDAPFieldHomePhone=Personal phone number +LDAPFieldHomePhoneExample=Example: homephone +LDAPFieldMobile=Cellular phone +LDAPFieldMobileExample=Example: mobile +LDAPFieldFax=Fax number +LDAPFieldFaxExample=Example: facsimiletelephonenumber +LDAPFieldAddress=Street +LDAPFieldAddressExample=Example: street +LDAPFieldZip=Zip +LDAPFieldZipExample=Example: postalcode +LDAPFieldTown=Town +LDAPFieldTownExample=Example: l +LDAPFieldCountry=Country +LDAPFieldDescription=Description +LDAPFieldDescriptionExample=Example: description +LDAPFieldNotePublic=Public Note +LDAPFieldNotePublicExample=Example: publicnote +LDAPFieldGroupMembers= Group members +LDAPFieldGroupMembersExample= Example: uniqueMember +LDAPFieldBirthdate=Birthdate +LDAPFieldCompany=Company +LDAPFieldCompanyExample=Example: o +LDAPFieldSid=SID +LDAPFieldSidExample=Example: objectsid +LDAPFieldEndLastSubscription=Date of subscription end +LDAPFieldTitle=Job position +LDAPFieldTitleExample=Example: title +LDAPFieldGroupid=Group id +LDAPFieldGroupidExample=Exemple : gidnumber +LDAPFieldUserid=User id +LDAPFieldUseridExample=Exemple : uidnumber +LDAPFieldHomedirectory=Home directory +LDAPFieldHomedirectoryExample=Exemple : homedirectory +LDAPFieldHomedirectoryprefix=Home directory prefix +LDAPSetupNotComplete=LDAP setup not complete (go on others tabs) +LDAPNoUserOrPasswordProvidedAccessIsReadOnly=No administrator or password provided. LDAP access will be anonymous and in read only mode. +LDAPDescContact=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr contacts. +LDAPDescUsers=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr users. +LDAPDescGroups=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr groups. +LDAPDescMembers=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr members module. +LDAPDescMembersTypes=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr members types. +LDAPDescValues=Example values are designed for OpenLDAP with following loaded schemas: core.schema, cosine.schema, inetorgperson.schema). If you use thoose values and OpenLDAP, modify your LDAP config file slapd.conf to have all thoose schemas loaded. +ForANonAnonymousAccess=For an authenticated access (for a write access for example) +PerfDolibarr=Performance setup/optimizing report +YouMayFindPerfAdviceHere=This page provides some checks or advice related to performance. +NotInstalled=Not installed, so your server is not slowed down by this. +ApplicativeCache=Applicative cache +MemcachedNotAvailable=No applicative cache found. You can enhance performance by installing a cache server Memcached and a module able to use this cache server.
    More information here http://wiki.dolibarr.org/index.php/Module_MemCached_EN.
    Note that a lot of web hosting provider does not provide such cache server. +MemcachedModuleAvailableButNotSetup=Module memcached for applicative cache found but setup of module is not complete. +MemcachedAvailableAndSetup=Module memcached dedicated to use memcached server is enabled. +OPCodeCache=OPCode cache +NoOPCodeCacheFound=No OPCode cache found. Maybe you are using an OPCode cache other than XCache or eAccelerator (good), or maybe you don't have OPCode cache (very bad). +HTTPCacheStaticResources=HTTP cache for static resources (css, img, javascript) +FilesOfTypeCached=Files of type %s are cached by HTTP server +FilesOfTypeNotCached=Files of type %s are not cached by HTTP server +FilesOfTypeCompressed=Files of type %s are compressed by HTTP server +FilesOfTypeNotCompressed=Files of type %s are not compressed by HTTP server +CacheByServer=Cache by server +CacheByServerDesc=For example using the Apache directive "ExpiresByType image/gif A2592000" +CacheByClient=Cache by browser +CompressionOfResources=Compression of HTTP responses +CompressionOfResourcesDesc=For example using the Apache directive "AddOutputFilterByType DEFLATE" +TestNotPossibleWithCurrentBrowsers=Such an automatic detection is not possible with current browsers +DefaultValuesDesc=Here you may define the default value you wish to use when creating a new record, and/or default filters or the sort order when you list records. +DefaultCreateForm=Default values (to use on forms) +DefaultSearchFilters=Default search filters +DefaultSortOrder=Default sort orders +DefaultFocus=Default focus fields +DefaultMandatory=Mandatory form fields +##### Products ##### +ProductSetup=Products module setup +ServiceSetup=Services module setup +ProductServiceSetup=Products and Services modules setup +NumberOfProductShowInSelect=Maximum number of products to show in combo select lists (0=no limit) +ViewProductDescInFormAbility=Display product descriptions in forms (otherwise shown in a tooltip popup) +MergePropalProductCard=Activate in product/service Attached Files tab an option to merge product PDF document to proposal PDF azur if product/service is in the proposal +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=Default barcode type to use for products +SetDefaultBarcodeTypeThirdParties=Default barcode type to use for third parties +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= Product / Service configuration +IsNotADir=is not a directory! +##### Syslog ##### +SyslogSetup=Logs module setup +SyslogOutput=Logs outputs +SyslogFacility=Facility +SyslogLevel=Level +SyslogFilename=File name and path +YouCanUseDOL_DATA_ROOT=You can use DOL_DATA_ROOT/dolibarr.log for a log file in Dolibarr "documents" directory. You can set a different path to store this file. +ErrorUnknownSyslogConstant=Constant %s is not a known Syslog constant +OnlyWindowsLOG_USER=Windows only supports LOG_USER +CompressSyslogs=Compression and backup of debug log files (generated by module Log for debug) +SyslogFileNumberOfSaves=Log backups +ConfigureCleaningCronjobToSetFrequencyOfSaves=Configure cleaning scheduled job to set log backup frequency +##### Donations ##### +DonationsSetup=Donation module setup +DonationsReceiptModel=Template of donation receipt +##### Barcode ##### +BarcodeSetup=Barcode setup +PaperFormatModule=Print format module +BarcodeEncodeModule=Barcode encoding type +CodeBarGenerator=Barcode generator +ChooseABarCode=No generator defined +FormatNotSupportedByGenerator=Format not supported by this generator +BarcodeDescEAN8=Barcode of type EAN8 +BarcodeDescEAN13=Barcode of type EAN13 +BarcodeDescUPC=Barcode of type UPC +BarcodeDescISBN=Barcode of type ISBN +BarcodeDescC39=Barcode of type C39 +BarcodeDescC128=Barcode of type C128 +BarcodeDescDATAMATRIX=Barcode of type Datamatrix +BarcodeDescQRCODE=Barcode of type QR code +GenbarcodeLocation=Bar code generation command line tool (used by internal engine for some bar code types). Must be compatible with "genbarcode".
    For example: /usr/local/bin/genbarcode +BarcodeInternalEngine=Internal engine +BarCodeNumberManager=Manager to auto define barcode numbers +##### Prelevements ##### +WithdrawalsSetup=Setup of module Direct Debit payments +##### ExternalRSS ##### +ExternalRSSSetup=External RSS imports setup +NewRSS=New RSS Feed +RSSUrl=RSS URL +RSSUrlExample=An interesting RSS feed +##### Mailing ##### +MailingSetup=EMailing module setup +MailingEMailFrom=Sender email (From) for emails sent by emailing module +MailingEMailError=Return Email (Errors-to) for emails with errors +MailingDelay=Seconds to wait after sending next message +##### Notification ##### +NotificationSetup=Email Notification module setup +NotificationEMailFrom=Sender email (From) for emails sent by the Notifications module +FixedEmailTarget=Recipient +##### Sendings ##### +SendingsSetup=Shipping module setup +SendingsReceiptModel=Sending receipt model +SendingsNumberingModules=Sendings numbering modules +SendingsAbility=Support shipping sheets for customer deliveries +NoNeedForDeliveryReceipts=In most cases, shipping sheets are used both as sheets for customer deliveries (list of products to send) and sheets that are received and signed by customer. Hence the product deliveries receipt is a duplicated feature and is rarely activated. +FreeLegalTextOnShippings=Free text on shipments +##### Deliveries ##### +DeliveryOrderNumberingModules=Products deliveries receipt numbering module +DeliveryOrderModel=Products deliveries receipt model +DeliveriesOrderAbility=Support products deliveries receipts +FreeLegalTextOnDeliveryReceipts=Free text on delivery receipts +##### FCKeditor ##### +AdvancedEditor=Advanced editor +ActivateFCKeditor=Activate advanced editor for: +FCKeditorForCompany=WYSIWIG creation/edition of elements description and note (except products/services) +FCKeditorForProduct=WYSIWIG creation/edition of products/services description and note +FCKeditorForProductDetails=WYSIWIG creation/edition of products details lines for all entities (proposals, orders, invoices, etc...). Warning: Using this option for this case is seriously not recommended as it can create problems with special characters and page formatting when building PDF files. +FCKeditorForMailing= WYSIWIG creation/edition for mass eMailings (Tools->eMailing) +FCKeditorForUserSignature=WYSIWIG creation/edition of user signature +FCKeditorForMail=WYSIWIG creation/edition for all mail (except Tools->eMailing) +FCKeditorForTicket=WYSIWIG creation/edition for tickets +##### Stock ##### +StockSetup=Stock module setup +IfYouUsePointOfSaleCheckModule=If you use the Point of Sale module (POS) provided by default or an external module, this setup may be ignored by your POS module. Most POS modules are designed by default to create an invoice immediately and decrease stock irrespective of the options here. So if you need or not to have a stock decrease when registering a sale from your POS, check also your POS module setup. +##### Menu ##### +MenuDeleted=Menu deleted +Menus=Menus +TreeMenuPersonalized=Personalized menus +NotTopTreeMenuPersonalized=Personalized menus not linked to a top menu entry +NewMenu=New menu +Menu=Selection of menu +MenuHandler=Menu handler +MenuModule=Source module +HideUnauthorizedMenu= Hide unauthorized menus (gray) +DetailId=Id menu +DetailMenuHandler=Menu handler where to show new menu +DetailMenuModule=Module name if menu entry come from a module +DetailType=Type of menu (top or left) +DetailTitre=Menu label or label code for translation +DetailUrl=URL where menu send you (Absolute URL link or external link with http://) +DetailEnabled=Condition to show or not entry +DetailRight=Condition to display unauthorized grey menus +DetailLangs=Lang file name for label code translation +DetailUser=Intern / Extern / All +Target=Target +DetailTarget=Target for links (_blank top opens a new window) +DetailLevel=Level (-1:top menu, 0:header menu, >0 menu and sub menu) +ModifMenu=Menu change +DeleteMenu=Delete menu entry +ConfirmDeleteMenu=Are you sure you want to delete menu entry %s? +FailedToInitializeMenu=Failed to initialize menu +##### Tax ##### +TaxSetup=Taxes, social or fiscal taxes and dividends module setup +OptionVatMode=VAT due +OptionVATDefault=Standard basis +OptionVATDebitOption=Accrual basis +OptionVatDefaultDesc=VAT is due:
    - on delivery of goods (based on invoice date)
    - on payments for services +OptionVatDebitOptionDesc=VAT is due:
    - on delivery of goods (based on invoice date)
    - on invoice (debit) for services +OptionPaymentForProductAndServices=Cash basis for products and services +OptionPaymentForProductAndServicesDesc=VAT is due:
    - on payment for goods
    - on payments for services +SummaryOfVatExigibilityUsedByDefault=Time of VAT eligibility by default according to chosen option: +OnDelivery=On delivery +OnPayment=On payment +OnInvoice=On invoice +SupposedToBePaymentDate=Payment date used +SupposedToBeInvoiceDate=Invoice date used +Buy=Buy +Sell=Sell +InvoiceDateUsed=Invoice date used +YourCompanyDoesNotUseVAT=Your company has been defined to not use VAT (Home - Setup - Company/Organization), so there is no VAT options to setup. +AccountancyCode=Accounting Code +AccountancyCodeSell=Sale account. code +AccountancyCodeBuy=Purchase account. code +##### Agenda ##### +AgendaSetup=Events and agenda module setup +PasswordTogetVCalExport=Key to authorize export link +PastDelayVCalExport=Do not export event older than +AGENDA_USE_EVENT_TYPE=Use events types (managed in menu Setup -> Dictionaries -> Type of agenda events) +AGENDA_USE_EVENT_TYPE_DEFAULT=Automatically set this default value for type of event in event create form +AGENDA_DEFAULT_FILTER_TYPE=Automatically set this type of event in search filter of agenda view +AGENDA_DEFAULT_FILTER_STATUS=Automatically set this status for events in search filter of agenda view +AGENDA_DEFAULT_VIEW=Which tab do you want to open by default when selecting menu Agenda +AGENDA_REMINDER_EMAIL=Enable event reminder by emails (remind option/delay can be defined on each event). Note: Module %s must be enabled and correctly setup to have reminder sent at the correct frequency. +AGENDA_REMINDER_BROWSER=Enable event reminder on user's browser (when event date is reached, each user is able to refuse this from the browser confirmation question) +AGENDA_REMINDER_BROWSER_SOUND=Enable sound notification +AGENDA_SHOW_LINKED_OBJECT=Show linked object into agenda view +##### Clicktodial ##### +ClickToDialSetup=Click To Dial module setup +ClickToDialUrlDesc=Url called when a click on phone picto is done. In URL, you can use tags
    __PHONETO__ that will be replaced with the phone number of person to call
    __PHONEFROM__ that will be replaced with phone number of calling person (yours)
    __LOGIN__ that will be replaced with clicktodial login (defined on user card)
    __PASS__ that will be replaced with clicktodial password (defined on user card). +ClickToDialDesc=This module makea phone numbers clickable links. A click on the icon will make your phone call the number. This can be used to call a call-center system from Dolibarr that can call the phone number on a SIP system for example. +ClickToDialUseTelLink=Use just a link "tel:" on phone numbers +ClickToDialUseTelLinkDesc=Use this method if your users have a softphone or a software interface installed on the same computer as the browser, and called when you click on a link in your browser that starts with "tel:". If you need a full server solution (no need of local software installation), you must set this to "No" and fill next field. +##### Point Of Sale (CashDesk) ##### +CashDesk=Point of Sale +CashDeskSetup=Point of Sales module setup +CashDeskThirdPartyForSell=Default generic third party to use for sales +CashDeskBankAccountForSell=Default account to use to receive cash payments +CashDeskBankAccountForCheque=Default account to use to receive payments by check +CashDeskBankAccountForCB=Default account to use to receive payments by credit cards +CashDeskBankAccountForSumup=Default bank account to use to receive payments by SumUp +CashDeskDoNotDecreaseStock=Disable stock decrease when a sale is done from Point of Sale (if "no", stock decrease is done for each sale done from POS, irrespective of the option set in module Stock). +CashDeskIdWareHouse=Force and restrict warehouse to use for stock decrease +StockDecreaseForPointOfSaleDisabled=Stock decrease from Point of Sale disabled +StockDecreaseForPointOfSaleDisabledbyBatch=Stock decrease in POS is not compatible with module Serial/Lot management (currently active) so stock decrease is disabled. +CashDeskYouDidNotDisableStockDecease=You did not disable stock decrease when making a sale from Point of Sale. Hence a warehouse is required. +CashDeskForceDecreaseStockLabel=Stock decrease for batch products was forced. +CashDeskForceDecreaseStockDesc=Decrease first by the oldest eatby and sellby dates. +CashDeskReaderKeyCodeForEnter=Key code for "Enter" defined in barcode reader (Example: 13) +##### Bookmark ##### +BookmarkSetup=Bookmark module setup +BookmarkDesc=This module allows you to manage bookmarks. You can also add shortcuts to any Dolibarr pages or external web sites on your left menu. +NbOfBoomarkToShow=Maximum number of bookmarks to show in left menu +##### WebServices ##### +WebServicesSetup=Webservices module setup +WebServicesDesc=By enabling this module, Dolibarr become a web service server to provide miscellaneous web services. +WSDLCanBeDownloadedHere=WSDL descriptor files of provided services can be download here +EndPointIs=SOAP clients must send their requests to the Dolibarr endpoint available at URL +##### API #### +ApiSetup=API module setup +ApiDesc=By enabling this module, Dolibarr become a REST server to provide miscellaneous web services. +ApiProductionMode=Enable production mode (this will activate use of a cache for services management) +ApiExporerIs=You can explore and test the APIs at URL +OnlyActiveElementsAreExposed=Only elements from enabled modules are exposed +ApiKey=Key for API +WarningAPIExplorerDisabled=The API explorer has been disabled. API explorer is not required to provide API services. It is a tool for developer to find/test REST APIs. If you need this tool, go into setup of module API REST to activate it. +##### Bank ##### +BankSetupModule=Bank module setup +FreeLegalTextOnChequeReceipts=Free text on check receipts +BankOrderShow=Display order of bank accounts for countries using "detailed bank number" +BankOrderGlobal=General +BankOrderGlobalDesc=General display order +BankOrderES=Spanish +BankOrderESDesc=Spanish display order +ChequeReceiptsNumberingModule=Check Receipts Numbering Module +##### Multicompany ##### +MultiCompanySetup=Multi-company module setup +##### Suppliers ##### +SuppliersSetup=Vendor module setup +SuppliersCommandModel=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) +SuppliersInvoiceModel=Complete template of Vendor Invoice +SuppliersInvoiceNumberingModel=Vendor invoices numbering models +IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval +##### GeoIPMaxmind ##### +GeoIPMaxmindSetup=GeoIP Maxmind module setup +PathToGeoIPMaxmindCountryDataFile=Path to file containing Maxmind ip to country translation.
    Examples:
    /usr/local/share/GeoIP/GeoIP.dat
    /usr/share/GeoIP/GeoIP.dat
    /usr/share/GeoIP/GeoLite2-Country.mmdb +NoteOnPathLocation=Note that your ip to country data file must be inside a directory your PHP can read (Check your PHP open_basedir setup and filesystem permissions). +YouCanDownloadFreeDatFileTo=You can download a free demo version of the Maxmind GeoIP country file at %s. +YouCanDownloadAdvancedDatFileTo=You can also download a more complete version, with updates, of the Maxmind GeoIP country file at %s. +TestGeoIPResult=Test of a conversion IP -> country +##### Projects ##### +ProjectsNumberingModules=Projects numbering module +ProjectsSetup=Project module setup +ProjectsModelModule=Project reports document model +TasksNumberingModules=Tasks numbering module +TaskModelModule=Tasks reports document model +UseSearchToSelectProject=Wait until a key is pressed before loading content of Project combo list.
    This may improve performance if you have a large number of projects, but it is less convenient. +##### ECM (GED) ##### +##### Fiscal Year ##### +AccountingPeriods=Accounting periods +AccountingPeriodCard=Accounting period +NewFiscalYear=New accounting period +OpenFiscalYear=Open accounting period +CloseFiscalYear=Close accounting period +DeleteFiscalYear=Delete accounting period +ConfirmDeleteFiscalYear=Are you sure to delete this accounting period? +ShowFiscalYear=Show accounting period +AlwaysEditable=Can always be edited +MAIN_APPLICATION_TITLE=Force visible name of application (warning: setting your own name here may break autofill login feature when using DoliDroid mobile application) +NbMajMin=Minimum number of uppercase characters +NbNumMin=Minimum number of numeric characters +NbSpeMin=Minimum number of special characters +NbIteConsecutive=Maximum number of repeating same characters +NoAmbiCaracAutoGeneration=Do not use ambiguous characters ("1","l","i","|","0","O") for automatic generation +SalariesSetup=Setup of module salaries +SortOrder=Sort order +Format=Format +TypePaymentDesc=0:Customer payment type, 1:Vendor payment type, 2:Both customers and suppliers payment type +IncludePath=Include path (defined into variable %s) +ExpenseReportsSetup=Setup of module Expense Reports +TemplatePDFExpenseReports=Document templates to generate expense report document +ExpenseReportsIkSetup=Setup of module Expense Reports - Milles index +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 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 to the tab "Notifications" of a third party to add or remove notifications for contacts/addresses +Threshold=Threshold +BackupDumpWizard=Wizard to build the database dump file +BackupZipWizard=Wizard to build the archive of documents directory +SomethingMakeInstallFromWebNotPossible=Installation of external module is not possible from the web interface for the following reason: +SomethingMakeInstallFromWebNotPossible2=For this reason, process to upgrade described here is a manual process only a privileged user may perform. +InstallModuleFromWebHasBeenDisabledByFile=Install of external module from application has been disabled by your administrator. You must ask him to remove the file %s to allow this feature. +ConfFileMustContainCustom=Installing or building an external module from application need to save the module files into directory %s. To have this directory processed by Dolibarr, you must setup your conf/conf.php to add the 2 directive lines:
    $dolibarr_main_url_root_alt='/custom';
    $dolibarr_main_document_root_alt='%s/custom'; +HighlightLinesOnMouseHover=Highlight table lines when mouse move passes over +HighlightLinesColor=Highlight color of the line when the mouse passes over (use 'ffffff' for no highlight) +HighlightLinesChecked=Highlight color of the line when it is checked (use 'ffffff' for no highlight) +TextTitleColor=Text color of Page title +LinkColor=Color of links +PressF5AfterChangingThis=Press CTRL+F5 on keyboard or clear your browser cache after changing this value to have it effective +NotSupportedByAllThemes=Will works with core themes, may not be supported by external themes +BackgroundColor=Background color +TopMenuBackgroundColor=Background color for Top menu +TopMenuDisableImages=Hide images in Top menu +LeftMenuBackgroundColor=Background color for Left menu +BackgroundTableTitleColor=Background color for Table title line +BackgroundTableTitleTextColor=Text color for Table title line +BackgroundTableTitleTextlinkColor=Text color for Table title link line +BackgroundTableLineOddColor=Background color for odd table lines +BackgroundTableLineEvenColor=Background color for even table lines +MinimumNoticePeriod=Minimum notice period (Your leave request must be done before this delay) +NbAddedAutomatically=Number of days added to counters of users (automatically) each month +EnterAnyCode=This field contains a reference to identify line. Enter any value of your choice, but without special characters. +Enter0or1=Enter 0 or 1 +UnicodeCurrency=Enter here between braces, list of byte number that represent the currency symbol. For example: for $, enter [36] - for brazil real R$ [82,36] - for €, enter [8364] +ColorFormat=The RGB color is in HEX format, eg: FF0000 +PositionIntoComboList=Position of line into combo lists +SellTaxRate=Sale tax rate +RecuperableOnly=Yes for VAT "Not Perceived but Recoverable" dedicated for some state in France. Keep value to "No" in all other cases. +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=Type of template +TemplateIsVisibleByOwnerOnly=Template is visible to owner only +VisibleEverywhere=Visible everywhere +VisibleNowhere=Visible nowhere +FixTZ=TimeZone fix +FillFixTZOnlyIfRequired=Example: +2 (fill only if problem experienced) +ExpectedChecksum=Expected Checksum +CurrentChecksum=Current Checksum +ExpectedSize=Expected size +CurrentSize=Current size +ForcedConstants=Required constant values +MailToSendProposal=Customer proposals +MailToSendOrder=Sales orders +MailToSendInvoice=Customer invoices +MailToSendShipment=Shipments +MailToSendIntervention=Interventions +MailToSendSupplierRequestForQuotation=Quotation request +MailToSendSupplierOrder=Purchase orders +MailToSendSupplierInvoice=Vendor invoices +MailToSendContract=Contracts +MailToThirdparty=Third parties +MailToMember=Members +MailToUser=Users +MailToProject=Projects page +ByDefaultInList=Show by default on list view +YouUseLastStableVersion=You use the latest stable version +TitleExampleForMajorRelease=Example of message you can use to announce this major release (feel free to use it on your web sites) +TitleExampleForMaintenanceRelease=Example of message you can use to announce this maintenance release (feel free to use it on your web sites) +ExampleOfNewsMessageForMajorRelease=Dolibarr ERP & CRM %s is available. Version %s is a major release with a lot of new features for both users and developers. You can download it from the download area of https://www.dolibarr.org portal (subdirectory Stable versions). You can read ChangeLog for complete list of changes. +ExampleOfNewsMessageForMaintenanceRelease=Dolibarr ERP & CRM %s is available. Version %s is a maintenance version, so contains only bug fixes. We recommend all users to upgrade to this version. A maintenance release does not introduce new features or changes to the database. You may download it from the download area of https://www.dolibarr.org portal (subdirectory Stable versions). You can read the ChangeLog for complete list of changes. +MultiPriceRuleDesc=When option "Several levels of prices per product/service" is enabled, you can define different prices (one per price level) for each product. To save you time, here you may enter a rule to autocalculate a price for each level based on the price of the first level, so you will have to only enter a price for the first level for each product. This page is designed to save you time but is useful only if your prices for each level are relative to first level. You can ignore this page in most cases. +ModelModulesProduct=Templates for product documents +ToGenerateCodeDefineAutomaticRuleFirst=To be able to generate codes automatically, you must first define a manager to auto-define the barcode number. +SeeSubstitutionVars=See * note for list of possible substitution variables +SeeChangeLog=See ChangeLog file (english only) +AllPublishers=All publishers +UnknownPublishers=Unknown publishers +AddRemoveTabs=Add or remove tabs +AddDataTables=Add object tables +AddDictionaries=Add dictionaries tables +AddData=Add objects or dictionaries data +AddBoxes=Add widgets +AddSheduledJobs=Add scheduled jobs +AddHooks=Add hooks +AddTriggers=Add triggers +AddMenus=Add menus +AddPermissions=Add permissions +AddExportProfiles=Add export profiles +AddImportProfiles=Add import profiles +AddOtherPagesOrServices=Add other pages or services +AddModels=Add document or numbering templates +AddSubstitutions=Add keys substitutions +DetectionNotPossible=Detection not possible +UrlToGetKeyToUseAPIs=Url to get token to use API (once token has been received it is saved in database user table and must be provided on each API call) +ListOfAvailableAPIs=List of available APIs +activateModuleDependNotSatisfied=Module "%s" depends on module "%s", that is missing, so module "%1$s" may not work correctly. Please install module "%2$s" or disable module "%1$s" if you want to be safe from any surprise +CommandIsNotInsideAllowedCommands=The command you are trying to run is not in the list of allowed commands defined in parameter $dolibarr_main_restrict_os_commands in the conf.php file. +LandingPage=Landing page +SamePriceAlsoForSharedCompanies=If you use a multicompany module, with the choice "Single price", the price will also be the same for all companies if products are shared between environments +ModuleEnabledAdminMustCheckRights=Module has been activated. Permissions for activated module(s) were given to admin users only. You may need to grant permissions to other users or groups manually if necessary. +UserHasNoPermissions=This user has no permissions defined +TypeCdr=Use "None" if the date of payment term is date of invoice plus a delta in days (delta is field "%s")
    Use "At end of month", if, after delta, the date must be increased to reach the end of month (+ an optional "%s" in days)
    Use "Current/Next" to have payment term date being the first Nth of the month after delta (delta is field "%s", N is stored into field "%s") +BaseCurrency=Reference currency of the company (go into setup of company to change this) +WarningNoteModuleInvoiceForFrenchLaw=This module %s is compliant with French laws (Loi Finance 2016). +WarningNoteModulePOSForFrenchLaw=This module %s is compliant with French laws (Loi Finance 2016) because module Non Reversible Logs is automatically activated. +WarningInstallationMayBecomeNotCompliantWithLaw=You are trying to install module %s that is an external module. Activating an external module means you trust the publisher of that module and that you are sure that this module does not adversely impact the behavior of your application, and is compliant with laws of your country (%s). If the module introduces an illegal feature, you become responsible for the use of illegal software. +MAIN_PDF_MARGIN_LEFT=Left margin on PDF +MAIN_PDF_MARGIN_RIGHT=Right margin on PDF +MAIN_PDF_MARGIN_TOP=Top margin on PDF +MAIN_PDF_MARGIN_BOTTOM=Bottom margin on PDF +NothingToSetup=There is no specific setup required for this module. +SetToYesIfGroupIsComputationOfOtherGroups=Set this to yes if this group is a computation of other groups +EnterCalculationRuleIfPreviousFieldIsYes=Enter calculation rule if previous field was set to Yes (For example 'CODEGRP1+CODEGRP2') +SeveralLangugeVariatFound=Several language variants found +RemoveSpecialChars=Remove special characters +COMPANY_AQUARIUM_CLEAN_REGEX=Regex filter to clean value (COMPANY_AQUARIUM_CLEAN_REGEX) +COMPANY_DIGITARIA_CLEAN_REGEX=Regex filter to clean value (COMPANY_DIGITARIA_CLEAN_REGEX) +COMPANY_DIGITARIA_UNIQUE_CODE=Duplicate not allowed +GDPRContact=Data Protection Officer (DPO, Data Privacy or GDPR contact) +GDPRContactDesc=If you store data about European companies/citizens, you can name the contact who is responsible for the General Data Protection Regulation here +HelpOnTooltip=Help text to show on tooltip +HelpOnTooltipDesc=Put text or a translation key here for the text to show in a tooltip when this field appears in a form +YouCanDeleteFileOnServerWith=You can delete this file on the server with Command Line:
    %s +ChartLoaded=Chart of account loaded +SocialNetworkSetup=Setup of module Social Networks +EnableFeatureFor=Enable features for %s +VATIsUsedIsOff=Note: The option to use Sales Tax or VAT has been set to Off in the menu %s - %s, so Sales tax or Vat used will always be 0 for sales. +SwapSenderAndRecipientOnPDF=Swap sender and recipient address position on PDF documents +FeatureSupportedOnTextFieldsOnly=Warning, feature supported on text fields only. Also an URL parameter action=create or action=edit must be set OR page name must end with 'new.php' to trigger this feature. +EmailCollector=Email collector +EmailCollectorDescription=Add a scheduled job and a setup page to scan regularly email boxes (using IMAP protocol) and record emails received into your application, at the right place and/or create some records automatically (like leads). +NewEmailCollector=New Email Collector +EMailHost=Host of email IMAP server +MailboxSourceDirectory=Mailbox source directory +MailboxTargetDirectory=Mailbox target directory +EmailcollectorOperations=Operations to do by collector +MaxEmailCollectPerCollect=Max number of emails collected per collect +CollectNow=Collect now +ConfirmCloneEmailCollector=Are you sure you want to clone the Email collector %s ? +DateLastCollectResult=Date latest collect tried +DateLastcollectResultOk=Date latest collect successfull +LastResult=Latest result +EmailCollectorConfirmCollectTitle=Email collect confirmation +EmailCollectorConfirmCollect=Do you want to run the collection for this collector now ? +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) +CodeLastResult=Latest result code +NbOfEmailsInInbox=Number of emails in source directory +LoadThirdPartyFromName=Load third party searching on %s (load only) +LoadThirdPartyFromNameOrCreate=Load third party searching on %s (create if not found) +WithDolTrackingID=Dolibarr Reference found in Message ID +WithoutDolTrackingID=Dolibarr Reference not found in Message ID +FormatZip=Zip +MainMenuCode=Menu entry code (mainmenu) +ECMAutoTree=Show automatic ECM tree +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. +OpeningHours=Opening hours +OpeningHoursDesc=Enter here the regular opening hours of your company. +ResourceSetup=Configuration of Resource module +UseSearchToSelectResource=Use a search form to choose a resource (rather than a drop-down list). +DisabledResourceLinkUser=Disable feature to link a resource to users +DisabledResourceLinkContact=Disable feature to link a resource to contacts +EnableResourceUsedInEventCheck=Enable feature to check if a resource is in use in an event +ConfirmUnactivation=Confirm module reset +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. +RootCategoryForProductsToSell=Root category of products to sell +RootCategoryForProductsToSellDesc=If defined, only products inside this category or childs of this category will be available in the Point Of Sale +DebugBar=Debug Bar +DebugBarDesc=Toolbar that comes with a plenty of tools to simplify debugging +DebugBarSetup=DebugBar Setup +GeneralOptions=General Options +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 +ModuleActivated=Module %s is activated and slows the interface +EXPORTS_SHARE_MODELS=Export models are share with everybody +ExportSetup=Setup of module Export +ImportSetup=Setup of module Import +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/. +EmailCollectorTargetDir=It may be a desired behaviour to move the email into another tag/directory when it was processed successfully. Just set a value here to use this feature. Note that you must also use a read/write login account. +EmailCollectorLoadThirdPartyHelp=You can use this action to use the email content to find and load an existing thirdparty in your database. The found (or created) thirdparty will be used for following actions that need it. In the parameter field you can use for example 'EXTRACT:BODY:Name:\\s([^\\s]*)' if you want to extract the name of the thirdparty from a string 'Name: name to find' found into the body. +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 +RESTRICT_ON_IP=Allow access to some host IP only (wildcard not allowed, use space between values). Empty means every hosts can access. +IPListExample=127.0.0.1 192.168.0.2 [::1] +BaseOnSabeDavVersion=Based on the library SabreDAV version +NotAPublicIp=Not a public IP +MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server (done 1 time only after installation) to allow the foundation to count the number of Dolibarr installation. +FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled +EmailTemplate=Template for email +EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/am_ET/agenda.lang b/htdocs/langs/am_ET/agenda.lang new file mode 100644 index 00000000000..2031241d2c9 --- /dev/null +++ b/htdocs/langs/am_ET/agenda.lang @@ -0,0 +1,154 @@ +# Dolibarr language file - Source file is en_US - agenda +IdAgenda=ID event +Actions=Events +Agenda=Agenda +TMenuAgenda=Agenda +Agendas=Agendas +LocalAgenda=Internal calendar +ActionsOwnedBy=Event owned by +ActionsOwnedByShort=Owner +AffectedTo=Assigned to +Event=Event +Events=Events +EventsNb=Number of events +ListOfActions=List of events +EventReports=Event reports +Location=Location +ToUserOfGroup=To any user in group +EventOnFullDay=Event on all day(s) +MenuToDoActions=All incomplete events +MenuDoneActions=All terminated events +MenuToDoMyActions=My incomplete events +MenuDoneMyActions=My terminated events +ListOfEvents=List of events (internal calendar) +ActionsAskedBy=Events reported by +ActionsToDoBy=Events assigned to +ActionsDoneBy=Events done by +ActionAssignedTo=Event assigned to +ViewCal=Month view +ViewDay=Day view +ViewWeek=Week view +ViewPerUser=Per user view +ViewPerType=Per type view +AutoActions= Automatic filling +AgendaAutoActionDesc= Here you may define events which you want Dolibarr to create automatically in Agenda. If nothing is checked, only manual actions will be included in logs and displayed in Agenda. Automatic tracking of business actions done on objects (validation, status change) will not be saved. +AgendaSetupOtherDesc= This page provides options to allow the export of your Dolibarr events into an external calendar (Thunderbird, Google Calendar etc...) +AgendaExtSitesDesc=This page allows to declare external sources of calendars to see their events into Dolibarr agenda. +ActionsEvents=Events for which Dolibarr will create an action in agenda automatically +EventRemindersByEmailNotEnabled=Event reminders by email was not enabled into %s module setup. +##### Agenda event labels ##### +NewCompanyToDolibarr=Third party %s created +COMPANY_DELETEInDolibarr=Third party %s deleted +ContractValidatedInDolibarr=Contract %s validated +CONTRACT_DELETEInDolibarr=Contract %s deleted +PropalClosedSignedInDolibarr=Proposal %s signed +PropalClosedRefusedInDolibarr=Proposal %s refused +PropalValidatedInDolibarr=Proposal %s validated +PropalClassifiedBilledInDolibarr=Proposal %s classified billed +InvoiceValidatedInDolibarr=Invoice %s validated +InvoiceValidatedInDolibarrFromPos=Invoice %s validated from POS +InvoiceBackToDraftInDolibarr=Invoice %s go back to draft status +InvoiceDeleteDolibarr=Invoice %s deleted +InvoicePaidInDolibarr=Invoice %s changed to paid +InvoiceCanceledInDolibarr=Invoice %s canceled +MemberValidatedInDolibarr=Member %s validated +MemberModifiedInDolibarr=Member %s modified +MemberResiliatedInDolibarr=Member %s terminated +MemberDeletedInDolibarr=Member %s deleted +MemberSubscriptionAddedInDolibarr=Subscription %s for member %s added +MemberSubscriptionModifiedInDolibarr=Subscription %s for member %s modified +MemberSubscriptionDeletedInDolibarr=Subscription %s for member %s deleted +ShipmentValidatedInDolibarr=Shipment %s validated +ShipmentClassifyClosedInDolibarr=Shipment %s classified billed +ShipmentUnClassifyCloseddInDolibarr=Shipment %s classified re-open +ShipmentBackToDraftInDolibarr=Shipment %s go back to draft status +ShipmentDeletedInDolibarr=Shipment %s deleted +OrderCreatedInDolibarr=Order %s created +OrderValidatedInDolibarr=Order %s validated +OrderDeliveredInDolibarr=Order %s classified delivered +OrderCanceledInDolibarr=Order %s canceled +OrderBilledInDolibarr=Order %s classified billed +OrderApprovedInDolibarr=Order %s approved +OrderRefusedInDolibarr=Order %s refused +OrderBackToDraftInDolibarr=Order %s go back to draft status +ProposalSentByEMail=Commercial proposal %s sent by email +ContractSentByEMail=Contract %s sent by email +OrderSentByEMail=Sales order %s sent by email +InvoiceSentByEMail=Customer invoice %s sent by email +SupplierOrderSentByEMail=Purchase order %s sent by email +ORDER_SUPPLIER_DELETEInDolibarr=Purchase order %s deleted +SupplierInvoiceSentByEMail=Vendor invoice %s sent by email +ShippingSentByEMail=Shipment %s sent by email +ShippingValidated= Shipment %s validated +InterventionSentByEMail=Intervention %s sent by email +ProposalDeleted=Proposal deleted +OrderDeleted=Order deleted +InvoiceDeleted=Invoice deleted +DraftInvoiceDeleted=Draft invoice deleted +PRODUCT_CREATEInDolibarr=Product %s created +PRODUCT_MODIFYInDolibarr=Product %s modified +PRODUCT_DELETEInDolibarr=Product %s deleted +HOLIDAY_CREATEInDolibarr=Request for leave %s created +HOLIDAY_MODIFYInDolibarr=Request for leave %s modified +HOLIDAY_APPROVEInDolibarr=Request for leave %s approved +HOLIDAY_VALIDATEInDolibarr=Request for leave %s validated +HOLIDAY_DELETEInDolibarr=Request for leave %s deleted +EXPENSE_REPORT_CREATEInDolibarr=Expense report %s created +EXPENSE_REPORT_VALIDATEInDolibarr=Expense report %s validated +EXPENSE_REPORT_APPROVEInDolibarr=Expense report %s approved +EXPENSE_REPORT_DELETEInDolibarr=Expense report %s deleted +EXPENSE_REPORT_REFUSEDInDolibarr=Expense report %s refused +PROJECT_CREATEInDolibarr=Project %s created +PROJECT_MODIFYInDolibarr=Project %s modified +PROJECT_DELETEInDolibarr=Project %s deleted +TICKET_CREATEInDolibarr=Ticket %s created +TICKET_MODIFYInDolibarr=Ticket %s modified +TICKET_ASSIGNEDInDolibarr=Ticket %s assigned +TICKET_CLOSEInDolibarr=Ticket %s closed +TICKET_DELETEInDolibarr=Ticket %s deleted +BOM_VALIDATEInDolibarr=BOM validated +BOM_UNVALIDATEInDolibarr=BOM unvalidated +BOM_CLOSEInDolibarr=BOM disabled +BOM_REOPENInDolibarr=BOM reopen +BOM_DELETEInDolibarr=BOM deleted +MRP_MO_VALIDATEInDolibarr=MO validated +MRP_MO_PRODUCEDInDolibarr=MO produced +MRP_MO_DELETEInDolibarr=MO deleted +##### End agenda events ##### +AgendaModelModule=Document templates for event +DateActionStart=Start date +DateActionEnd=End date +AgendaUrlOptions1=You can also add following parameters to filter output: +AgendaUrlOptions3=logina=%s to restrict output to actions owned by a user %s. +AgendaUrlOptionsNotAdmin=logina=!%s to restrict output to actions not owned by user %s. +AgendaUrlOptions4=logint=%s to restrict output to actions assigned to user %s (owner and others). +AgendaUrlOptionsProject=project=__PROJECT_ID__ to restrict output to actions linked to project __PROJECT_ID__. +AgendaUrlOptionsNotAutoEvent=notactiontype=systemauto to exclude automatic events. +AgendaUrlOptionsIncludeHolidays=includeholidays=1 to include events of holidays. +AgendaShowBirthdayEvents=Show birthdays of contacts +AgendaHideBirthdayEvents=Hide birthdays of contacts +Busy=Busy +ExportDataset_event1=List of agenda events +DefaultWorkingDays=Default working days range in week (Example: 1-5, 1-6) +DefaultWorkingHours=Default working hours in day (Example: 9-18) +# External Sites ical +ExportCal=Export calendar +ExtSites=Import external calendars +ExtSitesEnableThisTool=Show external calendars (defined in global setup) in Agenda. Does not affect external calendars defined by users. +ExtSitesNbOfAgenda=Number of calendars +AgendaExtNb=Calendar no. %s +ExtSiteUrlAgenda=URL to access .ical file +ExtSiteNoLabel=No Description +VisibleTimeRange=Visible time range +VisibleDaysRange=Visible days range +AddEvent=Create event +MyAvailability=My availability +ActionType=Event type +DateActionBegin=Start event date +ConfirmCloneEvent=Are you sure you want to clone the event %s? +RepeatEvent=Repeat event +EveryWeek=Every week +EveryMonth=Every month +DayOfMonth=Day of month +DayOfWeek=Day of week +DateStartPlusOne=Date start + 1 hour diff --git a/htdocs/langs/am_ET/assets.lang b/htdocs/langs/am_ET/assets.lang new file mode 100644 index 00000000000..ef04723c6c2 --- /dev/null +++ b/htdocs/langs/am_ET/assets.lang @@ -0,0 +1,65 @@ +# Copyright (C) 2018 Alexandre Spangaro +# +# 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 . + +# +# Generic +# +Assets = Assets +NewAsset = New asset +AccountancyCodeAsset = Accounting code (asset) +AccountancyCodeDepreciationAsset = Accounting code (depreciation asset account) +AccountancyCodeDepreciationExpense = Accounting code (depreciation expense account) +NewAssetType=New asset type +AssetsTypeSetup=Asset type setup +AssetTypeModified=Asset type modified +AssetType=Asset type +AssetsLines=Assets +DeleteType=Delete +DeleteAnAssetType=Delete an asset type +ConfirmDeleteAssetType=Are you sure you want to delete this asset type? +ShowTypeCard=Show type '%s' + +# Module label 'ModuleAssetsName' +ModuleAssetsName = Assets +# Module description 'ModuleAssetsDesc' +ModuleAssetsDesc = Assets description + +# +# Admin page +# +AssetsSetup = Assets setup +Settings = Settings +AssetsSetupPage = Assets setup page +ExtraFieldsAssetsType = Complementary attributes (Asset type) +AssetsType=Asset type +AssetsTypeId=Asset type id +AssetsTypeLabel=Asset type label +AssetsTypes=Assets types + +# +# Menu +# +MenuAssets = Assets +MenuNewAsset = New asset +MenuTypeAssets = Type assets +MenuListAssets = List +MenuNewTypeAssets = New +MenuListTypeAssets = List + +# +# Module +# +NewAssetType=New asset type +NewAsset=New asset diff --git a/htdocs/langs/am_ET/banks.lang b/htdocs/langs/am_ET/banks.lang new file mode 100644 index 00000000000..e54239e9fb2 --- /dev/null +++ b/htdocs/langs/am_ET/banks.lang @@ -0,0 +1,175 @@ +# Dolibarr language file - Source file is en_US - banks +Bank=Bank +MenuBankCash=Banks | Cash +MenuVariousPayment=Miscellaneous payments +MenuNewVariousPayment=New Miscellaneous payment +BankName=Bank name +FinancialAccount=Account +BankAccount=Bank account +BankAccounts=Bank accounts +BankAccountsAndGateways=Bank accounts | Gateways +ShowAccount=Show Account +AccountRef=Financial account ref +AccountLabel=Financial account label +CashAccount=Cash account +CashAccounts=Cash accounts +CurrentAccounts=Current accounts +SavingAccounts=Savings accounts +ErrorBankLabelAlreadyExists=Financial account label already exists +BankBalance=Balance +BankBalanceBefore=Balance before +BankBalanceAfter=Balance after +BalanceMinimalAllowed=Minimum allowed balance +BalanceMinimalDesired=Minimum desired balance +InitialBankBalance=Initial balance +EndBankBalance=End balance +CurrentBalance=Current balance +FutureBalance=Future balance +ShowAllTimeBalance=Show balance from start +AllTime=From start +Reconciliation=Reconciliation +RIB=Bank Account Number +IBAN=IBAN number +BIC=BIC/SWIFT code +SwiftValid=BIC/SWIFT valid +SwiftVNotalid=BIC/SWIFT not valid +IbanValid=BAN valid +IbanNotValid=BAN not valid +StandingOrders=Direct Debit orders +StandingOrder=Direct debit order +AccountStatement=Account statement +AccountStatementShort=Statement +AccountStatements=Account statements +LastAccountStatements=Last account statements +IOMonthlyReporting=Monthly reporting +BankAccountDomiciliation=Bank address +BankAccountCountry=Account country +BankAccountOwner=Account owner name +BankAccountOwnerAddress=Account owner address +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=Create account +NewBankAccount=New account +NewFinancialAccount=New financial account +MenuNewFinancialAccount=New financial account +EditFinancialAccount=Edit account +LabelBankCashAccount=Bank or cash label +AccountType=Account type +BankType0=Savings account +BankType1=Current or credit card account +BankType2=Cash account +AccountsArea=Accounts area +AccountCard=Account card +DeleteAccount=Delete account +ConfirmDeleteAccount=Are you sure you want to delete this account? +Account=Account +BankTransactionByCategories=Bank entries by categories +BankTransactionForCategory=Bank entries for category %s +RemoveFromRubrique=Remove link with category +RemoveFromRubriqueConfirm=Are you sure you want to remove link between the entry and the category? +ListBankTransactions=List of bank entries +IdTransaction=Transaction ID +BankTransactions=Bank entries +BankTransaction=Bank entry +ListTransactions=List entries +ListTransactionsByCategory=List entries/category +TransactionsToConciliate=Entries to reconcile +TransactionsToConciliateShort=To reconcile +Conciliable=Can be reconciled +Conciliate=Reconcile +Conciliation=Reconciliation +SaveStatementOnly=Save statement only +ReconciliationLate=Reconciliation late +IncludeClosedAccount=Include closed accounts +OnlyOpenedAccount=Only open accounts +AccountToCredit=Account to credit +AccountToDebit=Account to debit +DisableConciliation=Disable reconciliation feature for this account +ConciliationDisabled=Reconciliation feature disabled +LinkedToAConciliatedTransaction=Linked to a conciliated entry +StatusAccountOpened=Open +StatusAccountClosed=Closed +AccountIdShort=Number +LineRecord=Transaction +AddBankRecord=Add entry +AddBankRecordLong=Add entry manually +Conciliated=Reconciled +ConciliatedBy=Reconciled by +DateConciliating=Reconcile date +BankLineConciliated=Entry reconciled with bank receipt +Reconciled=Reconciled +NotReconciled=Not reconciled +CustomerInvoicePayment=Customer payment +SupplierInvoicePayment=Vendor payment +SubscriptionPayment=Subscription payment +WithdrawalPayment=Debit payment order +SocialContributionPayment=Social/fiscal tax payment +BankTransfer=Bank transfer +BankTransfers=Bank transfers +MenuBankInternalTransfer=Internal transfer +TransferDesc=Transfer from one account to another, Dolibarr will write two records (a debit in source account and a credit in target account). The same amount (except sign), label and date will be used for this transaction) +TransferFrom=From +TransferTo=To +TransferFromToDone=A transfer from %s to %s of %s %s has been recorded. +CheckTransmitter=Transmitter +ValidateCheckReceipt=Validate this check receipt? +ConfirmValidateCheckReceipt=Are you sure you want to validate this check receipt, no change will be possible once this is done? +DeleteCheckReceipt=Delete this check receipt? +ConfirmDeleteCheckReceipt=Are you sure you want to delete this check receipt? +BankChecks=Bank checks +BankChecksToReceipt=Checks awaiting deposit +BankChecksToReceiptShort=Checks awaiting deposit +ShowCheckReceipt=Show check deposit receipt +NumberOfCheques=No. of check +DeleteTransaction=Delete entry +ConfirmDeleteTransaction=Are you sure you want to delete this entry? +ThisWillAlsoDeleteBankRecord=This will also delete generated bank entry +BankMovements=Movements +PlannedTransactions=Planned entries +Graph=Graphics +ExportDataset_banque_1=Bank entries and account statement +ExportDataset_banque_2=Deposit slip +TransactionOnTheOtherAccount=Transaction on the other account +PaymentNumberUpdateSucceeded=Payment number updated successfully +PaymentNumberUpdateFailed=Payment number could not be updated +PaymentDateUpdateSucceeded=Payment date updated successfully +PaymentDateUpdateFailed=Payment date could not be updated +Transactions=Transactions +BankTransactionLine=Bank entry +AllAccounts=All bank and cash accounts +BackToAccount=Back to account +ShowAllAccounts=Show for all accounts +FutureTransaction=Future transaction. Unable to reconcile. +SelectChequeTransactionAndGenerate=Select/filter checks to include in the check deposit receipt and click on "Create". +InputReceiptNumber=Choose the bank statement related with the conciliation. Use a sortable numeric value: YYYYMM or YYYYMMDD +EventualyAddCategory=Eventually, specify a category in which to classify the records +ToConciliate=To reconcile? +ThenCheckLinesAndConciliate=Then, check the lines present in the bank statement and click +DefaultRIB=Default BAN +AllRIB=All BAN +LabelRIB=BAN Label +NoBANRecord=No BAN record +DeleteARib=Delete BAN record +ConfirmDeleteRib=Are you sure you want to delete this BAN record? +RejectCheck=Check returned +ConfirmRejectCheck=Are you sure you want to mark this check as rejected? +RejectCheckDate=Date the check was returned +CheckRejected=Check returned +CheckRejectedAndInvoicesReopened=Check returned and invoices re-open +BankAccountModelModule=Document templates for bank accounts +DocumentModelSepaMandate=Template of SEPA mandate. Useful for European countries in EEC only. +DocumentModelBan=Template to print a page with BAN information. +NewVariousPayment=New miscellaneous payment +VariousPayment=Miscellaneous payment +VariousPayments=Miscellaneous payments +ShowVariousPayment=Show miscellaneous payment +AddVariousPayment=Add miscellaneous payment +SEPAMandate=SEPA mandate +YourSEPAMandate=Your SEPA mandate +FindYourSEPAMandate=This is your SEPA mandate to authorize our company to make direct debit order to your bank. Return it signed (scan of the signed document) or send it by mail to +AutoReportLastAccountStatement=Automatically fill the field 'number of bank statement' with last statement number when making reconciliation +CashControl=POS cash fence +NewCashFence=New cash fence +BankColorizeMovement=Colorize movements +BankColorizeMovementDesc=If this function is enable, you can choose specific background color for debit or credit movements +BankColorizeMovementName1=Background color for debit movement +BankColorizeMovementName2=Background color for credit movement diff --git a/htdocs/langs/am_ET/bills.lang b/htdocs/langs/am_ET/bills.lang new file mode 100644 index 00000000000..9f11d8ecf87 --- /dev/null +++ b/htdocs/langs/am_ET/bills.lang @@ -0,0 +1,574 @@ +# Dolibarr language file - Source file is en_US - bills +Bill=Invoice +Bills=Invoices +BillsCustomers=Customer invoices +BillsCustomer=Customer invoice +BillsSuppliers=Vendor invoices +BillsCustomersUnpaid=Unpaid customer invoices +BillsCustomersUnpaidForCompany=Unpaid customer invoices for %s +BillsSuppliersUnpaid=Unpaid vendor invoices +BillsSuppliersUnpaidForCompany=Unpaid vendors invoices for %s +BillsLate=Late payments +BillsStatistics=Customers invoices statistics +BillsStatisticsSuppliers=Vendors invoices statistics +DisabledBecauseDispatchedInBookkeeping=Disabled because invoice was dispatched into bookkeeping +DisabledBecauseNotLastInvoice=Disabled because invoice is not erasable. Some invoices were recorded after this one and it will create holes in the counter. +DisabledBecauseNotErasable=Disabled because cannot be erased +InvoiceStandard=Standard invoice +InvoiceStandardAsk=Standard invoice +InvoiceStandardDesc=This kind of invoice is the common invoice. +InvoiceDeposit=Down payment invoice +InvoiceDepositAsk=Down payment invoice +InvoiceDepositDesc=This kind of invoice is done when a down payment has been received. +InvoiceProForma=Proforma invoice +InvoiceProFormaAsk=Proforma invoice +InvoiceProFormaDesc=Proforma invoice is an image of a true invoice but has no accountancy value. +InvoiceReplacement=Replacement invoice +InvoiceReplacementAsk=Replacement invoice for invoice +InvoiceReplacementDesc=Replacement invoice is used to completely replace an invoice with no payment already received.

    Note: Only invoices with no payment on it can be replaced. If the invoice you replace is not yet closed, it will be automatically closed to 'abandoned'. +InvoiceAvoir=Credit note +InvoiceAvoirAsk=Credit note to correct invoice +InvoiceAvoirDesc=The credit note is a negative invoice used to correct the fact that an invoice shows an amount that differs from the amount actually paid (eg the customer paid too much by mistake, or will not pay the complete amount since some products were returned). +invoiceAvoirWithLines=Create Credit Note with lines from the origin invoice +invoiceAvoirWithPaymentRestAmount=Create Credit Note with remaining unpaid of origin invoice +invoiceAvoirLineWithPaymentRestAmount=Credit Note for remaining unpaid amount +ReplaceInvoice=Replace invoice %s +ReplacementInvoice=Replacement invoice +ReplacedByInvoice=Replaced by invoice %s +ReplacementByInvoice=Replaced by invoice +CorrectInvoice=Correct invoice %s +CorrectionInvoice=Correction invoice +UsedByInvoice=Used to pay invoice %s +ConsumedBy=Consumed by +NotConsumed=Not consumed +NoReplacableInvoice=No replaceable invoices +NoInvoiceToCorrect=No invoice to correct +InvoiceHasAvoir=Was source of one or several credit notes +CardBill=Invoice card +PredefinedInvoices=Predefined Invoices +Invoice=Invoice +PdfInvoiceTitle=Invoice +Invoices=Invoices +InvoiceLine=Invoice line +InvoiceCustomer=Customer invoice +CustomerInvoice=Customer invoice +CustomersInvoices=Customers invoices +SupplierInvoice=Vendor invoice +SuppliersInvoices=Vendors invoices +SupplierBill=Vendor invoice +SupplierBills=suppliers invoices +Payment=Payment +PaymentBack=Refund +CustomerInvoicePaymentBack=Refund +Payments=Payments +PaymentsBack=Refunds +paymentInInvoiceCurrency=in invoices currency +PaidBack=Paid back +DeletePayment=Delete payment +ConfirmDeletePayment=Are you sure you want to delete this payment? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? +ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? +ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. +SupplierPayments=Vendor payments +ReceivedPayments=Received payments +ReceivedCustomersPayments=Payments received from customers +PayedSuppliersPayments=Payments paid to vendors +ReceivedCustomersPaymentsToValid=Received customers payments to validate +PaymentsReportsForYear=Payments reports for %s +PaymentsReports=Payments reports +PaymentsAlreadyDone=Payments already done +PaymentsBackAlreadyDone=Refunds already done +PaymentRule=Payment rule +PaymentMode=Payment Type +PaymentTypeDC=Debit/Credit Card +PaymentTypePP=PayPal +IdPaymentMode=Payment Type (id) +CodePaymentMode=Payment Type (code) +LabelPaymentMode=Payment Type (label) +PaymentModeShort=Payment Type +PaymentTerm=Payment Term +PaymentConditions=Payment Terms +PaymentConditionsShort=Payment Terms +PaymentAmount=Payment amount +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' +ClassifyUnBilled=Classify 'Unbilled' +CreateBill=Create Invoice +CreateCreditNote=Create credit note +AddBill=Create invoice or credit note +AddToDraftInvoices=Add to draft invoice +DeleteBill=Delete invoice +SearchACustomerInvoice=Search for a customer invoice +SearchASupplierInvoice=Search for a vendor invoice +CancelBill=Cancel an invoice +SendRemindByMail=Send reminder by email +DoPayment=Enter payment +DoPaymentBack=Enter refund +ConvertToReduc=Mark as credit available +ConvertExcessReceivedToReduc=Convert excess received into available credit +ConvertExcessPaidToReduc=Convert excess paid into available discount +EnterPaymentReceivedFromCustomer=Enter payment received from customer +EnterPaymentDueToCustomer=Make payment due to customer +DisabledBecauseRemainderToPayIsZero=Disabled because remaining unpaid is zero +PriceBase=Price base +BillStatus=Invoice status +StatusOfGeneratedInvoices=Status of generated invoices +BillStatusDraft=Draft (needs to be validated) +BillStatusPaid=Paid +BillStatusPaidBackOrConverted=Credit note refund or marked as credit available +BillStatusConverted=Paid (ready for consumption in final invoice) +BillStatusCanceled=Abandoned +BillStatusValidated=Validated (needs to be paid) +BillStatusStarted=Started +BillStatusNotPaid=Not paid +BillStatusNotRefunded=Not refunded +BillStatusClosedUnpaid=Closed (unpaid) +BillStatusClosedPaidPartially=Paid (partially) +BillShortStatusDraft=Draft +BillShortStatusPaid=Paid +BillShortStatusPaidBackOrConverted=Refunded or converted +Refunded=Refunded +BillShortStatusConverted=Paid +BillShortStatusCanceled=Abandoned +BillShortStatusValidated=Validated +BillShortStatusStarted=Started +BillShortStatusNotPaid=Not paid +BillShortStatusNotRefunded=Not refunded +BillShortStatusClosedUnpaid=Closed +BillShortStatusClosedPaidPartially=Paid (partially) +PaymentStatusToValidShort=To validate +ErrorVATIntraNotConfigured=Intra-Community VAT number not yet defined +ErrorNoPaiementModeConfigured=No default payment type defined. Go to Invoice module setup to fix this. +ErrorCreateBankAccount=Create a bank account, then go to Setup panel of Invoice module to define payment types +ErrorBillNotFound=Invoice %s does not exist +ErrorInvoiceAlreadyReplaced=Error, you tried to validate an invoice to replace invoice %s. But this one has already been replaced by invoice %s. +ErrorDiscountAlreadyUsed=Error, discount already used +ErrorInvoiceAvoirMustBeNegative=Error, correct invoice must have a negative amount +ErrorInvoiceOfThisTypeMustBePositive=Error, this type of invoice must have an amount excluding tax positive (or null) +ErrorCantCancelIfReplacementInvoiceNotValidated=Error, can't cancel an invoice that has been replaced by another invoice that is still in draft status +ErrorThisPartOrAnotherIsAlreadyUsedSoDiscountSerieCantBeRemoved=This part or another is already used so discount series cannot be removed. +BillFrom=From +BillTo=To +ActionsOnBill=Actions on invoice +RecurringInvoiceTemplate=Template / Recurring invoice +NoQualifiedRecurringInvoiceTemplateFound=No recurring template invoice qualified for generation. +FoundXQualifiedRecurringInvoiceTemplate=Found %s recurring template invoice(s) qualified for generation. +NotARecurringInvoiceTemplate=Not a recurring template invoice +NewBill=New invoice +LastBills=Latest %s invoices +LatestTemplateInvoices=Latest %s template invoices +LatestCustomerTemplateInvoices=Latest %s customer template invoices +LatestSupplierTemplateInvoices=Latest %s vendor template invoices +LastCustomersBills=Latest %s customer invoices +LastSuppliersBills=Latest %s vendor invoices +AllBills=All invoices +AllCustomerTemplateInvoices=All template invoices +OtherBills=Other invoices +DraftBills=Draft invoices +CustomersDraftInvoices=Customer draft invoices +SuppliersDraftInvoices=Vendor draft invoices +Unpaid=Unpaid +ErrorNoPaymentDefined=Error No payment defined +ConfirmDeleteBill=Are you sure you want to delete this invoice? +ConfirmValidateBill=Are you sure you want to validate this invoice with reference %s? +ConfirmUnvalidateBill=Are you sure you want to change invoice %s to draft status? +ConfirmClassifyPaidBill=Are you sure you want to change invoice %s to status paid? +ConfirmCancelBill=Are you sure you want to cancel invoice %s? +ConfirmCancelBillQuestion=Why do you want to classify this invoice 'abandoned'? +ConfirmClassifyPaidPartially=Are you sure you want to change invoice %s to status paid? +ConfirmClassifyPaidPartiallyQuestion=This invoice has not been paid completely. What is the reason for closing this invoice? +ConfirmClassifyPaidPartiallyReasonAvoir=Remaining unpaid (%s %s) is a discount granted because payment was made before term. I regularize the VAT with a credit note. +ConfirmClassifyPaidPartiallyReasonDiscount=Remaining unpaid (%s %s) is a discount granted because payment was made before term. +ConfirmClassifyPaidPartiallyReasonDiscountNoVat=Remaining unpaid (%s %s) is a discount granted because payment was made before term. I accept to lose the VAT on this discount. +ConfirmClassifyPaidPartiallyReasonDiscountVat=Remaining unpaid (%s %s) is a discount granted because payment was made before term. I recover the VAT on this discount without a credit note. +ConfirmClassifyPaidPartiallyReasonBadCustomer=Bad customer +ConfirmClassifyPaidPartiallyReasonProductReturned=Products partially returned +ConfirmClassifyPaidPartiallyReasonOther=Amount abandoned for other reason +ConfirmClassifyPaidPartiallyReasonDiscountNoVatDesc=This choice is possible if your invoice has been provided with suitable comments. (Example «Only the tax corresponding to the price that has been actually paid gives rights to deduction») +ConfirmClassifyPaidPartiallyReasonDiscountVatDesc=In some countries, this choice might be possible only if your invoice contains correct notes. +ConfirmClassifyPaidPartiallyReasonAvoirDesc=Use this choice if all other does not suit +ConfirmClassifyPaidPartiallyReasonBadCustomerDesc=A bad customer is a customer that refuses to pay his debt. +ConfirmClassifyPaidPartiallyReasonProductReturnedDesc=This choice is used when payment is not complete because some of products were returned +ConfirmClassifyPaidPartiallyReasonOtherDesc=Use this choice if all others are not suitable, for example in following situation:
    - payment not complete because some products were shipped back
    - amount claimed too important because a discount was forgotten
    In all cases, amount over-claimed must be corrected in accountancy system by creating a credit note. +ConfirmClassifyAbandonReasonOther=Other +ConfirmClassifyAbandonReasonOtherDesc=This choice will be used in all other cases. For example because you plan to create a replacing invoice. +ConfirmCustomerPayment=Do you confirm this payment input for %s %s? +ConfirmSupplierPayment=Do you confirm this payment input for %s %s? +ConfirmValidatePayment=Are you sure you want to validate this payment? No change can be made once payment is validated. +ValidateBill=Validate invoice +UnvalidateBill=Unvalidate invoice +NumberOfBills=No. of invoices +NumberOfBillsByMonth=No. of invoices per month +AmountOfBills=Amount of invoices +AmountOfBillsHT=Amount of invoices (net of tax) +AmountOfBillsByMonthHT=Amount of invoices by month (net of tax) +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices +RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation +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 +AlreadyPaid=Already paid +AlreadyPaidBack=Already paid back +AlreadyPaidNoCreditNotesNoDeposits=Already paid (without credit notes and down payments) +Abandoned=Abandoned +RemainderToPay=Remaining unpaid +RemainderToTake=Remaining amount to take +RemainderToPayBack=Remaining amount to refund +Rest=Pending +AmountExpected=Amount claimed +ExcessReceived=Excess received +ExcessPaid=Excess paid +EscompteOffered=Discount offered (payment before term) +EscompteOfferedShort=Discount +SendBillRef=Submission of invoice %s +SendReminderBillRef=Submission of invoice %s (reminder) +StandingOrders=Direct debit orders +StandingOrder=Direct debit order +NoDraftBills=No draft invoices +NoOtherDraftBills=No other draft invoices +NoDraftInvoices=No draft invoices +RefBill=Invoice ref +ToBill=To bill +RemainderToBill=Remainder to bill +SendBillByMail=Send invoice by email +SendReminderBillByMail=Send reminder by email +RelatedCommercialProposals=Related commercial proposals +RelatedRecurringCustomerInvoices=Related recurring customer invoices +MenuToValid=To valid +DateMaxPayment=Payment due on +DateInvoice=Invoice date +DatePointOfTax=Point of tax +NoInvoice=No invoice +ClassifyBill=Classify invoice +SupplierBillsToPay=Unpaid vendor invoices +CustomerBillsUnpaid=Unpaid customer invoices +NonPercuRecuperable=Non-recoverable +SetConditions=Set Payment Terms +SetMode=Set Payment Type +SetRevenuStamp=Set revenue stamp +Billed=Billed +RecurringInvoices=Recurring invoices +RepeatableInvoice=Template invoice +RepeatableInvoices=Template invoices +Repeatable=Template +Repeatables=Templates +ChangeIntoRepeatableInvoice=Convert into template invoice +CreateRepeatableInvoice=Create template invoice +CreateFromRepeatableInvoice=Create from template invoice +CustomersInvoicesAndInvoiceLines=Customer invoices and invoice details +CustomersInvoicesAndPayments=Customer invoices and payments +ExportDataset_invoice_1=Customer invoices and invoice details +ExportDataset_invoice_2=Customer invoices and payments +ProformaBill=Proforma Bill: +Reduction=Reduction +ReductionShort=Disc. +Reductions=Reductions +ReductionsShort=Disc. +Discounts=Discounts +AddDiscount=Create discount +AddRelativeDiscount=Create relative discount +EditRelativeDiscount=Edit relative discount +AddGlobalDiscount=Create absolute discount +EditGlobalDiscounts=Edit absolute discounts +AddCreditNote=Create credit note +ShowDiscount=Show discount +ShowReduc=Show the discount +ShowSourceInvoice=Show the source invoice +RelativeDiscount=Relative discount +GlobalDiscount=Global discount +CreditNote=Credit note +CreditNotes=Credit notes +CreditNotesOrExcessReceived=Credit notes or excess received +Deposit=Down payment +Deposits=Down payments +DiscountFromCreditNote=Discount from credit note %s +DiscountFromDeposit=Down payments from invoice %s +DiscountFromExcessReceived=Payments in excess of invoice %s +DiscountFromExcessPaid=Payments in excess of invoice %s +AbsoluteDiscountUse=This kind of credit can be used on invoice before its validation +CreditNoteDepositUse=Invoice must be validated to use this kind of credits +NewGlobalDiscount=New absolute discount +NewRelativeDiscount=New relative discount +DiscountType=Discount type +NoteReason=Note/Reason +ReasonDiscount=Reason +DiscountOfferedBy=Granted by +DiscountStillRemaining=Discounts or credits available +DiscountAlreadyCounted=Discounts or credits already consumed +CustomerDiscounts=Customer discounts +SupplierDiscounts=Vendors discounts +BillAddress=Bill address +HelpEscompte=This discount is a discount granted to customer because payment was made before term. +HelpAbandonBadCustomer=This amount has been abandoned (customer said to be a bad customer) and is considered as an exceptional loss. +HelpAbandonOther=This amount has been abandoned since it was an error (wrong customer or invoice replaced by another for example) +IdSocialContribution=Social/fiscal tax payment id +PaymentId=Payment id +PaymentRef=Payment ref. +InvoiceId=Invoice id +InvoiceRef=Invoice ref. +InvoiceDateCreation=Invoice creation date +InvoiceStatus=Invoice status +InvoiceNote=Invoice note +InvoicePaid=Invoice paid +InvoicePaidCompletely=Paid completely +InvoicePaidCompletelyHelp=Invoice that are paid completely. This excludes invoices that are paid partially. To get list of all 'Closed' or non 'Closed' invoices, prefer to use a filter on the invoice status. +OrderBilled=Order billed +DonationPaid=Donation paid +PaymentNumber=Payment number +RemoveDiscount=Remove discount +WatermarkOnDraftBill=Watermark on draft invoices (nothing if empty) +InvoiceNotChecked=No invoice selected +ConfirmCloneInvoice=Are you sure you want to clone this invoice %s? +DisabledBecauseReplacedInvoice=Action disabled because invoice has been replaced +DescTaxAndDividendsArea=This area presents a summary of all payments made for special expenses. Only records with payments during the fixed year are included here. +NbOfPayments=No. of payments +SplitDiscount=Split discount in two +ConfirmSplitDiscount=Are you sure you want to split this discount of %s %s into two smaller discounts? +TypeAmountOfEachNewDiscount=Input amount for each of two parts: +TotalOfTwoDiscountMustEqualsOriginal=The total of the two new discounts must be equal to the original discount amount. +ConfirmRemoveDiscount=Are you sure you want to remove this discount? +RelatedBill=Related invoice +RelatedBills=Related invoices +RelatedCustomerInvoices=Related customer invoices +RelatedSupplierInvoices=Related vendor invoices +LatestRelatedBill=Latest related invoice +WarningBillExist=Warning, one or more invoices already exist +MergingPDFTool=Merging PDF tool +AmountPaymentDistributedOnInvoice=Payment amount distributed on invoice +PaymentOnDifferentThirdBills=Allow payments on different third parties bills but same parent company +PaymentNote=Payment note +ListOfPreviousSituationInvoices=List of previous situation invoices +ListOfNextSituationInvoices=List of next situation invoices +ListOfSituationInvoices=List of situation invoices +CurrentSituationTotal=Total current situation +DisabledBecauseNotEnouthCreditNote=To remove a situation invoice from cycle, this invoice's credit note total must cover this invoice total +RemoveSituationFromCycle=Remove this invoice from cycle +ConfirmRemoveSituationFromCycle=Remove this invoice %s from cycle ? +ConfirmOuting=Confirm outing +FrequencyPer_d=Every %s days +FrequencyPer_m=Every %s months +FrequencyPer_y=Every %s years +FrequencyUnit=Frequency unit +toolTipFrequency=Examples:
    Set 7, Day: give a new invoice every 7 days
    Set 3, Month: give a new invoice every 3 month +NextDateToExecution=Date for next invoice generation +NextDateToExecutionShort=Date next gen. +DateLastGeneration=Date of latest generation +DateLastGenerationShort=Date latest gen. +MaxPeriodNumber=Max. number of invoice generation +NbOfGenerationDone=Number of invoice generation already done +NbOfGenerationDoneShort=Number of generation done +MaxGenerationReached=Maximum number of generations reached +InvoiceAutoValidate=Validate invoices automatically +GeneratedFromRecurringInvoice=Generated from template recurring invoice %s +DateIsNotEnough=Date not reached yet +InvoiceGeneratedFromTemplate=Invoice %s generated from recurring template invoice %s +GeneratedFromTemplate=Generated from template invoice %s +WarningInvoiceDateInFuture=Warning, the invoice date is higher than current date +WarningInvoiceDateTooFarInFuture=Warning, the invoice date is too far from current date +ViewAvailableGlobalDiscounts=View available discounts +GroupPaymentsByModOnReports=Group payments by mode on reports +# PaymentConditions +Statut=Status +PaymentConditionShortRECEP=Due Upon Receipt +PaymentConditionRECEP=Due Upon Receipt +PaymentConditionShort30D=30 days +PaymentCondition30D=30 days +PaymentConditionShort30DENDMONTH=30 days of month-end +PaymentCondition30DENDMONTH=Within 30 days following the end of the month +PaymentConditionShort60D=60 days +PaymentCondition60D=60 days +PaymentConditionShort60DENDMONTH=60 days of month-end +PaymentCondition60DENDMONTH=Within 60 days following the end of the month +PaymentConditionShortPT_DELIVERY=Delivery +PaymentConditionPT_DELIVERY=On delivery +PaymentConditionShortPT_ORDER=Order +PaymentConditionPT_ORDER=On order +PaymentConditionShortPT_5050=50-50 +PaymentConditionPT_5050=50%% in advance, 50%% on delivery +PaymentConditionShort10D=10 days +PaymentCondition10D=10 days +PaymentConditionShort10DENDMONTH=10 days of month-end +PaymentCondition10DENDMONTH=Within 10 days following the end of the month +PaymentConditionShort14D=14 days +PaymentCondition14D=14 days +PaymentConditionShort14DENDMONTH=14 days of month-end +PaymentCondition14DENDMONTH=Within 14 days following the end of the month +FixAmount=Fixed amount - 1 line with label '%s' +VarAmount=Variable amount (%% tot.) +VarAmountOneLine=Variable amount (%% tot.) - 1 line with label '%s' +VarAmountAllLines=Variable amount (%% tot.) - all same lines +# PaymentType +PaymentTypeVIR=Bank transfer +PaymentTypeShortVIR=Bank transfer +PaymentTypePRE=Direct debit payment order +PaymentTypeShortPRE=Debit payment order +PaymentTypeLIQ=Cash +PaymentTypeShortLIQ=Cash +PaymentTypeCB=Credit card +PaymentTypeShortCB=Credit card +PaymentTypeCHQ=Check +PaymentTypeShortCHQ=Check +PaymentTypeTIP=TIP (Documents against Payment) +PaymentTypeShortTIP=TIP Payment +PaymentTypeVAD=Online payment +PaymentTypeShortVAD=Online payment +PaymentTypeTRA=Bank draft +PaymentTypeShortTRA=Draft +PaymentTypeFAC=Factor +PaymentTypeShortFAC=Factor +BankDetails=Bank details +BankCode=Bank code +DeskCode=Branch code +BankAccountNumber=Account number +BankAccountNumberKey=Checksum +Residence=Address +IBANNumber=IBAN account number +IBAN=IBAN +BIC=BIC/SWIFT +BICNumber=BIC/SWIFT code +ExtraInfos=Extra infos +RegulatedOn=Regulated on +ChequeNumber=Check N° +ChequeOrTransferNumber=Check/Transfer N° +ChequeBordereau=Check schedule +ChequeMaker=Check/Transfer transmitter +ChequeBank=Bank of Check +CheckBank=Check +NetToBePaid=Net to be paid +PhoneNumber=Tel +FullPhoneNumber=Telephone +TeleFax=Fax +PrettyLittleSentence=Accept the amount of payments due by checks issued in my name as a Member of an accounting association approved by the Fiscal Administration. +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=sent to +PaymentByTransferOnThisBankAccount=Payment by transfer to the following bank account +VATIsNotUsedForInvoice=* Non applicable VAT art-293B of CGI +LawApplicationPart1=By application of the law 80.335 of 12/05/80 +LawApplicationPart2=the goods remain the property of +LawApplicationPart3=the seller until full payment of +LawApplicationPart4=their price. +LimitedLiabilityCompanyCapital=SARL with Capital of +UseLine=Apply +UseDiscount=Use discount +UseCredit=Use credit +UseCreditNoteInInvoicePayment=Reduce amount to pay with this credit +MenuChequeDeposits=Check Deposits +MenuCheques=Checks +MenuChequesReceipts=Check receipts +NewChequeDeposit=New deposit +ChequesReceipts=Check receipts +ChequesArea=Check deposits area +ChequeDeposits=Check deposits +Cheques=Checks +DepositId=Id deposit +NbCheque=Number of checks +CreditNoteConvertedIntoDiscount=This %s has been converted into %s +UsBillingContactAsIncoiveRecipientIfExist=Use contact/address with type 'billing contact' instead of third-party address as recipient for invoices +ShowUnpaidAll=Show all unpaid invoices +ShowUnpaidLateOnly=Show late unpaid invoices only +PaymentInvoiceRef=Payment invoice %s +ValidateInvoice=Validate invoice +ValidateInvoices=Validate invoices +Cash=Cash +Reported=Delayed +DisabledBecausePayments=Not possible since there are some payments +CantRemovePaymentWithOneInvoicePaid=Can't remove payment since there is at least one invoice classified paid +ExpectedToPay=Expected payment +CantRemoveConciliatedPayment=Can't remove reconciled payment +PayedByThisPayment=Paid by this payment +ClosePaidInvoicesAutomatically=Classify automatically all standard, down payment or replacement invoices as "Paid" when payment is done entirely. +ClosePaidCreditNotesAutomatically=Classify automatically all credit notes as "Paid" when refund is done entirely. +ClosePaidContributionsAutomatically=Classify automatically all social or fiscal contributions as "Paid" when payment is done entirely. +AllCompletelyPayedInvoiceWillBeClosed=All invoices with no remainder to pay will be automatically closed with status "Paid". +ToMakePayment=Pay +ToMakePaymentBack=Pay back +ListOfYourUnpaidInvoices=List of unpaid invoices +NoteListOfYourUnpaidInvoices=Note: This list contains only invoices for third parties you are linked to as a sale representative. +RevenueStamp=Tax stamp +YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party +YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party +YouMustCreateStandardInvoiceFirstDesc=You have to create a standard invoice first and convert it to "template" to create a new template invoice +PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template (old implementation of Sponge template) +PDFSpongeDescription=Invoice PDF template Sponge. A complete invoice template +PDFCrevetteDescription=Invoice PDF template Crevette. A complete invoice template for situation invoices +TerreNumRefModelDesc1=Return number with format %syymm-nnnn for standard invoices and %syymm-nnnn for credit notes where yy is year, mm is month and nnnn is a sequence with no break and no return to 0 +MarsNumRefModelDesc1=Return number with format %syymm-nnnn for standard invoices, %syymm-nnnn for replacement invoices, %syymm-nnnn for down payment invoices and %syymm-nnnn for credit notes where yy is year, mm is month and nnnn is a sequence with no break and no return to 0 +TerreNumRefModelError=A bill starting with $syymm already exists and is not compatible with this model of sequence. Remove it or rename it to activate this module. +CactusNumRefModelDesc1=Return number with format %syymm-nnnn for standard invoices, %syymm-nnnn for credit notes and %syymm-nnnn for down payment invoices where yy is year, mm is month and nnnn is a sequence with no break and no return to 0 +EarlyClosingReason=Early closing reason +EarlyClosingComment=Early closing note +##### Types de contacts ##### +TypeContact_facture_internal_SALESREPFOLL=Representative following-up customer invoice +TypeContact_facture_external_BILLING=Customer invoice contact +TypeContact_facture_external_SHIPPING=Customer shipping contact +TypeContact_facture_external_SERVICE=Customer service contact +TypeContact_invoice_supplier_internal_SALESREPFOLL=Representative following-up vendor invoice +TypeContact_invoice_supplier_external_BILLING=Vendor invoice contact +TypeContact_invoice_supplier_external_SHIPPING=Vendor shipping contact +TypeContact_invoice_supplier_external_SERVICE=Vendor service contact +# Situation invoices +InvoiceFirstSituationAsk=First situation invoice +InvoiceFirstSituationDesc=The situation invoices are tied to situations related to a progression, for example the progression of a construction. Each situation is tied to an invoice. +InvoiceSituation=Situation invoice +InvoiceSituationAsk=Invoice following the situation +InvoiceSituationDesc=Create a new situation following an already existing one +SituationAmount=Situation invoice amount(net) +SituationDeduction=Situation subtraction +ModifyAllLines=Modify all lines +CreateNextSituationInvoice=Create next situation +ErrorFindNextSituationInvoice=Error unable to find next situation cycle ref +ErrorOutingSituationInvoiceOnUpdate=Unable to outing this situation invoice. +ErrorOutingSituationInvoiceCreditNote=Unable to outing linked credit note. +NotLastInCycle=This invoice is not the latest in cycle and must not be modified. +DisabledBecauseNotLastInCycle=The next situation already exists. +DisabledBecauseFinal=This situation is final. +situationInvoiceShortcode_AS=AS +situationInvoiceShortcode_S=S +CantBeLessThanMinPercent=The progress can't be smaller than its value in the previous situation. +NoSituations=No open situations +InvoiceSituationLast=Final and general invoice +PDFCrevetteSituationNumber=Situation N°%s +PDFCrevetteSituationInvoiceLineDecompte=Situation invoice - COUNT +PDFCrevetteSituationInvoiceTitle=Situation invoice +PDFCrevetteSituationInvoiceLine=Situation N°%s: Inv. N°%s on %s +TotalSituationInvoice=Total situation +invoiceLineProgressError=Invoice line progress can't be greater than or equal to the next invoice line +updatePriceNextInvoiceErrorUpdateline=Error: update price on invoice line: %s +ToCreateARecurringInvoice=To create a recurring invoice for this contract, first create this draft invoice, then convert it into an invoice template and define the frequency for generation of future invoices. +ToCreateARecurringInvoiceGene=To generate future invoices regularly and manually, just go on menu %s - %s - %s. +ToCreateARecurringInvoiceGeneAuto=If you need to have such invoices generated automatically, ask your administrator to enable and setup module %s. Note that both methods (manual and automatic) can be used together with no risk of duplication. +DeleteRepeatableInvoice=Delete template invoice +ConfirmDeleteRepeatableInvoice=Are your sure you want to delete the template invoice? +CreateOneBillByThird=Create one invoice per third party (otherwise, one invoice per order) +BillCreated=%s bill(s) created +StatusOfGeneratedDocuments=Status of document generation +DoNotGenerateDoc=Do not generate document file +AutogenerateDoc=Auto generate document file +AutoFillDateFrom=Set start date for service line with invoice date +AutoFillDateFromShort=Set start date +AutoFillDateTo=Set end date for service line with next invoice date +AutoFillDateToShort=Set end date +MaxNumberOfGenerationReached=Max number of gen. reached +BILL_DELETEInDolibarr=Invoice deleted +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/am_ET/blockedlog.lang b/htdocs/langs/am_ET/blockedlog.lang new file mode 100644 index 00000000000..5afae6e9e53 --- /dev/null +++ b/htdocs/langs/am_ET/blockedlog.lang @@ -0,0 +1,54 @@ +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). +CompanyInitialKey=Company initial key (hash of genesis block) +BrowseBlockedLog=Unalterable logs +ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) +ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) +DownloadBlockChain=Download fingerprints +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). +OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. +OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. +AddedByAuthority=Stored into remote authority +NotAddedByAuthorityYet=Not yet stored into remote authority +ShowDetails=Show stored details +logPAYMENT_VARIOUS_CREATE=Payment (not assigned to an invoice) created +logPAYMENT_VARIOUS_MODIFY=Payment (not assigned to an invoice) modified +logPAYMENT_VARIOUS_DELETE=Payment (not assigned to an invoice) logical deletion +logPAYMENT_ADD_TO_BANK=Payment added to bank +logPAYMENT_CUSTOMER_CREATE=Customer payment created +logPAYMENT_CUSTOMER_DELETE=Customer payment logical deletion +logDONATION_PAYMENT_CREATE=Donation payment created +logDONATION_PAYMENT_DELETE=Donation payment logical deletion +logBILL_PAYED=Customer invoice paid +logBILL_UNPAYED=Customer invoice set unpaid +logBILL_VALIDATE=Customer invoice validated +logBILL_SENTBYMAIL=Customer invoice send by mail +logBILL_DELETE=Customer invoice logically deleted +logMODULE_RESET=Module BlockedLog was disabled +logMODULE_SET=Module BlockedLog was enabled +logDON_VALIDATE=Donation validated +logDON_MODIFY=Donation modified +logDON_DELETE=Donation logical deletion +logMEMBER_SUBSCRIPTION_CREATE=Member subscription created +logMEMBER_SUBSCRIPTION_MODIFY=Member subscription modified +logMEMBER_SUBSCRIPTION_DELETE=Member subscription logical deletion +logCASHCONTROL_VALIDATE=Cash fence recording +BlockedLogBillDownload=Customer invoice download +BlockedLogBillPreview=Customer invoice preview +BlockedlogInfoDialog=Log Details +ListOfTrackedEvents=List of tracked events +Fingerprint=Fingerprint +DownloadLogCSV=Export archived logs (CSV) +logDOC_PREVIEW=Preview of a validated document in order to print or download +logDOC_DOWNLOAD=Download of a validated document in order to print or send +DataOfArchivedEvent=Full datas of archived event +ImpossibleToReloadObject=Original object (type %s, id %s) not linked (see 'Full datas' column to get unalterable saved data) +BlockedLogAreRequiredByYourCountryLegislation=Unalterable Logs module may be required by the legislation of your country. Disabling this module may render any future transactions invalid with respect to the law and the use of legal software as they can not be validated by a tax audit. +BlockedLogActivatedBecauseRequiredByYourCountryLegislation=Unalterable Logs module was activated because of the legislation of your country. Disabling this module may render any future transactions invalid with respect to the law and the use of legal software as they cannot be validated by a tax audit. +BlockedLogDisableNotAllowedForCountry=List of countries where usage of this module is mandatory (just to prevent to disable the module by error, if your country is in this list, disable of module is not possible without editing this list first. Note also that enabling/disabling this module will keep a track into the unalterable log). +OnlyNonValid=Non-valid +TooManyRecordToScanRestrictFilters=Too many records to scan/analyze. Please restrict list with more restrictive filters. +RestrictYearToExport=Restrict month / year to export diff --git a/htdocs/langs/am_ET/bookmarks.lang b/htdocs/langs/am_ET/bookmarks.lang new file mode 100644 index 00000000000..87466cadcfa --- /dev/null +++ b/htdocs/langs/am_ET/bookmarks.lang @@ -0,0 +1,21 @@ +# Dolibarr language file - Source file is en_US - marque pages +AddThisPageToBookmarks=Add current page to bookmarks +Bookmark=Bookmark +Bookmarks=Bookmarks +ListOfBookmarks=List of bookmarks +EditBookmarks=List/edit bookmarks +NewBookmark=New bookmark +ShowBookmark=Show bookmark +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=Create bookmark +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=Bookmarks management +BookmarksMenuShortCut=Ctrl + shift + m diff --git a/htdocs/langs/am_ET/boxes.lang b/htdocs/langs/am_ET/boxes.lang new file mode 100644 index 00000000000..bd62684421a --- /dev/null +++ b/htdocs/langs/am_ET/boxes.lang @@ -0,0 +1,102 @@ +# Dolibarr language file - Source file is en_US - boxes +BoxLoginInformation=Login Information +BoxLastRssInfos=RSS Information +BoxLastProducts=Latest %s Products/Services +BoxProductsAlertStock=Stock alerts for products +BoxLastProductsInContract=Latest %s contracted products/services +BoxLastSupplierBills=Latest Vendor invoices +BoxLastCustomerBills=Latest Customer invoices +BoxOldestUnpaidCustomerBills=Oldest unpaid customer invoices +BoxOldestUnpaidSupplierBills=Oldest unpaid vendor invoices +BoxLastProposals=Latest commercial proposals +BoxLastProspects=Latest modified prospects +BoxLastCustomers=Latest modified customers +BoxLastSuppliers=Latest modified suppliers +BoxLastCustomerOrders=Latest sales orders +BoxLastActions=Latest actions +BoxLastContracts=Latest contracts +BoxLastContacts=Latest contacts/addresses +BoxLastMembers=Latest members +BoxFicheInter=Latest interventions +BoxCurrentAccounts=Open accounts balance +BoxTitleMemberNextBirthdays=Birthdays of this month (members) +BoxTitleLastRssInfos=Latest %s news from %s +BoxTitleLastProducts=Products/Services: last %s modified +BoxTitleProductsAlertStock=Products: stock alert +BoxTitleLastSuppliers=Latest %s recorded suppliers +BoxTitleLastModifiedSuppliers=Vendors: last %s modified +BoxTitleLastModifiedCustomers=Customers: last %s modified +BoxTitleLastCustomersOrProspects=Latest %s customers or prospects +BoxTitleLastCustomerBills=Latest %s modified Customer invoices +BoxTitleLastSupplierBills=Latest %s modified Vendor invoices +BoxTitleLastModifiedProspects=Prospects: last %s modified +BoxTitleLastModifiedMembers=Latest %s members +BoxTitleLastFicheInter=Latest %s modified interventions +BoxTitleOldestUnpaidCustomerBills=Customer Invoices: oldest %s unpaid +BoxTitleOldestUnpaidSupplierBills=Vendor Invoices: oldest %s unpaid +BoxTitleCurrentAccounts=Open Accounts: balances +BoxTitleSupplierOrdersAwaitingReception=Supplier orders awaiting reception +BoxTitleLastModifiedContacts=Contacts/Addresses: last %s modified +BoxMyLastBookmarks=Bookmarks: latest %s +BoxOldestExpiredServices=Oldest active expired services +BoxLastExpiredServices=Latest %s oldest contacts with active expired services +BoxTitleLastActionsToDo=Latest %s actions to do +BoxTitleLastContracts=Latest %s modified contracts +BoxTitleLastModifiedDonations=Latest %s modified donations +BoxTitleLastModifiedExpenses=Latest %s modified expense reports +BoxTitleLatestModifiedBoms=Latest %s modified BOMs +BoxTitleLatestModifiedMos=Latest %s modified Manufacturing Orders +BoxGlobalActivity=Global activity (invoices, proposals, orders) +BoxGoodCustomers=Good customers +BoxTitleGoodCustomers=%s Good customers +FailedToRefreshDataInfoNotUpToDate=Failed to refresh RSS flux. Latest successful refresh date: %s +LastRefreshDate=Latest refresh date +NoRecordedBookmarks=No bookmarks defined. +ClickToAdd=Click here to add. +NoRecordedCustomers=No recorded customers +NoRecordedContacts=No recorded contacts +NoActionsToDo=No actions to do +NoRecordedOrders=No recorded sales orders +NoRecordedProposals=No recorded proposals +NoRecordedInvoices=No recorded customer invoices +NoUnpaidCustomerBills=No unpaid customer invoices +NoUnpaidSupplierBills=No unpaid vendor invoices +NoModifiedSupplierBills=No recorded vendor invoices +NoRecordedProducts=No recorded products/services +NoRecordedProspects=No recorded prospects +NoContractedProducts=No products/services contracted +NoRecordedContracts=No recorded contracts +NoRecordedInterventions=No recorded interventions +BoxLatestSupplierOrders=Latest purchase orders +BoxLatestSupplierOrdersAwaitingReception=Latest Purchase Orders (with a pending reception) +NoSupplierOrder=No recorded purchase order +BoxCustomersInvoicesPerMonth=Customer Invoices per month +BoxSuppliersInvoicesPerMonth=Vendor Invoices per month +BoxCustomersOrdersPerMonth=Sales Orders per month +BoxSuppliersOrdersPerMonth=Vendor Orders per month +BoxProposalsPerMonth=Proposals per month +NoTooLowStockProducts=No products are under the low stock limit +BoxProductDistribution=Products/Services Distribution +ForObject=On %s +BoxTitleLastModifiedSupplierBills=Vendor Invoices: last %s modified +BoxTitleLatestModifiedSupplierOrders=Vendor Orders: last %s modified +BoxTitleLastModifiedCustomerBills=Customer Invoices: last %s modified +BoxTitleLastModifiedCustomerOrders=Sales Orders: last %s modified +BoxTitleLastModifiedPropals=Latest %s modified proposals +ForCustomersInvoices=Customers invoices +ForCustomersOrders=Customers orders +ForProposals=Proposals +LastXMonthRolling=The latest %s month rolling +ChooseBoxToAdd=Add widget to your dashboard +BoxAdded=Widget was added in your dashboard +BoxTitleUserBirthdaysOfMonth=Birthdays of this month (users) +BoxLastManualEntries=Last manual entries in accountancy +BoxTitleLastManualEntries=%s latest manual entries +NoRecordedManualEntries=No manual entries record in accountancy +BoxSuspenseAccount=Count accountancy operation with suspense account +BoxTitleSuspenseAccount=Number of unallocated lines +NumberOfLinesInSuspenseAccount=Number of line in suspense account +SuspenseAccountNotDefined=Suspense account isn't defined +BoxLastCustomerShipments=Last customer shipments +BoxTitleLastCustomerShipments=Latest %s customer shipments +NoRecordedShipments=No recorded customer shipment diff --git a/htdocs/langs/am_ET/cashdesk.lang b/htdocs/langs/am_ET/cashdesk.lang new file mode 100644 index 00000000000..0903a3d10bc --- /dev/null +++ b/htdocs/langs/am_ET/cashdesk.lang @@ -0,0 +1,110 @@ +# Language file - Source file is en_US - cashdesk +CashDeskMenu=Point of sale +CashDesk=Point of sale +CashDeskBankCash=Bank account (cash) +CashDeskBankCB=Bank account (card) +CashDeskBankCheque=Bank account (cheque) +CashDeskWarehouse=Warehouse +CashdeskShowServices=Selling services +CashDeskProducts=Products +CashDeskStock=Stock +CashDeskOn=on +CashDeskThirdParty=Third party +ShoppingCart=Shopping cart +NewSell=New sell +AddThisArticle=Add this article +RestartSelling=Go back on sell +SellFinished=Sale complete +PrintTicket=Print ticket +SendTicket=Send ticket +NoProductFound=No article found +ProductFound=product found +NoArticle=No article +Identification=Identification +Article=Article +Difference=Difference +TotalTicket=Total ticket +NoVAT=No VAT for this sale +Change=Excess received +BankToPay=Account for payment +ShowCompany=Show company +ShowStock=Show warehouse +DeleteArticle=Click to remove this article +FilterRefOrLabelOrBC=Search (Ref/Label) +UserNeedPermissionToEditStockToUsePos=You ask to decrease stock on invoice creation, so user that uses POS needs to have permission to edit stock. +DolibarrReceiptPrinter=Dolibarr Receipt Printer +PointOfSale=Point of Sale +PointOfSaleShort=POS +CloseBill=Close Bill +Floors=Floors +Floor=Floor +AddTable=Add table +Place=Place +TakeposConnectorNecesary='TakePOS Connector' required +OrderPrinters=Order printers +SearchProduct=Search product +Receipt=Receipt +Header=Header +Footer=Footer +AmountAtEndOfPeriod=Amount at end of period (day, month or year) +TheoricalAmount=Theorical amount +RealAmount=Real amount +CashFence=Cash fence +CashFenceDone=Cash fence done for the period +NbOfInvoices=Nb of invoices +Paymentnumpad=Type of Pad to enter payment +Numberspad=Numbers Pad +BillsCoinsPad=Coins and banknotes Pad +DolistorePosCategory=TakePOS modules and other POS solutions for Dolibarr +TakeposNeedsCategories=TakePOS needs product categories to work +OrderNotes=Order Notes +CashDeskBankAccountFor=Default account to use for payments in +NoPaimementModesDefined=No paiment mode defined in TakePOS configuration +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts +EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant +ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? +ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? +History=History +ValidateAndClose=Validate and close +Terminal=Terminal +NumberOfTerminals=Number of Terminals +TerminalSelect=Select terminal you want to use: +POSTicket=POS Ticket +POSTerminal=POS Terminal +POSModule=POS Module +BasicPhoneLayout=Use basic layout for phones +SetupOfTerminalNotComplete=Setup of terminal %s is not complete +DirectPayment=Direct payment +DirectPaymentButton=Direct cash payment button +InvoiceIsAlreadyValidated=Invoice is already validated +NoLinesToBill=No lines to bill +CustomReceipt=Custom Receipt +ReceiptName=Receipt Name +ProductSupplements=Product Supplements +SupplementCategory=Supplement category +ColorTheme=Color theme +Colorful=Colorful +HeadBar=Head Bar +SortProductField=Field for sorting products +Browser=Browser +BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. +PrintMethod=Print method +ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. +ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for POS sales +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use +BarRestaurant=Bar Restaurant +AutoOrder=Customer auto order diff --git a/htdocs/langs/am_ET/categories.lang b/htdocs/langs/am_ET/categories.lang new file mode 100644 index 00000000000..30bace0574c --- /dev/null +++ b/htdocs/langs/am_ET/categories.lang @@ -0,0 +1,89 @@ +# Dolibarr language file - Source file is en_US - categories +Rubrique=Tag/Category +Rubriques=Tags/Categories +RubriquesTransactions=Tags/Categories of transactions +categories=tags/categories +NoCategoryYet=No tag/category of this type created +In=In +AddIn=Add in +modify=modify +Classify=Classify +CategoriesArea=Tags/Categories area +ProductsCategoriesArea=Products/Services tags/categories area +SuppliersCategoriesArea=Vendors tags/categories area +CustomersCategoriesArea=Customers tags/categories area +MembersCategoriesArea=Members tags/categories area +ContactsCategoriesArea=Contacts tags/categories area +AccountsCategoriesArea=Accounts tags/categories area +ProjectsCategoriesArea=Projects tags/categories area +UsersCategoriesArea=Users tags/categories area +SubCats=Sub-categories +CatList=List of tags/categories +NewCategory=New tag/category +ModifCat=Modify tag/category +CatCreated=Tag/category created +CreateCat=Create tag/category +CreateThisCat=Create this tag/category +NoSubCat=No subcategory. +SubCatOf=Subcategory +FoundCats=Found tags/categories +ImpossibleAddCat=Impossible to add the tag/category %s +WasAddedSuccessfully=%s was added successfully. +ObjectAlreadyLinkedToCategory=Element is already linked to this tag/category. +ProductIsInCategories=Product/service is linked to following tags/categories +CompanyIsInCustomersCategories=This third party is linked to following customers/prospects tags/categories +CompanyIsInSuppliersCategories=This third party is linked to following vendors tags/categories +MemberIsInCategories=This member is linked to following members tags/categories +ContactIsInCategories=This contact is linked to following contacts tags/categories +ProductHasNoCategory=This product/service is not in any tags/categories +CompanyHasNoCategory=This third party is not in any tags/categories +MemberHasNoCategory=This member is not in any tags/categories +ContactHasNoCategory=This contact is not in any tags/categories +ProjectHasNoCategory=This project is not in any tags/categories +ClassifyInCategory=Add to tag/category +NotCategorized=Without tag/category +CategoryExistsAtSameLevel=This category already exists with this ref +ContentsVisibleByAllShort=Contents visible by all +ContentsNotVisibleByAllShort=Contents not visible by all +DeleteCategory=Delete tag/category +ConfirmDeleteCategory=Are you sure you want to delete this tag/category? +NoCategoriesDefined=No tag/category defined +SuppliersCategoryShort=Vendors tag/category +CustomersCategoryShort=Customers tag/category +ProductsCategoryShort=Products tag/category +MembersCategoryShort=Members tag/category +SuppliersCategoriesShort=Vendors tags/categories +CustomersCategoriesShort=Customers tags/categories +ProspectsCategoriesShort=Prospects tags/categories +CustomersProspectsCategoriesShort=Cust./Prosp. tags/categories +ProductsCategoriesShort=Products tags/categories +MembersCategoriesShort=Members tags/categories +ContactCategoriesShort=Contacts tags/categories +AccountsCategoriesShort=Accounts tags/categories +ProjectsCategoriesShort=Projects tags/categories +UsersCategoriesShort=Users tags/categories +StockCategoriesShort=Warehouse tags/categories +ThisCategoryHasNoItems=This category does not contain any items. +CategId=Tag/category id +CatSupList=List of vendor tags/categories +CatCusList=List of customer/prospect tags/categories +CatProdList=List of products tags/categories +CatMemberList=List of members tags/categories +CatContactList=List of contact tags/categories +CatSupLinks=Links between suppliers and tags/categories +CatCusLinks=Links between customers/prospects and tags/categories +CatContactsLinks=Links between contacts/addresses and tags/categories +CatProdLinks=Links between products/services and tags/categories +CatProJectLinks=Links between projects and tags/categories +DeleteFromCat=Remove from tags/category +ExtraFieldsCategories=Complementary attributes +CategoriesSetup=Tags/categories setup +CategorieRecursiv=Link with parent tag/category automatically +CategorieRecursivHelp=If option is on, when you add a product into a subcategory, product will also be added into the parent category. +AddProductServiceIntoCategory=Add the following product/service +ShowCategory=Show tag/category +ByDefaultInList=By default in list +ChooseCategory=Choose category +StocksCategoriesArea=Warehouses Categories Area +ActionCommCategoriesArea=Events Categories Area +UseOrOperatorForCategories=Use or operator for categories diff --git a/htdocs/langs/am_ET/commercial.lang b/htdocs/langs/am_ET/commercial.lang new file mode 100644 index 00000000000..10c536e0d48 --- /dev/null +++ b/htdocs/langs/am_ET/commercial.lang @@ -0,0 +1,80 @@ +# Dolibarr language file - Source file is en_US - commercial +Commercial=Commerce +CommercialArea=Commerce area +Customer=Customer +Customers=Customers +Prospect=Prospect +Prospects=Prospects +DeleteAction=Delete an event +NewAction=New event +AddAction=Create event +AddAnAction=Create an event +AddActionRendezVous=Create a Rendez-vous event +ConfirmDeleteAction=Are you sure you want to delete this event? +CardAction=Event card +ActionOnCompany=Related company +ActionOnContact=Related contact +TaskRDVWith=Meeting with %s +ShowTask=Show task +ShowAction=Show event +ActionsReport=Events report +ThirdPartiesOfSaleRepresentative=Third parties with sales representative +SaleRepresentativesOfThirdParty=Sales representatives of third party +SalesRepresentative=Sales representative +SalesRepresentatives=Sales representatives +SalesRepresentativeFollowUp=Sales representative (follow-up) +SalesRepresentativeSignature=Sales representative (signature) +NoSalesRepresentativeAffected=No particular sales representative assigned +ShowCustomer=Show customer +ShowProspect=Show prospect +ListOfProspects=List of prospects +ListOfCustomers=List of customers +LastDoneTasks=Latest %s completed actions +LastActionsToDo=Oldest %s not completed actions +DoneAndToDoActions=Completed and To do events +DoneActions=Completed events +ToDoActions=Incomplete events +SendPropalRef=Submission of commercial proposal %s +SendOrderRef=Submission of order %s +StatusNotApplicable=Not applicable +StatusActionToDo=To do +StatusActionDone=Complete +StatusActionInProcess=In process +TasksHistoryForThisContact=Events for this contact +LastProspectDoNotContact=Do not contact +LastProspectNeverContacted=Never contacted +LastProspectToContact=To contact +LastProspectContactInProcess=Contact in process +LastProspectContactDone=Contact done +ActionAffectedTo=Event assigned to +ActionDoneBy=Event done by +ActionAC_TEL=Phone call +ActionAC_FAX=Send fax +ActionAC_PROP=Send proposal by mail +ActionAC_EMAIL=Send Email +ActionAC_EMAIL_IN=Reception of Email +ActionAC_RDV=Meetings +ActionAC_INT=Intervention on site +ActionAC_FAC=Send customer invoice by mail +ActionAC_REL=Send customer invoice by mail (reminder) +ActionAC_CLO=Close +ActionAC_EMAILING=Send mass email +ActionAC_COM=Send sales order by mail +ActionAC_SHIP=Send shipping by mail +ActionAC_SUP_ORD=Send purchase order by mail +ActionAC_SUP_INV=Send vendor invoice by mail +ActionAC_OTH=Other +ActionAC_OTH_AUTO=Automatically inserted events +ActionAC_MANUAL=Manually inserted events +ActionAC_AUTO=Automatically inserted events +ActionAC_OTH_AUTOShort=Auto +Stats=Sales statistics +StatusProsp=Prospect status +DraftPropals=Draft commercial proposals +NoLimit=No limit +ToOfferALinkForOnlineSignature=Link for online signature +WelcomeOnOnlineSignaturePage=Welcome to the page to accept commercial proposals from %s +ThisScreenAllowsYouToSignDocFrom=This screen allow you to accept and sign, or refuse, a quote/commercial proposal +ThisIsInformationOnDocumentToSign=This is information on document to accept or refuse +SignatureProposalRef=Signature of quote/commercial proposal %s +FeatureOnlineSignDisabled=Feature for online signing disabled or document generated before the feature was enabled diff --git a/htdocs/langs/am_ET/companies.lang b/htdocs/langs/am_ET/companies.lang new file mode 100644 index 00000000000..0fad58c9389 --- /dev/null +++ b/htdocs/langs/am_ET/companies.lang @@ -0,0 +1,458 @@ +# Dolibarr language file - Source file is en_US - companies +ErrorCompanyNameAlreadyExists=Company name %s already exists. Choose another one. +ErrorSetACountryFirst=Set the country first +SelectThirdParty=Select a third party +ConfirmDeleteCompany=Are you sure you want to delete this company and all inherited information? +DeleteContact=Delete a contact/address +ConfirmDeleteContact=Are you sure you want to delete this contact and all inherited information? +MenuNewThirdParty=New Third Party +MenuNewCustomer=New Customer +MenuNewProspect=New Prospect +MenuNewSupplier=New Vendor +MenuNewPrivateIndividual=New private individual +NewCompany=New company (prospect, customer, vendor) +NewThirdParty=New Third Party (prospect, customer, vendor) +CreateDolibarrThirdPartySupplier=Create a third party (vendor) +CreateThirdPartyOnly=Create third party +CreateThirdPartyAndContact=Create a third party + a child contact +ProspectionArea=Prospection area +IdThirdParty=Id third party +IdCompany=Company Id +IdContact=Contact Id +Contacts=Contacts/Addresses +ThirdPartyContacts=Third-party contacts +ThirdPartyContact=Third-party contact/address +Company=Company +CompanyName=Company name +AliasNames=Alias name (commercial, trademark, ...) +AliasNameShort=Alias Name +Companies=Companies +CountryIsInEEC=Country is inside the European Economic Community +PriceFormatInCurrentLanguage=Price display format in the current language and currency +ThirdPartyName=Third-party name +ThirdPartyEmail=Third-party email +ThirdParty=Third-party +ThirdParties=Third-parties +ThirdPartyProspects=Prospects +ThirdPartyProspectsStats=Prospects +ThirdPartyCustomers=Customers +ThirdPartyCustomersStats=Customers +ThirdPartyCustomersWithIdProf12=Customers with %s or %s +ThirdPartySuppliers=Vendors +ThirdPartyType=Third-party type +Individual=Private individual +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=Parent company +Subsidiaries=Subsidiaries +ReportByMonth=Report by month +ReportByCustomers=Report by customer +ReportByQuarter=Report by rate +CivilityCode=Civility code +RegisteredOffice=Registered office +Lastname=Last name +Firstname=First name +PostOrFunction=Job position +UserTitle=Title +NatureOfThirdParty=Nature of Third party +NatureOfContact=Nature of Contact +Address=Address +State=State/Province +StateCode=State/Province code +StateShort=State +Region=Region +Region-State=Region - State +Country=Country +CountryCode=Country code +CountryId=Country id +Phone=Phone +PhoneShort=Phone +Skype=Skype +Call=Call +Chat=Chat +PhonePro=Prof. phone +PhonePerso=Pers. phone +PhoneMobile=Mobile +No_Email=Refuse bulk emailings +Fax=Fax +Zip=Zip Code +Town=City +Web=Web +Poste= Position +DefaultLang=Language default +VATIsUsed=Sales tax used +VATIsUsedWhenSelling=This defines if this third party includes a sale tax or not when it makes an invoice to its own customers +VATIsNotUsed=Sales tax is not used +CopyAddressFromSoc=Copy address from third-party details +ThirdpartyNotCustomerNotSupplierSoNoRef=Third party neither customer nor vendor, no available referring objects +ThirdpartyIsNeitherCustomerNorClientSoCannotHaveDiscounts=Third party neither customer nor vendor, discounts are not available +PaymentBankAccount=Payment bank account +OverAllProposals=Proposals +OverAllOrders=Orders +OverAllInvoices=Invoices +OverAllSupplierProposals=Price requests +##### Local Taxes ##### +LocalTax1IsUsed=Use second tax +LocalTax1IsUsedES= RE is used +LocalTax1IsNotUsedES= RE is not used +LocalTax2IsUsed=Use third tax +LocalTax2IsUsedES= IRPF is used +LocalTax2IsNotUsedES= IRPF is not used +WrongCustomerCode=Customer code invalid +WrongSupplierCode=Vendor code invalid +CustomerCodeModel=Customer code model +SupplierCodeModel=Vendor code model +Gencod=Barcode +##### Professional ID ##### +ProfId1Short=Prof. id 1 +ProfId2Short=Prof. id 2 +ProfId3Short=Prof. id 3 +ProfId4Short=Prof. id 4 +ProfId5Short=Prof. id 5 +ProfId6Short=Prof. id 6 +ProfId1=Professional ID 1 +ProfId2=Professional ID 2 +ProfId3=Professional ID 3 +ProfId4=Professional ID 4 +ProfId5=Professional ID 5 +ProfId6=Professional ID 6 +ProfId1AR=Prof Id 1 (CUIT/CUIL) +ProfId2AR=Prof Id 2 (Revenu brutes) +ProfId3AR=- +ProfId4AR=- +ProfId5AR=- +ProfId6AR=- +ProfId1AT=Prof Id 1 (USt.-IdNr) +ProfId2AT=Prof Id 2 (USt.-Nr) +ProfId3AT=Prof Id 3 (Handelsregister-Nr.) +ProfId4AT=- +ProfId5AT=- +ProfId6AT=- +ProfId1AU=Prof Id 1 (ABN) +ProfId2AU=- +ProfId3AU=- +ProfId4AU=- +ProfId5AU=- +ProfId6AU=- +ProfId1BE=Prof Id 1 (Professional number) +ProfId2BE=- +ProfId3BE=- +ProfId4BE=- +ProfId5BE=- +ProfId6BE=- +ProfId1BR=- +ProfId2BR=IE (Inscricao Estadual) +ProfId3BR=IM (Inscricao Municipal) +ProfId4BR=CPF +#ProfId5BR=CNAE +#ProfId6BR=INSS +ProfId1CH=- +ProfId2CH=- +ProfId3CH=Prof Id 1 (Federal number) +ProfId4CH=Prof Id 2 (Commercial Record number) +ProfId5CH=- +ProfId6CH=- +ProfId1CL=Prof Id 1 (R.U.T.) +ProfId2CL=- +ProfId3CL=- +ProfId4CL=- +ProfId5CL=- +ProfId6CL=- +ProfId1CO=Prof Id 1 (R.U.T.) +ProfId2CO=- +ProfId3CO=- +ProfId4CO=- +ProfId5CO=- +ProfId6CO=- +ProfId1DE=Prof Id 1 (USt.-IdNr) +ProfId2DE=Prof Id 2 (USt.-Nr) +ProfId3DE=Prof Id 3 (Handelsregister-Nr.) +ProfId4DE=- +ProfId5DE=- +ProfId6DE=- +ProfId1ES=Prof Id 1 (CIF/NIF) +ProfId2ES=Prof Id 2 (Social security number) +ProfId3ES=Prof Id 3 (CNAE) +ProfId4ES=Prof Id 4 (Collegiate number) +ProfId5ES=- +ProfId6ES=- +ProfId1FR=Prof Id 1 (SIREN) +ProfId2FR=Prof Id 2 (SIRET) +ProfId3FR=Prof Id 3 (NAF, old APE) +ProfId4FR=Prof Id 4 (RCS/RM) +ProfId5FR=- +ProfId6FR=- +ProfId1GB=Registration Number +ProfId2GB=- +ProfId3GB=SIC +ProfId4GB=- +ProfId5GB=- +ProfId6GB=- +ProfId1HN=Id prof. 1 (RTN) +ProfId2HN=- +ProfId3HN=- +ProfId4HN=- +ProfId5HN=- +ProfId6HN=- +ProfId1IN=Prof Id 1 (TIN) +ProfId2IN=Prof Id 2 (PAN) +ProfId3IN=Prof Id 3 (SRVC TAX) +ProfId4IN=Prof Id 4 +ProfId5IN=Prof Id 5 +ProfId6IN=- +ProfId1LU=Id. prof. 1 (R.C.S. Luxembourg) +ProfId2LU=Id. prof. 2 (Business permit) +ProfId3LU=- +ProfId4LU=- +ProfId5LU=- +ProfId6LU=- +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=Id. prof. 5 (I.C.E.) +ProfId6MA=- +ProfId1MX=Prof Id 1 (R.F.C). +ProfId2MX=Prof Id 2 (R..P. IMSS) +ProfId3MX=Prof Id 3 (Profesional Charter) +ProfId4MX=- +ProfId5MX=- +ProfId6MX=- +ProfId1NL=KVK nummer +ProfId2NL=- +ProfId3NL=- +ProfId4NL=Burgerservicenummer (BSN) +ProfId5NL=- +ProfId6NL=- +ProfId1PT=Prof Id 1 (NIPC) +ProfId2PT=Prof Id 2 (Social security number) +ProfId3PT=Prof Id 3 (Commercial Record number) +ProfId4PT=Prof Id 4 (Conservatory) +ProfId5PT=- +ProfId6PT=- +ProfId1SN=RC +ProfId2SN=NINEA +ProfId3SN=- +ProfId4SN=- +ProfId5SN=- +ProfId6SN=- +ProfId1TN=Prof Id 1 (RC) +ProfId2TN=Prof Id 2 (Fiscal matricule) +ProfId3TN=Prof Id 3 (Douane code) +ProfId4TN=Prof Id 4 (BAN) +ProfId5TN=- +ProfId6TN=- +ProfId1US=Prof Id (FEIN) +ProfId2US=- +ProfId3US=- +ProfId4US=- +ProfId5US=- +ProfId6US=- +ProfId1RO=Prof Id 1 (CUI) +ProfId2RO=Prof Id 2 (Nr. Înmatriculare) +ProfId3RO=Prof Id 3 (CAEN) +ProfId4RO=- +ProfId5RO=Prof Id 5 (EUID) +ProfId6RO=- +ProfId1RU=Prof Id 1 (OGRN) +ProfId2RU=Prof Id 2 (INN) +ProfId3RU=Prof Id 3 (KPP) +ProfId4RU=Prof Id 4 (OKPO) +ProfId5RU=- +ProfId6RU=- +ProfId1DZ=RC +ProfId2DZ=Art. +ProfId3DZ=NIF +ProfId4DZ=NIS +VATIntra=VAT ID +VATIntraShort=VAT ID +VATIntraSyntaxIsValid=Syntax is valid +VATReturn=VAT return +ProspectCustomer=Prospect / Customer +Prospect=Prospect +CustomerCard=Customer Card +Customer=Customer +CustomerRelativeDiscount=Relative customer discount +SupplierRelativeDiscount=Relative vendor discount +CustomerRelativeDiscountShort=Relative discount +CustomerAbsoluteDiscountShort=Absolute discount +CompanyHasRelativeDiscount=This customer has a default discount of %s%% +CompanyHasNoRelativeDiscount=This customer has no relative discount by default +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 +CompanyHasDownPaymentOrCommercialDiscount=This customer has discounts available (commercial, down payments) for %s %s +CompanyHasCreditNote=This customer still has credit notes for %s %s +HasNoAbsoluteDiscountFromSupplier=You have no discount credit available from this vendor +HasAbsoluteDiscountFromSupplier=You have discounts available (credits notes or down payments) for %s %s from this vendor +HasDownPaymentOrCommercialDiscountFromSupplier=You have discounts available (commercial, down payments) for %s %s from this vendor +HasCreditNoteFromSupplier=You have credit notes for %s %s from this vendor +CompanyHasNoAbsoluteDiscount=This customer has no discount credit available +CustomerAbsoluteDiscountAllUsers=Absolute customer discounts (granted by all users) +CustomerAbsoluteDiscountMy=Absolute customer discounts (granted by yourself) +SupplierAbsoluteDiscountAllUsers=Absolute vendor discounts (entered by all users) +SupplierAbsoluteDiscountMy=Absolute vendor discounts (entered by yourself) +DiscountNone=None +Vendor=Vendor +Supplier=Vendor +AddContact=Create contact +AddContactAddress=Create contact/address +EditContact=Edit contact +EditContactAddress=Edit contact/address +Contact=Contact +ContactId=Contact id +ContactsAddresses=Contacts/Addresses +FromContactName=Name: +NoContactDefinedForThirdParty=No contact defined for this third party +NoContactDefined=No contact defined +DefaultContact=Default contact/address +ContactByDefaultFor=Default contact/address for +AddThirdParty=Create third party +DeleteACompany=Delete a company +PersonalInformations=Personal data +AccountancyCode=Accounting account +CustomerCode=Customer Code +SupplierCode=Vendor Code +CustomerCodeShort=Customer Code +SupplierCodeShort=Vendor Code +CustomerCodeDesc=Customer Code, unique for all customers +SupplierCodeDesc=Vendor Code, unique for all vendors +RequiredIfCustomer=Required if third party is a customer or prospect +RequiredIfSupplier=Required if third party is a vendor +ValidityControledByModule=Validity controlled by module +ThisIsModuleRules=Rules for this module +ProspectToContact=Prospect to contact +CompanyDeleted=Company "%s" deleted from database. +ListOfContacts=List of contacts/addresses +ListOfContactsAddresses=List of contacts/addresses +ListOfThirdParties=List of Third Parties +ShowCompany=Third Party +ShowContact=Contact-Address +ContactsAllShort=All (No filter) +ContactType=Contact type +ContactForOrders=Order's contact +ContactForOrdersOrShipments=Order's or shipment's contact +ContactForProposals=Proposal's contact +ContactForContracts=Contract's contact +ContactForInvoices=Invoice's contact +NoContactForAnyOrder=This contact is not a contact for any order +NoContactForAnyOrderOrShipments=This contact is not a contact for any order or shipment +NoContactForAnyProposal=This contact is not a contact for any commercial proposal +NoContactForAnyContract=This contact is not a contact for any contract +NoContactForAnyInvoice=This contact is not a contact for any invoice +NewContact=New contact +NewContactAddress=New Contact/Address +MyContacts=My contacts +Capital=Capital +CapitalOf=Capital of %s +EditCompany=Edit company +ThisUserIsNot=This user is not a prospect, customer or vendor +VATIntraCheck=Check +VATIntraCheckDesc=The VAT ID must include the country prefix. The link %s uses the European VAT checker service (VIES) which requires internet access from the Dolibarr server. +VATIntraCheckURL=http://ec.europa.eu/taxation_customs/vies/vieshome.do +VATIntraCheckableOnEUSite=Check the intra-Community VAT ID on the European Commission website +VATIntraManualCheck=You can also check manually on the European Commission website %s +ErrorVATCheckMS_UNAVAILABLE=Check not possible. Check service is not provided by the member state (%s). +NorProspectNorCustomer=Not prospect, nor customer +JuridicalStatus=Legal Entity Type +Staff=Employees +ProspectLevelShort=Potential +ProspectLevel=Prospect potential +ContactPrivate=Private +ContactPublic=Shared +ContactVisibility=Visibility +ContactOthers=Other +OthersNotLinkedToThirdParty=Others, not linked to a third party +ProspectStatus=Prospect status +PL_NONE=None +PL_UNKNOWN=Unknown +PL_LOW=Low +PL_MEDIUM=Medium +PL_HIGH=High +TE_UNKNOWN=- +TE_STARTUP=Startup +TE_GROUP=Large company +TE_MEDIUM=Medium company +TE_ADMIN=Governmental +TE_SMALL=Small company +TE_RETAIL=Retailer +TE_WHOLE=Wholesaler +TE_PRIVATE=Private individual +TE_OTHER=Other +StatusProspect-1=Do not contact +StatusProspect0=Never contacted +StatusProspect1=To be contacted +StatusProspect2=Contact in process +StatusProspect3=Contact done +ChangeDoNotContact=Change status to 'Do not contact' +ChangeNeverContacted=Change status to 'Never contacted' +ChangeToContact=Change status to 'To be contacted' +ChangeContactInProcess=Change status to 'Contact in process' +ChangeContactDone=Change status to 'Contact done' +ProspectsByStatus=Prospects by status +NoParentCompany=None +ExportCardToFormat=Export card to format +ContactNotLinkedToCompany=Contact not linked to any third party +DolibarrLogin=Dolibarr login +NoDolibarrAccess=No Dolibarr access +ExportDataset_company_1=Third-parties (companies/foundations/physical people) and their properties +ExportDataset_company_2=Contacts and their properties +ImportDataset_company_1=Third-parties and their properties +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) +PriceLevel=Price Level +PriceLevelLabels=Price Level Labels +DeliveryAddress=Delivery address +AddAddress=Add address +SupplierCategory=Vendor category +JuridicalStatus200=Independent +DeleteFile=Delete file +ConfirmDeleteFile=Are you sure you want to delete this file? +AllocateCommercial=Assigned to sales representative +Organization=Organization +FiscalYearInformation=Fiscal Year +FiscalMonthStart=Starting month of the fiscal year +SocialNetworksInformation=Social networks +SocialNetworksFacebookURL=Facebook URL +SocialNetworksTwitterURL=Twitter URL +SocialNetworksLinkedinURL=Linkedin URL +SocialNetworksInstagramURL=Instagram URL +SocialNetworksYoutubeURL=Youtube URL +SocialNetworksGithubURL=Github URL +YouMustAssignUserMailFirst=You must create an email for this user prior to being able to add an email notification. +YouMustCreateContactFirst=To be able to add email notifications, you must first define contacts with valid emails for the third party +ListSuppliersShort=List of Vendors +ListProspectsShort=List of Prospects +ListCustomersShort=List of Customers +ThirdPartiesArea=Third Parties/Contacts +LastModifiedThirdParties=Last %s modified Third Parties +UniqueThirdParties=Total of Third Parties +InActivity=Open +ActivityCeased=Closed +ThirdPartyIsClosed=Third party is closed +ProductsIntoElements=List of products/services into %s +CurrentOutstandingBill=Current outstanding bill +OutstandingBill=Max. for outstanding bill +OutstandingBillReached=Max. for outstanding bill reached +OrderMinAmount=Minimum amount for order +MonkeyNumRefModelDesc=Return a number with the format %syymm-nnnn for the customer code and %syymm-nnnn for the vendor code where yy is year, mm is month and nnnn is a sequence with no break and no return to 0. +LeopardNumRefModelDesc=The code is free. This code can be modified at any time. +ManagingDirectors=Manager(s) name (CEO, director, president...) +MergeOriginThirdparty=Duplicate third party (third party you want to delete) +MergeThirdparties=Merge third parties +ConfirmMergeThirdparties=Are you sure you want to merge this third party into the current one? All linked objects (invoices, orders, ...) will be moved to current third party, then the third party will be deleted. +ThirdpartiesMergeSuccess=Third parties have been merged +SaleRepresentativeLogin=Login of sales representative +SaleRepresentativeFirstname=First name of sales representative +SaleRepresentativeLastname=Last name of sales representative +ErrorThirdpartiesMerge=There was an error when deleting the third parties. Please check the log. Changes have been reverted. +NewCustomerSupplierCodeProposed=Customer or Vendor code already used, a new code is suggested +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address +#Imports +PaymentTypeCustomer=Payment Type - Customer +PaymentTermsCustomer=Payment Terms - Customer +PaymentTypeSupplier=Payment Type - Vendor +PaymentTermsSupplier=Payment Term - Vendor +PaymentTypeBoth=Payment Type - Customer and Vendor +MulticurrencyUsed=Use Multicurrency +MulticurrencyCurrency=Currency diff --git a/htdocs/langs/am_ET/compta.lang b/htdocs/langs/am_ET/compta.lang new file mode 100644 index 00000000000..8a8c837ac87 --- /dev/null +++ b/htdocs/langs/am_ET/compta.lang @@ -0,0 +1,266 @@ +# Dolibarr language file - Source file is en_US - compta +MenuFinancial=Billing | Payment +TaxModuleSetupToModifyRules=Go to Taxes module setup to modify rules for calculation +TaxModuleSetupToModifyRulesLT=Go to Company setup to modify rules for calculation +OptionMode=Option for accountancy +OptionModeTrue=Option Incomes-Expenses +OptionModeVirtual=Option Claims-Debts +OptionModeTrueDesc=In this context, the turnover is calculated over payments (date of payments). The validity of the figures is assured only if the book-keeping is scrutinized through the input/output on the accounts via invoices. +OptionModeVirtualDesc=In this context, the turnover is calculated over invoices (date of validation). When these invoices are due, whether they have been paid or not, they are listed in the turnover output. +FeatureIsSupportedInInOutModeOnly=Feature only available in CREDITS-DEBTS accountancy mode (See Accountancy module configuration) +VATReportBuildWithOptionDefinedInModule=Amounts shown here are calculated using rules defined by Tax module setup. +LTReportBuildWithOptionDefinedInModule=Amounts shown here are calculated using rules defined by Company setup. +Param=Setup +RemainingAmountPayment=Amount payment remaining: +Account=Account +Accountparent=Parent account +Accountsparent=Parent accounts +Income=Income +Outcome=Expense +MenuReportInOut=Income / Expense +ReportInOut=Balance of income and expenses +ReportTurnover=Turnover invoiced +ReportTurnoverCollected=Turnover collected +PaymentsNotLinkedToInvoice=Payments not linked to any invoice, so not linked to any third party +PaymentsNotLinkedToUser=Payments not linked to any user +Profit=Profit +AccountingResult=Accounting result +BalanceBefore=Balance (before) +Balance=Balance +Debit=Debit +Credit=Credit +Piece=Accounting Doc. +AmountHTVATRealReceived=Net collected +AmountHTVATRealPaid=Net paid +VATToPay=Tax sales +VATReceived=Tax received +VATToCollect=Tax purchases +VATSummary=Tax monthly +VATBalance=Tax Balance +VATPaid=Tax paid +LT1Summary=Tax 2 summary +LT2Summary=Tax 3 summary +LT1SummaryES=RE Balance +LT2SummaryES=IRPF Balance +LT1SummaryIN=CGST Balance +LT2SummaryIN=SGST Balance +LT1Paid=Tax 2 paid +LT2Paid=Tax 3 paid +LT1PaidES=RE Paid +LT2PaidES=IRPF Paid +LT1PaidIN=CGST Paid +LT2PaidIN=SGST Paid +LT1Customer=Tax 2 sales +LT1Supplier=Tax 2 purchases +LT1CustomerES=RE sales +LT1SupplierES=RE purchases +LT1CustomerIN=CGST sales +LT1SupplierIN=CGST purchases +LT2Customer=Tax 3 sales +LT2Supplier=Tax 3 purchases +LT2CustomerES=IRPF sales +LT2SupplierES=IRPF purchases +LT2CustomerIN=SGST sales +LT2SupplierIN=SGST purchases +VATCollected=VAT collected +StatusToPay=To pay +SpecialExpensesArea=Area for all special payments +SocialContribution=Social or fiscal tax +SocialContributions=Social or fiscal taxes +SocialContributionsDeductibles=Deductible social or fiscal taxes +SocialContributionsNondeductibles=Nondeductible social or fiscal taxes +LabelContrib=Label contribution +TypeContrib=Type contribution +MenuSpecialExpenses=Special expenses +MenuTaxAndDividends=Taxes and dividends +MenuSocialContributions=Social/fiscal taxes +MenuNewSocialContribution=New social/fiscal tax +NewSocialContribution=New social/fiscal tax +AddSocialContribution=Add social/fiscal tax +ContributionsToPay=Social/fiscal taxes to pay +AccountancyTreasuryArea=Billing and payment area +NewPayment=New payment +PaymentCustomerInvoice=Customer invoice payment +PaymentSupplierInvoice=vendor invoice payment +PaymentSocialContribution=Social/fiscal tax payment +PaymentVat=VAT payment +ListPayment=List of payments +ListOfCustomerPayments=List of customer payments +ListOfSupplierPayments=List of vendor payments +DateStartPeriod=Date start period +DateEndPeriod=Date end period +newLT1Payment=New tax 2 payment +newLT2Payment=New tax 3 payment +LT1Payment=Tax 2 payment +LT1Payments=Tax 2 payments +LT2Payment=Tax 3 payment +LT2Payments=Tax 3 payments +newLT1PaymentES=New RE payment +newLT2PaymentES=New IRPF payment +LT1PaymentES=RE Payment +LT1PaymentsES=RE Payments +LT2PaymentES=IRPF Payment +LT2PaymentsES=IRPF Payments +VATPayment=Sales tax payment +VATPayments=Sales tax payments +VATRefund=Sales tax refund +NewVATPayment=New sales tax payment +NewLocalTaxPayment=New tax %s payment +Refund=Refund +SocialContributionsPayments=Social/fiscal taxes payments +ShowVatPayment=Show VAT payment +TotalToPay=Total to pay +BalanceVisibilityDependsOnSortAndFilters=Balance is visible in this list only if table is sorted ascending on %s and filtered for 1 bank account +CustomerAccountancyCode=Customer accounting code +SupplierAccountancyCode=Vendor accounting code +CustomerAccountancyCodeShort=Cust. account. code +SupplierAccountancyCodeShort=Sup. account. code +AccountNumber=Account number +NewAccountingAccount=New account +Turnover=Turnover invoiced +TurnoverCollected=Turnover collected +SalesTurnoverMinimum=Minimum turnover +ByExpenseIncome=By expenses & incomes +ByThirdParties=By third parties +ByUserAuthorOfInvoice=By invoice author +CheckReceipt=Check deposit +CheckReceiptShort=Check deposit +LastCheckReceiptShort=Latest %s check receipts +NewCheckReceipt=New discount +NewCheckDeposit=New check deposit +NewCheckDepositOn=Create receipt for deposit on account: %s +NoWaitingChecks=No checks awaiting deposit. +DateChequeReceived=Check reception date +NbOfCheques=No. of checks +PaySocialContribution=Pay a social/fiscal tax +ConfirmPaySocialContribution=Are you sure you want to classify this social or fiscal tax as paid? +DeleteSocialContribution=Delete a social or fiscal tax payment +ConfirmDeleteSocialContribution=Are you sure you want to delete this social/fiscal tax payment? +ExportDataset_tax_1=Social and fiscal taxes and payments +CalcModeVATDebt=Mode %sVAT on commitment accounting%s. +CalcModeVATEngagement=Mode %sVAT on incomes-expenses%s. +CalcModeDebt=Analysis of known recorded invoices even if they are not yet accounted in ledger. +CalcModeEngagement=Analysis of known recorded payments, even if they are not yet accounted in Ledger. +CalcModeBookkeeping=Analysis of data journalized in Bookkeeping Ledger table. +CalcModeLT1= Mode %sRE on customer invoices - suppliers invoices%s +CalcModeLT1Debt=Mode %sRE on customer invoices%s +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=Balance of income and expenses, annual summary +AnnualSummaryInputOutputMode=Balance of income and expenses, annual summary +AnnualByCompanies=Balance of income and expenses, by predefined groups of account +AnnualByCompaniesDueDebtMode=Balance of income and expenses, detail by predefined groups, mode %sClaims-Debts%s said Commitment accounting. +AnnualByCompaniesInputOutputMode=Balance of income and expenses, detail by predefined groups, mode %sIncomes-Expenses%s said cash accounting. +SeeReportInInputOutputMode=See %sanalysis of payments%s for a calculation on actual payments made even if they are not yet accounted in Ledger. +SeeReportInDueDebtMode=See %sanalysis of invoices%s for a calculation based on known recorded invoices even if they are not yet accounted in Ledger. +SeeReportInBookkeepingMode=See %sBookeeping report%s for a calculation on Bookkeeping Ledger table +RulesAmountWithTaxIncluded=- Amounts shown are with all taxes included +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. +RulesResultInOut=- It includes the real payments made on invoices, expenses, VAT and salaries.
    - It is based on the payment dates of the invoices, expenses, VAT and salaries. The donation date for donation. +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    +RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    +RulesCATotalSaleJournal=It includes all credit lines from the Sale journal. +RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" +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 +DepositsAreIncluded=- Down payment invoices are included +LT1ReportByCustomers=Report tax 2 by third party +LT2ReportByCustomers=Report tax 3 by third party +LT1ReportByCustomersES=Report by third party RE +LT2ReportByCustomersES=Report by third party IRPF +VATReport=Sale tax report +VATReportByPeriods=Sale tax report by period +VATReportByRates=Sale tax report by rates +VATReportByThirdParties=Sale tax report by third parties +VATReportByCustomers=Sale tax report by customer +VATReportByCustomersInInputOutputMode=Report by the customer VAT collected and paid +VATReportByQuartersInInputOutputMode=Report by Sale tax rate of the tax collected and paid +LT1ReportByQuarters=Report tax 2 by rate +LT2ReportByQuarters=Report tax 3 by rate +LT1ReportByQuartersES=Report by RE rate +LT2ReportByQuartersES=Report by IRPF rate +SeeVATReportInInputOutputMode=See report %sVAT encasement%s for a standard calculation +SeeVATReportInDueDebtMode=See report %sVAT on flow%s for a calculation with an option on the flow +RulesVATInServices=- For services, the report includes the VAT regulations actually received or issued on the basis of the date of payment. +RulesVATInProducts=- For material assets, the report includes the VAT received or issued on the basis of the date of payment. +RulesVATDueServices=- For services, the report includes VAT invoices due, paid or not, based on the invoice date. +RulesVATDueProducts=- For material assets, the report includes the VAT invoices, based on the invoice date. +OptionVatInfoModuleComptabilite=Note: For material assets, it should use the date of delivery to be more fair. +ThisIsAnEstimatedValue=This is a preview, based on business events and not from the final ledger table, so final results may differ from this preview values +PercentOfInvoice=%%/invoice +NotUsedForGoods=Not used on goods +ProposalStats=Statistics on proposals +OrderStats=Statistics on orders +InvoiceStats=Statistics on bills +Dispatch=Dispatching +Dispatched=Dispatched +ToDispatch=To dispatch +ThirdPartyMustBeEditAsCustomer=Third party must be defined as a customer +SellsJournal=Sales Journal +PurchasesJournal=Purchases Journal +DescSellsJournal=Sales Journal +DescPurchasesJournal=Purchases Journal +CodeNotDef=Not defined +WarningDepositsNotIncluded=Down payment invoices are not included in this version with this accountancy module. +DatePaymentTermCantBeLowerThanObjectDate=Payment term date can't be lower than object date. +Pcg_version=Chart of accounts models +Pcg_type=Pcg type +Pcg_subtype=Pcg subtype +InvoiceLinesToDispatch=Invoice lines to dispatch +ByProductsAndServices=By product and service +RefExt=External ref +ToCreateAPredefinedInvoice=To create a template invoice, create a standard invoice, then, without validating it, click onto button "%s". +LinkedOrder=Link to order +Mode1=Method 1 +Mode2=Method 2 +CalculationRuleDesc=To calculate total VAT, there is two methods:
    Method 1 is rounding vat on each line, then summing them.
    Method 2 is summing all vat on each line, then rounding result.
    Final result may differs from few cents. Default mode is mode %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. +CalculationMode=Calculation mode +AccountancyJournal=Accounting code journal +ACCOUNTING_VAT_SOLD_ACCOUNT=Accounting account by default for VAT on sales (used if not defined on VAT dictionary setup) +ACCOUNTING_VAT_BUY_ACCOUNT=Accounting account by default for VAT on purchases (used if not defined on VAT dictionary setup) +ACCOUNTING_VAT_PAY_ACCOUNT=Accounting account by default for paying VAT +ACCOUNTING_ACCOUNT_CUSTOMER=Accounting account used for customer third parties +ACCOUNTING_ACCOUNT_CUSTOMER_Desc=The dedicated accounting account defined on third party card will be used for Subledger accounting only. This one will be used for General Ledger and as default value of Subledger accounting if dedicated customer accounting account on third party is not defined. +ACCOUNTING_ACCOUNT_SUPPLIER=Accounting account used for vendor third parties +ACCOUNTING_ACCOUNT_SUPPLIER_Desc=The dedicated accounting account defined on third party card will be used for Subledger accounting only. This one will be used for General Ledger and as default value of Subledger accounting if dedicated vendor accounting account on third party is not defined. +ConfirmCloneTax=Confirm the clone of a social/fiscal tax +CloneTaxForNextMonth=Clone it for next month +SimpleReport=Simple report +AddExtraReport=Extra reports (add foreign and national customer report) +OtherCountriesCustomersReport=Foreign customers report +BasedOnTwoFirstLettersOfVATNumberBeingDifferentFromYourCompanyCountry=Based on the two first letters of the VAT number being different from your own company's country code +SameCountryCustomersWithVAT=National customers report +BasedOnTwoFirstLettersOfVATNumberBeingTheSameAsYourCompanyCountry=Based on the two first letters of the VAT number being the same as your own company's country code +LinkedFichinter=Link to an intervention +ImportDataset_tax_contrib=Social/fiscal taxes +ImportDataset_tax_vat=Vat payments +ErrorBankAccountNotFound=Error: Bank account not found +FiscalPeriod=Accounting period +ListSocialContributionAssociatedProject=List of social contributions associated with the project +DeleteFromCat=Remove from accounting group +AccountingAffectation=Accounting assignment +LastDayTaxIsRelatedTo=Last day of period the tax is related to +VATDue=Sale tax claimed +ClaimedForThisPeriod=Claimed for the period +PaidDuringThisPeriod=Paid during this period +ByVatRate=By sale tax rate +TurnoverbyVatrate=Turnover invoiced by sale tax rate +TurnoverCollectedbyVatrate=Turnover collected by sale tax rate +PurchasebyVatrate=Purchase by sale tax rate +LabelToShow=Short label +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected +IncludeVarpaysInResults = Include various payments in reports +IncludeLoansInResults = Include loans in reports diff --git a/htdocs/langs/am_ET/contracts.lang b/htdocs/langs/am_ET/contracts.lang new file mode 100644 index 00000000000..47572c355ab --- /dev/null +++ b/htdocs/langs/am_ET/contracts.lang @@ -0,0 +1,101 @@ +# Dolibarr language file - Source file is en_US - contracts +ContractsArea=Contracts area +ListOfContracts=List of contracts +AllContracts=All contracts +ContractCard=Contract card +ContractStatusNotRunning=Not running +ContractStatusDraft=Draft +ContractStatusValidated=Validated +ContractStatusClosed=Closed +ServiceStatusInitial=Not running +ServiceStatusRunning=Running +ServiceStatusNotLate=Running, not expired +ServiceStatusNotLateShort=Not expired +ServiceStatusLate=Running, expired +ServiceStatusLateShort=Expired +ServiceStatusClosed=Closed +ShowContractOfService=Show contract of service +Contracts=Contracts +ContractsSubscriptions=Contracts/Subscriptions +ContractsAndLine=Contracts and line of contracts +Contract=Contract +ContractLine=Contract line +Closing=Closing +NoContracts=No contracts +MenuServices=Services +MenuInactiveServices=Services not active +MenuRunningServices=Running services +MenuExpiredServices=Expired services +MenuClosedServices=Closed services +NewContract=New contract +NewContractSubscription=New contract/subscription +AddContract=Create contract +DeleteAContract=Delete a contract +ActivateAllOnContract=Activate all services +CloseAContract=Close a contract +ConfirmDeleteAContract=Are you sure you want to delete this contract and all its services? +ConfirmValidateContract=Are you sure you want to validate this contract under name %s? +ConfirmActivateAllOnContract=This will open all services (not yet active). Are you sure you want to open all services? +ConfirmCloseContract=This will close all services (active or not). Are you sure you want to close this contract? +ConfirmCloseService=Are you sure you want to close this service with date %s? +ValidateAContract=Validate a contract +ActivateService=Activate service +ConfirmActivateService=Are you sure you want to activate this service with date %s? +RefContract=Contract reference +DateContract=Contract date +DateServiceActivate=Service activation date +ListOfServices=List of services +ListOfInactiveServices=List of not active services +ListOfExpiredServices=List of expired active services +ListOfClosedServices=List of closed services +ListOfRunningServices=List of running services +NotActivatedServices=Inactive services (among validated contracts) +BoardNotActivatedServices=Services to activate among validated contracts +BoardNotActivatedServicesShort=Services to activate +LastContracts=Latest %s contracts +LastModifiedServices=Latest %s modified services +ContractStartDate=Start date +ContractEndDate=End date +DateStartPlanned=Planned start date +DateStartPlannedShort=Planned start date +DateEndPlanned=Planned end date +DateEndPlannedShort=Planned end date +DateStartReal=Real start date +DateStartRealShort=Real start date +DateEndReal=Real end date +DateEndRealShort=Real end date +CloseService=Close service +BoardRunningServices=Services running +BoardRunningServicesShort=Services running +BoardExpiredServices=Services expired +BoardExpiredServicesShort=Services expired +ServiceStatus=Status of service +DraftContracts=Drafts contracts +CloseRefusedBecauseOneServiceActive=Contract can't be closed as there is at least one open service on it +ActivateAllContracts=Activate all contract lines +CloseAllContracts=Close all contract lines +DeleteContractLine=Delete a contract line +ConfirmDeleteContractLine=Are you sure you want to delete this contract line? +MoveToAnotherContract=Move service into another contract. +ConfirmMoveToAnotherContract=I choosed new target contract and confirm I want to move this service into this contract. +ConfirmMoveToAnotherContractQuestion=Choose in which existing contract (of same third party), you want to move this service to? +PaymentRenewContractId=Renew contract line (number %s) +ExpiredSince=Expiration date +NoExpiredServices=No expired active services +ListOfServicesToExpireWithDuration=List of Services to expire in %s days +ListOfServicesToExpireWithDurationNeg=List of Services expired from more than %s days +ListOfServicesToExpire=List of Services to expire +NoteListOfYourExpiredServices=This list contains only services of contracts for third parties you are linked to as a sale representative. +StandardContractsTemplate=Standard contracts template +ContactNameAndSignature=For %s, name and signature: +OnlyLinesWithTypeServiceAreUsed=Only lines with type "Service" will be cloned. +ConfirmCloneContract=Are you sure you want to clone the contract %s? +LowerDateEndPlannedShort=Lower planned end date of active services +SendContractRef=Contract information __REF__ +OtherContracts=Other contracts +##### Types de contacts ##### +TypeContact_contrat_internal_SALESREPSIGN=Sales representative signing contract +TypeContact_contrat_internal_SALESREPFOLL=Sales representative following-up contract +TypeContact_contrat_external_BILLING=Billing customer contact +TypeContact_contrat_external_CUSTOMER=Follow-up customer contact +TypeContact_contrat_external_SALESREPSIGN=Signing contract customer contact diff --git a/htdocs/langs/am_ET/cron.lang b/htdocs/langs/am_ET/cron.lang new file mode 100644 index 00000000000..1de1251831a --- /dev/null +++ b/htdocs/langs/am_ET/cron.lang @@ -0,0 +1,84 @@ +# Dolibarr language file - Source file is en_US - cron +# About page +# Right +Permission23101 = Read Scheduled job +Permission23102 = Create/update Scheduled job +Permission23103 = Delete Scheduled job +Permission23104 = Execute Scheduled job +# Admin +CronSetup=Scheduled job management setup +URLToLaunchCronJobs=URL to check and launch qualified cron jobs +OrToLaunchASpecificJob=Or to check and launch a specific job +KeyForCronAccess=Security key for URL to launch cron jobs +FileToLaunchCronJobs=Command line to check and launch qualified cron jobs +CronExplainHowToRunUnix=On Unix environment you should use the following crontab entry to run the command line each 5 minutes +CronExplainHowToRunWin=On Microsoft(tm) Windows environment you can use Scheduled Task tools to run the command line each 5 minutes +CronMethodDoesNotExists=Class %s does not contains any method %s +CronJobDefDesc=Cron job profiles are defined into the module descriptor file. When module is activated, they are loaded and available so you can administer the jobs from the admin tools menu %s. +CronJobProfiles=List of predefined cron job profiles +# Menu +EnabledAndDisabled=Enabled and disabled +# Page list +CronLastOutput=Latest run output +CronLastResult=Latest result code +CronCommand=Command +CronList=Scheduled jobs +CronDelete=Delete scheduled jobs +CronConfirmDelete=Are you sure you want to delete these scheduled jobs? +CronExecute=Launch scheduled job +CronConfirmExecute=Are you sure you want to execute these scheduled jobs now? +CronInfo=Scheduled job module allows to schedule jobs to execute them automatically. Jobs can also be started manually. +CronTask=Job +CronNone=None +CronDtStart=Not before +CronDtEnd=Not after +CronDtNextLaunch=Next execution +CronDtLastLaunch=Start date of latest execution +CronDtLastResult=End date of latest execution +CronFrequency=Frequency +CronClass=Class +CronMethod=Method +CronModule=Module +CronNoJobs=No jobs registered +CronPriority=Priority +CronLabel=Label +CronNbRun=Number of launches +CronMaxRun=Maximum number of launches +CronEach=Every +JobFinished=Job launched and finished +#Page card +CronAdd= Add jobs +CronEvery=Execute job each +CronObject=Instance/Object to create +CronArgs=Parameters +CronSaveSucess=Save successfully +CronNote=Comment +CronFieldMandatory=Fields %s is mandatory +CronErrEndDateStartDt=End date cannot be before start date +StatusAtInstall=Status at module installation +CronStatusActiveBtn=Enable +CronStatusInactiveBtn=Disable +CronTaskInactive=This job is disabled +CronId=Id +CronClassFile=Filename with class +CronModuleHelp=Name of Dolibarr module directory (also work with external Dolibarr module).
    For example to call the fetch method of Dolibarr Product object /htdocs/product/class/product.class.php, the value for module is
    product +CronClassFileHelp=The relative path and file name to load (path is relative to web server root directory).
    For example to call the fetch method of Dolibarr Product object htdocs/product/class/product.class.php, the value for class file name is
    product/class/product.class.php +CronObjectHelp=The object name to load.
    For example to call the fetch method of Dolibarr Product object /htdocs/product/class/product.class.php, the value for class file name is
    Product +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=The system command line to execute. +CronCreateJob=Create new Scheduled Job +CronFrom=From +# Info +# Common +CronType=Job type +CronType_method=Call method of a PHP Class +CronType_command=Shell command +CronCannotLoadClass=Cannot load class file %s (to use class %s) +CronCannotLoadObject=Class file %s was loaded, but object %s was not found into it +UseMenuModuleToolsToAddCronJobs=Go into menu "Home - Admin tools - Scheduled jobs" to see and edit scheduled jobs. +JobDisabled=Job disabled +MakeLocalDatabaseDumpShort=Local database backup +MakeLocalDatabaseDump=Create a local database dump. Parameters are: compression ('gz' or 'bz' or 'none'), backup type ('mysql', 'pgsql', 'auto'), 1, 'auto' or filename to build, number of backup files to keep +WarningCronDelayed=Attention, for performance purpose, whatever is next date of execution of enabled jobs, your jobs may be delayed to a maximum of %s hours, before being run. +DATAPOLICYJob=Data cleaner and anonymizer diff --git a/htdocs/langs/am_ET/deliveries.lang b/htdocs/langs/am_ET/deliveries.lang new file mode 100644 index 00000000000..1f48c01de75 --- /dev/null +++ b/htdocs/langs/am_ET/deliveries.lang @@ -0,0 +1,31 @@ +# Dolibarr language file - Source file is en_US - deliveries +Delivery=Delivery +DeliveryRef=Ref Delivery +DeliveryCard=Receipt card +DeliveryOrder=Delivery receipt +DeliveryDate=Delivery date +CreateDeliveryOrder=Generate delivery receipt +DeliveryStateSaved=Delivery state saved +SetDeliveryDate=Set shipping date +ValidateDeliveryReceipt=Validate delivery receipt +ValidateDeliveryReceiptConfirm=Are you sure you want to validate this delivery receipt? +DeleteDeliveryReceipt=Delete delivery receipt +DeleteDeliveryReceiptConfirm=Are you sure you want to delete delivery receipt %s? +DeliveryMethod=Delivery method +TrackingNumber=Tracking number +DeliveryNotValidated=Delivery not validated +StatusDeliveryCanceled=Canceled +StatusDeliveryDraft=Draft +StatusDeliveryValidated=Received +# merou PDF model +NameAndSignature=Name and Signature: +ToAndDate=To___________________________________ on ____/_____/__________ +GoodStatusDeclaration=Have received the goods above in good condition, +Deliverer=Deliverer: +Sender=Sender +Recipient=Recipient +ErrorStockIsNotEnough=There's not enough stock +Shippable=Shippable +NonShippable=Not Shippable +ShowReceiving=Show delivery receipt +NonExistentOrder=Nonexistent order diff --git a/htdocs/langs/am_ET/dict.lang b/htdocs/langs/am_ET/dict.lang new file mode 100644 index 00000000000..ec315d97142 --- /dev/null +++ b/htdocs/langs/am_ET/dict.lang @@ -0,0 +1,359 @@ +# Dolibarr language file - Source file is en_US - dict +CountryFR=France +CountryBE=Belgium +CountryIT=Italy +CountryES=Spain +CountryDE=Germany +CountryCH=Switzerland +# Warning, country code GB is for United Kingdom. UK Does not exists as country code in ISO standard. +CountryGB=United Kingdom +CountryUK=United Kingdom +CountryIE=Ireland +CountryCN=China +CountryTN=Tunisia +CountryUS=United States +CountryMA=Morocco +CountryDZ=Algeria +CountryCA=Canada +CountryTG=Togo +CountryGA=Gabon +CountryNL=Netherlands +CountryHU=Hungary +CountryRU=Russia +CountrySE=Sweden +CountryCI=Ivoiry Coast +CountrySN=Senegal +CountryAR=Argentina +CountryCM=Cameroon +CountryPT=Portugal +CountrySA=Saudi Arabia +CountryMC=Monaco +CountryAU=Australia +CountrySG=Singapore +CountryAF=Afghanistan +CountryAX=Åland Islands +CountryAL=Albania +CountryAS=American Samoa +CountryAD=Andorra +CountryAO=Angola +CountryAI=Anguilla +CountryAQ=Antarctica +CountryAG=Antigua and Barbuda +CountryAM=Armenia +CountryAW=Aruba +CountryAT=Austria +CountryAZ=Azerbaijan +CountryBS=Bahamas +CountryBH=Bahrain +CountryBD=Bangladesh +CountryBB=Barbados +CountryBY=Belarus +CountryBZ=Belize +CountryBJ=Benin +CountryBM=Bermuda +CountryBT=Bhutan +CountryBO=Bolivia +CountryBA=Bosnia and Herzegovina +CountryBW=Botswana +CountryBV=Bouvet Island +CountryBR=Brazil +CountryIO=British Indian Ocean Territory +CountryBN=Brunei Darussalam +CountryBG=Bulgaria +CountryBF=Burkina Faso +CountryBI=Burundi +CountryKH=Cambodia +CountryCV=Cape Verde +CountryKY=Cayman Islands +CountryCF=Central African Republic +CountryTD=Chad +CountryCL=Chile +CountryCX=Christmas Island +CountryCC=Cocos (Keeling) Islands +CountryCO=Colombia +CountryKM=Comoros +CountryCG=Congo +CountryCD=Congo, The Democratic Republic of the +CountryCK=Cook Islands +CountryCR=Costa Rica +CountryHR=Croatia +CountryCU=Cuba +CountryCY=Cyprus +CountryCZ=Czech Republic +CountryDK=Denmark +CountryDJ=Djibouti +CountryDM=Dominica +CountryDO=Dominican Republic +CountryEC=Ecuador +CountryEG=Egypt +CountrySV=El Salvador +CountryGQ=Equatorial Guinea +CountryER=Eritrea +CountryEE=Estonia +CountryET=Ethiopia +CountryFK=Falkland Islands +CountryFO=Faroe Islands +CountryFJ=Fiji Islands +CountryFI=Finland +CountryGF=French Guiana +CountryPF=French Polynesia +CountryTF=French Southern Territories +CountryGM=Gambia +CountryGE=Georgia +CountryGH=Ghana +CountryGI=Gibraltar +CountryGR=Greece +CountryGL=Greenland +CountryGD=Grenada +CountryGP=Guadeloupe +CountryGU=Guam +CountryGT=Guatemala +CountryGN=Guinea +CountryGW=Guinea-Bissau +CountryGY=Guyana +CountryHT=Haïti +CountryHM=Heard Island and McDonald +CountryVA=Holy See (Vatican City State) +CountryHN=Honduras +CountryHK=Hong Kong +CountryIS=Iceland +CountryIN=India +CountryID=Indonesia +CountryIR=Iran +CountryIQ=Iraq +CountryIL=Israel +CountryJM=Jamaica +CountryJP=Japan +CountryJO=Jordan +CountryKZ=Kazakhstan +CountryKE=Kenya +CountryKI=Kiribati +CountryKP=North Korea +CountryKR=South Korea +CountryKW=Kuwait +CountryKG=Kyrgyzstan +CountryLA=Lao +CountryLV=Latvia +CountryLB=Lebanon +CountryLS=Lesotho +CountryLR=Liberia +CountryLY=Libyan +CountryLI=Liechtenstein +CountryLT=Lithuania +CountryLU=Luxembourg +CountryMO=Macao +CountryMK=Macedonia, the former Yugoslav of +CountryMG=Madagascar +CountryMW=Malawi +CountryMY=Malaysia +CountryMV=Maldives +CountryML=Mali +CountryMT=Malta +CountryMH=Marshall Islands +CountryMQ=Martinique +CountryMR=Mauritania +CountryMU=Mauritius +CountryYT=Mayotte +CountryMX=Mexico +CountryFM=Micronesia +CountryMD=Moldova +CountryMN=Mongolia +CountryMS=Monserrat +CountryMZ=Mozambique +CountryMM=Myanmar (Burma) +CountryNA=Namibia +CountryNR=Nauru +CountryNP=Nepal +CountryAN=Netherlands Antilles +CountryNC=New Caledonia +CountryNZ=New Zealand +CountryNI=Nicaragua +CountryNE=Niger +CountryNG=Nigeria +CountryNU=Niue +CountryNF=Norfolk Island +CountryMP=Northern Mariana Islands +CountryNO=Norway +CountryOM=Oman +CountryPK=Pakistan +CountryPW=Palau +CountryPS=Palestinian Territory, Occupied +CountryPA=Panama +CountryPG=Papua New Guinea +CountryPY=Paraguay +CountryPE=Peru +CountryPH=Philippines +CountryPN=Pitcairn Islands +CountryPL=Poland +CountryPR=Puerto Rico +CountryQA=Qatar +CountryRE=Reunion +CountryRO=Romania +CountryRW=Rwanda +CountrySH=Saint Helena +CountryKN=Saint Kitts and Nevis +CountryLC=Saint Lucia +CountryPM=Saint Pierre and Miquelon +CountryVC=Saint Vincent and Grenadines +CountryWS=Samoa +CountrySM=San Marino +CountryST=Sao Tome and Principe +CountryRS=Serbia +CountrySC=Seychelles +CountrySL=Sierra Leone +CountrySK=Slovakia +CountrySI=Slovenia +CountrySB=Solomon Islands +CountrySO=Somalia +CountryZA=South Africa +CountryGS=South Georgia and the South Sandwich Islands +CountryLK=Sri Lanka +CountrySD=Sudan +CountrySR=Suriname +CountrySJ=Svalbard and Jan Mayen +CountrySZ=Swaziland +CountrySY=Syrian +CountryTW=Taiwan +CountryTJ=Tajikistan +CountryTZ=Tanzania +CountryTH=Thailand +CountryTL=Timor-Leste +CountryTK=Tokelau +CountryTO=Tonga +CountryTT=Trinidad and Tobago +CountryTR=Turkey +CountryTM=Turkmenistan +CountryTC=Turks and Caicos Islands +CountryTV=Tuvalu +CountryUG=Uganda +CountryUA=Ukraine +CountryAE=United Arab Emirates +CountryUM=United States Minor Outlying Islands +CountryUY=Uruguay +CountryUZ=Uzbekistan +CountryVU=Vanuatu +CountryVE=Venezuela +CountryVN=Viet Nam +CountryVG=Virgin Islands, British +CountryVI=Virgin Islands, U.S. +CountryWF=Wallis and Futuna +CountryEH=Western Sahara +CountryYE=Yemen +CountryZM=Zambia +CountryZW=Zimbabwe +CountryGG=Guernsey +CountryIM=Isle of Man +CountryJE=Jersey +CountryME=Montenegro +CountryBL=Saint Barthelemy +CountryMF=Saint Martin + +##### Civilities ##### +CivilityMME=Mrs. +CivilityMR=Mr. +CivilityMLE=Ms. +CivilityMTRE=Master +CivilityDR=Doctor +##### Currencies ##### +Currencyeuros=Euros +CurrencyAUD=AU Dollars +CurrencySingAUD=AU Dollar +CurrencyCAD=CAN Dollars +CurrencySingCAD=CAN Dollar +CurrencyCHF=Swiss Francs +CurrencySingCHF=Swiss Franc +CurrencyEUR=Euros +CurrencySingEUR=Euro +CurrencyFRF=French Francs +CurrencySingFRF=French Franc +CurrencyGBP=GB Pounds +CurrencySingGBP=GB Pound +CurrencyINR=Indian rupees +CurrencySingINR=Indian rupee +CurrencyMAD=Dirham +CurrencySingMAD=Dirham +CurrencyMGA=Ariary +CurrencySingMGA=Ariary +CurrencyMUR=Mauritius rupees +CurrencySingMUR=Mauritius rupee +CurrencyNOK=Norwegian krones +CurrencySingNOK=Norwegian kronas +CurrencyTND=Tunisian dinars +CurrencySingTND=Tunisian dinar +CurrencyUSD=US Dollars +CurrencySingUSD=US Dollar +CurrencyUAH=Hryvnia +CurrencySingUAH=Hryvnia +CurrencyXAF=CFA Francs BEAC +CurrencySingXAF=CFA Franc BEAC +CurrencyXOF=CFA Francs BCEAO +CurrencySingXOF=CFA Franc BCEAO +CurrencyXPF=CFP Francs +CurrencySingXPF=CFP Franc +CurrencyCentEUR=cents +CurrencyCentSingEUR=cent +CurrencyCentINR=paisa +CurrencyCentSingINR=paise +CurrencyThousandthSingTND=thousandth +#### Input reasons ##### +DemandReasonTypeSRC_INTE=Internet +DemandReasonTypeSRC_CAMP_MAIL=Mailing campaign +DemandReasonTypeSRC_CAMP_EMAIL=EMailing campaign +DemandReasonTypeSRC_CAMP_PHO=Phone campaign +DemandReasonTypeSRC_CAMP_FAX=Fax campaign +DemandReasonTypeSRC_COMM=Commercial contact +DemandReasonTypeSRC_SHOP=Shop contact +DemandReasonTypeSRC_WOM=Word of mouth +DemandReasonTypeSRC_PARTNER=Partner +DemandReasonTypeSRC_EMPLOYEE=Employee +DemandReasonTypeSRC_SPONSORING=Sponsorship +DemandReasonTypeSRC_SRC_CUSTOMER=Incoming contact of a customer +#### Paper formats #### +PaperFormatEU4A0=Format 4A0 +PaperFormatEU2A0=Format 2A0 +PaperFormatEUA0=Format A0 +PaperFormatEUA1=Format A1 +PaperFormatEUA2=Format A2 +PaperFormatEUA3=Format A3 +PaperFormatEUA4=Format A4 +PaperFormatEUA5=Format A5 +PaperFormatEUA6=Format A6 +PaperFormatUSLETTER=Format Letter US +PaperFormatUSLEGAL=Format Legal US +PaperFormatUSEXECUTIVE=Format Executive US +PaperFormatUSLEDGER=Format Ledger/Tabloid +PaperFormatCAP1=Format P1 Canada +PaperFormatCAP2=Format P2 Canada +PaperFormatCAP3=Format P3 Canada +PaperFormatCAP4=Format P4 Canada +PaperFormatCAP5=Format P5 Canada +PaperFormatCAP6=Format P6 Canada +#### Expense report categories #### +ExpAutoCat=Car +ExpCycloCat=Moped +ExpMotoCat=Motorbike +ExpAuto3CV=3 CV +ExpAuto4CV=4 CV +ExpAuto5CV=5 CV +ExpAuto6CV=6 CV +ExpAuto7CV=7 CV +ExpAuto8CV=8 CV +ExpAuto9CV=9 CV +ExpAuto10CV=10 CV +ExpAuto11CV=11 CV +ExpAuto12CV=12 CV +ExpAuto3PCV=3 CV and more +ExpAuto4PCV=4 CV and more +ExpAuto5PCV=5 CV and more +ExpAuto6PCV=6 CV and more +ExpAuto7PCV=7 CV and more +ExpAuto8PCV=8 CV and more +ExpAuto9PCV=9 CV and more +ExpAuto10PCV=10 CV and more +ExpAuto11PCV=11 CV and more +ExpAuto12PCV=12 CV and more +ExpAuto13PCV=13 CV and more +ExpCyclo=Capacity lower to 50cm3 +ExpMoto12CV=Motorbike 1 or 2 CV +ExpMoto345CV=Motorbike 3, 4 or 5 CV +ExpMoto5PCV=Motorbike 5 CV and more diff --git a/htdocs/langs/am_ET/donations.lang b/htdocs/langs/am_ET/donations.lang new file mode 100644 index 00000000000..de4bdf68f03 --- /dev/null +++ b/htdocs/langs/am_ET/donations.lang @@ -0,0 +1,34 @@ +# Dolibarr language file - Source file is en_US - donations +Donation=Donation +Donations=Donations +DonationRef=Donation ref. +Donor=Donor +AddDonation=Create a donation +NewDonation=New donation +DeleteADonation=Delete a donation +ConfirmDeleteADonation=Are you sure you want to delete this donation? +PublicDonation=Public donation +DonationsArea=Donations area +DonationStatusPromiseNotValidated=Draft promise +DonationStatusPromiseValidated=Validated promise +DonationStatusPaid=Donation received +DonationStatusPromiseNotValidatedShort=Draft +DonationStatusPromiseValidatedShort=Validated +DonationStatusPaidShort=Received +DonationTitle=Donation receipt +DonationDate=Donation date +DonationDatePayment=Payment date +ValidPromess=Validate promise +DonationReceipt=Donation receipt +DonationsModels=Documents models for donation receipts +LastModifiedDonations=Latest %s modified donations +DonationRecipient=Donation recipient +IConfirmDonationReception=The recipient declare reception, as a donation, of the following amount +MinimumAmount=Minimum amount is %s +FreeTextOnDonations=Free text to show in footer +FrenchOptions=Options for France +DONATION_ART200=Show article 200 from CGI if you are concerned +DONATION_ART238=Show article 238 from CGI if you are concerned +DONATION_ART885=Show article 885 from CGI if you are concerned +DonationPayment=Donation payment +DonationValidated=Donation %s validated diff --git a/htdocs/langs/am_ET/ecm.lang b/htdocs/langs/am_ET/ecm.lang new file mode 100644 index 00000000000..369ac6dfdfa --- /dev/null +++ b/htdocs/langs/am_ET/ecm.lang @@ -0,0 +1,52 @@ +# Dolibarr language file - Source file is en_US - ecm +ECMNbOfDocs=No. of documents in directory +ECMSection=Directory +ECMSectionManual=Manual directory +ECMSectionAuto=Automatic directory +ECMSectionsManual=Manual tree +ECMSectionsAuto=Automatic tree +ECMSections=Directories +ECMRoot=ECM Root +ECMNewSection=New directory +ECMAddSection=Add directory +ECMCreationDate=Creation date +ECMNbOfFilesInDir=Number of files in directory +ECMNbOfSubDir=Number of sub-directories +ECMNbOfFilesInSubDir=Number of files in sub-directories +ECMCreationUser=Creator +ECMArea=DMS/ECM area +ECMAreaDesc=The DMS/ECM (Document Management System / Electronic Content Management) area allows you to save, share and search quickly all kind of documents in Dolibarr. +ECMAreaDesc2=* Automatic directories are filled automatically when adding documents from card of an element.
    * Manual directories can be used to save documents not linked to a particular element. +ECMSectionWasRemoved=Directory %s has been deleted. +ECMSectionWasCreated=Directory %s has been created. +ECMSearchByKeywords=Search by keywords +ECMSearchByEntity=Search by object +ECMSectionOfDocuments=Directories of documents +ECMTypeAuto=Automatic +ECMDocsBySocialContributions=Documents linked to social or fiscal taxes +ECMDocsByThirdParties=Documents linked to third parties +ECMDocsByProposals=Documents linked to proposals +ECMDocsByOrders=Documents linked to customers orders +ECMDocsByContracts=Documents linked to contracts +ECMDocsByInvoices=Documents linked to customers invoices +ECMDocsByProducts=Documents linked to products +ECMDocsByProjects=Documents linked to projects +ECMDocsByUsers=Documents linked to users +ECMDocsByInterventions=Documents linked to interventions +ECMDocsByExpenseReports=Documents linked to expense reports +ECMDocsByHolidays=Documents linked to holidays +ECMDocsBySupplierProposals=Documents linked to vendor proposals +ECMNoDirectoryYet=No directory created +ShowECMSection=Show directory +DeleteSection=Remove directory +ConfirmDeleteSection=Can you confirm you want to delete the directory %s? +ECMDirectoryForFiles=Relative directory for files +CannotRemoveDirectoryContainsFilesOrDirs=Removal not possible because it contains some files or sub-directories +CannotRemoveDirectoryContainsFiles=Removal not possible because it contains some files +ECMFileManager=File manager +ECMSelectASection=Select a directory in the tree... +DirNotSynchronizedSyncFirst=This directory seems to be created or modified outside ECM module. You must click on "Resync" button first to synchronize disk and database to get content of this directory. +ReSyncListOfDir=Resync list of directories +HashOfFileContent=Hash of file content +NoDirectoriesFound=No directories found +FileNotYetIndexedInDatabase=File not yet indexed into database (try to re-upload it) diff --git a/htdocs/langs/am_ET/errors.lang b/htdocs/langs/am_ET/errors.lang new file mode 100644 index 00000000000..7c67aeca8b5 --- /dev/null +++ b/htdocs/langs/am_ET/errors.lang @@ -0,0 +1,265 @@ +# Dolibarr language file - Source file is en_US - errors + +# No errors +NoErrorCommitIsDone=No error, we commit +# Errors +ErrorButCommitIsDone=Errors found but we validate despite this +ErrorBadEMail=Email %s is wrong +ErrorBadUrl=Url %s is wrong +ErrorBadValueForParamNotAString=Bad value for your parameter. It appends generally when translation is missing. +ErrorLoginAlreadyExists=Login %s already exists. +ErrorGroupAlreadyExists=Group %s already exists. +ErrorRecordNotFound=Record not found. +ErrorFailToCopyFile=Failed to copy file '%s' into '%s'. +ErrorFailToCopyDir=Failed to copy directory '%s' into '%s'. +ErrorFailToRenameFile=Failed to rename file '%s' into '%s'. +ErrorFailToDeleteFile=Failed to remove file '%s'. +ErrorFailToCreateFile=Failed to create file '%s'. +ErrorFailToRenameDir=Failed to rename directory '%s' into '%s'. +ErrorFailToCreateDir=Failed to create directory '%s'. +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=This bank account is a cash account, so it accepts payments of type cash only. +ErrorFromToAccountsMustDiffers=Source and targets bank accounts must be different. +ErrorBadThirdPartyName=Bad value for third-party name +ErrorProdIdIsMandatory=The %s is mandatory +ErrorBadCustomerCodeSyntax=Bad syntax for customer code +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. +ErrorCustomerCodeRequired=Customer code required +ErrorBarCodeRequired=Barcode required +ErrorCustomerCodeAlreadyUsed=Customer code already used +ErrorBarCodeAlreadyUsed=Barcode already used +ErrorPrefixRequired=Prefix required +ErrorBadSupplierCodeSyntax=Bad syntax for vendor code +ErrorSupplierCodeRequired=Vendor code required +ErrorSupplierCodeAlreadyUsed=Vendor code already used +ErrorBadParameters=Bad parameters +ErrorBadValueForParameter=Wrong value '%s' for parameter '%s' +ErrorBadImageFormat=Image file has not a supported format (Your PHP does not support functions to convert images of this format) +ErrorBadDateFormat=Value '%s' has wrong date format +ErrorWrongDate=Date is not correct! +ErrorFailedToWriteInDir=Failed to write in directory %s +ErrorFoundBadEmailInFile=Found incorrect email syntax for %s lines in file (example line %s with email=%s) +ErrorUserCannotBeDelete=User cannot be deleted. Maybe it is associated to Dolibarr entities. +ErrorFieldsRequired=Some required fields were not filled. +ErrorSubjectIsRequired=The email topic is required +ErrorFailedToCreateDir=Failed to create a directory. Check that Web server user has permissions to write into Dolibarr documents directory. If parameter safe_mode is enabled on this PHP, check that Dolibarr php files owns to web server user (or group). +ErrorNoMailDefinedForThisUser=No mail defined for this user +ErrorFeatureNeedJavascript=This feature need javascript to be activated to work. Change this in setup - display. +ErrorTopMenuMustHaveAParentWithId0=A menu of type 'Top' can't have a parent menu. Put 0 in parent menu or choose a menu of type 'Left'. +ErrorLeftMenuMustHaveAParentId=A menu of type 'Left' must have a parent id. +ErrorFileNotFound=File %s not found (Bad path, wrong permissions or access denied by PHP openbasedir or safe_mode parameter) +ErrorDirNotFound=Directory %s not found (Bad path, wrong permissions or access denied by PHP openbasedir or safe_mode parameter) +ErrorFunctionNotAvailableInPHP=Function %s is required for this feature but is not available in this version/setup of PHP. +ErrorDirAlreadyExists=A directory with this name already exists. +ErrorFileAlreadyExists=A file with this name already exists. +ErrorPartialFile=File not received completely by server. +ErrorNoTmpDir=Temporary directy %s does not exists. +ErrorUploadBlockedByAddon=Upload blocked by a PHP/Apache plugin. +ErrorFileSizeTooLarge=File size is too large. +ErrorFieldTooLong=Field %s is too long. +ErrorSizeTooLongForIntType=Size too long for int type (%s digits maximum) +ErrorSizeTooLongForVarcharType=Size too long for string type (%s chars maximum) +ErrorNoValueForSelectType=Please fill value for select list +ErrorNoValueForCheckBoxType=Please fill value for checkbox list +ErrorNoValueForRadioType=Please fill value for radio list +ErrorBadFormatValueList=The list value cannot have more than one comma: %s, but need at least one: key,value +ErrorFieldCanNotContainSpecialCharacters=The field %s must not contains special characters. +ErrorFieldCanNotContainSpecialNorUpperCharacters=The field %s must not contain special characters, nor upper case characters and cannot contain only numbers. +ErrorFieldMustHaveXChar=The field %s must have at least %s characters. +ErrorNoAccountancyModuleLoaded=No accountancy module activated +ErrorExportDuplicateProfil=This profile name already exists for this export set. +ErrorLDAPSetupNotComplete=Dolibarr-LDAP matching is not complete. +ErrorLDAPMakeManualTest=A .ldif file has been generated in directory %s. Try to load it manually from command line to have more information on errors. +ErrorCantSaveADoneUserWithZeroPercentage=Can't save an action with "status not started" if field "done by" is also filled. +ErrorRefAlreadyExists=Ref used for creation already exists. +ErrorPleaseTypeBankTransactionReportName=Please enter the bank statement name where the entry has to be reported (Format YYYYMM or YYYYMMDD) +ErrorRecordHasChildren=Failed to delete record since it has some child records. +ErrorRecordHasAtLeastOneChildOfType=Object has at least one child of type %s +ErrorRecordIsUsedCantDelete=Can't delete record. It is already used or included into another object. +ErrorModuleRequireJavascript=Javascript must not be disabled to have this feature working. To enable/disable Javascript, go to menu Home->Setup->Display. +ErrorPasswordsMustMatch=Both typed passwords must match each other +ErrorContactEMail=A technical error occured. Please, contact administrator to following email %s and provide the error code %s in your message, or add a screen copy of this page. +ErrorWrongValueForField=Field %s: '%s' does not match regex rule %s +ErrorFieldValueNotIn=Field %s: '%s' is not a value found in field %s of %s +ErrorFieldRefNotIn=Field %s: '%s' is not a %s existing ref +ErrorsOnXLines=%s errors found +ErrorFileIsInfectedWithAVirus=The antivirus program was not able to validate the file (file might be infected by a virus) +ErrorSpecialCharNotAllowedForField=Special characters are not allowed for field "%s" +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 %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 +ErrorMaxNumberReachForThisMask=Maximum number reached for this mask +ErrorCounterMustHaveMoreThan3Digits=Counter must have more than 3 digits +ErrorSelectAtLeastOne=Error, select at least one entry. +ErrorDeleteNotPossibleLineIsConsolidated=Delete not possible because record is linked to a bank transaction that is conciliated +ErrorProdIdAlreadyExist=%s is assigned to another third +ErrorFailedToSendPassword=Failed to send password +ErrorFailedToLoadRSSFile=Fails to get RSS feed. Try to add constant MAIN_SIMPLEXMLLOAD_DEBUG if error messages does not provide enough information. +ErrorForbidden=Access denied.
    You try to access to a page, area or feature of a disabled module or without being in an authenticated session or that is not allowed to your user. +ErrorForbidden2=Permission for this login can be defined by your Dolibarr administrator from menu %s->%s. +ErrorForbidden3=It seems that Dolibarr is not used through an authenticated session. Take a look at Dolibarr setup documentation to know how to manage authentications (htaccess, mod_auth or other...). +ErrorNoImagickReadimage=Class Imagick is not found in this PHP. No preview can be available. Administrators can disable this tab from menu Setup - Display. +ErrorRecordAlreadyExists=Record already exists +ErrorLabelAlreadyExists=This label already exists +ErrorCantReadFile=Failed to read file '%s' +ErrorCantReadDir=Failed to read directory '%s' +ErrorBadLoginPassword=Bad value for login or password +ErrorLoginDisabled=Your account has been disabled +ErrorFailedToRunExternalCommand=Failed to run external command. Check it is available and runnable by your PHP server. If PHP Safe Mode is enabled, check that command is inside a directory defined by parameter safe_mode_exec_dir. +ErrorFailedToChangePassword=Failed to change password +ErrorLoginDoesNotExists=User with login %s could not be found. +ErrorLoginHasNoEmail=This user has no email address. Process aborted. +ErrorBadValueForCode=Bad value for security code. Try again with new value... +ErrorBothFieldCantBeNegative=Fields %s and %s can't be both negative +ErrorFieldCantBeNegativeOnInvoice=Field %s cannot be negative on this type of invoice. If you need to add a discount line, just create the discount first (from field '%s' in thirdparty card) and apply it to the invoice. +ErrorLinesCantBeNegativeForOneVATRate=Total of lines can't be negative for a given VAT rate. +ErrorLinesCantBeNegativeOnDeposits=Lines can't be negative in a deposit. You will face problems when you will need to consume the deposit in final invoice if you do so. +ErrorQtyForCustomerInvoiceCantBeNegative=Quantity for line into customer invoices can't be negative +ErrorWebServerUserHasNotPermission=User account %s used to execute web server has no permission for that +ErrorNoActivatedBarcode=No barcode type activated +ErrUnzipFails=Failed to unzip %s with ZipArchive +ErrNoZipEngine=No engine to zip/unzip %s file in this PHP +ErrorFileMustBeADolibarrPackage=The file %s must be a Dolibarr zip package +ErrorModuleFileRequired=You must select a Dolibarr module package file +ErrorPhpCurlNotInstalled=The PHP CURL is not installed, this is essential to talk with Paypal +ErrorFailedToAddToMailmanList=Failed to add record %s to Mailman list %s or SPIP base +ErrorFailedToRemoveToMailmanList=Failed to remove record %s to Mailman list %s or SPIP base +ErrorNewValueCantMatchOldValue=New value can't be equal to old one +ErrorFailedToValidatePasswordReset=Failed to reinit password. May be the reinit was already done (this link can be used only one time). If not, try to restart the reinit process. +ErrorToConnectToMysqlCheckInstance=Connect to database fails. Check database server is running (for example, with mysql/mariadb, you can launch it from command line with 'sudo service mysql start'). +ErrorFailedToAddContact=Failed to add contact +ErrorDateMustBeBeforeToday=The date cannot be greater than today +ErrorPaymentModeDefinedToWithoutSetup=A payment mode was set to type %s but setup of module Invoice was not completed to define information to show for this payment mode. +ErrorPHPNeedModule=Error, your PHP must have module %s installed to use this feature. +ErrorOpenIDSetupNotComplete=You setup Dolibarr config file to allow OpenID authentication, but URL of OpenID service is not defined into constant %s +ErrorWarehouseMustDiffers=Source and target warehouses must differs +ErrorBadFormat=Bad format! +ErrorMemberNotLinkedToAThirpartyLinkOrCreateFirst=Error, this member is not yet linked to any third party. Link member to an existing third party or create a new third party before creating subscription with invoice. +ErrorThereIsSomeDeliveries=Error, there is some deliveries linked to this shipment. Deletion refused. +ErrorCantDeletePaymentReconciliated=Can't delete a payment that had generated a bank entry that was reconciled +ErrorCantDeletePaymentSharedWithPayedInvoice=Can't delete a payment shared by at least one invoice with status Paid +ErrorPriceExpression1=Cannot assign to constant '%s' +ErrorPriceExpression2=Cannot redefine built-in function '%s' +ErrorPriceExpression3=Undefined variable '%s' in function definition +ErrorPriceExpression4=Illegal character '%s' +ErrorPriceExpression5=Unexpected '%s' +ErrorPriceExpression6=Wrong number of arguments (%s given, %s expected) +ErrorPriceExpression8=Unexpected operator '%s' +ErrorPriceExpression9=An unexpected error occured +ErrorPriceExpression10=Operator '%s' lacks operand +ErrorPriceExpression11=Expecting '%s' +ErrorPriceExpression14=Division by zero +ErrorPriceExpression17=Undefined variable '%s' +ErrorPriceExpression19=Expression not found +ErrorPriceExpression20=Empty expression +ErrorPriceExpression21=Empty result '%s' +ErrorPriceExpression22=Negative result '%s' +ErrorPriceExpression23=Unknown or non set variable '%s' in %s +ErrorPriceExpression24=Variable '%s' exists but has no value +ErrorPriceExpressionInternal=Internal error '%s' +ErrorPriceExpressionUnknown=Unknown error '%s' +ErrorSrcAndTargetWarehouseMustDiffers=Source and target warehouses must differs +ErrorTryToMakeMoveOnProductRequiringBatchData=Error, trying to make a stock movement without lot/serial information, on product '%s' requiring lot/serial information +ErrorCantSetReceptionToTotalDoneWithReceptionToApprove=All recorded receptions must first be verified (approved or denied) before being allowed to do this action +ErrorCantSetReceptionToTotalDoneWithReceptionDenied=All recorded receptions must first be verified (approved) before being allowed to do this action +ErrorGlobalVariableUpdater0=HTTP request failed with error '%s' +ErrorGlobalVariableUpdater1=Invalid JSON format '%s' +ErrorGlobalVariableUpdater2=Missing parameter '%s' +ErrorGlobalVariableUpdater3=The requested data was not found in result +ErrorGlobalVariableUpdater4=SOAP client failed with error '%s' +ErrorGlobalVariableUpdater5=No global variable selected +ErrorFieldMustBeANumeric=Field %s must be a numeric value +ErrorMandatoryParametersNotProvided=Mandatory parameter(s) not provided +ErrorOppStatusRequiredIfAmount=You set an estimated amount for this lead. So you must also enter it's status. +ErrorFailedToLoadModuleDescriptorForXXX=Failed to load module descriptor class for %s +ErrorBadDefinitionOfMenuArrayInModuleDescriptor=Bad Definition Of Menu Array In Module Descriptor (bad value for key fk_menu) +ErrorSavingChanges=An error has occurred when saving the changes +ErrorWarehouseRequiredIntoShipmentLine=Warehouse is required on the line to ship +ErrorFileMustHaveFormat=File must have format %s +ErrorSupplierCountryIsNotDefined=Country for this vendor is not defined. Correct this first. +ErrorsThirdpartyMerge=Failed to merge the two records. Request canceled. +ErrorStockIsNotEnoughToAddProductOnOrder=Stock is not enough for product %s to add it into a new order. +ErrorStockIsNotEnoughToAddProductOnInvoice=Stock is not enough for product %s to add it into a new invoice. +ErrorStockIsNotEnoughToAddProductOnShipment=Stock is not enough for product %s to add it into a new shipment. +ErrorStockIsNotEnoughToAddProductOnProposal=Stock is not enough for product %s to add it into a new proposal. +ErrorFailedToLoadLoginFileForMode=Failed to get the login key for mode '%s'. +ErrorModuleNotFound=File of module was not found. +ErrorFieldAccountNotDefinedForBankLine=Value for Accounting account not defined for source line id %s (%s) +ErrorFieldAccountNotDefinedForInvoiceLine=Value for Accounting account not defined for invoice id %s (%s) +ErrorFieldAccountNotDefinedForLine=Value for Accounting account not defined for the line (%s) +ErrorBankStatementNameMustFollowRegex=Error, bank statement name must follow the following syntax rule %s +ErrorPhpMailDelivery=Check that you don't use a too high number of recipients and that your email content is not similar to a Spam. Ask also your administrator to check firewall and server logs files for a more complete information. +ErrorUserNotAssignedToTask=User must be assigned to task to be able to enter time consumed. +ErrorTaskAlreadyAssigned=Task already assigned to user +ErrorModuleFileSeemsToHaveAWrongFormat=The module package seems to have a wrong format. +ErrorModuleFileSeemsToHaveAWrongFormat2=At least one mandatory directory must exists into zip of module: %s or %s +ErrorFilenameDosNotMatchDolibarrPackageRules=The name of the module package (%s) does not match expected name syntax: %s +ErrorDuplicateTrigger=Error, duplicate trigger name %s. Already loaded from %s. +ErrorNoWarehouseDefined=Error, no warehouses defined. +ErrorBadLinkSourceSetButBadValueForRef=The link you use is not valid. A 'source' for payment is defined, but value for 'ref' is not valid. +ErrorTooManyErrorsProcessStopped=Too many errors. Process was stopped. +ErrorMassValidationNotAllowedWhenStockIncreaseOnAction=Mass validation is not possible when option to increase/decrease stock is set on this action (you must validate one by one so you can define the warehouse to increase/decrease) +ErrorObjectMustHaveStatusDraftToBeValidated=Object %s must have status 'Draft' to be validated. +ErrorObjectMustHaveLinesToBeValidated=Object %s must have lines to be validated. +ErrorOnlyInvoiceValidatedCanBeSentInMassAction=Only validated invoices can be sent using the "Send by email" mass action. +ErrorChooseBetweenFreeEntryOrPredefinedProduct=You must choose if article is a predefined product or not +ErrorDiscountLargerThanRemainToPaySplitItBefore=The discount you try to apply is larger than remain to pay. Split the discount in 2 smaller discounts before. +ErrorFileNotFoundWithSharedLink=File was not found. May be the share key was modified or file was removed recently. +ErrorProductBarCodeAlreadyExists=The product barcode %s already exists on another product reference. +ErrorNoteAlsoThatSubProductCantBeFollowedByLot=Note also that using virtual product to have auto increase/decrease of subproducts is not possible when at least one subproduct (or subproduct of subproducts) needs a serial/lot number. +ErrorDescRequiredForFreeProductLines=Description is mandatory for lines with free product +ErrorAPageWithThisNameOrAliasAlreadyExists=The page/container %s has the same name or alternative alias that the one your try to use +ErrorDuringChartLoad=Error when loading chart of accounts. If few accounts were not loaded, you can still enter them manually. +ErrorBadSyntaxForParamKeyForContent=Bad syntax for param keyforcontent. Must have a value starting with %s or %s +ErrorVariableKeyForContentMustBeSet=Error, the constant with name %s (with text content to show) or %s (with external url to show) must be set. +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. +ErrorObjectMustHaveStatusActiveToBeDisabled=Objects must have status 'Active' to be disabled +ErrorObjectMustHaveStatusDraftOrDisabledToBeActivated=Objects must have status 'Draft' or 'Disabled' to be enabled +ErrorNoFieldWithAttributeShowoncombobox=No fields has property 'showoncombobox' into definition of object '%s'. No way to show the combolist. +ErrorFieldRequiredForProduct=Field '%s' is required for product %s +ProblemIsInSetupOfTerminal=Problem is in setup of terminal %s. +ErrorAddAtLeastOneLineFirst=Add at least one line first +ErrorRecordAlreadyInAccountingDeletionNotPossible=Error, record is already transferred in accounting, deletion is not possible. +ErrorLanguageMandatoryIfPageSetAsTranslationOfAnother=Error, language is mandatory if you set the page as a translation of another one. +ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated page is same than this one. +ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". +ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". +ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty +# 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 +WarningSafeModeOnCheckExecDir=Warning, PHP option safe_mode is on so command must be stored inside a directory declared by php parameter safe_mode_exec_dir. +WarningBookmarkAlreadyExists=A bookmark with this title or this target (URL) already exists. +WarningPassIsEmpty=Warning, database password is empty. This is a security hole. You should add a password to your database and change your conf.php file to reflect this. +WarningConfFileMustBeReadOnly=Warning, your config file (htdocs/conf/conf.php) can be overwritten by the web server. This is a serious security hole. Modify permissions on file to be in read only mode for operating system user used by Web server. If you use Windows and FAT format for your disk, you must know that this file system does not allow to add permissions on file, so can't be completely safe. +WarningsOnXLines=Warnings on %s source record(s) +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). +WarningCloseAlways=Warning, closing is done even if amount differs between source and target elements. Enable this feature with caution. +WarningUsingThisBoxSlowDown=Warning, using this box slow down seriously all pages showing the box. +WarningClickToDialUserSetupNotComplete=Setup of ClickToDial information for your user are not complete (see tab ClickToDial onto your user card). +WarningFeatureDisabledWithDisplayOptimizedForBlindNoJs=Feature disabled when display setup is optimized for blind person or text browsers. +WarningPaymentDateLowerThanInvoiceDate=Payment date (%s) is earlier than invoice date (%s) for invoice %s. +WarningTooManyDataPleaseUseMoreFilters=Too many data (more than %s lines). Please use more filters or set the constant %s to a higher limit. +WarningSomeLinesWithNullHourlyRate=Some times were recorded by some users while their hourly rate was not defined. A value of 0 %s per hour was used but this may result in wrong valuation of time spent. +WarningYourLoginWasModifiedPleaseLogin=Your login was modified. For security purpose you will have to login with your new login before next action. +WarningAnEntryAlreadyExistForTransKey=An entry already exists for the translation key for this language +WarningNumberOfRecipientIsRestrictedInMassAction=Warning, number of different recipient is limited to %s when using the mass actions on lists +WarningDateOfLineMustBeInExpenseReportRange=Warning, the date of line is not in the range of the expense report +WarningProjectClosed=Project is closed. You must re-open it first. +WarningSomeBankTransactionByChequeWereRemovedAfter=Some bank transaction were removed after that the receipt including them were generated. So nb of cheques and total of receipt may differ from number and total in list. diff --git a/htdocs/langs/am_ET/exports.lang b/htdocs/langs/am_ET/exports.lang new file mode 100644 index 00000000000..3549e3f8b23 --- /dev/null +++ b/htdocs/langs/am_ET/exports.lang @@ -0,0 +1,135 @@ +# Dolibarr language file - Source file is en_US - exports +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 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 your selections as an export profile/template (for reuse). +SaveImportModel=Save this import profile (for reuse) ... +ExportModelName=Export profile name +ExportModelSaved=Export profile saved as %s. +ExportableFields=Exportable fields +ExportedFields=Exported fields +ImportModelName=Import profile name +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 the file format in the combo box and click on "Generate" to build the export file... +AvailableFormats=Available Formats +LibraryShort=Library +ExportCsvSeparator=Csv caracter separator +ImportCsvSeparator=Csv caracter separator +Step=Step +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 extract data +LineId=Id of line +LineLabel=Label of line +LineDescription=Description of line +LineUnitPrice=Unit price of line +LineVATRate=VAT Rate of line +LineQty=Quantity for line +LineTotalHT=Amount excl. tax for line +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 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) +Field=Field +NoFields=No fields +MoveField=Move field column number %s +ExampleOfImportFile=Example_of_import_file +SaveImportProfile=Save this import profile +ErrorImportDuplicateProfil=Failed to save this import profile with this name. An existing profile already exists with this name. +TablesTarget=Targeted tables +FieldsTarget=Targeted fields +FieldTarget=Targeted field +FieldSource=Source field +NbOfSourceLines=Number of lines in source file +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=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 correct all errors before running the definitive import. +FileWasImported=File was imported with number %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 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 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 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 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 +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=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 +ComputedField=Computed field +## filters +SelectFilterFields=If you want to filter on some values, just input values here. +FilteredFields=Filtered fields +FilteredFieldsValues=Value for filter +FormatControlRule=Format control rule +## imports updates +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/am_ET/externalsite.lang b/htdocs/langs/am_ET/externalsite.lang new file mode 100644 index 00000000000..da4853df0df --- /dev/null +++ b/htdocs/langs/am_ET/externalsite.lang @@ -0,0 +1,5 @@ +# Dolibarr language file - Source file is en_US - externalsite +ExternalSiteSetup=Setup link to external website +ExternalSiteURL=External Site URL +ExternalSiteModuleNotComplete=Module ExternalSite was not configured properly. +ExampleMyMenuEntry=My menu entry diff --git a/htdocs/langs/am_ET/ftp.lang b/htdocs/langs/am_ET/ftp.lang new file mode 100644 index 00000000000..d80b87c2715 --- /dev/null +++ b/htdocs/langs/am_ET/ftp.lang @@ -0,0 +1,14 @@ +# Dolibarr language file - Source file is en_US - ftp +FTPClientSetup=FTP Client module setup +NewFTPClient=New FTP connection setup +FTPArea=FTP Area +FTPAreaDesc=This screen shows a view of an FTP server. +SetupOfFTPClientModuleNotComplete=The setup of the FTP client module seems to be incomplete +FTPFeatureNotSupportedByYourPHP=Your PHP does not support FTP functions +FailedToConnectToFTPServer=Failed to connect to FTP server (server %s, port %s) +FailedToConnectToFTPServerWithCredentials=Failed to login to FTP server with defined login/password +FTPFailedToRemoveFile=Failed to remove file %s. +FTPFailedToRemoveDir=Failed to remove directory %s: check permissions and that the directory is empty. +FTPPassiveMode=Passive mode +ChooseAFTPEntryIntoMenu=Choose a FTP site from the menu... +FailedToGetFile=Failed to get files %s diff --git a/htdocs/langs/am_ET/help.lang b/htdocs/langs/am_ET/help.lang new file mode 100644 index 00000000000..048de16d3c0 --- /dev/null +++ b/htdocs/langs/am_ET/help.lang @@ -0,0 +1,23 @@ +# Dolibarr language file - Source file is en_US - help +CommunitySupport=Forum/Wiki support +EMailSupport=Emails support +RemoteControlSupport=Online real-time / remote support +OtherSupport=Other support +ToSeeListOfAvailableRessources=To contact/see available resources: +HelpCenter=Help Center +DolibarrHelpCenter=Dolibarr Help and Support Center +ToGoBackToDolibarr=Otherwise, click here to continue to use Dolibarr. +TypeOfSupport=Type of support +TypeSupportCommunauty=Community (free) +TypeSupportCommercial=Commercial +TypeOfHelp=Type +NeedHelpCenter=Need help or support? +Efficiency=Efficiency +TypeHelpOnly=Help only +TypeHelpDev=Help+Development +TypeHelpDevForm=Help+Development+Training +BackToHelpCenter=Otherwise, go back to Help center home page. +LinkToGoldMember=You can call one of the trainers preselected by Dolibarr for your language (%s) by clicking their Widget (status and maximum price are automatically updated): +PossibleLanguages=Supported languages +SubscribeToFoundation=Help the Dolibarr project, subscribe to the foundation +SeeOfficalSupport=For official Dolibarr support in your language:
    %s diff --git a/htdocs/langs/am_ET/holiday.lang b/htdocs/langs/am_ET/holiday.lang new file mode 100644 index 00000000000..82de49f9c5f --- /dev/null +++ b/htdocs/langs/am_ET/holiday.lang @@ -0,0 +1,133 @@ +# Dolibarr language file - Source file is en_US - holiday +HRM=HRM +Holidays=Leave +CPTitreMenu=Leave +MenuReportMonth=Monthly statement +MenuAddCP=New leave request +NotActiveModCP=You must enable the module Leave to view this page. +AddCP=Make a leave request +DateDebCP=Start date +DateFinCP=End date +DraftCP=Draft +ToReviewCP=Awaiting approval +ApprovedCP=Approved +CancelCP=Canceled +RefuseCP=Refused +ValidatorCP=Approbator +ListeCP=List of leave +LeaveId=Leave ID +ReviewedByCP=Will be approved by +UserID=User ID +UserForApprovalID=User for approval ID +UserForApprovalFirstname=First name of approval user +UserForApprovalLastname=Last name of approval user +UserForApprovalLogin=Login of approval user +DescCP=Description +SendRequestCP=Create leave request +DelayToRequestCP=Leave requests must be made at least %s day(s) before them. +MenuConfCP=Balance of leave +SoldeCPUser=Leave balance is %s days. +ErrorEndDateCP=You must select an end date greater than the start date. +ErrorSQLCreateCP=An SQL error occurred during the creation: +ErrorIDFicheCP=An error has occurred, the leave request does not exist. +ReturnCP=Return to previous page +ErrorUserViewCP=You are not authorized to read this leave request. +InfosWorkflowCP=Information Workflow +RequestByCP=Requested by +TitreRequestCP=Leave request +TypeOfLeaveId=Type of leave ID +TypeOfLeaveCode=Type of leave code +TypeOfLeaveLabel=Type of leave label +NbUseDaysCP=Number of days of vacation consumed +NbUseDaysCPHelp=The calculation takes into account the non working days and the holidays defined in the dictionary. +NbUseDaysCPShort=Days consumed +NbUseDaysCPShortInMonth=Days consumed in month +DayIsANonWorkingDay=%s is a non working day +DateStartInMonth=Start date in month +DateEndInMonth=End date in month +EditCP=Edit +DeleteCP=Delete +ActionRefuseCP=Refuse +ActionCancelCP=Cancel +StatutCP=Status +TitleDeleteCP=Delete the leave request +ConfirmDeleteCP=Confirm the deletion of this leave request? +ErrorCantDeleteCP=Error you don't have the right to delete this leave request. +CantCreateCP=You don't have the right to make leave requests. +InvalidValidatorCP=You must choose an approbator to your leave request. +NoDateDebut=You must select a start date. +NoDateFin=You must select an end date. +ErrorDureeCP=Your leave request does not contain working day. +TitleValidCP=Approve the leave request +ConfirmValidCP=Are you sure you want to approve the leave request? +DateValidCP=Date approved +TitleToValidCP=Send leave request +ConfirmToValidCP=Are you sure you want to send the leave request? +TitleRefuseCP=Refuse the leave request +ConfirmRefuseCP=Are you sure you want to refuse the leave request? +NoMotifRefuseCP=You must choose a reason for refusing the request. +TitleCancelCP=Cancel the leave request +ConfirmCancelCP=Are you sure you want to cancel the leave request? +DetailRefusCP=Reason for refusal +DateRefusCP=Date of refusal +DateCancelCP=Date of cancellation +DefineEventUserCP=Assign an exceptional leave for a user +addEventToUserCP=Assign leave +NotTheAssignedApprover=You are not the assigned approver +MotifCP=Reason +UserCP=User +ErrorAddEventToUserCP=An error occurred while adding the exceptional leave. +AddEventToUserOkCP=The addition of the exceptional leave has been completed. +MenuLogCP=View change logs +LogCP=Log of updates of available vacation days +ActionByCP=Performed by +UserUpdateCP=For the user +PrevSoldeCP=Previous Balance +NewSoldeCP=New Balance +alreadyCPexist=A leave request has already been done on this period. +FirstDayOfHoliday=First day of vacation +LastDayOfHoliday=Last day of vacation +BoxTitleLastLeaveRequests=Latest %s modified leave requests +HolidaysMonthlyUpdate=Monthly update +ManualUpdate=Manual update +HolidaysCancelation=Leave request cancelation +EmployeeLastname=Employee last name +EmployeeFirstname=Employee first name +TypeWasDisabledOrRemoved=Leave type (id %s) was disabled or removed +LastHolidays=Latest %s leave requests +AllHolidays=All leave requests +HalfDay=Half day +NotTheAssignedApprover=You are not the assigned approver +LEAVE_PAID=Paid vacation +LEAVE_SICK=Sick leave +LEAVE_OTHER=Other leave +LEAVE_PAID_FR=Paid vacation +## Configuration du Module ## +LastUpdateCP=Latest automatic update of leave allocation +MonthOfLastMonthlyUpdate=Month of latest automatic update of leave allocation +UpdateConfCPOK=Updated successfully. +Module27130Name= Management of leave requests +Module27130Desc= Management of leave requests +ErrorMailNotSend=An error occurred while sending email: +NoticePeriod=Notice period +#Messages +HolidaysToValidate=Validate leave requests +HolidaysToValidateBody=Below is a leave request to validate +HolidaysToValidateDelay=This leave request will take place within a period of less than %s days. +HolidaysToValidateAlertSolde=The user who made this leave request does not have enough available days. +HolidaysValidated=Validated leave requests +HolidaysValidatedBody=Your leave request for %s to %s has been validated. +HolidaysRefused=Request denied +HolidaysRefusedBody=Your leave request for %s to %s has been denied for the following reason: +HolidaysCanceled=Canceled leaved request +HolidaysCanceledBody=Your leave request for %s to %s has been canceled. +FollowedByACounter=1: This type of leave need to be followed by a counter. Counter is incremented manually or automatically and when a leave request is validated, counter is decremented.
    0: Not followed by a counter. +NoLeaveWithCounterDefined=There is no leave types defined that need to be followed by a counter +GoIntoDictionaryHolidayTypes=Go into Home - Setup - Dictionaries - Type of leave to setup the different types of leaves. +HolidaySetup=Setup of module Holiday +HolidaysNumberingModules=Leave requests numbering models +TemplatePDFHolidays=Template for leave requests PDF +FreeLegalTextOnHolidays=Free text on PDF +WatermarkOnDraftHolidayCards=Watermarks on draft leave requests +HolidaysToApprove=Holidays to approve +NobodyHasPermissionToValidateHolidays=Nobody has permission to validate holidays diff --git a/htdocs/langs/am_ET/hrm.lang b/htdocs/langs/am_ET/hrm.lang new file mode 100644 index 00000000000..3697c47e30d --- /dev/null +++ b/htdocs/langs/am_ET/hrm.lang @@ -0,0 +1,18 @@ +# Dolibarr language file - en_US - hrm +# Admin +HRM_EMAIL_EXTERNAL_SERVICE=Email to prevent HRM external service +Establishments=Establishments +Establishment=Establishment +NewEstablishment=New establishment +DeleteEstablishment=Delete establishment +ConfirmDeleteEstablishment=Are you sure you wish to delete this establishment? +OpenEtablishment=Open establishment +CloseEtablishment=Close establishment +# Dictionary +DictionaryPublicHolidays=HRM - Public holidays +DictionaryDepartment=HRM - Department list +DictionaryFunction=HRM - Function list +# Module +Employees=Employees +Employee=Employee +NewEmployee=New employee diff --git a/htdocs/langs/am_ET/install.lang b/htdocs/langs/am_ET/install.lang new file mode 100644 index 00000000000..f67dff57184 --- /dev/null +++ b/htdocs/langs/am_ET/install.lang @@ -0,0 +1,223 @@ +# Dolibarr language file - Source file is en_US - install +InstallEasy=Just follow the instructions step by step. +MiscellaneousChecks=Prerequisites check +ConfFileExists=Configuration file %s exists. +ConfFileDoesNotExistsAndCouldNotBeCreated=Configuration file %s does not exist and could not be created! +ConfFileCouldBeCreated=Configuration file %s could be created. +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=Configuration file %s is writable. +ConfFileMustBeAFileNotADir=Configuration file %s must be a file, not a directory. +ConfFileReload=Reloading parameters from configuration file. +PHPSupportSessions=This PHP supports sessions. +PHPSupportPOSTGETOk=This PHP supports variables POST and 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. +PHPSupportCalendar=This PHP supports calendars extensions. +PHPSupportUTF8=This PHP supports UTF8 functions. +PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. +PHPSupport=This PHP supports %s functions. +PHPMemoryOK=Your PHP max session memory is set to %s. This should be enough. +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. +ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. +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. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. +ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. +ErrorDirDoesNotExists=Directory %s does not exist. +ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. +ErrorWrongValueForParameter=You may have typed a wrong value for parameter '%s'. +ErrorFailedToCreateDatabase=Failed to create database '%s'. +ErrorFailedToConnectToDatabase=Failed to connect to database '%s'. +ErrorDatabaseVersionTooLow=Database version (%s) too old. Version %s or higher is required. +ErrorPHPVersionTooLow=PHP version too old. Version %s is required. +ErrorConnectedButDatabaseNotFound=Connection to server successful but database '%s' not found. +ErrorDatabaseAlreadyExists=Database '%s' already exists. +IfDatabaseNotExistsGoBackAndUncheckCreate=If the database does not exist, go back and check option "Create database". +IfDatabaseExistsGoBackAndCheckCreate=If database already exists, go back and uncheck "Create database" option. +WarningBrowserTooOld=Version of browser is too old. Upgrading your browser to a recent version of Firefox, Chrome or Opera is highly recommended. +PHPVersion=PHP Version +License=Using license +ConfigurationFile=Configuration file +WebPagesDirectory=Directory where web pages are stored +DocumentsDirectory=Directory to store uploaded and generated documents +URLRoot=URL Root +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=Driver type +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. +DatabaseServer=Database server +DatabaseName=Database name +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=Password for Dolibarr database owner. +CreateDatabase=Create database +CreateUser=Create user account or grant user account permission on the Dolibarr database +DatabaseSuperUserAccess=Database server - Superuser access +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 +ServerConnection=Server connection +DatabaseCreation=Database creation +CreateDatabaseObjects=Database objects creation +ReferenceDataLoading=Reference data loading +TablesAndPrimaryKeysCreation=Tables and Primary keys creation +CreateTableAndPrimaryKey=Create table %s +CreateOtherKeysForTable=Create foreign keys and indexes for table %s +OtherKeysCreation=Foreign keys and indexes creation +FunctionsCreation=Functions creation +AdminAccountCreation=Administrator login creation +PleaseTypePassword=Please type a password, empty passwords are not allowed! +PleaseTypeALogin=Please type a login! +PasswordsMismatch=Passwords differs, please try again! +SetupEnd=End of setup +SystemIsInstalled=This installation is complete. +SystemIsUpgraded=Dolibarr has been upgraded successfully. +YouNeedToPersonalizeSetup=You need to configure Dolibarr to suit your needs (appearance, features, ...). To do this, please follow the link below: +AdminLoginCreatedSuccessfuly=Dolibarr administrator login '%s' created successfully. +GoToDolibarr=Go to Dolibarr +GoToSetupArea=Go to Dolibarr (setup area) +MigrationNotFinished=The database version is not completely up to date: run the upgrade process again. +GoToUpgradePage=Go to upgrade page again +WithNoSlashAtTheEnd=Without the slash "/" at the end +DirectoryRecommendation=IMPORTANT: You must use a directory that is outside of the web pages (so do not use a subdirectory of previous parameter). +LoginAlreadyExists=Already exists +DolibarrAdminLogin=Dolibarr admin login +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 +ChoosedMigrateScript=Choose migration script +DataMigration=Database migration (data) +DatabaseMigration=Database migration (structure + some data) +ProcessMigrateScript=Script processing +ChooseYourSetupMode=Choose your setup mode and click "Start"... +FreshInstall=Fresh install +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=Upgrade +UpgradeDesc=Use this mode if you have replaced old Dolibarr files with files from a newer version. This will upgrade your database and data. +Start=Start +InstallNotAllowed=Setup not allowed by conf.php permissions +YouMustCreateWithPermission=You must create file %s and set write permissions on it for the web server during install process. +CorrectProblemAndReloadPage=Please fix the problem and press F5 to reload the page. +AlreadyDone=Already migrated +DatabaseVersion=Database version +ServerVersion=Database server version +YouMustCreateItAndAllowServerToWrite=You must create this directory and allow for the web server to write into it. +DBSortingCollation=Character sorting order +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. +OrphelinsPaymentsDetectedByMethod=Orphans payment detected by method %s +RemoveItManuallyAndPressF5ToContinue=Remove it manually and press F5 to continue. +FieldRenamed=Field renamed +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=Recommended choice to install version %s from your current version %s +InstallChoiceSuggested=Install choice suggested by installer. +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=If this name is correct and that database does not exist yet, you must check option "Create database". +OpenBaseDir=PHP openbasedir parameter +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 +MigrationShippingDelivery=Upgrade storage of shipping +MigrationShippingDelivery2=Upgrade storage of shipping 2 +MigrationFinished=Migration finished +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. +ActivateModule=Activate module %s +ShowEditTechnicalParameters=Click here to show/edit advanced parameters (expert mode) +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 +######### +# upgrade +MigrationFixData=Fix for denormalized data +MigrationOrder=Data migration for customer's orders +MigrationSupplierOrder=Data migration for vendor's orders +MigrationProposal=Data migration for commercial proposals +MigrationInvoice=Data migration for customer's invoices +MigrationContract=Data migration for contracts +MigrationSuccessfullUpdate=Upgrade successful +MigrationUpdateFailed=Failed upgrade process +MigrationRelationshipTables=Data migration for relationship tables (%s) +MigrationPaymentsUpdate=Payment data correction +MigrationPaymentsNumberToUpdate=%s payment(s) to update +MigrationProcessPaymentUpdate=Update payment(s) %s +MigrationPaymentsNothingToUpdate=No more things to do +MigrationPaymentsNothingUpdatable=No more payments that can be corrected +MigrationContractsUpdate=Contract data correction +MigrationContractsNumberToUpdate=%s contract(s) to update +MigrationContractsLineCreation=Create contract line for contract ref %s +MigrationContractsNothingToUpdate=No more things to do +MigrationContractsFieldDontExist=Field fk_facture does not exist anymore. Nothing to do. +MigrationContractsEmptyDatesUpdate=Contract empty date correction +MigrationContractsEmptyDatesUpdateSuccess=Contract empty date correction done successfully +MigrationContractsEmptyDatesNothingToUpdate=No contract empty date to correct +MigrationContractsEmptyCreationDatesNothingToUpdate=No contract creation date to correct +MigrationContractsInvalidDatesUpdate=Bad value date contract correction +MigrationContractsInvalidDateFix=Correct contract %s (Contract date=%s, Starting service date min=%s) +MigrationContractsInvalidDatesNumber=%s contracts modified +MigrationContractsInvalidDatesNothingToUpdate=No date with bad value to correct +MigrationContractsIncoherentCreationDateUpdate=Bad value contract creation date correction +MigrationContractsIncoherentCreationDateUpdateSuccess=Bad value contract creation date correction done successfully +MigrationContractsIncoherentCreationDateNothingToUpdate=No bad value for contract creation date to correct +MigrationReopeningContracts=Open contract closed by error +MigrationReopenThisContract=Reopen contract %s +MigrationReopenedContractsNumber=%s contracts modified +MigrationReopeningContractsNothingToUpdate=No closed contract to open +MigrationBankTransfertsUpdate=Update links between bank entry and a bank transfer +MigrationBankTransfertsNothingToUpdate=All links are up to date +MigrationShipmentOrderMatching=Sendings receipt update +MigrationDeliveryOrderMatching=Delivery receipt update +MigrationDeliveryDetail=Delivery update +MigrationStockDetail=Update stock value of products +MigrationMenusDetail=Update dynamic menus tables +MigrationDeliveryAddress=Update delivery address in shipments +MigrationProjectTaskActors=Data migration for table llx_projet_task_actors +MigrationProjectUserResp=Data migration field fk_user_resp of llx_projet to llx_element_contact +MigrationProjectTaskTime=Update time spent in seconds +MigrationActioncommElement=Update data on actions +MigrationPaymentMode=Data migration for payment type +MigrationCategorieAssociation=Migration of categories +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 +MigrationFieldsSocialNetworks=Migration of users fields social networks (%s) +MigrationReloadModule=Reload module %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. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/am_ET/interventions.lang b/htdocs/langs/am_ET/interventions.lang new file mode 100644 index 00000000000..e5936f8246e --- /dev/null +++ b/htdocs/langs/am_ET/interventions.lang @@ -0,0 +1,66 @@ +# Dolibarr language file - Source file is en_US - interventions +Intervention=Intervention +Interventions=Interventions +InterventionCard=Intervention card +NewIntervention=New intervention +AddIntervention=Create intervention +ChangeIntoRepeatableIntervention=Change to repeatable intervention +ListOfInterventions=List of interventions +ActionsOnFicheInter=Actions on intervention +LastInterventions=Latest %s interventions +AllInterventions=All interventions +CreateDraftIntervention=Create draft +InterventionContact=Intervention contact +DeleteIntervention=Delete intervention +ValidateIntervention=Validate intervention +ModifyIntervention=Modify intervention +DeleteInterventionLine=Delete intervention line +ConfirmDeleteIntervention=Are you sure you want to delete this intervention? +ConfirmValidateIntervention=Are you sure you want to validate this intervention under name %s? +ConfirmModifyIntervention=Are you sure you want to modify this intervention? +ConfirmDeleteInterventionLine=Are you sure you want to delete this intervention line? +ConfirmCloneIntervention=Are you sure you want to clone this intervention? +NameAndSignatureOfInternalContact=Name and signature of intervening: +NameAndSignatureOfExternalContact=Name and signature of customer: +DocumentModelStandard=Standard document model for interventions +InterventionCardsAndInterventionLines=Interventions and lines of interventions +InterventionClassifyBilled=Classify "Billed" +InterventionClassifyUnBilled=Classify "Unbilled" +InterventionClassifyDone=Classify "Done" +StatusInterInvoiced=Billed +SendInterventionRef=Submission of intervention %s +SendInterventionByMail=Send intervention by email +InterventionCreatedInDolibarr=Intervention %s created +InterventionValidatedInDolibarr=Intervention %s validated +InterventionModifiedInDolibarr=Intervention %s modified +InterventionClassifiedBilledInDolibarr=Intervention %s set as billed +InterventionClassifiedUnbilledInDolibarr=Intervention %s set as unbilled +InterventionSentByEMail=Intervention %s sent by email +InterventionDeletedInDolibarr=Intervention %s deleted +InterventionsArea=Interventions area +DraftFichinter=Draft interventions +LastModifiedInterventions=Latest %s modified interventions +FichinterToProcess=Interventions to process +TypeContact_fichinter_external_CUSTOMER=Following-up customer contact +PrintProductsOnFichinter=Print also lines of type "product" (not only services) on intervention card +PrintProductsOnFichinterDetails=interventions generated from orders +UseServicesDurationOnFichinter=Use services duration for interventions generated from orders +UseDurationOnFichinter=Hides the duration field for intervention records +UseDateWithoutHourOnFichinter=Hides hours and minutes off the date field for intervention records +InterventionStatistics=Statistics of interventions +NbOfinterventions=No. of intervention cards +NumberOfInterventionsByMonth=No. of intervention cards by month (date of validation) +AmountOfInteventionNotIncludedByDefault=Amount of intervention is not included by default into profit (in most cases, timesheets are used to count time spent). Add option PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT to 1 into home-setup-other to include them. +InterId=Intervention id +InterRef=Intervention ref. +InterDateCreation=Date creation intervention +InterDuration=Duration intervention +InterStatus=Status intervention +InterNote=Note intervention +InterLine=Line of intervention +InterLineId=Line id intervention +InterLineDate=Line date intervention +InterLineDuration=Line duration intervention +InterLineDesc=Line description intervention +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/am_ET/languages.lang b/htdocs/langs/am_ET/languages.lang new file mode 100644 index 00000000000..6185183161b --- /dev/null +++ b/htdocs/langs/am_ET/languages.lang @@ -0,0 +1,89 @@ +# Dolibarr language file - Source file is en_US - languages +Language_ar_AR=Arabic +Language_ar_EG=Arabic (Egypt) +Language_ar_SA=Arabic +Language_bn_BD=Bengali +Language_bg_BG=Bulgarian +Language_bs_BA=Bosnian +Language_ca_ES=Catalan +Language_cs_CZ=Czech +Language_da_DA=Danish +Language_da_DK=Danish +Language_de_DE=German +Language_de_AT=German (Austria) +Language_de_CH=German (Switzerland) +Language_el_GR=Greek +Language_el_CY=Greek (Cyprus) +Language_en_AU=English (Australia) +Language_en_CA=English (Canada) +Language_en_GB=English (United Kingdom) +Language_en_IN=English (India) +Language_en_NZ=English (New Zealand) +Language_en_SA=English (Saudi Arabia) +Language_en_US=English (United States) +Language_en_ZA=English (South Africa) +Language_es_ES=Spanish +Language_es_AR=Spanish (Argentina) +Language_es_BO=Spanish (Bolivia) +Language_es_CL=Spanish (Chile) +Language_es_CO=Spanish (Colombia) +Language_es_DO=Spanish (Dominican Republic) +Language_es_EC=Spanish (Ecuador) +Language_es_HN=Spanish (Honduras) +Language_es_MX=Spanish (Mexico) +Language_es_PA=Spanish (Panama) +Language_es_PY=Spanish (Paraguay) +Language_es_PE=Spanish (Peru) +Language_es_PR=Spanish (Puerto Rico) +Language_es_UY=Spanish (Uruguay) +Language_es_VE=Spanish (Venezuela) +Language_et_EE=Estonian +Language_eu_ES=Basque +Language_fa_IR=Persian +Language_fi_FI=Finnish +Language_fr_BE=French (Belgium) +Language_fr_CA=French (Canada) +Language_fr_CH=French (Switzerland) +Language_fr_FR=French +Language_fr_NC=French (New Caledonia) +Language_fy_NL=Frisian +Language_he_IL=Hebrew +Language_hr_HR=Croatian +Language_hu_HU=Hungarian +Language_id_ID=Indonesian +Language_is_IS=Icelandic +Language_it_IT=Italian +Language_ja_JP=Japanese +Language_ka_GE=Georgian +Language_km_KH=Khmer +Language_kn_IN=Kannada +Language_ko_KR=Korean +Language_lo_LA=Lao +Language_lt_LT=Lithuanian +Language_lv_LV=Latvian +Language_mk_MK=Macedonian +Language_mn_MN=Mongolian +Language_nb_NO=Norwegian (Bokmål) +Language_nl_BE=Dutch (Belgium) +Language_nl_NL=Dutch +Language_pl_PL=Polish +Language_pt_BR=Portuguese (Brazil) +Language_pt_PT=Portuguese +Language_ro_RO=Romanian +Language_ru_RU=Russian +Language_ru_UA=Russian (Ukraine) +Language_tr_TR=Turkish +Language_sl_SI=Slovenian +Language_sv_SV=Swedish +Language_sv_SE=Swedish +Language_sq_AL=Albanian +Language_sk_SK=Slovakian +Language_sr_RS=Serbian +Language_sw_SW=Kiswahili +Language_th_TH=Thai +Language_uk_UA=Ukrainian +Language_uz_UZ=Uzbek +Language_vi_VN=Vietnamese +Language_zh_CN=Chinese +Language_zh_TW=Chinese (Traditional) +Language_bh_MY=Malay diff --git a/htdocs/langs/am_ET/ldap.lang b/htdocs/langs/am_ET/ldap.lang new file mode 100644 index 00000000000..8b6f0864215 --- /dev/null +++ b/htdocs/langs/am_ET/ldap.lang @@ -0,0 +1,27 @@ +# Dolibarr language file - Source file is en_US - ldap +YouMustChangePassNextLogon=Password for user %s on the domain %s must be changed. +UserMustChangePassNextLogon=User must change password on the domain %s +LDAPInformationsForThisContact=Information in LDAP database for this contact +LDAPInformationsForThisUser=Information in LDAP database for this user +LDAPInformationsForThisGroup=Information in LDAP database for this group +LDAPInformationsForThisMember=Information in LDAP database for this member +LDAPInformationsForThisMemberType=Information in LDAP database for this member type +LDAPAttributes=LDAP attributes +LDAPCard=LDAP card +LDAPRecordNotFound=Record not found in LDAP database +LDAPUsers=Users in LDAP database +LDAPFieldStatus=Status +LDAPFieldFirstSubscriptionDate=First subscription date +LDAPFieldFirstSubscriptionAmount=First subscription amount +LDAPFieldLastSubscriptionDate=Latest subscription date +LDAPFieldLastSubscriptionAmount=Latest subscription amount +LDAPFieldSkype=Skype id +LDAPFieldSkypeExample=Example: skypeName +UserSynchronized=User synchronized +GroupSynchronized=Group synchronized +MemberSynchronized=Member synchronized +MemberTypeSynchronized=Member type synchronized +ContactSynchronized=Contact synchronized +ForceSynchronize=Force synchronizing Dolibarr -> LDAP +ErrorFailedToReadLDAP=Failed to read LDAP database. Check LDAP module setup and database accessibility. +PasswordOfUserInLDAP=Password of user in LDAP diff --git a/htdocs/langs/am_ET/link.lang b/htdocs/langs/am_ET/link.lang new file mode 100644 index 00000000000..1ffcd41a18b --- /dev/null +++ b/htdocs/langs/am_ET/link.lang @@ -0,0 +1,11 @@ +# Dolibarr language file - Source file is en_US - languages +LinkANewFile=Link a new file/document +LinkedFiles=Linked files and documents +NoLinkFound=No registered links +LinkComplete=The file has been linked successfully +ErrorFileNotLinked=The file could not be linked +LinkRemoved=The link %s has been removed +ErrorFailedToDeleteLink= Failed to remove link '%s' +ErrorFailedToUpdateLink= Failed to update link '%s' +URLToLink=URL to link +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/am_ET/loan.lang b/htdocs/langs/am_ET/loan.lang new file mode 100644 index 00000000000..534dee08867 --- /dev/null +++ b/htdocs/langs/am_ET/loan.lang @@ -0,0 +1,31 @@ +# Dolibarr language file - Source file is en_US - loan +Loan=Loan +Loans=Loans +NewLoan=New Loan +ShowLoan=Show Loan +PaymentLoan=Loan payment +LoanPayment=Loan payment +ShowLoanPayment=Show Loan Payment +LoanCapital=Capital +Insurance=Insurance +Interest=Interest +Nbterms=Number of terms +Term=Term +LoanAccountancyCapitalCode=Accounting account capital +LoanAccountancyInsuranceCode=Accounting account insurance +LoanAccountancyInterestCode=Accounting account interest +ConfirmDeleteLoan=Confirm deleting this loan +LoanDeleted=Loan Deleted Successfully +ConfirmPayLoan=Confirm classify paid this loan +LoanPaid=Loan Paid +ListLoanAssociatedProject=List of loan associated with the project +AddLoan=Create loan +FinancialCommitment=Financial commitment +InterestAmount=Interest +CapitalRemain=Capital remain +# Admin +ConfigLoan=Configuration of the module loan +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 diff --git a/htdocs/langs/am_ET/mailmanspip.lang b/htdocs/langs/am_ET/mailmanspip.lang new file mode 100644 index 00000000000..bab4b3576b4 --- /dev/null +++ b/htdocs/langs/am_ET/mailmanspip.lang @@ -0,0 +1,27 @@ +# Dolibarr language file - Source file is en_US - mailmanspip +MailmanSpipSetup=Mailman and SPIP module Setup +MailmanTitle=Mailman mailing list system +TestSubscribe=To test subscription to Mailman lists +TestUnSubscribe=To test unsubscribe from Mailman lists +MailmanCreationSuccess=Subscription test was executed successfully +MailmanDeletionSuccess=Unsubscription test was executed successfully +SynchroMailManEnabled=A Mailman update will be performed +SynchroSpipEnabled=A Spip update will be performed +DescADHERENT_MAILMAN_ADMINPW=Mailman administrator password +DescADHERENT_MAILMAN_URL=URL for Mailman subscriptions +DescADHERENT_MAILMAN_UNSUB_URL=URL for Mailman unsubscriptions +DescADHERENT_MAILMAN_LISTS=List(s) for automatic inscription of new members (separated by a comma) +SPIPTitle=SPIP Content Management System +DescADHERENT_SPIP_SERVEUR=SPIP Server +DescADHERENT_SPIP_DB=SPIP database name +DescADHERENT_SPIP_USER=SPIP database login +DescADHERENT_SPIP_PASS=SPIP database password +AddIntoSpip=Add into SPIP +AddIntoSpipConfirmation=Are you sure you want to add this member into SPIP? +AddIntoSpipError=Failed to add the user in SPIP +DeleteIntoSpip=Remove from SPIP +DeleteIntoSpipConfirmation=Are you sure you want to remove this member from SPIP? +DeleteIntoSpipError=Failed to suppress the user from SPIP +SPIPConnectionFailed=Failed to connect to SPIP +SuccessToAddToMailmanList=%s successfully added to mailman list %s or SPIP database +SuccessToRemoveToMailmanList=%s successfully removed from mailman list %s or SPIP database diff --git a/htdocs/langs/am_ET/mails.lang b/htdocs/langs/am_ET/mails.lang new file mode 100644 index 00000000000..7b3bfd3852a --- /dev/null +++ b/htdocs/langs/am_ET/mails.lang @@ -0,0 +1,170 @@ +# Dolibarr language file - Source file is en_US - mails +Mailing=EMailing +EMailing=EMailing +EMailings=EMailings +AllEMailings=All eMailings +MailCard=EMailing card +MailRecipients=Recipients +MailRecipient=Recipient +MailTitle=Description +MailFrom=Sender +MailErrorsTo=Errors to +MailReply=Reply to +MailTo=Receiver(s) +MailToUsers=To user(s) +MailCC=Copy to +MailToCCUsers=Copy to users(s) +MailCCC=Cached copy to +MailTopic=Email topic +MailText=Message +MailFile=Attached files +MailMessage=Email body +SubjectNotIn=Not in Subject +BodyNotIn=Not in Body +ShowEMailing=Show emailing +ListOfEMailings=List of emailings +NewMailing=New emailing +EditMailing=Edit emailing +ResetMailing=Resend emailing +DeleteMailing=Delete emailing +DeleteAMailing=Delete an emailing +PreviewMailing=Preview emailing +CreateMailing=Create emailing +TestMailing=Test email +ValidMailing=Valid emailing +MailingStatusDraft=Draft +MailingStatusValidated=Validated +MailingStatusSent=Sent +MailingStatusSentPartialy=Sent partially +MailingStatusSentCompletely=Sent completely +MailingStatusError=Error +MailingStatusNotSent=Not sent +MailSuccessfulySent=Email (from %s to %s) successfully accepted for delivery +MailingSuccessfullyValidated=EMailing successfully validated +MailUnsubcribe=Unsubscribe +MailingStatusNotContact=Don't contact anymore +MailingStatusReadAndUnsubscribe=Read and unsubscribe +ErrorMailRecipientIsEmpty=Email recipient is empty +WarningNoEMailsAdded=No new Email to add to recipient's list. +ConfirmValidMailing=Are you sure you want to validate this emailing? +ConfirmResetMailing=Warning, by re-initializing emailing %s, you will allow the re-sending this email in a bulk mailing. Are you sure you want to do this? +ConfirmDeleteMailing=Are you sure you want to delete this emailing? +NbOfUniqueEMails=No. of unique emails +NbOfEMails=No. of EMails +TotalNbOfDistinctRecipients=Number of distinct recipients +NoTargetYet=No recipients defined yet (Go on tab 'Recipients') +NoRecipientEmail=No recipient email for %s +RemoveRecipient=Remove recipient +YouCanAddYourOwnPredefindedListHere=To create your email selector module, see htdocs/core/modules/mailings/README. +EMailTestSubstitutionReplacedByGenericValues=When using test mode, substitutions variables are replaced by generic values +MailingAddFile=Attach this file +NoAttachedFiles=No attached files +BadEMail=Bad value for Email +ConfirmCloneEMailing=Are you sure you want to clone this emailing? +CloneContent=Clone message +CloneReceivers=Cloner recipients +DateLastSend=Date of latest sending +DateSending=Date sending +SentTo=Sent to %s +MailingStatusRead=Read +YourMailUnsubcribeOK=The email %s is correctly unsubscribe from mailing list +ActivateCheckReadKey=Key used to encrypt URL used for "Read Receipt" and "Unsubscribe" feature +EMailSentToNRecipients=Email sent to %s recipients. +EMailSentForNElements=Email sent for %s elements. +XTargetsAdded=%s recipients added into target list +OnlyPDFattachmentSupported=If the PDF documents were already generated for the objects to send, they will be attached to email. If not, no email will be sent (also, note that only pdf documents are supported as attachments in mass sending in this version). +AllRecipientSelected=The recipients of the %s record selected (if their email is known). +GroupEmails=Group emails +OneEmailPerRecipient=One email per recipient (by default, one email per record selected) +WarningIfYouCheckOneRecipientPerEmail=Warning, if you check this box, it means only one email will be sent for several different record selected, so, if your message contains substitution variables that refers to data of a record, it becomes not possible to replace them. +ResultOfMailSending=Result of mass Email sending +NbSelected=Number selected +NbIgnored=Number ignored +NbSent=Number sent +SentXXXmessages=%s message(s) sent. +ConfirmUnvalidateEmailing=Are you sure you want to change email %s to draft status? +MailingModuleDescContactsWithThirdpartyFilter=Contact with customer filters +MailingModuleDescContactsByCompanyCategory=Contacts by third-party category +MailingModuleDescContactsByCategory=Contacts by categories +MailingModuleDescContactsByFunction=Contacts by position +MailingModuleDescEmailsFromFile=Emails from file +MailingModuleDescEmailsFromUser=Emails input by user +MailingModuleDescDolibarrUsers=Users with Emails +MailingModuleDescThirdPartiesByCategories=Third parties (by categories) +SendingFromWebInterfaceIsNotAllowed=Sending from web interface is not allowed. + +# Libelle des modules de liste de destinataires mailing +LineInFile=Line %s in file +RecipientSelectionModules=Defined requests for recipient's selection +MailSelectedRecipients=Selected recipients +MailingArea=EMailings area +LastMailings=Latest %s emailings +TargetsStatistics=Targets statistics +NbOfCompaniesContacts=Unique contacts/addresses +MailNoChangePossible=Recipients for validated emailing can't be changed +SearchAMailing=Search mailing +SendMailing=Send emailing +SentBy=Sent by +MailingNeedCommand=Sending an emailing can be performed from command line. Ask your server administrator to launch the following command to send the emailing to all recipients: +MailingNeedCommand2=You can however send them online by adding parameter MAILING_LIMIT_SENDBYWEB with value of max number of emails you want to send by session. For this, go on Home - Setup - Other. +ConfirmSendingEmailing=If you want to send emailing directly from this screen, please confirm you are sure you want to send emailing now from your browser ? +LimitSendingEmailing=Note: Sending of emailings from web interface is done in several times for security and timeout reasons, %s recipients at a time for each sending session. +TargetsReset=Clear list +ToClearAllRecipientsClickHere=Click here to clear the recipient list for this emailing +ToAddRecipientsChooseHere=Add recipients by choosing from the lists +NbOfEMailingsReceived=Mass emailings received +NbOfEMailingsSend=Mass emailings sent +IdRecord=ID record +DeliveryReceipt=Delivery Ack. +YouCanUseCommaSeparatorForSeveralRecipients=You can use the comma separator to specify several recipients. +TagCheckMail=Track mail opening +TagUnsubscribe=Unsubscribe link +TagSignature=Signature of sending user +EMailRecipient=Recipient Email +TagMailtoEmail=Recipient Email (including html "mailto:" link) +NoEmailSentBadSenderOrRecipientEmail=No email sent. Bad sender or recipient email. Verify user profile. +# Module Notifications +Notifications=Notifications +NoNotificationsWillBeSent=No email notifications are planned for this event and company +ANotificationsWillBeSent=1 notification will be sent by email +SomeNotificationsWillBeSent=%s notifications will be sent by email +AddNewNotification=Activate a new email notification target/event +ListOfActiveNotifications=List all active targets/events for email notification +ListOfNotificationsDone=List all email notifications sent +MailSendSetupIs=Configuration of email sending has been setup to '%s'. This mode can't be used to send mass emailing. +MailSendSetupIs2=You must first go, with an admin account, into menu %sHome - Setup - EMails%s to change parameter '%s' to use mode '%s'. With this mode, you can enter setup of the SMTP server provided by your Internet Service Provider and use Mass emailing feature. +MailSendSetupIs3=If you have any questions on how to setup your SMTP server, you can ask to %s. +YouCanAlsoUseSupervisorKeyword=You can also add the keyword __SUPERVISOREMAIL__ to have email being sent to the supervisor of user (works only if an email is defined for this supervisor) +NbOfTargetedContacts=Current number of targeted contact emails +UseFormatFileEmailToTarget=Imported file must have format email;name;firstname;other +UseFormatInputEmailToTarget=Enter a string with format email;name;firstname;other +MailAdvTargetRecipients=Recipients (advanced selection) +AdvTgtTitle=Fill input fields to preselect the third parties or contacts/addresses to target +AdvTgtSearchTextHelp=Use %% as wildcards. For example to find all item like jean, joe, jim, you can input j%%, you can also use ; as separator for value, and use ! for except this value. For example jean;joe;jim%%;!jimo;!jima% will target all jean, joe, start with jim but not jimo and not everything that starts with jima +AdvTgtSearchIntHelp=Use interval to select int or float value +AdvTgtMinVal=Minimum value +AdvTgtMaxVal=Maximum value +AdvTgtSearchDtHelp=Use interval to select date value +AdvTgtStartDt=Start dt. +AdvTgtEndDt=End dt. +AdvTgtTypeOfIncudeHelp=Target Email of third party and email of contact of the third party, or just third-party email or just contact email +AdvTgtTypeOfIncude=Type of targeted email +AdvTgtContactHelp=Use only if you target contact into "Type of targeted email" +AddAll=Add all +RemoveAll=Remove all +ItemsCount=Item(s) +AdvTgtNameTemplate=Filter name +AdvTgtAddContact=Add emails according to criteria +AdvTgtLoadFilter=Load filter +AdvTgtDeleteFilter=Delete filter +AdvTgtSaveFilter=Save filter +AdvTgtCreateFilter=Create filter +AdvTgtOrCreateNewFilter=Name of new filter +NoContactWithCategoryFound=No contact/address with a category found +NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found +OutGoingEmailSetup=Outgoing email setup +InGoingEmailSetup=Incoming email setup +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) +DefaultOutgoingEmailSetup=Default outgoing email setup +Information=Information +ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/am_ET/main.lang b/htdocs/langs/am_ET/main.lang new file mode 100644 index 00000000000..824a5e495b8 --- /dev/null +++ b/htdocs/langs/am_ET/main.lang @@ -0,0 +1,1035 @@ +# Dolibarr language file - Source file is en_US - main +DIRECTION=ltr +# Note for Chinese: +# msungstdlight or cid0ct are for traditional Chinese (traditional does not render with Ubuntu pdf reader) +# stsongstdlight or cid0cs are for simplified Chinese +# To read Chinese pdf with Linux: sudo apt-get install poppler-data +FONTFORPDF=helvetica +FONTSIZEFORPDF=10 +SeparatorDecimal=. +SeparatorThousand=, +FormatDateShort=%m/%d/%Y +FormatDateShortInput=%m/%d/%Y +FormatDateShortJava=MM/dd/yyyy +FormatDateShortJavaInput=MM/dd/yyyy +FormatDateShortJQuery=mm/dd/yy +FormatDateShortJQueryInput=mm/dd/yy +FormatHourShortJQuery=HH:MI +FormatHourShort=%I:%M %p +FormatHourShortDuration=%H:%M +FormatDateTextShort=%b %d, %Y +FormatDateText=%B %d, %Y +FormatDateHourShort=%m/%d/%Y %I:%M %p +FormatDateHourSecShort=%m/%d/%Y %I:%M:%S %p +FormatDateHourTextShort=%b %d, %Y, %I:%M %p +FormatDateHourText=%B %d, %Y, %I:%M %p +DatabaseConnection=Database connection +NoTemplateDefined=No template available for this email type +AvailableVariables=Available substitution variables +NoTranslation=No translation +Translation=Translation +EmptySearchString=Enter a non empty search string +NoRecordFound=No record found +NoRecordDeleted=No record deleted +NotEnoughDataYet=Not enough data +NoError=No error +Error=Error +Errors=Errors +ErrorFieldRequired=Field '%s' is required +ErrorFieldFormat=Field '%s' has a bad value +ErrorFileDoesNotExists=File %s does not exist +ErrorFailedToOpenFile=Failed to open file %s +ErrorCanNotCreateDir=Cannot create dir %s +ErrorCanNotReadDir=Cannot read dir %s +ErrorConstantNotDefined=Parameter %s not defined +ErrorUnknown=Unknown error +ErrorSQL=SQL Error +ErrorLogoFileNotFound=Logo file '%s' was not found +ErrorGoToGlobalSetup=Go to 'Company/Organization' setup to fix this +ErrorGoToModuleSetup=Go to Module setup to fix this +ErrorFailedToSendMail=Failed to send mail (sender=%s, receiver=%s) +ErrorFileNotUploaded=File was not uploaded. Check that size does not exceed maximum allowed, that free space is available on disk and that there is not already a file with same name in this directory. +ErrorInternalErrorDetected=Error detected +ErrorWrongHostParameter=Wrong host parameter +ErrorYourCountryIsNotDefined=Your country is not defined. Go to Home-Setup-Edit and post the form again. +ErrorRecordIsUsedByChild=Failed to delete this record. This record is used by at least one child record. +ErrorWrongValue=Wrong value +ErrorWrongValueForParameterX=Wrong value for parameter %s +ErrorNoRequestInError=No request in error +ErrorServiceUnavailableTryLater=Service not available at the moment. Try again later. +ErrorDuplicateField=Duplicate value in a unique field +ErrorSomeErrorWereFoundRollbackIsDone=Some errors were found. Changes have been rolled back. +ErrorConfigParameterNotDefined=Parameter %s is not defined in the Dolibarr config file conf.php. +ErrorCantLoadUserFromDolibarrDatabase=Failed to find user %s in Dolibarr database. +ErrorNoVATRateDefinedForSellerCountry=Error, no vat rates defined for country '%s'. +ErrorNoSocialContributionForSellerCountry=Error, no social/fiscal taxes type defined for country '%s'. +ErrorFailedToSaveFile=Error, failed to save file. +ErrorCannotAddThisParentWarehouse=You are trying to add a parent warehouse which is already a child of a existing warehouse +MaxNbOfRecordPerPage=Max. number of records per page +NotAuthorized=You are not authorized to do that. +SetDate=Set date +SelectDate=Select a date +SeeAlso=See also %s +SeeHere=See here +ClickHere=Click here +Here=Here +Apply=Apply +BackgroundColorByDefault=Default background color +FileRenamed=The file was successfully renamed +FileGenerated=The file was successfully generated +FileSaved=The file was successfully saved +FileUploaded=The file was successfully uploaded +FileTransferComplete=File(s) uploaded successfully +FilesDeleted=File(s) successfully deleted +FileWasNotUploaded=A file is selected for attachment but was not yet uploaded. Click on "Attach file" for this. +NbOfEntries=No. of entries +GoToWikiHelpPage=Read online help (Internet access needed) +GoToHelpPage=Read help +RecordSaved=Record saved +RecordDeleted=Record deleted +RecordGenerated=Record generated +LevelOfFeature=Level of features +NotDefined=Not defined +DolibarrInHttpAuthenticationSoPasswordUseless=Dolibarr authentication mode is set to %s in configuration file conf.php.
    This means that the password database is external to Dolibarr, so changing this field may have no effect. +Administrator=Administrator +Undefined=Undefined +PasswordForgotten=Password forgotten? +NoAccount=No account? +SeeAbove=See above +HomeArea=Home +LastConnexion=Last login +PreviousConnexion=Previous login +PreviousValue=Previous value +ConnectedOnMultiCompany=Connected on environment +ConnectedSince=Connected since +AuthenticationMode=Authentication mode +RequestedUrl=Requested URL +DatabaseTypeManager=Database type manager +RequestLastAccessInError=Latest database access request error +ReturnCodeLastAccessInError=Return code for latest database access request error +InformationLastAccessInError=Information for latest database access request error +DolibarrHasDetectedError=Dolibarr has detected a technical error +YouCanSetOptionDolibarrMainProdToZero=You can read log file or set option $dolibarr_main_prod to '0' in your config file to get more information. +InformationToHelpDiagnose=This information can be useful for diagnostic purposes (you can set option $dolibarr_main_prod to '1' to remove such notices) +MoreInformation=More information +TechnicalInformation=Technical information +TechnicalID=Technical ID +LineID=Line ID +NotePublic=Note (public) +NotePrivate=Note (private) +PrecisionUnitIsLimitedToXDecimals=Dolibarr was setup to limit precision of unit prices to %s decimals. +DoTest=Test +ToFilter=Filter +NoFilter=No filter +WarningYouHaveAtLeastOneTaskLate=Warning, you have at least one element that has exceeded the tolerance time. +yes=yes +Yes=Yes +no=no +No=No +All=All +Home=Home +Help=Help +OnlineHelp=Online help +PageWiki=Wiki page +MediaBrowser=Media browser +Always=Always +Never=Never +Under=under +Period=Period +PeriodEndDate=End date for period +SelectedPeriod=Selected period +PreviousPeriod=Previous period +Activate=Activate +Activated=Activated +Closed=Closed +Closed2=Closed +NotClosed=Not closed +Enabled=Enabled +Enable=Enable +Deprecated=Deprecated +Disable=Disable +Disabled=Disabled +Add=Add +AddLink=Add link +RemoveLink=Remove link +AddToDraft=Add to draft +Update=Update +Close=Close +CloseBox=Remove widget from your dashboard +Confirm=Confirm +ConfirmSendCardByMail=Do you really want to send the content of this card by mail to %s? +Delete=Delete +Remove=Remove +Resiliate=Terminate +Cancel=Cancel +Modify=Modify +Edit=Edit +Validate=Validate +ValidateAndApprove=Validate and Approve +ToValidate=To validate +NotValidated=Not validated +Save=Save +SaveAs=Save As +SaveAndStay=Save and stay +SaveAndNew=Save and new +TestConnection=Test connection +ToClone=Clone +ConfirmCloneAsk=Are you sure you want to clone the object %s? +ConfirmClone=Choose data you want to clone: +NoCloneOptionsSpecified=No data to clone defined. +Of=of +Go=Go +Run=Run +CopyOf=Copy of +Show=Show +Hide=Hide +ShowCardHere=Show card +Search=Search +SearchOf=Search +SearchMenuShortCut=Ctrl + shift + f +Valid=Valid +Approve=Approve +Disapprove=Disapprove +ReOpen=Re-Open +Upload=Upload +ToLink=Link +Select=Select +Choose=Choose +Resize=Resize +ResizeOrCrop=Resize or Crop +Recenter=Recenter +Author=Author +User=User +Users=Users +Group=Group +Groups=Groups +NoUserGroupDefined=No user group defined +Password=Password +PasswordRetype=Retype your password +NoteSomeFeaturesAreDisabled=Note that a lot of features/modules are disabled in this demonstration. +Name=Name +NameSlashCompany=Name / Company +Person=Person +Parameter=Parameter +Parameters=Parameters +Value=Value +PersonalValue=Personal value +NewObject=New %s +NewValue=New value +CurrentValue=Current value +Code=Code +Type=Type +Language=Language +MultiLanguage=Multi-language +Note=Note +Title=Title +Label=Label +RefOrLabel=Ref. or label +Info=Log +Family=Family +Description=Description +Designation=Description +DescriptionOfLine=Description of line +DateOfLine=Date of line +DurationOfLine=Duration of line +Model=Doc template +DefaultModel=Default doc template +Action=Event +About=About +Number=Number +NumberByMonth=Number by month +AmountByMonth=Amount by month +Numero=Number +Limit=Limit +Limits=Limits +Logout=Logout +NoLogoutProcessWithAuthMode=No applicative disconnect feature with authentication mode %s +Connection=Login +Setup=Setup +Alert=Alert +MenuWarnings=Alerts +Previous=Previous +Next=Next +Cards=Cards +Card=Card +Now=Now +HourStart=Start hour +Date=Date +DateAndHour=Date and hour +DateToday=Today's date +DateReference=Reference date +DateStart=Start date +DateEnd=End date +DateCreation=Creation date +DateCreationShort=Creat. date +DateModification=Modification date +DateModificationShort=Modif. date +DateLastModification=Latest modification date +DateValidation=Validation date +DateClosing=Closing date +DateDue=Due date +DateValue=Value date +DateValueShort=Value date +DateOperation=Operation date +DateOperationShort=Oper. Date +DateLimit=Limit date +DateRequest=Request date +DateProcess=Process date +DateBuild=Report build date +DatePayment=Date of payment +DateApprove=Approving date +DateApprove2=Approving date (second approval) +RegistrationDate=Registration date +UserCreation=Creation user +UserModification=Modification user +UserValidation=Validation user +UserCreationShort=Creat. user +UserModificationShort=Modif. user +UserValidationShort=Valid. user +DurationYear=year +DurationMonth=month +DurationWeek=week +DurationDay=day +DurationYears=years +DurationMonths=months +DurationWeeks=weeks +DurationDays=days +Year=Year +Month=Month +Week=Week +WeekShort=Week +Day=Day +Hour=Hour +Minute=Minute +Second=Second +Years=Years +Months=Months +Days=Days +days=days +Hours=Hours +Minutes=Minutes +Seconds=Seconds +Weeks=Weeks +Today=Today +Yesterday=Yesterday +Tomorrow=Tomorrow +Morning=Morning +Afternoon=Afternoon +Quadri=Quadri +MonthOfDay=Month of the day +HourShort=H +MinuteShort=mn +Rate=Rate +CurrencyRate=Currency conversion rate +UseLocalTax=Include tax +Bytes=Bytes +KiloBytes=Kilobytes +MegaBytes=Megabytes +GigaBytes=Gigabytes +TeraBytes=Terabytes +UserAuthor=User of creation +UserModif=User of last update +b=b. +Kb=Kb +Mb=Mb +Gb=Gb +Tb=Tb +Cut=Cut +Copy=Copy +Paste=Paste +Default=Default +DefaultValue=Default value +DefaultValues=Default values/filters/sorting +Price=Price +PriceCurrency=Price (currency) +UnitPrice=Unit price +UnitPriceHT=Unit price (excl.) +UnitPriceHTCurrency=Unit price (excl.) (currency) +UnitPriceTTC=Unit price +PriceU=U.P. +PriceUHT=U.P. (net) +PriceUHTCurrency=U.P (currency) +PriceUTTC=U.P. (inc. tax) +Amount=Amount +AmountInvoice=Invoice amount +AmountInvoiced=Amount invoiced +AmountInvoicedHT=Amount invoiced (incl. tax) +AmountInvoicedTTC=Amount invoiced (excl. tax) +AmountPayment=Payment amount +AmountHTShort=Amount (excl.) +AmountTTCShort=Amount (inc. tax) +AmountHT=Amount (excl. tax) +AmountTTC=Amount (inc. tax) +AmountVAT=Amount tax +MulticurrencyAlreadyPaid=Already paid, original currency +MulticurrencyRemainderToPay=Remain to pay, original currency +MulticurrencyPaymentAmount=Payment amount, original currency +MulticurrencyAmountHT=Amount (excl. tax), original currency +MulticurrencyAmountTTC=Amount (inc. of tax), original currency +MulticurrencyAmountVAT=Amount tax, original currency +AmountLT1=Amount tax 2 +AmountLT2=Amount tax 3 +AmountLT1ES=Amount RE +AmountLT2ES=Amount IRPF +AmountTotal=Total amount +AmountAverage=Average amount +PriceQtyMinHT=Price quantity min. (excl. tax) +PriceQtyMinHTCurrency=Price quantity min. (excl. tax) (currency) +Percentage=Percentage +Total=Total +SubTotal=Subtotal +TotalHTShort=Total (excl.) +TotalHT100Short=Total 100%% (excl.) +TotalHTShortCurrency=Total (excl. in currency) +TotalTTCShort=Total (inc. tax) +TotalHT=Total (excl. tax) +TotalHTforthispage=Total (excl. tax) for this page +Totalforthispage=Total for this page +TotalTTC=Total (inc. tax) +TotalTTCToYourCredit=Total (inc. tax) to your credit +TotalVAT=Total tax +TotalVATIN=Total IGST +TotalLT1=Total tax 2 +TotalLT2=Total tax 3 +TotalLT1ES=Total RE +TotalLT2ES=Total IRPF +TotalLT1IN=Total CGST +TotalLT2IN=Total SGST +HT=Excl. tax +TTC=Inc. tax +INCVATONLY=Inc. VAT +INCT=Inc. all taxes +VAT=Sales tax +VATIN=IGST +VATs=Sales taxes +VATINs=IGST taxes +LT1=Sales tax 2 +LT1Type=Sales tax 2 type +LT2=Sales tax 3 +LT2Type=Sales tax 3 type +LT1ES=RE +LT2ES=IRPF +LT1IN=CGST +LT2IN=SGST +LT1GC=Additionnal cents +VATRate=Tax Rate +VATCode=Tax Rate code +VATNPR=Tax Rate NPR +DefaultTaxRate=Default tax rate +Average=Average +Sum=Sum +Delta=Delta +StatusToPay=To pay +RemainToPay=Remain to pay +Module=Module/Application +Modules=Modules/Applications +Option=Option +List=List +FullList=Full list +FullConversation=Full conversation +Statistics=Statistics +OtherStatistics=Other statistics +Status=Status +Favorite=Favorite +ShortInfo=Info. +Ref=Ref. +ExternalRef=Ref. extern +RefSupplier=Ref. vendor +RefPayment=Ref. payment +CommercialProposalsShort=Commercial proposals +Comment=Comment +Comments=Comments +ActionsToDo=Events to do +ActionsToDoShort=To do +ActionsDoneShort=Done +ActionNotApplicable=Not applicable +ActionRunningNotStarted=To start +ActionRunningShort=In progress +ActionDoneShort=Finished +ActionUncomplete=Incomplete +LatestLinkedEvents=Latest %s linked events +CompanyFoundation=Company/Organization +Accountant=Accountant +ContactsForCompany=Contacts for this third party +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 +ToDo=To do +Completed=Completed +Running=In progress +RequestAlreadyDone=Request already recorded +Filter=Filter +FilterOnInto=Search criteria '%s' into fields %s +RemoveFilter=Remove filter +ChartGenerated=Chart generated +ChartNotGenerated=Chart not generated +GeneratedOn=Build on %s +Generate=Generate +Duration=Duration +TotalDuration=Total duration +Summary=Summary +DolibarrStateBoard=Database Statistics +DolibarrWorkBoard=Open Items +NoOpenedElementToProcess=No open element to process +Available=Available +NotYetAvailable=Not yet available +NotAvailable=Not available +Categories=Tags/categories +Category=Tag/category +By=By +From=From +FromLocation=From +to=to +To=to +and=and +or=or +Other=Other +Others=Others +OtherInformations=Other information +Quantity=Quantity +Qty=Qty +ChangedBy=Changed by +ApprovedBy=Approved by +ApprovedBy2=Approved by (second approval) +Approved=Approved +Refused=Refused +ReCalculate=Recalculate +ResultKo=Failure +Reporting=Reporting +Reportings=Reporting +Draft=Draft +Drafts=Drafts +StatusInterInvoiced=Invoiced +Validated=Validated +Opened=Open +OpenAll=Open (All) +ClosedAll=Closed (All) +New=New +Discount=Discount +Unknown=Unknown +General=General +Size=Size +OriginalSize=Original size +Received=Received +Paid=Paid +Topic=Subject +ByCompanies=By third parties +ByUsers=By user +Links=Links +Link=Link +Rejects=Rejects +Preview=Preview +NextStep=Next step +Datas=Data +None=None +NoneF=None +NoneOrSeveral=None or several +Late=Late +LateDesc=An item is defined as Delayed as per the system configuration in menu Home - Setup - Alerts. +NoItemLate=No late item +Photo=Picture +Photos=Pictures +AddPhoto=Add picture +DeletePicture=Picture delete +ConfirmDeletePicture=Confirm picture deletion? +Login=Login +LoginEmail=Login (email) +LoginOrEmail=Login or Email +CurrentLogin=Current login +EnterLoginDetail=Enter login details +January=January +February=February +March=March +April=April +May=May +June=June +July=July +August=August +September=September +October=October +November=November +December=December +Month01=January +Month02=February +Month03=March +Month04=April +Month05=May +Month06=June +Month07=July +Month08=August +Month09=September +Month10=October +Month11=November +Month12=December +MonthShort01=Jan +MonthShort02=Feb +MonthShort03=Mar +MonthShort04=Apr +MonthShort05=May +MonthShort06=Jun +MonthShort07=Jul +MonthShort08=Aug +MonthShort09=Sep +MonthShort10=Oct +MonthShort11=Nov +MonthShort12=Dec +MonthVeryShort01=J +MonthVeryShort02=F +MonthVeryShort03=M +MonthVeryShort04=A +MonthVeryShort05=M +MonthVeryShort06=J +MonthVeryShort07=J +MonthVeryShort08=A +MonthVeryShort09=S +MonthVeryShort10=O +MonthVeryShort11=N +MonthVeryShort12=D +AttachedFiles=Attached files and documents +JoinMainDoc=Join main document +DateFormatYYYYMM=YYYY-MM +DateFormatYYYYMMDD=YYYY-MM-DD +DateFormatYYYYMMDDHHMM=YYYY-MM-DD HH:SS +ReportName=Report name +ReportPeriod=Report period +ReportDescription=Description +Report=Report +Keyword=Keyword +Origin=Origin +Legend=Legend +Fill=Fill +Reset=Reset +File=File +Files=Files +NotAllowed=Not allowed +ReadPermissionNotAllowed=Read permission not allowed +AmountInCurrency=Amount in %s currency +Example=Example +Examples=Examples +NoExample=No example +FindBug=Report a bug +NbOfThirdParties=Number of third parties +NbOfLines=Number of lines +NbOfObjects=Number of objects +NbOfObjectReferers=Number of related items +Referers=Related items +TotalQuantity=Total quantity +DateFromTo=From %s to %s +DateFrom=From %s +DateUntil=Until %s +Check=Check +Uncheck=Uncheck +Internal=Internal +External=External +Internals=Internal +Externals=External +Warning=Warning +Warnings=Warnings +BuildDoc=Build Doc +Entity=Environment +Entities=Entities +CustomerPreview=Customer preview +SupplierPreview=Vendor preview +ShowCustomerPreview=Show customer preview +ShowSupplierPreview=Show vendor preview +RefCustomer=Ref. customer +Currency=Currency +InfoAdmin=Information for administrators +Undo=Undo +Redo=Redo +ExpandAll=Expand all +UndoExpandAll=Undo expand +SeeAll=See all +Reason=Reason +FeatureNotYetSupported=Feature not yet supported +CloseWindow=Close window +Response=Response +Priority=Priority +SendByMail=Send by email +MailSentBy=Email sent by +TextUsedInTheMessageBody=Email body +SendAcknowledgementByMail=Send confirmation email +SendMail=Send email +Email=Email +NoEMail=No email +AlreadyRead=Already read +NotRead=Not read +NoMobilePhone=No mobile phone +Owner=Owner +FollowingConstantsWillBeSubstituted=The following constants will be replaced with the corresponding value. +Refresh=Refresh +BackToList=Back to list +GoBack=Go back +CanBeModifiedIfOk=Can be modified if valid +CanBeModifiedIfKo=Can be modified if not valid +ValueIsValid=Value is valid +ValueIsNotValid=Value is not valid +RecordCreatedSuccessfully=Record created successfully +RecordModifiedSuccessfully=Record modified successfully +RecordsModified=%s record(s) modified +RecordsDeleted=%s record(s) deleted +RecordsGenerated=%s record(s) generated +AutomaticCode=Automatic code +FeatureDisabled=Feature disabled +MoveBox=Move widget +Offered=Offered +NotEnoughPermissions=You don't have permission for this action +SessionName=Session name +Method=Method +Receive=Receive +CompleteOrNoMoreReceptionExpected=Complete or nothing more expected +ExpectedValue=Expected Value +PartialWoman=Partial +TotalWoman=Total +NeverReceived=Never received +Canceled=Canceled +YouCanChangeValuesForThisListFromDictionarySetup=You can change values for this list from menu Setup - Dictionaries +YouCanChangeValuesForThisListFrom=You can change values for this list from menu %s +YouCanSetDefaultValueInModuleSetup=You can set the default value used when creating a new record in module setup +Color=Color +Documents=Linked files +Documents2=Documents +UploadDisabled=Upload disabled +MenuAccountancy=Accounting +MenuECM=Documents +MenuAWStats=AWStats +MenuMembers=Members +MenuAgendaGoogle=Google agenda +ThisLimitIsDefinedInSetup=Dolibarr limit (Menu home-setup-security): %s Kb, PHP limit: %s Kb +NoFileFound=No documents saved in this directory +CurrentUserLanguage=Current language +CurrentTheme=Current theme +CurrentMenuManager=Current menu manager +Browser=Browser +Layout=Layout +Screen=Screen +DisabledModules=Disabled modules +For=For +ForCustomer=For customer +Signature=Signature +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 +AddNewLine=Add new line +AddFile=Add file +FreeZone=Not a predefined product/service +FreeLineOfType=Free-text item, type: +CloneMainAttributes=Clone object with its main attributes +ReGeneratePDF=Re-generate PDF +PDFMerge=PDF Merge +Merge=Merge +DocumentModelStandardPDF=Standard PDF template +PrintContentArea=Show page to print main content area +MenuManager=Menu manager +WarningYouAreInMaintenanceMode=Warning, you are in maintenance mode: only login %s is allowed to use the application in this mode. +CoreErrorTitle=System error +CoreErrorMessage=Sorry, an error occurred. Contact your system administrator to check the logs or disable $dolibarr_main_prod=1 to get more information. +CreditCard=Credit card +ValidatePayment=Validate payment +CreditOrDebitCard=Credit or debit card +FieldsWithAreMandatory=Fields with %s are mandatory +FieldsWithIsForPublic=Fields with %s are shown in public list of members. If you don't want this, uncheck the "public" box. +AccordingToGeoIPDatabase=(according to GeoIP conversion) +Line=Line +NotSupported=Not supported +RequiredField=Required field +Result=Result +ToTest=Test +ValidateBefore=Item must be validated before using this feature +Visibility=Visibility +Totalizable=Totalizable +TotalizableDesc=This field is totalizable in list +Private=Private +Hidden=Hidden +Resources=Resources +Source=Source +Prefix=Prefix +Before=Before +After=After +IPAddress=IP address +Frequency=Frequency +IM=Instant messaging +NewAttribute=New attribute +AttributeCode=Attribute code +URLPhoto=URL of photo/logo +SetLinkToAnotherThirdParty=Link to another third party +LinkTo=Link to +LinkToProposal=Link to proposal +LinkToOrder=Link to order +LinkToInvoice=Link to invoice +LinkToTemplateInvoice=Link to template invoice +LinkToSupplierOrder=Link to purchase order +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 +ClickToRefresh=Click to refresh +EditWithEditor=Edit with CKEditor +EditWithTextEditor=Edit with Text editor +EditHTMLSource=Edit HTML Source +ObjectDeleted=Object %s deleted +ByCountry=By country +ByTown=By town +ByDate=By date +ByMonthYear=By month/year +ByYear=By year +ByMonth=By month +ByDay=By day +BySalesRepresentative=By sales representative +LinkedToSpecificUsers=Linked to a particular user contact +NoResults=No results +AdminTools=Admin Tools +SystemTools=System tools +ModulesSystemTools=Modules tools +Test=Test +Element=Element +NoPhotoYet=No pictures available yet +Dashboard=Dashboard +MyDashboard=My Dashboard +Deductible=Deductible +from=from +toward=toward +Access=Access +SelectAction=Select action +SelectTargetUser=Select target user/employee +HelpCopyToClipboard=Use Ctrl+C to copy to clipboard +SaveUploadedFileWithMask=Save file on server with name "%s" (otherwise "%s") +OriginFileName=Original filename +SetDemandReason=Set source +SetBankAccount=Define Bank Account +AccountCurrency=Account currency +ViewPrivateNote=View notes +XMoreLines=%s line(s) hidden +ShowMoreLines=Show more/less lines +PublicUrl=Public URL +AddBox=Add box +SelectElementAndClick=Select an element and click %s +PrintFile=Print File %s +ShowTransaction=Show entry on bank account +ShowIntervention=Show intervention +ShowContract=Show contract +GoIntoSetupToChangeLogo=Go to Home - Setup - Company to change logo or go to Home - Setup - Display to hide. +Deny=Deny +Denied=Denied +ListOf=List of %s +ListOfTemplates=List of templates +Gender=Gender +Genderman=Man +Genderwoman=Woman +ViewList=List view +ViewGantt=Gantt view +ViewKanban=Kanban view +Mandatory=Mandatory +Hello=Hello +GoodBye=GoodBye +Sincerely=Sincerely +ConfirmDeleteObject=Are you sure you want to delete this object? +DeleteLine=Delete line +ConfirmDeleteLine=Are you sure you want to delete this line? +NoPDFAvailableForDocGenAmongChecked=No PDF were available for the document generation among checked record +TooManyRecordForMassAction=Too many records selected for mass action. The action is restricted to a list of %s records. +NoRecordSelected=No record selected +MassFilesArea=Area for files built by mass actions +ShowTempMassFilesArea=Show area of files built by mass actions +ConfirmMassDeletion=Bulk Delete confirmation +ConfirmMassDeletionQuestion=Are you sure you want to delete the %s selected record(s)? +RelatedObjects=Related Objects +ClassifyBilled=Classify billed +ClassifyUnbilled=Classify unbilled +Progress=Progress +ProgressShort=Progr. +FrontOffice=Front office +BackOffice=Back office +Submit=Submit +View=View +Export=Export +Exports=Exports +ExportFilteredList=Export filtered list +ExportList=Export list +ExportOptions=Export Options +IncludeDocsAlreadyExported=Include docs already exported +ExportOfPiecesAlreadyExportedIsEnable=Export of pieces already exported is enable +ExportOfPiecesAlreadyExportedIsDisable=Export of pieces already exported is disable +AllExportedMovementsWereRecordedAsExported=All exported movements were recorded as exported +NotAllExportedMovementsCouldBeRecordedAsExported=Not all exported movements could be recorded as exported +Miscellaneous=Miscellaneous +Calendar=Calendar +GroupBy=Group by... +ViewFlatList=View flat list +RemoveString=Remove string '%s' +SomeTranslationAreUncomplete=Some of the languages offered may be only partially translated or may contain errors. Please help to correct your language by registering at https://transifex.com/projects/p/dolibarr/ to add your improvements. +DirectDownloadLink=Direct download link (public/external) +DirectDownloadInternalLink=Direct download link (need to be logged and need permissions) +Download=Download +DownloadDocument=Download document +ActualizeCurrency=Update currency rate +Fiscalyear=Fiscal year +ModuleBuilder=Module and Application Builder +SetMultiCurrencyCode=Set currency +BulkActions=Bulk actions +ClickToShowHelp=Click to show tooltip help +WebSite=Website +WebSites=Websites +WebSiteAccounts=Website accounts +ExpenseReport=Expense report +ExpenseReports=Expense reports +HR=HR +HRAndBank=HR and Bank +AutomaticallyCalculated=Automatically calculated +TitleSetToDraft=Go back to draft +ConfirmSetToDraft=Are you sure you want to go back to Draft status? +ImportId=Import id +Events=Events +EMailTemplates=Email templates +FileNotShared=File not shared to external public +Project=Project +Projects=Projects +LeadOrProject=Lead | Project +LeadsOrProjects=Leads | Projects +Lead=Lead +Leads=Leads +ListOpenLeads=List open leads +ListOpenProjects=List open projects +NewLeadOrProject=New lead or project +Rights=Permissions +LineNb=Line no. +IncotermLabel=Incoterms +TabLetteringCustomer=Customer lettering +TabLetteringSupplier=Vendor lettering +Monday=Monday +Tuesday=Tuesday +Wednesday=Wednesday +Thursday=Thursday +Friday=Friday +Saturday=Saturday +Sunday=Sunday +MondayMin=Mo +TuesdayMin=Tu +WednesdayMin=We +ThursdayMin=Th +FridayMin=Fr +SaturdayMin=Sa +SundayMin=Su +Day1=Monday +Day2=Tuesday +Day3=Wednesday +Day4=Thursday +Day5=Friday +Day6=Saturday +Day0=Sunday +ShortMonday=M +ShortTuesday=T +ShortWednesday=W +ShortThursday=T +ShortFriday=F +ShortSaturday=S +ShortSunday=S +SelectMailModel=Select an email template +SetRef=Set ref +Select2ResultFoundUseArrows=Some results found. Use arrows to select. +Select2NotFound=No result found +Select2Enter=Enter +Select2MoreCharacter=or more character +Select2MoreCharacters=or more characters +Select2MoreCharactersMore=Search syntax:
    | OR (a|b)
    * Any character (a*b)
    ^ Start with (^ab)
    $ End with (ab$)
    +Select2LoadingMoreResults=Loading more results... +Select2SearchInProgress=Search in progress... +SearchIntoThirdparties=Third parties +SearchIntoContacts=Contacts +SearchIntoMembers=Members +SearchIntoUsers=Users +SearchIntoProductsOrServices=Products or services +SearchIntoProjects=Projects +SearchIntoMO=Manufacturing Orders +SearchIntoTasks=Tasks +SearchIntoCustomerInvoices=Customer invoices +SearchIntoSupplierInvoices=Vendor invoices +SearchIntoCustomerOrders=Sales orders +SearchIntoSupplierOrders=Purchase orders +SearchIntoCustomerProposals=Commercial proposals +SearchIntoSupplierProposals=Vendor proposals +SearchIntoInterventions=Interventions +SearchIntoContracts=Contracts +SearchIntoCustomerShipments=Customer shipments +SearchIntoExpenseReports=Expense reports +SearchIntoLeaves=Leave +SearchIntoTickets=Tickets +CommentLink=Comments +NbComments=Number of comments +CommentPage=Comments space +CommentAdded=Comment added +CommentDeleted=Comment deleted +Everybody=Everybody +PayedBy=Paid by +PayedTo=Paid to +Monthly=Monthly +Quarterly=Quarterly +Annual=Annual +Local=Local +Remote=Remote +LocalAndRemote=Local and Remote +KeyboardShortcut=Keyboard shortcut +AssignedTo=Assigned to +Deletedraft=Delete draft +ConfirmMassDraftDeletion=Draft mass delete confirmation +FileSharedViaALink=File shared via a link +SelectAThirdPartyFirst=Select a third party first... +YouAreCurrentlyInSandboxMode=You are currently in the %s "sandbox" mode +Inventory=Inventory +AnalyticCode=Analytic code +TMenuMRP=MRP +ShowMoreInfos=Show More Infos +NoFilesUploadedYet=Please upload a document first +SeePrivateNote=See private note +PaymentInformation=Payment information +ValidFrom=Valid from +ValidUntil=Valid until +NoRecordedUsers=No users +ToClose=To close +ToProcess=To process +ToApprove=To approve +GlobalOpenedElemView=Global view +NoArticlesFoundForTheKeyword=No article found for the keyword '%s' +NoArticlesFoundForTheCategory=No article found for the category +ToAcceptRefuse=To accept | refuse +ContactDefault_agenda=Event +ContactDefault_commande=Order +ContactDefault_contrat=Contract +ContactDefault_facture=Invoice +ContactDefault_fichinter=Intervention +ContactDefault_invoice_supplier=Supplier Invoice +ContactDefault_order_supplier=Purchase Order +ContactDefault_project=Project +ContactDefault_project_task=Task +ContactDefault_propal=Proposal +ContactDefault_supplier_proposal=Supplier Proposal +ContactDefault_ticket=Ticket +ContactAddedAutomatically=Contact added from contact thirdparty roles +More=More +ShowDetails=Show details +CustomReports=Custom reports +StatisticsOn=Statistics on +SelectYourGraphOptionsFirst=Select your graph options to build a graph +Measures=Measures +XAxis=X-Axis +YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? +ShowOtherLanguages=Show other languages +SwitchInEditModeToAddTranslation=Switch in edit mode to add translations for this language +NotUsedForThisCustomer=Not used for this customer diff --git a/htdocs/langs/am_ET/margins.lang b/htdocs/langs/am_ET/margins.lang new file mode 100644 index 00000000000..76ea8ad5c4d --- /dev/null +++ b/htdocs/langs/am_ET/margins.lang @@ -0,0 +1,45 @@ +# Dolibarr language file - Source file is en_US - marges + +Margin=Margin +Margins=Margins +TotalMargin=Total Margin +MarginOnProducts=Margin / Products +MarginOnServices=Margin / Services +MarginRate=Margin rate +MarkRate=Mark rate +DisplayMarginRates=Display margin rates +DisplayMarkRates=Display mark rates +InputPrice=Input price +margin=Profit margins management +margesSetup=Profit margins management setup +MarginDetails=Margin details +ProductMargins=Product margins +CustomerMargins=Customer margins +SalesRepresentativeMargins=Sales representative margins +ContactOfInvoice=Contact of invoice +UserMargins=User margins +ProductService=Product or Service +AllProducts=All products and services +ChooseProduct/Service=Choose product or service +ForceBuyingPriceIfNull=Force buying/cost price to selling price if not defined +ForceBuyingPriceIfNullDetails=If buying/cost price not defined, and this option "ON", margin will be zero on line (buying/cost price = selling price), otherwise ("OFF"), marge will be equal to suggested default. +MARGIN_METHODE_FOR_DISCOUNT=Margin method for global discounts +UseDiscountAsProduct=As a product +UseDiscountAsService=As a service +UseDiscountOnTotal=On subtotal +MARGIN_METHODE_FOR_DISCOUNT_DETAILS=Defines if a global discount is treated as a product, a service, or only on subtotal for margin calculation. +MARGIN_TYPE=Buying/Cost price suggested by default for margin calculation +MargeType1=Margin on Best vendor price +MargeType2=Margin on Weighted Average Price (WAP) +MargeType3=Margin on Cost Price +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=Cost price +UnitCharges=Unit charges +Charges=Charges +AgentContactType=Commercial agent contact type +AgentContactTypeDetails=Define what contact type (linked on invoices) will be used for margin report per contact/address. Note that reading statistics on a contact is not reliable since in most cases the contact may not be defined explicitely on the invoices. +rateMustBeNumeric=Rate must be a numeric value +markRateShouldBeLesserThan100=Mark rate should be lower than 100 +ShowMarginInfos=Show margin infos +CheckMargins=Margins detail +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/am_ET/members.lang b/htdocs/langs/am_ET/members.lang new file mode 100644 index 00000000000..dd0a5bf49e2 --- /dev/null +++ b/htdocs/langs/am_ET/members.lang @@ -0,0 +1,204 @@ +# Dolibarr language file - Source file is en_US - members +MembersArea=Members area +MemberCard=Member card +SubscriptionCard=Subscription card +Member=Member +Members=Members +ShowMember=Show member card +UserNotLinkedToMember=User not linked to a member +ThirdpartyNotLinkedToMember=Third party not linked to a member +MembersTickets=Members Tickets +FundationMembers=Foundation members +ListOfValidatedPublicMembers=List of validated public members +ErrorThisMemberIsNotPublic=This member is not public +ErrorMemberIsAlreadyLinkedToThisThirdParty=Another member (name: %s, login: %s) is already linked to a third party %s. Remove this link first because a third party can't be linked to only a member (and vice versa). +ErrorUserPermissionAllowsToLinksToItselfOnly=For security reasons, you must be granted permissions to edit all users to be able to link a member to a user that is not yours. +SetLinkToUser=Link to a Dolibarr user +SetLinkToThirdParty=Link to a Dolibarr third party +MembersCards=Members business cards +MembersList=List of members +MembersListToValid=List of draft members (to be validated) +MembersListValid=List of valid members +MembersListUpToDate=List of valid members with up to date subscription +MembersListNotUpToDate=List of valid members with subscription out of date +MembersListResiliated=List of terminated members +MembersListQualified=List of qualified members +MenuMembersToValidate=Draft members +MenuMembersValidated=Validated members +MenuMembersUpToDate=Up to date members +MenuMembersNotUpToDate=Out of date members +MenuMembersResiliated=Terminated members +MembersWithSubscriptionToReceive=Members with subscription to receive +MembersWithSubscriptionToReceiveShort=Subscription to receive +DateSubscription=Subscription date +DateEndSubscription=Subscription end date +EndSubscription=End subscription +SubscriptionId=Subscription id +MemberId=Member id +NewMember=New member +MemberType=Member type +MemberTypeId=Member type id +MemberTypeLabel=Member type label +MembersTypes=Members types +MemberStatusDraft=Draft (needs to be validated) +MemberStatusDraftShort=Draft +MemberStatusActive=Validated (waiting subscription) +MemberStatusActiveShort=Validated +MemberStatusActiveLate=Subscription expired +MemberStatusActiveLateShort=Expired +MemberStatusPaid=Subscription up to date +MemberStatusPaidShort=Up to date +MemberStatusResiliated=Terminated member +MemberStatusResiliatedShort=Terminated +MembersStatusToValid=Draft members +MembersStatusResiliated=Terminated members +MemberStatusNoSubscription=Validated (no subscription needed) +MemberStatusNoSubscriptionShort=Validated +SubscriptionNotNeeded=No subscription needed +NewCotisation=New contribution +PaymentSubscription=New contribution payment +SubscriptionEndDate=Subscription's end date +MembersTypeSetup=Members type setup +MemberTypeModified=Member type modified +DeleteAMemberType=Delete a member type +ConfirmDeleteMemberType=Are you sure you want to delete this member type? +MemberTypeDeleted=Member type deleted +MemberTypeCanNotBeDeleted=Member type can not be deleted +NewSubscription=New subscription +NewSubscriptionDesc=This form allows you to record your subscription as a new member of the foundation. If you want to renew your subscription (if already a member), please contact foundation board instead by email %s. +Subscription=Subscription +Subscriptions=Subscriptions +SubscriptionLate=Late +SubscriptionNotReceived=Subscription never received +ListOfSubscriptions=List of subscriptions +SendCardByMail=Send card by email +AddMember=Create member +NoTypeDefinedGoToSetup=No member types defined. Go to menu "Members types" +NewMemberType=New member type +WelcomeEMail=Welcome email +SubscriptionRequired=Subscription required +DeleteType=Delete +VoteAllowed=Vote allowed +Physical=Physical +Moral=Moral +MorPhy=Moral/Physical +Reenable=Reenable +ResiliateMember=Terminate a member +ConfirmResiliateMember=Are you sure you want to terminate this member? +DeleteMember=Delete a member +ConfirmDeleteMember=Are you sure you want to delete this member (Deleting a member will delete all his subscriptions)? +DeleteSubscription=Delete a subscription +ConfirmDeleteSubscription=Are you sure you want to delete this subscription? +Filehtpasswd=htpasswd file +ValidateMember=Validate a member +ConfirmValidateMember=Are you sure you want to validate this member? +FollowingLinksArePublic=The following links are open pages not protected by any Dolibarr permission. They are not formatted pages, provided as example to show how to list members database. +PublicMemberList=Public member list +BlankSubscriptionForm=Public self-subscription form +BlankSubscriptionFormDesc=Dolibarr can provide you a public URL/website to allow external visitors to ask to subscribe to the foundation. If an online payment module is enabled, a payment form may also be automatically provided. +EnablePublicSubscriptionForm=Enable the public website with self-subscription form +ForceMemberType=Force the member type +ExportDataset_member_1=Members and subscriptions +ImportDataset_member_1=Members +LastMembersModified=Latest %s modified members +LastSubscriptionsModified=Latest %s modified subscriptions +String=String +Text=Text +Int=Int +DateAndTime=Date and time +PublicMemberCard=Member public card +SubscriptionNotRecorded=Subscription not recorded +AddSubscription=Create subscription +ShowSubscription=Show subscription +# Label of email templates +SendingAnEMailToMember=Sending information email to member +SendingEmailOnAutoSubscription=Sending email on auto registration +SendingEmailOnMemberValidation=Sending email on new member validation +SendingEmailOnNewSubscription=Sending email on new subscription +SendingReminderForExpiredSubscription=Sending reminder for expired subscriptions +SendingEmailOnCancelation=Sending email on cancelation +# Topic of email templates +YourMembershipRequestWasReceived=Your membership was received. +YourMembershipWasValidated=Your membership was validated +YourSubscriptionWasRecorded=Your new subscription was recorded +SubscriptionReminderEmail=Subscription reminder +YourMembershipWasCanceled=Your membership was canceled +CardContent=Content of your member card +# Text of email templates +ThisIsContentOfYourMembershipRequestWasReceived=We want to let you know that your membership request was received.

    +ThisIsContentOfYourMembershipWasValidated=We want to let you know that your membership was validated with the following information:

    +ThisIsContentOfYourSubscriptionWasRecorded=We want to let you know that your new subscription was recorded.

    +ThisIsContentOfSubscriptionReminderEmail=We want to let you know that your subscription is about to expire or has already expired (__MEMBER_LAST_SUBSCRIPTION_DATE_END__). We hope you will renew it.

    +ThisIsContentOfYourCard=This is a summary of the information we have about you. Please contact us if anything is incorrect.

    +DescADHERENT_AUTOREGISTER_NOTIF_MAIL_SUBJECT=Subject of the notification email received in case of auto-inscription of a guest +DescADHERENT_AUTOREGISTER_NOTIF_MAIL=Content of the notification email received in case of auto-inscription of a guest +DescADHERENT_EMAIL_TEMPLATE_AUTOREGISTER=Email template to use to send email to a member on member autosubscription +DescADHERENT_EMAIL_TEMPLATE_MEMBER_VALIDATION=Email template to use to send email to a member on member validation +DescADHERENT_EMAIL_TEMPLATE_SUBSCRIPTION=Email template to use to send email to a member on new subscription recording +DescADHERENT_EMAIL_TEMPLATE_REMIND_EXPIRATION=Email template to use to send email reminder when subscription is about to expire +DescADHERENT_EMAIL_TEMPLATE_CANCELATION=Email template to use to send email to a member on member cancelation +DescADHERENT_MAIL_FROM=Sender Email for automatic emails +DescADHERENT_ETIQUETTE_TYPE=Format of labels page +DescADHERENT_ETIQUETTE_TEXT=Text printed on member address sheets +DescADHERENT_CARD_TYPE=Format of cards page +DescADHERENT_CARD_HEADER_TEXT=Text printed on top of member cards +DescADHERENT_CARD_TEXT=Text printed on member cards (align on left) +DescADHERENT_CARD_TEXT_RIGHT=Text printed on member cards (align on right) +DescADHERENT_CARD_FOOTER_TEXT=Text printed on bottom of member cards +ShowTypeCard=Show type '%s' +HTPasswordExport=htpassword file generation +NoThirdPartyAssociatedToMember=No third party associated to this member +MembersAndSubscriptions= Members and Subscriptions +MoreActions=Complementary action on recording +MoreActionsOnSubscription=Complementary action, suggested by default when recording a subscription +MoreActionBankDirect=Create a direct entry on bank account +MoreActionBankViaInvoice=Create an invoice, and a payment on bank account +MoreActionInvoiceOnly=Create an invoice with no payment +LinkToGeneratedPages=Generate visit cards +LinkToGeneratedPagesDesc=This screen allows you to generate PDF files with business cards for all your members or a particular member. +DocForAllMembersCards=Generate business cards for all members +DocForOneMemberCards=Generate business cards for a particular member +DocForLabels=Generate address sheets +SubscriptionPayment=Subscription payment +LastSubscriptionDate=Date of latest subscription payment +LastSubscriptionAmount=Amount of latest subscription +MembersStatisticsByCountries=Members statistics by country +MembersStatisticsByState=Members statistics by state/province +MembersStatisticsByTown=Members statistics by town +MembersStatisticsByRegion=Members statistics by region +NbOfMembers=Number of members +NoValidatedMemberYet=No validated members found +MembersByCountryDesc=This screen show you statistics on members by countries. Graphic depends however on Google online graph service and is available only if an internet connection is is working. +MembersByStateDesc=This screen show you statistics on members by state/provinces/canton. +MembersByTownDesc=This screen show you statistics on members by town. +MembersStatisticsDesc=Choose statistics you want to read... +MenuMembersStats=Statistics +LastMemberDate=Latest member date +LatestSubscriptionDate=Latest subscription date +MemberNature=Nature of member +Public=Information are public +NewMemberbyWeb=New member added. Awaiting approval +NewMemberForm=New member form +SubscriptionsStatistics=Statistics on subscriptions +NbOfSubscriptions=Number of subscriptions +AmountOfSubscriptions=Amount of subscriptions +TurnoverOrBudget=Turnover (for a company) or Budget (for a foundation) +DefaultAmount=Default amount of subscription +CanEditAmount=Visitor can choose/edit amount of its subscription +MEMBER_NEWFORM_PAYONLINE=Jump on integrated online payment page +ByProperties=By nature +MembersStatisticsByProperties=Members statistics by nature +MembersByNature=This screen show you statistics on members by nature. +MembersByRegion=This screen show you statistics on members by region. +VATToUseForSubscriptions=VAT rate to use for subscriptions +NoVatOnSubscription=No VAT for subscriptions +ADHERENT_PRODUCT_ID_FOR_SUBSCRIPTIONS=Product used for subscription line into invoice: %s +NameOrCompany=Name or company +SubscriptionRecorded=Subscription recorded +NoEmailSentToMember=No email sent to member +EmailSentToMember=Email sent to member at %s +SendReminderForExpiredSubscriptionTitle=Send reminder by email for expired subscription +SendReminderForExpiredSubscription=Send reminder by email to members when subscription is about to expire (parameter is number of days before end of subscription to send the remind. It can be a list of days separated by a semicolon, for example '10;5;0;-5') +MembershipPaid=Membership paid for current period (until %s) +YouMayFindYourInvoiceInThisEmail=You may find your invoice attached to this email +XMembersClosed=%s member(s) closed diff --git a/htdocs/langs/am_ET/modulebuilder.lang b/htdocs/langs/am_ET/modulebuilder.lang new file mode 100644 index 00000000000..135ac1ae9ec --- /dev/null +++ b/htdocs/langs/am_ET/modulebuilder.lang @@ -0,0 +1,141 @@ +# Dolibarr language file - Source file is en_US - loan +ModuleBuilderDesc=This tool must be used only by experienced users or developers. It provides utilities to build or edit your own module. Documentation for alternative manual development is here. +EnterNameOfModuleDesc=Enter name of the module/application to create with no spaces. Use uppercase to separate words (For example: MyModule, EcommerceForShop, SyncWithMySystem...) +EnterNameOfObjectDesc=Enter name of the object to create with no spaces. Use uppercase to separate words (For example: MyObject, Student, Teacher...). The CRUD class file, but also API file, pages to list/add/edit/delete object and SQL files will be generated. +ModuleBuilderDesc2=Path where modules are generated/edited (first directory for external modules defined into %s): %s +ModuleBuilderDesc3=Generated/editable modules found: %s +ModuleBuilderDesc4=A module is detected as 'editable' when the file %s exists in root of module directory +NewModule=New module +NewObjectInModulebuilder=New object +ModuleKey=Module key +ObjectKey=Object key +ModuleInitialized=Module initialized +FilesForObjectInitialized=Files for new object '%s' initialized +FilesForObjectUpdated=Files for object '%s' updated (.sql files and .class.php file) +ModuleBuilderDescdescription=Enter here all general information that describe your module. +ModuleBuilderDescspecifications=You can enter here a detailed description of the specifications of your module that is not already structured into other tabs. So you have within easy reach all the rules to develop. Also this text content will be included into the generated documentation (see last tab). You can use Markdown format, but it is recommended to use Asciidoc format (comparison between .md and .asciidoc: http://asciidoctor.org/docs/user-manual/#compared-to-markdown). +ModuleBuilderDescobjects=Define here the objects you want to manage with your module. A CRUD DAO class, SQL files, page to list record of objects, to create/edit/view a record and an API will be generated. +ModuleBuilderDescmenus=This tab is dedicated to define menu entries provided by your module. +ModuleBuilderDescpermissions=This tab is dedicated to define the new permissions you want to provide with your module. +ModuleBuilderDesctriggers=This is the view of triggers provided by your module. To include code executed when a triggered business event is launched, just edit this file. +ModuleBuilderDeschooks=This tab is dedicated to hooks. +ModuleBuilderDescwidgets=This tab is dedicated to manage/build widgets. +ModuleBuilderDescbuildpackage=You can generate here a "ready to distribute" package file (a normalized .zip file) of your module and a "ready to distribute" documentation file. Just click on button to build the package or documentation file. +EnterNameOfModuleToDeleteDesc=You can delete your module. WARNING: All coding files of module (generated or created manually) AND structured data and documentation will be deleted! +EnterNameOfObjectToDeleteDesc=You can delete an object. WARNING: All coding files (generated or created manually) related to object will be deleted! +DangerZone=Danger zone +BuildPackage=Build package +BuildPackageDesc=You can generate a zip package of your application so your are ready to distribute it on any Dolibarr. You can also distribute it or sell it on marketplace like DoliStore.com. +BuildDocumentation=Build documentation +ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: +ModuleIsLive=This module has been activated. Any change may break a current live feature. +DescriptionLong=Long description +EditorName=Name of editor +EditorUrl=URL of editor +DescriptorFile=Descriptor file of module +ClassFile=File for PHP DAO CRUD class +ApiClassFile=File for PHP API class +PageForList=PHP page for list of record +PageForCreateEditView=PHP page to create/edit/view a record +PageForAgendaTab=PHP page for event tab +PageForDocumentTab=PHP page for document tab +PageForNoteTab=PHP page for note tab +PathToModulePackage=Path to zip of module/application package +PathToModuleDocumentation=Path to file of module/application documentation (%s) +SpaceOrSpecialCharAreNotAllowed=Spaces or special characters are not allowed. +FileNotYetGenerated=File not yet generated +RegenerateClassAndSql=Force update of .class and .sql files +RegenerateMissingFiles=Generate missing files +SpecificationFile=File of documentation +LanguageFile=File for language +ObjectProperties=Object Properties +ConfirmDeleteProperty=Are you sure you want to delete the property %s? This will change code in PHP class but also remove column from table definition of object. +NotNull=Not NULL +NotNullDesc=1=Set database to NOT NULL. -1=Allow null values and force value to NULL if empty ('' or 0). +SearchAll=Used for 'search all' +DatabaseIndex=Database index +FileAlreadyExists=File %s already exists +TriggersFile=File for triggers code +HooksFile=File for hooks code +ArrayOfKeyValues=Array of key-val +ArrayOfKeyValuesDesc=Array of keys and values if field is a combo list with fixed values +WidgetFile=Widget file +CSSFile=CSS file +JSFile=Javascript file +ReadmeFile=Readme file +ChangeLog=ChangeLog file +TestClassFile=File for PHP Unit Test class +SqlFile=Sql file +PageForLib=File for the common PHP library +PageForObjLib=File for the PHP library dedicated to object +SqlFileExtraFields=Sql file for complementary attributes +SqlFileKey=Sql file for keys +SqlFileKeyExtraFields=Sql file for keys of complementary attributes +AnObjectAlreadyExistWithThisNameAndDiffCase=An object already exists with this name and a different case +UseAsciiDocFormat=You can use Markdown format, but it is recommended to use Asciidoc format (omparison between .md and .asciidoc: http://asciidoctor.org/docs/user-manual/#compared-to-markdown) +IsAMeasure=Is a measure +DirScanned=Directory scanned +NoTrigger=No trigger +NoWidget=No widget +GoToApiExplorer=Go to API explorer +ListOfMenusEntries=List of menu entries +ListOfDictionariesEntries=List of dictionaries entries +ListOfPermissionsDefined=List of defined permissions +SeeExamples=See examples here +EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty +DisplayOnPdf=Display on PDF +IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) +SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) +SpecDefDesc=Enter here all documentation you want to provide with your module that is not already defined by other tabs. You can use .md or better, the rich .asciidoc syntax. +LanguageDefDesc=Enter in this files, all the key and the translation for each language file. +MenusDefDesc=Define here the menus provided by your module +DictionariesDefDesc=Define here the dictionaries provided by your module +PermissionsDefDesc=Define here the new permissions provided by your module +MenusDefDescTooltip=The menus provided by your module/application are defined into the array $this->menus into the module descriptor file. You can edit manually this file or use the embedded editor.

    Note: Once defined (and module re-activated), menus are also visible into the menu editor available to administrator users on %s. +DictionariesDefDescTooltip=The dictionaries provided by your module/application are defined into the array $this->dictionaries into the module descriptor file. You can edit manually this file or use the embedded editor.

    Note: Once defined (and module re-activated), dictionaries are also visible into the setup area to administrator users on %s. +PermissionsDefDescTooltip=The permissions provided by your module/application are defined into the array $this->rights into the module descriptor file. You can edit manually this file or use the embedded editor.

    Note: Once defined (and module re-activated), permissions are visible into the default permissions setup %s. +HooksDefDesc=Define in the module_parts['hooks'] property, in the module descriptor, the context of hooks you want to manage (list of contexts can be found by a search on 'initHooks(' in core code).
    Edit the hook file to add code of your hooked functions (hookable functions can be found by a search on 'executeHooks' in core code). +TriggerDefDesc=Define in the trigger file the code you want to execute for each business event executed. +SeeIDsInUse=See IDs in use in your installation +SeeReservedIDsRangeHere=See range of reserved IDs +ToolkitForDevelopers=Toolkit for Dolibarr developers +TryToUseTheModuleBuilder=If you have knowledge of SQL and PHP, you may use the native module builder wizard.
    Enable the module %s and use the wizard by clicking the on the top right menu.
    Warning: This is an advanced developer feature, do not experiment on your production site! +SeeTopRightMenu=See on the top right menu +AddLanguageFile=Add language file +YouCanUseTranslationKey=You can use here a key that is the translation key found into language file (see tab "Languages") +DropTableIfEmpty=(Delete table if empty) +TableDoesNotExists=The table %s does not exists +TableDropped=Table %s deleted +InitStructureFromExistingTable=Build the structure array string of an existing table +UseAboutPage=Disable the about page +UseDocFolder=Disable the documentation folder +UseSpecificReadme=Use a specific ReadMe +ContentOfREADMECustomized=Note: The content of the README.md file has been replaced with the specific value defined into setup of ModuleBuilder. +RealPathOfModule=Real path of module +ContentCantBeEmpty=Content of file can't be empty +WidgetDesc=You can generate and edit here the widgets that will be embedded with your module. +CSSDesc=You can generate and edit here a file with personalized CSS embedded with your module. +JSDesc=You can generate and edit here a file with personalized Javascript embedded with your module. +CLIDesc=You can generate here some command line scripts you want to provide with your module. +CLIFile=CLI File +NoCLIFile=No CLI files +UseSpecificEditorName = Use a specific editor name +UseSpecificEditorURL = Use a specific editor URL +UseSpecificFamily = Use a specific family +UseSpecificAuthor = Use a specific author +UseSpecificVersion = Use a specific initial version +ModuleMustBeEnabled=The module/application must be enabled first +IncludeRefGeneration=The reference of object must be generated automatically +IncludeRefGenerationHelp=Check this if you want to include code to manage the generation automatically of the reference +IncludeDocGeneration=I want to generate some documents from the object +IncludeDocGenerationHelp=If you check this, some code will be generated to add a "Generate document" box on the record. +ShowOnCombobox=Show value into combobox +KeyForTooltip=Key for tooltip +CSSClass=CSS Class +NotEditable=Not editable +ForeignKey=Foreign key +TypeOfFieldsHelp=Type of fields:
    varchar(99), double(24,8), real, text, html, datetime, timestamp, integer, integer:ClassName:relativepath/to/classfile.class.php[:1[:filter]] ('1' means we add a + button after the combo to create the record, 'filter' can be 'status=1 AND fk_user = __USER_ID AND entity IN (__SHARED_ENTITIES__)' for example) +AsciiToHtmlConverter=Ascii to HTML converter +AsciiToPdfConverter=Ascii to PDF converter diff --git a/htdocs/langs/am_ET/mrp.lang b/htdocs/langs/am_ET/mrp.lang new file mode 100644 index 00000000000..d3c4d3253c6 --- /dev/null +++ b/htdocs/langs/am_ET/mrp.lang @@ -0,0 +1,76 @@ +Mrp=Manufacturing Orders +MO=Manufacturing Order +MRPDescription=Module to manage production and Manufacturing Orders (MO). +MRPArea=MRP Area +MrpSetupPage=Setup of module MRP +MenuBOM=Bills of material +LatestBOMModified=Latest %s Bills of materials modified +LatestMOModified=Latest %s Manufacturing Orders modified +Bom=Bills of Material +BillOfMaterials=Bill of Material +BOMsSetup=Setup of module BOM +ListOfBOMs=List of bills of material - BOM +ListOfManufacturingOrders=List of Manufacturing Orders +NewBOM=New bill of material +ProductBOMHelp=Product to create with this BOM.
    Note: Products with the property 'Nature of product' = 'Raw material' are not visible into this list. +BOMsNumberingModules=BOM numbering templates +BOMsModelModule=BOM document templates +MOsNumberingModules=MO numbering templates +MOsModelModule=MO document templates +FreeLegalTextOnBOMs=Free text on document of BOM +WatermarkOnDraftBOMs=Watermark on draft BOM +FreeLegalTextOnMOs=Free text on document of MO +WatermarkOnDraftMOs=Watermark on draft MO +ConfirmCloneBillOfMaterials=Are you sure you want to clone the bill of material %s ? +ConfirmCloneMo=Are you sure you want to clone the Manufacturing Order %s ? +ManufacturingEfficiency=Manufacturing efficiency +ConsumptionEfficiency=Consumption efficiency +ValueOfMeansLoss=Value of 0.95 means an average of 5%% of loss during the production +ValueOfMeansLossForProductProduced=Value of 0.95 means an average of 5%% of loss of produced product +DeleteBillOfMaterials=Delete Bill Of Materials +DeleteMo=Delete Manufacturing Order +ConfirmDeleteBillOfMaterials=Are you sure you want to delete this Bill Of Material? +ConfirmDeleteMo=Are you sure you want to delete this Bill Of Material? +MenuMRP=Manufacturing Orders +NewMO=New Manufacturing Order +QtyToProduce=Qty to produce +DateStartPlannedMo=Date start planned +DateEndPlannedMo=Date end planned +KeepEmptyForAsap=Empty means 'As Soon As Possible' +EstimatedDuration=Estimated duration +EstimatedDurationDesc=Estimated duration to manufacture this product using this BOM +ConfirmValidateBom=Are you sure you want to validate the BOM with the reference %s (you will be able to use it to build new Manufacturing Orders) +ConfirmCloseBom=Are you sure you want to cancel this BOM (you won't be able to use it to build new Manufacturing Orders anymore) ? +ConfirmReopenBom=Are you sure you want to re-open this BOM (you will be able to use it to build new Manufacturing Orders) +StatusMOProduced=Produced +QtyFrozen=Frozen Qty +QuantityFrozen=Frozen Quantity +QuantityConsumedInvariable=When this flag is set, the quantity consumed is always the value defined and is not relative to the quantity produced. +DisableStockChange=Stock change disabled +DisableStockChangeHelp=When this flag is set, there is no stock change on this product, whatever is the quantity consumed +BomAndBomLines=Bills Of Material and lines +BOMLine=Line of BOM +WarehouseForProduction=Warehouse for production +CreateMO=Create MO +ToConsume=To consume +ToProduce=To produce +QtyAlreadyConsumed=Qty already consumed +QtyAlreadyProduced=Qty already produced +QtyRequiredIfNoLoss=Qty required if there is no loss (Manufacturing efficiency is 100%%) +ConsumeOrProduce=Consume or Produce +ConsumeAndProduceAll=Consume and Produce All +Manufactured=Manufactured +TheProductXIsAlreadyTheProductToProduce=The product to add is already the product to produce. +ForAQuantityOf=For a quantity to produce of %s +ConfirmValidateMo=Are you sure you want to validate this Manufacturing Order? +ConfirmProductionDesc=By clicking on '%s', you will validate the consumption and/or production for the quantities set. This will also update the stock and record stock movements. +ProductionForRef=Production of %s +AutoCloseMO=Close automatically the Manufacturing Order if quantities to consume and to produce are reached +NoStockChangeOnServices=No stock change on services +ProductQtyToConsumeByMO=Product quantity still to consume by open MO +ProductQtyToProduceByMO=Product quentity still to produce by open MO +AddNewConsumeLines=Add new line to consume +ProductsToConsume=Products to consume +ProductsToProduce=Products to produce +UnitCost=Unit cost +TotalCost=Total cost diff --git a/htdocs/langs/am_ET/multicurrency.lang b/htdocs/langs/am_ET/multicurrency.lang new file mode 100644 index 00000000000..bfcbd11fb7c --- /dev/null +++ b/htdocs/langs/am_ET/multicurrency.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Multi currency +ErrorAddRateFail=Error in added rate +ErrorAddCurrencyFail=Error in added currency +ErrorDeleteCurrencyFail=Error delete fail +multicurrency_syncronize_error=Synchronization error: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Use the date of the document to find the currency rate, instead of using the latest known rate +multicurrency_useOriginTx=When an object is created from another, keep the original rate from the source object (otherwise use the latest known rate) +CurrencyLayerAccount=CurrencyLayer API +CurrencyLayerAccount_help_to_synchronize=You must create an account on website %s to use this functionality.
    Get your API key.
    If you use a free account, you can't change the source currency (USD by default).
    If your main currency is not USD, the application will automatically recalculate it.

    You are limited to 1000 synchronizations per month. +multicurrency_appId=API key +multicurrency_appCurrencySource=Source currency +multicurrency_alternateCurrencySource=Alternate source currency +CurrenciesUsed=Currencies used +CurrenciesUsed_help_to_add=Add the different currencies and rates you need to use on your proposals, orders etc. +rate=rate +MulticurrencyReceived=Received, original currency +MulticurrencyRemainderToTake=Remaining amount, original currency +MulticurrencyPaymentAmount=Payment amount, original currency +AmountToOthercurrency=Amount To (in currency of receiving account) +CurrencyRateSyncSucceed=Currency rate synchronization done successfuly +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Use the currency of the document for online payments diff --git a/htdocs/langs/am_ET/oauth.lang b/htdocs/langs/am_ET/oauth.lang new file mode 100644 index 00000000000..075ff49a895 --- /dev/null +++ b/htdocs/langs/am_ET/oauth.lang @@ -0,0 +1,32 @@ +# 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 credentials with your OAuth provider: +ListOfSupportedOauthProviders=Enter the credentials provided by your OAuth2 provider. Only supported OAuth2 providers are listedd here. These services 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 to 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 to this page then "Register a new application" to create OAuth credentials +OAUTH_STRIPE_TEST_NAME=OAuth Stripe Test +OAUTH_STRIPE_LIVE_NAME=OAuth Stripe Live diff --git a/htdocs/langs/am_ET/opensurvey.lang b/htdocs/langs/am_ET/opensurvey.lang new file mode 100644 index 00000000000..7d26151fa16 --- /dev/null +++ b/htdocs/langs/am_ET/opensurvey.lang @@ -0,0 +1,61 @@ +# Dolibarr language file - Source file is en_US - opensurvey +Survey=Poll +Surveys=Polls +OrganizeYourMeetingEasily=Organize your meetings and polls easily. First select the type of poll... +NewSurvey=New poll +OpenSurveyArea=Polls area +AddACommentForPoll=You can add a comment into poll... +AddComment=Add comment +CreatePoll=Create poll +PollTitle=Poll title +ToReceiveEMailForEachVote=Receive an email for each vote +TypeDate=Type date +TypeClassic=Type standard +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=Remove all days +CopyHoursOfFirstDay=Copy hours of first day +RemoveAllHours=Remove all hours +SelectedDays=Selected days +TheBestChoice=The best choice currently is +TheBestChoices=The best choices currently are +with=with +OpenSurveyHowTo=If you agree to vote in this poll, you have to give your name, choose the values that fit best for you and validate with the plus button at the end of the line. +CommentsOfVoters=Comments of voters +ConfirmRemovalOfPoll=Are you sure you want to remove this poll (and all votes) +RemovePoll=Remove poll +UrlForSurvey=URL to communicate to get a direct access to poll +PollOnChoice=You are creating a poll to make a multi-choice for a poll. First enter all possible choices for your poll: +CreateSurveyDate=Create a date poll +CreateSurveyStandard=Create a standard poll +CheckBox=Simple checkbox +YesNoList=List (empty/yes/no) +PourContreList=List (empty/for/against) +AddNewColumn=Add new column +TitleChoice=Choice label +ExportSpreadsheet=Export result spreadsheet +ExpireDate=Limit date +NbOfSurveys=Number of polls +NbOfVoters=No. of voters +SurveyResults=Results +PollAdminDesc=You are allowed to change all vote lines of this poll with button "Edit". You can, as well, remove a column or a line with %s. You can also add a new column with %s. +5MoreChoices=5 more choices +Against=Against +YouAreInivitedToVote=You are invited to vote for this poll +VoteNameAlreadyExists=This name was already used for this poll +AddADate=Add a date +AddStartHour=Add start hour +AddEndHour=Add end hour +votes=vote(s) +NoCommentYet=No comments have been posted for this poll yet +CanComment=Voters can comment in the poll +CanSeeOthersVote=Voters can see other people's vote +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=Back to current month +ErrorOpenSurveyFillFirstSection=You haven't filled the first section of the poll creation +ErrorOpenSurveyOneChoice=Enter at least one choice +ErrorInsertingComment=There was an error while inserting your comment +MoreChoices=Enter more choices for the voters +SurveyExpiredInfo=The poll has been closed or voting delay has expired. +EmailSomeoneVoted=%s has filled a line.\nYou can find your poll at the link: \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 diff --git a/htdocs/langs/am_ET/orders.lang b/htdocs/langs/am_ET/orders.lang new file mode 100644 index 00000000000..ad91e1eef63 --- /dev/null +++ b/htdocs/langs/am_ET/orders.lang @@ -0,0 +1,189 @@ +# Dolibarr language file - Source file is en_US - orders +OrdersArea=Customers orders area +SuppliersOrdersArea=Purchase orders area +OrderCard=Order card +OrderId=Order Id +Order=Order +PdfOrderTitle=Order +Orders=Orders +OrderLine=Order line +OrderDate=Order date +OrderDateShort=Order date +OrderToProcess=Order to process +NewOrder=New order +NewOrderSupplier=New Purchase Order +ToOrder=Make order +MakeOrder=Make order +SupplierOrder=Purchase order +SuppliersOrders=Purchase orders +SuppliersOrdersRunning=Current purchase orders +CustomerOrder=Sales Order +CustomersOrders=Sales Orders +CustomersOrdersRunning=Current sales orders +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 +SuppliersOrdersAwaitingReception=Purchase orders awaiting reception +AwaitingReception=Awaiting reception +StatusOrderCanceledShort=Canceled +StatusOrderDraftShort=Draft +StatusOrderValidatedShort=Validated +StatusOrderSentShort=In process +StatusOrderSent=Shipment in process +StatusOrderOnProcessShort=Ordered +StatusOrderProcessedShort=Processed +StatusOrderDelivered=Delivered +StatusOrderDeliveredShort=Delivered +StatusOrderToBillShort=Delivered +StatusOrderApprovedShort=Approved +StatusOrderRefusedShort=Refused +StatusOrderToProcessShort=To process +StatusOrderReceivedPartiallyShort=Partially received +StatusOrderReceivedAllShort=Products received +StatusOrderCanceled=Canceled +StatusOrderDraft=Draft (needs to be validated) +StatusOrderValidated=Validated +StatusOrderOnProcess=Ordered - Standby reception +StatusOrderOnProcessWithValidation=Ordered - Standby reception or validation +StatusOrderProcessed=Processed +StatusOrderToBill=Delivered +StatusOrderApproved=Approved +StatusOrderRefused=Refused +StatusOrderReceivedPartially=Partially received +StatusOrderReceivedAll=All products received +ShippingExist=A shipment exists +QtyOrdered=Qty ordered +ProductQtyInDraft=Product quantity into draft orders +ProductQtyInDraftOrWaitingApproved=Product quantity into draft or approved orders, not yet ordered +MenuOrdersToBill=Orders delivered +MenuOrdersToBill2=Billable orders +ShipProduct=Ship product +CreateOrder=Create Order +RefuseOrder=Refuse order +ApproveOrder=Approve order +Approve2Order=Approve order (second level) +ValidateOrder=Validate order +UnvalidateOrder=Unvalidate order +DeleteOrder=Delete order +CancelOrder=Cancel order +OrderReopened= Order %s re-open +AddOrder=Create order +AddPurchaseOrder=Create purchase order +AddToDraftOrders=Add to draft order +ShowOrder=Show order +OrdersOpened=Orders to process +NoDraftOrders=No draft orders +NoOrder=No order +NoSupplierOrder=No purchase order +LastOrders=Latest %s sales orders +LastCustomerOrders=Latest %s sales orders +LastSupplierOrders=Latest %s purchase orders +LastModifiedOrders=Latest %s modified orders +AllOrders=All orders +NbOfOrders=Number of orders +OrdersStatistics=Order's statistics +OrdersStatisticsSuppliers=Purchase order statistics +NumberOfOrdersByMonth=Number of orders by month +AmountOfOrdersByMonthHT=Amount of orders by month (excl. tax) +ListOfOrders=List of orders +CloseOrder=Close order +ConfirmCloseOrder=Are you sure you want to set this order to delivered? Once an order is delivered, it can be set to billed. +ConfirmDeleteOrder=Are you sure you want to delete this order? +ConfirmValidateOrder=Are you sure you want to validate this order under name %s? +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=Generate invoice +ClassifyShipped=Classify delivered +DraftOrders=Draft orders +DraftSuppliersOrders=Draft purchase orders +OnProcessOrders=In process orders +RefOrder=Ref. order +RefCustomerOrder=Ref. order for customer +RefOrderSupplier=Ref. order for vendor +RefOrderSupplierShort=Ref. order vendor +SendOrderByMail=Send order by mail +ActionsOnOrder=Events on order +NoArticleOfTypeProduct=No article of type 'product' so no shippable article for this order +OrderMode=Order method +AuthorRequest=Request author +UserWithApproveOrderGrant=Users granted with "approve orders" permission. +PaymentOrderRef=Payment of order %s +ConfirmCloneOrder=Are you sure you want to clone this order %s? +DispatchSupplierOrder=Receiving purchase order %s +FirstApprovalAlreadyDone=First approval already done +SecondApprovalAlreadyDone=Second approval already done +SupplierOrderReceivedInDolibarr=Purchase Order %s received %s +SupplierOrderSubmitedInDolibarr=Purchase Order %s submitted +SupplierOrderClassifiedBilled=Purchase Order %s set billed +OtherOrders=Other orders +##### Types de contacts ##### +TypeContact_commande_internal_SALESREPFOLL=Representative following-up sales order +TypeContact_commande_internal_SHIPPING=Representative following-up shipping +TypeContact_commande_external_BILLING=Customer invoice contact +TypeContact_commande_external_SHIPPING=Customer shipping contact +TypeContact_commande_external_CUSTOMER=Customer contact following-up order +TypeContact_order_supplier_internal_SALESREPFOLL=Representative following-up purchase order +TypeContact_order_supplier_internal_SHIPPING=Representative following-up shipping +TypeContact_order_supplier_external_BILLING=Vendor invoice contact +TypeContact_order_supplier_external_SHIPPING=Vendor shipping contact +TypeContact_order_supplier_external_CUSTOMER=Vendor contact following-up order +Error_COMMANDE_SUPPLIER_ADDON_NotDefined=Constant COMMANDE_SUPPLIER_ADDON not defined +Error_COMMANDE_ADDON_NotDefined=Constant COMMANDE_ADDON not defined +Error_OrderNotChecked=No orders to invoice selected +# Order modes (how we receive order). Not the "why" are keys stored into dict.lang +OrderByMail=Mail +OrderByFax=Fax +OrderByEMail=Email +OrderByWWW=Online +OrderByPhone=Phone +# Documents models +PDFEinsteinDescription=A complete order model (old implementation of Eratosthene template) +PDFEratostheneDescription=A complete order model +PDFEdisonDescription=A simple order model +PDFProformaDescription=A complete Proforma invoice template +CreateInvoiceForThisCustomer=Bill orders +CreateInvoiceForThisSupplier=Bill orders +NoOrdersToInvoice=No orders billable +CloseProcessedOrdersAutomatically=Classify "Processed" all selected orders. +OrderCreation=Order creation +Ordered=Ordered +OrderCreated=Your orders have been created +OrderFail=An error happened during your orders creation +CreateOrders=Create orders +ToBillSeveralOrderSelectCustomer=To create an invoice for several orders, click first onto customer, then choose "%s". +OptionToSetOrderBilledNotEnabled=Option from module Workflow, to set order to 'Billed' automatically when invoice is validated, is not enabled, so you will have to set the status of orders to 'Billed' manually after the invoice has been generated. +IfValidateInvoiceIsNoOrderStayUnbilled=If invoice validation is 'No', the order will remain to status 'Unbilled' until the invoice is validated. +CloseReceivedSupplierOrdersAutomatically=Close order to status "%s" automatically if all products are received. +SetShippingMode=Set shipping mode +WithReceptionFinished=With reception finished +#### supplier orders status +StatusSupplierOrderCanceledShort=Canceled +StatusSupplierOrderDraftShort=Draft +StatusSupplierOrderValidatedShort=Validated +StatusSupplierOrderSentShort=In process +StatusSupplierOrderSent=Shipment in process +StatusSupplierOrderOnProcessShort=Ordered +StatusSupplierOrderProcessedShort=Processed +StatusSupplierOrderDelivered=Delivered +StatusSupplierOrderDeliveredShort=Delivered +StatusSupplierOrderToBillShort=Delivered +StatusSupplierOrderApprovedShort=Approved +StatusSupplierOrderRefusedShort=Refused +StatusSupplierOrderToProcessShort=To process +StatusSupplierOrderReceivedPartiallyShort=Partially received +StatusSupplierOrderReceivedAllShort=Products received +StatusSupplierOrderCanceled=Canceled +StatusSupplierOrderDraft=Draft (needs to be validated) +StatusSupplierOrderValidated=Validated +StatusSupplierOrderOnProcess=Ordered - Standby reception +StatusSupplierOrderOnProcessWithValidation=Ordered - Standby reception or validation +StatusSupplierOrderProcessed=Processed +StatusSupplierOrderToBill=Delivered +StatusSupplierOrderApproved=Approved +StatusSupplierOrderRefused=Refused +StatusSupplierOrderReceivedPartially=Partially received +StatusSupplierOrderReceivedAll=All products received diff --git a/htdocs/langs/am_ET/other.lang b/htdocs/langs/am_ET/other.lang new file mode 100644 index 00000000000..ba85f51e739 --- /dev/null +++ b/htdocs/langs/am_ET/other.lang @@ -0,0 +1,286 @@ +# Dolibarr language file - Source file is en_US - other +SecurityCode=Security code +NumberingShort=N° +Tools=Tools +TMenuTools=Tools +ToolsDesc=All tools not included in other menu entries are grouped here.
    All the tools can be accessed via the left menu. +Birthday=Birthday +BirthdayDate=Birthday date +DateToBirth=Birth date +BirthdayAlertOn=birthday alert active +BirthdayAlertOff=birthday alert inactive +TransKey=Translation of the key TransKey +MonthOfInvoice=Month (number 1-12) of invoice date +TextMonthOfInvoice=Month (text) of invoice date +PreviousMonthOfInvoice=Previous month (number 1-12) of invoice date +TextPreviousMonthOfInvoice=Previous month (text) of invoice date +NextMonthOfInvoice=Following month (number 1-12) of invoice date +TextNextMonthOfInvoice=Following month (text) of invoice date +ZipFileGeneratedInto=Zip file generated into %s. +DocFileGeneratedInto=Doc file generated into %s. +JumpToLogin=Disconnected. Go to login page... +MessageForm=Message on online payment form +MessageOK=Message on the return page for a validated payment +MessageKO=Message on the return page for a canceled payment +ContentOfDirectoryIsNotEmpty=Content of this directory is not empty. +DeleteAlsoContentRecursively=Check to delete all content recursively +PoweredBy=Powered by +YearOfInvoice=Year of invoice date +PreviousYearOfInvoice=Previous year of invoice date +NextYearOfInvoice=Following year of invoice date +DateNextInvoiceBeforeGen=Date of next invoice (before generation) +DateNextInvoiceAfterGen=Date of next invoice (after generation) +GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mode. The mode 'Lines' was automatically selected instead. +OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. +AtLeastOneMeasureIsRequired=At least 1 field for measure is required +AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required +LatestBlogPosts=Latest Blog Posts +Notify_ORDER_VALIDATE=Sales order validated +Notify_ORDER_SENTBYMAIL=Sales order sent by mail +Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email +Notify_ORDER_SUPPLIER_VALIDATE=Purchase order recorded +Notify_ORDER_SUPPLIER_APPROVE=Purchase order approved +Notify_ORDER_SUPPLIER_REFUSE=Purchase order refused +Notify_PROPAL_VALIDATE=Customer proposal validated +Notify_PROPAL_CLOSE_SIGNED=Customer proposal closed signed +Notify_PROPAL_CLOSE_REFUSED=Customer proposal closed refused +Notify_PROPAL_SENTBYMAIL=Commercial proposal sent by mail +Notify_WITHDRAW_TRANSMIT=Transmission withdrawal +Notify_WITHDRAW_CREDIT=Credit withdrawal +Notify_WITHDRAW_EMIT=Perform withdrawal +Notify_COMPANY_CREATE=Third party created +Notify_COMPANY_SENTBYMAIL=Mails sent from third party card +Notify_BILL_VALIDATE=Customer invoice validated +Notify_BILL_UNVALIDATE=Customer invoice unvalidated +Notify_BILL_PAYED=Customer invoice paid +Notify_BILL_CANCEL=Customer invoice canceled +Notify_BILL_SENTBYMAIL=Customer invoice sent by mail +Notify_BILL_SUPPLIER_VALIDATE=Vendor invoice validated +Notify_BILL_SUPPLIER_PAYED=Vendor invoice paid +Notify_BILL_SUPPLIER_SENTBYMAIL=Vendor invoice sent by mail +Notify_BILL_SUPPLIER_CANCELED=Vendor invoice cancelled +Notify_CONTRACT_VALIDATE=Contract validated +Notify_FICHINTER_VALIDATE=Intervention validated +Notify_FICHINTER_ADD_CONTACT=Added contact to Intervention +Notify_FICHINTER_SENTBYMAIL=Intervention sent by mail +Notify_SHIPPING_VALIDATE=Shipping validated +Notify_SHIPPING_SENTBYMAIL=Shipping sent by mail +Notify_MEMBER_VALIDATE=Member validated +Notify_MEMBER_MODIFY=Member modified +Notify_MEMBER_SUBSCRIPTION=Member subscribed +Notify_MEMBER_RESILIATE=Member terminated +Notify_MEMBER_DELETE=Member deleted +Notify_PROJECT_CREATE=Project creation +Notify_TASK_CREATE=Task created +Notify_TASK_MODIFY=Task modified +Notify_TASK_DELETE=Task deleted +Notify_EXPENSE_REPORT_VALIDATE=Expense report validated (approval required) +Notify_EXPENSE_REPORT_APPROVE=Expense report approved +Notify_HOLIDAY_VALIDATE=Leave request validated (approval required) +Notify_HOLIDAY_APPROVE=Leave request approved +SeeModuleSetup=See setup of module %s +NbOfAttachedFiles=Number of attached files/documents +TotalSizeOfAttachedFiles=Total size of attached files/documents +MaxSize=Maximum size +AttachANewFile=Attach a new file/document +LinkedObject=Linked object +NbOfActiveNotifications=Number of notifications (no. of recipient emails) +PredefinedMailTest=__(Hello)__\nThis is a test mail sent to __EMAIL__.\nThe two lines are separated by a carriage return.\n\n__USER_SIGNATURE__ +PredefinedMailTestHtml=__(Hello)__\nThis is a test 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__ +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__ +PredefinedMailContentSendSupplierProposal=__(Hello)__\n\nPlease find price request __REF__ attached\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ +PredefinedMailContentSendOrder=__(Hello)__\n\nPlease find order __REF__ attached\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ +PredefinedMailContentSendSupplierOrder=__(Hello)__\n\nPlease find our order __REF__ attached\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ +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__ +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 is a compact ERP/CRM supporting several business modules. A demo showcasing all modules makes no sense as this scenario never occurs (several hundred available). So, several demo profiles are available. +ChooseYourDemoProfil=Choose the demo profile that best suits your needs... +ChooseYourDemoProfilMore=...or build your own profile
    (manual module selection) +DemoFundation=Manage members of a foundation +DemoFundation2=Manage members and bank account of a foundation +DemoCompanyServiceOnly=Company or freelance selling service only +DemoCompanyShopWithCashDesk=Manage a shop with a cash desk +DemoCompanyProductAndStocks=Shop selling products with Point Of Sales +DemoCompanyManufacturing=Company manufacturing products +DemoCompanyAll=Company with multiple activities (all main modules) +CreatedBy=Created by %s +ModifiedBy=Modified by %s +ValidatedBy=Validated by %s +ClosedBy=Closed by %s +CreatedById=User id who created +ModifiedById=User id who made latest change +ValidatedById=User id who validated +CanceledById=User id who canceled +ClosedById=User id who closed +CreatedByLogin=User login who created +ModifiedByLogin=User login who made latest change +ValidatedByLogin=User login who validated +CanceledByLogin=User login who canceled +ClosedByLogin=User login who closed +FileWasRemoved=File %s was removed +DirWasRemoved=Directory %s was removed +FeatureNotYetAvailable=Feature not yet available in the current version +FeaturesSupported=Supported features +Width=Width +Height=Height +Depth=Depth +Top=Top +Bottom=Bottom +Left=Left +Right=Right +CalculatedWeight=Calculated weight +CalculatedVolume=Calculated volume +Weight=Weight +WeightUnitton=tonne +WeightUnitkg=kg +WeightUnitg=g +WeightUnitmg=mg +WeightUnitpound=pound +WeightUnitounce=ounce +Length=Length +LengthUnitm=m +LengthUnitdm=dm +LengthUnitcm=cm +LengthUnitmm=mm +Surface=Area +SurfaceUnitm2=m² +SurfaceUnitdm2=dm² +SurfaceUnitcm2=cm² +SurfaceUnitmm2=mm² +SurfaceUnitfoot2=ft² +SurfaceUnitinch2=in² +Volume=Volume +VolumeUnitm3=m³ +VolumeUnitdm3=dm³ (L) +VolumeUnitcm3=cm³ (ml) +VolumeUnitmm3=mm³ (µl) +VolumeUnitfoot3=ft³ +VolumeUnitinch3=in³ +VolumeUnitounce=ounce +VolumeUnitlitre=litre +VolumeUnitgallon=gallon +SizeUnitm=m +SizeUnitdm=dm +SizeUnitcm=cm +SizeUnitmm=mm +SizeUnitinch=inch +SizeUnitfoot=foot +SizeUnitpoint=point +BugTracker=Bug tracker +SendNewPasswordDesc=This form allows you to request a new password. It will be sent to your email address.
    Change will become effective once you click on the confirmation link in the email.
    Check your inbox. +BackToLoginPage=Back to login page +AuthenticationDoesNotAllowSendNewPassword=Authentication mode is %s.
    In this mode, Dolibarr can't know nor change your password.
    Contact your system administrator if you want to change your password. +EnableGDLibraryDesc=Install or enable GD library on your PHP installation to use this option. +ProfIdShortDesc=Prof Id %s is an information depending on third party country.
    For example, for country %s, it's code %s. +DolibarrDemo=Dolibarr ERP/CRM demo +StatsByNumberOfUnits=Statistics for sum of qty of products/services +StatsByNumberOfEntities=Statistics in number of referring entities (no. of invoice, or order...) +NumberOfProposals=Number of proposals +NumberOfCustomerOrders=Number of sales orders +NumberOfCustomerInvoices=Number of customer invoices +NumberOfSupplierProposals=Number of vendor proposals +NumberOfSupplierOrders=Number of purchase orders +NumberOfSupplierInvoices=Number of vendor invoices +NumberOfContracts=Number of contracts +NumberOfMos=Number of manufacturing orders +NumberOfUnitsProposals=Number of units on proposals +NumberOfUnitsCustomerOrders=Number of units on sales orders +NumberOfUnitsCustomerInvoices=Number of units on customer invoices +NumberOfUnitsSupplierProposals=Number of units on vendor proposals +NumberOfUnitsSupplierOrders=Number of units on purchase orders +NumberOfUnitsSupplierInvoices=Number of units on vendor invoices +NumberOfUnitsContracts=Number of units on contracts +NumberOfUnitsMos=Number of units to produce in manufacturing orders +EMailTextInterventionAddedContact=A new intervention %s has been assigned to you. +EMailTextInterventionValidated=The intervention %s has been validated. +EMailTextInvoiceValidated=Invoice %s has been validated. +EMailTextInvoicePayed=Invoice %s has been paid. +EMailTextProposalValidated=Proposal %s has been validated. +EMailTextProposalClosedSigned=Proposal %s has been closed signed. +EMailTextOrderValidated=Order %s has been validated. +EMailTextOrderApproved=Order %s has been approved. +EMailTextOrderValidatedBy=Order %s has been recorded by %s. +EMailTextOrderApprovedBy=Order %s has been approved by %s. +EMailTextOrderRefused=Order %s has been refused. +EMailTextOrderRefusedBy=Order %s has been refused by %s. +EMailTextExpeditionValidated=Shipping %s has been validated. +EMailTextExpenseReportValidated=Expense report %s has been validated. +EMailTextExpenseReportApproved=Expense report %s has been approved. +EMailTextHolidayValidated=Leave request %s has been validated. +EMailTextHolidayApproved=Leave request %s has been approved. +ImportedWithSet=Importation data set +DolibarrNotification=Automatic notification +ResizeDesc=Enter new width OR new height. Ratio will be kept during resizing... +NewLength=New width +NewHeight=New height +NewSizeAfterCropping=New size after cropping +DefineNewAreaToPick=Define new area on image to pick (left click on image then drag until you reach the opposite corner) +CurrentInformationOnImage=This tool was designed to help you to resize or crop an image. This is the information on the current edited image +ImageEditor=Image editor +YouReceiveMailBecauseOfNotification=You receive this message because your email has been added to list of targets to be informed of particular events into %s software of %s. +YouReceiveMailBecauseOfNotification2=This event is the following: +ThisIsListOfModules=This is a list of modules preselected by this demo profile (only most common modules are visible in this demo). Edit this to have a more personalized demo and click on "Start". +UseAdvancedPerms=Use the advanced permissions of some modules +FileFormat=File format +SelectAColor=Choose a color +AddFiles=Add Files +StartUpload=Start upload +CancelUpload=Cancel upload +FileIsTooBig=Files is too big +PleaseBePatient=Please be patient... +NewPassword=New password +ResetPassword=Reset password +RequestToResetPasswordReceived=A request to change your password has been received. +NewKeyIs=This is your new keys to login +NewKeyWillBe=Your new key to login to software will be +ClickHereToGoTo=Click here to go to %s +YouMustClickToChange=You must however first click on the following link to validate this password change +ForgetIfNothing=If you didn't request this change, just forget this email. Your credentials are kept safe. +IfAmountHigherThan=If amount higher than %s +SourcesRepository=Repository for sources +Chart=Chart +PassEncoding=Password encoding +PermissionsAdd=Permissions added +PermissionsDelete=Permissions removed +YourPasswordMustHaveAtLeastXChars=Your password must have at least %s chars +YourPasswordHasBeenReset=Your password has been reset successfully +ApplicantIpAddress=IP address of applicant +SMSSentTo=SMS sent to %s +MissingIds=Missing ids +ThirdPartyCreatedByEmailCollector=Third party created by email collector from email MSGID %s +ContactCreatedByEmailCollector=Contact/address created by email collector from email MSGID %s +ProjectCreatedByEmailCollector=Project created by email collector from email MSGID %s +TicketCreatedByEmailCollector=Ticket created by email collector from email MSGID %s +OpeningHoursFormatDesc=Use a - to separate opening and closing hours.
    Use a space to enter different ranges.
    Example: 8-12 14-18 + +##### Export ##### +ExportsArea=Exports area +AvailableFormats=Available formats +LibraryUsed=Library used +LibraryVersion=Library version +ExportableDatas=Exportable data +NoExportableData=No exportable data (no modules with exportable data loaded, or missing permissions) +##### External sites ##### +WebsiteSetup=Setup of module website +WEBSITE_PAGEURL=URL of page +WEBSITE_TITLE=Title +WEBSITE_DESCRIPTION=Description +WEBSITE_IMAGE=Image +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). +WEBSITE_KEYWORDS=Keywords +LinesToImport=Lines to import + +MemoryUsage=Memory usage +RequestDuration=Duration of request +PopuProp=Products/Services by popularity in Proposals +PopuCom=Products/Services by popularity in Orders +ProductStatistics=Products/Services Statistics +NbOfQtyInOrders=Qty in orders diff --git a/htdocs/langs/am_ET/paybox.lang b/htdocs/langs/am_ET/paybox.lang new file mode 100644 index 00000000000..1bbbef4017b --- /dev/null +++ b/htdocs/langs/am_ET/paybox.lang @@ -0,0 +1,31 @@ +# Dolibarr language file - Source file is en_US - paybox +PayBoxSetup=PayBox module setup +PayBoxDesc=This module offer pages to allow payment on Paybox by customers. This can be used for a free payment or for a payment on a particular Dolibarr object (invoice, order, ...) +FollowingUrlAreAvailableToMakePayments=Following URLs are available to offer a page to a customer to make a payment on Dolibarr objects +PaymentForm=Payment form +WelcomeOnPaymentPage=Welcome to our online payment service +ThisScreenAllowsYouToPay=This screen allow you to make an online payment to %s. +ThisIsInformationOnPayment=This is information on payment to do +ToComplete=To complete +YourEMail=Email to receive payment confirmation +Creditor=Creditor +PaymentCode=Payment code +PayBoxDoPayment=Pay with Paybox +YouWillBeRedirectedOnPayBox=You will be redirected on secured Paybox page to input you credit card information +Continue=Next +SetupPayBoxToHavePaymentCreatedAutomatically=Setup your Paybox with url %s to have payment created automatically when validated by Paybox. +YourPaymentHasBeenRecorded=This page confirms that your payment has been recorded. Thank you. +YourPaymentHasNotBeenRecorded=Your payment has NOT been recorded and the transaction has been canceled. Thank you. +AccountParameter=Account parameters +UsageParameter=Usage parameters +InformationToFindParameters=Help to find your %s account information +PAYBOX_CGI_URL_V2=Url of Paybox CGI module for payment +VendorName=Name of vendor +CSSUrlForPaymentForm=CSS style sheet url for payment form +NewPayboxPaymentReceived=New Paybox payment received +NewPayboxPaymentFailed=New Paybox payment tried but failed +PAYBOX_PAYONLINE_SENDEMAIL=Email notification after payment attempt (success or fail) +PAYBOX_PBX_SITE=Value for PBX SITE +PAYBOX_PBX_RANG=Value for PBX Rang +PAYBOX_PBX_IDENTIFIANT=Value for PBX ID +PAYBOX_HMAC_KEY=HMAC key diff --git a/htdocs/langs/am_ET/paypal.lang b/htdocs/langs/am_ET/paypal.lang new file mode 100644 index 00000000000..5eb5f389445 --- /dev/null +++ b/htdocs/langs/am_ET/paypal.lang @@ -0,0 +1,36 @@ +# Dolibarr language file - Source file is en_US - paypal +PaypalSetup=PayPal module setup +PaypalDesc=This module allows payment by customers via PayPal. This can be used for a ad-hoc payment or for a payment related to a Dolibarr object (invoice, order, ...) +PaypalOrCBDoPayment=Pay with PayPal (Card or PayPal) +PaypalDoPayment=Pay with PayPal +PAYPAL_API_SANDBOX=Mode test/sandbox +PAYPAL_API_USER=API username +PAYPAL_API_PASSWORD=API password +PAYPAL_API_SIGNATURE=API signature +PAYPAL_SSLVERSION=Curl SSL Version +PAYPAL_API_INTEGRAL_OR_PAYPALONLY=Offer "integral" payment (Credit card+PayPal) or "PayPal" only +PaypalModeIntegral=Integral +PaypalModeOnlyPaypal=PayPal only +ONLINE_PAYMENT_CSS_URL=Optional URL of CSS stylesheet on online payment page +ThisIsTransactionId=This is id of transaction: %s +PAYPAL_ADD_PAYMENT_URL=Include the PayPal payment url when you send a document by email +NewOnlinePaymentReceived=New online payment received +NewOnlinePaymentFailed=New online payment tried but failed +ONLINE_PAYMENT_SENDEMAIL=Email address for notifications after each payment attempt (for success and fail) +ReturnURLAfterPayment=Return URL after payment +ValidationOfOnlinePaymentFailed=Validation of online payment failed +PaymentSystemConfirmPaymentPageWasCalledButFailed=Payment confirmation page was called by payment system returned an error +SetExpressCheckoutAPICallFailed=SetExpressCheckout API call failed. +DoExpressCheckoutPaymentAPICallFailed=DoExpressCheckoutPayment API call failed. +DetailedErrorMessage=Detailed Error Message +ShortErrorMessage=Short Error Message +ErrorCode=Error Code +ErrorSeverityCode=Error Severity Code +OnlinePaymentSystem=Online payment system +PaypalLiveEnabled=PayPal "live" mode enabled (otherwise test/sandbox mode) +PaypalImportPayment=Import PayPal payments +PostActionAfterPayment=Post actions after payments +ARollbackWasPerformedOnPostActions=A rollback was performed on all Post actions. You must complete post actions manually if they are necessary. +ValidationOfPaymentFailed=Validation of payment has failed +CardOwner=Card holder +PayPalBalance=Paypal credit diff --git a/htdocs/langs/am_ET/printing.lang b/htdocs/langs/am_ET/printing.lang new file mode 100644 index 00000000000..16494583550 --- /dev/null +++ b/htdocs/langs/am_ET/printing.lang @@ -0,0 +1,54 @@ +# Dolibarr language file - Source file is en_US - printing +Module64000Name=Direct Printing +Module64000Desc=Enable Direct Printing System +PrintingSetup=Setup of Direct Printing System +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=Direct Printing jobs +DirectPrint=Direct print +PrintingDriverDesc=Configuration variables for printing driver. +ListDrivers=List of drivers +PrintTestDesc=List of Printers. +FileWasSentToPrinter=File %s was sent to printer +ViaModule=via the module +NoActivePrintingModuleFound=No active driver to print document. Check setup of module %s. +PleaseSelectaDriverfromList=Please select a driver from list. +PleaseConfigureDriverfromList=Please configure the selected driver from list. +SetupDriver=Driver setup +TargetedPrinter=Targeted printer +UserConf=Setup per user +PRINTGCP_INFO=Google OAuth API setup +PRINTGCP_AUTHLINK=Authentication +PRINTGCP_TOKEN_ACCESS=Google Cloud Print OAuth Token +PrintGCPDesc=This driver allows sending documents directly to a printer using Google Cloud Print. +GCP_Name=Name +GCP_displayName=Display Name +GCP_Id=Printer Id +GCP_OwnerName=Owner Name +GCP_State=Printer State +GCP_connectionStatus=Online State +GCP_Type=Printer Type +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=Login +PRINTIPP_PASSWORD=Password +NoDefaultPrinterDefined=No default printer defined +DefaultPrinter=Default printer +Printer=Printer +IPP_Uri=Printer Uri +IPP_Name=Printer Name +IPP_State=Printer State +IPP_State_reason=State reason +IPP_State_reason1=State reason1 +IPP_BW=BW +IPP_Color=Color +IPP_Device=Device +IPP_Media=Printer media +IPP_Supported=Type of media +DirectPrintingJobsDesc=This page lists printing jobs found for available printers. +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/am_ET/productbatch.lang b/htdocs/langs/am_ET/productbatch.lang new file mode 100644 index 00000000000..54270c4a23b --- /dev/null +++ b/htdocs/langs/am_ET/productbatch.lang @@ -0,0 +1,24 @@ +# ProductBATCH language file - en_US - ProductBATCH +ManageLotSerial=Use lot/serial number +ProductStatusOnBatch=Yes (lot/serial required) +ProductStatusNotOnBatch=No (lot/serial not used) +ProductStatusOnBatchShort=Yes +ProductStatusNotOnBatchShort=No +Batch=Lot/Serial +atleast1batchfield=Eat-by date or Sell-by date or Lot/Serial number +batch_number=Lot/Serial number +BatchNumberShort=Lot/Serial +EatByDate=Eat-by date +SellByDate=Sell-by date +DetailBatchNumber=Lot/Serial details +printBatch=Lot/Serial: %s +printEatby=Eat-by: %s +printSellby=Sell-by: %s +printQty=Qty: %d +AddDispatchBatchLine=Add a line for Shelf Life dispatching +WhenProductBatchModuleOnOptionAreForced=When module Lot/Serial is on, automatic stock decrease is forced to 'Decrease real stocks on shipping validation' and automatic increase mode is forced to 'Increase real stocks on manual dispatching into warehouses' and can't be edited. Other options can be defined as you want. +ProductDoesNotUseBatchSerial=This product does not use lot/serial number +ProductLotSetup=Setup of module lot/serial +ShowCurrentStockOfLot=Show current stock for couple product/lot +ShowLogOfMovementIfLot=Show log of movements for couple product/lot +StockDetailPerBatch=Stock detail per lot diff --git a/htdocs/langs/am_ET/products.lang b/htdocs/langs/am_ET/products.lang new file mode 100644 index 00000000000..a31243a07b6 --- /dev/null +++ b/htdocs/langs/am_ET/products.lang @@ -0,0 +1,385 @@ +# Dolibarr language file - Source file is en_US - products +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 +TMenuProducts=Products +TMenuServices=Services +Products=Products +Services=Services +Product=Product +Service=Service +ProductId=Product/service id +Create=Create +Reference=Reference +NewProduct=New product +NewService=New service +ProductVatMassChange=Global VAT Update +ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL products and services! +MassBarcodeInit=Mass barcode init +MassBarcodeInitDesc=This page can be used to initialize a barcode on objects that does not have barcode defined. Check before that setup of module barcode is complete. +ProductAccountancyBuyCode=Accounting code (purchase) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) +ProductAccountancySellCode=Accounting code (sale) +ProductAccountancySellIntraCode=Accounting code (sale intra-Community) +ProductAccountancySellExportCode=Accounting code (sale export) +ProductOrService=Product or Service +ProductsAndServices=Products and Services +ProductsOrServices=Products or Services +ProductsPipeServices=Products | Services +ProductsOnSale=Products for sale +ProductsOnPurchase=Products for purchase +ProductsOnSaleOnly=Products for sale only +ProductsOnPurchaseOnly=Products for purchase only +ProductsNotOnSell=Products not for sale and not for purchase +ProductsOnSellAndOnBuy=Products for sale and for purchase +ServicesOnSale=Services for sale +ServicesOnPurchase=Services for purchase +ServicesOnSaleOnly=Services for sale only +ServicesOnPurchaseOnly=Services for purchase only +ServicesNotOnSell=Services not for sale and not for purchase +ServicesOnSellAndOnBuy=Services for sale and for purchase +LastModifiedProductsAndServices=Last %s modified products/services +LastRecordedProducts=Latest %s recorded products +LastRecordedServices=Latest %s recorded services +CardProduct0=Product +CardProduct1=Service +Stock=Stock +MenuStocks=Stocks +Stocks=Stocks and location (warehouse) of products +Movements=Movements +Sell=Sell +Buy=Purchase +OnSell=For sale +OnBuy=For purchase +NotOnSell=Not for sale +ProductStatusOnSell=For sale +ProductStatusNotOnSell=Not for sale +ProductStatusOnSellShort=For sale +ProductStatusNotOnSellShort=Not for sale +ProductStatusOnBuy=For purchase +ProductStatusNotOnBuy=Not for purchase +ProductStatusOnBuyShort=For purchase +ProductStatusNotOnBuyShort=Not for purchase +UpdateVAT=Update vat +UpdateDefaultPrice=Update default price +UpdateLevelPrices=Update prices for each level +AppliedPricesFrom=Applied from +SellingPrice=Selling price +SellingPriceHT=Selling price (excl. tax) +SellingPriceTTC=Selling price (inc. tax) +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. +CostPriceUsage=This value could be used for margin calculation. +SoldAmount=Sold amount +PurchasedAmount=Purchased amount +NewPrice=New price +MinPrice=Min. sell price +EditSellingPriceLabel=Edit selling price label +CantBeLessThanMinPrice=The selling price can't be lower than minimum allowed for this product (%s without tax). This message can also appears if you type a too important discount. +ContractStatusClosed=Closed +ErrorProductAlreadyExists=A product with reference %s already exists. +ErrorProductBadRefOrLabel=Wrong value for reference or label. +ErrorProductClone=There was a problem while trying to clone the product or service. +ErrorPriceCantBeLowerThanMinPrice=Error, price can't be lower than minimum price. +Suppliers=Vendors +SupplierRef=Vendor SKU +ShowProduct=Show product +ShowService=Show service +ProductsAndServicesArea=Product and Services area +ProductsArea=Product area +ServicesArea=Services area +ListOfStockMovements=List of stock movements +BuyingPrice=Buying price +PriceForEachProduct=Products with specific prices +SupplierCard=Vendor card +PriceRemoved=Price removed +BarCode=Barcode +BarcodeType=Barcode type +SetDefaultBarcodeType=Set barcode type +BarcodeValue=Barcode value +NoteNotVisibleOnBill=Note (not visible on invoices, proposals...) +ServiceLimitedDuration=If product is a service with limited duration: +MultiPricesAbility=Multiple price segments per product/service (each customer is in one price segment) +MultiPricesNumPrices=Number of prices +AssociatedProductsAbility=Activate virtual products (kits) +AssociatedProducts=Virtual products +AssociatedProductsNumber=Number of products composing this virtual product +ParentProductsNumber=Number of parent packaging product +ParentProducts=Parent products +IfZeroItIsNotAVirtualProduct=If 0, this product is not a virtual product +IfZeroItIsNotUsedByVirtualProduct=If 0, this product is not used by any virtual product +KeywordFilter=Keyword filter +CategoryFilter=Category filter +ProductToAddSearch=Search product to add +NoMatchFound=No match found +ListOfProductsServices=List of products/services +ProductAssociationList=List of products/services that are component(s) of this virtual product/kit +ProductParentList=List of virtual products/services with this product as a component +ErrorAssociationIsFatherOfThis=One of selected product is parent with current product +DeleteProduct=Delete a product/service +ConfirmDeleteProduct=Are you sure you want to delete this product/service? +ProductDeleted=Product/Service "%s" deleted from database. +ExportDataset_produit_1=Products +ExportDataset_service_1=Services +ImportDataset_produit_1=Products +ImportDataset_service_1=Services +DeleteProductLine=Delete product line +ConfirmDeleteProductLine=Are you sure you want to delete this product line? +ProductSpecial=Special +QtyMin=Min. purchase quantity +PriceQtyMin=Price quantity min. +PriceQtyMinCurrency=Price (currency) for this qty. (no discount) +VATRateForSupplierProduct=VAT Rate (for this vendor/product) +DiscountQtyMin=Discount for this qty. +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=Predefined products/services to sell +PredefinedProductsToPurchase=Predefined product to purchase +PredefinedServicesToPurchase=Predefined services to purchase +PredefinedProductsAndServicesToPurchase=Predefined products/services to purchase +NotPredefinedProducts=Not predefined products/services +GenerateThumb=Generate thumb +ServiceNb=Service #%s +ListProductServiceByPopularity=List of products/services by popularity +ListProductByPopularity=List of products by popularity +ListServiceByPopularity=List of services by popularity +Finished=Manufactured product +RowMaterial=Raw Material +ConfirmCloneProduct=Are you sure you want to clone product or service %s? +CloneContentProduct=Clone all main information of product/service +ClonePricesProduct=Clone prices +CloneCategoriesProduct=Clone tags/categories linked +CloneCompositionProduct=Clone virtual product/service +CloneCombinationsProduct=Clone product variants +ProductIsUsed=This product is used +NewRefForClone=Ref. of new product/service +SellingPrices=Selling prices +BuyingPrices=Buying prices +CustomerPrices=Customer prices +SuppliersPrices=Vendor prices +SuppliersPricesOfProductsOrServices=Vendor prices (of products or services) +CustomCode=Customs / Commodity / HS code +CountryOrigin=Origin country +Nature=Nature of product (material/finished) +ShortLabel=Short label +Unit=Unit +p=u. +set=set +se=set +second=second +s=s +hour=hour +h=h +day=day +d=d +kilogram=kilogram +kg=Kg +gram=gram +g=g +meter=meter +m=m +lm=lm +m2=m² +m3=m³ +liter=liter +l=L +unitP=Piece +unitSET=Set +unitS=Second +unitH=Hour +unitD=Day +unitG=Gram +unitM=Meter +unitLM=Linear meter +unitM2=Square meter +unitM3=Cubic meter +unitL=Liter +unitT=ton +unitKG=kg +unitG=Gram +unitMG=mg +unitLB=pound +unitOZ=ounce +unitM=Meter +unitDM=dm +unitCM=cm +unitMM=mm +unitFT=ft +unitIN=in +unitM2=Square meter +unitDM2=dm² +unitCM2=cm² +unitMM2=mm² +unitFT2=ft² +unitIN2=in² +unitM3=Cubic meter +unitDM3=dm³ +unitCM3=cm³ +unitMM3=mm³ +unitFT3=ft³ +unitIN3=in³ +unitOZ3=ounce +unitgallon=gallon +ProductCodeModel=Product ref template +ServiceCodeModel=Service ref template +CurrentProductPrice=Current price +AlwaysUseNewPrice=Always use current price of product/service +AlwaysUseFixedPrice=Use the fixed price +PriceByQuantity=Different prices by quantity +DisablePriceByQty=Disable prices by quantity +PriceByQuantityRange=Quantity range +MultipriceRules=Price segment rules +UseMultipriceRules=Use price segment rules (defined into product module setup) to auto calculate prices of all other segments according to first segment +PercentVariationOver=%% variation over %s +PercentDiscountOver=%% discount over %s +KeepEmptyForAutoCalculation=Keep empty to have this calculated automatically from weight or volume of products +VariantRefExample=Examples: COL, SIZE +VariantLabelExample=Examples: Color, Size +### composition fabrication +Build=Produce +ProductsMultiPrice=Products and prices for each price segment +ProductsOrServiceMultiPrice=Customer prices (of products or services, multi-prices) +ProductSellByQuarterHT=Products turnover quarterly before tax +ServiceSellByQuarterHT=Services turnover quarterly before tax +Quarter1=1st. Quarter +Quarter2=2nd. Quarter +Quarter3=3rd. Quarter +Quarter4=4th. Quarter +BarCodePrintsheet=Print barcode +PageToGenerateBarCodeSheets=With this tool, you can print sheets of barcode stickers. Choose format of your sticker page, type of barcode and value of barcode, then click on button %s. +NumberOfStickers=Number of stickers to print on page +PrintsheetForOneBarCode=Print several stickers for one barcode +BuildPageToPrint=Generate page to print +FillBarCodeTypeAndValueManually=Fill barcode type and value manually. +FillBarCodeTypeAndValueFromProduct=Fill barcode type and value from barcode of a product. +FillBarCodeTypeAndValueFromThirdParty=Fill barcode type and value from barcode of a third party. +DefinitionOfBarCodeForProductNotComplete=Definition of type or value of barcode not complete for product %s. +DefinitionOfBarCodeForThirdpartyNotComplete=Definition of type or value of barcode non complete for third party %s. +BarCodeDataForProduct=Barcode information of product %s: +BarCodeDataForThirdparty=Barcode information of third party %s: +ResetBarcodeForAllRecords=Define barcode value for all record (this will also reset barcode value already defined with new values) +PriceByCustomer=Different prices for each customer +PriceCatalogue=A single sell price per product/service +PricingRule=Rules for selling prices +AddCustomerPrice=Add price by customer +ForceUpdateChildPriceSoc=Set same price on customer subsidiaries +PriceByCustomerLog=Log of previous customer prices +MinimumPriceLimit=Minimum price can't be lower then %s +MinimumRecommendedPrice=Minimum recommended price is: %s +PriceExpressionEditor=Price expression editor +PriceExpressionSelected=Selected price expression +PriceExpressionEditorHelp1="price = 2 + 2" or "2 + 2" for setting the price. Use ; to separate expressions +PriceExpressionEditorHelp2=You can access ExtraFields with variables like #extrafield_myextrafieldkey# and global variables with #global_mycode# +PriceExpressionEditorHelp3=In both product/service and vendor prices there are these variables available:
    #tva_tx# #localtax1_tx# #localtax2_tx# #weight# #length# #surface# #price_min# +PriceExpressionEditorHelp4=In product/service price only: #supplier_min_price#
    In vendor prices only: #supplier_quantity# and #supplier_tva_tx# +PriceExpressionEditorHelp5=Available global values: +PriceMode=Price mode +PriceNumeric=Number +DefaultPrice=Default price +ComposedProductIncDecStock=Increase/Decrease stock on parent change +ComposedProduct=Child products +MinSupplierPrice=Minimum buying price +MinCustomerPrice=Minimum selling price +DynamicPriceConfiguration=Dynamic price configuration +DynamicPriceDesc=You may define mathematical formulae to calculate Customer or Vendor prices. Such formulas can use all mathematical operators, some constants and variables. You can define here the variables you wish to use. If the variable needs an automatic update, you may define the external URL to allow Dolibarr to update the value automatically. +AddVariable=Add Variable +AddUpdater=Add Updater +GlobalVariables=Global variables +VariableToUpdate=Variable to update +GlobalVariableUpdaters=External updaters for variables +GlobalVariableUpdaterType0=JSON data +GlobalVariableUpdaterHelp0=Parses JSON data from specified URL, VALUE specifies the location of relevant value, +GlobalVariableUpdaterHelpFormat0=Format for request {"URL": "http://example.com/urlofjson", "VALUE": "array1,array2,targetvalue"} +GlobalVariableUpdaterType1=WebService data +GlobalVariableUpdaterHelp1=Parses WebService data from specified URL, NS specifies the namespace, VALUE specifies the location of relevant value, DATA should contain the data to send and METHOD is the calling WS method +GlobalVariableUpdaterHelpFormat1=Format for request is {"URL": "http://example.com/urlofws", "VALUE": "array,targetvalue", "NS": "http://example.com/urlofns", "METHOD": "myWSMethod", "DATA": {"your": "data", "to": "send"}} +UpdateInterval=Update interval (minutes) +LastUpdated=Latest update +CorrectlyUpdated=Correctly updated +PropalMergePdfProductActualFile=Files use to add into PDF Azur are/is +PropalMergePdfProductChooseFile=Select PDF files +IncludingProductWithTag=Including product/service with tag +DefaultPriceRealPriceMayDependOnCustomer=Default price, real price may depend on customer +WarningSelectOneDocument=Please select at least one document +DefaultUnitToShow=Unit +NbOfQtyInProposals=Qty in proposals +ClinkOnALinkOfColumn=Click on a link of column %s to get a detailed view... +ProductsOrServicesTranslations=Products/Services translations +TranslatedLabel=Translated label +TranslatedDescription=Translated description +TranslatedNote=Translated notes +ProductWeight=Weight for 1 product +ProductVolume=Volume for 1 product +WeightUnits=Weight unit +VolumeUnits=Volume unit +WidthUnits=Width unit +LengthUnits=Length unit +HeightUnits=Height unit +SurfaceUnits=Surface unit +SizeUnits=Size unit +DeleteProductBuyPrice=Delete buying price +ConfirmDeleteProductBuyPrice=Are you sure you want to delete this buying price? +SubProduct=Sub product +ProductSheet=Product sheet +ServiceSheet=Service sheet +PossibleValues=Possible values +GoOnMenuToCreateVairants=Go on menu %s - %s to prepare attribute variants (like colors, size, ...) +UseProductFournDesc=Add a feature to define the descriptions of products defined by the vendors in addition to descriptions for customers +ProductSupplierDescription=Vendor description for the product +UseProductSupplierPackaging=Use packaging on supplier prices (recalculate quantities according to packaging set on supplier price when adding/updating line in supplier documents) +PackagingForThisProduct=Packaging +QtyRecalculatedWithPackaging=The quantity of the line were recalculated according to supplier packaging + +#Attributes +VariantAttributes=Variant attributes +ProductAttributes=Variant attributes for products +ProductAttributeName=Variant attribute %s +ProductAttribute=Variant attribute +ProductAttributeDeleteDialog=Are you sure you want to delete this attribute? All values will be deleted +ProductAttributeValueDeleteDialog=Are you sure you want to delete the value "%s" with reference "%s" of this attribute? +ProductCombinationDeleteDialog=Are you sure want to delete the variant of the product "%s"? +ProductCombinationAlreadyUsed=There was an error while deleting the variant. Please check it is not being used in any object +ProductCombinations=Variants +PropagateVariant=Propagate variants +HideProductCombinations=Hide products variant in the products selector +ProductCombination=Variant +NewProductCombination=New variant +EditProductCombination=Editing variant +NewProductCombinations=New variants +EditProductCombinations=Editing variants +SelectCombination=Select combination +ProductCombinationGenerator=Variants generator +Features=Features +PriceImpact=Price impact +WeightImpact=Weight impact +NewProductAttribute=New attribute +NewProductAttributeValue=New attribute value +ErrorCreatingProductAttributeValue=There was an error while creating the attribute value. It could be because there is already an existing value with that reference +ProductCombinationGeneratorWarning=If you continue, before generating new variants, all previous ones will be DELETED. Already existing ones will be updated with the new values +TooMuchCombinationsWarning=Generating lots of variants may result in high CPU, memory usage and Dolibarr not able to create them. Enabling the option "%s" may help reduce memory usage. +DoNotRemovePreviousCombinations=Do not remove previous variants +UsePercentageVariations=Use percentage variations +PercentageVariation=Percentage variation +ErrorDeletingGeneratedProducts=There was an error while trying to delete existing product variants +NbOfDifferentValues=No. of different values +NbProducts=Number of products +ParentProduct=Parent product +HideChildProducts=Hide variant products +ShowChildProducts=Show variant products +NoEditVariants=Go to Parent product card and edit variants price impact in the variants tab +ConfirmCloneProductCombinations=Would you like to copy all the product variants to the other parent product with the given reference? +CloneDestinationReference=Destination product reference +ErrorCopyProductCombinations=There was an error while copying the product variants +ErrorDestinationProductNotFound=Destination product not found +ErrorProductCombinationNotFound=Product variant not found +ActionAvailableOnVariantProductOnly=Action only available on the variant of product +ProductsPricePerCustomer=Product prices per customers +ProductSupplierExtraFields=Additional Attributes (Supplier Prices) +DeleteLinkedProduct=Delete the child product linked to the combination diff --git a/htdocs/langs/am_ET/projects.lang b/htdocs/langs/am_ET/projects.lang new file mode 100644 index 00000000000..bb42bff3c87 --- /dev/null +++ b/htdocs/langs/am_ET/projects.lang @@ -0,0 +1,267 @@ +# Dolibarr language file - Source file is en_US - projects +RefProject=Ref. project +ProjectRef=Project ref. +ProjectId=Project Id +ProjectLabel=Project label +ProjectsArea=Projects Area +ProjectStatus=Project status +SharedProject=Everybody +PrivateProject=Project contacts +ProjectsImContactFor=Projects for I am explicitly a contact +AllAllowedProjects=All project I can read (mine + public) +AllProjects=All projects +MyProjectsDesc=This view is limited to projects you are a contact for +ProjectsPublicDesc=This view presents all projects you are allowed to read. +TasksOnProjectsPublicDesc=This view presents all tasks on projects you are allowed to read. +ProjectsPublicTaskDesc=This view presents all projects and tasks you are allowed to read. +ProjectsDesc=This view presents all projects (your user permissions grant you permission to view everything). +TasksOnProjectsDesc=This view presents all tasks on all projects (your user permissions grant you permission to view everything). +MyTasksDesc=This view is limited to projects or tasks you are a contact for +OnlyOpenedProject=Only open projects are visible (projects in draft or closed status are not visible). +ClosedProjectsAreHidden=Closed projects are not visible. +TasksPublicDesc=This view presents all projects and tasks you are allowed to read. +TasksDesc=This view presents all projects and tasks (your user permissions grant you permission to view everything). +AllTaskVisibleButEditIfYouAreAssigned=All tasks for qualified projects are visible, but you can enter time only for task assigned to selected user. Assign task if you need to enter time on it. +OnlyYourTaskAreVisible=Only tasks assigned to you are visible. Assign task to yourself if it is not visible and you need to enter time on it. +ImportDatasetTasks=Tasks of projects +ProjectCategories=Project tags/categories +NewProject=New project +AddProject=Create project +DeleteAProject=Delete a project +DeleteATask=Delete a task +ConfirmDeleteAProject=Are you sure you want to delete this project? +ConfirmDeleteATask=Are you sure you want to delete this task? +OpenedProjects=Open projects +OpenedTasks=Open tasks +OpportunitiesStatusForOpenedProjects=Leads amount of open projects by status +OpportunitiesStatusForProjects=Leads amount of projects by status +ShowProject=Show project +ShowTask=Show task +SetProject=Set project +NoProject=No project defined or owned +NbOfProjects=Number of projects +NbOfTasks=Number of tasks +TimeSpent=Time spent +TimeSpentByYou=Time spent by you +TimeSpentByUser=Time spent by user +TimesSpent=Time spent +TaskId=Task ID +RefTask=Task ref. +LabelTask=Task label +TaskTimeSpent=Time spent on tasks +TaskTimeUser=User +TaskTimeNote=Note +TaskTimeDate=Date +TasksOnOpenedProject=Tasks on open projects +WorkloadNotDefined=Workload not defined +NewTimeSpent=Time spent +MyTimeSpent=My time spent +BillTime=Bill the time spent +BillTimeShort=Bill time +TimeToBill=Time not billed +TimeBilled=Time billed +Tasks=Tasks +Task=Task +TaskDateStart=Task start date +TaskDateEnd=Task end date +TaskDescription=Task description +NewTask=New task +AddTask=Create task +AddTimeSpent=Create time spent +AddHereTimeSpentForDay=Add here time spent for this day/task +AddHereTimeSpentForWeek=Add here time spent for this week/task +Activity=Activity +Activities=Tasks/activities +MyActivities=My tasks/activities +MyProjects=My projects +MyProjectsArea=My projects Area +DurationEffective=Effective duration +ProgressDeclared=Declared progress +TaskProgressSummary=Task progress +CurentlyOpenedTasks=Curently open tasks +TheReportedProgressIsLessThanTheCalculatedProgressionByX=The declared progress is less %s than the calculated progression +TheReportedProgressIsMoreThanTheCalculatedProgressionByX=The declared progress is more %s than the calculated progression +ProgressCalculated=Calculated progress +WhichIamLinkedTo=which I'm linked to +WhichIamLinkedToProject=which I'm linked to project +Time=Time +ListOfTasks=List of tasks +GoToListOfTimeConsumed=Go to list of time consumed +GanttView=Gantt View +ListProposalsAssociatedProject=List of the commercial proposals related to the project +ListOrdersAssociatedProject=List of sales orders related to the project +ListInvoicesAssociatedProject=List of customer invoices related to the project +ListPredefinedInvoicesAssociatedProject=List of customer template invoices related to the project +ListSupplierOrdersAssociatedProject=List of purchase orders related to the project +ListSupplierInvoicesAssociatedProject=List of vendor invoices related to the project +ListContractAssociatedProject=List of contracts related to the project +ListShippingAssociatedProject=List of shippings related to the project +ListFichinterAssociatedProject=List of interventions related to the project +ListExpenseReportsAssociatedProject=List of expense reports related to the project +ListDonationsAssociatedProject=List of donations related to the project +ListVariousPaymentsAssociatedProject=List of miscellaneous payments related to the project +ListSalariesAssociatedProject=List of payments of salaries related to the project +ListActionsAssociatedProject=List of events related to the project +ListMOAssociatedProject=List of manufacturing orders related to the project +ListTaskTimeUserProject=List of time consumed on tasks of project +ListTaskTimeForTask=List of time consumed on task +ActivityOnProjectToday=Activity on project today +ActivityOnProjectYesterday=Activity on project yesterday +ActivityOnProjectThisWeek=Activity on project this week +ActivityOnProjectThisMonth=Activity on project this month +ActivityOnProjectThisYear=Activity on project this year +ChildOfProjectTask=Child of project/task +ChildOfTask=Child of task +TaskHasChild=Task has child +NotOwnerOfProject=Not owner of this private project +AffectedTo=Allocated to +CantRemoveProject=This project can't be removed as it is referenced by some other objects (invoice, orders or other). See referers tab. +ValidateProject=Validate projet +ConfirmValidateProject=Are you sure you want to validate this project? +CloseAProject=Close project +ConfirmCloseAProject=Are you sure you want to close this project? +AlsoCloseAProject=Also close project (keep it open if you still need to follow production tasks on it) +ReOpenAProject=Open project +ConfirmReOpenAProject=Are you sure you want to re-open this project? +ProjectContact=Contacts of project +TaskContact=Task contacts +ActionsOnProject=Events on project +YouAreNotContactOfProject=You are not a contact of this private project +UserIsNotContactOfProject=User is not a contact of this private project +DeleteATimeSpent=Delete time spent +ConfirmDeleteATimeSpent=Are you sure you want to delete this time spent? +DoNotShowMyTasksOnly=See also tasks not assigned to me +ShowMyTasksOnly=View only tasks assigned to me +TaskRessourceLinks=Contacts of task +ProjectsDedicatedToThisThirdParty=Projects dedicated to this third party +NoTasks=No tasks for this project +LinkedToAnotherCompany=Linked to other third party +TaskIsNotAssignedToUser=Task not assigned to user. Use button '%s' to assign task now. +ErrorTimeSpentIsEmpty=Time spent is empty +ThisWillAlsoRemoveTasks=This action will also delete all tasks of project (%s tasks at the moment) and all inputs of time spent. +IfNeedToUseOtherObjectKeepEmpty=If some objects (invoice, order, ...), belonging to another third party, must be linked to the project to create, keep this empty to have the project being multi third parties. +CloneTasks=Clone tasks +CloneContacts=Clone contacts +CloneNotes=Clone notes +CloneProjectFiles=Clone project joined files +CloneTaskFiles=Clone task(s) joined files (if task(s) cloned) +CloneMoveDate=Update project/tasks dates from now? +ConfirmCloneProject=Are you sure to clone this project? +ProjectReportDate=Change task dates according to new project start date +ErrorShiftTaskDate=Impossible to shift task date according to new project start date +ProjectsAndTasksLines=Projects and tasks +ProjectCreatedInDolibarr=Project %s created +ProjectValidatedInDolibarr=Project %s validated +ProjectModifiedInDolibarr=Project %s modified +TaskCreatedInDolibarr=Task %s created +TaskModifiedInDolibarr=Task %s modified +TaskDeletedInDolibarr=Task %s deleted +OpportunityStatus=Lead status +OpportunityStatusShort=Lead status +OpportunityProbability=Lead probability +OpportunityProbabilityShort=Lead probab. +OpportunityAmount=Lead amount +OpportunityAmountShort=Lead amount +OpportunityWeightedAmount=Opportunity weighted amount +OpportunityWeightedAmountShort=Opp. weighted amount +OpportunityAmountAverageShort=Average lead amount +OpportunityAmountWeigthedShort=Weighted lead amount +WonLostExcluded=Won/Lost excluded +##### Types de contacts ##### +TypeContact_project_internal_PROJECTLEADER=Project leader +TypeContact_project_external_PROJECTLEADER=Project leader +TypeContact_project_internal_PROJECTCONTRIBUTOR=Contributor +TypeContact_project_external_PROJECTCONTRIBUTOR=Contributor +TypeContact_project_task_internal_TASKEXECUTIVE=Task executive +TypeContact_project_task_external_TASKEXECUTIVE=Task executive +TypeContact_project_task_internal_TASKCONTRIBUTOR=Contributor +TypeContact_project_task_external_TASKCONTRIBUTOR=Contributor +SelectElement=Select element +AddElement=Link to element +# Documents models +DocumentModelBeluga=Project document template for linked objects overview +DocumentModelBaleine=Project document template for tasks +DocumentModelTimeSpent=Project report template for time spent +PlannedWorkload=Planned workload +PlannedWorkloadShort=Workload +ProjectReferers=Related items +ProjectMustBeValidatedFirst=Project must be validated first +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time +InputPerDay=Input per day +InputPerWeek=Input per week +InputPerMonth=Input per month +InputDetail=Input detail +TimeAlreadyRecorded=This is time spent already recorded for this task/day and user %s +ProjectsWithThisUserAsContact=Projects with this user as contact +TasksWithThisUserAsContact=Tasks assigned to this user +ResourceNotAssignedToProject=Not assigned to project +ResourceNotAssignedToTheTask=Not assigned to the task +NoUserAssignedToTheProject=No users assigned to this project +TimeSpentBy=Time spent by +TasksAssignedTo=Tasks assigned to +AssignTaskToMe=Assign task to me +AssignTaskToUser=Assign task to %s +SelectTaskToAssign=Select task to assign... +AssignTask=Assign +ProjectOverview=Overview +ManageTasks=Use projects to follow tasks and/or report time spent (timesheets) +ManageOpportunitiesStatus=Use projects to follow leads/opportinuties +ProjectNbProjectByMonth=No. of created projects by month +ProjectNbTaskByMonth=No. of created tasks by month +ProjectOppAmountOfProjectsByMonth=Amount of leads by month +ProjectWeightedOppAmountOfProjectsByMonth=Weighted amount of leads by month +ProjectOpenedProjectByOppStatus=Open project/lead by lead status +ProjectsStatistics=Statistics on projects/leads +TasksStatistics=Statistics on project/lead tasks +TaskAssignedToEnterTime=Task assigned. Entering time on this task should be possible. +IdTaskTime=Id task time +YouCanCompleteRef=If you want to complete the ref with some suffix, it is recommanded to add a - character to separate it, so the automatic numbering will still work correctly for next projects. For example %s-MYSUFFIX +OpenedProjectsByThirdparties=Open projects by third parties +OnlyOpportunitiesShort=Only leads +OpenedOpportunitiesShort=Open leads +NotOpenedOpportunitiesShort=Not an open lead +NotAnOpportunityShort=Not a lead +OpportunityTotalAmount=Total amount of leads +OpportunityPonderatedAmount=Weighted amount of leads +OpportunityPonderatedAmountDesc=Leads amount weighted with probability +OppStatusPROSP=Prospection +OppStatusQUAL=Qualification +OppStatusPROPO=Proposal +OppStatusNEGO=Negociation +OppStatusPENDING=Pending +OppStatusWON=Won +OppStatusLOST=Lost +Budget=Budget +AllowToLinkFromOtherCompany=Allow to link project from other company

    Supported values:
    - Keep empty: Can link any project of the company (default)
    - "all": Can link any projects, even projects of other companies
    - A list of third-party ids separated by commas: can link all projects of these third partys (Example: 123,4795,53)
    +LatestProjects=Latest %s projects +LatestModifiedProjects=Latest %s modified projects +OtherFilteredTasks=Other filtered tasks +NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) +ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you +# Comments trans +AllowCommentOnTask=Allow user comments on tasks +AllowCommentOnProject=Allow user comments on projects +DontHavePermissionForCloseProject=You do not have permissions to close the project %s +DontHaveTheValidateStatus=The project %s must be open to be closed +RecordsClosed=%s project(s) closed +SendProjectRef=Information project %s +ModuleSalaryToDefineHourlyRateMustBeEnabled=Module 'Salaries' must be enabled to define employee hourly rate to have time spent valorized +NewTaskRefSuggested=Task ref already used, a new task ref is required +TimeSpentInvoiced=Time spent billed +TimeSpentForInvoice=Time spent +OneLinePerUser=One line per user +ServiceToUseOnLines=Service to use on lines +InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project +ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. +ProjectFollowOpportunity=Follow opportunity +ProjectFollowTasks=Follow tasks or time spent +Usage=Usage +UsageOpportunity=Usage: Opportunity +UsageTasks=Usage: Tasks +UsageBillTimeShort=Usage: Bill time +InvoiceToUse=Draft invoice to use +NewInvoice=New invoice +OneLinePerTask=One line per task +OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/am_ET/propal.lang b/htdocs/langs/am_ET/propal.lang new file mode 100644 index 00000000000..71d6857c909 --- /dev/null +++ b/htdocs/langs/am_ET/propal.lang @@ -0,0 +1,86 @@ +# Dolibarr language file - Source file is en_US - propal +Proposals=Commercial proposals +Proposal=Commercial proposal +ProposalShort=Proposal +ProposalsDraft=Draft commercial proposals +ProposalsOpened=Open commercial proposals +CommercialProposal=Commercial proposal +PdfCommercialProposalTitle=Commercial proposal +ProposalCard=Proposal card +NewProp=New commercial proposal +NewPropal=New proposal +Prospect=Prospect +DeleteProp=Delete commercial proposal +ValidateProp=Validate commercial proposal +AddProp=Create proposal +ConfirmDeleteProp=Are you sure you want to delete this commercial proposal? +ConfirmValidateProp=Are you sure you want to validate this commercial proposal under name %s? +LastPropals=Latest %s proposals +LastModifiedProposals=Latest %s modified proposals +AllPropals=All proposals +SearchAProposal=Search a proposal +NoProposal=No proposal +ProposalsStatistics=Commercial proposal's statistics +NumberOfProposalsByMonth=Number by month +AmountOfProposalsByMonthHT=Amount by month (excl. tax) +NbOfProposals=Number of commercial proposals +ShowPropal=Show proposal +PropalsDraft=Drafts +PropalsOpened=Open +PropalStatusDraft=Draft (needs to be validated) +PropalStatusValidated=Validated (proposal is open) +PropalStatusSigned=Signed (needs billing) +PropalStatusNotSigned=Not signed (closed) +PropalStatusBilled=Billed +PropalStatusDraftShort=Draft +PropalStatusValidatedShort=Validated (open) +PropalStatusClosedShort=Closed +PropalStatusSignedShort=Signed +PropalStatusNotSignedShort=Not signed +PropalStatusBilledShort=Billed +PropalsToClose=Commercial proposals to close +PropalsToBill=Signed commercial proposals to bill +ListOfProposals=List of commercial proposals +ActionsOnPropal=Events on proposal +RefProposal=Commercial proposal ref +SendPropalByMail=Send commercial proposal by mail +DatePropal=Date of proposal +DateEndPropal=Validity ending date +ValidityDuration=Validity duration +CloseAs=Set status to +SetAcceptedRefused=Set accepted/refused +ErrorPropalNotFound=Propal %s not found +AddToDraftProposals=Add to draft proposal +NoDraftProposals=No draft proposals +CopyPropalFrom=Create commercial proposal by copying existing proposal +CreateEmptyPropal=Create empty commercial proposal or from list of products/services +DefaultProposalDurationValidity=Default commercial proposal validity duration (in days) +UseCustomerContactAsPropalRecipientIfExist=Use contact/address with type 'Contact following-up proposal' if defined instead of third party address as proposal recipient address +ConfirmClonePropal=Are you sure you want to clone the commercial proposal %s? +ConfirmReOpenProp=Are you sure you want to open back the commercial proposal %s? +ProposalsAndProposalsLines=Commercial proposal and lines +ProposalLine=Proposal line +AvailabilityPeriod=Availability delay +SetAvailability=Set availability delay +AfterOrder=after order +OtherProposals=Other proposals +##### Availability ##### +AvailabilityTypeAV_NOW=Immediate +AvailabilityTypeAV_1W=1 week +AvailabilityTypeAV_2W=2 weeks +AvailabilityTypeAV_3W=3 weeks +AvailabilityTypeAV_1M=1 month +##### Types de contacts ##### +TypeContact_propal_internal_SALESREPFOLL=Representative following-up proposal +TypeContact_propal_external_BILLING=Customer invoice contact +TypeContact_propal_external_CUSTOMER=Customer contact following-up proposal +TypeContact_propal_external_SHIPPING=Customer contact for delivery +# Document models +DocModelAzurDescription=A complete proposal model (old implementation of Cyan template) +DocModelCyanDescription=A complete proposal model +DefaultModelPropalCreate=Default model creation +DefaultModelPropalToBill=Default template when closing a business proposal (to be invoiced) +DefaultModelPropalClosed=Default template when closing a business proposal (unbilled) +ProposalCustomerSignature=Written acceptance, company stamp, date and signature +ProposalsStatisticsSuppliers=Vendor proposals statistics +CaseFollowedBy=Case followed by diff --git a/htdocs/langs/am_ET/receiptprinter.lang b/htdocs/langs/am_ET/receiptprinter.lang new file mode 100644 index 00000000000..896eaa313dd --- /dev/null +++ b/htdocs/langs/am_ET/receiptprinter.lang @@ -0,0 +1,95 @@ +# Dolibarr language file - Source file is en_US - receiptprinter +ReceiptPrinterSetup=Setup of module ReceiptPrinter +PrinterAdded=Printer %s added +PrinterUpdated=Printer %s updated +PrinterDeleted=Printer %s deleted +TestSentToPrinter=Test Sent To Printer %s +ReceiptPrinter=Receipt printers +ReceiptPrinterDesc=Setup of receipt printers +ReceiptPrinterTemplateDesc=Setup of Templates +ReceiptPrinterTypeDesc=Description of Receipt Printer's type +ReceiptPrinterProfileDesc=Description of Receipt Printer's Profile +ListPrinters=List of Printers +SetupReceiptTemplate=Template Setup +CONNECTOR_DUMMY=Dummy Printer +CONNECTOR_NETWORK_PRINT=Network Printer +CONNECTOR_FILE_PRINT=Local Printer +CONNECTOR_WINDOWS_PRINT=Local Windows Printer +CONNECTOR_CUPS_PRINT=Cups Printer +CONNECTOR_DUMMY_HELP=Fake Printer for test, does nothing +CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 +CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 +CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L +PROFILE_DEFAULT=Default Profile +PROFILE_SIMPLE=Simple Profile +PROFILE_EPOSTEP=Epos Tep Profile +PROFILE_P822D=P822D Profile +PROFILE_STAR=Star Profile +PROFILE_DEFAULT_HELP=Default Profile suitable for Epson printers +PROFILE_SIMPLE_HELP=Simple Profile No Graphics +PROFILE_EPOSTEP_HELP=Epos Tep Profile +PROFILE_P822D_HELP=P822D Profile No Graphics +PROFILE_STAR_HELP=Star Profile +DOL_LINE_FEED=Skip line +DOL_ALIGN_LEFT=Left align text +DOL_ALIGN_CENTER=Center text +DOL_ALIGN_RIGHT=Right align text +DOL_USE_FONT_A=Use font A of printer +DOL_USE_FONT_B=Use font B of printer +DOL_USE_FONT_C=Use font C of printer +DOL_PRINT_BARCODE=Print barcode +DOL_PRINT_BARCODE_CUSTOMER_ID=Print barcode customer id +DOL_CUT_PAPER_FULL=Cut ticket completely +DOL_CUT_PAPER_PARTIAL=Cut ticket partially +DOL_OPEN_DRAWER=Open cash drawer +DOL_ACTIVATE_BUZZER=Activate buzzer +DOL_PRINT_QRCODE=Print QR Code +DOL_PRINT_LOGO=Print logo of my company +DOL_PRINT_LOGO_OLD=Print logo of my company (old printers) +DOL_BOLD=Bold +DOL_BOLD_DISABLED=Disable bold +DOL_DOUBLE_HEIGHT=Double height size +DOL_DOUBLE_WIDTH=Double width size +DOL_DEFAULT_HEIGHT_WIDTH=Default height and width size +DOL_UNDERLINE=Enable underline +DOL_UNDERLINE_DISABLED=Disable underline +DOL_BEEP=Beed sound +DOL_PRINT_TEXT=Print text +DOL_VALUE_DATE=Invoice date +DOL_VALUE_DATE_TIME=Invoice date and time +DOL_VALUE_YEAR=Invoice year +DOL_VALUE_MONTH_LETTERS=Invoice month in letters +DOL_VALUE_MONTH=Invoice month +DOL_VALUE_DAY=Invoice day +DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Invoice ref +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=Capital +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/am_ET/receptions.lang b/htdocs/langs/am_ET/receptions.lang new file mode 100644 index 00000000000..010a7521846 --- /dev/null +++ b/htdocs/langs/am_ET/receptions.lang @@ -0,0 +1,45 @@ +# Dolibarr language file - Source file is en_US - receptions +ReceptionsSetup=Product Reception setup +RefReception=Ref. reception +Reception=Reception +Receptions=Receptions +AllReceptions=All Receptions +Reception=Reception +Receptions=Receptions +ShowReception=Show Receptions +ReceptionsArea=Receptions area +ListOfReceptions=List of receptions +ReceptionMethod=Reception method +LastReceptions=Latest %s receptions +StatisticsOfReceptions=Statistics for receptions +NbOfReceptions=Number of receptions +NumberOfReceptionsByMonth=Number of receptions by month +ReceptionCard=Reception card +NewReception=New reception +CreateReception=Create reception +QtyInOtherReceptions=Qty in other receptions +OtherReceptionsForSameOrder=Other receptions for this order +ReceptionsAndReceivingForSameOrder=Receptions and receipts for this order +ReceptionsToValidate=Receptions to validate +StatusReceptionCanceled=Canceled +StatusReceptionDraft=Draft +StatusReceptionValidated=Validated (products to ship or already shipped) +StatusReceptionProcessed=Processed +StatusReceptionDraftShort=Draft +StatusReceptionValidatedShort=Validated +StatusReceptionProcessedShort=Processed +ReceptionSheet=Reception sheet +ConfirmDeleteReception=Are you sure you want to delete this reception? +ConfirmValidateReception=Are you sure you want to validate this reception with reference %s? +ConfirmCancelReception=Are you sure you want to cancel this reception? +StatsOnReceptionsOnlyValidated=Statistics conducted on receptions only validated. Date used is date of validation of reception (planed delivery date is not always known). +SendReceptionByEMail=Send reception by email +SendReceptionRef=Submission of reception %s +ActionsOnReception=Events on reception +ReceptionCreationIsDoneFromOrder=For the moment, creation of a new reception is done from the order card. +ReceptionLine=Reception line +ProductQtyInReceptionAlreadySent=Product quantity from open sales order already sent +ProductQtyInSuppliersReceptionAlreadyRecevied=Product quantity from open supplier order already received +ValidateOrderFirstBeforeReception=You must first validate the order before being able to make receptions. +ReceptionsNumberingModules=Numbering module for receptions +ReceptionsReceiptModel=Document templates for receptions diff --git a/htdocs/langs/am_ET/resource.lang b/htdocs/langs/am_ET/resource.lang new file mode 100644 index 00000000000..e8574dc680f --- /dev/null +++ b/htdocs/langs/am_ET/resource.lang @@ -0,0 +1,39 @@ +# Dolibarr language file - Source file is en_US - resource +MenuResourceIndex=Resources +MenuResourceAdd=New resource +DeleteResource=Delete resource +ConfirmDeleteResourceElement=Confirm delete the resource for this element +NoResourceInDatabase=No resource in database. +NoResourceLinked=No resource linked +ActionsOnResource=Events about this resource +ResourcePageIndex=Resources list +ResourceSingular=Resource +ResourceCard=Resource card +AddResource=Create a resource +ResourceFormLabel_ref=Resource name +ResourceType=Resource type +ResourceFormLabel_description=Resource description + +ResourcesLinkedToElement=Resources linked to element + +ShowResource=Show resource + +ResourceElementPage=Element resources +ResourceCreatedWithSuccess=Resource successfully created +RessourceLineSuccessfullyDeleted=Resource line successfully deleted +RessourceLineSuccessfullyUpdated=Resource line successfully updated +ResourceLinkedWithSuccess=Resource linked with success + +ConfirmDeleteResource=Confirm to delete this resource +RessourceSuccessfullyDeleted=Resource successfully deleted +DictionaryResourceType=Type of resources + +SelectResource=Select resource + +IdResource=Id resource +AssetNumber=Serial number +ResourceTypeCode=Resource type code +ImportDataset_resource_1=Resources + +ErrorResourcesAlreadyInUse=Some resources are in use +ErrorResourceUseInEvent=%s used in %s event diff --git a/htdocs/langs/am_ET/salaries.lang b/htdocs/langs/am_ET/salaries.lang new file mode 100644 index 00000000000..7c3c08a65bd --- /dev/null +++ b/htdocs/langs/am_ET/salaries.lang @@ -0,0 +1,21 @@ +# Dolibarr language file - Source file is en_US - salaries +SALARIES_ACCOUNTING_ACCOUNT_PAYMENT=Accounting account used for user third parties +SALARIES_ACCOUNTING_ACCOUNT_PAYMENT_Desc=The dedicated accounting account defined on user card will be used for Subledger accounting only. This one will be used for General Ledger and as default value of Subledger accounting if dedicated user accounting account on user is not defined. +SALARIES_ACCOUNTING_ACCOUNT_CHARGE=Accounting account by default for wage payments +Salary=Salary +Salaries=Salaries +NewSalaryPayment=New salary payment +AddSalaryPayment=Add salary payment +SalaryPayment=Salary payment +SalariesPayments=Salaries payments +ShowSalaryPayment=Show salary payment +THM=Average hourly rate +TJM=Average daily rate +CurrentSalary=Current salary +THMDescription=This value may be used to calculate the cost of time consumed on a project entered by users if module project is used +TJMDescription=This value is currently for information only and is not used for any calculation +LastSalaries=Latest %s salary payments +AllSalaries=All salary payments +SalariesStatistics=Salary statistics +# Export +SalariesAndPayments=Salaries and payments diff --git a/htdocs/langs/am_ET/sendings.lang b/htdocs/langs/am_ET/sendings.lang new file mode 100644 index 00000000000..5ce3b7f67e9 --- /dev/null +++ b/htdocs/langs/am_ET/sendings.lang @@ -0,0 +1,74 @@ +# Dolibarr language file - Source file is en_US - sendings +RefSending=Ref. shipment +Sending=Shipment +Sendings=Shipments +AllSendings=All Shipments +Shipment=Shipment +Shipments=Shipments +ShowSending=Show Shipments +Receivings=Delivery Receipts +SendingsArea=Shipments area +ListOfSendings=List of shipments +SendingMethod=Shipping method +LastSendings=Latest %s shipments +StatisticsOfSendings=Statistics for shipments +NbOfSendings=Number of shipments +NumberOfShipmentsByMonth=Number of shipments by month +SendingCard=Shipment card +NewSending=New shipment +CreateShipment=Create shipment +QtyShipped=Qty shipped +QtyShippedShort=Qty ship. +QtyPreparedOrShipped=Qty prepared or shipped +QtyToShip=Qty to ship +QtyToReceive=Qty to receive +QtyReceived=Qty received +QtyInOtherShipments=Qty in other shipments +KeepToShip=Remain to ship +KeepToShipShort=Remain +OtherSendingsForSameOrder=Other shipments for this order +SendingsAndReceivingForSameOrder=Shipments and receipts for this order +SendingsToValidate=Shipments to validate +StatusSendingCanceled=Canceled +StatusSendingDraft=Draft +StatusSendingValidated=Validated (products to ship or already shipped) +StatusSendingProcessed=Processed +StatusSendingDraftShort=Draft +StatusSendingValidatedShort=Validated +StatusSendingProcessedShort=Processed +SendingSheet=Shipment sheet +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=Warning, no products waiting to be shipped. +StatsOnShipmentsOnlyValidated=Statistics conducted on shipments only validated. Date used is date of validation of shipment (planed delivery date is not always known). +DateDeliveryPlanned=Planned date of delivery +RefDeliveryReceipt=Ref delivery receipt +StatusReceipt=Status delivery receipt +DateReceived=Date delivery received +ClassifyReception=Classify reception +SendShippingByEMail=Send shipment by email +SendShippingRef=Submission of shipment %s +ActionsOnShipping=Events on shipment +LinkToTrackYourPackage=Link to track your package +ShipmentCreationIsDoneFromOrder=For the moment, creation of a new shipment is done from the order card. +ShipmentLine=Shipment line +ProductQtyInCustomersOrdersRunning=Product quantity from open sales orders +ProductQtyInSuppliersOrdersRunning=Product quantity from open purchase orders +ProductQtyInShipmentAlreadySent=Product quantity from open sales order already sent +ProductQtyInSuppliersShipmentAlreadyRecevied=Product quantity from open purchase orders already received +NoProductToShipFoundIntoStock=No product to ship found in warehouse %s. Correct stock or go back to choose another warehouse. +WeightVolShort=Weight/Vol. +ValidateOrderFirstBeforeShipment=You must first validate the order before being able to make shipments. + +# Sending methods +# ModelDocument +DocumentModelTyphon=More complete document model for delivery receipts (logo...) +Error_EXPEDITION_ADDON_NUMBER_NotDefined=Constant EXPEDITION_ADDON_NUMBER not defined +SumOfProductVolumes=Sum of product volumes +SumOfProductWeights=Sum of product weights + +# warehouse details +DetailWarehouseNumber= Warehouse details +DetailWarehouseFormat= W:%s (Qty: %d) diff --git a/htdocs/langs/am_ET/sms.lang b/htdocs/langs/am_ET/sms.lang new file mode 100644 index 00000000000..055085eb16a --- /dev/null +++ b/htdocs/langs/am_ET/sms.lang @@ -0,0 +1,51 @@ +# Dolibarr language file - Source file is en_US - sms +Sms=Sms +SmsSetup=SMS setup +SmsDesc=This page allows you to define global options on SMS features +SmsCard=SMS Card +AllSms=All SMS campaigns +SmsTargets=Targets +SmsRecipients=Targets +SmsRecipient=Target +SmsTitle=Description +SmsFrom=Sender +SmsTo=Target +SmsTopic=Topic of SMS +SmsText=Message +SmsMessage=SMS Message +ShowSms=Show SMS +ListOfSms=List SMS campaigns +NewSms=New SMS campaign +EditSms=Edit SMS +ResetSms=New sending +DeleteSms=Delete SMS campaign +DeleteASms=Remove a SMS campaign +PreviewSms=Previuw SMS +PrepareSms=Prepare SMS +CreateSms=Create SMS +SmsResult=Result of SMS sending +TestSms=Test SMS +ValidSms=Validate SMS +ApproveSms=Approve SMS +SmsStatusDraft=Draft +SmsStatusValidated=Validated +SmsStatusApproved=Approved +SmsStatusSent=Sent +SmsStatusSentPartialy=Sent partially +SmsStatusSentCompletely=Sent completely +SmsStatusError=Error +SmsStatusNotSent=Not sent +SmsSuccessfulySent=SMS correctly sent (from %s to %s) +ErrorSmsRecipientIsEmpty=Number of target is empty +WarningNoSmsAdded=No new phone number to add to target list +ConfirmValidSms=Do you confirm validation of this campaign? +NbOfUniqueSms=No. of unique phone numbers +NbOfSms=No. of phone numbers +ThisIsATestMessage=This is a test message +SendSms=Send SMS +SmsInfoCharRemain=No. of remaining characters +SmsInfoNumero= (international format i.e.: +33899701761) +DelayBeforeSending=Delay before sending (minutes) +SmsNoPossibleSenderFound=No sender available. Check setup of your SMS provider. +SmsNoPossibleRecipientFound=No target available. Check setup of your SMS provider. +DisableStopIfSupported=Disable STOP message (if supported) diff --git a/htdocs/langs/am_ET/stocks.lang b/htdocs/langs/am_ET/stocks.lang new file mode 100644 index 00000000000..9856649b834 --- /dev/null +++ b/htdocs/langs/am_ET/stocks.lang @@ -0,0 +1,220 @@ +# Dolibarr language file - Source file is en_US - stocks +WarehouseCard=Warehouse card +Warehouse=Warehouse +Warehouses=Warehouses +ParentWarehouse=Parent warehouse +NewWarehouse=New warehouse / Stock Location +WarehouseEdit=Modify warehouse +MenuNewWarehouse=New warehouse +WarehouseSource=Source warehouse +WarehouseSourceNotDefined=No warehouse defined, +AddWarehouse=Create warehouse +AddOne=Add one +DefaultWarehouse=Default warehouse +WarehouseTarget=Target warehouse +ValidateSending=Delete sending +CancelSending=Cancel sending +DeleteSending=Delete sending +Stock=Stock +Stocks=Stocks +StocksByLotSerial=Stocks by lot/serial +LotSerial=Lots/Serials +LotSerialList=List of lot/serials +Movements=Movements +ErrorWarehouseRefRequired=Warehouse reference name is required +ListOfWarehouses=List of warehouses +ListOfStockMovements=List of stock movements +ListOfInventories=List of inventories +MovementId=Movement ID +StockMovementForId=Movement ID %d +ListMouvementStockProject=List of stock movements associated to project +StocksArea=Warehouses area +AllWarehouses=All warehouses +IncludeAlsoDraftOrders=Include also draft orders +Location=Location +LocationSummary=Short name location +NumberOfDifferentProducts=Number of different products +NumberOfProducts=Total number of products +LastMovement=Latest movement +LastMovements=Latest movements +Units=Units +Unit=Unit +StockCorrection=Stock correction +CorrectStock=Correct stock +StockTransfer=Stock transfer +TransferStock=Transfer stock +MassStockTransferShort=Mass stock transfer +StockMovement=Stock movement +StockMovements=Stock movements +NumberOfUnit=Number of units +UnitPurchaseValue=Unit purchase price +StockTooLow=Stock too low +StockLowerThanLimit=Stock lower than alert limit (%s) +EnhancedValue=Value +PMPValue=Weighted average price +PMPValueShort=WAP +EnhancedValueOfWarehouses=Warehouses value +UserWarehouseAutoCreate=Create a user warehouse automatically when creating a user +AllowAddLimitStockByWarehouse=Manage also value for minimum and desired stock per pairing (product-warehouse) in addition to the value for minimum and desired stock per product +IndependantSubProductStock=Product stock and subproduct stock are independent +QtyDispatched=Quantity dispatched +QtyDispatchedShort=Qty dispatched +QtyToDispatchShort=Qty to dispatch +OrderDispatch=Item receipts +RuleForStockManagementDecrease=Choose Rule for automatic stock decrease (manual decrease is always possible, even if an automatic decrease rule is activated) +RuleForStockManagementIncrease=Choose Rule for automatic stock increase (manual increase is always possible, even if an automatic increase rule is activated) +DeStockOnBill=Decrease real stocks on validation of customer invoice/credit note +DeStockOnValidateOrder=Decrease real stocks on validation of sales order +DeStockOnShipment=Decrease real stocks on shipping validation +DeStockOnShipmentOnClosing=Decrease real stocks when shipping is set to closed +ReStockOnBill=Increase real stocks on validation of vendor invoice/credit note +ReStockOnValidateOrder=Increase real stocks on purchase order approval +ReStockOnDispatchOrder=Increase real stocks on manual dispatching into warehouse, after purchase order receipt of goods +StockOnReception=Increase real stocks on validation of reception +StockOnReceptionOnClosing=Increase real stocks when reception is set to closed +OrderStatusNotReadyToDispatch=Order has not yet or no more a status that allows dispatching of products in stock warehouses. +StockDiffPhysicTeoric=Explanation for difference between physical and virtual stock +NoPredefinedProductToDispatch=No predefined products for this object. So no dispatching in stock is required. +DispatchVerb=Dispatch +StockLimitShort=Limit for alert +StockLimit=Stock limit for alert +StockLimitDesc=(empty) means no warning.
    0 can be used for a warning as soon as stock is empty. +PhysicalStock=Physical Stock +RealStock=Real Stock +RealStockDesc=Physical/real stock is the stock currently in the warehouses. +RealStockWillAutomaticallyWhen=The real stock will be modified according to this rule (as defined in the Stock module): +VirtualStock=Virtual stock +VirtualStockDesc=Virtual stock is the calculated stock available once all open/pending actions (that affect stocks) are closed (purchase orders received, sales orders shipped etc.) +IdWarehouse=Id warehouse +DescWareHouse=Description warehouse +LieuWareHouse=Localisation warehouse +WarehousesAndProducts=Warehouses and products +WarehousesAndProductsBatchDetail=Warehouses and products (with detail per lot/serial) +AverageUnitPricePMPShort=Weighted average input price +AverageUnitPricePMP=Weighted average input price +SellPriceMin=Selling Unit Price +EstimatedStockValueSellShort=Value for sell +EstimatedStockValueSell=Value for sell +EstimatedStockValueShort=Input stock value +EstimatedStockValue=Input stock value +DeleteAWarehouse=Delete a warehouse +ConfirmDeleteWarehouse=Are you sure you want to delete the warehouse %s? +PersonalStock=Personal stock %s +ThisWarehouseIsPersonalStock=This warehouse represents personal stock of %s %s +SelectWarehouseForStockDecrease=Choose warehouse to use for stock decrease +SelectWarehouseForStockIncrease=Choose warehouse to use for stock increase +NoStockAction=No stock action +DesiredStock=Desired Stock +DesiredStockDesc=This stock amount will be the value used to fill the stock by replenishment feature. +StockToBuy=To order +Replenishment=Replenishment +ReplenishmentOrders=Replenishment orders +VirtualDiffersFromPhysical=According to increase/decrease stock options, physical stock and virtual stock (physical + current orders) may differ +UseVirtualStockByDefault=Use virtual stock by default, instead of physical stock, for replenishment feature +UseVirtualStock=Use virtual stock +UsePhysicalStock=Use physical stock +CurentSelectionMode=Current selection mode +CurentlyUsingVirtualStock=Virtual stock +CurentlyUsingPhysicalStock=Physical stock +RuleForStockReplenishment=Rule for stocks replenishment +SelectProductWithNotNullQty=Select at least one product with a qty not null and a vendor +AlertOnly= Alerts only +WarehouseForStockDecrease=The warehouse %s will be used for stock decrease +WarehouseForStockIncrease=The warehouse %s will be used for stock increase +ForThisWarehouse=For this warehouse +ReplenishmentStatusDesc=This is a list of all products with a stock lower than desired stock (or lower than alert value if checkbox "alert only" is checked). Using the checkbox, you can create purchase orders to fill the difference. +ReplenishmentOrdersDesc=This is a list of all open purchase orders including predefined products. Only open orders with predefined products, so orders that may affect stocks, are visible here. +Replenishments=Replenishments +NbOfProductBeforePeriod=Quantity of product %s in stock before selected period (< %s) +NbOfProductAfterPeriod=Quantity of product %s in stock after selected period (> %s) +MassMovement=Mass movement +SelectProductInAndOutWareHouse=Select a product, a quantity, a source warehouse and a target warehouse, then click "%s". Once this is done for all required movements, click onto "%s". +RecordMovement=Record transfer +ReceivingForSameOrder=Receipts for this order +StockMovementRecorded=Stock movements recorded +RuleForStockAvailability=Rules on stock requirements +StockMustBeEnoughForInvoice=Stock level must be enough to add product/service to invoice (check is done on current real stock when adding a line into invoice whatever the rule for automatic stock change) +StockMustBeEnoughForOrder=Stock level must be enough to add product/service to order (check is done on current real stock when adding a line into order whatever the rule for automatic stock change) +StockMustBeEnoughForShipment= Stock level must be enough to add product/service to shipment (check is done on current real stock when adding a line into shipment whatever the rule for automatic stock change) +MovementLabel=Label of movement +TypeMovement=Type of movement +DateMovement=Date of movement +InventoryCode=Movement or inventory code +IsInPackage=Contained into package +WarehouseAllowNegativeTransfer=Stock can be negative +qtyToTranferIsNotEnough=You don't have enough stock from your source warehouse and your setup does not allow negative stocks. +qtyToTranferLotIsNotEnough=You don't have enough stock, for this lot number, from your source warehouse and your setup does not allow negative stocks (Qty for product '%s' with lot '%s' is %s in warehouse '%s'). +ShowWarehouse=Show warehouse +MovementCorrectStock=Stock correction for product %s +MovementTransferStock=Stock transfer of product %s into another warehouse +InventoryCodeShort=Inv./Mov. code +NoPendingReceptionOnSupplierOrder=No pending reception due to open purchase order +ThisSerialAlreadyExistWithDifferentDate=This lot/serial number (%s) already exists but with different eatby or sellby date (found %s but you enter %s). +OpenAll=Open for all actions +OpenInternal=Open only for internal actions +UseDispatchStatus=Use a dispatch status (approve/refuse) for product lines on purchase order reception +OptionMULTIPRICESIsOn=Option "several prices per segment" is on. It means a product has several selling price so value for sell can't be calculated +ProductStockWarehouseCreated=Stock limit for alert and desired optimal stock correctly created +ProductStockWarehouseUpdated=Stock limit for alert and desired optimal stock correctly updated +ProductStockWarehouseDeleted=Stock limit for alert and desired optimal stock correctly deleted +AddNewProductStockWarehouse=Set new limit for alert and desired optimal stock +AddStockLocationLine=Decrease quantity then click to add another warehouse for this product +InventoryDate=Inventory date +NewInventory=New inventory +inventorySetup = Inventory Setup +inventoryCreatePermission=Create new inventory +inventoryReadPermission=View inventories +inventoryWritePermission=Update inventories +inventoryValidatePermission=Validate inventory +inventoryTitle=Inventory +inventoryListTitle=Inventories +inventoryListEmpty=No inventory in progress +inventoryCreateDelete=Create/Delete inventory +inventoryCreate=Create new +inventoryEdit=Edit +inventoryValidate=Validated +inventoryDraft=Running +inventorySelectWarehouse=Warehouse choice +inventoryConfirmCreate=Create +inventoryOfWarehouse=Inventory for warehouse: %s +inventoryErrorQtyAdd=Error: one quantity is less than zero +inventoryMvtStock=By inventory +inventoryWarningProductAlreadyExists=This product is already into list +SelectCategory=Category filter +SelectFournisseur=Vendor filter +inventoryOnDate=Inventory +INVENTORY_DISABLE_VIRTUAL=Virtual product (kit): do not decrement stock of a child product +INVENTORY_USE_MIN_PA_IF_NO_LAST_PA=Use the buy price if no last buy price can be found +INVENTORY_USE_INVENTORY_DATE_FOR_DATE_OF_MVT=Stock movements will have the date of inventory (instead of the date of inventory validation) +inventoryChangePMPPermission=Allow to change PMP value for a product +ColumnNewPMP=New unit PMP +OnlyProdsInStock=Do not add product without stock +TheoricalQty=Theorique qty +TheoricalValue=Theorique qty +LastPA=Last BP +CurrentPA=Curent BP +RecordedQty=Recorded Qty +RealQty=Real Qty +RealValue=Real Value +RegulatedQty=Regulated Qty +AddInventoryProduct=Add product to inventory +AddProduct=Add +ApplyPMP=Apply PMP +FlushInventory=Flush inventory +ConfirmFlushInventory=Do you confirm this action? +InventoryFlushed=Inventory flushed +ExitEditMode=Exit edition +inventoryDeleteLine=Delete line +RegulateStock=Regulate Stock +ListInventory=List +StockSupportServices=Stock management supports Services +StockSupportServicesDesc=By default, you can stock only products of type "product". You may also stock a product of type "service" if both module Services and this option are enabled. +ReceiveProducts=Receive items +StockIncreaseAfterCorrectTransfer=Increase by correction/transfer +StockDecreaseAfterCorrectTransfer=Decrease by correction/transfer +StockIncrease=Stock increase +StockDecrease=Stock decrease +InventoryForASpecificWarehouse=Inventory for a specific warehouse +InventoryForASpecificProduct=Inventory for a specific product +StockIsRequiredToChooseWhichLotToUse=Stock is required to choose which lot to use +ForceTo=Force to diff --git a/htdocs/langs/am_ET/stripe.lang b/htdocs/langs/am_ET/stripe.lang new file mode 100644 index 00000000000..844762040af --- /dev/null +++ b/htdocs/langs/am_ET/stripe.lang @@ -0,0 +1,72 @@ +# Dolibarr language file - Source file is en_US - stripe +StripeSetup=Stripe module setup +StripeDesc=Offer customers a Stripe online payment page for payments with credit/cebit cards via Stripe. This can be used to allow your customers to make ad-hoc payments or for payments related to a particular Dolibarr object (invoice, order, ...) +StripeOrCBDoPayment=Pay with credit card or Stripe +FollowingUrlAreAvailableToMakePayments=Following URLs are available to offer a page to a customer to make a payment on Dolibarr objects +PaymentForm=Payment form +WelcomeOnPaymentPage=Welcome to our online payment service +ThisScreenAllowsYouToPay=This screen allow you to make an online payment to %s. +ThisIsInformationOnPayment=This is information on payment to do +ToComplete=To complete +YourEMail=Email to receive payment confirmation +STRIPE_PAYONLINE_SENDEMAIL=Email notification after a payment attempt (success or fail) +Creditor=Creditor +PaymentCode=Payment code +StripeDoPayment=Pay with Stripe +YouWillBeRedirectedOnStripe=You will be redirected on secured Stripe page to input you credit card information +Continue=Next +ToOfferALinkForOnlinePayment=URL for %s payment +ToOfferALinkForOnlinePaymentOnOrder=URL to offer a %s online payment page for a sales order +ToOfferALinkForOnlinePaymentOnInvoice=URL to offer a %s online payment page for a customer invoice +ToOfferALinkForOnlinePaymentOnContractLine=URL to offer a %s online payment page for a contract line +ToOfferALinkForOnlinePaymentOnFreeAmount=URL to offer a %s online payment page of any amount with no existing object +ToOfferALinkForOnlinePaymentOnMemberSubscription=URL to offer a %s online payment page for a member subscription +ToOfferALinkForOnlinePaymentOnDonation=URL to offer a %s online payment page for payment of a donation +YouCanAddTagOnUrl=You can also add url parameter &tag=value to any of those URL (mandatory only for payment not linked to an object) to add your own payment comment tag.
    For the URL of payments with no existing object, you may also add the parameter &noidempotency=1 so the same link with same tag can be used several times (some payment mode may limit the payment to 1 for each different link without this parameter) +SetupStripeToHavePaymentCreatedAutomatically=Setup your Stripe with url %s to have payment created automatically when validated by Stripe. +AccountParameter=Account parameters +UsageParameter=Usage parameters +InformationToFindParameters=Help to find your %s account information +STRIPE_CGI_URL_V2=Url of Stripe CGI module for payment +VendorName=Name of vendor +CSSUrlForPaymentForm=CSS style sheet url for payment form +NewStripePaymentReceived=New Stripe payment received +NewStripePaymentFailed=New Stripe payment tried but failed +FailedToChargeCard=Failed to charge card +STRIPE_TEST_SECRET_KEY=Secret test key +STRIPE_TEST_PUBLISHABLE_KEY=Publishable test key +STRIPE_TEST_WEBHOOK_KEY=Webhook test key +STRIPE_LIVE_SECRET_KEY=Secret live key +STRIPE_LIVE_PUBLISHABLE_KEY=Publishable live key +STRIPE_LIVE_WEBHOOK_KEY=Webhook live key +ONLINE_PAYMENT_WAREHOUSE=Stock to use for stock decrease when online payment is done
    (TODO When option to decrease stock is done on an action on invoice and the online payment generate itself the invoice ?) +StripeLiveEnabled=Stripe live enabled (otherwise test/sandbox mode) +StripeImportPayment=Import Stripe payments +ExampleOfTestCreditCard=Example of credit card for test: %s => valid, %s => error CVC, %s => expired, %s => charge fails +StripeGateways=Stripe gateways +OAUTH_STRIPE_TEST_ID=Stripe Connect Client ID (ca_...) +OAUTH_STRIPE_LIVE_ID=Stripe Connect Client ID (ca_...) +BankAccountForBankTransfer=Bank account for fund payouts +StripeAccount=Stripe account +StripeChargeList=List of Stripe charges +StripeTransactionList=List of Stripe transactions +StripeCustomerId=Stripe customer id +StripePaymentModes=Stripe payment modes +LocalID=Local ID +StripeID=Stripe ID +NameOnCard=Name on card +CardNumber=Card Number +ExpiryDate=Expiry Date +CVN=CVN +DeleteACard=Delete Card +ConfirmDeleteCard=Are you sure you want to delete this Credit or Debit card? +CreateCustomerOnStripe=Create customer on Stripe +CreateCardOnStripe=Create card on Stripe +ShowInStripe=Show in Stripe +StripeUserAccountForActions=User account to use for email notification of some Stripe events (Stripe payouts) +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... +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/am_ET/supplier_proposal.lang b/htdocs/langs/am_ET/supplier_proposal.lang new file mode 100644 index 00000000000..ce5bdf0425a --- /dev/null +++ b/htdocs/langs/am_ET/supplier_proposal.lang @@ -0,0 +1,54 @@ +# Dolibarr language file - Source file is en_US - supplier_proposal +SupplierProposal=Vendor commercial proposals +supplier_proposalDESC=Manage price requests to suppliers +SupplierProposalNew=New price request +CommRequest=Price request +CommRequests=Price requests +SearchRequest=Find a request +DraftRequests=Draft requests +SupplierProposalsDraft=Draft vendor proposals +LastModifiedRequests=Latest %s modified price requests +RequestsOpened=Open price requests +SupplierProposalArea=Vendor proposals area +SupplierProposalShort=Vendor proposal +SupplierProposals=Vendor proposals +SupplierProposalsShort=Vendor proposals +NewAskPrice=New price request +ShowSupplierProposal=Show price request +AddSupplierProposal=Create a price request +SupplierProposalRefFourn=Vendor ref +SupplierProposalDate=Delivery date +SupplierProposalRefFournNotice=Before closing to "Accepted", think to grasp suppliers references. +ConfirmValidateAsk=Are you sure you want to validate this price request under name %s? +DeleteAsk=Delete request +ValidateAsk=Validate request +SupplierProposalStatusDraft=Draft (needs to be validated) +SupplierProposalStatusValidated=Validated (request is open) +SupplierProposalStatusClosed=Closed +SupplierProposalStatusSigned=Accepted +SupplierProposalStatusNotSigned=Refused +SupplierProposalStatusDraftShort=Draft +SupplierProposalStatusValidatedShort=Validated +SupplierProposalStatusClosedShort=Closed +SupplierProposalStatusSignedShort=Accepted +SupplierProposalStatusNotSignedShort=Refused +CopyAskFrom=Create a price request by copying an existing request +CreateEmptyAsk=Create blank request +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=Send price request by mail +SendAskRef=Sending the price request %s +SupplierProposalCard=Request card +ConfirmDeleteAsk=Are you sure you want to delete this price request %s? +ActionsOnSupplierProposal=Events on price request +DocModelAuroreDescription=A complete request model (logo...) +CommercialAsk=Price request +DefaultModelSupplierProposalCreate=Default model creation +DefaultModelSupplierProposalToBill=Default template when closing a price request (accepted) +DefaultModelSupplierProposalClosed=Default template when closing a price request (refused) +ListOfSupplierProposals=List of vendor proposal requests +ListSupplierProposalsAssociatedProject=List of vendor proposals associated with project +SupplierProposalsToClose=Vendor proposals to close +SupplierProposalsToProcess=Vendor proposals to process +LastSupplierProposals=Latest %s price requests +AllPriceRequests=All requests diff --git a/htdocs/langs/am_ET/suppliers.lang b/htdocs/langs/am_ET/suppliers.lang new file mode 100644 index 00000000000..b69b11272b4 --- /dev/null +++ b/htdocs/langs/am_ET/suppliers.lang @@ -0,0 +1,47 @@ +# Dolibarr language file - Source file is en_US - vendors +Suppliers=Vendors +SuppliersInvoice=Vendor invoice +ShowSupplierInvoice=Show Vendor Invoice +NewSupplier=New vendor +History=History +ListOfSuppliers=List of vendors +ShowSupplier=Show vendor +OrderDate=Order date +BuyingPriceMin=Best buying price +BuyingPriceMinShort=Best buying price +TotalBuyingPriceMinShort=Total of subproducts buying prices +TotalSellingPriceMinShort=Total of subproducts selling prices +SomeSubProductHaveNoPrices=Some sub-products have no price defined +AddSupplierPrice=Add buying price +ChangeSupplierPrice=Change buying price +SupplierPrices=Vendor prices +ReferenceSupplierIsAlreadyAssociatedWithAProduct=This vendor reference is already associated with a product: %s +NoRecordedSuppliers=No vendor recorded +SupplierPayment=Vendor payment +SuppliersArea=Vendor area +RefSupplierShort=Ref. vendor +Availability=Availability +ExportDataset_fournisseur_1=Vendor invoices and invoice details +ExportDataset_fournisseur_2=Vendor invoices and payments +ExportDataset_fournisseur_3=Purchase orders and order details +ApproveThisOrder=Approve this order +ConfirmApproveThisOrder=Are you sure you want to approve order %s? +DenyingThisOrder=Deny this order +ConfirmDenyingThisOrder=Are you sure you want to deny this order %s? +ConfirmCancelThisOrder=Are you sure you want to cancel this order %s? +AddSupplierOrder=Create Purchase Order +AddSupplierInvoice=Create vendor invoice +ListOfSupplierProductForSupplier=List of products and prices for vendor %s +SentToSuppliers=Sent to vendors +ListOfSupplierOrders=List of purchase orders +MenuOrdersSupplierToBill=Purchase orders to invoice +NbDaysToDelivery=Delivery delay (days) +DescNbDaysToDelivery=The longest delivery delay of the products from this order +SupplierReputation=Vendor reputation +DoNotOrderThisProductToThisSupplier=Do not order +NotTheGoodQualitySupplier=Low quality +ReputationForThisProduct=Reputation +BuyerName=Buyer name +AllProductServicePrices=All product / service prices +AllProductReferencesOfSupplier=All product / service references of vendor +BuyingPriceNumShort=Vendor prices diff --git a/htdocs/langs/am_ET/ticket.lang b/htdocs/langs/am_ET/ticket.lang new file mode 100644 index 00000000000..80518c3401a --- /dev/null +++ b/htdocs/langs/am_ET/ticket.lang @@ -0,0 +1,305 @@ +# en_US lang file for module ticket +# Copyright (C) 2013 Jean-François FERRY +# +# 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 . + +# +# Generic +# + +Module56000Name=Tickets +Module56000Desc=Ticket system for issue or request management + +Permission56001=See tickets +Permission56002=Modify tickets +Permission56003=Delete tickets +Permission56004=Manage tickets +Permission56005=See tickets of all third parties (not effective for external users, always be limited to the third party they depend on) + +TicketDictType=Ticket - Types +TicketDictCategory=Ticket - Groupes +TicketDictSeverity=Ticket - Severities +TicketDictResolution=Ticket - Resolution +TicketTypeShortBUGSOFT=Dysfonctionnement logiciel +TicketTypeShortBUGHARD=Dysfonctionnement matériel +TicketTypeShortCOM=Commercial question + +TicketTypeShortHELP=Request for functionnal help +TicketTypeShortISSUE=Issue, bug or problem +TicketTypeShortREQUEST=Change or enhancement request +TicketTypeShortPROJET=Project +TicketTypeShortOTHER=Other + +TicketSeverityShortLOW=Low +TicketSeverityShortNORMAL=Normal +TicketSeverityShortHIGH=High +TicketSeverityShortBLOCKING=Critical/Blocking + +ErrorBadEmailAddress=Field '%s' incorrect +MenuTicketMyAssign=My tickets +MenuTicketMyAssignNonClosed=My open tickets +MenuListNonClosed=Open tickets + +TypeContact_ticket_internal_CONTRIBUTOR=Contributor +TypeContact_ticket_internal_SUPPORTTEC=Assigned user +TypeContact_ticket_external_SUPPORTCLI=Customer contact / incident tracking +TypeContact_ticket_external_CONTRIBUTOR=External contributor + +OriginEmail=Email source +Notify_TICKET_SENTBYMAIL=Send ticket message by email + +# Status +NotRead=Not read +Read=Read +Assigned=Assigned +InProgress=In progress +NeedMoreInformation=Waiting for information +Answered=Answered +Waiting=Waiting +Closed=Closed +Deleted=Deleted + +# Dict +Type=Type +Category=Analytic code +Severity=Severity + +# Email templates +MailToSendTicketMessage=To send email from ticket message + +# +# Admin page +# +TicketSetup=Ticket module setup +TicketSettings=Settings +TicketSetupPage= +TicketPublicAccess=A public interface requiring no identification is available at the following url +TicketSetupDictionaries=The type of ticket, severity and analytic codes are configurable from dictionaries +TicketParamModule=Module variable setup +TicketParamMail=Email setup +TicketEmailNotificationFrom=Notification email from +TicketEmailNotificationFromHelp=Used into ticket message answer by example +TicketEmailNotificationTo=Notifications email to +TicketEmailNotificationToHelp=Send email notifications to this address. +TicketNewEmailBodyLabel=Text message sent after creating a ticket +TicketNewEmailBodyHelp=The text specified here will be inserted into the email confirming the creation of a new ticket from the public interface. Information on the consultation of the ticket are automatically added. +TicketParamPublicInterface=Public interface setup +TicketsEmailMustExist=Require an existing email address to create a ticket +TicketsEmailMustExistHelp=In the public interface, the email address should already be filled in the database to create a new ticket. +PublicInterface=Public interface +TicketUrlPublicInterfaceLabelAdmin=Alternative URL for public interface +TicketUrlPublicInterfaceHelpAdmin=It is possible to define an alias to the web server and thus make available the public interface with another URL (the server must act as a proxy on this new URL) +TicketPublicInterfaceTextHomeLabelAdmin=Welcome text of the public interface +TicketPublicInterfaceTextHome=You can create a support ticket or view existing from its identifier tracking ticket. +TicketPublicInterfaceTextHomeHelpAdmin=The text defined here will appear on the home page of the public interface. +TicketPublicInterfaceTopicLabelAdmin=Interface title +TicketPublicInterfaceTopicHelp=This text will appear as the title of the public interface. +TicketPublicInterfaceTextHelpMessageLabelAdmin=Help text to the message entry +TicketPublicInterfaceTextHelpMessageHelpAdmin=This text will appear above the message input area of the user. +ExtraFieldsTicket=Extra attributes +TicketCkEditorEmailNotActivated=HTML editor is not activated. Please put FCKEDITOR_ENABLE_MAIL content to 1 to get it. +TicketsDisableEmail=Do not send emails for ticket creation or message recording +TicketsDisableEmailHelp=By default, emails are sent when new tickets or messages created. Enable this option to disable *all* email notifications +TicketsLogEnableEmail=Enable log by email +TicketsLogEnableEmailHelp=At each change, an email will be sent **to each contact** associated with the ticket. +TicketParams=Params +TicketsShowModuleLogo=Display the logo of the module in the public interface +TicketsShowModuleLogoHelp=Enable this option to hide the logo module in the pages of the public interface +TicketsShowCompanyLogo=Display the logo of the company in the public interface +TicketsShowCompanyLogoHelp=Enable this option to hide the logo of the main company in the pages of the public interface +TicketsEmailAlsoSendToMainAddress=Also send notification to main email address +TicketsEmailAlsoSendToMainAddressHelp=Enable this option to send an email to "Notification email from" address (see setup below) +TicketsLimitViewAssignedOnly=Restrict the display to tickets assigned to the current user (not effective for external users, always be limited to the third party they depend on) +TicketsLimitViewAssignedOnlyHelp=Only tickets assigned to the current user will be visible. Does not apply to a user with tickets management rights. +TicketsActivatePublicInterface=Activate public interface +TicketsActivatePublicInterfaceHelp=Public interface allow any visitors to create tickets. +TicketsAutoAssignTicket=Automatically assign the user who created the ticket +TicketsAutoAssignTicketHelp=When creating a ticket, the user can be automatically assigned to the ticket. +TicketNumberingModules=Tickets numbering module +TicketNotifyTiersAtCreation=Notify third party at creation +TicketGroup=Group +TicketsDisableCustomerEmail=Always disable emails when a ticket is created from public interface +# +# Index & list page +# +TicketsIndex=Tickets area +TicketList=List of tickets +TicketAssignedToMeInfos=This page display ticket list created by or assigned to current user +NoTicketsFound=No ticket found +NoUnreadTicketsFound=No unread ticket found +TicketViewAllTickets=View all tickets +TicketViewNonClosedOnly=View only open tickets +TicketStatByStatus=Tickets by status +OrderByDateAsc=Sort by ascending date +OrderByDateDesc=Sort by descending date +ShowAsConversation=Show as conversation list +MessageListViewType=Show as table list + +# +# Ticket card +# +Ticket=Ticket +TicketCard=Ticket card +CreateTicket=Create ticket +EditTicket=Edit ticket +TicketsManagement=Tickets Management +CreatedBy=Created by +NewTicket=New Ticket +SubjectAnswerToTicket=Ticket answer +TicketTypeRequest=Request type +TicketCategory=Analytic code +SeeTicket=See ticket +TicketMarkedAsRead=Ticket has been marked as read +TicketReadOn=Read on +TicketCloseOn=Closing date +MarkAsRead=Mark ticket as read +TicketHistory=Ticket history +AssignUser=Assign to user +TicketAssigned=Ticket is now assigned +TicketChangeType=Change type +TicketChangeCategory=Change analytic code +TicketChangeSeverity=Change severity +TicketAddMessage=Add a message +AddMessage=Add a message +MessageSuccessfullyAdded=Ticket added +TicketMessageSuccessfullyAdded=Message successfully added +TicketMessagesList=Message list +NoMsgForThisTicket=No message for this ticket +Properties=Classification +LatestNewTickets=Latest %s newest tickets (not read) +TicketSeverity=Severity +ShowTicket=See ticket +RelatedTickets=Related tickets +TicketAddIntervention=Create intervention +CloseTicket=Close ticket +CloseATicket=Close a ticket +ConfirmCloseAticket=Confirm ticket closing +ConfirmDeleteTicket=Please confirm ticket deleting +TicketDeletedSuccess=Ticket deleted with success +TicketMarkedAsClosed=Ticket marked as closed +TicketDurationAuto=Calculated duration +TicketDurationAutoInfos=Duration calculated automatically from intervention related +TicketUpdated=Ticket updated +SendMessageByEmail=Send message by email +TicketNewMessage=New message +ErrorMailRecipientIsEmptyForSendTicketMessage=Recipient is empty. No email send +TicketGoIntoContactTab=Please go into "Contacts" tab to select them +TicketMessageMailIntro=Introduction +TicketMessageMailIntroHelp=This text is added only at the beginning of the email and will not be saved. +TicketMessageMailIntroLabelAdmin=Introduction to the message when sending email +TicketMessageMailIntroText=Hello,
    A new response was sent on a ticket that you contact. Here is the message:
    +TicketMessageMailIntroHelpAdmin=This text will be inserted before the text of the response to a ticket. +TicketMessageMailSignature=Signature +TicketMessageMailSignatureHelp=This text is added only at the end of the email and will not be saved. +TicketMessageMailSignatureText=

    Sincerely,

    --

    +TicketMessageMailSignatureLabelAdmin=Signature of response email +TicketMessageMailSignatureHelpAdmin=This text will be inserted after the response message. +TicketMessageHelp=Only this text will be saved in the message list on ticket card. +TicketMessageSubstitutionReplacedByGenericValues=Substitutions variables are replaced by generic values. +TimeElapsedSince=Time elapsed since +TicketTimeToRead=Time elapsed before read +TicketContacts=Contacts ticket +TicketDocumentsLinked=Documents linked to ticket +ConfirmReOpenTicket=Confirm reopen this ticket ? +TicketMessageMailIntroAutoNewPublicMessage=A new message was posted on the ticket with the subject %s: +TicketAssignedToYou=Ticket assigned +TicketAssignedEmailBody=You have been assigned the ticket #%s by %s +MarkMessageAsPrivate=Mark message as private +TicketMessagePrivateHelp=This message will not display to external users +TicketEmailOriginIssuer=Issuer at origin of the tickets +InitialMessage=Initial Message +LinkToAContract=Link to a contract +TicketPleaseSelectAContract=Select a contract +UnableToCreateInterIfNoSocid=Can not create an intervention when no third party is defined +TicketMailExchanges=Mail exchanges +TicketInitialMessageModified=Initial message modified +TicketMessageSuccesfullyUpdated=Message successfully updated +TicketChangeStatus=Change status +TicketConfirmChangeStatus=Confirm the status change: %s ? +TicketLogStatusChanged=Status changed: %s to %s +TicketNotNotifyTiersAtCreate=Not notify company at create +Unread=Unread +TicketNotCreatedFromPublicInterface=Not available. Ticket was not created from public interface. +PublicInterfaceNotEnabled=Public interface was not enabled +ErrorTicketRefRequired=Ticket reference name is required + +# +# Logs +# +TicketLogMesgReadBy=Ticket %s read by %s +NoLogForThisTicket=No log for this ticket yet +TicketLogAssignedTo=Ticket %s assigned to %s +TicketLogPropertyChanged=Ticket %s modified: classification from %s to %s +TicketLogClosedBy=Ticket %s closed by %s +TicketLogReopen=Ticket %s re-open + +# +# Public pages +# +TicketSystem=Ticket system +ShowListTicketWithTrackId=Display ticket list from track ID +ShowTicketWithTrackId=Display ticket from track ID +TicketPublicDesc=You can create a support ticket or check from an existing ID. +YourTicketSuccessfullySaved=Ticket has been successfully saved! +MesgInfosPublicTicketCreatedWithTrackId=A new ticket has been created with ID %s and Ref %s. +PleaseRememberThisId=Please keep the tracking number that we might ask you later. +TicketNewEmailSubject=Ticket creation confirmation - Ref %s (public ticket ID %s) +TicketNewEmailSubjectCustomer=New support ticket +TicketNewEmailBody=This is an automatic email to confirm you have registered a new ticket. +TicketNewEmailBodyCustomer=This is an automatic email to confirm a new ticket has just been created into your account. +TicketNewEmailBodyInfosTicket=Information for monitoring the ticket +TicketNewEmailBodyInfosTrackId=Ticket tracking number: %s +TicketNewEmailBodyInfosTrackUrl=You can view the progress of the ticket by clicking the link above. +TicketNewEmailBodyInfosTrackUrlCustomer=You can view the progress of the ticket in the specific interface by clicking the following link +TicketEmailPleaseDoNotReplyToThisEmail=Please do not reply directly to this email! Use the link to reply into the interface. +TicketPublicInfoCreateTicket=This form allows you to record a support ticket in our management system. +TicketPublicPleaseBeAccuratelyDescribe=Please accurately describe the problem. Provide the most information possible to allow us to correctly identify your request. +TicketPublicMsgViewLogIn=Please enter ticket tracking ID +TicketTrackId=Public Tracking ID +OneOfTicketTrackId=One of your tracking ID +ErrorTicketNotFound=Ticket with tracking ID %s not found! +Subject=Subject +ViewTicket=View ticket +ViewMyTicketList=View my ticket list +ErrorEmailMustExistToCreateTicket=Error: email address not found in our database +TicketNewEmailSubjectAdmin=New ticket created - Ref %s (public ticket ID %s) +TicketNewEmailBodyAdmin=

    Ticket has just been created with ID #%s, see information:

    +SeeThisTicketIntomanagementInterface=See ticket in management interface +TicketPublicInterfaceForbidden=The public interface for the tickets was not enabled +ErrorEmailOrTrackingInvalid=Bad value for tracking ID or email +OldUser=Old user +NewUser=New user +NumberOfTicketsByMonth=Number of tickets per month +NbOfTickets=Number of tickets +# notifications +TicketNotificationEmailSubject=Ticket %s updated +TicketNotificationEmailBody=This is an automatic message to notify you that ticket %s has just been updated +TicketNotificationRecipient=Notification recipient +TicketNotificationLogMessage=Log message +TicketNotificationEmailBodyInfosTrackUrlinternal=View ticket into interface +TicketNotificationNumberEmailSent=Notification email sent: %s + +ActionsOnTicket=Events on ticket + +# +# Boxes +# +BoxLastTicket=Latest created tickets +BoxLastTicketDescription=Latest %s created tickets +BoxLastTicketContent= +BoxLastTicketNoRecordedTickets=No recent unread tickets +BoxLastModifiedTicket=Latest modified tickets +BoxLastModifiedTicketDescription=Latest %s modified tickets +BoxLastModifiedTicketContent= +BoxLastModifiedTicketNoRecordedTickets=No recent modified tickets diff --git a/htdocs/langs/am_ET/trips.lang b/htdocs/langs/am_ET/trips.lang new file mode 100644 index 00000000000..654f14d6bf7 --- /dev/null +++ b/htdocs/langs/am_ET/trips.lang @@ -0,0 +1,151 @@ +# Dolibarr language file - Source file is en_US - trips +ShowExpenseReport=Show expense report +Trips=Expense reports +TripsAndExpenses=Expenses reports +TripsAndExpensesStatistics=Expense reports statistics +TripCard=Expense report card +AddTrip=Create expense report +ListOfTrips=List of expense reports +ListOfFees=List of fees +TypeFees=Types of fees +ShowTrip=Show expense report +NewTrip=New expense report +LastExpenseReports=Latest %s expense reports +AllExpenseReports=All expense reports +CompanyVisited=Company/organization visited +FeesKilometersOrAmout=Amount or kilometers +DeleteTrip=Delete expense report +ConfirmDeleteTrip=Are you sure you want to delete this expense report? +ListTripsAndExpenses=List of expense reports +ListToApprove=Waiting for approval +ExpensesArea=Expense reports area +ClassifyRefunded=Classify 'Refunded' +ExpenseReportWaitingForApproval=A new expense report has been submitted for approval +ExpenseReportWaitingForApprovalMessage=A new expense report has been submitted and is waiting for approval.
    - User: %s
    - Period: %s
    Click here to validate: %s +ExpenseReportWaitingForReApproval=An expense report has been submitted for re-approval +ExpenseReportWaitingForReApprovalMessage=An expense report has been submitted and is waiting for re-approval.
    The %s, you refused to approve the expense report for this reason: %s.
    A new version has been proposed and waiting for your approval.
    - User: %s
    - Period: %s
    Click here to validate: %s +ExpenseReportApproved=An expense report was approved +ExpenseReportApprovedMessage=The expense report %s was approved.
    - User: %s
    - Approved by: %s
    Click here to show the expense report: %s +ExpenseReportRefused=An expense report was refused +ExpenseReportRefusedMessage=The expense report %s was refused.
    - User: %s
    - Refused by: %s
    - Motive for refusal: %s
    Click here to show the expense report: %s +ExpenseReportCanceled=An expense report was canceled +ExpenseReportCanceledMessage=The expense report %s was canceled.
    - User: %s
    - Canceled by: %s
    - Motive for cancellation: %s
    Click here to show the expense report: %s +ExpenseReportPaid=An expense report was paid +ExpenseReportPaidMessage=The expense report %s was paid.
    - User: %s
    - Paid by: %s
    Click here to show the expense report: %s +TripId=Id expense report +AnyOtherInThisListCanValidate=Person to inform for validation. +TripSociete=Information company +TripNDF=Informations expense report +PDFStandardExpenseReports=Standard template to generate a PDF document for expense report +ExpenseReportLine=Expense report line +TF_OTHER=Other +TF_TRIP=Transportation +TF_LUNCH=Lunch +TF_METRO=Metro +TF_TRAIN=Train +TF_BUS=Bus +TF_CAR=Car +TF_PEAGE=Toll +TF_ESSENCE=Fuel +TF_HOTEL=Hotel +TF_TAXI=Taxi +EX_KME=Mileage costs +EX_FUE=Fuel CV +EX_HOT=Hotel +EX_PAR=Parking CV +EX_TOL=Toll CV +EX_TAX=Various Taxes +EX_IND=Indemnity transportation subscription +EX_SUM=Maintenance supply +EX_SUO=Office supplies +EX_CAR=Car rental +EX_DOC=Documentation +EX_CUR=Customers receiving +EX_OTR=Other receiving +EX_POS=Postage +EX_CAM=CV maintenance and repair +EX_EMM=Employees meal +EX_GUM=Guests meal +EX_BRE=Breakfast +EX_FUE_VP=Fuel PV +EX_TOL_VP=Toll PV +EX_PAR_VP=Parking PV +EX_CAM_VP=PV maintenance and repair +DefaultCategoryCar=Default transportation mode +DefaultRangeNumber=Default range number +UploadANewFileNow=Upload a new document now +Error_EXPENSEREPORT_ADDON_NotDefined=Error, the rule for expense report numbering ref was not defined into setup of module 'Expense Report' +ErrorDoubleDeclaration=You have declared another expense report into a similar date range. +AucuneLigne=There is no expense report declared yet +ModePaiement=Payment mode +VALIDATOR=User responsible for approval +VALIDOR=Approved by +AUTHOR=Recorded by +AUTHORPAIEMENT=Paid by +REFUSEUR=Denied by +CANCEL_USER=Deleted by +MOTIF_REFUS=Reason +MOTIF_CANCEL=Reason +DATE_REFUS=Deny date +DATE_SAVE=Validation date +DATE_CANCEL=Cancelation date +DATE_PAIEMENT=Payment date +BROUILLONNER=Reopen +ExpenseReportRef=Ref. expense report +ValidateAndSubmit=Validate and submit for approval +ValidatedWaitingApproval=Validated (waiting for approval) +NOT_AUTHOR=You are not the author of this expense report. Operation cancelled. +ConfirmRefuseTrip=Are you sure you want to deny this expense report? +ValideTrip=Approve expense report +ConfirmValideTrip=Are you sure you want to approve this expense report? +PaidTrip=Pay an expense report +ConfirmPaidTrip=Are you sure you want to change status of this expense report to "Paid"? +ConfirmCancelTrip=Are you sure you want to cancel this expense report? +BrouillonnerTrip=Move back expense report to status "Draft" +ConfirmBrouillonnerTrip=Are you sure you want to move this expense report to status "Draft"? +SaveTrip=Validate expense report +ConfirmSaveTrip=Are you sure you want to validate this expense report? +NoTripsToExportCSV=No expense report to export for this period. +ExpenseReportPayment=Expense report payment +ExpenseReportsToApprove=Expense reports to approve +ExpenseReportsToPay=Expense reports to pay +ConfirmCloneExpenseReport=Are you sure you want to clone this expense report ? +ExpenseReportsIk=Expense report milles index +ExpenseReportsRules=Expense report rules +ExpenseReportIkDesc=You can modify the calculation of kilometers expense by category and range who they are previously defined. d is the distance in kilometers +ExpenseReportRulesDesc=You can create or update any rules of calculation. This part will be used when user will create a new expense report +expenseReportOffset=Offset +expenseReportCoef=Coefficient +expenseReportTotalForFive=Example with d = 5 +expenseReportRangeFromTo=from %d to %d +expenseReportRangeMoreThan=more than %d +expenseReportCoefUndefined=(value not defined) +expenseReportCatDisabled=Category disabled - see the c_exp_tax_cat dictionary +expenseReportRangeDisabled=Range disabled - see the c_exp_tax_range dictionay +expenseReportPrintExample=offset + (d x coef) = %s +ExpenseReportApplyTo=Apply to +ExpenseReportDomain=Domain to apply +ExpenseReportLimitOn=Limit on +ExpenseReportDateStart=Date start +ExpenseReportDateEnd=Date end +ExpenseReportLimitAmount=Limite amount +ExpenseReportRestrictive=Restrictive +AllExpenseReport=All type of expense report +OnExpense=Expense line +ExpenseReportRuleSave=Expense report rule saved +ExpenseReportRuleErrorOnSave=Error: %s +RangeNum=Range %d +ExpenseReportConstraintViolationError=Constraint violation id [%s]: %s is superior to %s %s +byEX_DAY=by day (limitation to %s) +byEX_MON=by month (limitation to %s) +byEX_YEA=by year (limitation to %s) +byEX_EXP=by line (limitation to %s) +ExpenseReportConstraintViolationWarning=Constraint violation id [%s]: %s is superior to %s %s +nolimitbyEX_DAY=by day (no limitation) +nolimitbyEX_MON=by month (no limitation) +nolimitbyEX_YEA=by year (no limitation) +nolimitbyEX_EXP=by line (no limitation) +CarCategory=Category of car +ExpenseRangeOffset=Offset amount: %s +RangeIk=Mileage range +AttachTheNewLineToTheDocument=Attach the line to an uploaded document diff --git a/htdocs/langs/am_ET/users.lang b/htdocs/langs/am_ET/users.lang new file mode 100644 index 00000000000..41a5ebd0981 --- /dev/null +++ b/htdocs/langs/am_ET/users.lang @@ -0,0 +1,118 @@ +# Dolibarr language file - Source file is en_US - users +HRMArea=HRM area +UserCard=User card +GroupCard=Group card +Permission=Permission +Permissions=Permissions +EditPassword=Edit password +SendNewPassword=Regenerate and send password +SendNewPasswordLink=Send link to reset password +ReinitPassword=Regenerate password +PasswordChangedTo=Password changed to: %s +SubjectNewPassword=Your new password for %s +GroupRights=Group permissions +UserRights=User permissions +UserGUISetup=User Display Setup +DisableUser=Disable +DisableAUser=Disable a user +DeleteUser=Delete +DeleteAUser=Delete a user +EnableAUser=Enable a user +DeleteGroup=Delete +DeleteAGroup=Delete a group +ConfirmDisableUser=Are you sure you want to disable user %s? +ConfirmDeleteUser=Are you sure you want to delete user %s? +ConfirmDeleteGroup=Are you sure you want to delete group %s? +ConfirmEnableUser=Are you sure you want to enable user %s? +ConfirmReinitPassword=Are you sure you want to generate a new password for user %s? +ConfirmSendNewPassword=Are you sure you want to generate and send new password for user %s? +NewUser=New user +CreateUser=Create user +LoginNotDefined=Login is not defined. +NameNotDefined=Name is not defined. +ListOfUsers=List of users +SuperAdministrator=Super Administrator +SuperAdministratorDesc=Global administrator +AdministratorDesc=Administrator +DefaultRights=Default Permissions +DefaultRightsDesc=Define here the default permissions that are automatically granted to a new user (to modify permissions for existing users, go to the user card). +DolibarrUsers=Dolibarr users +LastName=Last name +FirstName=First name +ListOfGroups=List of groups +NewGroup=New group +CreateGroup=Create group +RemoveFromGroup=Remove from group +PasswordChangedAndSentTo=Password changed and sent to %s. +PasswordChangeRequest=Request to change password for %s +PasswordChangeRequestSent=Request to change password for %s sent to %s. +ConfirmPasswordReset=Confirm password reset +MenuUsersAndGroups=Users & Groups +LastGroupsCreated=Latest %s groups created +LastUsersCreated=Latest %s users created +ShowGroup=Show group +ShowUser=Show user +NonAffectedUsers=Non assigned users +UserModified=User modified successfully +PhotoFile=Photo file +ListOfUsersInGroup=List of users in this group +ListOfGroupsForUser=List of groups for this user +LinkToCompanyContact=Link to third party / contact +LinkedToDolibarrMember=Link to member +LinkedToDolibarrUser=Link to Dolibarr user +LinkedToDolibarrThirdParty=Link to Dolibarr third party +CreateDolibarrLogin=Create a user +CreateDolibarrThirdParty=Create a third party +LoginAccountDisableInDolibarr=Account disabled in Dolibarr. +UsePersonalValue=Use personal value +InternalUser=Internal user +ExportDataset_user_1=Users and their properties +DomainUser=Domain user %s +Reactivate=Reactivate +CreateInternalUserDesc=This form allows you to create an internal user in your company/organization. To create an external user (customer, vendor etc. ..), use the button 'Create Dolibarr User' from that third-party's contact card. +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +PermissionInheritedFromAGroup=Permission granted because inherited from one of a user's group. +Inherited=Inherited +UserWillBeInternalUser=Created user will be an internal user (because not linked to a particular third party) +UserWillBeExternalUser=Created user will be an external user (because linked to a particular third party) +IdPhoneCaller=Id phone caller +NewUserCreated=User %s created +NewUserPassword=Password change for %s +NewPasswordValidated=Your new password have been validated and must be used now to login. +EventUserModified=User %s modified +UserDisabled=User %s disabled +UserEnabled=User %s activated +UserDeleted=User %s removed +NewGroupCreated=Group %s created +GroupModified=Group %s modified +GroupDeleted=Group %s removed +ConfirmCreateContact=Are you sure you want to create a Dolibarr account for this contact? +ConfirmCreateLogin=Are you sure you want to create a Dolibarr account for this member? +ConfirmCreateThirdParty=Are you sure you want to create a third party for this member? +LoginToCreate=Login to create +NameToCreate=Name of third party to create +YourRole=Your roles +YourQuotaOfUsersIsReached=Your quota of active users is reached ! +NbOfUsers=No. of users +NbOfPermissions=No. of permissions +DontDowngradeSuperAdmin=Only a superadmin can downgrade a superadmin +HierarchicalResponsible=Supervisor +HierarchicView=Hierarchical view +UseTypeFieldToChange=Use field Type to change +OpenIDURL=OpenID URL +LoginUsingOpenID=Use OpenID to login +WeeklyHours=Hours worked (per week) +ExpectedWorkedHours=Expected worked hours per week +ColorUser=Color of the user +DisabledInMonoUserMode=Disabled in maintenance mode +UserAccountancyCode=User accounting code +UserLogoff=User logout +UserLogged=User logged +DateEmployment=Employment Start Date +DateEmploymentEnd=Employment End Date +CantDisableYourself=You can't disable your own user record +ForceUserExpenseValidator=Force expense report validator +ForceUserHolidayValidator=Force leave request validator +ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/am_ET/website.lang b/htdocs/langs/am_ET/website.lang new file mode 100644 index 00000000000..bce2a09fb03 --- /dev/null +++ b/htdocs/langs/am_ET/website.lang @@ -0,0 +1,130 @@ +# Dolibarr language file - Source file is en_US - website +Shortname=Code +WebsiteSetupDesc=Create here the websites you wish to use. Then go into menu Websites to edit them. +DeleteWebsite=Delete website +ConfirmDeleteWebsite=Are you sure you want to delete this web site? All its pages and content will also be removed. The files uploaded (like into the medias directory, the ECM module, ...) will remain. +WEBSITE_TYPE_CONTAINER=Type of page/container +WEBSITE_PAGE_EXAMPLE=Web page to use as example +WEBSITE_PAGENAME=Page name/alias +WEBSITE_ALIASALT=Alternative page names/aliases +WEBSITE_ALIASALTDesc=Use here list of other name/aliases so the page can also be accessed using this other names/aliases (for example the old name after renaming the alias to keep backlink on old link/name working). Syntax is:
    alternativename1, alternativename2, ... +WEBSITE_CSS_URL=URL of external CSS file +WEBSITE_CSS_INLINE=CSS file content (common to all pages) +WEBSITE_JS_INLINE=Javascript file content (common to all pages) +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. +MediaFiles=Media library +EditCss=Edit website properties +EditMenu=Edit menu +EditMedias=Edit medias +EditPageMeta=Edit page/container properties +EditInLine=Edit inline +AddWebsite=Add website +Webpage=Web page/container +AddPage=Add page/container +HomePage=Home Page +PageContainer=Page/container +PreviewOfSiteNotYetAvailable=Preview of your website %s not yet available. You must first 'Import a full website template' or just 'Add a page/container'. +RequestedPageHasNoContentYet=Requested page with id %s has no content yet, or cache file .tpl.php was removed. Edit content of the page to solve this. +SiteDeleted=Web site '%s' deleted +PageContent=Page/Contenair +PageDeleted=Page/Contenair '%s' of website %s deleted +PageAdded=Page/Contenair '%s' added +ViewSiteInNewTab=View site in new tab +ViewPageInNewTab=View page in new tab +SetAsHomePage=Set as Home page +RealURL=Real URL +ViewWebsiteInProduction=View web site using home URLs +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: +YouCanAlsoTestWithPHPS=Use with PHP embedded server
    On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running
    php -S 0.0.0.0:8080 -t %s +YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org +CheckVirtualHostPerms=Check also that virtual host has permission %s on files into
    %s +ReadPerm=Read +WritePerm=Write +TestDeployOnWeb=Test/deploy on web +PreviewSiteServedByWebServer=Preview %s in a new tab.

    The %s will be served by an external web server (like Apache, Nginx, IIS). You must install and setup this server before to point to directory:
    %s
    URL served by external server:
    %s +PreviewSiteServedByDolibarr=Preview %s in a new tab.

    The %s will be served by Dolibarr server so it does not need any extra web server (like Apache, Nginx, IIS) to be installed.
    The inconvenient is that URL of pages are not user friendly and start with path of your Dolibarr.
    URL served by Dolibarr:
    %s

    To use your own external web server to serve this web site, create a virtual host on your web server that point on directory
    %s
    then enter the name of this virtual server and click on the other preview button. +VirtualHostUrlNotDefined=URL of the virtual host served by external web server not defined +NoPageYet=No pages yet +YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template +SyntaxHelp=Help on specific syntax tips +YouCanEditHtmlSourceckeditor=You can edit HTML source code using the "Source" button in editor. +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +ClonePage=Clone page/container +CloneSite=Clone site +SiteAdded=Website added +ConfirmClonePage=Please enter code/alias of new page and if it is a translation of the cloned page. +PageIsANewTranslation=The new page is a translation of the current page ? +LanguageMustNotBeSameThanClonedPage=You clone a page as a translation. The language of the new page must be different than language of source page. +ParentPageId=Parent page ID +WebsiteId=Website ID +CreateByFetchingExternalPage=Create page/container by fetching page from external URL... +OrEnterPageInfoManually=Or create page from scratch or from a page template... +FetchAndCreate=Fetch and Create +ExportSite=Export website +ImportSite=Import website template +IDOfPage=Id of page +Banner=Banner +BlogPost=Blog post +WebsiteAccount=Website account +WebsiteAccounts=Website accounts +AddWebsiteAccount=Create web site account +BackToListForThirdParty=Back to list for the third-party +DisableSiteFirst=Disable website first +MyContainerTitle=My web site title +AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) +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 +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. +OnlyEditionOfSourceForGrabbedContent=Only edition of HTML source is possible when content was grabbed from an external site +GrabImagesInto=Grab also images found into css and page. +ImagesShouldBeSavedInto=Images should be saved into directory +WebsiteRootOfImages=Root directory for website images +SubdirOfPage=Sub-directory dedicated to page +AliasPageAlreadyExists=Alias page %s already exists +CorporateHomePage=Corporate Home page +EmptyPage=Empty page +ExternalURLMustStartWithHttp=External URL must start with http:// or https:// +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 +ThisPageHasTranslationPages=This page/container has translation +NoWebSiteCreateOneFirst=No website has been created yet. Create one first. +GoTo=Go to +DynamicPHPCodeContainsAForbiddenInstruction=You add dynamic PHP code that contains the PHP instruction '%s' that is forbidden by default as dynamic content (see hidden options WEBSITE_PHP_ALLOW_xxx to increase list of allowed commands). +NotAllowedToAddDynamicContent=You don't have permission to add or edit PHP dynamic content in websites. Ask permission or just keep code into php tags unmodified. +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 +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. +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. +Dynamiccontent=Sample of a page with dynamic content +ImportSite=Import website template +EditInLineOnOff=Mode 'Edit inline' is %s +ShowSubContainersOnOff=Mode to execute 'dynamic content' is %s +GlobalCSSorJS=Global CSS/JS/Header file of web site +BackToHomePage=Back to home page... +TranslationLinks=Translation links +YouTryToAccessToAFileThatIsNotAWebsitePage=You try to access to a page that is not a website page +UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 characters +MainLanguage=Main language +OtherLanguages=Other languages +UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/am_ET/withdrawals.lang b/htdocs/langs/am_ET/withdrawals.lang new file mode 100644 index 00000000000..b1d6e30e329 --- /dev/null +++ b/htdocs/langs/am_ET/withdrawals.lang @@ -0,0 +1,119 @@ +# Dolibarr language file - Source file is en_US - withdrawals +CustomersStandingOrdersArea=Direct debit payment orders area +SuppliersStandingOrdersArea=Direct credit payment orders area +StandingOrdersPayment=Direct debit payment orders +StandingOrderPayment=Direct debit payment order +NewStandingOrder=New direct debit order +StandingOrderToProcess=To process +WithdrawalsReceipts=Direct debit orders +WithdrawalReceipt=Direct debit order +LastWithdrawalReceipts=Latest %s direct debit files +WithdrawalsLines=Direct debit order lines +RequestStandingOrderToTreat=Request for direct debit payment order to process +RequestStandingOrderTreated=Request for direct debit payment order processed +NotPossibleForThisStatusOfWithdrawReceiptORLine=Not yet possible. Withdraw status must be set to 'credited' before declaring reject on specific lines. +NbOfInvoiceToWithdraw=No. of qualified invoice with waiting direct debit order +NbOfInvoiceToWithdrawWithInfo=No. of customer invoice with direct debit payment orders having defined bank account information +InvoiceWaitingWithdraw=Invoice waiting for direct debit +AmountToWithdraw=Amount to withdraw +WithdrawsRefused=Direct debit refused +NoInvoiceToWithdraw=No customer invoice with open 'Direct debit requests' is waiting. Go on tab '%s' on invoice card to make a request. +ResponsibleUser=User Responsible +WithdrawalsSetup=Direct debit payment setup +WithdrawStatistics=Direct debit payment statistics +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 +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=Classify credited +ClassCreditedConfirm=Are you sure you want to classify this withdrawal receipt as credited on your bank account? +TransData=Transmission date +TransMetod=Transmission method +Send=Send +Lines=Lines +StandingOrderReject=Issue a rejection +WithdrawalRefused=Withdrawal refused +WithdrawalRefusedConfirm=Are you sure you want to enter a withdrawal rejection for society +RefusedData=Date of rejection +RefusedReason=Reason for rejection +RefusedInvoicing=Billing the rejection +NoInvoiceRefused=Do not charge the rejection +InvoiceRefused=Invoice refused (Charge the rejection to customer) +StatusDebitCredit=Status debit/credit +StatusWaiting=Waiting +StatusTrans=Sent +StatusCredited=Credited +StatusRefused=Refused +StatusMotif0=Unspecified +StatusMotif1=Insufficient funds +StatusMotif2=Request contested +StatusMotif3=No direct debit payment order +StatusMotif4=Sales Order +StatusMotif5=RIB unusable +StatusMotif6=Account without balance +StatusMotif7=Judicial Decision +StatusMotif8=Other reason +CreateForSepaFRST=Create direct debit file (SEPA FRST) +CreateForSepaRCUR=Create direct debit file (SEPA RCUR) +CreateAll=Create direct debit file (all) +CreateGuichet=Only office +CreateBanque=Only bank +OrderWaiting=Waiting for treatment +NotifyTransmision=Withdrawal Transmission +NotifyCredit=Withdrawal Credit +NumeroNationalEmetter=National Transmitter Number +WithBankUsingRIB=For bank accounts using RIB +WithBankUsingBANBIC=For bank accounts using IBAN/BIC/SWIFT +BankToReceiveWithdraw=Receiving Bank Account +CreditDate=Credit on +WithdrawalFileNotCapable=Unable to generate withdrawal receipt file for your country %s (Your country is not supported) +ShowWithdraw=Show Direct Debit Order +IfInvoiceNeedOnWithdrawPaymentWontBeClosed=However, if invoice has at least one direct debit payment order not yet processed, it won't be set as paid to allow prior withdrawal 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 payment order is closed, payment on invoice will be automatically recorded, and invoice closed if remainder to pay is null. +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 +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) +WithdrawRequestAmount=Amount of Direct debit request: +WithdrawRequestErrorNilAmount=Unable to create direct debit request for empty amount. +SepaMandate=SEPA Direct Debit Mandate +SepaMandateShort=SEPA Mandate +PleaseReturnMandate=Please return this mandate form by email to %s or by mail to +SEPALegalText=By signing this mandate form, you authorize (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. +CreditorIdentifier=Creditor Identifier +CreditorName=Creditor Name +SEPAFillForm=(B) Please complete all the fields marked * +SEPAFormYourName=Your name +SEPAFormYourBAN=Your Bank Account Name (IBAN) +SEPAFormYourBIC=Your Bank Identifier Code (BIC) +SEPAFrstOrRecur=Type of payment +ModeRECUR=Recurring payment +ModeFRST=One-off payment +PleaseCheckOne=Please check one only +DirectDebitOrderCreated=Direct debit order %s created +AmountRequested=Amount requested +SEPARCUR=SEPA CUR +SEPAFRST=SEPA FRST +ExecutionDate=Execution date +CreateForSepa=Create direct debit file +ICS=Creditor Identifier CI +END_TO_END="EndToEndId" SEPA XML tag - Unique id assigned per transaction +USTRD="Unstructured" SEPA XML tag +ADDDAYS=Add days to Execution Date + +### Notifications +InfoCreditSubject=Payment of direct debit payment order %s by the bank +InfoCreditMessage=The direct debit payment order %s has been paid by the bank
    Data of payment: %s +InfoTransSubject=Transmission of direct debit payment order %s to bank +InfoTransMessage=The direct debit payment order %s has been sent to bank by %s %s.

    +InfoTransData=Amount: %s
    Method: %s
    Date: %s +InfoRejectSubject=Direct debit payment order refused +InfoRejectMessage=Hello,

    the direct debit payment order of invoice %s related to the company %s, with an amount of %s has been refused by the bank.

    --
    %s +ModeWarning=Option for real mode was not set, we stop after this simulation diff --git a/htdocs/langs/am_ET/workflow.lang b/htdocs/langs/am_ET/workflow.lang new file mode 100644 index 00000000000..be126eef0f4 --- /dev/null +++ b/htdocs/langs/am_ET/workflow.lang @@ -0,0 +1,20 @@ +# Dolibarr language file - Source file is en_US - workflow +WorkflowSetup=Workflow module setup +WorkflowDesc=This module provides some automatic actions. By default, the workflow is open (you can do things in the order you want) but here you can activate some automatic actions. +ThereIsNoWorkflowToModify=There is no workflow modifications available with the activated modules. +# Autocreate +descWORKFLOW_PROPAL_AUTOCREATE_ORDER=Automatically create a sales order after a commercial proposal is signed (the new order will have same amount as the proposal) +descWORKFLOW_PROPAL_AUTOCREATE_INVOICE=Automatically create a customer invoice after a commercial proposal is signed (the new invoice will have same amount as the proposal) +descWORKFLOW_CONTRACT_AUTOCREATE_INVOICE=Automatically create a customer invoice after a contract is validated +descWORKFLOW_ORDER_AUTOCREATE_INVOICE=Automatically create a customer invoice after a sales order is closed (the new invoice will have same amount as the order) +# Autoclassify customer proposal or order +descWORKFLOW_ORDER_CLASSIFY_BILLED_PROPAL=Classify linked source proposal as billed when sales order is set to billed (and if the amount of the order is the same as the total amount of the signed linked proposal) +descWORKFLOW_INVOICE_CLASSIFY_BILLED_PROPAL=Classify linked source proposal as billed when customer invoice is validated (and if the amount of the invoice is the same as the total amount of the signed linked proposal) +descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_ORDER=Classify linked source sales order as billed when customer invoice is validated (and if the amount of the invoice is the same as the total amount of the linked order) +descWORKFLOW_INVOICE_CLASSIFY_BILLED_ORDER=Classify linked source sales order as billed when customer invoice is set to paid (and if the amount of the invoice is the same as the total amount of the linked order) +descWORKFLOW_ORDER_CLASSIFY_SHIPPED_SHIPPING=Classify linked source sales order as shipped when a shipment is validated (and if the quantity shipped by all shipments is the same as in the order to update) +# Autoclassify purchase order +descWORKFLOW_ORDER_CLASSIFY_BILLED_SUPPLIER_PROPOSAL=Classify linked source vendor proposal as billed when vendor invoice is validated (and if the amount of the invoice is the same as the total amount of the linked proposal) +descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Classify linked source purchase order as billed when vendor invoice is validated (and if the amount of the invoice is the same as the total amount of the linked order) +AutomaticCreation=Automatic creation +AutomaticClassification=Automatic classification diff --git a/htdocs/langs/am_ET/zapier.lang b/htdocs/langs/am_ET/zapier.lang new file mode 100644 index 00000000000..6d6eda71313 --- /dev/null +++ b/htdocs/langs/am_ET/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr module + +# +# Admin page +# +ZapierForDolibarrSetup = Setup of Zapier for Dolibarr diff --git a/htdocs/langs/ar_EG/agenda.lang b/htdocs/langs/ar_EG/agenda.lang new file mode 100644 index 00000000000..e823329209f --- /dev/null +++ b/htdocs/langs/ar_EG/agenda.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - agenda +AddEvent=عمل حدث diff --git a/htdocs/langs/ar_EG/banks.lang b/htdocs/langs/ar_EG/banks.lang new file mode 100644 index 00000000000..fcb987c99bf --- /dev/null +++ b/htdocs/langs/ar_EG/banks.lang @@ -0,0 +1,4 @@ +# Dolibarr language file - Source file is en_US - banks +StatusAccountOpened=افتح +StatusAccountClosed=مقفول +SupplierInvoicePayment=دفعة مورد diff --git a/htdocs/langs/ar_EG/bills.lang b/htdocs/langs/ar_EG/bills.lang new file mode 100644 index 00000000000..b1dce597b45 --- /dev/null +++ b/htdocs/langs/ar_EG/bills.lang @@ -0,0 +1,28 @@ +# Dolibarr language file - Source file is en_US - bills +BillsCustomers=فواتير العميل +BillsSuppliers=فواتير المورد +BillsCustomersUnpaid=فواتير العميل غير المدفوعة +BillsSuppliersUnpaid=فواتير المورد غير المدفوعة +BillsSuppliersUnpaidForCompany=فواتير الموردين غير المدفوعة لـ %s +BillsStatistics=احصائيات فواتير العملاء +BillsStatisticsSuppliers=احصائيات فواتير الموردين +InvoiceDeposit=فاتورة دفعة أولى +InvoiceDepositAsk=فاتورة دفعة أولى +InvoiceReplacement=فاتورة استبدال +ReplacementInvoice=فاتورة استبدال +SupplierInvoice=فاتورة مورد +SuppliersInvoices=فواتير الموردين +SupplierBill=فاتورة مورد +CancelBill=إلغ فاتورة +SendRemindByMail=إرسل تذكير عن طريق البريد الإلكتروني +BillStatusDraft=مسودة(مطلوب الاعتماد) +BillShortStatusValidated=معتمد +BillShortStatusClosedUnpaid=مقفول +SendReminderBillByMail=إرسل تذكير عن طريق البريد الإلكتروني +SupplierBillsToPay=فواتير المورد غير المدفوعة +CustomerBillsUnpaid=فواتير العميل غير المدفوعة +Billed=مفوتر +PaymentConditionShortPT_ORDER=طلب +TypeContact_facture_external_BILLING=جهة اتصال فاتورة العميل +AutoFillDateFromShort=حدد تاريخ البدء +AutoFillDateToShort=حدد تاريخ الانتهاء diff --git a/htdocs/langs/ar_EG/boxes.lang b/htdocs/langs/ar_EG/boxes.lang new file mode 100644 index 00000000000..1c4466c2f30 --- /dev/null +++ b/htdocs/langs/ar_EG/boxes.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - boxes +BoxTitleLastModifiedPropals=أحدث العروض المعدلة %s +ForCustomersInvoices=فواتير العملاء diff --git a/htdocs/langs/ar_EG/cashdesk.lang b/htdocs/langs/ar_EG/cashdesk.lang new file mode 100644 index 00000000000..b62e4a9b9a2 --- /dev/null +++ b/htdocs/langs/ar_EG/cashdesk.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - cashdesk +History=تاريخ diff --git a/htdocs/langs/ar_EG/categories.lang b/htdocs/langs/ar_EG/categories.lang new file mode 100644 index 00000000000..b210aed0b78 --- /dev/null +++ b/htdocs/langs/ar_EG/categories.lang @@ -0,0 +1,9 @@ +# Dolibarr language file - Source file is en_US - categories +Rubrique=الوسام/التصنيف +Rubriques=الأوسمة/التصنيفات +categories=الأوسمة/التصنيفات +CreateCat=إنشاء وسام/تصنيف +CreateThisCat=إنشاء هذا الوسام/التصنيف +NoSubCat=لايوجد تصنيف فرعي +SubCatOf=تصنيف فرعي +FoundCats=تم العثور علي تصنيفات/أوسمة diff --git a/htdocs/langs/ar_EG/commercial.lang b/htdocs/langs/ar_EG/commercial.lang new file mode 100644 index 00000000000..2d1397eb341 --- /dev/null +++ b/htdocs/langs/ar_EG/commercial.lang @@ -0,0 +1,26 @@ +# Dolibarr language file - Source file is en_US - commercial +Customers=عملاء +Prospects=فرص +DeleteAction=حذف الحدث +AddAction=عمل حدث +AddAnAction=عمل حدث +AddActionRendezVous=تحديد مقابلة +ConfirmDeleteAction=هل انت واثق من حذف هذا الحدث؟ +CardAction=كارتة حدث +TaskRDVWith=مقابلة مع %s +ShowTask=إفتح المهمة +ShowAction=إفتح الحدث +ActionsReport=تقرير الاحداث +ThirdPartiesOfSaleRepresentative=الجهات الخارجية و ممثلي المبيعات +SaleRepresentativesOfThirdParty=ممثلي المبيعات عن الجهة الخارجية +SalesRepresentative=ممثل المبيعات +SalesRepresentatives=ممثلي المبيعات +SalesRepresentativeFollowUp=ممثل المبيعات (متبعة) +SalesRepresentativeSignature=ممثلي المبيعات (الامضاء) +NoSalesRepresentativeAffected=لا يوجد ممثل مبيعات محدد +ShowCustomer=إفتح العميل +ShowProspect=إفتح الفرصة +ListOfProspects=قائمة الفرص +LastDoneTasks=أحدث %s خطوات مكتملة +LastActionsToDo=أقدم %s خطوات غير مكتملة +DraftPropals=مسودة العروض التجارية diff --git a/htdocs/langs/ar_EG/companies.lang b/htdocs/langs/ar_EG/companies.lang new file mode 100644 index 00000000000..a1075a56697 --- /dev/null +++ b/htdocs/langs/ar_EG/companies.lang @@ -0,0 +1,12 @@ +# Dolibarr language file - Source file is en_US - companies +ThirdPartyProspects=فرص +ThirdPartyProspectsStats=فرص +ThirdPartyCustomers=عملاء +ThirdPartyCustomersStats=عملاء +ThirdPartySuppliers=موردين +OverAllOrders=الطلبات +OverAllSupplierProposals=طلبات عروض اسعار +Customer=عميل +Contact=Contact +InActivity=افتح +ActivityCeased=مقفول diff --git a/htdocs/langs/ar_EG/contracts.lang b/htdocs/langs/ar_EG/contracts.lang new file mode 100644 index 00000000000..21e822adde8 --- /dev/null +++ b/htdocs/langs/ar_EG/contracts.lang @@ -0,0 +1,4 @@ +# Dolibarr language file - Source file is en_US - contracts +ContractStatusValidated=معتمد +ContractStatusClosed=مقفول +ServiceStatusClosed=مقفول diff --git a/htdocs/langs/ar_EG/deliveries.lang b/htdocs/langs/ar_EG/deliveries.lang new file mode 100644 index 00000000000..6e2d92bb5e3 --- /dev/null +++ b/htdocs/langs/ar_EG/deliveries.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - deliveries +DeliveryDate=تاريخ التوريد diff --git a/htdocs/langs/ar_EG/dict.lang b/htdocs/langs/ar_EG/dict.lang new file mode 100644 index 00000000000..886e393b183 --- /dev/null +++ b/htdocs/langs/ar_EG/dict.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - dict +DemandReasonTypeSRC_EMPLOYEE=موظف diff --git a/htdocs/langs/ar_EG/donations.lang b/htdocs/langs/ar_EG/donations.lang new file mode 100644 index 00000000000..cc789e78307 --- /dev/null +++ b/htdocs/langs/ar_EG/donations.lang @@ -0,0 +1,9 @@ +# Dolibarr language file - Source file is en_US - donations +Donations=تبرعات +DonationRef=مرجع التبرع +Donor=المتبرع +AddDonation=أنشاء تبرع +NewDonation=تبرع جديد +PublicDonation=تبرع عام +DonationsArea=منطقة التبرعات +DonationStatusPromiseValidatedShort=معتمد diff --git a/htdocs/langs/ar_EG/holiday.lang b/htdocs/langs/ar_EG/holiday.lang new file mode 100644 index 00000000000..8363b4a3fef --- /dev/null +++ b/htdocs/langs/ar_EG/holiday.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - holiday +RefuseCP=مرفوض diff --git a/htdocs/langs/ar_EG/hrm.lang b/htdocs/langs/ar_EG/hrm.lang new file mode 100644 index 00000000000..70e618e7bd4 --- /dev/null +++ b/htdocs/langs/ar_EG/hrm.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - hrm +Employee=موظف diff --git a/htdocs/langs/ar_EG/interventions.lang b/htdocs/langs/ar_EG/interventions.lang new file mode 100644 index 00000000000..bab7f2b4cad --- /dev/null +++ b/htdocs/langs/ar_EG/interventions.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - interventions +StatusInterInvoiced=مفوتر diff --git a/htdocs/langs/ar_EG/mails.lang b/htdocs/langs/ar_EG/mails.lang new file mode 100644 index 00000000000..adbdc0cfe39 --- /dev/null +++ b/htdocs/langs/ar_EG/mails.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - mails +MailingStatusValidated=معتمد diff --git a/htdocs/langs/ar_EG/members.lang b/htdocs/langs/ar_EG/members.lang new file mode 100644 index 00000000000..d03eb406cea --- /dev/null +++ b/htdocs/langs/ar_EG/members.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - members +MemberStatusDraft=مسودة(مطلوب الاعتماد) +MemberStatusActiveShort=معتمد diff --git a/htdocs/langs/ar_EG/multicurrency.lang b/htdocs/langs/ar_EG/multicurrency.lang index 4f05cd491b6..cbd2b9dce59 100644 --- a/htdocs/langs/ar_EG/multicurrency.lang +++ b/htdocs/langs/ar_EG/multicurrency.lang @@ -1,20 +1,9 @@ # Dolibarr language file - Source file is en_US - multicurrency -MultiCurrency=Multi currency -ErrorAddRateFail=Error in added rate -ErrorAddCurrencyFail=Error in added currency -ErrorDeleteCurrencyFail=Error delete fail multicurrency_syncronize_error=Synchronisation error: %s MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Use date of document to find currency rate, instead of using latest known rate multicurrency_useOriginTx=When an object is created from another, keep the original rate of source object (otherwise use the latest known rate) -CurrencyLayerAccount=CurrencyLayer API CurrencyLayerAccount_help_to_synchronize=You sould create an account on their website to use this functionnality
    Get your API key
    If you use a free account you can't change the currency source (USD by default)
    But if your main currency isn't USD you can use the alternate currency source to force you main currency

    You are limited at 1000 synchronizations per month -multicurrency_appId=API key multicurrency_appCurrencySource=Currency source multicurrency_alternateCurrencySource=Alternate currency source -CurrenciesUsed=Currencies used CurrenciesUsed_help_to_add=Add the differents currencies and rates you need to use on you proposals, orders, etc. -rate=rate -MulticurrencyReceived=Received, original currency MulticurrencyRemainderToTake=Remaining amout, original currency -MulticurrencyPaymentAmount=Payment amount, original currency -AmountToOthercurrency=Amount To (in currency of receiving account) diff --git a/htdocs/langs/ar_EG/orders.lang b/htdocs/langs/ar_EG/orders.lang new file mode 100644 index 00000000000..7e6d65dd9bd --- /dev/null +++ b/htdocs/langs/ar_EG/orders.lang @@ -0,0 +1,28 @@ +# Dolibarr language file - Source file is en_US - orders +OrdersArea=منطقة طلبات العملاء +SuppliersOrdersArea=منطقة أوامر الشراء +OrderCard=بطاقة الأمر +OrderId=رقم التعريف الخاص بالأمر +Order=طلب +PdfOrderTitle=طلب +Orders=الطلبات +OrderDateShort=تاريخ الأمر +OrderToProcess=طلب تحت التشغيل +NewOrder=أمر جديد +NewOrderSupplier=أمر شراء جديد +ToOrder=إصدار أمر +MakeOrder=إصدار أمر +SupplierOrder=أمر شراء +SuppliersOrders=أوامر الشراء +SuppliersOrdersRunning=أوامر الشراء الحالية +StatusOrderValidatedShort=معتمد +StatusOrderRefusedShort=مرفوض +StatusOrderDraft=مسودة(مطلوب الاعتماد) +StatusOrderValidated=معتمد +StatusOrderRefused=مرفوض +TypeContact_commande_external_BILLING=جهة اتصال فاتورة العميل +StatusSupplierOrderValidatedShort=معتمد +StatusSupplierOrderRefusedShort=مرفوض +StatusSupplierOrderDraft=مسودة(مطلوب الاعتماد) +StatusSupplierOrderValidated=معتمد +StatusSupplierOrderRefused=مرفوض diff --git a/htdocs/langs/ar_EG/products.lang b/htdocs/langs/ar_EG/products.lang new file mode 100644 index 00000000000..5a177b2f19a --- /dev/null +++ b/htdocs/langs/ar_EG/products.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - products +SuppliersPrices=أسعار المورد diff --git a/htdocs/langs/ar_EG/projects.lang b/htdocs/langs/ar_EG/projects.lang new file mode 100644 index 00000000000..9ec23f6aa90 --- /dev/null +++ b/htdocs/langs/ar_EG/projects.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - projects +CantRemoveProject=This project can't be removed as it is referenced by some other objects (invoice, orders or other). See referers tab. +OppStatusPROPO=عرض diff --git a/htdocs/langs/ar_EG/propal.lang b/htdocs/langs/ar_EG/propal.lang new file mode 100644 index 00000000000..4037a3b428b --- /dev/null +++ b/htdocs/langs/ar_EG/propal.lang @@ -0,0 +1,67 @@ +# Dolibarr language file - Source file is en_US - propal +Proposals=عروض تجارية +Proposal=عرض تجاري +ProposalShort=عرض +ProposalsDraft=مسودة العروض التجارية +ProposalsOpened=العروض التجارية المفتوحة +CommercialProposal=عرض تجاري +PdfCommercialProposalTitle=عرض تجاري +ProposalCard=بطاقة العرض +NewProp=عرض تجاري جديد +NewPropal=عرض جديد +Prospect=فرصة +DeleteProp=حذف العرض التجاري +ValidateProp=اعتماد العرض التجاري +AddProp=إنشاء عرض +ConfirmDeleteProp=هل أنت متأكد أنك تريد حذف هذا العرض التجاري؟ +ConfirmValidateProp=هل أنت متأكد أنك تريد اعتماد هذا العرض التجاري تحت الاسم %s ؟ +LastPropals=أحدث عروض %s +LastModifiedProposals=أحدث العروض المعدلة %s +AllPropals=جميع العروض +SearchAProposal=ابحث عن عرض +NoProposal=لا يوجد عرض +ProposalsStatistics=إحصائيات العروض التجارية +NumberOfProposalsByMonth=الرقم بالشهر +AmountOfProposalsByMonthHT=المبلغ حسب الشهر (بدون الضريبة) +NbOfProposals=عدد العروض التجارية +ShowPropal=إظهار العرض +PropalsOpened=افتح +PropalStatusDraft=مسودة(مطلوب الاعتماد) +PropalStatusValidated=تم الاعتماد (العرض مفتوح) +PropalStatusSigned=موقّع (يحتاج إلى فواتير) +PropalStatusNotSigned=غير موقّع (مغلق) +PropalStatusBilled=مفوتر +PropalStatusValidatedShort=معتمد (مفتوح) +PropalStatusClosedShort=مقفول +PropalStatusSignedShort=موقع +PropalStatusNotSignedShort=لم توقع +PropalStatusBilledShort=مفوتر +PropalsToClose=عروض التجارية للغلق +PropalsToBill=عروض تجارية موقعة للفوترة +ListOfProposals=قائمة العروض التجارية +ActionsOnPropal=الأحداث على العرض +RefProposal=مرجع العرض تجاري +SendPropalByMail=إرسال عرض تجاري عن طريق البريد +DatePropal=تاريخ العرض +ValidityDuration=مدة الصلاحية +CloseAs=اضبط الحالة على +SetAcceptedRefused=مقبول / مرفوض +ErrorPropalNotFound=العرض %s غير موجود +AddToDraftProposals=أضف إلى مسودة العرض +NoDraftProposals=لا توجد مسودات عروض +CopyPropalFrom=إنشاء عرض تجاري عن طريق نسخ العرض الحالي +CreateEmptyPropal=إنشاء عرض تجاري فارغ أو من قائمة المنتجات / الخدمات +DefaultProposalDurationValidity=مدة صلاحية العرض التجاري الافتراضي (بالأيام) +ConfirmClonePropal=هل أنت متأكد أنك تريد استنساخ العرض التجاري %s ؟ +ConfirmReOpenProp=هل أنت متأكد أنك تريد إعادة فتح العرض التجاري %s ؟ +AfterOrder=بعد الطلب +OtherProposals=عروض أخرى +AvailabilityTypeAV_1W=أسبوع 1 +AvailabilityTypeAV_1M=شهر 1 +TypeContact_propal_internal_SALESREPFOLL=الممثل المتابع للعرض +TypeContact_propal_external_BILLING=جهة اتصال فاتورة العميل +DocModelCyanDescription=نموذج عرض كامل +DefaultModelPropalCreate=إنشاء النموذج الافتراضي +DefaultModelPropalToBill=النموذج الافتراضي عند إغلاق عرض الأعمال (سيتم إصدار فاتورة به) +ProposalCustomerSignature=قبول خطي وختم الشركة والتاريخ والتوقيع +ProposalsStatisticsSuppliers=إحصاءات مقترحات البائعين diff --git a/htdocs/langs/ar_EG/receptions.lang b/htdocs/langs/ar_EG/receptions.lang new file mode 100644 index 00000000000..a12780e0f69 --- /dev/null +++ b/htdocs/langs/ar_EG/receptions.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - receptions +StatusReceptionValidatedShort=معتمد diff --git a/htdocs/langs/ar_EG/sendings.lang b/htdocs/langs/ar_EG/sendings.lang new file mode 100644 index 00000000000..7b3a489dd7d --- /dev/null +++ b/htdocs/langs/ar_EG/sendings.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - sendings +StatusSendingValidatedShort=معتمد diff --git a/htdocs/langs/ar_EG/sms.lang b/htdocs/langs/ar_EG/sms.lang new file mode 100644 index 00000000000..c6e922fd18c --- /dev/null +++ b/htdocs/langs/ar_EG/sms.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - sms +SmsStatusValidated=معتمد diff --git a/htdocs/langs/ar_EG/stocks.lang b/htdocs/langs/ar_EG/stocks.lang new file mode 100644 index 00000000000..2ea2a409fd1 --- /dev/null +++ b/htdocs/langs/ar_EG/stocks.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - stocks +inventoryValidate=معتمد diff --git a/htdocs/langs/ar_EG/supplier_proposal.lang b/htdocs/langs/ar_EG/supplier_proposal.lang new file mode 100644 index 00000000000..98769314093 --- /dev/null +++ b/htdocs/langs/ar_EG/supplier_proposal.lang @@ -0,0 +1,47 @@ +# Dolibarr language file - Source file is en_US - supplier_proposal +SupplierProposal=عروض المورد التجارية +supplier_proposalDESC=إدارة طلبات عروض الأسعار من موردين +SupplierProposalNew=طلب عرض سعر جديد +CommRequest=طلب عرض السعر +CommRequests=طلبات عروض اسعار +SearchRequest=البحث عن عرض سعر +DraftRequests=مسودة طلب عرض سعر +SupplierProposalsDraft=مسودة عروض موردين +LastModifiedRequests=أحدث طلبات السعر المعدلة %s +RequestsOpened=طلبات عروض اسعار مفتوحة +SupplierProposalArea=منطقة عروض الموردين +SupplierProposalShort=عرض المورد +SupplierProposals=عروض الموردين +SupplierProposalsShort=عروض الموردين +NewAskPrice=طلب عرض سعر جديد +ShowSupplierProposal=فتح عرض السعر +AddSupplierProposal=عمل طلب عرض سعر +SupplierProposalRefFourn=مرجع المورد +SupplierProposalDate=تاريخ التوريد +SupplierProposalRefFournNotice=قبل الإغلاق إلى "مقبول" ، فكر في فهم مراجع الموردين. +ConfirmValidateAsk=هل أنت متأكد أنك تريد اعتماد طلب السعر هذا تحت الاسم %s ؟ +ValidateAsk=اعتماد الطلب +SupplierProposalStatusDraft=مسودة(مطلوب الاعتماد) +SupplierProposalStatusValidated=معتمد(الطلب مفتوح) +SupplierProposalStatusClosed=مقفول +SupplierProposalStatusSigned=مقبول +SupplierProposalStatusNotSigned=مرفوض +SupplierProposalStatusValidatedShort=معتمد +SupplierProposalStatusClosedShort=مقفول +SupplierProposalStatusSignedShort=مقبول +SupplierProposalStatusNotSignedShort=مرفوض +CopyAskFrom=قم بإنشاء طلب سعر عن طريق نسخ طلب موجود +CreateEmptyAsk=إنشاء طلب فارغ +ConfirmCloneAsk=هل أنت متأكد أنك تريد استنساخ طلب السعر %s ؟ +ConfirmReOpenAsk=هل أنت متأكد أنك تريد فتح طلب السعر مرة أخرى %s ؟ +SendAskRef=إرسال طلب السعر %s +SupplierProposalCard=بطاقة الطلب +ConfirmDeleteAsk=هل أنت متأكد أنك تريد حذف طلب السعر هذا %s ؟ +DefaultModelSupplierProposalCreate=إنشاء النموذج الافتراضي +DefaultModelSupplierProposalClosed=القالب الافتراضي عند إغلاق طلب السعر (مرفوض) +ListOfSupplierProposals=قائمة طلبات عروض البائعين +ListSupplierProposalsAssociatedProject=قائمة عروض الموردين المرتبطة بالمشروع +SupplierProposalsToClose=عروض موردين لإغلاق +SupplierProposalsToProcess=عروض موردين لمعالجة +LastSupplierProposals=أحدث طلبات أسعار %s +AllPriceRequests=جميع الطلبات diff --git a/htdocs/langs/ar_EG/suppliers.lang b/htdocs/langs/ar_EG/suppliers.lang new file mode 100644 index 00000000000..7a683513e08 --- /dev/null +++ b/htdocs/langs/ar_EG/suppliers.lang @@ -0,0 +1,46 @@ +# Dolibarr language file - Source file is en_US - suppliers +Suppliers=موردين +SuppliersInvoice=فاتورة مورد +ShowSupplierInvoice=إظهار فاتورة المورد +NewSupplier=مورد جديد +ListOfSuppliers=قائمة موردين +ShowSupplier=فتح صفحة المورد +OrderDate=تاريخ الأمر +BuyingPriceMin=أفضل سعر شراء +BuyingPriceMinShort=أفضل سعر شراء +TotalBuyingPriceMinShort=إجمالي أسعار الشراء +TotalSellingPriceMinShort=إجمالي أسعار البيع +SomeSubProductHaveNoPrices=بعض المنتجات غير مسعره +AddSupplierPrice=إضافة سعر الشراء +ChangeSupplierPrice=تغيير سعر الشراء +SupplierPrices=أسعار المورد +ReferenceSupplierIsAlreadyAssociatedWithAProduct=مرجع المورد هذا مرتبط بالفعل بمنتج: %s +NoRecordedSuppliers=لم يتم تسجيل مورد +SupplierPayment=دفعة مورد +SuppliersArea=منطقة المورد +RefSupplierShort=المرجع. مورد +Availability=التوفر +ExportDataset_fournisseur_1=فواتير المورد و تفاصيلها +ExportDataset_fournisseur_2=فواتير و دفعات المورد +ExportDataset_fournisseur_3=تفاصيل أوامر الشراء +ApproveThisOrder=إعتماد الأمر +ConfirmApproveThisOrder=هل أنت متأكد أنك تريد الموافقة على الطلب %s ؟ +DenyingThisOrder=رفض هذا الأمر +ConfirmDenyingThisOrder=هل أنت متأكد أنك تريد رفض هذا الطلب %s ؟ +ConfirmCancelThisOrder=هل أنت متأكد أنك تريد إلغاء هذا الطلب %s ؟ +AddSupplierOrder=إنشاء أمر شراء +AddSupplierInvoice=إنشاء فاتورة المورد +ListOfSupplierProductForSupplier=قائمة المنتجات والأسعار الخاصة بالمورد %s +SentToSuppliers=مرسلة إلى المورديين +ListOfSupplierOrders=قائمة أوامر الشراء +MenuOrdersSupplierToBill=أوامر الشراء للفاتورة +NbDaysToDelivery=تأخير التسليم (أيام) +DescNbDaysToDelivery=أطول تأخير لتسليم المنتجات من هذا الطلب +SupplierReputation=سمعة المورد +DoNotOrderThisProductToThisSupplier=لا تتعامل +NotTheGoodQualitySupplier=جودة منخفضة +ReputationForThisProduct=سمعة +BuyerName=اسم المشتري +AllProductServicePrices=أسعار جميع المنتجات / الخدمات +AllProductReferencesOfSupplier=جميع مراجع المنتج / الخدمة للمورد +BuyingPriceNumShort=أسعار المورد diff --git a/htdocs/langs/ar_EG/ticket.lang b/htdocs/langs/ar_EG/ticket.lang new file mode 100644 index 00000000000..4185fd359c1 --- /dev/null +++ b/htdocs/langs/ar_EG/ticket.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - ticket +Closed=مقفول diff --git a/htdocs/langs/ar_EG/website.lang b/htdocs/langs/ar_EG/website.lang new file mode 100644 index 00000000000..4f2ff392475 --- /dev/null +++ b/htdocs/langs/ar_EG/website.lang @@ -0,0 +1,11 @@ +# Dolibarr language file - Source file is en_US - website +WebsiteSetupDesc=أنشئ هنا مواقع الويب التي ترغب في استخدامها. ثم انتقل إلى قائمة مواقع الويب القائمة لعمل التعديلات. +DeleteWebsite=حذف موقع الويب +ConfirmDeleteWebsite=هل أنت متأكد أنك تريد حذف هذا الموقع؟ سيتم أيضًا إزالة جميع صفحاته ومحتواه. ستبقى الملفات التي تم تحميلها (مثل في دليل الصور ، وحدة ECM ، ...). +WEBSITE_TYPE_CONTAINER=نوع الصفحة / الحاوية +WEBSITE_PAGE_EXAMPLE=صفحة ويب لاستخدامها كمثال +WEBSITE_PAGENAME=اسم الصفحة / الاسم المستعار +WEBSITE_ALIASALT=أسماء الصفحات / الأسماء المستعارة البديلة +WEBSITE_ALIASALTDesc=استخدم هنا قائمة بأسماء / أسماء مستعارة أخرى بحيث يمكن الوصول إلى الصفحة أيضًا باستخدام هذه الأسماء / الأسماء المستعارة الأخرى (على سبيل المثال ، الاسم القديم بعد إعادة تسمية الاسم المستعار للحفاظ على الرابط الخلفي في عمل الرابط / الاسم القديم). النحو هو:
    Alternativename1 ، و Alternativename2 ، ... +WEBSITE_CSS_URL=عنوان URL لملف CSS الخارجي +WEBSITE_CSS_INLINE=محتوى ملف CSS (مشترك لجميع الصفحات) diff --git a/htdocs/langs/ar_EG/withdrawals.lang b/htdocs/langs/ar_EG/withdrawals.lang new file mode 100644 index 00000000000..a45b9beb6d8 --- /dev/null +++ b/htdocs/langs/ar_EG/withdrawals.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - withdrawals +StatusRefused=مرفوض diff --git a/htdocs/langs/ar_EG/workflow.lang b/htdocs/langs/ar_EG/workflow.lang new file mode 100644 index 00000000000..45447603a22 --- /dev/null +++ b/htdocs/langs/ar_EG/workflow.lang @@ -0,0 +1,17 @@ +# Dolibarr language file - Source file is en_US - workflow +WorkflowSetup=إعداد وحدة سير العمل +WorkflowDesc=توفر هذه الوحدة بعض الإجراءات التلقائية. بشكل افتراضي ، سير العمل مفتوح (يمكنك القيام بالأشياء بالترتيب الذي تريده) ولكن هنا يمكنك تنشيط بعض الإجراءات التلقائية. +ThereIsNoWorkflowToModify=لا توجد تعديلات على سير العمل متاحة مع الوحدات المفعلة. +descWORKFLOW_PROPAL_AUTOCREATE_ORDER=إنشاء أمر مبيعات تلقائيًا بعد توقيع عرض تجاري (سيكون للطلب الجديد نفس مبلغ العرض) +descWORKFLOW_PROPAL_AUTOCREATE_INVOICE=إنشاء فاتورة عملاء تلقائيًا بعد توقيع عرض تجاري (سيكون للفاتورة الجديدة نفس مبلغ الاقتراح) +descWORKFLOW_CONTRACT_AUTOCREATE_INVOICE=إنشاء فاتورة العميل تلقائيًا بعد التحقق من إعتماد العقد +descWORKFLOW_ORDER_AUTOCREATE_INVOICE=إنشاء فاتورة عملاء تلقائيًا بعد إغلاق أمر المبيعات (سيكون للفاتورة الجديدة نفس مبلغ الأمر) +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_BILLED_SUPPLIER_PROPOSAL=تصنيف عرض المورد الاصلى على أنه فاتورة عند التحقق من صحة فاتورة البائع (وإذا كان مبلغ الفاتورة هو نفس المبلغ الإجمالي للعرض المرتبط) +descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=تصنيف أمر الشراء الاصلى على أنه فاتورة عند التحقق من صحة فاتورة البائع (وإذا كان مبلغ الفاتورة هو نفس المبلغ الإجمالي للطلب المرتبط) +AutomaticCreation=الإنشاء الأوتوماتيكي +AutomaticClassification=التصنيف الأوتوماتيكي diff --git a/htdocs/langs/ar_EG/zapier.lang b/htdocs/langs/ar_EG/zapier.lang new file mode 100644 index 00000000000..dd7094bdc04 --- /dev/null +++ b/htdocs/langs/ar_EG/zapier.lang @@ -0,0 +1,4 @@ +# Dolibarr language file - Source file is en_US - zapier +ModuleZapierForDolibarrName =Zapier +ModuleZapierForDolibarrDesc =وحدة Zapier +ZapierForDolibarrSetup =إعداد Zapier diff --git a/htdocs/langs/ar_SA/accountancy.lang b/htdocs/langs/ar_SA/accountancy.lang index ab83e39a2d2..cf95ced5354 100644 --- a/htdocs/langs/ar_SA/accountancy.lang +++ b/htdocs/langs/ar_SA/accountancy.lang @@ -121,6 +121,7 @@ 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 +TotalForAccount=Total for accounting account Ventilate=Bind @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Accounting account to register donations ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (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 products sold in EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported 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_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (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_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unkno ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error PaymentsNotLinkedToProduct=Payment not linked to any product / service +OpeningBalance=Opening balance ShowOpeningBalance=Show opening balance HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Group of account PcgtypeDesc=Group 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. +Reconcilable=Reconcilable + TotalVente=المبيعات الإجمالية قبل الضريبة TotalMarge=إجمالي هامش المبيعات @@ -307,11 +317,13 @@ 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export Configurable Modelcsv_FEC=Export FEC Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Chart of accounts Id ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC OptionModeProductSellExport=Mode sales exported in other countries OptionModeProductBuy=Mode purchases +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries 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. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=Remove accounting code from lines that not exists into charts of account CleanHistory=Reset all bindings for selected year PredefinedGroups=Predefined groups @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Account removed from group SaleLocal=Local sale SaleExport=Export sale SaleEEC=Sale in EEC +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=Range of accounting account diff --git a/htdocs/langs/ar_SA/admin.lang b/htdocs/langs/ar_SA/admin.lang index 1627eeacfd9..c6c0bcc954e 100644 --- a/htdocs/langs/ar_SA/admin.lang +++ b/htdocs/langs/ar_SA/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=خادم الويب المستخدم / المجموعة NoSessionFound=Your PHP configuration seems to not allow listing of active sessions. The directory used to save sessions (%s) may be protected (for example by OS permissions or by PHP directive open_basedir). DBStoringCharset=الترميز الخاص بقاعدة البيانات لتخزين المعلومات DBSortingCharset=الترميز الخاص بقاعدة البيانات لتخزين المعلومات +HostCharset=Host charset ClientCharset=Client charset ClientSortingCharset=Client collation WarningModuleNotActive=يجب أن يكون النموذج %s مفعل @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the NoMaxSizeByPHPLimit=ملاحظة : لم يتم وضح حد في إعدادات الـ PHP الخاص بك MaxSizeForUploadedFiles=الحجم الأقصى لتحميل الملفات (0 لمنع أي تحميل) UseCaptchaCode=إستخدم الرسوم كرمز (كابتشا) في صفحة الدخول -AntiVirusCommand= المسار الكامل لبرنامج مكافحة الفيروسات -AntiVirusCommandExample= مثل ل ClamWin: c:\\Progra~1\\ClamWin\\bin\\clamscan.exe +AntiVirusCommand=المسار الكامل لبرنامج مكافحة الفيروسات +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= المزيد من الصلاحيات بإستخدام command line -AntiVirusParamExample= مثال على ClamWin:--database="C:\\Program Files (x86)\\ClamWin\\lib" +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=نموذج وحدة المحاسبة UserSetup=إعداد مستخدم الإدارة MultiCurrencySetup=Multi-currency setup @@ -199,7 +200,7 @@ FeatureDisabledInDemo=الميزة معلطة في العرض التجريبي FeatureAvailableOnlyOnStable=Feature only available on official stable versions BoxesDesc=Widgets are components showing some information that you can add to personalize some pages. You can choose between showing the widget or not by selecting target page and clicking 'Activate', or by clicking the trashcan to disable it. OnlyActiveElementsAreShown=فقط العناصر من النماذج المفعلة سوف تظهر. -ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button (at end of module line) to enable/disable a module/application. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. ModulesMarketPlaceDesc=You can find more modules to download on external websites on the Internet... ModulesDeployDesc=If permissions on your file system allow it, you can use this tool to deploy an external module. The module will then be visible on the tab %s. ModulesMarketPlaces=Find external app/modules @@ -212,6 +213,7 @@ CompatibleUpTo=Compatible with version %s NotCompatible=This module does not seem compatible with your Dolibarr %s (Min %s - Max %s). CompatibleAfterUpdate=This module requires an update to your Dolibarr %s (Min %s - Max %s). SeeInMarkerPlace=See in Market place +SeeSetupOfModule=انظر إعداد وحدة٪ الصورة Updated=Updated Nouveauté=Novelty AchatTelechargement=Buy / Download @@ -221,6 +223,7 @@ DoliPartnersDesc=List of companies providing custom-developed modules or feature WebSiteDesc=External websites for more add-on (non-core) modules... DevelopYourModuleDesc=Some solutions to develop your own module... URL=العنوان +RelativeURL=Relative URL BoxesAvailable=Widgets available BoxesActivated=Widgets activated ActivateOn=على تفعيل @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Checkboxes ExtrafieldCheckBoxFromList=Checkboxes from table ExtrafieldLink=رابط إلى كائن ComputedFormula=Computed field -ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Store computed field ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! ExtrafieldParamHelpPassword=Leaving this field blank means this value will be stored without encryption (field must be only hidden with star on screen).
    Set 'auto' to use the default encryption rule to save password into database (then value read will be the hash only, no way to retrieve original value) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Keep empty to use default value DefaultLink=Default link SetAsDefault=Set as default ValueOverwrittenByUserSetup=Warning, this value may be overwritten by user specific setup (each user can set his own clicktodial url) -ExternalModule=الوحدة الخارجية - المثبتة في الدليل %s +ExternalModule=External module +InstalledInto=Installed into directory %s BarcodeInitForthird-parties=Mass barcode init for third-parties BarcodeInitForProductsOrServices=الحرف الأول الباركود الشامل أو إعادة للمنتجات أو الخدمات CurrentlyNWithoutBarCode=Currently, you have %s record on %s %s without barcode defined. @@ -947,7 +951,7 @@ DictionaryCanton=States/Provinces DictionaryRegion=المناطق DictionaryCountry=الدول DictionaryCurrency=العملات -DictionaryCivility=Title of civility +DictionaryCivility=Honorific titles DictionaryActions=Types of agenda events DictionarySocialContributions=Types of social or fiscal taxes DictionaryVAT=أسعار الضريبة على القيمة المضافة أو ضريبة المبيعات الاسعار @@ -988,6 +992,7 @@ VATIsNotUsedDesc=By default the proposed Sales tax is 0 which can be used for ca VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=معدل LocalTax1IsNotUsed=لا تستخدم الضريبة الثانية LocalTax1IsUsedDesc=Use a second type of tax (other than first one) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices LocalTax2IsNotUsedDescES=افتراضيا IRPF المقترحة هي 0. نهاية الحكم. LocalTax2IsUsedExampleES=في اسبانيا ، لحسابهم الخاص والمهنيين المستقلين الذين يقدمون الخدمات والشركات الذين اختاروا النظام الضريبي من وحدات. LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=تقارير عن الضرائب المحلية CalcLocaltax1=مبيعات - مشتريات CalcLocaltax1Desc=وتحسب تقارير الضرائب المحلية مع الفرق بين localtaxes المبيعات والمشتريات localtaxes @@ -1018,6 +1026,7 @@ CalcLocaltax2=مشتريات CalcLocaltax2Desc=تقارير الضرائب المحلية هي مجموعه localtaxes المشتريات CalcLocaltax3=مبيعات CalcLocaltax3Desc=تقارير الضرائب المحلية هي مجموعه localtaxes المبيعات +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=العلامة التي يستخدمها التقصير إذا لم يمكن العثور على ترجمة للقانون LabelOnDocuments=علامة على وثائق LabelOrTranslationKey=Label or translation key @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Expense report to approve Delays_MAIN_DELAY_HOLIDAYS=Leave requests 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. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. SetupDescription5=Other Setup menu entries manage optional parameters. LogEvents=مراجعة الحسابات الأحداث الأمنية Audit=المراجعة @@ -1128,7 +1137,7 @@ LogEventDesc=Enable logging for specific security events. Administrators the log AreaForAdminOnly=Setup parameters can be set by administrator users only. SystemInfoDesc=نظام المعلومات المتنوعة المعلومات التقنية تحصل في قراءة فقط وواضحة للمشرفين فقط. SystemAreaForAdminOnly=This area is available to administrator users only. Dolibarr user permissions cannot change this restriction. -CompanyFundationDesc=Edit the information of the company/entity. Click on "%s" button at the bottom of the page. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. AccountantFileNumber=Accountant code DisplayDesc=Parameters affecting the look and behaviour of Dolibarr can be modified here. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Rules to generate and validate passwords DisableForgetPasswordLinkOnLogonPage=Do not show the "Password Forgotten" link on the Login page UsersSetup=شاهد الإعداد وحدة UserMailRequired=Email required to create a new user +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### HRMSetup=HRM وحدة الإعداد ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=فاتورة نماذج الوثائق BillsPDFModulesAccordindToInvoiceType=Invoice documents models according to invoice type PaymentsPDFModules=Payment documents models ForceInvoiceDate=قوة تاريخ الفاتورة تاريخ المصادقة على -SuggestedPaymentModesIfNotDefinedInInvoice=واقترح على طريقة دفع الفواتير تلقائيا اذا لم تعرف للفاتورة +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice SuggestPaymentByRIBOnAccount=Suggest payment by withdrawal on account SuggestPaymentByChequeToAddress=Suggest payment by check to FreeLegalTextOnInvoices=نص حر على الفواتير @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Vendor payments setup PropalSetup=وحدة إعداد مقترحات تجارية ProposalsNumberingModules=اقتراح نماذج تجارية الترقيم ProposalsPDFModules=اقتراح نماذج الوثائق التجارية -SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined for proposal +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal FreeLegalTextOnProposal=نص تجارية حرة على مقترحات WatermarkOnDraftProposal=العلامة المائية على مشاريع المقترحات التجارية (أي إذا فارغ) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=اسأل عن وجهة الحساب المصرفي للاقتراح @@ -1322,6 +1334,7 @@ WAREHOUSE_ASK_WAREHOUSE_DURING_ORDER=طلب مستودع المصدر لأمر ##### Suppliers Orders ##### BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_ORDER=Ask for bank account destination of purchase order ##### Orders ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=Sales Orders management setup OrdersNumberingModules=أوامر الترقيم نمائط OrdersModelModule=وثائق من أجل النماذج @@ -1720,7 +1733,7 @@ MultiCompanySetup=نموذج متعدد شركة الإعداد ##### Suppliers ##### SuppliersSetup=Vendor module setup SuppliersCommandModel=Complete template of Purchase Order -SuppliersCommandModelMuscadet=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) SuppliersInvoiceModel=Complete template of Vendor Invoice SuppliersInvoiceNumberingModel=Vendor invoices numbering models IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Hide images in Top menu LeftMenuBackgroundColor=لون الخلفية القائمة اليمنى BackgroundTableTitleColor=لون الخلفية لخط عنوان الجدول BackgroundTableTitleTextColor=Text color for Table title line +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=لون الخلفية لخطوط الجدول غريبة BackgroundTableLineEvenColor=لون الخلفية حتى خطوط الجدول MinimumNoticePeriod=الحد الأدنى لمدة إشعار (يجب أن يتم طلب إجازة قبل هذا التأخير) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Dolibarr Reference not found in Message ID FormatZip=الرمز البريدي MainMenuCode=Menu entry code (mainmenu) ECMAutoTree=Show automatic ECM tree -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. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Opening hours OpeningHoursDesc=Enter here the regular opening hours of your company. ResourceSetup=Configuration of Resource module @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramatical ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export +ImportSetup=Setup of module Import InstanceUniqueID=Unique ID of the instance SmallerThan=Smaller than LargerThan=Larger than @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled EmailTemplate=Template for email EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/ar_SA/bills.lang b/htdocs/langs/ar_SA/bills.lang index 5060a169ae7..8967fedb3ab 100644 --- a/htdocs/langs/ar_SA/bills.lang +++ b/htdocs/langs/ar_SA/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Vendors invoices SupplierBill=Vendor invoice SupplierBills=فواتير الموردين Payment=دفعة -PaymentBack=الدفع مرة أخرى -CustomerInvoicePaymentBack=دفع العودة +PaymentBack=رد +CustomerInvoicePaymentBack=رد Payments=المدفوعات PaymentsBack=Refunds paymentInInvoiceCurrency=in invoices currency PaidBack=تسديدها DeletePayment=حذف الدفعة ConfirmDeletePayment=هل انت متأكد انك ترغب في حذف هذه الدفعة؟ -ConfirmConvertToReduc=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. -ConfirmConvertToReducSupplier=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. SupplierPayments=Vendor payments ReceivedPayments=المدفوعات المستلمة @@ -209,17 +209,13 @@ NumberOfBillsByMonth=No. of invoices per month AmountOfBills=مبلغ الفواتير AmountOfBillsHT=Amount of invoices (net of tax) AmountOfBillsByMonthHT=كمية من الفواتير من قبل شهر (بعد خصم الضرائب) -ShowSocialContribution=تظهر الضريبة الاجتماعية / المالية -ShowBill=وتظهر الفاتورة -ShowInvoice=وتظهر الفاتورة -ShowInvoiceReplace=وتظهر استبدال الفاتورة -ShowInvoiceAvoir=وتظهر المذكرة الائتمان -ShowInvoiceDeposit=Show down payment invoice -ShowInvoiceSituation=Show situation invoice UseSituationInvoices=Allow situation invoice UseSituationInvoicesCreditNote=Allow situation invoice credit note Retainedwarranty=Retained warranty +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=To pay on %s toPayOn=to pay on %s RetainedWarranty=Retained Warranty @@ -230,7 +226,6 @@ 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=Already paid (without credit notes and down payments) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Generated from template invoice %s WarningInvoiceDateInFuture=Warning, the invoice date is higher than current date WarningInvoiceDateTooFarInFuture=Warning, the invoice date is too far from current date ViewAvailableGlobalDiscounts=View available discounts +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=الحالة PaymentConditionShortRECEP=Due Upon Receipt @@ -509,7 +505,7 @@ ToMakePayment=دفع ToMakePaymentBack=تسديد ListOfYourUnpaidInvoices=قائمة الفواتير غير المسددة NoteListOfYourUnpaidInvoices=ملاحظة: تحتوي هذه القائمة على الفواتير الوحيدة لأطراف ثالثة ترتبط لك كممثل بيع. -RevenueStamp=طوابع الواردات +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party YouMustCreateStandardInvoiceFirstDesc=You have to create a standard invoice first and convert it to "template" to create a new template invoice @@ -575,3 +571,4 @@ AutoFillDateTo=Set end date for service line with next invoice date AutoFillDateToShort=Set end date MaxNumberOfGenerationReached=Max number of gen. reached BILL_DELETEInDolibarr=تم حذف الفاتورة +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/ar_SA/blockedlog.lang b/htdocs/langs/ar_SA/blockedlog.lang index 89228fd0f71..5f6dd79f6f5 100644 --- a/htdocs/langs/ar_SA/blockedlog.lang +++ b/htdocs/langs/ar_SA/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Unalterable logs ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) DownloadBlockChain=Download fingerprints -KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this re after it was recorded, or has erased the previous archived record (check that line with previous # exists). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. AddedByAuthority=Stored into remote authority diff --git a/htdocs/langs/ar_SA/cashdesk.lang b/htdocs/langs/ar_SA/cashdesk.lang index dd6f62c3c21..d8014d393ab 100644 --- a/htdocs/langs/ar_SA/cashdesk.lang +++ b/htdocs/langs/ar_SA/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=إضافة هذا العنصر RestartSelling=التراجع عن بيع SellFinished=اكتمل البيع PrintTicket=طباعة التذكرة +SendTicket=Send ticket NoProductFound=لم يتم العثور على عناصر ProductFound=تم العثور على المنتج NoArticle=لا يوجد عناصر @@ -48,6 +49,7 @@ Footer=Footer AmountAtEndOfPeriod=Amount at end of period (day, month or year) TheoricalAmount=Theorical amount RealAmount=Real amount +CashFence=Cash fence CashFenceDone=Cash fence done for the period NbOfInvoices=ملاحظة : من الفواتير Paymentnumpad=Type of Pad to enter payment @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS needs product categories to work OrderNotes=Order Notes CashDeskBankAccountFor=Default account to use for payments in NoPaimementModesDefined=No paiment mode defined in TakePOS configuration -TicketVatGrouped=Group VAT by rate in tickets -AutoPrintTickets=Automatically print tickets +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? @@ -87,7 +90,19 @@ HeadBar=Head Bar SortProductField=Field for sorting products Browser=المتصفح BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/ar_SA/companies.lang b/htdocs/langs/ar_SA/companies.lang index 53e87a2729f..ad09ad636f5 100644 --- a/htdocs/langs/ar_SA/companies.lang +++ b/htdocs/langs/ar_SA/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted=شركة "٪ ل" حذفها من قاعدة البيانات. ListOfContacts=قائمة الاتصالات ListOfContactsAddresses=قائمة الاتصالات ListOfThirdParties=List of Third Parties -ShowCompany=Show Third Party ShowContact=وتظهر الاتصال ContactsAllShort=جميع (بدون فلتر) ContactType=نوع الاتصال @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=First name of sales representative SaleRepresentativeLastname=Last name of sales representative ErrorThirdpartiesMerge=There was an error when deleting the third parties. Please check the log. Changes have been reverted. NewCustomerSupplierCodeProposed=Customer or Vendor code already used, a new code is suggested +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Payment Type - Customer PaymentTermsCustomer=Payment Terms - Customer diff --git a/htdocs/langs/ar_SA/compta.lang b/htdocs/langs/ar_SA/compta.lang index 49d7e5054c9..7eb313a3d83 100644 --- a/htdocs/langs/ar_SA/compta.lang +++ b/htdocs/langs/ar_SA/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=See %sanalysis of payments%s for a calculation on act SeeReportInDueDebtMode=See %sanalysis of invoices%s for a calculation based on known recorded invoices even if they are not yet accounted in Ledger. SeeReportInBookkeepingMode=See %sBookeeping report%s for a calculation on Bookkeeping Ledger table RulesAmountWithTaxIncluded=- المبالغ المبينة لمع جميع الضرائب المدرجة -RulesResultDue=- وتتضمن الفواتير غير المسددة، والنفقات، ضريبة القيمة المضافة، والتبرعات سواء كانت بأجر أو لا. هو أيضا يتضمن الرواتب المدفوعة.
    - وهو يستند إلى تاريخ المصادقة على الفواتير وضريبة القيمة المضافة وعلى الموعد المحدد للنفقات. لرواتب محددة مع وحدة الراتب، يتم استخدام قيمة تاريخ الدفع. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- ويشمل المدفوعات الحقيقية المحرز في الفواتير والمصاريف والضريبة على القيمة المضافة والرواتب.
    - لأنه يقوم على مواعيد دفع الفواتير والمصاريف والضريبة على القيمة المضافة والرواتب. تاريخ التبرع للتبرع. -RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the validation date of these invoices.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    RulesCATotalSaleJournal=It includes all credit lines from the Sale journal. RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Turnover invoiced by sale tax rate TurnoverCollectedbyVatrate=Turnover collected by sale tax rate PurchasebyVatrate=Purchase by sale tax rate LabelToShow=التسمية قصيرة +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/ar_SA/donations.lang b/htdocs/langs/ar_SA/donations.lang index 492a364cd4e..1cba54ca878 100644 --- a/htdocs/langs/ar_SA/donations.lang +++ b/htdocs/langs/ar_SA/donations.lang @@ -7,7 +7,6 @@ AddDonation=إنشاء التبرع NewDonation=منحة جديدة DeleteADonation=حذف التبرع ConfirmDeleteADonation=Are you sure you want to delete this donation? -ShowDonation=مشاهدة التبرع PublicDonation=تبرع العامة DonationsArea=التبرعات المنطقة DonationStatusPromiseNotValidated=مشروع وعد @@ -17,6 +16,7 @@ DonationStatusPromiseNotValidatedShort=مسودة DonationStatusPromiseValidatedShort=صادق DonationStatusPaidShort=وردت DonationTitle=استلام التبرع +DonationDate=Donation date DonationDatePayment=تاريخ الدفع ValidPromess=التحقق من صحة الوعد DonationReceipt=استلام التبرع diff --git a/htdocs/langs/ar_SA/errors.lang b/htdocs/langs/ar_SA/errors.lang index 6810547c909..c1cfd43814f 100644 --- a/htdocs/langs/ar_SA/errors.lang +++ b/htdocs/langs/ar_SA/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=الملف لم تتلق تماما بواسطة الخادم. ErrorNoTmpDir=%s directy مؤقتة لا وجود. ErrorUploadBlockedByAddon=حظر حمل من قبل البرنامج المساعد بى اباتشي /. ErrorFileSizeTooLarge=حجم الملف كبير جدا. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=طويل جدا بالنسبة نوع INT (%s أرقام كحد أقصى) حجم ErrorSizeTooLongForVarcharType=وقتا طويلا لنوع السلسلة (%s حرف كحد أقصى) حجم ErrorNoValueForSelectType=يرجى ملء قيمة لقائمة مختارة @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # 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. ويمكن استخدامه من قبل وحدة / واجهة خارجية ولكن إذا كنت لا تحتاج إلى تعريف أي تسجيل دخول أو كلمة المرور لأحد أفراد، يمكنك تعطيل خيار "إدارة تسجيل دخول لكل عضو" من إعداد وحدة الأعضاء. إذا كنت بحاجة إلى إدارة تسجيل الدخول ولكن لا تحتاج إلى أي كلمة المرور، يمكنك الحفاظ على هذا الحقل فارغا لتجنب هذا التحذير. ملاحظة: يمكن أيضا أن تستخدم البريد الإلكتروني لتسجيل الدخول إذا تم ربط عضو إلى المستخدم. diff --git a/htdocs/langs/ar_SA/install.lang b/htdocs/langs/ar_SA/install.lang index 57d86ff2a83..60fe91b918f 100644 --- a/htdocs/langs/ar_SA/install.lang +++ b/htdocs/langs/ar_SA/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=This PHP supports Curl. PHPSupportCalendar=This PHP supports calendars extensions. PHPSupportUTF8=This PHP supports UTF8 functions. PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=This PHP supports %s 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. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=Your PHP installation does not support Curl. ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. 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. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. ErrorDirDoesNotExists=دليل ٪ ق لا يوجد. ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=The application tried to self-upgrade, but the in 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. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/ar_SA/interventions.lang b/htdocs/langs/ar_SA/interventions.lang index 308427fad67..06c3d23854e 100644 --- a/htdocs/langs/ar_SA/interventions.lang +++ b/htdocs/langs/ar_SA/interventions.lang @@ -41,9 +41,7 @@ InterventionsArea=منطقة التدخلات DraftFichinter=مشروع التدخلات LastModifiedInterventions=Latest %s modified interventions FichinterToProcess=Interventions to process -##### Types de contacts ##### TypeContact_fichinter_external_CUSTOMER=متابعة العملاء الاتصال -# Modele numérotation PrintProductsOnFichinter=Print also lines of type "product" (not only services) on intervention card PrintProductsOnFichinterDetails=التدخلات المتولدة من أوامر UseServicesDurationOnFichinter=Use services duration for interventions generated from orders @@ -53,14 +51,16 @@ InterventionStatistics=Statistics of interventions NbOfinterventions=No. of intervention cards NumberOfInterventionsByMonth=No. of intervention cards by month (date of validation) AmountOfInteventionNotIncludedByDefault=Amount of intervention is not included by default into profit (in most cases, timesheets are used to count time spent). Add option PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT to 1 into home-setup-other to include them. -##### Exports ##### InterId=تدخل معرف InterRef=تدخل المرجع. InterDateCreation=تدخل تاريخ الإنشاء InterDuration=تدخل مدة InterStatus=التدخل الوضع InterNote=ملاحظة التدخل +InterLine=Line of intervention InterLineId=تدخل معرف الخط InterLineDate=تدخل تاريخ الخط InterLineDuration=تدخل مدة خط InterLineDesc=خط وصف التدخل +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/ar_SA/link.lang b/htdocs/langs/ar_SA/link.lang index dd19eb683a0..18b8a80fecb 100644 --- a/htdocs/langs/ar_SA/link.lang +++ b/htdocs/langs/ar_SA/link.lang @@ -7,4 +7,5 @@ ErrorFileNotLinked=لا يمكن ربط الملف LinkRemoved= الرابط%sتم إزالتة ErrorFailedToDeleteLink= فشل في إزالة الرابط ' %s ' ErrorFailedToUpdateLink= فشل تحديث الرابط ' %s ' -URLToLink=الرابط لربطه +URLToLink=عنوان URL للربط +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/ar_SA/mails.lang b/htdocs/langs/ar_SA/mails.lang index 66d53f91fb3..0f3ece4cca0 100644 --- a/htdocs/langs/ar_SA/mails.lang +++ b/htdocs/langs/ar_SA/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=No contact/address with a category found NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found OutGoingEmailSetup=Outgoing email setup InGoingEmailSetup=Incoming email setup -OutGoingEmailSetupForEmailing=Outgoing email setup (for mass emailing) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Default outgoing email setup Information=معلومات ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/ar_SA/main.lang b/htdocs/langs/ar_SA/main.lang index acdedfeb1e0..b0df25d3f55 100644 --- a/htdocs/langs/ar_SA/main.lang +++ b/htdocs/langs/ar_SA/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Save and stay SaveAndNew=Save and new TestConnection=اختبار الاتصال ToClone=استنساخ +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Choose data you want to clone: NoCloneOptionsSpecified=لا توجد بيانات لاستنساخ محددة. Of=من @@ -829,6 +830,8 @@ Gender=جنس Genderman=رجل Genderwoman=امرأة ViewList=عرض القائمة +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=إلزامي Hello=أهلا GoodBye=GoodBye @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Select your graph options to build a graph Measures=Measures XAxis=X-Axis YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/ar_SA/modulebuilder.lang b/htdocs/langs/ar_SA/modulebuilder.lang index 00a8c0f9d32..135ac1ae9ec 100644 --- a/htdocs/langs/ar_SA/modulebuilder.lang +++ b/htdocs/langs/ar_SA/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=List of dictionaries entries ListOfPermissionsDefined=List of defined permissions SeeExamples=See examples here EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) -VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update). Using a negative value means field is not shown by default on list but can be selected for viewing). It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty DisplayOnPdf=Display on PDF IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) diff --git a/htdocs/langs/ar_SA/multicurrency.lang b/htdocs/langs/ar_SA/multicurrency.lang new file mode 100644 index 00000000000..bfcbd11fb7c --- /dev/null +++ b/htdocs/langs/ar_SA/multicurrency.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Multi currency +ErrorAddRateFail=Error in added rate +ErrorAddCurrencyFail=Error in added currency +ErrorDeleteCurrencyFail=Error delete fail +multicurrency_syncronize_error=Synchronization error: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Use the date of the document to find the currency rate, instead of using the latest known rate +multicurrency_useOriginTx=When an object is created from another, keep the original rate from the source object (otherwise use the latest known rate) +CurrencyLayerAccount=CurrencyLayer API +CurrencyLayerAccount_help_to_synchronize=You must create an account on website %s to use this functionality.
    Get your API key.
    If you use a free account, you can't change the source currency (USD by default).
    If your main currency is not USD, the application will automatically recalculate it.

    You are limited to 1000 synchronizations per month. +multicurrency_appId=API key +multicurrency_appCurrencySource=Source currency +multicurrency_alternateCurrencySource=Alternate source currency +CurrenciesUsed=Currencies used +CurrenciesUsed_help_to_add=Add the different currencies and rates you need to use on your proposals, orders etc. +rate=rate +MulticurrencyReceived=Received, original currency +MulticurrencyRemainderToTake=Remaining amount, original currency +MulticurrencyPaymentAmount=Payment amount, original currency +AmountToOthercurrency=Amount To (in currency of receiving account) +CurrencyRateSyncSucceed=Currency rate synchronization done successfuly +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Use the currency of the document for online payments diff --git a/htdocs/langs/ar_SA/other.lang b/htdocs/langs/ar_SA/other.lang index b266e30cab7..50522e619b0 100644 --- a/htdocs/langs/ar_SA/other.lang +++ b/htdocs/langs/ar_SA/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Sales order validated Notify_ORDER_SENTBYMAIL=Sales order sent by mail Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=URL of page WEBSITE_TITLE=العنوان WEBSITE_DESCRIPTION=الوصف WEBSITE_IMAGE=Image -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Keywords LinesToImport=Lines to import diff --git a/htdocs/langs/ar_SA/products.lang b/htdocs/langs/ar_SA/products.lang index e35fb90932a..84088913fff 100644 --- a/htdocs/langs/ar_SA/products.lang +++ b/htdocs/langs/ar_SA/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL MassBarcodeInit=الحرف الأول الباركود الشامل MassBarcodeInitDesc=هذه الصفحة يمكن استخدامها لتهيئة الباركود على الكائنات التي لا يكون الباركود تعريف. تحقق قبل أن الإعداد وحدة الباركود كاملة. ProductAccountancyBuyCode=كود المحاسبة (شراء) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=كود المحاسبة (بيع) ProductAccountancySellIntraCode=Accounting code (sale intra-Community) ProductAccountancySellExportCode=Accounting code (sale export) @@ -165,7 +167,7 @@ SuppliersPrices=Vendor prices SuppliersPricesOfProductsOrServices=Vendor prices (of products or services) CustomCode=Customs / Commodity / HS code CountryOrigin=بلد المنشأ -Nature=Nature of produt (material/finished) +Nature=Nature of product (material/finished) ShortLabel=التسمية قصيرة Unit=وحدة p=ش. diff --git a/htdocs/langs/ar_SA/projects.lang b/htdocs/langs/ar_SA/projects.lang index 1705bce206c..6d0a3866a69 100644 --- a/htdocs/langs/ar_SA/projects.lang +++ b/htdocs/langs/ar_SA/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=which I'm linked to project Time=وقت ListOfTasks=List of tasks GoToListOfTimeConsumed=Go to list of time consumed -GoToListOfTasks=Show as list -GoToGanttView=show as Gantt GanttView=Gantt View ListProposalsAssociatedProject=List of the commercial proposals related to the project ListOrdersAssociatedProject=List of sales orders related to the project @@ -188,7 +186,7 @@ PlannedWorkload=عبء العمل المخطط لها PlannedWorkloadShort=عبء العمل ProjectReferers=Related items ProjectMustBeValidatedFirst=يجب التحقق من صحة المشروع أولا -FirstAddRessourceToAllocateTime=Assign a user resource to task to allocate time +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=إدخال يوميا InputPerWeek=مساهمة في الأسبوع InputPerMonth=Input per month @@ -240,6 +238,7 @@ LatestModifiedProjects=Latest %s modified projects OtherFilteredTasks=Other filtered tasks NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=Allow user comments on tasks AllowCommentOnProject=Allow user comments on projects @@ -256,7 +255,7 @@ ServiceToUseOnLines=Service to use on lines InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. ProjectFollowOpportunity=Follow opportunity -ProjectFollowTasks=Follow tasks +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Usage: Opportunity UsageTasks=Usage: Tasks @@ -265,3 +264,4 @@ InvoiceToUse=Draft invoice to use NewInvoice=فاتورة جديدة OneLinePerTask=One line per task OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/ar_SA/receiptprinter.lang b/htdocs/langs/ar_SA/receiptprinter.lang index 5fec542953f..ddc0c867bbb 100644 --- a/htdocs/langs/ar_SA/receiptprinter.lang +++ b/htdocs/langs/ar_SA/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=طابعة وهمية CONNECTOR_NETWORK_PRINT=طابعة الشبكة CONNECTOR_FILE_PRINT=الطابعة المحلية CONNECTOR_WINDOWS_PRINT=طابعة ويندوز المحلية +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=طابعة وهمية لاختبار، لا يفعل شيئا CONNECTOR_NETWORK_PRINT_HELP=10.xxx:9100 CONNECTOR_FILE_PRINT_HELP=/ ديف / USB / lp0، / ديف / USB / LP1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1، COM1، فلان: // FooUser: السر @ الكمبيوتر / مجموعة العمل / استلام الطابعة +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=ملف التعريف الافتراضي PROFILE_SIMPLE=ملف التعريف بسيط PROFILE_EPOSTEP=ملحمة تيب الملف الشخصي @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Invoice month in letters DOL_VALUE_MONTH=Invoice month DOL_VALUE_DAY=Invoice day DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=فاتورة المرجع +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=عاصمة +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/ar_SA/stripe.lang b/htdocs/langs/ar_SA/stripe.lang index 421ef62e1f8..0fac9d2d553 100644 --- a/htdocs/langs/ar_SA/stripe.lang +++ b/htdocs/langs/ar_SA/stripe.lang @@ -32,6 +32,7 @@ VendorName=اسم البائع CSSUrlForPaymentForm=عزيزي ورقة النمط المغلق للنموذج الدفع NewStripePaymentReceived=New Stripe payment received NewStripePaymentFailed=New Stripe payment tried but failed +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Secret test key STRIPE_TEST_PUBLISHABLE_KEY=Publishable test key STRIPE_TEST_WEBHOOK_KEY=Webhook test key @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mo 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... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authenticatin rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/ar_SA/users.lang b/htdocs/langs/ar_SA/users.lang index 6b8ad486f97..2d79e755885 100644 --- a/htdocs/langs/ar_SA/users.lang +++ b/htdocs/langs/ar_SA/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Users and their properties DomainUser=النطاق المستخدم ق ٪ Reactivate=تنشيط CreateInternalUserDesc=This form allows you to create an internal user in your company/organization. To create an external user (customer, vendor etc. ..), use the button 'Create Dolibarr User' from that third-party's contact card. -InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other.

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=منح إذن لأن الموروث من واحد من المستخدم. Inherited=موروث UserWillBeInternalUser=وسوف يكون المستخدم إنشاء مستخدم داخلية (لأنه لا يرتبط طرف ثالث خاص) @@ -110,3 +110,8 @@ UserLogged=User logged DateEmployment=Employment Start Date DateEmploymentEnd=Employment End Date CantDisableYourself=You can't disable your own user record +ForceUserExpenseValidator=Force expense report validator +ForceUserHolidayValidator=Force leave request validator +ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/ar_SA/website.lang b/htdocs/langs/ar_SA/website.lang index 07bfd981cf9..09a41969c1a 100644 --- a/htdocs/langs/ar_SA/website.lang +++ b/htdocs/langs/ar_SA/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=View page in new tab SetAsHomePage=Set as Home page RealURL=Real URL ViewWebsiteInProduction=View web site using home URLs -SetHereVirtualHost=Use with Apache/NGinx/...
    If you can create, on your web server (Apache, Nginx, ...), a dedicated Virtual Host with PHP enabled and a Root directory on
    %s
    then set the name of the virtual host you have created in the properties of web site, so the preview can be done also using this dedicated web server access instead of the internal Dolibarr server. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS=Use with PHP embedded server
    On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running
    php -S 0.0.0.0:8080 -t %s YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org CheckVirtualHostPerms=Check also that virtual host has permission %s on files into
    %s @@ -56,7 +57,7 @@ NoPageYet=No pages yet YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template SyntaxHelp=Help on specific syntax tips YouCanEditHtmlSourceckeditor=You can edit HTML source code using the "Source" button in editor. -YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Clone page/container CloneSite=Clone site SiteAdded=Website added @@ -76,7 +77,7 @@ BlogPost=Blog post WebsiteAccount=Website account WebsiteAccounts=Website accounts AddWebsiteAccount=Create web site account -BackToListOfThirdParty=Back to list for Third Party +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Disable website first MyContainerTitle=My web site title AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Sorry, this website is currently off line. Please 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 -OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that edits of HTML source will be possible when page content has been initialized by grabbing it from an external page ("Online" editor will NOT be available) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Only edition of HTML source is possible when content was grabbed from an external site GrabImagesInto=Grab also images found into css and page. ImagesShouldBeSavedInto=Images should be saved into directory @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 ch MainLanguage=Main language OtherLanguages=Other languages UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/ar_SA/zapier.lang b/htdocs/langs/ar_SA/zapier.lang new file mode 100644 index 00000000000..6d6eda71313 --- /dev/null +++ b/htdocs/langs/ar_SA/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr module + +# +# Admin page +# +ZapierForDolibarrSetup = Setup of Zapier for Dolibarr diff --git a/htdocs/langs/az_AZ/accountancy.lang b/htdocs/langs/az_AZ/accountancy.lang new file mode 100644 index 00000000000..b8ce37a0956 --- /dev/null +++ b/htdocs/langs/az_AZ/accountancy.lang @@ -0,0 +1,382 @@ +# Dolibarr language file - en_US - Accountancy (Double entries) +Accountancy=Accountancy +Accounting=Accounting +ACCOUNTING_EXPORT_SEPARATORCSV=Column separator for export file +ACCOUNTING_EXPORT_DATE=Date format for export file +ACCOUNTING_EXPORT_PIECE=Export the number of piece +ACCOUNTING_EXPORT_GLOBAL_ACCOUNT=Export with global account +ACCOUNTING_EXPORT_LABEL=Export label +ACCOUNTING_EXPORT_AMOUNT=Export amount +ACCOUNTING_EXPORT_DEVISE=Export currency +Selectformat=Select the format for the file +ACCOUNTING_EXPORT_FORMAT=Select the format for the file +ACCOUNTING_EXPORT_ENDLINE=Select the carriage return type +ACCOUNTING_EXPORT_PREFIX_SPEC=Specify the prefix for the file name +ThisService=This service +ThisProduct=This product +DefaultForService=Default for service +DefaultForProduct=Default for product +CantSuggest=Can't suggest +AccountancySetupDoneFromAccountancyMenu=Most setup of the accountancy is done from the menu %s +ConfigAccountingExpert=Configuration of the module accounting expert +Journalization=Journalization +Journaux=Journals +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 +OtherInfo=Other information +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 + +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 + +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... + +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 + +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. + +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. + +AccountancyAreaDescClosePeriod=STEP %s: Close period so we can't make modification in a future. + +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 +AccountAccountingShort=Account +SubledgerAccount=Subledger account +SubledgerAccountLabel=Subledger account label +ShowAccountingAccount=Show accounting account +ShowAccountingJournal=Show accounting journal +AccountAccountingSuggest=Accounting account suggested +MenuDefaultAccounts=Default accounts +MenuBankAccounts=Bank accounts +MenuVatAccounts=Vat accounts +MenuTaxAccounts=Tax accounts +MenuExpenseReportAccounts=Expense report accounts +MenuLoanAccounts=Loan accounts +MenuProductsAccounts=Product accounts +MenuClosureAccounts=Closure accounts +MenuAccountancyClosure=Closure +MenuAccountancyValidationMovements=Validate movements +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 +TotalForAccount=Total for accounting account + + +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 + +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_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=Length of the third-party accounting accounts (If you set value to 6 here, the account '401' will appear like '401000' on screen) +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_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_RESULT_PROFIT=Result accounting account (Profit) +ACCOUNTING_RESULT_LOSS=Result accounting account (Loss) +ACCOUNTING_CLOSURE_DEFAULT_JOURNAL=Journal of closure + +ACCOUNTING_ACCOUNT_TRANSFER_CASH=Accounting account of transitional bank transfer +TransitionalAccount=Transitional bank transfer account + +ACCOUNTING_ACCOUNT_SUSPENSE=Accounting account of wait +DONATION_ACCOUNTINGACCOUNT=Accounting account to register donations +ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions + +ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (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 products sold in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported 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_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (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_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) + +Doctype=Type of document +Docdate=Date +Docref=Reference +LabelAccount=Label account +LabelOperation=Label operation +Sens=Sens +LetteringCode=Lettering code +Lettering=Lettering +Codejournal=Journal +JournalLabel=Journal label +NumPiece=Piece number +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=By year +NotMatch=Not Set +DeleteMvt=Delete Ledger lines +DelMonth=Month to delete +DelYear=Year to delete +DelJournal=Journal to delete +ConfirmDeleteMvt=This will delete all lines of the Ledger for the year/month and/or from a specific journal (At least one criterion is required). You will have to reuse the feature 'Registration in accounting' to have the deleted record back in the ledger. +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=Third-party account +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=List third-party account +DescThirdPartyReport=Consult here the list of third-party customers and vendors and their accounting accounts +ListAccounts=List of the accounting accounts +UnknownAccountForThirdparty=Unknown third-party account. We will use %s +UnknownAccountForThirdpartyBlocking=Unknown third-party account. Blocking error +ThirdpartyAccountNotDefinedOrThirdPartyUnknown=Third-party account not defined or third party unknown. We will use %s +ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unknown and subledger not defined on the payment. We will keep the subledger account value empty. +ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. +UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error +PaymentsNotLinkedToProduct=Payment not linked to any product / service +OpeningBalance=Opening balance +ShowOpeningBalance=Show opening balance +HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group + +Pcgtype=Group of account +PcgtypeDesc=Group 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. + +Reconcilable=Reconcilable + +TotalVente=Total turnover before tax +TotalMarge=Total sales margin + +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: +Vide=- +DescVentilSupplier=Consult here the list of vendor invoice lines bound or not yet bound to a product accounting account (only record not already transfered in accountancy are visible) +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 + +DescClosure=Consult here the number of movements by month who are not validated & fiscal years already open +OverviewOfMovementsNotValidated=Step 1/ Overview of movements not validated. (Necessary to close a fiscal year) +ValidateMovements=Validate movements +DescValidateMovements=Any modification or deletion of writing, lettering and deletes will be prohibited. All entries for an exercise must be validated otherwise closing will not be possible +SelectMonthAndValidate=Select month and validate movements + +ValidateHistory=Bind Automatically +AutomaticBindingDone=Automatic binding done + +ErrorAccountancyCodeIsAlreadyUse=Error, you cannot delete this accounting account because it is used +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 +ShowTutorial=Show Tutorial +NotReconciled=Not reconciled + +## Admin +ApplyMassCategories=Apply mass categories +AddAccountFromBookKeepingWithNoCategories=Available account not yet in the personalized group +CategoryDeleted=Category for the accounting account has been removed +AccountingJournals=Accounting journals +AccountingJournal=Accounting journal +NewAccountingJournal=New accounting journal +ShowAccountingJournal=Show accounting journal +NatureOfJournal=Nature of Journal +AccountingJournalType1=Miscellaneous operations +AccountingJournalType2=Sales +AccountingJournalType3=Purchases +AccountingJournalType4=Bank +AccountingJournalType5=Expenses report +AccountingJournalType8=Inventory +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 + +## 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) +Modelcsv_openconcerto=Export for OpenConcerto (Test) +Modelcsv_configurable=Export CSV Configurable +Modelcsv_FEC=Export FEC +Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta +ChartofaccountsId=Chart of accounts Id + +## 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 used for accounting closures. +Options=Options +OptionModeProductSell=Mode sales +OptionModeProductSellIntra=Mode sales exported in EEC +OptionModeProductSellExport=Mode sales exported in other countries +OptionModeProductBuy=Mode purchases +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries +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. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign 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 +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. + +## Dictionary +Range=Range of accounting account +Calculated=Calculated +Formula=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 + +## 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 diff --git a/htdocs/langs/az_AZ/admin.lang b/htdocs/langs/az_AZ/admin.lang new file mode 100644 index 00000000000..7eb67d7a4ab --- /dev/null +++ b/htdocs/langs/az_AZ/admin.lang @@ -0,0 +1,2002 @@ +# Dolibarr language file - Source file is en_US - admin +Foundation=Foundation +Version=Version +Publisher=Publisher +VersionProgram=Version program +VersionLastInstall=Initial install version +VersionLastUpgrade=Latest version upgrade +VersionExperimental=Experimental +VersionDevelopment=Development +VersionUnknown=Unknown +VersionRecommanded=Recommended +FileCheck=Fileset Integrity Checks +FileCheckDesc=This tool allows you to check the integrity of files and the setup of your application, comparing each file with the official one. The value of some setup constants may also be checked. You can use this tool to determine if any files have been modified (e.g by a hacker). +FileIntegrityIsStrictlyConformedWithReference=Files integrity is strictly conformed with the reference. +FileIntegrityIsOkButFilesWereAdded=Files integrity check has passed, however some new files have been added. +FileIntegritySomeFilesWereRemovedOrModified=Files integrity check has failed. Some files were modified, removed or added. +GlobalChecksum=Global checksum +MakeIntegrityAnalysisFrom=Make integrity analysis of application files from +LocalSignature=Embedded local signature (less reliable) +RemoteSignature=Remote distant signature (more reliable) +FilesMissing=Missing Files +FilesUpdated=Updated Files +FilesModified=Modified Files +FilesAdded=Added Files +FileCheckDolibarr=Check integrity of application files +AvailableOnlyOnPackagedVersions=The local file for integrity checking is only available when the application is installed from an official package +XmlNotFound=Xml Integrity File of application not found +SessionId=Session ID +SessionSaveHandler=Handler to save sessions +SessionSavePath=Session save location +PurgeSessions=Purge of sessions +ConfirmPurgeSessions=Do you really want to purge all sessions? This will disconnect every user (except yourself). +NoSessionListWithThisHandler=Save session handler configured in your PHP does not allow listing all running sessions. +LockNewSessions=Lock new connections +ConfirmLockNewSessions=Are you sure you want to restrict any new Dolibarr connection to yourself? Only user %s will be able to connect after that. +UnlockNewSessions=Remove connection lock +YourSession=Your session +Sessions=Users Sessions +WebUserGroup=Web server user/group +NoSessionFound=Your PHP configuration seems to not allow listing of active sessions. The directory used to save sessions (%s) may be protected (for example by OS permissions or by PHP directive open_basedir). +DBStoringCharset=Database charset to store data +DBSortingCharset=Database charset to sort data +HostCharset=Host charset +ClientCharset=Client charset +ClientSortingCharset=Client collation +WarningModuleNotActive=Module %s must be enabled +WarningOnlyPermissionOfActivatedModules=Only permissions related to activated modules are shown here. You can activate other modules in the Home->Setup->Modules page. +DolibarrSetup=Dolibarr install or upgrade +InternalUser=Internal user +ExternalUser=External user +InternalUsers=Internal users +ExternalUsers=External users +GUISetup=Display +SetupArea=Setup +UploadNewTemplate=Upload new template(s) +FormToTestFileUploadForm=Form to test file upload (according to setup) +IfModuleEnabled=Note: yes is effective only if module %s is enabled +RemoveLock=Remove/rename file %s if it exists, to allow usage of the Update/Install tool. +RestoreLock=Restore file %s, with read permission only, to disable any further use of the Update/Install tool. +SecuritySetup=Security setup +SecurityFilesDesc=Define here options related to security about uploading files. +ErrorModuleRequirePHPVersion=Error, this module requires PHP version %s or higher +ErrorModuleRequireDolibarrVersion=Error, this module requires Dolibarr version %s or higher +ErrorDecimalLargerThanAreForbidden=Error, a precision higher than %s is not supported. +DictionarySetup=Dictionary setup +Dictionary=Dictionaries +ErrorReservedTypeSystemSystemAuto=Value 'system' and 'systemauto' for type is reserved. You can use 'user' as value to add your own record +ErrorCodeCantContainZero=Code can't contain value 0 +DisableJavascript=Disable JavaScript and Ajax functions +DisableJavascriptNote=Note: For test or debug purpose. For optimization for blind person or text browsers, you may prefer to use the setup on the profile of user +UseSearchToSelectCompanyTooltip=Also if you have a large number of third parties (> 100 000), you can increase speed by setting constant COMPANY_DONOTSEARCH_ANYWHERE to 1 in Setup->Other. Search will then be limited to start of string. +UseSearchToSelectContactTooltip=Also if you have a large number of third parties (> 100 000), you can increase speed by setting constant CONTACT_DONOTSEARCH_ANYWHERE to 1 in Setup->Other. Search will then be limited to start of string. +DelaiedFullListToSelectCompany=Wait until a key is pressed before loading content of Third Parties combo list.
    This may increase performance if you have a large number of third parties, but it is less convenient. +DelaiedFullListToSelectContact=Wait until a key is pressed before loading content of Contact combo list.
    This may increase performance if you have a large number of contacts, but it is less convenient) +NumberOfKeyToSearch=Number of characters to trigger search: %s +NumberOfBytes=Number of Bytes +SearchString=Search string +NotAvailableWhenAjaxDisabled=Not available when Ajax disabled +AllowToSelectProjectFromOtherCompany=On document of a third party, can choose a project linked to another third party +JavascriptDisabled=JavaScript disabled +UsePreviewTabs=Use preview tabs +ShowPreview=Show preview +PreviewNotAvailable=Preview not available +ThemeCurrentlyActive=Theme currently active +CurrentTimeZone=TimeZone PHP (server) +MySQLTimeZone=TimeZone MySql (database) +TZHasNoEffect=Dates are stored and returned by database server as if they were kept as submitted string. The timezone has effect only when using the UNIX_TIMESTAMP function (that should not be used by Dolibarr, so database TZ should have no effect, even if changed after data was entered). +Space=Space +Table=Table +Fields=Fields +Index=Index +Mask=Mask +NextValue=Next value +NextValueForInvoices=Next value (invoices) +NextValueForCreditNotes=Next value (credit notes) +NextValueForDeposit=Next value (down payment) +NextValueForReplacements=Next value (replacements) +MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the maximum filesize for upload to %s %s, irrespective of the value of this parameter +NoMaxSizeByPHPLimit=Note: No limit is set in your PHP configuration +MaxSizeForUploadedFiles=Maximum size for uploaded files (0 to disallow any upload) +UseCaptchaCode=Use graphical code (CAPTCHA) on login page +AntiVirusCommand=Full path to antivirus command +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe +AntiVirusParam= More parameters on command line +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" +ComptaSetup=Accounting module setup +UserSetup=User management setup +MultiCurrencySetup=Multi-currency setup +MenuLimits=Limits and accuracy +MenuIdParent=Parent menu ID +DetailMenuIdParent=ID of parent menu (empty for a top menu) +DetailPosition=Sort number to define menu position +AllMenus=All +NotConfigured=Module/Application not configured +Active=Active +SetupShort=Setup +OtherOptions=Other options +OtherSetup=Other Setup +CurrentValueSeparatorDecimal=Decimal separator +CurrentValueSeparatorThousand=Thousand separator +Destination=Destination +IdModule=Module ID +IdPermissions=Permissions ID +LanguageBrowserParameter=Parameter %s +LocalisationDolibarrParameters=Localization parameters +ClientTZ=Client Time Zone (user) +ClientHour=Client time (user) +OSTZ=Server OS Time Zone +PHPTZ=PHP server Time Zone +DaylingSavingTime=Daylight saving time +CurrentHour=PHP Time (server) +CurrentSessionTimeOut=Current session timeout +YouCanEditPHPTZ=To set a different PHP timezone (not required), you can try to add a .htaccess file with a line like this "SetEnv TZ Europe/Paris" +HoursOnThisPageAreOnServerTZ=Warning, in contrary of other screens, hours on this page are not in your local timezone, but of the timezone of the server. +Box=Widget +Boxes=Widgets +MaxNbOfLinesForBoxes=Max. number of lines for widgets +AllWidgetsWereEnabled=All available widgets are enabled +PositionByDefault=Default order +Position=Position +MenusDesc=Menu managers set content of the two menu bars (horizontal and vertical). +MenusEditorDesc=The menu editor allows you to define custom menu entries. Use it carefully to avoid instability and permanently unreachable menu entries.
    Some modules add menu entries (in menu All mostly). If you remove some of these entries by mistake, you can restore them disabling and reenabling the module. +MenuForUsers=Menu for users +LangFile=.lang file +Language_en_US_es_MX_etc=Language (en_US, es_MX, ...) +System=System +SystemInfo=System information +SystemToolsArea=System tools area +SystemToolsAreaDesc=This area provides administration functions. Use the menu to choose the required feature. +Purge=Purge +PurgeAreaDesc=This page allows you to delete all files generated or stored by Dolibarr (temporary files or all files in %s directory). Using this feature is not normally necessary. It is provided as a workaround for users whose Dolibarr is hosted by a provider that does not offer permissions to delete files generated by the web server. +PurgeDeleteLogFile=Delete log files, including %s defined for Syslog module (no risk of losing data) +PurgeDeleteTemporaryFiles=Delete all temporary files (no risk of losing data). Note: Deletion is done only if the temp directory was created 24 hours ago. +PurgeDeleteTemporaryFilesShort=Delete temporary files +PurgeDeleteAllFilesInDocumentsDir=Delete all files in directory: %s.
    This will delete all generated documents related to elements (third parties, invoices etc...), files uploaded into the ECM module, database backup dumps and temporary files. +PurgeRunNow=Purge now +PurgeNothingToDelete=No directory or files to delete. +PurgeNDirectoriesDeleted=%s files or directories deleted. +PurgeNDirectoriesFailed=Failed to delete %s files or directories. +PurgeAuditEvents=Purge all security events +ConfirmPurgeAuditEvents=Are you sure you want to purge all security events? All security logs will be deleted, no other data will be removed. +GenerateBackup=Generate backup +Backup=Backup +Restore=Restore +RunCommandSummary=Backup has been launched with the following command +BackupResult=Backup result +BackupFileSuccessfullyCreated=Backup file successfully generated +YouCanDownloadBackupFile=The generated file can now be downloaded +NoBackupFileAvailable=No backup files available. +ExportMethod=Export method +ImportMethod=Import method +ToBuildBackupFileClickHere=To build a backup file, click here. +ImportMySqlDesc=To import a MySQL backup file, you may use phpMyAdmin via your hosting or use the mysql command from the Command line.
    For example: +ImportPostgreSqlDesc=To import a backup file, you must use pg_restore command from command line: +ImportMySqlCommand=%s %s < mybackupfile.sql +ImportPostgreSqlCommand=%s %s mybackupfile.sql +FileNameToGenerate=Filename for backup: +Compression=Compression +CommandsToDisableForeignKeysForImport=Command to disable foreign keys on import +CommandsToDisableForeignKeysForImportWarning=Mandatory if you want to be able to restore your sql dump later +ExportCompatibility=Compatibility of generated export file +ExportUseMySQLQuickParameter=Use the --quick parameter +ExportUseMySQLQuickParameterHelp=The '--quick' parameter helps limit RAM consumption for large tables. +MySqlExportParameters=MySQL export parameters +PostgreSqlExportParameters= PostgreSQL export parameters +UseTransactionnalMode=Use transactional mode +FullPathToMysqldumpCommand=Full path to mysqldump command +FullPathToPostgreSQLdumpCommand=Full path to pg_dump command +AddDropDatabase=Add DROP DATABASE command +AddDropTable=Add DROP TABLE command +ExportStructure=Structure +NameColumn=Name columns +ExtendedInsert=Extended INSERT +NoLockBeforeInsert=No lock commands around INSERT +DelayedInsert=Delayed insert +EncodeBinariesInHexa=Encode binary data in hexadecimal +IgnoreDuplicateRecords=Ignore errors of duplicate record (INSERT IGNORE) +AutoDetectLang=Autodetect (browser language) +FeatureDisabledInDemo=Feature disabled in demo +FeatureAvailableOnlyOnStable=Feature only available on official stable versions +BoxesDesc=Widgets are components showing some information that you can add to personalize some pages. You can choose between showing the widget or not by selecting target page and clicking 'Activate', or by clicking the trashcan to disable it. +OnlyActiveElementsAreShown=Only elements from enabled modules are shown. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. +ModulesMarketPlaceDesc=You can find more modules to download on external websites on the Internet... +ModulesDeployDesc=If permissions on your file system allow it, you can use this tool to deploy an external module. The module will then be visible on the tab %s. +ModulesMarketPlaces=Find external app/modules +ModulesDevelopYourModule=Develop your own app/modules +ModulesDevelopDesc=You may also develop your own module or find a partner to develop one for you. +DOLISTOREdescriptionLong=Instead of switching on www.dolistore.com web site to find an external module, you can use this embedded tool that will perform the search on the external market place for you (may be slow, need an internet access)... +NewModule=New +FreeModule=Free +CompatibleUpTo=Compatible with version %s +NotCompatible=This module does not seem compatible with your Dolibarr %s (Min %s - Max %s). +CompatibleAfterUpdate=This module requires an update to your Dolibarr %s (Min %s - Max %s). +SeeInMarkerPlace=See in Market place +SeeSetupOfModule=See setup of module %s +Updated=Updated +Nouveauté=Novelty +AchatTelechargement=Buy / Download +GoModuleSetupArea=To deploy/install a new module, go to the Module setup area: %s. +DoliStoreDesc=DoliStore, the official market place for Dolibarr ERP/CRM external modules +DoliPartnersDesc=List of companies providing custom-developed modules or features.
    Note: since Dolibarr is an open source application, anyone experienced in PHP programming may develop a module. +WebSiteDesc=External websites for more add-on (non-core) modules... +DevelopYourModuleDesc=Some solutions to develop your own module... +URL=URL +RelativeURL=Relative URL +BoxesAvailable=Widgets available +BoxesActivated=Widgets activated +ActivateOn=Activate on +ActiveOn=Activated on +SourceFile=Source file +AvailableOnlyIfJavascriptAndAjaxNotDisabled=Available only if JavaScript is not disabled +Required=Required +UsedOnlyWithTypeOption=Used by some agenda option only +Security=Security +Passwords=Passwords +DoNotStoreClearPassword=Encrypt passwords stored in database (NOT as plain-text). It is strongly recommended to activate this option. +MainDbPasswordFileConfEncrypted=Encrypt database password stored in conf.php. It is strongly recommended to activate this option. +InstrucToEncodePass=To have password encoded into the conf.php file, replace the line
    $dolibarr_main_db_pass="...";
    by
    $dolibarr_main_db_pass="crypted:%s"; +InstrucToClearPass=To have password decoded (clear) into the conf.php file, replace the line
    $dolibarr_main_db_pass="crypted:...";
    by
    $dolibarr_main_db_pass="%s"; +ProtectAndEncryptPdfFiles=Protect generated PDF files. This is NOT recommended as it breaks bulk PDF generation. +ProtectAndEncryptPdfFilesDesc=Protection of a PDF document keeps it available to read and print with any PDF browser. However, editing and copying is not possible anymore. Note that using this feature makes building of a global merged PDFs not working. +Feature=Feature +DolibarrLicense=License +Developpers=Developers/contributors +OfficialWebSite=Dolibarr official web site +OfficialWebSiteLocal=Local web site (%s) +OfficialWiki=Dolibarr documentation / Wiki +OfficialDemo=Dolibarr online demo +OfficialMarketPlace=Official market place for external modules/addons +OfficialWebHostingService=Referenced web hosting services (Cloud hosting) +ReferencedPreferredPartners=Preferred Partners +OtherResources=Other resources +ExternalResources=External Resources +SocialNetworks=Social Networks +ForDocumentationSeeWiki=For user or developer documentation (Doc, FAQs...),
    take a look at the Dolibarr Wiki:
    %s +ForAnswersSeeForum=For any other questions/help, you can use the Dolibarr forum:
    %s +HelpCenterDesc1=Here are some resources for getting help and support with Dolibarr. +HelpCenterDesc2=Some of these resources are only available in english. +CurrentMenuHandler=Current menu handler +MeasuringUnit=Measuring unit +LeftMargin=Left margin +TopMargin=Top margin +PaperSize=Paper type +Orientation=Orientation +SpaceX=Space X +SpaceY=Space Y +FontSize=Font size +Content=Content +NoticePeriod=Notice period +NewByMonth=New by month +Emails=Emails +EMailsSetup=Emails setup +EMailsDesc=This page allows you to override your default PHP parameters for email sending. In most cases on Unix/Linux OS, the PHP setup is correct and these parameters are unnecessary. +EmailSenderProfiles=Emails sender profiles +EMailsSenderProfileDesc=You can keep this section empty. If you enter some emails here, they will be added to the list of possible senders into the combobox when your write a new email. +MAIN_MAIL_SMTP_PORT=SMTP/SMTPS Port (default value in php.ini: %s) +MAIN_MAIL_SMTP_SERVER=SMTP/SMTPS Host (default value in php.ini: %s) +MAIN_MAIL_SMTP_PORT_NotAvailableOnLinuxLike=SMTP/SMTPS Port (Not defined into PHP on Unix-like systems) +MAIN_MAIL_SMTP_SERVER_NotAvailableOnLinuxLike=SMTP/SMTPS Host (Not defined into PHP on Unix-like systems) +MAIN_MAIL_EMAIL_FROM=Sender email for automatic emails (default value in php.ini: %s) +MAIN_MAIL_ERRORS_TO=Email used for error returns emails (fields 'Errors-To' in emails sent) +MAIN_MAIL_AUTOCOPY_TO= Copy (Bcc) all sent emails to +MAIN_DISABLE_ALL_MAILS=Disable all email sending (for test purposes or demos) +MAIN_MAIL_FORCE_SENDTO=Send all emails to (instead of real recipients, for test purposes) +MAIN_MAIL_ENABLED_USER_DEST_SELECT=Suggest emails of employees (if defined) into the list of predefined recipient when writing a new email +MAIN_MAIL_SENDMODE=Email sending method +MAIN_MAIL_SMTPS_ID=SMTP ID (if sending server requires authentication) +MAIN_MAIL_SMTPS_PW=SMTP Password (if sending server requires authentication) +MAIN_MAIL_EMAIL_TLS=Use TLS (SSL) encryption +MAIN_MAIL_EMAIL_STARTTLS=Use TLS (STARTTLS) encryption +MAIN_MAIL_EMAIL_DKIM_ENABLED=Use DKIM to generate email signature +MAIN_MAIL_EMAIL_DKIM_DOMAIN=Email Domain for use with dkim +MAIN_MAIL_EMAIL_DKIM_SELECTOR=Name of dkim selector +MAIN_MAIL_EMAIL_DKIM_PRIVATE_KEY=Private key for dkim signing +MAIN_DISABLE_ALL_SMS=Disable all SMS sending (for test purposes or demos) +MAIN_SMS_SENDMODE=Method to use to send SMS +MAIN_MAIL_SMS_FROM=Default sender phone number for SMS sending +MAIN_MAIL_DEFAULT_FROMTYPE=Default sender email for manual sending (User email or Company email) +UserEmail=User email +CompanyEmail=Company Email +FeatureNotAvailableOnLinux=Feature not available on Unix like systems. Test your sendmail program locally. +SubmitTranslation=If the translation for this language is not complete or you find errors, you can correct this by editing files in directory langs/%s and submit your change to www.transifex.com/dolibarr-association/dolibarr/ +SubmitTranslationENUS=If translation for this language is not complete or you find errors, you can correct this by editing files into directory langs/%s and submit modified files on dolibarr.org/forum or for developers on github.com/Dolibarr/dolibarr. +ModuleSetup=Module setup +ModulesSetup=Modules/Application setup +ModuleFamilyBase=System +ModuleFamilyCrm=Customer Relationship Management (CRM) +ModuleFamilySrm=Vendor Relationship Management (VRM) +ModuleFamilyProducts=Product Management (PM) +ModuleFamilyHr=Human Resource Management (HR) +ModuleFamilyProjects=Projects/Collaborative work +ModuleFamilyOther=Other +ModuleFamilyTechnic=Multi-modules tools +ModuleFamilyExperimental=Experimental modules +ModuleFamilyFinancial=Financial Modules (Accounting/Treasury) +ModuleFamilyECM=Electronic Content Management (ECM) +ModuleFamilyPortal=Websites and other frontal application +ModuleFamilyInterface=Interfaces with external systems +MenuHandlers=Menu handlers +MenuAdmin=Menu editor +DoNotUseInProduction=Do not use in production +ThisIsProcessToFollow=Upgrade procedure: +ThisIsAlternativeProcessToFollow=This is an alternative setup to process manually: +StepNb=Step %s +FindPackageFromWebSite=Find a package that provides the features you need (for example on the official web site %s). +DownloadPackageFromWebSite=Download package (for example from the official web site %s). +UnpackPackageInDolibarrRoot=Unpack/unzip the packaged files into your Dolibarr server directory: %s +UnpackPackageInModulesRoot=To deploy/install an external module, unpack/unzip the packaged files into the server directory dedicated to external modules:
    %s +SetupIsReadyForUse=Module deployment is finished. You must however enable and setup the module in your application by going to the page setup modules: %s. +NotExistsDirect=The alternative root directory is not defined to an existing directory.
    +InfDirAlt=Since version 3, it is possible to define an alternative root directory. This allows you to store, into a dedicated directory, plug-ins and custom templates.
    Just create a directory at the root of Dolibarr (eg: custom).
    +InfDirExample=
    Then declare it in the file conf.php
    $dolibarr_main_url_root_alt='/custom'
    $dolibarr_main_document_root_alt='/path/of/dolibarr/htdocs/custom'
    If these lines are commented with "#", to enable them, just uncomment by removing the "#" character. +YouCanSubmitFile=You can upload the .zip file of module package from here: +CurrentVersion=Dolibarr current version +CallUpdatePage=Browse to the page that updates the database structure and data: %s. +LastStableVersion=Latest stable version +LastActivationDate=Latest activation date +LastActivationAuthor=Latest activation author +LastActivationIP=Latest activation IP +UpdateServerOffline=Update server offline +WithCounter=Manage a counter +GenericMaskCodes=You may enter any numbering mask. In this mask, the following tags could be used:
    {000000} corresponds to a number which will be incremented on each %s. Enter as many zeros as the desired length of the counter. The counter will be completed by zeros from the left in order to have as many zeros as the mask.
    {000000+000} same as previous but an offset corresponding to the number to the right of the + sign is applied starting on first %s.
    {000000@x} same as previous but the counter is reset to zero when month x is reached (x between 1 and 12, or 0 to use the early months of fiscal year defined in your configuration, or 99 to reset to zero every month). If this option is used and x is 2 or higher, then sequence {yy}{mm} or {yyyy}{mm} is also required.
    {dd} day (01 to 31).
    {mm} month (01 to 12).
    {yy}, {yyyy} or {y} year over 2, 4 or 1 numbers.
    +GenericMaskCodes2={cccc} the client code on n characters
    {cccc000} the client code on n characters is followed by a counter dedicated for customer. This counter dedicated to customer is reset at same time than global counter.
    {tttt} The code of third party type on n characters (see menu Home - Setup - Dictionary - Types of third parties). If you add this tag, the counter will be different for each type of third party.
    +GenericMaskCodes3=All other characters in the mask will remain intact.
    Spaces are not allowed.
    +GenericMaskCodes4a=Example on the 99th %s of the third party TheCompany, with date 2007-01-31:
    +GenericMaskCodes4b=Example on third party created on 2007-03-01:
    +GenericMaskCodes4c=Example on product created on 2007-03-01:
    +GenericMaskCodes5=ABC{yy}{mm}-{000000} will give ABC0701-000099
    {0000+100@1}-ZZZ/{dd}/XXX will give 0199-ZZZ/31/XXX
    IN{yy}{mm}-{0000}-{t} will give IN0701-0099-A if the type of company is 'Responsable Inscripto' with code for type that is 'A_RI' +GenericNumRefModelDesc=Returns a customizable number according to a defined mask. +ServerAvailableOnIPOrPort=Server is available at address %s on port %s +ServerNotAvailableOnIPOrPort=Server is not available at address %s on port %s +DoTestServerAvailability=Test server connectivity +DoTestSend=Test sending +DoTestSendHTML=Test sending HTML +ErrorCantUseRazIfNoYearInMask=Error, can't use option @ to reset counter each year if sequence {yy} or {yyyy} is not in mask. +ErrorCantUseRazInStartedYearIfNoYearMonthInMask=Error, can't use option @ if sequence {yy}{mm} or {yyyy}{mm} is not in mask. +UMask=UMask parameter for new files on Unix/Linux/BSD/Mac file system. +UMaskExplanation=This parameter allow you to define permissions set by default on files created by Dolibarr on server (during upload for example).
    It must be the octal value (for example, 0666 means read and write for everyone).
    This parameter is useless on a Windows server. +SeeWikiForAllTeam=Take a look at the Wiki page for a list of contributors and their organization +UseACacheDelay= Delay for caching export response in seconds (0 or empty for no cache) +DisableLinkToHelpCenter=Hide link "Need help or support" on login page +DisableLinkToHelp=Hide link to online help "%s" +AddCRIfTooLong=There is no automatic text wrapping, text that is too long will not display on documents. Please add carriage returns in the text area if needed. +ConfirmPurge=Are you sure you want to execute this purge?
    This will permanently delete all your data files with no way to restore them (ECM files, attached files...). +MinLength=Minimum length +LanguageFilesCachedIntoShmopSharedMemory=Files .lang loaded in shared memory +LanguageFile=Language file +ExamplesWithCurrentSetup=Examples with current configuration +ListOfDirectories=List of OpenDocument templates directories +ListOfDirectoriesForModelGenODT=List of directories containing templates files with OpenDocument format.

    Put here full path of directories.
    Add a carriage return between eah 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. +NumberOfModelFilesFound=Number of ODT/ODS template files found in these directories +ExampleOfDirectoriesForModelGen=Examples of syntax:
    c:\\mydir
    /home/mydir
    DOL_DATA_ROOT/ecm/ecmdir +FollowingSubstitutionKeysCanBeUsed=
    To know how to create your odt document templates, before storing them in those directories, read wiki documentation: +FullListOnOnlineDocumentation=http://wiki.dolibarr.org/index.php/Create_an_ODT_document_template +FirstnameNamePosition=Position of Name/Lastname +DescWeather=The following images will be shown on the dashboard when the number of late actions reach the following values: +KeyForWebServicesAccess=Key to use Web Services (parameter "dolibarrkey" in webservices) +TestSubmitForm=Input test form +ThisForceAlsoTheme=Using this menu manager will also use its own theme whatever the user choice. Also this menu manager specialized for smartphones does not work on all smartphone. Use another menu manager if you experience problems with yours. +ThemeDir=Skins directory +ConnectionTimeout=Connection timeout +ResponseTimeout=Response timeout +SmsTestMessage=Test message from __PHONEFROM__ to __PHONETO__ +ModuleMustBeEnabledFirst=Module %s must be enabled first if you need this feature. +SecurityToken=Key to secure URLs +NoSmsEngine=No SMS sender manager available. A SMS sender manager is not installed with the default distribution because they depend on an external vendor, but you can find some on %s +PDF=PDF +PDFDesc=Global options for PDF generation. +PDFAddressForging=Rules for address boxes +HideAnyVATInformationOnPDF=Hide all information related to Sales Tax / VAT +PDFRulesForSalesTax=Rules for Sales Tax / VAT +PDFLocaltax=Rules for %s +HideLocalTaxOnPDF=Hide %s rate in column Tax Sale +HideDescOnPDF=Hide products description +HideRefOnPDF=Hide products ref. +HideDetailsOnPDF=Hide product lines details +PlaceCustomerAddressToIsoLocation=Use french standard position (La Poste) for customer address position +Library=Library +UrlGenerationParameters=Parameters to secure URLs +SecurityTokenIsUnique=Use a unique securekey parameter for each URL +EnterRefToBuildUrl=Enter reference for object %s +GetSecuredUrl=Get calculated URL +ButtonHideUnauthorized=Hide buttons for non-admin users for unauthorized actions instead of showing greyed disabled buttons +OldVATRates=Old VAT rate +NewVATRates=New VAT rate +PriceBaseTypeToChange=Modify on prices with base reference value defined on +MassConvert=Launch bulk conversion +PriceFormatInCurrentLanguage=Price Format In Current Language +String=String +TextLong=Long text +HtmlText=Html text +Int=Integer +Float=Float +DateAndTime=Date and hour +Unique=Unique +Boolean=Boolean (one checkbox) +ExtrafieldPhone = Phone +ExtrafieldPrice = Price +ExtrafieldMail = Email +ExtrafieldUrl = Url +ExtrafieldSelect = Select list +ExtrafieldSelectList = Select from table +ExtrafieldSeparator=Separator (not a field) +ExtrafieldPassword=Password +ExtrafieldRadio=Radio buttons (one choice only) +ExtrafieldCheckBox=Checkboxes +ExtrafieldCheckBoxFromList=Checkboxes from table +ExtrafieldLink=Link to an object +ComputedFormula=Computed field +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +Computedpersistent=Store computed field +ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! +ExtrafieldParamHelpPassword=Leaving this field blank means this value will be stored without encryption (field must be only hidden with star on screen).
    Set 'auto' to use the default encryption rule to save password into database (then value read will be the hash only, no way to retrieve original value) +ExtrafieldParamHelpselect=List of values must be lines with format key,value (where key can't be '0')

    for example:
    1,value1
    2,value2
    code3,value3
    ...

    In order to have the list depending on another complementary attribute list:
    1,value1|options_parent_list_code:parent_key
    2,value2|options_parent_list_code:parent_key

    In order to have the list depending on another list:
    1,value1|parent_list_code:parent_key
    2,value2|parent_list_code:parent_key +ExtrafieldParamHelpcheckbox=List of values must be lines with format key,value (where key can't be '0')

    for example:
    1,value1
    2,value2
    3,value3
    ... +ExtrafieldParamHelpradio=List of values must be lines with format key,value (where key can't be '0')

    for example:
    1,value1
    2,value2
    3,value3
    ... +ExtrafieldParamHelpsellist=List of values comes from a table
    Syntax: table_name:label_field:id_field::filter
    Example: c_typent:libelle:id::filter

    - idfilter is necessarly a primary int key
    - filter can be a simple test (eg active=1) to display only active value
    You can also use $ID$ in filter witch is the current id of current object
    To do a SELECT in filter use $SEL$
    if you want to filter on extrafields use syntax extra.fieldcode=... (where field code is the code of extrafield)

    In order to have the list depending on another complementary attribute list:
    c_typent:libelle:id:options_parent_list_code|parent_column:filter

    In order to have the list depending on another list:
    c_typent:libelle:id:parent_list_code|parent_column:filter +ExtrafieldParamHelpchkbxlst=List of values comes from a table
    Syntax: table_name:label_field:id_field::filter
    Example: c_typent:libelle:id::filter

    filter can be a simple test (eg active=1) to display only active value
    You can also use $ID$ in filter witch is the current id of current object
    To do a SELECT in filter use $SEL$
    if you want to filter on extrafields use syntax extra.fieldcode=... (where field code is the code of extrafield)

    In order to have the list depending on another complementary attribute list:
    c_typent:libelle:id:options_parent_list_code|parent_column:filter

    In order to have the list depending on another list:
    c_typent:libelle:id:parent_list_code|parent_column:filter +ExtrafieldParamHelplink=Parameters must be ObjectName:Classpath
    Syntax: ObjectName:Classpath
    Examples:
    Societe:societe/class/societe.class.php
    Contact:contact/class/contact.class.php +ExtrafieldParamHelpSeparator=Keep empty for a simple separator
    Set this to 1 for a collapsing separator (open by default for new session, then status is kept for each user session)
    Set this to 2 for a collapsing separator (collapsed by default for new session, then status is kept fore each user session) +LibraryToBuildPDF=Library used for PDF generation +LocalTaxDesc=Some countries may apply two or three taxes on each invoice line. If this is the case, choose the type for the second and third tax and its rate. Possible type are:
    1: local tax apply on products and services without vat (localtax is calculated on amount without tax)
    2: local tax apply on products and services including vat (localtax is calculated on amount + main tax)
    3: local tax apply on products without vat (localtax is calculated on amount without tax)
    4: local tax apply on products including vat (localtax is calculated on amount + main vat)
    5: local tax apply on services without vat (localtax is calculated on amount without tax)
    6: local tax apply on services including vat (localtax is calculated on amount + tax) +SMS=SMS +LinkToTestClickToDial=Enter a phone number to call to show a link to test the ClickToDial url for user %s +RefreshPhoneLink=Refresh link +LinkToTest=Clickable link generated for user %s (click phone number to test) +KeepEmptyToUseDefault=Keep empty to use default value +DefaultLink=Default link +SetAsDefault=Set as default +ValueOverwrittenByUserSetup=Warning, this value may be overwritten by user specific setup (each user can set his own clicktodial url) +ExternalModule=External module +InstalledInto=Installed into directory %s +BarcodeInitForthird-parties=Mass barcode init for third-parties +BarcodeInitForProductsOrServices=Mass barcode init or reset for products or services +CurrentlyNWithoutBarCode=Currently, you have %s record on %s %s without barcode defined. +InitEmptyBarCode=Init value for next %s empty records +EraseAllCurrentBarCode=Erase all current barcode values +ConfirmEraseAllCurrentBarCode=Are you sure you want to erase all current barcode values? +AllBarcodeReset=All barcode values have been removed +NoBarcodeNumberingTemplateDefined=No numbering barcode template enabled in the Barcode module setup. +EnableFileCache=Enable file cache +ShowDetailsInPDFPageFoot=Add more details into footer, such as company address or manager names (in addition to professional ids, company capital and VAT number). +NoDetails=No additional details in footer +DisplayCompanyInfo=Display company address +DisplayCompanyManagers=Display manager names +DisplayCompanyInfoAndManagers=Display company address and manager names +EnableAndSetupModuleCron=If you want to have this recurring invoice generated automatically, module *%s* must be enabled and correctly setup. Otherwise, generation of invoices must be done manually from this template using the *Create* button. Note that even if you enabled automatic generation, you can still safely launch manual generation. Generation of duplicates for the same period is not possible. +ModuleCompanyCodeCustomerAquarium=%s followed by customer code for a customer accounting code +ModuleCompanyCodeSupplierAquarium=%s followed by vendor code for a vendor accounting code +ModuleCompanyCodePanicum=Return an empty accounting code. +ModuleCompanyCodeDigitaria=Returns a compound accounting code according to the name of the third party. The code consists of a prefix that can be defined in the first position followed by the number of characters defined in the third party code. +ModuleCompanyCodeCustomerDigitaria=%s followed by the truncated customer name by the number of characters: %s for the customer accounting code. +ModuleCompanyCodeSupplierDigitaria=%s followed by the truncated supplier name by the number of characters: %s for the supplier accounting code. +Use3StepsApproval=By default, Purchase Orders need to be created and approved by 2 different users (one step/user to create and one step/user to approve. Note that if user has both permission to create and approve, one step/user will be enough). You can ask with this option to introduce a third step/user approval, if amount is higher than a dedicated value (so 3 steps will be necessary: 1=validation, 2=first approval and 3=second approval if amount is enough).
    Set this to empty if one approval (2 steps) is enough, set it to a very low value (0.1) if a second approval (3 steps) is always required. +UseDoubleApproval=Use a 3 steps approval when amount (without tax) is higher than... +WarningPHPMail=WARNING: It is often better to setup outgoing emails to use the email server of your provider instead of the default setup. Some email providers (like Yahoo) do not allow you to send an email from another server than their own server. Your current setup uses the server of the application to send email and not the server of your email provider, so some recipients (the one compatible with the restrictive DMARC protocol), will ask your email provider if they can accept your email and some email providers (like Yahoo) may respond "no" because the server is not theirs, so few of your sent Emails may not be accepted (be careful also of your email provider's sending quota).
    If your Email provider (like Yahoo) has this restriction, you must change Email setup to choose the other method "SMTP server" and enter the SMTP server and credentials provided by your Email provider. +WarningPHPMail2=If your email SMTP provider need to restrict email client to some IP addresses (very rare), this is the IP address of the mail user agent (MUA) for your ERP CRM application: %s. +WarningPHPMailSPF=If the domain name in your sender email address is protected by SPF (ask you email provider), you must include the following IPs in the SPF record of the DNS of your domain: %s. +ClickToShowDescription=Click to show description +DependsOn=This module needs the module(s) +RequiredBy=This module is required by module(s) +TheKeyIsTheNameOfHtmlField=This is the name of the HTML field. Technical knowledge is required to read the content of the HTML page to get the key name of a field. +PageUrlForDefaultValues=You must enter the relative path of the page URL. If you include parameters in URL, the default values will be effective if all parameters are set to same value. +PageUrlForDefaultValuesCreate=
    Example:
    For the form to create a new third party, it is %s.
    For URL of external modules installed into custom directory, do not include the "custom/", so use path like mymodule/mypage.php and not custom/mymodule/mypage.php.
    If you want default value only if url has some parameter, you can use %s +PageUrlForDefaultValuesList=
    Example:
    For the page that lists third parties, it is %s.
    For URL of external modules installed into custom directory, do not include the "custom/" so use a path like mymodule/mypagelist.php and not custom/mymodule/mypagelist.php.
    If you want default value only if url has some parameter, you can use %s +AlsoDefaultValuesAreEffectiveForActionCreate=Also note that overwritting default values for form creation works only for pages that were correctly designed (so with parameter action=create or presend...) +EnableDefaultValues=Enable customization of default values +EnableOverwriteTranslation=Enable usage of overwritten translation +GoIntoTranslationMenuToChangeThis=A translation has been found for the key with this code. To change this value, you must edit it from Home-Setup-translation. +WarningSettingSortOrder=Warning, setting a default sort order may result in a technical error when going on the list page if field is an unknown field. If you experience such an error, come back to this page to remove the default sort order and restore default behavior. +Field=Field +ProductDocumentTemplates=Document templates to generate product document +FreeLegalTextOnExpenseReports=Free legal text on expense reports +WatermarkOnDraftExpenseReports=Watermark on draft expense reports +AttachMainDocByDefault=Set this to 1 if you want to attach main document to email by default (if applicable) +FilesAttachedToEmail=Attach file +SendEmailsReminders=Send agenda reminders by emails +davDescription=Setup a WebDAV server +DAVSetup=Setup of module DAV +DAV_ALLOW_PRIVATE_DIR=Enable the generic private directory (WebDAV dedicated directory named "private" - login required) +DAV_ALLOW_PRIVATE_DIRTooltip=The generic private directory is a WebDAV directory anybody can access with its application login/pass. +DAV_ALLOW_PUBLIC_DIR=Enable the generic public directory (WebDAV dedicated directory named "public" - no login required) +DAV_ALLOW_PUBLIC_DIRTooltip=The generic public directory is a WebDAV directory anybody can access (in read and write mode), with no authorization required (login/password account). +DAV_ALLOW_ECM_DIR=Enable the DMS/ECM private directory (root directory of the DMS/ECM module - login required) +DAV_ALLOW_ECM_DIRTooltip=The root directory where all files are manually uploaded when using the DMS/ECM module. Similarly as access from the web interface, you will need a valid login/password with adecuate permissions to access it. +# Modules +Module0Name=Users & Groups +Module0Desc=Users / Employees and Groups management +Module1Name=Third Parties +Module1Desc=Companies and contacts management (customers, prospects...) +Module2Name=Commercial +Module2Desc=Commercial management +Module10Name=Accounting (simplified) +Module10Desc=Simple accounting reports (journals, turnover) based on database content. Does not use any ledger table. +Module20Name=Proposals +Module20Desc=Commercial proposal management +Module22Name=Mass Emailings +Module22Desc=Manage bulk emailing +Module23Name=Energy +Module23Desc=Monitoring the consumption of energies +Module25Name=Sales Orders +Module25Desc=Sales order management +Module30Name=Invoices +Module30Desc=Management of invoices and credit notes for customers. Management of invoices and credit notes for suppliers +Module40Name=Vendors +Module40Desc=Vendors and purchase management (purchase orders and billing of supplier invoices) +Module42Name=Debug Logs +Module42Desc=Logging facilities (file, syslog, ...). Such logs are for technical/debug purposes. +Module49Name=Editors +Module49Desc=Editor management +Module50Name=Products +Module50Desc=Management of Products +Module51Name=Mass mailings +Module51Desc=Mass paper mailing management +Module52Name=Stocks +Module52Desc=Stock management +Module53Name=Services +Module53Desc=Management of Services +Module54Name=Contracts/Subscriptions +Module54Desc=Management of contracts (services or recurring subscriptions) +Module55Name=Barcodes +Module55Desc=Barcode management +Module56Name=Telephony +Module56Desc=Telephony integration +Module57Name=Bank Direct Debit payments +Module57Desc=Management of Direct Debit payment orders. It includes generation of SEPA file for European countries. +Module58Name=ClickToDial +Module58Desc=Integration of a ClickToDial system (Asterisk, ...) +Module59Name=Bookmark4u +Module59Desc=Add function to generate Bookmark4u account from a Dolibarr account +Module60Name=Stickers +Module60Desc=Management of stickers +Module70Name=Interventions +Module70Desc=Intervention management +Module75Name=Expense and trip notes +Module75Desc=Expense and trip notes management +Module80Name=Shipments +Module80Desc=Shipments and delivery note management +Module85Name=Banks & Cash +Module85Desc=Management of bank or cash accounts +Module100Name=External Site +Module100Desc=Add a link to an external website as a main menu icon. Website is shown in a frame under the top menu. +Module105Name=Mailman and SPIP +Module105Desc=Mailman or SPIP interface for member module +Module200Name=LDAP +Module200Desc=LDAP directory synchronization +Module210Name=PostNuke +Module210Desc=PostNuke integration +Module240Name=Data exports +Module240Desc=Tool to export Dolibarr data (with assistance) +Module250Name=Data imports +Module250Desc=Tool to import data into Dolibarr (with assistance) +Module310Name=Members +Module310Desc=Foundation members management +Module320Name=RSS Feed +Module320Desc=Add a RSS feed to Dolibarr pages +Module330Name=Bookmarks & Shortcuts +Module330Desc=Create shortcuts, always accessible, to the internal or external pages to which you frequently access +Module400Name=Projects or Leads +Module400Desc=Management of projects, leads/opportunities and/or tasks. You can also assign any element (invoice, order, proposal, intervention, ...) to a project and get a transversal view from the project view. +Module410Name=Webcalendar +Module410Desc=Webcalendar integration +Module500Name=Taxes & Special Expenses +Module500Desc=Management of other expenses (sale taxes, social or fiscal taxes, dividends, ...) +Module510Name=Salaries +Module510Desc=Record and track employee payments +Module520Name=Loans +Module520Desc=Management of loans +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 +Module610Desc=Creation of product variants (color, size etc.) +Module700Name=Donations +Module700Desc=Donation management +Module770Name=Expense Reports +Module770Desc=Manage expense reports claims (transportation, meal, ...) +Module1120Name=Vendor Commercial Proposals +Module1120Desc=Request vendor commercial proposal and prices +Module1200Name=Mantis +Module1200Desc=Mantis integration +Module1520Name=Document Generation +Module1520Desc=Mass email document generation +Module1780Name=Tags/Categories +Module1780Desc=Create tags/category (products, customers, suppliers, contacts or members) +Module2000Name=WYSIWYG editor +Module2000Desc=Allow text fields to be edited/formatted using CKEditor (html) +Module2200Name=Dynamic Prices +Module2200Desc=Use maths expressions for auto-generation of prices +Module2300Name=Scheduled jobs +Module2300Desc=Scheduled jobs management (alias cron or chrono table) +Module2400Name=Events/Agenda +Module2400Desc=Track events. Log automatic events for tracking purposes or record manual events or meetings. This is the principal module for good Customer or Vendor Relationship Management. +Module2500Name=DMS / ECM +Module2500Desc=Document Management System / Electronic Content Management. Automatic organization of your generated or stored documents. Share them when you need. +Module2600Name=API/Web services (SOAP server) +Module2600Desc=Enable the Dolibarr SOAP server providing API services +Module2610Name=API/Web services (REST server) +Module2610Desc=Enable the Dolibarr REST server providing API services +Module2660Name=Call WebServices (SOAP client) +Module2660Desc=Enable the Dolibarr web services client (Can be used to push data/requests to external servers. Only Purchase orders are currently supported.) +Module2700Name=Gravatar +Module2700Desc=Use online Gravatar service (www.gravatar.com) to show photo of users/members (found with their emails). Needs Internet access +Module2800Desc=FTP Client +Module2900Name=GeoIPMaxmind +Module2900Desc=GeoIP Maxmind conversions capabilities +Module3200Name=Unalterable Archives +Module3200Desc=Enable an unalterable log of business events. Events are archived in real-time. The log is a read-only table of chained events that can be exported. This module may be mandatory for some countries. +Module4000Name=HRM +Module4000Desc=Human resources management (management of department, employee contracts and feelings) +Module5000Name=Multi-company +Module5000Desc=Allows you to manage multiple companies +Module6000Name=Workflow +Module6000Desc=Workflow management (automatic creation of object and/or automatic status change) +Module10000Name=Websites +Module10000Desc=Create websites (public) with a WYSIWYG editor. This is a webmaster or developer oriented CMS (it is better to know HTML and CSS language). Just setup your web server (Apache, Nginx, ...) to point to the dedicated Dolibarr directory to have it online on the internet with your own domain name. +Module20000Name=Leave Request Management +Module20000Desc=Define and track employee leave requests +Module39000Name=Product Lots +Module39000Desc=Lots, serial numbers, eat-by/sell-by date management for products +Module40000Name=Multicurrency +Module40000Desc=Use alternative currencies in prices and documents +Module50000Name=PayBox +Module50000Desc=Offer customers a PayBox online payment page (credit/debit cards). This can be used to allow your customers to make ad-hoc payments or payments related to a specific Dolibarr object (invoice, order etc...) +Module50100Name=POS SimplePOS +Module50100Desc=Point of Sale module SimplePOS (simple POS). +Module50150Name=POS TakePOS +Module50150Desc=Point of Sale module TakePOS (touchscreen POS, for shops, bars or restaurants). +Module50200Name=Paypal +Module50200Desc=Offer customers a PayPal online payment page (PayPal account or credit/debit cards). This can be used to allow your customers to make ad-hoc payments or payments related to a specific Dolibarr object (invoice, order etc...) +Module50300Name=Stripe +Module50300Desc=Offer customers a Stripe online payment page (credit/debit cards). This can be used to allow your customers to make ad-hoc payments or payments related to a specific Dolibarr object (invoice, order etc...) +Module50400Name=Accounting (double entry) +Module50400Desc=Accounting management (double entries, support general and auxiliary ledgers). Export the ledger in several other accounting software formats. +Module54000Name=PrintIPP +Module54000Desc=Direct print (without opening the documents) using Cups IPP interface (Printer must be visible from server, and CUPS must be installed on server). +Module55000Name=Poll, Survey or Vote +Module55000Desc=Create online polls, surveys or votes (like Doodle, Studs, RDVz etc...) +Module59000Name=Margins +Module59000Desc=Module to manage margins +Module60000Name=Commissions +Module60000Desc=Module to manage commissions +Module62000Name=Incoterms +Module62000Desc=Add features to manage Incoterms +Module63000Name=Resources +Module63000Desc=Manage resources (printers, cars, rooms, ...) for allocating to events +Permission11=Read customer invoices +Permission12=Create/modify customer invoices +Permission13=Unvalidate customer invoices +Permission14=Validate customer invoices +Permission15=Send customer invoices by email +Permission16=Create payments for customer invoices +Permission19=Delete customer invoices +Permission21=Read commercial proposals +Permission22=Create/modify commercial proposals +Permission24=Validate commercial proposals +Permission25=Send commercial proposals +Permission26=Close commercial proposals +Permission27=Delete commercial proposals +Permission28=Export commercial proposals +Permission31=Read products +Permission32=Create/modify products +Permission34=Delete products +Permission36=See/manage hidden products +Permission38=Export products +Permission41=Read projects and tasks (shared project and projects I'm contact for). Can also enter time consumed, for me or my hierarchy, on assigned tasks (Timesheet) +Permission42=Create/modify projects (shared project and projects I'm contact for). Can also create tasks and assign users to project and tasks +Permission44=Delete projects (shared project and projects I'm contact for) +Permission45=Export projects +Permission61=Read interventions +Permission62=Create/modify interventions +Permission64=Delete interventions +Permission67=Export interventions +Permission71=Read members +Permission72=Create/modify members +Permission74=Delete members +Permission75=Setup types of membership +Permission76=Export data +Permission78=Read subscriptions +Permission79=Create/modify subscriptions +Permission81=Read customers orders +Permission82=Create/modify customers orders +Permission84=Validate customers orders +Permission86=Send customers orders +Permission87=Close customers orders +Permission88=Cancel customers orders +Permission89=Delete customers orders +Permission91=Read social or fiscal taxes and vat +Permission92=Create/modify social or fiscal taxes and vat +Permission93=Delete social or fiscal taxes and vat +Permission94=Export social or fiscal taxes +Permission95=Read reports +Permission101=Read sendings +Permission102=Create/modify sendings +Permission104=Validate sendings +Permission106=Export sendings +Permission109=Delete sendings +Permission111=Read financial accounts +Permission112=Create/modify/delete and compare transactions +Permission113=Setup financial accounts (create, manage categories) +Permission114=Reconcile transactions +Permission115=Export transactions and account statements +Permission116=Transfers between accounts +Permission117=Manage checks dispatching +Permission121=Read third parties linked to user +Permission122=Create/modify third parties linked to user +Permission125=Delete third parties linked to user +Permission126=Export third parties +Permission141=Read all projects and tasks (also private projects for which I am not a contact) +Permission142=Create/modify all projects and tasks (also private projects for which I am not a contact) +Permission144=Delete all projects and tasks (also private projects i am not contact for) +Permission146=Read providers +Permission147=Read stats +Permission151=Read direct debit payment orders +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=Read contracts/subscriptions +Permission162=Create/modify contracts/subscriptions +Permission163=Activate a service/subscription of a contract +Permission164=Disable a service/subscription of a contract +Permission165=Delete contracts/subscriptions +Permission167=Export contracts +Permission171=Read trips and expenses (yours and your subordinates) +Permission172=Create/modify trips and expenses +Permission173=Delete trips and expenses +Permission174=Read all trips and expenses +Permission178=Export trips and expenses +Permission180=Read suppliers +Permission181=Read purchase orders +Permission182=Create/modify purchase orders +Permission183=Validate purchase orders +Permission184=Approve purchase orders +Permission185=Order or cancel purchase orders +Permission186=Receive purchase orders +Permission187=Close purchase orders +Permission188=Cancel purchase orders +Permission192=Create lines +Permission193=Cancel lines +Permission194=Read the bandwidth lines +Permission202=Create ADSL connections +Permission203=Order connections orders +Permission204=Order connections +Permission205=Manage connections +Permission206=Read connections +Permission211=Read Telephony +Permission212=Order lines +Permission213=Activate line +Permission214=Setup Telephony +Permission215=Setup providers +Permission221=Read emailings +Permission222=Create/modify emailings (topic, recipients...) +Permission223=Validate emailings (allows sending) +Permission229=Delete emailings +Permission237=View recipients and info +Permission238=Manually send mailings +Permission239=Delete mailings after validation or sent +Permission241=Read categories +Permission242=Create/modify categories +Permission243=Delete categories +Permission244=See the contents of the hidden categories +Permission251=Read other users and groups +PermissionAdvanced251=Read other users +Permission252=Read permissions of other users +Permission253=Create/modify other users, groups and permissions +PermissionAdvanced253=Create/modify internal/external users and permissions +Permission254=Create/modify external users only +Permission255=Modify other users password +Permission256=Delete or disable other users +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). +Permission271=Read CA +Permission272=Read invoices +Permission273=Issue invoices +Permission281=Read contacts +Permission282=Create/modify contacts +Permission283=Delete contacts +Permission286=Export contacts +Permission291=Read tariffs +Permission292=Set permissions on the tariffs +Permission293=Modify customer's tariffs +Permission300=Read barcodes +Permission301=Create/modify barcodes +Permission302=Delete barcodes +Permission311=Read services +Permission312=Assign service/subscription to contract +Permission331=Read bookmarks +Permission332=Create/modify bookmarks +Permission333=Delete bookmarks +Permission341=Read its own permissions +Permission342=Create/modify his own user information +Permission343=Modify his own password +Permission344=Modify its own permissions +Permission351=Read groups +Permission352=Read groups permissions +Permission353=Create/modify groups +Permission354=Delete or disable groups +Permission358=Export users +Permission401=Read discounts +Permission402=Create/modify discounts +Permission403=Validate discounts +Permission404=Delete discounts +Permission430=Use Debug Bar +Permission511=Read payments of salaries +Permission512=Create/modify payments of salaries +Permission514=Delete payments of salaries +Permission517=Export salaries +Permission520=Read Loans +Permission522=Create/modify loans +Permission524=Delete loans +Permission525=Access loan calculator +Permission527=Export loans +Permission531=Read services +Permission532=Create/modify services +Permission534=Delete services +Permission536=See/manage hidden services +Permission538=Export services +Permission650=Read Bills of Materials +Permission651=Create/Update Bills of Materials +Permission652=Delete Bills of Materials +Permission701=Read donations +Permission702=Create/modify donations +Permission703=Delete donations +Permission771=Read expense reports (yours and your subordinates) +Permission772=Create/modify expense reports +Permission773=Delete expense reports +Permission774=Read all expense reports (even for user not subordinates) +Permission775=Approve expense reports +Permission776=Pay expense reports +Permission779=Export expense reports +Permission1001=Read stocks +Permission1002=Create/modify warehouses +Permission1003=Delete warehouses +Permission1004=Read stock movements +Permission1005=Create/modify stock movements +Permission1101=Read delivery receipts +Permission1102=Create/modify delivery receipts +Permission1104=Validate delivery receipts +Permission1109=Delete delivery receipts +Permission1121=Read supplier proposals +Permission1122=Create/modify supplier proposals +Permission1123=Validate supplier proposals +Permission1124=Send supplier proposals +Permission1125=Delete supplier proposals +Permission1126=Close supplier price requests +Permission1181=Read suppliers +Permission1182=Read purchase orders +Permission1183=Create/modify purchase orders +Permission1184=Validate purchase orders +Permission1185=Approve purchase orders +Permission1186=Order purchase orders +Permission1187=Acknowledge receipt of purchase orders +Permission1188=Delete purchase orders +Permission1190=Approve (second approval) purchase orders +Permission1201=Get result of an export +Permission1202=Create/Modify an export +Permission1231=Read vendor invoices +Permission1232=Create/modify vendor invoices +Permission1233=Validate vendor invoices +Permission1234=Delete vendor invoices +Permission1235=Send vendor invoices by email +Permission1236=Export vendor invoices, attributes and payments +Permission1237=Export purchase orders and their details +Permission1251=Run mass imports of external data into database (data load) +Permission1321=Export customer invoices, attributes and payments +Permission1322=Reopen a paid bill +Permission1421=Export sales orders and attributes +Permission2401=Read actions (events or tasks) linked to his user account (if owner of event or just assigned to) +Permission2402=Create/modify actions (events or tasks) linked to his user account (if owner of event) +Permission2403=Delete actions (events or tasks) linked to his user account (if owner of event) +Permission2411=Read actions (events or tasks) of others +Permission2412=Create/modify actions (events or tasks) of others +Permission2413=Delete actions (events or tasks) of others +Permission2414=Export actions/tasks of others +Permission2501=Read/Download documents +Permission2502=Download documents +Permission2503=Submit or delete documents +Permission2515=Setup documents directories +Permission2801=Use FTP client in read mode (browse and download only) +Permission2802=Use FTP client in write mode (delete or upload files) +Permission3200=Read archived events and fingerprints +Permission4001=See employees +Permission4002=Create employees +Permission4003=Delete employees +Permission4004=Export employees +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. +Permission10005=Delete website content +Permission20001=Read leave requests (your leave and those of your subordinates) +Permission20002=Create/modify your leave requests (your leave and those of your subordinates) +Permission20003=Delete leave requests +Permission20004=Read all leave requests (even of user not subordinates) +Permission20005=Create/modify leave requests for everybody (even of user not subordinates) +Permission20006=Admin leave requests (setup and update balance) +Permission20007=Approve leave requests +Permission23001=Read Scheduled job +Permission23002=Create/update Scheduled job +Permission23003=Delete Scheduled job +Permission23004=Execute Scheduled job +Permission50101=Use Point of Sale +Permission50201=Read transactions +Permission50202=Import transactions +Permission50401=Bind products and invoices with accounting accounts +Permission50411=Read operations in ledger +Permission50412=Write/Edit operations in ledger +Permission50414=Delete operations in ledger +Permission50415=Delete all operations by year and journal in ledger +Permission50418=Export operations of the ledger +Permission50420=Report and export reports (turnover, balance, journals, ledger) +Permission50430=Define fiscal periods. Validate transactions and close fiscal periods. +Permission50440=Manage chart of accounts, setup of accountancy +Permission51001=Read assets +Permission51002=Create/Update assets +Permission51003=Delete assets +Permission51005=Setup types of asset +Permission54001=Print +Permission55001=Read polls +Permission55002=Create/modify polls +Permission59001=Read commercial margins +Permission59002=Define commercial margins +Permission59003=Read every user margin +Permission63001=Read resources +Permission63002=Create/modify resources +Permission63003=Delete resources +Permission63004=Link resources to agenda events +DictionaryCompanyType=Third-party types +DictionaryCompanyJuridicalType=Third-party legal entities +DictionaryProspectLevel=Prospect potential +DictionaryCanton=States/Provinces +DictionaryRegion=Regions +DictionaryCountry=Countries +DictionaryCurrency=Currencies +DictionaryCivility=Honorific titles +DictionaryActions=Types of agenda events +DictionarySocialContributions=Types of social or fiscal taxes +DictionaryVAT=VAT Rates or Sales Tax Rates +DictionaryRevenueStamp=Amount of tax stamps +DictionaryPaymentConditions=Payment Terms +DictionaryPaymentModes=Payment Modes +DictionaryTypeContact=Contact/Address types +DictionaryTypeOfContainer=Website - Type of website pages/containers +DictionaryEcotaxe=Ecotax (WEEE) +DictionaryPaperFormat=Paper formats +DictionaryFormatCards=Card formats +DictionaryFees=Expense report - Types of expense report lines +DictionarySendingMethods=Shipping methods +DictionaryStaff=Number of Employees +DictionaryAvailability=Delivery delay +DictionaryOrderMethods=Ordering methods +DictionarySource=Origin of proposals/orders +DictionaryAccountancyCategory=Personalized groups for reports +DictionaryAccountancysystem=Models for chart of accounts +DictionaryAccountancyJournal=Accounting journals +DictionaryEMailTemplates=Email Templates +DictionaryUnits=Units +DictionaryMeasuringUnits=Measuring Units +DictionarySocialNetworks=Social Networks +DictionaryProspectStatus=Prospect status +DictionaryHolidayTypes=Types of leave +DictionaryOpportunityStatus=Lead status for project/lead +DictionaryExpenseTaxCat=Expense report - Transportation categories +DictionaryExpenseTaxRange=Expense report - Range by transportation category +SetupSaved=Setup saved +SetupNotSaved=Setup not saved +BackToModuleList=Back to Module list +BackToDictionaryList=Back to Dictionaries list +TypeOfRevenueStamp=Type of tax stamp +VATManagement=Sales Tax Management +VATIsUsedDesc=By default when creating prospects, invoices, orders etc. the Sales Tax rate follows the active standard rule:
    If the seller is not subject to Sales tax, then Sales tax defaults to 0. End of rule.
    If the (seller's country = buyer's country), then the Sales tax by default equals the Sales tax of the product in the seller's country. End of rule.
    If the seller and buyer are both in the European Community and goods are transport-related products (haulage, shipping, airline), the default VAT is 0. This rule is dependant on the seller's country - please consult with your accountant. The VAT should be paid by the buyer to the customs office in their country and not to the seller. End of rule.
    If the seller and buyer are both in the European Community and the buyer is not a company (with a registered intra-Community VAT number) then the VAT defaults to the VAT rate of the seller's country. End of rule.
    If the seller and buyer are both in the European Community and the buyer is a company (with a registered intra-Community VAT number), then the VAT is 0 by default. End of rule.
    In any other case the proposed default is Sales tax=0. End of rule. +VATIsNotUsedDesc=By default the proposed Sales tax is 0 which can be used for cases like associations, individuals or small companies. +VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. +VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. +##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax +LTRate=Rate +LocalTax1IsNotUsed=Do not use second tax +LocalTax1IsUsedDesc=Use a second type of tax (other than first one) +LocalTax1IsNotUsedDesc=Do not use other type of tax (other than first one) +LocalTax1Management=Second type of tax +LocalTax1IsUsedExample= +LocalTax1IsNotUsedExample= +LocalTax2IsNotUsed=Do not use third tax +LocalTax2IsUsedDesc=Use a third type of tax (other than first one) +LocalTax2IsNotUsedDesc=Do not use other type of tax (other than first one) +LocalTax2Management=Third type of tax +LocalTax2IsUsedExample= +LocalTax2IsNotUsedExample= +LocalTax1ManagementES=RE Management +LocalTax1IsUsedDescES=The RE rate by default when creating prospects, invoices, orders etc. follow the active standard rule:
    If the buyer is not subjected to RE, RE by default=0. End of rule.
    If the buyer is subjected to RE then the RE by default. End of rule.
    +LocalTax1IsNotUsedDescES=By default the proposed RE is 0. End of rule. +LocalTax1IsUsedExampleES=In Spain they are professionals subject to some specific sections of the Spanish IAE. +LocalTax1IsNotUsedExampleES=In Spain they are professional and societies and subject to certain sections of the Spanish IAE. +LocalTax2ManagementES=IRPF Management +LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices, orders etc. follow the active standard rule:
    If the seller is not subjected to IRPF, then IRPF by default=0. End of rule.
    If the seller is subjected to IRPF then the IRPF by default. End of rule.
    +LocalTax2IsNotUsedDescES=By default the proposed IRPF is 0. End of rule. +LocalTax2IsUsedExampleES=In Spain, freelancers and independent professionals who provide services and companies who have chosen the tax system of modules. +LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) +CalcLocaltax=Reports on local taxes +CalcLocaltax1=Sales - Purchases +CalcLocaltax1Desc=Local Taxes reports are calculated with the difference between localtaxes sales and localtaxes purchases +CalcLocaltax2=Purchases +CalcLocaltax2Desc=Local Taxes reports are the total of localtaxes purchases +CalcLocaltax3=Sales +CalcLocaltax3Desc=Local Taxes reports are the total of localtaxes sales +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax +LabelUsedByDefault=Label used by default if no translation can be found for code +LabelOnDocuments=Label on documents +LabelOrTranslationKey=Label or translation key +ValueOfConstantKey=Value of a configuration constant +NbOfDays=No. of days +AtEndOfMonth=At end of month +CurrentNext=Current/Next +Offset=Offset +AlwaysActive=Always active +Upgrade=Upgrade +MenuUpgrade=Upgrade / Extend +AddExtensionThemeModuleOrOther=Deploy/install external app/module +WebServer=Web server +DocumentRootServer=Web server's root directory +DataRootServer=Data files directory +IP=IP +Port=Port +VirtualServerName=Virtual server name +OS=OS +PhpWebLink=Web-Php link +Server=Server +Database=Database +DatabaseServer=Database host +DatabaseName=Database name +DatabasePort=Database port +DatabaseUser=Database user +DatabasePassword=Database password +Tables=Tables +TableName=Table name +NbOfRecord=No. of records +Host=Server +DriverType=Driver type +SummarySystem=System information summary +SummaryConst=List of all Dolibarr setup parameters +MenuCompanySetup=Company/Organization +DefaultMenuManager= Standard menu manager +DefaultMenuSmartphoneManager=Smartphone menu manager +Skin=Skin theme +DefaultSkin=Default skin theme +MaxSizeList=Max length for list +DefaultMaxSizeList=Default max length for lists +DefaultMaxSizeShortList=Default max length for short lists (i.e. in customer card) +MessageOfDay=Message of the day +MessageLogin=Login page message +LoginPage=Login page +BackgroundImageLogin=Background image +PermanentLeftSearchForm=Permanent search form on left menu +DefaultLanguage=Default language +EnableMultilangInterface=Enable multilanguage support +EnableShowLogo=Show the company logo in the menu +CompanyInfo=Company/Organization +CompanyIds=Company/Organization identities +CompanyName=Name +CompanyAddress=Address +CompanyZip=Zip +CompanyTown=Town +CompanyCountry=Country +CompanyCurrency=Main currency +CompanyObject=Object of the company +IDCountry=ID country +Logo=Logo +LogoDesc=Main logo of company. Will be used into generated documents (PDF, ...) +LogoSquarred=Logo (squarred) +LogoSquarredDesc=Must be a squarred icon (width = height). This logo will be used as the favorite icon or other need like for the top menu bar (if not disabled into display setup). +DoNotSuggestPaymentMode=Do not suggest +NoActiveBankAccountDefined=No active bank account defined +OwnerOfBankAccount=Owner of bank account %s +BankModuleNotActive=Bank accounts module not enabled +ShowBugTrackLink=Show link "%s" +Alerts=Alerts +DelaysOfToleranceBeforeWarning=Delay before displaying a warning alert for: +DelaysOfToleranceDesc=Set the delay before an alert icon %s is shown onscreen for the late element. +Delays_MAIN_DELAY_ACTIONS_TODO=Planned events (agenda events) not completed +Delays_MAIN_DELAY_PROJECT_TO_CLOSE=Project not closed in time +Delays_MAIN_DELAY_TASKS_TODO=Planned task (project tasks) not completed +Delays_MAIN_DELAY_ORDERS_TO_PROCESS=Order not processed +Delays_MAIN_DELAY_SUPPLIER_ORDERS_TO_PROCESS=Purchase order not processed +Delays_MAIN_DELAY_PROPALS_TO_CLOSE=Proposal not closed +Delays_MAIN_DELAY_PROPALS_TO_BILL=Proposal not billed +Delays_MAIN_DELAY_NOT_ACTIVATED_SERVICES=Service to activate +Delays_MAIN_DELAY_RUNNING_SERVICES=Expired service +Delays_MAIN_DELAY_SUPPLIER_BILLS_TO_PAY=Unpaid vendor invoice +Delays_MAIN_DELAY_CUSTOMER_BILLS_UNPAYED=Unpaid customer invoice +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 +Delays_MAIN_DELAY_HOLIDAYS=Leave requests 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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. +SetupDescription5=Other Setup menu entries manage optional parameters. +LogEvents=Security audit events +Audit=Audit +InfoDolibarr=About Dolibarr +InfoBrowser=About Browser +InfoOS=About OS +InfoWebServer=About Web Server +InfoDatabase=About Database +InfoPHP=About PHP +InfoPerf=About Performances +BrowserName=Browser name +BrowserOS=Browser OS +ListOfSecurityEvents=List of Dolibarr security events +SecurityEventsPurged=Security events purged +LogEventDesc=Enable logging for specific security events. Administrators the log via menu %s - %s. Warning, this feature can generate a large amount of data in the database. +AreaForAdminOnly=Setup parameters can be set by administrator users only. +SystemInfoDesc=System information is miscellaneous technical information you get in read only mode and visible for administrators only. +SystemAreaForAdminOnly=This area is available to administrator users only. Dolibarr user permissions cannot change this restriction. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. +AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. +AccountantFileNumber=Accountant code +DisplayDesc=Parameters affecting the look and behaviour of Dolibarr can be modified here. +AvailableModules=Available app/modules +ToActivateModule=To activate modules, go on setup Area (Home->Setup->Modules). +SessionTimeOut=Time out for session +SessionExplanation=This number guarantees that the session will never expire before this delay, if the session cleaner is done by Internal PHP session cleaner (and nothing else). Internal PHP session cleaner does not guarantee that the session will expire after this delay. It will expire, after this delay, and when the session cleaner is run, so every %s/%s access, but only during access made by other sessions (if value is 0, it means clearing of session is done only by an external process).
    Note: on some servers with an external session cleaning mechanism (cron under debian, ubuntu ...), the sessions can be destroyed after a period defined by an external setup, no matter what the value entered here is. +TriggersAvailable=Available triggers +TriggersDesc=Triggers are files that will modify the behavior of Dolibarr workflow once copied into the directory htdocs/core/triggers. They realize new actions, activated on Dolibarr events (new company creation, invoice validation, ...). +TriggerDisabledByName=Triggers in this file are disabled by the -NORUN suffix in their name. +TriggerDisabledAsModuleDisabled=Triggers in this file are disabled as module %s is disabled. +TriggerAlwaysActive=Triggers in this file are always active, whatever are the activated Dolibarr modules. +TriggerActiveAsModuleActive=Triggers in this file are active as module %s is enabled. +GeneratedPasswordDesc=Choose the method to be used for auto-generated passwords. +DictionaryDesc=Insert all reference data. You can add your values to the default. +ConstDesc=This page allows you to edit (override) parameters not available in other pages. These are mostly reserved parameters for developers/advanced troubleshooting only. +MiscellaneousDesc=All other security related parameters are defined here. +LimitsSetup=Limits/Precision setup +LimitsDesc=You can define limits, precisions and optimizations used by Dolibarr here +MAIN_MAX_DECIMALS_UNIT=Max. decimals for unit prices +MAIN_MAX_DECIMALS_TOT=Max. decimals for total prices +MAIN_MAX_DECIMALS_SHOWN=Max. decimals for prices shown on screen. Add an ellipsis ... after this parameter (e.g. "2...") if you want to see "..." suffixed to the truncated price. +MAIN_ROUNDING_RULE_TOT=Step of rounding range (for countries where rounding is done on something other than base 10. For example, put 0.05 if rounding is done by 0.05 steps) +UnitPriceOfProduct=Net unit price of a product +TotalPriceAfterRounding=Total price (excl/vat/incl tax) after rounding +ParameterActiveForNextInputOnly=Parameter effective for next input only +NoEventOrNoAuditSetup=No security event has been logged. This is normal if Audit has not been enabled in the "Setup - Security - Events" page. +NoEventFoundWithCriteria=No security event has been found for this search criteria. +SeeLocalSendMailSetup=See your local sendmail setup +BackupDesc=A complete backup of a Dolibarr installation requires two steps. +BackupDesc2=Backup the contents of the "documents" directory (%s) containing all uploaded and generated files. This will also include all the dump files generated in Step 1. This operation may last several minutes. +BackupDesc3=Backup the structure and contents of your database (%s) into a dump file. For this, you can use the following assistant. +BackupDescX=The archived directory should be stored in a secure place. +BackupDescY=The generated dump file should be stored in a secure place. +BackupPHPWarning=Backup cannot be guaranteed with this method. Previous one recommended. +RestoreDesc=To restore a Dolibarr backup, two steps are required. +RestoreDesc2=Restore the backup file (zip file for example) of the "documents" directory to a new Dolibarr installation or into this current documents directory (%s). +RestoreDesc3=Restore the database structure and data from a backup dump file into the database of the new Dolibarr installation or into the database of this current installation (%s). Warning, once the restore is complete, you must use a login/password, that existed from the backup time/installation to connect again.
    To restore a backup database into this current installation, you can follow this assistant. +RestoreMySQL=MySQL import +ForcedToByAModule= This rule is forced to %s by an activated module +PreviousDumpFiles=Existing backup files +PreviousArchiveFiles=Existing archive files +WeekStartOnDay=First day of the week +RunningUpdateProcessMayBeRequired=Running the upgrade process seems to be required (Program version %s differs from Database version %s) +YouMustRunCommandFromCommandLineAfterLoginToUser=You must run this command from command line after login to a shell with user %s or you must add -W option at end of command line to provide %s password. +YourPHPDoesNotHaveSSLSupport=SSL functions not available in your PHP +DownloadMoreSkins=More skins to download +SimpleNumRefModelDesc=Returns the reference number with format %syymm-nnnn where yy is year, mm is month and nnnn is sequential with no reset +ShowProfIdInAddress=Show professional id with addresses +ShowVATIntaInAddress=Hide intra-Community VAT number with addresses +TranslationUncomplete=Partial translation +MAIN_DISABLE_METEO=Disable meteorological view +MeteoStdMod=Standard mode +MeteoStdModEnabled=Standard mode enabled +MeteoPercentageMod=Percentage mode +MeteoPercentageModEnabled=Percentage mode enabled +MeteoUseMod=Click to use %s +TestLoginToAPI=Test login to API +ProxyDesc=Some features of Dolibarr require internet access. Define here the internet connection parameters such as access through a proxy server if necessary. +ExternalAccess=External/Internet Access +MAIN_PROXY_USE=Use a proxy server (otherwise access is direct to the internet) +MAIN_PROXY_HOST=Proxy server: Name/Address +MAIN_PROXY_PORT=Proxy server: Port +MAIN_PROXY_USER=Proxy server: Login/User +MAIN_PROXY_PASS=Proxy server: Password +DefineHereComplementaryAttributes=Define here any additional/custom attributes that you want to be included for: %s +ExtraFields=Complementary attributes +ExtraFieldsLines=Complementary attributes (lines) +ExtraFieldsLinesRec=Complementary attributes (templates invoices lines) +ExtraFieldsSupplierOrdersLines=Complementary attributes (order lines) +ExtraFieldsSupplierInvoicesLines=Complementary attributes (invoice lines) +ExtraFieldsThirdParties=Complementary attributes (third party) +ExtraFieldsContacts=Complementary attributes (contacts/address) +ExtraFieldsMember=Complementary attributes (member) +ExtraFieldsMemberType=Complementary attributes (member type) +ExtraFieldsCustomerInvoices=Complementary attributes (invoices) +ExtraFieldsCustomerInvoicesRec=Complementary attributes (templates invoices) +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). +PathToDocuments=Path to documents +PathDirectory=Directory +SendmailOptionMayHurtBuggedMTA=Feature to send mails using method "PHP mail direct" will generate a mail message that might not be parsed correctly by some receiving mail servers. The result is that some mails can't be read by people hosted by those bugged platforms. This is the case for some Internet providers (Ex: Orange in France). This is not a problem with Dolibarr or PHP but with the receiving mail server. You can however add an option MAIN_FIX_FOR_BUGGED_MTA to 1 in Setup - Other to modify Dolibarr to avoid this. However, you may experience problems with other servers that strictly use the SMTP standard. The other solution (recommended) is to use the method "SMTP socket library" which has no disadvantages. +TranslationSetup=Setup of translation +TranslationKeySearch=Search a translation key or string +TranslationOverwriteKey=Overwrite a translation string +TranslationDesc=How to set the display language:
    * Default/Systemwide: menu Home -> Setup -> Display
    * Per user: Click on the username at the top of the screen and modify the User Display Setup tab on the user card. +TranslationOverwriteDesc=You can also override strings filling the following table. Choose your language from "%s" dropdown, insert the translation key string into "%s" and your new translation into "%s" +TranslationOverwriteDesc2=You can use the other tab to help you know which translation key to use +TranslationString=Translation string +CurrentTranslationString=Current translation string +WarningAtLeastKeyOrTranslationRequired=A search criteria is required at least for key or translation string +NewTranslationStringToShow=New translation string to show +OriginalValueWas=The original translation is overwritten. Original value was:

    %s +TransKeyWithoutOriginalValue=You forced a new translation for the translation key '%s' that does not exist in any language files +TotalNumberOfActivatedModules=Activated application/modules: %s / %s +YouMustEnableOneModule=You must at least enable 1 module +ClassNotFoundIntoPathWarning=Class %s not found in PHP path +YesInSummer=Yes in summer +OnlyFollowingModulesAreOpenedToExternalUsers=Note, only the following modules are available to external users (irrespective of the permissions of such users) and only if permissions are granted:
    +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. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. +SearchOptim=Search optimization +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. +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. +FieldEdition=Edition of field %s +FillThisOnlyIfRequired=Example: +2 (fill only if timezone offset problems are experienced) +GetBarCode=Get barcode +NumberingModules=Numbering models +##### Module password generation +PasswordGenerationStandard=Return a password generated according to internal Dolibarr algorithm: 8 characters containing shared numbers and characters in lowercase. +PasswordGenerationNone=Do not suggest a generated password. Password must be typed in manually. +PasswordGenerationPerso=Return a password according to your personally defined configuration. +SetupPerso=According to your configuration +PasswordPatternDesc=Password pattern description +##### Users setup ##### +RuleForGeneratedPasswords=Rules to generate and validate passwords +DisableForgetPasswordLinkOnLogonPage=Do not show the "Password Forgotten" link on the Login page +UsersSetup=Users module setup +UserMailRequired=Email required to create a new user +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record +##### HRM setup ##### +HRMSetup=HRM module setup +##### Company setup ##### +CompanySetup=Companies module setup +CompanyCodeChecker=Options for automatic generation of customer/vendor codes +AccountCodeManager=Options for automatic generation of customer/vendor accounting codes +NotificationsDesc=Email notifications can be sent automatically for some Dolibarr events.
    Recipients of notifications can be defined: +NotificationsDescUser=* per user, one user at a time. +NotificationsDescContact=* per third-party contacts (customers or vendors), one contact at a time. +NotificationsDescGlobal=* or by setting global email addresses in this setup page. +ModelModules=Document Templates +DocumentModelOdt=Generate documents from OpenDocument templates (.ODT / .ODS files from LibreOffice, OpenOffice, KOffice, TextEdit,...) +WatermarkOnDraft=Watermark on draft document +JSOnPaimentBill=Activate feature to autofill payment lines on payment form +CompanyIdProfChecker=Rules for Professional IDs +MustBeUnique=Must be unique? +MustBeMandatory=Mandatory to create third parties (if VAT number or type of company defined) ? +MustBeInvoiceMandatory=Mandatory to validate invoices? +TechnicalServicesProvided=Technical services provided +#####DAV ##### +WebDAVSetupDesc=This is the link to access the WebDAV directory. It contains a "public" dir open to any user knowing the URL (if public directory access allowed) and a "private" directory that needs an existing login account/password for access. +WebDavServer=Root URL of %s server: %s +##### Webcal setup ##### +WebCalUrlForVCalExport=An export link to %s format is available at following link: %s +##### Invoices ##### +BillsSetup=Invoices module setup +BillsNumberingModule=Invoices and credit notes numbering model +BillsPDFModules=Invoice documents models +BillsPDFModulesAccordindToInvoiceType=Invoice documents models according to invoice type +PaymentsPDFModules=Payment documents models +ForceInvoiceDate=Force invoice date to validation date +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice +SuggestPaymentByRIBOnAccount=Suggest payment by withdrawal on account +SuggestPaymentByChequeToAddress=Suggest payment by check to +FreeLegalTextOnInvoices=Free text on invoices +WatermarkOnDraftInvoices=Watermark on draft invoices (none if empty) +PaymentsNumberingModule=Payments numbering model +SuppliersPayment=Vendor payments +SupplierPaymentSetup=Vendor payments setup +##### Proposals ##### +PropalSetup=Commercial proposals module setup +ProposalsNumberingModules=Commercial proposal numbering models +ProposalsPDFModules=Commercial proposal documents models +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal +FreeLegalTextOnProposal=Free text on commercial proposals +WatermarkOnDraftProposal=Watermark on draft commercial proposals (none if empty) +BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal +##### SupplierProposal ##### +SupplierProposalSetup=Price requests suppliers module setup +SupplierProposalNumberingModules=Price requests suppliers numbering models +SupplierProposalPDFModules=Price requests suppliers documents models +FreeLegalTextOnSupplierProposal=Free text on price requests suppliers +WatermarkOnDraftSupplierProposal=Watermark on draft price requests suppliers (none if empty) +BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_PROPOSAL=Ask for bank account destination of price request +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 ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order +OrdersSetup=Sales Orders management setup +OrdersNumberingModules=Orders numbering models +OrdersModelModule=Order documents models +FreeLegalTextOnOrders=Free text on orders +WatermarkOnDraftOrders=Watermark on draft orders (none if empty) +ShippableOrderIconInList=Add an icon in Orders list which indicate if order is shippable +BANK_ASK_PAYMENT_BANK_DURING_ORDER=Ask for bank account destination of order +##### Interventions ##### +InterventionsSetup=Interventions module setup +FreeLegalTextOnInterventions=Free text on intervention documents +FicheinterNumberingModules=Intervention numbering models +TemplatePDFInterventions=Intervention card documents models +WatermarkOnDraftInterventionCards=Watermark on intervention card documents (none if empty) +##### Contracts ##### +ContractsSetup=Contracts/Subscriptions module setup +ContractsNumberingModules=Contracts numbering modules +TemplatePDFContracts=Contracts documents models +FreeLegalTextOnContracts=Free text on contracts +WatermarkOnDraftContractCards=Watermark on draft contracts (none if empty) +##### Members ##### +MembersSetup=Members module setup +MemberMainOptions=Main options +AdherentLoginRequired= Manage a Login for each member +AdherentMailRequired=Email required to create a new member +MemberSendInformationByMailByDefault=Checkbox to send mail confirmation to members (validation or new subscription) is on by default +VisitorCanChooseItsPaymentMode=Visitor can choose from available payment modes +MEMBER_REMINDER_EMAIL=Enable automatic reminder by email of expired subscriptions. Note: Module %s must be enabled and correctly setup to send reminders. +##### LDAP setup ##### +LDAPSetup=LDAP Setup +LDAPGlobalParameters=Global parameters +LDAPUsersSynchro=Users +LDAPGroupsSynchro=Groups +LDAPContactsSynchro=Contacts +LDAPMembersSynchro=Members +LDAPMembersTypesSynchro=Members types +LDAPSynchronization=LDAP synchronisation +LDAPFunctionsNotAvailableOnPHP=LDAP functions are not available on your PHP +LDAPToDolibarr=LDAP -> Dolibarr +DolibarrToLDAP=Dolibarr -> LDAP +LDAPNamingAttribute=Key in LDAP +LDAPSynchronizeUsers=Organization of users in LDAP +LDAPSynchronizeGroups=Organization of groups in LDAP +LDAPSynchronizeContacts=Organization of contacts in LDAP +LDAPSynchronizeMembers=Organization of foundation's members in LDAP +LDAPSynchronizeMembersTypes=Organization of foundation's members types in LDAP +LDAPPrimaryServer=Primary server +LDAPSecondaryServer=Secondary server +LDAPServerPort=Server port +LDAPServerPortExample=Default port: 389 +LDAPServerProtocolVersion=Protocol version +LDAPServerUseTLS=Use TLS +LDAPServerUseTLSExample=Your LDAP server use TLS +LDAPServerDn=Server DN +LDAPAdminDn=Administrator DN +LDAPAdminDnExample=Complete DN (ex: cn=admin,dc=example,dc=com or cn=Administrator,cn=Users,dc=example,dc=com for active directory) +LDAPPassword=Administrator password +LDAPUserDn=Users' DN +LDAPUserDnExample=Complete DN (ex: ou=users,dc=example,dc=com) +LDAPGroupDn=Groups' DN +LDAPGroupDnExample=Complete DN (ex: ou=groups,dc=example,dc=com) +LDAPServerExample=Server address (ex: localhost, 192.168.0.2, ldaps://ldap.example.com/) +LDAPServerDnExample=Complete DN (ex: dc=example,dc=com) +LDAPDnSynchroActive=Users and groups synchronization +LDAPDnSynchroActiveExample=LDAP to Dolibarr or Dolibarr to LDAP synchronization +LDAPDnContactActive=Contacts' synchronization +LDAPDnContactActiveExample=Activated/Unactivated synchronization +LDAPDnMemberActive=Members' synchronization +LDAPDnMemberActiveExample=Activated/Unactivated synchronization +LDAPDnMemberTypeActive=Members types' synchronization +LDAPDnMemberTypeActiveExample=Activated/Unactivated synchronization +LDAPContactDn=Dolibarr contacts' DN +LDAPContactDnExample=Complete DN (ex: ou=contacts,dc=example,dc=com) +LDAPMemberDn=Dolibarr members DN +LDAPMemberDnExample=Complete DN (ex: ou=members,dc=example,dc=com) +LDAPMemberObjectClassList=List of objectClass +LDAPMemberObjectClassListExample=List of objectClass defining record attributes (ex: top,inetOrgPerson or top,user for active directory) +LDAPMemberTypeDn=Dolibarr members types DN +LDAPMemberTypepDnExample=Complete DN (ex: ou=memberstypes,dc=example,dc=com) +LDAPMemberTypeObjectClassList=List of objectClass +LDAPMemberTypeObjectClassListExample=List of objectClass defining record attributes (ex: top,groupOfUniqueNames) +LDAPUserObjectClassList=List of objectClass +LDAPUserObjectClassListExample=List of objectClass defining record attributes (ex: top,inetOrgPerson or top,user for active directory) +LDAPGroupObjectClassList=List of objectClass +LDAPGroupObjectClassListExample=List of objectClass defining record attributes (ex: top,groupOfUniqueNames) +LDAPContactObjectClassList=List of objectClass +LDAPContactObjectClassListExample=List of objectClass defining record attributes (ex: top,inetOrgPerson or top,user for active directory) +LDAPTestConnect=Test LDAP connection +LDAPTestSynchroContact=Test contacts synchronization +LDAPTestSynchroUser=Test user synchronization +LDAPTestSynchroGroup=Test group synchronization +LDAPTestSynchroMember=Test member synchronization +LDAPTestSynchroMemberType=Test member type synchronization +LDAPTestSearch= Test a LDAP search +LDAPSynchroOK=Synchronization test successful +LDAPSynchroKO=Failed synchronization test +LDAPSynchroKOMayBePermissions=Failed synchronization test. Check that the connection to the server is correctly configured and allows LDAP updates +LDAPTCPConnectOK=TCP connect to LDAP server successful (Server=%s, Port=%s) +LDAPTCPConnectKO=TCP connect to LDAP server failed (Server=%s, Port=%s) +LDAPBindOK=Connect/Authenticate to LDAP server successful (Server=%s, Port=%s, Admin=%s, Password=%s) +LDAPBindKO=Connect/Authenticate to LDAP server failed (Server=%s, Port=%s, Admin=%s, Password=%s) +LDAPSetupForVersion3=LDAP server configured for version 3 +LDAPSetupForVersion2=LDAP server configured for version 2 +LDAPDolibarrMapping=Dolibarr Mapping +LDAPLdapMapping=LDAP Mapping +LDAPFieldLoginUnix=Login (unix) +LDAPFieldLoginExample=Example: uid +LDAPFilterConnection=Search filter +LDAPFilterConnectionExample=Example: &(objectClass=inetOrgPerson) +LDAPFieldLoginSamba=Login (samba, activedirectory) +LDAPFieldLoginSambaExample=Example: samaccountname +LDAPFieldFullname=Full name +LDAPFieldFullnameExample=Example: cn +LDAPFieldPasswordNotCrypted=Password not encrypted +LDAPFieldPasswordCrypted=Password encrypted +LDAPFieldPasswordExample=Example: userPassword +LDAPFieldCommonNameExample=Example: cn +LDAPFieldName=Name +LDAPFieldNameExample=Example: sn +LDAPFieldFirstName=First name +LDAPFieldFirstNameExample=Example: givenName +LDAPFieldMail=Email address +LDAPFieldMailExample=Example: mail +LDAPFieldPhone=Professional phone number +LDAPFieldPhoneExample=Example: telephonenumber +LDAPFieldHomePhone=Personal phone number +LDAPFieldHomePhoneExample=Example: homephone +LDAPFieldMobile=Cellular phone +LDAPFieldMobileExample=Example: mobile +LDAPFieldFax=Fax number +LDAPFieldFaxExample=Example: facsimiletelephonenumber +LDAPFieldAddress=Street +LDAPFieldAddressExample=Example: street +LDAPFieldZip=Zip +LDAPFieldZipExample=Example: postalcode +LDAPFieldTown=Town +LDAPFieldTownExample=Example: l +LDAPFieldCountry=Country +LDAPFieldDescription=Description +LDAPFieldDescriptionExample=Example: description +LDAPFieldNotePublic=Public Note +LDAPFieldNotePublicExample=Example: publicnote +LDAPFieldGroupMembers= Group members +LDAPFieldGroupMembersExample= Example: uniqueMember +LDAPFieldBirthdate=Birthdate +LDAPFieldCompany=Company +LDAPFieldCompanyExample=Example: o +LDAPFieldSid=SID +LDAPFieldSidExample=Example: objectsid +LDAPFieldEndLastSubscription=Date of subscription end +LDAPFieldTitle=Job position +LDAPFieldTitleExample=Example: title +LDAPFieldGroupid=Group id +LDAPFieldGroupidExample=Exemple : gidnumber +LDAPFieldUserid=User id +LDAPFieldUseridExample=Exemple : uidnumber +LDAPFieldHomedirectory=Home directory +LDAPFieldHomedirectoryExample=Exemple : homedirectory +LDAPFieldHomedirectoryprefix=Home directory prefix +LDAPSetupNotComplete=LDAP setup not complete (go on others tabs) +LDAPNoUserOrPasswordProvidedAccessIsReadOnly=No administrator or password provided. LDAP access will be anonymous and in read only mode. +LDAPDescContact=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr contacts. +LDAPDescUsers=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr users. +LDAPDescGroups=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr groups. +LDAPDescMembers=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr members module. +LDAPDescMembersTypes=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr members types. +LDAPDescValues=Example values are designed for OpenLDAP with following loaded schemas: core.schema, cosine.schema, inetorgperson.schema). If you use thoose values and OpenLDAP, modify your LDAP config file slapd.conf to have all thoose schemas loaded. +ForANonAnonymousAccess=For an authenticated access (for a write access for example) +PerfDolibarr=Performance setup/optimizing report +YouMayFindPerfAdviceHere=This page provides some checks or advice related to performance. +NotInstalled=Not installed, so your server is not slowed down by this. +ApplicativeCache=Applicative cache +MemcachedNotAvailable=No applicative cache found. You can enhance performance by installing a cache server Memcached and a module able to use this cache server.
    More information here http://wiki.dolibarr.org/index.php/Module_MemCached_EN.
    Note that a lot of web hosting provider does not provide such cache server. +MemcachedModuleAvailableButNotSetup=Module memcached for applicative cache found but setup of module is not complete. +MemcachedAvailableAndSetup=Module memcached dedicated to use memcached server is enabled. +OPCodeCache=OPCode cache +NoOPCodeCacheFound=No OPCode cache found. Maybe you are using an OPCode cache other than XCache or eAccelerator (good), or maybe you don't have OPCode cache (very bad). +HTTPCacheStaticResources=HTTP cache for static resources (css, img, javascript) +FilesOfTypeCached=Files of type %s are cached by HTTP server +FilesOfTypeNotCached=Files of type %s are not cached by HTTP server +FilesOfTypeCompressed=Files of type %s are compressed by HTTP server +FilesOfTypeNotCompressed=Files of type %s are not compressed by HTTP server +CacheByServer=Cache by server +CacheByServerDesc=For example using the Apache directive "ExpiresByType image/gif A2592000" +CacheByClient=Cache by browser +CompressionOfResources=Compression of HTTP responses +CompressionOfResourcesDesc=For example using the Apache directive "AddOutputFilterByType DEFLATE" +TestNotPossibleWithCurrentBrowsers=Such an automatic detection is not possible with current browsers +DefaultValuesDesc=Here you may define the default value you wish to use when creating a new record, and/or default filters or the sort order when you list records. +DefaultCreateForm=Default values (to use on forms) +DefaultSearchFilters=Default search filters +DefaultSortOrder=Default sort orders +DefaultFocus=Default focus fields +DefaultMandatory=Mandatory form fields +##### Products ##### +ProductSetup=Products module setup +ServiceSetup=Services module setup +ProductServiceSetup=Products and Services modules setup +NumberOfProductShowInSelect=Maximum number of products to show in combo select lists (0=no limit) +ViewProductDescInFormAbility=Display product descriptions in forms (otherwise shown in a tooltip popup) +MergePropalProductCard=Activate in product/service Attached Files tab an option to merge product PDF document to proposal PDF azur if product/service is in the proposal +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=Default barcode type to use for products +SetDefaultBarcodeTypeThirdParties=Default barcode type to use for third parties +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= Product / Service configuration +IsNotADir=is not a directory! +##### Syslog ##### +SyslogSetup=Logs module setup +SyslogOutput=Logs outputs +SyslogFacility=Facility +SyslogLevel=Level +SyslogFilename=File name and path +YouCanUseDOL_DATA_ROOT=You can use DOL_DATA_ROOT/dolibarr.log for a log file in Dolibarr "documents" directory. You can set a different path to store this file. +ErrorUnknownSyslogConstant=Constant %s is not a known Syslog constant +OnlyWindowsLOG_USER=Windows only supports LOG_USER +CompressSyslogs=Compression and backup of debug log files (generated by module Log for debug) +SyslogFileNumberOfSaves=Log backups +ConfigureCleaningCronjobToSetFrequencyOfSaves=Configure cleaning scheduled job to set log backup frequency +##### Donations ##### +DonationsSetup=Donation module setup +DonationsReceiptModel=Template of donation receipt +##### Barcode ##### +BarcodeSetup=Barcode setup +PaperFormatModule=Print format module +BarcodeEncodeModule=Barcode encoding type +CodeBarGenerator=Barcode generator +ChooseABarCode=No generator defined +FormatNotSupportedByGenerator=Format not supported by this generator +BarcodeDescEAN8=Barcode of type EAN8 +BarcodeDescEAN13=Barcode of type EAN13 +BarcodeDescUPC=Barcode of type UPC +BarcodeDescISBN=Barcode of type ISBN +BarcodeDescC39=Barcode of type C39 +BarcodeDescC128=Barcode of type C128 +BarcodeDescDATAMATRIX=Barcode of type Datamatrix +BarcodeDescQRCODE=Barcode of type QR code +GenbarcodeLocation=Bar code generation command line tool (used by internal engine for some bar code types). Must be compatible with "genbarcode".
    For example: /usr/local/bin/genbarcode +BarcodeInternalEngine=Internal engine +BarCodeNumberManager=Manager to auto define barcode numbers +##### Prelevements ##### +WithdrawalsSetup=Setup of module Direct Debit payments +##### ExternalRSS ##### +ExternalRSSSetup=External RSS imports setup +NewRSS=New RSS Feed +RSSUrl=RSS URL +RSSUrlExample=An interesting RSS feed +##### Mailing ##### +MailingSetup=EMailing module setup +MailingEMailFrom=Sender email (From) for emails sent by emailing module +MailingEMailError=Return Email (Errors-to) for emails with errors +MailingDelay=Seconds to wait after sending next message +##### Notification ##### +NotificationSetup=Email Notification module setup +NotificationEMailFrom=Sender email (From) for emails sent by the Notifications module +FixedEmailTarget=Recipient +##### Sendings ##### +SendingsSetup=Shipping module setup +SendingsReceiptModel=Sending receipt model +SendingsNumberingModules=Sendings numbering modules +SendingsAbility=Support shipping sheets for customer deliveries +NoNeedForDeliveryReceipts=In most cases, shipping sheets are used both as sheets for customer deliveries (list of products to send) and sheets that are received and signed by customer. Hence the product deliveries receipt is a duplicated feature and is rarely activated. +FreeLegalTextOnShippings=Free text on shipments +##### Deliveries ##### +DeliveryOrderNumberingModules=Products deliveries receipt numbering module +DeliveryOrderModel=Products deliveries receipt model +DeliveriesOrderAbility=Support products deliveries receipts +FreeLegalTextOnDeliveryReceipts=Free text on delivery receipts +##### FCKeditor ##### +AdvancedEditor=Advanced editor +ActivateFCKeditor=Activate advanced editor for: +FCKeditorForCompany=WYSIWIG creation/edition of elements description and note (except products/services) +FCKeditorForProduct=WYSIWIG creation/edition of products/services description and note +FCKeditorForProductDetails=WYSIWIG creation/edition of products details lines for all entities (proposals, orders, invoices, etc...). Warning: Using this option for this case is seriously not recommended as it can create problems with special characters and page formatting when building PDF files. +FCKeditorForMailing= WYSIWIG creation/edition for mass eMailings (Tools->eMailing) +FCKeditorForUserSignature=WYSIWIG creation/edition of user signature +FCKeditorForMail=WYSIWIG creation/edition for all mail (except Tools->eMailing) +FCKeditorForTicket=WYSIWIG creation/edition for tickets +##### Stock ##### +StockSetup=Stock module setup +IfYouUsePointOfSaleCheckModule=If you use the Point of Sale module (POS) provided by default or an external module, this setup may be ignored by your POS module. Most POS modules are designed by default to create an invoice immediately and decrease stock irrespective of the options here. So if you need or not to have a stock decrease when registering a sale from your POS, check also your POS module setup. +##### Menu ##### +MenuDeleted=Menu deleted +Menus=Menus +TreeMenuPersonalized=Personalized menus +NotTopTreeMenuPersonalized=Personalized menus not linked to a top menu entry +NewMenu=New menu +Menu=Selection of menu +MenuHandler=Menu handler +MenuModule=Source module +HideUnauthorizedMenu= Hide unauthorized menus (gray) +DetailId=Id menu +DetailMenuHandler=Menu handler where to show new menu +DetailMenuModule=Module name if menu entry come from a module +DetailType=Type of menu (top or left) +DetailTitre=Menu label or label code for translation +DetailUrl=URL where menu send you (Absolute URL link or external link with http://) +DetailEnabled=Condition to show or not entry +DetailRight=Condition to display unauthorized grey menus +DetailLangs=Lang file name for label code translation +DetailUser=Intern / Extern / All +Target=Target +DetailTarget=Target for links (_blank top opens a new window) +DetailLevel=Level (-1:top menu, 0:header menu, >0 menu and sub menu) +ModifMenu=Menu change +DeleteMenu=Delete menu entry +ConfirmDeleteMenu=Are you sure you want to delete menu entry %s? +FailedToInitializeMenu=Failed to initialize menu +##### Tax ##### +TaxSetup=Taxes, social or fiscal taxes and dividends module setup +OptionVatMode=VAT due +OptionVATDefault=Standard basis +OptionVATDebitOption=Accrual basis +OptionVatDefaultDesc=VAT is due:
    - on delivery of goods (based on invoice date)
    - on payments for services +OptionVatDebitOptionDesc=VAT is due:
    - on delivery of goods (based on invoice date)
    - on invoice (debit) for services +OptionPaymentForProductAndServices=Cash basis for products and services +OptionPaymentForProductAndServicesDesc=VAT is due:
    - on payment for goods
    - on payments for services +SummaryOfVatExigibilityUsedByDefault=Time of VAT eligibility by default according to chosen option: +OnDelivery=On delivery +OnPayment=On payment +OnInvoice=On invoice +SupposedToBePaymentDate=Payment date used +SupposedToBeInvoiceDate=Invoice date used +Buy=Buy +Sell=Sell +InvoiceDateUsed=Invoice date used +YourCompanyDoesNotUseVAT=Your company has been defined to not use VAT (Home - Setup - Company/Organization), so there is no VAT options to setup. +AccountancyCode=Accounting Code +AccountancyCodeSell=Sale account. code +AccountancyCodeBuy=Purchase account. code +##### Agenda ##### +AgendaSetup=Events and agenda module setup +PasswordTogetVCalExport=Key to authorize export link +PastDelayVCalExport=Do not export event older than +AGENDA_USE_EVENT_TYPE=Use events types (managed in menu Setup -> Dictionaries -> Type of agenda events) +AGENDA_USE_EVENT_TYPE_DEFAULT=Automatically set this default value for type of event in event create form +AGENDA_DEFAULT_FILTER_TYPE=Automatically set this type of event in search filter of agenda view +AGENDA_DEFAULT_FILTER_STATUS=Automatically set this status for events in search filter of agenda view +AGENDA_DEFAULT_VIEW=Which tab do you want to open by default when selecting menu Agenda +AGENDA_REMINDER_EMAIL=Enable event reminder by emails (remind option/delay can be defined on each event). Note: Module %s must be enabled and correctly setup to have reminder sent at the correct frequency. +AGENDA_REMINDER_BROWSER=Enable event reminder on user's browser (when event date is reached, each user is able to refuse this from the browser confirmation question) +AGENDA_REMINDER_BROWSER_SOUND=Enable sound notification +AGENDA_SHOW_LINKED_OBJECT=Show linked object into agenda view +##### Clicktodial ##### +ClickToDialSetup=Click To Dial module setup +ClickToDialUrlDesc=Url called when a click on phone picto is done. In URL, you can use tags
    __PHONETO__ that will be replaced with the phone number of person to call
    __PHONEFROM__ that will be replaced with phone number of calling person (yours)
    __LOGIN__ that will be replaced with clicktodial login (defined on user card)
    __PASS__ that will be replaced with clicktodial password (defined on user card). +ClickToDialDesc=This module makea phone numbers clickable links. A click on the icon will make your phone call the number. This can be used to call a call-center system from Dolibarr that can call the phone number on a SIP system for example. +ClickToDialUseTelLink=Use just a link "tel:" on phone numbers +ClickToDialUseTelLinkDesc=Use this method if your users have a softphone or a software interface installed on the same computer as the browser, and called when you click on a link in your browser that starts with "tel:". If you need a full server solution (no need of local software installation), you must set this to "No" and fill next field. +##### Point Of Sale (CashDesk) ##### +CashDesk=Point of Sale +CashDeskSetup=Point of Sales module setup +CashDeskThirdPartyForSell=Default generic third party to use for sales +CashDeskBankAccountForSell=Default account to use to receive cash payments +CashDeskBankAccountForCheque=Default account to use to receive payments by check +CashDeskBankAccountForCB=Default account to use to receive payments by credit cards +CashDeskBankAccountForSumup=Default bank account to use to receive payments by SumUp +CashDeskDoNotDecreaseStock=Disable stock decrease when a sale is done from Point of Sale (if "no", stock decrease is done for each sale done from POS, irrespective of the option set in module Stock). +CashDeskIdWareHouse=Force and restrict warehouse to use for stock decrease +StockDecreaseForPointOfSaleDisabled=Stock decrease from Point of Sale disabled +StockDecreaseForPointOfSaleDisabledbyBatch=Stock decrease in POS is not compatible with module Serial/Lot management (currently active) so stock decrease is disabled. +CashDeskYouDidNotDisableStockDecease=You did not disable stock decrease when making a sale from Point of Sale. Hence a warehouse is required. +CashDeskForceDecreaseStockLabel=Stock decrease for batch products was forced. +CashDeskForceDecreaseStockDesc=Decrease first by the oldest eatby and sellby dates. +CashDeskReaderKeyCodeForEnter=Key code for "Enter" defined in barcode reader (Example: 13) +##### Bookmark ##### +BookmarkSetup=Bookmark module setup +BookmarkDesc=This module allows you to manage bookmarks. You can also add shortcuts to any Dolibarr pages or external web sites on your left menu. +NbOfBoomarkToShow=Maximum number of bookmarks to show in left menu +##### WebServices ##### +WebServicesSetup=Webservices module setup +WebServicesDesc=By enabling this module, Dolibarr become a web service server to provide miscellaneous web services. +WSDLCanBeDownloadedHere=WSDL descriptor files of provided services can be download here +EndPointIs=SOAP clients must send their requests to the Dolibarr endpoint available at URL +##### API #### +ApiSetup=API module setup +ApiDesc=By enabling this module, Dolibarr become a REST server to provide miscellaneous web services. +ApiProductionMode=Enable production mode (this will activate use of a cache for services management) +ApiExporerIs=You can explore and test the APIs at URL +OnlyActiveElementsAreExposed=Only elements from enabled modules are exposed +ApiKey=Key for API +WarningAPIExplorerDisabled=The API explorer has been disabled. API explorer is not required to provide API services. It is a tool for developer to find/test REST APIs. If you need this tool, go into setup of module API REST to activate it. +##### Bank ##### +BankSetupModule=Bank module setup +FreeLegalTextOnChequeReceipts=Free text on check receipts +BankOrderShow=Display order of bank accounts for countries using "detailed bank number" +BankOrderGlobal=General +BankOrderGlobalDesc=General display order +BankOrderES=Spanish +BankOrderESDesc=Spanish display order +ChequeReceiptsNumberingModule=Check Receipts Numbering Module +##### Multicompany ##### +MultiCompanySetup=Multi-company module setup +##### Suppliers ##### +SuppliersSetup=Vendor module setup +SuppliersCommandModel=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) +SuppliersInvoiceModel=Complete template of Vendor Invoice +SuppliersInvoiceNumberingModel=Vendor invoices numbering models +IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval +##### GeoIPMaxmind ##### +GeoIPMaxmindSetup=GeoIP Maxmind module setup +PathToGeoIPMaxmindCountryDataFile=Path to file containing Maxmind ip to country translation.
    Examples:
    /usr/local/share/GeoIP/GeoIP.dat
    /usr/share/GeoIP/GeoIP.dat
    /usr/share/GeoIP/GeoLite2-Country.mmdb +NoteOnPathLocation=Note that your ip to country data file must be inside a directory your PHP can read (Check your PHP open_basedir setup and filesystem permissions). +YouCanDownloadFreeDatFileTo=You can download a free demo version of the Maxmind GeoIP country file at %s. +YouCanDownloadAdvancedDatFileTo=You can also download a more complete version, with updates, of the Maxmind GeoIP country file at %s. +TestGeoIPResult=Test of a conversion IP -> country +##### Projects ##### +ProjectsNumberingModules=Projects numbering module +ProjectsSetup=Project module setup +ProjectsModelModule=Project reports document model +TasksNumberingModules=Tasks numbering module +TaskModelModule=Tasks reports document model +UseSearchToSelectProject=Wait until a key is pressed before loading content of Project combo list.
    This may improve performance if you have a large number of projects, but it is less convenient. +##### ECM (GED) ##### +##### Fiscal Year ##### +AccountingPeriods=Accounting periods +AccountingPeriodCard=Accounting period +NewFiscalYear=New accounting period +OpenFiscalYear=Open accounting period +CloseFiscalYear=Close accounting period +DeleteFiscalYear=Delete accounting period +ConfirmDeleteFiscalYear=Are you sure to delete this accounting period? +ShowFiscalYear=Show accounting period +AlwaysEditable=Can always be edited +MAIN_APPLICATION_TITLE=Force visible name of application (warning: setting your own name here may break autofill login feature when using DoliDroid mobile application) +NbMajMin=Minimum number of uppercase characters +NbNumMin=Minimum number of numeric characters +NbSpeMin=Minimum number of special characters +NbIteConsecutive=Maximum number of repeating same characters +NoAmbiCaracAutoGeneration=Do not use ambiguous characters ("1","l","i","|","0","O") for automatic generation +SalariesSetup=Setup of module salaries +SortOrder=Sort order +Format=Format +TypePaymentDesc=0:Customer payment type, 1:Vendor payment type, 2:Both customers and suppliers payment type +IncludePath=Include path (defined into variable %s) +ExpenseReportsSetup=Setup of module Expense Reports +TemplatePDFExpenseReports=Document templates to generate expense report document +ExpenseReportsIkSetup=Setup of module Expense Reports - Milles index +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 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 to the tab "Notifications" of a third party to add or remove notifications for contacts/addresses +Threshold=Threshold +BackupDumpWizard=Wizard to build the database dump file +BackupZipWizard=Wizard to build the archive of documents directory +SomethingMakeInstallFromWebNotPossible=Installation of external module is not possible from the web interface for the following reason: +SomethingMakeInstallFromWebNotPossible2=For this reason, process to upgrade described here is a manual process only a privileged user may perform. +InstallModuleFromWebHasBeenDisabledByFile=Install of external module from application has been disabled by your administrator. You must ask him to remove the file %s to allow this feature. +ConfFileMustContainCustom=Installing or building an external module from application need to save the module files into directory %s. To have this directory processed by Dolibarr, you must setup your conf/conf.php to add the 2 directive lines:
    $dolibarr_main_url_root_alt='/custom';
    $dolibarr_main_document_root_alt='%s/custom'; +HighlightLinesOnMouseHover=Highlight table lines when mouse move passes over +HighlightLinesColor=Highlight color of the line when the mouse passes over (use 'ffffff' for no highlight) +HighlightLinesChecked=Highlight color of the line when it is checked (use 'ffffff' for no highlight) +TextTitleColor=Text color of Page title +LinkColor=Color of links +PressF5AfterChangingThis=Press CTRL+F5 on keyboard or clear your browser cache after changing this value to have it effective +NotSupportedByAllThemes=Will works with core themes, may not be supported by external themes +BackgroundColor=Background color +TopMenuBackgroundColor=Background color for Top menu +TopMenuDisableImages=Hide images in Top menu +LeftMenuBackgroundColor=Background color for Left menu +BackgroundTableTitleColor=Background color for Table title line +BackgroundTableTitleTextColor=Text color for Table title line +BackgroundTableTitleTextlinkColor=Text color for Table title link line +BackgroundTableLineOddColor=Background color for odd table lines +BackgroundTableLineEvenColor=Background color for even table lines +MinimumNoticePeriod=Minimum notice period (Your leave request must be done before this delay) +NbAddedAutomatically=Number of days added to counters of users (automatically) each month +EnterAnyCode=This field contains a reference to identify line. Enter any value of your choice, but without special characters. +Enter0or1=Enter 0 or 1 +UnicodeCurrency=Enter here between braces, list of byte number that represent the currency symbol. For example: for $, enter [36] - for brazil real R$ [82,36] - for €, enter [8364] +ColorFormat=The RGB color is in HEX format, eg: FF0000 +PositionIntoComboList=Position of line into combo lists +SellTaxRate=Sale tax rate +RecuperableOnly=Yes for VAT "Not Perceived but Recoverable" dedicated for some state in France. Keep value to "No" in all other cases. +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=Type of template +TemplateIsVisibleByOwnerOnly=Template is visible to owner only +VisibleEverywhere=Visible everywhere +VisibleNowhere=Visible nowhere +FixTZ=TimeZone fix +FillFixTZOnlyIfRequired=Example: +2 (fill only if problem experienced) +ExpectedChecksum=Expected Checksum +CurrentChecksum=Current Checksum +ExpectedSize=Expected size +CurrentSize=Current size +ForcedConstants=Required constant values +MailToSendProposal=Customer proposals +MailToSendOrder=Sales orders +MailToSendInvoice=Customer invoices +MailToSendShipment=Shipments +MailToSendIntervention=Interventions +MailToSendSupplierRequestForQuotation=Quotation request +MailToSendSupplierOrder=Purchase orders +MailToSendSupplierInvoice=Vendor invoices +MailToSendContract=Contracts +MailToThirdparty=Third parties +MailToMember=Members +MailToUser=Users +MailToProject=Projects page +ByDefaultInList=Show by default on list view +YouUseLastStableVersion=You use the latest stable version +TitleExampleForMajorRelease=Example of message you can use to announce this major release (feel free to use it on your web sites) +TitleExampleForMaintenanceRelease=Example of message you can use to announce this maintenance release (feel free to use it on your web sites) +ExampleOfNewsMessageForMajorRelease=Dolibarr ERP & CRM %s is available. Version %s is a major release with a lot of new features for both users and developers. You can download it from the download area of https://www.dolibarr.org portal (subdirectory Stable versions). You can read ChangeLog for complete list of changes. +ExampleOfNewsMessageForMaintenanceRelease=Dolibarr ERP & CRM %s is available. Version %s is a maintenance version, so contains only bug fixes. We recommend all users to upgrade to this version. A maintenance release does not introduce new features or changes to the database. You may download it from the download area of https://www.dolibarr.org portal (subdirectory Stable versions). You can read the ChangeLog for complete list of changes. +MultiPriceRuleDesc=When option "Several levels of prices per product/service" is enabled, you can define different prices (one per price level) for each product. To save you time, here you may enter a rule to autocalculate a price for each level based on the price of the first level, so you will have to only enter a price for the first level for each product. This page is designed to save you time but is useful only if your prices for each level are relative to first level. You can ignore this page in most cases. +ModelModulesProduct=Templates for product documents +ToGenerateCodeDefineAutomaticRuleFirst=To be able to generate codes automatically, you must first define a manager to auto-define the barcode number. +SeeSubstitutionVars=See * note for list of possible substitution variables +SeeChangeLog=See ChangeLog file (english only) +AllPublishers=All publishers +UnknownPublishers=Unknown publishers +AddRemoveTabs=Add or remove tabs +AddDataTables=Add object tables +AddDictionaries=Add dictionaries tables +AddData=Add objects or dictionaries data +AddBoxes=Add widgets +AddSheduledJobs=Add scheduled jobs +AddHooks=Add hooks +AddTriggers=Add triggers +AddMenus=Add menus +AddPermissions=Add permissions +AddExportProfiles=Add export profiles +AddImportProfiles=Add import profiles +AddOtherPagesOrServices=Add other pages or services +AddModels=Add document or numbering templates +AddSubstitutions=Add keys substitutions +DetectionNotPossible=Detection not possible +UrlToGetKeyToUseAPIs=Url to get token to use API (once token has been received it is saved in database user table and must be provided on each API call) +ListOfAvailableAPIs=List of available APIs +activateModuleDependNotSatisfied=Module "%s" depends on module "%s", that is missing, so module "%1$s" may not work correctly. Please install module "%2$s" or disable module "%1$s" if you want to be safe from any surprise +CommandIsNotInsideAllowedCommands=The command you are trying to run is not in the list of allowed commands defined in parameter $dolibarr_main_restrict_os_commands in the conf.php file. +LandingPage=Landing page +SamePriceAlsoForSharedCompanies=If you use a multicompany module, with the choice "Single price", the price will also be the same for all companies if products are shared between environments +ModuleEnabledAdminMustCheckRights=Module has been activated. Permissions for activated module(s) were given to admin users only. You may need to grant permissions to other users or groups manually if necessary. +UserHasNoPermissions=This user has no permissions defined +TypeCdr=Use "None" if the date of payment term is date of invoice plus a delta in days (delta is field "%s")
    Use "At end of month", if, after delta, the date must be increased to reach the end of month (+ an optional "%s" in days)
    Use "Current/Next" to have payment term date being the first Nth of the month after delta (delta is field "%s", N is stored into field "%s") +BaseCurrency=Reference currency of the company (go into setup of company to change this) +WarningNoteModuleInvoiceForFrenchLaw=This module %s is compliant with French laws (Loi Finance 2016). +WarningNoteModulePOSForFrenchLaw=This module %s is compliant with French laws (Loi Finance 2016) because module Non Reversible Logs is automatically activated. +WarningInstallationMayBecomeNotCompliantWithLaw=You are trying to install module %s that is an external module. Activating an external module means you trust the publisher of that module and that you are sure that this module does not adversely impact the behavior of your application, and is compliant with laws of your country (%s). If the module introduces an illegal feature, you become responsible for the use of illegal software. +MAIN_PDF_MARGIN_LEFT=Left margin on PDF +MAIN_PDF_MARGIN_RIGHT=Right margin on PDF +MAIN_PDF_MARGIN_TOP=Top margin on PDF +MAIN_PDF_MARGIN_BOTTOM=Bottom margin on PDF +NothingToSetup=There is no specific setup required for this module. +SetToYesIfGroupIsComputationOfOtherGroups=Set this to yes if this group is a computation of other groups +EnterCalculationRuleIfPreviousFieldIsYes=Enter calculation rule if previous field was set to Yes (For example 'CODEGRP1+CODEGRP2') +SeveralLangugeVariatFound=Several language variants found +RemoveSpecialChars=Remove special characters +COMPANY_AQUARIUM_CLEAN_REGEX=Regex filter to clean value (COMPANY_AQUARIUM_CLEAN_REGEX) +COMPANY_DIGITARIA_CLEAN_REGEX=Regex filter to clean value (COMPANY_DIGITARIA_CLEAN_REGEX) +COMPANY_DIGITARIA_UNIQUE_CODE=Duplicate not allowed +GDPRContact=Data Protection Officer (DPO, Data Privacy or GDPR contact) +GDPRContactDesc=If you store data about European companies/citizens, you can name the contact who is responsible for the General Data Protection Regulation here +HelpOnTooltip=Help text to show on tooltip +HelpOnTooltipDesc=Put text or a translation key here for the text to show in a tooltip when this field appears in a form +YouCanDeleteFileOnServerWith=You can delete this file on the server with Command Line:
    %s +ChartLoaded=Chart of account loaded +SocialNetworkSetup=Setup of module Social Networks +EnableFeatureFor=Enable features for %s +VATIsUsedIsOff=Note: The option to use Sales Tax or VAT has been set to Off in the menu %s - %s, so Sales tax or Vat used will always be 0 for sales. +SwapSenderAndRecipientOnPDF=Swap sender and recipient address position on PDF documents +FeatureSupportedOnTextFieldsOnly=Warning, feature supported on text fields only. Also an URL parameter action=create or action=edit must be set OR page name must end with 'new.php' to trigger this feature. +EmailCollector=Email collector +EmailCollectorDescription=Add a scheduled job and a setup page to scan regularly email boxes (using IMAP protocol) and record emails received into your application, at the right place and/or create some records automatically (like leads). +NewEmailCollector=New Email Collector +EMailHost=Host of email IMAP server +MailboxSourceDirectory=Mailbox source directory +MailboxTargetDirectory=Mailbox target directory +EmailcollectorOperations=Operations to do by collector +MaxEmailCollectPerCollect=Max number of emails collected per collect +CollectNow=Collect now +ConfirmCloneEmailCollector=Are you sure you want to clone the Email collector %s ? +DateLastCollectResult=Date latest collect tried +DateLastcollectResultOk=Date latest collect successfull +LastResult=Latest result +EmailCollectorConfirmCollectTitle=Email collect confirmation +EmailCollectorConfirmCollect=Do you want to run the collection for this collector now ? +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) +CodeLastResult=Latest result code +NbOfEmailsInInbox=Number of emails in source directory +LoadThirdPartyFromName=Load third party searching on %s (load only) +LoadThirdPartyFromNameOrCreate=Load third party searching on %s (create if not found) +WithDolTrackingID=Dolibarr Reference found in Message ID +WithoutDolTrackingID=Dolibarr Reference not found in Message ID +FormatZip=Zip +MainMenuCode=Menu entry code (mainmenu) +ECMAutoTree=Show automatic ECM tree +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. +OpeningHours=Opening hours +OpeningHoursDesc=Enter here the regular opening hours of your company. +ResourceSetup=Configuration of Resource module +UseSearchToSelectResource=Use a search form to choose a resource (rather than a drop-down list). +DisabledResourceLinkUser=Disable feature to link a resource to users +DisabledResourceLinkContact=Disable feature to link a resource to contacts +EnableResourceUsedInEventCheck=Enable feature to check if a resource is in use in an event +ConfirmUnactivation=Confirm module reset +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. +RootCategoryForProductsToSell=Root category of products to sell +RootCategoryForProductsToSellDesc=If defined, only products inside this category or childs of this category will be available in the Point Of Sale +DebugBar=Debug Bar +DebugBarDesc=Toolbar that comes with a plenty of tools to simplify debugging +DebugBarSetup=DebugBar Setup +GeneralOptions=General Options +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 +ModuleActivated=Module %s is activated and slows the interface +EXPORTS_SHARE_MODELS=Export models are share with everybody +ExportSetup=Setup of module Export +ImportSetup=Setup of module Import +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/. +EmailCollectorTargetDir=It may be a desired behaviour to move the email into another tag/directory when it was processed successfully. Just set a value here to use this feature. Note that you must also use a read/write login account. +EmailCollectorLoadThirdPartyHelp=You can use this action to use the email content to find and load an existing thirdparty in your database. The found (or created) thirdparty will be used for following actions that need it. In the parameter field you can use for example 'EXTRACT:BODY:Name:\\s([^\\s]*)' if you want to extract the name of the thirdparty from a string 'Name: name to find' found into the body. +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 +RESTRICT_ON_IP=Allow access to some host IP only (wildcard not allowed, use space between values). Empty means every hosts can access. +IPListExample=127.0.0.1 192.168.0.2 [::1] +BaseOnSabeDavVersion=Based on the library SabreDAV version +NotAPublicIp=Not a public IP +MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server (done 1 time only after installation) to allow the foundation to count the number of Dolibarr installation. +FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled +EmailTemplate=Template for email +EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/az_AZ/agenda.lang b/htdocs/langs/az_AZ/agenda.lang new file mode 100644 index 00000000000..2031241d2c9 --- /dev/null +++ b/htdocs/langs/az_AZ/agenda.lang @@ -0,0 +1,154 @@ +# Dolibarr language file - Source file is en_US - agenda +IdAgenda=ID event +Actions=Events +Agenda=Agenda +TMenuAgenda=Agenda +Agendas=Agendas +LocalAgenda=Internal calendar +ActionsOwnedBy=Event owned by +ActionsOwnedByShort=Owner +AffectedTo=Assigned to +Event=Event +Events=Events +EventsNb=Number of events +ListOfActions=List of events +EventReports=Event reports +Location=Location +ToUserOfGroup=To any user in group +EventOnFullDay=Event on all day(s) +MenuToDoActions=All incomplete events +MenuDoneActions=All terminated events +MenuToDoMyActions=My incomplete events +MenuDoneMyActions=My terminated events +ListOfEvents=List of events (internal calendar) +ActionsAskedBy=Events reported by +ActionsToDoBy=Events assigned to +ActionsDoneBy=Events done by +ActionAssignedTo=Event assigned to +ViewCal=Month view +ViewDay=Day view +ViewWeek=Week view +ViewPerUser=Per user view +ViewPerType=Per type view +AutoActions= Automatic filling +AgendaAutoActionDesc= Here you may define events which you want Dolibarr to create automatically in Agenda. If nothing is checked, only manual actions will be included in logs and displayed in Agenda. Automatic tracking of business actions done on objects (validation, status change) will not be saved. +AgendaSetupOtherDesc= This page provides options to allow the export of your Dolibarr events into an external calendar (Thunderbird, Google Calendar etc...) +AgendaExtSitesDesc=This page allows to declare external sources of calendars to see their events into Dolibarr agenda. +ActionsEvents=Events for which Dolibarr will create an action in agenda automatically +EventRemindersByEmailNotEnabled=Event reminders by email was not enabled into %s module setup. +##### Agenda event labels ##### +NewCompanyToDolibarr=Third party %s created +COMPANY_DELETEInDolibarr=Third party %s deleted +ContractValidatedInDolibarr=Contract %s validated +CONTRACT_DELETEInDolibarr=Contract %s deleted +PropalClosedSignedInDolibarr=Proposal %s signed +PropalClosedRefusedInDolibarr=Proposal %s refused +PropalValidatedInDolibarr=Proposal %s validated +PropalClassifiedBilledInDolibarr=Proposal %s classified billed +InvoiceValidatedInDolibarr=Invoice %s validated +InvoiceValidatedInDolibarrFromPos=Invoice %s validated from POS +InvoiceBackToDraftInDolibarr=Invoice %s go back to draft status +InvoiceDeleteDolibarr=Invoice %s deleted +InvoicePaidInDolibarr=Invoice %s changed to paid +InvoiceCanceledInDolibarr=Invoice %s canceled +MemberValidatedInDolibarr=Member %s validated +MemberModifiedInDolibarr=Member %s modified +MemberResiliatedInDolibarr=Member %s terminated +MemberDeletedInDolibarr=Member %s deleted +MemberSubscriptionAddedInDolibarr=Subscription %s for member %s added +MemberSubscriptionModifiedInDolibarr=Subscription %s for member %s modified +MemberSubscriptionDeletedInDolibarr=Subscription %s for member %s deleted +ShipmentValidatedInDolibarr=Shipment %s validated +ShipmentClassifyClosedInDolibarr=Shipment %s classified billed +ShipmentUnClassifyCloseddInDolibarr=Shipment %s classified re-open +ShipmentBackToDraftInDolibarr=Shipment %s go back to draft status +ShipmentDeletedInDolibarr=Shipment %s deleted +OrderCreatedInDolibarr=Order %s created +OrderValidatedInDolibarr=Order %s validated +OrderDeliveredInDolibarr=Order %s classified delivered +OrderCanceledInDolibarr=Order %s canceled +OrderBilledInDolibarr=Order %s classified billed +OrderApprovedInDolibarr=Order %s approved +OrderRefusedInDolibarr=Order %s refused +OrderBackToDraftInDolibarr=Order %s go back to draft status +ProposalSentByEMail=Commercial proposal %s sent by email +ContractSentByEMail=Contract %s sent by email +OrderSentByEMail=Sales order %s sent by email +InvoiceSentByEMail=Customer invoice %s sent by email +SupplierOrderSentByEMail=Purchase order %s sent by email +ORDER_SUPPLIER_DELETEInDolibarr=Purchase order %s deleted +SupplierInvoiceSentByEMail=Vendor invoice %s sent by email +ShippingSentByEMail=Shipment %s sent by email +ShippingValidated= Shipment %s validated +InterventionSentByEMail=Intervention %s sent by email +ProposalDeleted=Proposal deleted +OrderDeleted=Order deleted +InvoiceDeleted=Invoice deleted +DraftInvoiceDeleted=Draft invoice deleted +PRODUCT_CREATEInDolibarr=Product %s created +PRODUCT_MODIFYInDolibarr=Product %s modified +PRODUCT_DELETEInDolibarr=Product %s deleted +HOLIDAY_CREATEInDolibarr=Request for leave %s created +HOLIDAY_MODIFYInDolibarr=Request for leave %s modified +HOLIDAY_APPROVEInDolibarr=Request for leave %s approved +HOLIDAY_VALIDATEInDolibarr=Request for leave %s validated +HOLIDAY_DELETEInDolibarr=Request for leave %s deleted +EXPENSE_REPORT_CREATEInDolibarr=Expense report %s created +EXPENSE_REPORT_VALIDATEInDolibarr=Expense report %s validated +EXPENSE_REPORT_APPROVEInDolibarr=Expense report %s approved +EXPENSE_REPORT_DELETEInDolibarr=Expense report %s deleted +EXPENSE_REPORT_REFUSEDInDolibarr=Expense report %s refused +PROJECT_CREATEInDolibarr=Project %s created +PROJECT_MODIFYInDolibarr=Project %s modified +PROJECT_DELETEInDolibarr=Project %s deleted +TICKET_CREATEInDolibarr=Ticket %s created +TICKET_MODIFYInDolibarr=Ticket %s modified +TICKET_ASSIGNEDInDolibarr=Ticket %s assigned +TICKET_CLOSEInDolibarr=Ticket %s closed +TICKET_DELETEInDolibarr=Ticket %s deleted +BOM_VALIDATEInDolibarr=BOM validated +BOM_UNVALIDATEInDolibarr=BOM unvalidated +BOM_CLOSEInDolibarr=BOM disabled +BOM_REOPENInDolibarr=BOM reopen +BOM_DELETEInDolibarr=BOM deleted +MRP_MO_VALIDATEInDolibarr=MO validated +MRP_MO_PRODUCEDInDolibarr=MO produced +MRP_MO_DELETEInDolibarr=MO deleted +##### End agenda events ##### +AgendaModelModule=Document templates for event +DateActionStart=Start date +DateActionEnd=End date +AgendaUrlOptions1=You can also add following parameters to filter output: +AgendaUrlOptions3=logina=%s to restrict output to actions owned by a user %s. +AgendaUrlOptionsNotAdmin=logina=!%s to restrict output to actions not owned by user %s. +AgendaUrlOptions4=logint=%s to restrict output to actions assigned to user %s (owner and others). +AgendaUrlOptionsProject=project=__PROJECT_ID__ to restrict output to actions linked to project __PROJECT_ID__. +AgendaUrlOptionsNotAutoEvent=notactiontype=systemauto to exclude automatic events. +AgendaUrlOptionsIncludeHolidays=includeholidays=1 to include events of holidays. +AgendaShowBirthdayEvents=Show birthdays of contacts +AgendaHideBirthdayEvents=Hide birthdays of contacts +Busy=Busy +ExportDataset_event1=List of agenda events +DefaultWorkingDays=Default working days range in week (Example: 1-5, 1-6) +DefaultWorkingHours=Default working hours in day (Example: 9-18) +# External Sites ical +ExportCal=Export calendar +ExtSites=Import external calendars +ExtSitesEnableThisTool=Show external calendars (defined in global setup) in Agenda. Does not affect external calendars defined by users. +ExtSitesNbOfAgenda=Number of calendars +AgendaExtNb=Calendar no. %s +ExtSiteUrlAgenda=URL to access .ical file +ExtSiteNoLabel=No Description +VisibleTimeRange=Visible time range +VisibleDaysRange=Visible days range +AddEvent=Create event +MyAvailability=My availability +ActionType=Event type +DateActionBegin=Start event date +ConfirmCloneEvent=Are you sure you want to clone the event %s? +RepeatEvent=Repeat event +EveryWeek=Every week +EveryMonth=Every month +DayOfMonth=Day of month +DayOfWeek=Day of week +DateStartPlusOne=Date start + 1 hour diff --git a/htdocs/langs/az_AZ/assets.lang b/htdocs/langs/az_AZ/assets.lang new file mode 100644 index 00000000000..ef04723c6c2 --- /dev/null +++ b/htdocs/langs/az_AZ/assets.lang @@ -0,0 +1,65 @@ +# Copyright (C) 2018 Alexandre Spangaro +# +# 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 . + +# +# Generic +# +Assets = Assets +NewAsset = New asset +AccountancyCodeAsset = Accounting code (asset) +AccountancyCodeDepreciationAsset = Accounting code (depreciation asset account) +AccountancyCodeDepreciationExpense = Accounting code (depreciation expense account) +NewAssetType=New asset type +AssetsTypeSetup=Asset type setup +AssetTypeModified=Asset type modified +AssetType=Asset type +AssetsLines=Assets +DeleteType=Delete +DeleteAnAssetType=Delete an asset type +ConfirmDeleteAssetType=Are you sure you want to delete this asset type? +ShowTypeCard=Show type '%s' + +# Module label 'ModuleAssetsName' +ModuleAssetsName = Assets +# Module description 'ModuleAssetsDesc' +ModuleAssetsDesc = Assets description + +# +# Admin page +# +AssetsSetup = Assets setup +Settings = Settings +AssetsSetupPage = Assets setup page +ExtraFieldsAssetsType = Complementary attributes (Asset type) +AssetsType=Asset type +AssetsTypeId=Asset type id +AssetsTypeLabel=Asset type label +AssetsTypes=Assets types + +# +# Menu +# +MenuAssets = Assets +MenuNewAsset = New asset +MenuTypeAssets = Type assets +MenuListAssets = List +MenuNewTypeAssets = New +MenuListTypeAssets = List + +# +# Module +# +NewAssetType=New asset type +NewAsset=New asset diff --git a/htdocs/langs/az_AZ/banks.lang b/htdocs/langs/az_AZ/banks.lang new file mode 100644 index 00000000000..e54239e9fb2 --- /dev/null +++ b/htdocs/langs/az_AZ/banks.lang @@ -0,0 +1,175 @@ +# Dolibarr language file - Source file is en_US - banks +Bank=Bank +MenuBankCash=Banks | Cash +MenuVariousPayment=Miscellaneous payments +MenuNewVariousPayment=New Miscellaneous payment +BankName=Bank name +FinancialAccount=Account +BankAccount=Bank account +BankAccounts=Bank accounts +BankAccountsAndGateways=Bank accounts | Gateways +ShowAccount=Show Account +AccountRef=Financial account ref +AccountLabel=Financial account label +CashAccount=Cash account +CashAccounts=Cash accounts +CurrentAccounts=Current accounts +SavingAccounts=Savings accounts +ErrorBankLabelAlreadyExists=Financial account label already exists +BankBalance=Balance +BankBalanceBefore=Balance before +BankBalanceAfter=Balance after +BalanceMinimalAllowed=Minimum allowed balance +BalanceMinimalDesired=Minimum desired balance +InitialBankBalance=Initial balance +EndBankBalance=End balance +CurrentBalance=Current balance +FutureBalance=Future balance +ShowAllTimeBalance=Show balance from start +AllTime=From start +Reconciliation=Reconciliation +RIB=Bank Account Number +IBAN=IBAN number +BIC=BIC/SWIFT code +SwiftValid=BIC/SWIFT valid +SwiftVNotalid=BIC/SWIFT not valid +IbanValid=BAN valid +IbanNotValid=BAN not valid +StandingOrders=Direct Debit orders +StandingOrder=Direct debit order +AccountStatement=Account statement +AccountStatementShort=Statement +AccountStatements=Account statements +LastAccountStatements=Last account statements +IOMonthlyReporting=Monthly reporting +BankAccountDomiciliation=Bank address +BankAccountCountry=Account country +BankAccountOwner=Account owner name +BankAccountOwnerAddress=Account owner address +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=Create account +NewBankAccount=New account +NewFinancialAccount=New financial account +MenuNewFinancialAccount=New financial account +EditFinancialAccount=Edit account +LabelBankCashAccount=Bank or cash label +AccountType=Account type +BankType0=Savings account +BankType1=Current or credit card account +BankType2=Cash account +AccountsArea=Accounts area +AccountCard=Account card +DeleteAccount=Delete account +ConfirmDeleteAccount=Are you sure you want to delete this account? +Account=Account +BankTransactionByCategories=Bank entries by categories +BankTransactionForCategory=Bank entries for category %s +RemoveFromRubrique=Remove link with category +RemoveFromRubriqueConfirm=Are you sure you want to remove link between the entry and the category? +ListBankTransactions=List of bank entries +IdTransaction=Transaction ID +BankTransactions=Bank entries +BankTransaction=Bank entry +ListTransactions=List entries +ListTransactionsByCategory=List entries/category +TransactionsToConciliate=Entries to reconcile +TransactionsToConciliateShort=To reconcile +Conciliable=Can be reconciled +Conciliate=Reconcile +Conciliation=Reconciliation +SaveStatementOnly=Save statement only +ReconciliationLate=Reconciliation late +IncludeClosedAccount=Include closed accounts +OnlyOpenedAccount=Only open accounts +AccountToCredit=Account to credit +AccountToDebit=Account to debit +DisableConciliation=Disable reconciliation feature for this account +ConciliationDisabled=Reconciliation feature disabled +LinkedToAConciliatedTransaction=Linked to a conciliated entry +StatusAccountOpened=Open +StatusAccountClosed=Closed +AccountIdShort=Number +LineRecord=Transaction +AddBankRecord=Add entry +AddBankRecordLong=Add entry manually +Conciliated=Reconciled +ConciliatedBy=Reconciled by +DateConciliating=Reconcile date +BankLineConciliated=Entry reconciled with bank receipt +Reconciled=Reconciled +NotReconciled=Not reconciled +CustomerInvoicePayment=Customer payment +SupplierInvoicePayment=Vendor payment +SubscriptionPayment=Subscription payment +WithdrawalPayment=Debit payment order +SocialContributionPayment=Social/fiscal tax payment +BankTransfer=Bank transfer +BankTransfers=Bank transfers +MenuBankInternalTransfer=Internal transfer +TransferDesc=Transfer from one account to another, Dolibarr will write two records (a debit in source account and a credit in target account). The same amount (except sign), label and date will be used for this transaction) +TransferFrom=From +TransferTo=To +TransferFromToDone=A transfer from %s to %s of %s %s has been recorded. +CheckTransmitter=Transmitter +ValidateCheckReceipt=Validate this check receipt? +ConfirmValidateCheckReceipt=Are you sure you want to validate this check receipt, no change will be possible once this is done? +DeleteCheckReceipt=Delete this check receipt? +ConfirmDeleteCheckReceipt=Are you sure you want to delete this check receipt? +BankChecks=Bank checks +BankChecksToReceipt=Checks awaiting deposit +BankChecksToReceiptShort=Checks awaiting deposit +ShowCheckReceipt=Show check deposit receipt +NumberOfCheques=No. of check +DeleteTransaction=Delete entry +ConfirmDeleteTransaction=Are you sure you want to delete this entry? +ThisWillAlsoDeleteBankRecord=This will also delete generated bank entry +BankMovements=Movements +PlannedTransactions=Planned entries +Graph=Graphics +ExportDataset_banque_1=Bank entries and account statement +ExportDataset_banque_2=Deposit slip +TransactionOnTheOtherAccount=Transaction on the other account +PaymentNumberUpdateSucceeded=Payment number updated successfully +PaymentNumberUpdateFailed=Payment number could not be updated +PaymentDateUpdateSucceeded=Payment date updated successfully +PaymentDateUpdateFailed=Payment date could not be updated +Transactions=Transactions +BankTransactionLine=Bank entry +AllAccounts=All bank and cash accounts +BackToAccount=Back to account +ShowAllAccounts=Show for all accounts +FutureTransaction=Future transaction. Unable to reconcile. +SelectChequeTransactionAndGenerate=Select/filter checks to include in the check deposit receipt and click on "Create". +InputReceiptNumber=Choose the bank statement related with the conciliation. Use a sortable numeric value: YYYYMM or YYYYMMDD +EventualyAddCategory=Eventually, specify a category in which to classify the records +ToConciliate=To reconcile? +ThenCheckLinesAndConciliate=Then, check the lines present in the bank statement and click +DefaultRIB=Default BAN +AllRIB=All BAN +LabelRIB=BAN Label +NoBANRecord=No BAN record +DeleteARib=Delete BAN record +ConfirmDeleteRib=Are you sure you want to delete this BAN record? +RejectCheck=Check returned +ConfirmRejectCheck=Are you sure you want to mark this check as rejected? +RejectCheckDate=Date the check was returned +CheckRejected=Check returned +CheckRejectedAndInvoicesReopened=Check returned and invoices re-open +BankAccountModelModule=Document templates for bank accounts +DocumentModelSepaMandate=Template of SEPA mandate. Useful for European countries in EEC only. +DocumentModelBan=Template to print a page with BAN information. +NewVariousPayment=New miscellaneous payment +VariousPayment=Miscellaneous payment +VariousPayments=Miscellaneous payments +ShowVariousPayment=Show miscellaneous payment +AddVariousPayment=Add miscellaneous payment +SEPAMandate=SEPA mandate +YourSEPAMandate=Your SEPA mandate +FindYourSEPAMandate=This is your SEPA mandate to authorize our company to make direct debit order to your bank. Return it signed (scan of the signed document) or send it by mail to +AutoReportLastAccountStatement=Automatically fill the field 'number of bank statement' with last statement number when making reconciliation +CashControl=POS cash fence +NewCashFence=New cash fence +BankColorizeMovement=Colorize movements +BankColorizeMovementDesc=If this function is enable, you can choose specific background color for debit or credit movements +BankColorizeMovementName1=Background color for debit movement +BankColorizeMovementName2=Background color for credit movement diff --git a/htdocs/langs/az_AZ/bills.lang b/htdocs/langs/az_AZ/bills.lang new file mode 100644 index 00000000000..9f11d8ecf87 --- /dev/null +++ b/htdocs/langs/az_AZ/bills.lang @@ -0,0 +1,574 @@ +# Dolibarr language file - Source file is en_US - bills +Bill=Invoice +Bills=Invoices +BillsCustomers=Customer invoices +BillsCustomer=Customer invoice +BillsSuppliers=Vendor invoices +BillsCustomersUnpaid=Unpaid customer invoices +BillsCustomersUnpaidForCompany=Unpaid customer invoices for %s +BillsSuppliersUnpaid=Unpaid vendor invoices +BillsSuppliersUnpaidForCompany=Unpaid vendors invoices for %s +BillsLate=Late payments +BillsStatistics=Customers invoices statistics +BillsStatisticsSuppliers=Vendors invoices statistics +DisabledBecauseDispatchedInBookkeeping=Disabled because invoice was dispatched into bookkeeping +DisabledBecauseNotLastInvoice=Disabled because invoice is not erasable. Some invoices were recorded after this one and it will create holes in the counter. +DisabledBecauseNotErasable=Disabled because cannot be erased +InvoiceStandard=Standard invoice +InvoiceStandardAsk=Standard invoice +InvoiceStandardDesc=This kind of invoice is the common invoice. +InvoiceDeposit=Down payment invoice +InvoiceDepositAsk=Down payment invoice +InvoiceDepositDesc=This kind of invoice is done when a down payment has been received. +InvoiceProForma=Proforma invoice +InvoiceProFormaAsk=Proforma invoice +InvoiceProFormaDesc=Proforma invoice is an image of a true invoice but has no accountancy value. +InvoiceReplacement=Replacement invoice +InvoiceReplacementAsk=Replacement invoice for invoice +InvoiceReplacementDesc=Replacement invoice is used to completely replace an invoice with no payment already received.

    Note: Only invoices with no payment on it can be replaced. If the invoice you replace is not yet closed, it will be automatically closed to 'abandoned'. +InvoiceAvoir=Credit note +InvoiceAvoirAsk=Credit note to correct invoice +InvoiceAvoirDesc=The credit note is a negative invoice used to correct the fact that an invoice shows an amount that differs from the amount actually paid (eg the customer paid too much by mistake, or will not pay the complete amount since some products were returned). +invoiceAvoirWithLines=Create Credit Note with lines from the origin invoice +invoiceAvoirWithPaymentRestAmount=Create Credit Note with remaining unpaid of origin invoice +invoiceAvoirLineWithPaymentRestAmount=Credit Note for remaining unpaid amount +ReplaceInvoice=Replace invoice %s +ReplacementInvoice=Replacement invoice +ReplacedByInvoice=Replaced by invoice %s +ReplacementByInvoice=Replaced by invoice +CorrectInvoice=Correct invoice %s +CorrectionInvoice=Correction invoice +UsedByInvoice=Used to pay invoice %s +ConsumedBy=Consumed by +NotConsumed=Not consumed +NoReplacableInvoice=No replaceable invoices +NoInvoiceToCorrect=No invoice to correct +InvoiceHasAvoir=Was source of one or several credit notes +CardBill=Invoice card +PredefinedInvoices=Predefined Invoices +Invoice=Invoice +PdfInvoiceTitle=Invoice +Invoices=Invoices +InvoiceLine=Invoice line +InvoiceCustomer=Customer invoice +CustomerInvoice=Customer invoice +CustomersInvoices=Customers invoices +SupplierInvoice=Vendor invoice +SuppliersInvoices=Vendors invoices +SupplierBill=Vendor invoice +SupplierBills=suppliers invoices +Payment=Payment +PaymentBack=Refund +CustomerInvoicePaymentBack=Refund +Payments=Payments +PaymentsBack=Refunds +paymentInInvoiceCurrency=in invoices currency +PaidBack=Paid back +DeletePayment=Delete payment +ConfirmDeletePayment=Are you sure you want to delete this payment? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? +ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? +ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. +SupplierPayments=Vendor payments +ReceivedPayments=Received payments +ReceivedCustomersPayments=Payments received from customers +PayedSuppliersPayments=Payments paid to vendors +ReceivedCustomersPaymentsToValid=Received customers payments to validate +PaymentsReportsForYear=Payments reports for %s +PaymentsReports=Payments reports +PaymentsAlreadyDone=Payments already done +PaymentsBackAlreadyDone=Refunds already done +PaymentRule=Payment rule +PaymentMode=Payment Type +PaymentTypeDC=Debit/Credit Card +PaymentTypePP=PayPal +IdPaymentMode=Payment Type (id) +CodePaymentMode=Payment Type (code) +LabelPaymentMode=Payment Type (label) +PaymentModeShort=Payment Type +PaymentTerm=Payment Term +PaymentConditions=Payment Terms +PaymentConditionsShort=Payment Terms +PaymentAmount=Payment amount +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' +ClassifyUnBilled=Classify 'Unbilled' +CreateBill=Create Invoice +CreateCreditNote=Create credit note +AddBill=Create invoice or credit note +AddToDraftInvoices=Add to draft invoice +DeleteBill=Delete invoice +SearchACustomerInvoice=Search for a customer invoice +SearchASupplierInvoice=Search for a vendor invoice +CancelBill=Cancel an invoice +SendRemindByMail=Send reminder by email +DoPayment=Enter payment +DoPaymentBack=Enter refund +ConvertToReduc=Mark as credit available +ConvertExcessReceivedToReduc=Convert excess received into available credit +ConvertExcessPaidToReduc=Convert excess paid into available discount +EnterPaymentReceivedFromCustomer=Enter payment received from customer +EnterPaymentDueToCustomer=Make payment due to customer +DisabledBecauseRemainderToPayIsZero=Disabled because remaining unpaid is zero +PriceBase=Price base +BillStatus=Invoice status +StatusOfGeneratedInvoices=Status of generated invoices +BillStatusDraft=Draft (needs to be validated) +BillStatusPaid=Paid +BillStatusPaidBackOrConverted=Credit note refund or marked as credit available +BillStatusConverted=Paid (ready for consumption in final invoice) +BillStatusCanceled=Abandoned +BillStatusValidated=Validated (needs to be paid) +BillStatusStarted=Started +BillStatusNotPaid=Not paid +BillStatusNotRefunded=Not refunded +BillStatusClosedUnpaid=Closed (unpaid) +BillStatusClosedPaidPartially=Paid (partially) +BillShortStatusDraft=Draft +BillShortStatusPaid=Paid +BillShortStatusPaidBackOrConverted=Refunded or converted +Refunded=Refunded +BillShortStatusConverted=Paid +BillShortStatusCanceled=Abandoned +BillShortStatusValidated=Validated +BillShortStatusStarted=Started +BillShortStatusNotPaid=Not paid +BillShortStatusNotRefunded=Not refunded +BillShortStatusClosedUnpaid=Closed +BillShortStatusClosedPaidPartially=Paid (partially) +PaymentStatusToValidShort=To validate +ErrorVATIntraNotConfigured=Intra-Community VAT number not yet defined +ErrorNoPaiementModeConfigured=No default payment type defined. Go to Invoice module setup to fix this. +ErrorCreateBankAccount=Create a bank account, then go to Setup panel of Invoice module to define payment types +ErrorBillNotFound=Invoice %s does not exist +ErrorInvoiceAlreadyReplaced=Error, you tried to validate an invoice to replace invoice %s. But this one has already been replaced by invoice %s. +ErrorDiscountAlreadyUsed=Error, discount already used +ErrorInvoiceAvoirMustBeNegative=Error, correct invoice must have a negative amount +ErrorInvoiceOfThisTypeMustBePositive=Error, this type of invoice must have an amount excluding tax positive (or null) +ErrorCantCancelIfReplacementInvoiceNotValidated=Error, can't cancel an invoice that has been replaced by another invoice that is still in draft status +ErrorThisPartOrAnotherIsAlreadyUsedSoDiscountSerieCantBeRemoved=This part or another is already used so discount series cannot be removed. +BillFrom=From +BillTo=To +ActionsOnBill=Actions on invoice +RecurringInvoiceTemplate=Template / Recurring invoice +NoQualifiedRecurringInvoiceTemplateFound=No recurring template invoice qualified for generation. +FoundXQualifiedRecurringInvoiceTemplate=Found %s recurring template invoice(s) qualified for generation. +NotARecurringInvoiceTemplate=Not a recurring template invoice +NewBill=New invoice +LastBills=Latest %s invoices +LatestTemplateInvoices=Latest %s template invoices +LatestCustomerTemplateInvoices=Latest %s customer template invoices +LatestSupplierTemplateInvoices=Latest %s vendor template invoices +LastCustomersBills=Latest %s customer invoices +LastSuppliersBills=Latest %s vendor invoices +AllBills=All invoices +AllCustomerTemplateInvoices=All template invoices +OtherBills=Other invoices +DraftBills=Draft invoices +CustomersDraftInvoices=Customer draft invoices +SuppliersDraftInvoices=Vendor draft invoices +Unpaid=Unpaid +ErrorNoPaymentDefined=Error No payment defined +ConfirmDeleteBill=Are you sure you want to delete this invoice? +ConfirmValidateBill=Are you sure you want to validate this invoice with reference %s? +ConfirmUnvalidateBill=Are you sure you want to change invoice %s to draft status? +ConfirmClassifyPaidBill=Are you sure you want to change invoice %s to status paid? +ConfirmCancelBill=Are you sure you want to cancel invoice %s? +ConfirmCancelBillQuestion=Why do you want to classify this invoice 'abandoned'? +ConfirmClassifyPaidPartially=Are you sure you want to change invoice %s to status paid? +ConfirmClassifyPaidPartiallyQuestion=This invoice has not been paid completely. What is the reason for closing this invoice? +ConfirmClassifyPaidPartiallyReasonAvoir=Remaining unpaid (%s %s) is a discount granted because payment was made before term. I regularize the VAT with a credit note. +ConfirmClassifyPaidPartiallyReasonDiscount=Remaining unpaid (%s %s) is a discount granted because payment was made before term. +ConfirmClassifyPaidPartiallyReasonDiscountNoVat=Remaining unpaid (%s %s) is a discount granted because payment was made before term. I accept to lose the VAT on this discount. +ConfirmClassifyPaidPartiallyReasonDiscountVat=Remaining unpaid (%s %s) is a discount granted because payment was made before term. I recover the VAT on this discount without a credit note. +ConfirmClassifyPaidPartiallyReasonBadCustomer=Bad customer +ConfirmClassifyPaidPartiallyReasonProductReturned=Products partially returned +ConfirmClassifyPaidPartiallyReasonOther=Amount abandoned for other reason +ConfirmClassifyPaidPartiallyReasonDiscountNoVatDesc=This choice is possible if your invoice has been provided with suitable comments. (Example «Only the tax corresponding to the price that has been actually paid gives rights to deduction») +ConfirmClassifyPaidPartiallyReasonDiscountVatDesc=In some countries, this choice might be possible only if your invoice contains correct notes. +ConfirmClassifyPaidPartiallyReasonAvoirDesc=Use this choice if all other does not suit +ConfirmClassifyPaidPartiallyReasonBadCustomerDesc=A bad customer is a customer that refuses to pay his debt. +ConfirmClassifyPaidPartiallyReasonProductReturnedDesc=This choice is used when payment is not complete because some of products were returned +ConfirmClassifyPaidPartiallyReasonOtherDesc=Use this choice if all others are not suitable, for example in following situation:
    - payment not complete because some products were shipped back
    - amount claimed too important because a discount was forgotten
    In all cases, amount over-claimed must be corrected in accountancy system by creating a credit note. +ConfirmClassifyAbandonReasonOther=Other +ConfirmClassifyAbandonReasonOtherDesc=This choice will be used in all other cases. For example because you plan to create a replacing invoice. +ConfirmCustomerPayment=Do you confirm this payment input for %s %s? +ConfirmSupplierPayment=Do you confirm this payment input for %s %s? +ConfirmValidatePayment=Are you sure you want to validate this payment? No change can be made once payment is validated. +ValidateBill=Validate invoice +UnvalidateBill=Unvalidate invoice +NumberOfBills=No. of invoices +NumberOfBillsByMonth=No. of invoices per month +AmountOfBills=Amount of invoices +AmountOfBillsHT=Amount of invoices (net of tax) +AmountOfBillsByMonthHT=Amount of invoices by month (net of tax) +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices +RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation +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 +AlreadyPaid=Already paid +AlreadyPaidBack=Already paid back +AlreadyPaidNoCreditNotesNoDeposits=Already paid (without credit notes and down payments) +Abandoned=Abandoned +RemainderToPay=Remaining unpaid +RemainderToTake=Remaining amount to take +RemainderToPayBack=Remaining amount to refund +Rest=Pending +AmountExpected=Amount claimed +ExcessReceived=Excess received +ExcessPaid=Excess paid +EscompteOffered=Discount offered (payment before term) +EscompteOfferedShort=Discount +SendBillRef=Submission of invoice %s +SendReminderBillRef=Submission of invoice %s (reminder) +StandingOrders=Direct debit orders +StandingOrder=Direct debit order +NoDraftBills=No draft invoices +NoOtherDraftBills=No other draft invoices +NoDraftInvoices=No draft invoices +RefBill=Invoice ref +ToBill=To bill +RemainderToBill=Remainder to bill +SendBillByMail=Send invoice by email +SendReminderBillByMail=Send reminder by email +RelatedCommercialProposals=Related commercial proposals +RelatedRecurringCustomerInvoices=Related recurring customer invoices +MenuToValid=To valid +DateMaxPayment=Payment due on +DateInvoice=Invoice date +DatePointOfTax=Point of tax +NoInvoice=No invoice +ClassifyBill=Classify invoice +SupplierBillsToPay=Unpaid vendor invoices +CustomerBillsUnpaid=Unpaid customer invoices +NonPercuRecuperable=Non-recoverable +SetConditions=Set Payment Terms +SetMode=Set Payment Type +SetRevenuStamp=Set revenue stamp +Billed=Billed +RecurringInvoices=Recurring invoices +RepeatableInvoice=Template invoice +RepeatableInvoices=Template invoices +Repeatable=Template +Repeatables=Templates +ChangeIntoRepeatableInvoice=Convert into template invoice +CreateRepeatableInvoice=Create template invoice +CreateFromRepeatableInvoice=Create from template invoice +CustomersInvoicesAndInvoiceLines=Customer invoices and invoice details +CustomersInvoicesAndPayments=Customer invoices and payments +ExportDataset_invoice_1=Customer invoices and invoice details +ExportDataset_invoice_2=Customer invoices and payments +ProformaBill=Proforma Bill: +Reduction=Reduction +ReductionShort=Disc. +Reductions=Reductions +ReductionsShort=Disc. +Discounts=Discounts +AddDiscount=Create discount +AddRelativeDiscount=Create relative discount +EditRelativeDiscount=Edit relative discount +AddGlobalDiscount=Create absolute discount +EditGlobalDiscounts=Edit absolute discounts +AddCreditNote=Create credit note +ShowDiscount=Show discount +ShowReduc=Show the discount +ShowSourceInvoice=Show the source invoice +RelativeDiscount=Relative discount +GlobalDiscount=Global discount +CreditNote=Credit note +CreditNotes=Credit notes +CreditNotesOrExcessReceived=Credit notes or excess received +Deposit=Down payment +Deposits=Down payments +DiscountFromCreditNote=Discount from credit note %s +DiscountFromDeposit=Down payments from invoice %s +DiscountFromExcessReceived=Payments in excess of invoice %s +DiscountFromExcessPaid=Payments in excess of invoice %s +AbsoluteDiscountUse=This kind of credit can be used on invoice before its validation +CreditNoteDepositUse=Invoice must be validated to use this kind of credits +NewGlobalDiscount=New absolute discount +NewRelativeDiscount=New relative discount +DiscountType=Discount type +NoteReason=Note/Reason +ReasonDiscount=Reason +DiscountOfferedBy=Granted by +DiscountStillRemaining=Discounts or credits available +DiscountAlreadyCounted=Discounts or credits already consumed +CustomerDiscounts=Customer discounts +SupplierDiscounts=Vendors discounts +BillAddress=Bill address +HelpEscompte=This discount is a discount granted to customer because payment was made before term. +HelpAbandonBadCustomer=This amount has been abandoned (customer said to be a bad customer) and is considered as an exceptional loss. +HelpAbandonOther=This amount has been abandoned since it was an error (wrong customer or invoice replaced by another for example) +IdSocialContribution=Social/fiscal tax payment id +PaymentId=Payment id +PaymentRef=Payment ref. +InvoiceId=Invoice id +InvoiceRef=Invoice ref. +InvoiceDateCreation=Invoice creation date +InvoiceStatus=Invoice status +InvoiceNote=Invoice note +InvoicePaid=Invoice paid +InvoicePaidCompletely=Paid completely +InvoicePaidCompletelyHelp=Invoice that are paid completely. This excludes invoices that are paid partially. To get list of all 'Closed' or non 'Closed' invoices, prefer to use a filter on the invoice status. +OrderBilled=Order billed +DonationPaid=Donation paid +PaymentNumber=Payment number +RemoveDiscount=Remove discount +WatermarkOnDraftBill=Watermark on draft invoices (nothing if empty) +InvoiceNotChecked=No invoice selected +ConfirmCloneInvoice=Are you sure you want to clone this invoice %s? +DisabledBecauseReplacedInvoice=Action disabled because invoice has been replaced +DescTaxAndDividendsArea=This area presents a summary of all payments made for special expenses. Only records with payments during the fixed year are included here. +NbOfPayments=No. of payments +SplitDiscount=Split discount in two +ConfirmSplitDiscount=Are you sure you want to split this discount of %s %s into two smaller discounts? +TypeAmountOfEachNewDiscount=Input amount for each of two parts: +TotalOfTwoDiscountMustEqualsOriginal=The total of the two new discounts must be equal to the original discount amount. +ConfirmRemoveDiscount=Are you sure you want to remove this discount? +RelatedBill=Related invoice +RelatedBills=Related invoices +RelatedCustomerInvoices=Related customer invoices +RelatedSupplierInvoices=Related vendor invoices +LatestRelatedBill=Latest related invoice +WarningBillExist=Warning, one or more invoices already exist +MergingPDFTool=Merging PDF tool +AmountPaymentDistributedOnInvoice=Payment amount distributed on invoice +PaymentOnDifferentThirdBills=Allow payments on different third parties bills but same parent company +PaymentNote=Payment note +ListOfPreviousSituationInvoices=List of previous situation invoices +ListOfNextSituationInvoices=List of next situation invoices +ListOfSituationInvoices=List of situation invoices +CurrentSituationTotal=Total current situation +DisabledBecauseNotEnouthCreditNote=To remove a situation invoice from cycle, this invoice's credit note total must cover this invoice total +RemoveSituationFromCycle=Remove this invoice from cycle +ConfirmRemoveSituationFromCycle=Remove this invoice %s from cycle ? +ConfirmOuting=Confirm outing +FrequencyPer_d=Every %s days +FrequencyPer_m=Every %s months +FrequencyPer_y=Every %s years +FrequencyUnit=Frequency unit +toolTipFrequency=Examples:
    Set 7, Day: give a new invoice every 7 days
    Set 3, Month: give a new invoice every 3 month +NextDateToExecution=Date for next invoice generation +NextDateToExecutionShort=Date next gen. +DateLastGeneration=Date of latest generation +DateLastGenerationShort=Date latest gen. +MaxPeriodNumber=Max. number of invoice generation +NbOfGenerationDone=Number of invoice generation already done +NbOfGenerationDoneShort=Number of generation done +MaxGenerationReached=Maximum number of generations reached +InvoiceAutoValidate=Validate invoices automatically +GeneratedFromRecurringInvoice=Generated from template recurring invoice %s +DateIsNotEnough=Date not reached yet +InvoiceGeneratedFromTemplate=Invoice %s generated from recurring template invoice %s +GeneratedFromTemplate=Generated from template invoice %s +WarningInvoiceDateInFuture=Warning, the invoice date is higher than current date +WarningInvoiceDateTooFarInFuture=Warning, the invoice date is too far from current date +ViewAvailableGlobalDiscounts=View available discounts +GroupPaymentsByModOnReports=Group payments by mode on reports +# PaymentConditions +Statut=Status +PaymentConditionShortRECEP=Due Upon Receipt +PaymentConditionRECEP=Due Upon Receipt +PaymentConditionShort30D=30 days +PaymentCondition30D=30 days +PaymentConditionShort30DENDMONTH=30 days of month-end +PaymentCondition30DENDMONTH=Within 30 days following the end of the month +PaymentConditionShort60D=60 days +PaymentCondition60D=60 days +PaymentConditionShort60DENDMONTH=60 days of month-end +PaymentCondition60DENDMONTH=Within 60 days following the end of the month +PaymentConditionShortPT_DELIVERY=Delivery +PaymentConditionPT_DELIVERY=On delivery +PaymentConditionShortPT_ORDER=Order +PaymentConditionPT_ORDER=On order +PaymentConditionShortPT_5050=50-50 +PaymentConditionPT_5050=50%% in advance, 50%% on delivery +PaymentConditionShort10D=10 days +PaymentCondition10D=10 days +PaymentConditionShort10DENDMONTH=10 days of month-end +PaymentCondition10DENDMONTH=Within 10 days following the end of the month +PaymentConditionShort14D=14 days +PaymentCondition14D=14 days +PaymentConditionShort14DENDMONTH=14 days of month-end +PaymentCondition14DENDMONTH=Within 14 days following the end of the month +FixAmount=Fixed amount - 1 line with label '%s' +VarAmount=Variable amount (%% tot.) +VarAmountOneLine=Variable amount (%% tot.) - 1 line with label '%s' +VarAmountAllLines=Variable amount (%% tot.) - all same lines +# PaymentType +PaymentTypeVIR=Bank transfer +PaymentTypeShortVIR=Bank transfer +PaymentTypePRE=Direct debit payment order +PaymentTypeShortPRE=Debit payment order +PaymentTypeLIQ=Cash +PaymentTypeShortLIQ=Cash +PaymentTypeCB=Credit card +PaymentTypeShortCB=Credit card +PaymentTypeCHQ=Check +PaymentTypeShortCHQ=Check +PaymentTypeTIP=TIP (Documents against Payment) +PaymentTypeShortTIP=TIP Payment +PaymentTypeVAD=Online payment +PaymentTypeShortVAD=Online payment +PaymentTypeTRA=Bank draft +PaymentTypeShortTRA=Draft +PaymentTypeFAC=Factor +PaymentTypeShortFAC=Factor +BankDetails=Bank details +BankCode=Bank code +DeskCode=Branch code +BankAccountNumber=Account number +BankAccountNumberKey=Checksum +Residence=Address +IBANNumber=IBAN account number +IBAN=IBAN +BIC=BIC/SWIFT +BICNumber=BIC/SWIFT code +ExtraInfos=Extra infos +RegulatedOn=Regulated on +ChequeNumber=Check N° +ChequeOrTransferNumber=Check/Transfer N° +ChequeBordereau=Check schedule +ChequeMaker=Check/Transfer transmitter +ChequeBank=Bank of Check +CheckBank=Check +NetToBePaid=Net to be paid +PhoneNumber=Tel +FullPhoneNumber=Telephone +TeleFax=Fax +PrettyLittleSentence=Accept the amount of payments due by checks issued in my name as a Member of an accounting association approved by the Fiscal Administration. +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=sent to +PaymentByTransferOnThisBankAccount=Payment by transfer to the following bank account +VATIsNotUsedForInvoice=* Non applicable VAT art-293B of CGI +LawApplicationPart1=By application of the law 80.335 of 12/05/80 +LawApplicationPart2=the goods remain the property of +LawApplicationPart3=the seller until full payment of +LawApplicationPart4=their price. +LimitedLiabilityCompanyCapital=SARL with Capital of +UseLine=Apply +UseDiscount=Use discount +UseCredit=Use credit +UseCreditNoteInInvoicePayment=Reduce amount to pay with this credit +MenuChequeDeposits=Check Deposits +MenuCheques=Checks +MenuChequesReceipts=Check receipts +NewChequeDeposit=New deposit +ChequesReceipts=Check receipts +ChequesArea=Check deposits area +ChequeDeposits=Check deposits +Cheques=Checks +DepositId=Id deposit +NbCheque=Number of checks +CreditNoteConvertedIntoDiscount=This %s has been converted into %s +UsBillingContactAsIncoiveRecipientIfExist=Use contact/address with type 'billing contact' instead of third-party address as recipient for invoices +ShowUnpaidAll=Show all unpaid invoices +ShowUnpaidLateOnly=Show late unpaid invoices only +PaymentInvoiceRef=Payment invoice %s +ValidateInvoice=Validate invoice +ValidateInvoices=Validate invoices +Cash=Cash +Reported=Delayed +DisabledBecausePayments=Not possible since there are some payments +CantRemovePaymentWithOneInvoicePaid=Can't remove payment since there is at least one invoice classified paid +ExpectedToPay=Expected payment +CantRemoveConciliatedPayment=Can't remove reconciled payment +PayedByThisPayment=Paid by this payment +ClosePaidInvoicesAutomatically=Classify automatically all standard, down payment or replacement invoices as "Paid" when payment is done entirely. +ClosePaidCreditNotesAutomatically=Classify automatically all credit notes as "Paid" when refund is done entirely. +ClosePaidContributionsAutomatically=Classify automatically all social or fiscal contributions as "Paid" when payment is done entirely. +AllCompletelyPayedInvoiceWillBeClosed=All invoices with no remainder to pay will be automatically closed with status "Paid". +ToMakePayment=Pay +ToMakePaymentBack=Pay back +ListOfYourUnpaidInvoices=List of unpaid invoices +NoteListOfYourUnpaidInvoices=Note: This list contains only invoices for third parties you are linked to as a sale representative. +RevenueStamp=Tax stamp +YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party +YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party +YouMustCreateStandardInvoiceFirstDesc=You have to create a standard invoice first and convert it to "template" to create a new template invoice +PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template (old implementation of Sponge template) +PDFSpongeDescription=Invoice PDF template Sponge. A complete invoice template +PDFCrevetteDescription=Invoice PDF template Crevette. A complete invoice template for situation invoices +TerreNumRefModelDesc1=Return number with format %syymm-nnnn for standard invoices and %syymm-nnnn for credit notes where yy is year, mm is month and nnnn is a sequence with no break and no return to 0 +MarsNumRefModelDesc1=Return number with format %syymm-nnnn for standard invoices, %syymm-nnnn for replacement invoices, %syymm-nnnn for down payment invoices and %syymm-nnnn for credit notes where yy is year, mm is month and nnnn is a sequence with no break and no return to 0 +TerreNumRefModelError=A bill starting with $syymm already exists and is not compatible with this model of sequence. Remove it or rename it to activate this module. +CactusNumRefModelDesc1=Return number with format %syymm-nnnn for standard invoices, %syymm-nnnn for credit notes and %syymm-nnnn for down payment invoices where yy is year, mm is month and nnnn is a sequence with no break and no return to 0 +EarlyClosingReason=Early closing reason +EarlyClosingComment=Early closing note +##### Types de contacts ##### +TypeContact_facture_internal_SALESREPFOLL=Representative following-up customer invoice +TypeContact_facture_external_BILLING=Customer invoice contact +TypeContact_facture_external_SHIPPING=Customer shipping contact +TypeContact_facture_external_SERVICE=Customer service contact +TypeContact_invoice_supplier_internal_SALESREPFOLL=Representative following-up vendor invoice +TypeContact_invoice_supplier_external_BILLING=Vendor invoice contact +TypeContact_invoice_supplier_external_SHIPPING=Vendor shipping contact +TypeContact_invoice_supplier_external_SERVICE=Vendor service contact +# Situation invoices +InvoiceFirstSituationAsk=First situation invoice +InvoiceFirstSituationDesc=The situation invoices are tied to situations related to a progression, for example the progression of a construction. Each situation is tied to an invoice. +InvoiceSituation=Situation invoice +InvoiceSituationAsk=Invoice following the situation +InvoiceSituationDesc=Create a new situation following an already existing one +SituationAmount=Situation invoice amount(net) +SituationDeduction=Situation subtraction +ModifyAllLines=Modify all lines +CreateNextSituationInvoice=Create next situation +ErrorFindNextSituationInvoice=Error unable to find next situation cycle ref +ErrorOutingSituationInvoiceOnUpdate=Unable to outing this situation invoice. +ErrorOutingSituationInvoiceCreditNote=Unable to outing linked credit note. +NotLastInCycle=This invoice is not the latest in cycle and must not be modified. +DisabledBecauseNotLastInCycle=The next situation already exists. +DisabledBecauseFinal=This situation is final. +situationInvoiceShortcode_AS=AS +situationInvoiceShortcode_S=S +CantBeLessThanMinPercent=The progress can't be smaller than its value in the previous situation. +NoSituations=No open situations +InvoiceSituationLast=Final and general invoice +PDFCrevetteSituationNumber=Situation N°%s +PDFCrevetteSituationInvoiceLineDecompte=Situation invoice - COUNT +PDFCrevetteSituationInvoiceTitle=Situation invoice +PDFCrevetteSituationInvoiceLine=Situation N°%s: Inv. N°%s on %s +TotalSituationInvoice=Total situation +invoiceLineProgressError=Invoice line progress can't be greater than or equal to the next invoice line +updatePriceNextInvoiceErrorUpdateline=Error: update price on invoice line: %s +ToCreateARecurringInvoice=To create a recurring invoice for this contract, first create this draft invoice, then convert it into an invoice template and define the frequency for generation of future invoices. +ToCreateARecurringInvoiceGene=To generate future invoices regularly and manually, just go on menu %s - %s - %s. +ToCreateARecurringInvoiceGeneAuto=If you need to have such invoices generated automatically, ask your administrator to enable and setup module %s. Note that both methods (manual and automatic) can be used together with no risk of duplication. +DeleteRepeatableInvoice=Delete template invoice +ConfirmDeleteRepeatableInvoice=Are your sure you want to delete the template invoice? +CreateOneBillByThird=Create one invoice per third party (otherwise, one invoice per order) +BillCreated=%s bill(s) created +StatusOfGeneratedDocuments=Status of document generation +DoNotGenerateDoc=Do not generate document file +AutogenerateDoc=Auto generate document file +AutoFillDateFrom=Set start date for service line with invoice date +AutoFillDateFromShort=Set start date +AutoFillDateTo=Set end date for service line with next invoice date +AutoFillDateToShort=Set end date +MaxNumberOfGenerationReached=Max number of gen. reached +BILL_DELETEInDolibarr=Invoice deleted +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/az_AZ/blockedlog.lang b/htdocs/langs/az_AZ/blockedlog.lang new file mode 100644 index 00000000000..5afae6e9e53 --- /dev/null +++ b/htdocs/langs/az_AZ/blockedlog.lang @@ -0,0 +1,54 @@ +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). +CompanyInitialKey=Company initial key (hash of genesis block) +BrowseBlockedLog=Unalterable logs +ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) +ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) +DownloadBlockChain=Download fingerprints +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). +OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. +OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. +AddedByAuthority=Stored into remote authority +NotAddedByAuthorityYet=Not yet stored into remote authority +ShowDetails=Show stored details +logPAYMENT_VARIOUS_CREATE=Payment (not assigned to an invoice) created +logPAYMENT_VARIOUS_MODIFY=Payment (not assigned to an invoice) modified +logPAYMENT_VARIOUS_DELETE=Payment (not assigned to an invoice) logical deletion +logPAYMENT_ADD_TO_BANK=Payment added to bank +logPAYMENT_CUSTOMER_CREATE=Customer payment created +logPAYMENT_CUSTOMER_DELETE=Customer payment logical deletion +logDONATION_PAYMENT_CREATE=Donation payment created +logDONATION_PAYMENT_DELETE=Donation payment logical deletion +logBILL_PAYED=Customer invoice paid +logBILL_UNPAYED=Customer invoice set unpaid +logBILL_VALIDATE=Customer invoice validated +logBILL_SENTBYMAIL=Customer invoice send by mail +logBILL_DELETE=Customer invoice logically deleted +logMODULE_RESET=Module BlockedLog was disabled +logMODULE_SET=Module BlockedLog was enabled +logDON_VALIDATE=Donation validated +logDON_MODIFY=Donation modified +logDON_DELETE=Donation logical deletion +logMEMBER_SUBSCRIPTION_CREATE=Member subscription created +logMEMBER_SUBSCRIPTION_MODIFY=Member subscription modified +logMEMBER_SUBSCRIPTION_DELETE=Member subscription logical deletion +logCASHCONTROL_VALIDATE=Cash fence recording +BlockedLogBillDownload=Customer invoice download +BlockedLogBillPreview=Customer invoice preview +BlockedlogInfoDialog=Log Details +ListOfTrackedEvents=List of tracked events +Fingerprint=Fingerprint +DownloadLogCSV=Export archived logs (CSV) +logDOC_PREVIEW=Preview of a validated document in order to print or download +logDOC_DOWNLOAD=Download of a validated document in order to print or send +DataOfArchivedEvent=Full datas of archived event +ImpossibleToReloadObject=Original object (type %s, id %s) not linked (see 'Full datas' column to get unalterable saved data) +BlockedLogAreRequiredByYourCountryLegislation=Unalterable Logs module may be required by the legislation of your country. Disabling this module may render any future transactions invalid with respect to the law and the use of legal software as they can not be validated by a tax audit. +BlockedLogActivatedBecauseRequiredByYourCountryLegislation=Unalterable Logs module was activated because of the legislation of your country. Disabling this module may render any future transactions invalid with respect to the law and the use of legal software as they cannot be validated by a tax audit. +BlockedLogDisableNotAllowedForCountry=List of countries where usage of this module is mandatory (just to prevent to disable the module by error, if your country is in this list, disable of module is not possible without editing this list first. Note also that enabling/disabling this module will keep a track into the unalterable log). +OnlyNonValid=Non-valid +TooManyRecordToScanRestrictFilters=Too many records to scan/analyze. Please restrict list with more restrictive filters. +RestrictYearToExport=Restrict month / year to export diff --git a/htdocs/langs/az_AZ/bookmarks.lang b/htdocs/langs/az_AZ/bookmarks.lang new file mode 100644 index 00000000000..87466cadcfa --- /dev/null +++ b/htdocs/langs/az_AZ/bookmarks.lang @@ -0,0 +1,21 @@ +# Dolibarr language file - Source file is en_US - marque pages +AddThisPageToBookmarks=Add current page to bookmarks +Bookmark=Bookmark +Bookmarks=Bookmarks +ListOfBookmarks=List of bookmarks +EditBookmarks=List/edit bookmarks +NewBookmark=New bookmark +ShowBookmark=Show bookmark +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=Create bookmark +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=Bookmarks management +BookmarksMenuShortCut=Ctrl + shift + m diff --git a/htdocs/langs/az_AZ/boxes.lang b/htdocs/langs/az_AZ/boxes.lang new file mode 100644 index 00000000000..bd62684421a --- /dev/null +++ b/htdocs/langs/az_AZ/boxes.lang @@ -0,0 +1,102 @@ +# Dolibarr language file - Source file is en_US - boxes +BoxLoginInformation=Login Information +BoxLastRssInfos=RSS Information +BoxLastProducts=Latest %s Products/Services +BoxProductsAlertStock=Stock alerts for products +BoxLastProductsInContract=Latest %s contracted products/services +BoxLastSupplierBills=Latest Vendor invoices +BoxLastCustomerBills=Latest Customer invoices +BoxOldestUnpaidCustomerBills=Oldest unpaid customer invoices +BoxOldestUnpaidSupplierBills=Oldest unpaid vendor invoices +BoxLastProposals=Latest commercial proposals +BoxLastProspects=Latest modified prospects +BoxLastCustomers=Latest modified customers +BoxLastSuppliers=Latest modified suppliers +BoxLastCustomerOrders=Latest sales orders +BoxLastActions=Latest actions +BoxLastContracts=Latest contracts +BoxLastContacts=Latest contacts/addresses +BoxLastMembers=Latest members +BoxFicheInter=Latest interventions +BoxCurrentAccounts=Open accounts balance +BoxTitleMemberNextBirthdays=Birthdays of this month (members) +BoxTitleLastRssInfos=Latest %s news from %s +BoxTitleLastProducts=Products/Services: last %s modified +BoxTitleProductsAlertStock=Products: stock alert +BoxTitleLastSuppliers=Latest %s recorded suppliers +BoxTitleLastModifiedSuppliers=Vendors: last %s modified +BoxTitleLastModifiedCustomers=Customers: last %s modified +BoxTitleLastCustomersOrProspects=Latest %s customers or prospects +BoxTitleLastCustomerBills=Latest %s modified Customer invoices +BoxTitleLastSupplierBills=Latest %s modified Vendor invoices +BoxTitleLastModifiedProspects=Prospects: last %s modified +BoxTitleLastModifiedMembers=Latest %s members +BoxTitleLastFicheInter=Latest %s modified interventions +BoxTitleOldestUnpaidCustomerBills=Customer Invoices: oldest %s unpaid +BoxTitleOldestUnpaidSupplierBills=Vendor Invoices: oldest %s unpaid +BoxTitleCurrentAccounts=Open Accounts: balances +BoxTitleSupplierOrdersAwaitingReception=Supplier orders awaiting reception +BoxTitleLastModifiedContacts=Contacts/Addresses: last %s modified +BoxMyLastBookmarks=Bookmarks: latest %s +BoxOldestExpiredServices=Oldest active expired services +BoxLastExpiredServices=Latest %s oldest contacts with active expired services +BoxTitleLastActionsToDo=Latest %s actions to do +BoxTitleLastContracts=Latest %s modified contracts +BoxTitleLastModifiedDonations=Latest %s modified donations +BoxTitleLastModifiedExpenses=Latest %s modified expense reports +BoxTitleLatestModifiedBoms=Latest %s modified BOMs +BoxTitleLatestModifiedMos=Latest %s modified Manufacturing Orders +BoxGlobalActivity=Global activity (invoices, proposals, orders) +BoxGoodCustomers=Good customers +BoxTitleGoodCustomers=%s Good customers +FailedToRefreshDataInfoNotUpToDate=Failed to refresh RSS flux. Latest successful refresh date: %s +LastRefreshDate=Latest refresh date +NoRecordedBookmarks=No bookmarks defined. +ClickToAdd=Click here to add. +NoRecordedCustomers=No recorded customers +NoRecordedContacts=No recorded contacts +NoActionsToDo=No actions to do +NoRecordedOrders=No recorded sales orders +NoRecordedProposals=No recorded proposals +NoRecordedInvoices=No recorded customer invoices +NoUnpaidCustomerBills=No unpaid customer invoices +NoUnpaidSupplierBills=No unpaid vendor invoices +NoModifiedSupplierBills=No recorded vendor invoices +NoRecordedProducts=No recorded products/services +NoRecordedProspects=No recorded prospects +NoContractedProducts=No products/services contracted +NoRecordedContracts=No recorded contracts +NoRecordedInterventions=No recorded interventions +BoxLatestSupplierOrders=Latest purchase orders +BoxLatestSupplierOrdersAwaitingReception=Latest Purchase Orders (with a pending reception) +NoSupplierOrder=No recorded purchase order +BoxCustomersInvoicesPerMonth=Customer Invoices per month +BoxSuppliersInvoicesPerMonth=Vendor Invoices per month +BoxCustomersOrdersPerMonth=Sales Orders per month +BoxSuppliersOrdersPerMonth=Vendor Orders per month +BoxProposalsPerMonth=Proposals per month +NoTooLowStockProducts=No products are under the low stock limit +BoxProductDistribution=Products/Services Distribution +ForObject=On %s +BoxTitleLastModifiedSupplierBills=Vendor Invoices: last %s modified +BoxTitleLatestModifiedSupplierOrders=Vendor Orders: last %s modified +BoxTitleLastModifiedCustomerBills=Customer Invoices: last %s modified +BoxTitleLastModifiedCustomerOrders=Sales Orders: last %s modified +BoxTitleLastModifiedPropals=Latest %s modified proposals +ForCustomersInvoices=Customers invoices +ForCustomersOrders=Customers orders +ForProposals=Proposals +LastXMonthRolling=The latest %s month rolling +ChooseBoxToAdd=Add widget to your dashboard +BoxAdded=Widget was added in your dashboard +BoxTitleUserBirthdaysOfMonth=Birthdays of this month (users) +BoxLastManualEntries=Last manual entries in accountancy +BoxTitleLastManualEntries=%s latest manual entries +NoRecordedManualEntries=No manual entries record in accountancy +BoxSuspenseAccount=Count accountancy operation with suspense account +BoxTitleSuspenseAccount=Number of unallocated lines +NumberOfLinesInSuspenseAccount=Number of line in suspense account +SuspenseAccountNotDefined=Suspense account isn't defined +BoxLastCustomerShipments=Last customer shipments +BoxTitleLastCustomerShipments=Latest %s customer shipments +NoRecordedShipments=No recorded customer shipment diff --git a/htdocs/langs/az_AZ/cashdesk.lang b/htdocs/langs/az_AZ/cashdesk.lang new file mode 100644 index 00000000000..0903a3d10bc --- /dev/null +++ b/htdocs/langs/az_AZ/cashdesk.lang @@ -0,0 +1,110 @@ +# Language file - Source file is en_US - cashdesk +CashDeskMenu=Point of sale +CashDesk=Point of sale +CashDeskBankCash=Bank account (cash) +CashDeskBankCB=Bank account (card) +CashDeskBankCheque=Bank account (cheque) +CashDeskWarehouse=Warehouse +CashdeskShowServices=Selling services +CashDeskProducts=Products +CashDeskStock=Stock +CashDeskOn=on +CashDeskThirdParty=Third party +ShoppingCart=Shopping cart +NewSell=New sell +AddThisArticle=Add this article +RestartSelling=Go back on sell +SellFinished=Sale complete +PrintTicket=Print ticket +SendTicket=Send ticket +NoProductFound=No article found +ProductFound=product found +NoArticle=No article +Identification=Identification +Article=Article +Difference=Difference +TotalTicket=Total ticket +NoVAT=No VAT for this sale +Change=Excess received +BankToPay=Account for payment +ShowCompany=Show company +ShowStock=Show warehouse +DeleteArticle=Click to remove this article +FilterRefOrLabelOrBC=Search (Ref/Label) +UserNeedPermissionToEditStockToUsePos=You ask to decrease stock on invoice creation, so user that uses POS needs to have permission to edit stock. +DolibarrReceiptPrinter=Dolibarr Receipt Printer +PointOfSale=Point of Sale +PointOfSaleShort=POS +CloseBill=Close Bill +Floors=Floors +Floor=Floor +AddTable=Add table +Place=Place +TakeposConnectorNecesary='TakePOS Connector' required +OrderPrinters=Order printers +SearchProduct=Search product +Receipt=Receipt +Header=Header +Footer=Footer +AmountAtEndOfPeriod=Amount at end of period (day, month or year) +TheoricalAmount=Theorical amount +RealAmount=Real amount +CashFence=Cash fence +CashFenceDone=Cash fence done for the period +NbOfInvoices=Nb of invoices +Paymentnumpad=Type of Pad to enter payment +Numberspad=Numbers Pad +BillsCoinsPad=Coins and banknotes Pad +DolistorePosCategory=TakePOS modules and other POS solutions for Dolibarr +TakeposNeedsCategories=TakePOS needs product categories to work +OrderNotes=Order Notes +CashDeskBankAccountFor=Default account to use for payments in +NoPaimementModesDefined=No paiment mode defined in TakePOS configuration +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts +EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant +ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? +ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? +History=History +ValidateAndClose=Validate and close +Terminal=Terminal +NumberOfTerminals=Number of Terminals +TerminalSelect=Select terminal you want to use: +POSTicket=POS Ticket +POSTerminal=POS Terminal +POSModule=POS Module +BasicPhoneLayout=Use basic layout for phones +SetupOfTerminalNotComplete=Setup of terminal %s is not complete +DirectPayment=Direct payment +DirectPaymentButton=Direct cash payment button +InvoiceIsAlreadyValidated=Invoice is already validated +NoLinesToBill=No lines to bill +CustomReceipt=Custom Receipt +ReceiptName=Receipt Name +ProductSupplements=Product Supplements +SupplementCategory=Supplement category +ColorTheme=Color theme +Colorful=Colorful +HeadBar=Head Bar +SortProductField=Field for sorting products +Browser=Browser +BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. +PrintMethod=Print method +ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. +ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for POS sales +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use +BarRestaurant=Bar Restaurant +AutoOrder=Customer auto order diff --git a/htdocs/langs/az_AZ/categories.lang b/htdocs/langs/az_AZ/categories.lang new file mode 100644 index 00000000000..30bace0574c --- /dev/null +++ b/htdocs/langs/az_AZ/categories.lang @@ -0,0 +1,89 @@ +# Dolibarr language file - Source file is en_US - categories +Rubrique=Tag/Category +Rubriques=Tags/Categories +RubriquesTransactions=Tags/Categories of transactions +categories=tags/categories +NoCategoryYet=No tag/category of this type created +In=In +AddIn=Add in +modify=modify +Classify=Classify +CategoriesArea=Tags/Categories area +ProductsCategoriesArea=Products/Services tags/categories area +SuppliersCategoriesArea=Vendors tags/categories area +CustomersCategoriesArea=Customers tags/categories area +MembersCategoriesArea=Members tags/categories area +ContactsCategoriesArea=Contacts tags/categories area +AccountsCategoriesArea=Accounts tags/categories area +ProjectsCategoriesArea=Projects tags/categories area +UsersCategoriesArea=Users tags/categories area +SubCats=Sub-categories +CatList=List of tags/categories +NewCategory=New tag/category +ModifCat=Modify tag/category +CatCreated=Tag/category created +CreateCat=Create tag/category +CreateThisCat=Create this tag/category +NoSubCat=No subcategory. +SubCatOf=Subcategory +FoundCats=Found tags/categories +ImpossibleAddCat=Impossible to add the tag/category %s +WasAddedSuccessfully=%s was added successfully. +ObjectAlreadyLinkedToCategory=Element is already linked to this tag/category. +ProductIsInCategories=Product/service is linked to following tags/categories +CompanyIsInCustomersCategories=This third party is linked to following customers/prospects tags/categories +CompanyIsInSuppliersCategories=This third party is linked to following vendors tags/categories +MemberIsInCategories=This member is linked to following members tags/categories +ContactIsInCategories=This contact is linked to following contacts tags/categories +ProductHasNoCategory=This product/service is not in any tags/categories +CompanyHasNoCategory=This third party is not in any tags/categories +MemberHasNoCategory=This member is not in any tags/categories +ContactHasNoCategory=This contact is not in any tags/categories +ProjectHasNoCategory=This project is not in any tags/categories +ClassifyInCategory=Add to tag/category +NotCategorized=Without tag/category +CategoryExistsAtSameLevel=This category already exists with this ref +ContentsVisibleByAllShort=Contents visible by all +ContentsNotVisibleByAllShort=Contents not visible by all +DeleteCategory=Delete tag/category +ConfirmDeleteCategory=Are you sure you want to delete this tag/category? +NoCategoriesDefined=No tag/category defined +SuppliersCategoryShort=Vendors tag/category +CustomersCategoryShort=Customers tag/category +ProductsCategoryShort=Products tag/category +MembersCategoryShort=Members tag/category +SuppliersCategoriesShort=Vendors tags/categories +CustomersCategoriesShort=Customers tags/categories +ProspectsCategoriesShort=Prospects tags/categories +CustomersProspectsCategoriesShort=Cust./Prosp. tags/categories +ProductsCategoriesShort=Products tags/categories +MembersCategoriesShort=Members tags/categories +ContactCategoriesShort=Contacts tags/categories +AccountsCategoriesShort=Accounts tags/categories +ProjectsCategoriesShort=Projects tags/categories +UsersCategoriesShort=Users tags/categories +StockCategoriesShort=Warehouse tags/categories +ThisCategoryHasNoItems=This category does not contain any items. +CategId=Tag/category id +CatSupList=List of vendor tags/categories +CatCusList=List of customer/prospect tags/categories +CatProdList=List of products tags/categories +CatMemberList=List of members tags/categories +CatContactList=List of contact tags/categories +CatSupLinks=Links between suppliers and tags/categories +CatCusLinks=Links between customers/prospects and tags/categories +CatContactsLinks=Links between contacts/addresses and tags/categories +CatProdLinks=Links between products/services and tags/categories +CatProJectLinks=Links between projects and tags/categories +DeleteFromCat=Remove from tags/category +ExtraFieldsCategories=Complementary attributes +CategoriesSetup=Tags/categories setup +CategorieRecursiv=Link with parent tag/category automatically +CategorieRecursivHelp=If option is on, when you add a product into a subcategory, product will also be added into the parent category. +AddProductServiceIntoCategory=Add the following product/service +ShowCategory=Show tag/category +ByDefaultInList=By default in list +ChooseCategory=Choose category +StocksCategoriesArea=Warehouses Categories Area +ActionCommCategoriesArea=Events Categories Area +UseOrOperatorForCategories=Use or operator for categories diff --git a/htdocs/langs/az_AZ/commercial.lang b/htdocs/langs/az_AZ/commercial.lang new file mode 100644 index 00000000000..10c536e0d48 --- /dev/null +++ b/htdocs/langs/az_AZ/commercial.lang @@ -0,0 +1,80 @@ +# Dolibarr language file - Source file is en_US - commercial +Commercial=Commerce +CommercialArea=Commerce area +Customer=Customer +Customers=Customers +Prospect=Prospect +Prospects=Prospects +DeleteAction=Delete an event +NewAction=New event +AddAction=Create event +AddAnAction=Create an event +AddActionRendezVous=Create a Rendez-vous event +ConfirmDeleteAction=Are you sure you want to delete this event? +CardAction=Event card +ActionOnCompany=Related company +ActionOnContact=Related contact +TaskRDVWith=Meeting with %s +ShowTask=Show task +ShowAction=Show event +ActionsReport=Events report +ThirdPartiesOfSaleRepresentative=Third parties with sales representative +SaleRepresentativesOfThirdParty=Sales representatives of third party +SalesRepresentative=Sales representative +SalesRepresentatives=Sales representatives +SalesRepresentativeFollowUp=Sales representative (follow-up) +SalesRepresentativeSignature=Sales representative (signature) +NoSalesRepresentativeAffected=No particular sales representative assigned +ShowCustomer=Show customer +ShowProspect=Show prospect +ListOfProspects=List of prospects +ListOfCustomers=List of customers +LastDoneTasks=Latest %s completed actions +LastActionsToDo=Oldest %s not completed actions +DoneAndToDoActions=Completed and To do events +DoneActions=Completed events +ToDoActions=Incomplete events +SendPropalRef=Submission of commercial proposal %s +SendOrderRef=Submission of order %s +StatusNotApplicable=Not applicable +StatusActionToDo=To do +StatusActionDone=Complete +StatusActionInProcess=In process +TasksHistoryForThisContact=Events for this contact +LastProspectDoNotContact=Do not contact +LastProspectNeverContacted=Never contacted +LastProspectToContact=To contact +LastProspectContactInProcess=Contact in process +LastProspectContactDone=Contact done +ActionAffectedTo=Event assigned to +ActionDoneBy=Event done by +ActionAC_TEL=Phone call +ActionAC_FAX=Send fax +ActionAC_PROP=Send proposal by mail +ActionAC_EMAIL=Send Email +ActionAC_EMAIL_IN=Reception of Email +ActionAC_RDV=Meetings +ActionAC_INT=Intervention on site +ActionAC_FAC=Send customer invoice by mail +ActionAC_REL=Send customer invoice by mail (reminder) +ActionAC_CLO=Close +ActionAC_EMAILING=Send mass email +ActionAC_COM=Send sales order by mail +ActionAC_SHIP=Send shipping by mail +ActionAC_SUP_ORD=Send purchase order by mail +ActionAC_SUP_INV=Send vendor invoice by mail +ActionAC_OTH=Other +ActionAC_OTH_AUTO=Automatically inserted events +ActionAC_MANUAL=Manually inserted events +ActionAC_AUTO=Automatically inserted events +ActionAC_OTH_AUTOShort=Auto +Stats=Sales statistics +StatusProsp=Prospect status +DraftPropals=Draft commercial proposals +NoLimit=No limit +ToOfferALinkForOnlineSignature=Link for online signature +WelcomeOnOnlineSignaturePage=Welcome to the page to accept commercial proposals from %s +ThisScreenAllowsYouToSignDocFrom=This screen allow you to accept and sign, or refuse, a quote/commercial proposal +ThisIsInformationOnDocumentToSign=This is information on document to accept or refuse +SignatureProposalRef=Signature of quote/commercial proposal %s +FeatureOnlineSignDisabled=Feature for online signing disabled or document generated before the feature was enabled diff --git a/htdocs/langs/az_AZ/companies.lang b/htdocs/langs/az_AZ/companies.lang new file mode 100644 index 00000000000..0fad58c9389 --- /dev/null +++ b/htdocs/langs/az_AZ/companies.lang @@ -0,0 +1,458 @@ +# Dolibarr language file - Source file is en_US - companies +ErrorCompanyNameAlreadyExists=Company name %s already exists. Choose another one. +ErrorSetACountryFirst=Set the country first +SelectThirdParty=Select a third party +ConfirmDeleteCompany=Are you sure you want to delete this company and all inherited information? +DeleteContact=Delete a contact/address +ConfirmDeleteContact=Are you sure you want to delete this contact and all inherited information? +MenuNewThirdParty=New Third Party +MenuNewCustomer=New Customer +MenuNewProspect=New Prospect +MenuNewSupplier=New Vendor +MenuNewPrivateIndividual=New private individual +NewCompany=New company (prospect, customer, vendor) +NewThirdParty=New Third Party (prospect, customer, vendor) +CreateDolibarrThirdPartySupplier=Create a third party (vendor) +CreateThirdPartyOnly=Create third party +CreateThirdPartyAndContact=Create a third party + a child contact +ProspectionArea=Prospection area +IdThirdParty=Id third party +IdCompany=Company Id +IdContact=Contact Id +Contacts=Contacts/Addresses +ThirdPartyContacts=Third-party contacts +ThirdPartyContact=Third-party contact/address +Company=Company +CompanyName=Company name +AliasNames=Alias name (commercial, trademark, ...) +AliasNameShort=Alias Name +Companies=Companies +CountryIsInEEC=Country is inside the European Economic Community +PriceFormatInCurrentLanguage=Price display format in the current language and currency +ThirdPartyName=Third-party name +ThirdPartyEmail=Third-party email +ThirdParty=Third-party +ThirdParties=Third-parties +ThirdPartyProspects=Prospects +ThirdPartyProspectsStats=Prospects +ThirdPartyCustomers=Customers +ThirdPartyCustomersStats=Customers +ThirdPartyCustomersWithIdProf12=Customers with %s or %s +ThirdPartySuppliers=Vendors +ThirdPartyType=Third-party type +Individual=Private individual +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=Parent company +Subsidiaries=Subsidiaries +ReportByMonth=Report by month +ReportByCustomers=Report by customer +ReportByQuarter=Report by rate +CivilityCode=Civility code +RegisteredOffice=Registered office +Lastname=Last name +Firstname=First name +PostOrFunction=Job position +UserTitle=Title +NatureOfThirdParty=Nature of Third party +NatureOfContact=Nature of Contact +Address=Address +State=State/Province +StateCode=State/Province code +StateShort=State +Region=Region +Region-State=Region - State +Country=Country +CountryCode=Country code +CountryId=Country id +Phone=Phone +PhoneShort=Phone +Skype=Skype +Call=Call +Chat=Chat +PhonePro=Prof. phone +PhonePerso=Pers. phone +PhoneMobile=Mobile +No_Email=Refuse bulk emailings +Fax=Fax +Zip=Zip Code +Town=City +Web=Web +Poste= Position +DefaultLang=Language default +VATIsUsed=Sales tax used +VATIsUsedWhenSelling=This defines if this third party includes a sale tax or not when it makes an invoice to its own customers +VATIsNotUsed=Sales tax is not used +CopyAddressFromSoc=Copy address from third-party details +ThirdpartyNotCustomerNotSupplierSoNoRef=Third party neither customer nor vendor, no available referring objects +ThirdpartyIsNeitherCustomerNorClientSoCannotHaveDiscounts=Third party neither customer nor vendor, discounts are not available +PaymentBankAccount=Payment bank account +OverAllProposals=Proposals +OverAllOrders=Orders +OverAllInvoices=Invoices +OverAllSupplierProposals=Price requests +##### Local Taxes ##### +LocalTax1IsUsed=Use second tax +LocalTax1IsUsedES= RE is used +LocalTax1IsNotUsedES= RE is not used +LocalTax2IsUsed=Use third tax +LocalTax2IsUsedES= IRPF is used +LocalTax2IsNotUsedES= IRPF is not used +WrongCustomerCode=Customer code invalid +WrongSupplierCode=Vendor code invalid +CustomerCodeModel=Customer code model +SupplierCodeModel=Vendor code model +Gencod=Barcode +##### Professional ID ##### +ProfId1Short=Prof. id 1 +ProfId2Short=Prof. id 2 +ProfId3Short=Prof. id 3 +ProfId4Short=Prof. id 4 +ProfId5Short=Prof. id 5 +ProfId6Short=Prof. id 6 +ProfId1=Professional ID 1 +ProfId2=Professional ID 2 +ProfId3=Professional ID 3 +ProfId4=Professional ID 4 +ProfId5=Professional ID 5 +ProfId6=Professional ID 6 +ProfId1AR=Prof Id 1 (CUIT/CUIL) +ProfId2AR=Prof Id 2 (Revenu brutes) +ProfId3AR=- +ProfId4AR=- +ProfId5AR=- +ProfId6AR=- +ProfId1AT=Prof Id 1 (USt.-IdNr) +ProfId2AT=Prof Id 2 (USt.-Nr) +ProfId3AT=Prof Id 3 (Handelsregister-Nr.) +ProfId4AT=- +ProfId5AT=- +ProfId6AT=- +ProfId1AU=Prof Id 1 (ABN) +ProfId2AU=- +ProfId3AU=- +ProfId4AU=- +ProfId5AU=- +ProfId6AU=- +ProfId1BE=Prof Id 1 (Professional number) +ProfId2BE=- +ProfId3BE=- +ProfId4BE=- +ProfId5BE=- +ProfId6BE=- +ProfId1BR=- +ProfId2BR=IE (Inscricao Estadual) +ProfId3BR=IM (Inscricao Municipal) +ProfId4BR=CPF +#ProfId5BR=CNAE +#ProfId6BR=INSS +ProfId1CH=- +ProfId2CH=- +ProfId3CH=Prof Id 1 (Federal number) +ProfId4CH=Prof Id 2 (Commercial Record number) +ProfId5CH=- +ProfId6CH=- +ProfId1CL=Prof Id 1 (R.U.T.) +ProfId2CL=- +ProfId3CL=- +ProfId4CL=- +ProfId5CL=- +ProfId6CL=- +ProfId1CO=Prof Id 1 (R.U.T.) +ProfId2CO=- +ProfId3CO=- +ProfId4CO=- +ProfId5CO=- +ProfId6CO=- +ProfId1DE=Prof Id 1 (USt.-IdNr) +ProfId2DE=Prof Id 2 (USt.-Nr) +ProfId3DE=Prof Id 3 (Handelsregister-Nr.) +ProfId4DE=- +ProfId5DE=- +ProfId6DE=- +ProfId1ES=Prof Id 1 (CIF/NIF) +ProfId2ES=Prof Id 2 (Social security number) +ProfId3ES=Prof Id 3 (CNAE) +ProfId4ES=Prof Id 4 (Collegiate number) +ProfId5ES=- +ProfId6ES=- +ProfId1FR=Prof Id 1 (SIREN) +ProfId2FR=Prof Id 2 (SIRET) +ProfId3FR=Prof Id 3 (NAF, old APE) +ProfId4FR=Prof Id 4 (RCS/RM) +ProfId5FR=- +ProfId6FR=- +ProfId1GB=Registration Number +ProfId2GB=- +ProfId3GB=SIC +ProfId4GB=- +ProfId5GB=- +ProfId6GB=- +ProfId1HN=Id prof. 1 (RTN) +ProfId2HN=- +ProfId3HN=- +ProfId4HN=- +ProfId5HN=- +ProfId6HN=- +ProfId1IN=Prof Id 1 (TIN) +ProfId2IN=Prof Id 2 (PAN) +ProfId3IN=Prof Id 3 (SRVC TAX) +ProfId4IN=Prof Id 4 +ProfId5IN=Prof Id 5 +ProfId6IN=- +ProfId1LU=Id. prof. 1 (R.C.S. Luxembourg) +ProfId2LU=Id. prof. 2 (Business permit) +ProfId3LU=- +ProfId4LU=- +ProfId5LU=- +ProfId6LU=- +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=Id. prof. 5 (I.C.E.) +ProfId6MA=- +ProfId1MX=Prof Id 1 (R.F.C). +ProfId2MX=Prof Id 2 (R..P. IMSS) +ProfId3MX=Prof Id 3 (Profesional Charter) +ProfId4MX=- +ProfId5MX=- +ProfId6MX=- +ProfId1NL=KVK nummer +ProfId2NL=- +ProfId3NL=- +ProfId4NL=Burgerservicenummer (BSN) +ProfId5NL=- +ProfId6NL=- +ProfId1PT=Prof Id 1 (NIPC) +ProfId2PT=Prof Id 2 (Social security number) +ProfId3PT=Prof Id 3 (Commercial Record number) +ProfId4PT=Prof Id 4 (Conservatory) +ProfId5PT=- +ProfId6PT=- +ProfId1SN=RC +ProfId2SN=NINEA +ProfId3SN=- +ProfId4SN=- +ProfId5SN=- +ProfId6SN=- +ProfId1TN=Prof Id 1 (RC) +ProfId2TN=Prof Id 2 (Fiscal matricule) +ProfId3TN=Prof Id 3 (Douane code) +ProfId4TN=Prof Id 4 (BAN) +ProfId5TN=- +ProfId6TN=- +ProfId1US=Prof Id (FEIN) +ProfId2US=- +ProfId3US=- +ProfId4US=- +ProfId5US=- +ProfId6US=- +ProfId1RO=Prof Id 1 (CUI) +ProfId2RO=Prof Id 2 (Nr. Înmatriculare) +ProfId3RO=Prof Id 3 (CAEN) +ProfId4RO=- +ProfId5RO=Prof Id 5 (EUID) +ProfId6RO=- +ProfId1RU=Prof Id 1 (OGRN) +ProfId2RU=Prof Id 2 (INN) +ProfId3RU=Prof Id 3 (KPP) +ProfId4RU=Prof Id 4 (OKPO) +ProfId5RU=- +ProfId6RU=- +ProfId1DZ=RC +ProfId2DZ=Art. +ProfId3DZ=NIF +ProfId4DZ=NIS +VATIntra=VAT ID +VATIntraShort=VAT ID +VATIntraSyntaxIsValid=Syntax is valid +VATReturn=VAT return +ProspectCustomer=Prospect / Customer +Prospect=Prospect +CustomerCard=Customer Card +Customer=Customer +CustomerRelativeDiscount=Relative customer discount +SupplierRelativeDiscount=Relative vendor discount +CustomerRelativeDiscountShort=Relative discount +CustomerAbsoluteDiscountShort=Absolute discount +CompanyHasRelativeDiscount=This customer has a default discount of %s%% +CompanyHasNoRelativeDiscount=This customer has no relative discount by default +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 +CompanyHasDownPaymentOrCommercialDiscount=This customer has discounts available (commercial, down payments) for %s %s +CompanyHasCreditNote=This customer still has credit notes for %s %s +HasNoAbsoluteDiscountFromSupplier=You have no discount credit available from this vendor +HasAbsoluteDiscountFromSupplier=You have discounts available (credits notes or down payments) for %s %s from this vendor +HasDownPaymentOrCommercialDiscountFromSupplier=You have discounts available (commercial, down payments) for %s %s from this vendor +HasCreditNoteFromSupplier=You have credit notes for %s %s from this vendor +CompanyHasNoAbsoluteDiscount=This customer has no discount credit available +CustomerAbsoluteDiscountAllUsers=Absolute customer discounts (granted by all users) +CustomerAbsoluteDiscountMy=Absolute customer discounts (granted by yourself) +SupplierAbsoluteDiscountAllUsers=Absolute vendor discounts (entered by all users) +SupplierAbsoluteDiscountMy=Absolute vendor discounts (entered by yourself) +DiscountNone=None +Vendor=Vendor +Supplier=Vendor +AddContact=Create contact +AddContactAddress=Create contact/address +EditContact=Edit contact +EditContactAddress=Edit contact/address +Contact=Contact +ContactId=Contact id +ContactsAddresses=Contacts/Addresses +FromContactName=Name: +NoContactDefinedForThirdParty=No contact defined for this third party +NoContactDefined=No contact defined +DefaultContact=Default contact/address +ContactByDefaultFor=Default contact/address for +AddThirdParty=Create third party +DeleteACompany=Delete a company +PersonalInformations=Personal data +AccountancyCode=Accounting account +CustomerCode=Customer Code +SupplierCode=Vendor Code +CustomerCodeShort=Customer Code +SupplierCodeShort=Vendor Code +CustomerCodeDesc=Customer Code, unique for all customers +SupplierCodeDesc=Vendor Code, unique for all vendors +RequiredIfCustomer=Required if third party is a customer or prospect +RequiredIfSupplier=Required if third party is a vendor +ValidityControledByModule=Validity controlled by module +ThisIsModuleRules=Rules for this module +ProspectToContact=Prospect to contact +CompanyDeleted=Company "%s" deleted from database. +ListOfContacts=List of contacts/addresses +ListOfContactsAddresses=List of contacts/addresses +ListOfThirdParties=List of Third Parties +ShowCompany=Third Party +ShowContact=Contact-Address +ContactsAllShort=All (No filter) +ContactType=Contact type +ContactForOrders=Order's contact +ContactForOrdersOrShipments=Order's or shipment's contact +ContactForProposals=Proposal's contact +ContactForContracts=Contract's contact +ContactForInvoices=Invoice's contact +NoContactForAnyOrder=This contact is not a contact for any order +NoContactForAnyOrderOrShipments=This contact is not a contact for any order or shipment +NoContactForAnyProposal=This contact is not a contact for any commercial proposal +NoContactForAnyContract=This contact is not a contact for any contract +NoContactForAnyInvoice=This contact is not a contact for any invoice +NewContact=New contact +NewContactAddress=New Contact/Address +MyContacts=My contacts +Capital=Capital +CapitalOf=Capital of %s +EditCompany=Edit company +ThisUserIsNot=This user is not a prospect, customer or vendor +VATIntraCheck=Check +VATIntraCheckDesc=The VAT ID must include the country prefix. The link %s uses the European VAT checker service (VIES) which requires internet access from the Dolibarr server. +VATIntraCheckURL=http://ec.europa.eu/taxation_customs/vies/vieshome.do +VATIntraCheckableOnEUSite=Check the intra-Community VAT ID on the European Commission website +VATIntraManualCheck=You can also check manually on the European Commission website %s +ErrorVATCheckMS_UNAVAILABLE=Check not possible. Check service is not provided by the member state (%s). +NorProspectNorCustomer=Not prospect, nor customer +JuridicalStatus=Legal Entity Type +Staff=Employees +ProspectLevelShort=Potential +ProspectLevel=Prospect potential +ContactPrivate=Private +ContactPublic=Shared +ContactVisibility=Visibility +ContactOthers=Other +OthersNotLinkedToThirdParty=Others, not linked to a third party +ProspectStatus=Prospect status +PL_NONE=None +PL_UNKNOWN=Unknown +PL_LOW=Low +PL_MEDIUM=Medium +PL_HIGH=High +TE_UNKNOWN=- +TE_STARTUP=Startup +TE_GROUP=Large company +TE_MEDIUM=Medium company +TE_ADMIN=Governmental +TE_SMALL=Small company +TE_RETAIL=Retailer +TE_WHOLE=Wholesaler +TE_PRIVATE=Private individual +TE_OTHER=Other +StatusProspect-1=Do not contact +StatusProspect0=Never contacted +StatusProspect1=To be contacted +StatusProspect2=Contact in process +StatusProspect3=Contact done +ChangeDoNotContact=Change status to 'Do not contact' +ChangeNeverContacted=Change status to 'Never contacted' +ChangeToContact=Change status to 'To be contacted' +ChangeContactInProcess=Change status to 'Contact in process' +ChangeContactDone=Change status to 'Contact done' +ProspectsByStatus=Prospects by status +NoParentCompany=None +ExportCardToFormat=Export card to format +ContactNotLinkedToCompany=Contact not linked to any third party +DolibarrLogin=Dolibarr login +NoDolibarrAccess=No Dolibarr access +ExportDataset_company_1=Third-parties (companies/foundations/physical people) and their properties +ExportDataset_company_2=Contacts and their properties +ImportDataset_company_1=Third-parties and their properties +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) +PriceLevel=Price Level +PriceLevelLabels=Price Level Labels +DeliveryAddress=Delivery address +AddAddress=Add address +SupplierCategory=Vendor category +JuridicalStatus200=Independent +DeleteFile=Delete file +ConfirmDeleteFile=Are you sure you want to delete this file? +AllocateCommercial=Assigned to sales representative +Organization=Organization +FiscalYearInformation=Fiscal Year +FiscalMonthStart=Starting month of the fiscal year +SocialNetworksInformation=Social networks +SocialNetworksFacebookURL=Facebook URL +SocialNetworksTwitterURL=Twitter URL +SocialNetworksLinkedinURL=Linkedin URL +SocialNetworksInstagramURL=Instagram URL +SocialNetworksYoutubeURL=Youtube URL +SocialNetworksGithubURL=Github URL +YouMustAssignUserMailFirst=You must create an email for this user prior to being able to add an email notification. +YouMustCreateContactFirst=To be able to add email notifications, you must first define contacts with valid emails for the third party +ListSuppliersShort=List of Vendors +ListProspectsShort=List of Prospects +ListCustomersShort=List of Customers +ThirdPartiesArea=Third Parties/Contacts +LastModifiedThirdParties=Last %s modified Third Parties +UniqueThirdParties=Total of Third Parties +InActivity=Open +ActivityCeased=Closed +ThirdPartyIsClosed=Third party is closed +ProductsIntoElements=List of products/services into %s +CurrentOutstandingBill=Current outstanding bill +OutstandingBill=Max. for outstanding bill +OutstandingBillReached=Max. for outstanding bill reached +OrderMinAmount=Minimum amount for order +MonkeyNumRefModelDesc=Return a number with the format %syymm-nnnn for the customer code and %syymm-nnnn for the vendor code where yy is year, mm is month and nnnn is a sequence with no break and no return to 0. +LeopardNumRefModelDesc=The code is free. This code can be modified at any time. +ManagingDirectors=Manager(s) name (CEO, director, president...) +MergeOriginThirdparty=Duplicate third party (third party you want to delete) +MergeThirdparties=Merge third parties +ConfirmMergeThirdparties=Are you sure you want to merge this third party into the current one? All linked objects (invoices, orders, ...) will be moved to current third party, then the third party will be deleted. +ThirdpartiesMergeSuccess=Third parties have been merged +SaleRepresentativeLogin=Login of sales representative +SaleRepresentativeFirstname=First name of sales representative +SaleRepresentativeLastname=Last name of sales representative +ErrorThirdpartiesMerge=There was an error when deleting the third parties. Please check the log. Changes have been reverted. +NewCustomerSupplierCodeProposed=Customer or Vendor code already used, a new code is suggested +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address +#Imports +PaymentTypeCustomer=Payment Type - Customer +PaymentTermsCustomer=Payment Terms - Customer +PaymentTypeSupplier=Payment Type - Vendor +PaymentTermsSupplier=Payment Term - Vendor +PaymentTypeBoth=Payment Type - Customer and Vendor +MulticurrencyUsed=Use Multicurrency +MulticurrencyCurrency=Currency diff --git a/htdocs/langs/az_AZ/compta.lang b/htdocs/langs/az_AZ/compta.lang new file mode 100644 index 00000000000..8a8c837ac87 --- /dev/null +++ b/htdocs/langs/az_AZ/compta.lang @@ -0,0 +1,266 @@ +# Dolibarr language file - Source file is en_US - compta +MenuFinancial=Billing | Payment +TaxModuleSetupToModifyRules=Go to Taxes module setup to modify rules for calculation +TaxModuleSetupToModifyRulesLT=Go to Company setup to modify rules for calculation +OptionMode=Option for accountancy +OptionModeTrue=Option Incomes-Expenses +OptionModeVirtual=Option Claims-Debts +OptionModeTrueDesc=In this context, the turnover is calculated over payments (date of payments). The validity of the figures is assured only if the book-keeping is scrutinized through the input/output on the accounts via invoices. +OptionModeVirtualDesc=In this context, the turnover is calculated over invoices (date of validation). When these invoices are due, whether they have been paid or not, they are listed in the turnover output. +FeatureIsSupportedInInOutModeOnly=Feature only available in CREDITS-DEBTS accountancy mode (See Accountancy module configuration) +VATReportBuildWithOptionDefinedInModule=Amounts shown here are calculated using rules defined by Tax module setup. +LTReportBuildWithOptionDefinedInModule=Amounts shown here are calculated using rules defined by Company setup. +Param=Setup +RemainingAmountPayment=Amount payment remaining: +Account=Account +Accountparent=Parent account +Accountsparent=Parent accounts +Income=Income +Outcome=Expense +MenuReportInOut=Income / Expense +ReportInOut=Balance of income and expenses +ReportTurnover=Turnover invoiced +ReportTurnoverCollected=Turnover collected +PaymentsNotLinkedToInvoice=Payments not linked to any invoice, so not linked to any third party +PaymentsNotLinkedToUser=Payments not linked to any user +Profit=Profit +AccountingResult=Accounting result +BalanceBefore=Balance (before) +Balance=Balance +Debit=Debit +Credit=Credit +Piece=Accounting Doc. +AmountHTVATRealReceived=Net collected +AmountHTVATRealPaid=Net paid +VATToPay=Tax sales +VATReceived=Tax received +VATToCollect=Tax purchases +VATSummary=Tax monthly +VATBalance=Tax Balance +VATPaid=Tax paid +LT1Summary=Tax 2 summary +LT2Summary=Tax 3 summary +LT1SummaryES=RE Balance +LT2SummaryES=IRPF Balance +LT1SummaryIN=CGST Balance +LT2SummaryIN=SGST Balance +LT1Paid=Tax 2 paid +LT2Paid=Tax 3 paid +LT1PaidES=RE Paid +LT2PaidES=IRPF Paid +LT1PaidIN=CGST Paid +LT2PaidIN=SGST Paid +LT1Customer=Tax 2 sales +LT1Supplier=Tax 2 purchases +LT1CustomerES=RE sales +LT1SupplierES=RE purchases +LT1CustomerIN=CGST sales +LT1SupplierIN=CGST purchases +LT2Customer=Tax 3 sales +LT2Supplier=Tax 3 purchases +LT2CustomerES=IRPF sales +LT2SupplierES=IRPF purchases +LT2CustomerIN=SGST sales +LT2SupplierIN=SGST purchases +VATCollected=VAT collected +StatusToPay=To pay +SpecialExpensesArea=Area for all special payments +SocialContribution=Social or fiscal tax +SocialContributions=Social or fiscal taxes +SocialContributionsDeductibles=Deductible social or fiscal taxes +SocialContributionsNondeductibles=Nondeductible social or fiscal taxes +LabelContrib=Label contribution +TypeContrib=Type contribution +MenuSpecialExpenses=Special expenses +MenuTaxAndDividends=Taxes and dividends +MenuSocialContributions=Social/fiscal taxes +MenuNewSocialContribution=New social/fiscal tax +NewSocialContribution=New social/fiscal tax +AddSocialContribution=Add social/fiscal tax +ContributionsToPay=Social/fiscal taxes to pay +AccountancyTreasuryArea=Billing and payment area +NewPayment=New payment +PaymentCustomerInvoice=Customer invoice payment +PaymentSupplierInvoice=vendor invoice payment +PaymentSocialContribution=Social/fiscal tax payment +PaymentVat=VAT payment +ListPayment=List of payments +ListOfCustomerPayments=List of customer payments +ListOfSupplierPayments=List of vendor payments +DateStartPeriod=Date start period +DateEndPeriod=Date end period +newLT1Payment=New tax 2 payment +newLT2Payment=New tax 3 payment +LT1Payment=Tax 2 payment +LT1Payments=Tax 2 payments +LT2Payment=Tax 3 payment +LT2Payments=Tax 3 payments +newLT1PaymentES=New RE payment +newLT2PaymentES=New IRPF payment +LT1PaymentES=RE Payment +LT1PaymentsES=RE Payments +LT2PaymentES=IRPF Payment +LT2PaymentsES=IRPF Payments +VATPayment=Sales tax payment +VATPayments=Sales tax payments +VATRefund=Sales tax refund +NewVATPayment=New sales tax payment +NewLocalTaxPayment=New tax %s payment +Refund=Refund +SocialContributionsPayments=Social/fiscal taxes payments +ShowVatPayment=Show VAT payment +TotalToPay=Total to pay +BalanceVisibilityDependsOnSortAndFilters=Balance is visible in this list only if table is sorted ascending on %s and filtered for 1 bank account +CustomerAccountancyCode=Customer accounting code +SupplierAccountancyCode=Vendor accounting code +CustomerAccountancyCodeShort=Cust. account. code +SupplierAccountancyCodeShort=Sup. account. code +AccountNumber=Account number +NewAccountingAccount=New account +Turnover=Turnover invoiced +TurnoverCollected=Turnover collected +SalesTurnoverMinimum=Minimum turnover +ByExpenseIncome=By expenses & incomes +ByThirdParties=By third parties +ByUserAuthorOfInvoice=By invoice author +CheckReceipt=Check deposit +CheckReceiptShort=Check deposit +LastCheckReceiptShort=Latest %s check receipts +NewCheckReceipt=New discount +NewCheckDeposit=New check deposit +NewCheckDepositOn=Create receipt for deposit on account: %s +NoWaitingChecks=No checks awaiting deposit. +DateChequeReceived=Check reception date +NbOfCheques=No. of checks +PaySocialContribution=Pay a social/fiscal tax +ConfirmPaySocialContribution=Are you sure you want to classify this social or fiscal tax as paid? +DeleteSocialContribution=Delete a social or fiscal tax payment +ConfirmDeleteSocialContribution=Are you sure you want to delete this social/fiscal tax payment? +ExportDataset_tax_1=Social and fiscal taxes and payments +CalcModeVATDebt=Mode %sVAT on commitment accounting%s. +CalcModeVATEngagement=Mode %sVAT on incomes-expenses%s. +CalcModeDebt=Analysis of known recorded invoices even if they are not yet accounted in ledger. +CalcModeEngagement=Analysis of known recorded payments, even if they are not yet accounted in Ledger. +CalcModeBookkeeping=Analysis of data journalized in Bookkeeping Ledger table. +CalcModeLT1= Mode %sRE on customer invoices - suppliers invoices%s +CalcModeLT1Debt=Mode %sRE on customer invoices%s +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=Balance of income and expenses, annual summary +AnnualSummaryInputOutputMode=Balance of income and expenses, annual summary +AnnualByCompanies=Balance of income and expenses, by predefined groups of account +AnnualByCompaniesDueDebtMode=Balance of income and expenses, detail by predefined groups, mode %sClaims-Debts%s said Commitment accounting. +AnnualByCompaniesInputOutputMode=Balance of income and expenses, detail by predefined groups, mode %sIncomes-Expenses%s said cash accounting. +SeeReportInInputOutputMode=See %sanalysis of payments%s for a calculation on actual payments made even if they are not yet accounted in Ledger. +SeeReportInDueDebtMode=See %sanalysis of invoices%s for a calculation based on known recorded invoices even if they are not yet accounted in Ledger. +SeeReportInBookkeepingMode=See %sBookeeping report%s for a calculation on Bookkeeping Ledger table +RulesAmountWithTaxIncluded=- Amounts shown are with all taxes included +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. +RulesResultInOut=- It includes the real payments made on invoices, expenses, VAT and salaries.
    - It is based on the payment dates of the invoices, expenses, VAT and salaries. The donation date for donation. +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    +RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    +RulesCATotalSaleJournal=It includes all credit lines from the Sale journal. +RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" +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 +DepositsAreIncluded=- Down payment invoices are included +LT1ReportByCustomers=Report tax 2 by third party +LT2ReportByCustomers=Report tax 3 by third party +LT1ReportByCustomersES=Report by third party RE +LT2ReportByCustomersES=Report by third party IRPF +VATReport=Sale tax report +VATReportByPeriods=Sale tax report by period +VATReportByRates=Sale tax report by rates +VATReportByThirdParties=Sale tax report by third parties +VATReportByCustomers=Sale tax report by customer +VATReportByCustomersInInputOutputMode=Report by the customer VAT collected and paid +VATReportByQuartersInInputOutputMode=Report by Sale tax rate of the tax collected and paid +LT1ReportByQuarters=Report tax 2 by rate +LT2ReportByQuarters=Report tax 3 by rate +LT1ReportByQuartersES=Report by RE rate +LT2ReportByQuartersES=Report by IRPF rate +SeeVATReportInInputOutputMode=See report %sVAT encasement%s for a standard calculation +SeeVATReportInDueDebtMode=See report %sVAT on flow%s for a calculation with an option on the flow +RulesVATInServices=- For services, the report includes the VAT regulations actually received or issued on the basis of the date of payment. +RulesVATInProducts=- For material assets, the report includes the VAT received or issued on the basis of the date of payment. +RulesVATDueServices=- For services, the report includes VAT invoices due, paid or not, based on the invoice date. +RulesVATDueProducts=- For material assets, the report includes the VAT invoices, based on the invoice date. +OptionVatInfoModuleComptabilite=Note: For material assets, it should use the date of delivery to be more fair. +ThisIsAnEstimatedValue=This is a preview, based on business events and not from the final ledger table, so final results may differ from this preview values +PercentOfInvoice=%%/invoice +NotUsedForGoods=Not used on goods +ProposalStats=Statistics on proposals +OrderStats=Statistics on orders +InvoiceStats=Statistics on bills +Dispatch=Dispatching +Dispatched=Dispatched +ToDispatch=To dispatch +ThirdPartyMustBeEditAsCustomer=Third party must be defined as a customer +SellsJournal=Sales Journal +PurchasesJournal=Purchases Journal +DescSellsJournal=Sales Journal +DescPurchasesJournal=Purchases Journal +CodeNotDef=Not defined +WarningDepositsNotIncluded=Down payment invoices are not included in this version with this accountancy module. +DatePaymentTermCantBeLowerThanObjectDate=Payment term date can't be lower than object date. +Pcg_version=Chart of accounts models +Pcg_type=Pcg type +Pcg_subtype=Pcg subtype +InvoiceLinesToDispatch=Invoice lines to dispatch +ByProductsAndServices=By product and service +RefExt=External ref +ToCreateAPredefinedInvoice=To create a template invoice, create a standard invoice, then, without validating it, click onto button "%s". +LinkedOrder=Link to order +Mode1=Method 1 +Mode2=Method 2 +CalculationRuleDesc=To calculate total VAT, there is two methods:
    Method 1 is rounding vat on each line, then summing them.
    Method 2 is summing all vat on each line, then rounding result.
    Final result may differs from few cents. Default mode is mode %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. +CalculationMode=Calculation mode +AccountancyJournal=Accounting code journal +ACCOUNTING_VAT_SOLD_ACCOUNT=Accounting account by default for VAT on sales (used if not defined on VAT dictionary setup) +ACCOUNTING_VAT_BUY_ACCOUNT=Accounting account by default for VAT on purchases (used if not defined on VAT dictionary setup) +ACCOUNTING_VAT_PAY_ACCOUNT=Accounting account by default for paying VAT +ACCOUNTING_ACCOUNT_CUSTOMER=Accounting account used for customer third parties +ACCOUNTING_ACCOUNT_CUSTOMER_Desc=The dedicated accounting account defined on third party card will be used for Subledger accounting only. This one will be used for General Ledger and as default value of Subledger accounting if dedicated customer accounting account on third party is not defined. +ACCOUNTING_ACCOUNT_SUPPLIER=Accounting account used for vendor third parties +ACCOUNTING_ACCOUNT_SUPPLIER_Desc=The dedicated accounting account defined on third party card will be used for Subledger accounting only. This one will be used for General Ledger and as default value of Subledger accounting if dedicated vendor accounting account on third party is not defined. +ConfirmCloneTax=Confirm the clone of a social/fiscal tax +CloneTaxForNextMonth=Clone it for next month +SimpleReport=Simple report +AddExtraReport=Extra reports (add foreign and national customer report) +OtherCountriesCustomersReport=Foreign customers report +BasedOnTwoFirstLettersOfVATNumberBeingDifferentFromYourCompanyCountry=Based on the two first letters of the VAT number being different from your own company's country code +SameCountryCustomersWithVAT=National customers report +BasedOnTwoFirstLettersOfVATNumberBeingTheSameAsYourCompanyCountry=Based on the two first letters of the VAT number being the same as your own company's country code +LinkedFichinter=Link to an intervention +ImportDataset_tax_contrib=Social/fiscal taxes +ImportDataset_tax_vat=Vat payments +ErrorBankAccountNotFound=Error: Bank account not found +FiscalPeriod=Accounting period +ListSocialContributionAssociatedProject=List of social contributions associated with the project +DeleteFromCat=Remove from accounting group +AccountingAffectation=Accounting assignment +LastDayTaxIsRelatedTo=Last day of period the tax is related to +VATDue=Sale tax claimed +ClaimedForThisPeriod=Claimed for the period +PaidDuringThisPeriod=Paid during this period +ByVatRate=By sale tax rate +TurnoverbyVatrate=Turnover invoiced by sale tax rate +TurnoverCollectedbyVatrate=Turnover collected by sale tax rate +PurchasebyVatrate=Purchase by sale tax rate +LabelToShow=Short label +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected +IncludeVarpaysInResults = Include various payments in reports +IncludeLoansInResults = Include loans in reports diff --git a/htdocs/langs/az_AZ/contracts.lang b/htdocs/langs/az_AZ/contracts.lang new file mode 100644 index 00000000000..47572c355ab --- /dev/null +++ b/htdocs/langs/az_AZ/contracts.lang @@ -0,0 +1,101 @@ +# Dolibarr language file - Source file is en_US - contracts +ContractsArea=Contracts area +ListOfContracts=List of contracts +AllContracts=All contracts +ContractCard=Contract card +ContractStatusNotRunning=Not running +ContractStatusDraft=Draft +ContractStatusValidated=Validated +ContractStatusClosed=Closed +ServiceStatusInitial=Not running +ServiceStatusRunning=Running +ServiceStatusNotLate=Running, not expired +ServiceStatusNotLateShort=Not expired +ServiceStatusLate=Running, expired +ServiceStatusLateShort=Expired +ServiceStatusClosed=Closed +ShowContractOfService=Show contract of service +Contracts=Contracts +ContractsSubscriptions=Contracts/Subscriptions +ContractsAndLine=Contracts and line of contracts +Contract=Contract +ContractLine=Contract line +Closing=Closing +NoContracts=No contracts +MenuServices=Services +MenuInactiveServices=Services not active +MenuRunningServices=Running services +MenuExpiredServices=Expired services +MenuClosedServices=Closed services +NewContract=New contract +NewContractSubscription=New contract/subscription +AddContract=Create contract +DeleteAContract=Delete a contract +ActivateAllOnContract=Activate all services +CloseAContract=Close a contract +ConfirmDeleteAContract=Are you sure you want to delete this contract and all its services? +ConfirmValidateContract=Are you sure you want to validate this contract under name %s? +ConfirmActivateAllOnContract=This will open all services (not yet active). Are you sure you want to open all services? +ConfirmCloseContract=This will close all services (active or not). Are you sure you want to close this contract? +ConfirmCloseService=Are you sure you want to close this service with date %s? +ValidateAContract=Validate a contract +ActivateService=Activate service +ConfirmActivateService=Are you sure you want to activate this service with date %s? +RefContract=Contract reference +DateContract=Contract date +DateServiceActivate=Service activation date +ListOfServices=List of services +ListOfInactiveServices=List of not active services +ListOfExpiredServices=List of expired active services +ListOfClosedServices=List of closed services +ListOfRunningServices=List of running services +NotActivatedServices=Inactive services (among validated contracts) +BoardNotActivatedServices=Services to activate among validated contracts +BoardNotActivatedServicesShort=Services to activate +LastContracts=Latest %s contracts +LastModifiedServices=Latest %s modified services +ContractStartDate=Start date +ContractEndDate=End date +DateStartPlanned=Planned start date +DateStartPlannedShort=Planned start date +DateEndPlanned=Planned end date +DateEndPlannedShort=Planned end date +DateStartReal=Real start date +DateStartRealShort=Real start date +DateEndReal=Real end date +DateEndRealShort=Real end date +CloseService=Close service +BoardRunningServices=Services running +BoardRunningServicesShort=Services running +BoardExpiredServices=Services expired +BoardExpiredServicesShort=Services expired +ServiceStatus=Status of service +DraftContracts=Drafts contracts +CloseRefusedBecauseOneServiceActive=Contract can't be closed as there is at least one open service on it +ActivateAllContracts=Activate all contract lines +CloseAllContracts=Close all contract lines +DeleteContractLine=Delete a contract line +ConfirmDeleteContractLine=Are you sure you want to delete this contract line? +MoveToAnotherContract=Move service into another contract. +ConfirmMoveToAnotherContract=I choosed new target contract and confirm I want to move this service into this contract. +ConfirmMoveToAnotherContractQuestion=Choose in which existing contract (of same third party), you want to move this service to? +PaymentRenewContractId=Renew contract line (number %s) +ExpiredSince=Expiration date +NoExpiredServices=No expired active services +ListOfServicesToExpireWithDuration=List of Services to expire in %s days +ListOfServicesToExpireWithDurationNeg=List of Services expired from more than %s days +ListOfServicesToExpire=List of Services to expire +NoteListOfYourExpiredServices=This list contains only services of contracts for third parties you are linked to as a sale representative. +StandardContractsTemplate=Standard contracts template +ContactNameAndSignature=For %s, name and signature: +OnlyLinesWithTypeServiceAreUsed=Only lines with type "Service" will be cloned. +ConfirmCloneContract=Are you sure you want to clone the contract %s? +LowerDateEndPlannedShort=Lower planned end date of active services +SendContractRef=Contract information __REF__ +OtherContracts=Other contracts +##### Types de contacts ##### +TypeContact_contrat_internal_SALESREPSIGN=Sales representative signing contract +TypeContact_contrat_internal_SALESREPFOLL=Sales representative following-up contract +TypeContact_contrat_external_BILLING=Billing customer contact +TypeContact_contrat_external_CUSTOMER=Follow-up customer contact +TypeContact_contrat_external_SALESREPSIGN=Signing contract customer contact diff --git a/htdocs/langs/az_AZ/cron.lang b/htdocs/langs/az_AZ/cron.lang new file mode 100644 index 00000000000..1de1251831a --- /dev/null +++ b/htdocs/langs/az_AZ/cron.lang @@ -0,0 +1,84 @@ +# Dolibarr language file - Source file is en_US - cron +# About page +# Right +Permission23101 = Read Scheduled job +Permission23102 = Create/update Scheduled job +Permission23103 = Delete Scheduled job +Permission23104 = Execute Scheduled job +# Admin +CronSetup=Scheduled job management setup +URLToLaunchCronJobs=URL to check and launch qualified cron jobs +OrToLaunchASpecificJob=Or to check and launch a specific job +KeyForCronAccess=Security key for URL to launch cron jobs +FileToLaunchCronJobs=Command line to check and launch qualified cron jobs +CronExplainHowToRunUnix=On Unix environment you should use the following crontab entry to run the command line each 5 minutes +CronExplainHowToRunWin=On Microsoft(tm) Windows environment you can use Scheduled Task tools to run the command line each 5 minutes +CronMethodDoesNotExists=Class %s does not contains any method %s +CronJobDefDesc=Cron job profiles are defined into the module descriptor file. When module is activated, they are loaded and available so you can administer the jobs from the admin tools menu %s. +CronJobProfiles=List of predefined cron job profiles +# Menu +EnabledAndDisabled=Enabled and disabled +# Page list +CronLastOutput=Latest run output +CronLastResult=Latest result code +CronCommand=Command +CronList=Scheduled jobs +CronDelete=Delete scheduled jobs +CronConfirmDelete=Are you sure you want to delete these scheduled jobs? +CronExecute=Launch scheduled job +CronConfirmExecute=Are you sure you want to execute these scheduled jobs now? +CronInfo=Scheduled job module allows to schedule jobs to execute them automatically. Jobs can also be started manually. +CronTask=Job +CronNone=None +CronDtStart=Not before +CronDtEnd=Not after +CronDtNextLaunch=Next execution +CronDtLastLaunch=Start date of latest execution +CronDtLastResult=End date of latest execution +CronFrequency=Frequency +CronClass=Class +CronMethod=Method +CronModule=Module +CronNoJobs=No jobs registered +CronPriority=Priority +CronLabel=Label +CronNbRun=Number of launches +CronMaxRun=Maximum number of launches +CronEach=Every +JobFinished=Job launched and finished +#Page card +CronAdd= Add jobs +CronEvery=Execute job each +CronObject=Instance/Object to create +CronArgs=Parameters +CronSaveSucess=Save successfully +CronNote=Comment +CronFieldMandatory=Fields %s is mandatory +CronErrEndDateStartDt=End date cannot be before start date +StatusAtInstall=Status at module installation +CronStatusActiveBtn=Enable +CronStatusInactiveBtn=Disable +CronTaskInactive=This job is disabled +CronId=Id +CronClassFile=Filename with class +CronModuleHelp=Name of Dolibarr module directory (also work with external Dolibarr module).
    For example to call the fetch method of Dolibarr Product object /htdocs/product/class/product.class.php, the value for module is
    product +CronClassFileHelp=The relative path and file name to load (path is relative to web server root directory).
    For example to call the fetch method of Dolibarr Product object htdocs/product/class/product.class.php, the value for class file name is
    product/class/product.class.php +CronObjectHelp=The object name to load.
    For example to call the fetch method of Dolibarr Product object /htdocs/product/class/product.class.php, the value for class file name is
    Product +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=The system command line to execute. +CronCreateJob=Create new Scheduled Job +CronFrom=From +# Info +# Common +CronType=Job type +CronType_method=Call method of a PHP Class +CronType_command=Shell command +CronCannotLoadClass=Cannot load class file %s (to use class %s) +CronCannotLoadObject=Class file %s was loaded, but object %s was not found into it +UseMenuModuleToolsToAddCronJobs=Go into menu "Home - Admin tools - Scheduled jobs" to see and edit scheduled jobs. +JobDisabled=Job disabled +MakeLocalDatabaseDumpShort=Local database backup +MakeLocalDatabaseDump=Create a local database dump. Parameters are: compression ('gz' or 'bz' or 'none'), backup type ('mysql', 'pgsql', 'auto'), 1, 'auto' or filename to build, number of backup files to keep +WarningCronDelayed=Attention, for performance purpose, whatever is next date of execution of enabled jobs, your jobs may be delayed to a maximum of %s hours, before being run. +DATAPOLICYJob=Data cleaner and anonymizer diff --git a/htdocs/langs/az_AZ/deliveries.lang b/htdocs/langs/az_AZ/deliveries.lang new file mode 100644 index 00000000000..1f48c01de75 --- /dev/null +++ b/htdocs/langs/az_AZ/deliveries.lang @@ -0,0 +1,31 @@ +# Dolibarr language file - Source file is en_US - deliveries +Delivery=Delivery +DeliveryRef=Ref Delivery +DeliveryCard=Receipt card +DeliveryOrder=Delivery receipt +DeliveryDate=Delivery date +CreateDeliveryOrder=Generate delivery receipt +DeliveryStateSaved=Delivery state saved +SetDeliveryDate=Set shipping date +ValidateDeliveryReceipt=Validate delivery receipt +ValidateDeliveryReceiptConfirm=Are you sure you want to validate this delivery receipt? +DeleteDeliveryReceipt=Delete delivery receipt +DeleteDeliveryReceiptConfirm=Are you sure you want to delete delivery receipt %s? +DeliveryMethod=Delivery method +TrackingNumber=Tracking number +DeliveryNotValidated=Delivery not validated +StatusDeliveryCanceled=Canceled +StatusDeliveryDraft=Draft +StatusDeliveryValidated=Received +# merou PDF model +NameAndSignature=Name and Signature: +ToAndDate=To___________________________________ on ____/_____/__________ +GoodStatusDeclaration=Have received the goods above in good condition, +Deliverer=Deliverer: +Sender=Sender +Recipient=Recipient +ErrorStockIsNotEnough=There's not enough stock +Shippable=Shippable +NonShippable=Not Shippable +ShowReceiving=Show delivery receipt +NonExistentOrder=Nonexistent order diff --git a/htdocs/langs/az_AZ/dict.lang b/htdocs/langs/az_AZ/dict.lang new file mode 100644 index 00000000000..ec315d97142 --- /dev/null +++ b/htdocs/langs/az_AZ/dict.lang @@ -0,0 +1,359 @@ +# Dolibarr language file - Source file is en_US - dict +CountryFR=France +CountryBE=Belgium +CountryIT=Italy +CountryES=Spain +CountryDE=Germany +CountryCH=Switzerland +# Warning, country code GB is for United Kingdom. UK Does not exists as country code in ISO standard. +CountryGB=United Kingdom +CountryUK=United Kingdom +CountryIE=Ireland +CountryCN=China +CountryTN=Tunisia +CountryUS=United States +CountryMA=Morocco +CountryDZ=Algeria +CountryCA=Canada +CountryTG=Togo +CountryGA=Gabon +CountryNL=Netherlands +CountryHU=Hungary +CountryRU=Russia +CountrySE=Sweden +CountryCI=Ivoiry Coast +CountrySN=Senegal +CountryAR=Argentina +CountryCM=Cameroon +CountryPT=Portugal +CountrySA=Saudi Arabia +CountryMC=Monaco +CountryAU=Australia +CountrySG=Singapore +CountryAF=Afghanistan +CountryAX=Åland Islands +CountryAL=Albania +CountryAS=American Samoa +CountryAD=Andorra +CountryAO=Angola +CountryAI=Anguilla +CountryAQ=Antarctica +CountryAG=Antigua and Barbuda +CountryAM=Armenia +CountryAW=Aruba +CountryAT=Austria +CountryAZ=Azerbaijan +CountryBS=Bahamas +CountryBH=Bahrain +CountryBD=Bangladesh +CountryBB=Barbados +CountryBY=Belarus +CountryBZ=Belize +CountryBJ=Benin +CountryBM=Bermuda +CountryBT=Bhutan +CountryBO=Bolivia +CountryBA=Bosnia and Herzegovina +CountryBW=Botswana +CountryBV=Bouvet Island +CountryBR=Brazil +CountryIO=British Indian Ocean Territory +CountryBN=Brunei Darussalam +CountryBG=Bulgaria +CountryBF=Burkina Faso +CountryBI=Burundi +CountryKH=Cambodia +CountryCV=Cape Verde +CountryKY=Cayman Islands +CountryCF=Central African Republic +CountryTD=Chad +CountryCL=Chile +CountryCX=Christmas Island +CountryCC=Cocos (Keeling) Islands +CountryCO=Colombia +CountryKM=Comoros +CountryCG=Congo +CountryCD=Congo, The Democratic Republic of the +CountryCK=Cook Islands +CountryCR=Costa Rica +CountryHR=Croatia +CountryCU=Cuba +CountryCY=Cyprus +CountryCZ=Czech Republic +CountryDK=Denmark +CountryDJ=Djibouti +CountryDM=Dominica +CountryDO=Dominican Republic +CountryEC=Ecuador +CountryEG=Egypt +CountrySV=El Salvador +CountryGQ=Equatorial Guinea +CountryER=Eritrea +CountryEE=Estonia +CountryET=Ethiopia +CountryFK=Falkland Islands +CountryFO=Faroe Islands +CountryFJ=Fiji Islands +CountryFI=Finland +CountryGF=French Guiana +CountryPF=French Polynesia +CountryTF=French Southern Territories +CountryGM=Gambia +CountryGE=Georgia +CountryGH=Ghana +CountryGI=Gibraltar +CountryGR=Greece +CountryGL=Greenland +CountryGD=Grenada +CountryGP=Guadeloupe +CountryGU=Guam +CountryGT=Guatemala +CountryGN=Guinea +CountryGW=Guinea-Bissau +CountryGY=Guyana +CountryHT=Haïti +CountryHM=Heard Island and McDonald +CountryVA=Holy See (Vatican City State) +CountryHN=Honduras +CountryHK=Hong Kong +CountryIS=Iceland +CountryIN=India +CountryID=Indonesia +CountryIR=Iran +CountryIQ=Iraq +CountryIL=Israel +CountryJM=Jamaica +CountryJP=Japan +CountryJO=Jordan +CountryKZ=Kazakhstan +CountryKE=Kenya +CountryKI=Kiribati +CountryKP=North Korea +CountryKR=South Korea +CountryKW=Kuwait +CountryKG=Kyrgyzstan +CountryLA=Lao +CountryLV=Latvia +CountryLB=Lebanon +CountryLS=Lesotho +CountryLR=Liberia +CountryLY=Libyan +CountryLI=Liechtenstein +CountryLT=Lithuania +CountryLU=Luxembourg +CountryMO=Macao +CountryMK=Macedonia, the former Yugoslav of +CountryMG=Madagascar +CountryMW=Malawi +CountryMY=Malaysia +CountryMV=Maldives +CountryML=Mali +CountryMT=Malta +CountryMH=Marshall Islands +CountryMQ=Martinique +CountryMR=Mauritania +CountryMU=Mauritius +CountryYT=Mayotte +CountryMX=Mexico +CountryFM=Micronesia +CountryMD=Moldova +CountryMN=Mongolia +CountryMS=Monserrat +CountryMZ=Mozambique +CountryMM=Myanmar (Burma) +CountryNA=Namibia +CountryNR=Nauru +CountryNP=Nepal +CountryAN=Netherlands Antilles +CountryNC=New Caledonia +CountryNZ=New Zealand +CountryNI=Nicaragua +CountryNE=Niger +CountryNG=Nigeria +CountryNU=Niue +CountryNF=Norfolk Island +CountryMP=Northern Mariana Islands +CountryNO=Norway +CountryOM=Oman +CountryPK=Pakistan +CountryPW=Palau +CountryPS=Palestinian Territory, Occupied +CountryPA=Panama +CountryPG=Papua New Guinea +CountryPY=Paraguay +CountryPE=Peru +CountryPH=Philippines +CountryPN=Pitcairn Islands +CountryPL=Poland +CountryPR=Puerto Rico +CountryQA=Qatar +CountryRE=Reunion +CountryRO=Romania +CountryRW=Rwanda +CountrySH=Saint Helena +CountryKN=Saint Kitts and Nevis +CountryLC=Saint Lucia +CountryPM=Saint Pierre and Miquelon +CountryVC=Saint Vincent and Grenadines +CountryWS=Samoa +CountrySM=San Marino +CountryST=Sao Tome and Principe +CountryRS=Serbia +CountrySC=Seychelles +CountrySL=Sierra Leone +CountrySK=Slovakia +CountrySI=Slovenia +CountrySB=Solomon Islands +CountrySO=Somalia +CountryZA=South Africa +CountryGS=South Georgia and the South Sandwich Islands +CountryLK=Sri Lanka +CountrySD=Sudan +CountrySR=Suriname +CountrySJ=Svalbard and Jan Mayen +CountrySZ=Swaziland +CountrySY=Syrian +CountryTW=Taiwan +CountryTJ=Tajikistan +CountryTZ=Tanzania +CountryTH=Thailand +CountryTL=Timor-Leste +CountryTK=Tokelau +CountryTO=Tonga +CountryTT=Trinidad and Tobago +CountryTR=Turkey +CountryTM=Turkmenistan +CountryTC=Turks and Caicos Islands +CountryTV=Tuvalu +CountryUG=Uganda +CountryUA=Ukraine +CountryAE=United Arab Emirates +CountryUM=United States Minor Outlying Islands +CountryUY=Uruguay +CountryUZ=Uzbekistan +CountryVU=Vanuatu +CountryVE=Venezuela +CountryVN=Viet Nam +CountryVG=Virgin Islands, British +CountryVI=Virgin Islands, U.S. +CountryWF=Wallis and Futuna +CountryEH=Western Sahara +CountryYE=Yemen +CountryZM=Zambia +CountryZW=Zimbabwe +CountryGG=Guernsey +CountryIM=Isle of Man +CountryJE=Jersey +CountryME=Montenegro +CountryBL=Saint Barthelemy +CountryMF=Saint Martin + +##### Civilities ##### +CivilityMME=Mrs. +CivilityMR=Mr. +CivilityMLE=Ms. +CivilityMTRE=Master +CivilityDR=Doctor +##### Currencies ##### +Currencyeuros=Euros +CurrencyAUD=AU Dollars +CurrencySingAUD=AU Dollar +CurrencyCAD=CAN Dollars +CurrencySingCAD=CAN Dollar +CurrencyCHF=Swiss Francs +CurrencySingCHF=Swiss Franc +CurrencyEUR=Euros +CurrencySingEUR=Euro +CurrencyFRF=French Francs +CurrencySingFRF=French Franc +CurrencyGBP=GB Pounds +CurrencySingGBP=GB Pound +CurrencyINR=Indian rupees +CurrencySingINR=Indian rupee +CurrencyMAD=Dirham +CurrencySingMAD=Dirham +CurrencyMGA=Ariary +CurrencySingMGA=Ariary +CurrencyMUR=Mauritius rupees +CurrencySingMUR=Mauritius rupee +CurrencyNOK=Norwegian krones +CurrencySingNOK=Norwegian kronas +CurrencyTND=Tunisian dinars +CurrencySingTND=Tunisian dinar +CurrencyUSD=US Dollars +CurrencySingUSD=US Dollar +CurrencyUAH=Hryvnia +CurrencySingUAH=Hryvnia +CurrencyXAF=CFA Francs BEAC +CurrencySingXAF=CFA Franc BEAC +CurrencyXOF=CFA Francs BCEAO +CurrencySingXOF=CFA Franc BCEAO +CurrencyXPF=CFP Francs +CurrencySingXPF=CFP Franc +CurrencyCentEUR=cents +CurrencyCentSingEUR=cent +CurrencyCentINR=paisa +CurrencyCentSingINR=paise +CurrencyThousandthSingTND=thousandth +#### Input reasons ##### +DemandReasonTypeSRC_INTE=Internet +DemandReasonTypeSRC_CAMP_MAIL=Mailing campaign +DemandReasonTypeSRC_CAMP_EMAIL=EMailing campaign +DemandReasonTypeSRC_CAMP_PHO=Phone campaign +DemandReasonTypeSRC_CAMP_FAX=Fax campaign +DemandReasonTypeSRC_COMM=Commercial contact +DemandReasonTypeSRC_SHOP=Shop contact +DemandReasonTypeSRC_WOM=Word of mouth +DemandReasonTypeSRC_PARTNER=Partner +DemandReasonTypeSRC_EMPLOYEE=Employee +DemandReasonTypeSRC_SPONSORING=Sponsorship +DemandReasonTypeSRC_SRC_CUSTOMER=Incoming contact of a customer +#### Paper formats #### +PaperFormatEU4A0=Format 4A0 +PaperFormatEU2A0=Format 2A0 +PaperFormatEUA0=Format A0 +PaperFormatEUA1=Format A1 +PaperFormatEUA2=Format A2 +PaperFormatEUA3=Format A3 +PaperFormatEUA4=Format A4 +PaperFormatEUA5=Format A5 +PaperFormatEUA6=Format A6 +PaperFormatUSLETTER=Format Letter US +PaperFormatUSLEGAL=Format Legal US +PaperFormatUSEXECUTIVE=Format Executive US +PaperFormatUSLEDGER=Format Ledger/Tabloid +PaperFormatCAP1=Format P1 Canada +PaperFormatCAP2=Format P2 Canada +PaperFormatCAP3=Format P3 Canada +PaperFormatCAP4=Format P4 Canada +PaperFormatCAP5=Format P5 Canada +PaperFormatCAP6=Format P6 Canada +#### Expense report categories #### +ExpAutoCat=Car +ExpCycloCat=Moped +ExpMotoCat=Motorbike +ExpAuto3CV=3 CV +ExpAuto4CV=4 CV +ExpAuto5CV=5 CV +ExpAuto6CV=6 CV +ExpAuto7CV=7 CV +ExpAuto8CV=8 CV +ExpAuto9CV=9 CV +ExpAuto10CV=10 CV +ExpAuto11CV=11 CV +ExpAuto12CV=12 CV +ExpAuto3PCV=3 CV and more +ExpAuto4PCV=4 CV and more +ExpAuto5PCV=5 CV and more +ExpAuto6PCV=6 CV and more +ExpAuto7PCV=7 CV and more +ExpAuto8PCV=8 CV and more +ExpAuto9PCV=9 CV and more +ExpAuto10PCV=10 CV and more +ExpAuto11PCV=11 CV and more +ExpAuto12PCV=12 CV and more +ExpAuto13PCV=13 CV and more +ExpCyclo=Capacity lower to 50cm3 +ExpMoto12CV=Motorbike 1 or 2 CV +ExpMoto345CV=Motorbike 3, 4 or 5 CV +ExpMoto5PCV=Motorbike 5 CV and more diff --git a/htdocs/langs/az_AZ/donations.lang b/htdocs/langs/az_AZ/donations.lang new file mode 100644 index 00000000000..de4bdf68f03 --- /dev/null +++ b/htdocs/langs/az_AZ/donations.lang @@ -0,0 +1,34 @@ +# Dolibarr language file - Source file is en_US - donations +Donation=Donation +Donations=Donations +DonationRef=Donation ref. +Donor=Donor +AddDonation=Create a donation +NewDonation=New donation +DeleteADonation=Delete a donation +ConfirmDeleteADonation=Are you sure you want to delete this donation? +PublicDonation=Public donation +DonationsArea=Donations area +DonationStatusPromiseNotValidated=Draft promise +DonationStatusPromiseValidated=Validated promise +DonationStatusPaid=Donation received +DonationStatusPromiseNotValidatedShort=Draft +DonationStatusPromiseValidatedShort=Validated +DonationStatusPaidShort=Received +DonationTitle=Donation receipt +DonationDate=Donation date +DonationDatePayment=Payment date +ValidPromess=Validate promise +DonationReceipt=Donation receipt +DonationsModels=Documents models for donation receipts +LastModifiedDonations=Latest %s modified donations +DonationRecipient=Donation recipient +IConfirmDonationReception=The recipient declare reception, as a donation, of the following amount +MinimumAmount=Minimum amount is %s +FreeTextOnDonations=Free text to show in footer +FrenchOptions=Options for France +DONATION_ART200=Show article 200 from CGI if you are concerned +DONATION_ART238=Show article 238 from CGI if you are concerned +DONATION_ART885=Show article 885 from CGI if you are concerned +DonationPayment=Donation payment +DonationValidated=Donation %s validated diff --git a/htdocs/langs/az_AZ/ecm.lang b/htdocs/langs/az_AZ/ecm.lang new file mode 100644 index 00000000000..369ac6dfdfa --- /dev/null +++ b/htdocs/langs/az_AZ/ecm.lang @@ -0,0 +1,52 @@ +# Dolibarr language file - Source file is en_US - ecm +ECMNbOfDocs=No. of documents in directory +ECMSection=Directory +ECMSectionManual=Manual directory +ECMSectionAuto=Automatic directory +ECMSectionsManual=Manual tree +ECMSectionsAuto=Automatic tree +ECMSections=Directories +ECMRoot=ECM Root +ECMNewSection=New directory +ECMAddSection=Add directory +ECMCreationDate=Creation date +ECMNbOfFilesInDir=Number of files in directory +ECMNbOfSubDir=Number of sub-directories +ECMNbOfFilesInSubDir=Number of files in sub-directories +ECMCreationUser=Creator +ECMArea=DMS/ECM area +ECMAreaDesc=The DMS/ECM (Document Management System / Electronic Content Management) area allows you to save, share and search quickly all kind of documents in Dolibarr. +ECMAreaDesc2=* Automatic directories are filled automatically when adding documents from card of an element.
    * Manual directories can be used to save documents not linked to a particular element. +ECMSectionWasRemoved=Directory %s has been deleted. +ECMSectionWasCreated=Directory %s has been created. +ECMSearchByKeywords=Search by keywords +ECMSearchByEntity=Search by object +ECMSectionOfDocuments=Directories of documents +ECMTypeAuto=Automatic +ECMDocsBySocialContributions=Documents linked to social or fiscal taxes +ECMDocsByThirdParties=Documents linked to third parties +ECMDocsByProposals=Documents linked to proposals +ECMDocsByOrders=Documents linked to customers orders +ECMDocsByContracts=Documents linked to contracts +ECMDocsByInvoices=Documents linked to customers invoices +ECMDocsByProducts=Documents linked to products +ECMDocsByProjects=Documents linked to projects +ECMDocsByUsers=Documents linked to users +ECMDocsByInterventions=Documents linked to interventions +ECMDocsByExpenseReports=Documents linked to expense reports +ECMDocsByHolidays=Documents linked to holidays +ECMDocsBySupplierProposals=Documents linked to vendor proposals +ECMNoDirectoryYet=No directory created +ShowECMSection=Show directory +DeleteSection=Remove directory +ConfirmDeleteSection=Can you confirm you want to delete the directory %s? +ECMDirectoryForFiles=Relative directory for files +CannotRemoveDirectoryContainsFilesOrDirs=Removal not possible because it contains some files or sub-directories +CannotRemoveDirectoryContainsFiles=Removal not possible because it contains some files +ECMFileManager=File manager +ECMSelectASection=Select a directory in the tree... +DirNotSynchronizedSyncFirst=This directory seems to be created or modified outside ECM module. You must click on "Resync" button first to synchronize disk and database to get content of this directory. +ReSyncListOfDir=Resync list of directories +HashOfFileContent=Hash of file content +NoDirectoriesFound=No directories found +FileNotYetIndexedInDatabase=File not yet indexed into database (try to re-upload it) diff --git a/htdocs/langs/az_AZ/errors.lang b/htdocs/langs/az_AZ/errors.lang new file mode 100644 index 00000000000..7c67aeca8b5 --- /dev/null +++ b/htdocs/langs/az_AZ/errors.lang @@ -0,0 +1,265 @@ +# Dolibarr language file - Source file is en_US - errors + +# No errors +NoErrorCommitIsDone=No error, we commit +# Errors +ErrorButCommitIsDone=Errors found but we validate despite this +ErrorBadEMail=Email %s is wrong +ErrorBadUrl=Url %s is wrong +ErrorBadValueForParamNotAString=Bad value for your parameter. It appends generally when translation is missing. +ErrorLoginAlreadyExists=Login %s already exists. +ErrorGroupAlreadyExists=Group %s already exists. +ErrorRecordNotFound=Record not found. +ErrorFailToCopyFile=Failed to copy file '%s' into '%s'. +ErrorFailToCopyDir=Failed to copy directory '%s' into '%s'. +ErrorFailToRenameFile=Failed to rename file '%s' into '%s'. +ErrorFailToDeleteFile=Failed to remove file '%s'. +ErrorFailToCreateFile=Failed to create file '%s'. +ErrorFailToRenameDir=Failed to rename directory '%s' into '%s'. +ErrorFailToCreateDir=Failed to create directory '%s'. +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=This bank account is a cash account, so it accepts payments of type cash only. +ErrorFromToAccountsMustDiffers=Source and targets bank accounts must be different. +ErrorBadThirdPartyName=Bad value for third-party name +ErrorProdIdIsMandatory=The %s is mandatory +ErrorBadCustomerCodeSyntax=Bad syntax for customer code +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. +ErrorCustomerCodeRequired=Customer code required +ErrorBarCodeRequired=Barcode required +ErrorCustomerCodeAlreadyUsed=Customer code already used +ErrorBarCodeAlreadyUsed=Barcode already used +ErrorPrefixRequired=Prefix required +ErrorBadSupplierCodeSyntax=Bad syntax for vendor code +ErrorSupplierCodeRequired=Vendor code required +ErrorSupplierCodeAlreadyUsed=Vendor code already used +ErrorBadParameters=Bad parameters +ErrorBadValueForParameter=Wrong value '%s' for parameter '%s' +ErrorBadImageFormat=Image file has not a supported format (Your PHP does not support functions to convert images of this format) +ErrorBadDateFormat=Value '%s' has wrong date format +ErrorWrongDate=Date is not correct! +ErrorFailedToWriteInDir=Failed to write in directory %s +ErrorFoundBadEmailInFile=Found incorrect email syntax for %s lines in file (example line %s with email=%s) +ErrorUserCannotBeDelete=User cannot be deleted. Maybe it is associated to Dolibarr entities. +ErrorFieldsRequired=Some required fields were not filled. +ErrorSubjectIsRequired=The email topic is required +ErrorFailedToCreateDir=Failed to create a directory. Check that Web server user has permissions to write into Dolibarr documents directory. If parameter safe_mode is enabled on this PHP, check that Dolibarr php files owns to web server user (or group). +ErrorNoMailDefinedForThisUser=No mail defined for this user +ErrorFeatureNeedJavascript=This feature need javascript to be activated to work. Change this in setup - display. +ErrorTopMenuMustHaveAParentWithId0=A menu of type 'Top' can't have a parent menu. Put 0 in parent menu or choose a menu of type 'Left'. +ErrorLeftMenuMustHaveAParentId=A menu of type 'Left' must have a parent id. +ErrorFileNotFound=File %s not found (Bad path, wrong permissions or access denied by PHP openbasedir or safe_mode parameter) +ErrorDirNotFound=Directory %s not found (Bad path, wrong permissions or access denied by PHP openbasedir or safe_mode parameter) +ErrorFunctionNotAvailableInPHP=Function %s is required for this feature but is not available in this version/setup of PHP. +ErrorDirAlreadyExists=A directory with this name already exists. +ErrorFileAlreadyExists=A file with this name already exists. +ErrorPartialFile=File not received completely by server. +ErrorNoTmpDir=Temporary directy %s does not exists. +ErrorUploadBlockedByAddon=Upload blocked by a PHP/Apache plugin. +ErrorFileSizeTooLarge=File size is too large. +ErrorFieldTooLong=Field %s is too long. +ErrorSizeTooLongForIntType=Size too long for int type (%s digits maximum) +ErrorSizeTooLongForVarcharType=Size too long for string type (%s chars maximum) +ErrorNoValueForSelectType=Please fill value for select list +ErrorNoValueForCheckBoxType=Please fill value for checkbox list +ErrorNoValueForRadioType=Please fill value for radio list +ErrorBadFormatValueList=The list value cannot have more than one comma: %s, but need at least one: key,value +ErrorFieldCanNotContainSpecialCharacters=The field %s must not contains special characters. +ErrorFieldCanNotContainSpecialNorUpperCharacters=The field %s must not contain special characters, nor upper case characters and cannot contain only numbers. +ErrorFieldMustHaveXChar=The field %s must have at least %s characters. +ErrorNoAccountancyModuleLoaded=No accountancy module activated +ErrorExportDuplicateProfil=This profile name already exists for this export set. +ErrorLDAPSetupNotComplete=Dolibarr-LDAP matching is not complete. +ErrorLDAPMakeManualTest=A .ldif file has been generated in directory %s. Try to load it manually from command line to have more information on errors. +ErrorCantSaveADoneUserWithZeroPercentage=Can't save an action with "status not started" if field "done by" is also filled. +ErrorRefAlreadyExists=Ref used for creation already exists. +ErrorPleaseTypeBankTransactionReportName=Please enter the bank statement name where the entry has to be reported (Format YYYYMM or YYYYMMDD) +ErrorRecordHasChildren=Failed to delete record since it has some child records. +ErrorRecordHasAtLeastOneChildOfType=Object has at least one child of type %s +ErrorRecordIsUsedCantDelete=Can't delete record. It is already used or included into another object. +ErrorModuleRequireJavascript=Javascript must not be disabled to have this feature working. To enable/disable Javascript, go to menu Home->Setup->Display. +ErrorPasswordsMustMatch=Both typed passwords must match each other +ErrorContactEMail=A technical error occured. Please, contact administrator to following email %s and provide the error code %s in your message, or add a screen copy of this page. +ErrorWrongValueForField=Field %s: '%s' does not match regex rule %s +ErrorFieldValueNotIn=Field %s: '%s' is not a value found in field %s of %s +ErrorFieldRefNotIn=Field %s: '%s' is not a %s existing ref +ErrorsOnXLines=%s errors found +ErrorFileIsInfectedWithAVirus=The antivirus program was not able to validate the file (file might be infected by a virus) +ErrorSpecialCharNotAllowedForField=Special characters are not allowed for field "%s" +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 %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 +ErrorMaxNumberReachForThisMask=Maximum number reached for this mask +ErrorCounterMustHaveMoreThan3Digits=Counter must have more than 3 digits +ErrorSelectAtLeastOne=Error, select at least one entry. +ErrorDeleteNotPossibleLineIsConsolidated=Delete not possible because record is linked to a bank transaction that is conciliated +ErrorProdIdAlreadyExist=%s is assigned to another third +ErrorFailedToSendPassword=Failed to send password +ErrorFailedToLoadRSSFile=Fails to get RSS feed. Try to add constant MAIN_SIMPLEXMLLOAD_DEBUG if error messages does not provide enough information. +ErrorForbidden=Access denied.
    You try to access to a page, area or feature of a disabled module or without being in an authenticated session or that is not allowed to your user. +ErrorForbidden2=Permission for this login can be defined by your Dolibarr administrator from menu %s->%s. +ErrorForbidden3=It seems that Dolibarr is not used through an authenticated session. Take a look at Dolibarr setup documentation to know how to manage authentications (htaccess, mod_auth or other...). +ErrorNoImagickReadimage=Class Imagick is not found in this PHP. No preview can be available. Administrators can disable this tab from menu Setup - Display. +ErrorRecordAlreadyExists=Record already exists +ErrorLabelAlreadyExists=This label already exists +ErrorCantReadFile=Failed to read file '%s' +ErrorCantReadDir=Failed to read directory '%s' +ErrorBadLoginPassword=Bad value for login or password +ErrorLoginDisabled=Your account has been disabled +ErrorFailedToRunExternalCommand=Failed to run external command. Check it is available and runnable by your PHP server. If PHP Safe Mode is enabled, check that command is inside a directory defined by parameter safe_mode_exec_dir. +ErrorFailedToChangePassword=Failed to change password +ErrorLoginDoesNotExists=User with login %s could not be found. +ErrorLoginHasNoEmail=This user has no email address. Process aborted. +ErrorBadValueForCode=Bad value for security code. Try again with new value... +ErrorBothFieldCantBeNegative=Fields %s and %s can't be both negative +ErrorFieldCantBeNegativeOnInvoice=Field %s cannot be negative on this type of invoice. If you need to add a discount line, just create the discount first (from field '%s' in thirdparty card) and apply it to the invoice. +ErrorLinesCantBeNegativeForOneVATRate=Total of lines can't be negative for a given VAT rate. +ErrorLinesCantBeNegativeOnDeposits=Lines can't be negative in a deposit. You will face problems when you will need to consume the deposit in final invoice if you do so. +ErrorQtyForCustomerInvoiceCantBeNegative=Quantity for line into customer invoices can't be negative +ErrorWebServerUserHasNotPermission=User account %s used to execute web server has no permission for that +ErrorNoActivatedBarcode=No barcode type activated +ErrUnzipFails=Failed to unzip %s with ZipArchive +ErrNoZipEngine=No engine to zip/unzip %s file in this PHP +ErrorFileMustBeADolibarrPackage=The file %s must be a Dolibarr zip package +ErrorModuleFileRequired=You must select a Dolibarr module package file +ErrorPhpCurlNotInstalled=The PHP CURL is not installed, this is essential to talk with Paypal +ErrorFailedToAddToMailmanList=Failed to add record %s to Mailman list %s or SPIP base +ErrorFailedToRemoveToMailmanList=Failed to remove record %s to Mailman list %s or SPIP base +ErrorNewValueCantMatchOldValue=New value can't be equal to old one +ErrorFailedToValidatePasswordReset=Failed to reinit password. May be the reinit was already done (this link can be used only one time). If not, try to restart the reinit process. +ErrorToConnectToMysqlCheckInstance=Connect to database fails. Check database server is running (for example, with mysql/mariadb, you can launch it from command line with 'sudo service mysql start'). +ErrorFailedToAddContact=Failed to add contact +ErrorDateMustBeBeforeToday=The date cannot be greater than today +ErrorPaymentModeDefinedToWithoutSetup=A payment mode was set to type %s but setup of module Invoice was not completed to define information to show for this payment mode. +ErrorPHPNeedModule=Error, your PHP must have module %s installed to use this feature. +ErrorOpenIDSetupNotComplete=You setup Dolibarr config file to allow OpenID authentication, but URL of OpenID service is not defined into constant %s +ErrorWarehouseMustDiffers=Source and target warehouses must differs +ErrorBadFormat=Bad format! +ErrorMemberNotLinkedToAThirpartyLinkOrCreateFirst=Error, this member is not yet linked to any third party. Link member to an existing third party or create a new third party before creating subscription with invoice. +ErrorThereIsSomeDeliveries=Error, there is some deliveries linked to this shipment. Deletion refused. +ErrorCantDeletePaymentReconciliated=Can't delete a payment that had generated a bank entry that was reconciled +ErrorCantDeletePaymentSharedWithPayedInvoice=Can't delete a payment shared by at least one invoice with status Paid +ErrorPriceExpression1=Cannot assign to constant '%s' +ErrorPriceExpression2=Cannot redefine built-in function '%s' +ErrorPriceExpression3=Undefined variable '%s' in function definition +ErrorPriceExpression4=Illegal character '%s' +ErrorPriceExpression5=Unexpected '%s' +ErrorPriceExpression6=Wrong number of arguments (%s given, %s expected) +ErrorPriceExpression8=Unexpected operator '%s' +ErrorPriceExpression9=An unexpected error occured +ErrorPriceExpression10=Operator '%s' lacks operand +ErrorPriceExpression11=Expecting '%s' +ErrorPriceExpression14=Division by zero +ErrorPriceExpression17=Undefined variable '%s' +ErrorPriceExpression19=Expression not found +ErrorPriceExpression20=Empty expression +ErrorPriceExpression21=Empty result '%s' +ErrorPriceExpression22=Negative result '%s' +ErrorPriceExpression23=Unknown or non set variable '%s' in %s +ErrorPriceExpression24=Variable '%s' exists but has no value +ErrorPriceExpressionInternal=Internal error '%s' +ErrorPriceExpressionUnknown=Unknown error '%s' +ErrorSrcAndTargetWarehouseMustDiffers=Source and target warehouses must differs +ErrorTryToMakeMoveOnProductRequiringBatchData=Error, trying to make a stock movement without lot/serial information, on product '%s' requiring lot/serial information +ErrorCantSetReceptionToTotalDoneWithReceptionToApprove=All recorded receptions must first be verified (approved or denied) before being allowed to do this action +ErrorCantSetReceptionToTotalDoneWithReceptionDenied=All recorded receptions must first be verified (approved) before being allowed to do this action +ErrorGlobalVariableUpdater0=HTTP request failed with error '%s' +ErrorGlobalVariableUpdater1=Invalid JSON format '%s' +ErrorGlobalVariableUpdater2=Missing parameter '%s' +ErrorGlobalVariableUpdater3=The requested data was not found in result +ErrorGlobalVariableUpdater4=SOAP client failed with error '%s' +ErrorGlobalVariableUpdater5=No global variable selected +ErrorFieldMustBeANumeric=Field %s must be a numeric value +ErrorMandatoryParametersNotProvided=Mandatory parameter(s) not provided +ErrorOppStatusRequiredIfAmount=You set an estimated amount for this lead. So you must also enter it's status. +ErrorFailedToLoadModuleDescriptorForXXX=Failed to load module descriptor class for %s +ErrorBadDefinitionOfMenuArrayInModuleDescriptor=Bad Definition Of Menu Array In Module Descriptor (bad value for key fk_menu) +ErrorSavingChanges=An error has occurred when saving the changes +ErrorWarehouseRequiredIntoShipmentLine=Warehouse is required on the line to ship +ErrorFileMustHaveFormat=File must have format %s +ErrorSupplierCountryIsNotDefined=Country for this vendor is not defined. Correct this first. +ErrorsThirdpartyMerge=Failed to merge the two records. Request canceled. +ErrorStockIsNotEnoughToAddProductOnOrder=Stock is not enough for product %s to add it into a new order. +ErrorStockIsNotEnoughToAddProductOnInvoice=Stock is not enough for product %s to add it into a new invoice. +ErrorStockIsNotEnoughToAddProductOnShipment=Stock is not enough for product %s to add it into a new shipment. +ErrorStockIsNotEnoughToAddProductOnProposal=Stock is not enough for product %s to add it into a new proposal. +ErrorFailedToLoadLoginFileForMode=Failed to get the login key for mode '%s'. +ErrorModuleNotFound=File of module was not found. +ErrorFieldAccountNotDefinedForBankLine=Value for Accounting account not defined for source line id %s (%s) +ErrorFieldAccountNotDefinedForInvoiceLine=Value for Accounting account not defined for invoice id %s (%s) +ErrorFieldAccountNotDefinedForLine=Value for Accounting account not defined for the line (%s) +ErrorBankStatementNameMustFollowRegex=Error, bank statement name must follow the following syntax rule %s +ErrorPhpMailDelivery=Check that you don't use a too high number of recipients and that your email content is not similar to a Spam. Ask also your administrator to check firewall and server logs files for a more complete information. +ErrorUserNotAssignedToTask=User must be assigned to task to be able to enter time consumed. +ErrorTaskAlreadyAssigned=Task already assigned to user +ErrorModuleFileSeemsToHaveAWrongFormat=The module package seems to have a wrong format. +ErrorModuleFileSeemsToHaveAWrongFormat2=At least one mandatory directory must exists into zip of module: %s or %s +ErrorFilenameDosNotMatchDolibarrPackageRules=The name of the module package (%s) does not match expected name syntax: %s +ErrorDuplicateTrigger=Error, duplicate trigger name %s. Already loaded from %s. +ErrorNoWarehouseDefined=Error, no warehouses defined. +ErrorBadLinkSourceSetButBadValueForRef=The link you use is not valid. A 'source' for payment is defined, but value for 'ref' is not valid. +ErrorTooManyErrorsProcessStopped=Too many errors. Process was stopped. +ErrorMassValidationNotAllowedWhenStockIncreaseOnAction=Mass validation is not possible when option to increase/decrease stock is set on this action (you must validate one by one so you can define the warehouse to increase/decrease) +ErrorObjectMustHaveStatusDraftToBeValidated=Object %s must have status 'Draft' to be validated. +ErrorObjectMustHaveLinesToBeValidated=Object %s must have lines to be validated. +ErrorOnlyInvoiceValidatedCanBeSentInMassAction=Only validated invoices can be sent using the "Send by email" mass action. +ErrorChooseBetweenFreeEntryOrPredefinedProduct=You must choose if article is a predefined product or not +ErrorDiscountLargerThanRemainToPaySplitItBefore=The discount you try to apply is larger than remain to pay. Split the discount in 2 smaller discounts before. +ErrorFileNotFoundWithSharedLink=File was not found. May be the share key was modified or file was removed recently. +ErrorProductBarCodeAlreadyExists=The product barcode %s already exists on another product reference. +ErrorNoteAlsoThatSubProductCantBeFollowedByLot=Note also that using virtual product to have auto increase/decrease of subproducts is not possible when at least one subproduct (or subproduct of subproducts) needs a serial/lot number. +ErrorDescRequiredForFreeProductLines=Description is mandatory for lines with free product +ErrorAPageWithThisNameOrAliasAlreadyExists=The page/container %s has the same name or alternative alias that the one your try to use +ErrorDuringChartLoad=Error when loading chart of accounts. If few accounts were not loaded, you can still enter them manually. +ErrorBadSyntaxForParamKeyForContent=Bad syntax for param keyforcontent. Must have a value starting with %s or %s +ErrorVariableKeyForContentMustBeSet=Error, the constant with name %s (with text content to show) or %s (with external url to show) must be set. +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. +ErrorObjectMustHaveStatusActiveToBeDisabled=Objects must have status 'Active' to be disabled +ErrorObjectMustHaveStatusDraftOrDisabledToBeActivated=Objects must have status 'Draft' or 'Disabled' to be enabled +ErrorNoFieldWithAttributeShowoncombobox=No fields has property 'showoncombobox' into definition of object '%s'. No way to show the combolist. +ErrorFieldRequiredForProduct=Field '%s' is required for product %s +ProblemIsInSetupOfTerminal=Problem is in setup of terminal %s. +ErrorAddAtLeastOneLineFirst=Add at least one line first +ErrorRecordAlreadyInAccountingDeletionNotPossible=Error, record is already transferred in accounting, deletion is not possible. +ErrorLanguageMandatoryIfPageSetAsTranslationOfAnother=Error, language is mandatory if you set the page as a translation of another one. +ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated page is same than this one. +ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". +ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". +ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty +# 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 +WarningSafeModeOnCheckExecDir=Warning, PHP option safe_mode is on so command must be stored inside a directory declared by php parameter safe_mode_exec_dir. +WarningBookmarkAlreadyExists=A bookmark with this title or this target (URL) already exists. +WarningPassIsEmpty=Warning, database password is empty. This is a security hole. You should add a password to your database and change your conf.php file to reflect this. +WarningConfFileMustBeReadOnly=Warning, your config file (htdocs/conf/conf.php) can be overwritten by the web server. This is a serious security hole. Modify permissions on file to be in read only mode for operating system user used by Web server. If you use Windows and FAT format for your disk, you must know that this file system does not allow to add permissions on file, so can't be completely safe. +WarningsOnXLines=Warnings on %s source record(s) +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). +WarningCloseAlways=Warning, closing is done even if amount differs between source and target elements. Enable this feature with caution. +WarningUsingThisBoxSlowDown=Warning, using this box slow down seriously all pages showing the box. +WarningClickToDialUserSetupNotComplete=Setup of ClickToDial information for your user are not complete (see tab ClickToDial onto your user card). +WarningFeatureDisabledWithDisplayOptimizedForBlindNoJs=Feature disabled when display setup is optimized for blind person or text browsers. +WarningPaymentDateLowerThanInvoiceDate=Payment date (%s) is earlier than invoice date (%s) for invoice %s. +WarningTooManyDataPleaseUseMoreFilters=Too many data (more than %s lines). Please use more filters or set the constant %s to a higher limit. +WarningSomeLinesWithNullHourlyRate=Some times were recorded by some users while their hourly rate was not defined. A value of 0 %s per hour was used but this may result in wrong valuation of time spent. +WarningYourLoginWasModifiedPleaseLogin=Your login was modified. For security purpose you will have to login with your new login before next action. +WarningAnEntryAlreadyExistForTransKey=An entry already exists for the translation key for this language +WarningNumberOfRecipientIsRestrictedInMassAction=Warning, number of different recipient is limited to %s when using the mass actions on lists +WarningDateOfLineMustBeInExpenseReportRange=Warning, the date of line is not in the range of the expense report +WarningProjectClosed=Project is closed. You must re-open it first. +WarningSomeBankTransactionByChequeWereRemovedAfter=Some bank transaction were removed after that the receipt including them were generated. So nb of cheques and total of receipt may differ from number and total in list. diff --git a/htdocs/langs/az_AZ/exports.lang b/htdocs/langs/az_AZ/exports.lang new file mode 100644 index 00000000000..3549e3f8b23 --- /dev/null +++ b/htdocs/langs/az_AZ/exports.lang @@ -0,0 +1,135 @@ +# Dolibarr language file - Source file is en_US - exports +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 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 your selections as an export profile/template (for reuse). +SaveImportModel=Save this import profile (for reuse) ... +ExportModelName=Export profile name +ExportModelSaved=Export profile saved as %s. +ExportableFields=Exportable fields +ExportedFields=Exported fields +ImportModelName=Import profile name +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 the file format in the combo box and click on "Generate" to build the export file... +AvailableFormats=Available Formats +LibraryShort=Library +ExportCsvSeparator=Csv caracter separator +ImportCsvSeparator=Csv caracter separator +Step=Step +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 extract data +LineId=Id of line +LineLabel=Label of line +LineDescription=Description of line +LineUnitPrice=Unit price of line +LineVATRate=VAT Rate of line +LineQty=Quantity for line +LineTotalHT=Amount excl. tax for line +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 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) +Field=Field +NoFields=No fields +MoveField=Move field column number %s +ExampleOfImportFile=Example_of_import_file +SaveImportProfile=Save this import profile +ErrorImportDuplicateProfil=Failed to save this import profile with this name. An existing profile already exists with this name. +TablesTarget=Targeted tables +FieldsTarget=Targeted fields +FieldTarget=Targeted field +FieldSource=Source field +NbOfSourceLines=Number of lines in source file +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=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 correct all errors before running the definitive import. +FileWasImported=File was imported with number %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 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 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 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 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 +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=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 +ComputedField=Computed field +## filters +SelectFilterFields=If you want to filter on some values, just input values here. +FilteredFields=Filtered fields +FilteredFieldsValues=Value for filter +FormatControlRule=Format control rule +## imports updates +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/az_AZ/externalsite.lang b/htdocs/langs/az_AZ/externalsite.lang new file mode 100644 index 00000000000..da4853df0df --- /dev/null +++ b/htdocs/langs/az_AZ/externalsite.lang @@ -0,0 +1,5 @@ +# Dolibarr language file - Source file is en_US - externalsite +ExternalSiteSetup=Setup link to external website +ExternalSiteURL=External Site URL +ExternalSiteModuleNotComplete=Module ExternalSite was not configured properly. +ExampleMyMenuEntry=My menu entry diff --git a/htdocs/langs/az_AZ/ftp.lang b/htdocs/langs/az_AZ/ftp.lang new file mode 100644 index 00000000000..d80b87c2715 --- /dev/null +++ b/htdocs/langs/az_AZ/ftp.lang @@ -0,0 +1,14 @@ +# Dolibarr language file - Source file is en_US - ftp +FTPClientSetup=FTP Client module setup +NewFTPClient=New FTP connection setup +FTPArea=FTP Area +FTPAreaDesc=This screen shows a view of an FTP server. +SetupOfFTPClientModuleNotComplete=The setup of the FTP client module seems to be incomplete +FTPFeatureNotSupportedByYourPHP=Your PHP does not support FTP functions +FailedToConnectToFTPServer=Failed to connect to FTP server (server %s, port %s) +FailedToConnectToFTPServerWithCredentials=Failed to login to FTP server with defined login/password +FTPFailedToRemoveFile=Failed to remove file %s. +FTPFailedToRemoveDir=Failed to remove directory %s: check permissions and that the directory is empty. +FTPPassiveMode=Passive mode +ChooseAFTPEntryIntoMenu=Choose a FTP site from the menu... +FailedToGetFile=Failed to get files %s diff --git a/htdocs/langs/az_AZ/help.lang b/htdocs/langs/az_AZ/help.lang new file mode 100644 index 00000000000..048de16d3c0 --- /dev/null +++ b/htdocs/langs/az_AZ/help.lang @@ -0,0 +1,23 @@ +# Dolibarr language file - Source file is en_US - help +CommunitySupport=Forum/Wiki support +EMailSupport=Emails support +RemoteControlSupport=Online real-time / remote support +OtherSupport=Other support +ToSeeListOfAvailableRessources=To contact/see available resources: +HelpCenter=Help Center +DolibarrHelpCenter=Dolibarr Help and Support Center +ToGoBackToDolibarr=Otherwise, click here to continue to use Dolibarr. +TypeOfSupport=Type of support +TypeSupportCommunauty=Community (free) +TypeSupportCommercial=Commercial +TypeOfHelp=Type +NeedHelpCenter=Need help or support? +Efficiency=Efficiency +TypeHelpOnly=Help only +TypeHelpDev=Help+Development +TypeHelpDevForm=Help+Development+Training +BackToHelpCenter=Otherwise, go back to Help center home page. +LinkToGoldMember=You can call one of the trainers preselected by Dolibarr for your language (%s) by clicking their Widget (status and maximum price are automatically updated): +PossibleLanguages=Supported languages +SubscribeToFoundation=Help the Dolibarr project, subscribe to the foundation +SeeOfficalSupport=For official Dolibarr support in your language:
    %s diff --git a/htdocs/langs/az_AZ/holiday.lang b/htdocs/langs/az_AZ/holiday.lang new file mode 100644 index 00000000000..82de49f9c5f --- /dev/null +++ b/htdocs/langs/az_AZ/holiday.lang @@ -0,0 +1,133 @@ +# Dolibarr language file - Source file is en_US - holiday +HRM=HRM +Holidays=Leave +CPTitreMenu=Leave +MenuReportMonth=Monthly statement +MenuAddCP=New leave request +NotActiveModCP=You must enable the module Leave to view this page. +AddCP=Make a leave request +DateDebCP=Start date +DateFinCP=End date +DraftCP=Draft +ToReviewCP=Awaiting approval +ApprovedCP=Approved +CancelCP=Canceled +RefuseCP=Refused +ValidatorCP=Approbator +ListeCP=List of leave +LeaveId=Leave ID +ReviewedByCP=Will be approved by +UserID=User ID +UserForApprovalID=User for approval ID +UserForApprovalFirstname=First name of approval user +UserForApprovalLastname=Last name of approval user +UserForApprovalLogin=Login of approval user +DescCP=Description +SendRequestCP=Create leave request +DelayToRequestCP=Leave requests must be made at least %s day(s) before them. +MenuConfCP=Balance of leave +SoldeCPUser=Leave balance is %s days. +ErrorEndDateCP=You must select an end date greater than the start date. +ErrorSQLCreateCP=An SQL error occurred during the creation: +ErrorIDFicheCP=An error has occurred, the leave request does not exist. +ReturnCP=Return to previous page +ErrorUserViewCP=You are not authorized to read this leave request. +InfosWorkflowCP=Information Workflow +RequestByCP=Requested by +TitreRequestCP=Leave request +TypeOfLeaveId=Type of leave ID +TypeOfLeaveCode=Type of leave code +TypeOfLeaveLabel=Type of leave label +NbUseDaysCP=Number of days of vacation consumed +NbUseDaysCPHelp=The calculation takes into account the non working days and the holidays defined in the dictionary. +NbUseDaysCPShort=Days consumed +NbUseDaysCPShortInMonth=Days consumed in month +DayIsANonWorkingDay=%s is a non working day +DateStartInMonth=Start date in month +DateEndInMonth=End date in month +EditCP=Edit +DeleteCP=Delete +ActionRefuseCP=Refuse +ActionCancelCP=Cancel +StatutCP=Status +TitleDeleteCP=Delete the leave request +ConfirmDeleteCP=Confirm the deletion of this leave request? +ErrorCantDeleteCP=Error you don't have the right to delete this leave request. +CantCreateCP=You don't have the right to make leave requests. +InvalidValidatorCP=You must choose an approbator to your leave request. +NoDateDebut=You must select a start date. +NoDateFin=You must select an end date. +ErrorDureeCP=Your leave request does not contain working day. +TitleValidCP=Approve the leave request +ConfirmValidCP=Are you sure you want to approve the leave request? +DateValidCP=Date approved +TitleToValidCP=Send leave request +ConfirmToValidCP=Are you sure you want to send the leave request? +TitleRefuseCP=Refuse the leave request +ConfirmRefuseCP=Are you sure you want to refuse the leave request? +NoMotifRefuseCP=You must choose a reason for refusing the request. +TitleCancelCP=Cancel the leave request +ConfirmCancelCP=Are you sure you want to cancel the leave request? +DetailRefusCP=Reason for refusal +DateRefusCP=Date of refusal +DateCancelCP=Date of cancellation +DefineEventUserCP=Assign an exceptional leave for a user +addEventToUserCP=Assign leave +NotTheAssignedApprover=You are not the assigned approver +MotifCP=Reason +UserCP=User +ErrorAddEventToUserCP=An error occurred while adding the exceptional leave. +AddEventToUserOkCP=The addition of the exceptional leave has been completed. +MenuLogCP=View change logs +LogCP=Log of updates of available vacation days +ActionByCP=Performed by +UserUpdateCP=For the user +PrevSoldeCP=Previous Balance +NewSoldeCP=New Balance +alreadyCPexist=A leave request has already been done on this period. +FirstDayOfHoliday=First day of vacation +LastDayOfHoliday=Last day of vacation +BoxTitleLastLeaveRequests=Latest %s modified leave requests +HolidaysMonthlyUpdate=Monthly update +ManualUpdate=Manual update +HolidaysCancelation=Leave request cancelation +EmployeeLastname=Employee last name +EmployeeFirstname=Employee first name +TypeWasDisabledOrRemoved=Leave type (id %s) was disabled or removed +LastHolidays=Latest %s leave requests +AllHolidays=All leave requests +HalfDay=Half day +NotTheAssignedApprover=You are not the assigned approver +LEAVE_PAID=Paid vacation +LEAVE_SICK=Sick leave +LEAVE_OTHER=Other leave +LEAVE_PAID_FR=Paid vacation +## Configuration du Module ## +LastUpdateCP=Latest automatic update of leave allocation +MonthOfLastMonthlyUpdate=Month of latest automatic update of leave allocation +UpdateConfCPOK=Updated successfully. +Module27130Name= Management of leave requests +Module27130Desc= Management of leave requests +ErrorMailNotSend=An error occurred while sending email: +NoticePeriod=Notice period +#Messages +HolidaysToValidate=Validate leave requests +HolidaysToValidateBody=Below is a leave request to validate +HolidaysToValidateDelay=This leave request will take place within a period of less than %s days. +HolidaysToValidateAlertSolde=The user who made this leave request does not have enough available days. +HolidaysValidated=Validated leave requests +HolidaysValidatedBody=Your leave request for %s to %s has been validated. +HolidaysRefused=Request denied +HolidaysRefusedBody=Your leave request for %s to %s has been denied for the following reason: +HolidaysCanceled=Canceled leaved request +HolidaysCanceledBody=Your leave request for %s to %s has been canceled. +FollowedByACounter=1: This type of leave need to be followed by a counter. Counter is incremented manually or automatically and when a leave request is validated, counter is decremented.
    0: Not followed by a counter. +NoLeaveWithCounterDefined=There is no leave types defined that need to be followed by a counter +GoIntoDictionaryHolidayTypes=Go into Home - Setup - Dictionaries - Type of leave to setup the different types of leaves. +HolidaySetup=Setup of module Holiday +HolidaysNumberingModules=Leave requests numbering models +TemplatePDFHolidays=Template for leave requests PDF +FreeLegalTextOnHolidays=Free text on PDF +WatermarkOnDraftHolidayCards=Watermarks on draft leave requests +HolidaysToApprove=Holidays to approve +NobodyHasPermissionToValidateHolidays=Nobody has permission to validate holidays diff --git a/htdocs/langs/az_AZ/hrm.lang b/htdocs/langs/az_AZ/hrm.lang new file mode 100644 index 00000000000..3697c47e30d --- /dev/null +++ b/htdocs/langs/az_AZ/hrm.lang @@ -0,0 +1,18 @@ +# Dolibarr language file - en_US - hrm +# Admin +HRM_EMAIL_EXTERNAL_SERVICE=Email to prevent HRM external service +Establishments=Establishments +Establishment=Establishment +NewEstablishment=New establishment +DeleteEstablishment=Delete establishment +ConfirmDeleteEstablishment=Are you sure you wish to delete this establishment? +OpenEtablishment=Open establishment +CloseEtablishment=Close establishment +# Dictionary +DictionaryPublicHolidays=HRM - Public holidays +DictionaryDepartment=HRM - Department list +DictionaryFunction=HRM - Function list +# Module +Employees=Employees +Employee=Employee +NewEmployee=New employee diff --git a/htdocs/langs/az_AZ/install.lang b/htdocs/langs/az_AZ/install.lang new file mode 100644 index 00000000000..f67dff57184 --- /dev/null +++ b/htdocs/langs/az_AZ/install.lang @@ -0,0 +1,223 @@ +# Dolibarr language file - Source file is en_US - install +InstallEasy=Just follow the instructions step by step. +MiscellaneousChecks=Prerequisites check +ConfFileExists=Configuration file %s exists. +ConfFileDoesNotExistsAndCouldNotBeCreated=Configuration file %s does not exist and could not be created! +ConfFileCouldBeCreated=Configuration file %s could be created. +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=Configuration file %s is writable. +ConfFileMustBeAFileNotADir=Configuration file %s must be a file, not a directory. +ConfFileReload=Reloading parameters from configuration file. +PHPSupportSessions=This PHP supports sessions. +PHPSupportPOSTGETOk=This PHP supports variables POST and 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. +PHPSupportCalendar=This PHP supports calendars extensions. +PHPSupportUTF8=This PHP supports UTF8 functions. +PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. +PHPSupport=This PHP supports %s functions. +PHPMemoryOK=Your PHP max session memory is set to %s. This should be enough. +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. +ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. +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. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. +ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. +ErrorDirDoesNotExists=Directory %s does not exist. +ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. +ErrorWrongValueForParameter=You may have typed a wrong value for parameter '%s'. +ErrorFailedToCreateDatabase=Failed to create database '%s'. +ErrorFailedToConnectToDatabase=Failed to connect to database '%s'. +ErrorDatabaseVersionTooLow=Database version (%s) too old. Version %s or higher is required. +ErrorPHPVersionTooLow=PHP version too old. Version %s is required. +ErrorConnectedButDatabaseNotFound=Connection to server successful but database '%s' not found. +ErrorDatabaseAlreadyExists=Database '%s' already exists. +IfDatabaseNotExistsGoBackAndUncheckCreate=If the database does not exist, go back and check option "Create database". +IfDatabaseExistsGoBackAndCheckCreate=If database already exists, go back and uncheck "Create database" option. +WarningBrowserTooOld=Version of browser is too old. Upgrading your browser to a recent version of Firefox, Chrome or Opera is highly recommended. +PHPVersion=PHP Version +License=Using license +ConfigurationFile=Configuration file +WebPagesDirectory=Directory where web pages are stored +DocumentsDirectory=Directory to store uploaded and generated documents +URLRoot=URL Root +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=Driver type +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. +DatabaseServer=Database server +DatabaseName=Database name +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=Password for Dolibarr database owner. +CreateDatabase=Create database +CreateUser=Create user account or grant user account permission on the Dolibarr database +DatabaseSuperUserAccess=Database server - Superuser access +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 +ServerConnection=Server connection +DatabaseCreation=Database creation +CreateDatabaseObjects=Database objects creation +ReferenceDataLoading=Reference data loading +TablesAndPrimaryKeysCreation=Tables and Primary keys creation +CreateTableAndPrimaryKey=Create table %s +CreateOtherKeysForTable=Create foreign keys and indexes for table %s +OtherKeysCreation=Foreign keys and indexes creation +FunctionsCreation=Functions creation +AdminAccountCreation=Administrator login creation +PleaseTypePassword=Please type a password, empty passwords are not allowed! +PleaseTypeALogin=Please type a login! +PasswordsMismatch=Passwords differs, please try again! +SetupEnd=End of setup +SystemIsInstalled=This installation is complete. +SystemIsUpgraded=Dolibarr has been upgraded successfully. +YouNeedToPersonalizeSetup=You need to configure Dolibarr to suit your needs (appearance, features, ...). To do this, please follow the link below: +AdminLoginCreatedSuccessfuly=Dolibarr administrator login '%s' created successfully. +GoToDolibarr=Go to Dolibarr +GoToSetupArea=Go to Dolibarr (setup area) +MigrationNotFinished=The database version is not completely up to date: run the upgrade process again. +GoToUpgradePage=Go to upgrade page again +WithNoSlashAtTheEnd=Without the slash "/" at the end +DirectoryRecommendation=IMPORTANT: You must use a directory that is outside of the web pages (so do not use a subdirectory of previous parameter). +LoginAlreadyExists=Already exists +DolibarrAdminLogin=Dolibarr admin login +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 +ChoosedMigrateScript=Choose migration script +DataMigration=Database migration (data) +DatabaseMigration=Database migration (structure + some data) +ProcessMigrateScript=Script processing +ChooseYourSetupMode=Choose your setup mode and click "Start"... +FreshInstall=Fresh install +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=Upgrade +UpgradeDesc=Use this mode if you have replaced old Dolibarr files with files from a newer version. This will upgrade your database and data. +Start=Start +InstallNotAllowed=Setup not allowed by conf.php permissions +YouMustCreateWithPermission=You must create file %s and set write permissions on it for the web server during install process. +CorrectProblemAndReloadPage=Please fix the problem and press F5 to reload the page. +AlreadyDone=Already migrated +DatabaseVersion=Database version +ServerVersion=Database server version +YouMustCreateItAndAllowServerToWrite=You must create this directory and allow for the web server to write into it. +DBSortingCollation=Character sorting order +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. +OrphelinsPaymentsDetectedByMethod=Orphans payment detected by method %s +RemoveItManuallyAndPressF5ToContinue=Remove it manually and press F5 to continue. +FieldRenamed=Field renamed +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=Recommended choice to install version %s from your current version %s +InstallChoiceSuggested=Install choice suggested by installer. +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=If this name is correct and that database does not exist yet, you must check option "Create database". +OpenBaseDir=PHP openbasedir parameter +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 +MigrationShippingDelivery=Upgrade storage of shipping +MigrationShippingDelivery2=Upgrade storage of shipping 2 +MigrationFinished=Migration finished +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. +ActivateModule=Activate module %s +ShowEditTechnicalParameters=Click here to show/edit advanced parameters (expert mode) +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 +######### +# upgrade +MigrationFixData=Fix for denormalized data +MigrationOrder=Data migration for customer's orders +MigrationSupplierOrder=Data migration for vendor's orders +MigrationProposal=Data migration for commercial proposals +MigrationInvoice=Data migration for customer's invoices +MigrationContract=Data migration for contracts +MigrationSuccessfullUpdate=Upgrade successful +MigrationUpdateFailed=Failed upgrade process +MigrationRelationshipTables=Data migration for relationship tables (%s) +MigrationPaymentsUpdate=Payment data correction +MigrationPaymentsNumberToUpdate=%s payment(s) to update +MigrationProcessPaymentUpdate=Update payment(s) %s +MigrationPaymentsNothingToUpdate=No more things to do +MigrationPaymentsNothingUpdatable=No more payments that can be corrected +MigrationContractsUpdate=Contract data correction +MigrationContractsNumberToUpdate=%s contract(s) to update +MigrationContractsLineCreation=Create contract line for contract ref %s +MigrationContractsNothingToUpdate=No more things to do +MigrationContractsFieldDontExist=Field fk_facture does not exist anymore. Nothing to do. +MigrationContractsEmptyDatesUpdate=Contract empty date correction +MigrationContractsEmptyDatesUpdateSuccess=Contract empty date correction done successfully +MigrationContractsEmptyDatesNothingToUpdate=No contract empty date to correct +MigrationContractsEmptyCreationDatesNothingToUpdate=No contract creation date to correct +MigrationContractsInvalidDatesUpdate=Bad value date contract correction +MigrationContractsInvalidDateFix=Correct contract %s (Contract date=%s, Starting service date min=%s) +MigrationContractsInvalidDatesNumber=%s contracts modified +MigrationContractsInvalidDatesNothingToUpdate=No date with bad value to correct +MigrationContractsIncoherentCreationDateUpdate=Bad value contract creation date correction +MigrationContractsIncoherentCreationDateUpdateSuccess=Bad value contract creation date correction done successfully +MigrationContractsIncoherentCreationDateNothingToUpdate=No bad value for contract creation date to correct +MigrationReopeningContracts=Open contract closed by error +MigrationReopenThisContract=Reopen contract %s +MigrationReopenedContractsNumber=%s contracts modified +MigrationReopeningContractsNothingToUpdate=No closed contract to open +MigrationBankTransfertsUpdate=Update links between bank entry and a bank transfer +MigrationBankTransfertsNothingToUpdate=All links are up to date +MigrationShipmentOrderMatching=Sendings receipt update +MigrationDeliveryOrderMatching=Delivery receipt update +MigrationDeliveryDetail=Delivery update +MigrationStockDetail=Update stock value of products +MigrationMenusDetail=Update dynamic menus tables +MigrationDeliveryAddress=Update delivery address in shipments +MigrationProjectTaskActors=Data migration for table llx_projet_task_actors +MigrationProjectUserResp=Data migration field fk_user_resp of llx_projet to llx_element_contact +MigrationProjectTaskTime=Update time spent in seconds +MigrationActioncommElement=Update data on actions +MigrationPaymentMode=Data migration for payment type +MigrationCategorieAssociation=Migration of categories +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 +MigrationFieldsSocialNetworks=Migration of users fields social networks (%s) +MigrationReloadModule=Reload module %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. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/az_AZ/interventions.lang b/htdocs/langs/az_AZ/interventions.lang new file mode 100644 index 00000000000..e5936f8246e --- /dev/null +++ b/htdocs/langs/az_AZ/interventions.lang @@ -0,0 +1,66 @@ +# Dolibarr language file - Source file is en_US - interventions +Intervention=Intervention +Interventions=Interventions +InterventionCard=Intervention card +NewIntervention=New intervention +AddIntervention=Create intervention +ChangeIntoRepeatableIntervention=Change to repeatable intervention +ListOfInterventions=List of interventions +ActionsOnFicheInter=Actions on intervention +LastInterventions=Latest %s interventions +AllInterventions=All interventions +CreateDraftIntervention=Create draft +InterventionContact=Intervention contact +DeleteIntervention=Delete intervention +ValidateIntervention=Validate intervention +ModifyIntervention=Modify intervention +DeleteInterventionLine=Delete intervention line +ConfirmDeleteIntervention=Are you sure you want to delete this intervention? +ConfirmValidateIntervention=Are you sure you want to validate this intervention under name %s? +ConfirmModifyIntervention=Are you sure you want to modify this intervention? +ConfirmDeleteInterventionLine=Are you sure you want to delete this intervention line? +ConfirmCloneIntervention=Are you sure you want to clone this intervention? +NameAndSignatureOfInternalContact=Name and signature of intervening: +NameAndSignatureOfExternalContact=Name and signature of customer: +DocumentModelStandard=Standard document model for interventions +InterventionCardsAndInterventionLines=Interventions and lines of interventions +InterventionClassifyBilled=Classify "Billed" +InterventionClassifyUnBilled=Classify "Unbilled" +InterventionClassifyDone=Classify "Done" +StatusInterInvoiced=Billed +SendInterventionRef=Submission of intervention %s +SendInterventionByMail=Send intervention by email +InterventionCreatedInDolibarr=Intervention %s created +InterventionValidatedInDolibarr=Intervention %s validated +InterventionModifiedInDolibarr=Intervention %s modified +InterventionClassifiedBilledInDolibarr=Intervention %s set as billed +InterventionClassifiedUnbilledInDolibarr=Intervention %s set as unbilled +InterventionSentByEMail=Intervention %s sent by email +InterventionDeletedInDolibarr=Intervention %s deleted +InterventionsArea=Interventions area +DraftFichinter=Draft interventions +LastModifiedInterventions=Latest %s modified interventions +FichinterToProcess=Interventions to process +TypeContact_fichinter_external_CUSTOMER=Following-up customer contact +PrintProductsOnFichinter=Print also lines of type "product" (not only services) on intervention card +PrintProductsOnFichinterDetails=interventions generated from orders +UseServicesDurationOnFichinter=Use services duration for interventions generated from orders +UseDurationOnFichinter=Hides the duration field for intervention records +UseDateWithoutHourOnFichinter=Hides hours and minutes off the date field for intervention records +InterventionStatistics=Statistics of interventions +NbOfinterventions=No. of intervention cards +NumberOfInterventionsByMonth=No. of intervention cards by month (date of validation) +AmountOfInteventionNotIncludedByDefault=Amount of intervention is not included by default into profit (in most cases, timesheets are used to count time spent). Add option PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT to 1 into home-setup-other to include them. +InterId=Intervention id +InterRef=Intervention ref. +InterDateCreation=Date creation intervention +InterDuration=Duration intervention +InterStatus=Status intervention +InterNote=Note intervention +InterLine=Line of intervention +InterLineId=Line id intervention +InterLineDate=Line date intervention +InterLineDuration=Line duration intervention +InterLineDesc=Line description intervention +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/az_AZ/languages.lang b/htdocs/langs/az_AZ/languages.lang new file mode 100644 index 00000000000..6185183161b --- /dev/null +++ b/htdocs/langs/az_AZ/languages.lang @@ -0,0 +1,89 @@ +# Dolibarr language file - Source file is en_US - languages +Language_ar_AR=Arabic +Language_ar_EG=Arabic (Egypt) +Language_ar_SA=Arabic +Language_bn_BD=Bengali +Language_bg_BG=Bulgarian +Language_bs_BA=Bosnian +Language_ca_ES=Catalan +Language_cs_CZ=Czech +Language_da_DA=Danish +Language_da_DK=Danish +Language_de_DE=German +Language_de_AT=German (Austria) +Language_de_CH=German (Switzerland) +Language_el_GR=Greek +Language_el_CY=Greek (Cyprus) +Language_en_AU=English (Australia) +Language_en_CA=English (Canada) +Language_en_GB=English (United Kingdom) +Language_en_IN=English (India) +Language_en_NZ=English (New Zealand) +Language_en_SA=English (Saudi Arabia) +Language_en_US=English (United States) +Language_en_ZA=English (South Africa) +Language_es_ES=Spanish +Language_es_AR=Spanish (Argentina) +Language_es_BO=Spanish (Bolivia) +Language_es_CL=Spanish (Chile) +Language_es_CO=Spanish (Colombia) +Language_es_DO=Spanish (Dominican Republic) +Language_es_EC=Spanish (Ecuador) +Language_es_HN=Spanish (Honduras) +Language_es_MX=Spanish (Mexico) +Language_es_PA=Spanish (Panama) +Language_es_PY=Spanish (Paraguay) +Language_es_PE=Spanish (Peru) +Language_es_PR=Spanish (Puerto Rico) +Language_es_UY=Spanish (Uruguay) +Language_es_VE=Spanish (Venezuela) +Language_et_EE=Estonian +Language_eu_ES=Basque +Language_fa_IR=Persian +Language_fi_FI=Finnish +Language_fr_BE=French (Belgium) +Language_fr_CA=French (Canada) +Language_fr_CH=French (Switzerland) +Language_fr_FR=French +Language_fr_NC=French (New Caledonia) +Language_fy_NL=Frisian +Language_he_IL=Hebrew +Language_hr_HR=Croatian +Language_hu_HU=Hungarian +Language_id_ID=Indonesian +Language_is_IS=Icelandic +Language_it_IT=Italian +Language_ja_JP=Japanese +Language_ka_GE=Georgian +Language_km_KH=Khmer +Language_kn_IN=Kannada +Language_ko_KR=Korean +Language_lo_LA=Lao +Language_lt_LT=Lithuanian +Language_lv_LV=Latvian +Language_mk_MK=Macedonian +Language_mn_MN=Mongolian +Language_nb_NO=Norwegian (Bokmål) +Language_nl_BE=Dutch (Belgium) +Language_nl_NL=Dutch +Language_pl_PL=Polish +Language_pt_BR=Portuguese (Brazil) +Language_pt_PT=Portuguese +Language_ro_RO=Romanian +Language_ru_RU=Russian +Language_ru_UA=Russian (Ukraine) +Language_tr_TR=Turkish +Language_sl_SI=Slovenian +Language_sv_SV=Swedish +Language_sv_SE=Swedish +Language_sq_AL=Albanian +Language_sk_SK=Slovakian +Language_sr_RS=Serbian +Language_sw_SW=Kiswahili +Language_th_TH=Thai +Language_uk_UA=Ukrainian +Language_uz_UZ=Uzbek +Language_vi_VN=Vietnamese +Language_zh_CN=Chinese +Language_zh_TW=Chinese (Traditional) +Language_bh_MY=Malay diff --git a/htdocs/langs/az_AZ/ldap.lang b/htdocs/langs/az_AZ/ldap.lang new file mode 100644 index 00000000000..8b6f0864215 --- /dev/null +++ b/htdocs/langs/az_AZ/ldap.lang @@ -0,0 +1,27 @@ +# Dolibarr language file - Source file is en_US - ldap +YouMustChangePassNextLogon=Password for user %s on the domain %s must be changed. +UserMustChangePassNextLogon=User must change password on the domain %s +LDAPInformationsForThisContact=Information in LDAP database for this contact +LDAPInformationsForThisUser=Information in LDAP database for this user +LDAPInformationsForThisGroup=Information in LDAP database for this group +LDAPInformationsForThisMember=Information in LDAP database for this member +LDAPInformationsForThisMemberType=Information in LDAP database for this member type +LDAPAttributes=LDAP attributes +LDAPCard=LDAP card +LDAPRecordNotFound=Record not found in LDAP database +LDAPUsers=Users in LDAP database +LDAPFieldStatus=Status +LDAPFieldFirstSubscriptionDate=First subscription date +LDAPFieldFirstSubscriptionAmount=First subscription amount +LDAPFieldLastSubscriptionDate=Latest subscription date +LDAPFieldLastSubscriptionAmount=Latest subscription amount +LDAPFieldSkype=Skype id +LDAPFieldSkypeExample=Example: skypeName +UserSynchronized=User synchronized +GroupSynchronized=Group synchronized +MemberSynchronized=Member synchronized +MemberTypeSynchronized=Member type synchronized +ContactSynchronized=Contact synchronized +ForceSynchronize=Force synchronizing Dolibarr -> LDAP +ErrorFailedToReadLDAP=Failed to read LDAP database. Check LDAP module setup and database accessibility. +PasswordOfUserInLDAP=Password of user in LDAP diff --git a/htdocs/langs/az_AZ/link.lang b/htdocs/langs/az_AZ/link.lang new file mode 100644 index 00000000000..1ffcd41a18b --- /dev/null +++ b/htdocs/langs/az_AZ/link.lang @@ -0,0 +1,11 @@ +# Dolibarr language file - Source file is en_US - languages +LinkANewFile=Link a new file/document +LinkedFiles=Linked files and documents +NoLinkFound=No registered links +LinkComplete=The file has been linked successfully +ErrorFileNotLinked=The file could not be linked +LinkRemoved=The link %s has been removed +ErrorFailedToDeleteLink= Failed to remove link '%s' +ErrorFailedToUpdateLink= Failed to update link '%s' +URLToLink=URL to link +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/az_AZ/loan.lang b/htdocs/langs/az_AZ/loan.lang new file mode 100644 index 00000000000..534dee08867 --- /dev/null +++ b/htdocs/langs/az_AZ/loan.lang @@ -0,0 +1,31 @@ +# Dolibarr language file - Source file is en_US - loan +Loan=Loan +Loans=Loans +NewLoan=New Loan +ShowLoan=Show Loan +PaymentLoan=Loan payment +LoanPayment=Loan payment +ShowLoanPayment=Show Loan Payment +LoanCapital=Capital +Insurance=Insurance +Interest=Interest +Nbterms=Number of terms +Term=Term +LoanAccountancyCapitalCode=Accounting account capital +LoanAccountancyInsuranceCode=Accounting account insurance +LoanAccountancyInterestCode=Accounting account interest +ConfirmDeleteLoan=Confirm deleting this loan +LoanDeleted=Loan Deleted Successfully +ConfirmPayLoan=Confirm classify paid this loan +LoanPaid=Loan Paid +ListLoanAssociatedProject=List of loan associated with the project +AddLoan=Create loan +FinancialCommitment=Financial commitment +InterestAmount=Interest +CapitalRemain=Capital remain +# Admin +ConfigLoan=Configuration of the module loan +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 diff --git a/htdocs/langs/az_AZ/mailmanspip.lang b/htdocs/langs/az_AZ/mailmanspip.lang new file mode 100644 index 00000000000..bab4b3576b4 --- /dev/null +++ b/htdocs/langs/az_AZ/mailmanspip.lang @@ -0,0 +1,27 @@ +# Dolibarr language file - Source file is en_US - mailmanspip +MailmanSpipSetup=Mailman and SPIP module Setup +MailmanTitle=Mailman mailing list system +TestSubscribe=To test subscription to Mailman lists +TestUnSubscribe=To test unsubscribe from Mailman lists +MailmanCreationSuccess=Subscription test was executed successfully +MailmanDeletionSuccess=Unsubscription test was executed successfully +SynchroMailManEnabled=A Mailman update will be performed +SynchroSpipEnabled=A Spip update will be performed +DescADHERENT_MAILMAN_ADMINPW=Mailman administrator password +DescADHERENT_MAILMAN_URL=URL for Mailman subscriptions +DescADHERENT_MAILMAN_UNSUB_URL=URL for Mailman unsubscriptions +DescADHERENT_MAILMAN_LISTS=List(s) for automatic inscription of new members (separated by a comma) +SPIPTitle=SPIP Content Management System +DescADHERENT_SPIP_SERVEUR=SPIP Server +DescADHERENT_SPIP_DB=SPIP database name +DescADHERENT_SPIP_USER=SPIP database login +DescADHERENT_SPIP_PASS=SPIP database password +AddIntoSpip=Add into SPIP +AddIntoSpipConfirmation=Are you sure you want to add this member into SPIP? +AddIntoSpipError=Failed to add the user in SPIP +DeleteIntoSpip=Remove from SPIP +DeleteIntoSpipConfirmation=Are you sure you want to remove this member from SPIP? +DeleteIntoSpipError=Failed to suppress the user from SPIP +SPIPConnectionFailed=Failed to connect to SPIP +SuccessToAddToMailmanList=%s successfully added to mailman list %s or SPIP database +SuccessToRemoveToMailmanList=%s successfully removed from mailman list %s or SPIP database diff --git a/htdocs/langs/az_AZ/mails.lang b/htdocs/langs/az_AZ/mails.lang new file mode 100644 index 00000000000..7b3bfd3852a --- /dev/null +++ b/htdocs/langs/az_AZ/mails.lang @@ -0,0 +1,170 @@ +# Dolibarr language file - Source file is en_US - mails +Mailing=EMailing +EMailing=EMailing +EMailings=EMailings +AllEMailings=All eMailings +MailCard=EMailing card +MailRecipients=Recipients +MailRecipient=Recipient +MailTitle=Description +MailFrom=Sender +MailErrorsTo=Errors to +MailReply=Reply to +MailTo=Receiver(s) +MailToUsers=To user(s) +MailCC=Copy to +MailToCCUsers=Copy to users(s) +MailCCC=Cached copy to +MailTopic=Email topic +MailText=Message +MailFile=Attached files +MailMessage=Email body +SubjectNotIn=Not in Subject +BodyNotIn=Not in Body +ShowEMailing=Show emailing +ListOfEMailings=List of emailings +NewMailing=New emailing +EditMailing=Edit emailing +ResetMailing=Resend emailing +DeleteMailing=Delete emailing +DeleteAMailing=Delete an emailing +PreviewMailing=Preview emailing +CreateMailing=Create emailing +TestMailing=Test email +ValidMailing=Valid emailing +MailingStatusDraft=Draft +MailingStatusValidated=Validated +MailingStatusSent=Sent +MailingStatusSentPartialy=Sent partially +MailingStatusSentCompletely=Sent completely +MailingStatusError=Error +MailingStatusNotSent=Not sent +MailSuccessfulySent=Email (from %s to %s) successfully accepted for delivery +MailingSuccessfullyValidated=EMailing successfully validated +MailUnsubcribe=Unsubscribe +MailingStatusNotContact=Don't contact anymore +MailingStatusReadAndUnsubscribe=Read and unsubscribe +ErrorMailRecipientIsEmpty=Email recipient is empty +WarningNoEMailsAdded=No new Email to add to recipient's list. +ConfirmValidMailing=Are you sure you want to validate this emailing? +ConfirmResetMailing=Warning, by re-initializing emailing %s, you will allow the re-sending this email in a bulk mailing. Are you sure you want to do this? +ConfirmDeleteMailing=Are you sure you want to delete this emailing? +NbOfUniqueEMails=No. of unique emails +NbOfEMails=No. of EMails +TotalNbOfDistinctRecipients=Number of distinct recipients +NoTargetYet=No recipients defined yet (Go on tab 'Recipients') +NoRecipientEmail=No recipient email for %s +RemoveRecipient=Remove recipient +YouCanAddYourOwnPredefindedListHere=To create your email selector module, see htdocs/core/modules/mailings/README. +EMailTestSubstitutionReplacedByGenericValues=When using test mode, substitutions variables are replaced by generic values +MailingAddFile=Attach this file +NoAttachedFiles=No attached files +BadEMail=Bad value for Email +ConfirmCloneEMailing=Are you sure you want to clone this emailing? +CloneContent=Clone message +CloneReceivers=Cloner recipients +DateLastSend=Date of latest sending +DateSending=Date sending +SentTo=Sent to %s +MailingStatusRead=Read +YourMailUnsubcribeOK=The email %s is correctly unsubscribe from mailing list +ActivateCheckReadKey=Key used to encrypt URL used for "Read Receipt" and "Unsubscribe" feature +EMailSentToNRecipients=Email sent to %s recipients. +EMailSentForNElements=Email sent for %s elements. +XTargetsAdded=%s recipients added into target list +OnlyPDFattachmentSupported=If the PDF documents were already generated for the objects to send, they will be attached to email. If not, no email will be sent (also, note that only pdf documents are supported as attachments in mass sending in this version). +AllRecipientSelected=The recipients of the %s record selected (if their email is known). +GroupEmails=Group emails +OneEmailPerRecipient=One email per recipient (by default, one email per record selected) +WarningIfYouCheckOneRecipientPerEmail=Warning, if you check this box, it means only one email will be sent for several different record selected, so, if your message contains substitution variables that refers to data of a record, it becomes not possible to replace them. +ResultOfMailSending=Result of mass Email sending +NbSelected=Number selected +NbIgnored=Number ignored +NbSent=Number sent +SentXXXmessages=%s message(s) sent. +ConfirmUnvalidateEmailing=Are you sure you want to change email %s to draft status? +MailingModuleDescContactsWithThirdpartyFilter=Contact with customer filters +MailingModuleDescContactsByCompanyCategory=Contacts by third-party category +MailingModuleDescContactsByCategory=Contacts by categories +MailingModuleDescContactsByFunction=Contacts by position +MailingModuleDescEmailsFromFile=Emails from file +MailingModuleDescEmailsFromUser=Emails input by user +MailingModuleDescDolibarrUsers=Users with Emails +MailingModuleDescThirdPartiesByCategories=Third parties (by categories) +SendingFromWebInterfaceIsNotAllowed=Sending from web interface is not allowed. + +# Libelle des modules de liste de destinataires mailing +LineInFile=Line %s in file +RecipientSelectionModules=Defined requests for recipient's selection +MailSelectedRecipients=Selected recipients +MailingArea=EMailings area +LastMailings=Latest %s emailings +TargetsStatistics=Targets statistics +NbOfCompaniesContacts=Unique contacts/addresses +MailNoChangePossible=Recipients for validated emailing can't be changed +SearchAMailing=Search mailing +SendMailing=Send emailing +SentBy=Sent by +MailingNeedCommand=Sending an emailing can be performed from command line. Ask your server administrator to launch the following command to send the emailing to all recipients: +MailingNeedCommand2=You can however send them online by adding parameter MAILING_LIMIT_SENDBYWEB with value of max number of emails you want to send by session. For this, go on Home - Setup - Other. +ConfirmSendingEmailing=If you want to send emailing directly from this screen, please confirm you are sure you want to send emailing now from your browser ? +LimitSendingEmailing=Note: Sending of emailings from web interface is done in several times for security and timeout reasons, %s recipients at a time for each sending session. +TargetsReset=Clear list +ToClearAllRecipientsClickHere=Click here to clear the recipient list for this emailing +ToAddRecipientsChooseHere=Add recipients by choosing from the lists +NbOfEMailingsReceived=Mass emailings received +NbOfEMailingsSend=Mass emailings sent +IdRecord=ID record +DeliveryReceipt=Delivery Ack. +YouCanUseCommaSeparatorForSeveralRecipients=You can use the comma separator to specify several recipients. +TagCheckMail=Track mail opening +TagUnsubscribe=Unsubscribe link +TagSignature=Signature of sending user +EMailRecipient=Recipient Email +TagMailtoEmail=Recipient Email (including html "mailto:" link) +NoEmailSentBadSenderOrRecipientEmail=No email sent. Bad sender or recipient email. Verify user profile. +# Module Notifications +Notifications=Notifications +NoNotificationsWillBeSent=No email notifications are planned for this event and company +ANotificationsWillBeSent=1 notification will be sent by email +SomeNotificationsWillBeSent=%s notifications will be sent by email +AddNewNotification=Activate a new email notification target/event +ListOfActiveNotifications=List all active targets/events for email notification +ListOfNotificationsDone=List all email notifications sent +MailSendSetupIs=Configuration of email sending has been setup to '%s'. This mode can't be used to send mass emailing. +MailSendSetupIs2=You must first go, with an admin account, into menu %sHome - Setup - EMails%s to change parameter '%s' to use mode '%s'. With this mode, you can enter setup of the SMTP server provided by your Internet Service Provider and use Mass emailing feature. +MailSendSetupIs3=If you have any questions on how to setup your SMTP server, you can ask to %s. +YouCanAlsoUseSupervisorKeyword=You can also add the keyword __SUPERVISOREMAIL__ to have email being sent to the supervisor of user (works only if an email is defined for this supervisor) +NbOfTargetedContacts=Current number of targeted contact emails +UseFormatFileEmailToTarget=Imported file must have format email;name;firstname;other +UseFormatInputEmailToTarget=Enter a string with format email;name;firstname;other +MailAdvTargetRecipients=Recipients (advanced selection) +AdvTgtTitle=Fill input fields to preselect the third parties or contacts/addresses to target +AdvTgtSearchTextHelp=Use %% as wildcards. For example to find all item like jean, joe, jim, you can input j%%, you can also use ; as separator for value, and use ! for except this value. For example jean;joe;jim%%;!jimo;!jima% will target all jean, joe, start with jim but not jimo and not everything that starts with jima +AdvTgtSearchIntHelp=Use interval to select int or float value +AdvTgtMinVal=Minimum value +AdvTgtMaxVal=Maximum value +AdvTgtSearchDtHelp=Use interval to select date value +AdvTgtStartDt=Start dt. +AdvTgtEndDt=End dt. +AdvTgtTypeOfIncudeHelp=Target Email of third party and email of contact of the third party, or just third-party email or just contact email +AdvTgtTypeOfIncude=Type of targeted email +AdvTgtContactHelp=Use only if you target contact into "Type of targeted email" +AddAll=Add all +RemoveAll=Remove all +ItemsCount=Item(s) +AdvTgtNameTemplate=Filter name +AdvTgtAddContact=Add emails according to criteria +AdvTgtLoadFilter=Load filter +AdvTgtDeleteFilter=Delete filter +AdvTgtSaveFilter=Save filter +AdvTgtCreateFilter=Create filter +AdvTgtOrCreateNewFilter=Name of new filter +NoContactWithCategoryFound=No contact/address with a category found +NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found +OutGoingEmailSetup=Outgoing email setup +InGoingEmailSetup=Incoming email setup +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) +DefaultOutgoingEmailSetup=Default outgoing email setup +Information=Information +ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/az_AZ/main.lang b/htdocs/langs/az_AZ/main.lang new file mode 100644 index 00000000000..824a5e495b8 --- /dev/null +++ b/htdocs/langs/az_AZ/main.lang @@ -0,0 +1,1035 @@ +# Dolibarr language file - Source file is en_US - main +DIRECTION=ltr +# Note for Chinese: +# msungstdlight or cid0ct are for traditional Chinese (traditional does not render with Ubuntu pdf reader) +# stsongstdlight or cid0cs are for simplified Chinese +# To read Chinese pdf with Linux: sudo apt-get install poppler-data +FONTFORPDF=helvetica +FONTSIZEFORPDF=10 +SeparatorDecimal=. +SeparatorThousand=, +FormatDateShort=%m/%d/%Y +FormatDateShortInput=%m/%d/%Y +FormatDateShortJava=MM/dd/yyyy +FormatDateShortJavaInput=MM/dd/yyyy +FormatDateShortJQuery=mm/dd/yy +FormatDateShortJQueryInput=mm/dd/yy +FormatHourShortJQuery=HH:MI +FormatHourShort=%I:%M %p +FormatHourShortDuration=%H:%M +FormatDateTextShort=%b %d, %Y +FormatDateText=%B %d, %Y +FormatDateHourShort=%m/%d/%Y %I:%M %p +FormatDateHourSecShort=%m/%d/%Y %I:%M:%S %p +FormatDateHourTextShort=%b %d, %Y, %I:%M %p +FormatDateHourText=%B %d, %Y, %I:%M %p +DatabaseConnection=Database connection +NoTemplateDefined=No template available for this email type +AvailableVariables=Available substitution variables +NoTranslation=No translation +Translation=Translation +EmptySearchString=Enter a non empty search string +NoRecordFound=No record found +NoRecordDeleted=No record deleted +NotEnoughDataYet=Not enough data +NoError=No error +Error=Error +Errors=Errors +ErrorFieldRequired=Field '%s' is required +ErrorFieldFormat=Field '%s' has a bad value +ErrorFileDoesNotExists=File %s does not exist +ErrorFailedToOpenFile=Failed to open file %s +ErrorCanNotCreateDir=Cannot create dir %s +ErrorCanNotReadDir=Cannot read dir %s +ErrorConstantNotDefined=Parameter %s not defined +ErrorUnknown=Unknown error +ErrorSQL=SQL Error +ErrorLogoFileNotFound=Logo file '%s' was not found +ErrorGoToGlobalSetup=Go to 'Company/Organization' setup to fix this +ErrorGoToModuleSetup=Go to Module setup to fix this +ErrorFailedToSendMail=Failed to send mail (sender=%s, receiver=%s) +ErrorFileNotUploaded=File was not uploaded. Check that size does not exceed maximum allowed, that free space is available on disk and that there is not already a file with same name in this directory. +ErrorInternalErrorDetected=Error detected +ErrorWrongHostParameter=Wrong host parameter +ErrorYourCountryIsNotDefined=Your country is not defined. Go to Home-Setup-Edit and post the form again. +ErrorRecordIsUsedByChild=Failed to delete this record. This record is used by at least one child record. +ErrorWrongValue=Wrong value +ErrorWrongValueForParameterX=Wrong value for parameter %s +ErrorNoRequestInError=No request in error +ErrorServiceUnavailableTryLater=Service not available at the moment. Try again later. +ErrorDuplicateField=Duplicate value in a unique field +ErrorSomeErrorWereFoundRollbackIsDone=Some errors were found. Changes have been rolled back. +ErrorConfigParameterNotDefined=Parameter %s is not defined in the Dolibarr config file conf.php. +ErrorCantLoadUserFromDolibarrDatabase=Failed to find user %s in Dolibarr database. +ErrorNoVATRateDefinedForSellerCountry=Error, no vat rates defined for country '%s'. +ErrorNoSocialContributionForSellerCountry=Error, no social/fiscal taxes type defined for country '%s'. +ErrorFailedToSaveFile=Error, failed to save file. +ErrorCannotAddThisParentWarehouse=You are trying to add a parent warehouse which is already a child of a existing warehouse +MaxNbOfRecordPerPage=Max. number of records per page +NotAuthorized=You are not authorized to do that. +SetDate=Set date +SelectDate=Select a date +SeeAlso=See also %s +SeeHere=See here +ClickHere=Click here +Here=Here +Apply=Apply +BackgroundColorByDefault=Default background color +FileRenamed=The file was successfully renamed +FileGenerated=The file was successfully generated +FileSaved=The file was successfully saved +FileUploaded=The file was successfully uploaded +FileTransferComplete=File(s) uploaded successfully +FilesDeleted=File(s) successfully deleted +FileWasNotUploaded=A file is selected for attachment but was not yet uploaded. Click on "Attach file" for this. +NbOfEntries=No. of entries +GoToWikiHelpPage=Read online help (Internet access needed) +GoToHelpPage=Read help +RecordSaved=Record saved +RecordDeleted=Record deleted +RecordGenerated=Record generated +LevelOfFeature=Level of features +NotDefined=Not defined +DolibarrInHttpAuthenticationSoPasswordUseless=Dolibarr authentication mode is set to %s in configuration file conf.php.
    This means that the password database is external to Dolibarr, so changing this field may have no effect. +Administrator=Administrator +Undefined=Undefined +PasswordForgotten=Password forgotten? +NoAccount=No account? +SeeAbove=See above +HomeArea=Home +LastConnexion=Last login +PreviousConnexion=Previous login +PreviousValue=Previous value +ConnectedOnMultiCompany=Connected on environment +ConnectedSince=Connected since +AuthenticationMode=Authentication mode +RequestedUrl=Requested URL +DatabaseTypeManager=Database type manager +RequestLastAccessInError=Latest database access request error +ReturnCodeLastAccessInError=Return code for latest database access request error +InformationLastAccessInError=Information for latest database access request error +DolibarrHasDetectedError=Dolibarr has detected a technical error +YouCanSetOptionDolibarrMainProdToZero=You can read log file or set option $dolibarr_main_prod to '0' in your config file to get more information. +InformationToHelpDiagnose=This information can be useful for diagnostic purposes (you can set option $dolibarr_main_prod to '1' to remove such notices) +MoreInformation=More information +TechnicalInformation=Technical information +TechnicalID=Technical ID +LineID=Line ID +NotePublic=Note (public) +NotePrivate=Note (private) +PrecisionUnitIsLimitedToXDecimals=Dolibarr was setup to limit precision of unit prices to %s decimals. +DoTest=Test +ToFilter=Filter +NoFilter=No filter +WarningYouHaveAtLeastOneTaskLate=Warning, you have at least one element that has exceeded the tolerance time. +yes=yes +Yes=Yes +no=no +No=No +All=All +Home=Home +Help=Help +OnlineHelp=Online help +PageWiki=Wiki page +MediaBrowser=Media browser +Always=Always +Never=Never +Under=under +Period=Period +PeriodEndDate=End date for period +SelectedPeriod=Selected period +PreviousPeriod=Previous period +Activate=Activate +Activated=Activated +Closed=Closed +Closed2=Closed +NotClosed=Not closed +Enabled=Enabled +Enable=Enable +Deprecated=Deprecated +Disable=Disable +Disabled=Disabled +Add=Add +AddLink=Add link +RemoveLink=Remove link +AddToDraft=Add to draft +Update=Update +Close=Close +CloseBox=Remove widget from your dashboard +Confirm=Confirm +ConfirmSendCardByMail=Do you really want to send the content of this card by mail to %s? +Delete=Delete +Remove=Remove +Resiliate=Terminate +Cancel=Cancel +Modify=Modify +Edit=Edit +Validate=Validate +ValidateAndApprove=Validate and Approve +ToValidate=To validate +NotValidated=Not validated +Save=Save +SaveAs=Save As +SaveAndStay=Save and stay +SaveAndNew=Save and new +TestConnection=Test connection +ToClone=Clone +ConfirmCloneAsk=Are you sure you want to clone the object %s? +ConfirmClone=Choose data you want to clone: +NoCloneOptionsSpecified=No data to clone defined. +Of=of +Go=Go +Run=Run +CopyOf=Copy of +Show=Show +Hide=Hide +ShowCardHere=Show card +Search=Search +SearchOf=Search +SearchMenuShortCut=Ctrl + shift + f +Valid=Valid +Approve=Approve +Disapprove=Disapprove +ReOpen=Re-Open +Upload=Upload +ToLink=Link +Select=Select +Choose=Choose +Resize=Resize +ResizeOrCrop=Resize or Crop +Recenter=Recenter +Author=Author +User=User +Users=Users +Group=Group +Groups=Groups +NoUserGroupDefined=No user group defined +Password=Password +PasswordRetype=Retype your password +NoteSomeFeaturesAreDisabled=Note that a lot of features/modules are disabled in this demonstration. +Name=Name +NameSlashCompany=Name / Company +Person=Person +Parameter=Parameter +Parameters=Parameters +Value=Value +PersonalValue=Personal value +NewObject=New %s +NewValue=New value +CurrentValue=Current value +Code=Code +Type=Type +Language=Language +MultiLanguage=Multi-language +Note=Note +Title=Title +Label=Label +RefOrLabel=Ref. or label +Info=Log +Family=Family +Description=Description +Designation=Description +DescriptionOfLine=Description of line +DateOfLine=Date of line +DurationOfLine=Duration of line +Model=Doc template +DefaultModel=Default doc template +Action=Event +About=About +Number=Number +NumberByMonth=Number by month +AmountByMonth=Amount by month +Numero=Number +Limit=Limit +Limits=Limits +Logout=Logout +NoLogoutProcessWithAuthMode=No applicative disconnect feature with authentication mode %s +Connection=Login +Setup=Setup +Alert=Alert +MenuWarnings=Alerts +Previous=Previous +Next=Next +Cards=Cards +Card=Card +Now=Now +HourStart=Start hour +Date=Date +DateAndHour=Date and hour +DateToday=Today's date +DateReference=Reference date +DateStart=Start date +DateEnd=End date +DateCreation=Creation date +DateCreationShort=Creat. date +DateModification=Modification date +DateModificationShort=Modif. date +DateLastModification=Latest modification date +DateValidation=Validation date +DateClosing=Closing date +DateDue=Due date +DateValue=Value date +DateValueShort=Value date +DateOperation=Operation date +DateOperationShort=Oper. Date +DateLimit=Limit date +DateRequest=Request date +DateProcess=Process date +DateBuild=Report build date +DatePayment=Date of payment +DateApprove=Approving date +DateApprove2=Approving date (second approval) +RegistrationDate=Registration date +UserCreation=Creation user +UserModification=Modification user +UserValidation=Validation user +UserCreationShort=Creat. user +UserModificationShort=Modif. user +UserValidationShort=Valid. user +DurationYear=year +DurationMonth=month +DurationWeek=week +DurationDay=day +DurationYears=years +DurationMonths=months +DurationWeeks=weeks +DurationDays=days +Year=Year +Month=Month +Week=Week +WeekShort=Week +Day=Day +Hour=Hour +Minute=Minute +Second=Second +Years=Years +Months=Months +Days=Days +days=days +Hours=Hours +Minutes=Minutes +Seconds=Seconds +Weeks=Weeks +Today=Today +Yesterday=Yesterday +Tomorrow=Tomorrow +Morning=Morning +Afternoon=Afternoon +Quadri=Quadri +MonthOfDay=Month of the day +HourShort=H +MinuteShort=mn +Rate=Rate +CurrencyRate=Currency conversion rate +UseLocalTax=Include tax +Bytes=Bytes +KiloBytes=Kilobytes +MegaBytes=Megabytes +GigaBytes=Gigabytes +TeraBytes=Terabytes +UserAuthor=User of creation +UserModif=User of last update +b=b. +Kb=Kb +Mb=Mb +Gb=Gb +Tb=Tb +Cut=Cut +Copy=Copy +Paste=Paste +Default=Default +DefaultValue=Default value +DefaultValues=Default values/filters/sorting +Price=Price +PriceCurrency=Price (currency) +UnitPrice=Unit price +UnitPriceHT=Unit price (excl.) +UnitPriceHTCurrency=Unit price (excl.) (currency) +UnitPriceTTC=Unit price +PriceU=U.P. +PriceUHT=U.P. (net) +PriceUHTCurrency=U.P (currency) +PriceUTTC=U.P. (inc. tax) +Amount=Amount +AmountInvoice=Invoice amount +AmountInvoiced=Amount invoiced +AmountInvoicedHT=Amount invoiced (incl. tax) +AmountInvoicedTTC=Amount invoiced (excl. tax) +AmountPayment=Payment amount +AmountHTShort=Amount (excl.) +AmountTTCShort=Amount (inc. tax) +AmountHT=Amount (excl. tax) +AmountTTC=Amount (inc. tax) +AmountVAT=Amount tax +MulticurrencyAlreadyPaid=Already paid, original currency +MulticurrencyRemainderToPay=Remain to pay, original currency +MulticurrencyPaymentAmount=Payment amount, original currency +MulticurrencyAmountHT=Amount (excl. tax), original currency +MulticurrencyAmountTTC=Amount (inc. of tax), original currency +MulticurrencyAmountVAT=Amount tax, original currency +AmountLT1=Amount tax 2 +AmountLT2=Amount tax 3 +AmountLT1ES=Amount RE +AmountLT2ES=Amount IRPF +AmountTotal=Total amount +AmountAverage=Average amount +PriceQtyMinHT=Price quantity min. (excl. tax) +PriceQtyMinHTCurrency=Price quantity min. (excl. tax) (currency) +Percentage=Percentage +Total=Total +SubTotal=Subtotal +TotalHTShort=Total (excl.) +TotalHT100Short=Total 100%% (excl.) +TotalHTShortCurrency=Total (excl. in currency) +TotalTTCShort=Total (inc. tax) +TotalHT=Total (excl. tax) +TotalHTforthispage=Total (excl. tax) for this page +Totalforthispage=Total for this page +TotalTTC=Total (inc. tax) +TotalTTCToYourCredit=Total (inc. tax) to your credit +TotalVAT=Total tax +TotalVATIN=Total IGST +TotalLT1=Total tax 2 +TotalLT2=Total tax 3 +TotalLT1ES=Total RE +TotalLT2ES=Total IRPF +TotalLT1IN=Total CGST +TotalLT2IN=Total SGST +HT=Excl. tax +TTC=Inc. tax +INCVATONLY=Inc. VAT +INCT=Inc. all taxes +VAT=Sales tax +VATIN=IGST +VATs=Sales taxes +VATINs=IGST taxes +LT1=Sales tax 2 +LT1Type=Sales tax 2 type +LT2=Sales tax 3 +LT2Type=Sales tax 3 type +LT1ES=RE +LT2ES=IRPF +LT1IN=CGST +LT2IN=SGST +LT1GC=Additionnal cents +VATRate=Tax Rate +VATCode=Tax Rate code +VATNPR=Tax Rate NPR +DefaultTaxRate=Default tax rate +Average=Average +Sum=Sum +Delta=Delta +StatusToPay=To pay +RemainToPay=Remain to pay +Module=Module/Application +Modules=Modules/Applications +Option=Option +List=List +FullList=Full list +FullConversation=Full conversation +Statistics=Statistics +OtherStatistics=Other statistics +Status=Status +Favorite=Favorite +ShortInfo=Info. +Ref=Ref. +ExternalRef=Ref. extern +RefSupplier=Ref. vendor +RefPayment=Ref. payment +CommercialProposalsShort=Commercial proposals +Comment=Comment +Comments=Comments +ActionsToDo=Events to do +ActionsToDoShort=To do +ActionsDoneShort=Done +ActionNotApplicable=Not applicable +ActionRunningNotStarted=To start +ActionRunningShort=In progress +ActionDoneShort=Finished +ActionUncomplete=Incomplete +LatestLinkedEvents=Latest %s linked events +CompanyFoundation=Company/Organization +Accountant=Accountant +ContactsForCompany=Contacts for this third party +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 +ToDo=To do +Completed=Completed +Running=In progress +RequestAlreadyDone=Request already recorded +Filter=Filter +FilterOnInto=Search criteria '%s' into fields %s +RemoveFilter=Remove filter +ChartGenerated=Chart generated +ChartNotGenerated=Chart not generated +GeneratedOn=Build on %s +Generate=Generate +Duration=Duration +TotalDuration=Total duration +Summary=Summary +DolibarrStateBoard=Database Statistics +DolibarrWorkBoard=Open Items +NoOpenedElementToProcess=No open element to process +Available=Available +NotYetAvailable=Not yet available +NotAvailable=Not available +Categories=Tags/categories +Category=Tag/category +By=By +From=From +FromLocation=From +to=to +To=to +and=and +or=or +Other=Other +Others=Others +OtherInformations=Other information +Quantity=Quantity +Qty=Qty +ChangedBy=Changed by +ApprovedBy=Approved by +ApprovedBy2=Approved by (second approval) +Approved=Approved +Refused=Refused +ReCalculate=Recalculate +ResultKo=Failure +Reporting=Reporting +Reportings=Reporting +Draft=Draft +Drafts=Drafts +StatusInterInvoiced=Invoiced +Validated=Validated +Opened=Open +OpenAll=Open (All) +ClosedAll=Closed (All) +New=New +Discount=Discount +Unknown=Unknown +General=General +Size=Size +OriginalSize=Original size +Received=Received +Paid=Paid +Topic=Subject +ByCompanies=By third parties +ByUsers=By user +Links=Links +Link=Link +Rejects=Rejects +Preview=Preview +NextStep=Next step +Datas=Data +None=None +NoneF=None +NoneOrSeveral=None or several +Late=Late +LateDesc=An item is defined as Delayed as per the system configuration in menu Home - Setup - Alerts. +NoItemLate=No late item +Photo=Picture +Photos=Pictures +AddPhoto=Add picture +DeletePicture=Picture delete +ConfirmDeletePicture=Confirm picture deletion? +Login=Login +LoginEmail=Login (email) +LoginOrEmail=Login or Email +CurrentLogin=Current login +EnterLoginDetail=Enter login details +January=January +February=February +March=March +April=April +May=May +June=June +July=July +August=August +September=September +October=October +November=November +December=December +Month01=January +Month02=February +Month03=March +Month04=April +Month05=May +Month06=June +Month07=July +Month08=August +Month09=September +Month10=October +Month11=November +Month12=December +MonthShort01=Jan +MonthShort02=Feb +MonthShort03=Mar +MonthShort04=Apr +MonthShort05=May +MonthShort06=Jun +MonthShort07=Jul +MonthShort08=Aug +MonthShort09=Sep +MonthShort10=Oct +MonthShort11=Nov +MonthShort12=Dec +MonthVeryShort01=J +MonthVeryShort02=F +MonthVeryShort03=M +MonthVeryShort04=A +MonthVeryShort05=M +MonthVeryShort06=J +MonthVeryShort07=J +MonthVeryShort08=A +MonthVeryShort09=S +MonthVeryShort10=O +MonthVeryShort11=N +MonthVeryShort12=D +AttachedFiles=Attached files and documents +JoinMainDoc=Join main document +DateFormatYYYYMM=YYYY-MM +DateFormatYYYYMMDD=YYYY-MM-DD +DateFormatYYYYMMDDHHMM=YYYY-MM-DD HH:SS +ReportName=Report name +ReportPeriod=Report period +ReportDescription=Description +Report=Report +Keyword=Keyword +Origin=Origin +Legend=Legend +Fill=Fill +Reset=Reset +File=File +Files=Files +NotAllowed=Not allowed +ReadPermissionNotAllowed=Read permission not allowed +AmountInCurrency=Amount in %s currency +Example=Example +Examples=Examples +NoExample=No example +FindBug=Report a bug +NbOfThirdParties=Number of third parties +NbOfLines=Number of lines +NbOfObjects=Number of objects +NbOfObjectReferers=Number of related items +Referers=Related items +TotalQuantity=Total quantity +DateFromTo=From %s to %s +DateFrom=From %s +DateUntil=Until %s +Check=Check +Uncheck=Uncheck +Internal=Internal +External=External +Internals=Internal +Externals=External +Warning=Warning +Warnings=Warnings +BuildDoc=Build Doc +Entity=Environment +Entities=Entities +CustomerPreview=Customer preview +SupplierPreview=Vendor preview +ShowCustomerPreview=Show customer preview +ShowSupplierPreview=Show vendor preview +RefCustomer=Ref. customer +Currency=Currency +InfoAdmin=Information for administrators +Undo=Undo +Redo=Redo +ExpandAll=Expand all +UndoExpandAll=Undo expand +SeeAll=See all +Reason=Reason +FeatureNotYetSupported=Feature not yet supported +CloseWindow=Close window +Response=Response +Priority=Priority +SendByMail=Send by email +MailSentBy=Email sent by +TextUsedInTheMessageBody=Email body +SendAcknowledgementByMail=Send confirmation email +SendMail=Send email +Email=Email +NoEMail=No email +AlreadyRead=Already read +NotRead=Not read +NoMobilePhone=No mobile phone +Owner=Owner +FollowingConstantsWillBeSubstituted=The following constants will be replaced with the corresponding value. +Refresh=Refresh +BackToList=Back to list +GoBack=Go back +CanBeModifiedIfOk=Can be modified if valid +CanBeModifiedIfKo=Can be modified if not valid +ValueIsValid=Value is valid +ValueIsNotValid=Value is not valid +RecordCreatedSuccessfully=Record created successfully +RecordModifiedSuccessfully=Record modified successfully +RecordsModified=%s record(s) modified +RecordsDeleted=%s record(s) deleted +RecordsGenerated=%s record(s) generated +AutomaticCode=Automatic code +FeatureDisabled=Feature disabled +MoveBox=Move widget +Offered=Offered +NotEnoughPermissions=You don't have permission for this action +SessionName=Session name +Method=Method +Receive=Receive +CompleteOrNoMoreReceptionExpected=Complete or nothing more expected +ExpectedValue=Expected Value +PartialWoman=Partial +TotalWoman=Total +NeverReceived=Never received +Canceled=Canceled +YouCanChangeValuesForThisListFromDictionarySetup=You can change values for this list from menu Setup - Dictionaries +YouCanChangeValuesForThisListFrom=You can change values for this list from menu %s +YouCanSetDefaultValueInModuleSetup=You can set the default value used when creating a new record in module setup +Color=Color +Documents=Linked files +Documents2=Documents +UploadDisabled=Upload disabled +MenuAccountancy=Accounting +MenuECM=Documents +MenuAWStats=AWStats +MenuMembers=Members +MenuAgendaGoogle=Google agenda +ThisLimitIsDefinedInSetup=Dolibarr limit (Menu home-setup-security): %s Kb, PHP limit: %s Kb +NoFileFound=No documents saved in this directory +CurrentUserLanguage=Current language +CurrentTheme=Current theme +CurrentMenuManager=Current menu manager +Browser=Browser +Layout=Layout +Screen=Screen +DisabledModules=Disabled modules +For=For +ForCustomer=For customer +Signature=Signature +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 +AddNewLine=Add new line +AddFile=Add file +FreeZone=Not a predefined product/service +FreeLineOfType=Free-text item, type: +CloneMainAttributes=Clone object with its main attributes +ReGeneratePDF=Re-generate PDF +PDFMerge=PDF Merge +Merge=Merge +DocumentModelStandardPDF=Standard PDF template +PrintContentArea=Show page to print main content area +MenuManager=Menu manager +WarningYouAreInMaintenanceMode=Warning, you are in maintenance mode: only login %s is allowed to use the application in this mode. +CoreErrorTitle=System error +CoreErrorMessage=Sorry, an error occurred. Contact your system administrator to check the logs or disable $dolibarr_main_prod=1 to get more information. +CreditCard=Credit card +ValidatePayment=Validate payment +CreditOrDebitCard=Credit or debit card +FieldsWithAreMandatory=Fields with %s are mandatory +FieldsWithIsForPublic=Fields with %s are shown in public list of members. If you don't want this, uncheck the "public" box. +AccordingToGeoIPDatabase=(according to GeoIP conversion) +Line=Line +NotSupported=Not supported +RequiredField=Required field +Result=Result +ToTest=Test +ValidateBefore=Item must be validated before using this feature +Visibility=Visibility +Totalizable=Totalizable +TotalizableDesc=This field is totalizable in list +Private=Private +Hidden=Hidden +Resources=Resources +Source=Source +Prefix=Prefix +Before=Before +After=After +IPAddress=IP address +Frequency=Frequency +IM=Instant messaging +NewAttribute=New attribute +AttributeCode=Attribute code +URLPhoto=URL of photo/logo +SetLinkToAnotherThirdParty=Link to another third party +LinkTo=Link to +LinkToProposal=Link to proposal +LinkToOrder=Link to order +LinkToInvoice=Link to invoice +LinkToTemplateInvoice=Link to template invoice +LinkToSupplierOrder=Link to purchase order +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 +ClickToRefresh=Click to refresh +EditWithEditor=Edit with CKEditor +EditWithTextEditor=Edit with Text editor +EditHTMLSource=Edit HTML Source +ObjectDeleted=Object %s deleted +ByCountry=By country +ByTown=By town +ByDate=By date +ByMonthYear=By month/year +ByYear=By year +ByMonth=By month +ByDay=By day +BySalesRepresentative=By sales representative +LinkedToSpecificUsers=Linked to a particular user contact +NoResults=No results +AdminTools=Admin Tools +SystemTools=System tools +ModulesSystemTools=Modules tools +Test=Test +Element=Element +NoPhotoYet=No pictures available yet +Dashboard=Dashboard +MyDashboard=My Dashboard +Deductible=Deductible +from=from +toward=toward +Access=Access +SelectAction=Select action +SelectTargetUser=Select target user/employee +HelpCopyToClipboard=Use Ctrl+C to copy to clipboard +SaveUploadedFileWithMask=Save file on server with name "%s" (otherwise "%s") +OriginFileName=Original filename +SetDemandReason=Set source +SetBankAccount=Define Bank Account +AccountCurrency=Account currency +ViewPrivateNote=View notes +XMoreLines=%s line(s) hidden +ShowMoreLines=Show more/less lines +PublicUrl=Public URL +AddBox=Add box +SelectElementAndClick=Select an element and click %s +PrintFile=Print File %s +ShowTransaction=Show entry on bank account +ShowIntervention=Show intervention +ShowContract=Show contract +GoIntoSetupToChangeLogo=Go to Home - Setup - Company to change logo or go to Home - Setup - Display to hide. +Deny=Deny +Denied=Denied +ListOf=List of %s +ListOfTemplates=List of templates +Gender=Gender +Genderman=Man +Genderwoman=Woman +ViewList=List view +ViewGantt=Gantt view +ViewKanban=Kanban view +Mandatory=Mandatory +Hello=Hello +GoodBye=GoodBye +Sincerely=Sincerely +ConfirmDeleteObject=Are you sure you want to delete this object? +DeleteLine=Delete line +ConfirmDeleteLine=Are you sure you want to delete this line? +NoPDFAvailableForDocGenAmongChecked=No PDF were available for the document generation among checked record +TooManyRecordForMassAction=Too many records selected for mass action. The action is restricted to a list of %s records. +NoRecordSelected=No record selected +MassFilesArea=Area for files built by mass actions +ShowTempMassFilesArea=Show area of files built by mass actions +ConfirmMassDeletion=Bulk Delete confirmation +ConfirmMassDeletionQuestion=Are you sure you want to delete the %s selected record(s)? +RelatedObjects=Related Objects +ClassifyBilled=Classify billed +ClassifyUnbilled=Classify unbilled +Progress=Progress +ProgressShort=Progr. +FrontOffice=Front office +BackOffice=Back office +Submit=Submit +View=View +Export=Export +Exports=Exports +ExportFilteredList=Export filtered list +ExportList=Export list +ExportOptions=Export Options +IncludeDocsAlreadyExported=Include docs already exported +ExportOfPiecesAlreadyExportedIsEnable=Export of pieces already exported is enable +ExportOfPiecesAlreadyExportedIsDisable=Export of pieces already exported is disable +AllExportedMovementsWereRecordedAsExported=All exported movements were recorded as exported +NotAllExportedMovementsCouldBeRecordedAsExported=Not all exported movements could be recorded as exported +Miscellaneous=Miscellaneous +Calendar=Calendar +GroupBy=Group by... +ViewFlatList=View flat list +RemoveString=Remove string '%s' +SomeTranslationAreUncomplete=Some of the languages offered may be only partially translated or may contain errors. Please help to correct your language by registering at https://transifex.com/projects/p/dolibarr/ to add your improvements. +DirectDownloadLink=Direct download link (public/external) +DirectDownloadInternalLink=Direct download link (need to be logged and need permissions) +Download=Download +DownloadDocument=Download document +ActualizeCurrency=Update currency rate +Fiscalyear=Fiscal year +ModuleBuilder=Module and Application Builder +SetMultiCurrencyCode=Set currency +BulkActions=Bulk actions +ClickToShowHelp=Click to show tooltip help +WebSite=Website +WebSites=Websites +WebSiteAccounts=Website accounts +ExpenseReport=Expense report +ExpenseReports=Expense reports +HR=HR +HRAndBank=HR and Bank +AutomaticallyCalculated=Automatically calculated +TitleSetToDraft=Go back to draft +ConfirmSetToDraft=Are you sure you want to go back to Draft status? +ImportId=Import id +Events=Events +EMailTemplates=Email templates +FileNotShared=File not shared to external public +Project=Project +Projects=Projects +LeadOrProject=Lead | Project +LeadsOrProjects=Leads | Projects +Lead=Lead +Leads=Leads +ListOpenLeads=List open leads +ListOpenProjects=List open projects +NewLeadOrProject=New lead or project +Rights=Permissions +LineNb=Line no. +IncotermLabel=Incoterms +TabLetteringCustomer=Customer lettering +TabLetteringSupplier=Vendor lettering +Monday=Monday +Tuesday=Tuesday +Wednesday=Wednesday +Thursday=Thursday +Friday=Friday +Saturday=Saturday +Sunday=Sunday +MondayMin=Mo +TuesdayMin=Tu +WednesdayMin=We +ThursdayMin=Th +FridayMin=Fr +SaturdayMin=Sa +SundayMin=Su +Day1=Monday +Day2=Tuesday +Day3=Wednesday +Day4=Thursday +Day5=Friday +Day6=Saturday +Day0=Sunday +ShortMonday=M +ShortTuesday=T +ShortWednesday=W +ShortThursday=T +ShortFriday=F +ShortSaturday=S +ShortSunday=S +SelectMailModel=Select an email template +SetRef=Set ref +Select2ResultFoundUseArrows=Some results found. Use arrows to select. +Select2NotFound=No result found +Select2Enter=Enter +Select2MoreCharacter=or more character +Select2MoreCharacters=or more characters +Select2MoreCharactersMore=Search syntax:
    | OR (a|b)
    * Any character (a*b)
    ^ Start with (^ab)
    $ End with (ab$)
    +Select2LoadingMoreResults=Loading more results... +Select2SearchInProgress=Search in progress... +SearchIntoThirdparties=Third parties +SearchIntoContacts=Contacts +SearchIntoMembers=Members +SearchIntoUsers=Users +SearchIntoProductsOrServices=Products or services +SearchIntoProjects=Projects +SearchIntoMO=Manufacturing Orders +SearchIntoTasks=Tasks +SearchIntoCustomerInvoices=Customer invoices +SearchIntoSupplierInvoices=Vendor invoices +SearchIntoCustomerOrders=Sales orders +SearchIntoSupplierOrders=Purchase orders +SearchIntoCustomerProposals=Commercial proposals +SearchIntoSupplierProposals=Vendor proposals +SearchIntoInterventions=Interventions +SearchIntoContracts=Contracts +SearchIntoCustomerShipments=Customer shipments +SearchIntoExpenseReports=Expense reports +SearchIntoLeaves=Leave +SearchIntoTickets=Tickets +CommentLink=Comments +NbComments=Number of comments +CommentPage=Comments space +CommentAdded=Comment added +CommentDeleted=Comment deleted +Everybody=Everybody +PayedBy=Paid by +PayedTo=Paid to +Monthly=Monthly +Quarterly=Quarterly +Annual=Annual +Local=Local +Remote=Remote +LocalAndRemote=Local and Remote +KeyboardShortcut=Keyboard shortcut +AssignedTo=Assigned to +Deletedraft=Delete draft +ConfirmMassDraftDeletion=Draft mass delete confirmation +FileSharedViaALink=File shared via a link +SelectAThirdPartyFirst=Select a third party first... +YouAreCurrentlyInSandboxMode=You are currently in the %s "sandbox" mode +Inventory=Inventory +AnalyticCode=Analytic code +TMenuMRP=MRP +ShowMoreInfos=Show More Infos +NoFilesUploadedYet=Please upload a document first +SeePrivateNote=See private note +PaymentInformation=Payment information +ValidFrom=Valid from +ValidUntil=Valid until +NoRecordedUsers=No users +ToClose=To close +ToProcess=To process +ToApprove=To approve +GlobalOpenedElemView=Global view +NoArticlesFoundForTheKeyword=No article found for the keyword '%s' +NoArticlesFoundForTheCategory=No article found for the category +ToAcceptRefuse=To accept | refuse +ContactDefault_agenda=Event +ContactDefault_commande=Order +ContactDefault_contrat=Contract +ContactDefault_facture=Invoice +ContactDefault_fichinter=Intervention +ContactDefault_invoice_supplier=Supplier Invoice +ContactDefault_order_supplier=Purchase Order +ContactDefault_project=Project +ContactDefault_project_task=Task +ContactDefault_propal=Proposal +ContactDefault_supplier_proposal=Supplier Proposal +ContactDefault_ticket=Ticket +ContactAddedAutomatically=Contact added from contact thirdparty roles +More=More +ShowDetails=Show details +CustomReports=Custom reports +StatisticsOn=Statistics on +SelectYourGraphOptionsFirst=Select your graph options to build a graph +Measures=Measures +XAxis=X-Axis +YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? +ShowOtherLanguages=Show other languages +SwitchInEditModeToAddTranslation=Switch in edit mode to add translations for this language +NotUsedForThisCustomer=Not used for this customer diff --git a/htdocs/langs/az_AZ/margins.lang b/htdocs/langs/az_AZ/margins.lang new file mode 100644 index 00000000000..76ea8ad5c4d --- /dev/null +++ b/htdocs/langs/az_AZ/margins.lang @@ -0,0 +1,45 @@ +# Dolibarr language file - Source file is en_US - marges + +Margin=Margin +Margins=Margins +TotalMargin=Total Margin +MarginOnProducts=Margin / Products +MarginOnServices=Margin / Services +MarginRate=Margin rate +MarkRate=Mark rate +DisplayMarginRates=Display margin rates +DisplayMarkRates=Display mark rates +InputPrice=Input price +margin=Profit margins management +margesSetup=Profit margins management setup +MarginDetails=Margin details +ProductMargins=Product margins +CustomerMargins=Customer margins +SalesRepresentativeMargins=Sales representative margins +ContactOfInvoice=Contact of invoice +UserMargins=User margins +ProductService=Product or Service +AllProducts=All products and services +ChooseProduct/Service=Choose product or service +ForceBuyingPriceIfNull=Force buying/cost price to selling price if not defined +ForceBuyingPriceIfNullDetails=If buying/cost price not defined, and this option "ON", margin will be zero on line (buying/cost price = selling price), otherwise ("OFF"), marge will be equal to suggested default. +MARGIN_METHODE_FOR_DISCOUNT=Margin method for global discounts +UseDiscountAsProduct=As a product +UseDiscountAsService=As a service +UseDiscountOnTotal=On subtotal +MARGIN_METHODE_FOR_DISCOUNT_DETAILS=Defines if a global discount is treated as a product, a service, or only on subtotal for margin calculation. +MARGIN_TYPE=Buying/Cost price suggested by default for margin calculation +MargeType1=Margin on Best vendor price +MargeType2=Margin on Weighted Average Price (WAP) +MargeType3=Margin on Cost Price +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=Cost price +UnitCharges=Unit charges +Charges=Charges +AgentContactType=Commercial agent contact type +AgentContactTypeDetails=Define what contact type (linked on invoices) will be used for margin report per contact/address. Note that reading statistics on a contact is not reliable since in most cases the contact may not be defined explicitely on the invoices. +rateMustBeNumeric=Rate must be a numeric value +markRateShouldBeLesserThan100=Mark rate should be lower than 100 +ShowMarginInfos=Show margin infos +CheckMargins=Margins detail +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/az_AZ/members.lang b/htdocs/langs/az_AZ/members.lang new file mode 100644 index 00000000000..dd0a5bf49e2 --- /dev/null +++ b/htdocs/langs/az_AZ/members.lang @@ -0,0 +1,204 @@ +# Dolibarr language file - Source file is en_US - members +MembersArea=Members area +MemberCard=Member card +SubscriptionCard=Subscription card +Member=Member +Members=Members +ShowMember=Show member card +UserNotLinkedToMember=User not linked to a member +ThirdpartyNotLinkedToMember=Third party not linked to a member +MembersTickets=Members Tickets +FundationMembers=Foundation members +ListOfValidatedPublicMembers=List of validated public members +ErrorThisMemberIsNotPublic=This member is not public +ErrorMemberIsAlreadyLinkedToThisThirdParty=Another member (name: %s, login: %s) is already linked to a third party %s. Remove this link first because a third party can't be linked to only a member (and vice versa). +ErrorUserPermissionAllowsToLinksToItselfOnly=For security reasons, you must be granted permissions to edit all users to be able to link a member to a user that is not yours. +SetLinkToUser=Link to a Dolibarr user +SetLinkToThirdParty=Link to a Dolibarr third party +MembersCards=Members business cards +MembersList=List of members +MembersListToValid=List of draft members (to be validated) +MembersListValid=List of valid members +MembersListUpToDate=List of valid members with up to date subscription +MembersListNotUpToDate=List of valid members with subscription out of date +MembersListResiliated=List of terminated members +MembersListQualified=List of qualified members +MenuMembersToValidate=Draft members +MenuMembersValidated=Validated members +MenuMembersUpToDate=Up to date members +MenuMembersNotUpToDate=Out of date members +MenuMembersResiliated=Terminated members +MembersWithSubscriptionToReceive=Members with subscription to receive +MembersWithSubscriptionToReceiveShort=Subscription to receive +DateSubscription=Subscription date +DateEndSubscription=Subscription end date +EndSubscription=End subscription +SubscriptionId=Subscription id +MemberId=Member id +NewMember=New member +MemberType=Member type +MemberTypeId=Member type id +MemberTypeLabel=Member type label +MembersTypes=Members types +MemberStatusDraft=Draft (needs to be validated) +MemberStatusDraftShort=Draft +MemberStatusActive=Validated (waiting subscription) +MemberStatusActiveShort=Validated +MemberStatusActiveLate=Subscription expired +MemberStatusActiveLateShort=Expired +MemberStatusPaid=Subscription up to date +MemberStatusPaidShort=Up to date +MemberStatusResiliated=Terminated member +MemberStatusResiliatedShort=Terminated +MembersStatusToValid=Draft members +MembersStatusResiliated=Terminated members +MemberStatusNoSubscription=Validated (no subscription needed) +MemberStatusNoSubscriptionShort=Validated +SubscriptionNotNeeded=No subscription needed +NewCotisation=New contribution +PaymentSubscription=New contribution payment +SubscriptionEndDate=Subscription's end date +MembersTypeSetup=Members type setup +MemberTypeModified=Member type modified +DeleteAMemberType=Delete a member type +ConfirmDeleteMemberType=Are you sure you want to delete this member type? +MemberTypeDeleted=Member type deleted +MemberTypeCanNotBeDeleted=Member type can not be deleted +NewSubscription=New subscription +NewSubscriptionDesc=This form allows you to record your subscription as a new member of the foundation. If you want to renew your subscription (if already a member), please contact foundation board instead by email %s. +Subscription=Subscription +Subscriptions=Subscriptions +SubscriptionLate=Late +SubscriptionNotReceived=Subscription never received +ListOfSubscriptions=List of subscriptions +SendCardByMail=Send card by email +AddMember=Create member +NoTypeDefinedGoToSetup=No member types defined. Go to menu "Members types" +NewMemberType=New member type +WelcomeEMail=Welcome email +SubscriptionRequired=Subscription required +DeleteType=Delete +VoteAllowed=Vote allowed +Physical=Physical +Moral=Moral +MorPhy=Moral/Physical +Reenable=Reenable +ResiliateMember=Terminate a member +ConfirmResiliateMember=Are you sure you want to terminate this member? +DeleteMember=Delete a member +ConfirmDeleteMember=Are you sure you want to delete this member (Deleting a member will delete all his subscriptions)? +DeleteSubscription=Delete a subscription +ConfirmDeleteSubscription=Are you sure you want to delete this subscription? +Filehtpasswd=htpasswd file +ValidateMember=Validate a member +ConfirmValidateMember=Are you sure you want to validate this member? +FollowingLinksArePublic=The following links are open pages not protected by any Dolibarr permission. They are not formatted pages, provided as example to show how to list members database. +PublicMemberList=Public member list +BlankSubscriptionForm=Public self-subscription form +BlankSubscriptionFormDesc=Dolibarr can provide you a public URL/website to allow external visitors to ask to subscribe to the foundation. If an online payment module is enabled, a payment form may also be automatically provided. +EnablePublicSubscriptionForm=Enable the public website with self-subscription form +ForceMemberType=Force the member type +ExportDataset_member_1=Members and subscriptions +ImportDataset_member_1=Members +LastMembersModified=Latest %s modified members +LastSubscriptionsModified=Latest %s modified subscriptions +String=String +Text=Text +Int=Int +DateAndTime=Date and time +PublicMemberCard=Member public card +SubscriptionNotRecorded=Subscription not recorded +AddSubscription=Create subscription +ShowSubscription=Show subscription +# Label of email templates +SendingAnEMailToMember=Sending information email to member +SendingEmailOnAutoSubscription=Sending email on auto registration +SendingEmailOnMemberValidation=Sending email on new member validation +SendingEmailOnNewSubscription=Sending email on new subscription +SendingReminderForExpiredSubscription=Sending reminder for expired subscriptions +SendingEmailOnCancelation=Sending email on cancelation +# Topic of email templates +YourMembershipRequestWasReceived=Your membership was received. +YourMembershipWasValidated=Your membership was validated +YourSubscriptionWasRecorded=Your new subscription was recorded +SubscriptionReminderEmail=Subscription reminder +YourMembershipWasCanceled=Your membership was canceled +CardContent=Content of your member card +# Text of email templates +ThisIsContentOfYourMembershipRequestWasReceived=We want to let you know that your membership request was received.

    +ThisIsContentOfYourMembershipWasValidated=We want to let you know that your membership was validated with the following information:

    +ThisIsContentOfYourSubscriptionWasRecorded=We want to let you know that your new subscription was recorded.

    +ThisIsContentOfSubscriptionReminderEmail=We want to let you know that your subscription is about to expire or has already expired (__MEMBER_LAST_SUBSCRIPTION_DATE_END__). We hope you will renew it.

    +ThisIsContentOfYourCard=This is a summary of the information we have about you. Please contact us if anything is incorrect.

    +DescADHERENT_AUTOREGISTER_NOTIF_MAIL_SUBJECT=Subject of the notification email received in case of auto-inscription of a guest +DescADHERENT_AUTOREGISTER_NOTIF_MAIL=Content of the notification email received in case of auto-inscription of a guest +DescADHERENT_EMAIL_TEMPLATE_AUTOREGISTER=Email template to use to send email to a member on member autosubscription +DescADHERENT_EMAIL_TEMPLATE_MEMBER_VALIDATION=Email template to use to send email to a member on member validation +DescADHERENT_EMAIL_TEMPLATE_SUBSCRIPTION=Email template to use to send email to a member on new subscription recording +DescADHERENT_EMAIL_TEMPLATE_REMIND_EXPIRATION=Email template to use to send email reminder when subscription is about to expire +DescADHERENT_EMAIL_TEMPLATE_CANCELATION=Email template to use to send email to a member on member cancelation +DescADHERENT_MAIL_FROM=Sender Email for automatic emails +DescADHERENT_ETIQUETTE_TYPE=Format of labels page +DescADHERENT_ETIQUETTE_TEXT=Text printed on member address sheets +DescADHERENT_CARD_TYPE=Format of cards page +DescADHERENT_CARD_HEADER_TEXT=Text printed on top of member cards +DescADHERENT_CARD_TEXT=Text printed on member cards (align on left) +DescADHERENT_CARD_TEXT_RIGHT=Text printed on member cards (align on right) +DescADHERENT_CARD_FOOTER_TEXT=Text printed on bottom of member cards +ShowTypeCard=Show type '%s' +HTPasswordExport=htpassword file generation +NoThirdPartyAssociatedToMember=No third party associated to this member +MembersAndSubscriptions= Members and Subscriptions +MoreActions=Complementary action on recording +MoreActionsOnSubscription=Complementary action, suggested by default when recording a subscription +MoreActionBankDirect=Create a direct entry on bank account +MoreActionBankViaInvoice=Create an invoice, and a payment on bank account +MoreActionInvoiceOnly=Create an invoice with no payment +LinkToGeneratedPages=Generate visit cards +LinkToGeneratedPagesDesc=This screen allows you to generate PDF files with business cards for all your members or a particular member. +DocForAllMembersCards=Generate business cards for all members +DocForOneMemberCards=Generate business cards for a particular member +DocForLabels=Generate address sheets +SubscriptionPayment=Subscription payment +LastSubscriptionDate=Date of latest subscription payment +LastSubscriptionAmount=Amount of latest subscription +MembersStatisticsByCountries=Members statistics by country +MembersStatisticsByState=Members statistics by state/province +MembersStatisticsByTown=Members statistics by town +MembersStatisticsByRegion=Members statistics by region +NbOfMembers=Number of members +NoValidatedMemberYet=No validated members found +MembersByCountryDesc=This screen show you statistics on members by countries. Graphic depends however on Google online graph service and is available only if an internet connection is is working. +MembersByStateDesc=This screen show you statistics on members by state/provinces/canton. +MembersByTownDesc=This screen show you statistics on members by town. +MembersStatisticsDesc=Choose statistics you want to read... +MenuMembersStats=Statistics +LastMemberDate=Latest member date +LatestSubscriptionDate=Latest subscription date +MemberNature=Nature of member +Public=Information are public +NewMemberbyWeb=New member added. Awaiting approval +NewMemberForm=New member form +SubscriptionsStatistics=Statistics on subscriptions +NbOfSubscriptions=Number of subscriptions +AmountOfSubscriptions=Amount of subscriptions +TurnoverOrBudget=Turnover (for a company) or Budget (for a foundation) +DefaultAmount=Default amount of subscription +CanEditAmount=Visitor can choose/edit amount of its subscription +MEMBER_NEWFORM_PAYONLINE=Jump on integrated online payment page +ByProperties=By nature +MembersStatisticsByProperties=Members statistics by nature +MembersByNature=This screen show you statistics on members by nature. +MembersByRegion=This screen show you statistics on members by region. +VATToUseForSubscriptions=VAT rate to use for subscriptions +NoVatOnSubscription=No VAT for subscriptions +ADHERENT_PRODUCT_ID_FOR_SUBSCRIPTIONS=Product used for subscription line into invoice: %s +NameOrCompany=Name or company +SubscriptionRecorded=Subscription recorded +NoEmailSentToMember=No email sent to member +EmailSentToMember=Email sent to member at %s +SendReminderForExpiredSubscriptionTitle=Send reminder by email for expired subscription +SendReminderForExpiredSubscription=Send reminder by email to members when subscription is about to expire (parameter is number of days before end of subscription to send the remind. It can be a list of days separated by a semicolon, for example '10;5;0;-5') +MembershipPaid=Membership paid for current period (until %s) +YouMayFindYourInvoiceInThisEmail=You may find your invoice attached to this email +XMembersClosed=%s member(s) closed diff --git a/htdocs/langs/az_AZ/modulebuilder.lang b/htdocs/langs/az_AZ/modulebuilder.lang new file mode 100644 index 00000000000..135ac1ae9ec --- /dev/null +++ b/htdocs/langs/az_AZ/modulebuilder.lang @@ -0,0 +1,141 @@ +# Dolibarr language file - Source file is en_US - loan +ModuleBuilderDesc=This tool must be used only by experienced users or developers. It provides utilities to build or edit your own module. Documentation for alternative manual development is here. +EnterNameOfModuleDesc=Enter name of the module/application to create with no spaces. Use uppercase to separate words (For example: MyModule, EcommerceForShop, SyncWithMySystem...) +EnterNameOfObjectDesc=Enter name of the object to create with no spaces. Use uppercase to separate words (For example: MyObject, Student, Teacher...). The CRUD class file, but also API file, pages to list/add/edit/delete object and SQL files will be generated. +ModuleBuilderDesc2=Path where modules are generated/edited (first directory for external modules defined into %s): %s +ModuleBuilderDesc3=Generated/editable modules found: %s +ModuleBuilderDesc4=A module is detected as 'editable' when the file %s exists in root of module directory +NewModule=New module +NewObjectInModulebuilder=New object +ModuleKey=Module key +ObjectKey=Object key +ModuleInitialized=Module initialized +FilesForObjectInitialized=Files for new object '%s' initialized +FilesForObjectUpdated=Files for object '%s' updated (.sql files and .class.php file) +ModuleBuilderDescdescription=Enter here all general information that describe your module. +ModuleBuilderDescspecifications=You can enter here a detailed description of the specifications of your module that is not already structured into other tabs. So you have within easy reach all the rules to develop. Also this text content will be included into the generated documentation (see last tab). You can use Markdown format, but it is recommended to use Asciidoc format (comparison between .md and .asciidoc: http://asciidoctor.org/docs/user-manual/#compared-to-markdown). +ModuleBuilderDescobjects=Define here the objects you want to manage with your module. A CRUD DAO class, SQL files, page to list record of objects, to create/edit/view a record and an API will be generated. +ModuleBuilderDescmenus=This tab is dedicated to define menu entries provided by your module. +ModuleBuilderDescpermissions=This tab is dedicated to define the new permissions you want to provide with your module. +ModuleBuilderDesctriggers=This is the view of triggers provided by your module. To include code executed when a triggered business event is launched, just edit this file. +ModuleBuilderDeschooks=This tab is dedicated to hooks. +ModuleBuilderDescwidgets=This tab is dedicated to manage/build widgets. +ModuleBuilderDescbuildpackage=You can generate here a "ready to distribute" package file (a normalized .zip file) of your module and a "ready to distribute" documentation file. Just click on button to build the package or documentation file. +EnterNameOfModuleToDeleteDesc=You can delete your module. WARNING: All coding files of module (generated or created manually) AND structured data and documentation will be deleted! +EnterNameOfObjectToDeleteDesc=You can delete an object. WARNING: All coding files (generated or created manually) related to object will be deleted! +DangerZone=Danger zone +BuildPackage=Build package +BuildPackageDesc=You can generate a zip package of your application so your are ready to distribute it on any Dolibarr. You can also distribute it or sell it on marketplace like DoliStore.com. +BuildDocumentation=Build documentation +ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: +ModuleIsLive=This module has been activated. Any change may break a current live feature. +DescriptionLong=Long description +EditorName=Name of editor +EditorUrl=URL of editor +DescriptorFile=Descriptor file of module +ClassFile=File for PHP DAO CRUD class +ApiClassFile=File for PHP API class +PageForList=PHP page for list of record +PageForCreateEditView=PHP page to create/edit/view a record +PageForAgendaTab=PHP page for event tab +PageForDocumentTab=PHP page for document tab +PageForNoteTab=PHP page for note tab +PathToModulePackage=Path to zip of module/application package +PathToModuleDocumentation=Path to file of module/application documentation (%s) +SpaceOrSpecialCharAreNotAllowed=Spaces or special characters are not allowed. +FileNotYetGenerated=File not yet generated +RegenerateClassAndSql=Force update of .class and .sql files +RegenerateMissingFiles=Generate missing files +SpecificationFile=File of documentation +LanguageFile=File for language +ObjectProperties=Object Properties +ConfirmDeleteProperty=Are you sure you want to delete the property %s? This will change code in PHP class but also remove column from table definition of object. +NotNull=Not NULL +NotNullDesc=1=Set database to NOT NULL. -1=Allow null values and force value to NULL if empty ('' or 0). +SearchAll=Used for 'search all' +DatabaseIndex=Database index +FileAlreadyExists=File %s already exists +TriggersFile=File for triggers code +HooksFile=File for hooks code +ArrayOfKeyValues=Array of key-val +ArrayOfKeyValuesDesc=Array of keys and values if field is a combo list with fixed values +WidgetFile=Widget file +CSSFile=CSS file +JSFile=Javascript file +ReadmeFile=Readme file +ChangeLog=ChangeLog file +TestClassFile=File for PHP Unit Test class +SqlFile=Sql file +PageForLib=File for the common PHP library +PageForObjLib=File for the PHP library dedicated to object +SqlFileExtraFields=Sql file for complementary attributes +SqlFileKey=Sql file for keys +SqlFileKeyExtraFields=Sql file for keys of complementary attributes +AnObjectAlreadyExistWithThisNameAndDiffCase=An object already exists with this name and a different case +UseAsciiDocFormat=You can use Markdown format, but it is recommended to use Asciidoc format (omparison between .md and .asciidoc: http://asciidoctor.org/docs/user-manual/#compared-to-markdown) +IsAMeasure=Is a measure +DirScanned=Directory scanned +NoTrigger=No trigger +NoWidget=No widget +GoToApiExplorer=Go to API explorer +ListOfMenusEntries=List of menu entries +ListOfDictionariesEntries=List of dictionaries entries +ListOfPermissionsDefined=List of defined permissions +SeeExamples=See examples here +EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty +DisplayOnPdf=Display on PDF +IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) +SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) +SpecDefDesc=Enter here all documentation you want to provide with your module that is not already defined by other tabs. You can use .md or better, the rich .asciidoc syntax. +LanguageDefDesc=Enter in this files, all the key and the translation for each language file. +MenusDefDesc=Define here the menus provided by your module +DictionariesDefDesc=Define here the dictionaries provided by your module +PermissionsDefDesc=Define here the new permissions provided by your module +MenusDefDescTooltip=The menus provided by your module/application are defined into the array $this->menus into the module descriptor file. You can edit manually this file or use the embedded editor.

    Note: Once defined (and module re-activated), menus are also visible into the menu editor available to administrator users on %s. +DictionariesDefDescTooltip=The dictionaries provided by your module/application are defined into the array $this->dictionaries into the module descriptor file. You can edit manually this file or use the embedded editor.

    Note: Once defined (and module re-activated), dictionaries are also visible into the setup area to administrator users on %s. +PermissionsDefDescTooltip=The permissions provided by your module/application are defined into the array $this->rights into the module descriptor file. You can edit manually this file or use the embedded editor.

    Note: Once defined (and module re-activated), permissions are visible into the default permissions setup %s. +HooksDefDesc=Define in the module_parts['hooks'] property, in the module descriptor, the context of hooks you want to manage (list of contexts can be found by a search on 'initHooks(' in core code).
    Edit the hook file to add code of your hooked functions (hookable functions can be found by a search on 'executeHooks' in core code). +TriggerDefDesc=Define in the trigger file the code you want to execute for each business event executed. +SeeIDsInUse=See IDs in use in your installation +SeeReservedIDsRangeHere=See range of reserved IDs +ToolkitForDevelopers=Toolkit for Dolibarr developers +TryToUseTheModuleBuilder=If you have knowledge of SQL and PHP, you may use the native module builder wizard.
    Enable the module %s and use the wizard by clicking the on the top right menu.
    Warning: This is an advanced developer feature, do not experiment on your production site! +SeeTopRightMenu=See on the top right menu +AddLanguageFile=Add language file +YouCanUseTranslationKey=You can use here a key that is the translation key found into language file (see tab "Languages") +DropTableIfEmpty=(Delete table if empty) +TableDoesNotExists=The table %s does not exists +TableDropped=Table %s deleted +InitStructureFromExistingTable=Build the structure array string of an existing table +UseAboutPage=Disable the about page +UseDocFolder=Disable the documentation folder +UseSpecificReadme=Use a specific ReadMe +ContentOfREADMECustomized=Note: The content of the README.md file has been replaced with the specific value defined into setup of ModuleBuilder. +RealPathOfModule=Real path of module +ContentCantBeEmpty=Content of file can't be empty +WidgetDesc=You can generate and edit here the widgets that will be embedded with your module. +CSSDesc=You can generate and edit here a file with personalized CSS embedded with your module. +JSDesc=You can generate and edit here a file with personalized Javascript embedded with your module. +CLIDesc=You can generate here some command line scripts you want to provide with your module. +CLIFile=CLI File +NoCLIFile=No CLI files +UseSpecificEditorName = Use a specific editor name +UseSpecificEditorURL = Use a specific editor URL +UseSpecificFamily = Use a specific family +UseSpecificAuthor = Use a specific author +UseSpecificVersion = Use a specific initial version +ModuleMustBeEnabled=The module/application must be enabled first +IncludeRefGeneration=The reference of object must be generated automatically +IncludeRefGenerationHelp=Check this if you want to include code to manage the generation automatically of the reference +IncludeDocGeneration=I want to generate some documents from the object +IncludeDocGenerationHelp=If you check this, some code will be generated to add a "Generate document" box on the record. +ShowOnCombobox=Show value into combobox +KeyForTooltip=Key for tooltip +CSSClass=CSS Class +NotEditable=Not editable +ForeignKey=Foreign key +TypeOfFieldsHelp=Type of fields:
    varchar(99), double(24,8), real, text, html, datetime, timestamp, integer, integer:ClassName:relativepath/to/classfile.class.php[:1[:filter]] ('1' means we add a + button after the combo to create the record, 'filter' can be 'status=1 AND fk_user = __USER_ID AND entity IN (__SHARED_ENTITIES__)' for example) +AsciiToHtmlConverter=Ascii to HTML converter +AsciiToPdfConverter=Ascii to PDF converter diff --git a/htdocs/langs/az_AZ/mrp.lang b/htdocs/langs/az_AZ/mrp.lang new file mode 100644 index 00000000000..d3c4d3253c6 --- /dev/null +++ b/htdocs/langs/az_AZ/mrp.lang @@ -0,0 +1,76 @@ +Mrp=Manufacturing Orders +MO=Manufacturing Order +MRPDescription=Module to manage production and Manufacturing Orders (MO). +MRPArea=MRP Area +MrpSetupPage=Setup of module MRP +MenuBOM=Bills of material +LatestBOMModified=Latest %s Bills of materials modified +LatestMOModified=Latest %s Manufacturing Orders modified +Bom=Bills of Material +BillOfMaterials=Bill of Material +BOMsSetup=Setup of module BOM +ListOfBOMs=List of bills of material - BOM +ListOfManufacturingOrders=List of Manufacturing Orders +NewBOM=New bill of material +ProductBOMHelp=Product to create with this BOM.
    Note: Products with the property 'Nature of product' = 'Raw material' are not visible into this list. +BOMsNumberingModules=BOM numbering templates +BOMsModelModule=BOM document templates +MOsNumberingModules=MO numbering templates +MOsModelModule=MO document templates +FreeLegalTextOnBOMs=Free text on document of BOM +WatermarkOnDraftBOMs=Watermark on draft BOM +FreeLegalTextOnMOs=Free text on document of MO +WatermarkOnDraftMOs=Watermark on draft MO +ConfirmCloneBillOfMaterials=Are you sure you want to clone the bill of material %s ? +ConfirmCloneMo=Are you sure you want to clone the Manufacturing Order %s ? +ManufacturingEfficiency=Manufacturing efficiency +ConsumptionEfficiency=Consumption efficiency +ValueOfMeansLoss=Value of 0.95 means an average of 5%% of loss during the production +ValueOfMeansLossForProductProduced=Value of 0.95 means an average of 5%% of loss of produced product +DeleteBillOfMaterials=Delete Bill Of Materials +DeleteMo=Delete Manufacturing Order +ConfirmDeleteBillOfMaterials=Are you sure you want to delete this Bill Of Material? +ConfirmDeleteMo=Are you sure you want to delete this Bill Of Material? +MenuMRP=Manufacturing Orders +NewMO=New Manufacturing Order +QtyToProduce=Qty to produce +DateStartPlannedMo=Date start planned +DateEndPlannedMo=Date end planned +KeepEmptyForAsap=Empty means 'As Soon As Possible' +EstimatedDuration=Estimated duration +EstimatedDurationDesc=Estimated duration to manufacture this product using this BOM +ConfirmValidateBom=Are you sure you want to validate the BOM with the reference %s (you will be able to use it to build new Manufacturing Orders) +ConfirmCloseBom=Are you sure you want to cancel this BOM (you won't be able to use it to build new Manufacturing Orders anymore) ? +ConfirmReopenBom=Are you sure you want to re-open this BOM (you will be able to use it to build new Manufacturing Orders) +StatusMOProduced=Produced +QtyFrozen=Frozen Qty +QuantityFrozen=Frozen Quantity +QuantityConsumedInvariable=When this flag is set, the quantity consumed is always the value defined and is not relative to the quantity produced. +DisableStockChange=Stock change disabled +DisableStockChangeHelp=When this flag is set, there is no stock change on this product, whatever is the quantity consumed +BomAndBomLines=Bills Of Material and lines +BOMLine=Line of BOM +WarehouseForProduction=Warehouse for production +CreateMO=Create MO +ToConsume=To consume +ToProduce=To produce +QtyAlreadyConsumed=Qty already consumed +QtyAlreadyProduced=Qty already produced +QtyRequiredIfNoLoss=Qty required if there is no loss (Manufacturing efficiency is 100%%) +ConsumeOrProduce=Consume or Produce +ConsumeAndProduceAll=Consume and Produce All +Manufactured=Manufactured +TheProductXIsAlreadyTheProductToProduce=The product to add is already the product to produce. +ForAQuantityOf=For a quantity to produce of %s +ConfirmValidateMo=Are you sure you want to validate this Manufacturing Order? +ConfirmProductionDesc=By clicking on '%s', you will validate the consumption and/or production for the quantities set. This will also update the stock and record stock movements. +ProductionForRef=Production of %s +AutoCloseMO=Close automatically the Manufacturing Order if quantities to consume and to produce are reached +NoStockChangeOnServices=No stock change on services +ProductQtyToConsumeByMO=Product quantity still to consume by open MO +ProductQtyToProduceByMO=Product quentity still to produce by open MO +AddNewConsumeLines=Add new line to consume +ProductsToConsume=Products to consume +ProductsToProduce=Products to produce +UnitCost=Unit cost +TotalCost=Total cost diff --git a/htdocs/langs/az_AZ/multicurrency.lang b/htdocs/langs/az_AZ/multicurrency.lang new file mode 100644 index 00000000000..bfcbd11fb7c --- /dev/null +++ b/htdocs/langs/az_AZ/multicurrency.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Multi currency +ErrorAddRateFail=Error in added rate +ErrorAddCurrencyFail=Error in added currency +ErrorDeleteCurrencyFail=Error delete fail +multicurrency_syncronize_error=Synchronization error: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Use the date of the document to find the currency rate, instead of using the latest known rate +multicurrency_useOriginTx=When an object is created from another, keep the original rate from the source object (otherwise use the latest known rate) +CurrencyLayerAccount=CurrencyLayer API +CurrencyLayerAccount_help_to_synchronize=You must create an account on website %s to use this functionality.
    Get your API key.
    If you use a free account, you can't change the source currency (USD by default).
    If your main currency is not USD, the application will automatically recalculate it.

    You are limited to 1000 synchronizations per month. +multicurrency_appId=API key +multicurrency_appCurrencySource=Source currency +multicurrency_alternateCurrencySource=Alternate source currency +CurrenciesUsed=Currencies used +CurrenciesUsed_help_to_add=Add the different currencies and rates you need to use on your proposals, orders etc. +rate=rate +MulticurrencyReceived=Received, original currency +MulticurrencyRemainderToTake=Remaining amount, original currency +MulticurrencyPaymentAmount=Payment amount, original currency +AmountToOthercurrency=Amount To (in currency of receiving account) +CurrencyRateSyncSucceed=Currency rate synchronization done successfuly +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Use the currency of the document for online payments diff --git a/htdocs/langs/az_AZ/oauth.lang b/htdocs/langs/az_AZ/oauth.lang new file mode 100644 index 00000000000..075ff49a895 --- /dev/null +++ b/htdocs/langs/az_AZ/oauth.lang @@ -0,0 +1,32 @@ +# 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 credentials with your OAuth provider: +ListOfSupportedOauthProviders=Enter the credentials provided by your OAuth2 provider. Only supported OAuth2 providers are listedd here. These services 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 to 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 to this page then "Register a new application" to create OAuth credentials +OAUTH_STRIPE_TEST_NAME=OAuth Stripe Test +OAUTH_STRIPE_LIVE_NAME=OAuth Stripe Live diff --git a/htdocs/langs/az_AZ/opensurvey.lang b/htdocs/langs/az_AZ/opensurvey.lang new file mode 100644 index 00000000000..7d26151fa16 --- /dev/null +++ b/htdocs/langs/az_AZ/opensurvey.lang @@ -0,0 +1,61 @@ +# Dolibarr language file - Source file is en_US - opensurvey +Survey=Poll +Surveys=Polls +OrganizeYourMeetingEasily=Organize your meetings and polls easily. First select the type of poll... +NewSurvey=New poll +OpenSurveyArea=Polls area +AddACommentForPoll=You can add a comment into poll... +AddComment=Add comment +CreatePoll=Create poll +PollTitle=Poll title +ToReceiveEMailForEachVote=Receive an email for each vote +TypeDate=Type date +TypeClassic=Type standard +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=Remove all days +CopyHoursOfFirstDay=Copy hours of first day +RemoveAllHours=Remove all hours +SelectedDays=Selected days +TheBestChoice=The best choice currently is +TheBestChoices=The best choices currently are +with=with +OpenSurveyHowTo=If you agree to vote in this poll, you have to give your name, choose the values that fit best for you and validate with the plus button at the end of the line. +CommentsOfVoters=Comments of voters +ConfirmRemovalOfPoll=Are you sure you want to remove this poll (and all votes) +RemovePoll=Remove poll +UrlForSurvey=URL to communicate to get a direct access to poll +PollOnChoice=You are creating a poll to make a multi-choice for a poll. First enter all possible choices for your poll: +CreateSurveyDate=Create a date poll +CreateSurveyStandard=Create a standard poll +CheckBox=Simple checkbox +YesNoList=List (empty/yes/no) +PourContreList=List (empty/for/against) +AddNewColumn=Add new column +TitleChoice=Choice label +ExportSpreadsheet=Export result spreadsheet +ExpireDate=Limit date +NbOfSurveys=Number of polls +NbOfVoters=No. of voters +SurveyResults=Results +PollAdminDesc=You are allowed to change all vote lines of this poll with button "Edit". You can, as well, remove a column or a line with %s. You can also add a new column with %s. +5MoreChoices=5 more choices +Against=Against +YouAreInivitedToVote=You are invited to vote for this poll +VoteNameAlreadyExists=This name was already used for this poll +AddADate=Add a date +AddStartHour=Add start hour +AddEndHour=Add end hour +votes=vote(s) +NoCommentYet=No comments have been posted for this poll yet +CanComment=Voters can comment in the poll +CanSeeOthersVote=Voters can see other people's vote +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=Back to current month +ErrorOpenSurveyFillFirstSection=You haven't filled the first section of the poll creation +ErrorOpenSurveyOneChoice=Enter at least one choice +ErrorInsertingComment=There was an error while inserting your comment +MoreChoices=Enter more choices for the voters +SurveyExpiredInfo=The poll has been closed or voting delay has expired. +EmailSomeoneVoted=%s has filled a line.\nYou can find your poll at the link: \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 diff --git a/htdocs/langs/az_AZ/orders.lang b/htdocs/langs/az_AZ/orders.lang new file mode 100644 index 00000000000..ad91e1eef63 --- /dev/null +++ b/htdocs/langs/az_AZ/orders.lang @@ -0,0 +1,189 @@ +# Dolibarr language file - Source file is en_US - orders +OrdersArea=Customers orders area +SuppliersOrdersArea=Purchase orders area +OrderCard=Order card +OrderId=Order Id +Order=Order +PdfOrderTitle=Order +Orders=Orders +OrderLine=Order line +OrderDate=Order date +OrderDateShort=Order date +OrderToProcess=Order to process +NewOrder=New order +NewOrderSupplier=New Purchase Order +ToOrder=Make order +MakeOrder=Make order +SupplierOrder=Purchase order +SuppliersOrders=Purchase orders +SuppliersOrdersRunning=Current purchase orders +CustomerOrder=Sales Order +CustomersOrders=Sales Orders +CustomersOrdersRunning=Current sales orders +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 +SuppliersOrdersAwaitingReception=Purchase orders awaiting reception +AwaitingReception=Awaiting reception +StatusOrderCanceledShort=Canceled +StatusOrderDraftShort=Draft +StatusOrderValidatedShort=Validated +StatusOrderSentShort=In process +StatusOrderSent=Shipment in process +StatusOrderOnProcessShort=Ordered +StatusOrderProcessedShort=Processed +StatusOrderDelivered=Delivered +StatusOrderDeliveredShort=Delivered +StatusOrderToBillShort=Delivered +StatusOrderApprovedShort=Approved +StatusOrderRefusedShort=Refused +StatusOrderToProcessShort=To process +StatusOrderReceivedPartiallyShort=Partially received +StatusOrderReceivedAllShort=Products received +StatusOrderCanceled=Canceled +StatusOrderDraft=Draft (needs to be validated) +StatusOrderValidated=Validated +StatusOrderOnProcess=Ordered - Standby reception +StatusOrderOnProcessWithValidation=Ordered - Standby reception or validation +StatusOrderProcessed=Processed +StatusOrderToBill=Delivered +StatusOrderApproved=Approved +StatusOrderRefused=Refused +StatusOrderReceivedPartially=Partially received +StatusOrderReceivedAll=All products received +ShippingExist=A shipment exists +QtyOrdered=Qty ordered +ProductQtyInDraft=Product quantity into draft orders +ProductQtyInDraftOrWaitingApproved=Product quantity into draft or approved orders, not yet ordered +MenuOrdersToBill=Orders delivered +MenuOrdersToBill2=Billable orders +ShipProduct=Ship product +CreateOrder=Create Order +RefuseOrder=Refuse order +ApproveOrder=Approve order +Approve2Order=Approve order (second level) +ValidateOrder=Validate order +UnvalidateOrder=Unvalidate order +DeleteOrder=Delete order +CancelOrder=Cancel order +OrderReopened= Order %s re-open +AddOrder=Create order +AddPurchaseOrder=Create purchase order +AddToDraftOrders=Add to draft order +ShowOrder=Show order +OrdersOpened=Orders to process +NoDraftOrders=No draft orders +NoOrder=No order +NoSupplierOrder=No purchase order +LastOrders=Latest %s sales orders +LastCustomerOrders=Latest %s sales orders +LastSupplierOrders=Latest %s purchase orders +LastModifiedOrders=Latest %s modified orders +AllOrders=All orders +NbOfOrders=Number of orders +OrdersStatistics=Order's statistics +OrdersStatisticsSuppliers=Purchase order statistics +NumberOfOrdersByMonth=Number of orders by month +AmountOfOrdersByMonthHT=Amount of orders by month (excl. tax) +ListOfOrders=List of orders +CloseOrder=Close order +ConfirmCloseOrder=Are you sure you want to set this order to delivered? Once an order is delivered, it can be set to billed. +ConfirmDeleteOrder=Are you sure you want to delete this order? +ConfirmValidateOrder=Are you sure you want to validate this order under name %s? +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=Generate invoice +ClassifyShipped=Classify delivered +DraftOrders=Draft orders +DraftSuppliersOrders=Draft purchase orders +OnProcessOrders=In process orders +RefOrder=Ref. order +RefCustomerOrder=Ref. order for customer +RefOrderSupplier=Ref. order for vendor +RefOrderSupplierShort=Ref. order vendor +SendOrderByMail=Send order by mail +ActionsOnOrder=Events on order +NoArticleOfTypeProduct=No article of type 'product' so no shippable article for this order +OrderMode=Order method +AuthorRequest=Request author +UserWithApproveOrderGrant=Users granted with "approve orders" permission. +PaymentOrderRef=Payment of order %s +ConfirmCloneOrder=Are you sure you want to clone this order %s? +DispatchSupplierOrder=Receiving purchase order %s +FirstApprovalAlreadyDone=First approval already done +SecondApprovalAlreadyDone=Second approval already done +SupplierOrderReceivedInDolibarr=Purchase Order %s received %s +SupplierOrderSubmitedInDolibarr=Purchase Order %s submitted +SupplierOrderClassifiedBilled=Purchase Order %s set billed +OtherOrders=Other orders +##### Types de contacts ##### +TypeContact_commande_internal_SALESREPFOLL=Representative following-up sales order +TypeContact_commande_internal_SHIPPING=Representative following-up shipping +TypeContact_commande_external_BILLING=Customer invoice contact +TypeContact_commande_external_SHIPPING=Customer shipping contact +TypeContact_commande_external_CUSTOMER=Customer contact following-up order +TypeContact_order_supplier_internal_SALESREPFOLL=Representative following-up purchase order +TypeContact_order_supplier_internal_SHIPPING=Representative following-up shipping +TypeContact_order_supplier_external_BILLING=Vendor invoice contact +TypeContact_order_supplier_external_SHIPPING=Vendor shipping contact +TypeContact_order_supplier_external_CUSTOMER=Vendor contact following-up order +Error_COMMANDE_SUPPLIER_ADDON_NotDefined=Constant COMMANDE_SUPPLIER_ADDON not defined +Error_COMMANDE_ADDON_NotDefined=Constant COMMANDE_ADDON not defined +Error_OrderNotChecked=No orders to invoice selected +# Order modes (how we receive order). Not the "why" are keys stored into dict.lang +OrderByMail=Mail +OrderByFax=Fax +OrderByEMail=Email +OrderByWWW=Online +OrderByPhone=Phone +# Documents models +PDFEinsteinDescription=A complete order model (old implementation of Eratosthene template) +PDFEratostheneDescription=A complete order model +PDFEdisonDescription=A simple order model +PDFProformaDescription=A complete Proforma invoice template +CreateInvoiceForThisCustomer=Bill orders +CreateInvoiceForThisSupplier=Bill orders +NoOrdersToInvoice=No orders billable +CloseProcessedOrdersAutomatically=Classify "Processed" all selected orders. +OrderCreation=Order creation +Ordered=Ordered +OrderCreated=Your orders have been created +OrderFail=An error happened during your orders creation +CreateOrders=Create orders +ToBillSeveralOrderSelectCustomer=To create an invoice for several orders, click first onto customer, then choose "%s". +OptionToSetOrderBilledNotEnabled=Option from module Workflow, to set order to 'Billed' automatically when invoice is validated, is not enabled, so you will have to set the status of orders to 'Billed' manually after the invoice has been generated. +IfValidateInvoiceIsNoOrderStayUnbilled=If invoice validation is 'No', the order will remain to status 'Unbilled' until the invoice is validated. +CloseReceivedSupplierOrdersAutomatically=Close order to status "%s" automatically if all products are received. +SetShippingMode=Set shipping mode +WithReceptionFinished=With reception finished +#### supplier orders status +StatusSupplierOrderCanceledShort=Canceled +StatusSupplierOrderDraftShort=Draft +StatusSupplierOrderValidatedShort=Validated +StatusSupplierOrderSentShort=In process +StatusSupplierOrderSent=Shipment in process +StatusSupplierOrderOnProcessShort=Ordered +StatusSupplierOrderProcessedShort=Processed +StatusSupplierOrderDelivered=Delivered +StatusSupplierOrderDeliveredShort=Delivered +StatusSupplierOrderToBillShort=Delivered +StatusSupplierOrderApprovedShort=Approved +StatusSupplierOrderRefusedShort=Refused +StatusSupplierOrderToProcessShort=To process +StatusSupplierOrderReceivedPartiallyShort=Partially received +StatusSupplierOrderReceivedAllShort=Products received +StatusSupplierOrderCanceled=Canceled +StatusSupplierOrderDraft=Draft (needs to be validated) +StatusSupplierOrderValidated=Validated +StatusSupplierOrderOnProcess=Ordered - Standby reception +StatusSupplierOrderOnProcessWithValidation=Ordered - Standby reception or validation +StatusSupplierOrderProcessed=Processed +StatusSupplierOrderToBill=Delivered +StatusSupplierOrderApproved=Approved +StatusSupplierOrderRefused=Refused +StatusSupplierOrderReceivedPartially=Partially received +StatusSupplierOrderReceivedAll=All products received diff --git a/htdocs/langs/az_AZ/other.lang b/htdocs/langs/az_AZ/other.lang new file mode 100644 index 00000000000..ba85f51e739 --- /dev/null +++ b/htdocs/langs/az_AZ/other.lang @@ -0,0 +1,286 @@ +# Dolibarr language file - Source file is en_US - other +SecurityCode=Security code +NumberingShort=N° +Tools=Tools +TMenuTools=Tools +ToolsDesc=All tools not included in other menu entries are grouped here.
    All the tools can be accessed via the left menu. +Birthday=Birthday +BirthdayDate=Birthday date +DateToBirth=Birth date +BirthdayAlertOn=birthday alert active +BirthdayAlertOff=birthday alert inactive +TransKey=Translation of the key TransKey +MonthOfInvoice=Month (number 1-12) of invoice date +TextMonthOfInvoice=Month (text) of invoice date +PreviousMonthOfInvoice=Previous month (number 1-12) of invoice date +TextPreviousMonthOfInvoice=Previous month (text) of invoice date +NextMonthOfInvoice=Following month (number 1-12) of invoice date +TextNextMonthOfInvoice=Following month (text) of invoice date +ZipFileGeneratedInto=Zip file generated into %s. +DocFileGeneratedInto=Doc file generated into %s. +JumpToLogin=Disconnected. Go to login page... +MessageForm=Message on online payment form +MessageOK=Message on the return page for a validated payment +MessageKO=Message on the return page for a canceled payment +ContentOfDirectoryIsNotEmpty=Content of this directory is not empty. +DeleteAlsoContentRecursively=Check to delete all content recursively +PoweredBy=Powered by +YearOfInvoice=Year of invoice date +PreviousYearOfInvoice=Previous year of invoice date +NextYearOfInvoice=Following year of invoice date +DateNextInvoiceBeforeGen=Date of next invoice (before generation) +DateNextInvoiceAfterGen=Date of next invoice (after generation) +GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mode. The mode 'Lines' was automatically selected instead. +OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. +AtLeastOneMeasureIsRequired=At least 1 field for measure is required +AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required +LatestBlogPosts=Latest Blog Posts +Notify_ORDER_VALIDATE=Sales order validated +Notify_ORDER_SENTBYMAIL=Sales order sent by mail +Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email +Notify_ORDER_SUPPLIER_VALIDATE=Purchase order recorded +Notify_ORDER_SUPPLIER_APPROVE=Purchase order approved +Notify_ORDER_SUPPLIER_REFUSE=Purchase order refused +Notify_PROPAL_VALIDATE=Customer proposal validated +Notify_PROPAL_CLOSE_SIGNED=Customer proposal closed signed +Notify_PROPAL_CLOSE_REFUSED=Customer proposal closed refused +Notify_PROPAL_SENTBYMAIL=Commercial proposal sent by mail +Notify_WITHDRAW_TRANSMIT=Transmission withdrawal +Notify_WITHDRAW_CREDIT=Credit withdrawal +Notify_WITHDRAW_EMIT=Perform withdrawal +Notify_COMPANY_CREATE=Third party created +Notify_COMPANY_SENTBYMAIL=Mails sent from third party card +Notify_BILL_VALIDATE=Customer invoice validated +Notify_BILL_UNVALIDATE=Customer invoice unvalidated +Notify_BILL_PAYED=Customer invoice paid +Notify_BILL_CANCEL=Customer invoice canceled +Notify_BILL_SENTBYMAIL=Customer invoice sent by mail +Notify_BILL_SUPPLIER_VALIDATE=Vendor invoice validated +Notify_BILL_SUPPLIER_PAYED=Vendor invoice paid +Notify_BILL_SUPPLIER_SENTBYMAIL=Vendor invoice sent by mail +Notify_BILL_SUPPLIER_CANCELED=Vendor invoice cancelled +Notify_CONTRACT_VALIDATE=Contract validated +Notify_FICHINTER_VALIDATE=Intervention validated +Notify_FICHINTER_ADD_CONTACT=Added contact to Intervention +Notify_FICHINTER_SENTBYMAIL=Intervention sent by mail +Notify_SHIPPING_VALIDATE=Shipping validated +Notify_SHIPPING_SENTBYMAIL=Shipping sent by mail +Notify_MEMBER_VALIDATE=Member validated +Notify_MEMBER_MODIFY=Member modified +Notify_MEMBER_SUBSCRIPTION=Member subscribed +Notify_MEMBER_RESILIATE=Member terminated +Notify_MEMBER_DELETE=Member deleted +Notify_PROJECT_CREATE=Project creation +Notify_TASK_CREATE=Task created +Notify_TASK_MODIFY=Task modified +Notify_TASK_DELETE=Task deleted +Notify_EXPENSE_REPORT_VALIDATE=Expense report validated (approval required) +Notify_EXPENSE_REPORT_APPROVE=Expense report approved +Notify_HOLIDAY_VALIDATE=Leave request validated (approval required) +Notify_HOLIDAY_APPROVE=Leave request approved +SeeModuleSetup=See setup of module %s +NbOfAttachedFiles=Number of attached files/documents +TotalSizeOfAttachedFiles=Total size of attached files/documents +MaxSize=Maximum size +AttachANewFile=Attach a new file/document +LinkedObject=Linked object +NbOfActiveNotifications=Number of notifications (no. of recipient emails) +PredefinedMailTest=__(Hello)__\nThis is a test mail sent to __EMAIL__.\nThe two lines are separated by a carriage return.\n\n__USER_SIGNATURE__ +PredefinedMailTestHtml=__(Hello)__\nThis is a test 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__ +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__ +PredefinedMailContentSendSupplierProposal=__(Hello)__\n\nPlease find price request __REF__ attached\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ +PredefinedMailContentSendOrder=__(Hello)__\n\nPlease find order __REF__ attached\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ +PredefinedMailContentSendSupplierOrder=__(Hello)__\n\nPlease find our order __REF__ attached\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ +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__ +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 is a compact ERP/CRM supporting several business modules. A demo showcasing all modules makes no sense as this scenario never occurs (several hundred available). So, several demo profiles are available. +ChooseYourDemoProfil=Choose the demo profile that best suits your needs... +ChooseYourDemoProfilMore=...or build your own profile
    (manual module selection) +DemoFundation=Manage members of a foundation +DemoFundation2=Manage members and bank account of a foundation +DemoCompanyServiceOnly=Company or freelance selling service only +DemoCompanyShopWithCashDesk=Manage a shop with a cash desk +DemoCompanyProductAndStocks=Shop selling products with Point Of Sales +DemoCompanyManufacturing=Company manufacturing products +DemoCompanyAll=Company with multiple activities (all main modules) +CreatedBy=Created by %s +ModifiedBy=Modified by %s +ValidatedBy=Validated by %s +ClosedBy=Closed by %s +CreatedById=User id who created +ModifiedById=User id who made latest change +ValidatedById=User id who validated +CanceledById=User id who canceled +ClosedById=User id who closed +CreatedByLogin=User login who created +ModifiedByLogin=User login who made latest change +ValidatedByLogin=User login who validated +CanceledByLogin=User login who canceled +ClosedByLogin=User login who closed +FileWasRemoved=File %s was removed +DirWasRemoved=Directory %s was removed +FeatureNotYetAvailable=Feature not yet available in the current version +FeaturesSupported=Supported features +Width=Width +Height=Height +Depth=Depth +Top=Top +Bottom=Bottom +Left=Left +Right=Right +CalculatedWeight=Calculated weight +CalculatedVolume=Calculated volume +Weight=Weight +WeightUnitton=tonne +WeightUnitkg=kg +WeightUnitg=g +WeightUnitmg=mg +WeightUnitpound=pound +WeightUnitounce=ounce +Length=Length +LengthUnitm=m +LengthUnitdm=dm +LengthUnitcm=cm +LengthUnitmm=mm +Surface=Area +SurfaceUnitm2=m² +SurfaceUnitdm2=dm² +SurfaceUnitcm2=cm² +SurfaceUnitmm2=mm² +SurfaceUnitfoot2=ft² +SurfaceUnitinch2=in² +Volume=Volume +VolumeUnitm3=m³ +VolumeUnitdm3=dm³ (L) +VolumeUnitcm3=cm³ (ml) +VolumeUnitmm3=mm³ (µl) +VolumeUnitfoot3=ft³ +VolumeUnitinch3=in³ +VolumeUnitounce=ounce +VolumeUnitlitre=litre +VolumeUnitgallon=gallon +SizeUnitm=m +SizeUnitdm=dm +SizeUnitcm=cm +SizeUnitmm=mm +SizeUnitinch=inch +SizeUnitfoot=foot +SizeUnitpoint=point +BugTracker=Bug tracker +SendNewPasswordDesc=This form allows you to request a new password. It will be sent to your email address.
    Change will become effective once you click on the confirmation link in the email.
    Check your inbox. +BackToLoginPage=Back to login page +AuthenticationDoesNotAllowSendNewPassword=Authentication mode is %s.
    In this mode, Dolibarr can't know nor change your password.
    Contact your system administrator if you want to change your password. +EnableGDLibraryDesc=Install or enable GD library on your PHP installation to use this option. +ProfIdShortDesc=Prof Id %s is an information depending on third party country.
    For example, for country %s, it's code %s. +DolibarrDemo=Dolibarr ERP/CRM demo +StatsByNumberOfUnits=Statistics for sum of qty of products/services +StatsByNumberOfEntities=Statistics in number of referring entities (no. of invoice, or order...) +NumberOfProposals=Number of proposals +NumberOfCustomerOrders=Number of sales orders +NumberOfCustomerInvoices=Number of customer invoices +NumberOfSupplierProposals=Number of vendor proposals +NumberOfSupplierOrders=Number of purchase orders +NumberOfSupplierInvoices=Number of vendor invoices +NumberOfContracts=Number of contracts +NumberOfMos=Number of manufacturing orders +NumberOfUnitsProposals=Number of units on proposals +NumberOfUnitsCustomerOrders=Number of units on sales orders +NumberOfUnitsCustomerInvoices=Number of units on customer invoices +NumberOfUnitsSupplierProposals=Number of units on vendor proposals +NumberOfUnitsSupplierOrders=Number of units on purchase orders +NumberOfUnitsSupplierInvoices=Number of units on vendor invoices +NumberOfUnitsContracts=Number of units on contracts +NumberOfUnitsMos=Number of units to produce in manufacturing orders +EMailTextInterventionAddedContact=A new intervention %s has been assigned to you. +EMailTextInterventionValidated=The intervention %s has been validated. +EMailTextInvoiceValidated=Invoice %s has been validated. +EMailTextInvoicePayed=Invoice %s has been paid. +EMailTextProposalValidated=Proposal %s has been validated. +EMailTextProposalClosedSigned=Proposal %s has been closed signed. +EMailTextOrderValidated=Order %s has been validated. +EMailTextOrderApproved=Order %s has been approved. +EMailTextOrderValidatedBy=Order %s has been recorded by %s. +EMailTextOrderApprovedBy=Order %s has been approved by %s. +EMailTextOrderRefused=Order %s has been refused. +EMailTextOrderRefusedBy=Order %s has been refused by %s. +EMailTextExpeditionValidated=Shipping %s has been validated. +EMailTextExpenseReportValidated=Expense report %s has been validated. +EMailTextExpenseReportApproved=Expense report %s has been approved. +EMailTextHolidayValidated=Leave request %s has been validated. +EMailTextHolidayApproved=Leave request %s has been approved. +ImportedWithSet=Importation data set +DolibarrNotification=Automatic notification +ResizeDesc=Enter new width OR new height. Ratio will be kept during resizing... +NewLength=New width +NewHeight=New height +NewSizeAfterCropping=New size after cropping +DefineNewAreaToPick=Define new area on image to pick (left click on image then drag until you reach the opposite corner) +CurrentInformationOnImage=This tool was designed to help you to resize or crop an image. This is the information on the current edited image +ImageEditor=Image editor +YouReceiveMailBecauseOfNotification=You receive this message because your email has been added to list of targets to be informed of particular events into %s software of %s. +YouReceiveMailBecauseOfNotification2=This event is the following: +ThisIsListOfModules=This is a list of modules preselected by this demo profile (only most common modules are visible in this demo). Edit this to have a more personalized demo and click on "Start". +UseAdvancedPerms=Use the advanced permissions of some modules +FileFormat=File format +SelectAColor=Choose a color +AddFiles=Add Files +StartUpload=Start upload +CancelUpload=Cancel upload +FileIsTooBig=Files is too big +PleaseBePatient=Please be patient... +NewPassword=New password +ResetPassword=Reset password +RequestToResetPasswordReceived=A request to change your password has been received. +NewKeyIs=This is your new keys to login +NewKeyWillBe=Your new key to login to software will be +ClickHereToGoTo=Click here to go to %s +YouMustClickToChange=You must however first click on the following link to validate this password change +ForgetIfNothing=If you didn't request this change, just forget this email. Your credentials are kept safe. +IfAmountHigherThan=If amount higher than %s +SourcesRepository=Repository for sources +Chart=Chart +PassEncoding=Password encoding +PermissionsAdd=Permissions added +PermissionsDelete=Permissions removed +YourPasswordMustHaveAtLeastXChars=Your password must have at least %s chars +YourPasswordHasBeenReset=Your password has been reset successfully +ApplicantIpAddress=IP address of applicant +SMSSentTo=SMS sent to %s +MissingIds=Missing ids +ThirdPartyCreatedByEmailCollector=Third party created by email collector from email MSGID %s +ContactCreatedByEmailCollector=Contact/address created by email collector from email MSGID %s +ProjectCreatedByEmailCollector=Project created by email collector from email MSGID %s +TicketCreatedByEmailCollector=Ticket created by email collector from email MSGID %s +OpeningHoursFormatDesc=Use a - to separate opening and closing hours.
    Use a space to enter different ranges.
    Example: 8-12 14-18 + +##### Export ##### +ExportsArea=Exports area +AvailableFormats=Available formats +LibraryUsed=Library used +LibraryVersion=Library version +ExportableDatas=Exportable data +NoExportableData=No exportable data (no modules with exportable data loaded, or missing permissions) +##### External sites ##### +WebsiteSetup=Setup of module website +WEBSITE_PAGEURL=URL of page +WEBSITE_TITLE=Title +WEBSITE_DESCRIPTION=Description +WEBSITE_IMAGE=Image +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). +WEBSITE_KEYWORDS=Keywords +LinesToImport=Lines to import + +MemoryUsage=Memory usage +RequestDuration=Duration of request +PopuProp=Products/Services by popularity in Proposals +PopuCom=Products/Services by popularity in Orders +ProductStatistics=Products/Services Statistics +NbOfQtyInOrders=Qty in orders diff --git a/htdocs/langs/az_AZ/paybox.lang b/htdocs/langs/az_AZ/paybox.lang new file mode 100644 index 00000000000..1bbbef4017b --- /dev/null +++ b/htdocs/langs/az_AZ/paybox.lang @@ -0,0 +1,31 @@ +# Dolibarr language file - Source file is en_US - paybox +PayBoxSetup=PayBox module setup +PayBoxDesc=This module offer pages to allow payment on Paybox by customers. This can be used for a free payment or for a payment on a particular Dolibarr object (invoice, order, ...) +FollowingUrlAreAvailableToMakePayments=Following URLs are available to offer a page to a customer to make a payment on Dolibarr objects +PaymentForm=Payment form +WelcomeOnPaymentPage=Welcome to our online payment service +ThisScreenAllowsYouToPay=This screen allow you to make an online payment to %s. +ThisIsInformationOnPayment=This is information on payment to do +ToComplete=To complete +YourEMail=Email to receive payment confirmation +Creditor=Creditor +PaymentCode=Payment code +PayBoxDoPayment=Pay with Paybox +YouWillBeRedirectedOnPayBox=You will be redirected on secured Paybox page to input you credit card information +Continue=Next +SetupPayBoxToHavePaymentCreatedAutomatically=Setup your Paybox with url %s to have payment created automatically when validated by Paybox. +YourPaymentHasBeenRecorded=This page confirms that your payment has been recorded. Thank you. +YourPaymentHasNotBeenRecorded=Your payment has NOT been recorded and the transaction has been canceled. Thank you. +AccountParameter=Account parameters +UsageParameter=Usage parameters +InformationToFindParameters=Help to find your %s account information +PAYBOX_CGI_URL_V2=Url of Paybox CGI module for payment +VendorName=Name of vendor +CSSUrlForPaymentForm=CSS style sheet url for payment form +NewPayboxPaymentReceived=New Paybox payment received +NewPayboxPaymentFailed=New Paybox payment tried but failed +PAYBOX_PAYONLINE_SENDEMAIL=Email notification after payment attempt (success or fail) +PAYBOX_PBX_SITE=Value for PBX SITE +PAYBOX_PBX_RANG=Value for PBX Rang +PAYBOX_PBX_IDENTIFIANT=Value for PBX ID +PAYBOX_HMAC_KEY=HMAC key diff --git a/htdocs/langs/az_AZ/paypal.lang b/htdocs/langs/az_AZ/paypal.lang new file mode 100644 index 00000000000..5eb5f389445 --- /dev/null +++ b/htdocs/langs/az_AZ/paypal.lang @@ -0,0 +1,36 @@ +# Dolibarr language file - Source file is en_US - paypal +PaypalSetup=PayPal module setup +PaypalDesc=This module allows payment by customers via PayPal. This can be used for a ad-hoc payment or for a payment related to a Dolibarr object (invoice, order, ...) +PaypalOrCBDoPayment=Pay with PayPal (Card or PayPal) +PaypalDoPayment=Pay with PayPal +PAYPAL_API_SANDBOX=Mode test/sandbox +PAYPAL_API_USER=API username +PAYPAL_API_PASSWORD=API password +PAYPAL_API_SIGNATURE=API signature +PAYPAL_SSLVERSION=Curl SSL Version +PAYPAL_API_INTEGRAL_OR_PAYPALONLY=Offer "integral" payment (Credit card+PayPal) or "PayPal" only +PaypalModeIntegral=Integral +PaypalModeOnlyPaypal=PayPal only +ONLINE_PAYMENT_CSS_URL=Optional URL of CSS stylesheet on online payment page +ThisIsTransactionId=This is id of transaction: %s +PAYPAL_ADD_PAYMENT_URL=Include the PayPal payment url when you send a document by email +NewOnlinePaymentReceived=New online payment received +NewOnlinePaymentFailed=New online payment tried but failed +ONLINE_PAYMENT_SENDEMAIL=Email address for notifications after each payment attempt (for success and fail) +ReturnURLAfterPayment=Return URL after payment +ValidationOfOnlinePaymentFailed=Validation of online payment failed +PaymentSystemConfirmPaymentPageWasCalledButFailed=Payment confirmation page was called by payment system returned an error +SetExpressCheckoutAPICallFailed=SetExpressCheckout API call failed. +DoExpressCheckoutPaymentAPICallFailed=DoExpressCheckoutPayment API call failed. +DetailedErrorMessage=Detailed Error Message +ShortErrorMessage=Short Error Message +ErrorCode=Error Code +ErrorSeverityCode=Error Severity Code +OnlinePaymentSystem=Online payment system +PaypalLiveEnabled=PayPal "live" mode enabled (otherwise test/sandbox mode) +PaypalImportPayment=Import PayPal payments +PostActionAfterPayment=Post actions after payments +ARollbackWasPerformedOnPostActions=A rollback was performed on all Post actions. You must complete post actions manually if they are necessary. +ValidationOfPaymentFailed=Validation of payment has failed +CardOwner=Card holder +PayPalBalance=Paypal credit diff --git a/htdocs/langs/az_AZ/printing.lang b/htdocs/langs/az_AZ/printing.lang new file mode 100644 index 00000000000..16494583550 --- /dev/null +++ b/htdocs/langs/az_AZ/printing.lang @@ -0,0 +1,54 @@ +# Dolibarr language file - Source file is en_US - printing +Module64000Name=Direct Printing +Module64000Desc=Enable Direct Printing System +PrintingSetup=Setup of Direct Printing System +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=Direct Printing jobs +DirectPrint=Direct print +PrintingDriverDesc=Configuration variables for printing driver. +ListDrivers=List of drivers +PrintTestDesc=List of Printers. +FileWasSentToPrinter=File %s was sent to printer +ViaModule=via the module +NoActivePrintingModuleFound=No active driver to print document. Check setup of module %s. +PleaseSelectaDriverfromList=Please select a driver from list. +PleaseConfigureDriverfromList=Please configure the selected driver from list. +SetupDriver=Driver setup +TargetedPrinter=Targeted printer +UserConf=Setup per user +PRINTGCP_INFO=Google OAuth API setup +PRINTGCP_AUTHLINK=Authentication +PRINTGCP_TOKEN_ACCESS=Google Cloud Print OAuth Token +PrintGCPDesc=This driver allows sending documents directly to a printer using Google Cloud Print. +GCP_Name=Name +GCP_displayName=Display Name +GCP_Id=Printer Id +GCP_OwnerName=Owner Name +GCP_State=Printer State +GCP_connectionStatus=Online State +GCP_Type=Printer Type +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=Login +PRINTIPP_PASSWORD=Password +NoDefaultPrinterDefined=No default printer defined +DefaultPrinter=Default printer +Printer=Printer +IPP_Uri=Printer Uri +IPP_Name=Printer Name +IPP_State=Printer State +IPP_State_reason=State reason +IPP_State_reason1=State reason1 +IPP_BW=BW +IPP_Color=Color +IPP_Device=Device +IPP_Media=Printer media +IPP_Supported=Type of media +DirectPrintingJobsDesc=This page lists printing jobs found for available printers. +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/az_AZ/productbatch.lang b/htdocs/langs/az_AZ/productbatch.lang new file mode 100644 index 00000000000..54270c4a23b --- /dev/null +++ b/htdocs/langs/az_AZ/productbatch.lang @@ -0,0 +1,24 @@ +# ProductBATCH language file - en_US - ProductBATCH +ManageLotSerial=Use lot/serial number +ProductStatusOnBatch=Yes (lot/serial required) +ProductStatusNotOnBatch=No (lot/serial not used) +ProductStatusOnBatchShort=Yes +ProductStatusNotOnBatchShort=No +Batch=Lot/Serial +atleast1batchfield=Eat-by date or Sell-by date or Lot/Serial number +batch_number=Lot/Serial number +BatchNumberShort=Lot/Serial +EatByDate=Eat-by date +SellByDate=Sell-by date +DetailBatchNumber=Lot/Serial details +printBatch=Lot/Serial: %s +printEatby=Eat-by: %s +printSellby=Sell-by: %s +printQty=Qty: %d +AddDispatchBatchLine=Add a line for Shelf Life dispatching +WhenProductBatchModuleOnOptionAreForced=When module Lot/Serial is on, automatic stock decrease is forced to 'Decrease real stocks on shipping validation' and automatic increase mode is forced to 'Increase real stocks on manual dispatching into warehouses' and can't be edited. Other options can be defined as you want. +ProductDoesNotUseBatchSerial=This product does not use lot/serial number +ProductLotSetup=Setup of module lot/serial +ShowCurrentStockOfLot=Show current stock for couple product/lot +ShowLogOfMovementIfLot=Show log of movements for couple product/lot +StockDetailPerBatch=Stock detail per lot diff --git a/htdocs/langs/az_AZ/products.lang b/htdocs/langs/az_AZ/products.lang new file mode 100644 index 00000000000..a31243a07b6 --- /dev/null +++ b/htdocs/langs/az_AZ/products.lang @@ -0,0 +1,385 @@ +# Dolibarr language file - Source file is en_US - products +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 +TMenuProducts=Products +TMenuServices=Services +Products=Products +Services=Services +Product=Product +Service=Service +ProductId=Product/service id +Create=Create +Reference=Reference +NewProduct=New product +NewService=New service +ProductVatMassChange=Global VAT Update +ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL products and services! +MassBarcodeInit=Mass barcode init +MassBarcodeInitDesc=This page can be used to initialize a barcode on objects that does not have barcode defined. Check before that setup of module barcode is complete. +ProductAccountancyBuyCode=Accounting code (purchase) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) +ProductAccountancySellCode=Accounting code (sale) +ProductAccountancySellIntraCode=Accounting code (sale intra-Community) +ProductAccountancySellExportCode=Accounting code (sale export) +ProductOrService=Product or Service +ProductsAndServices=Products and Services +ProductsOrServices=Products or Services +ProductsPipeServices=Products | Services +ProductsOnSale=Products for sale +ProductsOnPurchase=Products for purchase +ProductsOnSaleOnly=Products for sale only +ProductsOnPurchaseOnly=Products for purchase only +ProductsNotOnSell=Products not for sale and not for purchase +ProductsOnSellAndOnBuy=Products for sale and for purchase +ServicesOnSale=Services for sale +ServicesOnPurchase=Services for purchase +ServicesOnSaleOnly=Services for sale only +ServicesOnPurchaseOnly=Services for purchase only +ServicesNotOnSell=Services not for sale and not for purchase +ServicesOnSellAndOnBuy=Services for sale and for purchase +LastModifiedProductsAndServices=Last %s modified products/services +LastRecordedProducts=Latest %s recorded products +LastRecordedServices=Latest %s recorded services +CardProduct0=Product +CardProduct1=Service +Stock=Stock +MenuStocks=Stocks +Stocks=Stocks and location (warehouse) of products +Movements=Movements +Sell=Sell +Buy=Purchase +OnSell=For sale +OnBuy=For purchase +NotOnSell=Not for sale +ProductStatusOnSell=For sale +ProductStatusNotOnSell=Not for sale +ProductStatusOnSellShort=For sale +ProductStatusNotOnSellShort=Not for sale +ProductStatusOnBuy=For purchase +ProductStatusNotOnBuy=Not for purchase +ProductStatusOnBuyShort=For purchase +ProductStatusNotOnBuyShort=Not for purchase +UpdateVAT=Update vat +UpdateDefaultPrice=Update default price +UpdateLevelPrices=Update prices for each level +AppliedPricesFrom=Applied from +SellingPrice=Selling price +SellingPriceHT=Selling price (excl. tax) +SellingPriceTTC=Selling price (inc. tax) +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. +CostPriceUsage=This value could be used for margin calculation. +SoldAmount=Sold amount +PurchasedAmount=Purchased amount +NewPrice=New price +MinPrice=Min. sell price +EditSellingPriceLabel=Edit selling price label +CantBeLessThanMinPrice=The selling price can't be lower than minimum allowed for this product (%s without tax). This message can also appears if you type a too important discount. +ContractStatusClosed=Closed +ErrorProductAlreadyExists=A product with reference %s already exists. +ErrorProductBadRefOrLabel=Wrong value for reference or label. +ErrorProductClone=There was a problem while trying to clone the product or service. +ErrorPriceCantBeLowerThanMinPrice=Error, price can't be lower than minimum price. +Suppliers=Vendors +SupplierRef=Vendor SKU +ShowProduct=Show product +ShowService=Show service +ProductsAndServicesArea=Product and Services area +ProductsArea=Product area +ServicesArea=Services area +ListOfStockMovements=List of stock movements +BuyingPrice=Buying price +PriceForEachProduct=Products with specific prices +SupplierCard=Vendor card +PriceRemoved=Price removed +BarCode=Barcode +BarcodeType=Barcode type +SetDefaultBarcodeType=Set barcode type +BarcodeValue=Barcode value +NoteNotVisibleOnBill=Note (not visible on invoices, proposals...) +ServiceLimitedDuration=If product is a service with limited duration: +MultiPricesAbility=Multiple price segments per product/service (each customer is in one price segment) +MultiPricesNumPrices=Number of prices +AssociatedProductsAbility=Activate virtual products (kits) +AssociatedProducts=Virtual products +AssociatedProductsNumber=Number of products composing this virtual product +ParentProductsNumber=Number of parent packaging product +ParentProducts=Parent products +IfZeroItIsNotAVirtualProduct=If 0, this product is not a virtual product +IfZeroItIsNotUsedByVirtualProduct=If 0, this product is not used by any virtual product +KeywordFilter=Keyword filter +CategoryFilter=Category filter +ProductToAddSearch=Search product to add +NoMatchFound=No match found +ListOfProductsServices=List of products/services +ProductAssociationList=List of products/services that are component(s) of this virtual product/kit +ProductParentList=List of virtual products/services with this product as a component +ErrorAssociationIsFatherOfThis=One of selected product is parent with current product +DeleteProduct=Delete a product/service +ConfirmDeleteProduct=Are you sure you want to delete this product/service? +ProductDeleted=Product/Service "%s" deleted from database. +ExportDataset_produit_1=Products +ExportDataset_service_1=Services +ImportDataset_produit_1=Products +ImportDataset_service_1=Services +DeleteProductLine=Delete product line +ConfirmDeleteProductLine=Are you sure you want to delete this product line? +ProductSpecial=Special +QtyMin=Min. purchase quantity +PriceQtyMin=Price quantity min. +PriceQtyMinCurrency=Price (currency) for this qty. (no discount) +VATRateForSupplierProduct=VAT Rate (for this vendor/product) +DiscountQtyMin=Discount for this qty. +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=Predefined products/services to sell +PredefinedProductsToPurchase=Predefined product to purchase +PredefinedServicesToPurchase=Predefined services to purchase +PredefinedProductsAndServicesToPurchase=Predefined products/services to purchase +NotPredefinedProducts=Not predefined products/services +GenerateThumb=Generate thumb +ServiceNb=Service #%s +ListProductServiceByPopularity=List of products/services by popularity +ListProductByPopularity=List of products by popularity +ListServiceByPopularity=List of services by popularity +Finished=Manufactured product +RowMaterial=Raw Material +ConfirmCloneProduct=Are you sure you want to clone product or service %s? +CloneContentProduct=Clone all main information of product/service +ClonePricesProduct=Clone prices +CloneCategoriesProduct=Clone tags/categories linked +CloneCompositionProduct=Clone virtual product/service +CloneCombinationsProduct=Clone product variants +ProductIsUsed=This product is used +NewRefForClone=Ref. of new product/service +SellingPrices=Selling prices +BuyingPrices=Buying prices +CustomerPrices=Customer prices +SuppliersPrices=Vendor prices +SuppliersPricesOfProductsOrServices=Vendor prices (of products or services) +CustomCode=Customs / Commodity / HS code +CountryOrigin=Origin country +Nature=Nature of product (material/finished) +ShortLabel=Short label +Unit=Unit +p=u. +set=set +se=set +second=second +s=s +hour=hour +h=h +day=day +d=d +kilogram=kilogram +kg=Kg +gram=gram +g=g +meter=meter +m=m +lm=lm +m2=m² +m3=m³ +liter=liter +l=L +unitP=Piece +unitSET=Set +unitS=Second +unitH=Hour +unitD=Day +unitG=Gram +unitM=Meter +unitLM=Linear meter +unitM2=Square meter +unitM3=Cubic meter +unitL=Liter +unitT=ton +unitKG=kg +unitG=Gram +unitMG=mg +unitLB=pound +unitOZ=ounce +unitM=Meter +unitDM=dm +unitCM=cm +unitMM=mm +unitFT=ft +unitIN=in +unitM2=Square meter +unitDM2=dm² +unitCM2=cm² +unitMM2=mm² +unitFT2=ft² +unitIN2=in² +unitM3=Cubic meter +unitDM3=dm³ +unitCM3=cm³ +unitMM3=mm³ +unitFT3=ft³ +unitIN3=in³ +unitOZ3=ounce +unitgallon=gallon +ProductCodeModel=Product ref template +ServiceCodeModel=Service ref template +CurrentProductPrice=Current price +AlwaysUseNewPrice=Always use current price of product/service +AlwaysUseFixedPrice=Use the fixed price +PriceByQuantity=Different prices by quantity +DisablePriceByQty=Disable prices by quantity +PriceByQuantityRange=Quantity range +MultipriceRules=Price segment rules +UseMultipriceRules=Use price segment rules (defined into product module setup) to auto calculate prices of all other segments according to first segment +PercentVariationOver=%% variation over %s +PercentDiscountOver=%% discount over %s +KeepEmptyForAutoCalculation=Keep empty to have this calculated automatically from weight or volume of products +VariantRefExample=Examples: COL, SIZE +VariantLabelExample=Examples: Color, Size +### composition fabrication +Build=Produce +ProductsMultiPrice=Products and prices for each price segment +ProductsOrServiceMultiPrice=Customer prices (of products or services, multi-prices) +ProductSellByQuarterHT=Products turnover quarterly before tax +ServiceSellByQuarterHT=Services turnover quarterly before tax +Quarter1=1st. Quarter +Quarter2=2nd. Quarter +Quarter3=3rd. Quarter +Quarter4=4th. Quarter +BarCodePrintsheet=Print barcode +PageToGenerateBarCodeSheets=With this tool, you can print sheets of barcode stickers. Choose format of your sticker page, type of barcode and value of barcode, then click on button %s. +NumberOfStickers=Number of stickers to print on page +PrintsheetForOneBarCode=Print several stickers for one barcode +BuildPageToPrint=Generate page to print +FillBarCodeTypeAndValueManually=Fill barcode type and value manually. +FillBarCodeTypeAndValueFromProduct=Fill barcode type and value from barcode of a product. +FillBarCodeTypeAndValueFromThirdParty=Fill barcode type and value from barcode of a third party. +DefinitionOfBarCodeForProductNotComplete=Definition of type or value of barcode not complete for product %s. +DefinitionOfBarCodeForThirdpartyNotComplete=Definition of type or value of barcode non complete for third party %s. +BarCodeDataForProduct=Barcode information of product %s: +BarCodeDataForThirdparty=Barcode information of third party %s: +ResetBarcodeForAllRecords=Define barcode value for all record (this will also reset barcode value already defined with new values) +PriceByCustomer=Different prices for each customer +PriceCatalogue=A single sell price per product/service +PricingRule=Rules for selling prices +AddCustomerPrice=Add price by customer +ForceUpdateChildPriceSoc=Set same price on customer subsidiaries +PriceByCustomerLog=Log of previous customer prices +MinimumPriceLimit=Minimum price can't be lower then %s +MinimumRecommendedPrice=Minimum recommended price is: %s +PriceExpressionEditor=Price expression editor +PriceExpressionSelected=Selected price expression +PriceExpressionEditorHelp1="price = 2 + 2" or "2 + 2" for setting the price. Use ; to separate expressions +PriceExpressionEditorHelp2=You can access ExtraFields with variables like #extrafield_myextrafieldkey# and global variables with #global_mycode# +PriceExpressionEditorHelp3=In both product/service and vendor prices there are these variables available:
    #tva_tx# #localtax1_tx# #localtax2_tx# #weight# #length# #surface# #price_min# +PriceExpressionEditorHelp4=In product/service price only: #supplier_min_price#
    In vendor prices only: #supplier_quantity# and #supplier_tva_tx# +PriceExpressionEditorHelp5=Available global values: +PriceMode=Price mode +PriceNumeric=Number +DefaultPrice=Default price +ComposedProductIncDecStock=Increase/Decrease stock on parent change +ComposedProduct=Child products +MinSupplierPrice=Minimum buying price +MinCustomerPrice=Minimum selling price +DynamicPriceConfiguration=Dynamic price configuration +DynamicPriceDesc=You may define mathematical formulae to calculate Customer or Vendor prices. Such formulas can use all mathematical operators, some constants and variables. You can define here the variables you wish to use. If the variable needs an automatic update, you may define the external URL to allow Dolibarr to update the value automatically. +AddVariable=Add Variable +AddUpdater=Add Updater +GlobalVariables=Global variables +VariableToUpdate=Variable to update +GlobalVariableUpdaters=External updaters for variables +GlobalVariableUpdaterType0=JSON data +GlobalVariableUpdaterHelp0=Parses JSON data from specified URL, VALUE specifies the location of relevant value, +GlobalVariableUpdaterHelpFormat0=Format for request {"URL": "http://example.com/urlofjson", "VALUE": "array1,array2,targetvalue"} +GlobalVariableUpdaterType1=WebService data +GlobalVariableUpdaterHelp1=Parses WebService data from specified URL, NS specifies the namespace, VALUE specifies the location of relevant value, DATA should contain the data to send and METHOD is the calling WS method +GlobalVariableUpdaterHelpFormat1=Format for request is {"URL": "http://example.com/urlofws", "VALUE": "array,targetvalue", "NS": "http://example.com/urlofns", "METHOD": "myWSMethod", "DATA": {"your": "data", "to": "send"}} +UpdateInterval=Update interval (minutes) +LastUpdated=Latest update +CorrectlyUpdated=Correctly updated +PropalMergePdfProductActualFile=Files use to add into PDF Azur are/is +PropalMergePdfProductChooseFile=Select PDF files +IncludingProductWithTag=Including product/service with tag +DefaultPriceRealPriceMayDependOnCustomer=Default price, real price may depend on customer +WarningSelectOneDocument=Please select at least one document +DefaultUnitToShow=Unit +NbOfQtyInProposals=Qty in proposals +ClinkOnALinkOfColumn=Click on a link of column %s to get a detailed view... +ProductsOrServicesTranslations=Products/Services translations +TranslatedLabel=Translated label +TranslatedDescription=Translated description +TranslatedNote=Translated notes +ProductWeight=Weight for 1 product +ProductVolume=Volume for 1 product +WeightUnits=Weight unit +VolumeUnits=Volume unit +WidthUnits=Width unit +LengthUnits=Length unit +HeightUnits=Height unit +SurfaceUnits=Surface unit +SizeUnits=Size unit +DeleteProductBuyPrice=Delete buying price +ConfirmDeleteProductBuyPrice=Are you sure you want to delete this buying price? +SubProduct=Sub product +ProductSheet=Product sheet +ServiceSheet=Service sheet +PossibleValues=Possible values +GoOnMenuToCreateVairants=Go on menu %s - %s to prepare attribute variants (like colors, size, ...) +UseProductFournDesc=Add a feature to define the descriptions of products defined by the vendors in addition to descriptions for customers +ProductSupplierDescription=Vendor description for the product +UseProductSupplierPackaging=Use packaging on supplier prices (recalculate quantities according to packaging set on supplier price when adding/updating line in supplier documents) +PackagingForThisProduct=Packaging +QtyRecalculatedWithPackaging=The quantity of the line were recalculated according to supplier packaging + +#Attributes +VariantAttributes=Variant attributes +ProductAttributes=Variant attributes for products +ProductAttributeName=Variant attribute %s +ProductAttribute=Variant attribute +ProductAttributeDeleteDialog=Are you sure you want to delete this attribute? All values will be deleted +ProductAttributeValueDeleteDialog=Are you sure you want to delete the value "%s" with reference "%s" of this attribute? +ProductCombinationDeleteDialog=Are you sure want to delete the variant of the product "%s"? +ProductCombinationAlreadyUsed=There was an error while deleting the variant. Please check it is not being used in any object +ProductCombinations=Variants +PropagateVariant=Propagate variants +HideProductCombinations=Hide products variant in the products selector +ProductCombination=Variant +NewProductCombination=New variant +EditProductCombination=Editing variant +NewProductCombinations=New variants +EditProductCombinations=Editing variants +SelectCombination=Select combination +ProductCombinationGenerator=Variants generator +Features=Features +PriceImpact=Price impact +WeightImpact=Weight impact +NewProductAttribute=New attribute +NewProductAttributeValue=New attribute value +ErrorCreatingProductAttributeValue=There was an error while creating the attribute value. It could be because there is already an existing value with that reference +ProductCombinationGeneratorWarning=If you continue, before generating new variants, all previous ones will be DELETED. Already existing ones will be updated with the new values +TooMuchCombinationsWarning=Generating lots of variants may result in high CPU, memory usage and Dolibarr not able to create them. Enabling the option "%s" may help reduce memory usage. +DoNotRemovePreviousCombinations=Do not remove previous variants +UsePercentageVariations=Use percentage variations +PercentageVariation=Percentage variation +ErrorDeletingGeneratedProducts=There was an error while trying to delete existing product variants +NbOfDifferentValues=No. of different values +NbProducts=Number of products +ParentProduct=Parent product +HideChildProducts=Hide variant products +ShowChildProducts=Show variant products +NoEditVariants=Go to Parent product card and edit variants price impact in the variants tab +ConfirmCloneProductCombinations=Would you like to copy all the product variants to the other parent product with the given reference? +CloneDestinationReference=Destination product reference +ErrorCopyProductCombinations=There was an error while copying the product variants +ErrorDestinationProductNotFound=Destination product not found +ErrorProductCombinationNotFound=Product variant not found +ActionAvailableOnVariantProductOnly=Action only available on the variant of product +ProductsPricePerCustomer=Product prices per customers +ProductSupplierExtraFields=Additional Attributes (Supplier Prices) +DeleteLinkedProduct=Delete the child product linked to the combination diff --git a/htdocs/langs/az_AZ/projects.lang b/htdocs/langs/az_AZ/projects.lang new file mode 100644 index 00000000000..bb42bff3c87 --- /dev/null +++ b/htdocs/langs/az_AZ/projects.lang @@ -0,0 +1,267 @@ +# Dolibarr language file - Source file is en_US - projects +RefProject=Ref. project +ProjectRef=Project ref. +ProjectId=Project Id +ProjectLabel=Project label +ProjectsArea=Projects Area +ProjectStatus=Project status +SharedProject=Everybody +PrivateProject=Project contacts +ProjectsImContactFor=Projects for I am explicitly a contact +AllAllowedProjects=All project I can read (mine + public) +AllProjects=All projects +MyProjectsDesc=This view is limited to projects you are a contact for +ProjectsPublicDesc=This view presents all projects you are allowed to read. +TasksOnProjectsPublicDesc=This view presents all tasks on projects you are allowed to read. +ProjectsPublicTaskDesc=This view presents all projects and tasks you are allowed to read. +ProjectsDesc=This view presents all projects (your user permissions grant you permission to view everything). +TasksOnProjectsDesc=This view presents all tasks on all projects (your user permissions grant you permission to view everything). +MyTasksDesc=This view is limited to projects or tasks you are a contact for +OnlyOpenedProject=Only open projects are visible (projects in draft or closed status are not visible). +ClosedProjectsAreHidden=Closed projects are not visible. +TasksPublicDesc=This view presents all projects and tasks you are allowed to read. +TasksDesc=This view presents all projects and tasks (your user permissions grant you permission to view everything). +AllTaskVisibleButEditIfYouAreAssigned=All tasks for qualified projects are visible, but you can enter time only for task assigned to selected user. Assign task if you need to enter time on it. +OnlyYourTaskAreVisible=Only tasks assigned to you are visible. Assign task to yourself if it is not visible and you need to enter time on it. +ImportDatasetTasks=Tasks of projects +ProjectCategories=Project tags/categories +NewProject=New project +AddProject=Create project +DeleteAProject=Delete a project +DeleteATask=Delete a task +ConfirmDeleteAProject=Are you sure you want to delete this project? +ConfirmDeleteATask=Are you sure you want to delete this task? +OpenedProjects=Open projects +OpenedTasks=Open tasks +OpportunitiesStatusForOpenedProjects=Leads amount of open projects by status +OpportunitiesStatusForProjects=Leads amount of projects by status +ShowProject=Show project +ShowTask=Show task +SetProject=Set project +NoProject=No project defined or owned +NbOfProjects=Number of projects +NbOfTasks=Number of tasks +TimeSpent=Time spent +TimeSpentByYou=Time spent by you +TimeSpentByUser=Time spent by user +TimesSpent=Time spent +TaskId=Task ID +RefTask=Task ref. +LabelTask=Task label +TaskTimeSpent=Time spent on tasks +TaskTimeUser=User +TaskTimeNote=Note +TaskTimeDate=Date +TasksOnOpenedProject=Tasks on open projects +WorkloadNotDefined=Workload not defined +NewTimeSpent=Time spent +MyTimeSpent=My time spent +BillTime=Bill the time spent +BillTimeShort=Bill time +TimeToBill=Time not billed +TimeBilled=Time billed +Tasks=Tasks +Task=Task +TaskDateStart=Task start date +TaskDateEnd=Task end date +TaskDescription=Task description +NewTask=New task +AddTask=Create task +AddTimeSpent=Create time spent +AddHereTimeSpentForDay=Add here time spent for this day/task +AddHereTimeSpentForWeek=Add here time spent for this week/task +Activity=Activity +Activities=Tasks/activities +MyActivities=My tasks/activities +MyProjects=My projects +MyProjectsArea=My projects Area +DurationEffective=Effective duration +ProgressDeclared=Declared progress +TaskProgressSummary=Task progress +CurentlyOpenedTasks=Curently open tasks +TheReportedProgressIsLessThanTheCalculatedProgressionByX=The declared progress is less %s than the calculated progression +TheReportedProgressIsMoreThanTheCalculatedProgressionByX=The declared progress is more %s than the calculated progression +ProgressCalculated=Calculated progress +WhichIamLinkedTo=which I'm linked to +WhichIamLinkedToProject=which I'm linked to project +Time=Time +ListOfTasks=List of tasks +GoToListOfTimeConsumed=Go to list of time consumed +GanttView=Gantt View +ListProposalsAssociatedProject=List of the commercial proposals related to the project +ListOrdersAssociatedProject=List of sales orders related to the project +ListInvoicesAssociatedProject=List of customer invoices related to the project +ListPredefinedInvoicesAssociatedProject=List of customer template invoices related to the project +ListSupplierOrdersAssociatedProject=List of purchase orders related to the project +ListSupplierInvoicesAssociatedProject=List of vendor invoices related to the project +ListContractAssociatedProject=List of contracts related to the project +ListShippingAssociatedProject=List of shippings related to the project +ListFichinterAssociatedProject=List of interventions related to the project +ListExpenseReportsAssociatedProject=List of expense reports related to the project +ListDonationsAssociatedProject=List of donations related to the project +ListVariousPaymentsAssociatedProject=List of miscellaneous payments related to the project +ListSalariesAssociatedProject=List of payments of salaries related to the project +ListActionsAssociatedProject=List of events related to the project +ListMOAssociatedProject=List of manufacturing orders related to the project +ListTaskTimeUserProject=List of time consumed on tasks of project +ListTaskTimeForTask=List of time consumed on task +ActivityOnProjectToday=Activity on project today +ActivityOnProjectYesterday=Activity on project yesterday +ActivityOnProjectThisWeek=Activity on project this week +ActivityOnProjectThisMonth=Activity on project this month +ActivityOnProjectThisYear=Activity on project this year +ChildOfProjectTask=Child of project/task +ChildOfTask=Child of task +TaskHasChild=Task has child +NotOwnerOfProject=Not owner of this private project +AffectedTo=Allocated to +CantRemoveProject=This project can't be removed as it is referenced by some other objects (invoice, orders or other). See referers tab. +ValidateProject=Validate projet +ConfirmValidateProject=Are you sure you want to validate this project? +CloseAProject=Close project +ConfirmCloseAProject=Are you sure you want to close this project? +AlsoCloseAProject=Also close project (keep it open if you still need to follow production tasks on it) +ReOpenAProject=Open project +ConfirmReOpenAProject=Are you sure you want to re-open this project? +ProjectContact=Contacts of project +TaskContact=Task contacts +ActionsOnProject=Events on project +YouAreNotContactOfProject=You are not a contact of this private project +UserIsNotContactOfProject=User is not a contact of this private project +DeleteATimeSpent=Delete time spent +ConfirmDeleteATimeSpent=Are you sure you want to delete this time spent? +DoNotShowMyTasksOnly=See also tasks not assigned to me +ShowMyTasksOnly=View only tasks assigned to me +TaskRessourceLinks=Contacts of task +ProjectsDedicatedToThisThirdParty=Projects dedicated to this third party +NoTasks=No tasks for this project +LinkedToAnotherCompany=Linked to other third party +TaskIsNotAssignedToUser=Task not assigned to user. Use button '%s' to assign task now. +ErrorTimeSpentIsEmpty=Time spent is empty +ThisWillAlsoRemoveTasks=This action will also delete all tasks of project (%s tasks at the moment) and all inputs of time spent. +IfNeedToUseOtherObjectKeepEmpty=If some objects (invoice, order, ...), belonging to another third party, must be linked to the project to create, keep this empty to have the project being multi third parties. +CloneTasks=Clone tasks +CloneContacts=Clone contacts +CloneNotes=Clone notes +CloneProjectFiles=Clone project joined files +CloneTaskFiles=Clone task(s) joined files (if task(s) cloned) +CloneMoveDate=Update project/tasks dates from now? +ConfirmCloneProject=Are you sure to clone this project? +ProjectReportDate=Change task dates according to new project start date +ErrorShiftTaskDate=Impossible to shift task date according to new project start date +ProjectsAndTasksLines=Projects and tasks +ProjectCreatedInDolibarr=Project %s created +ProjectValidatedInDolibarr=Project %s validated +ProjectModifiedInDolibarr=Project %s modified +TaskCreatedInDolibarr=Task %s created +TaskModifiedInDolibarr=Task %s modified +TaskDeletedInDolibarr=Task %s deleted +OpportunityStatus=Lead status +OpportunityStatusShort=Lead status +OpportunityProbability=Lead probability +OpportunityProbabilityShort=Lead probab. +OpportunityAmount=Lead amount +OpportunityAmountShort=Lead amount +OpportunityWeightedAmount=Opportunity weighted amount +OpportunityWeightedAmountShort=Opp. weighted amount +OpportunityAmountAverageShort=Average lead amount +OpportunityAmountWeigthedShort=Weighted lead amount +WonLostExcluded=Won/Lost excluded +##### Types de contacts ##### +TypeContact_project_internal_PROJECTLEADER=Project leader +TypeContact_project_external_PROJECTLEADER=Project leader +TypeContact_project_internal_PROJECTCONTRIBUTOR=Contributor +TypeContact_project_external_PROJECTCONTRIBUTOR=Contributor +TypeContact_project_task_internal_TASKEXECUTIVE=Task executive +TypeContact_project_task_external_TASKEXECUTIVE=Task executive +TypeContact_project_task_internal_TASKCONTRIBUTOR=Contributor +TypeContact_project_task_external_TASKCONTRIBUTOR=Contributor +SelectElement=Select element +AddElement=Link to element +# Documents models +DocumentModelBeluga=Project document template for linked objects overview +DocumentModelBaleine=Project document template for tasks +DocumentModelTimeSpent=Project report template for time spent +PlannedWorkload=Planned workload +PlannedWorkloadShort=Workload +ProjectReferers=Related items +ProjectMustBeValidatedFirst=Project must be validated first +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time +InputPerDay=Input per day +InputPerWeek=Input per week +InputPerMonth=Input per month +InputDetail=Input detail +TimeAlreadyRecorded=This is time spent already recorded for this task/day and user %s +ProjectsWithThisUserAsContact=Projects with this user as contact +TasksWithThisUserAsContact=Tasks assigned to this user +ResourceNotAssignedToProject=Not assigned to project +ResourceNotAssignedToTheTask=Not assigned to the task +NoUserAssignedToTheProject=No users assigned to this project +TimeSpentBy=Time spent by +TasksAssignedTo=Tasks assigned to +AssignTaskToMe=Assign task to me +AssignTaskToUser=Assign task to %s +SelectTaskToAssign=Select task to assign... +AssignTask=Assign +ProjectOverview=Overview +ManageTasks=Use projects to follow tasks and/or report time spent (timesheets) +ManageOpportunitiesStatus=Use projects to follow leads/opportinuties +ProjectNbProjectByMonth=No. of created projects by month +ProjectNbTaskByMonth=No. of created tasks by month +ProjectOppAmountOfProjectsByMonth=Amount of leads by month +ProjectWeightedOppAmountOfProjectsByMonth=Weighted amount of leads by month +ProjectOpenedProjectByOppStatus=Open project/lead by lead status +ProjectsStatistics=Statistics on projects/leads +TasksStatistics=Statistics on project/lead tasks +TaskAssignedToEnterTime=Task assigned. Entering time on this task should be possible. +IdTaskTime=Id task time +YouCanCompleteRef=If you want to complete the ref with some suffix, it is recommanded to add a - character to separate it, so the automatic numbering will still work correctly for next projects. For example %s-MYSUFFIX +OpenedProjectsByThirdparties=Open projects by third parties +OnlyOpportunitiesShort=Only leads +OpenedOpportunitiesShort=Open leads +NotOpenedOpportunitiesShort=Not an open lead +NotAnOpportunityShort=Not a lead +OpportunityTotalAmount=Total amount of leads +OpportunityPonderatedAmount=Weighted amount of leads +OpportunityPonderatedAmountDesc=Leads amount weighted with probability +OppStatusPROSP=Prospection +OppStatusQUAL=Qualification +OppStatusPROPO=Proposal +OppStatusNEGO=Negociation +OppStatusPENDING=Pending +OppStatusWON=Won +OppStatusLOST=Lost +Budget=Budget +AllowToLinkFromOtherCompany=Allow to link project from other company

    Supported values:
    - Keep empty: Can link any project of the company (default)
    - "all": Can link any projects, even projects of other companies
    - A list of third-party ids separated by commas: can link all projects of these third partys (Example: 123,4795,53)
    +LatestProjects=Latest %s projects +LatestModifiedProjects=Latest %s modified projects +OtherFilteredTasks=Other filtered tasks +NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) +ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you +# Comments trans +AllowCommentOnTask=Allow user comments on tasks +AllowCommentOnProject=Allow user comments on projects +DontHavePermissionForCloseProject=You do not have permissions to close the project %s +DontHaveTheValidateStatus=The project %s must be open to be closed +RecordsClosed=%s project(s) closed +SendProjectRef=Information project %s +ModuleSalaryToDefineHourlyRateMustBeEnabled=Module 'Salaries' must be enabled to define employee hourly rate to have time spent valorized +NewTaskRefSuggested=Task ref already used, a new task ref is required +TimeSpentInvoiced=Time spent billed +TimeSpentForInvoice=Time spent +OneLinePerUser=One line per user +ServiceToUseOnLines=Service to use on lines +InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project +ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. +ProjectFollowOpportunity=Follow opportunity +ProjectFollowTasks=Follow tasks or time spent +Usage=Usage +UsageOpportunity=Usage: Opportunity +UsageTasks=Usage: Tasks +UsageBillTimeShort=Usage: Bill time +InvoiceToUse=Draft invoice to use +NewInvoice=New invoice +OneLinePerTask=One line per task +OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/az_AZ/propal.lang b/htdocs/langs/az_AZ/propal.lang new file mode 100644 index 00000000000..71d6857c909 --- /dev/null +++ b/htdocs/langs/az_AZ/propal.lang @@ -0,0 +1,86 @@ +# Dolibarr language file - Source file is en_US - propal +Proposals=Commercial proposals +Proposal=Commercial proposal +ProposalShort=Proposal +ProposalsDraft=Draft commercial proposals +ProposalsOpened=Open commercial proposals +CommercialProposal=Commercial proposal +PdfCommercialProposalTitle=Commercial proposal +ProposalCard=Proposal card +NewProp=New commercial proposal +NewPropal=New proposal +Prospect=Prospect +DeleteProp=Delete commercial proposal +ValidateProp=Validate commercial proposal +AddProp=Create proposal +ConfirmDeleteProp=Are you sure you want to delete this commercial proposal? +ConfirmValidateProp=Are you sure you want to validate this commercial proposal under name %s? +LastPropals=Latest %s proposals +LastModifiedProposals=Latest %s modified proposals +AllPropals=All proposals +SearchAProposal=Search a proposal +NoProposal=No proposal +ProposalsStatistics=Commercial proposal's statistics +NumberOfProposalsByMonth=Number by month +AmountOfProposalsByMonthHT=Amount by month (excl. tax) +NbOfProposals=Number of commercial proposals +ShowPropal=Show proposal +PropalsDraft=Drafts +PropalsOpened=Open +PropalStatusDraft=Draft (needs to be validated) +PropalStatusValidated=Validated (proposal is open) +PropalStatusSigned=Signed (needs billing) +PropalStatusNotSigned=Not signed (closed) +PropalStatusBilled=Billed +PropalStatusDraftShort=Draft +PropalStatusValidatedShort=Validated (open) +PropalStatusClosedShort=Closed +PropalStatusSignedShort=Signed +PropalStatusNotSignedShort=Not signed +PropalStatusBilledShort=Billed +PropalsToClose=Commercial proposals to close +PropalsToBill=Signed commercial proposals to bill +ListOfProposals=List of commercial proposals +ActionsOnPropal=Events on proposal +RefProposal=Commercial proposal ref +SendPropalByMail=Send commercial proposal by mail +DatePropal=Date of proposal +DateEndPropal=Validity ending date +ValidityDuration=Validity duration +CloseAs=Set status to +SetAcceptedRefused=Set accepted/refused +ErrorPropalNotFound=Propal %s not found +AddToDraftProposals=Add to draft proposal +NoDraftProposals=No draft proposals +CopyPropalFrom=Create commercial proposal by copying existing proposal +CreateEmptyPropal=Create empty commercial proposal or from list of products/services +DefaultProposalDurationValidity=Default commercial proposal validity duration (in days) +UseCustomerContactAsPropalRecipientIfExist=Use contact/address with type 'Contact following-up proposal' if defined instead of third party address as proposal recipient address +ConfirmClonePropal=Are you sure you want to clone the commercial proposal %s? +ConfirmReOpenProp=Are you sure you want to open back the commercial proposal %s? +ProposalsAndProposalsLines=Commercial proposal and lines +ProposalLine=Proposal line +AvailabilityPeriod=Availability delay +SetAvailability=Set availability delay +AfterOrder=after order +OtherProposals=Other proposals +##### Availability ##### +AvailabilityTypeAV_NOW=Immediate +AvailabilityTypeAV_1W=1 week +AvailabilityTypeAV_2W=2 weeks +AvailabilityTypeAV_3W=3 weeks +AvailabilityTypeAV_1M=1 month +##### Types de contacts ##### +TypeContact_propal_internal_SALESREPFOLL=Representative following-up proposal +TypeContact_propal_external_BILLING=Customer invoice contact +TypeContact_propal_external_CUSTOMER=Customer contact following-up proposal +TypeContact_propal_external_SHIPPING=Customer contact for delivery +# Document models +DocModelAzurDescription=A complete proposal model (old implementation of Cyan template) +DocModelCyanDescription=A complete proposal model +DefaultModelPropalCreate=Default model creation +DefaultModelPropalToBill=Default template when closing a business proposal (to be invoiced) +DefaultModelPropalClosed=Default template when closing a business proposal (unbilled) +ProposalCustomerSignature=Written acceptance, company stamp, date and signature +ProposalsStatisticsSuppliers=Vendor proposals statistics +CaseFollowedBy=Case followed by diff --git a/htdocs/langs/az_AZ/receiptprinter.lang b/htdocs/langs/az_AZ/receiptprinter.lang new file mode 100644 index 00000000000..896eaa313dd --- /dev/null +++ b/htdocs/langs/az_AZ/receiptprinter.lang @@ -0,0 +1,95 @@ +# Dolibarr language file - Source file is en_US - receiptprinter +ReceiptPrinterSetup=Setup of module ReceiptPrinter +PrinterAdded=Printer %s added +PrinterUpdated=Printer %s updated +PrinterDeleted=Printer %s deleted +TestSentToPrinter=Test Sent To Printer %s +ReceiptPrinter=Receipt printers +ReceiptPrinterDesc=Setup of receipt printers +ReceiptPrinterTemplateDesc=Setup of Templates +ReceiptPrinterTypeDesc=Description of Receipt Printer's type +ReceiptPrinterProfileDesc=Description of Receipt Printer's Profile +ListPrinters=List of Printers +SetupReceiptTemplate=Template Setup +CONNECTOR_DUMMY=Dummy Printer +CONNECTOR_NETWORK_PRINT=Network Printer +CONNECTOR_FILE_PRINT=Local Printer +CONNECTOR_WINDOWS_PRINT=Local Windows Printer +CONNECTOR_CUPS_PRINT=Cups Printer +CONNECTOR_DUMMY_HELP=Fake Printer for test, does nothing +CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 +CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 +CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L +PROFILE_DEFAULT=Default Profile +PROFILE_SIMPLE=Simple Profile +PROFILE_EPOSTEP=Epos Tep Profile +PROFILE_P822D=P822D Profile +PROFILE_STAR=Star Profile +PROFILE_DEFAULT_HELP=Default Profile suitable for Epson printers +PROFILE_SIMPLE_HELP=Simple Profile No Graphics +PROFILE_EPOSTEP_HELP=Epos Tep Profile +PROFILE_P822D_HELP=P822D Profile No Graphics +PROFILE_STAR_HELP=Star Profile +DOL_LINE_FEED=Skip line +DOL_ALIGN_LEFT=Left align text +DOL_ALIGN_CENTER=Center text +DOL_ALIGN_RIGHT=Right align text +DOL_USE_FONT_A=Use font A of printer +DOL_USE_FONT_B=Use font B of printer +DOL_USE_FONT_C=Use font C of printer +DOL_PRINT_BARCODE=Print barcode +DOL_PRINT_BARCODE_CUSTOMER_ID=Print barcode customer id +DOL_CUT_PAPER_FULL=Cut ticket completely +DOL_CUT_PAPER_PARTIAL=Cut ticket partially +DOL_OPEN_DRAWER=Open cash drawer +DOL_ACTIVATE_BUZZER=Activate buzzer +DOL_PRINT_QRCODE=Print QR Code +DOL_PRINT_LOGO=Print logo of my company +DOL_PRINT_LOGO_OLD=Print logo of my company (old printers) +DOL_BOLD=Bold +DOL_BOLD_DISABLED=Disable bold +DOL_DOUBLE_HEIGHT=Double height size +DOL_DOUBLE_WIDTH=Double width size +DOL_DEFAULT_HEIGHT_WIDTH=Default height and width size +DOL_UNDERLINE=Enable underline +DOL_UNDERLINE_DISABLED=Disable underline +DOL_BEEP=Beed sound +DOL_PRINT_TEXT=Print text +DOL_VALUE_DATE=Invoice date +DOL_VALUE_DATE_TIME=Invoice date and time +DOL_VALUE_YEAR=Invoice year +DOL_VALUE_MONTH_LETTERS=Invoice month in letters +DOL_VALUE_MONTH=Invoice month +DOL_VALUE_DAY=Invoice day +DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Invoice ref +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=Capital +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/az_AZ/receptions.lang b/htdocs/langs/az_AZ/receptions.lang new file mode 100644 index 00000000000..010a7521846 --- /dev/null +++ b/htdocs/langs/az_AZ/receptions.lang @@ -0,0 +1,45 @@ +# Dolibarr language file - Source file is en_US - receptions +ReceptionsSetup=Product Reception setup +RefReception=Ref. reception +Reception=Reception +Receptions=Receptions +AllReceptions=All Receptions +Reception=Reception +Receptions=Receptions +ShowReception=Show Receptions +ReceptionsArea=Receptions area +ListOfReceptions=List of receptions +ReceptionMethod=Reception method +LastReceptions=Latest %s receptions +StatisticsOfReceptions=Statistics for receptions +NbOfReceptions=Number of receptions +NumberOfReceptionsByMonth=Number of receptions by month +ReceptionCard=Reception card +NewReception=New reception +CreateReception=Create reception +QtyInOtherReceptions=Qty in other receptions +OtherReceptionsForSameOrder=Other receptions for this order +ReceptionsAndReceivingForSameOrder=Receptions and receipts for this order +ReceptionsToValidate=Receptions to validate +StatusReceptionCanceled=Canceled +StatusReceptionDraft=Draft +StatusReceptionValidated=Validated (products to ship or already shipped) +StatusReceptionProcessed=Processed +StatusReceptionDraftShort=Draft +StatusReceptionValidatedShort=Validated +StatusReceptionProcessedShort=Processed +ReceptionSheet=Reception sheet +ConfirmDeleteReception=Are you sure you want to delete this reception? +ConfirmValidateReception=Are you sure you want to validate this reception with reference %s? +ConfirmCancelReception=Are you sure you want to cancel this reception? +StatsOnReceptionsOnlyValidated=Statistics conducted on receptions only validated. Date used is date of validation of reception (planed delivery date is not always known). +SendReceptionByEMail=Send reception by email +SendReceptionRef=Submission of reception %s +ActionsOnReception=Events on reception +ReceptionCreationIsDoneFromOrder=For the moment, creation of a new reception is done from the order card. +ReceptionLine=Reception line +ProductQtyInReceptionAlreadySent=Product quantity from open sales order already sent +ProductQtyInSuppliersReceptionAlreadyRecevied=Product quantity from open supplier order already received +ValidateOrderFirstBeforeReception=You must first validate the order before being able to make receptions. +ReceptionsNumberingModules=Numbering module for receptions +ReceptionsReceiptModel=Document templates for receptions diff --git a/htdocs/langs/az_AZ/resource.lang b/htdocs/langs/az_AZ/resource.lang new file mode 100644 index 00000000000..e8574dc680f --- /dev/null +++ b/htdocs/langs/az_AZ/resource.lang @@ -0,0 +1,39 @@ +# Dolibarr language file - Source file is en_US - resource +MenuResourceIndex=Resources +MenuResourceAdd=New resource +DeleteResource=Delete resource +ConfirmDeleteResourceElement=Confirm delete the resource for this element +NoResourceInDatabase=No resource in database. +NoResourceLinked=No resource linked +ActionsOnResource=Events about this resource +ResourcePageIndex=Resources list +ResourceSingular=Resource +ResourceCard=Resource card +AddResource=Create a resource +ResourceFormLabel_ref=Resource name +ResourceType=Resource type +ResourceFormLabel_description=Resource description + +ResourcesLinkedToElement=Resources linked to element + +ShowResource=Show resource + +ResourceElementPage=Element resources +ResourceCreatedWithSuccess=Resource successfully created +RessourceLineSuccessfullyDeleted=Resource line successfully deleted +RessourceLineSuccessfullyUpdated=Resource line successfully updated +ResourceLinkedWithSuccess=Resource linked with success + +ConfirmDeleteResource=Confirm to delete this resource +RessourceSuccessfullyDeleted=Resource successfully deleted +DictionaryResourceType=Type of resources + +SelectResource=Select resource + +IdResource=Id resource +AssetNumber=Serial number +ResourceTypeCode=Resource type code +ImportDataset_resource_1=Resources + +ErrorResourcesAlreadyInUse=Some resources are in use +ErrorResourceUseInEvent=%s used in %s event diff --git a/htdocs/langs/az_AZ/salaries.lang b/htdocs/langs/az_AZ/salaries.lang new file mode 100644 index 00000000000..7c3c08a65bd --- /dev/null +++ b/htdocs/langs/az_AZ/salaries.lang @@ -0,0 +1,21 @@ +# Dolibarr language file - Source file is en_US - salaries +SALARIES_ACCOUNTING_ACCOUNT_PAYMENT=Accounting account used for user third parties +SALARIES_ACCOUNTING_ACCOUNT_PAYMENT_Desc=The dedicated accounting account defined on user card will be used for Subledger accounting only. This one will be used for General Ledger and as default value of Subledger accounting if dedicated user accounting account on user is not defined. +SALARIES_ACCOUNTING_ACCOUNT_CHARGE=Accounting account by default for wage payments +Salary=Salary +Salaries=Salaries +NewSalaryPayment=New salary payment +AddSalaryPayment=Add salary payment +SalaryPayment=Salary payment +SalariesPayments=Salaries payments +ShowSalaryPayment=Show salary payment +THM=Average hourly rate +TJM=Average daily rate +CurrentSalary=Current salary +THMDescription=This value may be used to calculate the cost of time consumed on a project entered by users if module project is used +TJMDescription=This value is currently for information only and is not used for any calculation +LastSalaries=Latest %s salary payments +AllSalaries=All salary payments +SalariesStatistics=Salary statistics +# Export +SalariesAndPayments=Salaries and payments diff --git a/htdocs/langs/az_AZ/sendings.lang b/htdocs/langs/az_AZ/sendings.lang new file mode 100644 index 00000000000..5ce3b7f67e9 --- /dev/null +++ b/htdocs/langs/az_AZ/sendings.lang @@ -0,0 +1,74 @@ +# Dolibarr language file - Source file is en_US - sendings +RefSending=Ref. shipment +Sending=Shipment +Sendings=Shipments +AllSendings=All Shipments +Shipment=Shipment +Shipments=Shipments +ShowSending=Show Shipments +Receivings=Delivery Receipts +SendingsArea=Shipments area +ListOfSendings=List of shipments +SendingMethod=Shipping method +LastSendings=Latest %s shipments +StatisticsOfSendings=Statistics for shipments +NbOfSendings=Number of shipments +NumberOfShipmentsByMonth=Number of shipments by month +SendingCard=Shipment card +NewSending=New shipment +CreateShipment=Create shipment +QtyShipped=Qty shipped +QtyShippedShort=Qty ship. +QtyPreparedOrShipped=Qty prepared or shipped +QtyToShip=Qty to ship +QtyToReceive=Qty to receive +QtyReceived=Qty received +QtyInOtherShipments=Qty in other shipments +KeepToShip=Remain to ship +KeepToShipShort=Remain +OtherSendingsForSameOrder=Other shipments for this order +SendingsAndReceivingForSameOrder=Shipments and receipts for this order +SendingsToValidate=Shipments to validate +StatusSendingCanceled=Canceled +StatusSendingDraft=Draft +StatusSendingValidated=Validated (products to ship or already shipped) +StatusSendingProcessed=Processed +StatusSendingDraftShort=Draft +StatusSendingValidatedShort=Validated +StatusSendingProcessedShort=Processed +SendingSheet=Shipment sheet +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=Warning, no products waiting to be shipped. +StatsOnShipmentsOnlyValidated=Statistics conducted on shipments only validated. Date used is date of validation of shipment (planed delivery date is not always known). +DateDeliveryPlanned=Planned date of delivery +RefDeliveryReceipt=Ref delivery receipt +StatusReceipt=Status delivery receipt +DateReceived=Date delivery received +ClassifyReception=Classify reception +SendShippingByEMail=Send shipment by email +SendShippingRef=Submission of shipment %s +ActionsOnShipping=Events on shipment +LinkToTrackYourPackage=Link to track your package +ShipmentCreationIsDoneFromOrder=For the moment, creation of a new shipment is done from the order card. +ShipmentLine=Shipment line +ProductQtyInCustomersOrdersRunning=Product quantity from open sales orders +ProductQtyInSuppliersOrdersRunning=Product quantity from open purchase orders +ProductQtyInShipmentAlreadySent=Product quantity from open sales order already sent +ProductQtyInSuppliersShipmentAlreadyRecevied=Product quantity from open purchase orders already received +NoProductToShipFoundIntoStock=No product to ship found in warehouse %s. Correct stock or go back to choose another warehouse. +WeightVolShort=Weight/Vol. +ValidateOrderFirstBeforeShipment=You must first validate the order before being able to make shipments. + +# Sending methods +# ModelDocument +DocumentModelTyphon=More complete document model for delivery receipts (logo...) +Error_EXPEDITION_ADDON_NUMBER_NotDefined=Constant EXPEDITION_ADDON_NUMBER not defined +SumOfProductVolumes=Sum of product volumes +SumOfProductWeights=Sum of product weights + +# warehouse details +DetailWarehouseNumber= Warehouse details +DetailWarehouseFormat= W:%s (Qty: %d) diff --git a/htdocs/langs/az_AZ/sms.lang b/htdocs/langs/az_AZ/sms.lang new file mode 100644 index 00000000000..055085eb16a --- /dev/null +++ b/htdocs/langs/az_AZ/sms.lang @@ -0,0 +1,51 @@ +# Dolibarr language file - Source file is en_US - sms +Sms=Sms +SmsSetup=SMS setup +SmsDesc=This page allows you to define global options on SMS features +SmsCard=SMS Card +AllSms=All SMS campaigns +SmsTargets=Targets +SmsRecipients=Targets +SmsRecipient=Target +SmsTitle=Description +SmsFrom=Sender +SmsTo=Target +SmsTopic=Topic of SMS +SmsText=Message +SmsMessage=SMS Message +ShowSms=Show SMS +ListOfSms=List SMS campaigns +NewSms=New SMS campaign +EditSms=Edit SMS +ResetSms=New sending +DeleteSms=Delete SMS campaign +DeleteASms=Remove a SMS campaign +PreviewSms=Previuw SMS +PrepareSms=Prepare SMS +CreateSms=Create SMS +SmsResult=Result of SMS sending +TestSms=Test SMS +ValidSms=Validate SMS +ApproveSms=Approve SMS +SmsStatusDraft=Draft +SmsStatusValidated=Validated +SmsStatusApproved=Approved +SmsStatusSent=Sent +SmsStatusSentPartialy=Sent partially +SmsStatusSentCompletely=Sent completely +SmsStatusError=Error +SmsStatusNotSent=Not sent +SmsSuccessfulySent=SMS correctly sent (from %s to %s) +ErrorSmsRecipientIsEmpty=Number of target is empty +WarningNoSmsAdded=No new phone number to add to target list +ConfirmValidSms=Do you confirm validation of this campaign? +NbOfUniqueSms=No. of unique phone numbers +NbOfSms=No. of phone numbers +ThisIsATestMessage=This is a test message +SendSms=Send SMS +SmsInfoCharRemain=No. of remaining characters +SmsInfoNumero= (international format i.e.: +33899701761) +DelayBeforeSending=Delay before sending (minutes) +SmsNoPossibleSenderFound=No sender available. Check setup of your SMS provider. +SmsNoPossibleRecipientFound=No target available. Check setup of your SMS provider. +DisableStopIfSupported=Disable STOP message (if supported) diff --git a/htdocs/langs/az_AZ/stocks.lang b/htdocs/langs/az_AZ/stocks.lang new file mode 100644 index 00000000000..9856649b834 --- /dev/null +++ b/htdocs/langs/az_AZ/stocks.lang @@ -0,0 +1,220 @@ +# Dolibarr language file - Source file is en_US - stocks +WarehouseCard=Warehouse card +Warehouse=Warehouse +Warehouses=Warehouses +ParentWarehouse=Parent warehouse +NewWarehouse=New warehouse / Stock Location +WarehouseEdit=Modify warehouse +MenuNewWarehouse=New warehouse +WarehouseSource=Source warehouse +WarehouseSourceNotDefined=No warehouse defined, +AddWarehouse=Create warehouse +AddOne=Add one +DefaultWarehouse=Default warehouse +WarehouseTarget=Target warehouse +ValidateSending=Delete sending +CancelSending=Cancel sending +DeleteSending=Delete sending +Stock=Stock +Stocks=Stocks +StocksByLotSerial=Stocks by lot/serial +LotSerial=Lots/Serials +LotSerialList=List of lot/serials +Movements=Movements +ErrorWarehouseRefRequired=Warehouse reference name is required +ListOfWarehouses=List of warehouses +ListOfStockMovements=List of stock movements +ListOfInventories=List of inventories +MovementId=Movement ID +StockMovementForId=Movement ID %d +ListMouvementStockProject=List of stock movements associated to project +StocksArea=Warehouses area +AllWarehouses=All warehouses +IncludeAlsoDraftOrders=Include also draft orders +Location=Location +LocationSummary=Short name location +NumberOfDifferentProducts=Number of different products +NumberOfProducts=Total number of products +LastMovement=Latest movement +LastMovements=Latest movements +Units=Units +Unit=Unit +StockCorrection=Stock correction +CorrectStock=Correct stock +StockTransfer=Stock transfer +TransferStock=Transfer stock +MassStockTransferShort=Mass stock transfer +StockMovement=Stock movement +StockMovements=Stock movements +NumberOfUnit=Number of units +UnitPurchaseValue=Unit purchase price +StockTooLow=Stock too low +StockLowerThanLimit=Stock lower than alert limit (%s) +EnhancedValue=Value +PMPValue=Weighted average price +PMPValueShort=WAP +EnhancedValueOfWarehouses=Warehouses value +UserWarehouseAutoCreate=Create a user warehouse automatically when creating a user +AllowAddLimitStockByWarehouse=Manage also value for minimum and desired stock per pairing (product-warehouse) in addition to the value for minimum and desired stock per product +IndependantSubProductStock=Product stock and subproduct stock are independent +QtyDispatched=Quantity dispatched +QtyDispatchedShort=Qty dispatched +QtyToDispatchShort=Qty to dispatch +OrderDispatch=Item receipts +RuleForStockManagementDecrease=Choose Rule for automatic stock decrease (manual decrease is always possible, even if an automatic decrease rule is activated) +RuleForStockManagementIncrease=Choose Rule for automatic stock increase (manual increase is always possible, even if an automatic increase rule is activated) +DeStockOnBill=Decrease real stocks on validation of customer invoice/credit note +DeStockOnValidateOrder=Decrease real stocks on validation of sales order +DeStockOnShipment=Decrease real stocks on shipping validation +DeStockOnShipmentOnClosing=Decrease real stocks when shipping is set to closed +ReStockOnBill=Increase real stocks on validation of vendor invoice/credit note +ReStockOnValidateOrder=Increase real stocks on purchase order approval +ReStockOnDispatchOrder=Increase real stocks on manual dispatching into warehouse, after purchase order receipt of goods +StockOnReception=Increase real stocks on validation of reception +StockOnReceptionOnClosing=Increase real stocks when reception is set to closed +OrderStatusNotReadyToDispatch=Order has not yet or no more a status that allows dispatching of products in stock warehouses. +StockDiffPhysicTeoric=Explanation for difference between physical and virtual stock +NoPredefinedProductToDispatch=No predefined products for this object. So no dispatching in stock is required. +DispatchVerb=Dispatch +StockLimitShort=Limit for alert +StockLimit=Stock limit for alert +StockLimitDesc=(empty) means no warning.
    0 can be used for a warning as soon as stock is empty. +PhysicalStock=Physical Stock +RealStock=Real Stock +RealStockDesc=Physical/real stock is the stock currently in the warehouses. +RealStockWillAutomaticallyWhen=The real stock will be modified according to this rule (as defined in the Stock module): +VirtualStock=Virtual stock +VirtualStockDesc=Virtual stock is the calculated stock available once all open/pending actions (that affect stocks) are closed (purchase orders received, sales orders shipped etc.) +IdWarehouse=Id warehouse +DescWareHouse=Description warehouse +LieuWareHouse=Localisation warehouse +WarehousesAndProducts=Warehouses and products +WarehousesAndProductsBatchDetail=Warehouses and products (with detail per lot/serial) +AverageUnitPricePMPShort=Weighted average input price +AverageUnitPricePMP=Weighted average input price +SellPriceMin=Selling Unit Price +EstimatedStockValueSellShort=Value for sell +EstimatedStockValueSell=Value for sell +EstimatedStockValueShort=Input stock value +EstimatedStockValue=Input stock value +DeleteAWarehouse=Delete a warehouse +ConfirmDeleteWarehouse=Are you sure you want to delete the warehouse %s? +PersonalStock=Personal stock %s +ThisWarehouseIsPersonalStock=This warehouse represents personal stock of %s %s +SelectWarehouseForStockDecrease=Choose warehouse to use for stock decrease +SelectWarehouseForStockIncrease=Choose warehouse to use for stock increase +NoStockAction=No stock action +DesiredStock=Desired Stock +DesiredStockDesc=This stock amount will be the value used to fill the stock by replenishment feature. +StockToBuy=To order +Replenishment=Replenishment +ReplenishmentOrders=Replenishment orders +VirtualDiffersFromPhysical=According to increase/decrease stock options, physical stock and virtual stock (physical + current orders) may differ +UseVirtualStockByDefault=Use virtual stock by default, instead of physical stock, for replenishment feature +UseVirtualStock=Use virtual stock +UsePhysicalStock=Use physical stock +CurentSelectionMode=Current selection mode +CurentlyUsingVirtualStock=Virtual stock +CurentlyUsingPhysicalStock=Physical stock +RuleForStockReplenishment=Rule for stocks replenishment +SelectProductWithNotNullQty=Select at least one product with a qty not null and a vendor +AlertOnly= Alerts only +WarehouseForStockDecrease=The warehouse %s will be used for stock decrease +WarehouseForStockIncrease=The warehouse %s will be used for stock increase +ForThisWarehouse=For this warehouse +ReplenishmentStatusDesc=This is a list of all products with a stock lower than desired stock (or lower than alert value if checkbox "alert only" is checked). Using the checkbox, you can create purchase orders to fill the difference. +ReplenishmentOrdersDesc=This is a list of all open purchase orders including predefined products. Only open orders with predefined products, so orders that may affect stocks, are visible here. +Replenishments=Replenishments +NbOfProductBeforePeriod=Quantity of product %s in stock before selected period (< %s) +NbOfProductAfterPeriod=Quantity of product %s in stock after selected period (> %s) +MassMovement=Mass movement +SelectProductInAndOutWareHouse=Select a product, a quantity, a source warehouse and a target warehouse, then click "%s". Once this is done for all required movements, click onto "%s". +RecordMovement=Record transfer +ReceivingForSameOrder=Receipts for this order +StockMovementRecorded=Stock movements recorded +RuleForStockAvailability=Rules on stock requirements +StockMustBeEnoughForInvoice=Stock level must be enough to add product/service to invoice (check is done on current real stock when adding a line into invoice whatever the rule for automatic stock change) +StockMustBeEnoughForOrder=Stock level must be enough to add product/service to order (check is done on current real stock when adding a line into order whatever the rule for automatic stock change) +StockMustBeEnoughForShipment= Stock level must be enough to add product/service to shipment (check is done on current real stock when adding a line into shipment whatever the rule for automatic stock change) +MovementLabel=Label of movement +TypeMovement=Type of movement +DateMovement=Date of movement +InventoryCode=Movement or inventory code +IsInPackage=Contained into package +WarehouseAllowNegativeTransfer=Stock can be negative +qtyToTranferIsNotEnough=You don't have enough stock from your source warehouse and your setup does not allow negative stocks. +qtyToTranferLotIsNotEnough=You don't have enough stock, for this lot number, from your source warehouse and your setup does not allow negative stocks (Qty for product '%s' with lot '%s' is %s in warehouse '%s'). +ShowWarehouse=Show warehouse +MovementCorrectStock=Stock correction for product %s +MovementTransferStock=Stock transfer of product %s into another warehouse +InventoryCodeShort=Inv./Mov. code +NoPendingReceptionOnSupplierOrder=No pending reception due to open purchase order +ThisSerialAlreadyExistWithDifferentDate=This lot/serial number (%s) already exists but with different eatby or sellby date (found %s but you enter %s). +OpenAll=Open for all actions +OpenInternal=Open only for internal actions +UseDispatchStatus=Use a dispatch status (approve/refuse) for product lines on purchase order reception +OptionMULTIPRICESIsOn=Option "several prices per segment" is on. It means a product has several selling price so value for sell can't be calculated +ProductStockWarehouseCreated=Stock limit for alert and desired optimal stock correctly created +ProductStockWarehouseUpdated=Stock limit for alert and desired optimal stock correctly updated +ProductStockWarehouseDeleted=Stock limit for alert and desired optimal stock correctly deleted +AddNewProductStockWarehouse=Set new limit for alert and desired optimal stock +AddStockLocationLine=Decrease quantity then click to add another warehouse for this product +InventoryDate=Inventory date +NewInventory=New inventory +inventorySetup = Inventory Setup +inventoryCreatePermission=Create new inventory +inventoryReadPermission=View inventories +inventoryWritePermission=Update inventories +inventoryValidatePermission=Validate inventory +inventoryTitle=Inventory +inventoryListTitle=Inventories +inventoryListEmpty=No inventory in progress +inventoryCreateDelete=Create/Delete inventory +inventoryCreate=Create new +inventoryEdit=Edit +inventoryValidate=Validated +inventoryDraft=Running +inventorySelectWarehouse=Warehouse choice +inventoryConfirmCreate=Create +inventoryOfWarehouse=Inventory for warehouse: %s +inventoryErrorQtyAdd=Error: one quantity is less than zero +inventoryMvtStock=By inventory +inventoryWarningProductAlreadyExists=This product is already into list +SelectCategory=Category filter +SelectFournisseur=Vendor filter +inventoryOnDate=Inventory +INVENTORY_DISABLE_VIRTUAL=Virtual product (kit): do not decrement stock of a child product +INVENTORY_USE_MIN_PA_IF_NO_LAST_PA=Use the buy price if no last buy price can be found +INVENTORY_USE_INVENTORY_DATE_FOR_DATE_OF_MVT=Stock movements will have the date of inventory (instead of the date of inventory validation) +inventoryChangePMPPermission=Allow to change PMP value for a product +ColumnNewPMP=New unit PMP +OnlyProdsInStock=Do not add product without stock +TheoricalQty=Theorique qty +TheoricalValue=Theorique qty +LastPA=Last BP +CurrentPA=Curent BP +RecordedQty=Recorded Qty +RealQty=Real Qty +RealValue=Real Value +RegulatedQty=Regulated Qty +AddInventoryProduct=Add product to inventory +AddProduct=Add +ApplyPMP=Apply PMP +FlushInventory=Flush inventory +ConfirmFlushInventory=Do you confirm this action? +InventoryFlushed=Inventory flushed +ExitEditMode=Exit edition +inventoryDeleteLine=Delete line +RegulateStock=Regulate Stock +ListInventory=List +StockSupportServices=Stock management supports Services +StockSupportServicesDesc=By default, you can stock only products of type "product". You may also stock a product of type "service" if both module Services and this option are enabled. +ReceiveProducts=Receive items +StockIncreaseAfterCorrectTransfer=Increase by correction/transfer +StockDecreaseAfterCorrectTransfer=Decrease by correction/transfer +StockIncrease=Stock increase +StockDecrease=Stock decrease +InventoryForASpecificWarehouse=Inventory for a specific warehouse +InventoryForASpecificProduct=Inventory for a specific product +StockIsRequiredToChooseWhichLotToUse=Stock is required to choose which lot to use +ForceTo=Force to diff --git a/htdocs/langs/az_AZ/stripe.lang b/htdocs/langs/az_AZ/stripe.lang new file mode 100644 index 00000000000..844762040af --- /dev/null +++ b/htdocs/langs/az_AZ/stripe.lang @@ -0,0 +1,72 @@ +# Dolibarr language file - Source file is en_US - stripe +StripeSetup=Stripe module setup +StripeDesc=Offer customers a Stripe online payment page for payments with credit/cebit cards via Stripe. This can be used to allow your customers to make ad-hoc payments or for payments related to a particular Dolibarr object (invoice, order, ...) +StripeOrCBDoPayment=Pay with credit card or Stripe +FollowingUrlAreAvailableToMakePayments=Following URLs are available to offer a page to a customer to make a payment on Dolibarr objects +PaymentForm=Payment form +WelcomeOnPaymentPage=Welcome to our online payment service +ThisScreenAllowsYouToPay=This screen allow you to make an online payment to %s. +ThisIsInformationOnPayment=This is information on payment to do +ToComplete=To complete +YourEMail=Email to receive payment confirmation +STRIPE_PAYONLINE_SENDEMAIL=Email notification after a payment attempt (success or fail) +Creditor=Creditor +PaymentCode=Payment code +StripeDoPayment=Pay with Stripe +YouWillBeRedirectedOnStripe=You will be redirected on secured Stripe page to input you credit card information +Continue=Next +ToOfferALinkForOnlinePayment=URL for %s payment +ToOfferALinkForOnlinePaymentOnOrder=URL to offer a %s online payment page for a sales order +ToOfferALinkForOnlinePaymentOnInvoice=URL to offer a %s online payment page for a customer invoice +ToOfferALinkForOnlinePaymentOnContractLine=URL to offer a %s online payment page for a contract line +ToOfferALinkForOnlinePaymentOnFreeAmount=URL to offer a %s online payment page of any amount with no existing object +ToOfferALinkForOnlinePaymentOnMemberSubscription=URL to offer a %s online payment page for a member subscription +ToOfferALinkForOnlinePaymentOnDonation=URL to offer a %s online payment page for payment of a donation +YouCanAddTagOnUrl=You can also add url parameter &tag=value to any of those URL (mandatory only for payment not linked to an object) to add your own payment comment tag.
    For the URL of payments with no existing object, you may also add the parameter &noidempotency=1 so the same link with same tag can be used several times (some payment mode may limit the payment to 1 for each different link without this parameter) +SetupStripeToHavePaymentCreatedAutomatically=Setup your Stripe with url %s to have payment created automatically when validated by Stripe. +AccountParameter=Account parameters +UsageParameter=Usage parameters +InformationToFindParameters=Help to find your %s account information +STRIPE_CGI_URL_V2=Url of Stripe CGI module for payment +VendorName=Name of vendor +CSSUrlForPaymentForm=CSS style sheet url for payment form +NewStripePaymentReceived=New Stripe payment received +NewStripePaymentFailed=New Stripe payment tried but failed +FailedToChargeCard=Failed to charge card +STRIPE_TEST_SECRET_KEY=Secret test key +STRIPE_TEST_PUBLISHABLE_KEY=Publishable test key +STRIPE_TEST_WEBHOOK_KEY=Webhook test key +STRIPE_LIVE_SECRET_KEY=Secret live key +STRIPE_LIVE_PUBLISHABLE_KEY=Publishable live key +STRIPE_LIVE_WEBHOOK_KEY=Webhook live key +ONLINE_PAYMENT_WAREHOUSE=Stock to use for stock decrease when online payment is done
    (TODO When option to decrease stock is done on an action on invoice and the online payment generate itself the invoice ?) +StripeLiveEnabled=Stripe live enabled (otherwise test/sandbox mode) +StripeImportPayment=Import Stripe payments +ExampleOfTestCreditCard=Example of credit card for test: %s => valid, %s => error CVC, %s => expired, %s => charge fails +StripeGateways=Stripe gateways +OAUTH_STRIPE_TEST_ID=Stripe Connect Client ID (ca_...) +OAUTH_STRIPE_LIVE_ID=Stripe Connect Client ID (ca_...) +BankAccountForBankTransfer=Bank account for fund payouts +StripeAccount=Stripe account +StripeChargeList=List of Stripe charges +StripeTransactionList=List of Stripe transactions +StripeCustomerId=Stripe customer id +StripePaymentModes=Stripe payment modes +LocalID=Local ID +StripeID=Stripe ID +NameOnCard=Name on card +CardNumber=Card Number +ExpiryDate=Expiry Date +CVN=CVN +DeleteACard=Delete Card +ConfirmDeleteCard=Are you sure you want to delete this Credit or Debit card? +CreateCustomerOnStripe=Create customer on Stripe +CreateCardOnStripe=Create card on Stripe +ShowInStripe=Show in Stripe +StripeUserAccountForActions=User account to use for email notification of some Stripe events (Stripe payouts) +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... +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/az_AZ/supplier_proposal.lang b/htdocs/langs/az_AZ/supplier_proposal.lang new file mode 100644 index 00000000000..ce5bdf0425a --- /dev/null +++ b/htdocs/langs/az_AZ/supplier_proposal.lang @@ -0,0 +1,54 @@ +# Dolibarr language file - Source file is en_US - supplier_proposal +SupplierProposal=Vendor commercial proposals +supplier_proposalDESC=Manage price requests to suppliers +SupplierProposalNew=New price request +CommRequest=Price request +CommRequests=Price requests +SearchRequest=Find a request +DraftRequests=Draft requests +SupplierProposalsDraft=Draft vendor proposals +LastModifiedRequests=Latest %s modified price requests +RequestsOpened=Open price requests +SupplierProposalArea=Vendor proposals area +SupplierProposalShort=Vendor proposal +SupplierProposals=Vendor proposals +SupplierProposalsShort=Vendor proposals +NewAskPrice=New price request +ShowSupplierProposal=Show price request +AddSupplierProposal=Create a price request +SupplierProposalRefFourn=Vendor ref +SupplierProposalDate=Delivery date +SupplierProposalRefFournNotice=Before closing to "Accepted", think to grasp suppliers references. +ConfirmValidateAsk=Are you sure you want to validate this price request under name %s? +DeleteAsk=Delete request +ValidateAsk=Validate request +SupplierProposalStatusDraft=Draft (needs to be validated) +SupplierProposalStatusValidated=Validated (request is open) +SupplierProposalStatusClosed=Closed +SupplierProposalStatusSigned=Accepted +SupplierProposalStatusNotSigned=Refused +SupplierProposalStatusDraftShort=Draft +SupplierProposalStatusValidatedShort=Validated +SupplierProposalStatusClosedShort=Closed +SupplierProposalStatusSignedShort=Accepted +SupplierProposalStatusNotSignedShort=Refused +CopyAskFrom=Create a price request by copying an existing request +CreateEmptyAsk=Create blank request +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=Send price request by mail +SendAskRef=Sending the price request %s +SupplierProposalCard=Request card +ConfirmDeleteAsk=Are you sure you want to delete this price request %s? +ActionsOnSupplierProposal=Events on price request +DocModelAuroreDescription=A complete request model (logo...) +CommercialAsk=Price request +DefaultModelSupplierProposalCreate=Default model creation +DefaultModelSupplierProposalToBill=Default template when closing a price request (accepted) +DefaultModelSupplierProposalClosed=Default template when closing a price request (refused) +ListOfSupplierProposals=List of vendor proposal requests +ListSupplierProposalsAssociatedProject=List of vendor proposals associated with project +SupplierProposalsToClose=Vendor proposals to close +SupplierProposalsToProcess=Vendor proposals to process +LastSupplierProposals=Latest %s price requests +AllPriceRequests=All requests diff --git a/htdocs/langs/az_AZ/suppliers.lang b/htdocs/langs/az_AZ/suppliers.lang new file mode 100644 index 00000000000..b69b11272b4 --- /dev/null +++ b/htdocs/langs/az_AZ/suppliers.lang @@ -0,0 +1,47 @@ +# Dolibarr language file - Source file is en_US - vendors +Suppliers=Vendors +SuppliersInvoice=Vendor invoice +ShowSupplierInvoice=Show Vendor Invoice +NewSupplier=New vendor +History=History +ListOfSuppliers=List of vendors +ShowSupplier=Show vendor +OrderDate=Order date +BuyingPriceMin=Best buying price +BuyingPriceMinShort=Best buying price +TotalBuyingPriceMinShort=Total of subproducts buying prices +TotalSellingPriceMinShort=Total of subproducts selling prices +SomeSubProductHaveNoPrices=Some sub-products have no price defined +AddSupplierPrice=Add buying price +ChangeSupplierPrice=Change buying price +SupplierPrices=Vendor prices +ReferenceSupplierIsAlreadyAssociatedWithAProduct=This vendor reference is already associated with a product: %s +NoRecordedSuppliers=No vendor recorded +SupplierPayment=Vendor payment +SuppliersArea=Vendor area +RefSupplierShort=Ref. vendor +Availability=Availability +ExportDataset_fournisseur_1=Vendor invoices and invoice details +ExportDataset_fournisseur_2=Vendor invoices and payments +ExportDataset_fournisseur_3=Purchase orders and order details +ApproveThisOrder=Approve this order +ConfirmApproveThisOrder=Are you sure you want to approve order %s? +DenyingThisOrder=Deny this order +ConfirmDenyingThisOrder=Are you sure you want to deny this order %s? +ConfirmCancelThisOrder=Are you sure you want to cancel this order %s? +AddSupplierOrder=Create Purchase Order +AddSupplierInvoice=Create vendor invoice +ListOfSupplierProductForSupplier=List of products and prices for vendor %s +SentToSuppliers=Sent to vendors +ListOfSupplierOrders=List of purchase orders +MenuOrdersSupplierToBill=Purchase orders to invoice +NbDaysToDelivery=Delivery delay (days) +DescNbDaysToDelivery=The longest delivery delay of the products from this order +SupplierReputation=Vendor reputation +DoNotOrderThisProductToThisSupplier=Do not order +NotTheGoodQualitySupplier=Low quality +ReputationForThisProduct=Reputation +BuyerName=Buyer name +AllProductServicePrices=All product / service prices +AllProductReferencesOfSupplier=All product / service references of vendor +BuyingPriceNumShort=Vendor prices diff --git a/htdocs/langs/az_AZ/ticket.lang b/htdocs/langs/az_AZ/ticket.lang new file mode 100644 index 00000000000..80518c3401a --- /dev/null +++ b/htdocs/langs/az_AZ/ticket.lang @@ -0,0 +1,305 @@ +# en_US lang file for module ticket +# Copyright (C) 2013 Jean-François FERRY +# +# 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 . + +# +# Generic +# + +Module56000Name=Tickets +Module56000Desc=Ticket system for issue or request management + +Permission56001=See tickets +Permission56002=Modify tickets +Permission56003=Delete tickets +Permission56004=Manage tickets +Permission56005=See tickets of all third parties (not effective for external users, always be limited to the third party they depend on) + +TicketDictType=Ticket - Types +TicketDictCategory=Ticket - Groupes +TicketDictSeverity=Ticket - Severities +TicketDictResolution=Ticket - Resolution +TicketTypeShortBUGSOFT=Dysfonctionnement logiciel +TicketTypeShortBUGHARD=Dysfonctionnement matériel +TicketTypeShortCOM=Commercial question + +TicketTypeShortHELP=Request for functionnal help +TicketTypeShortISSUE=Issue, bug or problem +TicketTypeShortREQUEST=Change or enhancement request +TicketTypeShortPROJET=Project +TicketTypeShortOTHER=Other + +TicketSeverityShortLOW=Low +TicketSeverityShortNORMAL=Normal +TicketSeverityShortHIGH=High +TicketSeverityShortBLOCKING=Critical/Blocking + +ErrorBadEmailAddress=Field '%s' incorrect +MenuTicketMyAssign=My tickets +MenuTicketMyAssignNonClosed=My open tickets +MenuListNonClosed=Open tickets + +TypeContact_ticket_internal_CONTRIBUTOR=Contributor +TypeContact_ticket_internal_SUPPORTTEC=Assigned user +TypeContact_ticket_external_SUPPORTCLI=Customer contact / incident tracking +TypeContact_ticket_external_CONTRIBUTOR=External contributor + +OriginEmail=Email source +Notify_TICKET_SENTBYMAIL=Send ticket message by email + +# Status +NotRead=Not read +Read=Read +Assigned=Assigned +InProgress=In progress +NeedMoreInformation=Waiting for information +Answered=Answered +Waiting=Waiting +Closed=Closed +Deleted=Deleted + +# Dict +Type=Type +Category=Analytic code +Severity=Severity + +# Email templates +MailToSendTicketMessage=To send email from ticket message + +# +# Admin page +# +TicketSetup=Ticket module setup +TicketSettings=Settings +TicketSetupPage= +TicketPublicAccess=A public interface requiring no identification is available at the following url +TicketSetupDictionaries=The type of ticket, severity and analytic codes are configurable from dictionaries +TicketParamModule=Module variable setup +TicketParamMail=Email setup +TicketEmailNotificationFrom=Notification email from +TicketEmailNotificationFromHelp=Used into ticket message answer by example +TicketEmailNotificationTo=Notifications email to +TicketEmailNotificationToHelp=Send email notifications to this address. +TicketNewEmailBodyLabel=Text message sent after creating a ticket +TicketNewEmailBodyHelp=The text specified here will be inserted into the email confirming the creation of a new ticket from the public interface. Information on the consultation of the ticket are automatically added. +TicketParamPublicInterface=Public interface setup +TicketsEmailMustExist=Require an existing email address to create a ticket +TicketsEmailMustExistHelp=In the public interface, the email address should already be filled in the database to create a new ticket. +PublicInterface=Public interface +TicketUrlPublicInterfaceLabelAdmin=Alternative URL for public interface +TicketUrlPublicInterfaceHelpAdmin=It is possible to define an alias to the web server and thus make available the public interface with another URL (the server must act as a proxy on this new URL) +TicketPublicInterfaceTextHomeLabelAdmin=Welcome text of the public interface +TicketPublicInterfaceTextHome=You can create a support ticket or view existing from its identifier tracking ticket. +TicketPublicInterfaceTextHomeHelpAdmin=The text defined here will appear on the home page of the public interface. +TicketPublicInterfaceTopicLabelAdmin=Interface title +TicketPublicInterfaceTopicHelp=This text will appear as the title of the public interface. +TicketPublicInterfaceTextHelpMessageLabelAdmin=Help text to the message entry +TicketPublicInterfaceTextHelpMessageHelpAdmin=This text will appear above the message input area of the user. +ExtraFieldsTicket=Extra attributes +TicketCkEditorEmailNotActivated=HTML editor is not activated. Please put FCKEDITOR_ENABLE_MAIL content to 1 to get it. +TicketsDisableEmail=Do not send emails for ticket creation or message recording +TicketsDisableEmailHelp=By default, emails are sent when new tickets or messages created. Enable this option to disable *all* email notifications +TicketsLogEnableEmail=Enable log by email +TicketsLogEnableEmailHelp=At each change, an email will be sent **to each contact** associated with the ticket. +TicketParams=Params +TicketsShowModuleLogo=Display the logo of the module in the public interface +TicketsShowModuleLogoHelp=Enable this option to hide the logo module in the pages of the public interface +TicketsShowCompanyLogo=Display the logo of the company in the public interface +TicketsShowCompanyLogoHelp=Enable this option to hide the logo of the main company in the pages of the public interface +TicketsEmailAlsoSendToMainAddress=Also send notification to main email address +TicketsEmailAlsoSendToMainAddressHelp=Enable this option to send an email to "Notification email from" address (see setup below) +TicketsLimitViewAssignedOnly=Restrict the display to tickets assigned to the current user (not effective for external users, always be limited to the third party they depend on) +TicketsLimitViewAssignedOnlyHelp=Only tickets assigned to the current user will be visible. Does not apply to a user with tickets management rights. +TicketsActivatePublicInterface=Activate public interface +TicketsActivatePublicInterfaceHelp=Public interface allow any visitors to create tickets. +TicketsAutoAssignTicket=Automatically assign the user who created the ticket +TicketsAutoAssignTicketHelp=When creating a ticket, the user can be automatically assigned to the ticket. +TicketNumberingModules=Tickets numbering module +TicketNotifyTiersAtCreation=Notify third party at creation +TicketGroup=Group +TicketsDisableCustomerEmail=Always disable emails when a ticket is created from public interface +# +# Index & list page +# +TicketsIndex=Tickets area +TicketList=List of tickets +TicketAssignedToMeInfos=This page display ticket list created by or assigned to current user +NoTicketsFound=No ticket found +NoUnreadTicketsFound=No unread ticket found +TicketViewAllTickets=View all tickets +TicketViewNonClosedOnly=View only open tickets +TicketStatByStatus=Tickets by status +OrderByDateAsc=Sort by ascending date +OrderByDateDesc=Sort by descending date +ShowAsConversation=Show as conversation list +MessageListViewType=Show as table list + +# +# Ticket card +# +Ticket=Ticket +TicketCard=Ticket card +CreateTicket=Create ticket +EditTicket=Edit ticket +TicketsManagement=Tickets Management +CreatedBy=Created by +NewTicket=New Ticket +SubjectAnswerToTicket=Ticket answer +TicketTypeRequest=Request type +TicketCategory=Analytic code +SeeTicket=See ticket +TicketMarkedAsRead=Ticket has been marked as read +TicketReadOn=Read on +TicketCloseOn=Closing date +MarkAsRead=Mark ticket as read +TicketHistory=Ticket history +AssignUser=Assign to user +TicketAssigned=Ticket is now assigned +TicketChangeType=Change type +TicketChangeCategory=Change analytic code +TicketChangeSeverity=Change severity +TicketAddMessage=Add a message +AddMessage=Add a message +MessageSuccessfullyAdded=Ticket added +TicketMessageSuccessfullyAdded=Message successfully added +TicketMessagesList=Message list +NoMsgForThisTicket=No message for this ticket +Properties=Classification +LatestNewTickets=Latest %s newest tickets (not read) +TicketSeverity=Severity +ShowTicket=See ticket +RelatedTickets=Related tickets +TicketAddIntervention=Create intervention +CloseTicket=Close ticket +CloseATicket=Close a ticket +ConfirmCloseAticket=Confirm ticket closing +ConfirmDeleteTicket=Please confirm ticket deleting +TicketDeletedSuccess=Ticket deleted with success +TicketMarkedAsClosed=Ticket marked as closed +TicketDurationAuto=Calculated duration +TicketDurationAutoInfos=Duration calculated automatically from intervention related +TicketUpdated=Ticket updated +SendMessageByEmail=Send message by email +TicketNewMessage=New message +ErrorMailRecipientIsEmptyForSendTicketMessage=Recipient is empty. No email send +TicketGoIntoContactTab=Please go into "Contacts" tab to select them +TicketMessageMailIntro=Introduction +TicketMessageMailIntroHelp=This text is added only at the beginning of the email and will not be saved. +TicketMessageMailIntroLabelAdmin=Introduction to the message when sending email +TicketMessageMailIntroText=Hello,
    A new response was sent on a ticket that you contact. Here is the message:
    +TicketMessageMailIntroHelpAdmin=This text will be inserted before the text of the response to a ticket. +TicketMessageMailSignature=Signature +TicketMessageMailSignatureHelp=This text is added only at the end of the email and will not be saved. +TicketMessageMailSignatureText=

    Sincerely,

    --

    +TicketMessageMailSignatureLabelAdmin=Signature of response email +TicketMessageMailSignatureHelpAdmin=This text will be inserted after the response message. +TicketMessageHelp=Only this text will be saved in the message list on ticket card. +TicketMessageSubstitutionReplacedByGenericValues=Substitutions variables are replaced by generic values. +TimeElapsedSince=Time elapsed since +TicketTimeToRead=Time elapsed before read +TicketContacts=Contacts ticket +TicketDocumentsLinked=Documents linked to ticket +ConfirmReOpenTicket=Confirm reopen this ticket ? +TicketMessageMailIntroAutoNewPublicMessage=A new message was posted on the ticket with the subject %s: +TicketAssignedToYou=Ticket assigned +TicketAssignedEmailBody=You have been assigned the ticket #%s by %s +MarkMessageAsPrivate=Mark message as private +TicketMessagePrivateHelp=This message will not display to external users +TicketEmailOriginIssuer=Issuer at origin of the tickets +InitialMessage=Initial Message +LinkToAContract=Link to a contract +TicketPleaseSelectAContract=Select a contract +UnableToCreateInterIfNoSocid=Can not create an intervention when no third party is defined +TicketMailExchanges=Mail exchanges +TicketInitialMessageModified=Initial message modified +TicketMessageSuccesfullyUpdated=Message successfully updated +TicketChangeStatus=Change status +TicketConfirmChangeStatus=Confirm the status change: %s ? +TicketLogStatusChanged=Status changed: %s to %s +TicketNotNotifyTiersAtCreate=Not notify company at create +Unread=Unread +TicketNotCreatedFromPublicInterface=Not available. Ticket was not created from public interface. +PublicInterfaceNotEnabled=Public interface was not enabled +ErrorTicketRefRequired=Ticket reference name is required + +# +# Logs +# +TicketLogMesgReadBy=Ticket %s read by %s +NoLogForThisTicket=No log for this ticket yet +TicketLogAssignedTo=Ticket %s assigned to %s +TicketLogPropertyChanged=Ticket %s modified: classification from %s to %s +TicketLogClosedBy=Ticket %s closed by %s +TicketLogReopen=Ticket %s re-open + +# +# Public pages +# +TicketSystem=Ticket system +ShowListTicketWithTrackId=Display ticket list from track ID +ShowTicketWithTrackId=Display ticket from track ID +TicketPublicDesc=You can create a support ticket or check from an existing ID. +YourTicketSuccessfullySaved=Ticket has been successfully saved! +MesgInfosPublicTicketCreatedWithTrackId=A new ticket has been created with ID %s and Ref %s. +PleaseRememberThisId=Please keep the tracking number that we might ask you later. +TicketNewEmailSubject=Ticket creation confirmation - Ref %s (public ticket ID %s) +TicketNewEmailSubjectCustomer=New support ticket +TicketNewEmailBody=This is an automatic email to confirm you have registered a new ticket. +TicketNewEmailBodyCustomer=This is an automatic email to confirm a new ticket has just been created into your account. +TicketNewEmailBodyInfosTicket=Information for monitoring the ticket +TicketNewEmailBodyInfosTrackId=Ticket tracking number: %s +TicketNewEmailBodyInfosTrackUrl=You can view the progress of the ticket by clicking the link above. +TicketNewEmailBodyInfosTrackUrlCustomer=You can view the progress of the ticket in the specific interface by clicking the following link +TicketEmailPleaseDoNotReplyToThisEmail=Please do not reply directly to this email! Use the link to reply into the interface. +TicketPublicInfoCreateTicket=This form allows you to record a support ticket in our management system. +TicketPublicPleaseBeAccuratelyDescribe=Please accurately describe the problem. Provide the most information possible to allow us to correctly identify your request. +TicketPublicMsgViewLogIn=Please enter ticket tracking ID +TicketTrackId=Public Tracking ID +OneOfTicketTrackId=One of your tracking ID +ErrorTicketNotFound=Ticket with tracking ID %s not found! +Subject=Subject +ViewTicket=View ticket +ViewMyTicketList=View my ticket list +ErrorEmailMustExistToCreateTicket=Error: email address not found in our database +TicketNewEmailSubjectAdmin=New ticket created - Ref %s (public ticket ID %s) +TicketNewEmailBodyAdmin=

    Ticket has just been created with ID #%s, see information:

    +SeeThisTicketIntomanagementInterface=See ticket in management interface +TicketPublicInterfaceForbidden=The public interface for the tickets was not enabled +ErrorEmailOrTrackingInvalid=Bad value for tracking ID or email +OldUser=Old user +NewUser=New user +NumberOfTicketsByMonth=Number of tickets per month +NbOfTickets=Number of tickets +# notifications +TicketNotificationEmailSubject=Ticket %s updated +TicketNotificationEmailBody=This is an automatic message to notify you that ticket %s has just been updated +TicketNotificationRecipient=Notification recipient +TicketNotificationLogMessage=Log message +TicketNotificationEmailBodyInfosTrackUrlinternal=View ticket into interface +TicketNotificationNumberEmailSent=Notification email sent: %s + +ActionsOnTicket=Events on ticket + +# +# Boxes +# +BoxLastTicket=Latest created tickets +BoxLastTicketDescription=Latest %s created tickets +BoxLastTicketContent= +BoxLastTicketNoRecordedTickets=No recent unread tickets +BoxLastModifiedTicket=Latest modified tickets +BoxLastModifiedTicketDescription=Latest %s modified tickets +BoxLastModifiedTicketContent= +BoxLastModifiedTicketNoRecordedTickets=No recent modified tickets diff --git a/htdocs/langs/az_AZ/trips.lang b/htdocs/langs/az_AZ/trips.lang new file mode 100644 index 00000000000..654f14d6bf7 --- /dev/null +++ b/htdocs/langs/az_AZ/trips.lang @@ -0,0 +1,151 @@ +# Dolibarr language file - Source file is en_US - trips +ShowExpenseReport=Show expense report +Trips=Expense reports +TripsAndExpenses=Expenses reports +TripsAndExpensesStatistics=Expense reports statistics +TripCard=Expense report card +AddTrip=Create expense report +ListOfTrips=List of expense reports +ListOfFees=List of fees +TypeFees=Types of fees +ShowTrip=Show expense report +NewTrip=New expense report +LastExpenseReports=Latest %s expense reports +AllExpenseReports=All expense reports +CompanyVisited=Company/organization visited +FeesKilometersOrAmout=Amount or kilometers +DeleteTrip=Delete expense report +ConfirmDeleteTrip=Are you sure you want to delete this expense report? +ListTripsAndExpenses=List of expense reports +ListToApprove=Waiting for approval +ExpensesArea=Expense reports area +ClassifyRefunded=Classify 'Refunded' +ExpenseReportWaitingForApproval=A new expense report has been submitted for approval +ExpenseReportWaitingForApprovalMessage=A new expense report has been submitted and is waiting for approval.
    - User: %s
    - Period: %s
    Click here to validate: %s +ExpenseReportWaitingForReApproval=An expense report has been submitted for re-approval +ExpenseReportWaitingForReApprovalMessage=An expense report has been submitted and is waiting for re-approval.
    The %s, you refused to approve the expense report for this reason: %s.
    A new version has been proposed and waiting for your approval.
    - User: %s
    - Period: %s
    Click here to validate: %s +ExpenseReportApproved=An expense report was approved +ExpenseReportApprovedMessage=The expense report %s was approved.
    - User: %s
    - Approved by: %s
    Click here to show the expense report: %s +ExpenseReportRefused=An expense report was refused +ExpenseReportRefusedMessage=The expense report %s was refused.
    - User: %s
    - Refused by: %s
    - Motive for refusal: %s
    Click here to show the expense report: %s +ExpenseReportCanceled=An expense report was canceled +ExpenseReportCanceledMessage=The expense report %s was canceled.
    - User: %s
    - Canceled by: %s
    - Motive for cancellation: %s
    Click here to show the expense report: %s +ExpenseReportPaid=An expense report was paid +ExpenseReportPaidMessage=The expense report %s was paid.
    - User: %s
    - Paid by: %s
    Click here to show the expense report: %s +TripId=Id expense report +AnyOtherInThisListCanValidate=Person to inform for validation. +TripSociete=Information company +TripNDF=Informations expense report +PDFStandardExpenseReports=Standard template to generate a PDF document for expense report +ExpenseReportLine=Expense report line +TF_OTHER=Other +TF_TRIP=Transportation +TF_LUNCH=Lunch +TF_METRO=Metro +TF_TRAIN=Train +TF_BUS=Bus +TF_CAR=Car +TF_PEAGE=Toll +TF_ESSENCE=Fuel +TF_HOTEL=Hotel +TF_TAXI=Taxi +EX_KME=Mileage costs +EX_FUE=Fuel CV +EX_HOT=Hotel +EX_PAR=Parking CV +EX_TOL=Toll CV +EX_TAX=Various Taxes +EX_IND=Indemnity transportation subscription +EX_SUM=Maintenance supply +EX_SUO=Office supplies +EX_CAR=Car rental +EX_DOC=Documentation +EX_CUR=Customers receiving +EX_OTR=Other receiving +EX_POS=Postage +EX_CAM=CV maintenance and repair +EX_EMM=Employees meal +EX_GUM=Guests meal +EX_BRE=Breakfast +EX_FUE_VP=Fuel PV +EX_TOL_VP=Toll PV +EX_PAR_VP=Parking PV +EX_CAM_VP=PV maintenance and repair +DefaultCategoryCar=Default transportation mode +DefaultRangeNumber=Default range number +UploadANewFileNow=Upload a new document now +Error_EXPENSEREPORT_ADDON_NotDefined=Error, the rule for expense report numbering ref was not defined into setup of module 'Expense Report' +ErrorDoubleDeclaration=You have declared another expense report into a similar date range. +AucuneLigne=There is no expense report declared yet +ModePaiement=Payment mode +VALIDATOR=User responsible for approval +VALIDOR=Approved by +AUTHOR=Recorded by +AUTHORPAIEMENT=Paid by +REFUSEUR=Denied by +CANCEL_USER=Deleted by +MOTIF_REFUS=Reason +MOTIF_CANCEL=Reason +DATE_REFUS=Deny date +DATE_SAVE=Validation date +DATE_CANCEL=Cancelation date +DATE_PAIEMENT=Payment date +BROUILLONNER=Reopen +ExpenseReportRef=Ref. expense report +ValidateAndSubmit=Validate and submit for approval +ValidatedWaitingApproval=Validated (waiting for approval) +NOT_AUTHOR=You are not the author of this expense report. Operation cancelled. +ConfirmRefuseTrip=Are you sure you want to deny this expense report? +ValideTrip=Approve expense report +ConfirmValideTrip=Are you sure you want to approve this expense report? +PaidTrip=Pay an expense report +ConfirmPaidTrip=Are you sure you want to change status of this expense report to "Paid"? +ConfirmCancelTrip=Are you sure you want to cancel this expense report? +BrouillonnerTrip=Move back expense report to status "Draft" +ConfirmBrouillonnerTrip=Are you sure you want to move this expense report to status "Draft"? +SaveTrip=Validate expense report +ConfirmSaveTrip=Are you sure you want to validate this expense report? +NoTripsToExportCSV=No expense report to export for this period. +ExpenseReportPayment=Expense report payment +ExpenseReportsToApprove=Expense reports to approve +ExpenseReportsToPay=Expense reports to pay +ConfirmCloneExpenseReport=Are you sure you want to clone this expense report ? +ExpenseReportsIk=Expense report milles index +ExpenseReportsRules=Expense report rules +ExpenseReportIkDesc=You can modify the calculation of kilometers expense by category and range who they are previously defined. d is the distance in kilometers +ExpenseReportRulesDesc=You can create or update any rules of calculation. This part will be used when user will create a new expense report +expenseReportOffset=Offset +expenseReportCoef=Coefficient +expenseReportTotalForFive=Example with d = 5 +expenseReportRangeFromTo=from %d to %d +expenseReportRangeMoreThan=more than %d +expenseReportCoefUndefined=(value not defined) +expenseReportCatDisabled=Category disabled - see the c_exp_tax_cat dictionary +expenseReportRangeDisabled=Range disabled - see the c_exp_tax_range dictionay +expenseReportPrintExample=offset + (d x coef) = %s +ExpenseReportApplyTo=Apply to +ExpenseReportDomain=Domain to apply +ExpenseReportLimitOn=Limit on +ExpenseReportDateStart=Date start +ExpenseReportDateEnd=Date end +ExpenseReportLimitAmount=Limite amount +ExpenseReportRestrictive=Restrictive +AllExpenseReport=All type of expense report +OnExpense=Expense line +ExpenseReportRuleSave=Expense report rule saved +ExpenseReportRuleErrorOnSave=Error: %s +RangeNum=Range %d +ExpenseReportConstraintViolationError=Constraint violation id [%s]: %s is superior to %s %s +byEX_DAY=by day (limitation to %s) +byEX_MON=by month (limitation to %s) +byEX_YEA=by year (limitation to %s) +byEX_EXP=by line (limitation to %s) +ExpenseReportConstraintViolationWarning=Constraint violation id [%s]: %s is superior to %s %s +nolimitbyEX_DAY=by day (no limitation) +nolimitbyEX_MON=by month (no limitation) +nolimitbyEX_YEA=by year (no limitation) +nolimitbyEX_EXP=by line (no limitation) +CarCategory=Category of car +ExpenseRangeOffset=Offset amount: %s +RangeIk=Mileage range +AttachTheNewLineToTheDocument=Attach the line to an uploaded document diff --git a/htdocs/langs/az_AZ/users.lang b/htdocs/langs/az_AZ/users.lang new file mode 100644 index 00000000000..41a5ebd0981 --- /dev/null +++ b/htdocs/langs/az_AZ/users.lang @@ -0,0 +1,118 @@ +# Dolibarr language file - Source file is en_US - users +HRMArea=HRM area +UserCard=User card +GroupCard=Group card +Permission=Permission +Permissions=Permissions +EditPassword=Edit password +SendNewPassword=Regenerate and send password +SendNewPasswordLink=Send link to reset password +ReinitPassword=Regenerate password +PasswordChangedTo=Password changed to: %s +SubjectNewPassword=Your new password for %s +GroupRights=Group permissions +UserRights=User permissions +UserGUISetup=User Display Setup +DisableUser=Disable +DisableAUser=Disable a user +DeleteUser=Delete +DeleteAUser=Delete a user +EnableAUser=Enable a user +DeleteGroup=Delete +DeleteAGroup=Delete a group +ConfirmDisableUser=Are you sure you want to disable user %s? +ConfirmDeleteUser=Are you sure you want to delete user %s? +ConfirmDeleteGroup=Are you sure you want to delete group %s? +ConfirmEnableUser=Are you sure you want to enable user %s? +ConfirmReinitPassword=Are you sure you want to generate a new password for user %s? +ConfirmSendNewPassword=Are you sure you want to generate and send new password for user %s? +NewUser=New user +CreateUser=Create user +LoginNotDefined=Login is not defined. +NameNotDefined=Name is not defined. +ListOfUsers=List of users +SuperAdministrator=Super Administrator +SuperAdministratorDesc=Global administrator +AdministratorDesc=Administrator +DefaultRights=Default Permissions +DefaultRightsDesc=Define here the default permissions that are automatically granted to a new user (to modify permissions for existing users, go to the user card). +DolibarrUsers=Dolibarr users +LastName=Last name +FirstName=First name +ListOfGroups=List of groups +NewGroup=New group +CreateGroup=Create group +RemoveFromGroup=Remove from group +PasswordChangedAndSentTo=Password changed and sent to %s. +PasswordChangeRequest=Request to change password for %s +PasswordChangeRequestSent=Request to change password for %s sent to %s. +ConfirmPasswordReset=Confirm password reset +MenuUsersAndGroups=Users & Groups +LastGroupsCreated=Latest %s groups created +LastUsersCreated=Latest %s users created +ShowGroup=Show group +ShowUser=Show user +NonAffectedUsers=Non assigned users +UserModified=User modified successfully +PhotoFile=Photo file +ListOfUsersInGroup=List of users in this group +ListOfGroupsForUser=List of groups for this user +LinkToCompanyContact=Link to third party / contact +LinkedToDolibarrMember=Link to member +LinkedToDolibarrUser=Link to Dolibarr user +LinkedToDolibarrThirdParty=Link to Dolibarr third party +CreateDolibarrLogin=Create a user +CreateDolibarrThirdParty=Create a third party +LoginAccountDisableInDolibarr=Account disabled in Dolibarr. +UsePersonalValue=Use personal value +InternalUser=Internal user +ExportDataset_user_1=Users and their properties +DomainUser=Domain user %s +Reactivate=Reactivate +CreateInternalUserDesc=This form allows you to create an internal user in your company/organization. To create an external user (customer, vendor etc. ..), use the button 'Create Dolibarr User' from that third-party's contact card. +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +PermissionInheritedFromAGroup=Permission granted because inherited from one of a user's group. +Inherited=Inherited +UserWillBeInternalUser=Created user will be an internal user (because not linked to a particular third party) +UserWillBeExternalUser=Created user will be an external user (because linked to a particular third party) +IdPhoneCaller=Id phone caller +NewUserCreated=User %s created +NewUserPassword=Password change for %s +NewPasswordValidated=Your new password have been validated and must be used now to login. +EventUserModified=User %s modified +UserDisabled=User %s disabled +UserEnabled=User %s activated +UserDeleted=User %s removed +NewGroupCreated=Group %s created +GroupModified=Group %s modified +GroupDeleted=Group %s removed +ConfirmCreateContact=Are you sure you want to create a Dolibarr account for this contact? +ConfirmCreateLogin=Are you sure you want to create a Dolibarr account for this member? +ConfirmCreateThirdParty=Are you sure you want to create a third party for this member? +LoginToCreate=Login to create +NameToCreate=Name of third party to create +YourRole=Your roles +YourQuotaOfUsersIsReached=Your quota of active users is reached ! +NbOfUsers=No. of users +NbOfPermissions=No. of permissions +DontDowngradeSuperAdmin=Only a superadmin can downgrade a superadmin +HierarchicalResponsible=Supervisor +HierarchicView=Hierarchical view +UseTypeFieldToChange=Use field Type to change +OpenIDURL=OpenID URL +LoginUsingOpenID=Use OpenID to login +WeeklyHours=Hours worked (per week) +ExpectedWorkedHours=Expected worked hours per week +ColorUser=Color of the user +DisabledInMonoUserMode=Disabled in maintenance mode +UserAccountancyCode=User accounting code +UserLogoff=User logout +UserLogged=User logged +DateEmployment=Employment Start Date +DateEmploymentEnd=Employment End Date +CantDisableYourself=You can't disable your own user record +ForceUserExpenseValidator=Force expense report validator +ForceUserHolidayValidator=Force leave request validator +ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/az_AZ/website.lang b/htdocs/langs/az_AZ/website.lang new file mode 100644 index 00000000000..bce2a09fb03 --- /dev/null +++ b/htdocs/langs/az_AZ/website.lang @@ -0,0 +1,130 @@ +# Dolibarr language file - Source file is en_US - website +Shortname=Code +WebsiteSetupDesc=Create here the websites you wish to use. Then go into menu Websites to edit them. +DeleteWebsite=Delete website +ConfirmDeleteWebsite=Are you sure you want to delete this web site? All its pages and content will also be removed. The files uploaded (like into the medias directory, the ECM module, ...) will remain. +WEBSITE_TYPE_CONTAINER=Type of page/container +WEBSITE_PAGE_EXAMPLE=Web page to use as example +WEBSITE_PAGENAME=Page name/alias +WEBSITE_ALIASALT=Alternative page names/aliases +WEBSITE_ALIASALTDesc=Use here list of other name/aliases so the page can also be accessed using this other names/aliases (for example the old name after renaming the alias to keep backlink on old link/name working). Syntax is:
    alternativename1, alternativename2, ... +WEBSITE_CSS_URL=URL of external CSS file +WEBSITE_CSS_INLINE=CSS file content (common to all pages) +WEBSITE_JS_INLINE=Javascript file content (common to all pages) +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. +MediaFiles=Media library +EditCss=Edit website properties +EditMenu=Edit menu +EditMedias=Edit medias +EditPageMeta=Edit page/container properties +EditInLine=Edit inline +AddWebsite=Add website +Webpage=Web page/container +AddPage=Add page/container +HomePage=Home Page +PageContainer=Page/container +PreviewOfSiteNotYetAvailable=Preview of your website %s not yet available. You must first 'Import a full website template' or just 'Add a page/container'. +RequestedPageHasNoContentYet=Requested page with id %s has no content yet, or cache file .tpl.php was removed. Edit content of the page to solve this. +SiteDeleted=Web site '%s' deleted +PageContent=Page/Contenair +PageDeleted=Page/Contenair '%s' of website %s deleted +PageAdded=Page/Contenair '%s' added +ViewSiteInNewTab=View site in new tab +ViewPageInNewTab=View page in new tab +SetAsHomePage=Set as Home page +RealURL=Real URL +ViewWebsiteInProduction=View web site using home URLs +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: +YouCanAlsoTestWithPHPS=Use with PHP embedded server
    On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running
    php -S 0.0.0.0:8080 -t %s +YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org +CheckVirtualHostPerms=Check also that virtual host has permission %s on files into
    %s +ReadPerm=Read +WritePerm=Write +TestDeployOnWeb=Test/deploy on web +PreviewSiteServedByWebServer=Preview %s in a new tab.

    The %s will be served by an external web server (like Apache, Nginx, IIS). You must install and setup this server before to point to directory:
    %s
    URL served by external server:
    %s +PreviewSiteServedByDolibarr=Preview %s in a new tab.

    The %s will be served by Dolibarr server so it does not need any extra web server (like Apache, Nginx, IIS) to be installed.
    The inconvenient is that URL of pages are not user friendly and start with path of your Dolibarr.
    URL served by Dolibarr:
    %s

    To use your own external web server to serve this web site, create a virtual host on your web server that point on directory
    %s
    then enter the name of this virtual server and click on the other preview button. +VirtualHostUrlNotDefined=URL of the virtual host served by external web server not defined +NoPageYet=No pages yet +YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template +SyntaxHelp=Help on specific syntax tips +YouCanEditHtmlSourceckeditor=You can edit HTML source code using the "Source" button in editor. +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +ClonePage=Clone page/container +CloneSite=Clone site +SiteAdded=Website added +ConfirmClonePage=Please enter code/alias of new page and if it is a translation of the cloned page. +PageIsANewTranslation=The new page is a translation of the current page ? +LanguageMustNotBeSameThanClonedPage=You clone a page as a translation. The language of the new page must be different than language of source page. +ParentPageId=Parent page ID +WebsiteId=Website ID +CreateByFetchingExternalPage=Create page/container by fetching page from external URL... +OrEnterPageInfoManually=Or create page from scratch or from a page template... +FetchAndCreate=Fetch and Create +ExportSite=Export website +ImportSite=Import website template +IDOfPage=Id of page +Banner=Banner +BlogPost=Blog post +WebsiteAccount=Website account +WebsiteAccounts=Website accounts +AddWebsiteAccount=Create web site account +BackToListForThirdParty=Back to list for the third-party +DisableSiteFirst=Disable website first +MyContainerTitle=My web site title +AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) +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 +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. +OnlyEditionOfSourceForGrabbedContent=Only edition of HTML source is possible when content was grabbed from an external site +GrabImagesInto=Grab also images found into css and page. +ImagesShouldBeSavedInto=Images should be saved into directory +WebsiteRootOfImages=Root directory for website images +SubdirOfPage=Sub-directory dedicated to page +AliasPageAlreadyExists=Alias page %s already exists +CorporateHomePage=Corporate Home page +EmptyPage=Empty page +ExternalURLMustStartWithHttp=External URL must start with http:// or https:// +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 +ThisPageHasTranslationPages=This page/container has translation +NoWebSiteCreateOneFirst=No website has been created yet. Create one first. +GoTo=Go to +DynamicPHPCodeContainsAForbiddenInstruction=You add dynamic PHP code that contains the PHP instruction '%s' that is forbidden by default as dynamic content (see hidden options WEBSITE_PHP_ALLOW_xxx to increase list of allowed commands). +NotAllowedToAddDynamicContent=You don't have permission to add or edit PHP dynamic content in websites. Ask permission or just keep code into php tags unmodified. +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 +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. +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. +Dynamiccontent=Sample of a page with dynamic content +ImportSite=Import website template +EditInLineOnOff=Mode 'Edit inline' is %s +ShowSubContainersOnOff=Mode to execute 'dynamic content' is %s +GlobalCSSorJS=Global CSS/JS/Header file of web site +BackToHomePage=Back to home page... +TranslationLinks=Translation links +YouTryToAccessToAFileThatIsNotAWebsitePage=You try to access to a page that is not a website page +UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 characters +MainLanguage=Main language +OtherLanguages=Other languages +UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/az_AZ/withdrawals.lang b/htdocs/langs/az_AZ/withdrawals.lang new file mode 100644 index 00000000000..b1d6e30e329 --- /dev/null +++ b/htdocs/langs/az_AZ/withdrawals.lang @@ -0,0 +1,119 @@ +# Dolibarr language file - Source file is en_US - withdrawals +CustomersStandingOrdersArea=Direct debit payment orders area +SuppliersStandingOrdersArea=Direct credit payment orders area +StandingOrdersPayment=Direct debit payment orders +StandingOrderPayment=Direct debit payment order +NewStandingOrder=New direct debit order +StandingOrderToProcess=To process +WithdrawalsReceipts=Direct debit orders +WithdrawalReceipt=Direct debit order +LastWithdrawalReceipts=Latest %s direct debit files +WithdrawalsLines=Direct debit order lines +RequestStandingOrderToTreat=Request for direct debit payment order to process +RequestStandingOrderTreated=Request for direct debit payment order processed +NotPossibleForThisStatusOfWithdrawReceiptORLine=Not yet possible. Withdraw status must be set to 'credited' before declaring reject on specific lines. +NbOfInvoiceToWithdraw=No. of qualified invoice with waiting direct debit order +NbOfInvoiceToWithdrawWithInfo=No. of customer invoice with direct debit payment orders having defined bank account information +InvoiceWaitingWithdraw=Invoice waiting for direct debit +AmountToWithdraw=Amount to withdraw +WithdrawsRefused=Direct debit refused +NoInvoiceToWithdraw=No customer invoice with open 'Direct debit requests' is waiting. Go on tab '%s' on invoice card to make a request. +ResponsibleUser=User Responsible +WithdrawalsSetup=Direct debit payment setup +WithdrawStatistics=Direct debit payment statistics +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 +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=Classify credited +ClassCreditedConfirm=Are you sure you want to classify this withdrawal receipt as credited on your bank account? +TransData=Transmission date +TransMetod=Transmission method +Send=Send +Lines=Lines +StandingOrderReject=Issue a rejection +WithdrawalRefused=Withdrawal refused +WithdrawalRefusedConfirm=Are you sure you want to enter a withdrawal rejection for society +RefusedData=Date of rejection +RefusedReason=Reason for rejection +RefusedInvoicing=Billing the rejection +NoInvoiceRefused=Do not charge the rejection +InvoiceRefused=Invoice refused (Charge the rejection to customer) +StatusDebitCredit=Status debit/credit +StatusWaiting=Waiting +StatusTrans=Sent +StatusCredited=Credited +StatusRefused=Refused +StatusMotif0=Unspecified +StatusMotif1=Insufficient funds +StatusMotif2=Request contested +StatusMotif3=No direct debit payment order +StatusMotif4=Sales Order +StatusMotif5=RIB unusable +StatusMotif6=Account without balance +StatusMotif7=Judicial Decision +StatusMotif8=Other reason +CreateForSepaFRST=Create direct debit file (SEPA FRST) +CreateForSepaRCUR=Create direct debit file (SEPA RCUR) +CreateAll=Create direct debit file (all) +CreateGuichet=Only office +CreateBanque=Only bank +OrderWaiting=Waiting for treatment +NotifyTransmision=Withdrawal Transmission +NotifyCredit=Withdrawal Credit +NumeroNationalEmetter=National Transmitter Number +WithBankUsingRIB=For bank accounts using RIB +WithBankUsingBANBIC=For bank accounts using IBAN/BIC/SWIFT +BankToReceiveWithdraw=Receiving Bank Account +CreditDate=Credit on +WithdrawalFileNotCapable=Unable to generate withdrawal receipt file for your country %s (Your country is not supported) +ShowWithdraw=Show Direct Debit Order +IfInvoiceNeedOnWithdrawPaymentWontBeClosed=However, if invoice has at least one direct debit payment order not yet processed, it won't be set as paid to allow prior withdrawal 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 payment order is closed, payment on invoice will be automatically recorded, and invoice closed if remainder to pay is null. +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 +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) +WithdrawRequestAmount=Amount of Direct debit request: +WithdrawRequestErrorNilAmount=Unable to create direct debit request for empty amount. +SepaMandate=SEPA Direct Debit Mandate +SepaMandateShort=SEPA Mandate +PleaseReturnMandate=Please return this mandate form by email to %s or by mail to +SEPALegalText=By signing this mandate form, you authorize (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. +CreditorIdentifier=Creditor Identifier +CreditorName=Creditor Name +SEPAFillForm=(B) Please complete all the fields marked * +SEPAFormYourName=Your name +SEPAFormYourBAN=Your Bank Account Name (IBAN) +SEPAFormYourBIC=Your Bank Identifier Code (BIC) +SEPAFrstOrRecur=Type of payment +ModeRECUR=Recurring payment +ModeFRST=One-off payment +PleaseCheckOne=Please check one only +DirectDebitOrderCreated=Direct debit order %s created +AmountRequested=Amount requested +SEPARCUR=SEPA CUR +SEPAFRST=SEPA FRST +ExecutionDate=Execution date +CreateForSepa=Create direct debit file +ICS=Creditor Identifier CI +END_TO_END="EndToEndId" SEPA XML tag - Unique id assigned per transaction +USTRD="Unstructured" SEPA XML tag +ADDDAYS=Add days to Execution Date + +### Notifications +InfoCreditSubject=Payment of direct debit payment order %s by the bank +InfoCreditMessage=The direct debit payment order %s has been paid by the bank
    Data of payment: %s +InfoTransSubject=Transmission of direct debit payment order %s to bank +InfoTransMessage=The direct debit payment order %s has been sent to bank by %s %s.

    +InfoTransData=Amount: %s
    Method: %s
    Date: %s +InfoRejectSubject=Direct debit payment order refused +InfoRejectMessage=Hello,

    the direct debit payment order of invoice %s related to the company %s, with an amount of %s has been refused by the bank.

    --
    %s +ModeWarning=Option for real mode was not set, we stop after this simulation diff --git a/htdocs/langs/az_AZ/workflow.lang b/htdocs/langs/az_AZ/workflow.lang new file mode 100644 index 00000000000..be126eef0f4 --- /dev/null +++ b/htdocs/langs/az_AZ/workflow.lang @@ -0,0 +1,20 @@ +# Dolibarr language file - Source file is en_US - workflow +WorkflowSetup=Workflow module setup +WorkflowDesc=This module provides some automatic actions. By default, the workflow is open (you can do things in the order you want) but here you can activate some automatic actions. +ThereIsNoWorkflowToModify=There is no workflow modifications available with the activated modules. +# Autocreate +descWORKFLOW_PROPAL_AUTOCREATE_ORDER=Automatically create a sales order after a commercial proposal is signed (the new order will have same amount as the proposal) +descWORKFLOW_PROPAL_AUTOCREATE_INVOICE=Automatically create a customer invoice after a commercial proposal is signed (the new invoice will have same amount as the proposal) +descWORKFLOW_CONTRACT_AUTOCREATE_INVOICE=Automatically create a customer invoice after a contract is validated +descWORKFLOW_ORDER_AUTOCREATE_INVOICE=Automatically create a customer invoice after a sales order is closed (the new invoice will have same amount as the order) +# Autoclassify customer proposal or order +descWORKFLOW_ORDER_CLASSIFY_BILLED_PROPAL=Classify linked source proposal as billed when sales order is set to billed (and if the amount of the order is the same as the total amount of the signed linked proposal) +descWORKFLOW_INVOICE_CLASSIFY_BILLED_PROPAL=Classify linked source proposal as billed when customer invoice is validated (and if the amount of the invoice is the same as the total amount of the signed linked proposal) +descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_ORDER=Classify linked source sales order as billed when customer invoice is validated (and if the amount of the invoice is the same as the total amount of the linked order) +descWORKFLOW_INVOICE_CLASSIFY_BILLED_ORDER=Classify linked source sales order as billed when customer invoice is set to paid (and if the amount of the invoice is the same as the total amount of the linked order) +descWORKFLOW_ORDER_CLASSIFY_SHIPPED_SHIPPING=Classify linked source sales order as shipped when a shipment is validated (and if the quantity shipped by all shipments is the same as in the order to update) +# Autoclassify purchase order +descWORKFLOW_ORDER_CLASSIFY_BILLED_SUPPLIER_PROPOSAL=Classify linked source vendor proposal as billed when vendor invoice is validated (and if the amount of the invoice is the same as the total amount of the linked proposal) +descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Classify linked source purchase order as billed when vendor invoice is validated (and if the amount of the invoice is the same as the total amount of the linked order) +AutomaticCreation=Automatic creation +AutomaticClassification=Automatic classification diff --git a/htdocs/langs/az_AZ/zapier.lang b/htdocs/langs/az_AZ/zapier.lang new file mode 100644 index 00000000000..6d6eda71313 --- /dev/null +++ b/htdocs/langs/az_AZ/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr module + +# +# Admin page +# +ZapierForDolibarrSetup = Setup of Zapier for Dolibarr diff --git a/htdocs/langs/bg_BG/accountancy.lang b/htdocs/langs/bg_BG/accountancy.lang index b29a30b133e..9169cab96fb 100644 --- a/htdocs/langs/bg_BG/accountancy.lang +++ b/htdocs/langs/bg_BG/accountancy.lang @@ -121,6 +121,7 @@ InvoiceLinesDone=Свързани редове на фактури ExpenseReportLines=Редове на разходни отчети за свързване ExpenseReportLinesDone=Свързани редове на разходни отчети IntoAccount=Свързване на ред със счетоводна сметка +TotalForAccount=Total for accounting account Ventilate=Свързване @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Счетоводна сметка за регистр ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Счетоводен акаунт за регистриране на членски внос ACCOUNTING_PRODUCT_BUY_ACCOUNT=Счетоводна сметка по подразбиране за закупени продукти (използва се, ако не е определена в продуктовата карта) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Счетоводна сметка по подразбиране за закупени продукти в ЕИО (използва се, ако не е дефинирана в картата на продукта) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Счетоводна сметка по подразбиране за закупени продукти и внесени отвън ЕИО (използва се, ако не е дефинирана в картата на продукта) ACCOUNTING_PRODUCT_SOLD_ACCOUNT=Счетоводна сметка по подразбиране за продадени продукти (използва се, ако не е дефинирана в продуктовата карта) ACCOUNTING_PRODUCT_SOLD_INTRA_ACCOUNT=Счетоводна сметка по подразбиране за продадени продукти в ЕИО (използва се, ако не е определена в продуктовата карта) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Счетоводна сметка по подразбиране за продадени и експортирани продукти извън ЕИО (използва се, ако не е определена в продуктовата карта) + ACCOUNTING_SERVICE_BUY_ACCOUNT=Счетоводна сметка по подразбиране за закупени услуги (използва се, ако не е дефинирана в картата на услугата) +ACCOUNTING_SERVICE_BUY_INTRA_ACCOUNT=Счетоводна сметка по подразбиране за закупени услуги в ЕИО (използва се, ако не е дефинирана в картата на услугата) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Счетоводна сметка по подразбиране за закупени услуги и внесени отвън ЕИО (използва се, ако не е дефинирана в картата на услугата) ACCOUNTING_SERVICE_SOLD_ACCOUNT=Счетоводна сметка по подразбиране за продадени услуги (използва се, ако не е дефинирана в картата на услугата) ACCOUNTING_SERVICE_SOLD_INTRA_ACCOUNT=Счетоводна сметка по подразбиране за продадени услуги в ЕИО (използва се, ако не е определена в картата на услугата) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Счетоводна сметка по подразбиране за продадени и експортирани услуги извън ЕИО (използва се, ако не е определена в картата на услугата) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Неизвест ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Сметката на контрагента не е определена или контрагента е неизвестен. Блокираща грешка. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Неизвестна сметка на контрагент и сметка за изчакване не са определени. Блокираща грешка. PaymentsNotLinkedToProduct=Плащането не е свързано с нито един продукт / услуга +OpeningBalance=Opening balance ShowOpeningBalance=Показване на баланс при откриване HideOpeningBalance=Скриване на баланс при откриване +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Група от сметки PcgtypeDesc=Групата от сметки се използва като предварително зададен критерий за филтриране и групиране за някои счетоводни отчети. Например 'Приход' или 'Разход' се използват като групи за счетоводни сметки на продукти за съставяне на отчет за разходи / приходи. +Reconcilable=Съвместим + TotalVente=Общ оборот преди ДДС TotalMarge=Общ марж на продажби @@ -250,7 +260,7 @@ DescVentilExpenseReport=Преглед на списъка с редове на DescVentilExpenseReportMore=Ако настроите счетоводна сметка за видовете разходен отчет, то системата ще може да извърши всички свързвания между редовете на разходния отчет и счетоводната сметка във вашия сметкоплан, просто с едно щракване с бутона "%s". Ако сметката не е зададена в речника с таксите или ако все още имате някои редове, които не са свързани с нито една сметка ще трябва да направите ръчно свързване от менюто "%s". DescVentilDoneExpenseReport=Преглед на списъка с редове на разходни отчети и тяхната счетоводна сметка за такса -DescClosure=Преглед на броя движения по месеци, които не са валидирани и отворените фискални години +DescClosure=Преглед на броя движения за месец, които не са валидирани за активните фискални години OverviewOfMovementsNotValidated=Стъпка 1 / Преглед на движенията, които не са валидирани (необходимо за приключване на фискална година) ValidateMovements=Валидиране на движения DescValidateMovements=Всякакви промени или изтриване на написаното ще бъдат забранени. Всички записи за изпълнение трябва да бъдат валидирани, в противен случай приключването няма да е възможно. @@ -307,11 +317,13 @@ Modelcsv_quadratus=Експортиране за Quadratus QuadraCompta Modelcsv_ebp=Експортиране за EBP Modelcsv_cogilog=Експортиране за Cogilog Modelcsv_agiris=Експортиране за Agiris -Modelcsv_LDCompta=Експортиране за LD Compta (v9 и по-нова версия) (Тест) +Modelcsv_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Експортиране за LD Compta (v10 и по-нова) Modelcsv_openconcerto=Експортиране за OpenConcerto (Тест) Modelcsv_configurable=Експортиране в конфигурируем CSV Modelcsv_FEC=Експортиране за FEC Modelcsv_Sage50_Swiss=Експортиране за Sage 50 Швейцария +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Идентификатор на сметкоплан ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Режим продажби OptionModeProductSellIntra=Режим продажби, изнасяни в ЕИО OptionModeProductSellExport=Режим продажби, изнасяни в други държави OptionModeProductBuy=Режим покупки +OptionModeProductBuyIntra=Режим покупки, внесени от ЕИО +OptionModeProductBuyExport=Режим покупки, внесени от други държави OptionModeProductSellDesc=Показване на всички продукти със счетоводна сметка за продажби. OptionModeProductSellIntraDesc=Показване на всички продукти със счетоводна сметка за продажби в ЕИО. OptionModeProductSellExportDesc=Показване на всички продукти със счетоводна сметка за други чуждестранни продажби. OptionModeProductBuyDesc=Показване на всички продукти със счетоводна сметка за покупки. +OptionModeProductBuyIntraDesc=Показване на всички продукти със счетоводна сметка за покупки в ЕИО. +OptionModeProductBuyExportDesc=Показване на всички продукти със счетоводна сметка за други чуждестранни покупки CleanFixHistory=Премахване на счетоводния код от редове, които не съществуват в сметкоплана CleanHistory=Нулиране на всички връзки за избраната година PredefinedGroups=Предварително определени групи @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Сметката е премахната от група SaleLocal=Локална продажба SaleExport=Експортна продажба SaleEEC=Вътреобщностна продажба +SaleEECWithVAT=Продажба в ЕИО с ДДС различен от нула, за която се предполага, че НЕ е вътреобщностна продажба, поради тази причина се препоръчва стандартната сметка за продукти. +SaleEECWithoutVATNumber=Продажба в ЕИО без ДДС, но идентификационният номер по ДДС на контрагента не е определен. Ще се използва стандартната сметка за продажба на продукти. Може да въведете идентификационен номер по ДДС на контрагента или сметка на продукта, ако е необходимо. ## Dictionary Range=Обхват на счетоводна сметка diff --git a/htdocs/langs/bg_BG/admin.lang b/htdocs/langs/bg_BG/admin.lang index dfa35253ad2..24e874ed1e2 100644 --- a/htdocs/langs/bg_BG/admin.lang +++ b/htdocs/langs/bg_BG/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Уеб сървър потребител / група NoSessionFound=Изглежда, че вашата PHP конфигурация не позволява изброяване на активни сесии. Директорията, използвана за запазване на сесии ( %s ), може да е защитена (например от права на операционната система или от директивата PHP open_basedir). DBStoringCharset=Кодиране на знаците при съхраняване в базата данни DBSortingCharset=Кодиране на знаците при сортиране в базата данни +HostCharset=Host charset ClientCharset=Кодиране от страна на клиента ClientSortingCharset=Съпоставяне от страна на клиента WarningModuleNotActive=Модул %s е необходимо да бъде включен @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Забележка: Вашата PHP конфи NoMaxSizeByPHPLimit=Забележка: Не е зададено ограничение във вашата PHP конфигурация MaxSizeForUploadedFiles=Максимален размер за качени файлове (0 за забрана на качването) UseCaptchaCode=Използване на графичен код (CAPTCHA) на страницата за вход -AntiVirusCommand= Пълен път към антивирусна команда -AntiVirusCommandExample= Пример за ClamWin: c:\\Progra~1\\ClamWin\\bin\\clamscan.exe
    Пример за ClamAv: /usr/bin/clamscan +AntiVirusCommand=Пълен път към антивирусна команда +AntiVirusCommandExample=Пример за ClamAv Daemon (изисква clamav-daemon): /usr/bin/clamdscan
    Пример за ClamWin (много забавящ): C:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= Още параметри в командния ред -AntiVirusParamExample= Пример за ClamWin: --database="C:\\Programm Files (x86)\\ClamWin\\lib" +AntiVirusParamExample=Пример за ClamAv Daemon: --fdpass
    Пример за ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=Настройка на модул Счетоводство UserSetup=Настройка за управление на потребители MultiCurrencySetup=Настройки на различни валути @@ -136,7 +137,7 @@ Boxes=Джаджи MaxNbOfLinesForBoxes=Максимален брой редове за джаджи AllWidgetsWereEnabled=Всички налични джаджи са активирани PositionByDefault=Позиция по подразбиране -Position=Длъжност +Position=Позиция MenusDesc=Меню мениджърите определят съдържанието на двете ленти с менюта (хоризонтална и вертикална). MenusEditorDesc=Редакторът на менюто ви позволява да дефинирате потребителски менюта. Използвайте го внимателно, за да избегнете нестабилност и трайно недостъпни менюта.
    Някои модули добавят менюта (най-вече в менюто Всички). Ако премахнете някои от тези менюта по погрешка, можете да ги възстановите като деактивирате и да активирате отново модула. MenuForUsers=Меню за потребители @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Функцията е деактивирана в демо FeatureAvailableOnlyOnStable=Функцията се предлага само в официални стабилни версии BoxesDesc=Джаджите са компоненти, показващи информация, които може да добавите, за да персонализирате някои страници. Можете да избирате между показване на джаджата или не, като изберете целевата страница и кликнете върху 'Активиране', или като кликнете върху кошчето, за да я деактивирате. OnlyActiveElementsAreShown=Показани са само елементи от активни модули. -ModulesDesc=Модулите / приложенията определят кои функции са налични в системата. Някои модули изискват да се предоставят съответните разрешения на потребителите след активиране на модула. Кликнете върху бутона за включване / изключване (в края на реда с името на модула), за да активирате / деактивирате модул / приложение. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. ModulesMarketPlaceDesc=Може да намерите още модули за изтегляне от външни уеб сайтове в интернет... ModulesDeployDesc=Ако разрешенията във вашата файлова система го позволяват, можете да използвате този инструмент за инсталиране на външен модул. След това модулът ще се вижда в раздела %s. ModulesMarketPlaces=Намиране на външно приложение / модул @@ -212,15 +213,17 @@ CompatibleUpTo=Съвместим с версия %s NotCompatible=Този модул не изглежда съвместим с Dolibarr %s (Мин. %s - Макс. %s). CompatibleAfterUpdate=Този модул изисква актуализация на вашия Dolibarr %s (Min %s - Max %s). SeeInMarkerPlace=Вижте в онлайн магазина +SeeSetupOfModule=Вижте настройка на модул %s Updated=Актуализиран Nouveauté=Новост AchatTelechargement=Купуване / Изтегляне GoModuleSetupArea=За да разположите / инсталирате нов модул, отидете в секцията за настройка на модул: %s. DoliStoreDesc=DoliStore, официалният пазар за Dolibarr ERP / CRM външни модули DoliPartnersDesc=Списък на компаниите, които предоставят разработване по поръчка модули или функции.
    Забележка: тъй като Dolibarr е приложение с отворен код, всеки , който има опит в програмирането на PHP, може да разработи модул. -WebSiteDesc=Външни уебсайтове за повече модули за добавки (които не са основни)... +WebSiteDesc=Външни уебсайтове с повече модули (които не са част от ядрото) DevelopYourModuleDesc=Някои решения за разработване на ваш собствен модул... URL=URL адрес +RelativeURL=Относителен URL адрес BoxesAvailable=Налични джаджи BoxesActivated=Активирани джаджи ActivateOn=Активирай на @@ -252,8 +255,8 @@ ExternalResources=Външни ресурси SocialNetworks=Социални мрежи ForDocumentationSeeWiki=За потребителска документация и такава за разработчици (документи, често задавани въпроси,...),
    погледнете в Dolibarr Wiki:
    %s ForAnswersSeeForum=За всякакви други въпроси / помощ може да използвате Dolibarr форума:
    %s -HelpCenterDesc1=Ето някои ресурси за получаване на помощ и подкрепа с Dolibarr. -HelpCenterDesc2=Някои от тези ресурси са налице само на английски . +HelpCenterDesc1=Ресурси за получаване на помощ и поддръжка относно Dolibarr +HelpCenterDesc2=Някои от тези ресурси са достъпни само на английски език CurrentMenuHandler=Текущ манипулатор на менюто MeasuringUnit=Мерна единица LeftMargin=Лява граница @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Полета за отметка ExtrafieldCheckBoxFromList=Отметки от таблица ExtrafieldLink=Връзка към обект ComputedFormula=Изчислено поле -ComputedFormulaDesc=Тук можете да въведете формула, използвайки други свойства на обекта или PHP код, за да получите динамична изчислена стойност. Можете да използвате всички съвместими с PHP формули, включително "?" условен оператор и следния глобален обект: $db, $conf, $langs, $mysoc, $user, $object.
    ВНИМАНИЕ: Може да са налице само някои свойства на $object. Ако ви трябват свойства, които не са заредени, просто вземете сами обекта във вашата формула като във втория пример.
    Използването на изчислено поле означава, че не можете да въведете никаква стойност от интерфейса. Също така, ако има синтактична грешка, формулата може да не върне нищо.

    Пример за формула:
    $object->id<10 ? round($object>id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($ mysoc->zip, 1, 2)

    Пример за презареждане на обект
    (($reloadedobj = new Societe ($db)) && ($reloadedobj->fetch ($obj->id ? $obj->id:($ obj->rowid ? $obj->rowid: $object->id )) > 0)) ? $reloadedobj->array_options ['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Друг пример за формула за натоварване на обекта и неговия главен обект:
    (($reloadedobj = new Task ($db)) && ($reloadedobj->fetch ($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch ($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Запазване на изчисленото поле ComputedpersistentDesc=Изчислените допълнителни полета ще бъдат съхранени в базата данни, но стойността ще бъде преизчислена само когато обектът на това поле бъде променен. Ако изчисленото поле зависи от други обекти или глобални данни, тази стойност може да е грешна!! ExtrafieldParamHelpPassword=Оставяйки това поле празно означава, че тази стойност ще бъде съхранена без криптиране (полето трябва да бъде скрито само със звезда на екрана).
    Посочете 'auto', за да използвате правилото за криптиране по подразбиране и за да запазите паролата в базата данни (тогава четимата стойност ще бъде само хеш код и няма да има начин да извлечете реалната стойност). @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Оставете празно, за да използва DefaultLink=Връзка по подразбиране SetAsDefault=Посочете по подразбиране ValueOverwrittenByUserSetup=Внимание, тази стойност може да бъде презаписана от специфична за потребителя настройка (всеки потребител може да зададе свой собствен URL адрес) -ExternalModule=Външен модул - инсталиран в директория %s +ExternalModule=External module +InstalledInto=Installed into directory %s BarcodeInitForthird-parties=Масова баркод инициализация за контрагенти BarcodeInitForProductsOrServices=Масово въвеждане на баркод или зануляване за продукти или услуги CurrentlyNWithoutBarCode=В момента имате %s записа на %s %s без дефиниран баркод. @@ -868,8 +872,8 @@ Permission1186=Поръчка на поръчки за покупка Permission1187=Потвърждаване на получаването на поръчка за покупка Permission1188=Изтриване на поръчки за покупка Permission1190=Одобряване (второ одобрение) на поръчки за покупка -Permission1201=Получава на резултат от експортиране -Permission1202=Създаване / променяне на експорт на данни +Permission1201=Получаване на резултат с експортирани данни +Permission1202=Създаване / променяне на експортирани данни Permission1231=Преглед на фактури за доставка Permission1232=Създаване / променяне на фактури за доставка Permission1233=Валидиране на фактури за доставка @@ -947,7 +951,7 @@ DictionaryCanton=Области / Региони DictionaryRegion=Региони DictionaryCountry=Държави DictionaryCurrency=Валути -DictionaryCivility=Обръщения +DictionaryCivility=Honorific titles DictionaryActions=Видове събития в календара DictionarySocialContributions=Видове социални или фискални данъци DictionaryVAT=Ставки на ДДС или Данък върху продажби @@ -988,6 +992,7 @@ VATIsNotUsedDesc=По подразбиране предложената став VATIsUsedExampleFR=Във Франция това означава дружества или организации, които имат реална фискална система (опростена реална или нормална реална). Система, в която е деклариран ДДС. VATIsNotUsedExampleFR=Във Франция това означава асоциации, които не декларират данък върху продажбите или компании, организации, или свободни професии, които са избрали фискалната система за микропредприятия (данък върху продажбите във франчайз) и са платили франчайз данък върху продажбите без декларация за данък върху продажбите. Този избор ще покаже информация за "Неприложим данък върху продажбите - art-293B от CGI" във фактурите. ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=Ставка LocalTax1IsNotUsed=Да не се използва втори данък LocalTax1IsUsedDesc=Използване на втори тип данък (различен от първия) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=Ставката на IRPF по подразбиране LocalTax2IsNotUsedDescES=По подразбиране предложената IRPF е 0. Край на правилото. LocalTax2IsUsedExampleES=В Испания, професионалистите на свободна практика и независимите професионалисти, които предоставят услуги и фирми, които са избрали данъчната система от модули. LocalTax2IsNotUsedExampleES=В Испания те са предприятия, които не подлежат на данъчна система от модули. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=Справки за местни данъци CalcLocaltax1=Продажби - Покупки CalcLocaltax1Desc=Справките за местни данъци се изчисляват с разликата между размера местни данъци от продажби и размера местни данъци от покупки. @@ -1018,6 +1026,7 @@ CalcLocaltax2=Покупки CalcLocaltax2Desc=Справки за местни данъци се определят, чрез размера на местни данъци от общи покупки CalcLocaltax3=Продажби CalcLocaltax3Desc=Справки за местни данъци се определят, чрез размера на местни данъци от общи продажби +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=Име, използвано по подразбиране, ако не може да бъде намерен превод за кода LabelOnDocuments=Текст в документи LabelOrTranslationKey=Име или ключ за превод @@ -1091,11 +1100,11 @@ Alerts=Сигнали DelaysOfToleranceBeforeWarning=Закъснение преди показване на предупредителен сигнал за: DelaysOfToleranceDesc=Задаване на закъснение, преди на екрана да се покаже иконата за предупреждение %s за закъснелия елемент. Delays_MAIN_DELAY_ACTIONS_TODO=Планирани събития (събития в календара), които не са завършени -Delays_MAIN_DELAY_PROJECT_TO_CLOSE=Проект, който не е затворен навреме +Delays_MAIN_DELAY_PROJECT_TO_CLOSE=Проект, който не е приключен навреме Delays_MAIN_DELAY_TASKS_TODO=Планирана задача (задача от проект), която не е завършена Delays_MAIN_DELAY_ORDERS_TO_PROCESS=Поръчка, която не е обработена Delays_MAIN_DELAY_SUPPLIER_ORDERS_TO_PROCESS=Поръчка за покупка, която не е обработена -Delays_MAIN_DELAY_PROPALS_TO_CLOSE=Предложение, което не е затворено +Delays_MAIN_DELAY_PROPALS_TO_CLOSE=Предложение, което не е приключено Delays_MAIN_DELAY_PROPALS_TO_BILL=Предложение, което не е фактурирано Delays_MAIN_DELAY_NOT_ACTIVATED_SERVICES=Услуга, която не е активирана Delays_MAIN_DELAY_RUNNING_SERVICES=Услуга, която е изтекла @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Разходен отчет, който не е Delays_MAIN_DELAY_HOLIDAYS=Молби за отпуск за одобрение SetupDescription1=Преди да започнете да използвате Dolibarr трябва да се дефинират някои първоначални параметри и да се активират / конфигурират някои модули. SetupDescription2=Следните две секции са задължителни (първите две подменюта в менюто Настройка): -SetupDescription3=%s ->%s
    Основни параметри, използвани за персонализиране на поведението по подразбиране на вашето приложение (например за функции, свързани със държавата). -SetupDescription4=%s ->%s
    Този софтуер е пакет от много модули / приложения, всички повече или по-малко независими. Модулите, съответстващи на вашите нужди, трябва да бъдат активирани и конфигурирани. В менютата се добавят нови елементи / опции с активирането на модул. +SetupDescription3=%s -> %s

    Основни параметри, използвани за персонализиране на поведението по подразбиране на вашата система (например за функции, свързани с държавата). +SetupDescription4=%s -> %s

    Този софтуер е пакет от много модули / приложения. Модулите, свързани с вашите нужди, трябва да бъдат активирани и конфигурирани. С активирането на тези модули ще се появят нови менюта. SetupDescription5=Менюто "Други настройки" управлява допълнителни параметри. LogEvents=Събития за проверка на сигурността Audit=Проверка @@ -1128,7 +1137,7 @@ LogEventDesc=Активиране на регистрирането за кон AreaForAdminOnly=Параметрите за настройка могат да се задават само от Администратори. SystemInfoDesc=Системната информация е различна техническа информация, която получавате в режим само за четене и е видима само за администратори. SystemAreaForAdminOnly=Тази секция е достъпна само за администратори. Потребителските права в Dolibarr не могат да променят това ограничение. -CompanyFundationDesc=Редактирайте информацията за фирмата / обекта. Кликнете върху бутона '%s' в долната част на страницата. +CompanyFundationDesc=Редактирайте информацията за вашата фирма / организация. Кликнете върху бутона '%s' в долната част на страницата, когато сте готови. AccountantDesc=Ако имате външен счетоводител, тук може да редактирате неговата информация. AccountantFileNumber=Счетоводен код DisplayDesc=Тук могат да се променят параметрите, които влияят на външния вид и поведението на Dolibarr. @@ -1197,7 +1206,7 @@ MAIN_PROXY_PASS=Прокси сървър: Парола DefineHereComplementaryAttributes=Определете тук всички допълнителни / персонализирани атрибути, които искате да бъдат включени за: %s ExtraFields=Допълнителни атрибути ExtraFieldsLines=Допълнителни атрибути (редове) -ExtraFieldsLinesRec=Допълнителни атрибути (шаблонни редове на фактури) +ExtraFieldsLinesRec=Допълнителни атрибути (редове в шаблонни фактури) ExtraFieldsSupplierOrdersLines=Допълнителни атрибути (редове в поръчки за покупка) ExtraFieldsSupplierInvoicesLines=Допълнителни атрибути (редове във фактури за покупка) ExtraFieldsThirdParties=Допълнителни атрибути (контрагенти) @@ -1205,7 +1214,7 @@ ExtraFieldsContacts=Допълнителни атрибути (контакти ExtraFieldsMember=Допълнителни атрибути (член) ExtraFieldsMemberType=Допълнителни атрибути (тип член) ExtraFieldsCustomerInvoices=Допълнителни атрибути (фактури за продажба) -ExtraFieldsCustomerInvoicesRec=Допълнителни атрибути (шаблони на фактури) +ExtraFieldsCustomerInvoicesRec=Допълнителни атрибути (шаблонни фактури) ExtraFieldsSupplierOrders=Допълнителни атрибути (поръчки за покупка) ExtraFieldsSupplierInvoices=Допълнителни атрибути (фактури за покупка) ExtraFieldsProject=Допълнителни атрибути (проекти) @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Правила за генериране и валид DisableForgetPasswordLinkOnLogonPage=Да не се показва връзката "Забравена парола" на страницата за вход UsersSetup=Настройка на модула за потребители UserMailRequired=Необходим е имейл при създаване на нов потребител +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Шаблони на документи за потребителски профил +GroupsDocModules=Шаблони на документи за групов профил ##### HRM setup ##### HRMSetup=Настройка на модула ЧР ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Шаблони на документи за фактури BillsPDFModulesAccordindToInvoiceType=Модели на фактури в зависимост от вида на фактурата PaymentsPDFModules=Шаблони на платежни документи ForceInvoiceDate=Принуждаване на датата на фактурата да се синхронизира с датата на валидиране -SuggestedPaymentModesIfNotDefinedInInvoice=Предлагане на плащания по подразбиране, ако не са определени такива във фактурата +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice SuggestPaymentByRIBOnAccount=Да се предлага плащане по сметка SuggestPaymentByChequeToAddress=Да се предлага плащане с чек FreeLegalTextOnInvoices=Свободен текст във фактури @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Настройка на плащания към доста PropalSetup=Настройка на модула за търговски предложения ProposalsNumberingModules=Модели за номериране на търговски предложения ProposalsPDFModules=Шаблони на документи за търговски предложения -SuggestedPaymentModesIfNotDefinedInProposal=Препоръчителен начин на плащане по подразбиране за търговско предложение, ако не е посочен +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal FreeLegalTextOnProposal=Свободен текст в търговски предложения WatermarkOnDraftProposal=Воден знак върху чернови търговски предложения (няма, ако е празно) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Питане за данни на банкова сметка в търговски предложения @@ -1322,6 +1334,7 @@ WAREHOUSE_ASK_WAREHOUSE_DURING_ORDER=Питане за изходен склад ##### Suppliers Orders ##### BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_ORDER=Да се пита за детайли на банковата сметка в поръчките за покупка ##### Orders ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=Настройка на модул Поръчки за продажба OrdersNumberingModules=Модели за номериране на поръчки OrdersModelModule=Шаблони на документи за поръчки @@ -1618,7 +1631,7 @@ HideUnauthorizedMenu= Скриване на неоторизирани (сиви DetailId=Идентификатор на меню DetailMenuHandler=Манипулатор на меню, в който да се покаже новото меню DetailMenuModule=Име на модула, ако входните данни на менюто идват от модул -DetailType=Тип меню (горе или вляво) +DetailType=Тип меню (горно или ляво) DetailTitre=Име на меню или име на код за превод DetailUrl=URL адрес, където менюто ви изпратя (Absolute на URL линк или външна връзка с http://) DetailEnabled=Условие за показване или не на вписване @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Скриване на изображения в горно LeftMenuBackgroundColor=Цвят на фона в лявото меню BackgroundTableTitleColor=Цвят на фона в реда със заглавието на таблица BackgroundTableTitleTextColor=Цвят на текста в заглавието на таблиците +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Цвят на фона в нечетните редове на таблица BackgroundTableLineEvenColor=Цвят на фона в четните редове на таблица MinimumNoticePeriod=Минимален срок за известяване (вашата молба за отпуск трябва да бъде изпратена преди този срок) @@ -1834,8 +1848,8 @@ ByDefaultInList=Показване по подразбиране в списъч YouUseLastStableVersion=Използвате последната стабилна версия TitleExampleForMajorRelease=Пример за съобщение, което може да използвате, за да обявите това главно издание (не се колебайте да го използвате на уебсайтовете си) TitleExampleForMaintenanceRelease=Пример за съобщение, което може да използвате, за да обявите това издание за поддръжка (не се колебайте да го използвате на уебсайтовете си) -ExampleOfNewsMessageForMajorRelease=Dolibarr ERP & CRM %s е наличен. Версия %s е главна версия с много нови функции както за потребители, така и за разработчици. Може да го изтеглите от раздела за изтегляне на портала https://www.dolibarr.org (поддиректория Стабилни версии). Може да прочетете ChangeLog за пълен списък с промените. -ExampleOfNewsMessageForMaintenanceRelease=Dolibarr ERP & CRM %s е наличен. Версията %s е поддържаща версия, така че съдържа само корекции на грешки. Препоръчваме на всички потребители да актуализират до тази версия. Изданието за поддръжка не въвежда нови функции или промени в базата данни. Може да го изтеглите от раздела за изтегляне на портала https://www.dolibarr.org (поддиректория Стабилни версии). Може да прочетете ChangeLog за пълен списък с промените. +ExampleOfNewsMessageForMajorRelease=Dolibarr ERP & CRM %s е наличен. Версия %s е главна версия с много нови функции както за потребители, така и за разработчици. Може да се изтегли от раздела за изтегляне в портала https://www.dolibarr.org (подраздел Стабилни версии). Прочетете ChangeLog за пълен списък с промените. +ExampleOfNewsMessageForMaintenanceRelease=Dolibarr ERP & CRM %s е наличен. Версия %s е поддържаща версия, така че съдържа само корекции на грешки. Препоръчваме на всички потребители да актуализират до тази версия. Изданието за поддръжка не въвежда нови функции или промени в базата данни. Може да се изтегли от раздела за изтегляне в портала https://www.dolibarr.org (подраздел Стабилни версии). Прочетете ChangeLog за пълен списък с промените. MultiPriceRuleDesc=Когато опцията "Няколко нива на цени за продукт / услуга" е активирана може да определите различни цени (по едно за ниво цена) за всеки продукт. За да спестите време тук може да въведете правило за автоматично изчисляване на цена за всяко ниво на базата на цената от първото ниво, така че ще трябва да въведете само цена за първото ниво за всеки продукт. Тази страница е предназначена да ви спести време, но е полезна само ако цените за всяко ниво са относителни към първо ниво. В повечето случаи може да игнорирате тази страница. ModelModulesProduct=Шаблони за продуктови документи ToGenerateCodeDefineAutomaticRuleFirst=За да можете автоматично да генерирате кодове, първо трябва да определите мениджър, за да дефинирате автоматично номера на баркода. @@ -1884,9 +1898,9 @@ RemoveSpecialChars=Премахване на специални символи COMPANY_AQUARIUM_CLEAN_REGEX=Regex филтър за изчистване на стойността (COMPANY_AQUARIUM_CLEAN_REGEX) COMPANY_DIGITARIA_CLEAN_REGEX=Regex филтър за чиста стойност (COMPANY_DIGITARIA_CLEAN_REGEX) COMPANY_DIGITARIA_UNIQUE_CODE=Дублирането не е позволено -GDPRContact=Длъжностно лице по защита на данните (DPO, Защита на лични данни или GDPR контакт) +GDPRContact=Длъжностно лице по защита на данните (DPO, защита на лични данни или GDPR контакт) GDPRContactDesc=Ако съхранявате данни за европейски компании / граждани, тук може да посочите контакт, който е отговорен за Общия регламент за защита на данните /GDPR/ -HelpOnTooltip=Помощен текст, който да се показва в подсказка +HelpOnTooltip=Подсказка HelpOnTooltipDesc=Поставете тук текст или ключ за превод, който да се покаже в подсказка, когато това поле се появи във формуляр YouCanDeleteFileOnServerWith=Може да изтриете този файл от сървъра с команда в терминала:
    %s ChartLoaded=Сметкопланът е зареден @@ -1923,9 +1937,9 @@ LoadThirdPartyFromNameOrCreate=Зареждане на името на конт WithDolTrackingID=Намерена е Dolibarr референция в идентификационния номер на съобщението WithoutDolTrackingID=Не е намерена Dolibarr референция в идентификационния номер на съобщението FormatZip=Zip -MainMenuCode=Код на менюто (главно меню) +MainMenuCode=Код на меню (главно меню) ECMAutoTree=Показване на автоматично ECM дърво -OperationParamDesc=Определете стойности, които да използвате за действие или как да извличате стойности. Например:
    objproperty1=SET:abc
    objproperty1=SET: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]*)

    Използвайте символа ; като разделител за извличане или задаване на няколко свойства. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Работно време OpeningHoursDesc=Въведете тук редовното работно време на вашата фирма. ResourceSetup=Конфигурация на модул Ресурси @@ -1958,7 +1972,8 @@ DEBUGBAR_LOGS_LINES_NUMBER=Брой последни редове на журн WarningValueHigherSlowsDramaticalyOutput=Внимание, по-високите стойности забавят драматично производителността ModuleActivated=Модул %s е активиран и забавя интерфейса EXPORTS_SHARE_MODELS=Моделите за експортиране се споделят с всички -ExportSetup=Настройка на модула Експортиране на данни +ExportSetup=Настройка на модула за експортиране на данни +ImportSetup=Настройка на модула за импортиране на данни InstanceUniqueID=Уникален идентификатор на инстанцията SmallerThan=По-малък от LargerThan=По-голям от @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Направете анонимен Ping '+1' до сървъ FeatureNotAvailableWithReceptionModule=Функцията не е налична, когато е активиран модул Приемане EmailTemplate=Шаблон за имейл EMailsWillHaveMessageID=Имейлите ще имат етикет „Референции“, отговарящ на този синтаксис -PDF_USE_ALSO_LANGUAGE_CODE=Ако искате да имате някакво текстово заглавие във вашия PDF файл, дублиран на 2 различни езика в един и същ генериран PDF файл, трябва да зададете тук този втори език, така генерираният PDF файл ще съдържа 2 различни езика на една и съща страница, избраният при генериране на PDF и този (само няколко PDF шаблона поддържат това). Запазете празно за един език в PDF. +PDF_USE_ALSO_LANGUAGE_CODE=Ако искате да имате някои текстове във вашия PDF файл, дублирани на 2 различни езика в един и същ генериран PDF файл, трябва да посочите тук този втори език, така че генерираният PDF файл да съдържа 2 различни езика на една и съща страница, избраният при генериране на PDF и този (само няколко PDF шаблона поддържат това). Запазете празно за един език в PDF файла. FafaIconSocialNetworksDesc=Въведете тук кода за FontAwesome икона. Ако не знаете какво е FontAwesome, може да използвате стандартната стойност fa-address book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/bg_BG/bills.lang b/htdocs/langs/bg_BG/bills.lang index 1d906bde056..02cfd9be1b0 100644 --- a/htdocs/langs/bg_BG/bills.lang +++ b/htdocs/langs/bg_BG/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Фактури за доставка SupplierBill=Фактура за доставка SupplierBills=Фактури за доставка Payment=Плащане -PaymentBack=Обратно плащане -CustomerInvoicePaymentBack=Обратно плащане +PaymentBack=Възстановяване +CustomerInvoicePaymentBack=Възстановяване Payments=Плащания PaymentsBack=Възстановявания paymentInInvoiceCurrency=във валута на фактури PaidBack=Платено обратно DeletePayment=Изтриване на плащане ConfirmDeletePayment=Сигурни ли сте че, искате да изтриете това плащане? -ConfirmConvertToReduc=Искате ли да конвертирате това %s в абсолютна отстъпка? +ConfirmConvertToReduc=Искате ли да конвертирате товa %s в наличен кредит? ConfirmConvertToReduc2=Сумата ще бъде запазена измежду всички отстъпки и може да се използва като отстъпка за текуща или бъдеща фактура за този клиент. -ConfirmConvertToReducSupplier=Искате ли да конвертирате това %s в абсолютна отстъпка? +ConfirmConvertToReducSupplier=Искате ли да конвертирате товa %s в наличен кредит? ConfirmConvertToReducSupplier2=Сумата ще бъде запазена измежду всички отстъпки и може да се използва като отстъпка за текуща или бъдеща фактура за този доставчик. SupplierPayments=Плащания към доставчици ReceivedPayments=Получени плащания @@ -205,21 +205,17 @@ ConfirmValidatePayment=Сигурни ли сте, че искате да вал ValidateBill=Валидиране на фактура UnvalidateBill=Повторно отваряне на фактура NumberOfBills=Брой фактури -NumberOfBillsByMonth=Брой фактури на месец +NumberOfBillsByMonth=Брой фактури за месец AmountOfBills=Сума на фактури AmountOfBillsHT=Сума на фактури (без ДДС) -AmountOfBillsByMonthHT=Сума на фактури по месец (без ДДС) -ShowSocialContribution=Показване на социален / фискален данък -ShowBill=Показване на фактура -ShowInvoice=Показване на фактура -ShowInvoiceReplace=Показване на заменяща фактура -ShowInvoiceAvoir=Показване на кредитно известие -ShowInvoiceDeposit=Показване на авансова фактура -ShowInvoiceSituation=Показване на ситуационна фактура +AmountOfBillsByMonthHT=Стойност на фактури за месец (без ДДС) UseSituationInvoices=Разрешаване на ситуационна фактура UseSituationInvoicesCreditNote=Разрешаване на кредитно известие за ситуационна фактура Retainedwarranty=Запазена гаранция +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Процент по подразбиране за запазена гаранция +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=Да се плати на %s toPayOn=да се плати на %s RetainedWarranty=Запазена гаранция @@ -230,7 +226,6 @@ setretainedwarranty=Определете запазена гаранция setretainedwarrantyDateLimit=Определете крайна дата за запазена гаранция RetainedWarrantyDateLimit=Крайна дата на запазена гаранция RetainedWarrantyNeed100Percent=Необходимо е ситуационната фактура да бъде с напредък 100%%, за да бъде показана в PDF -ShowPayment=Показване на плащане AlreadyPaid=Вече платено AlreadyPaidBack=Вече платено обратно AlreadyPaidNoCreditNotesNoDeposits=Вече платено (без кредитни известия и авансови плащания) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Генерирано от шаблонна фактура WarningInvoiceDateInFuture=Внимание, датата на фактурата е по-напред от текущата дата WarningInvoiceDateTooFarInFuture=Внимание, датата на фактурата е твърде далеч от текущата дата ViewAvailableGlobalDiscounts=Преглед на налични отстъпки +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Статус PaymentConditionShortRECEP=При получаване @@ -509,7 +505,7 @@ ToMakePayment=Плащане ToMakePaymentBack=Обратно плащане ListOfYourUnpaidInvoices=Списък с неплатени фактури NoteListOfYourUnpaidInvoices=Забележка: Този списък съдържа само фактури за контрагенти, с които сте свързан като търговски представител. -RevenueStamp=Приходен печат (бандерол) +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=Тази опция е налична само при създаване на фактура от раздел "Клиент" на контрагента YouMustCreateInvoiceFromSupplierThird=Тази опция е налична само при създаването на фактура от раздел "Доставчик" на контрагента YouMustCreateStandardInvoiceFirstDesc=Първо трябва да създадете стандартна фактура и да я конвертирате в „шаблон“, за да създадете нова шаблонна фактура @@ -550,7 +546,7 @@ DisabledBecauseFinal=Тази ситуация е финална. situationInvoiceShortcode_AS=КАТО situationInvoiceShortcode_S=С CantBeLessThanMinPercent=Напредъкът не може да бъде по-малък от стойността в предишната ситуация. -NoSituations=Няма отворени ситуации +NoSituations=Няма активни ситуации InvoiceSituationLast=Последна и обща фактура PDFCrevetteSituationNumber=Ситуация №%s PDFCrevetteSituationInvoiceLineDecompte=Ситуационна фактура - Преброяване @@ -575,3 +571,4 @@ AutoFillDateTo=Посочете крайна дата на услуга в за AutoFillDateToShort=Задаване на крайна дата MaxNumberOfGenerationReached=Максималният брой генерирани документи е достигнат BILL_DELETEInDolibarr=Фактурата е изтрита +BILL_SUPPLIER_DELETEInDolibarr=Фактурата за доставка е изтрита diff --git a/htdocs/langs/bg_BG/blockedlog.lang b/htdocs/langs/bg_BG/blockedlog.lang index 372aa24a92b..60c5d813935 100644 --- a/htdocs/langs/bg_BG/blockedlog.lang +++ b/htdocs/langs/bg_BG/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Неизменими регистри ShowAllFingerPrintsMightBeTooLong=Показване на всички архивирани регистри (може да са дълги) ShowAllFingerPrintsErrorsMightBeTooLong=Показване на всички невалидни архивирани регистри (може да са дълги) DownloadBlockChain=Изтегляне на идентификационни данни -KoCheckFingerprintValidity=Записът в архивираният регистър не е валиден. Това означава, че някой (хакер?) е променил данните тук, след като е бил направен запис или е изтрил предишния архивиран запис (сравнете този ред с предишния #, който съществува). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Записът в архивираният регистър е валиден. Данните от този ред не са променени и записът следва предишния. OkCheckFingerprintValidityButChainIsKo=Архивираният регистър изглежда валиден в сравнение с предишния, но веригата е повредена от преди това. AddedByAuthority=Съхранено в отдалечен орган diff --git a/htdocs/langs/bg_BG/cashdesk.lang b/htdocs/langs/bg_BG/cashdesk.lang index a6d1891c088..28d7540f858 100644 --- a/htdocs/langs/bg_BG/cashdesk.lang +++ b/htdocs/langs/bg_BG/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Добавете артикула RestartSelling=Обратно към продажбите SellFinished=Продажбата е завършена PrintTicket=Отпечатване на етикет +SendTicket=Изпращане на етикет NoProductFound=Няма открит артикул ProductFound=открит продукт NoArticle=Няма артикул @@ -48,6 +49,7 @@ Footer=Футър AmountAtEndOfPeriod=Сума в края на периода (ден, месец или година) TheoricalAmount=Теоретична сума RealAmount=Реална сума +CashFence=Cash fence CashFenceDone=Парична граница за периода NbOfInvoices=Брой фактури Paymentnumpad=Тип Pad за въвеждане на плащане @@ -56,11 +58,12 @@ BillsCoinsPad=Pad за монети и банкноти DolistorePosCategory=TakePOS модули и други ПОС решения за Dolibarr TakeposNeedsCategories=TakePOS се нуждае от продуктови категории, за да работи OrderNotes=Бележки за поръчка -CashDeskBankAccountFor=Профил по подразбиране, който да се използва за плащания в +CashDeskBankAccountFor=Сметка по подразбиране, която да се използва за плащания с NoPaimementModesDefined=В конфигурацията на TakePOS не е определен тип на плащане -TicketVatGrouped=Групиране на ДДС по ставка в билетите -AutoPrintTickets=Автоматично отпечатване на билети -EnableBarOrRestaurantFeatures=Включете функции за бар или ресторант +TicketVatGrouped=Групиране на ДДС по ставка в етикети / разписки +AutoPrintTickets=Автоматично отпечатване на етикети / разписки +PrintCustomerOnReceipts=Отпечатване на клиент върху етикети / разписки +EnableBarOrRestaurantFeatures=Функции за бар или ресторант ConfirmDeletionOfThisPOSSale=Потвърждавате ли изтриването на настоящата продажба? ConfirmDiscardOfThisPOSSale=Искате ли да отхвърлите тази текуща продажба? History=История @@ -87,7 +90,19 @@ HeadBar=Заглавна лента SortProductField=Поле за сортиране на продукти Browser=Браузър BrowserMethodDescription=Прост и лесен отпечатване на разписки. Само няколко параметъра за конфигуриране на разписката. Отпечатване, чрез браузър. -TakeposConnectorMethodDescription=Външен модул с допълнителни функции. Възможност за отпечатване от облака. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Метод на отпечатване ReceiptPrinterMethodDescription=Мощен метод с много параметри. Пълно персонализиране с шаблони. Не може да отпечатва от облака. -ByTerminal=By terminal +ByTerminal=По терминал +TakeposNumpadUsePaymentIcon=Използване на икона за плащане в цифровия панел +CashDeskRefNumberingModules=Модул за номериране на каси +CashDeskGenericMaskCodes6 =
    {TN} тагът се използва за добавяне на номера на терминала +TakeposGroupSameProduct=Групиране на едни и същи продукти +StartAParallelSale=Стартиране на нова паралелна продажба +ControlCashOpening=Контролиране на каса при стартиране на ПОС +CloseCashFence=Close cash fence +CashReport=Паричен отчет +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/bg_BG/companies.lang b/htdocs/langs/bg_BG/companies.lang index d0da486bd28..5118a9a8ede 100644 --- a/htdocs/langs/bg_BG/companies.lang +++ b/htdocs/langs/bg_BG/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted=Фирма "%s" е изтрита от базата данни. ListOfContacts=Списък на контакти / адреси ListOfContactsAddresses=Списък на контакти / адреси ListOfThirdParties=Списък на контрагенти -ShowCompany=Показване на контрагент ShowContact=Показване на контакт ContactsAllShort=Всички (без филтър) ContactType=Тип контакт @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=Собствено име на търговския SaleRepresentativeLastname=Фамилия на търговския представител ErrorThirdpartiesMerge=При изтриването на контрагента възникна грешка. Моля, проверете историята. Промените са отменени. NewCustomerSupplierCodeProposed=Кода на клиент или доставчик е вече използван, необходим е нов код. +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Начин на плащане - клиент PaymentTermsCustomer=Условия за плащане - Клиент diff --git a/htdocs/langs/bg_BG/compta.lang b/htdocs/langs/bg_BG/compta.lang index 3b9a13a5d6b..e89f987a70d 100644 --- a/htdocs/langs/bg_BG/compta.lang +++ b/htdocs/langs/bg_BG/compta.lang @@ -68,7 +68,7 @@ SpecialExpensesArea=Секция за всички специални плаща SocialContribution=Социален или фискален данък SocialContributions=Социални или фискални данъци SocialContributionsDeductibles=Приспадащи се социални или фискални данъци -SocialContributionsNondeductibles=Не приспадащи се социални или данъчни данъци +SocialContributionsNondeductibles=Не приспадащи се социални или фискални данъци LabelContrib=Име на вноска TypeContrib=Тип вноска MenuSpecialExpenses=Специални разходи @@ -139,8 +139,8 @@ ConfirmDeleteSocialContribution=Сигурни ли сте, че искате д ExportDataset_tax_1=Социални / фискални данъци и плащания CalcModeVATDebt=Режим %sДДС върху осчетоводени задължения%s CalcModeVATEngagement=Режим %sДДС върху приходи - разходи%s -CalcModeDebt=Анализ на регистрираните фактури, дори ако те все още не са осчетоводени в книгата. -CalcModeEngagement=Анализ на регистрираните плащания, дори ако те все още не са осчетоводени в книгата. +CalcModeDebt=Анализ на регистрирани фактури, включително на неосчетоводени в книгата +CalcModeEngagement=Анализ на регистрирани плащания, включително на неосчетоводени в книгата CalcModeBookkeeping=Анализ на данни, регистрирани в таблицата на счетоводната книга. CalcModeLT1= Режим %sRE върху фактури за продажба - фактури за доставка%s CalcModeLT1Debt=Режим %sRE върху фактури за продажба%s @@ -157,17 +157,17 @@ SeeReportInInputOutputMode=Вижте %sанализа на плащанията SeeReportInDueDebtMode=Вижте %sанализа на фактурите%s за изчисляване, който е базиран на регистираните фактури, дори и ако те все още не са осчетоводени в книгата. SeeReportInBookkeepingMode=Вижте %sСчетоводния доклад%s за изчисляване на таблицата в счетоводната книга RulesAmountWithTaxIncluded=- Посочените суми са с включени всички данъци -RulesResultDue=- Включва неизплатени фактури, разходи, ДДС, дарения, независимо дали са платени или не. Включва също платени заплати.
    - Основава се на датата на валидиране на фактурите и ДДС и на датата на падежа на разходите. За заплати, определени с модула заплати се използва датата на плащането. -RulesResultInOut=- Включва реалните плащания по фактури, разходи, ДДС и заплати.
    - Основава се на датите на плащане на фактурите, разходите, ДДС и заплатите. Датата на дарение за дарения. -RulesCADue=- Включва дължимите фактури на клиента, независимо дали са платени или не.
    - Базирани на датата на валидиране на тези фактури.
    -RulesCAIn=- Включва всички ефективни плащания по фактури, получени от клиенти.
    - Базирани на датата на плащане на тези фактури
    +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. +RulesResultInOut=- Включва реални плащания по фактури, разходи, ДДС и заплати
    - Основава се на дата на плащане на фактури, разходи, ДДС и заплати. Дата на дарение за дарения. +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    +RulesCAIn=- Включва всички реални плащания по фактури, получени от клиенти
    - Основава се на дата на плащане на тези фактури
    RulesCATotalSaleJournal=Включва всички кредитни линии от журнала за продажба. RulesAmountOnInOutBookkeepingRecord=Включва запис във вашата книга със счетоводни сметки, които са в групата "РАЗХОД" или "ПРИХОД" RulesResultBookkeepingPredefined=Включва запис във вашата книга със счетоводни сметки, които са в групата "РАЗХОД" или "ПРИХОД" RulesResultBookkeepingPersonalized=Показва запис във вашата книга със счетоводни сметки , групирани в персонализирани групи SeePageForSetup=Вижте менюто %s за настройка -DepositsAreNotIncluded=- Фактурите за авансови плащания не са включени -DepositsAreIncluded=- Фактурите за авансови плащания са включени +DepositsAreNotIncluded=- Не включва фактури за авансови плащания +DepositsAreIncluded=- Включва фактури за авансови плащания LT1ReportByCustomers=Справка за данък 2 по контрагент LT2ReportByCustomers=Справка за данък 3 по контрагент LT1ReportByCustomersES=Справка за RE по контрагент @@ -219,8 +219,8 @@ Mode1=Метод 1 Mode2=Метод 2 CalculationRuleDesc=За изчисляване на общия ДДС има два метода:
    Метод 1 закръгля ДДС за всеки ред, след което ги сумира.
    Метод 2 сумира ДДС от всеки ред, след което закръглява резултатът.
    Крайните резултати може да се различават в известна степен. Метод по подразбиране е метод %s. CalculationRuleDescSupplier=Според доставчика, изберете подходящ метод, за да приложите същото правило за изчисление и да получите същия резултат, очакван от вашия доставчик. -TurnoverPerProductInCommitmentAccountingNotRelevant=Справката за оборот, натрупан от продукт, не е наличен. Тази справка е налице само за фактуриран оборот. -TurnoverPerSaleTaxRateInCommitmentAccountingNotRelevant=Справката за оборот, натрупан от данък върху продажбите, не е наличен. Тази справка е налице само за фактуриран оборот. +TurnoverPerProductInCommitmentAccountingNotRelevant=Отчетът за оборот, натрупан от продукт, не е наличен. Този отчет е наличен само за фактуриран оборот. +TurnoverPerSaleTaxRateInCommitmentAccountingNotRelevant=Отчетът за оборот, натрупан от данък върху продажбите, не е наличен. Този отчет е наличен само за фактуриран оборот. CalculationMode=Режим на изчисление AccountancyJournal=Счетоводен код на журнал ACCOUNTING_VAT_SOLD_ACCOUNT=Счетоводна сметка по подразбиране за ДДС при продажби (използва се, ако не е определена при настройка на речника за ДДС) @@ -255,3 +255,10 @@ TurnoverbyVatrate=Оборот, фактуриран по ставка на ДД TurnoverCollectedbyVatrate=Оборот, натрупан по ставка на ДДС PurchasebyVatrate=Покупка по ставка на ДДС LabelToShow=Кратко означение +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/bg_BG/errors.lang b/htdocs/langs/bg_BG/errors.lang index e8d46885c8a..58564caac1b 100644 --- a/htdocs/langs/bg_BG/errors.lang +++ b/htdocs/langs/bg_BG/errors.lang @@ -46,9 +46,9 @@ ErrorUserCannotBeDelete=Потребителят не може да бъде и ErrorFieldsRequired=Някои задължителни полета не са попълнени. ErrorSubjectIsRequired=Необходима е тема на имейл ErrorFailedToCreateDir=Неуспешно създаване на директория. Уверете се, че уеб сървър потребител има разрешение да пишат в Dolibarr документи. Ако параметър safe_mode е разрешен в тази PHP, проверете дали Dolibarr PHP файлове притежава за потребителя на уеб сървъра (или група). -ErrorNoMailDefinedForThisUser=Не поща, определена за този потребител +ErrorNoMailDefinedForThisUser=Няма дефиниран имейл за този потребител ErrorFeatureNeedJavascript=Тази функция трябва ДжаваСкрипт да се активира, за да работят. Променете тази настройка - дисплей. -ErrorTopMenuMustHaveAParentWithId0=Менюто на "Топ" тип не може да има меню майка. Поставете 0 в майка меню или изберете меню от типа "ляво". +ErrorTopMenuMustHaveAParentWithId0=Меню от тип 'Горно' не може да има главно меню. Поставете 0 за главно меню или изберете меню от тип 'Ляво'. ErrorLeftMenuMustHaveAParentId=Менюто на "левицата" тип трябва да имат родителски идентификатор. ErrorFileNotFound=Файлът не %s намерена (Bad път, грешни права или отказан достъп от PHP openbasedir или safe_mode параметър) ErrorDirNotFound=Директория %s не е намерен (Bad път, грешни права или отказан достъп от PHP openbasedir или safe_mode параметър) @@ -59,6 +59,7 @@ ErrorPartialFile=Файла не е получил изцяло от сървъ ErrorNoTmpDir=Временно за директно %s не съществува. ErrorUploadBlockedByAddon=Качи блокиран от PHP / Apache плъгин. ErrorFileSizeTooLarge=Размерът на файла е твърде голям. +ErrorFieldTooLong=Полето %s е твърде дълго ErrorSizeTooLongForIntType=Размер твърде дълго за Вътрешна (%s цифри максимум) ErrorSizeTooLongForVarcharType=Размер твърде дълго за низ тип (%s символа максимум) ErrorNoValueForSelectType=Моля попълнете стойност за списък избиране @@ -122,7 +123,7 @@ ErrorLinesCantBeNegativeForOneVATRate=Total of lines can't be negative for a giv ErrorLinesCantBeNegativeOnDeposits=Редовете не могат да бъдат отрицателни при депозит. Ще се сблъскате с проблеми, когато включите депозита в окончателната фактура. ErrorQtyForCustomerInvoiceCantBeNegative=Количество за ред в клиентска фактура не може да бъде отрицателно ErrorWebServerUserHasNotPermission=Потребителски акаунт %s използват за извършване на уеб сървър не разполага с разрешение за това -ErrorNoActivatedBarcode=Не е тип баркод активира +ErrorNoActivatedBarcode=Няма активиран тип баркод ErrUnzipFails=Неуспех да разархивирате %s с ZipArchive ErrNoZipEngine=Няма инструмент за архивиране/разархивиране на файл %s в PHP ErrorFileMustBeADolibarrPackage=Файла %s трябва да бъде Dolibarr zip архив @@ -233,8 +234,9 @@ ErrorLanguageMandatoryIfPageSetAsTranslationOfAnother=Грешка, езикът ErrorLanguageOfTranslatedPageIsSameThanThisPage=Грешка, езикът на преведената страница е същият като този. ErrorBatchNoFoundForProductInWarehouse=Няма намерен партиден / сериен номер за продукт '%s' в склад '%s'. ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=Няма достатъчно количество от този партиден / сериен номер за продукт '%s' в склад '%s'. -ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorOnlyOneFieldForGroupByIsPossible=Възможно е само едно поле за 'Групиране по' (другите се пренебрегват) +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # Warnings WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Вашата стойност на PHP параметър upload_max_filesize (%s) е по-голяма от стойността на PHP параметър post_max_size (%s). Това не е последователна настройка. WarningPasswordSetWithNoAccount=За този член бе зададена парола. Въпреки това, не е създаден потребителски акаунт. Така че тази парола е съхранена, но не може да се използва за влизане в Dolibarr. Може да се използва от външен модул/интерфейс, но ако не е необходимо да дефинирате потребителско име или парола за член може да деактивирате опцията "Управление на вход за всеки член" от настройката на модула Членове. Ако трябва да управлявате вход, но не се нуждаете от парола, можете да запазите това поле празно, за да избегнете това предупреждение. Забележка: Имейлът може да се използва и като вход, ако членът е свързан с потребител. @@ -259,5 +261,5 @@ WarningYourLoginWasModifiedPleaseLogin=Входните ви данни са п WarningAnEntryAlreadyExistForTransKey=Вече съществува запис за ключа за превод за този език WarningNumberOfRecipientIsRestrictedInMassAction=Внимание, броят на различните получатели е ограничен до %s, когато се използват масови действия в списъците WarningDateOfLineMustBeInExpenseReportRange=Внимание, датата на реда не е в обхвата на разходния отчет -WarningProjectClosed=Проектът е затворен. Трябва първо да го отворите отново. +WarningProjectClosed=Проектът е приключен. Трябва първо да го активирате отново. WarningSomeBankTransactionByChequeWereRemovedAfter=Някои банкови транзакции бяха премахнати, след което бе генерирана разписка, в която са включени. Броят на чековете и общата сума на разписката може да се различават от броя и общата сума в списъка. diff --git a/htdocs/langs/bg_BG/install.lang b/htdocs/langs/bg_BG/install.lang index 008cb0e89bd..e4abfe30de4 100644 --- a/htdocs/langs/bg_BG/install.lang +++ b/htdocs/langs/bg_BG/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=PHP поддържа Curl. PHPSupportCalendar=PHP поддържа разширения на календари. PHPSupportUTF8=PHP поддържа UTF8 функции. PHPSupportIntl=PHP поддържа Intl функции. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=PHP поддържа %s функции. PHPMemoryOK=Максималният размер на паметта за PHP сесия е настроен на %s. Това трябва да е достатъчно. PHPMemoryTooLow=Вашият максимален размер на паметта за PHP сесия е настроен на %s байта. Това е твърде ниско. Променете php.ini като зададете стойност на параметър memory_limit поне %s байта. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=Вашата PHP инсталация не поддъ ErrorPHPDoesNotSupportCalendar=Вашата PHP инсталация не поддържа разширения за календар. ErrorPHPDoesNotSupportUTF8=Вашата PHP инсталация не поддържа UTF8 функции. Dolibarr не може да работи правилно. Решете това преди да инсталирате Dolibarr. ErrorPHPDoesNotSupportIntl=Вашата PHP инсталация не поддържа Intl функции. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Вашата PHP инсталация не поддържа %s функции. ErrorDirDoesNotExists=Директорията %s не съществува. ErrorGoBackAndCorrectParameters=Върнете се назад и проверете / коригирайте параметрите. @@ -182,10 +184,10 @@ MigrationContractsInvalidDatesNothingToUpdate=Няма неправилни да MigrationContractsIncoherentCreationDateUpdate=Корекция на неправилни дати на създаване в договори MigrationContractsIncoherentCreationDateUpdateSuccess=Корекцията на неправилните дати на създаване в договори е успешно извършена MigrationContractsIncoherentCreationDateNothingToUpdate=Няма неправилни дати на създаване в договори за коригиране -MigrationReopeningContracts=Отворен договор е затворен с грешка +MigrationReopeningContracts=Активен договор е приключен с грешка MigrationReopenThisContract=Повторно отваряне на договор %s MigrationReopenedContractsNumber=%s променен(и) договор(а) -MigrationReopeningContractsNothingToUpdate=Няма затворени договори за отваряне +MigrationReopeningContractsNothingToUpdate=Няма приключени договори за актуализиране MigrationBankTransfertsUpdate=Актуализиране на връзките между банков запис и банков превод MigrationBankTransfertsNothingToUpdate=Всички връзки са актуални MigrationShipmentOrderMatching=Актуализация на експедиционни бележки @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=Приложението се опита да с YouTryInstallDisabledByFileLock=Приложението се опита да се самоактуализира, но страниците за инсталация / актуализация са били изключени от гледна точка на сигурност (от наличието на заключващ файл install.lock в директорията documents на Dolibarr).
    ClickHereToGoToApp=Кликнете тук, за да отидете в приложението си ClickOnLinkOrRemoveManualy=Кликнете върху следната връзка. Ако винаги виждате същата страница, трябва да премахнете / преименувате файла install.lock в директорията documents на Dolibarr. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/bg_BG/link.lang b/htdocs/langs/bg_BG/link.lang index 82f13ef5198..047d53902e2 100644 --- a/htdocs/langs/bg_BG/link.lang +++ b/htdocs/langs/bg_BG/link.lang @@ -8,3 +8,4 @@ LinkRemoved=Връзката %s е премахната ErrorFailedToDeleteLink= Премахването на връзката '%s' не е успешно ErrorFailedToUpdateLink= Актуализацията на връзката '%s' не е успешна URLToLink=URL адрес +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/bg_BG/mails.lang b/htdocs/langs/bg_BG/mails.lang index 83e195432d4..e0396ddfaa9 100644 --- a/htdocs/langs/bg_BG/mails.lang +++ b/htdocs/langs/bg_BG/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=Няма намерен контакт/адрес с NoContactLinkedToThirdpartieWithCategoryFound=Няма намерен контакт/адрес с тази категория OutGoingEmailSetup=Настройка на изходяща електронна поща InGoingEmailSetup=Настройка на входящата поща -OutGoingEmailSetupForEmailing=Настройка на изходяща електронна поща (за масово изпращане по имейл) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Настройка на изходящата поща по подразбиране Information=Информация ContactsWithThirdpartyFilter=Контакти с филтър за контрагент diff --git a/htdocs/langs/bg_BG/main.lang b/htdocs/langs/bg_BG/main.lang index c3f5487e1b0..c5fdbe37db2 100644 --- a/htdocs/langs/bg_BG/main.lang +++ b/htdocs/langs/bg_BG/main.lang @@ -61,7 +61,7 @@ ErrorDuplicateField=Дублиране в поле с уникални стой ErrorSomeErrorWereFoundRollbackIsDone=Намерени са някои грешки. Промените бяха отменени. ErrorConfigParameterNotDefined=Параметър %s не е дефиниран в конфигурационния файл на Dolibarr conf.php . ErrorCantLoadUserFromDolibarrDatabase=Не е открит потребител %s в базата данни. -ErrorNoVATRateDefinedForSellerCountry=Грешка, не са дефинирани ДДС ставки за държавата „%s“. +ErrorNoVATRateDefinedForSellerCountry=Грешка, не са дефинирани ДДС ставки за държавата "%s". ErrorNoSocialContributionForSellerCountry=Грешка, не е дефиниран тип за социални / фискални данъци за държавата "%s". ErrorFailedToSaveFile=Грешка, неуспешно записване на файл. ErrorCannotAddThisParentWarehouse=Опитвате се да добавите основен склад, който вече е под-склад на съществуващ склад @@ -143,7 +143,7 @@ Activate=Активиране Activated=Активирано Closed=Приключен Closed2=Неактивен -NotClosed=Не е затворен +NotClosed=Не е приключен Enabled=Активен Enable=Включване Deprecated=Отхвърлено @@ -174,6 +174,7 @@ SaveAndStay=Съхраняване SaveAndNew=Съхраняване и създаване TestConnection=Проверяване на връзката ToClone=Клониране +ConfirmCloneAsk=Сигурни ли сте, че искате да клонирате обект %s? ConfirmClone=Изберете данни, които искате да клонирате: NoCloneOptionsSpecified=Няма определени данни за клониране. Of=на @@ -417,7 +418,7 @@ VATNPR=Данъчна ставка NPR DefaultTaxRate=Данъчна ставка по подразбиране Average=Средно Sum=Сума -Delta=Делта +Delta=Разлика StatusToPay=За плащане RemainToPay=Оставащо за плащане Module=Модул / Приложение @@ -429,7 +430,7 @@ Statistics=Статистика OtherStatistics=Други статистически данни Status=Статус Favorite=Фаворит -ShortInfo=Инфо. +ShortInfo=Информация Ref=№ ExternalRef=Външен № RefSupplier=Изх. № на доставчик @@ -438,7 +439,7 @@ CommercialProposalsShort=Търговски предложения Comment=Коментар Comments=Коментари ActionsToDo=Предстоящи събития -ActionsToDoShort=Да се направи +ActionsToDoShort=За извършване ActionsDoneShort=Завършено ActionNotApplicable=Не се прилага ActionRunningNotStarted=За започване @@ -457,7 +458,7 @@ ActionsOnContract=Свързани събития ActionsOnMember=Събития за този член ActionsOnProduct=Събития за този продукт NActionsLate=%s закъснели -ToDo=Да се направи +ToDo=За извършване Completed=Завършено Running=В процес RequestAlreadyDone=Заявката вече е записана @@ -472,8 +473,8 @@ Duration=Продължителност TotalDuration=Обща продължителност Summary=Резюме DolibarrStateBoard=Статистика от базата данни -DolibarrWorkBoard=Отворени елементи -NoOpenedElementToProcess=Няма отворен елемент за обработка +DolibarrWorkBoard=Активни елементи +NoOpenedElementToProcess=Няма активен елемент за обработка Available=Налично NotYetAvailable=Все още не е налично NotAvailable=Не е налично @@ -593,8 +594,8 @@ JoinMainDoc=Присъединете към основния документ DateFormatYYYYMM=YYYY-MM DateFormatYYYYMMDD=YYYY-MM-DD DateFormatYYYYMMDDHHMM=YYYY-MM-DD HH:SS -ReportName=Име на отчета -ReportPeriod=Период на отчета +ReportName=Име на отчет +ReportPeriod=Период на отчет ReportDescription=Описание Report=Отчет Keyword=Ключова дума @@ -659,7 +660,7 @@ AlreadyRead=Вече е прочетено NotRead=Непрочетено NoMobilePhone=Няма мобилен телефон Owner=Собственик -FollowingConstantsWillBeSubstituted=Следните константи ще бъдат заменени със съответната стойност. +FollowingConstantsWillBeSubstituted=Следните константи ще бъдат заменени със съответната стойност: Refresh=Обновяване BackToList=Назад към списъка GoBack=Назад @@ -745,7 +746,7 @@ Result=Резултат ToTest=Тест ValidateBefore=Елементът трябва да бъде валидиран, преди да използвате тази функция. Visibility=Видимост -Totalizable=Обобщаване +Totalizable=Обобщеност TotalizableDesc=Това поле е обобщаващо в списъка Private=Личен Hidden=Скрит @@ -829,6 +830,8 @@ Gender=Пол Genderman=Мъж Genderwoman=Жена ViewList=Списъчен изглед +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Задължително Hello=Здравейте GoodBye=Довиждане @@ -898,8 +901,8 @@ LeadOrProject=Възможност | Проект LeadsOrProjects=Възможности | Проекти Lead=Възможност Leads=Възможности -ListOpenLeads=Отворени възможности -ListOpenProjects=Отворени проекти +ListOpenLeads=Активни възможности +ListOpenProjects=Активни проекти NewLeadOrProject=Нова възможност или проект Rights=Права LineNb=Ред № @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Изберете опциите за изгражд Measures=Мерки XAxis=Х-ос YAxis=Y-ос +StatusOfRefMustBe=Статуса на %s трябва да бъде %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/bg_BG/modulebuilder.lang b/htdocs/langs/bg_BG/modulebuilder.lang index f6582a9152d..fb58554aed1 100644 --- a/htdocs/langs/bg_BG/modulebuilder.lang +++ b/htdocs/langs/bg_BG/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=Списък на записи в речници ListOfPermissionsDefined=Списък на дефинирани права SeeExamples=Вижте примери тук EnabledDesc=Условие това поле да бъде активно (Примери: 1 или $conf->global->MYMODULE_MYOPTION) -VisibleDesc=Видимо ли е полето? (Примери: 0 = Никога не се вижда, 1 = Видимо в списък и формуляри за създаване / актуализиране / преглеждане, 2 = Видимо само в списък, 3 = Видимо само във формуляр за създаване / актуализиране / преглеждане (не и в списък), 4 = Видимо само в списък и във формуляр за актуализиране / преглеждане (не и за създаване), 5 = Видимо само в списък и във формуляр за преглеждане (не и за създаване и актуализиране). Използването на отрицателна стойност означава, че полето не се показва по подразбиране в списък, но може да бъде избрано за преглеждане). Може да бъде израз, например:
    preg_match('/public/',$ _SERVER['PHP_SELF'])?0:1
    ($user->rights->vacation->define_holiday?1:0). -DisplayOnPdfDesc=Показване на това поле в съвместими PDF документи . +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty DisplayOnPdf=Показване в PDF IsAMeasureDesc=Може ли стойността в полето да бъде натрупвана, за да се получи обща в списъка? (Пример: 1 или 0) SearchAllDesc=Използва ли се полето за извършване на търсене, чрез инструмента за бързо търсене? (Пример: 1 или 0) diff --git a/htdocs/langs/bg_BG/multicurrency.lang b/htdocs/langs/bg_BG/multicurrency.lang new file mode 100644 index 00000000000..382ac1d2440 --- /dev/null +++ b/htdocs/langs/bg_BG/multicurrency.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Валути +ErrorAddRateFail=Грешка в добавения курс +ErrorAddCurrencyFail=Грешка в добавената валута +ErrorDeleteCurrencyFail=Грешка при изтриване +multicurrency_syncronize_error=Грешка при синхронизиране: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Използване на датата на документа за намиране на валутния курс, вместо да използване на най-новия известен курс +multicurrency_useOriginTx=Когато даден обект е създаден от друг запазва първоначалния курс от изходния обект (в противен случай използва най-новия известен курс) +CurrencyLayerAccount=API на CurrencyLayer +CurrencyLayerAccount_help_to_synchronize=Трябва да създадете акаунт в сайта %s, за да използвате тази функция.
    Вземете своя API ключ.
    Ако използвате безплатен акаунт, не може да променяте валутния източник (USD по подразбиране).
    Ако основната ви валута не е USD, приложението автоматично ще я калкулира.

    Ограничени сте до 1000 синхронизации на месец. +multicurrency_appId=API ключ +multicurrency_appCurrencySource=Валутен източник +multicurrency_alternateCurrencySource=Алтернативен валутен източник +CurrenciesUsed=Използвани валути +CurrenciesUsed_help_to_add=Добавете различните валути и курсове, които трябва да използвате във вашите предложения, поръчки и др. +rate=курс +MulticurrencyReceived=Получена сума, основна валута +MulticurrencyRemainderToTake=Оставаща сума, основна валута +MulticurrencyPaymentAmount=Сума за плащане, оригинална валута +AmountToOthercurrency=Сума до (във валута на сметката за получаване) +CurrencyRateSyncSucceed=Синхронизирането на валутни курсове е извършено успешно +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Използване на валутата в документа при онлайн плащания diff --git a/htdocs/langs/bg_BG/orders.lang b/htdocs/langs/bg_BG/orders.lang index b19a1664578..09890779ff5 100644 --- a/htdocs/langs/bg_BG/orders.lang +++ b/htdocs/langs/bg_BG/orders.lang @@ -141,7 +141,7 @@ OrderByEMail=Имейл OrderByWWW=Онлайн OrderByPhone=Телефон # Documents models -PDFEinsteinDescription=Пълен шаблон на поръчка (стара реализация на шаблон Eratosthene)) +PDFEinsteinDescription=Пълен шаблон на поръчка PDFEratostheneDescription=Пълен шаблон на поръчка PDFEdisonDescription=Опростен шаблон за поръчка PDFProformaDescription=Пълен шаблон за проформа-фактура diff --git a/htdocs/langs/bg_BG/other.lang b/htdocs/langs/bg_BG/other.lang index b2d59a2aa81..db0d1a6edd7 100644 --- a/htdocs/langs/bg_BG/other.lang +++ b/htdocs/langs/bg_BG/other.lang @@ -30,11 +30,11 @@ PreviousYearOfInvoice=Предишна година от дата на факт NextYearOfInvoice=Следваща година от дата на фактурата DateNextInvoiceBeforeGen=Дата на следващата фактура (преди генериране) DateNextInvoiceAfterGen=Дата на следващата фактура (след генериране) -GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mode. The mode 'Lines' was automatically selected instead. +GraphInBarsAreLimitedToNMeasures=Графиките са ограничени до %s измервания в режим 'Ленти'. Вместо това автоматично е избран режимът 'Линии'. OnlyOneFieldForXAxisIsPossible=Понастоящем е възможно само 1 поле за X-ос. Само първото маркирано поле е избрано. AtLeastOneMeasureIsRequired=Изисква се поне 1 поле за измерване AtLeastOneXAxisIsRequired=Необходимо е поне 1 поле за X-ос - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Поръчката за продажба е валидирана Notify_ORDER_SENTBYMAIL=Поръчката за продажба е изпратена на имейл Notify_ORDER_SUPPLIER_SENTBYMAIL=Поръчката за покупка е изпратена на имейл @@ -51,7 +51,7 @@ Notify_WITHDRAW_EMIT=Извършване на оттегляне Notify_COMPANY_CREATE=Контрагентът е създаден Notify_COMPANY_SENTBYMAIL=Имейли изпратени от картата на контрагента Notify_BILL_VALIDATE=Фактурата за продажба е валидирана -Notify_BILL_UNVALIDATE=Фактурата за продажба е отворена отново +Notify_BILL_UNVALIDATE=Фактурата за продажба е активна отново Notify_BILL_PAYED=Фактурата за продажба е платена Notify_BILL_CANCEL=Фактурата за продажба е анулирана Notify_BILL_SENTBYMAIL=Фактурата за продажба е изпратена на имейл @@ -132,9 +132,9 @@ FeaturesSupported=Поддържани функции Width=Ширина Height=Височина Depth=Дълбочина -Top=Отгоре +Top=Горно Bottom=Отдолу -Left=Отляво +Left=Ляво Right=Отдясно CalculatedWeight=Изчислено тегло CalculatedVolume=Изчислен обем @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=URL адрес на страницата WEBSITE_TITLE=Заглавие WEBSITE_DESCRIPTION=Описание WEBSITE_IMAGE=Изображение -WEBSITE_IMAGEDesc=Относителен път до изображението. Може да запазите това празно, тъй като се използва рядко (може да се използва от динамично съдържание, за да се покаже миниатюра в списък с публикации в блога). Използвайте __WEBSITEKEY__ в пътя, ако пътят зависи от името на уебсайта. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Ключови думи LinesToImport=Редове за импортиране diff --git a/htdocs/langs/bg_BG/products.lang b/htdocs/langs/bg_BG/products.lang index 65ed5522789..7c7f0f55122 100644 --- a/htdocs/langs/bg_BG/products.lang +++ b/htdocs/langs/bg_BG/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=Този инструмент актуализира с MassBarcodeInit=Масова инициализация на баркодове MassBarcodeInitDesc=Тази страница може да се използва за инициализиране на баркод на обекти, които нямат дефиниран баркод. Проверете преди това дали настройката на модул 'Баркод' е завършена. ProductAccountancyBuyCode=Счетоводен код (покупка) +ProductAccountancyBuyIntraCode=Счетоводен код (вътреобщностна покупка) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Счетоводен код (продажба) ProductAccountancySellIntraCode=Счетоводен код (вътреобщностна продажба) ProductAccountancySellExportCode=Счетоводен код (експортна продажба) @@ -79,7 +81,7 @@ NewPrice=Нова цена MinPrice=Минимална продажна цена EditSellingPriceLabel=Променяне на етикета с продажна цена CantBeLessThanMinPrice=Продажната цена не може да бъде по-ниска от минимално допустимата за този продукт/услуга (%s без ДДС). Това съобщение може да се появи, ако въведете твърде голяма отстъпка. -ContractStatusClosed=Затворен +ContractStatusClosed=Приключен ErrorProductAlreadyExists=Вече съществува продукт / услуга с № %s. ErrorProductBadRefOrLabel=Грешна стойност за № или име ErrorProductClone=Възникна проблем при опит за клониране на продукта/услугата. @@ -165,7 +167,7 @@ SuppliersPrices=Доставни цени SuppliersPricesOfProductsOrServices=Доставни цени (на продукти / услуги) CustomCode=Митнически / Стоков / ХС код CountryOrigin=Държава на произход -Nature=Произход на продукта (суровина / произведен) +Nature=Nature of product (material/finished) ShortLabel=Кратко означение Unit=Мярка p=е. diff --git a/htdocs/langs/bg_BG/projects.lang b/htdocs/langs/bg_BG/projects.lang index 085bf0bbe35..7fae8e68de5 100644 --- a/htdocs/langs/bg_BG/projects.lang +++ b/htdocs/langs/bg_BG/projects.lang @@ -17,7 +17,7 @@ ProjectsPublicTaskDesc=Този изглед представя всички п ProjectsDesc=Този изглед представя всички проекти (вашите потребителски права ви дават разрешение да виждате всичко). TasksOnProjectsDesc=Този изглед представя всички задачи за всички проекти (вашите потребителски права ви дават разрешение да виждате всичко). MyTasksDesc=Този изглед е ограничен до проекти или задачи, в които сте определен за контакт -OnlyOpenedProject=Само отворените проекти са видими (чернови или приключени проекти не са видими). +OnlyOpenedProject=Само активните проекти са видими (чернови или приключени проекти не са видими). ClosedProjectsAreHidden=Приключените проекти не са видими. TasksPublicDesc=Този страница показва всички проекти и задачи, които може да прочетете. TasksDesc=Този страница показва всички проекти и задачи (вашите потребителски права ви дават разрешение да виждате всичко). @@ -31,9 +31,9 @@ DeleteAProject=Изтриване на проект DeleteATask=Изтриване на задача ConfirmDeleteAProject=Сигурни ли сте, че искате да изтриете този проект? ConfirmDeleteATask=Сигурни ли сте, че искате да изтриете тази задача? -OpenedProjects=Отворени проекти -OpenedTasks=Отворени задачи -OpportunitiesStatusForOpenedProjects=Размер на възможностите от отворени проекти по статус +OpenedProjects=Активни проекти +OpenedTasks=Активни задачи +OpportunitiesStatusForOpenedProjects=Размер на възможностите от активни проекти по статус OpportunitiesStatusForProjects=Размер на възможностите от проекти по статус ShowProject=Показване на проект ShowTask=Показване на задача @@ -52,7 +52,7 @@ TaskTimeSpent=Време, отделено на задачи TaskTimeUser=Потребител TaskTimeNote=Бележка TaskTimeDate=Дата -TasksOnOpenedProject=Задачи от отворени проекти +TasksOnOpenedProject=Задачи от активни проекти WorkloadNotDefined=Не е определена работна натовареност NewTimeSpent=Отделено време MyTimeSpent=Моето отделено време @@ -78,7 +78,7 @@ MyProjectsArea=Секция с мои проекти DurationEffective=Ефективна продължителност ProgressDeclared=Деклариран напредък TaskProgressSummary=Напредък на задачата -CurentlyOpenedTasks=Отворени задачи в момента +CurentlyOpenedTasks=Текущи активни задачи TheReportedProgressIsLessThanTheCalculatedProgressionByX=Декларираният напредък е по-малко %s от изчисления напредък TheReportedProgressIsMoreThanTheCalculatedProgressionByX=Декларираният напредък е повече %s от изчисления напредък ProgressCalculated=Изчислен напредък @@ -87,8 +87,6 @@ WhichIamLinkedToProject=с които съм свързан в проект Time=Време ListOfTasks=Списък със задачи GoToListOfTimeConsumed=Показване на списъка с изразходвано време -GoToListOfTasks=Показване като списък -GoToGanttView=Показване като Gantt GanttView=Gantt диаграма ListProposalsAssociatedProject=Списък на търговски предложения, свързани с проекта ListOrdersAssociatedProject=Списък на поръчки за продажба, свързани с проекта @@ -122,7 +120,7 @@ ValidateProject=Валидиране на проект ConfirmValidateProject=Сигурни ли сте, че искате да валидирате този проект? CloseAProject=Приключване на проект ConfirmCloseAProject=Сигурни ли сте, че искате да приключите този проект? -AlsoCloseAProject=Приключване на проект (задръжте го отворен, ако все още трябва да работите по задачите в него) +AlsoCloseAProject=Приключване на проект (задръжте го активен, ако все още трябва да работите по задачите в него) ReOpenAProject=Отваряне на проект ConfirmReOpenAProject=Сигурни ли сте, че искате да отворите повторно този проект? ProjectContact=Контакти / Участници @@ -188,7 +186,7 @@ PlannedWorkload=Планирана натовареност PlannedWorkloadShort=Натовареност ProjectReferers=Свързани елементи ProjectMustBeValidatedFirst=Проектът трябва първо да бъде валидиран -FirstAddRessourceToAllocateTime=Определете потребителски ресурс на задачата за разпределяне на времето +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=За ден InputPerWeek=За седмица InputPerMonth=За месец @@ -212,16 +210,16 @@ ProjectNbProjectByMonth=Брой създадени проекти на месе ProjectNbTaskByMonth=Брой създадени задачи на месец ProjectOppAmountOfProjectsByMonth=Сума на възможностите на месец ProjectWeightedOppAmountOfProjectsByMonth=Изчислена сума на възможностите на месец -ProjectOpenedProjectByOppStatus=Отворен проект / възможност по статус на възможността +ProjectOpenedProjectByOppStatus=Активен проект / възможност по статус на възможността ProjectsStatistics=Статистики на проекти / възможности TasksStatistics=Статистика на задачи TaskAssignedToEnterTime=Задачата е възложена. Въвеждането на време по тази задача трябва да е възможно. IdTaskTime=Идентификатор на време на задача YouCanCompleteRef=Ако искате да завършите номера с някакъв суфикс, препоръчително е да добавите символ "-", за да го отделите, така че автоматичното номериране да продължи да работи правилно за следващите проекти. Например %s-Суфикс -OpenedProjectsByThirdparties=Отворени проекти по контрагенти +OpenedProjectsByThirdparties=Активни проекти по контрагенти OnlyOpportunitiesShort=Само възможности -OpenedOpportunitiesShort=Отворени възможности -NotOpenedOpportunitiesShort=Неотворени възможности +OpenedOpportunitiesShort=Активни възможности +NotOpenedOpportunitiesShort=Неактивни възможности NotAnOpportunityShort=Не е възможност OpportunityTotalAmount=Обща сума на възможностите OpportunityPonderatedAmount=Изчислена сума на възможностите @@ -240,11 +238,12 @@ LatestModifiedProjects=Проекти: %s последно променени OtherFilteredTasks=Други филтрирани задачи NoAssignedTasks=Не са намерени възложени задачи (възложете проект / задачи на текущия потребител от най-горното поле за избор, за да въведете времето в него) ThirdPartyRequiredToGenerateInvoice=Трябва да бъде определен контрагент по проекта, за да може да генерирате фактура. +ChooseANotYetAssignedTask=Изберете задача, която все още не ви е възложена # Comments trans AllowCommentOnTask=Разрешаване на потребителски коментари в задачите AllowCommentOnProject=Разрешаване на потребителски коментари в проектите DontHavePermissionForCloseProject=Нямате права, за да приключите проект %s. -DontHaveTheValidateStatus=Проектът %s трябва да бъде отворен, за да го приключите. +DontHaveTheValidateStatus=Проектът %s трябва да бъде активен, за да го приключите. RecordsClosed=%s проект(а) е(са) приключен(и) SendProjectRef=Информация за проект %s ModuleSalaryToDefineHourlyRateMustBeEnabled=Модулът 'Заплати' трябва да бъде активиран, за да дефинирате почасова ставка на служителите, за да оценените отделеното по проекта време @@ -256,8 +255,8 @@ ServiceToUseOnLines=Услуга за използване по редовете InvoiceGeneratedFromTimeSpent=Фактура %s е генерирана въз основа на отделеното време по проекта ProjectBillTimeDescription=Маркирайте, ако въвеждате график на задачите в проекта и планирате да генерирате фактура(и) за клиента от графика на задачите в проекта (не маркирайте, ако планирате да създадете фактура, която не се основава на въведеният график на задачите). Забележка: За да генерирате фактура, отидете в раздела "Отделено време" на проекта и изберете редовете, които да включите. ProjectFollowOpportunity=Проследяване на възможности -ProjectFollowTasks=Проследяване на задачи -Usage=Usage +ProjectFollowTasks=Follow tasks or time spent +Usage=Употреба UsageOpportunity=Употреба: Възможност UsageTasks=Употреба: Задачи UsageBillTimeShort=Употреба: Фактуриране на време @@ -265,3 +264,4 @@ InvoiceToUse=Чернова фактура, която да използвате NewInvoice=Нова фактура OneLinePerTask=Един ред на задача OneLinePerPeriod=Един ред на период +RefTaskParent=Съгласно главна задача № diff --git a/htdocs/langs/bg_BG/propal.lang b/htdocs/langs/bg_BG/propal.lang index 2e87c9ef3a0..567c61986d2 100644 --- a/htdocs/langs/bg_BG/propal.lang +++ b/htdocs/langs/bg_BG/propal.lang @@ -76,7 +76,7 @@ TypeContact_propal_external_BILLING=Получател на фактура TypeContact_propal_external_CUSTOMER=Получател на предложение TypeContact_propal_external_SHIPPING=Получател на доставка # Document models -DocModelAzurDescription=Пълен шаблон на предложение (стара реализация на шаблон Cyan) +DocModelAzurDescription=Пълен шаблон на предложение DocModelCyanDescription=Пълен модел на предложение DefaultModelPropalCreate=Създаване на шаблон по подразбиране DefaultModelPropalToBill=Шаблон по подразбиране, когато се приключва търговско предложение (за да бъде фактурирано) diff --git a/htdocs/langs/bg_BG/receiptprinter.lang b/htdocs/langs/bg_BG/receiptprinter.lang index b7af63dc077..05efd4813a1 100644 --- a/htdocs/langs/bg_BG/receiptprinter.lang +++ b/htdocs/langs/bg_BG/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Фиктивен принтер CONNECTOR_NETWORK_PRINT=Мрежови принтер CONNECTOR_FILE_PRINT=Локален принтер CONNECTOR_WINDOWS_PRINT=Локален Windows принтер +CONNECTOR_CUPS_PRINT=CUPS принтер CONNECTOR_DUMMY_HELP=Фиктивен принтер за тест, не прави нищо CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=Име на CUPS принтер, пример: HPRT_TP805L PROFILE_DEFAULT=Профил по подразбиране PROFILE_SIMPLE=Обикновен профил PROFILE_EPOSTEP=Epos Tep профил @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Месец на фактура с букви DOL_VALUE_MONTH=Месец на фактура DOL_VALUE_DAY=Ден на фактура DOL_VALUE_DAY_LETTERS=Ден на фактура с букви +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Съгласно фактура № +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=ДДС № +DOL_VALUE_MYSOC_CAPITAL=Капитал +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/bg_BG/stripe.lang b/htdocs/langs/bg_BG/stripe.lang index fcd0789b5f7..b5cfa89acb3 100644 --- a/htdocs/langs/bg_BG/stripe.lang +++ b/htdocs/langs/bg_BG/stripe.lang @@ -32,6 +32,7 @@ VendorName=Име на доставчик CSSUrlForPaymentForm=URL адрес на CSS стил с формуляр за плащане NewStripePaymentReceived=Получено е ново Stripe плащане NewStripePaymentFailed=Неуспешен опит за ново Stripe плащане +FailedToChargeCard=Неупешно таксуване на карта STRIPE_TEST_SECRET_KEY=Тестов Secret ключ STRIPE_TEST_PUBLISHABLE_KEY=Тестов Publishable ключ STRIPE_TEST_WEBHOOK_KEY=Тестов Webhook ключ @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Връзка към настройка на Stripe We ToOfferALinkForLiveWebhook=Връзка към настройка на Stripe WebHook за извикване на IPN (реален режим) PaymentWillBeRecordedForNextPeriod=Плащането ще бъде регистрирано за следващия период. ClickHereToTryAgain=Кликнете тук, за да опитате отново ... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Поради строгите правила за автентификация на клиентите, създаването на карта трябва да се извърши от вътрешния интерфейс на Stripe. Може да кликнете тук, за да включите клиентския Stripe запис: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/bg_BG/users.lang b/htdocs/langs/bg_BG/users.lang index 38003af0e13..e5a96ba466f 100644 --- a/htdocs/langs/bg_BG/users.lang +++ b/htdocs/langs/bg_BG/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Потребители и техните реквизити DomainUser=Домейн потребител %s Reactivate=Възстановяване CreateInternalUserDesc=Тази форма позволява да създадете вътрешен потребител във вашата фирма / организация. За да създадете външен потребител (за клиент, доставчик и т.н.), използвайте бутона 'Създаване на потребител' в картата на контакта за този контрагент. -InternalExternalDesc=Вътрешния потребител е потребител, който е част от вашата фирма / организация.
    Външният потребител е клиент, доставчик или друг.

    И в двата случая разрешенията дефинират права в Dolibarr, също така външния потребител може да има различен мениджър на менюто от вътрешния потребител (Вижте Начало - Настройка - Дисплей) +InternalExternalDesc=Вътрешен потребител е този, който е част от вашата фирма / организация.
    Външен потребител е този, който е клиент, доставчик или друг (Външен потребител към контрагент може да бъде създаден от раздела 'Контакти / Адреси' на съответният контрагент).

    И в двата случая разрешенията определят права в Dolibarr, също така външният потребител може да има различен меню манипулатор от вътрешният (Вижте Начало - Настройка - Интерфейс). PermissionInheritedFromAGroup=Разрешението е предоставено, тъй като е наследено от една от групите на потребителя. Inherited=Наследено UserWillBeInternalUser=Създаденият потребителят ще бъде вътрешен потребител (тъй като не е свързан с определен контрагент) @@ -113,3 +113,5 @@ CantDisableYourself=Не можете да забраните собствени ForceUserExpenseValidator=Принудително валидиране на разходни отчети ForceUserHolidayValidator=Принудително валидиране на молби за отпуск ValidatorIsSupervisorByDefault=По подразбиране валидиращият е ръководителя на потребителя. Оставете празно, за да запазите това поведение. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/bg_BG/website.lang b/htdocs/langs/bg_BG/website.lang index b6b2033b01b..1a39c7e0d2b 100644 --- a/htdocs/langs/bg_BG/website.lang +++ b/htdocs/langs/bg_BG/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=Преглед на страницата в нов раздел SetAsHomePage=Задаване като начална страница RealURL=Реален URL адрес ViewWebsiteInProduction=Преглед на уебсайт, чрез начални URL адреси -SetHereVirtualHost=Използване, чрез Apache / NGinx / ...
    Ако може да създадете на вашия уеб сървър (Apache, Nginx, ...) специален виртуален хост с активиран PHP и основна директория в
    %s,
    то тогава посочете името на виртуалния хост, който сте създали в свойствата на уебсайта, така че прегледът може да се извърши и чрез този специализиран достъп до уеб сървъра, вместо чрез вътрешния Dolibarr сървър. +SetHereVirtualHost=Използвайте с Apache / Nginx / ...
    Създайте на вашият уеб сървър (Apache, Nginx, ...) специален виртуален хост с PHP поддръжка и основна директория в
    %s +ExampleToUseInApacheVirtualHostConfig=Пример за използване при настройка на виртуалния хост в Apache: YouCanAlsoTestWithPHPS=Използване, чрез вграден PHP сървър
    В среда за разработка може да предпочетете да тествате сайта с вградения PHP уеб сървър (изисква се PHP 5.5) като стартирате
    php -S 0.0.0.0:8080 -t %s YouCanAlsoDeployToAnotherWHP=Стартирайте уебсайта си на друг Dolibarr хостинг доставчик
    Ако нямате уеб сървър като Apache или NGinx в интернет може да експортирате и импортирате уебсайта си в друга Dolibarr инстанция, предоставена от друг Dolibarr хостинг доставчик, който осигурява пълна интеграция с модула на уебсайта. Може да намерите списък с някои доставчици на Dolibarr хостинг услуги на https://saas.dolibarr.org CheckVirtualHostPerms=Проверете също дали виртуалният хост има права за %s на файлове в
    %s @@ -56,7 +57,7 @@ NoPageYet=Все още няма страници YouCanCreatePageOrImportTemplate=Може да създадете нова страница или да импортирате пълен шаблон на уебсайт SyntaxHelp=Помощ с конкретни съвети за синтаксиса YouCanEditHtmlSourceckeditor=Може да редактирате изходния HTML код с помощта на бутона 'Код' в редактора. -YouCanEditHtmlSource=
    Може да включите PHP код в този изходен код с помощта на тагове <?php ?>. Налични са следните глобални променливи: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    Може също да включите съдържание на друга страница / контейнер със следния синтаксис:
    <?php includeContainer('alias_of_container_to_include'); ?>

    Може да направите пренасочване към друга страница / контейнер със следния синтаксис (Забележка: не извеждайте никакво съдържание преди пренасочване):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    За да добавите връзка към друга страница, използвайте синтаксиса:
    <a href='alias_of_page_to_link_to.php">mylink<a>

    За да включите връзка за изтегляне на файл, съхраняван в директорията с документи, използвайте обвивката document.php:
    Например, за файл в documents / ECM (необходимо е да сте влязъл в системата), синтаксисът е:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    За файл в documents / medias (директория с отворен обществен достъп) синтаксисът е:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    За файл, споделен с връзка за споделяне (отворен достъп с помощта на хеш ключ за споделяне на файл), синтаксисът е:
    <a href="/document.php?hashp=publicsharekeyoffile">

    За да вмъкнете изображение, съхранявано в директорията documents, използвайте обвивката viewimage.php:
    Например, за изображение в documents / medias (директория с отворен обществен достъп) синтаксисът е:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    Още примери за HTML или динамичен код са налични в Wiki документацията
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Клониране на страница / контейнер CloneSite=Клониране на сайт SiteAdded=Уебсайтът е добавен @@ -76,7 +77,7 @@ BlogPost=Блог пост WebsiteAccount=Уебсайт профил WebsiteAccounts=Уебсайт профили AddWebsiteAccount=Създаване на уебсайт профил -BackToListOfThirdParty=Обратно към списъка с контрагенти +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Първо деактивирайте уебсайта MyContainerTitle=Заглавието на моя уебсайт AnotherContainer=Ето как да включите съдържание от друга страница / контейнер (тук може да получите грешка, ако активирате динамичен код, защото вграденият подконтейнер може да не съществува). @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=За съжаление този уебсайт WEBSITE_USE_WEBSITE_ACCOUNTS=Активиране на таблица с уебсайт профили WEBSITE_USE_WEBSITE_ACCOUNTSTooltip=Активирайте таблица, която да съхранява уебсайт профили (потребителски имена / пароли) за всеки уебсайт / контрагент YouMustDefineTheHomePage=Първо трябва да дефинирате началната страница по подразбиране -OnlyEditionOfSourceForGrabbedContentFuture=Внимание: Създаването на уеб страница, чрез импортиране на външна уеб страница е препоръчително за опитни потребители. В зависимост от сложността на импортираната страница, резултатът може да се различава от оригинала. Също така, ако импортираната страницата използва общи CSS стилове или противоречащ JavaScript, тя може да наруши външния вид или функции на редактора на уебсайтове, когато се работи върху тази страница. Този метод е бърз начин за създаване на страница, но се препоръчва да създадете новата си страница от нулата или от предложен шаблон за страница.
    Обърнете внимание също, че редактирането на изходния HTML код ще бъде възможно, когато съдържанието на страницата е инициализирано, чрез прихващане на външна страница ("Онлайн" редакторът няма да бъде наличен). +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Когато съдържанието е прихванато от външен сайт е възможно само издание с изходен HTML код. GrabImagesInto=Прихващане на изображения открити в CSS и страница. ImagesShouldBeSavedInto=Изображенията трябва да бъдат записани в директория @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=Като добра SEO практика използ MainLanguage=Основен език OtherLanguages=Други езици UseManifest=Въведете manifest.json файл +PublicAuthorAlias=Публичен псевдоним на автора +AvailableLanguagesAreDefinedIntoWebsiteProperties=Наличните езици сa дефинирани в свойствата на уебсайта +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/bg_BG/zapier.lang b/htdocs/langs/bg_BG/zapier.lang new file mode 100644 index 00000000000..36779e36087 --- /dev/null +++ b/htdocs/langs/bg_BG/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier за Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Модул Zapier за Dolibarr + +# +# Admin page +# +ZapierForDolibarrSetup = Настройка на Zapier за Dolibarr diff --git a/htdocs/langs/bn_BD/accountancy.lang b/htdocs/langs/bn_BD/accountancy.lang index 1f9382137ea..b8ce37a0956 100644 --- a/htdocs/langs/bn_BD/accountancy.lang +++ b/htdocs/langs/bn_BD/accountancy.lang @@ -121,6 +121,7 @@ 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 +TotalForAccount=Total for accounting account Ventilate=Bind @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Accounting account to register donations ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (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 products sold in EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported 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_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (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_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unkno ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error PaymentsNotLinkedToProduct=Payment not linked to any product / service +OpeningBalance=Opening balance ShowOpeningBalance=Show opening balance HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Group of account PcgtypeDesc=Group 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. +Reconcilable=Reconcilable + TotalVente=Total turnover before tax TotalMarge=Total sales margin @@ -307,11 +317,13 @@ 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Chart of accounts Id ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC OptionModeProductSellExport=Mode sales exported in other countries OptionModeProductBuy=Mode purchases +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries 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. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=Remove accounting code from lines that not exists into charts of account CleanHistory=Reset all bindings for selected year PredefinedGroups=Predefined groups @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Account removed from group SaleLocal=Local sale SaleExport=Export sale SaleEEC=Sale in EEC +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=Range of accounting account diff --git a/htdocs/langs/bn_BD/admin.lang b/htdocs/langs/bn_BD/admin.lang index 2f36c876c1a..7eb67d7a4ab 100644 --- a/htdocs/langs/bn_BD/admin.lang +++ b/htdocs/langs/bn_BD/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Web server user/group NoSessionFound=Your PHP configuration seems to not allow listing of active sessions. The directory used to save sessions (%s) may be protected (for example by OS permissions or by PHP directive open_basedir). DBStoringCharset=Database charset to store data DBSortingCharset=Database charset to sort data +HostCharset=Host charset ClientCharset=Client charset ClientSortingCharset=Client collation WarningModuleNotActive=Module %s must be enabled @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the NoMaxSizeByPHPLimit=Note: No limit is set in your PHP configuration MaxSizeForUploadedFiles=Maximum size for uploaded files (0 to disallow any upload) UseCaptchaCode=Use graphical code (CAPTCHA) on login page -AntiVirusCommand= Full path to antivirus command -AntiVirusCommandExample= Example for ClamWin: c:\\Progra~1\\ClamWin\\bin\\clamscan.exe
    Example for ClamAv: /usr/bin/clamscan +AntiVirusCommand=Full path to antivirus command +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= More parameters on command line -AntiVirusParamExample= Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=Accounting module setup UserSetup=User management setup MultiCurrencySetup=Multi-currency setup @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Feature disabled in demo FeatureAvailableOnlyOnStable=Feature only available on official stable versions BoxesDesc=Widgets are components showing some information that you can add to personalize some pages. You can choose between showing the widget or not by selecting target page and clicking 'Activate', or by clicking the trashcan to disable it. OnlyActiveElementsAreShown=Only elements from enabled modules are shown. -ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button (at end of module line) to enable/disable a module/application. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. ModulesMarketPlaceDesc=You can find more modules to download on external websites on the Internet... ModulesDeployDesc=If permissions on your file system allow it, you can use this tool to deploy an external module. The module will then be visible on the tab %s. ModulesMarketPlaces=Find external app/modules @@ -212,6 +213,7 @@ CompatibleUpTo=Compatible with version %s NotCompatible=This module does not seem compatible with your Dolibarr %s (Min %s - Max %s). CompatibleAfterUpdate=This module requires an update to your Dolibarr %s (Min %s - Max %s). SeeInMarkerPlace=See in Market place +SeeSetupOfModule=See setup of module %s Updated=Updated Nouveauté=Novelty AchatTelechargement=Buy / Download @@ -221,6 +223,7 @@ DoliPartnersDesc=List of companies providing custom-developed modules or feature WebSiteDesc=External websites for more add-on (non-core) modules... DevelopYourModuleDesc=Some solutions to develop your own module... URL=URL +RelativeURL=Relative URL BoxesAvailable=Widgets available BoxesActivated=Widgets activated ActivateOn=Activate on @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Checkboxes ExtrafieldCheckBoxFromList=Checkboxes from table ExtrafieldLink=Link to an object ComputedFormula=Computed field -ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Store computed field ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! ExtrafieldParamHelpPassword=Leaving this field blank means this value will be stored without encryption (field must be only hidden with star on screen).
    Set 'auto' to use the default encryption rule to save password into database (then value read will be the hash only, no way to retrieve original value) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Keep empty to use default value DefaultLink=Default link SetAsDefault=Set as default ValueOverwrittenByUserSetup=Warning, this value may be overwritten by user specific setup (each user can set his own clicktodial url) -ExternalModule=External module - Installed into directory %s +ExternalModule=External module +InstalledInto=Installed into directory %s BarcodeInitForthird-parties=Mass barcode init for third-parties BarcodeInitForProductsOrServices=Mass barcode init or reset for products or services CurrentlyNWithoutBarCode=Currently, you have %s record on %s %s without barcode defined. @@ -947,7 +951,7 @@ DictionaryCanton=States/Provinces DictionaryRegion=Regions DictionaryCountry=Countries DictionaryCurrency=Currencies -DictionaryCivility=Title of civility +DictionaryCivility=Honorific titles DictionaryActions=Types of agenda events DictionarySocialContributions=Types of social or fiscal taxes DictionaryVAT=VAT Rates or Sales Tax Rates @@ -988,6 +992,7 @@ VATIsNotUsedDesc=By default the proposed Sales tax is 0 which can be used for ca VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=Rate LocalTax1IsNotUsed=Do not use second tax LocalTax1IsUsedDesc=Use a second type of tax (other than first one) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices LocalTax2IsNotUsedDescES=By default the proposed IRPF is 0. End of rule. LocalTax2IsUsedExampleES=In Spain, freelancers and independent professionals who provide services and companies who have chosen the tax system of modules. LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=Reports on local taxes CalcLocaltax1=Sales - Purchases CalcLocaltax1Desc=Local Taxes reports are calculated with the difference between localtaxes sales and localtaxes purchases @@ -1018,6 +1026,7 @@ CalcLocaltax2=Purchases CalcLocaltax2Desc=Local Taxes reports are the total of localtaxes purchases CalcLocaltax3=Sales CalcLocaltax3Desc=Local Taxes reports are the total of localtaxes sales +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=Label used by default if no translation can be found for code LabelOnDocuments=Label on documents LabelOrTranslationKey=Label or translation key @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Expense report to approve Delays_MAIN_DELAY_HOLIDAYS=Leave requests 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. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. SetupDescription5=Other Setup menu entries manage optional parameters. LogEvents=Security audit events Audit=Audit @@ -1128,7 +1137,7 @@ LogEventDesc=Enable logging for specific security events. Administrators the log AreaForAdminOnly=Setup parameters can be set by administrator users only. SystemInfoDesc=System information is miscellaneous technical information you get in read only mode and visible for administrators only. SystemAreaForAdminOnly=This area is available to administrator users only. Dolibarr user permissions cannot change this restriction. -CompanyFundationDesc=Edit the information of the company/entity. Click on "%s" button at the bottom of the page. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. AccountantFileNumber=Accountant code DisplayDesc=Parameters affecting the look and behaviour of Dolibarr can be modified here. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Rules to generate and validate passwords DisableForgetPasswordLinkOnLogonPage=Do not show the "Password Forgotten" link on the Login page UsersSetup=Users module setup UserMailRequired=Email required to create a new user +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### HRMSetup=HRM module setup ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Invoice documents models BillsPDFModulesAccordindToInvoiceType=Invoice documents models according to invoice type PaymentsPDFModules=Payment documents models ForceInvoiceDate=Force invoice date to validation date -SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined for invoice +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice SuggestPaymentByRIBOnAccount=Suggest payment by withdrawal on account SuggestPaymentByChequeToAddress=Suggest payment by check to FreeLegalTextOnInvoices=Free text on invoices @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Vendor payments setup PropalSetup=Commercial proposals module setup ProposalsNumberingModules=Commercial proposal numbering models ProposalsPDFModules=Commercial proposal documents models -SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined for proposal +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal FreeLegalTextOnProposal=Free text on commercial proposals WatermarkOnDraftProposal=Watermark on draft commercial proposals (none if empty) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal @@ -1322,6 +1334,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 ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=Sales Orders management setup OrdersNumberingModules=Orders numbering models OrdersModelModule=Order documents models @@ -1720,7 +1733,7 @@ MultiCompanySetup=Multi-company module setup ##### Suppliers ##### SuppliersSetup=Vendor module setup SuppliersCommandModel=Complete template of Purchase Order -SuppliersCommandModelMuscadet=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) SuppliersInvoiceModel=Complete template of Vendor Invoice SuppliersInvoiceNumberingModel=Vendor invoices numbering models IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Hide images in Top menu LeftMenuBackgroundColor=Background color for Left menu BackgroundTableTitleColor=Background color for Table title line BackgroundTableTitleTextColor=Text color for Table title line +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Background color for odd table lines BackgroundTableLineEvenColor=Background color for even table lines MinimumNoticePeriod=Minimum notice period (Your leave request must be done before this delay) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Dolibarr Reference not found in Message ID FormatZip=Zip MainMenuCode=Menu entry code (mainmenu) ECMAutoTree=Show automatic ECM tree -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. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Opening hours OpeningHoursDesc=Enter here the regular opening hours of your company. ResourceSetup=Configuration of Resource module @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramatical ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export +ImportSetup=Setup of module Import InstanceUniqueID=Unique ID of the instance SmallerThan=Smaller than LargerThan=Larger than @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled EmailTemplate=Template for email EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/bn_BD/bills.lang b/htdocs/langs/bn_BD/bills.lang index a8b48700ee6..2a117204fec 100644 --- a/htdocs/langs/bn_BD/bills.lang +++ b/htdocs/langs/bn_BD/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Vendors invoices SupplierBill=Vendor invoice SupplierBills=suppliers invoices Payment=Payment -PaymentBack=Payment back -CustomerInvoicePaymentBack=Payment back +PaymentBack=Refund +CustomerInvoicePaymentBack=Refund Payments=Payments PaymentsBack=Refunds paymentInInvoiceCurrency=in invoices currency PaidBack=Paid back DeletePayment=Delete payment ConfirmDeletePayment=Are you sure you want to delete this payment ? -ConfirmConvertToReduc=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. -ConfirmConvertToReducSupplier=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. SupplierPayments=Vendor payments ReceivedPayments=Received payments @@ -209,17 +209,13 @@ NumberOfBillsByMonth=No. of invoices per month AmountOfBills=Amount of invoices AmountOfBillsHT=Amount of invoices (net of tax) AmountOfBillsByMonthHT=Amount of invoices by month (net of tax) -ShowSocialContribution=Show social/fiscal tax -ShowBill=Show invoice -ShowInvoice=Show invoice -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 +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=To pay on %s toPayOn=to pay on %s RetainedWarranty=Retained Warranty @@ -230,7 +226,6 @@ 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 AlreadyPaidNoCreditNotesNoDeposits=Already paid (without credit notes and deposits) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Generated from template invoice %s WarningInvoiceDateInFuture=Warning, the invoice date is higher than current date WarningInvoiceDateTooFarInFuture=Warning, the invoice date is too far from current date ViewAvailableGlobalDiscounts=View available discounts +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Status PaymentConditionShortRECEP=Due Upon Receipt @@ -509,7 +505,7 @@ ToMakePayment=Pay ToMakePaymentBack=Pay back ListOfYourUnpaidInvoices=List of unpaid invoices NoteListOfYourUnpaidInvoices=Note: This list contains only invoices for third parties you are linked to as a sale representative. -RevenueStamp=Revenue stamp +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party YouMustCreateStandardInvoiceFirstDesc=You have to create a standard invoice first and convert it to "template" to create a new template invoice @@ -575,3 +571,4 @@ AutoFillDateTo=Set end date for service line with next invoice date AutoFillDateToShort=Set end date MaxNumberOfGenerationReached=Max number of gen. reached BILL_DELETEInDolibarr=Invoice deleted +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/bn_BD/blockedlog.lang b/htdocs/langs/bn_BD/blockedlog.lang index cff8f7d657b..5afae6e9e53 100644 --- a/htdocs/langs/bn_BD/blockedlog.lang +++ b/htdocs/langs/bn_BD/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Unalterable logs ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) DownloadBlockChain=Download fingerprints -KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this re after it was recorded, or has erased the previous archived record (check that line with previous # exists). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. AddedByAuthority=Stored into remote authority diff --git a/htdocs/langs/bn_BD/cashdesk.lang b/htdocs/langs/bn_BD/cashdesk.lang index 7ddbc71f3e9..f9f00015840 100644 --- a/htdocs/langs/bn_BD/cashdesk.lang +++ b/htdocs/langs/bn_BD/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Add this article RestartSelling=Go back on sell SellFinished=Sale complete PrintTicket=Print ticket +SendTicket=Send ticket NoProductFound=No article found ProductFound=product found NoArticle=No article @@ -48,6 +49,7 @@ Footer=Footer AmountAtEndOfPeriod=Amount at end of period (day, month or year) TheoricalAmount=Theorical amount RealAmount=Real amount +CashFence=Cash fence CashFenceDone=Cash fence done for the period NbOfInvoices=Nb of invoices Paymentnumpad=Type of Pad to enter payment @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS needs product categories to work OrderNotes=Order Notes CashDeskBankAccountFor=Default account to use for payments in NoPaimementModesDefined=No paiment mode defined in TakePOS configuration -TicketVatGrouped=Group VAT by rate in tickets -AutoPrintTickets=Automatically print tickets +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? @@ -87,7 +90,19 @@ HeadBar=Head Bar SortProductField=Field for sorting products Browser=Browser BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/bn_BD/companies.lang b/htdocs/langs/bn_BD/companies.lang index 3de0eb0c8e3..4ef1ae39ddd 100644 --- a/htdocs/langs/bn_BD/companies.lang +++ b/htdocs/langs/bn_BD/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted=Company "%s" deleted from database. ListOfContacts=List of contacts/addresses ListOfContactsAddresses=List of contacts/addresses ListOfThirdParties=List of Third Parties -ShowCompany=Show Third Party ShowContact=Show contact ContactsAllShort=All (No filter) ContactType=Contact type @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=First name of sales representative SaleRepresentativeLastname=Last name of sales representative ErrorThirdpartiesMerge=There was an error when deleting the third parties. Please check the log. Changes have been reverted. NewCustomerSupplierCodeProposed=Customer or Vendor code already used, a new code is suggested +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Payment Type - Customer PaymentTermsCustomer=Payment Terms - Customer diff --git a/htdocs/langs/bn_BD/compta.lang b/htdocs/langs/bn_BD/compta.lang index 1de030a1905..6cd046c5607 100644 --- a/htdocs/langs/bn_BD/compta.lang +++ b/htdocs/langs/bn_BD/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=See %sanalysis of payments%s for a calculation on act SeeReportInDueDebtMode=See %sanalysis of invoices%s for a calculation based on known recorded invoices even if they are not yet accounted in Ledger. SeeReportInBookkeepingMode=See %sBookeeping report%s for a calculation on Bookkeeping Ledger table RulesAmountWithTaxIncluded=- Amounts shown are with all taxes included -RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the validation date of invoices and VAT and on the due date for expenses. For salaries defined with Salary module, the value date of payment is used. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- It includes the real payments made on invoices, expenses, VAT and salaries.
    - It is based on the payment dates of the invoices, expenses, VAT and salaries. The donation date for donation. -RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the validation date of these invoices.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    RulesCATotalSaleJournal=It includes all credit lines from the Sale journal. RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Turnover invoiced by sale tax rate TurnoverCollectedbyVatrate=Turnover collected by sale tax rate PurchasebyVatrate=Purchase by sale tax rate LabelToShow=Short label +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/bn_BD/donations.lang b/htdocs/langs/bn_BD/donations.lang index 5edc8d62033..de4bdf68f03 100644 --- a/htdocs/langs/bn_BD/donations.lang +++ b/htdocs/langs/bn_BD/donations.lang @@ -7,7 +7,6 @@ AddDonation=Create a donation NewDonation=New donation DeleteADonation=Delete a donation ConfirmDeleteADonation=Are you sure you want to delete this donation? -ShowDonation=Show donation PublicDonation=Public donation DonationsArea=Donations area DonationStatusPromiseNotValidated=Draft promise @@ -17,6 +16,7 @@ DonationStatusPromiseNotValidatedShort=Draft DonationStatusPromiseValidatedShort=Validated DonationStatusPaidShort=Received DonationTitle=Donation receipt +DonationDate=Donation date DonationDatePayment=Payment date ValidPromess=Validate promise DonationReceipt=Donation receipt diff --git a/htdocs/langs/bn_BD/errors.lang b/htdocs/langs/bn_BD/errors.lang index 3ffc686e62f..7c67aeca8b5 100644 --- a/htdocs/langs/bn_BD/errors.lang +++ b/htdocs/langs/bn_BD/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=File not received completely by server. ErrorNoTmpDir=Temporary directy %s does not exists. ErrorUploadBlockedByAddon=Upload blocked by a PHP/Apache plugin. ErrorFileSizeTooLarge=File size is too large. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Size too long for int type (%s digits maximum) ErrorSizeTooLongForVarcharType=Size too long for string type (%s chars maximum) ErrorNoValueForSelectType=Please fill value for select list @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # 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/bn_BD/install.lang b/htdocs/langs/bn_BD/install.lang index bf9c08c4ba7..f67dff57184 100644 --- a/htdocs/langs/bn_BD/install.lang +++ b/htdocs/langs/bn_BD/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=This PHP supports Curl. PHPSupportCalendar=This PHP supports calendars extensions. PHPSupportUTF8=This PHP supports UTF8 functions. PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=This PHP supports %s functions. PHPMemoryOK=Your PHP max session memory is set to %s. This should be enough. 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. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=Your PHP installation does not support Curl. ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. 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. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. ErrorDirDoesNotExists=Directory %s does not exist. ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=The application tried to self-upgrade, but the in 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. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/bn_BD/interventions.lang b/htdocs/langs/bn_BD/interventions.lang index e7667ef6946..e5936f8246e 100644 --- a/htdocs/langs/bn_BD/interventions.lang +++ b/htdocs/langs/bn_BD/interventions.lang @@ -41,9 +41,7 @@ InterventionsArea=Interventions area DraftFichinter=Draft interventions LastModifiedInterventions=Latest %s modified interventions FichinterToProcess=Interventions to process -##### Types de contacts ##### TypeContact_fichinter_external_CUSTOMER=Following-up customer contact -# Modele numérotation PrintProductsOnFichinter=Print also lines of type "product" (not only services) on intervention card PrintProductsOnFichinterDetails=interventions generated from orders UseServicesDurationOnFichinter=Use services duration for interventions generated from orders @@ -53,14 +51,16 @@ InterventionStatistics=Statistics of interventions NbOfinterventions=No. of intervention cards NumberOfInterventionsByMonth=No. of intervention cards by month (date of validation) AmountOfInteventionNotIncludedByDefault=Amount of intervention is not included by default into profit (in most cases, timesheets are used to count time spent). Add option PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT to 1 into home-setup-other to include them. -##### Exports ##### InterId=Intervention id InterRef=Intervention ref. InterDateCreation=Date creation intervention InterDuration=Duration intervention InterStatus=Status intervention InterNote=Note intervention +InterLine=Line of intervention InterLineId=Line id intervention InterLineDate=Line date intervention InterLineDuration=Line duration intervention InterLineDesc=Line description intervention +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/bn_BD/link.lang b/htdocs/langs/bn_BD/link.lang index fdcf07aeff4..1ffcd41a18b 100644 --- a/htdocs/langs/bn_BD/link.lang +++ b/htdocs/langs/bn_BD/link.lang @@ -8,3 +8,4 @@ LinkRemoved=The link %s has been removed ErrorFailedToDeleteLink= Failed to remove link '%s' ErrorFailedToUpdateLink= Failed to update link '%s' URLToLink=URL to link +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/bn_BD/mails.lang b/htdocs/langs/bn_BD/mails.lang index 8b92cef3103..7b3bfd3852a 100644 --- a/htdocs/langs/bn_BD/mails.lang +++ b/htdocs/langs/bn_BD/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=No contact/address with a category found NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found OutGoingEmailSetup=Outgoing email setup InGoingEmailSetup=Incoming email setup -OutGoingEmailSetupForEmailing=Outgoing email setup (for mass emailing) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Default outgoing email setup Information=Information ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/bn_BD/main.lang b/htdocs/langs/bn_BD/main.lang index a29b56dc3bf..2f70685f627 100644 --- a/htdocs/langs/bn_BD/main.lang +++ b/htdocs/langs/bn_BD/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Save and stay SaveAndNew=Save and new TestConnection=Test connection ToClone=Clone +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Choose data you want to clone: NoCloneOptionsSpecified=No data to clone defined. Of=of @@ -829,6 +830,8 @@ Gender=Gender Genderman=Man Genderwoman=Woman ViewList=List view +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Mandatory Hello=Hello GoodBye=GoodBye @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Select your graph options to build a graph Measures=Measures XAxis=X-Axis YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/bn_BD/modulebuilder.lang b/htdocs/langs/bn_BD/modulebuilder.lang index 00a8c0f9d32..135ac1ae9ec 100644 --- a/htdocs/langs/bn_BD/modulebuilder.lang +++ b/htdocs/langs/bn_BD/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=List of dictionaries entries ListOfPermissionsDefined=List of defined permissions SeeExamples=See examples here EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) -VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update). Using a negative value means field is not shown by default on list but can be selected for viewing). It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty DisplayOnPdf=Display on PDF IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) diff --git a/htdocs/langs/bn_BD/multicurrency.lang b/htdocs/langs/bn_BD/multicurrency.lang new file mode 100644 index 00000000000..bfcbd11fb7c --- /dev/null +++ b/htdocs/langs/bn_BD/multicurrency.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Multi currency +ErrorAddRateFail=Error in added rate +ErrorAddCurrencyFail=Error in added currency +ErrorDeleteCurrencyFail=Error delete fail +multicurrency_syncronize_error=Synchronization error: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Use the date of the document to find the currency rate, instead of using the latest known rate +multicurrency_useOriginTx=When an object is created from another, keep the original rate from the source object (otherwise use the latest known rate) +CurrencyLayerAccount=CurrencyLayer API +CurrencyLayerAccount_help_to_synchronize=You must create an account on website %s to use this functionality.
    Get your API key.
    If you use a free account, you can't change the source currency (USD by default).
    If your main currency is not USD, the application will automatically recalculate it.

    You are limited to 1000 synchronizations per month. +multicurrency_appId=API key +multicurrency_appCurrencySource=Source currency +multicurrency_alternateCurrencySource=Alternate source currency +CurrenciesUsed=Currencies used +CurrenciesUsed_help_to_add=Add the different currencies and rates you need to use on your proposals, orders etc. +rate=rate +MulticurrencyReceived=Received, original currency +MulticurrencyRemainderToTake=Remaining amount, original currency +MulticurrencyPaymentAmount=Payment amount, original currency +AmountToOthercurrency=Amount To (in currency of receiving account) +CurrencyRateSyncSucceed=Currency rate synchronization done successfuly +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Use the currency of the document for online payments diff --git a/htdocs/langs/bn_BD/other.lang b/htdocs/langs/bn_BD/other.lang index 00259d976bc..ba85f51e739 100644 --- a/htdocs/langs/bn_BD/other.lang +++ b/htdocs/langs/bn_BD/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Sales order validated Notify_ORDER_SENTBYMAIL=Sales order sent by mail Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=URL of page WEBSITE_TITLE=Title WEBSITE_DESCRIPTION=Description WEBSITE_IMAGE=Image -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Keywords LinesToImport=Lines to import diff --git a/htdocs/langs/bn_BD/products.lang b/htdocs/langs/bn_BD/products.lang index d8a3192551f..a31243a07b6 100644 --- a/htdocs/langs/bn_BD/products.lang +++ b/htdocs/langs/bn_BD/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL MassBarcodeInit=Mass barcode init MassBarcodeInitDesc=This page can be used to initialize a barcode on objects that does not have barcode defined. Check before that setup of module barcode is complete. ProductAccountancyBuyCode=Accounting code (purchase) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Accounting code (sale) ProductAccountancySellIntraCode=Accounting code (sale intra-Community) ProductAccountancySellExportCode=Accounting code (sale export) @@ -165,7 +167,7 @@ SuppliersPrices=Vendor prices SuppliersPricesOfProductsOrServices=Vendor prices (of products or services) CustomCode=Customs / Commodity / HS code CountryOrigin=Origin country -Nature=Nature of produt (material/finished) +Nature=Nature of product (material/finished) ShortLabel=Short label Unit=Unit p=u. diff --git a/htdocs/langs/bn_BD/projects.lang b/htdocs/langs/bn_BD/projects.lang index 94e440f9ab9..bb42bff3c87 100644 --- a/htdocs/langs/bn_BD/projects.lang +++ b/htdocs/langs/bn_BD/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=which I'm linked to project Time=Time ListOfTasks=List of tasks GoToListOfTimeConsumed=Go to list of time consumed -GoToListOfTasks=Show as list -GoToGanttView=show as Gantt GanttView=Gantt View ListProposalsAssociatedProject=List of the commercial proposals related to the project ListOrdersAssociatedProject=List of sales orders related to the project @@ -188,7 +186,7 @@ PlannedWorkload=Planned workload PlannedWorkloadShort=Workload ProjectReferers=Related items ProjectMustBeValidatedFirst=Project must be validated first -FirstAddRessourceToAllocateTime=Assign a user resource to task to allocate time +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=Input per day InputPerWeek=Input per week InputPerMonth=Input per month @@ -240,6 +238,7 @@ LatestModifiedProjects=Latest %s modified projects OtherFilteredTasks=Other filtered tasks NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=Allow user comments on tasks AllowCommentOnProject=Allow user comments on projects @@ -256,7 +255,7 @@ ServiceToUseOnLines=Service to use on lines InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. ProjectFollowOpportunity=Follow opportunity -ProjectFollowTasks=Follow tasks +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Usage: Opportunity UsageTasks=Usage: Tasks @@ -265,3 +264,4 @@ InvoiceToUse=Draft invoice to use NewInvoice=New invoice OneLinePerTask=One line per task OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/bn_BD/receiptprinter.lang b/htdocs/langs/bn_BD/receiptprinter.lang index 3df49b9fe67..896eaa313dd 100644 --- a/htdocs/langs/bn_BD/receiptprinter.lang +++ b/htdocs/langs/bn_BD/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Dummy Printer CONNECTOR_NETWORK_PRINT=Network Printer CONNECTOR_FILE_PRINT=Local Printer CONNECTOR_WINDOWS_PRINT=Local Windows Printer +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Fake Printer for test, does nothing CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Default Profile PROFILE_SIMPLE=Simple Profile PROFILE_EPOSTEP=Epos Tep Profile @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Invoice month in letters DOL_VALUE_MONTH=Invoice month DOL_VALUE_DAY=Invoice day DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Invoice ref +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=Capital +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/bn_BD/stripe.lang b/htdocs/langs/bn_BD/stripe.lang index eb77441d2cd..844762040af 100644 --- a/htdocs/langs/bn_BD/stripe.lang +++ b/htdocs/langs/bn_BD/stripe.lang @@ -32,6 +32,7 @@ VendorName=Name of vendor CSSUrlForPaymentForm=CSS style sheet url for payment form NewStripePaymentReceived=New Stripe payment received NewStripePaymentFailed=New Stripe payment tried but failed +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Secret test key STRIPE_TEST_PUBLISHABLE_KEY=Publishable test key STRIPE_TEST_WEBHOOK_KEY=Webhook test key @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mo 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... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authenticatin rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/bn_BD/users.lang b/htdocs/langs/bn_BD/users.lang index 43fa5342da3..aea4e7676e4 100644 --- a/htdocs/langs/bn_BD/users.lang +++ b/htdocs/langs/bn_BD/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Users and their properties DomainUser=Domain user %s Reactivate=Reactivate CreateInternalUserDesc=This form allows you to create an internal user in your company/organization. To create an external user (customer, vendor etc. ..), use the button 'Create Dolibarr User' from that third-party's contact card. -InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other.

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=Permission granted because inherited from one of a user's group. Inherited=Inherited UserWillBeInternalUser=Created user will be an internal user (because not linked to a particular third party) @@ -110,3 +110,8 @@ UserLogged=User logged DateEmployment=Employment Start Date DateEmploymentEnd=Employment End Date CantDisableYourself=You can't disable your own user record +ForceUserExpenseValidator=Force expense report validator +ForceUserHolidayValidator=Force leave request validator +ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/bn_BD/website.lang b/htdocs/langs/bn_BD/website.lang index 9e5c4ba3ff8..bce2a09fb03 100644 --- a/htdocs/langs/bn_BD/website.lang +++ b/htdocs/langs/bn_BD/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=View page in new tab SetAsHomePage=Set as Home page RealURL=Real URL ViewWebsiteInProduction=View web site using home URLs -SetHereVirtualHost=Use with Apache/NGinx/...
    If you can create, on your web server (Apache, Nginx, ...), a dedicated Virtual Host with PHP enabled and a Root directory on
    %s
    then set the name of the virtual host you have created in the properties of web site, so the preview can be done also using this dedicated web server access instead of the internal Dolibarr server. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS=Use with PHP embedded server
    On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running
    php -S 0.0.0.0:8080 -t %s YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org CheckVirtualHostPerms=Check also that virtual host has permission %s on files into
    %s @@ -56,7 +57,7 @@ NoPageYet=No pages yet YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template SyntaxHelp=Help on specific syntax tips YouCanEditHtmlSourceckeditor=You can edit HTML source code using the "Source" button in editor. -YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Clone page/container CloneSite=Clone site SiteAdded=Website added @@ -76,7 +77,7 @@ BlogPost=Blog post WebsiteAccount=Website account WebsiteAccounts=Website accounts AddWebsiteAccount=Create web site account -BackToListOfThirdParty=Back to list for Third Party +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Disable website first MyContainerTitle=My web site title AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Sorry, this website is currently off line. Please 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 -OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that edits of HTML source will be possible when page content has been initialized by grabbing it from an external page ("Online" editor will NOT be available) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Only edition of HTML source is possible when content was grabbed from an external site GrabImagesInto=Grab also images found into css and page. ImagesShouldBeSavedInto=Images should be saved into directory @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 ch MainLanguage=Main language OtherLanguages=Other languages UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/bn_BD/zapier.lang b/htdocs/langs/bn_BD/zapier.lang new file mode 100644 index 00000000000..6d6eda71313 --- /dev/null +++ b/htdocs/langs/bn_BD/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr module + +# +# Admin page +# +ZapierForDolibarrSetup = Setup of Zapier for Dolibarr diff --git a/htdocs/langs/bn_IN/accountancy.lang b/htdocs/langs/bn_IN/accountancy.lang new file mode 100644 index 00000000000..b8ce37a0956 --- /dev/null +++ b/htdocs/langs/bn_IN/accountancy.lang @@ -0,0 +1,382 @@ +# Dolibarr language file - en_US - Accountancy (Double entries) +Accountancy=Accountancy +Accounting=Accounting +ACCOUNTING_EXPORT_SEPARATORCSV=Column separator for export file +ACCOUNTING_EXPORT_DATE=Date format for export file +ACCOUNTING_EXPORT_PIECE=Export the number of piece +ACCOUNTING_EXPORT_GLOBAL_ACCOUNT=Export with global account +ACCOUNTING_EXPORT_LABEL=Export label +ACCOUNTING_EXPORT_AMOUNT=Export amount +ACCOUNTING_EXPORT_DEVISE=Export currency +Selectformat=Select the format for the file +ACCOUNTING_EXPORT_FORMAT=Select the format for the file +ACCOUNTING_EXPORT_ENDLINE=Select the carriage return type +ACCOUNTING_EXPORT_PREFIX_SPEC=Specify the prefix for the file name +ThisService=This service +ThisProduct=This product +DefaultForService=Default for service +DefaultForProduct=Default for product +CantSuggest=Can't suggest +AccountancySetupDoneFromAccountancyMenu=Most setup of the accountancy is done from the menu %s +ConfigAccountingExpert=Configuration of the module accounting expert +Journalization=Journalization +Journaux=Journals +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 +OtherInfo=Other information +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 + +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 + +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... + +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 + +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. + +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. + +AccountancyAreaDescClosePeriod=STEP %s: Close period so we can't make modification in a future. + +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 +AccountAccountingShort=Account +SubledgerAccount=Subledger account +SubledgerAccountLabel=Subledger account label +ShowAccountingAccount=Show accounting account +ShowAccountingJournal=Show accounting journal +AccountAccountingSuggest=Accounting account suggested +MenuDefaultAccounts=Default accounts +MenuBankAccounts=Bank accounts +MenuVatAccounts=Vat accounts +MenuTaxAccounts=Tax accounts +MenuExpenseReportAccounts=Expense report accounts +MenuLoanAccounts=Loan accounts +MenuProductsAccounts=Product accounts +MenuClosureAccounts=Closure accounts +MenuAccountancyClosure=Closure +MenuAccountancyValidationMovements=Validate movements +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 +TotalForAccount=Total for accounting account + + +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 + +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_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=Length of the third-party accounting accounts (If you set value to 6 here, the account '401' will appear like '401000' on screen) +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_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_RESULT_PROFIT=Result accounting account (Profit) +ACCOUNTING_RESULT_LOSS=Result accounting account (Loss) +ACCOUNTING_CLOSURE_DEFAULT_JOURNAL=Journal of closure + +ACCOUNTING_ACCOUNT_TRANSFER_CASH=Accounting account of transitional bank transfer +TransitionalAccount=Transitional bank transfer account + +ACCOUNTING_ACCOUNT_SUSPENSE=Accounting account of wait +DONATION_ACCOUNTINGACCOUNT=Accounting account to register donations +ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions + +ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (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 products sold in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported 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_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (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_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) + +Doctype=Type of document +Docdate=Date +Docref=Reference +LabelAccount=Label account +LabelOperation=Label operation +Sens=Sens +LetteringCode=Lettering code +Lettering=Lettering +Codejournal=Journal +JournalLabel=Journal label +NumPiece=Piece number +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=By year +NotMatch=Not Set +DeleteMvt=Delete Ledger lines +DelMonth=Month to delete +DelYear=Year to delete +DelJournal=Journal to delete +ConfirmDeleteMvt=This will delete all lines of the Ledger for the year/month and/or from a specific journal (At least one criterion is required). You will have to reuse the feature 'Registration in accounting' to have the deleted record back in the ledger. +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=Third-party account +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=List third-party account +DescThirdPartyReport=Consult here the list of third-party customers and vendors and their accounting accounts +ListAccounts=List of the accounting accounts +UnknownAccountForThirdparty=Unknown third-party account. We will use %s +UnknownAccountForThirdpartyBlocking=Unknown third-party account. Blocking error +ThirdpartyAccountNotDefinedOrThirdPartyUnknown=Third-party account not defined or third party unknown. We will use %s +ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unknown and subledger not defined on the payment. We will keep the subledger account value empty. +ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. +UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error +PaymentsNotLinkedToProduct=Payment not linked to any product / service +OpeningBalance=Opening balance +ShowOpeningBalance=Show opening balance +HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group + +Pcgtype=Group of account +PcgtypeDesc=Group 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. + +Reconcilable=Reconcilable + +TotalVente=Total turnover before tax +TotalMarge=Total sales margin + +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: +Vide=- +DescVentilSupplier=Consult here the list of vendor invoice lines bound or not yet bound to a product accounting account (only record not already transfered in accountancy are visible) +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 + +DescClosure=Consult here the number of movements by month who are not validated & fiscal years already open +OverviewOfMovementsNotValidated=Step 1/ Overview of movements not validated. (Necessary to close a fiscal year) +ValidateMovements=Validate movements +DescValidateMovements=Any modification or deletion of writing, lettering and deletes will be prohibited. All entries for an exercise must be validated otherwise closing will not be possible +SelectMonthAndValidate=Select month and validate movements + +ValidateHistory=Bind Automatically +AutomaticBindingDone=Automatic binding done + +ErrorAccountancyCodeIsAlreadyUse=Error, you cannot delete this accounting account because it is used +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 +ShowTutorial=Show Tutorial +NotReconciled=Not reconciled + +## Admin +ApplyMassCategories=Apply mass categories +AddAccountFromBookKeepingWithNoCategories=Available account not yet in the personalized group +CategoryDeleted=Category for the accounting account has been removed +AccountingJournals=Accounting journals +AccountingJournal=Accounting journal +NewAccountingJournal=New accounting journal +ShowAccountingJournal=Show accounting journal +NatureOfJournal=Nature of Journal +AccountingJournalType1=Miscellaneous operations +AccountingJournalType2=Sales +AccountingJournalType3=Purchases +AccountingJournalType4=Bank +AccountingJournalType5=Expenses report +AccountingJournalType8=Inventory +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 + +## 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) +Modelcsv_openconcerto=Export for OpenConcerto (Test) +Modelcsv_configurable=Export CSV Configurable +Modelcsv_FEC=Export FEC +Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta +ChartofaccountsId=Chart of accounts Id + +## 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 used for accounting closures. +Options=Options +OptionModeProductSell=Mode sales +OptionModeProductSellIntra=Mode sales exported in EEC +OptionModeProductSellExport=Mode sales exported in other countries +OptionModeProductBuy=Mode purchases +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries +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. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign 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 +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. + +## Dictionary +Range=Range of accounting account +Calculated=Calculated +Formula=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 + +## 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 diff --git a/htdocs/langs/bn_IN/admin.lang b/htdocs/langs/bn_IN/admin.lang new file mode 100644 index 00000000000..7eb67d7a4ab --- /dev/null +++ b/htdocs/langs/bn_IN/admin.lang @@ -0,0 +1,2002 @@ +# Dolibarr language file - Source file is en_US - admin +Foundation=Foundation +Version=Version +Publisher=Publisher +VersionProgram=Version program +VersionLastInstall=Initial install version +VersionLastUpgrade=Latest version upgrade +VersionExperimental=Experimental +VersionDevelopment=Development +VersionUnknown=Unknown +VersionRecommanded=Recommended +FileCheck=Fileset Integrity Checks +FileCheckDesc=This tool allows you to check the integrity of files and the setup of your application, comparing each file with the official one. The value of some setup constants may also be checked. You can use this tool to determine if any files have been modified (e.g by a hacker). +FileIntegrityIsStrictlyConformedWithReference=Files integrity is strictly conformed with the reference. +FileIntegrityIsOkButFilesWereAdded=Files integrity check has passed, however some new files have been added. +FileIntegritySomeFilesWereRemovedOrModified=Files integrity check has failed. Some files were modified, removed or added. +GlobalChecksum=Global checksum +MakeIntegrityAnalysisFrom=Make integrity analysis of application files from +LocalSignature=Embedded local signature (less reliable) +RemoteSignature=Remote distant signature (more reliable) +FilesMissing=Missing Files +FilesUpdated=Updated Files +FilesModified=Modified Files +FilesAdded=Added Files +FileCheckDolibarr=Check integrity of application files +AvailableOnlyOnPackagedVersions=The local file for integrity checking is only available when the application is installed from an official package +XmlNotFound=Xml Integrity File of application not found +SessionId=Session ID +SessionSaveHandler=Handler to save sessions +SessionSavePath=Session save location +PurgeSessions=Purge of sessions +ConfirmPurgeSessions=Do you really want to purge all sessions? This will disconnect every user (except yourself). +NoSessionListWithThisHandler=Save session handler configured in your PHP does not allow listing all running sessions. +LockNewSessions=Lock new connections +ConfirmLockNewSessions=Are you sure you want to restrict any new Dolibarr connection to yourself? Only user %s will be able to connect after that. +UnlockNewSessions=Remove connection lock +YourSession=Your session +Sessions=Users Sessions +WebUserGroup=Web server user/group +NoSessionFound=Your PHP configuration seems to not allow listing of active sessions. The directory used to save sessions (%s) may be protected (for example by OS permissions or by PHP directive open_basedir). +DBStoringCharset=Database charset to store data +DBSortingCharset=Database charset to sort data +HostCharset=Host charset +ClientCharset=Client charset +ClientSortingCharset=Client collation +WarningModuleNotActive=Module %s must be enabled +WarningOnlyPermissionOfActivatedModules=Only permissions related to activated modules are shown here. You can activate other modules in the Home->Setup->Modules page. +DolibarrSetup=Dolibarr install or upgrade +InternalUser=Internal user +ExternalUser=External user +InternalUsers=Internal users +ExternalUsers=External users +GUISetup=Display +SetupArea=Setup +UploadNewTemplate=Upload new template(s) +FormToTestFileUploadForm=Form to test file upload (according to setup) +IfModuleEnabled=Note: yes is effective only if module %s is enabled +RemoveLock=Remove/rename file %s if it exists, to allow usage of the Update/Install tool. +RestoreLock=Restore file %s, with read permission only, to disable any further use of the Update/Install tool. +SecuritySetup=Security setup +SecurityFilesDesc=Define here options related to security about uploading files. +ErrorModuleRequirePHPVersion=Error, this module requires PHP version %s or higher +ErrorModuleRequireDolibarrVersion=Error, this module requires Dolibarr version %s or higher +ErrorDecimalLargerThanAreForbidden=Error, a precision higher than %s is not supported. +DictionarySetup=Dictionary setup +Dictionary=Dictionaries +ErrorReservedTypeSystemSystemAuto=Value 'system' and 'systemauto' for type is reserved. You can use 'user' as value to add your own record +ErrorCodeCantContainZero=Code can't contain value 0 +DisableJavascript=Disable JavaScript and Ajax functions +DisableJavascriptNote=Note: For test or debug purpose. For optimization for blind person or text browsers, you may prefer to use the setup on the profile of user +UseSearchToSelectCompanyTooltip=Also if you have a large number of third parties (> 100 000), you can increase speed by setting constant COMPANY_DONOTSEARCH_ANYWHERE to 1 in Setup->Other. Search will then be limited to start of string. +UseSearchToSelectContactTooltip=Also if you have a large number of third parties (> 100 000), you can increase speed by setting constant CONTACT_DONOTSEARCH_ANYWHERE to 1 in Setup->Other. Search will then be limited to start of string. +DelaiedFullListToSelectCompany=Wait until a key is pressed before loading content of Third Parties combo list.
    This may increase performance if you have a large number of third parties, but it is less convenient. +DelaiedFullListToSelectContact=Wait until a key is pressed before loading content of Contact combo list.
    This may increase performance if you have a large number of contacts, but it is less convenient) +NumberOfKeyToSearch=Number of characters to trigger search: %s +NumberOfBytes=Number of Bytes +SearchString=Search string +NotAvailableWhenAjaxDisabled=Not available when Ajax disabled +AllowToSelectProjectFromOtherCompany=On document of a third party, can choose a project linked to another third party +JavascriptDisabled=JavaScript disabled +UsePreviewTabs=Use preview tabs +ShowPreview=Show preview +PreviewNotAvailable=Preview not available +ThemeCurrentlyActive=Theme currently active +CurrentTimeZone=TimeZone PHP (server) +MySQLTimeZone=TimeZone MySql (database) +TZHasNoEffect=Dates are stored and returned by database server as if they were kept as submitted string. The timezone has effect only when using the UNIX_TIMESTAMP function (that should not be used by Dolibarr, so database TZ should have no effect, even if changed after data was entered). +Space=Space +Table=Table +Fields=Fields +Index=Index +Mask=Mask +NextValue=Next value +NextValueForInvoices=Next value (invoices) +NextValueForCreditNotes=Next value (credit notes) +NextValueForDeposit=Next value (down payment) +NextValueForReplacements=Next value (replacements) +MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the maximum filesize for upload to %s %s, irrespective of the value of this parameter +NoMaxSizeByPHPLimit=Note: No limit is set in your PHP configuration +MaxSizeForUploadedFiles=Maximum size for uploaded files (0 to disallow any upload) +UseCaptchaCode=Use graphical code (CAPTCHA) on login page +AntiVirusCommand=Full path to antivirus command +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe +AntiVirusParam= More parameters on command line +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" +ComptaSetup=Accounting module setup +UserSetup=User management setup +MultiCurrencySetup=Multi-currency setup +MenuLimits=Limits and accuracy +MenuIdParent=Parent menu ID +DetailMenuIdParent=ID of parent menu (empty for a top menu) +DetailPosition=Sort number to define menu position +AllMenus=All +NotConfigured=Module/Application not configured +Active=Active +SetupShort=Setup +OtherOptions=Other options +OtherSetup=Other Setup +CurrentValueSeparatorDecimal=Decimal separator +CurrentValueSeparatorThousand=Thousand separator +Destination=Destination +IdModule=Module ID +IdPermissions=Permissions ID +LanguageBrowserParameter=Parameter %s +LocalisationDolibarrParameters=Localization parameters +ClientTZ=Client Time Zone (user) +ClientHour=Client time (user) +OSTZ=Server OS Time Zone +PHPTZ=PHP server Time Zone +DaylingSavingTime=Daylight saving time +CurrentHour=PHP Time (server) +CurrentSessionTimeOut=Current session timeout +YouCanEditPHPTZ=To set a different PHP timezone (not required), you can try to add a .htaccess file with a line like this "SetEnv TZ Europe/Paris" +HoursOnThisPageAreOnServerTZ=Warning, in contrary of other screens, hours on this page are not in your local timezone, but of the timezone of the server. +Box=Widget +Boxes=Widgets +MaxNbOfLinesForBoxes=Max. number of lines for widgets +AllWidgetsWereEnabled=All available widgets are enabled +PositionByDefault=Default order +Position=Position +MenusDesc=Menu managers set content of the two menu bars (horizontal and vertical). +MenusEditorDesc=The menu editor allows you to define custom menu entries. Use it carefully to avoid instability and permanently unreachable menu entries.
    Some modules add menu entries (in menu All mostly). If you remove some of these entries by mistake, you can restore them disabling and reenabling the module. +MenuForUsers=Menu for users +LangFile=.lang file +Language_en_US_es_MX_etc=Language (en_US, es_MX, ...) +System=System +SystemInfo=System information +SystemToolsArea=System tools area +SystemToolsAreaDesc=This area provides administration functions. Use the menu to choose the required feature. +Purge=Purge +PurgeAreaDesc=This page allows you to delete all files generated or stored by Dolibarr (temporary files or all files in %s directory). Using this feature is not normally necessary. It is provided as a workaround for users whose Dolibarr is hosted by a provider that does not offer permissions to delete files generated by the web server. +PurgeDeleteLogFile=Delete log files, including %s defined for Syslog module (no risk of losing data) +PurgeDeleteTemporaryFiles=Delete all temporary files (no risk of losing data). Note: Deletion is done only if the temp directory was created 24 hours ago. +PurgeDeleteTemporaryFilesShort=Delete temporary files +PurgeDeleteAllFilesInDocumentsDir=Delete all files in directory: %s.
    This will delete all generated documents related to elements (third parties, invoices etc...), files uploaded into the ECM module, database backup dumps and temporary files. +PurgeRunNow=Purge now +PurgeNothingToDelete=No directory or files to delete. +PurgeNDirectoriesDeleted=%s files or directories deleted. +PurgeNDirectoriesFailed=Failed to delete %s files or directories. +PurgeAuditEvents=Purge all security events +ConfirmPurgeAuditEvents=Are you sure you want to purge all security events? All security logs will be deleted, no other data will be removed. +GenerateBackup=Generate backup +Backup=Backup +Restore=Restore +RunCommandSummary=Backup has been launched with the following command +BackupResult=Backup result +BackupFileSuccessfullyCreated=Backup file successfully generated +YouCanDownloadBackupFile=The generated file can now be downloaded +NoBackupFileAvailable=No backup files available. +ExportMethod=Export method +ImportMethod=Import method +ToBuildBackupFileClickHere=To build a backup file, click here. +ImportMySqlDesc=To import a MySQL backup file, you may use phpMyAdmin via your hosting or use the mysql command from the Command line.
    For example: +ImportPostgreSqlDesc=To import a backup file, you must use pg_restore command from command line: +ImportMySqlCommand=%s %s < mybackupfile.sql +ImportPostgreSqlCommand=%s %s mybackupfile.sql +FileNameToGenerate=Filename for backup: +Compression=Compression +CommandsToDisableForeignKeysForImport=Command to disable foreign keys on import +CommandsToDisableForeignKeysForImportWarning=Mandatory if you want to be able to restore your sql dump later +ExportCompatibility=Compatibility of generated export file +ExportUseMySQLQuickParameter=Use the --quick parameter +ExportUseMySQLQuickParameterHelp=The '--quick' parameter helps limit RAM consumption for large tables. +MySqlExportParameters=MySQL export parameters +PostgreSqlExportParameters= PostgreSQL export parameters +UseTransactionnalMode=Use transactional mode +FullPathToMysqldumpCommand=Full path to mysqldump command +FullPathToPostgreSQLdumpCommand=Full path to pg_dump command +AddDropDatabase=Add DROP DATABASE command +AddDropTable=Add DROP TABLE command +ExportStructure=Structure +NameColumn=Name columns +ExtendedInsert=Extended INSERT +NoLockBeforeInsert=No lock commands around INSERT +DelayedInsert=Delayed insert +EncodeBinariesInHexa=Encode binary data in hexadecimal +IgnoreDuplicateRecords=Ignore errors of duplicate record (INSERT IGNORE) +AutoDetectLang=Autodetect (browser language) +FeatureDisabledInDemo=Feature disabled in demo +FeatureAvailableOnlyOnStable=Feature only available on official stable versions +BoxesDesc=Widgets are components showing some information that you can add to personalize some pages. You can choose between showing the widget or not by selecting target page and clicking 'Activate', or by clicking the trashcan to disable it. +OnlyActiveElementsAreShown=Only elements from enabled modules are shown. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. +ModulesMarketPlaceDesc=You can find more modules to download on external websites on the Internet... +ModulesDeployDesc=If permissions on your file system allow it, you can use this tool to deploy an external module. The module will then be visible on the tab %s. +ModulesMarketPlaces=Find external app/modules +ModulesDevelopYourModule=Develop your own app/modules +ModulesDevelopDesc=You may also develop your own module or find a partner to develop one for you. +DOLISTOREdescriptionLong=Instead of switching on www.dolistore.com web site to find an external module, you can use this embedded tool that will perform the search on the external market place for you (may be slow, need an internet access)... +NewModule=New +FreeModule=Free +CompatibleUpTo=Compatible with version %s +NotCompatible=This module does not seem compatible with your Dolibarr %s (Min %s - Max %s). +CompatibleAfterUpdate=This module requires an update to your Dolibarr %s (Min %s - Max %s). +SeeInMarkerPlace=See in Market place +SeeSetupOfModule=See setup of module %s +Updated=Updated +Nouveauté=Novelty +AchatTelechargement=Buy / Download +GoModuleSetupArea=To deploy/install a new module, go to the Module setup area: %s. +DoliStoreDesc=DoliStore, the official market place for Dolibarr ERP/CRM external modules +DoliPartnersDesc=List of companies providing custom-developed modules or features.
    Note: since Dolibarr is an open source application, anyone experienced in PHP programming may develop a module. +WebSiteDesc=External websites for more add-on (non-core) modules... +DevelopYourModuleDesc=Some solutions to develop your own module... +URL=URL +RelativeURL=Relative URL +BoxesAvailable=Widgets available +BoxesActivated=Widgets activated +ActivateOn=Activate on +ActiveOn=Activated on +SourceFile=Source file +AvailableOnlyIfJavascriptAndAjaxNotDisabled=Available only if JavaScript is not disabled +Required=Required +UsedOnlyWithTypeOption=Used by some agenda option only +Security=Security +Passwords=Passwords +DoNotStoreClearPassword=Encrypt passwords stored in database (NOT as plain-text). It is strongly recommended to activate this option. +MainDbPasswordFileConfEncrypted=Encrypt database password stored in conf.php. It is strongly recommended to activate this option. +InstrucToEncodePass=To have password encoded into the conf.php file, replace the line
    $dolibarr_main_db_pass="...";
    by
    $dolibarr_main_db_pass="crypted:%s"; +InstrucToClearPass=To have password decoded (clear) into the conf.php file, replace the line
    $dolibarr_main_db_pass="crypted:...";
    by
    $dolibarr_main_db_pass="%s"; +ProtectAndEncryptPdfFiles=Protect generated PDF files. This is NOT recommended as it breaks bulk PDF generation. +ProtectAndEncryptPdfFilesDesc=Protection of a PDF document keeps it available to read and print with any PDF browser. However, editing and copying is not possible anymore. Note that using this feature makes building of a global merged PDFs not working. +Feature=Feature +DolibarrLicense=License +Developpers=Developers/contributors +OfficialWebSite=Dolibarr official web site +OfficialWebSiteLocal=Local web site (%s) +OfficialWiki=Dolibarr documentation / Wiki +OfficialDemo=Dolibarr online demo +OfficialMarketPlace=Official market place for external modules/addons +OfficialWebHostingService=Referenced web hosting services (Cloud hosting) +ReferencedPreferredPartners=Preferred Partners +OtherResources=Other resources +ExternalResources=External Resources +SocialNetworks=Social Networks +ForDocumentationSeeWiki=For user or developer documentation (Doc, FAQs...),
    take a look at the Dolibarr Wiki:
    %s +ForAnswersSeeForum=For any other questions/help, you can use the Dolibarr forum:
    %s +HelpCenterDesc1=Here are some resources for getting help and support with Dolibarr. +HelpCenterDesc2=Some of these resources are only available in english. +CurrentMenuHandler=Current menu handler +MeasuringUnit=Measuring unit +LeftMargin=Left margin +TopMargin=Top margin +PaperSize=Paper type +Orientation=Orientation +SpaceX=Space X +SpaceY=Space Y +FontSize=Font size +Content=Content +NoticePeriod=Notice period +NewByMonth=New by month +Emails=Emails +EMailsSetup=Emails setup +EMailsDesc=This page allows you to override your default PHP parameters for email sending. In most cases on Unix/Linux OS, the PHP setup is correct and these parameters are unnecessary. +EmailSenderProfiles=Emails sender profiles +EMailsSenderProfileDesc=You can keep this section empty. If you enter some emails here, they will be added to the list of possible senders into the combobox when your write a new email. +MAIN_MAIL_SMTP_PORT=SMTP/SMTPS Port (default value in php.ini: %s) +MAIN_MAIL_SMTP_SERVER=SMTP/SMTPS Host (default value in php.ini: %s) +MAIN_MAIL_SMTP_PORT_NotAvailableOnLinuxLike=SMTP/SMTPS Port (Not defined into PHP on Unix-like systems) +MAIN_MAIL_SMTP_SERVER_NotAvailableOnLinuxLike=SMTP/SMTPS Host (Not defined into PHP on Unix-like systems) +MAIN_MAIL_EMAIL_FROM=Sender email for automatic emails (default value in php.ini: %s) +MAIN_MAIL_ERRORS_TO=Email used for error returns emails (fields 'Errors-To' in emails sent) +MAIN_MAIL_AUTOCOPY_TO= Copy (Bcc) all sent emails to +MAIN_DISABLE_ALL_MAILS=Disable all email sending (for test purposes or demos) +MAIN_MAIL_FORCE_SENDTO=Send all emails to (instead of real recipients, for test purposes) +MAIN_MAIL_ENABLED_USER_DEST_SELECT=Suggest emails of employees (if defined) into the list of predefined recipient when writing a new email +MAIN_MAIL_SENDMODE=Email sending method +MAIN_MAIL_SMTPS_ID=SMTP ID (if sending server requires authentication) +MAIN_MAIL_SMTPS_PW=SMTP Password (if sending server requires authentication) +MAIN_MAIL_EMAIL_TLS=Use TLS (SSL) encryption +MAIN_MAIL_EMAIL_STARTTLS=Use TLS (STARTTLS) encryption +MAIN_MAIL_EMAIL_DKIM_ENABLED=Use DKIM to generate email signature +MAIN_MAIL_EMAIL_DKIM_DOMAIN=Email Domain for use with dkim +MAIN_MAIL_EMAIL_DKIM_SELECTOR=Name of dkim selector +MAIN_MAIL_EMAIL_DKIM_PRIVATE_KEY=Private key for dkim signing +MAIN_DISABLE_ALL_SMS=Disable all SMS sending (for test purposes or demos) +MAIN_SMS_SENDMODE=Method to use to send SMS +MAIN_MAIL_SMS_FROM=Default sender phone number for SMS sending +MAIN_MAIL_DEFAULT_FROMTYPE=Default sender email for manual sending (User email or Company email) +UserEmail=User email +CompanyEmail=Company Email +FeatureNotAvailableOnLinux=Feature not available on Unix like systems. Test your sendmail program locally. +SubmitTranslation=If the translation for this language is not complete or you find errors, you can correct this by editing files in directory langs/%s and submit your change to www.transifex.com/dolibarr-association/dolibarr/ +SubmitTranslationENUS=If translation for this language is not complete or you find errors, you can correct this by editing files into directory langs/%s and submit modified files on dolibarr.org/forum or for developers on github.com/Dolibarr/dolibarr. +ModuleSetup=Module setup +ModulesSetup=Modules/Application setup +ModuleFamilyBase=System +ModuleFamilyCrm=Customer Relationship Management (CRM) +ModuleFamilySrm=Vendor Relationship Management (VRM) +ModuleFamilyProducts=Product Management (PM) +ModuleFamilyHr=Human Resource Management (HR) +ModuleFamilyProjects=Projects/Collaborative work +ModuleFamilyOther=Other +ModuleFamilyTechnic=Multi-modules tools +ModuleFamilyExperimental=Experimental modules +ModuleFamilyFinancial=Financial Modules (Accounting/Treasury) +ModuleFamilyECM=Electronic Content Management (ECM) +ModuleFamilyPortal=Websites and other frontal application +ModuleFamilyInterface=Interfaces with external systems +MenuHandlers=Menu handlers +MenuAdmin=Menu editor +DoNotUseInProduction=Do not use in production +ThisIsProcessToFollow=Upgrade procedure: +ThisIsAlternativeProcessToFollow=This is an alternative setup to process manually: +StepNb=Step %s +FindPackageFromWebSite=Find a package that provides the features you need (for example on the official web site %s). +DownloadPackageFromWebSite=Download package (for example from the official web site %s). +UnpackPackageInDolibarrRoot=Unpack/unzip the packaged files into your Dolibarr server directory: %s +UnpackPackageInModulesRoot=To deploy/install an external module, unpack/unzip the packaged files into the server directory dedicated to external modules:
    %s +SetupIsReadyForUse=Module deployment is finished. You must however enable and setup the module in your application by going to the page setup modules: %s. +NotExistsDirect=The alternative root directory is not defined to an existing directory.
    +InfDirAlt=Since version 3, it is possible to define an alternative root directory. This allows you to store, into a dedicated directory, plug-ins and custom templates.
    Just create a directory at the root of Dolibarr (eg: custom).
    +InfDirExample=
    Then declare it in the file conf.php
    $dolibarr_main_url_root_alt='/custom'
    $dolibarr_main_document_root_alt='/path/of/dolibarr/htdocs/custom'
    If these lines are commented with "#", to enable them, just uncomment by removing the "#" character. +YouCanSubmitFile=You can upload the .zip file of module package from here: +CurrentVersion=Dolibarr current version +CallUpdatePage=Browse to the page that updates the database structure and data: %s. +LastStableVersion=Latest stable version +LastActivationDate=Latest activation date +LastActivationAuthor=Latest activation author +LastActivationIP=Latest activation IP +UpdateServerOffline=Update server offline +WithCounter=Manage a counter +GenericMaskCodes=You may enter any numbering mask. In this mask, the following tags could be used:
    {000000} corresponds to a number which will be incremented on each %s. Enter as many zeros as the desired length of the counter. The counter will be completed by zeros from the left in order to have as many zeros as the mask.
    {000000+000} same as previous but an offset corresponding to the number to the right of the + sign is applied starting on first %s.
    {000000@x} same as previous but the counter is reset to zero when month x is reached (x between 1 and 12, or 0 to use the early months of fiscal year defined in your configuration, or 99 to reset to zero every month). If this option is used and x is 2 or higher, then sequence {yy}{mm} or {yyyy}{mm} is also required.
    {dd} day (01 to 31).
    {mm} month (01 to 12).
    {yy}, {yyyy} or {y} year over 2, 4 or 1 numbers.
    +GenericMaskCodes2={cccc} the client code on n characters
    {cccc000} the client code on n characters is followed by a counter dedicated for customer. This counter dedicated to customer is reset at same time than global counter.
    {tttt} The code of third party type on n characters (see menu Home - Setup - Dictionary - Types of third parties). If you add this tag, the counter will be different for each type of third party.
    +GenericMaskCodes3=All other characters in the mask will remain intact.
    Spaces are not allowed.
    +GenericMaskCodes4a=Example on the 99th %s of the third party TheCompany, with date 2007-01-31:
    +GenericMaskCodes4b=Example on third party created on 2007-03-01:
    +GenericMaskCodes4c=Example on product created on 2007-03-01:
    +GenericMaskCodes5=ABC{yy}{mm}-{000000} will give ABC0701-000099
    {0000+100@1}-ZZZ/{dd}/XXX will give 0199-ZZZ/31/XXX
    IN{yy}{mm}-{0000}-{t} will give IN0701-0099-A if the type of company is 'Responsable Inscripto' with code for type that is 'A_RI' +GenericNumRefModelDesc=Returns a customizable number according to a defined mask. +ServerAvailableOnIPOrPort=Server is available at address %s on port %s +ServerNotAvailableOnIPOrPort=Server is not available at address %s on port %s +DoTestServerAvailability=Test server connectivity +DoTestSend=Test sending +DoTestSendHTML=Test sending HTML +ErrorCantUseRazIfNoYearInMask=Error, can't use option @ to reset counter each year if sequence {yy} or {yyyy} is not in mask. +ErrorCantUseRazInStartedYearIfNoYearMonthInMask=Error, can't use option @ if sequence {yy}{mm} or {yyyy}{mm} is not in mask. +UMask=UMask parameter for new files on Unix/Linux/BSD/Mac file system. +UMaskExplanation=This parameter allow you to define permissions set by default on files created by Dolibarr on server (during upload for example).
    It must be the octal value (for example, 0666 means read and write for everyone).
    This parameter is useless on a Windows server. +SeeWikiForAllTeam=Take a look at the Wiki page for a list of contributors and their organization +UseACacheDelay= Delay for caching export response in seconds (0 or empty for no cache) +DisableLinkToHelpCenter=Hide link "Need help or support" on login page +DisableLinkToHelp=Hide link to online help "%s" +AddCRIfTooLong=There is no automatic text wrapping, text that is too long will not display on documents. Please add carriage returns in the text area if needed. +ConfirmPurge=Are you sure you want to execute this purge?
    This will permanently delete all your data files with no way to restore them (ECM files, attached files...). +MinLength=Minimum length +LanguageFilesCachedIntoShmopSharedMemory=Files .lang loaded in shared memory +LanguageFile=Language file +ExamplesWithCurrentSetup=Examples with current configuration +ListOfDirectories=List of OpenDocument templates directories +ListOfDirectoriesForModelGenODT=List of directories containing templates files with OpenDocument format.

    Put here full path of directories.
    Add a carriage return between eah 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. +NumberOfModelFilesFound=Number of ODT/ODS template files found in these directories +ExampleOfDirectoriesForModelGen=Examples of syntax:
    c:\\mydir
    /home/mydir
    DOL_DATA_ROOT/ecm/ecmdir +FollowingSubstitutionKeysCanBeUsed=
    To know how to create your odt document templates, before storing them in those directories, read wiki documentation: +FullListOnOnlineDocumentation=http://wiki.dolibarr.org/index.php/Create_an_ODT_document_template +FirstnameNamePosition=Position of Name/Lastname +DescWeather=The following images will be shown on the dashboard when the number of late actions reach the following values: +KeyForWebServicesAccess=Key to use Web Services (parameter "dolibarrkey" in webservices) +TestSubmitForm=Input test form +ThisForceAlsoTheme=Using this menu manager will also use its own theme whatever the user choice. Also this menu manager specialized for smartphones does not work on all smartphone. Use another menu manager if you experience problems with yours. +ThemeDir=Skins directory +ConnectionTimeout=Connection timeout +ResponseTimeout=Response timeout +SmsTestMessage=Test message from __PHONEFROM__ to __PHONETO__ +ModuleMustBeEnabledFirst=Module %s must be enabled first if you need this feature. +SecurityToken=Key to secure URLs +NoSmsEngine=No SMS sender manager available. A SMS sender manager is not installed with the default distribution because they depend on an external vendor, but you can find some on %s +PDF=PDF +PDFDesc=Global options for PDF generation. +PDFAddressForging=Rules for address boxes +HideAnyVATInformationOnPDF=Hide all information related to Sales Tax / VAT +PDFRulesForSalesTax=Rules for Sales Tax / VAT +PDFLocaltax=Rules for %s +HideLocalTaxOnPDF=Hide %s rate in column Tax Sale +HideDescOnPDF=Hide products description +HideRefOnPDF=Hide products ref. +HideDetailsOnPDF=Hide product lines details +PlaceCustomerAddressToIsoLocation=Use french standard position (La Poste) for customer address position +Library=Library +UrlGenerationParameters=Parameters to secure URLs +SecurityTokenIsUnique=Use a unique securekey parameter for each URL +EnterRefToBuildUrl=Enter reference for object %s +GetSecuredUrl=Get calculated URL +ButtonHideUnauthorized=Hide buttons for non-admin users for unauthorized actions instead of showing greyed disabled buttons +OldVATRates=Old VAT rate +NewVATRates=New VAT rate +PriceBaseTypeToChange=Modify on prices with base reference value defined on +MassConvert=Launch bulk conversion +PriceFormatInCurrentLanguage=Price Format In Current Language +String=String +TextLong=Long text +HtmlText=Html text +Int=Integer +Float=Float +DateAndTime=Date and hour +Unique=Unique +Boolean=Boolean (one checkbox) +ExtrafieldPhone = Phone +ExtrafieldPrice = Price +ExtrafieldMail = Email +ExtrafieldUrl = Url +ExtrafieldSelect = Select list +ExtrafieldSelectList = Select from table +ExtrafieldSeparator=Separator (not a field) +ExtrafieldPassword=Password +ExtrafieldRadio=Radio buttons (one choice only) +ExtrafieldCheckBox=Checkboxes +ExtrafieldCheckBoxFromList=Checkboxes from table +ExtrafieldLink=Link to an object +ComputedFormula=Computed field +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +Computedpersistent=Store computed field +ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! +ExtrafieldParamHelpPassword=Leaving this field blank means this value will be stored without encryption (field must be only hidden with star on screen).
    Set 'auto' to use the default encryption rule to save password into database (then value read will be the hash only, no way to retrieve original value) +ExtrafieldParamHelpselect=List of values must be lines with format key,value (where key can't be '0')

    for example:
    1,value1
    2,value2
    code3,value3
    ...

    In order to have the list depending on another complementary attribute list:
    1,value1|options_parent_list_code:parent_key
    2,value2|options_parent_list_code:parent_key

    In order to have the list depending on another list:
    1,value1|parent_list_code:parent_key
    2,value2|parent_list_code:parent_key +ExtrafieldParamHelpcheckbox=List of values must be lines with format key,value (where key can't be '0')

    for example:
    1,value1
    2,value2
    3,value3
    ... +ExtrafieldParamHelpradio=List of values must be lines with format key,value (where key can't be '0')

    for example:
    1,value1
    2,value2
    3,value3
    ... +ExtrafieldParamHelpsellist=List of values comes from a table
    Syntax: table_name:label_field:id_field::filter
    Example: c_typent:libelle:id::filter

    - idfilter is necessarly a primary int key
    - filter can be a simple test (eg active=1) to display only active value
    You can also use $ID$ in filter witch is the current id of current object
    To do a SELECT in filter use $SEL$
    if you want to filter on extrafields use syntax extra.fieldcode=... (where field code is the code of extrafield)

    In order to have the list depending on another complementary attribute list:
    c_typent:libelle:id:options_parent_list_code|parent_column:filter

    In order to have the list depending on another list:
    c_typent:libelle:id:parent_list_code|parent_column:filter +ExtrafieldParamHelpchkbxlst=List of values comes from a table
    Syntax: table_name:label_field:id_field::filter
    Example: c_typent:libelle:id::filter

    filter can be a simple test (eg active=1) to display only active value
    You can also use $ID$ in filter witch is the current id of current object
    To do a SELECT in filter use $SEL$
    if you want to filter on extrafields use syntax extra.fieldcode=... (where field code is the code of extrafield)

    In order to have the list depending on another complementary attribute list:
    c_typent:libelle:id:options_parent_list_code|parent_column:filter

    In order to have the list depending on another list:
    c_typent:libelle:id:parent_list_code|parent_column:filter +ExtrafieldParamHelplink=Parameters must be ObjectName:Classpath
    Syntax: ObjectName:Classpath
    Examples:
    Societe:societe/class/societe.class.php
    Contact:contact/class/contact.class.php +ExtrafieldParamHelpSeparator=Keep empty for a simple separator
    Set this to 1 for a collapsing separator (open by default for new session, then status is kept for each user session)
    Set this to 2 for a collapsing separator (collapsed by default for new session, then status is kept fore each user session) +LibraryToBuildPDF=Library used for PDF generation +LocalTaxDesc=Some countries may apply two or three taxes on each invoice line. If this is the case, choose the type for the second and third tax and its rate. Possible type are:
    1: local tax apply on products and services without vat (localtax is calculated on amount without tax)
    2: local tax apply on products and services including vat (localtax is calculated on amount + main tax)
    3: local tax apply on products without vat (localtax is calculated on amount without tax)
    4: local tax apply on products including vat (localtax is calculated on amount + main vat)
    5: local tax apply on services without vat (localtax is calculated on amount without tax)
    6: local tax apply on services including vat (localtax is calculated on amount + tax) +SMS=SMS +LinkToTestClickToDial=Enter a phone number to call to show a link to test the ClickToDial url for user %s +RefreshPhoneLink=Refresh link +LinkToTest=Clickable link generated for user %s (click phone number to test) +KeepEmptyToUseDefault=Keep empty to use default value +DefaultLink=Default link +SetAsDefault=Set as default +ValueOverwrittenByUserSetup=Warning, this value may be overwritten by user specific setup (each user can set his own clicktodial url) +ExternalModule=External module +InstalledInto=Installed into directory %s +BarcodeInitForthird-parties=Mass barcode init for third-parties +BarcodeInitForProductsOrServices=Mass barcode init or reset for products or services +CurrentlyNWithoutBarCode=Currently, you have %s record on %s %s without barcode defined. +InitEmptyBarCode=Init value for next %s empty records +EraseAllCurrentBarCode=Erase all current barcode values +ConfirmEraseAllCurrentBarCode=Are you sure you want to erase all current barcode values? +AllBarcodeReset=All barcode values have been removed +NoBarcodeNumberingTemplateDefined=No numbering barcode template enabled in the Barcode module setup. +EnableFileCache=Enable file cache +ShowDetailsInPDFPageFoot=Add more details into footer, such as company address or manager names (in addition to professional ids, company capital and VAT number). +NoDetails=No additional details in footer +DisplayCompanyInfo=Display company address +DisplayCompanyManagers=Display manager names +DisplayCompanyInfoAndManagers=Display company address and manager names +EnableAndSetupModuleCron=If you want to have this recurring invoice generated automatically, module *%s* must be enabled and correctly setup. Otherwise, generation of invoices must be done manually from this template using the *Create* button. Note that even if you enabled automatic generation, you can still safely launch manual generation. Generation of duplicates for the same period is not possible. +ModuleCompanyCodeCustomerAquarium=%s followed by customer code for a customer accounting code +ModuleCompanyCodeSupplierAquarium=%s followed by vendor code for a vendor accounting code +ModuleCompanyCodePanicum=Return an empty accounting code. +ModuleCompanyCodeDigitaria=Returns a compound accounting code according to the name of the third party. The code consists of a prefix that can be defined in the first position followed by the number of characters defined in the third party code. +ModuleCompanyCodeCustomerDigitaria=%s followed by the truncated customer name by the number of characters: %s for the customer accounting code. +ModuleCompanyCodeSupplierDigitaria=%s followed by the truncated supplier name by the number of characters: %s for the supplier accounting code. +Use3StepsApproval=By default, Purchase Orders need to be created and approved by 2 different users (one step/user to create and one step/user to approve. Note that if user has both permission to create and approve, one step/user will be enough). You can ask with this option to introduce a third step/user approval, if amount is higher than a dedicated value (so 3 steps will be necessary: 1=validation, 2=first approval and 3=second approval if amount is enough).
    Set this to empty if one approval (2 steps) is enough, set it to a very low value (0.1) if a second approval (3 steps) is always required. +UseDoubleApproval=Use a 3 steps approval when amount (without tax) is higher than... +WarningPHPMail=WARNING: It is often better to setup outgoing emails to use the email server of your provider instead of the default setup. Some email providers (like Yahoo) do not allow you to send an email from another server than their own server. Your current setup uses the server of the application to send email and not the server of your email provider, so some recipients (the one compatible with the restrictive DMARC protocol), will ask your email provider if they can accept your email and some email providers (like Yahoo) may respond "no" because the server is not theirs, so few of your sent Emails may not be accepted (be careful also of your email provider's sending quota).
    If your Email provider (like Yahoo) has this restriction, you must change Email setup to choose the other method "SMTP server" and enter the SMTP server and credentials provided by your Email provider. +WarningPHPMail2=If your email SMTP provider need to restrict email client to some IP addresses (very rare), this is the IP address of the mail user agent (MUA) for your ERP CRM application: %s. +WarningPHPMailSPF=If the domain name in your sender email address is protected by SPF (ask you email provider), you must include the following IPs in the SPF record of the DNS of your domain: %s. +ClickToShowDescription=Click to show description +DependsOn=This module needs the module(s) +RequiredBy=This module is required by module(s) +TheKeyIsTheNameOfHtmlField=This is the name of the HTML field. Technical knowledge is required to read the content of the HTML page to get the key name of a field. +PageUrlForDefaultValues=You must enter the relative path of the page URL. If you include parameters in URL, the default values will be effective if all parameters are set to same value. +PageUrlForDefaultValuesCreate=
    Example:
    For the form to create a new third party, it is %s.
    For URL of external modules installed into custom directory, do not include the "custom/", so use path like mymodule/mypage.php and not custom/mymodule/mypage.php.
    If you want default value only if url has some parameter, you can use %s +PageUrlForDefaultValuesList=
    Example:
    For the page that lists third parties, it is %s.
    For URL of external modules installed into custom directory, do not include the "custom/" so use a path like mymodule/mypagelist.php and not custom/mymodule/mypagelist.php.
    If you want default value only if url has some parameter, you can use %s +AlsoDefaultValuesAreEffectiveForActionCreate=Also note that overwritting default values for form creation works only for pages that were correctly designed (so with parameter action=create or presend...) +EnableDefaultValues=Enable customization of default values +EnableOverwriteTranslation=Enable usage of overwritten translation +GoIntoTranslationMenuToChangeThis=A translation has been found for the key with this code. To change this value, you must edit it from Home-Setup-translation. +WarningSettingSortOrder=Warning, setting a default sort order may result in a technical error when going on the list page if field is an unknown field. If you experience such an error, come back to this page to remove the default sort order and restore default behavior. +Field=Field +ProductDocumentTemplates=Document templates to generate product document +FreeLegalTextOnExpenseReports=Free legal text on expense reports +WatermarkOnDraftExpenseReports=Watermark on draft expense reports +AttachMainDocByDefault=Set this to 1 if you want to attach main document to email by default (if applicable) +FilesAttachedToEmail=Attach file +SendEmailsReminders=Send agenda reminders by emails +davDescription=Setup a WebDAV server +DAVSetup=Setup of module DAV +DAV_ALLOW_PRIVATE_DIR=Enable the generic private directory (WebDAV dedicated directory named "private" - login required) +DAV_ALLOW_PRIVATE_DIRTooltip=The generic private directory is a WebDAV directory anybody can access with its application login/pass. +DAV_ALLOW_PUBLIC_DIR=Enable the generic public directory (WebDAV dedicated directory named "public" - no login required) +DAV_ALLOW_PUBLIC_DIRTooltip=The generic public directory is a WebDAV directory anybody can access (in read and write mode), with no authorization required (login/password account). +DAV_ALLOW_ECM_DIR=Enable the DMS/ECM private directory (root directory of the DMS/ECM module - login required) +DAV_ALLOW_ECM_DIRTooltip=The root directory where all files are manually uploaded when using the DMS/ECM module. Similarly as access from the web interface, you will need a valid login/password with adecuate permissions to access it. +# Modules +Module0Name=Users & Groups +Module0Desc=Users / Employees and Groups management +Module1Name=Third Parties +Module1Desc=Companies and contacts management (customers, prospects...) +Module2Name=Commercial +Module2Desc=Commercial management +Module10Name=Accounting (simplified) +Module10Desc=Simple accounting reports (journals, turnover) based on database content. Does not use any ledger table. +Module20Name=Proposals +Module20Desc=Commercial proposal management +Module22Name=Mass Emailings +Module22Desc=Manage bulk emailing +Module23Name=Energy +Module23Desc=Monitoring the consumption of energies +Module25Name=Sales Orders +Module25Desc=Sales order management +Module30Name=Invoices +Module30Desc=Management of invoices and credit notes for customers. Management of invoices and credit notes for suppliers +Module40Name=Vendors +Module40Desc=Vendors and purchase management (purchase orders and billing of supplier invoices) +Module42Name=Debug Logs +Module42Desc=Logging facilities (file, syslog, ...). Such logs are for technical/debug purposes. +Module49Name=Editors +Module49Desc=Editor management +Module50Name=Products +Module50Desc=Management of Products +Module51Name=Mass mailings +Module51Desc=Mass paper mailing management +Module52Name=Stocks +Module52Desc=Stock management +Module53Name=Services +Module53Desc=Management of Services +Module54Name=Contracts/Subscriptions +Module54Desc=Management of contracts (services or recurring subscriptions) +Module55Name=Barcodes +Module55Desc=Barcode management +Module56Name=Telephony +Module56Desc=Telephony integration +Module57Name=Bank Direct Debit payments +Module57Desc=Management of Direct Debit payment orders. It includes generation of SEPA file for European countries. +Module58Name=ClickToDial +Module58Desc=Integration of a ClickToDial system (Asterisk, ...) +Module59Name=Bookmark4u +Module59Desc=Add function to generate Bookmark4u account from a Dolibarr account +Module60Name=Stickers +Module60Desc=Management of stickers +Module70Name=Interventions +Module70Desc=Intervention management +Module75Name=Expense and trip notes +Module75Desc=Expense and trip notes management +Module80Name=Shipments +Module80Desc=Shipments and delivery note management +Module85Name=Banks & Cash +Module85Desc=Management of bank or cash accounts +Module100Name=External Site +Module100Desc=Add a link to an external website as a main menu icon. Website is shown in a frame under the top menu. +Module105Name=Mailman and SPIP +Module105Desc=Mailman or SPIP interface for member module +Module200Name=LDAP +Module200Desc=LDAP directory synchronization +Module210Name=PostNuke +Module210Desc=PostNuke integration +Module240Name=Data exports +Module240Desc=Tool to export Dolibarr data (with assistance) +Module250Name=Data imports +Module250Desc=Tool to import data into Dolibarr (with assistance) +Module310Name=Members +Module310Desc=Foundation members management +Module320Name=RSS Feed +Module320Desc=Add a RSS feed to Dolibarr pages +Module330Name=Bookmarks & Shortcuts +Module330Desc=Create shortcuts, always accessible, to the internal or external pages to which you frequently access +Module400Name=Projects or Leads +Module400Desc=Management of projects, leads/opportunities and/or tasks. You can also assign any element (invoice, order, proposal, intervention, ...) to a project and get a transversal view from the project view. +Module410Name=Webcalendar +Module410Desc=Webcalendar integration +Module500Name=Taxes & Special Expenses +Module500Desc=Management of other expenses (sale taxes, social or fiscal taxes, dividends, ...) +Module510Name=Salaries +Module510Desc=Record and track employee payments +Module520Name=Loans +Module520Desc=Management of loans +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 +Module610Desc=Creation of product variants (color, size etc.) +Module700Name=Donations +Module700Desc=Donation management +Module770Name=Expense Reports +Module770Desc=Manage expense reports claims (transportation, meal, ...) +Module1120Name=Vendor Commercial Proposals +Module1120Desc=Request vendor commercial proposal and prices +Module1200Name=Mantis +Module1200Desc=Mantis integration +Module1520Name=Document Generation +Module1520Desc=Mass email document generation +Module1780Name=Tags/Categories +Module1780Desc=Create tags/category (products, customers, suppliers, contacts or members) +Module2000Name=WYSIWYG editor +Module2000Desc=Allow text fields to be edited/formatted using CKEditor (html) +Module2200Name=Dynamic Prices +Module2200Desc=Use maths expressions for auto-generation of prices +Module2300Name=Scheduled jobs +Module2300Desc=Scheduled jobs management (alias cron or chrono table) +Module2400Name=Events/Agenda +Module2400Desc=Track events. Log automatic events for tracking purposes or record manual events or meetings. This is the principal module for good Customer or Vendor Relationship Management. +Module2500Name=DMS / ECM +Module2500Desc=Document Management System / Electronic Content Management. Automatic organization of your generated or stored documents. Share them when you need. +Module2600Name=API/Web services (SOAP server) +Module2600Desc=Enable the Dolibarr SOAP server providing API services +Module2610Name=API/Web services (REST server) +Module2610Desc=Enable the Dolibarr REST server providing API services +Module2660Name=Call WebServices (SOAP client) +Module2660Desc=Enable the Dolibarr web services client (Can be used to push data/requests to external servers. Only Purchase orders are currently supported.) +Module2700Name=Gravatar +Module2700Desc=Use online Gravatar service (www.gravatar.com) to show photo of users/members (found with their emails). Needs Internet access +Module2800Desc=FTP Client +Module2900Name=GeoIPMaxmind +Module2900Desc=GeoIP Maxmind conversions capabilities +Module3200Name=Unalterable Archives +Module3200Desc=Enable an unalterable log of business events. Events are archived in real-time. The log is a read-only table of chained events that can be exported. This module may be mandatory for some countries. +Module4000Name=HRM +Module4000Desc=Human resources management (management of department, employee contracts and feelings) +Module5000Name=Multi-company +Module5000Desc=Allows you to manage multiple companies +Module6000Name=Workflow +Module6000Desc=Workflow management (automatic creation of object and/or automatic status change) +Module10000Name=Websites +Module10000Desc=Create websites (public) with a WYSIWYG editor. This is a webmaster or developer oriented CMS (it is better to know HTML and CSS language). Just setup your web server (Apache, Nginx, ...) to point to the dedicated Dolibarr directory to have it online on the internet with your own domain name. +Module20000Name=Leave Request Management +Module20000Desc=Define and track employee leave requests +Module39000Name=Product Lots +Module39000Desc=Lots, serial numbers, eat-by/sell-by date management for products +Module40000Name=Multicurrency +Module40000Desc=Use alternative currencies in prices and documents +Module50000Name=PayBox +Module50000Desc=Offer customers a PayBox online payment page (credit/debit cards). This can be used to allow your customers to make ad-hoc payments or payments related to a specific Dolibarr object (invoice, order etc...) +Module50100Name=POS SimplePOS +Module50100Desc=Point of Sale module SimplePOS (simple POS). +Module50150Name=POS TakePOS +Module50150Desc=Point of Sale module TakePOS (touchscreen POS, for shops, bars or restaurants). +Module50200Name=Paypal +Module50200Desc=Offer customers a PayPal online payment page (PayPal account or credit/debit cards). This can be used to allow your customers to make ad-hoc payments or payments related to a specific Dolibarr object (invoice, order etc...) +Module50300Name=Stripe +Module50300Desc=Offer customers a Stripe online payment page (credit/debit cards). This can be used to allow your customers to make ad-hoc payments or payments related to a specific Dolibarr object (invoice, order etc...) +Module50400Name=Accounting (double entry) +Module50400Desc=Accounting management (double entries, support general and auxiliary ledgers). Export the ledger in several other accounting software formats. +Module54000Name=PrintIPP +Module54000Desc=Direct print (without opening the documents) using Cups IPP interface (Printer must be visible from server, and CUPS must be installed on server). +Module55000Name=Poll, Survey or Vote +Module55000Desc=Create online polls, surveys or votes (like Doodle, Studs, RDVz etc...) +Module59000Name=Margins +Module59000Desc=Module to manage margins +Module60000Name=Commissions +Module60000Desc=Module to manage commissions +Module62000Name=Incoterms +Module62000Desc=Add features to manage Incoterms +Module63000Name=Resources +Module63000Desc=Manage resources (printers, cars, rooms, ...) for allocating to events +Permission11=Read customer invoices +Permission12=Create/modify customer invoices +Permission13=Unvalidate customer invoices +Permission14=Validate customer invoices +Permission15=Send customer invoices by email +Permission16=Create payments for customer invoices +Permission19=Delete customer invoices +Permission21=Read commercial proposals +Permission22=Create/modify commercial proposals +Permission24=Validate commercial proposals +Permission25=Send commercial proposals +Permission26=Close commercial proposals +Permission27=Delete commercial proposals +Permission28=Export commercial proposals +Permission31=Read products +Permission32=Create/modify products +Permission34=Delete products +Permission36=See/manage hidden products +Permission38=Export products +Permission41=Read projects and tasks (shared project and projects I'm contact for). Can also enter time consumed, for me or my hierarchy, on assigned tasks (Timesheet) +Permission42=Create/modify projects (shared project and projects I'm contact for). Can also create tasks and assign users to project and tasks +Permission44=Delete projects (shared project and projects I'm contact for) +Permission45=Export projects +Permission61=Read interventions +Permission62=Create/modify interventions +Permission64=Delete interventions +Permission67=Export interventions +Permission71=Read members +Permission72=Create/modify members +Permission74=Delete members +Permission75=Setup types of membership +Permission76=Export data +Permission78=Read subscriptions +Permission79=Create/modify subscriptions +Permission81=Read customers orders +Permission82=Create/modify customers orders +Permission84=Validate customers orders +Permission86=Send customers orders +Permission87=Close customers orders +Permission88=Cancel customers orders +Permission89=Delete customers orders +Permission91=Read social or fiscal taxes and vat +Permission92=Create/modify social or fiscal taxes and vat +Permission93=Delete social or fiscal taxes and vat +Permission94=Export social or fiscal taxes +Permission95=Read reports +Permission101=Read sendings +Permission102=Create/modify sendings +Permission104=Validate sendings +Permission106=Export sendings +Permission109=Delete sendings +Permission111=Read financial accounts +Permission112=Create/modify/delete and compare transactions +Permission113=Setup financial accounts (create, manage categories) +Permission114=Reconcile transactions +Permission115=Export transactions and account statements +Permission116=Transfers between accounts +Permission117=Manage checks dispatching +Permission121=Read third parties linked to user +Permission122=Create/modify third parties linked to user +Permission125=Delete third parties linked to user +Permission126=Export third parties +Permission141=Read all projects and tasks (also private projects for which I am not a contact) +Permission142=Create/modify all projects and tasks (also private projects for which I am not a contact) +Permission144=Delete all projects and tasks (also private projects i am not contact for) +Permission146=Read providers +Permission147=Read stats +Permission151=Read direct debit payment orders +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=Read contracts/subscriptions +Permission162=Create/modify contracts/subscriptions +Permission163=Activate a service/subscription of a contract +Permission164=Disable a service/subscription of a contract +Permission165=Delete contracts/subscriptions +Permission167=Export contracts +Permission171=Read trips and expenses (yours and your subordinates) +Permission172=Create/modify trips and expenses +Permission173=Delete trips and expenses +Permission174=Read all trips and expenses +Permission178=Export trips and expenses +Permission180=Read suppliers +Permission181=Read purchase orders +Permission182=Create/modify purchase orders +Permission183=Validate purchase orders +Permission184=Approve purchase orders +Permission185=Order or cancel purchase orders +Permission186=Receive purchase orders +Permission187=Close purchase orders +Permission188=Cancel purchase orders +Permission192=Create lines +Permission193=Cancel lines +Permission194=Read the bandwidth lines +Permission202=Create ADSL connections +Permission203=Order connections orders +Permission204=Order connections +Permission205=Manage connections +Permission206=Read connections +Permission211=Read Telephony +Permission212=Order lines +Permission213=Activate line +Permission214=Setup Telephony +Permission215=Setup providers +Permission221=Read emailings +Permission222=Create/modify emailings (topic, recipients...) +Permission223=Validate emailings (allows sending) +Permission229=Delete emailings +Permission237=View recipients and info +Permission238=Manually send mailings +Permission239=Delete mailings after validation or sent +Permission241=Read categories +Permission242=Create/modify categories +Permission243=Delete categories +Permission244=See the contents of the hidden categories +Permission251=Read other users and groups +PermissionAdvanced251=Read other users +Permission252=Read permissions of other users +Permission253=Create/modify other users, groups and permissions +PermissionAdvanced253=Create/modify internal/external users and permissions +Permission254=Create/modify external users only +Permission255=Modify other users password +Permission256=Delete or disable other users +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). +Permission271=Read CA +Permission272=Read invoices +Permission273=Issue invoices +Permission281=Read contacts +Permission282=Create/modify contacts +Permission283=Delete contacts +Permission286=Export contacts +Permission291=Read tariffs +Permission292=Set permissions on the tariffs +Permission293=Modify customer's tariffs +Permission300=Read barcodes +Permission301=Create/modify barcodes +Permission302=Delete barcodes +Permission311=Read services +Permission312=Assign service/subscription to contract +Permission331=Read bookmarks +Permission332=Create/modify bookmarks +Permission333=Delete bookmarks +Permission341=Read its own permissions +Permission342=Create/modify his own user information +Permission343=Modify his own password +Permission344=Modify its own permissions +Permission351=Read groups +Permission352=Read groups permissions +Permission353=Create/modify groups +Permission354=Delete or disable groups +Permission358=Export users +Permission401=Read discounts +Permission402=Create/modify discounts +Permission403=Validate discounts +Permission404=Delete discounts +Permission430=Use Debug Bar +Permission511=Read payments of salaries +Permission512=Create/modify payments of salaries +Permission514=Delete payments of salaries +Permission517=Export salaries +Permission520=Read Loans +Permission522=Create/modify loans +Permission524=Delete loans +Permission525=Access loan calculator +Permission527=Export loans +Permission531=Read services +Permission532=Create/modify services +Permission534=Delete services +Permission536=See/manage hidden services +Permission538=Export services +Permission650=Read Bills of Materials +Permission651=Create/Update Bills of Materials +Permission652=Delete Bills of Materials +Permission701=Read donations +Permission702=Create/modify donations +Permission703=Delete donations +Permission771=Read expense reports (yours and your subordinates) +Permission772=Create/modify expense reports +Permission773=Delete expense reports +Permission774=Read all expense reports (even for user not subordinates) +Permission775=Approve expense reports +Permission776=Pay expense reports +Permission779=Export expense reports +Permission1001=Read stocks +Permission1002=Create/modify warehouses +Permission1003=Delete warehouses +Permission1004=Read stock movements +Permission1005=Create/modify stock movements +Permission1101=Read delivery receipts +Permission1102=Create/modify delivery receipts +Permission1104=Validate delivery receipts +Permission1109=Delete delivery receipts +Permission1121=Read supplier proposals +Permission1122=Create/modify supplier proposals +Permission1123=Validate supplier proposals +Permission1124=Send supplier proposals +Permission1125=Delete supplier proposals +Permission1126=Close supplier price requests +Permission1181=Read suppliers +Permission1182=Read purchase orders +Permission1183=Create/modify purchase orders +Permission1184=Validate purchase orders +Permission1185=Approve purchase orders +Permission1186=Order purchase orders +Permission1187=Acknowledge receipt of purchase orders +Permission1188=Delete purchase orders +Permission1190=Approve (second approval) purchase orders +Permission1201=Get result of an export +Permission1202=Create/Modify an export +Permission1231=Read vendor invoices +Permission1232=Create/modify vendor invoices +Permission1233=Validate vendor invoices +Permission1234=Delete vendor invoices +Permission1235=Send vendor invoices by email +Permission1236=Export vendor invoices, attributes and payments +Permission1237=Export purchase orders and their details +Permission1251=Run mass imports of external data into database (data load) +Permission1321=Export customer invoices, attributes and payments +Permission1322=Reopen a paid bill +Permission1421=Export sales orders and attributes +Permission2401=Read actions (events or tasks) linked to his user account (if owner of event or just assigned to) +Permission2402=Create/modify actions (events or tasks) linked to his user account (if owner of event) +Permission2403=Delete actions (events or tasks) linked to his user account (if owner of event) +Permission2411=Read actions (events or tasks) of others +Permission2412=Create/modify actions (events or tasks) of others +Permission2413=Delete actions (events or tasks) of others +Permission2414=Export actions/tasks of others +Permission2501=Read/Download documents +Permission2502=Download documents +Permission2503=Submit or delete documents +Permission2515=Setup documents directories +Permission2801=Use FTP client in read mode (browse and download only) +Permission2802=Use FTP client in write mode (delete or upload files) +Permission3200=Read archived events and fingerprints +Permission4001=See employees +Permission4002=Create employees +Permission4003=Delete employees +Permission4004=Export employees +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. +Permission10005=Delete website content +Permission20001=Read leave requests (your leave and those of your subordinates) +Permission20002=Create/modify your leave requests (your leave and those of your subordinates) +Permission20003=Delete leave requests +Permission20004=Read all leave requests (even of user not subordinates) +Permission20005=Create/modify leave requests for everybody (even of user not subordinates) +Permission20006=Admin leave requests (setup and update balance) +Permission20007=Approve leave requests +Permission23001=Read Scheduled job +Permission23002=Create/update Scheduled job +Permission23003=Delete Scheduled job +Permission23004=Execute Scheduled job +Permission50101=Use Point of Sale +Permission50201=Read transactions +Permission50202=Import transactions +Permission50401=Bind products and invoices with accounting accounts +Permission50411=Read operations in ledger +Permission50412=Write/Edit operations in ledger +Permission50414=Delete operations in ledger +Permission50415=Delete all operations by year and journal in ledger +Permission50418=Export operations of the ledger +Permission50420=Report and export reports (turnover, balance, journals, ledger) +Permission50430=Define fiscal periods. Validate transactions and close fiscal periods. +Permission50440=Manage chart of accounts, setup of accountancy +Permission51001=Read assets +Permission51002=Create/Update assets +Permission51003=Delete assets +Permission51005=Setup types of asset +Permission54001=Print +Permission55001=Read polls +Permission55002=Create/modify polls +Permission59001=Read commercial margins +Permission59002=Define commercial margins +Permission59003=Read every user margin +Permission63001=Read resources +Permission63002=Create/modify resources +Permission63003=Delete resources +Permission63004=Link resources to agenda events +DictionaryCompanyType=Third-party types +DictionaryCompanyJuridicalType=Third-party legal entities +DictionaryProspectLevel=Prospect potential +DictionaryCanton=States/Provinces +DictionaryRegion=Regions +DictionaryCountry=Countries +DictionaryCurrency=Currencies +DictionaryCivility=Honorific titles +DictionaryActions=Types of agenda events +DictionarySocialContributions=Types of social or fiscal taxes +DictionaryVAT=VAT Rates or Sales Tax Rates +DictionaryRevenueStamp=Amount of tax stamps +DictionaryPaymentConditions=Payment Terms +DictionaryPaymentModes=Payment Modes +DictionaryTypeContact=Contact/Address types +DictionaryTypeOfContainer=Website - Type of website pages/containers +DictionaryEcotaxe=Ecotax (WEEE) +DictionaryPaperFormat=Paper formats +DictionaryFormatCards=Card formats +DictionaryFees=Expense report - Types of expense report lines +DictionarySendingMethods=Shipping methods +DictionaryStaff=Number of Employees +DictionaryAvailability=Delivery delay +DictionaryOrderMethods=Ordering methods +DictionarySource=Origin of proposals/orders +DictionaryAccountancyCategory=Personalized groups for reports +DictionaryAccountancysystem=Models for chart of accounts +DictionaryAccountancyJournal=Accounting journals +DictionaryEMailTemplates=Email Templates +DictionaryUnits=Units +DictionaryMeasuringUnits=Measuring Units +DictionarySocialNetworks=Social Networks +DictionaryProspectStatus=Prospect status +DictionaryHolidayTypes=Types of leave +DictionaryOpportunityStatus=Lead status for project/lead +DictionaryExpenseTaxCat=Expense report - Transportation categories +DictionaryExpenseTaxRange=Expense report - Range by transportation category +SetupSaved=Setup saved +SetupNotSaved=Setup not saved +BackToModuleList=Back to Module list +BackToDictionaryList=Back to Dictionaries list +TypeOfRevenueStamp=Type of tax stamp +VATManagement=Sales Tax Management +VATIsUsedDesc=By default when creating prospects, invoices, orders etc. the Sales Tax rate follows the active standard rule:
    If the seller is not subject to Sales tax, then Sales tax defaults to 0. End of rule.
    If the (seller's country = buyer's country), then the Sales tax by default equals the Sales tax of the product in the seller's country. End of rule.
    If the seller and buyer are both in the European Community and goods are transport-related products (haulage, shipping, airline), the default VAT is 0. This rule is dependant on the seller's country - please consult with your accountant. The VAT should be paid by the buyer to the customs office in their country and not to the seller. End of rule.
    If the seller and buyer are both in the European Community and the buyer is not a company (with a registered intra-Community VAT number) then the VAT defaults to the VAT rate of the seller's country. End of rule.
    If the seller and buyer are both in the European Community and the buyer is a company (with a registered intra-Community VAT number), then the VAT is 0 by default. End of rule.
    In any other case the proposed default is Sales tax=0. End of rule. +VATIsNotUsedDesc=By default the proposed Sales tax is 0 which can be used for cases like associations, individuals or small companies. +VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. +VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. +##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax +LTRate=Rate +LocalTax1IsNotUsed=Do not use second tax +LocalTax1IsUsedDesc=Use a second type of tax (other than first one) +LocalTax1IsNotUsedDesc=Do not use other type of tax (other than first one) +LocalTax1Management=Second type of tax +LocalTax1IsUsedExample= +LocalTax1IsNotUsedExample= +LocalTax2IsNotUsed=Do not use third tax +LocalTax2IsUsedDesc=Use a third type of tax (other than first one) +LocalTax2IsNotUsedDesc=Do not use other type of tax (other than first one) +LocalTax2Management=Third type of tax +LocalTax2IsUsedExample= +LocalTax2IsNotUsedExample= +LocalTax1ManagementES=RE Management +LocalTax1IsUsedDescES=The RE rate by default when creating prospects, invoices, orders etc. follow the active standard rule:
    If the buyer is not subjected to RE, RE by default=0. End of rule.
    If the buyer is subjected to RE then the RE by default. End of rule.
    +LocalTax1IsNotUsedDescES=By default the proposed RE is 0. End of rule. +LocalTax1IsUsedExampleES=In Spain they are professionals subject to some specific sections of the Spanish IAE. +LocalTax1IsNotUsedExampleES=In Spain they are professional and societies and subject to certain sections of the Spanish IAE. +LocalTax2ManagementES=IRPF Management +LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices, orders etc. follow the active standard rule:
    If the seller is not subjected to IRPF, then IRPF by default=0. End of rule.
    If the seller is subjected to IRPF then the IRPF by default. End of rule.
    +LocalTax2IsNotUsedDescES=By default the proposed IRPF is 0. End of rule. +LocalTax2IsUsedExampleES=In Spain, freelancers and independent professionals who provide services and companies who have chosen the tax system of modules. +LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) +CalcLocaltax=Reports on local taxes +CalcLocaltax1=Sales - Purchases +CalcLocaltax1Desc=Local Taxes reports are calculated with the difference between localtaxes sales and localtaxes purchases +CalcLocaltax2=Purchases +CalcLocaltax2Desc=Local Taxes reports are the total of localtaxes purchases +CalcLocaltax3=Sales +CalcLocaltax3Desc=Local Taxes reports are the total of localtaxes sales +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax +LabelUsedByDefault=Label used by default if no translation can be found for code +LabelOnDocuments=Label on documents +LabelOrTranslationKey=Label or translation key +ValueOfConstantKey=Value of a configuration constant +NbOfDays=No. of days +AtEndOfMonth=At end of month +CurrentNext=Current/Next +Offset=Offset +AlwaysActive=Always active +Upgrade=Upgrade +MenuUpgrade=Upgrade / Extend +AddExtensionThemeModuleOrOther=Deploy/install external app/module +WebServer=Web server +DocumentRootServer=Web server's root directory +DataRootServer=Data files directory +IP=IP +Port=Port +VirtualServerName=Virtual server name +OS=OS +PhpWebLink=Web-Php link +Server=Server +Database=Database +DatabaseServer=Database host +DatabaseName=Database name +DatabasePort=Database port +DatabaseUser=Database user +DatabasePassword=Database password +Tables=Tables +TableName=Table name +NbOfRecord=No. of records +Host=Server +DriverType=Driver type +SummarySystem=System information summary +SummaryConst=List of all Dolibarr setup parameters +MenuCompanySetup=Company/Organization +DefaultMenuManager= Standard menu manager +DefaultMenuSmartphoneManager=Smartphone menu manager +Skin=Skin theme +DefaultSkin=Default skin theme +MaxSizeList=Max length for list +DefaultMaxSizeList=Default max length for lists +DefaultMaxSizeShortList=Default max length for short lists (i.e. in customer card) +MessageOfDay=Message of the day +MessageLogin=Login page message +LoginPage=Login page +BackgroundImageLogin=Background image +PermanentLeftSearchForm=Permanent search form on left menu +DefaultLanguage=Default language +EnableMultilangInterface=Enable multilanguage support +EnableShowLogo=Show the company logo in the menu +CompanyInfo=Company/Organization +CompanyIds=Company/Organization identities +CompanyName=Name +CompanyAddress=Address +CompanyZip=Zip +CompanyTown=Town +CompanyCountry=Country +CompanyCurrency=Main currency +CompanyObject=Object of the company +IDCountry=ID country +Logo=Logo +LogoDesc=Main logo of company. Will be used into generated documents (PDF, ...) +LogoSquarred=Logo (squarred) +LogoSquarredDesc=Must be a squarred icon (width = height). This logo will be used as the favorite icon or other need like for the top menu bar (if not disabled into display setup). +DoNotSuggestPaymentMode=Do not suggest +NoActiveBankAccountDefined=No active bank account defined +OwnerOfBankAccount=Owner of bank account %s +BankModuleNotActive=Bank accounts module not enabled +ShowBugTrackLink=Show link "%s" +Alerts=Alerts +DelaysOfToleranceBeforeWarning=Delay before displaying a warning alert for: +DelaysOfToleranceDesc=Set the delay before an alert icon %s is shown onscreen for the late element. +Delays_MAIN_DELAY_ACTIONS_TODO=Planned events (agenda events) not completed +Delays_MAIN_DELAY_PROJECT_TO_CLOSE=Project not closed in time +Delays_MAIN_DELAY_TASKS_TODO=Planned task (project tasks) not completed +Delays_MAIN_DELAY_ORDERS_TO_PROCESS=Order not processed +Delays_MAIN_DELAY_SUPPLIER_ORDERS_TO_PROCESS=Purchase order not processed +Delays_MAIN_DELAY_PROPALS_TO_CLOSE=Proposal not closed +Delays_MAIN_DELAY_PROPALS_TO_BILL=Proposal not billed +Delays_MAIN_DELAY_NOT_ACTIVATED_SERVICES=Service to activate +Delays_MAIN_DELAY_RUNNING_SERVICES=Expired service +Delays_MAIN_DELAY_SUPPLIER_BILLS_TO_PAY=Unpaid vendor invoice +Delays_MAIN_DELAY_CUSTOMER_BILLS_UNPAYED=Unpaid customer invoice +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 +Delays_MAIN_DELAY_HOLIDAYS=Leave requests 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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. +SetupDescription5=Other Setup menu entries manage optional parameters. +LogEvents=Security audit events +Audit=Audit +InfoDolibarr=About Dolibarr +InfoBrowser=About Browser +InfoOS=About OS +InfoWebServer=About Web Server +InfoDatabase=About Database +InfoPHP=About PHP +InfoPerf=About Performances +BrowserName=Browser name +BrowserOS=Browser OS +ListOfSecurityEvents=List of Dolibarr security events +SecurityEventsPurged=Security events purged +LogEventDesc=Enable logging for specific security events. Administrators the log via menu %s - %s. Warning, this feature can generate a large amount of data in the database. +AreaForAdminOnly=Setup parameters can be set by administrator users only. +SystemInfoDesc=System information is miscellaneous technical information you get in read only mode and visible for administrators only. +SystemAreaForAdminOnly=This area is available to administrator users only. Dolibarr user permissions cannot change this restriction. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. +AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. +AccountantFileNumber=Accountant code +DisplayDesc=Parameters affecting the look and behaviour of Dolibarr can be modified here. +AvailableModules=Available app/modules +ToActivateModule=To activate modules, go on setup Area (Home->Setup->Modules). +SessionTimeOut=Time out for session +SessionExplanation=This number guarantees that the session will never expire before this delay, if the session cleaner is done by Internal PHP session cleaner (and nothing else). Internal PHP session cleaner does not guarantee that the session will expire after this delay. It will expire, after this delay, and when the session cleaner is run, so every %s/%s access, but only during access made by other sessions (if value is 0, it means clearing of session is done only by an external process).
    Note: on some servers with an external session cleaning mechanism (cron under debian, ubuntu ...), the sessions can be destroyed after a period defined by an external setup, no matter what the value entered here is. +TriggersAvailable=Available triggers +TriggersDesc=Triggers are files that will modify the behavior of Dolibarr workflow once copied into the directory htdocs/core/triggers. They realize new actions, activated on Dolibarr events (new company creation, invoice validation, ...). +TriggerDisabledByName=Triggers in this file are disabled by the -NORUN suffix in their name. +TriggerDisabledAsModuleDisabled=Triggers in this file are disabled as module %s is disabled. +TriggerAlwaysActive=Triggers in this file are always active, whatever are the activated Dolibarr modules. +TriggerActiveAsModuleActive=Triggers in this file are active as module %s is enabled. +GeneratedPasswordDesc=Choose the method to be used for auto-generated passwords. +DictionaryDesc=Insert all reference data. You can add your values to the default. +ConstDesc=This page allows you to edit (override) parameters not available in other pages. These are mostly reserved parameters for developers/advanced troubleshooting only. +MiscellaneousDesc=All other security related parameters are defined here. +LimitsSetup=Limits/Precision setup +LimitsDesc=You can define limits, precisions and optimizations used by Dolibarr here +MAIN_MAX_DECIMALS_UNIT=Max. decimals for unit prices +MAIN_MAX_DECIMALS_TOT=Max. decimals for total prices +MAIN_MAX_DECIMALS_SHOWN=Max. decimals for prices shown on screen. Add an ellipsis ... after this parameter (e.g. "2...") if you want to see "..." suffixed to the truncated price. +MAIN_ROUNDING_RULE_TOT=Step of rounding range (for countries where rounding is done on something other than base 10. For example, put 0.05 if rounding is done by 0.05 steps) +UnitPriceOfProduct=Net unit price of a product +TotalPriceAfterRounding=Total price (excl/vat/incl tax) after rounding +ParameterActiveForNextInputOnly=Parameter effective for next input only +NoEventOrNoAuditSetup=No security event has been logged. This is normal if Audit has not been enabled in the "Setup - Security - Events" page. +NoEventFoundWithCriteria=No security event has been found for this search criteria. +SeeLocalSendMailSetup=See your local sendmail setup +BackupDesc=A complete backup of a Dolibarr installation requires two steps. +BackupDesc2=Backup the contents of the "documents" directory (%s) containing all uploaded and generated files. This will also include all the dump files generated in Step 1. This operation may last several minutes. +BackupDesc3=Backup the structure and contents of your database (%s) into a dump file. For this, you can use the following assistant. +BackupDescX=The archived directory should be stored in a secure place. +BackupDescY=The generated dump file should be stored in a secure place. +BackupPHPWarning=Backup cannot be guaranteed with this method. Previous one recommended. +RestoreDesc=To restore a Dolibarr backup, two steps are required. +RestoreDesc2=Restore the backup file (zip file for example) of the "documents" directory to a new Dolibarr installation or into this current documents directory (%s). +RestoreDesc3=Restore the database structure and data from a backup dump file into the database of the new Dolibarr installation or into the database of this current installation (%s). Warning, once the restore is complete, you must use a login/password, that existed from the backup time/installation to connect again.
    To restore a backup database into this current installation, you can follow this assistant. +RestoreMySQL=MySQL import +ForcedToByAModule= This rule is forced to %s by an activated module +PreviousDumpFiles=Existing backup files +PreviousArchiveFiles=Existing archive files +WeekStartOnDay=First day of the week +RunningUpdateProcessMayBeRequired=Running the upgrade process seems to be required (Program version %s differs from Database version %s) +YouMustRunCommandFromCommandLineAfterLoginToUser=You must run this command from command line after login to a shell with user %s or you must add -W option at end of command line to provide %s password. +YourPHPDoesNotHaveSSLSupport=SSL functions not available in your PHP +DownloadMoreSkins=More skins to download +SimpleNumRefModelDesc=Returns the reference number with format %syymm-nnnn where yy is year, mm is month and nnnn is sequential with no reset +ShowProfIdInAddress=Show professional id with addresses +ShowVATIntaInAddress=Hide intra-Community VAT number with addresses +TranslationUncomplete=Partial translation +MAIN_DISABLE_METEO=Disable meteorological view +MeteoStdMod=Standard mode +MeteoStdModEnabled=Standard mode enabled +MeteoPercentageMod=Percentage mode +MeteoPercentageModEnabled=Percentage mode enabled +MeteoUseMod=Click to use %s +TestLoginToAPI=Test login to API +ProxyDesc=Some features of Dolibarr require internet access. Define here the internet connection parameters such as access through a proxy server if necessary. +ExternalAccess=External/Internet Access +MAIN_PROXY_USE=Use a proxy server (otherwise access is direct to the internet) +MAIN_PROXY_HOST=Proxy server: Name/Address +MAIN_PROXY_PORT=Proxy server: Port +MAIN_PROXY_USER=Proxy server: Login/User +MAIN_PROXY_PASS=Proxy server: Password +DefineHereComplementaryAttributes=Define here any additional/custom attributes that you want to be included for: %s +ExtraFields=Complementary attributes +ExtraFieldsLines=Complementary attributes (lines) +ExtraFieldsLinesRec=Complementary attributes (templates invoices lines) +ExtraFieldsSupplierOrdersLines=Complementary attributes (order lines) +ExtraFieldsSupplierInvoicesLines=Complementary attributes (invoice lines) +ExtraFieldsThirdParties=Complementary attributes (third party) +ExtraFieldsContacts=Complementary attributes (contacts/address) +ExtraFieldsMember=Complementary attributes (member) +ExtraFieldsMemberType=Complementary attributes (member type) +ExtraFieldsCustomerInvoices=Complementary attributes (invoices) +ExtraFieldsCustomerInvoicesRec=Complementary attributes (templates invoices) +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). +PathToDocuments=Path to documents +PathDirectory=Directory +SendmailOptionMayHurtBuggedMTA=Feature to send mails using method "PHP mail direct" will generate a mail message that might not be parsed correctly by some receiving mail servers. The result is that some mails can't be read by people hosted by those bugged platforms. This is the case for some Internet providers (Ex: Orange in France). This is not a problem with Dolibarr or PHP but with the receiving mail server. You can however add an option MAIN_FIX_FOR_BUGGED_MTA to 1 in Setup - Other to modify Dolibarr to avoid this. However, you may experience problems with other servers that strictly use the SMTP standard. The other solution (recommended) is to use the method "SMTP socket library" which has no disadvantages. +TranslationSetup=Setup of translation +TranslationKeySearch=Search a translation key or string +TranslationOverwriteKey=Overwrite a translation string +TranslationDesc=How to set the display language:
    * Default/Systemwide: menu Home -> Setup -> Display
    * Per user: Click on the username at the top of the screen and modify the User Display Setup tab on the user card. +TranslationOverwriteDesc=You can also override strings filling the following table. Choose your language from "%s" dropdown, insert the translation key string into "%s" and your new translation into "%s" +TranslationOverwriteDesc2=You can use the other tab to help you know which translation key to use +TranslationString=Translation string +CurrentTranslationString=Current translation string +WarningAtLeastKeyOrTranslationRequired=A search criteria is required at least for key or translation string +NewTranslationStringToShow=New translation string to show +OriginalValueWas=The original translation is overwritten. Original value was:

    %s +TransKeyWithoutOriginalValue=You forced a new translation for the translation key '%s' that does not exist in any language files +TotalNumberOfActivatedModules=Activated application/modules: %s / %s +YouMustEnableOneModule=You must at least enable 1 module +ClassNotFoundIntoPathWarning=Class %s not found in PHP path +YesInSummer=Yes in summer +OnlyFollowingModulesAreOpenedToExternalUsers=Note, only the following modules are available to external users (irrespective of the permissions of such users) and only if permissions are granted:
    +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. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. +SearchOptim=Search optimization +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. +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. +FieldEdition=Edition of field %s +FillThisOnlyIfRequired=Example: +2 (fill only if timezone offset problems are experienced) +GetBarCode=Get barcode +NumberingModules=Numbering models +##### Module password generation +PasswordGenerationStandard=Return a password generated according to internal Dolibarr algorithm: 8 characters containing shared numbers and characters in lowercase. +PasswordGenerationNone=Do not suggest a generated password. Password must be typed in manually. +PasswordGenerationPerso=Return a password according to your personally defined configuration. +SetupPerso=According to your configuration +PasswordPatternDesc=Password pattern description +##### Users setup ##### +RuleForGeneratedPasswords=Rules to generate and validate passwords +DisableForgetPasswordLinkOnLogonPage=Do not show the "Password Forgotten" link on the Login page +UsersSetup=Users module setup +UserMailRequired=Email required to create a new user +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record +##### HRM setup ##### +HRMSetup=HRM module setup +##### Company setup ##### +CompanySetup=Companies module setup +CompanyCodeChecker=Options for automatic generation of customer/vendor codes +AccountCodeManager=Options for automatic generation of customer/vendor accounting codes +NotificationsDesc=Email notifications can be sent automatically for some Dolibarr events.
    Recipients of notifications can be defined: +NotificationsDescUser=* per user, one user at a time. +NotificationsDescContact=* per third-party contacts (customers or vendors), one contact at a time. +NotificationsDescGlobal=* or by setting global email addresses in this setup page. +ModelModules=Document Templates +DocumentModelOdt=Generate documents from OpenDocument templates (.ODT / .ODS files from LibreOffice, OpenOffice, KOffice, TextEdit,...) +WatermarkOnDraft=Watermark on draft document +JSOnPaimentBill=Activate feature to autofill payment lines on payment form +CompanyIdProfChecker=Rules for Professional IDs +MustBeUnique=Must be unique? +MustBeMandatory=Mandatory to create third parties (if VAT number or type of company defined) ? +MustBeInvoiceMandatory=Mandatory to validate invoices? +TechnicalServicesProvided=Technical services provided +#####DAV ##### +WebDAVSetupDesc=This is the link to access the WebDAV directory. It contains a "public" dir open to any user knowing the URL (if public directory access allowed) and a "private" directory that needs an existing login account/password for access. +WebDavServer=Root URL of %s server: %s +##### Webcal setup ##### +WebCalUrlForVCalExport=An export link to %s format is available at following link: %s +##### Invoices ##### +BillsSetup=Invoices module setup +BillsNumberingModule=Invoices and credit notes numbering model +BillsPDFModules=Invoice documents models +BillsPDFModulesAccordindToInvoiceType=Invoice documents models according to invoice type +PaymentsPDFModules=Payment documents models +ForceInvoiceDate=Force invoice date to validation date +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice +SuggestPaymentByRIBOnAccount=Suggest payment by withdrawal on account +SuggestPaymentByChequeToAddress=Suggest payment by check to +FreeLegalTextOnInvoices=Free text on invoices +WatermarkOnDraftInvoices=Watermark on draft invoices (none if empty) +PaymentsNumberingModule=Payments numbering model +SuppliersPayment=Vendor payments +SupplierPaymentSetup=Vendor payments setup +##### Proposals ##### +PropalSetup=Commercial proposals module setup +ProposalsNumberingModules=Commercial proposal numbering models +ProposalsPDFModules=Commercial proposal documents models +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal +FreeLegalTextOnProposal=Free text on commercial proposals +WatermarkOnDraftProposal=Watermark on draft commercial proposals (none if empty) +BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal +##### SupplierProposal ##### +SupplierProposalSetup=Price requests suppliers module setup +SupplierProposalNumberingModules=Price requests suppliers numbering models +SupplierProposalPDFModules=Price requests suppliers documents models +FreeLegalTextOnSupplierProposal=Free text on price requests suppliers +WatermarkOnDraftSupplierProposal=Watermark on draft price requests suppliers (none if empty) +BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_PROPOSAL=Ask for bank account destination of price request +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 ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order +OrdersSetup=Sales Orders management setup +OrdersNumberingModules=Orders numbering models +OrdersModelModule=Order documents models +FreeLegalTextOnOrders=Free text on orders +WatermarkOnDraftOrders=Watermark on draft orders (none if empty) +ShippableOrderIconInList=Add an icon in Orders list which indicate if order is shippable +BANK_ASK_PAYMENT_BANK_DURING_ORDER=Ask for bank account destination of order +##### Interventions ##### +InterventionsSetup=Interventions module setup +FreeLegalTextOnInterventions=Free text on intervention documents +FicheinterNumberingModules=Intervention numbering models +TemplatePDFInterventions=Intervention card documents models +WatermarkOnDraftInterventionCards=Watermark on intervention card documents (none if empty) +##### Contracts ##### +ContractsSetup=Contracts/Subscriptions module setup +ContractsNumberingModules=Contracts numbering modules +TemplatePDFContracts=Contracts documents models +FreeLegalTextOnContracts=Free text on contracts +WatermarkOnDraftContractCards=Watermark on draft contracts (none if empty) +##### Members ##### +MembersSetup=Members module setup +MemberMainOptions=Main options +AdherentLoginRequired= Manage a Login for each member +AdherentMailRequired=Email required to create a new member +MemberSendInformationByMailByDefault=Checkbox to send mail confirmation to members (validation or new subscription) is on by default +VisitorCanChooseItsPaymentMode=Visitor can choose from available payment modes +MEMBER_REMINDER_EMAIL=Enable automatic reminder by email of expired subscriptions. Note: Module %s must be enabled and correctly setup to send reminders. +##### LDAP setup ##### +LDAPSetup=LDAP Setup +LDAPGlobalParameters=Global parameters +LDAPUsersSynchro=Users +LDAPGroupsSynchro=Groups +LDAPContactsSynchro=Contacts +LDAPMembersSynchro=Members +LDAPMembersTypesSynchro=Members types +LDAPSynchronization=LDAP synchronisation +LDAPFunctionsNotAvailableOnPHP=LDAP functions are not available on your PHP +LDAPToDolibarr=LDAP -> Dolibarr +DolibarrToLDAP=Dolibarr -> LDAP +LDAPNamingAttribute=Key in LDAP +LDAPSynchronizeUsers=Organization of users in LDAP +LDAPSynchronizeGroups=Organization of groups in LDAP +LDAPSynchronizeContacts=Organization of contacts in LDAP +LDAPSynchronizeMembers=Organization of foundation's members in LDAP +LDAPSynchronizeMembersTypes=Organization of foundation's members types in LDAP +LDAPPrimaryServer=Primary server +LDAPSecondaryServer=Secondary server +LDAPServerPort=Server port +LDAPServerPortExample=Default port: 389 +LDAPServerProtocolVersion=Protocol version +LDAPServerUseTLS=Use TLS +LDAPServerUseTLSExample=Your LDAP server use TLS +LDAPServerDn=Server DN +LDAPAdminDn=Administrator DN +LDAPAdminDnExample=Complete DN (ex: cn=admin,dc=example,dc=com or cn=Administrator,cn=Users,dc=example,dc=com for active directory) +LDAPPassword=Administrator password +LDAPUserDn=Users' DN +LDAPUserDnExample=Complete DN (ex: ou=users,dc=example,dc=com) +LDAPGroupDn=Groups' DN +LDAPGroupDnExample=Complete DN (ex: ou=groups,dc=example,dc=com) +LDAPServerExample=Server address (ex: localhost, 192.168.0.2, ldaps://ldap.example.com/) +LDAPServerDnExample=Complete DN (ex: dc=example,dc=com) +LDAPDnSynchroActive=Users and groups synchronization +LDAPDnSynchroActiveExample=LDAP to Dolibarr or Dolibarr to LDAP synchronization +LDAPDnContactActive=Contacts' synchronization +LDAPDnContactActiveExample=Activated/Unactivated synchronization +LDAPDnMemberActive=Members' synchronization +LDAPDnMemberActiveExample=Activated/Unactivated synchronization +LDAPDnMemberTypeActive=Members types' synchronization +LDAPDnMemberTypeActiveExample=Activated/Unactivated synchronization +LDAPContactDn=Dolibarr contacts' DN +LDAPContactDnExample=Complete DN (ex: ou=contacts,dc=example,dc=com) +LDAPMemberDn=Dolibarr members DN +LDAPMemberDnExample=Complete DN (ex: ou=members,dc=example,dc=com) +LDAPMemberObjectClassList=List of objectClass +LDAPMemberObjectClassListExample=List of objectClass defining record attributes (ex: top,inetOrgPerson or top,user for active directory) +LDAPMemberTypeDn=Dolibarr members types DN +LDAPMemberTypepDnExample=Complete DN (ex: ou=memberstypes,dc=example,dc=com) +LDAPMemberTypeObjectClassList=List of objectClass +LDAPMemberTypeObjectClassListExample=List of objectClass defining record attributes (ex: top,groupOfUniqueNames) +LDAPUserObjectClassList=List of objectClass +LDAPUserObjectClassListExample=List of objectClass defining record attributes (ex: top,inetOrgPerson or top,user for active directory) +LDAPGroupObjectClassList=List of objectClass +LDAPGroupObjectClassListExample=List of objectClass defining record attributes (ex: top,groupOfUniqueNames) +LDAPContactObjectClassList=List of objectClass +LDAPContactObjectClassListExample=List of objectClass defining record attributes (ex: top,inetOrgPerson or top,user for active directory) +LDAPTestConnect=Test LDAP connection +LDAPTestSynchroContact=Test contacts synchronization +LDAPTestSynchroUser=Test user synchronization +LDAPTestSynchroGroup=Test group synchronization +LDAPTestSynchroMember=Test member synchronization +LDAPTestSynchroMemberType=Test member type synchronization +LDAPTestSearch= Test a LDAP search +LDAPSynchroOK=Synchronization test successful +LDAPSynchroKO=Failed synchronization test +LDAPSynchroKOMayBePermissions=Failed synchronization test. Check that the connection to the server is correctly configured and allows LDAP updates +LDAPTCPConnectOK=TCP connect to LDAP server successful (Server=%s, Port=%s) +LDAPTCPConnectKO=TCP connect to LDAP server failed (Server=%s, Port=%s) +LDAPBindOK=Connect/Authenticate to LDAP server successful (Server=%s, Port=%s, Admin=%s, Password=%s) +LDAPBindKO=Connect/Authenticate to LDAP server failed (Server=%s, Port=%s, Admin=%s, Password=%s) +LDAPSetupForVersion3=LDAP server configured for version 3 +LDAPSetupForVersion2=LDAP server configured for version 2 +LDAPDolibarrMapping=Dolibarr Mapping +LDAPLdapMapping=LDAP Mapping +LDAPFieldLoginUnix=Login (unix) +LDAPFieldLoginExample=Example: uid +LDAPFilterConnection=Search filter +LDAPFilterConnectionExample=Example: &(objectClass=inetOrgPerson) +LDAPFieldLoginSamba=Login (samba, activedirectory) +LDAPFieldLoginSambaExample=Example: samaccountname +LDAPFieldFullname=Full name +LDAPFieldFullnameExample=Example: cn +LDAPFieldPasswordNotCrypted=Password not encrypted +LDAPFieldPasswordCrypted=Password encrypted +LDAPFieldPasswordExample=Example: userPassword +LDAPFieldCommonNameExample=Example: cn +LDAPFieldName=Name +LDAPFieldNameExample=Example: sn +LDAPFieldFirstName=First name +LDAPFieldFirstNameExample=Example: givenName +LDAPFieldMail=Email address +LDAPFieldMailExample=Example: mail +LDAPFieldPhone=Professional phone number +LDAPFieldPhoneExample=Example: telephonenumber +LDAPFieldHomePhone=Personal phone number +LDAPFieldHomePhoneExample=Example: homephone +LDAPFieldMobile=Cellular phone +LDAPFieldMobileExample=Example: mobile +LDAPFieldFax=Fax number +LDAPFieldFaxExample=Example: facsimiletelephonenumber +LDAPFieldAddress=Street +LDAPFieldAddressExample=Example: street +LDAPFieldZip=Zip +LDAPFieldZipExample=Example: postalcode +LDAPFieldTown=Town +LDAPFieldTownExample=Example: l +LDAPFieldCountry=Country +LDAPFieldDescription=Description +LDAPFieldDescriptionExample=Example: description +LDAPFieldNotePublic=Public Note +LDAPFieldNotePublicExample=Example: publicnote +LDAPFieldGroupMembers= Group members +LDAPFieldGroupMembersExample= Example: uniqueMember +LDAPFieldBirthdate=Birthdate +LDAPFieldCompany=Company +LDAPFieldCompanyExample=Example: o +LDAPFieldSid=SID +LDAPFieldSidExample=Example: objectsid +LDAPFieldEndLastSubscription=Date of subscription end +LDAPFieldTitle=Job position +LDAPFieldTitleExample=Example: title +LDAPFieldGroupid=Group id +LDAPFieldGroupidExample=Exemple : gidnumber +LDAPFieldUserid=User id +LDAPFieldUseridExample=Exemple : uidnumber +LDAPFieldHomedirectory=Home directory +LDAPFieldHomedirectoryExample=Exemple : homedirectory +LDAPFieldHomedirectoryprefix=Home directory prefix +LDAPSetupNotComplete=LDAP setup not complete (go on others tabs) +LDAPNoUserOrPasswordProvidedAccessIsReadOnly=No administrator or password provided. LDAP access will be anonymous and in read only mode. +LDAPDescContact=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr contacts. +LDAPDescUsers=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr users. +LDAPDescGroups=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr groups. +LDAPDescMembers=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr members module. +LDAPDescMembersTypes=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr members types. +LDAPDescValues=Example values are designed for OpenLDAP with following loaded schemas: core.schema, cosine.schema, inetorgperson.schema). If you use thoose values and OpenLDAP, modify your LDAP config file slapd.conf to have all thoose schemas loaded. +ForANonAnonymousAccess=For an authenticated access (for a write access for example) +PerfDolibarr=Performance setup/optimizing report +YouMayFindPerfAdviceHere=This page provides some checks or advice related to performance. +NotInstalled=Not installed, so your server is not slowed down by this. +ApplicativeCache=Applicative cache +MemcachedNotAvailable=No applicative cache found. You can enhance performance by installing a cache server Memcached and a module able to use this cache server.
    More information here http://wiki.dolibarr.org/index.php/Module_MemCached_EN.
    Note that a lot of web hosting provider does not provide such cache server. +MemcachedModuleAvailableButNotSetup=Module memcached for applicative cache found but setup of module is not complete. +MemcachedAvailableAndSetup=Module memcached dedicated to use memcached server is enabled. +OPCodeCache=OPCode cache +NoOPCodeCacheFound=No OPCode cache found. Maybe you are using an OPCode cache other than XCache or eAccelerator (good), or maybe you don't have OPCode cache (very bad). +HTTPCacheStaticResources=HTTP cache for static resources (css, img, javascript) +FilesOfTypeCached=Files of type %s are cached by HTTP server +FilesOfTypeNotCached=Files of type %s are not cached by HTTP server +FilesOfTypeCompressed=Files of type %s are compressed by HTTP server +FilesOfTypeNotCompressed=Files of type %s are not compressed by HTTP server +CacheByServer=Cache by server +CacheByServerDesc=For example using the Apache directive "ExpiresByType image/gif A2592000" +CacheByClient=Cache by browser +CompressionOfResources=Compression of HTTP responses +CompressionOfResourcesDesc=For example using the Apache directive "AddOutputFilterByType DEFLATE" +TestNotPossibleWithCurrentBrowsers=Such an automatic detection is not possible with current browsers +DefaultValuesDesc=Here you may define the default value you wish to use when creating a new record, and/or default filters or the sort order when you list records. +DefaultCreateForm=Default values (to use on forms) +DefaultSearchFilters=Default search filters +DefaultSortOrder=Default sort orders +DefaultFocus=Default focus fields +DefaultMandatory=Mandatory form fields +##### Products ##### +ProductSetup=Products module setup +ServiceSetup=Services module setup +ProductServiceSetup=Products and Services modules setup +NumberOfProductShowInSelect=Maximum number of products to show in combo select lists (0=no limit) +ViewProductDescInFormAbility=Display product descriptions in forms (otherwise shown in a tooltip popup) +MergePropalProductCard=Activate in product/service Attached Files tab an option to merge product PDF document to proposal PDF azur if product/service is in the proposal +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=Default barcode type to use for products +SetDefaultBarcodeTypeThirdParties=Default barcode type to use for third parties +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= Product / Service configuration +IsNotADir=is not a directory! +##### Syslog ##### +SyslogSetup=Logs module setup +SyslogOutput=Logs outputs +SyslogFacility=Facility +SyslogLevel=Level +SyslogFilename=File name and path +YouCanUseDOL_DATA_ROOT=You can use DOL_DATA_ROOT/dolibarr.log for a log file in Dolibarr "documents" directory. You can set a different path to store this file. +ErrorUnknownSyslogConstant=Constant %s is not a known Syslog constant +OnlyWindowsLOG_USER=Windows only supports LOG_USER +CompressSyslogs=Compression and backup of debug log files (generated by module Log for debug) +SyslogFileNumberOfSaves=Log backups +ConfigureCleaningCronjobToSetFrequencyOfSaves=Configure cleaning scheduled job to set log backup frequency +##### Donations ##### +DonationsSetup=Donation module setup +DonationsReceiptModel=Template of donation receipt +##### Barcode ##### +BarcodeSetup=Barcode setup +PaperFormatModule=Print format module +BarcodeEncodeModule=Barcode encoding type +CodeBarGenerator=Barcode generator +ChooseABarCode=No generator defined +FormatNotSupportedByGenerator=Format not supported by this generator +BarcodeDescEAN8=Barcode of type EAN8 +BarcodeDescEAN13=Barcode of type EAN13 +BarcodeDescUPC=Barcode of type UPC +BarcodeDescISBN=Barcode of type ISBN +BarcodeDescC39=Barcode of type C39 +BarcodeDescC128=Barcode of type C128 +BarcodeDescDATAMATRIX=Barcode of type Datamatrix +BarcodeDescQRCODE=Barcode of type QR code +GenbarcodeLocation=Bar code generation command line tool (used by internal engine for some bar code types). Must be compatible with "genbarcode".
    For example: /usr/local/bin/genbarcode +BarcodeInternalEngine=Internal engine +BarCodeNumberManager=Manager to auto define barcode numbers +##### Prelevements ##### +WithdrawalsSetup=Setup of module Direct Debit payments +##### ExternalRSS ##### +ExternalRSSSetup=External RSS imports setup +NewRSS=New RSS Feed +RSSUrl=RSS URL +RSSUrlExample=An interesting RSS feed +##### Mailing ##### +MailingSetup=EMailing module setup +MailingEMailFrom=Sender email (From) for emails sent by emailing module +MailingEMailError=Return Email (Errors-to) for emails with errors +MailingDelay=Seconds to wait after sending next message +##### Notification ##### +NotificationSetup=Email Notification module setup +NotificationEMailFrom=Sender email (From) for emails sent by the Notifications module +FixedEmailTarget=Recipient +##### Sendings ##### +SendingsSetup=Shipping module setup +SendingsReceiptModel=Sending receipt model +SendingsNumberingModules=Sendings numbering modules +SendingsAbility=Support shipping sheets for customer deliveries +NoNeedForDeliveryReceipts=In most cases, shipping sheets are used both as sheets for customer deliveries (list of products to send) and sheets that are received and signed by customer. Hence the product deliveries receipt is a duplicated feature and is rarely activated. +FreeLegalTextOnShippings=Free text on shipments +##### Deliveries ##### +DeliveryOrderNumberingModules=Products deliveries receipt numbering module +DeliveryOrderModel=Products deliveries receipt model +DeliveriesOrderAbility=Support products deliveries receipts +FreeLegalTextOnDeliveryReceipts=Free text on delivery receipts +##### FCKeditor ##### +AdvancedEditor=Advanced editor +ActivateFCKeditor=Activate advanced editor for: +FCKeditorForCompany=WYSIWIG creation/edition of elements description and note (except products/services) +FCKeditorForProduct=WYSIWIG creation/edition of products/services description and note +FCKeditorForProductDetails=WYSIWIG creation/edition of products details lines for all entities (proposals, orders, invoices, etc...). Warning: Using this option for this case is seriously not recommended as it can create problems with special characters and page formatting when building PDF files. +FCKeditorForMailing= WYSIWIG creation/edition for mass eMailings (Tools->eMailing) +FCKeditorForUserSignature=WYSIWIG creation/edition of user signature +FCKeditorForMail=WYSIWIG creation/edition for all mail (except Tools->eMailing) +FCKeditorForTicket=WYSIWIG creation/edition for tickets +##### Stock ##### +StockSetup=Stock module setup +IfYouUsePointOfSaleCheckModule=If you use the Point of Sale module (POS) provided by default or an external module, this setup may be ignored by your POS module. Most POS modules are designed by default to create an invoice immediately and decrease stock irrespective of the options here. So if you need or not to have a stock decrease when registering a sale from your POS, check also your POS module setup. +##### Menu ##### +MenuDeleted=Menu deleted +Menus=Menus +TreeMenuPersonalized=Personalized menus +NotTopTreeMenuPersonalized=Personalized menus not linked to a top menu entry +NewMenu=New menu +Menu=Selection of menu +MenuHandler=Menu handler +MenuModule=Source module +HideUnauthorizedMenu= Hide unauthorized menus (gray) +DetailId=Id menu +DetailMenuHandler=Menu handler where to show new menu +DetailMenuModule=Module name if menu entry come from a module +DetailType=Type of menu (top or left) +DetailTitre=Menu label or label code for translation +DetailUrl=URL where menu send you (Absolute URL link or external link with http://) +DetailEnabled=Condition to show or not entry +DetailRight=Condition to display unauthorized grey menus +DetailLangs=Lang file name for label code translation +DetailUser=Intern / Extern / All +Target=Target +DetailTarget=Target for links (_blank top opens a new window) +DetailLevel=Level (-1:top menu, 0:header menu, >0 menu and sub menu) +ModifMenu=Menu change +DeleteMenu=Delete menu entry +ConfirmDeleteMenu=Are you sure you want to delete menu entry %s? +FailedToInitializeMenu=Failed to initialize menu +##### Tax ##### +TaxSetup=Taxes, social or fiscal taxes and dividends module setup +OptionVatMode=VAT due +OptionVATDefault=Standard basis +OptionVATDebitOption=Accrual basis +OptionVatDefaultDesc=VAT is due:
    - on delivery of goods (based on invoice date)
    - on payments for services +OptionVatDebitOptionDesc=VAT is due:
    - on delivery of goods (based on invoice date)
    - on invoice (debit) for services +OptionPaymentForProductAndServices=Cash basis for products and services +OptionPaymentForProductAndServicesDesc=VAT is due:
    - on payment for goods
    - on payments for services +SummaryOfVatExigibilityUsedByDefault=Time of VAT eligibility by default according to chosen option: +OnDelivery=On delivery +OnPayment=On payment +OnInvoice=On invoice +SupposedToBePaymentDate=Payment date used +SupposedToBeInvoiceDate=Invoice date used +Buy=Buy +Sell=Sell +InvoiceDateUsed=Invoice date used +YourCompanyDoesNotUseVAT=Your company has been defined to not use VAT (Home - Setup - Company/Organization), so there is no VAT options to setup. +AccountancyCode=Accounting Code +AccountancyCodeSell=Sale account. code +AccountancyCodeBuy=Purchase account. code +##### Agenda ##### +AgendaSetup=Events and agenda module setup +PasswordTogetVCalExport=Key to authorize export link +PastDelayVCalExport=Do not export event older than +AGENDA_USE_EVENT_TYPE=Use events types (managed in menu Setup -> Dictionaries -> Type of agenda events) +AGENDA_USE_EVENT_TYPE_DEFAULT=Automatically set this default value for type of event in event create form +AGENDA_DEFAULT_FILTER_TYPE=Automatically set this type of event in search filter of agenda view +AGENDA_DEFAULT_FILTER_STATUS=Automatically set this status for events in search filter of agenda view +AGENDA_DEFAULT_VIEW=Which tab do you want to open by default when selecting menu Agenda +AGENDA_REMINDER_EMAIL=Enable event reminder by emails (remind option/delay can be defined on each event). Note: Module %s must be enabled and correctly setup to have reminder sent at the correct frequency. +AGENDA_REMINDER_BROWSER=Enable event reminder on user's browser (when event date is reached, each user is able to refuse this from the browser confirmation question) +AGENDA_REMINDER_BROWSER_SOUND=Enable sound notification +AGENDA_SHOW_LINKED_OBJECT=Show linked object into agenda view +##### Clicktodial ##### +ClickToDialSetup=Click To Dial module setup +ClickToDialUrlDesc=Url called when a click on phone picto is done. In URL, you can use tags
    __PHONETO__ that will be replaced with the phone number of person to call
    __PHONEFROM__ that will be replaced with phone number of calling person (yours)
    __LOGIN__ that will be replaced with clicktodial login (defined on user card)
    __PASS__ that will be replaced with clicktodial password (defined on user card). +ClickToDialDesc=This module makea phone numbers clickable links. A click on the icon will make your phone call the number. This can be used to call a call-center system from Dolibarr that can call the phone number on a SIP system for example. +ClickToDialUseTelLink=Use just a link "tel:" on phone numbers +ClickToDialUseTelLinkDesc=Use this method if your users have a softphone or a software interface installed on the same computer as the browser, and called when you click on a link in your browser that starts with "tel:". If you need a full server solution (no need of local software installation), you must set this to "No" and fill next field. +##### Point Of Sale (CashDesk) ##### +CashDesk=Point of Sale +CashDeskSetup=Point of Sales module setup +CashDeskThirdPartyForSell=Default generic third party to use for sales +CashDeskBankAccountForSell=Default account to use to receive cash payments +CashDeskBankAccountForCheque=Default account to use to receive payments by check +CashDeskBankAccountForCB=Default account to use to receive payments by credit cards +CashDeskBankAccountForSumup=Default bank account to use to receive payments by SumUp +CashDeskDoNotDecreaseStock=Disable stock decrease when a sale is done from Point of Sale (if "no", stock decrease is done for each sale done from POS, irrespective of the option set in module Stock). +CashDeskIdWareHouse=Force and restrict warehouse to use for stock decrease +StockDecreaseForPointOfSaleDisabled=Stock decrease from Point of Sale disabled +StockDecreaseForPointOfSaleDisabledbyBatch=Stock decrease in POS is not compatible with module Serial/Lot management (currently active) so stock decrease is disabled. +CashDeskYouDidNotDisableStockDecease=You did not disable stock decrease when making a sale from Point of Sale. Hence a warehouse is required. +CashDeskForceDecreaseStockLabel=Stock decrease for batch products was forced. +CashDeskForceDecreaseStockDesc=Decrease first by the oldest eatby and sellby dates. +CashDeskReaderKeyCodeForEnter=Key code for "Enter" defined in barcode reader (Example: 13) +##### Bookmark ##### +BookmarkSetup=Bookmark module setup +BookmarkDesc=This module allows you to manage bookmarks. You can also add shortcuts to any Dolibarr pages or external web sites on your left menu. +NbOfBoomarkToShow=Maximum number of bookmarks to show in left menu +##### WebServices ##### +WebServicesSetup=Webservices module setup +WebServicesDesc=By enabling this module, Dolibarr become a web service server to provide miscellaneous web services. +WSDLCanBeDownloadedHere=WSDL descriptor files of provided services can be download here +EndPointIs=SOAP clients must send their requests to the Dolibarr endpoint available at URL +##### API #### +ApiSetup=API module setup +ApiDesc=By enabling this module, Dolibarr become a REST server to provide miscellaneous web services. +ApiProductionMode=Enable production mode (this will activate use of a cache for services management) +ApiExporerIs=You can explore and test the APIs at URL +OnlyActiveElementsAreExposed=Only elements from enabled modules are exposed +ApiKey=Key for API +WarningAPIExplorerDisabled=The API explorer has been disabled. API explorer is not required to provide API services. It is a tool for developer to find/test REST APIs. If you need this tool, go into setup of module API REST to activate it. +##### Bank ##### +BankSetupModule=Bank module setup +FreeLegalTextOnChequeReceipts=Free text on check receipts +BankOrderShow=Display order of bank accounts for countries using "detailed bank number" +BankOrderGlobal=General +BankOrderGlobalDesc=General display order +BankOrderES=Spanish +BankOrderESDesc=Spanish display order +ChequeReceiptsNumberingModule=Check Receipts Numbering Module +##### Multicompany ##### +MultiCompanySetup=Multi-company module setup +##### Suppliers ##### +SuppliersSetup=Vendor module setup +SuppliersCommandModel=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) +SuppliersInvoiceModel=Complete template of Vendor Invoice +SuppliersInvoiceNumberingModel=Vendor invoices numbering models +IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval +##### GeoIPMaxmind ##### +GeoIPMaxmindSetup=GeoIP Maxmind module setup +PathToGeoIPMaxmindCountryDataFile=Path to file containing Maxmind ip to country translation.
    Examples:
    /usr/local/share/GeoIP/GeoIP.dat
    /usr/share/GeoIP/GeoIP.dat
    /usr/share/GeoIP/GeoLite2-Country.mmdb +NoteOnPathLocation=Note that your ip to country data file must be inside a directory your PHP can read (Check your PHP open_basedir setup and filesystem permissions). +YouCanDownloadFreeDatFileTo=You can download a free demo version of the Maxmind GeoIP country file at %s. +YouCanDownloadAdvancedDatFileTo=You can also download a more complete version, with updates, of the Maxmind GeoIP country file at %s. +TestGeoIPResult=Test of a conversion IP -> country +##### Projects ##### +ProjectsNumberingModules=Projects numbering module +ProjectsSetup=Project module setup +ProjectsModelModule=Project reports document model +TasksNumberingModules=Tasks numbering module +TaskModelModule=Tasks reports document model +UseSearchToSelectProject=Wait until a key is pressed before loading content of Project combo list.
    This may improve performance if you have a large number of projects, but it is less convenient. +##### ECM (GED) ##### +##### Fiscal Year ##### +AccountingPeriods=Accounting periods +AccountingPeriodCard=Accounting period +NewFiscalYear=New accounting period +OpenFiscalYear=Open accounting period +CloseFiscalYear=Close accounting period +DeleteFiscalYear=Delete accounting period +ConfirmDeleteFiscalYear=Are you sure to delete this accounting period? +ShowFiscalYear=Show accounting period +AlwaysEditable=Can always be edited +MAIN_APPLICATION_TITLE=Force visible name of application (warning: setting your own name here may break autofill login feature when using DoliDroid mobile application) +NbMajMin=Minimum number of uppercase characters +NbNumMin=Minimum number of numeric characters +NbSpeMin=Minimum number of special characters +NbIteConsecutive=Maximum number of repeating same characters +NoAmbiCaracAutoGeneration=Do not use ambiguous characters ("1","l","i","|","0","O") for automatic generation +SalariesSetup=Setup of module salaries +SortOrder=Sort order +Format=Format +TypePaymentDesc=0:Customer payment type, 1:Vendor payment type, 2:Both customers and suppliers payment type +IncludePath=Include path (defined into variable %s) +ExpenseReportsSetup=Setup of module Expense Reports +TemplatePDFExpenseReports=Document templates to generate expense report document +ExpenseReportsIkSetup=Setup of module Expense Reports - Milles index +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 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 to the tab "Notifications" of a third party to add or remove notifications for contacts/addresses +Threshold=Threshold +BackupDumpWizard=Wizard to build the database dump file +BackupZipWizard=Wizard to build the archive of documents directory +SomethingMakeInstallFromWebNotPossible=Installation of external module is not possible from the web interface for the following reason: +SomethingMakeInstallFromWebNotPossible2=For this reason, process to upgrade described here is a manual process only a privileged user may perform. +InstallModuleFromWebHasBeenDisabledByFile=Install of external module from application has been disabled by your administrator. You must ask him to remove the file %s to allow this feature. +ConfFileMustContainCustom=Installing or building an external module from application need to save the module files into directory %s. To have this directory processed by Dolibarr, you must setup your conf/conf.php to add the 2 directive lines:
    $dolibarr_main_url_root_alt='/custom';
    $dolibarr_main_document_root_alt='%s/custom'; +HighlightLinesOnMouseHover=Highlight table lines when mouse move passes over +HighlightLinesColor=Highlight color of the line when the mouse passes over (use 'ffffff' for no highlight) +HighlightLinesChecked=Highlight color of the line when it is checked (use 'ffffff' for no highlight) +TextTitleColor=Text color of Page title +LinkColor=Color of links +PressF5AfterChangingThis=Press CTRL+F5 on keyboard or clear your browser cache after changing this value to have it effective +NotSupportedByAllThemes=Will works with core themes, may not be supported by external themes +BackgroundColor=Background color +TopMenuBackgroundColor=Background color for Top menu +TopMenuDisableImages=Hide images in Top menu +LeftMenuBackgroundColor=Background color for Left menu +BackgroundTableTitleColor=Background color for Table title line +BackgroundTableTitleTextColor=Text color for Table title line +BackgroundTableTitleTextlinkColor=Text color for Table title link line +BackgroundTableLineOddColor=Background color for odd table lines +BackgroundTableLineEvenColor=Background color for even table lines +MinimumNoticePeriod=Minimum notice period (Your leave request must be done before this delay) +NbAddedAutomatically=Number of days added to counters of users (automatically) each month +EnterAnyCode=This field contains a reference to identify line. Enter any value of your choice, but without special characters. +Enter0or1=Enter 0 or 1 +UnicodeCurrency=Enter here between braces, list of byte number that represent the currency symbol. For example: for $, enter [36] - for brazil real R$ [82,36] - for €, enter [8364] +ColorFormat=The RGB color is in HEX format, eg: FF0000 +PositionIntoComboList=Position of line into combo lists +SellTaxRate=Sale tax rate +RecuperableOnly=Yes for VAT "Not Perceived but Recoverable" dedicated for some state in France. Keep value to "No" in all other cases. +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=Type of template +TemplateIsVisibleByOwnerOnly=Template is visible to owner only +VisibleEverywhere=Visible everywhere +VisibleNowhere=Visible nowhere +FixTZ=TimeZone fix +FillFixTZOnlyIfRequired=Example: +2 (fill only if problem experienced) +ExpectedChecksum=Expected Checksum +CurrentChecksum=Current Checksum +ExpectedSize=Expected size +CurrentSize=Current size +ForcedConstants=Required constant values +MailToSendProposal=Customer proposals +MailToSendOrder=Sales orders +MailToSendInvoice=Customer invoices +MailToSendShipment=Shipments +MailToSendIntervention=Interventions +MailToSendSupplierRequestForQuotation=Quotation request +MailToSendSupplierOrder=Purchase orders +MailToSendSupplierInvoice=Vendor invoices +MailToSendContract=Contracts +MailToThirdparty=Third parties +MailToMember=Members +MailToUser=Users +MailToProject=Projects page +ByDefaultInList=Show by default on list view +YouUseLastStableVersion=You use the latest stable version +TitleExampleForMajorRelease=Example of message you can use to announce this major release (feel free to use it on your web sites) +TitleExampleForMaintenanceRelease=Example of message you can use to announce this maintenance release (feel free to use it on your web sites) +ExampleOfNewsMessageForMajorRelease=Dolibarr ERP & CRM %s is available. Version %s is a major release with a lot of new features for both users and developers. You can download it from the download area of https://www.dolibarr.org portal (subdirectory Stable versions). You can read ChangeLog for complete list of changes. +ExampleOfNewsMessageForMaintenanceRelease=Dolibarr ERP & CRM %s is available. Version %s is a maintenance version, so contains only bug fixes. We recommend all users to upgrade to this version. A maintenance release does not introduce new features or changes to the database. You may download it from the download area of https://www.dolibarr.org portal (subdirectory Stable versions). You can read the ChangeLog for complete list of changes. +MultiPriceRuleDesc=When option "Several levels of prices per product/service" is enabled, you can define different prices (one per price level) for each product. To save you time, here you may enter a rule to autocalculate a price for each level based on the price of the first level, so you will have to only enter a price for the first level for each product. This page is designed to save you time but is useful only if your prices for each level are relative to first level. You can ignore this page in most cases. +ModelModulesProduct=Templates for product documents +ToGenerateCodeDefineAutomaticRuleFirst=To be able to generate codes automatically, you must first define a manager to auto-define the barcode number. +SeeSubstitutionVars=See * note for list of possible substitution variables +SeeChangeLog=See ChangeLog file (english only) +AllPublishers=All publishers +UnknownPublishers=Unknown publishers +AddRemoveTabs=Add or remove tabs +AddDataTables=Add object tables +AddDictionaries=Add dictionaries tables +AddData=Add objects or dictionaries data +AddBoxes=Add widgets +AddSheduledJobs=Add scheduled jobs +AddHooks=Add hooks +AddTriggers=Add triggers +AddMenus=Add menus +AddPermissions=Add permissions +AddExportProfiles=Add export profiles +AddImportProfiles=Add import profiles +AddOtherPagesOrServices=Add other pages or services +AddModels=Add document or numbering templates +AddSubstitutions=Add keys substitutions +DetectionNotPossible=Detection not possible +UrlToGetKeyToUseAPIs=Url to get token to use API (once token has been received it is saved in database user table and must be provided on each API call) +ListOfAvailableAPIs=List of available APIs +activateModuleDependNotSatisfied=Module "%s" depends on module "%s", that is missing, so module "%1$s" may not work correctly. Please install module "%2$s" or disable module "%1$s" if you want to be safe from any surprise +CommandIsNotInsideAllowedCommands=The command you are trying to run is not in the list of allowed commands defined in parameter $dolibarr_main_restrict_os_commands in the conf.php file. +LandingPage=Landing page +SamePriceAlsoForSharedCompanies=If you use a multicompany module, with the choice "Single price", the price will also be the same for all companies if products are shared between environments +ModuleEnabledAdminMustCheckRights=Module has been activated. Permissions for activated module(s) were given to admin users only. You may need to grant permissions to other users or groups manually if necessary. +UserHasNoPermissions=This user has no permissions defined +TypeCdr=Use "None" if the date of payment term is date of invoice plus a delta in days (delta is field "%s")
    Use "At end of month", if, after delta, the date must be increased to reach the end of month (+ an optional "%s" in days)
    Use "Current/Next" to have payment term date being the first Nth of the month after delta (delta is field "%s", N is stored into field "%s") +BaseCurrency=Reference currency of the company (go into setup of company to change this) +WarningNoteModuleInvoiceForFrenchLaw=This module %s is compliant with French laws (Loi Finance 2016). +WarningNoteModulePOSForFrenchLaw=This module %s is compliant with French laws (Loi Finance 2016) because module Non Reversible Logs is automatically activated. +WarningInstallationMayBecomeNotCompliantWithLaw=You are trying to install module %s that is an external module. Activating an external module means you trust the publisher of that module and that you are sure that this module does not adversely impact the behavior of your application, and is compliant with laws of your country (%s). If the module introduces an illegal feature, you become responsible for the use of illegal software. +MAIN_PDF_MARGIN_LEFT=Left margin on PDF +MAIN_PDF_MARGIN_RIGHT=Right margin on PDF +MAIN_PDF_MARGIN_TOP=Top margin on PDF +MAIN_PDF_MARGIN_BOTTOM=Bottom margin on PDF +NothingToSetup=There is no specific setup required for this module. +SetToYesIfGroupIsComputationOfOtherGroups=Set this to yes if this group is a computation of other groups +EnterCalculationRuleIfPreviousFieldIsYes=Enter calculation rule if previous field was set to Yes (For example 'CODEGRP1+CODEGRP2') +SeveralLangugeVariatFound=Several language variants found +RemoveSpecialChars=Remove special characters +COMPANY_AQUARIUM_CLEAN_REGEX=Regex filter to clean value (COMPANY_AQUARIUM_CLEAN_REGEX) +COMPANY_DIGITARIA_CLEAN_REGEX=Regex filter to clean value (COMPANY_DIGITARIA_CLEAN_REGEX) +COMPANY_DIGITARIA_UNIQUE_CODE=Duplicate not allowed +GDPRContact=Data Protection Officer (DPO, Data Privacy or GDPR contact) +GDPRContactDesc=If you store data about European companies/citizens, you can name the contact who is responsible for the General Data Protection Regulation here +HelpOnTooltip=Help text to show on tooltip +HelpOnTooltipDesc=Put text or a translation key here for the text to show in a tooltip when this field appears in a form +YouCanDeleteFileOnServerWith=You can delete this file on the server with Command Line:
    %s +ChartLoaded=Chart of account loaded +SocialNetworkSetup=Setup of module Social Networks +EnableFeatureFor=Enable features for %s +VATIsUsedIsOff=Note: The option to use Sales Tax or VAT has been set to Off in the menu %s - %s, so Sales tax or Vat used will always be 0 for sales. +SwapSenderAndRecipientOnPDF=Swap sender and recipient address position on PDF documents +FeatureSupportedOnTextFieldsOnly=Warning, feature supported on text fields only. Also an URL parameter action=create or action=edit must be set OR page name must end with 'new.php' to trigger this feature. +EmailCollector=Email collector +EmailCollectorDescription=Add a scheduled job and a setup page to scan regularly email boxes (using IMAP protocol) and record emails received into your application, at the right place and/or create some records automatically (like leads). +NewEmailCollector=New Email Collector +EMailHost=Host of email IMAP server +MailboxSourceDirectory=Mailbox source directory +MailboxTargetDirectory=Mailbox target directory +EmailcollectorOperations=Operations to do by collector +MaxEmailCollectPerCollect=Max number of emails collected per collect +CollectNow=Collect now +ConfirmCloneEmailCollector=Are you sure you want to clone the Email collector %s ? +DateLastCollectResult=Date latest collect tried +DateLastcollectResultOk=Date latest collect successfull +LastResult=Latest result +EmailCollectorConfirmCollectTitle=Email collect confirmation +EmailCollectorConfirmCollect=Do you want to run the collection for this collector now ? +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) +CodeLastResult=Latest result code +NbOfEmailsInInbox=Number of emails in source directory +LoadThirdPartyFromName=Load third party searching on %s (load only) +LoadThirdPartyFromNameOrCreate=Load third party searching on %s (create if not found) +WithDolTrackingID=Dolibarr Reference found in Message ID +WithoutDolTrackingID=Dolibarr Reference not found in Message ID +FormatZip=Zip +MainMenuCode=Menu entry code (mainmenu) +ECMAutoTree=Show automatic ECM tree +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. +OpeningHours=Opening hours +OpeningHoursDesc=Enter here the regular opening hours of your company. +ResourceSetup=Configuration of Resource module +UseSearchToSelectResource=Use a search form to choose a resource (rather than a drop-down list). +DisabledResourceLinkUser=Disable feature to link a resource to users +DisabledResourceLinkContact=Disable feature to link a resource to contacts +EnableResourceUsedInEventCheck=Enable feature to check if a resource is in use in an event +ConfirmUnactivation=Confirm module reset +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. +RootCategoryForProductsToSell=Root category of products to sell +RootCategoryForProductsToSellDesc=If defined, only products inside this category or childs of this category will be available in the Point Of Sale +DebugBar=Debug Bar +DebugBarDesc=Toolbar that comes with a plenty of tools to simplify debugging +DebugBarSetup=DebugBar Setup +GeneralOptions=General Options +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 +ModuleActivated=Module %s is activated and slows the interface +EXPORTS_SHARE_MODELS=Export models are share with everybody +ExportSetup=Setup of module Export +ImportSetup=Setup of module Import +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/. +EmailCollectorTargetDir=It may be a desired behaviour to move the email into another tag/directory when it was processed successfully. Just set a value here to use this feature. Note that you must also use a read/write login account. +EmailCollectorLoadThirdPartyHelp=You can use this action to use the email content to find and load an existing thirdparty in your database. The found (or created) thirdparty will be used for following actions that need it. In the parameter field you can use for example 'EXTRACT:BODY:Name:\\s([^\\s]*)' if you want to extract the name of the thirdparty from a string 'Name: name to find' found into the body. +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 +RESTRICT_ON_IP=Allow access to some host IP only (wildcard not allowed, use space between values). Empty means every hosts can access. +IPListExample=127.0.0.1 192.168.0.2 [::1] +BaseOnSabeDavVersion=Based on the library SabreDAV version +NotAPublicIp=Not a public IP +MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server (done 1 time only after installation) to allow the foundation to count the number of Dolibarr installation. +FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled +EmailTemplate=Template for email +EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/bn_IN/agenda.lang b/htdocs/langs/bn_IN/agenda.lang new file mode 100644 index 00000000000..2031241d2c9 --- /dev/null +++ b/htdocs/langs/bn_IN/agenda.lang @@ -0,0 +1,154 @@ +# Dolibarr language file - Source file is en_US - agenda +IdAgenda=ID event +Actions=Events +Agenda=Agenda +TMenuAgenda=Agenda +Agendas=Agendas +LocalAgenda=Internal calendar +ActionsOwnedBy=Event owned by +ActionsOwnedByShort=Owner +AffectedTo=Assigned to +Event=Event +Events=Events +EventsNb=Number of events +ListOfActions=List of events +EventReports=Event reports +Location=Location +ToUserOfGroup=To any user in group +EventOnFullDay=Event on all day(s) +MenuToDoActions=All incomplete events +MenuDoneActions=All terminated events +MenuToDoMyActions=My incomplete events +MenuDoneMyActions=My terminated events +ListOfEvents=List of events (internal calendar) +ActionsAskedBy=Events reported by +ActionsToDoBy=Events assigned to +ActionsDoneBy=Events done by +ActionAssignedTo=Event assigned to +ViewCal=Month view +ViewDay=Day view +ViewWeek=Week view +ViewPerUser=Per user view +ViewPerType=Per type view +AutoActions= Automatic filling +AgendaAutoActionDesc= Here you may define events which you want Dolibarr to create automatically in Agenda. If nothing is checked, only manual actions will be included in logs and displayed in Agenda. Automatic tracking of business actions done on objects (validation, status change) will not be saved. +AgendaSetupOtherDesc= This page provides options to allow the export of your Dolibarr events into an external calendar (Thunderbird, Google Calendar etc...) +AgendaExtSitesDesc=This page allows to declare external sources of calendars to see their events into Dolibarr agenda. +ActionsEvents=Events for which Dolibarr will create an action in agenda automatically +EventRemindersByEmailNotEnabled=Event reminders by email was not enabled into %s module setup. +##### Agenda event labels ##### +NewCompanyToDolibarr=Third party %s created +COMPANY_DELETEInDolibarr=Third party %s deleted +ContractValidatedInDolibarr=Contract %s validated +CONTRACT_DELETEInDolibarr=Contract %s deleted +PropalClosedSignedInDolibarr=Proposal %s signed +PropalClosedRefusedInDolibarr=Proposal %s refused +PropalValidatedInDolibarr=Proposal %s validated +PropalClassifiedBilledInDolibarr=Proposal %s classified billed +InvoiceValidatedInDolibarr=Invoice %s validated +InvoiceValidatedInDolibarrFromPos=Invoice %s validated from POS +InvoiceBackToDraftInDolibarr=Invoice %s go back to draft status +InvoiceDeleteDolibarr=Invoice %s deleted +InvoicePaidInDolibarr=Invoice %s changed to paid +InvoiceCanceledInDolibarr=Invoice %s canceled +MemberValidatedInDolibarr=Member %s validated +MemberModifiedInDolibarr=Member %s modified +MemberResiliatedInDolibarr=Member %s terminated +MemberDeletedInDolibarr=Member %s deleted +MemberSubscriptionAddedInDolibarr=Subscription %s for member %s added +MemberSubscriptionModifiedInDolibarr=Subscription %s for member %s modified +MemberSubscriptionDeletedInDolibarr=Subscription %s for member %s deleted +ShipmentValidatedInDolibarr=Shipment %s validated +ShipmentClassifyClosedInDolibarr=Shipment %s classified billed +ShipmentUnClassifyCloseddInDolibarr=Shipment %s classified re-open +ShipmentBackToDraftInDolibarr=Shipment %s go back to draft status +ShipmentDeletedInDolibarr=Shipment %s deleted +OrderCreatedInDolibarr=Order %s created +OrderValidatedInDolibarr=Order %s validated +OrderDeliveredInDolibarr=Order %s classified delivered +OrderCanceledInDolibarr=Order %s canceled +OrderBilledInDolibarr=Order %s classified billed +OrderApprovedInDolibarr=Order %s approved +OrderRefusedInDolibarr=Order %s refused +OrderBackToDraftInDolibarr=Order %s go back to draft status +ProposalSentByEMail=Commercial proposal %s sent by email +ContractSentByEMail=Contract %s sent by email +OrderSentByEMail=Sales order %s sent by email +InvoiceSentByEMail=Customer invoice %s sent by email +SupplierOrderSentByEMail=Purchase order %s sent by email +ORDER_SUPPLIER_DELETEInDolibarr=Purchase order %s deleted +SupplierInvoiceSentByEMail=Vendor invoice %s sent by email +ShippingSentByEMail=Shipment %s sent by email +ShippingValidated= Shipment %s validated +InterventionSentByEMail=Intervention %s sent by email +ProposalDeleted=Proposal deleted +OrderDeleted=Order deleted +InvoiceDeleted=Invoice deleted +DraftInvoiceDeleted=Draft invoice deleted +PRODUCT_CREATEInDolibarr=Product %s created +PRODUCT_MODIFYInDolibarr=Product %s modified +PRODUCT_DELETEInDolibarr=Product %s deleted +HOLIDAY_CREATEInDolibarr=Request for leave %s created +HOLIDAY_MODIFYInDolibarr=Request for leave %s modified +HOLIDAY_APPROVEInDolibarr=Request for leave %s approved +HOLIDAY_VALIDATEInDolibarr=Request for leave %s validated +HOLIDAY_DELETEInDolibarr=Request for leave %s deleted +EXPENSE_REPORT_CREATEInDolibarr=Expense report %s created +EXPENSE_REPORT_VALIDATEInDolibarr=Expense report %s validated +EXPENSE_REPORT_APPROVEInDolibarr=Expense report %s approved +EXPENSE_REPORT_DELETEInDolibarr=Expense report %s deleted +EXPENSE_REPORT_REFUSEDInDolibarr=Expense report %s refused +PROJECT_CREATEInDolibarr=Project %s created +PROJECT_MODIFYInDolibarr=Project %s modified +PROJECT_DELETEInDolibarr=Project %s deleted +TICKET_CREATEInDolibarr=Ticket %s created +TICKET_MODIFYInDolibarr=Ticket %s modified +TICKET_ASSIGNEDInDolibarr=Ticket %s assigned +TICKET_CLOSEInDolibarr=Ticket %s closed +TICKET_DELETEInDolibarr=Ticket %s deleted +BOM_VALIDATEInDolibarr=BOM validated +BOM_UNVALIDATEInDolibarr=BOM unvalidated +BOM_CLOSEInDolibarr=BOM disabled +BOM_REOPENInDolibarr=BOM reopen +BOM_DELETEInDolibarr=BOM deleted +MRP_MO_VALIDATEInDolibarr=MO validated +MRP_MO_PRODUCEDInDolibarr=MO produced +MRP_MO_DELETEInDolibarr=MO deleted +##### End agenda events ##### +AgendaModelModule=Document templates for event +DateActionStart=Start date +DateActionEnd=End date +AgendaUrlOptions1=You can also add following parameters to filter output: +AgendaUrlOptions3=logina=%s to restrict output to actions owned by a user %s. +AgendaUrlOptionsNotAdmin=logina=!%s to restrict output to actions not owned by user %s. +AgendaUrlOptions4=logint=%s to restrict output to actions assigned to user %s (owner and others). +AgendaUrlOptionsProject=project=__PROJECT_ID__ to restrict output to actions linked to project __PROJECT_ID__. +AgendaUrlOptionsNotAutoEvent=notactiontype=systemauto to exclude automatic events. +AgendaUrlOptionsIncludeHolidays=includeholidays=1 to include events of holidays. +AgendaShowBirthdayEvents=Show birthdays of contacts +AgendaHideBirthdayEvents=Hide birthdays of contacts +Busy=Busy +ExportDataset_event1=List of agenda events +DefaultWorkingDays=Default working days range in week (Example: 1-5, 1-6) +DefaultWorkingHours=Default working hours in day (Example: 9-18) +# External Sites ical +ExportCal=Export calendar +ExtSites=Import external calendars +ExtSitesEnableThisTool=Show external calendars (defined in global setup) in Agenda. Does not affect external calendars defined by users. +ExtSitesNbOfAgenda=Number of calendars +AgendaExtNb=Calendar no. %s +ExtSiteUrlAgenda=URL to access .ical file +ExtSiteNoLabel=No Description +VisibleTimeRange=Visible time range +VisibleDaysRange=Visible days range +AddEvent=Create event +MyAvailability=My availability +ActionType=Event type +DateActionBegin=Start event date +ConfirmCloneEvent=Are you sure you want to clone the event %s? +RepeatEvent=Repeat event +EveryWeek=Every week +EveryMonth=Every month +DayOfMonth=Day of month +DayOfWeek=Day of week +DateStartPlusOne=Date start + 1 hour diff --git a/htdocs/langs/bn_IN/assets.lang b/htdocs/langs/bn_IN/assets.lang new file mode 100644 index 00000000000..ef04723c6c2 --- /dev/null +++ b/htdocs/langs/bn_IN/assets.lang @@ -0,0 +1,65 @@ +# Copyright (C) 2018 Alexandre Spangaro +# +# 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 . + +# +# Generic +# +Assets = Assets +NewAsset = New asset +AccountancyCodeAsset = Accounting code (asset) +AccountancyCodeDepreciationAsset = Accounting code (depreciation asset account) +AccountancyCodeDepreciationExpense = Accounting code (depreciation expense account) +NewAssetType=New asset type +AssetsTypeSetup=Asset type setup +AssetTypeModified=Asset type modified +AssetType=Asset type +AssetsLines=Assets +DeleteType=Delete +DeleteAnAssetType=Delete an asset type +ConfirmDeleteAssetType=Are you sure you want to delete this asset type? +ShowTypeCard=Show type '%s' + +# Module label 'ModuleAssetsName' +ModuleAssetsName = Assets +# Module description 'ModuleAssetsDesc' +ModuleAssetsDesc = Assets description + +# +# Admin page +# +AssetsSetup = Assets setup +Settings = Settings +AssetsSetupPage = Assets setup page +ExtraFieldsAssetsType = Complementary attributes (Asset type) +AssetsType=Asset type +AssetsTypeId=Asset type id +AssetsTypeLabel=Asset type label +AssetsTypes=Assets types + +# +# Menu +# +MenuAssets = Assets +MenuNewAsset = New asset +MenuTypeAssets = Type assets +MenuListAssets = List +MenuNewTypeAssets = New +MenuListTypeAssets = List + +# +# Module +# +NewAssetType=New asset type +NewAsset=New asset diff --git a/htdocs/langs/bn_IN/banks.lang b/htdocs/langs/bn_IN/banks.lang new file mode 100644 index 00000000000..e54239e9fb2 --- /dev/null +++ b/htdocs/langs/bn_IN/banks.lang @@ -0,0 +1,175 @@ +# Dolibarr language file - Source file is en_US - banks +Bank=Bank +MenuBankCash=Banks | Cash +MenuVariousPayment=Miscellaneous payments +MenuNewVariousPayment=New Miscellaneous payment +BankName=Bank name +FinancialAccount=Account +BankAccount=Bank account +BankAccounts=Bank accounts +BankAccountsAndGateways=Bank accounts | Gateways +ShowAccount=Show Account +AccountRef=Financial account ref +AccountLabel=Financial account label +CashAccount=Cash account +CashAccounts=Cash accounts +CurrentAccounts=Current accounts +SavingAccounts=Savings accounts +ErrorBankLabelAlreadyExists=Financial account label already exists +BankBalance=Balance +BankBalanceBefore=Balance before +BankBalanceAfter=Balance after +BalanceMinimalAllowed=Minimum allowed balance +BalanceMinimalDesired=Minimum desired balance +InitialBankBalance=Initial balance +EndBankBalance=End balance +CurrentBalance=Current balance +FutureBalance=Future balance +ShowAllTimeBalance=Show balance from start +AllTime=From start +Reconciliation=Reconciliation +RIB=Bank Account Number +IBAN=IBAN number +BIC=BIC/SWIFT code +SwiftValid=BIC/SWIFT valid +SwiftVNotalid=BIC/SWIFT not valid +IbanValid=BAN valid +IbanNotValid=BAN not valid +StandingOrders=Direct Debit orders +StandingOrder=Direct debit order +AccountStatement=Account statement +AccountStatementShort=Statement +AccountStatements=Account statements +LastAccountStatements=Last account statements +IOMonthlyReporting=Monthly reporting +BankAccountDomiciliation=Bank address +BankAccountCountry=Account country +BankAccountOwner=Account owner name +BankAccountOwnerAddress=Account owner address +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=Create account +NewBankAccount=New account +NewFinancialAccount=New financial account +MenuNewFinancialAccount=New financial account +EditFinancialAccount=Edit account +LabelBankCashAccount=Bank or cash label +AccountType=Account type +BankType0=Savings account +BankType1=Current or credit card account +BankType2=Cash account +AccountsArea=Accounts area +AccountCard=Account card +DeleteAccount=Delete account +ConfirmDeleteAccount=Are you sure you want to delete this account? +Account=Account +BankTransactionByCategories=Bank entries by categories +BankTransactionForCategory=Bank entries for category %s +RemoveFromRubrique=Remove link with category +RemoveFromRubriqueConfirm=Are you sure you want to remove link between the entry and the category? +ListBankTransactions=List of bank entries +IdTransaction=Transaction ID +BankTransactions=Bank entries +BankTransaction=Bank entry +ListTransactions=List entries +ListTransactionsByCategory=List entries/category +TransactionsToConciliate=Entries to reconcile +TransactionsToConciliateShort=To reconcile +Conciliable=Can be reconciled +Conciliate=Reconcile +Conciliation=Reconciliation +SaveStatementOnly=Save statement only +ReconciliationLate=Reconciliation late +IncludeClosedAccount=Include closed accounts +OnlyOpenedAccount=Only open accounts +AccountToCredit=Account to credit +AccountToDebit=Account to debit +DisableConciliation=Disable reconciliation feature for this account +ConciliationDisabled=Reconciliation feature disabled +LinkedToAConciliatedTransaction=Linked to a conciliated entry +StatusAccountOpened=Open +StatusAccountClosed=Closed +AccountIdShort=Number +LineRecord=Transaction +AddBankRecord=Add entry +AddBankRecordLong=Add entry manually +Conciliated=Reconciled +ConciliatedBy=Reconciled by +DateConciliating=Reconcile date +BankLineConciliated=Entry reconciled with bank receipt +Reconciled=Reconciled +NotReconciled=Not reconciled +CustomerInvoicePayment=Customer payment +SupplierInvoicePayment=Vendor payment +SubscriptionPayment=Subscription payment +WithdrawalPayment=Debit payment order +SocialContributionPayment=Social/fiscal tax payment +BankTransfer=Bank transfer +BankTransfers=Bank transfers +MenuBankInternalTransfer=Internal transfer +TransferDesc=Transfer from one account to another, Dolibarr will write two records (a debit in source account and a credit in target account). The same amount (except sign), label and date will be used for this transaction) +TransferFrom=From +TransferTo=To +TransferFromToDone=A transfer from %s to %s of %s %s has been recorded. +CheckTransmitter=Transmitter +ValidateCheckReceipt=Validate this check receipt? +ConfirmValidateCheckReceipt=Are you sure you want to validate this check receipt, no change will be possible once this is done? +DeleteCheckReceipt=Delete this check receipt? +ConfirmDeleteCheckReceipt=Are you sure you want to delete this check receipt? +BankChecks=Bank checks +BankChecksToReceipt=Checks awaiting deposit +BankChecksToReceiptShort=Checks awaiting deposit +ShowCheckReceipt=Show check deposit receipt +NumberOfCheques=No. of check +DeleteTransaction=Delete entry +ConfirmDeleteTransaction=Are you sure you want to delete this entry? +ThisWillAlsoDeleteBankRecord=This will also delete generated bank entry +BankMovements=Movements +PlannedTransactions=Planned entries +Graph=Graphics +ExportDataset_banque_1=Bank entries and account statement +ExportDataset_banque_2=Deposit slip +TransactionOnTheOtherAccount=Transaction on the other account +PaymentNumberUpdateSucceeded=Payment number updated successfully +PaymentNumberUpdateFailed=Payment number could not be updated +PaymentDateUpdateSucceeded=Payment date updated successfully +PaymentDateUpdateFailed=Payment date could not be updated +Transactions=Transactions +BankTransactionLine=Bank entry +AllAccounts=All bank and cash accounts +BackToAccount=Back to account +ShowAllAccounts=Show for all accounts +FutureTransaction=Future transaction. Unable to reconcile. +SelectChequeTransactionAndGenerate=Select/filter checks to include in the check deposit receipt and click on "Create". +InputReceiptNumber=Choose the bank statement related with the conciliation. Use a sortable numeric value: YYYYMM or YYYYMMDD +EventualyAddCategory=Eventually, specify a category in which to classify the records +ToConciliate=To reconcile? +ThenCheckLinesAndConciliate=Then, check the lines present in the bank statement and click +DefaultRIB=Default BAN +AllRIB=All BAN +LabelRIB=BAN Label +NoBANRecord=No BAN record +DeleteARib=Delete BAN record +ConfirmDeleteRib=Are you sure you want to delete this BAN record? +RejectCheck=Check returned +ConfirmRejectCheck=Are you sure you want to mark this check as rejected? +RejectCheckDate=Date the check was returned +CheckRejected=Check returned +CheckRejectedAndInvoicesReopened=Check returned and invoices re-open +BankAccountModelModule=Document templates for bank accounts +DocumentModelSepaMandate=Template of SEPA mandate. Useful for European countries in EEC only. +DocumentModelBan=Template to print a page with BAN information. +NewVariousPayment=New miscellaneous payment +VariousPayment=Miscellaneous payment +VariousPayments=Miscellaneous payments +ShowVariousPayment=Show miscellaneous payment +AddVariousPayment=Add miscellaneous payment +SEPAMandate=SEPA mandate +YourSEPAMandate=Your SEPA mandate +FindYourSEPAMandate=This is your SEPA mandate to authorize our company to make direct debit order to your bank. Return it signed (scan of the signed document) or send it by mail to +AutoReportLastAccountStatement=Automatically fill the field 'number of bank statement' with last statement number when making reconciliation +CashControl=POS cash fence +NewCashFence=New cash fence +BankColorizeMovement=Colorize movements +BankColorizeMovementDesc=If this function is enable, you can choose specific background color for debit or credit movements +BankColorizeMovementName1=Background color for debit movement +BankColorizeMovementName2=Background color for credit movement diff --git a/htdocs/langs/bn_IN/bills.lang b/htdocs/langs/bn_IN/bills.lang new file mode 100644 index 00000000000..9f11d8ecf87 --- /dev/null +++ b/htdocs/langs/bn_IN/bills.lang @@ -0,0 +1,574 @@ +# Dolibarr language file - Source file is en_US - bills +Bill=Invoice +Bills=Invoices +BillsCustomers=Customer invoices +BillsCustomer=Customer invoice +BillsSuppliers=Vendor invoices +BillsCustomersUnpaid=Unpaid customer invoices +BillsCustomersUnpaidForCompany=Unpaid customer invoices for %s +BillsSuppliersUnpaid=Unpaid vendor invoices +BillsSuppliersUnpaidForCompany=Unpaid vendors invoices for %s +BillsLate=Late payments +BillsStatistics=Customers invoices statistics +BillsStatisticsSuppliers=Vendors invoices statistics +DisabledBecauseDispatchedInBookkeeping=Disabled because invoice was dispatched into bookkeeping +DisabledBecauseNotLastInvoice=Disabled because invoice is not erasable. Some invoices were recorded after this one and it will create holes in the counter. +DisabledBecauseNotErasable=Disabled because cannot be erased +InvoiceStandard=Standard invoice +InvoiceStandardAsk=Standard invoice +InvoiceStandardDesc=This kind of invoice is the common invoice. +InvoiceDeposit=Down payment invoice +InvoiceDepositAsk=Down payment invoice +InvoiceDepositDesc=This kind of invoice is done when a down payment has been received. +InvoiceProForma=Proforma invoice +InvoiceProFormaAsk=Proforma invoice +InvoiceProFormaDesc=Proforma invoice is an image of a true invoice but has no accountancy value. +InvoiceReplacement=Replacement invoice +InvoiceReplacementAsk=Replacement invoice for invoice +InvoiceReplacementDesc=Replacement invoice is used to completely replace an invoice with no payment already received.

    Note: Only invoices with no payment on it can be replaced. If the invoice you replace is not yet closed, it will be automatically closed to 'abandoned'. +InvoiceAvoir=Credit note +InvoiceAvoirAsk=Credit note to correct invoice +InvoiceAvoirDesc=The credit note is a negative invoice used to correct the fact that an invoice shows an amount that differs from the amount actually paid (eg the customer paid too much by mistake, or will not pay the complete amount since some products were returned). +invoiceAvoirWithLines=Create Credit Note with lines from the origin invoice +invoiceAvoirWithPaymentRestAmount=Create Credit Note with remaining unpaid of origin invoice +invoiceAvoirLineWithPaymentRestAmount=Credit Note for remaining unpaid amount +ReplaceInvoice=Replace invoice %s +ReplacementInvoice=Replacement invoice +ReplacedByInvoice=Replaced by invoice %s +ReplacementByInvoice=Replaced by invoice +CorrectInvoice=Correct invoice %s +CorrectionInvoice=Correction invoice +UsedByInvoice=Used to pay invoice %s +ConsumedBy=Consumed by +NotConsumed=Not consumed +NoReplacableInvoice=No replaceable invoices +NoInvoiceToCorrect=No invoice to correct +InvoiceHasAvoir=Was source of one or several credit notes +CardBill=Invoice card +PredefinedInvoices=Predefined Invoices +Invoice=Invoice +PdfInvoiceTitle=Invoice +Invoices=Invoices +InvoiceLine=Invoice line +InvoiceCustomer=Customer invoice +CustomerInvoice=Customer invoice +CustomersInvoices=Customers invoices +SupplierInvoice=Vendor invoice +SuppliersInvoices=Vendors invoices +SupplierBill=Vendor invoice +SupplierBills=suppliers invoices +Payment=Payment +PaymentBack=Refund +CustomerInvoicePaymentBack=Refund +Payments=Payments +PaymentsBack=Refunds +paymentInInvoiceCurrency=in invoices currency +PaidBack=Paid back +DeletePayment=Delete payment +ConfirmDeletePayment=Are you sure you want to delete this payment? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? +ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? +ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. +SupplierPayments=Vendor payments +ReceivedPayments=Received payments +ReceivedCustomersPayments=Payments received from customers +PayedSuppliersPayments=Payments paid to vendors +ReceivedCustomersPaymentsToValid=Received customers payments to validate +PaymentsReportsForYear=Payments reports for %s +PaymentsReports=Payments reports +PaymentsAlreadyDone=Payments already done +PaymentsBackAlreadyDone=Refunds already done +PaymentRule=Payment rule +PaymentMode=Payment Type +PaymentTypeDC=Debit/Credit Card +PaymentTypePP=PayPal +IdPaymentMode=Payment Type (id) +CodePaymentMode=Payment Type (code) +LabelPaymentMode=Payment Type (label) +PaymentModeShort=Payment Type +PaymentTerm=Payment Term +PaymentConditions=Payment Terms +PaymentConditionsShort=Payment Terms +PaymentAmount=Payment amount +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' +ClassifyUnBilled=Classify 'Unbilled' +CreateBill=Create Invoice +CreateCreditNote=Create credit note +AddBill=Create invoice or credit note +AddToDraftInvoices=Add to draft invoice +DeleteBill=Delete invoice +SearchACustomerInvoice=Search for a customer invoice +SearchASupplierInvoice=Search for a vendor invoice +CancelBill=Cancel an invoice +SendRemindByMail=Send reminder by email +DoPayment=Enter payment +DoPaymentBack=Enter refund +ConvertToReduc=Mark as credit available +ConvertExcessReceivedToReduc=Convert excess received into available credit +ConvertExcessPaidToReduc=Convert excess paid into available discount +EnterPaymentReceivedFromCustomer=Enter payment received from customer +EnterPaymentDueToCustomer=Make payment due to customer +DisabledBecauseRemainderToPayIsZero=Disabled because remaining unpaid is zero +PriceBase=Price base +BillStatus=Invoice status +StatusOfGeneratedInvoices=Status of generated invoices +BillStatusDraft=Draft (needs to be validated) +BillStatusPaid=Paid +BillStatusPaidBackOrConverted=Credit note refund or marked as credit available +BillStatusConverted=Paid (ready for consumption in final invoice) +BillStatusCanceled=Abandoned +BillStatusValidated=Validated (needs to be paid) +BillStatusStarted=Started +BillStatusNotPaid=Not paid +BillStatusNotRefunded=Not refunded +BillStatusClosedUnpaid=Closed (unpaid) +BillStatusClosedPaidPartially=Paid (partially) +BillShortStatusDraft=Draft +BillShortStatusPaid=Paid +BillShortStatusPaidBackOrConverted=Refunded or converted +Refunded=Refunded +BillShortStatusConverted=Paid +BillShortStatusCanceled=Abandoned +BillShortStatusValidated=Validated +BillShortStatusStarted=Started +BillShortStatusNotPaid=Not paid +BillShortStatusNotRefunded=Not refunded +BillShortStatusClosedUnpaid=Closed +BillShortStatusClosedPaidPartially=Paid (partially) +PaymentStatusToValidShort=To validate +ErrorVATIntraNotConfigured=Intra-Community VAT number not yet defined +ErrorNoPaiementModeConfigured=No default payment type defined. Go to Invoice module setup to fix this. +ErrorCreateBankAccount=Create a bank account, then go to Setup panel of Invoice module to define payment types +ErrorBillNotFound=Invoice %s does not exist +ErrorInvoiceAlreadyReplaced=Error, you tried to validate an invoice to replace invoice %s. But this one has already been replaced by invoice %s. +ErrorDiscountAlreadyUsed=Error, discount already used +ErrorInvoiceAvoirMustBeNegative=Error, correct invoice must have a negative amount +ErrorInvoiceOfThisTypeMustBePositive=Error, this type of invoice must have an amount excluding tax positive (or null) +ErrorCantCancelIfReplacementInvoiceNotValidated=Error, can't cancel an invoice that has been replaced by another invoice that is still in draft status +ErrorThisPartOrAnotherIsAlreadyUsedSoDiscountSerieCantBeRemoved=This part or another is already used so discount series cannot be removed. +BillFrom=From +BillTo=To +ActionsOnBill=Actions on invoice +RecurringInvoiceTemplate=Template / Recurring invoice +NoQualifiedRecurringInvoiceTemplateFound=No recurring template invoice qualified for generation. +FoundXQualifiedRecurringInvoiceTemplate=Found %s recurring template invoice(s) qualified for generation. +NotARecurringInvoiceTemplate=Not a recurring template invoice +NewBill=New invoice +LastBills=Latest %s invoices +LatestTemplateInvoices=Latest %s template invoices +LatestCustomerTemplateInvoices=Latest %s customer template invoices +LatestSupplierTemplateInvoices=Latest %s vendor template invoices +LastCustomersBills=Latest %s customer invoices +LastSuppliersBills=Latest %s vendor invoices +AllBills=All invoices +AllCustomerTemplateInvoices=All template invoices +OtherBills=Other invoices +DraftBills=Draft invoices +CustomersDraftInvoices=Customer draft invoices +SuppliersDraftInvoices=Vendor draft invoices +Unpaid=Unpaid +ErrorNoPaymentDefined=Error No payment defined +ConfirmDeleteBill=Are you sure you want to delete this invoice? +ConfirmValidateBill=Are you sure you want to validate this invoice with reference %s? +ConfirmUnvalidateBill=Are you sure you want to change invoice %s to draft status? +ConfirmClassifyPaidBill=Are you sure you want to change invoice %s to status paid? +ConfirmCancelBill=Are you sure you want to cancel invoice %s? +ConfirmCancelBillQuestion=Why do you want to classify this invoice 'abandoned'? +ConfirmClassifyPaidPartially=Are you sure you want to change invoice %s to status paid? +ConfirmClassifyPaidPartiallyQuestion=This invoice has not been paid completely. What is the reason for closing this invoice? +ConfirmClassifyPaidPartiallyReasonAvoir=Remaining unpaid (%s %s) is a discount granted because payment was made before term. I regularize the VAT with a credit note. +ConfirmClassifyPaidPartiallyReasonDiscount=Remaining unpaid (%s %s) is a discount granted because payment was made before term. +ConfirmClassifyPaidPartiallyReasonDiscountNoVat=Remaining unpaid (%s %s) is a discount granted because payment was made before term. I accept to lose the VAT on this discount. +ConfirmClassifyPaidPartiallyReasonDiscountVat=Remaining unpaid (%s %s) is a discount granted because payment was made before term. I recover the VAT on this discount without a credit note. +ConfirmClassifyPaidPartiallyReasonBadCustomer=Bad customer +ConfirmClassifyPaidPartiallyReasonProductReturned=Products partially returned +ConfirmClassifyPaidPartiallyReasonOther=Amount abandoned for other reason +ConfirmClassifyPaidPartiallyReasonDiscountNoVatDesc=This choice is possible if your invoice has been provided with suitable comments. (Example «Only the tax corresponding to the price that has been actually paid gives rights to deduction») +ConfirmClassifyPaidPartiallyReasonDiscountVatDesc=In some countries, this choice might be possible only if your invoice contains correct notes. +ConfirmClassifyPaidPartiallyReasonAvoirDesc=Use this choice if all other does not suit +ConfirmClassifyPaidPartiallyReasonBadCustomerDesc=A bad customer is a customer that refuses to pay his debt. +ConfirmClassifyPaidPartiallyReasonProductReturnedDesc=This choice is used when payment is not complete because some of products were returned +ConfirmClassifyPaidPartiallyReasonOtherDesc=Use this choice if all others are not suitable, for example in following situation:
    - payment not complete because some products were shipped back
    - amount claimed too important because a discount was forgotten
    In all cases, amount over-claimed must be corrected in accountancy system by creating a credit note. +ConfirmClassifyAbandonReasonOther=Other +ConfirmClassifyAbandonReasonOtherDesc=This choice will be used in all other cases. For example because you plan to create a replacing invoice. +ConfirmCustomerPayment=Do you confirm this payment input for %s %s? +ConfirmSupplierPayment=Do you confirm this payment input for %s %s? +ConfirmValidatePayment=Are you sure you want to validate this payment? No change can be made once payment is validated. +ValidateBill=Validate invoice +UnvalidateBill=Unvalidate invoice +NumberOfBills=No. of invoices +NumberOfBillsByMonth=No. of invoices per month +AmountOfBills=Amount of invoices +AmountOfBillsHT=Amount of invoices (net of tax) +AmountOfBillsByMonthHT=Amount of invoices by month (net of tax) +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices +RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation +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 +AlreadyPaid=Already paid +AlreadyPaidBack=Already paid back +AlreadyPaidNoCreditNotesNoDeposits=Already paid (without credit notes and down payments) +Abandoned=Abandoned +RemainderToPay=Remaining unpaid +RemainderToTake=Remaining amount to take +RemainderToPayBack=Remaining amount to refund +Rest=Pending +AmountExpected=Amount claimed +ExcessReceived=Excess received +ExcessPaid=Excess paid +EscompteOffered=Discount offered (payment before term) +EscompteOfferedShort=Discount +SendBillRef=Submission of invoice %s +SendReminderBillRef=Submission of invoice %s (reminder) +StandingOrders=Direct debit orders +StandingOrder=Direct debit order +NoDraftBills=No draft invoices +NoOtherDraftBills=No other draft invoices +NoDraftInvoices=No draft invoices +RefBill=Invoice ref +ToBill=To bill +RemainderToBill=Remainder to bill +SendBillByMail=Send invoice by email +SendReminderBillByMail=Send reminder by email +RelatedCommercialProposals=Related commercial proposals +RelatedRecurringCustomerInvoices=Related recurring customer invoices +MenuToValid=To valid +DateMaxPayment=Payment due on +DateInvoice=Invoice date +DatePointOfTax=Point of tax +NoInvoice=No invoice +ClassifyBill=Classify invoice +SupplierBillsToPay=Unpaid vendor invoices +CustomerBillsUnpaid=Unpaid customer invoices +NonPercuRecuperable=Non-recoverable +SetConditions=Set Payment Terms +SetMode=Set Payment Type +SetRevenuStamp=Set revenue stamp +Billed=Billed +RecurringInvoices=Recurring invoices +RepeatableInvoice=Template invoice +RepeatableInvoices=Template invoices +Repeatable=Template +Repeatables=Templates +ChangeIntoRepeatableInvoice=Convert into template invoice +CreateRepeatableInvoice=Create template invoice +CreateFromRepeatableInvoice=Create from template invoice +CustomersInvoicesAndInvoiceLines=Customer invoices and invoice details +CustomersInvoicesAndPayments=Customer invoices and payments +ExportDataset_invoice_1=Customer invoices and invoice details +ExportDataset_invoice_2=Customer invoices and payments +ProformaBill=Proforma Bill: +Reduction=Reduction +ReductionShort=Disc. +Reductions=Reductions +ReductionsShort=Disc. +Discounts=Discounts +AddDiscount=Create discount +AddRelativeDiscount=Create relative discount +EditRelativeDiscount=Edit relative discount +AddGlobalDiscount=Create absolute discount +EditGlobalDiscounts=Edit absolute discounts +AddCreditNote=Create credit note +ShowDiscount=Show discount +ShowReduc=Show the discount +ShowSourceInvoice=Show the source invoice +RelativeDiscount=Relative discount +GlobalDiscount=Global discount +CreditNote=Credit note +CreditNotes=Credit notes +CreditNotesOrExcessReceived=Credit notes or excess received +Deposit=Down payment +Deposits=Down payments +DiscountFromCreditNote=Discount from credit note %s +DiscountFromDeposit=Down payments from invoice %s +DiscountFromExcessReceived=Payments in excess of invoice %s +DiscountFromExcessPaid=Payments in excess of invoice %s +AbsoluteDiscountUse=This kind of credit can be used on invoice before its validation +CreditNoteDepositUse=Invoice must be validated to use this kind of credits +NewGlobalDiscount=New absolute discount +NewRelativeDiscount=New relative discount +DiscountType=Discount type +NoteReason=Note/Reason +ReasonDiscount=Reason +DiscountOfferedBy=Granted by +DiscountStillRemaining=Discounts or credits available +DiscountAlreadyCounted=Discounts or credits already consumed +CustomerDiscounts=Customer discounts +SupplierDiscounts=Vendors discounts +BillAddress=Bill address +HelpEscompte=This discount is a discount granted to customer because payment was made before term. +HelpAbandonBadCustomer=This amount has been abandoned (customer said to be a bad customer) and is considered as an exceptional loss. +HelpAbandonOther=This amount has been abandoned since it was an error (wrong customer or invoice replaced by another for example) +IdSocialContribution=Social/fiscal tax payment id +PaymentId=Payment id +PaymentRef=Payment ref. +InvoiceId=Invoice id +InvoiceRef=Invoice ref. +InvoiceDateCreation=Invoice creation date +InvoiceStatus=Invoice status +InvoiceNote=Invoice note +InvoicePaid=Invoice paid +InvoicePaidCompletely=Paid completely +InvoicePaidCompletelyHelp=Invoice that are paid completely. This excludes invoices that are paid partially. To get list of all 'Closed' or non 'Closed' invoices, prefer to use a filter on the invoice status. +OrderBilled=Order billed +DonationPaid=Donation paid +PaymentNumber=Payment number +RemoveDiscount=Remove discount +WatermarkOnDraftBill=Watermark on draft invoices (nothing if empty) +InvoiceNotChecked=No invoice selected +ConfirmCloneInvoice=Are you sure you want to clone this invoice %s? +DisabledBecauseReplacedInvoice=Action disabled because invoice has been replaced +DescTaxAndDividendsArea=This area presents a summary of all payments made for special expenses. Only records with payments during the fixed year are included here. +NbOfPayments=No. of payments +SplitDiscount=Split discount in two +ConfirmSplitDiscount=Are you sure you want to split this discount of %s %s into two smaller discounts? +TypeAmountOfEachNewDiscount=Input amount for each of two parts: +TotalOfTwoDiscountMustEqualsOriginal=The total of the two new discounts must be equal to the original discount amount. +ConfirmRemoveDiscount=Are you sure you want to remove this discount? +RelatedBill=Related invoice +RelatedBills=Related invoices +RelatedCustomerInvoices=Related customer invoices +RelatedSupplierInvoices=Related vendor invoices +LatestRelatedBill=Latest related invoice +WarningBillExist=Warning, one or more invoices already exist +MergingPDFTool=Merging PDF tool +AmountPaymentDistributedOnInvoice=Payment amount distributed on invoice +PaymentOnDifferentThirdBills=Allow payments on different third parties bills but same parent company +PaymentNote=Payment note +ListOfPreviousSituationInvoices=List of previous situation invoices +ListOfNextSituationInvoices=List of next situation invoices +ListOfSituationInvoices=List of situation invoices +CurrentSituationTotal=Total current situation +DisabledBecauseNotEnouthCreditNote=To remove a situation invoice from cycle, this invoice's credit note total must cover this invoice total +RemoveSituationFromCycle=Remove this invoice from cycle +ConfirmRemoveSituationFromCycle=Remove this invoice %s from cycle ? +ConfirmOuting=Confirm outing +FrequencyPer_d=Every %s days +FrequencyPer_m=Every %s months +FrequencyPer_y=Every %s years +FrequencyUnit=Frequency unit +toolTipFrequency=Examples:
    Set 7, Day: give a new invoice every 7 days
    Set 3, Month: give a new invoice every 3 month +NextDateToExecution=Date for next invoice generation +NextDateToExecutionShort=Date next gen. +DateLastGeneration=Date of latest generation +DateLastGenerationShort=Date latest gen. +MaxPeriodNumber=Max. number of invoice generation +NbOfGenerationDone=Number of invoice generation already done +NbOfGenerationDoneShort=Number of generation done +MaxGenerationReached=Maximum number of generations reached +InvoiceAutoValidate=Validate invoices automatically +GeneratedFromRecurringInvoice=Generated from template recurring invoice %s +DateIsNotEnough=Date not reached yet +InvoiceGeneratedFromTemplate=Invoice %s generated from recurring template invoice %s +GeneratedFromTemplate=Generated from template invoice %s +WarningInvoiceDateInFuture=Warning, the invoice date is higher than current date +WarningInvoiceDateTooFarInFuture=Warning, the invoice date is too far from current date +ViewAvailableGlobalDiscounts=View available discounts +GroupPaymentsByModOnReports=Group payments by mode on reports +# PaymentConditions +Statut=Status +PaymentConditionShortRECEP=Due Upon Receipt +PaymentConditionRECEP=Due Upon Receipt +PaymentConditionShort30D=30 days +PaymentCondition30D=30 days +PaymentConditionShort30DENDMONTH=30 days of month-end +PaymentCondition30DENDMONTH=Within 30 days following the end of the month +PaymentConditionShort60D=60 days +PaymentCondition60D=60 days +PaymentConditionShort60DENDMONTH=60 days of month-end +PaymentCondition60DENDMONTH=Within 60 days following the end of the month +PaymentConditionShortPT_DELIVERY=Delivery +PaymentConditionPT_DELIVERY=On delivery +PaymentConditionShortPT_ORDER=Order +PaymentConditionPT_ORDER=On order +PaymentConditionShortPT_5050=50-50 +PaymentConditionPT_5050=50%% in advance, 50%% on delivery +PaymentConditionShort10D=10 days +PaymentCondition10D=10 days +PaymentConditionShort10DENDMONTH=10 days of month-end +PaymentCondition10DENDMONTH=Within 10 days following the end of the month +PaymentConditionShort14D=14 days +PaymentCondition14D=14 days +PaymentConditionShort14DENDMONTH=14 days of month-end +PaymentCondition14DENDMONTH=Within 14 days following the end of the month +FixAmount=Fixed amount - 1 line with label '%s' +VarAmount=Variable amount (%% tot.) +VarAmountOneLine=Variable amount (%% tot.) - 1 line with label '%s' +VarAmountAllLines=Variable amount (%% tot.) - all same lines +# PaymentType +PaymentTypeVIR=Bank transfer +PaymentTypeShortVIR=Bank transfer +PaymentTypePRE=Direct debit payment order +PaymentTypeShortPRE=Debit payment order +PaymentTypeLIQ=Cash +PaymentTypeShortLIQ=Cash +PaymentTypeCB=Credit card +PaymentTypeShortCB=Credit card +PaymentTypeCHQ=Check +PaymentTypeShortCHQ=Check +PaymentTypeTIP=TIP (Documents against Payment) +PaymentTypeShortTIP=TIP Payment +PaymentTypeVAD=Online payment +PaymentTypeShortVAD=Online payment +PaymentTypeTRA=Bank draft +PaymentTypeShortTRA=Draft +PaymentTypeFAC=Factor +PaymentTypeShortFAC=Factor +BankDetails=Bank details +BankCode=Bank code +DeskCode=Branch code +BankAccountNumber=Account number +BankAccountNumberKey=Checksum +Residence=Address +IBANNumber=IBAN account number +IBAN=IBAN +BIC=BIC/SWIFT +BICNumber=BIC/SWIFT code +ExtraInfos=Extra infos +RegulatedOn=Regulated on +ChequeNumber=Check N° +ChequeOrTransferNumber=Check/Transfer N° +ChequeBordereau=Check schedule +ChequeMaker=Check/Transfer transmitter +ChequeBank=Bank of Check +CheckBank=Check +NetToBePaid=Net to be paid +PhoneNumber=Tel +FullPhoneNumber=Telephone +TeleFax=Fax +PrettyLittleSentence=Accept the amount of payments due by checks issued in my name as a Member of an accounting association approved by the Fiscal Administration. +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=sent to +PaymentByTransferOnThisBankAccount=Payment by transfer to the following bank account +VATIsNotUsedForInvoice=* Non applicable VAT art-293B of CGI +LawApplicationPart1=By application of the law 80.335 of 12/05/80 +LawApplicationPart2=the goods remain the property of +LawApplicationPart3=the seller until full payment of +LawApplicationPart4=their price. +LimitedLiabilityCompanyCapital=SARL with Capital of +UseLine=Apply +UseDiscount=Use discount +UseCredit=Use credit +UseCreditNoteInInvoicePayment=Reduce amount to pay with this credit +MenuChequeDeposits=Check Deposits +MenuCheques=Checks +MenuChequesReceipts=Check receipts +NewChequeDeposit=New deposit +ChequesReceipts=Check receipts +ChequesArea=Check deposits area +ChequeDeposits=Check deposits +Cheques=Checks +DepositId=Id deposit +NbCheque=Number of checks +CreditNoteConvertedIntoDiscount=This %s has been converted into %s +UsBillingContactAsIncoiveRecipientIfExist=Use contact/address with type 'billing contact' instead of third-party address as recipient for invoices +ShowUnpaidAll=Show all unpaid invoices +ShowUnpaidLateOnly=Show late unpaid invoices only +PaymentInvoiceRef=Payment invoice %s +ValidateInvoice=Validate invoice +ValidateInvoices=Validate invoices +Cash=Cash +Reported=Delayed +DisabledBecausePayments=Not possible since there are some payments +CantRemovePaymentWithOneInvoicePaid=Can't remove payment since there is at least one invoice classified paid +ExpectedToPay=Expected payment +CantRemoveConciliatedPayment=Can't remove reconciled payment +PayedByThisPayment=Paid by this payment +ClosePaidInvoicesAutomatically=Classify automatically all standard, down payment or replacement invoices as "Paid" when payment is done entirely. +ClosePaidCreditNotesAutomatically=Classify automatically all credit notes as "Paid" when refund is done entirely. +ClosePaidContributionsAutomatically=Classify automatically all social or fiscal contributions as "Paid" when payment is done entirely. +AllCompletelyPayedInvoiceWillBeClosed=All invoices with no remainder to pay will be automatically closed with status "Paid". +ToMakePayment=Pay +ToMakePaymentBack=Pay back +ListOfYourUnpaidInvoices=List of unpaid invoices +NoteListOfYourUnpaidInvoices=Note: This list contains only invoices for third parties you are linked to as a sale representative. +RevenueStamp=Tax stamp +YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party +YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party +YouMustCreateStandardInvoiceFirstDesc=You have to create a standard invoice first and convert it to "template" to create a new template invoice +PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template (old implementation of Sponge template) +PDFSpongeDescription=Invoice PDF template Sponge. A complete invoice template +PDFCrevetteDescription=Invoice PDF template Crevette. A complete invoice template for situation invoices +TerreNumRefModelDesc1=Return number with format %syymm-nnnn for standard invoices and %syymm-nnnn for credit notes where yy is year, mm is month and nnnn is a sequence with no break and no return to 0 +MarsNumRefModelDesc1=Return number with format %syymm-nnnn for standard invoices, %syymm-nnnn for replacement invoices, %syymm-nnnn for down payment invoices and %syymm-nnnn for credit notes where yy is year, mm is month and nnnn is a sequence with no break and no return to 0 +TerreNumRefModelError=A bill starting with $syymm already exists and is not compatible with this model of sequence. Remove it or rename it to activate this module. +CactusNumRefModelDesc1=Return number with format %syymm-nnnn for standard invoices, %syymm-nnnn for credit notes and %syymm-nnnn for down payment invoices where yy is year, mm is month and nnnn is a sequence with no break and no return to 0 +EarlyClosingReason=Early closing reason +EarlyClosingComment=Early closing note +##### Types de contacts ##### +TypeContact_facture_internal_SALESREPFOLL=Representative following-up customer invoice +TypeContact_facture_external_BILLING=Customer invoice contact +TypeContact_facture_external_SHIPPING=Customer shipping contact +TypeContact_facture_external_SERVICE=Customer service contact +TypeContact_invoice_supplier_internal_SALESREPFOLL=Representative following-up vendor invoice +TypeContact_invoice_supplier_external_BILLING=Vendor invoice contact +TypeContact_invoice_supplier_external_SHIPPING=Vendor shipping contact +TypeContact_invoice_supplier_external_SERVICE=Vendor service contact +# Situation invoices +InvoiceFirstSituationAsk=First situation invoice +InvoiceFirstSituationDesc=The situation invoices are tied to situations related to a progression, for example the progression of a construction. Each situation is tied to an invoice. +InvoiceSituation=Situation invoice +InvoiceSituationAsk=Invoice following the situation +InvoiceSituationDesc=Create a new situation following an already existing one +SituationAmount=Situation invoice amount(net) +SituationDeduction=Situation subtraction +ModifyAllLines=Modify all lines +CreateNextSituationInvoice=Create next situation +ErrorFindNextSituationInvoice=Error unable to find next situation cycle ref +ErrorOutingSituationInvoiceOnUpdate=Unable to outing this situation invoice. +ErrorOutingSituationInvoiceCreditNote=Unable to outing linked credit note. +NotLastInCycle=This invoice is not the latest in cycle and must not be modified. +DisabledBecauseNotLastInCycle=The next situation already exists. +DisabledBecauseFinal=This situation is final. +situationInvoiceShortcode_AS=AS +situationInvoiceShortcode_S=S +CantBeLessThanMinPercent=The progress can't be smaller than its value in the previous situation. +NoSituations=No open situations +InvoiceSituationLast=Final and general invoice +PDFCrevetteSituationNumber=Situation N°%s +PDFCrevetteSituationInvoiceLineDecompte=Situation invoice - COUNT +PDFCrevetteSituationInvoiceTitle=Situation invoice +PDFCrevetteSituationInvoiceLine=Situation N°%s: Inv. N°%s on %s +TotalSituationInvoice=Total situation +invoiceLineProgressError=Invoice line progress can't be greater than or equal to the next invoice line +updatePriceNextInvoiceErrorUpdateline=Error: update price on invoice line: %s +ToCreateARecurringInvoice=To create a recurring invoice for this contract, first create this draft invoice, then convert it into an invoice template and define the frequency for generation of future invoices. +ToCreateARecurringInvoiceGene=To generate future invoices regularly and manually, just go on menu %s - %s - %s. +ToCreateARecurringInvoiceGeneAuto=If you need to have such invoices generated automatically, ask your administrator to enable and setup module %s. Note that both methods (manual and automatic) can be used together with no risk of duplication. +DeleteRepeatableInvoice=Delete template invoice +ConfirmDeleteRepeatableInvoice=Are your sure you want to delete the template invoice? +CreateOneBillByThird=Create one invoice per third party (otherwise, one invoice per order) +BillCreated=%s bill(s) created +StatusOfGeneratedDocuments=Status of document generation +DoNotGenerateDoc=Do not generate document file +AutogenerateDoc=Auto generate document file +AutoFillDateFrom=Set start date for service line with invoice date +AutoFillDateFromShort=Set start date +AutoFillDateTo=Set end date for service line with next invoice date +AutoFillDateToShort=Set end date +MaxNumberOfGenerationReached=Max number of gen. reached +BILL_DELETEInDolibarr=Invoice deleted +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/bn_IN/blockedlog.lang b/htdocs/langs/bn_IN/blockedlog.lang new file mode 100644 index 00000000000..5afae6e9e53 --- /dev/null +++ b/htdocs/langs/bn_IN/blockedlog.lang @@ -0,0 +1,54 @@ +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). +CompanyInitialKey=Company initial key (hash of genesis block) +BrowseBlockedLog=Unalterable logs +ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) +ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) +DownloadBlockChain=Download fingerprints +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). +OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. +OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. +AddedByAuthority=Stored into remote authority +NotAddedByAuthorityYet=Not yet stored into remote authority +ShowDetails=Show stored details +logPAYMENT_VARIOUS_CREATE=Payment (not assigned to an invoice) created +logPAYMENT_VARIOUS_MODIFY=Payment (not assigned to an invoice) modified +logPAYMENT_VARIOUS_DELETE=Payment (not assigned to an invoice) logical deletion +logPAYMENT_ADD_TO_BANK=Payment added to bank +logPAYMENT_CUSTOMER_CREATE=Customer payment created +logPAYMENT_CUSTOMER_DELETE=Customer payment logical deletion +logDONATION_PAYMENT_CREATE=Donation payment created +logDONATION_PAYMENT_DELETE=Donation payment logical deletion +logBILL_PAYED=Customer invoice paid +logBILL_UNPAYED=Customer invoice set unpaid +logBILL_VALIDATE=Customer invoice validated +logBILL_SENTBYMAIL=Customer invoice send by mail +logBILL_DELETE=Customer invoice logically deleted +logMODULE_RESET=Module BlockedLog was disabled +logMODULE_SET=Module BlockedLog was enabled +logDON_VALIDATE=Donation validated +logDON_MODIFY=Donation modified +logDON_DELETE=Donation logical deletion +logMEMBER_SUBSCRIPTION_CREATE=Member subscription created +logMEMBER_SUBSCRIPTION_MODIFY=Member subscription modified +logMEMBER_SUBSCRIPTION_DELETE=Member subscription logical deletion +logCASHCONTROL_VALIDATE=Cash fence recording +BlockedLogBillDownload=Customer invoice download +BlockedLogBillPreview=Customer invoice preview +BlockedlogInfoDialog=Log Details +ListOfTrackedEvents=List of tracked events +Fingerprint=Fingerprint +DownloadLogCSV=Export archived logs (CSV) +logDOC_PREVIEW=Preview of a validated document in order to print or download +logDOC_DOWNLOAD=Download of a validated document in order to print or send +DataOfArchivedEvent=Full datas of archived event +ImpossibleToReloadObject=Original object (type %s, id %s) not linked (see 'Full datas' column to get unalterable saved data) +BlockedLogAreRequiredByYourCountryLegislation=Unalterable Logs module may be required by the legislation of your country. Disabling this module may render any future transactions invalid with respect to the law and the use of legal software as they can not be validated by a tax audit. +BlockedLogActivatedBecauseRequiredByYourCountryLegislation=Unalterable Logs module was activated because of the legislation of your country. Disabling this module may render any future transactions invalid with respect to the law and the use of legal software as they cannot be validated by a tax audit. +BlockedLogDisableNotAllowedForCountry=List of countries where usage of this module is mandatory (just to prevent to disable the module by error, if your country is in this list, disable of module is not possible without editing this list first. Note also that enabling/disabling this module will keep a track into the unalterable log). +OnlyNonValid=Non-valid +TooManyRecordToScanRestrictFilters=Too many records to scan/analyze. Please restrict list with more restrictive filters. +RestrictYearToExport=Restrict month / year to export diff --git a/htdocs/langs/bn_IN/bookmarks.lang b/htdocs/langs/bn_IN/bookmarks.lang new file mode 100644 index 00000000000..87466cadcfa --- /dev/null +++ b/htdocs/langs/bn_IN/bookmarks.lang @@ -0,0 +1,21 @@ +# Dolibarr language file - Source file is en_US - marque pages +AddThisPageToBookmarks=Add current page to bookmarks +Bookmark=Bookmark +Bookmarks=Bookmarks +ListOfBookmarks=List of bookmarks +EditBookmarks=List/edit bookmarks +NewBookmark=New bookmark +ShowBookmark=Show bookmark +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=Create bookmark +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=Bookmarks management +BookmarksMenuShortCut=Ctrl + shift + m diff --git a/htdocs/langs/bn_IN/boxes.lang b/htdocs/langs/bn_IN/boxes.lang new file mode 100644 index 00000000000..bd62684421a --- /dev/null +++ b/htdocs/langs/bn_IN/boxes.lang @@ -0,0 +1,102 @@ +# Dolibarr language file - Source file is en_US - boxes +BoxLoginInformation=Login Information +BoxLastRssInfos=RSS Information +BoxLastProducts=Latest %s Products/Services +BoxProductsAlertStock=Stock alerts for products +BoxLastProductsInContract=Latest %s contracted products/services +BoxLastSupplierBills=Latest Vendor invoices +BoxLastCustomerBills=Latest Customer invoices +BoxOldestUnpaidCustomerBills=Oldest unpaid customer invoices +BoxOldestUnpaidSupplierBills=Oldest unpaid vendor invoices +BoxLastProposals=Latest commercial proposals +BoxLastProspects=Latest modified prospects +BoxLastCustomers=Latest modified customers +BoxLastSuppliers=Latest modified suppliers +BoxLastCustomerOrders=Latest sales orders +BoxLastActions=Latest actions +BoxLastContracts=Latest contracts +BoxLastContacts=Latest contacts/addresses +BoxLastMembers=Latest members +BoxFicheInter=Latest interventions +BoxCurrentAccounts=Open accounts balance +BoxTitleMemberNextBirthdays=Birthdays of this month (members) +BoxTitleLastRssInfos=Latest %s news from %s +BoxTitleLastProducts=Products/Services: last %s modified +BoxTitleProductsAlertStock=Products: stock alert +BoxTitleLastSuppliers=Latest %s recorded suppliers +BoxTitleLastModifiedSuppliers=Vendors: last %s modified +BoxTitleLastModifiedCustomers=Customers: last %s modified +BoxTitleLastCustomersOrProspects=Latest %s customers or prospects +BoxTitleLastCustomerBills=Latest %s modified Customer invoices +BoxTitleLastSupplierBills=Latest %s modified Vendor invoices +BoxTitleLastModifiedProspects=Prospects: last %s modified +BoxTitleLastModifiedMembers=Latest %s members +BoxTitleLastFicheInter=Latest %s modified interventions +BoxTitleOldestUnpaidCustomerBills=Customer Invoices: oldest %s unpaid +BoxTitleOldestUnpaidSupplierBills=Vendor Invoices: oldest %s unpaid +BoxTitleCurrentAccounts=Open Accounts: balances +BoxTitleSupplierOrdersAwaitingReception=Supplier orders awaiting reception +BoxTitleLastModifiedContacts=Contacts/Addresses: last %s modified +BoxMyLastBookmarks=Bookmarks: latest %s +BoxOldestExpiredServices=Oldest active expired services +BoxLastExpiredServices=Latest %s oldest contacts with active expired services +BoxTitleLastActionsToDo=Latest %s actions to do +BoxTitleLastContracts=Latest %s modified contracts +BoxTitleLastModifiedDonations=Latest %s modified donations +BoxTitleLastModifiedExpenses=Latest %s modified expense reports +BoxTitleLatestModifiedBoms=Latest %s modified BOMs +BoxTitleLatestModifiedMos=Latest %s modified Manufacturing Orders +BoxGlobalActivity=Global activity (invoices, proposals, orders) +BoxGoodCustomers=Good customers +BoxTitleGoodCustomers=%s Good customers +FailedToRefreshDataInfoNotUpToDate=Failed to refresh RSS flux. Latest successful refresh date: %s +LastRefreshDate=Latest refresh date +NoRecordedBookmarks=No bookmarks defined. +ClickToAdd=Click here to add. +NoRecordedCustomers=No recorded customers +NoRecordedContacts=No recorded contacts +NoActionsToDo=No actions to do +NoRecordedOrders=No recorded sales orders +NoRecordedProposals=No recorded proposals +NoRecordedInvoices=No recorded customer invoices +NoUnpaidCustomerBills=No unpaid customer invoices +NoUnpaidSupplierBills=No unpaid vendor invoices +NoModifiedSupplierBills=No recorded vendor invoices +NoRecordedProducts=No recorded products/services +NoRecordedProspects=No recorded prospects +NoContractedProducts=No products/services contracted +NoRecordedContracts=No recorded contracts +NoRecordedInterventions=No recorded interventions +BoxLatestSupplierOrders=Latest purchase orders +BoxLatestSupplierOrdersAwaitingReception=Latest Purchase Orders (with a pending reception) +NoSupplierOrder=No recorded purchase order +BoxCustomersInvoicesPerMonth=Customer Invoices per month +BoxSuppliersInvoicesPerMonth=Vendor Invoices per month +BoxCustomersOrdersPerMonth=Sales Orders per month +BoxSuppliersOrdersPerMonth=Vendor Orders per month +BoxProposalsPerMonth=Proposals per month +NoTooLowStockProducts=No products are under the low stock limit +BoxProductDistribution=Products/Services Distribution +ForObject=On %s +BoxTitleLastModifiedSupplierBills=Vendor Invoices: last %s modified +BoxTitleLatestModifiedSupplierOrders=Vendor Orders: last %s modified +BoxTitleLastModifiedCustomerBills=Customer Invoices: last %s modified +BoxTitleLastModifiedCustomerOrders=Sales Orders: last %s modified +BoxTitleLastModifiedPropals=Latest %s modified proposals +ForCustomersInvoices=Customers invoices +ForCustomersOrders=Customers orders +ForProposals=Proposals +LastXMonthRolling=The latest %s month rolling +ChooseBoxToAdd=Add widget to your dashboard +BoxAdded=Widget was added in your dashboard +BoxTitleUserBirthdaysOfMonth=Birthdays of this month (users) +BoxLastManualEntries=Last manual entries in accountancy +BoxTitleLastManualEntries=%s latest manual entries +NoRecordedManualEntries=No manual entries record in accountancy +BoxSuspenseAccount=Count accountancy operation with suspense account +BoxTitleSuspenseAccount=Number of unallocated lines +NumberOfLinesInSuspenseAccount=Number of line in suspense account +SuspenseAccountNotDefined=Suspense account isn't defined +BoxLastCustomerShipments=Last customer shipments +BoxTitleLastCustomerShipments=Latest %s customer shipments +NoRecordedShipments=No recorded customer shipment diff --git a/htdocs/langs/bn_IN/cashdesk.lang b/htdocs/langs/bn_IN/cashdesk.lang new file mode 100644 index 00000000000..0903a3d10bc --- /dev/null +++ b/htdocs/langs/bn_IN/cashdesk.lang @@ -0,0 +1,110 @@ +# Language file - Source file is en_US - cashdesk +CashDeskMenu=Point of sale +CashDesk=Point of sale +CashDeskBankCash=Bank account (cash) +CashDeskBankCB=Bank account (card) +CashDeskBankCheque=Bank account (cheque) +CashDeskWarehouse=Warehouse +CashdeskShowServices=Selling services +CashDeskProducts=Products +CashDeskStock=Stock +CashDeskOn=on +CashDeskThirdParty=Third party +ShoppingCart=Shopping cart +NewSell=New sell +AddThisArticle=Add this article +RestartSelling=Go back on sell +SellFinished=Sale complete +PrintTicket=Print ticket +SendTicket=Send ticket +NoProductFound=No article found +ProductFound=product found +NoArticle=No article +Identification=Identification +Article=Article +Difference=Difference +TotalTicket=Total ticket +NoVAT=No VAT for this sale +Change=Excess received +BankToPay=Account for payment +ShowCompany=Show company +ShowStock=Show warehouse +DeleteArticle=Click to remove this article +FilterRefOrLabelOrBC=Search (Ref/Label) +UserNeedPermissionToEditStockToUsePos=You ask to decrease stock on invoice creation, so user that uses POS needs to have permission to edit stock. +DolibarrReceiptPrinter=Dolibarr Receipt Printer +PointOfSale=Point of Sale +PointOfSaleShort=POS +CloseBill=Close Bill +Floors=Floors +Floor=Floor +AddTable=Add table +Place=Place +TakeposConnectorNecesary='TakePOS Connector' required +OrderPrinters=Order printers +SearchProduct=Search product +Receipt=Receipt +Header=Header +Footer=Footer +AmountAtEndOfPeriod=Amount at end of period (day, month or year) +TheoricalAmount=Theorical amount +RealAmount=Real amount +CashFence=Cash fence +CashFenceDone=Cash fence done for the period +NbOfInvoices=Nb of invoices +Paymentnumpad=Type of Pad to enter payment +Numberspad=Numbers Pad +BillsCoinsPad=Coins and banknotes Pad +DolistorePosCategory=TakePOS modules and other POS solutions for Dolibarr +TakeposNeedsCategories=TakePOS needs product categories to work +OrderNotes=Order Notes +CashDeskBankAccountFor=Default account to use for payments in +NoPaimementModesDefined=No paiment mode defined in TakePOS configuration +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts +EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant +ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? +ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? +History=History +ValidateAndClose=Validate and close +Terminal=Terminal +NumberOfTerminals=Number of Terminals +TerminalSelect=Select terminal you want to use: +POSTicket=POS Ticket +POSTerminal=POS Terminal +POSModule=POS Module +BasicPhoneLayout=Use basic layout for phones +SetupOfTerminalNotComplete=Setup of terminal %s is not complete +DirectPayment=Direct payment +DirectPaymentButton=Direct cash payment button +InvoiceIsAlreadyValidated=Invoice is already validated +NoLinesToBill=No lines to bill +CustomReceipt=Custom Receipt +ReceiptName=Receipt Name +ProductSupplements=Product Supplements +SupplementCategory=Supplement category +ColorTheme=Color theme +Colorful=Colorful +HeadBar=Head Bar +SortProductField=Field for sorting products +Browser=Browser +BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. +PrintMethod=Print method +ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. +ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for POS sales +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use +BarRestaurant=Bar Restaurant +AutoOrder=Customer auto order diff --git a/htdocs/langs/bn_IN/categories.lang b/htdocs/langs/bn_IN/categories.lang new file mode 100644 index 00000000000..30bace0574c --- /dev/null +++ b/htdocs/langs/bn_IN/categories.lang @@ -0,0 +1,89 @@ +# Dolibarr language file - Source file is en_US - categories +Rubrique=Tag/Category +Rubriques=Tags/Categories +RubriquesTransactions=Tags/Categories of transactions +categories=tags/categories +NoCategoryYet=No tag/category of this type created +In=In +AddIn=Add in +modify=modify +Classify=Classify +CategoriesArea=Tags/Categories area +ProductsCategoriesArea=Products/Services tags/categories area +SuppliersCategoriesArea=Vendors tags/categories area +CustomersCategoriesArea=Customers tags/categories area +MembersCategoriesArea=Members tags/categories area +ContactsCategoriesArea=Contacts tags/categories area +AccountsCategoriesArea=Accounts tags/categories area +ProjectsCategoriesArea=Projects tags/categories area +UsersCategoriesArea=Users tags/categories area +SubCats=Sub-categories +CatList=List of tags/categories +NewCategory=New tag/category +ModifCat=Modify tag/category +CatCreated=Tag/category created +CreateCat=Create tag/category +CreateThisCat=Create this tag/category +NoSubCat=No subcategory. +SubCatOf=Subcategory +FoundCats=Found tags/categories +ImpossibleAddCat=Impossible to add the tag/category %s +WasAddedSuccessfully=%s was added successfully. +ObjectAlreadyLinkedToCategory=Element is already linked to this tag/category. +ProductIsInCategories=Product/service is linked to following tags/categories +CompanyIsInCustomersCategories=This third party is linked to following customers/prospects tags/categories +CompanyIsInSuppliersCategories=This third party is linked to following vendors tags/categories +MemberIsInCategories=This member is linked to following members tags/categories +ContactIsInCategories=This contact is linked to following contacts tags/categories +ProductHasNoCategory=This product/service is not in any tags/categories +CompanyHasNoCategory=This third party is not in any tags/categories +MemberHasNoCategory=This member is not in any tags/categories +ContactHasNoCategory=This contact is not in any tags/categories +ProjectHasNoCategory=This project is not in any tags/categories +ClassifyInCategory=Add to tag/category +NotCategorized=Without tag/category +CategoryExistsAtSameLevel=This category already exists with this ref +ContentsVisibleByAllShort=Contents visible by all +ContentsNotVisibleByAllShort=Contents not visible by all +DeleteCategory=Delete tag/category +ConfirmDeleteCategory=Are you sure you want to delete this tag/category? +NoCategoriesDefined=No tag/category defined +SuppliersCategoryShort=Vendors tag/category +CustomersCategoryShort=Customers tag/category +ProductsCategoryShort=Products tag/category +MembersCategoryShort=Members tag/category +SuppliersCategoriesShort=Vendors tags/categories +CustomersCategoriesShort=Customers tags/categories +ProspectsCategoriesShort=Prospects tags/categories +CustomersProspectsCategoriesShort=Cust./Prosp. tags/categories +ProductsCategoriesShort=Products tags/categories +MembersCategoriesShort=Members tags/categories +ContactCategoriesShort=Contacts tags/categories +AccountsCategoriesShort=Accounts tags/categories +ProjectsCategoriesShort=Projects tags/categories +UsersCategoriesShort=Users tags/categories +StockCategoriesShort=Warehouse tags/categories +ThisCategoryHasNoItems=This category does not contain any items. +CategId=Tag/category id +CatSupList=List of vendor tags/categories +CatCusList=List of customer/prospect tags/categories +CatProdList=List of products tags/categories +CatMemberList=List of members tags/categories +CatContactList=List of contact tags/categories +CatSupLinks=Links between suppliers and tags/categories +CatCusLinks=Links between customers/prospects and tags/categories +CatContactsLinks=Links between contacts/addresses and tags/categories +CatProdLinks=Links between products/services and tags/categories +CatProJectLinks=Links between projects and tags/categories +DeleteFromCat=Remove from tags/category +ExtraFieldsCategories=Complementary attributes +CategoriesSetup=Tags/categories setup +CategorieRecursiv=Link with parent tag/category automatically +CategorieRecursivHelp=If option is on, when you add a product into a subcategory, product will also be added into the parent category. +AddProductServiceIntoCategory=Add the following product/service +ShowCategory=Show tag/category +ByDefaultInList=By default in list +ChooseCategory=Choose category +StocksCategoriesArea=Warehouses Categories Area +ActionCommCategoriesArea=Events Categories Area +UseOrOperatorForCategories=Use or operator for categories diff --git a/htdocs/langs/bn_IN/commercial.lang b/htdocs/langs/bn_IN/commercial.lang new file mode 100644 index 00000000000..10c536e0d48 --- /dev/null +++ b/htdocs/langs/bn_IN/commercial.lang @@ -0,0 +1,80 @@ +# Dolibarr language file - Source file is en_US - commercial +Commercial=Commerce +CommercialArea=Commerce area +Customer=Customer +Customers=Customers +Prospect=Prospect +Prospects=Prospects +DeleteAction=Delete an event +NewAction=New event +AddAction=Create event +AddAnAction=Create an event +AddActionRendezVous=Create a Rendez-vous event +ConfirmDeleteAction=Are you sure you want to delete this event? +CardAction=Event card +ActionOnCompany=Related company +ActionOnContact=Related contact +TaskRDVWith=Meeting with %s +ShowTask=Show task +ShowAction=Show event +ActionsReport=Events report +ThirdPartiesOfSaleRepresentative=Third parties with sales representative +SaleRepresentativesOfThirdParty=Sales representatives of third party +SalesRepresentative=Sales representative +SalesRepresentatives=Sales representatives +SalesRepresentativeFollowUp=Sales representative (follow-up) +SalesRepresentativeSignature=Sales representative (signature) +NoSalesRepresentativeAffected=No particular sales representative assigned +ShowCustomer=Show customer +ShowProspect=Show prospect +ListOfProspects=List of prospects +ListOfCustomers=List of customers +LastDoneTasks=Latest %s completed actions +LastActionsToDo=Oldest %s not completed actions +DoneAndToDoActions=Completed and To do events +DoneActions=Completed events +ToDoActions=Incomplete events +SendPropalRef=Submission of commercial proposal %s +SendOrderRef=Submission of order %s +StatusNotApplicable=Not applicable +StatusActionToDo=To do +StatusActionDone=Complete +StatusActionInProcess=In process +TasksHistoryForThisContact=Events for this contact +LastProspectDoNotContact=Do not contact +LastProspectNeverContacted=Never contacted +LastProspectToContact=To contact +LastProspectContactInProcess=Contact in process +LastProspectContactDone=Contact done +ActionAffectedTo=Event assigned to +ActionDoneBy=Event done by +ActionAC_TEL=Phone call +ActionAC_FAX=Send fax +ActionAC_PROP=Send proposal by mail +ActionAC_EMAIL=Send Email +ActionAC_EMAIL_IN=Reception of Email +ActionAC_RDV=Meetings +ActionAC_INT=Intervention on site +ActionAC_FAC=Send customer invoice by mail +ActionAC_REL=Send customer invoice by mail (reminder) +ActionAC_CLO=Close +ActionAC_EMAILING=Send mass email +ActionAC_COM=Send sales order by mail +ActionAC_SHIP=Send shipping by mail +ActionAC_SUP_ORD=Send purchase order by mail +ActionAC_SUP_INV=Send vendor invoice by mail +ActionAC_OTH=Other +ActionAC_OTH_AUTO=Automatically inserted events +ActionAC_MANUAL=Manually inserted events +ActionAC_AUTO=Automatically inserted events +ActionAC_OTH_AUTOShort=Auto +Stats=Sales statistics +StatusProsp=Prospect status +DraftPropals=Draft commercial proposals +NoLimit=No limit +ToOfferALinkForOnlineSignature=Link for online signature +WelcomeOnOnlineSignaturePage=Welcome to the page to accept commercial proposals from %s +ThisScreenAllowsYouToSignDocFrom=This screen allow you to accept and sign, or refuse, a quote/commercial proposal +ThisIsInformationOnDocumentToSign=This is information on document to accept or refuse +SignatureProposalRef=Signature of quote/commercial proposal %s +FeatureOnlineSignDisabled=Feature for online signing disabled or document generated before the feature was enabled diff --git a/htdocs/langs/bn_IN/companies.lang b/htdocs/langs/bn_IN/companies.lang new file mode 100644 index 00000000000..0fad58c9389 --- /dev/null +++ b/htdocs/langs/bn_IN/companies.lang @@ -0,0 +1,458 @@ +# Dolibarr language file - Source file is en_US - companies +ErrorCompanyNameAlreadyExists=Company name %s already exists. Choose another one. +ErrorSetACountryFirst=Set the country first +SelectThirdParty=Select a third party +ConfirmDeleteCompany=Are you sure you want to delete this company and all inherited information? +DeleteContact=Delete a contact/address +ConfirmDeleteContact=Are you sure you want to delete this contact and all inherited information? +MenuNewThirdParty=New Third Party +MenuNewCustomer=New Customer +MenuNewProspect=New Prospect +MenuNewSupplier=New Vendor +MenuNewPrivateIndividual=New private individual +NewCompany=New company (prospect, customer, vendor) +NewThirdParty=New Third Party (prospect, customer, vendor) +CreateDolibarrThirdPartySupplier=Create a third party (vendor) +CreateThirdPartyOnly=Create third party +CreateThirdPartyAndContact=Create a third party + a child contact +ProspectionArea=Prospection area +IdThirdParty=Id third party +IdCompany=Company Id +IdContact=Contact Id +Contacts=Contacts/Addresses +ThirdPartyContacts=Third-party contacts +ThirdPartyContact=Third-party contact/address +Company=Company +CompanyName=Company name +AliasNames=Alias name (commercial, trademark, ...) +AliasNameShort=Alias Name +Companies=Companies +CountryIsInEEC=Country is inside the European Economic Community +PriceFormatInCurrentLanguage=Price display format in the current language and currency +ThirdPartyName=Third-party name +ThirdPartyEmail=Third-party email +ThirdParty=Third-party +ThirdParties=Third-parties +ThirdPartyProspects=Prospects +ThirdPartyProspectsStats=Prospects +ThirdPartyCustomers=Customers +ThirdPartyCustomersStats=Customers +ThirdPartyCustomersWithIdProf12=Customers with %s or %s +ThirdPartySuppliers=Vendors +ThirdPartyType=Third-party type +Individual=Private individual +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=Parent company +Subsidiaries=Subsidiaries +ReportByMonth=Report by month +ReportByCustomers=Report by customer +ReportByQuarter=Report by rate +CivilityCode=Civility code +RegisteredOffice=Registered office +Lastname=Last name +Firstname=First name +PostOrFunction=Job position +UserTitle=Title +NatureOfThirdParty=Nature of Third party +NatureOfContact=Nature of Contact +Address=Address +State=State/Province +StateCode=State/Province code +StateShort=State +Region=Region +Region-State=Region - State +Country=Country +CountryCode=Country code +CountryId=Country id +Phone=Phone +PhoneShort=Phone +Skype=Skype +Call=Call +Chat=Chat +PhonePro=Prof. phone +PhonePerso=Pers. phone +PhoneMobile=Mobile +No_Email=Refuse bulk emailings +Fax=Fax +Zip=Zip Code +Town=City +Web=Web +Poste= Position +DefaultLang=Language default +VATIsUsed=Sales tax used +VATIsUsedWhenSelling=This defines if this third party includes a sale tax or not when it makes an invoice to its own customers +VATIsNotUsed=Sales tax is not used +CopyAddressFromSoc=Copy address from third-party details +ThirdpartyNotCustomerNotSupplierSoNoRef=Third party neither customer nor vendor, no available referring objects +ThirdpartyIsNeitherCustomerNorClientSoCannotHaveDiscounts=Third party neither customer nor vendor, discounts are not available +PaymentBankAccount=Payment bank account +OverAllProposals=Proposals +OverAllOrders=Orders +OverAllInvoices=Invoices +OverAllSupplierProposals=Price requests +##### Local Taxes ##### +LocalTax1IsUsed=Use second tax +LocalTax1IsUsedES= RE is used +LocalTax1IsNotUsedES= RE is not used +LocalTax2IsUsed=Use third tax +LocalTax2IsUsedES= IRPF is used +LocalTax2IsNotUsedES= IRPF is not used +WrongCustomerCode=Customer code invalid +WrongSupplierCode=Vendor code invalid +CustomerCodeModel=Customer code model +SupplierCodeModel=Vendor code model +Gencod=Barcode +##### Professional ID ##### +ProfId1Short=Prof. id 1 +ProfId2Short=Prof. id 2 +ProfId3Short=Prof. id 3 +ProfId4Short=Prof. id 4 +ProfId5Short=Prof. id 5 +ProfId6Short=Prof. id 6 +ProfId1=Professional ID 1 +ProfId2=Professional ID 2 +ProfId3=Professional ID 3 +ProfId4=Professional ID 4 +ProfId5=Professional ID 5 +ProfId6=Professional ID 6 +ProfId1AR=Prof Id 1 (CUIT/CUIL) +ProfId2AR=Prof Id 2 (Revenu brutes) +ProfId3AR=- +ProfId4AR=- +ProfId5AR=- +ProfId6AR=- +ProfId1AT=Prof Id 1 (USt.-IdNr) +ProfId2AT=Prof Id 2 (USt.-Nr) +ProfId3AT=Prof Id 3 (Handelsregister-Nr.) +ProfId4AT=- +ProfId5AT=- +ProfId6AT=- +ProfId1AU=Prof Id 1 (ABN) +ProfId2AU=- +ProfId3AU=- +ProfId4AU=- +ProfId5AU=- +ProfId6AU=- +ProfId1BE=Prof Id 1 (Professional number) +ProfId2BE=- +ProfId3BE=- +ProfId4BE=- +ProfId5BE=- +ProfId6BE=- +ProfId1BR=- +ProfId2BR=IE (Inscricao Estadual) +ProfId3BR=IM (Inscricao Municipal) +ProfId4BR=CPF +#ProfId5BR=CNAE +#ProfId6BR=INSS +ProfId1CH=- +ProfId2CH=- +ProfId3CH=Prof Id 1 (Federal number) +ProfId4CH=Prof Id 2 (Commercial Record number) +ProfId5CH=- +ProfId6CH=- +ProfId1CL=Prof Id 1 (R.U.T.) +ProfId2CL=- +ProfId3CL=- +ProfId4CL=- +ProfId5CL=- +ProfId6CL=- +ProfId1CO=Prof Id 1 (R.U.T.) +ProfId2CO=- +ProfId3CO=- +ProfId4CO=- +ProfId5CO=- +ProfId6CO=- +ProfId1DE=Prof Id 1 (USt.-IdNr) +ProfId2DE=Prof Id 2 (USt.-Nr) +ProfId3DE=Prof Id 3 (Handelsregister-Nr.) +ProfId4DE=- +ProfId5DE=- +ProfId6DE=- +ProfId1ES=Prof Id 1 (CIF/NIF) +ProfId2ES=Prof Id 2 (Social security number) +ProfId3ES=Prof Id 3 (CNAE) +ProfId4ES=Prof Id 4 (Collegiate number) +ProfId5ES=- +ProfId6ES=- +ProfId1FR=Prof Id 1 (SIREN) +ProfId2FR=Prof Id 2 (SIRET) +ProfId3FR=Prof Id 3 (NAF, old APE) +ProfId4FR=Prof Id 4 (RCS/RM) +ProfId5FR=- +ProfId6FR=- +ProfId1GB=Registration Number +ProfId2GB=- +ProfId3GB=SIC +ProfId4GB=- +ProfId5GB=- +ProfId6GB=- +ProfId1HN=Id prof. 1 (RTN) +ProfId2HN=- +ProfId3HN=- +ProfId4HN=- +ProfId5HN=- +ProfId6HN=- +ProfId1IN=Prof Id 1 (TIN) +ProfId2IN=Prof Id 2 (PAN) +ProfId3IN=Prof Id 3 (SRVC TAX) +ProfId4IN=Prof Id 4 +ProfId5IN=Prof Id 5 +ProfId6IN=- +ProfId1LU=Id. prof. 1 (R.C.S. Luxembourg) +ProfId2LU=Id. prof. 2 (Business permit) +ProfId3LU=- +ProfId4LU=- +ProfId5LU=- +ProfId6LU=- +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=Id. prof. 5 (I.C.E.) +ProfId6MA=- +ProfId1MX=Prof Id 1 (R.F.C). +ProfId2MX=Prof Id 2 (R..P. IMSS) +ProfId3MX=Prof Id 3 (Profesional Charter) +ProfId4MX=- +ProfId5MX=- +ProfId6MX=- +ProfId1NL=KVK nummer +ProfId2NL=- +ProfId3NL=- +ProfId4NL=Burgerservicenummer (BSN) +ProfId5NL=- +ProfId6NL=- +ProfId1PT=Prof Id 1 (NIPC) +ProfId2PT=Prof Id 2 (Social security number) +ProfId3PT=Prof Id 3 (Commercial Record number) +ProfId4PT=Prof Id 4 (Conservatory) +ProfId5PT=- +ProfId6PT=- +ProfId1SN=RC +ProfId2SN=NINEA +ProfId3SN=- +ProfId4SN=- +ProfId5SN=- +ProfId6SN=- +ProfId1TN=Prof Id 1 (RC) +ProfId2TN=Prof Id 2 (Fiscal matricule) +ProfId3TN=Prof Id 3 (Douane code) +ProfId4TN=Prof Id 4 (BAN) +ProfId5TN=- +ProfId6TN=- +ProfId1US=Prof Id (FEIN) +ProfId2US=- +ProfId3US=- +ProfId4US=- +ProfId5US=- +ProfId6US=- +ProfId1RO=Prof Id 1 (CUI) +ProfId2RO=Prof Id 2 (Nr. Înmatriculare) +ProfId3RO=Prof Id 3 (CAEN) +ProfId4RO=- +ProfId5RO=Prof Id 5 (EUID) +ProfId6RO=- +ProfId1RU=Prof Id 1 (OGRN) +ProfId2RU=Prof Id 2 (INN) +ProfId3RU=Prof Id 3 (KPP) +ProfId4RU=Prof Id 4 (OKPO) +ProfId5RU=- +ProfId6RU=- +ProfId1DZ=RC +ProfId2DZ=Art. +ProfId3DZ=NIF +ProfId4DZ=NIS +VATIntra=VAT ID +VATIntraShort=VAT ID +VATIntraSyntaxIsValid=Syntax is valid +VATReturn=VAT return +ProspectCustomer=Prospect / Customer +Prospect=Prospect +CustomerCard=Customer Card +Customer=Customer +CustomerRelativeDiscount=Relative customer discount +SupplierRelativeDiscount=Relative vendor discount +CustomerRelativeDiscountShort=Relative discount +CustomerAbsoluteDiscountShort=Absolute discount +CompanyHasRelativeDiscount=This customer has a default discount of %s%% +CompanyHasNoRelativeDiscount=This customer has no relative discount by default +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 +CompanyHasDownPaymentOrCommercialDiscount=This customer has discounts available (commercial, down payments) for %s %s +CompanyHasCreditNote=This customer still has credit notes for %s %s +HasNoAbsoluteDiscountFromSupplier=You have no discount credit available from this vendor +HasAbsoluteDiscountFromSupplier=You have discounts available (credits notes or down payments) for %s %s from this vendor +HasDownPaymentOrCommercialDiscountFromSupplier=You have discounts available (commercial, down payments) for %s %s from this vendor +HasCreditNoteFromSupplier=You have credit notes for %s %s from this vendor +CompanyHasNoAbsoluteDiscount=This customer has no discount credit available +CustomerAbsoluteDiscountAllUsers=Absolute customer discounts (granted by all users) +CustomerAbsoluteDiscountMy=Absolute customer discounts (granted by yourself) +SupplierAbsoluteDiscountAllUsers=Absolute vendor discounts (entered by all users) +SupplierAbsoluteDiscountMy=Absolute vendor discounts (entered by yourself) +DiscountNone=None +Vendor=Vendor +Supplier=Vendor +AddContact=Create contact +AddContactAddress=Create contact/address +EditContact=Edit contact +EditContactAddress=Edit contact/address +Contact=Contact +ContactId=Contact id +ContactsAddresses=Contacts/Addresses +FromContactName=Name: +NoContactDefinedForThirdParty=No contact defined for this third party +NoContactDefined=No contact defined +DefaultContact=Default contact/address +ContactByDefaultFor=Default contact/address for +AddThirdParty=Create third party +DeleteACompany=Delete a company +PersonalInformations=Personal data +AccountancyCode=Accounting account +CustomerCode=Customer Code +SupplierCode=Vendor Code +CustomerCodeShort=Customer Code +SupplierCodeShort=Vendor Code +CustomerCodeDesc=Customer Code, unique for all customers +SupplierCodeDesc=Vendor Code, unique for all vendors +RequiredIfCustomer=Required if third party is a customer or prospect +RequiredIfSupplier=Required if third party is a vendor +ValidityControledByModule=Validity controlled by module +ThisIsModuleRules=Rules for this module +ProspectToContact=Prospect to contact +CompanyDeleted=Company "%s" deleted from database. +ListOfContacts=List of contacts/addresses +ListOfContactsAddresses=List of contacts/addresses +ListOfThirdParties=List of Third Parties +ShowCompany=Third Party +ShowContact=Contact-Address +ContactsAllShort=All (No filter) +ContactType=Contact type +ContactForOrders=Order's contact +ContactForOrdersOrShipments=Order's or shipment's contact +ContactForProposals=Proposal's contact +ContactForContracts=Contract's contact +ContactForInvoices=Invoice's contact +NoContactForAnyOrder=This contact is not a contact for any order +NoContactForAnyOrderOrShipments=This contact is not a contact for any order or shipment +NoContactForAnyProposal=This contact is not a contact for any commercial proposal +NoContactForAnyContract=This contact is not a contact for any contract +NoContactForAnyInvoice=This contact is not a contact for any invoice +NewContact=New contact +NewContactAddress=New Contact/Address +MyContacts=My contacts +Capital=Capital +CapitalOf=Capital of %s +EditCompany=Edit company +ThisUserIsNot=This user is not a prospect, customer or vendor +VATIntraCheck=Check +VATIntraCheckDesc=The VAT ID must include the country prefix. The link %s uses the European VAT checker service (VIES) which requires internet access from the Dolibarr server. +VATIntraCheckURL=http://ec.europa.eu/taxation_customs/vies/vieshome.do +VATIntraCheckableOnEUSite=Check the intra-Community VAT ID on the European Commission website +VATIntraManualCheck=You can also check manually on the European Commission website %s +ErrorVATCheckMS_UNAVAILABLE=Check not possible. Check service is not provided by the member state (%s). +NorProspectNorCustomer=Not prospect, nor customer +JuridicalStatus=Legal Entity Type +Staff=Employees +ProspectLevelShort=Potential +ProspectLevel=Prospect potential +ContactPrivate=Private +ContactPublic=Shared +ContactVisibility=Visibility +ContactOthers=Other +OthersNotLinkedToThirdParty=Others, not linked to a third party +ProspectStatus=Prospect status +PL_NONE=None +PL_UNKNOWN=Unknown +PL_LOW=Low +PL_MEDIUM=Medium +PL_HIGH=High +TE_UNKNOWN=- +TE_STARTUP=Startup +TE_GROUP=Large company +TE_MEDIUM=Medium company +TE_ADMIN=Governmental +TE_SMALL=Small company +TE_RETAIL=Retailer +TE_WHOLE=Wholesaler +TE_PRIVATE=Private individual +TE_OTHER=Other +StatusProspect-1=Do not contact +StatusProspect0=Never contacted +StatusProspect1=To be contacted +StatusProspect2=Contact in process +StatusProspect3=Contact done +ChangeDoNotContact=Change status to 'Do not contact' +ChangeNeverContacted=Change status to 'Never contacted' +ChangeToContact=Change status to 'To be contacted' +ChangeContactInProcess=Change status to 'Contact in process' +ChangeContactDone=Change status to 'Contact done' +ProspectsByStatus=Prospects by status +NoParentCompany=None +ExportCardToFormat=Export card to format +ContactNotLinkedToCompany=Contact not linked to any third party +DolibarrLogin=Dolibarr login +NoDolibarrAccess=No Dolibarr access +ExportDataset_company_1=Third-parties (companies/foundations/physical people) and their properties +ExportDataset_company_2=Contacts and their properties +ImportDataset_company_1=Third-parties and their properties +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) +PriceLevel=Price Level +PriceLevelLabels=Price Level Labels +DeliveryAddress=Delivery address +AddAddress=Add address +SupplierCategory=Vendor category +JuridicalStatus200=Independent +DeleteFile=Delete file +ConfirmDeleteFile=Are you sure you want to delete this file? +AllocateCommercial=Assigned to sales representative +Organization=Organization +FiscalYearInformation=Fiscal Year +FiscalMonthStart=Starting month of the fiscal year +SocialNetworksInformation=Social networks +SocialNetworksFacebookURL=Facebook URL +SocialNetworksTwitterURL=Twitter URL +SocialNetworksLinkedinURL=Linkedin URL +SocialNetworksInstagramURL=Instagram URL +SocialNetworksYoutubeURL=Youtube URL +SocialNetworksGithubURL=Github URL +YouMustAssignUserMailFirst=You must create an email for this user prior to being able to add an email notification. +YouMustCreateContactFirst=To be able to add email notifications, you must first define contacts with valid emails for the third party +ListSuppliersShort=List of Vendors +ListProspectsShort=List of Prospects +ListCustomersShort=List of Customers +ThirdPartiesArea=Third Parties/Contacts +LastModifiedThirdParties=Last %s modified Third Parties +UniqueThirdParties=Total of Third Parties +InActivity=Open +ActivityCeased=Closed +ThirdPartyIsClosed=Third party is closed +ProductsIntoElements=List of products/services into %s +CurrentOutstandingBill=Current outstanding bill +OutstandingBill=Max. for outstanding bill +OutstandingBillReached=Max. for outstanding bill reached +OrderMinAmount=Minimum amount for order +MonkeyNumRefModelDesc=Return a number with the format %syymm-nnnn for the customer code and %syymm-nnnn for the vendor code where yy is year, mm is month and nnnn is a sequence with no break and no return to 0. +LeopardNumRefModelDesc=The code is free. This code can be modified at any time. +ManagingDirectors=Manager(s) name (CEO, director, president...) +MergeOriginThirdparty=Duplicate third party (third party you want to delete) +MergeThirdparties=Merge third parties +ConfirmMergeThirdparties=Are you sure you want to merge this third party into the current one? All linked objects (invoices, orders, ...) will be moved to current third party, then the third party will be deleted. +ThirdpartiesMergeSuccess=Third parties have been merged +SaleRepresentativeLogin=Login of sales representative +SaleRepresentativeFirstname=First name of sales representative +SaleRepresentativeLastname=Last name of sales representative +ErrorThirdpartiesMerge=There was an error when deleting the third parties. Please check the log. Changes have been reverted. +NewCustomerSupplierCodeProposed=Customer or Vendor code already used, a new code is suggested +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address +#Imports +PaymentTypeCustomer=Payment Type - Customer +PaymentTermsCustomer=Payment Terms - Customer +PaymentTypeSupplier=Payment Type - Vendor +PaymentTermsSupplier=Payment Term - Vendor +PaymentTypeBoth=Payment Type - Customer and Vendor +MulticurrencyUsed=Use Multicurrency +MulticurrencyCurrency=Currency diff --git a/htdocs/langs/bn_IN/compta.lang b/htdocs/langs/bn_IN/compta.lang new file mode 100644 index 00000000000..8a8c837ac87 --- /dev/null +++ b/htdocs/langs/bn_IN/compta.lang @@ -0,0 +1,266 @@ +# Dolibarr language file - Source file is en_US - compta +MenuFinancial=Billing | Payment +TaxModuleSetupToModifyRules=Go to Taxes module setup to modify rules for calculation +TaxModuleSetupToModifyRulesLT=Go to Company setup to modify rules for calculation +OptionMode=Option for accountancy +OptionModeTrue=Option Incomes-Expenses +OptionModeVirtual=Option Claims-Debts +OptionModeTrueDesc=In this context, the turnover is calculated over payments (date of payments). The validity of the figures is assured only if the book-keeping is scrutinized through the input/output on the accounts via invoices. +OptionModeVirtualDesc=In this context, the turnover is calculated over invoices (date of validation). When these invoices are due, whether they have been paid or not, they are listed in the turnover output. +FeatureIsSupportedInInOutModeOnly=Feature only available in CREDITS-DEBTS accountancy mode (See Accountancy module configuration) +VATReportBuildWithOptionDefinedInModule=Amounts shown here are calculated using rules defined by Tax module setup. +LTReportBuildWithOptionDefinedInModule=Amounts shown here are calculated using rules defined by Company setup. +Param=Setup +RemainingAmountPayment=Amount payment remaining: +Account=Account +Accountparent=Parent account +Accountsparent=Parent accounts +Income=Income +Outcome=Expense +MenuReportInOut=Income / Expense +ReportInOut=Balance of income and expenses +ReportTurnover=Turnover invoiced +ReportTurnoverCollected=Turnover collected +PaymentsNotLinkedToInvoice=Payments not linked to any invoice, so not linked to any third party +PaymentsNotLinkedToUser=Payments not linked to any user +Profit=Profit +AccountingResult=Accounting result +BalanceBefore=Balance (before) +Balance=Balance +Debit=Debit +Credit=Credit +Piece=Accounting Doc. +AmountHTVATRealReceived=Net collected +AmountHTVATRealPaid=Net paid +VATToPay=Tax sales +VATReceived=Tax received +VATToCollect=Tax purchases +VATSummary=Tax monthly +VATBalance=Tax Balance +VATPaid=Tax paid +LT1Summary=Tax 2 summary +LT2Summary=Tax 3 summary +LT1SummaryES=RE Balance +LT2SummaryES=IRPF Balance +LT1SummaryIN=CGST Balance +LT2SummaryIN=SGST Balance +LT1Paid=Tax 2 paid +LT2Paid=Tax 3 paid +LT1PaidES=RE Paid +LT2PaidES=IRPF Paid +LT1PaidIN=CGST Paid +LT2PaidIN=SGST Paid +LT1Customer=Tax 2 sales +LT1Supplier=Tax 2 purchases +LT1CustomerES=RE sales +LT1SupplierES=RE purchases +LT1CustomerIN=CGST sales +LT1SupplierIN=CGST purchases +LT2Customer=Tax 3 sales +LT2Supplier=Tax 3 purchases +LT2CustomerES=IRPF sales +LT2SupplierES=IRPF purchases +LT2CustomerIN=SGST sales +LT2SupplierIN=SGST purchases +VATCollected=VAT collected +StatusToPay=To pay +SpecialExpensesArea=Area for all special payments +SocialContribution=Social or fiscal tax +SocialContributions=Social or fiscal taxes +SocialContributionsDeductibles=Deductible social or fiscal taxes +SocialContributionsNondeductibles=Nondeductible social or fiscal taxes +LabelContrib=Label contribution +TypeContrib=Type contribution +MenuSpecialExpenses=Special expenses +MenuTaxAndDividends=Taxes and dividends +MenuSocialContributions=Social/fiscal taxes +MenuNewSocialContribution=New social/fiscal tax +NewSocialContribution=New social/fiscal tax +AddSocialContribution=Add social/fiscal tax +ContributionsToPay=Social/fiscal taxes to pay +AccountancyTreasuryArea=Billing and payment area +NewPayment=New payment +PaymentCustomerInvoice=Customer invoice payment +PaymentSupplierInvoice=vendor invoice payment +PaymentSocialContribution=Social/fiscal tax payment +PaymentVat=VAT payment +ListPayment=List of payments +ListOfCustomerPayments=List of customer payments +ListOfSupplierPayments=List of vendor payments +DateStartPeriod=Date start period +DateEndPeriod=Date end period +newLT1Payment=New tax 2 payment +newLT2Payment=New tax 3 payment +LT1Payment=Tax 2 payment +LT1Payments=Tax 2 payments +LT2Payment=Tax 3 payment +LT2Payments=Tax 3 payments +newLT1PaymentES=New RE payment +newLT2PaymentES=New IRPF payment +LT1PaymentES=RE Payment +LT1PaymentsES=RE Payments +LT2PaymentES=IRPF Payment +LT2PaymentsES=IRPF Payments +VATPayment=Sales tax payment +VATPayments=Sales tax payments +VATRefund=Sales tax refund +NewVATPayment=New sales tax payment +NewLocalTaxPayment=New tax %s payment +Refund=Refund +SocialContributionsPayments=Social/fiscal taxes payments +ShowVatPayment=Show VAT payment +TotalToPay=Total to pay +BalanceVisibilityDependsOnSortAndFilters=Balance is visible in this list only if table is sorted ascending on %s and filtered for 1 bank account +CustomerAccountancyCode=Customer accounting code +SupplierAccountancyCode=Vendor accounting code +CustomerAccountancyCodeShort=Cust. account. code +SupplierAccountancyCodeShort=Sup. account. code +AccountNumber=Account number +NewAccountingAccount=New account +Turnover=Turnover invoiced +TurnoverCollected=Turnover collected +SalesTurnoverMinimum=Minimum turnover +ByExpenseIncome=By expenses & incomes +ByThirdParties=By third parties +ByUserAuthorOfInvoice=By invoice author +CheckReceipt=Check deposit +CheckReceiptShort=Check deposit +LastCheckReceiptShort=Latest %s check receipts +NewCheckReceipt=New discount +NewCheckDeposit=New check deposit +NewCheckDepositOn=Create receipt for deposit on account: %s +NoWaitingChecks=No checks awaiting deposit. +DateChequeReceived=Check reception date +NbOfCheques=No. of checks +PaySocialContribution=Pay a social/fiscal tax +ConfirmPaySocialContribution=Are you sure you want to classify this social or fiscal tax as paid? +DeleteSocialContribution=Delete a social or fiscal tax payment +ConfirmDeleteSocialContribution=Are you sure you want to delete this social/fiscal tax payment? +ExportDataset_tax_1=Social and fiscal taxes and payments +CalcModeVATDebt=Mode %sVAT on commitment accounting%s. +CalcModeVATEngagement=Mode %sVAT on incomes-expenses%s. +CalcModeDebt=Analysis of known recorded invoices even if they are not yet accounted in ledger. +CalcModeEngagement=Analysis of known recorded payments, even if they are not yet accounted in Ledger. +CalcModeBookkeeping=Analysis of data journalized in Bookkeeping Ledger table. +CalcModeLT1= Mode %sRE on customer invoices - suppliers invoices%s +CalcModeLT1Debt=Mode %sRE on customer invoices%s +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=Balance of income and expenses, annual summary +AnnualSummaryInputOutputMode=Balance of income and expenses, annual summary +AnnualByCompanies=Balance of income and expenses, by predefined groups of account +AnnualByCompaniesDueDebtMode=Balance of income and expenses, detail by predefined groups, mode %sClaims-Debts%s said Commitment accounting. +AnnualByCompaniesInputOutputMode=Balance of income and expenses, detail by predefined groups, mode %sIncomes-Expenses%s said cash accounting. +SeeReportInInputOutputMode=See %sanalysis of payments%s for a calculation on actual payments made even if they are not yet accounted in Ledger. +SeeReportInDueDebtMode=See %sanalysis of invoices%s for a calculation based on known recorded invoices even if they are not yet accounted in Ledger. +SeeReportInBookkeepingMode=See %sBookeeping report%s for a calculation on Bookkeeping Ledger table +RulesAmountWithTaxIncluded=- Amounts shown are with all taxes included +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. +RulesResultInOut=- It includes the real payments made on invoices, expenses, VAT and salaries.
    - It is based on the payment dates of the invoices, expenses, VAT and salaries. The donation date for donation. +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    +RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    +RulesCATotalSaleJournal=It includes all credit lines from the Sale journal. +RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" +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 +DepositsAreIncluded=- Down payment invoices are included +LT1ReportByCustomers=Report tax 2 by third party +LT2ReportByCustomers=Report tax 3 by third party +LT1ReportByCustomersES=Report by third party RE +LT2ReportByCustomersES=Report by third party IRPF +VATReport=Sale tax report +VATReportByPeriods=Sale tax report by period +VATReportByRates=Sale tax report by rates +VATReportByThirdParties=Sale tax report by third parties +VATReportByCustomers=Sale tax report by customer +VATReportByCustomersInInputOutputMode=Report by the customer VAT collected and paid +VATReportByQuartersInInputOutputMode=Report by Sale tax rate of the tax collected and paid +LT1ReportByQuarters=Report tax 2 by rate +LT2ReportByQuarters=Report tax 3 by rate +LT1ReportByQuartersES=Report by RE rate +LT2ReportByQuartersES=Report by IRPF rate +SeeVATReportInInputOutputMode=See report %sVAT encasement%s for a standard calculation +SeeVATReportInDueDebtMode=See report %sVAT on flow%s for a calculation with an option on the flow +RulesVATInServices=- For services, the report includes the VAT regulations actually received or issued on the basis of the date of payment. +RulesVATInProducts=- For material assets, the report includes the VAT received or issued on the basis of the date of payment. +RulesVATDueServices=- For services, the report includes VAT invoices due, paid or not, based on the invoice date. +RulesVATDueProducts=- For material assets, the report includes the VAT invoices, based on the invoice date. +OptionVatInfoModuleComptabilite=Note: For material assets, it should use the date of delivery to be more fair. +ThisIsAnEstimatedValue=This is a preview, based on business events and not from the final ledger table, so final results may differ from this preview values +PercentOfInvoice=%%/invoice +NotUsedForGoods=Not used on goods +ProposalStats=Statistics on proposals +OrderStats=Statistics on orders +InvoiceStats=Statistics on bills +Dispatch=Dispatching +Dispatched=Dispatched +ToDispatch=To dispatch +ThirdPartyMustBeEditAsCustomer=Third party must be defined as a customer +SellsJournal=Sales Journal +PurchasesJournal=Purchases Journal +DescSellsJournal=Sales Journal +DescPurchasesJournal=Purchases Journal +CodeNotDef=Not defined +WarningDepositsNotIncluded=Down payment invoices are not included in this version with this accountancy module. +DatePaymentTermCantBeLowerThanObjectDate=Payment term date can't be lower than object date. +Pcg_version=Chart of accounts models +Pcg_type=Pcg type +Pcg_subtype=Pcg subtype +InvoiceLinesToDispatch=Invoice lines to dispatch +ByProductsAndServices=By product and service +RefExt=External ref +ToCreateAPredefinedInvoice=To create a template invoice, create a standard invoice, then, without validating it, click onto button "%s". +LinkedOrder=Link to order +Mode1=Method 1 +Mode2=Method 2 +CalculationRuleDesc=To calculate total VAT, there is two methods:
    Method 1 is rounding vat on each line, then summing them.
    Method 2 is summing all vat on each line, then rounding result.
    Final result may differs from few cents. Default mode is mode %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. +CalculationMode=Calculation mode +AccountancyJournal=Accounting code journal +ACCOUNTING_VAT_SOLD_ACCOUNT=Accounting account by default for VAT on sales (used if not defined on VAT dictionary setup) +ACCOUNTING_VAT_BUY_ACCOUNT=Accounting account by default for VAT on purchases (used if not defined on VAT dictionary setup) +ACCOUNTING_VAT_PAY_ACCOUNT=Accounting account by default for paying VAT +ACCOUNTING_ACCOUNT_CUSTOMER=Accounting account used for customer third parties +ACCOUNTING_ACCOUNT_CUSTOMER_Desc=The dedicated accounting account defined on third party card will be used for Subledger accounting only. This one will be used for General Ledger and as default value of Subledger accounting if dedicated customer accounting account on third party is not defined. +ACCOUNTING_ACCOUNT_SUPPLIER=Accounting account used for vendor third parties +ACCOUNTING_ACCOUNT_SUPPLIER_Desc=The dedicated accounting account defined on third party card will be used for Subledger accounting only. This one will be used for General Ledger and as default value of Subledger accounting if dedicated vendor accounting account on third party is not defined. +ConfirmCloneTax=Confirm the clone of a social/fiscal tax +CloneTaxForNextMonth=Clone it for next month +SimpleReport=Simple report +AddExtraReport=Extra reports (add foreign and national customer report) +OtherCountriesCustomersReport=Foreign customers report +BasedOnTwoFirstLettersOfVATNumberBeingDifferentFromYourCompanyCountry=Based on the two first letters of the VAT number being different from your own company's country code +SameCountryCustomersWithVAT=National customers report +BasedOnTwoFirstLettersOfVATNumberBeingTheSameAsYourCompanyCountry=Based on the two first letters of the VAT number being the same as your own company's country code +LinkedFichinter=Link to an intervention +ImportDataset_tax_contrib=Social/fiscal taxes +ImportDataset_tax_vat=Vat payments +ErrorBankAccountNotFound=Error: Bank account not found +FiscalPeriod=Accounting period +ListSocialContributionAssociatedProject=List of social contributions associated with the project +DeleteFromCat=Remove from accounting group +AccountingAffectation=Accounting assignment +LastDayTaxIsRelatedTo=Last day of period the tax is related to +VATDue=Sale tax claimed +ClaimedForThisPeriod=Claimed for the period +PaidDuringThisPeriod=Paid during this period +ByVatRate=By sale tax rate +TurnoverbyVatrate=Turnover invoiced by sale tax rate +TurnoverCollectedbyVatrate=Turnover collected by sale tax rate +PurchasebyVatrate=Purchase by sale tax rate +LabelToShow=Short label +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected +IncludeVarpaysInResults = Include various payments in reports +IncludeLoansInResults = Include loans in reports diff --git a/htdocs/langs/bn_IN/contracts.lang b/htdocs/langs/bn_IN/contracts.lang new file mode 100644 index 00000000000..47572c355ab --- /dev/null +++ b/htdocs/langs/bn_IN/contracts.lang @@ -0,0 +1,101 @@ +# Dolibarr language file - Source file is en_US - contracts +ContractsArea=Contracts area +ListOfContracts=List of contracts +AllContracts=All contracts +ContractCard=Contract card +ContractStatusNotRunning=Not running +ContractStatusDraft=Draft +ContractStatusValidated=Validated +ContractStatusClosed=Closed +ServiceStatusInitial=Not running +ServiceStatusRunning=Running +ServiceStatusNotLate=Running, not expired +ServiceStatusNotLateShort=Not expired +ServiceStatusLate=Running, expired +ServiceStatusLateShort=Expired +ServiceStatusClosed=Closed +ShowContractOfService=Show contract of service +Contracts=Contracts +ContractsSubscriptions=Contracts/Subscriptions +ContractsAndLine=Contracts and line of contracts +Contract=Contract +ContractLine=Contract line +Closing=Closing +NoContracts=No contracts +MenuServices=Services +MenuInactiveServices=Services not active +MenuRunningServices=Running services +MenuExpiredServices=Expired services +MenuClosedServices=Closed services +NewContract=New contract +NewContractSubscription=New contract/subscription +AddContract=Create contract +DeleteAContract=Delete a contract +ActivateAllOnContract=Activate all services +CloseAContract=Close a contract +ConfirmDeleteAContract=Are you sure you want to delete this contract and all its services? +ConfirmValidateContract=Are you sure you want to validate this contract under name %s? +ConfirmActivateAllOnContract=This will open all services (not yet active). Are you sure you want to open all services? +ConfirmCloseContract=This will close all services (active or not). Are you sure you want to close this contract? +ConfirmCloseService=Are you sure you want to close this service with date %s? +ValidateAContract=Validate a contract +ActivateService=Activate service +ConfirmActivateService=Are you sure you want to activate this service with date %s? +RefContract=Contract reference +DateContract=Contract date +DateServiceActivate=Service activation date +ListOfServices=List of services +ListOfInactiveServices=List of not active services +ListOfExpiredServices=List of expired active services +ListOfClosedServices=List of closed services +ListOfRunningServices=List of running services +NotActivatedServices=Inactive services (among validated contracts) +BoardNotActivatedServices=Services to activate among validated contracts +BoardNotActivatedServicesShort=Services to activate +LastContracts=Latest %s contracts +LastModifiedServices=Latest %s modified services +ContractStartDate=Start date +ContractEndDate=End date +DateStartPlanned=Planned start date +DateStartPlannedShort=Planned start date +DateEndPlanned=Planned end date +DateEndPlannedShort=Planned end date +DateStartReal=Real start date +DateStartRealShort=Real start date +DateEndReal=Real end date +DateEndRealShort=Real end date +CloseService=Close service +BoardRunningServices=Services running +BoardRunningServicesShort=Services running +BoardExpiredServices=Services expired +BoardExpiredServicesShort=Services expired +ServiceStatus=Status of service +DraftContracts=Drafts contracts +CloseRefusedBecauseOneServiceActive=Contract can't be closed as there is at least one open service on it +ActivateAllContracts=Activate all contract lines +CloseAllContracts=Close all contract lines +DeleteContractLine=Delete a contract line +ConfirmDeleteContractLine=Are you sure you want to delete this contract line? +MoveToAnotherContract=Move service into another contract. +ConfirmMoveToAnotherContract=I choosed new target contract and confirm I want to move this service into this contract. +ConfirmMoveToAnotherContractQuestion=Choose in which existing contract (of same third party), you want to move this service to? +PaymentRenewContractId=Renew contract line (number %s) +ExpiredSince=Expiration date +NoExpiredServices=No expired active services +ListOfServicesToExpireWithDuration=List of Services to expire in %s days +ListOfServicesToExpireWithDurationNeg=List of Services expired from more than %s days +ListOfServicesToExpire=List of Services to expire +NoteListOfYourExpiredServices=This list contains only services of contracts for third parties you are linked to as a sale representative. +StandardContractsTemplate=Standard contracts template +ContactNameAndSignature=For %s, name and signature: +OnlyLinesWithTypeServiceAreUsed=Only lines with type "Service" will be cloned. +ConfirmCloneContract=Are you sure you want to clone the contract %s? +LowerDateEndPlannedShort=Lower planned end date of active services +SendContractRef=Contract information __REF__ +OtherContracts=Other contracts +##### Types de contacts ##### +TypeContact_contrat_internal_SALESREPSIGN=Sales representative signing contract +TypeContact_contrat_internal_SALESREPFOLL=Sales representative following-up contract +TypeContact_contrat_external_BILLING=Billing customer contact +TypeContact_contrat_external_CUSTOMER=Follow-up customer contact +TypeContact_contrat_external_SALESREPSIGN=Signing contract customer contact diff --git a/htdocs/langs/bn_IN/cron.lang b/htdocs/langs/bn_IN/cron.lang new file mode 100644 index 00000000000..1de1251831a --- /dev/null +++ b/htdocs/langs/bn_IN/cron.lang @@ -0,0 +1,84 @@ +# Dolibarr language file - Source file is en_US - cron +# About page +# Right +Permission23101 = Read Scheduled job +Permission23102 = Create/update Scheduled job +Permission23103 = Delete Scheduled job +Permission23104 = Execute Scheduled job +# Admin +CronSetup=Scheduled job management setup +URLToLaunchCronJobs=URL to check and launch qualified cron jobs +OrToLaunchASpecificJob=Or to check and launch a specific job +KeyForCronAccess=Security key for URL to launch cron jobs +FileToLaunchCronJobs=Command line to check and launch qualified cron jobs +CronExplainHowToRunUnix=On Unix environment you should use the following crontab entry to run the command line each 5 minutes +CronExplainHowToRunWin=On Microsoft(tm) Windows environment you can use Scheduled Task tools to run the command line each 5 minutes +CronMethodDoesNotExists=Class %s does not contains any method %s +CronJobDefDesc=Cron job profiles are defined into the module descriptor file. When module is activated, they are loaded and available so you can administer the jobs from the admin tools menu %s. +CronJobProfiles=List of predefined cron job profiles +# Menu +EnabledAndDisabled=Enabled and disabled +# Page list +CronLastOutput=Latest run output +CronLastResult=Latest result code +CronCommand=Command +CronList=Scheduled jobs +CronDelete=Delete scheduled jobs +CronConfirmDelete=Are you sure you want to delete these scheduled jobs? +CronExecute=Launch scheduled job +CronConfirmExecute=Are you sure you want to execute these scheduled jobs now? +CronInfo=Scheduled job module allows to schedule jobs to execute them automatically. Jobs can also be started manually. +CronTask=Job +CronNone=None +CronDtStart=Not before +CronDtEnd=Not after +CronDtNextLaunch=Next execution +CronDtLastLaunch=Start date of latest execution +CronDtLastResult=End date of latest execution +CronFrequency=Frequency +CronClass=Class +CronMethod=Method +CronModule=Module +CronNoJobs=No jobs registered +CronPriority=Priority +CronLabel=Label +CronNbRun=Number of launches +CronMaxRun=Maximum number of launches +CronEach=Every +JobFinished=Job launched and finished +#Page card +CronAdd= Add jobs +CronEvery=Execute job each +CronObject=Instance/Object to create +CronArgs=Parameters +CronSaveSucess=Save successfully +CronNote=Comment +CronFieldMandatory=Fields %s is mandatory +CronErrEndDateStartDt=End date cannot be before start date +StatusAtInstall=Status at module installation +CronStatusActiveBtn=Enable +CronStatusInactiveBtn=Disable +CronTaskInactive=This job is disabled +CronId=Id +CronClassFile=Filename with class +CronModuleHelp=Name of Dolibarr module directory (also work with external Dolibarr module).
    For example to call the fetch method of Dolibarr Product object /htdocs/product/class/product.class.php, the value for module is
    product +CronClassFileHelp=The relative path and file name to load (path is relative to web server root directory).
    For example to call the fetch method of Dolibarr Product object htdocs/product/class/product.class.php, the value for class file name is
    product/class/product.class.php +CronObjectHelp=The object name to load.
    For example to call the fetch method of Dolibarr Product object /htdocs/product/class/product.class.php, the value for class file name is
    Product +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=The system command line to execute. +CronCreateJob=Create new Scheduled Job +CronFrom=From +# Info +# Common +CronType=Job type +CronType_method=Call method of a PHP Class +CronType_command=Shell command +CronCannotLoadClass=Cannot load class file %s (to use class %s) +CronCannotLoadObject=Class file %s was loaded, but object %s was not found into it +UseMenuModuleToolsToAddCronJobs=Go into menu "Home - Admin tools - Scheduled jobs" to see and edit scheduled jobs. +JobDisabled=Job disabled +MakeLocalDatabaseDumpShort=Local database backup +MakeLocalDatabaseDump=Create a local database dump. Parameters are: compression ('gz' or 'bz' or 'none'), backup type ('mysql', 'pgsql', 'auto'), 1, 'auto' or filename to build, number of backup files to keep +WarningCronDelayed=Attention, for performance purpose, whatever is next date of execution of enabled jobs, your jobs may be delayed to a maximum of %s hours, before being run. +DATAPOLICYJob=Data cleaner and anonymizer diff --git a/htdocs/langs/bn_IN/deliveries.lang b/htdocs/langs/bn_IN/deliveries.lang new file mode 100644 index 00000000000..1f48c01de75 --- /dev/null +++ b/htdocs/langs/bn_IN/deliveries.lang @@ -0,0 +1,31 @@ +# Dolibarr language file - Source file is en_US - deliveries +Delivery=Delivery +DeliveryRef=Ref Delivery +DeliveryCard=Receipt card +DeliveryOrder=Delivery receipt +DeliveryDate=Delivery date +CreateDeliveryOrder=Generate delivery receipt +DeliveryStateSaved=Delivery state saved +SetDeliveryDate=Set shipping date +ValidateDeliveryReceipt=Validate delivery receipt +ValidateDeliveryReceiptConfirm=Are you sure you want to validate this delivery receipt? +DeleteDeliveryReceipt=Delete delivery receipt +DeleteDeliveryReceiptConfirm=Are you sure you want to delete delivery receipt %s? +DeliveryMethod=Delivery method +TrackingNumber=Tracking number +DeliveryNotValidated=Delivery not validated +StatusDeliveryCanceled=Canceled +StatusDeliveryDraft=Draft +StatusDeliveryValidated=Received +# merou PDF model +NameAndSignature=Name and Signature: +ToAndDate=To___________________________________ on ____/_____/__________ +GoodStatusDeclaration=Have received the goods above in good condition, +Deliverer=Deliverer: +Sender=Sender +Recipient=Recipient +ErrorStockIsNotEnough=There's not enough stock +Shippable=Shippable +NonShippable=Not Shippable +ShowReceiving=Show delivery receipt +NonExistentOrder=Nonexistent order diff --git a/htdocs/langs/bn_IN/dict.lang b/htdocs/langs/bn_IN/dict.lang new file mode 100644 index 00000000000..ec315d97142 --- /dev/null +++ b/htdocs/langs/bn_IN/dict.lang @@ -0,0 +1,359 @@ +# Dolibarr language file - Source file is en_US - dict +CountryFR=France +CountryBE=Belgium +CountryIT=Italy +CountryES=Spain +CountryDE=Germany +CountryCH=Switzerland +# Warning, country code GB is for United Kingdom. UK Does not exists as country code in ISO standard. +CountryGB=United Kingdom +CountryUK=United Kingdom +CountryIE=Ireland +CountryCN=China +CountryTN=Tunisia +CountryUS=United States +CountryMA=Morocco +CountryDZ=Algeria +CountryCA=Canada +CountryTG=Togo +CountryGA=Gabon +CountryNL=Netherlands +CountryHU=Hungary +CountryRU=Russia +CountrySE=Sweden +CountryCI=Ivoiry Coast +CountrySN=Senegal +CountryAR=Argentina +CountryCM=Cameroon +CountryPT=Portugal +CountrySA=Saudi Arabia +CountryMC=Monaco +CountryAU=Australia +CountrySG=Singapore +CountryAF=Afghanistan +CountryAX=Åland Islands +CountryAL=Albania +CountryAS=American Samoa +CountryAD=Andorra +CountryAO=Angola +CountryAI=Anguilla +CountryAQ=Antarctica +CountryAG=Antigua and Barbuda +CountryAM=Armenia +CountryAW=Aruba +CountryAT=Austria +CountryAZ=Azerbaijan +CountryBS=Bahamas +CountryBH=Bahrain +CountryBD=Bangladesh +CountryBB=Barbados +CountryBY=Belarus +CountryBZ=Belize +CountryBJ=Benin +CountryBM=Bermuda +CountryBT=Bhutan +CountryBO=Bolivia +CountryBA=Bosnia and Herzegovina +CountryBW=Botswana +CountryBV=Bouvet Island +CountryBR=Brazil +CountryIO=British Indian Ocean Territory +CountryBN=Brunei Darussalam +CountryBG=Bulgaria +CountryBF=Burkina Faso +CountryBI=Burundi +CountryKH=Cambodia +CountryCV=Cape Verde +CountryKY=Cayman Islands +CountryCF=Central African Republic +CountryTD=Chad +CountryCL=Chile +CountryCX=Christmas Island +CountryCC=Cocos (Keeling) Islands +CountryCO=Colombia +CountryKM=Comoros +CountryCG=Congo +CountryCD=Congo, The Democratic Republic of the +CountryCK=Cook Islands +CountryCR=Costa Rica +CountryHR=Croatia +CountryCU=Cuba +CountryCY=Cyprus +CountryCZ=Czech Republic +CountryDK=Denmark +CountryDJ=Djibouti +CountryDM=Dominica +CountryDO=Dominican Republic +CountryEC=Ecuador +CountryEG=Egypt +CountrySV=El Salvador +CountryGQ=Equatorial Guinea +CountryER=Eritrea +CountryEE=Estonia +CountryET=Ethiopia +CountryFK=Falkland Islands +CountryFO=Faroe Islands +CountryFJ=Fiji Islands +CountryFI=Finland +CountryGF=French Guiana +CountryPF=French Polynesia +CountryTF=French Southern Territories +CountryGM=Gambia +CountryGE=Georgia +CountryGH=Ghana +CountryGI=Gibraltar +CountryGR=Greece +CountryGL=Greenland +CountryGD=Grenada +CountryGP=Guadeloupe +CountryGU=Guam +CountryGT=Guatemala +CountryGN=Guinea +CountryGW=Guinea-Bissau +CountryGY=Guyana +CountryHT=Haïti +CountryHM=Heard Island and McDonald +CountryVA=Holy See (Vatican City State) +CountryHN=Honduras +CountryHK=Hong Kong +CountryIS=Iceland +CountryIN=India +CountryID=Indonesia +CountryIR=Iran +CountryIQ=Iraq +CountryIL=Israel +CountryJM=Jamaica +CountryJP=Japan +CountryJO=Jordan +CountryKZ=Kazakhstan +CountryKE=Kenya +CountryKI=Kiribati +CountryKP=North Korea +CountryKR=South Korea +CountryKW=Kuwait +CountryKG=Kyrgyzstan +CountryLA=Lao +CountryLV=Latvia +CountryLB=Lebanon +CountryLS=Lesotho +CountryLR=Liberia +CountryLY=Libyan +CountryLI=Liechtenstein +CountryLT=Lithuania +CountryLU=Luxembourg +CountryMO=Macao +CountryMK=Macedonia, the former Yugoslav of +CountryMG=Madagascar +CountryMW=Malawi +CountryMY=Malaysia +CountryMV=Maldives +CountryML=Mali +CountryMT=Malta +CountryMH=Marshall Islands +CountryMQ=Martinique +CountryMR=Mauritania +CountryMU=Mauritius +CountryYT=Mayotte +CountryMX=Mexico +CountryFM=Micronesia +CountryMD=Moldova +CountryMN=Mongolia +CountryMS=Monserrat +CountryMZ=Mozambique +CountryMM=Myanmar (Burma) +CountryNA=Namibia +CountryNR=Nauru +CountryNP=Nepal +CountryAN=Netherlands Antilles +CountryNC=New Caledonia +CountryNZ=New Zealand +CountryNI=Nicaragua +CountryNE=Niger +CountryNG=Nigeria +CountryNU=Niue +CountryNF=Norfolk Island +CountryMP=Northern Mariana Islands +CountryNO=Norway +CountryOM=Oman +CountryPK=Pakistan +CountryPW=Palau +CountryPS=Palestinian Territory, Occupied +CountryPA=Panama +CountryPG=Papua New Guinea +CountryPY=Paraguay +CountryPE=Peru +CountryPH=Philippines +CountryPN=Pitcairn Islands +CountryPL=Poland +CountryPR=Puerto Rico +CountryQA=Qatar +CountryRE=Reunion +CountryRO=Romania +CountryRW=Rwanda +CountrySH=Saint Helena +CountryKN=Saint Kitts and Nevis +CountryLC=Saint Lucia +CountryPM=Saint Pierre and Miquelon +CountryVC=Saint Vincent and Grenadines +CountryWS=Samoa +CountrySM=San Marino +CountryST=Sao Tome and Principe +CountryRS=Serbia +CountrySC=Seychelles +CountrySL=Sierra Leone +CountrySK=Slovakia +CountrySI=Slovenia +CountrySB=Solomon Islands +CountrySO=Somalia +CountryZA=South Africa +CountryGS=South Georgia and the South Sandwich Islands +CountryLK=Sri Lanka +CountrySD=Sudan +CountrySR=Suriname +CountrySJ=Svalbard and Jan Mayen +CountrySZ=Swaziland +CountrySY=Syrian +CountryTW=Taiwan +CountryTJ=Tajikistan +CountryTZ=Tanzania +CountryTH=Thailand +CountryTL=Timor-Leste +CountryTK=Tokelau +CountryTO=Tonga +CountryTT=Trinidad and Tobago +CountryTR=Turkey +CountryTM=Turkmenistan +CountryTC=Turks and Caicos Islands +CountryTV=Tuvalu +CountryUG=Uganda +CountryUA=Ukraine +CountryAE=United Arab Emirates +CountryUM=United States Minor Outlying Islands +CountryUY=Uruguay +CountryUZ=Uzbekistan +CountryVU=Vanuatu +CountryVE=Venezuela +CountryVN=Viet Nam +CountryVG=Virgin Islands, British +CountryVI=Virgin Islands, U.S. +CountryWF=Wallis and Futuna +CountryEH=Western Sahara +CountryYE=Yemen +CountryZM=Zambia +CountryZW=Zimbabwe +CountryGG=Guernsey +CountryIM=Isle of Man +CountryJE=Jersey +CountryME=Montenegro +CountryBL=Saint Barthelemy +CountryMF=Saint Martin + +##### Civilities ##### +CivilityMME=Mrs. +CivilityMR=Mr. +CivilityMLE=Ms. +CivilityMTRE=Master +CivilityDR=Doctor +##### Currencies ##### +Currencyeuros=Euros +CurrencyAUD=AU Dollars +CurrencySingAUD=AU Dollar +CurrencyCAD=CAN Dollars +CurrencySingCAD=CAN Dollar +CurrencyCHF=Swiss Francs +CurrencySingCHF=Swiss Franc +CurrencyEUR=Euros +CurrencySingEUR=Euro +CurrencyFRF=French Francs +CurrencySingFRF=French Franc +CurrencyGBP=GB Pounds +CurrencySingGBP=GB Pound +CurrencyINR=Indian rupees +CurrencySingINR=Indian rupee +CurrencyMAD=Dirham +CurrencySingMAD=Dirham +CurrencyMGA=Ariary +CurrencySingMGA=Ariary +CurrencyMUR=Mauritius rupees +CurrencySingMUR=Mauritius rupee +CurrencyNOK=Norwegian krones +CurrencySingNOK=Norwegian kronas +CurrencyTND=Tunisian dinars +CurrencySingTND=Tunisian dinar +CurrencyUSD=US Dollars +CurrencySingUSD=US Dollar +CurrencyUAH=Hryvnia +CurrencySingUAH=Hryvnia +CurrencyXAF=CFA Francs BEAC +CurrencySingXAF=CFA Franc BEAC +CurrencyXOF=CFA Francs BCEAO +CurrencySingXOF=CFA Franc BCEAO +CurrencyXPF=CFP Francs +CurrencySingXPF=CFP Franc +CurrencyCentEUR=cents +CurrencyCentSingEUR=cent +CurrencyCentINR=paisa +CurrencyCentSingINR=paise +CurrencyThousandthSingTND=thousandth +#### Input reasons ##### +DemandReasonTypeSRC_INTE=Internet +DemandReasonTypeSRC_CAMP_MAIL=Mailing campaign +DemandReasonTypeSRC_CAMP_EMAIL=EMailing campaign +DemandReasonTypeSRC_CAMP_PHO=Phone campaign +DemandReasonTypeSRC_CAMP_FAX=Fax campaign +DemandReasonTypeSRC_COMM=Commercial contact +DemandReasonTypeSRC_SHOP=Shop contact +DemandReasonTypeSRC_WOM=Word of mouth +DemandReasonTypeSRC_PARTNER=Partner +DemandReasonTypeSRC_EMPLOYEE=Employee +DemandReasonTypeSRC_SPONSORING=Sponsorship +DemandReasonTypeSRC_SRC_CUSTOMER=Incoming contact of a customer +#### Paper formats #### +PaperFormatEU4A0=Format 4A0 +PaperFormatEU2A0=Format 2A0 +PaperFormatEUA0=Format A0 +PaperFormatEUA1=Format A1 +PaperFormatEUA2=Format A2 +PaperFormatEUA3=Format A3 +PaperFormatEUA4=Format A4 +PaperFormatEUA5=Format A5 +PaperFormatEUA6=Format A6 +PaperFormatUSLETTER=Format Letter US +PaperFormatUSLEGAL=Format Legal US +PaperFormatUSEXECUTIVE=Format Executive US +PaperFormatUSLEDGER=Format Ledger/Tabloid +PaperFormatCAP1=Format P1 Canada +PaperFormatCAP2=Format P2 Canada +PaperFormatCAP3=Format P3 Canada +PaperFormatCAP4=Format P4 Canada +PaperFormatCAP5=Format P5 Canada +PaperFormatCAP6=Format P6 Canada +#### Expense report categories #### +ExpAutoCat=Car +ExpCycloCat=Moped +ExpMotoCat=Motorbike +ExpAuto3CV=3 CV +ExpAuto4CV=4 CV +ExpAuto5CV=5 CV +ExpAuto6CV=6 CV +ExpAuto7CV=7 CV +ExpAuto8CV=8 CV +ExpAuto9CV=9 CV +ExpAuto10CV=10 CV +ExpAuto11CV=11 CV +ExpAuto12CV=12 CV +ExpAuto3PCV=3 CV and more +ExpAuto4PCV=4 CV and more +ExpAuto5PCV=5 CV and more +ExpAuto6PCV=6 CV and more +ExpAuto7PCV=7 CV and more +ExpAuto8PCV=8 CV and more +ExpAuto9PCV=9 CV and more +ExpAuto10PCV=10 CV and more +ExpAuto11PCV=11 CV and more +ExpAuto12PCV=12 CV and more +ExpAuto13PCV=13 CV and more +ExpCyclo=Capacity lower to 50cm3 +ExpMoto12CV=Motorbike 1 or 2 CV +ExpMoto345CV=Motorbike 3, 4 or 5 CV +ExpMoto5PCV=Motorbike 5 CV and more diff --git a/htdocs/langs/bn_IN/donations.lang b/htdocs/langs/bn_IN/donations.lang new file mode 100644 index 00000000000..de4bdf68f03 --- /dev/null +++ b/htdocs/langs/bn_IN/donations.lang @@ -0,0 +1,34 @@ +# Dolibarr language file - Source file is en_US - donations +Donation=Donation +Donations=Donations +DonationRef=Donation ref. +Donor=Donor +AddDonation=Create a donation +NewDonation=New donation +DeleteADonation=Delete a donation +ConfirmDeleteADonation=Are you sure you want to delete this donation? +PublicDonation=Public donation +DonationsArea=Donations area +DonationStatusPromiseNotValidated=Draft promise +DonationStatusPromiseValidated=Validated promise +DonationStatusPaid=Donation received +DonationStatusPromiseNotValidatedShort=Draft +DonationStatusPromiseValidatedShort=Validated +DonationStatusPaidShort=Received +DonationTitle=Donation receipt +DonationDate=Donation date +DonationDatePayment=Payment date +ValidPromess=Validate promise +DonationReceipt=Donation receipt +DonationsModels=Documents models for donation receipts +LastModifiedDonations=Latest %s modified donations +DonationRecipient=Donation recipient +IConfirmDonationReception=The recipient declare reception, as a donation, of the following amount +MinimumAmount=Minimum amount is %s +FreeTextOnDonations=Free text to show in footer +FrenchOptions=Options for France +DONATION_ART200=Show article 200 from CGI if you are concerned +DONATION_ART238=Show article 238 from CGI if you are concerned +DONATION_ART885=Show article 885 from CGI if you are concerned +DonationPayment=Donation payment +DonationValidated=Donation %s validated diff --git a/htdocs/langs/bn_IN/ecm.lang b/htdocs/langs/bn_IN/ecm.lang new file mode 100644 index 00000000000..369ac6dfdfa --- /dev/null +++ b/htdocs/langs/bn_IN/ecm.lang @@ -0,0 +1,52 @@ +# Dolibarr language file - Source file is en_US - ecm +ECMNbOfDocs=No. of documents in directory +ECMSection=Directory +ECMSectionManual=Manual directory +ECMSectionAuto=Automatic directory +ECMSectionsManual=Manual tree +ECMSectionsAuto=Automatic tree +ECMSections=Directories +ECMRoot=ECM Root +ECMNewSection=New directory +ECMAddSection=Add directory +ECMCreationDate=Creation date +ECMNbOfFilesInDir=Number of files in directory +ECMNbOfSubDir=Number of sub-directories +ECMNbOfFilesInSubDir=Number of files in sub-directories +ECMCreationUser=Creator +ECMArea=DMS/ECM area +ECMAreaDesc=The DMS/ECM (Document Management System / Electronic Content Management) area allows you to save, share and search quickly all kind of documents in Dolibarr. +ECMAreaDesc2=* Automatic directories are filled automatically when adding documents from card of an element.
    * Manual directories can be used to save documents not linked to a particular element. +ECMSectionWasRemoved=Directory %s has been deleted. +ECMSectionWasCreated=Directory %s has been created. +ECMSearchByKeywords=Search by keywords +ECMSearchByEntity=Search by object +ECMSectionOfDocuments=Directories of documents +ECMTypeAuto=Automatic +ECMDocsBySocialContributions=Documents linked to social or fiscal taxes +ECMDocsByThirdParties=Documents linked to third parties +ECMDocsByProposals=Documents linked to proposals +ECMDocsByOrders=Documents linked to customers orders +ECMDocsByContracts=Documents linked to contracts +ECMDocsByInvoices=Documents linked to customers invoices +ECMDocsByProducts=Documents linked to products +ECMDocsByProjects=Documents linked to projects +ECMDocsByUsers=Documents linked to users +ECMDocsByInterventions=Documents linked to interventions +ECMDocsByExpenseReports=Documents linked to expense reports +ECMDocsByHolidays=Documents linked to holidays +ECMDocsBySupplierProposals=Documents linked to vendor proposals +ECMNoDirectoryYet=No directory created +ShowECMSection=Show directory +DeleteSection=Remove directory +ConfirmDeleteSection=Can you confirm you want to delete the directory %s? +ECMDirectoryForFiles=Relative directory for files +CannotRemoveDirectoryContainsFilesOrDirs=Removal not possible because it contains some files or sub-directories +CannotRemoveDirectoryContainsFiles=Removal not possible because it contains some files +ECMFileManager=File manager +ECMSelectASection=Select a directory in the tree... +DirNotSynchronizedSyncFirst=This directory seems to be created or modified outside ECM module. You must click on "Resync" button first to synchronize disk and database to get content of this directory. +ReSyncListOfDir=Resync list of directories +HashOfFileContent=Hash of file content +NoDirectoriesFound=No directories found +FileNotYetIndexedInDatabase=File not yet indexed into database (try to re-upload it) diff --git a/htdocs/langs/bn_IN/errors.lang b/htdocs/langs/bn_IN/errors.lang new file mode 100644 index 00000000000..7c67aeca8b5 --- /dev/null +++ b/htdocs/langs/bn_IN/errors.lang @@ -0,0 +1,265 @@ +# Dolibarr language file - Source file is en_US - errors + +# No errors +NoErrorCommitIsDone=No error, we commit +# Errors +ErrorButCommitIsDone=Errors found but we validate despite this +ErrorBadEMail=Email %s is wrong +ErrorBadUrl=Url %s is wrong +ErrorBadValueForParamNotAString=Bad value for your parameter. It appends generally when translation is missing. +ErrorLoginAlreadyExists=Login %s already exists. +ErrorGroupAlreadyExists=Group %s already exists. +ErrorRecordNotFound=Record not found. +ErrorFailToCopyFile=Failed to copy file '%s' into '%s'. +ErrorFailToCopyDir=Failed to copy directory '%s' into '%s'. +ErrorFailToRenameFile=Failed to rename file '%s' into '%s'. +ErrorFailToDeleteFile=Failed to remove file '%s'. +ErrorFailToCreateFile=Failed to create file '%s'. +ErrorFailToRenameDir=Failed to rename directory '%s' into '%s'. +ErrorFailToCreateDir=Failed to create directory '%s'. +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=This bank account is a cash account, so it accepts payments of type cash only. +ErrorFromToAccountsMustDiffers=Source and targets bank accounts must be different. +ErrorBadThirdPartyName=Bad value for third-party name +ErrorProdIdIsMandatory=The %s is mandatory +ErrorBadCustomerCodeSyntax=Bad syntax for customer code +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. +ErrorCustomerCodeRequired=Customer code required +ErrorBarCodeRequired=Barcode required +ErrorCustomerCodeAlreadyUsed=Customer code already used +ErrorBarCodeAlreadyUsed=Barcode already used +ErrorPrefixRequired=Prefix required +ErrorBadSupplierCodeSyntax=Bad syntax for vendor code +ErrorSupplierCodeRequired=Vendor code required +ErrorSupplierCodeAlreadyUsed=Vendor code already used +ErrorBadParameters=Bad parameters +ErrorBadValueForParameter=Wrong value '%s' for parameter '%s' +ErrorBadImageFormat=Image file has not a supported format (Your PHP does not support functions to convert images of this format) +ErrorBadDateFormat=Value '%s' has wrong date format +ErrorWrongDate=Date is not correct! +ErrorFailedToWriteInDir=Failed to write in directory %s +ErrorFoundBadEmailInFile=Found incorrect email syntax for %s lines in file (example line %s with email=%s) +ErrorUserCannotBeDelete=User cannot be deleted. Maybe it is associated to Dolibarr entities. +ErrorFieldsRequired=Some required fields were not filled. +ErrorSubjectIsRequired=The email topic is required +ErrorFailedToCreateDir=Failed to create a directory. Check that Web server user has permissions to write into Dolibarr documents directory. If parameter safe_mode is enabled on this PHP, check that Dolibarr php files owns to web server user (or group). +ErrorNoMailDefinedForThisUser=No mail defined for this user +ErrorFeatureNeedJavascript=This feature need javascript to be activated to work. Change this in setup - display. +ErrorTopMenuMustHaveAParentWithId0=A menu of type 'Top' can't have a parent menu. Put 0 in parent menu or choose a menu of type 'Left'. +ErrorLeftMenuMustHaveAParentId=A menu of type 'Left' must have a parent id. +ErrorFileNotFound=File %s not found (Bad path, wrong permissions or access denied by PHP openbasedir or safe_mode parameter) +ErrorDirNotFound=Directory %s not found (Bad path, wrong permissions or access denied by PHP openbasedir or safe_mode parameter) +ErrorFunctionNotAvailableInPHP=Function %s is required for this feature but is not available in this version/setup of PHP. +ErrorDirAlreadyExists=A directory with this name already exists. +ErrorFileAlreadyExists=A file with this name already exists. +ErrorPartialFile=File not received completely by server. +ErrorNoTmpDir=Temporary directy %s does not exists. +ErrorUploadBlockedByAddon=Upload blocked by a PHP/Apache plugin. +ErrorFileSizeTooLarge=File size is too large. +ErrorFieldTooLong=Field %s is too long. +ErrorSizeTooLongForIntType=Size too long for int type (%s digits maximum) +ErrorSizeTooLongForVarcharType=Size too long for string type (%s chars maximum) +ErrorNoValueForSelectType=Please fill value for select list +ErrorNoValueForCheckBoxType=Please fill value for checkbox list +ErrorNoValueForRadioType=Please fill value for radio list +ErrorBadFormatValueList=The list value cannot have more than one comma: %s, but need at least one: key,value +ErrorFieldCanNotContainSpecialCharacters=The field %s must not contains special characters. +ErrorFieldCanNotContainSpecialNorUpperCharacters=The field %s must not contain special characters, nor upper case characters and cannot contain only numbers. +ErrorFieldMustHaveXChar=The field %s must have at least %s characters. +ErrorNoAccountancyModuleLoaded=No accountancy module activated +ErrorExportDuplicateProfil=This profile name already exists for this export set. +ErrorLDAPSetupNotComplete=Dolibarr-LDAP matching is not complete. +ErrorLDAPMakeManualTest=A .ldif file has been generated in directory %s. Try to load it manually from command line to have more information on errors. +ErrorCantSaveADoneUserWithZeroPercentage=Can't save an action with "status not started" if field "done by" is also filled. +ErrorRefAlreadyExists=Ref used for creation already exists. +ErrorPleaseTypeBankTransactionReportName=Please enter the bank statement name where the entry has to be reported (Format YYYYMM or YYYYMMDD) +ErrorRecordHasChildren=Failed to delete record since it has some child records. +ErrorRecordHasAtLeastOneChildOfType=Object has at least one child of type %s +ErrorRecordIsUsedCantDelete=Can't delete record. It is already used or included into another object. +ErrorModuleRequireJavascript=Javascript must not be disabled to have this feature working. To enable/disable Javascript, go to menu Home->Setup->Display. +ErrorPasswordsMustMatch=Both typed passwords must match each other +ErrorContactEMail=A technical error occured. Please, contact administrator to following email %s and provide the error code %s in your message, or add a screen copy of this page. +ErrorWrongValueForField=Field %s: '%s' does not match regex rule %s +ErrorFieldValueNotIn=Field %s: '%s' is not a value found in field %s of %s +ErrorFieldRefNotIn=Field %s: '%s' is not a %s existing ref +ErrorsOnXLines=%s errors found +ErrorFileIsInfectedWithAVirus=The antivirus program was not able to validate the file (file might be infected by a virus) +ErrorSpecialCharNotAllowedForField=Special characters are not allowed for field "%s" +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 %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 +ErrorMaxNumberReachForThisMask=Maximum number reached for this mask +ErrorCounterMustHaveMoreThan3Digits=Counter must have more than 3 digits +ErrorSelectAtLeastOne=Error, select at least one entry. +ErrorDeleteNotPossibleLineIsConsolidated=Delete not possible because record is linked to a bank transaction that is conciliated +ErrorProdIdAlreadyExist=%s is assigned to another third +ErrorFailedToSendPassword=Failed to send password +ErrorFailedToLoadRSSFile=Fails to get RSS feed. Try to add constant MAIN_SIMPLEXMLLOAD_DEBUG if error messages does not provide enough information. +ErrorForbidden=Access denied.
    You try to access to a page, area or feature of a disabled module or without being in an authenticated session or that is not allowed to your user. +ErrorForbidden2=Permission for this login can be defined by your Dolibarr administrator from menu %s->%s. +ErrorForbidden3=It seems that Dolibarr is not used through an authenticated session. Take a look at Dolibarr setup documentation to know how to manage authentications (htaccess, mod_auth or other...). +ErrorNoImagickReadimage=Class Imagick is not found in this PHP. No preview can be available. Administrators can disable this tab from menu Setup - Display. +ErrorRecordAlreadyExists=Record already exists +ErrorLabelAlreadyExists=This label already exists +ErrorCantReadFile=Failed to read file '%s' +ErrorCantReadDir=Failed to read directory '%s' +ErrorBadLoginPassword=Bad value for login or password +ErrorLoginDisabled=Your account has been disabled +ErrorFailedToRunExternalCommand=Failed to run external command. Check it is available and runnable by your PHP server. If PHP Safe Mode is enabled, check that command is inside a directory defined by parameter safe_mode_exec_dir. +ErrorFailedToChangePassword=Failed to change password +ErrorLoginDoesNotExists=User with login %s could not be found. +ErrorLoginHasNoEmail=This user has no email address. Process aborted. +ErrorBadValueForCode=Bad value for security code. Try again with new value... +ErrorBothFieldCantBeNegative=Fields %s and %s can't be both negative +ErrorFieldCantBeNegativeOnInvoice=Field %s cannot be negative on this type of invoice. If you need to add a discount line, just create the discount first (from field '%s' in thirdparty card) and apply it to the invoice. +ErrorLinesCantBeNegativeForOneVATRate=Total of lines can't be negative for a given VAT rate. +ErrorLinesCantBeNegativeOnDeposits=Lines can't be negative in a deposit. You will face problems when you will need to consume the deposit in final invoice if you do so. +ErrorQtyForCustomerInvoiceCantBeNegative=Quantity for line into customer invoices can't be negative +ErrorWebServerUserHasNotPermission=User account %s used to execute web server has no permission for that +ErrorNoActivatedBarcode=No barcode type activated +ErrUnzipFails=Failed to unzip %s with ZipArchive +ErrNoZipEngine=No engine to zip/unzip %s file in this PHP +ErrorFileMustBeADolibarrPackage=The file %s must be a Dolibarr zip package +ErrorModuleFileRequired=You must select a Dolibarr module package file +ErrorPhpCurlNotInstalled=The PHP CURL is not installed, this is essential to talk with Paypal +ErrorFailedToAddToMailmanList=Failed to add record %s to Mailman list %s or SPIP base +ErrorFailedToRemoveToMailmanList=Failed to remove record %s to Mailman list %s or SPIP base +ErrorNewValueCantMatchOldValue=New value can't be equal to old one +ErrorFailedToValidatePasswordReset=Failed to reinit password. May be the reinit was already done (this link can be used only one time). If not, try to restart the reinit process. +ErrorToConnectToMysqlCheckInstance=Connect to database fails. Check database server is running (for example, with mysql/mariadb, you can launch it from command line with 'sudo service mysql start'). +ErrorFailedToAddContact=Failed to add contact +ErrorDateMustBeBeforeToday=The date cannot be greater than today +ErrorPaymentModeDefinedToWithoutSetup=A payment mode was set to type %s but setup of module Invoice was not completed to define information to show for this payment mode. +ErrorPHPNeedModule=Error, your PHP must have module %s installed to use this feature. +ErrorOpenIDSetupNotComplete=You setup Dolibarr config file to allow OpenID authentication, but URL of OpenID service is not defined into constant %s +ErrorWarehouseMustDiffers=Source and target warehouses must differs +ErrorBadFormat=Bad format! +ErrorMemberNotLinkedToAThirpartyLinkOrCreateFirst=Error, this member is not yet linked to any third party. Link member to an existing third party or create a new third party before creating subscription with invoice. +ErrorThereIsSomeDeliveries=Error, there is some deliveries linked to this shipment. Deletion refused. +ErrorCantDeletePaymentReconciliated=Can't delete a payment that had generated a bank entry that was reconciled +ErrorCantDeletePaymentSharedWithPayedInvoice=Can't delete a payment shared by at least one invoice with status Paid +ErrorPriceExpression1=Cannot assign to constant '%s' +ErrorPriceExpression2=Cannot redefine built-in function '%s' +ErrorPriceExpression3=Undefined variable '%s' in function definition +ErrorPriceExpression4=Illegal character '%s' +ErrorPriceExpression5=Unexpected '%s' +ErrorPriceExpression6=Wrong number of arguments (%s given, %s expected) +ErrorPriceExpression8=Unexpected operator '%s' +ErrorPriceExpression9=An unexpected error occured +ErrorPriceExpression10=Operator '%s' lacks operand +ErrorPriceExpression11=Expecting '%s' +ErrorPriceExpression14=Division by zero +ErrorPriceExpression17=Undefined variable '%s' +ErrorPriceExpression19=Expression not found +ErrorPriceExpression20=Empty expression +ErrorPriceExpression21=Empty result '%s' +ErrorPriceExpression22=Negative result '%s' +ErrorPriceExpression23=Unknown or non set variable '%s' in %s +ErrorPriceExpression24=Variable '%s' exists but has no value +ErrorPriceExpressionInternal=Internal error '%s' +ErrorPriceExpressionUnknown=Unknown error '%s' +ErrorSrcAndTargetWarehouseMustDiffers=Source and target warehouses must differs +ErrorTryToMakeMoveOnProductRequiringBatchData=Error, trying to make a stock movement without lot/serial information, on product '%s' requiring lot/serial information +ErrorCantSetReceptionToTotalDoneWithReceptionToApprove=All recorded receptions must first be verified (approved or denied) before being allowed to do this action +ErrorCantSetReceptionToTotalDoneWithReceptionDenied=All recorded receptions must first be verified (approved) before being allowed to do this action +ErrorGlobalVariableUpdater0=HTTP request failed with error '%s' +ErrorGlobalVariableUpdater1=Invalid JSON format '%s' +ErrorGlobalVariableUpdater2=Missing parameter '%s' +ErrorGlobalVariableUpdater3=The requested data was not found in result +ErrorGlobalVariableUpdater4=SOAP client failed with error '%s' +ErrorGlobalVariableUpdater5=No global variable selected +ErrorFieldMustBeANumeric=Field %s must be a numeric value +ErrorMandatoryParametersNotProvided=Mandatory parameter(s) not provided +ErrorOppStatusRequiredIfAmount=You set an estimated amount for this lead. So you must also enter it's status. +ErrorFailedToLoadModuleDescriptorForXXX=Failed to load module descriptor class for %s +ErrorBadDefinitionOfMenuArrayInModuleDescriptor=Bad Definition Of Menu Array In Module Descriptor (bad value for key fk_menu) +ErrorSavingChanges=An error has occurred when saving the changes +ErrorWarehouseRequiredIntoShipmentLine=Warehouse is required on the line to ship +ErrorFileMustHaveFormat=File must have format %s +ErrorSupplierCountryIsNotDefined=Country for this vendor is not defined. Correct this first. +ErrorsThirdpartyMerge=Failed to merge the two records. Request canceled. +ErrorStockIsNotEnoughToAddProductOnOrder=Stock is not enough for product %s to add it into a new order. +ErrorStockIsNotEnoughToAddProductOnInvoice=Stock is not enough for product %s to add it into a new invoice. +ErrorStockIsNotEnoughToAddProductOnShipment=Stock is not enough for product %s to add it into a new shipment. +ErrorStockIsNotEnoughToAddProductOnProposal=Stock is not enough for product %s to add it into a new proposal. +ErrorFailedToLoadLoginFileForMode=Failed to get the login key for mode '%s'. +ErrorModuleNotFound=File of module was not found. +ErrorFieldAccountNotDefinedForBankLine=Value for Accounting account not defined for source line id %s (%s) +ErrorFieldAccountNotDefinedForInvoiceLine=Value for Accounting account not defined for invoice id %s (%s) +ErrorFieldAccountNotDefinedForLine=Value for Accounting account not defined for the line (%s) +ErrorBankStatementNameMustFollowRegex=Error, bank statement name must follow the following syntax rule %s +ErrorPhpMailDelivery=Check that you don't use a too high number of recipients and that your email content is not similar to a Spam. Ask also your administrator to check firewall and server logs files for a more complete information. +ErrorUserNotAssignedToTask=User must be assigned to task to be able to enter time consumed. +ErrorTaskAlreadyAssigned=Task already assigned to user +ErrorModuleFileSeemsToHaveAWrongFormat=The module package seems to have a wrong format. +ErrorModuleFileSeemsToHaveAWrongFormat2=At least one mandatory directory must exists into zip of module: %s or %s +ErrorFilenameDosNotMatchDolibarrPackageRules=The name of the module package (%s) does not match expected name syntax: %s +ErrorDuplicateTrigger=Error, duplicate trigger name %s. Already loaded from %s. +ErrorNoWarehouseDefined=Error, no warehouses defined. +ErrorBadLinkSourceSetButBadValueForRef=The link you use is not valid. A 'source' for payment is defined, but value for 'ref' is not valid. +ErrorTooManyErrorsProcessStopped=Too many errors. Process was stopped. +ErrorMassValidationNotAllowedWhenStockIncreaseOnAction=Mass validation is not possible when option to increase/decrease stock is set on this action (you must validate one by one so you can define the warehouse to increase/decrease) +ErrorObjectMustHaveStatusDraftToBeValidated=Object %s must have status 'Draft' to be validated. +ErrorObjectMustHaveLinesToBeValidated=Object %s must have lines to be validated. +ErrorOnlyInvoiceValidatedCanBeSentInMassAction=Only validated invoices can be sent using the "Send by email" mass action. +ErrorChooseBetweenFreeEntryOrPredefinedProduct=You must choose if article is a predefined product or not +ErrorDiscountLargerThanRemainToPaySplitItBefore=The discount you try to apply is larger than remain to pay. Split the discount in 2 smaller discounts before. +ErrorFileNotFoundWithSharedLink=File was not found. May be the share key was modified or file was removed recently. +ErrorProductBarCodeAlreadyExists=The product barcode %s already exists on another product reference. +ErrorNoteAlsoThatSubProductCantBeFollowedByLot=Note also that using virtual product to have auto increase/decrease of subproducts is not possible when at least one subproduct (or subproduct of subproducts) needs a serial/lot number. +ErrorDescRequiredForFreeProductLines=Description is mandatory for lines with free product +ErrorAPageWithThisNameOrAliasAlreadyExists=The page/container %s has the same name or alternative alias that the one your try to use +ErrorDuringChartLoad=Error when loading chart of accounts. If few accounts were not loaded, you can still enter them manually. +ErrorBadSyntaxForParamKeyForContent=Bad syntax for param keyforcontent. Must have a value starting with %s or %s +ErrorVariableKeyForContentMustBeSet=Error, the constant with name %s (with text content to show) or %s (with external url to show) must be set. +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. +ErrorObjectMustHaveStatusActiveToBeDisabled=Objects must have status 'Active' to be disabled +ErrorObjectMustHaveStatusDraftOrDisabledToBeActivated=Objects must have status 'Draft' or 'Disabled' to be enabled +ErrorNoFieldWithAttributeShowoncombobox=No fields has property 'showoncombobox' into definition of object '%s'. No way to show the combolist. +ErrorFieldRequiredForProduct=Field '%s' is required for product %s +ProblemIsInSetupOfTerminal=Problem is in setup of terminal %s. +ErrorAddAtLeastOneLineFirst=Add at least one line first +ErrorRecordAlreadyInAccountingDeletionNotPossible=Error, record is already transferred in accounting, deletion is not possible. +ErrorLanguageMandatoryIfPageSetAsTranslationOfAnother=Error, language is mandatory if you set the page as a translation of another one. +ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated page is same than this one. +ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". +ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". +ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty +# 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 +WarningSafeModeOnCheckExecDir=Warning, PHP option safe_mode is on so command must be stored inside a directory declared by php parameter safe_mode_exec_dir. +WarningBookmarkAlreadyExists=A bookmark with this title or this target (URL) already exists. +WarningPassIsEmpty=Warning, database password is empty. This is a security hole. You should add a password to your database and change your conf.php file to reflect this. +WarningConfFileMustBeReadOnly=Warning, your config file (htdocs/conf/conf.php) can be overwritten by the web server. This is a serious security hole. Modify permissions on file to be in read only mode for operating system user used by Web server. If you use Windows and FAT format for your disk, you must know that this file system does not allow to add permissions on file, so can't be completely safe. +WarningsOnXLines=Warnings on %s source record(s) +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). +WarningCloseAlways=Warning, closing is done even if amount differs between source and target elements. Enable this feature with caution. +WarningUsingThisBoxSlowDown=Warning, using this box slow down seriously all pages showing the box. +WarningClickToDialUserSetupNotComplete=Setup of ClickToDial information for your user are not complete (see tab ClickToDial onto your user card). +WarningFeatureDisabledWithDisplayOptimizedForBlindNoJs=Feature disabled when display setup is optimized for blind person or text browsers. +WarningPaymentDateLowerThanInvoiceDate=Payment date (%s) is earlier than invoice date (%s) for invoice %s. +WarningTooManyDataPleaseUseMoreFilters=Too many data (more than %s lines). Please use more filters or set the constant %s to a higher limit. +WarningSomeLinesWithNullHourlyRate=Some times were recorded by some users while their hourly rate was not defined. A value of 0 %s per hour was used but this may result in wrong valuation of time spent. +WarningYourLoginWasModifiedPleaseLogin=Your login was modified. For security purpose you will have to login with your new login before next action. +WarningAnEntryAlreadyExistForTransKey=An entry already exists for the translation key for this language +WarningNumberOfRecipientIsRestrictedInMassAction=Warning, number of different recipient is limited to %s when using the mass actions on lists +WarningDateOfLineMustBeInExpenseReportRange=Warning, the date of line is not in the range of the expense report +WarningProjectClosed=Project is closed. You must re-open it first. +WarningSomeBankTransactionByChequeWereRemovedAfter=Some bank transaction were removed after that the receipt including them were generated. So nb of cheques and total of receipt may differ from number and total in list. diff --git a/htdocs/langs/bn_IN/exports.lang b/htdocs/langs/bn_IN/exports.lang new file mode 100644 index 00000000000..3549e3f8b23 --- /dev/null +++ b/htdocs/langs/bn_IN/exports.lang @@ -0,0 +1,135 @@ +# Dolibarr language file - Source file is en_US - exports +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 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 your selections as an export profile/template (for reuse). +SaveImportModel=Save this import profile (for reuse) ... +ExportModelName=Export profile name +ExportModelSaved=Export profile saved as %s. +ExportableFields=Exportable fields +ExportedFields=Exported fields +ImportModelName=Import profile name +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 the file format in the combo box and click on "Generate" to build the export file... +AvailableFormats=Available Formats +LibraryShort=Library +ExportCsvSeparator=Csv caracter separator +ImportCsvSeparator=Csv caracter separator +Step=Step +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 extract data +LineId=Id of line +LineLabel=Label of line +LineDescription=Description of line +LineUnitPrice=Unit price of line +LineVATRate=VAT Rate of line +LineQty=Quantity for line +LineTotalHT=Amount excl. tax for line +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 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) +Field=Field +NoFields=No fields +MoveField=Move field column number %s +ExampleOfImportFile=Example_of_import_file +SaveImportProfile=Save this import profile +ErrorImportDuplicateProfil=Failed to save this import profile with this name. An existing profile already exists with this name. +TablesTarget=Targeted tables +FieldsTarget=Targeted fields +FieldTarget=Targeted field +FieldSource=Source field +NbOfSourceLines=Number of lines in source file +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=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 correct all errors before running the definitive import. +FileWasImported=File was imported with number %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 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 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 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 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 +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=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 +ComputedField=Computed field +## filters +SelectFilterFields=If you want to filter on some values, just input values here. +FilteredFields=Filtered fields +FilteredFieldsValues=Value for filter +FormatControlRule=Format control rule +## imports updates +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/bn_IN/externalsite.lang b/htdocs/langs/bn_IN/externalsite.lang new file mode 100644 index 00000000000..da4853df0df --- /dev/null +++ b/htdocs/langs/bn_IN/externalsite.lang @@ -0,0 +1,5 @@ +# Dolibarr language file - Source file is en_US - externalsite +ExternalSiteSetup=Setup link to external website +ExternalSiteURL=External Site URL +ExternalSiteModuleNotComplete=Module ExternalSite was not configured properly. +ExampleMyMenuEntry=My menu entry diff --git a/htdocs/langs/bn_IN/ftp.lang b/htdocs/langs/bn_IN/ftp.lang new file mode 100644 index 00000000000..d80b87c2715 --- /dev/null +++ b/htdocs/langs/bn_IN/ftp.lang @@ -0,0 +1,14 @@ +# Dolibarr language file - Source file is en_US - ftp +FTPClientSetup=FTP Client module setup +NewFTPClient=New FTP connection setup +FTPArea=FTP Area +FTPAreaDesc=This screen shows a view of an FTP server. +SetupOfFTPClientModuleNotComplete=The setup of the FTP client module seems to be incomplete +FTPFeatureNotSupportedByYourPHP=Your PHP does not support FTP functions +FailedToConnectToFTPServer=Failed to connect to FTP server (server %s, port %s) +FailedToConnectToFTPServerWithCredentials=Failed to login to FTP server with defined login/password +FTPFailedToRemoveFile=Failed to remove file %s. +FTPFailedToRemoveDir=Failed to remove directory %s: check permissions and that the directory is empty. +FTPPassiveMode=Passive mode +ChooseAFTPEntryIntoMenu=Choose a FTP site from the menu... +FailedToGetFile=Failed to get files %s diff --git a/htdocs/langs/bn_IN/help.lang b/htdocs/langs/bn_IN/help.lang new file mode 100644 index 00000000000..048de16d3c0 --- /dev/null +++ b/htdocs/langs/bn_IN/help.lang @@ -0,0 +1,23 @@ +# Dolibarr language file - Source file is en_US - help +CommunitySupport=Forum/Wiki support +EMailSupport=Emails support +RemoteControlSupport=Online real-time / remote support +OtherSupport=Other support +ToSeeListOfAvailableRessources=To contact/see available resources: +HelpCenter=Help Center +DolibarrHelpCenter=Dolibarr Help and Support Center +ToGoBackToDolibarr=Otherwise, click here to continue to use Dolibarr. +TypeOfSupport=Type of support +TypeSupportCommunauty=Community (free) +TypeSupportCommercial=Commercial +TypeOfHelp=Type +NeedHelpCenter=Need help or support? +Efficiency=Efficiency +TypeHelpOnly=Help only +TypeHelpDev=Help+Development +TypeHelpDevForm=Help+Development+Training +BackToHelpCenter=Otherwise, go back to Help center home page. +LinkToGoldMember=You can call one of the trainers preselected by Dolibarr for your language (%s) by clicking their Widget (status and maximum price are automatically updated): +PossibleLanguages=Supported languages +SubscribeToFoundation=Help the Dolibarr project, subscribe to the foundation +SeeOfficalSupport=For official Dolibarr support in your language:
    %s diff --git a/htdocs/langs/bn_IN/holiday.lang b/htdocs/langs/bn_IN/holiday.lang new file mode 100644 index 00000000000..82de49f9c5f --- /dev/null +++ b/htdocs/langs/bn_IN/holiday.lang @@ -0,0 +1,133 @@ +# Dolibarr language file - Source file is en_US - holiday +HRM=HRM +Holidays=Leave +CPTitreMenu=Leave +MenuReportMonth=Monthly statement +MenuAddCP=New leave request +NotActiveModCP=You must enable the module Leave to view this page. +AddCP=Make a leave request +DateDebCP=Start date +DateFinCP=End date +DraftCP=Draft +ToReviewCP=Awaiting approval +ApprovedCP=Approved +CancelCP=Canceled +RefuseCP=Refused +ValidatorCP=Approbator +ListeCP=List of leave +LeaveId=Leave ID +ReviewedByCP=Will be approved by +UserID=User ID +UserForApprovalID=User for approval ID +UserForApprovalFirstname=First name of approval user +UserForApprovalLastname=Last name of approval user +UserForApprovalLogin=Login of approval user +DescCP=Description +SendRequestCP=Create leave request +DelayToRequestCP=Leave requests must be made at least %s day(s) before them. +MenuConfCP=Balance of leave +SoldeCPUser=Leave balance is %s days. +ErrorEndDateCP=You must select an end date greater than the start date. +ErrorSQLCreateCP=An SQL error occurred during the creation: +ErrorIDFicheCP=An error has occurred, the leave request does not exist. +ReturnCP=Return to previous page +ErrorUserViewCP=You are not authorized to read this leave request. +InfosWorkflowCP=Information Workflow +RequestByCP=Requested by +TitreRequestCP=Leave request +TypeOfLeaveId=Type of leave ID +TypeOfLeaveCode=Type of leave code +TypeOfLeaveLabel=Type of leave label +NbUseDaysCP=Number of days of vacation consumed +NbUseDaysCPHelp=The calculation takes into account the non working days and the holidays defined in the dictionary. +NbUseDaysCPShort=Days consumed +NbUseDaysCPShortInMonth=Days consumed in month +DayIsANonWorkingDay=%s is a non working day +DateStartInMonth=Start date in month +DateEndInMonth=End date in month +EditCP=Edit +DeleteCP=Delete +ActionRefuseCP=Refuse +ActionCancelCP=Cancel +StatutCP=Status +TitleDeleteCP=Delete the leave request +ConfirmDeleteCP=Confirm the deletion of this leave request? +ErrorCantDeleteCP=Error you don't have the right to delete this leave request. +CantCreateCP=You don't have the right to make leave requests. +InvalidValidatorCP=You must choose an approbator to your leave request. +NoDateDebut=You must select a start date. +NoDateFin=You must select an end date. +ErrorDureeCP=Your leave request does not contain working day. +TitleValidCP=Approve the leave request +ConfirmValidCP=Are you sure you want to approve the leave request? +DateValidCP=Date approved +TitleToValidCP=Send leave request +ConfirmToValidCP=Are you sure you want to send the leave request? +TitleRefuseCP=Refuse the leave request +ConfirmRefuseCP=Are you sure you want to refuse the leave request? +NoMotifRefuseCP=You must choose a reason for refusing the request. +TitleCancelCP=Cancel the leave request +ConfirmCancelCP=Are you sure you want to cancel the leave request? +DetailRefusCP=Reason for refusal +DateRefusCP=Date of refusal +DateCancelCP=Date of cancellation +DefineEventUserCP=Assign an exceptional leave for a user +addEventToUserCP=Assign leave +NotTheAssignedApprover=You are not the assigned approver +MotifCP=Reason +UserCP=User +ErrorAddEventToUserCP=An error occurred while adding the exceptional leave. +AddEventToUserOkCP=The addition of the exceptional leave has been completed. +MenuLogCP=View change logs +LogCP=Log of updates of available vacation days +ActionByCP=Performed by +UserUpdateCP=For the user +PrevSoldeCP=Previous Balance +NewSoldeCP=New Balance +alreadyCPexist=A leave request has already been done on this period. +FirstDayOfHoliday=First day of vacation +LastDayOfHoliday=Last day of vacation +BoxTitleLastLeaveRequests=Latest %s modified leave requests +HolidaysMonthlyUpdate=Monthly update +ManualUpdate=Manual update +HolidaysCancelation=Leave request cancelation +EmployeeLastname=Employee last name +EmployeeFirstname=Employee first name +TypeWasDisabledOrRemoved=Leave type (id %s) was disabled or removed +LastHolidays=Latest %s leave requests +AllHolidays=All leave requests +HalfDay=Half day +NotTheAssignedApprover=You are not the assigned approver +LEAVE_PAID=Paid vacation +LEAVE_SICK=Sick leave +LEAVE_OTHER=Other leave +LEAVE_PAID_FR=Paid vacation +## Configuration du Module ## +LastUpdateCP=Latest automatic update of leave allocation +MonthOfLastMonthlyUpdate=Month of latest automatic update of leave allocation +UpdateConfCPOK=Updated successfully. +Module27130Name= Management of leave requests +Module27130Desc= Management of leave requests +ErrorMailNotSend=An error occurred while sending email: +NoticePeriod=Notice period +#Messages +HolidaysToValidate=Validate leave requests +HolidaysToValidateBody=Below is a leave request to validate +HolidaysToValidateDelay=This leave request will take place within a period of less than %s days. +HolidaysToValidateAlertSolde=The user who made this leave request does not have enough available days. +HolidaysValidated=Validated leave requests +HolidaysValidatedBody=Your leave request for %s to %s has been validated. +HolidaysRefused=Request denied +HolidaysRefusedBody=Your leave request for %s to %s has been denied for the following reason: +HolidaysCanceled=Canceled leaved request +HolidaysCanceledBody=Your leave request for %s to %s has been canceled. +FollowedByACounter=1: This type of leave need to be followed by a counter. Counter is incremented manually or automatically and when a leave request is validated, counter is decremented.
    0: Not followed by a counter. +NoLeaveWithCounterDefined=There is no leave types defined that need to be followed by a counter +GoIntoDictionaryHolidayTypes=Go into Home - Setup - Dictionaries - Type of leave to setup the different types of leaves. +HolidaySetup=Setup of module Holiday +HolidaysNumberingModules=Leave requests numbering models +TemplatePDFHolidays=Template for leave requests PDF +FreeLegalTextOnHolidays=Free text on PDF +WatermarkOnDraftHolidayCards=Watermarks on draft leave requests +HolidaysToApprove=Holidays to approve +NobodyHasPermissionToValidateHolidays=Nobody has permission to validate holidays diff --git a/htdocs/langs/bn_IN/hrm.lang b/htdocs/langs/bn_IN/hrm.lang new file mode 100644 index 00000000000..3697c47e30d --- /dev/null +++ b/htdocs/langs/bn_IN/hrm.lang @@ -0,0 +1,18 @@ +# Dolibarr language file - en_US - hrm +# Admin +HRM_EMAIL_EXTERNAL_SERVICE=Email to prevent HRM external service +Establishments=Establishments +Establishment=Establishment +NewEstablishment=New establishment +DeleteEstablishment=Delete establishment +ConfirmDeleteEstablishment=Are you sure you wish to delete this establishment? +OpenEtablishment=Open establishment +CloseEtablishment=Close establishment +# Dictionary +DictionaryPublicHolidays=HRM - Public holidays +DictionaryDepartment=HRM - Department list +DictionaryFunction=HRM - Function list +# Module +Employees=Employees +Employee=Employee +NewEmployee=New employee diff --git a/htdocs/langs/bn_IN/install.lang b/htdocs/langs/bn_IN/install.lang new file mode 100644 index 00000000000..f67dff57184 --- /dev/null +++ b/htdocs/langs/bn_IN/install.lang @@ -0,0 +1,223 @@ +# Dolibarr language file - Source file is en_US - install +InstallEasy=Just follow the instructions step by step. +MiscellaneousChecks=Prerequisites check +ConfFileExists=Configuration file %s exists. +ConfFileDoesNotExistsAndCouldNotBeCreated=Configuration file %s does not exist and could not be created! +ConfFileCouldBeCreated=Configuration file %s could be created. +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=Configuration file %s is writable. +ConfFileMustBeAFileNotADir=Configuration file %s must be a file, not a directory. +ConfFileReload=Reloading parameters from configuration file. +PHPSupportSessions=This PHP supports sessions. +PHPSupportPOSTGETOk=This PHP supports variables POST and 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. +PHPSupportCalendar=This PHP supports calendars extensions. +PHPSupportUTF8=This PHP supports UTF8 functions. +PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. +PHPSupport=This PHP supports %s functions. +PHPMemoryOK=Your PHP max session memory is set to %s. This should be enough. +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. +ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. +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. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. +ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. +ErrorDirDoesNotExists=Directory %s does not exist. +ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. +ErrorWrongValueForParameter=You may have typed a wrong value for parameter '%s'. +ErrorFailedToCreateDatabase=Failed to create database '%s'. +ErrorFailedToConnectToDatabase=Failed to connect to database '%s'. +ErrorDatabaseVersionTooLow=Database version (%s) too old. Version %s or higher is required. +ErrorPHPVersionTooLow=PHP version too old. Version %s is required. +ErrorConnectedButDatabaseNotFound=Connection to server successful but database '%s' not found. +ErrorDatabaseAlreadyExists=Database '%s' already exists. +IfDatabaseNotExistsGoBackAndUncheckCreate=If the database does not exist, go back and check option "Create database". +IfDatabaseExistsGoBackAndCheckCreate=If database already exists, go back and uncheck "Create database" option. +WarningBrowserTooOld=Version of browser is too old. Upgrading your browser to a recent version of Firefox, Chrome or Opera is highly recommended. +PHPVersion=PHP Version +License=Using license +ConfigurationFile=Configuration file +WebPagesDirectory=Directory where web pages are stored +DocumentsDirectory=Directory to store uploaded and generated documents +URLRoot=URL Root +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=Driver type +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. +DatabaseServer=Database server +DatabaseName=Database name +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=Password for Dolibarr database owner. +CreateDatabase=Create database +CreateUser=Create user account or grant user account permission on the Dolibarr database +DatabaseSuperUserAccess=Database server - Superuser access +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 +ServerConnection=Server connection +DatabaseCreation=Database creation +CreateDatabaseObjects=Database objects creation +ReferenceDataLoading=Reference data loading +TablesAndPrimaryKeysCreation=Tables and Primary keys creation +CreateTableAndPrimaryKey=Create table %s +CreateOtherKeysForTable=Create foreign keys and indexes for table %s +OtherKeysCreation=Foreign keys and indexes creation +FunctionsCreation=Functions creation +AdminAccountCreation=Administrator login creation +PleaseTypePassword=Please type a password, empty passwords are not allowed! +PleaseTypeALogin=Please type a login! +PasswordsMismatch=Passwords differs, please try again! +SetupEnd=End of setup +SystemIsInstalled=This installation is complete. +SystemIsUpgraded=Dolibarr has been upgraded successfully. +YouNeedToPersonalizeSetup=You need to configure Dolibarr to suit your needs (appearance, features, ...). To do this, please follow the link below: +AdminLoginCreatedSuccessfuly=Dolibarr administrator login '%s' created successfully. +GoToDolibarr=Go to Dolibarr +GoToSetupArea=Go to Dolibarr (setup area) +MigrationNotFinished=The database version is not completely up to date: run the upgrade process again. +GoToUpgradePage=Go to upgrade page again +WithNoSlashAtTheEnd=Without the slash "/" at the end +DirectoryRecommendation=IMPORTANT: You must use a directory that is outside of the web pages (so do not use a subdirectory of previous parameter). +LoginAlreadyExists=Already exists +DolibarrAdminLogin=Dolibarr admin login +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 +ChoosedMigrateScript=Choose migration script +DataMigration=Database migration (data) +DatabaseMigration=Database migration (structure + some data) +ProcessMigrateScript=Script processing +ChooseYourSetupMode=Choose your setup mode and click "Start"... +FreshInstall=Fresh install +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=Upgrade +UpgradeDesc=Use this mode if you have replaced old Dolibarr files with files from a newer version. This will upgrade your database and data. +Start=Start +InstallNotAllowed=Setup not allowed by conf.php permissions +YouMustCreateWithPermission=You must create file %s and set write permissions on it for the web server during install process. +CorrectProblemAndReloadPage=Please fix the problem and press F5 to reload the page. +AlreadyDone=Already migrated +DatabaseVersion=Database version +ServerVersion=Database server version +YouMustCreateItAndAllowServerToWrite=You must create this directory and allow for the web server to write into it. +DBSortingCollation=Character sorting order +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. +OrphelinsPaymentsDetectedByMethod=Orphans payment detected by method %s +RemoveItManuallyAndPressF5ToContinue=Remove it manually and press F5 to continue. +FieldRenamed=Field renamed +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=Recommended choice to install version %s from your current version %s +InstallChoiceSuggested=Install choice suggested by installer. +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=If this name is correct and that database does not exist yet, you must check option "Create database". +OpenBaseDir=PHP openbasedir parameter +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 +MigrationShippingDelivery=Upgrade storage of shipping +MigrationShippingDelivery2=Upgrade storage of shipping 2 +MigrationFinished=Migration finished +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. +ActivateModule=Activate module %s +ShowEditTechnicalParameters=Click here to show/edit advanced parameters (expert mode) +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 +######### +# upgrade +MigrationFixData=Fix for denormalized data +MigrationOrder=Data migration for customer's orders +MigrationSupplierOrder=Data migration for vendor's orders +MigrationProposal=Data migration for commercial proposals +MigrationInvoice=Data migration for customer's invoices +MigrationContract=Data migration for contracts +MigrationSuccessfullUpdate=Upgrade successful +MigrationUpdateFailed=Failed upgrade process +MigrationRelationshipTables=Data migration for relationship tables (%s) +MigrationPaymentsUpdate=Payment data correction +MigrationPaymentsNumberToUpdate=%s payment(s) to update +MigrationProcessPaymentUpdate=Update payment(s) %s +MigrationPaymentsNothingToUpdate=No more things to do +MigrationPaymentsNothingUpdatable=No more payments that can be corrected +MigrationContractsUpdate=Contract data correction +MigrationContractsNumberToUpdate=%s contract(s) to update +MigrationContractsLineCreation=Create contract line for contract ref %s +MigrationContractsNothingToUpdate=No more things to do +MigrationContractsFieldDontExist=Field fk_facture does not exist anymore. Nothing to do. +MigrationContractsEmptyDatesUpdate=Contract empty date correction +MigrationContractsEmptyDatesUpdateSuccess=Contract empty date correction done successfully +MigrationContractsEmptyDatesNothingToUpdate=No contract empty date to correct +MigrationContractsEmptyCreationDatesNothingToUpdate=No contract creation date to correct +MigrationContractsInvalidDatesUpdate=Bad value date contract correction +MigrationContractsInvalidDateFix=Correct contract %s (Contract date=%s, Starting service date min=%s) +MigrationContractsInvalidDatesNumber=%s contracts modified +MigrationContractsInvalidDatesNothingToUpdate=No date with bad value to correct +MigrationContractsIncoherentCreationDateUpdate=Bad value contract creation date correction +MigrationContractsIncoherentCreationDateUpdateSuccess=Bad value contract creation date correction done successfully +MigrationContractsIncoherentCreationDateNothingToUpdate=No bad value for contract creation date to correct +MigrationReopeningContracts=Open contract closed by error +MigrationReopenThisContract=Reopen contract %s +MigrationReopenedContractsNumber=%s contracts modified +MigrationReopeningContractsNothingToUpdate=No closed contract to open +MigrationBankTransfertsUpdate=Update links between bank entry and a bank transfer +MigrationBankTransfertsNothingToUpdate=All links are up to date +MigrationShipmentOrderMatching=Sendings receipt update +MigrationDeliveryOrderMatching=Delivery receipt update +MigrationDeliveryDetail=Delivery update +MigrationStockDetail=Update stock value of products +MigrationMenusDetail=Update dynamic menus tables +MigrationDeliveryAddress=Update delivery address in shipments +MigrationProjectTaskActors=Data migration for table llx_projet_task_actors +MigrationProjectUserResp=Data migration field fk_user_resp of llx_projet to llx_element_contact +MigrationProjectTaskTime=Update time spent in seconds +MigrationActioncommElement=Update data on actions +MigrationPaymentMode=Data migration for payment type +MigrationCategorieAssociation=Migration of categories +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 +MigrationFieldsSocialNetworks=Migration of users fields social networks (%s) +MigrationReloadModule=Reload module %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. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/bn_IN/interventions.lang b/htdocs/langs/bn_IN/interventions.lang new file mode 100644 index 00000000000..e5936f8246e --- /dev/null +++ b/htdocs/langs/bn_IN/interventions.lang @@ -0,0 +1,66 @@ +# Dolibarr language file - Source file is en_US - interventions +Intervention=Intervention +Interventions=Interventions +InterventionCard=Intervention card +NewIntervention=New intervention +AddIntervention=Create intervention +ChangeIntoRepeatableIntervention=Change to repeatable intervention +ListOfInterventions=List of interventions +ActionsOnFicheInter=Actions on intervention +LastInterventions=Latest %s interventions +AllInterventions=All interventions +CreateDraftIntervention=Create draft +InterventionContact=Intervention contact +DeleteIntervention=Delete intervention +ValidateIntervention=Validate intervention +ModifyIntervention=Modify intervention +DeleteInterventionLine=Delete intervention line +ConfirmDeleteIntervention=Are you sure you want to delete this intervention? +ConfirmValidateIntervention=Are you sure you want to validate this intervention under name %s? +ConfirmModifyIntervention=Are you sure you want to modify this intervention? +ConfirmDeleteInterventionLine=Are you sure you want to delete this intervention line? +ConfirmCloneIntervention=Are you sure you want to clone this intervention? +NameAndSignatureOfInternalContact=Name and signature of intervening: +NameAndSignatureOfExternalContact=Name and signature of customer: +DocumentModelStandard=Standard document model for interventions +InterventionCardsAndInterventionLines=Interventions and lines of interventions +InterventionClassifyBilled=Classify "Billed" +InterventionClassifyUnBilled=Classify "Unbilled" +InterventionClassifyDone=Classify "Done" +StatusInterInvoiced=Billed +SendInterventionRef=Submission of intervention %s +SendInterventionByMail=Send intervention by email +InterventionCreatedInDolibarr=Intervention %s created +InterventionValidatedInDolibarr=Intervention %s validated +InterventionModifiedInDolibarr=Intervention %s modified +InterventionClassifiedBilledInDolibarr=Intervention %s set as billed +InterventionClassifiedUnbilledInDolibarr=Intervention %s set as unbilled +InterventionSentByEMail=Intervention %s sent by email +InterventionDeletedInDolibarr=Intervention %s deleted +InterventionsArea=Interventions area +DraftFichinter=Draft interventions +LastModifiedInterventions=Latest %s modified interventions +FichinterToProcess=Interventions to process +TypeContact_fichinter_external_CUSTOMER=Following-up customer contact +PrintProductsOnFichinter=Print also lines of type "product" (not only services) on intervention card +PrintProductsOnFichinterDetails=interventions generated from orders +UseServicesDurationOnFichinter=Use services duration for interventions generated from orders +UseDurationOnFichinter=Hides the duration field for intervention records +UseDateWithoutHourOnFichinter=Hides hours and minutes off the date field for intervention records +InterventionStatistics=Statistics of interventions +NbOfinterventions=No. of intervention cards +NumberOfInterventionsByMonth=No. of intervention cards by month (date of validation) +AmountOfInteventionNotIncludedByDefault=Amount of intervention is not included by default into profit (in most cases, timesheets are used to count time spent). Add option PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT to 1 into home-setup-other to include them. +InterId=Intervention id +InterRef=Intervention ref. +InterDateCreation=Date creation intervention +InterDuration=Duration intervention +InterStatus=Status intervention +InterNote=Note intervention +InterLine=Line of intervention +InterLineId=Line id intervention +InterLineDate=Line date intervention +InterLineDuration=Line duration intervention +InterLineDesc=Line description intervention +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/bn_IN/languages.lang b/htdocs/langs/bn_IN/languages.lang new file mode 100644 index 00000000000..6185183161b --- /dev/null +++ b/htdocs/langs/bn_IN/languages.lang @@ -0,0 +1,89 @@ +# Dolibarr language file - Source file is en_US - languages +Language_ar_AR=Arabic +Language_ar_EG=Arabic (Egypt) +Language_ar_SA=Arabic +Language_bn_BD=Bengali +Language_bg_BG=Bulgarian +Language_bs_BA=Bosnian +Language_ca_ES=Catalan +Language_cs_CZ=Czech +Language_da_DA=Danish +Language_da_DK=Danish +Language_de_DE=German +Language_de_AT=German (Austria) +Language_de_CH=German (Switzerland) +Language_el_GR=Greek +Language_el_CY=Greek (Cyprus) +Language_en_AU=English (Australia) +Language_en_CA=English (Canada) +Language_en_GB=English (United Kingdom) +Language_en_IN=English (India) +Language_en_NZ=English (New Zealand) +Language_en_SA=English (Saudi Arabia) +Language_en_US=English (United States) +Language_en_ZA=English (South Africa) +Language_es_ES=Spanish +Language_es_AR=Spanish (Argentina) +Language_es_BO=Spanish (Bolivia) +Language_es_CL=Spanish (Chile) +Language_es_CO=Spanish (Colombia) +Language_es_DO=Spanish (Dominican Republic) +Language_es_EC=Spanish (Ecuador) +Language_es_HN=Spanish (Honduras) +Language_es_MX=Spanish (Mexico) +Language_es_PA=Spanish (Panama) +Language_es_PY=Spanish (Paraguay) +Language_es_PE=Spanish (Peru) +Language_es_PR=Spanish (Puerto Rico) +Language_es_UY=Spanish (Uruguay) +Language_es_VE=Spanish (Venezuela) +Language_et_EE=Estonian +Language_eu_ES=Basque +Language_fa_IR=Persian +Language_fi_FI=Finnish +Language_fr_BE=French (Belgium) +Language_fr_CA=French (Canada) +Language_fr_CH=French (Switzerland) +Language_fr_FR=French +Language_fr_NC=French (New Caledonia) +Language_fy_NL=Frisian +Language_he_IL=Hebrew +Language_hr_HR=Croatian +Language_hu_HU=Hungarian +Language_id_ID=Indonesian +Language_is_IS=Icelandic +Language_it_IT=Italian +Language_ja_JP=Japanese +Language_ka_GE=Georgian +Language_km_KH=Khmer +Language_kn_IN=Kannada +Language_ko_KR=Korean +Language_lo_LA=Lao +Language_lt_LT=Lithuanian +Language_lv_LV=Latvian +Language_mk_MK=Macedonian +Language_mn_MN=Mongolian +Language_nb_NO=Norwegian (Bokmål) +Language_nl_BE=Dutch (Belgium) +Language_nl_NL=Dutch +Language_pl_PL=Polish +Language_pt_BR=Portuguese (Brazil) +Language_pt_PT=Portuguese +Language_ro_RO=Romanian +Language_ru_RU=Russian +Language_ru_UA=Russian (Ukraine) +Language_tr_TR=Turkish +Language_sl_SI=Slovenian +Language_sv_SV=Swedish +Language_sv_SE=Swedish +Language_sq_AL=Albanian +Language_sk_SK=Slovakian +Language_sr_RS=Serbian +Language_sw_SW=Kiswahili +Language_th_TH=Thai +Language_uk_UA=Ukrainian +Language_uz_UZ=Uzbek +Language_vi_VN=Vietnamese +Language_zh_CN=Chinese +Language_zh_TW=Chinese (Traditional) +Language_bh_MY=Malay diff --git a/htdocs/langs/bn_IN/ldap.lang b/htdocs/langs/bn_IN/ldap.lang new file mode 100644 index 00000000000..8b6f0864215 --- /dev/null +++ b/htdocs/langs/bn_IN/ldap.lang @@ -0,0 +1,27 @@ +# Dolibarr language file - Source file is en_US - ldap +YouMustChangePassNextLogon=Password for user %s on the domain %s must be changed. +UserMustChangePassNextLogon=User must change password on the domain %s +LDAPInformationsForThisContact=Information in LDAP database for this contact +LDAPInformationsForThisUser=Information in LDAP database for this user +LDAPInformationsForThisGroup=Information in LDAP database for this group +LDAPInformationsForThisMember=Information in LDAP database for this member +LDAPInformationsForThisMemberType=Information in LDAP database for this member type +LDAPAttributes=LDAP attributes +LDAPCard=LDAP card +LDAPRecordNotFound=Record not found in LDAP database +LDAPUsers=Users in LDAP database +LDAPFieldStatus=Status +LDAPFieldFirstSubscriptionDate=First subscription date +LDAPFieldFirstSubscriptionAmount=First subscription amount +LDAPFieldLastSubscriptionDate=Latest subscription date +LDAPFieldLastSubscriptionAmount=Latest subscription amount +LDAPFieldSkype=Skype id +LDAPFieldSkypeExample=Example: skypeName +UserSynchronized=User synchronized +GroupSynchronized=Group synchronized +MemberSynchronized=Member synchronized +MemberTypeSynchronized=Member type synchronized +ContactSynchronized=Contact synchronized +ForceSynchronize=Force synchronizing Dolibarr -> LDAP +ErrorFailedToReadLDAP=Failed to read LDAP database. Check LDAP module setup and database accessibility. +PasswordOfUserInLDAP=Password of user in LDAP diff --git a/htdocs/langs/bn_IN/link.lang b/htdocs/langs/bn_IN/link.lang new file mode 100644 index 00000000000..1ffcd41a18b --- /dev/null +++ b/htdocs/langs/bn_IN/link.lang @@ -0,0 +1,11 @@ +# Dolibarr language file - Source file is en_US - languages +LinkANewFile=Link a new file/document +LinkedFiles=Linked files and documents +NoLinkFound=No registered links +LinkComplete=The file has been linked successfully +ErrorFileNotLinked=The file could not be linked +LinkRemoved=The link %s has been removed +ErrorFailedToDeleteLink= Failed to remove link '%s' +ErrorFailedToUpdateLink= Failed to update link '%s' +URLToLink=URL to link +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/bn_IN/loan.lang b/htdocs/langs/bn_IN/loan.lang new file mode 100644 index 00000000000..534dee08867 --- /dev/null +++ b/htdocs/langs/bn_IN/loan.lang @@ -0,0 +1,31 @@ +# Dolibarr language file - Source file is en_US - loan +Loan=Loan +Loans=Loans +NewLoan=New Loan +ShowLoan=Show Loan +PaymentLoan=Loan payment +LoanPayment=Loan payment +ShowLoanPayment=Show Loan Payment +LoanCapital=Capital +Insurance=Insurance +Interest=Interest +Nbterms=Number of terms +Term=Term +LoanAccountancyCapitalCode=Accounting account capital +LoanAccountancyInsuranceCode=Accounting account insurance +LoanAccountancyInterestCode=Accounting account interest +ConfirmDeleteLoan=Confirm deleting this loan +LoanDeleted=Loan Deleted Successfully +ConfirmPayLoan=Confirm classify paid this loan +LoanPaid=Loan Paid +ListLoanAssociatedProject=List of loan associated with the project +AddLoan=Create loan +FinancialCommitment=Financial commitment +InterestAmount=Interest +CapitalRemain=Capital remain +# Admin +ConfigLoan=Configuration of the module loan +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 diff --git a/htdocs/langs/bn_IN/mailmanspip.lang b/htdocs/langs/bn_IN/mailmanspip.lang new file mode 100644 index 00000000000..bab4b3576b4 --- /dev/null +++ b/htdocs/langs/bn_IN/mailmanspip.lang @@ -0,0 +1,27 @@ +# Dolibarr language file - Source file is en_US - mailmanspip +MailmanSpipSetup=Mailman and SPIP module Setup +MailmanTitle=Mailman mailing list system +TestSubscribe=To test subscription to Mailman lists +TestUnSubscribe=To test unsubscribe from Mailman lists +MailmanCreationSuccess=Subscription test was executed successfully +MailmanDeletionSuccess=Unsubscription test was executed successfully +SynchroMailManEnabled=A Mailman update will be performed +SynchroSpipEnabled=A Spip update will be performed +DescADHERENT_MAILMAN_ADMINPW=Mailman administrator password +DescADHERENT_MAILMAN_URL=URL for Mailman subscriptions +DescADHERENT_MAILMAN_UNSUB_URL=URL for Mailman unsubscriptions +DescADHERENT_MAILMAN_LISTS=List(s) for automatic inscription of new members (separated by a comma) +SPIPTitle=SPIP Content Management System +DescADHERENT_SPIP_SERVEUR=SPIP Server +DescADHERENT_SPIP_DB=SPIP database name +DescADHERENT_SPIP_USER=SPIP database login +DescADHERENT_SPIP_PASS=SPIP database password +AddIntoSpip=Add into SPIP +AddIntoSpipConfirmation=Are you sure you want to add this member into SPIP? +AddIntoSpipError=Failed to add the user in SPIP +DeleteIntoSpip=Remove from SPIP +DeleteIntoSpipConfirmation=Are you sure you want to remove this member from SPIP? +DeleteIntoSpipError=Failed to suppress the user from SPIP +SPIPConnectionFailed=Failed to connect to SPIP +SuccessToAddToMailmanList=%s successfully added to mailman list %s or SPIP database +SuccessToRemoveToMailmanList=%s successfully removed from mailman list %s or SPIP database diff --git a/htdocs/langs/bn_IN/mails.lang b/htdocs/langs/bn_IN/mails.lang new file mode 100644 index 00000000000..7b3bfd3852a --- /dev/null +++ b/htdocs/langs/bn_IN/mails.lang @@ -0,0 +1,170 @@ +# Dolibarr language file - Source file is en_US - mails +Mailing=EMailing +EMailing=EMailing +EMailings=EMailings +AllEMailings=All eMailings +MailCard=EMailing card +MailRecipients=Recipients +MailRecipient=Recipient +MailTitle=Description +MailFrom=Sender +MailErrorsTo=Errors to +MailReply=Reply to +MailTo=Receiver(s) +MailToUsers=To user(s) +MailCC=Copy to +MailToCCUsers=Copy to users(s) +MailCCC=Cached copy to +MailTopic=Email topic +MailText=Message +MailFile=Attached files +MailMessage=Email body +SubjectNotIn=Not in Subject +BodyNotIn=Not in Body +ShowEMailing=Show emailing +ListOfEMailings=List of emailings +NewMailing=New emailing +EditMailing=Edit emailing +ResetMailing=Resend emailing +DeleteMailing=Delete emailing +DeleteAMailing=Delete an emailing +PreviewMailing=Preview emailing +CreateMailing=Create emailing +TestMailing=Test email +ValidMailing=Valid emailing +MailingStatusDraft=Draft +MailingStatusValidated=Validated +MailingStatusSent=Sent +MailingStatusSentPartialy=Sent partially +MailingStatusSentCompletely=Sent completely +MailingStatusError=Error +MailingStatusNotSent=Not sent +MailSuccessfulySent=Email (from %s to %s) successfully accepted for delivery +MailingSuccessfullyValidated=EMailing successfully validated +MailUnsubcribe=Unsubscribe +MailingStatusNotContact=Don't contact anymore +MailingStatusReadAndUnsubscribe=Read and unsubscribe +ErrorMailRecipientIsEmpty=Email recipient is empty +WarningNoEMailsAdded=No new Email to add to recipient's list. +ConfirmValidMailing=Are you sure you want to validate this emailing? +ConfirmResetMailing=Warning, by re-initializing emailing %s, you will allow the re-sending this email in a bulk mailing. Are you sure you want to do this? +ConfirmDeleteMailing=Are you sure you want to delete this emailing? +NbOfUniqueEMails=No. of unique emails +NbOfEMails=No. of EMails +TotalNbOfDistinctRecipients=Number of distinct recipients +NoTargetYet=No recipients defined yet (Go on tab 'Recipients') +NoRecipientEmail=No recipient email for %s +RemoveRecipient=Remove recipient +YouCanAddYourOwnPredefindedListHere=To create your email selector module, see htdocs/core/modules/mailings/README. +EMailTestSubstitutionReplacedByGenericValues=When using test mode, substitutions variables are replaced by generic values +MailingAddFile=Attach this file +NoAttachedFiles=No attached files +BadEMail=Bad value for Email +ConfirmCloneEMailing=Are you sure you want to clone this emailing? +CloneContent=Clone message +CloneReceivers=Cloner recipients +DateLastSend=Date of latest sending +DateSending=Date sending +SentTo=Sent to %s +MailingStatusRead=Read +YourMailUnsubcribeOK=The email %s is correctly unsubscribe from mailing list +ActivateCheckReadKey=Key used to encrypt URL used for "Read Receipt" and "Unsubscribe" feature +EMailSentToNRecipients=Email sent to %s recipients. +EMailSentForNElements=Email sent for %s elements. +XTargetsAdded=%s recipients added into target list +OnlyPDFattachmentSupported=If the PDF documents were already generated for the objects to send, they will be attached to email. If not, no email will be sent (also, note that only pdf documents are supported as attachments in mass sending in this version). +AllRecipientSelected=The recipients of the %s record selected (if their email is known). +GroupEmails=Group emails +OneEmailPerRecipient=One email per recipient (by default, one email per record selected) +WarningIfYouCheckOneRecipientPerEmail=Warning, if you check this box, it means only one email will be sent for several different record selected, so, if your message contains substitution variables that refers to data of a record, it becomes not possible to replace them. +ResultOfMailSending=Result of mass Email sending +NbSelected=Number selected +NbIgnored=Number ignored +NbSent=Number sent +SentXXXmessages=%s message(s) sent. +ConfirmUnvalidateEmailing=Are you sure you want to change email %s to draft status? +MailingModuleDescContactsWithThirdpartyFilter=Contact with customer filters +MailingModuleDescContactsByCompanyCategory=Contacts by third-party category +MailingModuleDescContactsByCategory=Contacts by categories +MailingModuleDescContactsByFunction=Contacts by position +MailingModuleDescEmailsFromFile=Emails from file +MailingModuleDescEmailsFromUser=Emails input by user +MailingModuleDescDolibarrUsers=Users with Emails +MailingModuleDescThirdPartiesByCategories=Third parties (by categories) +SendingFromWebInterfaceIsNotAllowed=Sending from web interface is not allowed. + +# Libelle des modules de liste de destinataires mailing +LineInFile=Line %s in file +RecipientSelectionModules=Defined requests for recipient's selection +MailSelectedRecipients=Selected recipients +MailingArea=EMailings area +LastMailings=Latest %s emailings +TargetsStatistics=Targets statistics +NbOfCompaniesContacts=Unique contacts/addresses +MailNoChangePossible=Recipients for validated emailing can't be changed +SearchAMailing=Search mailing +SendMailing=Send emailing +SentBy=Sent by +MailingNeedCommand=Sending an emailing can be performed from command line. Ask your server administrator to launch the following command to send the emailing to all recipients: +MailingNeedCommand2=You can however send them online by adding parameter MAILING_LIMIT_SENDBYWEB with value of max number of emails you want to send by session. For this, go on Home - Setup - Other. +ConfirmSendingEmailing=If you want to send emailing directly from this screen, please confirm you are sure you want to send emailing now from your browser ? +LimitSendingEmailing=Note: Sending of emailings from web interface is done in several times for security and timeout reasons, %s recipients at a time for each sending session. +TargetsReset=Clear list +ToClearAllRecipientsClickHere=Click here to clear the recipient list for this emailing +ToAddRecipientsChooseHere=Add recipients by choosing from the lists +NbOfEMailingsReceived=Mass emailings received +NbOfEMailingsSend=Mass emailings sent +IdRecord=ID record +DeliveryReceipt=Delivery Ack. +YouCanUseCommaSeparatorForSeveralRecipients=You can use the comma separator to specify several recipients. +TagCheckMail=Track mail opening +TagUnsubscribe=Unsubscribe link +TagSignature=Signature of sending user +EMailRecipient=Recipient Email +TagMailtoEmail=Recipient Email (including html "mailto:" link) +NoEmailSentBadSenderOrRecipientEmail=No email sent. Bad sender or recipient email. Verify user profile. +# Module Notifications +Notifications=Notifications +NoNotificationsWillBeSent=No email notifications are planned for this event and company +ANotificationsWillBeSent=1 notification will be sent by email +SomeNotificationsWillBeSent=%s notifications will be sent by email +AddNewNotification=Activate a new email notification target/event +ListOfActiveNotifications=List all active targets/events for email notification +ListOfNotificationsDone=List all email notifications sent +MailSendSetupIs=Configuration of email sending has been setup to '%s'. This mode can't be used to send mass emailing. +MailSendSetupIs2=You must first go, with an admin account, into menu %sHome - Setup - EMails%s to change parameter '%s' to use mode '%s'. With this mode, you can enter setup of the SMTP server provided by your Internet Service Provider and use Mass emailing feature. +MailSendSetupIs3=If you have any questions on how to setup your SMTP server, you can ask to %s. +YouCanAlsoUseSupervisorKeyword=You can also add the keyword __SUPERVISOREMAIL__ to have email being sent to the supervisor of user (works only if an email is defined for this supervisor) +NbOfTargetedContacts=Current number of targeted contact emails +UseFormatFileEmailToTarget=Imported file must have format email;name;firstname;other +UseFormatInputEmailToTarget=Enter a string with format email;name;firstname;other +MailAdvTargetRecipients=Recipients (advanced selection) +AdvTgtTitle=Fill input fields to preselect the third parties or contacts/addresses to target +AdvTgtSearchTextHelp=Use %% as wildcards. For example to find all item like jean, joe, jim, you can input j%%, you can also use ; as separator for value, and use ! for except this value. For example jean;joe;jim%%;!jimo;!jima% will target all jean, joe, start with jim but not jimo and not everything that starts with jima +AdvTgtSearchIntHelp=Use interval to select int or float value +AdvTgtMinVal=Minimum value +AdvTgtMaxVal=Maximum value +AdvTgtSearchDtHelp=Use interval to select date value +AdvTgtStartDt=Start dt. +AdvTgtEndDt=End dt. +AdvTgtTypeOfIncudeHelp=Target Email of third party and email of contact of the third party, or just third-party email or just contact email +AdvTgtTypeOfIncude=Type of targeted email +AdvTgtContactHelp=Use only if you target contact into "Type of targeted email" +AddAll=Add all +RemoveAll=Remove all +ItemsCount=Item(s) +AdvTgtNameTemplate=Filter name +AdvTgtAddContact=Add emails according to criteria +AdvTgtLoadFilter=Load filter +AdvTgtDeleteFilter=Delete filter +AdvTgtSaveFilter=Save filter +AdvTgtCreateFilter=Create filter +AdvTgtOrCreateNewFilter=Name of new filter +NoContactWithCategoryFound=No contact/address with a category found +NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found +OutGoingEmailSetup=Outgoing email setup +InGoingEmailSetup=Incoming email setup +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) +DefaultOutgoingEmailSetup=Default outgoing email setup +Information=Information +ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/bn_IN/main.lang b/htdocs/langs/bn_IN/main.lang new file mode 100644 index 00000000000..824a5e495b8 --- /dev/null +++ b/htdocs/langs/bn_IN/main.lang @@ -0,0 +1,1035 @@ +# Dolibarr language file - Source file is en_US - main +DIRECTION=ltr +# Note for Chinese: +# msungstdlight or cid0ct are for traditional Chinese (traditional does not render with Ubuntu pdf reader) +# stsongstdlight or cid0cs are for simplified Chinese +# To read Chinese pdf with Linux: sudo apt-get install poppler-data +FONTFORPDF=helvetica +FONTSIZEFORPDF=10 +SeparatorDecimal=. +SeparatorThousand=, +FormatDateShort=%m/%d/%Y +FormatDateShortInput=%m/%d/%Y +FormatDateShortJava=MM/dd/yyyy +FormatDateShortJavaInput=MM/dd/yyyy +FormatDateShortJQuery=mm/dd/yy +FormatDateShortJQueryInput=mm/dd/yy +FormatHourShortJQuery=HH:MI +FormatHourShort=%I:%M %p +FormatHourShortDuration=%H:%M +FormatDateTextShort=%b %d, %Y +FormatDateText=%B %d, %Y +FormatDateHourShort=%m/%d/%Y %I:%M %p +FormatDateHourSecShort=%m/%d/%Y %I:%M:%S %p +FormatDateHourTextShort=%b %d, %Y, %I:%M %p +FormatDateHourText=%B %d, %Y, %I:%M %p +DatabaseConnection=Database connection +NoTemplateDefined=No template available for this email type +AvailableVariables=Available substitution variables +NoTranslation=No translation +Translation=Translation +EmptySearchString=Enter a non empty search string +NoRecordFound=No record found +NoRecordDeleted=No record deleted +NotEnoughDataYet=Not enough data +NoError=No error +Error=Error +Errors=Errors +ErrorFieldRequired=Field '%s' is required +ErrorFieldFormat=Field '%s' has a bad value +ErrorFileDoesNotExists=File %s does not exist +ErrorFailedToOpenFile=Failed to open file %s +ErrorCanNotCreateDir=Cannot create dir %s +ErrorCanNotReadDir=Cannot read dir %s +ErrorConstantNotDefined=Parameter %s not defined +ErrorUnknown=Unknown error +ErrorSQL=SQL Error +ErrorLogoFileNotFound=Logo file '%s' was not found +ErrorGoToGlobalSetup=Go to 'Company/Organization' setup to fix this +ErrorGoToModuleSetup=Go to Module setup to fix this +ErrorFailedToSendMail=Failed to send mail (sender=%s, receiver=%s) +ErrorFileNotUploaded=File was not uploaded. Check that size does not exceed maximum allowed, that free space is available on disk and that there is not already a file with same name in this directory. +ErrorInternalErrorDetected=Error detected +ErrorWrongHostParameter=Wrong host parameter +ErrorYourCountryIsNotDefined=Your country is not defined. Go to Home-Setup-Edit and post the form again. +ErrorRecordIsUsedByChild=Failed to delete this record. This record is used by at least one child record. +ErrorWrongValue=Wrong value +ErrorWrongValueForParameterX=Wrong value for parameter %s +ErrorNoRequestInError=No request in error +ErrorServiceUnavailableTryLater=Service not available at the moment. Try again later. +ErrorDuplicateField=Duplicate value in a unique field +ErrorSomeErrorWereFoundRollbackIsDone=Some errors were found. Changes have been rolled back. +ErrorConfigParameterNotDefined=Parameter %s is not defined in the Dolibarr config file conf.php. +ErrorCantLoadUserFromDolibarrDatabase=Failed to find user %s in Dolibarr database. +ErrorNoVATRateDefinedForSellerCountry=Error, no vat rates defined for country '%s'. +ErrorNoSocialContributionForSellerCountry=Error, no social/fiscal taxes type defined for country '%s'. +ErrorFailedToSaveFile=Error, failed to save file. +ErrorCannotAddThisParentWarehouse=You are trying to add a parent warehouse which is already a child of a existing warehouse +MaxNbOfRecordPerPage=Max. number of records per page +NotAuthorized=You are not authorized to do that. +SetDate=Set date +SelectDate=Select a date +SeeAlso=See also %s +SeeHere=See here +ClickHere=Click here +Here=Here +Apply=Apply +BackgroundColorByDefault=Default background color +FileRenamed=The file was successfully renamed +FileGenerated=The file was successfully generated +FileSaved=The file was successfully saved +FileUploaded=The file was successfully uploaded +FileTransferComplete=File(s) uploaded successfully +FilesDeleted=File(s) successfully deleted +FileWasNotUploaded=A file is selected for attachment but was not yet uploaded. Click on "Attach file" for this. +NbOfEntries=No. of entries +GoToWikiHelpPage=Read online help (Internet access needed) +GoToHelpPage=Read help +RecordSaved=Record saved +RecordDeleted=Record deleted +RecordGenerated=Record generated +LevelOfFeature=Level of features +NotDefined=Not defined +DolibarrInHttpAuthenticationSoPasswordUseless=Dolibarr authentication mode is set to %s in configuration file conf.php.
    This means that the password database is external to Dolibarr, so changing this field may have no effect. +Administrator=Administrator +Undefined=Undefined +PasswordForgotten=Password forgotten? +NoAccount=No account? +SeeAbove=See above +HomeArea=Home +LastConnexion=Last login +PreviousConnexion=Previous login +PreviousValue=Previous value +ConnectedOnMultiCompany=Connected on environment +ConnectedSince=Connected since +AuthenticationMode=Authentication mode +RequestedUrl=Requested URL +DatabaseTypeManager=Database type manager +RequestLastAccessInError=Latest database access request error +ReturnCodeLastAccessInError=Return code for latest database access request error +InformationLastAccessInError=Information for latest database access request error +DolibarrHasDetectedError=Dolibarr has detected a technical error +YouCanSetOptionDolibarrMainProdToZero=You can read log file or set option $dolibarr_main_prod to '0' in your config file to get more information. +InformationToHelpDiagnose=This information can be useful for diagnostic purposes (you can set option $dolibarr_main_prod to '1' to remove such notices) +MoreInformation=More information +TechnicalInformation=Technical information +TechnicalID=Technical ID +LineID=Line ID +NotePublic=Note (public) +NotePrivate=Note (private) +PrecisionUnitIsLimitedToXDecimals=Dolibarr was setup to limit precision of unit prices to %s decimals. +DoTest=Test +ToFilter=Filter +NoFilter=No filter +WarningYouHaveAtLeastOneTaskLate=Warning, you have at least one element that has exceeded the tolerance time. +yes=yes +Yes=Yes +no=no +No=No +All=All +Home=Home +Help=Help +OnlineHelp=Online help +PageWiki=Wiki page +MediaBrowser=Media browser +Always=Always +Never=Never +Under=under +Period=Period +PeriodEndDate=End date for period +SelectedPeriod=Selected period +PreviousPeriod=Previous period +Activate=Activate +Activated=Activated +Closed=Closed +Closed2=Closed +NotClosed=Not closed +Enabled=Enabled +Enable=Enable +Deprecated=Deprecated +Disable=Disable +Disabled=Disabled +Add=Add +AddLink=Add link +RemoveLink=Remove link +AddToDraft=Add to draft +Update=Update +Close=Close +CloseBox=Remove widget from your dashboard +Confirm=Confirm +ConfirmSendCardByMail=Do you really want to send the content of this card by mail to %s? +Delete=Delete +Remove=Remove +Resiliate=Terminate +Cancel=Cancel +Modify=Modify +Edit=Edit +Validate=Validate +ValidateAndApprove=Validate and Approve +ToValidate=To validate +NotValidated=Not validated +Save=Save +SaveAs=Save As +SaveAndStay=Save and stay +SaveAndNew=Save and new +TestConnection=Test connection +ToClone=Clone +ConfirmCloneAsk=Are you sure you want to clone the object %s? +ConfirmClone=Choose data you want to clone: +NoCloneOptionsSpecified=No data to clone defined. +Of=of +Go=Go +Run=Run +CopyOf=Copy of +Show=Show +Hide=Hide +ShowCardHere=Show card +Search=Search +SearchOf=Search +SearchMenuShortCut=Ctrl + shift + f +Valid=Valid +Approve=Approve +Disapprove=Disapprove +ReOpen=Re-Open +Upload=Upload +ToLink=Link +Select=Select +Choose=Choose +Resize=Resize +ResizeOrCrop=Resize or Crop +Recenter=Recenter +Author=Author +User=User +Users=Users +Group=Group +Groups=Groups +NoUserGroupDefined=No user group defined +Password=Password +PasswordRetype=Retype your password +NoteSomeFeaturesAreDisabled=Note that a lot of features/modules are disabled in this demonstration. +Name=Name +NameSlashCompany=Name / Company +Person=Person +Parameter=Parameter +Parameters=Parameters +Value=Value +PersonalValue=Personal value +NewObject=New %s +NewValue=New value +CurrentValue=Current value +Code=Code +Type=Type +Language=Language +MultiLanguage=Multi-language +Note=Note +Title=Title +Label=Label +RefOrLabel=Ref. or label +Info=Log +Family=Family +Description=Description +Designation=Description +DescriptionOfLine=Description of line +DateOfLine=Date of line +DurationOfLine=Duration of line +Model=Doc template +DefaultModel=Default doc template +Action=Event +About=About +Number=Number +NumberByMonth=Number by month +AmountByMonth=Amount by month +Numero=Number +Limit=Limit +Limits=Limits +Logout=Logout +NoLogoutProcessWithAuthMode=No applicative disconnect feature with authentication mode %s +Connection=Login +Setup=Setup +Alert=Alert +MenuWarnings=Alerts +Previous=Previous +Next=Next +Cards=Cards +Card=Card +Now=Now +HourStart=Start hour +Date=Date +DateAndHour=Date and hour +DateToday=Today's date +DateReference=Reference date +DateStart=Start date +DateEnd=End date +DateCreation=Creation date +DateCreationShort=Creat. date +DateModification=Modification date +DateModificationShort=Modif. date +DateLastModification=Latest modification date +DateValidation=Validation date +DateClosing=Closing date +DateDue=Due date +DateValue=Value date +DateValueShort=Value date +DateOperation=Operation date +DateOperationShort=Oper. Date +DateLimit=Limit date +DateRequest=Request date +DateProcess=Process date +DateBuild=Report build date +DatePayment=Date of payment +DateApprove=Approving date +DateApprove2=Approving date (second approval) +RegistrationDate=Registration date +UserCreation=Creation user +UserModification=Modification user +UserValidation=Validation user +UserCreationShort=Creat. user +UserModificationShort=Modif. user +UserValidationShort=Valid. user +DurationYear=year +DurationMonth=month +DurationWeek=week +DurationDay=day +DurationYears=years +DurationMonths=months +DurationWeeks=weeks +DurationDays=days +Year=Year +Month=Month +Week=Week +WeekShort=Week +Day=Day +Hour=Hour +Minute=Minute +Second=Second +Years=Years +Months=Months +Days=Days +days=days +Hours=Hours +Minutes=Minutes +Seconds=Seconds +Weeks=Weeks +Today=Today +Yesterday=Yesterday +Tomorrow=Tomorrow +Morning=Morning +Afternoon=Afternoon +Quadri=Quadri +MonthOfDay=Month of the day +HourShort=H +MinuteShort=mn +Rate=Rate +CurrencyRate=Currency conversion rate +UseLocalTax=Include tax +Bytes=Bytes +KiloBytes=Kilobytes +MegaBytes=Megabytes +GigaBytes=Gigabytes +TeraBytes=Terabytes +UserAuthor=User of creation +UserModif=User of last update +b=b. +Kb=Kb +Mb=Mb +Gb=Gb +Tb=Tb +Cut=Cut +Copy=Copy +Paste=Paste +Default=Default +DefaultValue=Default value +DefaultValues=Default values/filters/sorting +Price=Price +PriceCurrency=Price (currency) +UnitPrice=Unit price +UnitPriceHT=Unit price (excl.) +UnitPriceHTCurrency=Unit price (excl.) (currency) +UnitPriceTTC=Unit price +PriceU=U.P. +PriceUHT=U.P. (net) +PriceUHTCurrency=U.P (currency) +PriceUTTC=U.P. (inc. tax) +Amount=Amount +AmountInvoice=Invoice amount +AmountInvoiced=Amount invoiced +AmountInvoicedHT=Amount invoiced (incl. tax) +AmountInvoicedTTC=Amount invoiced (excl. tax) +AmountPayment=Payment amount +AmountHTShort=Amount (excl.) +AmountTTCShort=Amount (inc. tax) +AmountHT=Amount (excl. tax) +AmountTTC=Amount (inc. tax) +AmountVAT=Amount tax +MulticurrencyAlreadyPaid=Already paid, original currency +MulticurrencyRemainderToPay=Remain to pay, original currency +MulticurrencyPaymentAmount=Payment amount, original currency +MulticurrencyAmountHT=Amount (excl. tax), original currency +MulticurrencyAmountTTC=Amount (inc. of tax), original currency +MulticurrencyAmountVAT=Amount tax, original currency +AmountLT1=Amount tax 2 +AmountLT2=Amount tax 3 +AmountLT1ES=Amount RE +AmountLT2ES=Amount IRPF +AmountTotal=Total amount +AmountAverage=Average amount +PriceQtyMinHT=Price quantity min. (excl. tax) +PriceQtyMinHTCurrency=Price quantity min. (excl. tax) (currency) +Percentage=Percentage +Total=Total +SubTotal=Subtotal +TotalHTShort=Total (excl.) +TotalHT100Short=Total 100%% (excl.) +TotalHTShortCurrency=Total (excl. in currency) +TotalTTCShort=Total (inc. tax) +TotalHT=Total (excl. tax) +TotalHTforthispage=Total (excl. tax) for this page +Totalforthispage=Total for this page +TotalTTC=Total (inc. tax) +TotalTTCToYourCredit=Total (inc. tax) to your credit +TotalVAT=Total tax +TotalVATIN=Total IGST +TotalLT1=Total tax 2 +TotalLT2=Total tax 3 +TotalLT1ES=Total RE +TotalLT2ES=Total IRPF +TotalLT1IN=Total CGST +TotalLT2IN=Total SGST +HT=Excl. tax +TTC=Inc. tax +INCVATONLY=Inc. VAT +INCT=Inc. all taxes +VAT=Sales tax +VATIN=IGST +VATs=Sales taxes +VATINs=IGST taxes +LT1=Sales tax 2 +LT1Type=Sales tax 2 type +LT2=Sales tax 3 +LT2Type=Sales tax 3 type +LT1ES=RE +LT2ES=IRPF +LT1IN=CGST +LT2IN=SGST +LT1GC=Additionnal cents +VATRate=Tax Rate +VATCode=Tax Rate code +VATNPR=Tax Rate NPR +DefaultTaxRate=Default tax rate +Average=Average +Sum=Sum +Delta=Delta +StatusToPay=To pay +RemainToPay=Remain to pay +Module=Module/Application +Modules=Modules/Applications +Option=Option +List=List +FullList=Full list +FullConversation=Full conversation +Statistics=Statistics +OtherStatistics=Other statistics +Status=Status +Favorite=Favorite +ShortInfo=Info. +Ref=Ref. +ExternalRef=Ref. extern +RefSupplier=Ref. vendor +RefPayment=Ref. payment +CommercialProposalsShort=Commercial proposals +Comment=Comment +Comments=Comments +ActionsToDo=Events to do +ActionsToDoShort=To do +ActionsDoneShort=Done +ActionNotApplicable=Not applicable +ActionRunningNotStarted=To start +ActionRunningShort=In progress +ActionDoneShort=Finished +ActionUncomplete=Incomplete +LatestLinkedEvents=Latest %s linked events +CompanyFoundation=Company/Organization +Accountant=Accountant +ContactsForCompany=Contacts for this third party +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 +ToDo=To do +Completed=Completed +Running=In progress +RequestAlreadyDone=Request already recorded +Filter=Filter +FilterOnInto=Search criteria '%s' into fields %s +RemoveFilter=Remove filter +ChartGenerated=Chart generated +ChartNotGenerated=Chart not generated +GeneratedOn=Build on %s +Generate=Generate +Duration=Duration +TotalDuration=Total duration +Summary=Summary +DolibarrStateBoard=Database Statistics +DolibarrWorkBoard=Open Items +NoOpenedElementToProcess=No open element to process +Available=Available +NotYetAvailable=Not yet available +NotAvailable=Not available +Categories=Tags/categories +Category=Tag/category +By=By +From=From +FromLocation=From +to=to +To=to +and=and +or=or +Other=Other +Others=Others +OtherInformations=Other information +Quantity=Quantity +Qty=Qty +ChangedBy=Changed by +ApprovedBy=Approved by +ApprovedBy2=Approved by (second approval) +Approved=Approved +Refused=Refused +ReCalculate=Recalculate +ResultKo=Failure +Reporting=Reporting +Reportings=Reporting +Draft=Draft +Drafts=Drafts +StatusInterInvoiced=Invoiced +Validated=Validated +Opened=Open +OpenAll=Open (All) +ClosedAll=Closed (All) +New=New +Discount=Discount +Unknown=Unknown +General=General +Size=Size +OriginalSize=Original size +Received=Received +Paid=Paid +Topic=Subject +ByCompanies=By third parties +ByUsers=By user +Links=Links +Link=Link +Rejects=Rejects +Preview=Preview +NextStep=Next step +Datas=Data +None=None +NoneF=None +NoneOrSeveral=None or several +Late=Late +LateDesc=An item is defined as Delayed as per the system configuration in menu Home - Setup - Alerts. +NoItemLate=No late item +Photo=Picture +Photos=Pictures +AddPhoto=Add picture +DeletePicture=Picture delete +ConfirmDeletePicture=Confirm picture deletion? +Login=Login +LoginEmail=Login (email) +LoginOrEmail=Login or Email +CurrentLogin=Current login +EnterLoginDetail=Enter login details +January=January +February=February +March=March +April=April +May=May +June=June +July=July +August=August +September=September +October=October +November=November +December=December +Month01=January +Month02=February +Month03=March +Month04=April +Month05=May +Month06=June +Month07=July +Month08=August +Month09=September +Month10=October +Month11=November +Month12=December +MonthShort01=Jan +MonthShort02=Feb +MonthShort03=Mar +MonthShort04=Apr +MonthShort05=May +MonthShort06=Jun +MonthShort07=Jul +MonthShort08=Aug +MonthShort09=Sep +MonthShort10=Oct +MonthShort11=Nov +MonthShort12=Dec +MonthVeryShort01=J +MonthVeryShort02=F +MonthVeryShort03=M +MonthVeryShort04=A +MonthVeryShort05=M +MonthVeryShort06=J +MonthVeryShort07=J +MonthVeryShort08=A +MonthVeryShort09=S +MonthVeryShort10=O +MonthVeryShort11=N +MonthVeryShort12=D +AttachedFiles=Attached files and documents +JoinMainDoc=Join main document +DateFormatYYYYMM=YYYY-MM +DateFormatYYYYMMDD=YYYY-MM-DD +DateFormatYYYYMMDDHHMM=YYYY-MM-DD HH:SS +ReportName=Report name +ReportPeriod=Report period +ReportDescription=Description +Report=Report +Keyword=Keyword +Origin=Origin +Legend=Legend +Fill=Fill +Reset=Reset +File=File +Files=Files +NotAllowed=Not allowed +ReadPermissionNotAllowed=Read permission not allowed +AmountInCurrency=Amount in %s currency +Example=Example +Examples=Examples +NoExample=No example +FindBug=Report a bug +NbOfThirdParties=Number of third parties +NbOfLines=Number of lines +NbOfObjects=Number of objects +NbOfObjectReferers=Number of related items +Referers=Related items +TotalQuantity=Total quantity +DateFromTo=From %s to %s +DateFrom=From %s +DateUntil=Until %s +Check=Check +Uncheck=Uncheck +Internal=Internal +External=External +Internals=Internal +Externals=External +Warning=Warning +Warnings=Warnings +BuildDoc=Build Doc +Entity=Environment +Entities=Entities +CustomerPreview=Customer preview +SupplierPreview=Vendor preview +ShowCustomerPreview=Show customer preview +ShowSupplierPreview=Show vendor preview +RefCustomer=Ref. customer +Currency=Currency +InfoAdmin=Information for administrators +Undo=Undo +Redo=Redo +ExpandAll=Expand all +UndoExpandAll=Undo expand +SeeAll=See all +Reason=Reason +FeatureNotYetSupported=Feature not yet supported +CloseWindow=Close window +Response=Response +Priority=Priority +SendByMail=Send by email +MailSentBy=Email sent by +TextUsedInTheMessageBody=Email body +SendAcknowledgementByMail=Send confirmation email +SendMail=Send email +Email=Email +NoEMail=No email +AlreadyRead=Already read +NotRead=Not read +NoMobilePhone=No mobile phone +Owner=Owner +FollowingConstantsWillBeSubstituted=The following constants will be replaced with the corresponding value. +Refresh=Refresh +BackToList=Back to list +GoBack=Go back +CanBeModifiedIfOk=Can be modified if valid +CanBeModifiedIfKo=Can be modified if not valid +ValueIsValid=Value is valid +ValueIsNotValid=Value is not valid +RecordCreatedSuccessfully=Record created successfully +RecordModifiedSuccessfully=Record modified successfully +RecordsModified=%s record(s) modified +RecordsDeleted=%s record(s) deleted +RecordsGenerated=%s record(s) generated +AutomaticCode=Automatic code +FeatureDisabled=Feature disabled +MoveBox=Move widget +Offered=Offered +NotEnoughPermissions=You don't have permission for this action +SessionName=Session name +Method=Method +Receive=Receive +CompleteOrNoMoreReceptionExpected=Complete or nothing more expected +ExpectedValue=Expected Value +PartialWoman=Partial +TotalWoman=Total +NeverReceived=Never received +Canceled=Canceled +YouCanChangeValuesForThisListFromDictionarySetup=You can change values for this list from menu Setup - Dictionaries +YouCanChangeValuesForThisListFrom=You can change values for this list from menu %s +YouCanSetDefaultValueInModuleSetup=You can set the default value used when creating a new record in module setup +Color=Color +Documents=Linked files +Documents2=Documents +UploadDisabled=Upload disabled +MenuAccountancy=Accounting +MenuECM=Documents +MenuAWStats=AWStats +MenuMembers=Members +MenuAgendaGoogle=Google agenda +ThisLimitIsDefinedInSetup=Dolibarr limit (Menu home-setup-security): %s Kb, PHP limit: %s Kb +NoFileFound=No documents saved in this directory +CurrentUserLanguage=Current language +CurrentTheme=Current theme +CurrentMenuManager=Current menu manager +Browser=Browser +Layout=Layout +Screen=Screen +DisabledModules=Disabled modules +For=For +ForCustomer=For customer +Signature=Signature +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 +AddNewLine=Add new line +AddFile=Add file +FreeZone=Not a predefined product/service +FreeLineOfType=Free-text item, type: +CloneMainAttributes=Clone object with its main attributes +ReGeneratePDF=Re-generate PDF +PDFMerge=PDF Merge +Merge=Merge +DocumentModelStandardPDF=Standard PDF template +PrintContentArea=Show page to print main content area +MenuManager=Menu manager +WarningYouAreInMaintenanceMode=Warning, you are in maintenance mode: only login %s is allowed to use the application in this mode. +CoreErrorTitle=System error +CoreErrorMessage=Sorry, an error occurred. Contact your system administrator to check the logs or disable $dolibarr_main_prod=1 to get more information. +CreditCard=Credit card +ValidatePayment=Validate payment +CreditOrDebitCard=Credit or debit card +FieldsWithAreMandatory=Fields with %s are mandatory +FieldsWithIsForPublic=Fields with %s are shown in public list of members. If you don't want this, uncheck the "public" box. +AccordingToGeoIPDatabase=(according to GeoIP conversion) +Line=Line +NotSupported=Not supported +RequiredField=Required field +Result=Result +ToTest=Test +ValidateBefore=Item must be validated before using this feature +Visibility=Visibility +Totalizable=Totalizable +TotalizableDesc=This field is totalizable in list +Private=Private +Hidden=Hidden +Resources=Resources +Source=Source +Prefix=Prefix +Before=Before +After=After +IPAddress=IP address +Frequency=Frequency +IM=Instant messaging +NewAttribute=New attribute +AttributeCode=Attribute code +URLPhoto=URL of photo/logo +SetLinkToAnotherThirdParty=Link to another third party +LinkTo=Link to +LinkToProposal=Link to proposal +LinkToOrder=Link to order +LinkToInvoice=Link to invoice +LinkToTemplateInvoice=Link to template invoice +LinkToSupplierOrder=Link to purchase order +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 +ClickToRefresh=Click to refresh +EditWithEditor=Edit with CKEditor +EditWithTextEditor=Edit with Text editor +EditHTMLSource=Edit HTML Source +ObjectDeleted=Object %s deleted +ByCountry=By country +ByTown=By town +ByDate=By date +ByMonthYear=By month/year +ByYear=By year +ByMonth=By month +ByDay=By day +BySalesRepresentative=By sales representative +LinkedToSpecificUsers=Linked to a particular user contact +NoResults=No results +AdminTools=Admin Tools +SystemTools=System tools +ModulesSystemTools=Modules tools +Test=Test +Element=Element +NoPhotoYet=No pictures available yet +Dashboard=Dashboard +MyDashboard=My Dashboard +Deductible=Deductible +from=from +toward=toward +Access=Access +SelectAction=Select action +SelectTargetUser=Select target user/employee +HelpCopyToClipboard=Use Ctrl+C to copy to clipboard +SaveUploadedFileWithMask=Save file on server with name "%s" (otherwise "%s") +OriginFileName=Original filename +SetDemandReason=Set source +SetBankAccount=Define Bank Account +AccountCurrency=Account currency +ViewPrivateNote=View notes +XMoreLines=%s line(s) hidden +ShowMoreLines=Show more/less lines +PublicUrl=Public URL +AddBox=Add box +SelectElementAndClick=Select an element and click %s +PrintFile=Print File %s +ShowTransaction=Show entry on bank account +ShowIntervention=Show intervention +ShowContract=Show contract +GoIntoSetupToChangeLogo=Go to Home - Setup - Company to change logo or go to Home - Setup - Display to hide. +Deny=Deny +Denied=Denied +ListOf=List of %s +ListOfTemplates=List of templates +Gender=Gender +Genderman=Man +Genderwoman=Woman +ViewList=List view +ViewGantt=Gantt view +ViewKanban=Kanban view +Mandatory=Mandatory +Hello=Hello +GoodBye=GoodBye +Sincerely=Sincerely +ConfirmDeleteObject=Are you sure you want to delete this object? +DeleteLine=Delete line +ConfirmDeleteLine=Are you sure you want to delete this line? +NoPDFAvailableForDocGenAmongChecked=No PDF were available for the document generation among checked record +TooManyRecordForMassAction=Too many records selected for mass action. The action is restricted to a list of %s records. +NoRecordSelected=No record selected +MassFilesArea=Area for files built by mass actions +ShowTempMassFilesArea=Show area of files built by mass actions +ConfirmMassDeletion=Bulk Delete confirmation +ConfirmMassDeletionQuestion=Are you sure you want to delete the %s selected record(s)? +RelatedObjects=Related Objects +ClassifyBilled=Classify billed +ClassifyUnbilled=Classify unbilled +Progress=Progress +ProgressShort=Progr. +FrontOffice=Front office +BackOffice=Back office +Submit=Submit +View=View +Export=Export +Exports=Exports +ExportFilteredList=Export filtered list +ExportList=Export list +ExportOptions=Export Options +IncludeDocsAlreadyExported=Include docs already exported +ExportOfPiecesAlreadyExportedIsEnable=Export of pieces already exported is enable +ExportOfPiecesAlreadyExportedIsDisable=Export of pieces already exported is disable +AllExportedMovementsWereRecordedAsExported=All exported movements were recorded as exported +NotAllExportedMovementsCouldBeRecordedAsExported=Not all exported movements could be recorded as exported +Miscellaneous=Miscellaneous +Calendar=Calendar +GroupBy=Group by... +ViewFlatList=View flat list +RemoveString=Remove string '%s' +SomeTranslationAreUncomplete=Some of the languages offered may be only partially translated or may contain errors. Please help to correct your language by registering at https://transifex.com/projects/p/dolibarr/ to add your improvements. +DirectDownloadLink=Direct download link (public/external) +DirectDownloadInternalLink=Direct download link (need to be logged and need permissions) +Download=Download +DownloadDocument=Download document +ActualizeCurrency=Update currency rate +Fiscalyear=Fiscal year +ModuleBuilder=Module and Application Builder +SetMultiCurrencyCode=Set currency +BulkActions=Bulk actions +ClickToShowHelp=Click to show tooltip help +WebSite=Website +WebSites=Websites +WebSiteAccounts=Website accounts +ExpenseReport=Expense report +ExpenseReports=Expense reports +HR=HR +HRAndBank=HR and Bank +AutomaticallyCalculated=Automatically calculated +TitleSetToDraft=Go back to draft +ConfirmSetToDraft=Are you sure you want to go back to Draft status? +ImportId=Import id +Events=Events +EMailTemplates=Email templates +FileNotShared=File not shared to external public +Project=Project +Projects=Projects +LeadOrProject=Lead | Project +LeadsOrProjects=Leads | Projects +Lead=Lead +Leads=Leads +ListOpenLeads=List open leads +ListOpenProjects=List open projects +NewLeadOrProject=New lead or project +Rights=Permissions +LineNb=Line no. +IncotermLabel=Incoterms +TabLetteringCustomer=Customer lettering +TabLetteringSupplier=Vendor lettering +Monday=Monday +Tuesday=Tuesday +Wednesday=Wednesday +Thursday=Thursday +Friday=Friday +Saturday=Saturday +Sunday=Sunday +MondayMin=Mo +TuesdayMin=Tu +WednesdayMin=We +ThursdayMin=Th +FridayMin=Fr +SaturdayMin=Sa +SundayMin=Su +Day1=Monday +Day2=Tuesday +Day3=Wednesday +Day4=Thursday +Day5=Friday +Day6=Saturday +Day0=Sunday +ShortMonday=M +ShortTuesday=T +ShortWednesday=W +ShortThursday=T +ShortFriday=F +ShortSaturday=S +ShortSunday=S +SelectMailModel=Select an email template +SetRef=Set ref +Select2ResultFoundUseArrows=Some results found. Use arrows to select. +Select2NotFound=No result found +Select2Enter=Enter +Select2MoreCharacter=or more character +Select2MoreCharacters=or more characters +Select2MoreCharactersMore=Search syntax:
    | OR (a|b)
    * Any character (a*b)
    ^ Start with (^ab)
    $ End with (ab$)
    +Select2LoadingMoreResults=Loading more results... +Select2SearchInProgress=Search in progress... +SearchIntoThirdparties=Third parties +SearchIntoContacts=Contacts +SearchIntoMembers=Members +SearchIntoUsers=Users +SearchIntoProductsOrServices=Products or services +SearchIntoProjects=Projects +SearchIntoMO=Manufacturing Orders +SearchIntoTasks=Tasks +SearchIntoCustomerInvoices=Customer invoices +SearchIntoSupplierInvoices=Vendor invoices +SearchIntoCustomerOrders=Sales orders +SearchIntoSupplierOrders=Purchase orders +SearchIntoCustomerProposals=Commercial proposals +SearchIntoSupplierProposals=Vendor proposals +SearchIntoInterventions=Interventions +SearchIntoContracts=Contracts +SearchIntoCustomerShipments=Customer shipments +SearchIntoExpenseReports=Expense reports +SearchIntoLeaves=Leave +SearchIntoTickets=Tickets +CommentLink=Comments +NbComments=Number of comments +CommentPage=Comments space +CommentAdded=Comment added +CommentDeleted=Comment deleted +Everybody=Everybody +PayedBy=Paid by +PayedTo=Paid to +Monthly=Monthly +Quarterly=Quarterly +Annual=Annual +Local=Local +Remote=Remote +LocalAndRemote=Local and Remote +KeyboardShortcut=Keyboard shortcut +AssignedTo=Assigned to +Deletedraft=Delete draft +ConfirmMassDraftDeletion=Draft mass delete confirmation +FileSharedViaALink=File shared via a link +SelectAThirdPartyFirst=Select a third party first... +YouAreCurrentlyInSandboxMode=You are currently in the %s "sandbox" mode +Inventory=Inventory +AnalyticCode=Analytic code +TMenuMRP=MRP +ShowMoreInfos=Show More Infos +NoFilesUploadedYet=Please upload a document first +SeePrivateNote=See private note +PaymentInformation=Payment information +ValidFrom=Valid from +ValidUntil=Valid until +NoRecordedUsers=No users +ToClose=To close +ToProcess=To process +ToApprove=To approve +GlobalOpenedElemView=Global view +NoArticlesFoundForTheKeyword=No article found for the keyword '%s' +NoArticlesFoundForTheCategory=No article found for the category +ToAcceptRefuse=To accept | refuse +ContactDefault_agenda=Event +ContactDefault_commande=Order +ContactDefault_contrat=Contract +ContactDefault_facture=Invoice +ContactDefault_fichinter=Intervention +ContactDefault_invoice_supplier=Supplier Invoice +ContactDefault_order_supplier=Purchase Order +ContactDefault_project=Project +ContactDefault_project_task=Task +ContactDefault_propal=Proposal +ContactDefault_supplier_proposal=Supplier Proposal +ContactDefault_ticket=Ticket +ContactAddedAutomatically=Contact added from contact thirdparty roles +More=More +ShowDetails=Show details +CustomReports=Custom reports +StatisticsOn=Statistics on +SelectYourGraphOptionsFirst=Select your graph options to build a graph +Measures=Measures +XAxis=X-Axis +YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? +ShowOtherLanguages=Show other languages +SwitchInEditModeToAddTranslation=Switch in edit mode to add translations for this language +NotUsedForThisCustomer=Not used for this customer diff --git a/htdocs/langs/bn_IN/margins.lang b/htdocs/langs/bn_IN/margins.lang new file mode 100644 index 00000000000..76ea8ad5c4d --- /dev/null +++ b/htdocs/langs/bn_IN/margins.lang @@ -0,0 +1,45 @@ +# Dolibarr language file - Source file is en_US - marges + +Margin=Margin +Margins=Margins +TotalMargin=Total Margin +MarginOnProducts=Margin / Products +MarginOnServices=Margin / Services +MarginRate=Margin rate +MarkRate=Mark rate +DisplayMarginRates=Display margin rates +DisplayMarkRates=Display mark rates +InputPrice=Input price +margin=Profit margins management +margesSetup=Profit margins management setup +MarginDetails=Margin details +ProductMargins=Product margins +CustomerMargins=Customer margins +SalesRepresentativeMargins=Sales representative margins +ContactOfInvoice=Contact of invoice +UserMargins=User margins +ProductService=Product or Service +AllProducts=All products and services +ChooseProduct/Service=Choose product or service +ForceBuyingPriceIfNull=Force buying/cost price to selling price if not defined +ForceBuyingPriceIfNullDetails=If buying/cost price not defined, and this option "ON", margin will be zero on line (buying/cost price = selling price), otherwise ("OFF"), marge will be equal to suggested default. +MARGIN_METHODE_FOR_DISCOUNT=Margin method for global discounts +UseDiscountAsProduct=As a product +UseDiscountAsService=As a service +UseDiscountOnTotal=On subtotal +MARGIN_METHODE_FOR_DISCOUNT_DETAILS=Defines if a global discount is treated as a product, a service, or only on subtotal for margin calculation. +MARGIN_TYPE=Buying/Cost price suggested by default for margin calculation +MargeType1=Margin on Best vendor price +MargeType2=Margin on Weighted Average Price (WAP) +MargeType3=Margin on Cost Price +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=Cost price +UnitCharges=Unit charges +Charges=Charges +AgentContactType=Commercial agent contact type +AgentContactTypeDetails=Define what contact type (linked on invoices) will be used for margin report per contact/address. Note that reading statistics on a contact is not reliable since in most cases the contact may not be defined explicitely on the invoices. +rateMustBeNumeric=Rate must be a numeric value +markRateShouldBeLesserThan100=Mark rate should be lower than 100 +ShowMarginInfos=Show margin infos +CheckMargins=Margins detail +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/bn_IN/members.lang b/htdocs/langs/bn_IN/members.lang new file mode 100644 index 00000000000..dd0a5bf49e2 --- /dev/null +++ b/htdocs/langs/bn_IN/members.lang @@ -0,0 +1,204 @@ +# Dolibarr language file - Source file is en_US - members +MembersArea=Members area +MemberCard=Member card +SubscriptionCard=Subscription card +Member=Member +Members=Members +ShowMember=Show member card +UserNotLinkedToMember=User not linked to a member +ThirdpartyNotLinkedToMember=Third party not linked to a member +MembersTickets=Members Tickets +FundationMembers=Foundation members +ListOfValidatedPublicMembers=List of validated public members +ErrorThisMemberIsNotPublic=This member is not public +ErrorMemberIsAlreadyLinkedToThisThirdParty=Another member (name: %s, login: %s) is already linked to a third party %s. Remove this link first because a third party can't be linked to only a member (and vice versa). +ErrorUserPermissionAllowsToLinksToItselfOnly=For security reasons, you must be granted permissions to edit all users to be able to link a member to a user that is not yours. +SetLinkToUser=Link to a Dolibarr user +SetLinkToThirdParty=Link to a Dolibarr third party +MembersCards=Members business cards +MembersList=List of members +MembersListToValid=List of draft members (to be validated) +MembersListValid=List of valid members +MembersListUpToDate=List of valid members with up to date subscription +MembersListNotUpToDate=List of valid members with subscription out of date +MembersListResiliated=List of terminated members +MembersListQualified=List of qualified members +MenuMembersToValidate=Draft members +MenuMembersValidated=Validated members +MenuMembersUpToDate=Up to date members +MenuMembersNotUpToDate=Out of date members +MenuMembersResiliated=Terminated members +MembersWithSubscriptionToReceive=Members with subscription to receive +MembersWithSubscriptionToReceiveShort=Subscription to receive +DateSubscription=Subscription date +DateEndSubscription=Subscription end date +EndSubscription=End subscription +SubscriptionId=Subscription id +MemberId=Member id +NewMember=New member +MemberType=Member type +MemberTypeId=Member type id +MemberTypeLabel=Member type label +MembersTypes=Members types +MemberStatusDraft=Draft (needs to be validated) +MemberStatusDraftShort=Draft +MemberStatusActive=Validated (waiting subscription) +MemberStatusActiveShort=Validated +MemberStatusActiveLate=Subscription expired +MemberStatusActiveLateShort=Expired +MemberStatusPaid=Subscription up to date +MemberStatusPaidShort=Up to date +MemberStatusResiliated=Terminated member +MemberStatusResiliatedShort=Terminated +MembersStatusToValid=Draft members +MembersStatusResiliated=Terminated members +MemberStatusNoSubscription=Validated (no subscription needed) +MemberStatusNoSubscriptionShort=Validated +SubscriptionNotNeeded=No subscription needed +NewCotisation=New contribution +PaymentSubscription=New contribution payment +SubscriptionEndDate=Subscription's end date +MembersTypeSetup=Members type setup +MemberTypeModified=Member type modified +DeleteAMemberType=Delete a member type +ConfirmDeleteMemberType=Are you sure you want to delete this member type? +MemberTypeDeleted=Member type deleted +MemberTypeCanNotBeDeleted=Member type can not be deleted +NewSubscription=New subscription +NewSubscriptionDesc=This form allows you to record your subscription as a new member of the foundation. If you want to renew your subscription (if already a member), please contact foundation board instead by email %s. +Subscription=Subscription +Subscriptions=Subscriptions +SubscriptionLate=Late +SubscriptionNotReceived=Subscription never received +ListOfSubscriptions=List of subscriptions +SendCardByMail=Send card by email +AddMember=Create member +NoTypeDefinedGoToSetup=No member types defined. Go to menu "Members types" +NewMemberType=New member type +WelcomeEMail=Welcome email +SubscriptionRequired=Subscription required +DeleteType=Delete +VoteAllowed=Vote allowed +Physical=Physical +Moral=Moral +MorPhy=Moral/Physical +Reenable=Reenable +ResiliateMember=Terminate a member +ConfirmResiliateMember=Are you sure you want to terminate this member? +DeleteMember=Delete a member +ConfirmDeleteMember=Are you sure you want to delete this member (Deleting a member will delete all his subscriptions)? +DeleteSubscription=Delete a subscription +ConfirmDeleteSubscription=Are you sure you want to delete this subscription? +Filehtpasswd=htpasswd file +ValidateMember=Validate a member +ConfirmValidateMember=Are you sure you want to validate this member? +FollowingLinksArePublic=The following links are open pages not protected by any Dolibarr permission. They are not formatted pages, provided as example to show how to list members database. +PublicMemberList=Public member list +BlankSubscriptionForm=Public self-subscription form +BlankSubscriptionFormDesc=Dolibarr can provide you a public URL/website to allow external visitors to ask to subscribe to the foundation. If an online payment module is enabled, a payment form may also be automatically provided. +EnablePublicSubscriptionForm=Enable the public website with self-subscription form +ForceMemberType=Force the member type +ExportDataset_member_1=Members and subscriptions +ImportDataset_member_1=Members +LastMembersModified=Latest %s modified members +LastSubscriptionsModified=Latest %s modified subscriptions +String=String +Text=Text +Int=Int +DateAndTime=Date and time +PublicMemberCard=Member public card +SubscriptionNotRecorded=Subscription not recorded +AddSubscription=Create subscription +ShowSubscription=Show subscription +# Label of email templates +SendingAnEMailToMember=Sending information email to member +SendingEmailOnAutoSubscription=Sending email on auto registration +SendingEmailOnMemberValidation=Sending email on new member validation +SendingEmailOnNewSubscription=Sending email on new subscription +SendingReminderForExpiredSubscription=Sending reminder for expired subscriptions +SendingEmailOnCancelation=Sending email on cancelation +# Topic of email templates +YourMembershipRequestWasReceived=Your membership was received. +YourMembershipWasValidated=Your membership was validated +YourSubscriptionWasRecorded=Your new subscription was recorded +SubscriptionReminderEmail=Subscription reminder +YourMembershipWasCanceled=Your membership was canceled +CardContent=Content of your member card +# Text of email templates +ThisIsContentOfYourMembershipRequestWasReceived=We want to let you know that your membership request was received.

    +ThisIsContentOfYourMembershipWasValidated=We want to let you know that your membership was validated with the following information:

    +ThisIsContentOfYourSubscriptionWasRecorded=We want to let you know that your new subscription was recorded.

    +ThisIsContentOfSubscriptionReminderEmail=We want to let you know that your subscription is about to expire or has already expired (__MEMBER_LAST_SUBSCRIPTION_DATE_END__). We hope you will renew it.

    +ThisIsContentOfYourCard=This is a summary of the information we have about you. Please contact us if anything is incorrect.

    +DescADHERENT_AUTOREGISTER_NOTIF_MAIL_SUBJECT=Subject of the notification email received in case of auto-inscription of a guest +DescADHERENT_AUTOREGISTER_NOTIF_MAIL=Content of the notification email received in case of auto-inscription of a guest +DescADHERENT_EMAIL_TEMPLATE_AUTOREGISTER=Email template to use to send email to a member on member autosubscription +DescADHERENT_EMAIL_TEMPLATE_MEMBER_VALIDATION=Email template to use to send email to a member on member validation +DescADHERENT_EMAIL_TEMPLATE_SUBSCRIPTION=Email template to use to send email to a member on new subscription recording +DescADHERENT_EMAIL_TEMPLATE_REMIND_EXPIRATION=Email template to use to send email reminder when subscription is about to expire +DescADHERENT_EMAIL_TEMPLATE_CANCELATION=Email template to use to send email to a member on member cancelation +DescADHERENT_MAIL_FROM=Sender Email for automatic emails +DescADHERENT_ETIQUETTE_TYPE=Format of labels page +DescADHERENT_ETIQUETTE_TEXT=Text printed on member address sheets +DescADHERENT_CARD_TYPE=Format of cards page +DescADHERENT_CARD_HEADER_TEXT=Text printed on top of member cards +DescADHERENT_CARD_TEXT=Text printed on member cards (align on left) +DescADHERENT_CARD_TEXT_RIGHT=Text printed on member cards (align on right) +DescADHERENT_CARD_FOOTER_TEXT=Text printed on bottom of member cards +ShowTypeCard=Show type '%s' +HTPasswordExport=htpassword file generation +NoThirdPartyAssociatedToMember=No third party associated to this member +MembersAndSubscriptions= Members and Subscriptions +MoreActions=Complementary action on recording +MoreActionsOnSubscription=Complementary action, suggested by default when recording a subscription +MoreActionBankDirect=Create a direct entry on bank account +MoreActionBankViaInvoice=Create an invoice, and a payment on bank account +MoreActionInvoiceOnly=Create an invoice with no payment +LinkToGeneratedPages=Generate visit cards +LinkToGeneratedPagesDesc=This screen allows you to generate PDF files with business cards for all your members or a particular member. +DocForAllMembersCards=Generate business cards for all members +DocForOneMemberCards=Generate business cards for a particular member +DocForLabels=Generate address sheets +SubscriptionPayment=Subscription payment +LastSubscriptionDate=Date of latest subscription payment +LastSubscriptionAmount=Amount of latest subscription +MembersStatisticsByCountries=Members statistics by country +MembersStatisticsByState=Members statistics by state/province +MembersStatisticsByTown=Members statistics by town +MembersStatisticsByRegion=Members statistics by region +NbOfMembers=Number of members +NoValidatedMemberYet=No validated members found +MembersByCountryDesc=This screen show you statistics on members by countries. Graphic depends however on Google online graph service and is available only if an internet connection is is working. +MembersByStateDesc=This screen show you statistics on members by state/provinces/canton. +MembersByTownDesc=This screen show you statistics on members by town. +MembersStatisticsDesc=Choose statistics you want to read... +MenuMembersStats=Statistics +LastMemberDate=Latest member date +LatestSubscriptionDate=Latest subscription date +MemberNature=Nature of member +Public=Information are public +NewMemberbyWeb=New member added. Awaiting approval +NewMemberForm=New member form +SubscriptionsStatistics=Statistics on subscriptions +NbOfSubscriptions=Number of subscriptions +AmountOfSubscriptions=Amount of subscriptions +TurnoverOrBudget=Turnover (for a company) or Budget (for a foundation) +DefaultAmount=Default amount of subscription +CanEditAmount=Visitor can choose/edit amount of its subscription +MEMBER_NEWFORM_PAYONLINE=Jump on integrated online payment page +ByProperties=By nature +MembersStatisticsByProperties=Members statistics by nature +MembersByNature=This screen show you statistics on members by nature. +MembersByRegion=This screen show you statistics on members by region. +VATToUseForSubscriptions=VAT rate to use for subscriptions +NoVatOnSubscription=No VAT for subscriptions +ADHERENT_PRODUCT_ID_FOR_SUBSCRIPTIONS=Product used for subscription line into invoice: %s +NameOrCompany=Name or company +SubscriptionRecorded=Subscription recorded +NoEmailSentToMember=No email sent to member +EmailSentToMember=Email sent to member at %s +SendReminderForExpiredSubscriptionTitle=Send reminder by email for expired subscription +SendReminderForExpiredSubscription=Send reminder by email to members when subscription is about to expire (parameter is number of days before end of subscription to send the remind. It can be a list of days separated by a semicolon, for example '10;5;0;-5') +MembershipPaid=Membership paid for current period (until %s) +YouMayFindYourInvoiceInThisEmail=You may find your invoice attached to this email +XMembersClosed=%s member(s) closed diff --git a/htdocs/langs/bn_IN/modulebuilder.lang b/htdocs/langs/bn_IN/modulebuilder.lang new file mode 100644 index 00000000000..135ac1ae9ec --- /dev/null +++ b/htdocs/langs/bn_IN/modulebuilder.lang @@ -0,0 +1,141 @@ +# Dolibarr language file - Source file is en_US - loan +ModuleBuilderDesc=This tool must be used only by experienced users or developers. It provides utilities to build or edit your own module. Documentation for alternative manual development is here. +EnterNameOfModuleDesc=Enter name of the module/application to create with no spaces. Use uppercase to separate words (For example: MyModule, EcommerceForShop, SyncWithMySystem...) +EnterNameOfObjectDesc=Enter name of the object to create with no spaces. Use uppercase to separate words (For example: MyObject, Student, Teacher...). The CRUD class file, but also API file, pages to list/add/edit/delete object and SQL files will be generated. +ModuleBuilderDesc2=Path where modules are generated/edited (first directory for external modules defined into %s): %s +ModuleBuilderDesc3=Generated/editable modules found: %s +ModuleBuilderDesc4=A module is detected as 'editable' when the file %s exists in root of module directory +NewModule=New module +NewObjectInModulebuilder=New object +ModuleKey=Module key +ObjectKey=Object key +ModuleInitialized=Module initialized +FilesForObjectInitialized=Files for new object '%s' initialized +FilesForObjectUpdated=Files for object '%s' updated (.sql files and .class.php file) +ModuleBuilderDescdescription=Enter here all general information that describe your module. +ModuleBuilderDescspecifications=You can enter here a detailed description of the specifications of your module that is not already structured into other tabs. So you have within easy reach all the rules to develop. Also this text content will be included into the generated documentation (see last tab). You can use Markdown format, but it is recommended to use Asciidoc format (comparison between .md and .asciidoc: http://asciidoctor.org/docs/user-manual/#compared-to-markdown). +ModuleBuilderDescobjects=Define here the objects you want to manage with your module. A CRUD DAO class, SQL files, page to list record of objects, to create/edit/view a record and an API will be generated. +ModuleBuilderDescmenus=This tab is dedicated to define menu entries provided by your module. +ModuleBuilderDescpermissions=This tab is dedicated to define the new permissions you want to provide with your module. +ModuleBuilderDesctriggers=This is the view of triggers provided by your module. To include code executed when a triggered business event is launched, just edit this file. +ModuleBuilderDeschooks=This tab is dedicated to hooks. +ModuleBuilderDescwidgets=This tab is dedicated to manage/build widgets. +ModuleBuilderDescbuildpackage=You can generate here a "ready to distribute" package file (a normalized .zip file) of your module and a "ready to distribute" documentation file. Just click on button to build the package or documentation file. +EnterNameOfModuleToDeleteDesc=You can delete your module. WARNING: All coding files of module (generated or created manually) AND structured data and documentation will be deleted! +EnterNameOfObjectToDeleteDesc=You can delete an object. WARNING: All coding files (generated or created manually) related to object will be deleted! +DangerZone=Danger zone +BuildPackage=Build package +BuildPackageDesc=You can generate a zip package of your application so your are ready to distribute it on any Dolibarr. You can also distribute it or sell it on marketplace like DoliStore.com. +BuildDocumentation=Build documentation +ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: +ModuleIsLive=This module has been activated. Any change may break a current live feature. +DescriptionLong=Long description +EditorName=Name of editor +EditorUrl=URL of editor +DescriptorFile=Descriptor file of module +ClassFile=File for PHP DAO CRUD class +ApiClassFile=File for PHP API class +PageForList=PHP page for list of record +PageForCreateEditView=PHP page to create/edit/view a record +PageForAgendaTab=PHP page for event tab +PageForDocumentTab=PHP page for document tab +PageForNoteTab=PHP page for note tab +PathToModulePackage=Path to zip of module/application package +PathToModuleDocumentation=Path to file of module/application documentation (%s) +SpaceOrSpecialCharAreNotAllowed=Spaces or special characters are not allowed. +FileNotYetGenerated=File not yet generated +RegenerateClassAndSql=Force update of .class and .sql files +RegenerateMissingFiles=Generate missing files +SpecificationFile=File of documentation +LanguageFile=File for language +ObjectProperties=Object Properties +ConfirmDeleteProperty=Are you sure you want to delete the property %s? This will change code in PHP class but also remove column from table definition of object. +NotNull=Not NULL +NotNullDesc=1=Set database to NOT NULL. -1=Allow null values and force value to NULL if empty ('' or 0). +SearchAll=Used for 'search all' +DatabaseIndex=Database index +FileAlreadyExists=File %s already exists +TriggersFile=File for triggers code +HooksFile=File for hooks code +ArrayOfKeyValues=Array of key-val +ArrayOfKeyValuesDesc=Array of keys and values if field is a combo list with fixed values +WidgetFile=Widget file +CSSFile=CSS file +JSFile=Javascript file +ReadmeFile=Readme file +ChangeLog=ChangeLog file +TestClassFile=File for PHP Unit Test class +SqlFile=Sql file +PageForLib=File for the common PHP library +PageForObjLib=File for the PHP library dedicated to object +SqlFileExtraFields=Sql file for complementary attributes +SqlFileKey=Sql file for keys +SqlFileKeyExtraFields=Sql file for keys of complementary attributes +AnObjectAlreadyExistWithThisNameAndDiffCase=An object already exists with this name and a different case +UseAsciiDocFormat=You can use Markdown format, but it is recommended to use Asciidoc format (omparison between .md and .asciidoc: http://asciidoctor.org/docs/user-manual/#compared-to-markdown) +IsAMeasure=Is a measure +DirScanned=Directory scanned +NoTrigger=No trigger +NoWidget=No widget +GoToApiExplorer=Go to API explorer +ListOfMenusEntries=List of menu entries +ListOfDictionariesEntries=List of dictionaries entries +ListOfPermissionsDefined=List of defined permissions +SeeExamples=See examples here +EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty +DisplayOnPdf=Display on PDF +IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) +SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) +SpecDefDesc=Enter here all documentation you want to provide with your module that is not already defined by other tabs. You can use .md or better, the rich .asciidoc syntax. +LanguageDefDesc=Enter in this files, all the key and the translation for each language file. +MenusDefDesc=Define here the menus provided by your module +DictionariesDefDesc=Define here the dictionaries provided by your module +PermissionsDefDesc=Define here the new permissions provided by your module +MenusDefDescTooltip=The menus provided by your module/application are defined into the array $this->menus into the module descriptor file. You can edit manually this file or use the embedded editor.

    Note: Once defined (and module re-activated), menus are also visible into the menu editor available to administrator users on %s. +DictionariesDefDescTooltip=The dictionaries provided by your module/application are defined into the array $this->dictionaries into the module descriptor file. You can edit manually this file or use the embedded editor.

    Note: Once defined (and module re-activated), dictionaries are also visible into the setup area to administrator users on %s. +PermissionsDefDescTooltip=The permissions provided by your module/application are defined into the array $this->rights into the module descriptor file. You can edit manually this file or use the embedded editor.

    Note: Once defined (and module re-activated), permissions are visible into the default permissions setup %s. +HooksDefDesc=Define in the module_parts['hooks'] property, in the module descriptor, the context of hooks you want to manage (list of contexts can be found by a search on 'initHooks(' in core code).
    Edit the hook file to add code of your hooked functions (hookable functions can be found by a search on 'executeHooks' in core code). +TriggerDefDesc=Define in the trigger file the code you want to execute for each business event executed. +SeeIDsInUse=See IDs in use in your installation +SeeReservedIDsRangeHere=See range of reserved IDs +ToolkitForDevelopers=Toolkit for Dolibarr developers +TryToUseTheModuleBuilder=If you have knowledge of SQL and PHP, you may use the native module builder wizard.
    Enable the module %s and use the wizard by clicking the on the top right menu.
    Warning: This is an advanced developer feature, do not experiment on your production site! +SeeTopRightMenu=See on the top right menu +AddLanguageFile=Add language file +YouCanUseTranslationKey=You can use here a key that is the translation key found into language file (see tab "Languages") +DropTableIfEmpty=(Delete table if empty) +TableDoesNotExists=The table %s does not exists +TableDropped=Table %s deleted +InitStructureFromExistingTable=Build the structure array string of an existing table +UseAboutPage=Disable the about page +UseDocFolder=Disable the documentation folder +UseSpecificReadme=Use a specific ReadMe +ContentOfREADMECustomized=Note: The content of the README.md file has been replaced with the specific value defined into setup of ModuleBuilder. +RealPathOfModule=Real path of module +ContentCantBeEmpty=Content of file can't be empty +WidgetDesc=You can generate and edit here the widgets that will be embedded with your module. +CSSDesc=You can generate and edit here a file with personalized CSS embedded with your module. +JSDesc=You can generate and edit here a file with personalized Javascript embedded with your module. +CLIDesc=You can generate here some command line scripts you want to provide with your module. +CLIFile=CLI File +NoCLIFile=No CLI files +UseSpecificEditorName = Use a specific editor name +UseSpecificEditorURL = Use a specific editor URL +UseSpecificFamily = Use a specific family +UseSpecificAuthor = Use a specific author +UseSpecificVersion = Use a specific initial version +ModuleMustBeEnabled=The module/application must be enabled first +IncludeRefGeneration=The reference of object must be generated automatically +IncludeRefGenerationHelp=Check this if you want to include code to manage the generation automatically of the reference +IncludeDocGeneration=I want to generate some documents from the object +IncludeDocGenerationHelp=If you check this, some code will be generated to add a "Generate document" box on the record. +ShowOnCombobox=Show value into combobox +KeyForTooltip=Key for tooltip +CSSClass=CSS Class +NotEditable=Not editable +ForeignKey=Foreign key +TypeOfFieldsHelp=Type of fields:
    varchar(99), double(24,8), real, text, html, datetime, timestamp, integer, integer:ClassName:relativepath/to/classfile.class.php[:1[:filter]] ('1' means we add a + button after the combo to create the record, 'filter' can be 'status=1 AND fk_user = __USER_ID AND entity IN (__SHARED_ENTITIES__)' for example) +AsciiToHtmlConverter=Ascii to HTML converter +AsciiToPdfConverter=Ascii to PDF converter diff --git a/htdocs/langs/bn_IN/mrp.lang b/htdocs/langs/bn_IN/mrp.lang new file mode 100644 index 00000000000..d3c4d3253c6 --- /dev/null +++ b/htdocs/langs/bn_IN/mrp.lang @@ -0,0 +1,76 @@ +Mrp=Manufacturing Orders +MO=Manufacturing Order +MRPDescription=Module to manage production and Manufacturing Orders (MO). +MRPArea=MRP Area +MrpSetupPage=Setup of module MRP +MenuBOM=Bills of material +LatestBOMModified=Latest %s Bills of materials modified +LatestMOModified=Latest %s Manufacturing Orders modified +Bom=Bills of Material +BillOfMaterials=Bill of Material +BOMsSetup=Setup of module BOM +ListOfBOMs=List of bills of material - BOM +ListOfManufacturingOrders=List of Manufacturing Orders +NewBOM=New bill of material +ProductBOMHelp=Product to create with this BOM.
    Note: Products with the property 'Nature of product' = 'Raw material' are not visible into this list. +BOMsNumberingModules=BOM numbering templates +BOMsModelModule=BOM document templates +MOsNumberingModules=MO numbering templates +MOsModelModule=MO document templates +FreeLegalTextOnBOMs=Free text on document of BOM +WatermarkOnDraftBOMs=Watermark on draft BOM +FreeLegalTextOnMOs=Free text on document of MO +WatermarkOnDraftMOs=Watermark on draft MO +ConfirmCloneBillOfMaterials=Are you sure you want to clone the bill of material %s ? +ConfirmCloneMo=Are you sure you want to clone the Manufacturing Order %s ? +ManufacturingEfficiency=Manufacturing efficiency +ConsumptionEfficiency=Consumption efficiency +ValueOfMeansLoss=Value of 0.95 means an average of 5%% of loss during the production +ValueOfMeansLossForProductProduced=Value of 0.95 means an average of 5%% of loss of produced product +DeleteBillOfMaterials=Delete Bill Of Materials +DeleteMo=Delete Manufacturing Order +ConfirmDeleteBillOfMaterials=Are you sure you want to delete this Bill Of Material? +ConfirmDeleteMo=Are you sure you want to delete this Bill Of Material? +MenuMRP=Manufacturing Orders +NewMO=New Manufacturing Order +QtyToProduce=Qty to produce +DateStartPlannedMo=Date start planned +DateEndPlannedMo=Date end planned +KeepEmptyForAsap=Empty means 'As Soon As Possible' +EstimatedDuration=Estimated duration +EstimatedDurationDesc=Estimated duration to manufacture this product using this BOM +ConfirmValidateBom=Are you sure you want to validate the BOM with the reference %s (you will be able to use it to build new Manufacturing Orders) +ConfirmCloseBom=Are you sure you want to cancel this BOM (you won't be able to use it to build new Manufacturing Orders anymore) ? +ConfirmReopenBom=Are you sure you want to re-open this BOM (you will be able to use it to build new Manufacturing Orders) +StatusMOProduced=Produced +QtyFrozen=Frozen Qty +QuantityFrozen=Frozen Quantity +QuantityConsumedInvariable=When this flag is set, the quantity consumed is always the value defined and is not relative to the quantity produced. +DisableStockChange=Stock change disabled +DisableStockChangeHelp=When this flag is set, there is no stock change on this product, whatever is the quantity consumed +BomAndBomLines=Bills Of Material and lines +BOMLine=Line of BOM +WarehouseForProduction=Warehouse for production +CreateMO=Create MO +ToConsume=To consume +ToProduce=To produce +QtyAlreadyConsumed=Qty already consumed +QtyAlreadyProduced=Qty already produced +QtyRequiredIfNoLoss=Qty required if there is no loss (Manufacturing efficiency is 100%%) +ConsumeOrProduce=Consume or Produce +ConsumeAndProduceAll=Consume and Produce All +Manufactured=Manufactured +TheProductXIsAlreadyTheProductToProduce=The product to add is already the product to produce. +ForAQuantityOf=For a quantity to produce of %s +ConfirmValidateMo=Are you sure you want to validate this Manufacturing Order? +ConfirmProductionDesc=By clicking on '%s', you will validate the consumption and/or production for the quantities set. This will also update the stock and record stock movements. +ProductionForRef=Production of %s +AutoCloseMO=Close automatically the Manufacturing Order if quantities to consume and to produce are reached +NoStockChangeOnServices=No stock change on services +ProductQtyToConsumeByMO=Product quantity still to consume by open MO +ProductQtyToProduceByMO=Product quentity still to produce by open MO +AddNewConsumeLines=Add new line to consume +ProductsToConsume=Products to consume +ProductsToProduce=Products to produce +UnitCost=Unit cost +TotalCost=Total cost diff --git a/htdocs/langs/bn_IN/multicurrency.lang b/htdocs/langs/bn_IN/multicurrency.lang new file mode 100644 index 00000000000..bfcbd11fb7c --- /dev/null +++ b/htdocs/langs/bn_IN/multicurrency.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Multi currency +ErrorAddRateFail=Error in added rate +ErrorAddCurrencyFail=Error in added currency +ErrorDeleteCurrencyFail=Error delete fail +multicurrency_syncronize_error=Synchronization error: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Use the date of the document to find the currency rate, instead of using the latest known rate +multicurrency_useOriginTx=When an object is created from another, keep the original rate from the source object (otherwise use the latest known rate) +CurrencyLayerAccount=CurrencyLayer API +CurrencyLayerAccount_help_to_synchronize=You must create an account on website %s to use this functionality.
    Get your API key.
    If you use a free account, you can't change the source currency (USD by default).
    If your main currency is not USD, the application will automatically recalculate it.

    You are limited to 1000 synchronizations per month. +multicurrency_appId=API key +multicurrency_appCurrencySource=Source currency +multicurrency_alternateCurrencySource=Alternate source currency +CurrenciesUsed=Currencies used +CurrenciesUsed_help_to_add=Add the different currencies and rates you need to use on your proposals, orders etc. +rate=rate +MulticurrencyReceived=Received, original currency +MulticurrencyRemainderToTake=Remaining amount, original currency +MulticurrencyPaymentAmount=Payment amount, original currency +AmountToOthercurrency=Amount To (in currency of receiving account) +CurrencyRateSyncSucceed=Currency rate synchronization done successfuly +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Use the currency of the document for online payments diff --git a/htdocs/langs/bn_IN/oauth.lang b/htdocs/langs/bn_IN/oauth.lang new file mode 100644 index 00000000000..075ff49a895 --- /dev/null +++ b/htdocs/langs/bn_IN/oauth.lang @@ -0,0 +1,32 @@ +# 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 credentials with your OAuth provider: +ListOfSupportedOauthProviders=Enter the credentials provided by your OAuth2 provider. Only supported OAuth2 providers are listedd here. These services 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 to 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 to this page then "Register a new application" to create OAuth credentials +OAUTH_STRIPE_TEST_NAME=OAuth Stripe Test +OAUTH_STRIPE_LIVE_NAME=OAuth Stripe Live diff --git a/htdocs/langs/bn_IN/opensurvey.lang b/htdocs/langs/bn_IN/opensurvey.lang new file mode 100644 index 00000000000..7d26151fa16 --- /dev/null +++ b/htdocs/langs/bn_IN/opensurvey.lang @@ -0,0 +1,61 @@ +# Dolibarr language file - Source file is en_US - opensurvey +Survey=Poll +Surveys=Polls +OrganizeYourMeetingEasily=Organize your meetings and polls easily. First select the type of poll... +NewSurvey=New poll +OpenSurveyArea=Polls area +AddACommentForPoll=You can add a comment into poll... +AddComment=Add comment +CreatePoll=Create poll +PollTitle=Poll title +ToReceiveEMailForEachVote=Receive an email for each vote +TypeDate=Type date +TypeClassic=Type standard +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=Remove all days +CopyHoursOfFirstDay=Copy hours of first day +RemoveAllHours=Remove all hours +SelectedDays=Selected days +TheBestChoice=The best choice currently is +TheBestChoices=The best choices currently are +with=with +OpenSurveyHowTo=If you agree to vote in this poll, you have to give your name, choose the values that fit best for you and validate with the plus button at the end of the line. +CommentsOfVoters=Comments of voters +ConfirmRemovalOfPoll=Are you sure you want to remove this poll (and all votes) +RemovePoll=Remove poll +UrlForSurvey=URL to communicate to get a direct access to poll +PollOnChoice=You are creating a poll to make a multi-choice for a poll. First enter all possible choices for your poll: +CreateSurveyDate=Create a date poll +CreateSurveyStandard=Create a standard poll +CheckBox=Simple checkbox +YesNoList=List (empty/yes/no) +PourContreList=List (empty/for/against) +AddNewColumn=Add new column +TitleChoice=Choice label +ExportSpreadsheet=Export result spreadsheet +ExpireDate=Limit date +NbOfSurveys=Number of polls +NbOfVoters=No. of voters +SurveyResults=Results +PollAdminDesc=You are allowed to change all vote lines of this poll with button "Edit". You can, as well, remove a column or a line with %s. You can also add a new column with %s. +5MoreChoices=5 more choices +Against=Against +YouAreInivitedToVote=You are invited to vote for this poll +VoteNameAlreadyExists=This name was already used for this poll +AddADate=Add a date +AddStartHour=Add start hour +AddEndHour=Add end hour +votes=vote(s) +NoCommentYet=No comments have been posted for this poll yet +CanComment=Voters can comment in the poll +CanSeeOthersVote=Voters can see other people's vote +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=Back to current month +ErrorOpenSurveyFillFirstSection=You haven't filled the first section of the poll creation +ErrorOpenSurveyOneChoice=Enter at least one choice +ErrorInsertingComment=There was an error while inserting your comment +MoreChoices=Enter more choices for the voters +SurveyExpiredInfo=The poll has been closed or voting delay has expired. +EmailSomeoneVoted=%s has filled a line.\nYou can find your poll at the link: \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 diff --git a/htdocs/langs/bn_IN/orders.lang b/htdocs/langs/bn_IN/orders.lang new file mode 100644 index 00000000000..ad91e1eef63 --- /dev/null +++ b/htdocs/langs/bn_IN/orders.lang @@ -0,0 +1,189 @@ +# Dolibarr language file - Source file is en_US - orders +OrdersArea=Customers orders area +SuppliersOrdersArea=Purchase orders area +OrderCard=Order card +OrderId=Order Id +Order=Order +PdfOrderTitle=Order +Orders=Orders +OrderLine=Order line +OrderDate=Order date +OrderDateShort=Order date +OrderToProcess=Order to process +NewOrder=New order +NewOrderSupplier=New Purchase Order +ToOrder=Make order +MakeOrder=Make order +SupplierOrder=Purchase order +SuppliersOrders=Purchase orders +SuppliersOrdersRunning=Current purchase orders +CustomerOrder=Sales Order +CustomersOrders=Sales Orders +CustomersOrdersRunning=Current sales orders +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 +SuppliersOrdersAwaitingReception=Purchase orders awaiting reception +AwaitingReception=Awaiting reception +StatusOrderCanceledShort=Canceled +StatusOrderDraftShort=Draft +StatusOrderValidatedShort=Validated +StatusOrderSentShort=In process +StatusOrderSent=Shipment in process +StatusOrderOnProcessShort=Ordered +StatusOrderProcessedShort=Processed +StatusOrderDelivered=Delivered +StatusOrderDeliveredShort=Delivered +StatusOrderToBillShort=Delivered +StatusOrderApprovedShort=Approved +StatusOrderRefusedShort=Refused +StatusOrderToProcessShort=To process +StatusOrderReceivedPartiallyShort=Partially received +StatusOrderReceivedAllShort=Products received +StatusOrderCanceled=Canceled +StatusOrderDraft=Draft (needs to be validated) +StatusOrderValidated=Validated +StatusOrderOnProcess=Ordered - Standby reception +StatusOrderOnProcessWithValidation=Ordered - Standby reception or validation +StatusOrderProcessed=Processed +StatusOrderToBill=Delivered +StatusOrderApproved=Approved +StatusOrderRefused=Refused +StatusOrderReceivedPartially=Partially received +StatusOrderReceivedAll=All products received +ShippingExist=A shipment exists +QtyOrdered=Qty ordered +ProductQtyInDraft=Product quantity into draft orders +ProductQtyInDraftOrWaitingApproved=Product quantity into draft or approved orders, not yet ordered +MenuOrdersToBill=Orders delivered +MenuOrdersToBill2=Billable orders +ShipProduct=Ship product +CreateOrder=Create Order +RefuseOrder=Refuse order +ApproveOrder=Approve order +Approve2Order=Approve order (second level) +ValidateOrder=Validate order +UnvalidateOrder=Unvalidate order +DeleteOrder=Delete order +CancelOrder=Cancel order +OrderReopened= Order %s re-open +AddOrder=Create order +AddPurchaseOrder=Create purchase order +AddToDraftOrders=Add to draft order +ShowOrder=Show order +OrdersOpened=Orders to process +NoDraftOrders=No draft orders +NoOrder=No order +NoSupplierOrder=No purchase order +LastOrders=Latest %s sales orders +LastCustomerOrders=Latest %s sales orders +LastSupplierOrders=Latest %s purchase orders +LastModifiedOrders=Latest %s modified orders +AllOrders=All orders +NbOfOrders=Number of orders +OrdersStatistics=Order's statistics +OrdersStatisticsSuppliers=Purchase order statistics +NumberOfOrdersByMonth=Number of orders by month +AmountOfOrdersByMonthHT=Amount of orders by month (excl. tax) +ListOfOrders=List of orders +CloseOrder=Close order +ConfirmCloseOrder=Are you sure you want to set this order to delivered? Once an order is delivered, it can be set to billed. +ConfirmDeleteOrder=Are you sure you want to delete this order? +ConfirmValidateOrder=Are you sure you want to validate this order under name %s? +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=Generate invoice +ClassifyShipped=Classify delivered +DraftOrders=Draft orders +DraftSuppliersOrders=Draft purchase orders +OnProcessOrders=In process orders +RefOrder=Ref. order +RefCustomerOrder=Ref. order for customer +RefOrderSupplier=Ref. order for vendor +RefOrderSupplierShort=Ref. order vendor +SendOrderByMail=Send order by mail +ActionsOnOrder=Events on order +NoArticleOfTypeProduct=No article of type 'product' so no shippable article for this order +OrderMode=Order method +AuthorRequest=Request author +UserWithApproveOrderGrant=Users granted with "approve orders" permission. +PaymentOrderRef=Payment of order %s +ConfirmCloneOrder=Are you sure you want to clone this order %s? +DispatchSupplierOrder=Receiving purchase order %s +FirstApprovalAlreadyDone=First approval already done +SecondApprovalAlreadyDone=Second approval already done +SupplierOrderReceivedInDolibarr=Purchase Order %s received %s +SupplierOrderSubmitedInDolibarr=Purchase Order %s submitted +SupplierOrderClassifiedBilled=Purchase Order %s set billed +OtherOrders=Other orders +##### Types de contacts ##### +TypeContact_commande_internal_SALESREPFOLL=Representative following-up sales order +TypeContact_commande_internal_SHIPPING=Representative following-up shipping +TypeContact_commande_external_BILLING=Customer invoice contact +TypeContact_commande_external_SHIPPING=Customer shipping contact +TypeContact_commande_external_CUSTOMER=Customer contact following-up order +TypeContact_order_supplier_internal_SALESREPFOLL=Representative following-up purchase order +TypeContact_order_supplier_internal_SHIPPING=Representative following-up shipping +TypeContact_order_supplier_external_BILLING=Vendor invoice contact +TypeContact_order_supplier_external_SHIPPING=Vendor shipping contact +TypeContact_order_supplier_external_CUSTOMER=Vendor contact following-up order +Error_COMMANDE_SUPPLIER_ADDON_NotDefined=Constant COMMANDE_SUPPLIER_ADDON not defined +Error_COMMANDE_ADDON_NotDefined=Constant COMMANDE_ADDON not defined +Error_OrderNotChecked=No orders to invoice selected +# Order modes (how we receive order). Not the "why" are keys stored into dict.lang +OrderByMail=Mail +OrderByFax=Fax +OrderByEMail=Email +OrderByWWW=Online +OrderByPhone=Phone +# Documents models +PDFEinsteinDescription=A complete order model (old implementation of Eratosthene template) +PDFEratostheneDescription=A complete order model +PDFEdisonDescription=A simple order model +PDFProformaDescription=A complete Proforma invoice template +CreateInvoiceForThisCustomer=Bill orders +CreateInvoiceForThisSupplier=Bill orders +NoOrdersToInvoice=No orders billable +CloseProcessedOrdersAutomatically=Classify "Processed" all selected orders. +OrderCreation=Order creation +Ordered=Ordered +OrderCreated=Your orders have been created +OrderFail=An error happened during your orders creation +CreateOrders=Create orders +ToBillSeveralOrderSelectCustomer=To create an invoice for several orders, click first onto customer, then choose "%s". +OptionToSetOrderBilledNotEnabled=Option from module Workflow, to set order to 'Billed' automatically when invoice is validated, is not enabled, so you will have to set the status of orders to 'Billed' manually after the invoice has been generated. +IfValidateInvoiceIsNoOrderStayUnbilled=If invoice validation is 'No', the order will remain to status 'Unbilled' until the invoice is validated. +CloseReceivedSupplierOrdersAutomatically=Close order to status "%s" automatically if all products are received. +SetShippingMode=Set shipping mode +WithReceptionFinished=With reception finished +#### supplier orders status +StatusSupplierOrderCanceledShort=Canceled +StatusSupplierOrderDraftShort=Draft +StatusSupplierOrderValidatedShort=Validated +StatusSupplierOrderSentShort=In process +StatusSupplierOrderSent=Shipment in process +StatusSupplierOrderOnProcessShort=Ordered +StatusSupplierOrderProcessedShort=Processed +StatusSupplierOrderDelivered=Delivered +StatusSupplierOrderDeliveredShort=Delivered +StatusSupplierOrderToBillShort=Delivered +StatusSupplierOrderApprovedShort=Approved +StatusSupplierOrderRefusedShort=Refused +StatusSupplierOrderToProcessShort=To process +StatusSupplierOrderReceivedPartiallyShort=Partially received +StatusSupplierOrderReceivedAllShort=Products received +StatusSupplierOrderCanceled=Canceled +StatusSupplierOrderDraft=Draft (needs to be validated) +StatusSupplierOrderValidated=Validated +StatusSupplierOrderOnProcess=Ordered - Standby reception +StatusSupplierOrderOnProcessWithValidation=Ordered - Standby reception or validation +StatusSupplierOrderProcessed=Processed +StatusSupplierOrderToBill=Delivered +StatusSupplierOrderApproved=Approved +StatusSupplierOrderRefused=Refused +StatusSupplierOrderReceivedPartially=Partially received +StatusSupplierOrderReceivedAll=All products received diff --git a/htdocs/langs/bn_IN/other.lang b/htdocs/langs/bn_IN/other.lang new file mode 100644 index 00000000000..ba85f51e739 --- /dev/null +++ b/htdocs/langs/bn_IN/other.lang @@ -0,0 +1,286 @@ +# Dolibarr language file - Source file is en_US - other +SecurityCode=Security code +NumberingShort=N° +Tools=Tools +TMenuTools=Tools +ToolsDesc=All tools not included in other menu entries are grouped here.
    All the tools can be accessed via the left menu. +Birthday=Birthday +BirthdayDate=Birthday date +DateToBirth=Birth date +BirthdayAlertOn=birthday alert active +BirthdayAlertOff=birthday alert inactive +TransKey=Translation of the key TransKey +MonthOfInvoice=Month (number 1-12) of invoice date +TextMonthOfInvoice=Month (text) of invoice date +PreviousMonthOfInvoice=Previous month (number 1-12) of invoice date +TextPreviousMonthOfInvoice=Previous month (text) of invoice date +NextMonthOfInvoice=Following month (number 1-12) of invoice date +TextNextMonthOfInvoice=Following month (text) of invoice date +ZipFileGeneratedInto=Zip file generated into %s. +DocFileGeneratedInto=Doc file generated into %s. +JumpToLogin=Disconnected. Go to login page... +MessageForm=Message on online payment form +MessageOK=Message on the return page for a validated payment +MessageKO=Message on the return page for a canceled payment +ContentOfDirectoryIsNotEmpty=Content of this directory is not empty. +DeleteAlsoContentRecursively=Check to delete all content recursively +PoweredBy=Powered by +YearOfInvoice=Year of invoice date +PreviousYearOfInvoice=Previous year of invoice date +NextYearOfInvoice=Following year of invoice date +DateNextInvoiceBeforeGen=Date of next invoice (before generation) +DateNextInvoiceAfterGen=Date of next invoice (after generation) +GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mode. The mode 'Lines' was automatically selected instead. +OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. +AtLeastOneMeasureIsRequired=At least 1 field for measure is required +AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required +LatestBlogPosts=Latest Blog Posts +Notify_ORDER_VALIDATE=Sales order validated +Notify_ORDER_SENTBYMAIL=Sales order sent by mail +Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email +Notify_ORDER_SUPPLIER_VALIDATE=Purchase order recorded +Notify_ORDER_SUPPLIER_APPROVE=Purchase order approved +Notify_ORDER_SUPPLIER_REFUSE=Purchase order refused +Notify_PROPAL_VALIDATE=Customer proposal validated +Notify_PROPAL_CLOSE_SIGNED=Customer proposal closed signed +Notify_PROPAL_CLOSE_REFUSED=Customer proposal closed refused +Notify_PROPAL_SENTBYMAIL=Commercial proposal sent by mail +Notify_WITHDRAW_TRANSMIT=Transmission withdrawal +Notify_WITHDRAW_CREDIT=Credit withdrawal +Notify_WITHDRAW_EMIT=Perform withdrawal +Notify_COMPANY_CREATE=Third party created +Notify_COMPANY_SENTBYMAIL=Mails sent from third party card +Notify_BILL_VALIDATE=Customer invoice validated +Notify_BILL_UNVALIDATE=Customer invoice unvalidated +Notify_BILL_PAYED=Customer invoice paid +Notify_BILL_CANCEL=Customer invoice canceled +Notify_BILL_SENTBYMAIL=Customer invoice sent by mail +Notify_BILL_SUPPLIER_VALIDATE=Vendor invoice validated +Notify_BILL_SUPPLIER_PAYED=Vendor invoice paid +Notify_BILL_SUPPLIER_SENTBYMAIL=Vendor invoice sent by mail +Notify_BILL_SUPPLIER_CANCELED=Vendor invoice cancelled +Notify_CONTRACT_VALIDATE=Contract validated +Notify_FICHINTER_VALIDATE=Intervention validated +Notify_FICHINTER_ADD_CONTACT=Added contact to Intervention +Notify_FICHINTER_SENTBYMAIL=Intervention sent by mail +Notify_SHIPPING_VALIDATE=Shipping validated +Notify_SHIPPING_SENTBYMAIL=Shipping sent by mail +Notify_MEMBER_VALIDATE=Member validated +Notify_MEMBER_MODIFY=Member modified +Notify_MEMBER_SUBSCRIPTION=Member subscribed +Notify_MEMBER_RESILIATE=Member terminated +Notify_MEMBER_DELETE=Member deleted +Notify_PROJECT_CREATE=Project creation +Notify_TASK_CREATE=Task created +Notify_TASK_MODIFY=Task modified +Notify_TASK_DELETE=Task deleted +Notify_EXPENSE_REPORT_VALIDATE=Expense report validated (approval required) +Notify_EXPENSE_REPORT_APPROVE=Expense report approved +Notify_HOLIDAY_VALIDATE=Leave request validated (approval required) +Notify_HOLIDAY_APPROVE=Leave request approved +SeeModuleSetup=See setup of module %s +NbOfAttachedFiles=Number of attached files/documents +TotalSizeOfAttachedFiles=Total size of attached files/documents +MaxSize=Maximum size +AttachANewFile=Attach a new file/document +LinkedObject=Linked object +NbOfActiveNotifications=Number of notifications (no. of recipient emails) +PredefinedMailTest=__(Hello)__\nThis is a test mail sent to __EMAIL__.\nThe two lines are separated by a carriage return.\n\n__USER_SIGNATURE__ +PredefinedMailTestHtml=__(Hello)__\nThis is a test 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__ +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__ +PredefinedMailContentSendSupplierProposal=__(Hello)__\n\nPlease find price request __REF__ attached\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ +PredefinedMailContentSendOrder=__(Hello)__\n\nPlease find order __REF__ attached\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ +PredefinedMailContentSendSupplierOrder=__(Hello)__\n\nPlease find our order __REF__ attached\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ +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__ +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 is a compact ERP/CRM supporting several business modules. A demo showcasing all modules makes no sense as this scenario never occurs (several hundred available). So, several demo profiles are available. +ChooseYourDemoProfil=Choose the demo profile that best suits your needs... +ChooseYourDemoProfilMore=...or build your own profile
    (manual module selection) +DemoFundation=Manage members of a foundation +DemoFundation2=Manage members and bank account of a foundation +DemoCompanyServiceOnly=Company or freelance selling service only +DemoCompanyShopWithCashDesk=Manage a shop with a cash desk +DemoCompanyProductAndStocks=Shop selling products with Point Of Sales +DemoCompanyManufacturing=Company manufacturing products +DemoCompanyAll=Company with multiple activities (all main modules) +CreatedBy=Created by %s +ModifiedBy=Modified by %s +ValidatedBy=Validated by %s +ClosedBy=Closed by %s +CreatedById=User id who created +ModifiedById=User id who made latest change +ValidatedById=User id who validated +CanceledById=User id who canceled +ClosedById=User id who closed +CreatedByLogin=User login who created +ModifiedByLogin=User login who made latest change +ValidatedByLogin=User login who validated +CanceledByLogin=User login who canceled +ClosedByLogin=User login who closed +FileWasRemoved=File %s was removed +DirWasRemoved=Directory %s was removed +FeatureNotYetAvailable=Feature not yet available in the current version +FeaturesSupported=Supported features +Width=Width +Height=Height +Depth=Depth +Top=Top +Bottom=Bottom +Left=Left +Right=Right +CalculatedWeight=Calculated weight +CalculatedVolume=Calculated volume +Weight=Weight +WeightUnitton=tonne +WeightUnitkg=kg +WeightUnitg=g +WeightUnitmg=mg +WeightUnitpound=pound +WeightUnitounce=ounce +Length=Length +LengthUnitm=m +LengthUnitdm=dm +LengthUnitcm=cm +LengthUnitmm=mm +Surface=Area +SurfaceUnitm2=m² +SurfaceUnitdm2=dm² +SurfaceUnitcm2=cm² +SurfaceUnitmm2=mm² +SurfaceUnitfoot2=ft² +SurfaceUnitinch2=in² +Volume=Volume +VolumeUnitm3=m³ +VolumeUnitdm3=dm³ (L) +VolumeUnitcm3=cm³ (ml) +VolumeUnitmm3=mm³ (µl) +VolumeUnitfoot3=ft³ +VolumeUnitinch3=in³ +VolumeUnitounce=ounce +VolumeUnitlitre=litre +VolumeUnitgallon=gallon +SizeUnitm=m +SizeUnitdm=dm +SizeUnitcm=cm +SizeUnitmm=mm +SizeUnitinch=inch +SizeUnitfoot=foot +SizeUnitpoint=point +BugTracker=Bug tracker +SendNewPasswordDesc=This form allows you to request a new password. It will be sent to your email address.
    Change will become effective once you click on the confirmation link in the email.
    Check your inbox. +BackToLoginPage=Back to login page +AuthenticationDoesNotAllowSendNewPassword=Authentication mode is %s.
    In this mode, Dolibarr can't know nor change your password.
    Contact your system administrator if you want to change your password. +EnableGDLibraryDesc=Install or enable GD library on your PHP installation to use this option. +ProfIdShortDesc=Prof Id %s is an information depending on third party country.
    For example, for country %s, it's code %s. +DolibarrDemo=Dolibarr ERP/CRM demo +StatsByNumberOfUnits=Statistics for sum of qty of products/services +StatsByNumberOfEntities=Statistics in number of referring entities (no. of invoice, or order...) +NumberOfProposals=Number of proposals +NumberOfCustomerOrders=Number of sales orders +NumberOfCustomerInvoices=Number of customer invoices +NumberOfSupplierProposals=Number of vendor proposals +NumberOfSupplierOrders=Number of purchase orders +NumberOfSupplierInvoices=Number of vendor invoices +NumberOfContracts=Number of contracts +NumberOfMos=Number of manufacturing orders +NumberOfUnitsProposals=Number of units on proposals +NumberOfUnitsCustomerOrders=Number of units on sales orders +NumberOfUnitsCustomerInvoices=Number of units on customer invoices +NumberOfUnitsSupplierProposals=Number of units on vendor proposals +NumberOfUnitsSupplierOrders=Number of units on purchase orders +NumberOfUnitsSupplierInvoices=Number of units on vendor invoices +NumberOfUnitsContracts=Number of units on contracts +NumberOfUnitsMos=Number of units to produce in manufacturing orders +EMailTextInterventionAddedContact=A new intervention %s has been assigned to you. +EMailTextInterventionValidated=The intervention %s has been validated. +EMailTextInvoiceValidated=Invoice %s has been validated. +EMailTextInvoicePayed=Invoice %s has been paid. +EMailTextProposalValidated=Proposal %s has been validated. +EMailTextProposalClosedSigned=Proposal %s has been closed signed. +EMailTextOrderValidated=Order %s has been validated. +EMailTextOrderApproved=Order %s has been approved. +EMailTextOrderValidatedBy=Order %s has been recorded by %s. +EMailTextOrderApprovedBy=Order %s has been approved by %s. +EMailTextOrderRefused=Order %s has been refused. +EMailTextOrderRefusedBy=Order %s has been refused by %s. +EMailTextExpeditionValidated=Shipping %s has been validated. +EMailTextExpenseReportValidated=Expense report %s has been validated. +EMailTextExpenseReportApproved=Expense report %s has been approved. +EMailTextHolidayValidated=Leave request %s has been validated. +EMailTextHolidayApproved=Leave request %s has been approved. +ImportedWithSet=Importation data set +DolibarrNotification=Automatic notification +ResizeDesc=Enter new width OR new height. Ratio will be kept during resizing... +NewLength=New width +NewHeight=New height +NewSizeAfterCropping=New size after cropping +DefineNewAreaToPick=Define new area on image to pick (left click on image then drag until you reach the opposite corner) +CurrentInformationOnImage=This tool was designed to help you to resize or crop an image. This is the information on the current edited image +ImageEditor=Image editor +YouReceiveMailBecauseOfNotification=You receive this message because your email has been added to list of targets to be informed of particular events into %s software of %s. +YouReceiveMailBecauseOfNotification2=This event is the following: +ThisIsListOfModules=This is a list of modules preselected by this demo profile (only most common modules are visible in this demo). Edit this to have a more personalized demo and click on "Start". +UseAdvancedPerms=Use the advanced permissions of some modules +FileFormat=File format +SelectAColor=Choose a color +AddFiles=Add Files +StartUpload=Start upload +CancelUpload=Cancel upload +FileIsTooBig=Files is too big +PleaseBePatient=Please be patient... +NewPassword=New password +ResetPassword=Reset password +RequestToResetPasswordReceived=A request to change your password has been received. +NewKeyIs=This is your new keys to login +NewKeyWillBe=Your new key to login to software will be +ClickHereToGoTo=Click here to go to %s +YouMustClickToChange=You must however first click on the following link to validate this password change +ForgetIfNothing=If you didn't request this change, just forget this email. Your credentials are kept safe. +IfAmountHigherThan=If amount higher than %s +SourcesRepository=Repository for sources +Chart=Chart +PassEncoding=Password encoding +PermissionsAdd=Permissions added +PermissionsDelete=Permissions removed +YourPasswordMustHaveAtLeastXChars=Your password must have at least %s chars +YourPasswordHasBeenReset=Your password has been reset successfully +ApplicantIpAddress=IP address of applicant +SMSSentTo=SMS sent to %s +MissingIds=Missing ids +ThirdPartyCreatedByEmailCollector=Third party created by email collector from email MSGID %s +ContactCreatedByEmailCollector=Contact/address created by email collector from email MSGID %s +ProjectCreatedByEmailCollector=Project created by email collector from email MSGID %s +TicketCreatedByEmailCollector=Ticket created by email collector from email MSGID %s +OpeningHoursFormatDesc=Use a - to separate opening and closing hours.
    Use a space to enter different ranges.
    Example: 8-12 14-18 + +##### Export ##### +ExportsArea=Exports area +AvailableFormats=Available formats +LibraryUsed=Library used +LibraryVersion=Library version +ExportableDatas=Exportable data +NoExportableData=No exportable data (no modules with exportable data loaded, or missing permissions) +##### External sites ##### +WebsiteSetup=Setup of module website +WEBSITE_PAGEURL=URL of page +WEBSITE_TITLE=Title +WEBSITE_DESCRIPTION=Description +WEBSITE_IMAGE=Image +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). +WEBSITE_KEYWORDS=Keywords +LinesToImport=Lines to import + +MemoryUsage=Memory usage +RequestDuration=Duration of request +PopuProp=Products/Services by popularity in Proposals +PopuCom=Products/Services by popularity in Orders +ProductStatistics=Products/Services Statistics +NbOfQtyInOrders=Qty in orders diff --git a/htdocs/langs/bn_IN/paybox.lang b/htdocs/langs/bn_IN/paybox.lang new file mode 100644 index 00000000000..1bbbef4017b --- /dev/null +++ b/htdocs/langs/bn_IN/paybox.lang @@ -0,0 +1,31 @@ +# Dolibarr language file - Source file is en_US - paybox +PayBoxSetup=PayBox module setup +PayBoxDesc=This module offer pages to allow payment on Paybox by customers. This can be used for a free payment or for a payment on a particular Dolibarr object (invoice, order, ...) +FollowingUrlAreAvailableToMakePayments=Following URLs are available to offer a page to a customer to make a payment on Dolibarr objects +PaymentForm=Payment form +WelcomeOnPaymentPage=Welcome to our online payment service +ThisScreenAllowsYouToPay=This screen allow you to make an online payment to %s. +ThisIsInformationOnPayment=This is information on payment to do +ToComplete=To complete +YourEMail=Email to receive payment confirmation +Creditor=Creditor +PaymentCode=Payment code +PayBoxDoPayment=Pay with Paybox +YouWillBeRedirectedOnPayBox=You will be redirected on secured Paybox page to input you credit card information +Continue=Next +SetupPayBoxToHavePaymentCreatedAutomatically=Setup your Paybox with url %s to have payment created automatically when validated by Paybox. +YourPaymentHasBeenRecorded=This page confirms that your payment has been recorded. Thank you. +YourPaymentHasNotBeenRecorded=Your payment has NOT been recorded and the transaction has been canceled. Thank you. +AccountParameter=Account parameters +UsageParameter=Usage parameters +InformationToFindParameters=Help to find your %s account information +PAYBOX_CGI_URL_V2=Url of Paybox CGI module for payment +VendorName=Name of vendor +CSSUrlForPaymentForm=CSS style sheet url for payment form +NewPayboxPaymentReceived=New Paybox payment received +NewPayboxPaymentFailed=New Paybox payment tried but failed +PAYBOX_PAYONLINE_SENDEMAIL=Email notification after payment attempt (success or fail) +PAYBOX_PBX_SITE=Value for PBX SITE +PAYBOX_PBX_RANG=Value for PBX Rang +PAYBOX_PBX_IDENTIFIANT=Value for PBX ID +PAYBOX_HMAC_KEY=HMAC key diff --git a/htdocs/langs/bn_IN/paypal.lang b/htdocs/langs/bn_IN/paypal.lang new file mode 100644 index 00000000000..5eb5f389445 --- /dev/null +++ b/htdocs/langs/bn_IN/paypal.lang @@ -0,0 +1,36 @@ +# Dolibarr language file - Source file is en_US - paypal +PaypalSetup=PayPal module setup +PaypalDesc=This module allows payment by customers via PayPal. This can be used for a ad-hoc payment or for a payment related to a Dolibarr object (invoice, order, ...) +PaypalOrCBDoPayment=Pay with PayPal (Card or PayPal) +PaypalDoPayment=Pay with PayPal +PAYPAL_API_SANDBOX=Mode test/sandbox +PAYPAL_API_USER=API username +PAYPAL_API_PASSWORD=API password +PAYPAL_API_SIGNATURE=API signature +PAYPAL_SSLVERSION=Curl SSL Version +PAYPAL_API_INTEGRAL_OR_PAYPALONLY=Offer "integral" payment (Credit card+PayPal) or "PayPal" only +PaypalModeIntegral=Integral +PaypalModeOnlyPaypal=PayPal only +ONLINE_PAYMENT_CSS_URL=Optional URL of CSS stylesheet on online payment page +ThisIsTransactionId=This is id of transaction: %s +PAYPAL_ADD_PAYMENT_URL=Include the PayPal payment url when you send a document by email +NewOnlinePaymentReceived=New online payment received +NewOnlinePaymentFailed=New online payment tried but failed +ONLINE_PAYMENT_SENDEMAIL=Email address for notifications after each payment attempt (for success and fail) +ReturnURLAfterPayment=Return URL after payment +ValidationOfOnlinePaymentFailed=Validation of online payment failed +PaymentSystemConfirmPaymentPageWasCalledButFailed=Payment confirmation page was called by payment system returned an error +SetExpressCheckoutAPICallFailed=SetExpressCheckout API call failed. +DoExpressCheckoutPaymentAPICallFailed=DoExpressCheckoutPayment API call failed. +DetailedErrorMessage=Detailed Error Message +ShortErrorMessage=Short Error Message +ErrorCode=Error Code +ErrorSeverityCode=Error Severity Code +OnlinePaymentSystem=Online payment system +PaypalLiveEnabled=PayPal "live" mode enabled (otherwise test/sandbox mode) +PaypalImportPayment=Import PayPal payments +PostActionAfterPayment=Post actions after payments +ARollbackWasPerformedOnPostActions=A rollback was performed on all Post actions. You must complete post actions manually if they are necessary. +ValidationOfPaymentFailed=Validation of payment has failed +CardOwner=Card holder +PayPalBalance=Paypal credit diff --git a/htdocs/langs/bn_IN/printing.lang b/htdocs/langs/bn_IN/printing.lang new file mode 100644 index 00000000000..16494583550 --- /dev/null +++ b/htdocs/langs/bn_IN/printing.lang @@ -0,0 +1,54 @@ +# Dolibarr language file - Source file is en_US - printing +Module64000Name=Direct Printing +Module64000Desc=Enable Direct Printing System +PrintingSetup=Setup of Direct Printing System +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=Direct Printing jobs +DirectPrint=Direct print +PrintingDriverDesc=Configuration variables for printing driver. +ListDrivers=List of drivers +PrintTestDesc=List of Printers. +FileWasSentToPrinter=File %s was sent to printer +ViaModule=via the module +NoActivePrintingModuleFound=No active driver to print document. Check setup of module %s. +PleaseSelectaDriverfromList=Please select a driver from list. +PleaseConfigureDriverfromList=Please configure the selected driver from list. +SetupDriver=Driver setup +TargetedPrinter=Targeted printer +UserConf=Setup per user +PRINTGCP_INFO=Google OAuth API setup +PRINTGCP_AUTHLINK=Authentication +PRINTGCP_TOKEN_ACCESS=Google Cloud Print OAuth Token +PrintGCPDesc=This driver allows sending documents directly to a printer using Google Cloud Print. +GCP_Name=Name +GCP_displayName=Display Name +GCP_Id=Printer Id +GCP_OwnerName=Owner Name +GCP_State=Printer State +GCP_connectionStatus=Online State +GCP_Type=Printer Type +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=Login +PRINTIPP_PASSWORD=Password +NoDefaultPrinterDefined=No default printer defined +DefaultPrinter=Default printer +Printer=Printer +IPP_Uri=Printer Uri +IPP_Name=Printer Name +IPP_State=Printer State +IPP_State_reason=State reason +IPP_State_reason1=State reason1 +IPP_BW=BW +IPP_Color=Color +IPP_Device=Device +IPP_Media=Printer media +IPP_Supported=Type of media +DirectPrintingJobsDesc=This page lists printing jobs found for available printers. +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/bn_IN/productbatch.lang b/htdocs/langs/bn_IN/productbatch.lang new file mode 100644 index 00000000000..54270c4a23b --- /dev/null +++ b/htdocs/langs/bn_IN/productbatch.lang @@ -0,0 +1,24 @@ +# ProductBATCH language file - en_US - ProductBATCH +ManageLotSerial=Use lot/serial number +ProductStatusOnBatch=Yes (lot/serial required) +ProductStatusNotOnBatch=No (lot/serial not used) +ProductStatusOnBatchShort=Yes +ProductStatusNotOnBatchShort=No +Batch=Lot/Serial +atleast1batchfield=Eat-by date or Sell-by date or Lot/Serial number +batch_number=Lot/Serial number +BatchNumberShort=Lot/Serial +EatByDate=Eat-by date +SellByDate=Sell-by date +DetailBatchNumber=Lot/Serial details +printBatch=Lot/Serial: %s +printEatby=Eat-by: %s +printSellby=Sell-by: %s +printQty=Qty: %d +AddDispatchBatchLine=Add a line for Shelf Life dispatching +WhenProductBatchModuleOnOptionAreForced=When module Lot/Serial is on, automatic stock decrease is forced to 'Decrease real stocks on shipping validation' and automatic increase mode is forced to 'Increase real stocks on manual dispatching into warehouses' and can't be edited. Other options can be defined as you want. +ProductDoesNotUseBatchSerial=This product does not use lot/serial number +ProductLotSetup=Setup of module lot/serial +ShowCurrentStockOfLot=Show current stock for couple product/lot +ShowLogOfMovementIfLot=Show log of movements for couple product/lot +StockDetailPerBatch=Stock detail per lot diff --git a/htdocs/langs/bn_IN/products.lang b/htdocs/langs/bn_IN/products.lang new file mode 100644 index 00000000000..a31243a07b6 --- /dev/null +++ b/htdocs/langs/bn_IN/products.lang @@ -0,0 +1,385 @@ +# Dolibarr language file - Source file is en_US - products +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 +TMenuProducts=Products +TMenuServices=Services +Products=Products +Services=Services +Product=Product +Service=Service +ProductId=Product/service id +Create=Create +Reference=Reference +NewProduct=New product +NewService=New service +ProductVatMassChange=Global VAT Update +ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL products and services! +MassBarcodeInit=Mass barcode init +MassBarcodeInitDesc=This page can be used to initialize a barcode on objects that does not have barcode defined. Check before that setup of module barcode is complete. +ProductAccountancyBuyCode=Accounting code (purchase) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) +ProductAccountancySellCode=Accounting code (sale) +ProductAccountancySellIntraCode=Accounting code (sale intra-Community) +ProductAccountancySellExportCode=Accounting code (sale export) +ProductOrService=Product or Service +ProductsAndServices=Products and Services +ProductsOrServices=Products or Services +ProductsPipeServices=Products | Services +ProductsOnSale=Products for sale +ProductsOnPurchase=Products for purchase +ProductsOnSaleOnly=Products for sale only +ProductsOnPurchaseOnly=Products for purchase only +ProductsNotOnSell=Products not for sale and not for purchase +ProductsOnSellAndOnBuy=Products for sale and for purchase +ServicesOnSale=Services for sale +ServicesOnPurchase=Services for purchase +ServicesOnSaleOnly=Services for sale only +ServicesOnPurchaseOnly=Services for purchase only +ServicesNotOnSell=Services not for sale and not for purchase +ServicesOnSellAndOnBuy=Services for sale and for purchase +LastModifiedProductsAndServices=Last %s modified products/services +LastRecordedProducts=Latest %s recorded products +LastRecordedServices=Latest %s recorded services +CardProduct0=Product +CardProduct1=Service +Stock=Stock +MenuStocks=Stocks +Stocks=Stocks and location (warehouse) of products +Movements=Movements +Sell=Sell +Buy=Purchase +OnSell=For sale +OnBuy=For purchase +NotOnSell=Not for sale +ProductStatusOnSell=For sale +ProductStatusNotOnSell=Not for sale +ProductStatusOnSellShort=For sale +ProductStatusNotOnSellShort=Not for sale +ProductStatusOnBuy=For purchase +ProductStatusNotOnBuy=Not for purchase +ProductStatusOnBuyShort=For purchase +ProductStatusNotOnBuyShort=Not for purchase +UpdateVAT=Update vat +UpdateDefaultPrice=Update default price +UpdateLevelPrices=Update prices for each level +AppliedPricesFrom=Applied from +SellingPrice=Selling price +SellingPriceHT=Selling price (excl. tax) +SellingPriceTTC=Selling price (inc. tax) +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. +CostPriceUsage=This value could be used for margin calculation. +SoldAmount=Sold amount +PurchasedAmount=Purchased amount +NewPrice=New price +MinPrice=Min. sell price +EditSellingPriceLabel=Edit selling price label +CantBeLessThanMinPrice=The selling price can't be lower than minimum allowed for this product (%s without tax). This message can also appears if you type a too important discount. +ContractStatusClosed=Closed +ErrorProductAlreadyExists=A product with reference %s already exists. +ErrorProductBadRefOrLabel=Wrong value for reference or label. +ErrorProductClone=There was a problem while trying to clone the product or service. +ErrorPriceCantBeLowerThanMinPrice=Error, price can't be lower than minimum price. +Suppliers=Vendors +SupplierRef=Vendor SKU +ShowProduct=Show product +ShowService=Show service +ProductsAndServicesArea=Product and Services area +ProductsArea=Product area +ServicesArea=Services area +ListOfStockMovements=List of stock movements +BuyingPrice=Buying price +PriceForEachProduct=Products with specific prices +SupplierCard=Vendor card +PriceRemoved=Price removed +BarCode=Barcode +BarcodeType=Barcode type +SetDefaultBarcodeType=Set barcode type +BarcodeValue=Barcode value +NoteNotVisibleOnBill=Note (not visible on invoices, proposals...) +ServiceLimitedDuration=If product is a service with limited duration: +MultiPricesAbility=Multiple price segments per product/service (each customer is in one price segment) +MultiPricesNumPrices=Number of prices +AssociatedProductsAbility=Activate virtual products (kits) +AssociatedProducts=Virtual products +AssociatedProductsNumber=Number of products composing this virtual product +ParentProductsNumber=Number of parent packaging product +ParentProducts=Parent products +IfZeroItIsNotAVirtualProduct=If 0, this product is not a virtual product +IfZeroItIsNotUsedByVirtualProduct=If 0, this product is not used by any virtual product +KeywordFilter=Keyword filter +CategoryFilter=Category filter +ProductToAddSearch=Search product to add +NoMatchFound=No match found +ListOfProductsServices=List of products/services +ProductAssociationList=List of products/services that are component(s) of this virtual product/kit +ProductParentList=List of virtual products/services with this product as a component +ErrorAssociationIsFatherOfThis=One of selected product is parent with current product +DeleteProduct=Delete a product/service +ConfirmDeleteProduct=Are you sure you want to delete this product/service? +ProductDeleted=Product/Service "%s" deleted from database. +ExportDataset_produit_1=Products +ExportDataset_service_1=Services +ImportDataset_produit_1=Products +ImportDataset_service_1=Services +DeleteProductLine=Delete product line +ConfirmDeleteProductLine=Are you sure you want to delete this product line? +ProductSpecial=Special +QtyMin=Min. purchase quantity +PriceQtyMin=Price quantity min. +PriceQtyMinCurrency=Price (currency) for this qty. (no discount) +VATRateForSupplierProduct=VAT Rate (for this vendor/product) +DiscountQtyMin=Discount for this qty. +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=Predefined products/services to sell +PredefinedProductsToPurchase=Predefined product to purchase +PredefinedServicesToPurchase=Predefined services to purchase +PredefinedProductsAndServicesToPurchase=Predefined products/services to purchase +NotPredefinedProducts=Not predefined products/services +GenerateThumb=Generate thumb +ServiceNb=Service #%s +ListProductServiceByPopularity=List of products/services by popularity +ListProductByPopularity=List of products by popularity +ListServiceByPopularity=List of services by popularity +Finished=Manufactured product +RowMaterial=Raw Material +ConfirmCloneProduct=Are you sure you want to clone product or service %s? +CloneContentProduct=Clone all main information of product/service +ClonePricesProduct=Clone prices +CloneCategoriesProduct=Clone tags/categories linked +CloneCompositionProduct=Clone virtual product/service +CloneCombinationsProduct=Clone product variants +ProductIsUsed=This product is used +NewRefForClone=Ref. of new product/service +SellingPrices=Selling prices +BuyingPrices=Buying prices +CustomerPrices=Customer prices +SuppliersPrices=Vendor prices +SuppliersPricesOfProductsOrServices=Vendor prices (of products or services) +CustomCode=Customs / Commodity / HS code +CountryOrigin=Origin country +Nature=Nature of product (material/finished) +ShortLabel=Short label +Unit=Unit +p=u. +set=set +se=set +second=second +s=s +hour=hour +h=h +day=day +d=d +kilogram=kilogram +kg=Kg +gram=gram +g=g +meter=meter +m=m +lm=lm +m2=m² +m3=m³ +liter=liter +l=L +unitP=Piece +unitSET=Set +unitS=Second +unitH=Hour +unitD=Day +unitG=Gram +unitM=Meter +unitLM=Linear meter +unitM2=Square meter +unitM3=Cubic meter +unitL=Liter +unitT=ton +unitKG=kg +unitG=Gram +unitMG=mg +unitLB=pound +unitOZ=ounce +unitM=Meter +unitDM=dm +unitCM=cm +unitMM=mm +unitFT=ft +unitIN=in +unitM2=Square meter +unitDM2=dm² +unitCM2=cm² +unitMM2=mm² +unitFT2=ft² +unitIN2=in² +unitM3=Cubic meter +unitDM3=dm³ +unitCM3=cm³ +unitMM3=mm³ +unitFT3=ft³ +unitIN3=in³ +unitOZ3=ounce +unitgallon=gallon +ProductCodeModel=Product ref template +ServiceCodeModel=Service ref template +CurrentProductPrice=Current price +AlwaysUseNewPrice=Always use current price of product/service +AlwaysUseFixedPrice=Use the fixed price +PriceByQuantity=Different prices by quantity +DisablePriceByQty=Disable prices by quantity +PriceByQuantityRange=Quantity range +MultipriceRules=Price segment rules +UseMultipriceRules=Use price segment rules (defined into product module setup) to auto calculate prices of all other segments according to first segment +PercentVariationOver=%% variation over %s +PercentDiscountOver=%% discount over %s +KeepEmptyForAutoCalculation=Keep empty to have this calculated automatically from weight or volume of products +VariantRefExample=Examples: COL, SIZE +VariantLabelExample=Examples: Color, Size +### composition fabrication +Build=Produce +ProductsMultiPrice=Products and prices for each price segment +ProductsOrServiceMultiPrice=Customer prices (of products or services, multi-prices) +ProductSellByQuarterHT=Products turnover quarterly before tax +ServiceSellByQuarterHT=Services turnover quarterly before tax +Quarter1=1st. Quarter +Quarter2=2nd. Quarter +Quarter3=3rd. Quarter +Quarter4=4th. Quarter +BarCodePrintsheet=Print barcode +PageToGenerateBarCodeSheets=With this tool, you can print sheets of barcode stickers. Choose format of your sticker page, type of barcode and value of barcode, then click on button %s. +NumberOfStickers=Number of stickers to print on page +PrintsheetForOneBarCode=Print several stickers for one barcode +BuildPageToPrint=Generate page to print +FillBarCodeTypeAndValueManually=Fill barcode type and value manually. +FillBarCodeTypeAndValueFromProduct=Fill barcode type and value from barcode of a product. +FillBarCodeTypeAndValueFromThirdParty=Fill barcode type and value from barcode of a third party. +DefinitionOfBarCodeForProductNotComplete=Definition of type or value of barcode not complete for product %s. +DefinitionOfBarCodeForThirdpartyNotComplete=Definition of type or value of barcode non complete for third party %s. +BarCodeDataForProduct=Barcode information of product %s: +BarCodeDataForThirdparty=Barcode information of third party %s: +ResetBarcodeForAllRecords=Define barcode value for all record (this will also reset barcode value already defined with new values) +PriceByCustomer=Different prices for each customer +PriceCatalogue=A single sell price per product/service +PricingRule=Rules for selling prices +AddCustomerPrice=Add price by customer +ForceUpdateChildPriceSoc=Set same price on customer subsidiaries +PriceByCustomerLog=Log of previous customer prices +MinimumPriceLimit=Minimum price can't be lower then %s +MinimumRecommendedPrice=Minimum recommended price is: %s +PriceExpressionEditor=Price expression editor +PriceExpressionSelected=Selected price expression +PriceExpressionEditorHelp1="price = 2 + 2" or "2 + 2" for setting the price. Use ; to separate expressions +PriceExpressionEditorHelp2=You can access ExtraFields with variables like #extrafield_myextrafieldkey# and global variables with #global_mycode# +PriceExpressionEditorHelp3=In both product/service and vendor prices there are these variables available:
    #tva_tx# #localtax1_tx# #localtax2_tx# #weight# #length# #surface# #price_min# +PriceExpressionEditorHelp4=In product/service price only: #supplier_min_price#
    In vendor prices only: #supplier_quantity# and #supplier_tva_tx# +PriceExpressionEditorHelp5=Available global values: +PriceMode=Price mode +PriceNumeric=Number +DefaultPrice=Default price +ComposedProductIncDecStock=Increase/Decrease stock on parent change +ComposedProduct=Child products +MinSupplierPrice=Minimum buying price +MinCustomerPrice=Minimum selling price +DynamicPriceConfiguration=Dynamic price configuration +DynamicPriceDesc=You may define mathematical formulae to calculate Customer or Vendor prices. Such formulas can use all mathematical operators, some constants and variables. You can define here the variables you wish to use. If the variable needs an automatic update, you may define the external URL to allow Dolibarr to update the value automatically. +AddVariable=Add Variable +AddUpdater=Add Updater +GlobalVariables=Global variables +VariableToUpdate=Variable to update +GlobalVariableUpdaters=External updaters for variables +GlobalVariableUpdaterType0=JSON data +GlobalVariableUpdaterHelp0=Parses JSON data from specified URL, VALUE specifies the location of relevant value, +GlobalVariableUpdaterHelpFormat0=Format for request {"URL": "http://example.com/urlofjson", "VALUE": "array1,array2,targetvalue"} +GlobalVariableUpdaterType1=WebService data +GlobalVariableUpdaterHelp1=Parses WebService data from specified URL, NS specifies the namespace, VALUE specifies the location of relevant value, DATA should contain the data to send and METHOD is the calling WS method +GlobalVariableUpdaterHelpFormat1=Format for request is {"URL": "http://example.com/urlofws", "VALUE": "array,targetvalue", "NS": "http://example.com/urlofns", "METHOD": "myWSMethod", "DATA": {"your": "data", "to": "send"}} +UpdateInterval=Update interval (minutes) +LastUpdated=Latest update +CorrectlyUpdated=Correctly updated +PropalMergePdfProductActualFile=Files use to add into PDF Azur are/is +PropalMergePdfProductChooseFile=Select PDF files +IncludingProductWithTag=Including product/service with tag +DefaultPriceRealPriceMayDependOnCustomer=Default price, real price may depend on customer +WarningSelectOneDocument=Please select at least one document +DefaultUnitToShow=Unit +NbOfQtyInProposals=Qty in proposals +ClinkOnALinkOfColumn=Click on a link of column %s to get a detailed view... +ProductsOrServicesTranslations=Products/Services translations +TranslatedLabel=Translated label +TranslatedDescription=Translated description +TranslatedNote=Translated notes +ProductWeight=Weight for 1 product +ProductVolume=Volume for 1 product +WeightUnits=Weight unit +VolumeUnits=Volume unit +WidthUnits=Width unit +LengthUnits=Length unit +HeightUnits=Height unit +SurfaceUnits=Surface unit +SizeUnits=Size unit +DeleteProductBuyPrice=Delete buying price +ConfirmDeleteProductBuyPrice=Are you sure you want to delete this buying price? +SubProduct=Sub product +ProductSheet=Product sheet +ServiceSheet=Service sheet +PossibleValues=Possible values +GoOnMenuToCreateVairants=Go on menu %s - %s to prepare attribute variants (like colors, size, ...) +UseProductFournDesc=Add a feature to define the descriptions of products defined by the vendors in addition to descriptions for customers +ProductSupplierDescription=Vendor description for the product +UseProductSupplierPackaging=Use packaging on supplier prices (recalculate quantities according to packaging set on supplier price when adding/updating line in supplier documents) +PackagingForThisProduct=Packaging +QtyRecalculatedWithPackaging=The quantity of the line were recalculated according to supplier packaging + +#Attributes +VariantAttributes=Variant attributes +ProductAttributes=Variant attributes for products +ProductAttributeName=Variant attribute %s +ProductAttribute=Variant attribute +ProductAttributeDeleteDialog=Are you sure you want to delete this attribute? All values will be deleted +ProductAttributeValueDeleteDialog=Are you sure you want to delete the value "%s" with reference "%s" of this attribute? +ProductCombinationDeleteDialog=Are you sure want to delete the variant of the product "%s"? +ProductCombinationAlreadyUsed=There was an error while deleting the variant. Please check it is not being used in any object +ProductCombinations=Variants +PropagateVariant=Propagate variants +HideProductCombinations=Hide products variant in the products selector +ProductCombination=Variant +NewProductCombination=New variant +EditProductCombination=Editing variant +NewProductCombinations=New variants +EditProductCombinations=Editing variants +SelectCombination=Select combination +ProductCombinationGenerator=Variants generator +Features=Features +PriceImpact=Price impact +WeightImpact=Weight impact +NewProductAttribute=New attribute +NewProductAttributeValue=New attribute value +ErrorCreatingProductAttributeValue=There was an error while creating the attribute value. It could be because there is already an existing value with that reference +ProductCombinationGeneratorWarning=If you continue, before generating new variants, all previous ones will be DELETED. Already existing ones will be updated with the new values +TooMuchCombinationsWarning=Generating lots of variants may result in high CPU, memory usage and Dolibarr not able to create them. Enabling the option "%s" may help reduce memory usage. +DoNotRemovePreviousCombinations=Do not remove previous variants +UsePercentageVariations=Use percentage variations +PercentageVariation=Percentage variation +ErrorDeletingGeneratedProducts=There was an error while trying to delete existing product variants +NbOfDifferentValues=No. of different values +NbProducts=Number of products +ParentProduct=Parent product +HideChildProducts=Hide variant products +ShowChildProducts=Show variant products +NoEditVariants=Go to Parent product card and edit variants price impact in the variants tab +ConfirmCloneProductCombinations=Would you like to copy all the product variants to the other parent product with the given reference? +CloneDestinationReference=Destination product reference +ErrorCopyProductCombinations=There was an error while copying the product variants +ErrorDestinationProductNotFound=Destination product not found +ErrorProductCombinationNotFound=Product variant not found +ActionAvailableOnVariantProductOnly=Action only available on the variant of product +ProductsPricePerCustomer=Product prices per customers +ProductSupplierExtraFields=Additional Attributes (Supplier Prices) +DeleteLinkedProduct=Delete the child product linked to the combination diff --git a/htdocs/langs/bn_IN/projects.lang b/htdocs/langs/bn_IN/projects.lang new file mode 100644 index 00000000000..bb42bff3c87 --- /dev/null +++ b/htdocs/langs/bn_IN/projects.lang @@ -0,0 +1,267 @@ +# Dolibarr language file - Source file is en_US - projects +RefProject=Ref. project +ProjectRef=Project ref. +ProjectId=Project Id +ProjectLabel=Project label +ProjectsArea=Projects Area +ProjectStatus=Project status +SharedProject=Everybody +PrivateProject=Project contacts +ProjectsImContactFor=Projects for I am explicitly a contact +AllAllowedProjects=All project I can read (mine + public) +AllProjects=All projects +MyProjectsDesc=This view is limited to projects you are a contact for +ProjectsPublicDesc=This view presents all projects you are allowed to read. +TasksOnProjectsPublicDesc=This view presents all tasks on projects you are allowed to read. +ProjectsPublicTaskDesc=This view presents all projects and tasks you are allowed to read. +ProjectsDesc=This view presents all projects (your user permissions grant you permission to view everything). +TasksOnProjectsDesc=This view presents all tasks on all projects (your user permissions grant you permission to view everything). +MyTasksDesc=This view is limited to projects or tasks you are a contact for +OnlyOpenedProject=Only open projects are visible (projects in draft or closed status are not visible). +ClosedProjectsAreHidden=Closed projects are not visible. +TasksPublicDesc=This view presents all projects and tasks you are allowed to read. +TasksDesc=This view presents all projects and tasks (your user permissions grant you permission to view everything). +AllTaskVisibleButEditIfYouAreAssigned=All tasks for qualified projects are visible, but you can enter time only for task assigned to selected user. Assign task if you need to enter time on it. +OnlyYourTaskAreVisible=Only tasks assigned to you are visible. Assign task to yourself if it is not visible and you need to enter time on it. +ImportDatasetTasks=Tasks of projects +ProjectCategories=Project tags/categories +NewProject=New project +AddProject=Create project +DeleteAProject=Delete a project +DeleteATask=Delete a task +ConfirmDeleteAProject=Are you sure you want to delete this project? +ConfirmDeleteATask=Are you sure you want to delete this task? +OpenedProjects=Open projects +OpenedTasks=Open tasks +OpportunitiesStatusForOpenedProjects=Leads amount of open projects by status +OpportunitiesStatusForProjects=Leads amount of projects by status +ShowProject=Show project +ShowTask=Show task +SetProject=Set project +NoProject=No project defined or owned +NbOfProjects=Number of projects +NbOfTasks=Number of tasks +TimeSpent=Time spent +TimeSpentByYou=Time spent by you +TimeSpentByUser=Time spent by user +TimesSpent=Time spent +TaskId=Task ID +RefTask=Task ref. +LabelTask=Task label +TaskTimeSpent=Time spent on tasks +TaskTimeUser=User +TaskTimeNote=Note +TaskTimeDate=Date +TasksOnOpenedProject=Tasks on open projects +WorkloadNotDefined=Workload not defined +NewTimeSpent=Time spent +MyTimeSpent=My time spent +BillTime=Bill the time spent +BillTimeShort=Bill time +TimeToBill=Time not billed +TimeBilled=Time billed +Tasks=Tasks +Task=Task +TaskDateStart=Task start date +TaskDateEnd=Task end date +TaskDescription=Task description +NewTask=New task +AddTask=Create task +AddTimeSpent=Create time spent +AddHereTimeSpentForDay=Add here time spent for this day/task +AddHereTimeSpentForWeek=Add here time spent for this week/task +Activity=Activity +Activities=Tasks/activities +MyActivities=My tasks/activities +MyProjects=My projects +MyProjectsArea=My projects Area +DurationEffective=Effective duration +ProgressDeclared=Declared progress +TaskProgressSummary=Task progress +CurentlyOpenedTasks=Curently open tasks +TheReportedProgressIsLessThanTheCalculatedProgressionByX=The declared progress is less %s than the calculated progression +TheReportedProgressIsMoreThanTheCalculatedProgressionByX=The declared progress is more %s than the calculated progression +ProgressCalculated=Calculated progress +WhichIamLinkedTo=which I'm linked to +WhichIamLinkedToProject=which I'm linked to project +Time=Time +ListOfTasks=List of tasks +GoToListOfTimeConsumed=Go to list of time consumed +GanttView=Gantt View +ListProposalsAssociatedProject=List of the commercial proposals related to the project +ListOrdersAssociatedProject=List of sales orders related to the project +ListInvoicesAssociatedProject=List of customer invoices related to the project +ListPredefinedInvoicesAssociatedProject=List of customer template invoices related to the project +ListSupplierOrdersAssociatedProject=List of purchase orders related to the project +ListSupplierInvoicesAssociatedProject=List of vendor invoices related to the project +ListContractAssociatedProject=List of contracts related to the project +ListShippingAssociatedProject=List of shippings related to the project +ListFichinterAssociatedProject=List of interventions related to the project +ListExpenseReportsAssociatedProject=List of expense reports related to the project +ListDonationsAssociatedProject=List of donations related to the project +ListVariousPaymentsAssociatedProject=List of miscellaneous payments related to the project +ListSalariesAssociatedProject=List of payments of salaries related to the project +ListActionsAssociatedProject=List of events related to the project +ListMOAssociatedProject=List of manufacturing orders related to the project +ListTaskTimeUserProject=List of time consumed on tasks of project +ListTaskTimeForTask=List of time consumed on task +ActivityOnProjectToday=Activity on project today +ActivityOnProjectYesterday=Activity on project yesterday +ActivityOnProjectThisWeek=Activity on project this week +ActivityOnProjectThisMonth=Activity on project this month +ActivityOnProjectThisYear=Activity on project this year +ChildOfProjectTask=Child of project/task +ChildOfTask=Child of task +TaskHasChild=Task has child +NotOwnerOfProject=Not owner of this private project +AffectedTo=Allocated to +CantRemoveProject=This project can't be removed as it is referenced by some other objects (invoice, orders or other). See referers tab. +ValidateProject=Validate projet +ConfirmValidateProject=Are you sure you want to validate this project? +CloseAProject=Close project +ConfirmCloseAProject=Are you sure you want to close this project? +AlsoCloseAProject=Also close project (keep it open if you still need to follow production tasks on it) +ReOpenAProject=Open project +ConfirmReOpenAProject=Are you sure you want to re-open this project? +ProjectContact=Contacts of project +TaskContact=Task contacts +ActionsOnProject=Events on project +YouAreNotContactOfProject=You are not a contact of this private project +UserIsNotContactOfProject=User is not a contact of this private project +DeleteATimeSpent=Delete time spent +ConfirmDeleteATimeSpent=Are you sure you want to delete this time spent? +DoNotShowMyTasksOnly=See also tasks not assigned to me +ShowMyTasksOnly=View only tasks assigned to me +TaskRessourceLinks=Contacts of task +ProjectsDedicatedToThisThirdParty=Projects dedicated to this third party +NoTasks=No tasks for this project +LinkedToAnotherCompany=Linked to other third party +TaskIsNotAssignedToUser=Task not assigned to user. Use button '%s' to assign task now. +ErrorTimeSpentIsEmpty=Time spent is empty +ThisWillAlsoRemoveTasks=This action will also delete all tasks of project (%s tasks at the moment) and all inputs of time spent. +IfNeedToUseOtherObjectKeepEmpty=If some objects (invoice, order, ...), belonging to another third party, must be linked to the project to create, keep this empty to have the project being multi third parties. +CloneTasks=Clone tasks +CloneContacts=Clone contacts +CloneNotes=Clone notes +CloneProjectFiles=Clone project joined files +CloneTaskFiles=Clone task(s) joined files (if task(s) cloned) +CloneMoveDate=Update project/tasks dates from now? +ConfirmCloneProject=Are you sure to clone this project? +ProjectReportDate=Change task dates according to new project start date +ErrorShiftTaskDate=Impossible to shift task date according to new project start date +ProjectsAndTasksLines=Projects and tasks +ProjectCreatedInDolibarr=Project %s created +ProjectValidatedInDolibarr=Project %s validated +ProjectModifiedInDolibarr=Project %s modified +TaskCreatedInDolibarr=Task %s created +TaskModifiedInDolibarr=Task %s modified +TaskDeletedInDolibarr=Task %s deleted +OpportunityStatus=Lead status +OpportunityStatusShort=Lead status +OpportunityProbability=Lead probability +OpportunityProbabilityShort=Lead probab. +OpportunityAmount=Lead amount +OpportunityAmountShort=Lead amount +OpportunityWeightedAmount=Opportunity weighted amount +OpportunityWeightedAmountShort=Opp. weighted amount +OpportunityAmountAverageShort=Average lead amount +OpportunityAmountWeigthedShort=Weighted lead amount +WonLostExcluded=Won/Lost excluded +##### Types de contacts ##### +TypeContact_project_internal_PROJECTLEADER=Project leader +TypeContact_project_external_PROJECTLEADER=Project leader +TypeContact_project_internal_PROJECTCONTRIBUTOR=Contributor +TypeContact_project_external_PROJECTCONTRIBUTOR=Contributor +TypeContact_project_task_internal_TASKEXECUTIVE=Task executive +TypeContact_project_task_external_TASKEXECUTIVE=Task executive +TypeContact_project_task_internal_TASKCONTRIBUTOR=Contributor +TypeContact_project_task_external_TASKCONTRIBUTOR=Contributor +SelectElement=Select element +AddElement=Link to element +# Documents models +DocumentModelBeluga=Project document template for linked objects overview +DocumentModelBaleine=Project document template for tasks +DocumentModelTimeSpent=Project report template for time spent +PlannedWorkload=Planned workload +PlannedWorkloadShort=Workload +ProjectReferers=Related items +ProjectMustBeValidatedFirst=Project must be validated first +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time +InputPerDay=Input per day +InputPerWeek=Input per week +InputPerMonth=Input per month +InputDetail=Input detail +TimeAlreadyRecorded=This is time spent already recorded for this task/day and user %s +ProjectsWithThisUserAsContact=Projects with this user as contact +TasksWithThisUserAsContact=Tasks assigned to this user +ResourceNotAssignedToProject=Not assigned to project +ResourceNotAssignedToTheTask=Not assigned to the task +NoUserAssignedToTheProject=No users assigned to this project +TimeSpentBy=Time spent by +TasksAssignedTo=Tasks assigned to +AssignTaskToMe=Assign task to me +AssignTaskToUser=Assign task to %s +SelectTaskToAssign=Select task to assign... +AssignTask=Assign +ProjectOverview=Overview +ManageTasks=Use projects to follow tasks and/or report time spent (timesheets) +ManageOpportunitiesStatus=Use projects to follow leads/opportinuties +ProjectNbProjectByMonth=No. of created projects by month +ProjectNbTaskByMonth=No. of created tasks by month +ProjectOppAmountOfProjectsByMonth=Amount of leads by month +ProjectWeightedOppAmountOfProjectsByMonth=Weighted amount of leads by month +ProjectOpenedProjectByOppStatus=Open project/lead by lead status +ProjectsStatistics=Statistics on projects/leads +TasksStatistics=Statistics on project/lead tasks +TaskAssignedToEnterTime=Task assigned. Entering time on this task should be possible. +IdTaskTime=Id task time +YouCanCompleteRef=If you want to complete the ref with some suffix, it is recommanded to add a - character to separate it, so the automatic numbering will still work correctly for next projects. For example %s-MYSUFFIX +OpenedProjectsByThirdparties=Open projects by third parties +OnlyOpportunitiesShort=Only leads +OpenedOpportunitiesShort=Open leads +NotOpenedOpportunitiesShort=Not an open lead +NotAnOpportunityShort=Not a lead +OpportunityTotalAmount=Total amount of leads +OpportunityPonderatedAmount=Weighted amount of leads +OpportunityPonderatedAmountDesc=Leads amount weighted with probability +OppStatusPROSP=Prospection +OppStatusQUAL=Qualification +OppStatusPROPO=Proposal +OppStatusNEGO=Negociation +OppStatusPENDING=Pending +OppStatusWON=Won +OppStatusLOST=Lost +Budget=Budget +AllowToLinkFromOtherCompany=Allow to link project from other company

    Supported values:
    - Keep empty: Can link any project of the company (default)
    - "all": Can link any projects, even projects of other companies
    - A list of third-party ids separated by commas: can link all projects of these third partys (Example: 123,4795,53)
    +LatestProjects=Latest %s projects +LatestModifiedProjects=Latest %s modified projects +OtherFilteredTasks=Other filtered tasks +NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) +ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you +# Comments trans +AllowCommentOnTask=Allow user comments on tasks +AllowCommentOnProject=Allow user comments on projects +DontHavePermissionForCloseProject=You do not have permissions to close the project %s +DontHaveTheValidateStatus=The project %s must be open to be closed +RecordsClosed=%s project(s) closed +SendProjectRef=Information project %s +ModuleSalaryToDefineHourlyRateMustBeEnabled=Module 'Salaries' must be enabled to define employee hourly rate to have time spent valorized +NewTaskRefSuggested=Task ref already used, a new task ref is required +TimeSpentInvoiced=Time spent billed +TimeSpentForInvoice=Time spent +OneLinePerUser=One line per user +ServiceToUseOnLines=Service to use on lines +InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project +ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. +ProjectFollowOpportunity=Follow opportunity +ProjectFollowTasks=Follow tasks or time spent +Usage=Usage +UsageOpportunity=Usage: Opportunity +UsageTasks=Usage: Tasks +UsageBillTimeShort=Usage: Bill time +InvoiceToUse=Draft invoice to use +NewInvoice=New invoice +OneLinePerTask=One line per task +OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/bn_IN/propal.lang b/htdocs/langs/bn_IN/propal.lang new file mode 100644 index 00000000000..71d6857c909 --- /dev/null +++ b/htdocs/langs/bn_IN/propal.lang @@ -0,0 +1,86 @@ +# Dolibarr language file - Source file is en_US - propal +Proposals=Commercial proposals +Proposal=Commercial proposal +ProposalShort=Proposal +ProposalsDraft=Draft commercial proposals +ProposalsOpened=Open commercial proposals +CommercialProposal=Commercial proposal +PdfCommercialProposalTitle=Commercial proposal +ProposalCard=Proposal card +NewProp=New commercial proposal +NewPropal=New proposal +Prospect=Prospect +DeleteProp=Delete commercial proposal +ValidateProp=Validate commercial proposal +AddProp=Create proposal +ConfirmDeleteProp=Are you sure you want to delete this commercial proposal? +ConfirmValidateProp=Are you sure you want to validate this commercial proposal under name %s? +LastPropals=Latest %s proposals +LastModifiedProposals=Latest %s modified proposals +AllPropals=All proposals +SearchAProposal=Search a proposal +NoProposal=No proposal +ProposalsStatistics=Commercial proposal's statistics +NumberOfProposalsByMonth=Number by month +AmountOfProposalsByMonthHT=Amount by month (excl. tax) +NbOfProposals=Number of commercial proposals +ShowPropal=Show proposal +PropalsDraft=Drafts +PropalsOpened=Open +PropalStatusDraft=Draft (needs to be validated) +PropalStatusValidated=Validated (proposal is open) +PropalStatusSigned=Signed (needs billing) +PropalStatusNotSigned=Not signed (closed) +PropalStatusBilled=Billed +PropalStatusDraftShort=Draft +PropalStatusValidatedShort=Validated (open) +PropalStatusClosedShort=Closed +PropalStatusSignedShort=Signed +PropalStatusNotSignedShort=Not signed +PropalStatusBilledShort=Billed +PropalsToClose=Commercial proposals to close +PropalsToBill=Signed commercial proposals to bill +ListOfProposals=List of commercial proposals +ActionsOnPropal=Events on proposal +RefProposal=Commercial proposal ref +SendPropalByMail=Send commercial proposal by mail +DatePropal=Date of proposal +DateEndPropal=Validity ending date +ValidityDuration=Validity duration +CloseAs=Set status to +SetAcceptedRefused=Set accepted/refused +ErrorPropalNotFound=Propal %s not found +AddToDraftProposals=Add to draft proposal +NoDraftProposals=No draft proposals +CopyPropalFrom=Create commercial proposal by copying existing proposal +CreateEmptyPropal=Create empty commercial proposal or from list of products/services +DefaultProposalDurationValidity=Default commercial proposal validity duration (in days) +UseCustomerContactAsPropalRecipientIfExist=Use contact/address with type 'Contact following-up proposal' if defined instead of third party address as proposal recipient address +ConfirmClonePropal=Are you sure you want to clone the commercial proposal %s? +ConfirmReOpenProp=Are you sure you want to open back the commercial proposal %s? +ProposalsAndProposalsLines=Commercial proposal and lines +ProposalLine=Proposal line +AvailabilityPeriod=Availability delay +SetAvailability=Set availability delay +AfterOrder=after order +OtherProposals=Other proposals +##### Availability ##### +AvailabilityTypeAV_NOW=Immediate +AvailabilityTypeAV_1W=1 week +AvailabilityTypeAV_2W=2 weeks +AvailabilityTypeAV_3W=3 weeks +AvailabilityTypeAV_1M=1 month +##### Types de contacts ##### +TypeContact_propal_internal_SALESREPFOLL=Representative following-up proposal +TypeContact_propal_external_BILLING=Customer invoice contact +TypeContact_propal_external_CUSTOMER=Customer contact following-up proposal +TypeContact_propal_external_SHIPPING=Customer contact for delivery +# Document models +DocModelAzurDescription=A complete proposal model (old implementation of Cyan template) +DocModelCyanDescription=A complete proposal model +DefaultModelPropalCreate=Default model creation +DefaultModelPropalToBill=Default template when closing a business proposal (to be invoiced) +DefaultModelPropalClosed=Default template when closing a business proposal (unbilled) +ProposalCustomerSignature=Written acceptance, company stamp, date and signature +ProposalsStatisticsSuppliers=Vendor proposals statistics +CaseFollowedBy=Case followed by diff --git a/htdocs/langs/bn_IN/receiptprinter.lang b/htdocs/langs/bn_IN/receiptprinter.lang new file mode 100644 index 00000000000..896eaa313dd --- /dev/null +++ b/htdocs/langs/bn_IN/receiptprinter.lang @@ -0,0 +1,95 @@ +# Dolibarr language file - Source file is en_US - receiptprinter +ReceiptPrinterSetup=Setup of module ReceiptPrinter +PrinterAdded=Printer %s added +PrinterUpdated=Printer %s updated +PrinterDeleted=Printer %s deleted +TestSentToPrinter=Test Sent To Printer %s +ReceiptPrinter=Receipt printers +ReceiptPrinterDesc=Setup of receipt printers +ReceiptPrinterTemplateDesc=Setup of Templates +ReceiptPrinterTypeDesc=Description of Receipt Printer's type +ReceiptPrinterProfileDesc=Description of Receipt Printer's Profile +ListPrinters=List of Printers +SetupReceiptTemplate=Template Setup +CONNECTOR_DUMMY=Dummy Printer +CONNECTOR_NETWORK_PRINT=Network Printer +CONNECTOR_FILE_PRINT=Local Printer +CONNECTOR_WINDOWS_PRINT=Local Windows Printer +CONNECTOR_CUPS_PRINT=Cups Printer +CONNECTOR_DUMMY_HELP=Fake Printer for test, does nothing +CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 +CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 +CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L +PROFILE_DEFAULT=Default Profile +PROFILE_SIMPLE=Simple Profile +PROFILE_EPOSTEP=Epos Tep Profile +PROFILE_P822D=P822D Profile +PROFILE_STAR=Star Profile +PROFILE_DEFAULT_HELP=Default Profile suitable for Epson printers +PROFILE_SIMPLE_HELP=Simple Profile No Graphics +PROFILE_EPOSTEP_HELP=Epos Tep Profile +PROFILE_P822D_HELP=P822D Profile No Graphics +PROFILE_STAR_HELP=Star Profile +DOL_LINE_FEED=Skip line +DOL_ALIGN_LEFT=Left align text +DOL_ALIGN_CENTER=Center text +DOL_ALIGN_RIGHT=Right align text +DOL_USE_FONT_A=Use font A of printer +DOL_USE_FONT_B=Use font B of printer +DOL_USE_FONT_C=Use font C of printer +DOL_PRINT_BARCODE=Print barcode +DOL_PRINT_BARCODE_CUSTOMER_ID=Print barcode customer id +DOL_CUT_PAPER_FULL=Cut ticket completely +DOL_CUT_PAPER_PARTIAL=Cut ticket partially +DOL_OPEN_DRAWER=Open cash drawer +DOL_ACTIVATE_BUZZER=Activate buzzer +DOL_PRINT_QRCODE=Print QR Code +DOL_PRINT_LOGO=Print logo of my company +DOL_PRINT_LOGO_OLD=Print logo of my company (old printers) +DOL_BOLD=Bold +DOL_BOLD_DISABLED=Disable bold +DOL_DOUBLE_HEIGHT=Double height size +DOL_DOUBLE_WIDTH=Double width size +DOL_DEFAULT_HEIGHT_WIDTH=Default height and width size +DOL_UNDERLINE=Enable underline +DOL_UNDERLINE_DISABLED=Disable underline +DOL_BEEP=Beed sound +DOL_PRINT_TEXT=Print text +DOL_VALUE_DATE=Invoice date +DOL_VALUE_DATE_TIME=Invoice date and time +DOL_VALUE_YEAR=Invoice year +DOL_VALUE_MONTH_LETTERS=Invoice month in letters +DOL_VALUE_MONTH=Invoice month +DOL_VALUE_DAY=Invoice day +DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Invoice ref +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=Capital +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/bn_IN/receptions.lang b/htdocs/langs/bn_IN/receptions.lang new file mode 100644 index 00000000000..010a7521846 --- /dev/null +++ b/htdocs/langs/bn_IN/receptions.lang @@ -0,0 +1,45 @@ +# Dolibarr language file - Source file is en_US - receptions +ReceptionsSetup=Product Reception setup +RefReception=Ref. reception +Reception=Reception +Receptions=Receptions +AllReceptions=All Receptions +Reception=Reception +Receptions=Receptions +ShowReception=Show Receptions +ReceptionsArea=Receptions area +ListOfReceptions=List of receptions +ReceptionMethod=Reception method +LastReceptions=Latest %s receptions +StatisticsOfReceptions=Statistics for receptions +NbOfReceptions=Number of receptions +NumberOfReceptionsByMonth=Number of receptions by month +ReceptionCard=Reception card +NewReception=New reception +CreateReception=Create reception +QtyInOtherReceptions=Qty in other receptions +OtherReceptionsForSameOrder=Other receptions for this order +ReceptionsAndReceivingForSameOrder=Receptions and receipts for this order +ReceptionsToValidate=Receptions to validate +StatusReceptionCanceled=Canceled +StatusReceptionDraft=Draft +StatusReceptionValidated=Validated (products to ship or already shipped) +StatusReceptionProcessed=Processed +StatusReceptionDraftShort=Draft +StatusReceptionValidatedShort=Validated +StatusReceptionProcessedShort=Processed +ReceptionSheet=Reception sheet +ConfirmDeleteReception=Are you sure you want to delete this reception? +ConfirmValidateReception=Are you sure you want to validate this reception with reference %s? +ConfirmCancelReception=Are you sure you want to cancel this reception? +StatsOnReceptionsOnlyValidated=Statistics conducted on receptions only validated. Date used is date of validation of reception (planed delivery date is not always known). +SendReceptionByEMail=Send reception by email +SendReceptionRef=Submission of reception %s +ActionsOnReception=Events on reception +ReceptionCreationIsDoneFromOrder=For the moment, creation of a new reception is done from the order card. +ReceptionLine=Reception line +ProductQtyInReceptionAlreadySent=Product quantity from open sales order already sent +ProductQtyInSuppliersReceptionAlreadyRecevied=Product quantity from open supplier order already received +ValidateOrderFirstBeforeReception=You must first validate the order before being able to make receptions. +ReceptionsNumberingModules=Numbering module for receptions +ReceptionsReceiptModel=Document templates for receptions diff --git a/htdocs/langs/bn_IN/resource.lang b/htdocs/langs/bn_IN/resource.lang new file mode 100644 index 00000000000..e8574dc680f --- /dev/null +++ b/htdocs/langs/bn_IN/resource.lang @@ -0,0 +1,39 @@ +# Dolibarr language file - Source file is en_US - resource +MenuResourceIndex=Resources +MenuResourceAdd=New resource +DeleteResource=Delete resource +ConfirmDeleteResourceElement=Confirm delete the resource for this element +NoResourceInDatabase=No resource in database. +NoResourceLinked=No resource linked +ActionsOnResource=Events about this resource +ResourcePageIndex=Resources list +ResourceSingular=Resource +ResourceCard=Resource card +AddResource=Create a resource +ResourceFormLabel_ref=Resource name +ResourceType=Resource type +ResourceFormLabel_description=Resource description + +ResourcesLinkedToElement=Resources linked to element + +ShowResource=Show resource + +ResourceElementPage=Element resources +ResourceCreatedWithSuccess=Resource successfully created +RessourceLineSuccessfullyDeleted=Resource line successfully deleted +RessourceLineSuccessfullyUpdated=Resource line successfully updated +ResourceLinkedWithSuccess=Resource linked with success + +ConfirmDeleteResource=Confirm to delete this resource +RessourceSuccessfullyDeleted=Resource successfully deleted +DictionaryResourceType=Type of resources + +SelectResource=Select resource + +IdResource=Id resource +AssetNumber=Serial number +ResourceTypeCode=Resource type code +ImportDataset_resource_1=Resources + +ErrorResourcesAlreadyInUse=Some resources are in use +ErrorResourceUseInEvent=%s used in %s event diff --git a/htdocs/langs/bn_IN/salaries.lang b/htdocs/langs/bn_IN/salaries.lang new file mode 100644 index 00000000000..7c3c08a65bd --- /dev/null +++ b/htdocs/langs/bn_IN/salaries.lang @@ -0,0 +1,21 @@ +# Dolibarr language file - Source file is en_US - salaries +SALARIES_ACCOUNTING_ACCOUNT_PAYMENT=Accounting account used for user third parties +SALARIES_ACCOUNTING_ACCOUNT_PAYMENT_Desc=The dedicated accounting account defined on user card will be used for Subledger accounting only. This one will be used for General Ledger and as default value of Subledger accounting if dedicated user accounting account on user is not defined. +SALARIES_ACCOUNTING_ACCOUNT_CHARGE=Accounting account by default for wage payments +Salary=Salary +Salaries=Salaries +NewSalaryPayment=New salary payment +AddSalaryPayment=Add salary payment +SalaryPayment=Salary payment +SalariesPayments=Salaries payments +ShowSalaryPayment=Show salary payment +THM=Average hourly rate +TJM=Average daily rate +CurrentSalary=Current salary +THMDescription=This value may be used to calculate the cost of time consumed on a project entered by users if module project is used +TJMDescription=This value is currently for information only and is not used for any calculation +LastSalaries=Latest %s salary payments +AllSalaries=All salary payments +SalariesStatistics=Salary statistics +# Export +SalariesAndPayments=Salaries and payments diff --git a/htdocs/langs/bn_IN/sendings.lang b/htdocs/langs/bn_IN/sendings.lang new file mode 100644 index 00000000000..5ce3b7f67e9 --- /dev/null +++ b/htdocs/langs/bn_IN/sendings.lang @@ -0,0 +1,74 @@ +# Dolibarr language file - Source file is en_US - sendings +RefSending=Ref. shipment +Sending=Shipment +Sendings=Shipments +AllSendings=All Shipments +Shipment=Shipment +Shipments=Shipments +ShowSending=Show Shipments +Receivings=Delivery Receipts +SendingsArea=Shipments area +ListOfSendings=List of shipments +SendingMethod=Shipping method +LastSendings=Latest %s shipments +StatisticsOfSendings=Statistics for shipments +NbOfSendings=Number of shipments +NumberOfShipmentsByMonth=Number of shipments by month +SendingCard=Shipment card +NewSending=New shipment +CreateShipment=Create shipment +QtyShipped=Qty shipped +QtyShippedShort=Qty ship. +QtyPreparedOrShipped=Qty prepared or shipped +QtyToShip=Qty to ship +QtyToReceive=Qty to receive +QtyReceived=Qty received +QtyInOtherShipments=Qty in other shipments +KeepToShip=Remain to ship +KeepToShipShort=Remain +OtherSendingsForSameOrder=Other shipments for this order +SendingsAndReceivingForSameOrder=Shipments and receipts for this order +SendingsToValidate=Shipments to validate +StatusSendingCanceled=Canceled +StatusSendingDraft=Draft +StatusSendingValidated=Validated (products to ship or already shipped) +StatusSendingProcessed=Processed +StatusSendingDraftShort=Draft +StatusSendingValidatedShort=Validated +StatusSendingProcessedShort=Processed +SendingSheet=Shipment sheet +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=Warning, no products waiting to be shipped. +StatsOnShipmentsOnlyValidated=Statistics conducted on shipments only validated. Date used is date of validation of shipment (planed delivery date is not always known). +DateDeliveryPlanned=Planned date of delivery +RefDeliveryReceipt=Ref delivery receipt +StatusReceipt=Status delivery receipt +DateReceived=Date delivery received +ClassifyReception=Classify reception +SendShippingByEMail=Send shipment by email +SendShippingRef=Submission of shipment %s +ActionsOnShipping=Events on shipment +LinkToTrackYourPackage=Link to track your package +ShipmentCreationIsDoneFromOrder=For the moment, creation of a new shipment is done from the order card. +ShipmentLine=Shipment line +ProductQtyInCustomersOrdersRunning=Product quantity from open sales orders +ProductQtyInSuppliersOrdersRunning=Product quantity from open purchase orders +ProductQtyInShipmentAlreadySent=Product quantity from open sales order already sent +ProductQtyInSuppliersShipmentAlreadyRecevied=Product quantity from open purchase orders already received +NoProductToShipFoundIntoStock=No product to ship found in warehouse %s. Correct stock or go back to choose another warehouse. +WeightVolShort=Weight/Vol. +ValidateOrderFirstBeforeShipment=You must first validate the order before being able to make shipments. + +# Sending methods +# ModelDocument +DocumentModelTyphon=More complete document model for delivery receipts (logo...) +Error_EXPEDITION_ADDON_NUMBER_NotDefined=Constant EXPEDITION_ADDON_NUMBER not defined +SumOfProductVolumes=Sum of product volumes +SumOfProductWeights=Sum of product weights + +# warehouse details +DetailWarehouseNumber= Warehouse details +DetailWarehouseFormat= W:%s (Qty: %d) diff --git a/htdocs/langs/bn_IN/sms.lang b/htdocs/langs/bn_IN/sms.lang new file mode 100644 index 00000000000..055085eb16a --- /dev/null +++ b/htdocs/langs/bn_IN/sms.lang @@ -0,0 +1,51 @@ +# Dolibarr language file - Source file is en_US - sms +Sms=Sms +SmsSetup=SMS setup +SmsDesc=This page allows you to define global options on SMS features +SmsCard=SMS Card +AllSms=All SMS campaigns +SmsTargets=Targets +SmsRecipients=Targets +SmsRecipient=Target +SmsTitle=Description +SmsFrom=Sender +SmsTo=Target +SmsTopic=Topic of SMS +SmsText=Message +SmsMessage=SMS Message +ShowSms=Show SMS +ListOfSms=List SMS campaigns +NewSms=New SMS campaign +EditSms=Edit SMS +ResetSms=New sending +DeleteSms=Delete SMS campaign +DeleteASms=Remove a SMS campaign +PreviewSms=Previuw SMS +PrepareSms=Prepare SMS +CreateSms=Create SMS +SmsResult=Result of SMS sending +TestSms=Test SMS +ValidSms=Validate SMS +ApproveSms=Approve SMS +SmsStatusDraft=Draft +SmsStatusValidated=Validated +SmsStatusApproved=Approved +SmsStatusSent=Sent +SmsStatusSentPartialy=Sent partially +SmsStatusSentCompletely=Sent completely +SmsStatusError=Error +SmsStatusNotSent=Not sent +SmsSuccessfulySent=SMS correctly sent (from %s to %s) +ErrorSmsRecipientIsEmpty=Number of target is empty +WarningNoSmsAdded=No new phone number to add to target list +ConfirmValidSms=Do you confirm validation of this campaign? +NbOfUniqueSms=No. of unique phone numbers +NbOfSms=No. of phone numbers +ThisIsATestMessage=This is a test message +SendSms=Send SMS +SmsInfoCharRemain=No. of remaining characters +SmsInfoNumero= (international format i.e.: +33899701761) +DelayBeforeSending=Delay before sending (minutes) +SmsNoPossibleSenderFound=No sender available. Check setup of your SMS provider. +SmsNoPossibleRecipientFound=No target available. Check setup of your SMS provider. +DisableStopIfSupported=Disable STOP message (if supported) diff --git a/htdocs/langs/bn_IN/stocks.lang b/htdocs/langs/bn_IN/stocks.lang new file mode 100644 index 00000000000..9856649b834 --- /dev/null +++ b/htdocs/langs/bn_IN/stocks.lang @@ -0,0 +1,220 @@ +# Dolibarr language file - Source file is en_US - stocks +WarehouseCard=Warehouse card +Warehouse=Warehouse +Warehouses=Warehouses +ParentWarehouse=Parent warehouse +NewWarehouse=New warehouse / Stock Location +WarehouseEdit=Modify warehouse +MenuNewWarehouse=New warehouse +WarehouseSource=Source warehouse +WarehouseSourceNotDefined=No warehouse defined, +AddWarehouse=Create warehouse +AddOne=Add one +DefaultWarehouse=Default warehouse +WarehouseTarget=Target warehouse +ValidateSending=Delete sending +CancelSending=Cancel sending +DeleteSending=Delete sending +Stock=Stock +Stocks=Stocks +StocksByLotSerial=Stocks by lot/serial +LotSerial=Lots/Serials +LotSerialList=List of lot/serials +Movements=Movements +ErrorWarehouseRefRequired=Warehouse reference name is required +ListOfWarehouses=List of warehouses +ListOfStockMovements=List of stock movements +ListOfInventories=List of inventories +MovementId=Movement ID +StockMovementForId=Movement ID %d +ListMouvementStockProject=List of stock movements associated to project +StocksArea=Warehouses area +AllWarehouses=All warehouses +IncludeAlsoDraftOrders=Include also draft orders +Location=Location +LocationSummary=Short name location +NumberOfDifferentProducts=Number of different products +NumberOfProducts=Total number of products +LastMovement=Latest movement +LastMovements=Latest movements +Units=Units +Unit=Unit +StockCorrection=Stock correction +CorrectStock=Correct stock +StockTransfer=Stock transfer +TransferStock=Transfer stock +MassStockTransferShort=Mass stock transfer +StockMovement=Stock movement +StockMovements=Stock movements +NumberOfUnit=Number of units +UnitPurchaseValue=Unit purchase price +StockTooLow=Stock too low +StockLowerThanLimit=Stock lower than alert limit (%s) +EnhancedValue=Value +PMPValue=Weighted average price +PMPValueShort=WAP +EnhancedValueOfWarehouses=Warehouses value +UserWarehouseAutoCreate=Create a user warehouse automatically when creating a user +AllowAddLimitStockByWarehouse=Manage also value for minimum and desired stock per pairing (product-warehouse) in addition to the value for minimum and desired stock per product +IndependantSubProductStock=Product stock and subproduct stock are independent +QtyDispatched=Quantity dispatched +QtyDispatchedShort=Qty dispatched +QtyToDispatchShort=Qty to dispatch +OrderDispatch=Item receipts +RuleForStockManagementDecrease=Choose Rule for automatic stock decrease (manual decrease is always possible, even if an automatic decrease rule is activated) +RuleForStockManagementIncrease=Choose Rule for automatic stock increase (manual increase is always possible, even if an automatic increase rule is activated) +DeStockOnBill=Decrease real stocks on validation of customer invoice/credit note +DeStockOnValidateOrder=Decrease real stocks on validation of sales order +DeStockOnShipment=Decrease real stocks on shipping validation +DeStockOnShipmentOnClosing=Decrease real stocks when shipping is set to closed +ReStockOnBill=Increase real stocks on validation of vendor invoice/credit note +ReStockOnValidateOrder=Increase real stocks on purchase order approval +ReStockOnDispatchOrder=Increase real stocks on manual dispatching into warehouse, after purchase order receipt of goods +StockOnReception=Increase real stocks on validation of reception +StockOnReceptionOnClosing=Increase real stocks when reception is set to closed +OrderStatusNotReadyToDispatch=Order has not yet or no more a status that allows dispatching of products in stock warehouses. +StockDiffPhysicTeoric=Explanation for difference between physical and virtual stock +NoPredefinedProductToDispatch=No predefined products for this object. So no dispatching in stock is required. +DispatchVerb=Dispatch +StockLimitShort=Limit for alert +StockLimit=Stock limit for alert +StockLimitDesc=(empty) means no warning.
    0 can be used for a warning as soon as stock is empty. +PhysicalStock=Physical Stock +RealStock=Real Stock +RealStockDesc=Physical/real stock is the stock currently in the warehouses. +RealStockWillAutomaticallyWhen=The real stock will be modified according to this rule (as defined in the Stock module): +VirtualStock=Virtual stock +VirtualStockDesc=Virtual stock is the calculated stock available once all open/pending actions (that affect stocks) are closed (purchase orders received, sales orders shipped etc.) +IdWarehouse=Id warehouse +DescWareHouse=Description warehouse +LieuWareHouse=Localisation warehouse +WarehousesAndProducts=Warehouses and products +WarehousesAndProductsBatchDetail=Warehouses and products (with detail per lot/serial) +AverageUnitPricePMPShort=Weighted average input price +AverageUnitPricePMP=Weighted average input price +SellPriceMin=Selling Unit Price +EstimatedStockValueSellShort=Value for sell +EstimatedStockValueSell=Value for sell +EstimatedStockValueShort=Input stock value +EstimatedStockValue=Input stock value +DeleteAWarehouse=Delete a warehouse +ConfirmDeleteWarehouse=Are you sure you want to delete the warehouse %s? +PersonalStock=Personal stock %s +ThisWarehouseIsPersonalStock=This warehouse represents personal stock of %s %s +SelectWarehouseForStockDecrease=Choose warehouse to use for stock decrease +SelectWarehouseForStockIncrease=Choose warehouse to use for stock increase +NoStockAction=No stock action +DesiredStock=Desired Stock +DesiredStockDesc=This stock amount will be the value used to fill the stock by replenishment feature. +StockToBuy=To order +Replenishment=Replenishment +ReplenishmentOrders=Replenishment orders +VirtualDiffersFromPhysical=According to increase/decrease stock options, physical stock and virtual stock (physical + current orders) may differ +UseVirtualStockByDefault=Use virtual stock by default, instead of physical stock, for replenishment feature +UseVirtualStock=Use virtual stock +UsePhysicalStock=Use physical stock +CurentSelectionMode=Current selection mode +CurentlyUsingVirtualStock=Virtual stock +CurentlyUsingPhysicalStock=Physical stock +RuleForStockReplenishment=Rule for stocks replenishment +SelectProductWithNotNullQty=Select at least one product with a qty not null and a vendor +AlertOnly= Alerts only +WarehouseForStockDecrease=The warehouse %s will be used for stock decrease +WarehouseForStockIncrease=The warehouse %s will be used for stock increase +ForThisWarehouse=For this warehouse +ReplenishmentStatusDesc=This is a list of all products with a stock lower than desired stock (or lower than alert value if checkbox "alert only" is checked). Using the checkbox, you can create purchase orders to fill the difference. +ReplenishmentOrdersDesc=This is a list of all open purchase orders including predefined products. Only open orders with predefined products, so orders that may affect stocks, are visible here. +Replenishments=Replenishments +NbOfProductBeforePeriod=Quantity of product %s in stock before selected period (< %s) +NbOfProductAfterPeriod=Quantity of product %s in stock after selected period (> %s) +MassMovement=Mass movement +SelectProductInAndOutWareHouse=Select a product, a quantity, a source warehouse and a target warehouse, then click "%s". Once this is done for all required movements, click onto "%s". +RecordMovement=Record transfer +ReceivingForSameOrder=Receipts for this order +StockMovementRecorded=Stock movements recorded +RuleForStockAvailability=Rules on stock requirements +StockMustBeEnoughForInvoice=Stock level must be enough to add product/service to invoice (check is done on current real stock when adding a line into invoice whatever the rule for automatic stock change) +StockMustBeEnoughForOrder=Stock level must be enough to add product/service to order (check is done on current real stock when adding a line into order whatever the rule for automatic stock change) +StockMustBeEnoughForShipment= Stock level must be enough to add product/service to shipment (check is done on current real stock when adding a line into shipment whatever the rule for automatic stock change) +MovementLabel=Label of movement +TypeMovement=Type of movement +DateMovement=Date of movement +InventoryCode=Movement or inventory code +IsInPackage=Contained into package +WarehouseAllowNegativeTransfer=Stock can be negative +qtyToTranferIsNotEnough=You don't have enough stock from your source warehouse and your setup does not allow negative stocks. +qtyToTranferLotIsNotEnough=You don't have enough stock, for this lot number, from your source warehouse and your setup does not allow negative stocks (Qty for product '%s' with lot '%s' is %s in warehouse '%s'). +ShowWarehouse=Show warehouse +MovementCorrectStock=Stock correction for product %s +MovementTransferStock=Stock transfer of product %s into another warehouse +InventoryCodeShort=Inv./Mov. code +NoPendingReceptionOnSupplierOrder=No pending reception due to open purchase order +ThisSerialAlreadyExistWithDifferentDate=This lot/serial number (%s) already exists but with different eatby or sellby date (found %s but you enter %s). +OpenAll=Open for all actions +OpenInternal=Open only for internal actions +UseDispatchStatus=Use a dispatch status (approve/refuse) for product lines on purchase order reception +OptionMULTIPRICESIsOn=Option "several prices per segment" is on. It means a product has several selling price so value for sell can't be calculated +ProductStockWarehouseCreated=Stock limit for alert and desired optimal stock correctly created +ProductStockWarehouseUpdated=Stock limit for alert and desired optimal stock correctly updated +ProductStockWarehouseDeleted=Stock limit for alert and desired optimal stock correctly deleted +AddNewProductStockWarehouse=Set new limit for alert and desired optimal stock +AddStockLocationLine=Decrease quantity then click to add another warehouse for this product +InventoryDate=Inventory date +NewInventory=New inventory +inventorySetup = Inventory Setup +inventoryCreatePermission=Create new inventory +inventoryReadPermission=View inventories +inventoryWritePermission=Update inventories +inventoryValidatePermission=Validate inventory +inventoryTitle=Inventory +inventoryListTitle=Inventories +inventoryListEmpty=No inventory in progress +inventoryCreateDelete=Create/Delete inventory +inventoryCreate=Create new +inventoryEdit=Edit +inventoryValidate=Validated +inventoryDraft=Running +inventorySelectWarehouse=Warehouse choice +inventoryConfirmCreate=Create +inventoryOfWarehouse=Inventory for warehouse: %s +inventoryErrorQtyAdd=Error: one quantity is less than zero +inventoryMvtStock=By inventory +inventoryWarningProductAlreadyExists=This product is already into list +SelectCategory=Category filter +SelectFournisseur=Vendor filter +inventoryOnDate=Inventory +INVENTORY_DISABLE_VIRTUAL=Virtual product (kit): do not decrement stock of a child product +INVENTORY_USE_MIN_PA_IF_NO_LAST_PA=Use the buy price if no last buy price can be found +INVENTORY_USE_INVENTORY_DATE_FOR_DATE_OF_MVT=Stock movements will have the date of inventory (instead of the date of inventory validation) +inventoryChangePMPPermission=Allow to change PMP value for a product +ColumnNewPMP=New unit PMP +OnlyProdsInStock=Do not add product without stock +TheoricalQty=Theorique qty +TheoricalValue=Theorique qty +LastPA=Last BP +CurrentPA=Curent BP +RecordedQty=Recorded Qty +RealQty=Real Qty +RealValue=Real Value +RegulatedQty=Regulated Qty +AddInventoryProduct=Add product to inventory +AddProduct=Add +ApplyPMP=Apply PMP +FlushInventory=Flush inventory +ConfirmFlushInventory=Do you confirm this action? +InventoryFlushed=Inventory flushed +ExitEditMode=Exit edition +inventoryDeleteLine=Delete line +RegulateStock=Regulate Stock +ListInventory=List +StockSupportServices=Stock management supports Services +StockSupportServicesDesc=By default, you can stock only products of type "product". You may also stock a product of type "service" if both module Services and this option are enabled. +ReceiveProducts=Receive items +StockIncreaseAfterCorrectTransfer=Increase by correction/transfer +StockDecreaseAfterCorrectTransfer=Decrease by correction/transfer +StockIncrease=Stock increase +StockDecrease=Stock decrease +InventoryForASpecificWarehouse=Inventory for a specific warehouse +InventoryForASpecificProduct=Inventory for a specific product +StockIsRequiredToChooseWhichLotToUse=Stock is required to choose which lot to use +ForceTo=Force to diff --git a/htdocs/langs/bn_IN/stripe.lang b/htdocs/langs/bn_IN/stripe.lang new file mode 100644 index 00000000000..844762040af --- /dev/null +++ b/htdocs/langs/bn_IN/stripe.lang @@ -0,0 +1,72 @@ +# Dolibarr language file - Source file is en_US - stripe +StripeSetup=Stripe module setup +StripeDesc=Offer customers a Stripe online payment page for payments with credit/cebit cards via Stripe. This can be used to allow your customers to make ad-hoc payments or for payments related to a particular Dolibarr object (invoice, order, ...) +StripeOrCBDoPayment=Pay with credit card or Stripe +FollowingUrlAreAvailableToMakePayments=Following URLs are available to offer a page to a customer to make a payment on Dolibarr objects +PaymentForm=Payment form +WelcomeOnPaymentPage=Welcome to our online payment service +ThisScreenAllowsYouToPay=This screen allow you to make an online payment to %s. +ThisIsInformationOnPayment=This is information on payment to do +ToComplete=To complete +YourEMail=Email to receive payment confirmation +STRIPE_PAYONLINE_SENDEMAIL=Email notification after a payment attempt (success or fail) +Creditor=Creditor +PaymentCode=Payment code +StripeDoPayment=Pay with Stripe +YouWillBeRedirectedOnStripe=You will be redirected on secured Stripe page to input you credit card information +Continue=Next +ToOfferALinkForOnlinePayment=URL for %s payment +ToOfferALinkForOnlinePaymentOnOrder=URL to offer a %s online payment page for a sales order +ToOfferALinkForOnlinePaymentOnInvoice=URL to offer a %s online payment page for a customer invoice +ToOfferALinkForOnlinePaymentOnContractLine=URL to offer a %s online payment page for a contract line +ToOfferALinkForOnlinePaymentOnFreeAmount=URL to offer a %s online payment page of any amount with no existing object +ToOfferALinkForOnlinePaymentOnMemberSubscription=URL to offer a %s online payment page for a member subscription +ToOfferALinkForOnlinePaymentOnDonation=URL to offer a %s online payment page for payment of a donation +YouCanAddTagOnUrl=You can also add url parameter &tag=value to any of those URL (mandatory only for payment not linked to an object) to add your own payment comment tag.
    For the URL of payments with no existing object, you may also add the parameter &noidempotency=1 so the same link with same tag can be used several times (some payment mode may limit the payment to 1 for each different link without this parameter) +SetupStripeToHavePaymentCreatedAutomatically=Setup your Stripe with url %s to have payment created automatically when validated by Stripe. +AccountParameter=Account parameters +UsageParameter=Usage parameters +InformationToFindParameters=Help to find your %s account information +STRIPE_CGI_URL_V2=Url of Stripe CGI module for payment +VendorName=Name of vendor +CSSUrlForPaymentForm=CSS style sheet url for payment form +NewStripePaymentReceived=New Stripe payment received +NewStripePaymentFailed=New Stripe payment tried but failed +FailedToChargeCard=Failed to charge card +STRIPE_TEST_SECRET_KEY=Secret test key +STRIPE_TEST_PUBLISHABLE_KEY=Publishable test key +STRIPE_TEST_WEBHOOK_KEY=Webhook test key +STRIPE_LIVE_SECRET_KEY=Secret live key +STRIPE_LIVE_PUBLISHABLE_KEY=Publishable live key +STRIPE_LIVE_WEBHOOK_KEY=Webhook live key +ONLINE_PAYMENT_WAREHOUSE=Stock to use for stock decrease when online payment is done
    (TODO When option to decrease stock is done on an action on invoice and the online payment generate itself the invoice ?) +StripeLiveEnabled=Stripe live enabled (otherwise test/sandbox mode) +StripeImportPayment=Import Stripe payments +ExampleOfTestCreditCard=Example of credit card for test: %s => valid, %s => error CVC, %s => expired, %s => charge fails +StripeGateways=Stripe gateways +OAUTH_STRIPE_TEST_ID=Stripe Connect Client ID (ca_...) +OAUTH_STRIPE_LIVE_ID=Stripe Connect Client ID (ca_...) +BankAccountForBankTransfer=Bank account for fund payouts +StripeAccount=Stripe account +StripeChargeList=List of Stripe charges +StripeTransactionList=List of Stripe transactions +StripeCustomerId=Stripe customer id +StripePaymentModes=Stripe payment modes +LocalID=Local ID +StripeID=Stripe ID +NameOnCard=Name on card +CardNumber=Card Number +ExpiryDate=Expiry Date +CVN=CVN +DeleteACard=Delete Card +ConfirmDeleteCard=Are you sure you want to delete this Credit or Debit card? +CreateCustomerOnStripe=Create customer on Stripe +CreateCardOnStripe=Create card on Stripe +ShowInStripe=Show in Stripe +StripeUserAccountForActions=User account to use for email notification of some Stripe events (Stripe payouts) +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... +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/bn_IN/supplier_proposal.lang b/htdocs/langs/bn_IN/supplier_proposal.lang new file mode 100644 index 00000000000..ce5bdf0425a --- /dev/null +++ b/htdocs/langs/bn_IN/supplier_proposal.lang @@ -0,0 +1,54 @@ +# Dolibarr language file - Source file is en_US - supplier_proposal +SupplierProposal=Vendor commercial proposals +supplier_proposalDESC=Manage price requests to suppliers +SupplierProposalNew=New price request +CommRequest=Price request +CommRequests=Price requests +SearchRequest=Find a request +DraftRequests=Draft requests +SupplierProposalsDraft=Draft vendor proposals +LastModifiedRequests=Latest %s modified price requests +RequestsOpened=Open price requests +SupplierProposalArea=Vendor proposals area +SupplierProposalShort=Vendor proposal +SupplierProposals=Vendor proposals +SupplierProposalsShort=Vendor proposals +NewAskPrice=New price request +ShowSupplierProposal=Show price request +AddSupplierProposal=Create a price request +SupplierProposalRefFourn=Vendor ref +SupplierProposalDate=Delivery date +SupplierProposalRefFournNotice=Before closing to "Accepted", think to grasp suppliers references. +ConfirmValidateAsk=Are you sure you want to validate this price request under name %s? +DeleteAsk=Delete request +ValidateAsk=Validate request +SupplierProposalStatusDraft=Draft (needs to be validated) +SupplierProposalStatusValidated=Validated (request is open) +SupplierProposalStatusClosed=Closed +SupplierProposalStatusSigned=Accepted +SupplierProposalStatusNotSigned=Refused +SupplierProposalStatusDraftShort=Draft +SupplierProposalStatusValidatedShort=Validated +SupplierProposalStatusClosedShort=Closed +SupplierProposalStatusSignedShort=Accepted +SupplierProposalStatusNotSignedShort=Refused +CopyAskFrom=Create a price request by copying an existing request +CreateEmptyAsk=Create blank request +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=Send price request by mail +SendAskRef=Sending the price request %s +SupplierProposalCard=Request card +ConfirmDeleteAsk=Are you sure you want to delete this price request %s? +ActionsOnSupplierProposal=Events on price request +DocModelAuroreDescription=A complete request model (logo...) +CommercialAsk=Price request +DefaultModelSupplierProposalCreate=Default model creation +DefaultModelSupplierProposalToBill=Default template when closing a price request (accepted) +DefaultModelSupplierProposalClosed=Default template when closing a price request (refused) +ListOfSupplierProposals=List of vendor proposal requests +ListSupplierProposalsAssociatedProject=List of vendor proposals associated with project +SupplierProposalsToClose=Vendor proposals to close +SupplierProposalsToProcess=Vendor proposals to process +LastSupplierProposals=Latest %s price requests +AllPriceRequests=All requests diff --git a/htdocs/langs/bn_IN/suppliers.lang b/htdocs/langs/bn_IN/suppliers.lang new file mode 100644 index 00000000000..b69b11272b4 --- /dev/null +++ b/htdocs/langs/bn_IN/suppliers.lang @@ -0,0 +1,47 @@ +# Dolibarr language file - Source file is en_US - vendors +Suppliers=Vendors +SuppliersInvoice=Vendor invoice +ShowSupplierInvoice=Show Vendor Invoice +NewSupplier=New vendor +History=History +ListOfSuppliers=List of vendors +ShowSupplier=Show vendor +OrderDate=Order date +BuyingPriceMin=Best buying price +BuyingPriceMinShort=Best buying price +TotalBuyingPriceMinShort=Total of subproducts buying prices +TotalSellingPriceMinShort=Total of subproducts selling prices +SomeSubProductHaveNoPrices=Some sub-products have no price defined +AddSupplierPrice=Add buying price +ChangeSupplierPrice=Change buying price +SupplierPrices=Vendor prices +ReferenceSupplierIsAlreadyAssociatedWithAProduct=This vendor reference is already associated with a product: %s +NoRecordedSuppliers=No vendor recorded +SupplierPayment=Vendor payment +SuppliersArea=Vendor area +RefSupplierShort=Ref. vendor +Availability=Availability +ExportDataset_fournisseur_1=Vendor invoices and invoice details +ExportDataset_fournisseur_2=Vendor invoices and payments +ExportDataset_fournisseur_3=Purchase orders and order details +ApproveThisOrder=Approve this order +ConfirmApproveThisOrder=Are you sure you want to approve order %s? +DenyingThisOrder=Deny this order +ConfirmDenyingThisOrder=Are you sure you want to deny this order %s? +ConfirmCancelThisOrder=Are you sure you want to cancel this order %s? +AddSupplierOrder=Create Purchase Order +AddSupplierInvoice=Create vendor invoice +ListOfSupplierProductForSupplier=List of products and prices for vendor %s +SentToSuppliers=Sent to vendors +ListOfSupplierOrders=List of purchase orders +MenuOrdersSupplierToBill=Purchase orders to invoice +NbDaysToDelivery=Delivery delay (days) +DescNbDaysToDelivery=The longest delivery delay of the products from this order +SupplierReputation=Vendor reputation +DoNotOrderThisProductToThisSupplier=Do not order +NotTheGoodQualitySupplier=Low quality +ReputationForThisProduct=Reputation +BuyerName=Buyer name +AllProductServicePrices=All product / service prices +AllProductReferencesOfSupplier=All product / service references of vendor +BuyingPriceNumShort=Vendor prices diff --git a/htdocs/langs/bn_IN/ticket.lang b/htdocs/langs/bn_IN/ticket.lang new file mode 100644 index 00000000000..80518c3401a --- /dev/null +++ b/htdocs/langs/bn_IN/ticket.lang @@ -0,0 +1,305 @@ +# en_US lang file for module ticket +# Copyright (C) 2013 Jean-François FERRY +# +# 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 . + +# +# Generic +# + +Module56000Name=Tickets +Module56000Desc=Ticket system for issue or request management + +Permission56001=See tickets +Permission56002=Modify tickets +Permission56003=Delete tickets +Permission56004=Manage tickets +Permission56005=See tickets of all third parties (not effective for external users, always be limited to the third party they depend on) + +TicketDictType=Ticket - Types +TicketDictCategory=Ticket - Groupes +TicketDictSeverity=Ticket - Severities +TicketDictResolution=Ticket - Resolution +TicketTypeShortBUGSOFT=Dysfonctionnement logiciel +TicketTypeShortBUGHARD=Dysfonctionnement matériel +TicketTypeShortCOM=Commercial question + +TicketTypeShortHELP=Request for functionnal help +TicketTypeShortISSUE=Issue, bug or problem +TicketTypeShortREQUEST=Change or enhancement request +TicketTypeShortPROJET=Project +TicketTypeShortOTHER=Other + +TicketSeverityShortLOW=Low +TicketSeverityShortNORMAL=Normal +TicketSeverityShortHIGH=High +TicketSeverityShortBLOCKING=Critical/Blocking + +ErrorBadEmailAddress=Field '%s' incorrect +MenuTicketMyAssign=My tickets +MenuTicketMyAssignNonClosed=My open tickets +MenuListNonClosed=Open tickets + +TypeContact_ticket_internal_CONTRIBUTOR=Contributor +TypeContact_ticket_internal_SUPPORTTEC=Assigned user +TypeContact_ticket_external_SUPPORTCLI=Customer contact / incident tracking +TypeContact_ticket_external_CONTRIBUTOR=External contributor + +OriginEmail=Email source +Notify_TICKET_SENTBYMAIL=Send ticket message by email + +# Status +NotRead=Not read +Read=Read +Assigned=Assigned +InProgress=In progress +NeedMoreInformation=Waiting for information +Answered=Answered +Waiting=Waiting +Closed=Closed +Deleted=Deleted + +# Dict +Type=Type +Category=Analytic code +Severity=Severity + +# Email templates +MailToSendTicketMessage=To send email from ticket message + +# +# Admin page +# +TicketSetup=Ticket module setup +TicketSettings=Settings +TicketSetupPage= +TicketPublicAccess=A public interface requiring no identification is available at the following url +TicketSetupDictionaries=The type of ticket, severity and analytic codes are configurable from dictionaries +TicketParamModule=Module variable setup +TicketParamMail=Email setup +TicketEmailNotificationFrom=Notification email from +TicketEmailNotificationFromHelp=Used into ticket message answer by example +TicketEmailNotificationTo=Notifications email to +TicketEmailNotificationToHelp=Send email notifications to this address. +TicketNewEmailBodyLabel=Text message sent after creating a ticket +TicketNewEmailBodyHelp=The text specified here will be inserted into the email confirming the creation of a new ticket from the public interface. Information on the consultation of the ticket are automatically added. +TicketParamPublicInterface=Public interface setup +TicketsEmailMustExist=Require an existing email address to create a ticket +TicketsEmailMustExistHelp=In the public interface, the email address should already be filled in the database to create a new ticket. +PublicInterface=Public interface +TicketUrlPublicInterfaceLabelAdmin=Alternative URL for public interface +TicketUrlPublicInterfaceHelpAdmin=It is possible to define an alias to the web server and thus make available the public interface with another URL (the server must act as a proxy on this new URL) +TicketPublicInterfaceTextHomeLabelAdmin=Welcome text of the public interface +TicketPublicInterfaceTextHome=You can create a support ticket or view existing from its identifier tracking ticket. +TicketPublicInterfaceTextHomeHelpAdmin=The text defined here will appear on the home page of the public interface. +TicketPublicInterfaceTopicLabelAdmin=Interface title +TicketPublicInterfaceTopicHelp=This text will appear as the title of the public interface. +TicketPublicInterfaceTextHelpMessageLabelAdmin=Help text to the message entry +TicketPublicInterfaceTextHelpMessageHelpAdmin=This text will appear above the message input area of the user. +ExtraFieldsTicket=Extra attributes +TicketCkEditorEmailNotActivated=HTML editor is not activated. Please put FCKEDITOR_ENABLE_MAIL content to 1 to get it. +TicketsDisableEmail=Do not send emails for ticket creation or message recording +TicketsDisableEmailHelp=By default, emails are sent when new tickets or messages created. Enable this option to disable *all* email notifications +TicketsLogEnableEmail=Enable log by email +TicketsLogEnableEmailHelp=At each change, an email will be sent **to each contact** associated with the ticket. +TicketParams=Params +TicketsShowModuleLogo=Display the logo of the module in the public interface +TicketsShowModuleLogoHelp=Enable this option to hide the logo module in the pages of the public interface +TicketsShowCompanyLogo=Display the logo of the company in the public interface +TicketsShowCompanyLogoHelp=Enable this option to hide the logo of the main company in the pages of the public interface +TicketsEmailAlsoSendToMainAddress=Also send notification to main email address +TicketsEmailAlsoSendToMainAddressHelp=Enable this option to send an email to "Notification email from" address (see setup below) +TicketsLimitViewAssignedOnly=Restrict the display to tickets assigned to the current user (not effective for external users, always be limited to the third party they depend on) +TicketsLimitViewAssignedOnlyHelp=Only tickets assigned to the current user will be visible. Does not apply to a user with tickets management rights. +TicketsActivatePublicInterface=Activate public interface +TicketsActivatePublicInterfaceHelp=Public interface allow any visitors to create tickets. +TicketsAutoAssignTicket=Automatically assign the user who created the ticket +TicketsAutoAssignTicketHelp=When creating a ticket, the user can be automatically assigned to the ticket. +TicketNumberingModules=Tickets numbering module +TicketNotifyTiersAtCreation=Notify third party at creation +TicketGroup=Group +TicketsDisableCustomerEmail=Always disable emails when a ticket is created from public interface +# +# Index & list page +# +TicketsIndex=Tickets area +TicketList=List of tickets +TicketAssignedToMeInfos=This page display ticket list created by or assigned to current user +NoTicketsFound=No ticket found +NoUnreadTicketsFound=No unread ticket found +TicketViewAllTickets=View all tickets +TicketViewNonClosedOnly=View only open tickets +TicketStatByStatus=Tickets by status +OrderByDateAsc=Sort by ascending date +OrderByDateDesc=Sort by descending date +ShowAsConversation=Show as conversation list +MessageListViewType=Show as table list + +# +# Ticket card +# +Ticket=Ticket +TicketCard=Ticket card +CreateTicket=Create ticket +EditTicket=Edit ticket +TicketsManagement=Tickets Management +CreatedBy=Created by +NewTicket=New Ticket +SubjectAnswerToTicket=Ticket answer +TicketTypeRequest=Request type +TicketCategory=Analytic code +SeeTicket=See ticket +TicketMarkedAsRead=Ticket has been marked as read +TicketReadOn=Read on +TicketCloseOn=Closing date +MarkAsRead=Mark ticket as read +TicketHistory=Ticket history +AssignUser=Assign to user +TicketAssigned=Ticket is now assigned +TicketChangeType=Change type +TicketChangeCategory=Change analytic code +TicketChangeSeverity=Change severity +TicketAddMessage=Add a message +AddMessage=Add a message +MessageSuccessfullyAdded=Ticket added +TicketMessageSuccessfullyAdded=Message successfully added +TicketMessagesList=Message list +NoMsgForThisTicket=No message for this ticket +Properties=Classification +LatestNewTickets=Latest %s newest tickets (not read) +TicketSeverity=Severity +ShowTicket=See ticket +RelatedTickets=Related tickets +TicketAddIntervention=Create intervention +CloseTicket=Close ticket +CloseATicket=Close a ticket +ConfirmCloseAticket=Confirm ticket closing +ConfirmDeleteTicket=Please confirm ticket deleting +TicketDeletedSuccess=Ticket deleted with success +TicketMarkedAsClosed=Ticket marked as closed +TicketDurationAuto=Calculated duration +TicketDurationAutoInfos=Duration calculated automatically from intervention related +TicketUpdated=Ticket updated +SendMessageByEmail=Send message by email +TicketNewMessage=New message +ErrorMailRecipientIsEmptyForSendTicketMessage=Recipient is empty. No email send +TicketGoIntoContactTab=Please go into "Contacts" tab to select them +TicketMessageMailIntro=Introduction +TicketMessageMailIntroHelp=This text is added only at the beginning of the email and will not be saved. +TicketMessageMailIntroLabelAdmin=Introduction to the message when sending email +TicketMessageMailIntroText=Hello,
    A new response was sent on a ticket that you contact. Here is the message:
    +TicketMessageMailIntroHelpAdmin=This text will be inserted before the text of the response to a ticket. +TicketMessageMailSignature=Signature +TicketMessageMailSignatureHelp=This text is added only at the end of the email and will not be saved. +TicketMessageMailSignatureText=

    Sincerely,

    --

    +TicketMessageMailSignatureLabelAdmin=Signature of response email +TicketMessageMailSignatureHelpAdmin=This text will be inserted after the response message. +TicketMessageHelp=Only this text will be saved in the message list on ticket card. +TicketMessageSubstitutionReplacedByGenericValues=Substitutions variables are replaced by generic values. +TimeElapsedSince=Time elapsed since +TicketTimeToRead=Time elapsed before read +TicketContacts=Contacts ticket +TicketDocumentsLinked=Documents linked to ticket +ConfirmReOpenTicket=Confirm reopen this ticket ? +TicketMessageMailIntroAutoNewPublicMessage=A new message was posted on the ticket with the subject %s: +TicketAssignedToYou=Ticket assigned +TicketAssignedEmailBody=You have been assigned the ticket #%s by %s +MarkMessageAsPrivate=Mark message as private +TicketMessagePrivateHelp=This message will not display to external users +TicketEmailOriginIssuer=Issuer at origin of the tickets +InitialMessage=Initial Message +LinkToAContract=Link to a contract +TicketPleaseSelectAContract=Select a contract +UnableToCreateInterIfNoSocid=Can not create an intervention when no third party is defined +TicketMailExchanges=Mail exchanges +TicketInitialMessageModified=Initial message modified +TicketMessageSuccesfullyUpdated=Message successfully updated +TicketChangeStatus=Change status +TicketConfirmChangeStatus=Confirm the status change: %s ? +TicketLogStatusChanged=Status changed: %s to %s +TicketNotNotifyTiersAtCreate=Not notify company at create +Unread=Unread +TicketNotCreatedFromPublicInterface=Not available. Ticket was not created from public interface. +PublicInterfaceNotEnabled=Public interface was not enabled +ErrorTicketRefRequired=Ticket reference name is required + +# +# Logs +# +TicketLogMesgReadBy=Ticket %s read by %s +NoLogForThisTicket=No log for this ticket yet +TicketLogAssignedTo=Ticket %s assigned to %s +TicketLogPropertyChanged=Ticket %s modified: classification from %s to %s +TicketLogClosedBy=Ticket %s closed by %s +TicketLogReopen=Ticket %s re-open + +# +# Public pages +# +TicketSystem=Ticket system +ShowListTicketWithTrackId=Display ticket list from track ID +ShowTicketWithTrackId=Display ticket from track ID +TicketPublicDesc=You can create a support ticket or check from an existing ID. +YourTicketSuccessfullySaved=Ticket has been successfully saved! +MesgInfosPublicTicketCreatedWithTrackId=A new ticket has been created with ID %s and Ref %s. +PleaseRememberThisId=Please keep the tracking number that we might ask you later. +TicketNewEmailSubject=Ticket creation confirmation - Ref %s (public ticket ID %s) +TicketNewEmailSubjectCustomer=New support ticket +TicketNewEmailBody=This is an automatic email to confirm you have registered a new ticket. +TicketNewEmailBodyCustomer=This is an automatic email to confirm a new ticket has just been created into your account. +TicketNewEmailBodyInfosTicket=Information for monitoring the ticket +TicketNewEmailBodyInfosTrackId=Ticket tracking number: %s +TicketNewEmailBodyInfosTrackUrl=You can view the progress of the ticket by clicking the link above. +TicketNewEmailBodyInfosTrackUrlCustomer=You can view the progress of the ticket in the specific interface by clicking the following link +TicketEmailPleaseDoNotReplyToThisEmail=Please do not reply directly to this email! Use the link to reply into the interface. +TicketPublicInfoCreateTicket=This form allows you to record a support ticket in our management system. +TicketPublicPleaseBeAccuratelyDescribe=Please accurately describe the problem. Provide the most information possible to allow us to correctly identify your request. +TicketPublicMsgViewLogIn=Please enter ticket tracking ID +TicketTrackId=Public Tracking ID +OneOfTicketTrackId=One of your tracking ID +ErrorTicketNotFound=Ticket with tracking ID %s not found! +Subject=Subject +ViewTicket=View ticket +ViewMyTicketList=View my ticket list +ErrorEmailMustExistToCreateTicket=Error: email address not found in our database +TicketNewEmailSubjectAdmin=New ticket created - Ref %s (public ticket ID %s) +TicketNewEmailBodyAdmin=

    Ticket has just been created with ID #%s, see information:

    +SeeThisTicketIntomanagementInterface=See ticket in management interface +TicketPublicInterfaceForbidden=The public interface for the tickets was not enabled +ErrorEmailOrTrackingInvalid=Bad value for tracking ID or email +OldUser=Old user +NewUser=New user +NumberOfTicketsByMonth=Number of tickets per month +NbOfTickets=Number of tickets +# notifications +TicketNotificationEmailSubject=Ticket %s updated +TicketNotificationEmailBody=This is an automatic message to notify you that ticket %s has just been updated +TicketNotificationRecipient=Notification recipient +TicketNotificationLogMessage=Log message +TicketNotificationEmailBodyInfosTrackUrlinternal=View ticket into interface +TicketNotificationNumberEmailSent=Notification email sent: %s + +ActionsOnTicket=Events on ticket + +# +# Boxes +# +BoxLastTicket=Latest created tickets +BoxLastTicketDescription=Latest %s created tickets +BoxLastTicketContent= +BoxLastTicketNoRecordedTickets=No recent unread tickets +BoxLastModifiedTicket=Latest modified tickets +BoxLastModifiedTicketDescription=Latest %s modified tickets +BoxLastModifiedTicketContent= +BoxLastModifiedTicketNoRecordedTickets=No recent modified tickets diff --git a/htdocs/langs/bn_IN/trips.lang b/htdocs/langs/bn_IN/trips.lang new file mode 100644 index 00000000000..654f14d6bf7 --- /dev/null +++ b/htdocs/langs/bn_IN/trips.lang @@ -0,0 +1,151 @@ +# Dolibarr language file - Source file is en_US - trips +ShowExpenseReport=Show expense report +Trips=Expense reports +TripsAndExpenses=Expenses reports +TripsAndExpensesStatistics=Expense reports statistics +TripCard=Expense report card +AddTrip=Create expense report +ListOfTrips=List of expense reports +ListOfFees=List of fees +TypeFees=Types of fees +ShowTrip=Show expense report +NewTrip=New expense report +LastExpenseReports=Latest %s expense reports +AllExpenseReports=All expense reports +CompanyVisited=Company/organization visited +FeesKilometersOrAmout=Amount or kilometers +DeleteTrip=Delete expense report +ConfirmDeleteTrip=Are you sure you want to delete this expense report? +ListTripsAndExpenses=List of expense reports +ListToApprove=Waiting for approval +ExpensesArea=Expense reports area +ClassifyRefunded=Classify 'Refunded' +ExpenseReportWaitingForApproval=A new expense report has been submitted for approval +ExpenseReportWaitingForApprovalMessage=A new expense report has been submitted and is waiting for approval.
    - User: %s
    - Period: %s
    Click here to validate: %s +ExpenseReportWaitingForReApproval=An expense report has been submitted for re-approval +ExpenseReportWaitingForReApprovalMessage=An expense report has been submitted and is waiting for re-approval.
    The %s, you refused to approve the expense report for this reason: %s.
    A new version has been proposed and waiting for your approval.
    - User: %s
    - Period: %s
    Click here to validate: %s +ExpenseReportApproved=An expense report was approved +ExpenseReportApprovedMessage=The expense report %s was approved.
    - User: %s
    - Approved by: %s
    Click here to show the expense report: %s +ExpenseReportRefused=An expense report was refused +ExpenseReportRefusedMessage=The expense report %s was refused.
    - User: %s
    - Refused by: %s
    - Motive for refusal: %s
    Click here to show the expense report: %s +ExpenseReportCanceled=An expense report was canceled +ExpenseReportCanceledMessage=The expense report %s was canceled.
    - User: %s
    - Canceled by: %s
    - Motive for cancellation: %s
    Click here to show the expense report: %s +ExpenseReportPaid=An expense report was paid +ExpenseReportPaidMessage=The expense report %s was paid.
    - User: %s
    - Paid by: %s
    Click here to show the expense report: %s +TripId=Id expense report +AnyOtherInThisListCanValidate=Person to inform for validation. +TripSociete=Information company +TripNDF=Informations expense report +PDFStandardExpenseReports=Standard template to generate a PDF document for expense report +ExpenseReportLine=Expense report line +TF_OTHER=Other +TF_TRIP=Transportation +TF_LUNCH=Lunch +TF_METRO=Metro +TF_TRAIN=Train +TF_BUS=Bus +TF_CAR=Car +TF_PEAGE=Toll +TF_ESSENCE=Fuel +TF_HOTEL=Hotel +TF_TAXI=Taxi +EX_KME=Mileage costs +EX_FUE=Fuel CV +EX_HOT=Hotel +EX_PAR=Parking CV +EX_TOL=Toll CV +EX_TAX=Various Taxes +EX_IND=Indemnity transportation subscription +EX_SUM=Maintenance supply +EX_SUO=Office supplies +EX_CAR=Car rental +EX_DOC=Documentation +EX_CUR=Customers receiving +EX_OTR=Other receiving +EX_POS=Postage +EX_CAM=CV maintenance and repair +EX_EMM=Employees meal +EX_GUM=Guests meal +EX_BRE=Breakfast +EX_FUE_VP=Fuel PV +EX_TOL_VP=Toll PV +EX_PAR_VP=Parking PV +EX_CAM_VP=PV maintenance and repair +DefaultCategoryCar=Default transportation mode +DefaultRangeNumber=Default range number +UploadANewFileNow=Upload a new document now +Error_EXPENSEREPORT_ADDON_NotDefined=Error, the rule for expense report numbering ref was not defined into setup of module 'Expense Report' +ErrorDoubleDeclaration=You have declared another expense report into a similar date range. +AucuneLigne=There is no expense report declared yet +ModePaiement=Payment mode +VALIDATOR=User responsible for approval +VALIDOR=Approved by +AUTHOR=Recorded by +AUTHORPAIEMENT=Paid by +REFUSEUR=Denied by +CANCEL_USER=Deleted by +MOTIF_REFUS=Reason +MOTIF_CANCEL=Reason +DATE_REFUS=Deny date +DATE_SAVE=Validation date +DATE_CANCEL=Cancelation date +DATE_PAIEMENT=Payment date +BROUILLONNER=Reopen +ExpenseReportRef=Ref. expense report +ValidateAndSubmit=Validate and submit for approval +ValidatedWaitingApproval=Validated (waiting for approval) +NOT_AUTHOR=You are not the author of this expense report. Operation cancelled. +ConfirmRefuseTrip=Are you sure you want to deny this expense report? +ValideTrip=Approve expense report +ConfirmValideTrip=Are you sure you want to approve this expense report? +PaidTrip=Pay an expense report +ConfirmPaidTrip=Are you sure you want to change status of this expense report to "Paid"? +ConfirmCancelTrip=Are you sure you want to cancel this expense report? +BrouillonnerTrip=Move back expense report to status "Draft" +ConfirmBrouillonnerTrip=Are you sure you want to move this expense report to status "Draft"? +SaveTrip=Validate expense report +ConfirmSaveTrip=Are you sure you want to validate this expense report? +NoTripsToExportCSV=No expense report to export for this period. +ExpenseReportPayment=Expense report payment +ExpenseReportsToApprove=Expense reports to approve +ExpenseReportsToPay=Expense reports to pay +ConfirmCloneExpenseReport=Are you sure you want to clone this expense report ? +ExpenseReportsIk=Expense report milles index +ExpenseReportsRules=Expense report rules +ExpenseReportIkDesc=You can modify the calculation of kilometers expense by category and range who they are previously defined. d is the distance in kilometers +ExpenseReportRulesDesc=You can create or update any rules of calculation. This part will be used when user will create a new expense report +expenseReportOffset=Offset +expenseReportCoef=Coefficient +expenseReportTotalForFive=Example with d = 5 +expenseReportRangeFromTo=from %d to %d +expenseReportRangeMoreThan=more than %d +expenseReportCoefUndefined=(value not defined) +expenseReportCatDisabled=Category disabled - see the c_exp_tax_cat dictionary +expenseReportRangeDisabled=Range disabled - see the c_exp_tax_range dictionay +expenseReportPrintExample=offset + (d x coef) = %s +ExpenseReportApplyTo=Apply to +ExpenseReportDomain=Domain to apply +ExpenseReportLimitOn=Limit on +ExpenseReportDateStart=Date start +ExpenseReportDateEnd=Date end +ExpenseReportLimitAmount=Limite amount +ExpenseReportRestrictive=Restrictive +AllExpenseReport=All type of expense report +OnExpense=Expense line +ExpenseReportRuleSave=Expense report rule saved +ExpenseReportRuleErrorOnSave=Error: %s +RangeNum=Range %d +ExpenseReportConstraintViolationError=Constraint violation id [%s]: %s is superior to %s %s +byEX_DAY=by day (limitation to %s) +byEX_MON=by month (limitation to %s) +byEX_YEA=by year (limitation to %s) +byEX_EXP=by line (limitation to %s) +ExpenseReportConstraintViolationWarning=Constraint violation id [%s]: %s is superior to %s %s +nolimitbyEX_DAY=by day (no limitation) +nolimitbyEX_MON=by month (no limitation) +nolimitbyEX_YEA=by year (no limitation) +nolimitbyEX_EXP=by line (no limitation) +CarCategory=Category of car +ExpenseRangeOffset=Offset amount: %s +RangeIk=Mileage range +AttachTheNewLineToTheDocument=Attach the line to an uploaded document diff --git a/htdocs/langs/bn_IN/users.lang b/htdocs/langs/bn_IN/users.lang new file mode 100644 index 00000000000..41a5ebd0981 --- /dev/null +++ b/htdocs/langs/bn_IN/users.lang @@ -0,0 +1,118 @@ +# Dolibarr language file - Source file is en_US - users +HRMArea=HRM area +UserCard=User card +GroupCard=Group card +Permission=Permission +Permissions=Permissions +EditPassword=Edit password +SendNewPassword=Regenerate and send password +SendNewPasswordLink=Send link to reset password +ReinitPassword=Regenerate password +PasswordChangedTo=Password changed to: %s +SubjectNewPassword=Your new password for %s +GroupRights=Group permissions +UserRights=User permissions +UserGUISetup=User Display Setup +DisableUser=Disable +DisableAUser=Disable a user +DeleteUser=Delete +DeleteAUser=Delete a user +EnableAUser=Enable a user +DeleteGroup=Delete +DeleteAGroup=Delete a group +ConfirmDisableUser=Are you sure you want to disable user %s? +ConfirmDeleteUser=Are you sure you want to delete user %s? +ConfirmDeleteGroup=Are you sure you want to delete group %s? +ConfirmEnableUser=Are you sure you want to enable user %s? +ConfirmReinitPassword=Are you sure you want to generate a new password for user %s? +ConfirmSendNewPassword=Are you sure you want to generate and send new password for user %s? +NewUser=New user +CreateUser=Create user +LoginNotDefined=Login is not defined. +NameNotDefined=Name is not defined. +ListOfUsers=List of users +SuperAdministrator=Super Administrator +SuperAdministratorDesc=Global administrator +AdministratorDesc=Administrator +DefaultRights=Default Permissions +DefaultRightsDesc=Define here the default permissions that are automatically granted to a new user (to modify permissions for existing users, go to the user card). +DolibarrUsers=Dolibarr users +LastName=Last name +FirstName=First name +ListOfGroups=List of groups +NewGroup=New group +CreateGroup=Create group +RemoveFromGroup=Remove from group +PasswordChangedAndSentTo=Password changed and sent to %s. +PasswordChangeRequest=Request to change password for %s +PasswordChangeRequestSent=Request to change password for %s sent to %s. +ConfirmPasswordReset=Confirm password reset +MenuUsersAndGroups=Users & Groups +LastGroupsCreated=Latest %s groups created +LastUsersCreated=Latest %s users created +ShowGroup=Show group +ShowUser=Show user +NonAffectedUsers=Non assigned users +UserModified=User modified successfully +PhotoFile=Photo file +ListOfUsersInGroup=List of users in this group +ListOfGroupsForUser=List of groups for this user +LinkToCompanyContact=Link to third party / contact +LinkedToDolibarrMember=Link to member +LinkedToDolibarrUser=Link to Dolibarr user +LinkedToDolibarrThirdParty=Link to Dolibarr third party +CreateDolibarrLogin=Create a user +CreateDolibarrThirdParty=Create a third party +LoginAccountDisableInDolibarr=Account disabled in Dolibarr. +UsePersonalValue=Use personal value +InternalUser=Internal user +ExportDataset_user_1=Users and their properties +DomainUser=Domain user %s +Reactivate=Reactivate +CreateInternalUserDesc=This form allows you to create an internal user in your company/organization. To create an external user (customer, vendor etc. ..), use the button 'Create Dolibarr User' from that third-party's contact card. +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +PermissionInheritedFromAGroup=Permission granted because inherited from one of a user's group. +Inherited=Inherited +UserWillBeInternalUser=Created user will be an internal user (because not linked to a particular third party) +UserWillBeExternalUser=Created user will be an external user (because linked to a particular third party) +IdPhoneCaller=Id phone caller +NewUserCreated=User %s created +NewUserPassword=Password change for %s +NewPasswordValidated=Your new password have been validated and must be used now to login. +EventUserModified=User %s modified +UserDisabled=User %s disabled +UserEnabled=User %s activated +UserDeleted=User %s removed +NewGroupCreated=Group %s created +GroupModified=Group %s modified +GroupDeleted=Group %s removed +ConfirmCreateContact=Are you sure you want to create a Dolibarr account for this contact? +ConfirmCreateLogin=Are you sure you want to create a Dolibarr account for this member? +ConfirmCreateThirdParty=Are you sure you want to create a third party for this member? +LoginToCreate=Login to create +NameToCreate=Name of third party to create +YourRole=Your roles +YourQuotaOfUsersIsReached=Your quota of active users is reached ! +NbOfUsers=No. of users +NbOfPermissions=No. of permissions +DontDowngradeSuperAdmin=Only a superadmin can downgrade a superadmin +HierarchicalResponsible=Supervisor +HierarchicView=Hierarchical view +UseTypeFieldToChange=Use field Type to change +OpenIDURL=OpenID URL +LoginUsingOpenID=Use OpenID to login +WeeklyHours=Hours worked (per week) +ExpectedWorkedHours=Expected worked hours per week +ColorUser=Color of the user +DisabledInMonoUserMode=Disabled in maintenance mode +UserAccountancyCode=User accounting code +UserLogoff=User logout +UserLogged=User logged +DateEmployment=Employment Start Date +DateEmploymentEnd=Employment End Date +CantDisableYourself=You can't disable your own user record +ForceUserExpenseValidator=Force expense report validator +ForceUserHolidayValidator=Force leave request validator +ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/bn_IN/website.lang b/htdocs/langs/bn_IN/website.lang new file mode 100644 index 00000000000..bce2a09fb03 --- /dev/null +++ b/htdocs/langs/bn_IN/website.lang @@ -0,0 +1,130 @@ +# Dolibarr language file - Source file is en_US - website +Shortname=Code +WebsiteSetupDesc=Create here the websites you wish to use. Then go into menu Websites to edit them. +DeleteWebsite=Delete website +ConfirmDeleteWebsite=Are you sure you want to delete this web site? All its pages and content will also be removed. The files uploaded (like into the medias directory, the ECM module, ...) will remain. +WEBSITE_TYPE_CONTAINER=Type of page/container +WEBSITE_PAGE_EXAMPLE=Web page to use as example +WEBSITE_PAGENAME=Page name/alias +WEBSITE_ALIASALT=Alternative page names/aliases +WEBSITE_ALIASALTDesc=Use here list of other name/aliases so the page can also be accessed using this other names/aliases (for example the old name after renaming the alias to keep backlink on old link/name working). Syntax is:
    alternativename1, alternativename2, ... +WEBSITE_CSS_URL=URL of external CSS file +WEBSITE_CSS_INLINE=CSS file content (common to all pages) +WEBSITE_JS_INLINE=Javascript file content (common to all pages) +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. +MediaFiles=Media library +EditCss=Edit website properties +EditMenu=Edit menu +EditMedias=Edit medias +EditPageMeta=Edit page/container properties +EditInLine=Edit inline +AddWebsite=Add website +Webpage=Web page/container +AddPage=Add page/container +HomePage=Home Page +PageContainer=Page/container +PreviewOfSiteNotYetAvailable=Preview of your website %s not yet available. You must first 'Import a full website template' or just 'Add a page/container'. +RequestedPageHasNoContentYet=Requested page with id %s has no content yet, or cache file .tpl.php was removed. Edit content of the page to solve this. +SiteDeleted=Web site '%s' deleted +PageContent=Page/Contenair +PageDeleted=Page/Contenair '%s' of website %s deleted +PageAdded=Page/Contenair '%s' added +ViewSiteInNewTab=View site in new tab +ViewPageInNewTab=View page in new tab +SetAsHomePage=Set as Home page +RealURL=Real URL +ViewWebsiteInProduction=View web site using home URLs +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: +YouCanAlsoTestWithPHPS=Use with PHP embedded server
    On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running
    php -S 0.0.0.0:8080 -t %s +YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org +CheckVirtualHostPerms=Check also that virtual host has permission %s on files into
    %s +ReadPerm=Read +WritePerm=Write +TestDeployOnWeb=Test/deploy on web +PreviewSiteServedByWebServer=Preview %s in a new tab.

    The %s will be served by an external web server (like Apache, Nginx, IIS). You must install and setup this server before to point to directory:
    %s
    URL served by external server:
    %s +PreviewSiteServedByDolibarr=Preview %s in a new tab.

    The %s will be served by Dolibarr server so it does not need any extra web server (like Apache, Nginx, IIS) to be installed.
    The inconvenient is that URL of pages are not user friendly and start with path of your Dolibarr.
    URL served by Dolibarr:
    %s

    To use your own external web server to serve this web site, create a virtual host on your web server that point on directory
    %s
    then enter the name of this virtual server and click on the other preview button. +VirtualHostUrlNotDefined=URL of the virtual host served by external web server not defined +NoPageYet=No pages yet +YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template +SyntaxHelp=Help on specific syntax tips +YouCanEditHtmlSourceckeditor=You can edit HTML source code using the "Source" button in editor. +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +ClonePage=Clone page/container +CloneSite=Clone site +SiteAdded=Website added +ConfirmClonePage=Please enter code/alias of new page and if it is a translation of the cloned page. +PageIsANewTranslation=The new page is a translation of the current page ? +LanguageMustNotBeSameThanClonedPage=You clone a page as a translation. The language of the new page must be different than language of source page. +ParentPageId=Parent page ID +WebsiteId=Website ID +CreateByFetchingExternalPage=Create page/container by fetching page from external URL... +OrEnterPageInfoManually=Or create page from scratch or from a page template... +FetchAndCreate=Fetch and Create +ExportSite=Export website +ImportSite=Import website template +IDOfPage=Id of page +Banner=Banner +BlogPost=Blog post +WebsiteAccount=Website account +WebsiteAccounts=Website accounts +AddWebsiteAccount=Create web site account +BackToListForThirdParty=Back to list for the third-party +DisableSiteFirst=Disable website first +MyContainerTitle=My web site title +AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) +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 +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. +OnlyEditionOfSourceForGrabbedContent=Only edition of HTML source is possible when content was grabbed from an external site +GrabImagesInto=Grab also images found into css and page. +ImagesShouldBeSavedInto=Images should be saved into directory +WebsiteRootOfImages=Root directory for website images +SubdirOfPage=Sub-directory dedicated to page +AliasPageAlreadyExists=Alias page %s already exists +CorporateHomePage=Corporate Home page +EmptyPage=Empty page +ExternalURLMustStartWithHttp=External URL must start with http:// or https:// +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 +ThisPageHasTranslationPages=This page/container has translation +NoWebSiteCreateOneFirst=No website has been created yet. Create one first. +GoTo=Go to +DynamicPHPCodeContainsAForbiddenInstruction=You add dynamic PHP code that contains the PHP instruction '%s' that is forbidden by default as dynamic content (see hidden options WEBSITE_PHP_ALLOW_xxx to increase list of allowed commands). +NotAllowedToAddDynamicContent=You don't have permission to add or edit PHP dynamic content in websites. Ask permission or just keep code into php tags unmodified. +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 +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. +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. +Dynamiccontent=Sample of a page with dynamic content +ImportSite=Import website template +EditInLineOnOff=Mode 'Edit inline' is %s +ShowSubContainersOnOff=Mode to execute 'dynamic content' is %s +GlobalCSSorJS=Global CSS/JS/Header file of web site +BackToHomePage=Back to home page... +TranslationLinks=Translation links +YouTryToAccessToAFileThatIsNotAWebsitePage=You try to access to a page that is not a website page +UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 characters +MainLanguage=Main language +OtherLanguages=Other languages +UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/bn_IN/withdrawals.lang b/htdocs/langs/bn_IN/withdrawals.lang new file mode 100644 index 00000000000..b1d6e30e329 --- /dev/null +++ b/htdocs/langs/bn_IN/withdrawals.lang @@ -0,0 +1,119 @@ +# Dolibarr language file - Source file is en_US - withdrawals +CustomersStandingOrdersArea=Direct debit payment orders area +SuppliersStandingOrdersArea=Direct credit payment orders area +StandingOrdersPayment=Direct debit payment orders +StandingOrderPayment=Direct debit payment order +NewStandingOrder=New direct debit order +StandingOrderToProcess=To process +WithdrawalsReceipts=Direct debit orders +WithdrawalReceipt=Direct debit order +LastWithdrawalReceipts=Latest %s direct debit files +WithdrawalsLines=Direct debit order lines +RequestStandingOrderToTreat=Request for direct debit payment order to process +RequestStandingOrderTreated=Request for direct debit payment order processed +NotPossibleForThisStatusOfWithdrawReceiptORLine=Not yet possible. Withdraw status must be set to 'credited' before declaring reject on specific lines. +NbOfInvoiceToWithdraw=No. of qualified invoice with waiting direct debit order +NbOfInvoiceToWithdrawWithInfo=No. of customer invoice with direct debit payment orders having defined bank account information +InvoiceWaitingWithdraw=Invoice waiting for direct debit +AmountToWithdraw=Amount to withdraw +WithdrawsRefused=Direct debit refused +NoInvoiceToWithdraw=No customer invoice with open 'Direct debit requests' is waiting. Go on tab '%s' on invoice card to make a request. +ResponsibleUser=User Responsible +WithdrawalsSetup=Direct debit payment setup +WithdrawStatistics=Direct debit payment statistics +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 +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=Classify credited +ClassCreditedConfirm=Are you sure you want to classify this withdrawal receipt as credited on your bank account? +TransData=Transmission date +TransMetod=Transmission method +Send=Send +Lines=Lines +StandingOrderReject=Issue a rejection +WithdrawalRefused=Withdrawal refused +WithdrawalRefusedConfirm=Are you sure you want to enter a withdrawal rejection for society +RefusedData=Date of rejection +RefusedReason=Reason for rejection +RefusedInvoicing=Billing the rejection +NoInvoiceRefused=Do not charge the rejection +InvoiceRefused=Invoice refused (Charge the rejection to customer) +StatusDebitCredit=Status debit/credit +StatusWaiting=Waiting +StatusTrans=Sent +StatusCredited=Credited +StatusRefused=Refused +StatusMotif0=Unspecified +StatusMotif1=Insufficient funds +StatusMotif2=Request contested +StatusMotif3=No direct debit payment order +StatusMotif4=Sales Order +StatusMotif5=RIB unusable +StatusMotif6=Account without balance +StatusMotif7=Judicial Decision +StatusMotif8=Other reason +CreateForSepaFRST=Create direct debit file (SEPA FRST) +CreateForSepaRCUR=Create direct debit file (SEPA RCUR) +CreateAll=Create direct debit file (all) +CreateGuichet=Only office +CreateBanque=Only bank +OrderWaiting=Waiting for treatment +NotifyTransmision=Withdrawal Transmission +NotifyCredit=Withdrawal Credit +NumeroNationalEmetter=National Transmitter Number +WithBankUsingRIB=For bank accounts using RIB +WithBankUsingBANBIC=For bank accounts using IBAN/BIC/SWIFT +BankToReceiveWithdraw=Receiving Bank Account +CreditDate=Credit on +WithdrawalFileNotCapable=Unable to generate withdrawal receipt file for your country %s (Your country is not supported) +ShowWithdraw=Show Direct Debit Order +IfInvoiceNeedOnWithdrawPaymentWontBeClosed=However, if invoice has at least one direct debit payment order not yet processed, it won't be set as paid to allow prior withdrawal 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 payment order is closed, payment on invoice will be automatically recorded, and invoice closed if remainder to pay is null. +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 +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) +WithdrawRequestAmount=Amount of Direct debit request: +WithdrawRequestErrorNilAmount=Unable to create direct debit request for empty amount. +SepaMandate=SEPA Direct Debit Mandate +SepaMandateShort=SEPA Mandate +PleaseReturnMandate=Please return this mandate form by email to %s or by mail to +SEPALegalText=By signing this mandate form, you authorize (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. +CreditorIdentifier=Creditor Identifier +CreditorName=Creditor Name +SEPAFillForm=(B) Please complete all the fields marked * +SEPAFormYourName=Your name +SEPAFormYourBAN=Your Bank Account Name (IBAN) +SEPAFormYourBIC=Your Bank Identifier Code (BIC) +SEPAFrstOrRecur=Type of payment +ModeRECUR=Recurring payment +ModeFRST=One-off payment +PleaseCheckOne=Please check one only +DirectDebitOrderCreated=Direct debit order %s created +AmountRequested=Amount requested +SEPARCUR=SEPA CUR +SEPAFRST=SEPA FRST +ExecutionDate=Execution date +CreateForSepa=Create direct debit file +ICS=Creditor Identifier CI +END_TO_END="EndToEndId" SEPA XML tag - Unique id assigned per transaction +USTRD="Unstructured" SEPA XML tag +ADDDAYS=Add days to Execution Date + +### Notifications +InfoCreditSubject=Payment of direct debit payment order %s by the bank +InfoCreditMessage=The direct debit payment order %s has been paid by the bank
    Data of payment: %s +InfoTransSubject=Transmission of direct debit payment order %s to bank +InfoTransMessage=The direct debit payment order %s has been sent to bank by %s %s.

    +InfoTransData=Amount: %s
    Method: %s
    Date: %s +InfoRejectSubject=Direct debit payment order refused +InfoRejectMessage=Hello,

    the direct debit payment order of invoice %s related to the company %s, with an amount of %s has been refused by the bank.

    --
    %s +ModeWarning=Option for real mode was not set, we stop after this simulation diff --git a/htdocs/langs/bn_IN/workflow.lang b/htdocs/langs/bn_IN/workflow.lang new file mode 100644 index 00000000000..be126eef0f4 --- /dev/null +++ b/htdocs/langs/bn_IN/workflow.lang @@ -0,0 +1,20 @@ +# Dolibarr language file - Source file is en_US - workflow +WorkflowSetup=Workflow module setup +WorkflowDesc=This module provides some automatic actions. By default, the workflow is open (you can do things in the order you want) but here you can activate some automatic actions. +ThereIsNoWorkflowToModify=There is no workflow modifications available with the activated modules. +# Autocreate +descWORKFLOW_PROPAL_AUTOCREATE_ORDER=Automatically create a sales order after a commercial proposal is signed (the new order will have same amount as the proposal) +descWORKFLOW_PROPAL_AUTOCREATE_INVOICE=Automatically create a customer invoice after a commercial proposal is signed (the new invoice will have same amount as the proposal) +descWORKFLOW_CONTRACT_AUTOCREATE_INVOICE=Automatically create a customer invoice after a contract is validated +descWORKFLOW_ORDER_AUTOCREATE_INVOICE=Automatically create a customer invoice after a sales order is closed (the new invoice will have same amount as the order) +# Autoclassify customer proposal or order +descWORKFLOW_ORDER_CLASSIFY_BILLED_PROPAL=Classify linked source proposal as billed when sales order is set to billed (and if the amount of the order is the same as the total amount of the signed linked proposal) +descWORKFLOW_INVOICE_CLASSIFY_BILLED_PROPAL=Classify linked source proposal as billed when customer invoice is validated (and if the amount of the invoice is the same as the total amount of the signed linked proposal) +descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_ORDER=Classify linked source sales order as billed when customer invoice is validated (and if the amount of the invoice is the same as the total amount of the linked order) +descWORKFLOW_INVOICE_CLASSIFY_BILLED_ORDER=Classify linked source sales order as billed when customer invoice is set to paid (and if the amount of the invoice is the same as the total amount of the linked order) +descWORKFLOW_ORDER_CLASSIFY_SHIPPED_SHIPPING=Classify linked source sales order as shipped when a shipment is validated (and if the quantity shipped by all shipments is the same as in the order to update) +# Autoclassify purchase order +descWORKFLOW_ORDER_CLASSIFY_BILLED_SUPPLIER_PROPOSAL=Classify linked source vendor proposal as billed when vendor invoice is validated (and if the amount of the invoice is the same as the total amount of the linked proposal) +descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Classify linked source purchase order as billed when vendor invoice is validated (and if the amount of the invoice is the same as the total amount of the linked order) +AutomaticCreation=Automatic creation +AutomaticClassification=Automatic classification diff --git a/htdocs/langs/bn_IN/zapier.lang b/htdocs/langs/bn_IN/zapier.lang new file mode 100644 index 00000000000..6d6eda71313 --- /dev/null +++ b/htdocs/langs/bn_IN/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr module + +# +# Admin page +# +ZapierForDolibarrSetup = Setup of Zapier for Dolibarr diff --git a/htdocs/langs/bs_BA/accountancy.lang b/htdocs/langs/bs_BA/accountancy.lang index 91457d1c271..39446ad24d9 100644 --- a/htdocs/langs/bs_BA/accountancy.lang +++ b/htdocs/langs/bs_BA/accountancy.lang @@ -121,6 +121,7 @@ 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 +TotalForAccount=Total for accounting account Ventilate=Bind @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Accounting account to register donations ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (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 products sold in EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported 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_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (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_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unkno ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error PaymentsNotLinkedToProduct=Payment not linked to any product / service +OpeningBalance=Opening balance ShowOpeningBalance=Show opening balance HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Group of account PcgtypeDesc=Group 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. +Reconcilable=Reconcilable + TotalVente=Total turnover before tax TotalMarge=Total sales margin @@ -307,11 +317,13 @@ 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Chart of accounts Id ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC OptionModeProductSellExport=Mode sales exported in other countries OptionModeProductBuy=Mode purchases +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries 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. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=Remove accounting code from lines that not exists into charts of account CleanHistory=Reset all bindings for selected year PredefinedGroups=Predefined groups @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Account removed from group SaleLocal=Local sale SaleExport=Export sale SaleEEC=Sale in EEC +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=Range of accounting account diff --git a/htdocs/langs/bs_BA/admin.lang b/htdocs/langs/bs_BA/admin.lang index e8725dacf6f..0346cefe6a8 100644 --- a/htdocs/langs/bs_BA/admin.lang +++ b/htdocs/langs/bs_BA/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Web server user/group NoSessionFound=Your PHP configuration seems to not allow listing of active sessions. The directory used to save sessions (%s) may be protected (for example by OS permissions or by PHP directive open_basedir). DBStoringCharset=Database charset to store data DBSortingCharset=Database charset to sort data +HostCharset=Host charset ClientCharset=Client charset ClientSortingCharset=Client collation WarningModuleNotActive=Modul %s mora biti omogućen @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the NoMaxSizeByPHPLimit=Note: No limit is set in your PHP configuration MaxSizeForUploadedFiles=Maximum size for uploaded files (0 to disallow any upload) UseCaptchaCode=Use graphical code (CAPTCHA) on login page -AntiVirusCommand= Full path to antivirus command -AntiVirusCommandExample= Example for ClamWin: c:\\Progra~1\\ClamWin\\bin\\clamscan.exe
    Example for ClamAv: /usr/bin/clamscan +AntiVirusCommand=Full path to antivirus command +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= Više parametara preko komandne linije -AntiVirusParamExample= Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=Postavke modula za računovodstvo UserSetup=Postavke upravljanja korisnika MultiCurrencySetup=Multi-currency setup @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Feature disabled in demo FeatureAvailableOnlyOnStable=Feature only available on official stable versions BoxesDesc=Widgets are components showing some information that you can add to personalize some pages. You can choose between showing the widget or not by selecting target page and clicking 'Activate', or by clicking the trashcan to disable it. OnlyActiveElementsAreShown=Only elements from enabled modules are shown. -ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button (at end of module line) to enable/disable a module/application. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. ModulesMarketPlaceDesc=You can find more modules to download on external websites on the Internet... ModulesDeployDesc=If permissions on your file system allow it, you can use this tool to deploy an external module. The module will then be visible on the tab %s. ModulesMarketPlaces=Find external app/modules @@ -212,6 +213,7 @@ CompatibleUpTo=Compatible with version %s NotCompatible=This module does not seem compatible with your Dolibarr %s (Min %s - Max %s). CompatibleAfterUpdate=This module requires an update to your Dolibarr %s (Min %s - Max %s). SeeInMarkerPlace=See in Market place +SeeSetupOfModule=See setup of module %s Updated=Updated Nouveauté=Novelty AchatTelechargement=Buy / Download @@ -221,6 +223,7 @@ DoliPartnersDesc=List of companies providing custom-developed modules or feature WebSiteDesc=External websites for more add-on (non-core) modules... DevelopYourModuleDesc=Some solutions to develop your own module... URL=Link +RelativeURL=Relative URL BoxesAvailable=Widgets available BoxesActivated=Widgets activated ActivateOn=Activate on @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Checkboxes ExtrafieldCheckBoxFromList=Checkboxes from table ExtrafieldLink=Link to an object ComputedFormula=Computed field -ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Store computed field ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! ExtrafieldParamHelpPassword=Leaving this field blank means this value will be stored without encryption (field must be only hidden with star on screen).
    Set 'auto' to use the default encryption rule to save password into database (then value read will be the hash only, no way to retrieve original value) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Keep empty to use default value DefaultLink=Default link SetAsDefault=Set as default ValueOverwrittenByUserSetup=Upozorenje, ova vrijednost se može prebrisati posebnim postavkama korisnika (svaki korisnik može postaviti svoj clicktodial URL) -ExternalModule=Eksterni moduli - Instalirani u direktorij %s +ExternalModule=External module +InstalledInto=Installed into directory %s BarcodeInitForthird-parties=Mass barcode init for third-parties BarcodeInitForProductsOrServices=Mass barcode init or reset for products or services CurrentlyNWithoutBarCode=Currently, you have %s record on %s %s without barcode defined. @@ -947,7 +951,7 @@ DictionaryCanton=States/Provinces DictionaryRegion=Regions DictionaryCountry=Countries DictionaryCurrency=Currencies -DictionaryCivility=Title of civility +DictionaryCivility=Honorific titles DictionaryActions=Types of agenda events DictionarySocialContributions=Types of social or fiscal taxes DictionaryVAT=VAT Rates or Sales Tax Rates @@ -988,6 +992,7 @@ VATIsNotUsedDesc=By default the proposed Sales tax is 0 which can be used for ca VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=Stopa LocalTax1IsNotUsed=Do not use second tax LocalTax1IsUsedDesc=Use a second type of tax (other than first one) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices LocalTax2IsNotUsedDescES=By default the proposed IRPF is 0. End of rule. LocalTax2IsUsedExampleES=In Spain, freelancers and independent professionals who provide services and companies who have chosen the tax system of modules. LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=Reports on local taxes CalcLocaltax1=Sales - Purchases CalcLocaltax1Desc=Local Taxes reports are calculated with the difference between localtaxes sales and localtaxes purchases @@ -1018,6 +1026,7 @@ CalcLocaltax2=Purchases CalcLocaltax2Desc=Local Taxes reports are the total of localtaxes purchases CalcLocaltax3=Sales CalcLocaltax3Desc=Local Taxes reports are the total of localtaxes sales +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=Label used by default if no translation can be found for code LabelOnDocuments=Label on documents LabelOrTranslationKey=Label or translation key @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Expense report to approve Delays_MAIN_DELAY_HOLIDAYS=Leave requests 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. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. SetupDescription5=Other Setup menu entries manage optional parameters. LogEvents=Security audit events Audit=Audit @@ -1128,7 +1137,7 @@ LogEventDesc=Enable logging for specific security events. Administrators the log AreaForAdminOnly=Setup parameters can be set by administrator users only. SystemInfoDesc=System information is miscellaneous technical information you get in read only mode and visible for administrators only. SystemAreaForAdminOnly=This area is available to administrator users only. Dolibarr user permissions cannot change this restriction. -CompanyFundationDesc=Edit the information of the company/entity. Click on "%s" button at the bottom of the page. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. AccountantFileNumber=Accountant code DisplayDesc=Parameters affecting the look and behaviour of Dolibarr can be modified here. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Rules to generate and validate passwords DisableForgetPasswordLinkOnLogonPage=Do not show the "Password Forgotten" link on the Login page UsersSetup=Users module setup UserMailRequired=Email required to create a new user +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### HRMSetup=HRM module setup ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Invoice documents models BillsPDFModulesAccordindToInvoiceType=Invoice documents models according to invoice type PaymentsPDFModules=Payment documents models ForceInvoiceDate=Force invoice date to validation date -SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined for invoice +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice SuggestPaymentByRIBOnAccount=Suggest payment by withdrawal on account SuggestPaymentByChequeToAddress=Suggest payment by check to FreeLegalTextOnInvoices=Free text on invoices @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Vendor payments setup PropalSetup=Commercial proposals module setup ProposalsNumberingModules=Commercial proposal numbering models ProposalsPDFModules=Commercial proposal documents models -SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined for proposal +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal FreeLegalTextOnProposal=Free text on commercial proposals WatermarkOnDraftProposal=Vodeni žig na nacrte komercijalnih prijedloga (ništa, ako je prazno) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal @@ -1322,6 +1334,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 ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=Sales Orders management setup OrdersNumberingModules=Orders numbering models OrdersModelModule=Order documents models @@ -1720,7 +1733,7 @@ MultiCompanySetup=Multi-company module setup ##### Suppliers ##### SuppliersSetup=Vendor module setup SuppliersCommandModel=Complete template of Purchase Order -SuppliersCommandModelMuscadet=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) SuppliersInvoiceModel=Complete template of Vendor Invoice SuppliersInvoiceNumberingModel=Vendor invoices numbering models IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Hide images in Top menu LeftMenuBackgroundColor=Background color for Left menu BackgroundTableTitleColor=Background color for Table title line BackgroundTableTitleTextColor=Text color for Table title line +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Background color for odd table lines BackgroundTableLineEvenColor=Background color for even table lines MinimumNoticePeriod=Minimum notice period (Your leave request must be done before this delay) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Dolibarr Reference not found in Message ID FormatZip=Zip MainMenuCode=Menu entry code (mainmenu) ECMAutoTree=Show automatic ECM tree -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. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Opening hours OpeningHoursDesc=Enter here the regular opening hours of your company. ResourceSetup=Configuration of Resource module @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramatical ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export +ImportSetup=Setup of module Import InstanceUniqueID=Unique ID of the instance SmallerThan=Smaller than LargerThan=Larger than @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled EmailTemplate=Template for email EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/bs_BA/bills.lang b/htdocs/langs/bs_BA/bills.lang index ad9be7f229a..919875b0135 100644 --- a/htdocs/langs/bs_BA/bills.lang +++ b/htdocs/langs/bs_BA/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Vendors invoices SupplierBill=Vendor invoice SupplierBills=fakture dobavljača Payment=Uplata -PaymentBack=Povrat uplate -CustomerInvoicePaymentBack=Povrat uplate +PaymentBack=Refund +CustomerInvoicePaymentBack=Refund Payments=Uplate PaymentsBack=Refunds paymentInInvoiceCurrency=u valuti faktura PaidBack=Uplaćeno nazad DeletePayment=Obriši uplatu ConfirmDeletePayment=Da li ste sigurni da želite obrisati ovu uplatu? -ConfirmConvertToReduc=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. -ConfirmConvertToReducSupplier=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. SupplierPayments=Vendor payments ReceivedPayments=Primljene uplate @@ -209,17 +209,13 @@ NumberOfBillsByMonth=No. of invoices per month AmountOfBills=Iznos faktura AmountOfBillsHT=Amount of invoices (net of tax) AmountOfBillsByMonthHT=Iznos faktura po mjesecu (bez PDV-a) -ShowSocialContribution=Pokaži doprinose i poreze -ShowBill=Prikaži fakturu -ShowInvoice=Prikaži fakturu -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 +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=To pay on %s toPayOn=to pay on %s RetainedWarranty=Retained Warranty @@ -230,7 +226,6 @@ 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 AlreadyPaidNoCreditNotesNoDeposits=Već plaćeno (bez KO i avansa) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Generated from template invoice %s WarningInvoiceDateInFuture=Warning, the invoice date is higher than current date WarningInvoiceDateTooFarInFuture=Warning, the invoice date is too far from current date ViewAvailableGlobalDiscounts=View available discounts +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Status PaymentConditionShortRECEP=Rok po preuzimanju @@ -509,7 +505,7 @@ ToMakePayment=Platiti ToMakePaymentBack=Povrat uplate ListOfYourUnpaidInvoices=Lista neplaćenih faktura NoteListOfYourUnpaidInvoices=Note: This list contains only invoices for third parties you are linked to as a sale representative. -RevenueStamp=Carinski pečat +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party YouMustCreateStandardInvoiceFirstDesc=You have to create a standard invoice first and convert it to "template" to create a new template invoice @@ -575,3 +571,4 @@ AutoFillDateTo=Set end date for service line with next invoice date AutoFillDateToShort=Set end date MaxNumberOfGenerationReached=Max number of gen. reached BILL_DELETEInDolibarr=Faktura obrisana +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/bs_BA/blockedlog.lang b/htdocs/langs/bs_BA/blockedlog.lang index cff8f7d657b..5afae6e9e53 100644 --- a/htdocs/langs/bs_BA/blockedlog.lang +++ b/htdocs/langs/bs_BA/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Unalterable logs ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) DownloadBlockChain=Download fingerprints -KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this re after it was recorded, or has erased the previous archived record (check that line with previous # exists). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. AddedByAuthority=Stored into remote authority diff --git a/htdocs/langs/bs_BA/cashdesk.lang b/htdocs/langs/bs_BA/cashdesk.lang index e97f4077a5c..30796188873 100644 --- a/htdocs/langs/bs_BA/cashdesk.lang +++ b/htdocs/langs/bs_BA/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Dodaj ovaj proizvod RestartSelling=Nazad na prodaju SellFinished=Sale complete PrintTicket=Isprintaj račun +SendTicket=Send ticket NoProductFound=Nema pronađenih proizvoda ProductFound=proizvod pronađen NoArticle=Nema proizvoda @@ -48,6 +49,7 @@ Footer=Footer AmountAtEndOfPeriod=Amount at end of period (day, month or year) TheoricalAmount=Theorical amount RealAmount=Real amount +CashFence=Cash fence CashFenceDone=Cash fence done for the period NbOfInvoices=Broj faktura Paymentnumpad=Type of Pad to enter payment @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS needs product categories to work OrderNotes=Order Notes CashDeskBankAccountFor=Default account to use for payments in NoPaimementModesDefined=No paiment mode defined in TakePOS configuration -TicketVatGrouped=Group VAT by rate in tickets -AutoPrintTickets=Automatically print tickets +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? @@ -87,7 +90,19 @@ HeadBar=Head Bar SortProductField=Field for sorting products Browser=Browser BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/bs_BA/companies.lang b/htdocs/langs/bs_BA/companies.lang index 38ad3fdea51..af7c0a6cc82 100644 --- a/htdocs/langs/bs_BA/companies.lang +++ b/htdocs/langs/bs_BA/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted=Kompanija"%s" obrisana iz baze podataka ListOfContacts=Lista kontakta/adresa ListOfContactsAddresses=Lista kontakta/adresa ListOfThirdParties=List of Third Parties -ShowCompany=Show Third Party ShowContact=Prikaži kontakt ContactsAllShort=Svi (bez filtera) ContactType=Tip kontakta @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=Ime predstavnika prodaje SaleRepresentativeLastname=Prezime predstavnika prodaje ErrorThirdpartiesMerge=Nastala je greška pri brisanju treće strane. Molimo vas da provjerite zapisnik. Izmjene su vraćene. NewCustomerSupplierCodeProposed=Customer or Vendor code already used, a new code is suggested +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Payment Type - Customer PaymentTermsCustomer=Payment Terms - Customer diff --git a/htdocs/langs/bs_BA/compta.lang b/htdocs/langs/bs_BA/compta.lang index 247a97b2fb1..488ffaee0e9 100644 --- a/htdocs/langs/bs_BA/compta.lang +++ b/htdocs/langs/bs_BA/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=See %sanalysis of payments%s for a calculation on act SeeReportInDueDebtMode=See %sanalysis of invoices%s for a calculation based on known recorded invoices even if they are not yet accounted in Ledger. SeeReportInBookkeepingMode=See %sBookeeping report%s for a calculation on Bookkeeping Ledger table RulesAmountWithTaxIncluded=- Amounts shown are with all taxes included -RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the validation date of invoices and VAT and on the due date for expenses. For salaries defined with Salary module, the value date of payment is used. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- It includes the real payments made on invoices, expenses, VAT and salaries.
    - It is based on the payment dates of the invoices, expenses, VAT and salaries. The donation date for donation. -RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the validation date of these invoices.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    RulesCATotalSaleJournal=It includes all credit lines from the Sale journal. RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Turnover invoiced by sale tax rate TurnoverCollectedbyVatrate=Turnover collected by sale tax rate PurchasebyVatrate=Purchase by sale tax rate LabelToShow=Short label +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/bs_BA/donations.lang b/htdocs/langs/bs_BA/donations.lang index 07437d96091..cd5f4c3093a 100644 --- a/htdocs/langs/bs_BA/donations.lang +++ b/htdocs/langs/bs_BA/donations.lang @@ -7,7 +7,6 @@ AddDonation=Create a donation NewDonation=Nova donacija DeleteADonation=Delete a donation ConfirmDeleteADonation=Are you sure you want to delete this donation? -ShowDonation=Prikaži donaciju PublicDonation=Javne donacije DonationsArea=Područje za donacije DonationStatusPromiseNotValidated=Nacrt obećanja @@ -17,6 +16,7 @@ DonationStatusPromiseNotValidatedShort=Nacrt DonationStatusPromiseValidatedShort=Potvrđena donacija DonationStatusPaidShort=Primljena donacija DonationTitle=Priznanica za donaciju +DonationDate=Donation date DonationDatePayment=Datum uplate ValidPromess=Potvrdi obećanje DonationReceipt=Priznanica za donaciju diff --git a/htdocs/langs/bs_BA/errors.lang b/htdocs/langs/bs_BA/errors.lang index 4cb8dc104bf..5ab22b34cc1 100644 --- a/htdocs/langs/bs_BA/errors.lang +++ b/htdocs/langs/bs_BA/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=File not received completely by server. ErrorNoTmpDir=Temporary directy %s does not exists. ErrorUploadBlockedByAddon=Upload blocked by a PHP/Apache plugin. ErrorFileSizeTooLarge=File size is too large. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Size too long for int type (%s digits maximum) ErrorSizeTooLongForVarcharType=Size too long for string type (%s chars maximum) ErrorNoValueForSelectType=Please fill value for select list @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # 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/bs_BA/install.lang b/htdocs/langs/bs_BA/install.lang index df3d27d0459..204e5360006 100644 --- a/htdocs/langs/bs_BA/install.lang +++ b/htdocs/langs/bs_BA/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=This PHP supports Curl. PHPSupportCalendar=This PHP supports calendars extensions. PHPSupportUTF8=This PHP supports UTF8 functions. PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=This PHP supports %s functions. PHPMemoryOK=Vaša maksimalna memorija za PHP sesiju je postavljena na %s. To bi trebalo biti dovoljno. 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. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=Your PHP installation does not support Curl. ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. 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. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. ErrorDirDoesNotExists=Direktorij %s ne postoji. ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=The application tried to self-upgrade, but the in 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. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/bs_BA/interventions.lang b/htdocs/langs/bs_BA/interventions.lang index 928f7296836..fef8e77ea6b 100644 --- a/htdocs/langs/bs_BA/interventions.lang +++ b/htdocs/langs/bs_BA/interventions.lang @@ -41,9 +41,7 @@ InterventionsArea=Interventions area DraftFichinter=Draft interventions LastModifiedInterventions=Posljednjih %s izmijenjenih intervencija FichinterToProcess=Interventions to process -##### Types de contacts ##### TypeContact_fichinter_external_CUSTOMER=Kontakt kupca za kontrolu -# Modele numérotation PrintProductsOnFichinter=Print also lines of type "product" (not only services) on intervention card PrintProductsOnFichinterDetails=interventions generated from orders UseServicesDurationOnFichinter=Use services duration for interventions generated from orders @@ -53,14 +51,16 @@ InterventionStatistics=Statistics of interventions NbOfinterventions=No. of intervention cards NumberOfInterventionsByMonth=No. of intervention cards by month (date of validation) AmountOfInteventionNotIncludedByDefault=Amount of intervention is not included by default into profit (in most cases, timesheets are used to count time spent). Add option PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT to 1 into home-setup-other to include them. -##### Exports ##### InterId=Intervention id InterRef=Intervention ref. InterDateCreation=Date creation intervention InterDuration=Duration intervention InterStatus=Status intervention InterNote=Note intervention +InterLine=Line of intervention InterLineId=Line id intervention InterLineDate=Line date intervention InterLineDuration=Line duration intervention InterLineDesc=Line description intervention +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/bs_BA/link.lang b/htdocs/langs/bs_BA/link.lang index fdcf07aeff4..1ffcd41a18b 100644 --- a/htdocs/langs/bs_BA/link.lang +++ b/htdocs/langs/bs_BA/link.lang @@ -8,3 +8,4 @@ LinkRemoved=The link %s has been removed ErrorFailedToDeleteLink= Failed to remove link '%s' ErrorFailedToUpdateLink= Failed to update link '%s' URLToLink=URL to link +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/bs_BA/mails.lang b/htdocs/langs/bs_BA/mails.lang index 386a1f9a367..3b41f698ef6 100644 --- a/htdocs/langs/bs_BA/mails.lang +++ b/htdocs/langs/bs_BA/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=No contact/address with a category found NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found OutGoingEmailSetup=Outgoing email setup InGoingEmailSetup=Incoming email setup -OutGoingEmailSetupForEmailing=Outgoing email setup (for mass emailing) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Default outgoing email setup Information=Inromacije ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/bs_BA/main.lang b/htdocs/langs/bs_BA/main.lang index 8e35d27d977..a025ce378fb 100644 --- a/htdocs/langs/bs_BA/main.lang +++ b/htdocs/langs/bs_BA/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Save and stay SaveAndNew=Save and new TestConnection=Test konekcije ToClone=Kloniraj +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Choose data you want to clone: NoCloneOptionsSpecified=Nije definiran podatak za kloniranje. Of=od @@ -829,6 +830,8 @@ Gender=Spol Genderman=Muškarac Genderwoman=Žena ViewList=Lista +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Obavezno Hello=Zdravo GoodBye=Zbogom @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Select your graph options to build a graph Measures=Measures XAxis=X-Axis YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/bs_BA/modulebuilder.lang b/htdocs/langs/bs_BA/modulebuilder.lang index b6546cf72ba..f77b9464f24 100644 --- a/htdocs/langs/bs_BA/modulebuilder.lang +++ b/htdocs/langs/bs_BA/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=List of dictionaries entries ListOfPermissionsDefined=List of defined permissions SeeExamples=See examples here EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) -VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update). Using a negative value means field is not shown by default on list but can be selected for viewing). It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty DisplayOnPdf=Display on PDF IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) diff --git a/htdocs/langs/bs_BA/other.lang b/htdocs/langs/bs_BA/other.lang index 91eec967638..0ecb34ad42f 100644 --- a/htdocs/langs/bs_BA/other.lang +++ b/htdocs/langs/bs_BA/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Sales order validated Notify_ORDER_SENTBYMAIL=Sales order sent by mail Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=URL of page WEBSITE_TITLE=Titula WEBSITE_DESCRIPTION=Opis WEBSITE_IMAGE=Image -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Keywords LinesToImport=Linija za uvoz diff --git a/htdocs/langs/bs_BA/products.lang b/htdocs/langs/bs_BA/products.lang index a945967e610..afa6c414b77 100644 --- a/htdocs/langs/bs_BA/products.lang +++ b/htdocs/langs/bs_BA/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL MassBarcodeInit=Mass barcode init MassBarcodeInitDesc=This page can be used to initialize a barcode on objects that does not have barcode defined. Check before that setup of module barcode is complete. ProductAccountancyBuyCode=Accounting code (purchase) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Accounting code (sale) ProductAccountancySellIntraCode=Accounting code (sale intra-Community) ProductAccountancySellExportCode=Accounting code (sale export) @@ -165,7 +167,7 @@ SuppliersPrices=Vendor prices SuppliersPricesOfProductsOrServices=Vendor prices (of products or services) CustomCode=Customs / Commodity / HS code CountryOrigin=Origin country -Nature=Nature of produt (material/finished) +Nature=Nature of product (material/finished) ShortLabel=Short label Unit=Jedinica p=u. diff --git a/htdocs/langs/bs_BA/projects.lang b/htdocs/langs/bs_BA/projects.lang index 48074f53837..4e6387a89ab 100644 --- a/htdocs/langs/bs_BA/projects.lang +++ b/htdocs/langs/bs_BA/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=which I'm linked to project Time=Vrijeme ListOfTasks=List of tasks GoToListOfTimeConsumed=Go to list of time consumed -GoToListOfTasks=Show as list -GoToGanttView=show as Gantt GanttView=Gantt View ListProposalsAssociatedProject=List of the commercial proposals related to the project ListOrdersAssociatedProject=List of sales orders related to the project @@ -188,7 +186,7 @@ PlannedWorkload=Planned workload PlannedWorkloadShort=Workload ProjectReferers=Povezane stavke ProjectMustBeValidatedFirst=Project must be validated first -FirstAddRessourceToAllocateTime=Assign a user resource to task to allocate time +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=Input per day InputPerWeek=Input per week InputPerMonth=Input per month @@ -240,6 +238,7 @@ LatestModifiedProjects=Latest %s modified projects OtherFilteredTasks=Other filtered tasks NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=Allow user comments on tasks AllowCommentOnProject=Allow user comments on projects @@ -256,7 +255,7 @@ ServiceToUseOnLines=Service to use on lines InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. ProjectFollowOpportunity=Follow opportunity -ProjectFollowTasks=Follow tasks +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Usage: Opportunity UsageTasks=Usage: Tasks @@ -265,3 +264,4 @@ InvoiceToUse=Draft invoice to use NewInvoice=Nova faktura OneLinePerTask=One line per task OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/bs_BA/receiptprinter.lang b/htdocs/langs/bs_BA/receiptprinter.lang index 22f1e96b300..c8fa83f8e37 100644 --- a/htdocs/langs/bs_BA/receiptprinter.lang +++ b/htdocs/langs/bs_BA/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Dummy Printer CONNECTOR_NETWORK_PRINT=Network Printer CONNECTOR_FILE_PRINT=Local Printer CONNECTOR_WINDOWS_PRINT=Local Windows Printer +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Fake Printer for test, does nothing CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Default Profile PROFILE_SIMPLE=Simple Profile PROFILE_EPOSTEP=Epos Tep Profile @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Invoice month in letters DOL_VALUE_MONTH=Invoice month DOL_VALUE_DAY=Invoice day DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Referenca fakture +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=Kapital +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/bs_BA/stripe.lang b/htdocs/langs/bs_BA/stripe.lang index 3cbffcb605f..a1d7a15aa8b 100644 --- a/htdocs/langs/bs_BA/stripe.lang +++ b/htdocs/langs/bs_BA/stripe.lang @@ -32,6 +32,7 @@ VendorName=Name of vendor CSSUrlForPaymentForm=CSS style sheet url for payment form NewStripePaymentReceived=New Stripe payment received NewStripePaymentFailed=New Stripe payment tried but failed +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Secret test key STRIPE_TEST_PUBLISHABLE_KEY=Publishable test key STRIPE_TEST_WEBHOOK_KEY=Webhook test key @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mo 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... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authenticatin rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/bs_BA/users.lang b/htdocs/langs/bs_BA/users.lang index 5a9bc1af868..06906541007 100644 --- a/htdocs/langs/bs_BA/users.lang +++ b/htdocs/langs/bs_BA/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Users and their properties DomainUser=Korisnik domene %s Reactivate=Reaktivirati CreateInternalUserDesc=This form allows you to create an internal user in your company/organization. To create an external user (customer, vendor etc. ..), use the button 'Create Dolibarr User' from that third-party's contact card. -InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other.

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=Dozvola je prenesena od jedne korisničke grupe. Inherited=Preneseno UserWillBeInternalUser=Kreirani korisnik će biti interni korisnik (jer nije povezan sa nekim subjektom) @@ -110,3 +110,8 @@ UserLogged=Korisnik prijavljen DateEmployment=Employment Start Date DateEmploymentEnd=Employment End Date CantDisableYourself=You can't disable your own user record +ForceUserExpenseValidator=Force expense report validator +ForceUserHolidayValidator=Force leave request validator +ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/bs_BA/website.lang b/htdocs/langs/bs_BA/website.lang index 0bb2c7d5870..a640f72129e 100644 --- a/htdocs/langs/bs_BA/website.lang +++ b/htdocs/langs/bs_BA/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=View page in new tab SetAsHomePage=Set as Home page RealURL=Real URL ViewWebsiteInProduction=View web site using home URLs -SetHereVirtualHost=Use with Apache/NGinx/...
    If you can create, on your web server (Apache, Nginx, ...), a dedicated Virtual Host with PHP enabled and a Root directory on
    %s
    then set the name of the virtual host you have created in the properties of web site, so the preview can be done also using this dedicated web server access instead of the internal Dolibarr server. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS=Use with PHP embedded server
    On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running
    php -S 0.0.0.0:8080 -t %s YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org CheckVirtualHostPerms=Check also that virtual host has permission %s on files into
    %s @@ -56,7 +57,7 @@ NoPageYet=No pages yet YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template SyntaxHelp=Help on specific syntax tips YouCanEditHtmlSourceckeditor=You can edit HTML source code using the "Source" button in editor. -YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Clone page/container CloneSite=Clone site SiteAdded=Website added @@ -76,7 +77,7 @@ BlogPost=Blog post WebsiteAccount=Website account WebsiteAccounts=Website accounts AddWebsiteAccount=Create web site account -BackToListOfThirdParty=Back to list for Third Party +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Disable website first MyContainerTitle=My web site title AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Sorry, this website is currently off line. Please 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 -OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that edits of HTML source will be possible when page content has been initialized by grabbing it from an external page ("Online" editor will NOT be available) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Only edition of HTML source is possible when content was grabbed from an external site GrabImagesInto=Grab also images found into css and page. ImagesShouldBeSavedInto=Images should be saved into directory @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 ch MainLanguage=Main language OtherLanguages=Other languages UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/bs_BA/zapier.lang b/htdocs/langs/bs_BA/zapier.lang new file mode 100644 index 00000000000..6d6eda71313 --- /dev/null +++ b/htdocs/langs/bs_BA/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr module + +# +# Admin page +# +ZapierForDolibarrSetup = Setup of Zapier for Dolibarr diff --git a/htdocs/langs/ca_ES/accountancy.lang b/htdocs/langs/ca_ES/accountancy.lang index 911c0fd32e5..744d72ed9b1 100644 --- a/htdocs/langs/ca_ES/accountancy.lang +++ b/htdocs/langs/ca_ES/accountancy.lang @@ -121,6 +121,7 @@ InvoiceLinesDone=Línies de factura comptabilitzades ExpenseReportLines=Línies d'informes de despeses a comptabilitzar ExpenseReportLinesDone=Línies comptabilitzades d'informes de despeses IntoAccount=Línia comptabilitzada amb el compte comptable +TotalForAccount=Total for accounting account Ventilate=Comptabilitza @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Compte comptable per registrar les donacions ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Compte comptable per a registrar les donacions ACCOUNTING_PRODUCT_BUY_ACCOUNT=Compte comptable per defecte per als productes comprats (utilitzat si no es defineix en el producte) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_ACCOUNT=Compte comptable per defecte pels productes venuts (s'utilitza si no es defineix en el full de producte) ACCOUNTING_PRODUCT_SOLD_INTRA_ACCOUNT=Compte comptable per defecte per als productes venuts a la CEE (utilitzat si no es defineix en el producte) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Compte comptable per defecte per als productes venuts d'exportació (utilitzat si no es defineix en el producte) + ACCOUNTING_SERVICE_BUY_ACCOUNT=Compte comptable per defecte per als serveis adquirits (s'utilitza si no es defineix en el full de servei) +ACCOUNTING_SERVICE_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_ACCOUNT=Compte comptable per defecte per als serveis venuts (s'utilitza si no es defineix en el full de servei) ACCOUNTING_SERVICE_SOLD_INTRA_ACCOUNT=Compte comptable per defecte per als serveis venuts a la CEE (utilitzat si no es defineix en el servei) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Compte comptable per defecte per als serveis venuts i exportats fora de la CEE (utilitzat si no es defineix en el servei) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Tercer desconegut ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Compte de tercers no definit o tercer desconegut. Error de bloqueig. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Compte de tercers desconegut i compte d'espera no definit. Error de bloqueig PaymentsNotLinkedToProduct=Pagament no vinculat a cap producte / servei +OpeningBalance=Opening balance ShowOpeningBalance=Mostra el saldo d'obertura HideOpeningBalance=Amagueu el balanç d'obertura +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Grup de compte PcgtypeDesc=S'utilitzen grups de comptes com a criteris predefinits de "filtre" i "agrupació" per a alguns informes de comptabilitat. Per exemple, "Ingressos" o "DESPESES" s'utilitzen com a grups per a comptes de comptabilitat de productes per crear l'informe de despeses / ingressos. +Reconcilable=Reconcilable + TotalVente=Total turnover before tax TotalMarge=Marge total de vendes @@ -307,11 +317,13 @@ Modelcsv_quadratus=Exporta a Quadratus QuadraCompta Modelcsv_ebp=Exporta a EBP Modelcsv_cogilog=Exporta a Cogilog Modelcsv_agiris=Exporta a Agiris -Modelcsv_LDCompta=Exporta per LD Compta (v9 i superior) (Prova) +Modelcsv_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Exporta per a OpenConcerto (Test) Modelcsv_configurable=Exporta CSV configurable Modelcsv_FEC=Exporta FEC Modelcsv_Sage50_Swiss=Exportació per Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Id pla comptable ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=En mode vendes OptionModeProductSellIntra=Les vendes de mode exportades a la CEE OptionModeProductSellExport=Les vendes de mode exportades a altres països OptionModeProductBuy=En mode compres +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries OptionModeProductSellDesc=Mostra tots els productes amb compte comptable per a les vendes. OptionModeProductSellIntraDesc=Mostra tots els productes amb compte comptable per a les vendes en CEE. OptionModeProductSellExportDesc=Mostra tots els productes amb compte comptable per a altres vendes a l’estranger. OptionModeProductBuyDesc=Mostra tots els productes amb compte comptable per a les compres. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=Eliminar el codi comptable de les línies que no existeixen als gràfics de compte CleanHistory=Reinicia tota la comptabilització per l'any seleccionat PredefinedGroups=Grups predefinits @@ -338,6 +354,8 @@ AccountRemovedFromGroup=S'ha eliminat el compte del grup SaleLocal=Venda local SaleExport=Venda d’exportació SaleEEC=Venda en CEE +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=Rang de compte comptable diff --git a/htdocs/langs/ca_ES/admin.lang b/htdocs/langs/ca_ES/admin.lang index b8125edbf2e..3cb95c70a42 100644 --- a/htdocs/langs/ca_ES/admin.lang +++ b/htdocs/langs/ca_ES/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Servidor web usuari/grup NoSessionFound=Sembla que el seu PHP no pot llistar les sessions actives. El directori de salvaguardat de sessions (%s) pot estar protegit (per exemple, pels permisos del sistema operatiu o per la directiva open_basedir del seu PHP). DBStoringCharset=Codificació base de dades per emmagatzematge de dades DBSortingCharset=Codificació base de dades per classificar les dades +HostCharset=Host charset ClientCharset=Joc de caràcters del client ClientSortingCharset="Collation" del client WarningModuleNotActive=Mòdul %s no actiu @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Observació: El seu PHP limita la mida a %s %s de NoMaxSizeByPHPLimit=Cap limitació interna en el seu servidor PHP MaxSizeForUploadedFiles=Tamany màxim dels documents a pujar (0 per prohibir la pujada) UseCaptchaCode=Utilització de codi gràfic (CAPTCHA) en el login -AntiVirusCommand= Ruta completa cap al comandament antivirus -AntiVirusCommandExample= Exemple per a ClamWin: c:\\Program Files (x86)\\ClamWin\\bin\\clamscan.exe
    Exemple per a ClamAv: /usr/bin/clamscan +AntiVirusCommand=Ruta completa cap al comandament antivirus +AntiVirusCommandExample=Exemple per al dimoni ClamAv (requerix clamav-daemon): /usr/bin/clamdscan
    Exemple per a ClamWin (molt molt lent): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= Paràmetres complementaris en la línia de comandes -AntiVirusParamExample= Exemple per a ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" +AntiVirusParamExample=Exemple per al dimoni de ClamAv: --fdpass
    Exemple per a ClamWin: --database = "C: \\ Program Files (x86) \\ ClamWin \\ lib" ComptaSetup=Configuració del mòdul Comptabilitat UserSetup=Configuració de gestió d'usuaris MultiCurrencySetup=Configuració multi-divisa @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Opció deshabilitada en demo FeatureAvailableOnlyOnStable=Funcionalitat disponible únicament en versions estables oficials BoxesDesc=Els panells són components que mostren algunes dades que poden afegir-se per personalitzar algunes pàgines. Pots triar entre mostrar el panell o no seleccionant la pàgina de destí i fent clic a 'Activar', o fent clic en la paperera per desactivar. OnlyActiveElementsAreShown=Només els elements de mòduls activats són mostrats -ModulesDesc=Els mòduls/aplicacions determinen quines funcions estan disponibles al programa. Alguns mòduls requereixen permisos que es concedeixen als usuaris després d'activar el mòdul. Feu clic al botó d'encès/apagat (al final de la línia del mòdul) per activar/desactivar un mòdul/aplicació. +ModulesDesc=Els mòduls / aplicacions determinen quines funcions estan disponibles al programari. Alguns mòduls requereixen concedir permisos als usuaris després d'activar el mòdul. Feu clic al botó on / off %s de cada mòdul per habilitar o desactivar un mòdul / aplicació. ModulesMarketPlaceDesc=Pots trobar més mòduls per descarregar en pàgines web externes per internet... ModulesDeployDesc=Si els permisos en el seu sistema d'arxius ho permiteixen, pot utilitzar aquesta ferramente per instal·lar un mòdul extern. El mòdul estarà aleshores visible en la pestanya %s ModulesMarketPlaces=Trobar mòduls/complements externs @@ -212,6 +213,7 @@ CompatibleUpTo=Compatible amb la versió %s NotCompatible=Aquest mòdul no sembla compatible amb el vostre Dolibarr %s (Mín %s - Màx %s). CompatibleAfterUpdate=Aquest mòdul requereix actualitzar el vostre Dolibarr %s (Mín %s - Màx %s). SeeInMarkerPlace=Veure a la tenda d'apps +SeeSetupOfModule=Vegi la configuració del mòdul %s Updated=Actualitzat Nouveauté=Novetat AchatTelechargement=Comprar / Descarregar @@ -221,6 +223,7 @@ DoliPartnersDesc=Llista d'empreses que proporcionen desenvolupament a mida de m WebSiteDesc=Llocs web de referència per trobar més mòduls (no core)... DevelopYourModuleDesc=Algunes solucions per desenvolupar el vostre propi mòdul... URL=URL +RelativeURL=URL relativa BoxesAvailable=Panells disponibles BoxesActivated=Panells activats ActivateOn=Activar a @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Caselles de verificació ExtrafieldCheckBoxFromList=Caselles de verificació des de taula ExtrafieldLink=Enllaç a un objecte ComputedFormula=Camp calculat -ComputedFormulaDesc=Podeu introduir aquí una fórmula usant altres propietats d'objecte o qualsevol codi PHP per obtenir un valor calculat dinàmic. Podeu utilitzar qualsevol fórmula compatible amb PHP, inclòs l'operador "?" i els següents objectes globals: $db, $conf, $langs, $mysoc, $user, $object.
    AVÍS: Només algunes propietats de $object poden estar disponibles. Si necessiteu una propietat que no s'hagi carregat, tan sols busqueu l'objecte en la formula com en el segon exemple.
    L'ús d'un camp calculat significa que no podeu introduir cap valor des de la interfície. A més, si hi ha un error de sintaxi, la fórmula potser no torni res.

    Exemple de fórmula:
    $object->id <10? round($object->id/2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Exemple de recarrega d'object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id : ($obj->rowid ? $obj->rowid : $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5 : '-1'

    Un altre exemple de fórmula per forçar la càrrega de l'objecte i el seu objecte principal:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref : 'Parent project not found' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Emmagatzemar el camp computat ComputedpersistentDesc=Els camps addicionals computats s’emmagatzemaran a la base de dades, però, el valor només es tornarà a calcular quan l’objecte d’aquest camp s’ha canviat. Si el camp calculat depèn d'altres objectes o dades globals, aquest valor podria estar equivocat !! ExtrafieldParamHelpPassword=Mantenir aquest camp buit significa que el valor s'emmagatzema sense xifrar (el camp només ha d'estar amagat amb una estrella sobre la pantalla).
    Establiu aquí el valor 'auto' per utilitzar la regla de xifrat per defecte per guardar la contrasenya a la base de dades (el valor llegit serà només el "hash", no hi haurà cap manera de recuperar el valor original) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Deixa-ho buit per usar el valor per defecte DefaultLink=Enllaç per defecte SetAsDefault=Indica'l com Defecte ValueOverwrittenByUserSetup=Atenció: Aquest valor pot ser sobreescrit per un valor específic de la configuració de l'usuari (cada usuari pot tenir la seva pròpia url clicktodial) -ExternalModule=Mòdul extern - Instal·lat al directori %s +ExternalModule=Mòdul extern +InstalledInto=Instal·lat al directori %s BarcodeInitForthird-parties=Inicialització massiva de codis de barres per a tercers BarcodeInitForProductsOrServices=Inici massiu de codi de barres per productes o serveis CurrentlyNWithoutBarCode=Actualment, té %s registres a %s %s sense codi de barres definit. @@ -947,7 +951,7 @@ DictionaryCanton=Estats/Províncies DictionaryRegion=Regions DictionaryCountry=Països DictionaryCurrency=Monedes -DictionaryCivility=Títol de civisme +DictionaryCivility=Títols honorífics DictionaryActions=Tipus d'esdeveniments de l'agenda DictionarySocialContributions=Tipus d'impostos varis DictionaryVAT=Taxa d'IVA o Impost de vendes @@ -988,6 +992,7 @@ VATIsNotUsedDesc=El tipus d'IVA proposat per defecte és 0. Aquest és el cas d' VATIsUsedExampleFR=A França, es tracta de les societats o organismes que trien un règim fiscal general (General simplificat o General normal), règim en el qual es declara l'IVA. VATIsNotUsedExampleFR=A França, es tracta d'associacions que no siguin declarades per vendes o empreses, organitzacions o professions liberals que hagin triat el sistema fiscal de la microempresa (Impost sobre vendes en franquícia) i paguen una franquícia. Impost sobre vendes sense declaració d'impost sobre vendes. Aquesta elecció mostrarà la referència "Impost sobre vendes no aplicable - art-293B de CGI" a les factures. ##### Local Taxes ##### +TypeOfSaleTaxes=Tipus d’impost sobre vendes LTRate=Tarifa LocalTax1IsNotUsed=No subjecte LocalTax1IsUsedDesc=Utilitzar un 2on tipus d'impost (diferent de l'IVA) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=El tipus d'IRPF proposat per defecte en les creacions de p LocalTax2IsNotUsedDescES=El tipus d'IRPF proposat per defecte es 0. Final de regla. LocalTax2IsUsedExampleES=A Espanya, es tracta de persones físiques: autònoms i professionals independents que presten serveis i empreses que han triat el règim fiscal de mòduls. LocalTax2IsNotUsedExampleES=A Espanya, es tracta d'empreses no subjectes al règim fiscal de mòduls. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Utilitzar un segell fiscal +UseRevenueStampExample=El valor del segell fiscal està definit per defecte en la configuració dels diccionaris (%s - %s - %s) CalcLocaltax=Informes d'impostos locals CalcLocaltax1=Vendes - Compres CalcLocaltax1Desc=Els informes es calculen amb la diferència entre les vendes i les compres @@ -1018,6 +1026,7 @@ CalcLocaltax2=Compres CalcLocaltax2Desc=Els informes es basen en el total de les compres CalcLocaltax3=Vendes CalcLocaltax3Desc=Els informes es basen en el total de les vendes +NoLocalTaxXForThisCountry=Segons la configuració d’impostos (vegeu %s - %s - %s), el vostre país no necessita utilitzar aquest tipus d’impost LabelUsedByDefault=Etiqueta utilitzada per defecte si no es troba cap traducció per aquest codi LabelOnDocuments=Etiqueta sobre documents LabelOrTranslationKey=Clau de traducció o cadena @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Informe de despeses per aprovar Delays_MAIN_DELAY_HOLIDAYS=Dies lliures a aprovar SetupDescription1=Abans de començar a utilitzar Dolibarr cal definir alguns paràmetres inicials i habilitar/configurar els mòduls. SetupDescription2=Les dues seccions següents són obligatòries (les dues primeres entrades al menú Configuració): -SetupDescription3=  %s -> %s
    Paràmetres bàsics per personalitzar el comportament predeterminat de la vostra aplicació (per exemple, per a funcions relacionades amb el país). -SetupDescription4=  %s -> %s
    Aquest programari és un conjunt de molts mòduls / aplicacions, tots ells més o menys independents. Els mòduls rellevants per a les vostres necessitats s'han d’habilitar i configurar. S'afegeixen nous elements / opcions als menús amb l’activació d’un mòdul. +SetupDescription3=  %s -> %s

    Paràmetres bàsics utilitzats per personalitzar el comportament predeterminat de la teva aplicació (per exemple, per a les funcions relacionades amb el país). +SetupDescription4=  %s -> %s

    Aquest programari és un conjunt de molts mòduls / aplicacions. Els mòduls relacionats amb les vostres necessitats s’han d’activar i configurar. Les entrades del menú apareixen amb l’activació d’aquests mòduls. SetupDescription5=Altres entrades del menú d'instal·lació gestionen paràmetres opcionals. LogEvents=Auditoria de la seguretat d'esdeveniments Audit=Auditoria @@ -1128,7 +1137,7 @@ LogEventDesc=Habiliteu el registre per a esdeveniments de seguretat específics. AreaForAdminOnly=Els paràmetres de configuració només poden ser establerts per usuaris administradors. SystemInfoDesc=La informació del sistema és informació tècnica accessible només en només lectura als administradors. SystemAreaForAdminOnly=Aquesta àrea només està disponible per als usuaris administradors. Els permisos d'usuari de Dolibarr no poden canviar aquesta restricció. -CompanyFundationDesc=Edita la informació de l’empresa / entitat. Feu clic al botó "%s" al final de la pàgina. +CompanyFundationDesc=Editeu la informació de la vostra empresa / organització. Feu clic al botó "%s" al final de la pàgina quan hagi acabat. AccountantDesc=Si teniu un comptable extern, podeu editar aquí la seva informació. AccountantFileNumber=Número de fila DisplayDesc=Els paràmetres que afecten l'aspecte i el comportament de Dolibarr es poden modificar aquí. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Regles per generar i validar contrasenyes DisableForgetPasswordLinkOnLogonPage=No mostri l'enllaç "Contrasenya oblidada" a la pàgina d'inici de sessió UsersSetup=Configuració del mòdul usuaris UserMailRequired=Es necessita un correu electrònic per crear un nou usuari +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Plantilles de documents per a documents generats a partir d'un registre d'usuari +GroupsDocModules=Plantilles de documents per a documents generats a partir d’un registre de grup ##### HRM setup ##### HRMSetup=Configuració de mòdul de gestió de recursos humans ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Models de documents de factures BillsPDFModulesAccordindToInvoiceType=Model de documents de factures d'acord amb el tipus de factura PaymentsPDFModules=Models de documents de pagament ForceInvoiceDate=Forçar la data de factura a la data de validació -SuggestedPaymentModesIfNotDefinedInInvoice=Formes de pagament suggerides per a les factures si no estan definides explícitament +SuggestedPaymentModesIfNotDefinedInInvoice=Mode de pagament per defecte suggerit per a la factura, quan no estigui definit a la factura SuggestPaymentByRIBOnAccount=Suggereix el pagament per retirada per compte SuggestPaymentByChequeToAddress=Suggereix pagament mitjançant xec a FreeLegalTextOnInvoices=Text lliure en factures @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Configuració de pagaments a proveïdors PropalSetup=Configuració del mòdul Pressupostos ProposalsNumberingModules=Models de numeració de pressupostos ProposalsPDFModules=Models de documents de pressupostos -SuggestedPaymentModesIfNotDefinedInProposal=El mode de pagaments suggerit a la proposta per defecte si no es defineix per a la proposta +SuggestedPaymentModesIfNotDefinedInProposal=Mode de pagament per defecte suggerit per al pressupost, quan no estigui definit al pressupost FreeLegalTextOnProposal=Text lliure en pressupostos WatermarkOnDraftProposal=Marca d'aigua en pressupostos esborrany (en cas d'estar buit) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Preguntar compte bancari del pressupost @@ -1322,6 +1334,7 @@ WAREHOUSE_ASK_WAREHOUSE_DURING_ORDER=Preguntar per el magatzem d'origen per a la ##### Suppliers Orders ##### BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_ORDER=Demana el compte bancari de destí de la comanda de compra ##### Orders ##### +SuggestedPaymentModesIfNotDefinedInOrder=Mode de pagament per defecte suggerit per a la comanda de venda, quan no estigui definit a la comanda de venda OrdersSetup=Configuració de gestió d'ordres de vendes OrdersNumberingModules=Models de numeració de comandes OrdersModelModule=Models de documents de comandes @@ -1720,7 +1733,7 @@ MultiCompanySetup=Configuració del mòdul Multi-empresa ##### Suppliers ##### SuppliersSetup=Configuració del mòdul de Proveïdor SuppliersCommandModel=Plantilla completa de comanda de compra -SuppliersCommandModelMuscadet=Plantilla completa de comanda de compra +SuppliersCommandModelMuscadet=Plantilla completa de comanda de compra (antiga implementació de la plantilla cornas) SuppliersInvoiceModel=Plantilla completa de factura de proveïdor SuppliersInvoiceNumberingModel=Models de numeració de factures de proveïdor IfSetToYesDontForgetPermission=Si establiu un valor vàlid, no us oblideu d'establir els permisos necessaris als grups o persones habilitades per la segona aprovació @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Oculta les imatges en el menú superior LeftMenuBackgroundColor=Color de fons pel menú de l'esquerra BackgroundTableTitleColor=Color de fons per línies de títol en taules BackgroundTableTitleTextColor=Color del text per a la línia del títol de la taula +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Color de fons per les línies senars de les taules BackgroundTableLineEvenColor=Color de fons per les línies parells de les taules MinimumNoticePeriod=Període mínim de notificació (La solicitud de dia lliure serà donada abans d'aquest període) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=No s'ha trobat la referència de Dolibarr a l'ID del missat FormatZip=Codi postal MainMenuCode=Codi d'entrada del menú (menu principal) ECMAutoTree=Mostra l'arbre ECM automàtic -OperationParamDesc=Definiu els valors a utilitzar per a l’acció o com extreure valors. Per exemple:
    objproperty1 = SET: abc
    objproperty1 = SET: un valor amb substitució de __objpropietat1__
    objproperty3 = SETIFEMPTY: abc
    objproperty4 = EXTRACTE: HEADER: X-Myheaderkey. * [^ s] + (. *)
    options_myextrafield = EXTRACTE: ASSIGNATURA: ([^ s] *)
    object.objproperty5 = EXTRACTE: COS: el nom de la meva empresa és ([^ s] *)

    Utilitza un; char com a separador per extreure o establir diverses propietats. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Horari d'obertura OpeningHoursDesc=Introduïu aquí l'horari habitual d'obertura de la vostra empresa. ResourceSetup=Configuració del mòdul de recursos @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Advertència, els valors més alts fren ModuleActivated=El mòdul %s està activat i alenteix la interfície EXPORTS_SHARE_MODELS=Els models d’exportació es comparteixen amb tothom ExportSetup=Configuració del mòdul Export +ImportSetup=Configuració del mòdul Import InstanceUniqueID=ID únic de la instància SmallerThan=Menor que LargerThan=Major que @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Creeu un ping "+1" anònim al servidor de bases Doli FeatureNotAvailableWithReceptionModule=Funció no disponible quan el mòdul Recepció està habilitat EmailTemplate=Plantilla per correu electrònic EMailsWillHaveMessageID=Els correus electrònics tindran una etiqueta "Referències" que coincideix amb aquesta sintaxi -PDF_USE_ALSO_LANGUAGE_CODE=Si voleu tenir un títol de text al vostre PDF duplicat en 2 idiomes diferents en un mateix generar PDF, heu d’establir aquí aquest segon idioma de manera que el PDF generat contindrà 2 idiomes diferents a la mateixa pàgina, l’elecció al generar PDF i aquest. (només algunes plantilles PDF suporten això). Manteniu-lo buit per a 1 idioma per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=Si voleu tenir alguns textos del vostre PDF duplicats en 2 idiomes diferents en el mateix PDF generat, heu d’establir aquí aquest segon idioma a fi que el PDF generat contingui 2 idiomes diferents a la mateixa pàgina, el triat per generar el PDF i aquest segon ( només algunes plantilles PDF suporten això). Manteniu-lo buit per a 1 idioma per PDF. FafaIconSocialNetworksDesc=Introduïu aquí el codi de la icona de FontAwesome. Si no sabeu què és FontAwesome, podeu utilitzar el llibre genèric d’adreces. +RssNote=Nota: Cada definició de canal RSS proporciona un giny que heu d'habilitar per tenir-lo disponible al tauler de control +JumpToBoxes=Vés a Configuració -> Ginys +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/ca_ES/bills.lang b/htdocs/langs/ca_ES/bills.lang index f9866a5e9fb..ad19836153c 100644 --- a/htdocs/langs/ca_ES/bills.lang +++ b/htdocs/langs/ca_ES/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Factures de proveïdors SupplierBill=Factura del proveïdor SupplierBills=Factures de proveïdors Payment=Pagament -PaymentBack=Reembossament -CustomerInvoicePaymentBack=Reembossament +PaymentBack=Devolució +CustomerInvoicePaymentBack=Devolució Payments=Pagaments PaymentsBack=Devolucions paymentInInvoiceCurrency=en divisa de factures PaidBack=Reemborsat DeletePayment=Elimina el pagament ConfirmDeletePayment=Esteu segur de voler eliminar aquest pagament? -ConfirmConvertToReduc=Voleu convertir aquest %s en un descompte absolut? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? ConfirmConvertToReduc2=L’import s’emmagatzemarà entre tots els descomptes i es podrà utilitzar com a descompte per a una factura actual o futura per a aquest client. -ConfirmConvertToReducSupplier=Voleu convertir aquest %s en un descompte absolut? +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? ConfirmConvertToReducSupplier2=L’import s’ha desat entre tots els descomptes i es podrà utilitzar com a descompte per a una factura actual o futura per a aquest proveïdor. SupplierPayments=Pagaments a proveïdors ReceivedPayments=Pagaments rebuts @@ -209,17 +209,13 @@ NumberOfBillsByMonth=Nº de factures per mes AmountOfBills=Import de les factures AmountOfBillsHT=Import de factures (net d'impostos) AmountOfBillsByMonthHT=Import de les factures per mes (Sense IVA) -ShowSocialContribution=Mostra els impostos varis -ShowBill=Veure factura -ShowInvoice=Veure factura -ShowInvoiceReplace=Veure factura rectificativa -ShowInvoiceAvoir=Veure abonament -ShowInvoiceDeposit=Mostrar factura d'acompte -ShowInvoiceSituation=Mostra la factura de situació UseSituationInvoices=Permetre la factura de la situació UseSituationInvoicesCreditNote=Permet la nota de crèdit de la factura de situació Retainedwarranty=Garantia retinguda +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Percentatge de garantia retingut per defecte +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=Per pagar %s toPayOn=a pagar %s RetainedWarranty=Garantia retinguda @@ -230,7 +226,6 @@ setretainedwarranty=Estableix la garantia retinguda setretainedwarrantyDateLimit=Estableix el límit de data de garantia conservada RetainedWarrantyDateLimit=Data límit de garantia retinguda RetainedWarrantyNeed100Percent=La factura de situació ha d’estar al progrés 100%% per mostrar-se en PDF -ShowPayment=Veure pagament AlreadyPaid=Ja pagat AlreadyPaidBack=Ja reemborsat AlreadyPaidNoCreditNotesNoDeposits=Ja pagat (exclosos els abonaments i bestretes) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Generat a partir de la plantilla factura %s WarningInvoiceDateInFuture=Alerta, la data de factura és major que la data actual WarningInvoiceDateTooFarInFuture=Alerta, la data de factura és molt antiga respecte la data actual ViewAvailableGlobalDiscounts=Veure descomptes disponibles +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Estat PaymentConditionShortRECEP=A la recepció @@ -509,7 +505,7 @@ ToMakePayment=Pagar ToMakePaymentBack=Reemborsar ListOfYourUnpaidInvoices=Llistat de factures impagades NoteListOfYourUnpaidInvoices=Nota: Aquest llistat només conté factures de tercers que tens enllaçats com a agent comercial. -RevenueStamp=Timbre fiscal +RevenueStamp=Segell fiscal YouMustCreateInvoiceFromThird=Aquesta opció només està disponible al moment de crear una factura des de la llengüeta "Client" de tercers YouMustCreateInvoiceFromSupplierThird=Aquesta opció només està disponible quan es crea la factura des de la pestanya "proveïdor" d'un tercer YouMustCreateStandardInvoiceFirstDesc=Primer has de crear una factura estàndard i convertir-la en "plantilla" per crear una nova plantilla de factura @@ -575,3 +571,4 @@ AutoFillDateTo=Estableix la data de finalització de la línia de serveis amb la AutoFillDateToShort=Estableix la data de finalització MaxNumberOfGenerationReached=Nombre màxim de gen. arribat BILL_DELETEInDolibarr=Factura esborrada +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/ca_ES/blockedlog.lang b/htdocs/langs/ca_ES/blockedlog.lang index 0a991ede0cf..2d1baa823d7 100644 --- a/htdocs/langs/ca_ES/blockedlog.lang +++ b/htdocs/langs/ca_ES/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Registres inalterables ShowAllFingerPrintsMightBeTooLong=Mostra tots els registres arxivats (pot ser llarg) ShowAllFingerPrintsErrorsMightBeTooLong=Mostra tots els registres d'arxiu no vàlids (pot ser llarg) DownloadBlockChain=Baixa les empremtes dactilars -KoCheckFingerprintValidity=L'entrada de registre arxivada no és vàlida. Significa que algú (un hacker?) Ha modificat algunes dades d'aquest re després de la seva gravació, o ha esborrat el registre arxivat anterior (comprova que existeix la línia anterior). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=El registre del registre arxivat és vàlid. Les dades d'aquesta línia no s'han modificat i l'entrada segueix l'anterior. OkCheckFingerprintValidityButChainIsKo=El registre arxivat sembla ser vàlid en comparació amb l'anterior, però la cadena s'ha corromput prèviament. AddedByAuthority=Emmagatzemat a l'autoritat remota diff --git a/htdocs/langs/ca_ES/cashdesk.lang b/htdocs/langs/ca_ES/cashdesk.lang index 369f180c048..f6dfbd865dc 100644 --- a/htdocs/langs/ca_ES/cashdesk.lang +++ b/htdocs/langs/ca_ES/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Afegeix aquest article RestartSelling=Reprendre la venda SellFinished=Venda acabada PrintTicket=Imprimir +SendTicket=Send ticket NoProductFound=Cap article trobat ProductFound=Producte trobat NoArticle=Cap article @@ -48,6 +49,7 @@ Footer=Peu de pàgina AmountAtEndOfPeriod=Import al final del període (dia, mes o any) TheoricalAmount=Import teòric RealAmount=Import real +CashFence=Cash fence CashFenceDone=Tancament de caixa realitzat pel període NbOfInvoices=Nº de factures Paymentnumpad=Tipus de pad per introduir el pagament @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS necessita que les categories de productes funcion OrderNotes=Notes de comanda CashDeskBankAccountFor=Compte predeterminat a utilitzar per als pagaments NoPaimementModesDefined=No hi ha cap mode de pagament definit a la configuració de TakePOS -TicketVatGrouped=IVA per grups als tiquets -AutoPrintTickets=Imprimeix automàticament els tiquets +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Habiliteu funcions per a bar o restaurant ConfirmDeletionOfThisPOSSale=Confirmeu la supressió de la venda actual? ConfirmDiscardOfThisPOSSale=Voleu descartar aquesta venda actual? @@ -87,7 +90,19 @@ HeadBar=Barra de capçalera SortProductField=Camp per ordenar productes Browser=Navegador BrowserMethodDescription=Impressió de rebuts senzilla i senzilla. Només uns quants paràmetres per configurar el rebut. Imprimeix a través del navegador. -TakeposConnectorMethodDescription=Mòdul extern amb funcions addicionals. Possibilitat d'imprimir des de núvol. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Mètode d'impressió ReceiptPrinterMethodDescription=Mètode potent amb molts paràmetres. Completament personalitzable amb plantilles. No es pot imprimir des del núvol. -ByTerminal=By terminal +ByTerminal=Per terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Inicia una nova venda paral·lela +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Informe d'efectiu +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/ca_ES/companies.lang b/htdocs/langs/ca_ES/companies.lang index 2cd312297d8..223d1aa37e4 100644 --- a/htdocs/langs/ca_ES/companies.lang +++ b/htdocs/langs/ca_ES/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted=L'empresa "%s" ha estat eliminada ListOfContacts=Llistat de contactes ListOfContactsAddresses=Llistat de contactes ListOfThirdParties=Llista de tercers -ShowCompany=Mostra el tercer ShowContact=Mostrar contacte ContactsAllShort=Tots (sense filtre) ContactType=Tipus de contacte @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=Nom de l'agent comercial SaleRepresentativeLastname=Cognoms de l'agent comercial ErrorThirdpartiesMerge=S'ha produït un error en suprimir els tercers. Verifiqueu el registre. S'han revertit els canvis. NewCustomerSupplierCodeProposed=El codi de client o proveïdor ja utilitzat, es suggereix un codi nou +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Tipus de pagament - Client PaymentTermsCustomer=Condicions de pagament - Client diff --git a/htdocs/langs/ca_ES/compta.lang b/htdocs/langs/ca_ES/compta.lang index c74186ba10c..6cb0f6b1b98 100644 --- a/htdocs/langs/ca_ES/compta.lang +++ b/htdocs/langs/ca_ES/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=Veure %sl'anàlisi de pagaments %s per a un càlcul d SeeReportInDueDebtMode=Veure l'informe %sanàlisi de factures%s per a un càlcul basat en factures registrades conegudes encara que encara no s'hagin comptabilitzat en el Llibre Major. SeeReportInBookkeepingMode=Veure %sl'informe%s per a un càlcul a Taula de Llibre Major RulesAmountWithTaxIncluded=- Els imports mostrats són amb tots els impostos inclosos. -RulesResultDue=- Inclou les factures pendents, despeses, IVA, donacions estiguen o no pagades. També s'inclou salaris pagats.
    - Es basa en la data de la validació de les factures i l'IVA i en la data de venciment per a despeses. Per salaris definits amb el mòdul de Salari, s'utilitza la data de valor del pagament. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- Inclou els pagaments reals realitzats en les factures, les despeses, l'IVA i els salaris.
    - Es basa en les dates de pagament de les factures, les despeses, l'IVA i els salaris. La data de la donació per a la donació. -RulesCADue=- Inclou les factures degudes del client estiguin pagades o no.
    - Es basa en la data de la validació d'aquestes factures.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- Inclou tots els pagaments efectius de factures rebuts dels clients.
    - Es basa en la data de pagament d'aquestes factures
    RulesCATotalSaleJournal=Inclou totes les línies de crèdit del Diari de venda. RulesAmountOnInOutBookkeepingRecord=Inclou un registre al vostre Llibre Major amb comptes comptables que tenen el grup "DESPESA" o "INGRÉS" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Facturació facturada pel tipus d'impost sobre la venda TurnoverCollectedbyVatrate=Facturació recaptada pel tipus d'impost sobre la venda PurchasebyVatrate=Compra per l'impost sobre vendes LabelToShow=Etiqueta curta +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/ca_ES/errors.lang b/htdocs/langs/ca_ES/errors.lang index 02a35eb9659..fc5e083a365 100644 --- a/htdocs/langs/ca_ES/errors.lang +++ b/htdocs/langs/ca_ES/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=Arxiu no rebut íntegrament pel servidor. ErrorNoTmpDir=Directori temporal de recepció %s inexistent ErrorUploadBlockedByAddon=Pujada bloquejada per un plugin PHP/Apache. ErrorFileSizeTooLarge=La mida del fitxer és massa gran. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Longitud del camp massa llarg per al tipus int (màxim %s xifres) ErrorSizeTooLongForVarcharType=Longitud del camp massa llarg per al tipus cadena (màxim %s xifres) ErrorNoValueForSelectType=Els valors de la llista han de ser indicats @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, l’idioma de la pàgina ErrorBatchNoFoundForProductInWarehouse=No s'ha trobat lot / sèrie per al producte "%s" al magatzem "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No hi ha quantitat suficient per a aquest lot / sèrie per al producte "%s" al magatzem "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # Warnings WarningParamUploadMaxFileSizeHigherThanPostMaxSize=El paràmetre PHP upload_max_filesize (%s) és superior al paràmetre PHP post_max_size (%s). No es tracta d’una configuració consistent. 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í diff --git a/htdocs/langs/ca_ES/install.lang b/htdocs/langs/ca_ES/install.lang index bc315d5b8b6..8a74e406fb7 100644 --- a/htdocs/langs/ca_ES/install.lang +++ b/htdocs/langs/ca_ES/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=Aquest PHP suporta Curl. PHPSupportCalendar=Aquest PHP admet extensions de calendaris. PHPSupportUTF8=Aquest PHP és compatible amb les funcions UTF8. PHPSupportIntl=Aquest PHP admet funcions Intl. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=Aquest PHP admet les funcions %s. PHPMemoryOK=La seva memòria màxima de sessió PHP està definida a %s. Això hauria de ser suficient. PHPMemoryTooLow=La seva memòria màxima de sessió PHP està definida a %s bytes. Això és molt poc. Es recomana modificar el paràmetre memory_limit del seu arxiu php.ini a almenys %s octets. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=La teva instal·lació PHP no soporta Curl. ErrorPHPDoesNotSupportCalendar=La vostra instal·lació de PHP no admet extensions de calendari php. ErrorPHPDoesNotSupportUTF8=Aquest PHP no suporta les funcions UTF8. Resolgui el problema abans d'instal lar Dolibarr ja que no funcionarà correctamete. ErrorPHPDoesNotSupportIntl=La vostra instal·lació de PHP no admet funcions Intl. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=La teva instal·lació PHP no admet funcions %s. ErrorDirDoesNotExists=La carpeta %s no existeix o no és accessible. ErrorGoBackAndCorrectParameters=Torneu enrere i verifiqueu / corregiu els paràmetres. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=L'aplicació ha intentat actualitzar-se automàti YouTryInstallDisabledByFileLock=L'aplicació s'ha intentat actualitzar automàticament, però les pàgines d'instal·lació / actualització s'han desactivat per a la seguretat (per l'existència d'un fitxer de bloqueig install.lock al directori de documents del dolibarr).
    ClickHereToGoToApp=Fes clic aquí per anar a la teva aplicació ClickOnLinkOrRemoveManualy=Feu clic al següent enllaç. Si sempre veieu aquesta mateixa pàgina, heu d'eliminar / canviar el nom del fitxer install.lock al directori de documents. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/ca_ES/link.lang b/htdocs/langs/ca_ES/link.lang index d385261415b..60bb39b3786 100644 --- a/htdocs/langs/ca_ES/link.lang +++ b/htdocs/langs/ca_ES/link.lang @@ -8,3 +8,4 @@ LinkRemoved=L'enllaç %s s'ha eliminat ErrorFailedToDeleteLink= Error en eliminar l'enllaç '%s' ErrorFailedToUpdateLink= Error en actualitzar l'enllaç '%s' URLToLink=URL a enllaçar +OverwriteIfExists=Sobreescriu el fitxer si existeix diff --git a/htdocs/langs/ca_ES/mails.lang b/htdocs/langs/ca_ES/mails.lang index 3a70554297a..33c56156b38 100644 --- a/htdocs/langs/ca_ES/mails.lang +++ b/htdocs/langs/ca_ES/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=No s'han trobat contactes/adreces amb categoria NoContactLinkedToThirdpartieWithCategoryFound=No s'han trobat contactes/adreces amb categoria OutGoingEmailSetup=Configuració de correus electrònics sortints InGoingEmailSetup=Configuració de correus electrònics entrants -OutGoingEmailSetupForEmailing=Configuració del correu electrònic sortint (per enviament de correus massiu) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Configuració per defecte del correu electrònic sortint Information=Informació ContactsWithThirdpartyFilter=Contactes amb filtre de tercers diff --git a/htdocs/langs/ca_ES/main.lang b/htdocs/langs/ca_ES/main.lang index 8448d1b9644..c28f8eb03eb 100644 --- a/htdocs/langs/ca_ES/main.lang +++ b/htdocs/langs/ca_ES/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Desa i continua SaveAndNew=Guardar i nou TestConnection=Provar la connexió ToClone=Copiar +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Trieu les dades que voleu clonar: NoCloneOptionsSpecified=no hi ha dades definits per copiar Of=de @@ -829,6 +830,8 @@ Gender=Sexe Genderman=Home Genderwoman=Dona ViewList=Vista llistat +ViewGantt=Vista Gantt +ViewKanban=Vista de Kanban Mandatory=Obligatori Hello=Hola GoodBye=A reveure @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Seleccioneu les opcions gràfiques per crear un grà Measures=Mesures XAxis=Eix X YAxis=Eix Y +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirma l'eliminació del fitxer +DeleteFileText=Realment vols suprimir aquest fitxer? diff --git a/htdocs/langs/ca_ES/modulebuilder.lang b/htdocs/langs/ca_ES/modulebuilder.lang index 2510d73baf5..ad2dd76cea9 100644 --- a/htdocs/langs/ca_ES/modulebuilder.lang +++ b/htdocs/langs/ca_ES/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=Llista d'entrades de diccionaris ListOfPermissionsDefined=Llista de permisos definits SeeExamples=Mira exemples aquí EnabledDesc=Condició per tenir activat aquest camp (Exemples: 1 ó $conf->global->MYMODULE_MYOPTION) -VisibleDesc=És visible el camp? (Exemples: 0=Mai visible, 1=Visible en llistat i en formularis de crear/modificar/visualitzar, 2=Visible només en llistat, 3=Visible només en formularis de crear/modificar/visualitzar (no en llistat), 4=Visible en llistat i només en formularis de modificar/visualitzar (no al crear), 5=Visible en llistat i només en formularis de visualitzar (no al crear ni al modificar). Utilitzar el valor negatiu significa que el camp no es mostra per defecte al llistat, però es pot seleccionar per a la seva visualització). Pot ser una expressió, per exemple:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Mostra aquest camp en documents PDF compatibles. Podeu gestionar la posició amb el camp "Posició".
    Actualment, els models PDF compatibles coneguts són: eratostè +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Mostra aquest camp en documents PDF compatibles. Podeu gestionar la posició amb el camp "Posició".
    Actualment, els models PDF compatibles coneguts són: eratosthene (comanda), espadon (enviament), sponge (factures), cyan (propal / pressupost), cornas (comanda del proveïdor)

    Per al document :
    0 = no es mostra
    1 = mostra
    2 = només si no està buit

    Per a les línies de documents:
    0 = no es veuen les
    1 = mostra en una columna
    = 3 = mostra a la columna de descripció de línia després de la descripció
    4 = mostra a la columna de descripció després de la descripció només si no està buida DisplayOnPdf=Visualització en PDF IsAMeasureDesc=Es pot acumular el valor del camp per obtenir un total en la llista? (Exemples: 1 o 0) SearchAllDesc=El camp utilitzat per realitzar una cerca des de l'eina de cerca ràpida? (Exemples: 1 o 0) diff --git a/htdocs/langs/ca_ES/mrp.lang b/htdocs/langs/ca_ES/mrp.lang index 5b4b70f6c37..0e92fda2b8e 100644 --- a/htdocs/langs/ca_ES/mrp.lang +++ b/htdocs/langs/ca_ES/mrp.lang @@ -71,3 +71,5 @@ ProductQtyToProduceByMO=Quantitat de producte que encara es pot produir mitjanç AddNewConsumeLines=Afegiu una nova línia per consumir ProductsToConsume=Productes a consumir ProductsToProduce=Productes a produir +UnitCost=Cost unitari +TotalCost=Cost total diff --git a/htdocs/langs/ca_ES/orders.lang b/htdocs/langs/ca_ES/orders.lang index 7c3f75f91b8..fdbcc544fdb 100644 --- a/htdocs/langs/ca_ES/orders.lang +++ b/htdocs/langs/ca_ES/orders.lang @@ -141,7 +141,7 @@ OrderByEMail=Correu electrònic OrderByWWW=En línia OrderByPhone=Telèfon # Documents models -PDFEinsteinDescription=Un model complet de comanda (antiga implementació de la plantilla d'Eratosthene) +PDFEinsteinDescription=Un model complet de comanda PDFEratostheneDescription=Un model complet de comanda PDFEdisonDescription=Model de comanda simple PDFProformaDescription=Una plantilla completa de factura Proforma diff --git a/htdocs/langs/ca_ES/other.lang b/htdocs/langs/ca_ES/other.lang index dec9c733127..b98360624ba 100644 --- a/htdocs/langs/ca_ES/other.lang +++ b/htdocs/langs/ca_ES/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Actualment només és possible 1 camp com a Eix X. Només s’ha seleccionat el primer camp seleccionat. AtLeastOneMeasureIsRequired=Almenys 1 camp per a la mesura és obligatori AtLeastOneXAxisIsRequired=Almenys 1 camp per a l'Eix X és obligatori - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Ordre de venda validat Notify_ORDER_SENTBYMAIL=Ordre de venda enviat per correu Notify_ORDER_SUPPLIER_SENTBYMAIL=Ordre de compra enviat per correu electrònic @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=URL de pàgina WEBSITE_TITLE=Títol WEBSITE_DESCRIPTION=Descripció WEBSITE_IMAGE=Imatge -WEBSITE_IMAGEDesc=Camí relatiu dels mitjans d'imatge. Podeu mantenir aquest buit perquè no s'usa gaire (el contingut dinàmic pot utilitzar-se per mostrar una vista prèvia d'una llista de publicacions de bloc). +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Paraules clau LinesToImport=Línies per importar diff --git a/htdocs/langs/ca_ES/products.lang b/htdocs/langs/ca_ES/products.lang index 2832d002fa0..c184a1f0292 100644 --- a/htdocs/langs/ca_ES/products.lang +++ b/htdocs/langs/ca_ES/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=Aquesta eina actualitza el tipus d'IVA establert a MassBarcodeInit=Inicialització massiu de codis de barres MassBarcodeInitDesc=Pot utilitzar aquesta pàgina per inicialitzar el codi de barres en els objectes que no tenen un codi de barres definit. Comprovi abans que el mòdul de codis de barres estar ben configurat ProductAccountancyBuyCode=Codi comptable (compra) +ProductAccountancyBuyIntraCode=Codi comptable (compra intracomunitària) +ProductAccountancyBuyExportCode=Codi comptable (compra d'importació) ProductAccountancySellCode=Codi comptable (venda) ProductAccountancySellIntraCode=Codi de comptabilitat (venda intracomunitària) ProductAccountancySellExportCode=Codi comptable (exportació de venda) @@ -165,7 +167,7 @@ SuppliersPrices=Preus del proveïdor SuppliersPricesOfProductsOrServices=Preus del venedor (de productes o serveis) CustomCode=Duana / mercaderia / codi HS CountryOrigin=País d'origen -Nature=Naturalesa del producte (material / acabat) +Nature=Naturalesa del producte (material/acabat) ShortLabel=Etiqueta curta Unit=Unitat p=u. diff --git a/htdocs/langs/ca_ES/projects.lang b/htdocs/langs/ca_ES/projects.lang index a7e67fb92bc..aa4fe0eaa00 100644 --- a/htdocs/langs/ca_ES/projects.lang +++ b/htdocs/langs/ca_ES/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=que estic vinculat al projecte Time=Temps ListOfTasks=Llistat de tasques GoToListOfTimeConsumed=Ves al llistat de temps consumit -GoToListOfTasks=Mostra com a llista -GoToGanttView=mostra com Gantt GanttView=Vista de Gantt ListProposalsAssociatedProject=Llista de propostes comercials relacionades amb el projecte ListOrdersAssociatedProject=Llista de comandes de vendes relacionades amb el projecte @@ -188,7 +186,7 @@ PlannedWorkload=Càrrega de treball prevista PlannedWorkloadShort=Càrrega de treball ProjectReferers=Registres relacionats ProjectMustBeValidatedFirst=El projecte primer ha de ser validat -FirstAddRessourceToAllocateTime=Associa un recurs d'usuari per reservar el temps de la tasca +FirstAddRessourceToAllocateTime=Assigna un recurs d'usuari com a contacte del projecte per assignar temps InputPerDay=Entrada per dia InputPerWeek=Entrada per setmana InputPerMonth=Entrada per mes @@ -240,6 +238,7 @@ LatestModifiedProjects=Darrers %s projectes modificats OtherFilteredTasks=Altres tasques filtrades NoAssignedTasks=No es troben tasques assignades (assigni el projecte/tasques a l'usuari actual des del quadre de selecció superior per especificar-ne l'hora) ThirdPartyRequiredToGenerateInvoice=S'ha de definir un tercer en el projecte per poder facturar-lo. +ChooseANotYetAssignedTask=Trieu una tasca que encara no us ha estat assignada # Comments trans AllowCommentOnTask=Permet comentaris dels usuaris a les tasques AllowCommentOnProject=Permetre comentaris dels usuaris als projectes @@ -256,8 +255,8 @@ ServiceToUseOnLines=Servei d'ús a les línies InvoiceGeneratedFromTimeSpent=La factura %s s'ha generat a partir del temps dedicat al projecte ProjectBillTimeDescription=Comproveu si heu introduït el full de temps en les tasques del projecte I teniu previst generar factures des del full de temps per facturar al client del projecte (no comproveu si voleu crear la factura que no es basa en els fulls de temps introduïts). Nota: Per generarla factura, aneu a la pestanya "Temps introduït" del projecte i seleccioneu les línies que cal incloure. ProjectFollowOpportunity=Segueix l’oportunitat -ProjectFollowTasks=Segueix les tasques -Usage=Usage +ProjectFollowTasks=Follow tasks or time spent +Usage=Ús UsageOpportunity=Ús: Oportunitat UsageTasks=Ús: Tasques UsageBillTimeShort=Ús: temps de facturació @@ -265,3 +264,4 @@ InvoiceToUse=Esborrany de factura a utilitzar NewInvoice=Nova factura OneLinePerTask=Una línia per tasca OneLinePerPeriod=Una línia per període +RefTaskParent=Ref. Tasca pare diff --git a/htdocs/langs/ca_ES/propal.lang b/htdocs/langs/ca_ES/propal.lang index 26e2cef2915..899f1354d94 100644 --- a/htdocs/langs/ca_ES/propal.lang +++ b/htdocs/langs/ca_ES/propal.lang @@ -76,7 +76,7 @@ TypeContact_propal_external_BILLING=Contacte client de facturació pressupost TypeContact_propal_external_CUSTOMER=Contacte client seguiment pressupost TypeContact_propal_external_SHIPPING=Contacte del client pel lliurament # Document models -DocModelAzurDescription=Un model complet de pressupost (antiga implementació de la plantilla Cyan) +DocModelAzurDescription=Un model complet de pressupost DocModelCyanDescription=Un model de pressupost complet DefaultModelPropalCreate=Model per defecte DefaultModelPropalToBill=Model per defecte en tancar un pressupost (a facturar) diff --git a/htdocs/langs/ca_ES/receiptprinter.lang b/htdocs/langs/ca_ES/receiptprinter.lang index d2a7476dbab..020308cba2b 100644 --- a/htdocs/langs/ca_ES/receiptprinter.lang +++ b/htdocs/langs/ca_ES/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Impressora de proves CONNECTOR_NETWORK_PRINT=Impresora en xarxa CONNECTOR_FILE_PRINT=Impressora local CONNECTOR_WINDOWS_PRINT=Impressora local en Windows +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Impresora de proves, no fa res CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Perfil per defecte PROFILE_SIMPLE=Perfil simpre PROFILE_EPOSTEP=Perfil Epos Tep @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Mes de factura en lletres DOL_VALUE_MONTH=Mes de factura DOL_VALUE_DAY=Dia de la factura DOL_VALUE_DAY_LETTERS=Dia de factura en lletres +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Ref. factura +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Nom del client +DOL_VALUE_CUSTOMER_LASTNAME=Cognom del client +DOL_VALUE_CUSTOMER_MAIL=Correu del client +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Mòbil del client +DOL_VALUE_CUSTOMER_SKYPE=Skype del client +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=El nom de l'empresa +DOL_VALUE_MYSOC_ADDRESS=La teva adreça d’empresa +DOL_VALUE_MYSOC_ZIP=El teu codi postal +DOL_VALUE_MYSOC_TOWN=La teva ciutat +DOL_VALUE_MYSOC_COUNTRY=El teu país +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=ID IVA intracomunitari +DOL_VALUE_MYSOC_CAPITAL=Capital +DOL_VALUE_VENDOR_LASTNAME=Cognom del venedor +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/ca_ES/stripe.lang b/htdocs/langs/ca_ES/stripe.lang index 3e141657411..5b2c35e1295 100644 --- a/htdocs/langs/ca_ES/stripe.lang +++ b/htdocs/langs/ca_ES/stripe.lang @@ -32,6 +32,7 @@ VendorName=Nom del venedor CSSUrlForPaymentForm=Url del full d'estil CSS per al formulari de pagament NewStripePaymentReceived=S'ha rebut un nou pagament de Stripe NewStripePaymentFailed=S'ha intentat el pagament de Stripe però, ha fallat +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Clau secreta de test STRIPE_TEST_PUBLISHABLE_KEY=Clau de test publicable STRIPE_TEST_WEBHOOK_KEY=Clau de prova de Webhook @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Enllaç a la configuració de Stripe WebHook per truc ToOfferALinkForLiveWebhook=Enllaç a la configuració de Stripe WebHook per trucar a l’IPN (mode en directe) PaymentWillBeRecordedForNextPeriod=El pagament es registrarà per al període següent. ClickHereToTryAgain=Feu clic aquí per tornar-ho a provar ... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Degut a les regles d’autenticatització del client, la creació d’una targeta s’ha de fer des del backoffice Stripe. Podeu fer clic aquí per activar el registre de clients de Stripe: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/ca_ES/ticket.lang b/htdocs/langs/ca_ES/ticket.lang index 6aaa092a6e5..a623ab8a9cd 100644 --- a/htdocs/langs/ca_ES/ticket.lang +++ b/htdocs/langs/ca_ES/ticket.lang @@ -133,7 +133,7 @@ TicketsDisableCustomerEmail=Desactiveu sempre els correus electrònics quan es c # # Index & list page # -TicketsIndex=Tiquet - inici +TicketsIndex=Àrea de tiquets TicketList=Llista de tiquets TicketAssignedToMeInfos=Aquesta pàgina mostra la llista de butlletes creada per o assignada a l'usuari actual NoTicketsFound=Tiquet no trobat diff --git a/htdocs/langs/ca_ES/users.lang b/htdocs/langs/ca_ES/users.lang index c71ee023a2d..33457aff18a 100644 --- a/htdocs/langs/ca_ES/users.lang +++ b/htdocs/langs/ca_ES/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Usuaris i les seves propietats DomainUser=Usuari de domini Reactivate=Reactivar CreateInternalUserDesc=Aquest formulari us permet crear un usuari intern a la vostra empresa / organització. Per crear un usuari extern (client, proveïdor, etc.), utilitzeu el botó 'Crear usuari Dolibarr' de la targeta de contacte d'un tercer. -InternalExternalDesc=Un usuari intern és un usuari que forma part de la seva empresa o organització.
    Un usuari extern és un client, proveïdor o altre.

    En ambdós casos, els permisos defineixen drets sobre Dolibarr, també l'usuari extern pot tenir un gestor de menú diferent que l'usuari intern (vegeu Inici - Configuració - Visualització) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=El permís es concedeix ja que ho hereta d'un grup al qual pertany l'usuari. Inherited=Heretat UserWillBeInternalUser=L'usuari creat serà un usuari intern (ja que no està lligat a un tercer en particular) @@ -113,3 +113,5 @@ CantDisableYourself=No podeu desactivar el vostre propi registre d'usuari ForceUserExpenseValidator=Validador de l'informe de despeses obligatori ForceUserHolidayValidator=Forçar validador de sol·licitud d'abandonament ValidatorIsSupervisorByDefault=Per defecte, el validador és el supervisor de l’usuari. Deixar buit per mantenir aquest comportament. +UserPersonalEmail=Correu electrònic personal +UserPersonalMobile=Telèfon mòbil personal diff --git a/htdocs/langs/ca_ES/website.lang b/htdocs/langs/ca_ES/website.lang index c487d4bb9c9..1db4f01b26e 100644 --- a/htdocs/langs/ca_ES/website.lang +++ b/htdocs/langs/ca_ES/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=Mostra la pàgina en una nova pestanya SetAsHomePage=Indica com a Pàgina principal RealURL=URL real ViewWebsiteInProduction=Mostra la pàgina web utilitzant les URLs d'inici -SetHereVirtualHost= Ús amb Apache / NGinx / ...
    Si podeu crear, en el vostre servidor web (Apache, Nginx, ...), un host virtual dedicat amb PHP habilitat i un directori Root a
    %s
    i, a continuació, estableixi el nom de l'amfitrió virtual que heu creat a les propietats del lloc web, de manera que la previsualització es pot fer també usant aquest accés dedicat al servidor web en lloc del Dolibarr intern servidor. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS= Utilitzeu-lo amb el servidor incrustat de PHP
    Al desenvolupar l'entorn, és possible que preferiu provar el lloc amb el servidor web incrustat de PHP (requereix PHP 5.5) executant
    php -S 0.0. 0.0: 8080 -t %s YouCanAlsoDeployToAnotherWHP=Executeu el vostre lloc web amb un altre proveïdor de hosting de Dolibarr
    Si no teniu disponible un servidor web com Apache o NGinx a Internet, podeu exportar i importar el vostre lloc web a una altra instància de Dolibarr proporcionada per un altre proveïdor d'allotjament de Dolibarr que ofereixi una integració completa amb el mòdul del lloc web. Podeu trobar una llista d'alguns proveïdors d'allotjament Dolibarr a https://saas.dolibarr.org CheckVirtualHostPerms=Comproveu també que l'amfitrió virtual té permisos %s en fitxers a %s @@ -56,7 +57,7 @@ NoPageYet=Encara sense pàgines YouCanCreatePageOrImportTemplate=Podeu crear una pàgina nova o importar una plantilla completa del lloc web SyntaxHelp=Ajuda sobre consells de sintaxi específics YouCanEditHtmlSourceckeditor=Podeu editar el codi font HTML usant el botó "Codi font" a l'editor. -YouCanEditHtmlSource=
    Podeu incloure codi PHP a aquest origen mitjançant etiquetes <?php ?> . Estan disponibles les variables globals següents: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    També podeu incloure contingut d’una altra pàgina/contenidor amb la sintaxi següent:
    <?php includeContainer('alies_del_contenidor_a_incloure'); ?>

    Podeu fer una redirecció a una altra pàgina/contenidor amb la sintaxi següent (Nota: no produiu cap contingut de sortida abans d'una redirecció):
    <?php redirectToContainer('alies_del_contenidor_a_redireccionar'); ?>

    Per afegir un enllaç a una altra pàgina, utilitzeu la sintaxi:
    <a href="alies_de_la_plana.php">elmeuenllaç<a>

    Per incloure un enllaç per baixar un fitxer emmagatzemat al directori documents , utilitzeu l'empaquetador document.php :
    Per exemple, per a un fitxer a documents/ecm (cal estar registrat), la sintaxi és:
    <a href="/document.php?modulepart=ecm&file=[directori_relatiu/]nomdefitxer.ext">
    Per a un fitxer a documents/medias (directori obert per a accés públic), la sintaxi és:
    <a href="/document.php?modulepart=medias&file=[directori_relatiu/]nomdefitxer.ext">
    Per a un fitxer compartit amb un enllaç de compartició (accés obert mitjançant la clau hash de compartició del fitxer), la sintaxi és:
    <a href="/document.php?hashp=claupublicadecomparticio">

    Per incloure una imatge emmagatzemada al directori de documents , utilitzeu l'empaquetador viewimage.php :
    Per exemple, per a una imatge a documents/medias (directori obert per a accés públic), la sintaxi és:
    <img src="/ viewimage.php?modulepart=medias&file=[directori_relatiu/]nomdelfitxer.ext">

    Més exemples de codi HTML o dinàmic disponibles a la documentació wiki
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Clona la pàgina/contenidor CloneSite=Clona el lloc SiteAdded=S'ha afegit el lloc web @@ -76,7 +77,7 @@ BlogPost=Publicació del bloc WebsiteAccount=Compte del lloc web WebsiteAccounts=Comptes de lloc web AddWebsiteAccount=Crear un compte de lloc web -BackToListOfThirdParty=Tornar a la llista de Tercers +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Deshabilita primer el lloc web MyContainerTitle=Títol del meu lloc web AnotherContainer=Així s’inclou contingut d’una altra pàgina / contenidor (pot ser que tingueu un error aquí si activeu el codi dinàmic perquè pot no existir el subconjunt incrustat) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Ho sentim, actualment aquest lloc web està fora WEBSITE_USE_WEBSITE_ACCOUNTS=Activa la taula del compte del lloc web WEBSITE_USE_WEBSITE_ACCOUNTSTooltip=Activeu la taula per emmagatzemar comptes del lloc web (login/contrasenya) per a cada lloc web de tercers YouMustDefineTheHomePage=Primer heu de definir la pàgina d'inici predeterminada -OnlyEditionOfSourceForGrabbedContentFuture=Advertència: crear una pàgina web mitjançant la importació d'una pàgina web externa està reservada als usuaris experimentats. Depenent de la complexitat de la pàgina d'origen, el resultat de la importació pot diferir de l'original. A més, si la pàgina d'origen utilitza estils CSS comuns o javascript en conflicte, pot trencar l'aspecte o les característiques de l'editor del lloc web quan es treballa en aquesta pàgina. Aquest mètode és una forma més ràpida de crear una pàgina, però es recomana crear la nova pàgina des de zero o des d'una plantilla de pàgina suggerida.
    Recordeu també que les modificacions de l'origen HTML seran possibles quan el contingut de la pàgina s'hagi iniciat agafant-lo des d'una pàgina externa (l'editor "Online" NO estarà disponible) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Només l'edició de codi HTML és possible quan el contingut s'ha capturat d'un lloc extern GrabImagesInto=Agafa també imatges trobades dins del css i a la pàgina. ImagesShouldBeSavedInto=Les imatges s'han de desar al directori @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=Per seguir bones pràctiques de SEO, utilitzeu un text MainLanguage=Idioma principal OtherLanguages=Altres idiomes UseManifest=Proporciona un fitxer manifest.json +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/ca_ES/zapier.lang b/htdocs/langs/ca_ES/zapier.lang new file mode 100644 index 00000000000..d1cf95a01f8 --- /dev/null +++ b/htdocs/langs/ca_ES/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier per a Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Mòdul Zapier per a Dolibarr + +# +# Admin page +# +ZapierForDolibarrSetup = Configuració de Zapier per a Dolibarr diff --git a/htdocs/langs/cs_CZ/accountancy.lang b/htdocs/langs/cs_CZ/accountancy.lang index 57aa23f2157..6be591f9d54 100644 --- a/htdocs/langs/cs_CZ/accountancy.lang +++ b/htdocs/langs/cs_CZ/accountancy.lang @@ -121,6 +121,7 @@ InvoiceLinesDone=Prověřené řádky faktury ExpenseReportLines=Řádky výkazů výdajů navázat ExpenseReportLinesDone=Vázané linie vyúčtování výdajů IntoAccount=Prověřit řádky v účetním účtu +TotalForAccount=Total for accounting account Ventilate=Prověřit @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Účtování účet registrovaných darů ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Účtovací účet pro registraci předplatného ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_ACCOUNT=Účetní účet ve výchozím nastavení pro prodané produkty (použít, pokud není definován v listu produktu) ACCOUNTING_PRODUCT_SOLD_INTRA_ACCOUNT=Accounting account by default for the products sold in EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported out of EEC (used if not defined in the product sheet) + ACCOUNTING_SERVICE_BUY_ACCOUNT=Účetní účet ve výchozím nastavení pro zakoupené služby (použít, pokud není definován v servisním listu) +ACCOUNTING_SERVICE_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_ACCOUNT=Účetní účet ve výchozím nastavení pro prodané služby (použít, pokud není definován v servisním listu) ACCOUNTING_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unkno ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Účet subjektu není definován nebo neznámý subjekt. Chyba blokování. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Neznámý účet subjektu a účet čekání není definován. Chyba blokování PaymentsNotLinkedToProduct=Platba není spojena s žádným produktem / službou +OpeningBalance=Opening balance ShowOpeningBalance=Show opening balance HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Skupina účtů PcgtypeDesc=Group 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. +Reconcilable=Reconcilable + TotalVente=Celkový obrat před zdaněním TotalMarge=Celkové tržby marže @@ -307,11 +317,13 @@ 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV konfigurovatelný Modelcsv_FEC=Export FEC Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Schéma Id účtů ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=prodejní režim OptionModeProductSellIntra=Režim prodeje vyváženého v EHS OptionModeProductSellExport=Režim prodeje vyvážené v jiných zemích OptionModeProductBuy=Nákupní režim +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries OptionModeProductSellDesc=Zobrazit všechny produkty s vyúčtováním pro přímý prodej. OptionModeProductSellIntraDesc=Zobrazit všechny produkty s účetním účtem pro prodej v EHS. OptionModeProductSellExportDesc=Zobrazit všechny produkty s účetním účtem pro ostatní zahraniční prodeje. OptionModeProductBuyDesc=Zobrazit všechny produkty které připadají v úvahu pro nákupy. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=Odstraňte účtovací kód z řádků, které neexistují ve schématech účtu CleanHistory=Obnovit všechny vazby pro vybraný rok PredefinedGroups=Předdefinované skupiny @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Účet byl odstraněn ze skupiny SaleLocal=Local sale SaleExport=Export sale SaleEEC=Sale in EEC +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=Řada účetních účtu diff --git a/htdocs/langs/cs_CZ/admin.lang b/htdocs/langs/cs_CZ/admin.lang index aa95438270a..290281ecabb 100644 --- a/htdocs/langs/cs_CZ/admin.lang +++ b/htdocs/langs/cs_CZ/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Web server uživatel / skupina NoSessionFound=Nastavení Vašeho PHP Vám neumožňuje výpis aktivních relací. Složka sloužící k uložení relací (%s) může být chráněna (např. nastavením oprávnění OS nebo PHP open_basedir). DBStoringCharset=Znaková sada pro databázi s daty DBSortingCharset=Znaková sada pro řazení databáze s daty +HostCharset=Host charset ClientCharset=Klientská znaková sada ClientSortingCharset=Srovnání klientů WarningModuleNotActive=Modul %s musí být povolen @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Poznámka: vaše konfigurace PHP momentálně o NoMaxSizeByPHPLimit=Poznámka: Ve Vaší PHP konfiguraci není nastaven limit MaxSizeForUploadedFiles=Maximální velikost nahrávaných souborů (0 pro zablokování nahrávání) UseCaptchaCode=Použít grafický kód (CAPTCHA) na přihlašovací stránce -AntiVirusCommand= Úplná cesta k antivirovému souboru -AntiVirusCommandExample= Příklad pro ClamWin: C: \\ PROGRA ~ 1 \\ ClamWin \\ bin \\ clamscan.exe
    Příklad pro ClamAV: / usr / bin / clamscan +AntiVirusCommand=Úplná cesta k antivirovému souboru +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= Další parametry příkazového řádku -AntiVirusParamExample= Příklad ClamWin: - databáze = "C: \\ Program Files (x86) \\ ClamWin \\ lib" +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=Nastavení účetního modulu UserSetup=Nastavení správy uživatelů MultiCurrencySetup=Nastavení více měn @@ -149,7 +150,7 @@ SystemToolsAreaDesc=Tato oblast poskytuje uživatelských funkcí. Pomocí nabí Purge=Očistit PurgeAreaDesc=Tato stránka umožňuje odstranit všechny soubory generované nebo uložené v Dolibarr (dočasné soubory nebo všechny soubory v adresáři %s ). Použití této funkce není obvykle nutné. Je poskytována jako řešení pro uživatele, jejichž Dolibarr hostuje poskytovatel, který nenabízí oprávnění k odstranění souborů generovaných webovým serverem. PurgeDeleteLogFile=Odstranit soubory protokolu, včetně %s definované pro modul Syslog (bez rizika ztráty dat) -PurgeDeleteTemporaryFiles=Delete all temporary files (no risk of losing data). Note: Deletion is done only if the temp directory was created 24 hours ago. +PurgeDeleteTemporaryFiles=Odstraňte všechny dočasné soubory (bez rizika ztráty dat). Poznámka: Odstranění se provede pouze v případě, že dočasný adresář byl vytvořen před 24 hodinami. PurgeDeleteTemporaryFilesShort=Odstranit dočasné soubory PurgeDeleteAllFilesInDocumentsDir=Odstranit všechny soubory v adresáři: %s .
    Tímto odstraníte všechny generované dokumenty související s prvky (subjekty, faktury atd.), Soubory nahrané do modulu ECM, zálohování databází a dočasné soubory. PurgeRunNow=Vyčistit nyní @@ -178,8 +179,8 @@ Compression=Komprese CommandsToDisableForeignKeysForImport=Příkaz pro zákaz cizích klíču při importu CommandsToDisableForeignKeysForImportWarning=Povinné, pokud chcete být schopni obnovit SQL dump později ExportCompatibility=Kompatibilita vytvořeného souboru exportu -ExportUseMySQLQuickParameter=Use the --quick parameter -ExportUseMySQLQuickParameterHelp=The '--quick' parameter helps limit RAM consumption for large tables. +ExportUseMySQLQuickParameter=Použijte --rychlý parametr +ExportUseMySQLQuickParameterHelp=Parametr '- quick' pomáhá omezit spotřebu RAM u velkých tabulek. MySqlExportParameters=MySQL parametry exportu PostgreSqlExportParameters= PostgreSQL parametry exportu UseTransactionnalMode=Použití transakční režim @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Funkce zakázána v demu FeatureAvailableOnlyOnStable=Funkce je k dispozici pouze v oficiálních stabilních verzích BoxesDesc=Widgety jsou oblasti obrazovky, které ukazují krátké informace na některých stránkách. Můžete si vybrat mezi zobrazením/schováním boxu zvolením cílové stránky a kliknutím na 'Aktivovat' nebo kliknutím na popelnici ji zakázat. OnlyActiveElementsAreShown=Pouze prvky z povolených modulů jsou uvedeny. -ModulesDesc=Moduly / aplikace určují, které funkce jsou v softwaru k dispozici. Některé moduly vyžadují oprávnění, která mají být udělena uživatelům po aktivaci modulu. Klepnutím na tlačítko zapnuto / vypnuto (na konci linky modulu) aktivujete / deaktivujete modul / aplikaci. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. ModulesMarketPlaceDesc=Více modulů naleznete ke stažení na externích webových stránkách ... ModulesDeployDesc=Pokud to umožňují oprávnění vašeho souborového systému, můžete pomocí tohoto nástroje nasadit externí modul. Modul bude potom viditelný na kartě %s . ModulesMarketPlaces=Najděte externí aplikaci / moduly @@ -212,6 +213,7 @@ CompatibleUpTo=Kompatibilní s verzí %s NotCompatible=Tento modul se nezdá být kompatibilní s Dolibarr %s (Min %s - Max %s). CompatibleAfterUpdate=Tento modul vyžaduje aktualizaci souboru Dolibarr %s (Min %s - Max %s). SeeInMarkerPlace=Podívejte se na trh +SeeSetupOfModule=Viz nastavení modulu %s Updated=Aktualizováno Nouveauté=Novinka AchatTelechargement=Koupit / stáhnout @@ -221,6 +223,7 @@ DoliPartnersDesc=Seznam firem, které poskytují vlastní moduly nebo funkce. %s) MAIN_MAIL_SMTP_SERVER=SMTP / SMTPS Host (Výchozí nastavení v php.ini: %s) MAIN_MAIL_SMTP_PORT_NotAvailableOnLinuxLike=SMTP / SMTPS Port (Nedefinováno v PHP na Unixových systémech) @@ -280,7 +283,7 @@ MAIN_MAIL_ERRORS_TO=E-mail, který se používá pro hlášení chyb, vrací e-m MAIN_MAIL_AUTOCOPY_TO= Kopírovat (Bcc) všechny odeslané e-maily MAIN_DISABLE_ALL_MAILS=Zakázat veškeré odesílání e-mailů (pro testovací účely nebo ukázky) MAIN_MAIL_FORCE_SENDTO=Pošlete všechny e-maily do (namísto skutečných příjemců pro testovací účely) -MAIN_MAIL_ENABLED_USER_DEST_SELECT=Suggest emails of employees (if defined) into the list of predefined recipient when writing a new email +MAIN_MAIL_ENABLED_USER_DEST_SELECT=Při psaní nového e-mailu navrhujte e-maily zaměstnanců (pokud jsou definováni) do seznamu předdefinovaných příjemců MAIN_MAIL_SENDMODE=Metoda odesílání e-mailů MAIN_MAIL_SMTPS_ID=ID SMTP (pokud odesílající server vyžaduje ověření) MAIN_MAIL_SMTPS_PW=Heslo SMTP (pokud server pro odesílání vyžaduje ověření) @@ -328,7 +331,7 @@ SetupIsReadyForUse=Zavedení modulu je dokončeno. Musíte však povolit a nasta NotExistsDirect=Alternativní kořenový adresář není definován.
    InfDirAlt=Od verze 3 je možné definovat alternativní kořenovou složku. To umožňuje ukládat na stejné místo plug-iny a vlastní šablony.
    Stačí vytvořit adresář v kořenovém adresáři Dolibarr (např.: custom).
    InfDirExample= 
    Pak deklarujte v souboru conf.php
    $ dolibarr_main_url_root_alt = '/ custom'
    $ dolibarr_main_document_root_alt = '/ cesta / z / dolibarr / htdocs / custom'
    Pokud jsou tyto řádky komentovány "#" , stačí odkomentovat odstraněním znaku "#". -YouCanSubmitFile=You can upload the .zip file of module package from here: +YouCanSubmitFile=Zde můžete nahrát soubor .zip balíčku modulů: CurrentVersion=Dolibarr aktuální verze CallUpdatePage=Projděte stránku, která aktualizuje databázovou strukturu a data: %s. LastStableVersion=Poslední stabilní verze @@ -403,7 +406,7 @@ OldVATRates=Staré Sazba DPH NewVATRates=Nová sazba DPH PriceBaseTypeToChange=Změňte ceny podle základní referenční hodnoty definované na MassConvert=Spusťte hromadnou konverzi -PriceFormatInCurrentLanguage=Price Format In Current Language +PriceFormatInCurrentLanguage=Formát ceny v aktuálním jazyce String=Řetěz TextLong=Dlouhý text HtmlText=Html text @@ -425,9 +428,9 @@ ExtrafieldCheckBox=Zaškrtávače ExtrafieldCheckBoxFromList=Zaškrtávací políčka z tabulky ExtrafieldLink=Odkaz na objekt ComputedFormula=Vypočtené pole -ComputedFormulaDesc=Zde můžete zadat vzorec pomocí jiných vlastností objektu nebo libovolného kódování PHP pro získání dynamické vypočtené hodnoty. Můžete použít libovolné kompatibilní formule PHP včetně "?" operátor stavu a následující globální objekt: $ db, $ conf, $ langs, $ mysoc, $ user, $ objekt .
    VAROVÁNÍ : K dispozici jsou pouze některé vlastnosti objektu $. Pokud potřebujete vlastnosti, které nejsou načteny, jednoduše přiveďte objekt do vzorce, jako ve druhém příkladu.
    Použití vypočítaného pole znamená, že nemůžete zadat libovolnou hodnotu z rozhraní. Také pokud existuje syntaktická chyba, vzorec může vrátit nic.

    Příklad vzorce:
    $ object-> id < 10 ? round($object-> id / 2, 2): ($ objekt-> id + 2 * $ user-> id) * (int) substr ($ mysoc-> zip, 1, 2 )

    Příklad pro opětovné načtení objektu
    (($ reloadedobj = new Societe ($ db)) && ($ reloadedobj-> fetch ($ obj-> id? $ Obj-> id: > rowid: $ object-> id))> 0))? $ reloadedobj-> array_options ['options_extrafieldkey'] * $ reloadedobj-> capital / 5: '-1'

    Jiný příklad vzoru pro zatížení objektu a jeho nadřazeného objektu:
    ($ reloadedobj = new Task )) && ($ reloadedobj-> fetch ($ object-> id)> 0) && ($ secondloadedobj = nový projekt ($ db)) && ($ secondloadedobj-> fetch ($ reloadedobj-> fk_project)> 0))? $ secondloadedobj-> ref: 'Nadřazený projekt nebyl nalezen' -Computedpersistent=Store computed field -ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +Computedpersistent=Uložte vypočítané pole +ComputedpersistentDesc=Vypočítaná další pole pole budou uložena do databáze, hodnota však bude přepočítána pouze při změně objektu tohoto pole. Pokud vypočítané pole závisí na jiných objektech nebo globálních datech, může být tato hodnota špatná !! ExtrafieldParamHelpPassword=Pokud ponecháte toto pole prázdné, znamená to, že tato hodnota bude uložena bez šifrování (pole musí být skryto pouze s hvězdou na obrazovce).
    Nastavte "auto" pro použití výchozího šifrovacího pravidla pro uložení hesla do databáze (pak hodnota bude číst pouze hash, žádný způsob získání původní hodnoty) ExtrafieldParamHelpselect=Seznam hodnot musí být řádky s formátovým klíčem, hodnota (kde klíč nemůže být '0')

    například:
    1, value1
    2, value2
    code3, value3
    ...

    seznam v závislosti na dalším doplňkovém seznamu atributů:
    1, value1 | options_ parent_list_code : parent_key
    2, value2 | options_ parent_list_code : parent_key

    Chcete-li mít seznam v závislosti na jiném seznamu:
    1, hodnota1 | parent_list_code : parent_key
    2, hodnota2 | parent_list_code : parent_key ExtrafieldParamHelpcheckbox=Seznam hodnot musí být řádky s formátovým klíčem, hodnota (kde klíč nemůže být '0')

    například:
    1, value1
    2, value2
    3, value3
    ... @@ -435,7 +438,7 @@ ExtrafieldParamHelpradio=Seznam hodnot musí být řádky s formátovým klíče ExtrafieldParamHelpsellist=Seznam hodnot pochází z tabulky
    Syntaxe: table_name: label_field: id_field :: filter
    Příklad: c_typent: libelle: id :: filter

    - idfilter je nutně primární int klíč
    - filtr může být jednoduchý test = 1) pro zobrazení pouze aktivní hodnoty
    Můžete také použít $ ID $ ve filtru, který je aktuálním id aktuálního objektu
    Chcete-li provést SELECT ve filtru, použijte $ SEL $
    , pokud chcete filtrovat na extrafields použít syntaxi extra.fieldcode = ... (kde kód pole je kód extrafield)

    Aby byl seznam v závislosti na jiném seznamu doplňkových atributů:
    c_typent: libelle: id: options_ parent_list_code | parent_column: filter

    Aby bylo možné mít seznam v závislosti na jiném seznamu:
    c_typent: libelle: id: parent_list_code | parent_column: filtr ExtrafieldParamHelpchkbxlst=Seznam hodnot pochází z tabulky
    Syntaxe: table_name: label_field: id_field :: filter
    Příklad: c_typent: libelle: id :: filter

    filtr může být jednoduchý test (např. Aktivní = 1) pro zobrazení pouze aktivní hodnoty
    You může také použít $ ID $ ve filtru, který je aktuální id aktuálního objektu
    Chcete-li provést SELECT ve filtru, použijte $ SEL $
    , pokud chcete filtrovat na extrafields použijte syntaxi extra.fieldcode = ... (kde kód pole je code of extrafield)

    Aby byl seznam v závislosti na jiném seznamu doplňkových atributů:
    c_typent: libelle: id: options_ parent_list_code | parent_column: filter

    Aby byl seznam v závislosti na jiném seznamu:
    c_typent: libelle: id: parent_list_code | nadřazený sloupec: filtr ExtrafieldParamHelplink=Parametry musí být ObjectName: Classpath
    Syntaxe: Název_objektu: Classpath
    Příklady:
    Societe: societe / class / societe.class.php
    Kontakt: contact / class / contact.class.php -ExtrafieldParamHelpSeparator=Keep empty for a simple separator
    Set this to 1 for a collapsing separator (open by default for new session, then status is kept for each user session)
    Set this to 2 for a collapsing separator (collapsed by default for new session, then status is kept fore each user session) +ExtrafieldParamHelpSeparator=Ponechte prázdné pro jednoduchý oddělovač
    Tuto hodnotu nastavíte na 1 pro odlučovač (výchozí nastavení je otevřeno pro novou relaci, poté je stav zachován pro každou uživatelskou relaci)
    Nastavte tuto položku na 2 pro sbalující se oddělovač. (ve výchozím nastavení sbaleno pro novou relaci, pak je stav udržován pro každou relaci uživatele) LibraryToBuildPDF=Knihovna používaná pro generování PDF LocalTaxDesc=Některé země mohou uplatnit dvě nebo tři daně na každé čáře faktur. Pokud tomu tak je, vyberte typ druhého a třetího daně a jeho sazbu. Možné typy jsou:
    1: místní daň se vztahuje na produkty a služby bez DPH (platí se na základě daně bez daně)
    2: místní daň se vztahuje na produkty a služby, včetně DPH (0%) 3x342fccfda19b 3: místní daň se vztahuje na produkty bez DPH (místní taxa se vypočítává z částky bez daně)
    4: místní daň se vztahuje na produkty včetně DPH (místní taxa se vypočítává z částky + hlavní daň)
    5: Místní daň platí pro služby bez DPH z částky bez daně)
    6: Místní daň platí za služby včetně DPH (místní taxa se vypočítává z částky + daně) SMS=SMS @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Uchovávejte prázdnou pro použití výchozí hodnoty DefaultLink=Výchozí odkaz SetAsDefault=Nastavit jako výchozí ValueOverwrittenByUserSetup=Upozornění: tato hodnota může být přepsána uživatelsky specifickým nastavením (každý uživatel si může nastavit svoji vlastní adresu kliknutí) -ExternalModule=Externí modul - instalován do adresáře %s +ExternalModule=External module +InstalledInto=Installed into directory %s BarcodeInitForthird-parties=Masový čárový kód pro subjekty BarcodeInitForProductsOrServices=Masový čárový kód pro produkty nebo služby CurrentlyNWithoutBarCode=V současné době máte %s záznam na %s %s bez definice čárového kódu. @@ -465,14 +469,14 @@ EnableAndSetupModuleCron=Pokud chcete, aby tato opakovaná faktura byla automati ModuleCompanyCodeCustomerAquarium=%s, následovaný kódem zákazníka pro účetní kód zákazníka ModuleCompanyCodeSupplierAquarium=%s následovaný dodavatelem kód dodavatel kód účetnictví ModuleCompanyCodePanicum=Vrátit prázdný účetní kód. -ModuleCompanyCodeDigitaria=Returns a compound accounting code according to the name of the third party. The code consists of a prefix that can be defined in the first position followed by the number of characters defined in the third party code. -ModuleCompanyCodeCustomerDigitaria=%s followed by the truncated customer name by the number of characters: %s for the customer accounting code. -ModuleCompanyCodeSupplierDigitaria=%s followed by the truncated supplier name by the number of characters: %s for the supplier accounting code. +ModuleCompanyCodeDigitaria=Vrací složený účetní kód podle jména subjektu. Kód se skládá z předpony, která může být definována na první pozici, po které následuje počet znaků definovaných v kódu subjektu. +ModuleCompanyCodeCustomerDigitaria=%s následovaný zkráceným jménem zákazníka o počet znaků: %s pro kód účetnictví zákazníka. +ModuleCompanyCodeSupplierDigitaria=%s následované zkráceným jménem dodavatele podle počtu znaků: %s pro účetní kód dodavatele. Use3StepsApproval=Ve výchozím nastavení musí být nákupní objednávky vytvořeny a schváleny dvěma různými uživateli (jeden krok / uživatel k vytvoření a jeden krok / uživatel ke schválení. Všimněte si, že pokud má uživatel oprávnění k vytvoření a schválení, stačí jeden krok / uživatel) . Touto volbou můžete požádat o zavedení třetího schvalovacího kroku / schválení uživatele, pokud je částka vyšší než určená hodnota (potřebujete tedy 3 kroky: 1 = ověření, 2 = první schválení a 3 = druhé schválení, pokud je dostatečné množství).
    Pokud je zapotřebí jedno schvalování (2 kroky), nastavte jej na velmi malou hodnotu (0,1), pokud je vždy požadováno druhé schválení (3 kroky). UseDoubleApproval=Použijte schválení 3 kroky, kdy částka (bez DPH) je vyšší než ... WarningPHPMail=UPOZORNĚNÍ: Je často lepší nastavit odchozí e-maily, než použít výchozí nastavení poštovního serveru poskytovatele. Někteří poskytovatelé e-mailů (například Yahoo) vám neumožňují odeslat e-mail z jiného serveru, než je jejich vlastní server. Vaše současné nastavení používá server pro odesílání e-mailů a nikoli server vašeho poskytovatele e-mailu, takže někteří příjemci (ten, který je kompatibilní s omezujícím protokolem DMARC) požádá vašeho poskytovatele e-mailu, aby mohli přijmout váš e-mail a některé poskytovatele e-mailu (jako je Yahoo) může odpovědět "ne", protože server není jejich, takže nemnoho přijatých e-mailů nemůže být přijato (buďte opatrní také kvótou odesílatele vašeho e-mailu).
    Pokud má váš poskytovatel e-mailu (například Yahoo) toto omezení, musíte změnit nastavení e-mailu a zvolit druhou metodu "SMTP server" a zadat server SMTP a pověření poskytnuté poskytovatelem e-mailu. WarningPHPMail2=Pokud je váš poskytovatel e-mailových služeb SMTP povinen omezit e-mailový klient na některé adresy IP (velmi vzácné), jedná se o adresu IP agentu uživatele pošty (MUA) pro aplikaci ERP CRM: %s . -WarningPHPMailSPF=If the domain name in your sender email address is protected by SPF (ask you email provider), you must include the following IPs in the SPF record of the DNS of your domain: %s. +WarningPHPMailSPF=Pokud je název domény ve vaší e-mailové adrese odesílatele chráněn pomocí SPF (zeptejte se poskytovatele e-mailu), musíte do záznamu SPF DNS vaší domény zahrnout následující adresy IP: %s . ClickToShowDescription=Kliknutím zobrazíte popis DependsOn=Tento modul potřebuje modul (y) RequiredBy=Tento modul je vyžadován modulem (moduly) @@ -480,7 +484,7 @@ TheKeyIsTheNameOfHtmlField=Toto je název pole HTML. Technická znalost je potř PageUrlForDefaultValues=Musíte zadat relativní cestu URL stránky. Pokud do adresy URL zadáte parametry, budou výchozí hodnoty účinné, pokud budou všechny parametry nastaveny na stejnou hodnotu. PageUrlForDefaultValuesCreate= 
    Příklad:
    Formulář pro vytvoření nového subjektu je %s .
    Pro URL externích modulů nainstalovaných do vlastního adresáře nezahrnujte "vlastní /", tak použijte cestu jako mymodule / mypage.php a ne vlastní / mymodule / mypage.php.
    Pokud chcete výchozí hodnotu pouze v případě, že url má nějaký parametr, můžete použít %s PageUrlForDefaultValuesList= 
    Příklad:
    Pro stránku, která obsahuje subjekty, je %s .
    Pro adresy URL externích modulů nainstalovaných do vlastního adresáře nezahrnujte "vlastní", takže použijte cestu jako mymodule / mypagelist.php a ne vlastní / mymodule / mypagelist.php.
    Pokud chcete výchozí hodnotu pouze v případě, že url má nějaký parametr, můžete použít %s -AlsoDefaultValuesAreEffectiveForActionCreate=Also note that overwritting default values for form creation works only for pages that were correctly designed (so with parameter action=create or presend...) +AlsoDefaultValuesAreEffectiveForActionCreate=Také si všimněte, že přepsání výchozích hodnot pro vytváření formulářů funguje pouze pro stránky, které byly správně navrženy (takže s parametrem action = create or presend ...) EnableDefaultValues=Povolit přizpůsobení výchozích hodnot EnableOverwriteTranslation=Povolit použití přepsaného překladu GoIntoTranslationMenuToChangeThis=Překlad byl nalezen pro klíč s tímto kódem. Chcete-li tuto hodnotu změnit, musíte ji upravit z Home-Setup-translation. @@ -520,7 +524,7 @@ Module25Desc=Řízení prodeje objednávek Module30Name=Faktury Module30Desc=Řízení faktur a dobropisů pro zákazníky. Řízení faktur a dobropisů pro dodavatele Module40Name=Dodavatelé -Module40Desc=Vendors and purchase management (purchase orders and billing of supplier invoices) +Module40Desc=Prodejci a řízení nákupu (objednávky a fakturace dodavatelských faktur) Module42Name=Debug Logs Module42Desc=Zařízení pro protokolování (soubor, syslog, ...). Takové protokoly jsou určeny pro technické účely / ladění. Module49Name=Redakce @@ -530,7 +534,7 @@ Module50Desc=Řízení výrobků Module51Name=Hromadné e-maily Module51Desc=Hromadná správa pošty Module52Name=Zásoby -Module52Desc=Stock management +Module52Desc=Skladové hospodářství Module53Name=Služby Module53Desc=Řízení služeb Module54Name=Smlouvy/Objednávky @@ -545,8 +549,8 @@ Module58Name=ClickToDial Module58Desc=Integrace ClickToDial systému (Asterisk, ...) Module59Name=Bookmark4u Module59Desc=Přidat funkce pro generování Bookmark4u účet z účtu Dolibarr -Module60Name=Stickers -Module60Desc=Management of stickers +Module60Name=Samolepky +Module60Desc=Správa nálepek Module70Name=Intervence Module70Desc=Intervence řízení Module75Name=Nákladové a výlet poznámky @@ -564,9 +568,9 @@ Module200Desc=Synchronizace adresářů LDAP Module210Name=PostNuke Module210Desc=PostNuke integrace Module240Name=Exporty dat -Module240Desc=Tool to export Dolibarr data (with assistance) +Module240Desc=Nástroj pro export dat Dolibarr (s pomocí) Module250Name=Import dat -Module250Desc=Tool to import data into Dolibarr (with assistance) +Module250Desc=Nástroj pro import dat do Dolibarru (s pomocí) Module310Name=Členové Module310Desc=Nadace členové vedení Module320Name=RSS Feed @@ -583,7 +587,7 @@ Module510Name=Platy Module510Desc=Zaznamenejte a sledujte platby zaměstnanců Module520Name=Úvěry Module520Desc=Správa úvěrů -Module600Name=Notifications on business event +Module600Name=Oznámení o obchodní události 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 @@ -630,7 +634,7 @@ Module5000Desc=Umožňuje spravovat více společností Module6000Name=Workflow Module6000Desc=Správa pracovních postupů (automatické vytvoření objektu a / nebo automatické změny stavu) Module10000Name=Webové stránky -Module10000Desc=Create websites (public) with a WYSIWYG editor. This is a webmaster or developer oriented CMS (it is better to know HTML and CSS language). Just setup your web server (Apache, Nginx, ...) to point to the dedicated Dolibarr directory to have it online on the internet with your own domain name. +Module10000Desc=Vytvořte webové stránky (veřejné) pomocí editoru WYSIWYG. Toto je CMS pro webmastery nebo vývojáře (je lepší znát jazyk HTML a CSS). Stačí nastavit svůj webový server (Apache, Nginx, ...) tak, aby ukazoval na vyhrazený adresář Dolibarr, aby byl online na internetu s vaším vlastním názvem domény. Module20000Name=Nechte správu požadavků Module20000Desc=Definujte a sledujte žádosti o odchod zaměstnanců Module39000Name=Množství produktu @@ -642,7 +646,7 @@ Module50000Desc=Nabídněte zákazníkům platební stránku PayBox (kreditní / Module50100Name=POS SimplePOS Module50100Desc=Prodejní modul SimplePOS (jednoduché POS). Module50150Name=POS TakePOS -Module50150Desc=Point of Sale module TakePOS (touchscreen POS, for shops, bars or restaurants). +Module50150Desc=Modul Point of Sale TakePOS (POS dotykový displej, pro obchody, bary nebo restaurace). Module50200Name=Paypal Module50200Desc=Nabídněte zákazníkům platební stránku PayPal online (účet PayPal nebo kreditní nebo debetní karty). To může být použito k tomu, aby zákazníci mohli provádět ad hoc platby nebo platby související s konkrétním předmětem Dolibarr (faktura, objednávka atd.) Module50300Name=Proužek @@ -816,7 +820,7 @@ Permission401=Přečtěte slevy Permission402=Vytvořit / upravit slevy Permission403=Ověřit slevy Permission404=Odstranit slevy -Permission430=Use Debug Bar +Permission430=Použijte ladicí panel Permission511=Přečtěte si platy Permission512=Vytvořte / upravte platby platů Permission514=Smazat platy @@ -831,9 +835,9 @@ Permission532=Vytvořit / upravit služby Permission534=Odstranit služby Permission536=Viz / správa skryté služby Permission538=Export služeb -Permission650=Read Bills of Materials -Permission651=Create/Update Bills of Materials -Permission652=Delete Bills of Materials +Permission650=Přečtěte si kusovníky +Permission651=Vytvářejte / aktualizujte účty materiálů +Permission652=Smazat kusovníky Permission701=Přečtěte si dary Permission702=Vytvořit / upravit dary Permission703=Odstranit dary @@ -849,12 +853,12 @@ Permission1002=Vytvoření/úprava skladišť Permission1003=Odstranění skladišť Permission1004=Přečtěte skladové pohyby Permission1005=Vytvořit / upravit skladové pohyby -Permission1101=Read delivery receipts -Permission1102=Create/modify delivery receipts -Permission1104=Validate delivery receipts -Permission1109=Delete delivery receipts -Permission1121=Read supplier proposals -Permission1122=Create/modify supplier proposals +Permission1101=Přečíst potvrzení o doručení +Permission1102=Vytvářejte / upravujte potvrzení o doručení +Permission1104=Ověřte potvrzení o doručení +Permission1109=Smažte potvrzení o doručení +Permission1121=Přečtěte si návrhy dodavatelů +Permission1122=Vytvářejte / upravujte návrhy dodavatelů Permission1123=Validate supplier proposals Permission1124=Send supplier proposals Permission1125=Delete supplier proposals @@ -947,7 +951,7 @@ DictionaryCanton=Stát/Okres DictionaryRegion=Regiony DictionaryCountry=Země DictionaryCurrency=Měny -DictionaryCivility=Zdvořilostní oslovení +DictionaryCivility=Honorific titles DictionaryActions=Typ agendy událostí DictionarySocialContributions=Typy sociální nebo fiskální daně DictionaryVAT=Sazby DPH nebo daň z prodeje @@ -988,6 +992,7 @@ VATIsNotUsedDesc=Ve výchozím nastavení je navrhovaná daň z prodeje 0, kter VATIsUsedExampleFR=Ve Francii to znamená, že společnosti nebo organizace mají skutečný fiskální systém (zjednodušený reálný nebo normální reálný). Systém, v němž je uvedena DPH. VATIsNotUsedExampleFR=Ve Francii se jedná o sdružení, která jsou prohlášena za nepodléhající daň z prodeje, nebo společnosti, organizace nebo svobodné profese, které si vybraly daňový systém pro mikropodniky (daně z prodeje ve franchise) a zaplatili daň z prodeje bez daně z prodeje bez prohlášení o daních z prodeje. Tato volba zobrazí na fakturách odkaz "Neuplatňuje se daň z prodeje - art-293B CGI". ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=Rychlost LocalTax1IsNotUsed=Nepoužívejte druhou daň LocalTax1IsUsedDesc=Použijte druhý typ daně (jiný než první) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=Kurz IRPF ve výchozím nastavení při vytváření prosp LocalTax2IsNotUsedDescES=Standardně navrhovaný IRPF je 0. Konec pravidla. LocalTax2IsUsedExampleES=Ve Španělsku, na volné noze a nezávislí odborníci, kteří poskytují služby a firmy, kteří se rozhodli daňového systému modulů. LocalTax2IsNotUsedExampleES=Ve Španělsku jsou podniky, které nepodléhají daňovému systému modulů. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=Zprávy o místních daních CalcLocaltax1=Prodej - Nákupy CalcLocaltax1Desc=Přehledy místních daní jsou vypočítávány s rozdílem mezi místními nákupy a místními nákupy @@ -1018,6 +1026,7 @@ CalcLocaltax2=Nákupy CalcLocaltax2Desc=Přehledy místních daní jsou součtem nákupů místních taxíků CalcLocaltax3=Odbyt CalcLocaltax3Desc=Přehledy místních daní představují celkový prodej místních tax +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=Štítky použité ve výchozím nastavení, pokud nelze najít překlad pro kód LabelOnDocuments=Štítek na dokumenty LabelOrTranslationKey=Klíč pro označení nebo překlad @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Zpráva o výdajích ke schválení Delays_MAIN_DELAY_HOLIDAYS=Leave requests to approve SetupDescription1=Než začnete používat Dolibarr, je třeba definovat některé počáteční parametry a povolit / konfigurovat moduly. SetupDescription2=Následující dvě části jsou povinné (první dvě položky v nabídce Nastavení): -SetupDescription3=%s ->%s
    Základní parametry používané k přizpůsobení výchozího chování vaší aplikace (např. Pro funkce související se zemí). -SetupDescription4=%s -> %s
    Tento software je sadou mnoha modulů/aplikací, které jsou více či méně nezávislé. Moduly odpovídající vašim potřebám musí být povoleny a nakonfigurovány. Nové položky/možnosti jsou přidány do menu s aktivací modulu. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. SetupDescription5=Ostatní položky nabídky nastavení řídí volitelné parametry. LogEvents=Události bezpečnostního auditu Audit=Audit @@ -1128,7 +1137,7 @@ LogEventDesc=Povolte protokolování pro konkrétní události zabezpečení. Ad AreaForAdminOnly=Parametry nastavení mohou být nastaveny pouze uživateli administrátora . SystemInfoDesc=Systémové informace jsou různé technické informace, které získáte pouze v režimu pro čtení a viditelné pouze pro správce. SystemAreaForAdminOnly=Tato oblast je k dispozici pouze uživatelům správce. Uživatelské oprávnění Dolibarr nemůže toto omezení měnit. -CompanyFundationDesc=Edit the information of the company/entity. Click on "%s" button at the bottom of the page. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. AccountantFileNumber=Accountant code DisplayDesc=Parametry ovlivňující vzhled a chování nástroje Dolibarr lze zde změnit. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Pravidla pro generování a ověřování hesel DisableForgetPasswordLinkOnLogonPage=Na stránce Přihlášení nezobrazujte odkaz Zapomenuté heslo UsersSetup=Uživatelé modul nastavení UserMailRequired=K vytvoření nového uživatele potřebujete e-mail +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### HRMSetup=setup HRM Modul ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Modely dokumentů faktur BillsPDFModulesAccordindToInvoiceType=Modely dokladů faktur podle typu faktury PaymentsPDFModules=Vzory platebních dokumentů ForceInvoiceDate=Vynutit datum fakturace k datu ověření -SuggestedPaymentModesIfNotDefinedInInvoice=Navrhované platby režimu na faktuře ve výchozím nastavení, pokud není definován pro faktury +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice SuggestPaymentByRIBOnAccount=Navrhněte platbu výběrem na účet SuggestPaymentByChequeToAddress=Navrhněte platbu šekem na FreeLegalTextOnInvoices=Volný text na fakturách @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Nastavení plateb dodavatelů PropalSetup=Nastavení modulů komerčních návrhů ProposalsNumberingModules=Modelové modely číslování návrhů ProposalsPDFModules=Komerční návrh doklady modely -SuggestedPaymentModesIfNotDefinedInProposal=Navrhovaný režim platby na návrh ve výchozím nastavení, pokud není definován pro návrh +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal FreeLegalTextOnProposal=Volný text o obchodních návrhů WatermarkOnDraftProposal=Vodoznak v návrhových komerčních návrzích (žádný není prázdný) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Zeptejte se na umístění bankovního účtu nabídky @@ -1322,6 +1334,7 @@ WAREHOUSE_ASK_WAREHOUSE_DURING_ORDER=Zadat zdroj datového skladu pro objednávk ##### Suppliers Orders ##### BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_ORDER=Požádejte o umístění bankovního účtu objednávky ##### Orders ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=Nastavení řízení nákupních objednávek OrdersNumberingModules=Objednávky číslování modelů OrdersModelModule=Objednat dokumenty modely @@ -1720,7 +1733,7 @@ MultiCompanySetup=Nastavení více firemních modulů ##### Suppliers ##### SuppliersSetup=Nastavení modulu dodavatele SuppliersCommandModel=Complete template of Purchase Order -SuppliersCommandModelMuscadet=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) SuppliersInvoiceModel=Complete template of Vendor Invoice SuppliersInvoiceNumberingModel=Číslovací modely faktur dodavatelů IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Skrýt obrázky v Top nabídky LeftMenuBackgroundColor=barva pozadí na levé menu BackgroundTableTitleColor=Barva pozadí pro tabulku názvu linky BackgroundTableTitleTextColor=Barva textu pro název řádku tabulky +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Barva pozadí pro liché řádky tabulky BackgroundTableLineEvenColor=barva pozadí pro sudé řádky tabulky MinimumNoticePeriod=Minimální výpovědní lhůta (Vaše žádost dovolená musí být provedeno před tímto zpožděním) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Dolibarr Reference not found in Message ID FormatZip=Zip MainMenuCode=Vstupní kód nabídky (hlavní menu) ECMAutoTree=Zobrazit automatický strom ECM -OperationParamDesc=Definujte hodnoty, které chcete použít pro akci, nebo jak extrahovat hodnoty. Například:
    objproperty1 = SET: abc
    objproperty1 = SET: hodnota s nahrazením __objproperty1__
    objproperty3 = SETIFEMPTY: abc
    objproperty4 = EXTRACT: HEADER: X-Myheaderkey. * [^ s] + (. *)
    options_myextrafield = EXTRACT: SUBJECT: ([^]] *)
    object.objproperty5 = EXTRACT: BODY: Název mé společnosti je (^ ^] *)

    Použijte; char jako oddělovač extrahovat nebo nastavit několik vlastností. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Otevírací doba OpeningHoursDesc=Zadejte zde běžnou pracovní dobu vaší společnosti. ResourceSetup=Konfigurace modulu zdrojů @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Varování, vyšší hodnoty dramaticky 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 +ImportSetup=Setup of module Import InstanceUniqueID=Jedinečné ID instance SmallerThan=Menší než LargerThan=Větší než @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled EmailTemplate=Template for email EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/cs_CZ/bills.lang b/htdocs/langs/cs_CZ/bills.lang index a08717ba138..85a6e50bad3 100644 --- a/htdocs/langs/cs_CZ/bills.lang +++ b/htdocs/langs/cs_CZ/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Faktury dodavatelů SupplierBill=Faktura dodavatele SupplierBills=Faktury dodavatelů Payment=Platba -PaymentBack=Vrácení platby -CustomerInvoicePaymentBack=Vrácení platby +PaymentBack=Vrácení +CustomerInvoicePaymentBack=Vrácení Payments=Platby PaymentsBack=Refunds paymentInInvoiceCurrency=v měně faktur PaidBack=Navrácené DeletePayment=Odstranit platby ConfirmDeletePayment=Jste si jisti, že chcete smazat tuto platbu? -ConfirmConvertToReduc=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. -ConfirmConvertToReducSupplier=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. SupplierPayments=Platby dodavatele ReceivedPayments=Přijaté platby @@ -209,17 +209,13 @@ NumberOfBillsByMonth=Počet faktur za měsíc AmountOfBills=Částka faktur AmountOfBillsHT=Výše faktur (bez daně) AmountOfBillsByMonthHT=Výše faktur za měsíc (bez daně) -ShowSocialContribution=Zobrazit sociální / fiskální daně -ShowBill=Zobrazit fakturu -ShowInvoice=Zobrazit fakturu -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 +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=To pay on %s toPayOn=to pay on %s RetainedWarranty=Retained Warranty @@ -230,7 +226,6 @@ 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 AlreadyPaidNoCreditNotesNoDeposits=Již zaplacené (bez dobropisů a vkladů) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Generated from template invoice %s WarningInvoiceDateInFuture=Upozornění: datum faktury je vyšší než aktuální datum WarningInvoiceDateTooFarInFuture=Upozornění: datum faktury je příliš daleko od aktuálního data ViewAvailableGlobalDiscounts=Zobrazit dostupné slevy +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Status PaymentConditionShortRECEP=Splatné k datu přijetí @@ -509,7 +505,7 @@ ToMakePayment=Zaplatit ToMakePaymentBack=Vrátit ListOfYourUnpaidInvoices=Seznam nezaplacených faktur NoteListOfYourUnpaidInvoices=Poznámka: Tento seznam obsahuje pouze faktury pro třetí strany které jsou propojeny na obchodního zástupce. -RevenueStamp=Kolek +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=Tato možnost je k dispozici pouze při vytváření faktury z karty "Zákazník" subjektu YouMustCreateInvoiceFromSupplierThird=Tato možnost je k dispozici pouze při vytváření faktury z karty "Prodejce" subjektu YouMustCreateStandardInvoiceFirstDesc=Musíte nejprve vytvořit standardní fakturu a převést ji do „šablony“ pro vytvoření nové šablony faktury @@ -575,3 +571,4 @@ AutoFillDateTo=Nastavte datum ukončení servisního řádku s dalším datem fa AutoFillDateToShort=Nastavte datum ukončení MaxNumberOfGenerationReached=Maximální počet gen. dosáhl BILL_DELETEInDolibarr=faktura smazána +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/cs_CZ/blockedlog.lang b/htdocs/langs/cs_CZ/blockedlog.lang index c81d53c65c2..bb64468a731 100644 --- a/htdocs/langs/cs_CZ/blockedlog.lang +++ b/htdocs/langs/cs_CZ/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Nezměnitelné záznamy ShowAllFingerPrintsMightBeTooLong=Zobrazit všechny archivované záznamy (mohou být dlouhé) ShowAllFingerPrintsErrorsMightBeTooLong=Zobrazit všechny neplatné protokoly archivu (mohou být dlouhé) DownloadBlockChain=Stažení otisků prstů -KoCheckFingerprintValidity=Archivovaná položka protokolu není platná. To znamená, že někdo (hacker?) Změnil některé údaje o tomto re po nahrání nebo vymazal předchozí archivovaný záznam (zkontrolujte, zda existuje řádek s předchozím #). +KoCheckFingerprintValidity=Archivovaná položka protokolu není platná. To znamená, že někdo (hacker?) upravil některá data tohoto záznamu poté, co byl zaznamenán, nebo vymazal předchozí archivovaný záznam (zkontrolujte, zda existuje řádek s předchozím #). OkCheckFingerprintValidity=Archivovaný záznam protokolu je platný. Údaje na tomto řádku nebyly změněny a záznam je následující. OkCheckFingerprintValidityButChainIsKo=Archivovaný protokol se zdá být v porovnání s předchozím protokolem platný, ale řetězec byl dříve poškozen. AddedByAuthority=Uloženo do vzdálené autority diff --git a/htdocs/langs/cs_CZ/cashdesk.lang b/htdocs/langs/cs_CZ/cashdesk.lang index f5c5835ecc9..27fbe7b11e4 100644 --- a/htdocs/langs/cs_CZ/cashdesk.lang +++ b/htdocs/langs/cs_CZ/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Přidat tento článek RestartSelling=Vraťte se na prodej SellFinished=Sale complete PrintTicket=Tisk dokladu +SendTicket=Send ticket NoProductFound=Žádný článek nalezen ProductFound=vyhledané výrobky NoArticle=Žádný článek @@ -48,6 +49,7 @@ Footer=Zápatí AmountAtEndOfPeriod=Částka na konci období (den, měsíc nebo rok) TheoricalAmount=Teoretická částka RealAmount=Skutečná částka +CashFence=Cash fence CashFenceDone=Peněžní oplatek za období NbOfInvoices=Některé z faktur Paymentnumpad=Zadejte Pad pro vložení platby @@ -58,8 +60,9 @@ TakeposNeedsCategories=Firma TakePOS potřebuje k tomu produktové kategorie OrderNotes=Objednací poznámky CashDeskBankAccountFor=Výchozí účet, který se má použít pro platby v účtu NoPaimementModesDefined=V konfiguraci TakePOS není definován žádný režim platby -TicketVatGrouped=Skupinová DPH dle sazeb na lístcích -AutoPrintTickets=Automaticky tisknout vstupenky +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Povolit funkce pro Bar nebo Restaurace ConfirmDeletionOfThisPOSSale=Potvrzujete, že jste tento prodej zrušili? ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? @@ -87,7 +90,19 @@ HeadBar=Head Bar SortProductField=Field for sorting products Browser=Prohlížeč BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/cs_CZ/commercial.lang b/htdocs/langs/cs_CZ/commercial.lang index def4e02f40b..6224ac01080 100644 --- a/htdocs/langs/cs_CZ/commercial.lang +++ b/htdocs/langs/cs_CZ/commercial.lang @@ -1,6 +1,6 @@ # Dolibarr language file - Source file is en_US - commercial -Commercial=Commerce -CommercialArea=Commerce area +Commercial=komerce +CommercialArea=Obchodní oblast Customer=Zákazník Customers=Zákazníci Prospect=Cíl diff --git a/htdocs/langs/cs_CZ/companies.lang b/htdocs/langs/cs_CZ/companies.lang index 4cc4191e3e9..ce0b18caed1 100644 --- a/htdocs/langs/cs_CZ/companies.lang +++ b/htdocs/langs/cs_CZ/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted=Společnost %s odstraněna z databáze. ListOfContacts=Seznam kontaktů/adres ListOfContactsAddresses=Seznam kontaktů/adres ListOfThirdParties=Seznam subjektů -ShowCompany=Zobrazit subjekt ShowContact=Zobrazit kontakt ContactsAllShort=Vše (Bez filtru) ContactType=Typ kontaktu @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=Jméno obchodního zástupce SaleRepresentativeLastname=Příjmení obchodního zástupce ErrorThirdpartiesMerge=Při odstraňování subjektů došlo k chybě. Zkontrolujte protokol. Změny byly vráceny. NewCustomerSupplierCodeProposed=Kód zákazníka nebo dodavatele již byl použit, je doporučen nový kód +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Typ platby - Zákazník PaymentTermsCustomer=Platební podmínky - Zákazník diff --git a/htdocs/langs/cs_CZ/compta.lang b/htdocs/langs/cs_CZ/compta.lang index c7e1a7ea7e8..5d746c572bf 100644 --- a/htdocs/langs/cs_CZ/compta.lang +++ b/htdocs/langs/cs_CZ/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=Viz %sanalýza plateb %spro výpočet skutečných pl SeeReportInDueDebtMode=Viz %sanalýza faktur %s pro výpočet založený na známých zaznamenaných fakturách, i když ještě nejsou účtovány v Ledgeru. SeeReportInBookkeepingMode=Viz část %sKontrola report %s pro výpočet na Tabulce účtů účetnictví RulesAmountWithTaxIncluded=- Uvedené částky jsou se všemi daněmi -RulesResultDue=- To zahrnuje neuhrazené faktury, výdaje a DPH, zda byly zaplaceny či nikoliv.
    - Je založen na ověřených datech faktur a DPH a ke dni splatnosti pro náklady. Platy definované s plat modulem, použije se datum splatnosti platby. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- To zahrnuje skutečné platby na fakturách, nákladů, DPH a platů.
    - Je založen na datech plateb faktur, náklady, DPH a platů. Datum daru pro dárcovství. -RulesCADue=- To zahrnuje splatné faktury klienta, zda byly zaplaceny či nikoliv.
    - Je založen na datum ověření těchto faktur
    . +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- Zahrnuje všechny efektivní platby faktur obdržených od zákazníků.
    - Je založeno na datu splatnosti těchto faktur
    RulesCATotalSaleJournal=Zahrnuje všechny úvěrové linky z žurnálu Prodej. RulesAmountOnInOutBookkeepingRecord=Zahrnuje záznam ve vašem účtu Ledger s účetními účty, které mají skupinu "EXPENSE" nebo "INCOME" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Obrat je fakturován sazbou daně z prodeje TurnoverCollectedbyVatrate=Obrat shromážděný podle sazby daně z prodeje PurchasebyVatrate=Nákup podle sazby daně z prodeje LabelToShow=Krátký štítek +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/cs_CZ/deliveries.lang b/htdocs/langs/cs_CZ/deliveries.lang index 484ad45eeb9..e38b668da7f 100644 --- a/htdocs/langs/cs_CZ/deliveries.lang +++ b/htdocs/langs/cs_CZ/deliveries.lang @@ -2,7 +2,7 @@ Delivery=Dodávka DeliveryRef=Ref Doručení DeliveryCard=Příjmová karta -DeliveryOrder=Delivery receipt +DeliveryOrder=Potvrzení o doručení DeliveryDate=Termín dodání CreateDeliveryOrder=Generovat doklad o doručení DeliveryStateSaved=Stav doručení byl uložen diff --git a/htdocs/langs/cs_CZ/errors.lang b/htdocs/langs/cs_CZ/errors.lang index 6cc550bed4b..9ec1ad76886 100644 --- a/htdocs/langs/cs_CZ/errors.lang +++ b/htdocs/langs/cs_CZ/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=Soubor nebyl korektně poslán serverem ErrorNoTmpDir=Dočasné directy %s neexistuje. ErrorUploadBlockedByAddon=Nahrávání blokováno pluginem PHP / Apache. ErrorFileSizeTooLarge=Soubor je příliš velký. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Velikost příliš dlouhá pro typ int (%s číslice maximum) ErrorSizeTooLongForVarcharType=Velikost příliš dlouho typu string (%s znaků maximum) ErrorNoValueForSelectType=Vyplňte prosím hodnotu pro vybraný seznam @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # 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. diff --git a/htdocs/langs/cs_CZ/exports.lang b/htdocs/langs/cs_CZ/exports.lang index 5f71e297bf6..85d98be9e68 100644 --- a/htdocs/langs/cs_CZ/exports.lang +++ b/htdocs/langs/cs_CZ/exports.lang @@ -26,6 +26,8 @@ FieldTitle=Pole název NowClickToGenerateToBuildExportFile=Nyní vyberte formát souboru v poli se seznamem a klikněte na "Generovat" pro vytvoření exportního souboru ... AvailableFormats=Dostupné formáty LibraryShort=Knihovna +ExportCsvSeparator=Oddělovač Csv caracter +ImportCsvSeparator=Oddělovač Csv caracter Step=Krok FormatedImport=Asistent importu FormatedImportDesc1=Tento modul umožňuje aktualizaci stávajících dat nebo přidávání nových objektů do databáze ze souboru bez technických znalostí pomocí asistenta. @@ -37,7 +39,7 @@ FormatedExportDesc3=Při výběru dat pro export můžete zvolit formát výstup Sheet=List NoImportableData=Žádné importovatelné údaje (žádný modul s definicemi povolení importu dat) FileSuccessfullyBuilt=Soubor byl vygenerován -SQLUsedForExport=SQL Request used to extract data +SQLUsedForExport=Dotaz SQL použitý k extrahování dat LineId=Id řádku LineLabel=Označení řádku LineDescription=Popis řádku diff --git a/htdocs/langs/cs_CZ/install.lang b/htdocs/langs/cs_CZ/install.lang index 46aa42ac0a4..bdc4d493fd7 100644 --- a/htdocs/langs/cs_CZ/install.lang +++ b/htdocs/langs/cs_CZ/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=Tato konfigurace PHP podporuje Curl. PHPSupportCalendar=This PHP supports calendars extensions. PHPSupportUTF8=Tato PHP instalace podporuje UTF8 funkce. PHPSupportIntl=Tato instalace PHP podporuje funkce Intl. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=This PHP supports %s functions. PHPMemoryOK=Maximální velikost relace je nastavena na %s. To by mělo stačit. PHPMemoryTooLow=Maximální velikost relace je nastavena na %s bajtů. To bohužel nestačí. Zvyšte svůj parametr memory_limit ve Vašem php.ini na minimální velikost %s bajtů. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=Vaše instalace PHP nepodporuje Curl. ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. ErrorPHPDoesNotSupportUTF8=Tato PHP instalace nepodporuje UTF8 funkce. Tato funkce je nutná, pro správnou funkčnost Dolibarr. Zkontrolujte Vaše PHP nastavení. ErrorPHPDoesNotSupportIntl=Instalace PHP nepodporuje funkce Intl. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. ErrorDirDoesNotExists=Adresář %s neexistuje. ErrorGoBackAndCorrectParameters=Vraťte se zpět a zkontrolujte / opravte špatné parametry. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=Aplikace se pokoušela samoinnicializovat, ale st YouTryInstallDisabledByFileLock=Aplikace se pokoušela o vlastní inovaci, ale stránky s instalací / upgradem byly zakázány z důvodu zabezpečení (existence souboru zámku install.lock v adresáři dokumentů dolibarr).
    ClickHereToGoToApp=Kliknutím sem přejdete do aplikace ClickOnLinkOrRemoveManualy=Klikněte na následující odkaz. Pokud vždy vidíte stejnou stránku, musíte odstranit / přejmenovat soubor install.lock v adresáři dokumentů. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/cs_CZ/interventions.lang b/htdocs/langs/cs_CZ/interventions.lang index 3c39ac6a792..f9dc01287b0 100644 --- a/htdocs/langs/cs_CZ/interventions.lang +++ b/htdocs/langs/cs_CZ/interventions.lang @@ -41,9 +41,7 @@ InterventionsArea=Oblast intervencí DraftFichinter=Návrhy intervence LastModifiedInterventions=Poslední %s modifikované intervence FichinterToProcess=Zpracovávané intervence -##### Types de contacts ##### TypeContact_fichinter_external_CUSTOMER=V návaznosti kontakt se zákazníkem -# Modele numérotation PrintProductsOnFichinter=Tisk také řádky typu „produktu“ (nejen služby) na intervenční karty PrintProductsOnFichinterDetails=intervence generované z objednávek UseServicesDurationOnFichinter=Doba použití služby pro zásahy generovaných z objednávek @@ -53,7 +51,6 @@ InterventionStatistics=Statistiky intervencí NbOfinterventions=Počet zásahových karet NumberOfInterventionsByMonth=Počet intervenčních karet podle měsíce (datum platnosti) AmountOfInteventionNotIncludedByDefault=Částka intervence není zahrnutá do výkazu zisku (ve většině případů se časové pásmo používá k počítání vynaloženého času). Přidejte možnost PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT na hodnotu 1 do domova-nastavení-jiné, abyste je zahrnovali. -##### Exports ##### InterId=intervence id InterRef=Intervence ref. InterDateCreation=Datum vytvoření intervence @@ -65,3 +62,5 @@ InterLineId=Linka ID intervence InterLineDate=Řádek data intervence InterLineDuration=Linka trvání intervence InterLineDesc=Linka popis intervence +RepeatableIntervention=Šablona intervence +ToCreateAPredefinedIntervention=Chcete-li vytvořit předdefinovaný nebo opakující se zásah, vytvořte společný zásah a převeďte jej na intervenční šablonu diff --git a/htdocs/langs/cs_CZ/languages.lang b/htdocs/langs/cs_CZ/languages.lang index 81c1e8e5a31..53bbcc27024 100644 --- a/htdocs/langs/cs_CZ/languages.lang +++ b/htdocs/langs/cs_CZ/languages.lang @@ -65,7 +65,7 @@ Language_mk_MK=Makedonský Language_mn_MN=Mongolian Language_nb_NO=Norština (Bokmål) Language_nl_BE=Nizozemí (Belgie) -Language_nl_NL=Dutch +Language_nl_NL=holandský Language_pl_PL=Polsky Language_pt_BR=Portugalština (Brazílie) Language_pt_PT=Portugalština diff --git a/htdocs/langs/cs_CZ/link.lang b/htdocs/langs/cs_CZ/link.lang index ed6714e9cc6..310b3935630 100644 --- a/htdocs/langs/cs_CZ/link.lang +++ b/htdocs/langs/cs_CZ/link.lang @@ -1,10 +1,11 @@ # Dolibarr language file - Source file is en_US - languages -LinkANewFile=Odkaz na nový soubor/dokument -LinkedFiles=Odkaz na soubory a dokumenty -NoLinkFound=Neregistrovaný odkaz -LinkComplete=Soubor byl úspěšně propojen -ErrorFileNotLinked=Soubor nemohl být propojen +LinkANewFile=Připojit nový soubor/dokument +LinkedFiles=Připojené soubory a dokumenty +NoLinkFound=Žádné odkazy +LinkComplete=Soubor byl úspěšně připojen +ErrorFileNotLinked=Soubor nemohl být připojen LinkRemoved=Odkaz %s byl odstraněn ErrorFailedToDeleteLink= Nepodařilo se odstranit odkaz '%s' ErrorFailedToUpdateLink= Nepodařilo se aktualizovat odkaz '%s' -URLToLink=URL to link +URLToLink=Připojit URL +OverwriteIfExists=Pokud existuje, přepište soubor diff --git a/htdocs/langs/cs_CZ/mails.lang b/htdocs/langs/cs_CZ/mails.lang index b98921f4106..a8bbd0da669 100644 --- a/htdocs/langs/cs_CZ/mails.lang +++ b/htdocs/langs/cs_CZ/mails.lang @@ -78,9 +78,9 @@ GroupEmails=Skupinové e-maily OneEmailPerRecipient=Jeden e-mail na jednoho příjemce (ve výchozím nastavení je vybrán jeden e-mail na záznam) WarningIfYouCheckOneRecipientPerEmail=Upozorňujeme, že pokud zaškrtnete toto políčko, znamená to, že bude odesláno pouze jeden e-mail pro několik vybraných záznamů, takže pokud vaše zpráva obsahuje substituční proměnné, které odkazují na data záznamu, nebude možné je nahradit. ResultOfMailSending=Výsledek masového odesílání e-mailu -NbSelected=Number selected -NbIgnored=Number ignored -NbSent=Number sent +NbSelected=Vybrané číslo +NbIgnored=Číslo ignorováno +NbSent=Číslo bylo odesláno SentXXXmessages=%s odeslaná zpráva(y). ConfirmUnvalidateEmailing=Opravdu chcete změnit e-mail %s pro návrh stavu? MailingModuleDescContactsWithThirdpartyFilter=Kontakt s filtry zákazníků @@ -164,7 +164,7 @@ NoContactWithCategoryFound=Žádný kontakt / adresa s nalezenou kategorií NoContactLinkedToThirdpartieWithCategoryFound=Žádný kontakt / adresa s nalezenou kategorií OutGoingEmailSetup=Nastavení odchozí pošty InGoingEmailSetup=Příchozí nastavení e-mailu -OutGoingEmailSetupForEmailing=Nastavení odchozích e-mailů (pro hromadné zasílání e-mailů) +OutGoingEmailSetupForEmailing=Nastavení odchozí pošty (pro modul %s) DefaultOutgoingEmailSetup=Výchozí nastavení odchozí pošty Information=Informace ContactsWithThirdpartyFilter=Kontakty s filtrem subjektu diff --git a/htdocs/langs/cs_CZ/main.lang b/htdocs/langs/cs_CZ/main.lang index d85d85de4e8..827bdef2db1 100644 --- a/htdocs/langs/cs_CZ/main.lang +++ b/htdocs/langs/cs_CZ/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Save and stay SaveAndNew=Save and new TestConnection=Zkušební připojení ToClone=Klon +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Vyberte data, která chcete klonovat: NoCloneOptionsSpecified=Nejsou definovány žádné údaje ke klonování. Of=z @@ -829,6 +830,8 @@ Gender=Pohlaví Genderman=Muž Genderwoman=Žena ViewList=Zobrazení seznamu +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=povinné Hello=Ahoj GoodBye=No, nazdar ... @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Select your graph options to build a graph Measures=Measures XAxis=X-Axis YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/cs_CZ/margins.lang b/htdocs/langs/cs_CZ/margins.lang index 5e183d746a9..be4b9a60b78 100644 --- a/htdocs/langs/cs_CZ/margins.lang +++ b/htdocs/langs/cs_CZ/margins.lang @@ -16,29 +16,30 @@ MarginDetails=Detaily marže ProductMargins=Produktová marže CustomerMargins=Zákaznická marže SalesRepresentativeMargins=Obchodní zástupce marže +ContactOfInvoice=Kontakt na fakturu UserMargins=Uživatelské marže ProductService=Produkt nebo služba AllProducts=Všechny produkty a služby ChooseProduct/Service=Zvolte produkt nebo službu -ForceBuyingPriceIfNull=Force buying/cost price to selling price if not defined -ForceBuyingPriceIfNullDetails=If buying/cost price not defined, and this option "ON", margin will be zero on line (buying/cost price = selling price), otherwise ("OFF"), marge will be equal to suggested default. +ForceBuyingPriceIfNull=Nákup síly/cena za cenu prodejní ceny, pokud není definována +ForceBuyingPriceIfNullDetails=Není-li cena nákupu / cena stanovena a tato volba je zapnutá, bude marže nulová na řádku (cena nákupu / prodejní cena = prodejní cena), v opačném případě ("OFF") se marge rovná navrhovanému selhání. MARGIN_METHODE_FOR_DISCOUNT=Metoda marže pro globální slevy UseDiscountAsProduct=Jako produkt UseDiscountAsService=Jako služba UseDiscountOnTotal=Na mezisoučet MARGIN_METHODE_FOR_DISCOUNT_DETAILS=Definuje, zda globální sleva je považován za výrobek, službu, nebo pouze za mezisoučet pro výpočet marže. -MARGIN_TYPE=Buying/Cost price suggested by default for margin calculation -MargeType1=Margin on Best vendor price -MargeType2=Margin on Weighted Average Price (WAP) -MargeType3=Margin on Cost Price -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 +MARGIN_TYPE=Nákupní/prodejní cena implicitně navrhovaná pro výpočet marže +MargeType1=Marže za nejlepší cenu dodavatele +MargeType2=Marže z vážené průměrné ceny (WAP) +MargeType3=Marže z prodejní ceny +MarginTypeDesc=* Rozpětí pro nejlepší nákupní cenu = Prodejní cena - Nejlepší cena prodejce definovaná na produktové kartě
    * Marže na váženou průměrnou cenu (WAP) = Prodejní cena (WAP) nebo nejlepší cena prodejce, pokud WAP ještě není definován
    * Marže na nákladové ceně = Prodejní cena - Nákladová cena definovaná na produktové kartě nebo WAP, pokud cena není definována, nebo nejlepší cena prodejce, pokud WAP ještě není definován CostPrice=Náklady UnitCharges=Jednotkové poplatky Charges=Poplatky AgentContactType=Obchodní zástupce - typ kontaktu -AgentContactTypeDetails=Definujete, jaký typ kontaktu (propojený na fakturách) bude použit pro zprávu o marži pro prodejního zástupce +AgentContactTypeDetails=Určete, jaký typ kontaktu (propojený na fakturách) bude použit pro hlášení marží na jeden kontakt / adresu. Čtení statistik o kontaktu není spolehlivé, protože ve většině případů nemusí být kontakt výslovně definován na fakturách. rateMustBeNumeric=Hodnocení musí být číselná hodnota markRateShouldBeLesserThan100=Označení sazby by měla být nižší než 100 ShowMarginInfos=Ukázat informace o marži -CheckMargins=Margins detail -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). +CheckMargins=Detail marže +MarginPerSaleRepresentativeWarning=Zpráva o marži na uživatele používá spojení mezi subjekty a prodejními zástupci pro výpočet marže každého prodejního zástupce. Vzhledem k tomu, že některé subjekty nemusí mít žádný specializovaný prodej a některé subjekty mohou být propojeny s několika, některé částky nemusí být zahrnuty do této zprávy (pokud neexistuje obchodní zástupce) a některé se mohou objevit na různých řádcích (u každého prodejce) . diff --git a/htdocs/langs/cs_CZ/modulebuilder.lang b/htdocs/langs/cs_CZ/modulebuilder.lang index e339de2a10d..d97c60a25a2 100644 --- a/htdocs/langs/cs_CZ/modulebuilder.lang +++ b/htdocs/langs/cs_CZ/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=List of dictionaries entries ListOfPermissionsDefined=Seznam definovaných oprávnění SeeExamples=Viz příklady zde EnabledDesc=Podmínka, aby bylo toto pole aktivní (příklady: 1 nebo $ conf-> global-> MYMODULE_MYOPTION) -VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update). Using a negative value means field is not shown by default on list but can be selected for viewing). It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty DisplayOnPdf=Display on PDF IsAMeasureDesc=Může být hodnota pole kumulativní, aby se dostala do seznamu celkem? (Příklady: 1 nebo 0) SearchAllDesc=Používá se pole pro vyhledávání pomocí nástroje rychlého vyhledávání? (Příklady: 1 nebo 0) diff --git a/htdocs/langs/cs_CZ/multicurrency.lang b/htdocs/langs/cs_CZ/multicurrency.lang index 463f47b837e..602f80e50e4 100644 --- a/htdocs/langs/cs_CZ/multicurrency.lang +++ b/htdocs/langs/cs_CZ/multicurrency.lang @@ -18,3 +18,5 @@ MulticurrencyReceived=Přijatá, původní měna MulticurrencyRemainderToTake=Zbývající částka, původní měna MulticurrencyPaymentAmount=Výše platby, původní měna AmountToOthercurrency=Částka (v měně přijatého účtu) +CurrencyRateSyncSucceed=Synchronizace měnového kurzu proběhla úspěšně +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Pro online platby použijte měnu dokumentu diff --git a/htdocs/langs/cs_CZ/opensurvey.lang b/htdocs/langs/cs_CZ/opensurvey.lang index bc050e5a4d0..a492c7dc953 100644 --- a/htdocs/langs/cs_CZ/opensurvey.lang +++ b/htdocs/langs/cs_CZ/opensurvey.lang @@ -1,7 +1,7 @@ # Dolibarr language file - Source file is en_US - opensurvey Survey=Hlasování Surveys=Ankety -OrganizeYourMeetingEasily=Organize your meetings and polls easily. First select the type of poll... +OrganizeYourMeetingEasily=Organizujte snadno své schůzky a hlasování. Nejprve vyberte typ hlasování ... NewSurvey=Nové hlasování OpenSurveyArea=Oblast anket AddACommentForPoll=Můžete přidat komentář do hlasování ... diff --git a/htdocs/langs/cs_CZ/other.lang b/htdocs/langs/cs_CZ/other.lang index 2e234b393ef..568b1eac8c4 100644 --- a/htdocs/langs/cs_CZ/other.lang +++ b/htdocs/langs/cs_CZ/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Objednávka prodeje byla ověřena Notify_ORDER_SENTBYMAIL=Prodejní objednávka byla odeslána mailem Notify_ORDER_SUPPLIER_SENTBYMAIL=Objednávka byla odeslána e-mailem @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=URL stránky WEBSITE_TITLE=Titul WEBSITE_DESCRIPTION=Popis WEBSITE_IMAGE=obraz -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Klíčová slova LinesToImport=Řádky, které chcete importovat diff --git a/htdocs/langs/cs_CZ/paybox.lang b/htdocs/langs/cs_CZ/paybox.lang index f93de432261..f7c38c948a9 100644 --- a/htdocs/langs/cs_CZ/paybox.lang +++ b/htdocs/langs/cs_CZ/paybox.lang @@ -10,7 +10,7 @@ ToComplete=Chcete-li dokončit YourEMail=E-mail pro potvrzení platby Creditor=Věřitel PaymentCode=Platební kód -PayBoxDoPayment=Pay with Paybox +PayBoxDoPayment=Plaťte pomocí Payboxu YouWillBeRedirectedOnPayBox=Budete přesměrováni na zabezpečené stránky Paybox pro vstupní informace o kreditní kartě Continue=Další SetupPayBoxToHavePaymentCreatedAutomatically=Nastavte svůj Paybox pomocí url %s aby se platba automaticky vytvořila při ověření Payboxu. @@ -28,4 +28,4 @@ PAYBOX_PAYONLINE_SENDEMAIL=E-mail pro upozornění po platbě (úspěch nebo sel PAYBOX_PBX_SITE=Hodnota PBX SITE PAYBOX_PBX_RANG=Hodnota pro PBX rozsah PAYBOX_PBX_IDENTIFIANT=Hodnota pro PBX ID -PAYBOX_HMAC_KEY=HMAC key +PAYBOX_HMAC_KEY=Klíč HMAC diff --git a/htdocs/langs/cs_CZ/products.lang b/htdocs/langs/cs_CZ/products.lang index 868ea8447a5..b9baf58d160 100644 --- a/htdocs/langs/cs_CZ/products.lang +++ b/htdocs/langs/cs_CZ/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=Tento nástroj aktualizuje sazbu DPH definovanou na pro MassBarcodeInit=Hromadný čárový kód inicializace MassBarcodeInitDesc=Tato stránka může být použita k inicializaci čárového kódu na objekty, které nemají definovaný čárový kód. Zkontrolujte před touto akcí, zda je nastavení modulu čárového kódu kompletní. ProductAccountancyBuyCode=Účetní kód (nákup) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Účetní kód (prodej) ProductAccountancySellIntraCode=Účetní kód (prodej uvnitř Společenství) ProductAccountancySellExportCode=Účetní kód (exportní prodej) @@ -165,7 +167,7 @@ SuppliersPrices=Ceny prodejců SuppliersPricesOfProductsOrServices=Ceny prodejců (produktů nebo služeb) CustomCode=Kód cla / komodity / HS CountryOrigin=Země původu -Nature=Nature of produt (material/finished) +Nature=Nature of product (material/finished) ShortLabel=Krátký štítek Unit=Jednotka p=u. diff --git a/htdocs/langs/cs_CZ/projects.lang b/htdocs/langs/cs_CZ/projects.lang index d736ca6c502..4ec9466d21b 100644 --- a/htdocs/langs/cs_CZ/projects.lang +++ b/htdocs/langs/cs_CZ/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=which I'm linked to project Time=Čas ListOfTasks=Seznam úkolů GoToListOfTimeConsumed=Přejít na seznam času spotřebovaného -GoToListOfTasks=Show as list -GoToGanttView=show as Gantt GanttView=Gantt View ListProposalsAssociatedProject=Seznam komerčních návrhů týkajících se projektu ListOrdersAssociatedProject=Seznam prodejních zakázek týkajících se projektu @@ -188,7 +186,7 @@ PlannedWorkload=Plánované vytížení PlannedWorkloadShort=Pracovní zátěž ProjectReferers=Související zboží ProjectMustBeValidatedFirst=Projekt musí být nejdříve ověřen -FirstAddRessourceToAllocateTime=Přiřadit zdroj k vyčlenění času +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=Vstup za den InputPerWeek=Vstup za týden InputPerMonth=Input per month @@ -240,6 +238,7 @@ LatestModifiedProjects=Nejnovější %smodifikované projekty OtherFilteredTasks=Další filtrované úkoly NoAssignedTasks=Nebyly nalezeny žádné přiřazené úkoly (přiřadit projekt / úkoly aktuálnímu uživateli z horního výběrového pole pro zadání času na něm) ThirdPartyRequiredToGenerateInvoice=Subjekt musí být definován na projektu, aby mohl fakturovat. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=Povolení uživatelských komentářů k úkolům AllowCommentOnProject=Umožňuje uživatelským komentářům k projektům @@ -256,7 +255,7 @@ ServiceToUseOnLines=Služba pro použití na tratích InvoiceGeneratedFromTimeSpent=Faktura %s byla vygenerována z času stráveného na projektu ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. ProjectFollowOpportunity=Follow opportunity -ProjectFollowTasks=Follow tasks +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Usage: Opportunity UsageTasks=Usage: Tasks @@ -265,3 +264,4 @@ InvoiceToUse=Draft invoice to use NewInvoice=Nová faktura OneLinePerTask=One line per task OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/cs_CZ/propal.lang b/htdocs/langs/cs_CZ/propal.lang index 13c7456a1dd..f5fa0209917 100644 --- a/htdocs/langs/cs_CZ/propal.lang +++ b/htdocs/langs/cs_CZ/propal.lang @@ -76,11 +76,11 @@ TypeContact_propal_external_BILLING=Fakturační kontakt zákazníka TypeContact_propal_external_CUSTOMER=Kontakt se zákazníkem pro následující vypracované nabídky TypeContact_propal_external_SHIPPING=Zákaznický kontakt pro doručení # Document models -DocModelAzurDescription=A complete proposal model -DocModelCyanDescription=A complete proposal model +DocModelAzurDescription=Kompletní návrhový model (stará implementace azurové šablony) +DocModelCyanDescription=Kompletní návrhový model DefaultModelPropalCreate=Tvorba z výchozí šablony DefaultModelPropalToBill=Výchozí šablona při uzavírání obchodní nabídky (bude se fakturovat) DefaultModelPropalClosed=Výchozí šablona při uzavírání obchodní nabídky (nevyfakturované) ProposalCustomerSignature=Písemný souhlas, razítko firmy, datum a podpis ProposalsStatisticsSuppliers=Statistika návrhů dodavatelů -CaseFollowedBy=Case followed by +CaseFollowedBy=Případ následovaný diff --git a/htdocs/langs/cs_CZ/receiptprinter.lang b/htdocs/langs/cs_CZ/receiptprinter.lang index 107887bca71..fd1a14ecd03 100644 --- a/htdocs/langs/cs_CZ/receiptprinter.lang +++ b/htdocs/langs/cs_CZ/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Dummy Printer CONNECTOR_NETWORK_PRINT=Síťová tiskárna CONNECTOR_FILE_PRINT=místní tiskárna CONNECTOR_WINDOWS_PRINT=Místní tiskárna Windows +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Fake tiskárna pro zkoušku, nedělá nic CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x: 9100 CONNECTOR_FILE_PRINT_HELP=/Dev/usb/lp0,/dev/usb/LP1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Výchozí profil PROFILE_SIMPLE=Zjednodušený profil PROFILE_EPOSTEP=Epos Tep Profile @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Invoice month in letters DOL_VALUE_MONTH=Invoice month DOL_VALUE_DAY=Invoice day DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Faktura ref +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Identifikační číslo DPH uvnitř Společenství +DOL_VALUE_MYSOC_CAPITAL=Kapitál +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/cs_CZ/receptions.lang b/htdocs/langs/cs_CZ/receptions.lang index 26d6208c97c..128f8c1cca0 100644 --- a/htdocs/langs/cs_CZ/receptions.lang +++ b/htdocs/langs/cs_CZ/receptions.lang @@ -1,5 +1,5 @@ # Dolibarr language file - Source file is en_US - receptions -ReceptionsSetup=Product Reception setup +ReceptionsSetup=Nastavení recepce produktu RefReception=Ref. recepce Reception=Recepce Receptions=Recepce @@ -41,5 +41,5 @@ ReceptionLine=Linka recepce ProductQtyInReceptionAlreadySent=Množství již odeslaných produktů z objednávek zákazníka ProductQtyInSuppliersReceptionAlreadyRecevied=Množství produktu již obdrženo od otevřené dodavatelské objednávky ValidateOrderFirstBeforeReception=Nejprve musíte potvrdit objednávku, než budete moci přijímat recepce. -ReceptionsNumberingModules=Numbering module for receptions -ReceptionsReceiptModel=Document templates for receptions +ReceptionsNumberingModules=Modul číslování pro recepce +ReceptionsReceiptModel=Šablony dokumentů pro recepce diff --git a/htdocs/langs/cs_CZ/resource.lang b/htdocs/langs/cs_CZ/resource.lang index c5043871a8c..d39d6007e21 100644 --- a/htdocs/langs/cs_CZ/resource.lang +++ b/htdocs/langs/cs_CZ/resource.lang @@ -5,8 +5,8 @@ DeleteResource=Smazat zdroj ConfirmDeleteResourceElement=Potvrďte odstranění zdroje pro tento element NoResourceInDatabase=Žádný zdroj v databázi. NoResourceLinked=Žádný propojený zdroj - -ResourcePageIndex=Výpis zdrojů +ActionsOnResource=Události týkající se tohoto zdroje +ResourcePageIndex=Seznam zdrojů ResourceSingular=Zdroj ResourceCard=Karta zdroje AddResource=Vytvořit zdroj @@ -18,7 +18,7 @@ ResourcesLinkedToElement=Zdroje propojené s prvkem ShowResource=Zobrazit zdroj -ResourceElementPage=Prvky zdrojů +ResourceElementPage=Zdroje prvku ResourceCreatedWithSuccess=Zdroj úspěšně vytvořen RessourceLineSuccessfullyDeleted=Propojení zdrojů bylo úspěšně odstraněno RessourceLineSuccessfullyUpdated=Propojení zdrojů bylo úspěšně aktualizováno @@ -30,7 +30,10 @@ DictionaryResourceType=Typy zdrojů SelectResource=Výběr zdroje -IdResource=Id resource -AssetNumber=Serial number -ResourceTypeCode=Resource type code +IdResource=Id zdroje +AssetNumber=Sériové číslo +ResourceTypeCode=Kód typu zdroje ImportDataset_resource_1=Zdroje + +ErrorResourcesAlreadyInUse=Některé zdroje se používají +ErrorResourceUseInEvent=%s použitý v %s události diff --git a/htdocs/langs/cs_CZ/salaries.lang b/htdocs/langs/cs_CZ/salaries.lang index c6518613796..3e5a2453e89 100644 --- a/htdocs/langs/cs_CZ/salaries.lang +++ b/htdocs/langs/cs_CZ/salaries.lang @@ -18,4 +18,4 @@ LastSalaries=Posledních %s plateb AllSalaries=Všechny mzdové platby SalariesStatistics=Statistika platů # Export -SalariesAndPayments=Salaries and payments +SalariesAndPayments=Platy a platby diff --git a/htdocs/langs/cs_CZ/stripe.lang b/htdocs/langs/cs_CZ/stripe.lang index 763e4862427..a0dd5814103 100644 --- a/htdocs/langs/cs_CZ/stripe.lang +++ b/htdocs/langs/cs_CZ/stripe.lang @@ -32,6 +32,7 @@ VendorName=Název dodavatele CSSUrlForPaymentForm=CSS styly url platebního formuláře NewStripePaymentReceived=Byla obdržena nová platba Stripe NewStripePaymentFailed=Pokus o novou Stripe platbu, ta ale selhala +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Tajný testovací klíč STRIPE_TEST_PUBLISHABLE_KEY=Testovatelný klíč pro publikování STRIPE_TEST_WEBHOOK_KEY=Testovací klíč Webhook @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Odkaz na nastavení Stripe WebHook pro volání IPN ( 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... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authenticatin rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/cs_CZ/supplier_proposal.lang b/htdocs/langs/cs_CZ/supplier_proposal.lang index 0cf790f22f3..4291db37a11 100644 --- a/htdocs/langs/cs_CZ/supplier_proposal.lang +++ b/htdocs/langs/cs_CZ/supplier_proposal.lang @@ -32,7 +32,7 @@ SupplierProposalStatusValidatedShort=Ověřeno SupplierProposalStatusClosedShort=Zavřeno SupplierProposalStatusSignedShort=Přijato SupplierProposalStatusNotSignedShort=Odmítnuto -CopyAskFrom=Vytvoření cenového požadavku zkopírováním stávající žádosti +CopyAskFrom=Vytvořte požadavek na cenu zkopírováním existujícího požadavku CreateEmptyAsk=Vytvořit prázdný požadavek ConfirmCloneAsk=Jste si jisti, že chcete naklonovat požadavek na cenu %s ? ConfirmReOpenAsk=Jste si jisti, že chcete otevřít zpět žádost o cenu %s ? diff --git a/htdocs/langs/cs_CZ/users.lang b/htdocs/langs/cs_CZ/users.lang index d96e14e53df..83d483648c6 100644 --- a/htdocs/langs/cs_CZ/users.lang +++ b/htdocs/langs/cs_CZ/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Uživatelé a jejich vlastnosti DomainUser=Doménový uživatel %s Reactivate=Reaktivace CreateInternalUserDesc=Tento formulář umožňuje vytvořit interní uživatele ve vaší společnosti / organizaci. Chcete-li vytvořit externího uživatele (zákazník, dodavatel atd.), použijte tlačítko "Vytvořit uživatele Dolibarr z karty kontaktu subjektu. -InternalExternalDesc=Interní uživatel je uživatel, který je součástí vaší firmy / nadace.
    Externí uživatel je zákazník, dodavatel nebo jiný.

    V obou případech se oprávněními definují práva na Dolibarr. Externí uživatel navíc může mít jinou nabídku menu než-li interní (viz Domů - Nastavení - Zobrazení) +InternalExternalDesc=Interní uživatel je uživatel, který je součástí vaší společnosti / organizace.
    Externí uživatel je zákazník, prodejce nebo jiný (Vytvoření externího uživatele pro subjekt lze provést z kontaktního záznamu subjektu).

    V obou případech oprávnění definují práva na Dolibarr, také externí uživatel může mít jiného správce menu než interní uživatel (viz Domů - Nastavení - Displej) PermissionInheritedFromAGroup=Povolení uděleno, neboť je zděděno z některé uživatelské skupiny. Inherited=Zděděný UserWillBeInternalUser=Vytvořený uživatel bude interní (protože není spojen s žádnou třetí stranou) @@ -78,6 +78,7 @@ UserWillBeExternalUser=Vytvořený uživatel bude externí (protože je spojen s IdPhoneCaller=Id telefonu volajícího NewUserCreated=Uživatel %s vytvořil NewUserPassword=Změna hesla pro %s +NewPasswordValidated=Vaše nové heslo bylo ověřeno a pro přihlášení jej musíte použít nyní. EventUserModified=Uživatel %s změněn UserDisabled=Uživatel %s zakázán UserEnabled=Uživatel %s aktivován @@ -113,3 +114,5 @@ CantDisableYourself=Nelze zakázat vlastní uživatelský záznam ForceUserExpenseValidator=Validator výkazu výdajů ForceUserHolidayValidator=Vynutit validátor žádosti o dovolenou ValidatorIsSupervisorByDefault=Ve výchozím nastavení je validátor nadřazený nad uživatelem. Chcete-li zachovat toto chování, ponechte prázdné. +UserPersonalEmail=Osobní email +UserPersonalMobile=Osobní mobilní telefon diff --git a/htdocs/langs/cs_CZ/website.lang b/htdocs/langs/cs_CZ/website.lang index 47303baa66c..252f8b08a8b 100644 --- a/htdocs/langs/cs_CZ/website.lang +++ b/htdocs/langs/cs_CZ/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=Zobrazit stránku v nové kartě SetAsHomePage=Nastavit jako domovskou stránku RealURL=real URL ViewWebsiteInProduction=Pohled webové stránky s použitím domácí adresy URL -SetHereVirtualHost=  Použití s Apache / NGinx / ...
    Pokud můžete vytvořit na svém webovém serveru (Apache, Nginx, ...) vyhrazený virtuální hostitel s PHP povoleným a kořenový adresář na
    %s
    pak nastavit název virtuálního hostitele, který jste vytvořili ve vlastnostech webových stránek, takže náhled lze provést také pomocí tohoto vyhrazeného přístupu k webovým serverům místo interního serveru Dolibarr. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS=  Použití s vloženým serverem PHP
    Při vývoji prostředí můžete upřednostňovat testování webu pomocí integrovaného webového serveru PHP (PHP 5.5 vyžadováno) spuštěním
    php -S 0.0.0.0:8080 -t %s YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org CheckVirtualHostPerms=Zkontrolujte také, že virtuální hostitel má oprávnění %s na souborech do
    %s @@ -56,7 +57,7 @@ NoPageYet=Zatím žádné stránky YouCanCreatePageOrImportTemplate=Můžete vytvořit novou stránku nebo importovat úplnou šablonu webových stránek SyntaxHelp=Nápověda ke konkrétním tipům pro syntaxi YouCanEditHtmlSourceckeditor=Zdrojový kód HTML můžete upravit pomocí tlačítka "Zdroj" v editoru. -YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Klonovat stránku / kontejner CloneSite=Kopie stránky SiteAdded=Webová stránka byla přidána @@ -76,7 +77,7 @@ BlogPost=Příspěvek na blogu WebsiteAccount=Účet webových stránek WebsiteAccounts=Účty webových stránek AddWebsiteAccount=Vytvořte účet webových stránek -BackToListOfThirdParty=Zpět na seznam pro subjekt +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Nejprve zakažte web MyContainerTitle=Název mé webové stránky AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Sorry, this website is currently off line. Please WEBSITE_USE_WEBSITE_ACCOUNTS=Povolte tabulku účtu webových stránek WEBSITE_USE_WEBSITE_ACCOUNTSTooltip=Aktivujte tabulku pro ukládání účtů webových stránek (login / heslo) pro každý web / třetí stranu YouMustDefineTheHomePage=Nejprve musíte definovat výchozí domovskou stránku -OnlyEditionOfSourceForGrabbedContentFuture=Upozornění: Vytvoření webové stránky importováním externí webové stránky je vyhrazeno pro zkušené uživatele. V závislosti na složitosti zdrojové stránky se může výsledek importu lišit od původního. Také pokud zdrojová stránka používá běžné styly CSS nebo konfliktní javascript, může při práci na této stránce narušit vzhled nebo funkce editoru webových stránek. Tato metoda je rychlejší způsob, jak vytvořit stránku, ale doporučuje se vytvořit novou stránku od začátku nebo od navržené šablony stránky.
    Upozorňujeme také, že úpravy HTML zdroje budou možné, pokud bude obsah stránky inicializován tak, že jej budete chytat z externí stránky (editor "Online" NENÍ dostupný) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Pouze vydání zdroje HTML je možné, pokud byl obsah chycen z externího webu GrabImagesInto=Uchopte také obrázky do css a stránky. ImagesShouldBeSavedInto=Obrázky je třeba uložit do adresáře @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 ch MainLanguage=Main language OtherLanguages=Other languages UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/cs_CZ/withdrawals.lang b/htdocs/langs/cs_CZ/withdrawals.lang index 27a7297267c..61a6184e297 100644 --- a/htdocs/langs/cs_CZ/withdrawals.lang +++ b/htdocs/langs/cs_CZ/withdrawals.lang @@ -69,15 +69,15 @@ WithBankUsingBANBIC=U bankovních účtů pomocí IBAN/BIC/SWIFT BankToReceiveWithdraw=Bankovní účet pro příjem CreditDate=Kredit na WithdrawalFileNotCapable=Nelze generovat soubor výběru příjmu pro vaši zemi %s (Vaše země není podporována) -ShowWithdraw=Show Direct Debit Order -IfInvoiceNeedOnWithdrawPaymentWontBeClosed=However, if invoice has at least one direct debit payment order not yet processed, it won't be set as paid to allow prior withdrawal management. +ShowWithdraw=Zobrazit příkaz k inkasu +IfInvoiceNeedOnWithdrawPaymentWontBeClosed=Pokud však na faktuře dosud nebyl zpracován alespoň jeden příkaz k inkasu, nebude nastavena jako zaplacená, aby bylo možné provést předchozí výběr. DoStandingOrdersBeforePayments=Tato karta vám umožňuje požádat o trvalý příkaz. Jakmile to bude hotové,jděte do menu Bankovní údaje-> Výběry pro zřízení trvalého příkazu. Když je trvalý příkazu hotov, platba na faktuře bude automaticky zaznamenána a faktura uzavřena, pokud zbývající částka k placení je nula. 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=Unique Mandate Reference (UMR) -DateRUM=Mandate signature date +RUM=UMR +DateRUM=Povinné datum podpisu 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/cs_CZ/zapier.lang b/htdocs/langs/cs_CZ/zapier.lang new file mode 100644 index 00000000000..406cc11f80d --- /dev/null +++ b/htdocs/langs/cs_CZ/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier pro Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier pro Dolibarr modul + +# +# Admin page +# +ZapierForDolibarrSetup = Nastavení Zapieru pro Dolibarr diff --git a/htdocs/langs/da_DK/accountancy.lang b/htdocs/langs/da_DK/accountancy.lang index 6cf90054f96..7a9d75ba444 100644 --- a/htdocs/langs/da_DK/accountancy.lang +++ b/htdocs/langs/da_DK/accountancy.lang @@ -121,6 +121,7 @@ InvoiceLinesDone=Fakturalinjer, der er bundet ExpenseReportLines=Udgiftsrapportlinjer, der skal bogføres ExpenseReportLinesDone=Linjer bundet til udgiftsrapporter IntoAccount=Bogfør linje i regnskabskonto +TotalForAccount=Total for accounting account Ventilate=Bogfør @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Regnskabskonto til registrering af donationer ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Regnskabskonto for at registrere abonnementer ACCOUNTING_PRODUCT_BUY_ACCOUNT=Regnskabskonto som standard for de købte produkter (bruges hvis ikke defineret i produktarket) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_ACCOUNT=Regnskabskonto som standard for solgte varer (hvis ikke defineret for varen) ACCOUNTING_PRODUCT_SOLD_INTRA_ACCOUNT=Regnskabskonto som standard for de produkter, der sælges i EØF (bruges, hvis de ikke er defineret i produktarket) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Regnskabskonto som standard for de produkter, der er solgt og eksporteret ud af EØF (brugt, hvis ikke defineret i produktarket) + ACCOUNTING_SERVICE_BUY_ACCOUNT=Regnskabskonto som standard for købte ydelser (hvis ikke defineret for varen) +ACCOUNTING_SERVICE_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_ACCOUNT=Regnskabskonto som standard for solgte ydelser (hvis ikke defineret for varen) ACCOUNTING_SERVICE_SOLD_INTRA_ACCOUNT=Regnskabskonto som standard for de tjenester, der sælges i EØF (bruges, hvis de ikke er defineret i servicearket) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Regnskabskonto er som standard for de tjenester, der sælges og eksporteres ud af EØF (bruges, hvis de ikke er defineret i servicearket) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Tredjeparts ukend ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Tredjepartskonto ikke defineret eller tredjepart ukendt. Blokeringsfejl. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Ukendt tredjepartskonto og ventekonto er ikke defineret. Blokeringsfejl PaymentsNotLinkedToProduct=Betaling er ikke knyttet til noget produkt / tjeneste +OpeningBalance=Opening balance ShowOpeningBalance=Vis åbningsbalance HideOpeningBalance=Skjul åbningsbalancen +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Kontoens gruppe PcgtypeDesc=Kontogruppe bruges som foruddefinerede 'filter' og 'gruppering' kriterier for nogle regnskabsrapporter. For eksempel bruges 'INKOMST' eller 'UDGIFT' som grupper til regnskabsmæssige regnskaber for produkter til at oprette omkostnings- / indkomstrapporten. +Reconcilable=Reconcilable + TotalVente=Samlet omsætning ekskl. moms TotalMarge=Samlet salgsforskel @@ -307,11 +317,13 @@ Modelcsv_quadratus=Eksport til Quadratus QuadraCompta Modelcsv_ebp=Eksport til EBP Modelcsv_cogilog=Eksport til Cogilog Modelcsv_agiris=Eksport til Agiris -Modelcsv_LDCompta=Eksport til LD Compta (v9 og nyere) (Test) +Modelcsv_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Eksport til OpenConcerto (Test) Modelcsv_configurable=Eksporter CSV Konfigurerbar Modelcsv_FEC=Eksport FEC Modelcsv_Sage50_Swiss=Eksport til Sage 50 Schweiz +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=ID for kontoplan ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Salg OptionModeProductSellIntra=Mode salg eksporteret i EØF OptionModeProductSellExport=Mode salg eksporteret i andre lande OptionModeProductBuy=Køb +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries OptionModeProductSellDesc=Vis alle varer med salgskonto. OptionModeProductSellIntraDesc=Vis alle produkter med en regnskabskonto for salg i EØF. OptionModeProductSellExportDesc=Vis alle produkter med regnskabskonto for andet udenlandsk salg. OptionModeProductBuyDesc=Vis alle varer med købskonto. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=Fjern regnskabskode fra linjer, der ikke eksisterer som posteringer på konto CleanHistory=Nulstil alle bogføringer for det valgte år PredefinedGroups=Foruddefinerede grupper @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Kontoen blev fjernet fra gruppen SaleLocal=Lokalt salg SaleExport=Eksport salg SaleEEC=Salg i EØF +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=Interval for regnskabskonto diff --git a/htdocs/langs/da_DK/admin.lang b/htdocs/langs/da_DK/admin.lang index 83a89ffb0d7..fa640a2ad1b 100644 --- a/htdocs/langs/da_DK/admin.lang +++ b/htdocs/langs/da_DK/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Webserver bruger / gruppe NoSessionFound=Din PHP-konfiguration tillade ikke optagelse af aktive sessioner. Den mappe, der bruges til at gemme sessioner ( %s ), kan være beskyttet (for eksempel via operativsystemet eller ved PHP-direktivet open_basedir). DBStoringCharset=Database charset til at gemme data DBSortingCharset=Database charset for at sortere data +HostCharset=Host charset ClientCharset=Klient karaktersæt ClientSortingCharset=Kunden sortering WarningModuleNotActive=Modul %s skal være aktiveret @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Bemærk: din PHP konfiguration begrænser i øj NoMaxSizeByPHPLimit=Bemærk: Ingen grænse er sat i din PHP-konfiguration MaxSizeForUploadedFiles=Maksimale størrelse for uploadede filer (0 til disallow enhver upload) UseCaptchaCode=Brug grafisk kode på loginsiden -AntiVirusCommand= Fuld sti til antivirus kommando -AntiVirusCommandExample= Eksempel på ClamWin: c: \\ Program Files (x86) \\ ClamWin \\ bin \\ clamscan.exe
    Eksempel på ClamAV: / usr / bin / clamscan +AntiVirusCommand=Fuld sti til antivirus kommando +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= Flere parametre på kommandolinjen -AntiVirusParamExample= Eksempel for ClamWin: - database = "C: \\ Programmer (x86) \\ ClamWin \\ lib" +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=Opsætning af regnskabsmodul UserSetup=Brugerstyring opsætning MultiCurrencySetup=Multi-valuta opsætning @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Funktionen slået fra i demo FeatureAvailableOnlyOnStable=Funktionen er kun tilgængelig på officielle stabile versioner BoxesDesc=Widgets er komponenter, der viser nogle oplysninger, som du kan tilføje for at tilpasse nogle sider. Du kan vælge mellem at vise widgeten eller ej ved at vælge målside og klikke på 'Aktiver' eller ved at klikke på papirkurven for at deaktivere den. OnlyActiveElementsAreShown=Kun elementer fra de aktiverede moduler er vist. -ModulesDesc=Modulerne / applikationerne bestemmer hvilke funktioner der er tilgængelige i softwaren. Nogle moduler kræver tilladelser til brugere efter aktivering af modulet. Klik på tænd / sluk-knappen (ved slutningen af modullinjen) for at aktivere / deaktivere et modul / program. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. ModulesMarketPlaceDesc=Du kan finde flere moduler som kan downloades på eksterne hjemmesider på internettet ... ModulesDeployDesc=Hvis tilladelser i dit filsystem tillader det, kan du bruge dette værktøj til at installere et eksternt modul. Modulet vil så være synligt på fanen %s. ModulesMarketPlaces=Finde eksterne app/moduler @@ -212,6 +213,7 @@ CompatibleUpTo=Kompatibel med version %s NotCompatible=Dette modul virker ikke kompatibelt med din Dolibarr %s (Min %s - Max %s). CompatibleAfterUpdate=Dette modul kræver en opdatering til din Dolibarr %s (Min %s - Max %s). SeeInMarkerPlace=Se på markedspladsen +SeeSetupOfModule=See setup of module %s Updated=Opdater Nouveauté=Nyhed AchatTelechargement=Køb / Download @@ -221,6 +223,7 @@ DoliPartnersDesc=Liste over virksomheder, der leverer specialudviklede moduler e WebSiteDesc=Eksterne websites til flere (tredjeparts) tillægsmoduler ... DevelopYourModuleDesc=Nogle løsninger til at udvikle dit eget modul ... URL=URL +RelativeURL=Relative URL BoxesAvailable=Bokse til rådighed BoxesActivated=Bokse aktiveret ActivateOn=Aktivér om @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Afkrydsningsfelterne ExtrafieldCheckBoxFromList=Afkrydsningsfelter fra bordet ExtrafieldLink=Link til et objekt ComputedFormula=Beregnet felt -ComputedFormulaDesc=Du kan indtaste en formel her ved hjælp af andre egenskaber af objekt eller nogen PHP-kodning for at få en dynamisk beregningsværdi. Du kan bruge alle PHP-kompatible formler, herunder "?" betingelsesoperatør og følgende globale objekt: $ db, $ conf, $ langs, $ mysoc, $ bruger, $ objekt .
    ADVARSEL : Kun nogle egenskaber af $ objekt kan være tilgængelige. Hvis du har brug for egenskaber, der ikke er indlæst, skal du bare hente objektet i din formel som i andet eksempel.
    Brug af et beregnet felt betyder, at du ikke kan indtaste nogen værdier fra interface. Hvis der også er en syntaksfejl, kan formlen ikke returnere noget.

    Eksempel på formel:
    $ objekt-> id < 10 ? round($object-> id / 2, 2): ($ objekt-> id + 2 * $ bruger-> id) * (int) substr ($ mysoc-> zip, 1, 2 )

    Eksempel på genindlæsning af objekt
    (($ reloadedobj = ny Societe ($ db)) && ($ reloadedobj-> hent ($ obj-> id? $ Obj-> id: ($ obj-> rowid? $ Obj- > rowid: $ object-> id))> 0))? $ reloadedobj-> array_options ['options_extrafieldkey'] * $ reloadedobj-> kapital / 5: '-1'

    Øvrige eksempel på formel for at tvinge belastning af objekt og dets overordnede objekt:
    (($ reloadedobj = ny opgave ($ db )) && ($ reloadedobj-> hent ($ objekt-> id)> 0) && ($ secondloadedobj = nyt projekt ($ db)) && ($ secondloadedobj-> hent ($ reloadedobj-> fk_project)> 0))? $ secondloadedobj-> ref: 'Forældreprojekt ikke fundet' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Gem computeren felt ComputedpersistentDesc=Beregnede ekstra felter gemmes i databasen, men værdien genberegnes dog først, når objektet i dette felt ændres. Hvis det beregnede felt afhænger af andre objekter eller globale data, kan denne værdi være forkert !! ExtrafieldParamHelpPassword=Blankt felt her betyder, at denne værdi vil blive gemt uden kryptering (feltet skal kun være skjult med stjerne på skærmen).
    Vælg 'auto' for at bruge standardkrypteringsreglen til at gemme adgangskoden til databasen (så vil værdien gemmes som en en-vejs hash uden mulighed at hente den oprindelige værdi) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Holde tomt for at bruge standard værdi DefaultLink=Standard link SetAsDefault=Indstillet som standard ValueOverwrittenByUserSetup=Advarsel, denne værdi kan blive overskrevet af bruger-specifik opsætning (hver bruger kan indstille sin egen clicktodial url) -ExternalModule=Eksternt modul - Installeret i mappe %s +ExternalModule=External module +InstalledInto=Installed into directory %s BarcodeInitForthird-parties=Mass barcode init for tredjepart BarcodeInitForProductsOrServices=Mass barcode init eller nulstil for produkter eller tjenester CurrentlyNWithoutBarCode=I øjeblikket har du %s post på %s %s uden stregkode defineret. @@ -947,7 +951,7 @@ DictionaryCanton=Stater / provinser DictionaryRegion=Regioner DictionaryCountry=Lande DictionaryCurrency=Valuta -DictionaryCivility=Titel for høflighed +DictionaryCivility=Honorific titles DictionaryActions=Begivenhedstyper DictionarySocialContributions=Typer af sociale eller skattemæssige afgifter DictionaryVAT=Momssatser @@ -988,6 +992,7 @@ VATIsNotUsedDesc=Den foreslåede moms er som standard 0, som kan bruges til sage VATIsUsedExampleFR=I Frankrig betyder det, at virksomheder eller organisationer har et rigtigt finanssystem (forenklet reel eller normal reel). Et system, hvor moms er erklæret. VATIsNotUsedExampleFR=I Frankrig betyder det foreninger, der ikke er momsregistrerede, eller selskaber, organisationer eller liberale erhverv, der har valgt mikrovirksomhedens skattesystem (Salgsskat i franchise) og betalt en franchise Salgsskat uden nogen momsafgift. Dette valg vil vise referencen "Ikke gældende salgsafgift - art-293B CGI" på fakturaer. ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=Hyppighed LocalTax1IsNotUsed=Brug ikke anden skat LocalTax1IsUsedDesc=Brug en anden type afgift (bortset fra den første) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=IRPF-kursen som standard ved oprettelse af emner. fakturae LocalTax2IsNotUsedDescES=Som standard den foreslåede IRPF er 0. Slut på reglen. LocalTax2IsUsedExampleES=I Spanien, freelancere og selvstændige, der leverer tjenesteydelser og virksomheder, der har valgt at skattesystemet i de moduler. LocalTax2IsNotUsedExampleES=I Spanien er de virksomheder, der ikke er underlagt skattesystemer for moduler. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=Rapporter om lokale skatter CalcLocaltax1=Salg - Køb CalcLocaltax1Desc=Lokale skatter rapporter beregnes med forskellen mellem localtaxes salg og localtaxes køb @@ -1018,6 +1026,7 @@ CalcLocaltax2=Køb CalcLocaltax2Desc=Lokale skatter rapporter er de samlede køb af lokale afgifter CalcLocaltax3=Salg CalcLocaltax3Desc=Lokale skatter rapporter er det samlede salg af localtaxes +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=Etiket, som bruges som standard, hvis ingen oversættelse kan findes for kode LabelOnDocuments=Etiketten på dokumenter LabelOrTranslationKey=Etiket eller oversættelsestast @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Udgiftsrapporten godkendes Delays_MAIN_DELAY_HOLIDAYS=Leave requests to approve SetupDescription1=Før du begynder at bruge Dolibarr, skal nogle indledende parametre defineres og moduler aktiveres / konfigureres. SetupDescription2=Følgende to afsnit er obligatoriske (de to første indgange i opsætningsmenuen): -SetupDescription3=%s -> %s
    Grundlæggende parametre, der bruges til at tilpasse din applikations standardopførsel (f.eks. Til landrelaterede funktioner). -SetupDescription4=%s -> %s
    Denne software er en pakke med mange moduler / applikationer, alle mere eller mindre uafhængige. De moduler, der er relevante for dine behov, skal være aktiveret og konfigureret. Nye elementer / indstillinger føjes til menuer med aktivering af et modul. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. SetupDescription5=Andre opsætningsmenuindgange styrer valgfrie parametre. LogEvents=Sikkerhed revision arrangementer Audit=Audit @@ -1128,7 +1137,7 @@ LogEventDesc=Aktivér logføring til specifikke sikkerhedshændelser. Administra AreaForAdminOnly=Opsætningsparametre kan kun indstilles af administratorbrugere. SystemInfoDesc=System oplysninger er diverse tekniske oplysninger du får i read only mode og synlig kun for administratorer. SystemAreaForAdminOnly=Dette område er kun tilgængeligt for administratorbrugere. Dolibarr bruger tilladelser kan ikke ændre denne begrænsning. -CompanyFundationDesc=Edit the information of the company/entity. Click on "%s" button at the bottom of the page. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. AccountantDesc=Hvis du har en ekstern revisor / bogholder, kan du her redigere dens oplysninger. AccountantFileNumber=Revisor kode DisplayDesc=Parametre, der påvirker udseende og opførsel af Dolibarr kan ændres her. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Regler for at generere og validere adgangskoder DisableForgetPasswordLinkOnLogonPage=Vis ikke linket "Glemt adgangskode" på siden Login UsersSetup=Opsætning af brugermodul UserMailRequired=Email nødvendig for at oprette en ny bruger +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### HRMSetup=HRM modul opsætning ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Faktura dokumenter modeller BillsPDFModulesAccordindToInvoiceType=Faktura dokumenter modeller efter faktura type PaymentsPDFModules=Betalingsdokumenter modeller ForceInvoiceDate=Force fakturadatoen til bekræftelse dato -SuggestedPaymentModesIfNotDefinedInInvoice=Foreslåede betalinger tilstand på fakturaen som standard, hvis ikke defineret for faktura +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice SuggestPaymentByRIBOnAccount=Foreslå betaling ved tilbagetrækning på konto SuggestPaymentByChequeToAddress=Foreslå betaling med check til FreeLegalTextOnInvoices=Fri tekst på fakturaer @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Opsætning af leverandørbetalinger PropalSetup=Modulopsætning for tilbud ProposalsNumberingModules=Nummerering af tilbud ProposalsPDFModules=Skabelon for tilbud -SuggestedPaymentModesIfNotDefinedInProposal=Foreslået betalingsmetode på forslag som standard, hvis ikke defineret til forslag +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal FreeLegalTextOnProposal=Fri tekst på tilbud WatermarkOnDraftProposal=Vandmærke på udkast til tilbud (intet, hvis tom) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Anmode om en bankkonto destination for forslag @@ -1322,6 +1334,7 @@ WAREHOUSE_ASK_WAREHOUSE_DURING_ORDER=Anmode om lagerkilde for ordre ##### Suppliers Orders ##### BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_ORDER=Anmode om købskonto bestemmelsessted ##### Orders ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=Salgsordrer ledelsesopsætning OrdersNumberingModules=Ordrer nummerressourcer moduler OrdersModelModule=Bestil dokumenter modeller @@ -1720,7 +1733,7 @@ MultiCompanySetup=Opsætning af multi-selskabsmodul ##### Suppliers ##### SuppliersSetup=Opsætning af sælgermodul SuppliersCommandModel=Complete template of Purchase Order -SuppliersCommandModelMuscadet=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) SuppliersInvoiceModel=Complete template of Vendor Invoice SuppliersInvoiceNumberingModel=Leverandør fakturaer nummerering modeller IfSetToYesDontForgetPermission=Hvis det er indstillet til en ikke-nullværdi, skal du ikke glemme at give tilladelser til grupper eller brugere, der har tilladelse til den anden godkendelse @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Skjul billeder i topmenuen LeftMenuBackgroundColor=Baggrundsfarve til venstre menu BackgroundTableTitleColor=Baggrundsfarve til tabel titel linje BackgroundTableTitleTextColor=Tekstfarve til tabel titellinje +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Baggrundsfarve til ulige bord linjer BackgroundTableLineEvenColor=Baggrundsfarve til lige bordlinier MinimumNoticePeriod=Mindste opsigelsesperiode (din anmodning om orlov skal ske inden denne forsinkelse) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Dolibarr Reference not found in Message ID FormatZip=Postnummer MainMenuCode=Menu indtastningskode (hovedmenu) ECMAutoTree=Vis automatisk ECM-træ -OperationParamDesc=Definer værdier, der skal bruges til handling, eller hvordan man uddrager værdier. For eksempel:
    objproperty1 = SET: abc
    objproperty1 = SET: en værdi med erstatning af __objproperty1__
    objproperty3 = SETIFEMPTY: abc
    objproperty4 = EKSTRAKT: HEADER:. X-Myheaderkey * [^ \\ s] + (*).
    options_myextrafield = EKSTRAKT: EMNE: ([^ \\ s] *)
    object.objproperty5 = UDTAGELSE: BODY: Mit firmanavn er \\ s ([^ \\ s] *)

    Brug en ; char som separator for at udtrække eller indstille flere egenskaber. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Åbningstider OpeningHoursDesc=Indtast her firmaets almindelige åbningstider. ResourceSetup=Konfiguration af ressource modul @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Advarsel, højere værdier bremser dram ModuleActivated=Modul %s er aktiveret og forsinker grænsefladen EXPORTS_SHARE_MODELS=Eksportmodeller deles med alle ExportSetup=Opsætning af modul Eksport +ImportSetup=Setup of module Import InstanceUniqueID=Forekomstets unikke ID SmallerThan=Mindre end LargerThan=Større end @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Lav en anonym Ping '+1' til Dolibarr foundation-serveren (udf FeatureNotAvailableWithReceptionModule=Funktion ikke tilgængelig, når modulmodtagelse er aktiveret EmailTemplate=Template for email EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/da_DK/bills.lang b/htdocs/langs/da_DK/bills.lang index 0eede26674c..f0882f22e4b 100644 --- a/htdocs/langs/da_DK/bills.lang +++ b/htdocs/langs/da_DK/bills.lang @@ -59,16 +59,16 @@ SupplierBill=Leverandørfaktura SupplierBills=leverandørfakturaer Payment=Betaling PaymentBack=Tilbagebetaling -CustomerInvoicePaymentBack=Betaling tilbage +CustomerInvoicePaymentBack=Tilbagebetaling Payments=Betalinger PaymentsBack=restitutioner paymentInInvoiceCurrency=i fakturaer valuta PaidBack=Tilbagebetalt DeletePayment=Slet betaling ConfirmDeletePayment=Er du sikker på, at du vil slette denne betaling? -ConfirmConvertToReduc=Vil du konvertere denne %s til en absolut rabat? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? ConfirmConvertToReduc2=Beløbet gemmes mellem alle rabatter og kan bruges som en rabat på en aktuel eller en fremtidig faktura for denne kunde. -ConfirmConvertToReducSupplier=Vil du konvertere denne %s til en absolut rabat? +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? ConfirmConvertToReducSupplier2=Beløbet gemmes blandt alle rabatter og kan bruges som en rabat på en aktuel eller en fremtidig faktura for denne leverandør. SupplierPayments=Leverandørbetalinger ReceivedPayments=Modtagne betalinger @@ -209,17 +209,13 @@ NumberOfBillsByMonth=Antal fakturaer pr. Måned AmountOfBills=Mængden af fakturaer AmountOfBillsHT=Fakturabeløb (ekskl. Skat) AmountOfBillsByMonthHT=Mængden af ​​fakturaer efter måned (ekskl. moms) -ShowSocialContribution=Vis skat/afgift -ShowBill=Vis faktura -ShowInvoice=Vis faktura -ShowInvoiceReplace=Vis erstatning faktura -ShowInvoiceAvoir=Vis kreditnota -ShowInvoiceDeposit=Vis udbetalt faktura -ShowInvoiceSituation=Vis faktura status UseSituationInvoices=Tillad midlertidig faktura UseSituationInvoicesCreditNote=Tillad midlertidig faktura kreditnota Retainedwarranty=Opretholdt garanti +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Tilbageholdt garanti standart procent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=At betale på %s toPayOn=at betale på %s RetainedWarranty=Opholdt garanti @@ -230,7 +226,6 @@ setretainedwarranty=Indstil bevaret garanti setretainedwarrantyDateLimit=Indstil grænse for bevaret garanti RetainedWarrantyDateLimit=Opholdt garanti dato grænse RetainedWarrantyNeed100Percent=Midlertidig fakturaen skal være på 100%% fremgang for at blive vist på PDF -ShowPayment=Vis betaling AlreadyPaid=Allerede betalt AlreadyPaidBack=Allerede tilbage betalt AlreadyPaidNoCreditNotesNoDeposits=Allerede betalt (uden kredit noter og udbetalinger) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Genereres fra skabelonfaktura %s WarningInvoiceDateInFuture=Advarsel, fakturadato er højere end den aktuelle dato WarningInvoiceDateTooFarInFuture=Advarsel, fakturadato er for langt fra den aktuelle dato ViewAvailableGlobalDiscounts=Se ledige rabatter +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Status PaymentConditionShortRECEP=Forfald ved modtagelse @@ -509,7 +505,7 @@ ToMakePayment=Betale ToMakePaymentBack=Tilbagebetalt ListOfYourUnpaidInvoices=Liste over ubetalte fakturaer NoteListOfYourUnpaidInvoices=Bemærk: Denne liste indeholder kun fakturaer til tredjeparter, som du er knyttet til som salgsrepræsentant. -RevenueStamp=Indtægtsstempel +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=Denne indstilling er kun tilgængelig, når du opretter en faktura fra fanen "Kund" fra tredjepart YouMustCreateInvoiceFromSupplierThird=Denne indstilling er kun tilgængelig, når du opretter en faktura fra fanen "Sælger" fra tredjepart YouMustCreateStandardInvoiceFirstDesc=Du skal først oprette en standardfaktura og konvertere den til "skabelon" for at oprette en ny skabelonfaktura @@ -575,3 +571,4 @@ AutoFillDateTo=Indstil slutdato for servicelinje med næste faktura dato AutoFillDateToShort=Indstil slutdato MaxNumberOfGenerationReached=Maks antal gener. nået BILL_DELETEInDolibarr=Faktura slettet +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/da_DK/blockedlog.lang b/htdocs/langs/da_DK/blockedlog.lang index 84d8d52f33a..c76c9e72916 100644 --- a/htdocs/langs/da_DK/blockedlog.lang +++ b/htdocs/langs/da_DK/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Uændrede logfiler ShowAllFingerPrintsMightBeTooLong=Vis alle arkiverede logfiler (kan være lang) ShowAllFingerPrintsErrorsMightBeTooLong=Vis alle ikke-gyldige arkivlogfiler (kan være lange) DownloadBlockChain=Download fingeraftryk -KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this re after it was recorded, or has erased the previous archived record (check that line with previous # exists). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. OkCheckFingerprintValidityButChainIsKo=Arkiveret log synes at være gyldig i forhold til den foregående, men kæden blev ødelagt tidligere. AddedByAuthority=Gemt i ekstern myndighed diff --git a/htdocs/langs/da_DK/cashdesk.lang b/htdocs/langs/da_DK/cashdesk.lang index d0d8da4afe5..a2749d3ffcf 100644 --- a/htdocs/langs/da_DK/cashdesk.lang +++ b/htdocs/langs/da_DK/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Tilføj denne artikel RestartSelling=Gå tilbage til salg SellFinished=Salg gennemført PrintTicket=Udskriv billet +SendTicket=Send ticket NoProductFound=Ingen artikel fundet ProductFound=Varen findes NoArticle=Ingen artikel @@ -48,6 +49,7 @@ Footer=Sidefod AmountAtEndOfPeriod=Beløb ved udgangen af perioden (dag, måned eller år) TheoricalAmount=Teoretisk mængde RealAmount=Reelt beløb +CashFence=Cash fence CashFenceDone=Cash fence gjort for perioden NbOfInvoices=Antal fakturaer Paymentnumpad=Type of Pad to enter payment @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS har brug for produkt kategorier for at fungere OrderNotes=Order Notes CashDeskBankAccountFor=Default account to use for payments in NoPaimementModesDefined=No paiment mode defined in TakePOS configuration -TicketVatGrouped=Group VAT by rate in tickets -AutoPrintTickets=Automatically print tickets +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? @@ -87,7 +90,19 @@ HeadBar=Head Bar SortProductField=Field for sorting products Browser=Browser BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/da_DK/companies.lang b/htdocs/langs/da_DK/companies.lang index ce8b8830ca0..970ecf1e4e1 100644 --- a/htdocs/langs/da_DK/companies.lang +++ b/htdocs/langs/da_DK/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted=Company " %s" slettet fra databasen. ListOfContacts=Liste over kontakter/adresser ListOfContactsAddresses=Liste over kontakter/adresser ListOfThirdParties=Liste over tredjeparter -ShowCompany=Vis tredjepart ShowContact=Vis kontakt ContactsAllShort=Alle (intet filter) ContactType=Type af kontakt @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=Fornavn på salgsrepræsentant SaleRepresentativeLastname=Efternavn på salgsrepræsentant ErrorThirdpartiesMerge=Der opstod en fejl ved sletning af tredjeparter. Kontroller loggen. Ændringer er blevet vendt tilbage. NewCustomerSupplierCodeProposed=Kunde- eller leverandørkode, der allerede er brugt, foreslås en ny kode +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Betalingstype - Kunde PaymentTermsCustomer=Betalingsbetingelser - Kunde diff --git a/htdocs/langs/da_DK/compta.lang b/htdocs/langs/da_DK/compta.lang index ce9ae06ce02..6b19d13f78a 100644 --- a/htdocs/langs/da_DK/compta.lang +++ b/htdocs/langs/da_DK/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=Se %sanalyse af betaling%s for en beregning af faktis SeeReportInDueDebtMode=Se %sanalyse af faktura%s for en beregning baseret på kendte registrerede fakturaer, selvom de endnu ikke er opført i hovedbogen. SeeReportInBookkeepingMode=Se %skassekladde report%s til en beregning på kasssekladdens tabelen RulesAmountWithTaxIncluded=- De viste beløb er med alle inkl. moms -RulesResultDue=- Det inkluderer udestående fakturaer, udgifter, moms, donationer, uanset om de er betalt eller ej. Inkluderer også betalte lønninger.
    - Det er baseret på bekræftesesdatoen for fakturaer og moms og på forfaldsdagen for udgifter. For lønninger, der er defineret med Lønmodul, anvendes datoen for betaling. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- Den omfatter de reelle betalinger foretaget på fakturaer, udgifter, moms og løn.
    - Det er baseret på betalingsdatoer for fakturaer, udgifter, moms og løn. Donationsdatoen for donation. -RulesCADue=- Det inkluderer kundens fakturaer, uanset om de er betalt eller ej.
    - Det er baseret på valideringsdatoen for disse fakturaer.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- Den omfatter alle effektive betalinger af fakturaer modtaget fra kunder.
    - Det er baseret på betalingsdatoen for disse fakturaer
    RulesCATotalSaleJournal=Den omfatter alle kreditlinjer fra salgslisten. RulesAmountOnInOutBookkeepingRecord=Det indeholder post i din hovedbog med kontor, der har gruppen "EXPENSE" eller "INCOME" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Omsætning faktureret ved salgskurs TurnoverCollectedbyVatrate=Omsætning opkrævet ved salgskurs PurchasebyVatrate=Køb ved salgskurs LabelToShow=Short label +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/da_DK/donations.lang b/htdocs/langs/da_DK/donations.lang index 90494b266e0..99c32431c44 100644 --- a/htdocs/langs/da_DK/donations.lang +++ b/htdocs/langs/da_DK/donations.lang @@ -1,34 +1,34 @@ # Dolibarr language file - Source file is en_US - donations Donation=Donation -Donations=Donationer +Donations=donationer DonationRef=Donation ref. Donor=Donor -AddDonation=Create a donation +AddDonation=Opret en donation NewDonation=Ny donation -DeleteADonation=Delete a donation -ConfirmDeleteADonation=Are you sure you want to delete this donation? -ShowDonation=Show donation -PublicDonation=Offentlige donation +DeleteADonation=Slet en donation +ConfirmDeleteADonation=Er du sikker på, at du vil slette denne donation? +PublicDonation=Offentlig donation DonationsArea=Donationer område DonationStatusPromiseNotValidated=Udkast til løfte -DonationStatusPromiseValidated=Valideret løfte -DonationStatusPaid=Donationen er modtaget +DonationStatusPromiseValidated=Bekræftet løfte +DonationStatusPaid=Bidrag modtaget DonationStatusPromiseNotValidatedShort=Udkast -DonationStatusPromiseValidatedShort=Valideret +DonationStatusPromiseValidatedShort=bekræftet DonationStatusPaidShort=Modtaget -DonationTitle=Donation receipt +DonationTitle=Bidragskvittering +DonationDate=Donation date DonationDatePayment=Betalingsdato ValidPromess=Validér løfte -DonationReceipt=Donation receipt +DonationReceipt=Bidragskvittering DonationsModels=Dokumenter modeller for donation kvitteringer -LastModifiedDonations=Latest %s modified donations -DonationRecipient=Donation recipient -IConfirmDonationReception=The recipient declare reception, as a donation, of the following amount -MinimumAmount=Minimum amount is %s -FreeTextOnDonations=Free text to show in footer -FrenchOptions=Options for France -DONATION_ART200=Show article 200 from CGI if you are concerned -DONATION_ART238=Show article 238 from CGI if you are concerned -DONATION_ART885=Show article 885 from CGI if you are concerned -DonationPayment=Donation payment -DonationValidated=Donation %s validated +LastModifiedDonations=Seneste %s modificerede donationer +DonationRecipient=Donation modtager +IConfirmDonationReception=Modtageren erklærer modtagelsen som en donation af følgende beløb +MinimumAmount=Minimumsbeløbet er %s +FreeTextOnDonations=Fri tekst at vise i side fod +FrenchOptions=Valgmuligheder for Frankrig +DONATION_ART200=Vis artikel 200 fra CGI, hvis du er bekymret +DONATION_ART238=Vis artikel 238 fra CGI, hvis du er bekymret +DONATION_ART885=Vis artikel 885 fra CGI, hvis du er bekymret +DonationPayment=Donation betaling +DonationValidated=Donation %s bekræftet diff --git a/htdocs/langs/da_DK/errors.lang b/htdocs/langs/da_DK/errors.lang index 8a0ee4bad7e..8eb3fb29a3f 100644 --- a/htdocs/langs/da_DK/errors.lang +++ b/htdocs/langs/da_DK/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=Fil ikke modtaget helt af serveren. ErrorNoTmpDir=Midlertidig directy %s ikke eksisterer. ErrorUploadBlockedByAddon=Upload blokeret af en PHP / Apache plugin. ErrorFileSizeTooLarge=Filstørrelse er for stor. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Størrelse for lang tid for int type (%s cifre maksimum) ErrorSizeTooLongForVarcharType=Størrelse for lang tid for streng type (%s tegn maksimum) ErrorNoValueForSelectType=Please fill value for select list @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # 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/da_DK/install.lang b/htdocs/langs/da_DK/install.lang index 5adaa0794ca..692e45b5abb 100644 --- a/htdocs/langs/da_DK/install.lang +++ b/htdocs/langs/da_DK/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=Dette PHP understøtter Curl. PHPSupportCalendar=This PHP supports calendars extensions. PHPSupportUTF8=Dette PHP understøtter UTF8 funktioner. PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=This PHP supports %s functions. PHPMemoryOK=Din PHP max session hukommelse er sat til %s. Dette skulle være nok. PHPMemoryTooLow=Din PHP max-sessionshukommelse er indstillet til %s bytes. Dette er for lavt. Skift din php.ini for at indstille parameteren memory_limit til mindst %s bytes. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=Your PHP installation does not support Curl. ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. ErrorPHPDoesNotSupportUTF8=Din PHP-installation understøtter ikke UTF8-funktioner. Dolibarr kan ikke fungere korrekt. Løs dette inden du installerer Dolibarr. ErrorPHPDoesNotSupportIntl=Your PHP installation does not support Intl functions. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. ErrorDirDoesNotExists=Directory %s ikke eksisterer. ErrorGoBackAndCorrectParameters=Gå tilbage og kontroller / korrigér parametrene. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=Programmet forsøgte at opgradere selv, men insta YouTryInstallDisabledByFileLock=Programmet forsøgte at opgradere selv, men installerings- / opgraderingssiderne er blevet deaktiveret for sikkerhed (ved at der findes en låsfil install.lock i dolibarr-dokumenter-mappen).
    ClickHereToGoToApp=Klik her for at gå til din ansøgning ClickOnLinkOrRemoveManualy=Klik på følgende link. Hvis du altid ser den samme side, skal du fjerne / omdøbe filen install.lock i dokumentmappen. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/da_DK/interventions.lang b/htdocs/langs/da_DK/interventions.lang index 93b14f3b882..ab46fd73709 100644 --- a/htdocs/langs/da_DK/interventions.lang +++ b/htdocs/langs/da_DK/interventions.lang @@ -41,9 +41,7 @@ InterventionsArea=Ingrebsområde DraftFichinter=Udkast til indgreb LastModifiedInterventions=Latest %s modified interventions FichinterToProcess=Indgreb til behandling -##### Types de contacts ##### TypeContact_fichinter_external_CUSTOMER=Opfølgning kunde kontakt -# Modele numérotation PrintProductsOnFichinter=Udskriv også linjer af typen "produkt" (ikke kun tjenester) på ingreb kortet PrintProductsOnFichinterDetails=Et indgreb genereret af ordrer UseServicesDurationOnFichinter=Brug servicevarighed for indgreb genereret fra ordrer @@ -53,14 +51,16 @@ InterventionStatistics=Statistikker af indgreb NbOfinterventions=Antal interventionskort NumberOfInterventionsByMonth=Antal interventionskort efter måned (dato for bekræftelse) AmountOfInteventionNotIncludedByDefault=Indgreb beløb er ikke medtaget som standard i overskud (i de fleste tilfælde benyttes tidsskemaer til at tælle tid). Tilføj valgmulighed PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT til 1 i home setup-andre for at inkludere dem. -##### Exports ##### InterId=Indgrebs id InterRef=Indgreb ref. InterDateCreation=Dato oprettelse for indgreb InterDuration=Varighed af indgreb InterStatus=Status InterNote=Bemærk indgreb +InterLine=Line of intervention InterLineId=Line id indgreb InterLineDate=Linje dato indgreb InterLineDuration=Linje varighed indgreb InterLineDesc=Line beskrivelse af ingreb +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/da_DK/link.lang b/htdocs/langs/da_DK/link.lang index fdcf07aeff4..bf3e4545fe4 100644 --- a/htdocs/langs/da_DK/link.lang +++ b/htdocs/langs/da_DK/link.lang @@ -1,10 +1,11 @@ # Dolibarr language file - Source file is en_US - languages -LinkANewFile=Link a new file/document -LinkedFiles=Linked files and documents -NoLinkFound=No registered links -LinkComplete=The file has been linked successfully -ErrorFileNotLinked=The file could not be linked -LinkRemoved=The link %s has been removed -ErrorFailedToDeleteLink= Failed to remove link '%s' -ErrorFailedToUpdateLink= Failed to update link '%s' -URLToLink=URL to link +LinkANewFile=Link en ny fil / et dokument +LinkedFiles=Sammenkædede filer og dokumenter +NoLinkFound=Ingen registrerede links +LinkComplete=Filen er blevet linket korrekt +ErrorFileNotLinked=Filen kunne ikke forbindes +LinkRemoved=Linket %s er blevet fjernet +ErrorFailedToDeleteLink= Kunne ikke fjerne linket ' %s ' +ErrorFailedToUpdateLink= Kunne ikke opdatere linket ' %s ' +URLToLink=URL til link +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/da_DK/mails.lang b/htdocs/langs/da_DK/mails.lang index 3aea0b5baea..ac4731f9f95 100644 --- a/htdocs/langs/da_DK/mails.lang +++ b/htdocs/langs/da_DK/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=No contact/address with a category found NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found OutGoingEmailSetup=Udgående e-mail opsætning InGoingEmailSetup=Indgående e-mail opsætning -OutGoingEmailSetupForEmailing=Udgående e-mail opsætning (til masse emailing) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Standard udgående e-mail opsætning Information=Information ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/da_DK/main.lang b/htdocs/langs/da_DK/main.lang index 2f9e64a0919..0496ed4d3b8 100644 --- a/htdocs/langs/da_DK/main.lang +++ b/htdocs/langs/da_DK/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Gem og bliv SaveAndNew=Gem og nyt TestConnection=Test forbindelse ToClone=Klon +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Vælg de data, du vil klone: NoCloneOptionsSpecified=Ingen data at klone defineret. Of=af @@ -829,6 +830,8 @@ Gender=Køn Genderman=Mand Genderwoman=Kvinde ViewList=Vis liste +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Obligatorisk Hello=Hallo GoodBye=Farvel @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Vælg dine grafindstillinger for at oprette en graf Measures=Foranstaltninger XAxis=X-akse YAxis=Y-akse +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/da_DK/modulebuilder.lang b/htdocs/langs/da_DK/modulebuilder.lang index 2dbf8babf97..22e7544086a 100644 --- a/htdocs/langs/da_DK/modulebuilder.lang +++ b/htdocs/langs/da_DK/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=List of dictionaries entries ListOfPermissionsDefined=Liste over definerede tilladelser SeeExamples=Se eksempler her EnabledDesc=Tilstand at have dette felt aktivt (Eksempler: 1 eller $ conf-> global-> MYMODULE_MYOPTION) -VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update). Using a negative value means field is not shown by default on list but can be selected for viewing). It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty DisplayOnPdf=Display on PDF IsAMeasureDesc=Kan værdien af ​​feltet akkumuleres for at få en samlet liste? (Eksempler: 1 eller 0) SearchAllDesc=Er feltet brugt til at foretage en søgning fra hurtigsøgningsværktøjet? (Eksempler: 1 eller 0) diff --git a/htdocs/langs/da_DK/multicurrency.lang b/htdocs/langs/da_DK/multicurrency.lang new file mode 100644 index 00000000000..8cc30637a10 --- /dev/null +++ b/htdocs/langs/da_DK/multicurrency.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Multi-valuta +ErrorAddRateFail=Fejl i tilføjet sats +ErrorAddCurrencyFail=Fejl i tilføjet valuta +ErrorDeleteCurrencyFail=Fejl sletning mislykkes +multicurrency_syncronize_error=Synkroniseringsfejl: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Brug datoen for dokumentet til at finde valutakursen i stedet for at bruge den senest kendte sats +multicurrency_useOriginTx=Når et objekt er oprettet fra et andet, skal du holde den oprindelige sats fra kildeobjektet (ellers bruge den senest kendte sats) +CurrencyLayerAccount=CurrencyLayer API +CurrencyLayerAccount_help_to_synchronize=You must create an account on website %s to use this functionality.
    Get your API key.
    If you use a free account, you can't change the source currency (USD by default).
    If your main currency is not USD, the application will automatically recalculate it.

    You are limited to 1000 synchronizations per month. +multicurrency_appId=API-nøgle +multicurrency_appCurrencySource=Source currency +multicurrency_alternateCurrencySource=Alternate source currency +CurrenciesUsed=Brugte valutaer +CurrenciesUsed_help_to_add=Tilføj de forskellige valutaer og satser, du skal bruge på dine forslag , ordrer osv. +rate=sats +MulticurrencyReceived=Modtaget, original valuta +MulticurrencyRemainderToTake=Resterende beløb, original valuta +MulticurrencyPaymentAmount=Betalingsbeløb, oprindelig valuta +AmountToOthercurrency=Beløb til (i valuta for modtagende konto) +CurrencyRateSyncSucceed=Currency rate synchronization done successfuly +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Use the currency of the document for online payments diff --git a/htdocs/langs/da_DK/other.lang b/htdocs/langs/da_DK/other.lang index 2ac1a8ed8d7..47fee11ebee 100644 --- a/htdocs/langs/da_DK/other.lang +++ b/htdocs/langs/da_DK/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Sales order validated Notify_ORDER_SENTBYMAIL=Sales order sent by mail Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=URL til side WEBSITE_TITLE=Titel WEBSITE_DESCRIPTION=Beskrivelse WEBSITE_IMAGE=Billede -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=nøgleord LinesToImport=Linjer at importere diff --git a/htdocs/langs/da_DK/products.lang b/htdocs/langs/da_DK/products.lang index 42ce2440c93..d6fc860186e 100644 --- a/htdocs/langs/da_DK/products.lang +++ b/htdocs/langs/da_DK/products.lang @@ -2,7 +2,7 @@ ProductRef=Produkt ref. ProductLabel=Produktmærke ProductLabelTranslated=Oversat produktmærke -ProductDescription=Product description +ProductDescription=Produkt beskrivelse ProductDescriptionTranslated=Oversat produktbeskrivelse ProductNoteTranslated=Oversat produkt notat ProductServiceCard=Produkter / Tjenester kortet @@ -17,11 +17,13 @@ Create=Opret Reference=Reference NewProduct=Ny vare NewService=Ny ydelse -ProductVatMassChange=Global VAT Update -ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL products and services! +ProductVatMassChange=Global momsopdatering +ProductVatMassChangeDesc=Dette værktøj opdaterer momssatsen, der er defineret på ALLE produkter og tjenester! MassBarcodeInit=Mass barcode init MassBarcodeInitDesc=Denne side kan bruges til at initialisere en stregkode på objekter, der ikke har stregkode defineret. Kontroller, inden opsætningen af ​​modulets stregkode er afsluttet. ProductAccountancyBuyCode=Regnskabskode (køb) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Regnskabskode (salg) ProductAccountancySellIntraCode=Regnskabskode (salg inden for Fællesskabet) ProductAccountancySellExportCode=Regnskabskode (salg eksport) @@ -29,14 +31,14 @@ ProductOrService=Vare eller ydelse ProductsAndServices=Varer og ydelser ProductsOrServices=Varer eller ydelser ProductsPipeServices=Produkter | Services -ProductsOnSale=Products for sale -ProductsOnPurchase=Products for purchase +ProductsOnSale=Produkter til salg +ProductsOnPurchase=Produkter til køb ProductsOnSaleOnly=Varer kun til salg ProductsOnPurchaseOnly=Varer kun til indkøb ProductsNotOnSell=Varer, der ikke er til salg og ikke kan købes ProductsOnSellAndOnBuy=Produkter til salg og til køb -ServicesOnSale=Services for sale -ServicesOnPurchase=Services for purchase +ServicesOnSale=Tjenester til salg +ServicesOnPurchase=Tjenester til køb ServicesOnSaleOnly=Ydelser kun til salg ServicesOnPurchaseOnly=Ydelser kun til indkøb ServicesNotOnSell=Ydelse, der ikke er til salg og ikke kan købes @@ -48,10 +50,10 @@ CardProduct0=Vare CardProduct1=Ydelse Stock=Varelager MenuStocks=Lagre -Stocks=Stocks and location (warehouse) of products +Stocks=Lagre og placering (lager) af produkter Movements=Bevægelser Sell=Sælge -Buy=Purchase +Buy=Køb OnSell=Til salg OnBuy=Til indkøb NotOnSell=Ikke til salg @@ -66,17 +68,17 @@ ProductStatusNotOnBuyShort=Ikke til indkøb UpdateVAT=Opdater moms UpdateDefaultPrice=Opdater standardpris UpdateLevelPrices=Opdater priser for hvert niveau -AppliedPricesFrom=Applied from +AppliedPricesFrom=Anvendt fra SellingPrice=Salgspris -SellingPriceHT=Selling price (excl. tax) +SellingPriceHT=Salgspris (ekskl. Skat) SellingPriceTTC=Salgspris (inkl. moms) -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. +SellingMinPriceTTC=Minimumssalgspris (inkl. Skat) +CostPriceDescription=Dette prisfelt (ekskl. Skat) kan bruges til at gemme det gennemsnitlige beløb, dette produkt koster for din virksomhed. Det kan være enhver pris, du selv beregner, for eksempel ud fra den gennemsnitlige købspris plus gennemsnitlige produktions- og distributionsomkostninger. CostPriceUsage=Denne værdi kan bruges til margenberegning. SoldAmount=Solgt beløb PurchasedAmount=Købt beløb NewPrice=Ny pris -MinPrice=Min. sell price +MinPrice=Min. salgspris EditSellingPriceLabel=Rediger salgsprisetiket CantBeLessThanMinPrice=Salgsprisen kan ikke være lavere end det minimum, der er tilladt for denne vare (%s uden moms). Denne meddelelse kan også ses, hvis du bruger en for høj rabat. ContractStatusClosed=Lukket @@ -85,7 +87,7 @@ ErrorProductBadRefOrLabel=Forkert værdi for reference eller etiket. ErrorProductClone=Der opstod et problem under forsøg på at klone produktet eller tjenesten. ErrorPriceCantBeLowerThanMinPrice=Fejl, prisen kan ikke være lavere end minimumsprisen. Suppliers=Leverandører -SupplierRef=Vendor SKU +SupplierRef=Sælger SKU ShowProduct=Vis vare ShowService=Vis ydelse ProductsAndServicesArea=Varer og ydelser @@ -94,7 +96,7 @@ ServicesArea=Ydelser ListOfStockMovements=Liste over lagerbevægelser BuyingPrice=Købspris PriceForEachProduct=Produkter med specifikke priser -SupplierCard=Vendor card +SupplierCard=Sælgerkort PriceRemoved=Pris fjernet BarCode=Stregkode BarcodeType=Stregkodetype @@ -102,7 +104,7 @@ SetDefaultBarcodeType=Vælg stregkodetype BarcodeValue=Stregkodeværdi NoteNotVisibleOnBill=Note (ikke synlig på fakturaer, tilbud ...) ServiceLimitedDuration=Hvis varen er en ydelse med begrænset varighed: -MultiPricesAbility=Multiple price segments per product/service (each customer is in one price segment) +MultiPricesAbility=Flere prissegmenter pr. Produkt / service (hver kunde er i et prissegment) MultiPricesNumPrices=Antal priser AssociatedProductsAbility=Aktivér virtuelle produkter (sæt) AssociatedProducts=Virtuelle produkter @@ -116,7 +118,7 @@ CategoryFilter=Kategori filter ProductToAddSearch=Søg produkt for at tilføje NoMatchFound=Ingen match fundet ListOfProductsServices=Liste over produkter / tjenester -ProductAssociationList=List of products/services that are component(s) of this virtual product/kit +ProductAssociationList=Liste over produkter / tjenester, der er komponent (er) i dette virtuelle produkt / kit ProductParentList=Liste over produkter / services med dette produkt som en komponent ErrorAssociationIsFatherOfThis=En af valgte produkt er moderselskab med aktuelle produkt DeleteProduct=Slet en vare/ydelse @@ -129,15 +131,15 @@ ImportDataset_service_1=Ydelser DeleteProductLine=Slet varelinje ConfirmDeleteProductLine=Er du sikker på du vil slette denne varelinje? ProductSpecial=Særlig -QtyMin=Min. purchase quantity -PriceQtyMin=Price quantity min. -PriceQtyMinCurrency=Price (currency) for this qty. (no discount) -VATRateForSupplierProduct=VAT Rate (for this vendor/product) -DiscountQtyMin=Discount for this qty. -NoPriceDefinedForThisSupplier=No price/qty defined for this vendor/product -NoSupplierPriceDefinedForThisProduct=No vendor price/qty defined for this product -PredefinedProductsToSell=Predefined Product -PredefinedServicesToSell=Predefined Service +QtyMin=Min. købsmængde +PriceQtyMin=Prismængde min. +PriceQtyMinCurrency=Pris (valuta) for denne mængde. (ingen rabat) +VATRateForSupplierProduct=Momssats (for denne leverandør / produkt) +DiscountQtyMin=Rabat for denne mængde. +NoPriceDefinedForThisSupplier=Ingen pris / antal defineret for denne leverandør / produkt +NoSupplierPriceDefinedForThisProduct=Der er ikke defineret nogen leverandørpris / antal for dette produkt +PredefinedProductsToSell=Foruddefineret produkt +PredefinedServicesToSell=Foruddefineret service PredefinedProductsAndServicesToSell=Predefinerede produkter / tjenester til salg PredefinedProductsToPurchase=Predefineret produkt til køb PredefinedServicesToPurchase=Predefinerede tjenester til køb @@ -153,8 +155,8 @@ RowMaterial=Råvare ConfirmCloneProduct=Er du sikker på at du vil klone produktet eller tjenesten %s ? CloneContentProduct=Klon alle hovedoplysninger af produkt / service ClonePricesProduct=Klonpriser -CloneCategoriesProduct=Clone tags/categories linked -CloneCompositionProduct=Clone virtual product/service +CloneCategoriesProduct=Klon tags / kategorier knyttet +CloneCompositionProduct=Klon virtuelt produkt / service CloneCombinationsProduct=Klon produkt varianter ProductIsUsed=Denne vare er brugt NewRefForClone=Ref. for nye vare/ydelse @@ -162,10 +164,10 @@ SellingPrices=Salgspriser BuyingPrices=Købspriser CustomerPrices=Kundepriser SuppliersPrices=Leverandørpriser -SuppliersPricesOfProductsOrServices=Vendor prices (of products or services) +SuppliersPricesOfProductsOrServices=Sælgerpriser (af produkter eller tjenester) CustomCode=Told / vare / HS-kode CountryOrigin=Oprindelsesland -Nature=Nature of produt (material/finished) +Nature=Nature of product (material/finished) ShortLabel=Kort etiket Unit=Enhed p=u. @@ -210,7 +212,7 @@ unitDM=dm unitCM=cm unitMM=mm unitFT=ft -unitIN=in +unitIN=i unitM2=Kvadratmeter unitDM2=dm² unitCM2=cm² @@ -218,7 +220,7 @@ unitMM2=mm² unitFT2=ft² unitIN2=in² unitM3=Kubikmeter -unitDM3=dm³ +unitDM3=dm unitCM3=cm³ unitMM3=mm³ unitFT3=ft³ @@ -238,8 +240,8 @@ UseMultipriceRules=Brug prissegmentregler (defineret i opsætning af produktmodu PercentVariationOver=%% variation over %s PercentDiscountOver=%% rabat over %s KeepEmptyForAutoCalculation=Hold tom for at få dette beregnet automatisk ud fra vægt eller volumen af ​​produkter -VariantRefExample=Examples: COL, SIZE -VariantLabelExample=Examples: Color, Size +VariantRefExample=Eksempler: COL, STØRRELSE +VariantLabelExample=Eksempler: Farve, størrelse ### composition fabrication Build=Fremstille ProductsMultiPrice=Produkter og priser for hvert prissegment @@ -250,18 +252,18 @@ Quarter1=1st. Kvarter Quarter2=2nd. Kvarter Quarter3=3rd. Kvarter Quarter4=4th. Kvarter -BarCodePrintsheet=Print barcode -PageToGenerateBarCodeSheets=With this tool, you can print sheets of barcode stickers. Choose format of your sticker page, type of barcode and value of barcode, then click on button %s. +BarCodePrintsheet=Udskriv stregkode +PageToGenerateBarCodeSheets=Med dette værktøj kan du udskrive ark med stregkode-klistermærker. Vælg format for din klistermærkeside, type stregkode og stregkodes værdi, og klik derefter på knappen %s . NumberOfStickers=Antal klistermærker til udskrivning på side PrintsheetForOneBarCode=Udskriv flere klistermærker for en stregkode BuildPageToPrint=Generer side, der skal udskrives FillBarCodeTypeAndValueManually=Udfyld stregkode type og værdi manuelt. FillBarCodeTypeAndValueFromProduct=Udfyld stregkode type og værdi fra stregkode for et produkt. FillBarCodeTypeAndValueFromThirdParty=Udfyld stregkode type og værdi fra stregkode for en tredjepart. -DefinitionOfBarCodeForProductNotComplete=Definition of type or value of barcode not complete for product %s. -DefinitionOfBarCodeForThirdpartyNotComplete=Definition of type or value of barcode non complete for third party %s. -BarCodeDataForProduct=Barcode information of product %s: -BarCodeDataForThirdparty=Barcode information of third party %s: +DefinitionOfBarCodeForProductNotComplete=Definition af type eller værdi af stregkode er ikke komplet for produkt %s. +DefinitionOfBarCodeForThirdpartyNotComplete=Definition af type eller værdi af stregkode ikke komplet til tredjepart %s. +BarCodeDataForProduct=Stregkodeinformation for produktet %s: +BarCodeDataForThirdparty=Stregkodeinformation fra tredjepart %s: ResetBarcodeForAllRecords=Definer stregkodeværdi for alle poster (dette vil også nulstille stregkodeværdi allerede defineret med nye værdier) PriceByCustomer=Forskellige priser for hver kunde PriceCatalogue=En enkelt salgspris pr. Produkt / service @@ -270,28 +272,28 @@ AddCustomerPrice=Tilføj pris ved kunde ForceUpdateChildPriceSoc=Indstil samme pris på kundernes datterselskaber PriceByCustomerLog=Log af tidligere kundepriser MinimumPriceLimit=Minimumsprisen kan ikke være lavere end %s -MinimumRecommendedPrice=Minimum recommended price is: %s +MinimumRecommendedPrice=Minimum anbefalet pris er: %s PriceExpressionEditor=Pris Udtryks Editor PriceExpressionSelected=Udvalgt prisudtryk PriceExpressionEditorHelp1="pris = 2 + 2" eller "2 + 2" til indstilling af prisen. Brug ; at adskille udtryk PriceExpressionEditorHelp2=Du kan få adgang til ExtraFields med variabler som #extrafield_myextrafieldkey # og globale variabler med #global_mycode # -PriceExpressionEditorHelp3=In both product/service and vendor prices there are these variables available:
    #tva_tx# #localtax1_tx# #localtax2_tx# #weight# #length# #surface# #price_min# -PriceExpressionEditorHelp4=In product/service price only: #supplier_min_price#
    In vendor prices only: #supplier_quantity# and #supplier_tva_tx# +PriceExpressionEditorHelp3=I både produkt / service og leverandørpriser er der disse variabler tilgængelige:
    # tva_tx # # localtax1_tx # # localtax2_tx # # vægt # # længde # # overflade # # pris_min # +PriceExpressionEditorHelp4=Kun i produkt / service pris: # leverandør_min_pris #
    Kun i sælgerpriser: # leverandør_kvantitet # og # leverandør_tva_tx # a09a4b73917 PriceExpressionEditorHelp5=Tilgængelige globale værdier: PriceMode=Pris-tilstand PriceNumeric=Numero DefaultPrice=Standard pris ComposedProductIncDecStock=Forøg / sænk lagerbeholdning ved forældreændring -ComposedProduct=Child products +ComposedProduct=Børneprodukter MinSupplierPrice=Min købskurs MinCustomerPrice=Mindste salgspris DynamicPriceConfiguration=Dynamisk priskonfiguration -DynamicPriceDesc=You may define mathematical formulae to calculate Customer or Vendor prices. Such formulas can use all mathematical operators, some constants and variables. You can define here the variables you wish to use. If the variable needs an automatic update, you may define the external URL to allow Dolibarr to update the value automatically. +DynamicPriceDesc=Du kan definere matematiske formler til beregning af kunde- eller leverandørpriser. Sådanne formler kan bruge alle matematiske operatorer, nogle konstanter og variabler. Du kan her definere de variabler, du vil bruge. Hvis variablen har brug for en automatisk opdatering, kan du definere den eksterne URL, så Dolibarr kan opdatere værdien automatisk. AddVariable=Tilføj variabel AddUpdater=Tilføj opdaterer GlobalVariables=Globale variabler VariableToUpdate=Variabel for opdatering -GlobalVariableUpdaters=External updaters for variables +GlobalVariableUpdaters=Eksterne opdateringer til variabler GlobalVariableUpdaterType0=JSON data GlobalVariableUpdaterHelp0=Analyserer JSON-data fra den angivne webadresse, VALUE angiver placeringen af ​​den relevante værdi, GlobalVariableUpdaterHelpFormat0=Formatér for anmodning {"URL": "http://example.com/urlofjson", "VALUE": "array1, array2, targetvalue"} @@ -309,7 +311,7 @@ WarningSelectOneDocument=Vælg mindst et dokument DefaultUnitToShow=Enhed NbOfQtyInProposals=Antal i forslag ClinkOnALinkOfColumn=Klik på et link i kolonne %s for at få en detaljeret visning ... -ProductsOrServicesTranslations=Products/Services translations +ProductsOrServicesTranslations=Produkter / tjenester oversættelser TranslatedLabel=Oversat etiket TranslatedDescription=Oversat beskrivelse TranslatedNote=Oversatte noter @@ -317,10 +319,10 @@ ProductWeight=Vægt for 1 produkt ProductVolume=Volumen for 1 produkt WeightUnits=Vægt enhed VolumeUnits=Volumen enhed -WidthUnits=Width unit -LengthUnits=Length unit -HeightUnits=Height unit -SurfaceUnits=Surface unit +WidthUnits=Bredde enhed +LengthUnits=Længde enhed +HeightUnits=Højdeenhed +SurfaceUnits=Overfladeenhed SizeUnits=Størrelsesenhed DeleteProductBuyPrice=Slet købspris ConfirmDeleteProductBuyPrice=Er du sikker på, at du vil slette denne købspris? @@ -329,11 +331,11 @@ ProductSheet=Vareside ServiceSheet=Serviceblad PossibleValues=Mulige værdier GoOnMenuToCreateVairants=Gå på menu %s - %s for at forberede attributvarianter (som farver, størrelse, ...) -UseProductFournDesc=Add a feature to define the descriptions of products defined by the vendors in addition to descriptions for customers -ProductSupplierDescription=Vendor description for the product -UseProductSupplierPackaging=Use packaging on supplier prices (recalculate quantities according to packaging set on supplier price when adding/updating line in supplier documents) -PackagingForThisProduct=Packaging -QtyRecalculatedWithPackaging=The quantity of the line were recalculated according to supplier packaging +UseProductFournDesc=Tilføj en funktion til at definere beskrivelser af produkter, der er defineret af leverandørerne, ud over beskrivelser til kunder +ProductSupplierDescription=Leverandørbeskrivelse for produktet +UseProductSupplierPackaging=Brug emballage til leverandørpriser (genberegn mængder i henhold til emballage, der er angivet på leverandørpris, når du tilføjer / opdaterer linje i leverandørdokumenter) +PackagingForThisProduct=Emballage +QtyRecalculatedWithPackaging=Mængden af linjen blev beregnet om efter leverandøremballage #Attributes VariantAttributes=Variant attributter @@ -367,17 +369,17 @@ UsePercentageVariations=Brug procentvise variationer PercentageVariation=Procentvis variation ErrorDeletingGeneratedProducts=Der opstod en fejl under forsøg på at slette eksisterende varianter NbOfDifferentValues=Antal forskellige værdier -NbProducts=Number of products +NbProducts=Antal produkter ParentProduct=Forældrevarer HideChildProducts=Skjul varevarianter ShowChildProducts=Vis variantprodukter -NoEditVariants=Go to Parent product card and edit variants price impact in the variants tab +NoEditVariants=Gå til Parent-produktkort og rediger variantens prispåvirkning under fanen Varianter ConfirmCloneProductCombinations=Vil du gerne kopiere alle varianter til det andet overordnede produkt med den givne reference? CloneDestinationReference=Bestemmelsesproduktreference ErrorCopyProductCombinations=Der opstod en fejl under kopiering af varianter af varen ErrorDestinationProductNotFound=Destination produkt ikke fundet ErrorProductCombinationNotFound=Varevariant ikke fundet -ActionAvailableOnVariantProductOnly=Action only available on the variant of product -ProductsPricePerCustomer=Product prices per customers -ProductSupplierExtraFields=Additional Attributes (Supplier Prices) -DeleteLinkedProduct=Delete the child product linked to the combination +ActionAvailableOnVariantProductOnly=Handling kun tilgængelig på variant af produkt +ProductsPricePerCustomer=Produktpriser pr. Kunde +ProductSupplierExtraFields=Yderligere attributter (leverandørpriser) +DeleteLinkedProduct=Slet det underordnede produkt, der er knyttet til kombinationen diff --git a/htdocs/langs/da_DK/projects.lang b/htdocs/langs/da_DK/projects.lang index 132f59035a3..24862a0756c 100644 --- a/htdocs/langs/da_DK/projects.lang +++ b/htdocs/langs/da_DK/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=which I'm linked to project Time=Tid ListOfTasks=Liste over opgaver GoToListOfTimeConsumed=Gå til listen over tid forbrugt -GoToListOfTasks=Show as list -GoToGanttView=show as Gantt GanttView=Gantt View ListProposalsAssociatedProject=List of the commercial proposals related to the project ListOrdersAssociatedProject=List of sales orders related to the project @@ -188,7 +186,7 @@ PlannedWorkload=Planlagt arbejdsbyrde PlannedWorkloadShort=arbejdsbyrde ProjectReferers=Relaterede emner ProjectMustBeValidatedFirst=Projektet skal bekræftes først -FirstAddRessourceToAllocateTime=Tildel en brugerressource til opgaven for at allokere tid +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=Indgang pr. Dag InputPerWeek=Indgang pr. Uge InputPerMonth=Input per month @@ -240,6 +238,7 @@ LatestModifiedProjects=Seneste %s ændrede projekter OtherFilteredTasks=Andre filtrerede opgaver NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=Tillad brugernes kommentarer til opgaver AllowCommentOnProject=Tillad brugernes kommentarer til projekter @@ -256,7 +255,7 @@ ServiceToUseOnLines=Service to use on lines InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. ProjectFollowOpportunity=Follow opportunity -ProjectFollowTasks=Follow tasks +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Usage: Opportunity UsageTasks=Usage: Tasks @@ -265,3 +264,4 @@ InvoiceToUse=Draft invoice to use NewInvoice=Ny faktura OneLinePerTask=One line per task OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/da_DK/receiptprinter.lang b/htdocs/langs/da_DK/receiptprinter.lang index 53dfdcad15f..6f52edb7a45 100644 --- a/htdocs/langs/da_DK/receiptprinter.lang +++ b/htdocs/langs/da_DK/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Dummy Printer CONNECTOR_NETWORK_PRINT=Netværksprinter CONNECTOR_FILE_PRINT=Lokal printer CONNECTOR_WINDOWS_PRINT=Lokal Windows Printer +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Falsk printer til test, gør ingenting CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x: 9100 CONNECTOR_FILE_PRINT_HELP=/ dev / usb / lp0, / dev / usb / lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb: //FooUser:hemmeligt@computernavn/arbejdsgruppe/kvitteringsprinter +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Standard profil PROFILE_SIMPLE=Enkel profil PROFILE_EPOSTEP=Epos Tep Profile @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Invoice month in letters DOL_VALUE_MONTH=Invoice month DOL_VALUE_DAY=Invoice day DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Faktura ref +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Moms ID inden for Fællesskabet +DOL_VALUE_MYSOC_CAPITAL=Egenkapital +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/da_DK/stripe.lang b/htdocs/langs/da_DK/stripe.lang index 8a6e6cc98fb..7ea3e6c6d93 100644 --- a/htdocs/langs/da_DK/stripe.lang +++ b/htdocs/langs/da_DK/stripe.lang @@ -32,6 +32,7 @@ VendorName=Navn på leverandør CSSUrlForPaymentForm=CSS stilark url for betalingsformular NewStripePaymentReceived=Ny Stripe betaling modtaget NewStripePaymentFailed=Ny Stripe betaling forsøgt men mislykkedes +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Hemmelig testnøgle STRIPE_TEST_PUBLISHABLE_KEY=Udgivelig testnøgle STRIPE_TEST_WEBHOOK_KEY=Webhook testnøgle @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mo 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... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authenticatin rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/da_DK/users.lang b/htdocs/langs/da_DK/users.lang index f970ceaa08e..465b8ad793b 100644 --- a/htdocs/langs/da_DK/users.lang +++ b/htdocs/langs/da_DK/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Brugere og deres egenskaber DomainUser=Domænebruger %s Reactivate=Genaktiver CreateInternalUserDesc=This form allows you to create an internal user in your company/organization. To create an external user (customer, vendor etc. ..), use the button 'Create Dolibarr User' from that third-party's contact card. -InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other.

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=Tilladelse gives, fordi arvet fra en af en brugers gruppe. Inherited=Arvelige UserWillBeInternalUser=Oprettet brugeren vil blive en intern bruger (fordi der ikke er knyttet til en bestemt tredjepart) @@ -110,3 +110,8 @@ UserLogged=Bruger logget DateEmployment=Employment Start Date DateEmploymentEnd=Employment End Date CantDisableYourself=You can't disable your own user record +ForceUserExpenseValidator=Force expense report validator +ForceUserHolidayValidator=Force leave request validator +ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/da_DK/website.lang b/htdocs/langs/da_DK/website.lang index 317c15c1b37..5c24c6d503d 100644 --- a/htdocs/langs/da_DK/website.lang +++ b/htdocs/langs/da_DK/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=Se side i ny fane SetAsHomePage=Angiv som hjemmeside RealURL=Rigtig webadresse ViewWebsiteInProduction=Se websitet ved hjælp af hjemmesider -SetHereVirtualHost=Use with Apache/NGinx/...
    If you can create, on your web server (Apache, Nginx, ...), a dedicated Virtual Host with PHP enabled and a Root directory on
    %s
    then set the name of the virtual host you have created in the properties of web site, so the preview can be done also using this dedicated web server access instead of the internal Dolibarr server. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS= Brug med PHP-integreret server
    På udvikler miljø kan du helst prøve webstedet med den indbyggede PHP-server (PHP 5.5 påkrævet) ved at køre
    php -S 0.0. 0,0: 8080 -t %s YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org CheckVirtualHostPerms=Kontroller også, at den virtuelle vært har tilladelse %s på filer til
    %s @@ -56,7 +57,7 @@ NoPageYet=Ingen sider endnu YouCanCreatePageOrImportTemplate=Du kan oprette en ny side eller importere en fuld hjemmeside skabelon SyntaxHelp=Hjælp til specifikke syntax tips YouCanEditHtmlSourceckeditor=Du kan redigere HTML-kildekode ved hjælp af knappen "Kilde" i editoren. -YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Klon side / container CloneSite=Klon website SiteAdded=Website added @@ -76,7 +77,7 @@ BlogPost=Blogindlæg WebsiteAccount=Website account WebsiteAccounts=Websitetskonti AddWebsiteAccount=Opret websitet konto -BackToListOfThirdParty=Tilbage til listen for tredjepart +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Deaktiver hjemmesiden først MyContainerTitle=Min hjemmeside titel AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Sorry, this website is currently off line. Please WEBSITE_USE_WEBSITE_ACCOUNTS=Aktivér webstedets kontobord WEBSITE_USE_WEBSITE_ACCOUNTSTooltip=Enable the table to store web site accounts (login/pass) for each website / third party YouMustDefineTheHomePage=Du skal først definere standard startside -OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that edits of HTML source will be possible when page content has been initialized by grabbing it from an external page ("Online" editor will NOT be available) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Kun udgave af HTML-kilde er mulig, når indhold blev taget fra et eksternt websted GrabImagesInto=Grib også billeder fundet i css og side. ImagesShouldBeSavedInto=Billeder skal gemmes i biblioteket @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 ch MainLanguage=Main language OtherLanguages=Other languages UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/da_DK/zapier.lang b/htdocs/langs/da_DK/zapier.lang new file mode 100644 index 00000000000..6d6eda71313 --- /dev/null +++ b/htdocs/langs/da_DK/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr module + +# +# Admin page +# +ZapierForDolibarrSetup = Setup of Zapier for Dolibarr diff --git a/htdocs/langs/de_AT/accountancy.lang b/htdocs/langs/de_AT/accountancy.lang new file mode 100644 index 00000000000..2c29355cd9e --- /dev/null +++ b/htdocs/langs/de_AT/accountancy.lang @@ -0,0 +1,4 @@ +# Dolibarr language file - Source file is en_US - accountancy +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 +MenuBankAccounts=Kontonummern diff --git a/htdocs/langs/de_AT/admin.lang b/htdocs/langs/de_AT/admin.lang index 4afdce2c5dd..21556732826 100644 --- a/htdocs/langs/de_AT/admin.lang +++ b/htdocs/langs/de_AT/admin.lang @@ -19,17 +19,13 @@ InternalUsers=interne Nutzer ExternalUsers=externe Nutzer GUISetup=Anischt NextValue=Nächste Wert -AntiVirusCommandExample=Beispiel für ClamWin: c:\\Program Files (x86)\\ClamWin\\bin\\clamscan.exe
    Beispiel für ClamAV: /usr/bin/clamscan -AntiVirusParamExample=Beispiel für ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" URL=URL oder Link -YouCanSubmitFile=You can upload the .zip file of module package from here: Module50Name=Produkte und Services Module53Name=Dienstleistung Module70Name=Eingriffe Module70Desc=Eingriffsverwaltung Module80Name=Sendungen Module310Desc=Mitgliederverwaltun -Module50150Desc=Point of Sale module TakePOS (touchscreen POS, for shops, bars or restaurants). Permission31=Produkte/Services einsehen Permission32=Produkte/Services erstellen/bearbeiten Permission34=Produkte/Services löschen @@ -73,7 +69,6 @@ Permission2411=Maßnahmen (Termine oder Aufgaben) Anderer einsehen Permission2412=Maßnahmen (Termine oder Aufgaben) Anderer erstellen/bearbeiten Permission2413=Maßnahmen (Termine oder Aufgaben) Anderer löschen Permission2501=Dokumente hochladen oder löschen -ValueOfConstantKey=Value of a configuration constant VirtualServerName=Virtual Server Name PhpWebLink=Php Web-Link Server=Host @@ -94,8 +89,6 @@ InterventionsSetup=Eingriffsmoduleinstellungen FreeLegalTextOnInterventions=Freier Rechtstext für Eingriffe WatermarkOnDraftInterventionCards=Wasserzeichen auf Intervention Karte Dokumente (alle, wenn leer) ClickToDialSetup=Click-to-Dial-Moduleinstellungen -SuppliersCommandModel=Complete template of Purchase Order -SuppliersInvoiceModel=Complete template of Vendor Invoice MailToSendShipment=Sendungen MailToSendIntervention=Eingriffe 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/de_AT/bills.lang b/htdocs/langs/de_AT/bills.lang index d15ee7cc57c..0a3f17e463f 100644 --- a/htdocs/langs/de_AT/bills.lang +++ b/htdocs/langs/de_AT/bills.lang @@ -21,7 +21,7 @@ ValidateInvoice=Validate Rechnung DisabledBecausePayments=Nicht möglich, da gibt es einige Zahlungen CantRemovePaymentWithOneInvoicePaid=Kann die Zahlung nicht entfernen, da es zumindest auf der Rechnung bezahlt klassifiziert PayedByThisPayment=Bezahlt durch diese Zahlung -PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template (old implementation of Sponge template) +PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template TerreNumRefModelDesc1=Zurück NUMERO mit Format %syymm-nnnn für Standardrechnungen und syymm%-nnnn für Gutschriften, wo ist JJ Jahr, MM Monat und nnnn ist eine Folge ohne Pause und keine Rückkehr auf 0 TypeContact_facture_internal_SALESREPFOLL=Repräsentative Follow-up Debitorenrechnung TypeContact_facture_external_BILLING=Debitorenrechnung Kontakt diff --git a/htdocs/langs/de_AT/errors.lang b/htdocs/langs/de_AT/errors.lang index ffa5721c11c..c20def2a8d4 100644 --- a/htdocs/langs/de_AT/errors.lang +++ b/htdocs/langs/de_AT/errors.lang @@ -3,4 +3,3 @@ ErrorBadUrl=Url %s ist ungültig ErrorRecordNotFound=Eintrag nicht gefunden. ErrorCashAccountAcceptsOnlyCashMoney=Dies ist ein Bargeldkonto (Kassa) und akzeptiert deshalb nur Bargeldtransaktionen. ErrorCustomerCodeAlreadyUsed=Diese Kunden Nr. ist bereits vergeben. -ErrorSelectAtLeastOne=Error, select at least one entry. diff --git a/htdocs/langs/de_AT/exports.lang b/htdocs/langs/de_AT/exports.lang index 493579d0a25..6fb49b45c57 100644 --- a/htdocs/langs/de_AT/exports.lang +++ b/htdocs/langs/de_AT/exports.lang @@ -1,3 +1,2 @@ # Dolibarr language file - Source file is en_US - exports -SQLUsedForExport=SQL Request used to extract data FieldsInTargetDatabase=Zielfelder in der Systemdatenbank (* erforderlich) diff --git a/htdocs/langs/de_AT/externalsite.lang b/htdocs/langs/de_AT/externalsite.lang new file mode 100644 index 00000000000..d481926dd08 --- /dev/null +++ b/htdocs/langs/de_AT/externalsite.lang @@ -0,0 +1,4 @@ +# Dolibarr language file - Source file is en_US - externalsite +ExternalSiteSetup=Verknüpfung zur externen Website einrichten +ExternalSiteURL=Externe Seiten-URL +ExampleMyMenuEntry=Mein Menüeintrag diff --git a/htdocs/langs/de_AT/install.lang b/htdocs/langs/de_AT/install.lang index 8c95ade8d86..3f360945492 100644 --- a/htdocs/langs/de_AT/install.lang +++ b/htdocs/langs/de_AT/install.lang @@ -1,6 +1,5 @@ # Dolibarr language file - Source file is en_US - install GoToDolibarr=Zu dolibarr GoToUpgradePage=Zur Aktualisierungsseite -DirectoryRecommendation=IMPORTANT: You must use a directory that is outside of the web pages (so do not use a subdirectory of previous parameter). DBSortingCollation=Reihenfolge der Zeichensortierung (Collation) MigrationActioncommElement=Update-Daten über die Maßnahmen diff --git a/htdocs/langs/de_AT/languages.lang b/htdocs/langs/de_AT/languages.lang index 373dbb213be..1057c7f65d6 100644 --- a/htdocs/langs/de_AT/languages.lang +++ b/htdocs/langs/de_AT/languages.lang @@ -1,3 +1,2 @@ # Dolibarr language file - Source file is en_US - languages -Language_nl_NL=Dutch Language_pt_PT=Portugiesisch diff --git a/htdocs/langs/de_AT/modulebuilder.lang b/htdocs/langs/de_AT/modulebuilder.lang new file mode 100644 index 00000000000..8bbcc78a506 --- /dev/null +++ b/htdocs/langs/de_AT/modulebuilder.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - modulebuilder +ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: diff --git a/htdocs/langs/de_AT/other.lang b/htdocs/langs/de_AT/other.lang index 51e1f322638..a3a26cd55b0 100644 --- a/htdocs/langs/de_AT/other.lang +++ b/htdocs/langs/de_AT/other.lang @@ -21,4 +21,3 @@ EMailTextInterventionValidated=Eingriff %s freigegeben ThisIsListOfModules=Dies ist eine Liste der Module, die von dieser Demo-Profil (nur gängigsten Module sind in dieser Demo) vorgewählt. Bearbeiten, um eine personalisierte Demo haben und klicken Sie auf "Start". SelectAColor=Wählen Sie eine Farbe WEBSITE_TITLE=Titel -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. diff --git a/htdocs/langs/de_CH/accountancy.lang b/htdocs/langs/de_CH/accountancy.lang index 21a82fa90b2..698820c59fe 100644 --- a/htdocs/langs/de_CH/accountancy.lang +++ b/htdocs/langs/de_CH/accountancy.lang @@ -183,7 +183,6 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Der Partner ist nicht def UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Mir fehlt der Partner und das Wartestellungskonto. Zugriffsfehler. PaymentsNotLinkedToProduct=Die Zahlung ist mit keinem Produkt oder Service verknüpft. Pcgtype=Kontengruppe -PcgtypeDesc=Group 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. TotalMarge=Gesamtmarge Verkauf DescVentilCustomer=Du siehst hier die Liste der Kundenrechnungen und ob diese mit einem Buchhaltungskonto verknüpft sind, oder nicht. DescVentilMore=Wenn du in den Produkten und Leistungen die Buchhaltungskonten deines Kontenplanes hinterlegt hast, kann ich die Rechnungspositionen automatisch jenen Konten zuordnen. Dafür ist die Schaltfläche "%s" da.\nDort, wo das nicht klappt, kannst du die Rechnungspositionen via "%s" von Hand zuweisen. diff --git a/htdocs/langs/de_CH/admin.lang b/htdocs/langs/de_CH/admin.lang index 7fcee10eb8a..44472f52343 100644 --- a/htdocs/langs/de_CH/admin.lang +++ b/htdocs/langs/de_CH/admin.lang @@ -53,9 +53,7 @@ NextValueForDeposit=Nächster Wert (Anzahlung) MustBeLowerThanPHPLimit=Hinweis: Deine PHP Konfigurationslimite für Uploads ist aktuell %s %s pro Datei - unabhängig vom Wert dieses Parameters. NoMaxSizeByPHPLimit=Hinweis: In Ihren PHP-Einstellungen sind keine Grössenbeschränkungen hinterlegt MaxSizeForUploadedFiles=Maximale Grösse für Dateiuploads (0 verbietet jegliche Uploads) -AntiVirusCommandExample=Beispiel für ClamWin: c:\\Program Files (x86)\\ClamWin\\bin\\clamscan.exe
    Beispiel für ClamAV: /usr/bin/clamscan AntiVirusParam=Weitere Parameter auf der Kommandozeile -AntiVirusParamExample=Beispiel für ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" MultiCurrencySetup=Mehrfachwährungen konfigurieren MenuIdParent=Eltern-Menü-ID DetailPosition=Reihungsnummer für definition der Menüposition @@ -94,7 +92,6 @@ AddDropDatabase=DROP DATABASE Befehl hinzufügen AddDropTable=DROP TABLE Befehl hinzufügen IgnoreDuplicateRecords=Fehler durch doppelte Zeilen ignorieren (INSERT IGNORE) BoxesDesc=Boxen (Widgets) sind Informationsblöcke, die man für personalisierte Ansichten verwenden kann. Gib bei einer Box an, auf welcher Ansicht Sie erscheinen soll und Klicke auf "Aktivieren" - oder entferne eine Box über das Papierkorbsymbol. -ModulesDesc=Über Module steuerst du die Funktionsvielfalt deiner Dolibarr - Umgebung. Schalte die gewünschten Module einfach mit dem Schiebeschalter daneben ein und aus. Setze dann benutzerspezifische Rechte für deine Anwender. ModulesMarketPlaceDesc=Sie finden weitere Module auf externen Websites ModulesDeployDesc=Hier kannst du Module und Apps von Drittanbietern in deine Umgebung einbinden. Dazu braucht es lokale Schreibrechte auf deiner Webserverumgebung. Diese Module erscheinen danach hier im Tab "%s" ModulesMarketPlaces=Suche externe Module @@ -176,7 +173,6 @@ UnpackPackageInDolibarrRoot=Entpacke das Archiv in dein aktuelles Dolibarr Verze UnpackPackageInModulesRoot=Zum Einbinden eines externen Moduls entpackst du deren Archiv in das Verzeichnis:
    %s. SetupIsReadyForUse=Modulinstallation abgeschlossen. Aktiviere und konfiguriere nun das Modul im Menu "%s". InfDirExample=
    Dann deklariere in conf.php
    $dolibarr_main_url_root_alt='/custom'
    $dolibarr_main_document_root_alt='/path/of/dolibarr/htdocs/custom'
    \n"#" heisst, die Variablen sind auskommentiert und werden nicht berücksichtigt.\nEntferne einfach "#", um die Variablen scharf zu schalten. -YouCanSubmitFile=You can upload the .zip file of module package from here: CallUpdatePage=Zur Aktualisierung der Daten und der Datenbankstruktur gehst du zur Seite %s. UpdateServerOffline=Update-Server offline WithCounter=Zähler verwalten @@ -326,7 +322,6 @@ Module40000Desc=Verwendung alternativer Währungen in Preisen und Dokumenten Module50100Name=Simple POS Module50100Desc=Kassenmodul (Simple POS) Module50150Name=Take POS -Module50150Desc=Point of Sale module TakePOS (touchscreen POS, for shops, bars or restaurants). Module50200Desc=PayPal Zahlungsmaske aktivieren. So können deine Kunden Dolibarr - Rechnungen via PayPal oder Kreditkarte bezahlen. Module50300Desc=Stripe Zahlungsmaske aktivieren. So können deine Kunden Dolibarr - Rechnungen via Wallets oder Kreditkarte (plus weitere Stripe Zahlungsmöglichkeiten) bezahlen. Module50400Name=Doppelte Buchhaltung @@ -406,7 +401,6 @@ VATIsUsedDesc=Standardmässig folgt der Umsatzsteuersatz beim Erstellen von Inte VATIsNotUsedDesc=Standardmässig beträgt die vorgeschlagene Umsatzsteuer 0, was für Fälle wie Vereine, Einzelpersonen oder kleine Unternehmen verwendet werden kann. LocalTax1IsNotUsedDescES=Standardmässig werden die vorgeschlagenen RE 0 ist. Ende der Regel. LocalTax2IsNotUsedDescES=Standardmässig werden die vorgeschlagenen IRPF 0 ist. Ende der Regel. -ValueOfConstantKey=Value of a configuration constant AtEndOfMonth=Am Ende des Monats DriverType=Treiber Typ MenuCompanySetup=Firma / Organisation @@ -415,8 +409,6 @@ CompanyInfo=Firma / Organisation CompanyZip=PLZ DoNotSuggestPaymentMode=Nicht vorschlagen SetupDescription1=Der Setupbereich erlaubt das konfigurieren ihrer Dolibarr Installation vor der ersten Verwendung. -SetupDescription3=%s -> %s
    Grundlegende Parameter zum Anpassen des Standardverhaltens Ihrer Anwendung (z. B. für länderbezogene Funktionen). -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 InfoBrowser=Infos Browser InfoOS=Infos OS @@ -505,8 +497,6 @@ ApiSetup=API-Modul-Setup ChequeReceiptsNumberingModule=Modul Cheques - Verwaltung MultiCompanySetup=Multi-Company-Moduleinstellungen SuppliersSetup=Modul Lieferanten einrichten -SuppliersCommandModel=Complete template of Purchase Order -SuppliersInvoiceModel=Complete template of Vendor Invoice TasksNumberingModules=Aufgaben-Nummerierungs-Modul NbMajMin=Mindestanzahl Grossbuchstaben TemplatePDFExpenseReports=Dokumentvorlagen zur Spesenabrechnung Dokument erstellen diff --git a/htdocs/langs/de_CH/agenda.lang b/htdocs/langs/de_CH/agenda.lang index fb6f5aa0d87..f28d248930f 100644 --- a/htdocs/langs/de_CH/agenda.lang +++ b/htdocs/langs/de_CH/agenda.lang @@ -35,7 +35,6 @@ PRODUCT_MODIFYInDolibarr=Produkt %s bearbeitet HOLIDAY_CREATEInDolibarr=Ferienantrag %s erzeugt HOLIDAY_MODIFYInDolibarr=Ferienantrag %s geändert HOLIDAY_APPROVEInDolibarr=Ferienantrag %s frei gegeben -HOLIDAY_VALIDATEDInDolibarr=Ferienantrag %s bestätigt HOLIDAY_DELETEInDolibarr=Ferienantrag %s gelöscht EXPENSE_REPORT_CREATEInDolibarr=Spesenabrechnung %s erzeugt EXPENSE_REPORT_VALIDATEInDolibarr=Spesenabrechnung %s geprüft diff --git a/htdocs/langs/de_CH/assets.lang b/htdocs/langs/de_CH/assets.lang new file mode 100644 index 00000000000..494d9491e34 --- /dev/null +++ b/htdocs/langs/de_CH/assets.lang @@ -0,0 +1,27 @@ +# Dolibarr language file - Source file is en_US - assets +Assets =Vermögen +NewAsset =Neuer Vermögenswert +AccountancyCodeAsset =Buchungskonto (Vermögenswert) +AccountancyCodeDepreciationAsset =Abschreibungskonto (Sachwert) +AccountancyCodeDepreciationExpense =Abschreibungskonto (Aufwand) +NewAssetType=Neuer Vermögenstyp +AssetsTypeSetup=Vermögenstyp einrichten +AssetTypeModified=Vermögenstyp geändert. +AssetType=Vermögenstyp +AssetsLines=Vermögen +DeleteAnAssetType=Vermögenstyp löschen +ConfirmDeleteAssetType=Bist du sicher, dass du diesen Vermögenstyp löschen willst? +ShowTypeCard=Typ anzeigen '%s' +ModuleAssetsName =Vermögen +ModuleAssetsDesc =Beschreibung Vermögenswerte +AssetsSetup =Einstellungen Vermögenswerte +AssetsSetupPage =Einstellungen Vermögenswerte +ExtraFieldsAssetsType =Ergänzende Attribute (Vermögenstyp) +AssetsType=Vermögenstyp +AssetsTypeId=ID Vermögenswert +AssetsTypeLabel=Beschreibung Vermögenstyp +AssetsTypes=Vermögenstypen +MenuAssets =Vermögen +MenuNewAsset =Neuer Vermögenswert +MenuTypeAssets =Vermögenstype +NewAsset=Neuer Vermögenswert diff --git a/htdocs/langs/de_CH/bills.lang b/htdocs/langs/de_CH/bills.lang index 58df948fa26..be42d507752 100644 --- a/htdocs/langs/de_CH/bills.lang +++ b/htdocs/langs/de_CH/bills.lang @@ -24,14 +24,11 @@ NoInvoiceToCorrect=Ich habe keine Rechnung zu korrigieren. InvoiceHasAvoir=Korrigiert durch eine oder mehrere Gutschriften CardBill=Rechnungsübersicht InvoiceLine=Rechnungsposition -CustomerInvoicePaymentBack=Gutschrift paymentInInvoiceCurrency=In Rechnungswährung PaidBack=Zurückbezahlt DeletePayment=Zahlung löschen ConfirmDeletePayment=Nur zur Sicherheit: Willst du diese Zahlung wirklich löschen? -ConfirmConvertToReduc=Willst du diese %s in einen absoluten Rabatt umwandeln? ConfirmConvertToReduc2=Der Betrag wird in den Gutschriften gespeichert und kann für diesen Kunden in einer offenen oder künftigen Rechnung als Rabatt verwendet werden. -ConfirmConvertToReducSupplier=Willst du diese %s in einen Rabatt umwandeln? ConfirmConvertToReducSupplier2=Der Betrag wird in den Gutschriften gespeichert und kann für diesen Lieferanten in einer offenen oder künftigen Rechnung als Rabatt verwendet werden. SupplierPayments=Lieferantenzahlungen ReceivedPayments=Zahlungseingang @@ -96,7 +93,6 @@ ConfirmSupplierPayment=Stimmt dieser Zahlungseingang für %s, %s? ConfirmValidatePayment=Bist du sicher, dass du diese Zahlung freigeben willst? Danach kannst du keine Änderungen mehr vornehmen. NumberOfBills=Anzahl der Rechnungen AmountOfBillsHT=Gesamtbetrag Rechnungen pro Monat (inkl. Steuern) -ShowInvoiceDeposit=Akontorechnung anzeigen ToPayOn=Zahlbar am %s toPayOn=zahlbar am %s ExcessPaid=Bezahlter Überschuss @@ -179,7 +175,7 @@ ChequesArea=Schecks ChequeDeposits=Scheckeinlagen 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 -PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template (old implementation of Sponge template) +PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template TypeContact_invoice_supplier_external_BILLING=Lieferanten - Rechnungskontakt TypeContact_invoice_supplier_external_SHIPPING=Lieferanten - Versandkontakt InvoiceFirstSituationAsk=Erste Situation Rechnung diff --git a/htdocs/langs/de_CH/blockedlog.lang b/htdocs/langs/de_CH/blockedlog.lang new file mode 100644 index 00000000000..9a91c1cf7cf --- /dev/null +++ b/htdocs/langs/de_CH/blockedlog.lang @@ -0,0 +1,5 @@ +# Dolibarr language file - Source file is en_US - blockedlog +logBILL_VALIDATE=Rechnung freigegeben +logMEMBER_SUBSCRIPTION_CREATE=Mitgliedsabonnement erstellt +logMEMBER_SUBSCRIPTION_MODIFY=Mitgliedsabonnement geändert +logMEMBER_SUBSCRIPTION_DELETE=Logische Löschung des Mitgliedsabonnements diff --git a/htdocs/langs/de_CH/cashdesk.lang b/htdocs/langs/de_CH/cashdesk.lang new file mode 100644 index 00000000000..426d9c97a7a --- /dev/null +++ b/htdocs/langs/de_CH/cashdesk.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - cashdesk +CashDesk=Kasse +BankToPay=Zahlungskonto diff --git a/htdocs/langs/de_CH/categories.lang b/htdocs/langs/de_CH/categories.lang index 96122e9576d..589f21b1d0e 100644 --- a/htdocs/langs/de_CH/categories.lang +++ b/htdocs/langs/de_CH/categories.lang @@ -57,9 +57,6 @@ ContactCategoriesShort=Kontaktschlagworte / -kategorien AccountsCategoriesShort=Kontenschlagworte / -kategorien ProjectsCategoriesShort=Projektschlagworte / -kateorien UsersCategoriesShort=Benutzerschlagworte und -kategorien -ThisCategoryHasNoSupplier=Mit dieser Kategorie ist kein Lieferant verknüpft. -ThisCategoryHasNoAccount=Dieser Kategorie sind keine Konten zugewiesen. -ThisCategoryHasNoProject=Mit dieser Kategorie ist kein Projekt verknüpft. CategId=Schlagwort / Kategorie ID CatSupList=Liste der Lieferantenschlagworte / -kategorien CatCusList=Liste der Kunden-/ Interessentenschlagworte / -kategorien diff --git a/htdocs/langs/de_CH/companies.lang b/htdocs/langs/de_CH/companies.lang index 04657d94f4e..29c7c3a46b4 100644 --- a/htdocs/langs/de_CH/companies.lang +++ b/htdocs/langs/de_CH/companies.lang @@ -128,7 +128,6 @@ RequiredIfCustomer=Erforderlich falls Geschäftspartner Kunde oder Interessent i RequiredIfSupplier=Erforderlich, wenn der Partner Lieferant ist ValidityControledByModule=Durch Modul validiert ListOfThirdParties=Liste der Geschäftspartner -ShowCompany=Geschäftspartner anzeigen ShowContact=Zeige Kontaktangaben ContactsAllShort=Alle (Kein Filter) ContactForOrdersOrShipments=Bestellungs- oder Lieferkontakt diff --git a/htdocs/langs/de_CH/compta.lang b/htdocs/langs/de_CH/compta.lang index eecf64ff1d5..1690ed0c885 100644 --- a/htdocs/langs/de_CH/compta.lang +++ b/htdocs/langs/de_CH/compta.lang @@ -18,7 +18,6 @@ LastCheckReceiptShort=Letzte %s Scheckeinnahmen NoWaitingChecks=Keine Schecks warten auf Einlösung. CalcModeVATDebt=Modus %s Mwst. auf Engagement Rechnungslegung %s. CalcModeLT2Rec=Modus %sIRPF aufLieferantenrechnungen%s -RulesResultDue=- Dies beinhaltet ausstehende Rechnungen, Aufwendungen, Mehrwertsteuern, Abgaben, ob sie bezahlt wurden oder nicht. Auch die gezahlten Gehälter.
    - Es gilt das Freigabedatum von den Rechnungen und MwSt., sowie das Fälligkeitsdatum für Aufwendungen. Für Gehälter definiert mit dem Modul Löhne, wird das Valutadatum der Zahlung verwendet. LT2ReportByCustomersES=Bericht von Geschäftspartner EKSt. VATReportByCustomersInInputOutputMode=Bericht zur vereinnahmten und bezahlten MwSt. nach Kunden SeeVATReportInInputOutputMode=Siehe %sMwSt.-Einnahmen%s-Bericht für eine standardmässige Berechnung diff --git a/htdocs/langs/de_CH/errors.lang b/htdocs/langs/de_CH/errors.lang index 041f2ea3681..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. -ErrorSelectAtLeastOne=Error, select at least one entry. 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/exports.lang b/htdocs/langs/de_CH/exports.lang index ab814c75f8c..eb8c5cdab4e 100644 --- a/htdocs/langs/de_CH/exports.lang +++ b/htdocs/langs/de_CH/exports.lang @@ -1,6 +1,5 @@ # Dolibarr language file - Source file is en_US - exports FileSuccessfullyBuilt=Filter generiert -SQLUsedForExport=SQL Request used to extract data ExampleAnyCodeOrIdFoundIntoDictionary=Ein Code (oder eine ID) wurde im Dictionnary %s gefunden ImportFromLine=Import ab Zeile Nummer EndAtLineNb=Bis zu Zeile Nummer diff --git a/htdocs/langs/de_CH/externalsite.lang b/htdocs/langs/de_CH/externalsite.lang new file mode 100644 index 00000000000..9577afd0918 --- /dev/null +++ b/htdocs/langs/de_CH/externalsite.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - externalsite +ExternalSiteModuleNotComplete=Module ExternalSite wurde nicht richtig konfiguriert. diff --git a/htdocs/langs/de_CH/ftp.lang b/htdocs/langs/de_CH/ftp.lang new file mode 100644 index 00000000000..5062bcc5001 --- /dev/null +++ b/htdocs/langs/de_CH/ftp.lang @@ -0,0 +1,12 @@ +# Dolibarr language file - Source file is en_US - ftp +NewFTPClient=Neue FTP-Verbindungseinstellungen +FTPArea=FTP-Übersicht +FTPAreaDesc=Die Ansicht zeigt einen FTP Server +SetupOfFTPClientModuleNotComplete=Hoppla, das Setup dieses FTP-Client - Moduls ist unvollständig. +FTPFeatureNotSupportedByYourPHP=Ihre PHP unterstützt keine FTP-Funktionen +FailedToConnectToFTPServer=Konnte keine Verbindung zum FTP-Server aufbauen (Server %s, Port %s) +FailedToConnectToFTPServerWithCredentials=Anmeldung am FTP-Server mit dem eingegebenen Benutzername/Passwort-Paar fehlgeschlagen +FTPFailedToRemoveFile=Konnte Datei %s nicht entfernen. +FTPFailedToRemoveDir=Ich kann das Verzeichnis %s nicht löschen.. Prüfe, ob du die Löschberechtigung hast und stelle sicher, dass es leer ist. +ChooseAFTPEntryIntoMenu=Wähle eine FTP - Site im Menu aus. +FailedToGetFile=Folgende Dateien konnten nicht geladen werden: %s diff --git a/htdocs/langs/de_CH/install.lang b/htdocs/langs/de_CH/install.lang index d19bdc48c19..0d004eaf02f 100644 --- a/htdocs/langs/de_CH/install.lang +++ b/htdocs/langs/de_CH/install.lang @@ -5,7 +5,6 @@ ErrorDatabaseAlreadyExists=Eine Datenbank mit dem Namen '%s' exisitiert bereits. IfDatabaseExistsGoBackAndCheckCreate=Sollte die Datebank bereits existieren, gehen Sie bitte zurück und deaktivieren Sie das Kontrollkästchen "Datenbank erstellen". AdminLoginCreatedSuccessfuly=Das dolibarr-Administratorkonto '%s' wurde erfolgreich erstellt. GoToDolibarr=Zu dolibarr wechseln -DirectoryRecommendation=IMPORTANT: You must use a directory that is outside of the web pages (so do not use a subdirectory of previous parameter). ChoosedMigrateScript=Migrationsskript auswählen ChooseYourSetupMode=Wählen Sie Ihre Installationsart und klicken Sie anschliessend auf "Start"... UpgradeDesc=Verwenden Sie diesen Modus zum Ersetzen Ihrer bisherigen Dateien durch eine neuere Version. Dieser Vorgang beinhaltet eine Aktualisierung Ihrer Datenbank und -daten. diff --git a/htdocs/langs/de_CH/languages.lang b/htdocs/langs/de_CH/languages.lang index 05228e52b15..00991f458c2 100644 --- a/htdocs/langs/de_CH/languages.lang +++ b/htdocs/langs/de_CH/languages.lang @@ -6,5 +6,4 @@ Language_es_PA=Spanisch (Panama) Language_ka_GE=georgisch Language_km_KH=Kambodschanisch Language_mn_MN=Mongolisch -Language_nl_NL=Dutch Language_sw_SW=Kisuaheli diff --git a/htdocs/langs/de_CH/link.lang b/htdocs/langs/de_CH/link.lang new file mode 100644 index 00000000000..db7e1395400 --- /dev/null +++ b/htdocs/langs/de_CH/link.lang @@ -0,0 +1,5 @@ +# Dolibarr language file - Source file is en_US - link +LinkANewFile=Verknüpfe eine neue Datei /Dokument +LinkComplete=Die Datei wurde erfolgreich verlinkt +ErrorFileNotLinked=Die Datei konnte nicht verlinkt werden +URLToLink=URL zum Verlinken diff --git a/htdocs/langs/de_CH/main.lang b/htdocs/langs/de_CH/main.lang index 5906b03349a..5e855154efe 100644 --- a/htdocs/langs/de_CH/main.lang +++ b/htdocs/langs/de_CH/main.lang @@ -357,5 +357,4 @@ NoArticlesFoundForTheCategory=Dieser Kategorie ist nichts zugeordnet... ContactDefault_fichinter=Arbeitseinsatz ContactDefault_supplier_proposal=Partnerofferte ContactAddedAutomatically=Automatisch generierter Kontakt -ShowDetails=Details anzeigen CustomReports=Eigene Berichte diff --git a/htdocs/langs/de_CH/members.lang b/htdocs/langs/de_CH/members.lang index 163b21c927b..ab909f68092 100644 --- a/htdocs/langs/de_CH/members.lang +++ b/htdocs/langs/de_CH/members.lang @@ -36,7 +36,6 @@ DescADHERENT_EMAIL_TEMPLATE_SUBSCRIPTION=E-Mail-Vorlage zum Senden einer E-Mail DescADHERENT_EMAIL_TEMPLATE_REMIND_EXPIRATION=E-Mail-Vorlage zum Senden einer E-Mail-Erinnerung, wenn das Abonnement abläuft DescADHERENT_EMAIL_TEMPLATE_CANCELATION=E-Mail-Vorlage zum Senden von E-Mails an ein Mitglied bei Kündigung der Mitgliedschaft DescADHERENT_MAIL_FROM=Absender E-Mail für automatische E-Mails -ShowTypeCard=Typ anzeigen '%s' HTPasswordExport=htpassword Datei generieren MembersAndSubscriptions=Mitglieder und Abonnemente SubscriptionPayment=Zahlung des Mitgliedsbeitrags diff --git a/htdocs/langs/de_CH/modulebuilder.lang b/htdocs/langs/de_CH/modulebuilder.lang new file mode 100644 index 00000000000..8bbcc78a506 --- /dev/null +++ b/htdocs/langs/de_CH/modulebuilder.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - modulebuilder +ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: diff --git a/htdocs/langs/de_CH/multicurrency.lang b/htdocs/langs/de_CH/multicurrency.lang new file mode 100644 index 00000000000..1f8a2193356 --- /dev/null +++ b/htdocs/langs/de_CH/multicurrency.lang @@ -0,0 +1,20 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Multi-Währungen +ErrorAddRateFail=Fehlerhafter Kurs +ErrorAddCurrencyFail=Fehlerhafte Währung +ErrorDeleteCurrencyFail=Löschen fehlgeschlagen +multicurrency_syncronize_error=Synchronisierungsfehler %s. +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Beziehe den Wechselkurs auf das Dokumentendatum, statt auf den aktuellen Kurs. +multicurrency_useOriginTx=Übernehme beim Duplizieren von Objekten dessen Wechselkurs, statt den aktuellsten. +CurrencyLayerAccount=CurrencyLayer Schnittstelle +CurrencyLayerAccount_help_to_synchronize=Für diese Funktion solltest du ein Konto auf deren Homepage %s erzeugen.
    Dann erhälst du deinen API Key.
    Beim Gratiskonto kannst du die Standardwährung USD nicht ändern.
    Wenn deine Standardwährung eine andere ist, rechnet die Anwendung das automatisch um.

    Du kannst maximal 1000 Abfragen pro Monat über die Schnittstelle schicken. +multicurrency_appId=API Key +multicurrency_appCurrencySource=Kurs Quelle +multicurrency_alternateCurrencySource=Alternative Kursquelle +CurrenciesUsed=Benutzte Währungen +CurrenciesUsed_help_to_add=Füge die verschiedenen Währungen für deine benutzten Offerten,Bestellungen usw hinzu. +rate=Kurs +MulticurrencyReceived=Eingang in Orignalwährung +MulticurrencyRemainderToTake=Restbetrag in Originalwährung +MulticurrencyPaymentAmount=Zahlungsbetrag, Originalwährung +AmountToOthercurrency=Entspricht in der Währung des Eingangkontos diff --git a/htdocs/langs/de_CH/orders.lang b/htdocs/langs/de_CH/orders.lang index d9718fd8eb6..18c31d48556 100644 --- a/htdocs/langs/de_CH/orders.lang +++ b/htdocs/langs/de_CH/orders.lang @@ -43,9 +43,7 @@ TypeContact_order_supplier_external_SHIPPING=Lieferanten - Versandkontakt TypeContact_order_supplier_external_CUSTOMER=Lieferanten - Nachkalkulationskontakt Error_OrderNotChecked=Keine zu verrechnenden Bestellungen ausgewählt OrderByEMail=E-Mail -PDFEinsteinDescription=A complete order model (old implementation of Eratosthene template) -PDFEratostheneDescription=A complete order model -PDFProformaDescription=A complete Proforma invoice template +PDFEinsteinDescription=A complete order model OrderCreation=Erstellen einer Bestellung IfValidateInvoiceIsNoOrderStayUnbilled=Wenn Rechnungsvalidierung auf "Nein" steht, bleibt die Bestellung im Status "nicht verrechnet", bis die Rechnung frei gegeben worden ist. SetShippingMode=Versandart wählen diff --git a/htdocs/langs/de_CH/other.lang b/htdocs/langs/de_CH/other.lang index bc96b56d634..4f942e32521 100644 --- a/htdocs/langs/de_CH/other.lang +++ b/htdocs/langs/de_CH/other.lang @@ -26,5 +26,4 @@ FileIsTooBig=Dateien sind zu gross WebsiteSetup=Einstellungen des Webseitenmoduls WEBSITE_PAGEURL=URL für Seite WEBSITE_TITLE=Titel -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. WEBSITE_KEYWORDS=Stichworte diff --git a/htdocs/langs/de_CH/paypal.lang b/htdocs/langs/de_CH/paypal.lang new file mode 100644 index 00000000000..e0d3951a16f --- /dev/null +++ b/htdocs/langs/de_CH/paypal.lang @@ -0,0 +1,20 @@ +# Dolibarr language file - Source file is en_US - paypal +PaypalDesc=Dieses Modul erlaubt die Annahme von Zahlungen über PayPal. Sie können damit Zahlungen in Dolibarr tätigen und empfangen. +PaypalOrCBDoPayment=Mit Paypal bezahlen (Guthaben oder Kreditkarte) +PaypalDoPayment=Mit PayPal bezahlen +PAYPAL_API_SANDBOX=Testmoduds/Sandbox +PAYPAL_API_INTEGRAL_OR_PAYPALONLY=Wähle zwischen Bezahlung mit reinem PayPal - Guthaben, oder Guthaben und Kreditkarte. +ONLINE_PAYMENT_CSS_URL=URL zu spezieller CSS - Datei für die Bezahlseite (optional) +PAYPAL_ADD_PAYMENT_URL=Automatisch den PayPal - Zahlungslink in Emails einbinden +NewOnlinePaymentReceived=Neue PayPal - Zahlung erhalten +NewOnlinePaymentFailed=PayPal - Zahlung hat nicht geklappt... +ONLINE_PAYMENT_SENDEMAIL=Email - Adresse für Zahlungsbestätigungen und -fehler +ValidationOfOnlinePaymentFailed=Die PayPal Zahlung wurde nicht autorisiert... +PaymentSystemConfirmPaymentPageWasCalledButFailed=Fehler beim Aufruf der Zahlungs - Bestätigungsseite. +OnlinePaymentSystem=Online Bezahlsystem +PaypalLiveEnabled=PayPal aktiv schalten (oder im Test- / Sandboxmodus laufen lassen) +PaypalImportPayment=PayPal Zahlungen importieren +PostActionAfterPayment=Nachbearbeitungen nach Zahlungen +ARollbackWasPerformedOnPostActions=Alle Nachbearbeitungen wurden zurückgesetzt. Falls nötig, erledige jene von Hand. +ValidationOfPaymentFailed=Die Zahlung wurde nicht frei gegeben... +PayPalBalance=Aktuelles PayPal - Guthaben diff --git a/htdocs/langs/de_CH/products.lang b/htdocs/langs/de_CH/products.lang index f0153258f68..0f2072b4e04 100644 --- a/htdocs/langs/de_CH/products.lang +++ b/htdocs/langs/de_CH/products.lang @@ -69,7 +69,6 @@ CustomerPrices=Kunden Preise SuppliersPrices=Lieferantenpreise SuppliersPricesOfProductsOrServices=Anbieterpreise CustomCode=Zolltarifnummer (z.B. HSN) -Nature=Produktart (Rohmaterial / Fertigprodukt) kilogram=Kilo unitP=Teil unitSET=Satz diff --git a/htdocs/langs/de_CH/salaries.lang b/htdocs/langs/de_CH/salaries.lang new file mode 100644 index 00000000000..bd6035c66c6 --- /dev/null +++ b/htdocs/langs/de_CH/salaries.lang @@ -0,0 +1,12 @@ +# Dolibarr language file - Source file is en_US - salaries +SALARIES_ACCOUNTING_ACCOUNT_PAYMENT=Buchhaltungskonto für Partner Benutzer +SALARIES_ACCOUNTING_ACCOUNT_PAYMENT_Desc=Das Buchhaltungskonto auf der Benutzerkarte wird nur im Nebenbuch journalisiert. Dieser Eintrag wird im Hauptbuch Geführt. Weiter ist das auch das Standardkonto, falls auf der Benutzerkarte kein Konto eingetragen ist. +SALARIES_ACCOUNTING_ACCOUNT_CHARGE=Standard - Buchhaltungskonto für Lohnzahlungen +AddSalaryPayment=Neue Lohnzahlung +THM=Durchschnittlicher Stundenlohn +TJM=Durchschnittlicher Tageslohn +THMDescription=Wenn das Modul Projektmanagement aktiv ist, dient dieser Wert zum Berechnen der aktuellen Projektzeitkosten. +TJMDescription=Dieser Wert ist im Moment rein informativ und fliesst in keinerlei Berechnungen ein. +LastSalaries=Die neuesten %s Lohnzahlungen +SalariesStatistics=Lohnstatistik +SalariesAndPayments=Löhne und Lohnzahlungen diff --git a/htdocs/langs/de_CH/users.lang b/htdocs/langs/de_CH/users.lang index a7baf78b067..e3216933e71 100644 --- a/htdocs/langs/de_CH/users.lang +++ b/htdocs/langs/de_CH/users.lang @@ -22,7 +22,6 @@ LinkedToDolibarrThirdParty=Mit Geschäftspartner verknüpft CreateDolibarrThirdParty=Neuen Geschäftspartner erstellen 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 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) diff --git a/htdocs/langs/de_CH/website.lang b/htdocs/langs/de_CH/website.lang index 8ae7cc54f9d..8504c7c5535 100644 --- a/htdocs/langs/de_CH/website.lang +++ b/htdocs/langs/de_CH/website.lang @@ -8,4 +8,3 @@ WEBSITE_CSS_URL=URL zu externer CSS Datei ViewSiteInNewTab=Webauftritt in neuem Tab anzeigen SetAsHomePage=Als Startseite definieren WebsiteAccounts=Webseitenkonten -BackToListOfThirdParty=Zurück zur Liste für Partner diff --git a/htdocs/langs/de_CH/zapier.lang b/htdocs/langs/de_CH/zapier.lang new file mode 100644 index 00000000000..5adbcd70b7a --- /dev/null +++ b/htdocs/langs/de_CH/zapier.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - zapier +ModuleZapierForDolibarrDesc =Modul Zapier für Dolibarr diff --git a/htdocs/langs/de_DE/accountancy.lang b/htdocs/langs/de_DE/accountancy.lang index b76df2c5e13..d6f388602a7 100644 --- a/htdocs/langs/de_DE/accountancy.lang +++ b/htdocs/langs/de_DE/accountancy.lang @@ -121,6 +121,7 @@ InvoiceLinesDone=verbundene Rechnungszeilen ExpenseReportLines=Zeilen von Spesenabrechnungen zu verbinden ExpenseReportLinesDone=Gebundene Zeile von Spesenabrechnungen IntoAccount=mit dem Buchhaltungskonto verbundene Zeilen +TotalForAccount=Total for accounting account Ventilate=zusammenfügen @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Buchhaltungskonto für Spenden ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Buchhaltungskonto für Abonnements ACCOUNTING_PRODUCT_BUY_ACCOUNT=Standard-Buchhaltungskonto für gekaufte Produkte \n(wenn nicht anders im Produktblatt definiert) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_ACCOUNT=Standard-Buchhaltungskonto für die verkauften Produkte (wenn nicht anders im Produktblatt definiert) ACCOUNTING_PRODUCT_SOLD_INTRA_ACCOUNT=Standard-Buchhaltungskonto für in die EU verkaufte Produkte \n(wird verwendet, wenn nicht im Produktblatt definiert) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Standard-Buchhaltungskonto für ausserhalb der EU verkaufte Produkte [EXPORT] \n(wird verwendet, wenn nicht im Produktblatt definiert) + ACCOUNTING_SERVICE_BUY_ACCOUNT=Standard-Buchhaltungskonto für die gekauften Leistungen (wenn nicht anders im Produktblatt definiert) +ACCOUNTING_SERVICE_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_ACCOUNT=Standard-Buchhaltungskonto für die verkauften Leistungen (wenn nicht anders im Produktblatt definiert) ACCOUNTING_SERVICE_SOLD_INTRA_ACCOUNT=Standard-Buchhaltungskonto für in die EU verkaufte Dienstleistungen \n(wird verwendet, wenn nicht im Produktblatt definiert) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Standard-Buchhaltungskonto für ausserhalb der EU verkaufte Dienstleistungen [EXPORT] \n(wird verwendet, wenn nicht im Produktblatt definiert) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Geschäftspartner ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Drittanbieter-Konto nicht definiert oder Drittanbieter unbekannt. Fehler beim Blockieren. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unbekanntes Drittanbieter-Konto und wartendes Konto nicht definiert. Fehler beim Blockieren PaymentsNotLinkedToProduct=Zahlung ist keinem Produkt oder Dienstleistung zugewisen +OpeningBalance=Opening balance ShowOpeningBalance=Eröffnungsbilanz anzeigen HideOpeningBalance=Eröffnungsbilanz ausblenden +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Kontenklasse PcgtypeDesc=Kontengruppen werden für einige Buchhaltungsberichte als vordefinierte Filter- und Gruppierungskriterien verwendet. Beispielsweise werden "EINKOMMEN" oder "AUSGABEN" als Gruppen für die Buchhaltung von Produktkonten verwendet, um die Ausgaben- / Einnahmenrechnung zu erstellen. +Reconcilable=Reconcilable + TotalVente=Gesamtumsatz vor Steuern TotalMarge=Gesamtumsatzrendite @@ -307,11 +317,13 @@ Modelcsv_quadratus=Export für Quadratus QuadraCompta Modelcsv_ebp=Export für EBP Modelcsv_cogilog=Export für Cogilog Modelcsv_agiris=Export für Agiris -Modelcsv_LDCompta=Export für LD Compta (ab Version 9) (Test) +Modelcsv_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Export für OpenConcerto (Test) Modelcsv_configurable=konfigurierbarer CSV-Export Modelcsv_FEC=Export nach FEC Modelcsv_Sage50_Swiss=Export für Sage 50 (Schweiz) +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Kontenplan ID ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Modus Verkäufe Inland OptionModeProductSellIntra=Modus Verkäufe in EU/EWG OptionModeProductSellExport=Modus Verkäufe Export (ausserhalb EU/EWG) OptionModeProductBuy=Modus Einkäufe +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries OptionModeProductSellDesc=Alle Produkte mit Buchhaltungskonto für Verkäufe Inland anzeigen. OptionModeProductSellIntraDesc=Alle Produkte mit Buchhaltungskonto für Verkäufe in EWG anzeigen. OptionModeProductSellExportDesc=Alle Produkte mit Abrechnungskonto für Verkäufe Ausland anzeigen. OptionModeProductBuyDesc=Alle Produkte mit Buchhaltungskonto für Einkäufe anzeigen. +OptionModeProductBuyIntraDesc=Alle Produkte mit Buchhaltungskonto für Einkäufe in der EWG anzeigen. +OptionModeProductBuyExportDesc=Alle Produkte mit Buchhaltungskonto für andere ausländische Einkäufe anzeigen. CleanFixHistory=Nicht existierenden Buchhaltungskonten von Positionen entfernen, die im Kontenplan nicht vorkommen. CleanHistory=Alle Zuordnungen für das ausgewählte Jahr zurücksetzen. PredefinedGroups=Vordefinierte Gruppen @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Konto aus der Gruppe entfernt SaleLocal=Verkauf Inland SaleExport=Verkauf Export (ausserhalb EWG) SaleEEC=Verkauf in EU/EWG +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=Bereich von Sachkonten diff --git a/htdocs/langs/de_DE/admin.lang b/htdocs/langs/de_DE/admin.lang index 715f5a0c6ba..e179d2de0f3 100644 --- a/htdocs/langs/de_DE/admin.lang +++ b/htdocs/langs/de_DE/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=WebServer Benutzer/Gruppen NoSessionFound=Ihre PHP -Konfiguration scheint keine Auflistung aktiver Sitzungen zuzulassen. Eventuell ist die Speicherung im Verzeichnis (%s) durch fehlende Berechtigungen blockiert (zum Beispiel: Betriebssystemberechtigungen oder open_basedir-Beschränkungen). DBStoringCharset=Zeichensatz der Datenbank-Speicherung DBSortingCharset=Datenbank-Zeichensatz zum Sortieren von Daten +HostCharset=Host charset ClientCharset=Client-Zeichensatz ClientSortingCharset=Client Sortierreihenfolge WarningModuleNotActive=Modul %s muss aktiviert sein @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Hinweis: Ihre PHP-Einstellungen beschränken die NoMaxSizeByPHPLimit=Hinweis: In Ihren PHP-Einstellungen sind keine Größenbeschränkungen hinterlegt MaxSizeForUploadedFiles=Maximale Größe für Dateiuploads (0 verbietet jegliche Uploads) UseCaptchaCode=Captcha-Code auf der Anmeldeseite verwenden -AntiVirusCommand= Vollständiger Pfad zum installierten Virenschutz -AntiVirusCommandExample= Beispiel für ClamWin: c:\\Programme (x86)\\ClamWin\\bin\\clamscan.exe
    Beispiel für ClamAV: /usr/bin/clamscan +AntiVirusCommand=Vollständiger Pfad zum installierten Virenschutz +AntiVirusCommandExample=Beispiel für einen ClamAv-Daemon (Clamav-Daemon erforderlich): /usr/bin/clamdscan
    Beispiel für ClamWin (sehr, sehr langsam): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= Weitere Kommandozeilen-Parameter für den Virenschutz -AntiVirusParamExample= Beispiel für ClamWin: --database="C:\\Programme (x86)\\ClamWin\\lib" +AntiVirusParamExample=Beispiel für einen ClamAv-Daemon: --fdpass
    Beispiel für ClamWin: --database="C:\\Programme (x86)\\ClamWin\\lib" ComptaSetup=Buchhaltungsmoduls-Einstellungen UserSetup=Benutzerverwaltung Einstellungen MultiCurrencySetup=Modul Mehrfachwährungen - Einstellungen @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Funktion in der Demoversion deaktiviert FeatureAvailableOnlyOnStable=Diese Funktion steht nur in offiziellen stabilen Versionen zur Verfügung BoxesDesc=Boxen sind Komponenten, die einige Informationen anzeigen, die Sie hinzufügen können, um einige Seiten zu personalisieren. Sie können wählen, ob Sie die Box anzeigen möchten oder nicht, indem Sie die Zielseite auswählen und auf 'Aktivieren' klicken oder indem Sie auf den Papierkorb klicken, um es zu deaktivieren. OnlyActiveElementsAreShown=Nur Elemente aus aktiven Module werden angezeigt. -ModulesDesc=Die Module / Anwendungen bestimmen, welche Funktionen in Dolibarr verfügbar sind. Für einige Module müssen den Benutzern nach der Aktivierung des Moduls Berechtigungen erteilt werden. Klicken Sie auf die Schaltfläche Ein / Aus (am Ende der Modulzeile), um ein Modul / eine Anwendung zu aktivieren / deaktivieren. +ModulesDesc=Die Module / Anwendungen bestimmen, welche Funktionen in der Software verfügbar sind. Bei einigen Modulen müssen Benutzern nach Aktivierung des Moduls Berechtigungen erteilt werden. Klicken Sie auf die Ein / Aus-Schaltfläche %s jedes Moduls, um ein Modul / eine Anwendung zu aktivieren oder zu deaktivieren. ModulesMarketPlaceDesc=Sie finden weitere Module auf externen Web-Sites... ModulesDeployDesc=DateiWenn es die Berechtigungen in Ihrem Dateisystem zulassen, können Sie mit diesem Tool ein externes Modul bereitstellen. Das Modul ist dann auf der Registerkarte %s sichtbar. ModulesMarketPlaces=Zusatzmodule / Erweiterungen @@ -212,6 +213,7 @@ CompatibleUpTo=Kompatibel mit Version %s NotCompatible=Dieses Modul scheint nicht mit ihrer Dolibarr Version %s kompatibel zu sein. (Min %s - Max %s). CompatibleAfterUpdate=Dieses Modul benötigt ein Upgrade ihrer Dolibarr Installation %s (Min %s - Max %s). SeeInMarkerPlace=siehe Marktplatz +SeeSetupOfModule=Finden Sie im Modul-Setup %s Updated=Aktualisiert Nouveauté=Neuheit AchatTelechargement=Kaufen / Herunterladen @@ -221,6 +223,7 @@ DoliPartnersDesc=Liste der Unternehmen, die speziell entwickelte Module oder Fun WebSiteDesc=Externe Webseiten mit zusätzlichen Add-on (nicht zum Grundumfang gehörend) Modulen ... DevelopYourModuleDesc=einige Lösungen um eigene Module zu entwickeln ... URL=Link +RelativeURL=Relative URL BoxesAvailable=Verfügbare Boxen BoxesActivated=Boxen aktiviert ActivateOn=Aktiv ab @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Kontrollkästchen / Dropdownliste (mehrere Optionen auswählb ExtrafieldCheckBoxFromList=Kontrollkästchen / Dropdownliste aus DB-Tabelle (mehrere Optionen auswählbar) ExtrafieldLink=Verknüpftes Objekt ComputedFormula=Berechnetes Feld -ComputedFormulaDesc=Sie können hier eine Formel eingeben, indem Sie andere Eigenschaften des Objekts oder eine beliebige PHP-Codierung verwenden, um einen dynamisch berechneten Wert zu erhalten. Sie können alle PHP-kompatiblen Formeln verwenden, einschließlich des "?" Bedingungsoperator und folgendes globales Objekt: $ db, $ conf, $ langs, $ mysoc, $ user, $ object .
    WARNUNG : Möglicherweise sind nur einige Eigenschaften von $ object verfügbar. Wenn Sie Eigenschaften benötigen, die nicht geladen sind, holen Sie sich das Objekt wie im zweiten Beispiel in Ihre Formel.
    Wenn Sie ein berechnetes Feld verwenden, können Sie keinen Wert von der Schnittstelle eingeben. Wenn ein Syntaxfehler vorliegt, gibt die Formel möglicherweise auch nichts zurück.

    Beispiel der Formel:
    $ object-> id <10? round ($ object-> id / 2, 2): ($ object-> id + 2 * $ user-> id) * (int) substr ($ mysoc-> zip, 1, 2)

    Beispiel zum erneuten Laden eines Objekts
    (($ reloadedobj = new Societe ($ db)) && ($ reloadedobj-> fetch ($ obj-> id? $ obj-> id: ($ obj-> rowid? $ obj-> rowid: $ object-> id ))> 0))? $ reloadedobj-> array_options ['options_extrafieldkey'] * $ reloadedobj-> capital / 5: '-1'

    Ein weiteres Beispiel für eine Formel zum Erzwingen des Ladens eines Objekts und seines übergeordneten Objekts:
    (($ reloadedobj = neue Aufgabe ($ db)) && ($ reloadedobj-> Abrufen ($ object-> id)> 0) && ($ secondloadedobj = neues Projekt ($ db)) && ($ secondloadedobj-> Abrufen ($ reloadedobj-> fk_project)> 0))? $ secondloadedobj-> ref: 'Übergeordnetes Projekt nicht gefunden' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Speichere berechnetes Feld ComputedpersistentDesc=Berechnete Extrafelder werden in der Datenbank gespeichert, dennoch wird ihr Wert nur dann neu berechnet wenn sich das Objekt zu diesem Feld ändert. Falls das berechnete Feld von anderen Objekten oder globalen Daten abhängt, kann sein Wert falsch sein! ExtrafieldParamHelpPassword=Wenn Sie dieses Feld leer lassen, wird dieser Wert unverschlüsselt gespeichert (das Feld darf nur mit einem Stern auf dem Bildschirm ausgeblendet werden).
    Stellen Sie 'auto'; ein, um die Standardverschlüsselungsregel zum Speichern des Kennworts in der Datenbank zu verwenden (dann ist der gelesene Wert nur der Hash, keine Möglichkeit, den ursprünglichen Wert abzurufen). @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Leer lassen für Standardwert DefaultLink=Standardlink SetAsDefault=Als Standard setzen ValueOverwrittenByUserSetup=Achtung, dieser Wert kann durch den Benutzer überschrieben werden (jeder kann seine eigene ClickToDial-URL setzen) -ExternalModule=Externes Modul - im Verzeichnis %s installiert +ExternalModule=Externes Modul +InstalledInto=Installiert in Verzeichnis %s BarcodeInitForthird-parties=alle Barcodes für Geschäftspartner initialisieren BarcodeInitForProductsOrServices=Alle Barcodes für Produkte oder Services initialisieren oder zurücksetzen CurrentlyNWithoutBarCode=Zur Zeit gibt es %s Datensätze in %s %s ohne Barcode. @@ -947,7 +951,7 @@ DictionaryCanton=Bundesland/Kanton DictionaryRegion=Regionen DictionaryCountry=Länder DictionaryCurrency=Währungen -DictionaryCivility=Titel & Anreden +DictionaryCivility=Ehrentitel DictionaryActions=Typen von Kalender-Ereignissen DictionarySocialContributions=Arten von Steuern oder Sozialabgaben DictionaryVAT=USt.-Sätze @@ -988,6 +992,7 @@ VATIsNotUsedDesc=Die vorgeschlagene USt. ist standardmäßig 0 für alle Fälle VATIsUsedExampleFR=In Frankreich sind damit Unternehmen oder Organisationen gemeint, die ein echtes Steuersystem haben (vereinfacht oder normal). Ein System, in dem die Mehrwertsteuer deklariert wird. VATIsNotUsedExampleFR=In Frankreich bedeutet es, dass keine Umsatzsteuer ausgewiesen wird oder Unternehmen, Organisationen oder Freiberufler, die als Kleinunternehmer tätig sind (Privilegiensteuer), Umsatzsteuern zahlen ohne selbst Umsatzsteuer auszuweisen. Diese Auswahl zeigt den Hinweis "Umsatzsteuer nicht anwendbar - Artikel-293B des CGI" auf Rechnungen an. ##### Local Taxes ##### +TypeOfSaleTaxes=Art der Umsatzsteuer LTRate=Rate LocalTax1IsNotUsed=Zweite Steuer nicht nutzen LocalTax1IsUsedDesc=Verwende eine zweite Art von Steuer (andere als erste) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=Die Einkommenssteuerrate beim Erstellen von Interessenten, LocalTax2IsNotUsedDescES=Standardmäßig ist die vorgeschlagene Einkommenssteuer 0. Ende der Regel. LocalTax2IsUsedExampleES=In Spanien, Freiberufler und unabhängigen Fachleuten, die ihre Dienstleistungen und Unternehmen, die das Steuersystem von Modulen gewählt haben. LocalTax2IsNotUsedExampleES=In Spanien sind das Unternehmen, die nicht dem Steuersystem für Module unterliegen. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Verwenden Sie eine Steuermarke +UseRevenueStampExample=Der Wert der Steuermarke wird standardmäßig in der Einrichtung der Wörterbücher definiert (%s - %s - %s). CalcLocaltax=Berichte über lokale Steuern CalcLocaltax1=Sales - Käufe CalcLocaltax1Desc=Lokale Steuer-Reports werden mit der Differenz von lokalen Verkaufs- und Einkaufs-Steuern berechnet @@ -1018,6 +1026,7 @@ CalcLocaltax2=Einkauf CalcLocaltax2Desc=Lokale Steuer-Reports sind die Summe der lokalen Steuern auf Einkäufe CalcLocaltax3=Verkauf CalcLocaltax3Desc=Lokale Steuer-Reports sind die Summe der lokalen Steuern auf Verkäufe +NoLocalTaxXForThisCountry=Gemäß der Einrichtung der Steuern (siehe %s - %s - %s) muss Ihr Land diese Art von Steuern nicht verwenden LabelUsedByDefault=Bezeichnung wird verwendet falls keine Übersetzung für den Code vorhanden ist. LabelOnDocuments=Bezeichnung auf Dokumenten LabelOrTranslationKey=Bezeichung oder Übersetzungsschlüssel @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=zu genehmigende Spesenabrechnung Delays_MAIN_DELAY_HOLIDAYS=Zu genehmigende Urlaubsanträge SetupDescription1=Bevor Sie mit Dolibarr arbeiten können müssen grundlegende Einstellungen getätigt und Module freigeschalten / konfiguriert werden. SetupDescription2=Die folgenden zwei Punkte sind obligatorisch: -SetupDescription3=%s -> %s. Basis-Parameter um das Standardverhalten Ihrer Anwendung anzupassen (beispielsweise länderbezogene Funktionen). -SetupDescription4=%s -> %s
    Diese Software ist ein Paket aus vielen Modulen/Anwendungen, alle mehr oder weniger unabhängig. Die für Ihre Bedürfnisse notwendigen Module müssen aktiviert und konfiguriert sein. Neue Einträge/Optionen werden der Menüs bei der Modulaktivierung hinzugefügt. +SetupDescription3= %s -> %s

    Grundlegende Parameter zum Anpassen des Standardverhaltens Ihrer Anwendung (z. B. für länderbezogene Funktionen). +SetupDescription4= %s -> %s

    Diese Software ist eine Suite vieler Module / Anwendungen. Die auf Ihre Bedürfnisse bezogenen Module müssen aktiviert und konfiguriert sein. Menüeinträge werden mit der Aktivierung dieser Module angezeigt. SetupDescription5=Andere Setup-Menüs verwalten optionale Parameter. LogEvents=Protokollierte Ereignisse Audit=Protokoll @@ -1128,7 +1137,7 @@ LogEventDesc=Aktivieren Sie die Protokollierung für bestimmte Sicherheitsereign AreaForAdminOnly=Einstellungen können nur durch
    Administratoren
    verändert werden. SystemInfoDesc=Verschiedene systemrelevante, technische Informationen - Lesemodus und nur für Administratoren sichtbar. SystemAreaForAdminOnly=Dieser Bereich steht ausschließlich Administratoren zur Verfügung. Keine der Benutzerberechtigungen kann dies ändern. -CompanyFundationDesc=Bearbeiten Sie die Informationen des Unternehmens oder Institution. Klicken Sie auf "%s" am Ende der Seite. +CompanyFundationDesc=Bearbeiten Sie die Informationen Ihres Unternehmens / Ihrer Organisation. Klicken Sie unten auf der Seite auf die Schaltfläche "%s", wenn Sie fertig sind. AccountantDesc=Falls Sie einen externen Buchhalter/Treuhänder haben, können Sie hier dessen Informationen hinterlegen. AccountantFileNumber=Buchhalter-Code DisplayDesc=Hier können Parameter zum Aussehen und Verhalten von Dolibarr angepasst werden. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Regeln für die Erstellung und Freigabe von Passwörte DisableForgetPasswordLinkOnLogonPage='Passwort vergessen'-Link nicht auf der Anmeldeseite anzeigen UsersSetup=Benutzermoduleinstellungen UserMailRequired=Für die Anlage eines neuen Benutzers ist eine E-Mail-Adresse erforderlich +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Dokumentvorlagen für Dokumente, die aus dem Benutzerdatensatz generiert wurden +GroupsDocModules=Dokumentvorlagen für Dokumente, die aus einem Gruppendatensatz generiert wurden ##### HRM setup ##### HRMSetup=Personal Modul Einstellungen ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=PDF-Rechnungsvorlagen BillsPDFModulesAccordindToInvoiceType=Rechnung dokumentiert Modelle nach Rechnungsart PaymentsPDFModules=Zahlungsvorlagen ForceInvoiceDate=Rechnungsdatum ist zwingend Freigabedatum -SuggestedPaymentModesIfNotDefinedInInvoice=Empfohlene Zahlungsart für Rechnung falls nicht in gesondert definiert +SuggestedPaymentModesIfNotDefinedInInvoice=Vorgeschlagener, standardmäßiger Zahlungsmodus auf der Rechnung, falls nicht auf der Rechnung definiert SuggestPaymentByRIBOnAccount=Bankkonto für Bezahlung per Überweisung SuggestPaymentByChequeToAddress=Adresse für Zahlung per Scheck FreeLegalTextOnInvoices=Freier Rechtstext für Rechnungen @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Einstellungen für Lieferantenzahlungen PropalSetup=Angebotsmoduleinstellungen ProposalsNumberingModules=Nummernvergabe für Angebote ProposalsPDFModules=Dokumentenvorlage(n) -SuggestedPaymentModesIfNotDefinedInProposal=Empfohlene Zahlungsart für Angebote, falls im Angebot nicht gesondert definiert +SuggestedPaymentModesIfNotDefinedInProposal=Vorgeschlagener, standardmäßiger Zahlungsmodus für Angebot, falls nicht im Angebot definiert FreeLegalTextOnProposal=Freier Rechtstext auf Angeboten WatermarkOnDraftProposal=Wasserzeichen auf Angebotsentwurf (leerlassen wenn keines benötigt wird) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Fragen Sie nach dem Bankkonto bei einem Angebot @@ -1322,6 +1334,7 @@ WAREHOUSE_ASK_WAREHOUSE_DURING_ORDER=Frage nach Lager für Aufträge ##### Suppliers Orders ##### BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_ORDER=Frage nach der Ziel-Bankverbindung der Lieferantenbestellung ##### Orders ##### +SuggestedPaymentModesIfNotDefinedInOrder=Vorgeschlagener, standardmäßiger Zahlungsmodus für Verkaufsaufträge, falls nicht in der Bestellung definiert OrdersSetup=Einstellungen für die Verwaltung von Verkaufsaufträgen OrdersNumberingModules=Nummernvergabe für Bestellungen OrdersModelModule=Dokumentenvorlage(n) @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Symbole im oberen Menü ausblenden. LeftMenuBackgroundColor=Hintergrundfarbe für Menü Links BackgroundTableTitleColor=Hintergrundfarbe für Titelzeilen in Tabellen BackgroundTableTitleTextColor=Textfarbe der Tabellenüberschrift +BackgroundTableTitleTextlinkColor=Textfarbe für die Tabellentitel-Linkzeile BackgroundTableLineOddColor=Hintergrundfarbe für ungerade Tabellenzeilen BackgroundTableLineEvenColor=Hintergrundfarbe für gerade Tabellenzeilen MinimumNoticePeriod=Mindestkündigungsfrist (Ihr Urlaubsantrag muss vor dieser Frist gestellt werden) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Dolibarr-Referenz nicht in Nachrichten-ID gefunden FormatZip=PLZ MainMenuCode=Menüpunktcode (Hauptmenü) ECMAutoTree=Automatischen ECM-Baum anzeigen -OperationParamDesc=Werte definieren, um Eigenschaften zu setzen oder Werte auszulesen. Beispiel:
    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]*)

    Benutze ein Semikolon ';' als Trennzeichen um Eigenschaften zu setzen oder auszulesen. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Öffnungszeiten OpeningHoursDesc=Geben sie hier die regulären Öffnungszeiten vom Unternehmen an. ResourceSetup=Konfiguration vom Ressourcenmodul @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Warnung, höhere Werte verlangsamen die ModuleActivated=Modul %s is aktiviert und verlangsamt die Overfläche EXPORTS_SHARE_MODELS=Exportmodelle sind für jeden zugänglich. ExportSetup=Einrichtung Modul Export +ImportSetup=Einrichtung des Modulimports InstanceUniqueID=Eindeutige ID dieser Instanz SmallerThan=Kleiner als LargerThan=Größer als @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Einen anonymen Ping '+1' an den Dolibarr-Foundation-Server (ei FeatureNotAvailableWithReceptionModule=Funtion nicht verfügbar, wenn Modul Wareneingang aktiviert ist EmailTemplate=E-Mail-Vorlage EMailsWillHaveMessageID=E-Mails haben ein Schlagwort "Referenzen", das dieser Syntax entspricht -PDF_USE_ALSO_LANGUAGE_CODE=Wenn der Text im PDF-Dokument in 2 unterschiedlichen Sprachen enthalten sein soll, also 2 unterschiedlichen Sprachen im gleichen PDF, muss diese zweite Sprache hier angegeben werden so dass das erzeugte PDF 2 unterschiedliche Sprachen in einem Dokument aufweist. Die beim PDF erzeugen eingestellte und die hier angegebene (nur wenige PDF-Vorlagen unterstützen das). Leer lassen, um nur eine Sprache im PDF zu verwenden. +PDF_USE_ALSO_LANGUAGE_CODE=Wenn Sie möchten, dass einige Texte in Ihrem PDF in 2 verschiedenen Sprachen in demselben generierten PDF dupliziert werden, müssen Sie hier diese zweite Sprache festlegen, damit das generierte PDF zwei verschiedene Sprachen auf derselben Seite enthält, die beim Generieren von PDF ausgewählte und diese (dies wird nur von wenigen PDF-Vorlagen unterstützt). Für 1 Sprache pro PDF leer halten. FafaIconSocialNetworksDesc=Gib hier den Code für ein FontAwesome icon ein. Wenn du FontAwesome nicht kennst, kannst du den Standard 'fa-address-book' benutzen. +RssNote=Hinweis: Jede RSS-Feed-Definition enthält ein Widget, das Sie aktivieren müssen, damit es im Dashboard verfügbar ist +JumpToBoxes=Wechseln Sie zu Einstellungen -> Widgets +MeasuringUnitTypeDesc=Verwenden Sie hier einen Wert wie "Größe", "Oberfläche", "Volumen", "Gewicht", "Zeit". +MeasuringScaleDesc=Die Skala gibt die Anzahl der Stellen an, an denen Sie den Dezimalteil verschieben müssen, um mit der Standardreferenzeinheit übereinzustimmen. Für den Einheitentyp "Zeit" ist dies die Anzahl der Sekunden. Werte zwischen 80 und 99 sind reservierte Werte. diff --git a/htdocs/langs/de_DE/bills.lang b/htdocs/langs/de_DE/bills.lang index 268e655376c..177bbfed204 100644 --- a/htdocs/langs/de_DE/bills.lang +++ b/htdocs/langs/de_DE/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Lieferantenrechnungen SupplierBill=Lieferantenrechnung SupplierBills=Lieferantenrechnungen Payment=Zahlung -PaymentBack=Rückzahlung -CustomerInvoicePaymentBack=Rückzahlung +PaymentBack=Rückerstattung +CustomerInvoicePaymentBack=Rückerstattung Payments=Zahlungen PaymentsBack=Rückerstattungen paymentInInvoiceCurrency=in Rechnungswährung PaidBack=Zurück bezahlt DeletePayment=Lösche Zahlung ConfirmDeletePayment=Möchten Sie diese Zahlung wirklich löschen? -ConfirmConvertToReduc=Möchten Sie diese %s in einen absoluten Rabatt umwandeln? +ConfirmConvertToReduc=Möchten Sie diese %s in ein verfügbares Guthaben umwandeln? ConfirmConvertToReduc2=Der Betrag wird unter allen Rabatten gespeichert und kann als Rabatt für eine aktuelle oder zukünftige Rechnung für diesen Kunden verwendet werden. -ConfirmConvertToReducSupplier=Möchten Sie diese %s in einen absoluten Rabatt umwandeln? +ConfirmConvertToReducSupplier=Möchten Sie diese %s in ein verfügbares Guthaben umwandeln? ConfirmConvertToReducSupplier2=Der Betrag wird unter allen Rabatten gespeichert und kann als Rabatt für eine aktuelle oder zukünftige Rechnung dieses Anbieters verwendet werden. SupplierPayments=Lieferanten Zahlung ReceivedPayments=Erhaltene Zahlungen @@ -209,17 +209,13 @@ NumberOfBillsByMonth=Anzahl Rechnungen pro Monat AmountOfBills=Anzahl der Rechnungen AmountOfBillsHT=Rechnungsbetrag (Netto ohne Steuern) AmountOfBillsByMonthHT=Gesamtbetrag Rechnungen pro Monat (inkl. Steuern) -ShowSocialContribution=Zeige Sozialabgaben/Unternehmenssteuer -ShowBill=Zeige Rechnung -ShowInvoice=Zeige Rechnung -ShowInvoiceReplace=Zeige Ersatzrechnung -ShowInvoiceAvoir=Zeige Gutschrift -ShowInvoiceDeposit=Anzahlungsrechnungen anzeigen -ShowInvoiceSituation=Zeige Fortschritt-Rechnung UseSituationInvoices=Fortschritt-Rechnung zulassen UseSituationInvoicesCreditNote=Fortschritt-Rechnungsgutschrift zulassen Retainedwarranty=Zurückbehaltene Garantie +AllowedInvoiceForRetainedWarranty=Zurückbehaltene Garantie, die auf die folgenden Arten von Rechnungen angewendet werden kann RetainedwarrantyDefaultPercent=Zurückbehaltene Garantie in Prozent +RetainedwarrantyOnlyForSituation=Stellen Sie "einbehaltene Garantie" nur für Situationsrechnungen zur Verfügung +RetainedwarrantyOnlyForSituationFinal=Auf Situationsrechnungen wird der globale Abzug der "einbehaltenen Garantie" nur auf die endgültige Situation angewendet ToPayOn=Zu zahlen am %s toPayOn=zu zahlen am %s RetainedWarranty=Zurückbehaltene Garantie @@ -230,7 +226,6 @@ setretainedwarranty=Beibehaltung der Gewährleistung angeben setretainedwarrantyDateLimit=Datum für Beibehaltung der Gewährleistung angeben RetainedWarrantyDateLimit=Datum für Beibehaltung der Gewährleistung RetainedWarrantyNeed100Percent=Teilrechnung muss 100 % %% vollständig sein, um im PDF zu erscheinen. -ShowPayment=Zeige Zahlung AlreadyPaid=Bereits bezahlt AlreadyPaidBack=Bereits zurückbezahlt AlreadyPaidNoCreditNotesNoDeposits=Bereits bezahlt (ohne Gutschriften und Anzahlungen) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Erzeugt von der Rechnungsvorlage %s WarningInvoiceDateInFuture=Achtung, das Rechnungsdatum ist höher als das aktuelle Datum WarningInvoiceDateTooFarInFuture=Achtung, das Rechnungsdatum ist zu weit entfernt vom aktuellen Datum ViewAvailableGlobalDiscounts=Zeige verfügbare Rabatte +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Status PaymentConditionShortRECEP=sofort @@ -575,3 +571,4 @@ AutoFillDateTo=Enddatum der Dienstleistung auf das Rechnungsdatum setzen AutoFillDateToShort=Enddatum festlegen MaxNumberOfGenerationReached=Maximal Anzahl Generierungen erreicht BILL_DELETEInDolibarr=Rechnung gelöscht +BILL_SUPPLIER_DELETEInDolibarr=Lieferantenrechnung gelöscht diff --git a/htdocs/langs/de_DE/blockedlog.lang b/htdocs/langs/de_DE/blockedlog.lang index d77cda25f7e..b42f38edc50 100644 --- a/htdocs/langs/de_DE/blockedlog.lang +++ b/htdocs/langs/de_DE/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Unveränderbare Logs ShowAllFingerPrintsMightBeTooLong=Unveränderbare Logs anzeigen (kann lange dauern...) ShowAllFingerPrintsErrorsMightBeTooLong=Non valid Logs anzeigen (kann lange dauern) DownloadBlockChain=Fingerprints herunterladen -KoCheckFingerprintValidity=Archived Log eintrag ist nicht gültig. Jemand hat den Originellen Eintrag verändert (Hacker ?), oder der originelle Eintrag wurde gelöscht. +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Der archivierte Logeintrag ist gültig. Die Daten in dieser Zeile wurden nicht geändert und der Eintrag folgt dem vorherigen. OkCheckFingerprintValidityButChainIsKo=Der archivierte Logeintrag scheint im Vergleich zum vorherigen gültig zu sein, aber die vorangehende Eintragskette wurde beschädigt. AddedByAuthority=In der Remote-Instanz gespeichert diff --git a/htdocs/langs/de_DE/cashdesk.lang b/htdocs/langs/de_DE/cashdesk.lang index 6e1862a76e5..ea36609a634 100644 --- a/htdocs/langs/de_DE/cashdesk.lang +++ b/htdocs/langs/de_DE/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=In Warenkorb legen RestartSelling=zurück zum Verkauf SellFinished=Verkauf abgeschlossen PrintTicket=Kassenbon drucken +SendTicket=Send ticket NoProductFound=Kein Artikel gefunden ProductFound=Produkt gefunden NoArticle=Kein Artikel @@ -48,6 +49,7 @@ Footer=Fusszeile AmountAtEndOfPeriod=Betrag am Ende der Periode (Tag, Monat oder Jahr) TheoricalAmount=Theoretischer Betrag RealAmount=Realer Betrag +CashFence=Cash fence CashFenceDone=Kassenschnitt im Zeitraum durchgeführt NbOfInvoices=Anzahl der Rechnungen Paymentnumpad=Art des Pads zur Eingabe der Zahlung @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS benötigt Produktkategorien, um zu funktionieren OrderNotes=Bestellhinweise CashDeskBankAccountFor=Standardkonto für Zahlungen in NoPaimementModesDefined=In der TakePOS-Konfiguration ist kein Zahlungsmodus definiert -TicketVatGrouped=Mehrwertsteuer nach Ticketangaben gruppieren -AutoPrintTickets=Tickets automatisch drucken +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Aktivieren Sie Funktionen für Bar oder Restaurant ConfirmDeletionOfThisPOSSale=Bestätigen Sie die Löschung dieses aktuellen Verkaufs? ConfirmDiscardOfThisPOSSale=Möchten Sie diesen aktuellen Verkauf verwerfen? @@ -87,7 +90,19 @@ HeadBar=Kopfleiste SortProductField=Feld zum Sortieren von Produkten Browser=Browser BrowserMethodDescription=Schneller und einfacher Belegdruck. Nur wenige Parameter zum Konfigurieren der Quittung. Drucken via Browser. -TakeposConnectorMethodDescription=Externes Modul mit zusätzlichen Funktionen. Möglichkeit zum Drucken aus der Cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Druckmethode ReceiptPrinterMethodDescription=Leistungsstarke Methode mit vielen Parametern. Vollständig anpassbar mit Vorlagen. Kann nicht aus der Cloud drucken. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/de_DE/companies.lang b/htdocs/langs/de_DE/companies.lang index 451828dd7aa..862481c2ae1 100644 --- a/htdocs/langs/de_DE/companies.lang +++ b/htdocs/langs/de_DE/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted=Firma "%s" aus der Datenbank gelöscht. ListOfContacts=Liste der Kontakte ListOfContactsAddresses=Liste der Kontakte ListOfThirdParties=Liste der Partner -ShowCompany=Partner anzeigen ShowContact=Kontakt anzeigen ContactsAllShort=Alle (kein Filter) ContactType=Kontaktart @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=Vorname des Vertreter SaleRepresentativeLastname=Nachname des Vertreter ErrorThirdpartiesMerge=Es gab einen Fehler beim Löschen des Partners. Bitte Details sind im Prokoll zu finden. Die Löschung wurden rückgängig gemacht. NewCustomerSupplierCodeProposed=Kunden- oder Lieferantennummer wird bereits verwendet. \nEine neue Nummer wird empfohlen. +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Zahlungsart - Kunde PaymentTermsCustomer=Zahlungsbedingung - Kunde diff --git a/htdocs/langs/de_DE/compta.lang b/htdocs/langs/de_DE/compta.lang index 565102ea3c7..11b23d8e79e 100644 --- a/htdocs/langs/de_DE/compta.lang +++ b/htdocs/langs/de_DE/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=Zeige %sZahlungsanalyse%s für die Berechnung der akt SeeReportInDueDebtMode=Zeige %sRechnungsanalyse%s für die Berechnung der aktuellen Rechnungen auch wenn diese noch nicht ins Hauptbuch übernommen wurden. SeeReportInBookkeepingMode=Siehe %sBuchungsreport%s für die Berechnung via Hauptbuch RulesAmountWithTaxIncluded=- Angezeigte Beträge enthalten alle Steuern -RulesResultDue=- Dies beinhaltet ausstehende Rechnungen, Aufwendungen, Umsatzsteuern, Abgaben, ob sie bezahlt wurden oder nicht. Auch die gezahlten Gehälter.
    - Es gilt das Freigabedatum von den Rechnungen und USt., sowie das Fälligkeitsdatum für Aufwendungen. Für Gehälter definiert mit dem Modul Löhne, wird das Valutadatum der Zahlung verwendet. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- Es sind nur tatsächliche Zahlungen für Rechnungen, Kostenabrechnungen, USt und Gehälter enthalten.
    - Bei Rechnungen, Kostenabrechnungen, USt und Gehälter gilt das Zahlugnsdatum. Bei Spenden gilt das Spendendatum. -RulesCADue=- Es enthält die fälligen Rechnungen des Kunden, ob sie bezahlt werden oder nicht.
    - Es basiert auf dem Validierungsdatum dieser Rechnungen.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- Es umfasst alle effektiven Zahlungen von Rechnungen, die von Kunden erhalten wurden.
    - Es basiert auf dem Zahlungsdatum dieser Rechnungen.
    RulesCATotalSaleJournal=Es beinhaltet alle Gutschriftspositionen aus dem Verkaufsjournal. RulesAmountOnInOutBookkeepingRecord=Beinhaltet Datensätze aus dem Hauptbuch mit den Gruppen "Aufwand" oder "Ertrag" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Verrechneter Umsatz pro Steuersatz TurnoverCollectedbyVatrate=Realisierter Umsatz pro Steuersatz PurchasebyVatrate=Einkäufe pro Steuersatz LabelToShow=Kurzbezeichnung +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/de_DE/errors.lang b/htdocs/langs/de_DE/errors.lang index 0b38b138aa3..9ad6bef1441 100644 --- a/htdocs/langs/de_DE/errors.lang +++ b/htdocs/langs/de_DE/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=Die Datei wurde nicht vollständig zum Server übertragen. ErrorNoTmpDir=Das temporäre Verzeichnis %s existiert nicht. ErrorUploadBlockedByAddon=Der Upload wurde durch ein PHP Apache-Plugin blockiert. ErrorFileSizeTooLarge=Die Größe der gewählten Datei übersteigt den zulässigen Maximalwert. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Die Größe überschreitet das Maximum für den Typ 'int' (%s Ziffern maximal) ErrorSizeTooLongForVarcharType=Die Größe überschreitet das Maximum für den Typ 'string' (%s Zeichen maximal) ErrorNoValueForSelectType=Bitte Wert für Auswahlliste eingeben @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Fehler, die Sprache der überset ErrorBatchNoFoundForProductInWarehouse=Für das Produkt "%s" wurde im Lager "%s" keine Los / Seriennummer gefunden. ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=Bestand nicht ausreichend für diese Los / Seriennummer für das Produkt "%s" im Lager "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # Warnings WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Ihr PHP Parameter upload_max_filesize (%s) ist größer als Parameter post_max_size (%s). Dies ist eine inkonsistente Einstellung. 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. diff --git a/htdocs/langs/de_DE/link.lang b/htdocs/langs/de_DE/link.lang index 9c561230019..2c9e412b742 100644 --- a/htdocs/langs/de_DE/link.lang +++ b/htdocs/langs/de_DE/link.lang @@ -8,3 +8,4 @@ LinkRemoved=Der Link %s wurde entfernt ErrorFailedToDeleteLink= Fehler beim entfernen des Links '%s' ErrorFailedToUpdateLink= Fehler beim aktualisieren des Link '%s' URLToLink=URL zum verlinken +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/de_DE/mails.lang b/htdocs/langs/de_DE/mails.lang index 04567ddd4d6..a2f484938be 100644 --- a/htdocs/langs/de_DE/mails.lang +++ b/htdocs/langs/de_DE/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=Kein Kontakt/Adresse mit einer Kategorie gefunden NoContactLinkedToThirdpartieWithCategoryFound=Kein Kontakt/Adresse mit einer Kategorie gefunden OutGoingEmailSetup=Postausgang InGoingEmailSetup=Posteingang -OutGoingEmailSetupForEmailing=Einstellung ausgehende E-Mails (für den Massenversand) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Standardeinstellungen für ausgehende E-Mails Information=Information ContactsWithThirdpartyFilter=Kontakte mit Drittanbieter-Filter diff --git a/htdocs/langs/de_DE/main.lang b/htdocs/langs/de_DE/main.lang index aed761fb08e..d7f70d294ed 100644 --- a/htdocs/langs/de_DE/main.lang +++ b/htdocs/langs/de_DE/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Speichern und bleiben SaveAndNew=Speichern und neu TestConnection=Verbindung testen ToClone=Duplizieren +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Wählen Sie die zu duplizierenden Daten: NoCloneOptionsSpecified=Keine Duplikationsoptionen ausgewählt. Of=von @@ -829,6 +830,8 @@ Gender=Geschlecht Genderman=männlich Genderwoman=weiblich ViewList=Listenansicht +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Pflichtfeld Hello=Hallo GoodBye=Auf Wiedersehen @@ -1022,5 +1025,6 @@ SelectYourGraphOptionsFirst=Wählen Sie Ihre Diagrammoptionen aus, um ein Diagra Measures=Maße XAxis=X-Achse YAxis=Y-Achse +StatusOfRefMustBe=Status of %s must be %s DeleteFileHeader=Dateilöschung bestätigen DeleteFileText=Möchten sie diese Datei wirklich löschen? diff --git a/htdocs/langs/de_DE/modulebuilder.lang b/htdocs/langs/de_DE/modulebuilder.lang index 9081742aa45..332164aea50 100644 --- a/htdocs/langs/de_DE/modulebuilder.lang +++ b/htdocs/langs/de_DE/modulebuilder.lang @@ -83,9 +83,9 @@ ListOfDictionariesEntries=Liste der Wörterbucheinträge ListOfPermissionsDefined=Liste der definierten Berechtigungen SeeExamples=Beispiele hier EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) -VisibleDesc=Ist das Feld sichtbar ? (Beispiele: 0=Nie sichtbar, 1=Sichtbar in Auflistungen und Erstellungs-/Änderungs-/Anzeigeformularen, 2=Nur sichtbar in Auflistungen, 3=Nur sichtbar in Erstellungs-/Änderungs-/Anzeigeformularen (keine Auflistungen), 4=Nur sichtbar in Auflistungen und Änderungs-/Anzeigeformularen (keine Erstellungsformulare), 5=Nur sichtbar in Auflistungen und Anzeigeformularen (keine Erstellungs-/Änderungsformulare). Ein negativer Wert bedeutet, das Feld wird standardmäßig nicht angezeigt in der Auflistung, aber kann zur Anzeige ausgewählt werden). Ausdrücke können verwendet werden, z.B.:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene -DisplayOnPdf=Display on PDF +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty +DisplayOnPdf=Anzeige auf PDF IsAMeasureDesc=Kann der Wert des Feldes kumuliert werden, um eine Summe in die Liste aufzunehmen? (Beispiele: 1 oder 0) SearchAllDesc=Wird das Feld verwendet, um eine Suche über das Schnellsuchwerkzeug durchzuführen? (Beispiele: 1 oder 0) SpecDefDesc=Enter here all documentation you want to provide with your module that is not already defined by other tabs. You can use .md or better, the rich .asciidoc syntax. diff --git a/htdocs/langs/de_DE/orders.lang b/htdocs/langs/de_DE/orders.lang index 3550d747799..dfff5494aa3 100644 --- a/htdocs/langs/de_DE/orders.lang +++ b/htdocs/langs/de_DE/orders.lang @@ -141,7 +141,7 @@ OrderByEMail=E-Mail (Feld mit automatischer E-Mail-Syntaxprüfung) OrderByWWW=Online OrderByPhone=Telefon # Documents models -PDFEinsteinDescription=Ein vollständiges Bestellmodell (alte Implementierung der Eratosthene-Vorlage) +PDFEinsteinDescription=Ein vollständiges Bestellmodell PDFEratostheneDescription=Ein komplettes Bestellmodell PDFEdisonDescription=Eine einfache Bestellvorlage PDFProformaDescription=Eine vollständige Proforma-Rechnungsvorlage diff --git a/htdocs/langs/de_DE/other.lang b/htdocs/langs/de_DE/other.lang index 3e0794697c4..eeead24c7dd 100644 --- a/htdocs/langs/de_DE/other.lang +++ b/htdocs/langs/de_DE/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Derzeit ist nur 1 Feld als X-Achse möglich. Es wurde nur das erste selektierte Feld ausgewählt. AtLeastOneMeasureIsRequired=Es ist mindestens 1 Feld für Maßnahmen erforderlich AtLeastOneXAxisIsRequired=Es ist mindestens 1 Feld für die X-Achse erforderlich - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Kundenbestellung freigegeben Notify_ORDER_SENTBYMAIL=Kundenbestellung per E-Mail versendet Notify_ORDER_SUPPLIER_SENTBYMAIL=Lieferantenbestellung per E-Mail zugestellt @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=URL der Seite WEBSITE_TITLE=TItel WEBSITE_DESCRIPTION=Beschreibung WEBSITE_IMAGE=Bild -WEBSITE_IMAGEDesc=Relativer Pfad zur Bildimage-Datei. Kann auch leer bleiben, da selten benutzt (es kann für die Anzeige von dynamischen Inhalten für Thumbnails in einer Liste von Blogposts verwendet werden). Benutze __WEBSITEKEY__ im Pfad, wenn sich der Pfad auf einen Website-Namen bezieht. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Schlüsselwörter LinesToImport=Positionen zum importieren diff --git a/htdocs/langs/de_DE/products.lang b/htdocs/langs/de_DE/products.lang index fab2a70242b..8dc1242398a 100644 --- a/htdocs/langs/de_DE/products.lang +++ b/htdocs/langs/de_DE/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=Dieses Tool aktualisiert den für ALLE Pr MassBarcodeInit=Initialisierung Barcodes MassBarcodeInitDesc=Hier können Objekte mit einem Barcode initialisiert werden, die noch keinen haben. Stellen Sie vor Benutzung sicher, dass die Einstellungen des Barcode-Moduls vollständig sind! ProductAccountancyBuyCode=Rechnungscode (Einkauf) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Buchhaltungscode (Verkauf) ProductAccountancySellIntraCode=Buchungscode (Verkauf innerhalb der Gemeinschaft) ProductAccountancySellExportCode=Kontierungscode (Verkauf Export) @@ -165,7 +167,7 @@ SuppliersPrices=Lieferanten Preise SuppliersPricesOfProductsOrServices=Herstellerpreise (von Produkten oder Dienstleistungen) CustomCode=Zolltarifnummer CountryOrigin=Urspungsland -Nature=Produkttyp (Material / Fertig) +Nature=Nature of product (material/finished) ShortLabel=Kurzbezeichnung Unit=Einheit p=u. diff --git a/htdocs/langs/de_DE/projects.lang b/htdocs/langs/de_DE/projects.lang index d235de8b9d5..bb6f57b46e3 100644 --- a/htdocs/langs/de_DE/projects.lang +++ b/htdocs/langs/de_DE/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=Projekt mit dem ich verbunden bin Time=Zeitaufwand ListOfTasks=Aufgabenliste GoToListOfTimeConsumed=Liste der verwendeten Zeit aufrufen -GoToListOfTasks=Als Liste anzeigen -GoToGanttView=als Gantt zeigen GanttView=Gantt-Diagramm ListProposalsAssociatedProject=Liste der projektbezogenen Angebote ListOrdersAssociatedProject=Liste der projektbezogenen Kundenaufträge @@ -188,7 +186,7 @@ PlannedWorkload=Geplante Auslastung PlannedWorkloadShort=Arbeitsaufwand ProjectReferers=Verknüpfte Einträge ProjectMustBeValidatedFirst=Projekt muss erst bestätigt werden -FirstAddRessourceToAllocateTime=Benutzer eine Ressource pro Aufgabe zuordnen, um eine Zeitspanne einzuräumen +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=Eingang pro Tag InputPerWeek=Eingang pro Woche InputPerMonth=Eingang pro Monat @@ -240,6 +238,7 @@ LatestModifiedProjects=Neueste %s modifizierte Projekte OtherFilteredTasks=Andere gefilterte Aufgaben NoAssignedTasks=Keine zugewiesenen Aufgaben gefunden (dem aktuellen Benutzer über das obere Auswahlfeld Projekt / Aufgaben zuweisen, um die Zeit einzugeben) ThirdPartyRequiredToGenerateInvoice=Für das Projekt muss ein Drittanbieter definiert werden, um es in Rechnung stellen zu können. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=Alle Benutzerkommentare zur Aufgabe AllowCommentOnProject=Benutzer dürfen Projekte kommentieren @@ -256,7 +255,7 @@ ServiceToUseOnLines=Service für Leitungen InvoiceGeneratedFromTimeSpent=Die Rechnung %s wurde aus der für das Projekt aufgewendeten Zeit generiert ProjectBillTimeDescription=Prüfe, ob Arbeitszeittabellen für Projektaufgaben geführt werden UND ob Rechnungen aus dieser Arbeitszeittabelle erstellt werden sollen, um mit dem Kunden des Projekts abzurechnen (Prüfe nicht, ob Rechnungen erstellt werden sollen, die nicht auf Arbeitszeittabellen basieren). Hinweis: Um eine Rechnung zu erstellen, gehe auf die Registerkarte 'Zeitaufwand' des Projekts und wähle einzuschließende Zeilen aus. ProjectFollowOpportunity=Verkaufsmöglichkeiten nachverfolgen -ProjectFollowTasks=Folgen Sie Aufgaben +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Anwendung: Verkaufsmöglichkeit UsageTasks=Verwendung: Aufgaben @@ -265,3 +264,4 @@ InvoiceToUse=Zu verwendender Rechnungsentwurf NewInvoice=Neue Rechnung OneLinePerTask=Eine Zeile pro Aufgabe OneLinePerPeriod=Eine Zeile pro Zeitraum +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/de_DE/propal.lang b/htdocs/langs/de_DE/propal.lang index e16a3f5eef5..1122aa02c52 100644 --- a/htdocs/langs/de_DE/propal.lang +++ b/htdocs/langs/de_DE/propal.lang @@ -63,7 +63,7 @@ ProposalLine=Angebotsposition AvailabilityPeriod=Gültig bis SetAvailability=Gültigkeitszeitraum definieren AfterOrder=nach Bestellung -OtherProposals=zeige weitere Angebote für diesen Partners +OtherProposals=zeige weitere Angebote für diesen Partner ##### Availability ##### AvailabilityTypeAV_NOW=Sofort AvailabilityTypeAV_1W=7 Tage diff --git a/htdocs/langs/de_DE/receiptprinter.lang b/htdocs/langs/de_DE/receiptprinter.lang index ef7e4748fd7..93f5e4bef5e 100644 --- a/htdocs/langs/de_DE/receiptprinter.lang +++ b/htdocs/langs/de_DE/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Dummy Drucker CONNECTOR_NETWORK_PRINT=Netzwerk-Drucker CONNECTOR_FILE_PRINT=lokaler Drucker CONNECTOR_WINDOWS_PRINT=lokaler Windows Drucker +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Simulierter Drucker zum Testen, hat keine Funktion CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Standardprofil PROFILE_SIMPLE=einfaches Profil PROFILE_EPOSTEP=Epos Tep Profil @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Rechnungsmonat (Abkürzung) DOL_VALUE_MONTH=Rechnungsmonat DOL_VALUE_DAY=Rechnungstag DOL_VALUE_DAY_LETTERS=Rechnungstag (Abkürzung) +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Rechnungs Nr. +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=innergemeinschaftliche Umsatzsteuer-ID +DOL_VALUE_MYSOC_CAPITAL=Kapital +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/de_DE/stripe.lang b/htdocs/langs/de_DE/stripe.lang index 249be384aa5..e8913c6833a 100644 --- a/htdocs/langs/de_DE/stripe.lang +++ b/htdocs/langs/de_DE/stripe.lang @@ -32,6 +32,7 @@ VendorName=Name des Lieferanten CSSUrlForPaymentForm=CSS-Datei für das Zahlungsmodul NewStripePaymentReceived=Neue Stripezahlung erhalten NewStripePaymentFailed=Neue Stripezahlung versucht, aber fehlgeschlagen +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Geheimer Testschlüssel STRIPE_TEST_PUBLISHABLE_KEY=Öffentlicher Testschlüssel STRIPE_TEST_WEBHOOK_KEY=Webhook Testschlüssel @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Link zum Einrichten von Stripe WebHook zum Aufruf von ToOfferALinkForLiveWebhook=Link zum Einrichten von Stripe WebHook zum Aufruf von IPN (Livemodus) PaymentWillBeRecordedForNextPeriod=Die Zahlung wird für den folgenden Zeitraum erfasst. ClickHereToTryAgain=Hier klicken und nochmal versuchen... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Aufgrund der strengen Kundenauthentifizierungsregeln muss die Erstellung einer Karte im Stripe-Backoffice erfolgen. Klicken Sie hier, um zum Stripe-Kundeneintrag zu wechseln: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/de_DE/users.lang b/htdocs/langs/de_DE/users.lang index 28c3db26415..9aa6e40068b 100644 --- a/htdocs/langs/de_DE/users.lang +++ b/htdocs/langs/de_DE/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Benutzer und -eigenschaften DomainUser=Domain-Benutzer %s Reactivate=Reaktivieren CreateInternalUserDesc=Dieses Formular erlaubt Ihnen das Anlegen eines Internen Benutzers in Ihrem Unternehmen oder Organisation. Zum Anlegen eines externen Benutzers (Kunden, Lieferanten, ...), verwenden Sie bitte die 'Kontakt/Adresse erstellen'-Schaltfläche in der Kontaktkarte des jeweiligen Partners. -InternalExternalDesc=Ein interner Benutzer ist Teil Ihres Unternehmens/Ihrer Organisation.
    Ein externer Benutzer ist ein Kunde, Lieferant oder Sonstiges.

    In beiden Fällen können Berechtigungen in Dolibarr definiert werden. Externe Benutzer können auch ein anderes Menü angezeigt bekommen als interne Benutzer (Siehe Start - Einstellungen - Anzeige). +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=Berechtigung durch eine Gruppenzugehörigkeit geerbt. Inherited=Geerbt UserWillBeInternalUser=Erstellter Benutzer ist intern (mit keinem bestimmten Partner verknüpft) @@ -113,3 +113,5 @@ CantDisableYourself=Sie können Ihr eigenes Benutzerkonto nicht deaktivieren ForceUserExpenseValidator=Überprüfung der Spesenabrechnung erzwingen ForceUserHolidayValidator=Gültigkeitsprüfer für Urlaubsanträge erzwingen ValidatorIsSupervisorByDefault=Standardmäßig ist der Prüfer der Supervisor des Benutzers. Leer lassen, um dieses Verhalten beizubehalten. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/de_DE/website.lang b/htdocs/langs/de_DE/website.lang index cddab17114f..fb42a394cff 100644 --- a/htdocs/langs/de_DE/website.lang +++ b/htdocs/langs/de_DE/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=Seite in neuem Tab anzeigen SetAsHomePage=Als Startseite festlegen RealURL=Echte URL ViewWebsiteInProduction=Anzeige der Webseite über die Startseite\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nüber die URL der Homepage -SetHereVirtualHost=Mit Apache/NGinx/... nutzen
    Wenn auf dem Webserver (Apache, Nginx, ...) ein dedizierter, virtueller Host mit PHP und einem Root Verzeichnis in
    %s
    eingerichtet werden kann, dann muss der Name des virtuellen Hosts aus den Einstellungen der Webseite verwendet werden. Dann kann die Vorschau auch diesen dedizierten Webserver nutzen anstelle des internen Dolibarr Servers. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS=Verwendung mit eingebettetem PHP-Server
    In der Entwicklungsumgebung können Sie die Site mit dem eingebetteten PHP-Webserver (PHP 5.5 erforderlich) testen, indem Sie
    php -S 0.0.0.0:8080 -t %s ausführen. YouCanAlsoDeployToAnotherWHP=Betreibe deine Website mit einem anderen Dolibarr Hosting-Anbieter
    Wenn kein Apache oder NGinx Webserver online verfügbar ist, kann deine Website exportiert und importiert werden und zu einer anderen Dolibarr Instanz umziehen, die durch einen anderen Dolibarr Hosting-Anbieter mit kompletter Integration des Webseiten-Moduls bereitgestellt wird. Eine Liste mit Dolibarr Hosting-Anbietern ist hier abufbar https://saas.dolibarr.org CheckVirtualHostPerms=Kontrolliere dass auch der Virtuelle Host die %s Berechtigung für die die Dateien in
    %s hat @@ -56,7 +57,7 @@ NoPageYet=Noch keine Seiten YouCanCreatePageOrImportTemplate=Sie können eine neue Seite erstellen oder eine komplette Website-Vorlage importieren SyntaxHelp=Hilfe zu bestimmten Syntaxtipps YouCanEditHtmlSourceckeditor=Sie können den HTML-Quellcode über die Schaltfläche "Quelle" im Editor bearbeiten. -YouCanEditHtmlSource=
    PHP Code kann in diesen Sourcecode durch Tags integriert werden <?php ?>. Folgende globale Variablen sind verfügbar: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    Inhalte anderer Seiten / Container können ebenfalls mit folgender Syntax übernommen werden:
    <?php includeContainer('alias_of_container_to_include'); ?>

    Eine Weiterleitung zu anderen Seiten / Containern erfolgt mit folgender Syntax (Hinweis: keine Inhalte vor der Weiterleitung ausgeben):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    Um einen Link zu einer anderen Seite zu integrieren, nutze folgende Syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    Um einen Downloadlink zu einer Datei im Verzeichnis documents zu integrieren, nutze den document.php Wrapper:
    Beispielsyntax für eine Datei im Verzeichnis documents/ecm (muss protokolliert werden):
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    Beispielsyntax für eine Datei im Verzeichnis documents/medias (öffentlicher Zugriff):
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    Beispielsyntax für eine freigegebene Datei mit Freigabelink (öffentlicher Zugriff mit dem geteilten Hash der Datei):
    <a href="/document.php?hashp=publicsharekeyoffile">

    Um ein Bild im Verzeichnis documents herunterzuladen, benutze den viewimage.php Wrapper:
    Beispielsyntax für ein Bild im Verzeichnis documents/medias (öffentlicher Zugriff):
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    Weitere Beispiele für HTML oder dynamischen Code sind verfügbar in der Wiki Dokumentation
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Seite / Container klonen CloneSite=Website klonen SiteAdded=Website hinzugefügt @@ -76,7 +77,7 @@ BlogPost=Blog Eintrag WebsiteAccount=Website Konto WebsiteAccounts=Website Konten AddWebsiteAccount=Website-Konto erstellen -BackToListOfThirdParty=Zurück zur Liste für Drittanbieter +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Webseite zuerst deaktivieren MyContainerTitle=Titel der Website AnotherContainer=So fügen Sie den Inhalt einer anderen Seite/eines anderen Containers ein (Sie könnten hierbei Fehler haben, wenn Sie dynamischen Code aktivieren, weil der eingebettete Subcontainer möglicherweise nicht existiert) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Diese Website ist derzeit offline. Bitte kommen S WEBSITE_USE_WEBSITE_ACCOUNTS=Benutzertabelle für Webseite aktivieren WEBSITE_USE_WEBSITE_ACCOUNTSTooltip=Aktiviere die Benutzertabelle, um Webseiten-Konten (Login/Kennwort) für jede Website / jeden Drittanbieter zu speichern YouMustDefineTheHomePage=Zuerst muss die Startseite definiert sein -OnlyEditionOfSourceForGrabbedContentFuture=Warnung: Die Erstellung einer Website durch importieren einer externen Seite ist erfahrenen Nutzern vorbehalten. Abhängig von der Komplexität der Quellseite, weicht das Importergebnis möglichweise von Original ab. Falls die Quellseite Standard-CSS oder konfliktträchtiges Javascript nutzt, kann das das Layout oder die Features des Webseiten-Editors beschädigen, wenn an dieser Seite gearbeitet wird. Diese Methode ist ein schnellerer Weg, um Webseiten zu erstellen aber es wird empfohlen, neue Webseiten von grundauf neu zu erstellen oder eine empfohlene Seitenvorlage zu nutzen.
    Bitte auch beachten, dass Änderungen am HTML-Quellcode erst möglich sind, wenn der Seiteninhalt von der externen Seite übertragen wurde (Der "Online" Editor ist NICHT verfügbar.) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Der HTML Code kann nur editiert werden, wenn der Inhalt von einer externen Site geladen wurde GrabImagesInto=Auch Bilder aus CSS und Seite übernehmen ImagesShouldBeSavedInto=Bilder sollten im Verzeichnis gespeichert werden @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=Verwende für gute SEO-Ergebnisse einen Text zwischen MainLanguage=Hauptsprache OtherLanguages=Andere Sprachen UseManifest=Eine manifest.json-Datei bereitstellen +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/de_DE/zapier.lang b/htdocs/langs/de_DE/zapier.lang new file mode 100644 index 00000000000..5922ed95485 --- /dev/null +++ b/htdocs/langs/de_DE/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier für Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Modul: Zapier für Dolibarr + +# +# Admin page +# +ZapierForDolibarrSetup = Zapier für Dolibarr einrichten diff --git a/htdocs/langs/el_CY/accountancy.lang b/htdocs/langs/el_CY/accountancy.lang new file mode 100644 index 00000000000..9827b9d3795 --- /dev/null +++ b/htdocs/langs/el_CY/accountancy.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - accountancy +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 diff --git a/htdocs/langs/el_CY/admin.lang b/htdocs/langs/el_CY/admin.lang new file mode 100644 index 00000000000..27c312f77d7 --- /dev/null +++ b/htdocs/langs/el_CY/admin.lang @@ -0,0 +1,5 @@ +# Dolibarr language file - Source file is en_US - admin +MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the maximum filesize for upload to %s %s, irrespective of the value of this parameter +Module56Name=Telephony +Module56Desc=Telephony integration +EmailCollectorLoadThirdPartyHelp=You can use this action to use the email content to find and load an existing thirdparty in your database. The found (or created) thirdparty will be used for following actions that need it. In the parameter field you can use for example 'EXTRACT:BODY:Name:\\s([^\\s]*)' if you want to extract the name of the thirdparty from a string 'Name: name to find' found into the body. diff --git a/htdocs/langs/el_CY/companies.lang b/htdocs/langs/el_CY/companies.lang new file mode 100644 index 00000000000..6897cf22f06 --- /dev/null +++ b/htdocs/langs/el_CY/companies.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - companies +Contact=Contact diff --git a/htdocs/langs/el_CY/modulebuilder.lang b/htdocs/langs/el_CY/modulebuilder.lang new file mode 100644 index 00000000000..8bbcc78a506 --- /dev/null +++ b/htdocs/langs/el_CY/modulebuilder.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - modulebuilder +ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: diff --git a/htdocs/langs/el_CY/projects.lang b/htdocs/langs/el_CY/projects.lang new file mode 100644 index 00000000000..7e42793b0e9 --- /dev/null +++ b/htdocs/langs/el_CY/projects.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - projects +CantRemoveProject=This project can't be removed as it is referenced by some other objects (invoice, orders or other). See referers tab. diff --git a/htdocs/langs/el_GR/accountancy.lang b/htdocs/langs/el_GR/accountancy.lang index bfd11f7ec8b..2671a163f4e 100644 --- a/htdocs/langs/el_GR/accountancy.lang +++ b/htdocs/langs/el_GR/accountancy.lang @@ -121,6 +121,7 @@ InvoiceLinesDone=Δεσμευμένες γραμμές τιμολογίων ExpenseReportLines=Γραμμές εκθέσεων δαπανών που δεσμεύουν ExpenseReportLinesDone=Δεσμευμένες αναφορές δαπανών IntoAccount=Συνδέστε τη γραμμή με τον λογαριασμό λογιστικής +TotalForAccount=Total for accounting account Ventilate=Δένω @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Λογαριασμός λογιστικής για τ ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Λογαριασμός λογιστικής για την εγγραφή συνδρομών ACCOUNTING_PRODUCT_BUY_ACCOUNT=Λογαριασμός λογιστικής από προεπιλογή για τα αγορασμένα προϊόντα (χρησιμοποιείται αν δεν ορίζεται στο φύλλο προϊόντων) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Λογαριασμός από προεπιλογή για τα προϊόντα που αγοράστηκαν στην ΕΟΚ (χρησιμοποιείται αν δεν ορίζεται στο φύλλο προϊόντος) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Λογαριασμός από προεπιλογή για τα προϊόντα που αγοράστηκαν και εισάγονται εκτός ΕΟΚ (χρησιμοποιείται αν δεν ορίζεται στο φύλλο προϊόντος) ACCOUNTING_PRODUCT_SOLD_ACCOUNT=Λογαριασμός λογαριασμού από προεπιλογή για τα προϊόντα που πωλούνται (χρησιμοποιείται αν δεν ορίζεται στο φύλλο προϊόντος) ACCOUNTING_PRODUCT_SOLD_INTRA_ACCOUNT=Λογαριασμός λογιστικής από προεπιλογή για τα προϊόντα που πωλούνται στην ΕΟΚ (χρησιμοποιείται αν δεν ορίζεται στο φύλλο προϊόντων) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Λογαριασμός λογαριασμού από προεπιλογή για τα προϊόντα που πωλούνται και εξάγονται εκτός ΕΟΚ (χρησιμοποιείται αν δεν ορίζεται στο φύλλο προϊόντων) + ACCOUNTING_SERVICE_BUY_ACCOUNT=Λογαριασμός λογαριασμού από προεπιλογή για τις υπηρεσίες που αγοράσατε (χρησιμοποιείται αν δεν ορίζεται στο φύλλο εξυπηρέτησης) +ACCOUNTING_SERVICE_BUY_INTRA_ACCOUNT=Λογαριασμός από προεπιλογή για τις υπηρεσίες που αγοράστηκαν στην ΕΟΚ (χρησιμοποιείται αν δεν ορίζεται στο φύλλο υπηρεσίας) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Λογαριασμός από προεπιλογή για τις υπηρεσίες που αγοράστηκαν και εισήχθησαν εκτός ΕΟΚ (χρησιμοποιείται αν δεν ορίζεται στο φύλλο υπηρεσίας) ACCOUNTING_SERVICE_SOLD_ACCOUNT=Λογαριασμός λογαριασμού από προεπιλογή για τις υπηρεσίες πώλησης (χρησιμοποιείται αν δεν ορίζεται στο φύλλο εξυπηρέτησης) ACCOUNTING_SERVICE_SOLD_INTRA_ACCOUNT=Λογαριασμός λογαριασμού από προεπιλογή για τις υπηρεσίες που πωλούνται στην ΕΟΚ (χρησιμοποιείται αν δεν ορίζεται στο φύλλο υπηρεσιών) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Λογαριασμός λογαριασμού από προεπιλογή για τις υπηρεσίες που πωλούνται και εξάγονται εκτός ΕΟΚ (χρησιμοποιείται αν δεν ορίζεται στο φύλλο υπηρεσιών) @@ -228,11 +234,15 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Άγνωστο τ ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Ο λογαριασμός τρίτου μέρους δεν έχει οριστεί ή είναι άγνωστος τρίτος. Σφάλμα αποκλεισμού. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Ο λογαριασμός λογαριασμού τρίτου μέρους και ο λογαριασμός αναμονής δεν έχουν οριστεί. Σφάλμα αποκλεισμού PaymentsNotLinkedToProduct=Πληρωμή που δεν συνδέεται με κανένα προϊόν / υπηρεσία +OpeningBalance=Opening balance ShowOpeningBalance=Εμφάνιση αρχικού υπολοίπου HideOpeningBalance=Κρύψιμο αρχικού υπολοίπου +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Ομάδα του λογαριασμού -PcgtypeDesc=Group 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. +PcgtypeDesc=Η ομάδα λογαριασμού χρησιμοποιείται ως προκαθορισμένα κριτήρια «φίλτρου» και «ομαδοποίησης» για ορισμένες λογιστικές αναφορές. Για παράδειγμα, τα «ΕΙΣΟΔΗΜΑ» ή «ΕΞΟΔΑ» χρησιμοποιούνται ως ομάδες λογιστικών λογαριασμών προϊόντων για τη δημιουργία της αναφοράς εξόδων / εσόδων. + +Reconcilable=Συμβιβάσιμος TotalVente=Total turnover before tax TotalMarge=Συνολικό περιθώριο πωλήσεων @@ -307,11 +317,13 @@ Modelcsv_quadratus=Εξαγωγή για Quadratus QuadraCompta Modelcsv_ebp=Εξαγωγή για EBP Modelcsv_cogilog=Εξαγωγή για το Cogilog Modelcsv_agiris=Εξαγωγή για Agiris -Modelcsv_LDCompta=Εξαγωγή για LD Compta (v9 και άνω) (Test) +Modelcsv_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Εξαγωγή για LD Compta (v10 και άνω) Modelcsv_openconcerto=Εξαγωγή για OpenConcerto (Test) Modelcsv_configurable=Εξαγωγή CSV εξαγωγής Modelcsv_FEC=Εξαγωγή FEC Modelcsv_Sage50_Swiss=Εξαγωγή για Sage 50 Ελβετία +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Λογαριασμός Id ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Κατάσταση πωλήσεων OptionModeProductSellIntra=Mode πωλήσεις που εξάγονται στην ΕΟΚ OptionModeProductSellExport=Mode πωλήσεις που εξάγονται σε άλλες χώρες OptionModeProductBuy=Κατάσταση αγορών +OptionModeProductBuyIntra=Λειτουργίες που εισάγονται σε ΕΟΚ +OptionModeProductBuyExport=Λειτουργία που αγοράστηκε εισαγόμενη από άλλες χώρες OptionModeProductSellDesc=Εμφάνιση όλων των προϊόντων με λογιστικό λογαριασμό για πωλήσεις. OptionModeProductSellIntraDesc=Εμφάνιση όλων των προϊόντων με λογιστική καταγραφή πωλήσεων στην ΕΟΚ. OptionModeProductSellExportDesc=Εμφάνιση όλων των προϊόντων με λογαρια σμό για άλλες ξένες πωλήσεις. OptionModeProductBuyDesc=Εμφάνιση όλων των προϊόντων με λογιστικό λογαριασμό για αγορές. +OptionModeProductBuyIntraDesc=Εμφάνιση όλων των προϊόντων με λογιστικό λογαριασμό για αγορές σε ΕΟΚ. +OptionModeProductBuyExportDesc=Εμφάνιση όλων των προϊόντων με λογιστικό λογαριασμό για άλλες αγορές στο εξωτερικό. CleanFixHistory=Καταργήστε τον κωδικό λογιστικής από γραμμές που δεν υπάρχουν στα γραφήματα λογαριασμού CleanHistory=Επαναφέρετε όλες τις συνδέσεις για το επιλεγμένο έτος PredefinedGroups=Προκαθορισμένες ομάδες @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Ο λογαριασμός αφαιρέθηκε από τ SaleLocal=Τοπική πώληση SaleExport=Εξαγωγή πώλησης SaleEEC=Πώληση στην ΕΟΚ +SaleEECWithVAT=Πώληση σε ΕΟΚ με μηδενικό ΦΠΑ, επομένως υποθέτουμε ότι ΔΕΝ είναι ενδοκοινοτική πώληση και ο προτεινόμενος λογαριασμός είναι ο τυπικός λογαριασμός προϊόντος. +SaleEECWithoutVATNumber=Πώληση σε ΕΟΚ χωρίς ΦΠΑ, αλλά δεν ορίζεται το ΑΦΜ τρίτου μέρους. Εφεδρικός λογαριασμός προϊόντος για τυπικές πωλήσεις. Εάν χρειαστεί, μπορείτε να διορθώσετε το αναγνωριστικό ΦΠΑ τρίτου μέρους ή τον λογαριασμό προϊόντος. ## Dictionary Range=Εύρος λογιστικού λογαριασμού diff --git a/htdocs/langs/el_GR/admin.lang b/htdocs/langs/el_GR/admin.lang index 4b8ac4651a9..e9cfbc1009f 100644 --- a/htdocs/langs/el_GR/admin.lang +++ b/htdocs/langs/el_GR/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Χειριστής/Ομάδα Διακομιστή Web NoSessionFound=Η διαμόρφωση της PHP σας φαίνεται να μην επιτρέπει την καταχώρηση των ενεργοποιημένων συνδεγριών. Ο κατάλογος που χρησιμοποιείται για την αποθήκευση των περιόδων σύνδεσης (%s) μπορεί να προστατεύεται (για παράδειγμα, από τα δικαιώματα των λειτουργικών συστημάτων ή από την οδηγία PHP open_basedir). DBStoringCharset=Σύνολο χαρακτήρων βάσης δεδομένων για την αποθήκευση δεδομένων DBSortingCharset=Σετ χαρακτήρων βάσης δεδομένων για ταξινόμηση δεδομένων +HostCharset=Host charset ClientCharset=Σύνολο χαρακτήρων του χρήστη ClientSortingCharset=Συγκέντρωση πελατών WarningModuleNotActive=Το Module %s πρέπει να ενεργοποιηθεί @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Σημείωση: Η διαμόρφωση PHP σας NoMaxSizeByPHPLimit=Σημείωση: Κανένα όριο δεν έχει οριστεί στη διαμόρφωση του PHP σας MaxSizeForUploadedFiles=Μέγιστο μέγεθος για μεταφόρτωση αρχείων (0 απορρίπτει οποιοδήποτε μεταφόρτωση) UseCaptchaCode=Χρησιμοποιήστε το γραφικό κώδικα (CAPTCHA) στη σελίδα εισόδου -AntiVirusCommand= Πλήρης διαδρομή για την εντολή του antivirus -AntiVirusCommandExample= Παράδειγμα για ClamWin: c:\\Program Files (x86)\\ClamWin\\bin\\clamscan.exe
    Παράδειγμα για ClamAv: /usr/bin/clamscan +AntiVirusCommand=Πλήρης διαδρομή για την εντολή του antivirus +AntiVirusCommandExample=Παράδειγμα για το ClamAv Daemon (απαιτείται clamav-daemon): / usr / bin / clamdscan
    Παράδειγμα για το ClamWin (πολύ αργό): c: \\ Progra ~ 1 \\ ClamWin \\ bin \\ clamscan.exe AntiVirusParam= Περισσότερες παράμετροι στην γραμμή εντολής -AntiVirusParamExample= Παράδειγμα για το ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" +AntiVirusParamExample=Παράδειγμα για το ClamAv Daemon: --fdpass
    Παράδειγμα για το ClamWin: --database = "C: \\ Program Files (x86) \\ ClamWin \\ lib" ComptaSetup=Εγκατάσταση Λογιστικού module UserSetup=Ρύθμιση χρήστη MultiCurrencySetup=Ρύθμιση πολλαπλών νομισμάτων @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Δυνατότητα απενεργοποίησης στο FeatureAvailableOnlyOnStable=Το χαρακτηριστικό είναι διαθέσιμο μόνο σε επίσημες σταθερές εκδόσεις BoxesDesc=Τα γραφικά στοιχεία είναι στοιχεία που εμφανίζουν ορισμένες πληροφορίες που μπορείτε να προσθέσετε για να προσαρμόσετε ορισμένες σελίδες. Μπορείτε να επιλέξετε μεταξύ εμφάνισης του γραφικού στοιχείου ή όχι επιλέγοντας τη σελίδα προορισμού και κάνοντας κλικ στην επιλογή 'Ενεργοποίηση' ή κάνοντας κλικ στο καλάθι απορριμάτων για να το απενεργοποιήσετε. OnlyActiveElementsAreShown=Μόνο στοιχεία από ενεργοποιημένα modules προβάλλονται. -ModulesDesc=Οι ενότητες / εφαρμογές καθορίζουν ποιες λειτουργίες είναι διαθέσιμες στο λογισμικό. Ορισμένες ενότητες απαιτούν δικαιώματα που θα χορηγούνται στους χρήστες μετά την ενεργοποίηση της ενότητας. Κάντε κλικ στο πλήκτρο ενεργοποίησης / απενεργοποίησης (στο τέλος της γραμμής μονάδας) για να ενεργοποιήσετε / απενεργοποιήσετε μια ενότητα / εφαρμογή. +ModulesDesc=Οι ενότητες / εφαρμογές καθορίζουν ποιες δυνατότητες είναι διαθέσιμες στο λογισμικό. Ορισμένες λειτουργικές μονάδες απαιτούν να δοθούν δικαιώματα στους χρήστες μετά την ενεργοποίηση της λειτουργικής μονάδας. Κάντε κλικ στο κουμπί on / off %s κάθε μονάδας για να ενεργοποιήσετε ή να απενεργοποιήσετε μια ενότητα / εφαρμογή. ModulesMarketPlaceDesc=Μπορείτε να βρείτε περισσότερες ενότητες για να κατεβάσετε σε εξωτερικές ιστοσελίδες στο Internet ... ModulesDeployDesc=Εάν το επιτρέπουν τα δικαιώματα στο σύστημα αρχείων σας, μπορείτε να χρησιμοποιήσετε αυτό το εργαλείο για την ανάπτυξη εξωτερικής μονάδας. Η ενότητα θα είναι στη συνέχεια ορατή στην καρτέλα %s . ModulesMarketPlaces=Βρείτε εξωτερική εφαρμογή / ενότητες @@ -212,6 +213,7 @@ CompatibleUpTo=Συμβατό με την έκδοση %s NotCompatible=Αυτή η ενότητα δεν φαίνεται συμβατή με το Dolibarr %s (Min %s - Max %s). CompatibleAfterUpdate=Αυτή η ενότητα απαιτεί ενημέρωση του Dolibarr %s (Min %s - Max %s). SeeInMarkerPlace=Δές στην Αγορά +SeeSetupOfModule=Δείτε την ρύθμιση του module %s Updated=Ενημερωμένο Nouveauté=Καινοτομία AchatTelechargement=Αγόρασε / Μεταφόρτωσε @@ -221,6 +223,7 @@ DoliPartnersDesc=Κατάλογος εταιρειών που παρέχουν WebSiteDesc=Εξωτερικοί ιστότοποι για περισσότερες πρόσθετες (μη πυρήνες) ενότητες ... DevelopYourModuleDesc=Μερικές λύσεις για να αναπτύξεις το δικό σου μοντέλο... URL=URL +RelativeURL=Σχετική διεύθυνση URL BoxesAvailable=Διαθέσιμα Widgets BoxesActivated=Ενεργοποιημένα Widgets ActivateOn=Ενεργοποιήστε στις @@ -328,7 +331,7 @@ SetupIsReadyForUse=Η εγκατάσταση της μονάδας ολοκλη NotExistsDirect=Ο εναλλακτικός ριζικός κατάλογος δεν ορίζεται σε έναν υπάρχοντα κατάλογο.
    InfDirAlt=Από την έκδοση 3, είναι δυνατό να οριστεί ένας εναλλακτικός κατάλογος ρίζας. Αυτό σας επιτρέπει να αποθηκεύετε, σε έναν ειδικό κατάλογο, plug-ins και προσαρμοσμένα πρότυπα.
    Απλά δημιουργήστε έναν κατάλογο στη ρίζα του Dolibarr (π.χ.: custom).
    InfDirExample=
    Στη συνέχεια, δηλώστε το στο αρχείο conf.php
    $ dolibarr_main_url_root_alt = '/ προσαρμοσμένο'
    $ dolibarr_main_document_root_alt = '/ διαδρομή / του / dolibarr / htdocs / custom'
    Εάν οι γραμμές αυτές σχολιάζονται με "#", για να τις ενεργοποιήσετε, απλώς αποσυνδέστε την αφαιρώντας τον χαρακτήρα "#". -YouCanSubmitFile=You can upload the .zip file of module package from here: +YouCanSubmitFile=Μπορείτε να ανεβάσετε το αρχείο .zip του πακέτου ενότητας από εδώ: CurrentVersion=Έκδοση Dolibarr CallUpdatePage=Περιηγηθείτε στη σελίδα που ενημερώνει τη δομή και τα δεδομένα της βάσης δεδομένων: %s. LastStableVersion=Τελευταία σταθερή έκδοση @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Τα πλαίσια ελέγχου ExtrafieldCheckBoxFromList=Κουτάκια ελέγχου από το τραπέζι ExtrafieldLink=Σύνδεση με ένα αντικείμενο ComputedFormula=Υπολογισμένο πεδίο -ComputedFormulaDesc=Μπορείτε να εισάγετε εδώ μια φόρμουλα χρησιμοποιώντας άλλες ιδιότητες του αντικειμένου ή οποιαδήποτε κωδικοποίηση PHP για να πάρετε μια δυναμική υπολογισμένη τιμή. Μπορείτε να χρησιμοποιήσετε τυχόν συμβατούς με την PHP τύπους, συμπεριλαμβανομένου του "?" και ακολουθώντας το συνολικό αντικείμενο: $ db, $ conf, $ langs, $ mysoc, $ user, $ object .
    ΠΡΟΕΙΔΟΠΟΙΗΣΗ : Μπορούν να είναι διαθέσιμες μόνο κάποιες ιδιότητες του αντικειμένου $. Αν χρειάζεστε ιδιότητες που δεν έχουν φορτωθεί, απλώς μεταφέρετε το αντικείμενο στον τύπο σας όπως στο δεύτερο παράδειγμα.
    Χρησιμοποιώντας ένα υπολογισμένο πεδίο σημαίνει ότι δεν μπορείτε να εισαγάγετε στον εαυτό σας καμία τιμή από τη διεπαφή. Επίσης, αν υπάρχει σφάλμα σύνταξης, ο τύπος μπορεί να μην επιστρέψει τίποτα.

    Παράδειγμα του τύπου:
    $ object-> id <10; ($ object-> id / 2, 2): ($ object-> id + 2 * $ user-> id) * (int)

    Παράδειγμα για επαναφόρτωση αντικειμένου
    ($ reloadedobj = νέα Societe ($ db)) && ($ reloadedobj-> fetch ($ obj-> id; $ obj-> id: ($ obj-> rowid; $ obj-> rowid: $ object-> id ))> 0)); $ reloadedobj-> array_options ['options_extrafieldkey'] * $ reloadedobj-> κεφάλαιο / 5: '-1'

    Άλλο παράδειγμα της φόρμουλας που ωθεί το φορτίο του αντικειμένου και το γονικό του αντικείμενο:
    ($ reloadedobj = νέα εργασία ($ db)) && ($ reloadedobj-> fetch ($ object-> id)> 0) && ($ secondloadedobj = reloadedobj-> fk_project)> 0)); $ secondloadedobj-> ref: 'Το γονικό έργο δεν βρέθηκε' +ComputedFormulaDesc=Μπορείτε να εισαγάγετε εδώ έναν τύπο χρησιμοποιώντας άλλες ιδιότητες αντικειμένου ή οποιαδήποτε κωδικοποίηση PHP για να λάβετε μια δυναμική υπολογισμένη τιμή. Μπορείτε να χρησιμοποιήσετε οποιονδήποτε τύπο συμβατό με PHP, συμπεριλαμβανομένου του "?" τελεστής συνθηκών και ακόλουθο καθολικό αντικείμενο: $ db, $ conf, $ langs, $ mysoc, $ user, $ object .
    ΠΡΟΕΙΔΟΠΟΙΗΣΗ : Μόνο ορισμένες ιδιότητες του αντικειμένου $ ενδέχεται να είναι διαθέσιμες. Εάν χρειάζεστε ιδιότητες που δεν έχουν φορτωθεί, απλώς φέρετε στον εαυτό σας το αντικείμενο στον τύπο σας, όπως στο δεύτερο παράδειγμα.
    Η χρήση ενός υπολογισμένου πεδίου σημαίνει ότι δεν μπορείτε να εισαγάγετε στον εαυτό σας καμία τιμή από τη διεπαφή. Επίσης, εάν υπάρχει σφάλμα σύνταξης, ο τύπος ενδέχεται να μην επιστρέψει τίποτα.

    Παράδειγμα τύπου:
    $ αντικείμενο-> id < 10 ? round($object-> id / 2, 2): ($ αντικείμενο-> id + 2 * $ user-> id) * (int) substr ($ mysoc-> zip, 1, )

    Παράδειγμα επαναφόρτωσης αντικειμένου
    (($ reloadedobj = new Societe ($ db)) && ($ reloadedobj-> fetchNoCompute ($ obj-> id? $ obj-> id - $ $ > rowid: $ αντικείμενο-> id))> 0)); $ reloadedobj-> array_options ['options_extrafieldkey'] * $ reloadedobj-> capital / 5: '-1'

    Άλλο παράδειγμα φόρμουλας για την επιβολή φόρτου του αντικειμένου και του γονικού αντικειμένου:
    (($ reloadedobj ) && ($ reloadedobj-> fetchNoCompute ($ object-> id)> 0) && ($ secondloadedobj = new Project ($ db)) && ($ secondloadedobj-> fetchNoCompute ($ reloadedobj-> fk_project)> 0)); $ secondloadedobj-> ref: "Το γονικό έργο δεν βρέθηκε" Computedpersistent=Αποθηκεύστε το υπολογισμένο πεδίο ComputedpersistentDesc=Τα υπολογισμένα επιπλέον πεδία θα αποθηκευτούν στη βάση δεδομένων, ωστόσο, η τιμή θα υπολογιστεί εκ νέου μόνο όταν αλλάξει το αντικείμενο αυτού του πεδίου. Εάν το υπολογιζόμενο πεδίο εξαρτάται από άλλα αντικείμενα ή παγκόσμια δεδομένα, αυτή η τιμή μπορεί να είναι λάθος! ExtrafieldParamHelpPassword=Αφήνοντας αυτό το πεδίο κενό σημαίνει ότι αυτή η τιμή θα αποθηκευτεί χωρίς κρυπτογράφηση (το πεδίο πρέπει να κρυφτεί μόνο με το αστέρι στην οθόνη).
    Ρυθμίστε 'auto' για να χρησιμοποιήσετε τον προεπιλεγμένο κανόνα κρυπτογράφησης για να αποθηκεύσετε τον κωδικό πρόσβασης στη βάση δεδομένων (τότε η ανάγνωση της τιμής θα είναι μόνο ο κατακερματισμός, κανένας τρόπος για να ανακτήσετε την αρχική τιμή) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Αφήστε κενό για να χρησιμοποιήσ DefaultLink=Προεπιλεγμένος σύνδεσμος SetAsDefault=Ορισμός ως προεπιλογή ValueOverwrittenByUserSetup=Προσοχή, αυτή η τιμή μπορεί να αντικατασταθεί από επιλογή του χρήστη (ο κάθε χρήστης μπορεί να κάνει τον δικό του σύνδεσμο clicktodial) -ExternalModule=Εξωτερικό module - Εγκατεστημένο στον φάκελο %s +ExternalModule=Εξωτερική μονάδα +InstalledInto=Εγκαταστάθηκε στον κατάλογο %s BarcodeInitForthird-parties=Μαζικός κώδικας barcode για τρίτους BarcodeInitForProductsOrServices=Όγκος barcode init ή επαναφορά για προϊόντα ή υπηρεσίες CurrentlyNWithoutBarCode=Επί του παρόντος, έχετε %s ρεκόρ για %s %s χωρίς barcode ορίζεται. @@ -503,7 +507,7 @@ DAV_ALLOW_ECM_DIRTooltip=Ο ριζικός κατάλογος όπου όλα τ # Modules Module0Name=Χρήστες και Ομάδες Module0Desc=Διαχείριση χρηστών / εργαζομένων και ομάδων -Module1Name=Τρίτους +Module1Name=Πελάτες/Συνεργάτες Module1Desc=Διαχείριση εταιρειών και επαφών (πελάτες, προοπτικές ...) Module2Name=Εμπορικό Module2Desc=Εμπορική διαχείριση @@ -642,7 +646,7 @@ Module50000Desc=Προσφέρετε στους πελάτες μια σελίδ Module50100Name=POS SimplePOS Module50100Desc=Μονάδα σημείου πώλησης SimplePOS (απλό POS). Module50150Name=POS TakePOS -Module50150Desc=Point of Sale module TakePOS (touchscreen POS, for shops, bars or restaurants). +Module50150Desc=Ενότητα σημείου πώλησης TakePOS (οθόνη αφής POS, για καταστήματα, μπαρ ή εστιατόρια). Module50200Name=Paypal Module50200Desc=Προσφέρετε στους πελάτες μια σελίδα PayPal online πληρωμής (λογαριασμός PayPal ή πιστωτικές / χρεωστικές κάρτες). Αυτό μπορεί να χρησιμοποιηθεί για να επιτρέψει στους πελάτες σας να πραγματοποιούν ad hoc πληρωμές ή πληρωμές που σχετίζονται με ένα συγκεκριμένο αντικείμενο Dolibarr (τιμολόγιο, παραγγελία κ.λπ.) Module50300Name=Ταινία @@ -947,12 +951,12 @@ DictionaryCanton=Κράτη / Επαρχίες DictionaryRegion=Περιοχές DictionaryCountry=Χώρες DictionaryCurrency=Νόμισμα -DictionaryCivility=Τίτλος της ευγένειας +DictionaryCivility=Τιμητικοί τίτλοι DictionaryActions=Τύποι συμβάντων ημερήσιας διάταξης DictionarySocialContributions=Είδη κοινωνικών ή φορολογικών φόρων DictionaryVAT=Τιμές ΦΠΑ ή φόρου επί των πωλήσεων DictionaryRevenueStamp=Ποσό των φορολογικών σφραγίδων -DictionaryPaymentConditions=Οροι πληρωμής +DictionaryPaymentConditions=Όροι πληρωμής DictionaryPaymentModes=Τρόποι πληρωμής DictionaryTypeContact=Τύποι Επικοινωνίας/Διεύθυνση DictionaryTypeOfContainer=Ιστοσελίδα - Τύπος ιστοσελίδων / δοχείων @@ -988,6 +992,7 @@ VATIsNotUsedDesc=Από προεπιλογή, ο προτεινόμενος φό VATIsUsedExampleFR=Στη Γαλλία, σημαίνει ότι οι εταιρείες ή οι οργανώσεις έχουν ένα πραγματικό φορολογικό σύστημα (απλοποιημένο πραγματικό ή κανονικό πραγματικό). Ένα σύστημα στο οποίο δηλώνεται ο ΦΠΑ. VATIsNotUsedExampleFR=Στη Γαλλία, δηλώνονται ενώσεις που δεν έχουν δηλωθεί ως φόρος πωλήσεων ή εταιρείες, οργανώσεις ή ελεύθερα επαγγέλματα που επέλεξαν το φορολογικό σύστημα των μικροεπιχειρήσεων (Φόρος πωλήσεων σε franchise) και κατέβαλαν φόρο επί των πωλήσεων χωρίς καμία δήλωση φόρου επί των πωλήσεων. Αυτή η επιλογή θα εμφανίζει στα τιμολόγια την αναφορά "Μη εφαρμοστέος φόρος πωλήσεων - art-293B του CGI". ##### Local Taxes ##### +TypeOfSaleTaxes=Είδος φόρου επί των πωλήσεων LTRate=Τιμή LocalTax1IsNotUsed=Μην χρησιμοποιείτε δεύτερο φόρο LocalTax1IsUsedDesc=Χρησιμοποιήστε έναν δεύτερο τύπο φόρου (εκτός από τον πρώτο) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=Το ποσοστό IRPF από προεπιλογή κα LocalTax2IsNotUsedDescES=Από προεπιλογή, το προτεινόμενο IRPF είναι 0. Τέλος κανόνα. LocalTax2IsUsedExampleES=In Spain, freelancers and independent professionals who provide services and companies who have chosen the tax system of modules. LocalTax2IsNotUsedExampleES=Στην Ισπανία είναι επιχειρήσεις που δεν υπόκεινται σε φορολογικό σύστημα ενοτήτων. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Χρησιμοποιήστε μια σφραγίδα φόρου +UseRevenueStampExample=Η τιμή της φορολογικής σφραγίδας καθορίζεται από προεπιλογή στη ρύθμιση των λεξικών (%s - %s - %s) CalcLocaltax=Αναφορές για τοπικούς φόρους CalcLocaltax1=Πωλήσεις - Αγορές CalcLocaltax1Desc=Οι αναφορές τοπικών φόρων υπολογίζονται με τη διαφορά μεταξύ τοπικών πωλήσεων και τοπικών αγορών @@ -1018,6 +1026,7 @@ CalcLocaltax2=Αγορές CalcLocaltax2Desc=Οι αναφορές τοπικών φόρων είναι το σύνολο των τοπικών αγορών CalcLocaltax3=Πωλήσεις CalcLocaltax3Desc=Οι αναφορές τοπικών φόρων είναι το σύνολο των τοπικών πωλήσεων +NoLocalTaxXForThisCountry=Σύμφωνα με τη ρύθμιση των φόρων (Βλέπε %s - %s - %s), η χώρα σας δεν χρειάζεται να χρησιμοποιεί τέτοιου είδους φόρους LabelUsedByDefault=Ετικέτα που χρησιμοποιείται από προεπιλογή εάν δεν υπάρχει μετάφραση για τον κώδικα LabelOnDocuments=Ετικέτα στα έγγραφα LabelOrTranslationKey=Κλειδί ετικέτας ή μετάφρασης @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Έκθεση εξόδων για έγκριση Delays_MAIN_DELAY_HOLIDAYS=Αφήστε τα αιτήματα για έγκριση SetupDescription1=Πριν ξεκινήσετε τη χρήση του Dolibarr πρέπει να οριστούν ορισμένες αρχικές παράμετροι και να ενεργοποιηθούν / διαμορφωθούν οι ενότητες. SetupDescription2=Οι ακόλουθες δύο ενότητες είναι υποχρεωτικές (οι δύο πρώτες καταχωρίσεις στο μενού Ρύθμιση): -SetupDescription3=%s -> %s
    Βασικές παράμετροι που χρησιμοποιούνται για την προσαρμογή της προεπιλεγμένης συμπεριφοράς της εφαρμογής σας (π.χ. για λειτουργίες που σχετίζονται με τη χώρα). -SetupDescription4=%s -> %s
    Αυτό το λογισμικό είναι μια σουίτα από πολλές ενότητες / εφαρμογές, όλες λίγο πολύ ανεξάρτητες. Οι ενότητες που σχετίζονται με τις ανάγκες σας πρέπει να είναι ενεργοποιημένες και ρυθμισμένες. Τα νέα στοιχεία / επιλογές προστίθενται στα μενού με την ενεργοποίηση μιας ενότητας. +SetupDescription3=  %s -> %s

    Βασικές παράμετροι που χρησιμοποιούνται για την προσαρμογή της προεπιλεγμένης συμπεριφοράς της εφαρμογής σας (π.χ. για λειτουργίες που σχετίζονται με τη χώρα). +SetupDescription4=  %s -> %s

    Αυτό το λογισμικό είναι μια σειρά από πολλές ενότητες / εφαρμογές. Οι ενότητες που σχετίζονται με τις ανάγκες σας πρέπει να ενεργοποιηθούν και να διαμορφωθούν. Οι καταχωρήσεις μενού θα εμφανιστούν με την ενεργοποίηση αυτών των ενοτήτων. SetupDescription5=Άλλες καταχωρίσεις μενού ρυθμίσεων διαχειρίζονται προαιρετικές παραμέτρ LogEvents=Security audit events Audit=Ιστορικό εισόδου χρηστών @@ -1128,7 +1137,7 @@ LogEventDesc=Ενεργοποιήστε την καταγραφή για συγ AreaForAdminOnly=Οι παράμετροι εγκατάστασης μπορούν να οριστούν μόνο από χρήστες διαχειριστή . SystemInfoDesc=Οι πληροφορίες συστήματος είναι διάφορες τεχνικές πληροφορίες που λαμβάνετε μόνο στη λειτουργία ανάγνωσης και είναι ορατές μόνο για τους διαχειριστές. SystemAreaForAdminOnly=Αυτή η περιοχή είναι διαθέσιμη μόνο σε χρήστες διαχειριστή. Τα δικαιώματα χρήστη Dolibarr δεν μπορούν να αλλάξουν αυτόν τον περιορισμό. -CompanyFundationDesc=Επεξεργαστείτε τις πληροφορίες της εταιρείας / εταιρείας. Κάντε κλικ στο κουμπί "%s" στο κάτω μέρος της σελίδας. +CompanyFundationDesc=Επεξεργαστείτε τις πληροφορίες της εταιρείας / του οργανισμού σας. Κάντε κλικ στο κουμπί "%s" στο κάτω μέρος της σελίδας όταν τελειώσετε. AccountantDesc=Εάν έχετε έναν εξωτερικό λογιστή / λογιστή, μπορείτε να επεξεργαστείτε εδώ τις πληροφορίες του. AccountantFileNumber=Λογιστικό κώδικα DisplayDesc=Οι παράμετροι που επηρεάζουν την εμφάνιση και συμπεριφορά του Dolibarr μπορούν να τροποποιηθούν εδώ. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Κανόνες δημιουργίας και επικ DisableForgetPasswordLinkOnLogonPage=Να μην εμφανίζεται ο σύνδεσμος "Ξεχασμένος κωδικός πρόσβασης" στη σελίδα Σύνδεση UsersSetup=Ρυθμίσεις αρθρώματος χρηστών UserMailRequired=Απαιτείται ηλεκτρονικό ταχυδρομείο για τη δημιουργία νέου χρήστη +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Πρότυπα εγγράφων για έγγραφα που δημιουργούνται από εγγραφή χρήστη +GroupsDocModules=Πρότυπα εγγράφων για έγγραφα που δημιουργούνται από εγγραφή ομάδας ##### HRM setup ##### HRMSetup=Ρύθμιση μονάδας HRM ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Μοντέλα εγγράφων τιμολογίου BillsPDFModulesAccordindToInvoiceType=Τα μοντέλα εγγράφων τιμολογίου σύμφωνα με τον τύπο τιμολογίου PaymentsPDFModules=Μοντέλα εγγράφων πληρωμής ForceInvoiceDate=Μετάβαση ημερομηνίας ισχύος τιμολογίου σε ημερομηνία επικύρωσης -SuggestedPaymentModesIfNotDefinedInInvoice=Προτεινόμενη μέθοδος πληρωμής στο τιμολόγιο από προεπιλογή, εάν δεν έχει οριστεί για τιμολόγιο +SuggestedPaymentModesIfNotDefinedInInvoice=Προτεινόμενη μέθοδος πληρωμής στο τιμολόγιο από προεπιλογή, εάν δεν ορίζεται στο τιμολόγιο SuggestPaymentByRIBOnAccount=Προτείνετε την πληρωμή μέσω απόσυρσης στο λογαριασμό SuggestPaymentByChequeToAddress=Προτείνετε πληρωμή με επιταγή προς FreeLegalTextOnInvoices=Ελεύθερο κείμενο στα τιμολόγια @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Ρυθμίσεις πληρωμών προμηθευτή PropalSetup=Ρύθμιση ενότητας εμπορικών προτάσεων ProposalsNumberingModules=Μοντέλα αριθμοδότησης εμπορικών προτάσεων ProposalsPDFModules=Μοντέλα εγγράφων εμπορικών προτάσεων -SuggestedPaymentModesIfNotDefinedInProposal=Προτεινόμενη μέθοδος πληρωμών σχετικά με πρόταση από προεπιλογή, εάν δεν ορίζεται για πρόταση +SuggestedPaymentModesIfNotDefinedInProposal=Προτεινόμενος τρόπος πληρωμής στην πρόταση από προεπιλογή, εάν δεν ορίζεται στην πρόταση FreeLegalTextOnProposal=Ελεύθερο κείμενο στις προσφορές WatermarkOnDraftProposal=Υδατογράφημα σε προσχέδια εμπορικών προτάσεων (κανένα εάν δεν είναι κενό) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ρωτήστε για τον τραπεζικό λογαριασμό προορισμού της προσφοράς @@ -1322,6 +1334,7 @@ WAREHOUSE_ASK_WAREHOUSE_DURING_ORDER=Ζητήστε από την αποθήκη ##### Suppliers Orders ##### BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_ORDER=Ζητήστε τον προορισμό του τραπεζικού λογαριασμού της εντολής αγοράς ##### Orders ##### +SuggestedPaymentModesIfNotDefinedInOrder=Προτεινόμενη μέθοδος πληρωμής για παραγγελία πώλησης από προεπιλογή, εάν δεν καθορίζεται στην παραγγελία OrdersSetup=Ρύθμιση διαχείρισης παραγγελιών πωλήσεων OrdersNumberingModules=Μοντέλα αρίθμησης παραγγελιών OrdersModelModule=Παραγγείλετε μοντέλα εγγράφων @@ -1686,9 +1699,9 @@ CashDeskIdWareHouse=Αναγκαστικός περιορισμός αποθήκ StockDecreaseForPointOfSaleDisabled=Η μείωση του αποθέματος από το σημείο πώλησης είναι απενεργοποιημένη StockDecreaseForPointOfSaleDisabledbyBatch=Η μείωση του αποθέματος στο POS δεν είναι συμβατή με τη διαχείριση σειριακής / παρτίδας μονάδας (αυτή τη στιγμή είναι ενεργή), επομένως η μείωση του αποθέματος είναι απενεργοποιημένη. CashDeskYouDidNotDisableStockDecease=Δεν απενεργοποιήσατε τη μείωση των μετοχών όταν πραγματοποιείτε μια πώληση από το σημείο πώλησης. Ως εκ τούτου απαιτείται αποθήκη. -CashDeskForceDecreaseStockLabel=Stock decrease for batch products was forced. -CashDeskForceDecreaseStockDesc=Decrease first by the oldest eatby and sellby dates. -CashDeskReaderKeyCodeForEnter=Key code for "Enter" defined in barcode reader (Example: 13) +CashDeskForceDecreaseStockLabel=Αναγκάστηκε η μείωση των αποθεμάτων για προϊόντα παρτίδας. +CashDeskForceDecreaseStockDesc=Μειώστε πρώτα από τις παλαιότερες ημερομηνίες φαγητού και πώλησης. +CashDeskReaderKeyCodeForEnter=Κωδικός κλειδιού για το "Enter" που ορίζεται στον αναγνώστη γραμμωτού κώδικα (Παράδειγμα: 13) ##### Bookmark ##### BookmarkSetup=Bookmark module setup BookmarkDesc=Αυτή η ενότητα σάς επιτρέπει να διαχειρίζεστε σελιδοδείκτες. Μπορείτε επίσης να προσθέσετε συντομεύσεις σε όλες τις σελίδες Dolibarr ή σε εξωτερικούς ιστότοπους στο αριστερό σας μενού. @@ -1720,7 +1733,7 @@ MultiCompanySetup=Multi-company module setup ##### Suppliers ##### SuppliersSetup=Ρύθμιση μονάδας προμηθευτή SuppliersCommandModel=Πλήρες πρότυπο της εντολής αγοράς -SuppliersCommandModelMuscadet=Πλήρες πρότυπο της εντολής αγοράς +SuppliersCommandModelMuscadet=Πλήρες πρότυπο της εντολής αγοράς (παλιά εφαρμογή του προτύπου cornas) SuppliersInvoiceModel=Πλήρες πρότυπο τιμολογίου προμηθευτή SuppliersInvoiceNumberingModel=Αριθμητικά μοντέλα τιμολογίων προμηθευτών IfSetToYesDontForgetPermission=Αν είναι ρυθμισμένη σε μη μηδενική τιμή, μην ξεχάσετε να δώσετε δικαιώματα σε ομάδες ή χρήστες που επιτρέπονται για τη δεύτερη έγκριση @@ -1748,7 +1761,7 @@ CloseFiscalYear=Κλείσιμο λογιστικής περιόδου DeleteFiscalYear=Διαγραφή περιόδου λογιστικής ConfirmDeleteFiscalYear=Είστε σίγουροι ότι θα διαγράψετε αυτήν τη λογιστική περίοδο; ShowFiscalYear=Εμφάνιση λογιστικής περιόδου -AlwaysEditable=Μπορεί πάντα να επεξεργαστή +AlwaysEditable=Μπορεί πάντα να επεξεργαστεί MAIN_APPLICATION_TITLE=Αναγκαστικό ορατό όνομα της εφαρμογής (προειδοποίηση: η ρύθμιση του δικού σας ονόματος μπορεί να δημιουργήσει πρόβλημα στη λειτουργία Αυτόματης συμπλήρωσης σύνδεσης όταν χρησιμοποιείτε το DoliDroid εφαρμογή για κινητά) NbMajMin=Ελάχιστος αριθμός κεφαλαίων χαρακτήρων NbNumMin=Ελάχιστος αριθμός αριθμητικών χαρακτήρων @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Απόκρυψη εικόνων στο μενού "Κ LeftMenuBackgroundColor=Χρώμα φόντου για το αριστερό μενού BackgroundTableTitleColor=Χρώμα φόντου για τη γραμμή επικεφαλίδας του πίνακα BackgroundTableTitleTextColor=Χρώμα κειμένου για τη γραμμή τίτλου πίνακα +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Χρώμα φόντου για τις περιττές (μονές) γραμμές του πίνακα BackgroundTableLineEvenColor=Χρώμα φόντου για τις άρτιες (ζυγές) γραμμές του πίνακα MinimumNoticePeriod=Ελάχιστη περίοδος προειδοποίησης (Η αίτησή σας πρέπει να γίνει πριν από αυτή την καθυστέρηση) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID= \nΑναφορά Dolibarr που δεν βρίσκετα FormatZip=Zip MainMenuCode=Κωδικός εισόδου μενού (mainmenu) ECMAutoTree=Εμφάνιση αυτόματης δομής ECM -OperationParamDesc=Ορίστε τιμές που θα χρησιμοποιηθούν για δράση ή πώς να εξάγετε τιμές. Για παράδειγμα:
    objproperty1 = SET: abc
    objproperty1 = SET: τιμή με αντικατάσταση του __objproperty1__
    objproperty3 = SETIFEMPTY: abc
    objproperty4 = EXTRACT: HEADER: X-Myheaderkey. * [^ \\ s] + (. *)
    options_myextrafield = ΕΚΤΟΣ: ΘΕΜΑ: ([^ \\ s] *)
    object.objproperty5 = ΕΚΤΟΣ: ΣΩΜΑ: Το όνομα της εταιρείας μου είναι \\ s ([^ \\ s] *)

    Χρησιμοποίησε ένα ; char ως διαχωριστικό για να εξαγάγετε ή να ορίσετε πολλές ιδιότητες. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Ωρες λειτουργίας OpeningHoursDesc=Πληκτρολογήστε εδώ τις κανονικές ώρες λειτουργίας της εταιρείας σας. ResourceSetup=Διαμόρφωση της ενότητας πόρων @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Προειδοποίηση, οι υψη ModuleActivated=Η ενότητα %s ενεργοποιείται και επιβραδύνει τη διεπαφή EXPORTS_SHARE_MODELS=Τα μοντέλα εξαγωγής είναι κοινά με όλους ExportSetup=Ρύθμιση εξαγωγής της ενότητας +ImportSetup=Ρύθμιση εισαγωγής λειτουργικής μονάδας InstanceUniqueID=Μοναδικό αναγνωριστικό της παρουσίας SmallerThan=Μικρότερη από LargerThan=Μεγαλύτερο από @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Δημιουργήστε ένα ανώνυμο Ping '+1 FeatureNotAvailableWithReceptionModule=Η λειτουργία δεν είναι διαθέσιμη όταν είναι ενεργοποιημένη η λειτουργία Υποδοχή EmailTemplate=Πρότυπο email EMailsWillHaveMessageID=Τα μηνύματα ηλεκτρονικού ταχυδρομείου θα έχουν μια ετικέτα "Αναφορές" που ταιριάζουν με αυτή τη σύνταξη -PDF_USE_ALSO_LANGUAGE_CODE=Εάν θέλετε να έχετε κάποιο τίτλο κειμένου σε PDF που έχετε αντιγράψει σε 2 διαφορετικές γλώσσες στο ίδιο παραγόμενο PDF, πρέπει να ορίσετε εδώ αυτή τη δεύτερη γλώσσα, έτσι ώστε το παραγόμενο PDF να περιέχει 2 διαφορετικές γλώσσες στην ίδια σελίδα, αυτή που επιλέχθηκε κατά τη δημιουργία PDF και αυτή (μόνο μερικά πρότυπα PDF υποστηρίζουν αυτό). Κρατήστε κενό για 1 γλώσσα ανά PDF. -FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +PDF_USE_ALSO_LANGUAGE_CODE=Εάν θέλετε να αντιγράψετε ορισμένα κείμενα στο PDF σας σε 2 διαφορετικές γλώσσες στο ίδιο δημιουργημένο PDF, πρέπει να ορίσετε εδώ αυτήν τη δεύτερη γλώσσα, ώστε το παραγόμενο PDF να περιέχει 2 διαφορετικές γλώσσες στην ίδια σελίδα, αυτή που επιλέγεται κατά τη δημιουργία PDF και αυτή ( μόνο λίγα πρότυπα PDF το υποστηρίζουν αυτό). Κρατήστε κενό για 1 γλώσσα ανά PDF. +FafaIconSocialNetworksDesc=Εισαγάγετε εδώ τον κωδικό ενός εικονιδίου FontAwesome. Εάν δεν γνωρίζετε τι είναι το FontAwesome, μπορείτε να χρησιμοποιήσετε τη γενική τιμή fa-address-book. +RssNote=Σημείωση: Κάθε ορισμός τροφοδοσίας RSS παρέχει ένα widget που πρέπει να ενεργοποιήσετε για να το έχετε διαθέσιμο στον πίνακα ελέγχου +JumpToBoxes=Μετάβαση στη ρύθμιση -> Widgets +MeasuringUnitTypeDesc=Χρησιμοποιήστε εδώ μια τιμή όπως "μέγεθος", "επιφάνεια", "όγκος", "βάρος", "χρόνος" +MeasuringScaleDesc=Η κλίμακα είναι ο αριθμός των θέσεων που πρέπει να μετακινήσετε το δεκαδικό μέρος ώστε να ταιριάζει με την προεπιλεγμένη μονάδα αναφοράς. Για τον τύπο μονάδας "time", είναι ο αριθμός των δευτερολέπτων. Οι τιμές μεταξύ 80 και 99 είναι δεσμευμένες τιμές. diff --git a/htdocs/langs/el_GR/bills.lang b/htdocs/langs/el_GR/bills.lang index 1262a205dea..6891d2a860d 100644 --- a/htdocs/langs/el_GR/bills.lang +++ b/htdocs/langs/el_GR/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Τιμολόγια προμηθευτών SupplierBill=Τιμολόγιο προμηθευτή SupplierBills=Τιμολόγια Προμηθευτή Payment=Πληρωμή -PaymentBack=Payment back -CustomerInvoicePaymentBack=Payment back +PaymentBack=Refund +CustomerInvoicePaymentBack=Refund Payments=Πληρωμές PaymentsBack=Επιστροφές χρημάτων paymentInInvoiceCurrency=in invoices currency PaidBack=Paid back DeletePayment=Διαγραφή Πληρωμής ConfirmDeletePayment=Είστε σίγουροι ότι θέλετε να διαγράψετε την πληρωμή; -ConfirmConvertToReduc=Θέλετε να μετατρέψετε αυτό το %s σε απόλυτη έκπτωση; +ConfirmConvertToReduc=Θέλετε να μετατρέψετε αυτό το %s σε διαθέσιμη πίστωση; ConfirmConvertToReduc2=Το ποσό θα αποθηκευτεί σε όλες τις εκπτώσεις και θα μπορούσε να χρησιμοποιηθεί ως έκπτωση για ένα τρέχον ή μελλοντικό τιμολόγιο για αυτόν τον πελάτη. -ConfirmConvertToReducSupplier=Θέλετε να μετατρέψετε αυτό το %s σε απόλυτη έκπτωση; +ConfirmConvertToReducSupplier=Θέλετε να μετατρέψετε αυτό το %s σε διαθέσιμη πίστωση; ConfirmConvertToReducSupplier2=Το ποσό θα αποθηκευτεί σε όλες τις εκπτώσεις και θα μπορούσε να χρησιμοποιηθεί ως έκπτωση για ένα τρέχον ή μελλοντικό τιμολόγιο για αυτόν τον προμηθευτή. SupplierPayments=Πληρωμές προμηθευτών ReceivedPayments=Ληφθείσες Πληρωμές @@ -88,8 +88,8 @@ CodePaymentMode=Τύπος πληρωμής (κωδικός) LabelPaymentMode=Είδος πληρωμής (ετικέτα) PaymentModeShort=Τρόπος πληρωμής PaymentTerm=Ορος πληρωμής -PaymentConditions=Οροι πληρωμής -PaymentConditionsShort=Οροι πληρωμής +PaymentConditions=Όροι πληρωμής +PaymentConditionsShort=Όροι πληρωμής PaymentAmount=Σύνολο πληρωμής PaymentHigherThanReminderToPay=Η πληρωμή είναι μεγαλύτερη από το υπόλοιπο HelpPaymentHigherThanReminderToPay=Προσοχή, το ποσό πληρωμής ενός ή περισσότερων λογαριασμών είναι μεγαλύτερο από το οφειλόμενο ποσό.
    Επεξεργαστείτε την καταχώρησή σας, διαφορετικά επιβεβαιώστε και σκεφτείτε να δημιουργήσετε ένα πιστωτικό σημείωμα για το ποσό που λάβατε για κάθε επιπλέον χρεωστικό τιμολόγιο. @@ -209,17 +209,13 @@ NumberOfBillsByMonth=Αριθμός τιμολογίων ανά μήνα AmountOfBills=Ποσό τιμολογίων AmountOfBillsHT=Ποσό τιμολογίων (καθαρό από φόρο) AmountOfBillsByMonthHT=Ποσό των τιμολογίων ανά μήνα (μετά από φόρους) -ShowSocialContribution=Εμφάνιση κοινωνικών εισφορών / Φορολογικά -ShowBill=Εμφάνιση τιμολογίου -ShowInvoice=Εμφάνιση τιμολογίου -ShowInvoiceReplace=Εμφάνιση τιμολογίου αντικατάστασης -ShowInvoiceAvoir=Εμφάνιση πιστωτικού τιμολογίου -ShowInvoiceDeposit=Εμφάνιση τιμολογίου κατάθεσης -ShowInvoiceSituation=Εμφάνιση κατάστασης τιμολογίου UseSituationInvoices=Να επιτρέπεται το τιμολόγιο κατάστασης UseSituationInvoicesCreditNote=Επιτρέψτε το πιστωτικό σημείωμα τιμολογίου κατάστασης Retainedwarranty=Διατηρημένη εγγύηση +AllowedInvoiceForRetainedWarranty=Διατηρούμενη εγγύηση που μπορεί να χρησιμοποιηθεί στους ακόλουθους τύπους τιμολογίων RetainedwarrantyDefaultPercent=Διατηρημένο ποσοστό εξόφλησης εγγύησης +RetainedwarrantyOnlyForSituation=Διαθέστε την "διατηρούμενη εγγύηση" διαθέσιμη μόνο για τιμολόγια κατάστασης +RetainedwarrantyOnlyForSituationFinal=Σε τιμολόγια κατάστασης, η παγκόσμια έκπτωση "διατηρούμενη εγγύηση" εφαρμόζεται μόνο στην τελική κατάσταση ToPayOn=Να πληρώσετε για %s toPayOn=να πληρώσει για %s RetainedWarranty=Διατηρημένη εγγύηση @@ -230,7 +226,6 @@ setretainedwarranty=Ορίστε την παραληφθείσα εγγύηση setretainedwarrantyDateLimit=Ορίστε το όριο ημερομηνίας εγγύησης που διατηρήθηκε RetainedWarrantyDateLimit=Διατηρημένο όριο ημερομηνίας εγγύησης RetainedWarrantyNeed100Percent=Το τιμολόγιο κατάστασης πρέπει να είναι στο 100%% για να εμφανίζεται σε PDF -ShowPayment=Εμφάνιση πληρωμής AlreadyPaid=Ήδη πληρωμένο AlreadyPaidBack=Already paid back AlreadyPaidNoCreditNotesNoDeposits=Ήδη πληρωμένο (χωρίς πιστώσεις ή καταθέσεις) @@ -259,7 +254,7 @@ SendReminderBillByMail=Αποστολή υπενθύμισης με email RelatedCommercialProposals=Σχετικές προσφορές RelatedRecurringCustomerInvoices=Related recurring customer invoices MenuToValid=Προς επικύρωση -DateMaxPayment=Πληρωμή λόγω πληρωμής +DateMaxPayment=Προθεσμία Πληρωμής DateInvoice=Ημερομηνία τιμολογίου DatePointOfTax=Point of tax NoInvoice=Δεν υπάρχει τιμολόγιο @@ -285,9 +280,9 @@ ExportDataset_invoice_1=Τιμολόγια πελατών και λεπτομέ ExportDataset_invoice_2=Πληρωμές και τιμολόγια πελατών ProformaBill=Proforma Bill: Reduction=Μείωση -ReductionShort=Δίσκος. +ReductionShort=Έκπτωση Reductions=Μειώσεις -ReductionsShort=Δίσκος. +ReductionsShort=Έκπτωση Discounts=Εκπτώσεις AddDiscount=Δημιουργία απόλυτη έκπτωση AddRelativeDiscount=Δημιουργία σχετική έκπτωση @@ -390,6 +385,7 @@ GeneratedFromTemplate=Δημιουργήθηκε από το τιμολόγιο WarningInvoiceDateInFuture=Warning, the invoice date is higher than current date WarningInvoiceDateTooFarInFuture=Warning, the invoice date is too far from current date ViewAvailableGlobalDiscounts=Δείτε τις διαθέσιμες εκπτώσεις +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Κατάσταση PaymentConditionShortRECEP=Due Upon Receipt @@ -509,7 +505,7 @@ ToMakePayment=Πληρωμή ToMakePaymentBack=Pay back ListOfYourUnpaidInvoices=Κατάλογος των απλήρωτων τιμολογίων NoteListOfYourUnpaidInvoices=Σημείωση: Αυτή η λίστα περιέχει μόνο τα τιμολόγια για λογαριασμό Πελ./Προμ. που συνδέονται με τον εκπρόσωπο πώλησης. -RevenueStamp=Revenue stamp +RevenueStamp=Φορόσημο YouMustCreateInvoiceFromThird=Αυτή η επιλογή είναι διαθέσιμη μόνο όταν δημιουργείτε τιμολόγιο από την καρτέλα "Πελάτης" τρίτου μέρους YouMustCreateInvoiceFromSupplierThird=Αυτή η επιλογή είναι διαθέσιμη μόνο κατά τη δημιουργία τιμολογίου από την καρτέλα "Προμηθευτής" τρίτου μέρους YouMustCreateStandardInvoiceFirstDesc=You have to create a standard invoice first and convert it to "template" to create a new template invoice @@ -575,3 +571,4 @@ AutoFillDateTo=Ορίστε την ημερομηνία λήξης της γρα AutoFillDateToShort=Ορίστε την ημερομηνία λήξης MaxNumberOfGenerationReached=Μέγιστος αριθμός γονιδίων. επιτευχθεί BILL_DELETEInDolibarr=Το τιμολόγιο διαγράφηκε +BILL_SUPPLIER_DELETEInDolibarr=Το τιμολόγιο προμηθευτή διαγράφηκε diff --git a/htdocs/langs/el_GR/blockedlog.lang b/htdocs/langs/el_GR/blockedlog.lang index 5bf526aa5be..8172e83ec81 100644 --- a/htdocs/langs/el_GR/blockedlog.lang +++ b/htdocs/langs/el_GR/blockedlog.lang @@ -1,54 +1,54 @@ -BlockedLog=Unalterable Logs +BlockedLog=Μη τροποποιήσιμα αρχεία καταγραφής 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). -CompanyInitialKey=Company initial key (hash of genesis block) -BrowseBlockedLog=Unalterable logs -ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) -ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) -DownloadBlockChain=Download fingerprints -KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this re after it was recorded, or has erased the previous archived record (check that line with previous # exists). -OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. -OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. -AddedByAuthority=Stored into remote authority -NotAddedByAuthorityYet=Not yet stored into remote authority +BlockedLogDesc=Αυτή η ενότητα παρακολουθεί ορισμένα γεγονότα σε ένα μη αναστρέψιμο αρχείο καταγραφής (το οποίο δεν μπορείτε να τροποποιήσετε αφού καταγραφεί) σε μια αλυσίδα μπλοκ, σε πραγματικό χρόνο. Αυτή η ενότητα παρέχει συμβατότητα με τις απαιτήσεις των νόμων ορισμένων χωρών (όπως η Γαλλία με το νόμο Finance 2016 - Norme NF525). +Fingerprints=Αρχειοθετημένα συμβάντα και δακτυλικά αποτυπώματα +FingerprintsDesc=Αυτό είναι το εργαλείο για να περιηγηθείτε ή να εξαγάγετε τα μη αναστρέψιμα αρχεία καταγραφής. Ανεπιθύμητα αρχεία καταγραφής δημιουργούνται και αρχειοθετούνται τοπικά σε ένα ειδικό τραπέζι, σε πραγματικό χρόνο, όταν καταγράφετε ένα επιχειρηματικό γεγονός. Μπορείτε να χρησιμοποιήσετε αυτό το εργαλείο για να εξαγάγετε αυτό το αρχείο και να το αποθηκεύσετε σε εξωτερική υποστήριξη (ορισμένες χώρες, όπως η Γαλλία, ζητήστε να το κάνετε κάθε χρόνο). Σημειώστε ότι δεν υπάρχει καμία δυνατότητα για να καθαρίσετε αυτό το αρχείο καταγραφής και κάθε αλλαγή που προσπάθησε να γίνει απευθείας σε αυτό το αρχείο καταγραφής (π.χ. από έναν χάκερ) θα αναφέρεται με μη έγκυρο δακτυλικό αποτύπωμα. Εάν θέλετε πραγματικά να καθαρίσετε αυτόν τον πίνακα επειδή χρησιμοποιήσατε την εφαρμογή σας για δοκιμαστικό σκοπό και θέλετε να καθαρίσετε τα δεδομένα σας για να ξεκινήσετε την παραγωγή σας, μπορείτε να ζητήσετε από τον μεταπωλητή ή τον ολοκληρωτή σας να επαναφέρει τη βάση δεδομένων σας (όλα τα δεδομένα θα καταργηθούν). +CompanyInitialKey=Το αρχικό κλειδί της επιχείρησης (μπλοκ του μπλοκ γενεσίας) +BrowseBlockedLog=Μη τροποποιήσιμα κορμούς +ShowAllFingerPrintsMightBeTooLong=Εμφάνιση όλων των αρχειοθετημένων αρχείων καταγραφής (μπορεί να είναι μακρά) +ShowAllFingerPrintsErrorsMightBeTooLong=Εμφάνιση όλων των μη έγκυρων αρχείων καταγραφής αρχείων (μπορεί να είναι μεγάλο) +DownloadBlockChain=Κατεβάστε τα δακτυλικά αποτυπώματα +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). +OkCheckFingerprintValidity=Η αρχειοθετημένη εγγραφή είναι έγκυρη. Τα δεδομένα αυτής της γραμμής δεν τροποποιήθηκαν και η καταχώριση ακολουθεί την προηγούμενη. +OkCheckFingerprintValidityButChainIsKo=Το αρχειοθετημένο ημερολόγιο φαίνεται έγκυρο σε σύγκριση με το προηγούμενο, αλλά η αλυσίδα είχε καταστραφεί προηγουμένως. +AddedByAuthority=Αποθηκεύεται σε απομακρυσμένη εξουσία +NotAddedByAuthorityYet=Δεν έχει ακόμη αποθηκευτεί σε απομακρυσμένη αρχή ShowDetails=Εμφάνιση αποθηκευμένων λεπτομεριών -logPAYMENT_VARIOUS_CREATE=Payment (not assigned to an invoice) created -logPAYMENT_VARIOUS_MODIFY=Payment (not assigned to an invoice) modified -logPAYMENT_VARIOUS_DELETE=Payment (not assigned to an invoice) logical deletion -logPAYMENT_ADD_TO_BANK=Payment added to bank -logPAYMENT_CUSTOMER_CREATE=Customer payment created -logPAYMENT_CUSTOMER_DELETE=Customer payment logical deletion -logDONATION_PAYMENT_CREATE=Donation payment created -logDONATION_PAYMENT_DELETE=Donation payment logical deletion -logBILL_PAYED=Customer invoice paid -logBILL_UNPAYED=Customer invoice set unpaid +logPAYMENT_VARIOUS_CREATE=Η πληρωμή (δεν έχει εκχωρηθεί σε τιμολόγιο) δημιουργήθηκε +logPAYMENT_VARIOUS_MODIFY=Η πληρωμή (δεν έχει εκχωρηθεί σε τιμολόγιο) τροποποιήθηκε +logPAYMENT_VARIOUS_DELETE=Πληρωμή (δεν έχει εκχωρηθεί σε τιμολόγιο) λογική διαγραφή +logPAYMENT_ADD_TO_BANK=Η πληρωμή προστέθηκε στην τράπεζα +logPAYMENT_CUSTOMER_CREATE=Η πληρωμή του πελάτη δημιουργήθηκε +logPAYMENT_CUSTOMER_DELETE=Λογική διαγραφή πληρωμής πελατών +logDONATION_PAYMENT_CREATE=Η πληρωμή δωρεάς δημιουργήθηκε +logDONATION_PAYMENT_DELETE=Δωρεά λογική διαγραφή πληρωμής +logBILL_PAYED=Πληρωμή τιμολογίου πελάτη +logBILL_UNPAYED=Το τιμολόγιο πελατών έχει οριστεί ως μη πληρωμένο logBILL_VALIDATE=Το τιμολόγιο πελάτη επικυρώθηκε -logBILL_SENTBYMAIL=Customer invoice send by mail -logBILL_DELETE=Customer invoice logically deleted -logMODULE_RESET=Module BlockedLog was disabled -logMODULE_SET=Module BlockedLog was enabled +logBILL_SENTBYMAIL=Τα τιμολόγια πελατών αποστέλλονται ταχυδρομικώς +logBILL_DELETE=Το τιμολόγιο πελατών διαγράφηκε λογικά +logMODULE_RESET=Η μονάδα BlockedLog απενεργοποιήθηκε +logMODULE_SET=Η μονάδα BlockedLog ήταν ενεργοποιημένη logDON_VALIDATE=Επικύρωση δωρεάς logDON_MODIFY=Μετατροπή δωρεάς -logDON_DELETE=Donation logical deletion -logMEMBER_SUBSCRIPTION_CREATE=Member subscription created -logMEMBER_SUBSCRIPTION_MODIFY=Member subscription modified -logMEMBER_SUBSCRIPTION_DELETE=Member subscription logical deletion -logCASHCONTROL_VALIDATE=Cash fence recording -BlockedLogBillDownload=Customer invoice download -BlockedLogBillPreview=Customer invoice preview -BlockedlogInfoDialog=Log Details -ListOfTrackedEvents=List of tracked events -Fingerprint=Fingerprint -DownloadLogCSV=Export archived logs (CSV) -logDOC_PREVIEW=Preview of a validated document in order to print or download -logDOC_DOWNLOAD=Download of a validated document in order to print or send -DataOfArchivedEvent=Full datas of archived event -ImpossibleToReloadObject=Original object (type %s, id %s) not linked (see 'Full datas' column to get unalterable saved data) -BlockedLogAreRequiredByYourCountryLegislation=Unalterable Logs module may be required by the legislation of your country. Disabling this module may render any future transactions invalid with respect to the law and the use of legal software as they can not be validated by a tax audit. -BlockedLogActivatedBecauseRequiredByYourCountryLegislation=Unalterable Logs module was activated because of the legislation of your country. Disabling this module may render any future transactions invalid with respect to the law and the use of legal software as they cannot be validated by a tax audit. -BlockedLogDisableNotAllowedForCountry=List of countries where usage of this module is mandatory (just to prevent to disable the module by error, if your country is in this list, disable of module is not possible without editing this list first. Note also that enabling/disabling this module will keep a track into the unalterable log). -OnlyNonValid=Non-valid -TooManyRecordToScanRestrictFilters=Too many records to scan/analyze. Please restrict list with more restrictive filters. -RestrictYearToExport=Restrict month / year to export +logDON_DELETE=Δωρεά λογική διαγραφή +logMEMBER_SUBSCRIPTION_CREATE=Δημιουργία συνδρομής μέλους +logMEMBER_SUBSCRIPTION_MODIFY=Η συνδρομή μέλους τροποποιήθηκε +logMEMBER_SUBSCRIPTION_DELETE=Συνδρομή λογικής διαγραφής μέλους +logCASHCONTROL_VALIDATE=Εγγραφή φράχτη μετρητών +BlockedLogBillDownload=Λήψη τιμολογίου πελατών +BlockedLogBillPreview=Προβολή τιμολογίου πελατών +BlockedlogInfoDialog=Στοιχεία καταγραφής +ListOfTrackedEvents=Λίστα συμβάντων που παρακολουθούνται +Fingerprint=Δακτυλικό αποτύπωμα +DownloadLogCSV=Εξαγωγή αρχειοθετημένων αρχείων καταγραφής (CSV) +logDOC_PREVIEW=Προεπισκόπηση ενός επικυρωμένου εγγράφου για εκτύπωση ή λήψη +logDOC_DOWNLOAD=Λήψη επικυρωμένου εγγράφου για εκτύπωση ή αποστολή +DataOfArchivedEvent=Πλήρη δεδομένα αρχειοθετημένου γεγονότος +ImpossibleToReloadObject=Το αρχικό αντικείμενο (πληκτρολογήστε %s, id %s) δεν είναι συνδεδεμένο (ανατρέξτε στη στήλη "Πλήρες αρχείο δεδομένων" για να λάβετε αναλλοίωτα αποθηκευμένα δεδομένα) +BlockedLogAreRequiredByYourCountryLegislation=Μπορείτε να ζητήσετε από τη νομοθεσία της χώρας σας τη λειτουργική μονάδα Unalterable Logs. Η απενεργοποίηση αυτής της ενότητας μπορεί να καταστήσει τυχόν μελλοντικές συναλλαγές άκυρες σε σχέση με το νόμο και τη χρήση νόμιμου λογισμικού, καθώς δεν μπορούν να επικυρωθούν από φορολογικό έλεγχο. +BlockedLogActivatedBecauseRequiredByYourCountryLegislation=Το μη τροποποιημένο τμήμα καταγραφής ενεργοποιήθηκε λόγω της νομοθεσίας της χώρας σας. Η απενεργοποίηση αυτής της ενότητας μπορεί να καταστήσει τυχόν μελλοντικές συναλλαγές άκυρες σε σχέση με το νόμο και τη χρήση νόμιμου λογισμικού, καθώς δεν μπορούν να επικυρωθούν από φορολογικό έλεγχο. +BlockedLogDisableNotAllowedForCountry=Κατάλογος χωρών όπου η χρήση αυτής της λειτουργικής μονάδας είναι υποχρεωτική (απλά για να αποφευχθεί η απενεργοποίηση της μονάδας από λάθος, εάν η χώρα σας βρίσκεται σε αυτή τη λίστα, δεν είναι δυνατή η απενεργοποίηση της ενότητας χωρίς την πρώτη επεξεργασία αυτής της λίστας. κρατήστε ένα κομμάτι στο μη αναστρέψιμο αρχείο καταγραφής). +OnlyNonValid=Μη έγκυρη +TooManyRecordToScanRestrictFilters=Πάρα πολλές εγγραφές για σάρωση / ανάλυση. Περιορίστε τη λίστα με πιο περιοριστικά φίλτρα. +RestrictYearToExport=Περιορίστε μήνα / έτος για εξαγωγή diff --git a/htdocs/langs/el_GR/cashdesk.lang b/htdocs/langs/el_GR/cashdesk.lang index 3f41980eefb..3dc213913e9 100644 --- a/htdocs/langs/el_GR/cashdesk.lang +++ b/htdocs/langs/el_GR/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Προσθέστε αυτό το προϊόν RestartSelling=Επιστρέψτε στην πώληση SellFinished=Ολοκληρωμένη πώληση PrintTicket=Εκτύπωση Απόδειξης +SendTicket=Send ticket NoProductFound=Το προϊόν δεν βρέθηκε ProductFound=Το προϊόν βρέθηκε NoArticle=Κανένα προϊόν @@ -48,6 +49,7 @@ Footer=Υποσέλιδο AmountAtEndOfPeriod=Ποσό στο τέλος της περιόδου (ημέρα, μήνας ή έτος) TheoricalAmount=Θεωρητικό ποσό RealAmount=Πραγματικό ποσό +CashFence=Cash fence CashFenceDone=Μετρητά φράχτη για την περίοδο NbOfInvoices=Πλήθος τιμολογίων Paymentnumpad=Τύπος πλακέτας για να πληκτρολογήσετε την πληρωμή @@ -58,8 +60,9 @@ TakeposNeedsCategories=Το TakePOS χρειάζεται κατηγορίες π OrderNotes=Σημειώσεις Παραγγελίας CashDeskBankAccountFor=Προεπιλεγμένος λογαριασμός που θα χρησιμοποιηθεί για πληρωμές σε NoPaimementModesDefined=Δεν έχει ρυθμιστεί η λειτουργία πρατηρίου που έχει οριστεί στη διαμόρφωση του TakePOS -TicketVatGrouped=Φόρος ΦΠΑ βάσει ποσοστού σε εισιτήρια -AutoPrintTickets=Αυτόματη εκτύπωση εισιτηρίων +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Ενεργοποιήστε τις λειτουργίες του μπαρ ή του εστιατορίου ConfirmDeletionOfThisPOSSale=Επιβεβαιώνετε τη διαγραφή αυτής της τρέχουσας πώλησης; ConfirmDiscardOfThisPOSSale=Θέλετε να απορρίψετε αυτήν την τρέχουσα πώληση; @@ -87,7 +90,19 @@ HeadBar=Μπάρα Κεφαλίδας SortProductField=Field for sorting products Browser=Browser BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/el_GR/companies.lang b/htdocs/langs/el_GR/companies.lang index a3d237a88d9..d5121eceabd 100644 --- a/htdocs/langs/el_GR/companies.lang +++ b/htdocs/langs/el_GR/companies.lang @@ -32,7 +32,7 @@ PriceFormatInCurrentLanguage=Μορφή εμφάνισης τιμής στην ThirdPartyName=Όνομα τρίτου μέρους ThirdPartyEmail=Ηλεκτρονικό ταχυδρομείο τρίτου μέρους ThirdParty=Τρίτο μέρος -ThirdParties=Τρίτους +ThirdParties=Πελάτες/Συνεργάτες ThirdPartyProspects=Προοπτικές ThirdPartyProspectsStats=Προοπτικές ThirdPartyCustomers=Πελάτες @@ -325,7 +325,6 @@ CompanyDeleted="%s" διαγράφηκε από την βάση δεδομένω ListOfContacts=Λίστα αντιπροσώπων ListOfContactsAddresses=Λίστα αντιπροσώπων ListOfThirdParties=Κατάλογος τρίτων μερών -ShowCompany=Εμφάνιση τρίτου μέρους ShowContact=Εμφάνιση Προσώπου Επικοινωνίας ContactsAllShort=Όλα (Χωρίς Φίλτρο) ContactType=Τύπος αντιπροσώπου επικοινωνίας @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=First name of sales representative SaleRepresentativeLastname=Last name of sales representative ErrorThirdpartiesMerge=Παρουσιάστηκε σφάλμα κατά τη διαγραφή των τρίτων. Ελέγξτε το αρχείο καταγραφής. Οι αλλαγές έχουν επανέλθει. NewCustomerSupplierCodeProposed=Κωδικός πελάτη ή προμηθευτή που έχει ήδη χρησιμοποιηθεί, προτείνεται ένας νέος κωδικός +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Τύπος Πληρωμής - Πελάτης PaymentTermsCustomer=Όροι πληρωμής - Πελάτης diff --git a/htdocs/langs/el_GR/compta.lang b/htdocs/langs/el_GR/compta.lang index 751a1c0d199..d187476e8bb 100644 --- a/htdocs/langs/el_GR/compta.lang +++ b/htdocs/langs/el_GR/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=Ανατρέξτε στο %sanalysis of payments%s γ SeeReportInDueDebtMode=Ανατρέξτε στο %sanalysis των τιμολογίων%s για έναν υπολογισμό βασισμένο σε γνωστά καταγεγραμμένα τιμολόγια, ακόμη και αν δεν έχουν ακόμη καταλογιστεί στο Ledger. SeeReportInBookkeepingMode=Δείτε %sBookeeping report%s για έναν υπολογισμό στον πίνακα " Λογαριασμός Λογιστηρίου" RulesAmountWithTaxIncluded=- Amounts shown are with all taxes included -RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the validation date of invoices and VAT and on the due date for expenses. For salaries defined with Salary module, the value date of payment is used. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- It includes the real payments made on invoices, expenses, VAT and salaries.
    - It is based on the payment dates of the invoices, expenses, VAT and salaries. The donation date for donation. -RulesCADue=- Περιλαμβάνει τα οφειλόμενα τιμολόγια του πελάτη, είτε πληρώνονται είτε όχι.
    - Βασίζεται στην ημερομηνία επικύρωσης αυτών των τιμολογίων.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- Περιλαμβάνει όλες τις πραγματικές πληρωμές τιμολογίων που εισπράττονται από πελάτες.
    - Βασίζεται στην ημερομηνία πληρωμής αυτών των τιμολογίων
    RulesCATotalSaleJournal=Περιλαμβάνει όλες τις πιστωτικές γραμμές από το περιοδικό Sale. RulesAmountOnInOutBookkeepingRecord=Περιλαμβάνει την εγγραφή στον Λογαριασμό σας με Λογαριασμούς Λογαριασμού που έχει την ομάδα "ΕΞΟΔΑ" ή "ΕΙΣΟΔΟΣ" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Ο κύκλος εργασιών τιμολογείται απ TurnoverCollectedbyVatrate=Ο κύκλος εργασιών που εισπράττεται από το φορολογικό συντελεστή πώλησης PurchasebyVatrate=Ποσοστό φόρου επί των πωλήσεων LabelToShow=Σύντομη ετικέτα +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/el_GR/errors.lang b/htdocs/langs/el_GR/errors.lang index 86b72eb9710..f83468b7f5f 100644 --- a/htdocs/langs/el_GR/errors.lang +++ b/htdocs/langs/el_GR/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=Ο διακομιστής δεν έλαβε ολόκληρο τ ErrorNoTmpDir=Ο προσωρινός φάκελος %s δεν υπάρχει. ErrorUploadBlockedByAddon=Η μεταφόρτωση απετράπει από ένα PHP / Apache plugin. ErrorFileSizeTooLarge=Το μέγεθος του αρχείου είναι πολύ μεγάλο. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Το μέγεθος είναι υπερβολικά μεγάλο για τιμή τύπου ακεραίου (%s είναι το μέγιστο πλήθος ψηφίων) ErrorSizeTooLongForVarcharType=Το μέγεθος είναι υπερβολικά μεγάλο για τιμή τύπου αλφαριθμητικού (%s είναι το μέγιστο πλήθος χαρακτήρων) ErrorNoValueForSelectType=Παρακαλούμε συμπληρώστε τιμή για την αναδυόμενη λίστα επιλογής @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # Warnings WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Η παράμετρος PHP upload_max_filesize (%s) είναι υψηλότερη από την παράμετρο PHP post_max_size (%s). Αυτό δεν είναι μια σταθερή ρύθμιση. 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/el_GR/install.lang b/htdocs/langs/el_GR/install.lang index 8a2d7b31c46..b791f0313f3 100644 --- a/htdocs/langs/el_GR/install.lang +++ b/htdocs/langs/el_GR/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=Αυτή η PHP υποστηρίζει το Curl. PHPSupportCalendar=Αυτή η PHP υποστηρίζει επεκτάσεις ημερολογίων. PHPSupportUTF8=Αυτή η PHP υποστηρίζει τις λειτουργίες UTF8. PHPSupportIntl=Αυτή η PHP υποστηρίζει τις λειτουργίες Intl. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=Η PHP υποστηρίζει %s λειτουργίες . PHPMemoryOK=Your PHP max session memory is set to %s. This should be enough. PHPMemoryTooLow=Η μνήμη συνεδρίας PHP max έχει οριστεί σε %s bytes. Αυτό είναι πολύ χαμηλό. Αλλάξτε το php.ini για να ρυθμίσετε την παράμετρο memory_limit σε τουλάχιστον bytes %s . @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=Η εγκατάσταση της php δεν υποσ ErrorPHPDoesNotSupportCalendar=Η εγκατάσταση της PHP δεν υποστηρίζει επεκτάσεις του php calendar. ErrorPHPDoesNotSupportUTF8=Η εγκατάσταση της PHP δεν υποστηρίζει λειτουργίες UTF8. Το Dolibarr δεν μπορεί να λειτουργήσει σωστά. Επιλύστε αυτό πριν εγκαταστήσετε Dolibarr. ErrorPHPDoesNotSupportIntl=Η εγκατάσταση της PHP δεν υποστηρίζει τις λειτουργίες Intl. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Η εγκατάσταση της PHP σας δεν υποστηρίζει %s λειτουργίες . ErrorDirDoesNotExists=Κατάλογος %s δεν υπάρχει. ErrorGoBackAndCorrectParameters=Επιστρέψτε και ελέγξτε / διορθώστε τις παραμέτρους. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=Η εφαρμογή προσπάθησε να α YouTryInstallDisabledByFileLock=Η εφαρμογή προσπάθησε να αυτο-αναβαθμιστεί, αλλά οι σελίδες εγκατάστασης / αναβάθμισης έχουν απενεργοποιηθεί για λόγους ασφαλείας (με την ύπαρξη ενός αρχείου κλειδώματος install.lock στον κατάλογο εγγράφων dolibarr).
    ClickHereToGoToApp=Κάντε κλικ εδώ για να μεταβείτε στην αίτησή σας ClickOnLinkOrRemoveManualy=Κάντε κλικ στον παρακάτω σύνδεσμο. Εάν βλέπετε πάντα την ίδια σελίδα, πρέπει να καταργήσετε / μετονομάσετε το αρχείο install.lock στον κατάλογο εγγράφων. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/el_GR/link.lang b/htdocs/langs/el_GR/link.lang index 2b285448666..7694f341249 100644 --- a/htdocs/langs/el_GR/link.lang +++ b/htdocs/langs/el_GR/link.lang @@ -8,3 +8,4 @@ LinkRemoved=Ο σύνδεσμος %s έχει αφαιρεθεί ErrorFailedToDeleteLink= Απέτυχε η αφαίρεση του συνδέσμου '%s' ErrorFailedToUpdateLink= Απέτυχε η ενημέρωση του σύνδεσμο '%s' URLToLink=Διεύθυνση URL για σύνδεση +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/el_GR/mails.lang b/htdocs/langs/el_GR/mails.lang index c1661e2340f..42f4399baf0 100644 --- a/htdocs/langs/el_GR/mails.lang +++ b/htdocs/langs/el_GR/mails.lang @@ -11,16 +11,16 @@ MailFrom=Αποστολέας MailErrorsTo=Σφάλματα σε MailReply=Απάντηση σε MailTo=Παραλήπτης(ες) -MailToUsers=To user(s) +MailToUsers=Στο χρήστη (ες) MailCC=Αντιγραφή σε -MailToCCUsers=Copy to users(s) +MailToCCUsers=Αντιγραφή σε χρήστες MailCCC=Cached copy to -MailTopic=Email topic +MailTopic=Θέμα ηλεκτρονικού ταχυδρομείου MailText=Μήνυμα MailFile=Επισυναπτώμενα Αρχεία MailMessage=Κείμενο email -SubjectNotIn=Not in Subject -BodyNotIn=Not in Body +SubjectNotIn=Όχι στο θέμα +BodyNotIn=Όχι στο Σώμα ShowEMailing=Show emailing ListOfEMailings=List of emailings NewMailing=New emailing @@ -47,19 +47,19 @@ MailingStatusReadAndUnsubscribe=Read and unsubscribe ErrorMailRecipientIsEmpty=Email recipient is empty WarningNoEMailsAdded=No new Email to add to recipient's list. ConfirmValidMailing=Are you sure you want to validate this emailing? -ConfirmResetMailing=Warning, by re-initializing emailing %s, you will allow the re-sending this email in a bulk mailing. Are you sure you want to do this? -ConfirmDeleteMailing=Are you sure you want to delete this emailing? -NbOfUniqueEMails=No. of unique emails -NbOfEMails=No. of EMails +ConfirmResetMailing=Προειδοποίηση, ενεργοποιώντας εκ νέου την αποστολή e-mail %s , θα επιτρέψετε την επανάδοση αυτού του μηνύματος ηλεκτρονικού ταχυδρομείου σε μαζική αλληλογραφία. Είστε βέβαιοι ότι θέλετε να το κάνετε αυτό; +ConfirmDeleteMailing=Είστε βέβαιοι ότι θέλετε να διαγράψετε αυτό το μήνυμα ηλεκτρονικού ταχυδρομείου; +NbOfUniqueEMails=Αριθμός μοναδικών μηνυμάτων ηλεκτρονικού ταχυδρομείου +NbOfEMails=Αριθμός Emails TotalNbOfDistinctRecipients=Number of distinct recipients NoTargetYet=No recipients defined yet (Go on tab 'Recipients') -NoRecipientEmail=No recipient email for %s +NoRecipientEmail=Δεν υπάρχει ηλεκτρονικό ταχυδρομείο παραλήπτη για %s RemoveRecipient=Remove recipient YouCanAddYourOwnPredefindedListHere=To create your email selector module, see htdocs/core/modules/mailings/README. EMailTestSubstitutionReplacedByGenericValues=When using test mode, substitutions variables are replaced by generic values MailingAddFile=Attach this file NoAttachedFiles=No attached files -BadEMail=Bad value for Email +BadEMail=Κακή τιμή για το μήνυμα ηλεκτρονικού ταχυδρομείου ConfirmCloneEMailing=Are you sure you want to clone this emailing? CloneContent=Clone message CloneReceivers=Cloner recipients @@ -67,31 +67,31 @@ DateLastSend=Ημερομηνία τελευταίας αποστολής DateSending=Date sending SentTo=Sent to %s MailingStatusRead=Ανάγνωση -YourMailUnsubcribeOK=The email %s is correctly unsubscribe from mailing list -ActivateCheckReadKey=Key used to encrypt URL used for "Read Receipt" and "Unsubscribe" feature -EMailSentToNRecipients=Email sent to %s recipients. -EMailSentForNElements=Email sent for %s elements. +YourMailUnsubcribeOK=Το e - mail %s καταργείται σωστά από τη λίστα αλληλογραφίας +ActivateCheckReadKey=Το κλειδί που χρησιμοποιείται για την κρυπτογράφηση της διεύθυνσης URL που χρησιμοποιείται για τη λειτουργία "Έγγραφο ανάγνωσης" και "Κατάργηση εγγραφής" +EMailSentToNRecipients=Το μήνυμα ηλεκτρονικού ταχυδρομείου αποστέλλεται στους παραλήπτες %s. +EMailSentForNElements=Το ηλεκτρονικό ταχυδρομείο στάλθηκε για στοιχεία %s. XTargetsAdded=%s παραλήπτες που προστέθηκαν στο κατάλογο των στόχων -OnlyPDFattachmentSupported=If the PDF documents were already generated for the objects to send, they will be attached to email. If not, no email will be sent (also, note that only pdf documents are supported as attachments in mass sending in this version). -AllRecipientSelected=The recipients of the %s record selected (if their email is known). -GroupEmails=Group emails -OneEmailPerRecipient=One email per recipient (by default, one email per record selected) -WarningIfYouCheckOneRecipientPerEmail=Warning, if you check this box, it means only one email will be sent for several different record selected, so, if your message contains substitution variables that refers to data of a record, it becomes not possible to replace them. -ResultOfMailSending=Result of mass Email sending -NbSelected=Number selected -NbIgnored=Number ignored -NbSent=Number sent -SentXXXmessages=%s message(s) sent. +OnlyPDFattachmentSupported=Αν τα έγγραφα PDF δημιουργήθηκαν ήδη για τα αντικείμενα που θα αποσταλούν, θα επισυνάπτονται στο ηλεκτρονικό ταχυδρομείο. Εάν όχι, δεν θα αποσταλεί κανένα μήνυμα ηλεκτρονικού ταχυδρομείου (επίσης, σημειώστε ότι μόνο έγγραφα pdf υποστηρίζονται ως συνημμένα στη μαζική αποστολή σε αυτή την έκδοση). +AllRecipientSelected=Οι παραλήπτες της εγγραφής %s έχουν επιλεγεί (αν είναι γνωστό το email τους). +GroupEmails=Ομαδικά μηνύματα ηλεκτρονικού ταχυδρομείου +OneEmailPerRecipient=Ένα μήνυμα ηλεκτρονικού ταχυδρομείου ανά παραλήπτη (από προεπιλογή, επιλέγεται ένα μήνυμα ηλεκτρονικού ταχυδρομείου ανά εγγραφή) +WarningIfYouCheckOneRecipientPerEmail=Προειδοποίηση, αν επιλέξετε αυτό το πλαίσιο, σημαίνει ότι θα αποσταλεί μόνο ένα μήνυμα ηλεκτρονικού ταχυδρομείου για πολλές διαφορετικές εγγραφές, επομένως εάν το μήνυμά σας περιέχει μεταβλητές υποκατάστασης που αναφέρονται σε δεδομένα ενός αρχείου, δεν είναι δυνατή η αντικατάστασή τους. +ResultOfMailSending=Αποτέλεσμα της μαζικής αποστολής ηλεκτρονικού ταχυδρομείου +NbSelected=Ο αριθμός είναι επιλεγμένος +NbIgnored=Ο αριθμός αγνοήθηκε +NbSent=Ο αριθμός αποστέλλεται +SentXXXmessages=%s αποστέλλεται μήνυμα (ες). ConfirmUnvalidateEmailing=Are you sure you want to change email %s to draft status? MailingModuleDescContactsWithThirdpartyFilter=Contact with customer filters -MailingModuleDescContactsByCompanyCategory=Contacts by third-party category +MailingModuleDescContactsByCompanyCategory=Επαφές ανά κατηγορία τρίτων MailingModuleDescContactsByCategory=Contacts by categories MailingModuleDescContactsByFunction=Contacts by position -MailingModuleDescEmailsFromFile=Emails from file -MailingModuleDescEmailsFromUser=Emails input by user -MailingModuleDescDolibarrUsers=Users with Emails -MailingModuleDescThirdPartiesByCategories=Third parties (by categories) -SendingFromWebInterfaceIsNotAllowed=Sending from web interface is not allowed. +MailingModuleDescEmailsFromFile=Τα μηνύματα ηλεκτρονικού ταχυδρομείου από το αρχείο +MailingModuleDescEmailsFromUser=Εισαγωγή μηνυμάτων ηλεκτρονικού ταχυδρομείου από το χρήστη +MailingModuleDescDolibarrUsers=Χρήστες με μηνύματα ηλεκτρονικού ταχυδρομείου +MailingModuleDescThirdPartiesByCategories=Τρίτα μέρη (κατά κατηγορίες) +SendingFromWebInterfaceIsNotAllowed=Η αποστολή από τη διεπαφή ιστού δεν επιτρέπεται. # Libelle des modules de liste de destinataires mailing LineInFile=Σειρά %s στο αρχείο @@ -119,9 +119,9 @@ DeliveryReceipt=Delivery Ack. YouCanUseCommaSeparatorForSeveralRecipients=Μπορείτε να χρησιμοποιήσετε το κόμμα σαν διαχωριστή για να καθορίσετε πολλούς παραλήπτες. TagCheckMail=Παρακολούθηση άνοιγμα της αλληλογραφίας TagUnsubscribe=link διαγραφής -TagSignature=Signature of sending user -EMailRecipient=Recipient Email -TagMailtoEmail=Recipient Email (including html "mailto:" link) +TagSignature=Υπογραφή του χρήστη αποστολής +EMailRecipient=Email παραλήπτη +TagMailtoEmail=E-mail παραλήπτη (συμπεριλαμβανομένου του συνδέσμου html "mailto:") NoEmailSentBadSenderOrRecipientEmail=No email sent. Bad sender or recipient email. Verify user profile. # Module Notifications Notifications=Notifications @@ -139,22 +139,22 @@ NbOfTargetedContacts=Τρέχων αριθμός των στοχευμένων UseFormatFileEmailToTarget=Imported file must have format email;name;firstname;other UseFormatInputEmailToTarget=Enter a string with format email;name;firstname;other MailAdvTargetRecipients=Recipients (advanced selection) -AdvTgtTitle=Fill input fields to preselect the third parties or contacts/addresses to target -AdvTgtSearchTextHelp=Use %% as wildcards. For example to find all item like jean, joe, jim, you can input j%%, you can also use ; as separator for value, and use ! for except this value. For example jean;joe;jim%%;!jimo;!jima% will target all jean, joe, start with jim but not jimo and not everything that starts with jima +AdvTgtTitle=Συμπληρώστε τα πεδία εισαγωγής για να επιλέξετε εκ των προτέρων τα τρίτα μέρη ή τις επαφές / διευθύνσεις που θέλετε να στοχεύσετε +AdvTgtSearchTextHelp=Χρησιμοποιήστε %% ως μπαλαντέρ. Για παράδειγμα, για να βρείτε όλα τα στοιχεία όπως το jean, joe, jim , μπορείτε να εισάγετε το j%% , μπορείτε επίσης να χρησιμοποιήσετε. ως διαχωριστικό για αξία και χρήση! για εκτός αυτής της τιμής. Για παράδειγμα, το jean, joe, jim%%;! Jimo;! Jima% θα στοχεύσει όλους τους Jean, joe, ξεκινήστε με τον Jim αλλά όχι το jimo και όχι με όλα όσα αρχίζουν με jima AdvTgtSearchIntHelp=Use interval to select int or float value AdvTgtMinVal=Ελάχιστη τιμή AdvTgtMaxVal=Μέγιστη τιμή AdvTgtSearchDtHelp=Use interval to select date value AdvTgtStartDt=Start dt. AdvTgtEndDt=End dt. -AdvTgtTypeOfIncudeHelp=Target Email of third party and email of contact of the third party, or just third-party email or just contact email +AdvTgtTypeOfIncudeHelp=Στόχευση ηλεκτρονικού ταχυδρομείου τρίτου μέρους και ηλεκτρονικού ταχυδρομείου της επαφής τρίτου μέρους, ή απλώς ηλεκτρονικού ταχυδρομείου τρίτου μέρους ή απλά ηλεκτρονικού ταχυδρομείου επικοινωνίας AdvTgtTypeOfIncude=Type of targeted email AdvTgtContactHelp=Use only if you target contact into "Type of targeted email" AddAll=Add all RemoveAll=Remove all ItemsCount=Item(s) AdvTgtNameTemplate=Filter name -AdvTgtAddContact=Add emails according to criteria +AdvTgtAddContact=Προσθέστε μηνύματα ηλεκτρονικού ταχυδρομείου σύμφωνα με τα κριτήρια AdvTgtLoadFilter=Load filter AdvTgtDeleteFilter=Delete filter AdvTgtSaveFilter=Save filter @@ -164,7 +164,7 @@ NoContactWithCategoryFound=No contact/address with a category found NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found OutGoingEmailSetup=Outgoing email setup InGoingEmailSetup=Incoming email setup -OutGoingEmailSetupForEmailing=Outgoing email setup (for mass emailing) -DefaultOutgoingEmailSetup=Default outgoing email setup +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) +DefaultOutgoingEmailSetup=Προεπιλεγμένη ρύθμιση εξερχόμενων email Information=Πληροφορίες -ContactsWithThirdpartyFilter=Contacts with third-party filter +ContactsWithThirdpartyFilter=Επαφές με φίλτρο τρίτου μέρους diff --git a/htdocs/langs/el_GR/main.lang b/htdocs/langs/el_GR/main.lang index 6971d613515..8c10cd22771 100644 --- a/htdocs/langs/el_GR/main.lang +++ b/htdocs/langs/el_GR/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Εξοικονομήστε και μείνετε SaveAndNew=Αποθήκευση και Νέο TestConnection=Δοκιμή Σύνδεσης ToClone=Κλωνοποίηση +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Επιλέξτε τα δεδομένα που θέλετε να κλωνοποιήσετε: NoCloneOptionsSpecified=Δεν καθορίστηκαν δεδομένα προς κλωνοποίηση. Of=του @@ -829,6 +830,8 @@ Gender=Φύλο Genderman=Άνδρας Genderwoman=Γυναίκα ViewList=Προβολή λίστας +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Υποχρεωτικό Hello=Χαίρετε GoodBye=Αντιο σας @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Επιλέξτε τις επιλογές γραφή Measures=Μετρήσεις XAxis=Άξονας Χ YAxis=Άξονας Υ +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/el_GR/modulebuilder.lang b/htdocs/langs/el_GR/modulebuilder.lang index 08497ab4ef8..e0758bc6a64 100644 --- a/htdocs/langs/el_GR/modulebuilder.lang +++ b/htdocs/langs/el_GR/modulebuilder.lang @@ -83,9 +83,9 @@ ListOfDictionariesEntries=Λίστα καταχωρήσεων λεξικών ListOfPermissionsDefined=Λίστα καθορισμένων δικαιωμάτων SeeExamples=Δείτε παραδείγματα εδώ EnabledDesc=Προϋπόθεση να είναι ενεργό αυτό το πεδίο (Παραδείγματα: 1 ή $ conf-> global-> MYMODULE_MYOPTION) -VisibleDesc=Είναι το πεδίο ορατό; (Παραδείγματα: 0 = Ποτέ δεν είναι ορατό, 1 = Ορατή στη λίστα και δημιουργία / ενημέρωση / προβολή φορμών, 2 = Ορατή μόνο στη λίστα, 3 = Ορατή στη δημιουργία / ενημέρωση / προβολή της φόρμας(όχι λίστα), 4=Ορατή στη λίστα και ενημέρωση/προβολή φόρμας μόνο (όχι δημιουργία), 5=Ορατή στη λίστα τέλους φόρμας μόνο. (όχι δημιουργία, όχι ενημέρωση). Χρησιμοποιώντας μία αρνητική τιμή σημαίνει ότι το πεδίο δεν εμφανίζεται από προεπιλογή στη λίστα αλλά μπορεί να επιλεγεί για προβολή). Μπορεί να είναι μια έκφραση, για παράδειγμα:
    preg_match ('/ public /', $ _SERVER ['PHP_SELF']); 0: 1
    ($ user-> rights-> holiday-> define_holiday; ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene -DisplayOnPdf=Display on PDF +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Εμφανίστε αυτό το πεδίο σε συμβατά έγγραφα PDF, μπορείτε να διαχειριστείτε τη θέση με το πεδίο "Θέση".
    Επί του παρόντος, γνωστά μοντέλα συμβατούς PDF είναι: Ερατοσθένης ο Κυρηναίος (σειρά), espadon (πλοίο), σφουγγάρι (τιμολόγια), κυανό (propal / εισαγωγικά), cornas (αύξων προμηθευτή)

    Για εγγράφου:
    0 = δεν εμφανίζονται
    1 = οθόνη
    2 = εμφανιστεί μόνο αν δεν αδειάσει

    Για τις γραμμές εγγράφου:
    0 = δεν εμφανίζονται
    1 = εμφανίζονται σε μια στήλη
    3 = οθόνη στη στήλη περιγραφή γραμμή μετά την περιγραφή
    4 = οθόνη στη στήλη περιγραφή μετά την περιγραφή μόνο αν δεν είναι άδεια +DisplayOnPdf=Εμφάνιση σε PDF IsAMeasureDesc=Μπορεί η τιμή του πεδίου να συσσωρευτεί για να πάρει ένα σύνολο σε λίστα; (Παραδείγματα: 1 ή 0) SearchAllDesc=Χρησιμοποιείται το πεδίο για την αναζήτηση από το εργαλείο γρήγορης αναζήτησης; (Παραδείγματα: 1 ή 0) SpecDefDesc=Εισαγάγετε εδώ όλη την τεκμηρίωση που θέλετε να παράσχετε με τη λειτουργική σας μονάδα, η οποία δεν έχει ήδη καθοριστεί από άλλες καρτέλες. Μπορείτε να χρησιμοποιήσετε το .md ή καλύτερα, την πλούσια σύνταξη .asciidoc. diff --git a/htdocs/langs/el_GR/multicurrency.lang b/htdocs/langs/el_GR/multicurrency.lang index 47224ec0301..935d1ba45a6 100644 --- a/htdocs/langs/el_GR/multicurrency.lang +++ b/htdocs/langs/el_GR/multicurrency.lang @@ -1,20 +1,22 @@ # Dolibarr language file - Source file is en_US - multicurrency -MultiCurrency=Multi currency -ErrorAddRateFail=Error in added rate -ErrorAddCurrencyFail=Error in added currency -ErrorDeleteCurrencyFail=Error delete fail -multicurrency_syncronize_error=Σφάλμα συγχρονισμού:%s -MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Use date of document to find currency rate, instead of using latest known rate -multicurrency_useOriginTx=When an object is created from another, keep the original rate of source object (otherwise use the latest known rate) +MultiCurrency=Πολλαπλό νόμισμα +ErrorAddRateFail=Σφάλμα στο προστιθέμενο ποσοστό +ErrorAddCurrencyFail=Σφάλμα στο προστιθέμενο νόμισμα +ErrorDeleteCurrencyFail=Σφάλμα κατάργησης διαγραφής +multicurrency_syncronize_error=Σφάλμα συγχρονισμού: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Χρησιμοποιήστε την ημερομηνία του εγγράφου για να βρείτε την ισοτιμία του νομίσματος, αντί να χρησιμοποιήσετε την τελευταία γνωστή τιμή +multicurrency_useOriginTx=Όταν ένα αντικείμενο δημιουργείται από άλλο, διατηρήστε τον αρχικό ρυθμό από το αντικείμενο προέλευσης (διαφορετικά χρησιμοποιήστε την τελευταία γνωστή τιμή) CurrencyLayerAccount=CurrencyLayer API -CurrencyLayerAccount_help_to_synchronize=You sould create an account on their website to use this functionnality
    Get your API key
    If you use a free account you can't change the currency source (USD by default)
    But if your main currency isn't USD you can use the alternate currency source to force you main currency

    You are limited at 1000 synchronizations per month -multicurrency_appId=API key -multicurrency_appCurrencySource=Currency source -multicurrency_alternateCurrencySource=Alternate currency source -CurrenciesUsed=Currencies used -CurrenciesUsed_help_to_add=Add the differents currencies and rates you need to use on you proposals, orders, etc. -rate=rate -MulticurrencyReceived=Received, original currency -MulticurrencyRemainderToTake=Remaining amout, original currency -MulticurrencyPaymentAmount=Payment amount, original currency -AmountToOthercurrency=Amount To (in currency of receiving account) +CurrencyLayerAccount_help_to_synchronize=Πρέπει να δημιουργήσετε έναν λογαριασμό στον ιστότοπο %s για να χρησιμοποιήσετε αυτήν τη λειτουργία.
    Αποκτήστε το κλειδί API .
    Εάν χρησιμοποιείτε έναν δωρεάν λογαριασμό, δεν μπορείτε να αλλάξετε το νόμισμα προέλευσης (από προεπιλογή το USD).
    Εάν το κύριο νόμισμά σας δεν είναι δολάρια ΗΠΑ, η εφαρμογή θα υπολογίσει αυτόματα τον υπολογισμό.

    Είστε περιορισμένοι σε 1000 συγχρονισμούς ανά μήνα. +multicurrency_appId=API κλειδί +multicurrency_appCurrencySource=Πηγή νόμισμα +multicurrency_alternateCurrencySource=Εναλλασσόμενο νόμισμα προέλευσης +CurrenciesUsed=Χρησιμοποιούμενα νομίσματα +CurrenciesUsed_help_to_add=Προσθέστε τα διαφορετικά νομίσματα και τα ποσοστά που πρέπει να χρησιμοποιήσετε για τις προτάσεις σας, παραγγελίες κλπ. +rate=τιμή +MulticurrencyReceived=Λήφθηκε, αρχικό νόμισμα +MulticurrencyRemainderToTake=Το υπόλοιπο ποσό, το αρχικό νόμισμα +MulticurrencyPaymentAmount=Ποσό πληρωμής, αρχικό νόμισμα +AmountToOthercurrency=Ποσό σε (σε νόμισμα του λογαριασμού λήψης) +CurrencyRateSyncSucceed=Ο συγχρονισμός συναλλαγματικών ισοτιμιών ολοκληρώθηκε με επιτυχία +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Χρησιμοποιήστε το νόμισμα του εγγράφου για διαδικτυακές πληρωμές diff --git a/htdocs/langs/el_GR/other.lang b/htdocs/langs/el_GR/other.lang index c63a3955e87..15ec472fef1 100644 --- a/htdocs/langs/el_GR/other.lang +++ b/htdocs/langs/el_GR/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Μόνο 1 πεδίο είναι επί του παρόντος δυνατός ως Άξονας Χ. Έχει επιλεγεί μόνο το πρώτο επιλεγμένο πεδίο. AtLeastOneMeasureIsRequired=Απαιτείται τουλάχιστον 1 πεδίο για μέτρηση AtLeastOneXAxisIsRequired=Απαιτείται τουλάχιστον 1 πεδίο για τον άξονα Χ - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Η εντολή πώλησης έχει επικυρωθεί Notify_ORDER_SENTBYMAIL=Η εντολή πωλήσεων αποστέλλεται μέσω ταχυδρομείου Notify_ORDER_SUPPLIER_SENTBYMAIL=Η εντολή αγοράς στάλθηκε μέσω ηλεκτρονικού ταχυδρομείου @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=Σύνδεσμος URL της σελίδας WEBSITE_TITLE=Τίτλος WEBSITE_DESCRIPTION=Περιγραφή WEBSITE_IMAGE=Εικόνα -WEBSITE_IMAGEDesc=Σχετική διαδρομή των μέσων εικόνας. Μπορείτε να το κρατήσετε κενό, καθώς σπάνια χρησιμοποιείται (μπορεί να χρησιμοποιηθεί από το δυναμικό περιεχόμενο για να εμφανιστεί μια μικρογραφία σε μια λίστα με αναρτήσεις ιστολογίου). Χρησιμοποιήστε το __WEBSITEKEY__ στη διαδρομή εάν η διαδρομή εξαρτάται από το όνομα του ιστότοπου. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Λέξεις κλειδιά LinesToImport=Γραμμές για εισαγωγή diff --git a/htdocs/langs/el_GR/products.lang b/htdocs/langs/el_GR/products.lang index 305f375aae5..8aacaf0bf5a 100644 --- a/htdocs/langs/el_GR/products.lang +++ b/htdocs/langs/el_GR/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=Αυτό το εργαλείο ενημερώνει τ MassBarcodeInit=Μαζική barcode init MassBarcodeInitDesc=Αυτή η σελίδα μπορεί να χρησιμοποιείται για να προετοιμάσει ένα barcode σε αντικείμενα που δεν έχουν barcode. Ελέγξτε πριν από την εγκατάσταση του module barcode αν έχει ολοκληρωθεί. ProductAccountancyBuyCode=Λογιστικός Κωδικός (Αγορά) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Λογιστικός Κωδικός (Πώληση) ProductAccountancySellIntraCode=Κωδικός λογιστικής (ενδοκοινοτική πώληση) ProductAccountancySellExportCode=Λογιστικός κωδικός (εξαγωγή πώλησης) @@ -165,7 +167,7 @@ SuppliersPrices=Τιμές πωλητών SuppliersPricesOfProductsOrServices=Τιμές πωλητών (προϊόντων ή υπηρεσιών) CustomCode=Τελωνείο / εμπορεύματα / κωδικός ΕΣ CountryOrigin=Χώρα προέλευσης -Nature=Φύση του προϊόντος (υλικό / έτοιμο) +Nature=Nature of product (material/finished) ShortLabel=Σύντομη ετικέτα Unit=Μονάδα p=Μονάδα diff --git a/htdocs/langs/el_GR/projects.lang b/htdocs/langs/el_GR/projects.lang index a9273d9d0f2..d19eef671e6 100644 --- a/htdocs/langs/el_GR/projects.lang +++ b/htdocs/langs/el_GR/projects.lang @@ -39,8 +39,8 @@ ShowProject=Εμφάνιση έργου ShowTask=Εμφάνιση Εργασίας SetProject=Set project NoProject=No project defined or owned -NbOfProjects=Number of projects -NbOfTasks=Number of tasks +NbOfProjects=Αριθμός έργων +NbOfTasks=Αριθμός εργασιών TimeSpent=Χρόνος που δαπανήθηκε TimeSpentByYou=Χρόνος που δαπανάται από εσάς TimeSpentByUser=Χρόνος που δαπανάται από τον χρήστη @@ -87,8 +87,6 @@ WhichIamLinkedToProject=που είμαι συνδεδεμένος με το έ Time=Χρόνος ListOfTasks=Κατάλογος εργασιών GoToListOfTimeConsumed=Μεταβείτε στη λίστα του χρόνου που καταναλώνετε -GoToListOfTasks=Εμφάνιση ως λίστα -GoToGanttView=δείτε ως Gantt GanttView=Gantt View ListProposalsAssociatedProject=Κατάλογος των εμπορικών προτάσεων που σχετίζονται με το έργο ListOrdersAssociatedProject=Κατάλογος παραγγελιών πωλήσεων που σχετίζονται με το έργο @@ -104,7 +102,7 @@ ListDonationsAssociatedProject=Κατάλογος δωρεών που σχετί ListVariousPaymentsAssociatedProject=Κατάλογος των διαφόρων πληρωμών που σχετίζονται με το έργο ListSalariesAssociatedProject=Κατάλογος των μισθών που σχετίζονται με το σχέδιο ListActionsAssociatedProject=Κατάλογος συμβάντων που σχετίζονται με το έργο -ListMOAssociatedProject=List of manufacturing orders related to the project +ListMOAssociatedProject=Κατάλογος παραγγελιών κατασκευής που σχετίζονται με το έργο ListTaskTimeUserProject=Κατάλογος του χρόνου που καταναλώνεται για τα καθήκοντα του έργου ListTaskTimeForTask=Κατάλογος του χρόνου που καταναλώνεται στην εργασία ActivityOnProjectToday=Δραστηριότητα στο έργο σήμερα @@ -164,8 +162,8 @@ OpportunityProbability=Πιθανότητα μολύβδου OpportunityProbabilityShort=Επικεφαλής probab. OpportunityAmount=Ποσό μολύβδου OpportunityAmountShort=Ποσό μολύβδου -OpportunityWeightedAmount=Opportunity weighted amount -OpportunityWeightedAmountShort=Opp. weighted amount +OpportunityWeightedAmount=Σταθμισμένο ποσό ευκαιρίας +OpportunityWeightedAmountShort=Αντί. σταθμισμένο ποσό OpportunityAmountAverageShort=Μέσο ποσό μολύβδου OpportunityAmountWeigthedShort=Σταθμισμένο ποσό μολύβδου WonLostExcluded=Κερδισμένο / Lost αποκλεισμένο @@ -188,7 +186,7 @@ PlannedWorkload=Σχέδιο φόρτου εργασίας PlannedWorkloadShort=Φόρτος εργασίας ProjectReferers=Σχετικά αντικείμενα ProjectMustBeValidatedFirst=Το έργο πρέπει να επικυρωθεί πρώτα -FirstAddRessourceToAllocateTime=Εκχωρήστε μια πηγή χρήστη σε εργασία για να διαθέσετε χρόνο +FirstAddRessourceToAllocateTime=Ορίστε έναν πόρο χρήστη ως επαφή του έργου για να διαθέσετε χρόνο InputPerDay=Εισαγωγή ανά ημέρα InputPerWeek=Εισαγωγή ανά εβδομάδα InputPerMonth=Είσοδος / εισαγωγή ανά μήνα @@ -240,6 +238,7 @@ LatestModifiedProjects=Τελευταία τροποποιημένα έργα %s OtherFilteredTasks=Άλλες φιλτραρισμένες εργασίες NoAssignedTasks=Δεν εντοπίστηκαν καθήκοντα που έχουν ανατεθεί (αναθέστε το έργο / εργασίες στον τρέχοντα χρήστη από το κορυφαίο πλαίσιο επιλογής για να εισάγετε χρόνο σε αυτό) ThirdPartyRequiredToGenerateInvoice=Ένα τρίτο μέρος πρέπει να οριστεί στο έργο για να μπορεί να το τιμολογεί. +ChooseANotYetAssignedTask=Επιλέξτε μια εργασία που δεν σας έχει ανατεθεί ακόμη # Comments trans AllowCommentOnTask=Επιτρέψτε στα σχόλια των χρηστών τις εργασίες AllowCommentOnProject=Να επιτρέπεται στα σχόλια των χρηστών τα έργα @@ -256,8 +255,8 @@ ServiceToUseOnLines=Υπηρεσία για χρήση σε γραμμές InvoiceGeneratedFromTimeSpent=Το τιμολόγιο %s δημιουργήθηκε από το χρόνο που αφιερώσατε στο έργο ProjectBillTimeDescription=Ελέγξτε αν εισάγετε φύλλο κατανομής για τα καθήκοντα του έργου και σχεδιάζετε να δημιουργήσετε τιμολόγιο(α) από το δελτίο χρόνου για να χρεώσετε τον πελάτη του έργου (μην ελέγξετε αν σκοπεύετε να δημιουργήσετε τιμολόγιο που δεν βασίζεται σε καταγεγραμμένα φύλλα εργασίας). Σημείωση: Για να δημιουργήσετε τιμολόγιο, μεταβείτε στην καρτέλα 'Χρόνος δαπάνης' του έργου και επιλέξτε γραμμές που θα συμπεριληφθούν. ProjectFollowOpportunity=Ακολουθήστε την ευκαιρία -ProjectFollowTasks=Ακολουθήστε τις εργασίες -Usage=Usage +ProjectFollowTasks=Follow tasks or time spent +Usage=Χρήση UsageOpportunity=Χρήση: Ευκαιρία UsageTasks=Χρήση: Εργασίες UsageBillTimeShort=Χρήση: Χρόνος λογαριασμού @@ -265,3 +264,4 @@ InvoiceToUse=Προσχέδιο τιμολογίου προς χρήση NewInvoice=Νέο τιμολόγιο OneLinePerTask=Μια γραμμή ανά εργασία OneLinePerPeriod=Μία γραμμή ανά περίοδο +RefTaskParent=Αναφ. Γονική εργασία diff --git a/htdocs/langs/el_GR/receiptprinter.lang b/htdocs/langs/el_GR/receiptprinter.lang index 49ca178442c..a0d9eff853e 100644 --- a/htdocs/langs/el_GR/receiptprinter.lang +++ b/htdocs/langs/el_GR/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Εκτυπωτής Dummy CONNECTOR_NETWORK_PRINT=Δικτυακός εκτυπωτής CONNECTOR_FILE_PRINT=Τοπικός εκτυπωτής CONNECTOR_WINDOWS_PRINT=Τοπικός εκτυπωτής Windows +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Εικονικός εκτυπωτής για ελέγχους, δεν κάνει τίποτα CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb: // FooUser: μυστικό @ computername / workgroup / Εκτυπωτής παραλαβής +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Προεπιλεγμένο προφίλ PROFILE_SIMPLE=Απλό προφίλ PROFILE_EPOSTEP=Epos Προφίλ Tep @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Μήνας τιμολογίου με γράμματα DOL_VALUE_MONTH=Μήνας τιμολογίου DOL_VALUE_DAY=Ημέρα τιμολογίου DOL_VALUE_DAY_LETTERS=Ημέρα τιμολογίου με γράμματα +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Κωδ. τιμολογίου +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Ενδοκοινοτικό ΑΦΜ +DOL_VALUE_MYSOC_CAPITAL=Κεφάλαιο Κίνησης +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/el_GR/stripe.lang b/htdocs/langs/el_GR/stripe.lang index 28c49089cf9..3b1466bcad6 100644 --- a/htdocs/langs/el_GR/stripe.lang +++ b/htdocs/langs/el_GR/stripe.lang @@ -32,6 +32,7 @@ VendorName=Όνομα του πωλητή CSSUrlForPaymentForm=Url CSS φύλλο στυλ για το έντυπο πληρωμής NewStripePaymentReceived=Πληρωμή της νέας ταινίας Stripe NewStripePaymentFailed=Η πληρωμή του νέου Stripe προσπάθησε αλλά απέτυχε +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Μυστικό κλειδί δοκιμής STRIPE_TEST_PUBLISHABLE_KEY=Κλειδί ελέγχου δοκιμαστικής έκδοσης STRIPE_TEST_WEBHOOK_KEY=Πλήκτρο δοκιμής Webhook @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Σύνδεση με τη ρύθμιση Stripe WebHoo ToOfferALinkForLiveWebhook=Σύνδεση στη ρύθμιση Stripe WebHook για κλήση του IPN (ζωντανή λειτουργία) PaymentWillBeRecordedForNextPeriod=Η πληρωμή θα καταγραφεί για την επόμενη περίοδο. ClickHereToTryAgain=Κάντε κλικ εδώ για να δοκιμάσετε ξανά ... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Λόγω ισχυρών κανόνων αυθεντικότητας πελατών, η δημιουργία μιας κάρτας πρέπει να γίνεται από το Stripe backoffice. Μπορείτε να κάνετε κλικ εδώ για να μεταφερθείτε στην εγγραφή πελάτη Stripe: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/el_GR/users.lang b/htdocs/langs/el_GR/users.lang index b31fdbc0741..bc56e33fb69 100644 --- a/htdocs/langs/el_GR/users.lang +++ b/htdocs/langs/el_GR/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Χρήστες και τις ιδιότητές τους DomainUser=Domain user %s Reactivate=Reactivate CreateInternalUserDesc=Αυτή η φόρμα σάς επιτρέπει να δημιουργήσετε έναν εσωτερικό χρήστη στην εταιρεία / οργανισμό σας. Για να δημιουργήσετε έναν εξωτερικό χρήστη (πελάτη, προμηθευτή κ.λπ.), χρησιμοποιήστε το κουμπί "Δημιουργία χρήστη Dolibarr" από την κάρτα επαφών του τρίτου μέρους. -InternalExternalDesc=Ένας εσωτερικός χρήστης είναι χρήστης που αποτελεί μέρος της εταιρείας / οργανισμού σας.
    Ένας εξωτερικός χρήστης είναι πελάτης, πωλητής ή άλλος.

    Και στις δύο περιπτώσεις, τα δικαιώματα καθορίζουν δικαιώματα στο Dolibarr, και ο εξωτερικός χρήστης μπορεί να έχει διαφορετικό διαχειριστή μενού από τον εσωτερικό χρήστη (βλέπε Αρχική σελίδα - Εγκατάσταση - Εμφάνιση) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=Permission granted because inherited from one of a user's group. Inherited=Inherited UserWillBeInternalUser=Δημιουργήθηκε χρήστη θα είναι ένας εσωτερικός χρήστης (επειδή δεν συνδέεται με ένα συγκεκριμένο τρίτο μέρος) @@ -113,3 +113,5 @@ CantDisableYourself=Δεν μπορείτε να απενεργοποιήσετ ForceUserExpenseValidator=Έγκριση έκθεσης εξόδου ισχύος ForceUserHolidayValidator=Έγκριση αίτησης για άδεια εξόδου ValidatorIsSupervisorByDefault=Από προεπιλογή, ο επικυρωτής είναι ο επόπτης του χρήστη. Κρατήστε κενό για να διατηρήσετε αυτή τη συμπεριφορά. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/el_GR/website.lang b/htdocs/langs/el_GR/website.lang index 706b8c5caf1..5f0d574f8f0 100644 --- a/htdocs/langs/el_GR/website.lang +++ b/htdocs/langs/el_GR/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=Προβολή σελίδας σε νέα καρτέλα SetAsHomePage=Ορισμός σαν αρχική σελίδα RealURL=Πραγματική διεύθυνση URL ViewWebsiteInProduction=Προβάλετε τον ιστότοπο χρησιμοποιώντας τις διευθύνσεις URL για το σπίτι -SetHereVirtualHost=Χρήση με Apache / NGinx / ...
    Αν μπορείτε να δημιουργήσετε στον διακομιστή ιστού (Apache, Nginx, ...) ένα ειδικό εικονικό κεντρικό υπολογιστή με ενεργοποιημένη την PHP και έναν κατάλογο Root σε
    %s
    στη συνέχεια, ορίστε το όνομα του εικονικού κεντρικού υπολογιστή που έχετε δημιουργήσει στις ιδιότητες του ιστότοπου, οπότε η προεπισκόπηση μπορεί να γίνει επίσης χρησιμοποιώντας αυτήν την αποκλειστική πρόσβαση στο διακομιστή web αντί για τον εσωτερικό διακομιστή Dolibarr. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Παράδειγμα χρήσης στη ρύθμιση εικονικού κεντρικού υπολογιστή Apache: YouCanAlsoTestWithPHPS=Χρήση με ενσωματωμένο διακομιστή PHP
    Στο περιβάλλον ανάπτυξης, μπορεί να προτιμάτε να δοκιμάσετε τον ιστότοπο με τον ενσωματωμένο διακομιστή ιστού PHP (απαιτείται PHP 5.5) εκτελώντας
    php -S 0.0.0.0:8080 -t %s YouCanAlsoDeployToAnotherWHP=Εκτελέστε τον ιστότοπό σας με έναν άλλο πάροχο φιλοξενίας Dolibarr
    Αν δεν διαθέτετε διακομιστή ιστού όπως το Apache ή το NGinx που διατίθεται στο Διαδίκτυο, μπορείτε να εξάγετε και να εισάγετε την ιστοσελίδα σας σε μια άλλη παρουσία Dolibarr που παρέχεται από έναν άλλο πάροχο φιλοξενίας Dolibarr που παρέχει πλήρη ενσωμάτωση στην ενότητα Website. Μπορείτε να βρείτε μια λίστα με ορισμένους παρόχους φιλοξενίας Dolibarr στη διεύθυνση https://saas.dolibarr.org CheckVirtualHostPerms=Ελέγξτε επίσης ότι ο εικονικός κεντρικός υπολογιστής έχει άδεια %s σε αρχεία σε
    %s @@ -56,7 +57,7 @@ NoPageYet=Δεν υπάρχουν ακόμη σελίδες YouCanCreatePageOrImportTemplate=Μπορείτε να δημιουργήσετε μια νέα σελίδα ή να εισαγάγετε ένα πλήρες πρότυπο ιστότοπου SyntaxHelp=Βοήθεια για συγκεκριμένες συμβουλές σύνταξης YouCanEditHtmlSourceckeditor=Μπορείτε να επεξεργαστείτε τον πηγαίο κώδικα HTML χρησιμοποιώντας το κουμπί "Source" στο πρόγραμμα επεξεργασίας. -YouCanEditHtmlSource=
    Μπορείτε να ενσωματώσετε PHP κώδικα μέσα στην πηγή χρησιμοποιώντας tag <?php ?>. Οι ακόλουθες γενικές μεταβλητές είναι διαθέσιμες: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    Επίσης, μπορείτε να ενσωματώσετε τα περιεχόμενα μίας άλλης σελίδας με την παρακάτω σύνταξη:
    <?php includeContainer('alias_of_container_to_include'); ?>

    Μπορείτε να κάνετε ανακατεύθυνση σε άλλη σελίδα/περιεχόμενο με την ακόλουθη σύνταξη (παρατήρηση: μην εξάγετε περιχόμενο πριν την ανακατεύθυνση):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    Για να προσθέσετε σύνδεσμο προς άλλη σελίδα, χρησιμοποιήστε τη σύνταξη:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    Για να συμπεριλάβετε ενα σύνδεσμο κατεβάσματος αρχείου αποθηκευμένου στα documents φάκελο, χρησιμοποιήστε document.php wrapper:
    Παράδειγμα, για αρχείο στα documents/ecm (χρειάζεται να είναι καταγεγραμμένο), σύνταξη είναι:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    Για κοινό αρχείο με κοινό σύνδεσμο (ανοιχτή πρόσβαση με κοινό κλειδί αρχείου), η σύνταξη είναι:
    <a href="/document.php?hashp=publicsharekeyoffile">

    Για να ενσωματώσετε μια image αποθηκευμένη στο documents φάκελο, χρησιμοποιήστε τοviewimage.php wrapper:
    Παράδειγμα, για μια εικόνα στο documents/medias (ανοιχτός φάκελος για κοινή χρήση), η σύνταξη είναι :
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    Περισσότερα παραδείγματα HTML ή δυναμικό κώδικα διαθεσιμότητα στο the wiki documentation
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Σελίδα κλωνοποίησης / κοντέινερ CloneSite=Κλωνήστε τον ιστότοπο SiteAdded=Προστέθηκε ιστότοπος @@ -76,7 +77,7 @@ BlogPost=Ανάρτηση WebsiteAccount=Λογαριασμός ιστοτόπου WebsiteAccounts=Λογαριασμοί ιστοτόπων AddWebsiteAccount=Δημιουργία λογαριασμού ιστότοπου -BackToListOfThirdParty=Επιστροφή στη λίστα για τρίτο μέρος +BackToListForThirdParty=Επιστροφή στη λίστα για το τρίτο μέρος DisableSiteFirst=Απενεργοποιήστε πρώτα τον ιστότοπο MyContainerTitle=Ο τίτλος ιστότοπού μου AnotherContainer=Αυτός είναι ο τρόπος με τον οποίο μπορείτε να συμπεριλάβετε περιεχόμενο μιας άλλης σελίδας / κοντέινερ (ενδεχομένως να έχετε ένα σφάλμα αν ενεργοποιήσετε τον δυναμικό κώδικα επειδή ο ενσωματωμένος υποελεγχος δεν υπάρχει) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Λυπούμαστε, αυτός ο ιστότο WEBSITE_USE_WEBSITE_ACCOUNTS=Ενεργοποιήστε τον πίνακα λογαριασμού web site WEBSITE_USE_WEBSITE_ACCOUNTSTooltip=Ενεργοποιήστε τον πίνακα για να αποθηκεύσετε λογαριασμούς ιστότοπων (login / pass) για κάθε ιστότοπο / τρίτο μέρος YouMustDefineTheHomePage=Πρέπει πρώτα να ορίσετε την προεπιλεγμένη Αρχική σελίδα -OnlyEditionOfSourceForGrabbedContentFuture=Προειδοποίηση: Η δημιουργία μιας ιστοσελίδας με την εισαγωγή μιας εξωτερικής ιστοσελίδας προορίζεται αποκλειστικά για έμπειρους χρήστες. Ανάλογα με την πολυπλοκότητα της σελίδας πηγής, το αποτέλεσμα της εισαγωγής μπορεί να διαφέρει από το πρωτότυπο. Επίσης, αν η αρχική σελίδα χρησιμοποιεί κοινά στυλ CSS ή αντιφατικό javascript, μπορεί να σπάσει το βλέμμα ή τα χαρακτηριστικά του επεξεργαστή ιστότοπου κατά την εργασία σε αυτή τη σελίδα. Αυτή η μέθοδος είναι ένας πιο γρήγορος τρόπος για να δημιουργήσετε μια σελίδα, αλλά συνιστάται η δημιουργία της νέας σελίδας από την αρχή ή ενός προτεινόμενου προτύπου σελίδας.
    Σημειώστε επίσης ότι οι τροποποιήσεις της πηγής HTML θα είναι δυνατές όταν το περιεχόμενο της σελίδας έχει αρχικοποιηθεί, αρπάζοντάς το από μια εξωτερική σελίδα (ο εκδότης "Online" ΔΕΝ θα είναι διαθέσιμος) +OnlyEditionOfSourceForGrabbedContentFuture=Προειδοποίηση: Η δημιουργία ιστοσελίδας με εισαγωγή εξωτερικής ιστοσελίδας προορίζεται για έμπειρους χρήστες. Ανάλογα με την πολυπλοκότητα της σελίδας προέλευσης, το αποτέλεσμα της εισαγωγής ενδέχεται να διαφέρει από το πρωτότυπο. Επίσης, εάν η σελίδα προέλευσης χρησιμοποιεί κοινά στυλ CSS ή javascript σε διένεξη, ενδέχεται να σπάσει την εμφάνιση ή τις δυνατότητες του προγράμματος επεξεργασίας ιστότοπου όταν εργάζεστε σε αυτήν τη σελίδα. Αυτή η μέθοδος είναι ένας πιο γρήγορος τρόπος για να δημιουργήσετε μια σελίδα, αλλά συνιστάται να δημιουργήσετε τη νέα σας σελίδα από το μηδέν ή από ένα προτεινόμενο πρότυπο σελίδας.
    Σημειώστε επίσης ότι ο ενσωματωμένος επεξεργαστής ενδέχεται να μην λειτουργεί σωστά όταν χρησιμοποιείται σε μια αρπαγή εξωτερική σελίδα. OnlyEditionOfSourceForGrabbedContent=Μόνο έκδοση πηγής HTML είναι δυνατή όταν το περιεχόμενο έχει ληφθεί από έναν εξωτερικό ιστότοπο GrabImagesInto=Πιάσε επίσης τις εικόνες που βρέθηκαν στο css και τη σελίδα. ImagesShouldBeSavedInto=Οι εικόνες πρέπει να αποθηκεύονται στον κατάλογο @@ -121,6 +122,9 @@ BackToHomePage=Επιστροφή στην αρχική σελίδα... TranslationLinks=Μεταφραστικές συνδέσεις YouTryToAccessToAFileThatIsNotAWebsitePage=Προσπαθείτε να έχετε πρόσβαση σε μια σελίδα που δεν είναι σελίδα ιστότοπου UseTextBetween5And70Chars=Για καλές πρακτικές SEO, χρησιμοποιήστε ένα κείμενο μεταξύ 5 και 70 χαρακτήρων -MainLanguage=Main language -OtherLanguages=Other languages -UseManifest=Provide a manifest.json file +MainLanguage=Κύρια γλώσσα +OtherLanguages=Άλλες γλώσσες +UseManifest=Καταχωρίστε ένα αρχείο manifest.json +PublicAuthorAlias=Δημόσιο συντάκτης ψευδώνυμο +AvailableLanguagesAreDefinedIntoWebsiteProperties=Οι διαθέσιμες γλώσσες ορίζονται σε ιδιότητες ιστότοπου +ReplacementDoneInXPages=Η αντικατάσταση έγινε σε σελίδες ή κοντέινερ %s diff --git a/htdocs/langs/el_GR/zapier.lang b/htdocs/langs/el_GR/zapier.lang new file mode 100644 index 00000000000..b8f19d33469 --- /dev/null +++ b/htdocs/langs/el_GR/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier για Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Μονάδα Zapier για Dolibarr + +# +# Admin page +# +ZapierForDolibarrSetup = Εγκατάσταση του Zapier για Dolibarr diff --git a/htdocs/langs/en_AU/accountancy.lang b/htdocs/langs/en_AU/accountancy.lang new file mode 100644 index 00000000000..9827b9d3795 --- /dev/null +++ b/htdocs/langs/en_AU/accountancy.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - accountancy +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 diff --git a/htdocs/langs/en_AU/admin.lang b/htdocs/langs/en_AU/admin.lang index d4c9f69d86a..df7c865148f 100644 --- a/htdocs/langs/en_AU/admin.lang +++ b/htdocs/langs/en_AU/admin.lang @@ -1,13 +1,8 @@ # Dolibarr language file - Source file is en_US - admin -YouCanSubmitFile=You can upload the .zip file of module package from here: OldVATRates=Old GST rate NewVATRates=New GST rate -Module50150Desc=Point of Sale module TakePOS (touchscreen POS, for shops, bars or restaurants). DictionaryVAT=GST Rates or Sales Tax Rates -ValueOfConstantKey=Value of a configuration constant OptionVatMode=GST due -SuppliersCommandModel=Complete template of Purchase Order -SuppliersInvoiceModel=Complete template of Vendor Invoice 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. EmailCollectorLoadThirdPartyHelp=You can use this action to use the email content to find and load an existing thirdparty in your database. The found (or created) thirdparty will be used for following actions that need it. In the parameter field you can use for example 'EXTRACT:BODY:Name:\\s([^\\s]*)' if you want to extract the name of the thirdparty from a string 'Name: name to find' found into the body. diff --git a/htdocs/langs/en_AU/bills.lang b/htdocs/langs/en_AU/bills.lang index c77da1a3417..840cd00451e 100644 --- a/htdocs/langs/en_AU/bills.lang +++ b/htdocs/langs/en_AU/bills.lang @@ -11,4 +11,4 @@ MenuCheques=Cheques NewChequeDeposit=New Cheque deposit Cheques=Cheques NbCheque=Number of cheques -PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template (old implementation of Sponge template) +PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template diff --git a/htdocs/langs/en_AU/compta.lang b/htdocs/langs/en_AU/compta.lang index 83b73fd798d..b5831e1cb0e 100644 --- a/htdocs/langs/en_AU/compta.lang +++ b/htdocs/langs/en_AU/compta.lang @@ -8,7 +8,6 @@ CheckReceipt=Cheque deposit CheckReceiptShort=Cheque deposit NewCheckDeposit=New cheque deposit DateChequeReceived=Cheque received date -RulesResultDue=- It includes outstanding invoices, expenses, GST, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the validation date of invoices and GST and on the due date for expenses. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- It includes the real payments made on invoices, expenses, GST and salaries.
    - It is based on the payment dates of the invoices, expenses, GST and salaries. The donation date for donation. VATReportByCustomersInInputOutputMode=Report by the customer GST collected and paid SeeVATReportInInputOutputMode=See report %sGST encasement%s for a standard calculation diff --git a/htdocs/langs/en_AU/modulebuilder.lang b/htdocs/langs/en_AU/modulebuilder.lang new file mode 100644 index 00000000000..8bbcc78a506 --- /dev/null +++ b/htdocs/langs/en_AU/modulebuilder.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - modulebuilder +ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: diff --git a/htdocs/langs/en_AU/projects.lang b/htdocs/langs/en_AU/projects.lang new file mode 100644 index 00000000000..7e42793b0e9 --- /dev/null +++ b/htdocs/langs/en_AU/projects.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - projects +CantRemoveProject=This project can't be removed as it is referenced by some other objects (invoice, orders or other). See referers tab. diff --git a/htdocs/langs/en_CA/accountancy.lang b/htdocs/langs/en_CA/accountancy.lang new file mode 100644 index 00000000000..9827b9d3795 --- /dev/null +++ b/htdocs/langs/en_CA/accountancy.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - accountancy +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 diff --git a/htdocs/langs/en_CA/admin.lang b/htdocs/langs/en_CA/admin.lang index 3f3f6558559..993708b8fd5 100644 --- a/htdocs/langs/en_CA/admin.lang +++ b/htdocs/langs/en_CA/admin.lang @@ -1,12 +1,7 @@ # Dolibarr language file - Source file is en_US - admin -YouCanSubmitFile=You can upload the .zip file of module package from here: -Module50150Desc=Point of Sale module TakePOS (touchscreen POS, for shops, bars or restaurants). LocalTax1Management=PST Management -ValueOfConstantKey=Value of a configuration constant CompanyZip=Postal code LDAPFieldZip=Postal code -SuppliersCommandModel=Complete template of Purchase Order -SuppliersInvoiceModel=Complete template of Vendor Invoice 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. EmailCollectorLoadThirdPartyHelp=You can use this action to use the email content to find and load an existing thirdparty in your database. The found (or created) thirdparty will be used for following actions that need it. In the parameter field you can use for example 'EXTRACT:BODY:Name:\\s([^\\s]*)' if you want to extract the name of the thirdparty from a string 'Name: name to find' found into the body. diff --git a/htdocs/langs/en_CA/modulebuilder.lang b/htdocs/langs/en_CA/modulebuilder.lang new file mode 100644 index 00000000000..8bbcc78a506 --- /dev/null +++ b/htdocs/langs/en_CA/modulebuilder.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - modulebuilder +ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: diff --git a/htdocs/langs/en_CA/projects.lang b/htdocs/langs/en_CA/projects.lang new file mode 100644 index 00000000000..7e42793b0e9 --- /dev/null +++ b/htdocs/langs/en_CA/projects.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - projects +CantRemoveProject=This project can't be removed as it is referenced by some other objects (invoice, orders or other). See referers tab. diff --git a/htdocs/langs/en_GB/accountancy.lang b/htdocs/langs/en_GB/accountancy.lang index 87d8baba586..c85327052ee 100644 --- a/htdocs/langs/en_GB/accountancy.lang +++ b/htdocs/langs/en_GB/accountancy.lang @@ -83,7 +83,6 @@ ErrorDebitCredit=Debit and Credit fields cannot have values at the same time AddCompteFromBK=Add finance accounts to the group ListAccounts=List of the financial accounts Pcgtype=Group account -PcgtypeDesc=Group 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. DescVentilCustomer=View the list of customer invoice lines linked (or not) to a product financial account DescVentilDoneCustomer=View a detailed list of invoices, customers and their product financial account DescVentilTodoCustomer=Link invoice lines not already linked with a product finance account diff --git a/htdocs/langs/en_GB/admin.lang b/htdocs/langs/en_GB/admin.lang index 41895afffce..ee36872cc67 100644 --- a/htdocs/langs/en_GB/admin.lang +++ b/htdocs/langs/en_GB/admin.lang @@ -31,7 +31,6 @@ ModuleFamilyTechnic=Multi-module tools NotExistsDirect=The alternative root directory is not defined in an existing directory.
    InfDirAlt=Since version 3, it is possible to define an alternative root directory. This allows you to store, in a dedicated directory, plug-ins and custom templates.
    Just create a directory at the root of Dolibarr (eg: custom).
    InfDirExample=
    Then declare it in the file conf.php
    $dolibarr_main_url_root_alt='/custom'
    $dolibarr_main_document_root_alt='/path/of/dolibarr/htdocs/custom'
    If these lines start with a "#", they are comments. To enable them, just remove the "#" character and save the file. -YouCanSubmitFile=You can upload the .zip file of module package from here: GenericMaskCodes=You may enter any numbering mask. In this mask, the following tags could be used:
    {000000} corresponds to a number which will be incremented on each %s. Enter as many zeros to the desired length of the counter. The counter will be completed by zeros from the left in order to have as many zeros as the mask.
    {000000+000} same as previous but an offset corresponding to the number to the right of the + sign is applied starting on first %s.
    {000000@x} same as previous but the counter is reset to zero when month x is reached (x between 1 and 12, or 0 to use the early months of fiscal year defined in your configuration, or 99 to reset to zero every month). If this option is used and x is 2 or higher, then sequence {yy}{mm} or {yyyy}{mm} is also required.
    {dd} day (01 to 31).
    {mm} month (01 to 12).
    {yy}, {yyyy} or {y} year over 2, 4 or 1 numbers.
    GenericMaskCodes2={cccc} the client code is n characters
    {cccc000} the client code of n characters is followed by a counter dedicated per customer. This counter dedicated per customer is reset at same time as the global counter.
    {tttt} The code of third party type of n characters (see menu Home - Setup - Dictionary - Types of third parties). If you add this tag, the counter will be different for each type of third party.
    GenericMaskCodes4a=Example of the 99th %s of the third party TheCompany, with date 2007-01-31:
    @@ -42,15 +41,11 @@ 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: -Module50150Desc=Point of Sale module TakePOS (touchscreen POS, for shops, bars or restaurants). Module50200Name=PayPal DictionaryAccountancyJournal=Finance journals -ValueOfConstantKey=Value of a configuration constant 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 -SuppliersCommandModel=Complete template of Purchase Order -SuppliersInvoiceModel=Complete template of Vendor Invoice 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. EmailCollectorLoadThirdPartyHelp=You can use this action to use the email content to find and load an existing thirdparty in your database. The found (or created) thirdparty will be used for following actions that need it. In the parameter field you can use for example 'EXTRACT:BODY:Name:\\s([^\\s]*)' if you want to extract the name of the thirdparty from a string 'Name: name to find' found into the body. diff --git a/htdocs/langs/en_GB/bills.lang b/htdocs/langs/en_GB/bills.lang index 0d3b3922da9..aab486542a5 100644 --- a/htdocs/langs/en_GB/bills.lang +++ b/htdocs/langs/en_GB/bills.lang @@ -4,7 +4,6 @@ InvoiceDepositAsk=Deposit invoice InvoiceDepositDesc=This kind of invoice is raised when a deposit has been received. PaymentHigherThanReminderToPay=Payment higher than balance outstanding ConfirmValidatePayment=Are you sure you want to validate this payment? No changes can be made once payment is validated. -ShowInvoiceDeposit=Show deposit invoice AlreadyPaidNoCreditNotesNoDeposits=Already paid (without credit notes and deposits) EscompteOffered=Disc. offered (early pmt) Deposit=Deposit @@ -21,6 +20,6 @@ PrettyLittleSentence=Accept the amount of payments due by cheques issued in my n MenuCheques=Cheques Cheques=Cheques NbCheque=Number of cheques -PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template (old implementation of Sponge template) +PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template MarsNumRefModelDesc1=Return number with format %syymm-nnnn for standard invoices, %syymm-nnnn for replacement invoices, %syymm-nnnn for deposit invoices and %syymm-nnnn for credit notes where yy is year, mm is month and nnnn is a sequence with no break and no return to 0 CactusNumRefModelDesc1=Return number with format %syymm-nnnn for standard invoices, %syymm-nnnn for credit notes and %syymm-nnnn for deposit invoices where yy is year, mm is month and nnnn is a sequence with no break and no return to 0 diff --git a/htdocs/langs/en_GB/donations.lang b/htdocs/langs/en_GB/donations.lang new file mode 100644 index 00000000000..d5a1d7a9289 --- /dev/null +++ b/htdocs/langs/en_GB/donations.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - donations +DonationsModels=Documents examples for donation receipts +IConfirmDonationReception=The recipient declares receipt, as a donation, of the following amount diff --git a/htdocs/langs/en_GB/externalsite.lang b/htdocs/langs/en_GB/externalsite.lang new file mode 100644 index 00000000000..1febedb9fed --- /dev/null +++ b/htdocs/langs/en_GB/externalsite.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - externalsite +ExternalSiteModuleNotComplete=Module "External Site" was not configured properly. diff --git a/htdocs/langs/en_GB/ftp.lang b/htdocs/langs/en_GB/ftp.lang new file mode 100644 index 00000000000..f1ea309c715 --- /dev/null +++ b/htdocs/langs/en_GB/ftp.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - ftp +FTPFailedToRemoveFile=Failed to delete file %s. diff --git a/htdocs/langs/en_GB/modulebuilder.lang b/htdocs/langs/en_GB/modulebuilder.lang new file mode 100644 index 00000000000..8bbcc78a506 --- /dev/null +++ b/htdocs/langs/en_GB/modulebuilder.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - modulebuilder +ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: diff --git a/htdocs/langs/en_GB/multicurrency.lang b/htdocs/langs/en_GB/multicurrency.lang new file mode 100644 index 00000000000..84e26a93979 --- /dev/null +++ b/htdocs/langs/en_GB/multicurrency.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - multicurrency +ErrorDeleteCurrencyFail=Error deletion failed diff --git a/htdocs/langs/en_GB/orders.lang b/htdocs/langs/en_GB/orders.lang index 4d67f6d53dc..c667519bb39 100644 --- a/htdocs/langs/en_GB/orders.lang +++ b/htdocs/langs/en_GB/orders.lang @@ -2,7 +2,5 @@ StatusOrderCanceledShort=Cancelled StatusOrderCanceled=Cancelled PDFEinsteinDescription=A complete order model -PDFEratostheneDescription=A complete order model -PDFProformaDescription=A complete Proforma invoice template StatusSupplierOrderCanceledShort=Cancelled StatusSupplierOrderCanceled=Cancelled diff --git a/htdocs/langs/en_GB/paypal.lang b/htdocs/langs/en_GB/paypal.lang new file mode 100644 index 00000000000..7af701c5d12 --- /dev/null +++ b/htdocs/langs/en_GB/paypal.lang @@ -0,0 +1,5 @@ +# Dolibarr language file - Source file is en_US - paypal +PAYPAL_API_SANDBOX=Mode (test/sandbox) +PaypalModeIntegral=Integrated +ThisIsTransactionId=This is the transaction id: %s +PaymentSystemConfirmPaymentPageWasCalledButFailed=Payment confirmation page was called by payment system, returned an error diff --git a/htdocs/langs/en_GB/propal.lang b/htdocs/langs/en_GB/propal.lang index a4683b58bfe..89a6773cd33 100644 --- a/htdocs/langs/en_GB/propal.lang +++ b/htdocs/langs/en_GB/propal.lang @@ -1,4 +1,3 @@ # Dolibarr language file - Source file is en_US - propal DocModelAzurDescription=A complete proposal model -DocModelCyanDescription=A complete proposal model DefaultModelPropalCreate=Default template creation diff --git a/htdocs/langs/en_GB/salaries.lang b/htdocs/langs/en_GB/salaries.lang new file mode 100644 index 00000000000..6023f538fa0 --- /dev/null +++ b/htdocs/langs/en_GB/salaries.lang @@ -0,0 +1,4 @@ +# Dolibarr language file - Source file is en_US - salaries +SALARIES_ACCOUNTING_ACCOUNT_PAYMENT=Financial account used for user third parties +SALARIES_ACCOUNTING_ACCOUNT_CHARGE=Financial account by default for wage payments +SalariesPayments=Salaries payment diff --git a/htdocs/langs/en_GB/sms.lang b/htdocs/langs/en_GB/sms.lang new file mode 100644 index 00000000000..4cc61b0bafc --- /dev/null +++ b/htdocs/langs/en_GB/sms.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - sms +Sms=SMS diff --git a/htdocs/langs/en_IN/accountancy.lang b/htdocs/langs/en_IN/accountancy.lang new file mode 100644 index 00000000000..9827b9d3795 --- /dev/null +++ b/htdocs/langs/en_IN/accountancy.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - accountancy +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 diff --git a/htdocs/langs/en_IN/admin.lang b/htdocs/langs/en_IN/admin.lang index 74c99fddfd7..89d0c0fbdb8 100644 --- a/htdocs/langs/en_IN/admin.lang +++ b/htdocs/langs/en_IN/admin.lang @@ -1,8 +1,6 @@ # Dolibarr language file - Source file is en_US - admin -YouCanSubmitFile=You can upload the .zip file of module package from here: Module20Name=Quotations Module20Desc=Management of quotations -Module50150Desc=Point of Sale module TakePOS (touchscreen POS, for shops, bars or restaurants). Permission21=Read quotations Permission22=Create/modify quotations Permission24=Validate quotations @@ -10,14 +8,11 @@ Permission25=Send quotations Permission26=Close quotations Permission27=Delete quotations Permission28=Export quotations -ValueOfConstantKey=Value of a configuration constant PropalSetup=Quotation module setup ProposalsNumberingModules=Quotation numbering models ProposalsPDFModules=Quotation documents models FreeLegalTextOnProposal=Free text on quotations WatermarkOnDraftProposal=Watermark on draft quotations (none if empty) -SuppliersCommandModel=Complete template of Purchase Order -SuppliersInvoiceModel=Complete template of Vendor Invoice 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. EmailCollectorLoadThirdPartyHelp=You can use this action to use the email content to find and load an existing thirdparty in your database. The found (or created) thirdparty will be used for following actions that need it. In the parameter field you can use for example 'EXTRACT:BODY:Name:\\s([^\\s]*)' if you want to extract the name of the thirdparty from a string 'Name: name to find' found into the body. diff --git a/htdocs/langs/en_IN/bills.lang b/htdocs/langs/en_IN/bills.lang index fd7a230ef58..28c917fc8f8 100644 --- a/htdocs/langs/en_IN/bills.lang +++ b/htdocs/langs/en_IN/bills.lang @@ -1,3 +1,3 @@ # Dolibarr language file - Source file is en_US - bills RelatedCommercialProposals=Related quotations -PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template (old implementation of Sponge template) +PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template diff --git a/htdocs/langs/en_IN/install.lang b/htdocs/langs/en_IN/install.lang index 03e38043ed8..7384fe6fdc4 100644 --- a/htdocs/langs/en_IN/install.lang +++ b/htdocs/langs/en_IN/install.lang @@ -1,3 +1,2 @@ # Dolibarr language file - Source file is en_US - install -DirectoryRecommendation=IMPORTANT: You must use a directory that is outside of the web pages (so do not use a subdirectory of previous parameter). MigrationProposal=Data migration for quotations diff --git a/htdocs/langs/en_IN/modulebuilder.lang b/htdocs/langs/en_IN/modulebuilder.lang new file mode 100644 index 00000000000..8bbcc78a506 --- /dev/null +++ b/htdocs/langs/en_IN/modulebuilder.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - modulebuilder +ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: diff --git a/htdocs/langs/en_IN/other.lang b/htdocs/langs/en_IN/other.lang index 9389a3062de..47ee7b86fa1 100644 --- a/htdocs/langs/en_IN/other.lang +++ b/htdocs/langs/en_IN/other.lang @@ -3,4 +3,3 @@ Notify_PROPAL_VALIDATE=Quotation validated Notify_PROPAL_SENTBYMAIL=Quotation sent by mail NumberOfProposals=Number of quotations NumberOfUnitsProposals=Number of units on quotations -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. diff --git a/htdocs/langs/en_IN/propal.lang b/htdocs/langs/en_IN/propal.lang index e9479092f9b..98d690728a5 100644 --- a/htdocs/langs/en_IN/propal.lang +++ b/htdocs/langs/en_IN/propal.lang @@ -20,4 +20,3 @@ ActionsOnPropal=Events on quotation DatePropal=Date of quotation ProposalLine=Quotation line DocModelAzurDescription=A complete proposal model -DocModelCyanDescription=A complete proposal model diff --git a/htdocs/langs/en_SG/accountancy.lang b/htdocs/langs/en_SG/accountancy.lang new file mode 100644 index 00000000000..9827b9d3795 --- /dev/null +++ b/htdocs/langs/en_SG/accountancy.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - accountancy +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 diff --git a/htdocs/langs/en_SG/admin.lang b/htdocs/langs/en_SG/admin.lang new file mode 100644 index 00000000000..ba0e9ccd3d4 --- /dev/null +++ b/htdocs/langs/en_SG/admin.lang @@ -0,0 +1,6 @@ +# Dolibarr language file - Source file is en_US - admin +MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the maximum filesize for upload to %s %s, irrespective of the value of this parameter +Module56Name=Telephony +Module56Desc=Telephony integration +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. +EmailCollectorLoadThirdPartyHelp=You can use this action to use the email content to find and load an existing thirdparty in your database. The found (or created) thirdparty will be used for following actions that need it. In the parameter field you can use for example 'EXTRACT:BODY:Name:\\s([^\\s]*)' if you want to extract the name of the thirdparty from a string 'Name: name to find' found into the body. diff --git a/htdocs/langs/en_SG/companies.lang b/htdocs/langs/en_SG/companies.lang new file mode 100644 index 00000000000..6897cf22f06 --- /dev/null +++ b/htdocs/langs/en_SG/companies.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - companies +Contact=Contact diff --git a/htdocs/langs/en_SG/main.lang b/htdocs/langs/en_SG/main.lang new file mode 100644 index 00000000000..2e691473326 --- /dev/null +++ b/htdocs/langs/en_SG/main.lang @@ -0,0 +1,21 @@ +# Dolibarr language file - Source file is en_US - main +DIRECTION=ltr +FONTFORPDF=helvetica +FONTSIZEFORPDF=10 +SeparatorDecimal=. +SeparatorThousand=, +FormatDateShort=%m/%d/%Y +FormatDateShortInput=%m/%d/%Y +FormatDateShortJava=MM/dd/yyyy +FormatDateShortJavaInput=MM/dd/yyyy +FormatDateShortJQuery=mm/dd/yy +FormatDateShortJQueryInput=mm/dd/yy +FormatHourShortJQuery=HH:MI +FormatHourShort=%I:%M %p +FormatHourShortDuration=%H:%M +FormatDateTextShort=%b %d, %Y +FormatDateText=%B %d, %Y +FormatDateHourShort=%m/%d/%Y %I:%M %p +FormatDateHourSecShort=%m/%d/%Y %I:%M:%S %p +FormatDateHourTextShort=%b %d, %Y, %I:%M %p +FormatDateHourText=%B %d, %Y, %I:%M %p diff --git a/htdocs/langs/en_SG/modulebuilder.lang b/htdocs/langs/en_SG/modulebuilder.lang new file mode 100644 index 00000000000..8bbcc78a506 --- /dev/null +++ b/htdocs/langs/en_SG/modulebuilder.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - modulebuilder +ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: diff --git a/htdocs/langs/en_SG/projects.lang b/htdocs/langs/en_SG/projects.lang new file mode 100644 index 00000000000..7e42793b0e9 --- /dev/null +++ b/htdocs/langs/en_SG/projects.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - projects +CantRemoveProject=This project can't be removed as it is referenced by some other objects (invoice, orders or other). See referers tab. diff --git a/htdocs/langs/en_US/accountancy.lang b/htdocs/langs/en_US/accountancy.lang index ba34d38f36e..be6ca9e2f19 100644 --- a/htdocs/langs/en_US/accountancy.lang +++ b/htdocs/langs/en_US/accountancy.lang @@ -58,8 +58,8 @@ AccountancyAreaDescActionOnceBis=Next steps should be done to save you time in f AccountancyAreaDescActionFreq=The following actions are usually executed every month, week or day for very large companies... 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 +AccountancyAreaDescChartModel=STEP %s: Check that a model of chart of account exists or create one from menu %s +AccountancyAreaDescChart=STEP %s: Select and|or complete your chart of account from menu %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. @@ -121,6 +121,7 @@ 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 +TotalForAccount=Total for accounting account Ventilate=Bind @@ -233,8 +234,10 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unkno ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error PaymentsNotLinkedToProduct=Payment not linked to any product / service +OpeningBalance=Opening balance ShowOpeningBalance=Show opening balance HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Group of account PcgtypeDesc=Group 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. @@ -314,12 +317,13 @@ 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_LDCompta=Export for LD Compta (v9) (Test) Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Chart of accounts Id ## Tools - Init accounting account on product / service diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang index 58e5cecf39d..fef27b5b7de 100644 --- a/htdocs/langs/en_US/admin.lang +++ b/htdocs/langs/en_US/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Web server user/group NoSessionFound=Your PHP configuration seems to not allow listing of active sessions. The directory used to save sessions (%s) may be protected (for example by OS permissions or by PHP directive open_basedir). DBStoringCharset=Database charset to store data DBSortingCharset=Database charset to sort data +HostCharset=Host charset ClientCharset=Client charset ClientSortingCharset=Client collation WarningModuleNotActive=Module %s must be enabled @@ -94,7 +95,7 @@ NextValueForInvoices=Next value (invoices) NextValueForCreditNotes=Next value (credit notes) NextValueForDeposit=Next value (down payment) NextValueForReplacements=Next value (replacements) -MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the maximum filesize for upload to %s %s, irrespective of the value of this parameter +MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the maximum filesize for upload to %s %s, irrespective of the value of this parameter NoMaxSizeByPHPLimit=Note: No limit is set in your PHP configuration MaxSizeForUploadedFiles=Maximum size for uploaded files (0 to disallow any upload) UseCaptchaCode=Use graphical code (CAPTCHA) on login page @@ -427,7 +428,7 @@ ExtrafieldCheckBox=Checkboxes ExtrafieldCheckBoxFromList=Checkboxes from table ExtrafieldLink=Link to an object ComputedFormula=Computed field -ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Store computed field ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! ExtrafieldParamHelpPassword=Leaving this field blank means this value will be stored without encryption (field must be only hidden with star on screen).
    Set 'auto' to use the default encryption rule to save password into database (then value read will be the hash only, no way to retrieve original value) @@ -540,8 +541,8 @@ Module54Name=Contracts/Subscriptions Module54Desc=Management of contracts (services or recurring subscriptions) Module55Name=Barcodes Module55Desc=Barcode management -Module56Name=Telephony -Module56Desc=Telephony integration +Module56Name=Payment by bank transfer +Module56Desc=Management of payment by bank transfer orders. It includes generation of SEPA file for European countries. Module57Name=Bank Direct Debit payments Module57Desc=Management of Direct Debit payment orders. It includes generation of SEPA file for European countries. Module58Name=ClickToDial @@ -1015,7 +1016,7 @@ LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices LocalTax2IsNotUsedDescES=By default the proposed IRPF is 0. End of rule. LocalTax2IsUsedExampleES=In Spain, freelancers and independent professionals who provide services and companies who have chosen the tax system of modules. LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. -RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps des not provide any reporting. Only few countries uses this type of tax. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. UseRevenueStamp=Use a tax stamp UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=Reports on local taxes @@ -1144,6 +1145,7 @@ AvailableModules=Available app/modules ToActivateModule=To activate modules, go on setup Area (Home->Setup->Modules). SessionTimeOut=Time out for session SessionExplanation=This number guarantees that the session will never expire before this delay, if the session cleaner is done by Internal PHP session cleaner (and nothing else). Internal PHP session cleaner does not guarantee that the session will expire after this delay. It will expire, after this delay, and when the session cleaner is run, so every %s/%s access, but only during access made by other sessions (if value is 0, it means clearing of session is done only by an external process).
    Note: on some servers with an external session cleaning mechanism (cron under debian, ubuntu ...), the sessions can be destroyed after a period defined by an external setup, no matter what the value entered here is. +SessionsPurgedByExternalSystem=Sessions on this server seems to be cleaned by an external mechanism (cron under debian, ubuntu ...), probably every %s seconds (= value of parameter session.gc_maxlifetime), so changing the value here has no effect. You must ask the server administrator to change session delay. TriggersAvailable=Available triggers TriggersDesc=Triggers are files that will modify the behavior of Dolibarr workflow once copied into the directory htdocs/core/triggers. They realize new actions, activated on Dolibarr events (new company creation, invoice validation, ...). TriggerDisabledByName=Triggers in this file are disabled by the -NORUN suffix in their name. @@ -1272,6 +1274,7 @@ RuleForGeneratedPasswords=Rules to generate and validate passwords DisableForgetPasswordLinkOnLogonPage=Do not show the "Password Forgotten" link on the Login page UsersSetup=Users module setup UserMailRequired=Email required to create a new user +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) UsersDocModules=Document templates for documents generated from user record GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### @@ -1803,6 +1806,7 @@ TopMenuDisableImages=Hide images in Top menu LeftMenuBackgroundColor=Background color for Left menu BackgroundTableTitleColor=Background color for Table title line BackgroundTableTitleTextColor=Text color for Table title line +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Background color for odd table lines BackgroundTableLineEvenColor=Background color for even table lines MinimumNoticePeriod=Minimum notice period (Your leave request must be done before this delay) @@ -1936,7 +1940,7 @@ WithoutDolTrackingID=Dolibarr Reference not found in Message ID FormatZip=Zip MainMenuCode=Menu entry code (mainmenu) ECMAutoTree=Show automatic ECM tree -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. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\s*([^\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\s([^\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Opening hours OpeningHoursDesc=Enter here the regular opening hours of your company. ResourceSetup=Configuration of Resource module @@ -1995,3 +1999,5 @@ PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/en_US/agenda.lang b/htdocs/langs/en_US/agenda.lang index f4c8c5b4fbc..bb2ba38b297 100644 --- a/htdocs/langs/en_US/agenda.lang +++ b/htdocs/langs/en_US/agenda.lang @@ -112,8 +112,10 @@ BOM_CLOSEInDolibarr=BOM disabled BOM_REOPENInDolibarr=BOM reopen BOM_DELETEInDolibarr=BOM deleted MRP_MO_VALIDATEInDolibarr=MO validated +MRP_MO_UNVALIDATEInDolibarr=MO set to draft status MRP_MO_PRODUCEDInDolibarr=MO produced MRP_MO_DELETEInDolibarr=MO deleted +MRP_MO_CANCELInDolibarr=MO canceled ##### End agenda events ##### AgendaModelModule=Document templates for event DateActionStart=Start date @@ -152,3 +154,6 @@ EveryMonth=Every month DayOfMonth=Day of month DayOfWeek=Day of week DateStartPlusOne=Date start + 1 hour +SetAllEventsToTodo=Set all events to todo +SetAllEventsToInProgress=Set all events to in progress +SetAllEventsToFinished=Set all events to finished diff --git a/htdocs/langs/en_US/banks.lang b/htdocs/langs/en_US/banks.lang index e54239e9fb2..48bd2b81c2e 100644 --- a/htdocs/langs/en_US/banks.lang +++ b/htdocs/langs/en_US/banks.lang @@ -37,6 +37,8 @@ IbanValid=BAN valid IbanNotValid=BAN not valid StandingOrders=Direct Debit orders StandingOrder=Direct debit order +PaymentByBankTransfers=Payments by bank transfer +PaymentByBankTransfer=Payment by bank transfer AccountStatement=Account statement AccountStatementShort=Statement AccountStatements=Account statements diff --git a/htdocs/langs/en_US/bills.lang b/htdocs/langs/en_US/bills.lang index ab26114d905..c5637c13cee 100644 --- a/htdocs/langs/en_US/bills.lang +++ b/htdocs/langs/en_US/bills.lang @@ -209,13 +209,6 @@ NumberOfBillsByMonth=No. of invoices per month AmountOfBills=Amount of invoices AmountOfBillsHT=Amount of invoices (net of tax) AmountOfBillsByMonthHT=Amount of invoices by month (net of tax) -ShowSocialContribution=Show social/fiscal tax -ShowBill=Show invoice -ShowInvoice=Show invoice -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 @@ -233,7 +226,6 @@ 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 AlreadyPaidNoCreditNotesNoDeposits=Already paid (without credit notes and down payments) @@ -251,6 +243,8 @@ SendBillRef=Submission of invoice %s SendReminderBillRef=Submission of invoice %s (reminder) StandingOrders=Direct debit orders StandingOrder=Direct debit order +PaymentByBankTransfers=Payments by bank transfer +PaymentByBankTransfer=Payment by bank transfer NoDraftBills=No draft invoices NoOtherDraftBills=No other draft invoices NoDraftInvoices=No draft invoices @@ -393,6 +387,7 @@ GeneratedFromTemplate=Generated from template invoice %s WarningInvoiceDateInFuture=Warning, the invoice date is higher than current date WarningInvoiceDateTooFarInFuture=Warning, the invoice date is too far from current date ViewAvailableGlobalDiscounts=View available discounts +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Status PaymentConditionShortRECEP=Due Upon Receipt @@ -579,3 +574,4 @@ AutoFillDateToShort=Set end date MaxNumberOfGenerationReached=Max number of gen. reached BILL_DELETEInDolibarr=Invoice deleted BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted +UnitPriceXQtyLessDiscount=Unit price x Qty - Discount diff --git a/htdocs/langs/en_US/cashdesk.lang b/htdocs/langs/en_US/cashdesk.lang index f2bc989b953..52c2004c1c7 100644 --- a/htdocs/langs/en_US/cashdesk.lang +++ b/htdocs/langs/en_US/cashdesk.lang @@ -95,7 +95,7 @@ PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal TakeposNumpadUsePaymentIcon=Use payment icon on numpad -CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskRefNumberingModules=Numbering module for POS sales CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number TakeposGroupSameProduct=Group same products lines StartAParallelSale=Start a new parallel sale @@ -105,4 +105,6 @@ CashReport=Cash report MainPrinterToUse=Main printer to use OrderPrinterToUse=Order printer to use MainTemplateToUse=Main template to use -OrderTemplateToUse=Order template to use \ No newline at end of file +OrderTemplateToUse=Order template to use +BarRestaurant=Bar Restaurant +AutoOrder=Customer auto order \ No newline at end of file diff --git a/htdocs/langs/en_US/categories.lang b/htdocs/langs/en_US/categories.lang index 30bace0574c..9bb71984ecf 100644 --- a/htdocs/langs/en_US/categories.lang +++ b/htdocs/langs/en_US/categories.lang @@ -86,4 +86,5 @@ ByDefaultInList=By default in list ChooseCategory=Choose category StocksCategoriesArea=Warehouses Categories Area ActionCommCategoriesArea=Events Categories Area +WebsitePagesCategoriesArea=Page-Container Categories Area UseOrOperatorForCategories=Use or operator for categories diff --git a/htdocs/langs/en_US/companies.lang b/htdocs/langs/en_US/companies.lang index f8b3d0354e2..1a9208bcf85 100644 --- a/htdocs/langs/en_US/companies.lang +++ b/htdocs/langs/en_US/companies.lang @@ -19,7 +19,6 @@ ProspectionArea=Prospection area IdThirdParty=Id third party IdCompany=Company Id IdContact=Contact Id -Contacts=Contacts/Addresses ThirdPartyContacts=Third-party contacts ThirdPartyContact=Third-party contact/address Company=Company @@ -298,7 +297,8 @@ AddContact=Create contact AddContactAddress=Create contact/address EditContact=Edit contact EditContactAddress=Edit contact/address -Contact=Contact +Contact=Contact/Address +Contacts=Contacts/Addresses ContactId=Contact id ContactsAddresses=Contacts/Addresses FromContactName=Name: @@ -325,7 +325,8 @@ CompanyDeleted=Company "%s" deleted from database. ListOfContacts=List of contacts/addresses ListOfContactsAddresses=List of contacts/addresses ListOfThirdParties=List of Third Parties -ShowContact=Show contact +ShowCompany=Third Party +ShowContact=Contact-Address ContactsAllShort=All (No filter) ContactType=Contact type ContactForOrders=Order's contact diff --git a/htdocs/langs/en_US/compta.lang b/htdocs/langs/en_US/compta.lang index 6cd046c5607..8a8c837ac87 100644 --- a/htdocs/langs/en_US/compta.lang +++ b/htdocs/langs/en_US/compta.lang @@ -262,3 +262,5 @@ RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices don RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. ReportPurchaseTurnover=Purchase turnover invoiced ReportPurchaseTurnoverCollected=Purchase turnover collected +IncludeVarpaysInResults = Include various payments in reports +IncludeLoansInResults = Include loans in reports diff --git a/htdocs/langs/en_US/donations.lang b/htdocs/langs/en_US/donations.lang index a810c61c8f4..de4bdf68f03 100644 --- a/htdocs/langs/en_US/donations.lang +++ b/htdocs/langs/en_US/donations.lang @@ -7,7 +7,6 @@ AddDonation=Create a donation NewDonation=New donation DeleteADonation=Delete a donation ConfirmDeleteADonation=Are you sure you want to delete this donation? -ShowDonation=Show donation PublicDonation=Public donation DonationsArea=Donations area DonationStatusPromiseNotValidated=Draft promise diff --git a/htdocs/langs/en_US/interventions.lang b/htdocs/langs/en_US/interventions.lang index e65b966ea09..e5936f8246e 100644 --- a/htdocs/langs/en_US/interventions.lang +++ b/htdocs/langs/en_US/interventions.lang @@ -41,9 +41,7 @@ InterventionsArea=Interventions area DraftFichinter=Draft interventions LastModifiedInterventions=Latest %s modified interventions FichinterToProcess=Interventions to process -##### Types de contacts ##### TypeContact_fichinter_external_CUSTOMER=Following-up customer contact -# Modele numérotation PrintProductsOnFichinter=Print also lines of type "product" (not only services) on intervention card PrintProductsOnFichinterDetails=interventions generated from orders UseServicesDurationOnFichinter=Use services duration for interventions generated from orders @@ -53,7 +51,6 @@ InterventionStatistics=Statistics of interventions NbOfinterventions=No. of intervention cards NumberOfInterventionsByMonth=No. of intervention cards by month (date of validation) AmountOfInteventionNotIncludedByDefault=Amount of intervention is not included by default into profit (in most cases, timesheets are used to count time spent). Add option PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT to 1 into home-setup-other to include them. -##### Exports ##### InterId=Intervention id InterRef=Intervention ref. InterDateCreation=Date creation intervention @@ -65,3 +62,5 @@ InterLineId=Line id intervention InterLineDate=Line date intervention InterLineDuration=Line duration intervention InterLineDesc=Line description intervention +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/en_US/main.lang b/htdocs/langs/en_US/main.lang index 2082506c405..399219e7f25 100644 --- a/htdocs/langs/en_US/main.lang +++ b/htdocs/langs/en_US/main.lang @@ -187,6 +187,8 @@ ShowCardHere=Show card Search=Search SearchOf=Search SearchMenuShortCut=Ctrl + shift + f +QuickAdd=Quick add +QuickAddMenuShortCut=Ctrl + shift + l Valid=Valid Approve=Approve Disapprove=Disapprove @@ -426,6 +428,7 @@ Modules=Modules/Applications Option=Option List=List FullList=Full list +FullConversation=Full conversation Statistics=Statistics OtherStatistics=Other statistics Status=Status @@ -953,12 +956,13 @@ SearchIntoMembers=Members SearchIntoUsers=Users SearchIntoProductsOrServices=Products or services SearchIntoProjects=Projects +SearchIntoMO=Manufacturing Orders SearchIntoTasks=Tasks SearchIntoCustomerInvoices=Customer invoices SearchIntoSupplierInvoices=Vendor invoices SearchIntoCustomerOrders=Sales orders SearchIntoSupplierOrders=Purchase orders -SearchIntoCustomerProposals=Customer proposals +SearchIntoCustomerProposals=Commercial proposals SearchIntoSupplierProposals=Vendor proposals SearchIntoInterventions=Interventions SearchIntoContracts=Contracts @@ -1028,3 +1032,6 @@ YAxis=Y-Axis StatusOfRefMustBe=Status of %s must be %s DeleteFileHeader=Confirm file delete DeleteFileText=Do you really want delete this file? +ShowOtherLanguages=Show other languages +SwitchInEditModeToAddTranslation=Switch in edit mode to add translations for this language +NotUsedForThisCustomer=Not used for this customer diff --git a/htdocs/langs/en_US/modulebuilder.lang b/htdocs/langs/en_US/modulebuilder.lang index 9dd6e9c9b30..b89e1fb0a38 100644 --- a/htdocs/langs/en_US/modulebuilder.lang +++ b/htdocs/langs/en_US/modulebuilder.lang @@ -27,7 +27,7 @@ DangerZone=Danger zone BuildPackage=Build package BuildPackageDesc=You can generate a zip package of your application so your are ready to distribute it on any Dolibarr. You can also distribute it or sell it on marketplace like DoliStore.com. BuildDocumentation=Build documentation -ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: +ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here ModuleIsLive=This module has been activated. Any change may break a current live feature. DescriptionLong=Long description EditorName=Name of editor @@ -83,8 +83,8 @@ ListOfDictionariesEntries=List of dictionaries entries ListOfPermissionsDefined=List of defined permissions SeeExamples=See examples here EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) -VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update). Using a negative value means field is not shown by default on list but can be selected for viewing). It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty DisplayOnPdf=Display on PDF IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) diff --git a/htdocs/langs/en_US/mrp.lang b/htdocs/langs/en_US/mrp.lang index 4e653e04409..faa8eb60cf4 100644 --- a/htdocs/langs/en_US/mrp.lang +++ b/htdocs/langs/en_US/mrp.lang @@ -56,11 +56,12 @@ ToConsume=To consume ToProduce=To produce QtyAlreadyConsumed=Qty already consumed QtyAlreadyProduced=Qty already produced +QtyRequiredIfNoLoss=Qty required if there is no loss (Manufacturing efficiency is 100%%) ConsumeOrProduce=Consume or Produce ConsumeAndProduceAll=Consume and Produce All Manufactured=Manufactured TheProductXIsAlreadyTheProductToProduce=The product to add is already the product to produce. -ForAQuantityOf1=For a quantity to produce of 1 +ForAQuantityOf=For a quantity to produce of %s ConfirmValidateMo=Are you sure you want to validate this Manufacturing Order? ConfirmProductionDesc=By clicking on '%s', you will validate the consumption and/or production for the quantities set. This will also update the stock and record stock movements. ProductionForRef=Production of %s @@ -73,3 +74,4 @@ ProductsToConsume=Products to consume ProductsToProduce=Products to produce UnitCost=Unit cost TotalCost=Total cost +BOMTotalCost=The cost to produce this BOM based on cost of each quantity and product to consume (use Cost price if defined, else Average Weighted Price if defined, else the Best purchase price) \ No newline at end of file diff --git a/htdocs/langs/en_US/projects.lang b/htdocs/langs/en_US/projects.lang index cdc0e6b3c95..e145647baa4 100644 --- a/htdocs/langs/en_US/projects.lang +++ b/htdocs/langs/en_US/projects.lang @@ -115,7 +115,7 @@ ChildOfTask=Child of task TaskHasChild=Task has child NotOwnerOfProject=Not owner of this private project AffectedTo=Allocated to -CantRemoveProject=This project can't be removed as it is referenced by some other objects (invoice, orders or other). See referers tab. +CantRemoveProject=This project can't be removed as it is referenced by some other objects (invoice, orders or other). See tab '%s'. ValidateProject=Validate projet ConfirmValidateProject=Are you sure you want to validate this project? CloseAProject=Close project @@ -255,7 +255,7 @@ ServiceToUseOnLines=Service to use on lines InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. ProjectFollowOpportunity=Follow opportunity -ProjectFollowTasks=Follow tasks +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Usage: Opportunity UsageTasks=Usage: Tasks diff --git a/htdocs/langs/en_US/stocks.lang b/htdocs/langs/en_US/stocks.lang index 9856649b834..68f75224a08 100644 --- a/htdocs/langs/en_US/stocks.lang +++ b/htdocs/langs/en_US/stocks.lang @@ -218,3 +218,4 @@ InventoryForASpecificWarehouse=Inventory for a specific warehouse InventoryForASpecificProduct=Inventory for a specific product StockIsRequiredToChooseWhichLotToUse=Stock is required to choose which lot to use ForceTo=Force to +AlwaysShowFullArbo=Display full tree of warehouse on popup of warehouse links (Warning: This may decrease dramatically performances) diff --git a/htdocs/langs/en_US/users.lang b/htdocs/langs/en_US/users.lang index aea4e7676e4..9b75a2ff37e 100644 --- a/htdocs/langs/en_US/users.lang +++ b/htdocs/langs/en_US/users.lang @@ -78,6 +78,7 @@ UserWillBeExternalUser=Created user will be an external user (because linked to IdPhoneCaller=Id phone caller NewUserCreated=User %s created NewUserPassword=Password change for %s +NewPasswordValidated=Your new password have been validated and must be used now to login. EventUserModified=User %s modified UserDisabled=User %s disabled UserEnabled=User %s activated diff --git a/htdocs/langs/en_US/website.lang b/htdocs/langs/en_US/website.lang index c3e9870266f..6109f3ca879 100644 --- a/htdocs/langs/en_US/website.lang +++ b/htdocs/langs/en_US/website.lang @@ -57,7 +57,7 @@ NoPageYet=No pages yet YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template SyntaxHelp=Help on specific syntax tips YouCanEditHtmlSourceckeditor=You can edit HTML source code using the "Source" button in editor. -YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Clone page/container CloneSite=Clone site SiteAdded=Website added @@ -77,7 +77,7 @@ BlogPost=Blog post WebsiteAccount=Website account WebsiteAccounts=Website accounts AddWebsiteAccount=Create web site account -BackToListOfThirdParty=Back to list for Third Party +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Disable website first MyContainerTitle=My web site title AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) @@ -127,4 +127,6 @@ OtherLanguages=Other languages UseManifest=Provide a manifest.json file PublicAuthorAlias=Public author alias AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties -ReplacementDoneInXPages=Replacement done in %s pages or containers \ No newline at end of file +ReplacementDoneInXPages=Replacement done in %s pages or containers +RSSFeed=RSS Feed +RSSFeedDesc=You can get a RSS feed of latest articles with type 'blogpost' using this URL \ No newline at end of file diff --git a/htdocs/langs/en_US/withdrawals.lang b/htdocs/langs/en_US/withdrawals.lang index b1d6e30e329..ad51b045a37 100644 --- a/htdocs/langs/en_US/withdrawals.lang +++ b/htdocs/langs/en_US/withdrawals.lang @@ -4,9 +4,13 @@ SuppliersStandingOrdersArea=Direct credit payment orders area StandingOrdersPayment=Direct debit payment orders StandingOrderPayment=Direct debit payment order NewStandingOrder=New direct debit order +NewPaymentByBankTransfer=New payment by bank transfer StandingOrderToProcess=To process +PaymentByBankTransferReceipts=Bank transfer orders +PaymentByBankTransferLines=Bank transfer order lines WithdrawalsReceipts=Direct debit orders WithdrawalReceipt=Direct debit order +LatestBankTransferReceipts=Latest %s bank transfer orders LastWithdrawalReceipts=Latest %s direct debit files WithdrawalsLines=Direct debit order lines RequestStandingOrderToTreat=Request for direct debit payment order to process @@ -14,10 +18,12 @@ RequestStandingOrderTreated=Request for direct debit payment order processed NotPossibleForThisStatusOfWithdrawReceiptORLine=Not yet possible. Withdraw status must be set to 'credited' before declaring reject on specific lines. NbOfInvoiceToWithdraw=No. of qualified invoice with waiting direct debit order NbOfInvoiceToWithdrawWithInfo=No. of customer invoice with direct debit payment orders having defined bank account information +SupplierInvoiceWaitingWithdraw=Vendor invoice waiting for payment by bank transfer InvoiceWaitingWithdraw=Invoice waiting for direct debit AmountToWithdraw=Amount to withdraw WithdrawsRefused=Direct debit refused NoInvoiceToWithdraw=No customer invoice with open 'Direct debit requests' is waiting. Go on tab '%s' on invoice card to make a request. +NoSupplierInvoiceToWithdraw=No supplier invoice with open 'Direct credit requests' is waiting. Go on tab '%s' on invoice card to make a request. ResponsibleUser=User Responsible WithdrawalsSetup=Direct debit payment setup WithdrawStatistics=Direct debit payment statistics diff --git a/htdocs/langs/es_AR/accountancy.lang b/htdocs/langs/es_AR/accountancy.lang new file mode 100644 index 00000000000..021d4098e74 --- /dev/null +++ b/htdocs/langs/es_AR/accountancy.lang @@ -0,0 +1,21 @@ +# Dolibarr language file - Source file is en_US - accountancy +ACCOUNTING_EXPORT_SEPARATORCSV=Separador de columna para exportar archivo +ACCOUNTING_EXPORT_DATE=Formato de fecha para exportar archivo +ACCOUNTING_EXPORT_PIECE=Exportar número de pieza +ACCOUNTING_EXPORT_GLOBAL_ACCOUNT=Exportar con cuenta global +ACCOUNTING_EXPORT_AMOUNT=Exportar monto +ACCOUNTING_EXPORT_DEVISE=Exportar moneda +Selectformat=Elegir el formato del archivo +ACCOUNTING_EXPORT_FORMAT=Seleccione el formato para el archivo +ACCOUNTING_EXPORT_PREFIX_SPEC=Especificar el prefijo para el nombre de archivo +DefaultForService=Predeterminado para servicio +DefaultForProduct=Predeterminado para producto +AccountancySetupDoneFromAccountancyMenu=La mayor parte de la configuración de la contabilidad se hace desde el menú %s +ConfigAccountingExpert=Experto en la configuración del módulo contabilidad +Journalization=Contabilización +Journaux=Diarios Contables +JournalFinancial=Diarios Financieros +AssignDedicatedAccountingAccount=Nueva cuenta para asignar +InvoiceLabel=Etiqueta de la factura +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 diff --git a/htdocs/langs/es_AR/admin.lang b/htdocs/langs/es_AR/admin.lang new file mode 100644 index 00000000000..46e7a7b46eb --- /dev/null +++ b/htdocs/langs/es_AR/admin.lang @@ -0,0 +1,626 @@ +# Dolibarr language file - Source file is en_US - admin +VersionProgram=Version del programa +VersionLastInstall=Versión de instalación inicial +VersionLastUpgrade=Actualización de la última versión +VersionUnknown=Desconocido +VersionRecommanded=Recomendado +FileCheck=Comprobaciones de integridad del conjunto de archivos +FileCheckDesc=Esta herramienta le permite verificar la integridad de los archivos y la configuración de su aplicación, comparando cada archivo con el oficial. También se puede verificar el valor de algunas constantes de configuración. Puede usar esta herramienta para determinar si algún archivo ha sido modificado (por ejemplo, por un pirata informático). +FileIntegrityIsOkButFilesWereAdded=La verificación de integridad de los archivos ha pasado, sin embargo, se han agregado algunos archivos nuevos. +FileIntegritySomeFilesWereRemovedOrModified=La verificación de integridad de archivos ha fallado. Algunos archivos fueron modificados, eliminados o agregados. +GlobalChecksum=Suma de control global +MakeIntegrityAnalysisFrom=Hacer análisis de integridad de los archivos de aplicación de +LocalSignature=Firma local embebida (menos confiable) +RemoteSignature=Firma remota remota (más confiable) +FilesMissing=Archivos perdidos +FilesAdded=Archivos Agregados +FileCheckDolibarr=Comprobar la integridad de los archivos de la aplicación. +AvailableOnlyOnPackagedVersions=El archivo local para la verificación de integridad solo está disponible cuando la aplicación se instala desde un paquete oficial +XmlNotFound=Archivo de integridad xml de aplicación no encontrada +SessionId=ID de sesión +SessionSaveHandler=Controlador para guardar sesiones +SessionSavePath=Ubicación de guardado de sesión +ConfirmPurgeSessions=¿De verdad quieres purgar todas las sesiones? Esto desconectará a todos los usuarios (excepto a ti mismo). +NoSessionListWithThisHandler=Guardar el controlador de sesión configurado en su PHP no permite enumerar todas las sesiones en ejecución. +ConfirmLockNewSessions=¿Estás seguro de que deseas restringir cualquier nueva conexión de Dolibarr a ti mismo? Solo el usuario %s podrá conectarse después de eso. +UnlockNewSessions=Quitar el bloqueo de conexión +YourSession=Tu sesion +Sessions=Sesiones de Usuarios +WebUserGroup=Usuario / grupo del servidor web +NoSessionFound=Su configuración de PHP parece no permitir el listado de sesiones activas. El directorio utilizado para guardar sesiones ( %s ) puede estar protegido (por ejemplo, por permisos del sistema operativo o por la directiva PHP open_basedir). +DBStoringCharset=Codificación de caracteres de base de datos para almacenar datos +DBSortingCharset=Codificación de caracteres de base de datos para ordenar los datos +ClientCharset=Codificación de caracteres del cliente +WarningModuleNotActive=El módulo %s debe estar habilitado +WarningOnlyPermissionOfActivatedModules=Aquí solo se muestran los permisos relacionados con los módulos activados. Puede activar otros módulos en la página Inicio-> Configuración-> Módulos. +DolibarrSetup=Dolibarr instala o actualiza +GUISetup=Monitor +SetupArea=Preparar +UploadNewTemplate=Subir nueva (s) plantilla (s) +FormToTestFileUploadForm=Formulario para probar la carga de archivos (según la configuración) +IfModuleEnabled=Nota: solo es efectivo si el módulo %s está habilitado +RemoveLock=Elimine / renombre el archivo %s si existe, para permitir el uso de la herramienta Actualizar / Instalar. +RestoreLock=Restaure el archivo %s , solo con permiso de lectura, para deshabilitar cualquier uso posterior de la herramienta Actualizar / Instalar. +SecuritySetup=Configuración de seguridad +SecurityFilesDesc=Define aquí las opciones relacionadas con la seguridad sobre la carga de archivos. +ErrorModuleRequirePHPVersion=Error, este módulo requiere la versión de PHP %s o superior +ErrorModuleRequireDolibarrVersion=Error, este módulo requiere la versión de Dolibarr %s o superior +ErrorDecimalLargerThanAreForbidden=Error, no se admite una precisión mayor que %s . +DictionarySetup=Configuración del diccionario +Dictionary=Los diccionarios +ErrorReservedTypeSystemSystemAuto=El valor 'sistema' y 'systemauto' para el tipo están reservados. Puede usar 'usuario' como valor para agregar su propio registro +ErrorCodeCantContainZero=El código no puede contener valor 0 +DisableJavascript=Deshabilitar funciones JavaScript y Ajax +DisableJavascriptNote=Nota: Para fines de prueba o debug. Para la optimización para personas ciegas o navegadores de texto, puede preferir usar la configuración en el perfil del usuario. +UseSearchToSelectCompanyTooltip=Además, si tiene un gran número de terceros (> 100 000), puede aumentar la velocidad configurando la constante COMPANY_DONOTSEARCH_ANYWHERE en 1 en Configuración-> Otro. La búsqueda se limitará entonces al inicio de la cadena. +UseSearchToSelectContactTooltip=Además, si tiene un gran número de terceros (> 100 000), puede aumentar la velocidad configurando la constante CONTACT_DONOTSEARCH_ANYWHERE en 1 en Configuración-> Otro. La búsqueda se limitará entonces al inicio de la cadena. +DelaiedFullListToSelectCompany=Espere hasta que se presione una tecla antes de cargar el contenido de la lista de combo de terceros
    . Esto puede aumentar el rendimiento si tiene un gran número de terceros, pero es menos conveniente. +DelaiedFullListToSelectContact=Espere hasta que se presione una tecla antes de cargar el contenido de la lista de combo de contactos.
    Esto puede aumentar el rendimiento si tiene una gran cantidad de contactos, pero es menos conveniente. +NumberOfKeyToSearch=Número de caracteres para ejecutar la búsqueda: %s +NumberOfBytes=Cantidad de bytes +NotAvailableWhenAjaxDisabled=No disponible cuando Ajax deshabilitado +AllowToSelectProjectFromOtherCompany=En el documento de un tercero, puede elegir un proyecto vinculado a otro tercero +JavascriptDisabled=JavaScript desactivado +UsePreviewTabs=Usar pestañas de vista previa +ShowPreview=Mostrar vista previa +CurrentTimeZone=TimeZone PHP (servidor) +MySQLTimeZone=TimeZone MySql (base de datos) +TZHasNoEffect=Las fechas son almacenadas y devueltas por el servidor de base de datos como si se mantuvieran como una cadena enviada. La zona horaria solo tiene efecto cuando se usa la función UNIX_TIMESTAMP (que Dolibarr no debe usar, por lo que la base de datos TZ no debería tener ningún efecto, incluso si se cambia después de ingresar los datos). +Space=Espacio +NextValue=Siguiente valor +NextValueForInvoices=Siguiente valor (facturas) +NextValueForCreditNotes=Siguiente valor (notas de crédito) +NextValueForDeposit=Siguiente valor (pago inicial) +NextValueForReplacements=Siguiente valor (reemplazos) +MustBeLowerThanPHPLimit=Nota: su configuración PHP actualmente limita el tamaño máximo de archivo para subir a %s %s, independientemente del valor de este parámetro +NoMaxSizeByPHPLimit=Nota: no hay límite establecido en su configuración de PHP +MaxSizeForUploadedFiles=Tamaño máximo para archivos cargados (0 para no permitir ninguna carga) +UseCaptchaCode=Use el código gráfico (CAPTCHA) en la página de inicio de sesión +AntiVirusCommand=Ruta completa al comando antivirus +AntiVirusCommandExample=Ejemplo para ClamAv Daemon (requiere clamav-daemon): /usr/bin/clamdscan
    Ejemplo para ClamWin (muy muy lento): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe +AntiVirusParam=Más parámetros en la línea de comando +AntiVirusParamExample=Ejemplo para ClamAv Daemon: --fdpass
    Ejemplo para ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" +ComptaSetup=Configuración del módulo de contabilidad +UserSetup=Configuración de gestión de usuarios +MultiCurrencySetup=Configuración multi-moneda +MenuLimits=Límites y exactitud +MenuIdParent=ID del menú principal +DetailMenuIdParent=ID del menú principal (vacío para un menú superior) +DetailPosition=Ordenar número para definir la posición del menú +NotConfigured=Módulo / Aplicación no configurada +SetupShort=Configuración +OtherSetup=Otra configuración +CurrentValueSeparatorThousand=Separador de miles +Destination=Destino +IdModule=ID de módulo +IdPermissions=ID de permisos +LanguageBrowserParameter=Parámetro %s +ClientTZ=Zona horaria del cliente (usuario) +ClientHour=Tiempo del cliente (usuario) +OSTZ=Zona horaria del SO del servidor +PHPTZ=Zona horaria del servidor PHP +DaylingSavingTime=Horario de verano +CurrentHour=Tiempo de PHP (servidor) +CurrentSessionTimeOut=Tiempo de espera de la sesión actual +YouCanEditPHPTZ=Para configurar una zona horaria de PHP diferente (no es necesario), puede intentar agregar un archivo .htaccess con una línea como esta "SetEnv TZ Europe / Paris" +HoursOnThisPageAreOnServerTZ=La advertencia, a diferencia de otras pantallas, las horas en esta página no se encuentran en su zona horaria local, sino de la zona horaria del servidor. +MaxNbOfLinesForBoxes=Max. número de líneas para widgets +PositionByDefault=Orden por defecto +MenusDesc=Los gestores de menú establecen el contenido de las dos barras de menú (horizontal y vertical). +MenusEditorDesc=El editor de menú le permite definir entradas de menú personalizadas. Utilícelo con cuidado para evitar la inestabilidad y las entradas de menú permanentemente inalcanzables.
    Algunos módulos agregan entradas de menú (en el menú Todos en su mayoría). Si elimina por error algunas de estas entradas, puede restaurarlas desactivando y volviendo a habilitar el módulo. +MenuForUsers=Menú para usuarios. +Language_en_US_es_MX_etc=Lenguaje (en_US, es_MX,...) +SystemInfo=Información del sistema +SystemToolsArea=Área de herramientas del sistema +SystemToolsAreaDesc=Esta área proporciona funciones de administración. Utilice el menú para elegir la función requerida. +PurgeAreaDesc=Esta página le permite eliminar todos los archivos generados o almacenados por Dolibarr (archivos temporales o todos los archivos en el directorio %s ). Usando esta característica normalmente no es necesario. Se proporciona como una solución para los usuarios cuyo Dolibarr está alojado por un proveedor que no ofrece permisos para eliminar archivos generados por el servidor web. +PurgeDeleteLogFile=Elimine los archivos de registro, incluido el %s definido para el módulo Syslog (sin riesgo de perder datos) +PurgeDeleteTemporaryFiles=Eliminar todos los archivos temporales (no hay risgo de perder información), Nota: La eliminación se realizará sólo si la carpeta temporal sólo fue creada hace 24 horas. +PurgeDeleteTemporaryFilesShort=Borrar archivos temporales +PurgeDeleteAllFilesInDocumentsDir=Elimine todos los archivos en el directorio: %s .
    Esto eliminará todos los documentos generados relacionados con elementos (terceros, facturas, etc.), archivos cargados en el módulo ECM, volcados de copia de seguridad de la base de datos y archivos temporales. archivos. +PurgeRunNow=Purga ahora +PurgeNothingToDelete=No hay directorio o archivos para eliminar. +PurgeNDirectoriesDeleted= %s archivos o directorios eliminados. +PurgeNDirectoriesFailed=Error al eliminar los archivos o directorios de %s . +PurgeAuditEvents=Purgar todos los eventos de seguridad +ConfirmPurgeAuditEvents=¿Está seguro de que desea purgar todos los eventos de seguridad? Todos los registros de seguridad se eliminarán, no se eliminarán otros datos. +Backup=Apoyo +Restore=Restaurar +RunCommandSummary=La copia de seguridad se ha iniciado con el siguiente comando +BackupResult=Resultado de copia de seguridad +BackupFileSuccessfullyCreated=Archivo de copia de seguridad generado correctamente +YouCanDownloadBackupFile=El archivo generado ahora se puede descargar +NoBackupFileAvailable=No hay archivos de copia de seguridad disponibles. +ToBuildBackupFileClickHere=Para crear un archivo de copia de seguridad, haga clic en aquí . +ImportMySqlDesc=Para importar un archivo de copia de seguridad de MySQL, puede usar phpMyAdmin a través de su alojamiento o el comando mysql desde la línea de comandos. Por ejemplo: +ImportPostgreSqlDesc=Para importar un archivo de copia de seguridad, debe usar el comando pg_restore desde la línea de comandos: +FileNameToGenerate=Nombre de archivo para copia de seguridad: +CommandsToDisableForeignKeysForImport=Comando para deshabilitar claves foráneas en la importación +CommandsToDisableForeignKeysForImportWarning=Obligatorio si desea poder restaurar su volcado de SQL más tarde +ExportCompatibility=Compatibilidad del archivo de exportación generado. +MySqlExportParameters=Parámetros de exportación de MySQL +PostgreSqlExportParameters=Parámetros de exportación de PostgreSQL +UseTransactionnalMode=Usa el modo transaccional +FullPathToMysqldumpCommand=Ruta completa al comando mysqldump +FullPathToPostgreSQLdumpCommand=Ruta completa al comando pg_dump +AddDropDatabase=Agregar comando DROP DATABASE +AddDropTable=Agregar comando DROP TABLE +NameColumn=Columnas de nombres +ExtendedInsert=Extendido INSERT +NoLockBeforeInsert=No hay comandos de bloqueo alrededor de INSERT +DelayedInsert=Inserto retrasado +EncodeBinariesInHexa=Codificar datos binarios en hexadecimal. +IgnoreDuplicateRecords=Ignorar errores de registro duplicado (INSERT IGNORE) +AutoDetectLang=Autodetección (idioma del navegador) +FeatureDisabledInDemo=Función deshabilitada en demo +FeatureAvailableOnlyOnStable=Característica solo disponible en versiones oficiales estables +BoxesDesc=Los widgets son componentes que muestran información que puede agregar para personalizar algunas páginas. Puede elegir entre mostrar el widget o no seleccionando la página de destino y haciendo clic en 'Activar', o haciendo clic en la papelera para deshabilitarla. +OnlyActiveElementsAreShown=Solo se muestran los elementos de módulos habilitados . +ModulesDeployDesc=Si los permisos en su sistema de archivos lo permiten, puede utilizar esta herramienta para implementar un módulo externo. El módulo será visible en la pestaña %s . +ModulesMarketPlaces=Encuentra aplicaciones / módulos externos +ModulesDevelopYourModule=Desarrolle su propia aplicación / módulos +ModulesDevelopDesc=También puede desarrollar su propio módulo o encontrar un socio para desarrollar uno para usted. +DOLISTOREdescriptionLong=En lugar de activar el sitio web www.dolistore.com para encontrar un módulo externo, puede utilizar esta herramienta integrada que realizará la búsqueda en el Mercado externo para usted (puede ser lento, necesita un acceso a Internet) ... +NotCompatible=Este modulo no parece ser compatible con su Dolibarr %s (Min %s - Max %s). +AchatTelechargement=Comprar / Descargar +GoModuleSetupArea=Para implementar/instalar un nuevo módulo, vaya al área de configuración del Módulo: %s. +DoliStoreDesc=DoliStore, la tienda oficial para adquirir módulos externos de Dolibarr ERP/CRM +DoliPartnersDesc=Lista de empresas que ofrecen módulos o características desarrollados a medida.
    Nota: dado que Dolibarr es una aplicación de código abierto, cualquiera con experiencia en programación PHP puede desarrollar un módulo. +WebSiteDesc=Sitios web externos para más módulos adicionales (no básicos)... +DevelopYourModuleDesc=Algunas soluciones para desarrollar su propio módulo... +RelativeURL=URL relativa +BoxesAvailable=Widgets disponibles +BoxesActivated=Widgets activos +ActiveOn=Activado en +SourceFile=Archivo fuente +AvailableOnlyIfJavascriptAndAjaxNotDisabled=Disponible solo si JavaScript no está deshabilitado +Required=Requeridos +UsedOnlyWithTypeOption=Utilizado solo por alguna opción de agenda +DoNotStoreClearPassword=Cifrar las contraseñas almacenadas en la base de datos (NO como texto plano). Se recomienda encarecidamente activar esta opción. +MainDbPasswordFileConfEncrypted=Cifre la contraseña de la base de datos almacenada en conf.php. Se recomienda encarecidamente activar esta opción. +InstrucToEncodePass=Para tener una contraseña cifrada en el archivo conf.php, reemplace la línea
    $ dolibarr_main_db_pass="...";
    por
    $ dolibarr_main_db_pass="crypted:%s"; +InstrucToClearPass=Para descifrar (limpiar) la contraseña en el archivo conf.php, reemplace la línea
    $ dolibarr_main_db_pass="crypted: ...";
    por
    $ dolibarr_main_db_pass="%s"; +ProtectAndEncryptPdfFiles=Proteger los archivos PDF generados. Esto NO se recomienda ya que interrumpe la generación masiva de PDF. +ProtectAndEncryptPdfFilesDesc=Al proteger un documento PDF, está disponible para leer e imprimir con cualquier navegador. Sin embargo, editar y copiar ya no es posible. Tenga en cuenta que el uso de esta función hace que la creación de archivos PDF combinados globales no funcione. +Feature=Funcionalidad +Developpers=Desarrolladores/contrubuyentes +OfficialWiki=Documentación Dolibarr / Wiki +OfficialDemo=Demo online Dolibarr +OfficialMarketPlace=Mercado oficial de módulos externos/complementos +OfficialWebHostingService=Servicios de alojamiento web referenciados (alojamiento en la nube) +ReferencedPreferredPartners=Socios preferidos +ForDocumentationSeeWiki=Para la documentación del usuario o desarrollador (Doc, preguntas frecuentes ...),
    consulte la Wiki de Dolibarr:
    %s +ForAnswersSeeForum=Para cualquier otra pregunta o ayuda, puede utilizar el foro de Dolibarr:
    %s +HelpCenterDesc1=Aquí hay algunos recursos para obtener ayuda y apoyo con Dolibarr. +HelpCenterDesc2=Algunos de estos recursos solo están disponibles en inglés . +CurrentMenuHandler=Controlador de menú actual +SpaceX=Espacio X +SpaceY=Espacio Y +Emails=Correos electronicos +EMailsSetup=Configuración de correos electrónicos +EMailsDesc=Esta página le permite anular sus parámetros de PHP predeterminados para el envío de correo electrónico. En la mayoría de los casos en Unix / Linux OS, la configuración de PHP es correcta y estos parámetros no son necesarios. +EmailSenderProfiles=Perfil del enviador de correos electrónicos +EMailsSenderProfileDesc=Puedes dejar esta sección vacía. Si ingresas algunos correos aquí, se agregarán a la lista de posibles remitentes en el cuadro combinado cuando escribas un nuevo correo. +MAIN_MAIL_SMTP_PORT=Puerto SMTP / SMTPS (valor predeterminado en php.ini: %s ) +MAIN_MAIL_SMTP_SERVER=SMTP / SMTPS Host (valor predeterminado en php.ini: %s ) +MAIN_MAIL_SMTP_PORT_NotAvailableOnLinuxLike=Puerto SMTP / SMTPS (no definido en PHP en sistemas similares a Unix) +MAIN_MAIL_SMTP_SERVER_NotAvailableOnLinuxLike=SMTP / SMTPS Host (no definido en PHP en sistemas similares a Unix) +MAIN_MAIL_EMAIL_FROM=Correo electrónico del remitente para correos electrónicos automáticos (valor predeterminado en php.ini: %s ) +MAIN_MAIL_ERRORS_TO=Email utilizado para retorno de error de correo (campos 'Errores a' en los correos electrónicos enviados) +MAIN_MAIL_AUTOCOPY_TO=Copiar (Bcc) todos los correos electrónicos enviados a +MAIN_DISABLE_ALL_MAILS=Deshabilitar todo el envío de correo electrónico (para propósitos de prueba o demostraciones) +MAIN_MAIL_FORCE_SENDTO=Enviar todos los correos electrónicos a (en lugar de destinatarios reales, para fines de prueba) +MAIN_MAIL_ENABLED_USER_DEST_SELECT=Sugerir correos de empleados (si están definidos) en la lista de destinatarios predefinidos al escribir un nuevo correo. +MAIN_MAIL_SENDMODE=Método de envío de correo electrónico +MAIN_MAIL_SMTPS_ID=ID de SMTP (si el servidor de envío requiere autenticación) +MAIN_MAIL_SMTPS_PW=Contraseña SMTP (si el servidor de envío requiere autenticación) +MAIN_MAIL_EMAIL_TLS=Usar cifrado TLS (SSL) +MAIN_MAIL_EMAIL_STARTTLS=Usar cifrado TLS (STARTTLS) +MAIN_MAIL_EMAIL_DKIM_ENABLED=Usa DKIM para generar firma de correo electrónico +MAIN_MAIL_EMAIL_DKIM_DOMAIN=Dominio de correo electrónico para usar con dkim +MAIN_DISABLE_ALL_SMS=Deshabilitar todo el envío de SMS (para propósitos de prueba o demostraciones) +MAIN_SMS_SENDMODE=Método a utilizar para enviar SMS. +MAIN_MAIL_SMS_FROM=Número de teléfono del remitente predeterminado para el envío de SMS +MAIN_MAIL_DEFAULT_FROMTYPE=Correo electrónico predeterminado del remitente para envío manual (correo electrónico del usuario o correo electrónico de la empresa) +UserEmail=Email del usuario +CompanyEmail=Email de la empresa +FeatureNotAvailableOnLinux=Característica no disponible en Unix como sistemas. Prueba tu programa de sendmail localmente. +SubmitTranslation=Si la traducción de este idioma no está completa o si encuentra errores, puede corregirlos editando los archivos en el directorio langs / %s y enviar su cambio a www.transifex.com/dolibarr-association/dolibarr/ +SubmitTranslationENUS=Si la traducción de este idioma no está completa o si encuentra errores, puede corregirlo editando los archivos en el directorio langs / %s y presentando los archivos modificados en dolibarr.org/forum o para los desarrolladores en github.com/ Dolibarr / dolibarr. +ModulesSetup=Configuración de módulos / aplicaciones +ModuleFamilyCrm=Gestión de la relación con el cliente (CRM) +ModuleFamilySrm=Gestión de relaciones con proveedores (VRM) +ModuleFamilyProducts=Gestión de producto (PM) +ModuleFamilyHr=Gestión de Recursos Humanos (HR) +ModuleFamilyProjects=Proyectos / Trabajo colaborativo. +ModuleFamilyTechnic=Herramientas multimodulos +ModuleFamilyFinancial=Módulos Financieros (Contabilidad / Tesorería) +ModuleFamilyECM=Gestión de contenidos electrónicos (ECM) +ModuleFamilyPortal=Sitios web y otras aplicaciones frontales. +ModuleFamilyInterface=Interfaces con sistemas externos. +MenuHandlers=Manejadores de menú +MenuAdmin=Editor de menú +DoNotUseInProduction=No utilizar en producción. +ThisIsAlternativeProcessToFollow=Esta es una configuración alternativa para procesar manualmente: +FindPackageFromWebSite=Encuentre un paquete que proporcione las funciones que necesita (por ejemplo, en el sitio web oficial %s). +DownloadPackageFromWebSite=Descargue el paquete (por ejemplo, desde el sitio web oficial %s). +UnpackPackageInDolibarrRoot=Desempaquetar / descomprima los archivos empaquetados en su directorio del servidor Dolibarr: %s +UnpackPackageInModulesRoot=Para implementar / instalar un módulo externo, desempaquete / descomprima los archivos empaquetados en el directorio del servidor dedicado a los módulos externos:
    %s +SetupIsReadyForUse=El despliegue del módulo ha finalizado. Sin embargo, debe habilitar y configurar el módulo en su aplicación ingresando a los módulos de configuración de la página: %s . +NotExistsDirect=El directorio raíz alternativo no está definido en un directorio existente.
    +InfDirAlt=Desde la versión 3, es posible definir un directorio raíz alternativo. Esto le permite almacenar, en un directorio dedicado, complementos y plantillas personalizadas.
    Simplemente cree un directorio en la raíz de Dolibarr (por ejemplo: personalizado).
    +InfDirExample=
    Luego declara en el archivo conf.php
    $ dolibarr_main_url_root_alt = '/ personalizado'
    $ dolibarr_main_document_root_alt = '/ path / of / dolibarr / htdocs / custom'
    Si estas líneas están comentadas con "#", para habilitarlas, simplemente elimine el comentario eliminando el carácter "#". +YouCanSubmitFile=Puedes cargar el archivo .zip del paquete del módulo desde aquí: +CallUpdatePage=Vaya a la página que actualiza la estructura y la información la base de datos: %s. +LastStableVersion=Ultima versión estable +LastActivationDate=Fecha de última activación +LastActivationAuthor=Autor de última activación +LastActivationIP=IP de última activación +UpdateServerOffline=Actualizar servidor fuera de línea +WithCounter=Administrar un contador +ExampleOfDirectoriesForModelGen=Ejemplo de sintaxis:
    c:\\mydir
    /home/mydir
    DOL_DATA_ROOT/ecm/ecmdir +String=Cuerda +Module30Name=Facturas +Module54Name=Contratos/suscripciones +Module56Name=Telephony +Module56Desc=Telephony integration +Module80Name=Los envíos +Module510Name=Sueldos +Module4000Name=ARH +Module62000Name=Incotérminos +Permission23001=Leer tarea programada +Permission23002=Crear/actualizar tarea programada +Permission23003=Eliminar tarea programada +Permission23004=Ejecutar tarea programada +DictionaryProspectLevel=Cliente potencia +DictionaryProspectStatus=Estado del cliente potencial +DictionaryExpenseTaxRange=Informe de gastos - Rango categoría de transporte +BackToModuleList=Volver a la lista de módulos +BackToDictionaryList=Volver a la lista de diccionarios +TypeOfRevenueStamp=Tipo de timbre fiscal +VATManagement=Gestión de impuestos de ventas +VATIsUsedDesc=De forma predeterminada, al crear prospectos, facturas, pedidos, etc., la tasa del impuesto sobre las ventas sigue la regla estándar activa:
    Si el vendedor no está sujeto al impuesto sobre las ventas, entonces el impuesto sobre las ventas se establece de manera predeterminada en 0. Fin de la regla.
    Si (país del vendedor = país del comprador), entonces el impuesto a las ventas por defecto es igual al impuesto a las ventas del producto en el país del vendedor. Fin de la regla.
    Si el vendedor y el comprador están en la Comunidad Europea y los productos son productos relacionados con el transporte (flete, transporte, línea aérea), el IVA predeterminado es 0. Esta regla depende del país del vendedor. Consulte con su contador. El IVA debe ser pagado por el comprador a la oficina de aduanas de su país y no al vendedor. Fin de la regla.
    Si el vendedor y el comprador se encuentran en la Comunidad Europea y el comprador no es una empresa (con un número de IVA intracomunitario registrado), el IVA está predeterminado para el tipo de IVA del país del vendedor. Fin de la regla.
    Si el vendedor y el comprador están en la Comunidad Europea y el comprador es una empresa (con un número de IVA intracomunitario registrado), el IVA es 0 por defecto. Fin de la regla.
    En cualquier otro caso, el valor predeterminado propuesto es Impuesto de ventas = 0. Fin de la regla +VATIsNotUsedDesc=Por defecto, el impuesto a las ventas propuesto es 0, que puede usarse para casos como asociaciones, individuos o pequeñas empresas. +VATIsUsedExampleFR=En Francia, significa empresas u organizaciones que tienen un sistema fiscal real (real real o normal simplificado). Un sistema en el que se declara el IVA. +VATIsNotUsedExampleFR=En Francia, significa asociaciones que no están declaradas sin impuestos de ventas o compañías, organizaciones o profesiones liberales que han elegido el sistema fiscal de microempresas (impuestos a las ventas en franquicia) y pagaron una franquicia Impuestos a las ventas sin ninguna declaración de impuestos a las ventas. Esta opción mostrará la referencia "Impuesto de ventas no aplicable - art-293B de CGI" en las facturas. +LTRate=Tarifa +LocalTax1IsNotUsed=No usar segundo impuesto +LocalTax1IsUsedDesc=Use un segundo tipo de impuesto (además del primero) +LocalTax1IsNotUsedDesc=No use otro tipo de impuesto (además del primero) +LocalTax1Management=Segundo tipo de impuesto +LocalTax2IsNotUsed=No usar el tercer impuesto +LocalTax2IsUsedDesc=Use un tercer tipo de impuesto (además del primero) +LocalTax2IsNotUsedDesc=No use otro tipo de impuesto (además del primero) +LocalTax2Management=Tercer tipo de impuesto +LocalTax1ManagementES=Gestión de RE +LocalTax1IsUsedDescES=La tasa de RE por defecto al crear prospectos, facturas, pedidos, etc. sigue la regla estándar activa:
    Si el comprador no está sujeto a RE, RE por defecto = 0. Fin de la regla.
    Si el comprador está sujeto a RE, entonces RE es el predeterminado. Fin de la regla.
    +LocalTax1IsNotUsedDescES=Por defecto, el RE propuesto es 0. Fin de la regla. +LocalTax1IsUsedExampleES=En España son profesionales sujetos a algunas secciones específicas del IAE español. +LocalTax1IsNotUsedExampleES=En España son profesionales y sociedades y están sujetos a determinadas secciones del IAE español. +LocalTax2ManagementES=Gestión de IRPF +LocalTax2IsUsedDescES=La tasa de IRPF por defecto al crear prospectos, facturas, pedidos, etc. sigue la regla estándar activa:
    Si el vendedor no está sujeto a IRPF, entonces IRPF por defecto = 0. Fin de la regla.
    Si el vendedor está sujeto a IRPF, entonces el IRPF por defecto. Fin de la regla.
    +LocalTax2IsNotUsedDescES=Por defecto, el IRPF propuesto es 0. Fin de la regla. +LocalTax2IsUsedExampleES=En España, autónomos y profesionales independientes que prestan servicios y empresas que han optado por el sistema tributario de los módulos. +LocalTax2IsNotUsedExampleES=En España son empresas no sujetas al régimen fiscal de los módulos. +CalcLocaltax=Informes sobre impuestos locales +CalcLocaltax1Desc=Los informes de impuestos locales se calculan con la diferencia entre las ventas de impuestos locales y las compras de impuestos locales +CalcLocaltax2Desc=Los informes de impuestos locales son el total de las compras de impuestos locales. +CalcLocaltax3Desc=Los informes de impuestos locales son el total de las ventas de impuestos locales. +LabelUsedByDefault=Etiqueta utilizada de forma predeterminada si no se puede encontrar una traducción para el código +LabelOnDocuments=Etiqueta en los documentos +LabelOrTranslationKey=Etiqueta o clave de traducción +NbOfDays=Numero de dias +CurrentNext=Actual / Siguiente +Offset=Compensar +Upgrade=Mejorar +MenuUpgrade=Actualizar / Extender +AddExtensionThemeModuleOrOther=Implementar / instalar una aplicación / módulo externo +DocumentRootServer=Directorio raíz del servidor web +DataRootServer=Directorio de archivos de datos +PhpWebLink=Enlace web-php +DatabaseServer=Base de datos host +DatabasePort=Puerto de base de datos +DatabaseUser=Usuario de la base de datos +NbOfRecord=No. de registros +SummarySystem=Resumen de información del sistema +SummaryConst=Lista de todos los parámetros de configuración de Dolibarr +MenuCompanySetup=Empresa / Organización +DefaultMenuManager=Gestor de menú estándar +DefaultMenuSmartphoneManager=Gestor de menú de smartphone +Skin=Tema del skin +DefaultSkin=Tema del skin por defecto +MaxSizeList=Longitud máxima para la lista +DefaultMaxSizeList=Longitud máxima predeterminada para listas +CompanyInfo=Empresa / Organización +CompanyAddress=DIrección +MiscellaneousDesc=Todos los demás parámetros relacionados con la seguridad se definen aquí. +LimitsSetup=Límites / configuración de precisión +LimitsDesc=Puede definir los límites, precisiones y optimizaciones utilizadas por Dolibarr aquí +MAIN_MAX_DECIMALS_UNIT=Max. decimales para precios unitarios +MAIN_MAX_DECIMALS_TOT=Max. decimales para precios totales +MAIN_MAX_DECIMALS_SHOWN=Max. decimales para precios mostrados en pantalla . Agregue un punto suspensivo ... después de este parámetro (por ejemplo, "2 ...") si desea ver " ... " con el sufijo del precio truncado. +MAIN_ROUNDING_RULE_TOT=Paso del rango de redondeo (para países donde el redondeo se realiza en otra cosa que no sea la base 10. Por ejemplo, ponga 0.05 si el redondeo se realiza en 0.05 pasos) +UnitPriceOfProduct=Precio unitario neto de un producto. +TotalPriceAfterRounding=Precio total (sin IVA / IVA incluido) después del redondeo +ParameterActiveForNextInputOnly=Parámetro efectivo para la siguiente entrada solamente +NoEventOrNoAuditSetup=No se ha registrado ningún evento de seguridad. Esto es normal si la auditoría no se ha habilitado en la página "Configuración - Seguridad - Eventos". +NoEventFoundWithCriteria=No se ha encontrado ningún evento de seguridad para este criterio de búsqueda. +SeeLocalSendMailSetup=Vea su configuración local de sendmail +BackupDesc=Una copia de seguridad completa de una instalación de Dolibarr requiere dos pasos. +BackupDesc3=Realice una copia de seguridad de la estructura y el contenido de su base de datos ( %s ) en un archivo de volcado. Para ello, puede utilizar el siguiente asistente. +BackupDescX=El directorio archivado debe almacenarse en un lugar seguro. +BackupDescY=El archivo de volcado generado debe almacenarse en un lugar seguro. +BackupPHPWarning=La copia de seguridad no se puede garantizar con este método. Anterior recomendado. +RestoreDesc=Para restaurar una copia de seguridad de Dolibarr, se requieren dos pasos. +RestoreDesc2=Restaure el archivo de copia de seguridad (archivo zip, por ejemplo) del directorio "documentos" a una nueva instalación de Dolibarr o en este directorio de documentos actual ( %s ). +RestoreDesc3=Restaure la estructura de la base de datos y los datos de un archivo de volcado de respaldo en la base de datos de la nueva instalación de Dolibarr o en la base de datos de esta instalación actual ( %s ). Advertencia: una vez que se complete la restauración, debe usar un nombre de usuario / contraseña, que existía desde el momento de la copia de seguridad / instalación para volver a conectarse.
    Para restaurar una base de datos de copia de seguridad en esta instalación actual, puede seguir a este asistente. +ForcedToByAModule=Esta regla es forzada a %s por un módulo activado +RunningUpdateProcessMayBeRequired=Parece que es necesario ejecutar el proceso de actualización (la versión del programa %s difiere de la versión de la base de datos %s) +YouMustRunCommandFromCommandLineAfterLoginToUser=Debe ejecutar este comando desde la línea de comandos después de iniciar sesión en un shell con el usuario %s o debe agregar la opción -W al final de la línea de comandos para proporcionar la contraseña de %s . +YourPHPDoesNotHaveSSLSupport=Funciones SSL no disponibles en tu PHP +DownloadMoreSkins=Más skins para descargar +SimpleNumRefModelDesc=Devuelve el número de referencia con el formato %syymm-nnnn donde yy es año, mm es mes y nnnn es secuencial sin reinicio +ShowProfIdInAddress=Mostrar identificación profesional con direcciones +ShowVATIntaInAddress=Ocultar número de IVA intracomunitario con direcciones +MeteoStdMod=Modo estandar +MeteoPercentageModEnabled=Modo porcentual habilitado +MeteoUseMod=Haga clic para utilizar %s +TestLoginToAPI=Prueba de inicio de sesión por API +ExternalAccess=Acceso externo / internet +MAIN_PROXY_USE=Use un servidor proxy (de lo contrario el acceso es directo a internet) +MAIN_PROXY_HOST=Servidor proxy: Nombre / Dirección +MAIN_PROXY_USER=Servidor proxy: Login / Usuario +DefineHereComplementaryAttributes=Defina aquí cualquier atributo adicional / personalizado que desee incluir para: %s +ExtraFields=Atributos complementarios +ExtraFieldsLines=Atributos complementarios (líneas) +ExtraFieldsLinesRec=Atributos complementarios (plantillas facturas líneas) +ExtraFieldsSupplierOrdersLines=Atributos complementarios (líneas de orden) +ExtraFieldsSupplierInvoicesLines=Atributos complementarios (líneas de factura) +ExtraFieldsThirdParties=Atributos complementarios (tercero) +ExtraFieldsContacts=Atributos complementarios (contactos / dirección) +ExtraFieldsMember=Atributos complementarios (miembro) +ExtraFieldsMemberType=Atributos complementarios (tipo de miembro) +ExtraFieldsCustomerInvoices=Atributos complementarios (facturas) +ExtraFieldsCustomerInvoicesRec=Atributos complementarios (plantillas facturas). +ExtraFieldsSupplierOrders=Atributos complementarios (pedidos) +ExtraFieldsSupplierInvoices=Atributos complementarios (facturas) +ExtraFieldsProject=Atributos complementarios (proyectos) +ExtraFieldsProjectTask=Atributos complementarios (tareas) +ExtraFieldHasWrongValue=El atributo %s tiene un valor incorrecto. +AlphaNumOnlyLowerCharsAndNoSpace=Solo caracteres alfanuméricos y minúsculas sin espacio. +SendmailOptionNotComplete=Advertencia, en algunos sistemas Linux, para enviar email desde su correo, la configuración de ejecución de sendmail debe contener la opción -ba (parámetro mail.force_extra_parameters en su archivo php.ini). Si algunos destinatarios nunca reciben correos electrónicos, intente editar este parámetro de PHP con mail.force_extra_parameters = -ba). +PathToDocuments=Ruta a los documentos +SendmailOptionMayHurtBuggedMTA=La función para enviar correos electrónicos utilizando el método "PHP mail direct" generará un mensaje de correo que algunos servidores de correo de recepción podrían no analizar correctamente. El resultado es que algunos correos no pueden ser leídos por personas alojadas en esas plataformas con errores. Este es el caso de algunos proveedores de Internet (Ex: Orange en Francia). Este no es un problema con Dolibarr o PHP, sino con el servidor de correo receptor. Sin embargo, puede agregar una opción MAIN_FIX_FOR_BUGGED_MTA a 1 en Configuración - Otros para modificar Dolibarr para evitar esto. Sin embargo, puede experimentar problemas con otros servidores que usan estrictamente el estándar SMTP. La otra solución (recomendada) es usar el método "biblioteca de sockets SMTP", que no tiene inconvenientes. +TranslationSetup=Configuración de la traducción +TranslationOverwriteKey=Sobrescribir una cadena de traducción +TranslationDesc=Cómo configurar el idioma de la pantalla:
    * Predeterminado / Sistema: menú Inicio -> Configuración -> Pantalla
    * Por usuario: haga clic en el nombre de usuario en la parte superior de la pantalla y modifique en la pestaña Interfaz de usuario en la ficha del usuario. +TranslationOverwriteDesc=También puede anular cadenas que llenan la siguiente tabla. Elija su idioma en el menú desplegable "%s", inserte la cadena de clave de traducción en "%s" y su nueva traducción en "%s" +TranslationOverwriteDesc2=Puede usar la otra pestaña para ayudarlo a saber qué clave de traducción usar +TranslationString=Cadena de traducción +CurrentTranslationString=Cadena de traducción actual +WarningAtLeastKeyOrTranslationRequired=Se requiere un criterio de búsqueda al menos para la clave o la cadena de traducción +NewTranslationStringToShow=Nueva cadena de traducción para mostrar +OriginalValueWas=La traducción original se sobrescribe. El valor original era:

    %s +TransKeyWithoutOriginalValue=Has forzado una nueva traducción para la clave de traducción ' %s ' que no existe en ningún archivo de idioma +TotalNumberOfActivatedModules=Aplicación / módulos activados: %s / %s +YouMustEnableOneModule=Debes habilitar al menos 1 módulo +ClassNotFoundIntoPathWarning=La clase %s no se encuentra en la ruta de PHP +YesInSummer=Si en verano +OnlyFollowingModulesAreOpenedToExternalUsers=Tenga en cuenta que solo los siguientes módulos están disponibles para usuarios externos (independientemente de los permisos de dichos usuarios) y solo si se otorgan permisos:
    +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 actualmente. +YouDoNotUseBestDriver=Utiliza el controlador %s pero se recomienda el controlador %s. +SearchOptim=Optimización de búsqueda +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. +AddRefInList=Mostrar la lista de referencia cliente / vendedor (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 la dirección del cliente / proveedor (seleccionar lista o combobox)
    Los terceros aparecerán con un formato de nombre de "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. +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. +PasswordGenerationNone=No sugiera una contraseña generada. La contraseña debe escribirse manualmente. +PasswordGenerationPerso=Devuelva una contraseña de acuerdo con su configuración definida personalmente. +SetupPerso=Según su configuración +PasswordPatternDesc=Descripción del patrón de contraseña +DisableForgetPasswordLinkOnLogonPage=No mostrar el enlace "Contraseña olvidada" en la página de inicio de sesión +UsersSetup=Configuración del módulo de usuarios +UserMailRequired=Email requerido para crear un nuevo usuario +HRMSetup=Configuración del módulo HRM +CompanySetup=Configuración del módulo de empresas. +CompanyCodeChecker=Opciones para la generación automática de códigos de clientes / proveedores. +AccountCodeManager=Opciones para la generación automática de códigos contables de clientes / proveedores. +NotificationsDesc=Las notificaciones por correo electrónico se pueden enviar automáticamente para algunos eventos de Dolibarr.
    Los destinatarios de las notificaciones se pueden definir: +NotificationsDescUser=* por usuario, un usuario a la vez. +NotificationsDescGlobal=* o configurando direcciones de correo electrónico globales en esta página de configuración. +DocumentModelOdt=Genere documentos desde plantillas de OpenDocument (archivos .ODT / .ODS de LibreOffice, OpenOffice, KOffice, TextEdit, ...) +WatermarkOnDraft=Marca de agua en el proyecto de documento +JSOnPaimentBill=Activar función para autocompletar líneas de pago en forma de pago +CompanyIdProfChecker=Reglas para las identificaciones profesionales +MustBeMandatory=¿Obligatorio crear terceros (si se define el número de IVA o el tipo de empresa)? +MustBeInvoiceMandatory=¿Obligatorio validar las facturas? +TechnicalServicesProvided=Servicios tecnicos prestados +WebDAVSetupDesc=Este es el enlace para acceder al directorio WebDAV. Contiene un directorio "público" abierto a cualquier usuario que conozca la URL (si se permite el acceso al directorio público) y un directorio "privado" que necesita una cuenta / contraseña de inicio de sesión para acceder. +WebDavServer=URL raíz del servidor %s: %s +WebCalUrlForVCalExport=Un enlace de exportación a formato %s está disponible en el siguiente enlace: %s +BillsSetup=Configuración del módulo de facturas. +BillsNumberingModule=Modelo de numeración de facturas y notas de crédito. +BillsPDFModules=Modelos de documentos de factura. +BillsPDFModulesAccordindToInvoiceType=La factura documenta los modelos según el tipo de factura. +PaymentsPDFModules=Modelos de documentos de pago. +ForceInvoiceDate=Forzar fecha de factura a fecha de validación +SuggestPaymentByRIBOnAccount=Sugerir pago por retiro en cuenta +SuggestPaymentByChequeToAddress=Sugerir pago por cheque a +FreeLegalTextOnInvoices=Texto libre en las facturas. +WatermarkOnDraftInvoices=Marca de agua en los proyectos de factura (ninguno si está vacío) +PaymentsNumberingModule=Modelo de numeración de pagos. +SuppliersPayment=Pagos a proveedores +SupplierPaymentSetup=Configuración de pagos de proveedores +PropalSetup=Configuración del módulo de propuestas comerciales. +ProposalsNumberingModules=Propuesta de modelos de numeración comercial. +ProposalsPDFModules=Propuesta comercial de modelos de documentos. +FreeLegalTextOnProposal=Texto libre sobre propuestas comerciales. +WatermarkOnDraftProposal=Marca de agua en el borrador de propuestas comerciales (ninguna si está vacía) +BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Consultar el destino de la cuenta bancaria de la propuesta. +SupplierProposalSetup=Solicitud de precios de configuración del módulo de proveedores +SupplierProposalNumberingModules=Solicitudes de precios proveedores de numeración de modelos. +SupplierProposalPDFModules=Solicitudes de precios proveedores documentos modelos. +FreeLegalTextOnSupplierProposal=Texto libre en las solicitudes de precios proveedores +WatermarkOnDraftSupplierProposal=Marca de agua en los proveedores de solicitudes de precios de borrador (ninguno si está vacío) +BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_PROPOSAL=Pregunte por el destino de la cuenta bancaria de la solicitud de precio +WAREHOUSE_ASK_WAREHOUSE_DURING_ORDER=Pregunte por la fuente de almacén para el pedido +BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_ORDER=Pregunte por el destino de la cuenta bancaria de orden de compra +OrdersNumberingModules=Modelos de numeración de pedidos. +OrdersModelModule=Pedir modelos de documentos  +WatermarkOnDraftOrders=Marca de agua en órdenes de giro (ninguna si está vacía) +ShippableOrderIconInList=Agregar un ícono en la lista de Órdenes que indica si la orden es enviable +BANK_ASK_PAYMENT_BANK_DURING_ORDER=Consultar el destino de la cuenta bancaria del pedido. +InterventionsSetup=Configuración del módulo de intervenciones. +FreeLegalTextOnInterventions=Texto libre en documentos de intervención. +FicheinterNumberingModules=Modelos de numeración de intervención. +TemplatePDFInterventions=Modelos de documentos de ficha de la intervención. +WatermarkOnDraftInterventionCards=Marca de agua en los documentos de la ficha de la intervención (ninguno si está vacío) +ContractsSetup=Configuración del módulo Contratos / Suscripciones. +ContractsNumberingModules=Contratos de numeración de módulos. +TemplatePDFContracts=Contratos modelos de documentos. +FreeLegalTextOnContracts=Texto libre sobre contratos. +WatermarkOnDraftContractCards=Marca de agua en los proyectos de contrato (ninguno si está vacío) +MembersSetup=Configuración del módulo de miembros +MemberMainOptions=Principales opciones +AdherentLoginRequired=Administrar un inicio de sesión para cada miembro +AdherentMailRequired=Correo electrónico requerido para crear un nuevo miembro +MemberSendInformationByMailByDefault=La casilla de verificación para enviar la confirmación de correo a los miembros (validación o nueva suscripción) está activada de forma predeterminada +MEMBER_REMINDER_EMAIL=Habilite el recordatorio automático por correo electrónico de las suscripciones caducadas. Nota: el módulo %s debe estar habilitado y configurado correctamente para enviar recordatorios. +LDAPSetup=Configuración LDAP +LDAPGroupsSynchro=Los grupos +LDAPSynchronizeUsers=Organización de usuarios en LDAP. +LDAPSynchronizeGroups=Organización de grupos en LDAP. +LDAPSynchronizeContacts=Organización de contactos en LDAP. +LDAPSynchronizeMembers=Organización de los miembros de la fundación en LDAP. +LDAPSynchronizeMembersTypes=Organización de los tipos de miembros de la fundación en LDAP. +LDAPServerPort=Puerto de servicio +LDAPServerPortExample=Puerto predeterminado: 389 +LDAPServerUseTLS=Utilizar TLS +LDAPServerUseTLSExample=Su servidor LDAP utiliza TLS +LDAPServerDn=DN de servidor +LDAPAdminDn=Administrador DN +LDAPAdminDnExample=DN completo (por ejemplo: cn = admin, dc = ejemplo, dc = com o cn = Administrador, cn = Usuarios, dc = ejemplo, dc = com para el directorio activo) +LDAPPassword=Contraseña de administrador +LDAPUserDn=DN de usuarios +LDAPUserDnExample=DN completo (por ejemplo: ou = usuarios, dc = ejemplo, dc = com) +LDAPGroupDn=DN de grupos +LDAPGroupDnExample=DN completo (por ejemplo: ou = grupos, dc = ejemplo, dc = com) +LDAPServerExample=Dirección del servidor (por ejemplo, localhost, 192.168.0.2, ldaps: //ldap.example.com/) +LDAPServerDnExample=DN completo (por ejemplo: dc = ejemplo, dc = com) +LDAPDnSynchroActive=Sincronización de usuarios y grupos. +LDAPDnSynchroActiveExample=Sincronización LDAP a Dolibarr o Dolibarr a LDAP +LDAPDnContactActiveExample=Sincronización activada / desactivada +LDAPDnMemberActive=Sincronización de miembros +LDAPDnMemberActiveExample=Sincronización activada / desactivada +LDAPDnMemberTypeActive=Sincronización de tipos de miembros +LDAPDnMemberTypeActiveExample=Sincronización activada / desactivada +LDAPContactDn=Contacto de Dolibarr 'DN +LDAPContactDnExample=DN completo (por ejemplo: ou = contactos, dc = ejemplo, dc = com) +LDAPMemberDn=Miembros de Dolibarr DN +LDAPMemberDnExample=DN completo (por ejemplo: ou = miembros, dc = ejemplo, dc = com) +LDAPMemberObjectClassListExample=Lista de atributos de registro que definen objectClass (ej: top, inetOrgPerson o top, usuario para el directorio activo) +LDAPMemberTypeDn=Miembros de Dolibarr tipos DN +LDAPMemberTypepDnExample=DN completo (por ejemplo: ou = memberstypes, dc = example, dc = com) +LDAPMemberTypeObjectClassListExample=Lista de atributos de registro que definen objectClass (por ejemplo, top, groupOfUniqueNames) +LDAPUserObjectClassListExample=Lista de atributos de registro que definen objectClass (ej: top, inetOrgPerson o top, usuario para el directorio activo) +LDAPGroupObjectClassListExample=Lista de atributos de registro que definen objectClass (por ejemplo, top, groupOfUniqueNames) +LDAPContactObjectClassListExample=Lista de atributos de registro que definen objectClass (ej: top, inetOrgPerson o top, usuario para el directorio activo) +LDAPFieldZip=Cremallera +LDAPFieldCompany=Compañía +Target=Destino +PositionIntoComboList=Posición de la línea en las listas de combo +SellTaxRate=Tasa de impuesto de venta +RecuperableOnly=Sí, para el IVA "No percibido pero recuperable" dedicado a algún estado de Francia. Mantenga el valor en "No" en todos los demás casos. +UrlTrackingDesc=Si el proveedor o el servicio de transporte ofrece una página o sitio web para verificar el estado de sus envíos, puede ingresar aquí. Puede usar la clave {TRACKID} en los parámetros de la URL para que el sistema la reemplace con el número de seguimiento que el usuario ingresó en la ficha del viaje. +OpportunityPercent=Cuando cree un cliente potencial, definirá una cantidad estimada de proyecto / cliente potencial. De acuerdo con el estado del cliente potencial, esta cantidad se puede multiplicar por esta tasa para evaluar la cantidad total que todos sus clientes potenciales pueden generar. El valor es un porcentaje (entre 0 y 100). +TemplateForElement=Este registro de plantilla está dedicado a qué elemento +TemplateIsVisibleByOwnerOnly=La plantilla es visible solo para el propietario +VisibleNowhere=Visible en ninguna parte +FixTZ=Arreglo de zona horaria +FillFixTZOnlyIfRequired=Ejemplo: +2 (rellenar solo si el problema lo experimentó) +ExpectedChecksum=Suma de comprobación esperada +CurrentChecksum=Checksum actual +ForcedConstants=Valores constantes requeridos +MailToSendProposal=Propuestas de clientes +MailToSendOrder=Ordenes de Venta +MailToSendInvoice=Facturas de clientes +MailToSendShipment=Los envíos +MailToSendSupplierRequestForQuotation=Solicitud de presupuesto +MailToSendSupplierOrder=Ordenes de compra +MailToSendSupplierInvoice=Facturas de proveedores +MailToSendContract=Los contratos +MailToProject=Página de proyectos +ByDefaultInList=Mostrar por defecto en la vista de lista +YouUseLastStableVersion=Usas la última versión estable +TitleExampleForMajorRelease=Ejemplo de mensaje que puede usar para anunciar esta versión principal (no dude en usarlo en sus sitios web) +ExampleOfNewsMessageForMajorRelease=Dolibarr ERP & CRM %s está disponible. La versión %s es una versión importante con muchas características nuevas tanto para usuarios como para desarrolladores. Puede descargarlo desde el área de descarga del portal https://www.dolibarr.org (subdirectorio Estable versiones). Puede leer ChangeLog para obtener una lista completa de los cambios. +ExampleOfNewsMessageForMaintenanceRelease=Dolibarr ERP & CRM %s está disponible. La versión %s es una versión de mantenimiento, por lo que solo contiene correcciones de errores. Recomendamos a todos los usuarios actualizar a esta versión. Una versión de mantenimiento no introduce nuevas funciones o cambios en la base de datos. Puede descargarlo desde el área de descarga del portal https://www.dolibarr.org (subdirectorio Estable versiones). Puede leer el ChangeLog para obtener una lista completa de los cambios. +ModelModulesProduct=Plantillas para documentos de productos. +ToGenerateCodeDefineAutomaticRuleFirst=Para poder generar códigos automáticamente, primero debe definir un administrador para definir automáticamente el número de código de barras. +SeeSubstitutionVars=Ver * nota para la lista de posibles variables de sustitución +SeeChangeLog=Ver archivo ChangeLog (solo en inglés) +AllPublishers=Todos los editores +AddRemoveTabs=Añadir o eliminar pestañas +AddDataTables=Añadir tablas de objetos +AddDictionaries=Añadir tablas de diccionarios +AddData=Añadir objetos o datos de diccionarios. +AddBoxes=Agregar widgets +AddSheduledJobs=Añadir trabajos programados +AddHooks=Añadir ganchos +AddTriggers=Añadir disparadores +AddMenus=Añadir menús +AddPermissions=Agregar permisos +AddExportProfiles=Añadir perfiles de exportación +AddImportProfiles=Añadir perfiles de importación +AddOtherPagesOrServices=Añadir otras páginas o servicios +AddModels=Añadir plantillas de numeración o documento +AddSubstitutions=Añadir claves sustituciones +DetectionNotPossible=No es posible la deteccion +UrlToGetKeyToUseAPIs=Url para obtener el token para utilizar la API (una vez que se ha recibido, se guarda en la tabla de usuarios de la base de datos y debe proporcionarse en cada llamada a la API) +ListOfAvailableAPIs=Lista de APIs disponibles +activateModuleDependNotSatisfied=El módulo "%s" depende del módulo "%s", que falta, por lo que es posible que el módulo "%1$s" no funcione correctamente. Instale el módulo "%2$s" o deshabilite el módulo "%1$s" si quiere estar a salvo de alguna sorpresa +CommandIsNotInsideAllowedCommands=El comando que está intentando ejecutar no está en la lista de comandos permitidos definidos en el parámetro $ dolibarr_main_restrict_os_commands en el archivo conf.php . +LandingPage=Página de inicio +SamePriceAlsoForSharedCompanies=Si utiliza un módulo de varias empresas, con la opción "Precio único", el precio también será el mismo para todas las empresas si los productos se comparten entre entornos. +ModuleEnabledAdminMustCheckRights=Se ha activado el módulo. Los permisos para los módulos activados se otorgaron solo a los usuarios administrativos. Es posible que deba otorgar permisos a otros usuarios o grupos manualmente si es necesario. +UserHasNoPermissions=Este usuario no tiene permisos definidos. +TypeCdr=Use "Ninguno" si la fecha de pago es la fecha de la factura más un delta en días (delta es el campo "%s").
    Utilice "Al final del mes", si, después del delta, la fecha debe aumentarse para alcanzar. el final del mes (+ un opcional "%s" en días)
    Use "Actual / Siguiente" para que la fecha del plazo de pago sea el primer Nth del mes después de delta (delta es el campo "%s", N se almacena en el campo "%s") +WarningNoteModulePOSForFrenchLaw=Este módulo %s cumple con las leyes francesas (Loi Finance 2016) porque el módulo de Registros no reversibles se activa automáticamente. +WarningInstallationMayBecomeNotCompliantWithLaw=Está intentando instalar el módulo %s que es un módulo externo. Activar un módulo externo significa que confía en el editor de ese módulo y que está seguro de que este módulo no afecta negativamente el comportamiento de su aplicación y cumple con las leyes de su país (%s). Si el módulo introduce una característica ilegal, usted se hace responsable del uso de software ilegal. +NothingToSetup=No se requiere ninguna configuración específica para este módulo. +SetToYesIfGroupIsComputationOfOtherGroups=Establézcalo en sí si este grupo es un cálculo de otros grupos +EnterCalculationRuleIfPreviousFieldIsYes=Introduzca la regla de cálculo si el campo anterior se estableció en Sí (por ejemplo, 'CODEGRP1 + CODEGRP2') +COMPANY_AQUARIUM_CLEAN_REGEX=Filtro de expresiones regulares para limpiar el valor (COMPANY_AQUARIUM_CLEAN_REGEX) +GDPRContact=Oficial de protección de datos (DPO, privacidad de datos o contacto GDPR) +GDPRContactDesc=Si almacena datos sobre empresas / ciudadanos europeos, puede nombrar al contacto que es responsable del Reglamento general de protección de datos aquí +HelpOnTooltip=Texto de ayuda para mostrar en información sobre herramientas +HelpOnTooltipDesc=Coloque texto o una clave de traducción aquí para que el texto se muestre en una información sobre herramientas cuando este campo aparezca en un formulario +YouCanDeleteFileOnServerWith=Puede eliminar este archivo en el servidor con la línea de comandos:
    %s +ChartLoaded=Plan de cuenta cargado +VATIsUsedIsOff=Nota: La opción de usar el impuesto sobre las ventas o el IVA se ha establecido en Desactivado en el menú %s - %s, por lo que el impuesto sobre las ventas o IVA utilizado siempre será 0 para las ventas. +FeatureSupportedOnTextFieldsOnly=Advertencia, función compatible solo en los campos de texto. También se debe establecer un parámetro de URL action = create o action = edit O el nombre de la página debe terminar con 'new.php' para activar esta función. +EmailCollector=Recolector de correo electronico +EmailCollectorDescription=Agregue un trabajo programado y una página de configuración para escanear los buzones de correo electrónico con regularidad (usando el protocolo IMAP) y registre los correos electrónicos recibidos en su aplicación, en el lugar correcto y / o cree algunos registros automáticamente (como clientes potenciales). +NewEmailCollector=Nuevo recolector de email +EMailHost=Host de correo electrónico del servidor IMAP +EmailcollectorOperations=Operaciones a realizar por coleccionista. +EmailCollectorConfirmCollectTitle=Correo electrónico recoger confirmación +EmailCollectorConfirmCollect=¿Quieres ejecutar la colección para este coleccionista ahora? +NoNewEmailToProcess=No hay correo electrónico nuevo (filtros coincidentes) para procesar +RecordEvent=Grabar evento de correo electrónico +CreateLeadAndThirdParty=Crear plomo (y tercero si es necesario) +CodeLastResult=Último código de resultado +ECMAutoTree=Mostrar arbol ECM automatico +ResourceSetup=Configuración del módulo de recursos +UseSearchToSelectResource=Use un formulario de búsqueda para elegir un recurso (en lugar de una lista desplegable). +DisabledResourceLinkUser=Deshabilitar la función para vincular un recurso a los usuarios +DisabledResourceLinkContact=Deshabilitar función para vincular un recurso a contactos +ConfirmUnactivation=Confirmar el reinicio del módulo +OnMobileOnly=Solo en pantalla pequeña (teléfono inteligente) +DisableProspectCustomerType=Deshabilite el tipo de tercero "Prospect + Customer" (por lo tanto, el tercero debe ser Prospect o Customer pero no pueden ser ambos) +EmailCollectorLoadThirdPartyHelp=You can use this action to use the email content to find and load an existing thirdparty in your database. The found (or created) thirdparty will be used for following actions that need it. In the parameter field you can use for example 'EXTRACT:BODY:Name:\\s([^\\s]*)' if you want to extract the name of the thirdparty from a string 'Name: name to find' found into the body. diff --git a/htdocs/langs/es_AR/agenda.lang b/htdocs/langs/es_AR/agenda.lang new file mode 100644 index 00000000000..73caf6295b2 --- /dev/null +++ b/htdocs/langs/es_AR/agenda.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - agenda +Event=Evento +DateActionEnd=Fecha de fin diff --git a/htdocs/langs/es_AR/banks.lang b/htdocs/langs/es_AR/banks.lang new file mode 100644 index 00000000000..b9ae63c8b2c --- /dev/null +++ b/htdocs/langs/es_AR/banks.lang @@ -0,0 +1,87 @@ +# Dolibarr language file - Source file is en_US - banks +MenuNewVariousPayment=Nuevo Pago Varios +BankName=Nombre del Banco +BankAccount=Cuenta Bancaria +ShowAccount=Mostrar Cuenta +AccountRef=Cuenta Financiera de Referencia +AccountLabel=Nombre de Cuenta Financiera +CashAccount=Cuenta Caja +CashAccounts=Cuentas Caja +CurrentAccounts=Cuentas Corrientes +SavingAccounts=Cajas de Ahorro +ErrorBankLabelAlreadyExists=La etiqueta de la cuenta financiera ya existe +BankBalanceBefore=Saldo previo +BalanceMinimalAllowed=Saldo mínimo permitido +FutureBalance=Saldo futuro +ShowAllTimeBalance=Mostrar saldo desde el inicio +AllTime=Desde el inicio +Reconciliation=Reconciliación +RIB=Número de cuenta bancaria +SwiftValid=BIC/swift válido +AccountStatement=Estado de cuenta +AccountStatementShort=Estado +AccountStatements=Estado de cuentas +LastAccountStatements=Ultimo estado de cuentas +IOMonthlyReporting=Reporte mensual +BankAccountDomiciliation=Dirección del Banco +BankAccountOwner=Nombre del Dueño de la cuenta +BankAccountOwnerAddress=Dirección del dueño de la cuenta +MenuNewFinancialAccount=Nueva cuenta financiera +EditFinancialAccount=Editar cuentga +LabelBankCashAccount=Banco o Caja +AccountType=Tipo de Cuenta +BankType0=Caja de ahorro +BankType1=Cuenta Corriente +BankType2=Cuenta Caja +AccountsArea=Area de Cuentas +AccountCard=Ficha de la cuenta +DeleteAccount=Eliminar Cuenta +ConfirmDeleteAccount=¿Está seguro que quiere eliminar esta cuenta? +IdTransaction=ID de transacción +BankTransactions=Registros Bancarios +ListTransactions=Listar registros +ListTransactionsByCategory=Listar registros por categoría +TransactionsToConciliateShort=Para reconciliar +Conciliable=Puede ser reconciliado +Conciliate=Reconciliar +Conciliation=Reconciliación +OnlyOpenedAccount=Sólo cuentas abiertas +AccountToCredit=Cuenta Crédito +AccountToDebit=Cuenta Débito +DisableConciliation=Deshabilitar reconciliación para esta cuenta +ConciliationDisabled=Reconciliación deshabilitada +StatusAccountClosed=Cerrado +LineRecord=Transacción +AddBankRecord=Agregar Registro +AddBankRecordLong=Agregar Registro Manualmente +ConciliatedBy=Reconciliado por +DateConciliating=Fecha de Reconciliación +BankLineConciliated=Registro reconciliado con extracto bancario +SupplierInvoicePayment=Pago de Proveedor +WithdrawalPayment=Orden de débito +TransferTo=A +ValidateCheckReceipt=¿Validar recibo de cheque? +BankChecks=Cheques bancarios +BankChecksToReceipt=Cheques que esperan a depositarse +BankChecksToReceiptShort=Cheques que esperan a depositarse +NumberOfCheques=Número de cheque +PlannedTransactions=Registros planeados +ExportDataset_banque_1=Registros bancarios y estado de la cuenta +AllAccounts=Todas las cuentas bancarias y cajas +ShowAllAccounts=Mostrar todas las cuentas +FutureTransaction=Transacción futura. Imposible reconciliar +ToConciliate=¿Para reconciliar? +DefaultRIB=BAN predeterminado +AllRIB=Todos los BAN +LabelRIB=Etiqueta BAN +NoBANRecord=No hay registros BAN +DeleteARib=Eliminar registro BAN +ConfirmDeleteRib=¿Está seguro que quiere eliminar este registro BAN? +ConfirmRejectCheck=¿Está seguro que quiere marcar este cheque como rechazado? +RejectCheckDate=Fecha cuando fue devuelto el cheque +BankAccountModelModule=Template para cuentas bancarias +VariousPayment=Pago Varios +ShowVariousPayment=Mostrar Pagos Varios +AddVariousPayment=Agregar pago varios +BankColorizeMovementName1=Color de fondo para movimiento de débito +BankColorizeMovementName2=Color de fondo para movimiento de crédito diff --git a/htdocs/langs/es_AR/bills.lang b/htdocs/langs/es_AR/bills.lang new file mode 100644 index 00000000000..829e6f47ce3 --- /dev/null +++ b/htdocs/langs/es_AR/bills.lang @@ -0,0 +1,37 @@ +# Dolibarr language file - Source file is en_US - bills +BillsCustomers=Facturas de clientes +BillsCustomer=Factura de Cliente +BillsSuppliers=Facturas de proveedores +BillsCustomersUnpaid=Facturas impagas de cliente +BillsCustomersUnpaidForCompany=Facturas impagas de cliente para %s +BillsSuppliersUnpaid=Facturas impagas de proveedor +BillsSuppliersUnpaidForCompany=Facturas impagas de proveedor para %s +InvoiceAvoir=Nota de crédito +InvoiceCustomer=Factura de Cliente +CustomerInvoice=Factura de Cliente +CustomersInvoices=Facturas de clientes +SupplierInvoice=Factura de Proveedor +SupplierBill=Factura de Proveedor +PaymentAmount=Monto pagado +BillStatusDraft=Borrador (necesita ser validado) +BillStatusPaid=Pagado +BillShortStatusPaid=Pagado +BillShortStatusConverted=Pagado +BillShortStatusValidated=Validado +BillShortStatusClosedUnpaid=Cerrado +PaymentStatusToValidShort=Para confirmar +BillFrom=De +BillTo=A +StandingOrders=Ordenes por débito automático +StandingOrder=Orden de Débito Automático +SupplierBillsToPay=Facturas impagas de proveedor +CustomerBillsUnpaid=Facturas impaga de cliente +CreditNote=Nota de crédito +CreditNotes=Notas de credito +PaymentConditionShortPT_DELIVERY=Entrega +PaymentTypePRE=Orden de pago por débito automático +PaymentTypeShortPRE=Orden de débito +PaymentTypeCB=Tarjeta de crédito +PaymentTypeShortCB=Tarjeta de crédito +Residence=DIrección +CheckBank=Cheque diff --git a/htdocs/langs/es_AR/blockedlog.lang b/htdocs/langs/es_AR/blockedlog.lang new file mode 100644 index 00000000000..5b0a4d9d1b5 --- /dev/null +++ b/htdocs/langs/es_AR/blockedlog.lang @@ -0,0 +1,35 @@ +# Dolibarr language file - Source file is en_US - blockedlog +BlockedLogDesc=Este módulo rastrea algunos eventos en un registro inalterable (que no puedes modificar una vez registrado) en una cadena de bloques, en tiempo real. Este módulo proporciona compatibilidad con los requisitos de las leyes de algunos países (como Francia con la ley Finanzas 2016 - Norma NF525). +Fingerprints=Eventos archivados y huellas digitales +FingerprintsDesc=Esta es la herramienta para examinar o extraer los registros inalterables. Éstos se generan y archivan localmente en una tabla dedicada, en tiempo real cuando registras un evento de negocios. Puede usar esta herramienta para exportar este archivo y guardarlo en un soporte externo (algunos países, como Francia, solicitan que lo hagas todos los años). Debes tener en cuenta que no hay ninguna función para purgar estos registros y cada cambio que se intente realizar directamente (por ejemplo, por un hacker) se informará con una huella digital inválida. Si realmente necesitas purgar esta tabla porque usaste la aplicación para hacer una demostración/prueba y deseas limpiar sus datos para comenzar su producción, puedes pedirle a t administrador que restablezca la base de datos (se eliminará toda la información). +CompanyInitialKey=Clave inicial de la empresa (hash del bloque génesis) +DownloadBlockChain=Descargar huellas digitales +OkCheckFingerprintValidity=El registro archivado es válido. Los datos de esta línea no se modificaron y la entrada es correlativa a la anterior. +OkCheckFingerprintValidityButChainIsKo=El registro archivado parece válido en comparación con el anterior, pero la cadena estaba previamente dañada. +AddedByAuthority=Almacenado con autoridad remota +NotAddedByAuthorityYet=Aún no almacenado con autoridad remota +ShowDetails=Mostrar detalles de registros almacenados +logPAYMENT_VARIOUS_CREATE=Pago creado (no asignado a una factura) +logPAYMENT_VARIOUS_MODIFY=Pago modificado (no asignado a una factura) +logPAYMENT_VARIOUS_DELETE=Borrado lógico de un pago (no asignado a una factura) +logPAYMENT_ADD_TO_BANK=Pago agregado al banco +logPAYMENT_CUSTOMER_CREATE=Pago de cliente creado +logPAYMENT_CUSTOMER_DELETE=Borrado lógico de un pago de cliente +logDONATION_PAYMENT_CREATE=Pago de donación cread +logDONATION_PAYMENT_DELETE=Borrado lógico de una donación +logBILL_PAYED=Factura de cliente marcada como paga +logBILL_UNPAYED=Factura de cliente marcada como impaga +logBILL_VALIDATE=Factura de cliente validada +logBILL_SENTBYMAIL=Factura de cliente enviada por corre +logBILL_DELETE=Borrado lógico de una factura de cliente +logDON_DELETE=Borrado lógico de una donación +logMEMBER_SUBSCRIPTION_DELETE=Borrado lógico de una suscripción de miembro +logCASHCONTROL_VALIDATE=Registro de flujo de efectivo +ListOfTrackedEvents=Lista de eventos rastreados +logDOC_DOWNLOAD=Descarga de un documento validado para imprimir o enviar +DataOfArchivedEvent=Datos completos del evento archivado +ImpossibleToReloadObject=Objeto original (tipo %s, id %s) no vinculado (consulte la columna 'Datos completos' para obtener los datos inalterables guardados) +BlockedLogAreRequiredByYourCountryLegislation=La legislación de su país puede requerir el módulo de registros inalterables. Al desactivar este módulo puede invalidar cualquier transacción futura con respecto a la ley y el uso de software legal, ya que no pueden ser validados por una auditoría fiscal. +BlockedLogActivatedBecauseRequiredByYourCountryLegislation=El módulo de registros inalterables se activó debido a la legislación de su país. Al desactivar este módulo puede invalidar cualquier transacción futura con respecto a la ley y el uso de software legal, ya que no pueden ser validados por una auditoría fiscal. +BlockedLogDisableNotAllowedForCountry=Lista de países donde el uso de este módulo es obligatorio (solo para evitar deshabilitar el módulo por error, si su país está en esta lista no es posible deshabilitar el módulo sin editar esta lista primero. Tenga en cuenta también que habilitar/deshabilitar este módulo guardará un registro inalterable). +TooManyRecordToScanRestrictFilters=Demasiados registros para escanear/analizar. Por favor reduzca la lista con filtros más restrictivos. diff --git a/htdocs/langs/es_AR/bookmarks.lang b/htdocs/langs/es_AR/bookmarks.lang new file mode 100644 index 00000000000..e6283a5823b --- /dev/null +++ b/htdocs/langs/es_AR/bookmarks.lang @@ -0,0 +1,18 @@ +# Dolibarr language file - Source file is en_US - bookmarks +AddThisPageToBookmarks=Agregar página actual a favoritos +Bookmark=Favorito +Bookmarks=Favoritos +ListOfBookmarks=Lista de favoritos +EditBookmarks=Listar/editar favoritos +NewBookmark=Nuevo favorito +ShowBookmark=Mostrar favorito +OpenANewWindow=Abrir en nueva pestaña +ReplaceWindow=Reemplazar pestaña actual +BookmarkTitle=Nombre del favorito +BehaviourOnClick=Comportamiento al seleccionar la URL de un favorito +CreateBookmark=Crear favorito +SetHereATitleForLink=Elegir un nombre para el favorito +UseAnExternalHttpLinkOrRelativeDolibarrLink=Usar un enlace externo/absoluto (https://URL) o un enlace interno/relativo (/DOLIBARR_ROOT/htdocs/...) +ChooseIfANewWindowMustBeOpenedOnClickOnBookmark=Elegir si el sitio vinculado debe abrirse en la pestaña actual o en una nueva +BookmarksManagement=Administración de favoritos +BookmarksMenuShortCut=Ctrl+Shift+M diff --git a/htdocs/langs/es_AR/boxes.lang b/htdocs/langs/es_AR/boxes.lang new file mode 100644 index 00000000000..a76803696e3 --- /dev/null +++ b/htdocs/langs/es_AR/boxes.lang @@ -0,0 +1,73 @@ +# Dolibarr language file - Source file is en_US - boxes +BoxLoginInformation=Información de Usuario +BoxLastRssInfos=Información RSS +BoxLastProducts=Ultimos %s Productos/Servicios +BoxLastProductsInContract=Últimos %s productos / servicios contratados +BoxLastSupplierBills=Últimas facturas de proveedor +BoxLastCustomerBills=Últimas facturas de cliente +BoxOldestUnpaidCustomerBills=Facturas de cliente sin pagar más antiguas +BoxOldestUnpaidSupplierBills=Facturas de proveedor sin pagar más antiguas +BoxLastCustomerOrders=Últimas órdenes de venta +BoxCurrentAccounts=Saldo de cuentas abiertas +BoxTitleLastRssInfos=Últimas %snoticias de %s +BoxTitleLastProducts=Productos/Servicios: Últimos%s modificados +BoxTitleLastModifiedSuppliers=Proveedores: últimos %s modificados +BoxTitleLastModifiedCustomers=Clientes: últimos %s modificados +BoxTitleLastModifiedProspects=Clientes Potenciales: últimos %s modificados +BoxTitleLastFicheInter=Ultimas %s intervenciones modificadas +BoxTitleOldestUnpaidCustomerBills=Facturas de cliente: %s más antiguas sin pagar +BoxTitleOldestUnpaidSupplierBills=Facturas de proveedor: %s más antiguas sin pagar +BoxTitleSupplierOrdersAwaitingReception=Pedidos de proveedor en espera de recepción +BoxTitleLastModifiedContacts=Contactos/Direcciones: últimos %s modificados +BoxMyLastBookmarks=Favoritos: últimos %s +BoxOldestExpiredServices=Servicios activos vencidos más antiguos +BoxLastExpiredServices=Últimos %s contratos más antiguos con servicios activos vencidos +BoxTitleLastModifiedDonations=Últimas donaciones modificadas %s +BoxTitleLatestModifiedBoms=Últimas %s BOMs modificadas +BoxTitleLatestModifiedMos=Últimas %s órdenes de fabricación modificadas +BoxGlobalActivity=Actividad global (facturas, presupuestos, órdenes) +FailedToRefreshDataInfoNotUpToDate=Error al actualizar flujo RSS. Última fecha de actualización exitosa: %s +LastRefreshDate=Última fecha de actualización +NoRecordedBookmarks=No hay favoritos definidos. +ClickToAdd=Haga clic aquí para agregar. +NoRecordedCustomers=No hay clientes registrados +NoRecordedContacts=No hay contactos grabados +NoActionsToDo=No hay acciones que realizar. +NoRecordedOrders=No hay órdenes de venta registradas +NoRecordedProposals=No hay presupuestos registrads +NoRecordedInvoices=No hay facturas de cliente registradas +NoUnpaidCustomerBills=No hay facturas de cliente sin pagar +NoUnpaidSupplierBills=No hay facturas de proveedor sin pagar +NoModifiedSupplierBills=No hay facturas de proveedor registradas +NoRecordedProducts=No hay productos/servicios registrados +NoRecordedProspects=No hay clientes potenciales registrados +NoContractedProducts=No hay productos/servicios contratados +NoRecordedContracts=No hay contratos registrados +NoRecordedInterventions=No hay intervenciones registradas +BoxLatestSupplierOrders=Últimas órdenes de compra +BoxLatestSupplierOrdersAwaitingReception=Últimas órdenes de compra (pendientes de recepción) +NoSupplierOrder=No hay órdenes de compra registradas +BoxCustomersInvoicesPerMonth=Facturas de clientes por mes +BoxSuppliersInvoicesPerMonth=Facturas de proveedor por mes +BoxCustomersOrdersPerMonth=Órdenes de venta por mes +BoxSuppliersOrdersPerMonth=Ordenes de Proveedor por mes +NoTooLowStockProducts=Ningún producto está por debajo del límite inferior de stock +BoxProductDistribution=Distribución de Productos/Servicios +BoxTitleLastModifiedSupplierBills=Facturas de proveedor: últimas %s modificadas +BoxTitleLatestModifiedSupplierOrders=Órdenes de proveedor: últimos %s modificados +BoxTitleLastModifiedCustomerBills=Facturas de cliente: últimas %s modificadas +BoxTitleLastModifiedCustomerOrders=Órdenes de venta: últimas %s modificadas +ForCustomersInvoices=Facturas de clientes +ForCustomersOrders=Órdenes de Clientes +LastXMonthRolling=Los últimos %s meses consecutivo s +ChooseBoxToAdd=Agregar widget a su dashboard +BoxAdded=El widget fue agregado a su tablero +BoxLastManualEntries=Últimas entradas contables +NoRecordedManualEntries=No hay registros contables manuales +BoxSuspenseAccount=Operación de cuenta contable con cuenta temporal +BoxTitleSuspenseAccount=Número de líneas no sin asignar +NumberOfLinesInSuspenseAccount=Número de línea en cuenta temporal +SuspenseAccountNotDefined=No se ha definido Cuenta temporal +BoxLastCustomerShipments=Últimos envíos de clientes +BoxTitleLastCustomerShipments=Últimos %s envíos de clientes +NoRecordedShipments=No se ha registrado el envío del cliente diff --git a/htdocs/langs/es_AR/cashdesk.lang b/htdocs/langs/es_AR/cashdesk.lang new file mode 100644 index 00000000000..b57a3cfc4d9 --- /dev/null +++ b/htdocs/langs/es_AR/cashdesk.lang @@ -0,0 +1,5 @@ +# Dolibarr language file - Source file is en_US - cashdesk +CashDeskMenu=Punto de venta +CashDesk=Punto de venta +CashdeskShowServices=Servicios de Venta +History=Historial diff --git a/htdocs/langs/es_AR/categories.lang b/htdocs/langs/es_AR/categories.lang new file mode 100644 index 00000000000..a3fec9ee376 --- /dev/null +++ b/htdocs/langs/es_AR/categories.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - categories +ExtraFieldsCategories=Atributos complementarios diff --git a/htdocs/langs/es_AR/commercial.lang b/htdocs/langs/es_AR/commercial.lang new file mode 100644 index 00000000000..d85913580a1 --- /dev/null +++ b/htdocs/langs/es_AR/commercial.lang @@ -0,0 +1,65 @@ +# Dolibarr language file - Source file is en_US - commercial +Commercial=Comercio +CommercialArea=Área de Comercio +Prospects=Clientes Potenciales +AddAnAction=Crea un evento +AddActionRendezVous=Crear una reunión +ConfirmDeleteAction=¿Estás seguro que quieres eliminar este evento? +CardAction=Ficha del evento +ActionOnCompany=Compañía vinculada +TaskRDVWith=Reunión con %s +ShowTask=Mostrar tarea +ShowAction=Mostrar evento +ThirdPartiesOfSaleRepresentative=Terceros con vendedor. +SaleRepresentativesOfThirdParty=Vendedores del tercero +SalesRepresentative=Vendedor +SalesRepresentatives=Vendedores +SalesRepresentativeFollowUp=Vendedor (seguimiento) +SalesRepresentativeSignature=Vendedor (firmante) +NoSalesRepresentativeAffected=No hay asignado ningún vendedor +ShowCustomer=Mostrar cliente +ShowProspect=Mostrar cliente potencia +ListOfProspects=Lista de clientes potenciales +ListOfCustomers=Lista de clientes +LastDoneTasks=Últimas %s acciones completas +LastActionsToDo=%s Acciones más antiguas incompletas +DoneAndToDoActions=Eventos completados y por hacer +DoneActions=Eventos completados +ToDoActions=Eventos incompletos +SendPropalRef=Envío de presupuesto %s +SendOrderRef=Envío de orden %s +StatusNotApplicable=No aplicables +StatusActionToDo=Para hacer +StatusActionDone=Completo +StatusActionInProcess=En proceso +TasksHistoryForThisContact=Eventos para este contacto +LastProspectNeverContacted=Nunca contactado +LastProspectToContact=Contactar +LastProspectContactDone=Contacto realizado +ActionDoneBy=Evento realizado por +ActionAC_FAX=Enviar fax +ActionAC_PROP=Enviar presupuesto por correo +ActionAC_EMAIL=Enviar correo +ActionAC_EMAIL_IN=Recepción de correo +ActionAC_RDV=Reuniones +ActionAC_INT=Intervención en el sitio +ActionAC_FAC=Enviar factura de cliente por correo +ActionAC_REL=Enviar factura de cliente por correo (recordatorio) +ActionAC_CLO=Cerrar +ActionAC_EMAILING=Enviar correo masivo +ActionAC_COM=Enviar órden de venta por correo +ActionAC_SHIP=Enviar información de envío por correo +ActionAC_SUP_ORD=Enviar orden de compra por correo +ActionAC_SUP_INV=Enviar factura de proveedor por correo +ActionAC_OTH=Otro +ActionAC_OTH_AUTO=Eventos insertados automáticamente +ActionAC_MANUAL=Eventos insertados manualmente +ActionAC_AUTO=Eventos insertados automáticamente +ActionAC_OTH_AUTOShort=Automático +Stats=Estadísticas de ventas +StatusProsp=Estado del cliente potencial +DraftPropals=Presupuestos en borrador +ToOfferALinkForOnlineSignature=Vínculo para firma digital +ThisScreenAllowsYouToSignDocFrom=Esta pantalla te permitirá aceptar, firmar o rechazar un presupuesto +SignatureProposalRef=Firma del presupuesto %s +FeatureOnlineSignDisabled=La funcionalidad para la firma digital está deshabilitada o el documento fue generado antes de habilitar la función diff --git a/htdocs/langs/es_AR/companies.lang b/htdocs/langs/es_AR/companies.lang new file mode 100644 index 00000000000..4c5dc7d6e1a --- /dev/null +++ b/htdocs/langs/es_AR/companies.lang @@ -0,0 +1,275 @@ +# Dolibarr language file - Source file is en_US - companies +ErrorCompanyNameAlreadyExists=El nombre de compañía %s ya existe. Elija otro diferente. +ErrorSetACountryFirst=Establecer primero el país +ConfirmDeleteCompany=¿Estás seguro que quieres eliminar esta empresa y toda su información vinculada? +DeleteContact=Eliminar un contacto/dirección +ConfirmDeleteContact=¿Estás seguro que quieres eliminar este contacto y toda su información vinculada? +MenuNewThirdParty=Nuevo Tercero +MenuNewCustomer=Nuevo Cliente +MenuNewProspect=Nuevo Cliente Potencial +MenuNewSupplier=Nuevo Proveedor +MenuNewPrivateIndividual=Nuevo contacto particular +NewCompany=Nueva compañía (posible cliente, cliente, proveedor) +NewThirdParty=Nuevo Tercero (posible cliente, cliente, proveedor) +CreateThirdPartyOnly=Crear Tercero +CreateThirdPartyAndContact=Crear tercero + Contacto +ProspectionArea=Área de clientes +IdThirdParty=ID Tercero +IdCompany=ID Compañía +IdContact=ID Contacto +Contacts=Contactos/Direcciones +ThirdPartyContacts=Contactos del Tercero +ThirdPartyContact=Cntactos/Direcciones del Tercero +Company=Compañía +CompanyName=Nombre de la compañía +AliasNames=Alias (comercial, marca registrada, ...) +AliasNameShort=Alias +Companies=Compañías +CountryIsInEEC=El país está dentro de la Comunidad Europea +PriceFormatInCurrentLanguage=Formato de visualización de precios en el idioma y moneda actuales +ThirdPartyEmail=E-mail del tercero +ThirdPartyProspects=Clientes Potenciales +ThirdPartyProspectsStats=Clientes Potenciales +ThirdPartyCustomersWithIdProf12=Clientes con %s o %s +ThirdPartyType=Tipo de Tercero +Individual=Contacto particular +ToCreateContactWithSameName=Creará automáticamente un contacto/dirección con la misma información que el subordinado del tercero. En la mayoría de los casos, incluso si su tercero es una persona física, basta con crear un tercero. +ParentCompany=Empresa padre +Subsidiaries=Subsidiarias +CivilityCode=Código civil +RegisteredOffice=Oficina registrada +Lastname=Apellido +UserTitle=Título +Address=Drección +State=Estado/Provincia +StateCode=Código postal del Estado/Provincia +CountryCode=Código de País +CountryId=ID de País +Chat=Chate +PhonePro=Teléfono profesional +PhonePerso=Teléfono Persona +PhoneMobile=Celular +No_Email=Rechazar correos masivos +Town=Ciudad +Poste=Posición +DefaultLang=Lenguaje por defect +VATIsUsed=Aplica IVA +VATIsUsedWhenSelling=Define si el tercero incluye impuesto de ventas o no cuando hace una factura a sus clientes +VATIsNotUsed=No aplica IVA +CopyAddressFromSoc=Copiar dirección de detalles del tercero +ThirdpartyNotCustomerNotSupplierSoNoRef=Tercero, ni cliente ni vendedor, no hay objetos de referencia disponibles +ThirdpartyIsNeitherCustomerNorClientSoCannotHaveDiscounts=Tercero, ni cliente ni vendedor, los descuentos no están disponibles. +PaymentBankAccount=Cuenta bancaria para pagos +OverAllOrders=Órdenes +OverAllSupplierProposals=Solicitudes de precio +LocalTax1IsUsed=Usar segundo impuesto +LocalTax1IsUsedES=Aplica Impuesto a las Ganancias +LocalTax1IsNotUsedES=No aplica Impuesto a las Ganancias +LocalTax2IsUsed=Utilizar el tercer impuesto +LocalTax2IsUsedES=Aplica IRPF +LocalTax2IsNotUsedES=No aplica IRPF +WrongCustomerCode=Código inválido de cliente +WrongSupplierCode=Código inválido de proveedor +CustomerCodeModel=Modelo de código de cliente +SupplierCodeModel=Modelo de código de proveedor +ProfId1Short=ID Prof. 1 +ProfId2Short=ID Prof. 2 +ProfId3Short=ID Prof. 3 +ProfId4Short=ID Prof. 4 +ProfId5Short=ID Prof. 5 +ProfId6Short=ID Prof. 6 +ProfId1=ID Profesional 1 +ProfId2=ID Profesional 2 +ProfId3=ID Profesional 3 +ProfId4=ID Profesional 4 +ProfId5=ID Profesional 5 +ProfId6=ID Profesional 6 +ProfId2AR=IIBB +ProfId1AT=ID Prof 1 (USt.-IdNr) +ProfId2AT=ID Prof 2 (Ust.-Nr) +ProfId3AT=ID Prof 3 (Handelsregister-Nr.) +ProfId1AU=ID Prof 1 (ABN) +ProfId1BE=ID Prof 1 (Número profesional) +ProfId2BR=IE (Inscripción Estatal) +ProfId3BR=IM (Inscripción Municipal) +ProfId3CH=ID Prof 1 (Número federal) +ProfId4CH=ID Prof 2 (Número de registro comercial) +ProfId1CL=ID Prof 1 (RUT) +ProfId1CO=ID Prof 1 (RUT) +ProfId1DE=ID Prof 1 (USt.-IdNr) +ProfId2DE=ID Prof 2 (Ust.-Nr) +ProfId3DE=ID Prof 3 (Handelsregister-Nr.) +ProfId1ES=ID Prof 1 (CIF/NIF) +ProfId2ES=ID Prof 2 (Número del seguro social) +ProfId3ES=ID prof 3 (CNAE) +ProfId4ES=ID Prof 4 (Número colegiado) +ProfId1FR=ID Prof 1 (SIREN) +ProfId2FR=ID Prof 2 (SIRET) +ProfId3FR=ID Prof 3 (NAF, old APE) +ProfId4FR=ID Prof 4 (RCS/RM) +ProfId1GB=Número de registro +ProfId1HN=ID Prof 1 (RTN) +ProfId1IN=ID Prof 1 (TIN) +ProfId2IN=ID Prof 2 (PAN) +ProfId3IN=ID Prof 3 (SRVC TAX) +ProfId4IN=ID Prof 4 +ProfId5IN=ID Prof 5 +ProfId1LU=ID Prof 1 (RCS Luxemburgo) +ProfId2LU=ID Prof 2 (permiso de comercio) +ProfId1MA=ID Prof 1 (RC) +ProfId2MA=ID Prof 2 (Patente) +ProfId3MA=ID Prof 3 (IF) +ProfId4MA=ID Prof 4 (CNSS) +ProfId5MA=ID Prof 5 (ICE) +ProfId1MX=ID Prof 1 (RFC) +ProfId2MX=ID Prof 2 (RP IMSS) +ProfId3MX=ID Prof 3 (Charter Profesional) +ProfId4NL=BSN +ProfId1PT=ID Prof 1 (NIPC) +ProfId2PT=ID Prof 2 (Número del seguro social) +ProfId3PT=ID Prof 3 (Número de registro comercial) +ProfId4PT=ID Prof 4 (Conservatorio) +ProfId1TN=ID Prof 1 (RC) +ProfId2TN=ID Prof 2 (matrícula fiscal) +ProfId3TN=ID Prof 3 (código Douane) +ProfId4TN=ID Prof 4 (BAN) +ProfId1US=ID Prof (FEIN) +ProfId1RO=ID Prof 1 (CUI) +ProfId2RO=ID Prof 2 (NI) +ProfId3RO=ID Prof 3 (CAEN) +ProfId5RO=ID Prof 5 (EUID) +ProfId1RU=ID Prof 1 (OGRN) +ProfId2RU=ID Prof 2 (INN) +ProfId3RU=ID Prof 3 (KPP) +ProfId4RU=ID Prof 4 (OKPO) +ProfId2DZ=Artículo +VATIntra=ID IVA +VATIntraShort=ID IVA +VATIntraSyntaxIsValid=La sintaxis es correcta +VATReturn=Devolución de IVA +ProspectCustomer=Cliente Potencial / Cliente +CustomerCard=Ficha de Cliente +CustomerRelativeDiscount=Descuento por cliente +SupplierRelativeDiscount=Descuento por proveedor +CustomerAbsoluteDiscountShort=Descuento absoluto +CompanyHasRelativeDiscount=Este cliente tiene un descuento predeterminado de %s%% +CompanyHasNoRelativeDiscount=Este cliente no tiene un descuento relativo predeterminado +HasRelativeDiscountFromSupplier=Tienes un descuento predeterminado de %s%% de este proveedor +HasNoRelativeDiscountFromSupplier=No tienes un descuento relativo predeterminado de este proveedor. +CompanyHasAbsoluteDiscount=Este cliente tiene descuentos disponibles (notas de crédito o anticipos) para %s %s +CompanyHasDownPaymentOrCommercialDiscount=Este cliente tiene descuentos disponibles (comerciales, anticipos) para %s %s +CompanyHasCreditNote=Este cliente todavía tiene notas de crédito para %s %s +HasNoAbsoluteDiscountFromSupplier=No tienes crédito de descuento disponible con este proveedor +HasAbsoluteDiscountFromSupplier=Tienes descuentos disponibles (notas de crédito o anticipos) para %s %s de este proveedor +HasDownPaymentOrCommercialDiscountFromSupplier=Tienes descuentos disponibles (comerciales, anticipos) para %s %s de este proveedor +HasCreditNoteFromSupplier=Tienes notas de crédito para %s %s de este proveedor +CompanyHasNoAbsoluteDiscount=Este cliente no tiene crédito de descuento disponible +CustomerAbsoluteDiscountAllUsers=Descuentos absolutos para clientes (otorgados por todos los usuarios) +CustomerAbsoluteDiscountMy=Descuentos absolutos para clientes (otorgados por usted) +SupplierAbsoluteDiscountAllUsers=Descuentos absolutos de proveedor (ingresados por todos los usuarios) +SupplierAbsoluteDiscountMy=Descuentos absolutos de proveedor (ingresados por usted) +DiscountNone=Ninguno +ContactId=ID de Contacto +NoContactDefinedForThirdParty=No hay contactos definido para este tercero +NoContactDefined=Ningún contactos definidos +DefaultContact=Contacto/dirección predeterminados +ContactByDefaultFor=Contacto/dirección predeterminados para +AddThirdParty=Crear Tercero +CustomerCode=Código de cliente +SupplierCode=Código de proveedor +CustomerCodeShort=Código de cliente +SupplierCodeShort=Código de proveedor +CustomerCodeDesc=Código de cliente, único para cada cliente +SupplierCodeDesc=Código de proveedor, único para cada proveedor +RequiredIfCustomer=Es requerido si el tercero es un cliente o cliente potencial +RequiredIfSupplier=Es requerido si el tercero es un proveedor +ValidityControledByModule=Validez controlada por el módulo +ThisIsModuleRules=Reglas para este módulo +CompanyDeleted=Empresa "%s" eliminada de la base de datos +ListOfContacts=Lista de contactos/direcciones +ListOfContactsAddresses=Lista de contactos/direcciones +ListOfThirdParties=Lista de terceros +ContactType=Tipo de Contacto +ContactForOrders=Contacto de la orden +ContactForOrdersOrShipments=Contacto de la orden o su envío +ContactForProposals=Contacto del presupuesto +ContactForContracts=Contacto del contrato +ContactForInvoices=Contacto de facturación +NoContactForAnyOrder=Este contacto no es un contacto para ninguna orden. +NoContactForAnyOrderOrShipments=Este contacto no es un contacto para ninguna orden o envío +NoContactForAnyProposal=Este contacto no es un contacto por un presupuesto +NoContactForAnyContract=Este contacto no es un contacto por un contrato +NoContactForAnyInvoice=Este contacto no es un contacto por una factura +NewContactAddress=Nuevo contacto/dirección +EditCompany=Editar empresa +ThisUserIsNot=Este usuario no es un cliente, cliente potencial o proveedor. +VATIntraCheck=Cheque +VATIntraCheckDesc=El ID de IVA debe incluir el prefijo del país. El enlace %s utiliza el servicio de verificación de IVA europeo (VIES) que requiere acceso a Internet desde Dolibarr. +VATIntraCheckableOnEUSite=Consulte el ID de IVA intracomunitario en el sitio web de la Comisión Europea +VATIntraManualCheck=También puedes consultar manualmente en el sitio web de la Comisión Europea %s +ErrorVATCheckMS_UNAVAILABLE=No es posible comprobar. El servicio de verificación no lo proporciona el estado del miembro (%s). +NorProspectNorCustomer=Ni cliente ni cliente potencial +JuridicalStatus=Tipo de entidad legal +ProspectLevel=Cliente potencia +OthersNotLinkedToThirdParty=Otros, no vinculados a un tercero +ProspectStatus=Estado del cliente potencial +PL_NONE=Ninguna +TE_GROUP=Empresa grande +TE_MEDIUM=PyME +TE_ADMIN=Pública +TE_SMALL=Pequeña empresa +ChangeDoNotContact=Marcar como 'No contactar' +ChangeNeverContacted=Marcar como 'Nunca contactado' +ChangeToContact=Marcar como 'A contactar' +ChangeContactInProcess=Marcar como 'Contacto en curso' +ChangeContactDone=Marcar como 'Contacto realizado' +ContactNotLinkedToCompany=Contacto no vinculado a ningún tercero +DolibarrLogin=Usuario Dlibarr +NoDolibarrAccess=Sin acceso a Dolibarr +ExportDataset_company_1=Terceros (empresas/fundaciones/personas físicas) y sus propiedades. +ImportDataset_company_1=Terceros y sus propiedades +ImportDataset_company_2=Contactos/direcciones adicionales de terceros y atributos +ImportDataset_company_4=Vendedores de terceros (asignar vendedores/usuarios a empresas) +PriceLevel=Nivel de precio +PriceLevelLabels=Etiquetas de nivel de precio +DeliveryAddress=Dirección de entrega +DeleteFile=Eliminar archivo +ConfirmDeleteFile=¿Estás seguro que quieres eliminar este archivo? +AllocateCommercial=Asignado al vendedor +Organization=Organización +FiscalYearInformation=Año fiscal +FiscalMonthStart=Mes de inicio del año fiscal +SocialNetworksFacebookURL=Facebook +SocialNetworksTwitterURL=Twitter +SocialNetworksLinkedinURL=Linkedin +SocialNetworksInstagramURL=Instagram +SocialNetworksYoutubeURL=Youtube +SocialNetworksGithubURL=GitHub +YouMustAssignUserMailFirst=Debes crear un correo para este usuario antes de poder agregar una notificación por correo. +YouMustCreateContactFirst=Para poder agregar notificaciones por correo, primero debes definir contactos con correos válidos para el tercero +ListSuppliersShort=Lista de proveedores +ListProspectsShort=Lista de Clientes Potenciales +ListCustomersShort=Lista de clientes +ThirdPartiesArea=Terceros/Contactos +LastModifiedThirdParties=Últimos%s terceros modificados +UniqueThirdParties=Total de terceros +InActivity=Abierto +ThirdPartyIsClosed=El tercero está cerrado. +CurrentOutstandingBill=Factura pendiente actual +OutstandingBill=Max. por factura pendiente +OutstandingBillReached=Max. alcanzado por factura pendiente +OrderMinAmount=Monto mínimo por orden +MonkeyNumRefModelDesc=Devuelve un número con el formato %syymm-nnnn para el código del cliente y %syymm-nnnn para el código del proveedor donde yy es el año, mm es el mes y nnnn es una secuencia sin interrupción ni retorno a 0. +LeopardNumRefModelDesc=El código es gratis. Este código puede modificarse en cualquier momento. +ManagingDirectors=Nombre(s) del gerente (CEO, director, presidente...) +MergeOriginThirdparty=Duplicar el tercero (tercero que quieres eliminar) +ConfirmMergeThirdparties=¿Estás seguro que quieres fusionar este tercero con el actual? Todos los objetos vinculados (facturas, pedidos, ...) se moverán al tercero actual, luego se eliminará el tercero seleccionado. +ThirdpartiesMergeSuccess=Los terceros se han fusionado +SaleRepresentativeLogin=Usuario del vendedor +SaleRepresentativeFirstname=Nombre del vendedor +SaleRepresentativeLastname=Apellido del vendedor +ErrorThirdpartiesMerge=Se produjo un error al eliminar los terceros. Por favor revisa el registro. Los cambios se han reversado. +NewCustomerSupplierCodeProposed=Código de cliente o proveedor ya utilizado, se ha sugerido un nuevo código +PaymentTypeBoth=Tipo de pago - cliente y proveedor +MulticurrencyUsed=Usar diferentes monedas +MulticurrencyCurrency=Moneda diff --git a/htdocs/langs/es_AR/compta.lang b/htdocs/langs/es_AR/compta.lang new file mode 100644 index 00000000000..787596fa042 --- /dev/null +++ b/htdocs/langs/es_AR/compta.lang @@ -0,0 +1,5 @@ +# Dolibarr language file - Source file is en_US - compta +Param=Preparar +ByThirdParties=Por terceros +CodeNotDef=Sin definir +LinkedOrder=Enlazar a orden diff --git a/htdocs/langs/es_AR/contracts.lang b/htdocs/langs/es_AR/contracts.lang new file mode 100644 index 00000000000..78228bc46c5 --- /dev/null +++ b/htdocs/langs/es_AR/contracts.lang @@ -0,0 +1,77 @@ +# Dolibarr language file - Source file is en_US - contracts +ContractsArea=Area de Contratos +ListOfContracts=Lista de contratos +ContractCard=Ficha del contrato +ContractStatusNotRunning=Inactivos +ServiceStatusInitial=Inactivos +ServiceStatusRunning=Activos +ServiceStatusNotLate=Activos, no vencidos +ServiceStatusNotLateShort=No vencidos +ServiceStatusLate=Activos, vencidos +ServiceStatusLateShort=Vencidos +ShowContractOfService=Mostrar contrato de servicio +Contracts=Los contratos +ContractsSubscriptions=Contratos/suscripciones +ContractsAndLine=Contratos y línea de contratos +MenuExpiredServices=Servicios vencidos +MenuClosedServices=Servicios finalizados +DeleteAContract=Eliminar contrato +CloseAContract=Cerrar contrato +ConfirmDeleteAContract=¿Estás seguro que quieres eliminar este contrato y todos sus servicios? +ConfirmValidateContract=¿Estás seguro que quieres validar este contrato bajo el nombre %s? +ConfirmActivateAllOnContract=Esto activará todos los servicios (aún no activos). ¿Estás seguro que quieres activar todos los servicios? +ConfirmCloseContract=Esto cerrará todos los servicios (activos o no). ¿Estás seguro que quieres cerrar este contrato? +ConfirmCloseService=¿Estás seguro que quieres cerrar este servicio con fecha %s? +ValidateAContract=Validar contrato +ActivateService=Activar servicio +ConfirmActivateService=¿Estás seguro que quieres activar este servicio con fecha %s? +RefContract=Referencia de contrato +DateContract=Fecha de contrato +DateServiceActivate=Fecha de activación del servicio +ListOfServices=Lista de servicios +ListOfInactiveServices=Lista de servicios inactivos +ListOfExpiredServices=Lista de servicios activos vencidos +ListOfClosedServices=Lista de servicios cerrados +ListOfRunningServices=Lista de servicios activos +NotActivatedServices=Servicios inactivos (entre contratos validados) +BoardNotActivatedServices=Servicios para activar entre contratos validados +BoardNotActivatedServicesShort=Servicios para activar +LastContracts=Ultimos %s contratos +LastModifiedServices=Ultimos %s servicios modificados +ContractStartDate=Fecha de inicio +ContractEndDate=Fecha de fin +DateStartPlanned=Fecha planificada de inicio +DateStartPlannedShort=Fecha planificada de inicio +DateEndPlanned=Fecha planificada de fin +DateEndPlannedShort=Fecha planificada de fin +DateStartReal=Fecha real de inicio +DateStartRealShort=Fecha real de inicio +DateEndReal=Fecha real de fin +DateEndRealShort=Fecha real de fin +CloseService=Servicio cerrado +BoardExpiredServices=Servicios vencidos +BoardExpiredServicesShort=Servicios vencidos +DraftContracts=Borradores de contratos +CloseRefusedBecauseOneServiceActive=El contrato no puede cerrarse mientras alguno de sus servicios esté activo +CloseAllContracts=Cerrar todas las líneas del contrato +DeleteContractLine=Eliminar una línea del contrato +ConfirmDeleteContractLine=¿Estás seguro que quieres eliminar esta línea del contrato? +MoveToAnotherContract=Mover servicio a otro contrato. +ConfirmMoveToAnotherContract=He seleccionado un nuevo contrato destino y confirmo que quiero mover este servicio a ese contrato. +ConfirmMoveToAnotherContractQuestion=¿Desea elegir a qué contrato existente (del mismo tercero) quiere mover este servicio? +PaymentRenewContractId=Renovar línea de contrato (número %s) +ExpiredSince=Fecha de vencimiento +NoExpiredServices=No hay servicios activos vencidos +ListOfServicesToExpireWithDuration=Lista de servicios que vencen en %s días +ListOfServicesToExpireWithDurationNeg=Lista de servicios vencidos hace más de %s días +ListOfServicesToExpire=Lista de servicios a vencer +NoteListOfYourExpiredServices=Esta lista contiene sólo los servicios de contratos de terceros que tienes relacionados como representante de ventas. +StandardContractsTemplate=Template estándar de contratos +OnlyLinesWithTypeServiceAreUsed=Sólo serán clonadas las líneas de tipo "Servicio". +ConfirmCloneContract=¿Estás seguro que quieres clonar el contrato %s? +LowerDateEndPlannedShort=Fecha más temprana planificada de finalización de los servicios activos +TypeContact_contrat_internal_SALESREPSIGN=Representante de ventas firmante del contrato +TypeContact_contrat_internal_SALESREPFOLL=Representante de ventas encargado del seguimiento del contrato +TypeContact_contrat_external_BILLING=Contacto de facturación del cliente +TypeContact_contrat_external_CUSTOMER=Contacto de seguimiento del cliente +TypeContact_contrat_external_SALESREPSIGN=Contacto del cliente firmante del contrato diff --git a/htdocs/langs/es_AR/cron.lang b/htdocs/langs/es_AR/cron.lang new file mode 100644 index 00000000000..f3f72b8cb2f --- /dev/null +++ b/htdocs/langs/es_AR/cron.lang @@ -0,0 +1,58 @@ +# Dolibarr language file - Source file is en_US - cron +Permission23101 =Leer tarea programada +Permission23102 =Crear/actualizar tarea programada +Permission23103 =Eliminar tarea programada +Permission23104 =Ejecutar tarea programada +CronSetup=Configuración para administración de tareas programadas +URLToLaunchCronJobs=URL para verificar y ejecutar tareas programadas calificadas +OrToLaunchASpecificJob=O para verificar y ejecutar una tarea específica +KeyForCronAccess=Clave de seguridad para la URL para ejecutar tareas programadas +FileToLaunchCronJobs=Línea de comandos para verificar y ejecutar tareas programadas calificadas +CronExplainHowToRunUnix=O el ambiente de Unix que deberías utilizar para una entrada programada para ejecutar el comando cada 5 minutos +CronExplainHowToRunWin=En el ambiente de Microsoft(tm) Windows puedes usar las herramientas de Tareas programadas para ejecutar la línea de comandos cada 5 minutos +CronJobDefDesc=Los perfiles de tareas programadas se definen en el archivo descriptor del módulo. Cuando el módulo está activo, se cargan y están disponibles para que puedas administrar las tareas desde el menú de herramientas de administración %s. +CronJobProfiles=Lista de perfiles predefinidos de tareas planificadas +CronLastOutput=Resultado de la última ejecución +CronLastResult=Último código de resultado +CronDelete=Eliminar tareas programadas +CronConfirmDelete=¿Estás seguro de que quieres eliminar estas tareas programadas? +CronConfirmExecute=¿Estás seguro que quieres ejecutar estas tareas programadas ahora mismo? +CronInfo=El módulo de tareas programadas te permite programar tareas para que sean ejecutadas automáticamente. Las tareas también pueden ejecutarse manualmente. +CronDtStart=No antes que +CronDtEnd=No después que +CronDtNextLaunch=Próxima ejecución +CronDtLastLaunch=Fecha de inicio de última ejecución +CronDtLastResult=Fecha de fin de última ejecución +CronMethod=Método +CronModule=Módulo +CronNoJobs=No se han registrado tareas +CronNbRun=Cantidad de ejecuciones +CronMaxRun=Cantidad máxima de ejecuciones +CronEach=Cada +JobFinished=Tarea ejecutada y finalizada +CronAdd=Agregar tareas +CronEvery=Ejecutar tarea cada +CronArgs=Parámetros +CronNote=Comentar +CronFieldMandatory=Los campos %s son obligatorios +CronErrEndDateStartDt=La fecha de finalización no puede ser anterior a la fecha de inicio +StatusAtInstall=Estado de la instalación del módulo +CronStatusActiveBtn=Habilitar +CronStatusInactiveBtn=Deshabilitar +CronTaskInactive=Esta tarea está deshabilitada +CronClassFile=Nombre de archivo y clase +CronModuleHelp=Nombre del directorio del módulo Dolibarr (también funciona con el módulo externo Dolibarr).
    Por ejemplo, para llamar al objeto fetch del objeto Producto Dolibarr /htdocs/product/class/product.class.php, el valor para el módulo es
    product +CronClassFileHelp=La ruta relativa y el nombre del archivo a cargar (la ruta es relativa al directorio raíz del servidor web).
    Por ejemplo para llamar al método de fetch del objeto Producto Dolibarr /htdocs/product/class/ product.class.php, el valor de nombre de archivo de clase es
    product/class/product.class.php +CronObjectHelp=El nombre del objeto a cargar.
    Por ejemplo para llamar al método fetch del objeto Producto Dolibarr /htdocs/product/class/product.class.php, el valor para el nombre del archivo de la clase es
    Product +CronMethodHelp=El objeto método a ejecutar.
    Por ejemplo para llamar al método fetch del objeto Producto Dolibarr /htdocs/product/class/product.class.php, el valor para el método es
    fetch +CronArgsHelp=Los argumentos del método.
    Por ejemplo para llamar al método fetch del objeto Producto Dolibarr /htdocs/product/class/product.class.php, el valor para los parámetros puede ser
    0, ProductRef +CronCommandHelp=La línea de comandos del sistema para ejecutar. +CronCreateJob=Crear nueva Tarea Programadas +CronType_method=Método de llamada de una clase PHP +CronCannotLoadClass=No se puede cargar el archivo de clase %s (para usar la clase %s) +CronCannotLoadObject=Se cargó el archivo de clase %s, pero el objeto %s no se encontró en él +UseMenuModuleToolsToAddCronJobs=Vaya al menú "Inicio - Herramientas administrativas - Tareas programadas" para ver y editar tareas programadas. +JobDisabled=Tarea deshabilitada +MakeLocalDatabaseDumpShort=Resguardo local de la base de datos +MakeLocalDatabaseDump=Crear un dump de la base de datos local. Los parámetros son: compresión ('gz' o 'bz' o 'ninguno'), tipo de copia de seguridad ('mysql', 'pgsql', 'auto'), 1, 'auto' o nombre de archivo para construir, número de archivos de copia de seguridad para mantener +WarningCronDelayed=Atención, por motivos de rendimiento, sea cual sea la próxima fecha de ejecución de las tareas programadas, sus trabajos pueden demorarse hasta un máximo de %s horas, antes de ejecutarse. diff --git a/htdocs/langs/es_AR/deliveries.lang b/htdocs/langs/es_AR/deliveries.lang new file mode 100644 index 00000000000..e8e7afa810a --- /dev/null +++ b/htdocs/langs/es_AR/deliveries.lang @@ -0,0 +1,23 @@ +# Dolibarr language file - Source file is en_US - deliveries +Delivery=Entrega +DeliveryRef=Ref. Entrega +DeliveryCard=Ficha del comprobante +DeliveryOrder=Comprobantede Entrega +CreateDeliveryOrder=Generar comprobante de entrega +SetDeliveryDate=Establecer fecha de envío +ValidateDeliveryReceipt=Validar comprobante de entrega +ValidateDeliveryReceiptConfirm=¿Estás seguro que quieres validar este comprobante de entrega? +DeleteDeliveryReceipt=Eliminar comprobante de entrega +DeleteDeliveryReceiptConfirm=¿Estás seguro de que quieres eliminar el comprobante de entrega %s? +DeliveryMethod=Método de entrega +TrackingNumber=Código de seguimiento +DeliveryNotValidated=Entrega no validada +StatusDeliveryCanceled=Cancelado +NameAndSignature=Nombre y firma: +ToAndDate=Para___________________________________ en ____ / _____ / __________ +GoodStatusDeclaration=He recibido los productos mencionados en buenas condiciones, +Deliverer=Entregó: +Sender=Emisor +NonShippable=No se puede enviar +ShowReceiving=Mostrar comprobante de entrega +NonExistentOrder=Orden inexistente diff --git a/htdocs/langs/es_AR/dict.lang b/htdocs/langs/es_AR/dict.lang new file mode 100644 index 00000000000..4496170bfd1 --- /dev/null +++ b/htdocs/langs/es_AR/dict.lang @@ -0,0 +1,87 @@ +# Dolibarr language file - Source file is en_US - dict +CountryNL=Holanda +CountryAZ=Ayerbazán +CountryBH=Bahrein +CountryBM=Islas Bermudas +CountryBW=Boswana +CountryCX=Isla de Navidad +CountryCC=Islas de Cocos (Keeling) +CountryCZ=Republica checa +CountryFO=Islas Faroe +CountryFJ=Islas Fiyi +CountryGF=Guayana Francesa +CountryTF=Territorios Franceses del Sur +CountryGY=Guayana +CountryHM=Heard Island y McDonald +CountryVA=Santa Sede (Estado de la Ciudad del Vaticano) +CountryIQ=Irak +CountryJO=Jordán +CountryKG=Kirguistán +CountryMK=Macedonia, la ex Yugoslava de +CountryMX=México +CountryPS=Territorio Palestino Ocupado +CountryPG=Papúa-Nueva Guinea +CountrySH=Santa Helena +CountryVC=San Vicente y Granadinas +CountrySO=Somalía +CountryZA=Sudáfrica +CountryGS=Islas Georgia y Sándwich del Sur +CountrySJ=Svalbard y Jan Mayen +CountrySZ=Swazilandia +CountryUM=Islas Ultramarinas Menores de Estados Unidos +CountryVI=Islas Vírgenes, EEUU +CountryEH=Sahara Occidental +CountryIM=Isla del hombre +CountryBL=San Bartolomé +CountryMF=San Martín +CivilityMME=Sra. +CivilityMR=Sr. +CivilityMLE=Srita. +CivilityMTRE=Mr. +CivilityDR=Doc. +CurrencyAUD=Dólares Australianos +CurrencySingAUD=Dólar Australiano +CurrencyCAD=Dólares Canadienses +CurrencySingCAD=Dólar Canadiense +CurrencyINR=Rupias +CurrencySingINR=Rupia +CurrencyMGA=Ariarys +CurrencyMUR=Rupias de Mauricio +CurrencySingMUR=Rupia de Mauricio +CurrencySingNOK=Corona noruega +CurrencyUSD=Dólares estadounidenses +CurrencySingUSD=Dólar estadounidense +CurrencyUAH=Jrivnia +CurrencySingUAH=Jrivnia +CurrencySingXOF=Franc CFA BCEAO +CurrencyCentEUR=centavos +CurrencyCentSingEUR=centavo +DemandReasonTypeSRC_CAMP_MAIL=Campaña de Mailing +DemandReasonTypeSRC_CAMP_EMAIL=Campaña de Mailing +DemandReasonTypeSRC_CAMP_FAX=Campaña de fax +DemandReasonTypeSRC_SHOP=Contacto de la tienda +PaperFormatUSLETTER=Formato Carta EEUU +PaperFormatUSLEGAL=Formato Legal EEUU +PaperFormatUSEXECUTIVE=Formato Ejecutivo EEUU +PaperFormatUSLEDGER=Formato de libro mayor/tabloide +PaperFormatCAP1=Formato P1 Canadá +PaperFormatCAP2=Formato P2 Canadá +PaperFormatCAP3=Formato P3 Canadá +PaperFormatCAP4=Formato P4 Canadá +PaperFormatCAP5=Formato P5 Canadá +PaperFormatCAP6=Formato P6 Canadá +ExpAuto3PCV=3 CV y más +ExpAuto4PCV=4 CV y más +ExpAuto5PCV=5 CV y más +ExpAuto6PCV=6 CV y más +ExpAuto7PCV=7 CV y más +ExpAuto8PCV=8 CV y más +ExpAuto9PCV=9 CV y más +ExpAuto10PCV=10 CV y más +ExpAuto11PCV=11 CV y más +ExpAuto12PCV=12 CV y más +ExpAuto13PCV=13 CV y más +ExpCyclo=Capacidad inferior a 50 cm3 +ExpMoto12CV=Moto 1 o 2 CV +ExpMoto345CV=Moto 3, 4 o 5 CV +ExpMoto5PCV=Moto 5 CV y más diff --git a/htdocs/langs/es_AR/donations.lang b/htdocs/langs/es_AR/donations.lang new file mode 100644 index 00000000000..49195ca8ece --- /dev/null +++ b/htdocs/langs/es_AR/donations.lang @@ -0,0 +1,20 @@ +# Dolibarr language file - Source file is en_US - donations +DonationRef=Ref. Donación +ConfirmDeleteADonation=¿Estás seguro de que quieres eliminar esta donación? +DonationStatusPromiseNotValidated=Compromiso en borrador +DonationStatusPromiseValidated=Compromiso validad +DonationStatusPaid=Donación recibida +DonationStatusPromiseNotValidatedShort=Borrador +DonationStatusPromiseValidatedShort=Validado +DonationStatusPaidShort=Recibido +DonationTitle=Comprobante de donación +ValidPromess=Validar compromiso +DonationReceipt=Comprobante de donación +DonationsModels=Modelos de documentos para comprobantes de donación +DonationRecipient=Destinatario de la donación +IConfirmDonationReception=El destinatario declara haber recibido, como donación, el siguiente monto +MinimumAmount=El monto mínimo es %s +FreeTextOnDonations=Texto para mostrar en el pie de página +DONATION_ART200=Si le interesa, puede ver el artículo 200 del CGI (Código General de Impuestos) +DONATION_ART238=Si le interesa, puede ver el artículo 238 del CGI (Código General de Impuestos) +DONATION_ART885=Si le interesa, puede ver el artículo 885 del CGI (Código General de Impuestos) diff --git a/htdocs/langs/es_AR/ecm.lang b/htdocs/langs/es_AR/ecm.lang new file mode 100644 index 00000000000..960a8ceef4d --- /dev/null +++ b/htdocs/langs/es_AR/ecm.lang @@ -0,0 +1,50 @@ +# Dolibarr language file - Source file is en_US - ecm +ECMNbOfDocs=Cantidad de documentos en la carpeta +ECMSection=Carpeta +ECMSectionManual=Carpeta manual +ECMSectionAuto=Carpeta automática +ECMSectionsManual=Arbol Manual +ECMSectionsAuto=Arbol automático +ECMSections=Carpetas +ECMRoot=Raíz ACE +ECMNewSection=Crear Carpeta +ECMAddSection=Agregar Carpeta +ECMCreationDate=Fecha de Creación +ECMNbOfFilesInDir=Cantidad de archivos en la carpeta +ECMNbOfSubDir=Cantidad de sub-carpetas +ECMNbOfFilesInSubDir=Cantidad de archivos en sub-carpetas +ECMArea=Area SAD/ACE +ECMAreaDesc=El área de SAD/ACE (Sistema de Administración de Documentos / Administración de Contenido Electrónico) te permite guardar, compartir y rápidamente buscar todo tipo de documentos en Dolibarr. +ECMAreaDesc2=* Las carpetas automáticas son llenadas automáticamente al agregar documentos desde la ficha de un elemento.
    * Las carpetas manuales pueden ser usadas para guardar documentos no enlazados a un elemento en particular. +ECMSectionWasRemoved=Carpeta %s ha sido eliminada. +ECMSectionWasCreated=Carpeta %s ha sido creada. +ECMSearchByKeywords=Búsqueda por palabras clave +ECMSearchByEntity=Búsqueda por objeto +ECMSectionOfDocuments=Carpetas de documentos +ECMDocsBySocialContributions=Documentos vinculados a impuestos fiscales o sociales +ECMDocsByThirdParties=Documentos vinculados a terceros +ECMDocsByProposals=Documentos vinculados a propuestas +ECMDocsByOrders=Documentos vinculados a órdenes de cliente +ECMDocsByContracts=Documentos vinculados a contratos +ECMDocsByInvoices=Documentos vinculados a facturas de cliente +ECMDocsByProducts=Documentos vinculados a productos +ECMDocsByProjects=Documentos vinculados a proyectos +ECMDocsByUsers=Documentos vinculados a usuarios +ECMDocsByInterventions=Documentos vinculados a intervenciones +ECMDocsByExpenseReports=Documentos vinculados a reportes de gastos +ECMDocsByHolidays=Documentos vinculados a vacaciones +ECMDocsBySupplierProposals=Documentos vinculados a propuestas de proveedor +ECMNoDirectoryYet=No hay carpetas creadas +ShowECMSection=Mostrar carpeta +DeleteSection=Eliminar carpeta +ConfirmDeleteSection=¿Confirmas que quieres eliminar la carpeta %s? +ECMDirectoryForFiles=Directorio correspondiente para archivos +CannotRemoveDirectoryContainsFilesOrDirs=No se puede eliminar porque contiene algunos archivos o sub-carpetas +CannotRemoveDirectoryContainsFiles=No se puede eliminar porque contiene algunos archivos +ECMFileManager=Administrador de archivos +ECMSelectASection=Seleccione una carpeta del árbol... +DirNotSynchronizedSyncFirst=Esta carpeta parece haberse creado o modificado por fuera del módulo de ECM. Deberás primero presionar el botón Re-sincronizar para sincronizar el disco y la base de datos para obtener el contenido de esta carpeta +ReSyncListOfDir=Re-sincronizar lista de carpetas +HashOfFileContent=Hash del contenido del archivo +NoDirectoriesFound=No se han encontrado carpetas +FileNotYetIndexedInDatabase=El archivo no se ha indizado todavía en la base de datos (intenta volver a cargarlo) diff --git a/htdocs/langs/es_AR/externalsite.lang b/htdocs/langs/es_AR/externalsite.lang new file mode 100644 index 00000000000..b7942f1500e --- /dev/null +++ b/htdocs/langs/es_AR/externalsite.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - externalsite +ExternalSiteSetup=Establezca un enlace al sitio web externo +ExternalSiteModuleNotComplete=El módulo SitioExterno no fue configurado apropiadamente. diff --git a/htdocs/langs/es_AR/ftp.lang b/htdocs/langs/es_AR/ftp.lang new file mode 100644 index 00000000000..2ccb645c797 --- /dev/null +++ b/htdocs/langs/es_AR/ftp.lang @@ -0,0 +1,13 @@ +# Dolibarr language file - Source file is en_US - ftp +FTPClientSetup=Configuración de módulo de cliente FTP +NewFTPClient=Configuración de nueva conexión FTP +FTPArea=Area FTP +FTPAreaDesc=Esta pantalla muestra una vista de un servidor FTP. +SetupOfFTPClientModuleNotComplete=La configuración del módulo de cliente FTP parece estar incompleta +FTPFeatureNotSupportedByYourPHP=Tu versión de PHP no soporta funciones FTP +FailedToConnectToFTPServer=Error al conectar al servidor FTP (servidor %s, puerto %s) +FailedToConnectToFTPServerWithCredentials=Error al iniciar sesión en el servidor FTP con el usuario/contraseña definidos +FTPFailedToRemoveFile=Error al remover archivo %s. +FTPFailedToRemoveDir=Error al remover carpeta %s: revise los permisos y que la carpeta esté vacía. +ChooseAFTPEntryIntoMenu=Elija un sitio FTP desde el menú... +FailedToGetFile=Error al obtener archivos %s diff --git a/htdocs/langs/es_AR/help.lang b/htdocs/langs/es_AR/help.lang new file mode 100644 index 00000000000..2448fcf85b3 --- /dev/null +++ b/htdocs/langs/es_AR/help.lang @@ -0,0 +1,19 @@ +# Dolibarr language file - Source file is en_US - help +CommunitySupport=Foro/Soporte Wiki +EMailSupport=E-mail del soporte +RemoteControlSupport=Soporte en línea en tiempo real / remoto +OtherSupport=Otro soporte +ToSeeListOfAvailableRessources=Para contactar / ver los recursos disponibles: +HelpCenter=Centro de ayuda +DolibarrHelpCenter=Ayuda de Dolibarr y Centro de Soporte +ToGoBackToDolibarr=De otra forma, haga click aquí para continuar utilizando Dolibarr. +TypeSupportCommunauty=Comunidad (gratuito) +Efficiency=Eficiencia +TypeHelpOnly=Sólo ayuda +TypeHelpDev=Ayuda+Desarroll +TypeHelpDevForm=Ayuda+Desarrollo+Capacitación +BackToHelpCenter=De otra forma, vuelva al Inicio del Centro de Ayuda. +LinkToGoldMember=Podés llamar a uno de los profesores seleccionados por Dolibarr en tu lenguaje (%s) haciendo click en su Widget (el estado y el precio máximo se actualizan automáticamente): +PossibleLanguages=Lenguajes soportados +SubscribeToFoundation=Contribuye al proyecto Dolibarr, suscríbete a la fundación +SeeOfficalSupport=Para soporte oficial de Dolibarr en tu lenguaje:
    %s diff --git a/htdocs/langs/es_AR/holiday.lang b/htdocs/langs/es_AR/holiday.lang new file mode 100644 index 00000000000..047d26e65d1 --- /dev/null +++ b/htdocs/langs/es_AR/holiday.lang @@ -0,0 +1,44 @@ +# Dolibarr language file - Source file is en_US - holiday +HRM=ARH +Holidays=Licencia +CPTitreMenu=Licencia +MenuAddCP=Nueva solicitud de licencia +NotActiveModCP=Debe habilitar el módulo de Licencias para ver esta página. +AddCP=Crear una solicitud de licencia +DateDebCP=Fecha de inicio +DateFinCP=Fecha de fin +ToReviewCP=Esperando aprobación +ApprovedCP=Aprobado +CancelCP=Cancelado +RefuseCP=Rechazado +ValidatorCP=Aprobador +ListeCP=Lista de licencias +LeaveId=ID de Licencia +ReviewedByCP=Será aprobada por +UserForApprovalID=ID de usuario aprobador +UserForApprovalFirstname=Nombre de aprobador +UserForApprovalLastname=Apellido de aprobador +UserForApprovalLogin=Usuario aprobador +SendRequestCP=Crear solicitud de licencia +DelayToRequestCP=Las solicitudes de licencias deben realizarse al menos %s día(s) antes. +MenuConfCP=Saldo de licencia +SoldeCPUser=El saldo de licencias es de %s días. +ErrorEndDateCP=Debes seleccionar una fecha de finalización mayor que la fecha de inicio. +ErrorSQLCreateCP=Se produjo un error de SQL durante la creación: +ErrorIDFicheCP=Se ha producido un error, la solicitud de licencia no existe. +ErrorUserViewCP=No tienes autorización para leer esta solicitud de licencia. +InfosWorkflowCP=Flujo de la información +RequestByCP=Solicitado por +TitreRequestCP=Solicitud de licencia +TypeOfLeaveId=ID de tipo de licencia +TypeOfLeaveCode=Código de tipo de licencia +TypeOfLeaveLabel=Etiqueta de tipo de licencia +NbUseDaysCP=Número de días consumidos de vacaciones +NbUseDaysCPShortInMonth=Días consumidos en el mes +DateStartInMonth=Fecha de inicio en elmes +DateEndInMonth=Fecha de finalización en el mes +EditCP=Editar +DeleteCP=Borrar +ActionCancelCP=Cancelar +TitleDeleteCP=Eliminar esta solicitud de licencia +ConfirmDeleteCP=¿Confirmas la eliminación de esta solicitud de licencia? diff --git a/htdocs/langs/es_AR/hrm.lang b/htdocs/langs/es_AR/hrm.lang new file mode 100644 index 00000000000..d59d800d23a --- /dev/null +++ b/htdocs/langs/es_AR/hrm.lang @@ -0,0 +1,6 @@ +# Dolibarr language file - Source file is en_US - hrm +HRM_EMAIL_EXTERNAL_SERVICE=E-mail para evitar el servicio externo de gestión de RRHH +ConfirmDeleteEstablishment=¿Está seguro que quiere eliminar este establecimiento? +DictionaryPublicHolidays=Gestión de RRHH - Feriados +DictionaryDepartment=Gestión de RRHH - Departamentos +DictionaryFunction=Gestión de RRHH - Funciones diff --git a/htdocs/langs/es_AR/install.lang b/htdocs/langs/es_AR/install.lang new file mode 100644 index 00000000000..0b56734de7c --- /dev/null +++ b/htdocs/langs/es_AR/install.lang @@ -0,0 +1,5 @@ +# Dolibarr language file - Source file is en_US - install +InstallEasy=Simplemente siga las instrucciones paso a paso. +MiscellaneousChecks=Verificación de prerequisitos +ConfFileDoesNotExistsAndCouldNotBeCreated=¡El archivo de configuración %s no existe ni se pudo crear! +ConfFileCouldBeCreated=Se ha creado el archivo de configuración %s. diff --git a/htdocs/langs/es_AR/interventions.lang b/htdocs/langs/es_AR/interventions.lang new file mode 100644 index 00000000000..9a42329ecd2 --- /dev/null +++ b/htdocs/langs/es_AR/interventions.lang @@ -0,0 +1,47 @@ +# Dolibarr language file - Source file is en_US - interventions +InterventionCard=Ficha de la intervención +NewIntervention=Nueva intervención +ChangeIntoRepeatableIntervention=Cambiar a intervención iterativa +ListOfInterventions=Lista de intervenciones +ActionsOnFicheInter=Acciones en la intervención +LastInterventions=Ultimas %s intervenciones +InterventionContact=Contacto de la intervención +DeleteInterventionLine=Eliminar línea de la intervención +ConfirmDeleteIntervention=¿Estás seguro de que quieres eliminar esta intervención? +ConfirmValidateIntervention=¿Estás seguro de que quieres validar esta intervención con el nombre %s? +ConfirmModifyIntervention=¿Estás seguro de que quieres modificar esta intervención? +ConfirmDeleteInterventionLine=¿Estás seguro de que quieres eliminar esta línea de la intervención? +ConfirmCloneIntervention=¿Estás seguro de que quieres clonar esta intervención? +NameAndSignatureOfInternalContact=Nombre y firma de la intervención: +DocumentModelStandard=Modelo estándar de documento para intervenciones +InterventionCardsAndInterventionLines=Intervenciones y sus líneas. +InterventionClassifyBilled=Marcar como "Facturado" +InterventionClassifyUnBilled=Marcar como "Sin facturar" +InterventionClassifyDone=Marcar como "Listo" +SendInterventionByMail=Enviar intervención por correo +InterventionClassifiedBilledInDolibarr=Intervención %s marcada como facturada +InterventionClassifiedUnbilledInDolibarr=Intervención %s marcada como sin facturar +InterventionSentByEMail=Intervención %s enviada por correo +InterventionsArea=Área de Intervenciones +DraftFichinter=Intervenciones en borrador +LastModifiedInterventions=Ultimas %s intervenciones modificadas +TypeContact_fichinter_external_CUSTOMER=Contacto para seguimiento del cliente +PrintProductsOnFichinter=Imprima también líneas de tipo "producto" (no solo servicios) en la ficha de la intervención +PrintProductsOnFichinterDetails=intervenciones generadas a partir de órdenes +UseServicesDurationOnFichinter=Usar la duración de los servicios para las intervenciones generadas a partir de órdenes. +UseDurationOnFichinter=Oculta el campo de duración para los registros de intervención. +UseDateWithoutHourOnFichinter=Oculta horas y minutos del campo de fecha para registros de intervención +NbOfinterventions=Cantidad de fichas de intervención +NumberOfInterventionsByMonth=Cantidad de fichas de intervención por mes (fecha de validación) +AmountOfInteventionNotIncludedByDefault=El monto de la intervención no se incluye por defecto en las ganancias (en la mayoría de los casos, las hojas de tiempo se utilizan para contar el tiempo dedicado). Agregue la clave PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT con valor 1 en Inicio - Configuración - Otros, para incluirlos. +InterId=ID de intervención +InterRef=Ref. de Intervención +InterDateCreation=Fecha de creación de la intervención +InterDuration=Duración de la intervención +InterStatus=Estado de la intervención +InterNote=Nota de la intervención +InterLine=Línea de la intervención +InterLineId=ID de línea de la intervención +InterLineDate=Fecha de línea de la intervención +InterLineDuration=Duración de la línea de la intervención +InterLineDesc=Descripción de la línea de la intervención diff --git a/htdocs/langs/es_AR/languages.lang b/htdocs/langs/es_AR/languages.lang new file mode 100644 index 00000000000..e0d14830649 --- /dev/null +++ b/htdocs/langs/es_AR/languages.lang @@ -0,0 +1,11 @@ +# Dolibarr language file - Source file is en_US - languages +Language_ar_AR=Arabe +Language_ar_EG=Arabe (Egipto) +Language_ar_SA=Arabe +Language_fi_FI=Finlandés +Language_lv_LV=Letón +Language_nl_BE=Holandés (Bélgica) +Language_nl_NL=Holandés +Language_uk_UA=Ucraniano +Language_uz_UZ=Uzbeko +Language_zh_TW=Chino (tradicional) diff --git a/htdocs/langs/es_AR/ldap.lang b/htdocs/langs/es_AR/ldap.lang new file mode 100644 index 00000000000..2f880d6434b --- /dev/null +++ b/htdocs/langs/es_AR/ldap.lang @@ -0,0 +1,19 @@ +# Dolibarr language file - Source file is en_US - ldap +YouMustChangePassNextLogon=La contraseña para el usuario %s en el dominio %s debe ser modificada. +UserMustChangePassNextLogon=El usuario deberá cambiar la contraseña en el dominio %s +LDAPInformationsForThisContact=Información en base LDAP para este contacto +LDAPInformationsForThisUser=Información en base LDAP para este usuario +LDAPInformationsForThisGroup=Información en base LDAP para este grupo +LDAPInformationsForThisMember=Información en base LDAP para este miembro +LDAPInformationsForThisMemberType=Información en base LDAP para este tipo de miembro +LDAPRecordNotFound=El registro no se ha encontrado en la base LDAP +LDAPUsers=Usuarios en base LDAP +LDAPFieldStatus=Estado +LDAPFieldFirstSubscriptionDate=Fecha de primera suscripción +LDAPFieldFirstSubscriptionAmount=Monto de primera suscripción +LDAPFieldLastSubscriptionDate=Fecha de última suscripción +LDAPFieldLastSubscriptionAmount=Monto de última suscripción +LDAPFieldSkype=ID Skype +LDAPFieldSkypeExample=Ejemplo: ombreSkype +ErrorFailedToReadLDAP=Error al leer base LDAP. Revise la configuración del módulo LDAP y su acceso a la base de datos. +PasswordOfUserInLDAP=Contraseña para usuario en LDAP diff --git a/htdocs/langs/es_AR/link.lang b/htdocs/langs/es_AR/link.lang new file mode 100644 index 00000000000..3dbd72adba5 --- /dev/null +++ b/htdocs/langs/es_AR/link.lang @@ -0,0 +1,10 @@ +# Dolibarr language file - Source file is en_US - link +LinkANewFile=Enlazar a un nuevo archivo/documento +LinkedFiles=Archivos y documentos enlazados +NoLinkFound=No hay enlaces registrados +LinkComplete=El archivo se ha enlazado correctamente +ErrorFileNotLinked=El archivo no pudo ser enlazado +LinkRemoved=El enlace %s ha sido eliminado +ErrorFailedToDeleteLink=Error al eliminar el enlace '%s' +ErrorFailedToUpdateLink=Error al actualizar enlace '%s' +URLToLink=URL del enlace diff --git a/htdocs/langs/es_AR/loan.lang b/htdocs/langs/es_AR/loan.lang new file mode 100644 index 00000000000..d75a600b702 --- /dev/null +++ b/htdocs/langs/es_AR/loan.lang @@ -0,0 +1,20 @@ +# Dolibarr language file - Source file is en_US - loan +ShowLoan=Mostrar Préstamo +PaymentLoan=Pago de Préstamo +LoanPayment=Pago de Préstamo +ShowLoanPayment=Mostrar Pago de Préstamo +Nbterms=Número de cuota +LoanAccountancyCapitalCode=Cuenta contable de capital +LoanAccountancyInsuranceCode=Cuenta contable de seguro +LoanAccountancyInterestCode=Cuenta contable de interés +ConfirmDeleteLoan=Confirmar la eliminación de este préstamo +LoanDeleted=El préstamo se ha eliminado correctamente +ConfirmPayLoan=Confirmar clasificar este préstamo como pagado +ListLoanAssociatedProject=Lista de préstamos asociados con el proyecto +AddLoan=Crear préstamo +FinancialCommitment=Compromiso financiero +ConfigLoan=Configuración del módulo de préstamos +LOAN_ACCOUNTING_ACCOUNT_CAPITAL=Cuenta contable predeterminada para capital +LOAN_ACCOUNTING_ACCOUNT_INTEREST=Cuenta contable predeterminada para interés +LOAN_ACCOUNTING_ACCOUNT_INSURANCE=Cuenta contable predeterminada para seguro +CreateCalcSchedule=Editar compromiso financiero diff --git a/htdocs/langs/es_AR/mailmanspip.lang b/htdocs/langs/es_AR/mailmanspip.lang new file mode 100644 index 00000000000..700cfd3bb70 --- /dev/null +++ b/htdocs/langs/es_AR/mailmanspip.lang @@ -0,0 +1,26 @@ +# Dolibarr language file - Source file is en_US - mailmanspip +MailmanSpipSetup=Configuración de módulos Mensajería y SPIP +MailmanTitle=Sistema de lista de envío de correos +TestSubscribe=Para probar la suscripción a las listas de Envío de Correos +TestUnSubscribe=Para probar desuscribirse a las listas de Envío de Correos +MailmanCreationSuccess=La prueba de suscripción se ha ejecutado correctamente +MailmanDeletionSuccess=La prueba de desuscripción se ha ejecutado correctamente +SynchroMailManEnabled=Será realizada una actualización en la lista de envío de correos +SynchroSpipEnabled=Será realizada una actualización en el módulo SPIP +DescADHERENT_MAILMAN_ADMINPW=Contraseña de administrador de Envío de Correos +DescADHERENT_MAILMAN_URL=URL para suscripciones a la lista de envío de correos +DescADHERENT_MAILMAN_UNSUB_URL=URL para desuscripciones a la lista de envío de correos +DescADHERENT_MAILMAN_LISTS=Lista(s) para inscripción automática de nuevos miembros (separados por una coma) +SPIPTitle=Sistema de Administración de Contenido SPIP +DescADHERENT_SPIP_DB=Nombre de la base de datos SPIP +DescADHERENT_SPIP_USER=Usuario de base de datos SPIP +DescADHERENT_SPIP_PASS=Contraseña de base de datos SPIP +AddIntoSpip=Agregar en SPIP +AddIntoSpipConfirmation=¿Estás seguro que deseas agregar a este miembro dentro de la SPIP? +AddIntoSpipError=Error al agregar el usuario en SPIP +DeleteIntoSpip=Quitar de SPIP +DeleteIntoSpipConfirmation=¿Estás seguro que deseas quitar a este miembro de SPIP? +DeleteIntoSpipError=Error al suprimir el usuario de SPIP +SPIPConnectionFailed=Error al conectarse a SPIP +SuccessToAddToMailmanList=%s agregado correctamente a la lista de envío de correos %s o base de datos SPIP +SuccessToRemoveToMailmanList=%s fue eliminado correctamente de la lista de envío de correos %s o base de datos SPIP diff --git a/htdocs/langs/es_AR/mails.lang b/htdocs/langs/es_AR/mails.lang new file mode 100644 index 00000000000..02b4225c64c --- /dev/null +++ b/htdocs/langs/es_AR/mails.lang @@ -0,0 +1,134 @@ +# Dolibarr language file - Source file is en_US - mails +Mailing=Correo +EMailing=Correo +EMailings=Correos +AllEMailings=Todos los correos +MailCard=Ficha del correo +MailFrom=Emisor +MailToUsers=Para usuario(s) +MailCC=Copiar a +MailToCCUsers=Copiar a usuario(s) +MailCCC=Colocar en copia a +MailTopic=Asunto del correo +MailFile=Archivos adjuntos +MailMessage=Cuerpo del correo +SubjectNotIn=Fuera del asunto +BodyNotIn=Fuera del cuerpo +ShowEMailing=Mostrar correo +ListOfEMailings=Lista de correos +NewMailing=Nuevo correo +EditMailing=Editar correo +ResetMailing=Reenviar correo +DeleteMailing=Eliminar correo +DeleteAMailing=Eliminar un correo +PreviewMailing=Previsualizar correo +CreateMailing=Crear correo +TestMailing=Probar correo +ValidMailing=Validar correo +MailSuccessfulySent=Correo (de %s a %s) aceptado correctamente para entregar +MailingSuccessfullyValidated=Correo validado correctamente +MailUnsubcribe=Desuscribir +MailingStatusNotContact=No volver a contactar +MailingStatusReadAndUnsubscribe=Leer y desuscribir +ErrorMailRecipientIsEmpty=La lista de remitentes está vacía +WarningNoEMailsAdded=No hay nuevos correos para agregar a la lista de destinatarios +ConfirmValidMailing=¿Estás seguro que quieres validar este correo? +ConfirmResetMailing=Advertencia, al reinicializar el correo %s, estás permitiendo que se realice el reenvío masivo de este correo. ¿Estás seguro que quieres hacer ésto? +ConfirmDeleteMailing=¿Estás seguro que quieres eliminar este correo? +NbOfUniqueEMails=Cantidad de correos únicos +NbOfEMails=Cantidad de correos +TotalNbOfDistinctRecipients=Cantidad de destinatarios únicos +NoTargetYet=No se han definido todavía los destinatarios (dirígete hacia la pestaña 'Destinatarios') +NoRecipientEmail=No hay destinatario para el correo %s +RemoveRecipient=Quitar destinatario +YouCanAddYourOwnPredefindedListHere=Para crear tu módulo de selector de correos, ver htdocs/core/modules/mailings/README. +EMailTestSubstitutionReplacedByGenericValues=Cuando se utiliza el modo de prueba, las variables de substitución son reemplazadas por valores genéricos +NoAttachedFiles=No hay archivos adjuntos +BadEMail=Valor erróneo para correo +ConfirmCloneEMailing=¿Estás seguro que quieres clonar este correo? +DateSending=Fecha de envío +MailingStatusRead=Leído +YourMailUnsubcribeOK=El correo %s ha sido correctamente desuscripto de la lista de correos +ActivateCheckReadKey=Clave utilizada para encriptar la URL utilizada para las funcionalidades "Confirmación de lectura" y "Desuscribir" +EMailSentToNRecipients=Correo enviado a los destinatarios %s. +EMailSentForNElements=Correo enviado a %s elementos. +XTargetsAdded=%s destinatarios agregados dentro de la lista de objetivos +OnlyPDFattachmentSupported=Si los documentos PDF fueron generados por los objetos a enviar, ellos serán adjuntados al correo. Si no, no será enviado ningún correo (además, sólo están soportados documentos pdf como adjuntos de envíos masivos en esta versión). +AllRecipientSelected=Los destinatarios del registro seleccionado %s (si su correo es conocido). +GroupEmails=Agrupar correos +OneEmailPerRecipient=Un correo por destinatario (por defecto, un correo por registro seleccionado) +WarningIfYouCheckOneRecipientPerEmail=Advertencia, si activas esta casilla, significa que sólo será enviado un correo para varios registros diferentes seleccionados, entonces si tu mensaje contiene variables de substitución referidas a los datos de un registro, se hace imposible reemplazarlas. +ResultOfMailSending=Resultado de envío masivo de correos +NbSelected=Cantidad de seleccionados +NbIgnored=Cantidad de ignorados +NbSent=Cantidad de enviados +SentXXXmessages=%s mensaje(s) enviado(s). +ConfirmUnvalidateEmailing=¿Estás seguro que quieres cambiar el estado del correo %s a borrador? +MailingModuleDescContactsWithThirdpartyFilter=Contactos con filtros de cliente +MailingModuleDescContactsByCompanyCategory=Contactos por categoría de tercero +MailingModuleDescContactsByCategory=Contactos por categorías +MailingModuleDescEmailsFromFile=Correos desde archivo +MailingModuleDescEmailsFromUser=Correos ingresados por el usuario +MailingModuleDescDolibarrUsers=Usuarios con correos +MailingModuleDescThirdPartiesByCategories=Terceros (por categorías) +SendingFromWebInterfaceIsNotAllowed=No está permitido el envío desde interfaz web. +LineInFile=Línea %s del archivo +RecipientSelectionModules=Solicitudes definidas para la selección del destinatario +MailingArea=Area de correos +LastMailings=Ultimos %s correos +TargetsStatistics=Estadísticas de objetivo +NbOfCompaniesContacts=Contactos/direcciones únicas +MailNoChangePossible=Los destinatarios no pueden cambiarse para un correo validado +SearchAMailing=Buscar correo +SendMailing=Enviar correo +MailingNeedCommand=El envío de correos puede realizarse desde la consola. Consulta al administrador del servidor para ejecutar el siguiente comando para enviar el correo a todos los destinatarios: +MailingNeedCommand2=De todas formas puedes enviarlos en línea agregando el parámetro MAILING_LIMIT_SENDBYWEB con el valor máximo de correos que quieres enviar por cada sesión. Para esto, ve a Inicio - Configuración - Otros. +ConfirmSendingEmailing=Si quieres enviar el correo directamente de esta pantalla, ¿estás seguro que quieres enviar el correo ahora desde tu navegador? +LimitSendingEmailing=Nota: El envío de correos desde la interfaz web se realiza en etapas por motivos de seguridad y timeout, %s destinatarios a la vez por cada sesión de envío. +TargetsReset=Limpiar lista +ToClearAllRecipientsClickHere=Haga click aquí para limpiar la lista de destinatarios de este correo +ToAddRecipientsChooseHere=Agregar destinatarios eligiéndolos de las listas +NbOfEMailingsReceived=Correos masivos recibidos +NbOfEMailingsSend=Correos masivos enviados +IdRecord=ID de registro +DeliveryReceipt=Confirmación de entrega +YouCanUseCommaSeparatorForSeveralRecipients=Puedes usar la coma para separar varios destinatarios. +TagCheckMail=Informar la apertura de correo +TagUnsubscribe=Enlace para desuscripción +TagSignature=Firma del emisor +EMailRecipient=Correo del destinatario +TagMailtoEmail=Correo del destinatario (incluyendo el enlace htm "mailto:") +NoEmailSentBadSenderOrRecipientEmail=No se han enviado correos. El correo del emisor o destinatario están incorrectos. Verifique el perfil del usuario. +NoNotificationsWillBeSent=No se han planificado notificaciones por correo para este evento y compañía +ANotificationsWillBeSent=1 notificación werá enviada por correo +SomeNotificationsWillBeSent=%s notificaciones serán enviadas por correo +AddNewNotification=Activar una nueva notificación por mail para ese objetivo/evento +ListOfActiveNotifications=Listar todos los objetivos/eventos activos para la notificación por correo +ListOfNotificationsDone=Listar todas las notificaciones enviadas por correo +MailSendSetupIs=La configuración de envío de correo ha sido establecida a '%s'. Este modo no puede ser utilizado para envío masivo de correos. +MailSendSetupIs2=Debes dirigirte primero, utilizando una cuenta de administrador, al menú %s Inicio - Configuración - Correos%s para cambiar el parámetro '%s' para utilizar el modo '%s'. Con este modo, podrás entrar en la configuración del servidor SMTP provisto por tu proveedor de internet y utilizar la funcionalidad de envío masivo de correos. +MailSendSetupIs3=Si tienes alguna consulta acerca de cómo configurar tu servidor SMTP, puedes preguntarle a %s. +YouCanAlsoUseSupervisorKeyword=Puedes también agregar la clave __SUPERVISOREMAIL__ para tener un correo enviado hacia el supervisor del usuario (sólo funciona si el correo es definido por el supervisor) +NbOfTargetedContacts=Cantidad de contactos de correo objetivo +UseFormatFileEmailToTarget=El archivo importado debe tener el formato correo;nombre;primer nombre;otro +UseFormatInputEmailToTarget=Ingrese una cadena con el formato correo;nombre;primer nombre;otro +AdvTgtTitle=Complete los campos para agregar los terceros o contactos/direcciones de correo al objetivo +AdvTgtSearchTextHelp=Utilice %% como comodines. Por ejemplo para encontrar todos los item como jean, joe, jim, puedes ingresar j%%, también puedes usar ; como separador de valores, y usar ! para exceptuarlo. Por ejemplo jean;joe;jim%%;!jimo;!jima% para ubicar a todos los jean, joe, comenzando con jim pero no jimo ni nada que comience con jima +AdvTgtSearchIntHelp=Utilice el intervalo para seleccionar entero o valor decimal +AdvTgtMaxVal=Valor máximo +AdvTgtSearchDtHelp=Utilice intervalos para seleccionar el valor de fecha +AdvTgtStartDt=Fecha de inicio +AdvTgtEndDt=Fecha de fin +AdvTgtTypeOfIncudeHelp=Correo del tercero objetivo y de su contacto, o sólo correo del tercero o sólo correo del contacto +AdvTgtTypeOfIncude=Tipo de correo del objetivo +AdvTgtContactHelp=Usar solamente si tu objetivo es el contacto en "Tipo de correo del objetivo" +AddAll=Agregar todos +RemoveAll=Quitar todos +AdvTgtAddContact=Agregar correos acorde al criterio +AdvTgtOrCreateNewFilter=Nombre del filtro nuevo +NoContactWithCategoryFound=No se encontraron contactos/direcciones con la categoría buscada +NoContactLinkedToThirdpartieWithCategoryFound=No se encontraron contactos/direcciones con la categoría buscada +OutGoingEmailSetup=Configuración de correo saliente +InGoingEmailSetup=Configuración de correo entrante +DefaultOutgoingEmailSetup=Configuración de correo saliente por defecto +ContactsWithThirdpartyFilter=Contactos con filtro de terceros diff --git a/htdocs/langs/es_AR/main.lang b/htdocs/langs/es_AR/main.lang index 50e919e9565..ec90b66535b 100644 --- a/htdocs/langs/es_AR/main.lang +++ b/htdocs/langs/es_AR/main.lang @@ -19,23 +19,575 @@ FormatDateHourShort=%m/%d/%Y %I:%M %p FormatDateHourSecShort=%m/%d/%Y %I:%M:%S %p FormatDateHourTextShort=%b %d, %Y, %I:%M %p FormatDateHourText=%B %d, %Y, %I:%M %p +DatabaseConnection=Conexión de base de datos +NoTemplateDefined=No hay plantilla para este tipo de email +AvailableVariables=Variables disponibles de substitución +EmptySearchString=Ingresar una cadena de búsqueda no vacía +NoRecordFound=Sin registros +NoRecordDeleted=Sin registros eliminados +NotEnoughDataYet=Sin datos suficientes +NoError=Sin error +ErrorFieldRequired=El campo '%s' es requerido +ErrorFieldFormat=El campo '%s' tiene un valor erroneo +ErrorFileDoesNotExists=El campo %s no existe +ErrorFailedToOpenFile=Fallo abrir archivo %s +ErrorCanNotCreateDir=No se puede crear la carpeta %s +ErrorCanNotReadDir=No se puede leer la carpeta %s +ErrorConstantNotDefined=El parámetro %s no está definido +ErrorSQL=Error SQL +ErrorLogoFileNotFound=El archivo del logo '%s' no fue encontrado +ErrorGoToGlobalSetup=Ir a configuración de 'Empresa/Organización' para solucionar esto +ErrorGoToModuleSetup=Ir al Módulo de configuración para solucionar esto +ErrorFailedToSendMail=Falló el envío del email (remitente=%s, receptor=%s) +ErrorFileNotUploaded=El archivo no fue cargado. Controle que el tamaño no exceda el máximo permitido, que haya espacio disponible en el disco y que no haya ya un archivo con el mismo nombre en la carpeta. +ErrorInternalErrorDetected=Se detectó un error +ErrorWrongHostParameter=Parámetros de host equivocados +ErrorYourCountryIsNotDefined=Su país no está definido. Vaya a Inicio-Configuración-Editar e ingrese el formulario nuevamente. +ErrorRecordIsUsedByChild=Falló la eliminación de este registro. Este registro es usado por al menos un registro hijo. +ErrorWrongValue=Valor erróneo +ErrorWrongValueForParameterX=Valor erróneo para el parámetro %s +ErrorNoRequestInError=Ningún pedido en error +ErrorServiceUnavailableTryLater=El servicio no está disponible al momento. Intente nuevamente luego. +ErrorDuplicateField=Valor duplicado en un campo único. +ErrorSomeErrorWereFoundRollbackIsDone=Se encontró algunos errores. Los cambios fueron echados para atrás. +ErrorConfigParameterNotDefined=El parámetro %s no está definido en el archivo de configuración de Dolibarr conf.php. +ErrorCantLoadUserFromDolibarrDatabase=Falló la busqueda del usuario %s en la base de datos de Dolibarr. +ErrorNoVATRateDefinedForSellerCountry=Error, no se ha definido tasa de IVA para el país '%s'. +ErrorNoSocialContributionForSellerCountry=Error, no se ha definido tasa de impuestos sociales/fiscales para el país '%s'. +ErrorFailedToSaveFile=Error, no se pudo guardar el archivo. +ErrorCannotAddThisParentWarehouse=Ud. está intentando agregar un depósito padre el cuál ya es hijo de un depósito existente +MaxNbOfRecordPerPage=Máx. número de registros por página +NotAuthorized=Ud. no está autorizado para hacer eso. +SelectDate=Elegir una fecha +SeeHere=Ver aquí +ClickHere=Hacer click aquí +BackgroundColorByDefault=Color del fondo por defecto +FileRenamed=El archivo fue renombrado con éxito. +FileGenerated=El archivo fue generado con éxito. +FileSaved=El archivo fue guardado con éxito. +FileUploaded=El archivo fue cargado con éxito +FileTransferComplete=Archivo(s) cargado con éxito +FilesDeleted=Archivo(s) eliminados con éxito +FileWasNotUploaded=Se eligió un archivo para adjuntar pero aún no fue cargado. Haga click en "Adjuntar archivo" para eso. +NbOfEntries=No. de entradas +GoToWikiHelpPage=Leer ayuda en línea (Se necesita acceso a Internet) +GoToHelpPage=Leer ayuda +LevelOfFeature=Nivel de características +NotDefined=Sin definir +DolibarrInHttpAuthenticationSoPasswordUseless=El modo de autenticación en Dolibarr se configuro a %s en el archivo de configuración conf.php.
    Esto significa que la base de datos de las contraseñas es externa a Dolibarr, por lo que el cambio de este campo puede no tener efecto. +Undefined=Indefinido +PasswordForgotten=¿Olvidó la contraseña?' +NoAccount=¿No tiene cuenta? +SeeAbove=Ver arriba +LastConnexion=Último acceso +PreviousConnexion=Acceso previo +ConnectedOnMultiCompany=Conectado en el entorno +AuthenticationMode=Modo de autenticación +RequestedUrl=URL requerido +DatabaseTypeManager=Administrador de tipo de base de datos +RequestLastAccessInError=Error en el último requerimiento de acceso a la base de datos +ReturnCodeLastAccessInError=Código de respuesta para el último error al requerir acceso a la base de datos +InformationLastAccessInError=Información del último error al requerir acceso a la base de datos +YouCanSetOptionDolibarrMainProdToZero=Puede leer el archivo log o establecer la opción $dolibarr_main_prod a 0 en su archivo de configuración para obtener más información. +InformationToHelpDiagnose=Esta información puede ser útil para propósitos de diagnóstico (puede poner la opción $dolibarr_main_prod a '1' para sacar dichas noticias) +TechnicalID=ID técnico +LineID=ID línea +PrecisionUnitIsLimitedToXDecimals=Dolibarr fue configurada para limitar la precisión en el precio de la unidad a %s decimales. +DoTest=Prueba +ToFilter=Filtro +WarningYouHaveAtLeastOneTaskLate=Atención, usted tiene al menos un elemento que a excedido el tiempo de tolerancia. +yes=si All=Todos +MediaBrowser=Explorador de medios +Under=bajo +Period=Período +PeriodEndDate=Fecha final para el período +SelectedPeriod=Período elegido +PreviousPeriod=Período previo +NotClosed=Sin cerrar +Enabled=Habilitado +Enable=Habilitar +Disable=Deshabilitar +Disabled=Cancelado +Add=Agregar +AddLink=Agregar enlace +RemoveLink=Quitar enlace +AddToDraft=Agregar a borrador +Update=Actualizar +CloseBox=Quitar widget de su tablero +ConfirmSendCardByMail=¿Desea Ud, enviar esta tarjeta por email a %s? Delete=Borrar +Remove=Quitar +Cancel=Cancelar +Validate=Confirmar +ValidateAndApprove=Confirmar y Aprobar +ToValidate=Para confirmar +NotValidated=Sin confirmar +Save=Guardar +SaveAs=Guarda Como +TestConnection=Probar conexión +ToClone=Clonar +ConfirmClone=Elija datos que quiere clonar: +NoCloneOptionsSpecified=Datos para clonar sin definir +Run=Correr +Show=Mostrar +Hide=Esconder +ShowCardHere=Mostrar tarjeta +SearchOf=Buscar +Valid=Valida +ReOpen=Re-abrir +Upload=Cargar +ResizeOrCrop=Redimensionar o Recortar +Recenter=Recentrar Groups=Los grupos +NoUserGroupDefined=No hay grupo de usuario definido +PasswordRetype=Repetir su contraseña +NoteSomeFeaturesAreDisabled=Notar que muchas características/módulos están des habilitados en esta demostración. +NameSlashCompany=Nombre/Compañía +PersonalValue=Valor personal +CurrentValue=Valor corriente +MultiLanguage=Multi-idioma +DateOfLine=Fecha de línea +DurationOfLine=Duración de línea +Model=Plantilla de doc +DefaultModel=Plantilla predeterminada para doc +Action=Evento +About=De nosotros +AmountByMonth=Monto por mes +Limit=Limite +Limits=Limites +Logout=Salir +NoLogoutProcessWithAuthMode=Sin características de desconexión con el modo de autenticación %s Connection=Iniciar Sesión Setup=Preparar +Previous=Previos +Cards=Tarjeta +Card=Tarjeta +HourStart=Hora de comienzo DateCreation=Fecha de Creación +DateModification=Fecha modificación +DateLastModification=Fecha última modificación +DateDue=Fecha vencimiento +DateValue=Fecha del valor +DateValueShort=Fecha del valor +DateOperation=Fecha de operación +DateOperationShort=Fecha Oper. +DateRequest=Fecha requerimiento +DateProcess=Fecha procesado +DateBuild=Fecha construcción del informe +DatePayment=Fecha de pago +DateApprove=Fecha aprovación +DateApprove2=Fecha aprobación (segunda aprobación) +RegistrationDate=Fecha de registro +UserCreation=Usuario de creación +UserModification=Usuario de modificación +UserValidation=Usuario de confirmación +UserCreationShort=Crear usuario +UserModificationShort=Modif. usuario +UserValidationShort=Confir. usuario +HourShort=Hr Rate=Tarifa -MulticurrencyPaymentAmount=Monto del pago, moneda original +CurrencyRate=Tipo de cambio +UseLocalTax=Incluido impuesto +UserAuthor=Usuario de creación +UserModif=Usuario de última actualización +DefaultValue=Valor predeterminado +DefaultValues=Valores/filtros/ordenación predeterminados +UnitPriceHT=Precio unitario (neto) +UnitPriceHTCurrency=Precio unitario (neto) (moneda) +UnitPriceTTC=Precio unitario +PriceUHT=P.U. (neto) +PriceUHTCurrency=P.U. (moneda) +PriceUTTC=P.U. (con imp.) +Amount=Monto +AmountInvoice=Monto de factura +AmountInvoiced=Monto facturado +AmountInvoicedHT=Monto facturado (con imp.) +AmountInvoicedTTC=Monto facturado (neto) +AmountPayment=Monto pagado +AmountHTShort=Monto (neto) +AmountTTCShort=Monto (con imp.) +AmountHT=Monto (neto) +AmountTTC=Monto (con imp.) +AmountVAT=Monto impuesto +MulticurrencyAlreadyPaid=Ya pagado, moneda original +MulticurrencyRemainderToPay=Faltante a pagar, moneda original +MulticurrencyAmountHT=Monto (neto), moneda original +MulticurrencyAmountTTC=Monto (inc. imp.), moneda original +MulticurrencyAmountVAT=Monto del impuesto, moneda original +AmountLT1=Monto del impuesto 2 +AmountLT2=Monto del impuesto 3 +AmountLT1ES=Monto RE +AmountLT2ES=Monto IRPF +AmountTotal=Monto total +AmountAverage=Monto promedio +PriceQtyMinHT=Precio por cant. mínimo (neto) +PriceQtyMinHTCurrency=Precio por cant. mínimo (neto) (moneda) +TotalHTShort=Total (neto) +TotalHT100Short=Total 100%% (neto) +TotalHTShortCurrency=Total (neto en moneda) +TotalTTCShort=Total (incl. imp.) +TotalHT=Total (neto) +TotalHTforthispage=Total (neto) para esta página +Totalforthispage=Total para esta página +TotalTTC=Total (incl. imp.) +TotalTTCToYourCredit=Total (incl. impuesto) para su crédito +TotalVAT=Impuesto total +TotalLT1=Impuesto total 2 +TotalLT2=Total impuesto 3 +HT=Neto +TTC=Con imp. +INCVATONLY=Inc. IVA +INCT=Inc. todos los impuestos +VAT=Impuesto de ventas +VATs=Impuesto ventas +LT1=Impuesto ventas 2 +LT1Type=Impuesto ventas tipo 2 +LT2=Impuesto ventas 3 +LT2Type=Impuesto ventas tipo 3 +LT2IN=SGSR +LT1GC=Ctvs. adicionales +VATRate=Tasa Impuesto +VATCode=Código Tasa Impuesto +VATNPR=Tas impuesto NPR +DefaultTaxRate=Tasa de impuesto predeterminada +Average=Promedio +RemainToPay=Remanente a pagar +Module=Módulo/Aplicación +Modules=Módulos/Aplicaciones +Option=Opciones List=Lista +FullList=Toda la lista RefSupplier=Ref. Proveedor +CommercialProposalsShort=Propuesta comercial +Comment=Comentar +ActionsToDo=Eventos a cumplir +ActionsToDoShort=Para hacer +ActionsDoneShort=Hecho +ActionNotApplicable=No aplicables +ActionRunningNotStarted=Para comenzar +LatestLinkedEvents=Últimos eventos %s enlazados CompanyFoundation=Empresa / Organización +Accountant=Contador +ContactsForCompany=Contactos para esta tercera parte +ContactsAddressesForCompany=Contactos/direcciones para esta tercer parte +AddressesForCompany=Dirección para esta tercera parte +ActionsOnCompany=Eventos para esta tercera parte +ActionsOnContact=Eventos para este contacto/dirección +ActionsOnContract=Evento para este contacto +ActionsOnProduct=Eventos respecto a este producto +NActionsLate=%s tarde +ToDo=Para hacer +Completed=Completado +RequestAlreadyDone=Requerimiento ya guardado +FilterOnInto=Criterio de búsqueda '%s' en los campos %s +RemoveFilter=Quitar filtro +ChartGenerated=Gráfico generado +ChartNotGenerated=El gráfico no se generó +GeneratedOn=Construido en %s +Generate=Generado +DolibarrStateBoard=Estadísticas de Base de Datos +DolibarrWorkBoard=Items Abiertos +NoOpenedElementToProcess=No hay elementos abiertos para procesar +NotYetAvailable=Todavía no disponible +Categories=Etiquetas/categorías +to=para +To=para +Qty=Ctd +ChangedBy=Cambiado por +ResultKo=Falla +Reporting=Informando +Reportings=Informando Opened=Abierto +ClosedAll=Cerrado (todo) +ByCompanies=Por terceros +ByUsers=Por usuarios +Rejects=Rechazos +NextStep=Próximo paso +None=Ninguna +Late=Tarde +LateDesc=Un item se define como Demorado en relación\na la configuración del sistema en el menú\nInicio - Configuraciones - Alertas. +NoItemLate=No hay último item +Photo=Fotografía +Photos=Fotografías +AddPhoto=Agregar foto +DeletePicture=Eliminar foto +ConfirmDeletePicture=¿Confirma eliminar foto? Login=Iniciar Sesión +LoginEmail=Ingreso (email) +LoginOrEmail=Usuario o email +CurrentLogin=Usuario actual +EnterLoginDetail=Ingresar datos de usuario actual +January=Enero +February=Febrero +March=Marzo +April=Abril +May=Mayo +June=Junio +July=Julio +August=Agosto +September=Septiembre +October=Octubre +November=Noviembre +Month01=Enero +Month02=Febrero +Month03=Marzo +Month04=Abril +Month05=Mayo +Month06=Junio +Month07=Julio +Month08=Agosto +Month09=Septiembre +Month10=Octubre +Month11=Noviembre +Month12=Diciembre +MonthShort01=Ene +MonthShort04=Abr +MonthShort08=Ago +MonthShort12=Dic +MonthVeryShort02=V +MonthVeryShort03=Ma +MonthVeryShort05=Ma +AttachedFiles=Adjuntar archivos y documentos +JoinMainDoc=Unir documento principal +ReportName=Nombre de informe +ReportPeriod=Período del informe +Fill=Llenar +Reset=Resetear +NotAllowed=No permitido +ReadPermissionNotAllowed=Leer permisos no permitidos +AmountInCurrency=Monto en la moneda %s +FindBug=Informar un error +NbOfThirdParties=Número de terceras partes +NbOfLines=Número de líneas +NbOfObjectReferers=Número de items relacionados +DateFromTo=Desde %s a %s +DateFrom=Desde %s +Check=Cheque +Uncheck=Sin marcar +Internals=Interno +Externals=Externo +Warning=Atención +Warnings=Alarmas +BuildDoc=Construir Doc +Entity=Entorno +CustomerPreview=Vista previa cliente +SupplierPreview=Vista previa proveedor +ShowCustomerPreview=Mostrar vista previa cliente +ShowSupplierPreview=Mostrar vista previa proveedor +Currency=Moneda +InfoAdmin=Información para administradores +Undo=Deshacer +UndoExpandAll=Deshacer expandir +Reason=Motivo +FeatureNotYetSupported=Característica todavía sin soportar +Response=Responder +SendByMail=Enviar por email +MailSentBy=Email enviado por +TextUsedInTheMessageBody=Cuerpo del mensaje +SendMail=Enviar email +NoEMail=Sin email +NoMobilePhone=Sin teléfono Mobil +FollowingConstantsWillBeSubstituted=Las siguientes constantes serán reemplazadas\ncon los correspondientes valores. +BackToList=Volver a la lista +GoBack=Retroceder +CanBeModifiedIfOk=Puede modificarse si es válida +CanBeModifiedIfKo=Puede modificarse si no es válida +RecordCreatedSuccessfully=Registro creado con éxito +RecordsModified=%s registro(s) modificados +RecordsDeleted=%s registro(s) eliminados +RecordsGenerated=%s registro(s) generados +AutomaticCode=Código automático +FeatureDisabled=Característica deshabilitada +MoveBox=Mover el widget +Offered=Ofertado +NotEnoughPermissions=Ud. no tiene permiso para esta acción +SessionName=Nombre de sesión +Receive=Recibir +CompleteOrNoMoreReceptionExpected=Completo o no se espera más +ExpectedValue=Valor Esperado +YouCanChangeValuesForThisListFromDictionarySetup=Ud. puede cambiar los valores de esta lista\ndesde menu Configuración - Diccionarios +YouCanChangeValuesForThisListFrom=Ud. puede cambiar los valores de esta lista\ndesde menú %s +YouCanSetDefaultValueInModuleSetup=Ud. puede establecer el valor predeterminado cuando se\ncrea un nuevo registro en la configuración del módulo +Documents=Archivos enlazados +UploadDisabled=Carga deshabilitada +ThisLimitIsDefinedInSetup=Límite Dolibarr (Menú inicio-configuración-seguridad):\n%s KB, Límite PHP: %s Kb +NoFileFound=Ningún documento guardado en esta carpeta +CurrentMenuManager=Administrador de menú actual +Layout=Diseño +DisabledModules=Deshabilitar módulos +DateOfSignature=Fecha de firma +HidePassword=Mostrar comándos con contraseña escondida +UnHidePassword=Mostrar comando real con contraseña visible +RootOfMedias=Carpeta raíz de medios públicos (/medios) +AddNewLine=Agregar nueva línea +AddFile=Agregar archivo +FreeZone=No hay producto/servicio predefinido +FreeLineOfType=Item libre del tipo: +CloneMainAttributes=Clonar objeto con principales atributos +PDFMerge=Unir PDF +Merge=Unir +DocumentModelStandardPDF=Plantilla de PDF standard +PrintContentArea=Mostrar area principal del contenido a imprimir +MenuManager=Administrador de menú +WarningYouAreInMaintenanceMode=Atención, esta en modo mantenimiento:\nsolo usuarios %s tienen permitido\nusar la aplicación en este modo. +CoreErrorTitle=Error de sistema +CoreErrorMessage=Perdón, a ocurrido un error. Haga contacto\ncon su administrador de sistema para chequear\nlos logs o deshabilitar $dolibarr_main_prod=1 para\nobtener más información. +ValidatePayment=Confirmar pago +FieldsWithAreMandatory=Los campos con %s son mandatorios +FieldsWithIsForPublic=Los campos con %s son mostrados en la lista pública de miembros. Si no desea esto, quite el tilde en la casilla "público". +AccordingToGeoIPDatabase=(de acuerdo a la conversión GeoIP) +RequiredField=Campo requerido +ToTest=Prueba +ValidateBefore=El item debe ser validado antes de usar esta característica +TotalizableDesc=El campo se puede totalizar en la lista +Private=Contacot Privado +Hidden=Escondido +Source=Fuente +IM=Mensaje instantáneo +NewAttribute=Nuevo atributo +AttributeCode=Código de atributo +URLPhoto=URL de la foto/logo +SetLinkToAnotherThirdParty=Enlazar a otra tercera parte +LinkToProposal=Enlazar a propuesta +LinkToOrder=Enlazar a orden +LinkToSupplierOrder=Enlazar a orden de compra +LinkToSupplierProposal=Enlazar a propuesta de proveedor +LinkToContract=Enlazar a contacto +ClickToEdit=Hacer click para editar +ClickToRefresh=Hacer click para refrescar +EditHTMLSource=Editar Fuente HTML +ObjectDeleted=El objeto %s se eliminó +ByCountry=Por país +ByTown=Por ciudad +BySalesRepresentative=Por representante de ventas +LinkedToSpecificUsers=Enlazado a un contacto particular de usuario +NoResults=Sin resultados +AdminTools=Herramientas de Admin +SystemTools=Herramientas de sistema +ModulesSystemTools=Herramientas de módulos +NoPhotoYet=No hay fotos disponibles todavía +Dashboard=Escritorio +MyDashboard=Mi Escritorio +from=desde +toward=en dirección a +SelectTargetUser=Seleccione usuario/empleado al que apuntar +HelpCopyToClipboard=Use Ctrl+C para copiar al clipboard +SaveUploadedFileWithMask=Guardar archivo en el servidor con el nombre "%s" (de lo contrario "%s") +OriginFileName=Nombre de archivo original +SetDemandReason=Establecer fuente +SetBankAccount=Definir Cuenta Bancaria +AccountCurrency=Moneda de la cuenta +PublicUrl=URL Público +AddBox=Agregar casilla +SelectElementAndClick=Seleccionar un elemento y hacer click en %s +ShowTransaction=Mostrar entrada en cuenta bancaria +ShowContract=Mostrar contacto +GoIntoSetupToChangeLogo=Ir a Inicio - Configuración - Compañía para cambiar el logo o ir a Inicio - Configuración - Mostrar para esconderlo. +Denied=Negado +ListOfTemplates=Lista de plantillas +Gender=Género +ViewList=Vista de lista +Mandatory=Mandatorio +Sincerely=Sinceramente +ConfirmDeleteObject=¿Está seguro que quiere eliminar este objeto? +DeleteLine=Eliminar línea +ConfirmDeleteLine=¿Está seguro que quiere eliminar esta línea? +NoPDFAvailableForDocGenAmongChecked=No hay disponible ningún PDF para la generación del documento entre los registros chequeados +TooManyRecordForMassAction=Se eligió demasiados documentos para una acción en masa. La acción tiene una restricción de %s registros. +NoRecordSelected=No se eligió registros +MassFilesArea=Área para archivos construidos desde acciones en masa +ShowTempMassFilesArea=Mostrar área de archivos construidos por acción en masa +ConfirmMassDeletion=Confirmar Eliminar en Masa +ConfirmMassDeletionQuestion=¿Esta seguro que quiere eliminar %s registro(s) seleccionado(s)? +RelatedObjects=Objetos Relacionados +ClassifyBilled=Clasificar como facturado +ClassifyUnbilled=Clasificar como sin facturar +FrontOffice=Oficina frontal +BackOffice=Oficina treasera +Exports=Exporta +ExportFilteredList=Exportar lista filtrada +ExportList=Exportar lista +ExportOptions=Exportar Opciones +ExportOfPiecesAlreadyExportedIsEnable=Exportar piezas que ya fueron exportadas está habilitado +ExportOfPiecesAlreadyExportedIsDisable=Exportar piezas que ya fueron exportadas está deshabilitado +AllExportedMovementsWereRecordedAsExported=Todos los movimientos de exportaciones fueron registrados como exportados +NotAllExportedMovementsCouldBeRecordedAsExported=No todos los movimientos de exportados pueden registrarse como exportados +Miscellaneous=Miscelanias +GroupBy=Agrupar por... +RemoveString=Quitar cadena '%s' +SomeTranslationAreUncomplete=Alguno de los idiomas ofertados pueden estar traducidos parcialmente o pueden contener errores. Por favor ayude a corregir su idioma registrándose en https://transifex.com/projects/p/dolibarr/ para agregar sus mejoras. +DirectDownloadLink=Enlace de descarga directa (público/externo) +DirectDownloadInternalLink=Enlace de descarga directa (necesita estar logeado y tener permisos) +DownloadDocument=Descargar documento +ActualizeCurrency=Actualizar tipo de cambio +ModuleBuilder=Constructor de Módulos y Aplicaciones +SetMultiCurrencyCode=Fijar moneda +BulkActions=Acciones a granel +ClickToShowHelp=Haga click para mostrar la herramienta de ayuda +WebSiteAccounts=Cuentas de sitio web +ExpenseReport=Informe de gasto ExpenseReports=Reporte de gastos +HRAndBank=HR y Banco +TitleSetToDraft=Volver a borrador +ConfirmSetToDraft=¿Está seguro que quiere volver al estado Borrador? +ImportId=Importar id +EMailTemplates=Plantillas de emails +FileNotShared=Archivo no compartido con público externo +Project=Projecto +Projects=Projectos +LineNb=Línea no. +IncotermLabel=Incotérminos +TabLetteringCustomer=Escritos de clientes +TabLetteringSupplier=Escritos de proveedores +TuesdayMin=Mar +WednesdayMin=Mie +ShortTuesday=Ma +SelectMailModel=Elegir plantilla de email +SetRef=Fijar ref +Select2ResultFoundUseArrows=Se encontró algunos resultados. Use las flechas para elegir. +Select2NotFound=No se encontró resultados +Select2Enter=Ingresar +Select2MoreCharacter=o un carácter más +Select2MoreCharactersMore= Buscar sintaxis:
    | O (alb)
    * Cualquier carácter (a*b)
    ^ Comenzar con (^ab)
    $ Terminado con (ab$)
    +SearchIntoProjects=Projectos SearchIntoCustomerInvoices=Facturas de clientes SearchIntoSupplierInvoices=Facturas de proveedores +SearchIntoCustomerOrders=Ordenes de Venta SearchIntoSupplierOrders=Ordenes de compra SearchIntoCustomerProposals=Propuestas de clientes +SearchIntoSupplierProposals=Propuestas de proveedores SearchIntoContracts=Los contratos SearchIntoExpenseReports=Reporte de gastos +SearchIntoLeaves=Abandonar +CommentAdded=Comentario agregado +CommentDeleted=Comentario eliminado +Everybody=Todos +Quarterly=Cuatrimestral +LocalAndRemote=Local y Remoto +KeyboardShortcut=Acceso directo de teclado +AssignedTo=Asignado a +ConfirmMassDraftDeletion=Confirmar eliminación borradores en masa +FileSharedViaALink=Archivo compartido vía enlace +SelectAThirdPartyFirst=Elegir primero una tercera persona... +YouAreCurrentlyInSandboxMode=Ud. esta en este momento en el modo %s "sandbox" +ShowMoreInfos=Mostrar Más Info +NoFilesUploadedYet=Por favor cargue un documento primero +SeePrivateNote=Vea nota privada +PaymentInformation=Información de pago +ToClose=Para cerrar +ToProcess=Para procesar +ToApprove=Para aprobar +GlobalOpenedElemView=Visión global +NoArticlesFoundForTheKeyword=No se encontró artículo para la clave '%s' +NoArticlesFoundForTheCategory=Ningún artículo para la categoría +ToAcceptRefuse=Aceptar | rechazar +ContactDefault_agenda=Evento +ContactDefault_commande=Orden +ContactDefault_invoice_supplier=Factura de Proveedor +ContactDefault_order_supplier=Orden de Compra +ContactDefault_project=Projecto +ContactDefault_propal=Propuesta +ContactDefault_supplier_proposal=Propuesta de proveedor +ContactAddedAutomatically=Contacto agregado desde roles de terceros +CustomReports=Informes de clientes diff --git a/htdocs/langs/es_AR/margins.lang b/htdocs/langs/es_AR/margins.lang new file mode 100644 index 00000000000..27e9744383d --- /dev/null +++ b/htdocs/langs/es_AR/margins.lang @@ -0,0 +1,36 @@ +# Dolibarr language file - Source file is en_US - margins +MarginRate=Tasa de margen +MarkRate=Marcar tasa +DisplayMarginRates=Mostrar tasas de margen +DisplayMarkRates=Mostrar marca de tasas +InputPrice=Precio de entrada +margin=Administración de márgenes de ganancia +margesSetup=Configuración de Administración de márgenes de ganancia +MarginDetails=Detalles de margen +ProductMargins=Márgenes de producto +CustomerMargins=Márgenes de cliente +SalesRepresentativeMargins=Márgenes de representante de ventas +ContactOfInvoice=Contacto de facturación +UserMargins=Márgenes de usuario +AllProducts=Todos los productos y servicios. +ChooseProduct/Service=Elige producto o servicio +ForceBuyingPriceIfNull=Forzar el costo al precio de venta si no está definido +ForceBuyingPriceIfNullDetails=Si el costo no está definido, y esta opción está "ACTIVADA", el margen será cero en cada línea (costo = precio de venta), de lo contrario ("DESACTIVADO"), el margen será igual al valor sugerido por defecto. +MARGIN_METHODE_FOR_DISCOUNT=Método de margen para descuentos globales +UseDiscountOnTotal=En subtotal +MARGIN_METHODE_FOR_DISCOUNT_DETAILS=Define si un descuento global se debe tratar como un producto, un servicio o solo como un subtotal para el cálculo del margen. +MARGIN_TYPE=Costo sugerido por defecto para el cálculo del margen +MargeType1=Margen sobre el mejor precio del proveedor +MargeType2=Margen sobre el precio promedio ponderado (PPP) +MargeType3=Margen sobre costo +MarginTypeDesc=* Margen sobre el mejor costo = Precio de venta - Mejor precio de proveedor definido en la ficha del producto
    * Margen sobre el Precio promedio ponderado (PPP) = Precio de venta - PPP del producto o mejor precio del proveedor si PPP aún no está definido
    * Margen de costo = Precio de venta - Costo definido en la ficha del producto o PPP si el costo no está definido, o el mejor precio del proveedor si PPP aún no está definido +CostPrice=Costo +UnitCharges=Cargos unitarios +Charges=Cargos +AgentContactType=Tipo de contacto de agente comercial +AgentContactTypeDetails=Defina qué tipo de contacto (vinculado en las facturas) se utilizará para el informe de margen por contacto/dirección. Tenga en cuenta que la lectura de estadísticas de un contacto no es confiable ya que en la mayoría de los casos el contacto puede no estar explícitamente en las facturas. +rateMustBeNumeric=La tarifa debe ser un valor numérico +markRateShouldBeLesserThan100=La marca de tasa debe ser inferior a 100 +ShowMarginInfos=Mostrar información de margen +CheckMargins=Detalle de márgenes +MarginPerSaleRepresentativeWarning=El informe de margen por usuario utiliza el vínculo entre terceros y representantes de ventas para calcular el margen de cada uno. Debido a que algunos terceros pueden no tener un representante dedicado y algunos terceros pueden estar vinculados a varios, algunos montos pueden no estar incluidos en este informe (si no hay un representante) y algunos pueden aparecer en líneas diferentes (para cada uno) . diff --git a/htdocs/langs/es_AR/members.lang b/htdocs/langs/es_AR/members.lang new file mode 100644 index 00000000000..8b4b025101f --- /dev/null +++ b/htdocs/langs/es_AR/members.lang @@ -0,0 +1,159 @@ +# Dolibarr language file - Source file is en_US - members +MembersArea=Area de miembros +MemberCard=Ficha de miembro +SubscriptionCard=Ficha de la suscripción +ShowMember=Mostrar ficha de miembro +ThirdpartyNotLinkedToMember=Tercero no vinculado a un miembro +MembersTickets=Tickets de miembros +FundationMembers=Miembros de la fundación +ErrorMemberIsAlreadyLinkedToThisThirdParty=Otro miembro (nombre: %s, usuario: %s) está vinculado al tercero %s. Debes quitar primero este vínculo pues un tercero no puede estar vinculado a más de un miembro (y viceversa). +ErrorUserPermissionAllowsToLinksToItselfOnly=Por motivos de seguridad, debe tener permisos para editar todos los usuarios para poder vincular a un miembro a un usuario que no sea suyo. +SetLinkToThirdParty=Vincular a un tercedo de Dolibarr +MembersCards=Cartas de presentación de miembros +MembersList=Lista de miembros +MembersListToValid=Lista de miembros en estado borrador (a ser validados) +MembersListValid=Lista de miembros válidos +MembersListUpToDate=Lista de miembros válidos con suscripción al día +MembersListNotUpToDate=Lista de miembros válidos con suscripción vencida +MembersListResiliated=Lista de miembros terminados +MembersListQualified=Lista de miembros calificados +MenuMembersToValidate=Miembros en Borrador +MenuMembersValidated=Miembros válidos +MenuMembersNotUpToDate=Miembros vencidos +MenuMembersResiliated=Miembros terminados +MembersWithSubscriptionToReceive=Miembros con suscripción para recibir +MembersWithSubscriptionToReceiveShort=Suscripción para recibir +DateSubscription=Fecha de suscripción +DateEndSubscription=Fecha de finalización de suscripción +EndSubscription=Finalizar suscripción +SubscriptionId=ID de Suscripción +MemberId=ID Miembro +MemberTypeId=ID Tipo de Miembro +MemberTypeLabel=Etiqueta Tipo de miembro +MemberStatusDraft=Borrador (necesita ser validado) +MemberStatusActive=Validado (esperando suscripción) +MemberStatusActiveLate=Subscripción vencida +MemberStatusActiveLateShort=Vencidos +MemberStatusPaid=Suscripción al día +MemberStatusResiliated=Miembro terminado +MemberStatusResiliatedShort=Terminado +MembersStatusToValid=Miembros en Borrador +MembersStatusResiliated=Miembros terminados +MemberStatusNoSubscription=Validado (no necesita suscripción) +MemberStatusNoSubscriptionShort=Válido +NewCotisation=Nueva contribución +PaymentSubscription=Nuevo pago de contribución +SubscriptionEndDate=Fecha de finalización de la suscripción +MembersTypeSetup=Configuración de tipo de miembros +ConfirmDeleteMemberType=¿Estás seguro de que quieres eliminar este tipo de miembro? +MemberTypeCanNotBeDeleted=El tipo de miembro no se puede eliminar +NewSubscription=Nueva suscripción +NewSubscriptionDesc=Este formulario te permite registrar tu suscripción como un nuevo miembro de la fundación. Si deseas renovar tu suscripción (si ya eres miembro), comunícate con la fundación al correo %s. +Subscription=Suscripción +Subscriptions=Suscripciones +SubscriptionLate=Tarde +SubscriptionNotReceived=Suscripción nunca recibida +ListOfSubscriptions=Listado de suscripciones +SendCardByMail=Enviar ficha por correo +NoTypeDefinedGoToSetup=No hay tipos de miembros definidos. Vé al menú "Tipos de miembros" +WelcomeEMail=Correo de bienvenida +SubscriptionRequired=Se requiere suscripción +VoteAllowed=Voto permitido +MorPhy=Moral/Físico +ResiliateMember=Terminar a un miembro +ConfirmResiliateMember=¿Estás seguro de que quieres terminar con este miembro? +DeleteMember=Eliminar a un miembro +ConfirmDeleteMember=¿Estás seguro de que quieres eliminar a este miembro (eliminar un miembro eliminará todas sus suscripciones)? +DeleteSubscription=Eliminar una suscripción +ConfirmDeleteSubscription=¿Estás seguro de que quieres eliminar esta suscripción? +Filehtpasswd=archivo htpasswd +ConfirmValidateMember=¿Estás seguro que quieres validar a este miembro? +PublicMemberList=Lista pública de miembros +BlankSubscriptionForm=Formulario público de auto suscripción +BlankSubscriptionFormDesc=Dolibarr puede proporcionarte una URL/sitio web público para permitir que los visitantes externos puedan solicitar suscribirse a la fundación. Si se habilita un módulo de pago en línea, también se puede proporcionar automáticamente un formulario para este fin. +EnablePublicSubscriptionForm=Habilite el sitio público con el formulario de auto suscripción +ExportDataset_member_1=Miembros y suscripciones +LastMembersModified=Últimos %smiembros modificados +LastSubscriptionsModified=Últimas %ssuscripciones modificadas +Text=Texto +PublicMemberCard=Ficha pública de miembro +SubscriptionNotRecorded=Suscripción no guardada +AddSubscription=Crear suscripción +ShowSubscription=Mostrar suscripción +SendingAnEMailToMember=Enviar correo con información al miembro +SendingEmailOnAutoSubscription=Enviar correo al registrarse automáticamente +SendingEmailOnMemberValidation=Enviar correo al validar un miembro nuevo +SendingEmailOnNewSubscription=Enviar correo al tener una nueva suscripción +SendingReminderForExpiredSubscription=Enviar recordatorio por suscripciones vencidas +SendingEmailOnCancelation=Enviar correo al cancelar +YourMembershipRequestWasReceived=Tu membresía fue recibida. +YourMembershipWasValidated=Tu membresía fue validada +YourSubscriptionWasRecorded=Su nueva suscripción fue guardada +YourMembershipWasCanceled=Tu membresía fue cancelada +CardContent=Contenido de tu ficha de miembro +ThisIsContentOfYourMembershipRequestWasReceived=Queremos hacerle saber que se recibió su solicitud de membresía.

    +ThisIsContentOfYourSubscriptionWasRecorded=Queremos hacerle saber que su nueva suscripción fue grabada.

    +ThisIsContentOfSubscriptionReminderEmail=Queremos informarle que su suscripción está a punto de caducar o que ya venció (__MEMBER_LAST_SUBSCRIPTION_DATE_END__). Esperamos que la renueves.

    +ThisIsContentOfYourCard=Este es un resumen de la información que tenemos sobre usted. Por favor contáctenos si algo está incorrecto.

    +DescADHERENT_AUTOREGISTER_NOTIF_MAIL_SUBJECT=Asunto del correo de notificación recibido en caso de auto-inscripción de un invitado +DescADHERENT_AUTOREGISTER_NOTIF_MAIL=Contenido del correo de notificación recibido en caso de auto-inscripción de un invitado +DescADHERENT_EMAIL_TEMPLATE_AUTOREGISTER=Template a utilizar para enviar correos a un miembro al momento de la auto-suscripción +DescADHERENT_EMAIL_TEMPLATE_MEMBER_VALIDATION=Template a utilizar para enviar correos a un miembro al momento de su validación +DescADHERENT_EMAIL_TEMPLATE_SUBSCRIPTION=Template a utilizar para enviar correos a un miembro al momento del registro de una nueva suscripción +DescADHERENT_EMAIL_TEMPLATE_REMIND_EXPIRATION=Template a utilizar para enviar recordatorios cuando una suscripción está a punto de vencer +DescADHERENT_EMAIL_TEMPLATE_CANCELATION=Template a utilizar para enviar correos a un miembro al momento de su cancelación +DescADHERENT_MAIL_FROM=Remitente para correos automáticos +DescADHERENT_ETIQUETTE_TYPE=Formato de página de etiquetas +DescADHERENT_ETIQUETTE_TEXT=Texto impreso en hojas de direcciones de miembros +DescADHERENT_CARD_TYPE=Formato de la página de fichas +DescADHERENT_CARD_HEADER_TEXT=Encabezado impreso en las fichas de los miembros +DescADHERENT_CARD_TEXT=Laterial impreso en las fichas del miembro (justificado a izquierda) +DescADHERENT_CARD_TEXT_RIGHT=Lateral impreso en fichas de los miembros (justificado a derecha) +DescADHERENT_CARD_FOOTER_TEXT=Pié de página impreso en las fichas de los miembros +HTPasswordExport=Generación de archivo htpassword +MembersAndSubscriptions=Miembros y Suscripciones +MoreActions=Acción complementaria al registrarse +MoreActionsOnSubscription=Acción complementaria sugerida por defecto al registrar una suscripción +MoreActionBankDirect=Crear una registro en la cuenta bancaria +MoreActionBankViaInvoice=Crear una factura y un pago en cuenta bancaria +MoreActionInvoiceOnly=Crea una factura sin pago +LinkToGeneratedPages=Generar tarjetas de visita +LinkToGeneratedPagesDesc=Esta pantalla te permite generar archivos PDF con la carta de presentación para todos sus miembros o un miembro en particular. +DocForAllMembersCards=Generar cartas de presentación para todos los miembros. +DocForOneMemberCards=Generar cartas de presentación para un miembro en particular +DocForLabels=Generar hojas de direcciones +SubscriptionPayment=Pago de Suscripción +LastSubscriptionDate=Fecha del último pago de suscripción +LastSubscriptionAmount=Monto de la última suscripción +MembersStatisticsByState=Estadísticas de miembros por estado/provincia +MembersStatisticsByTown=Estadísticas de miembros por ciudad +NbOfMembers=Cantidad de miembros +NoValidatedMemberYet=No se encontraron miembros válidos +MembersByCountryDesc=Esta pantalla muestra estadísticas de miembros por países. Sin embargo, el gráfico depende del servicio en línea de Google y está disponible solo si se está conectado a Internet. +MembersByStateDesc=Esta pantalla muestra estadísticas de miembros por estado/provincias/región. +MembersByTownDesc=Esta pantalla muestra estadísticas de miembros por ciudad. +MembersStatisticsDesc=Elige las estadísticas que deseas visualizar ... +LastMemberDate=Fecha de último miembro +LatestSubscriptionDate=Fecha de última suscripción +Public=La información es pública. +NewMemberbyWeb=Nuevo miembro agregado. Esperando aprobación +NewMemberForm=Formulario de miembro nuevo +SubscriptionsStatistics=Estadísticas sobre suscripciones +NbOfSubscriptions=Cantidad de suscripciones +AmountOfSubscriptions=Monto de suscripciones +TurnoverOrBudget=Volumen de negocios (para una empresa) o Presupuesto (para una fundación) +DefaultAmount=Monto de suscripción por defecto +CanEditAmount=El visitante puede elegir/editar el monto de su suscripción +MEMBER_NEWFORM_PAYONLINE=Ve a la página de pago en línea +MembersStatisticsByProperties=Estadísticas de miembros por naturaleza +MembersByNature=Esta pantalla muestra estadísticas de miembros por naturaleza. +MembersByRegion=Esta pantalla muestra estadísticas de miembros por región. +VATToUseForSubscriptions=Tipo de IVA a utilizar para suscripciones +NoVatOnSubscription=Sin IVA para suscripciones +ADHERENT_PRODUCT_ID_FOR_SUBSCRIPTIONS=Producto utilizado para la línea de suscripción en la factura: %s +SubscriptionRecorded=Suscripción registrada +NoEmailSentToMember=No se han enviado correos al miembro +EmailSentToMember=Correo enviado al miembro a %s +SendReminderForExpiredSubscriptionTitle=Enviar recordatorio por correo para la suscripción vencida +SendReminderForExpiredSubscription=Enviar un recordatorio por correo a los miembros cuando la suscripción esté por vencer (el parámetro es el número de días previos al final de la suscripción para enviar el recordatorio. Puede ser una lista de días separados por punto y coma, por ejemplo '10;5;0;-5 ') +YouMayFindYourInvoiceInThisEmail=Puede encontrar su factura adjunta a este correo diff --git a/htdocs/langs/es_AR/modulebuilder.lang b/htdocs/langs/es_AR/modulebuilder.lang new file mode 100644 index 00000000000..8bbcc78a506 --- /dev/null +++ b/htdocs/langs/es_AR/modulebuilder.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - modulebuilder +ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: diff --git a/htdocs/langs/es_AR/mrp.lang b/htdocs/langs/es_AR/mrp.lang new file mode 100644 index 00000000000..a8b70a8377e --- /dev/null +++ b/htdocs/langs/es_AR/mrp.lang @@ -0,0 +1,16 @@ +# Dolibarr language file - Source file is en_US - mrp +Mrp=Ordenes de Fabricación +MO=Orden de Fabricación +MRPDescription=Módulo para administrar producción y Ordenes de Fabricación (OF). +MRPArea=Area MRP +MrpSetupPage=Configuración de módulo MRP +MenuBOM=Lista de materiales +LatestBOMModified=Ultimas %s Lista de materiales modificada +LatestMOModified=Ultimas %s Ordenes de Fabricación modificadas +Bom=Listas de materiales +BillOfMaterials=Lista de materiales +BOMsSetup=Configuración de módulo de BOM +ListOfBOMs=Lista de Listas de materiales - BOM +ListOfManufacturingOrders=Lista de Ordenes de Fabricación +NewBOM=Nueva Lista de materiales +MenuMRP=Ordenes de Fabricación diff --git a/htdocs/langs/es_AR/multicurrency.lang b/htdocs/langs/es_AR/multicurrency.lang new file mode 100644 index 00000000000..00d17a8c384 --- /dev/null +++ b/htdocs/langs/es_AR/multicurrency.lang @@ -0,0 +1,17 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Multi-moneda +ErrorAddRateFail=Error en tasa de cambio agregada +ErrorAddCurrencyFail=Error en moneda agregada +multicurrency_syncronize_error=Error de sincronización: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Utilice la fecha del documento para encontrar la tasa de cambio de la moneda, en lugar de utilizar la última tasa conocida +multicurrency_useOriginTx=Cuando un objeto es creado por otro, mantener la tasa original del objeto origen (caso contrario utilizar la última tasa conocida) +CurrencyLayerAccount_help_to_synchronize=Para utilizar esta funcionalidad debes crearte una cuenta en el sitio web %s.
    Obtiene tu clave API.
    Si utilizas una cuenta gratuita, no podrás cambiar el origen de la moneda (por defecto USD).
    Si tu moneda principal no es USD, la aplicación la recalculará de forma automática.

    Tienes un límite de 1000 sincronizaciones por mes. +multicurrency_appCurrencySource=Origen de la moneda +multicurrency_alternateCurrencySource=Origen alternativo de la moneda +CurrenciesUsed=Monedas utilizadas +CurrenciesUsed_help_to_add=Agrega las monedas diferentes y las tasas de cambio que necesites utilizar en tus propuestas, órdenes etc. +rate=tasa de cambio +MulticurrencyReceived=Recibido, moneda original +MulticurrencyRemainderToTake=Monto restante, moneda original +MulticurrencyPaymentAmount=Monto del pago, moneda original +AmountToOthercurrency=Monto para (en moneda de cuenta recibida) diff --git a/htdocs/langs/es_AR/opensurvey.lang b/htdocs/langs/es_AR/opensurvey.lang new file mode 100644 index 00000000000..a5e3f27088d --- /dev/null +++ b/htdocs/langs/es_AR/opensurvey.lang @@ -0,0 +1,41 @@ +# Dolibarr language file - Source file is en_US - opensurvey +OrganizeYourMeetingEasily=Organiza tus reuniones y encuestas fácilmente. Primero selecciona el tipo de encuesta... +OpenSurveyArea=Área de encuestas +AddACommentForPoll=Puedes agregar un comentario en la encuesta... +AddComment=Agregar comentario +ToReceiveEMailForEachVote=Recibir un correo por cada voto +OpenSurveyStep2=Selecciona tus fechas entre los días que ves libres (en gris). Los seleccionados se marcarán en verdes. Puedes anular la selección de un día seleccionado haciendo clic nuevamente en él +RemoveAllDays=Quitar todos los días +CopyHoursOfFirstDay=Copia horas del primer día +RemoveAllHours=Quitar todas las horas +TheBestChoice=La mejor opción actualmente es +TheBestChoices=Las mejores opciones actualmente son +OpenSurveyHowTo=Si aceptas votar en esta encuesta, debes dar su nombre, elegir los valores que mejor se adapten a ti y validar con el botón más al final de la línea. +ConfirmRemovalOfPoll=¿Estás seguro de que quieres eliminar esta encuesta (y todos sus votos)? +UrlForSurvey=URL para comunicarse y obtener acceso directo a la encuesta +PollOnChoice=Estás creando una encuesta de tipo multiple-choice. Ingrese primero todas las opciones posibles para su encuesta: +CreateSurveyStandard=Crea una encuesta estándar +CheckBox=Casilla de verificación simple +YesNoList=Lista (vacío/si/no) +AddNewColumn=Agregar nueva columna +TitleChoice=Etiqueta de elección +ExportSpreadsheet=Exportar hoja de cálculo de resultados +NbOfSurveys=Cantidad de encuestas +NbOfVoters=Cantidad de votantes +PollAdminDesc=Puedes cambiar todas las líneas de esta encuesta con el botón "Editar". También puedes eliminar una columna o una línea con %s. Y agregar una nueva columna con %s. +YouAreInivitedToVote=Te han invitado a votar en esta encuesta +VoteNameAlreadyExists=Este nombre ya se usó para esta encuesta +AddADate=Agregar una fecha +AddStartHour=Agregar hora de inicio +AddEndHour=Agregar hora de finalización +NoCommentYet=Aún no se han publicado comentarios para esta encuesta +CanSeeOthersVote=Los votantes pueden ver el voto de otras personas +SelectDayDesc=Para cada día seleccionado, puedes elegir o no, las horas de reunión en el siguiente formato:
    - vacío,
    - "8h", "8H" u "8:00" para indicar la hora de inicio de una reunión,
    - "8-11", "8h-11h", "8H-11H" u "8:00-11:00" para indicar la hora de inicio y fin de una reunión,
    - "8h15-11h15", "8H15-11H15" u "8:15-11:15" para lo mismo pero con minutos. +BackToCurrentMonth=Regresar al mes actual +ErrorOpenSurveyFillFirstSection=No has completado la primera sección de la creación de la encuesta. +ErrorOpenSurveyOneChoice=Ingrese al menos una opción +ErrorInsertingComment=Hubo un error al insertar tu comentario +MoreChoices=Ingrese más opciones para los votantes +SurveyExpiredInfo=La encuesta se cerró o la demora en la votación ha vencido. +EmailSomeoneVoted=%s ha completado una línea.\nPuedes encontrar su encuesta en el enlace:\n%s +UserMustBeSameThanUserUsedToVote=Debes haber votado y usar el mismo usuario que usaste para votar, para publicar un comentario. diff --git a/htdocs/langs/es_AR/orders.lang b/htdocs/langs/es_AR/orders.lang new file mode 100644 index 00000000000..6b544aac2fa --- /dev/null +++ b/htdocs/langs/es_AR/orders.lang @@ -0,0 +1,19 @@ +# Dolibarr language file - Source file is en_US - orders +Order=Orden +PdfOrderTitle=Orden +Orders=Órdenes +OrderDateShort=Fecha de la Orden +SuppliersOrders=Ordenes de compra +CustomerOrder=Ordenes de venta +StatusOrderCanceledShort=Cancelado +StatusOrderSentShort=En proceso +StatusOrderToProcessShort=Para procesar +StatusOrderCanceled=Cancelado +StatusOrderDraft=Borrador (necesita ser validado) +StatusSupplierOrderCanceledShort=Cancelado +StatusSupplierOrderSentShort=En proceso +StatusSupplierOrderProcessedShort=Procesado +StatusSupplierOrderToProcessShort=Para procesar +StatusSupplierOrderCanceled=Cancelado +StatusSupplierOrderDraft=Borrador (necesita ser validado) +StatusSupplierOrderProcessed=Procesado diff --git a/htdocs/langs/es_AR/other.lang b/htdocs/langs/es_AR/other.lang new file mode 100644 index 00000000000..47aa202007c --- /dev/null +++ b/htdocs/langs/es_AR/other.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - other +Notify_BILL_VALIDATE=Factura de cliente validada +Notify_BILL_PAYED=Factura de cliente pagada diff --git a/htdocs/langs/es_AR/paybox.lang b/htdocs/langs/es_AR/paybox.lang new file mode 100644 index 00000000000..cfb35349278 --- /dev/null +++ b/htdocs/langs/es_AR/paybox.lang @@ -0,0 +1,24 @@ +# Dolibarr language file - Source file is en_US - paybox +PayBoxSetup=Configuración del módulo PayBox +PayBoxDesc=Este módulo ofrece páginas para permitir el pago en Paybox a los clientes. Esto se puede utilizar para un pago gratuito o para un pago en un objeto Dolibarr en particular (factura, orden, ...) +FollowingUrlAreAvailableToMakePayments=Las siguientes URL están disponibles para ofrecer a un cliente una página para realizar un pago para elementos de Dolibarr +WelcomeOnPaymentPage=Bienvenido a nuestro servicio de pago en línea. +ThisScreenAllowsYouToPay=Esta pantalla le permite realizar un pago en línea a %s. +ThisIsInformationOnPayment=Esta es información sobre el pago a realizar +ToComplete=Para completar +YourEMail=Correo electrónico para recibir confirmación de pago +Creditor=Acreedor +PayBoxDoPayment=Pagar con Paybox +YouWillBeRedirectedOnPayBox=Serás redirigido al sitio seguro de Paybox para ingresar la información de su tarjeta de crédito +Continue=Siguiente +SetupPayBoxToHavePaymentCreatedAutomatically=Configure su Paybox con la URL %s para que el pago se cree automáticamente cuando Paybox lo valide. +YourPaymentHasBeenRecorded=Esta página confirma que su pago ha sido registrado. Gracias. +YourPaymentHasNotBeenRecorded=Su pago NO ha sido registrado y la transacción ha sido cancelada. Gracias. +InformationToFindParameters=Ayuda para encontrar la información de su cuenta %s +PAYBOX_CGI_URL_V2=URL del módulo CGI para pago con Paybox +VendorName=Nombre del proveedor +CSSUrlForPaymentForm=URL de hoja de estilo CSS para formulario de pago +NewPayboxPaymentReceived=Nuevo pago de Paybox recibido +NewPayboxPaymentFailed=Se intentó un nuevo pago de Paybox pero falló +PAYBOX_PAYONLINE_SENDEMAIL=Notificación por correo luego del intento de pago (exitoso o fallido) +PAYBOX_PBX_RANG=Valor para PBX Rang diff --git a/htdocs/langs/es_AR/paypal.lang b/htdocs/langs/es_AR/paypal.lang new file mode 100644 index 00000000000..4d5d6959c57 --- /dev/null +++ b/htdocs/langs/es_AR/paypal.lang @@ -0,0 +1,31 @@ +# Dolibarr language file - Source file is en_US - paypal +PaypalSetup=Configuración de módulo de PayPal +PaypalDesc=Este módulo permite los pagos de clientes vía PayPal. Esto puede ser usado para un simple pago o para un pago relacionado a un objeto de Dolibarr (factura, orden, ...) +PaypalOrCBDoPayment=Pagar con PayPal (tarjeta o PayPal) +PaypalDoPayment=Pagar con PayPal +PAYPAL_API_SANDBOX=Modo de prueba/sandbox +PAYPAL_API_USER=Nombre de Usuario de la API +PAYPAL_API_PASSWORD=Contraseña de la API +PAYPAL_API_SIGNATURE=Firma de la API +PAYPAL_API_INTEGRAL_OR_PAYPALONLY=Ofrecer pago "integral" (tarjeta de crédito+PayPal) o sólo "PayPal" +ONLINE_PAYMENT_CSS_URL=URL opcional de hoja de estilo CSS en sitio online de pagos +ThisIsTransactionId=Este es el ID de transacción: %s +PAYPAL_ADD_PAYMENT_URL=Incluír la URL para pago por PayPal en documentos enviados por e-mail. +NewOnlinePaymentReceived=Nuevo pago online recibido +NewOnlinePaymentFailed=Nuevo intento fallido de pago online +ONLINE_PAYMENT_SENDEMAIL=La dirección de e-mail para las notificaciones luego de cada intento de pago (tanto para los correctos como los fallidos) +ReturnURLAfterPayment=Volver a la URL luego del pago +ValidationOfOnlinePaymentFailed=La la validación de pago online ha fallado +PaymentSystemConfirmPaymentPageWasCalledButFailed=El sitio de confirmación del pago que fue llamado por el sistema de pagos ha devuelto un error +SetExpressCheckoutAPICallFailed=Llamada a función API SetExpressCheckout ha fallado +DoExpressCheckoutPaymentAPICallFailed=Llamada a función API DoExpressCheckoutPayment ha fallado +DetailedErrorMessage=Mensaje detallado del error +ShortErrorMessage=Mensaje breve del error +ErrorCode=Códgo de error +ErrorSeverityCode=Código de severidad del error +PaypalLiveEnabled=Modo "en vivo" de PayPal activo (caso contrario modo prueba/sandbox) +PaypalImportPayment=Importar pagos de PayPa +PostActionAfterPayment=Acciones posteriores a los pagos +ARollbackWasPerformedOnPostActions=Se han deshecho los cambios en las acciones de posteo. Deberás completar estas acciones manualmente si fueran necesarias. +ValidationOfPaymentFailed=La validación del pago ha fallado +PayPalBalance=Crédito PayPal diff --git a/htdocs/langs/es_AR/printing.lang b/htdocs/langs/es_AR/printing.lang new file mode 100644 index 00000000000..e6a39eaf4ac --- /dev/null +++ b/htdocs/langs/es_AR/printing.lang @@ -0,0 +1,46 @@ +# Dolibarr language file - Source file is en_US - printing +Module64000Name=Impresión directa +Module64000Desc=Habilitar Sistema de Impresión Directa +PrintingSetup=Configuración de Sistema de Impresión Directa +PrintingDesc=Este módulo agregará un botón para Imprimir en varios módulos para permitir que los documentos puedan imprimirse directamente sin necesidad de abrir el documento en otra aplicación. +MenuDirectPrinting=Tareas de Impresión Directa +DirectPrint=Impresión Directa +PrintingDriverDesc=Configuración de variables para Driver de Impresión +ListDrivers=Lista de drivers +PrintTestDesc=Lista de Iimpresoras +FileWasSentToPrinter=Archivo %s fue enviado a la impresora +ViaModule=vía módulo +NoActivePrintingModuleFound=No hay un driver activo para imprimir el documento. Revisa la configuración del módulo %s +PleaseSelectaDriverfromList=Por favor elige un driver de la lista. +PleaseConfigureDriverfromList=Por favor configure el driver seleccionado de la lista. +SetupDriver=Configuración del Driver +TargetedPrinter=Impresora Seleccionada +PRINTGCP_INFO=Configuración de Google OAuth API +PRINTGCP_TOKEN_ACCESS=Token para Google Cloud Print OAuth +PrintGCPDesc=Este driver permite el envío de documentos directamente a una impresora utilizando Google Cloud Print. +GCP_displayName=Mostrar Nombre +GCP_Id=ID de Impresora +GCP_OwnerName=Nombre del Dueño +GCP_State=Estado de la Impresora +GCP_connectionStatus=Estado En Línea +GCP_Type=Tipo de Impresora +PrintIPPDesc=Este driver permite el envío de documentos directamente a una impresora. Requiere sistema Linux con CUPS instalado. +PRINTIPP_HOST=Servidor de impresora +PRINTIPP_USER=Iniciar Sesión +NoDefaultPrinterDefined=No se ha predeterminado una impresora +DefaultPrinter=Impresora predeterminada +IPP_Uri=URL de Impresora +IPP_Name=Nombre de Impresora +IPP_State=Estado de la Impresora +IPP_State_reason=Motivo del Estado +IPP_State_reason1=Motivo1 del Estado +IPP_BW=Blanco y Negro +IPP_Media=Calidad de Impresión +IPP_Supported=Tipo de Calidad +DirectPrintingJobsDesc=Esta página muestra todos los trabajos de impresión encontrados para las impresoras disponibles. +GoogleAuthNotConfigured=No se ha configurado Google OAuth. Habilita el módulo OAuth y seleccione un ID secreto de Google. +GoogleAuthConfigured=Las credenciales de Google OAuth fueron encontradas en la configuración del módulo OAuth +PrintingDriverDescprintgcp=Las variables de configuración para el driver de impresión Google Cloud Print. +PrintingDriverDescprintipp=Configuración de variables para el driver de impresión Cups. +PrintTestDescprintgcp=Lista de Impresoras para Google Cloud Print +PrintTestDescprintipp=Lista de Impresoras para Cups. diff --git a/htdocs/langs/es_AR/productbatch.lang b/htdocs/langs/es_AR/productbatch.lang new file mode 100644 index 00000000000..88c6543e9e2 --- /dev/null +++ b/htdocs/langs/es_AR/productbatch.lang @@ -0,0 +1,21 @@ +# Dolibarr language file - Source file is en_US - productbatch +ManageLotSerial=Usar lote / número de serie +ProductStatusOnBatch=Sí (se requiere lote / serie) +ProductStatusNotOnBatch=No (lote / serie no utilizado) +Batch=Lote / Serie +atleast1batchfield=Fecha de consumición o Fecha de venta o Número de lote / serie +batch_number=Número de lote / serie +BatchNumberShort=Lote / Serie +EatByDate=Fecha de comer +SellByDate=Fecha de caducidad +DetailBatchNumber=Detalles de lote / serie +printBatch=Lote / Serie: %s +printEatby=Coma por: %s +printSellby=Venta por: %s +printQty=Cantidad: %d +AddDispatchBatchLine=Añadir una línea para el envío de vida útil +WhenProductBatchModuleOnOptionAreForced=Cuando el módulo Lote / Serie está activado, la disminución automática de existencias se ve obligada a "Disminuir las existencias reales en la validación de envío" y el modo de aumento automático se fuerza a "Incrementar las existencias reales en el envío manual a almacenes" y no se puede editar. Otras opciones se pueden definir como quieras. +ProductDoesNotUseBatchSerial=Este producto no usa lote / número de serie. +ProductLotSetup=Configuración de lote de módulo / serie +ShowCurrentStockOfLot=Mostrar stock actual para pareja producto / lote +ShowLogOfMovementIfLot=Mostrar registro de movimientos para pareja producto / lote. diff --git a/htdocs/langs/es_AR/products.lang b/htdocs/langs/es_AR/products.lang new file mode 100644 index 00000000000..c42f5e892b4 --- /dev/null +++ b/htdocs/langs/es_AR/products.lang @@ -0,0 +1,7 @@ +# Dolibarr language file - Source file is en_US - products +ProductRef=Ref. Producto +ProductLabel=Etiqueta del producto +ProductLabelTranslated=Etiqueta traducida del producto +ProductDescriptionTranslated=Descripción traducida del producto +ExportDataset_produit_1=Productos +SuppliersPrices=Precio de Proveedor diff --git a/htdocs/langs/es_AR/projects.lang b/htdocs/langs/es_AR/projects.lang new file mode 100644 index 00000000000..4a193522103 --- /dev/null +++ b/htdocs/langs/es_AR/projects.lang @@ -0,0 +1,8 @@ +# Dolibarr language file - Source file is en_US - projects +RefProject=Ref. Proyecto +ProjectId=ID de Proyecto +ProjectLabel=Etiqueta de Proyecto +ProjectsArea=Area de Proyectos +SharedProject=Todos +CantRemoveProject=This project can't be removed as it is referenced by some other objects (invoice, orders or other). See referers tab. +OppStatusPROPO=Propuesta diff --git a/htdocs/langs/es_AR/propal.lang b/htdocs/langs/es_AR/propal.lang new file mode 100644 index 00000000000..4f0494200d1 --- /dev/null +++ b/htdocs/langs/es_AR/propal.lang @@ -0,0 +1,9 @@ +# Dolibarr language file - Source file is en_US - propal +Proposals=Propuesta comercial +ProposalShort=Propuesta +ProposalsDraft=Presupuestos en borrador +Prospect=Cliente Potencia +PropalsDraft=Borradores +PropalsOpened=Abierto +PropalStatusDraft=Borrador (necesita ser validado) +DefaultModelPropalCreate=Creación de modelo por defecto diff --git a/htdocs/langs/es_AR/receptions.lang b/htdocs/langs/es_AR/receptions.lang new file mode 100644 index 00000000000..f2ed852d480 --- /dev/null +++ b/htdocs/langs/es_AR/receptions.lang @@ -0,0 +1,29 @@ +# Dolibarr language file - Source file is en_US - receptions +ReceptionsSetup=Configuración de recepción de productos +Reception=Recepción +ReceptionsArea=Área de recepciones +NbOfReceptions=Cantidad de recepciones +NumberOfReceptionsByMonth=Cantidad de recepciones por mes +ReceptionCard=Ficha de la recepción +QtyInOtherReceptions=Cantidad en otras recepciones +OtherReceptionsForSameOrder=Otras recepciones para esta orden +ReceptionsAndReceivingForSameOrder=Recepciones y recibos de esta orden. +ReceptionsToValidate=Recepciones para validar +StatusReceptionCanceled=Cancelada +StatusReceptionValidated=Validada (productos para enviar o ya enviados) +StatusReceptionProcessed=Procesada +StatusReceptionValidatedShort=Validada +StatusReceptionProcessedShort=Procesada +ConfirmDeleteReception=¿Estás seguro de que quieres eliminar esta recepción? +ConfirmValidateReception=¿Estás seguro de que quieres validar esta recepción con referencia %s? +ConfirmCancelReception=¿Estás seguro de que quieres cancelar esta recepción? +StatsOnReceptionsOnlyValidated=Estadísticas realizadas sólo con recepciones validadas. Se utilizó la fecha de validación de la recepción (la fecha prevista de entrega no siempre se conoce). +SendReceptionByEMail=Enviar recepción por correo +SendReceptionRef=Envío de recepción %s +ActionsOnReception=Eventos en recepción +ReceptionCreationIsDoneFromOrder=Por el momento, la creación de una nueva recepción se realiza desde la ficha de la orden. +ProductQtyInReceptionAlreadySent=Cantidad de productos enviados de las órdenes de ventas abietras +ProductQtyInSuppliersReceptionAlreadyRecevied=Cantidad de productos ya recibidos de las órdenes de proveedor abiertas +ValidateOrderFirstBeforeReception=Primero debes validar la orden antes de poder hacer recepciones. +ReceptionsNumberingModules=Módulo de numeración para recepciones. +ReceptionsReceiptModel=Plantillas de documento para recepciones diff --git a/htdocs/langs/es_AR/resource.lang b/htdocs/langs/es_AR/resource.lang new file mode 100644 index 00000000000..6a5dbc5612a --- /dev/null +++ b/htdocs/langs/es_AR/resource.lang @@ -0,0 +1,19 @@ +# Dolibarr language file - Source file is en_US - resource +ConfirmDeleteResourceElement=Confirmar eliminación del recurso para este elemento +NoResourceInDatabase=No hay recursos en la base de datos. +NoResourceLinked=Ningún recurso vinculado +ResourcePageIndex=Lista de recursos +ResourceCard=Ficha de recurso +AddResource=Crea un recurso +ResourceFormLabel_ref=Nombre del recurso +ResourceType=Tipo del recurso +ResourceFormLabel_description=Descripción del recurso +ResourcesLinkedToElement=Recursos vinculados al elemento +ShowResource=Mostrar recurso +ResourceElementPage=Recursos del elemento +RessourceLineSuccessfullyDeleted=Línea del recurso eliminada correctamente +RessourceLineSuccessfullyUpdated=Línea del recurso actualizada correctamente +ResourceLinkedWithSuccess=Recurso vinculado con éxito +ConfirmDeleteResource=Confirma eliminación de este recurso +IdResource=ID del recurso +ResourceTypeCode=Código de tipo de recurso diff --git a/htdocs/langs/es_AR/salaries.lang b/htdocs/langs/es_AR/salaries.lang new file mode 100644 index 00000000000..4b2e3729400 --- /dev/null +++ b/htdocs/langs/es_AR/salaries.lang @@ -0,0 +1,20 @@ +# Dolibarr language file - Source file is en_US - salaries +SALARIES_ACCOUNTING_ACCOUNT_PAYMENT=Cuenta contable utilizada para terceros contratados +SALARIES_ACCOUNTING_ACCOUNT_PAYMENT_Desc=La cuenta contable definida en la ficha del usuario se usará solo para la contabilidad en el libro mayor. Esta se usará para el Libro Diario y como valor predeterminado de la contabilidad del Libro Mayor si no fue definida una cuenta contable del usuario. +SALARIES_ACCOUNTING_ACCOUNT_CHARGE=Cuenta contable por defecto para pago de sueldos +Salary=Sueldo +Salaries=Sueldos +NewSalaryPayment=Nuevo pago de sueldo +AddSalaryPayment=Agregar pago de sueldo +SalaryPayment=Pago de sueldo +SalariesPayments=Pagos de sueldos +ShowSalaryPayment=Mostrar pago de sueldo +THM=Valor promedio por hora +TJM=Valor promedio por día +CurrentSalary=Sueldo actual +THMDescription=Este valor podría ser usado para calcular el costo de tiempo insumido en un proyecto ingresado por los usuarios si se usa el Módulo de Proyectos +TJMDescription=Este valor es sólo informativo y no será utilizado para cálculo alguno +LastSalaries=Ultimos %s pagos de sueldos +AllSalaries=Todos los pagos de sueldo +SalariesStatistics=Estadísticas de sueldos +SalariesAndPayments=Sueldos y pagos diff --git a/htdocs/langs/es_AR/sendings.lang b/htdocs/langs/es_AR/sendings.lang new file mode 100644 index 00000000000..0fab9dbcf71 --- /dev/null +++ b/htdocs/langs/es_AR/sendings.lang @@ -0,0 +1,56 @@ +# Dolibarr language file - Source file is en_US - sendings +RefSending=Ref. viaje +Sending=Viaje +Sendings=Viajes +AllSendings=Todos los viajes +Shipment=Viaje +Shipments=Viajes +ShowSending=Mostrar viajes +Receivings=Comprobantes de entrega +SendingsArea=Área de envíos +ListOfSendings=Lista de viajes +LastSendings=Últimos %s viajes +NbOfSendings=Cantidad de viajes +NumberOfShipmentsByMonth=Cantidad de viajes por mes +SendingCard=Ficha del viaje +NewSending=Nuevo viaje +CreateShipment=Crear viaje +QtyShipped=Cantidad enviada +QtyShippedShort=Cantidad enviada +QtyPreparedOrShipped=Cantidad preparada o enviada +QtyToShip=Cantidad para enviar +QtyToReceive=Cantidad para recibir +QtyReceived=Cantidad recibida +QtyInOtherShipments=Cantidad en otros viajes +KeepToShip=Pendiente de enviar +OtherSendingsForSameOrder=Otros viajes para esta orden +SendingsAndReceivingForSameOrder=Viajes y recepciones de esta orden +SendingsToValidate=Viajes para validar +StatusSendingCanceled=Cancelado +StatusSendingValidated=Validado (productos para enviar o ya enviados) +SendingSheet=Hoja de viaje +ConfirmDeleteSending=¿Estás seguro que quieres eliminar este viaje? +ConfirmValidateSending=¿Estás seguro que quieres validar este viaje con referencia %s? +ConfirmCancelSending=¿Estás seguro que quieres cancelar este viaje? +WarningNoQtyLeftToSend=Advertencia, no hay productos esperando para ser enviados. +StatsOnShipmentsOnlyValidated=Estadísticas realizadas sólo sobre viajes validados. La fecha utilizada es la de validación del viaje (la fecha de entrega prevista no siempre se conoce). +RefDeliveryReceipt=Ref. comprobante de entrega +StatusReceipt=Estado del comprobante de entrega +DateReceived=Fecha de entrega +SendShippingByEMail=Enviar detalles del viaje por correo +SendShippingRef=Enviar el viaje %s +ActionsOnShipping=Eventos del viaje +LinkToTrackYourPackage=Vínculo al seguimiento del envío +ShipmentCreationIsDoneFromOrder=Por el momento, la creación de un nuevo viaje se realiza desde la ficha de la orden. +ShipmentLine=Línea del viaje +ProductQtyInCustomersOrdersRunning=Cantidad de productos de órdenes de venta abiertas +ProductQtyInSuppliersOrdersRunning=Cantidad de productos de órdenes de compra abiertas +ProductQtyInShipmentAlreadySent=Cantidad de productos enviados de órdenes de venta abiertas +ProductQtyInSuppliersShipmentAlreadyRecevied=Cantidad de productos enviados de órdenes de compra abiertas +NoProductToShipFoundIntoStock=No se encontró ningún producto para enviar en el almacén %s. Corrija el stock o regrese para elegir otro almacén. +WeightVolShort=Peso/Volmen +ValidateOrderFirstBeforeShipment=Primero debes validar la orden antes de poder realizar viajes. +DocumentModelTyphon=Modelo de documento completo para comprobantes de entrega (logotipo...) +SumOfProductVolumes=Suma de volúmenes de productos +SumOfProductWeights=Suma de pesos de productos +DetailWarehouseFormat=Peso:%s (Cantidad: %d) diff --git a/htdocs/langs/es_AR/sms.lang b/htdocs/langs/es_AR/sms.lang new file mode 100644 index 00000000000..a6066003f1b --- /dev/null +++ b/htdocs/langs/es_AR/sms.lang @@ -0,0 +1,27 @@ +# Dolibarr language file - Source file is en_US - sms +SmsSetup=Configuración de SMS +SmsDesc=Esta página te permite definir opciones globales en funcionalidades de SMS +SmsCard=Tarjeta SMS +SmsTargets=Destinos +SmsRecipients=Destinos +SmsRecipient=Destino +SmsTo=Destino +SmsTopic=Título del SMS +SmsMessage=Mensaje SMS +ListOfSms=Listar campañas SMS +DeleteASms=Remover una campaña SMS +SmsResult=Resultado de envío de SMS +SmsStatusSent=Enviar +SmsStatusSentPartialy=Enviar parcial +SmsStatusSentCompletely=Enviar completo +SmsSuccessfulySent=SMS correctamente enviado (de %s a %s) +ErrorSmsRecipientIsEmpty=La cantidad de destinos está vacía +WarningNoSmsAdded=No hay nuevos teléfonos añadidos a la lista de destinos +NbOfUniqueSms=Cantidad de teléfonos únicos +NbOfSms=Cantidad de teléfonos +SmsInfoCharRemain=Número de caracteres restantes +SmsInfoNumero=(formato internacional, por ejemplo: +33899701761) +DelayBeforeSending=Demora en el envío (minutos) +SmsNoPossibleSenderFound=No hay emisor disponible. Revise la configuración de su proveedor de SMS +SmsNoPossibleRecipientFound=No hay destino disponible. Revise la configuración de su proveedor de SMS. +DisableStopIfSupported=Deshabilitar mensaje de STOP (si está soportado) diff --git a/htdocs/langs/es_AR/stocks.lang b/htdocs/langs/es_AR/stocks.lang new file mode 100644 index 00000000000..ecd269206da --- /dev/null +++ b/htdocs/langs/es_AR/stocks.lang @@ -0,0 +1,6 @@ +# Dolibarr language file - Source file is en_US - stocks +inventoryEdit=Editar +inventoryDraft=Activos +AddProduct=Agregar +inventoryDeleteLine=Eliminar línea +ListInventory=Lista diff --git a/htdocs/langs/es_AR/supplier_proposal.lang b/htdocs/langs/es_AR/supplier_proposal.lang new file mode 100644 index 00000000000..cc00f748bb2 --- /dev/null +++ b/htdocs/langs/es_AR/supplier_proposal.lang @@ -0,0 +1,43 @@ +# Dolibarr language file - Source file is en_US - supplier_proposal +SupplierProposal=Presupuestos de proveedores +supplier_proposalDESC=Administrar solicitudes de precios a proveedores +SupplierProposalNew=Nueva solicitud de precio +CommRequest=Solicitud de precio +CommRequests=Solicitudes de precio +SearchRequest=Encontrar una solicitud +DraftRequests=Solicitudes en borrador +SupplierProposalsDraft=Presupuestos de proveedor en borrador +LastModifiedRequests=Últimas %s solicitudes de precio modificadas +RequestsOpened=Solicitudes de precio abiertas +SupplierProposalArea=Área de presupuestos de proveedores +SupplierProposals=Presupuestos de proveedores +SupplierProposalsShort=Presupuestos de proveedores +NewAskPrice=Nueva solicitud de precio +ShowSupplierProposal=Mostrar solicitud de precio +AddSupplierProposal=Crear una solicitud de precio +SupplierProposalRefFournNotice=Antes de cambiar a "Aceptado", revise bien las referencias de los proveedores. +ConfirmValidateAsk=¿Estás seguro que quieres validar esta solicitud de precio con nombre %s? +DeleteAsk=Eliminar solicitud +ValidateAsk=Validar solicitud +SupplierProposalStatusDraft=Borrador (necesita ser validado) +SupplierProposalStatusValidated=Validado (la solicitud está abierta) +CopyAskFrom=Crear una solicitud de precio a partir de una existente +CreateEmptyAsk=Crear solicitud en blanco +ConfirmCloneAsk=¿Estás seguro que quieres clonar la solicitud de precio %s? +ConfirmReOpenAsk=¿Estás seguro que quieres abrir nuevamente la solicitud de precio %s? +SendAskByMail=Enviar solicitud de precio por corre +SendAskRef=Enviando la solicitud de precio %s +SupplierProposalCard=Ficha de solicitud de precio +ConfirmDeleteAsk=¿Estás seguro que quieres eliminar esta solicitud de precio %s? +ActionsOnSupplierProposal=Eventos con solicitud de precio +DocModelAuroreDescription=Un modelo de solicitud completo (logo...) +CommercialAsk=Solicitud de precio +DefaultModelSupplierProposalCreate=Creación de modelo por defecto +DefaultModelSupplierProposalToBill=Plantilla predeterminada para cerrar una solicitud de precio (aceptada) +DefaultModelSupplierProposalClosed=Plantilla predeterminada para cerrar una solicitud de precio (rechazada) +ListOfSupplierProposals=Lista de presupuestos de proveedores +ListSupplierProposalsAssociatedProject=Lista de presupuestos de proveedores asociados al proyecto +SupplierProposalsToClose=Presupuestos de proveedor para cerrar +SupplierProposalsToProcess=Presupuestos de proveedor para procesar +LastSupplierProposals=Últimas %s solicitudes de precio +AllPriceRequests=Todas las solicitudes diff --git a/htdocs/langs/es_AR/suppliers.lang b/htdocs/langs/es_AR/suppliers.lang new file mode 100644 index 00000000000..dc19381abf8 --- /dev/null +++ b/htdocs/langs/es_AR/suppliers.lang @@ -0,0 +1,37 @@ +# Dolibarr language file - Source file is en_US - suppliers +SuppliersInvoice=Factura de Proveedor +ShowSupplierInvoice=Mostrar Factura de Proveedor +NewSupplier=Nuevo Proveedor +ListOfSuppliers=Lista de Proveedores +ShowSupplier=Mostrar Proveedor +OrderDate=Fecha de la Orden +TotalBuyingPriceMinShort=Total de precios de compra de subproductos +TotalSellingPriceMinShort=Total de precios de venta de subproductos +AddSupplierPrice=Agregar precio de compra +SupplierPrices=Precio de Proveedor +NoRecordedSuppliers=No hay proveedor registrado +SupplierPayment=Pago de Proveedor +SuppliersArea=Area de Proveedor +RefSupplierShort=Ref. Proveedor +ExportDataset_fournisseur_1=Facturas de proveedor y su detalle +ExportDataset_fournisseur_2=Facturas de proveedor y sus pagos +ExportDataset_fournisseur_3=Ordenes de compra y su detalle +ApproveThisOrder=Aprobar esta orden +ConfirmApproveThisOrder=¿Está seguro que quiere aprobar la orden %s? +DenyingThisOrder=Declinar esta orden +ConfirmDenyingThisOrder=¿Está seguro que quiere rechazar esta orden %s? +ConfirmCancelThisOrder=¿Está seguro que quiere cancelar esta orden %s? +AddSupplierOrder=Crear orden de compra +ListOfSupplierProductForSupplier=Lista de productos y precios por proveedor %s +SentToSuppliers=Enviado a los proveedores +ListOfSupplierOrders=Lista de órdenes de compra +MenuOrdersSupplierToBill=Ordenes de compra a facturar +NbDaysToDelivery=Demora de entrega (días) +DescNbDaysToDelivery=La mayor demora de entrega de los productos de esta orden +SupplierReputation=Reputación de proveedor +DoNotOrderThisProductToThisSupplier=No solicitar +NotTheGoodQualitySupplier=Baja calidad +BuyerName=Nombre de comprador +AllProductServicePrices=Todos los precios de productos / servicios +AllProductReferencesOfSupplier=Todas las referencias de proveedor de productos / servicios +BuyingPriceNumShort=Precio de Proveedor diff --git a/htdocs/langs/es_AR/trips.lang b/htdocs/langs/es_AR/trips.lang new file mode 100644 index 00000000000..864eb785dcb --- /dev/null +++ b/htdocs/langs/es_AR/trips.lang @@ -0,0 +1,118 @@ +# Dolibarr language file - Source file is en_US - trips +ShowExpenseReport=Mostrar informe de gastos +Trips=Informe de gastos +TripsAndExpenses=Informes de gastos +TripsAndExpensesStatistics=Estadísticas de informes de gastos +TripCard=Ficha del Informe de gastos +AddTrip=Crear informe de gastos +ListOfTrips=Lista de informes de gastos +ListOfFees=Lista de tarifas +TypeFees=Tipos de tarifas +ShowTrip=Mostrar informe de gastos +NewTrip=Nuevo informe de gastos +FeesKilometersOrAmout=Cantidad o kilómetros +DeleteTrip=Eliminar informe de gastos +ConfirmDeleteTrip=¿Está seguro de que desea eliminar este informe de gastos? +ListTripsAndExpenses=Lista de informes de gastos +ListToApprove=Esperando aprobación +ExpensesArea=Area de informes de gastos +ClassifyRefunded=Clasificar como 'Reembolsado' +ExpenseReportWaitingForApproval=Se ha enviado un nuevo informe de gastos para su aprobación. +ExpenseReportWaitingForApprovalMessage=Se ha enviado un nuevo informe de gastos y está a la espera de su aprobación.
    -Usuario: %s
    - Período: %s
    Haga click aquí para validar: %s +ExpenseReportWaitingForReApproval=Se ha enviado un informe de gastos para su re-aprobación +ExpenseReportWaitingForReApprovalMessage=Se ha enviado un nuevo informe de gastos y está a la espera de su re-aprobación.
    El %s, rechazaste aprobar este informe de gastos por el siguiente motivo: %s.
    Una nueva versión ha sido propuesta y está a la espera de tu aprobación.
    - Usuario: %s
    - Período: %s
    Haga click aquí para validar: %s +ExpenseReportApproved=Se ha aprobado un informe de gastos +ExpenseReportApprovedMessage=El informe de gastos %s está aprobado.
    - Usuario: %s
    - Aprobado por: %s
    Haga click aquí para mostrar el informe de gastos: %s +ExpenseReportRefused=Se ha rechazado un informe de gastos +ExpenseReportRefusedMessage=El informe de gastos %s está rechazado.
    - Usuario: %s
    - Rechazado por: %s
    - Motivo del rechazo: %s
    haga click aquí apra mostrar el informe de gastos: %s +ExpenseReportCanceled=Se ha cancelado un informe de gastos +ExpenseReportCanceledMessage=El informe de gastos %s se ha cancelado.
    - Usuario: %s -
    Cancelado por: %s
    - Motivo de la cancelación: %s
    Haga click aquí para mostrar el informe de gastos: %s +ExpenseReportPaid=Se ha pagado un informe de gastos +ExpenseReportPaidMessage=El informe de gastos %s ha sido abonado.
    - Usuario: %s
    - Pagado por: %s
    Haga click aquí para mostrar el informe de gastos: %s +TripId=ID del informe de gastos +AnyOtherInThisListCanValidate=Persona a quién reportar para validación. +TripNDF=Detalles del informe de gastos +PDFStandardExpenseReports=Template estándar de informe de gastos para generar un documendo PDF +ExpenseReportLine=Línea de informe de gastos +TF_TRIP=Viático +TF_LUNCH=Almuerzo +TF_METRO=Subte +TF_BUS=Autobús +TF_CAR=Auto +EX_FUE=Combustible en valor original +EX_PAR=Estacionamiento en valor original +EX_TOL=Peaje en valor original +EX_IND=Suscripción a indemnización por transporte +EX_SUM=Suministro por mantenimiento +EX_SUO=Suministros de Oficina +EX_CAR=Alquiler de auto +EX_CUR=Recibos de Cliente +EX_OTR=Otros recibos +EX_POS=Gastos de envío +EX_CAM=Mantenimiento y reparaciones en valor original +EX_EMM=Comida para los empleados +EX_GUM=Comida para invitados +EX_FUE_VP=Combustible en valor actual +EX_TOL_VP=Peaje en valor actual +EX_PAR_VP=Estacionamiento en valor actual +EX_CAM_VP=Mantenimiento y reparaciones en valor actual +DefaultCategoryCar=Método de transporte por defecto +DefaultRangeNumber=Rango numérico por defecto +UploadANewFileNow=Cargar un nuevo documento +Error_EXPENSEREPORT_ADDON_NotDefined=Error, la regla de numeración de referencia de informe de gastos no ha sido definida en la configuración del módulo 'Informe de Gastos' +ErrorDoubleDeclaration=Tienes declarado otro informe de gastos para un rango de fechas similar. +AucuneLigne=Aún no se han declarado informes de gastos +ModePaiement=Método de pago +REFUSEUR=Rechazado por +MOTIF_REFUS=Motivo +MOTIF_CANCEL=Motivo +DATE_REFUS=Fecha de rechazo +DATE_CANCEL=Fecha de cancelación +BROUILLONNER=Reabierto +ExpenseReportRef=Informe de gastos de referencia +ValidateAndSubmit=Validar y enviar para aprobación +ValidatedWaitingApproval=Validado (a la espera de aprobación) +NOT_AUTHOR=No eres el autor de este informe de gastos. La operación se ha cancelado. +ConfirmRefuseTrip=¿Estás seguro que quieres rechazar este informe de gastos? +ValideTrip=Aprobar informe de gastos +ConfirmValideTrip=¿Estás seguro que quieres aprobar este informe de gastos +PaidTrip=Pagar un informe de gastos +ConfirmPaidTrip=¿Estás seguro que quieres cambiar el estado de este informe de gastos a "Pagado"? +ConfirmCancelTrip=¿Estás seguro que quieres cancelar este informe de gastos? +BrouillonnerTrip=Cambiar el informe de gastos a "borrador" +ConfirmBrouillonnerTrip=¿Estás seguro que quieres cambiar este informe de gastos a "Borrador"? +SaveTrip=Validar informe de gastos +ConfirmSaveTrip=¿Estás seguro que quieres validar este informe de gastos? +NoTripsToExportCSV=No se ha cargado un informe de gastos para exportar para este período. +ExpenseReportPayment=Pago de informe de gastos +ExpenseReportsToApprove=Informes de gastos para aprobar +ExpenseReportsToPay=Informes de gastos para pagar +ConfirmCloneExpenseReport=¿Estás seguro que quieres clonar este informe de gastos? +ExpenseReportsIk=Indice de kilómetros Informe de gastos +ExpenseReportsRules=Reglas de informe de gastos +ExpenseReportIkDesc=Puedes modificar el cálculo del gasto de kilómetros por categoría y rango que fueron definidos previamente. d es la distancia en kilómetros +ExpenseReportRulesDesc=Puedes crear o actualizar cualquier regla de cálculo. Esto será utilizado cuando el usuario quiera crear un nuevo informe de gastos +expenseReportOffset=Compensación +expenseReportTotalForFive=Ejemplo con d = 5 +expenseReportRangeFromTo=desde %d hasta %d +expenseReportCatDisabled=Categoría deshabilitada - Por favor revisar la clave c_exp_tax_cat en el diccionario +expenseReportRangeDisabled=Rango deshabilitado - Por favor revisar la clave c_exp_tax_range en el diccionario +ExpenseReportDomain=Dominio donde aplicar +ExpenseReportLimitOn=Limitar a +ExpenseReportDateStart=Fecha de inicio +ExpenseReportDateEnd=Fecha de fin +ExpenseReportLimitAmount=Monto límite +ExpenseReportRestrictive=Restringido +ExpenseReportConstraintViolationError=Violación de regla ID [%s]: %s es superior a %s %s +byEX_DAY=por día (limitado a %s) +byEX_MON=por mes (limitado a %s) +byEX_YEA=por año (limitado a %s) +byEX_EXP=por línea (limitado a %s) +ExpenseReportConstraintViolationWarning=Violación de regla ID [%s]: %s es superior a %s %s +nolimitbyEX_DAY=por día (sin límite) +nolimitbyEX_MON=por mes (sin límite) +nolimitbyEX_YEA=por año (sin límite) +nolimitbyEX_EXP=por línea (sin límite) +CarCategory=Tipo de auto +ExpenseRangeOffset=Monto de compensación: %s +AttachTheNewLineToTheDocument=Adjuntar la línea a un documento cargado diff --git a/htdocs/langs/es_AR/users.lang b/htdocs/langs/es_AR/users.lang new file mode 100644 index 00000000000..4c77e324b5b --- /dev/null +++ b/htdocs/langs/es_AR/users.lang @@ -0,0 +1,81 @@ +# Dolibarr language file - Source file is en_US - users +HRMArea=Area de Recursos Humanos +UserCard=Ficha del Usuario +GroupCard=Ficha del Grupo +Permission=Permiso +EditPassword=Cambiar contraseña +SendNewPassword=Regenerar y enviar contraseña +SendNewPasswordLink=Enviar enlace para nueva contraseña +ReinitPassword=Regenerar contraseña +PasswordChangedTo=Contraseña cambiada a: %s +SubjectNewPassword=Tu nueva contraseña para %s +UserRights=Permisos de usuario +UserGUISetup=Configuración de pantalla de usuario +EnableAUser=Activar un usuario +ConfirmDisableUser=¿Estás seguro que quieres desactivar al usuario %s? +ConfirmDeleteUser=¿Estás seguro de que quieres eliminar el usuario %s? +ConfirmDeleteGroup=¿Estás seguro de que quieres eliminar el grupo %s? +ConfirmEnableUser=¿Estás seguro de que quieres habilitar el usuario %s? +ConfirmReinitPassword=¿Estás seguro de que quieres generar una nueva contraseña para el usuario %s? +ConfirmSendNewPassword=¿Estás seguro de que quieres generar y enviar una nueva contraseña para el usuario %s? +LoginNotDefined=El usuario para ingreso no está definido. +NameNotDefined=El nombre no está definido. +ListOfUsers=Lista de usuarios +SuperAdministrator=Super administrador +DefaultRightsDesc=Defina aquí los permisos por defecto otorgados automáticamente a un usuario nuevo (para modificar los permisos de los usuarios existentes, vaya a la ficha del usuario). +DolibarrUsers=Usuarios de Dolibarr +LastName=Apellido +ListOfGroups=Lista de grupos +CreateGroup=Crear grupo +RemoveFromGroup=Quitar del grupo +PasswordChangedAndSentTo=La contraseña fue modificada y enviada a %s. +PasswordChangeRequest=Solicitud de cambio de contraseña para %s +PasswordChangeRequestSent=Solicitud de cambio de contraseña para %s enviado a %s. +ShowGroup=Mostrar grupo +ShowUser=Mostrar usuario +NonAffectedUsers=Usuarios no asignados +UserModified=Usuario modificado correctamente +PhotoFile=Archivo de fotos +ListOfUsersInGroup=Lista de usuarios en este grupo +ListOfGroupsForUser=Lista de grupos para este usuario +LinkToCompanyContact=Enlazar a un tercero / contacto +LinkedToDolibarrMember=Enlazar al miembro +LinkedToDolibarrUser=Enlazar a un usuario de Dolibarr +LinkedToDolibarrThirdParty=Enlace a un tercero de Dolibarr +CreateDolibarrLogin=Crear un usuario +CreateDolibarrThirdParty=Crea un tercero +LoginAccountDisableInDolibarr=Cuenta deshabilitada en Dolibarr. +UsePersonalValue=Usar valor personal +ExportDataset_user_1=Usuarios y sus propiedades +DomainUser=Usuario de dominio %s +CreateInternalUserDesc=Este formulario te permite crear un usuario interno en tu empresa/organización. Para crear un usuario externo (cliente, proveedor, etc.), use el botón 'Crear usuario Dolibarr' de la ficha del contacto de ese tercero. +PermissionInheritedFromAGroup=Permiso otorgado porque se heredó de uno de los grupos de usuarios. +UserWillBeInternalUser=El usuario creado será un usuario interno (porque no está vinculado a un tercero en particular) +UserWillBeExternalUser=El usuario creado será un usuario externo (porque está vinculado a un tercero en particular) +IdPhoneCaller=Identificador de llamadas +NewUserCreated=Usuario %s creado +NewUserPassword=Cambio de contraseña para %s +UserDisabled=Usuario %s desactivado +ConfirmCreateContact=¿Estás seguro que quieres crear una cuenta Dolibarr para este contacto? +ConfirmCreateLogin=¿Estás seguro que quieres crear una cuenta Dolibarr para este miembro? +ConfirmCreateThirdParty=¿Estás seguro que quieres crear un tercero para este miembro? +LoginToCreate=Usuario a crear +NameToCreate=Nombre del tercero para crear +YourRole=Tus roles +YourQuotaOfUsersIsReached=¡Se ha alcanzado su cuota de usuarios activos! +NbOfUsers=Cantidad de usuarios +NbOfPermissions=Cantidad de permisos +DontDowngradeSuperAdmin=Solo un superadministrador puede degradar a un superadministrador +UseTypeFieldToChange=Use el campo Tipo para cambiar +OpenIDURL=URL de OpenID +LoginUsingOpenID=Utilizar OpenID para ingresar +ExpectedWorkedHours=Horas trabajadas previstas por semana +ColorUser=Color del usuario +DisabledInMonoUserMode=Deshabilitado en modo mantenimiento +UserAccountancyCode=Código contable del usuario +UserLogoff=Cerrar sesión +UserLogged=Usuario registrado +DateEmploymentEnd=Fecha de finalización del empleo +ForceUserExpenseValidator=Forzar validador de informe de gastos +ForceUserHolidayValidator=Forzar validador de licencias del usuario +ValidatorIsSupervisorByDefault=Por defecto, el validador es el supervisor del usuario. Déjalo vacío para mantener este comportamiento. diff --git a/htdocs/langs/es_AR/website.lang b/htdocs/langs/es_AR/website.lang new file mode 100644 index 00000000000..ff1df53c2d8 --- /dev/null +++ b/htdocs/langs/es_AR/website.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - website +ReadPerm=Leído +WebsiteAccounts=Cuentas de sitio web diff --git a/htdocs/langs/es_AR/withdrawals.lang b/htdocs/langs/es_AR/withdrawals.lang new file mode 100644 index 00000000000..bea9b30e1da --- /dev/null +++ b/htdocs/langs/es_AR/withdrawals.lang @@ -0,0 +1,100 @@ +# Dolibarr language file - Source file is en_US - withdrawals +CustomersStandingOrdersArea=Area de órdenes de pago por débito automático +SuppliersStandingOrdersArea=Area de órdenes de pago por crédito automático +StandingOrdersPayment=Ordenes de pago por débito automático +StandingOrderPayment=Orden de pago por débito automático +NewStandingOrder=Nueva orden por débito automático +StandingOrderToProcess=Para procesar +WithdrawalsReceipts=Ordenes por débito automático +WithdrawalReceipt=Orden de Débito Automático +LastWithdrawalReceipts=Ultimos %s archivos de débito automático +WithdrawalsLines=Líneas de orden de débito automático +RequestStandingOrderToTreat=Solicitud para pago por débito automático para procesar +RequestStandingOrderTreated=Solicitud para pago por débito automático procesada +NotPossibleForThisStatusOfWithdrawReceiptORLine=No se puede realizar. El estado de la extracción debe estar como 'acreditado' antes de declarar un rechazo en las líneas especificadas. +NbOfInvoiceToWithdraw=Cantidad de facturas que están a la espera de orden de débito automático +NbOfInvoiceToWithdrawWithInfo=Cantidad de facturas de cliente con ordenes de pago por débito automático que tienen diferente información de cuenta bancaria definida +InvoiceWaitingWithdraw=Facturas a la espera del débito automático +AmountToWithdraw=Monto para extraer +WithdrawsRefused=Débito automático rechazado +NoInvoiceToWithdraw=No hay facturas de cliente a la espera de 'Solicitudes de débito automático". Vaya a la pestaña '%s' y luego a la ficha de la factura que desee para hacer una solicitud. +ResponsibleUser=Usuario responsable +WithdrawalsSetup=Configuración de pago por débito automático +WithdrawStatistics=Estadísticas de pago por débito automático +WithdrawRejectStatistics=Estadísticas de rechazos en pago por débito automático +LastWithdrawalReceipt=Ultimos %s comprobantes de débito automático +MakeWithdrawRequest=Crear una solicitud de pago por débito automático +WithdrawRequestsDone=%s solicitudes registradas de pago por débito automático +ThirdPartyBankCode=Código bancario del tercero +NoInvoiceCouldBeWithdrawed=La factura no se ha debitado correctamente. Revise que las facturas estén en las compañías con un IBAN válido y que el mismo tenga un MRU (Mandato de Referencia Unico) con modo %s. +ClassCredited=Clasificar como acreditado +ClassCreditedConfirm=¿Estás seguro que quieres clasificar este comprobante de extracción como acreditado en tu cuenta bancaria? +TransData=Fecha de transmisión +TransMetod=Método de transmisión +StandingOrderReject=Cargar un rechazo +WithdrawalRefused=Extracción rechazada +WithdrawalRefusedConfirm=¿Estás seguro que quieres ingresar un rechazo en la extracción para la empresa? +RefusedData=Fecha de rechazo +RefusedReason=Motivo del rechazo +RefusedInvoicing=Facturar el rechazo +NoInvoiceRefused=No cargar el rechazo +InvoiceRefused=Factura rechazada (cargar el rechazo al cliente) +StatusTrans=Enviar +StatusCredited=Acreditado +StatusRefused=Rechazado +StatusMotif0=Sin especificar +StatusMotif1=Fondos insuficientes +StatusMotif2=Solicitud en disputa +StatusMotif3=No hay orden de pago por débito automático +StatusMotif4=Ordenes de venta +StatusMotif5=RIB inutilizable +StatusMotif8=Otra razon +CreateForSepaFRST=Crear archivo de débito automático (SEPA FRST) +CreateForSepaRCUR=Crear archivo de débito automático (SEPA RCUR) +CreateAll=Crear archivo de débito automático (todos) +OrderWaiting=A la espera de procesamiento +NotifyTransmision=Transmisión de extracción +NotifyCredit=Crédito de Extracción +NumeroNationalEmetter=Número de transmisor nacional +WithBankUsingRIB=Para cuentas bancarias que utilizan RIB +WithBankUsingBANBIC=Para cuentas bancarias que utilizan IBAN/BIC/SWIFT +BankToReceiveWithdraw=Cuenta bancaria destino +CreditDate=Acreditar en +WithdrawalFileNotCapable=No se puede generar el archivo de comprobante de extracción para su país %s (su país no es compatible) +ShowWithdraw=Mostrar orden de débito automático +IfInvoiceNeedOnWithdrawPaymentWontBeClosed=Sin embargo, si la factura tiene al menos una orden de pago por débito automático aún no procesada, no se establecerá como pagada para permitir la administración previa de extracciones. +DoStandingOrdersBeforePayments=Esta pestaña le permite solicitar una orden de pago por débito automático. Una vez realizada, vaya al menú Banco-> Ordenes de débito automático para administrar la orden. Cuando se cierra la orden de pago, se registrará automáticamente en la factura y quedará cerrada si queda saldada. +WithdrawalFile=Archivo de extracción +SetToStatusSent=Colocar estado como "Archivo enviado" +ThisWillAlsoAddPaymentOnInvoice=Esto también registrará los pagos a las facturas y las clasificará como "Pagadas" si la misma está saldada +StatisticsByLineStatus=Estadísticas por estado de líneas +RUMLong=Referencia única de mandato +RUMWillBeGenerated=Si está vacío, se generará una RUM (referencia de mandato única) una vez que se guarde la información de la cuenta bancaria. +WithdrawMode=Modo de débito automático (FRST o RECUR) +WithdrawRequestAmount=Monto de solicitud de débito automático: +WithdrawRequestErrorNilAmount=No se puede crear una solicitud de débito automático para un monto vacío. +SepaMandate=Mandato de Débito Automático SEPA +PleaseReturnMandate=Por favor, envíe este formulario de mandato por correo a %s o por correo a +SEPALegalText=Al firmar este formulario de mandato, autorizas (A) %s a enviar instrucciones a su banco para debitar su cuenta y (B) a su banco para debitar su cuenta de acuerdo con las instrucciones de %s. Como parte de sus derechos, tiene derecho a un reembolso de su banco bajo los términos y condiciones de su acuerdo bancario. Se debe reclamar un reembolso dentro de las 8 semanas a partir de la fecha en que se realizó el débit de su cuenta. Sus derechos respecto al mandato anterior se explican en una declaración que puede obtener de su banco. +CreditorIdentifier=Identificador del acreedor +CreditorName=Nombre del acreedor +SEPAFillForm=(B) Por favor complete todos los campos marcados * +SEPAFormYourName=Tu nombre +SEPAFormYourBAN=Su nombre de cuenta bancaria (IBAN) +SEPAFormYourBIC=Su código de identificación bancaria (BIC) +PleaseCheckOne=Por favor marque uno sólo +DirectDebitOrderCreated=Orden de débito automático %s creada +AmountRequested=Monto solicitada +CreateForSepa=Crear archivo de débito automático +ICS=Identificador CI de acreedor +END_TO_END=Etiqueta "EndToEndId" SEPA XML: identificación única asignada por transacción +USTRD=Etiqueta "Unstructured" SEPA XML +ADDDAYS=Agregar días a la fecha de ejecución +InfoCreditSubject=Pago de la orden de pago por débito automático %s por parte del banco +InfoCreditMessage=La orden de pago por débito automático %s ha sido pagada por el banco
    Datos de pago: %s +InfoTransSubject=Transmisión de la orden de pago de débito directo %s al banco +InfoTransMessage=La órden de pago por débito automático %s ha sido enviado al banco por %s %s.

    +InfoTransData=Monto: %s
    Método: %s
    Fecha: %s +InfoRejectSubject=Orden de pago por débito automático rechazada +InfoRejectMessage=Hola,

    la orden de pago de débito automático de la factura %s relacionada con la empresa %s, con un monto de %s ha sido rechazada por el banco.

    --
    %s +ModeWarning=No se configuró la opción para el modo real, nos detendremos después de esta simulación diff --git a/htdocs/langs/es_AR/workflow.lang b/htdocs/langs/es_AR/workflow.lang new file mode 100644 index 00000000000..c5bed780ec6 --- /dev/null +++ b/htdocs/langs/es_AR/workflow.lang @@ -0,0 +1,15 @@ +# Dolibarr language file - Source file is en_US - workflow +WorkflowSetup=Configuración de módulo Workflow +WorkflowDesc=Este módulo provee algunas acciones automáticas. Por defecto, el Workflow está abierto (puedes hacer lo que quieras en la orden) pero aquí puedes activar algunas acciones automáticas. +ThereIsNoWorkflowToModify=Con los módulos activados, no hay modificaciones disponibles al workflow. +descWORKFLOW_PROPAL_AUTOCREATE_ORDER=Crear automáticamente una orden de venta luego que una propuesta comercial está firmada (la nueva orden tendrá el mismo monto de la propuesta). +descWORKFLOW_PROPAL_AUTOCREATE_INVOICE=Crear automáticamente una factura de cliente luego que una propuesta comercial está firmada (la nueva factura tendrá el mismo monto de la propuesta). +descWORKFLOW_CONTRACT_AUTOCREATE_INVOICE=Crear automáticamente una factura de cliente luego que un contrato esté validado +descWORKFLOW_ORDER_AUTOCREATE_INVOICE=Crear automáticamente una factura de cliente luego que una orden de venta está cerrada (la nueva factura tendrá el mismo monto que la orden) +descWORKFLOW_ORDER_CLASSIFY_BILLED_PROPAL=Clasificar su propuesta de origen como facturada cuando la orden de venta esté configurada como facturada (y si el monto del pedido es el mismo que el monto total de su propuesta firmada) +descWORKFLOW_INVOICE_CLASSIFY_BILLED_PROPAL=Clasificar su propuesta de origen como facturada cuando la factura de cliente esté validada (y el monto de la factura sea el mismo que el total de su propuesta firmada) +descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_ORDER=Clasificar su orden de venta como facturada cuando la factura de cliente esté validada (y el monto de la factura sea el mismo que el total de su orden) +descWORKFLOW_INVOICE_CLASSIFY_BILLED_ORDER=Clasificar su orden de venta como facturada cuando la factura del cliente esté marcada como "Pagada" (y el monto de la factura sea el mismo que el total de su orden) +descWORKFLOW_ORDER_CLASSIFY_SHIPPED_SHIPPING=Clasificar su orden de venta como enviada cuando el viaje esté validado (y la cantidad enviada en todos sus viajes sea la misma que en el pedido para actualizar) +descWORKFLOW_ORDER_CLASSIFY_BILLED_SUPPLIER_PROPOSAL=Clasificar su propuesta de origen de proveedor como facturada cuando la factura del proveedor esté validada (y que el monto de la factura sea el mismo que el total de su propuesta) +descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Clasificar su orden de compra como facturada cuando la factura de proveedor esté validada (y el monto de la factura sea el mismo que el total de su orden) diff --git a/htdocs/langs/es_AR/zapier.lang b/htdocs/langs/es_AR/zapier.lang new file mode 100644 index 00000000000..86ef12c8559 --- /dev/null +++ b/htdocs/langs/es_AR/zapier.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - zapier +ModuleZapierForDolibarrDesc =Módulo Zapier para Dolibarr +ZapierForDolibarrSetup =Configurar Zapier para Dolibarr diff --git a/htdocs/langs/es_BO/accountancy.lang b/htdocs/langs/es_BO/accountancy.lang new file mode 100644 index 00000000000..9827b9d3795 --- /dev/null +++ b/htdocs/langs/es_BO/accountancy.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - accountancy +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 diff --git a/htdocs/langs/es_BO/admin.lang b/htdocs/langs/es_BO/admin.lang new file mode 100644 index 00000000000..27c312f77d7 --- /dev/null +++ b/htdocs/langs/es_BO/admin.lang @@ -0,0 +1,5 @@ +# Dolibarr language file - Source file is en_US - admin +MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the maximum filesize for upload to %s %s, irrespective of the value of this parameter +Module56Name=Telephony +Module56Desc=Telephony integration +EmailCollectorLoadThirdPartyHelp=You can use this action to use the email content to find and load an existing thirdparty in your database. The found (or created) thirdparty will be used for following actions that need it. In the parameter field you can use for example 'EXTRACT:BODY:Name:\\s([^\\s]*)' if you want to extract the name of the thirdparty from a string 'Name: name to find' found into the body. diff --git a/htdocs/langs/es_BO/companies.lang b/htdocs/langs/es_BO/companies.lang new file mode 100644 index 00000000000..6897cf22f06 --- /dev/null +++ b/htdocs/langs/es_BO/companies.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - companies +Contact=Contact diff --git a/htdocs/langs/es_BO/modulebuilder.lang b/htdocs/langs/es_BO/modulebuilder.lang new file mode 100644 index 00000000000..8bbcc78a506 --- /dev/null +++ b/htdocs/langs/es_BO/modulebuilder.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - modulebuilder +ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: diff --git a/htdocs/langs/es_BO/projects.lang b/htdocs/langs/es_BO/projects.lang new file mode 100644 index 00000000000..7e42793b0e9 --- /dev/null +++ b/htdocs/langs/es_BO/projects.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - projects +CantRemoveProject=This project can't be removed as it is referenced by some other objects (invoice, orders or other). See referers tab. diff --git a/htdocs/langs/es_CL/admin.lang b/htdocs/langs/es_CL/admin.lang index 02bd9beb325..91fa2cf60a0 100644 --- a/htdocs/langs/es_CL/admin.lang +++ b/htdocs/langs/es_CL/admin.lang @@ -147,7 +147,6 @@ FeatureDisabledInDemo=Característica deshabilitada en demostración FeatureAvailableOnlyOnStable=Característica solo disponible en versiones estables oficiales BoxesDesc=Los widgets son componentes que muestran información que puede agregar para personalizar algunas páginas. Puede elegir entre mostrar el widget o no seleccionando la página de destino y haciendo clic en 'Activar', o haciendo clic en la papelera para deshabilitarla. OnlyActiveElementsAreShown=Solo se muestran los elementos de los módulos habilitados . -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. ModulesDeployDesc=Si los permisos en su sistema de archivos lo permiten, puede utilizar esta herramienta para implementar un módulo externo. El módulo será visible en la pestaña %s . ModulesMarketPlaces=Buscar aplicaciones / módulos externos ModulesDevelopYourModule=Desarrolla tu propia aplicación / módulos @@ -333,7 +332,6 @@ LinkToTest=Enlace de clic generado para el usuario %s(haga clic KeepEmptyToUseDefault=Manténgalo vacío para usar el valor predeterminado DefaultLink=Enlace predeterminado ValueOverwrittenByUserSetup=Advertencia, este valor puede ser sobrescrito por la configuración específica del usuario (cada usuario puede establecer su propia URL de clicktodial) -ExternalModule=Módulo externo: instalado en el directorio %s BarcodeInitForthird-parties=Inicio masivo de código de barras para terceros. BarcodeInitForProductsOrServices=Inicialización o reinicio masivo del código de barras para productos o servicios CurrentlyNWithoutBarCode=Actualmente, tiene %s registros en %s %s sin código de barras definido. @@ -701,7 +699,6 @@ DictionaryCompanyType=Tipos de terceros DictionaryCompanyJuridicalType=Entidades legales de terceros DictionaryProspectLevel=Potencial de prospecto DictionaryCanton=Estados / Provincias -DictionaryCivility=Título de civilidad DictionarySocialContributions=Tipos de impuestos sociales o fiscales. DictionaryVAT=Tipos de IVA o tasas de impuestos a las ventas DictionaryRevenueStamp=Cantidad de estampillas fiscales @@ -810,8 +807,6 @@ Delays_MAIN_DELAY_CHEQUES_TO_DEPOSIT=Depósito de cheques no hecho Delays_MAIN_DELAY_EXPENSEREPORTS=Informe de gastos para aprobar SetupDescription1=Antes de comenzar a utilizar Dolibarr, se deben definir algunos parámetros iniciales y habilitar / configurar los módulos. SetupDescription2=Las siguientes dos secciones son obligatorias (las dos primeras entradas en el menú de configuración): -SetupDescription3=%s -> %s
    Parámetros básicos utilizados para personalizar el comportamiento predeterminado de su aplicación (por ejemplo, para funciones relacionadas con el país). -SetupDescription4=%s -> %s
    Este software es un conjunto de muchos módulos / aplicaciones, todos más o menos independientes. Los módulos relevantes a sus necesidades deben estar habilitados y configurados. Los nuevos elementos / opciones se agregan a los menús con la activación de un módulo. SetupDescription5=Otras entradas del menú de configuración manejan parámetros opcionales. LogEvents=Eventos de auditoría de seguridad InfoDolibarr=Sobre Dolibarr @@ -825,7 +820,6 @@ ListOfSecurityEvents=Lista de eventos de seguridad de Dolibarr LogEventDesc=Habilitar el registro para eventos de seguridad específicos. Administradores el registro a través del menú %s - %s . Advertencia, esta característica puede generar una gran cantidad de datos en la base de datos. AreaForAdminOnly=Los parámetros de configuración solo pueden modificarse por usuarios administradores. SystemInfoDesc=La información del sistema es información técnica miscelánea que obtienes en modo solo lectura y visible solo para los administradores. -CompanyFundationDesc=Edite la información de la empresa / entidad. Click en el botón "%s" en el fondo de la página. AccountantDesc=Si tiene un contador / contador externo, puede editar aquí su información. AvailableModules=Aplicación / módulos disponibles ToActivateModule=Para activar los módulos, vaya al Área de configuración (Inicio-> Configuración-> Módulos). @@ -955,7 +949,6 @@ BillsPDFModules=Modelos de documentos de factura BillsPDFModulesAccordindToInvoiceType=Documentos de facturas de modelos según tipo de factura. PaymentsPDFModules=Modelos de documentos de pago ForceInvoiceDate=Forzar fecha de factura a fecha de validación -SuggestedPaymentModesIfNotDefinedInInvoice=Modo de pago sugerido en la factura por defecto si no está definido para la factura SuggestPaymentByRIBOnAccount=Sugerir pago por retiro en cuenta SuggestPaymentByChequeToAddress=Sugerir pago por cheque a FreeLegalTextOnInvoices=Texto libre en las facturas @@ -966,7 +959,6 @@ SupplierPaymentSetup=Configuración de pagos de proveedores PropalSetup=Configuración del módulo Cotizaciones ProposalsNumberingModules=Módulos de numeración de cotizaciones ProposalsPDFModules=Modelos de documentos de cotizaciones -SuggestedPaymentModesIfNotDefinedInProposal=Modo de pago sugerido en la propuesta por defecto si no está definido para la propuesta FreeLegalTextOnProposal=Texto libre en cotizaciones WatermarkOnDraftProposal=Marca de agua en cotizaciones borrador (en caso de estar vacío) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Preguntar por el destino de la cuenta bancaria @@ -1159,7 +1151,6 @@ BarcodeDescDATAMATRIX=Código de barras del tipo Datamatrix BarcodeDescQRCODE=Código de barras del tipo de código QR GenbarcodeLocation=Herramienta de línea de comandos de generación de código de barras (utilizada por el motor interno para algunos tipos de códigos de barras). Debe ser compatible con "genbarcode".
    Por ejemplo: / usr / local / bin / genbarcode BarCodeNumberManager=Administrador para definir automáticamente los números de código de barras -WithdrawalsSetup=Configuración del módulo de pagos de débito directo. ExternalRSSSetup=Configuración de importaciones de RSS externo NewRSS=Nueva fuente RSS RSSUrlExample=Una fuente RSS interesante @@ -1242,7 +1233,6 @@ ClickToDialUrlDesc=Se llama a Url cuando se hace clic en el picto de un teléfon ClickToDialDesc=Este módulo hace que los números de teléfono hagan clic enlaces Un clic en el icono hará que su teléfono llame al número. Esto se puede usar para llamar a un sistema de centro de llamadas de Dolibarr que puede llamar al número de teléfono en un sistema SIP, por ejemplo. ClickToDialUseTelLink=Use solo un enlace "tel:" en los números de teléfono ClickToDialUseTelLinkDesc=Use este método si sus usuarios tienen un softphone o una interfaz de software instalada en la misma computadora que el navegador y se le llama cuando hace clic en un enlace de su navegador que comienza con "tel:". Si necesita una solución de servidor completa (sin necesidad de instalación de software local), debe configurar esto en "No" y completar el siguiente campo. -CashDesk=Punto de venta CashDeskSetup=Configuración del módulo de punto de venta CashDeskThirdPartyForSell=Tercero genérico predeterminado para usar en ventas CashDeskBankAccountForSell=Cuenta predeterminada para usar para recibir pagos en efectivo @@ -1272,8 +1262,6 @@ BankOrderESDesc=Orden de exhibición en español ChequeReceiptsNumberingModule=Verifique el módulo de numeración de recibos MultiCompanySetup=Configuración de módulo multi-compañía SuppliersSetup=Configuración del módulo de proveedor -SuppliersCommandModel=Complete template of Purchase Order -SuppliersInvoiceModel=Complete template of Vendor Invoice SuppliersInvoiceNumberingModel=Facturas de proveedores de numeración de modelos. IfSetToYesDontForgetPermission=Si se establece en un valor no nulo, no olvide proporcionar permisos a grupos o usuarios permitidos para la segunda aprobación PathToGeoIPMaxmindCountryDataFile=Ruta al archivo que contiene Maxmind ip a la traducción del país.
    Ejemplos:
    /usr/local/share/GeoIP/GeoIP.dat
    /usr/share/GeoIP/GeoIP.dat
    /usr/share/GeoIP/GeoLite2-Country.mmdb diff --git a/htdocs/langs/es_CL/agenda.lang b/htdocs/langs/es_CL/agenda.lang index 65586d280fc..45d8af34b9d 100644 --- a/htdocs/langs/es_CL/agenda.lang +++ b/htdocs/langs/es_CL/agenda.lang @@ -60,7 +60,6 @@ InvoiceDeleted=Factura borrada HOLIDAY_CREATEInDolibarr=Solicitud de licencia %s creada HOLIDAY_MODIFYInDolibarr=Solicitud de licencia %s modificada HOLIDAY_APPROVEInDolibarr=Requerimiento de ausencia %s aprovada -HOLIDAY_VALIDATEDInDolibarr=Solicitud de licencia %s validada HOLIDAY_DELETEInDolibarr=Solicitud de licencia %s eliminada TICKET_MODIFYInDolibarr=Boleto %s modificado TICKET_ASSIGNEDInDolibarr=Boleto %s asignado diff --git a/htdocs/langs/es_CL/bills.lang b/htdocs/langs/es_CL/bills.lang index 002ed8b69e6..c3e43cf8438 100644 --- a/htdocs/langs/es_CL/bills.lang +++ b/htdocs/langs/es_CL/bills.lang @@ -43,8 +43,6 @@ CustomersInvoices=Facturas de clientes SupplierInvoice=Factura del proveedor SupplierBill=Factura del proveedor SupplierBills=facturas de proveedores -PaymentBack=Pago de vuelta -CustomerInvoicePaymentBack=Pago de vuelta paymentInInvoiceCurrency=en la moneda de las facturas DeletePayment=Eliminar pago ConfirmDeletePayment=¿Seguro que quieres eliminar este pago? @@ -162,18 +160,10 @@ NumberOfBillsByMonth=Nº de facturas al mes. AmountOfBills=Cantidad de facturas AmountOfBillsHT=Importe de las facturas (neto de impuestos) AmountOfBillsByMonthHT=Importe de facturas por mes (neto de impuestos) -ShowSocialContribution=Mostrar impuesto social / fiscal -ShowBill=Mostrar factura -ShowInvoice=Mostrar factura -ShowInvoiceReplace=Mostrar reemplazo de factura -ShowInvoiceAvoir=Mostrar nota de crédito -ShowInvoiceDeposit=Mostrar factura de pago -ShowInvoiceSituation=Mostrar factura de situación UseSituationInvoicesCreditNote=Permitir situación factura nota de crédito setPaymentConditionsShortRetainedWarranty=Establecer condiciones de pago de garantía retenidas setretainedwarranty=Establecer garantía retenida setretainedwarrantyDateLimit=Establecer límite de fecha de garantía retenida -ShowPayment=Mostrar pago AlreadyPaidBack=Ya pagado AlreadyPaidNoCreditNotesNoDeposits=Ya pagado (sin notas de crédito y anticipos) Abandoned=Abandonado @@ -383,11 +373,10 @@ ToMakePayment=Paga ToMakePaymentBack=Pagar ListOfYourUnpaidInvoices=Lista de facturas impagas NoteListOfYourUnpaidInvoices=Nota: Esta lista contiene solo facturas para terceros a los que está vinculado como representante de ventas. -RevenueStamp=Sello de ingresos YouMustCreateInvoiceFromThird=Esta opción solo está disponible cuando se crea una factura desde la pestaña "Cliente" de un tercero YouMustCreateInvoiceFromSupplierThird=Esta opción solo está disponible cuando se crea una factura desde la pestaña "Proveedor" de un tercero YouMustCreateStandardInvoiceFirstDesc=Primero debe crear una factura estándar y convertirla en "plantilla" para crear una nueva factura de plantilla -PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template (old implementation of Sponge template) +PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template PDFSpongeDescription=Factura PDF plantilla de esponja. Una plantilla de factura completa. PDFCrevetteDescription=Plantilla de factura en PDF Crevette. Una plantilla de factura completa para facturas de situación TerreNumRefModelDesc1=Número de devolución con formato %saaam-nnnn para facturas estándar y %saaam-nnnn para notas de crédito donde yy es año, mm es mes y nnnn es una secuencia sin interrupción y sin retorno a 0 diff --git a/htdocs/langs/es_CL/blockedlog.lang b/htdocs/langs/es_CL/blockedlog.lang new file mode 100644 index 00000000000..49d3348ac1a --- /dev/null +++ b/htdocs/langs/es_CL/blockedlog.lang @@ -0,0 +1,19 @@ +# Dolibarr language file - Source file is en_US - blockedlog +BlockedLogDesc=Este módulo rastrea algunos eventos en un registro inalterable (que no se puede modificar una vez registrado) en una cadena de bloques, en tiempo real. Este módulo proporciona compatibilidad con los requisitos de las leyes de algunos países (como Francia con la ley Finanzas 2016 - Norme NF525). +FingerprintsDesc=Esta es la herramienta para navegar o extraer los registros inalterables. Los registros inalterables se generan y archivan localmente en una tabla dedicada, en tiempo real cuando registra un evento de negocios. Puede usar esta herramienta para exportar este archivo y guardarlo en un soporte externo (algunos países, como Francia, le piden que lo haga todos los años). Tenga en cuenta que no hay ninguna función para eliminar este registro y que todos los cambios que se intentaron realizar directamente en este registro (por ejemplo, un pirata informático) se informarán con una huella digital no válida. Si realmente necesita purgar esta tabla porque usó su aplicación para una demostración / propósito de prueba y desea limpiar sus datos para comenzar su producción, puede pedir a su revendedor o integrador que reinicie su base de datos (se eliminarán todos sus datos). +OkCheckFingerprintValidity=El registro de registro archivado es válido. Los datos en esta línea no se modificaron y la entrada sigue a la anterior. +logPAYMENT_VARIOUS_CREATE=Pago (no asignado a una factura) creado +logPAYMENT_VARIOUS_MODIFY=Pago (no asignado a una factura) modificado +logPAYMENT_VARIOUS_DELETE=Pago (no asignado a una factura) supresión lógica. +logPAYMENT_ADD_TO_BANK=Pago agregado al banco +logBILL_UNPAYED=Factura del cliente fijada sin pagar +logBILL_VALIDATE=Factura del cliente validada +logBILL_SENTBYMAIL=Factura del cliente enviar por correo +logMEMBER_SUBSCRIPTION_DELETE=Suscripción de miembros de eliminación lógica +logCASHCONTROL_VALIDATE=Grabación de la cerca de efectivo +ListOfTrackedEvents=Lista de eventos rastreados +logDOC_PREVIEW=Vista previa de un documento validado para imprimir o descargar. +ImpossibleToReloadObject=Objeto original (escriba %s, id %s) no vinculado (consulte la columna 'Datos completos' para obtener datos guardados inalterables) +BlockedLogActivatedBecauseRequiredByYourCountryLegislation=El módulo de Registros inalterables se activó debido a la legislación de su país. La desactivación de este módulo puede invalidar cualquier transacción futura con respecto a la ley y el uso de software legal, ya que no pueden ser validados por una auditoría fiscal. +BlockedLogDisableNotAllowedForCountry=Lista de países donde el uso de este módulo es obligatorio (solo para evitar deshabilitar el módulo por error, si su país está en esta lista, no es posible deshabilitar el módulo sin editar primero esta lista. Tenga en cuenta también que habilitar / deshabilitar este módulo mantener una pista en el registro inalterable). +TooManyRecordToScanRestrictFilters=Demasiados registros para escanear / analizar. Por favor restringe la lista con filtros más restrictivos. diff --git a/htdocs/langs/es_CL/cashdesk.lang b/htdocs/langs/es_CL/cashdesk.lang new file mode 100644 index 00000000000..a7597878ea3 --- /dev/null +++ b/htdocs/langs/es_CL/cashdesk.lang @@ -0,0 +1,43 @@ +# Dolibarr language file - Source file is en_US - cashdesk +CashDeskMenu=Punto de venta +CashDesk=Punto de venta +CashDeskBankCB=Cuenta bancaria (tarjeta) +CashDeskBankCheque=Cuenta bancaria (cheque) +CashdeskShowServices=Venta de servicios +CashDeskOn=en +ShoppingCart=Carrito de compras +RestartSelling=Vuelve a vender +SellFinished=Venta completa +PrintTicket=Boleto impreso +ProductFound=producto encontrado +NoArticle=Sin artículo +TotalTicket=Boleto total +NoVAT=Sin IVA para esta venta +Change=Exceso recibido +BankToPay=Cuenta para el pago +ShowCompany=Mostrar compañía +ShowStock=Mostrar almacén +DeleteArticle=Haga clic para eliminar este artículo +FilterRefOrLabelOrBC=Búsqueda (Ref / Label) +UserNeedPermissionToEditStockToUsePos=Solicita disminuir el stock en la creación de facturas, por lo que el usuario que usa POS debe tener permiso para editar el stock. +DolibarrReceiptPrinter=Impresora de recibos Dolibarr +PointOfSale=Punto de venta +CloseBill=Cerrar bill +TakeposConnectorNecesary=Se requiere 'conector TakePOS' +OrderPrinters=Encargar impresoras +Receipt=Recibo +Header=Encabezamiento +Footer=Pie de página +TheoricalAmount=Cantidad teórica +RealAmount=Cantidad real +CashFenceDone=Cerca de efectivo hecha para el período. +NbOfInvoices=N° de facturas +OrderNotes=pedidos +CashDeskBankAccountFor=Cuenta predeterminada para usar para pagos en +EnableBarOrRestaurantFeatures=Habilitar características para bar o restaurante +ConfirmDeletionOfThisPOSSale=¿Confirma usted la eliminación de esta venta actual? +ConfirmDiscardOfThisPOSSale=¿Quieres descartar esta venta actual? +History=Historia +TerminalSelect=Seleccione el terminal que desea utilizar: +BasicPhoneLayout=Usar diseño básico para teléfonos. +DirectPaymentButton=Botón de pago directo en efectivo diff --git a/htdocs/langs/es_CL/categories.lang b/htdocs/langs/es_CL/categories.lang new file mode 100644 index 00000000000..1af6a813239 --- /dev/null +++ b/htdocs/langs/es_CL/categories.lang @@ -0,0 +1,76 @@ +# Dolibarr language file - Source file is en_US - categories +Rubrique=Etiqueta / Categoría +Rubriques=Etiquetas / Categorías +RubriquesTransactions=Etiquetas / Categorías de transacciones +categories=etiquetas / categorías +NoCategoryYet=No se creó ninguna etiqueta / categoría de este tipo +AddIn=Añadir +modify=modificar +CategoriesArea=Etiquetas / Categorías area +ProductsCategoriesArea=Productos / Servicios tags / categorías area +SuppliersCategoriesArea=Etiquetas de proveedores / área de categorías +CustomersCategoriesArea=Etiquetas de clientes / área de categorías +MembersCategoriesArea=Etiquetas de los miembros / área de categorías +ContactsCategoriesArea=Etiquetas de contactos / categorías +AccountsCategoriesArea=Etiquetas de cuentas / área de categorías +ProjectsCategoriesArea=Área de etiquetas / categorías de proyectos +UsersCategoriesArea=Etiquetas de usuarios / área de categorías +CatList=Lista de etiquetas / categorías +NewCategory=Nueva etiqueta / categoría +ModifCat=Modificar etiqueta / categoría +CatCreated=Etiqueta / categoría creada +CreateCat=Crear etiqueta / categoría +CreateThisCat=Crear esta etiqueta / categoría +NoSubCat=Sin subcategoría. +FoundCats=Etiquetas / categorías encontradas +ImpossibleAddCat=Imposible agregar la etiqueta / categoría %s +WasAddedSuccessfully=%s fue agregado correctamente. +ObjectAlreadyLinkedToCategory=El elemento ya está vinculado a esta etiqueta / categoría. +ProductIsInCategories=El producto / servicio está vinculado a las siguientes etiquetas / categorías +CompanyIsInCustomersCategories=Este tercero está vinculado a las siguientes etiquetas / categorías de clientes / prospectos +CompanyIsInSuppliersCategories=Este tercero está vinculado a las siguientes etiquetas / categorías de proveedores +MemberIsInCategories=Este miembro está vinculado a las siguientes etiquetas / categorías de miembros +ContactIsInCategories=Este contacto está vinculado a las siguientes etiquetas / categorías de contactos +ProductHasNoCategory=Este producto / servicio no está en ninguna etiqueta / categoría +CompanyHasNoCategory=Este tercero no está en ninguna etiqueta / categoría +MemberHasNoCategory=Este miembro no está en ninguna etiqueta / categoría +ContactHasNoCategory=Este contacto no está en ninguna etiqueta / categoría +ProjectHasNoCategory=Este proyecto no está en ninguna etiqueta / categoría +ClassifyInCategory=Agregar a etiqueta / categoría +NotCategorized=Sin etiqueta / categoría +CategoryExistsAtSameLevel=Esta categoría ya existe con esta ref +DeleteCategory=Eliminar etiqueta / categoría +ConfirmDeleteCategory=¿Seguro que quieres eliminar esta etiqueta / categoría? +NoCategoriesDefined=Sin etiqueta / categoría definida +SuppliersCategoryShort=Etiqueta / categoría de vendedores +CustomersCategoryShort=Etiqueta / categoría de clientes +ProductsCategoryShort=Etiqueta / categoría de productos +MembersCategoryShort=Etiqueta / categoría de miembros +SuppliersCategoriesShort=Etiquetas / categorías de proveedores +CustomersCategoriesShort=Tags/categorías de clientes +ProspectsCategoriesShort=Etiquetas / categorías de prospectos +CustomersProspectsCategoriesShort=Cust./Prosp. etiquetas / categorías +ProductsCategoriesShort=Etiquetas / categorías de productos +MembersCategoriesShort=Etiquetas / categorías de miembros +ContactCategoriesShort=tags/categorías de contactos +AccountsCategoriesShort=Etiquetas / categorías de cuentas +ProjectsCategoriesShort=Etiquetas / categorías de proyectos +UsersCategoriesShort=Etiquetas / categorías de usuarios +StockCategoriesShort=Etiquetas / categorías de almacén +CategId=ID de etiqueta / categoría +CatSupList=Lista de etiquetas / categorías de proveedores +CatCusList=Lista de etiquetas / categorías de clientes / prospectos +CatProdList=Lista de etiquetas / categorías de productos +CatMemberList=Lista de etiquetas / categorías de miembros +CatContactList=Lista de etiquetas / categorías de contacto +CatSupLinks=Enlaces entre proveedores y etiquetas / categorías +CatCusLinks=Enlaces entre clientes / prospectos y etiquetas / categorías +CatProdLinks=Enlaces entre productos / servicios y etiquetas / categorías +CatProJectLinks=Enlaces entre proyectos y etiquetas / categorías +ExtraFieldsCategories=Atributos complementarios +CategoriesSetup=Configuración de etiquetas / categorías +CategorieRecursiv=Enlace con la etiqueta / categoría principal automáticamente +AddProductServiceIntoCategory=Agregue el siguiente producto / servicio +ShowCategory=Mostrar etiqueta / categoría +ChooseCategory=Elegir la categoría +StocksCategoriesArea=Área de Categorías de Almacenes diff --git a/htdocs/langs/es_CL/compta.lang b/htdocs/langs/es_CL/compta.lang index 9fb429628b9..4a4fb6fe85e 100644 --- a/htdocs/langs/es_CL/compta.lang +++ b/htdocs/langs/es_CL/compta.lang @@ -134,9 +134,7 @@ SeeReportInInputOutputMode=Consulte %sanálisis de pagos%s para obtener un cálc SeeReportInDueDebtMode=Consulte %sanálisis de facturas %s para un cálculo basado en facturas registradas conocidas, incluso si aún no se contabilizaron en Libro mayor. SeeReportInBookkeepingMode=Consulte %sInforme de facturación%s para realizar un cálculo en Tabla Libro mayor contable RulesAmountWithTaxIncluded=- Las cantidades que se muestran son con todos los impuestos incluidos -RulesResultDue=- Incluye facturas pendientes, gastos, IVA, donaciones ya sean pagadas o no. También incluye salarios pagados.
    - Se basa en la fecha de validación de facturas e IVA y en la fecha de vencimiento de los gastos. Para los salarios definidos con el módulo Salario, se usa la fecha de valor del pago. RulesResultInOut=- Incluye los pagos reales realizados en facturas, gastos, IVA y salarios.
    - Se basa en las fechas de pago de las facturas, gastos, IVA y salarios. La fecha de donación para la donación. -RulesCADue=- Incluye las facturas debidas del cliente, ya sean pagadas o no.
    - Se basa en la fecha de validación de estas facturas.
    RulesCAIn=- Incluye todos los pagos efectivos de las facturas recibidas de los clientes.
    - Se basa en la fecha de pago de estas facturas.
    RulesCATotalSaleJournal=Incluye todas las líneas de crédito del diario Sale. RulesAmountOnInOutBookkeepingRecord=Incluye registro en su Libro mayor con cuentas de contabilidad que tiene el grupo "GASTOS" o "INGRESOS" diff --git a/htdocs/langs/es_CL/contracts.lang b/htdocs/langs/es_CL/contracts.lang new file mode 100644 index 00000000000..618102c3020 --- /dev/null +++ b/htdocs/langs/es_CL/contracts.lang @@ -0,0 +1,74 @@ +# Dolibarr language file - Source file is en_US - contracts +ContractsArea=Área de contratos +ListOfContracts=Lista de contratos +ContractCard=Tarjeta de contrato +ContractStatusNotRunning=No corras +ServiceStatusInitial=No corras +ServiceStatusRunning=Corriendo +ServiceStatusNotLate=Corriendo, no caducado +ServiceStatusNotLateShort=No caducado +ServiceStatusLate=Corriendo, expirado +ShowContractOfService=Mostrar contrato de servicio +ContractsAndLine=Contratos y línea de contratos +Closing=Clausura +MenuInactiveServices=Servicios no activos +MenuRunningServices=Servicios en uso +MenuExpiredServices=Servicios caducados +AddContract=Crear actividad +ConfirmDeleteAContract=¿Seguro que quieres eliminar este contrato y todos sus servicios? +ConfirmValidateContract=¿Estas seguro que deseas validar este contrato con el nombre de %s? +ConfirmActivateAllOnContract=Esto abrirá todos los servicios (aún no activos). ¿Estás seguro de que deseas abrir todos los servicios? +ConfirmCloseContract=Esto cerrará todos los servicios (activos o no). ¿Seguro que quieres cerrar este contrato? +ConfirmCloseService=¿Estas seguro que quieres cerrar este servicio con fecha %s? +ActivateService=Activar servicio +ConfirmActivateService=¿Estas seguro que quieres activar este servicio con fecha %s? +RefContract=Referencia del contrato +DateContract=Fecha del contrato +DateServiceActivate=Fecha de activación del servicio +ListOfServices=Lista de servicios +ListOfInactiveServices=Lista de servicios no activos +ListOfExpiredServices=Lista de servicios activos caducados +ListOfClosedServices=Lista de servicios cerrados +ListOfRunningServices=Lista de servicios en ejecución +NotActivatedServices=Servicios inactivos (entre los contratos validados) +BoardNotActivatedServices=Servicios para activar entre contratos validados +BoardNotActivatedServicesShort=Servicios para activar +ContractStartDate=Fecha de inicio +ContractEndDate=Fecha final +DateStartPlanned=Fecha de inicio planificada +DateStartPlannedShort=Fecha de inicio planificada +DateEndPlanned=Fecha de finalización planificada +DateEndPlannedShort=Fecha de finalización planificada +DateStartReal=Fecha de inicio real +DateStartRealShort=Fecha de inicio real +DateEndReal=Fecha de finalización real +DateEndRealShort=Fecha de finalización real +CloseService=Cerrar servicio +BoardRunningServices=Servicios en ejecución +BoardRunningServicesShort=Servicios en ejecución +BoardExpiredServicesShort=Servicios vencidos +DraftContracts=Borradores de contratos +CloseRefusedBecauseOneServiceActive=El contrato no se puede cerrar ya que hay al menos un servicio abierto en él +ActivateAllContracts=Activar todas las líneas de contrato +CloseAllContracts=Cierre todas las líneas de contrato +DeleteContractLine=Eliminar una línea de contrato +ConfirmDeleteContractLine=¿Estás seguro de que deseas eliminar esta línea de contrato? +MoveToAnotherContract=Mueva el servicio a otro contrato. +ConfirmMoveToAnotherContract=Escogí un nuevo contrato objetivo y confirmo que deseo transferir este servicio a este contrato. +ConfirmMoveToAnotherContractQuestion=Elija en qué contrato existente (del mismo tercero), desea mover este servicio? +PaymentRenewContractId=Renovar la línea del contrato (número %s) +ExpiredSince=Fecha de caducidad +NoExpiredServices=Sin servicios activos caducados +ListOfServicesToExpireWithDuration=Lista de servicios caducará en %s días +ListOfServicesToExpireWithDurationNeg=Lista de servicios caducados desde más de %s días +ListOfServicesToExpire=Lista de servicios para vencer +NoteListOfYourExpiredServices=Esta lista contiene solo servicios de contratos para terceros a los que está vinculado como representante de ventas. +StandardContractsTemplate=Plantilla de contratos estándar +OnlyLinesWithTypeServiceAreUsed=Solo se clonarán las líneas con el tipo "Servicio". +ConfirmCloneContract=¿Está seguro que quiere clonar el contrato %s? +LowerDateEndPlannedShort=Fecha de finalización planificada más baja de los servicios activos +TypeContact_contrat_internal_SALESREPSIGN=Representante de ventas firmando contrato +TypeContact_contrat_internal_SALESREPFOLL=Contrato de seguimiento del representante de ventas +TypeContact_contrat_external_BILLING=Contacto de cliente de facturación +TypeContact_contrat_external_CUSTOMER=Seguimiento de contacto con el cliente +TypeContact_contrat_external_SALESREPSIGN=Firma del contrato de contacto con el cliente diff --git a/htdocs/langs/es_CL/cron.lang b/htdocs/langs/es_CL/cron.lang new file mode 100644 index 00000000000..2e5a82e0aca --- /dev/null +++ b/htdocs/langs/es_CL/cron.lang @@ -0,0 +1,63 @@ +# Dolibarr language file - Source file is en_US - cron +Permission23101 =Leer trabajo programado +Permission23102 =Crear / actualizar trabajo programado +Permission23103 =Eliminar trabajo programado +Permission23104 =Ejecutar trabajo programado +CronSetup=Configuración programada de gestión de trabajos +URLToLaunchCronJobs=URL para verificar e iniciar trabajos cron calificados +OrToLaunchASpecificJob=O para verificar e iniciar un trabajo específico +KeyForCronAccess=Clave de seguridad para URL para iniciar trabajos cron +FileToLaunchCronJobs=Línea de comando para verificar e iniciar trabajos cron calificados +CronExplainHowToRunUnix=En el entorno Unix, debe usar la siguiente entrada crontab para ejecutar la línea de comando cada 5 minutos +CronExplainHowToRunWin=En el entorno de Microsoft (tm) Windows, puede usar las herramientas de tareas programadas para ejecutar la línea de comandos cada 5 minutos +CronJobDefDesc=Los perfiles de trabajo cron están definidos en el archivo descriptor del módulo. Cuando el módulo está activado, están cargados y disponibles para que pueda administrar los trabajos desde el menú de herramientas de administrador %s. +CronJobProfiles=Lista de perfiles de trabajo cron predefinidos +EnabledAndDisabled=Habilitado e inhabilitado +CronLastOutput=Salida más reciente +CronLastResult=Código de resultado más reciente +CronCommand=Mando +CronList=Trabajos programados +CronDelete=Eliminar trabajos programados +CronConfirmDelete=¿Seguro que quieres eliminar estos trabajos programados? +CronExecute=Lanzar trabajo programado +CronConfirmExecute=¿Estás seguro de que deseas ejecutar estos trabajos programados ahora? +CronInfo=El módulo de trabajo programado permite programar trabajos para ejecutarlos automáticamente. Los trabajos también se pueden iniciar manualmente. +CronTask=Trabajo +CronDtStart=No antes +CronDtNextLaunch=Siguiente ejecución +CronDtLastResult=Fecha de finalización de la última ejecución +CronMethod=Método +CronModule=Módulo +CronNoJobs=No hay trabajos registrados +CronNbRun=Número de lanzamientos +CronMaxRun=Número máximo de lanzamientos +CronEach=Cada +JobFinished=Trabajo lanzado y terminado +CronAdd=Agregar trabajos +CronEvery=Ejecutar el trabajo cada +CronObject=Instancia / Objeto para crear +CronArgs=Parámetros +CronSaveSucess=Guardado exitosamente +CronFieldMandatory=Fields %s es obligatorio +CronErrEndDateStartDt=La fecha de finalización no puede ser anterior a la fecha de inicio +CronStatusActiveBtn=Habilitar +CronStatusInactiveBtn=Inhabilitar +CronTaskInactive=Este trabajo está deshabilitado +CronId=Carné de identidad +CronModuleHelp=Nombre del directorio del módulo Dolibarr (también funciona con un módulo externo Dolibarr).
    Por ejemplo, para llamar al método fetch de Dolibarr Product object / htdocs / product /class/product.class.php, el valor para el módulo es
    producto +CronClassFileHelp=La ruta relativa y el nombre del archivo a cargar (la ruta es relativa al directorio raíz del servidor web).
    Por ejemplo, para llamar al método fetch del objeto del producto Dolibarr htdocs / product / class / product.class.php , el valor para el nombre del archivo de clase es
    producto / clase / producto.clase.php +CronObjectHelp=El nombre del objeto a cargar.
    Por ejemplo, para llamar al método fetch del objeto del producto Dolibarr /htdocs/product/class/product.class.php, el valor para el nombre del archivo de clase es
    Producto +CronMethodHelp=El método objeto para lanzar.
    Por ejemplo, para llamar al método fetch del objeto del producto Dolibarr /htdocs/product/class/product.class.php, el valor para method es
    ha podido recuperar +CronArgsHelp=Los argumentos del método.
    Por ejemplo, para llamar al método fetch del objeto del producto Dolibarr /htdocs/product/class/product.class.php, el valor para los parámetros puede ser
    0, ProductRef +CronCommandHelp=La línea de comando del sistema para ejecutar. +CronCreateJob=Crear nuevo trabajo programado +CronType=Tipo de empleo +CronType_method=Método de llamada de una clase de PHP +CronType_command=Comando de shell +CronCannotLoadClass=No se puede cargar el archivo de clase %s (para usar la clase %s) +CronCannotLoadObject=Se cargó el archivo de clase %s, pero no se encontró el objeto %s en él +UseMenuModuleToolsToAddCronJobs=Vaya al menú "Inicio - Herramientas de administración - Trabajos programados" para ver y editar trabajos programados. +JobDisabled=Trabajo deshabilitado +MakeLocalDatabaseDumpShort=Copia de seguridad local +MakeLocalDatabaseDump=Crear un volcado de base de datos local. Los parámetros son: compresión ('gz' o 'bz' o 'ninguno'), tipo de copia de seguridad ('mysql', 'pgsql', 'auto'), 1, 'auto' o nombre de archivo para compilar, número de archivos de copia de seguridad para mantener +WarningCronDelayed=Atención, para fines de rendimiento, cualquiera que sea la próxima fecha de ejecución de trabajos habilitados, sus trabajos pueden demorarse hasta un máximo de %s horas, antes de ejecutarse. diff --git a/htdocs/langs/es_CL/deliveries.lang b/htdocs/langs/es_CL/deliveries.lang new file mode 100644 index 00000000000..a0426d8f4b9 --- /dev/null +++ b/htdocs/langs/es_CL/deliveries.lang @@ -0,0 +1,24 @@ +# Dolibarr language file - Source file is en_US - deliveries +Delivery=Entrega +DeliveryRef=Entrega de Ref +DeliveryCard=Tarjeta de recibo +DeliveryOrder=Recibo de entrega +CreateDeliveryOrder=Generar recibo de entrega +SetDeliveryDate=Establecer fecha de envío +ValidateDeliveryReceipt=Validar recibo de entrega +ValidateDeliveryReceiptConfirm=¿Seguro que quieres validar este recibo de entrega? +DeleteDeliveryReceipt=Eliminar recibo de entrega +DeleteDeliveryReceiptConfirm=¿Estás seguro de que deseas eliminar el recibo de entrega %s? +DeliveryMethod=Método de entrega +TrackingNumber=El número de rastreo +DeliveryNotValidated=Entrega no validada +StatusDeliveryCanceled=Cancelado +NameAndSignature=Nombre y firma: +ToAndDate=A___________________________________ el ____ / _____ / __________ +GoodStatusDeclaration=Han recibido los productos anteriores en buenas condiciones, +Deliverer=Entregador: +Sender=Remitente +Recipient=Recipiente +NonShippable=No se puede enviar +ShowReceiving=Mostrar recibo de entrega +NonExistentOrder=Orden inexistente diff --git a/htdocs/langs/es_CL/dict.lang b/htdocs/langs/es_CL/dict.lang new file mode 100644 index 00000000000..89abf19299b --- /dev/null +++ b/htdocs/langs/es_CL/dict.lang @@ -0,0 +1,78 @@ +# Dolibarr language file - Source file is en_US - dict +CountryTG=Ir +CountryCI=Costa de Ivoiry +CountryBH=Bahrein +CountryBY=Belarús +CountryBM=islas Bermudas +CountryBT=Bhután +CountryBA=Bosnia y Herzegovina +CountryCX=Isla de Navidad +CountryCD=Congo, República Democrática del +CountryFO=Islas Faroe +CountryGF=Guayana Francesa +CountryPF=Polinesia francés +CountryTF=Territorios Franceses del Sur +CountryGL=Tierra Verde +CountryGY=Guayana +CountryHM=Heard Island y McDonald +CountryVA=Santa Sede (Estado de la Ciudad del Vaticano) +CountryIR=Corrí +CountryIQ=Irak +CountryJO=Jordán +CountryLY=libio +CountryMK=Macedonia, la ex Yugoslavia de +CountryMX=Méjico +CountryPS=Territorio Palestino, Ocupado +CountryPG=Papúa Nueva Guinea +CountryQA=Katar +CountrySH=Santa Helena +CountryZA=Sudáfrica +CountryGS=Georgia del sur y las islas Sandwich del sur +CountrySJ=Svalbard y Jan Mayen +CountrySZ=Swazilandia +CountrySY=Sirio +CountryUM=Islas menores alejadas de los Estados Unidos +CountryVI=Islas Vírgenes, EE. UU. +CountryEH=Sahara Occidental +CountryBL=San Bartolomé +CountryMF=San Martín +CivilityMME=Sra. +CivilityMR=Sr. +CivilityMLE=Sra. +CurrencyAUD=Dólares AU +CurrencySingAUD=Dólar AU +CurrencyCAD=CAN dólares +CurrencySingCAD=Dólar CAN +CurrencyGBP=GB libras +CurrencySingGBP=GB Libra +CurrencyMUR=Rupias de Mauricio +CurrencySingMUR=Rupia de Mauricio +CurrencyNOK=Krones noruegos +CurrencyUSD=Dolares estadounidenses +CurrencySingUSD=Dólar estadounidense +CurrencyXPF=CFP francos +CurrencySingXPF=CFP Franco +CurrencyCentEUR=centavos +CurrencyCentSingEUR=centavo +CurrencyCentINR=Paisa +CurrencyCentSingINR=Paise +DemandReasonTypeSRC_CAMP_MAIL=Campaña de correo +DemandReasonTypeSRC_CAMP_EMAIL=Campaña de correo electrónico +DemandReasonTypeSRC_CAMP_FAX=Campaña de fax +DemandReasonTypeSRC_SHOP=Comprar contacto +DemandReasonTypeSRC_PARTNER=Compañero +DemandReasonTypeSRC_SPONSORING=Patrocinio +PaperFormatUSLETTER=Letra de formato US +PaperFormatUSLEGAL=Formato Legal US +PaperFormatUSEXECUTIVE=Formato Ejecutivo US +PaperFormatUSLEDGER=Formato Ledger / Tabloid +PaperFormatCAP1=Formato P1 Canadá +PaperFormatCAP2=Formato P2 Canadá +PaperFormatCAP3=Formato P3 Canadá +PaperFormatCAP4=Formato P4 Canadá +PaperFormatCAP5=Formato P5 Canadá +PaperFormatCAP6=Formato P6 Canadá +ExpCyclo=Capacidad más baja a 50cm3 +ExpMoto12CV=Moto 1 o 2 CV +ExpMoto345CV=Moto 3, 4 o 5 CV +ExpMoto5PCV=Moto de 5 CV y ​​más diff --git a/htdocs/langs/es_CL/errors.lang b/htdocs/langs/es_CL/errors.lang new file mode 100644 index 00000000000..58aca3bb9e9 --- /dev/null +++ b/htdocs/langs/es_CL/errors.lang @@ -0,0 +1,214 @@ +# Dolibarr language file - Source file is en_US - errors +NoErrorCommitIsDone=Sin error, nos comprometemos +ErrorButCommitIsDone=Errores encontrados pero validamos a pesar de esto +ErrorBadEMail=Correo electrónico %s es incorrecto +ErrorBadUrl=Url %s está mal +ErrorBadValueForParamNotAString=Mal valor para su parámetro En general, se agrega cuando falta la traducción. +ErrorLoginAlreadyExists=Login %s ya existe. +ErrorRecordNotFound=Registro no encontrado. +ErrorFailToCopyFile=Fallo al copiar el archivo '%s' en '%s'. +ErrorFailToCopyDir=Error al copiar el directorio '%s' en '%s'. +ErrorFailToRenameFile=Falló al renombrar el archivo '%s' en '%s'. +ErrorFailToDeleteFile=Falló al eliminar el archivo '%s'. +ErrorFailToCreateFile=Falló al crear el archivo '%s'. +ErrorFailToRenameDir=Falló al renombrar el directorio '%s' a '%s'. +ErrorFailToCreateDir=Falló al crear el directorio '%s'. +ErrorFailToDeleteDir=Falló al borrar el directorio '%s'. +ErrorFailToMakeReplacementInto=Falló al reemplazar el archivo '%s'. +ErrorFailToGenerateFile=Falló al generar el archivo '%s'. +ErrorCashAccountAcceptsOnlyCashMoney=Esta cuenta bancaria es una cuenta de efectivo, por lo que solo acepta pagos de tipo efectivo. +ErrorFromToAccountsMustDiffers=Las cuentas bancarias de origen y destino deben ser diferentes. +ErrorBadThirdPartyName=Mal valor para el nombre de terceros +ErrorBadCustomerCodeSyntax=Mala sintaxis para el código de cliente +ErrorBadBarCodeSyntax=Mala sintaxis para el código de barras. Puede ser que establezca un tipo de código de barras incorrecto o que haya definido una máscara de código de barras para la numeración que no coincida con el valor escaneado. +ErrorCustomerCodeRequired=Código de cliente requerido +ErrorCustomerCodeAlreadyUsed=Código de cliente ya usado +ErrorBarCodeAlreadyUsed=Código de barras ya utilizado +ErrorPrefixRequired=Prefijo requerido +ErrorBadSupplierCodeSyntax=Mala sintaxis para el código de proveedor +ErrorSupplierCodeRequired=Se requiere código de proveedor +ErrorBadParameters=Malos parámetros +ErrorBadValueForParameter=Valor incorrecto '%s' para el parámetro '%s' +ErrorBadImageFormat=El archivo de imagen no tiene un formato compatible (Su PHP no admite funciones para convertir imágenes de este formato) +ErrorBadDateFormat=El valor '%s' tiene formato de fecha incorrecto +ErrorFailedToWriteInDir=Error al escribir en el directorio %s +ErrorFoundBadEmailInFile=Se encontró una sintaxis de correo electrónico incorrecta para %s líneas en el archivo (línea de ejemplo %s con correo electrónico = %s) +ErrorUserCannotBeDelete=El usuario no puede ser eliminado. Tal vez esté asociado a entidades dolibarr. +ErrorFieldsRequired=Algunos campos requeridos no fueron completados. +ErrorSubjectIsRequired=El tema del correo electrónico es obligatorio +ErrorFailedToCreateDir=Error al crear un directorio. Compruebe que el usuario del servidor web tenga permisos para escribir en el directorio de documentos de Dolibarr. Si el parámetro safe_mode está habilitado en este PHP, verifique que los archivos php de Dolibarr sean propiedad del usuario (o grupo) del servidor web. +ErrorNoMailDefinedForThisUser=Sin correo definido para este usuario +ErrorFeatureNeedJavascript=Esta característica necesita javascript para activarse para funcionar. Cambie esto en la configuración - visualización. +ErrorTopMenuMustHaveAParentWithId0=Un menú de tipo 'Superior' no puede tener un menú principal. Pon 0 en el menú principal o elige un menú de tipo 'Izquierda'. +ErrorLeftMenuMustHaveAParentId=Un menú de tipo 'Izquierda' debe tener una identificación principal. +ErrorFileNotFound=Archivo %s no encontrado (Ruta incorrecta, permisos incorrectos o acceso denegado por PHP open_basedir o el parámetro safe_mode) +ErrorDirNotFound=Directorio %s no encontrado (ruta incorrecta, permisos incorrectos o acceso denegado por PHP open_basedir o parámetro safe_mode) +ErrorFunctionNotAvailableInPHP=La función %s es necesaria para esta función, pero no está disponible en esta versión/configuración de PHP. +ErrorDirAlreadyExists=Ya existe un directorio con este nombre. +ErrorPartialFile=Archivo no recibido por completo por el servidor. +ErrorNoTmpDir=La directiva temporal %s no existe. +ErrorUploadBlockedByAddon=Carga bloqueada por un plugin PHP / Apache. +ErrorFileSizeTooLarge=El tamaño del archivo es demasiado grande. +ErrorSizeTooLongForIntType=Tamaño demasiado largo para el tipo int (%s dígitos máximo) +ErrorSizeTooLongForVarcharType=Tamaño demasiado largo para el tipo de cadena (%s caracteres máximo) +ErrorNoValueForSelectType=Por favor complete el valor para la lista de selección +ErrorNoValueForCheckBoxType=Por favor complete el valor para la lista de casillas de verificación +ErrorNoValueForRadioType=Por favor complete el valor para la lista de radio +ErrorBadFormatValueList=El valor de la lista no puede tener más de una coma: %s, pero necesita al menos una: clave, valor +ErrorFieldCanNotContainSpecialCharacters=El campo %s no debe contener caracteres especiales. +ErrorFieldCanNotContainSpecialNorUpperCharacters=El campo %s no debe contener caracteres especiales, ni mayúsculas, y no puede contener solo números. +ErrorFieldMustHaveXChar=El campo %s debe tener al menos %s caracteres. +ErrorNoAccountancyModuleLoaded=Sin módulo de contabilidad activado +ErrorExportDuplicateProfil=Este nombre de perfil ya existe para este conjunto de exportación. +ErrorLDAPSetupNotComplete=La coincidencia Dolibarr-LDAP no está completa. +ErrorLDAPMakeManualTest=Se ha generado un archivo .ldif en el directorio %s. Intente cargarlo manualmente desde la línea de comando para tener más información sobre los errores. +ErrorCantSaveADoneUserWithZeroPercentage=No se puede guardar una acción con "estado no iniciado" si el campo "hecho por" también se llena. +ErrorRefAlreadyExists=La referencia utilizada para la creación ya existe. +ErrorPleaseTypeBankTransactionReportName=Ingrese el nombre del extracto bancario donde se debe informar la entrada (Formato AAAAMM o AAAAMMDD) +ErrorRecordHasChildren=Error al eliminar el registro ya que tiene algunos registros secundarios. +ErrorRecordIsUsedCantDelete=No se puede borrar el registro. Ya está usado o incluido en otro objeto. +ErrorModuleRequireJavascript=Javascript no debe deshabilitarse para que esta característica funcione. Para activar / desactivar Javascript, vaya al menú Inicio-> Configuración-> Pantalla. +ErrorPasswordsMustMatch=Ambas contraseñas mecanografiadas deben coincidir +ErrorContactEMail=Se produjo un error técnico. Comuníquese con el administrador para seguir el correo electrónico %s y proporcione el código de error %s en su mensaje, o agregue una copia de pantalla de esta página. +ErrorWrongValueForField=Campo %s : ' %s ' no coincide con la regla de expresión regular %s +ErrorFieldValueNotIn=El campo %s : ' %s ' no es un valor encontrado en el campo %s de %s +ErrorFieldRefNotIn=Campo %s : ' %s ' no es una referencia %s existente +ErrorsOnXLines=Se encontraron errores %s +ErrorFileIsInfectedWithAVirus=El programa antivirus no pudo validar el archivo (el archivo podría estar infectado por un virus) +ErrorSpecialCharNotAllowedForField=Los caracteres especiales no están permitidos para el campo "%s" +ErrorNumRefModel=Existe una referencia en la base de datos (%s) y no es compatible con esta regla de numeración. Elimine la referencia de registro o renombrada para activar este módulo. +ErrorQtyTooLowForThisSupplier=Cantidad demasiado baja para este proveedor o ningún precio definido en este producto para este proveedor +ErrorOrdersNotCreatedQtyTooLow=Algunos pedidos no se han creado debido a cantidades demasiado bajas +ErrorModuleSetupNotComplete=La configuración del módulo %s parece estar incompleta. Vaya a Inicio - Configuración - Módulos para completar. +ErrorBadMaskFailedToLocatePosOfSequence=Error, máscara sin número de secuencia +ErrorBadMaskBadRazMonth=Error, mal valor de reinicio +ErrorCounterMustHaveMoreThan3Digits=El contador debe tener más de 3 dígitos +ErrorDeleteNotPossibleLineIsConsolidated=La eliminación no es posible porque el registro está vinculado a una transacción bancaria conciliada +ErrorProdIdAlreadyExist=%s está asignado a otro tercio +ErrorFailedToSendPassword=Error al enviar la contraseña +ErrorFailedToLoadRSSFile=No puede obtener la fuente RSS. Intente agregar constante MAIN_SIMPLEXMLLOAD_DEBUG si los mensajes de error no proporcionan suficiente información. +ErrorForbidden=Acceso denegado.
    Intenta acceder a una página, área o función de un módulo deshabilitado o sin estar en una sesión autenticada o que no está permitido para su usuario. +ErrorForbidden2=El administrador de Dolibarr puede definir el permiso para este inicio de sesión desde el menú %s->%s. +ErrorForbidden3=Parece que Dolibarr no se usa a través de una sesión autenticada. Eche un vistazo a la documentación de configuración de Dolibarr para saber cómo administrar las autenticaciones (htaccess, mod_auth u otras ...). +ErrorNoImagickReadimage=La clase Imagick no se encuentra en este PHP. No hay vista previa disponible. Los administradores pueden desactivar esta pestaña desde el menú Configuración - Pantalla. +ErrorRecordAlreadyExists=El registro ya existe +ErrorCantReadFile=Error al leer el archivo '%s' +ErrorCantReadDir=Error al leer el directorio '%s' +ErrorBadLoginPassword=Mal valor para el inicio de sesión o la contraseña +ErrorLoginDisabled=Su cuenta ha sido deshabilitada +ErrorFailedToRunExternalCommand=Error al ejecutar el comando externo. Verifique que esté disponible y ejecutable por su servidor PHP. Si PHP Safe Mode está habilitado, verifique que el comando esté dentro de un directorio definido por el parámetro safe_mode_exec_dir . +ErrorFailedToChangePassword=Error al cambiar la contraseña +ErrorLoginDoesNotExists=Usuario con inicio de sesión %s no se pudo encontrar. +ErrorLoginHasNoEmail=Este usuario no tiene una dirección de correo electrónico. Proceso abortado +ErrorBadValueForCode=Mal valor para el código de seguridad. Inténtalo de nuevo con un nuevo valor ... +ErrorQtyForCustomerInvoiceCantBeNegative=La cantidad para la línea en las facturas del cliente no puede ser negativa +ErrorWebServerUserHasNotPermission=La cuenta de usuario %s utilizada para ejecutar el servidor web no tiene permiso para eso +ErrorNoActivatedBarcode=Ningún tipo de código de barras activado +ErrUnzipFails=Error al descomprimir %s con ZipArchive +ErrNoZipEngine=No hay motor para comprimir / descomprimir el archivo %s en este PHP +ErrorFileMustBeADolibarrPackage=El archivo %s debe ser un paquete zip de Dolibarr +ErrorModuleFileRequired=Debe seleccionar un archivo de paquete de módulo de Dolibarr +ErrorPhpCurlNotInstalled=PHP CURL no está instalado, esto es esencial para hablar con Paypal +ErrorFailedToAddToMailmanList=Error al agregar el registro %s a la lista de correo %s o la base SPIP +ErrorFailedToRemoveToMailmanList=Error al eliminar el registro %s de la lista de correo %s o la base SPIP +ErrorNewValueCantMatchOldValue=El nuevo valor no puede ser igual al anterior +ErrorFailedToValidatePasswordReset=Error al reiniciar la contraseña Puede ser que el reinicio ya haya sido hecho (este enlace puede usarse solo una vez). Si no, intente reiniciar el proceso de reinicio. +ErrorToConnectToMysqlCheckInstance=La conexión a la base de datos falla. Comprobar el servidor de la base de datos se está ejecutando (por ejemplo, con mysql / mariadb, puede ejecutarlo desde la línea de comandos con 'sudo service mysql start'). +ErrorFailedToAddContact=Error al agregar contacto +ErrorDateMustBeBeforeToday=La fecha no puede ser mayor que hoy +ErrorPaymentModeDefinedToWithoutSetup=Se configuró un modo de pago para que escriba %s pero la configuración de la Factura del módulo no se completó para definir la información que se mostrará para este modo de pago. +ErrorPHPNeedModule=Error, su PHP debe tener el módulo %s instalado para usar esta característica. +ErrorOpenIDSetupNotComplete=Configura el archivo de configuración de Dolibarr para permitir la autenticación de OpenID, pero la URL del servicio OpenID no está definida en la constante %s +ErrorWarehouseMustDiffers=Los almacenes de origen y destino deben diferir +ErrorBadFormat=Mal formato! +ErrorMemberNotLinkedToAThirpartyLinkOrCreateFirst=Error, este miembro aún no está vinculado a ningún tercero. Vincular miembro a un tercero existente o crear un tercero nuevo antes de crear una suscripción con factura. +ErrorThereIsSomeDeliveries=Error, hay algunas entregas vinculadas a este envío. Supresión rechazada. +ErrorCantDeletePaymentReconciliated=No se puede eliminar un pago que generó una entrada bancaria reconciliada +ErrorCantDeletePaymentSharedWithPayedInvoice=No se puede eliminar un pago compartido por al menos una factura con estado Pagado +ErrorPriceExpression3=Variable no definida '%s' en definición de función +ErrorPriceExpression4=Carácter ilegal '%s' +ErrorPriceExpression5=Inesperado '%s' +ErrorPriceExpression6=Número incorrecto de argumentos (%s dado, %s esperado) +ErrorPriceExpression8=Operador inesperado '%s' +ErrorPriceExpression9=Se produjo un error inesperado +ErrorPriceExpression10=El operador '%s' carece de operando +ErrorPriceExpression11=Esperando '%s' +ErrorPriceExpression17=Variable no definida '%s' +ErrorPriceExpression21=Resultado vacío '%s' +ErrorPriceExpression22=Resultado negativo '%s' +ErrorSrcAndTargetWarehouseMustDiffers=Los almacenes de origen y destino deben diferir +ErrorTryToMakeMoveOnProductRequiringBatchData=Error al tratar de realizar un movimiento de stock sin información de lote / serie, en el producto '%s' que requiere información de lote / serie +ErrorCantSetReceptionToTotalDoneWithReceptionToApprove=Todas las recepciones grabadas primero deben verificarse (aprobarse o denegarse) antes de que se les permita realizar esta acción. +ErrorCantSetReceptionToTotalDoneWithReceptionDenied=Todas las recepciones grabadas primero deben verificarse (aprobarse) antes de que se les permita realizar esta acción. +ErrorGlobalVariableUpdater0=La solicitud HTTP falló con el error '%s' +ErrorGlobalVariableUpdater1=Formato JSON no válido '%s' +ErrorGlobalVariableUpdater3=Los datos solicitados no se encontraron en el resultado +ErrorGlobalVariableUpdater5=No se seleccionó ninguna variable global +ErrorFieldMustBeANumeric=El campo %s debe ser un valor numérico +ErrorMandatoryParametersNotProvided=Parámetros obligatorios no proporcionados +ErrorOppStatusRequiredIfAmount=Usted establece una cantidad estimada para este plomo. Así que también debes ingresar su estado. +ErrorFailedToLoadModuleDescriptorForXXX=Error al cargar la clase de descriptor de módulo para %s +ErrorBadDefinitionOfMenuArrayInModuleDescriptor=Mala definición de la matriz de menús en el descriptor del módulo (valor incorrecto para la tecla fk_menu) +ErrorSavingChanges=Se ha producido un error al guardar los cambios. +ErrorWarehouseRequiredIntoShipmentLine=Se requiere un almacén en la línea para enviar +ErrorSupplierCountryIsNotDefined=El país para este vendedor no está definido. Corrija esto primero. +ErrorsThirdpartyMerge=Error al fusionar los dos registros. Solicitud cancelada +ErrorStockIsNotEnoughToAddProductOnOrder=Stock no es suficiente para que el producto %s lo agregue a un nuevo pedido. +ErrorStockIsNotEnoughToAddProductOnInvoice=Stock no es suficiente para que el producto %s lo agregue a una nueva factura. +ErrorStockIsNotEnoughToAddProductOnShipment=Stock no es suficiente para que el producto %s lo agregue a un nuevo envío. +ErrorStockIsNotEnoughToAddProductOnProposal=Stock no es suficiente para que el producto %s lo agregue a una nueva propuesta. +ErrorFailedToLoadLoginFileForMode=Error al obtener la clave de inicio de sesión para el modo '%s'. +ErrorModuleNotFound=Archivo del módulo no fue encontrado. +ErrorFieldAccountNotDefinedForBankLine=Valor para la cuenta de contabilidad no definida para el ID de línea de origen %s (%s) +ErrorFieldAccountNotDefinedForInvoiceLine=Valor para la cuenta de contabilidad no definida para el ID de factura %s (%s) +ErrorFieldAccountNotDefinedForLine=Valor para la cuenta de contabilidad no definida para la línea (%s) +ErrorBankStatementNameMustFollowRegex=Error, el nombre del extracto bancario debe seguir la siguiente regla de sintaxis %s +ErrorPhpMailDelivery=Verifique que no use una cantidad demasiado alta de destinatarios y que el contenido de su correo electrónico no sea similar al de un correo no deseado. Pídale también a su administrador que verifique los archivos de registro del cortafuegos y del servidor para obtener una información más completa. +ErrorUserNotAssignedToTask=El usuario debe ser asignado a la tarea para poder ingresar el tiempo consumido. +ErrorModuleFileSeemsToHaveAWrongFormat=El paquete del módulo parece tener un formato incorrecto. +ErrorFilenameDosNotMatchDolibarrPackageRules=El nombre del paquete de módulo (%s) no coincide con la sintaxis del nombre esperado: %s +ErrorDuplicateTrigger=Error, nombre de disparador duplicado %s. Ya cargado desde %s. +ErrorNoWarehouseDefined=Error, no hay almacenes definidos. +ErrorBadLinkSourceSetButBadValueForRef=El enlace que usas no es válido. Se define una 'fuente' para el pago, pero el valor para 'ref' no es válido. +ErrorTooManyErrorsProcessStopped=Demasiados errores El proceso fue detenido. +ErrorMassValidationNotAllowedWhenStockIncreaseOnAction=La validación masiva no es posible cuando se establece una opción para aumentar / disminuir el stock en esta acción (debe validar uno por uno para que pueda definir el depósito para aumentar / disminuir) +ErrorObjectMustHaveStatusDraftToBeValidated=El objeto %s debe tener el estado 'Borrador' para ser validado. +ErrorObjectMustHaveLinesToBeValidated=El objeto %s debe tener líneas para ser validadas. +ErrorOnlyInvoiceValidatedCanBeSentInMassAction=Solo se pueden enviar facturas validadas mediante la acción masiva "Enviar por correo electrónico". +ErrorDiscountLargerThanRemainToPaySplitItBefore=El descuento que intentas aplicar es más grande que el que queda por pagar. Divida el descuento en 2 descuentos más pequeños antes. +ErrorFileNotFoundWithSharedLink=Archivo no fue encontrado. Puede ser que la clave compartida se haya modificado o que el archivo se haya eliminado recientemente. +ErrorProductBarCodeAlreadyExists=El código de barras del producto %s ya existe en otra referencia del producto. +ErrorNoteAlsoThatSubProductCantBeFollowedByLot=Tenga en cuenta también que no es posible utilizar productos virtuales para aumentar / disminuir automáticamente subproductos cuando al menos un subproducto (o subproducto de subproductos) necesita un número de serie / lote. +ErrorDescRequiredForFreeProductLines=La descripción es obligatoria para líneas con producto gratis +ErrorAPageWithThisNameOrAliasAlreadyExists=La página / contenedor %s tiene el mismo nombre o alias alternativo que el que intenta utilizar +ErrorDuringChartLoad=Error al cargar el cuadro de cuentas. Si algunas cuentas no se cargaron, aún puede ingresarlas manualmente. +ErrorBadSyntaxForParamKeyForContent=Mala sintaxis para param keyforcontent. Debe tener un valor que comience con %s o %s +ErrorVariableKeyForContentMustBeSet=Error, la constante con el nombre %s (con contenido de texto para mostrar) o %s (con url externa para mostrar) debe configurarse. +ErrorURLMustStartWithHttp=La URL %s debe comenzar con http: // o https: // +ErrorNewRefIsAlreadyUsed=Error, la nueva referencia ya está en uso. +ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, eliminar el pago vinculado a una factura cerrada no es posible. +ErrorObjectMustHaveStatusActiveToBeDisabled=serLos objetos deben tener el estado 'Activo' para ser deshabilitado +ErrorObjectMustHaveStatusDraftOrDisabledToBeActivated=Los objetos deben tener el estado 'Borrador' o 'Deshabilitado' para ser habilitados +ErrorNoFieldWithAttributeShowoncombobox=Ningún campo tiene la propiedad 'showoncombobox' en la definición del objeto '%s'. No hay forma de mostrar la combolista. +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Su parámetro PHP upload_max_filesize (%s) es más alto que el parámetro PHP post_max_size (%s). Esta no es una configuración consistente. +WarningPasswordSetWithNoAccount=Se estableció una contraseña para este miembro. Sin embargo, no se creó ninguna cuenta de usuario. Por lo tanto, esta contraseña se almacena pero no se puede usar para iniciar sesión en Dolibarr. Puede ser utilizado por un módulo / interfaz externo, pero si no necesita definir ningún nombre de usuario o contraseña para un miembro, puede desactivar la opción "Administrar un inicio de sesión para cada miembro" desde la configuración del módulo Miembro. Si necesita administrar un inicio de sesión pero no necesita ninguna contraseña, puede mantener este campo vacío para evitar esta advertencia. Nota: El correo electrónico también se puede utilizar como inicio de sesión si el miembro está vinculado a un usuario. +WarningEnableYourModulesApplications=Haga clic aquí para habilitar sus módulos y aplicaciones +WarningSafeModeOnCheckExecDir=Advertencia, la opción PHP safe_mode está activada, por lo que el comando debe almacenarse dentro de un directorio declarado por el parámetro php safe_mode_exec_dir . +WarningBookmarkAlreadyExists=Ya existe un marcador con este título o este objetivo (URL). +WarningPassIsEmpty=Advertencia, la contraseña de la base de datos está vacía. Este es un agujero de seguridad. Debe agregar una contraseña a su base de datos y cambiar su archivo conf.php para reflejar esto. +WarningConfFileMustBeReadOnly=Advertencia, el servidor web puede sobrescribir su archivo de configuración ( htdocs / conf / conf.php ). Este es un serio agujero de seguridad. Modificar los permisos en el archivo para que esté en modo de solo lectura para el usuario del sistema operativo utilizado por el servidor web. Si usa el formato Windows y FAT para su disco, debe saber que este sistema de archivos no permite agregar permisos en el archivo, por lo que no puede ser completamente seguro. +WarningsOnXLines=Advertencias en %s registro(s) fuente +WarningNoDocumentModelActivated=No se ha activado ningún modelo para la generación de documentos. Se elegirá un modelo por defecto hasta que verifique la configuración de su módulo. +WarningLockFileDoesNotExists=Advertencia: una vez finalizada la instalación, debe deshabilitar las herramientas de instalación / migración agregando un archivo install.lock en el directorio %s . Omitir la creación de este archivo es un grave riesgo para la seguridad. +WarningUntilDirRemoved=Todas las advertencias de seguridad (visibles solo para usuarios de administración) permanecerán activas mientras la vulnerabilidad esté presente (o se agregue la constante MAIN_REMOVE_INSTALL_WARNING en Configuración-> Otra configuración). +WarningCloseAlways=Advertencia, el cierre se realiza incluso si la cantidad difiere entre los elementos de origen y destino. Habilite esta función con precaución. +WarningUsingThisBoxSlowDown=Advertencia, usar este recuadro ralentiza seriamente todas las páginas que muestran el recuadro. +WarningClickToDialUserSetupNotComplete=La configuración de la información ClickToDial para su usuario no está completa (consulte la ficha ClickToDial en su tarjeta de usuario). +WarningFeatureDisabledWithDisplayOptimizedForBlindNoJs=Característica deshabilitada cuando la configuración de la pantalla está optimizada para navegadores ciegos o de texto. +WarningPaymentDateLowerThanInvoiceDate=La fecha de pago (%s) es anterior a la fecha de factura (%s) para la factura %s. +WarningTooManyDataPleaseUseMoreFilters=Demasiados datos (más de %s líneas). Utilice más filtros o configure la constante %s en un límite superior. +WarningSomeLinesWithNullHourlyRate=Algunas veces fueron registradas por algunos usuarios mientras que su tarifa por hora no estaba definida. Se utilizó un valor de 0 %s por hora, pero esto puede dar como resultado una valoración incorrecta del tiempo empleado. +WarningYourLoginWasModifiedPleaseLogin=Su inicio de sesión fue modificado. Por motivos de seguridad, deberá iniciar sesión con su nuevo nombre de usuario antes de la siguiente acción. +WarningNumberOfRecipientIsRestrictedInMassAction=Advertencia, el número de destinatarios diferentes se limita a %s cuando se usan las acciones masivas en las listas +WarningProjectClosed=El proyecto está cerrado. Debes volver a abrirlo primero. +WarningSomeBankTransactionByChequeWereRemovedAfter=Algunas transacciones bancarias se eliminaron después de que se generó el recibo, incluidos ellos. Por lo tanto, el número de cheques y el total del recibo pueden diferir del número y el total en la lista. diff --git a/htdocs/langs/es_CL/exports.lang b/htdocs/langs/es_CL/exports.lang new file mode 100644 index 00000000000..d30d032606e --- /dev/null +++ b/htdocs/langs/es_CL/exports.lang @@ -0,0 +1,106 @@ +# Dolibarr language file - Source file is en_US - exports +ImportableDatas=Conjunto de datos importable +SelectExportDataSet=Elija el conjunto de datos que quiera exportar ... +SelectImportDataSet=Elija el conjunto de datos que desea importar ... +SelectExportFields=Elija los campos que desea exportar o seleccione un perfil de exportación predefinido +SelectImportFields=Elija los campos de archivo de origen que desea importar y su campo de destino en la base de datos moviéndolos hacia arriba y hacia abajo con el ancla %s, o seleccione un perfil de importación predefinido: +NotImportedFields=Campos del archivo fuente no importados +SaveExportModel=Guarde sus selecciones como un perfil / plantilla de exportación (para reutilizar). +SaveImportModel=Guardar este perfil de importación (para reutilizar) ... +ExportModelName=Exportar nombre de perfil +ExportModelSaved=Exportar perfil guardado como %s . +ExportedFields=Campos exportados +ImportModelName=Importar nombre de perfil +ImportModelSaved=Importar perfil guardado como %s . +DatasetToExport=Dataset para exportar +DatasetToImport=Importar archivo al conjunto de datos +ChooseFieldsOrdersAndTitle=Elija campos orden ... +FieldsTitle=Título de los campos +FieldTitle=Título del campo +NowClickToGenerateToBuildExportFile=Ahora, seleccione el formato de archivo en el cuadro combinado y haga clic en "Generar" para compilar el archivo de exportación ... +LibraryShort=Biblioteca +FormatedImport=Asistente de Importación +FormatedImportDesc2=El primer paso es elegir el tipo de datos que desea importar, luego el formato del archivo fuente y luego los campos que desea importar. +FormatedExportDesc1=Estas herramientas permiten la exportación de datos personalizados con un asistente, para ayudarlo en el proceso sin necesidad de conocimientos técnicos. +FormatedExportDesc2=El primer paso es elegir un conjunto de datos predefinido, luego los campos que desea exportar y en qué orden. +FormatedExportDesc3=Cuando se seleccionan los datos para exportar, puede elegir el formato del archivo de salida. +NoImportableData=No hay datos importables (no hay un módulo con definiciones para permitir la importación de datos) +LineDescription=Descripción de la línea +LineUnitPrice=Precio unitario de línea +LineVATRate=Tasa de IVA +LineQty=Cantidad por línea +LineTotalHT=Cantidad excl. impuesto por línea +LineTotalTTC=Monto con impuesto por línea +LineTotalVAT=Cantidad de IVA por línea +TypeOfLineServiceOrProduct=Tipo de línea (0 = producto, 1 = servicio) +FileWithDataToImport=Archivo con datos para importar +FileToImport=Archivo fuente para importar +FileMustHaveOneOfFollowingFormat=El archivo a importar debe tener uno de los siguientes formatos. +DownloadEmptyExample=Descargar archivo de plantilla con información de contenido de campo (* son campos obligatorios) +ChooseFormatOfFileToImport=Elija el formato de archivo que se usará como formato de archivo de importación haciendo clic en el icono %s para seleccionarlo ... +SourceFileFormat=Formato de archivo fuente +FieldsInSourceFile=Campos en el archivo fuente +FieldsInTargetDatabase=Campos de destino en la base de datos Dolibarr (negrita = obligatorio) +NoFields=Sin campos +MoveField=Mover el número de columna de campo %s +SaveImportProfile=Guarde este perfil de importación +ErrorImportDuplicateProfil=Error al guardar este perfil de importación con este nombre. Ya existe un perfil existente con este nombre. +TablesTarget=Tablas dirigidas +FieldsTarget=Campos dirigidos +FieldTarget=Campo dirigido +FieldSource=Campo fuente +NbOfSourceLines=Número de líneas en el archivo fuente +NowClickToTestTheImport=Verifique que el formato del archivo (delimitadores de campo y cadena) de su archivo coincida con las opciones que se muestran y que haya omitido la línea del encabezado, o estos se marcarán como errores en la siguiente simulación.
    Haga clic en el botón " %s " para ejecutar una verificación de la estructura / contenido del archivo y simular el proceso de importación.
    No se cambiarán datos en su base de datos . +RunSimulateImportFile=Ejecutar simulación de importación +FieldNeedSource=Este campo requiere datos del archivo fuente +SomeMandatoryFieldHaveNoSource=Algunos campos obligatorios no tienen origen desde el archivo de datos +InformationOnSourceFile=Información sobre el archivo fuente +InformationOnTargetTables=Información sobre los campos objetivo +SelectAtLeastOneField=Cambie al menos un campo fuente en la columna de campos para exportar +SelectFormat=Elija este formato de archivo de importación +RunImportFile=Datos de importacion +NowClickToRunTheImport=Compruebe los resultados de la simulación de importación. Corrija cualquier error y vuelva a probar.
    Cuando la simulación no informe errores, puede proceder a importar los datos a la base de datos. +DataLoadedWithId=Los datos importados tendrán un campo adicional en cada tabla de base de datos con este ID de importación: %s , para permitir su búsqueda en el caso de investigar un problema relacionado con esta importación. +ErrorMissingMandatoryValue=Los datos obligatorios están vacíos en el archivo fuente para el campo %s . +TooMuchErrors=Todavía hay %s otras líneas de origen con errores pero la salida ha sido limitada. +TooMuchWarnings=Todavía hay %s otras líneas de origen con advertencias pero la salida ha sido limitada. +EmptyLine=Línea vacía (se descartará) +FileWasImported=El archivo se importó con el número %s. +YouCanUseImportIdToFindRecord=Puede encontrar todos los registros importados en su base de datos al filtrar en el campo import_key = '%s' . +NbOfLinesOK=Número de líneas sin errores y sin advertencias: %s. +NbOfLinesImported=Número de líneas importadas con éxito: %s. +DataComeFromNoWhere=El valor para insertar proviene de ninguna parte en el archivo fuente. +DataComeFromFileFieldNb=El valor para insertar proviene del campo número %s en el archivo fuente. +DataComeFromIdFoundFromRef=El valor que proviene del campo número %s del archivo de origen se usará para encontrar el id del objeto principal que se usará (por lo que el objeto %s que tiene la referencia del archivo de origen debe existir en la base de datos). +DataComeFromIdFoundFromCodeId=El código que proviene del campo número %s del archivo de origen se usará para encontrar el id del objeto primario que se usará (por lo tanto, el código del archivo de origen debe existir en el diccionario %s ). Tenga en cuenta que si conoce el ID, también puede usarlo en el archivo fuente en lugar del código. La importación debe funcionar en ambos casos. +DataIsInsertedInto=Los datos provenientes del archivo fuente se insertarán en el siguiente campo: +DataIDSourceIsInsertedInto=La identificación del objeto principal se encontró utilizando los datos en el archivo de origen, se insertará en el siguiente campo: +DataCodeIDSourceIsInsertedInto=La identificación de la línea padre encontrada a partir del código, se insertará en el siguiente campo: +SourceRequired=El valor de los datos es obligatorio +SourceExample=Ejemplo de posible valor de datos +ExampleAnyRefFoundIntoElement=Cualquier referencia encontrada para el elemento %s +ExampleAnyCodeOrIdFoundIntoDictionary=Cualquier código (o id) encontrado en el diccionario %s +CSVFormatDesc=Formato de archivo de valores separados por comas (.csv).
    Este es un formato de archivo de texto donde los campos están separados por un separador [%s]. Si se encuentra un separador dentro de un contenido de campo, el campo se redondea con un carácter redondo [%s]. El carácter de escape para escapar del carácter redondo es [%s]. +Excel95FormatDesc=Formato de archivo de Excel (.xls)
    Este es el formato nativo de Excel 95 (BIFF5). +Excel2007FormatDesc=Formato de archivo de Excel (.xlsx)
    Este es el formato nativo de Excel 2007 (SpreadsheetML). +TsvFormatDesc= Formato de archivo separado por tabuladores (.tsv)
    Este es un formato de archivo de texto donde los campos están separados por un tabulador [tabulador]. +ExportFieldAutomaticallyAdded=El campo %s se agregó automáticamente. Evitará que tenga líneas similares para tratar como registros duplicados (con este campo agregado, todas las líneas tendrán su propia identificación y serán diferentes). +Enclosure=Delimitador de cuerdas +ExportStringFilter=%% permite reemplazar uno o más caracteres en el texto +ExportDateFilter=YYYY, YYYYMM, YYYYMMDD: filtros por año / mes / día
    YYYY + YYYY, YYYYMM + YYYYMM, YYYYMMDD + YYYYMMDD: filtros en un rango de años / meses / días
    > YYYY,> YYYYMM,> YYYYMMDD: filtros en todos los años / meses / días siguientes
    <YYYY, <YYYYMM, <YYYYMMDD: filtros en todos los años / meses / días anteriores +ExportNumericFilter=NNNNN filtra por un valor
    NNNNN + NNNNN filtra en un rango de valores
    > NNNNN filtra por valores más altos +ImportFromLine=Importar desde el número de línea +EndAtLineNb=Terminar en el número de línea +ImportFromToLine=Rango límite (de - a). P.ej. para omitir las líneas de encabezado. +SetThisValueTo2ToExcludeFirstLine=Por ejemplo, establezca este valor en 3 para excluir las 2 primeras líneas.
    Si las líneas del encabezado NO se omiten, esto dará lugar a múltiples errores en la Simulación de Importación. +KeepEmptyToGoToEndOfFile=Mantenga este campo vacío para procesar todas las líneas hasta el final del archivo. +SelectPrimaryColumnsForUpdateAttempt=Seleccione la (s) columna (s) para usar como clave principal para una importación de ACTUALIZACIÓN +UpdateNotYetSupportedForThisImport=La actualización no es compatible con este tipo de importación (solo insertar) +NoUpdateAttempt=No se realizó ningún intento de actualización, solo inserte +ImportDataset_user_1=Usuarios (empleados o no) y propiedades +ComputedField=Campo computado +SelectFilterFields=Si quiere filtrar algunos valores, simplemente ingrese los valores aquí. +FilteredFieldsValues=Valor para el filtro +FormatControlRule=Regla de control de formato +KeysToUseForUpdates=Clave (columna) a usar para actualizar los datos existentes +NbInsert=Número de líneas insertadas: %s diff --git a/htdocs/langs/es_CL/externalsite.lang b/htdocs/langs/es_CL/externalsite.lang new file mode 100644 index 00000000000..d9fc1b5c46b --- /dev/null +++ b/htdocs/langs/es_CL/externalsite.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - externalsite +ExternalSiteSetup=Enlace de configuración al sitio web externo +ExternalSiteModuleNotComplete=El módulo ExternalSite no se configuró correctamente. diff --git a/htdocs/langs/es_CL/ftp.lang b/htdocs/langs/es_CL/ftp.lang new file mode 100644 index 00000000000..57e90e9ac58 --- /dev/null +++ b/htdocs/langs/es_CL/ftp.lang @@ -0,0 +1,13 @@ +# Dolibarr language file - Source file is en_US - ftp +FTPClientSetup=Configuración del módulo FTP Client +NewFTPClient=Nueva configuración de conexión FTP +FTPArea=Área de FTP +FTPAreaDesc=Esta pantalla muestra una vista de un servidor FTP. +SetupOfFTPClientModuleNotComplete=La configuración del módulo de cliente FTP parece estar incompleta +FTPFeatureNotSupportedByYourPHP=Su PHP no es compatible con funciones de FTP +FailedToConnectToFTPServer=Error al conectarse al servidor FTP (servidor %s, puerto %s) +FailedToConnectToFTPServerWithCredentials=Error al iniciar sesión en el servidor FTP con inicio de sesión / contraseña definidos +FTPFailedToRemoveFile=Falló al eliminar el archivo %s. +FTPFailedToRemoveDir=Error al eliminar el directorio %s : verifique los permisos y que el directorio esté vacío. +ChooseAFTPEntryIntoMenu=Elija un sitio FTP del menú ... +FailedToGetFile=Error al obtener los archivos %s diff --git a/htdocs/langs/es_CL/help.lang b/htdocs/langs/es_CL/help.lang new file mode 100644 index 00000000000..d7aae58d771 --- /dev/null +++ b/htdocs/langs/es_CL/help.lang @@ -0,0 +1,21 @@ +# Dolibarr language file - Source file is en_US - help +CommunitySupport=Foro / Wiki support +EMailSupport=Soporte de correos electrónicos +RemoteControlSupport=Soporte en línea en tiempo real / remoto +OtherSupport=Otro soporte +ToSeeListOfAvailableRessources=Para contactar / ver los recursos disponibles: +HelpCenter=Centro de ayuda +DolibarrHelpCenter=Centro de Ayuda y Soporte Dolibarr +ToGoBackToDolibarr=De lo contrario, haga clic aquí para continuar usando Dolibarr . +TypeOfSupport=Tipo de apoyo +TypeSupportCommunauty=Comunidad (gratis) +NeedHelpCenter=¿Necesitas ayuda o soporte? +Efficiency=Eficiencia +TypeHelpOnly=Ayuda solo +TypeHelpDev=Ayuda + Desarrollo +TypeHelpDevForm=Ayuda + Desarrollo + Entrenamiento +BackToHelpCenter=De lo contrario, vuelva a la página de inicio del centro de ayuda . +LinkToGoldMember=Puede llamar a uno de los capacitadores preseleccionados por Dolibarr para su idioma (%s) haciendo clic en su Widget (el estado y el precio máximo se actualizan automáticamente): +PossibleLanguages=Idiomas admitidos +SubscribeToFoundation=Ayuda al proyecto Dolibarr, suscríbete a la fundación. +SeeOfficalSupport=Para obtener asistencia oficial de Dolibarr en su idioma:
    %s diff --git a/htdocs/langs/es_CL/holiday.lang b/htdocs/langs/es_CL/holiday.lang new file mode 100644 index 00000000000..80542681b19 --- /dev/null +++ b/htdocs/langs/es_CL/holiday.lang @@ -0,0 +1,105 @@ +# Dolibarr language file - Source file is en_US - holiday +Holidays=Salir +CPTitreMenu=Salir +MenuAddCP=Nueva solicitud de permiso +NotActiveModCP=Debes habilitar el módulo Deja para ver esta página. +AddCP=Hacer una solicitud de permiso +DateDebCP=Fecha inicial +DateFinCP=Fecha final +ToReviewCP=Esperando aprobacion +ApprovedCP=Aprobado +CancelCP=Cancelado +RefuseCP=Rechazado +ValidatorCP=Aprobador +ListeCP=Lista de licencia +LeaveId=Dejar ID +ReviewedByCP=Será aprobado por +UserForApprovalID=ID de aprobación del usuario +SendRequestCP=Crear solicitud de permiso +DelayToRequestCP=Las solicitudes de ausencia deben hacerse al menos %s día (s) antes que ellas. +MenuConfCP=Balance de licencia +SoldeCPUser=El saldo de la licencia es %s días. +ErrorEndDateCP=Debe seleccionar una fecha de finalización mayor que la fecha de inicio. +ErrorSQLCreateCP=Se produjo un error SQL durante la creación: +ErrorIDFicheCP=Se ha producido un error, la solicitud de ausencia no existe. +ReturnCP=volver a la pagina anterior +ErrorUserViewCP=No está autorizado a leer esta solicitud de permiso. +InfosWorkflowCP=Flujo de trabajo de información +RequestByCP=Solicitado por +TitreRequestCP=Dejar petición +TypeOfLeaveId=Tipo de ID de ausencia +TypeOfLeaveCode=Tipo de código de licencia +TypeOfLeaveLabel=Tipo de etiqueta de permiso +NbUseDaysCP=Número de días de vacaciones consumidos +EditCP=Editar +DeleteCP=Borrar +ActionRefuseCP=Desperdicios +ActionCancelCP=Cancelar +TitleDeleteCP=Eliminar la solicitud de licencia +ConfirmDeleteCP=Confirmar la eliminación de esta solicitud de permiso +ErrorCantDeleteCP=Error. No tiene derecho a eliminar esta solicitud de permiso. +CantCreateCP=Usted no tiene el derecho de hacer solicitudes de ausencia. +InvalidValidatorCP=Debe elegir un moderador para su solicitud de licencia. +NoDateDebut=Debe seleccionar una fecha de inicio. +NoDateFin=Debe seleccionar una fecha de finalización. +ErrorDureeCP=Su solicitud de ausencia no contiene día laborable. +TitleValidCP=Aprobar la solicitud de permiso +ConfirmValidCP=¿Seguro que quieres aprobar la solicitud de permiso? +DateValidCP=Fecha aprobada +TitleToValidCP=Enviar solicitud de licencia +ConfirmToValidCP=¿Seguro que quieres enviar la solicitud de permiso? +TitleRefuseCP=Rechazar la solicitud de permiso +ConfirmRefuseCP=¿Seguro que quieres rechazar la solicitud de permiso? +NoMotifRefuseCP=Debe elegir un motivo para rechazar la solicitud. +TitleCancelCP=Cancelar la solicitud de permiso +ConfirmCancelCP=¿Seguro que quieres cancelar la solicitud de permiso? +DetailRefusCP=Motivo de rechazo +DateRefusCP=Fecha de rechazo +DateCancelCP=Fecha de cancelación +DefineEventUserCP=Asignar una licencia excepcional para un usuario +addEventToUserCP=Asignar permiso +MotifCP=Razón +ErrorAddEventToUserCP=Se produjo un error al agregar la licencia excepcional. +AddEventToUserOkCP=La adición de la licencia excepcional se ha completado. +MenuLogCP=Ver registros de cambios +LogCP=Registro de actualizaciones de días de vacaciones disponibles +ActionByCP=Interpretado por +PrevSoldeCP=Balance anterior +NewSoldeCP=Nuevo equilibrio +alreadyCPexist=Ya se ha hecho una solicitud de licencia en este período. +FirstDayOfHoliday=Primer día de vacaciones +LastDayOfHoliday=Último día de vacaciones +BoxTitleLastLeaveRequests=Las últimas %s solicitudes de permiso modificadas +HolidaysCancelation=Deje la cancelación de la solicitud +EmployeeLastname=Apellido del empleado +TypeWasDisabledOrRemoved=El tipo de licencia (id. %s) fue desactivado o eliminado +LastHolidays=Últimas %s solicitudes de ausencia +AllHolidays=Todas las solicitudes de licencia +LEAVE_PAID=Vacaciones pagas +LEAVE_OTHER=Otra licencia +LEAVE_PAID_FR=Vacaciones pagas +LastUpdateCP=Última actualización automática de la asignación de vacaciones. +MonthOfLastMonthlyUpdate=Mes de la última actualización automática de la asignación de vacaciones +UpdateConfCPOK=Actualizado correctamente. +Module27130Name=Gestión de solicitudes de ausencia +Module27130Desc=Gestión de solicitudes de ausencia +ErrorMailNotSend=Se produjo un error al enviar un correo electrónico: +HolidaysToValidate=Validar solicitudes de ausencia +HolidaysToValidateBody=A continuación hay una solicitud de permiso para validar +HolidaysToValidateDelay=Esta solicitud de permiso se realizará en un período de menos de %s días. +HolidaysToValidateAlertSolde=El usuario que realizó esta solicitud de licencia no tiene suficientes días disponibles. +HolidaysValidated=Solicitudes de ausencia validadas +HolidaysValidatedBody=Su solicitud de licencia para %s a %s ha sido validada. +HolidaysRefused=Solicitud rechazada +HolidaysRefusedBody=Su solicitud de permiso para %s a %s se ha denegado por el siguiente motivo: +HolidaysCanceled=Solicitud de hoja cancelada +HolidaysCanceledBody=Su solicitud de licencia para %s a %s ha sido cancelada. +FollowedByACounter=1: este tipo de permiso debe ir seguido de un contador. El contador se incrementa de forma manual o automática y cuando se valida una solicitud de permiso, el contador disminuye.
    0: No seguido de un contador. +NoLeaveWithCounterDefined=No hay tipos de permisos definidos que deban ser seguidos por un contador +GoIntoDictionaryHolidayTypes=Ir a Inicio - Configuración - Diccionarios - Tipo de permiso para configurar los diferentes tipos de hojas. +HolidaySetup=Configuración del módulo Holiday +HolidaysNumberingModules=Deja peticiones numerando modelos. +TemplatePDFHolidays=Plantilla para solicitudes de permisos PDF +FreeLegalTextOnHolidays=Texto libre en PDF +WatermarkOnDraftHolidayCards=Marcas de agua en las solicitudes de permiso de proyecto +NobodyHasPermissionToValidateHolidays=Nadie tiene permiso para validar vacaciones diff --git a/htdocs/langs/es_CL/hrm.lang b/htdocs/langs/es_CL/hrm.lang new file mode 100644 index 00000000000..c7114548f10 --- /dev/null +++ b/htdocs/langs/es_CL/hrm.lang @@ -0,0 +1,7 @@ +# Dolibarr language file - Source file is en_US - hrm +HRM_EMAIL_EXTERNAL_SERVICE=Correo electrónico para evitar el servicio externo de RRHH +ConfirmDeleteEstablishment=¿Estás seguro de que deseas eliminar este establecimiento? +OpenEtablishment=Establecimiento abierto +DictionaryPublicHolidays=Gestión de recursos humanos: días festivos +DictionaryDepartment=RRHH - Lista de departamentos +DictionaryFunction=HHRR - Lista de funciones diff --git a/htdocs/langs/es_CL/install.lang b/htdocs/langs/es_CL/install.lang index c0d5b6d2ea1..f9a48684eac 100644 --- a/htdocs/langs/es_CL/install.lang +++ b/htdocs/langs/es_CL/install.lang @@ -72,7 +72,6 @@ GoToDolibarr=Ir a Dolibarr GoToSetupArea=Ir a Dolibarr (área de configuración) GoToUpgradePage=Ir a la página de actualización de nuevo WithNoSlashAtTheEnd=Sin la barra "/" al final -DirectoryRecommendation=IMPORTANT: You must use a directory that is outside of the web pages (so do not use a subdirectory of previous parameter). AdminLoginAlreadyExists=La cuenta de administrador de Dolibarr ' %s ' ya existe. Vuelve si quieres crear otro. FailedToCreateAdminLogin=Error al crear la cuenta de administrador de Dolibarr. WarningRemoveInstallDir=Advertencia, por razones de seguridad, una vez que se complete la instalación o la actualización, debe agregar un archivo llamado install.lock en el directorio de documentos de Dolibarr para evitar nuevamente el uso accidental / malicioso de las herramientas de instalación. diff --git a/htdocs/langs/es_CL/languages.lang b/htdocs/langs/es_CL/languages.lang new file mode 100644 index 00000000000..58d896e2259 --- /dev/null +++ b/htdocs/langs/es_CL/languages.lang @@ -0,0 +1,49 @@ +# Dolibarr language file - Source file is en_US - languages +Language_ar_AR=Arábica +Language_ar_SA=Arábica +Language_bn_BD=bengalí +Language_bg_BG=búlgaro +Language_bs_BA=bosnio +Language_ca_ES=catalán +Language_cs_CZ=checo +Language_da_DA=danés +Language_da_DK=danés +Language_de_DE=alemán +Language_el_GR=griego +Language_en_GB=Inglés (reino unido) +Language_eu_ES=vasco +Language_fa_IR=persa +Language_fi_FI=finlandés +Language_fr_FR=francés +Language_fy_NL=frisio +Language_he_IL=hebreo +Language_hr_HR=croata +Language_hu_HU=húngaro +Language_id_ID=indonesio +Language_is_IS=islandés +Language_it_IT=italiano +Language_ja_JP=japonés +Language_ka_GE=georgiano +Language_ko_KR=coreano +Language_lt_LT=lituano +Language_lv_LV=letón +Language_mk_MK=macedónio +Language_mn_MN=mongol +Language_nl_BE=Holandés (Bélgica) +Language_pl_PL=polaco +Language_pt_PT=portugués +Language_ro_RO=rumano +Language_ru_RU=ruso +Language_tr_TR=turco +Language_sl_SI=esloveno +Language_sv_SV=sueco +Language_sv_SE=sueco +Language_sq_AL=albanés +Language_sr_RS=serbio +Language_th_TH=tailandés +Language_uk_UA=ucranio +Language_uz_UZ=Uzbekistán +Language_vi_VN=vietnamita +Language_zh_CN=chino +Language_zh_TW=Chino (tradicional) +Language_bh_MY=malayo diff --git a/htdocs/langs/es_CL/ldap.lang b/htdocs/langs/es_CL/ldap.lang new file mode 100644 index 00000000000..f90f34b9cf1 --- /dev/null +++ b/htdocs/langs/es_CL/ldap.lang @@ -0,0 +1,17 @@ +# Dolibarr language file - Source file is en_US - ldap +YouMustChangePassNextLogon=El password para el usuario %s en el dominio %s debe ser cambiado. +UserMustChangePassNextLogon=El usuario debe cambiar la contraseña en el dominio %s +LDAPInformationsForThisContact=Información en la base de datos LDAP para este contacto +LDAPInformationsForThisUser=Información en la base de datos LDAP para este usuario +LDAPInformationsForThisGroup=Información en la base de datos LDAP para este grupo +LDAPInformationsForThisMember=Información en la base de datos LDAP para este miembro +LDAPCard=Tarjeta LDAP +LDAPFieldStatus=Estado +LDAPFieldFirstSubscriptionDate=Primera fecha de suscripción +LDAPFieldFirstSubscriptionAmount=Primera cantidad de suscripción +LDAPFieldLastSubscriptionDate=Última fecha de suscripción +LDAPFieldLastSubscriptionAmount=Último monto de suscripción +LDAPFieldSkype=Identificación del skype +LDAPFieldSkypeExample=Ejemplo: skypeName +ForceSynchronize=Fuerza sincronizando Dolibarr -> LDAP +ErrorFailedToReadLDAP=Error al leer la base de datos LDAP. Verifique la configuración del módulo LDAP y la accesibilidad de la base de datos. diff --git a/htdocs/langs/es_CL/link.lang b/htdocs/langs/es_CL/link.lang new file mode 100644 index 00000000000..b3f562fac79 --- /dev/null +++ b/htdocs/langs/es_CL/link.lang @@ -0,0 +1,10 @@ +# Dolibarr language file - Source file is en_US - link +LinkANewFile=Enlace un nuevo archivo / documento +LinkedFiles=Links archivos y documentos +NoLinkFound=No hay enlaces registrados +LinkComplete=El archivo ha sido vinculado exitosamente +ErrorFileNotLinked=El archivo no pudo ser vinculado +LinkRemoved=El enlace %s ha sido eliminado +ErrorFailedToDeleteLink=Error al eliminar el enlace '%s' +ErrorFailedToUpdateLink=Error al actualizar el enlace '%s' +URLToLink=URL para enlazar diff --git a/htdocs/langs/es_CL/loan.lang b/htdocs/langs/es_CL/loan.lang new file mode 100644 index 00000000000..f24bbf5b732 --- /dev/null +++ b/htdocs/langs/es_CL/loan.lang @@ -0,0 +1,24 @@ +# Dolibarr language file - Source file is en_US - loan +NewLoan=Nuevo préstamo +ShowLoan=Mostrar préstamo +LoanPayment=Pago de préstamo +ShowLoanPayment=Mostrar pago de préstamo +Interest=Interesar +Nbterms=Numero de términos +Term=Término +LoanAccountancyCapitalCode=Capital de cuenta contable +LoanAccountancyInsuranceCode=Seguro de cuenta contable +LoanAccountancyInterestCode=Intereses contables contables +ConfirmDeleteLoan=Confirmar la eliminación de este préstamo +LoanDeleted=Préstamo eliminado con éxito +ConfirmPayLoan=Confirmar clasificar pagó este préstamo +ListLoanAssociatedProject=Lista de préstamo asociado con el proyecto +AddLoan=Crear un préstamo +FinancialCommitment=Compromiso financiero +InterestAmount=Interesar +CapitalRemain=Remanente capital +ConfigLoan=Configuración del módulo de préstamo +LOAN_ACCOUNTING_ACCOUNT_CAPITAL=Capital de cuenta contable por defecto +LOAN_ACCOUNTING_ACCOUNT_INTEREST=El interés de cuenta contable por defecto +LOAN_ACCOUNTING_ACCOUNT_INSURANCE=Seguro de cuenta contable por defecto +CreateCalcSchedule=Edita el compromiso financiero diff --git a/htdocs/langs/es_CL/mailmanspip.lang b/htdocs/langs/es_CL/mailmanspip.lang new file mode 100644 index 00000000000..34a39aa742a --- /dev/null +++ b/htdocs/langs/es_CL/mailmanspip.lang @@ -0,0 +1,24 @@ +# Dolibarr language file - Source file is en_US - mailmanspip +MailmanTitle=Sistema de listas de correo de Mailman +TestSubscribe=Para probar la suscripción a las listas de Mailman +TestUnSubscribe=Para probar la cancelación de suscripción a las listas de Mailman +MailmanCreationSuccess=La prueba de suscripción se ejecutó con éxito +MailmanDeletionSuccess=La prueba de cancelación se ejecutó con éxito +SynchroMailManEnabled=Se realizará una actualización de Mailman +SynchroSpipEnabled=Se realizará una actualización de Spip +DescADHERENT_MAILMAN_ADMINPW=Contraseña de administrador de Mailman +DescADHERENT_MAILMAN_URL=URL para las suscripciones de Mailman +DescADHERENT_MAILMAN_UNSUB_URL=URL para la cancelación de suscripciones de Mailman +DescADHERENT_MAILMAN_LISTS=Lista (s) para la inscripción automática de nuevos miembros (separados por una coma) +SPIPTitle=Sistema de gestión de contenido SPIP +DescADHERENT_SPIP_DB=Nombre de la base de datos SPIP +DescADHERENT_SPIP_USER=Inicio de sesión en la base de datos +DescADHERENT_SPIP_PASS=Contraseña de la base de datos SPIP +AddIntoSpip=Agregar a SPIP +AddIntoSpipConfirmation=¿Seguro que quieres agregar este miembro a SPIP? +AddIntoSpipError=Error al agregar al usuario en SPIP +DeleteIntoSpip=Eliminar de SPIP +DeleteIntoSpipConfirmation=¿Seguro que quieres eliminar este miembro de SPIP? +DeleteIntoSpipError=Error al suprimir al usuario de SPIP +SuccessToAddToMailmanList=%s se agregó correctamente a la lista de carteros %s o base de datos SPIP +SuccessToRemoveToMailmanList=%s eliminado correctamente de la lista de correo %s o de la base de datos SPIP diff --git a/htdocs/langs/es_CL/mails.lang b/htdocs/langs/es_CL/mails.lang new file mode 100644 index 00000000000..381e5510788 --- /dev/null +++ b/htdocs/langs/es_CL/mails.lang @@ -0,0 +1,131 @@ +# Dolibarr language file - Source file is en_US - mails +EMailings=Emailings +AllEMailings=Todos los eMailings +MailCard=Tarjeta de correo electrónico +MailRecipient=Recipiente +MailTo=Receptor (es) +MailToUsers=Para el usuario(s) +MailCC=Copiar a +MailToCCUsers=Copiar a los usuario(s) +MailCCC=Copia en caché para +MailTopic=Tema de correo electrónico +MailFile=Archivos adjuntos +MailMessage=Cuerpo del correo electronico +SubjectNotIn=No en asunto +BodyNotIn=No en cuerpo +ShowEMailing=Mostrar correo electrónico +ListOfEMailings=Lista de correos electrónicos +NewMailing=Nuevo correo electrónico +EditMailing=Edite el correo electrónico +ResetMailing=Reenviar correos electrónicos +DeleteMailing=Eliminar correo electrónico +DeleteAMailing=Eliminar un correo electrónico +PreviewMailing=Enviar un correo electrónico +CreateMailing=Crear correos electrónicos +TestMailing=Email de prueba +ValidMailing=Correo electrónico válido +MailingStatusSent=Expedido +MailingStatusSentCompletely=Enviado por completo +MailSuccessfulySent=Correo electrónico (de %s a %s) aceptado con éxito para la entrega +MailingSuccessfullyValidated=EMailing validado con éxito +MailUnsubcribe=Darse de baja +MailingStatusNotContact=No contactes más +MailingStatusReadAndUnsubscribe=Leer y cancelar suscripción +ErrorMailRecipientIsEmpty=El destinatario del correo electrónico está vacío +WarningNoEMailsAdded=No hay un nuevo correo electrónico para agregar a la lista del destinatario. +ConfirmValidMailing=¿Seguro que quieres validar este correo electrónico? +ConfirmResetMailing=Advertencia, al volver a inicializar el correo electrónico %s , permitirá reenviar este correo electrónico en un correo masivo. ¿Seguro que quieres hacer esto? +ConfirmDeleteMailing=¿Estás seguro de que deseas eliminar este correo electrónico? +NbOfUniqueEMails=No. de emails únicos +NbOfEMails=Núm. De correos +TotalNbOfDistinctRecipients=Número de destinatarios distintos +NoTargetYet=Aún no hay destinatarios definidos (Vaya a la pestaña 'Destinatarios') +NoRecipientEmail=No hay correo electrónico del destinatario para %s +YouCanAddYourOwnPredefindedListHere=Para crear su módulo selector de correo electrónico, consulte htdocs / core / modules / mailings / README. +EMailTestSubstitutionReplacedByGenericValues=Al usar el modo de prueba, las variables de sustitución son reemplazadas por valores genéricos +MailingAddFile=Adjunte este archivo +NoAttachedFiles=No hay archivos adjuntos +BadEMail=Mal valor para el correo electrónico +ConfirmCloneEMailing=¿Seguro que quieres clonar este correo electrónico? +CloneContent=Mensaje de clonación +CloneReceivers=Cloner recipientes +DateSending=Fecha de envío +MailingStatusRead=Leer +YourMailUnsubcribeOK=El correo electrónico %s se cancela correctamente de la lista de correo +ActivateCheckReadKey=Clave utilizada para cifrar la URL utilizada para la función "Leer recibo" y "Anular suscripción" +EMailSentToNRecipients=Correo electrónico enviado a destinatarios %s. +EMailSentForNElements=Correo electrónico enviado para los elementos %s. +XTargetsAdded=%s destinatarios añadidos a la lista de objetivos +OnlyPDFattachmentSupported=Si los documentos PDF ya se generaron para que los objetos se envíen, se adjuntarán al correo electrónico. De lo contrario, no se enviará ningún correo electrónico (también, tenga en cuenta que solo los documentos pdf son compatibles como archivos adjuntos en el envío masivo en esta versión). +AllRecipientSelected=Los destinatarios del registro %s seleccionado (si se conoce su correo electrónico). +GroupEmails=Correos electrónicos grupales +OneEmailPerRecipient=Un correo electrónico por destinatario (de forma predeterminada, un correo electrónico por registro seleccionado) +WarningIfYouCheckOneRecipientPerEmail=Advertencia, si marca esta casilla, significa que solo se enviará un correo electrónico para varios registros diferentes seleccionados, por lo tanto, si su mensaje contiene variables de sustitución que hacen referencia a datos de un registro, no será posible reemplazarlos. +ResultOfMailSending=Resultado del envío masivo de correo electrónico +NbSelected=Numero seleccionado +NbIgnored=Número ignorado +NbSent=Número enviado +SentXXXmessages=%s mensaje (s) enviado. +ConfirmUnvalidateEmailing=¿Seguro que quieres cambiar el correo electrónico %s al estado de borrador? +MailingModuleDescContactsWithThirdpartyFilter=Contacto con los filtros del cliente +MailingModuleDescContactsByCompanyCategory=Contactos por categoría de terceros +MailingModuleDescContactsByCategory=Contactos por categorías +MailingModuleDescEmailsFromFile=Correos electrónicos del archivo +MailingModuleDescEmailsFromUser=Mensajes de correo electrónico ingresados ​​por el usuario +MailingModuleDescDolibarrUsers=Usuarios con correos electrónicos +MailingModuleDescThirdPartiesByCategories=Terceros (por categorías) +RecipientSelectionModules=Solicitudes definidas para la selección del destinatario +MailingArea=Área de correos +LastMailings=Últimos %s correos electrónicos +TargetsStatistics=Estadísticas de objetivos +MailNoChangePossible=Los destinatarios de correos electrónicos validados no se pueden cambiar +SearchAMailing=Correo de búsqueda +SendMailing=Enviar correo electrónico +MailingNeedCommand=El envío de un correo electrónico se puede realizar desde la línea de comandos. Pídale a su administrador del servidor que ejecute el siguiente comando para enviar el correo electrónico a todos los destinatarios: +MailingNeedCommand2=Sin embargo, puede enviarlos en línea agregando el parámetro MAILING_LIMIT_SENDBYWEB con el valor del número máximo de correos electrónicos que desea enviar por sesión. Para esto, vaya a Inicio - Configuración - Otro. +ConfirmSendingEmailing=Si desea enviar un correo electrónico directamente desde esta pantalla, confirme que está seguro de que desea enviar un correo electrónico ahora desde su navegador. +LimitSendingEmailing=Nota: El envío de correos electrónicos desde la interfaz web se realiza varias veces por razones de seguridad y tiempo de espera, %s destinatarios a la vez para cada sesión de envío. +TargetsReset=Limpiar lista +ToClearAllRecipientsClickHere=Haga clic aquí para borrar la lista de destinatarios para este correo electrónico +ToAddRecipientsChooseHere=Agregue destinatarios eligiendo de las listas +NbOfEMailingsReceived=Correos electrónicos masivos recibidos +NbOfEMailingsSend=Correos electrónicos masivos enviados +IdRecord=Registro de ID +DeliveryReceipt=Entrega Ack. +YouCanUseCommaSeparatorForSeveralRecipients=Puede usar el separador coma para especificar varios destinatarios. +TagCheckMail=Seguir la apertura del correo +TagUnsubscribe=Darse de baja enlace +EMailRecipient=Receptor de E-mail +TagMailtoEmail=Correo electrónico del destinatario (incluido el enlace html "mailto:") +NoEmailSentBadSenderOrRecipientEmail=Sin correo electrónico enviado Correo electrónico malo del remitente o del destinatario. Verificar el perfil del usuario. +NoNotificationsWillBeSent=No se planean notificaciones por correo electrónico para este evento y compañía +ANotificationsWillBeSent=1 notificación será enviada por correo electrónico +SomeNotificationsWillBeSent=%s notificaciones serán enviadas por correo electrónico +AddNewNotification=Activar un nuevo objetivo / evento de notificación por correo electrónico +ListOfActiveNotifications=Enumerar todos los objetivos / eventos activos para recibir notificaciones por correo electrónico +ListOfNotificationsDone=Enumerar todas las notificaciones de correo electrónico enviadas +MailSendSetupIs=La configuración del envío de correo electrónico se ha configurado en '%s'. Este modo no se puede usar para enviar correos masivos. +MailSendSetupIs2=Primero debe ir, con una cuenta de administrador, al menú %sHome-Configuración - EMails%s para cambiar el parámetro '%s' para usar el modo '%s'. Con este modo, puede ingresar a la configuración del servidor SMTP proporcionado por su Proveedor de servicios de Internet y usar la función de envío masivo de correos electrónicos. +MailSendSetupIs3=Si tiene alguna pregunta sobre cómo configurar su servidor SMTP, puede solicitarlo al %s. +YouCanAlsoUseSupervisorKeyword=También puede agregar la palabra clave __ SUPERVISOREMAIL __ para enviar un correo electrónico al supervisor del usuario (solo funciona si se define un correo electrónico para este supervisor) +NbOfTargetedContacts=Número actual de correos electrónicos de contacto dirigidos +UseFormatFileEmailToTarget=El archivo importado debe tener formato correo electrónico; nombre; nombre; otro +UseFormatInputEmailToTarget=Ingrese una cadena con formato correo electrónico; nombre; nombre; otro +AdvTgtTitle=Rellene los campos de entrada para preseleccionar los terceros o contactos / direcciones para orientar +AdvTgtSearchTextHelp=Utilice %% como comodines. Por ejemplo, para encontrar todos los elementos como jean, joe, jim , puede ingresar j%% , también puede usar; como separador de valor, y uso! Para excepto este valor. Por ejemplo, jean; joe; jim%%;! Jimo;! Jima% apuntará a todos los jean, joe, comienza con jim pero no jimo y no todo lo que comienza con jima +AdvTgtSearchIntHelp=Use intervalo para seleccionar el valor int o float +AdvTgtMaxVal=Valor máximo +AdvTgtSearchDtHelp=Usar intervalo para seleccionar el valor de la fecha +AdvTgtStartDt=Comienza dt. +AdvTgtEndDt=Fin dt. +AdvTgtTypeOfIncudeHelp=Correo electrónico de destino de terceros y correo electrónico de contacto de terceros, o simplemente correo electrónico de terceros o simplemente correo electrónico de contacto +AdvTgtTypeOfIncude=Tipo de correo electrónico específico +AdvTgtContactHelp=Úselo solo si dirige el contacto a "Tipo de correo electrónico específico" +ItemsCount=Artículos) +AdvTgtAddContact=Añadir emails según criterio +AdvTgtLoadFilter=Filtro de carga +NoContactWithCategoryFound=Sin contacto / dirección con una categoría encontrada +NoContactLinkedToThirdpartieWithCategoryFound=Sin contacto / dirección con una categoría encontrada +OutGoingEmailSetup=Configuración de correo electrónico saliente +InGoingEmailSetup=Configuración de correo electrónico entrante +DefaultOutgoingEmailSetup=Configuración predeterminada de correo electrónico saliente diff --git a/htdocs/langs/es_CL/main.lang b/htdocs/langs/es_CL/main.lang index 97f6ad69598..08a5806e837 100644 --- a/htdocs/langs/es_CL/main.lang +++ b/htdocs/langs/es_CL/main.lang @@ -193,7 +193,6 @@ AmountTTC=Monto (impuesto inc.) AmountVAT=IVA MulticurrencyAlreadyPaid=Ya pagado, moneda original. MulticurrencyRemainderToPay=Permanecer en el pago, moneda original -MulticurrencyPaymentAmount=Importe del pago, moneda original MulticurrencyAmountHT=Importe (sin IVA), moneda original MulticurrencyAmountTTC=Importe (inc. De impuestos), moneda original MulticurrencyAmountVAT=Importe de la cantidad, moneda original diff --git a/htdocs/langs/es_CL/margins.lang b/htdocs/langs/es_CL/margins.lang new file mode 100644 index 00000000000..4e0e7e2941b --- /dev/null +++ b/htdocs/langs/es_CL/margins.lang @@ -0,0 +1,34 @@ +# Dolibarr language file - Source file is en_US - margins +MarginRate=Tasa de margen +DisplayMarginRates=Mostrar tasas de margen +InputPrice=Precio de entrada +margin=Gestión de márgenes de beneficio +margesSetup=Configuración de administración de márgenes de beneficio +MarginDetails=Detalles de margen +ProductMargins=Márgenes del producto +CustomerMargins=Márgenes de clientes +SalesRepresentativeMargins=Márgenes de representante de ventas +UserMargins=Márgenes de usuario +ProductService=Producto o Servicio +ChooseProduct/Service=Elija producto o servicio +ForceBuyingPriceIfNull=Forzar compra / precio de costo a precio de venta si no se define +ForceBuyingPriceIfNullDetails=Si el precio de compra / costo no está definido, y esta opción es "ON", el margen será cero en línea (precio de compra / costo = precio de venta), de lo contrario ("OFF"), marge será igual al valor predeterminado sugerido. +MARGIN_METHODE_FOR_DISCOUNT=Método de margen para descuentos globales +UseDiscountAsProduct=Como producto +UseDiscountOnTotal=En subtotal +MARGIN_METHODE_FOR_DISCOUNT_DETAILS=Define si un descuento global se trata como un producto, un servicio o solo en el subtotal para el cálculo del margen. +MARGIN_TYPE=Precio de compra / costo sugerido por defecto para el cálculo del margen +MargeType1=Margen en el mejor precio de proveedor +MargeType2=Margen sobre el precio promedio ponderado (WAP) +MargeType3=Margen en el precio de costo +MarginTypeDesc=* Margen al mejor precio de compra = Precio de venta: el mejor precio de proveedor definido en la tarjeta del producto
    * Margen sobre el Precio Promedio Ponderado (WAP) = Precio de Venta - Precio Promedio Ponderado del Producto (WAP) o el mejor precio del vendedor si WAP aún no está definido
    * Margen al precio de costo = Precio de venta: precio de costo definido en la tarjeta del producto o WAP si el precio de costo no está definido, o el mejor precio de proveedor si WAP aún no está definido +CostPrice=Precio de coste +UnitCharges=Cargos por unidad +Charges=Cargos +AgentContactType=Tipo de contacto de agente comercial +AgentContactTypeDetails=Defina qué tipo de contacto (vinculado en las facturas) se utilizará para el informe de margen por contacto / dirección. Tenga en cuenta que la lectura de estadísticas de un contacto no es confiable ya que en la mayoría de los casos el contacto puede no estar definido explícitamente en las facturas. +rateMustBeNumeric=La tasa debe ser un valor numérico +markRateShouldBeLesserThan100=La tasa de marca debe ser inferior a 100 +ShowMarginInfos=Mostrar información de margen +CheckMargins=Detalle de márgenes +MarginPerSaleRepresentativeWarning=El informe de margen por usuario utiliza el enlace entre terceros y representantes de ventas para calcular el margen de cada representante de ventas. Debido a que algunas terceras partes pueden no tener un representante de ventas dedicado y algunas terceras partes pueden estar vinculadas a varios, es posible que algunas cantidades no se incluyan en este informe (si no hay un representante de ventas) y algunas pueden aparecer en diferentes líneas (para cada representante de ventas) . diff --git a/htdocs/langs/es_CL/modulebuilder.lang b/htdocs/langs/es_CL/modulebuilder.lang new file mode 100644 index 00000000000..47b125e00a7 --- /dev/null +++ b/htdocs/langs/es_CL/modulebuilder.lang @@ -0,0 +1,97 @@ +# Dolibarr language file - Source file is en_US - modulebuilder +ModuleBuilderDesc=Esta herramienta solo debe ser utilizada por usuarios o desarrolladores experimentados. Proporciona utilidades para construir o editar tu propio módulo. La documentación para el desarrollo manual alternativo está aquí. +EnterNameOfModuleDesc=Ingrese el nombre del módulo / aplicación para crear sin espacios. Use letras mayúsculas para separar palabras (por ejemplo: MyModule, EcommerceForShop, SyncWithMySystem ...) +EnterNameOfObjectDesc=Ingrese el nombre del objeto para crear sin espacios. Use mayúsculas para separar las palabras (por ejemplo: MyObject, Student, Teacher ...). Se generará el archivo de clase CRUD, pero también el archivo API, páginas para listar / agregar / editar / eliminar objetos y archivos SQL. +ModuleBuilderDesc2=Ruta donde se generan / editan los módulos (primer directorio para módulos externos definidos en %s): %s +ModuleBuilderDesc3=Se encontraron módulos generados/editables: %s +NewObjectInModulebuilder=Nuevo Objeto +ObjectKey=Clave de objeto +FilesForObjectInitialized=Archivos para el nuevo objeto '%s' inicializados +FilesForObjectUpdated=Archivos para el objeto '%s' actualizados (archivos .sql y archivo .class.php) +ModuleBuilderDescdescription=Ingrese aquí toda la información general que describe su módulo. +ModuleBuilderDescspecifications=Puede ingresar aquí una descripción detallada de las especificaciones de su módulo que aún no está estructurada en otras pestañas. Así que tienes a tu alcance todas las reglas a desarrollar. También este contenido de texto se incluirá en la documentación generada (ver la última pestaña). Puede usar el formato Markdown, pero se recomienda usar el formato Asciidoc (comparación entre .md y .asciidoc: http://asciidoctor.org/docs/user-manual/#compared-to-markdown). +ModuleBuilderDescobjects=Defina aquí los objetos que desea administrar con su módulo. Se generará una clase CRUD DAO, archivos SQL, registro de objetos de la página a la lista, para crear / editar / ver un registro y una API. +ModuleBuilderDescmenus=Esta pestaña está dedicada a definir las entradas de menú proporcionadas por su módulo. +ModuleBuilderDesctriggers=Esta es la vista de los desencadenadores proporcionados por su módulo. Para incluir el código ejecutado cuando se inicia un evento empresarial desencadenado, simplemente edite este archivo. +ModuleBuilderDeschooks=Esta pestaña está dedicada a los ganchos. +ModuleBuilderDescwidgets=Esta pestaña está dedicada a administrar / construir widgets. +ModuleBuilderDescbuildpackage=Puede generar aquí un archivo de paquete "listo para distribuir" (un archivo .zip normalizado) de su módulo y un archivo de documentación "listo para distribuir". Simplemente haga clic en el botón para construir el paquete o archivo de documentación. +EnterNameOfModuleToDeleteDesc=Puedes borrar tu módulo. ADVERTENCIA: ¡Se eliminarán todos los archivos de codificación del módulo (generados o creados manualmente) Y los datos y la documentación estructurados! +EnterNameOfObjectToDeleteDesc=Puede eliminar un objeto. ADVERTENCIA: ¡Se eliminarán todos los archivos de codificación (generados o creados manualmente) relacionados con el objeto! +BuildPackage=Paquete de compilación +BuildPackageDesc=Puede generar un paquete zip de su aplicación para que esté listo para distribuirlo en cualquier Dolibarr. También puede distribuirlo o venderlo en un mercado como DoliStore.com . +BuildDocumentation=Documentación de construcción +ModuleIsNotActive=Este módulo aún no está activado. Vaya a %s para hacerlo en vivo o haga clic aquí: +ModuleIsLive=Este módulo ha sido activado. Cualquier cambio puede romper una característica actual en vivo. +DescriptorFile=Archivo descriptivo del módulo +ClassFile=Archivo para la clase DAO CRUD de PHP +ApiClassFile=Archivo para PHP clase API +PageForList=Página de PHP para la lista de registro +PageForCreateEditView=Página de PHP para crear / editar / ver un registro +PageForAgendaTab=Página PHP para pestaña de evento +PageForDocumentTab=Página PHP para la pestaña del documento +PageForNoteTab=Página PHP para la pestaña de notas +PathToModulePackage=Ruta de acceso al paquete de módulo / aplicación +PathToModuleDocumentation=Ruta al archivo del módulo / documentación de la aplicación (%s) +SpaceOrSpecialCharAreNotAllowed=No se permiten espacios ni caracteres especiales. +FileNotYetGenerated=Archivo aún no generado +RegenerateMissingFiles=Generar archivos perdidos +ConfirmDeleteProperty=¿Está seguro de que desea eliminar la propiedad %s ? Esto cambiará el código en la clase de PHP pero también eliminará la columna de la definición de tabla del objeto. +NotNull=No nulo +NotNullDesc=1 = Establecer la base de datos en NOT NULL. -1 = Permitir valores nulos y forzar valor a NULL si está vacío ('' o 0). +SearchAll=Usado para 'buscar todo' +DatabaseIndex=Índice de base +FileAlreadyExists=El archivo %s ya existe +TriggersFile=Archivo para código de disparadores +HooksFile=Archivo para el código de ganchos +ArrayOfKeyValues=Matriz de llave-val +WidgetFile=Archivo de widgets +CSSFile=archivo CSS +JSFile=archivo Javascript +ReadmeFile=Archivo Léame +ChangeLog=Archivo ChangeLog +TestClassFile=Archivo para clase de prueba de unidad de PHP +SqlFile=Archivo Sql +PageForLib=Archivo para la biblioteca común PHP +PageForObjLib=Archivo para la librería PHP dedicada a objetos +SqlFileKey=Archivo Sql para claves +SqlFileKeyExtraFields=Archivo Sql para claves de atributos complementarios. +AnObjectAlreadyExistWithThisNameAndDiffCase=Ya existe un objeto con este nombre y un caso diferente +UseAsciiDocFormat=Puede usar el formato Markdown, pero se recomienda usar el formato Asciidoc (omparison entre .md y .asciidoc: http://asciidoctor.org/docs/user-manual/#compared-to-markdown) +DirScanned=Directorio escaneado +NoTrigger=Sin disparador +NoWidget=Sin widget +ListOfDictionariesEntries=Lista de entradas del diccionario +ListOfPermissionsDefined=Lista de permisos definidos +SeeExamples=Ver ejemplos aquí +EnabledDesc=Condición para tener este campo activo (Ejemplos: 1 o $ conf-> global-> MYMODULE_MYOPTION) +IsAMeasureDesc=¿Se puede acumular el valor de campo para obtener un total en la lista? (Ejemplos: 1 o 0) +SearchAllDesc=¿Se utiliza el campo para realizar una búsqueda desde la herramienta de búsqueda rápida? (Ejemplos: 1 o 0) +LanguageDefDesc=Ingrese en estos archivos, toda la clave y la traducción para cada archivo de idioma. +MenusDefDesc=Define aquí los menús proporcionados por su módulo. +DictionariesDefDesc=Defina aquí los diccionarios proporcionados por su módulo +PermissionsDefDesc=Define aquí los nuevos permisos proporcionados por su módulo. +MenusDefDescTooltip=Los menús proporcionados por su módulo / aplicación se definen en la matriz $ this-> menus en el archivo descriptor del módulo. Puede editar manualmente este archivo o utilizar el editor incrustado.

    Nota: Una vez definidos (y el módulo se reactiva), los menús también están visibles en el editor de menú disponible para los usuarios administradores en %s. +DictionariesDefDescTooltip=Los diccionarios proporcionados por su módulo/aplicación son definidos en el arreglo $this->dictionaries en el archivo de descripción del módulo. Usted puede editar manualmente este archivo o usar el editor incorporado.

    Nota: Una vez definido (y re-activado el módulo), diccionarios sólo estarán visibles en el área de configuración para los usuarios administradores %s. +PermissionsDefDescTooltip=Los permisos proporcionados por su módulo / aplicación se definen en la matriz $ this-> rights en el archivo descriptor del módulo. Puede editar manualmente este archivo o utilizar el editor incrustado.

    Nota: Una vez definidos (y el módulo se reactiva), los permisos son visibles en la configuración de permisos predeterminada %s. +HooksDefDesc=Defina en la propiedad module_parts ['hooks'] , en el descriptor del módulo, el contexto de los enlaces que desea administrar (la búsqueda de ' initHooks puede encontrar la lista de contextos ( 'en el código del núcleo).
    Edite el archivo hook para agregar el código de sus funciones enganchadas (las funciones enganchables se pueden encontrar mediante una búsqueda en' executeHooks 'en el código central). +TriggerDefDesc=Defina en el archivo desencadenante el código que desea ejecutar para cada evento comercial ejecutado. +SeeIDsInUse=Ver ID en uso en su instalación +SeeReservedIDsRangeHere=Ver rango de ID reservados +ToolkitForDevelopers=Toolkit para desarrolladores de Dolibarr +TryToUseTheModuleBuilder=Si tiene conocimientos de SQL y PHP, puede utilizar el asistente de creación de módulos nativos.
    Habilite el módulo %s y use el asistente haciendo clic en en el menú superior derecho.
    Advertencia: esta es una función avanzada para desarrolladores, ¡ no experimente en su sitio de producción! +InitStructureFromExistingTable=Construya la cadena de matriz de estructura de una tabla existente +UseAboutPage=Deshabilitar la página acerca de +UseDocFolder=Desactivar la carpeta de documentación. +UseSpecificReadme=Use un archivo Léame específico +WidgetDesc=Puede generar y editar aquí los widgets que se incrustarán con su módulo. +UseSpecificEditorName =Usa un nombre de editor específico +UseSpecificEditorURL =Usa un editor URL específico +UseSpecificFamily =Usa una familia específica +UseSpecificVersion =Usa una versión inicial específica +ModuleMustBeEnabled=El módulo / aplicación debe ser habilitado primero +IncludeDocGenerationHelp=Si marca esto, se generará algún código para agregar un cuadro "Generar documento" en el registro. +ShowOnCombobox=Mostrar valor en el cuadro combinado +KeyForTooltip=Clave para información sobre herramientas +ForeignKey=Clave Foránea +TypeOfFieldsHelp=Tipos de campos:
    varchar(99), double(24,8), real, text, html, datetime, timestamp, integer, integer:ClassName:relativepath/to/classfile.class.php[:1[:filter]] ('1' significa que podemos agregar a + boton despues de el combo para crear el registro, 'filter' puede ser 'status=1 AND fk_user = __USER_ID AND entity IN (__SHARED_ENTITIES__)' por ejemplo) diff --git a/htdocs/langs/es_CL/mrp.lang b/htdocs/langs/es_CL/mrp.lang new file mode 100644 index 00000000000..c523e0836b6 --- /dev/null +++ b/htdocs/langs/es_CL/mrp.lang @@ -0,0 +1,39 @@ +# Dolibarr language file - Source file is en_US - mrp +Mrp=Ordenes de Fabricación +MO=Orden de Fabricación +MrpSetupPage=Configuración del módulo de MRP +MenuBOM=Facturas de material +LatestBOMModified=Últimas %s Cuentas de materiales modificadas +LatestMOModified=Últimas %s Ordenes de Fabricación modificadas +Bom=Factura de Materiales +BillOfMaterials=Lista de materiales +ListOfBOMs=Lista de listas de materiales - BOM +ListOfManufacturingOrders=Lista de pedidos de fabricación +ProductBOMHelp=Producto a crear con este BOM.
    Nota: Productos con la propiedad 'Naturaleza del producto' = 'Materia Prima' No son visibles en esta lista. +BOMsNumberingModules=Plantillas de numeración de listas de materiales +BOMsModelModule=Lista de Materiales-BOM plantillas de documentos +MOsNumberingModules=Plantilla de numeración MO +MOsModelModule=Plantillas de Documentos MO +FreeLegalTextOnBOMs=Texto libre en el documento de BOM +WatermarkOnDraftBOMs=Marca de agua en el borrador de la lista de materiales +FreeLegalTextOnMOs=Texto Libre en el documento de MO +WatermarkOnDraftMOs=Marca de agua de borrador MO +ConfirmCloneBillOfMaterials=¿Estas seguro de que deseas clonar la Factura de materiales %s ? +ConfirmCloneMo=¿Estas seguro de que deseas clonar la Orden de Fabricación (MO) %s ? +DeleteBillOfMaterials=Eliminar lista de materiales +DeleteMo=Borrar Orden de Fabricación-MO +ConfirmDeleteBillOfMaterials=¿Estás seguro de que deseas eliminar esta lista de materiales? +ConfirmDeleteMo=¿Está seguro de que desea eliminar esta lista de materiales? +QtyToProduce=Cantidad para producir +DateStartPlannedMo=Fecha de inicio prevista +DateEndPlannedMo=Fecha de finalización prevista +KeepEmptyForAsap=Vacío significa 'Tan pronto como sea posible' +EstimatedDurationDesc=Duración estimada para fabricar este producto utilizando esta lista de materiales-BOM +ConfirmValidateBom=¿Está seguro de que desea validar la lista de materiales con la referencia %s? (podrá usarlo para crear nuevos pedidos de fabricación) +ConfirmCloseBom=¿Está seguro de que desea cancelar esta lista de materiales (ya no podrá usarla para crear nuevas órdenes de fabricación)? +ConfirmReopenBom=¿Está seguro de que desea volver a abrir esta lista de materiales (podrá usarla para crear nuevos pedidos de fabricación) +QtyFrozen=Cantidad congelada +QuantityFrozen=Cantidad congelada +BOMLine=Línea de BOM +WarehouseForProduction=Almacén de producción +CreateMO=Crear Orden de Fabricación diff --git a/htdocs/langs/es_CL/multicurrency.lang b/htdocs/langs/es_CL/multicurrency.lang new file mode 100644 index 00000000000..f65650c397a --- /dev/null +++ b/htdocs/langs/es_CL/multicurrency.lang @@ -0,0 +1,15 @@ +# Dolibarr language file - Source file is en_US - multicurrency +ErrorAddRateFail=Error en la velocidad agregada +ErrorAddCurrencyFail=Error en la moneda agregada +multicurrency_syncronize_error=Error de sincronización: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Use la fecha del documento para encontrar la tasa de cambio en lugar de usar la última tasa conocida +multicurrency_useOriginTx=Cuando se crea un objeto a partir de otro, mantenga la tasa original del objeto de origen (de lo contrario, use la última tasa conocida) +CurrencyLayerAccount=API CurrencyLayer +CurrencyLayerAccount_help_to_synchronize=Debe utilizar una cuenta en el sitio web %s para usar esta funcionalidad.
    Obtenga su clave API .
    Si usa una cuenta gratuita, no puede cambiar la moneda de origen (USD de forma predeterminada).
    Si su moneda principal no es el USD, la aplicación la recalculará automáticamente.

    Usted está limitado a 1000 sincronizaciones por mes. +multicurrency_appCurrencySource=Moneda de origen +multicurrency_alternateCurrencySource=Moneda de origen alternativa +CurrenciesUsed=Monedas utilizadas +CurrenciesUsed_help_to_add=Agregue las diferentes monedas y tasas que necesita usar en sus propuestas , pedidos , etc. +MulticurrencyReceived=Recibido, moneda original +MulticurrencyRemainderToTake=Importe restante, moneda original. +MulticurrencyPaymentAmount=Importe del pago, moneda original diff --git a/htdocs/langs/es_CL/oauth.lang b/htdocs/langs/es_CL/oauth.lang new file mode 100644 index 00000000000..779555f86ab --- /dev/null +++ b/htdocs/langs/es_CL/oauth.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - oauth +ConfigOAuth=Configuración de OAuth +ManualTokenGeneration=Generación de tokens manual +TokenManager=Administrador de fichas +IsTokenGenerated=¿Se genera token? +NoAccessToken=No token de acceso guardado en la base de datos local +HasAccessToken=Se generó un token y se guardó en la base de datos local +ToCheckDeleteTokenOnProvider=Haga clic aquí para verificar / eliminar la autorización guardada por %s proveedor OAuth +RequestAccess=Haga clic aquí para solicitar / renovar el acceso y recibir un nuevo token para guardar +DeleteAccess=Haga clic aquí para borrar el token +UseTheFollowingUrlAsRedirectURI=Use la siguiente URL como el URI de redireccionamiento cuando cree sus credenciales con su proveedor de OAuth: +ListOfSupportedOauthProviders=Ingrese las credenciales proporcionadas por su proveedor OAuth2. Sólo se enumeran aquí los proveedores OAuth2 compatibles. Estos servicios pueden ser utilizados por otros módulos que necesitan autenticación OAuth2. +OAuthSetupForLogin=Página para generar una ficha OAuth +SeePreviousTab=Ver la pestaña anterior +OAuthIDSecret=ID de OAuth y secreto +TOKEN_EXPIRED=Token expiró +TOKEN_EXPIRE_AT=Token caduca a las +OAUTH_GOOGLE_NAME=OAuth servicio de Google +OAUTH_GOOGLE_DESC=Vaya a esta página y luego "Credenciales" para crear las credenciales de OAuth +OAUTH_GITHUB_NAME=Servicio OAuth GitHub +OAUTH_GITHUB_ID=Identificación de OAuth GitHub +OAUTH_GITHUB_DESC=Vaya a esta página y luego "Registre una nueva aplicación" para crear las credenciales de OAuth diff --git a/htdocs/langs/es_CL/opensurvey.lang b/htdocs/langs/es_CL/opensurvey.lang new file mode 100644 index 00000000000..647520b51d7 --- /dev/null +++ b/htdocs/langs/es_CL/opensurvey.lang @@ -0,0 +1,41 @@ +# Dolibarr language file - Source file is en_US - opensurvey +Surveys=Centro +OpenSurveyArea=Área de encuestas +AddACommentForPoll=Puede agregar un comentario en la encuesta ... +AddComment=Agregar comentario +ToReceiveEMailForEachVote=Recibe un correo electrónico por cada voto +TypeDate=Escriba la fecha +OpenSurveyStep2=Seleccione sus fechas entre los días libres (gris). Los días seleccionados son verdes. Puede anular la selección de un día seleccionado previamente haciendo clic nuevamente en él. +CopyHoursOfFirstDay=Copia las horas del primer día +TheBestChoice=La mejor opción actualmente es +TheBestChoices=Las mejores opciones actualmente son +OpenSurveyHowTo=Si acepta votar en esta encuesta, debe dar su nombre, elegir los valores que mejor se adapten a sus necesidades y validar con el botón más al final de la línea. +CommentsOfVoters=Comentarios de votantes +ConfirmRemovalOfPoll=¿Seguro que quieres eliminar esta encuesta (y todos los votos)? +UrlForSurvey=URL para comunicarse para obtener un acceso directo a la encuesta +PollOnChoice=Está creando una encuesta para hacer una elección múltiple para una encuesta. Primero ingrese todas las opciones posibles para su encuesta: +CheckBox=Casilla de verificación simple +YesNoList=Lista (vacía / sí / no) +PourContreList=Lista (vacía / a favor / en contra) +AddNewColumn=Agregar nueva columna +TitleChoice=Etiqueta de elección +ExportSpreadsheet=Exportar hoja de cálculo de resultados +NbOfSurveys=Numero de encuestas +NbOfVoters=No. de votantes +PollAdminDesc=Puedes cambiar todas las líneas de votación de esta encuesta con el botón "Editar". También puede eliminar una columna o una línea con %s. También puede agregar una nueva columna con %s. +YouAreInivitedToVote=Estás invitado a votar por esta encuesta +VoteNameAlreadyExists=Este nombre ya fue utilizado para esta encuesta +AddADate=Agrega una fecha +AddStartHour=Agregar hora de inicio +AddEndHour=Agregar hora final +votes=votos) +NoCommentYet=Aún no se han publicado comentarios para esta encuesta +CanSeeOthersVote=Los votantes pueden ver el voto de otras personas +SelectDayDesc=Para cada día seleccionado, puede elegir, o no, las horas de reunión en el siguiente formato:
    vacio
    - "8h", "8H" o "8:00" para dar la hora de inicio de una reunión,
    - "8-11", "8h-11h", "8H-11H" o "8: 00-11: 00" para dar la hora de inicio y finalización de una reunión,
    - "8h15-11h15", "8H15-11H15" o "8: 15-11: 15" para la misma cosa pero con minutos. +ErrorOpenSurveyFillFirstSection=No has llenado la primera sección de la encuesta. +ErrorOpenSurveyOneChoice=Ingrese al menos una opción +ErrorInsertingComment=Hubo un error al insertar tu comentario +MoreChoices=Ingrese más opciones para los votantes +SurveyExpiredInfo=La encuesta se ha cerrado o el retraso en la votación ha expirado. +EmailSomeoneVoted=%s ha llenado una línea.\nPuede encontrar su encuesta en el enlace:\n%s +UserMustBeSameThanUserUsedToVote=Debes haber votado y usar el mismo nombre de usuario que el que solías votar, publicar un comentario diff --git a/htdocs/langs/es_CL/orders.lang b/htdocs/langs/es_CL/orders.lang index 0412e89874e..3667212a64f 100644 --- a/htdocs/langs/es_CL/orders.lang +++ b/htdocs/langs/es_CL/orders.lang @@ -6,7 +6,6 @@ OrderId=Solicitar ID Order=Orden PdfOrderTitle=Orden OrderLine=Fila para ordenar -OrderDate=Fecha de orden OrderDateShort=Fecha de orden OrderToProcess=Orden para procesar NewOrder=Nueva orden @@ -113,9 +112,7 @@ Error_COMMANDE_SUPPLIER_ADDON_NotDefined=Constante COMMANDE_SUPPLIER_ADDON no de Error_COMMANDE_ADDON_NotDefined=Constant COMMANDE_ADDON no definido Error_OrderNotChecked=No hay pedidos para facturar seleccionados PDFEinsteinDescription=A complete order model -PDFEratostheneDescription=A complete order model PDFEdisonDescription=Un modelo de orden simple -PDFProformaDescription=A complete Proforma invoice template CreateInvoiceForThisCustomer=Pagar Pedidos NoOrdersToInvoice=No hay pedidos facturables CloseProcessedOrdersAutomatically=Clasifique "Procesado" todas las órdenes seleccionadas. diff --git a/htdocs/langs/es_CL/other.lang b/htdocs/langs/es_CL/other.lang index aa0e3ce2f9a..0d92dd33451 100644 --- a/htdocs/langs/es_CL/other.lang +++ b/htdocs/langs/es_CL/other.lang @@ -171,6 +171,5 @@ LibraryUsed=Biblioteca utilizada LibraryVersion=Versión de biblioteca NoExportableData=No se pueden exportar datos (no hay módulos con datos exportables cargados o sin permisos) WebsiteSetup=Configuración del sitio web del módulo -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. WEBSITE_KEYWORDS=Palabras clave LinesToImport=Líneas para importar diff --git a/htdocs/langs/es_CL/paybox.lang b/htdocs/langs/es_CL/paybox.lang new file mode 100644 index 00000000000..3049702c5a7 --- /dev/null +++ b/htdocs/langs/es_CL/paybox.lang @@ -0,0 +1,25 @@ +# Dolibarr language file - Source file is en_US - paybox +PayBoxSetup=Configuración del módulo PayBox +PayBoxDesc=Este módulo ofrece páginas para permitir el pago en Paybox por parte de los clientes. Esto se puede utilizar para un pago gratuito o para un pago en un objeto Dolibarr particular (factura, orden, ...) +FollowingUrlAreAvailableToMakePayments=Las siguientes URL están disponibles para ofrecer una página a un cliente para realizar un pago en objetos Dolibarr +WelcomeOnPaymentPage=Bienvenido a nuestro servicio de pago en línea. +ThisScreenAllowsYouToPay=Esta pantalla le permite realizar un pago en línea a %s. +ThisIsInformationOnPayment=Esta es información sobre el pago a hacer +ToComplete=Completar +YourEMail=Correo electrónico para recibir la confirmación del pago +Creditor=Acreedor +YouWillBeRedirectedOnPayBox=Será redirigido a la página segura de Paybox para ingresar su información de tarjeta de crédito +Continue=Siguiente +SetupPayBoxToHavePaymentCreatedAutomatically=Configure su Paybox con url %s para que el pago se cree automáticamente cuando sea validado por Paybox. +YourPaymentHasBeenRecorded=Esta página confirma que su pago ha sido registrado. Gracias. +YourPaymentHasNotBeenRecorded=Su pago NO ha sido registrado y la transacción ha sido cancelada. Gracias. +AccountParameter=Parámetros de cuenta +InformationToFindParameters=Ayuda para encontrar su información de cuenta %s +PAYBOX_CGI_URL_V2=Url del módulo de pago CGI para el pago +CSSUrlForPaymentForm=URL de hoja de estilo CSS para formulario de pago +NewPayboxPaymentReceived=Nuevo pago de Paybox recibido +NewPayboxPaymentFailed=El nuevo pago de Paybox intentó pero falló +PAYBOX_PAYONLINE_SENDEMAIL=Notificación por correo electrónico después del intento de pago (éxito o falla) +PAYBOX_PBX_SITE=Valor para el SITIO PBX +PAYBOX_PBX_RANG=Valor para PBX Rang +PAYBOX_PBX_IDENTIFIANT=Valor para ID de PBX diff --git a/htdocs/langs/es_CL/paypal.lang b/htdocs/langs/es_CL/paypal.lang new file mode 100644 index 00000000000..e05b97afd9d --- /dev/null +++ b/htdocs/langs/es_CL/paypal.lang @@ -0,0 +1,28 @@ +# Dolibarr language file - Source file is en_US - paypal +PaypalSetup=Configuración del módulo de PayPal +PaypalDesc=Este módulo permite el pago por los clientes a través de PayPal . Esto se puede utilizar para un pago ad-hoc o para un pago relacionado con un objeto Dolibarr (factura, pedido, ...) +PaypalOrCBDoPayment=Pague con PayPal (Tarjeta o PayPal) +PaypalDoPayment=Pagar con PayPal +PAYPAL_API_SANDBOX=Prueba de modo / sandbox +PAYPAL_API_USER=Nombre de usuario API +PAYPAL_API_PASSWORD=Contraseña API +PAYPAL_API_INTEGRAL_OR_PAYPALONLY=Oferta de pago "integral" (Tarjeta de crédito + PayPal) o "PayPal" solamente +PaypalModeOnlyPaypal=Solo PayPal +ThisIsTransactionId=Este es el id de la transacción: %s +PAYPAL_ADD_PAYMENT_URL=Incluya la url de pago de PayPal cuando envíe un documento por correo electrónico +NewOnlinePaymentFailed=Se intentó nuevo pago en línea pero falló +ONLINE_PAYMENT_SENDEMAIL=Dirección de correo electrónico para notificaciones después de cada intento de pago (para éxito y falla) +ReturnURLAfterPayment=URL de devolución después del pago +ValidationOfOnlinePaymentFailed=La validación del pago en línea falló +PaymentSystemConfirmPaymentPageWasCalledButFailed=La página de confirmación de pago fue llamada por el sistema de pago devuelto por un error +SetExpressCheckoutAPICallFailed=La llamada a la API SetExpressCheckout falló. +DoExpressCheckoutPaymentAPICallFailed=La llamada a DoExpressCheckoutPayment API falló. +ShortErrorMessage=Mensaje de error corto +ErrorSeverityCode=Código de Severidad de Error +OnlinePaymentSystem=Sistema de pago en línea +PaypalLiveEnabled=Modo "en vivo" de PayPal habilitado (de lo contrario, modo de prueba / sandbox) +PaypalImportPayment=Importar pagos de PayPal +PostActionAfterPayment=Publicar acciones después de los pagos +ARollbackWasPerformedOnPostActions=Se realizó una reversión en todas las acciones de publicación. Debe completar las acciones de publicación manualmente si son necesarias. +ValidationOfPaymentFailed=La validación del pago ha fallado +PayPalBalance=Credito paypal diff --git a/htdocs/langs/es_CL/printing.lang b/htdocs/langs/es_CL/printing.lang new file mode 100644 index 00000000000..5fbc9ffaa6c --- /dev/null +++ b/htdocs/langs/es_CL/printing.lang @@ -0,0 +1,40 @@ +# Dolibarr language file - Source file is en_US - printing +Module64000Name=Impresión directa +Module64000Desc=Habilitar el sistema de impresión directa +PrintingSetup=Configuración del sistema de impresión directa +PrintingDesc=Este módulo agrega un botón Imprimir a varios módulos para permitir que los documentos se impriman directamente en una impresora sin necesidad de abrir el documento en otra aplicación. +MenuDirectPrinting=Trabajos de impresión directa +PrintingDriverDesc=Variables de configuración para imprimir el controlador. +ListDrivers=Lista de controladores +PrintTestDesc=Lista de impresoras. +FileWasSentToPrinter=El archivo %s fue enviado a la impresora +PleaseSelectaDriverfromList=Seleccione un controlador de la lista. +PleaseConfigureDriverfromList=Por favor, configure el controlador seleccionado de la lista. +SetupDriver=Configuración del controlador +TargetedPrinter=Impresora dirigida +PRINTGCP_TOKEN_ACCESS=Token OAuth de Google Cloud Print +PrintGCPDesc=Este controlador permite enviar documentos directamente a una impresora utilizando Google Cloud Print. +GCP_displayName=Nombre para mostrar +GCP_Id=ID de impresora +GCP_OwnerName=Nombre del dueño +GCP_State=Estado de la impresora +GCP_connectionStatus=Estado en línea +GCP_Type=Tipo de impresora +PrintIPPDesc=Este controlador permite el envío de documentos directamente a una impresora. Requiere un sistema Linux con CUPS instalado. +PRINTIPP_HOST=Servidor de impresión +PRINTIPP_USER=Iniciar sesión +NoDefaultPrinterDefined=No hay una impresora predeterminada definida +DefaultPrinter=Impresora predeterminada +IPP_Uri=Impresora Uri +IPP_Name=Nombre de la impresora +IPP_State=Estado de la impresora +IPP_State_reason1=Razón del estado1 +IPP_Media=Medios de impresión +IPP_Supported=Tipo de medio +DirectPrintingJobsDesc=Esta página enumera los trabajos de impresión encontrados para las impresoras disponibles. +GoogleAuthNotConfigured=Google OAuth no ha sido configurado. Habilite el módulo OAuth y establezca un ID de Google / Secreto. +GoogleAuthConfigured=Las credenciales de Google OAuth se encontraron en la configuración del módulo OAuth. +PrintingDriverDescprintgcp=Variables de configuración para imprimir el controlador Google Cloud Print. +PrintingDriverDescprintipp=Variables de configuración para imprimir Copas de conductor. +PrintTestDescprintgcp=Lista de impresoras para Google Cloud Print. +PrintTestDescprintipp=Lista de impresoras para tazas. diff --git a/htdocs/langs/es_CL/productbatch.lang b/htdocs/langs/es_CL/productbatch.lang new file mode 100644 index 00000000000..2b603794eab --- /dev/null +++ b/htdocs/langs/es_CL/productbatch.lang @@ -0,0 +1,20 @@ +# Dolibarr language file - Source file is en_US - productbatch +ManageLotSerial=Use el número de lote / serie +ProductStatusOnBatch=Sí (se requiere lote / serie) +ProductStatusNotOnBatch=No (lote / serie no utilizada) +Batch=Lote / serie +atleast1batchfield=Fecha de caducidad o fecha de caducidad o Número de lote / serie +batch_number=Número de lote / serie +BatchNumberShort=Lote / serie +SellByDate=Fecha de caducidad +DetailBatchNumber=Detalles de lote / serie +printBatch=Lote / Serie: %s +printEatby=Comer por: %s +printSellby=Vende por: %s +printQty=Cantidad: %d +AddDispatchBatchLine=Agregue una línea para el despacho de vida útil +WhenProductBatchModuleOnOptionAreForced=Cuando el módulo Lot / Serial está activado, la disminución automática de stock se ve obligada a "Disminuir existencias reales en la validación de envío" y el modo de aumento automático se fuerza a "Aumentar las existencias reales en el envío manual a almacenes" y no se puede editar. Se pueden definir otras opciones como desee. +ProductDoesNotUseBatchSerial=Este producto no usa lote / número de serie +ProductLotSetup=Configuración del lote del módulo / serie +ShowCurrentStockOfLot=Muestra el stock actual para el producto / lote de pareja +ShowLogOfMovementIfLot=Mostrar registro de movimientos para el producto / lote de pareja diff --git a/htdocs/langs/es_CL/products.lang b/htdocs/langs/es_CL/products.lang index ef999f10803..68a62a9257c 100644 --- a/htdocs/langs/es_CL/products.lang +++ b/htdocs/langs/es_CL/products.lang @@ -50,7 +50,6 @@ ErrorProductAlreadyExists=Un producto con referencia %s ya existe. ErrorProductBadRefOrLabel=Valor incorrecto para referencia o etiqueta. ErrorProductClone=Hubo un problema al intentar clonar el producto o servicio. ErrorPriceCantBeLowerThanMinPrice=Error, el precio no puede ser inferior al precio mínimo. -Suppliers=Vendedores SupplierRef=SKU del proveedor ProductsAndServicesArea=Área de productos y servicios ProductsArea=Área de producto @@ -109,7 +108,6 @@ CustomerPrices=Precios de cliente SuppliersPrices=Precios del proveedor SuppliersPricesOfProductsOrServices=Precios de venta (de productos o servicios). CustomCode=Código de Aduanas / Productos / HS -Nature=Naturaleza del producto (material / acabado) ProductCodeModel=Plantilla de referencia de producto ServiceCodeModel=Plantilla de referencia de servicio AlwaysUseNewPrice=Utilice siempre el precio actual del producto/servicio diff --git a/htdocs/langs/es_CL/projects.lang b/htdocs/langs/es_CL/projects.lang index b21b59af6e9..c6ee5dbe200 100644 --- a/htdocs/langs/es_CL/projects.lang +++ b/htdocs/langs/es_CL/projects.lang @@ -51,7 +51,6 @@ ProgressCalculated=Progreso calculado Time=Hora ListOfTasks=Lista de tareas GoToListOfTimeConsumed=Ir a la lista de tiempo consumido -GoToListOfTasks=Mostrar como lista ListProposalsAssociatedProject=Listado de las propuestas comerciales relacionadas con el proyecto. ListOrdersAssociatedProject=Lista de pedidos relacionados con el proyecto. ListInvoicesAssociatedProject=Listado de facturas de clientes relacionadas con el proyecto. @@ -132,7 +131,6 @@ DocumentModelTimeSpent=Plantilla de informe de proyecto para el tiempo empleado. PlannedWorkload=Carga de trabajo planificada ProjectReferers=Artículos relacionados ProjectMustBeValidatedFirst=El proyecto debe ser validado primero -FirstAddRessourceToAllocateTime=Asignar un recurso de usuario a la tarea para asignar tiempo TimeAlreadyRecorded=Este es el tiempo que ya se ha registrado para esta tarea / día y el usuario %s NoUserAssignedToTheProject=No hay usuarios asignados a este proyecto. TimeSpentBy=Tiempo consumido por diff --git a/htdocs/langs/es_CL/propal.lang b/htdocs/langs/es_CL/propal.lang index 58374a1467b..51a8162c256 100644 --- a/htdocs/langs/es_CL/propal.lang +++ b/htdocs/langs/es_CL/propal.lang @@ -60,7 +60,6 @@ TypeContact_propal_external_BILLING=Contacto cliente de facturación cotización TypeContact_propal_external_CUSTOMER=Contacto cliente seguimiento cotización TypeContact_propal_external_SHIPPING=Contacto con el cliente para la entrega DocModelAzurDescription=A complete proposal model -DocModelCyanDescription=A complete proposal model DefaultModelPropalCreate=Creación de modelo por defecto DefaultModelPropalToBill=Modelo por defecto al cerrar una cotización (a facturar) DefaultModelPropalClosed=Modelo por defecto al cerrar una cotización (no facturado) diff --git a/htdocs/langs/es_CL/receiptprinter.lang b/htdocs/langs/es_CL/receiptprinter.lang new file mode 100644 index 00000000000..1f60b9358e9 --- /dev/null +++ b/htdocs/langs/es_CL/receiptprinter.lang @@ -0,0 +1,36 @@ +# Dolibarr language file - Source file is en_US - receiptprinter +ReceiptPrinterSetup=Configuración del módulo ReceiptPrinter +PrinterAdded=Impresora %s agregada +TestSentToPrinter=Prueba enviada a la impresora %s +ReceiptPrinter=Impresoras de recibo +ReceiptPrinterDesc=Configuración de impresoras de recibos +ReceiptPrinterTypeDesc=Descripción del tipo de impresora de recibo +ReceiptPrinterProfileDesc=Descripción del perfil de la impresora de recibos +ListPrinters=Lista de impresoras +SetupReceiptTemplate=Configuración de plantilla +CONNECTOR_DUMMY=Impresora simulada +CONNECTOR_FILE_PRINT=Impresora local +CONNECTOR_DUMMY_HELP=Impresora falsa para prueba, no hace nada +CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x: 9100 +CONNECTOR_FILE_PRINT_HELP=/ dev / usb / lp0, / dev / usb / lp1 +CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt\nPrinter +PROFILE_EPOSTEP=Perfil de Epos Tep +PROFILE_STAR=Perfil de estrella +PROFILE_DEFAULT_HELP=Perfil predeterminado adecuado para impresoras Epson +PROFILE_SIMPLE_HELP=Perfil simple sin gráficos +PROFILE_EPOSTEP_HELP=Perfil de punta épica +PROFILE_P822D_HELP=Perfil P822D Sin gráficos +PROFILE_STAR_HELP=Perfil de estrella +DOL_ALIGN_LEFT=Texto de alineación a la izquierda +DOL_ALIGN_CENTER=Texto central +DOL_ALIGN_RIGHT=Alinear el texto a la derecha +DOL_USE_FONT_A=Use la fuente A de la impresora +DOL_USE_FONT_B=Use la fuente B de la impresora +DOL_USE_FONT_C=Use la fuente C de la impresora +DOL_PRINT_BARCODE=Imprimir código de barras +DOL_PRINT_BARCODE_CUSTOMER_ID=Imprimir identificación del cliente del código de barras +DOL_CUT_PAPER_FULL=Corte el boleto por completo +DOL_CUT_PAPER_PARTIAL=Corte el boleto parcialmente +DOL_OPEN_DRAWER=Abrir cajón de efectivo +DOL_ACTIVATE_BUZZER=Activar zumbador +DOL_PRINT_QRCODE=Imprimir código QR diff --git a/htdocs/langs/es_CL/resource.lang b/htdocs/langs/es_CL/resource.lang new file mode 100644 index 00000000000..6e295126b59 --- /dev/null +++ b/htdocs/langs/es_CL/resource.lang @@ -0,0 +1,19 @@ +# Dolibarr language file - Source file is en_US - resource +ConfirmDeleteResourceElement=Confirma eliminar el recurso para este elemento +NoResourceLinked=Sin recursos vinculados +ResourcePageIndex=Lista de recursos +ResourceCard=Tarjeta de recursos +AddResource=Crea un recurso +ResourceFormLabel_ref=Nombre del recurso +ResourceFormLabel_description=Descripción del recurso +ResourcesLinkedToElement=Recursos vinculados al elemento +ShowResource=Mostrar recurso +ResourceElementPage=Recursos de elementos +ResourceCreatedWithSuccess=Recurso creado con éxito +RessourceLineSuccessfullyDeleted=La línea de recursos eliminó correctamente +RessourceLineSuccessfullyUpdated=La línea de recursos se actualizó correctamente +ResourceLinkedWithSuccess=Recurso vinculado con el éxito +ConfirmDeleteResource=Confirmar para eliminar este recurso +RessourceSuccessfullyDeleted=Recurso borrado con éxito +IdResource=Recurso Id +ResourceTypeCode=Código de tipo de recurso diff --git a/htdocs/langs/es_CL/salaries.lang b/htdocs/langs/es_CL/salaries.lang new file mode 100644 index 00000000000..074abf0685a --- /dev/null +++ b/htdocs/langs/es_CL/salaries.lang @@ -0,0 +1,11 @@ +# Dolibarr language file - Source file is en_US - salaries +SALARIES_ACCOUNTING_ACCOUNT_PAYMENT=Cuenta de contabilidad utilizada para terceros usuarios +SALARIES_ACCOUNTING_ACCOUNT_PAYMENT_Desc=La cuenta de contabilidad dedicada definida en la tarjeta de usuario se usará solo para la contabilidad de Libro mayor auxiliar. Este se usará para el Libro mayor y como valor predeterminado de la contabilidad del Libro mayor auxiliar si no se define una cuenta de usuario dedicada en el usuario. +SALARIES_ACCOUNTING_ACCOUNT_CHARGE=Cuenta de contabilidad por defecto para pagos de salarios +NewSalaryPayment=Nuevo pago de salario +SalariesPayments=Sueldos pagos +ShowSalaryPayment=Mostrar pago de sueldo +THM=Promedio de tarifa por hora +TJM=Tarifa diaria promedio +THMDescription=Este valor se puede usar para calcular el costo del tiempo consumido en un proyecto ingresado por los usuarios si se usa el proyecto de módulo +TJMDescription=Este valor es actualmente solo para información y no se utiliza para ningún cálculo diff --git a/htdocs/langs/es_CL/sendings.lang b/htdocs/langs/es_CL/sendings.lang new file mode 100644 index 00000000000..f250e751edb --- /dev/null +++ b/htdocs/langs/es_CL/sendings.lang @@ -0,0 +1,48 @@ +# Dolibarr language file - Source file is en_US - sendings +Receivings=Recibos de entrega +SendingsArea=Área de envíos +ListOfSendings=Lista de envíos +StatisticsOfSendings=Estadísticas para envíos +NbOfSendings=Cantidad de envios +SendingCard=Tarjeta de envío +QtyShipped=Cantidad enviada +QtyShippedShort=Qty enviar. +QtyPreparedOrShipped=Cantidad preparada o enviada +QtyToShip=Cantidad para enviar +QtyToReceive=Cantidad para recibir +QtyReceived=Cantidad recibida +QtyInOtherShipments=Cantidad en otros envíos +KeepToShip=Permanecer en el barco +KeepToShipShort=Permanecer +OtherSendingsForSameOrder=Otros envíos para esta orden +SendingsAndReceivingForSameOrder=Envíos y recibos para esta orden +SendingsToValidate=Envíos para validar +StatusSendingCanceled=Cancelado +StatusSendingValidated=Validado (productos para enviar o ya enviados) +StatusSendingProcessed=Procesada +StatusSendingProcessedShort=Procesada +SendingSheet=Hoja de envío +ConfirmDeleteSending=¿Seguro que quieres eliminar este envío? +ConfirmValidateSending=¿Estas seguro que quieres validar este envió con referencia %s? +ConfirmCancelSending=¿Seguro que quieres cancelar este envío? +WarningNoQtyLeftToSend=Advertencia, no hay productos esperando ser enviados. +StatsOnShipmentsOnlyValidated=Estadísticas realizadas en envíos solo validadas. La fecha utilizada es la fecha de validación del envío (no siempre se conoce la fecha de entrega planificada). +DateDeliveryPlanned=Fecha planificada de entrega +RefDeliveryReceipt=Ref. Recibo de entrega +StatusReceipt=Recibo de entrega del estado +DateReceived=Fecha de entrega recibida +SendShippingByEMail=Enviar envío por correo electrónico +SendShippingRef=Presentación del envío %s +ActionsOnShipping=Eventos en el envío +LinkToTrackYourPackage=Enlace para rastrear tu paquete +ShipmentCreationIsDoneFromOrder=Por el momento, la creación de un nuevo envio se realiza desde el módulo comercial en pedido de cliente. +ShipmentLine=Línea de envío +ProductQtyInShipmentAlreadySent=Cantidad de producto de pedido abierto ya enviado +NoProductToShipFoundIntoStock=No hay productos para enviar encontrados en el almacén %s . Corregir el stock o volver a elegir otro almacén. +WeightVolShort=Peso / Vol. +ValidateOrderFirstBeforeShipment=Primero debe validar la orden antes de poder hacer envíos. +DocumentModelTyphon=Modelo de documento más completo para recibos de entrega (logotipo ...) +Error_EXPEDITION_ADDON_NUMBER_NotDefined=Constante EXPEDITION_ADDON_NUMBER no definido +SumOfProductVolumes=Suma de volúmenes de productos +SumOfProductWeights=Suma de los pesos del producto +DetailWarehouseFormat=W: %s (Cantidad: %d) diff --git a/htdocs/langs/es_CL/sms.lang b/htdocs/langs/es_CL/sms.lang new file mode 100644 index 00000000000..bdc248785d8 --- /dev/null +++ b/htdocs/langs/es_CL/sms.lang @@ -0,0 +1,33 @@ +# Dolibarr language file - Source file is en_US - sms +SmsSetup=Configuración de SMS +SmsDesc=Esta página le permite definir opciones globales en las características de SMS +SmsCard=Tarjeta de SMS +AllSms=Todas las campañas de SMS +SmsTargets=Objetivos +SmsRecipients=Objetivos +SmsRecipient=Objetivo +SmsFrom=Remitente +SmsTo=Objetivo +SmsTopic=Tema de SMS +SmsMessage=Mensaje SMS +ListOfSms=Listar campañas de SMS +NewSms=Nueva campaña de SMS +DeleteSms=Eliminar campaña de SMS +DeleteASms=Eliminar una campaña de SMS +PreviewSms=Previo SMS +TestSms=Prueba de SMS +ApproveSms=Aprobar sms +SmsStatusSent=Expedido +SmsStatusSentCompletely=Enviado por completo +SmsSuccessfulySent=SMS enviados correctamente (desde %s a %s) +ErrorSmsRecipientIsEmpty=El número de objetivo está vacío +WarningNoSmsAdded=No hay un nuevo número de teléfono para agregar a la lista de objetivos +ConfirmValidSms=¿Confirma usted la validación de esta campaña? +NbOfUniqueSms=No. de números de teléfono únicos +NbOfSms=No. de numeros telefonicos +SmsInfoCharRemain=No. de personajes restantes +SmsInfoNumero=(formato internacional es decir: +33899701761) +DelayBeforeSending=Retraso antes del envío (minutos) +SmsNoPossibleSenderFound=No hay remitente disponible Verifique la configuración de su proveedor de SMS. +SmsNoPossibleRecipientFound=Sin objetivo disponible Verifique la configuración de su proveedor de SMS. +DisableStopIfSupported=Deshabilitar el mensaje STOP (si es compatible) diff --git a/htdocs/langs/es_CL/stripe.lang b/htdocs/langs/es_CL/stripe.lang new file mode 100644 index 00000000000..0930c555e3e --- /dev/null +++ b/htdocs/langs/es_CL/stripe.lang @@ -0,0 +1,37 @@ +# Dolibarr language file - Source file is en_US - stripe +StripeSetup=Configuración del módulo de banda +StripeDesc=Ofrezca a los clientes una página de pago en línea de Stripe para pagos con tarjetas de crédito / cebit a través de Stripe . Esto se puede usar para permitir que sus clientes realicen pagos ad-hoc o para pagos relacionados con un objeto Dolibarr en particular (factura, pedido, ...) +STRIPE_PAYONLINE_SENDEMAIL=Notificación por correo electrónico después de un intento de pago (éxito o falla) +StripeDoPayment=Pagar con la raya +YouWillBeRedirectedOnStripe=Se te redirigirá a la página de Banda segura para ingresar la información de tu tarjeta de crédito +ToOfferALinkForOnlinePayment=URL para el pago %s +ToOfferALinkForOnlinePaymentOnOrder=URL para ofrecer una %s pagina de pago en línea para una Orden de Ventas +ToOfferALinkForOnlinePaymentOnInvoice=URL para ofrecer una %s pagina de pago en linea para una Factura de Cliente +ToOfferALinkForOnlinePaymentOnContractLine=URL para ofrecer una %s pagina de pago en línea para una línea de contrato +ToOfferALinkForOnlinePaymentOnFreeAmount=URL para ofrecer una %s página de pago en línea de cualquier cantidad sin objeto existente +ToOfferALinkForOnlinePaymentOnMemberSubscription=URL para ofrecer una %s página de pago en línea para una suscripción de miembro +ToOfferALinkForOnlinePaymentOnDonation=URL para ofrecer una %s página de pago en línea para el pago de una donación +YouCanAddTagOnUrl=También puede agregar el parámetro url &tag=value a cualquiera de esos URL (obligatorio solo para pagos no vinculados a un objeto) para agregar su propia etiqueta de comentario de pago.
    Para la URL de pagos sin objeto existente, también puede agregar el parámetro &noidempotency=1 por lo que el mismo enlace con la misma etiqueta se puede usar varias veces (algunos modos de pago pueden limitar el pago a 1 por cada enlace diferente sin este parámetro) +SetupStripeToHavePaymentCreatedAutomatically=Configure su Stripe con url %s para que el pago se cree automáticamente cuando se valida con Stripe. +STRIPE_CGI_URL_V2=Módulo de CGI de Url of Stripe para el pago +NewStripePaymentFailed=Se intentó el nuevo pago de Stripe pero falló +STRIPE_TEST_SECRET_KEY=Clave de prueba secreta +STRIPE_TEST_PUBLISHABLE_KEY=Clave de prueba publicable +STRIPE_LIVE_SECRET_KEY=Clave secreta en vivo +STRIPE_LIVE_PUBLISHABLE_KEY=Clave en vivo publicable +StripeLiveEnabled=Stripe live enabled (de lo contrario, prueba / modo de espacio aislado) +StripeImportPayment=Importar pagos en franja +ExampleOfTestCreditCard=Ejemplo de tarjeta de crédito para la prueba: %s => válido, %s => error CVC, %s => caducado, %s => cargo falla +StripeGateways=Pasarelas de banda +BankAccountForBankTransfer=Cuenta bancaria para pagos de fondos +StripeAccount=Cuenta de banda +StripeChargeList=Lista de cargas de la raya +StripeTransactionList=Lista de transacciones de banda +StripeCustomerId=Identificación de cliente de Stripe +StripePaymentModes=Modos de pago de banda +StripeID=Identificación de la raya +ConfirmDeleteCard=¿Seguro que quieres eliminar esta tarjeta de crédito o débito? +ShowInStripe=Mostrar en raya +StripeUserAccountForActions=Cuenta de usuario para usar para la notificación por correo electrónico de algunos eventos de Stripe (pagos de Stripe) +StripePayoutList=Lista de pagos de la raya +ToOfferALinkForLiveWebhook=Enlace para configurar Stripe WebHook para llamar a la IPN (modo en vivo) diff --git a/htdocs/langs/es_CL/suppliers.lang b/htdocs/langs/es_CL/suppliers.lang new file mode 100644 index 00000000000..454867a7125 --- /dev/null +++ b/htdocs/langs/es_CL/suppliers.lang @@ -0,0 +1,39 @@ +# Dolibarr language file - Source file is en_US - suppliers +Suppliers=Vendedores +SuppliersInvoice=Factura del proveedor +ShowSupplierInvoice=Mostrar factura del vendedor +NewSupplier=Nuevo vendedor +ListOfSuppliers=Lista de proveedores +ShowSupplier=Mostrar vendedor +OrderDate=Fecha de orden +TotalBuyingPriceMinShort=Total de subproductos de precios de compra +TotalSellingPriceMinShort=Total de subproductos precios de venta +AddSupplierPrice=Agregar precio de compra +ChangeSupplierPrice=Cambiar el precio de compra +SupplierPrices=Precios del proveedor +ReferenceSupplierIsAlreadyAssociatedWithAProduct=Esta referencia de proveedor ya está asociada con un producto: %s +NoRecordedSuppliers=Ningún vendedor registrado +SupplierPayment=Pago del proveedor +SuppliersArea=Área del vendedor +RefSupplierShort=Ref. vendedor +ExportDataset_fournisseur_1=Facturas de proveedores y detalles de las facturas. +ExportDataset_fournisseur_2=Facturas y pagos del vendedor +ExportDataset_fournisseur_3=Pedidos de compra y detalles del pedido +ApproveThisOrder=Aprobar esta orden +ConfirmApproveThisOrder=¿Seguro que quieres aprobar la orden %s? +DenyingThisOrder=Negar esta orden +ConfirmDenyingThisOrder=¿Seguro que quieres denegar este pedido %s? +ConfirmCancelThisOrder=¿Seguro que quieres cancelar esta orden %s? +AddSupplierOrder=Crear orden de compra +ListOfSupplierProductForSupplier=Lista de productos y precios de proveedor %s +SentToSuppliers=Enviado a los vendedores +ListOfSupplierOrders=Lista de órdenes de compra +MenuOrdersSupplierToBill=Órdenes de compra para facturar +NbDaysToDelivery=Plazo de entrega (días) +DescNbDaysToDelivery=El mayor retraso de entrega de los productos de este pedido. +SupplierReputation=Reputación del vendedor +DoNotOrderThisProductToThisSupplier=No ordene +NotTheGoodQualitySupplier=Baja calidad +AllProductServicePrices=Todos los precios de productos/servicios +AllProductReferencesOfSupplier=Todas las referencias de productos / servicios del vendedor. +BuyingPriceNumShort=Precios del proveedor diff --git a/htdocs/langs/es_CL/trips.lang b/htdocs/langs/es_CL/trips.lang new file mode 100644 index 00000000000..19aba371335 --- /dev/null +++ b/htdocs/langs/es_CL/trips.lang @@ -0,0 +1,101 @@ +# Dolibarr language file - Source file is en_US - trips +ShowExpenseReport=Mostrar informe de gastos +Trips=Reporte de gastos +TripsAndExpenses=Informes de gastos +TripsAndExpensesStatistics=Estadísticas de informes de gastos +TripCard=Boleta de calificaciones de gastos +AddTrip=Crear informe de gastos +ListOfTrips=Lista de informes de gastos +ListOfFees=Lista de tarifas +TypeFees=Tipos de tarifas +ShowTrip=Mostrar informe de gastos +NewTrip=Nuevo informe de gastos +LastExpenseReports=Últimos informes de gastos %s +CompanyVisited=Compañía / organización visitada +FeesKilometersOrAmout=Cantidad o kilómetros +DeleteTrip=Eliminar informe de gastos +ConfirmDeleteTrip=¿Estás seguro de que deseas eliminar este informe de gastos? +ListTripsAndExpenses=Lista de informes de gastos +ExpensesArea=Área de informes de gastos +ExpenseReportWaitingForApproval=Se ha enviado un nuevo informe de gastos para su aprobación +ExpenseReportWaitingForApprovalMessage=Se ha enviado un nuevo informe de gastos y está en espera de aprobación.
    - Usuario: %s
    - Período: %s
    Haga clic aquí para validar: %s +ExpenseReportWaitingForReApproval=Un informe de gastos ha sido enviado para su nueva aprobación +ExpenseReportWaitingForReApprovalMessage=Se ha enviado un informe de gastos y está a la espera de su nueva aprobación.
    %s, usted se negó a aprobar el informe de gastos por este motivo: %s.
    Se ha propuesto una nueva versión y está esperando su aprobación.
    - Usuario: %s
    - Período: %s
    Haga clic aquí para validar: %s +ExpenseReportApproved=Se aprobó un informe de gastos +ExpenseReportApprovedMessage=Se aprobó el informe de gastos %s.
    - Usuario: %s
    - Aprobado por: %s
    Haga clic aquí para ver el informe de gastos: %s +ExpenseReportRefused=Se rechazó un informe de gastos +ExpenseReportRefusedMessage=Se rechazó el informe de gastos %s.
    - Usuario: %s
    - Rechazado por: %s
    - Motivo de denegación: %s
    Haga clic aquí para ver el informe de gastos: %s +ExpenseReportCanceled=Se canceló un informe de gastos +ExpenseReportCanceledMessage=Se canceló el informe de gastos %s.
    - Usuario: %s
    - Cancelado por: %s
    - Motivo de cancelación: %s
    Haga clic aquí para ver el informe de gastos: %s +ExpenseReportPaid=Se pagó un informe de gastos +ExpenseReportPaidMessage=Se pagó el informe de gastos %s.
    - Usuario: %s
    - Pagado por: %s
    Haga clic aquí para ver el informe de gastos: %s +TripId=Informe de gastos Id +AnyOtherInThisListCanValidate=Persona para informar para validación. +TripSociete=Empresa de información +TripNDF=Informe de gastos de información +PDFStandardExpenseReports=Plantilla estándar para generar un documento PDF para el informe de gastos +ExpenseReportLine=Línea de informe de gastos +TF_LUNCH=Almuerzo +TF_BUS=Autobús +EX_FUE=CV de combustible +EX_PAR=Aparcamiento CV +EX_TAX=Varios impuestos +EX_SUM=Suministro de mantenimiento +EX_CAR=Alquiler de coches +EX_CUR=Clientes recibiendo +EX_OTR=Otro que recibe +EX_CAM=Mantenimiento y reparación de CV +EX_EMM=Comida de los empleados +EX_GUM=Comida de los invitados +EX_FUE_VP=Combustible PV +EX_PAR_VP=Aparcamiento PV +EX_CAM_VP=Mantenimiento y reparación de PV +UploadANewFileNow=Sube un nuevo documento ahora +Error_EXPENSEREPORT_ADDON_NotDefined=Error, la regla para la referencia de numeración del informe de gastos no se definió en la configuración del módulo 'Informe de gastos' +ErrorDoubleDeclaration=Ha declarado otro informe de gastos en un rango de fechas similar. +AucuneLigne=Aún no hay un informe de gastos declarado +VALIDATOR=Usuario responsable de la aprobación +AUTHOR=Grabado por +REFUSEUR=Negado por +DATE_REFUS=Negar la fecha +DATE_CANCEL=Fecha de cancelación +ExpenseReportRef=Ref. informe de gastos +ValidateAndSubmit=Validar y enviar para su aprobación +ValidatedWaitingApproval=Validado (esperando aprobación) +NOT_AUTHOR=Usted no es el autor de este informe de gastos. Operación cancelada +ConfirmRefuseTrip=¿Seguro que quieres negar este informe de gastos? +ValideTrip=Aprobar informe de gastos +ConfirmValideTrip=¿Seguro que quieres aprobar este informe de gastos? +PaidTrip=Pague un informe de gastos +ConfirmPaidTrip=¿Está seguro de que desea cambiar el estado de este informe de gastos a "Pagado"? +ConfirmCancelTrip=¿Estás seguro de que deseas cancelar este informe de gastos? +BrouillonnerTrip=Mueve el informe de gastos al estado "Borrador" +ConfirmBrouillonnerTrip=¿Está seguro de que desea mover este informe de gastos al estado "Borrador"? +SaveTrip=Validar informe de gastos +ConfirmSaveTrip=¿Seguro que quieres validar este informe de gastos? +NoTripsToExportCSV=Ningún informe de gastos para exportar para este período. +ExpenseReportPayment=Pago del informe de gastos +ExpenseReportsToApprove=Informes de gastos para aprobar +ExpenseReportsToPay=Informes de gastos para pagar +ConfirmCloneExpenseReport=¿Seguro que quieres clonar este informe de gastos? +ExpenseReportsIk=Informe de gastos índice milles +ExpenseReportsRules=Reglas de informe de gastos +ExpenseReportIkDesc=Puede modificar el cálculo de los gastos por kilómetro por categoría y rango a los que están previamente definidos. d es la distancia en kilómetros +ExpenseReportRulesDesc=Puede crear o actualizar cualquier regla de cálculo. Esta parte se usará cuando el usuario cree un nuevo informe de gastos +expenseReportOffset=Compensar +expenseReportTotalForFive=Ejemplo con d = 5 +expenseReportCatDisabled=Categoría desactivada: consulte el diccionario c_exp_tax_cat +expenseReportRangeDisabled=Rango deshabilitado: consulte el dictionay de c_exp_tax_range +expenseReportPrintExample=desplazamiento + (d x coef) = %s +ExpenseReportApplyTo=Aplicar para +ExpenseReportDomain=Dominio para aplicar +ExpenseReportDateStart=Fecha de inicio +ExpenseReportDateEnd=Fecha de término +ExpenseReportLimitAmount=Cantidad límite +OnExpense=Línea de gasto +ExpenseReportRuleSave=Regla de informe de gastos guardada +ExpenseReportConstraintViolationError=Identificación de infracción de restricción [%s]: %s es superior a %s %s +ExpenseReportConstraintViolationWarning=Identificación de infracción de restricción [%s]: %s es superior a %s %s +CarCategory=Categoría de automóvil +ExpenseRangeOffset=Cantidad de compensación: %s +AttachTheNewLineToTheDocument=Adjuntar la línea a un documento cargado diff --git a/htdocs/langs/es_CL/users.lang b/htdocs/langs/es_CL/users.lang new file mode 100644 index 00000000000..71626be966d --- /dev/null +++ b/htdocs/langs/es_CL/users.lang @@ -0,0 +1,86 @@ +# Dolibarr language file - Source file is en_US - users +HRMArea=Área de RRHH +UserCard=Tarjeta de usuario +GroupCard=Tarjeta grupal +Permission=Permiso +EditPassword=Editar contraseña +SendNewPassword=Regenerar y enviar contraseña +ReinitPassword=Regenerar la contraseña +PasswordChangedTo=La contraseña ha cambiado a: %s +SubjectNewPassword=Tu nueva contraseña para %s +GroupRights=Permisos grupales +UserRights=Permisos de usuario +UserGUISetup=Configuración de pantalla de usuario +DisableUser=Inhabilitar +DisableAUser=Deshabilitar un usuario +DeleteUser=Borrar +EnableAUser=Habilitar un usuario +DeleteGroup=Borrar +ConfirmDisableUser=¿Seguro que quieres deshabilitar al usuario %s? +ConfirmDeleteUser=¿Seguro que quieres eliminar al usuario %s? +ConfirmDeleteGroup=¿Seguro que quieres eliminar el grupo %s? +ConfirmEnableUser=¿Seguro que quieres habilitar al usuario %s? +ConfirmReinitPassword=¿Seguro que quieres generar una nueva contraseña para el usuario %s? +ConfirmSendNewPassword=¿Estás seguro de que deseas generar y enviar una nueva contraseña para el usuario %s? +LoginNotDefined=El inicio de sesión no está definido. +NameNotDefined=El nombre no está definido. +ListOfUsers=Lista de usuarios +SuperAdministrator=Súper administrador +DefaultRights=Permisos predeterminados +DefaultRightsDesc=Defina aquí los permisos predeterminados que se otorgan automáticamente a un nuevo usuario (para modificar los permisos de los usuarios existentes, vaya a la tarjeta de usuario). +DolibarrUsers=Usuarios de Dolibarr +LastName=Apellido +FirstName=Primer nombre +ListOfGroups=Lista de grupos +CreateGroup=Crea un grupo +RemoveFromGroup=Sacar del grupo +PasswordChangedAndSentTo=La contraseña se cambió y se envió a %s. +PasswordChangeRequestSent=Solicitud para cambiar la contraseña de %s enviada a %s. +LastGroupsCreated=Los últimos grupos %s creados +ShowGroup=Mostrar grupo +ShowUser=Mostrar usuario +NonAffectedUsers=Usuarios no asignados +UserModified=Usuario modificado con éxito +PhotoFile=Archivo de foto +ListOfUsersInGroup=Lista de usuarios en este grupo +ListOfGroupsForUser=Lista de grupos para este usuario +LinkToCompanyContact=Enlace a un tercero / contacto +LinkedToDolibarrMember=Enlace al miembro +LinkedToDolibarrUser=Enlace al usuario de Dolibarr +LinkedToDolibarrThirdParty=Enlace a Dolibarr third party +CreateDolibarrLogin=Crear un usuario +CreateDolibarrThirdParty=Crea un tercero +LoginAccountDisableInDolibarr=Cuenta desactivada en Dolibarr. +UsePersonalValue=Use valor personal +DomainUser=Usuario del dominio %s +CreateInternalUserDesc=Este formulario le permite crear un usuario interno en su empresa / organización. Para crear un usuario externo (cliente, proveedor, etc.), use el botón "Crear usuario de Dolibarr" de la tarjeta de contacto de ese tercero. +PermissionInheritedFromAGroup=Permiso otorgado porque se hereda de uno de un grupo de usuarios. +UserWillBeInternalUser=El usuario creado será un usuario interno (porque no está vinculado a un tercero en particular) +UserWillBeExternalUser=El usuario creado será un usuario externo (porque está vinculado a un tercero en particular) +IdPhoneCaller=Identificación del teléfono +NewUserCreated=Usuario %s creado +NewUserPassword=Cambio de contraseña para %s +UserDisabled=Usuario %s deshabilitado +ConfirmCreateContact=¿Seguro que quieres crear una cuenta de Dolibarr para este contacto? +ConfirmCreateLogin=¿Seguro que quieres crear una cuenta de Dolibarr para este miembro? +ConfirmCreateThirdParty=¿Seguro que quieres crear un tercero para este miembro? +LoginToCreate=Inicia sesión para crear +NameToCreate=Nombre de tercero a crear +YourRole=Tus roles +YourQuotaOfUsersIsReached=¡Su cuota de usuarios activos se alcanza! +NbOfUsers=No. de usuarios +NbOfPermissions=No. de permisos +DontDowngradeSuperAdmin=Solo una superadmina puede degradar una superadmina +HierarchicView=Vista Jerárquica +UseTypeFieldToChange=Use el campo Tipo para cambiar +OpenIDURL=URL OpenID +LoginUsingOpenID=Use OpenID para iniciar sesión +ExpectedWorkedHours=Horas trabajadas esperadas por semana +ColorUser=Color del usuario +DisabledInMonoUserMode=Desactivado en modo de mantenimiento +UserAccountancyCode=Código de contabilidad del usuario +UserLogoff=Cierre de sesión de usuario +UserLogged=Usuario registrado +CantDisableYourself=No puedes deshabilitar tu propio registro de usuario +ForceUserExpenseValidator=Validar el validador de informes de gastos +ForceUserHolidayValidator=Forzar validación de solicitud de licencia diff --git a/htdocs/langs/es_CL/website.lang b/htdocs/langs/es_CL/website.lang new file mode 100644 index 00000000000..e3da9a4f314 --- /dev/null +++ b/htdocs/langs/es_CL/website.lang @@ -0,0 +1,75 @@ +# Dolibarr language file - Source file is en_US - website +WebsiteSetupDesc=Crea aquí los sitios web que deseas utilizar. Luego entra en el menú de sitios web para editarlos. +ConfirmDeleteWebsite=¿Estás seguro de que deseas eliminar este sitio web? Todas sus páginas y contenido también serán eliminados. Los archivos cargados (como en el directorio de medios, el módulo ECM, ...) permanecerán. +WEBSITE_PAGENAME=Nombre / alias de la página +WEBSITE_ALIASALT=Nombres de página alternativos / alias +WEBSITE_ALIASALTDesc=Utilice aquí la lista de otros nombres / alias para que también se pueda acceder a la página usando estos otros nombres / alias (por ejemplo, el nombre anterior después de cambiar el nombre del alias para mantener el enlace posterior en funcionamiento). La sintaxis es:
    alternativename1, alternativename2, ... +WEBSITE_CSS_URL=URL del archivo CSS externo +WEBSITE_ROBOT=Archivo Robot (robots.txt) +WEBSITE_HTACCESS=Sitio web .htaccess archivo +EnterHereLicenseInformation=Ingrese aquí metadatos o información de licencia para llenar un archivo README.md. si distribuye su sitio web como plantilla, el archivo se incluirá en el paquete temptate. +PageNameAliasHelp=Nombre o alias de la página.
    Este alias también se usa para forjar una URL SEO cuando el sitio web se ejecuta desde un host virtual de un servidor web (como Apacke, Nginx, ...). Use el botón "%s" para editar este alias. +MediaFiles=Mediateca +EditCss=Editar prop del sitio web +EditMenu=Editar menú +EditMedias=Editar medios +EditPageMeta=Edita prop pag/contenedor +Webpage=Página web / contenedor +AddPage=Añadir página / contenedor +PageContainer=Página / contenedor +PreviewOfSiteNotYetAvailable=Vista previa de su sitio web %s aún no está disponible. Primero debe ' Importar una plantilla de sitio web completa ' o simplemente ' Agregar una página / contenedor '. +RequestedPageHasNoContentYet=La página solicitada con el id. %s aún no tiene contenido o el archivo de caché .tpl.php fue eliminado. Edita el contenido de la página para resolver esto. +SiteDeleted=Sitio web '%s' eliminado +PageContent=Página / Contenair +PageDeleted=Página / Contenair '%s' del sitio web %s eliminado +PageAdded=Página / Contenair '%s' agregado +ViewSiteInNewTab=Ver el sitio en una pestaña nueva +ViewPageInNewTab=Ver página en nueva pestaña +SetAsHomePage=Establecer como página de inicio +RealURL=URL real +ViewWebsiteInProduction=Ver el sitio web usando las URL de origen +YouCanAlsoTestWithPHPS=Usar con el servidor PHP incorporado
    En el entorno de desarrollo, es posible que prefiera probar el sitio con el servidor web incorporado PHP (se requiere PHP 5.5) ejecutando
    php -S 0.0.0.0:8080 -t %s +CheckVirtualHostPerms=Compruebe también que el host virtual tiene permiso %sen los archivos en
    %s +ReadPerm=Leer +TestDeployOnWeb=Prueba / despliegue en la web +PreviewSiteServedByWebServer= Obtenga una vista previa de %s en una nueva pestaña.

    El %s será atendido por un servidor web externo (como Apache, Nginx, IIS). Debe instalar y configurar este servidor antes de apuntar al directorio:
    %s
    URL servida por un servidor externo:
    %s +PreviewSiteServedByDolibarr= Obtenga una vista previa de %s en una nueva pestaña.

    El servidor Dolibarr servirá %s, por lo que no necesita ningún servidor web adicional (como Apache, Nginx, IIS) para su instalación. < br> El inconveniente es que la URL de las páginas no es fácil de usar y comienza con la ruta de Dolibarr.
    URL servida por Dolibarr:
    %s

    Para usar la suya servidor web externo para servir a este sitio web, crear un servidor virtual en su servidor web que apunte en el directorio
    %s
    y luego ingresar el nombre de este servidor virtual y hacer clic en el otro botón de vista previa . +VirtualHostUrlNotDefined=La URL del servidor virtual servido por un servidor web externo no está definido +NoPageYet=No hay páginas aún +SyntaxHelp=Ayuda en consejos de sintaxis específicos +YouCanEditHtmlSourceckeditor=Puede editar el código fuente HTML usando el botón "Fuente" en el editor. +ClonePage=Clonar página / contenedor +SiteAdded=Sitio web añadido +ConfirmClonePage=Ingrese el código / alias de la página nueva y si es una traducción de la página clonada. +PageIsANewTranslation=La nueva página es una traducción de la página actual? +ParentPageId=ID de página padre +CreateByFetchingExternalPage=Crear página / contenedor obteniendo página de URL externa ... +OrEnterPageInfoManually=O crea una página desde cero o desde una plantilla de página ... +ExportSite=Sitio web de exportación +Banner=Bandera +DisableSiteFirst=Deshabilitar sitio web primero +MyContainerTitle=El título de mi sitio web +AnotherContainer=Así es como se incluye el contenido de otra página / contenedor (puede tener un error aquí si habilita el código dinámico porque el subcontenedor incrustado puede no existir) +SorryWebsiteIsCurrentlyOffLine=Lo sentimos, este sitio web está actualmente fuera de línea. Vuelve más tarde ... +WEBSITE_USE_WEBSITE_ACCOUNTS=Habilitar la tabla de cuenta del sitio web +WEBSITE_USE_WEBSITE_ACCOUNTSTooltip=Habilite la tabla para almacenar las cuentas del sitio web (inicio de sesión / pase) para cada sitio web / tercero +YouMustDefineTheHomePage=Primero debe definir la página de inicio predeterminada +OnlyEditionOfSourceForGrabbedContent=Solo es posible la edición de código fuente HTML cuando el contenido fue capturado de un sitio externo +GrabImagesInto=Agarra también imágenes encontradas en css y página. +WebsiteRootOfImages=Directorio raíz para imágenes de sitios web +AliasPageAlreadyExists=La página de alias %s ya existe +ExternalURLMustStartWithHttp=La URL externa debe comenzar con http: // o https: // +ZipOfWebsitePackageToLoad=o Elija un paquete de plantillas de sitio web incorporado +ThisPageIsTranslationOf=Esta página / contenedor es una traducción de +ThisPageHasTranslationPages=Esta página / contenedor tiene traducción +NoWebSiteCreateOneFirst=Todavía no se ha creado ningún sitio web. Crea uno primero. +GoTo=Ir +DynamicPHPCodeContainsAForbiddenInstruction=Agregue el código PHP dinámico que contiene la instrucción de PHP ' %s ' que está prohibida por defecto como contenido dinámico (vea las opciones ocultas WEBSITE_PHP_ALLOW_xxx para aumentar la lista de comandos permitidos). +SearchReplaceInto=Búsqueda | Reemplazar en +CSSContentTooltipHelp=Ingrese aquí el contenido CSS. Para evitar cualquier conflicto con el CSS de la aplicación, asegúrese de anteponer todas las declaraciones con la clase .bodywebsite. Por ejemplo:

    #mycssselector, input.myclass: hover {...}
    debe ser
    .bodywebsite #mycssselector, .bodywebsite input.myclass: hover {...}

    Nota: Si tiene un archivo grande sin este prefijo, puede usar 'lessc' para convertirlo y agregar el prefijo .bodywebsite en todas partes. +LinkAndScriptsHereAreNotLoadedInEditor=Advertencia: Este contenido se genera solo cuando se accede al sitio desde un servidor. No se usa en modo Edición, por lo que si necesita cargar archivos javascript también en modo edición, simplemente agregue su etiqueta 'script src = ...' en la página. +EditInLineOnOff=El modo 'Editar en línea' es %s +ShowSubContainersOnOff=El modo para ejecutar 'contenido dinámico' es %s +GlobalCSSorJS=Archivo global CSS / JS / Header del sitio web +TranslationLinks=Enlaces de Traducción +YouTryToAccessToAFileThatIsNotAWebsitePage=Usted intenta acceder a una página que no es una página web diff --git a/htdocs/langs/es_CL/withdrawals.lang b/htdocs/langs/es_CL/withdrawals.lang new file mode 100644 index 00000000000..3d2ae093d19 --- /dev/null +++ b/htdocs/langs/es_CL/withdrawals.lang @@ -0,0 +1,102 @@ +# Dolibarr language file - Source file is en_US - withdrawals +CustomersStandingOrdersArea=Área de órdenes de pago de débito directo +SuppliersStandingOrdersArea=Área de órdenes de pago de crédito directo +StandingOrdersPayment=Órdenes de pago de débito directo +StandingOrderPayment=Orden de pago de débito directo +NewStandingOrder=Nueva orden de débito directo +StandingOrderToProcess=Para procesar +WithdrawalsReceipts=Órdenes de débito directo +WithdrawalReceipt=Orden de débito directo +LastWithdrawalReceipts=Últimos archivos de débito directo %s +WithdrawalsLines=Líneas de orden de débito directo +RequestStandingOrderToTreat=Solicitud de orden de pago de débito directo para procesar +RequestStandingOrderTreated=Solicitud de orden de pago de débito directo procesada +NotPossibleForThisStatusOfWithdrawReceiptORLine=Aún no es posible El estado de retirada se debe establecer en 'acreditado' antes de declarar el rechazo en líneas específicas. +NbOfInvoiceToWithdraw=Nº de factura calificada con orden de domiciliación bancaria en espera. +NbOfInvoiceToWithdrawWithInfo=Número de facturas de clientes con órdenes de pago de débito directo que tienen información de cuenta bancaria definida +InvoiceWaitingWithdraw=Factura esperando débito directo +AmountToWithdraw=Cantidad a retirar +WithdrawsRefused=Débito directo rechazado +NoInvoiceToWithdraw=No hay ninguna factura del cliente con 'Solicitudes de débito directo' abiertas esperando. Vaya a la pestaña '%s' en la tarjeta de factura para realizar una solicitud. +ResponsibleUser=Usuario responsable +WithdrawalsSetup=Configuración de pago de débito directo +WithdrawStatistics=Estadísticas de pago con domiciliación bancaria +WithdrawRejectStatistics=Estadísticas de rechazo de pago de domiciliación bancaria +LastWithdrawalReceipt=Últimos recibos de débito directo %s +MakeWithdrawRequest=Hacer una solicitud de pago de débito directo +WithdrawRequestsDone=%s solicitudes de pago de débito directo registradas +ThirdPartyBankCode=Código bancario de terceros +NoInvoiceCouldBeWithdrawed=Ninguna factura debitada con éxito. Verifique que las facturas sean de compañías con un IBAN válido y que el IBAN tenga un UMR (referencia única de mandato) con el modo %s . +ClassCredited=Clasificar acreditado +ClassCreditedConfirm=¿Seguro que quieres clasificar este recibo de retiro como acreditado en tu cuenta bancaria? +TransData=Fecha de transmisión +TransMetod=Método de transmisión +StandingOrderReject=Emitir un rechazo +WithdrawalRefused=Retiro rechazado +WithdrawalRefusedConfirm=¿Estás seguro de que deseas ingresar un rechazo de retiro para la sociedad? +RefusedData=Fecha de rechazo +RefusedReason=Motivo del rechazo +RefusedInvoicing=Facturando el rechazo +NoInvoiceRefused=No cargues el rechazo +InvoiceRefused=Factura rechazada (cargar el rechazo al cliente) +StatusDebitCredit=Estado de débito / crédito +StatusWaiting=Esperando +StatusTrans=Expedido +StatusCredited=Acreditado +StatusRefused=Rechazado +StatusMotif0=Sin especificar +StatusMotif1=Fondos insuficientes +StatusMotif2=Solicitud impugnada +StatusMotif3=Sin orden de pago de débito directo +StatusMotif4=Órdenes de venta +StatusMotif5=RIB inutilizable +StatusMotif8=Otra razon +CreateForSepaFRST=Crear un archivo de domiciliación bancaria (SEPA FRST) +CreateForSepaRCUR=Crear un archivo de domiciliación bancaria (SEPAR RCUR) +CreateAll=Crear un archivo de domiciliación bancaria (todos) +CreateGuichet=Solo oficina +CreateBanque=Solo banco +OrderWaiting=Esperando tratamiento +NotifyTransmision=Transmisión de extracción +NotifyCredit=Crédito de Retiro +NumeroNationalEmetter=Número de transmisor nacional +WithBankUsingRIB=Para cuentas bancarias que usan RIB +WithBankUsingBANBIC=Para cuentas bancarias que usan IBAN / BIC / SWIFT +BankToReceiveWithdraw=Recibiendo cuenta bancaria +CreditDate=Crédito en +WithdrawalFileNotCapable=No se puede generar un archivo de recibo de retiro para su país %s (Su país no es compatible) +ShowWithdraw=Mostrar orden de débito directo +IfInvoiceNeedOnWithdrawPaymentWontBeClosed=Sin embargo, si la factura tiene al menos una orden de pago por débito directo aún no procesada, no se establecerá como pagada para permitir la gestión previa de retiros. +DoStandingOrdersBeforePayments=Esta pestaña le permite solicitar una orden de pago de débito directo. Una vez hecho esto, vaya al menú Bank-> Direct Debit orders para administrar la orden de pago de débito directo. Cuando se cierra la orden de pago, el pago en la factura se registrará automáticamente y la factura se cerrará si el resto para pagar es nulo. +WithdrawalFile=Archivo de retiro +SetToStatusSent=Establecer el estado "Archivo enviado" +ThisWillAlsoAddPaymentOnInvoice=Esto también registrará los pagos a las facturas y los clasificará como "Pagado" si queda para pagar es nulo. +StatisticsByLineStatus=Estadísticas por estado de líneas +RUMLong=Referencia única de mandatos +RUMWillBeGenerated=Si está vacío, se generará una UMR (referencia única de mandato) una vez que se guarde la información de la cuenta bancaria. +WithdrawMode=Modo de domiciliación bancaria (FRST o RECUR) +WithdrawRequestAmount=Cantidad de solicitud de débito directo: +WithdrawRequestErrorNilAmount=No se puede crear una solicitud de domiciliación bancaria para el importe vacío. +SepaMandate=Mandato de débito directo de la SEPA +PleaseReturnMandate=Envíe este formulario de mandato por correo electrónico al %s o por correo electrónico a +SEPALegalText=Al firmar este formulario de mandato, usted autoriza (A) %s a enviar instrucciones a su banco para que debiten en su cuenta y (B) a que su banco cargue en su cuenta de acuerdo con las instrucciones del %s. Como parte de sus derechos, tiene derecho a un reembolso de su banco en los términos y condiciones de su acuerdo con su banco. Se debe reclamar un reembolso dentro de las 8 semanas a partir de la fecha en que se debitó su cuenta. Sus derechos con respecto al mandato anterior se explican en una declaración que puede obtener de su banco. +CreditorIdentifier=Identificador del acreedor +CreditorName=Nombre del acreedor +SEPAFillForm=(B) Por favor complete todos los campos marcados * +SEPAFormYourName=Tu nombre +SEPAFormYourBAN=Su nombre de cuenta bancaria (IBAN) +SEPAFormYourBIC=Su código de identificación bancaria (BIC) +PleaseCheckOne=Por favor marque uno solo +DirectDebitOrderCreated=Orden de débito directo %s creado +AmountRequested=Monto solicitado +CreateForSepa=Crear un archivo de débito directo +END_TO_END=Etiqueta XML SEPA "EndToEndId" - ID única asignada por transacción +USTRD=Etiqueta XML no estructurada de SEPA +InfoCreditSubject=Pago de la orden de pago de débito directo %s por el banco +InfoCreditMessage=La orden de pago de débito directo %s ha sido pagada por el banco
    Datos de pago: %s +InfoTransSubject=Transmisión de la orden de pago de débito directo %s al banco +InfoTransMessage=La orden de pago de débito directo %s ha sido enviada al banco por %s %s.

    +InfoTransData=Cantidad: %s
    Método: %s
    Fecha: %s +InfoRejectSubject=Orden de pago de débito directo rechazada +InfoRejectMessage=Hola,

    el pedido de pago de débito directo de la factura %s relacionado con la empresa %s, con un importe de %s ha sido rechazado por el banco.

    -
    %s +ModeWarning=La opción para el modo real no se configuró, nos detenemos después de esta simulación diff --git a/htdocs/langs/es_CO/accountancy.lang b/htdocs/langs/es_CO/accountancy.lang new file mode 100644 index 00000000000..7cd257d2edd --- /dev/null +++ b/htdocs/langs/es_CO/accountancy.lang @@ -0,0 +1,203 @@ +# Dolibarr language file - Source file is en_US - accountancy +ACCOUNTING_EXPORT_SEPARATORCSV=Separador de columnas para el archivo de exportación +ACCOUNTING_EXPORT_DATE=Formato de fecha para el archivo de exportación +ACCOUNTING_EXPORT_PIECE=Exportar el número de pieza. +ACCOUNTING_EXPORT_GLOBAL_ACCOUNT=Exportar con cuenta global +ACCOUNTING_EXPORT_LABEL=Etiqueta de exportación +ACCOUNTING_EXPORT_AMOUNT=Cantidad de exportación +ACCOUNTING_EXPORT_DEVISE=Moneda de exportación +Selectformat=Selecciona el formato para el archivo. +ACCOUNTING_EXPORT_FORMAT=Selecciona el formato para el archivo. +ACCOUNTING_EXPORT_PREFIX_SPEC=Especifique el prefijo para el nombre del archivo. +DefaultForService=Por defecto para el servicio +DefaultForProduct=Predeterminado para producto +CantSuggest=No puedo sugerir +ConfigAccountingExpert=Configuración del módulo experto en contabilidad. +Journalization=Periodización +Journaux=Revistas +JournalFinancial=Revistas financieras +BackToChartofaccounts=Tabla de retorno de cuentas +Chartofaccounts=Catálogo de cuentas +CurrentDedicatedAccountingAccount=Cuenta dedicada actual +AssignDedicatedAccountingAccount=Nueva cuenta para asignar +InvoiceLabel=Etiqueta de factura +OverviewOfAmountOfLinesNotBound=Resumen de la cantidad de líneas no vinculadas a una cuenta contable +OverviewOfAmountOfLinesBound=Resumen de la cantidad de líneas ya unidas a una cuenta contable +DeleteCptCategory=Eliminar cuenta contable del grupo +JournalizationInLedgerStatus=Estado de la periodización +AlreadyInGeneralLedger=Ya publicado en libros de contabilidad. +NotYetInGeneralLedger=Aún no se ha publicado en los libros de contabilidad. +GroupIsEmptyCheckSetup=El grupo está vacío, verifique la configuración del grupo de contabilidad personalizado +DetailByAccount=Mostrar detalle por cuenta +AccountWithNonZeroValues=Cuentas con valores distintos de cero. +CountriesInEECExceptMe=Países en EEC excepto %s +MainAccountForCustomersNotDefined=Cuenta contable principal para clientes no definidos en la configuración. +MainAccountForSuppliersNotDefined=Cuenta de contabilidad principal para proveedores no definidos en la configuración. +MainAccountForUsersNotDefined=Cuenta de contabilidad principal para usuarios no definidos en la configuración. +MainAccountForVatPaymentNotDefined=Cuenta contable principal para el pago del IVA no definido en la configuración +AccountancyArea=Area de contabilidad +AccountancyAreaDescActionOnce=Las siguientes acciones generalmente se ejecutan una sola vez, o una vez al año ... +AccountancyAreaDescActionOnceBis=Se deben seguir los siguientes pasos para ahorrarle tiempo en el futuro, sugiriéndole la cuenta contable predeterminada correcta al realizar el registro por diario (escribiendo el registro en Revistas y Libro mayor) +AccountancyAreaDescActionFreq=Las siguientes acciones generalmente se ejecutan cada mes, semana o día para compañías muy grandes ... +AccountancyAreaDescJournalSetup=PASO %s: cree o verifique el contenido de su lista de revistas desde el menú %s +AccountancyAreaDescChartModel=PASO %s: Cree un modelo de plan de cuenta desde el menú %s +AccountancyAreaDescChart=PASO %s: cree o verifique el contenido de su plan de cuentas desde el menú %s +AccountancyAreaDescVat=PASO %s: Defina cuentas contables para cada tasa de IVA. Para ello, utilice la entrada de menú %s. +AccountancyAreaDescDefault=PASO %s: Defina cuentas de contabilidad predeterminadas. Para ello, utilice la entrada de menú %s. +AccountancyAreaDescExpenseReport=PASO %s: Defina cuentas de contabilidad predeterminadas para cada tipo de informe de gastos. Para ello, utilice la entrada de menú %s. +AccountancyAreaDescSal=PASO %s: Defina cuentas contables predeterminadas para el pago de salarios. Para ello, utilice la entrada de menú %s. +AccountancyAreaDescContrib=PASO %s: Defina cuentas de contabilidad predeterminadas para gastos especiales (impuestos diversos). Para ello, utilice la entrada de menú %s. +AccountancyAreaDescDonation=PASO %s: Defina cuentas de contabilidad predeterminadas para donación. Para ello, utilice la entrada de menú %s. +AccountancyAreaDescMisc=PASO %s: Defina cuentas predeterminadas obligatorias y cuentas contables predeterminadas para transacciones misceláneas. Para ello, utilice la entrada de menú %s. +AccountancyAreaDescLoan=PASO %s: Defina cuentas de contabilidad predeterminadas para préstamos. Para ello, utilice la entrada de menú %s. +AccountancyAreaDescBank=PASO %s: Defina cuentas contables y código de diario para cada banco y cuentas financieras. Para ello, utilice la entrada de menú %s. +AccountancyAreaDescProd=PASO %s: Defina cuentas de contabilidad en sus productos / servicios. Para ello, utilice la entrada de menú %s. +AccountancyAreaDescBind=PASO %s: verifique el enlace entre las líneas %s existentes y la cuenta contable se realiza, por lo que la aplicación podrá registrar transacciones en el libro mayor en un solo clic. Completar los enlaces que faltan. Para ello, utilice la entrada de menú %s. +AccountancyAreaDescWriteRecords=PASO %s: Escriba transacciones en el Libro mayor. Para esto, vaya al menú %s y haga clic en el botón %s . +AccountancyAreaDescAnalyze=PASO %s: agregue o edite transacciones existentes y genere informes y exportaciones. +AccountancyAreaDescClosePeriod=PASO %s: Cierre el período para que no podamos realizar modificaciones en el futuro. +TheJournalCodeIsNotDefinedOnSomeBankAccount=Un paso obligatorio en la configuración no se completó (el diario del código contable no está definido para todas las cuentas bancarias) +Selectchartofaccounts=Seleccionar plan de cuentas activo +ChangeAndLoad=Cambio y carga +ShowAccountingAccount=Mostrar cuenta contable +MenuDefaultAccounts=Cuentas por defecto +MenuBankAccounts=cuentas bancarias +MenuVatAccounts=Vat cuentas +MenuExpenseReportAccounts=Cuentas de informe de gastos +MenuLoanAccounts=Cuentas de prestamo +MenuProductsAccounts=Cuentas de productos +CustomersVentilation=Encuadernación factura cliente +SuppliersVentilation=Encuadernación factura de proveedor +ExpenseReportsVentilation=Informe de gastos vinculante +CreateMvts=Crear nueva transacción +UpdateMvts=Modificación de una transacción +ValidTransaction=Validar transaccion +Bookkeeping=Libro mayor +ObjectsRef=Ref. Objeto fuente +TotalExpenseReport=Informe de gastos totales +InvoiceLines=Líneas de facturas a unir. +InvoiceLinesDone=Líneas enlazadas de facturas. +ExpenseReportLines=Informes de líneas de gasto a enlazar. +ExpenseReportLinesDone=Reportes de líneas de gasto. +IntoAccount=Línea de enlace con la cuenta contable. +Ventilate=Enlazar +LineId=Línea de identificación +SelectedLines=Lineas seleccionadas +Lineofinvoice=Línea de factura +LineOfExpenseReport=Informe de línea de gastos +NoAccountSelected=Ninguna cuenta contable seleccionada +VentilatedinAccount=Enlazado exitosamente a la cuenta contable. +NotVentilatedinAccount=No vinculado a la cuenta contable. +XLineSuccessfullyBinded=%s productos / servicios vinculados con éxito a una cuenta contable +XLineFailedToBeBinded=%s productos / servicios no estaban vinculados a ninguna cuenta contable +ACCOUNTING_LIST_SORT_VENTILATION_TODO=Comience la clasificación de la página "Enlace para hacer" según los elementos más recientes. +ACCOUNTING_LIST_SORT_VENTILATION_DONE=Comience la clasificación de la página "Encuadernación hecha" por los elementos más recientes. +ACCOUNTING_LENGTH_DESCRIPTION=Truncar la descripción de productos y servicios en las listas después de x caracteres (Mejor = 50) +ACCOUNTING_LENGTH_DESCRIPTION_ACCOUNT=Truncar el formulario de descripción de la cuenta de productos y servicios en los listados después de x caracteres (Mejor = 50) +ACCOUNTING_LENGTH_GACCOUNT=Longitud de las cuentas de contabilidad general (si establece el valor en 6 aquí, la cuenta '706' aparecerá como '706000' en la pantalla) +BANK_DISABLE_DIRECT_INPUT=Deshabilitar el registro directo de la transacción en la cuenta bancaria +ACCOUNTING_ENABLE_EXPORT_DRAFT_JOURNAL=Habilitar borrador de exportación en la revista +ACCOUNTING_SELL_JOURNAL=Diario de venta +ACCOUNTING_PURCHASE_JOURNAL=Diario de compra +ACCOUNTING_MISCELLANEOUS_JOURNAL=Revista miscelánea +ACCOUNTING_EXPENSEREPORT_JOURNAL=Diario de informe de gastos +ACCOUNTING_SOCIAL_JOURNAL=Revista social +ACCOUNTING_HAS_NEW_JOURNAL=Tiene nuevo diario +ACCOUNTING_ACCOUNT_SUSPENSE=Cuenta contable de espera. +DONATION_ACCOUNTINGACCOUNT=Cuenta contable para registrar donaciones. +ACCOUNTING_PRODUCT_SOLD_ACCOUNT=Cuenta contable por defecto para los productos vendidos (se usa si no se define en la hoja del producto) +ACCOUNTING_SERVICE_BUY_ACCOUNT=Cuenta de contabilidad por defecto para los servicios comprados (se usa si no está definido en la hoja de servicio) +ACCOUNTING_SERVICE_SOLD_ACCOUNT=Cuenta de contabilidad por defecto para los servicios vendidos (se usa si no se define en la hoja de servicio) +LabelAccount=Etiqueta de cuenta +LabelOperation=Operación de etiquetas +LetteringCode=Codigo de letras +Codejournal=diario +NumPiece=Número de pieza +TransactionNumShort=Num. transacción +GroupByAccountAccounting=Grupo por cuenta contable +AccountingAccountGroupsDesc=Puede definir aquí algunos grupos de cuentas contables. Serán utilizados para informes contables personalizados. +ByPredefinedAccountGroups=Por grupos predefinidos. +DeleteMvt=Eliminar líneas de libro mayor +DelYear=Año para borrar +DelJournal=Diario para eliminar +ConfirmDeleteMvtPartial=Esto eliminará la transacción del Libro mayor (se eliminarán todas las líneas relacionadas con la misma transacción) +FinanceJournal=Revista de finanzas +ExpenseReportsJournal=Diario de informes de gastos +DescFinanceJournal=Revista financiera que incluye todos los tipos de pagos por cuenta bancaria. +DescJournalOnlyBindedVisible=Esta es una vista de registro que está vinculada a una cuenta de contabilidad y se puede registrar en el Libro mayor. +VATAccountNotDefined=Cuenta para el IVA no definido +ThirdpartyAccountNotDefined=Cuenta por tercero no definida. +ProductAccountNotDefined=Cuenta por producto no definido. +FeeAccountNotDefined=Cuenta por tarifa no definida +BankAccountNotDefined=Cuenta para banco no definida +CustomerInvoicePayment=Pago de factura al cliente. +NewAccountingMvt=Nueva transaccion +NumMvts=Numero de transacción +ListeMvts=Lista de movimientos +ErrorDebitCredit=Débito y crédito no pueden tener un valor al mismo tiempo +AddCompteFromBK=Añadir cuentas de contabilidad al grupo. +ListAccounts=Listado de las cuentas contables. +PaymentsNotLinkedToProduct=Pago no vinculado a ningún producto / servicio. +TotalVente=Rotación total antes de impuestos +TotalMarge=Margen total de ventas +DescVentilCustomer=Consulte aquí la lista de líneas de factura del cliente vinculadas (o no) a una cuenta contable del producto +DescVentilMore=En la mayoría de los casos, si utiliza productos o servicios predefinidos y configura el número de cuenta en la tarjeta de producto / servicio, la aplicación podrá hacer todo el enlace entre sus líneas de factura y la cuenta contable de su plan de cuentas, solo en un clic con el botón "%s" . Si la cuenta no se configuró en las tarjetas de productos / servicios o si todavía tiene algunas líneas que no están vinculadas a una cuenta, deberá realizar un enlace manual desde el menú " %s ". +DescVentilDoneCustomer=Consulte aquí la lista de las líneas de facturas de los clientes y su cuenta contable del producto. +DescVentilTodoCustomer=Enlazar líneas de factura aún no vinculadas con una cuenta contable de producto +ChangeAccount=Cambie la cuenta de contabilidad de producto / servicio para las líneas seleccionadas con la siguiente cuenta de contabilidad: +DescVentilTodoExpenseReport=Líneas de informe de gastos de enlace no vinculadas con una cuenta contable de comisiones +DescVentilExpenseReport=Consulte aquí la lista de líneas de informe de gastos vinculadas (o no) a una cuenta de contabilidad de comisiones. +DescVentilExpenseReportMore=Si configura una cuenta contable según el tipo de líneas de informe de gastos, la aplicación podrá realizar toda la vinculación entre sus líneas de informe de gastos y la cuenta contable de su plan de cuentas, solo con un clic con el botón "%s" . Si la cuenta no se estableció en el diccionario de tarifas o si todavía tiene algunas líneas no vinculadas a ninguna cuenta, deberá realizar un enlace manual desde el menú " %s ". +DescVentilDoneExpenseReport=Consulte aquí la lista de líneas de informes de gastos y sus cuentas contables. +AutomaticBindingDone=Encuadernación automática hecha +ErrorAccountancyCodeIsAlreadyUse=Error, no puede eliminar esta cuenta de contabilidad porque se usa +MvtNotCorrectlyBalanced=Movimiento no equilibrado correctamente. Débito = %s | Crédito = %s +Balancing=Equilibrio +FicheVentilation=Tarjeta de encuadernación +GeneralLedgerIsWritten=Las transacciones están escritas en el libro mayor. +GeneralLedgerSomeRecordWasNotRecorded=Algunas de las transacciones no pudieron ser periodizadas. Si no hay otro mensaje de error, probablemente sea porque ya estaban registrados. +NoNewRecordSaved=No hay más récord para periodizar. +ListOfProductsWithoutAccountingAccount=Lista de productos no vinculados a ninguna cuenta contable. +ChangeBinding=Cambiar el enlace +Accounted=Contabilizado en libro mayor +NotYetAccounted=Aún no contabilizado en el libro mayor. +ApplyMassCategories=Aplicar categorías de masa +CategoryDeleted=Se ha eliminado la categoría de la cuenta contable. +AccountingJournals=Revistas contables +AccountingJournal=Diario de contabilidad +NewAccountingJournal=Nueva revista contable +AccountingJournalType1=Operaciones misceláneas +AccountingJournalType5=Informe de gastos +AccountingJournalType9=Ha-nuevo +ErrorAccountingJournalIsAlreadyUse=Esta revista ya está en uso. +AccountingAccountForSalesTaxAreDefinedInto=Nota: la cuenta contable del impuesto sobre las ventas se define en el menú %s - %s +ExportDraftJournal=Exportar borrador de revista +Selectmodelcsv=Selecciona un modelo de exportación. +Modelcsv_configurable=Exportar CSV Configurable +ChartofaccountsId=ID del plan de cuentas +InitAccountancy=Contable inicial +InitAccountancyDesc=Esta página se puede usar para inicializar una cuenta contable en productos y servicios que no tiene una cuenta contable definida para ventas y compras. +DefaultBindingDesc=Esta página se puede usar para configurar una cuenta predeterminada para vincular el registro de transacciones sobre salarios de pago, donaciones, impuestos y IVA cuando no se haya establecido una cuenta contable específica. +OptionModeProductSell=Modo de ventas +OptionModeProductBuy=Compras de modo +OptionModeProductSellDesc=Mostrar todos los productos con cuenta contable para ventas. +OptionModeProductBuyDesc=Mostrar todos los productos con cuenta contable para compras. +CleanFixHistory=Eliminar el código de contabilidad de las líneas que no existen en los cuadros de cuenta +CleanHistory=Restablecer todos los enlaces para el año seleccionado +PredefinedGroups=Grupos predefinidos +WithValidAccount=Con cuenta dedicada válida. +ValueNotIntoChartOfAccount=Este valor de la cuenta contable no existe en el plan de cuentas. +SomeMandatoryStepsOfSetupWereNotDone=Algunos pasos obligatorios de configuración no se realizaron, por favor complete +ErrorNoAccountingCategoryForThisCountry=No hay grupo de cuentas contables disponible para el país %s (Consulte Inicio - Configuración - Diccionarios) +ErrorInvoiceContainsLinesNotYetBounded=Intenta registrar en el diario algunas líneas de la factura %s , pero algunas otras líneas aún no están vinculadas a la cuenta contable. La periodización de todas las líneas de factura para esta factura se rechazan. +ErrorInvoiceContainsLinesNotYetBoundedShort=Algunas líneas en la factura no están vinculadas a la cuenta contable. +ExportNotSupported=El formato de exportación configurado no es compatible con esta página. +BookeppingLineAlreayExists=Líneas ya existentes en la contabilidad. +NoJournalDefined=Ninguna revista definida +Binded=Líneas enlazadas +ToBind=Líneas para unir +UseMenuToSetBindindManualy=Líneas aún no enlazadas, use el menú %s para hacer el enlace manualmente +ImportAccountingEntries=Asientos contables +WarningReportNotReliable=Advertencia, este informe no se basa en el Libro mayor, por lo que no contiene la transacción modificada manualmente en el Libro mayor. Si su publicación está actualizada, la vista de contabilidad es más precisa. +ExpenseReportJournal=Diario de informe de gastos +InventoryJournal=Diario de inventario diff --git a/htdocs/langs/es_CO/admin.lang b/htdocs/langs/es_CO/admin.lang index e85460ffd30..66f20ac1b65 100644 --- a/htdocs/langs/es_CO/admin.lang +++ b/htdocs/langs/es_CO/admin.lang @@ -66,7 +66,6 @@ NoMaxSizeByPHPLimit=Nota: en la configuración de su PHP no está definido un l MaxSizeForUploadedFiles=Tamaño máximo para archivos importados (0 para desactivar cualquier importación) UseCaptchaCode=Usar código gráfico (CAPTCHA) en la página de inicio de sesión AntiVirusCommand=Ruta completa para el comando del antivirus -AntiVirusCommandExample=Ejemplo para ClamWin: c:\\Progra~1\\ClamWin\\bin\\clamscan.exe
    Ejemplo para ClamAv: /usr/bin/clamscan AntiVirusParam=Más parámetros en la línea de comando ComptaSetup=Configuración del módulo contable UserSetup=Configuración de la administración de usuarios @@ -138,7 +137,6 @@ FeatureDisabledInDemo=Función deshabilitada en demo FeatureAvailableOnlyOnStable=Característica solo disponible en versiones oficiales estables BoxesDesc=Los widgets son componentes que muestran información que puede agregar para personalizar algunas páginas. Puede elegir entre mostrar el widget o no seleccionando la página de destino y haciendo clic en 'Activar', o haciendo clic en la papelera para desactivarla. OnlyActiveElementsAreShown=Solo se muestran los elementos de módulos habilitados . -ModulesDesc=Los módulos / aplicaciones determinan qué funciones están disponibles en el software. Algunos módulos requieren permisos para ser otorgados 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. ModulesDeployDesc=Si los permisos en su sistema de archivos lo permiten, puede usar esta herramienta para implementar un módulo externo. El módulo será visible en la pestaña %s . ModulesMarketPlaces=Encuentra aplicaciones / módulos externos ModulesDevelopYourModule=Desarrolle su propia aplicación / módulos @@ -744,7 +742,6 @@ BillsPDFModules=Modelos de documentos de facturas. BillsPDFModulesAccordindToInvoiceType=La factura documenta los modelos según el tipo de factura. PaymentsPDFModules=Modelos de documentos de pago. ForceInvoiceDate=Forzar fecha de factura a fecha de validación -SuggestedPaymentModesIfNotDefinedInInvoice=Modo de pago sugerido en la factura por defecto si no está definido para la factura FreeLegalTextOnInvoices=Texto libre en las facturas. WatermarkOnDraftInvoices=Marca de agua en los proyectos de factura (ninguno si está vacío) PaymentsNumberingModule=Modelo de numeración de pagos. @@ -1019,8 +1016,6 @@ BankSetupModule=Configuración del módulo bancario BankOrderShow=Mostrar el orden de las cuentas bancarias para los países que utilizan "número bancario detallado" BankOrderESDesc=Orden de visualización en español MultiCompanySetup=Configuración del módulo multiempresa -SuppliersCommandModel=Complete template of Purchase Order -SuppliersInvoiceModel=Complete template of Vendor Invoice NoteOnPathLocation=Tenga en cuenta que su archivo de datos de IP a país debe estar dentro de un directorio que su PHP pueda leer (Verifique su configuración de PHP open_basedir y los permisos del sistema de archivos). YouCanDownloadFreeDatFileTo=Puede descargar una versión demo gratuita del archivo de país de Maxmind GeoIP en %s. YouCanDownloadAdvancedDatFileTo=También puede descargar una versión más completa de , con actualizaciones, del archivo de país de Maxmind GeoIP en %s. diff --git a/htdocs/langs/es_CO/agenda.lang b/htdocs/langs/es_CO/agenda.lang index 0b448cdeb31..11fff680032 100644 --- a/htdocs/langs/es_CO/agenda.lang +++ b/htdocs/langs/es_CO/agenda.lang @@ -1,4 +1,3 @@ # Dolibarr language file - Source file is en_US - agenda -AffectedTo=Asignado a Event=Acción DateActionEnd=Fecha final diff --git a/htdocs/langs/es_CO/bills.lang b/htdocs/langs/es_CO/bills.lang index 7ca34488db8..42a4cf4a751 100644 --- a/htdocs/langs/es_CO/bills.lang +++ b/htdocs/langs/es_CO/bills.lang @@ -38,8 +38,6 @@ InvoiceCustomer=Factura del cliente CustomerInvoice=Factura del cliente CustomersInvoices=Facturas de clientes SupplierBills=proveedores facturas -PaymentBack=Devolución de pago -CustomerInvoicePaymentBack=Devolución de pago paymentInInvoiceCurrency=en facturas moneda DeletePayment=Eliminar pago ConfirmDeletePayment=¿Estás seguro de que quieres eliminar este pago? @@ -141,14 +139,6 @@ NumberOfBillsByMonth=Nº de facturas al mes. AmountOfBills=Cantidad de facturas AmountOfBillsHT=Importe de las facturas (neto de impuestos) AmountOfBillsByMonthHT=Monto de facturas por mes (neto de impuestos) -ShowSocialContribution=Mostrar impuesto social / fiscal -ShowBill=Mostrar factura -ShowInvoice=Mostrar factura -ShowInvoiceReplace=Mostrar factura de sustitución -ShowInvoiceAvoir=Mostrar nota de credito -ShowInvoiceDeposit=Mostrar factura de anticipo -ShowInvoiceSituation=Mostrar factura de situación -ShowPayment=Mostrar pago AlreadyPaidBack=Ya pagado AlreadyPaidNoCreditNotesNoDeposits=Ya pagado (sin notas de crédito y pagos iniciales) Abandoned=Abandonado @@ -336,9 +326,8 @@ ToMakePayment=Paga ToMakePaymentBack=Pagar ListOfYourUnpaidInvoices=Lista de facturas impagadas NoteListOfYourUnpaidInvoices=Nota: Esta lista solo contiene facturas para terceros a los que está vinculado como representante de ventas. -RevenueStamp=Sello de ingresos YouMustCreateStandardInvoiceFirstDesc=Primero debe crear una factura estándar y convertirla en "plantilla" para crear una nueva factura de plantilla -PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template (old implementation of Sponge template) +PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template PDFSpongeDescription=Factura PDF plantilla de esponja. Una plantilla de factura completa. PDFCrevetteDescription=Plantilla PDF factura Crevette. Una plantilla de factura completa para facturas de situación. TerreNumRefModelDesc1=Número de devolución con formato %syymm-nnnn para facturas estándar y %syymm-nnnn para notas de crédito donde yy es año, mm es mes y nnnn es una secuencia sin interrupción y sin retorno a 0 diff --git a/htdocs/langs/es_CO/boxes.lang b/htdocs/langs/es_CO/boxes.lang new file mode 100644 index 00000000000..6a5f709d318 --- /dev/null +++ b/htdocs/langs/es_CO/boxes.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - boxes +ForCustomersInvoices=Facturas de clientes +ForProposals=Propuestas diff --git a/htdocs/langs/es_CO/categories.lang b/htdocs/langs/es_CO/categories.lang new file mode 100644 index 00000000000..c3bc80d45d8 --- /dev/null +++ b/htdocs/langs/es_CO/categories.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - categories +Rubriques=Etiquetas / Categorías +ExtraFieldsCategories=Atributos complementarios diff --git a/htdocs/langs/es_CO/compta.lang b/htdocs/langs/es_CO/compta.lang index be705a0bacc..a8bd33a6a73 100644 --- a/htdocs/langs/es_CO/compta.lang +++ b/htdocs/langs/es_CO/compta.lang @@ -135,7 +135,6 @@ SeeReportInInputOutputMode=Consulte %sanálisis de pagos%s para obtener un cálc SeeReportInDueDebtMode=Consulte %sanálisis de facturas%s para un cálculo basado en facturas registradas conocidas, incluso si aún no se han contabilizado en el Libro mayor. SeeReportInBookkeepingMode=Consulte %sRestauración report%s para obtener un cálculo de la tabla del Libro mayor de contabilidad RulesAmountWithTaxIncluded=- Las cantidades mostradas están con todos los impuestos incluidos. -RulesResultDue=- Incluye facturas pendientes, gastos, IVA, donaciones ya sean pagadas o no. También incluye salarios pagados.
    - Se basa en la fecha de validación de las facturas y el IVA y en la fecha de vencimiento de los gastos. Para los salarios definidos con el módulo Salario, se utiliza la fecha de valor del pago. RulesResultInOut=- Incluye los pagos reales realizados en facturas, gastos, IVA y salarios.
    - Se basa en las fechas de pago de las facturas, gastos, IVA y salarios. La fecha de donación para la donación. RulesCATotalSaleJournal=Incluye todas las líneas de crédito del diario Sale. RulesAmountOnInOutBookkeepingRecord=Incluye el registro en su Libro mayor con cuentas contables que tiene el grupo "GASTOS" o "INGRESOS" diff --git a/htdocs/langs/es_CO/contracts.lang b/htdocs/langs/es_CO/contracts.lang new file mode 100644 index 00000000000..393d5e7a8bb --- /dev/null +++ b/htdocs/langs/es_CO/contracts.lang @@ -0,0 +1,5 @@ +# Dolibarr language file - Source file is en_US - contracts +Contracts=Los contratos +ContractsSubscriptions=Contratos / Suscripciones +ContractStartDate=Fecha de inicio +ContractEndDate=Fecha final diff --git a/htdocs/langs/es_CO/exports.lang b/htdocs/langs/es_CO/exports.lang new file mode 100644 index 00000000000..e11e442a7e3 --- /dev/null +++ b/htdocs/langs/es_CO/exports.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - exports +LibraryShort=Biblioteca +ComputedField=Campo computado diff --git a/htdocs/langs/es_CO/install.lang b/htdocs/langs/es_CO/install.lang new file mode 100644 index 00000000000..776f7f166d2 --- /dev/null +++ b/htdocs/langs/es_CO/install.lang @@ -0,0 +1,179 @@ +# Dolibarr language file - Source file is en_US - install +InstallEasy=Simplemente siga las instrucciones paso a paso. +MiscellaneousChecks=Verificación de requisitos previos +ConfFileExists=El archivo de configuración %s existe. +ConfFileDoesNotExistsAndCouldNotBeCreated=El archivo de configuración %s no existe y no se pudo crear. +ConfFileCouldBeCreated=Se puede crear el archivo de configuración %s . +ConfFileIsNotWritable=El archivo de configuración %s no se puede escribir. Compruebe los permisos. Para la primera instalación, su servidor web debe poder escribir en este archivo durante el proceso de configuración ("chmod 666", por ejemplo, en un sistema operativo tipo Unix). +ConfFileIsWritable=El archivo de configuración %s se puede escribir. +ConfFileMustBeAFileNotADir=El archivo de configuración %s debe ser un archivo, no un directorio. +ConfFileReload=Recarga de parámetros desde archivo de configuración. +PHPSupportSessions=Este PHP soporta sesiones. +PHPSupportPOSTGETOk=Este PHP soporta las variables POST y GET. +PHPSupportPOSTGETKo=Es posible que su configuración de PHP no admita las variables POST y / o GET. Verifique el parámetro variables_order en php.ini. +PHPSupportGD=Este PHP soporta funciones gráficas GD. +PHPSupportCurl=Este PHP soporta Curl. +PHPSupportUTF8=Este PHP soporta funciones UTF8. +PHPMemoryOK=La memoria de sesión de PHP max está configurada en %s . Esto debería ser suficiente. +PHPMemoryTooLow=La memoria de sesión de PHP max está configurada en %s bytes. Esto es demasiado bajo. Cambie su php.ini para establecer el parámetro memory_limit en al menos %s bytes. +Recheck=Haga clic aquí para una prueba más detallada +ErrorPHPDoesNotSupportSessions=Su instalación de PHP no soporta sesiones. Esta función es necesaria para permitir que Dolibarr funcione. Compruebe su configuración de PHP y permisos del directorio de sesiones. +ErrorPHPDoesNotSupportGD=Su instalación de PHP no soporta funciones gráficas de GD. No habrá gráficos disponibles. +ErrorPHPDoesNotSupportCurl=Su instalación de PHP no es compatible con Curl. +ErrorPHPDoesNotSupportUTF8=Su instalación de PHP no es compatible con las funciones UTF8. Dolibarr no puede funcionar correctamente. Resuelve esto antes de instalar Dolibarr. +ErrorDirDoesNotExists=El directorio %s no existe. +ErrorGoBackAndCorrectParameters=Regresa y revisa / corrige los parámetros. +ErrorWrongValueForParameter=Es posible que haya escrito un valor incorrecto para el parámetro '%s'. +ErrorFailedToConnectToDatabase=Error al conectarse a la base de datos '%s'. +ErrorDatabaseVersionTooLow=Versión de la base de datos (%s) demasiado antigua. Se requiere la versión %s o superior. +ErrorPHPVersionTooLow=La versión de PHP es muy antigua. Se requiere la versión %s. +ErrorConnectedButDatabaseNotFound=La conexión al servidor fue exitosa pero no se encontró la base de datos '%s'. +IfDatabaseNotExistsGoBackAndUncheckCreate=Si la base de datos no existe, vuelva atrás y marque la opción "Crear base de datos". +IfDatabaseExistsGoBackAndCheckCreate=Si la base de datos ya existe, vuelva atrás y desmarque la opción "Crear base de datos". +WarningBrowserTooOld=La versión del navegador es demasiado antigua. Se recomienda encarecidamente actualizar su navegador a una versión reciente de Firefox, Chrome u Opera. +License=Usando licencia +WebPagesDirectory=Directorio donde se almacenan las páginas web +DocumentsDirectory=Directorio para almacenar documentos cargados y generados. +URLRoot=URL de raíz +CheckToForceHttps=Marque esta opción para forzar conexiones seguras (https). Esto requiere que el servidor web esté configurado con un certificado SSL. +DolibarrDatabase=Base de datos de Dolibarr +DatabaseType=Tipo de base de datos +ServerAddressDescription=Nombre o dirección IP para el servidor de base de datos. Normalmente, 'localhost' cuando el servidor de la base de datos está alojado en el mismo servidor que el servidor web. +ServerPortDescription=Puerto del servidor de base de datos. Mantener vacío si se desconoce. +DatabasePrefix=Prefijo de tabla de base de datos +AdminLogin=Cuenta de usuario para el propietario de la base de datos Dolibarr. +PasswordAgain=Vuelva a escribir la confirmación de la contraseña +AdminPassword=Contraseña para el propietario de la base de datos Dolibarr. +CreateDatabase=Crear base de datos +CreateUser=Cree una cuenta de usuario o otorgue permiso de cuenta de usuario en la base de datos de Dolibarr +DatabaseSuperUserAccess=Servidor de base de datos - Acceso de superusuario +CheckToCreateDatabase=Marque la casilla si la base de datos aún no existe y, por lo tanto, debe crearse.
    En este caso, también debe ingresar el nombre de usuario y la contraseña de la cuenta de superusuario en la parte inferior de esta página. +CheckToCreateUser=Marque la casilla si:
    la cuenta de usuario de la base de datos aún no existe y, por lo tanto, debe crearse, o
    si la cuenta de usuario existe pero la base de datos no existe y se deben otorgar permisos.
    En este caso, debe ingresar la cuenta de usuario y la contraseña, y también el nombre de la cuenta del superusuario y la contraseña en la parte inferior de esta página. Si esta casilla no está marcada, el propietario de la base de datos y la contraseña ya deben existir. +KeepEmptyIfNoPassword=Deje en blanco si el superusuario no tiene contraseña (NO se recomienda) +ServerConnection=Conexión de servidor +DatabaseCreation=Creación de base de datos +CreateDatabaseObjects=Creación de objetos de base de datos +ReferenceDataLoading=Carga de datos de referencia +TablesAndPrimaryKeysCreation=Creación de tablas y claves primarias. +CreateTableAndPrimaryKey=Crear tabla %s +CreateOtherKeysForTable=Cree claves externas e índices para la tabla %s +OtherKeysCreation=Creación de claves externas e índices. +AdminAccountCreation=Creación de inicio de sesión de administrador +PleaseTypePassword=Por favor escriba una contraseña, las contraseñas vacías no están permitidas! +PleaseTypeALogin=Por favor escriba un nombre de usuario! +PasswordsMismatch=Las contraseñas difieren, por favor intente de nuevo! +SetupEnd=Fin de la configuracion +SystemIsInstalled=Esta instalación está completa. +SystemIsUpgraded=Dolibarr se ha actualizado con éxito. +YouNeedToPersonalizeSetup=Debe configurar Dolibarr para que se adapte a sus necesidades (aspecto, características, ...). Para hacer esto, por favor siga el siguiente enlace: +AdminLoginCreatedSuccessfuly=El inicio de sesión del administrador de Dolibarr ' %s ' se creó correctamente. +GoToDolibarr=Ir a dolibarr +GoToSetupArea=Ir a Dolibarr (área de configuración) +GoToUpgradePage=Ir a la página de actualización de nuevo +WithNoSlashAtTheEnd=Sin la barra "/" al final +AdminLoginAlreadyExists=La cuenta de administrador de Dolibarr ' %s ' ya existe. Vuelve si quieres crear otro. +FailedToCreateAdminLogin=Error al crear la cuenta de administrador de Dolibarr. +WarningRemoveInstallDir=Una advertencia, por razones de seguridad, una vez que se complete la instalación o actualización, debe agregar un archivo llamado install.lock en el directorio de documentos de Dolibarr para evitar nuevamente el uso accidental / malicioso de las herramientas de instalación. +ChoosedMigrateScript=Elegir script de migración +DataMigration=Migración de base de datos (datos) +DatabaseMigration=Migración de base de datos (estructura + algunos datos) +ProcessMigrateScript=Procesamiento de guiones +ChooseYourSetupMode=Elija su modo de configuración y haga clic en "Inicio" ... +FreshInstall=Instalación nueva +FreshInstallDesc=Utilice este modo si esta es su primera instalación. Si no, este modo puede reparar una instalación previa incompleta. Si desea actualizar su versión, elija el modo "Actualizar". +UpgradeDesc=Utilice este modo si ha reemplazado los archivos antiguos de Dolibarr con archivos de una versión más nueva. Esto actualizará su base de datos y datos. +Start=comienzo +InstallNotAllowed=Configuración no permitida por los permisos conf.php +YouMustCreateWithPermission=Debe crear el archivo %s y establecer permisos de escritura para el servidor web durante el proceso de instalación. +AlreadyDone=Ya migrado +DatabaseVersion=Versión de base de datos +ServerVersion=Versión del servidor de base de datos +YouMustCreateItAndAllowServerToWrite=Debe crear este directorio y permitir que el servidor web escriba en él. +DBSortingCollation=Orden de clasificacion de personajes +YouAskDatabaseCreationSoDolibarrNeedToConnect=Seleccionó crear la base de datos %s , pero para esto, Dolibarr necesita conectarse al servidor %s con el superusuario %s . +YouAskLoginCreationSoDolibarrNeedToConnect=Seleccionó crear el usuario de la base de datos %s , pero para esto, Dolibarr necesita conectarse al servidor %s con el superusuario %s . +BecauseConnectionFailedParametersMayBeWrong=Falló la conexión de la base de datos: los parámetros del host o superusuario deben ser incorrectos. +OrphelinsPaymentsDetectedByMethod=Pago de huérfanos detectado por el método %s +RemoveItManuallyAndPressF5ToContinue=Retíralo manualmente y presiona F5 para continuar. +IfLoginDoesNotExistsCheckCreateUser=Si el usuario aún no existe, debe marcar la opción "Crear usuario" +ErrorConnection=Servidor " %s ", nombre de la base de datos " %s ", inicio de sesión " %s ", o la contraseña de la base de datos puede ser incorrecta o la versión del cliente de PHP puede ser incorrecta demasiado viejo en comparación con la versión de la base de datos. +InstallChoiceRecommanded=Opción recomendada para instalar la versión %s de su versión actual %s +InstallChoiceSuggested= Opción de instalación sugerida por el instalador . +MigrateIsDoneStepByStep=La versión dirigida (%s) tiene un espacio de varias versiones. El asistente de instalación volverá a sugerir una migración adicional una vez que este se complete. +CheckThatDatabasenameIsCorrect=Compruebe que el nombre de la base de datos " %s " sea correcto. +IfAlreadyExistsCheckOption=Si este nombre es correcto y la base de datos aún no existe, debe marcar la opción "Crear base de datos". +OpenBaseDir=Parámetro PHP openbasedir +YouAskToCreateDatabaseSoRootRequired=Has marcado la casilla "Crear base de datos". Para esto, debe proporcionar el nombre de usuario / contraseña del superusuario (parte inferior del formulario). +YouAskToCreateDatabaseUserSoRootRequired=Has marcado la casilla "Crear propietario de base de datos". Para esto, debe proporcionar el nombre de usuario / contraseña del superusuario (parte inferior del formulario). +NextStepMightLastALongTime=El paso actual puede tardar varios minutos. Por favor, espere hasta que la siguiente pantalla se muestre completamente antes de continuar. +MigrationShippingDelivery=Actualizar el almacenamiento de envío +MigrationShippingDelivery2=Actualización de almacenamiento de envío 2 +MigrationFinished=Migración terminada +LastStepDesc= Último paso : defina aquí el nombre de usuario y la contraseña que desea utilizar para conectarse a Dolibarr. No pierda esto, ya que es la cuenta maestra para administrar todas las demás cuentas de usuario / adicionales. +ActivateModule=Activar módulo %s +ShowEditTechnicalParameters=Haga clic aquí para mostrar / editar parámetros avanzados (modo experto) +WarningUpgrade=Advertencia:\n¿Ejecutó primero una copia de seguridad de la base de datos?\nEsto es muy recomendable. La pérdida de datos (debido a, por ejemplo, errores en mysql versión 5.5.40 / 41/42/43) puede ser posible durante este proceso, por lo que es esencial realizar un volcado completo de su base de datos antes de iniciar cualquier migración.\n\nHaga clic en Aceptar para iniciar el proceso de migración ... +ErrorDatabaseVersionForbiddenForMigration=La versión de su base de datos es %s. Tiene un error crítico que hace posible la pérdida de datos si realiza cambios estructurales en su base de datos, como lo requiere el proceso de migración. Por esta razón, no se permitirá la migración hasta que actualice su base de datos a una versión de capa (parcheada) (lista de versiones de buggy conocidas: %s) +KeepDefaultValuesWamp=Utilizó el asistente de configuración de Dolibarr de DoliWamp, por lo que los valores propuestos aquí ya están optimizados. Cámbialas solo si sabes lo que estás haciendo. +KeepDefaultValuesDeb=Usó el asistente de configuración de Dolibarr de un paquete de Linux (Ubuntu, Debian, Fedora ...), por lo que los valores propuestos aquí ya están optimizados. Solo se debe ingresar la contraseña del propietario de la base de datos para crear. Cambie otros parámetros solo si sabe lo que está haciendo. +KeepDefaultValuesMamp=Utilizó el asistente de configuración de Dolibarr de DoliMamp, por lo que los valores propuestos aquí ya están optimizados. Cámbialas solo si sabes lo que estás haciendo. +KeepDefaultValuesProxmox=Utilizó el asistente de configuración de Dolibarr desde un dispositivo virtual Proxmox, por lo que los valores propuestos aquí ya están optimizados. Cámbialas solo si sabes lo que estás haciendo. +UpgradeExternalModule=Ejecutar proceso de actualización dedicado de módulo externo +SetAtLeastOneOptionAsUrlParameter=Establecer al menos una opción como parámetro en la URL. Por ejemplo: '... repair.php? Standard = confirmado' +NothingToDelete=Nada que limpiar / borrar +MigrationFixData=Arreglo para datos desnormalizados +MigrationOrder=Migración de datos para pedidos del cliente. +MigrationSupplierOrder=Migración de datos para pedidos de proveedores. +MigrationProposal=Migración de datos para propuestas comerciales. +MigrationInvoice=Migración de datos para las facturas del cliente. +MigrationContract=Migración de datos para contratos. +MigrationSuccessfullUpdate=Actualización exitosa +MigrationUpdateFailed=Proceso de actualización fallido +MigrationRelationshipTables=Migración de datos para tablas de relaciones (%s) +MigrationPaymentsUpdate=Corrección de datos de pago +MigrationPaymentsNumberToUpdate=%s pago (s) para actualizar +MigrationProcessPaymentUpdate=Actualización de pago (s) %s +MigrationPaymentsNothingToUpdate=No mas cosas que hacer +MigrationPaymentsNothingUpdatable=No más pagos que puedan ser corregidos. +MigrationContractsUpdate=Corrección de datos del contrato. +MigrationContractsNumberToUpdate=%s contrato (s) para actualizar +MigrationContractsLineCreation=Crear línea de contrato para contrato ref %s +MigrationContractsNothingToUpdate=No mas cosas que hacer +MigrationContractsFieldDontExist=El campo fk_facture ya no existe. Nada que hacer. +MigrationContractsEmptyDatesUpdate=Contrato de fecha vacía de corrección +MigrationContractsEmptyDatesUpdateSuccess=La corrección de la fecha vacía del contrato se realizó correctamente +MigrationContractsEmptyDatesNothingToUpdate=Sin contrato fecha vacía para corregir. +MigrationContractsEmptyCreationDatesNothingToUpdate=No hay fecha de creación del contrato para corregir. +MigrationContractsInvalidDatesUpdate=Corrección del contrato de fecha de mal valor +MigrationContractsInvalidDateFix=Contrato correcto %s (Fecha del contrato = %s, Fecha de inicio del servicio mín = %s) +MigrationContractsInvalidDatesNothingToUpdate=No hay fecha con mal valor para corregir. +MigrationContractsIncoherentCreationDateUpdate=Corrección de fecha de creación de contrato de mal valor. +MigrationContractsIncoherentCreationDateUpdateSuccess=Corrección de fecha de creación de contrato de mal valor realizada correctamente +MigrationContractsIncoherentCreationDateNothingToUpdate=No hay mal valor para la fecha de creación del contrato para corregir +MigrationReopeningContracts=Contrato abierto cerrado por error +MigrationReopenThisContract=Reabrir contrato %s +MigrationReopeningContractsNothingToUpdate=No hay contrato cerrado para abrir +MigrationBankTransfertsUpdate=Actualización de enlaces entre entrada bancaria y transferencia bancaria. +MigrationBankTransfertsNothingToUpdate=Todos los enlaces están actualizados. +MigrationShipmentOrderMatching=Actualización del recibo de envíos +MigrationDeliveryOrderMatching=Actualización del recibo de entrega +MigrationDeliveryDetail=Actualización de entrega +MigrationStockDetail=Actualizar el valor de stock de los productos. +MigrationMenusDetail=Actualizar tablas dinámicas de menús. +MigrationDeliveryAddress=Actualizar la dirección de entrega en los envíos. +MigrationProjectTaskActors=Migración de datos para la tabla llx_projet_task_actors +MigrationProjectUserResp=Campo de migración de datos fk_user_resp de llx_projet a llx_element_contact +MigrationProjectTaskTime=Tiempo de actualización gastado en segundos +MigrationActioncommElement=Actualizar datos sobre acciones. +MigrationCategorieAssociation=Migración de categorías +MigrationEvents=Migración de eventos para agregar el propietario del evento en la tabla de asignación +MigrationEventsContact=Migración de eventos para agregar contactos de eventos a la tabla de asignación +MigrationRemiseEntity=Actualizar el valor del campo de entidad de llx_societe_remise +MigrationRemiseExceptEntity=Actualizar el valor del campo de entidad de llx_societe_remise_except +MigrationUserRightsEntity=Actualizar el valor del campo de entidad de llx_user_rights +MigrationUserGroupRightsEntity=Actualizar el valor del campo de entidad de llx_usergroup_rights +MigrationResetBlockedLog=Restablecer módulo BlockedLog para algoritmo v7 +ErrorFoundDuringMigration=Se informaron errores durante el proceso de migración, por lo que el siguiente paso no está disponible. Para ignorar los errores, puede hacer clic aquí , pero es posible que la aplicación o algunas funciones no funcionen correctamente hasta que se resuelvan los errores. +YouTryInstallDisabledByDirLock=La aplicación intentó actualizarse automáticamente, pero las páginas de instalación / actualización se han deshabilitado por seguridad (directorio renombrado con el sufijo .lock).
    +YouTryInstallDisabledByFileLock=La aplicación intentó auto actualizarse, pero las páginas de instalación / actualización se han deshabilitado por seguridad (debido a la existencia de un archivo de bloqueo install.lock en el directorio de documentos de dolibarr).
    +ClickOnLinkOrRemoveManualy=Haga clic en el siguiente enlace. Si siempre ve esta misma página, debe eliminar / cambiar el nombre del archivo install.lock en el directorio de documentos. diff --git a/htdocs/langs/es_CO/main.lang b/htdocs/langs/es_CO/main.lang index 6711dc4e08e..ae50a789189 100644 --- a/htdocs/langs/es_CO/main.lang +++ b/htdocs/langs/es_CO/main.lang @@ -89,7 +89,6 @@ PriceUHTCurrency=U.P (moneda) PriceUTTC=ARRIBA. (inc. impuestos) MulticurrencyAlreadyPaid=Ya pagado, moneda original. MulticurrencyRemainderToPay=Quedan por pagar, moneda original. -MulticurrencyPaymentAmount=Importe del pago, moneda original MulticurrencyAmountTTC=Importe (inc. De impuestos), moneda original MulticurrencyAmountVAT=Importe impuesto, moneda original Totalforthispage=Total para esta página diff --git a/htdocs/langs/es_CO/modulebuilder.lang b/htdocs/langs/es_CO/modulebuilder.lang new file mode 100644 index 00000000000..8bbcc78a506 --- /dev/null +++ b/htdocs/langs/es_CO/modulebuilder.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - modulebuilder +ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: diff --git a/htdocs/langs/es_CO/multicurrency.lang b/htdocs/langs/es_CO/multicurrency.lang new file mode 100644 index 00000000000..aaede0c21d6 --- /dev/null +++ b/htdocs/langs/es_CO/multicurrency.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MulticurrencyPaymentAmount=Importe del pago, moneda original diff --git a/htdocs/langs/es_CO/orders.lang b/htdocs/langs/es_CO/orders.lang index 17c59bea360..ddbbf00a6dc 100644 --- a/htdocs/langs/es_CO/orders.lang +++ b/htdocs/langs/es_CO/orders.lang @@ -8,8 +8,6 @@ StatusOrderDraft=Borrador (necesita ser validado) TypeContact_commande_external_BILLING=Contacto factura cliente TypeContact_commande_external_SHIPPING=Contacto de envío del cliente PDFEinsteinDescription=A complete order model -PDFEratostheneDescription=A complete order model -PDFProformaDescription=A complete Proforma invoice template StatusSupplierOrderCanceledShort=Cancelado StatusSupplierOrderCanceled=Cancelado StatusSupplierOrderDraft=Borrador (necesita ser validado) diff --git a/htdocs/langs/es_CO/other.lang b/htdocs/langs/es_CO/other.lang new file mode 100644 index 00000000000..428db92d092 --- /dev/null +++ b/htdocs/langs/es_CO/other.lang @@ -0,0 +1,142 @@ +# Dolibarr language file - Source file is en_US - other +SecurityCode=Código de seguridad +NumberingShort=NORTE +Tools=Herramientas +TMenuTools=Herramientas +ToolsDesc=Todas las herramientas no incluidas en otras entradas del menú se agrupan aquí.
    Se puede acceder a todas las herramientas a través del menú de la izquierda. +Birthday=Cumpleaños +BirthdayAlertOn=alerta de cumpleaños activa +BirthdayAlertOff=alerta de cumpleaños inactiva +MonthOfInvoice=Mes (número 1-12) de fecha de factura +TextMonthOfInvoice=Mes (texto) de fecha de factura +PreviousMonthOfInvoice=Mes anterior (número 1-12) de fecha de factura +TextPreviousMonthOfInvoice=Mes anterior (texto) de fecha de factura +NextMonthOfInvoice=Mes siguiente (número 1-12) de fecha de factura +TextNextMonthOfInvoice=Mes siguiente (texto) de fecha de factura +ZipFileGeneratedInto=Archivo zip generado en %s . +DocFileGeneratedInto=Archivo doc generado en %s . +MessageForm=Mensaje en forma de pago en línea +ContentOfDirectoryIsNotEmpty=El contenido de este directorio no está vacío. +DeleteAlsoContentRecursively=Marque para eliminar todo el contenido recursivamente +YearOfInvoice=Año de facturación +PreviousYearOfInvoice=Año anterior de la fecha de facturación +NextYearOfInvoice=Siguiente año de la fecha de facturación +DateNextInvoiceAfterGen=Fecha de la próxima factura (posterior a la generación). +Notify_PROPAL_VALIDATE=Propuesta del cliente validada. +Notify_PROPAL_CLOSE_SIGNED=Propuesta de cliente cerrada firmada +Notify_PROPAL_CLOSE_REFUSED=Propuesta de cliente cerrada rechazada +Notify_PROPAL_SENTBYMAIL=Propuesta comercial enviada por correo. +Notify_WITHDRAW_TRANSMIT=Retiro de transmisión +Notify_WITHDRAW_CREDIT=Retiro de crédito +Notify_WITHDRAW_EMIT=Realizar retirada +Notify_COMPANY_CREATE=Tercero creado +Notify_COMPANY_SENTBYMAIL=Correos enviados desde tarjeta de terceros +Notify_BILL_VALIDATE=Factura del cliente validada +Notify_BILL_UNVALIDATE=Factura del cliente sin validar +Notify_BILL_CANCEL=Factura de cliente cancelada +Notify_BILL_SENTBYMAIL=Factura del cliente enviada por correo +Notify_CONTRACT_VALIDATE=Contrato validado +Notify_FICHINTER_ADD_CONTACT=Contacto agregado a la intervención. +Notify_FICHINTER_SENTBYMAIL=Intervención enviada por correo. +Notify_SHIPPING_VALIDATE=Envío validado +Notify_SHIPPING_SENTBYMAIL=Envios enviados por correo +Notify_MEMBER_VALIDATE=Miembro validado +Notify_MEMBER_SUBSCRIPTION=Miembro suscrito +Notify_MEMBER_RESILIATE=Miembro cancelado +Notify_MEMBER_DELETE=Miembro eliminado +Notify_PROJECT_CREATE=Creación de proyectos +Notify_HOLIDAY_VALIDATE=Deja la solicitud validada (se requiere aprobación) +Notify_HOLIDAY_APPROVE=Dejar la solicitud aprobada +SeeModuleSetup=Ver configuración del módulo %s +NbOfAttachedFiles=Número de archivos / documentos adjuntos +TotalSizeOfAttachedFiles=Tamaño total de los archivos / documentos adjuntos +MaxSize=Talla máxima +AttachANewFile=Adjuntar un nuevo archivo / documento +LinkedObject=Objeto vinculado +NbOfActiveNotifications=Número de notificaciones (número de correos electrónicos del destinatario) +PredefinedMailTest=__(Hola)__\nEste es un correo de prueba enviado a __EMAIL__.\nLas dos líneas están separadas por un retorno de carro.\n\n__USER_SIGNATURE__ +PredefinedMailTestHtml=__(Hola)__\nEste es un correo de prueba (la palabra prueba debe estar en negrita).
    Las dos líneas están separadas por un retorno de carro.

    __USER_SIGNATURE__ +PredefinedMailContentLink=Puede hacer clic en el enlace de abajo para realizar su pago si aún no lo ha hecho.\n\n%s\n\n +DemoDesc=Dolibarr es un ERP / CRM compacto que soporta varios módulos de negocios. Una demostración que muestre todos los módulos no tiene sentido ya que este escenario nunca ocurre (varios cientos disponibles). Por lo tanto, varios perfiles de demostración están disponibles. +ChooseYourDemoProfilMore=... o cree su propio perfil
    (selección manual del módulo) +DemoFundation=Administrar miembros de una fundación. +DemoFundation2=Gestionar miembros y cuenta bancaria de una fundación. +DemoCompanyServiceOnly=Empresa o servicio de venta independiente solamente +DemoCompanyShopWithCashDesk=Gestiona una tienda con un mostrador de caja. +DemoCompanyAll=Empresa con múltiples actividades (todos los módulos principales) +CreatedById=ID de usuario que creó +ModifiedById=Identificación de usuario que hizo el último cambio +ValidatedById=ID de usuario que validó +CanceledById=Identificación de usuario que canceló +ClosedById=ID de usuario que cerró +CreatedByLogin=Inicio de sesión de usuario que creó +ModifiedByLogin=Inicio de sesión de usuario que hizo el último cambio +ValidatedByLogin=Inicio de sesión de usuario que validó +CanceledByLogin=Inicio de sesión de usuario que canceló +ClosedByLogin=Inicio de sesión de usuario que cerró +FileWasRemoved=El archivo %s fue eliminado +DirWasRemoved=Directorio %s fue eliminado +FeatureNotYetAvailable=Característica aún no disponible en la versión actual +FeaturesSupported=Características compatibles +Width=Anchura +Height=Altura +Depth=Profundidad +Top=Parte superior +Bottom=Fondo +WeightUnitg=sol +LengthUnitm=metro +Surface=Zona +SurfaceUnitdm2=dm +SurfaceUnitfoot2=pies cuadrados +SizeUnitm=metro +BugTracker=Localizador de bichos +SendNewPasswordDesc=Este formulario le permite solicitar una nueva contraseña. Se enviará a su dirección de correo electrónico.
    El cambio entrará en vigencia una vez que haga clic en el enlace de confirmación en el correo electrónico.
    Revise su bandeja de entrada. +BackToLoginPage=Volver a la página de inicio de sesión +AuthenticationDoesNotAllowSendNewPassword=El modo de autenticación es %s .
    En este modo, Dolibarr no puede saber ni cambiar su contraseña. Póngase en contacto con el administrador del sistema si desea cambiar su contraseña. +EnableGDLibraryDesc=Instale o habilite la biblioteca GD en su instalación de PHP para usar esta opción. +ProfIdShortDesc= La identificación del profesor %s es una información que depende del país tercero.
    Por ejemplo, para el país %s , es el código %s . +DolibarrDemo=Dolibarr ERP / CRM demo +StatsByNumberOfUnits=Estadísticas por suma de cantidad de productos / servicios. +StatsByNumberOfEntities=Estadísticas en número de entidades referentes (n. ° de factura, o pedido ...) +NumberOfProposals=Numero de propuestas +NumberOfCustomerInvoices=Número de facturas de clientes +NumberOfUnitsProposals=Número de unidades sobre propuestas. +NumberOfUnitsCustomerInvoices=Número de unidades en las facturas de los clientes. +EMailTextInterventionAddedContact=Se le ha asignado una nueva intervención %s. +EMailTextInterventionValidated=La intervención %s ha sido validada. +ImportedWithSet=Conjunto de datos de importación +ResizeDesc=Introduzca el nuevo ancho O nueva altura. La relación se mantendrá durante el cambio de tamaño ... +NewSizeAfterCropping=Nuevo tamaño después de recortar +DefineNewAreaToPick=Defina una nueva área en la imagen para elegir (haga clic izquierdo en la imagen y luego arrastre hasta que llegue a la esquina opuesta) +CurrentInformationOnImage=Esta herramienta fue diseñada para ayudarte a redimensionar o recortar una imagen. Esta es la información sobre la imagen editada actual. +YouReceiveMailBecauseOfNotification=Recibirá este mensaje porque su correo electrónico se agregó a la lista de destinos para recibir información sobre eventos particulares en el software %s de %s. +YouReceiveMailBecauseOfNotification2=Este evento es el siguiente: +ThisIsListOfModules=Esta es una lista de módulos preseleccionados por este perfil de demostración (en esta demostración solo se ven los módulos más comunes). Edite esto para tener una demostración más personalizada y haga clic en "Inicio". +UseAdvancedPerms=Utilice los permisos avanzados de algunos módulos. +SelectAColor=Elige un color +AddFiles=Agregar archivos +StartUpload=Iniciar la subida +CancelUpload=Cancelar carga +FileIsTooBig=Archivos es demasiado grande +PleaseBePatient=Por favor sea paciente... +ResetPassword=Restablecer la contraseña +RequestToResetPasswordReceived=Se ha recibido una solicitud para cambiar tu contraseña. +NewKeyIs=Estas son tus nuevas claves para iniciar sesión. +NewKeyWillBe=Su nueva clave para iniciar sesión en el software será +ClickHereToGoTo=Haga clic aquí para ir a %s +YouMustClickToChange=Sin embargo, primero debe hacer clic en el siguiente enlace para validar este cambio de contraseña. +ForgetIfNothing=Si no solicitó este cambio, simplemente olvide este correo electrónico. Sus credenciales se mantienen seguras. +IfAmountHigherThan=Si la cantidad es superior a %s +SourcesRepository=Repositorio de fuentes +PassEncoding=Codificación de contraseña +YourPasswordMustHaveAtLeastXChars=Su contraseña debe tener al menos %s caracteres +YourPasswordHasBeenReset=Tu contraseña ha sido restablecida con éxito +SMSSentTo=SMS enviados a %s +MissingIds=IDs que faltan +ExportsArea=Area de exportaciones +LibraryUsed=Biblioteca utilizada +LibraryVersion=Versión de la biblioteca +NoExportableData=No hay datos exportables (no hay módulos cargados con datos exportables o faltan permisos) +WebsiteSetup=Configuración del sitio web del módulo. +WEBSITE_KEYWORDS=Palabras clave +LinesToImport=Líneas para importar diff --git a/htdocs/langs/es_CO/productbatch.lang b/htdocs/langs/es_CO/productbatch.lang new file mode 100644 index 00000000000..b49891f9a6b --- /dev/null +++ b/htdocs/langs/es_CO/productbatch.lang @@ -0,0 +1,20 @@ +# Dolibarr language file - Source file is en_US - productbatch +ManageLotSerial=Use número de lote/serie +ProductStatusOnBatch=Si (lote/serie requerido) +ProductStatusNotOnBatch=No (lote/serie no usado) +atleast1batchfield=Fecha de consumo o fecha de venta o número de lote/serie +batch_number=Número de lote/serie +EatByDate=Fecha de consumo +SellByDate=Fecha de venta +DetailBatchNumber=Detalles lote/serie +printBatch=Lote/serie: %s +printEatby=Consumido-por: %s +printSellby=Vendido-por: %s +printQty=Cantidad: 1%d +AddDispatchBatchLine=Añadir una línea para la duración del despacho +WhenProductBatchModuleOnOptionAreForced=Cuando el módulo Lote/Serie está activado, la reducción automática de existencias se ve obligada a 'Reducir las existencias reales en la validación de envío' y el modo de aumento automático es forzado a 'Incrementar las existencias reales en el envío manual entre almacenes' y no puede ser editado. Otras opciones se pueden definir a su gusto. +ProductDoesNotUseBatchSerial=Este producto no utiliza número de lote/serie: +ProductLotSetup=Configuración de modulo lote/serie +ShowCurrentStockOfLot=Mostrar valores actuales por pareja producto/lote +ShowLogOfMovementIfLot=Mostrar registro de movimientos por pareja producto/lote +StockDetailPerBatch=Valores detallados por lote diff --git a/htdocs/langs/es_CO/products.lang b/htdocs/langs/es_CO/products.lang new file mode 100644 index 00000000000..1f376268421 --- /dev/null +++ b/htdocs/langs/es_CO/products.lang @@ -0,0 +1,192 @@ +# Dolibarr language file - Source file is en_US - products +ProductRef=Producto ref. +ProductLabel=Etiqueta del producto +ProductLabelTranslated=Etiqueta traducida del producto +ProductDescriptionTranslated=Descripción traducida del producto. +ProductNoteTranslated=Nota de producto traducida +ProductServiceCard=Tarjeta de productos / servicios +ProductId=Identificación de producto / servicio +MassBarcodeInit=Inicio de código de barras masivo +MassBarcodeInitDesc=Esta página se puede usar para inicializar un código de barras en objetos que no tienen un código de barras definido. Verifique antes de que se complete la configuración del código de barras del módulo. +ProductAccountancyBuyCode=Código contable (compra) +ProductAccountancySellCode=Código contable (venta) +ProductAccountancySellExportCode=Código contable (venta exportación) +ProductsOnSaleOnly=Productos para la venta solamente +ProductsOnPurchaseOnly=Productos para la compra solamente +ProductsNotOnSell=Productos no a la venta y no a la compra. +ProductsOnSellAndOnBuy=Productos para la venta y para la compra. +ServicesOnSaleOnly=Servicios a la venta solamente +ServicesOnPurchaseOnly=Servicios para la compra solamente +ServicesNotOnSell=Servicios no a la venta y no a la compra. +ServicesOnSellAndOnBuy=Servicios para la venta y para la compra. +LastRecordedProducts=Últimos %s productos grabados +LastRecordedServices=Últimos servicios grabados %s +Stock=Valores +MenuStocks=Cepo +OnBuy=Para comprar +NotOnSell=No para la venta +ProductStatusNotOnSell=No para la venta +ProductStatusNotOnSellShort=No para la venta +ProductStatusOnBuy=Para comprar +ProductStatusNotOnBuy=No para la compra +ProductStatusOnBuyShort=Para comprar +ProductStatusNotOnBuyShort=No para la compra +UpdateVAT=Actualizar vat +UpdateDefaultPrice=Actualizar precio por defecto +UpdateLevelPrices=Actualizar precios para cada nivel. +SellingPriceTTC=Precio de venta (impuestos incluidos) +CostPriceUsage=Este valor podría ser utilizado para el cálculo del margen. +SoldAmount=Cantidad vendida +PurchasedAmount=Cantidad comprada +EditSellingPriceLabel=Editar etiqueta de precio de venta +CantBeLessThanMinPrice=El precio de venta no puede ser inferior al mínimo permitido para este producto (%s sin impuestos). Este mensaje también puede aparecer si escribe un descuento demasiado importante. +ErrorProductAlreadyExists=Ya existe un producto con referencia %s. +ErrorProductBadRefOrLabel=Valor incorrecto para referencia o etiqueta. +ErrorProductClone=Hubo un problema al intentar clonar el producto o servicio. +ErrorPriceCantBeLowerThanMinPrice=Error, el precio no puede ser más bajo que el precio mínimo. +ProductsAndServicesArea=Área de productos y servicios. +ProductsArea=Area de producto +ServicesArea=Area de servicios +ListOfStockMovements=Lista de movimientos de stock +PriceForEachProduct=Productos con precios específicos. +SetDefaultBarcodeType=Establecer el tipo de código de barras +BarcodeValue=Valor de código de barras +NoteNotVisibleOnBill=Nota (no visible en facturas, propuestas ...) +ServiceLimitedDuration=Si el producto es un servicio con duración limitada: +MultiPricesNumPrices=Numero de precios +AssociatedProductsAbility=Activar productos virtuales (kits) +AssociatedProducts=Productos virtuales +AssociatedProductsNumber=Número de productos que componen este producto virtual. +ParentProductsNumber=Número de producto de embalaje principal +ParentProducts=Productos para padres +IfZeroItIsNotAVirtualProduct=Si es 0, este producto no es un producto virtual. +IfZeroItIsNotUsedByVirtualProduct=Si es 0, este producto no es utilizado por ningún producto virtual +KeywordFilter=Filtro de palabras clave +CategoryFilter=Filtro de categoria +ProductToAddSearch=Buscar producto para añadir +NoMatchFound=No se encontraron coincidencias +ListOfProductsServices=Lista de productos / servicios +ProductParentList=Lista de productos / servicios virtuales con este producto como componente +ErrorAssociationIsFatherOfThis=Uno de los productos seleccionados es padre con el producto actual +DeleteProduct=Eliminar un producto / servicio +ConfirmDeleteProduct=¿Estás seguro de que quieres eliminar este producto / servicio? +ProductDeleted=Producto / Servicio "%s" eliminado de la base de datos. +ExportDataset_produit_1=Productos +DeleteProductLine=Eliminar línea de productos +ConfirmDeleteProductLine=¿Estás seguro de que quieres eliminar esta línea de productos? +PredefinedProductsAndServicesToSell=Productos / servicios predefinidos para vender. +PredefinedProductsToPurchase=Producto predefinido a comprar. +PredefinedServicesToPurchase=Servicios predefinidos para la compra. +PredefinedProductsAndServicesToPurchase=Productos / servicios predefinidos para comprar. +NotPredefinedProducts=Productos / servicios no predefinidos +GenerateThumb=Generar pulgar +ServiceNb=Servicio # %s +ListProductServiceByPopularity=Lista de productos / servicios por popularidad +ListProductByPopularity=Listado de productos por popularidad. +ListServiceByPopularity=Listado de servicios por popularidad. +ConfirmCloneProduct=¿Está seguro de que desea clonar el producto o servicio %s ? +CloneContentProduct=Clona toda la información principal del producto / servicio. +ClonePricesProduct=Precios de clon +CloneCombinationsProduct=Variantes de productos clonados. +ProductIsUsed=Este producto es usado +NewRefForClone=Árbitro. de nuevo producto / servicio +CustomerPrices=Precios al cliente +CustomCode=Aduanas / productos / código HS +p=u +d=re +g=sol +m=metro +unitP=Trozo +ProductCodeModel=Plantilla de referencia del producto +ServiceCodeModel=Plantilla de servicio de ref +AlwaysUseNewPrice=Utilizar siempre el precio actual del producto / servicio. +AlwaysUseFixedPrice=Usar el precio fijo +PriceByQuantity=Diferentes precios por cantidad. +DisablePriceByQty=Desactivar precios por cantidad. +PriceByQuantityRange=Rango Cantidad +MultipriceRules=Reglas del segmento de precios +UseMultipriceRules=Utilice reglas de segmento de precios (definidas en la configuración del módulo del producto) para calcular automáticamente los precios de todos los demás segmentos de acuerdo con el primer segmento +PercentVariationOver=variación %% sobre %s +KeepEmptyForAutoCalculation=Manténgalo vacío para que esto se calcule automáticamente por peso o volumen de productos +ProductsMultiPrice=Productos y precios para cada segmento de precios. +ProductsOrServiceMultiPrice=Precios al cliente (de productos o servicios, multiples precios). +ProductSellByQuarterHT=Rotación de productos trimestral antes de impuestos. +ServiceSellByQuarterHT=Servicio de facturación trimestral antes de impuestos. +Quarter1=1er. Trimestre +Quarter2=2do. Trimestre +Quarter3=3er. Trimestre +Quarter4=4to. Trimestre +NumberOfStickers=Número de stickers para imprimir en la página. +PrintsheetForOneBarCode=Imprimir varios adhesivos para un código de barras +BuildPageToPrint=Generar página para imprimir +FillBarCodeTypeAndValueManually=Rellene el tipo de código de barras y el valor manualmente. +FillBarCodeTypeAndValueFromProduct=Rellene el tipo de código de barras y el valor del código de barras de un producto. +FillBarCodeTypeAndValueFromThirdParty=Rellene el tipo de código de barras y el valor del código de barras de un tercero. +ResetBarcodeForAllRecords=Defina el valor del código de barras para todos los registros (esto también restablecerá el valor del código de barras ya definido con nuevos valores) +PriceByCustomer=Diferentes precios para cada cliente. +PriceCatalogue=Un solo precio de venta por producto / servicio. +PricingRule=Reglas para los precios de venta. +AddCustomerPrice=Añadir precio por cliente +ForceUpdateChildPriceSoc=Establecer el mismo precio en las filiales de los clientes. +PriceByCustomerLog=Registro de precios de clientes anteriores +MinimumPriceLimit=El precio mínimo no puede ser más bajo que %s +PriceExpressionSelected=Expresión de precio seleccionado +PriceExpressionEditorHelp1="precio = 2 + 2" o "2 + 2" para establecer el precio. Utilizar ; separar expresiones +PriceExpressionEditorHelp2=Puede acceder a ExtraFields con variables como # extrafield_myextrafieldkey # y variables globales con # global_mycode # +PriceMode=Modo de precio +ComposedProductIncDecStock=Aumentar / Disminuir acciones en cambio de padres +MinSupplierPrice=Precio de compra mínimo +MinCustomerPrice=Precio de venta minimo +DynamicPriceConfiguration=Configuración dinámica de precios +AddUpdater=Añadir actualizador +GlobalVariableUpdaterType0=Datos JSON +GlobalVariableUpdaterHelp0=Analiza los datos JSON de la URL especificada, VALUE especifica la ubicación del valor relevante, +GlobalVariableUpdaterHelpFormat0=Formato para solicitud {"URL": "http://example.com/urlofjson", "VALUE": "array1, array2, targetvalue"} +GlobalVariableUpdaterType1=Datos del servicio web +GlobalVariableUpdaterHelp1=Analiza los datos del servicio web de la URL especificada, NS especifica el espacio de nombres, VALUE especifica la ubicación del valor relevante, DATA debe contener los datos a enviar y METHOD es el método WS que llama +GlobalVariableUpdaterHelpFormat1=El formato para la solicitud es {"URL": "http://example.com/urlofws", "VALUE": "array, targetvalue", "NS": "http://example.com/urlofns", "METHOD" : "myWSMethod", "DATA": {"your": "data", "to": "send"}} +CorrectlyUpdated=Correctamente actualizado +PropalMergePdfProductActualFile=Los archivos que se usan para agregar a PDF Azur son / son +PropalMergePdfProductChooseFile=Seleccionar archivos PDF +IncludingProductWithTag=Incluyendo producto / servicio con etiqueta. +DefaultPriceRealPriceMayDependOnCustomer=Precio por defecto, el precio real puede depender del cliente. +WarningSelectOneDocument=Por favor seleccione al menos un documento +NbOfQtyInProposals=Cantidad en propuestas +ClinkOnALinkOfColumn=Haga clic en un enlace de la columna %s para obtener una vista detallada ... +TranslatedLabel=Etiqueta traducida +TranslatedDescription=Descripción traducida +TranslatedNote=Notas traducidas +WeightUnits=Unidad de peso +VolumeUnits=Unidad de volumen +SizeUnits=Unidad de tamaño +ConfirmDeleteProductBuyPrice=¿Estás seguro de que quieres eliminar este precio de compra? +VariantAttributes=Atributos variantes +ProductAttributes=Atributos de variante para productos. +ProductAttributeName=Atributo de la variante %s +ProductAttribute=Atributo variante +ProductAttributeDeleteDialog=¿Estás seguro de que quieres eliminar este atributo? Todos los valores serán eliminados +ProductAttributeValueDeleteDialog=¿Está seguro de que desea eliminar el valor "%s" con la referencia "%s" de este atributo? +ProductCombinationDeleteDialog=¿Seguro que quieres eliminar la variante del producto " %s "? +ProductCombinationAlreadyUsed=Hubo un error al borrar la variante. Por favor verifica que no esté siendo utilizado en ningún objeto. +PropagateVariant=Variantes de propagación +HideProductCombinations=Ocultar variante de productos en el selector de productos. +EditProductCombination=Variante de edición +EditProductCombinations=Variantes de edición +SelectCombination=Seleccionar combinacion +Features=Caracteristicas +PriceImpact=Impacto de precio +WeightImpact=Impacto del peso +ErrorCreatingProductAttributeValue=Se produjo un error al crear el valor del atributo. Podría ser porque ya existe un valor con esa referencia. +ProductCombinationGeneratorWarning=Si continúas, antes de generar nuevas variantes, todas las anteriores serán BORRADAS. Los ya existentes serán actualizados con los nuevos valores. +TooMuchCombinationsWarning=La generación de muchas variantes puede resultar en un alto uso de la CPU y la memoria, y Dolibarr no puede crearlas. Habilitar la opción "%s" puede ayudar a reducir el uso de memoria. +DoNotRemovePreviousCombinations=No eliminar variantes anteriores. +ErrorDeletingGeneratedProducts=Se ha producido un error al intentar eliminar las variantes de producto existentes. +NbOfDifferentValues=No. de valores diferentes +ParentProduct=Producto principal +HideChildProducts=Ocultar productos variantes +ShowChildProducts=Mostrar productos variantes +NoEditVariants=Vaya a la tarjeta del producto principal y edite el impacto del precio de las variantes en la pestaña de variantes +ConfirmCloneProductCombinations=¿Desea copiar todas las variantes del producto al otro producto principal con la referencia dada? +CloneDestinationReference=Referencia del producto destino +ErrorCopyProductCombinations=Se ha producido un error al copiar las variantes del producto. +ErrorDestinationProductNotFound=Producto de destino no encontrado diff --git a/htdocs/langs/es_CO/projects.lang b/htdocs/langs/es_CO/projects.lang new file mode 100644 index 00000000000..680a7006fb5 --- /dev/null +++ b/htdocs/langs/es_CO/projects.lang @@ -0,0 +1,163 @@ +# Dolibarr language file - Source file is en_US - projects +RefProject=Árbitro. proyecto +ProjectRef=Proyecto ref. +ProjectId=Projecto ID +ProjectLabel=Etiqueta del proyecto +ProjectsArea=Area de proyectos +SharedProject=Todos +PrivateProject=Contactos del proyecto +AllAllowedProjects=Todo el proyecto que puedo leer (mío + público) +MyProjectsDesc=Esta vista se limita a los proyectos para los que es un contacto. +ProjectsPublicDesc=Esta vista presenta todos los proyectos que se le permite leer. +TasksOnProjectsPublicDesc=Esta vista presenta todas las tareas en los proyectos que se le permite leer. +ProjectsPublicTaskDesc=Esta vista presenta todos los proyectos y tareas que puede leer. +ProjectsDesc=Esta vista presenta todos los proyectos (sus permisos de usuario le otorgan permiso para ver todo). +TasksOnProjectsDesc=Esta vista presenta todas las tareas en todos los proyectos (sus permisos de usuario le otorgan permiso para ver todo). +MyTasksDesc=Esta vista se limita a proyectos o tareas para las que es un contacto. +OnlyOpenedProject=Solo los proyectos abiertos son visibles (los proyectos en estado borrador o cerrado no son visibles). +TasksPublicDesc=Esta vista presenta todos los proyectos y tareas que puede leer. +TasksDesc=Esta vista presenta todos los proyectos y tareas (sus permisos de usuario le otorgan permiso para ver todo). +AllTaskVisibleButEditIfYouAreAssigned=Todas las tareas para proyectos calificados son visibles, pero puede ingresar el tiempo solo para la tarea asignada al usuario seleccionado. Asigne tarea si necesita ingresar tiempo en ella. +OnlyYourTaskAreVisible=Sólo las tareas asignadas a usted son visibles. Asigne una tarea a usted mismo si no está visible y necesita ingresar tiempo en ella. +ProjectCategories=Etiquetas / categorías del proyecto +DeleteAProject=Borrar un proyecto +ConfirmDeleteAProject=¿Estás seguro de que quieres eliminar este proyecto? +ConfirmDeleteATask=¿Estás seguro de que quieres eliminar esta tarea? +OpportunitiesStatusForOpenedProjects=Lleva cantidad de proyectos abiertos por estado +OpportunitiesStatusForProjects=Lleva cantidad de proyectos por estado. +ShowProject=Mostrar proyecto +SetProject=Proyecto conjunto +NoProject=Ningún proyecto definido o propio +TimeSpent=Tiempo usado +TimeSpentByYou=Tiempo pasado por ti +TimeSpentByUser=Tiempo empleado por el usuario +TimesSpent=Tiempo usado +TaskTimeSpent=Tiempo dedicado a las tareas. +TasksOnOpenedProject=Tareas en proyectos abiertos. +NewTimeSpent=Tiempo usado +MyTimeSpent=Mi tiempo pasado +BillTime=Factura el tiempo empleado +TaskDateStart=Fecha de inicio de la tarea +TaskDateEnd=Fecha de finalización de la tarea +TaskDescription=Descripción de la tarea +AddTimeSpent=Crear tiempo dedicado +AddHereTimeSpentForDay=Agregue aquí el tiempo dedicado a este día / tarea +Activities=Tareas / actividades +MyActivities=Mis tareas / actividades +MyProjectsArea=Mis proyectos area +ProgressDeclared=Progreso declarado +ProgressCalculated=Progreso calculado +Time=Hora +ListOfTasks=Lista de tareas +GoToListOfTimeConsumed=Ir a la lista de tiempo consumido +ListProposalsAssociatedProject=Listado de las propuestas comerciales relacionadas con el proyecto. +ListInvoicesAssociatedProject=Listado de facturas de clientes relacionadas con el proyecto. +ListPredefinedInvoicesAssociatedProject=Lista de facturas de plantillas de clientes relacionadas con el proyecto. +ListContractAssociatedProject=Listado de contratos relacionados con el proyecto. +ListShippingAssociatedProject=Listado de envíos relacionados con el proyecto. +ListFichinterAssociatedProject=Listado de intervenciones relacionadas con el proyecto. +ListExpenseReportsAssociatedProject=Listado de informes de gastos relacionados con el proyecto. +ListDonationsAssociatedProject=Listado de donaciones relacionadas con el proyecto. +ListVariousPaymentsAssociatedProject=Lista de pagos varios relacionados con el proyecto. +ListSalariesAssociatedProject=Listado de pagos de sueldos relacionados con el proyecto. +ListActionsAssociatedProject=Listado de eventos relacionados con el proyecto. +ListTaskTimeUserProject=Lista de tiempo consumido en tareas de proyecto. +ListTaskTimeForTask=Lista de tiempo consumido en la tarea +ActivityOnProjectToday=Actividad en proyecto hoy +ActivityOnProjectYesterday=Actividad en proyecto ayer +ActivityOnProjectThisWeek=Actividad en proyecto esta semana. +ActivityOnProjectThisMonth=Actividad en proyecto este mes +ActivityOnProjectThisYear=Actividad en proyecto este año. +ChildOfProjectTask=Hijo del proyecto / tarea +TaskHasChild=Tarea tiene hijo +NotOwnerOfProject=No propietario de este proyecto privado. +CantRemoveProject=Este proyecto no se puede eliminar, ya que se hace referencia a otros objetos (factura, pedidos u otros). Ver la pestaña de referers. +ValidateProject=Validar projet +ConfirmValidateProject=¿Seguro que quieres validar este proyecto? +ConfirmCloseAProject=¿Seguro que quieres cerrar este proyecto? +AlsoCloseAProject=También cierre el proyecto (manténgalo abierto si aún necesita seguir las tareas de producción en él) +ReOpenAProject=Proyecto abierto +ConfirmReOpenAProject=¿Seguro que quieres volver a abrir este proyecto? +ActionsOnProject=Eventos en proyecto +YouAreNotContactOfProject=No eres contacto de este proyecto privado. +UserIsNotContactOfProject=El usuario no es un contacto de este proyecto privado. +DeleteATimeSpent=Eliminar el tiempo pasado +ConfirmDeleteATimeSpent=¿Estás seguro de que quieres eliminar este tiempo pasado? +DoNotShowMyTasksOnly=Ver también tareas no asignadas a mí. +ShowMyTasksOnly=Ver solo las tareas asignadas a mi +ProjectsDedicatedToThisThirdParty=Proyectos dedicados a este tercero. +NoTasks=No hay tareas para este proyecto. +LinkedToAnotherCompany=Vinculado a otro tercero +TaskIsNotAssignedToUser=Tarea no asignada al usuario. Use el botón ' %s ' para asignar la tarea ahora. +ErrorTimeSpentIsEmpty=El tiempo gastado está vacío +ThisWillAlsoRemoveTasks=Esta acción también eliminará todas las tareas del proyecto ( %s tareas en este momento) y todas las entradas de tiempo invertido. +CloneTasks=Tareas de clonacion +CloneContacts=Clonar contactos +CloneNotes=Notas de clones +CloneProjectFiles=Proyecto clonado archivos unidos +CloneTaskFiles=Clonar las tareas unidas a los archivos (si las tareas están clonadas) +CloneMoveDate=Actualizar fechas de proyecto / tareas a partir de ahora? +ConfirmCloneProject=¿Seguro que vas a clonar este proyecto? +ProjectReportDate=Cambiar fechas de tareas de acuerdo a la nueva fecha de inicio del proyecto. +ErrorShiftTaskDate=Imposible cambiar la fecha de la tarea de acuerdo con la nueva fecha de inicio del proyecto +TaskCreatedInDolibarr=Tarea %s creada +TaskModifiedInDolibarr=Tarea %s modificada +TaskDeletedInDolibarr=Tarea %s eliminada +OpportunityStatus=Estado de plomo +OpportunityProbability=Probabilidad de plomo +OpportunityAmount=Cantidad de plomo +WonLostExcluded=Ganados / Perdidos excluidos +TypeContact_project_internal_PROJECTLEADER=Líder del proyecto +TypeContact_project_external_PROJECTLEADER=Líder del proyecto +TypeContact_project_internal_PROJECTCONTRIBUTOR=Contribuyente +TypeContact_project_external_PROJECTCONTRIBUTOR=Contribuyente +TypeContact_project_task_internal_TASKEXECUTIVE=Ejecutivo de tareas +TypeContact_project_task_external_TASKEXECUTIVE=Ejecutivo de tareas +TypeContact_project_task_internal_TASKCONTRIBUTOR=Contribuyente +TypeContact_project_task_external_TASKCONTRIBUTOR=Contribuyente +SelectElement=Seleccionar elemento +AddElement=Enlace al elemento +DocumentModelBeluga=Plantilla de documento de proyecto para la descripción de objetos vinculados +DocumentModelBaleine=Plantilla de documento de proyecto para tareas +PlannedWorkload=Carga de trabajo planificada +ProjectReferers=Artículos relacionados +ProjectMustBeValidatedFirst=El proyecto debe ser validado primero +TimeAlreadyRecorded=Este es el tiempo pasado ya registrado para esta tarea / día y el usuario %s +ProjectsWithThisUserAsContact=Proyectos con este usuario como contacto. +TasksWithThisUserAsContact=Tareas asignadas a este usuario. +ResourceNotAssignedToProject=No asignado al proyecto. +ResourceNotAssignedToTheTask=No asignado a la tarea. +NoUserAssignedToTheProject=No hay usuarios asignados a este proyecto. +TimeSpentBy=Tiempo pasado por +AssignTaskToMe=Asigname tarea +AssignTaskToUser=Asignar tarea a %s +SelectTaskToAssign=Seleccionar tarea para asignar ... +ProjectOverview=Visión general +ManageTasks=Usar proyectos para seguir tareas y / o informar el tiempo empleado (hojas de tiempo) +ManageOpportunitiesStatus=Usar proyectos para seguir leads / oportunidades. +ProjectNbProjectByMonth=Nº de proyectos creados por mes. +ProjectNbTaskByMonth=Nº de tareas creadas por mes. +ProjectOppAmountOfProjectsByMonth=Cantidad de leads por mes +ProjectWeightedOppAmountOfProjectsByMonth=Cantidad ponderada de clientes potenciales por mes +ProjectOpenedProjectByOppStatus=Abrir proyecto / liderar por estado de plomo +ProjectsStatistics=Estadísticas sobre proyectos / leads +TasksStatistics=Estadísticas de proyecto / tareas de plomo +TaskAssignedToEnterTime=Tarea asignada. Debe ser posible introducir el tiempo en esta tarea. +IdTaskTime=Tiempo de tarea de identificación +OpenedProjectsByThirdparties=Proyectos abiertos por terceros. +OnlyOpportunitiesShort=Solo lleva +OpenedOpportunitiesShort=Conductores abiertos +NotAnOpportunityShort=No es una pista +OpportunityTotalAmount=Cantidad total de clientes potenciales +OpportunityPonderatedAmount=Cantidad ponderada de clientes potenciales +OpportunityPonderatedAmountDesc=Cantidad de leads ponderada con probabilidad +OppStatusQUAL=Calificación +OppStatusPROPO=Propuesta +LatestProjects=Últimos proyectos %s +LatestModifiedProjects=Últimos proyectos modificados %s +AllowCommentOnTask=Permitir comentarios de usuarios en tareas +AllowCommentOnProject=Permitir comentarios de usuarios en proyectos +DontHavePermissionForCloseProject=No tiene permisos para cerrar el proyecto %s +RecordsClosed=%s proyecto (s) cerrado (s) +SendProjectRef=Proyecto de información %s +TimeSpentForInvoice=Tiempo usado diff --git a/htdocs/langs/es_CO/propal.lang b/htdocs/langs/es_CO/propal.lang index 110a2292dbc..a3cee6bb843 100644 --- a/htdocs/langs/es_CO/propal.lang +++ b/htdocs/langs/es_CO/propal.lang @@ -5,4 +5,3 @@ PropalsDraft=Borradores PropalStatusDraft=Borrador (necesita ser validado) TypeContact_propal_external_BILLING=Contacto factura cliente DocModelAzurDescription=A complete proposal model -DocModelCyanDescription=A complete proposal model diff --git a/htdocs/langs/es_CO/salaries.lang b/htdocs/langs/es_CO/salaries.lang new file mode 100644 index 00000000000..a4085292909 --- /dev/null +++ b/htdocs/langs/es_CO/salaries.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - salaries +SALARIES_ACCOUNTING_ACCOUNT_PAYMENT=Cuenta contable utilizada para usuarios de terceros +SALARIES_ACCOUNTING_ACCOUNT_PAYMENT_Desc=La cuenta de contabilidad dedicada definida en la tarjeta de usuario se usará solo para la contabilidad del libro auxiliar. Este se usará para el Libro mayor y como valor predeterminado de la contabilidad del libro auxiliar si la cuenta de contabilidad del usuario dedicada no está definida. diff --git a/htdocs/langs/es_CO/sms.lang b/htdocs/langs/es_CO/sms.lang new file mode 100644 index 00000000000..e2f7ed66501 --- /dev/null +++ b/htdocs/langs/es_CO/sms.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - sms +SmsRecipient=Objetivo +SmsTo=Objetivo diff --git a/htdocs/langs/es_CO/stocks.lang b/htdocs/langs/es_CO/stocks.lang index 2a064596410..7ea4665b427 100644 --- a/htdocs/langs/es_CO/stocks.lang +++ b/htdocs/langs/es_CO/stocks.lang @@ -1,7 +1,4 @@ # Dolibarr language file - Source file is en_US - stocks -Stock=Valores -Stocks=Cepo -ListOfStockMovements=Lista de movimientos de stock inventoryEdit=Editar SelectCategory=Filtro de categoria inventoryDeleteLine=Eliminar linea diff --git a/htdocs/langs/es_CO/supplier_proposal.lang b/htdocs/langs/es_CO/supplier_proposal.lang new file mode 100644 index 00000000000..23837b787b0 --- /dev/null +++ b/htdocs/langs/es_CO/supplier_proposal.lang @@ -0,0 +1,4 @@ +# Dolibarr language file - Source file is en_US - supplier_proposal +SupplierProposals=Propuestas de proveedores +SupplierProposalsShort=Propuestas de proveedores +SupplierProposalStatusDraft=Borrador (necesita ser validado) diff --git a/htdocs/langs/es_CO/suppliers.lang b/htdocs/langs/es_CO/suppliers.lang new file mode 100644 index 00000000000..7bd957f2702 --- /dev/null +++ b/htdocs/langs/es_CO/suppliers.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - suppliers +NewSupplier=Nuevo vendedor +RefSupplierShort=Árbitro. vendedor diff --git a/htdocs/langs/es_CO/trips.lang b/htdocs/langs/es_CO/trips.lang new file mode 100644 index 00000000000..7095262d44a --- /dev/null +++ b/htdocs/langs/es_CO/trips.lang @@ -0,0 +1,40 @@ +# Dolibarr language file - Source file is en_US - trips +ShowExpenseReport=Mostrar reporte de gastos +Trips=Reporte de gastos +ShowTrip=Mostrar reporte de gastos +NewTrip=Nuevo reporte de gastos +DeleteTrip=Borrar reporte de gastos +ExpenseReportApproved=Un reporte de gastos fue aprobado +ExpenseReportRefused=Un reporte de gastos fue rechazado +ExpenseReportPaid=Un reporte de gastos fue pagado +REFUSEUR=Rechazado por +CANCEL_USER=Borrado por +DATE_REFUS=Fecha de rechazo +ValidateAndSubmit=Validar y enviar para aprobación +ConfirmRefuseTrip=Séguro que quiere rechazar este reporte de gastos? +ValideTrip=Aprobar reporte de gastos +ConfirmValideTrip=Séguro que quiere aprobar este reporte de gastos? +PaidTrip=Pagar un reporte de gastos +ConfirmCancelTrip=Séguro que quiere cancelar este reporte de gastos? +SaveTrip=Validar reporte de gastos +ConfirmSaveTrip=Séguro que quiere validar este reporte de gastos? +NoTripsToExportCSV=No hay reportes de gasto para este periodo +ExpenseReportPayment=Pago de reporte de gasto +ExpenseReportsToApprove=Reportes de gastos por aprobar +ExpenseReportsToPay=Reportes de gastos por pagar +ConfirmCloneExpenseReport=Séguro que quiere clonar este reporte de gastos? +ExpenseReportsRules=reglas para reporte de gastos +ExpenseReportRulesDesc=Usted puede crear o actualizar cualquier regla de cálculo. \nÉsta parte se usará Cuando un usuario crée un nuevo reporte de gastos. +expenseReportOffset=Compensar +expenseReportTotalForFive=Ejemplo con 1 d 1 = 5 +expenseReportRangeFromTo=de 1%d a 1%d +ExpenseReportLimitAmount=Monto límite +byEX_DAY=Por día (límite de 1%s) +byEX_MON=Por mes (límite de 1%s) +byEX_YEA=Por (límite de 1%s) +byEX_EXP=Por línea (límite de 1%s) +nolimitbyEX_DAY=Por día (sin límite) +nolimitbyEX_MON=Por mes (sin límite) +nolimitbyEX_YEA=Por (sin límite) +nolimitbyEX_EXP=Por línea (sin límite) +CarCategory=Categoría de carro: diff --git a/htdocs/langs/es_CO/users.lang b/htdocs/langs/es_CO/users.lang new file mode 100644 index 00000000000..b6c1a01ffe9 --- /dev/null +++ b/htdocs/langs/es_CO/users.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - users +MenuUsersAndGroups=Usuarios y Grupos diff --git a/htdocs/langs/es_CO/withdrawals.lang b/htdocs/langs/es_CO/withdrawals.lang new file mode 100644 index 00000000000..2320346b97c --- /dev/null +++ b/htdocs/langs/es_CO/withdrawals.lang @@ -0,0 +1,5 @@ +# Dolibarr language file - Source file is en_US - withdrawals +StandingOrderPayment=Orden de pago de domiciliación bancaria +WithdrawalsReceipts=Órdenes de débito directo +WithdrawalReceipt=Orden de domiciliación bancaria +StatusRefused=Rechazado diff --git a/htdocs/langs/es_CO/workflow.lang b/htdocs/langs/es_CO/workflow.lang new file mode 100644 index 00000000000..ae09b907f97 --- /dev/null +++ b/htdocs/langs/es_CO/workflow.lang @@ -0,0 +1,15 @@ +# Dolibarr language file - Source file is en_US - workflow +WorkflowSetup=Configuración del módulo de flujo de trabajo +WorkflowDesc=Este módulo proporciona algunas acciones automáticas. De manera predeterminada, el flujo de trabajo está abierto (puede hacer las cosas en el orden que desee) pero aquí puede activar algunas acciones automáticas. +ThereIsNoWorkflowToModify=No hay modificaciones de flujo de trabajo disponibles con los módulos activados. +descWORKFLOW_PROPAL_AUTOCREATE_ORDER=Crear automáticamente un pedido de ventas después de firmar una propuesta comercial (el nuevo pedido tendrá la misma cantidad que la propuesta) +descWORKFLOW_PROPAL_AUTOCREATE_INVOICE=Crear automáticamente una factura de cliente después de firmar una propuesta comercial (la nueva factura tendrá el mismo importe que la propuesta) +descWORKFLOW_CONTRACT_AUTOCREATE_INVOICE=Crear automáticamente una factura de cliente después de validar un contrato +descWORKFLOW_ORDER_AUTOCREATE_INVOICE=Crear automáticamente una factura de cliente después de cerrar un pedido de ventas (la nueva factura tendrá el mismo importe que el pedido) +descWORKFLOW_ORDER_CLASSIFY_BILLED_PROPAL=Clasifique la propuesta de origen vinculada como facturada cuando el pedido de ventas esté configurado como facturado (y si el monto del pedido es el mismo que el monto total de la propuesta vinculada firmada) +descWORKFLOW_INVOICE_CLASSIFY_BILLED_PROPAL=Clasifique la propuesta de origen vinculada como facturada cuando se valida la factura del cliente (y si el monto de la factura es el mismo que el monto total de la propuesta vinculada firmada) +descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_ORDER=Clasifique el pedido de ventas de origen vinculado como facturado cuando se valida la factura del cliente (y si el monto de la factura es el mismo que el monto total del pedido vinculado) +descWORKFLOW_INVOICE_CLASSIFY_BILLED_ORDER=Clasifique el pedido de ventas de origen vinculado como facturado cuando la factura del cliente se establece como pagada (y si el monto de la factura es el mismo que el monto total del pedido vinculado) +descWORKFLOW_ORDER_CLASSIFY_SHIPPED_SHIPPING=Clasifique el pedido de ventas de origen vinculado como enviado cuando se valida un envío (y si la cantidad enviada por todos los envíos es la misma que en el pedido para actualizar) +descWORKFLOW_ORDER_CLASSIFY_BILLED_SUPPLIER_PROPOSAL=Clasifique la propuesta del proveedor de origen vinculado como facturada cuando se valida la factura del proveedor (y si el monto de la factura es el mismo que el monto total de la propuesta vinculada) +descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Clasifique el pedido de compra de origen vinculado como facturado cuando se valida la factura del proveedor (y si el monto de la factura es el mismo que el monto total del pedido vinculado) diff --git a/htdocs/langs/es_CO/zapier.lang b/htdocs/langs/es_CO/zapier.lang new file mode 100644 index 00000000000..b1de821259f --- /dev/null +++ b/htdocs/langs/es_CO/zapier.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - zapier +ModuleZapierForDolibarrDesc =Modulo Zapier para Dolibarr diff --git a/htdocs/langs/es_DO/accountancy.lang b/htdocs/langs/es_DO/accountancy.lang new file mode 100644 index 00000000000..9827b9d3795 --- /dev/null +++ b/htdocs/langs/es_DO/accountancy.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - accountancy +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 diff --git a/htdocs/langs/es_DO/admin.lang b/htdocs/langs/es_DO/admin.lang index 985dcfadd4e..3c5abab95b1 100644 --- a/htdocs/langs/es_DO/admin.lang +++ b/htdocs/langs/es_DO/admin.lang @@ -7,7 +7,5 @@ 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 -SuppliersCommandModel=Complete template of Purchase Order -SuppliersInvoiceModel=Complete template of Vendor Invoice 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. EmailCollectorLoadThirdPartyHelp=You can use this action to use the email content to find and load an existing thirdparty in your database. The found (or created) thirdparty will be used for following actions that need it. In the parameter field you can use for example 'EXTRACT:BODY:Name:\\s([^\\s]*)' if you want to extract the name of the thirdparty from a string 'Name: name to find' found into the body. diff --git a/htdocs/langs/es_DO/companies.lang b/htdocs/langs/es_DO/companies.lang new file mode 100644 index 00000000000..6897cf22f06 --- /dev/null +++ b/htdocs/langs/es_DO/companies.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - companies +Contact=Contact diff --git a/htdocs/langs/es_DO/modulebuilder.lang b/htdocs/langs/es_DO/modulebuilder.lang new file mode 100644 index 00000000000..8bbcc78a506 --- /dev/null +++ b/htdocs/langs/es_DO/modulebuilder.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - modulebuilder +ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: diff --git a/htdocs/langs/es_DO/projects.lang b/htdocs/langs/es_DO/projects.lang new file mode 100644 index 00000000000..7e42793b0e9 --- /dev/null +++ b/htdocs/langs/es_DO/projects.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - projects +CantRemoveProject=This project can't be removed as it is referenced by some other objects (invoice, orders or other). See referers tab. diff --git a/htdocs/langs/es_EC/accountancy.lang b/htdocs/langs/es_EC/accountancy.lang new file mode 100644 index 00000000000..17040a8e488 --- /dev/null +++ b/htdocs/langs/es_EC/accountancy.lang @@ -0,0 +1,268 @@ +# Dolibarr language file - Source file is en_US - accountancy +ACCOUNTING_EXPORT_SEPARATORCSV=Separador de columnas para el archivo de exportación +ACCOUNTING_EXPORT_DATE=Formato de fecha para el archivo de exportación +ACCOUNTING_EXPORT_PIECE=Exportar el número de pieza +ACCOUNTING_EXPORT_GLOBAL_ACCOUNT=Exportar con cuenta global +ACCOUNTING_EXPORT_LABEL=Etiqueta de exportación +ACCOUNTING_EXPORT_AMOUNT=Cantidad de la exportación +ACCOUNTING_EXPORT_DEVISE=Moneda de exportación +ACCOUNTING_EXPORT_PREFIX_SPEC=Especifique el prefijo para el nombre de archivo +DefaultForService=Predeterminado para servicio +CantSuggest=No puedo sugerir +AccountancySetupDoneFromAccountancyMenu=La mayoría de la configuración de la contabilidad se realiza desde el menú%s +ConfigAccountingExpert=Configuración del experto en contabilidad de módulos +Journaux=Revistas +JournalFinancial=Revistas financieras +BackToChartofaccounts=Retorno gráfico de cuentas +Chartofaccounts=Catálogo de cuentas +CurrentDedicatedAccountingAccount=Cuenta dedicada actual +AssignDedicatedAccountingAccount=Nueva cuenta para asignar +InvoiceLabel=Etiqueta de factura +OverviewOfAmountOfLinesNotBound=Descripción general de la cantidad de líneas no vinculadas a una cuenta de contabilidad +OverviewOfAmountOfLinesBound=Descripción general de la cantidad de líneas ya vinculadas a una cuenta de contabilidad +DeleteCptCategory=Eliminar cuenta de contabilidad del grupo +ConfirmDeleteCptCategory=¿Está seguro de que desea eliminar esta cuenta contable del grupo de cuentas contables? +JournalizationInLedgerStatus=Estado de la publicación +AlreadyInGeneralLedger=Ya registrado en diarios +NotYetInGeneralLedger=No se ha registrado en los libros mayores +GroupIsEmptyCheckSetup=El grupo está vacío, compruebe la configuración del grupo de contabilidad personalizado +DetailByAccount=Mostrar detalles por cuenta +AccountWithNonZeroValues=Cuentas con valores distintos de cero. +MainAccountForCustomersNotDefined=Cuenta principal de contabilidad para clientes no definidos en la configuración +MainAccountForSuppliersNotDefined=Cuenta contable principal para proveedores no definidos en la configuración +MainAccountForUsersNotDefined=Cuenta principal de contabilidad para usuarios no definidos en la configuración +MainAccountForVatPaymentNotDefined=Principal cuenta contable para el pago del IVA no definido en la configuración +MainAccountForSubscriptionPaymentNotDefined=Cuenta contable principal para el pago de suscripción no definida en la configuración +AccountancyArea=Área de contabilidad +AccountancyAreaDescActionOnce=Las siguientes acciones normalmente se ejecutan una sola vez, o una vez al año ... +AccountancyAreaDescActionOnceBis=Los siguientes pasos deben hacerse para ahorrar tiempo en el futuro, sugiriendo que la cuenta de contabilidad predeterminada correcta al hacer la publicación (registro de escritura en revistas y libro mayor) +AccountancyAreaDescActionFreq=Las siguientes acciones se ejecutan generalmente cada mes, semana o día para empresas muy grandes ... +AccountancyAreaDescJournalSetup=PASO%s: Crea o comprueba el contenido de tu lista de diario desde el menú%s +AccountancyAreaDescChartModel=PASO%s: Cree un modelo de gráfico de cuenta desde el menú%s +AccountancyAreaDescChart=PASO%s: Crea o comprueba contenido de tu gráfico de cuenta desde el menú%s +AccountancyAreaDescVat=PASO%s: Definir cuentas contables para cada tipo de IVA. Para ello, utilice la entrada de menú%s. +AccountancyAreaDescDefault=PASO %s: Defina las cuentas contables predeterminadas. Para esto, usa la entrada del menú %s. +AccountancyAreaDescExpenseReport=PASO%s: Defina cuentas de contabilidad predeterminadas para cada tipo de informe de gastos. Para ello, utilice la entrada de menú%s. +AccountancyAreaDescSal=PASO%s: Defina las cuentas contables predeterminadas para el pago de los salarios. Para ello, utilice la entrada de menú%s. +AccountancyAreaDescContrib=PASO %s: Defina las cuentas contables predeterminadas para gastos especiales (impuestos diversos). Para ello, utilice la entrada de menú %s. +AccountancyAreaDescDonation=PASO%s: Defina las cuentas contables predeterminadas para la donación. Para ello, utilice la entrada de menú%s. +AccountancyAreaDescSubscription=PASO %s: defina cuentas contables predeterminadas para la suscripción de miembros. Para esto, use la entrada del menú %s. +AccountancyAreaDescMisc=PASO%s: Definir cuenta predeterminada obligatoria y cuentas contables predeterminadas para transacciones diversas. Para ello, utilice la entrada de menú%s. +AccountancyAreaDescLoan=PASO%s: Defina las cuentas contables predeterminadas para los préstamos. Para ello, utilice la entrada de menú%s. +AccountancyAreaDescBank=PASO%s: Definir cuentas contables y código de diario para cada banco y cuentas financieras. Para ello, utilice la entrada de menú%s. +AccountancyAreaDescProd=PASO%s: define cuentas contables en sus productos / servicios. Para ello, utilice la entrada de menú%s. +AccountancyAreaDescBind=PASO%s: Compruebe la vinculación entre las líneas%s existentes y la cuenta de contabilidad se hace, por lo que la aplicación será capaz de periodizar las transacciones en Ledger en un solo clic. Complete los enlaces que falten. Para ello, utilice la entrada de menú%s. +AccountancyAreaDescWriteRecords=PASO%s: Escribir transacciones en el Libro mayor. Para ello, vaya al menú %s y haga clic en el botón %s. +AccountancyAreaDescAnalyze=PASO%s: Añadir o editar transacciones existentes y generar informes y exportaciones. +AccountancyAreaDescClosePeriod=PASO%s: Período de cierre para que no podamos hacer modificaciones en un futuro. +TheJournalCodeIsNotDefinedOnSomeBankAccount=Un paso obligatorio en la instalación no estaba completo (diario de código de contabilidad no definido para todas las cuentas bancarias) +Selectchartofaccounts=Seleccionar el plan de cuentas activo +Addanaccount=Agregar una cuenta de contabilidad +AccountAccounting=Cuenta de contabilidad +SubledgerAccount=Cuenta auxiliar +SubledgerAccountLabel=Etiqueta de cuenta auxiliar +ShowAccountingAccount=Mostrar cuenta contable +ShowAccountingJournal=Mostrar registro de contabilidad +MenuDefaultAccounts=Cuentas predeterminadas +MenuBankAccounts=Cuentas bancarias +MenuExpenseReportAccounts=Cuentas de informes de gastos +MenuProductsAccounts=Cuentas de productos +MenuClosureAccounts=Cuentas de cierre +MenuAccountancyClosure=Cierre +ProductsBinding=Productos +Binding=Vinculación a cuentas +CustomersVentilation=Factura del cliente vinculante +SuppliersVentilation=Factura del proveedor vinculada +ExpenseReportsVentilation=Relación de informes de gastos +CreateMvts=Crear nueva transacción +UpdateMvts=Modificación de una transacción +ValidTransaction=Validar transacción +WriteBookKeeping=Registrar transacciones en Ledger +Bookkeeping=Libro mayor +ObjectsRef=Objeto fuente ref +CAHTF=Proveedor de compra total antes de impuestos +TotalExpenseReport=Informe de gastos totales +InvoiceLines=Líneas de facturas para enlazar +InvoiceLinesDone=Líneas vinculadas de facturas +ExpenseReportLines=Líneas de informes de gastos para enlazar +ExpenseReportLinesDone=Líneas de informes de gastos vinculados +IntoAccount=Vincular la línea con la cuenta de contabilidad +TotalForAccount=Total para cuenta contable +Ventilate=Enlazar +LineId=Línea de identificación +EndProcessing=Proceso finalizado. +Lineofinvoice=Línea de factura +LineOfExpenseReport=Informe de línea de gastos +NoAccountSelected=No se ha seleccionado ninguna cuenta de contabilidad +VentilatedinAccount=Vinculado con éxito a la cuenta contable +NotVentilatedinAccount=No vinculado a la cuenta contable +XLineSuccessfullyBinded=%s productos/servicios vinculados con éxito a una cuenta de contabilidad +XLineFailedToBeBinded=Los productos/servicios de%s no estaban vinculados a ninguna cuenta contable +ACCOUNTING_LIMIT_LIST_VENTILATION=Número de elementos a unir mostrados por página (máximo recomendado: 50) +ACCOUNTING_LIST_SORT_VENTILATION_TODO=Comienza la clasificación de la página "Vinculación a hacer" por los elementos más recientes +ACCOUNTING_LIST_SORT_VENTILATION_DONE=Comienza la clasificación de la página "Encuadernación realizada" por los elementos más recientes +ACCOUNTING_LENGTH_DESCRIPTION=Truncar la descripción de los productos y servicios en los listados después de los caracteres x (Mejor +ACCOUNTING_LENGTH_DESCRIPTION_ACCOUNT=Truncar el formulario de descripción de la cuenta de producto y servicios en los listados después de los caracteres x (Mejor +ACCOUNTING_LENGTH_GACCOUNT=Longitud de las cuentas de contabilidad general (si establece el valor a 6 aquí, la cuenta '706' aparecerá como '706000' en la pantalla) +ACCOUNTING_LENGTH_AACCOUNT=Longitud de las cuentas contables de terceros (si establece el valor en 6 aquí, la cuenta '401' aparecerá como '401000' en la pantalla) +ACCOUNTING_MANAGE_ZERO=Permitir gestionar diferentes números de ceros al final de una cuenta contable. Necesario por algunos países (como Suiza). Si está desactivado (predeterminado), puede configurar los siguientes dos parámetros para pedirle a la aplicación que agregue ceros virtuales. +BANK_DISABLE_DIRECT_INPUT=Inhabilitar la grabación directa de la transacción en una cuenta bancaria +ACCOUNTING_ENABLE_EXPORT_DRAFT_JOURNAL=Habilitar la exportación del borrador en el diario +ACCOUNTANCY_COMBO_FOR_AUX=Habilite la lista combinada para la cuenta subsidiaria (puede ser lenta si tiene muchos terceros) +ACCOUNTING_SELL_JOURNAL=Vender un diario +ACCOUNTING_PURCHASE_JOURNAL=Diario de compra +ACCOUNTING_MISCELLANEOUS_JOURNAL=Diario diverso +ACCOUNTING_EXPENSEREPORT_JOURNAL=Diario de informes de gastos +ACCOUNTING_RESULT_PROFIT=Cuenta contable de resultados (beneficio) +ACCOUNTING_RESULT_LOSS=Cuenta contable de resultados (pérdida) +ACCOUNTING_ACCOUNT_TRANSFER_CASH=Cuenta contable de transferencia bancaria transitoria +TransitionalAccount=Cuenta de transferencia bancaria transitoria +ACCOUNTING_ACCOUNT_SUSPENSE=Cuenta de cuenta de espera +ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Cuenta contable para registrar suscripciones +ACCOUNTING_PRODUCT_BUY_ACCOUNT=Cuenta contable por defecto para los productos comprados (se usa si no se define en la hoja de productos) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Cuenta contable por defecto para los productos comprados en EEC (se usa si no se define en la hoja de productos) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Cuenta contable por defecto para los productos comprados e importados fuera de la CEE (usado si no está definido en la hoja de productos) +ACCOUNTING_PRODUCT_SOLD_ACCOUNT=Cuenta contable por defecto para los productos vendidos (utilizada si no se define en la hoja del producto) +ACCOUNTING_PRODUCT_SOLD_INTRA_ACCOUNT=Cuenta contable por defecto para los productos vendidos en la CEE (utilizada si no se define en la hoja de producto) +ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Cuenta contable por defecto para los productos vendidos y exportados fuera de la CEE (usado si no está definido en la hoja de producto) +ACCOUNTING_SERVICE_BUY_ACCOUNT=Cuenta contable por defecto para los servicios comprados (utilizado si no se define en la hoja de servicio) +ACCOUNTING_SERVICE_BUY_INTRA_ACCOUNT=Cuenta contable por defecto para los servicios comprados en EEC (utilizada si no está definida en la hoja de servicios) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Cuenta contable por defecto para los servicios comprados e importados fuera de la CEE (se usa si no se define en la hoja de servicios) +ACCOUNTING_SERVICE_SOLD_ACCOUNT=Contabilidad por defecto para los servicios vendidos (utilizado si no se define en la hoja de servicio) +ACCOUNTING_SERVICE_SOLD_INTRA_ACCOUNT=Cuenta contable por defecto para los servicios vendidos en la CEE (utilizada si no se define en la hoja de servicios) +ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Cuenta contable por defecto para los servicios vendidos y exportados fuera de la CEE (usado si no está definido en la hoja de servicios) +LabelAccount=Cuenta de etiqueta +LabelOperation=Operación de etiquetas +LetteringCode=Codigo de letras +Codejournal=diario +NumPiece=Número de pieza +TransactionNumShort=Num. transacción +GroupByAccountAccounting=Grupo por cuenta contable +AccountingAccountGroupsDesc=Puede definir aquí algunos grupos de cuentas contables. Se usarán para informes de contabilidad personalizados. +DeleteMvt=Eliminar líneas de libro mayor +DelMonth=Mes para borrar +DelJournal=Diario para borrar +ConfirmDeleteMvt=Esto eliminará todas las líneas del Libro mayor para el año / mes y / o de una revista específica (se requiere al menos un criterio). Deberá volver a utilizar la función 'Registro en contabilidad' para que el registro eliminado vuelva al libro mayor. +FinanceJournal=Diario de finanzas +ExpenseReportsJournal=Diario de informes de gastos +DescFinanceJournal=Revista financiera que incluye todos los tipos de pagos por cuenta bancaria +DescJournalOnlyBindedVisible=Esta es una vista de registro que está vinculada a una cuenta de contabilidad y se puede registrar en el Libro mayor. +VATAccountNotDefined=Cuenta IVA no definida +ThirdpartyAccountNotDefined=Cuenta para terceros no definida +ProductAccountNotDefined=Cuenta para producto no definido +FeeAccountNotDefined=Cuenta por cuota no definida +BankAccountNotDefined=Cuenta bancaria no definida +CustomerInvoicePayment=Pago del cliente de la factura +ThirdPartyAccount=Cuenta de terceros +NewAccountingMvt=Nueva transacción +NumMvts=Numero de transacción +ListeMvts=Lista de movimientos +ErrorDebitCredit=El débito y el crédito no pueden tener un valor al mismo tiempo +ReportThirdParty=Lista de cuenta de terceros +DescThirdPartyReport=Consulte aquí la lista de clientes y proveedores de terceros y sus cuentas contables +ListAccounts=Lista de las cuentas contables +UnknownAccountForThirdparty=Cuenta de terceros desconocida. Usaremos %s +UnknownAccountForThirdpartyBlocking=Cuenta de terceros desconocida. Error de bloqueo +ThirdpartyAccountNotDefinedOrThirdPartyUnknown=Cuenta de terceros no definida o tercero desconocido. Usaremos %s +ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Terceros desconocidos y subledger no definidos en el pago. Mantendremos vacío el valor de la cuenta auxiliar. +ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Cuenta de terceros no definida o tercero desconocido. Error de bloqueo +UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Cuenta de terceros desconocida y cuenta en espera no definida. Error de bloqueo +PaymentsNotLinkedToProduct=Pago no vinculado a ningún producto / servicio +OpeningBalance=Saldo de apertura +ShowOpeningBalance=Mostrar saldo inicial +HideOpeningBalance=Ocultar saldo inicial +PcgtypeDesc=Los grupos de cuentas se utilizan como criterios predefinidos de "filtro" y "agrupación" para algunos informes contables. Por ejemplo, 'INGRESOS' o 'GASTOS' se utilizan como grupos para las cuentas contables de productos para construir el informe de gastos / ingresos. +Reconcilable=Conciliable +TotalVente=Volumen de negocios total antes de impuestos +TotalMarge=Margen total de ventas +DescVentilCustomer=Consulte aquí la lista de líneas de factura de cliente vinculadas (o no) a una cuenta de contabilidad de producto +DescVentilMore=En la mayoría de los casos, si utiliza productos o servicios predefinidos y configura el número de cuenta en la tarjeta de producto/servicio, la aplicación podrá realizar todas las vinculaciones entre sus líneas de factura y la cuenta contable de su plan de cuentas, solo en un clic con el botón "%s". Si la cuenta no se configuró en las tarjetas de producto/servicio o si todavía tiene algunas líneas que no están vinculadas a una cuenta, deberá realizar un enlace manual desde el menú "%s". +DescVentilDoneCustomer=Consulte aquí la lista de líneas de clientes de facturas y su cuenta de contabilidad de productos +DescVentilTodoCustomer=Vincular líneas de factura no consolidadas con una cuenta de contabilidad de producto +ChangeAccount=Cambie la cuenta de contabilidad de producto/servicio para las líneas seleccionadas con la siguiente cuenta de contabilidad: +DescVentilSupplier=Consulte aquí la lista de líneas de factura del proveedor vinculadas o aún no vinculadas a una cuenta contable del producto (solo se puede ver el registro que no se ha transferido en la contabilidad) +DescVentilDoneSupplier=Consulte aquí la lista de las líneas de facturas de proveedores y su cuenta contable +DescVentilTodoExpenseReport=Vincular las líneas de informes de gastos no consolidadas con una cuenta de contabilidad de cargos +DescVentilExpenseReport=Consulte aquí la lista de líneas de reporte de gastos vinculadas (o no) a una cuenta contable de honorarios +DescVentilExpenseReportMore=Si configura una cuenta contable en el tipo de líneas de informe de gastos, la aplicación podrá hacer todo el enlace entre sus líneas de informe de gastos y la cuenta contable de su plan de cuentas, solo con un clic con el botón "%s". Si la cuenta no se configuró en el diccionario de tarifas o si todavía tiene algunas líneas que no están vinculadas a ninguna cuenta, deberá realizar un enlace manual desde el menú "%s". +DescVentilDoneExpenseReport=Consulte aquí la lista de las líneas de informes de gastos y su cuenta contable de honorarios +OverviewOfMovementsNotValidated=Paso 1/ Resumen de movimientos no validados. (Necesario para cerrar un año fiscal) +DescValidateMovements=Se prohíbe cualquier modificación o eliminación de escritura, letras y eliminaciones. Todas las entradas para un ejercicio deben validarse; de lo contrario, no será posible cerrar +AutomaticBindingDone=Unión automática realizada +ErrorAccountancyCodeIsAlreadyUse=Error, no puede eliminar esta cuenta de contabilidad porque se utiliza +MvtNotCorrectlyBalanced=El movimiento no está correctamente equilibrado. Débito = %s | Crédito = %s +Balancing=Balance +FicheVentilation=Tarjeta obligatoria +GeneralLedgerIsWritten=Las transacciones se escriben en el libro mayor +GeneralLedgerSomeRecordWasNotRecorded=Algunas de las transacciones no pueden ser contabilizadas. Si no hay otro mensaje de error, esto es probablemente porque ya estaban en el diario. +NoNewRecordSaved=No más registro para calendarizar +ListOfProductsWithoutAccountingAccount=Lista de productos no vinculados a ninguna cuenta contable +ChangeBinding=Cambiar la encuadernación +Accounted=Contabilizado en el libro mayor +NotYetAccounted=Aún no contabilizado en el libro mayor +ShowTutorial=Tutorial de presentación +NotReconciled=No conciliado +ApplyMassCategories=Aplicar categorías de masas +AddAccountFromBookKeepingWithNoCategories=Cuenta disponible aún no en el grupo personalizado +CategoryDeleted=Se ha eliminado la categoría de la cuenta de contabilidad +AccountingJournals=Diarios/libros de contabilidad +AccountingJournal=Diario de contabilidad +NewAccountingJournal=Nueva revista de contabilidad +AccountingJournalType1=Operaciones misceláneas / varias +AccountingJournalType5=Informe de gastos +AccountingJournalType9=Tiene nuevo +ErrorAccountingJournalIsAlreadyUse=Esta revista ya utiliza +AccountingAccountForSalesTaxAreDefinedInto=Nota: la cuenta de contabilidad para el impuesto a las ventas se define en el menú %s - %s +ExportDraftJournal=Exportar borrador de diario +Modelcsv_CEGID=Exportación para CEGID Expert Comptabilité +Modelcsv_COALA=Exportación para Sage Coala +Modelcsv_bob50=Exportar para Sage BOB 50 +Modelcsv_ciel=Exportar para Sage Ciel Compta o Compta Evolution +Modelcsv_quadratus=Exportar para Quadratus QuadraCompta +Modelcsv_ebp=Exportar para EBP +Modelcsv_cogilog=Exportar para Cogilog +Modelcsv_agiris=Exportar para Agiris +Modelcsv_LDCompta=Exportar para LD Compta (v9) (Prueba) +Modelcsv_LDCompta10=Exportar para LD Compta (v10 y superior) +Modelcsv_openconcerto=Exportar para OpenConcerto (prueba) +Modelcsv_configurable=Exportar CSV Configurable +Modelcsv_FEC=Exportar FEC +Modelcsv_Sage50_Swiss=Exportación para Sage 50 Suiza +Modelcsv_winfic=Exportar Winfic - eWinfic - WinSis Compta +ChartofaccountsId=ID de la cuenta de cuentas +InitAccountancy=Contabilidad inicial +InitAccountancyDesc=Esta página se puede utilizar para inicializar una cuenta de contabilidad en productos y servicios que no tiene definida una cuenta de contabilidad para ventas y compras. +DefaultBindingDesc=Esta página se puede utilizar para establecer una cuenta predeterminada para utilizar para vincular el registro de transacciones sobre salarios de pago, donaciones, impuestos y IVA cuando no se haya establecido ninguna cuenta de contabilidad específica. +DefaultClosureDesc=Esta página se puede usar para establecer los parámetros utilizados para los cierres contables. +OptionModeProductSell=Modo de venta +OptionModeProductSellIntra=Ventas de modo exportadas en CEE +OptionModeProductSellExport=Ventas de modo exportadas a otros países +OptionModeProductBuy=Compras en modo +OptionModeProductBuyIntra=Compras en modo importadas en la CEE +OptionModeProductBuyExport=Modo comprado importado de otros países +OptionModeProductSellDesc=Mostrar todos los productos con cuenta contable para ventas. +OptionModeProductSellIntraDesc=Mostrar todos los productos con cuenta contable para ventas en EEC. +OptionModeProductBuyDesc=Mostrar todos los productos con cuenta contable para compras. +OptionModeProductBuyIntraDesc=Mostrar todos los productos con cuenta contable para compras en EEC. +OptionModeProductBuyExportDesc=Mostrar todos los productos con cuenta contable para otras compras en el extranjero. +CleanFixHistory=Eliminar código de contabilidad de las líneas que no existen en los gráficos de cuenta +CleanHistory=Restablecer todos los enlaces del año seleccionado +PredefinedGroups=Grupos predefinidos +WithValidAccount=Con una cuenta dedicada válida +ValueNotIntoChartOfAccount=Este valor de la cuenta de contabilidad no existe en el gráfico de la cuenta +SaleEECWithVAT=Venta en CEE con un IVA no nulo, por lo que suponemos que esto NO es una venta intracomunitaria y la cuenta sugerida es la cuenta de producto estándar. +SaleEECWithoutVATNumber=Venta en CEE sin IVA pero el ID de IVA de un tercero no está definido. Recurrimos a la cuenta del producto para ventas estándar. Puede corregir el ID de IVA de un tercero o la cuenta del producto si es necesario. +Range=Gama de cuentas contables +SomeMandatoryStepsOfSetupWereNotDone=No se han realizado algunos pasos obligatorios de la configuración, por favor, complelos +ErrorNoAccountingCategoryForThisCountry=No hay grupo de cuentas de contabilidad disponible para el país%s (Consulte Inicio - Configuración - Diccionarios) +ErrorInvoiceContainsLinesNotYetBounded=Intenta escribir en el diario algunas campos de la factura %s, pero algunas otros campos aún no están limitados a la cuenta de contabilidad. Se rechaza la periodización de todos los campos de factura para esta factura. +ErrorInvoiceContainsLinesNotYetBoundedShort=Algunos campos en la factura no están vinculadas a la cuenta contable. +ExportNotSupported=El formato de exportación configurado no se admite en esta página +BookeppingLineAlreayExists=Líneas ya existentes en la contabilidad. +NoJournalDefined=Ninguna revista definida +Binded=Líneas enlazadas +ToBind=Líneas para atar +UseMenuToSetBindindManualy=Líneas aún no enlazadas, use el menú %s para hacer el enlace manualmente. +WarningReportNotReliable=Advertencia, este informe no se basa en el Libro mayor, por lo que no contiene la transacción modificada manualmente en el Libro mayor. Si su publicación está actualizada, la vista de contabilidad es más precisa. +ExpenseReportJournal=Diario del informe de gastos +InventoryJournal=Diario de inventario diff --git a/htdocs/langs/es_EC/admin.lang b/htdocs/langs/es_EC/admin.lang index 15b828ed627..fc0330d6eaf 100644 --- a/htdocs/langs/es_EC/admin.lang +++ b/htdocs/langs/es_EC/admin.lang @@ -69,9 +69,7 @@ NoMaxSizeByPHPLimit=Nota: No hay límite en tu configuración de PHP MaxSizeForUploadedFiles=Tamaño máximo de los archivos cargados (0 para rechazar cualquier subida) UseCaptchaCode=Utilizar código gráfico (CAPTCHA) en la página de inicio de sesión AntiVirusCommand= Ruta completa al comando antivirus -AntiVirusCommandExample= Ejemplo para ClamWin: c:\\Progra ~ 1\\ClamWin\\bin\\clamscan.exe
    Ejemplo para ClamAv: / usr / bin / clamscan AntiVirusParam= Más parámetros de línea de comandos -AntiVirusParamExample= Ejemplo para ClamWin: --database ComptaSetup=Configuración del módulo de contabilidad UserSetup=Configuración de gestión de usuarios MultiCurrencySetup=Configuración de múltiples divisas @@ -146,7 +144,6 @@ FeatureDisabledInDemo=Función desactivada en demostración FeatureAvailableOnlyOnStable=Característica sólo está disponible en las versiones oficiales estables BoxesDesc=Los widgets son componentes que muestran información que puede agregar para personalizar algunas páginas. Puede elegir entre mostrar el widget o no seleccionando la página de destino y haciendo clic en 'Activar', o haciendo clic en la papelera para deshabilitarla. OnlyActiveElementsAreShown=Solo se muestran elementos de %s
    . ModulesMarketPlaces=Buscar aplicaciones / módulos externos ModulesDevelopYourModule=Desarrolle su propia aplicación / módulos @@ -155,6 +152,7 @@ DOLISTOREdescriptionLong=En lugar de encender %s . DoliStoreDesc=DoliStore, el mercado oficial de módulos externos ERP / CRM de Dolibarr @@ -764,7 +762,6 @@ PermanentLeftSearchForm=Formulario de búsqueda permanente en el menú de la izq EnableMultilangInterface=Habilitar soporte multilenguaje CompanyInfo=Empresa / Organización CompanyIds=Identidades de la empresa / organización -CompanyName=Nombre CompanyZip=Código Postal CompanyTown=Ciudad CompanyCurrency=Moneda principal @@ -921,7 +918,6 @@ BillsPDFModules=Modelos de documentos de factura BillsPDFModulesAccordindToInvoiceType=La factura documenta los modelos según el tipo de factura. PaymentsPDFModules=Modelos de documentos de pago ForceInvoiceDate=Forzar la fecha de la factura a la fecha de validación -SuggestedPaymentModesIfNotDefinedInInvoice=Modo de pagos sugerido en la factura por defecto si no se define para la factura SuggestPaymentByRIBOnAccount=Sugerir pago por retiro en cuenta SuggestPaymentByChequeToAddress=Sugerir pago con cheque a FreeLegalTextOnInvoices=Texto libre en las facturas @@ -1131,7 +1127,6 @@ BarcodeDescDATAMATRIX=Código de barras tipo Datamatrix BarcodeDescQRCODE=Código de barras tipo código QR GenbarcodeLocation=Herramienta de línea de comandos de generación de códigos de barras. Debe ser compatible con "genbarcode".
    Por ejemplo: / usr / local / bin / genbarcode BarCodeNumberManager=Administración para definir automáticamente los números de códigos de barras -WithdrawalsSetup=Configuración del módulo de pagos de débito directo. ExternalRSSSetup=Configuración de las importaciones RSS NewRSS=Nuevo RSS Feed RSSUrl=URL RSS @@ -1196,7 +1191,6 @@ Buy=Comprar Sell=Vender InvoiceDateUsed=Fecha de factura debidamente YourCompanyDoesNotUseVAT=Su empresa ha sido definida para no usar el IVA (Inicio - Configuración - Compañía / Organización), por lo que no hay opciones de IVA para configurar. -AccountancyCode=Código de contabilidad AccountancyCodeSell=Cuenta de venta. código AccountancyCodeBuy=Cuenta de compra. código AgendaSetup=Eventos y configuración del módulo de agenda @@ -1216,7 +1210,6 @@ ClickToDialUrlDesc=URL llamada cuando se hace clic en el icono de teléfono. En ClickToDialDesc=Este módulo hace que los números de teléfono hagan clic en los enlaces. Un clic en el icono hará que su teléfono llame al número. Esto se puede usar para llamar a un sistema de centro de llamadas de Dolibarr que puede llamar al número de teléfono en un sistema SIP, por ejemplo. ClickToDialUseTelLink=Utilizar sólo un enlace "tel:" en los números de teléfono ClickToDialUseTelLinkDesc=Use este método si sus usuarios tienen un softphone o una interfaz de software instalada en la misma computadora que el navegador y se le llama cuando hace clic en un enlace de su navegador que comienza con "tel:". Si necesita una solución de servidor completa (sin necesidad de instalación de software local), debe configurar esto en "No" y completar el siguiente campo. -CashDesk=Punto de venta CashDeskSetup=Configuración del módulo de punto de venta CashDeskThirdPartyForSell=Tercero genérico predeterminado para usar en ventas CashDeskBankAccountForSell=Cuenta predeterminada para recibir pagos en efectivo @@ -1246,8 +1239,6 @@ BankOrderESDesc=Orden de exhibición en español ChequeReceiptsNumberingModule=Verifique el módulo de numeración de recibos MultiCompanySetup=Configuración del módulo de varias empresas SuppliersSetup=Configuración del módulo de proveedor -SuppliersCommandModel=Complete template of Purchase Order -SuppliersInvoiceModel=Complete template of Vendor Invoice SuppliersInvoiceNumberingModel=Facturas de proveedores de numeración de modelos. NoteOnPathLocation=Tenga en cuenta que su IP es un archivo de datos de un país debe estar en un directorio que su PHP puede leer. YouCanDownloadFreeDatFileTo=Puede descargar una versión de demostración gratuita del archivo de país Maxmind GeoIP en %s. diff --git a/htdocs/langs/es_EC/agenda.lang b/htdocs/langs/es_EC/agenda.lang new file mode 100644 index 00000000000..12bf1ad38ff --- /dev/null +++ b/htdocs/langs/es_EC/agenda.lang @@ -0,0 +1,108 @@ +# Dolibarr language file - Source file is en_US - agenda +ActionsOwnedBy=Evento propiedad de +Event=Evento +ListOfActions=Lista de eventos +ToUserOfGroup=A cualquier usuario en grupo +EventOnFullDay=Evento todo el día(s) +MenuToDoActions=Todos los eventos incompletos +MenuDoneActions=Todos los eventos terminados +ListOfEvents=Lista de eventos (calendario interno) +ActionsAskedBy=Eventos reportados por +ViewCal=Vista de mes +ViewDay=Vista del día +ViewWeek=Vista de semana +AutoActions=Llenado automático +AgendaAutoActionDesc=Aquí puede definir eventos que desea que Dolibarr cree automáticamente en Agenda. Si no se marca nada, solo las acciones manuales se incluirán en los registros y se mostrarán en la Agenda. El seguimiento automático de las acciones comerciales realizadas en los objetos (validación, cambio de estado) no se guardará. +AgendaSetupOtherDesc=Esta página ofrece opciones para permitir la exportación de sus eventos Dolibarr a un calendario externo (Thunderbird, Google Calendar, etc.) +AgendaExtSitesDesc=Esta página permite declarar fuentes externas de calendarios para ver sus eventos en la agenda de Dolibarr. +ActionsEvents=Eventos para los que Dolibarr creará automáticamente una acción en agenda +EventRemindersByEmailNotEnabled=Los recordatorios de eventos por correo electrónico no se habilitaron en la %s configuración del módulo. +NewCompanyToDolibarr=Cliente/Proveedor %s creado +COMPANY_DELETEInDolibarr=Cliente/Proveedor %s eliminado +ContractValidatedInDolibarr=Contrato%s validado +PropalClosedSignedInDolibarr=Propuesta%s firmada +PropalClosedRefusedInDolibarr=Propuesta%s rechazada +PropalValidatedInDolibarr=Propuesta%s validada +PropalClassifiedBilledInDolibarr=Propuesta%s clasificados facturados +InvoiceValidatedInDolibarr=Se ha validado la factura%s +InvoiceValidatedInDolibarrFromPos=Factura%s validada desde POS +InvoiceBackToDraftInDolibarr=La factura%s vuelve al estado de borrador +InvoiceDeleteDolibarr=Se ha eliminado la factura%s +InvoicePaidInDolibarr=La factura%s cambió a pagada +InvoiceCanceledInDolibarr=Se canceló la factura%s +MemberValidatedInDolibarr=Miembro%s validado +MemberModifiedInDolibarr=Miembro%s modificado +MemberResiliatedInDolibarr=Miembro%s terminado +MemberDeletedInDolibarr=Miembro%s eliminado +MemberSubscriptionAddedInDolibarr=Suscripción %s para miembro %s agregado +MemberSubscriptionModifiedInDolibarr=Suscripción %s para miembro %s modificado +MemberSubscriptionDeletedInDolibarr=Suscripción %s para miembro %s eliminado +ShipmentValidatedInDolibarr=Se ha validado el envío%s +ShipmentClassifyClosedInDolibarr=Envío%s clasificados facturados +ShipmentUnClassifyCloseddInDolibarr=Envío %s clasificado reabrir +ShipmentBackToDraftInDolibarr=Envío %s volver al estado de borrador +ShipmentDeletedInDolibarr=Se ha eliminado el envío%s +OrderCreatedInDolibarr=Orden%s creada +OrderValidatedInDolibarr=Orden%s validado +OrderDeliveredInDolibarr=Orden%s clasificado entregado +OrderCanceledInDolibarr=Orden%s cancelada +OrderBilledInDolibarr=Orden%s clasificado facturado +OrderApprovedInDolibarr=Orden aprobada%s +OrderRefusedInDolibarr=Orden%s rechazada +OrderBackToDraftInDolibarr=Orden%s volver al estado de borrador +ProposalSentByEMail=Propuesta comercial %s enviada por correo electrónico +ContractSentByEMail=Contrato %s enviado por correo electrónico +OrderSentByEMail=Pedido de ventas %s enviado por correo electrónico +InvoiceSentByEMail=Factura del cliente %s enviada por correo electrónico +SupplierOrderSentByEMail=Pedido de compra %s enviado por correo electrónico +ORDER_SUPPLIER_DELETEInDolibarr=Pedido de compra %s eliminado +SupplierInvoiceSentByEMail=Factura del proveedor %s enviada por correo electrónico +ShippingSentByEMail=Envío %s enviado por correo electrónico +ShippingValidated= Se ha validado el envío%s +ProposalDeleted=Propuesta eliminada +InvoiceDeleted=Se eliminó la factura +PRODUCT_CREATEInDolibarr=Producto%s creado +PRODUCT_MODIFYInDolibarr=Producto%s modificado +PRODUCT_DELETEInDolibarr=Producto%s eliminado +HOLIDAY_CREATEInDolibarr=Solicitud de licencia %s creada +HOLIDAY_MODIFYInDolibarr=Solicitud de licencia %s modificada +HOLIDAY_APPROVEInDolibarr=Solicitud de licencia %s aprobada +HOLIDAY_DELETEInDolibarr=Solicitud de licencia %s eliminada +EXPENSE_REPORT_CREATEInDolibarr=Se ha creado el informe de gastos%s +EXPENSE_REPORT_VALIDATEInDolibarr=Informe de gastos%s validado +EXPENSE_REPORT_APPROVEInDolibarr=Informe de gastos%s aprobado +EXPENSE_REPORT_DELETEInDolibarr=Informe de gastos%s eliminado +EXPENSE_REPORT_REFUSEDInDolibarr=Informe de gastos%s rechazado +PROJECT_CREATEInDolibarr=Proyecto%s creado +PROJECT_MODIFYInDolibarr=Proyecto%s modificado +PROJECT_DELETEInDolibarr=Proyecto%s eliminado +TICKET_CLOSEInDolibarr=Boleto %s cerrado +BOM_VALIDATEInDolibarr=BOM validado +BOM_UNVALIDATEInDolibarr=BOM no validado +BOM_CLOSEInDolibarr=Lista de materiales deshabilitada +BOM_REOPENInDolibarr=BOM reabrir +MRP_MO_VALIDATEInDolibarr=MO validado +MRP_MO_PRODUCEDInDolibarr=MO producido +MRP_MO_DELETEInDolibarr=MO eliminado +AgendaModelModule=Plantillas de documento para el evento +DateActionEnd=Fecha final +AgendaUrlOptions1=También puede agregar los siguientes parámetros a la salida del filtro: +AgendaUrlOptions3=logina=%s para restringir la salida a acciones propiedad de un usuario %s. +AgendaUrlOptionsNotAdmin=logina=!%s para restringir la salida a acciones que no pertenecen al usuario %s. +AgendaUrlOptions4= logint =%s para restringir la salida a las acciones asignadas al usuario %s (propietario y otros). +AgendaUrlOptionsProject=project = __ PROJECT_ID__ para restringir el resultado a acciones vinculadas al proyecto __PROJECT_ID__. +AgendaUrlOptionsNotAutoEvent=notactiontype = systemauto para excluir eventos automáticos. +AgendaUrlOptionsIncludeHolidays= includeholidays=1 para incluir eventos de vacaciones. +AgendaHideBirthdayEvents=Ocultar los cumpleaños de los contactos +ExportDataset_event1=Lista de eventos de la agenda +DefaultWorkingDays=Intervalo de días laborales por defecto en la semana (Ejemplo: 1-5, 1-6) +DefaultWorkingHours=Horas de trabajo por defecto en el día (Ejemplo: 9-18) +ExtSites=Importar calendarios externos +ExtSitesEnableThisTool=Mostrar calendarios externos (definidos en la configuración global) en Agenda. No afecta a los calendarios externos definidos por los usuarios. +AgendaExtNb=Calendario #. %s +ExtSiteUrlAgenda=URL para acceder al archivo .ical +VisibleTimeRange=Intervalo de tiempo visible +DateActionBegin=Iniciar la fecha del evento +ConfirmCloneEvent=¿Seguro que desea clonar el evento %s? +DayOfMonth=Dia del mes +DateStartPlusOne=Fecha de inicio + 1 hora diff --git a/htdocs/langs/es_EC/banks.lang b/htdocs/langs/es_EC/banks.lang new file mode 100644 index 00000000000..674db7869f0 --- /dev/null +++ b/htdocs/langs/es_EC/banks.lang @@ -0,0 +1,120 @@ +# Dolibarr language file - Source file is en_US - banks +MenuBankCash=Bancos / Efectivo +BankAccounts=Cuentas bancarias +BankAccountsAndGateways=Cuentas bancarias | Puertas de enlace +AccountRef=Cuenta bancaria ref +AccountLabel=Etiqueta de la cuenta bancaria +CashAccount=Cuenta de efectivo +CashAccounts=Cuentas de caja +CurrentAccounts=Cuentas actuales +SavingAccounts=Cuentas de ahorros +ErrorBankLabelAlreadyExists=La etiqueta de la cuenta bancaria ya existe +BankBalanceBefore=Saldo antes +BankBalanceAfter=Saldo después +BalanceMinimalAllowed=Saldo mínimo permitido +FutureBalance=Saldo futuro +ShowAllTimeBalance=Mostrar saldo desde el inicio +AllTime=Desde el principio +RIB=Número de cuenta bancaria +AccountStatement=Estado de cuenta +AccountStatementShort=Estado +AccountStatements=Estados de cuenta +LastAccountStatements=Últimos estados de cuenta +IOMonthlyReporting=Reporte mensual +BankAccountDomiciliation=Dirección del banco +BankAccountOwner=Nombre del propietario de la cuenta +BankAccountOwnerAddress=Dirección del propietario de la cuenta +RIBControlError=La comprobación de integridad de los valores ha fallado. Esto significa que la información para este número de cuenta no está completa o es incorrecta (verifique el país, los números y el IBAN). +NewFinancialAccount=Nueva cuenta bancaria +MenuNewFinancialAccount=Nueva cuenta bancaria +EditFinancialAccount=Editar cuenta +LabelBankCashAccount=Etiqueta bancaria o de caja +BankType0=Cuenta de ahorros +BankType1=Cuenta corriente o tarjeta de crédito +BankType2=Cuenta de efectivo +AccountsArea=Área de cuentas +AccountCard=Tarjeta de cuenta +DeleteAccount=Borrar cuenta +ConfirmDeleteAccount=¿Seguro que quieres eliminar esta cuenta? +BankTransactionByCategories=Transacciones bancarias por categorías +BankTransactionForCategory=Transacciones bancarias para la categoría %s +RemoveFromRubrique=Eliminar el enlace con la categoría +RemoveFromRubriqueConfirm=¿Seguro que quieres eliminar el enlace entre la transaccion y la categoría? +ListBankTransactions=Lista de transacciones bancarias +IdTransaction=ID de transacción +BankTransactions=Transacciones bancarias +BankTransaction=Transacción bancaria +ListTransactions=Listar transacciones/categoría +ListTransactionsByCategory=Listar transacciones/categoría +TransactionsToConciliate=Transacciones para conciliar +TransactionsToConciliateShort=Para reconciliar +Conciliable=Se puede conciliar +SaveStatementOnly=Guardar solo declaración +ReconciliationLate=Conciliación tardia +OnlyOpenedAccount=Sólo cuentas abiertas +AccountToCredit=Cuenta a acreditar +AccountToDebit=Cuenta a debitar +DisableConciliation=Deshabilitar la función de conciliación de esta cuenta +LinkedToAConciliatedTransaction=Vinculado a una entrada conciliada +StatusAccountClosed=Cerrado +LineRecord=Transacción +AddBankRecord=Añadir entrada +AddBankRecordLong=Añadir entrada manualmente +Conciliated=Conciliado +DateConciliating=Fecha de conciliación +BankLineConciliated=Entrada conciliada con recibo bancario +Reconciled=Conciliado +SupplierInvoicePayment=Pago del proveedor +WithdrawalPayment=Orden de pago de débito +SocialContributionPayment=Pago de impuestos sociales y fiscales +TransferDesc=Transferencia de una cuenta a otra, Dolibarr escribirá dos registros (un débito en la cuenta de origen y un crédito en la cuenta de destino). Se utilizará la misma cantidad (excepto el signo), la etiqueta y la fecha para esta transacción) +TransferTo=A +TransferFromToDone=Se ha registrado una transferencia de %s to %s of %s %s. +CheckTransmitter=Transmisor +ValidateCheckReceipt=¿Validar este recibo de cheque? +ConfirmValidateCheckReceipt=¿Está seguro de que desea validar este recibo de cheque, no se podrá realizar ningún cambio una vez hecho esto? +DeleteCheckReceipt=¿Eliminar este recibo de cheque? +ConfirmDeleteCheckReceipt=¿Seguro que desea eliminar este recibo de cheque? +BankChecks=Cheques bancarios +BankChecksToReceipt=Cheques a la espera de depósito +BankChecksToReceiptShort=Cheques a la espera de depósito +ShowCheckReceipt=Mostrar recibo de depósito de cheque +NumberOfCheques=No. de cheque +DeleteTransaction=Eliminar la entrada +ConfirmDeleteTransaction=¿Estás seguro de que quieres borrar esta entrada? +ThisWillAlsoDeleteBankRecord=Esto también eliminará la entrada de banco generada +PlannedTransactions=Entradas planificadas +ExportDataset_banque_1=Entradas bancarias y estado de cuenta +ExportDataset_banque_2=Depósito +TransactionOnTheOtherAccount=Transacción en la otra cuenta +PaymentNumberUpdateFailed=No se pudo actualizar el número de pago. +PaymentDateUpdateFailed=No se pudo actualizar la fecha de pago +BankTransactionLine=Transacción bancaria +AllAccounts=Todas las cuentas bancarias y de efectivo +ShowAllAccounts=Mostrar todas las cuentas +FutureTransaction=Transacción futura Incapaz de conciliar. +SelectChequeTransactionAndGenerate=Seleccione/filtrar cheques para incluir en el recibo de depósito de cheques y haga clic en "Crear". +InputReceiptNumber=Elija el estado de cuenta bancario relacionado con la conciliación. Utilice un valor numérico clasificable: MMYYYY o DDMMYYYY +EventualyAddCategory=Eventualmente, especifique una categoría en la que clasificar los registros +ToConciliate=¿Para conciliar? +ThenCheckLinesAndConciliate=Luego, compruebe las líneas presentes en el extracto bancario y haga click +DefaultRIB=Predeterminado BAN +AllRIB=Todas las BAN +LabelRIB=Etiqueta de BAN +NoBANRecord=Sin registro BAN +DeleteARib=Eliminar registro BAN +ConfirmDeleteRib=¿Está seguro de que desea eliminar este registro BAN? +ConfirmRejectCheck=¿Está seguro de que desea marcar este cheque como rechazado? +CheckRejectedAndInvoicesReopened=Cheque devuelto y reapertura de facturas +BankAccountModelModule=Plantillas de documentos para cuentas bancarias +DocumentModelSepaMandate=Plantilla de mandato de la SEPA. Útil para los países europeos en la CEE solamente. +DocumentModelBan=Plantilla para imprimir una página con información BAN. +NewVariousPayment=Nuevo pago misceláneo +VariousPayment=Pago misceláneo +ShowVariousPayment=Mostrar pago misceláneo +AddVariousPayment=Agregar pago misceláneo +FindYourSEPAMandate=Este es su mandato de SEPA para autorizar a nuestra empresa a realizar un pedido de débito directo a su banco. Devuélvalo firmado (escaneo del documento firmado) o envíelo por correo a +AutoReportLastAccountStatement=Rellene automáticamente el campo 'número de extracto bancario' con el último número de extracto al realizar la conciliación +CashControl=POS Limite de efectivo +NewCashFence=Nuevo limite de efectivo +BankColorizeMovementDesc=Si esta función está habilitada, puede elegir un color de fondo específico para los movimientos de débito o crédito diff --git a/htdocs/langs/es_EC/bills.lang b/htdocs/langs/es_EC/bills.lang new file mode 100644 index 00000000000..de506df2649 --- /dev/null +++ b/htdocs/langs/es_EC/bills.lang @@ -0,0 +1,441 @@ +# Dolibarr language file - Source file is en_US - bills +BillsCustomers=Facturas de clientes +BillsCustomer=Factura del cliente +BillsSuppliers=Facturas del vendedor / proveedor +BillsCustomersUnpaid=Facturas de clientes no pagadas +BillsCustomersUnpaidForCompany=Facturas de clientes no pagadas para%s +BillsSuppliersUnpaid=Facturas impagas de proveedores +BillsSuppliersUnpaidForCompany=Facturas impagas de proveedores por %s +BillsLate=Pagos atrasados +BillsStatistics=Estadísticas de facturas de clientes +DisabledBecauseDispatchedInBookkeeping=Desactivado porque la factura se envió a la contabilidad +DisabledBecauseNotLastInvoice=Desactivado porque la factura no se puede borrar. Algunas facturas se registraron después de esta y crearán agujeros en la contabilidad. +DisabledBecauseNotErasable=Desactivado porque no se puede borrar +InvoiceStandardDesc=Este tipo de factura es la factura común. +InvoiceDepositDesc=Este tipo de factura se realiza cuando se ha recibido un pago inicial. +InvoiceProForma=Factura de proforma +InvoiceProFormaAsk=Factura de proforma +InvoiceProFormaDesc=Factura proforma es una imagen de una factura real pero no tiene valor de contabilidad. +InvoiceReplacement=Factura de reemplazo +InvoiceReplacementAsk=Factura de reemplazo para factura +InvoiceReplacementDesc= La factura de reemplazo se usa para reemplazar completamente una factura sin que ya se haya recibido el pago.

    Nota: Solo se pueden reemplazar las facturas sin pago. Si la factura que reemplaza aún no está cerrada, se cerrará automáticamente a 'abandonada'. +InvoiceAvoir=Nota de crédito +InvoiceAvoirAsk=Nota de crédito para corregir la factura +InvoiceAvoirDesc=La nota de crédito es una factura negativa utilizada para corregir el hecho de que una factura muestra una cantidad que difiere de la cantidad realmente pagada (por ejemplo, el cliente pagó demasiado por error o no pagará la cantidad completa ya que se devolvieron algunos productos) . +invoiceAvoirWithLines=Crear nota de crédito con líneas de la factura de origen +invoiceAvoirWithPaymentRestAmount=Crear nota de crédito con factura pendiente de pago pendiente +invoiceAvoirLineWithPaymentRestAmount=Nota de crédito por el monto pendiente de pago +ReplaceInvoice=Reemplazar la factura%s +ReplacementInvoice=Factura de reemplazo +ReplacedByInvoice=Reemplazada por la factura%s +ReplacementByInvoice=Reemplazada por factura +CorrectInvoice=Factura correcta%s +CorrectionInvoice=Factura de corrección +UsedByInvoice=Se utiliza para pagar la factura%s +NoReplacableInvoice=No hay facturas reemplazables +NoInvoiceToCorrect=Ninguna factura para corregir +InvoiceHasAvoir=Fue fuente de una o varias notas de crédito +CardBill=Tarjeta de factura +PredefinedInvoices=Facturas predefinidas +InvoiceCustomer=Factura del cliente +CustomerInvoice=Factura del cliente +CustomersInvoices=Facturas de clientes +SupplierInvoice=Factura del proveedor +SupplierBill=Factura del proveedor +SupplierBills=facturas de proveedores +PaymentBack=Reembolso +CustomerInvoicePaymentBack=Reembolso +paymentInInvoiceCurrency=en moneda de facturas +DeletePayment=Eliminar pago +ConfirmDeletePayment=¿Está seguro de que desea eliminar este pago? +ConfirmConvertToReduc=¿Desea convertir este %s en un crédito disponible? +ConfirmConvertToReduc2=El monto se guardará entre todos los descuentos y podría usarse como un descuento para una factura actual o futura para este cliente. +ConfirmConvertToReducSupplier=¿Desea convertir este %s en un crédito disponible? +ConfirmConvertToReducSupplier2=El monto se guardará entre todos los descuentos y podría usarse como un descuento para una factura actual o futura para este proveedor. +SupplierPayments=Pagos a proveedores +ReceivedCustomersPayments=Pagos recibidos de clientes +PayedSuppliersPayments=Pagos pagados a proveedores +ReceivedCustomersPaymentsToValid=Pagos de clientes recibidos para validar +PaymentsReportsForYear=Informes de pagos de%s +PaymentsAlreadyDone=Pagos ya realizados +PaymentRule=Regla de pago +PaymentTypeDC=Tarjeta de crédito débito +PaymentTerm=Plazo de pago +PaymentConditions=Términos de pago +PaymentConditionsShort=Términos de pago +PaymentAmount=Monto del pago +PaymentHigherThanReminderToPay=Pago más alto que un recordatorio para pagar +HelpPaymentHigherThanReminderToPay=Atención, el monto de pago de una o más facturas es mayor que el monto pendiente de pago.
    Edite su entrada, de lo contrario confirme y considere crear una nota de crédito por el exceso recibido por cada factura pagada en exceso. +HelpPaymentHigherThanReminderToPaySupplier=Atención, el monto de pago de una o más facturas es mayor que el monto pendiente de pago.
    Edite su entrada, de lo contrario confirme y considere crear una nota de crédito por el exceso pagado por cada factura pagada en exceso. +ClassifyPaid=Clasificar 'Pago' +ClassifyUnPaid=Clasificar 'Sin pagar' +ClassifyPaidPartially=Clasificar 'Pago parcial' +ClassifyCanceled=Clasificar 'Abandoned' +ClassifyUnBilled=Clasificar 'Sin Cobro' +CreateCreditNote=Crear nota de crédito +AddBill=Crear factura o nota de crédito +AddToDraftInvoices=Agregar al proyecto de factura +SearchACustomerInvoice=Buscar una factura de cliente +CancelBill=Cancelar una factura +SendRemindByMail=Enviar recordatorio por correo electrónico +DoPayment=Introducir pago +DoPaymentBack=Introducir reembolso +ConvertToReduc=Marcar como crédito disponible +ConvertExcessReceivedToReduc=Convertir el pago en exceso recibido en crédito disponible +ConvertExcessPaidToReduc=Convierte el exceso pagado en descuento disponible +EnterPaymentReceivedFromCustomer=Introduzca el pago recibido del cliente +EnterPaymentDueToCustomer=Realizar el pago debido al cliente +DisabledBecauseRemainderToPayIsZero=Discapacitados porque el resto del pago es cero +PriceBase=Base de precios +BillStatusDraft=Proyecto (necesita ser validado) +BillStatusPaid=Pagado +BillStatusPaidBackOrConverted=Reembolso de nota de crédito o marcado como crédito disponible +BillStatusConverted=Pagado (listo para el consumo en la factura final) +BillStatusCanceled=Abandonado +BillStatusValidated=Validado (debe ser pagado) +BillStatusStarted=Empezado +BillStatusNotPaid=No pagado +BillStatusNotRefunded=No devuelto +BillStatusClosedUnpaid=Cerrado (sin pagar) +BillStatusClosedPaidPartially=Pagado (parcialmente) +BillShortStatusPaid=Pagado +BillShortStatusPaidBackOrConverted=Reembolsado o convertido +Refunded=Reembolsado +BillShortStatusConverted=Pagado +BillShortStatusCanceled=Abandonado +BillShortStatusValidated=validado +BillShortStatusStarted=Empezado +BillShortStatusNotPaid=No pagado +BillShortStatusNotRefunded=No devuelto +BillShortStatusClosedUnpaid=Cerrado +BillShortStatusClosedPaidPartially=Pagado (parcialmente) +PaymentStatusToValidShort=Validar +ErrorVATIntraNotConfigured=Valor de IVA intracomunitario aún no definido +ErrorNoPaiementModeConfigured=No hay un tipo de pago predeterminado definido. Vaya a la configuración del módulo Factura para solucionar esto. +ErrorCreateBankAccount=Cree una cuenta bancaria, luego vaya al panel Configuración del módulo Factura para definir los tipos de pago +ErrorBillNotFound=La factura%s no existe +ErrorInvoiceAlreadyReplaced=Error, intentó validar una factura para reemplazarla %s. Pero este ya ha sido sustituido por la factura %s. +ErrorDiscountAlreadyUsed=Error, descuento ya utilizado +ErrorInvoiceAvoirMustBeNegative=Error, la factura correcta debe tener un importe negativo +ErrorInvoiceOfThisTypeMustBePositive=Error, este tipo de factura debe tener una cantidad que excluya impuestos positivos (o nulos) +ErrorCantCancelIfReplacementInvoiceNotValidated=Error, no se puede cancelar una factura que ha sido sustituida por otra factura que todavía está en estado de borrador +ErrorThisPartOrAnotherIsAlreadyUsedSoDiscountSerieCantBeRemoved=Esta parte u otra ya está en uso, por lo que no se pueden eliminar las series de descuento. +BillFrom=De +BillTo=A +ActionsOnBill=Acciones en factura +RecurringInvoiceTemplate=Plantilla / factura recurrente +NoQualifiedRecurringInvoiceTemplateFound=Ninguna factura de plantilla recurrente calificada para la generación. +FoundXQualifiedRecurringInvoiceTemplate=Se encontró%s facturas de plantilla recurrente calificadas para generación. +NotARecurringInvoiceTemplate=No es una plantilla de plantilla recurrente +LastBills=Últimas facturas%s +LatestTemplateInvoices=Últimas facturas de plantilla%s +LatestCustomerTemplateInvoices=Últimas facturas de plantilla de cliente%s +LatestSupplierTemplateInvoices=Últimas facturas de plantilla de proveedor %s +LastCustomersBills=Últimas facturas de clientes%s +LastSuppliersBills=Últimas facturas de proveedores %s +DraftBills=Proyecto de facturas +CustomersDraftInvoices=Facturas de borrador del cliente +SuppliersDraftInvoices=Borrador de facturas de proveedores +Unpaid=No pagado +ConfirmDeleteBill=¿Está seguro de que desea eliminar esta factura? +ConfirmValidateBill=¿Está seguro de que desea validar esta factura con la referencia %s ? +ConfirmUnvalidateBill=¿Está seguro de que desea cambiar la factura %s al estado de borrador? +ConfirmClassifyPaidBill=¿Seguro que desea cambiar la factura %s al estado pagado? +ConfirmCancelBill=¿Seguro que desea cancelar la factura %s ? +ConfirmCancelBillQuestion=¿Por qué desea clasificar esta factura 'abandonada'? +ConfirmClassifyPaidPartially=¿Seguro que desea cambiar la factura %s al estado pagado? +ConfirmClassifyPaidPartiallyQuestion=Esta factura no se ha pagado por completo. ¿Cuál es la razón para cerrar esta factura? +ConfirmClassifyPaidPartiallyReasonAvoir=Permanecer sin pagar (%s%s) es un descuento otorgado porque el pago se realizó antes del término. Regularizo el IVA con una nota de crédito. +ConfirmClassifyPaidPartiallyReasonDiscount=Restante sin pagar (%s%s) es un descuento otorgado porque el pago se realizó antes del término. +ConfirmClassifyPaidPartiallyReasonDiscountNoVat=El resto del impuesto (%s%s) es un descuento concedido porque el pago se realizó antes del plazo. Acepto perder el IVA en este descuento. +ConfirmClassifyPaidPartiallyReasonDiscountVat=El resto del impuesto (%s%s) es un descuento concedido porque el pago se realizó antes del plazo. Recupero el IVA en este descuento sin una nota de crédito. +ConfirmClassifyPaidPartiallyReasonBadCustomer=Mal cliente +ConfirmClassifyPaidPartiallyReasonProductReturned=Productos devueltos parcialmente +ConfirmClassifyPaidPartiallyReasonOther=Cantidad abandonada por otra razón +ConfirmClassifyPaidPartiallyReasonDiscountNoVatDesc=Esta opción es posible si su factura ha recibido comentarios adecuados. (Ejemplo «Solo el impuesto correspondiente al precio que se ha pagado realmente da derecho a deducción») +ConfirmClassifyPaidPartiallyReasonDiscountVatDesc=En algunos países, esta opción podría ser posible solo si su factura contiene las notas correctas. +ConfirmClassifyPaidPartiallyReasonAvoirDesc=Utilice esta opción si la otra no le conviene +ConfirmClassifyPaidPartiallyReasonBadCustomerDesc=Un mal cliente es un cliente que se niega a pagar su deuda. +ConfirmClassifyPaidPartiallyReasonProductReturnedDesc=Esta opción se utiliza cuando el pago no está completo porque algunos de los productos fueron devueltos +ConfirmClassifyPaidPartiallyReasonOtherDesc=Utilice esta opción si todos los demás no son adecuados, por ejemplo, en la siguiente situación:
    - el pago no se completó porque algunos productos se devolvieron.
    - la cantidad reclamada es demasiado importante porque se olvidó un descuento.
    En todos los casos, la cantidad reclamada en exceso debe ser corregida en el sistema de contabilidad creando una nota de crédito. +ConfirmClassifyAbandonReasonOtherDesc=Esta opción se utilizará en todos los demás casos. Por ejemplo, porque planea crear una factura de reemplazo. +ConfirmCustomerPayment=¿Confirma esta entrada de pago para %s%s? +ConfirmSupplierPayment=¿Confirma esta entrada de pago para %s%s? +ConfirmValidatePayment=¿Está seguro de que desea validar este pago? No se puede hacer ningún cambio una vez que se haya validado el pago. +UnvalidateBill=No validar la factura +NumberOfBillsByMonth=Nº de facturas por mes. +AmountOfBills=Cantidad de facturas +AmountOfBillsHT=Importe de las facturas (neto de impuestos) +AmountOfBillsByMonthHT=Importe de las facturas por mes (neto de impuestos) +UseSituationInvoicesCreditNote=Permitir situación factura nota de crédito +AllowedInvoiceForRetainedWarranty=Garantía retenida utilizable en los siguientes tipos de facturas +RetainedwarrantyDefaultPercent=Garantía retenida por ciento por defecto +RetainedwarrantyOnlyForSituation=Haga que la "garantía retenida" esté disponible solo para facturas situacionales +RetainedwarrantyOnlyForSituationFinal=En las facturas de situación, la deducción global de "garantía retenida" se aplica solo en la situación final +setPaymentConditionsShortRetainedWarranty=Establecer condiciones de pago de garantía retenidas +setretainedwarranty=Establecer garantía retenida +setretainedwarrantyDateLimit=Establecer límite de fecha de garantía retenida +AlreadyPaidBack=Ya pagado de vuelta +AlreadyPaidNoCreditNotesNoDeposits=Ya pagado (sin notas de crédito y anticipos) +Abandoned=Abandonado +RemainderToPay=Restante sin pagar +RemainderToTake=Cantidad restante a tomar +RemainderToPayBack=Cantidad restante para reembolso +AmountExpected=Cantidad reclamada +ExcessReceived=Exceso recibido +ExcessPaid=Exceso de pago +EscompteOffered=Descuento ofrecido (pago antes del plazo) +SendBillRef=Presentación de la factura%s +SendReminderBillRef=Presentación de la factura%s (recordatorio) +StandingOrders=Pedidos de domiciliación bancaria +StandingOrder=Orden de dèbito directo +NoDraftBills=Ningún proyecto de facturas +NoOtherDraftBills=Ningún otro proyecto de facturas +NoDraftInvoices=Ningún proyecto de facturas +RefBill=Factura ref +ToBill=Cobrar +RemainderToBill=Resto para facturar +SendBillByMail=Enviar factura por correo electrónico +SendReminderBillByMail=Enviar recordatorio por correo electrónico +RelatedCommercialProposals=Propuestas comerciales relacionadas +RelatedRecurringCustomerInvoices=Facturas recurrentes relacionadas con los clientes +MenuToValid=Para validar +DateMaxPayment=Pago debido en +DateInvoice=Fecha de la factura +DatePointOfTax=Punto de impuestos +NoInvoice=Sin factura +ClassifyBill=Clasificar factura +SupplierBillsToPay=Facturas de proveedores impagos +CustomerBillsUnpaid=Facturas de clientes no pagadas +NonPercuRecuperable=No recuperable +SetConditions=Establecer condiciones de pago +SetMode=Establecer tipo de pago +SetRevenuStamp=Establecer sello de ingresos +Repeatable=Modelo +ChangeIntoRepeatableInvoice=Convertir en plantilla de factura +CreateFromRepeatableInvoice=Crear desde la plantilla de factura +CustomersInvoicesAndInvoiceLines=Facturas del cliente y detalles de la factura. +CustomersInvoicesAndPayments=Facturas y pagos de clientes +ExportDataset_invoice_1=Facturas del cliente y detalles de la factura. +ExportDataset_invoice_2=Facturas y pagos de clientes +ProformaBill=Proyecto de Ley Proforma: +ReductionShort=Desct. +Reductions=Reducciones +ReductionsShort=Desct. +AddDiscount=Crear descuento +AddGlobalDiscount=Crear descuento absoluto +EditGlobalDiscounts=Editar descuentos absolutos +AddCreditNote=Crear nota de crédito +ShowDiscount=Mostrar descuento +ShowReduc=Mostrar el descuento +ShowSourceInvoice=Mostrar la factura de origen +GlobalDiscount=Descuento global +CreditNote=Nota de crédito +CreditNotes=Notas de crédito +Deposit=Pago inicial +Deposits=Bajo pago +DiscountFromCreditNote=Descuento de la nota de crédito%s +DiscountFromDeposit=Pago inicial de la factura%s +DiscountFromExcessReceived=Pagos en exceso de la factura %s +DiscountFromExcessPaid=Pagos en exceso de la factura %s +AbsoluteDiscountUse=Este tipo de crédito puede ser utilizado en la factura antes de su validación +CreditNoteDepositUse=La factura debe ser validada para usar este tipo de créditos +NewGlobalDiscount=Nuevo descuento absoluto +NewRelativeDiscount=Nuevo descuento relativo +ReasonDiscount=Razón +DiscountOfferedBy=Concedido por +DiscountStillRemaining=Descuentos o créditos disponibles +DiscountAlreadyCounted=Descuentos o créditos ya utilizado +CustomerDiscounts=Descuentos para clientes +BillAddress=Dirección de Bill +HelpAbandonBadCustomer=Esta cantidad se ha abandonado (el cliente dice que es un mal cliente) y se considera una pérdida excepcional. +HelpAbandonOther=Esta cantidad se ha abandonado debido a que se trató de un error (el cliente o la factura equivocados se reemplazaron por otro, por ejemplo) +IdSocialContribution=ID de pago de impuestos sociales/fiscales +PaymentId=ID de pago +PaymentRef=Pago ref. +InvoiceId=ID de factura +InvoiceRef=Factura ref. +InvoiceDateCreation=Fecha de creación de la factura +InvoiceStatus=Estado de la factura +InvoiceNote=Nota de factura +InvoicePaidCompletelyHelp=Factura que se paga por completo. Esto excluye las facturas que se pagan parcialmente. Para obtener una lista de todas las facturas 'Cerradas' o no 'Cerradas', prefiera usar un filtro en el estado de la factura. +WatermarkOnDraftBill=Marca de agua en facturas de proyecto (nada si está vacía) +InvoiceNotChecked=No hay factura seleccionada +ConfirmCloneInvoice=¿Seguro que desea copiar esta factura %s? +DisabledBecauseReplacedInvoice=Acción desactivada porque la factura ha sido reemplazada +DescTaxAndDividendsArea=Esta área presenta un resumen de todos los pagos realizados por gastos especiales. Aquí solo se incluyen registros con pagos durante el año fijo. +NbOfPayments=No. de pagos +SplitDiscount=Descuento dividido en dos +ConfirmSplitDiscount=¿Seguro que quieres dividir este descuento de %s %s en dos descuentos más pequeños? +TypeAmountOfEachNewDiscount=Cantidad de entrada para cada una de dos partes: +TotalOfTwoDiscountMustEqualsOriginal=El total de los dos nuevos descuentos debe ser igual al monto del descuento original. +ConfirmRemoveDiscount=¿Seguro que quieres eliminar este descuento? +RelatedBill=Factura relacionada +RelatedBills=Facturas relacionadas +RelatedCustomerInvoices=Facturas de clientes relacionadas +RelatedSupplierInvoices=Facturas de proveedores relacionados +WarningBillExist=Advertencia, una o más facturas ya existen +MergingPDFTool=Fusionar herramienta PDF +AmountPaymentDistributedOnInvoice=Importe de pago distribuido en la factura +PaymentOnDifferentThirdBills=Permitir pagos en diferentes facturas de cliente/proveedor, pero la misma empresa matriz +PaymentNote=Nota de pago +ListOfPreviousSituationInvoices=Lista de facturas de situación anterior +ListOfNextSituationInvoices=Lista de facturas de situación siguiente +ListOfSituationInvoices=Lista de facturas de situación +CurrentSituationTotal=Situación actual total +FrequencyPer_d=Cada%s días +FrequencyPer_m=Cada%s meses +FrequencyPer_y=Todos los años +FrequencyUnit=Unidad de frecuencia +toolTipFrequency=Ejemplos: Set 7, Día: dar una nueva factura cada 7 días
    Establecer 3, Mes : dar una nueva factura cada 3 meses +NextDateToExecution=Fecha para la próxima generación de facturas +DateLastGeneration=Fecha de última generación +MaxPeriodNumber=Max. número de generación de facturas +NbOfGenerationDone=Número de generación de factura ya realizada +NbOfGenerationDoneShort=Número de generación realizada +MaxGenerationReached=Número máximo de generaciones alcanzadas +GeneratedFromRecurringInvoice=Generado a partir de la plantilla de factura recurrente%s +DateIsNotEnough=Fecha no alcanzada todavía +InvoiceGeneratedFromTemplate=Factura%s generada a partir de la factura de plantilla recurrente%s +GeneratedFromTemplate=Generado a partir de la factura de plantilla %s +WarningInvoiceDateInFuture=Advertencia, la fecha de factura es superior a la fecha actual +WarningInvoiceDateTooFarInFuture=Advertencia, la fecha de factura es demasiado lejos de la fecha actual +PaymentConditionShortRECEP=Debido a la recepción +PaymentConditionRECEP=Debido a la recepción +PaymentConditionShort30D=30 dias +PaymentCondition30D=30 dias +PaymentConditionShort30DENDMONTH=30 días del final del mes +PaymentCondition30DENDMONTH=Dentro de los 30 días siguientes al final del mes +PaymentCondition60D=60 días +PaymentConditionShort60DENDMONTH=60 días de fin de mes +PaymentCondition60DENDMONTH=Dentro de los 60 días siguientes al final del mes +PaymentConditionShortPT_DELIVERY=Entrega +PaymentConditionPT_DELIVERY=En la entrega +PaymentConditionPT_ORDER=En orden +PaymentConditionPT_5050=50 %% por adelantado, 50 %% en la entrega +PaymentConditionShort10DENDMONTH=10 días del final del mes +PaymentCondition10DENDMONTH=Dentro de los 10 días siguientes al final del mes +PaymentConditionShort14D=14 dias +PaymentCondition14D=14 dias +PaymentConditionShort14DENDMONTH=14 días del final del mes +PaymentCondition14DENDMONTH=Dentro de los 14 días siguientes al final del mes +FixAmount=Cantidad fija: 1 línea con la etiqueta '%s' +VarAmount=Cantidad variable (%% tot.) +VarAmountOneLine=Cantidad variable (%% total.) - 1 línea con la etiqueta '%s' +VarAmountAllLines=Cantidad variable (%% tot.) - todas las mismas líneas +PaymentTypePRE=Orden de pago por domiciliación bancaria +PaymentTypeShortPRE=Orden de pago de débito +PaymentTypeCB=Tarjeta de crédito +PaymentTypeShortCB=Tarjeta de crédito +PaymentTypeCHQ=Comprobar +PaymentTypeShortCHQ=Comprobar +PaymentTypeTIP=TIP (documentos contra pago) +PaymentTypeShortTIP=Pago de TIP +PaymentTypeTRA=giro bancario +BankDetails=Detalles del banco +BankCode=codigo bancario +DeskCode=Código de sucursal +BankAccountNumber=Número de cuenta +BankAccountNumberKey=Suma de comprobación +ExtraInfos=Más información +RegulatedOn=Regulado en +ChequeNumber=Verificar N ° +ChequeOrTransferNumber=N ° de cheque/transferencia +ChequeBordereau=Ver calendario +ChequeMaker=Comprobar/transferir el transmisor +ChequeBank=Banco de Cheques +CheckBank=Comprobar +PhoneNumber=Teléfono +PrettyLittleSentence=Aceptar el monto de los pagos debidos por cheques emitidos en mi nombre como Miembro de una asociación contable aprobada por la Administración Fiscal. +IntracommunityVATNumber=ID de IVA intracomunitario +PaymentByChequeOrderedTo=Los pagos de cheques (impuestos incluidos) se pagan a %s, enviar a +PaymentByChequeOrderedToShort=Los pagos de cheques (impuestos incluidos) se pagan a +PaymentByTransferOnThisBankAccount=Pago por transferencia a la siguiente cuenta bancaria +VATIsNotUsedForInvoice=* IVA no aplicable art-293B de CGI +LawApplicationPart2=la mercancía sigue siendo propiedad de +LawApplicationPart3=El vendedor hasta el pago total de +LawApplicationPart4=su precio. +LimitedLiabilityCompanyCapital=SARL con Capital de +UseDiscount=Utilizar descuento +UseCredit=Utilizar crédito +UseCreditNoteInInvoicePayment=Reducir la cantidad a pagar con este crédito +MenuChequeDeposits=Depósitos de cheques +MenuCheques=Cheques +MenuChequesReceipts=Verificar recibos +ChequesReceipts=Verificar recibos +ChequesArea=Área de depósitos de cheques +ChequeDeposits=Depósitos de cheques +DepositId=Depósito de identificación +CreditNoteConvertedIntoDiscount=Este%s se ha convertido en%s +UsBillingContactAsIncoiveRecipientIfExist=Use el contacto/dirección con el tipo 'contacto de facturación' en lugar de la dirección de un tercero como destinatario de las facturas +ShowUnpaidAll=Mostrar todas las facturas impagadas +ShowUnpaidLateOnly=Mostrar facturas atrasadas no pagadas +PaymentInvoiceRef=Factura de pago%s +ValidateInvoices=Validar facturas +Reported=Retrasado +DisabledBecausePayments=No es posible ya que hay algunos pagos +CantRemovePaymentWithOneInvoicePaid=No se puede eliminar el pago ya que hay al menos una factura clasificada como pagada +ExpectedToPay=Pago esperado +CantRemoveConciliatedPayment=No se puede eliminar el pago reconciliado +PayedByThisPayment=Pago por este pago +ClosePaidInvoicesAutomatically=Clasifique automáticamente todas las facturas estándar, de anticipo o de reemplazo como "Pagadas" cuando el pago se realice por completo. +ClosePaidCreditNotesAutomatically=Clasifique automáticamente todas las notas de crédito como "Pagadas" cuando el reembolso se realice por completo. +AllCompletelyPayedInvoiceWillBeClosed=Todas las facturas sin remanente a pagar se cerrarán automáticamente con el estado "Pagado". +ToMakePayment=Paga +ToMakePaymentBack=Pagar +ListOfYourUnpaidInvoices=Lista de facturas impagadas +NoteListOfYourUnpaidInvoices=Nota: Esta lista sólo contiene facturas para terceros a los que está vinculado como representante de ventas. +RevenueStamp=Sello fiscal +YouMustCreateInvoiceFromThird=Esta opción solo está disponible cuando se crea una factura desde la pestaña "Cliente" de un tercero +YouMustCreateInvoiceFromSupplierThird=Esta opción solo está disponible cuando se crea una factura desde la pestaña "Proveedor" de terceros +YouMustCreateStandardInvoiceFirstDesc=Primero debe crear una factura estándar y convertirla en "plantilla" para crear una nueva plantilla de factura +PDFCrabeDescription=Factura PDF plantilla Crabe. Una plantilla de factura completa (implementación anterior de la plantilla Sponge) +PDFSpongeDescription=Factura PDF plantilla de esponja. Una plantilla de factura completa. +PDFCrevetteDescription=Plantilla de factura PDF Crevette. Una plantilla completa de facturas para facturas de situación +TerreNumRefModelDesc1=Número de devolución con el formato%syymm-nnnn para facturas estándar y%syymm-nnnn para notas de crédito donde yy es año, mm es mes y nnnn es una secuencia sin interrupción y sin retorno a 0 +MarsNumRefModelDesc1=Número de devolución con el formato%syymm-nnnn para facturas estándar,%syymm-nnnn para facturas de reemplazo,%syymm-nnnn para facturas de pago inicial y%syymm-nnnn para notas de crédito donde yy es año, mm es mes y nnnn es una secuencia con sin descanso y sin retorno a 0 +TerreNumRefModelError=Un proyecto de ley que comienza con $ syymm ya existe y no es compatible con este modelo de secuencia. Eliminar o cambiar el nombre para activar este módulo. +CactusNumRefModelDesc1=Número de devolución con el formato%syymm-nnnn para facturas estándar,%syymm-nnnn para notas de crédito y%syymm-nnnn para facturas de pago inicial donde yy es año, mm es mes y nnnn es una secuencia sin interrupción y sin retorno a 0 +TypeContact_facture_internal_SALESREPFOLL=Representante de seguimiento de factura de cliente +TypeContact_facture_external_BILLING=Contacto de factura de cliente +TypeContact_facture_external_SHIPPING=Contacto de envío del cliente +TypeContact_facture_external_SERVICE=Contacto de servicio al cliente +TypeContact_invoice_supplier_internal_SALESREPFOLL=Representante de seguimiento de la factura del proveedor +TypeContact_invoice_supplier_external_BILLING=Contacto de factura del vendedor +TypeContact_invoice_supplier_external_SHIPPING=Contacto de envío del proveedor +TypeContact_invoice_supplier_external_SERVICE=Contacto de servicio del proveedor +InvoiceFirstSituationAsk=Primera factura de situación +InvoiceFirstSituationDesc=Las facturas de situación están vinculadas a situaciones relacionadas con una progresión, por ejemplo, la progresión de una construcción. Cada situación está ligada a una factura. +InvoiceSituationAsk=Factura tras la situación +InvoiceSituationDesc=Crear una nueva situación después de una ya existente +SituationAmount=Importe de la factura de la situación (neto) +SituationDeduction=Sustracción de la situación +CreateNextSituationInvoice=Crear la siguiente situación +ErrorFindNextSituationInvoice=Error al no poder encontrar la referencia en el siguiente ciclo de situación +ErrorOutingSituationInvoiceOnUpdate=No se puede publicar esta factura de situación. +NotLastInCycle=Esta factura no es la última en ciclo y no debe ser modificada. +DisabledBecauseNotLastInCycle=La siguiente situación ya existe. +DisabledBecauseFinal=Esta situación es definitiva. +situationInvoiceShortcode_AS=COMO +situationInvoiceShortcode_S=D +CantBeLessThanMinPercent=El progreso no puede ser menor que su valor en la situación anterior. +NoSituations=No hay situaciones abiertas +PDFCrevetteSituationNumber=Situación N °%s +PDFCrevetteSituationInvoiceLineDecompte=Factura de situación - COUNT +PDFCrevetteSituationInvoiceLine=Situación N ° %s: Inv. N ° %s en %s +TotalSituationInvoice=Situación total +invoiceLineProgressError=El avance de la línea de factura no puede ser mayor o igual que la siguiente línea de factura +updatePriceNextInvoiceErrorUpdateline=Error: actualizar precio en línea de factura: %s +ToCreateARecurringInvoice=Para crear una factura recurrente para este contrato, primero cree este proyecto de factura, luego convierta en una plantilla de factura y defina la frecuencia para la generación de futuras facturas. +ToCreateARecurringInvoiceGene=Para generar facturas futuras de forma regular y manual, simplemente vaya al menú %s -%s -%s. +ToCreateARecurringInvoiceGeneAuto=Si necesita que esas facturas se generen automáticamente, solicite a su administrador que habilite y configure el módulo %s . Tenga en cuenta que ambos métodos (manual y automático) se pueden usar juntos sin riesgo de duplicación. +DeleteRepeatableInvoice=Eliminar factura de plantilla +ConfirmDeleteRepeatableInvoice=¿Está seguro de que desea eliminar la factura de la plantilla? +CreateOneBillByThird=Crear una factura por terceros (de lo contrario, una factura por pedido) +BillCreated=%s facturas creadas +AutoFillDateFrom=Establecer fecha de inicio para la línea de servicio con fecha de factura +AutoFillDateFromShort=Establecer fecha de inicio +AutoFillDateToShort=Establecer fecha de finalización +MaxNumberOfGenerationReached=Número máximo de generación alcanzado +BILL_DELETEInDolibarr=Se eliminó la factura +BILL_SUPPLIER_DELETEInDolibarr=Factura de proveedor eliminada diff --git a/htdocs/langs/es_EC/bookmarks.lang b/htdocs/langs/es_EC/bookmarks.lang new file mode 100644 index 00000000000..19eb00c59c9 --- /dev/null +++ b/htdocs/langs/es_EC/bookmarks.lang @@ -0,0 +1,11 @@ +# Dolibarr language file - Source file is en_US - bookmarks +AddThisPageToBookmarks=Añadir página actual a favoritos +ListOfBookmarks=Lista de marcadores +EditBookmarks=Mostrar/editar marcadores +ShowBookmark=Mostrar marcador +ReplaceWindow=Reemplazar pestaña actual +BehaviourOnClick=Comportamiento al seleccionar una URL de marcador +SetHereATitleForLink=Establecer un nombre para el marcador +UseAnExternalHttpLinkOrRelativeDolibarrLink=Utilice un enlace externo / absoluto (https://URL) o un enlace interno / relativo (/DOLIBARR_ROOT/htdocs/...) +ChooseIfANewWindowMustBeOpenedOnClickOnBookmark=Elija si la página vinculada debe abrirse en la pestaña actual o en una pestaña nueva +BookmarksManagement=Administración de marcadores diff --git a/htdocs/langs/es_EC/boxes.lang b/htdocs/langs/es_EC/boxes.lang new file mode 100644 index 00000000000..68072918006 --- /dev/null +++ b/htdocs/langs/es_EC/boxes.lang @@ -0,0 +1,77 @@ +# Dolibarr language file - Source file is en_US - boxes +BoxLoginInformation=Información de inicio de sesión +BoxLastRssInfos=Información RSS +BoxLastProducts=Últimos Productos / Servicios %s +BoxProductsAlertStock=Alertas de stock de productos +BoxLastSupplierBills=Últimas facturas de proveedor +BoxLastCustomerBills=Últimas facturas de clientes +BoxOldestUnpaidCustomerBills=Las facturas de clientes no pagadas más antiguas +BoxOldestUnpaidSupplierBills=Facturas de proveedores sin pagar más antiguas +BoxLastProposals=Últimas propuestas comerciales +BoxLastProspects=Últimas perspectivas modificadas +BoxLastCustomers=Clientes más recientes +BoxLastSuppliers=Los últimos proveedores modificados +BoxLastCustomerOrders=Últimos pedidos de venta +BoxLastMembers=Los últimos miembros +BoxCurrentAccounts=Saldo de cuentas abiertas +BoxTitleLastProducts=Productos / Servicios: last %s modificado +BoxTitleLastModifiedSuppliers=Proveedores: último %s modificado +BoxTitleLastModifiedCustomers=Clientes: último %s modificado +BoxTitleLastCustomersOrProspects=Últimos %s clientes o prospectos +BoxTitleLastCustomerBills=Las últimas facturas de clientes modificadas %s +BoxTitleLastSupplierBills=Las últimas facturas de proveedor modificadas %s +BoxTitleLastModifiedProspects=Perspectivas: última %s modificada +BoxTitleLastModifiedMembers=Ultimos %s miembros más recientes +BoxTitleOldestUnpaidCustomerBills=Facturas de clientes: más antiguas sin pagar %s +BoxTitleOldestUnpaidSupplierBills=Facturas de proveedores: el más antiguo %s sin pagar +BoxTitleSupplierOrdersAwaitingReception=Pedidos de proveedores en espera de recepción +BoxTitleLastModifiedContacts=Contactos / Direcciones: última %s modificada +BoxMyLastBookmarks=Marcadores: último %s +BoxOldestExpiredServices=Servicios expirados más antiguos +BoxLastExpiredServices=Últimos %s contactos más antiguos con servicios activos expirados +BoxTitleLastActionsToDo=Últimas %s acciones para hacer +BoxTitleLatestModifiedBoms=Últimas BOMs modificadas %s +BoxTitleLatestModifiedMos=Últimas órdenes de fabricación modificadas %s +BoxGlobalActivity=Actividad global (facturas, propuestas, pedidos) +BoxTitleGoodCustomers=%s Buenos clientes +FailedToRefreshDataInfoNotUpToDate=Error al actualizar el flujo de RSS. Última fecha de actualización exitosa: %s +LastRefreshDate=Fecha de actualización más reciente +NoRecordedBookmarks=No se han definido marcadores. +ClickToAdd=Haga clic aquí para agregar. +NoRecordedCustomers=No hay clientes registrados +NoRecordedContacts=No hay contactos registrados +NoActionsToDo=No hay acciones que hacer +NoRecordedOrders=No hay pedidos de venta registrados +NoRecordedProposals=No hay propuestas registradas +NoRecordedInvoices=No hay facturas de clientes registradas +NoUnpaidCustomerBills=Sin facturas de clientes no pagadas +NoUnpaidSupplierBills=No hay facturas de proveedor sin pagar +NoModifiedSupplierBills=No hay facturas de proveedor registradas +NoRecordedProducts=No hay productos/servicios registrados +NoRecordedProspects=No hay perspectivas registradas +NoContractedProducts=No hay productos/servicios contratados +NoRecordedContracts=No hay contratos registrados +NoRecordedInterventions=No hay intervenciones registradas +BoxLatestSupplierOrders=Últimas órdenes de compra +BoxLatestSupplierOrdersAwaitingReception=Últimas órdenes de compra (con una recepción pendiente) +NoSupplierOrder=No hay orden de compra registrada +BoxCustomersInvoicesPerMonth=Facturas de clientes por mes +BoxCustomersOrdersPerMonth=Pedidos de ventas por mes +BoxSuppliersOrdersPerMonth=Pedidos de proveedores por mes +BoxProposalsPerMonth=Propuestas al mes +NoTooLowStockProducts=Ningún producto está bajo el límite de stock bajo +BoxProductDistribution=Productos / Servicios de Distribución. +BoxTitleLastModifiedSupplierBills=Facturas de proveedores: última modificación de %s +BoxTitleLatestModifiedSupplierOrders=Pedidos de proveedores: última modificación de %s +BoxTitleLastModifiedCustomerBills=Facturas del cliente: última %s modificada +BoxTitleLastModifiedCustomerOrders=Pedidos de ventas: última modificación de %s +BoxTitleLastModifiedPropals=Últimas propuestas modificadas%s +ForCustomersInvoices=Facturas de clientes +ForProposals=Propuestas +ChooseBoxToAdd=Añadir widget a tu panel de control +BoxAdded=Widget fue agregado en tu panel de control +NoRecordedManualEntries=No hay registros de entradas manuales en contabilidad +BoxSuspenseAccount=Cuenta la operación de contabilidad con cuenta de suspenso +BoxLastCustomerShipments=Últimos envíos de clientes +BoxTitleLastCustomerShipments=Últimos envíos de clientes %s +NoRecordedShipments=No se registraron envíos de clientes diff --git a/htdocs/langs/es_EC/cashdesk.lang b/htdocs/langs/es_EC/cashdesk.lang new file mode 100644 index 00000000000..689ad03abb7 --- /dev/null +++ b/htdocs/langs/es_EC/cashdesk.lang @@ -0,0 +1,71 @@ +# Dolibarr language file - Source file is en_US - cashdesk +CashDeskMenu=Punto de venta +CashDesk=Punto de venta +CashDeskBankCash=Cuenta bancaria (en efectivo) +CashDeskBankCB=Cuenta bancaria (tarjeta) +CashDeskBankCheque=Cuenta bancaria (cheque) +CashdeskShowServices=Servicios de venta +CashDeskOn=en +CashDeskThirdParty=Cliente/Proveedor +ShoppingCart=Carrito de compras +RestartSelling=Volver a vender +SellFinished=Venta completa +PrintTicket=Imprimir ticket +SendTicket=Enviar ticket +NoProductFound=No se encontró ningún artículo +NoArticle=Sin artículo +TotalTicket=Ticket total +NoVAT=No hay IVA para esta venta +Change=Exceso recibido +BankToPay=Cuenta para el pago +ShowCompany=Mostrar empresa +ShowStock=Mostrar almacén +DeleteArticle=Haga clic para eliminar este artículo +FilterRefOrLabelOrBC=Buscar (Ref/Etiqueta) +UserNeedPermissionToEditStockToUsePos=Solicita disminuir el stock en la creación de facturas, por lo que el usuario que usa POS debe tener permiso para editar el stock. +DolibarrReceiptPrinter=Dolibarr Impresora de recibos +PointOfSale=Punto de venta +TakeposConnectorNecesary=Se requiere 'conector TakePOS' +Receipt=Recibo +Header=Encabezado +Footer=Pie de página +AmountAtEndOfPeriod=Cantidad al final del período (día, mes o año) +TheoricalAmount=Cantidad teórica +RealAmount=Cantidad real +CashFence=Valla de efectivo +CashFenceDone=Cerca de efectivo hecha para el período. +NbOfInvoices=Nb de facturas +Paymentnumpad=Tipo de Pad para ingresar el pago +Numberspad=Pad de números +BillsCoinsPad=Pad de monedas y billetes +TakeposNeedsCategories=TakePOS necesita categorías de productos para funcionar +CashDeskBankAccountFor=Cuenta predeterminada para usar para pagos en +NoPaimementModesDefined=No hay modo de pavimento definido en la configuración de TakePOS +TicketVatGrouped=IVA grupal por tasa en tickets recibos +AutoPrintTickets=Imprimir automáticamente tickets / recibos +PrintCustomerOnReceipts=Imprimir al cliente en boletos / recibos +EnableBarOrRestaurantFeatures=Habilitar funciones para bar o restaurante +ConfirmDeletionOfThisPOSSale=¿Confirma la eliminación de esta venta actual? +ConfirmDiscardOfThisPOSSale=¿Quieres descartar esta venta actual? +History=Historia +BasicPhoneLayout=Usar diseño básico para teléfonos +DirectPaymentButton=Botón de pago directo en efectivo +Colorful=Vistoso +SortProductField=Campo para clasificar productos +BrowserMethodDescription=Impresión de recibos simple y fácil. Solo unos pocos parámetros para configurar el recibo. Imprimir a través del navegador. +TakeposConnectorMethodDescription=Módulo externo con características adicionales. Posibilidad de imprimir desde la nube. +PrintMethod=Método de impresión +ReceiptPrinterMethodDescription=Método potente con muchos parámetros. Completamente personalizable con plantillas. No se puede imprimir desde la nube. +ByTerminal=Por terminal +TakeposNumpadUsePaymentIcon=Usar icono de pago en el teclado numérico +CashDeskRefNumberingModules=Módulo de numeración para ventas POS +CashDeskGenericMaskCodes6 =
    {TN} la etiqueta se usa para agregar el número de terminal +TakeposGroupSameProduct=Agrupar las mismas líneas de productos +StartAParallelSale=Comience una nueva venta paralela +ControlCashOpening=Control de caja en la posición de apertura +CloseCashFence=Cerca de efectivo +CashReport=Informe de caja +MainPrinterToUse=Impresora principal para usar +OrderPrinterToUse=Solicitar impresora para usar +MainTemplateToUse=Plantilla principal para usar +OrderTemplateToUse=Plantilla de pedido para usar diff --git a/htdocs/langs/es_EC/categories.lang b/htdocs/langs/es_EC/categories.lang new file mode 100644 index 00000000000..1c15391eea7 --- /dev/null +++ b/htdocs/langs/es_EC/categories.lang @@ -0,0 +1,60 @@ +# Dolibarr language file - Source file is en_US - categories +Rubriques=Etiquetas/Categorías +NoCategoryYet=No se ha creado ninguna etiqueta/categoría de este tipo +AddIn=Añadir +CategoriesArea=Etiquetas/Categorías área +ProductsCategoriesArea=Área de etiquetas/categorías de productos/servicios +SuppliersCategoriesArea=Área de etiquetas / categorías de proveedores +CustomersCategoriesArea=Categorías de etiquetas/categorías de clientes +MembersCategoriesArea=Miembros tags/categories area +ContactsCategoriesArea=Zona de etiquetas/categorías de contactos +AccountsCategoriesArea=Cuentas tags/categories area +ProjectsCategoriesArea=Área de etiquetas/categorías de proyectos +UsersCategoriesArea=Etiquetas de usuarios / área de categorías +CatList=Lista de etiquetas/categorías +CreateThisCat=Crea esta etiqueta/categoría +NoSubCat=No subcategoría. +FoundCats=Etiquetas/categorías encontradas +ImpossibleAddCat=Imposible agregar la etiqueta/categoría%s +WasAddedSuccessfully=%s se agregó correctamente. +ObjectAlreadyLinkedToCategory=El elemento ya está vinculado a esta etiqueta/categoría. +ProductIsInCategories=El producto/servicio está vinculado a las siguientes etiquetas/categorías +CompanyIsInCustomersCategories=Este tercero está vinculado a los siguientes clientes/posibles etiquetas/categorías +CompanyIsInSuppliersCategories=Este tercero está vinculado a las siguientes etiquetas / categorías de proveedores +MemberIsInCategories=Este miembro está enlazado a los siguientes miembros tags/categories +ContactIsInCategories=Este contacto está vinculado a los siguientes contactos tags/categories +ProductHasNoCategory=Este producto/servicio no está en ninguna etiquetas/categorías +CompanyHasNoCategory=Este tercero no está en ninguna etiqueta/categoría +MemberHasNoCategory=Este miembro no está en ninguna de las etiquetas/categorías +ContactHasNoCategory=Este contacto no aparece en ninguna etiqueta/categoría +ProjectHasNoCategory=Este proyecto no está en ninguna etiqueta/categoría +ClassifyInCategory=Añadir a etiqueta/categoría +CategoryExistsAtSameLevel=Esta categoría ya existe con esta referencia +ConfirmDeleteCategory=¿Estás seguro de que quieres eliminar esta etiqueta/categoría? +SuppliersCategoryShort=Etiqueta / categoría de proveedores +CustomersCategoryShort=Etiqueta de los clientes/categoría +ProductsCategoryShort=Productos tag/category +MembersCategoryShort=Miembros tag/category +SuppliersCategoriesShort=Etiquetas / categorías de proveedores +ProspectsCategoriesShort=Etiquetas/categorías de las perspectivas +CustomersProspectsCategoriesShort=Cust./Prosp. etiquetas / categorías +ProductsCategoriesShort=Productos etiquetas/categorías +MembersCategoriesShort=Etiquetas/categorías de los miembros +AccountsCategoriesShort=Etiquetas/categorías de cuentas +ProjectsCategoriesShort=Proyectos etiquetas/categorías +UsersCategoriesShort=Etiquetas/categorías de usuarios +StockCategoriesShort=Etiquetas / categorías de almacén +CategId=ID de etiqueta/categoría +CatSupList=Lista de etiquetas / categorías de proveedores +CatCusList=Lista de etiquetas/categorías de cliente/prospecto +CatProdList=Lista de productos etiquetas/categorías +CatMemberList=Lista de miembros tags/categories +CatContactList=Lista de etiquetas/categorías de contacto +CatCusLinks=Enlaces entre clientes/prospectos y etiquetas/categorías +CatContactsLinks=Enlaces entre contactos / direcciones y etiquetas / categorías +ExtraFieldsCategories=Atributos complementarios +CategorieRecursiv=Vincular automáticamente con la etiqueta/categoría principal +AddProductServiceIntoCategory=Agregue el siguiente producto/servicio +ChooseCategory=Elegir la categoría +StocksCategoriesArea=Área de Categorías de Almacenes +ActionCommCategoriesArea=Área de Categorías de Eventos diff --git a/htdocs/langs/es_EC/commercial.lang b/htdocs/langs/es_EC/commercial.lang new file mode 100644 index 00000000000..85789b47b39 --- /dev/null +++ b/htdocs/langs/es_EC/commercial.lang @@ -0,0 +1,65 @@ +# Dolibarr language file - Source file is en_US - commercial +Commercial=Comercio +CommercialArea=Área de comercio +Prospects=Prospectos +AddActionRendezVous=Crear un evento Rendez-vous +ConfirmDeleteAction=¿Seguro que quieres eliminar este evento? +CardAction=Tarjeta de evento +ActionOnCompany=Compañía vinculada +TaskRDVWith=Reunión con%s +ShowTask=Mostrar tarea +ShowAction=Mostrar evento +ThirdPartiesOfSaleRepresentative=Cliente/Proveedor con representante de ventas +SaleRepresentativesOfThirdParty=Representantes de ventas de cliente/proveedor +SalesRepresentative=Representante de ventas +SalesRepresentatives=Representantes de ventas +SalesRepresentativeFollowUp=Representante de ventas (seguimiento) +SalesRepresentativeSignature=Representante de ventas (firma) +NoSalesRepresentativeAffected=Ningún representante de ventas asignado +ShowCustomer=Mostrar cliente +ShowProspect=Mostrar perspectiva +ListOfProspects=Lista de prospectos +ListOfCustomers=Lista de clientes +LastDoneTasks=Últimas acciones%s completadas +LastActionsToDo=Acciones%s no completadas más antiguas +DoneAndToDoActions=Eventos Completos y Por hacer +DoneActions=Eventos terminados +ToDoActions=Eventos incompletos +SendPropalRef=Presentación de la propuesta comercial%s +SendOrderRef=Presentación de la orden%s +StatusNotApplicable=No aplica +StatusActionToDo=Que hacer +StatusActionDone=Completar +StatusActionInProcess=En proceso +TasksHistoryForThisContact=Eventos para este contacto +LastProspectDoNotContact=Sin contacto +LastProspectNeverContacted=Nunca contactado +LastProspectToContact=Contactar +LastProspectContactInProcess=Contacto en proceso +LastProspectContactDone=Contacto hecho +ActionDoneBy=Evento realizado por +ActionAC_FAX=Enviar fax +ActionAC_PROP=Enviar propuesta por correo +ActionAC_EMAIL=Enviar correo electrónico +ActionAC_EMAIL_IN=Recepción de correo electrónico +ActionAC_RDV=Reuniones +ActionAC_INT=Intervención en el sitio +ActionAC_FAC=Envíe la factura del cliente por correo +ActionAC_REL=Envíe la factura del cliente por correo (recordatorio) +ActionAC_CLO=Cerrado +ActionAC_EMAILING=Enviar correo electrónico masivo +ActionAC_COM=Enviar pedido de ventas por correo +ActionAC_SHIP=Enviar envío por correo +ActionAC_SUP_ORD=Enviar pedido de compra por correo +ActionAC_SUP_INV=Enviar la factura del proveedor por correo +ActionAC_OTH=Otro +ActionAC_OTH_AUTO=Eventos insertados automáticamente +ActionAC_MANUAL=Eventos insertados manualmente +ActionAC_AUTO=Eventos insertados automáticamente +ActionAC_OTH_AUTOShort=Automático +Stats=Estadísticas de ventas +StatusProsp=Estado del prospecto +DraftPropals=Proyecto de propuestas comerciales +WelcomeOnOnlineSignaturePage=Bienvenido a la página para aceptar propuestas comerciales de %s +ThisScreenAllowsYouToSignDocFrom=Esta pantalla le permite aceptar y firmar, o rechazar, una propuesta de cotización/comercial +SignatureProposalRef=Firma de cotización/propuesta comercial %s. diff --git a/htdocs/langs/es_EC/companies.lang b/htdocs/langs/es_EC/companies.lang new file mode 100644 index 00000000000..6d6fffcf7d9 --- /dev/null +++ b/htdocs/langs/es_EC/companies.lang @@ -0,0 +1,278 @@ +# Dolibarr language file - Source file is en_US - companies +ErrorCompanyNameAlreadyExists=El nombre de la empresa %s ya existe. Elija otro. +ErrorSetACountryFirst=Establecer primero el país +SelectThirdParty=Seleccione un cliente/proveedor +ConfirmDeleteCompany=¿Está seguro de que desea eliminar esta empresa y toda la información heredada? +DeleteContact=Eliminar un contacto / dirección +ConfirmDeleteContact=¿Está seguro de que desea eliminar este contacto y toda la información heredada? +MenuNewThirdParty=Nuevo Cliente/Proveedore +MenuNewProspect=Nuevo prospecto +NewCompany=Nueva compañía (prospecto, cliente, vendedor) +NewThirdParty=Nuevo tercero (prospecto, cliente, proveedor) +CreateDolibarrThirdPartySupplier=Crear un tercero (vendedor/proveedor) +CreateThirdPartyOnly=Crear clientes/proveedors +CreateThirdPartyAndContact=Crear un cliente/proveedor + un contacto +ProspectionArea=Área de Prospección +IdThirdParty=ID cliente/proveedor +IdCompany=ID de la compañía +IdContact=ID de contacto +Contacts=Contactos / Direcciones +ThirdPartyContacts=Contactos de cliente/proveedor +ThirdPartyContact=Contacto / dirección de cliente/proveedor +CompanyName=Nombre de empresa +AliasNames=Nombre de alias (comercial, marca registrada, ...) +Companies=Compañías +CountryIsInEEC=El país está dentro de la Comunidad Económica Europea. +PriceFormatInCurrentLanguage=Formato de visualización de precios en el idioma y moneda actuales +ThirdPartyName=Nombre de un cliente/proveedor +ThirdPartyEmail=Correo electrónico de cliente/proveedor +ThirdParty=Cliente/Proveedor +ThirdParties=Clientes/Proveedors +ThirdPartyProspects=Prospecto +ThirdPartyProspectsStats=Prospecto +ThirdPartyCustomersWithIdProf12=Clientes con %s o %s +ThirdPartySuppliers=Vendedores/Proveedores +ThirdPartyType=Tipo de cliente/proveedor +Individual=Individuo privado +ToCreateContactWithSameName=Creará automáticamente un contacto / dirección con la misma información que el cliente/proveedor bajo el cliente/proveedor. En la mayoría de los casos, incluso si su cliente/proveedor es una persona física, basta con crear un cliente/proveedor. +ParentCompany=Empresa matriz +Subsidiaries=Sucursales +CivilityCode=Código civil - RUC +RegisteredOffice=Oficina registrada +Lastname=Apellido +PostOrFunction=Cargo +UserTitle=Título +NatureOfThirdParty=Naturaleza del cliente/proveedor +StateCode=Código de estado / provincia +StateShort=Provincia +Region-State=Región - Provincia +CountryCode=Código de país +CountryId=ID del país +Call=Llamada +PhonePro=Teléfono Trabajo +PhonePerso=Teléfono Personal +PhoneMobile=Celular +No_Email=Rechazar correos masivos +Town=Ciudad +Poste=Posición +VATIsUsed=Impuesto a las ventas utilizado +VATIsUsedWhenSelling=Esto define si este tercero incluye un impuesto a la venta o no cuando realiza una factura a sus propios clientes. +VATIsNotUsed=Impuesto a las ventas no utilizado +CopyAddressFromSoc=Copiar dirección de detalles de cliente/proveedor +ThirdpartyNotCustomerNotSupplierSoNoRef=Ni cliente, Ni vendedor, no hay objetos de referencia disponibles. +ThirdpartyIsNeitherCustomerNorClientSoCannotHaveDiscounts=Cliente/Proveedor, ni cliente ni vendedor, los descuentos no están disponibles. +OverAllProposals=Propuestas +OverAllSupplierProposals=Solicitudes de precios +LocalTax1IsUsed=Utilice el segundo impuesto +LocalTax1IsUsedES=RE se utiliza +LocalTax1IsNotUsedES=RE no se utiliza +LocalTax2IsUsed=Utilizar tercer impuesto +LocalTax2IsUsedES=IRPF se utiliza +LocalTax2IsNotUsedES=IRPF no se utiliza +WrongCustomerCode=Código de cliente inválido +WrongSupplierCode=Código de proveedor no válido +CustomerCodeModel=Modelo de código de cliente +SupplierCodeModel=Modelo de código de proveedor +ProfId1Short=ID Prof. 1 +ProfId2Short=ID Prof. 2 +ProfId3Short=ID Prof. 3 +ProfId4Short=ID Prof. 4 +ProfId5Short=ID Prof. 5 +ProfId6Short=ID Prof. 6 +ProfId1=ID Profesional 1 +ProfId2=ID Profesional 2 +ProfId3=ID Profesional 3 +ProfId4=ID Profesional 4 +ProfId5=ID Profesional 5 +ProfId6=ID Profesional 6 +ProfId1AR=ID Prof. 1 (CUIT / CUIL) +ProfId2AR=ID Prof. 2 (Ingresos brutos) +ProfId1AT=ID Prof. 1 (USt.-IdNr) +ProfId2AT=ID Prof. 2 (USt.-Nr) +ProfId3AT=ID Prof. 3 (Número de registro comercial) +ProfId1AU=ID Prof. 1 (ABN) +ProfId1BE=ID Prof. 1 (Número profesional) +ProfId2BR=IE (Inscripción Estadística) +ProfId3BR=IM (Inscripción Municipal) +ProfId3CH=ID Prof. 1 (Federal number) +ProfId4CH=ID Prof. 2 (Commercial Record number) +ProfId1CL=ID Prof. 1 (R.U.T.) +ProfId1CO=ID Prof. 1 (R.U.T.) +ProfId1DE=ID Prof. 1 (USt.-IdNr) +ProfId2DE=ID Prof. 2 (USt.-Nr) +ProfId3DE=ID Prof. 3 (Número de registro comercial) +ProfId1ES=ID Prof. 1 (CIF/NIF) +ProfId2ES=ID Prof. 2 (Número de seguridad social) +ProfId3ES=ID Prof. 3 (CNAE) +ProfId4ES=ID Prof. 4 (Número colegiado) +ProfId1FR=ID Prof. 1 (SIREN) +ProfId2FR=ID Prof. 2 (SIRET) +ProfId3FR=ID Prof. 3 (NAF, old APE) +ProfId4FR=ID Prof. 4 (RCS/RM) +ProfId1GB=Número de registro +ProfId1HN=ID prof. 1 (RTN) +ProfId1IN=ID Prof. 1 (TIN) +ProfId2IN=ID Prof. 2 (PAN) +ProfId3IN=ID Prof. 3 (SRVC TAX) +ProfId4IN=ID Prof. 4 +ProfId5IN=ID Prof. 5 +ProfId1LU=ID Prof. 1 (R.C.S. Luxembourg) +ProfId2LU=ID Prof. 2 (Permiso de negocio) +ProfId5MA=ID Prof. 5 (I.C.E.) +ProfId1MX=ID Prof. 1 (R.F.C). +ProfId2MX=ID Prof. 2 (R..P. IMSS) +ProfId3MX=ID Prof. 3 (Profesional Charter) +ProfId4NL=Número de Servicio Ciudadano (BSN) +ProfId1PT=ID Prof. 1 (NIPC) +ProfId2PT=ID Prof. 2 (Número de seguridad social) +ProfId3PT=ID Prof. 3 (Número de registro comercial) +ProfId4PT=ID Prof. 4 (Conservatorio) +ProfId1TN=ID Prof. 1 (RC) +ProfId2TN=ID Prof. 2 (Número de registro fiscal) +ProfId3TN=ID Prof. 3 (Código aduanero) +ProfId4TN=ID Prof. 4 (BAN) +ProfId1US=Id del Prof (FEIN) +ProfId1RO=Id profesional 1 (CUI) +ProfId2RO=Id profesional 2 (Nr. Înmatriculare) +ProfId3RO=Id profesional 3 (CAEN) +ProfId5RO=Id profesional 5 (EUID) +ProfId1RU=ID Prof. 1 (OGRN) +ProfId2RU=ID Prof. 2 (INN) +ProfId3RU=ID Prof. 3 (KPP) +ProfId4RU=ID Prof. 4 (OKPO) +VATIntra=ID de IVA +VATIntraShort=ID de IVA +VATIntraSyntaxIsValid=La sintaxis es válida +VATReturn=Devolución del IVA +ProspectCustomer=Prospecto / Cliente +CustomerCard=Tarjeta de cliente +CustomerRelativeDiscount=Descuento relativo del cliente +SupplierRelativeDiscount=Descuento relativo del vendedor +CustomerAbsoluteDiscountShort=Descuento absoluto +CompanyHasRelativeDiscount=Este cliente tiene un descuento predeterminado de %s%% +CompanyHasNoRelativeDiscount=Este cliente no tiene descuento relativo por defecto +HasRelativeDiscountFromSupplier=Tiene un descuento predeterminado de %s%% de este proveedor +HasNoRelativeDiscountFromSupplier=No tiene un descuento relativo predeterminado de este proveedor. +CompanyHasAbsoluteDiscount=Este cliente tiene descuentos disponibles (notas de créditos o anticipos) para %s%s +CompanyHasDownPaymentOrCommercialDiscount=Este cliente tiene descuentos disponibles (comerciales, anticipos) para %s%s +CompanyHasCreditNote=Este cliente todavía tiene notas de crédito para %s %s +HasNoAbsoluteDiscountFromSupplier=No tiene crédito de descuento disponible de este proveedor +HasAbsoluteDiscountFromSupplier=Tiene descuentos disponibles (notas de crédito o anticipos) para %s %s de este proveedor +HasDownPaymentOrCommercialDiscountFromSupplier=Tiene descuentos disponibles (comerciales, pagos iniciales) para %s %s de este proveedor +HasCreditNoteFromSupplier=Tiene notas de crédito para %s %s de este proveedor +CompanyHasNoAbsoluteDiscount=Este cliente no tiene crédito de descuento disponible +CustomerAbsoluteDiscountAllUsers=Descuentos totales de clientes (concedidos por todos los usuarios) +CustomerAbsoluteDiscountMy=Descuentos totales de clientes (otorgados por usted) +SupplierAbsoluteDiscountAllUsers=Descuentos absolutos de proveedores (ingresados por todos los usuarios) +SupplierAbsoluteDiscountMy=Descuentos absolutos de proveedores (ingresados por usted mismo) +ContactId=ID de contacto +NoContactDefinedForThirdParty=Ningún contacto definido para este cliente/proveedor +DefaultContact=Dirección/contacto predeterminado +ContactByDefaultFor=Contacto / dirección predeterminados para +AddThirdParty=Crear cliente/proveedor +AccountancyCode=Cuenta de contabilidad +CustomerCode=Código de cliente +SupplierCode=Código de proveedor +CustomerCodeShort=Código de cliente +SupplierCodeShort=Código de proveedor +CustomerCodeDesc=Código de cliente, único para todos los clientes. +SupplierCodeDesc=Código de proveedor, único para todos los proveedores +RequiredIfCustomer=Requerido si un cliente/proveedor es un cliente o un cliente potencial +RequiredIfSupplier=Requerido si un tercero es un vendedor +ValidityControledByModule=Validez controlada por módulo +ProspectToContact=Prospecto para contactar +CompanyDeleted=Empresa "%s" eliminada de la base de datos. +ListOfContacts=Lista de contactos / direcciones +ListOfContactsAddresses=Lista de contactos / direcciones +ListOfThirdParties=Lista de cliente/proveedor +ShowContact=Dirección de contacto +ContactsAllShort=Todos (Sin filtro) +ContactType=Tipo de Contacto +ContactForOrders=Contacto del pedido +ContactForOrdersOrShipments=Contacto de los pedidos o envíos +ContactForProposals=Contacto de la propuesta +ContactForContracts=Contacto del contrato +ContactForInvoices=Contacto de la factura +NoContactForAnyOrder=Este contacto no es un contacto para ningún pedido +NoContactForAnyOrderOrShipments=Este contacto no es un contacto para ningún pedido o envío +NoContactForAnyProposal=Este contacto no es un contacto para ninguna propuesta comercial +NoContactForAnyContract=Este contacto no es un contacto para ningún contrato +NoContactForAnyInvoice=Este contacto no es un contacto para ninguna factura +NewContactAddress=Nuevo contacto/dirección +EditCompany=Editar empresa +ThisUserIsNot=Este usuario no es un prospecto, cliente o vendedor. +VATIntraCheck=Comprobar +VATIntraCheckDesc=La identificación del IVA debe incluir el prefijo del país. El enlace %s utiliza el servicio de verificación de IVA europeo (VIES) que requiere acceso a Internet desde el servidor Dolibarr. +VATIntraCheckURL=Http://ec.europa.eu/taxation_customs/vies/vieshome.do +VATIntraCheckableOnEUSite=Consulte el ID de IVA intracomunitario en el sitio web de la Comisión Europea +VATIntraManualCheck=También puede consultar manualmente en el sitio web de la Comisión Europea. %s +ErrorVATCheckMS_UNAVAILABLE=No es posible el chequeo. El servicio de chequeo no es proporcionado por el estado miembro (%s). +NorProspectNorCustomer=No prospecto, ni cliente +JuridicalStatus=Tipo de entidad jurídica +ProspectLevel=Prospecto potencial +OthersNotLinkedToThirdParty=Otros, no vinculados a cliente/proveedor +ProspectStatus=Estado del prospecto +PL_NONE=Ninguna +TE_STARTUP=Puesta en marcha +TE_GROUP=Empresa grande +TE_MEDIUM=Empresa mediana +TE_ADMIN=Gubernamental +TE_SMALL=Empresa pequeña +TE_RETAIL=Al por menor +TE_PRIVATE=Privado +StatusProspect1=Para ser contactado +StatusProspect2=Contacto en proceso +StatusProspect3=Contacto hecho +ChangeDoNotContact=Cambiar estado a 'No contactar' +ChangeNeverContacted=Cambiar estado a 'Nunca contactado' +ChangeToContact=Cambiar estado a 'Para ser contactado' +ChangeContactInProcess=Cambiar estado a 'Contacto en proceso' +ChangeContactDone=Cambiar estado a 'Contacto hecho' +ProspectsByStatus=Prospecto por estatus +ExportCardToFormat=Exportar la tarjeta al formato +ContactNotLinkedToCompany=Contacto no vinculado a cliente/proveedor +DolibarrLogin=Dolibarr inicio de sesión +NoDolibarrAccess=No hay acceso a Dolibarr +ExportDataset_company_1=Terceros (empresas / fundaciones / personas físicas) y sus propiedades. +ExportDataset_company_2=Contactos y sus propiedades. +ImportDataset_company_2=Contactos / direcciones adicionales de terceros y atributos +ImportDataset_company_4=Representantes de ventas de terceros (asignar representantes de ventas / usuarios a empresas) +PriceLevelLabels=Etiquetas de nivel de precio +DeliveryAddress=Dirección de entrega +SupplierCategory=Categoría del vendedor +DeleteFile=Borrar archivo +ConfirmDeleteFile=¿Estás seguro de que quieres eliminar este archivo? +AllocateCommercial=Asignado al representante de ventas +Organization=Organización +FiscalYearInformation=Año fiscal +FiscalMonthStart=Mes de inicio del ejercicio del año fiscal +YouMustAssignUserMailFirst=Debe crear un correo electrónico para este usuario antes de poder agregar una notificación por correo electrónico. +YouMustCreateContactFirst=Para poder agregar notificaciones por correo electrónico, primero debe definir contactos con correos electrónicos válidos para los cliente/proveedor +ListSuppliersShort=Lista de proveedores +ListProspectsShort=Lista de prospectos +ListCustomersShort=Lista de clientes +ThirdPartiesArea=Clientes/Proveedores y Contactos +LastModifiedThirdParties=Últimos %s clientes/proveedores modificados +UniqueThirdParties=Total de clientes/proveedores +InActivity=Abierto +ThirdPartyIsClosed=El clientes/proveedores está cerrado +ProductsIntoElements=Lista de productos / servicios en %s +CurrentOutstandingBill=Factura actual pendiente +OutstandingBill=Max. Por factura pendiente +OutstandingBillReached=Max. Para la factura pendiente alcanzada +OrderMinAmount=Monto mínimo para la orden +MonkeyNumRefModelDesc=Devuelva un número con el formato %syymm-nnnn para el código de cliente y %syymm-nnnn para el código de proveedor donde yy es año, mm es mes y nnnn es una secuencia sin interrupción y sin retorno a 0. +LeopardNumRefModelDesc=El código es gratuito. Este código se puede modificar en cualquier momento. +ManagingDirectors=Nombre del Gerente(s) (CEO, director, presidente ...) +MergeOriginThirdparty=Duplicar clientes/proveedores (clientes/proveedores que desea eliminar) +MergeThirdparties=Combinar clientes/proveedores +ConfirmMergeThirdparties=¿Está seguro de que desea fusionar este cliente/proveedor con el actual? Todos los objetos vinculados (facturas, pedidos, ...) se moverán al cliente/proveedor actual, luego se eliminará el cliente/proveedor. +ThirdpartiesMergeSuccess=Los clientes/proveedores se han fusionado +SaleRepresentativeLogin=Inicio de sesión del representante de ventas +SaleRepresentativeFirstname=Nombre del representante de ventas +SaleRepresentativeLastname=Apellido del representante de ventas +ErrorThirdpartiesMerge=Hubo un error al eliminar los clientes/proveedores. Por favor revise el registro. Los cambios han sido revertidos. +KeepEmptyIfGenericAddress=Mantenga este campo vacío si esta dirección es una dirección genérica +PaymentTermsSupplier=Plazo de pago - Vendedor +MulticurrencyUsed=Usar monedas múltiples +MulticurrencyCurrency=Moneda diff --git a/htdocs/langs/es_EC/compta.lang b/htdocs/langs/es_EC/compta.lang new file mode 100644 index 00000000000..d89eb2e1e4d --- /dev/null +++ b/htdocs/langs/es_EC/compta.lang @@ -0,0 +1,227 @@ +# Dolibarr language file - Source file is en_US - compta +MenuFinancial=Facturación | Pago +TaxModuleSetupToModifyRules=Vaya a Configuración del módulo Impuestos para modificar las reglas de cálculo +TaxModuleSetupToModifyRulesLT=Vaya a configuración de la empresa para modificar las reglas de cálculo +OptionMode=Opción de contabilidad +OptionModeVirtual=Opción de Reclamaciones-Deudas +OptionModeTrueDesc=En este contexto, el volumen de negocios se calcula sobre los pagos (fecha de los pagos). La validez de las cifras sólo se garantiza si la contabilidad se examina a través de las entradas/salidas de las cuentas a través de facturas. +OptionModeVirtualDesc=En este contexto, el volumen de negocios se calcula sobre facturas (fecha de validación). Cuando estas facturas son debidas, hayan sido pagadas o no, se enumeran en la salida del volumen de ventas. +FeatureIsSupportedInInOutModeOnly=Función disponible únicamente en el modo de contabilidad CREDITS-DEBTS (consulte la configuración del módulo de contabilidad) +VATReportBuildWithOptionDefinedInModule=Las cantidades que se muestran aquí se calculan utilizando reglas definidas por la configuración del módulo de impuestos. +LTReportBuildWithOptionDefinedInModule=Los importes mostrados aquí se calculan utilizando reglas definidas por la configuración de la empresa. +Param=Configurar +RemainingAmountPayment=Cantidad del pago restante: +Accountparent=Cuenta para padres +Accountsparent=Cuentas de padres +MenuReportInOut=Ingresos / Gastos +ReportInOut=Balance de ingresos y gastos +ReportTurnover=Facturación facturada +ReportTurnoverCollected=Facturación recolectada +PaymentsNotLinkedToInvoice=Pagos no vinculados a ninguna factura, por lo que no están vinculados a terceros +PaymentsNotLinkedToUser=Pagos no vinculados a ningún usuario +Profit=Ganacias +Debit=Débito +Credit=Crédito +Piece=Documentos Contables +AmountHTVATRealReceived=Neto recaudado +AmountHTVATRealPaid=Neto pagado +VATToPay=Impuestos de venta IVA +VATReceived=Impuesto recibido +VATToCollect=Impuesto de compras +VATSummary=Impuesto mensual +VATBalance=Saldo fiscal / Balance +VATPaid=Impuesto pagado +LT1Summary=Resumen del impuesto 2 +LT2Summary=Resumen del impuesto 3 +LT2SummaryES=Saldo del IRPF +LT2SummaryIN=Saldo de SGST +LT1Paid=Impuesto 2 pagado +LT2Paid=Impuesto 3 pagado +LT1PaidES=RE pagado +LT2PaidES=IRPF pagado +LT1PaidIN=CGST pagado +LT2PaidIN=SGST pagado +LT1Customer=Impuestos 2 ventas +LT1Supplier=Impuestos 2 compras +LT1CustomerES=Ventas de RE +LT1SupplierES=RE compras +LT1SupplierIN=Compras de CGST +LT2Customer=Impuestos 3 ventas +LT2Supplier=Impuestos 3 compras +LT2CustomerES=Ventas del IRPF +LT2SupplierES=Compras del IRPF +LT2CustomerIN=Ventas del SGST +LT2SupplierIN=Compras de SGST +VATCollected=IVA recaudado +StatusToPay=Pagar +SpecialExpensesArea=Área para todos los pagos especiales +SocialContribution=Impuesto social o fiscal +LabelContrib=Contribución de la etiqueta +TypeContrib=Tipo de contribución +MenuSpecialExpenses=Gastos especiales +MenuTaxAndDividends=Impuestos y dividendos +MenuNewSocialContribution=Nuevo impuesto social/fiscal +NewSocialContribution=Nuevo impuesto social/fiscal +AddSocialContribution=Añadir impuestos sociales/fiscales +ContributionsToPay=Impuestos sociales/fiscales a pagar +AccountancyTreasuryArea=Área de facturación y pago +PaymentCustomerInvoice=Pago de la factura del cliente +PaymentSupplierInvoice=pago de factura del proveedor +PaymentSocialContribution=Pago de impuestos sociales y fiscales +PaymentVat=Pago del IVA +ListPayment=Lista de pagos +ListOfCustomerPayments=Lista de pagos de clientes +ListOfSupplierPayments=Lista de pagos de proveedores +DateStartPeriod=Fecha inicio período +DateEndPeriod=Fecha fin período +newLT1Payment=Nuevo pago de impuestos 2 +newLT2Payment=Nuevo pago de impuestos 3 +LT1Payment=Pago de impuestos 2 +LT1Payments=Impuestos 2 pagos +LT2Payment=Pago de impuestos 3 +LT2Payments=Impuestos 3 pagos +newLT1PaymentES=Nuevo pago RE +newLT2PaymentES=Nuevo pago IRPF +LT1PaymentES=RE pago +LT1PaymentsES=Pagos RE +LT2PaymentES=Pago del IRPF +LT2PaymentsES=Pagos del IRPF +VATPayment=Pago del impuesto sobre las ventas +VATPayments=Pagos del impuesto sobre la venta +VATRefund=Reembolso de impuestos de venta +NewVATPayment=Nuevo pago del IVA +NewLocalTaxPayment=Nuevo pago de impuestos %s +Refund=Reembolso +SocialContributionsPayments=Pagos de impuestos sociales y fiscales +ShowVatPayment=Mostrar pago de IVA +BalanceVisibilityDependsOnSortAndFilters=El equilibrio es visible en esta lista sólo si la tabla está ordenada ascendiendo en%s y filtrada para una cuenta bancaria +CustomerAccountancyCode=Código de contabilidad del cliente +SupplierAccountancyCode=Código contable del proveedor +CustomerAccountancyCodeShort=Cuenta de cliente. código +SupplierAccountancyCodeShort=Cuenta del proveedor. código +Turnover=Facturación facturada +TurnoverCollected=Facturación recolectada +SalesTurnoverMinimum=Facturación mínima +ByThirdParties=Por cliente +ByUserAuthorOfInvoice=Por el autor de la factura +CheckReceipt=Depósito de cheques +CheckReceiptShort=Depósito de cheques +LastCheckReceiptShort=Últimos comprobantes de comprobación%s +NewCheckReceipt=Nuevo descuento +NewCheckDeposit=Nuevo depósito de cheques +NewCheckDepositOn=Crear recibo para depósito en cuenta:%s +NoWaitingChecks=No hay cheques a la espera de depósito. +DateChequeReceived=Consultar fecha de recepción +NbOfCheques=No. de cheques +PaySocialContribution=Pagar un impuesto social/fiscal +ConfirmPaySocialContribution=¿Está seguro de que desea clasificar este impuesto social o fiscal como pagado? +DeleteSocialContribution=Eliminar un pago de impuestos sociales o fiscales +ConfirmDeleteSocialContribution=¿Seguro que desea eliminar este pago de impuestos sociales/fiscales? +ExportDataset_tax_1=Impuestos y pagos sociales y fiscales +CalcModeVATDebt=Modo %sVAT en la contabilidad de compromiso%s . +CalcModeVATEngagement=Modo %sVAT en los ingresos-gastos%s . +CalcModeDebt=Análisis de facturas registradas conocidas incluso si aún no se contabilizan en el libro mayor. +CalcModeEngagement=Análisis de los pagos registrados conocidos, incluso si aún no se contabilizan en el Libro mayor. +CalcModeBookkeeping=Análisis de los datos registrados en la tabla de Contabilidad. +CalcModeLT1= Modo %sRE en facturas de clientes - facturas de proveedores%s +CalcModeLT1Debt=Modo %sRE en las facturas del cliente%s +CalcModeLT1Rec= Modo %sRE en facturas de proveedores%s +CalcModeLT2= Modo %sIRPF en facturas de clientes - facturas de proveedores%s +CalcModeLT2Debt=Modo %sIRPF en las facturas del cliente%s +CalcModeLT2Rec= Modo %sIRPF en las facturas de los proveedores%s +AnnualSummaryDueDebtMode=Balance de ingresos y gastos, resumen anual +AnnualSummaryInputOutputMode=Balance de ingresos y gastos, resumen anual +AnnualByCompaniesDueDebtMode=Balance de ingresos y gastos, detalle por grupos predefinidos, modo %sClaims-Deudas%s dicho Compromiso de contabilidad . +AnnualByCompaniesInputOutputMode=Balance de ingresos y gastos, detalle por grupos predefinidos, modo %sIngresos-Gastos%s dicho contabilidad de caja . +SeeReportInInputOutputMode=Vea %s el análisis de pagos %s para cálcular los pagos efectuados, incluso si aún no se contabilizaron en el Libro mayor. +SeeReportInDueDebtMode=Vea %s el análisis de facturas %s para un cálculo basado en facturas registradas conocidas, incluso si aún no se contabilizaron en el Libro mayor. +SeeReportInBookkeepingMode=Consulte el informe %s Libro Mayor %s para un cálculo en la tabla contable del Libro Mayor +RulesAmountWithTaxIncluded=Los importes mostrados son con todos los impuestos incluidos +RulesResultDue=- Incluye facturas pendientes, gastos, IVA, donaciones ya sean pagadas o no. También incluye salarios pagados.
    - se basa en la fecha de facturación de las facturas y en la fecha de vencimiento de los gastos o pagos de impuestos. Para los salarios definidos con el módulo Salario, se utiliza la fecha de pago del valor. +RulesResultInOut=Incluye los pagos reales realizados en facturas, gastos, IVA y sueldos.
    - Se basa en las fechas de pago de las facturas, gastos, IVA y salarios. la fecha de donación para la donación. +RulesCADue=- Incluye las facturas vencidas del cliente, ya sean pagadas o no.
    : se basa en la fecha de facturación de estas facturas.
    +RulesCAIn=- Incluye todos los pagos efectivos de las facturas recibidas de los clientes.
    : se basa en la fecha de pago de estas facturas
    +RulesCATotalSaleJournal=Incluye todas las líneas de crédito del Diario Ventas. +RulesResultBookkeepingPersonalized=Muestra un registro en su libro mayor con cuentas contables agrupadas por grupos personalizados +SeePageForSetup=Consulte el menú %s para la configuración +DepositsAreNotIncluded=- Las facturas de anticipo no están incluidas. +DepositsAreIncluded=Las facturas de pago inicial están incluidas +LT1ReportByCustomers=Informe el impuesto 2 por un cliente/proveedor +LT2ReportByCustomers=Informe el impuesto 3 por un cliente/proveedor +LT1ReportByCustomersES=Informe de terceros RE +LT2ReportByCustomersES=Informe de terceros IRPF +VATReport=Informe de impuestos de venta +VATReportByPeriods=Informe de impuestos de venta por período +VATReportByRates=Informe de impuestos a la venta IVA por tarifas +VATReportByThirdParties=Informe de impuestos a la venta IVA por clientes/proveedores +VATReportByCustomers=Informe de IVA por cliente +VATReportByCustomersInInputOutputMode=Informe del cliente IVA cobrado y pagado +VATReportByQuartersInInputOutputMode=Reporte por tasa de impuesto a la venta del impuesto recaudado y pagado +LT1ReportByQuarters=Informe el impuesto 2 por tasa +LT2ReportByQuarters=Informe el impuesto 3 por tasa +LT1ReportByQuartersES=Informe de la tasa de RE +LT2ReportByQuartersES=Informe del IRPF +SeeVATReportInInputOutputMode=Consulte el informe %sVAT encasement%s para un cálculo estándar +SeeVATReportInDueDebtMode=Consulte el informe %sVAT en el flujo%s para un cálculo con una opción en el flujo +RulesVATInServices=por servicios, el informe incluye las normas sobre el IVA realmente recibidas o emitidas sobre la base de la fecha de pago. +RulesVATInProducts=- Para los activos materiales, el informe incluye el IVA recibido o emitido sobre la base de la fecha de pago. +RulesVATDueServices=por servicios, el informe incluye facturas de IVA vencidas, pagadas o no, basadas en la fecha de factura. +RulesVATDueProducts=- Para los activos materiales, el informe incluye las facturas del IVA, en función de la fecha de la factura. +OptionVatInfoModuleComptabilite=Nota: Para los activos materiales, debe utilizar la fecha de entrega para ser más justo. +NotUsedForGoods=No se utiliza en las mercancías +ProposalStats=Estadísticas de las propuestas +InvoiceStats=Estadísticas de las facturas +Dispatch=Despacho +Dispatched=Enviado +ToDispatch=Para el despacho +ThirdPartyMustBeEditAsCustomer=Tercero debe ser definido como un cliente +SellsJournal=Diario de Ventas +DescSellsJournal=Diario de Ventas +CodeNotDef=Sin definición +WarningDepositsNotIncluded=Las facturas de pago inicial no se incluyen en esta versión con este módulo de contabilidad. +DatePaymentTermCantBeLowerThanObjectDate=La fecha del plazo de pago no puede ser inferior a la fecha del objeto. +Pcg_version=Plan de modelos de cuentas +Pcg_type=Tipo de Pcg +Pcg_subtype=Subtipo Pcg +InvoiceLinesToDispatch=Líneas de factura para enviar +ByProductsAndServices=Por producto y servicio +RefExt=Referencia externa +ToCreateAPredefinedInvoice=Para crear una factura de plantilla, cree una factura estándar y, a continuación, sin validarla, haga clic en el botón "%s". +LinkedOrder=Enlace al pedido +CalculationRuleDesc=Para calcular el IVA total, hay dos métodos:
    El método 1 redondea la tina en cada línea y luego los suma.
    El método 2 suma todas las tinas en cada línea y luego redondea el resultado.
    El resultado final puede diferir de pocos centavos. El modo predeterminado es modo %s . +CalculationRuleDescSupplier=Según el proveedor, elija el método apropiado para aplicar la misma regla de cálculo y obtener el mismo resultado esperado por su proveedor. +TurnoverPerProductInCommitmentAccountingNotRelevant=El informe de la facturación obtenida por producto no está disponible. Este informe solo está disponible para facturación facturada. +TurnoverPerSaleTaxRateInCommitmentAccountingNotRelevant=El informe de Facturación recaudada por tasa de impuesto a la venta IVA no está disponible. Este informe solo está disponible para facturación facturada. +AccountancyJournal=Diario de código de contabilidad +ACCOUNTING_VAT_SOLD_ACCOUNT=Cuenta de contabilidad de forma predeterminada para el IVA sobre las ventas (se usa si no está definido en la configuración del diccionario de IVA) +ACCOUNTING_VAT_BUY_ACCOUNT=Cuenta de contabilidad de forma predeterminada para el IVA en compras (se usa si no está definido en la configuración del diccionario de IVA) +ACCOUNTING_VAT_PAY_ACCOUNT=Cuenta contable por defecto para el pago del IVA +ACCOUNTING_ACCOUNT_CUSTOMER=Cuenta de contabilidad utilizada para terceros clientes +ACCOUNTING_ACCOUNT_CUSTOMER_Desc=La cuenta contable dedicada definida en la tarjeta de clientes/proveedores se utilizará solo para la contabilidad de Libro Mayor Auxiliar. Este se usará para el Libro Mayor General y como valor predeterminado de la contabilidad del Libro Mayor Auxiliar si no se define una cuenta de cuenta del cliente dedicada a un clientes/proveedores. +ACCOUNTING_ACCOUNT_SUPPLIER=Cuenta de contabilidad utilizada para clientes/proveedores +ACCOUNTING_ACCOUNT_SUPPLIER_Desc=La cuenta de contabilidad dedicada definida en la tarjeta de un tercero se usará solo para la contabilidad del Libro auxiliar. Este se usará para el Libro mayor y como valor predeterminado de la contabilidad del libro auxiliar si no se define la cuenta de contabilidad del proveedor dedicada en un tercero. +ConfirmCloneTax=Confirmar clonar un impuesto social/fiscal. +CloneTaxForNextMonth=Clonarlo para el próximo mes +SimpleReport=Informe simple +AddExtraReport=Informes adicionales (agregar informe de clientes extranjeros y nacionales) +BasedOnTwoFirstLettersOfVATNumberBeingDifferentFromYourCompanyCountry=Basado en que las dos primeras letras del número de IVA son diferentes del código de país de su propia compañía +BasedOnTwoFirstLettersOfVATNumberBeingTheSameAsYourCompanyCountry=Basado en que las dos primeras letras del número de IVA son iguales que el código de país de su propia compañía +LinkedFichinter=Enlace a una intervención +ImportDataset_tax_contrib=Impuestos sociales y fiscales +ErrorBankAccountNotFound=Error: Cuenta bancaria no encontrada +FiscalPeriod=Período contable +ListSocialContributionAssociatedProject=Lista de contribuciones sociales asociadas al proyecto +AccountingAffectation=Asignación de cuentas contables +LastDayTaxIsRelatedTo=Último día del período el impuesto está relacionado con +VATDue=Impuesto de venta IVA reclamado +ByVatRate=Por tasa de impuesto a la venta IVA +TurnoverbyVatrate=Facturación facturada por tasa de impuesto a la venta IVA +TurnoverCollectedbyVatrate=Facturación recaudada por tasa de impuesto a la venta IVA +PurchasebyVatrate=Compra por tasa de impuestos de venta IVA +PurchaseTurnover=Volumen de compras +PurchaseTurnoverCollected=Volumen de compras recogido +RulesPurchaseTurnoverDue=- Incluye las facturas vencidas del proveedor, ya sean pagadas o no.
    : se basa en la fecha de facturación de estas facturas.
    +RulesPurchaseTurnoverIn=- Incluye todos los pagos efectivos de facturas hechas a proveedores.
    : se basa en la fecha de pago de estas facturas
    +RulesPurchaseTurnoverTotalPurchaseJournal=Incluye todas las líneas de débito del diario de compras. +ReportPurchaseTurnover=Factura de facturación facturada +ReportPurchaseTurnoverCollected=Volumen de compras recogido diff --git a/htdocs/langs/es_EC/contracts.lang b/htdocs/langs/es_EC/contracts.lang new file mode 100644 index 00000000000..2afe55800d2 --- /dev/null +++ b/htdocs/langs/es_EC/contracts.lang @@ -0,0 +1,75 @@ +# Dolibarr language file - Source file is en_US - contracts +ContractsArea=Área de contratos +ListOfContracts=Lista de contratos +ContractCard=Tarjeta de contrato +ContractStatusNotRunning=No Abierto +ServiceStatusInitial=No Abierto +ServiceStatusRunning=Abierto +ServiceStatusNotLate=Abierto, no expirado +ServiceStatusNotLateShort=No ha expirado +ServiceStatusLate=Abierto, caducado +ServiceStatusLateShort=Muerto +ShowContractOfService=Mostrar contrato de servicio +ContractsSubscriptions=Contratos / Suscripciones +ContractsAndLine=Contratos y línea de contratos +Closing=Clausura +MenuInactiveServices=Servicios no activos +MenuRunningServices=Servicios en uso +NewContractSubscription=Nuevo contrato / suscripción +ConfirmDeleteAContract=¿Está seguro de que desea eliminar este contrato y todos sus servicios? +ConfirmValidateContract=¿Está seguro de que desea validar este contrato bajo el nombre %s? +ConfirmActivateAllOnContract=Esto abrirá todos los servicios (aún no activos). ¿Estás seguro de que quieres abrir todos los servicios? +ConfirmCloseContract=Esto cerrará todos los servicios (activos o no). ¿Estás seguro de que quieres cerrar este contrato? +ConfirmCloseService=¿Está seguro de que desea cerrar este servicio con la fecha %s? +ActivateService=Activar servicio +ConfirmActivateService=¿Está seguro de que desea activar este servicio con la fecha %s? +RefContract=Referencia del contrato +DateContract=Fecha del contrato +DateServiceActivate=Fecha de activación del servicio +ListOfServices=Lista de servicios +ListOfInactiveServices=Lista de servicios no activos +ListOfExpiredServices=Lista de servicios activos vencidos +ListOfClosedServices=Lista de servicios cerrados +ListOfRunningServices=Lista de servicios en ejecución +NotActivatedServices=Servicios inactivos (entre contratos validados) +BoardNotActivatedServices=Servicios para activar entre contratos validados +BoardNotActivatedServicesShort=Servicios para activar +ContractStartDate=Fecha de inicio +ContractEndDate=Fecha final +DateStartPlanned=Fecha de inicio prevista +DateStartPlannedShort=Fecha de inicio prevista +DateEndPlanned=Fecha de finalización prevista +DateEndPlannedShort=Fecha de finalización prevista +DateStartReal=Fecha de inicio real +DateStartRealShort=Fecha de inicio real +DateEndReal=Fecha de finalización real +DateEndRealShort=Fecha de finalización real +CloseService=Servicio de cierre +BoardRunningServices=Servicios en ejecución +BoardRunningServicesShort=Servicios en ejecución +BoardExpiredServices=Servicios vencidos +BoardExpiredServicesShort=Servicios vencidos +DraftContracts=Contratos de proyectos +CloseRefusedBecauseOneServiceActive=El contrato no se puede cerrar ya que hay al menos un servicio abierto en él +CloseAllContracts=Cerrar todas las líneas del contrato +DeleteContractLine=Eliminar una línea de contrato +ConfirmDeleteContractLine=¿Está seguro de que desea eliminar esta línea de contrato? +MoveToAnotherContract=Mueva el servicio a otro contrato. +ConfirmMoveToAnotherContract=He elegido un nuevo contrato objetivo y confirmo que quiero trasladar este servicio a este contrato. +ConfirmMoveToAnotherContractQuestion=Elegir en qué contrato existente (del mismo tercero), desea mover este servicio a? +PaymentRenewContractId=Renovar la línea del contrato (número %s) +ExpiredSince=Fecha de caducidad +NoExpiredServices=Sin servicios activos caducados +ListOfServicesToExpireWithDuration=Lista de servicios que vence en %s días +ListOfServicesToExpireWithDurationNeg=Lista de servicios caducados desde más de %s días +ListOfServicesToExpire=Lista de servicios a expirar +NoteListOfYourExpiredServices=Esta lista contiene únicamente servicios de contratos para terceros a los que está vinculado como representante de ventas. +StandardContractsTemplate=Plantilla de contratos estándar +OnlyLinesWithTypeServiceAreUsed=Sólo se clonarán líneas con el tipo "Servicio". +ConfirmCloneContract=¿Seguro que desea clonar el contrato %s? +LowerDateEndPlannedShort=Fecha menor planificada de finalización de los servicios activos. +TypeContact_contrat_internal_SALESREPSIGN=Representante de ventas firma contrato +TypeContact_contrat_internal_SALESREPFOLL=Contrato de seguimiento del representante de ventas +TypeContact_contrat_external_BILLING=Facturación de contacto con el cliente +TypeContact_contrat_external_CUSTOMER=Seguimiento del contacto con el cliente +TypeContact_contrat_external_SALESREPSIGN=Firma contrato contacto con el cliente diff --git a/htdocs/langs/es_EC/cron.lang b/htdocs/langs/es_EC/cron.lang new file mode 100644 index 00000000000..1bcb97a8f7b --- /dev/null +++ b/htdocs/langs/es_EC/cron.lang @@ -0,0 +1,64 @@ +# Dolibarr language file - Source file is en_US - cron +Permission23101 =Leer trabajo programada +Permission23102 =Crear / actualizar trabajo programado +Permission23103 =Eliminar trabajo programado +Permission23104 =Ejecutar trabajo programado +CronSetup=Configuración de administración de trabajos programada +URLToLaunchCronJobs=URL para verificar e iniciar trabajos calificados de cron +OrToLaunchASpecificJob=O para comprobar y lanzar un trabajo específico +KeyForCronAccess=Clave de seguridad para la URL para iniciar trabajos cron +FileToLaunchCronJobs=Línea de comandos para comprobar y poner en marcha trabajos calificados de cron +CronExplainHowToRunUnix=En el entorno Unix, debe utilizar la siguiente entrada crontab para ejecutar la línea de comandos cada 5 minutos +CronExplainHowToRunWin=En el entorno de Microsoft(tm) Windows, puede usar las herramientas de tareas programadas para ejecutar la línea de comandos cada 5 minutos +CronMethodDoesNotExists=La clase%s no contiene ningún método%s +CronJobDefDesc=Los perfiles de trabajo de Cron se definen en el archivo descriptor del módulo. Cuando el módulo está activado, se cargan y están disponibles para que pueda administrar los trabajos desde el menú de herramientas de administración%s. +CronJobProfiles=Lista de perfiles de trabajo cron predefinidos +EnabledAndDisabled=Activado y desactivado +CronLastOutput=Última salida de ejecución +CronLastResult=Último código de resultado +CronCommand=Mando +CronList=Trabajos programados +CronDelete=Eliminar trabajos programados +CronConfirmDelete=¿Está seguro de que desea eliminar estos trabajos programados? +CronExecute=Iniciar el trabajo programado +CronConfirmExecute=¿Está seguro de que desea ejecutar estos trabajos programados ahora? +CronInfo=El módulo de trabajo programado permite programar tareas para ejecutarlas automáticamente. Los trabajos también se pueden iniciar manualmente. +CronTask=Trabajo +CronDtStart=No antes +CronDtNextLaunch=Próxima ejecución +CronDtLastResult=Fecha de finalización de la última ejecución +CronMethod=Método +CronModule=Módulo +CronNoJobs=No hay trabajos registrados +CronNbRun=Numero de lanzamientos +CronMaxRun=Número máximo de lanzamientos +CronEach=Cada +JobFinished=Trabajo puesto en marcha y terminado +CronAdd=Añadir trabajos +CronEvery=Ejecutar trabajo cada +CronObject=Instancia/Objeto para crear +CronArgs=Parámetros +CronSaveSucess=Guardado exitosamente +CronFieldMandatory=Los campos%s son obligatorios +CronErrEndDateStartDt=La fecha de finalización no puede ser anterior a la fecha de inicio +CronStatusActiveBtn=Habilitar +CronStatusInactiveBtn=En rehabilitación +CronTaskInactive=Este trabajo está deshabilitado +CronId=Carné de identidad +CronModuleHelp=Nombre del directorio del módulo Dolibarr (también funciona con un módulo Dolibarr externo).
    Por ejemplo, para llamar al método fetch del objeto del producto Dolibarr /htdocs/product/class/product.class.php, el valor para el módulo es
    product +CronClassFileHelp=La ruta relativa y el nombre del archivo a cargar (la ruta es relativa al directorio raíz del servidor web).
    Por ejemplo, para llamar al método fetch del objeto del producto Dolibarr htdocs/product/class/ product.class.php, el valor para el nombre del archivo de clase es
    product/class/product.class.php +CronObjectHelp=El nombre del objeto a cargar.
    Por ejemplo, para llamar al método fetch del objeto del producto Dolibarr /htdocs/product/class/product.class.php, el valor para el nombre de archivo de clase es
    Product +CronMethodHelp=El método objeto para lanzar.
    Por ejemplo, para llamar al método fetch del objeto del producto Dolibarr /htdocs/product/class/product.class.php, el valor para el método es
    fetch +CronArgsHelp=Los argumentos del método.
    Por ejemplo, para llamar al método fetch del objeto del producto Dolibarr /htdocs/product/class/product.class.php, el valor para los parámetros puede ser
    0, ProductRef +CronCommandHelp=La línea de comandos del sistema a ejecutar. +CronCreateJob=Crear nuevo trabajo programado +CronType=Tipo de empleo +CronType_method=Método de llamada de una clase PHP +CronType_command=Comando shell +CronCannotLoadClass=No se puede cargar el archivo de clase %s (para usar la clase %s) +CronCannotLoadObject=Se cargó el archivo de clase %s, pero no se encontró el objeto %s en él +UseMenuModuleToolsToAddCronJobs=Vaya al menú "Inicio - Herramientas de administración - Trabajos programados" para ver y editar trabajos programados. +JobDisabled=Trabajo desactivado +MakeLocalDatabaseDumpShort=Copia de seguridad local +MakeLocalDatabaseDump=Crear un volcado de base de datos local. Los parámetros son: compresión ('gz' o 'bz' o 'ninguno'), tipo de copia de seguridad ('mysql', 'pgsql', 'auto'), 1, 'auto' o nombre de archivo para compilar, número de archivos de copia de seguridad para mantener +WarningCronDelayed=Atención, para propósitos de rendimiento, sea cual sea la siguiente fecha de ejecución de trabajos habilitados, sus trabajos pueden retrasarse hasta un máximo de%s horas, antes de ejecutarse. diff --git a/htdocs/langs/es_EC/deliveries.lang b/htdocs/langs/es_EC/deliveries.lang new file mode 100644 index 00000000000..4de8529748d --- /dev/null +++ b/htdocs/langs/es_EC/deliveries.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - deliveries +Delivery=Entrega +DeliveryRef=Referencia de Entrega +DeliveryCard=Tarjeta de recibo +DeliveryOrder=Recibo de entrega +CreateDeliveryOrder=Generar recibo de entrega +SetDeliveryDate=Establecer fecha de envío +ValidateDeliveryReceipt=Validar el recibo de entrega +ValidateDeliveryReceiptConfirm=¿Está seguro de que desea validar este recibo de entrega? +DeleteDeliveryReceipt=Eliminar recibo de entrega +DeleteDeliveryReceiptConfirm=¿Está seguro de que desea eliminar el recibo de entrega %s? +DeliveryMethod=Método de entrega +TrackingNumber=Número de rastreo +DeliveryNotValidated=Entrega no validada +StatusDeliveryCanceled=Cancelado +NameAndSignature=Nombre y firma: +ToAndDate=Para___________________________________ en ____ / _____ / __________ +GoodStatusDeclaration=Se recibido los productos arriba descritos en buenas condiciones, +Deliverer=Distribuidor +Sender=Remitente +ShowReceiving=Mostrar recibo de entrega +NonExistentOrder=Orden inexistente diff --git a/htdocs/langs/es_EC/dict.lang b/htdocs/langs/es_EC/dict.lang new file mode 100644 index 00000000000..f17500e0d6a --- /dev/null +++ b/htdocs/langs/es_EC/dict.lang @@ -0,0 +1,82 @@ +# Dolibarr language file - Source file is en_US - dict +CountryBH=Bahrein +CountryBY=Belarús +CountryBM=Islas Bermudas +CountryBA=Bosnia y Herzegovina +CountryCX=Isla de Navidad +CountryCD=Congo, República Democrática del +CountryFO=Islas Faroe +CountryGF=Guayana Francesa +CountryPF=Polinesia francés +CountryTF=Territorios Franceses del Sur +CountryGL=Tierra Verde +CountryGY=Guayana +CountryHM=Heard Island y McDonald +CountryVA=Santa Sede (Estado de la Ciudad del Vaticano) +CountryIR=Corrí +CountryIQ=Irak +CountryJO=Jordán +CountryLY=libio +CountryMK=Macedonia, antigua Yugoslavia de +CountryMX=Méjico +CountryPS=Territorio Palestino, Ocupado +CountryPG=Papúa Nueva Guinea +CountryQA=Katar +CountryZA=Sudáfrica +CountryGS=Georgia del sur y las islas Sandwich del sur +CountrySJ=Svalbard y Jan Mayen +CountrySZ=Swazilandia +CountrySY=Sirio +CountryUM=Islas menores alejadas de los Estados Unidos +CountryVI=Islas Vírgenes, EE.UU. +CountryEH=Sahara Occidental +CountryGG=Guernesey +CountryBL=San Bartolomé +CountryMF=San Martín +CivilityMME=Señora. +CivilityMR=Señor. +CivilityMLE=Sra. +CurrencyAUD=Dólares australianos +CurrencySingAUD=Dólar australiano +CurrencyCAD=Dólares CAN +CurrencySingCAD=Dólar canadiense +CurrencyMUR=Rupias de Mauricio +CurrencySingMUR=Rupia de Mauricio +CurrencyNOK=Krones noruegos +CurrencySingNOK=Corona Noruega +CurrencyUSD=Dólares estadounidenses +CurrencySingUSD=Dólar estadounidense +CurrencyXAF=Franco CFA BEAC +CurrencyXOF=CFA Francos BCEAO +CurrencyCentEUR=centavos +CurrencyCentSingEUR=centavo +CurrencyCentINR=Paisa +CurrencyCentSingINR=Paise +DemandReasonTypeSRC_CAMP_MAIL=Campaña de envío +DemandReasonTypeSRC_CAMP_EMAIL=Campaña de EMailing +DemandReasonTypeSRC_CAMP_FAX=Campaña de fax +DemandReasonTypeSRC_SHOP=Contacto de la tienda +DemandReasonTypeSRC_PARTNER=Compañero +DemandReasonTypeSRC_SPONSORING=Patrocinio +PaperFormatUSLETTER=Formato Carta US +PaperFormatUSLEGAL=Formato Legal US +PaperFormatUSEXECUTIVE=Formato Ejecutivo EE.UU. +PaperFormatUSLEDGER=Formato Ledger / Tabloide +PaperFormatCAP1=Formato P1 Canadá +PaperFormatCAP2=Formato P2 Canadá +PaperFormatCAP3=Formato P3 Canadá +PaperFormatCAP4=Formato P4 Canadá +PaperFormatCAP5=Formato P5 Canadá +PaperFormatCAP6=Formato P6 Canadá +ExpAuto3PCV=3 CV y más +ExpAuto4PCV=4 CV y más +ExpAuto5PCV=5 CV y más +ExpAuto6PCV=6 CV y más +ExpAuto7PCV=7 CV y más +ExpAuto8PCV=8 CV y más +ExpAuto9PCV=9 CV y más +ExpAuto10PCV=10 CV y más +ExpAuto11PCV=11 CV y más +ExpAuto12PCV=12 CV y más +ExpAuto13PCV=13 CV y más +ExpMoto5PCV=Motos 5 CV y más diff --git a/htdocs/langs/es_EC/donations.lang b/htdocs/langs/es_EC/donations.lang new file mode 100644 index 00000000000..4d3a9bf355b --- /dev/null +++ b/htdocs/langs/es_EC/donations.lang @@ -0,0 +1,18 @@ +# Dolibarr language file - Source file is en_US - donations +DonationRef=Donación ref. +ConfirmDeleteADonation=¿Seguro que quieres eliminar esta donación? +DonationStatusPromiseNotValidated=Promesa de proyecto +DonationStatusPaid=Donación recibida +DonationStatusPromiseNotValidatedShort=Borrador +DonationStatusPromiseValidatedShort=Validado +DonationStatusPaidShort=Recibido +DonationsModels=Modelos de documentos para recibos de donaciones +LastModifiedDonations=Últimas donaciones modificadas%s +DonationRecipient=Destinatario de la donación +IConfirmDonationReception=El destinatario declara la recepción, como una donación, de la cantidad siguiente +MinimumAmount=La cantidad mínima es%s +FreeTextOnDonations=Texto libre para mostrar en pie de página +DONATION_ART200=Mostrar el artículo 200 de CGI si está interesado +DONATION_ART238=Mostrar el artículo 238 de CGI si usted está preocupado +DONATION_ART885=Mostrar el artículo 885 de CGI si está interesado +DonationPayment=Pago de donaciones diff --git a/htdocs/langs/es_EC/ecm.lang b/htdocs/langs/es_EC/ecm.lang new file mode 100644 index 00000000000..b63b9896fda --- /dev/null +++ b/htdocs/langs/es_EC/ecm.lang @@ -0,0 +1,34 @@ +# Dolibarr language file - Source file is en_US - ecm +ECMNbOfDocs=Nº de documentos en el directorio. +ECMRoot=Raíz de ECM +ECMCreationDate=Fecha de creación +ECMNbOfFilesInSubDir=Número de archivos en subdirectorios +ECMArea=Área de DMS/ECM +ECMAreaDesc=El área SGD/GCE (Sistema de Gestión de Documentos / Gestión de Contenido Electrónico) le permite guardar, compartir y buscar rápidamente todo tipo de documentos en Dolibarr. +ECMAreaDesc2=* Los directorios automáticos se rellenan automáticamente al agregar documentos desde la tarjeta de un elemento.
    * Los directorios manuales se pueden utilizar para guardar documentos no vinculados a un elemento en particular. +ECMSectionWasRemoved=Se ha eliminado el directorio %s. +ECMSectionWasCreated=Directorio %s ha sido creado. +ECMSearchByKeywords=Búsqueda por palabras clave +ECMSearchByEntity=Búsqueda por objeto +ECMDocsBySocialContributions=Documentos vinculados a impuestos sociales o fiscales +ECMDocsByThirdParties=Documentos vinculados a cliente/proveedor +ECMDocsByProposals=Documentos vinculados a propuestas +ECMDocsByOrders=Documentos vinculados a pedidos de clientes +ECMDocsByContracts=Documentos vinculados a contratos +ECMDocsByInvoices=Documentos vinculados a facturas de clientes +ECMDocsByProducts=Documentos vinculados a los productos +ECMDocsByProjects=Documentos vinculados a proyectos +ECMDocsByUsers=Documentos vinculados a usuarios +ECMDocsByInterventions=Documentos relacionados con las intervenciones +ECMDocsByExpenseReports=Documentos vinculados a los informes de gastos +ECMDocsByHolidays=Documentos vinculados a vacaciones +ECMDocsBySupplierProposals=Documentos vinculados a propuestas de proveedores +ECMNoDirectoryYet=Ningún directorio creado +DeleteSection=Eliminar directorio +ConfirmDeleteSection=¿Puede confirmar que desea eliminar el directorio %s? +ECMDirectoryForFiles=Directorio relativo de archivos +CannotRemoveDirectoryContainsFilesOrDirs=La eliminación no es posible porque contiene algunos archivos o subdirectorios +CannotRemoveDirectoryContainsFiles=La eliminación no es posible porque contiene algunos archivos +ECMFileManager=Administrador de archivos +ECMSelectASection=Seleccione un directorio en el árbol ... +DirNotSynchronizedSyncFirst=Este directorio parece ser creado o modificado fuera del módulo ECM. Primero debe hacer clic en el botón "Resincronizar" para sincronizar el disco y la base de datos para obtener el contenido de este directorio. diff --git a/htdocs/langs/es_EC/errors.lang b/htdocs/langs/es_EC/errors.lang new file mode 100644 index 00000000000..a76ded9bf88 --- /dev/null +++ b/htdocs/langs/es_EC/errors.lang @@ -0,0 +1,225 @@ +# Dolibarr language file - Source file is en_US - errors +NoErrorCommitIsDone=No hay error, nos comprometemos +ErrorButCommitIsDone=Errores encontrados pero validamos a pesar de esto +ErrorBadEMail=El correo electrónico %s está mal +ErrorBadUrl=La URL%s está incorrecta +ErrorBadValueForParamNotAString=Valor incorrecto para su parámetro. Se anexa generalmente cuando falta la traducción. +ErrorLoginAlreadyExists=La conexión%s ya existe. +ErrorGroupAlreadyExists=El grupo%s ya existe. +ErrorRecordNotFound=Registro no encontrado. +ErrorFailToCopyDir=Error al copiar el directorio '%s' en '%s'. +ErrorFailToRenameFile=Error al cambiar el nombre del archivo '%s' en '%s'. +ErrorFailToCreateFile=Error al crear el archivo '%s'. +ErrorFailToRenameDir=Error al cambiar el nombre del directorio '%s' en '%s'. +ErrorFailToCreateDir=Error al crear el directorio '%s'. +ErrorFailToGenerateFile=No se pudo generar el archivo '%s'. +ErrorCashAccountAcceptsOnlyCashMoney=Esta cuenta bancaria es una cuenta de efectivo, por lo que acepta pagos de tipo efectivo solamente. +ErrorFromToAccountsMustDiffers=Las cuentas bancarias de origen y destino deben ser diferentes. +ErrorBadThirdPartyName=Valor erroneo para el nombre de un cliente/proveedor +ErrorProdIdIsMandatory=El%s es obligatorio +ErrorBadCustomerCodeSyntax=Mala sintaxis para el código del cliente +ErrorBadBarCodeSyntax=Mala sintaxis para el código de barras. Puede establecer un tipo de código de barras incorrecto o definir una máscara de código de barras para la numeración que no coincide con el valor escaneado. +ErrorCustomerCodeRequired=Se requiere código de cliente +ErrorBarCodeAlreadyUsed=Código de barras ya utilizado +ErrorPrefixRequired=Prefijo requerido +ErrorBadSupplierCodeSyntax=Mala sintaxis para el código de proveedor +ErrorSupplierCodeRequired=Se requiere código de proveedor +ErrorBadValueForParameter=Valor erróneo '%s' para el parámetro '%s' +ErrorBadImageFormat=El archivo de imagen no tiene un formato compatible (Su PHP no admite funciones para convertir imágenes de este formato) +ErrorBadDateFormat=El valor '%s' tiene un formato de fecha incorrecto +ErrorFailedToWriteInDir=Error al escribir en el directorio%s +ErrorFoundBadEmailInFile=Se encontró una sintaxis de correo electrónico incorrecta para%s líneas en el archivo (ejemplo línea%s con correo electrónico +ErrorUserCannotBeDelete=El usuario no puede ser eliminado. Tal vez esté asociado a entidades dolibarr. +ErrorFieldsRequired=Algunos campos requeridos no fueron llenados. +ErrorSubjectIsRequired=El tema del correo electrónico es obligatorio +ErrorFailedToCreateDir=Error al crear un directorio. Compruebe que el usuario del servidor Web tiene permisos para escribir en el directorio de documentos de Dolibarr. Si el parámetro safe_mode está habilitado en este PHP, compruebe que los archivos php de Dolibarr pertenecen al usuario del servidor web (o grupo). +ErrorNoMailDefinedForThisUser=No hay correo definido para este usuario +ErrorFeatureNeedJavascript=Esta característica necesita javascript para ser activado para trabajar. Cambie esto en la pantalla de configuración. +ErrorTopMenuMustHaveAParentWithId0=Un menú del tipo 'Top' no puede tener un menú padre. Ponga 0 en el menú padre o elija un menú de tipo 'Izquierda'. +ErrorLeftMenuMustHaveAParentId=Un menú de tipo 'Izquierda' debe tener un ID padre. +ErrorFileNotFound=Archivo %s no encontrado (Camino incorrecto, permisos incorrectos o acceso denegado por PHP openbasedir o parámetro safe_mode) +ErrorDirNotFound=Directorio %s no encontrado (Camino incorrecto, permisos incorrectos o acceso denegado por PHP openbasedir o parámetro safe_mode) +ErrorFunctionNotAvailableInPHP=La función %s es necesaria para esta función, pero no está disponible en esta versión / configuración de PHP. +ErrorDirAlreadyExists=Ya existe un directorio con este nombre. +ErrorPartialFile=Archivo no recibido completamente por el servidor. +ErrorNoTmpDir=La dirección temporal%s no existe. +ErrorUploadBlockedByAddon=Carga bloqueada por un complemento PHP/Apache. +ErrorFileSizeTooLarge=El tamaño del archivo es demasiado grande. +ErrorFieldTooLong=El campo %s es demasiado largo. +ErrorSizeTooLongForIntType=Tamaño demasiado largo para el tipo int (dígitos%s máximo) +ErrorSizeTooLongForVarcharType=Tamaño demasiado largo para el tipo de cadena (%s caracteres máximo) +ErrorNoValueForSelectType=Por favor, rellene el valor de la lista de selección +ErrorNoValueForCheckBoxType=Por favor, rellene el valor de la casilla de verificación +ErrorNoValueForRadioType=Por favor, rellene el valor de la lista de radio +ErrorBadFormatValueList=El valor de la lista no puede tener más de una coma: %s , pero necesita al menos una: key, value +ErrorFieldCanNotContainSpecialCharacters=El campo %s no debe contener caracteres especiales. +ErrorFieldCanNotContainSpecialNorUpperCharacters=El campo %s no debe contener caracteres especiales, ni mayúsculas, y no puede contener solo números. +ErrorFieldMustHaveXChar=El campo %s debe tener al menos %s caracteres. +ErrorNoAccountancyModuleLoaded=No se ha activado ningún módulo de contabilidad +ErrorExportDuplicateProfil=Este nombre de perfil ya existe para este conjunto de exportación. +ErrorLDAPSetupNotComplete=Dolibarr-LDAP no está completo. +ErrorLDAPMakeManualTest=Se ha generado un archivo .ldif en el directorio%s. Trate de cargarlo manualmente desde la línea de comandos para obtener más información sobre los errores. +ErrorCantSaveADoneUserWithZeroPercentage=No se puede guardar una acción con "estado no iniciado" si el campo "hecho por" también se llena. +ErrorRefAlreadyExists=La referencia usada para la creación ya existe. +ErrorPleaseTypeBankTransactionReportName=Ingrese el nombre del extracto bancario donde se debe informar la entrada (Formato AAAAMM o AAAAMMDD) +ErrorRecordHasChildren=Error al eliminar el registro ya que tiene algunos registros secundarios. +ErrorRecordHasAtLeastOneChildOfType=El objeto tiene al menos un hijo del tipo%s +ErrorRecordIsUsedCantDelete=No se puede borrar el registro. Ya está usado o incluido en otro objeto. +ErrorModuleRequireJavascript=Javascript no debe desactivarse para que esta función funcione. Para activar / desactivar JavaScript, vaya al menú Inicio-> Configuración-> Mostrar. +ErrorPasswordsMustMatch=Las contraseñas escritas deben coincidir entre sí +ErrorContactEMail=Se produjo un error técnico. Comuníquese con el administrador para seguir el correo electrónico %s y proporcionar el código de error %s en su mensaje, o agregue una copia de pantalla de esta página. +ErrorWrongValueForField=El campo %s: '%s' no coincide con la expresión regular regla %s +ErrorFieldValueNotIn=El campo %s: '%s' no es un valor que se encuentra en el campo %s de %s +ErrorFieldRefNotIn=Campo %s: '%s' no es una %s referencia existente +ErrorFileIsInfectedWithAVirus=El programa antivirus no pudo validar el archivo (el archivo podría estar infectado por un virus) +ErrorSpecialCharNotAllowedForField=No se permiten caracteres especiales para el campo "%s" +ErrorNumRefModel=Existe una referencia en la base de datos (%s) y no es compatible con esta regla de numeración. Elimine la referencia de registro o renombrado para activar este módulo. +ErrorQtyTooLowForThisSupplier=Cantidad demasiado baja para este proveedor o ningún precio definido en este producto para este proveedor +ErrorOrdersNotCreatedQtyTooLow=Algunos pedidos no se han creado debido a cantidades demasiado bajas +ErrorModuleSetupNotComplete=La configuración del módulo %s parece estar incompleta. Vaya a Inicio - Configuración - Módulos para completar. +ErrorBadMaskFailedToLocatePosOfSequence=Error, máscara sin número de secuencia +ErrorBadMaskBadRazMonth=Error, valor de reinicio incorrecto +ErrorCounterMustHaveMoreThan3Digits=El contador debe tener más de 3 dígitos +ErrorSelectAtLeastOne=Error, seleccione al menos una entrada. +ErrorDeleteNotPossibleLineIsConsolidated=No es posible eliminar porque el registro está vinculado a una transacción bancaria que está conciliada +ErrorProdIdAlreadyExist=%s se asigna a otro tercio +ErrorFailedToSendPassword=Error al enviar la contraseña +ErrorFailedToLoadRSSFile=No puede obtener el feed RSS. Intente agregar constante MAIN_SIMPLEXMLLOAD_DEBUG si los mensajes de error no proporcionan suficiente información. +ErrorForbidden=Acceso denegado.
    Intenta acceder a una página, área o función de un módulo deshabilitado o sin estar en una sesión autenticada o que no está permitido a tu usuario. +ErrorForbidden2=El administrador de Dolibarr puede definir el permiso para este inicio de sesión desde el menú%s ->%s. +ErrorForbidden3=Parece que Dolibarr no se utiliza a través de una sesión autenticada. Echa un vistazo a la documentación de configuración de Dolibarr para saber cómo administrar las autenticaciones (htaccess, mod_auth u otros ...). +ErrorNoImagickReadimage=La clase Imagick no se encuentra en este PHP. No hay vista previa disponible. Los administradores pueden deshabilitar esta pestaña desde el menú Configuración - Mostrar. +ErrorRecordAlreadyExists=El registro ya existe +ErrorLabelAlreadyExists=Esta etiqueta ya existe. +ErrorCantReadFile=Error al leer el archivo '%s' +ErrorCantReadDir=Error al leer el directorio '%s' +ErrorBadLoginPassword=Valor incorrecto para el inicio de sesión o la contraseña +ErrorLoginDisabled=Su cuenta ha sido deshabilitada +ErrorFailedToRunExternalCommand=Error al ejecutar el comando externo. Compruebe que está disponible y ejecutado por su servidor PHP. Si está habilitado PHP Modo a prueba de errores , compruebe que el comando esté dentro de un directorio definido por el parámetro safe_mode_exec_dir . +ErrorFailedToChangePassword=Error al cambiar la contraseña +ErrorLoginDoesNotExists=El usuario con acceso %s no se pudo encontrar. +ErrorLoginHasNoEmail=Este usuario no tiene dirección de correo electrónico. Proceso abortado. +ErrorBadValueForCode=Valor incorrecto para el código de seguridad. Pruebe de nuevo con nuevo valor ... +ErrorBothFieldCantBeNegative=Los campos%s y%s no pueden ser negativos +ErrorFieldCantBeNegativeOnInvoice=El campo %s no puede ser negativo en este tipo de factura. Si necesita agregar una línea de descuento, simplemente cree el descuento primero (del campo '%s' en la tarjeta de cliente/proveedor) y aplíquelo a la factura. +ErrorLinesCantBeNegativeForOneVATRate=El total de líneas no puede ser negativo para una tasa de IVA dada. +ErrorQtyForCustomerInvoiceCantBeNegative=Cantidad de línea en las facturas de los clientes no puede ser negativa +ErrorWebServerUserHasNotPermission=La cuenta de usuario %s utilizada para ejecutar el servidor web no tiene permiso para ello +ErrorNoActivatedBarcode=No se ha activado ningún tipo de código de barras +ErrUnzipFails=Error al descomprimir%s con ZipArchive +ErrNoZipEngine=No hay motor para zip / descomprimir%s archivo en este PHP +ErrorFileMustBeADolibarrPackage=El archivo%s debe ser un paquete Dolibarr zip +ErrorModuleFileRequired=Debe seleccionar un archivo de paquete de módulo Dolibarr +ErrorPhpCurlNotInstalled=PHP CURL no está instalado, esto es esencial para hablar con Paypal +ErrorFailedToAddToMailmanList=Error al agregar el registro%s a la lista de Mailman%s o la base SPIP +ErrorFailedToRemoveToMailmanList=No se pudo eliminar el registro%s en la lista de Mailman%s o en la base SPIP +ErrorNewValueCantMatchOldValue=El nuevo valor no puede ser igual al anterior +ErrorFailedToValidatePasswordReset=Error al reiniciar la contraseña. Puede ser el reinit ya estaba hecho (este enlace puede ser utilizado sólo una vez). Si no es así, intente reiniciar el proceso reinit. +ErrorToConnectToMysqlCheckInstance=La conexión a la base de datos fallo. Compruebe el servidor de base de datos si está en ejecución (por ejemplo, con MySQL/MariaDB, se puede iniciar desde la línea de comandos con 'sudo service mysql start'). +ErrorFailedToAddContact=No se pudo agregar el contacto +ErrorDateMustBeBeforeToday=La fecha no puede ser mayor que hoy +ErrorPaymentModeDefinedToWithoutSetup=Se estableció un modo de pago para escribir%s, pero la configuración del módulo Factura no se completó para definir la información que se mostrará para este modo de pago. +ErrorPHPNeedModule=Error, tu PHP debe tener el módulo %s instalado para usar esta función. +ErrorOpenIDSetupNotComplete=Configure el archivo de configuración Dolibarr para permitir la autenticación OpenID, pero la URL del servicio OpenID no está definida en%s constante +ErrorWarehouseMustDiffers=Los almacenes de origen y destino deben diferir +ErrorBadFormat=Mal formato +ErrorMemberNotLinkedToAThirpartyLinkOrCreateFirst=Error, este miembro aún no está vinculado a ningún tercero. Vincule un miembro a un tercero existente o cree un nuevo tercero antes de crear la suscripción con factura. +ErrorThereIsSomeDeliveries=Error, hay algunas entregas vinculadas a este envío. Se ha rechazado la eliminación. +ErrorCantDeletePaymentReconciliated=No se puede eliminar un pago que generó una entrada bancaria que se reconcilió +ErrorCantDeletePaymentSharedWithPayedInvoice=No se puede eliminar un pago compartido por al menos una factura con estado Pagado +ErrorPriceExpression3=Variable no definida '%s' en la definición de la función +ErrorPriceExpression4=Caracteres ilegales' +ErrorPriceExpression5=Inesperado '%s' +ErrorPriceExpression6=Número incorrecto de argumentos (%s dado,%s esperado) +ErrorPriceExpression8=Operador inesperado '%s' +ErrorPriceExpression9=Se ha producido un error inesperado +ErrorPriceExpression11=Esperando '%s' +ErrorPriceExpression17=Variable no definida '%s' +ErrorPriceExpression21=Resultado vacío '%s' +ErrorPriceExpression22=Resultado negativo '%s' +ErrorPriceExpression23=Variable desconocida o no establecida '%s' en%s +ErrorSrcAndTargetWarehouseMustDiffers=Los almacenes de origen y destino deben diferir +ErrorTryToMakeMoveOnProductRequiringBatchData=Error, tratando de hacer un movimiento de stock sin lote/serie, en el producto '%s' que requiere información de lotes/serie +ErrorCantSetReceptionToTotalDoneWithReceptionToApprove=Todas las recepciones grabadas deben primero ser verificadas (aprobadas o denegadas) antes de que se les permita hacer esta acción +ErrorCantSetReceptionToTotalDoneWithReceptionDenied=Todas las recepciones grabadas deben primero ser verificadas (aprobadas) antes de que se les permita hacer esta acción +ErrorGlobalVariableUpdater0=Error de la solicitud HTTP con error '%s' +ErrorGlobalVariableUpdater1=El formato JSON no válido '%s' +ErrorGlobalVariableUpdater2=Parámetro faltante '%s' +ErrorGlobalVariableUpdater3=Los datos solicitados no se encontraron en el resultado +ErrorGlobalVariableUpdater4=El cliente SOAP falló con error '%s' +ErrorGlobalVariableUpdater5=Ninguna variable global seleccionada +ErrorFieldMustBeANumeric=El campo %s debe ser un valor numérico +ErrorMandatoryParametersNotProvided=Parámetros obligatorios no proporcionados +ErrorOppStatusRequiredIfAmount=Establece una cantidad estimada para este cliente potencial. Por lo tanto, también debe ingresar su estado. +ErrorFailedToLoadModuleDescriptorForXXX=Error al cargar la clase del descriptor del módulo para%s +ErrorBadDefinitionOfMenuArrayInModuleDescriptor=Mala definición de la matriz de menús en el descriptor del módulo (valor incorrecto para la tecla fk_menu) +ErrorSavingChanges=Se ha producido un error al guardar los cambios. +ErrorWarehouseRequiredIntoShipmentLine=El almacén se requiere en la línea para enviar +ErrorFileMustHaveFormat=El archivo debe tener el formato%s +ErrorSupplierCountryIsNotDefined=El país para este vendedor no está definido. Corrija esto primero. +ErrorsThirdpartyMerge=Error al fusionar los dos registros. Solicitud cancelada. +ErrorStockIsNotEnoughToAddProductOnOrder=El inventario no es suficiente para que el producto%s lo agregue a un nuevo pedido. +ErrorStockIsNotEnoughToAddProductOnInvoice=El inventario no es suficiente para que el producto%s lo agregue a una nueva factura. +ErrorStockIsNotEnoughToAddProductOnShipment=El inventario no es suficiente para que el producto%s lo agregue a un nuevo envío. +ErrorStockIsNotEnoughToAddProductOnProposal=El inventario no es suficiente para que el producto%s lo agregue a una nueva propuesta. +ErrorFailedToLoadLoginFileForMode=Error al obtener la clave de inicio de sesión para el modo '%s'. +ErrorModuleNotFound=No se encontró el archivo del módulo. +ErrorFieldAccountNotDefinedForBankLine=Valor de la cuenta de Contabilidad no definido para la ID de la línea de origen%s (%s) +ErrorFieldAccountNotDefinedForInvoiceLine=Valor de la cuenta de Contabilidad no definido para el ID de factura%s (%s) +ErrorFieldAccountNotDefinedForLine=Valor para la cuenta de Contabilidad no definido para la línea (%s) +ErrorBankStatementNameMustFollowRegex=Error, el nombre de la cuenta bancaria debe seguir la siguiente regla de sintaxis%s +ErrorPhpMailDelivery=Compruebe que no utilice un número demasiado alto de destinatarios y que su contenido de correo electrónico no sea similar a un Spam. Pida también a su administrador que verifique los archivos de los cortafuegos y de los registros del servidor para obtener una información más completa. +ErrorUserNotAssignedToTask=El usuario debe ser asignado a la tarea para poder ingresar tiempo consumido. +ErrorModuleFileSeemsToHaveAWrongFormat=El paquete del módulo parece tener un formato incorrecto. +ErrorFilenameDosNotMatchDolibarrPackageRules=El nombre del paquete de módulos (%s ) no coincide con la sintaxis de nombre esperada: %s +ErrorDuplicateTrigger=Error, nombre del disparador duplicado%s. Ya está cargado desde%s. +ErrorNoWarehouseDefined=Error, no se han definido almacenes. +ErrorBadLinkSourceSetButBadValueForRef=El enlace que utiliza no es válido. Se define una 'fuente' de pago, pero el valor de 'ref' no es válido. +ErrorTooManyErrorsProcessStopped=Demasiados errores. Se detuvo el proceso. +ErrorMassValidationNotAllowedWhenStockIncreaseOnAction=La validación de masas no es posible cuando la opción de aumentar / disminuir stock se establece en esta acción (debe validar uno por uno para que pueda definir el almacén para aumentar / disminuir) +ErrorObjectMustHaveStatusDraftToBeValidated=El objeto%s debe tener el estado 'Borrador' para ser validado. +ErrorObjectMustHaveLinesToBeValidated=El objeto%s debe tener líneas a validar. +ErrorOnlyInvoiceValidatedCanBeSentInMassAction=Sólo se pueden enviar facturas validadas mediante la acción masiva "Enviar por correo electrónico". +ErrorDiscountLargerThanRemainToPaySplitItBefore=El descuento que usted intenta aplicar es más grande que permanecer para pagar. Divida el descuento en 2 descuentos más pequeños antes. +ErrorFileNotFoundWithSharedLink=Archivo no fue encontrado. Puede ser que la clave compartida se haya modificado o que el archivo se haya eliminado recientemente. +ErrorNoteAlsoThatSubProductCantBeFollowedByLot=Tenga en cuenta que no es posible utilizar productos virtuales para aumentar/disminuir automáticamente subproductos cuando al menos un subproducto (o subproducto de subproductos) necesita un número de serie/lote. +ErrorDescRequiredForFreeProductLines=La descripción es obligatoria para campos con producto gratis +ErrorDuringChartLoad=Error al cargar el plan de cuentas. Si no se cargaron algunas cuentas, aún puede ingresarlas manualmente. +ErrorBadSyntaxForParamKeyForContent=Mala sintaxis para param keyforcontent. Debe tener un valor que comience con %s o %s +ErrorVariableKeyForContentMustBeSet=Error, se debe establecer la constante con el nombre %s (con contenido de texto para mostrar) o %s (con url externa para mostrar). +ErrorURLMustStartWithHttp=La URL %s debe comenzar con http: // o https: // +ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, no es posible eliminar el pago vinculado a una factura cerrada. +ErrorObjectMustHaveStatusActiveToBeDisabled=Los objetos deben tener el estado 'Activo' para estar deshabilitado +ErrorObjectMustHaveStatusDraftOrDisabledToBeActivated=Los objetos deben tener el estado 'Borrador' o 'Deshabilitado' para estar habilitado +ErrorNoFieldWithAttributeShowoncombobox=Ningún campo tiene la propiedad 'showoncombobox' en la definición del objeto '%s'. No hay forma de mostrar la combolista. +ProblemIsInSetupOfTerminal=El problema está en la configuración del terminal %s. +ErrorAddAtLeastOneLineFirst=Agregue al menos una línea primero +ErrorLanguageMandatoryIfPageSetAsTranslationOfAnother=Error, el idioma es obligatorio si configura la página como una traducción de otra. +ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, el idioma de la página traducida es el mismo que este. +ErrorBatchNoFoundForProductInWarehouse=No se encontró lote / serie para el producto "%s" en el almacén "%s". +ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No hay suficiente cantidad para este lote / serie para el producto "%s" en el almacén "%s". +ErrorOnlyOneFieldForGroupByIsPossible=Solo es posible 1 campo para 'Agrupar por' (otros se descartan) +ErrorTooManyDifferentValueForSelectedGroupBy=Se encontraron demasiados valores diferentes (más de %s) para el campo '%s', por lo que no podemos usarlo para los gráficos. El campo 'Agrupar por' ha sido eliminado. ¿Puede ser que quieras usarlo como un eje X? +ErrorReplaceStringEmpty=Error, la cadena para reemplazar está vacía +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Su parámetro PHP upload_max_filesize (%s) es más alto que el parámetro PHP post_max_size (%s). Esta no es una configuración consistente. +WarningPasswordSetWithNoAccount=Se ha establecido una contraseña para este miembro. Sin embargo, no se creó ninguna cuenta de usuario. Por lo tanto, esta contraseña está almacenada pero no puede utilizarse para iniciar sesión en Dolibarr. Puede ser utilizado por un módulo / interfaz externo, pero si no necesita definir ningún inicio de sesión ni contraseña para un miembro, puede desactivar la opción "Administrar un inicio de sesión para cada miembro" desde la instalación del módulo miembro. Si necesita administrar un inicio de sesión pero no necesita ninguna contraseña, puede mantener este campo vacío para evitar esta advertencia. Nota: El correo electrónico también se puede utilizar como inicio de sesión si el miembro está vinculado a un usuario. +WarningMandatorySetupNotComplete=Haga clic aquí para configurar los parámetros obligatorios. +WarningEnableYourModulesApplications=Haga clic aquí para habilitar sus módulos y aplicaciones. +WarningSafeModeOnCheckExecDir=Advertencia, la opción PHP safe_mode está activada para que el comando se almacene dentro de un directorio declarado por el parámetro php safe_mode_exec_dir . +WarningBookmarkAlreadyExists=Ya existe un marcador con este título o este destino (URL). +WarningPassIsEmpty=Advertencia, la contraseña de la base de datos está vacía. Este es un agujero de seguridad. Debe agregar una contraseña a su base de datos y cambiar su archivo conf.php para reflejar esto. +WarningConfFileMustBeReadOnly=Advertencia, el archivo de configuración ( htdocs / conf / conf.php ) puede ser sobrescrito por el servidor web. Este es un grave agujero de seguridad. Modifique los permisos en el archivo para que estén en modo de sólo lectura para el usuario del sistema operativo utilizado por el servidor Web. Si utiliza el formato Windows y FAT para su disco, debe saber que este sistema de archivos no permite agregar permisos en el archivo, por lo que no puede ser completamente seguro. +WarningsOnXLines=Advertencias en %s registro (s) de origen +WarningNoDocumentModelActivated=No se ha activado ningún modelo para la generación de documentos. Se elegirá un modelo por defecto hasta que verifique la configuración de su módulo. +WarningLockFileDoesNotExists=Advertencia, una vez finalizada la configuración, debe deshabilitar las herramientas de instalación / migración agregando un archivo install.lock en el directorio %s. Omitir la creación de este archivo es un grave riesgo de seguridad. +WarningUntilDirRemoved=Todas las advertencias de seguridad (visibles solo para usuarios de administración) permanecerán activas mientras la vulnerabilidad esté presente (o se agregue la constante MAIN_REMOVE_INSTALL_WARNING en Configuración-> Otra configuración). +WarningCloseAlways=Advertencia, el cierre se realiza incluso si la cantidad difiere entre los elementos de origen y destino. Active esta función con precaución. +WarningUsingThisBoxSlowDown=Advertencia, usar esta casilla ralentizar seriamente todas las páginas que muestran la caja. +WarningClickToDialUserSetupNotComplete=La configuración de la información de ClickToDial para su usuario no está completa (vea la pestaña ClickToDial en su tarjeta de usuario). +WarningFeatureDisabledWithDisplayOptimizedForBlindNoJs=Función desactivada cuando la configuración de la pantalla está optimizada para navegadores de persona o de texto. +WarningPaymentDateLowerThanInvoiceDate=La fecha de pago (%s) es anterior a la fecha de factura (%s) para la factura%s. +WarningTooManyDataPleaseUseMoreFilters=Demasiados datos (más de%s líneas). Utilice más filtros o establezca el%s constante en un límite superior. +WarningSomeLinesWithNullHourlyRate=Algunas veces fueron grabadas por algunos usuarios mientras que su tasa horaria no fue definida. Se usó un valor de 0%s por hora, pero esto puede dar lugar a una valoración errónea del tiempo empleado. +WarningYourLoginWasModifiedPleaseLogin=Se ha modificado tu nombre de usuario. Por razones de seguridad, tendrá que iniciar sesión con su nuevo inicio de sesión antes de la siguiente acción. +WarningNumberOfRecipientIsRestrictedInMassAction=Advertencia, el número de destinatarios diferentes se limita a %s cuando se utilizan las acciones en masa en las listas\n +WarningSomeBankTransactionByChequeWereRemovedAfter=Algunas transacciones bancarias se eliminaron después de que se generó el recibo, incluidos ellos. Por lo tanto, el número de cheques y el total del recibo pueden diferir del número y el total en la lista. diff --git a/htdocs/langs/es_EC/exports.lang b/htdocs/langs/es_EC/exports.lang new file mode 100644 index 00000000000..b1f9927f4d1 --- /dev/null +++ b/htdocs/langs/es_EC/exports.lang @@ -0,0 +1,109 @@ +# Dolibarr language file - Source file is en_US - exports +SelectExportDataSet=Elija el dataset que desea exportar... +SelectImportDataSet=Elija el dataset que desea importar... +SelectExportFields=Elija los campos que desea exportar o seleccione un perfil de exportación predefinido +SelectImportFields=Elija los campos de archivo de origen que desea importar y su campo de destino en la base de datos moviéndolos hacia arriba y hacia abajo con el ancla %s, o seleccione un perfil de importación predefinido: +NotImportedFields=Campos del archivo de origen no importados +SaveExportModel=Guarde sus selecciones como un perfil / plantilla de exportación (para reutilizarlo). +SaveImportModel=Guardar este perfil de importación (para reutilizarlo) ... +ExportModelName=Exportar nombre del perfil +ExportModelSaved=Exportar perfil guardado como %s. +ExportedFields=Campos exportados +ImportModelName=Importar nombre de perfil +ImportModelSaved=Importar perfil guardado como %s. +DatasetToExport=Juego de datos para exportar +DatasetToImport=Importar archivo en conjunto de datos +ChooseFieldsOrdersAndTitle=Seleccione el orden de los campos... +FieldsTitle=Título de los campos +FieldTitle=Título del campo +NowClickToGenerateToBuildExportFile=Ahora, seleccione el formato de archivo en el cuadro combinado y haga clic en "Generar" para compilar el archivo de exportación ... +LibraryShort=Biblioteca +FormatedImport=Asistente de Importación +FormatedImportDesc1=Este módulo le permite actualizar los datos existentes o agregar nuevos objetos a la base de datos desde un archivo sin conocimientos técnicos, usando un asistente. +FormatedImportDesc2=El primer paso es elegir el tipo de datos que desea importar, luego el formato del archivo fuente y luego los campos que desea importar. +FormatedExportDesc1=Estas herramientas permiten la exportación de datos personalizados con un asistente, para ayudarlo en el proceso sin necesidad de conocimientos técnicos. +FormatedExportDesc2=El primer paso es elegir un conjunto de datos predefinido, luego los campos que desea exportar y en qué orden. +FormatedExportDesc3=Cuando se seleccionan los datos para exportar, puede elegir el formato del archivo de salida. +NoImportableData=Ningún dato importable (sin módulo con definiciones para permitir importaciones de datos) +SQLUsedForExport=Solicitud SQL utilizada para extraer datos +LineDescription=Descripción de la línea +LineVATRate=Tasa de IVA de la línea +LineQty=Cantidad por línea +LineTotalHT=Cantidad excl. impuesto por línea +LineTotalTTC=Importe con impuesto para la línea +LineTotalVAT=Importe del IVA para la línea +TypeOfLineServiceOrProduct=Tipo de línea (0 = producto, 1 = servicio) +FileWithDataToImport=Archivo con datos para importar +FileToImport=Archivo de origen para importar +FileMustHaveOneOfFollowingFormat=El archivo a importar debe tener uno de los siguientes formatos. +DownloadEmptyExample=Descargar archivo de plantilla con información de contenido de campo (* son campos obligatorios) +ChooseFormatOfFileToImport=Elija el formato de archivo para usar como formato de archivo de importación haciendo clic en el icono %s para seleccionarlo ... +SourceFileFormat=Formato del archivo fuente +FieldsInSourceFile=Campos del archivo de origen +FieldsInTargetDatabase=Campos de destino en la base de datos Dolibarr (negrita +NoFields=Sin campos +MoveField=Mover número de columna de campo%s +ExampleOfImportFile=Ejemplo_de_archivo_import +ErrorImportDuplicateProfil=Error al guardar este perfil de importación con este nombre. Ya existe un perfil existente con este nombre. +TablesTarget=Tablas específicas +FieldsTarget=Campos específicos +FieldTarget=Campo de orientación +FieldSource=Campo de origen +NbOfSourceLines=Número de líneas en el archivo de origen +NowClickToTestTheImport=Verifique que el formato del archivo (delimitadores de campo y cadena) de su archivo coincida con las opciones que se muestran y que ha omitido la línea de encabezado, o se marcarán como errores en la siguiente simulación.
    Haga clic en el botón "%s" para ejecutar una verificación de la estructura / contenido del archivo y simular el proceso de importación.
    No se modificarán datos en su base de datos . +RunSimulateImportFile=Ejecutar simulación de importación +FieldNeedSource=Este campo requiere datos del archivo de origen +SomeMandatoryFieldHaveNoSource=Algunos campos obligatorios no tienen fuente de archivo de datos +InformationOnSourceFile=Información sobre el archivo fuente +InformationOnTargetTables=Información sobre los campos objetivo +SelectAtLeastOneField=Cambiar al menos un campo de origen en la columna de campos para exportar +SelectFormat=Elija este formato de archivo de importación +RunImportFile=Datos de importacion +NowClickToRunTheImport=166/5000\nCompruebe los resultados de la simulación de importación. Corrija cualquier error y vuelva a realizar la prueba.
    Cuando la simulación no informe errores, puede proceder a importar los datos a la base de datos. +DataLoadedWithId=Los datos importados tendrán un campo adicional en cada tabla de base de datos con este ID de importación: %s , para permitir que se pueda buscar en el caso de investigar un problema relacionado con esta importación. +ErrorMissingMandatoryValue=Los datos obligatorios están vacíos en el archivo fuente para el campo %s. +TooMuchErrors=Todavía hay %s otras líneas fuente con errores, pero la salida ha sido limitada. +TooMuchWarnings=Todavía hay %s otras líneas fuente con advertencias pero la salida ha sido limitada. +EmptyLine=Línea vacía (se descartará) +CorrectErrorBeforeRunningImport=Debe corregir todos los errores antes de ejecutar la importación definitiva. +FileWasImported=Se importó el archivo con el número %s. +YouCanUseImportIdToFindRecord=Puede encontrar todos los registros importados en su base de datos al filtrar en el campo import_key ='%s'. +NbOfLinesOK=Número de líneas sin errores y sin advertencias: %s. +NbOfLinesImported=Número de líneas importadas correctamente: %s. +DataComeFromNoWhere=El valor de insertar viene de ninguna parte en el archivo de origen. +DataComeFromFileFieldNb=El valor del inserto viene del número de campo %s en el archivo de origen. +DataComeFromIdFoundFromRef=El valor que proviene del número %s de campo del archivo de origen se utilizará para encontrar el ID del objeto principal que se usará (por lo que el objeto %s que tiene la referencia del archivo de origen debe existir en la base de datos). +DataComeFromIdFoundFromCodeId=El código que proviene del número %s de campo del archivo de origen se usará para encontrar la identificación del objeto principal que se usará (por lo que el código del archivo de origen debe existir en el diccionario %s). Tenga en cuenta que si conoce el ID, también puede usarlo en el archivo de origen en lugar del código. La importación debería funcionar en ambos casos. +DataIsInsertedInto=Los datos procedentes del archivo fuente se insertarán en el siguiente campo: +DataIDSourceIsInsertedInto=El ID del objeto principal se encontró utilizando los datos en el archivo de origen, se insertará en el siguiente campo: +DataCodeIDSourceIsInsertedInto=El id de la línea principal encontrada en el código, se insertará en el siguiente campo: +SourceRequired=El valor de los datos es obligatorio +SourceExample=Ejemplo de posible valor de datos +ExampleAnyRefFoundIntoElement=Cualquier referencia encontrada para el elemento %s +ExampleAnyCodeOrIdFoundIntoDictionary=Cualquier código (o id) encontrado en el diccionario %s +CSVFormatDesc= Formato de archivo de valores separados por comas (.csv).
    Este es un formato de archivo de texto donde los campos están separados por un separador [ %s ]. Si se encuentra un separador dentro del contenido de un campo, el campo se redondea con un carácter redondo [ %s ]. El personaje de escape para escapar del personaje redondo es [ %s ]. +Excel95FormatDesc=Formato de archivo de Excel (.xls)
    Este es el formato nativo de Excel 95 (BIFF5). +Excel2007FormatDesc=Formato de archivo de Excel (.xlsx)
    Este es el formato nativo de Excel 2007 (SpreadsheetML). +TsvFormatDesc= Formato de archivo de separación de valores (.tsv)
    Este es un formato de archivo de texto en el que los campos están separados por tabulador [pestaña]. +ExportFieldAutomaticallyAdded=El campo %s se agregó automáticamente. Evitará que usted tenga líneas similares para ser tratado como expediente duplicado (con este campo agregado, todas las líneas poseerán su propia identificación y diferirán). +Enclosure=Delimitador de cuerdas +ExportStringFilter=%% permite reemplazar uno o más caracteres en el texto +ExportDateFilter=YYYY, YYYYMM, YYYYMMDD: filtra por un año / mes / día
    YYYY+YYYY, YYYYMM+YYYYMM, YYYYMMDD+YYYYMMDD: filtra en un rango de años / meses / días
    > YYYY, > YYYYMM, > YYYYMMDD: filters on all following years/months/days
    < YYYY, < YYYYMM, < YYYYMMDD: filtros en todos los años / meses / días anteriores +ExportNumericFilter=Filtros NNNNN por un valor
    Filtros NNNNN + NNNNN sobre un rango de valores
    Filtros NNNNN por valores más altos +ImportFromLine=Importación a partir del número de línea +EndAtLineNb=Finalizar en el número de línea +ImportFromToLine=Rango límite (De - Para). Ej. Para omitir la línea(s) de encabezado. +SetThisValueTo2ToExcludeFirstLine=Por ejemplo, establezca este valor en 3 para excluir las 2 primeras líneas.
    Si las líneas del encabezado NO se omiten, esto generará múltiples errores en la simulación de importación. +KeepEmptyToGoToEndOfFile=Mantenga este campo vacío para procesar todas las líneas hasta el final del archivo. +SelectPrimaryColumnsForUpdateAttempt=Seleccione la columna(s) para usar como clave principal para una importación de ACTUALIZACIÓN +UpdateNotYetSupportedForThisImport=La actualización no es compatible con este tipo de importación (sólo insertar) +NoUpdateAttempt=No se realizó ningún intento de actualización, sólo insertar +ImportDataset_user_1=Usuarios (empleados o no) y propiedades +ComputedField=Campo calculado +SelectFilterFields=Si desea filtrar algunos valores, simplemente ingrese valores aquí. +FilteredFieldsValues=Valor del filtro +FormatControlRule=Regla de control de formato +KeysToUseForUpdates=Clave (columna) a usar para actualizar los datos existentes +NbInsert=Número de líneas insertadas:%s +NbUpdate=Número de líneas actualizadas:%s +MultipleRecordFoundWithTheseFilters=Se han encontrado varios registros con estos filtros:%s diff --git a/htdocs/langs/es_EC/externalsite.lang b/htdocs/langs/es_EC/externalsite.lang new file mode 100644 index 00000000000..2ebc56b30e5 --- /dev/null +++ b/htdocs/langs/es_EC/externalsite.lang @@ -0,0 +1,4 @@ +# Dolibarr language file - Source file is en_US - externalsite +ExternalSiteSetup=Configurar enlace a un sitio web externo +ExternalSiteModuleNotComplete=El módulo SitioExterno no estaba configurado correctamente. +ExampleMyMenuEntry=Mi entrada en el menú diff --git a/htdocs/langs/es_EC/ftp.lang b/htdocs/langs/es_EC/ftp.lang new file mode 100644 index 00000000000..6a3ad20d130 --- /dev/null +++ b/htdocs/langs/es_EC/ftp.lang @@ -0,0 +1,12 @@ +# Dolibarr language file - Source file is en_US - ftp +NewFTPClient=Nueva configuración de conexión FTP +FTPArea=Área de FTP +FTPAreaDesc=Esta pantalla muestra una vista de un servidor FTP. +SetupOfFTPClientModuleNotComplete=La configuración del módulo de cliente FTP parece estar incompleta +FTPFeatureNotSupportedByYourPHP=Su PHP no admite funciones FTP +FailedToConnectToFTPServer=Error al conectarse al servidor FTP (servidor%s, puerto%s) +FailedToConnectToFTPServerWithCredentials=Error al iniciar sesión en el servidor FTP con nombre de usuario/contraseña definidos +FTPFailedToRemoveFile=Error al eliminar el archivo %s. +FTPFailedToRemoveDir=Error al eliminar el directorio %s: verifique los permisos y que el directorio esté vacío. +ChooseAFTPEntryIntoMenu=Elija un sitio FTP del menú ... +FailedToGetFile=Error al obtener los archivos %s diff --git a/htdocs/langs/es_EC/help.lang b/htdocs/langs/es_EC/help.lang new file mode 100644 index 00000000000..42a326106a6 --- /dev/null +++ b/htdocs/langs/es_EC/help.lang @@ -0,0 +1,18 @@ +# Dolibarr language file - Source file is en_US - help +CommunitySupport=Foro de soporte +EMailSupport=Soporte por correos electrónicos +RemoteControlSupport=Soporte en línea en tiempo real / remoto +OtherSupport=Otro soporte +HelpCenter=Centro de ayuda +DolibarrHelpCenter=Centro de Ayuda y Soporte Dolibarr +TypeOfSupport=Tipo de apoyo +TypeSupportCommunauty=Comunidad (gratis) +NeedHelpCenter=¿Necesita ayuda o apoyo? +Efficiency=Eficiencia +TypeHelpOnly=Solo ayuda +TypeHelpDevForm=Ayuda + Desarrollo + Entrenamiento +BackToHelpCenter=De lo contrario, vuelva a la página de inicio del centro de ayuda. +LinkToGoldMember=Puede llamar a uno de los capacitadores preseleccionados por Dolibarr para su idioma (%s) haciendo clic en su Widget (el estado y el precio máximo se actualizan automáticamente): +PossibleLanguages=Idiomas admitidos +SubscribeToFoundation=Ayuda al proyecto Dolibarr, suscríbete a la fundación. +SeeOfficalSupport=Para soporte oficial de Dolibarr en tu idioma:
    %s diff --git a/htdocs/langs/es_EC/holiday.lang b/htdocs/langs/es_EC/holiday.lang new file mode 100644 index 00000000000..948a8d8d808 --- /dev/null +++ b/htdocs/langs/es_EC/holiday.lang @@ -0,0 +1,108 @@ +# Dolibarr language file - Source file is en_US - holiday +Holidays=Hoja +CPTitreMenu=Hoja +MenuAddCP=Nueva solicitud de licencia +NotActiveModCP=Debes habilitar el módulo Licencia para ver esta página. +AddCP=Hacer una solicitud de licencia +DateDebCP=Fecha de inicio +DateFinCP=Fecha final +ToReviewCP=Esperando aprobacion +ApprovedCP=Aprobado +CancelCP=Cancelado +RefuseCP=Rechazado +ListeCP=Lista de licencia +LeaveId=ID de Salida +ReviewedByCP=Será aprobado por +UserForApprovalID=ID de aprobación del usuario +UserForApprovalFirstname=Nombre del usuario de aprobación +SendRequestCP=Crear solicitud de licencia +DelayToRequestCP=Las solicitudes de permiso deben ser hechas al menos %s día (s) antes de ellas. +MenuConfCP=Balance de licencia +SoldeCPUser=El saldo de licencia es %s dias +ErrorEndDateCP=Debe seleccionar una fecha de finalización mayor que la fecha de inicio. +ErrorSQLCreateCP=Se produjo un error SQL durante la creación: +ErrorIDFicheCP=Se ha producido un error, la solicitud de licencia no existe. +ReturnCP=volver a la pagina anterior +ErrorUserViewCP=Usted no está autorizado a leer esta solicitud de licencia. +InfosWorkflowCP=Flujo de trabajo de información +RequestByCP=Solicitado por +TitreRequestCP=Dejar petición +TypeOfLeaveId=Tipo de ID de salida +TypeOfLeaveCode=Tipo de código de salida +TypeOfLeaveLabel=Tipo de etiqueta de salida +NbUseDaysCP=Número de días de vacaciones consumidos +NbUseDaysCPShortInMonth=Días consumidos en el mes +EditCP=Editar +DeleteCP=Borrar +ActionRefuseCP=Desperdicios +ActionCancelCP=Cancelar +TitleDeleteCP=Eliminar la solicitud de licencia +ConfirmDeleteCP=Confirmar la eliminación de esta solicitud de licencia? +ErrorCantDeleteCP=Error no tiene derecho a eliminar esta solicitud de licencia. +CantCreateCP=Usted no tiene derecho a hacer solicitudes de licencia. +InvalidValidatorCP=Usted debe elegir un aprobador para su solicitud de licencia. +NoDateDebut=Debe seleccionar una fecha de inicio. +NoDateFin=Debe seleccionar una fecha de finalización. +ErrorDureeCP=Su solicitud de permiso no contiene días hábiles. +TitleValidCP=Aprobar la solicitud de permiso +ConfirmValidCP=¿Estás seguro de que quieres aprobar la solicitud de licencia? +DateValidCP=Fecha de aprobación +TitleToValidCP=Enviar solicitud de licencia +ConfirmToValidCP=¿Estás seguro de que quieres enviar la solicitud de permiso? +TitleRefuseCP=Rechazar la solicitud de licencia +ConfirmRefuseCP=¿Estás seguro de que quieres rechazar la solicitud de licencia? +NoMotifRefuseCP=Debe elegir una razón para rechazar la solicitud. +TitleCancelCP=Cancelar la solicitud de licencia +ConfirmCancelCP=¿Está seguro de que desea cancelar la solicitud de licencia? +DetailRefusCP=Razón de la denegación +DateRefusCP=Fecha de la denegación +DateCancelCP=Fecha de cancelación +DefineEventUserCP=Asignar una licencia excepcional para un usuario +addEventToUserCP=Asignar licencia +NotTheAssignedApprover=Usted no es el usuario para autorizar asignado +MotifCP=Razón +ErrorAddEventToUserCP=Se ha producido un error al agregar la licencia excepcional. +AddEventToUserOkCP=La adición de la licencia excepcional ha sido completada. +MenuLogCP=Ver registros de cambios +LogCP=Registro de actualizaciones de los días de vacaciones disponibles +ActionByCP=Interpretado por +PrevSoldeCP=Balance anterior +NewSoldeCP=Nuevo equilibrio +alreadyCPexist=Ya se ha hecho una solicitud de permiso en este período +FirstDayOfHoliday=Primer día de vacaciones +LastDayOfHoliday=Último día de vacaciones +BoxTitleLastLeaveRequests=Últimas solicitudes de licencia modificadas%s +HolidaysCancelation=Cancelación de la solicitud de permiso +EmployeeLastname=Apellido del empleado +TypeWasDisabledOrRemoved=El tipo de licencia (id%s) fue deshabilitado o eliminado +LastHolidays=Últimas %s solicitudes de permiso +AllHolidays=Todas las solicitudes de permiso +LEAVE_PAID=Vacaciones pagas +LEAVE_SICK=Permiso por enfermedad +LEAVE_OTHER=Otro permiso +LEAVE_PAID_FR=Vacaciones pagas +LastUpdateCP=Última actualización automática de la asignación de vacaciones +MonthOfLastMonthlyUpdate=Mes de la última actualización automática de la asignación de vacaciones +UpdateConfCPOK=Actualizado correctamente. +Module27130Name= Gestión de solicitudes de licencia +Module27130Desc= Gestión de solicitudes de licencia +ErrorMailNotSend=Se ha producido un error al enviar un correo electrónico: +HolidaysToValidate=Validar solicitudes de licencia +HolidaysToValidateBody=A continuación se muestra una solicitud de permiso para validar +HolidaysToValidateDelay=Esta solicitud de licencia tendrá lugar dentro de un período de menos de%s días. +HolidaysToValidateAlertSolde=El usuario que realizó esta solicitud de licencia no tiene suficientes días disponibles. +HolidaysValidated=Solicitud de licencia validada +HolidaysValidatedBody=Su solicitud de licencia para%s a%s ha sido validada. +HolidaysRefused=Solicitud rechazada +HolidaysRefusedBody=Su solicitud de licencia para %s a %s ha sido denegada por el siguiente motivo: +HolidaysCanceled=Solicitud de hoja cancelada +HolidaysCanceledBody=Se ha cancelado la solicitud de licencia de%s a%s. +FollowedByACounter=1: Este tipo de permiso debe ser seguido por un contador. El contador se incrementa manual o automáticamente y cuando se valida una solicitud de permiso, el contador se decrementa.
    0: No seguido por un contador. +NoLeaveWithCounterDefined=No hay tipos de permiso definidos que necesitan ser seguidos por un contador +GoIntoDictionaryHolidayTypes=Ir a Inicio - Configuración - Diccionarios - Tipo de permiso para configurar los diferentes tipos de permisos. +HolidaySetup=Configuración del módulo Vacaciones +HolidaysNumberingModules=Solicitud de licencia modelos de numeración +TemplatePDFHolidays=Plantilla para solicitudes de permisos PDF +FreeLegalTextOnHolidays=Texto libre en PDF +WatermarkOnDraftHolidayCards=Marcas de agua en las solicitudes de permiso borrador +NobodyHasPermissionToValidateHolidays=Nadie tiene permiso para validar vacaciones diff --git a/htdocs/langs/es_EC/hrm.lang b/htdocs/langs/es_EC/hrm.lang new file mode 100644 index 00000000000..73edf08dd2c --- /dev/null +++ b/htdocs/langs/es_EC/hrm.lang @@ -0,0 +1,7 @@ +# Dolibarr language file - Source file is en_US - hrm +HRM_EMAIL_EXTERNAL_SERVICE=Correo electrónico para prevenir el servicio externo de RRHH +ConfirmDeleteEstablishment=¿Estás seguro de que deseas eliminar este establecimiento? +OpenEtablishment=Establecimiento abierto +DictionaryPublicHolidays=HRM - Días festivos +DictionaryDepartment=RRHH - Lista de departamento +DictionaryFunction=RRHH - Lista de funciones diff --git a/htdocs/langs/es_EC/install.lang b/htdocs/langs/es_EC/install.lang new file mode 100644 index 00000000000..8e8276536a9 --- /dev/null +++ b/htdocs/langs/es_EC/install.lang @@ -0,0 +1,191 @@ +# Dolibarr language file - Source file is en_US - install +InstallEasy=Siga las instrucciones paso a paso. +MiscellaneousChecks=Comprobación de requisitos previos +ConfFileExists=Existe el archivo de configuración %s. +ConfFileDoesNotExistsAndCouldNotBeCreated=¡El archivo de configuración %s no existe y no se pudo crear! +ConfFileCouldBeCreated=Se podría crear el archivo de configuración%s. +ConfFileIsNotWritable=El archivo de configuración %s no se puede escribir. Compruebe los permisos. Para la primera instalación, su servidor web debe poder escribir en este archivo durante el proceso de configuración ("chmod 666", por ejemplo, en un sistema operativo tipo Unix). +ConfFileIsWritable=El archivo de configuración%s puede escribirse. +ConfFileMustBeAFileNotADir=El archivo de configuración %s debe ser un archivo, no un directorio. +ConfFileReload=Recarga de parámetros desde un archivo de configuración. +PHPSupportSessions=Este PHP soporta sesiones. +PHPSupportPOSTGETOk=Este PHP soporta las variables POST y GET. +PHPSupportPOSTGETKo=Es posible que su configuración de PHP no admita las variables POST y/o GET. Compruebe el parámetro variables_order en php.ini. +PHPSupportGD=Este PHP soporta funciones gráficas GD. +PHPSupportCurl=Este PHP soporta Curl. +PHPSupportUTF8=Este PHP soporta funciones UTF8. +PHPSupportIntl=Este PHP soporta funciones Intl. +PHPSupportxDebug=Este PHP admite funciones de depuración extendidas. +PHPSupport=Este PHP admite funciones %s. +PHPMemoryOK=La memoria de sesión PHP max está configurada en%s. Esto debería ser suficiente. +PHPMemoryTooLow=Su memoria de sesión de PHP max está configurada en %s bytes. Esto es demasiado bajo. Cambie su php.ini para establecer el parámetro memory_limit en al menos %sbytes. +Recheck=Haga clic aquí para una prueba más detallada +ErrorPHPDoesNotSupportSessions=Su instalación de PHP no soporta sesiones. Esta función es necesaria para permitir que Dolibarr funcione. Compruebe su configuración de PHP y permisos del directorio de sesiones. +ErrorPHPDoesNotSupportGD=Su instalación de PHP no soporta funciones gráficas de GD. No habrá gráficos disponibles. +ErrorPHPDoesNotSupportCurl=Su instalación de PHP no admite Curl. +ErrorPHPDoesNotSupportCalendar=Su instalación de PHP no admite extensiones de calendario php. +ErrorPHPDoesNotSupportUTF8=Su instalación de PHP no es compatible con las funciones UTF8. Dolibarr no puede funcionar correctamente. Resuelve esto antes de instalar Dolibarr. +ErrorPHPDoesNotSupportIntl=Su instalación de PHP no es compatible con las funciones Intl. +ErrorPHPDoesNotSupportxDebug=Su instalación de PHP no admite funciones de depuración ampliadas. +ErrorPHPDoesNotSupport=Su instalación de PHP no es compatible con las funciones %s. +ErrorDirDoesNotExists=El directorio%s no existe. +ErrorGoBackAndCorrectParameters=Regresa y revisa/corrige los parámetros. +ErrorWrongValueForParameter=Es posible que haya escrito un valor incorrecto para el parámetro '%s'. +ErrorFailedToConnectToDatabase=Error al conectarse a la base de datos '%s'. +ErrorDatabaseVersionTooLow=Versión de base de datos (%s) demasiado antigua. Se requiere la versión%s o superior. +ErrorPHPVersionTooLow=La versión de PHP es demasiado antigua. Se requiere la versión%s. +ErrorConnectedButDatabaseNotFound=La conexión al servidor fue exitosa pero la base de datos '%s' no se encontró +IfDatabaseNotExistsGoBackAndUncheckCreate=Si la base de datos no existe, vuelva atrás y marque la opción "Crear base de datos". +IfDatabaseExistsGoBackAndCheckCreate=Si la base de datos ya existe, vuelva atrás y desactive la opción "Crear base de datos". +WarningBrowserTooOld=La versión del navegador es demasiado antigua. Se recomienda encarecidamente actualizar su navegador a una versión reciente de Firefox, Chrome u Opera. +PHPVersion=Versión de PHP +License=Uso de licencia +WebPagesDirectory=Directorio donde se guardan las páginas web +DocumentsDirectory=Directorio para almacenar los documentos subidos y generados +URLRoot=URL de la raíz +CheckToForceHttps=Marque esta opción para forzar conexiones seguras (https).
    Esto requiere que el servidor web esté configurado con un certificado SSL. +DatabaseType=Tipo de base de datos +ServerAddressDescription=Nombre o dirección IP para el servidor de base de datos. Normalmente, 'localhost' cuando el servidor de la base de datos está alojado en el mismo servidor que el servidor web. +ServerPortDescription=Puerto del servidor de base de datos. Manténgase vacío si es desconocido. +DatabasePrefix=Prefijo de tabla de base de datos +AdminLogin=Cuenta de usuario para el propietario de la base de datos Dolibarr. +PasswordAgain=Vuelva a escribir la confirmación de la contraseña +AdminPassword=Contraseña para el propietario de la base de datos de Dolibarr. +CreateDatabase=Crear base de datos +CreateUser=Cree una cuenta de usuario o otorgue permiso de cuenta de usuario en la base de datos de Dolibarr +DatabaseSuperUserAccess=Servidor de base de datos - Acceso de superusuario +CheckToCreateDatabase=Marque la casilla si la base de datos aún no existe y, por lo tanto, debe crearse.
    En este caso, también debe ingresar el nombre de usuario y la contraseña de la cuenta de superusuario en la parte inferior de esta página. +CheckToCreateUser=Marque la casilla si:
    la cuenta de usuario de la base de datos aún no existe y, por lo tanto, debe crearse, o
    si la cuenta de usuario existe pero la base de datos no existe y se deben otorgar permisos.
    En este caso, debe ingresar la cuenta de usuario y la contraseña y también el nombre de usuario y la contraseña del superusuario en la parte inferior de esta página. Si esta casilla no está marcada, el propietario de la base de datos y la contraseña ya deben existir. +KeepEmptyIfNoPassword=Deje en blanco si el superusuario no tiene contraseña (NO se recomienda) +ServerConnection=Conexión del servidor +DatabaseCreation=Creación de bases de datos +CreateDatabaseObjects=Creación de objetos de base de datos +ReferenceDataLoading=Carga de datos de referencia +TablesAndPrimaryKeysCreation=Creación de tablas y claves primarias +CreateTableAndPrimaryKey=Crear tabla%s +CreateOtherKeysForTable=Crear claves e índices externos para la tabla%s +OtherKeysCreation=Creación de claves e índices extranjeros +AdminAccountCreation=Creación de inicio de sesión de administrador +PleaseTypePassword=Por favor escriba una contraseña, las contraseñas vacías no están permitidas! +PleaseTypeALogin=Por favor escriba un nombre de usuario! +PasswordsMismatch=Las contraseñas difieren, por favor intente de nuevo! +SetupEnd=Fin de la configuración +SystemIsInstalled=Esta instalación ha finalizado. +SystemIsUpgraded=Dolibarr se ha actualizado con éxito. +YouNeedToPersonalizeSetup=Debe configurar Dolibarr para adaptarse a sus necesidades (apariencia, características, ...). Para ello, siga el siguiente enlace: +AdminLoginCreatedSuccessfuly=El inicio de sesión del administrador Dolibarr '%s ' se ha creado correctamente. +GoToDolibarr=Ir a Dolibarr +GoToSetupArea=Ir a Dolibarr (área de configuración) +GoToUpgradePage=Ir a la página de actualización de nuevo +WithNoSlashAtTheEnd=Sin la barra "/" al final +DirectoryRecommendation= IMPORTANTE: debe usar un directorio que esté fuera de las páginas web (por lo tanto, no use un subdirectorio del parámetro anterior). +AdminLoginAlreadyExists=La cuenta de administrador de Dolibarr '%s' ya existe. Regrese si quiere crear otro. +FailedToCreateAdminLogin=Error al crear la cuenta de administrador de Dolibarr. +WarningRemoveInstallDir=Advertencia, por razones de seguridad, una vez que se complete la instalación o actualización, debe agregar un archivo llamado install.lock en el directorio de documentos de Dolibarr para evitar nuevamente el uso accidental / malicioso de las herramientas de instalación. +ChoosedMigrateScript=Elegir secuencia de comandos de migración +DataMigration=Migración de base de datos (datos) +DatabaseMigration=Migración de la base de datos (estructura + algunos datos) +ProcessMigrateScript=Procesamiento de scripts +ChooseYourSetupMode=Elige tu modo de configuración y haz clic en "Inicio" ... +FreshInstall=Instalación nueva +FreshInstallDesc=Utilice este modo si esta es su primera instalación. Si no, este modo puede reparar una instalación previa incompleta. Si desea actualizar su versión, elija el modo "Actualizar". +UpgradeDesc=Utilice este modo si ha reemplazado archivos viejos de Dolibarr con archivos de una versión más reciente. Esto actualizará su base de datos y datos. +Start=Comienzo +InstallNotAllowed=El programa de instalación no está permitido por los permisos conf.php +YouMustCreateWithPermission=Debe crear el archivo%s y establecer permisos de escritura para el servidor web durante el proceso de instalación. +AlreadyDone=Ya migrado +DatabaseVersion=Versión de base de datos +ServerVersion=Versión del servidor de base de datos +YouMustCreateItAndAllowServerToWrite=Debe crear este directorio y permitir que el servidor web escriba en él. +DBSortingCollation=Orden de clasificación de caracteres +YouAskDatabaseCreationSoDolibarrNeedToConnect=Seleccionó crear base de datos %s, pero para esto, Dolibarr necesita conectarse al servidor %s con permisos de superusuario %s. +YouAskLoginCreationSoDolibarrNeedToConnect=Seleccionó crear usuario de base de datos %s, pero para esto, Dolibarr necesita conectarse al servidor %s con permisos de superusuario %s. +BecauseConnectionFailedParametersMayBeWrong=Falló la conexión de la base de datos: los parámetros del host o superusuario deben ser incorrectos. +OrphelinsPaymentsDetectedByMethod=Pago de huérfanos detectado por el método%s +RemoveItManuallyAndPressF5ToContinue=Quítelo manualmente y presione F5 para continuar. +IfLoginDoesNotExistsCheckCreateUser=Si el usuario aún no existe, debe marcar la opción "Crear usuario" +ErrorConnection=El servidor "%s", el nombre de la base de datos "%s", el inicio de sesión "%s" o la contraseña de la base de datos pueden estar equivocados o la versión del cliente PHP puede ser demasiado antigua en comparación con la versión de la base de datos. +InstallChoiceRecommanded=Opción recomendada para instalar la versión%s de su versión actual%s +InstallChoiceSuggested= Instale la opción sugerida por el instalador . +MigrateIsDoneStepByStep=La versión apuntada (%s) tiene un hueco de varias versiones. El asistente de instalación volverá a sugerir una migración adicional una vez que este se complete. +CheckThatDatabasenameIsCorrect=Compruebe que el nombre de la base de datos "%s" sea correcto. +IfAlreadyExistsCheckOption=Si este nombre es correcto y esa base de datos aún no existe, debe marcar la opción "Crear base de datos". +OpenBaseDir=PHP parámetro openbasedir +YouAskToCreateDatabaseSoRootRequired=Has marcado la casilla "Crear base de datos". Para esto, debe proporcionar el nombre de usuario / contraseña del superusuario (parte inferior del formulario). +YouAskToCreateDatabaseUserSoRootRequired=Has marcado la casilla "Crear propietario de base de datos". Para esto, debe proporcionar el nombre de usuario / contraseña del superusuario (parte inferior del formulario). +NextStepMightLastALongTime=El paso actual puede tardar varios minutos. Por favor, espere hasta que la siguiente pantalla se muestre completamente antes de continuar. +MigrationCustomerOrderShipping=Migrar envíos para el almacenamiento de pedidos de ventas +MigrationShippingDelivery=Actualizar el almacenamiento del envío +MigrationShippingDelivery2=Actualizar almacenamiento de envío 2 +MigrationFinished=Migración terminada +LastStepDesc=Último paso: Defina aquí el nombre de usuario y la contraseña que desea utilizar para conectarse a Dolibarr. No pierda esto, ya que es la cuenta maestra para administrar todas las otras cuentas de usuario / adicionales. +ActivateModule=Activar módulo%s +ShowEditTechnicalParameters=Haga clic aquí para mostrar / editar parámetros avanzados (modo experto) +WarningUpgrade=Advertencia:\n¿Ejecutó primero una copia de seguridad de la base de datos?\nEsto es muy recomendable. La pérdida de datos (debido a, por ejemplo, errores en mysql versión 5.5.40 / 41/42/43) puede ser posible durante este proceso, por lo que es esencial realizar un volcado completo de su base de datos antes de iniciar cualquier migración.\n\nHaga clic en Aceptar para iniciar el proceso de migración ... +ErrorDatabaseVersionForbiddenForMigration=Su versión de base de datos es %s. Tiene un error crítico que hace posible la pérdida de datos si realiza cambios estructurales en su base de datos, como lo requiere el proceso de migración. Por esta razón, no se permitirá la migración hasta que actualice su base de datos a una versión de capa (parcheada) (lista de versiones con errores conocidas: %s) +KeepDefaultValuesWamp=Utilizó el asistente de configuración de Dolibarr de DoliWamp, por lo que los valores propuestos aquí ya están optimizados. Cámbialas solo si sabes lo que estás haciendo. +KeepDefaultValuesDeb=Usó el asistente de configuración de Dolibarr de un paquete de Linux (Ubuntu, Debian, Fedora ...), por lo que los valores propuestos aquí ya están optimizados. Solo se debe ingresar la contraseña del propietario de la base de datos para crear. Cambie otros parámetros solo si sabe lo que está haciendo. +KeepDefaultValuesMamp=Utilizó el asistente de configuración de Dolibarr de DoliMamp, por lo que los valores propuestos aquí ya están optimizados. Cámbialas solo si sabes lo que estás haciendo. +KeepDefaultValuesProxmox=Utilizó el asistente de configuración de Dolibarr desde un dispositivo virtual Proxmox, por lo que los valores propuestos aquí ya están optimizados. Cámbialas solo si sabes lo que estás haciendo. +UpgradeExternalModule=Ejecutar proceso de actualización dedicado de módulo externo +SetAtLeastOneOptionAsUrlParameter=Establezca al menos una opción como parámetro en URL. Por ejemplo: '...repair.php?Standard=confirmed' +MigrationOrder=Migración de datos para órdenes del cliente +MigrationSupplierOrder=Migración de datos para pedidos del proveedor +MigrationProposal=Migración de datos para propuestas comerciales +MigrationInvoice=Migración de datos para facturas del cliente +MigrationContract=Migración de datos para contratos +MigrationSuccessfullUpdate=Actualización exitosa +MigrationUpdateFailed=Proceso de actualización fallido +MigrationRelationshipTables=Migración de datos para tablas de relaciones (%s) +MigrationPaymentsUpdate=Corrección de datos de pago +MigrationPaymentsNumberToUpdate=%s pago(s) para actualizar +MigrationProcessPaymentUpdate=Actualizar pago(s)%s +MigrationPaymentsNothingToUpdate=No más cosas que hacer +MigrationPaymentsNothingUpdatable=No más pagos que se puedan corregir +MigrationContractsUpdate=Corrección de datos contractuales +MigrationContractsNumberToUpdate=%s contrato (s) para actualizar +MigrationContractsLineCreation=Crear línea de contrato para la referencia de contrato%s +MigrationContractsNothingToUpdate=No más cosas que hacer +MigrationContractsFieldDontExist=El campo fk_facture ya no existe. Nada que hacer. +MigrationContractsEmptyDatesUpdate=Corrección de la fecha del contrato vacía +MigrationContractsEmptyDatesUpdateSuccess=La corrección de la fecha vacía del contrato se realizó con éxito +MigrationContractsEmptyDatesNothingToUpdate=No hay fecha de contrato vacía para corregir +MigrationContractsEmptyCreationDatesNothingToUpdate=Ninguna fecha de creación del contrato para corregir +MigrationContractsInvalidDatesUpdate=Corrección de contrato de fecha de valor incorrecto +MigrationContractsInvalidDateFix=Contrato correcto%s (Fecha del contrato +MigrationContractsInvalidDatesNothingToUpdate=No hay fecha con mal valor para corregir +MigrationContractsIncoherentCreationDateUpdate=Corrección de fecha de creación de contrato de valor incorrecto +MigrationContractsIncoherentCreationDateUpdateSuccess=Corrección de la fecha de creación del contrato de valor incorrecto realizada correctamente +MigrationContractsIncoherentCreationDateNothingToUpdate=Ningún valor negativo para la fecha de creación del contrato para corregir +MigrationReopeningContracts=Contrato abierto cerrado por error +MigrationReopenThisContract=Reabrir el contrato%s +MigrationReopeningContractsNothingToUpdate=No hay contrato cerrado para abrir +MigrationBankTransfertsUpdate=Actualizar enlaces entre la entrada bancaria y una transferencia bancaria +MigrationBankTransfertsNothingToUpdate=Todos los enlaces están actualizados +MigrationShipmentOrderMatching=Actualización del recibo de envío +MigrationDeliveryOrderMatching=Actualización del recibo de entrega +MigrationDeliveryDetail=Actualización de entrega +MigrationStockDetail=Actualizar el valor de stock de los productos +MigrationMenusDetail=Actualizar tablas de menús dinámicos +MigrationDeliveryAddress=Actualizar la dirección de entrega en envíos +MigrationProjectTaskActors=Migración de datos para la tabla llx_projet_task_actors +MigrationProjectUserResp=Campo de migración de datos fk_user_resp de llx_projet a llx_element_contact +MigrationProjectTaskTime=Tiempo de actualización en segundos +MigrationActioncommElement=Actualizar datos sobre acciones +MigrationPaymentMode=Migración de datos por tipo de pago +MigrationCategorieAssociation=Migración de categorías +MigrationEvents=Migración de eventos para agregar el propietario del evento en la tabla de asignación +MigrationEventsContact=Migración de eventos para agregar contactos de eventos a la tabla de asignación +MigrationRemiseEntity=Valor de campo de entidad de actualización de llx_societe_remise +MigrationRemiseExceptEntity=Valor de campo de entidad de actualización de llx_societe_remise_except +MigrationUserRightsEntity=Actualizar el valor del campo de entidad de llx_user_rights +MigrationUserGroupRightsEntity=Actualizar el valor del campo de entidad de llx_usergroup_rights +MigrationUserPhotoPath=Migración de rutas de fotos para usuarios. +MigrationFieldsSocialNetworks=Migración de redes sociales de campos de usuarios (%s) +MigrationReloadModule=Actualizar módulo%s +ErrorFoundDuringMigration=Se informaron errore(s) durante el proceso de migración, por lo que el siguiente paso no está disponible. Para ignorar los errores, puede hacer clic aquí, pero es posible que la aplicación o algunas características no funcionen correctamente hasta que se resuelvan los errores. +YouTryInstallDisabledByDirLock=La aplicación intentó auto actualizarse, pero las páginas de instalación / actualización se han deshabilitado por seguridad (directorio renombrado con el sufijo .lock).
    +YouTryInstallDisabledByFileLock=La aplicación intentó actualizarse automáticamente, pero las páginas de instalación / actualización se han deshabilitado por seguridad (debido a la existencia de un archivo de bloqueo install.lock en el directorio de documentos de dolibarr).
    +ClickOnLinkOrRemoveManualy=Haga clic en el siguiente enlace. Si siempre ve esta misma página, debe eliminar / cambiar el nombre del archivo install.lock en el directorio de documentos. +Loaded=Cargado +FunctionTest=Prueba de funcionamiento diff --git a/htdocs/langs/es_EC/interventions.lang b/htdocs/langs/es_EC/interventions.lang new file mode 100644 index 00000000000..b8c803099da --- /dev/null +++ b/htdocs/langs/es_EC/interventions.lang @@ -0,0 +1,54 @@ +# Dolibarr language file - Source file is en_US - interventions +InterventionCard=Tarjeta de intervención +NewIntervention=Nueva intervención +ChangeIntoRepeatableIntervention=Cambio a intervención repetible. +ListOfInterventions=Lista de intervenciones +ActionsOnFicheInter=Acciones de intervención +LastInterventions=Últimas intervenciones%s +CreateDraftIntervention=Crear proyecto +InterventionContact=Contacto de intervención +DeleteIntervention=Eliminar la intervención +ValidateIntervention=Validar la intervención +ModifyIntervention=Modificar la intervención +DeleteInterventionLine=Borrar línea de intervención +ConfirmDeleteIntervention=¿Seguro que desea eliminar esta intervención? +ConfirmValidateIntervention=¿Está seguro de que desea validar esta intervención bajo el nombre %s? +ConfirmModifyIntervention=¿Está seguro de que desea modificar esta intervención? +ConfirmDeleteInterventionLine=¿Está seguro de que desea eliminar esta línea de intervención? +ConfirmCloneIntervention=¿Seguro que quieres clonar esta intervención? +NameAndSignatureOfInternalContact=Nombre y firma de la intervención: +DocumentModelStandard=Modelo de documento estándar para intervenciones +InterventionCardsAndInterventionLines=Intervenciones y líneas de intervención +InterventionClassifyBilled=Clasificar "Facturado" +InterventionClassifyUnBilled=Clasificar "Sin Cobro" +InterventionClassifyDone=Clasificar "Hecho" +SendInterventionRef=Presentación de la intervención%s +SendInterventionByMail=Enviar intervención por correo electrónico +InterventionCreatedInDolibarr=Intervención%s creada +InterventionValidatedInDolibarr=Intervención%s validada +InterventionModifiedInDolibarr=Intervención%s modificada +InterventionClassifiedBilledInDolibarr=Intervención%s establecida como facturada +InterventionClassifiedUnbilledInDolibarr=Intervención%s establecida como no facturada +InterventionSentByEMail=Intervención %s enviada por correo electrónico +InterventionDeletedInDolibarr=Intervención%s eliminada +InterventionsArea=Área de intervenciones +DraftFichinter=Proyectos de intervención +LastModifiedInterventions=Últimas%s intervenciones modificadas +FichinterToProcess=Intervenciones para procesar +TypeContact_fichinter_external_CUSTOMER=Seguimiento del contacto con el cliente +PrintProductsOnFichinter=Imprimir también líneas de tipo "producto" (no sólo servicios) en tarjeta de intervención +PrintProductsOnFichinterDetails=intervenciones generadas a partir de pedidos +UseServicesDurationOnFichinter=Utilizar la duración de los servicios para las intervenciones generadas a partir de pedidos +NbOfinterventions=Nº de tarjetas de intervención. +NumberOfInterventionsByMonth=Nº de tarjetas de intervención por mes (fecha de validación). +AmountOfInteventionNotIncludedByDefault=La cantidad de intervención no se incluye por defecto en ganancias (en la mayoría de los casos, las hojas de tiempo se usan para contar el tiempo invertido). Agregue la opción PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT a 1 en home-setup-other para incluirlos. +InterId=ID de intervención +InterRef=Intervención ref. +InterDateCreation=Intervención de creación de fecha +InterDuration=Intervención de duración +InterStatus=Intervención de estado +InterNote=Observe la intervención +InterLineId=Intervención de línea de identificación +InterLineDate=Intervención de línea de fecha +InterLineDuration=Intervención de duración de línea +InterLineDesc=Intervención de descripción de línea diff --git a/htdocs/langs/es_EC/languages.lang b/htdocs/langs/es_EC/languages.lang new file mode 100644 index 00000000000..fefdc0c6536 --- /dev/null +++ b/htdocs/langs/es_EC/languages.lang @@ -0,0 +1,8 @@ +# Dolibarr language file - Source file is en_US - languages +Language_ar_AR=Arábica +Language_ar_SA=Arábica +Language_fi_FI=Finlandés +Language_lv_LV=Letón +Language_mk_MK=Macedónio +Language_nl_BE=Holandés (Bélgica) +Language_nl_NL=Holandés diff --git a/htdocs/langs/es_EC/ldap.lang b/htdocs/langs/es_EC/ldap.lang new file mode 100644 index 00000000000..7822f0d974b --- /dev/null +++ b/htdocs/langs/es_EC/ldap.lang @@ -0,0 +1,17 @@ +# Dolibarr language file - Source file is en_US - ldap +YouMustChangePassNextLogon=Se debe cambiar la contraseña para el usuario %s en el dominio %s. +UserMustChangePassNextLogon=El usuario debe cambiar la contraseña en el dominio %s +LDAPInformationsForThisContact=Información en la base de datos LDAP para este contacto +LDAPInformationsForThisUser=Información en la base de datos LDAP para este usuario +LDAPInformationsForThisGroup=Información en la base de datos LDAP para este grupo +LDAPInformationsForThisMember=Información en la base de datos LDAP para este miembro +LDAPCard=Tarjeta LDAP +LDAPFieldStatus=Estado +LDAPFieldFirstSubscriptionDate=Primera fecha de suscripción +LDAPFieldFirstSubscriptionAmount=Primer importe de suscripción +LDAPFieldLastSubscriptionDate=Última fecha de suscripción +LDAPFieldLastSubscriptionAmount=Cantidad de suscripción más reciente +LDAPFieldSkype=ID de skype +LDAPFieldSkypeExample=Ejemplo: nombre de skype +UserSynchronized=Sincronizado por el usuario +ErrorFailedToReadLDAP=Error al leer la base de datos LDAP. Compruebe la configuración del módulo LDAP y la accesibilidad a la base de datos. diff --git a/htdocs/langs/es_EC/link.lang b/htdocs/langs/es_EC/link.lang new file mode 100644 index 00000000000..6c96ddd0f55 --- /dev/null +++ b/htdocs/langs/es_EC/link.lang @@ -0,0 +1,9 @@ +# Dolibarr language file - Source file is en_US - link +LinkedFiles=Archivos enlazados y documentos +NoLinkFound=No hay enlaces registrados +LinkComplete=El archivo se ha vinculado correctamente +ErrorFileNotLinked=No se pudo vincular el archivo. +LinkRemoved=Se ha eliminado el enlace %s +ErrorFailedToDeleteLink=No se pudo eliminar el vínculo '%s' +URLToLink=URL para vincular +OverwriteIfExists=Sobrescribir archivo si existe diff --git a/htdocs/langs/es_EC/loan.lang b/htdocs/langs/es_EC/loan.lang new file mode 100644 index 00000000000..cc9ea776587 --- /dev/null +++ b/htdocs/langs/es_EC/loan.lang @@ -0,0 +1,23 @@ +# Dolibarr language file - Source file is en_US - loan +NewLoan=Nuevo préstamo +ShowLoan=Mostrar préstamo +LoanPayment=Pago de préstamo +ShowLoanPayment=Mostrar el pago del préstamo +Interest=Interes +Nbterms=Número de términos +Term=Término +LoanAccountancyCapitalCode=Capital de cuenta contable +LoanAccountancyInsuranceCode=Seguro de cuenta contable +LoanAccountancyInterestCode=Interés de la cuenta contable +ConfirmDeleteLoan=Confirmar la eliminación de este préstamo +LoanDeleted=Préstamo eliminado con éxito +ConfirmPayLoan=Confirmar clasificar pagó este préstamo +ListLoanAssociatedProject=Lista del préstamo asociado al proyecto +AddLoan=Crear préstamo +FinancialCommitment=Compromiso financiero +InterestAmount=Interes +ConfigLoan=Configuración del módulo préstamo +LOAN_ACCOUNTING_ACCOUNT_CAPITAL=Capital de cuenta contable por defecto +LOAN_ACCOUNTING_ACCOUNT_INTEREST=Interés de la cuenta contable por defecto +LOAN_ACCOUNTING_ACCOUNT_INSURANCE=Seguro de cuenta contable por defecto +CreateCalcSchedule=Edita el compromiso financiero diff --git a/htdocs/langs/es_EC/mailmanspip.lang b/htdocs/langs/es_EC/mailmanspip.lang new file mode 100644 index 00000000000..6b8fb02ecff --- /dev/null +++ b/htdocs/langs/es_EC/mailmanspip.lang @@ -0,0 +1,24 @@ +# Dolibarr language file - Source file is en_US - mailmanspip +MailmanTitle=Sistema de listas de correo de Mailman +TestSubscribe=Para probar la suscripción a las listas de Mailman +TestUnSubscribe=Para probar la cancelación de la suscripción de las listas de Mailman +MailmanCreationSuccess=La prueba de suscripción se ejecutó correctamente +MailmanDeletionSuccess=La prueba de cancelación de la suscripción se ejecutó correctamente +SynchroMailManEnabled=Se realizará una actualización Mailman +SynchroSpipEnabled=Se realizará una actualización de Spip +DescADHERENT_MAILMAN_ADMINPW=Contraseña del administrador de Mailman +DescADHERENT_MAILMAN_URL=URL para las suscripciones de Mailman +DescADHERENT_MAILMAN_UNSUB_URL=URL para cancelación de suscripciones de Mailman +DescADHERENT_MAILMAN_LISTS=Lista(s) para la inscripción automática de nuevos miembros (separados por una coma) +SPIPTitle=Sistema de gestión de contenido SPIP +DescADHERENT_SPIP_DB=Nombre de la base de datos SPIP +DescADHERENT_SPIP_USER=Iniciar sesión en la base de datos SPIP +DescADHERENT_SPIP_PASS=Contraseña de base de datos SPIP +AddIntoSpipConfirmation=¿Estás seguro de que quieres agregar este miembro a SPIP? +AddIntoSpipError=Error al agregar el usuario en SPIP +DeleteIntoSpip=Eliminar de SPIP +DeleteIntoSpipConfirmation=¿Seguro que quieres eliminar este miembro de SPIP? +DeleteIntoSpipError=Error al suprimir el usuario de SPIP +SPIPConnectionFailed=Error al conectarse a SPIP +SuccessToAddToMailmanList=%sse ha agregado correctamente a la lista de mailman%s o la base de datos SPIP +SuccessToRemoveToMailmanList=%sse ha eliminado correctamente de la lista de carpetas%s o de la base de datos SPIP diff --git a/htdocs/langs/es_EC/mails.lang b/htdocs/langs/es_EC/mails.lang new file mode 100644 index 00000000000..d55c916e59a --- /dev/null +++ b/htdocs/langs/es_EC/mails.lang @@ -0,0 +1,129 @@ +# Dolibarr language file - Source file is en_US - mails +AllEMailings=Todos los eMailings +MailCard=Tarjeta EMailing +MailTo=Receptor(es) +MailToUsers=Para el usuario(s) +MailCC=Copiar a +MailToCCUsers=Copiar a los usuario(s) +MailCCC=Copia en caché a +MailTopic=Tema de correo electrónico +MailFile=Archivos adjuntos +MailMessage=Cuerpo del correo electronico +SubjectNotIn=No en el tema +ShowEMailing=Mostrar correos electrónicos +ListOfEMailings=Lista de correos electrónicos +NewMailing=Nuevo correo electrónico +EditMailing=Editar correos electrónicos +ResetMailing=Reenviar correo electrónico +DeleteMailing=Eliminar correo electrónico +DeleteAMailing=Eliminar un correo electrónico +PreviewMailing=Previsualizar correo electrónico +CreateMailing=Crear correo electrónico +TestMailing=Email de prueba +ValidMailing=Correo electrónico válido +MailingStatusValidated=validado +MailSuccessfulySent=Correo electrónico (de %s a %s) aceptado correctamente para entrega +MailingSuccessfullyValidated=EMailing validado con éxito +MailUnsubcribe=Anular la suscripción +MailingStatusNotContact=No contacte más +MailingStatusReadAndUnsubscribe=Leer y darse de baja +ErrorMailRecipientIsEmpty=El destinatario del correo electrónico está vacío +WarningNoEMailsAdded=No hay correo electrónico nuevo para agregar a la lista de destinatarios. +ConfirmValidMailing=¿Estás seguro de que quieres validar este correo electrónico? +ConfirmResetMailing=Advertencia, al reiniciar el correo electrónico %s, permitirá el reenvío de este correo electrónico en un correo masivo. ¿Seguro que quieres hacer esto? +ConfirmDeleteMailing=¿Estás seguro de que deseas eliminar este correo electrónico? +NbOfUniqueEMails=No. de emails únicos +NbOfEMails=Núm. de Emails +TotalNbOfDistinctRecipients=Número de destinatarios distintos +NoTargetYet=No se han definido aún destinatarios (ir a la pestaña 'Destinatarios') +NoRecipientEmail=No hay correo electrónico del destinatario de %s +YouCanAddYourOwnPredefindedListHere=Para crear su módulo selector de correo electrónico, consulte htdocs/core/modules/mailings/README. +EMailTestSubstitutionReplacedByGenericValues=Cuando se utiliza el modo de prueba, las variables de sustitución se reemplazan por valores genéricos +NoAttachedFiles=No hay archivos adjuntos +BadEMail=Mal valor para el correo electrónico +ConfirmCloneEMailing=¿Estás seguro de que quieres clonar este correo electrónico? +CloneReceivers=Cloner destinatarios +DateSending=Fecha de envío +MailingStatusRead=Leer +YourMailUnsubcribeOK=El correo electrónico %s está correctamente desuscrito de la lista de correo +ActivateCheckReadKey=Clave utilizada para cifrar la URL utilizada para la función "Leer recibo" y "Anular suscripción" +EMailSentToNRecipients=Correo electrónico enviado a %s destinatarios. +EMailSentForNElements=Correo electrónico enviado para %s elementos. +XTargetsAdded=%s destinatarios agregados a la lista de destino +OnlyPDFattachmentSupported=Si los documentos PDF ya se generaron para que los objetos se envíen, se adjuntarán al correo electrónico. De lo contrario, no se enviará correo electrónico (también, tenga en cuenta que solo los documentos pdf son compatibles como archivos adjuntos en el envío masivo en esta versión). +AllRecipientSelected=Los destinatarios del registro %s seleccionado (si se conoce su correo electrónico). +GroupEmails=Agrupar correos electrónicos +OneEmailPerRecipient=Un correo electrónico por destinatario (de manera predeterminada, un correo electrónico por registro seleccionado) +WarningIfYouCheckOneRecipientPerEmail=Advertencia: si marca esta casilla, significa que solo se enviará un correo electrónico para varios registros diferentes seleccionados, de modo que si su mensaje contiene variables de sustitución que se refieren a los datos de un registro, no será posible reemplazarlos. +ResultOfMailSending=Resultado del envío masivo de correos electrónicos +NbSelected=Numero seleccionado +NbIgnored=Número ignorado +NbSent=Numero enviado +SentXXXmessages=%smensaje(s) enviados. +ConfirmUnvalidateEmailing=¿Está seguro de que desea cambiar el correo electrónico %s al estado de borrador? +MailingModuleDescContactsWithThirdpartyFilter=Contacto con filtros de clientes +MailingModuleDescContactsByCompanyCategory=Contactos por categoría de terceros +MailingModuleDescContactsByCategory=Contactos por categorías +MailingModuleDescEmailsFromFile=E-mails del archivo +MailingModuleDescEmailsFromUser=Correo electrónico enviado por el usuario +MailingModuleDescDolibarrUsers=Usuarios con mensajes de correo electrónico +MailingModuleDescThirdPartiesByCategories=Clientes/Proveedores (por categorías) +LineInFile=Línea %s en el archivo +RecipientSelectionModules=Solicitudes definidas para la selección del destinatario +MailingArea=Zona EMailings +LastMailings=Últimos %s emails +TargetsStatistics=Estadísticas de objetivos +NbOfCompaniesContacts=Contactos / direcciones únicos +MailNoChangePossible=Los destinatarios de correo electrónico validado no se pueden cambiar +SearchAMailing=Búsqueda por correo +SendMailing=Enviar correo electrónico +MailingNeedCommand=El envío de un correo electrónico se puede realizar desde la línea de comandos. Pida al administrador del servidor que inicie el siguiente comando para enviar el correo electrónico a todos los destinatarios: +MailingNeedCommand2=Sin embargo, puede enviarlos en línea agregando el parámetro MAILING_LIMIT_SENDBYWEB con el valor del número máximo de correos electrónicos que desea enviar por sesión. Para ello, vaya a Inicio - Configuración - Otros. +ConfirmSendingEmailing=Si desea enviar mensajes de correo electrónico directamente desde esta pantalla, confirme que está seguro de que desea enviar correo electrónico ahora desde su navegador. +LimitSendingEmailing=Nota: El envío de correos electrónicos desde la interfaz web se realiza en varias ocasiones por razones de seguridad y de tiempo de espera, %s destinatarios a la vez para cada sesión de envío. +TargetsReset=Limpiar lista +ToClearAllRecipientsClickHere=Haga clic aquí para borrar la lista de destinatarios de este correo electrónico +ToAddRecipientsChooseHere=Agregar destinatarios eligiendo de las listas +NbOfEMailingsReceived=Envíos masivos recibidos +NbOfEMailingsSend=Envíos masivos enviados +IdRecord=Registro de identificación +DeliveryReceipt=Entrega Ack. +YouCanUseCommaSeparatorForSeveralRecipients=Puede utilizar el separador coma para especificar varios destinatarios. +TagCheckMail=Seguimiento de la apertura del correo +TagUnsubscribe=Cancelar la suscripción al enlace +TagSignature=Firma del usuario enviado +EMailRecipient=Receptor de E-mail +TagMailtoEmail=Correo electrónico del destinatario (incluido el enlace html "mailto:") +NoEmailSentBadSenderOrRecipientEmail=No hay correo electrónico enviado. Correo electrónico incorrecto del remitente o del destinatario. Verifique el perfil de usuario. +NoNotificationsWillBeSent=No hay notificaciones por correo electrónico para este evento y la empresa +ANotificationsWillBeSent=Se enviará una notificación por correo electrónico +SomeNotificationsWillBeSent=Las notificaciones de %s se enviarán por correo electrónico +AddNewNotification=Activar un nuevo destino / evento de notificación por correo electrónico +ListOfActiveNotifications=Lista todos los destinos / eventos activos para la notificación por correo electrónico +ListOfNotificationsDone=Lista todas las notificaciones por correo electrónico enviadas +MailSendSetupIs=La configuración del envío de correo electrónico se ha configurado en '%s'. Este modo no se puede utilizar para enviar correos electrónicos masivos. +MailSendSetupIs2=Primero debe ir, con una cuenta de administrador, al menú %s Home - Setup - EMails%s para cambiar el parámetro '%s' para usar el modo '%s'. Con este modo, puede ingresar la configuración del servidor SMTP proporcionado por su proveedor de servicios de Internet y usar la función de correo electrónico masivo. +MailSendSetupIs3=Si tiene alguna pregunta sobre cómo configurar su servidor SMTP, puede preguntar a %s. +YouCanAlsoUseSupervisorKeyword=También puede agregar la palabra clave __ SUPERVISOREMAIL __ para enviar el correo electrónico al supervisor del usuario (sólo funciona si se define un correo electrónico para este supervisor) +NbOfTargetedContacts=Número actual de correos electrónicos de contacto +UseFormatFileEmailToTarget=El archivo importado debe tener formato correo electrónico; nombre; nombre; otro +UseFormatInputEmailToTarget=Introduzca una cadena con formato correo electrónico; nombre; nombre; otro +AdvTgtTitle=Rellene los campos de entrada para preseleccionar los clientes/proveedores o contactos/direcciones de destino +AdvTgtSearchTextHelp=Utilizar como comodines %%. Por ejemplo, para encontrar todos los elementos como jean, joe, jim, puede ingresar j%%, también puede usar ; como separador de valor, y uso ! para excepto este valor. Por ejemplo, jean;joe;jim%%;!Jimo;!Jima% apuntará a todos los jean, joe, comienza con jim pero no jimo y no todo lo que comienza con jima +AdvTgtSearchIntHelp=Utilice el intervalo para seleccionar el valor int o float +AdvTgtMaxVal=Valor máximo +AdvTgtSearchDtHelp=Usar el intervalo para seleccionar el valor de fecha +AdvTgtStartDt=Iniciar dt. +AdvTgtEndDt=Final dt. +AdvTgtTypeOfIncudeHelp=Correo electrónico de destino del tercero y correo electrónico de contacto del tercero, o solo correo electrónico de terceros o solo correo electrónico de contacto +AdvTgtTypeOfIncude=Tipo de correo electrónico orientado +AdvTgtContactHelp=Úselo sólo si segmenta el contacto en "Tipo de correo electrónico orientado" +ItemsCount=Artículo(s) +AdvTgtAddContact=Añadir emails según criterio. +AdvTgtLoadFilter=Filtro de carga +NoContactWithCategoryFound=No hay contacto/dirección con una categoría encontrada +NoContactLinkedToThirdpartieWithCategoryFound=No hay contacto/dirección con una categoría encontrada +OutGoingEmailSetup=Configuración de correo saliente +InGoingEmailSetup=Configuración de correo entrante +OutGoingEmailSetupForEmailing=Configuración del correo electrónico saliente (para el módulo %s) +ContactsWithThirdpartyFilter=Contactos con filtro de terceros diff --git a/htdocs/langs/es_EC/main.lang b/htdocs/langs/es_EC/main.lang index 334b37cc089..159dd3b4084 100644 --- a/htdocs/langs/es_EC/main.lang +++ b/htdocs/langs/es_EC/main.lang @@ -179,7 +179,6 @@ AmountTTC=Valor (inc. IVA) AmountVAT=Impuesto sobre el Valor MulticurrencyAlreadyPaid=Ya pagado, moneda original. MulticurrencyRemainderToPay=Seguir pagando, moneda de origen -MulticurrencyPaymentAmount=Monto a pagar, moneda de origen MulticurrencyAmountTTC=Valor (inc. impuestos), moneda de origen MulticurrencyAmountVAT=Valor del impuesto, moneda de origen AmountLT1=Valor del impuesto 2 @@ -208,7 +207,6 @@ VATCode=Código de tasa impositiva VATNPR=Tasa de impuesto NPR DefaultTaxRate=Tasa de impuesto predeterminada Average=Promedio -StatusToPay=Pagar RemainToPay=Seguir pagando Module=Módulo/Aplicación Modules=Módulos/Aplicaciones diff --git a/htdocs/langs/es_EC/margins.lang b/htdocs/langs/es_EC/margins.lang new file mode 100644 index 00000000000..c9a6111c6da --- /dev/null +++ b/htdocs/langs/es_EC/margins.lang @@ -0,0 +1,34 @@ +# Dolibarr language file - Source file is en_US - margins +MarginRate=Tasa de margen +MarkRate=Tasa de marca +DisplayMarginRates=Mostrar tasas de margen +DisplayMarkRates=Mostrar las tasas de las marcas +InputPrice=Precio de insumos +margin=Gestión de márgenes de beneficio +margesSetup=Configuración de administración de márgenes de beneficio +MarginDetails=Detalles del margen +ProductMargins=Márgenes del producto +CustomerMargins=Márgenes del cliente +SalesRepresentativeMargins=Márgenes del representante de ventas +UserMargins=Márgenes de usuario +ChooseProduct/Service=Elija un producto o servicio +ForceBuyingPriceIfNull=Forzar la compra/precio de coste al precio de venta si no se define +ForceBuyingPriceIfNullDetails=Si el precio de compra/costo no está definido, y esta opción "ON", el margen será cero en línea (precio de compra/costo = precio de venta), de lo contrario ("OFF"), el margen será igual al valor predeterminado sugerido. +MARGIN_METHODE_FOR_DISCOUNT=Método de margen para descuentos globales +UseDiscountOnTotal=En subtotal +MARGIN_METHODE_FOR_DISCOUNT_DETAILS=Define si un descuento global se trata como un producto, un servicio o sólo en el subtotal para el cálculo del margen. +MARGIN_TYPE=Precio de compra sugerido por defecto para el cálculo del margen +MargeType1=Margen en el mejor precio de proveedor +MargeType2=Margen sobre el precio medio ponderado (WAP) +MargeType3=Margen sobre el precio de coste +MarginTypeDesc=* Margen sobre el mejor precio de compra = Precio de venta - Mejor precio de proveedor definido en la tarjeta del producto
    * Margen sobre el Precio promedio ponderado (WAP) = Precio de venta - Precio promedio ponderado del producto (WAP) o mejor precio del proveedor si WAP aún no está definido
    * Margen on Precio de costo = Precio de venta: precio de costo definido en la tarjeta del producto o WAP si el precio de costo no está definido, o el mejor precio del proveedor si WAP aún no está definido +CostPrice=Precio de coste +UnitCharges=Cargos unitarios +Charges=Cargos +AgentContactType=Tipo de contacto del agente comercial +AgentContactTypeDetails=Defina qué tipo de contacto (vinculado en las facturas) se utilizará para el informe de margen por contacto / dirección. Tenga en cuenta que la lectura de estadísticas de un contacto no es confiable ya que en la mayoría de los casos el contacto puede no estar definido explícitamente en las facturas. +rateMustBeNumeric=La tasa debe ser un valor numérico +markRateShouldBeLesserThan100=La tasa de marca debe ser inferior a 100 +ShowMarginInfos=Mostrar información de margen +CheckMargins=Detalle de márgenes +MarginPerSaleRepresentativeWarning=El informe de margen por usuario utiliza el enlace entre terceros y representantes de ventas para calcular el margen de cada representante de ventas. Debido a que algunas terceras partes pueden no tener un representante de ventas dedicado y algunas terceras partes pueden estar vinculadas a varias, es posible que algunas cantidades no se incluyan en este informe (si no hay un representante de ventas) y algunas pueden aparecer en diferentes líneas (para cada representante de ventas). diff --git a/htdocs/langs/es_EC/members.lang b/htdocs/langs/es_EC/members.lang new file mode 100644 index 00000000000..36bd3d0b1d2 --- /dev/null +++ b/htdocs/langs/es_EC/members.lang @@ -0,0 +1,161 @@ +# Dolibarr language file - Source file is en_US - members +MembersArea=Área de miembros +MemberCard=Tarjeta de miembro +SubscriptionCard=Tarjeta de suscripción +ShowMember=Mostrar tarjeta de miembro +ThirdpartyNotLinkedToMember=Cliente/Proveedor no vinculado a un miembro +MembersTickets=Entradas para miembros +FundationMembers=Miembros de la Fundación +ErrorMemberIsAlreadyLinkedToThisThirdParty=Otro miembro (nombre: %s, inicio de sesión: %s) ya está vinculado a un tercero %s. Quite primero este enlace porque un tercero no puede estar vinculado a un solo miembro (y viceversa). +ErrorUserPermissionAllowsToLinksToItselfOnly=Por razones de seguridad, se le deben otorgar permisos para editar todos los usuarios para poder vincular un miembro a un usuario que no es suyo. +SetLinkToUser=Enlace a un usuario de Dolibarr +SetLinkToThirdParty=Enlace a un tercero de Dolibarr +MembersCards=Tarjetas de visita de los miembros +MembersList=Lista de miembros +MembersListToValid=Lista de proyectos de miembros (a validar) +MembersListValid=Lista de miembros válidos +MembersListUpToDate=Lista de miembros válidos con suscripción actualizada +MembersListNotUpToDate=Lista de miembros válidos con suscripción desactualizada +MembersListResiliated=Lista de miembros terminados +MembersListQualified=Lista de miembros calificados +MenuMembersToValidate=Miembros del draft +MenuMembersUpToDate=Miembros actualizados +MenuMembersNotUpToDate=Miembros fuera de fecha +MenuMembersResiliated=Miembros terminados +MembersWithSubscriptionToReceive=Miembros con suscripción para recibir +MembersWithSubscriptionToReceiveShort=Suscripción para recibir +DateSubscription=Fecha de suscripción +DateEndSubscription=Fecha de finalización de la suscripción +EndSubscription=Suscripción final +SubscriptionId=ID de suscripción +MemberId=Identificación de miembro +MemberTypeId=ID del tipo de miembro +MemberTypeLabel=Etiqueta del tipo de miembro +MemberStatusDraft=Proyecto (necesita ser validado) +MemberStatusActive=Validado (suscripción en espera) +MemberStatusActiveShort=validado +MemberStatusActiveLate=Subscripcion vencida +MemberStatusActiveLateShort=Muerto +MemberStatusPaid=Suscripción actualizada +MemberStatusPaidShort=A hoy +MemberStatusResiliated=Miembro terminado +MemberStatusResiliatedShort=Terminado +MembersStatusToValid=Miembros del draft +MembersStatusResiliated=Miembros terminados +NewCotisation=Nueva contribución +PaymentSubscription=Nuevo pago de contribución +SubscriptionEndDate=Fecha de finalización de la suscripción +MembersTypeSetup=Configuración de tipo de miembro +ConfirmDeleteMemberType=¿Estás seguro de que quieres eliminar este tipo de miembro? +MemberTypeCanNotBeDeleted=El tipo de miembro no se puede eliminar. +NewSubscription=Nueva suscripción +NewSubscriptionDesc=Este formulario le permite registrar su suscripción como un nuevo miembro de la fundación. Si desea renovar su suscripción (si ya es miembro), póngase en contacto con la junta de la fundación en su lugar por correo electrónico %s. +Subscription=Suscripción +Subscriptions=Suscripciones +SubscriptionLate=Tarde +SubscriptionNotReceived=Suscripción nunca recibida +ListOfSubscriptions=Lista de suscripciones +SendCardByMail=Enviar tarjeta por correo electrónico +NoTypeDefinedGoToSetup=No se han definido tipos de miembros. Ir al menú "Tipos de miembros" +WelcomeEMail=Correo electrónico de bienvenida +SubscriptionRequired=Se requiere suscripción +VoteAllowed=Voto permitido +Physical=Natural +Moral=Juridica +MorPhy=Juridica/Natural +ResiliateMember=Terminar un miembro +ConfirmResiliateMember=¿Estás seguro de que quieres terminar este miembro? +ConfirmDeleteMember=¿Está seguro de que desea eliminar este miembro (la eliminación de un miembro eliminará todas sus suscripciones)? +DeleteSubscription=Eliminar una suscripción +ConfirmDeleteSubscription=¿Está seguro de que desea eliminar esta suscripción? +Filehtpasswd=archivo htpasswd +ConfirmValidateMember=¿Estás seguro de que quieres validar a este miembro? +PublicMemberList=Lista de miembros públicos +BlankSubscriptionForm=Formulario de auto-suscripción pública +BlankSubscriptionFormDesc=Dolibarr puede proporcionarle una URL / sitio web público para que los visitantes externos puedan solicitar suscribirse a la fundación. Si se habilita un módulo de pago en línea, también puede proporcionarse automáticamente un formulario de pago. +EnablePublicSubscriptionForm=Habilitar el sitio web público con formulario de suscripción automática +ExportDataset_member_1=Miembros y suscripciones +LastSubscriptionsModified=Últimas %s suscripciones modificadas +Text=Texto +PublicMemberCard=Tarjeta pública miembro +SubscriptionNotRecorded=Suscripción no registrada +AddSubscription=Crear suscripción +ShowSubscription=Mostrar suscripción +SendingAnEMailToMember=Envío de información de correo electrónico a un miembro +SendingEmailOnAutoSubscription=Envío de correo electrónico en el registro automático +SendingEmailOnMemberValidation=Enviando un correo electrónico sobre la validación de un nuevo miembro +SendingEmailOnNewSubscription=Envío de correo electrónico con nueva suscripción +SendingReminderForExpiredSubscription=Envío de recordatorio para suscripciones caducadas +SendingEmailOnCancelation=Enviando correo electrónico sobre cancelación +YourMembershipWasValidated=Su membresía fue validada +YourSubscriptionWasRecorded=Su nueva suscripción fue guardada +YourMembershipWasCanceled=Su membresía fue cancelada +CardContent=Contenido de su tarjeta de miembro +ThisIsContentOfYourMembershipRequestWasReceived=Queremos informarle que se recibió su solicitud de membresía.

    +ThisIsContentOfYourMembershipWasValidated=Queremos informarle que su membresía fue validada con la siguiente información:

    +ThisIsContentOfYourSubscriptionWasRecorded=Queremos informarle que su nueva suscripción fue guardada.

    +ThisIsContentOfSubscriptionReminderEmail=Queremos informarle que su suscripción está a punto de caducar o que ya caducó (__MEMBER_LAST_SUBSCRIPTION_DATE_END__). Esperamos que lo renueves.

    +ThisIsContentOfYourCard=Este es un resumen de la información que tenemos sobre usted. Por favor contáctenos si algo es incorrecto.

    +DescADHERENT_AUTOREGISTER_NOTIF_MAIL_SUBJECT=Asunto del correo electrónico de notificación recibido en caso de autoinscripción de un invitado +DescADHERENT_AUTOREGISTER_NOTIF_MAIL=Contenido del correo electrónico de notificación recibido en caso de autoinscripción de un invitado +DescADHERENT_EMAIL_TEMPLATE_AUTOREGISTER=Plantilla de correo electrónico para usar para enviar correos electrónicos a un miembro en la suscripción automática del miembro +DescADHERENT_EMAIL_TEMPLATE_MEMBER_VALIDATION=Plantilla de correo electrónico para usar para enviar correos electrónicos a un miembro en la validación de miembro +DescADHERENT_EMAIL_TEMPLATE_SUBSCRIPTION=Plantilla de correo electrónico para usar para enviar correos electrónicos a un miembro en una nueva grabación de suscripción +DescADHERENT_EMAIL_TEMPLATE_REMIND_EXPIRATION=Plantilla de correo electrónico para usar para enviar recordatorios por correo electrónico cuando la suscripción esté por caducar +DescADHERENT_EMAIL_TEMPLATE_CANCELATION=Plantilla de correo electrónico para usar para enviar correos electrónicos a un miembro en caso de cancelación de miembro +DescADHERENT_MAIL_FROM=Correo electrónico del remitente para correos electrónicos automáticos +DescADHERENT_ETIQUETTE_TYPE=Formato de la página de etiquetas +DescADHERENT_ETIQUETTE_TEXT=Texto impreso en las hojas de direcciones de los miembros +DescADHERENT_CARD_TYPE=Formato de la página de tarjetas +DescADHERENT_CARD_HEADER_TEXT=Texto impreso en la parte superior de las tarjetas de miembro +DescADHERENT_CARD_TEXT=Texto impreso en las tarjetas de miembro (alinee a la izquierda) +DescADHERENT_CARD_TEXT_RIGHT=Texto impreso en las tarjetas de miembro (alinear a la derecha) +DescADHERENT_CARD_FOOTER_TEXT=Texto impreso en la parte inferior de las tarjetas de miembro +HTPasswordExport=generación de archivos htpassword +MembersAndSubscriptions= Miembros y Suscripciones +MoreActions=Acción complementaria sobre la grabación +MoreActionsOnSubscription=Acción complementaria, sugerida de forma predeterminada al grabar una suscripción +MoreActionBankDirect=Crear una entrada directa en una cuenta bancaria +MoreActionBankViaInvoice=Crear una factura y un pago en cuenta bancaria +MoreActionInvoiceOnly=Crear una factura sin pago +LinkToGeneratedPages=Generar tarjetas de visita +LinkToGeneratedPagesDesc=Esta pantalla le permite generar archivos PDF con tarjetas de visita para todos sus miembros o un miembro en particular. +DocForAllMembersCards=Genere tarjetas de visita para todos los miembros +DocForOneMemberCards=Generar tarjetas de visita para un miembro en particular +DocForLabels=Generar hojas de direcciones +SubscriptionPayment=Pago de suscripción +LastSubscriptionDate=Fecha del último pago de suscripción +LastSubscriptionAmount=Cantidad de la última suscripción +MembersStatisticsByCountries=Estadísticas de los miembros por país +MembersStatisticsByState=Estadísticas de los miembros por estado / provincia +MembersStatisticsByTown=Estadísticas de los miembros por ciudad +MembersStatisticsByRegion=Estadísticas de los miembros por región +NoValidatedMemberYet=No se han encontrado miembros validados +MembersByCountryDesc=Esta pantalla muestra estadísticas de los miembros por países. Gráfico depende sin embargo en el servicio de graficas en línea de Google y está disponible sólo si una conexión a Internet está funcionando. +MembersByStateDesc=Esta pantalla muestra estadísticas sobre los miembros por estado / provincias / cantón. +MembersByTownDesc=Esta pantalla muestra estadísticas sobre los miembros por ciudad. +MembersStatisticsDesc=Elija las estadísticas que desea leer ... +MenuMembersStats=Estadística +LatestSubscriptionDate=Última fecha de suscripción +Public=La información es pública +NewMemberbyWeb=Nuevo miembro añadido. Esperando aprobacion +NewMemberForm=Formulario para nuevos miembros +SubscriptionsStatistics=Estadísticas de suscripciones +NbOfSubscriptions=Número de suscripciones +AmountOfSubscriptions=Cantidad de suscripciones +TurnoverOrBudget=Facturación (para una empresa) o Presupuesto (para una fundación) +DefaultAmount=Cantidad predeterminada de suscripción +CanEditAmount=El visitante puede elegir / editar el importe de su suscripción +MEMBER_NEWFORM_PAYONLINE=Ir a la página de pago en línea integrada +MembersStatisticsByProperties=Estadísticas de miembros por naturaleza +MembersByNature=Esta pantalla muestra estadísticas sobre miembros por naturaleza. +MembersByRegion=Esta pantalla muestra las estadísticas de los miembros por región. +VATToUseForSubscriptions=Tasa del IVA a utilizar para las suscripciones +NoVatOnSubscription=Sin IVA para suscripciones +ADHERENT_PRODUCT_ID_FOR_SUBSCRIPTIONS=Producto utilizado para la línea de suscripción en la factura: %s +NoEmailSentToMember=No se envió ningún correo electrónico al miembro +EmailSentToMember=Correo electrónico enviado a un miembro en %s +SendReminderForExpiredSubscriptionTitle=Enviar recordatorio por correo electrónico para la suscripción caducada +SendReminderForExpiredSubscription=Enviar recordatorio por correo electrónico a los miembros cuando la suscripción está a punto de caducar (el parámetro es el número de días antes del final de la suscripción para enviar el recordatorio. Puede ser una lista de días separados por un punto y coma, por ejemplo, '10; 5; 0; -5 ') +YouMayFindYourInvoiceInThisEmail=Puede encontrar su factura adjunta a este correo electrónico +XMembersClosed=%s miembro(s) cerrado diff --git a/htdocs/langs/es_EC/modulebuilder.lang b/htdocs/langs/es_EC/modulebuilder.lang new file mode 100644 index 00000000000..03aba55c7e3 --- /dev/null +++ b/htdocs/langs/es_EC/modulebuilder.lang @@ -0,0 +1,93 @@ +# Dolibarr language file - Source file is en_US - modulebuilder +ModuleBuilderDesc=Esta herramienta solo debe ser utilizada por usuarios o desarrolladores experimentados. Proporciona utilidades para construir o editar su propio módulo. La documentación para el desarrollo manual alternativo está aquí . +EnterNameOfModuleDesc=Introduzca el nombre del módulo/aplicación para crear sin espacios. Utilice mayúsculas para separar palabras (Por ejemplo: MyModule, EcommerceForShop, SyncWithMySystem...) +EnterNameOfObjectDesc=Introduzca el nombre del objeto a crear sin espacios. Use mayúsculas para separar palabras (Por ejemplo: MyObject, Student, Teacher...). Se generará el archivo de clase CRUD, pero también archivos API, páginas para listar/agregar/editar/eliminar objetos y archivos SQL. +ModuleBuilderDesc2=Ruta donde se generan / editan los módulos (primer directorio para módulos externos definidos en %s): %s +ModuleBuilderDesc4=Un módulo se detecta como 'editable' cuando el archivo %sexiste en la raíz del directorio del módulo +ObjectKey=Clave de objeto +FilesForObjectInitialized=Archivos para el nuevo objeto '%s' inicializado +FilesForObjectUpdated=Archivos del objeto '%s' actualizados (archivos .sql y archivo .class.php) +ModuleBuilderDescdescription=Ingrese aquí toda la información general que describe su módulo. +ModuleBuilderDescspecifications=Puede ingresar aquí una descripción detallada de las especificaciones de su módulo que aún no está estructurada en otras pestañas. Así que tienes a tu alcance todas las reglas a desarrollar. También este contenido de texto se incluirá en la documentación generada (ver la última pestaña). Puede usar el formato Markdown, pero se recomienda usar el formato Asciidoc (comparación entre .md y .asciidoc: http://asciidoctor.org/docs/user-manual/#compared-to-markdown). +ModuleBuilderDescobjects=Defina aquí los objetos que desea administrar con su módulo. Se creará una clase CRO DAO, archivos SQL, página para listar el registro de objetos, para crear/editar/ver un registro y API. +ModuleBuilderDesctriggers=Esta es la vista de los activadores proporcionados por su módulo. Para incluir el código ejecutado cuando se inicia un evento de negocio activado, simplemente edite este archivo. +ModuleBuilderDeschooks=Esta pestaña está dedicada a los ganchos. +ModuleBuilderDescbuildpackage=Puede generar aquí un archivo de paquete "listo para distribuir" (un archivo .zip normalizado) de su módulo y un archivo de documentación "listo para distribuir". Simplemente haga clic en el botón para crear el paquete o el archivo de documentación. +EnterNameOfModuleToDeleteDesc=Puedes borrar tu módulo. ADVERTENCIA: ¡Todos los archivos de codificación del módulo (generados o creados manualmente) Y los datos estructurados y la documentación serán eliminados! +EnterNameOfObjectToDeleteDesc=Puedes borrar un objeto. ADVERTENCIA: ¡Se eliminarán todos los archivos de codificación (generados o creados manualmente) relacionados con el objeto! +BuildPackage=Paquete de construcción +BuildPackageDesc=Puede generar un paquete zip de su aplicación para que esté listo para distribuirlo en cualquier Dolibarr. También puede distribuirlo o venderlo en el mercado como DoliStore.com . +BuildDocumentation=Crear documentación +ModuleIsNotActive=Este módulo no está activado todavía. Vaya a para %s hacerlo en vivo o haga clic aquí: +ModuleIsLive=Este módulo ha sido activado. Cualquier cambio puede romper una función en vivo actual. +DescriptorFile=Archivo de descripción del módulo +ClassFile=Archivo para la clase PHP DAO CRUD +ApiClassFile=Archivo para la clase API de PHP +PageForList=Página de PHP para la lista de registro +PathToModulePackage=Ruta de acceso zip del módulo/paquete de aplicación +PathToModuleDocumentation=Ruta al archivo de la documentación del módulo / aplicación (%s) +SpaceOrSpecialCharAreNotAllowed=No se permiten espacios ni caracteres especiales. +FileNotYetGenerated=Archivo aún no generado +RegenerateMissingFiles=Generar archivos perdidos +ConfirmDeleteProperty=¿Estás seguro de que quieres eliminar la propiedad %s? Esto cambiará el código en la clase de PHP pero también eliminará la columna de la definición de la tabla del objeto. +NotNull=No nulo +SearchAll=Se utiliza para "buscar todos" +FileAlreadyExists=El archivo %s ya existe +TriggersFile=Archivo para el código de activadores +HooksFile=Archivo de código de ganchos +ArrayOfKeyValues=Matriz de key-val +ArrayOfKeyValuesDesc=Conjunto de claves y valores si el campo es una lista combinada con valores fijos +WidgetFile=Archivo de widgets +ReadmeFile=Archivo Léame +ChangeLog=Archivo ChangeLog +TestClassFile=Archivo para la clase de prueba de unidad de PHP +SqlFile=Archivo SQL +PageForLib=Archivo para la biblioteca PHP común +PageForObjLib=Archivo para la biblioteca PHP dedicada al objeto +SqlFileExtraFields=Archivo SQL para atributos complementarios +SqlFileKey=Archivo SQL para las claves +SqlFileKeyExtraFields=Archivo SQL para claves de atributos complementarios +UseAsciiDocFormat=Puede usar el formato Markdown, pero se recomienda usar el formato Asciidoc (omparison entre .md y .asciidoc: http://asciidoctor.org/docs/user-manual/#compared-to-markdown) +NoTrigger=Sin disparador +GoToApiExplorer=Ir a explorador de API +ListOfDictionariesEntries=Lista de entradas de diccionarios +ListOfPermissionsDefined=Lista de permisos definidos +SeeExamples=Ver ejemplos aquí +EnabledDesc=Condición para tener este campo activo (Ejemplos:1 o $conf->global->MYMODULE_MYOPTION) +VisibleDesc=¿Es visible el campo? (Ejemplos: 0=Nunca visible, 1=Visible en la lista y crear / actualizar / ver formularios, 2=Visible solo en la lista, 3=Visible solo en el formulario crear / actualizar / ver (no en la lista), 4=Visible en la lista y actualizar / ver solo el formulario (no crear), 5=Visible solo en el formulario de vista final de la lista (no crear, no actualizar)

    El uso de un valor negativo significa que el campo no se muestra de forma predeterminada en la lista, pero puede seleccionarse para verlo).

    Puede ser una expresión, por ejemplo:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Muestre este campo en documentos PDF compatibles, puede administrar la posición con el campo "Posición".
    Actualmente, conocidos modelos compatibles PDF son: Eratóstenes (orden), espadon (nave), esponja (facturas), cian (propal / cita), Cornas (orden de proveedor)

    Para documento:
    0 = No se ven las
    1 = display
    2 = sólo si no está vacío

    Para las líneas de documentos:
    0 = no se ven las
    1 = muestran en una columna
    3 = display en la columna de descripción de línea después de la descripción
    4 = display en la columna de descripción después de la descripción solo si no está vacía +DisplayOnPdf=Mostrar en PDF +IsAMeasureDesc=¿Se puede acumular el valor de campo para obtener un total en la lista? (Ejemplos: 1 o 0) +SearchAllDesc=¿Se utiliza el campo para realizar una búsqueda desde la herramienta de búsqueda rápida? (Ejemplos: 1 o 0) +SpecDefDesc=Ingrese aquí toda la documentación que desea proporcionar con su módulo que no está definido por otras pestañas. Puede usar .md o mejor, la rica sintaxis .asciidoc. +LanguageDefDesc=Ingrese en estos archivos, toda la clave y la traducción para cada archivo de idioma. +MenusDefDesc=Defina aquí los menús proporcionados por su módulo +DictionariesDefDesc=Defina aquí los diccionarios proporcionados por su módulo +PermissionsDefDesc=Defina aquí los nuevos permisos proporcionados por su módulo +MenusDefDescTooltip=Los menús proporcionados por su módulo / aplicación se definen en la matriz $this->menus en el archivo descriptor del módulo. Puede editar este archivo manualmente o usar el editor incorporado.

    Nota: Una vez definidos (y el módulo reactivado), los menús también son visibles en el editor de menús disponibles para los usuarios administradores en %s. +DictionariesDefDescTooltip=Los diccionarios proporcionados por su módulo / aplicación se definen en la matriz $this->dictionaries en el archivo descriptor del módulo. Puede editar este archivo manualmente o usar el editor incorporado.

    Nota: Una vez definidos (y el módulo reactivado), los diccionarios también son visibles en el área de configuración para los usuarios administradores en %s. +PermissionsDefDescTooltip=Los permisos proporcionados por su módulo / aplicación se definen en la matriz $this->rights en el archivo descriptor del módulo. Puede editar este archivo manualmente o usar el editor incorporado.

    Nota: Una vez definidos (y el módulo reactivado), los permisos son visibles en la configuración de permisos predeterminada %s. +HooksDefDesc=Defina en la propiedad module_parts ['hooks'] , en el descriptor de módulo, el contexto de los ganchos que desea administrar (puede encontrar una lista de contextos mediante una búsqueda en 'initHooks(' en el código central) .
    Edite el archivo gancho para agregar el código de sus funciones enganchadas (las funciones que se conectan se pueden encontrar mediante una búsqueda en 'executeHooks' en el código central). +TriggerDefDesc=Defina en el archivo de activación el código que desea ejecutar para cada evento empresarial ejecutado. +SeeIDsInUse=Consulte ID en uso en su instalación. +SeeReservedIDsRangeHere=Ver el rango de ID reservados +ToolkitForDevelopers=Kit de herramientas para desarrolladores de Dolibarr +TryToUseTheModuleBuilder=Si tiene conocimientos de SQL y PHP, puede usar el asistente de creación de módulos nativos.
    Habilite el módulo %s y use el asistente haciendo clic en el menú superior derecho.
    Advertencia: esta es una función avanzada para desarrolladores, no experimente en su sitio de producción ! +SeeTopRightMenu=Ver en el menú superior derecho +InitStructureFromExistingTable=Construya la estructura de la cadena matriz de una tabla existente +UseAboutPage=Deshabilitar la página acerca de +UseDocFolder=Desactivar la carpeta de documentación. +UseSpecificReadme=Use un archivo Léame específico +RealPathOfModule=Camino real del módulo +WidgetDesc=Puede generar y editar aquí los widgets que se integrarán con su módulo. +UseSpecificEditorName =Use un nombre de editor específico +UseSpecificEditorURL =Use una URL de editor específica +UseSpecificFamily =Use una familia específica +UseSpecificAuthor =Use un autor específico +UseSpecificVersion =Use una versión inicial específica +ModuleMustBeEnabled=El módulo / aplicación debe habilitarse primero +IncludeDocGenerationHelp=Si marca esto, se generará algún código para agregar un cuadro "Generar documento" en el registro. +ShowOnCombobox=Mostrar valor en el cuadro combinado +KeyForTooltip=Clave para información sobre herramientas +ForeignKey=Clave externa +TypeOfFieldsHelp=Tipo de campos:
    varchar(99), doble(24,8), real, texto, html, fecha y hora, marca de tiempo, entero, entero:ClassName:relativepath/to/classfile.class.php[:1[:filter]] ('1' significa que agregamos un botón + después del combo para crear el registro, 'filtro' puede ser 'status=1 AND fk_user = __USER_ID AND entity IN (__SHARED_ENTITIES__)' por ejemplo) diff --git a/htdocs/langs/es_EC/mrp.lang b/htdocs/langs/es_EC/mrp.lang new file mode 100644 index 00000000000..4b2c77a8d0b --- /dev/null +++ b/htdocs/langs/es_EC/mrp.lang @@ -0,0 +1,50 @@ +# Dolibarr language file - Source file is en_US - mrp +MRPDescription=Módulo para gestionar producción y pedidos de fabricación (MO). +MenuBOM=Facturas de material +LatestBOMModified=Últimas listas de materiales modificados %s +LatestMOModified=Últimas órdenes de fabricación %s modificadas +Bom=Facturas de material +BillOfMaterials=Lista de materiales +ListOfBOMs=Lista de listas de materiales - BOM +ListOfManufacturingOrders=Lista de pedidos de fabricación +ProductBOMHelp=Producto para crear con esta BOM.
    Nota: Los productos con la propiedad 'Naturaleza del producto' = 'Materia prima' no son visibles en esta lista. +BOMsNumberingModules=Plantillas de numeración BOM +BOMsModelModule=Plantillas de documentos BOM +MOsNumberingModules=Plantillas de numeración MO +MOsModelModule=Plantillas de documentos MO +FreeLegalTextOnBOMs=Texto libre en el documento de BOM +WatermarkOnDraftBOMs=Marca de agua en el borrador de lista de materiales +FreeLegalTextOnMOs=Texto libre en el documento de MO +WatermarkOnDraftMOs=Marca de agua en borrador MO +ConfirmCloneBillOfMaterials=¿Está seguro de que desea clonar la lista de materiales %s? +ConfirmCloneMo=¿Está seguro de que desea clonar la orden de fabricación %s? +ConsumptionEfficiency=Eficiencia de consumo +ValueOfMeansLoss=Valor de 0.95 significa un promedio de 5%% de pérdida durante la producción +ValueOfMeansLossForProductProduced=El valor de 0.95 significa un promedio de 5%% de pérdida del producto producido +DeleteBillOfMaterials=Eliminar lista de materiales +DeleteMo=Eliminar orden de fabricación +ConfirmDeleteBillOfMaterials=¿Está seguro de que desea eliminar esta lista de materiales? +ConfirmDeleteMo=¿Está seguro de que desea eliminar esta lista de materiales? +QtyToProduce=Cantidad para producir +DateStartPlannedMo=Fecha de inicio prevista +DateEndPlannedMo=Fecha de finalización prevista +ConfirmValidateBom=¿Está seguro de que desea validar la lista de materiales con la referencia %s (podrá utilizarla para crear nuevos pedidos de fabricación) +ConfirmCloseBom=¿Está seguro de que desea cancelar esta lista de materiales (ya no podrá usarla para crear nuevas órdenes de fabricación)? +ConfirmReopenBom=¿Está seguro de que desea volver a abrir esta lista de materiales (podrá usarla para crear nuevos pedidos de fabricación) +QtyFrozen=Cantidad congelada +QuantityFrozen=Cantidad congelada +DisableStockChangeHelp=Cuando se establece este indicador, no hay cambio de existencias en este producto, sea cual sea la cantidad consumida +BOMLine=Línea de BOM +CreateMO=Crear MO +ToConsume=Consumir +ToProduce=Para producir +QtyAlreadyConsumed=Cantidad ya consumida +QtyAlreadyProduced=Cantidad ya producida +ConsumeOrProduce=Consumir o Producir +ConfirmValidateMo=¿Está seguro de que desea validar esta orden de fabricación? +ConfirmProductionDesc=Al hacer clic en '%s', validará el consumo y / o la producción de las cantidades establecidas. Esto también actualizará el stock y registrará movimientos de stock. +AutoCloseMO=Cierre automáticamente la orden de fabricación si se alcanzan cantidades para consumir y producir +ProductQtyToProduceByMO=Quentidad de producto aún por producir por MO abierto +AddNewConsumeLines=Agregar nueva línea para consumir +ProductsToConsume=Productos para consumir +ProductsToProduce=Productos para producir diff --git a/htdocs/langs/es_EC/multicurrency.lang b/htdocs/langs/es_EC/multicurrency.lang new file mode 100644 index 00000000000..5ff0eab3f84 --- /dev/null +++ b/htdocs/langs/es_EC/multicurrency.lang @@ -0,0 +1,18 @@ +# Dolibarr language file - Source file is en_US - multicurrency +ErrorAddRateFail=Error en la tasa agregada +ErrorAddCurrencyFail=Error en la moneda añadida +ErrorDeleteCurrencyFail=Error al eliminar la falla +multicurrency_syncronize_error=Error de sincronización: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Use la fecha del documento para encontrar la tasa de cambio, en lugar de usar la última tasa conocida +multicurrency_useOriginTx=Cuando se crea un objeto a partir de otro, mantenga la tasa original del objeto de origen (de lo contrario, use la última tasa conocida) +CurrencyLayerAccount=API de CurrencyLayer +CurrencyLayerAccount_help_to_synchronize=Debe crear una cuenta en el sitio web %s para usar esta funcionalidad.
    Obtenga su clave API .
    Si usa una cuenta gratuita, no puede cambiar la moneda de origen (USD por defecto).
    Si su moneda principal no es USD, la aplicación lo recalculará automáticamente.

    Está limitado a 1000 sincronizaciones por mes. +multicurrency_appCurrencySource=Moneda de origen +multicurrency_alternateCurrencySource=Moneda de origen alternativa +CurrenciesUsed=Monedas utilizadas +CurrenciesUsed_help_to_add=Agregue las diferentes monedas y tasas que necesita utilizar en sus propuestas, pedidos, etc. +rate=Tasa +MulticurrencyReceived=Recibido, moneda original +MulticurrencyRemainderToTake=Importe restante, moneda original. +MulticurrencyPaymentAmount=Monto a pagar, moneda de origen +AmountToOthercurrency=Cantidad a (en la moneda de la cuenta receptora) diff --git a/htdocs/langs/es_EC/oauth.lang b/htdocs/langs/es_EC/oauth.lang new file mode 100644 index 00000000000..bcc7139dc28 --- /dev/null +++ b/htdocs/langs/es_EC/oauth.lang @@ -0,0 +1,23 @@ +# Dolibarr language file - Source file is en_US - oauth +ConfigOAuth=Configuración de OAuth +OAuthServices=Servicios de OAuth +ManualTokenGeneration=Generación de tokens manual +TokenManager=Administrador de tokens +IsTokenGenerated=¿El token se genero? +NoAccessToken=Ningún token de acceso guardado en la base de datos local +HasAccessToken=Se generó un token y se guardó en la base de datos local +ToCheckDeleteTokenOnProvider=Haga clic aquí para comprobar/eliminar la autorización guardada por%s Proveedor de OAuth +RequestAccess=Haga clic aquí para solicitar/renovar el acceso y reciba un nuevo token para guardar +DeleteAccess=Haga clic aquí para eliminar token +UseTheFollowingUrlAsRedirectURI=Use la siguiente URL como URI de redireccionamiento al crear sus credenciales con su proveedor de OAuth: +ListOfSupportedOauthProviders=Ingrese las credenciales proporcionadas por su proveedor de OAuth2. Aquí solo se enumeran los proveedores de OAuth2 compatibles. Estos servicios pueden ser utilizados por otros módulos que necesitan autenticación OAuth2. +SeePreviousTab=Ver pestaña anterior +OAuthIDSecret=OAuth ID y secreto +TOKEN_REFRESH=Actualizar Token Presente +TOKEN_EXPIRE_AT=El token expira en +TOKEN_DELETE=Eliminar el token guardado +OAUTH_GOOGLE_NAME=Servicio de Google OAuth +OAUTH_GOOGLE_ID=ID de Google de OAuth +OAUTH_GOOGLE_DESC=Vaya a esta página y luego a "Credenciales" para crear credenciales de OAuth +OAUTH_GITHUB_NAME=Servicio OAuth GitHub +OAUTH_GITHUB_DESC=Vaya a esta página y luego "Registre una nueva aplicación" para crear credenciales de OAuth diff --git a/htdocs/langs/es_EC/opensurvey.lang b/htdocs/langs/es_EC/opensurvey.lang new file mode 100644 index 00000000000..95e4234b4f1 --- /dev/null +++ b/htdocs/langs/es_EC/opensurvey.lang @@ -0,0 +1,35 @@ +# Dolibarr language file - Source file is en_US - opensurvey +OrganizeYourMeetingEasily=Organice sus reuniones y encuestas fácilmente. Primero seleccione el tipo de encuesta ... +OpenSurveyArea=Área de Encuestas +AddACommentForPoll=Puedes agregar un comentario a la encuesta ... +AddComment=Agregar comentario +ToReceiveEMailForEachVote=Reciba un correo electrónico para cada voto +TypeDate=Tipo de fecha +OpenSurveyStep2=Seleccione sus fechas entre los días libres (gris). Los días seleccionados son verdes. Puede anular la selección de un día seleccionado previamente haciendo clic nuevamente en él. +TheBestChoice=La mejor opción actualmente es +TheBestChoices=Las mejores opciones actualmente son +OpenSurveyHowTo=Si acepta votar en esta encuesta, debe dar su nombre, elegir los valores que mejor le convengan y validar con el botón más al final de la línea. +ConfirmRemovalOfPoll=¿Seguro que quieres eliminar esta encuesta (y todos los votos) +UrlForSurvey=URL para comunicarse para obtener acceso directo a la encuesta +PollOnChoice=Está creando una encuesta para realizar una elección múltiple para una encuesta. Primero escriba todas las opciones posibles para su encuesta: +CheckBox=Casilla de verificación simple +YesNoList=Lista (vacío/si/no) +PourContreList=Lista (vacío/por/contra) +AddNewColumn=Agregar nueva columna +TitleChoice=Etiqueta de elección +ExportSpreadsheet=Exportar hoja de cálculo de resultados +NbOfVoters=No. de encuestados +PollAdminDesc=Se le permite cambiar todas las líneas de votación de esta encuesta con el botón "Editar". También puede eliminar una columna o una línea con% s. También puede agregar una nueva columna con% s. +5MoreChoices=5 más opciones +YouAreInivitedToVote=Estás invitado a votar por esta encuesta +VoteNameAlreadyExists=Este nombre ya se utilizó para esta encuesta +AddEndHour=Añadir hora final +NoCommentYet=Aún no hay comentarios en esta encuesta +CanSeeOthersVote=Los votantes pueden ver el voto de otras personas +SelectDayDesc=Para cada día seleccionado, puede elegir, o no, las horas de reunión en el siguiente formato:
    - vacío,
    - "8h", "8H" u "8:00" para indicar la hora de inicio de una reunión,
    - "8- 11 "," 8h-11h "," 8H-11H "u" 8: 00-11: 00 "para indicar la hora de inicio y finalización de una reunión,
    -" 8h15-11h15 "," 8H15-11H15 "u" 8: 15-11: 15 "para lo mismo pero con minutos. +ErrorOpenSurveyFillFirstSection=No has llenado la primera sección de la creación de la encuesta +ErrorInsertingComment=Se ha producido un error al insertar tu comentario. +MoreChoices=Ingrese más opciones para los votantes +SurveyExpiredInfo=La encuesta ha sido cerrada o el plazo de votación ha expirado. +EmailSomeoneVoted=%s ha llenado una línea. \nPuede encontrar su encuesta en el enlace: \n%s +UserMustBeSameThanUserUsedToVote=Debes haber votado y usar el mismo nombre de usuario que el que solías votar, para publicar un comentario diff --git a/htdocs/langs/es_EC/orders.lang b/htdocs/langs/es_EC/orders.lang new file mode 100644 index 00000000000..942acb41d5b --- /dev/null +++ b/htdocs/langs/es_EC/orders.lang @@ -0,0 +1,142 @@ +# Dolibarr language file - Source file is en_US - orders +OrdersArea=Área de pedidos de clientes +SuppliersOrdersArea=Área de pedidos de compras +OrderCard=Tarjeta de pedido +OrderId=Solicitar ID +Order=Orden +PdfOrderTitle=Orden +OrderLine=Fila para ordenar +OrderDateShort=Fecha de orden +OrderToProcess=Orden para procesar +NewOrder=Nueva orden +NewOrderSupplier=Nueva orden de compra +ToOrder=Hacer orden +MakeOrder=Hacer orden +SupplierOrder=Orden de compra +SuppliersOrders=Ordenes de compra +SuppliersOrdersRunning=Pedidos de compra actuales +CustomerOrder=Pedidos +CustomersOrders=Ordenes de venta +CustomersOrdersRunning=Pedidos actuales +CustomersOrdersAndOrdersLines=Pedidos y detalles de pedidos +OrdersDeliveredToBill=Pedidos entregados a la factura +OrdersToBill=Pedidos entregados +OrdersInProcess=Pedidos en proceso +OrdersToProcess=Pedidos para procesar +SuppliersOrdersToProcess=Órdenes de compra para procesar +SuppliersOrdersAwaitingReception=Órdenes de compra en espera de recepción +StatusOrderCanceledShort=Cancelado +StatusOrderSentShort=En proceso +StatusOrderSent=Envío en proceso +StatusOrderOnProcessShort=Ordenado +StatusOrderProcessedShort=Procesada +StatusOrderDelivered=Entregado +StatusOrderDeliveredShort=Entregado +StatusOrderToBillShort=Entregado +StatusOrderToProcessShort=Para procesar +StatusOrderCanceled=Cancelado +StatusOrderDraft=Proyecto (necesita ser validado) +StatusOrderValidated=validado +StatusOrderOnProcess=Pedido - Recepción en espera +StatusOrderOnProcessWithValidation=Pedido - Recepción o validación en espera +StatusOrderProcessed=Procesada +StatusOrderToBill=Entregado +ShippingExist=Existe un envío +QtyOrdered=Cant. ordenada +ProductQtyInDraft=Cantidad del producto en proyectos de pedido +ProductQtyInDraftOrWaitingApproved=Cantidad del producto en proyectos o pedidos aprobados, aún no solicitados +MenuOrdersToBill=Órdenes entregadas +ShipProduct=Producto de la nave +RefuseOrder=Orden de rechazo +ApproveOrder=Aprobar la orden +Approve2Order=Aprobar el pedido (segundo nivel) +ValidateOrder=Validar pedido +UnvalidateOrder=Anular la orden +DeleteOrder=Eliminar orden +CancelOrder=Cancelar orden +OrderReopened=Orden %s reabrir +AddPurchaseOrder=Crear orden de compra +AddToDraftOrders=Añadir al proyecto de orden +OrdersOpened=Órdenes a procesar +NoDraftOrders=Ningún proyecto de órdenes +NoOrder=Sin orden +LastOrders=Últimos pedidos %s +LastCustomerOrders=Últimos pedidos %s +LastSupplierOrders=Últimas %s órdenes de compra +LastModifiedOrders=Últimos %s pedidos modificados +AllOrders=Todas las órdenes +NbOfOrders=Numero de ordenes +OrdersStatistics=Estadísticas de Order +OrdersStatisticsSuppliers=Estadísticas de orden de compra +AmountOfOrdersByMonthHT=Cantidad de pedidos por mes (sin impuestos) +ListOfOrders=Lista de pedidos +ConfirmCloseOrder=¿Está seguro de que desea configurar este pedido para entregado? Una vez que se entrega un pedido, se puede configurar para facturarse. +ConfirmDeleteOrder=¿Seguro que quieres eliminar este pedido? +ConfirmValidateOrder=¿Está seguro de que desea validar este pedido con el nombre %s? +ConfirmUnvalidateOrder=¿Seguro que desea restaurar la orden %s para borrar el estado? +ConfirmCancelOrder=¿Seguro que desea cancelar este pedido? +ConfirmMakeOrder=¿Seguro que desea confirmar que realizó esta orden en %s? +GenerateBill=Generar factura +ClassifyShipped=Clasificar entregado +DraftOrders=Proyectos de órdenes +DraftSuppliersOrders=Borrador de órdenes de compra +OnProcessOrders=En órdenes de proceso +RefOrder=Ref. orden +RefCustomerOrder=Ref. orden para el cliente +RefOrderSupplier=Referencia orden para el vendedor +RefOrderSupplierShort=Referencia orden al vendedor +SendOrderByMail=Enviar pedido por correo +ActionsOnOrder=Eventos bajo pedido +NoArticleOfTypeProduct=Ningún artículo del tipo 'producto', por lo que no se puede enviar ningún artículo para este pedido +AuthorRequest=Solicitar autor +UserWithApproveOrderGrant=Usuarios concedidos con el permiso de "aprobar órdenes". +PaymentOrderRef=Pago del pedido %s +ConfirmCloneOrder=¿Está seguro de que desea clonar esta orden %s? +DispatchSupplierOrder=Recepción de orden de compra %s +FirstApprovalAlreadyDone=Primera aprobación ya realizada +SecondApprovalAlreadyDone=Segunda aprobación ya realizada +SupplierOrderReceivedInDolibarr=Orden de compra %s recibida %s +SupplierOrderSubmitedInDolibarr=Orden de compra %s enviada +SupplierOrderClassifiedBilled=Conjunto de ordenes de compra %s facturado +OtherOrders=Otras órdenes +TypeContact_commande_internal_SALESREPFOLL=Representante de seguimiento del pedido +TypeContact_commande_internal_SHIPPING=Envío de seguimiento representativo +TypeContact_commande_external_BILLING=Contacto de factura de cliente +TypeContact_commande_external_SHIPPING=Contacto de envío del cliente +TypeContact_commande_external_CUSTOMER=Orden de seguimiento del contacto del cliente +TypeContact_order_supplier_internal_SALESREPFOLL=Orden de compra de seguimiento representativa +TypeContact_order_supplier_internal_SHIPPING=Envío de seguimiento representativo +TypeContact_order_supplier_external_BILLING=Contacto de factura del vendedor +TypeContact_order_supplier_external_SHIPPING=Contacto de envío del proveedor +TypeContact_order_supplier_external_CUSTOMER=Orden de seguimiento del contacto del proveedor +Error_OrderNotChecked=No hay pedidos para facturar seleccionados +OrderByEMail= Email +PDFEinsteinDescription=Un modelo de pedido completo (antigua implementación de la plantilla Eratosthene) +PDFEratostheneDescription=Un modelo de orden completo +PDFEdisonDescription=Un modelo de pedido simple +PDFProformaDescription=Una plantilla completa de factura Proforma +CreateInvoiceForThisCustomer=Ordenes de factura +NoOrdersToInvoice=No hay pedidos facturables +CloseProcessedOrdersAutomatically=Clasifique "Procesado" todos los pedidos seleccionados. +OrderCreation=Creación de órdenes +Ordered=Ordenado +OrderFail=Se ha producido un error durante la creación de los pedidos. +ToBillSeveralOrderSelectCustomer=Para crear una factura para varios pedidos, haga clic primero en el cliente, luego elija "%s". +OptionToSetOrderBilledNotEnabled=La opción del flujo de trabajo del módulo, para establecer el pedido en 'Facturado' automáticamente cuando se valida la factura, no está habilitada, por lo que deberá establecer el estado de los pedidos en 'Facturado' manualmente después de que se haya generado la factura. +CloseReceivedSupplierOrdersAutomatically=Cierre el pedido al estado "%s" automáticamente si se reciben todos los productos. +SetShippingMode=Establecer modo de envío +StatusSupplierOrderCanceledShort=Cancelado +StatusSupplierOrderSentShort=En proceso +StatusSupplierOrderSent=Envío en proceso +StatusSupplierOrderOnProcessShort=Ordenado +StatusSupplierOrderProcessedShort=Procesada +StatusSupplierOrderDelivered=Entregado +StatusSupplierOrderDeliveredShort=Entregado +StatusSupplierOrderToBillShort=Entregado +StatusSupplierOrderToProcessShort=Para procesar +StatusSupplierOrderCanceled=Cancelado +StatusSupplierOrderDraft=Proyecto (necesita ser validado) +StatusSupplierOrderOnProcess=Pedido - Recepción en espera +StatusSupplierOrderOnProcessWithValidation=Pedido - Recepción o validación en espera +StatusSupplierOrderProcessed=Procesada +StatusSupplierOrderToBill=Entregado diff --git a/htdocs/langs/es_EC/other.lang b/htdocs/langs/es_EC/other.lang new file mode 100644 index 00000000000..9aeec1f879e --- /dev/null +++ b/htdocs/langs/es_EC/other.lang @@ -0,0 +1,198 @@ +# Dolibarr language file - Source file is en_US - other +SecurityCode=Código de seguridad +Tools=Herramientas +TMenuTools=Herramientas +ToolsDesc=Todas las herramientas no incluidas en otras entradas del menú se agrupan aquí.
    Se puede acceder a todas las herramientas a través del menú de la izquierda. +Birthday=Cumpleaños +BirthdayAlertOn=alerta de cumpleaños activa +BirthdayAlertOff=alerta de cumpleaños inactiva +MonthOfInvoice=Mes (número 1-12) de la fecha de la factura +TextMonthOfInvoice=Mes (texto) de la fecha de la factura +PreviousMonthOfInvoice=Mes anterior (número 1-12) de la fecha de la factura +ZipFileGeneratedInto=Archivo comprimido generado en %s. +DocFileGeneratedInto=Archivo de Doc generado en %s. +MessageOK=Mensaje en la página de devolución para un pago validado +MessageKO=Mensaje en la página de devolución para un pago cancelado +ContentOfDirectoryIsNotEmpty=El contenido de este directorio no está vacío. +DeleteAlsoContentRecursively=Marque para eliminar todo el contenido recursivamente +PoweredBy=Energizado por +NextYearOfInvoice=Año siguiente de la fecha de la factura +GraphInBarsAreLimitedToNMeasures=Los gráficos se limitan a las medidas %s en el modo 'Barras'. En su lugar, se seleccionó automáticamente el modo 'Líneas'. +AtLeastOneMeasureIsRequired=Se requiere al menos 1 campo para medir +AtLeastOneXAxisIsRequired=Se requiere al menos 1 campo para el eje X +LatestBlogPosts=Últimas publicaciones de blog +Notify_ORDER_VALIDATE=Pedido de ventas validado +Notify_ORDER_SENTBYMAIL=Pedido de ventas enviado por correo +Notify_ORDER_SUPPLIER_SENTBYMAIL=Orden de compra enviada por correo electrónico +Notify_ORDER_SUPPLIER_VALIDATE=Orden de compra registrada +Notify_ORDER_SUPPLIER_APPROVE=Orden de compra aprobada +Notify_ORDER_SUPPLIER_REFUSE=Orden de compra rechazada +Notify_PROPAL_VALIDATE=Propuesta de cliente validada +Notify_PROPAL_CLOSE_SIGNED=Propuesta de cliente cerrada firmada +Notify_PROPAL_CLOSE_REFUSED=Propuesta de cliente cerrada rechazada +Notify_PROPAL_SENTBYMAIL=Propuesta comercial enviada por correo +Notify_WITHDRAW_TRANSMIT=Retirada de la transmisión +Notify_WITHDRAW_CREDIT=Retiro de crédito +Notify_WITHDRAW_EMIT=Realizar el retiro +Notify_COMPANY_CREATE=Clientes/Proveedores creados +Notify_COMPANY_SENTBYMAIL=Correos enviados desde tarjeta de terceros +Notify_BILL_VALIDATE=Factura del cliente validada +Notify_BILL_UNVALIDATE=Factura del cliente no validada +Notify_BILL_CANCEL=Factura del cliente cancelada +Notify_BILL_SENTBYMAIL=Factura del cliente enviada por correo +Notify_BILL_SUPPLIER_VALIDATE=Factura de proveedor validada +Notify_BILL_SUPPLIER_PAYED=Factura del proveedor pagada +Notify_BILL_SUPPLIER_SENTBYMAIL=Factura de proveedor enviada por correo +Notify_BILL_SUPPLIER_CANCELED=Factura de proveedor cancelada +Notify_CONTRACT_VALIDATE=Contrato validado +Notify_FICHINTER_VALIDATE=Intervención validada +Notify_FICHINTER_ADD_CONTACT=Contacto añadido a la intervención +Notify_FICHINTER_SENTBYMAIL=Intervención enviada por correo +Notify_SHIPPING_VALIDATE=Envío validado +Notify_SHIPPING_SENTBYMAIL=Envío enviado por correo +Notify_MEMBER_VALIDATE=Miembro validado +Notify_MEMBER_SUBSCRIPTION=Miembro suscripto +Notify_MEMBER_RESILIATE=Miembro terminado +Notify_MEMBER_DELETE=Miembro eliminado +Notify_PROJECT_CREATE=Creación del proyecto +Notify_TASK_DELETE=Tarea borrada +Notify_HOLIDAY_VALIDATE=Deja la solicitud validada (se requiere aprobación) +Notify_HOLIDAY_APPROVE=Dejar la solicitud aprobada +SeeModuleSetup=Consulte la configuración del módulo%s +NbOfAttachedFiles=Número de archivos/documentos adjuntos +TotalSizeOfAttachedFiles=Tamaño total de archivos/documentos adjuntos +MaxSize=Talla máxima +AttachANewFile=Adjuntar un nuevo archivo/documento +LinkedObject=Objeto enlazado +NbOfActiveNotifications=Número de notificaciones (número de correos electrónicos del destinatario) +PredefinedMailTest=Se trata de un correo de prueba enviado a __EMAIL __.\nLas dos líneas están separadas por un retorno de carro.\n\n__SIGNATURE__ +PredefinedMailTestHtml=Se trata de un
    test
    correo (la palabra prueba debe estar en negrita). Las dos líneas están separadas por un retorno de carro.
    __SIGNATURE__ +PredefinedMailContentContract=aa__PERSONALIZED __\n\n__SIGNATURE__ +PredefinedMailContentSendInvoice=__(Hola)__\n\nEncuentre la factura __REF__ adjunta\n\n__ONLINE_PAYMENT_TEXT_AND_URL__\n\n__(Sinceramente)__\n\n__ FIRMA DEL USUARIO__ +PredefinedMailContentSendInvoiceReminder=__(Hola)__\n\nNos gustaría recordarle que la factura __REF__ parece no haberse pagado. Se adjunta una copia de la factura como recordatorio.\n\n__ONLINE_PAYMENT_TEXT_AND_URL__\n\n__(Sinceramente)__\n\n__ FIRMA DEL USUARIO__ +PredefinedMailContentSendProposal=__(Hola)__\n\nEncuentre la propuesta comercial __REF__ adjunta\n\n\n__(Sinceramente)__\n\n__ FIRMA DEL USUARIO__ +PredefinedMailContentSendSupplierProposal=__(Hola)__\n\nPor favor encuentre la solicitud de precio __REF__ adjunta\n\n\n__(Sinceramente)__\n\n__ FIRMA DEL USUARIO__ +PredefinedMailContentSendOrder=__(Hola)__\n\nPor favor encuentre la orden __REF__ adjunta\n\n\n__(Sinceramente)__\n\n__ FIRMA DEL USUARIO__ +PredefinedMailContentSendSupplierOrder=__(Hola)__\n\nPor favor encuentre nuestro pedido __REF__ adjunto\n\n\n__(Sinceramente)__\n\n__ FIRMA DEL USUARIO__ +PredefinedMailContentSendSupplierInvoice=__(Hola)__\n\nEncuentre la factura __REF__ adjunta\n\n\n__(Sinceramente)__\n\n__ FIRMA DEL USUARIO__ +PredefinedMailContentSendShipping=__(Hola)__\n\nPor favor encuentre el envío __REF__ adjunto\n\n\n__(Sinceramente)__\n\n__ FIRMA DEL USUARIO__ +PredefinedMailContentSendFichInter=__(Hola)__\n\nPor favor encuentre la intervención __REF__ adjunta\n\n\n__(Sinceramente)__\n\n__ FIRMA DEL USUARIO__ +PredefinedMailContentThirdparty=__CONTACTCIVNAME __\n\n__PERSONALIZED __\n\n__SIGNATURE__ +PredefinedMailContentContact=aa__PERSONALIZED __\n\n__SIGNATURE__ +PredefinedMailContentUser=aa__PERSONALIZED __\n\n__SIGNATURE__ +DemoDesc=Dolibarr es un ERP/CRM compacto que soporta varios módulos de negocio. Una demostración que muestra todos los módulos no tiene sentido ya que este escenario nunca ocurre (varios cientos disponibles). Por lo tanto, varios perfiles de demostración están disponibles. +ChooseYourDemoProfil=Elige el perfil de demostración que mejor se adapte a tus necesidades ... +ChooseYourDemoProfilMore=...o crear su propio perfil (selección manual de módulos) +DemoFundation=Administrar miembros de una fundación +DemoFundation2=Administrar miembros y cuenta bancaria de una fundación +DemoCompanyServiceOnly=Empresa o servicio de venta independiente solamente +DemoCompanyShopWithCashDesk=Administrar una tienda con una caja +DemoCompanyAll=Empresa con múltiples actividades (todos los módulos principales) +ModifiedBy=Modificado por%s +ValidatedBy=Validado por%s +ClosedBy=Cerrado por%s +CreatedById=ID de usuario que creó +ModifiedById=ID de usuario que realizó el último cambio +ValidatedById=ID de usuario que validó +CanceledById=ID de usuario que canceló +ClosedById=ID de usuario que cerró +CreatedByLogin=Usuario que creó +ModifiedByLogin=Usuario que realizó el último cambio +ValidatedByLogin=Usuario que validó +CanceledByLogin=Inicio de sesión de usuario que canceló +ClosedByLogin=Usuario que cerró +FileWasRemoved=Se ha eliminado el archivo%s +DirWasRemoved=Se ha eliminado el directorio%s +FeatureNotYetAvailable=Característica aún no disponible en la versión actual +FeaturesSupported=Funciones admitidas +Width=Anchura +Height=Altura +Depth=Profundidad +Top=Parte superior +Bottom=Fondo +WeightUnitg=gramo +LengthUnitm=metro +SurfaceUnitinch2=en² +SizeUnitm=metro +BugTracker=Localizador de bichos +SendNewPasswordDesc=Este formulario le permite solicitar una nueva contraseña. Se enviará a su dirección de correo electrónico.
    El cambio se hará efectivo una vez que haga clic en el enlace de confirmación en el correo electrónico.
    Compruebe su bandeja de entrada. +BackToLoginPage=Volver a la página de inicio de sesión +AuthenticationDoesNotAllowSendNewPassword=El modo de autenticación es %s.
    En este modo, Dolibarr no puede saber ni cambiar su contraseña.
    Póngase en contacto con el administrador del sistema si desea cambiar su contraseña. +EnableGDLibraryDesc=Instale o active la biblioteca GD en su instalación de PHP para usar esta opción. +ProfIdShortDesc=Prof Id%s es una información que depende de un tercer país. Por ejemplo, para el país %s, es el código %s. +DolibarrDemo=Demostración de ERP/CRM de Dolibarr +StatsByNumberOfUnits=Estadísticas de suma de cantidad de productos/servicios +StatsByNumberOfEntities=Estadísticas en número de entidades referentes (n.° de factura, o pedido ...) +NumberOfProposals=Número de propuestas +NumberOfCustomerOrders=Número de pedidos de ventas +NumberOfCustomerInvoices=Número de facturas de clientes +NumberOfSupplierProposals=Número de propuestas de proveedores +NumberOfSupplierOrders=Numero de ordenes de compra +NumberOfSupplierInvoices=Número de facturas de proveedor +NumberOfContracts=Numero de contratos +NumberOfMos=Número de pedidos de fabricación. +NumberOfUnitsProposals=Número de unidades en las propuestas +NumberOfUnitsCustomerOrders=Número de unidades en pedidos de ventas +NumberOfUnitsCustomerInvoices=Número de unidades en facturas de clientes +NumberOfUnitsSupplierProposals=Número de unidades en propuestas de proveedores +NumberOfUnitsSupplierOrders=Número de unidades en pedidos de compra +NumberOfUnitsSupplierInvoices=Número de unidades en facturas de proveedor +NumberOfUnitsContracts=Número de unidades en contratos +NumberOfUnitsMos=Número de unidades para producir en pedidos de fabricación. +EMailTextInterventionAddedContact=Se te ha asignado una nueva intervención %s. +EMailTextInterventionValidated=La intervención%s ha sido validada. +EMailTextInvoiceValidated=La factura %s ha sido validada. +EMailTextInvoicePayed=Se ha pagado la factura %s. +EMailTextProposalValidated=La propuesta %s ha sido validada. +EMailTextProposalClosedSigned=La propuesta %s ha sido cerrada y firmada. +EMailTextOrderApproved=El pedido %s ha sido aprobado. +EMailTextOrderApprovedBy=El pedido %s ha sido aprobado por %s. +EMailTextOrderRefused=El pedido %s ha sido rechazado. +EMailTextOrderRefusedBy=El pedido %s ha sido rechazado por %s. +EMailTextHolidayValidated=Dejar solicitud %s ha sido validado. +EMailTextHolidayApproved=Dejar solicitud %s ha sido aprobado. +ImportedWithSet=Conjunto de datos de importación +ResizeDesc=Introduzca nueva anchura O nueva altura. Ratio se mantendrá durante el cambio de tamaño ... +NewSizeAfterCropping=Nuevo tamaño después del recorte +DefineNewAreaToPick=Defina el área nueva en la imagen para recoger (clic izquierdo en la imagen y luego arrastrar hasta llegar a la esquina opuesta) +CurrentInformationOnImage=Esta herramienta fue diseñada para ayudarte a redimensionar o recortar una imagen. Esta es la información sobre la imagen editada actual. +YouReceiveMailBecauseOfNotification=Recibirá este mensaje porque su correo electrónico se ha agregado a la lista de destinos para ser informado de eventos particulares en%s software de%s. +YouReceiveMailBecauseOfNotification2=Este evento es el siguiente: +ThisIsListOfModules=Esta es una lista de módulos preseleccionados por este perfil de demostración (sólo los módulos más comunes son visibles en esta demo). Edita esto para tener una demostración más personalizada y haz clic en "Inicio". +UseAdvancedPerms=Utilice los permisos avanzados de algunos módulos +SelectAColor=Elige un color +AddFiles=Agregar archivos +StartUpload=Iniciar la subida +CancelUpload=Cancelar la subida +FileIsTooBig=Los archivos son demasiado grandes +PleaseBePatient=Por favor sea paciente... +ResetPassword=Restablecer la contraseña +RequestToResetPasswordReceived=Se recibió una solicitud para cambiar su contraseña. +NewKeyIs=Esta es tu nueva clave para ingresar +NewKeyWillBe=Su nueva clave para acceder al software será +ClickHereToGoTo=Haga clic aquí para ir a%s +YouMustClickToChange=Sin embargo, primero debe hacer clic en el siguiente enlace para validar este cambio de contraseña +ForgetIfNothing=Si no solicitó este cambio, simplemente olvide este correo electrónico. Sus credenciales se mantienen seguras. +IfAmountHigherThan=Si la cantidad es mayor que %s +SourcesRepository=Repositorio de fuentes +PassEncoding=Codificación de contraseña +PermissionsAdd=Permisos agregados +YourPasswordMustHaveAtLeastXChars=Su contraseña debe tener al menos %s caracteres +MissingIds=IDs que faltan +ThirdPartyCreatedByEmailCollector=Tercero creado por el recopilador de correo electrónico desde el correo electrónico MSGID %s +ContactCreatedByEmailCollector=Contacto / dirección creada por el recopilador de correo electrónico del correo electrónico MSGID %s +ProjectCreatedByEmailCollector=Proyecto creado por el recopilador de correo electrónico de correo electrónico MSGID %s +TicketCreatedByEmailCollector=Ticket creado por el recopilador de correo electrónico desde el correo electrónico MSGID %s +ExportsArea=Área de Exportaciones +LibraryUsed=Biblioteca utilizada +LibraryVersion=Versión de la biblioteca +NoExportableData=No hay datos exportables (no se han cargado módulos con datos exportables o se han perdido permisos) +WebsiteSetup=Configuración del sitio web del módulo +WEBSITE_IMAGEDesc=Ruta relativa de los medios de imagen. Puede mantener esto vacío ya que rara vez se usa (puede ser usado por contenido dinámico para mostrar una miniatura en una lista de publicaciones de blog). Use __WEBSITE_KEY__ en la ruta si la ruta depende del nombre del sitio web (por ejemplo: image / __ WEBSITE_KEY __ / stories / myimage.png). +WEBSITE_KEYWORDS=Palabras claves +LinesToImport=Líneas para importar +RequestDuration=Duración de la solicitud. +PopuProp=Productos / Servicios por popularidad en Propuestas +PopuCom=Productos / Servicios por popularidad en Pedidos +ProductStatistics=Estadísticas de productos / servicios +NbOfQtyInOrders=Cantidad en pedidos diff --git a/htdocs/langs/es_EC/paybox.lang b/htdocs/langs/es_EC/paybox.lang new file mode 100644 index 00000000000..4e13080316d --- /dev/null +++ b/htdocs/langs/es_EC/paybox.lang @@ -0,0 +1,24 @@ +# Dolibarr language file - Source file is en_US - paybox +PayBoxSetup=Configuración del módulo PayBox +PayBoxDesc=Este módulo ofrece páginas para permitir el pago en Paybox por los clientes. Esto se puede utilizar para un pago gratuito o para un pago en un objeto particular Dolibarr (factura, pedido, ...) +FollowingUrlAreAvailableToMakePayments=Las siguientes URL están disponibles para ofrecer una página a un cliente para realizar un pago en objetos de Dolibarr +WelcomeOnPaymentPage=Bienvenido a nuestro servicio de pago en línea. +ThisScreenAllowsYouToPay=Esta pantalla le permite realizar un pago en línea a%s. +ThisIsInformationOnPayment=Esta es información sobre el pago a hacer +ToComplete=Completar +YourEMail=Correo electrónico para recibir confirmación de pago +Creditor=Acreedor +PayBoxDoPayment=Paga con Paybox +YouWillBeRedirectedOnPayBox=Se le redirigirá a la página segura de Paybox para ingresar su información de tarjeta de crédito. +Continue=Siguiente +SetupPayBoxToHavePaymentCreatedAutomatically=Configure su Paybox con url %s para que el pago se cree automáticamente cuando sea validado por Paybox. +YourPaymentHasBeenRecorded=Esta página confirma que se ha registrado su pago. +YourPaymentHasNotBeenRecorded=Su pago NO ha sido registrado y la transacción ha sido cancelada. Gracias. +InformationToFindParameters=Ayuda para encontrar la información de tu cuenta de%s +PAYBOX_CGI_URL_V2=URL del módulo CGI de Paybox para el pago +CSSUrlForPaymentForm=URL de estilo de hoja CSS para el formulario de pago +NewPayboxPaymentReceived=Nuevo pago de Paybox recibido +NewPayboxPaymentFailed=Nuevo pago de Paybox probado pero fallido +PAYBOX_PAYONLINE_SENDEMAIL=Notificación por correo electrónico después del intento de pago (exitoso o fallido) +PAYBOX_PBX_RANG=Valor para PBX Rang +PAYBOX_PBX_IDENTIFIANT=Valor para ID de PBX diff --git a/htdocs/langs/es_EC/paypal.lang b/htdocs/langs/es_EC/paypal.lang new file mode 100644 index 00000000000..f32e57aad14 --- /dev/null +++ b/htdocs/langs/es_EC/paypal.lang @@ -0,0 +1,27 @@ +# Dolibarr language file - Source file is en_US - paypal +PaypalDesc=Este módulo permite el pago de los clientes a través de PayPal. Esto se puede usar para un pago ad-hoc o para un pago relacionado con un objeto Dolibarr (factura, pedido, ...) +PaypalOrCBDoPayment=Pague con PayPal (tarjeta o PayPal) +PaypalDoPayment=Pagar con PayPal +PAYPAL_API_SANDBOX=Modo de prueba/sandbox +PAYPAL_API_USER=Nombre de usuario de API +PAYPAL_API_PASSWORD=Contraseña de la API +PAYPAL_API_SIGNATURE=Firma de la API +PAYPAL_SSLVERSION=Curl Versión SSL +PAYPAL_API_INTEGRAL_OR_PAYPALONLY=Ofrecer pago "integral" (tarjeta de crédito + PayPal) o solo "PayPal" +ThisIsTransactionId=Este es id de transacción: %s +PAYPAL_ADD_PAYMENT_URL=Incluya la URL de pago de PayPal cuando envíe un documento por correo electrónico +NewOnlinePaymentFailed=Nuevo pago en línea intentado pero fallo +ONLINE_PAYMENT_SENDEMAIL=Dirección de correo electrónico para notificaciones después de cada intento de pago (para éxito y fracaso) +ReturnURLAfterPayment=Volver URL después del pago +ValidationOfOnlinePaymentFailed=No se pudo validar el pago en línea +SetExpressCheckoutAPICallFailed=Falló la llamada a la API de SetExpressCheckout. +DoExpressCheckoutPaymentAPICallFailed=Falló la llamada a la API de DoExpressCheckoutPayment. +ShortErrorMessage=Mensaje de error corto +ErrorSeverityCode=Código de error severo +OnlinePaymentSystem=Sistema de pago en línea +PaypalLiveEnabled=Modo "en vivo" de PayPal habilitado (de lo contrario, modo de prueba / sandbox) +PaypalImportPayment=Importar pagos de PayPal +PostActionAfterPayment=Publicar acciones después de los pagos +ARollbackWasPerformedOnPostActions=Se realizó una reversión en todas las acciones de publicación. Debe completar las acciones de publicación manualmente si son necesarias. +ValidationOfPaymentFailed=La validación del pago ha fallado +PayPalBalance=Crédito de PayPal diff --git a/htdocs/langs/es_EC/printing.lang b/htdocs/langs/es_EC/printing.lang new file mode 100644 index 00000000000..2be03e63e39 --- /dev/null +++ b/htdocs/langs/es_EC/printing.lang @@ -0,0 +1,41 @@ +# Dolibarr language file - Source file is en_US - printing +Module64000Desc=Habilitar sistema de impresión directa +PrintingSetup=Configuración del sistema de impresión directa +PrintingDesc=Este módulo agrega un botón Imprimir a varios módulos para permitir que los documentos se impriman directamente en una impresora sin necesidad de abrir el documento en otra aplicación. +MenuDirectPrinting=Empleos de Direct Printing +PrintingDriverDesc=Variables de configuración para el controlador de impresión. +ListDrivers=Lista de conductores +PrintTestDesc=Lista de impresoras. +FileWasSentToPrinter=Se ha enviado el archivo%s a la impresora +NoActivePrintingModuleFound=No hay un controlador activo para imprimir el documento. Verifique la configuración del módulo%s. +PleaseSelectaDriverfromList=Seleccione un controlador de la lista. +PleaseConfigureDriverfromList=Configure el controlador seleccionado de la lista. +SetupDriver=Configuración del controlador +TargetedPrinter=Impresora orientada +PRINTGCP_TOKEN_ACCESS=Token de Google Cloud Print OAuth +PrintGCPDesc=Este controlador permite enviar documentos directamente a una impresora utilizando Google Cloud Print. +GCP_displayName=Nombre para mostrar +GCP_Id=ID de la impresora +GCP_OwnerName=Nombre del dueño +GCP_State=Estado de la impresora +GCP_connectionStatus=Estado en línea +GCP_Type=Tipo de impresora +PrintIPPDesc=Este controlador permite el envío de documentos directamente a una impresora. Requiere un sistema Linux con CUPS instalado. +PRINTIPP_HOST=Servidor de impresión +PRINTIPP_USER=Iniciar sesión +NoDefaultPrinterDefined=No se ha definido ninguna impresora predeterminada +DefaultPrinter=Impresora predeterminada +IPP_Uri=Impresora Uri +IPP_Name=Nombre de la impresora +IPP_State=Estado de la impresora +IPP_State_reason=Razón del Estado +IPP_State_reason1=Razón estatal1 +IPP_Media=Medios de impresión +IPP_Supported=Tipo de medio +DirectPrintingJobsDesc=Esta página muestra los trabajos de impresión que se encuentran para las impresoras disponibles. +GoogleAuthNotConfigured=Google OAuth no se ha configurado. Habilite el módulo OAuth y configure un ID / secreto de Google. +GoogleAuthConfigured=Las credenciales de OAuth de Google se encontraron en la configuración del módulo OAuth. +PrintingDriverDescprintgcp=Variables de configuración para el controlador de impresión Google Cloud Print. +PrintingDriverDescprintipp=Variables de configuración para imprimir con el controlador CUPS +PrintTestDescprintgcp=Lista de impresoras para Google Cloud Print. +PrintTestDescprintipp=Lista de impresoras con soporte para CUPS diff --git a/htdocs/langs/es_EC/productbatch.lang b/htdocs/langs/es_EC/productbatch.lang new file mode 100644 index 00000000000..347913cbe2c --- /dev/null +++ b/htdocs/langs/es_EC/productbatch.lang @@ -0,0 +1,19 @@ +# Dolibarr language file - Source file is en_US - productbatch +ManageLotSerial=Utilice el número de lote/serie +ProductStatusOnBatch=Sí (se requiere lote/serie) +ProductStatusNotOnBatch=No (lote/serie no utilizado) +atleast1batchfield=Fecha de entrega o Fecha de caducidad o Lote/Número de serie +batch_number=Lote/Número de serie +EatByDate=Fecha de entrega +SellByDate=Fecha de caducidad +DetailBatchNumber=Detalles de la serie/Lote +printBatch=Lote/Serie: %s +printEatby=Entrega: %s +printSellby=Vendido-por: %s +printQty=Cantidad: %d +AddDispatchBatchLine=Agregar una línea para el envío de la vida útil +WhenProductBatchModuleOnOptionAreForced=Cuando el módulo Lote/Serial está activado, la disminución automática de stock se ve obligada a "Disminuir existencias reales en la validación de envío" y el modo de aumento automático se fuerza a "Aumentar las existencias reales en el envío manual a los almacenes" y no se puede editar. Se pueden definir otras opciones como desee. +ProductDoesNotUseBatchSerial=Este producto no utiliza el número de lote/serie +ProductLotSetup=Configuración del módulo lote/serie +ShowCurrentStockOfLot=Mostrar el stock actual de producto/lote +ShowLogOfMovementIfLot=Mostrar el registro de los movimientos de producto/lote diff --git a/htdocs/langs/es_EC/products.lang b/htdocs/langs/es_EC/products.lang new file mode 100644 index 00000000000..8117b924284 --- /dev/null +++ b/htdocs/langs/es_EC/products.lang @@ -0,0 +1,234 @@ +# Dolibarr language file - Source file is en_US - products +ProductRef=Producto ref. +ProductLabel=Etiqueta del producto +ProductLabelTranslated=Etiqueta del producto traducido +ProductDescriptionTranslated=Descripción del producto traducido +ProductNoteTranslated=Nota de producto traducida +ProductServiceCard=Tarjeta de productos/servicios +ProductId=ID del producto/servicio +ProductVatMassChange=Actualización global del IVA +ProductVatMassChangeDesc=¡Esta herramienta actualiza la tasa de IVA definida en TODOS productos y servicios! +MassBarcodeInit=Iniciación de código de barras masivo +MassBarcodeInitDesc=Esta página puede usarse para inicializar un código de barras en objetos que no tienen código de barras definido. Compruebe antes de que la configuración del código de barras del módulo esté completa. +ProductAccountancyBuyCode=Código de contabilidad (compra) +ProductAccountancyBuyIntraCode=Código contable (compra intracomunitaria) +ProductAccountancyBuyExportCode=Código de contabilidad (importación de compra) +ProductAccountancySellCode=Código de contabilidad (venta) +ProductsOnPurchase=Productos a la venta +ProductsOnSaleOnly=Productos para la venta solamente +ProductsOnPurchaseOnly=Productos para la compra solamente +ProductsNotOnSell=Productos no para la venta y no para la compra +ProductsOnSellAndOnBuy=Productos para la venta y para la compra +ServicesOnPurchase=Servicios de compra +ServicesOnSaleOnly=Servicios para la venta solamente +ServicesOnPurchaseOnly=Servicios para la compra solamente +ServicesNotOnSell=Servicios no a la venta y no a la compra +ServicesOnSellAndOnBuy=Servicios para la venta y para la compra +LastModifiedProductsAndServices=Últimos productos / servicios modificados %s +LastRecordedServices=Últimos %s servicios grabados +MenuStocks=Dispuesto +Stocks=Stocks y ubicación (almacén) de productos +OnBuy=Para comprar +NotOnSell=No para la venta +ProductStatusNotOnSell=No para la venta +ProductStatusNotOnSellShort=No para la venta +ProductStatusOnBuy=Para comprar +ProductStatusNotOnBuy=No para la compra +ProductStatusOnBuyShort=Para comprar +ProductStatusNotOnBuyShort=No para la compra +UpdateVAT=Actualizar IVA +UpdateDefaultPrice=Actualizar precio predeterminado +UpdateLevelPrices=Actualizar precios para cada nivel +SellingPriceHT=Precio de venta (sin impuestos) +SellingPriceTTC=Precio de venta (impuestos incluidos) +CostPriceDescription=Este campo de precio (sin impuestos) se puede utilizar para almacenar la cantidad promedio que este producto le cuesta a su empresa. Puede ser cualquier precio que calcule usted mismo, por ejemplo, a partir del precio promedio de compra más el costo promedio de producción y distribución. +CostPriceUsage=Este valor podría utilizarse para el cálculo del margen. +SoldAmount=Cantidad vendida +PurchasedAmount=Cantidad comprada +MinPrice=Min. precio de venta +EditSellingPriceLabel=Editar etiqueta de precio de venta +CantBeLessThanMinPrice=El precio de venta no puede ser inferior al mínimo permitido para este producto (%s sin impuestos). Este mensaje también puede aparecer si escribe un descuento demasiado importante. +ErrorProductAlreadyExists=Ya existe un producto con la referencia %s. +ErrorProductBadRefOrLabel=Valor incorrecto para referencia o etiqueta. +ErrorProductClone=Se produjo un problema al intentar clonar el producto o servicio. +ErrorPriceCantBeLowerThanMinPrice=Error, el precio no puede ser inferior al precio mínimo. +SupplierRef=SKU del proveedor +ProductsAndServicesArea=Área de productos y servicios +ProductsArea=Área de producto +ServicesArea=Área de servicios +ListOfStockMovements=Lista de movimientos de stock +SupplierCard=Tarjeta de vendedor +SetDefaultBarcodeType=Establecer el tipo de código de barras +NoteNotVisibleOnBill=Nota (no visible en facturas, propuestas...) +ServiceLimitedDuration=Si el producto es un servicio con duración limitada: +MultiPricesAbility=Múltiples segmentos de precios por producto / servicio (cada cliente está en un segmento de precios) +MultiPricesNumPrices=Número de precios +AssociatedProductsAbility=Activar productos virtuales (kits) +AssociatedProducts=Productos virtuales +AssociatedProductsNumber=Número de productos que componen este producto virtual +ParentProductsNumber=Número de producto de embalaje principal +ParentProducts=Productos para los padres +IfZeroItIsNotUsedByVirtualProduct=Si 0, este producto no es utilizado por ningún producto virtual +KeywordFilter=Filtro de palabras clave +CategoryFilter=Filtro de categoría +ProductToAddSearch=Buscar producto para agregar +NoMatchFound=No se encontraron coincidencias +ListOfProductsServices=Lista de productos/servicios +ProductAssociationList=Lista de productos / servicios que son componente(s) de este producto/kit virtual +ProductParentList=Lista de productos/servicios virtuales con este producto como un componente +ErrorAssociationIsFatherOfThis=Uno del producto seleccionado es padre con el producto actual +ConfirmDeleteProduct=¿Está seguro de que desea eliminar este producto/servicio? +ProductDeleted=Producto/Servicio "%s" eliminado de la base de datos. +ExportDataset_produit_1=Productos +DeleteProductLine=Eliminar línea de productos +ConfirmDeleteProductLine=¿Está seguro de que desea eliminar esta línea de productos? +QtyMin=Min. Cantidad de compra +PriceQtyMin=Precio cantidad min. +PriceQtyMinCurrency=Precio (moneda) para esta cantidad. (sin descuento) +VATRateForSupplierProduct=Tasa de IVA (para este vendedor / producto) +DiscountQtyMin=Descuento por esta cantidad. +NoPriceDefinedForThisSupplier=No hay precio / cantidad definida para este vendedor / producto +NoSupplierPriceDefinedForThisProduct=No hay precio / cantidad de proveedor definido para este producto +PredefinedProductsToSell=Producto Predefinido +PredefinedServicesToSell=Servicio Predefinido +PredefinedProductsAndServicesToSell=productos/servicios predefinidos para vender +PredefinedProductsToPurchase=Producto predefinido para compra +PredefinedProductsAndServicesToPurchase=Productos/servicios predefinidos para comprar. +NotPredefinedProducts=productos/servicios no predefinidos +GenerateThumb=Generar el pulgar +ServiceNb=Servicio #%s +ListProductServiceByPopularity=Lista de productos/servicios por popularidad +ListProductByPopularity=Lista de productos por popularidad +ListServiceByPopularity=Lista de servicios por popularidad +ConfirmCloneProduct=¿Está seguro de que desea clonar el producto o servicio %s? +CloneContentProduct=Clonar toda la información principal del producto/servicio. +CloneCategoriesProduct=Clonar etiquetas / categorías vinculadas +CloneCompositionProduct=Clonar producto / servicio virtual +CloneCombinationsProduct=Variantes del producto clon +ProductIsUsed=Este producto se utiliza +NewRefForClone=Árbitro. de nuevo producto/servicio +CustomerPrices=Precios de los clientes +SuppliersPrices=Precios del proveedor +SuppliersPricesOfProductsOrServices=Precios de proveedor (de productos o servicios) +CustomCode=Código de Aduanas / Productos / HS +Nature=Naturaleza del producto (material / acabado) +g=gramo +m=metro +unitD=Dia +unitFT=pie +unitIN2=en² +ProductCodeModel=Modelo de referencia del producto +ServiceCodeModel=Plantilla de referencia de servicio +AlwaysUseNewPrice=Utilice siempre el precio actual del producto/servicio +AlwaysUseFixedPrice=Utilizar el precio fijo +PriceByQuantity=Diferentes precios por cantidad +DisablePriceByQty=Deshabilitar precios por cantidad +PriceByQuantityRange=Rango Cantidad +MultipriceRules=Reglas del segmento de precios +UseMultipriceRules=Utilice las reglas de segmento de precios (definidas en la configuración del módulo del producto) para calcular automáticamente los precios de todos los demás segmentos de acuerdo con el primer segmento +KeepEmptyForAutoCalculation=Manténgase vacío para que esto se calcule automáticamente de peso o volumen de productos +VariantRefExample=Ejemplos: COL, TAMAÑO +VariantLabelExample=Ejemplos: color, tamaño +ProductsOrServiceMultiPrice=Precios de clientes (de productos o servicios, precios múltiples) +ProductSellByQuarterHT=Volumen de ventas trimestral antes de impuestos +ServiceSellByQuarterHT=Volumen de ventas de los servicios trimestralmente antes de impuestos +Quarter1=1er. Trimestre +Quarter2=2do. Trimestre +Quarter3=3er. Trimestre +Quarter4=4to. Trimestre +BarCodePrintsheet=Imprimir código de barras +PageToGenerateBarCodeSheets=Con esta herramienta, puede imprimir hojas de etiquetas de códigos de barras. Elija el formato de su página de calcomanías, el tipo de código de barras y el valor del código de barras, luego haga clic en el botón %s. +NumberOfStickers=Número de pegatinas a imprimir en la página +PrintsheetForOneBarCode=Imprimir varias pegatinas para un código de barras +BuildPageToPrint=Generar página para imprimir +FillBarCodeTypeAndValueManually=Rellene el código de barras y el valor manualmente. +FillBarCodeTypeAndValueFromProduct=Rellene el tipo de código de barras y el valor del código de barras de un producto. +FillBarCodeTypeAndValueFromThirdParty=Rellene el tipo de código de barras y el valor del código de barras de un cliente/proveedor. +DefinitionOfBarCodeForProductNotComplete=La definición del tipo o valor del código de barras no está completa para el producto %s. +DefinitionOfBarCodeForThirdpartyNotComplete=Definición de tipo o valor de código de barras no completo para terceros %s. +BarCodeDataForThirdparty=Información de código de barras de terceros %s: +ResetBarcodeForAllRecords=Define el valor del código de barras para todos los registros (esto también restablecerá el valor del código de barras ya definido con nuevos valores) +PriceByCustomer=Diferentes precios para cada cliente +PriceCatalogue=Un precio de venta único por producto/servicio +PricingRule=Reglas para los precios de venta. +AddCustomerPrice=Añadir precio por cliente +ForceUpdateChildPriceSoc=Establecer el mismo precio en las filiales de clientes +PriceByCustomerLog=Registro de precios anteriores del cliente +MinimumPriceLimit=El precio mínimo no puede ser inferior a %s +PriceExpressionEditor=Editor de expresiones de precios +PriceExpressionSelected=Expresión de precio seleccionada +PriceExpressionEditorHelp1=precio = 2 + 2 o "2 + 2" para establecer el precio. Utilizar ; separar las expresiones +PriceExpressionEditorHelp2=Puede acceder a ExtraFields con variables como #extrafield_myextrafieldkey # y variables globales con #global_mycode # +PriceExpressionEditorHelp3=Tanto en el producto / servicio como en los precios del proveedor hay disponibles estas variables:
    #tva_tx# #localtax1_tx# #localtax2_tx# #weight# #length# #surface# #price_min# +PriceExpressionEditorHelp4=Solo en precio de producto / servicio: #supplier_min_price#
    Solo en precios de proveedor: #supplier_quantity# and #supplier_tva_tx# +PriceMode=Modo de precio +PriceNumeric=Numero +ComposedProductIncDecStock=Aumentar/Disminuir el stock en el cambio de padres +ComposedProduct=Productos para niños +MinCustomerPrice=Precio mínimo de compra +DynamicPriceConfiguration=Configuración dinámica de precios +DynamicPriceDesc=Puede definir fórmulas matemáticas para calcular los precios del Cliente o Proveedor. Dichas fórmulas pueden usar todos los operadores matemáticos, algunas constantes y variables. Puede definir aquí las variables que desea utilizar. Si la variable necesita una actualización automática, puede definir la URL externa para permitir que Dolibarr actualice el valor automáticamente. +AddUpdater=Añadir actualizador +VariableToUpdate=Variable para actualizar +GlobalVariableUpdaterType0=Datos JSON +GlobalVariableUpdaterHelp0=Analiza los datos JSON de la URL especificada, VALUE especifica la ubicación del valor relevante, +GlobalVariableUpdaterHelpFormat0=Formato de la solicitud {"URL": "http://example.com/urlofjson", "VALUE": "array1, array2, targetvalue"} +GlobalVariableUpdaterType1=Datos de WebService +GlobalVariableUpdaterHelp1=Analiza los datos de WebService desde la URL especificada, NS especifica el espacio de nombres, VALUE especifica la ubicación del valor relevante, DATA debe contener los datos a enviar y METHOD es el método WS llamante +GlobalVariableUpdaterHelpFormat1=El formato de la solicitud es {"URL": "http://example.com/urlofws", "VALUE": "array, targetvalue", "NS": "http://example.com/urlofns", "METHOD" : "myWSMethod", "DATA": {"tu": "datos", "para": "enviar"}} +PropalMergePdfProductActualFile=Los archivos se utilizan para agregar en PDF Azur son/es +PropalMergePdfProductChooseFile=Seleccionar archivos PDF +IncludingProductWithTag=Incluye producto/servicio con etiqueta +DefaultPriceRealPriceMayDependOnCustomer=Precio predeterminado, el precio real puede depender del cliente +NbOfQtyInProposals=Cantidad en las propuestas +ClinkOnALinkOfColumn=Haga clic en un enlace de la columna %s para obtener una vista detallada ... +ProductsOrServicesTranslations=Traducciones de productos / servicios +TranslatedLabel=Etiqueta traducida +TranslatedDescription=Descripción traducida +TranslatedNote=Notas traducidas +WeightUnits=Unidad de peso +VolumeUnits=Unidad de volumen +WidthUnits=Unidad de ancho +LengthUnits=Unidad de longitud +HeightUnits=Unidad de altura +SurfaceUnits=Unidad de superficie +SizeUnits=Unidad de tamaño +ConfirmDeleteProductBuyPrice=¿Seguro que quieres eliminar este precio de compra? +UseProductFournDesc=Agregue una función para definir las descripciones de los productos definidos por los proveedores, además de las descripciones para los clientes. +ProductSupplierDescription=Descripción del vendedor del producto +UseProductSupplierPackaging=Utilice el embalaje según los precios del proveedor (recalcule las cantidades según el conjunto de envases según el precio del proveedor al agregar / actualizar la línea en los documentos del proveedor) +PackagingForThisProduct=Embalaje +QtyRecalculatedWithPackaging=La cantidad de la línea se recalculó de acuerdo con el embalaje del proveedor. +VariantAttributes=Atributos variantes +ProductAttributes=Atributos variantes para los productos +ProductAttributeName=Atributo de variante %s +ProductAttributeDeleteDialog=¿Seguro que desea eliminar este atributo? Todos los valores se eliminarán +ProductAttributeValueDeleteDialog=¿Seguro que desea eliminar el valor "%s" con la referencia "%s" de este atributo? +ProductCombinationDeleteDialog=¿Seguro que quieres eliminar la variante del producto "%s"? +ProductCombinationAlreadyUsed=Se ha producido un error al eliminar la variante. Compruebe que no se está utilizando en ningún objeto +PropagateVariant=Propagación de variantes +HideProductCombinations=Ocultar productos variantes en el selector de productos +EditProductCombination=Variante de edición +EditProductCombinations=Edición de variantes +SelectCombination=Seleccionar combinación +Features=Caracteristicas +PriceImpact=Impacto en los precios +WeightImpact=Impacto de peso +ErrorCreatingProductAttributeValue=Se ha producido un error al crear el valor del atributo. Podría ser porque ya existe un valor existente con esa referencia +ProductCombinationGeneratorWarning=Si continúa, antes de generar nuevas variantes, todas las anteriores serán eliminadas. Los ya existentes se actualizarán con los nuevos valores +TooMuchCombinationsWarning=Generar un montón de variantes puede dar lugar a CPU de alta, uso de memoria y Dolibarr no es capaz de crearlos. Habilitar la opción "%s" puede ayudar a reducir el uso de memoria. +DoNotRemovePreviousCombinations=No elimine las variantes anteriores +ErrorDeletingGeneratedProducts=Se produjo un error al intentar eliminar variantes de producto existentes +NbOfDifferentValues=No. de valores diferentes +NbProducts=Número de productos +HideChildProducts=Ocultar productos variantes +ShowChildProducts=Mostrar productos variantes +NoEditVariants=Vaya a la tarjeta del producto principal y edite el impacto del precio de las variantes en la pestaña de variantes +ConfirmCloneProductCombinations=¿Desea copiar todas las variantes del producto en el otro producto padre con la referencia dada? +ErrorCopyProductCombinations=Se produjo un error al copiar las variantes del producto +ErrorDestinationProductNotFound=Producto de destino no encontrado +ErrorProductCombinationNotFound=Variante del producto no encontrada +ActionAvailableOnVariantProductOnly=Acción solo disponible en la variante de producto +ProductsPricePerCustomer=Precios de productos por cliente +ProductSupplierExtraFields=Atributos adicionales (precios de proveedor) +DeleteLinkedProduct=Eliminar el producto hijo vinculado a la combinación diff --git a/htdocs/langs/es_EC/projects.lang b/htdocs/langs/es_EC/projects.lang new file mode 100644 index 00000000000..c6862d814da --- /dev/null +++ b/htdocs/langs/es_EC/projects.lang @@ -0,0 +1,190 @@ +# Dolibarr language file - Source file is en_US - projects +ProjectRef=Proyecto ref. +ProjectId=Id del proyecto +ProjectLabel=Etiqueta del proyecto +ProjectsArea=Área de Proyectos +SharedProject=Todos +PrivateProject=Contactos del proyecto +ProjectsImContactFor=Proyectos en el que explícitamente soy un contacto +AllAllowedProjects=Todo el proyecto que puedo leer (mio + público) +MyProjectsDesc=Esta vista está limitada a los proyectos para los que se le asignaron +ProjectsPublicDesc=Esta vista presenta todos los proyectos que se le permite leer. +TasksOnProjectsPublicDesc=Esta vista presenta todas las tareas de los proyectos que se le permite leer. +ProjectsPublicTaskDesc=Esta vista presenta todos los proyectos y tareas que se le permite leer. +ProjectsDesc=Esta vista presenta todos los proyectos (los permisos de usuario le otorgan permiso para ver todo). +TasksOnProjectsDesc=Esta vista presenta todas las tareas de todos los proyectos (los permisos de usuario le otorgan permiso para ver todo). +MyTasksDesc=Esta vista se limita a proyectos o tareas para los que se le asignaron +OnlyOpenedProject=Sólo los proyectos abiertos son visibles (los proyectos en borrador o estado cerrado no son visibles). +TasksPublicDesc=Esta vista presenta todos los proyectos y tareas que se le permite leer. +TasksDesc=Esta vista presenta todos los proyectos y tareas (los permisos de usuario le otorgan permiso para ver todo). +AllTaskVisibleButEditIfYouAreAssigned=Todas las tareas para proyectos calificados son visibles, pero puede ingresar solo el timepo para la tarea asignada al usuario seleccionado. Si necesita ingresar tiempo en la tarea debe asignarle un usuario. +OnlyYourTaskAreVisible=Sólo las tareas asignadas a usted son visibles. Asigne la tarea a sí mismo si no está visible y necesita introducir tiempo en ella. +ImportDatasetTasks=Tareas de los proyectos +ConfirmDeleteAProject=¿Está seguro de que desea eliminar este proyecto? +ConfirmDeleteATask=¿Seguro que desea eliminar esta tarea? +OpportunitiesStatusForOpenedProjects=Cantidad de proyectos abiertos por estado +OpportunitiesStatusForProjects=Cantidad de proyectos por estado. +ShowProject=Mostrar proyecto +SetProject=Establecer proyecto +NoProject=Ningún proyecto definido o propiedad +NbOfProjects=Numero de proyectos +NbOfTasks=Numero de tareas +TimeSpent=Tiempo usado +TimeSpentByYou=Tiempo pasado por usted +TimeSpentByUser=Tiempo empleado por el usuario +TimesSpent=Tiempo usado +TaskId=ID de tarea +RefTask=Tarea ref. +LabelTask=Etiqueta de tarea +TaskTimeSpent=Tiempo dedicado a las tareas +TasksOnOpenedProject=Tareas sobre proyectos abiertos +NewTimeSpent=Tiempo usado +MyTimeSpent=Mi tiempo usado +BillTime=Facturar el tiempo utilizado +BillTimeShort=Tiempo a facturar +TaskDateStart=Fecha de inicio de la tarea +TaskDateEnd=Fecha de finalización de la tarea +TaskDescription=Descripción de la tarea +AddTimeSpent=Crear tiempo +AddHereTimeSpentForDay=Añadir aquí el tiempo dedicado a este día/tarea +Activities=Tareas / actividades +MyProjectsArea=Mis proyectos +ProgressDeclared=Progreso declarado +TheReportedProgressIsLessThanTheCalculatedProgressionByX=El progreso declarado es menos %s que la progresión calculada +TheReportedProgressIsMoreThanTheCalculatedProgressionByX=El progreso declarado es más %s que la progresión calculada +ProgressCalculated=Progreso calculado +Time=Hora +ListOfTasks=Lista de tareas +GoToListOfTimeConsumed=Ir a la lista de tiempo consumido +ListProposalsAssociatedProject=Listado de las propuestas comerciales relacionadas con el proyecto. +ListOrdersAssociatedProject=Listado de pedidos de cliente relacionados con el proyecto. +ListInvoicesAssociatedProject=Listado de facturas de clientes relacionadas con el proyecto. +ListPredefinedInvoicesAssociatedProject=Lista de facturas de plantillas de clientes relacionadas con el proyecto. +ListSupplierOrdersAssociatedProject=Lista de órdenes de compra relacionadas con el proyecto. +ListSupplierInvoicesAssociatedProject=Lista de facturas de proveedores relacionadas con el proyecto. +ListContractAssociatedProject=Listado de contratos relacionados con el proyecto. +ListShippingAssociatedProject=Listado de envíos relacionados con el proyecto. +ListFichinterAssociatedProject=Listado de intervenciones relacionadas con el proyecto. +ListExpenseReportsAssociatedProject=Listado de informes de gastos relacionados con el proyecto. +ListDonationsAssociatedProject=Listado de donaciones relacionadas con el proyecto. +ListVariousPaymentsAssociatedProject=Lista de pagos varios relacionados con el proyecto. +ListSalariesAssociatedProject=Listado de pagos de sueldos relacionados con el proyecto. +ListActionsAssociatedProject=Listado de eventos relacionados con el proyecto. +ListMOAssociatedProject=Lista de pedidos de fabricación relacionados con el proyecto. +ListTaskTimeUserProject=Lista de tiempo consumido en las tareas del proyecto +ListTaskTimeForTask=Mostrar el tiempo invertido en la tarea +ActivityOnProjectToday=Actividad en proyecto hoy +ActivityOnProjectYesterday=Actividad en proyecto ayer +ActivityOnProjectThisWeek=Actividad en proyecto esta semana +ActivityOnProjectThisMonth=Actividad en proyecto este mes +ActivityOnProjectThisYear=Actividad en proyecto este año +ChildOfProjectTask=Hijo del proyecto/tarea +ChildOfTask=Tarea relacionada +TaskHasChild=La tarea tiene subcategorias +NotOwnerOfProject=No propietario de este proyecto privado +CantRemoveProject=Este proyecto no se puede quitar ya que es referenciado por otros objetos (factura, pedidos u otros). Consulte la pestaña referentes. +ConfirmValidateProject=¿Está seguro de que desea validar este proyecto? +ConfirmCloseAProject=¿Estás seguro de que quieres cerrar este proyecto? +AlsoCloseAProject=También cierre el proyecto (manténgalo abierto si todavía necesita seguir las tareas de producción en él) +ReOpenAProject=Proyecto abierto +ConfirmReOpenAProject=¿Está seguro de que desea volver a abrir este proyecto? +ActionsOnProject=Eventos en el proyecto +YouAreNotContactOfProject=Usted no es un contacto de este proyecto privado +DeleteATimeSpent=Eliminar el tiempo pasado +ConfirmDeleteATimeSpent=¿Está seguro de que desea eliminar este tiempo pasado? +DoNotShowMyTasksOnly=Ver también tareas que no me han sido asignadas +ShowMyTasksOnly=Ver sólo las tareas asignadas a mí +TaskRessourceLinks=Contactos de tarea +LinkedToAnotherCompany=Vinculado a terceros +TaskIsNotAssignedToUser=Tarea no asignada al usuario. Utilice el botón '%s' para asignar tarea ahora. +ErrorTimeSpentIsEmpty=El tiempo que pasa está vacío +ThisWillAlsoRemoveTasks=Esta acción también eliminará todas las tareas del proyecto (%s tareas en este momento) y todas las entradas de tiempo gastado. +IfNeedToUseOtherObjectKeepEmpty=Si algunos objetos (factura, pedido, ...), pertenecientes a otro tercero, deben estar vinculados al proyecto a crear, mantenerlo vacío para que el proyecto sea de terceros. +CloneTasks=Clonar tareas +CloneContacts=Contactos del clon +CloneNotes=Clonar notas +CloneProjectFiles=El proyecto Clone se unió a los archivos +CloneTaskFiles=Clonar tarea(s) se unieron a los archivos (si tarea(s) clonado) +CloneMoveDate=Actualizar las fechas de proyecto/tareas a partir de ahora? +ConfirmCloneProject=¿Está seguro de clonar este proyecto? +ProjectReportDate=Cambiar las fechas de las tareas según la fecha de inicio del nuevo proyecto +ErrorShiftTaskDate=Imposible cambiar la fecha de la tarea de acuerdo con la fecha de inicio del nuevo proyecto +ProjectCreatedInDolibarr=Proyecto%s created +ProjectModifiedInDolibarr=Proyecto%s modificado +TaskCreatedInDolibarr=Tarea%s creada +TaskModifiedInDolibarr=Tarea%s modificada +TaskDeletedInDolibarr=Se eliminó la tarea%s +OpportunityStatus=Estado de clientes potenciales +OpportunityStatusShort=Estado de clientes potenciales +OpportunityProbability=Probabilidad de clientes potenciales +OpportunityProbabilityShort=Probabilidad de plomo. +OpportunityAmount=Cantidad de clientes potenciales +OpportunityAmountShort=Cantidad de clientes potenciales +OpportunityWeightedAmount=Cantidad ponderada de oportunidad +OpportunityWeightedAmountShort=Opp. cantidad ponderada +OpportunityAmountAverageShort=Cantidad de plomo promedio +OpportunityAmountWeigthedShort=Cantidad de plomo ponderada +WonLostExcluded=Ganado/perdido excluido +TypeContact_project_internal_PROJECTLEADER=Líder del proyecto +TypeContact_project_external_PROJECTLEADER=Líder del proyecto +TypeContact_project_internal_PROJECTCONTRIBUTOR=Contribuyente +TypeContact_project_external_PROJECTCONTRIBUTOR=Contribuyente +TypeContact_project_task_internal_TASKEXECUTIVE=Ejecutivo de tareas +TypeContact_project_task_external_TASKEXECUTIVE=Ejecutivo de tareas +TypeContact_project_task_internal_TASKCONTRIBUTOR=Contribuyente +TypeContact_project_task_external_TASKCONTRIBUTOR=Contribuyente +SelectElement=Seleccionar elemento +AddElement=Enlace al elemento +DocumentModelBeluga=Plantilla de documento de proyecto para la descripción de objetos vinculados +DocumentModelBaleine=Plantilla de documento de proyecto para tareas +DocumentModelTimeSpent=Plantilla de informe de proyecto por tiempo dedicado +ProjectReferers=Artículos relacionados +ProjectMustBeValidatedFirst=El proyecto debe ser validado primero +FirstAddRessourceToAllocateTime=Asignar un recurso de usuario como contacto del proyecto para asignar tiempo +InputDetail=Detalle de entradas +TimeAlreadyRecorded=Este es el tiempo gastado ya registrado para esta tarea/día y el usuario%s +NoUserAssignedToTheProject=No hay usuarios asignados a este proyecto. +TimeSpentBy=Tiempo invertido por +AssignTaskToMe=Asignar tarea a mí +AssignTaskToUser=Asignar tarea a%s +SelectTaskToAssign=Seleccione tarea para asignar ... +ProjectOverview=Visión de conjunto +ManageTasks=Usar proyectos para seguir tareas y/o informar el tiempo empleado (hojas de tiempo) +ManageOpportunitiesStatus=Utilizar proyectos para seguir a clientes potenciales +ProjectNbProjectByMonth=Nº de proyectos creados por mes. +ProjectNbTaskByMonth=Nº de tareas creadas por mes. +ProjectOppAmountOfProjectsByMonth=Cantidad de clientes potenciales por mes +ProjectWeightedOppAmountOfProjectsByMonth=Cantidad ponderada de clientes potenciales por mes +ProjectOpenedProjectByOppStatus=Abrir proyecto / liderar por estado de clientes potenciales +TasksStatistics=Estadísticas sobre tareas de proyecto/lead +TaskAssignedToEnterTime=Tarea asignada. Es posible introducir tiempo en esta tarea. +IdTaskTime=Tiempo de la tarea de identificación +YouCanCompleteRef=Si desea completar la referencia con algún sufijo, se recomienda agregar un carácter - para separarlo, por lo que la numeración automática seguirá funcionando correctamente para los próximos proyectos. Por ejemplo %s-MYSUFFIX +OnlyOpportunitiesShort=Solo clientes potenciales +OpenedOpportunitiesShort=Clientes potenciales abiertos +NotOpenedOpportunitiesShort=No es una pista abierta +NotAnOpportunityShort=No es un clientes potenciales +OpportunityTotalAmount=Cantidad total de clientes potenciales +OpportunityPonderatedAmount=Cantidad ponderada de clientes potenciales +OpportunityPonderatedAmountDesc=Cantidad de clientes potenciales ponderada con probabilidad +OppStatusQUAL=Calificación +OppStatusPROPO=Propuesta +AllowToLinkFromOtherCompany=Permitir vincular proyecto desde otra empresa

    Valores admitidos:
    - Mantener vacío: Puede vincular cualquier proyecto de la empresa (predeterminado)
    - "todos": puede vincular cualquier proyecto, incluso proyectos de otras empresas
    - Una lista de identificadores de terceros separados por comas: puede vincular todos los proyectos de estos terceros (Ejemplo: 123,4795,53)
    +LatestProjects=Últimos %s proyectos +LatestModifiedProjects=Últimos proyectos modificados %s +NoAssignedTasks=No se encontraron tareas asignadas (asigne proyectos / tareas al usuario actual desde el cuadro de selección superior para ingresar el tiempo) +ChooseANotYetAssignedTask=Elige una tarea que aún no te haya sido asignada +AllowCommentOnProject=Permitir comentarios de los usuarios sobre proyectos +RecordsClosed=%sproyecto(s) cerrado +SendProjectRef=Información del proyecto %s +ModuleSalaryToDefineHourlyRateMustBeEnabled=El módulo 'Salarios' debe estar habilitado para definir la tarifa por hora de los empleados para tener el tiempo gastado valorizado +NewTaskRefSuggested=Referencia de tarea ya utilizada, se requiere una nueva referencia de tarea +TimeSpentInvoiced=Tiempo gastado facturado +TimeSpentForInvoice=Tiempo usado +ServiceToUseOnLines=Servicio a utilizar en líneas +InvoiceGeneratedFromTimeSpent=La factura %s se ha generado a partir del tiempo dedicado al proyecto +ProjectBillTimeDescription=Verifique si ingresa la hoja de tiempo en las tareas del proyecto Y planea generar factura(s) de la hoja de tiempo para facturar al cliente del proyecto (no verifique si planea crear una factura que no se base en las hojas de tiempo ingresadas). Nota: Para generar la factura, vaya a la pestaña 'Tiempo empleado' del proyecto y seleccione las líneas para incluir. +ProjectFollowTasks=Siga las tareas o el tiempo dedicado +Usage=Uso +UsageBillTimeShort=Uso: Tiempo a facturar +RefTaskParent=Árbitro. Tarea principal diff --git a/htdocs/langs/es_EC/propal.lang b/htdocs/langs/es_EC/propal.lang new file mode 100644 index 00000000000..552a01bc521 --- /dev/null +++ b/htdocs/langs/es_EC/propal.lang @@ -0,0 +1,68 @@ +# Dolibarr language file - Source file is en_US - propal +Proposals=Propuestas comerciales +Proposal=Propuesta comercial +ProposalShort=Propuesta +ProposalsDraft=Proyecto de anuncios comerciales +ProposalsOpened=Abrir propuestas comerciales +CommercialProposal=Propuesta comercial +PdfCommercialProposalTitle=Propuesta comercial +ProposalCard=Tarjeta de propuesta +NewProp=Nueva propuesta comercial +NewPropal=Nueva propuesta +Prospect=Prospecto +DeleteProp=Eliminar propuesta comercial +ValidateProp=Validar propuesta comercial +AddProp=Crear propuesta +ConfirmDeleteProp=¿Estás seguro de que quieres eliminar esta propuesta comercial? +ConfirmValidateProp=¿Está seguro de que desea validar esta propuesta comercial bajo el nombre %s? +LastPropals=Últimas propuestas%s +LastModifiedProposals=Últimas propuestas modificadas%s +AllPropals=Todas las propuestas +SearchAProposal=Buscar una propuesta +NoProposal=Ninguna propuesta +ProposalsStatistics=Estadísticas de la propuesta comercial +NumberOfProposalsByMonth=Número por meses +AmountOfProposalsByMonthHT=Cantidad por mes (sin impuestos) +NbOfProposals=Número de propuestas comerciales +ShowPropal=Mostrar propuesta +PropalsDraft=Borradores +PropalsOpened=Abierto +PropalStatusDraft=Proyecto (necesita ser validado) +PropalStatusValidated=Validado (la propuesta está abierta) +PropalStatusSigned=Firmado (necesita facturación) +PropalsToClose=Propuestas comerciales para cerrar +PropalsToBill=Firmar propuestas comerciales para facturar +ListOfProposals=Lista de propuestas comerciales +ActionsOnPropal=Eventos a propuesta +RefProposal=Propuesta comercial ref +SendPropalByMail=Enviar propuesta comercial por correo +DatePropal=Fecha de la propuesta +DateEndPropal=Fecha de finalización de la validez +ValidityDuration=Duración de la validez +CloseAs=Establecer el estado en +ErrorPropalNotFound=Propal%s no encontrado +AddToDraftProposals=Añadir a proyecto de propuesta +NoDraftProposals=Ningún proyecto de propuesta +CopyPropalFrom=Crear propuesta comercial copiando la propuesta existente +CreateEmptyPropal=Crear una propuesta comercial vacía o desde la lista de productos/servicios. +DefaultProposalDurationValidity=Duración de la validez de la propuesta comercial predeterminada (en días) +UseCustomerContactAsPropalRecipientIfExist=Utilice el contacto/dirección con el tipo 'Propuesta de seguimiento de contacto' si se define en lugar de la dirección de un tercero como dirección del destinatario de la propuesta +ConfirmClonePropal=¿Seguro que desea clonar la propuesta comercial %s? +ConfirmReOpenProp=¿Está seguro de que desea volver a abrir la propuesta comercial %s? +ProposalsAndProposalsLines=Propuesta comercial y líneas +ProposalLine=Línea de propuesta +AvailabilityPeriod=Demora de disponibilidad +SetAvailability=Establecer retraso de disponibilidad +AfterOrder=despues de orden +OtherProposals=Otras propuestas +AvailabilityTypeAV_NOW=Inmediato +TypeContact_propal_internal_SALESREPFOLL=Propuestas de seguimiento representativas +TypeContact_propal_external_BILLING=Contacto de factura de cliente +TypeContact_propal_external_CUSTOMER=Contacto con el cliente +TypeContact_propal_external_SHIPPING=Contacto con el cliente para la entrega +DocModelAzurDescription=Un modelo de propuesta completo (implementación anterior de la plantilla Cyan) +DocModelCyanDescription=Un modelo de propuesta completo +DefaultModelPropalCreate=Creación de modelo predeterminada +DefaultModelPropalToBill=Plantilla predeterminada al cerrar una propuesta empresarial (a facturar) +DefaultModelPropalClosed=Plantilla predeterminada al cerrar una propuesta empresarial (no facturada) +ProposalsStatisticsSuppliers=Estadísticas de propuestas de proveedores diff --git a/htdocs/langs/es_EC/receiptprinter.lang b/htdocs/langs/es_EC/receiptprinter.lang new file mode 100644 index 00000000000..e2face3445a --- /dev/null +++ b/htdocs/langs/es_EC/receiptprinter.lang @@ -0,0 +1,74 @@ +# Dolibarr language file - Source file is en_US - receiptprinter +ReceiptPrinterSetup=Configuración del módulo ReceiptPrinter +PrinterAdded=Se añadió la impresora%s +PrinterUpdated=Impresora%s actualizada +PrinterDeleted=Se ha suprimido la impresora%s +TestSentToPrinter=Prueba enviada a la impresora%s +ReceiptPrinter=Impresoras de recibos +ReceiptPrinterDesc=Configuración de impresoras de recibos +ReceiptPrinterTypeDesc=Descripción del recibo Tipo de impresora +ReceiptPrinterProfileDesc=Descripción de Receipt Printer's Profile +ListPrinters=Lista de impresoras +SetupReceiptTemplate=Configuración de la plantilla +CONNECTOR_DUMMY=Impresora ficticia +CONNECTOR_FILE_PRINT=Impresora local +CONNECTOR_CUPS_PRINT=Impresora CUPS +CONNECTOR_DUMMY_HELP=Impresora falsa para la prueba, no hace nada +CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x: 9100 +CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb: //FooUser:secreto@computername/grupo de trabajo/impresora de recibos +CONNECTOR_CUPS_PRINT_HELP=Nombre de la impresora CUPS, ejemplo: HPRT_TP805L +PROFILE_SIMPLE=Perfil sencillo +PROFILE_EPOSTEP=Epos Tep Perfil +PROFILE_P822D=P822D Perfil +PROFILE_STAR=Perfil de la Estrella +PROFILE_DEFAULT_HELP=Perfil predeterminado adecuado para impresoras Epson +PROFILE_EPOSTEP_HELP=Epos Tep Perfil +PROFILE_P822D_HELP=P822D Perfil Sin gráficos +PROFILE_STAR_HELP=Perfil de la Estrella +DOL_ALIGN_LEFT=Alinea el texto a la izquierda +DOL_ALIGN_CENTER=Texto central +DOL_ALIGN_RIGHT=Alinea el texto a la derecha +DOL_PRINT_BARCODE=Imprimir código de barras +DOL_PRINT_BARCODE_CUSTOMER_ID=Imprimir ID de cliente de código de barras +DOL_CUT_PAPER_FULL=Cortar boleto por completo +DOL_CUT_PAPER_PARTIAL=Cortar el ticket parcialmente +DOL_OPEN_DRAWER=Abrir cajón de efectivo +DOL_ACTIVATE_BUZZER=Activar zumbador +DOL_DEFAULT_HEIGHT_WIDTH=Tamaño predeterminado de altura y ancho +DOL_BEEP=Sonido de la abeja +DOL_VALUE_DATE=Fecha de la factura +DOL_VALUE_DATE_TIME=Fecha y hora de factura +DOL_VALUE_YEAR=Año de factura +DOL_VALUE_MONTH_LETTERS=Factura mes en letras +DOL_VALUE_MONTH=Mes de la factura +DOL_VALUE_DAY=Día de la factura +DOL_VALUE_DAY_LETTERS=Inovice day en letras +DOL_LINE_FEED_REVERSE=Avance de línea inversa +DOL_VALUE_OBJECT_ID=ID de factura +DOL_VALUE_OBJECT_REF=Factura ref +DOL_PRINT_OBJECT_LINES=Líneas de factura +DOL_VALUE_CUSTOMER_FIRSTNAME=Nombre del cliente +DOL_VALUE_CUSTOMER_LASTNAME=Apellido del cliente +DOL_VALUE_CUSTOMER_MAIL=Correo del cliente +DOL_VALUE_CUSTOMER_PHONE=Teléfono del cliente +DOL_VALUE_CUSTOMER_MOBILE=Cliente móvil +DOL_VALUE_CUSTOMER_SKYPE=Cliente Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Número de impuesto al cliente +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Saldo de la cuenta del cliente +DOL_VALUE_MYSOC_NAME=El nombre de tu compañía +DOL_VALUE_MYSOC_ADDRESS=Dirección de su empresa +DOL_VALUE_MYSOC_ZIP=Su código postal +DOL_VALUE_MYSOC_TOWN=Tu ciudad +DOL_VALUE_MYSOC_COUNTRY=Tu país +DOL_VALUE_MYSOC_IDPROF1=Su IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Su IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Tu IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Su IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Tu IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Su IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=ID de IVA intracomunitario +DOL_VALUE_VENDOR_LASTNAME=Apellido del vendedor +DOL_VALUE_VENDOR_FIRSTNAME=Nombre del vendedor +DOL_VALUE_VENDOR_MAIL=Correo del vendedor +DOL_VALUE_CUSTOMER_POINTS=Puntos del cliente +DOL_VALUE_OBJECT_POINTS=Puntos de objeto diff --git a/htdocs/langs/es_EC/resource.lang b/htdocs/langs/es_EC/resource.lang new file mode 100644 index 00000000000..56da8dacd21 --- /dev/null +++ b/htdocs/langs/es_EC/resource.lang @@ -0,0 +1,17 @@ +# Dolibarr language file - Source file is en_US - resource +ConfirmDeleteResourceElement=Confirmar eliminar el recurso para este elemento +NoResourceInDatabase=Ningún recurso en la base de datos. +NoResourceLinked=Ningún recurso vinculado +ResourcePageIndex=Lista de recursos +ResourceCard=Tarjeta de recursos +ResourceFormLabel_ref=Nombre del recurso +ResourceFormLabel_description=Descripción del recurso +ResourcesLinkedToElement=Recursos vinculados al elemento +ShowResource=Mostrar recurso +ResourceElementPage=Elemento del recurso +RessourceLineSuccessfullyDeleted=Línea de recursos eliminada correctamente +RessourceLineSuccessfullyUpdated=Línea de recursos actualizada correctamente +ResourceLinkedWithSuccess=Recurso vinculado con éxito +ConfirmDeleteResource=Confirmar para eliminar este recurso +IdResource=Id del recurso +ResourceTypeCode=Código del tipo de recurso diff --git a/htdocs/langs/es_EC/salaries.lang b/htdocs/langs/es_EC/salaries.lang new file mode 100644 index 00000000000..0f639c609c2 --- /dev/null +++ b/htdocs/langs/es_EC/salaries.lang @@ -0,0 +1,17 @@ +# Dolibarr language file - Source file is en_US - salaries +SALARIES_ACCOUNTING_ACCOUNT_PAYMENT=Contabilidad utilizada para cliente/proveedor usuarios +SALARIES_ACCOUNTING_ACCOUNT_PAYMENT_Desc=La cuenta de contabilidad dedicada definida en la tarjeta de usuario se usará solo para la contabilidad de Libro mayor auxiliar. Este se usará para el Libro mayor y como valor predeterminado de la contabilidad del Libro mayor auxiliar si no se define una cuenta de usuario dedicada en el usuario. +SALARIES_ACCOUNTING_ACCOUNT_CHARGE=Cuenta de contabilidad por defecto para pagos de sueldos +Salary=Sueldo +Salaries=Sueldos +NewSalaryPayment=Nuevo pago de sueldo +SalaryPayment=Pago de sueldo +SalariesPayments=Pagos de sueldos +ShowSalaryPayment=Mostrar pago de sueldo +THM=Tasa promedio por hora +TJM=Tarifa diaria promedio +CurrentSalary=Sueldo actual +THMDescription=Este valor puede usarse para calcular el costo del tiempo consumido en un proyecto ingresado por los usuarios si se usa el proyecto del módulo +TJMDescription=Actualmente, este valor es solo informativo y no se utiliza para ningún cálculo +LastSalaries=Últimos %s pagos de sueldos +AllSalaries=Todos los pagos de sueldos diff --git a/htdocs/langs/es_EC/sendings.lang b/htdocs/langs/es_EC/sendings.lang new file mode 100644 index 00000000000..08d25169ac0 --- /dev/null +++ b/htdocs/langs/es_EC/sendings.lang @@ -0,0 +1,51 @@ +# Dolibarr language file - Source file is en_US - sendings +RefSending=Ref. de envío +Receivings=Recibos de entrega +SendingsArea=Área de envíos +ListOfSendings=Lista de envíos +SendingCard=Tarjeta de envío +QtyShipped=Cantidad enviada +QtyShippedShort=Cantidad de envío. +QtyPreparedOrShipped=Cantidad preparada o enviada +QtyToShip=Cant. enviada +QtyToReceive=Cantidad para recibir +QtyReceived=Cantidad recibida +QtyInOtherShipments=Cantidad en otros envíos +KeepToShip=Restante enviar +KeepToShipShort=Restante +OtherSendingsForSameOrder=Otros envíos para este pedido +SendingsAndReceivingForSameOrder=Envíos y recibos para este pedido +SendingsToValidate=Envíos para validar +StatusSendingCanceled=Cancelado +StatusSendingValidated=Validado (productos para enviar o ya enviar) +StatusSendingProcessed=Procesada +StatusSendingValidatedShort=validado +StatusSendingProcessedShort=Procesada +SendingSheet=Hoja de envío +ConfirmDeleteSending=¿Seguro que desea eliminar este envío? +ConfirmValidateSending=¿Está seguro de que desea validar este envío con la referencia %s? +ConfirmCancelSending=¿Seguro que desea cancelar este envío? +DocumentModelMerou=Modelo A5 de Merou +WarningNoQtyLeftToSend=Advertencia, ningunos productos que esperan para ser enviados. +StatsOnShipmentsOnlyValidated=Las estadísticas realizadas sobre envíos sólo se validan. La fecha utilizada es la fecha de validación del envío (no siempre se conoce la fecha de entrega planeada). +RefDeliveryReceipt=Recibo de entrega de ref +StatusReceipt=Recibo de entrega de estado +DateReceived=Fecha de entrega recibida +SendShippingByEMail=Enviar envío por correo electrónico +SendShippingRef=Presentación del envío %s +ActionsOnShipping=Eventos en el envío +LinkToTrackYourPackage=Enlace para rastrear su paquete +ShipmentCreationIsDoneFromOrder=Por el momento, la creación de un nuevo envío se hace desde la tarjeta de pedido. +ShipmentLine=Línea de envío +ProductQtyInCustomersOrdersRunning=Cantidad de producto de pedidos de venta abiertos +ProductQtyInSuppliersOrdersRunning=Cantidad de producto de órdenes de compra abiertas +ProductQtyInShipmentAlreadySent=Cantidad de producto de pedido abierto ya enviado +ProductQtyInSuppliersShipmentAlreadyRecevied=Cantidad de producto de órdenes de compra abiertas ya recibidas +NoProductToShipFoundIntoStock=Ningún producto para enviar encontrado en el almacén %s. Corregir el stock o volver a elegir otro almacén. +ValidateOrderFirstBeforeShipment=Primero debe validar el pedido antes de poder realizar envíos. +DocumentModelTyphon=Modelo de documento más completo para recibos de entrega (logo ...) +Error_EXPEDITION_ADDON_NUMBER_NotDefined=Constante EXPEDITION_ADDON_NUMBER no definido +SumOfProductVolumes=Suma de volúmenes de producto +SumOfProductWeights=Suma de los pesos del producto +DetailWarehouseNumber= Detalles del almacén +DetailWarehouseFormat=W: %s (Cantidad: %d) diff --git a/htdocs/langs/es_EC/sms.lang b/htdocs/langs/es_EC/sms.lang new file mode 100644 index 00000000000..bb89fa66f19 --- /dev/null +++ b/htdocs/langs/es_EC/sms.lang @@ -0,0 +1,29 @@ +# Dolibarr language file - Source file is en_US - sms +SmsSetup=Configuración de SMS +SmsDesc=Esta página le permite definir opciones globales en las características de SMS +SmsCard=Tarjeta SMS +AllSms=Todas las campañas de SMS +SmsTargets=Objetivos +SmsRecipients=Objetivos +SmsRecipient=Objetivo +SmsFrom=Remitente +SmsTo=Objetivo +SmsTopic=Tema de SMS +SmsMessage=Mensaje SMS +ListOfSms=Listar campañas de SMS +NewSms=Nueva campaña de SMS +DeleteSms=Eliminar campaña de SMS +DeleteASms=Eliminar una campaña de SMS +PreviewSms=Vista previa de SMS +TestSms=Prueba de SMS +SmsSuccessfulySent=SMS correctamente enviado (de %s a %s) +ErrorSmsRecipientIsEmpty=El número de destino está vacío +WarningNoSmsAdded=No hay ningún número de teléfono nuevo que agregar a la lista de destino +ConfirmValidSms=¿Confirma usted la validación de esta campaña? +NbOfUniqueSms=No. de números de teléfono únicos +NbOfSms=No. de numeros telefonicos +SmsInfoCharRemain=No. de caracteres restantes +SmsInfoNumero=(formato internacional, es decir: +33899701761) +DelayBeforeSending=Retraso antes del envío (minutos) +SmsNoPossibleSenderFound=No hay remitente disponible. Compruebe la configuración de su proveedor de SMS. +SmsNoPossibleRecipientFound=Ningún objetivo disponible. Compruebe la configuración de su proveedor de SMS. diff --git a/htdocs/langs/es_EC/stocks.lang b/htdocs/langs/es_EC/stocks.lang new file mode 100644 index 00000000000..88ed5a7e742 --- /dev/null +++ b/htdocs/langs/es_EC/stocks.lang @@ -0,0 +1,167 @@ +# Dolibarr language file - Source file is en_US - stocks +WarehouseCard=Tarjeta de almacén +ParentWarehouse=Almacén de los padres +NewWarehouse=Nuevo almacén / ubicación de stock +WarehouseEdit=Modificar almacén +WarehouseSource=Almacén de origen +WarehouseSourceNotDefined=Ningún almacén definido +AddOne=Agrega uno +DefaultWarehouse=Almacén predeterminado +WarehouseTarget=Almacén de destino +ValidateSending=Eliminar envío +CancelSending=Cancelar el envío +StocksByLotSerial=Inventario por lote/serie +LotSerial=Lotes/publicaciones en serie +LotSerialList=Lista de lotes/series +ErrorWarehouseRefRequired=Se requiere el nombre de referencia del almacén +ListOfWarehouses=Lista de almacenes +ListOfInventories=Lista de inventarios +MovementId=ID del movimiento +StockMovementForId=ID de movimiento %d +ListMouvementStockProject=Lista de movimientos de inventario asociado al proyecto +StocksArea=Área de almacenes +IncludeAlsoDraftOrders=Incluya también borradores de órdenes +Location=Ubicación +LocationSummary=Ubicación del nombre corto +NumberOfProducts=Número total de productos +StockCorrection=Corrección de inventario +CorrectStock=Inventario correcto +StockTransfer=Transferencia de inventario +TransferStock=Transferir inventario +MassStockTransferShort=Transferencia de inventario masiva +StockMovement=Movimiento de inventario +StockMovements=Movimiento de inventario +NumberOfUnit=Número de unidades +StockTooLow=Inventario demasiado bajo +StockLowerThanLimit=Inventario más bajo que el límite de alerta (%s) +PMPValue=Precio medio ponderado +EnhancedValueOfWarehouses=Valor de almacenes +UserWarehouseAutoCreate=Crear un almacén de usuario automáticamente al crear un usuario +AllowAddLimitStockByWarehouse=Administre también el valor del stock mínimo y deseado por emparejamiento (almacén de productos) además del valor del stock mínimo y deseado por producto +IndependantSubProductStock=El stock de producto y el stock de subproducto son independientes. +QtyDispatched=Cantidad despachada +QtyDispatchedShort=Cantidad enviada +QtyToDispatchShort=Cantidad de envío +OrderDispatch=Recibos de artículos +RuleForStockManagementDecrease=Seleccione Regla para la reducción automática de existencias (siempre es posible una reducción manual, incluso si se activa una regla de disminución automática) +RuleForStockManagementIncrease=Elija la regla para el aumento automático de existencias (siempre es posible un aumento manual, incluso si se activa una regla de aumento automático) +DeStockOnBill=Disminuir las existencias reales en la validación de la factura del cliente / nota de crédito +DeStockOnValidateOrder=Disminuir las existencias reales al validar el pedido de cliente +DeStockOnShipment=Disminuir inventario real en la validación de envío +DeStockOnShipmentOnClosing=Disminuir las existencias reales cuando el envío se establece en cerrado +ReStockOnBill=Aumentar las existencias reales en la validación de la factura / nota de crédito del proveedor +ReStockOnValidateOrder=Aumentar las existencias reales en la aprobación de la orden de compra +ReStockOnDispatchOrder=Aumentar las existencias reales en el envío manual al almacén, después de la orden de compra recibo de mercancías +StockOnReception=Aumentar las existencias reales en la validación de recepción +StockOnReceptionOnClosing=Aumentar las existencias reales cuando la recepción está cerrada +OrderStatusNotReadyToDispatch=El pedido no tiene todavía o no más un estatus que permita despachar productos en bodegas. +StockDiffPhysicTeoric=Explicación de la diferencia entre Inventario físico y virtual +NoPredefinedProductToDispatch=No hay productos predefinidos para este objeto. Por lo tanto, no se requiere despacho en Inventario. +DispatchVerb=Envío +StockLimitShort=Límite para la alerta +StockLimit=Límite de Inventario para alerta +StockLimitDesc=(vacío) significa que no hay advertencia.
    0 se puede utilizar para una advertencia tan pronto como el inventario esté vacío. +PhysicalStock=Inventario FISICO +RealStock=Inventario Real +RealStockDesc=El stock físico / real es el stock actualmente en los almacenes. +RealStockWillAutomaticallyWhen=El stock real se modificará de acuerdo con esta regla (como se define en el módulo Stock): +VirtualStock=Inventario Virtual +VirtualStockDesc=El stock virtual es el stock calculado disponible una vez que se cierran todas las acciones abiertas / pendientes (que afectan a los stocks) (órdenes de compra recibidas, órdenes de venta enviadas, etc.) +IdWarehouse=Id del Almacén +DescWareHouse=Descripción de almacén +LieuWareHouse=Almacén de localización +WarehousesAndProductsBatchDetail=Almacenes y productos (con detalle por lote / serie) +AverageUnitPricePMPShort=Precio medio ponderado de los insumos +AverageUnitPricePMP=Precio medio ponderado de los insumos +SellPriceMin=Precio unitario de venta +EstimatedStockValueSellShort=Valor para la venta +EstimatedStockValueSell=Valor para la venta +EstimatedStockValueShort=Valor del inventario de entrada +EstimatedStockValue=Valor del inventario de entrada +ConfirmDeleteWarehouse=¿Seguro que desea eliminar el almacén %s? +PersonalStock=Inventario personal %s +ThisWarehouseIsPersonalStock=Este almacén representa el Inventario personal de %s %s +SelectWarehouseForStockDecrease=Elegir almacén para utilizar para disminuir inventario +SelectWarehouseForStockIncrease=Elija un almacén para utilizarlo para aumentar el inventario +NoStockAction=No hay acción de inventario +DesiredStockDesc=Esta cantidad de inventario será el valor utilizado para llenar el inventario por recurso de reposición. +StockToBuy=Ordenar +Replenishment=Reposición +ReplenishmentOrders=Órdenes de reabastecimiento +VirtualDiffersFromPhysical=De acuerdo con las opciones de acciones de aumento/disminución, el Inventario físico y el Inventario virtual (órdenes físicas y actuales) pueden diferir +UseVirtualStockByDefault=Utilizar el inventario virtual de forma predeterminada, en lugar del inventario físico, para la función de reposición +UseVirtualStock=Utilizar Inventario virtual +UsePhysicalStock=Usar inventario físico +CurentlyUsingVirtualStock=Inventario Virtual +CurentlyUsingPhysicalStock=Inventario Físico +RuleForStockReplenishment=Regla para la reposición de Inventario +SelectProductWithNotNullQty=Seleccione al menos un producto con una cantidad no nula y un proveedor +AlertOnly= Sólo alertas +WarehouseForStockDecrease=El almacén %s se utilizará para la disminución de inventario +WarehouseForStockIncrease=El almacén %s se utilizará para el aumento de inventario +ReplenishmentStatusDesc=Esta es una lista de todos los productos con un stock inferior al deseado (o inferior al valor de alerta si la casilla de verificación "solo alerta" está marcada). Con la casilla de verificación, puede crear pedidos de compra para completar la diferencia. +ReplenishmentOrdersDesc=Esta es una lista de todas las órdenes de compra abiertas, incluidos los productos predefinidos. Aquí solo se pueden ver pedidos abiertos con productos predefinidos, de modo que los pedidos que pueden afectar las existencias. +Replenishments=Reabastecimientos +NbOfProductBeforePeriod=Cantidad del producto%s en Inventario antes del período seleccionado (<%s) +NbOfProductAfterPeriod=Cantidad del producto%s en Inventario después del período seleccionado (>%s) +MassMovement=Movimiento masivo +SelectProductInAndOutWareHouse=Seleccione un producto, una cantidad, un almacén de origen y un almacén de destino, luego haga clic en "%s". Una vez hecho esto para todos los movimientos requeridos, haga clic en "%s". +RecordMovement=Transferencia de registros +ReceivingForSameOrder=Recibos para este pedido +StockMovementRecorded=Movimientos de inventario registrados +RuleForStockAvailability=Reglas sobre requerimientos de inventario +StockMustBeEnoughForInvoice=El nivel de stock debe ser suficiente para agregar el producto/servicio a la factura (la verificación se realiza en el stock real actual al agregar una línea en la factura, independientemente de la regla para el cambio automático de stock) +StockMustBeEnoughForOrder=El nivel de stock debe ser suficiente para agregar el producto/servicio al pedido (la verificación se realiza en el stock real actual al agregar una línea en el pedido, cualquiera que sea la regla para el cambio automático de inventario) +StockMustBeEnoughForShipment=El nivel de stock debe ser suficiente para agregar el producto/servicio al envío (la verificación se realiza en el stock real actual al agregar una línea en el envío, independientemente de la regla para el cambio automático de stock) +InventoryCode=Código de movimiento o inventario +WarehouseAllowNegativeTransfer=La acción puede ser negativa +qtyToTranferIsNotEnough=No tiene stock suficiente en su almacén de origen y su configuración no permite existencias negativas. +qtyToTranferLotIsNotEnough=No tiene suficiente stock, para este número de lote, de su almacén de origen y su configuración no permite existencias negativas (Cantidad para el producto '%s' con el lote '%s' es %s en el almacén '%s'). +MovementCorrectStock=Corrección del inventario del producto%s +MovementTransferStock=Transferencia de inventario de producto%s a otro almacén +InventoryCodeShort=Inv./Mov. Código +NoPendingReceptionOnSupplierOrder=No hay recepción pendiente debido a una orden de compra abierta +ThisSerialAlreadyExistWithDifferentDate=Este número de lote/número de serie (%s) ya existe pero con fecha de comer o vender diferente (%s pero escribe %s). +OpenInternal=Abrir sólo para acciones internas +UseDispatchStatus=Use un estado de despacho (aprobar / rechazar) para las líneas de productos en la recepción de la orden de compra +OptionMULTIPRICESIsOn=La opción "varios precios por segmento" está activada. Significa que un producto tiene varios precios de venta por lo que el valor para la venta no se puede calcular +ProductStockWarehouseCreated=Límite de inventario para alerta e inventario óptimo deseado correctamente creado +ProductStockWarehouseUpdated=Límite de inventario para alerta e inventario óptimo deseado correctamente actualizado +ProductStockWarehouseDeleted=Límite de inventario para alerta e inventario óptimo deseado correctamente eliminado +AddNewProductStockWarehouse=Establecer un nuevo límite para la alerta y el inventario óptimo deseado +AddStockLocationLine=Disminuir la cantidad a continuación, haga clic para agregar otro almacén para este producto +InventoryDate=Fecha del inventario +inventorySetup =Configuración del inventario +inventoryWritePermission=Actualizar los inventarios +inventoryListEmpty=Ningún inventario en curso +inventoryEdit=Editar +inventoryDraft=Abierto +inventoryOfWarehouse=Inventario para almacén: %s +inventoryErrorQtyAdd=Error: una cantidad es menor que cero +inventoryWarningProductAlreadyExists=Este producto ya está en la lista +SelectCategory=Filtro de categoría +SelectFournisseur=Filtro de proveedores +INVENTORY_DISABLE_VIRTUAL=Producto virtual (kit): no disminuya el stock de un producto hijo +INVENTORY_USE_MIN_PA_IF_NO_LAST_PA=Utilice el precio de compra si no se puede encontrar el último precio de compra +inventoryChangePMPPermission=Permitir cambiar el valor PMP de un producto +OnlyProdsInStock=No añada producto sin inventario +TheoricalQty=Cantidad teórica +TheoricalValue=Cantidad teórica +LastPA=Última BP +RealQty=Cantidad real +RealValue=Valor real +RegulatedQty=Cantidad regulada +FlushInventory=Inventario de descarga +ConfirmFlushInventory=¿Confirma usted esta acción? +InventoryFlushed=Inventario descargado +ExitEditMode=Edición de salida +inventoryDeleteLine=Borrar línea +RegulateStock=Regular inventario +ListInventory=Lista +StockSupportServices=Servicios de gestión de stock. +StockSupportServicesDesc=De forma predeterminada, solo puede almacenar productos del tipo "producto". También puede almacenar un producto de tipo "servicio" si tanto el módulo Servicios como esta opción están habilitados. +StockDecreaseAfterCorrectTransfer=Disminución por corrección/transferencia +StockIncrease=Aumento de existencias +StockDecrease=Disminución de existencias +InventoryForASpecificWarehouse=Inventario para un almacén específico +InventoryForASpecificProduct=Inventario para un producto específico diff --git a/htdocs/langs/es_EC/stripe.lang b/htdocs/langs/es_EC/stripe.lang new file mode 100644 index 00000000000..eb665991887 --- /dev/null +++ b/htdocs/langs/es_EC/stripe.lang @@ -0,0 +1,37 @@ +# Dolibarr language file - Source file is en_US - stripe +StripeSetup=Configuración del módulo de Stripe +StripeDesc=Ofrezca a los clientes una página de pago en línea de Stripe para pagos con tarjetas de crédito / debito a través de Stripe . Esto se puede utilizar para permitir a sus clientes realizar pagos ad-hoc o para pagos relacionados con un objeto Dolibarr en particular (factura, pedido, ...) +StripeOrCBDoPayment=Pague con tarjeta de crédito o Stripe +STRIPE_PAYONLINE_SENDEMAIL=Notificación por correo electrónico después de un intento de pago (exitoso o fallido) +StripeDoPayment=Pagar con raya +YouWillBeRedirectedOnStripe=Se le redirigirá a la página de Stripe protegida para ingresar su información de tarjeta de crédito +ToOfferALinkForOnlinePayment=URL para el pago de%s +ToOfferALinkForOnlinePaymentOnFreeAmount=URL para ofrecer una página de pago en línea %s de cualquier monto sin objeto existente +YouCanAddTagOnUrl=También puede agregar el parámetro de URL &tag=valor a cualquiera de esos URL (obligatorio solo para pagos no vinculados a un objeto) para agregar su propia etiqueta de comentario de pago.
    Para la URL de pagos sin objeto existente, también puede agregar el parámetro &noidempotency=1 para que el mismo enlace con la misma etiqueta se pueda usar varias veces (algún modo de pago puede limitar el pago a 1 para cada enlace diferente sin esto parámetro) +SetupStripeToHavePaymentCreatedAutomatically=Configure su Stripe con URL %s para que el pago se cree automáticamente cuando sea validado por Stripe. +STRIPE_CGI_URL_V2=Módulo URL de Stripe CGI para el pago +NewStripePaymentFailed=Nuevo pago de Stripe probado pero fallido +FailedToChargeCard=Error al cargar la tarjeta +STRIPE_TEST_SECRET_KEY=Clave de prueba secreta +STRIPE_TEST_PUBLISHABLE_KEY=Clave de prueba publicable +STRIPE_LIVE_SECRET_KEY=Clave secreta en vivo +STRIPE_LIVE_PUBLISHABLE_KEY=Clave viva publicada +STRIPE_LIVE_WEBHOOK_KEY=Webhook clave en vivo +ONLINE_PAYMENT_WAREHOUSE=Stock para usar en la disminución de inventario cuando se realiza el pago en línea
    (TODO Cuando la opción para disminuir el inventario se realiza en una acción en la factura y el pago en línea se genera la factura?) +StripeLiveEnabled=Stripe activado en vivo (de lo contrario modo prueba/sandbox) +StripeImportPayment=Importar pagos en franja +ExampleOfTestCreditCard=Ejemplo de tarjeta de crédito para prueba: %s => válido, %s => error CVC, %s => vencido, %s => el cargo falla +StripeGateways=Gateways de Tripe +BankAccountForBankTransfer=Cuenta bancaria para pagos de fondos +StripeAccount=Cuenta de Stripe +StripeChargeList=Lista de cargas de Stripe +StripeTransactionList=Lista de transacciones de Stripe +StripeCustomerId=ID de cliente de Stripe +LocalID=ID Local +StripeID=ID de Stripe +ConfirmDeleteCard=¿Seguro que quieres eliminar esta tarjeta de crédito o débito? +StripeUserAccountForActions=Cuenta de usuario para usar para la notificación por correo electrónico de algunos eventos de Stripe (pagos de Stripe) +ToOfferALinkForTestWebhook=Enlace para configurar Stripe WebHook para llamar a IPN (modo de prueba) +ToOfferALinkForLiveWebhook=Enlace para configurar Stripe WebHook para llamar a IPN (modo en vivo) +ClickHereToTryAgain=Haga clic aquí para volver a intentarlo... +CreationOfPaymentModeMustBeDoneFromStripeInterface=Debido a las fuertes reglas de autenticación del cliente, la creación de una tarjeta debe hacerse desde la oficina administrativa de Stripe. Puede hacer clic aquí para activar el registro de cliente de Stripe: %s diff --git a/htdocs/langs/es_EC/supplier_proposal.lang b/htdocs/langs/es_EC/supplier_proposal.lang new file mode 100644 index 00000000000..5fe0738f765 --- /dev/null +++ b/htdocs/langs/es_EC/supplier_proposal.lang @@ -0,0 +1,46 @@ +# Dolibarr language file - Source file is en_US - supplier_proposal +SupplierProposal=Propuestas comerciales del vendedor +supplier_proposalDESC=Gestionar solicitudes de precios a proveedores +SupplierProposalNew=Nueva solicitud de precio +CommRequest=Precio requerido +CommRequests=Solicitudes de precios +SearchRequest=Buscar una solicitud +DraftRequests=Solicitudes preliminares +SupplierProposalsDraft=Borrador de propuestas de proveedores +LastModifiedRequests=Las últimas solicitudes de precios modificados%s +RequestsOpened=Solicitud de precio abierto +SupplierProposalArea=Área de propuestas de proveedores +SupplierProposalShort=Propuesta del vendedor +SupplierProposals=Propuestas del vendedor +SupplierProposalsShort=Propuestas del vendedor +NewAskPrice=Nueva solicitud de precio +ShowSupplierProposal=Mostrar pedido de precio +AddSupplierProposal=Crear una solicitud de precio +SupplierProposalRefFourn=Referencias del vendedor +SupplierProposalRefFournNotice=Antes de cerrar a "Aceptado", piense en captar referencias de proveedores. +ConfirmValidateAsk=¿Está seguro de que desea validar esta solicitud de precio bajo el nombre %s? +DeleteAsk=Borrar petición +ValidateAsk=Validar solicitud +SupplierProposalStatusDraft=Proyecto (necesita ser validado) +SupplierProposalStatusValidated=Validado (la solicitud está abierta) +SupplierProposalStatusValidatedShort=validado +CopyAskFrom=Cree una solicitud de precio copiando una solicitud existente +CreateEmptyAsk=Crear solicitud en blanco +ConfirmCloneAsk=¿Seguro que desea clonar la solicitud de precios %s? +ConfirmReOpenAsk=¿Seguro que desea volver a abrir la solicitud de precios %s? +SendAskByMail=Enviar solicitud de precio por correo +SendAskRef=Enviando la solicitud de precio %s +SupplierProposalCard=Solicitar tarjeta +ConfirmDeleteAsk=¿Seguro que desea eliminar esta solicitud de precios %s? +ActionsOnSupplierProposal=Eventos sobre la solicitud de precio +DocModelAuroreDescription=Un modelo de solicitud completa (logo ...) +CommercialAsk=Precio requerido +DefaultModelSupplierProposalCreate=Creación de modelo predeterminada +DefaultModelSupplierProposalToBill=Plantilla predeterminada al cerrar una solicitud de precio (aceptada) +DefaultModelSupplierProposalClosed=Plantilla predeterminada al cerrar una solicitud de precio (rechazada) +ListOfSupplierProposals=Lista de solicitudes de propuestas de proveedores +ListSupplierProposalsAssociatedProject=Lista de propuestas de proveedores asociadas con el proyecto +SupplierProposalsToClose=Propuestas del proveedor para cerrar +SupplierProposalsToProcess=Propuestas del proveedor para procesar +LastSupplierProposals=Últimas solicitudes de precios%s +AllPriceRequests=Todas las solicitudes diff --git a/htdocs/langs/es_EC/suppliers.lang b/htdocs/langs/es_EC/suppliers.lang new file mode 100644 index 00000000000..6b01cbb42a3 --- /dev/null +++ b/htdocs/langs/es_EC/suppliers.lang @@ -0,0 +1,36 @@ +# Dolibarr language file - Source file is en_US - suppliers +Suppliers=Vendedores/Proveedores +SuppliersInvoice=Factura del proveedor +ShowSupplierInvoice=Mostrar factura del proveedor +ListOfSuppliers=Lista de proveedores +ShowSupplier=Mostrar vendedor/proveedor +OrderDate=Fecha de orden +TotalBuyingPriceMinShort=Total de subproductos de los precios de compra +TotalSellingPriceMinShort=Total de subproductos precios de venta +ChangeSupplierPrice=Cambiar el precio de compra +SupplierPrices=Precios del proveedor +ReferenceSupplierIsAlreadyAssociatedWithAProduct=Esta referencia del proveedor ya está asociada con un producto: %s +NoRecordedSuppliers=Ningún vendedor/proveedor registrado +SupplierPayment=Pago del proveedor +SuppliersArea=Área del vendedor/proveedor +RefSupplierShort=Referencia del proveedor +ExportDataset_fournisseur_1=Facturas de proveedores y detalles de las facturas. +ExportDataset_fournisseur_2=Facturas y pagos del vendedor +ExportDataset_fournisseur_3=Pedidos de compra y detalles del pedido +ConfirmApproveThisOrder=¿Estás seguro de que quieres aprobar la orden %s? +DenyingThisOrder=Negar esta orden +ConfirmDenyingThisOrder=¿Seguro que quiere negar esta orden %s? +ConfirmCancelThisOrder=¿Está seguro de que desea cancelar este pedido %s? +AddSupplierOrder=Crear orden de compra +ListOfSupplierProductForSupplier=Lista de productos y precios para el vendedor %s +SentToSuppliers=Enviado a los vendedores +ListOfSupplierOrders=Lista de órdenes de compra +MenuOrdersSupplierToBill=Órdenes de compra para facturar +NbDaysToDelivery=Retraso en la entrega (días) +DescNbDaysToDelivery=El mayor retraso de entrega de los productos de este pedido +SupplierReputation=Reputación del vendedor +DoNotOrderThisProductToThisSupplier=No ordenes +NotTheGoodQualitySupplier=Baja calidad +AllProductServicePrices=Todos los precios de productos / servicios +AllProductReferencesOfSupplier=Todas las referencias de producto / servicio del vendedor +BuyingPriceNumShort=Precios del proveedor diff --git a/htdocs/langs/es_EC/trips.lang b/htdocs/langs/es_EC/trips.lang new file mode 100644 index 00000000000..e3976df3b1d --- /dev/null +++ b/htdocs/langs/es_EC/trips.lang @@ -0,0 +1,95 @@ +# Dolibarr language file - Source file is en_US - trips +ShowExpenseReport=Mostrar informe de gastos +Trips=Reporte de gastos +TripsAndExpenses=Informes de gastos +TripsAndExpensesStatistics=Estadísticas de informes de gastos +TripCard=Tarjeta de reporte de gastos +AddTrip=Crear informe de gastos +ListOfTrips=Lista de informes de gastos +ListOfFees=Lista de tarifas +ShowTrip=Mostrar informe de gastos +NewTrip=Nuevo informe de gastos +LastExpenseReports=Últimos informes de gastos %s +CompanyVisited=Compañía/organización visitada +FeesKilometersOrAmout=Cantidad o kilómetros +DeleteTrip=Eliminar informe de gastos +ConfirmDeleteTrip=¿Está seguro de que desea eliminar este informe de gastos? +ListTripsAndExpenses=Lista de informes de gastos +ListToApprove=A la espera de la aprobación +ExpensesArea=Área de informes de gastos +ClassifyRefunded=Clasifique 'Reembolsado' +ExpenseReportWaitingForApproval=Se ha presentado un nuevo informe de gastos para su aprobación +ExpenseReportWaitingForApprovalMessage=Se ha enviado un nuevo informe de gastos y está esperando su aprobación.
    - Usuario: %s
    - Período: %s
    haga clic aquí para validar: %s +ExpenseReportWaitingForReApproval=Se ha presentado un informe de gastos para su re-aprobación +ExpenseReportWaitingForReApprovalMessage=Se ha enviado un informe de gastos y está a la espera de la nueva aprobación.
    El usuario %s, negó la aprobación del informe de gastos por este motivo: %s.
    Se ha propuesto una nueva versión y está esperando su aprobación.
    - Usuario: %s
    - Período: %s
    haga clic aquí para validar: %s +ExpenseReportApproved=Se aprobó un informe de gastos +ExpenseReportApprovedMessage=El informe de gastos %s fue aprobado.
    - Usuario: %s
    - Aprobado por: %s
    Haga clic aquí para mostrar el informe de gastos: %s +ExpenseReportRefused=Se rechazó un informe de gastos +ExpenseReportRefusedMessage=El informe de gastos %s fue rechazado.
    - Usuario: %s
    - Rechazado por: %s
    - Motivo de rechazo: %s
    haga clic aquí para mostrar el informe de gastos: %s +ExpenseReportCanceled=Se canceló un informe de gastos +ExpenseReportCanceledMessage=El informe de gastos %s fue cancelado.
    - Usuario: %s
    - Cancelado por: %s
    - Motivo de cancelación: %s
    haga clic aquí para mostrar el informe de gastos: %s +ExpenseReportPaid=Se pagó un informe de gastos +ExpenseReportPaidMessage=El informe de gastos %s fue pagado.
    - Usuario: %s
    - Pagado por: %s
    haga clic aquí para mostrar el informe de gastos: %s +TripId=Informe de gastos de identificación +AnyOtherInThisListCanValidate=Persona a informar para la validación. +TripSociete=Empresa de información +TripNDF=Informaciones sobre el informe de gastos +PDFStandardExpenseReports=Plantilla estándar para generar un documento PDF para el informe de gastos +ExpenseReportLine=Línea de reporte de gastos +TF_LUNCH=Almuerzo +TF_TRAIN=Trole +TF_CAR=Automovil +EX_FUE=CV de combustible +EX_PAR=CV de estacionamiento +EX_TOL=CV Peaje +EX_TAX=Varios impuestos +EX_SUM=Suministro de mantenimiento +EX_CAR=Alquiler de automovil +EX_CUR=Los clientes que reciben +EX_CAM=CV Mantenimiento y reparación +EX_EMM=Comida de los empleados +EX_FUE_VP=PV de combustible +EX_TOL_VP=PV Peaje +EX_PAR_VP=PV Estacionamiento +EX_CAM_VP=PV Mantenimiento y reparación +UploadANewFileNow=Sube un nuevo documento ahora +Error_EXPENSEREPORT_ADDON_NotDefined=Error, la regla para la referencia de numeración del informe de gastos no se definió en la configuración del módulo 'Informe de gastos' +ErrorDoubleDeclaration=Ha declarado otro informe de gastos en un intervalo de fechas similar. +AucuneLigne=No se ha declarado ningún informe de gastos +VALIDATOR=Usuario responsable de la aprobación +AUTHOR=Grabado por +REFUSEUR=Negado por +CANCEL_USER=Suprimido por +DATE_REFUS=Denegar fecha +DATE_CANCEL=Fecha de cancelación +ExpenseReportRef=Árbitro. informe de gastos +ValidateAndSubmit=Validar y enviar para su aprobación +NOT_AUTHOR=Usted no es el autor de este informe de gastos. Operación cancelada. +ConfirmRefuseTrip=¿Está seguro de que desea negar este informe de gastos? +ValideTrip=Aprobar informe de gastos +ConfirmValideTrip=¿Está seguro de que desea aprobar este informe de gastos? +PaidTrip=Pagar un informe de gastos +ConfirmPaidTrip=¿Está seguro de que desea cambiar el estado de este informe de gastos a "Pago"? +ConfirmCancelTrip=¿Está seguro de que desea cancelar este informe de gastos? +BrouillonnerTrip=Mover atrás el informe de gastos al estado "Borrador" +ConfirmBrouillonnerTrip=¿Está seguro de que desea mover este informe de gastos al estado "Borrador"? +SaveTrip=Validar informe de gastos +ConfirmSaveTrip=¿Está seguro de que desea validar este informe de gastos? +NoTripsToExportCSV=No hay reporte de gastos a la exportación para este período. +ExpenseReportPayment=Pago del informe de gastos +ExpenseReportsToApprove=Informes de gastos para aprobar +ExpenseReportsToPay=Informes de gastos a pagar +ConfirmCloneExpenseReport=¿Seguro que desea copiar este informe de gastos? +ExpenseReportsIk=Índice de millaje de informes de gastos +ExpenseReportIkDesc=Se puede modificar el cálculo de los kilómetros de gasto por categoría y por rango que se definen previamente. d es la distancia en kilómetros +expenseReportOffset=Compensar +expenseReportTotalForFive=Ejemplo con d = 5 +expenseReportPrintExample=desplazamiento + (d x coef) = %S +ExpenseReportApplyTo=Aplicar para +ExpenseReportDateStart=Fecha de inicio +ExpenseReportDateEnd=Fecha final +ExpenseReportLimitAmount=Cantidad limitada +ExpenseReportConstraintViolationError=Infracción de restricción id [%s]: %s es superior a %s %s +ExpenseReportConstraintViolationWarning=Infracción de restricción id [%s]: %s es superior a %s %s +ExpenseRangeOffset=Cantidad de compensación: %s +AttachTheNewLineToTheDocument=Adjunte la línea a un documento cargado diff --git a/htdocs/langs/es_EC/users.lang b/htdocs/langs/es_EC/users.lang new file mode 100644 index 00000000000..5020c38edae --- /dev/null +++ b/htdocs/langs/es_EC/users.lang @@ -0,0 +1,87 @@ +# Dolibarr language file - Source file is en_US - users +HRMArea=Área Recursos Humanos +UserCard=Tarjeta de usuario +GroupCard=Tarjeta de grupo +Permission=Permiso +EditPassword=Editar contraseña +SendNewPassword=Regenerar y enviar contraseña +ReinitPassword=Regenerar contraseña +PasswordChangedTo=La contraseña cambió a: %s +UserRights=Permisos de usuario +UserGUISetup=Configuración de pantalla del usuario +DisableUser=En rehabilitación +DisableAUser=Deshabilitar un usuario +DeleteUser=Borrar +EnableAUser=Habilitar un usuario +DeleteGroup=Borrar +ConfirmDisableUser=¿Estás seguro de que quieres deshabilitar el usuario %s? +ConfirmDeleteUser=¿Seguro que desea eliminar el usuario %s? +ConfirmDeleteGroup=¿Seguro que desea eliminar el grupo %s? +ConfirmEnableUser=¿Seguro que quieres habilitar el usuario %s? +ConfirmReinitPassword=¿Seguro que desea generar una nueva contraseña para el usuario %s? +ConfirmSendNewPassword=¿Está seguro de que desea generar y enviar una nueva contraseña para el usuario %s? +LoginNotDefined=El inicio de sesión no está definido. +NameNotDefined=El nombre no está definido. +ListOfUsers=Lista de usuarios +DefaultRights=Permisos predeterminados +DefaultRightsDesc=Defina aquí los permisos predeterminados predeterminados que se otorgan automáticamente a un nuevo usuario nuevo (para modificar los permisos de los usuarios existentes, vaya a la tarjeta de usuario). +DolibarrUsers=Usuarios de Dolibarr +LastName=Apellido +FirstName=Primer nombre +ListOfGroups=Lista de grupos +CreateGroup=Crea un grupo +RemoveFromGroup=Sacar del grupo +PasswordChangedAndSentTo=Se cambió la contraseña y se envió a %s. +PasswordChangeRequestSent=Solicitud de cambio de contraseña para %s enviada a %s. +LastUsersCreated=Últimos usuarios de %s creados +ShowGroup=Mostrar grupo +ShowUser=Mostrar usuario +NonAffectedUsers=Usuarios no asignados +UserModified=Usuario modificado correctamente +PhotoFile=Archivo de fotos +ListOfUsersInGroup=Lista de usuarios de este grupo +ListOfGroupsForUser=Lista de grupos de este usuario +LinkToCompanyContact=Enlace a un tercero / contacto +LinkedToDolibarrMember=Enlace al miembro +LinkedToDolibarrUser=Enlace al usuario de Dolibarr +LinkedToDolibarrThirdParty=Enlace a Dolibarr terceros +CreateDolibarrLogin=Crear un usuario +LoginAccountDisableInDolibarr=Cuenta desactivada en Dolibarr. +UsePersonalValue=Usar valor personal +DomainUser=Usuario del dominio %s +CreateInternalUserDesc=Este formulario le permite crear un usuario interno en su empresa / organización. Para crear un usuario externo (cliente, proveedor, etc.), use el botón 'Crear usuario Dolibarr' de la tarjeta de contacto de ese tercero. +InternalExternalDesc=Un usuario interno es un usuario que forma parte de su empresa / organización.
    Un usuario externo externo es un cliente, proveedor u otro (La creación de un usuario externo para un tercero se puede hacer desde el registro de contacto del tercero).

    En ambos casos, los permisos definen los derechos en Dolibarr, también el usuario externo puede tener un administrador de menú diferente al usuario interno (Ver Inicio - Configuración - Pantalla) +PermissionInheritedFromAGroup=Permiso concedido porque lo a heredado de un usuario de un grupo de usuarios. +UserWillBeInternalUser=El usuario creado será un usuario interno (porque no está vinculado a un tercero en particular) +UserWillBeExternalUser=El usuario creado será un usuario externo (debido a que está vinculado a un tercero en particular) +IdPhoneCaller=Identificador de llamadas +NewUserCreated=Se ha creado el usuario %s +NewUserPassword=Cambio de contraseña para %s +EventUserModified=El usuario %s modificado +UserDisabled=El usuario %s inhabilitado +UserEnabled=El usuario %s está activado +UserDeleted=El usuario %s eliminado +ConfirmCreateContact=¿Estás seguro de que quieres crear una cuenta Dolibarr para este contacto? +ConfirmCreateLogin=¿Estás seguro de que quieres crear una cuenta de Dolibarr para este miembro? +ConfirmCreateThirdParty=¿Estás seguro de que quieres crear un tercero para este miembro? +LoginToCreate=Ingresar para crear +NameToCreate=Nombre del tercero para crear +YourRole=Sus funciones +YourQuotaOfUsersIsReached=¡Se alcanza su cuota de usuarios activos! +NbOfUsers=No. de usuarios +NbOfPermissions=No. de permisos +DontDowngradeSuperAdmin=Sólo una superadmin puede degradar una superadmin +UseTypeFieldToChange=Utilice el campo Tipo para cambiar +OpenIDURL=URL de OpenID +LoginUsingOpenID=Utilice OpenID para iniciar sesión +ExpectedWorkedHours=Horas trabajadas esperadas por semana +ColorUser=Color del usuario +DisabledInMonoUserMode=Desactivado en el modo de mantenimiento +UserAccountancyCode=Código de contabilidad de usuario +UserLogoff=Cerrar sesión de usuario +UserLogged=Usuario registrado +DateEmploymentEnd=Fecha de finalización del empleo +ForceUserExpenseValidator=Validar el validador de informes de gastos +ForceUserHolidayValidator=Forzar validación de solicitud de licencia +UserPersonalEmail=Email personal +UserPersonalMobile=Teléfono móvil personal diff --git a/htdocs/langs/es_EC/website.lang b/htdocs/langs/es_EC/website.lang new file mode 100644 index 00000000000..41a4748bb60 --- /dev/null +++ b/htdocs/langs/es_EC/website.lang @@ -0,0 +1,74 @@ +# Dolibarr language file - Source file is en_US - website +WebsiteSetupDesc=Crea aquí los sitios web que deseas utilizar. A continuación, vaya a los sitios web de menú para editarlos. +ConfirmDeleteWebsite=¿Estás seguro de que deseas eliminar este sitio web? Todas sus páginas y contenido también serán eliminados. Los archivos cargados (como en el directorio de medios, el módulo ECM, ...) permanecerán. +WEBSITE_PAGENAME=Nombre de página/alias +WEBSITE_ALIASALT=Nombres de página alternativos/alias +WEBSITE_ALIASALTDesc=Utilice aquí la lista de otros nombres/alias para que también se pueda acceder a la página usando estos otros nombres/alias (por ejemplo, el nombre anterior después de cambiar el nombre del alias para mantener el enlace posterior en funcionamiento). La sintaxis es:
    alternativename1, alternativename2, ... +WEBSITE_CSS_URL=URL del archivo CSS externo +WEBSITE_HTML_HEADER=Adición en la parte inferior del encabezado HTML (común en todas las páginas) +WEBSITE_HTACCESS=Sitio web .htaccess archivo +EnterHereLicenseInformation=Ingrese aquí metadatos o información de licencia para llenar un archivo README.md. si distribuye su sitio web como plantilla, el archivo se incluirá en el paquete temptate. +PageNameAliasHelp=Nombre o alias de la página.
    Este alias también se utiliza para forjar una URL SEO cuando el sitio web se ejecuta desde un host virtual de un servidor Web (como Apacke, Nginx, ...). Utilice el botón "%s" para editar este alias. +MediaFiles=Mediateca +EditCss=Editar propiedades web +EditMenu=Editar menú +EditPageMeta=Editar propiedades +Webpage=Página web/contenedor +HomePage=Página Principal +PreviewOfSiteNotYetAvailable=Vista previa de su sitio web %s aún no disponible. Primero debe 'Importar una plantilla de sitio web completa' o simplemente 'Agregar una página / contenedor'. +RequestedPageHasNoContentYet=La página solicitada con id %s todavía no tiene contenido o el archivo de caché .tpl.php fue eliminado. Editar el contenido de la página para resolver esto. +PageContent=Página/Contenair +PageDeleted=Página/Contenair '%s' del sitio web %s eliminado +PageAdded=Página/Contenair '%s' añadido +ViewSiteInNewTab=Ver el sitio en una nueva pestaña +ViewPageInNewTab=Ver la página en una nueva pestaña +SetAsHomePage=Establecer como página de inicio +RealURL=URL real +ViewWebsiteInProduction=Ver sitio web utilizando las URL de inicio +SetHereVirtualHost=uso con Apache/NGinx/...
    Crea en su servidor web (Apache, Nginx, ...) de un host virtual dedicado con PHP habilitado y un directorio raíz en
    %s +ExampleToUseInApacheVirtualHostConfig=Ejemplo para usar en la configuración del host virtual Apache: +YouCanAlsoTestWithPHPS=Para usar con el servidor PHP incorporado
    en el entorno de desarrollo, es posible que prefiera probar el sitio con el servidor web PHP incorporado (se requiere PHP 5.5) ejecutando
    php -S 0.0.0.0:8080 -t %s +YouCanAlsoDeployToAnotherWHP=  Ejecute su sitio web con otro proveedor de alojamiento Dolibarr
    Si no tiene un servidor web como Apache o NGinx disponible en Internet, puede exportar e importar su sitio web a otra instancia de Dolibarr proporcionada por otro proveedor de alojamiento Dolibarr que proporcione el servicio completo integración con el módulo del sitio web. Puede encontrar una lista de algunos proveedores de hosting Dolibarr en https://saas.dolibarr.org +CheckVirtualHostPerms=Verifique también que el host virtual tenga permiso para %s en los archivos
    %s +ReadPerm=Leer +TestDeployOnWeb=Probar / implementar en la web +PreviewSiteServedByWebServer=Vista previa %s en una nueva pestaña.

    La %s servirá un servidor web externo (como Apache, Nginx, IIS). Debe instalar y configurar este servidor antes de apuntar al directorio:
    %s
    URL servida por un servidor externo:
    %s +PreviewSiteServedByDolibarr=Vista previa %s en una nueva pestaña.

    La %s servirá el servidor de Dolibarr para que no necesite instalar ningún servidor web adicional (como Apache, Nginx, IIS).
    El inconveniente es que la URL de las páginas no es fácil de usar y comienza con la ruta de acceso de su Dolibarr.
    URL servido por Dolibarr:
    %s

    para usar su propio servidor web externo para servir este sitio web, cree un host virtual en su servidor web que señale el directorio
    %s
    luego ingrese el nombre de este servidor virtual y haga clic en el otro botón de vista previa. +VirtualHostUrlNotDefined=URL del host virtual servido por el servidor web externo no definido +SyntaxHelp=Ayuda sobre consejos de sintaxis específicos +YouCanEditHtmlSource=
    Puede incluir código PHP en esta fuente usando etiquetas <?php ?>. Las siguientes variables globales están disponibles: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    También puede incluir contenido de otra página / contenedor con la siguiente sintaxis:
    <?php includeContainer('alias_of_container_to_include'); ?>

    Puede hacer una redirección a otra página / contenedor con la siguiente sintaxis (Nota: no envíe ningún contenido antes de una redirección):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    para agregar un enlace a otra página, use la sintaxis:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    Para incluir un enlace para descargar un archivo almacenado en el documentos directorio, use el document.phpenvoltura:
    Ejemplo, para un archivo en documentos / ecm (debe registrarse), la sintaxis es:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    Para un archivo en documentos / medios (directorio abierto para acceso público), la sintaxis es:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    Para un archivo compartido con un enlace compartido (acceso abierto utilizando la clave hash para compartir archivos), la sintaxis es:
    <a href="/document.php?hashp=publicsharekeyoffile">

    Para incluir unimagen almacenado en el documentos directorio, use el viewimage.php envoltura:
    Ejemplo, para una imagen en documentos / medios (directorio abierto para acceso público), la sintaxis es:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    Más ejemplos de HTML o código dinámico disponibles en la documentación wiki
    . +SiteAdded=Sitio web añadido +LanguageMustNotBeSameThanClonedPage=Clonar una página como traducción. El idioma de la nueva página debe ser diferente al idioma de la página de origen. +OrEnterPageInfoManually=O crea una página desde cero o desde una plantilla de página ... +IDOfPage=Id de página +BackToListForThirdParty=Volver a la lista de terceros +DisableSiteFirst=Deshabilitar sitio web primero +AnotherContainer=Así es como se incluye el contenido de otra página / contenedor (puede tener un error aquí si habilita el código dinámico porque el subcontenedor incrustado puede no existir) +SorryWebsiteIsCurrentlyOffLine=Lo sentimos, este sitio web está actualmente fuera de línea. Vuelve más tarde ... +WEBSITE_USE_WEBSITE_ACCOUNTS=Habilitar la tabla de cuenta del sitio web +WEBSITE_USE_WEBSITE_ACCOUNTSTooltip=Habilite la tabla para almacenar las cuentas del sitio web (inicio de sesión / pase) para cada sitio web / tercero +YouMustDefineTheHomePage=Primero debe definir la página de inicio predeterminada +OnlyEditionOfSourceForGrabbedContentFuture=Advertencia: la creación de una página web mediante la importación de una página web externa está reservada para usuarios experimentados. Dependiendo de la complejidad de la página de origen, el resultado de la importación puede diferir del original. Además, si la página de origen usa estilos CSS comunes o JavaScript conflictivo, puede romper el aspecto o las características del editor del sitio web cuando se trabaja en esta página. Este método es una forma más rápida de crear una página, pero se recomienda crear su nueva página desde cero o desde una plantilla de página sugerida.
    Tenga en cuenta también que el editor en línea puede no funcionar correctamente cuando se usa en una página externa capturada. +OnlyEditionOfSourceForGrabbedContent=Solo es posible la edición de código fuente HTML cuando el contenido fue capturado de un sitio externo +WebsiteRootOfImages=Directorio raíz para imágenes de sitios web +AliasPageAlreadyExists=La página Alias %s ya existe +ThisPageIsTranslationOf=Esta página / contenedor es una traducción de +NoWebSiteCreateOneFirst=No se ha creado ningún sitio web todavía. Crea uno primero. +GoTo=Ir +DynamicPHPCodeContainsAForbiddenInstruction=Agrega código PHP dinámico que contiene la instrucción PHP ' %s ' que está prohibido por defecto como contenido dinámico (ver opciones ocultas WEBSITE_PHP_ALLOW_xxx para aumentar la lista de comandos permitidos). +NotAllowedToAddDynamicContent=No tiene permiso para agregar o editar contenido dinámico PHP en sitios web. Pida permiso o simplemente mantenga el código en las etiquetas php sin modificar. +ReplaceWebsiteContent=Buscar o reemplazar contenido del sitio web +DeleteAlsoJs=¿Eliminar también todos los archivos JavaScript específicos de este sitio web? +DeleteAlsoMedias=¿Eliminar también todos los archivos multimedia específicos de este sitio web? +MyWebsitePages=Mis páginas del sitio web +SearchReplaceInto=Búsqueda | Reemplazar en +CSSContentTooltipHelp=Ingrese aquí el contenido CSS. Para evitar cualquier conflicto con el CSS de la aplicación, asegúrese de anteponer todas las declaraciones con la clase .bodywebsite. Por ejemplo:

    #mycssselector, input.myclass:hover { ... }
    debe ser
    .bodywebsite #mycssselector, .bodywebsite input.myclass:hover { ... }

    Nota: Si tiene un archivo grande sin este prefijo, puede usar 'lessc' para convertirlo y agregar el prefijo .bodywebsite en todas partes.\n  +LinkAndScriptsHereAreNotLoadedInEditor=Advertencia: Este contenido se genera solo cuando se accede al sitio desde un servidor. No se usa en modo Edición, por lo que si necesita cargar archivos javascript también en modo edición, simplemente agregue su etiqueta 'script src = ...' en la página. +EditInLineOnOff=El modo 'Editar en línea' es %s +ShowSubContainersOnOff=El modo para ejecutar 'contenido dinámico' es %s +MainLanguage=Lenguaje principal +OtherLanguages=Otros idiomas +UseManifest=Proporcione un archivo manifest.json +PublicAuthorAlias=Alias de autor público +AvailableLanguagesAreDefinedIntoWebsiteProperties=Los idiomas disponibles se definen en las propiedades del sitio web +ReplacementDoneInXPages=Reemplazo realizado en páginas o contenedores %s diff --git a/htdocs/langs/es_EC/withdrawals.lang b/htdocs/langs/es_EC/withdrawals.lang new file mode 100644 index 00000000000..0b7b0147e43 --- /dev/null +++ b/htdocs/langs/es_EC/withdrawals.lang @@ -0,0 +1,100 @@ +# Dolibarr language file - Source file is en_US - withdrawals +CustomersStandingOrdersArea=Área de órdenes de pago por débito directo +SuppliersStandingOrdersArea=Área de pedidos de pago directo de crédito +StandingOrdersPayment=Ordenes de pago por débito directo +StandingOrderPayment=Orden de pago por domiciliación bancaria +NewStandingOrder=Nueva orden de domiciliación bancaria +StandingOrderToProcess=Para procesar +WithdrawalsReceipts=Pedidos de domiciliación bancaria +WithdrawalReceipt=Orden de dèbito directo +LastWithdrawalReceipts=Últimos archivos de débito directo %s +WithdrawalsLines=Líneas de pedido de débito directo +RequestStandingOrderToTreat=Solicitud de orden de pago por domiciliación bancaria para procesar +RequestStandingOrderTreated=Solicitud de orden de pago por domiciliación procesada +NotPossibleForThisStatusOfWithdrawReceiptORLine=Todavía no es posible. El estado de retiro debe establecerse en "acreditado" antes de declarar el rechazo en líneas específicas. +NbOfInvoiceToWithdraw=Nº de factura calificada con orden de domiciliación bancaria en espera. +NbOfInvoiceToWithdrawWithInfo=Número de facturas de clientes con órdenes de pago de débito directo que tienen información de cuenta bancaria definida +InvoiceWaitingWithdraw=Factura en espera de domiciliación bancaria +AmountToWithdraw=Cantidad a retirar +WithdrawsRefused=Deposito directo rechazado +NoInvoiceToWithdraw=No hay factura de cliente con "solicitudes de débito directo" abierta. Vaya a la pestaña '%s' en la tarjeta de factura para hacer una solicitud. +ResponsibleUser=Usuario responsable +WithdrawalsSetup=Configuración de pago por débito directo +WithdrawStatistics=Estadísticas de pago por débito directo +WithdrawRejectStatistics=Estadísticas de rechazo de pagos por débito directo +LastWithdrawalReceipt=Últimos recibos de débito directo %s +MakeWithdrawRequest=Realizar una solicitud de pago por débito directo +WithdrawRequestsDone=%s solicitudes de pago por débito directo registradas +ThirdPartyBankCode=Código bancario de terceros +NoInvoiceCouldBeWithdrawed=Ninguna factura debitada con éxito. Verifique que las facturas estén en compañías con un IBAN válido y que el IBAN tenga un UMR (referencia única de mandato) con el modo %s. +ClassCredited=Clasificar acreditado +ClassCreditedConfirm=¿Seguro que desea clasificar este recibo de retiro como acreditado en su cuenta bancaria? +TransData=Fecha de transmisión +TransMetod=Método de transmisión +StandingOrderReject=Emitir un rechazo +WithdrawalRefused=Retiro rechazado +WithdrawalRefusedConfirm=¿Está seguro de que desea introducir un rechazo de retiro para la sociedad +RefusedData=Fecha de rechazo +RefusedReason=Motivo del rechazo +RefusedInvoicing=Facturación del rechazo +NoInvoiceRefused=No cargue el rechazo +InvoiceRefused=Factura rechazada (Cargar el rechazo al cliente) +StatusWaiting=Esperando +StatusTrans=Enviado +StatusCredited=Acreditado +StatusRefused=Rechazado +StatusMotif1=Fondos insuficientes +StatusMotif2=Solicitud impugnada +StatusMotif3=No hay orden de pago por domiciliación bancaria +StatusMotif4=Órdenes de venta +StatusMotif5=RIB inutilizable +StatusMotif8=Otra razon +CreateForSepaFRST=Crear archivo de débito directo (SEPA FRST) +CreateForSepaRCUR=Crear archivo de débito directo (SEPA RCUR) +CreateAll=Crear archivo de débito directo (todos) +CreateBanque=Solo banco +OrderWaiting=Esperando tratamiento +NotifyTransmision=Transmisión de retirada +NotifyCredit=Crédito por Retiro +NumeroNationalEmetter=Número del Transmisor Nacional +WithBankUsingRIB=Para cuentas bancarias utilizando RIB +WithBankUsingBANBIC=Para cuentas bancarias utilizando IBAN/BIC/SWIFT +BankToReceiveWithdraw=Cuenta bancaria receptora +CreditDate=Crédito en +WithdrawalFileNotCapable=No se puede generar el archivo de recibo de retiro para su país %s (su país no es compatible) +ShowWithdraw=Mostrar orden de débito directo +IfInvoiceNeedOnWithdrawPaymentWontBeClosed=Sin embargo, si la factura tiene al menos una orden de pago de débito directo aún no procesada, no se establecerá como pagada para permitir la gestión previa de retiros. +DoStandingOrdersBeforePayments=Esta pestaña le permite solicitar una orden de pago por débito directo. Una vez hecho esto, vaya al menú de Banco-> órdenes de Débito Directo para administrar la orden de débito directo. Cuando se cierra la orden de pago, el pago en factura se registra automáticamente y la factura se cierra si el resto a pagar es nulo. +WithdrawalFile=Archivo de retiro +SetToStatusSent=Establecer en estado "Archivo enviado" +ThisWillAlsoAddPaymentOnInvoice=Esto también registrará los pagos a facturas y los clasificará como "Pago" si permanecen a pagar es nulo +StatisticsByLineStatus=Estadísticas por estado de las líneas +RUMLong=Referencia única de mandato +RUMWillBeGenerated=Si está vacío, se generará una UMR (referencia de mandato única) una vez que se guarde la información de la cuenta bancaria. +WithdrawMode=Modo de débito directo (FRST o RECUR) +WithdrawRequestAmount=Importe de la solicitud de domiciliación bancaria: +WithdrawRequestErrorNilAmount=No se puede crear una solicitud de domiciliación bancaria por cantidad vacía. +SepaMandate=Mandato de Débito Directo SEPA +SepaMandateShort=Mandato de SEPA +PleaseReturnMandate=Por favor devuelva este formulario de mandato por correo electrónico a %s o por correo a +SEPALegalText=Al firmar este formulario de mandato, usted autoriza (A) %s a enviar instrucciones a su banco para débitar su cuenta y (B) a su banco a débitar su cuenta de acuerdo con las instrucciones de %s. Como parte de sus derechos, usted tiene derecho a un reembolso de su banco bajo los términos y condiciones de su acuerdo con su banco. El reembolso se debe reclamar dentro de 8 semanas a partir de la fecha en que su cuenta fue debitada. Sus derechos con respecto al mandato anterior se explican en una declaración que puede obtener de su banco. +CreditorIdentifier=Identificador de acreedor +CreditorName=Nombre del acreedor +SEPAFillForm=(B) Por favor complete todos los campos marcados con * +SEPAFormYourName=Tu nombre +SEPAFormYourBAN=Su nombre de cuenta bancaria (IBAN) +SEPAFormYourBIC=Su código de identificación bancaria (BIC) +PleaseCheckOne=Por favor, marque uno solo +DirectDebitOrderCreated=Orden de domiciliación %s creada +CreateForSepa=Crear un archivo de débito directo +END_TO_END=Etiqueta XML SEPA "EndToEndId": identificación única asignada por transacción +USTRD=Etiqueta XML SEPA "no estructurada" +ADDDAYS=Agregar días a la fecha de ejecución +InfoCreditSubject=Pago de la orden de pago por débito directo %s por el banco +InfoCreditMessage=La orden de pago por débito directo %s ha sido pagada por el banco
    Datos de pago: %s +InfoTransSubject=Transmisión de orden de pago por débito directo %s al banco +InfoTransMessage=La orden de pago por débito directo %s ha sido enviada al banco por %s %s.

    +InfoTransData=Cantidad: %s
    Método: %s
    Fecha: %s +InfoRejectSubject=Orden de pago por débito directo rechazada +InfoRejectMessage=Hola,

    la orden de pago por débito directo de la factura %s relacionada con la empresa %s, con una cantidad de %s ha sido rechazada por el banco.

    --
    %s +ModeWarning=Opción para el modo real no se estableció, nos detenemos después de esta simulación diff --git a/htdocs/langs/es_EC/workflow.lang b/htdocs/langs/es_EC/workflow.lang new file mode 100644 index 00000000000..1ae33221454 --- /dev/null +++ b/htdocs/langs/es_EC/workflow.lang @@ -0,0 +1,14 @@ +# Dolibarr language file - Source file is en_US - workflow +WorkflowSetup=Tamaño original +ThereIsNoWorkflowToModify=No hay modificaciones de flujo de trabajo disponibles con los módulos activados. +descWORKFLOW_PROPAL_AUTOCREATE_ORDER=Crear automáticamente un pedido de ventas después de firmar una propuesta comercial (el nuevo pedido tendrá la misma cantidad que la propuesta) +descWORKFLOW_PROPAL_AUTOCREATE_INVOICE=Cree automáticamente una factura de cliente después de que se firme una propuesta comercial (la nueva factura tendrá el mismo monto que la propuesta) +descWORKFLOW_CONTRACT_AUTOCREATE_INVOICE=Crear automáticamente una factura de cliente después de validar un contrato +descWORKFLOW_ORDER_AUTOCREATE_INVOICE=Crear automáticamente una factura de cliente después de cerrar un pedido de ventas (la nueva factura tendrá el mismo importe que el pedido) +descWORKFLOW_ORDER_CLASSIFY_BILLED_PROPAL=Clasifique la propuesta de origen vinculada como facturada cuando el pedido de ventas esté configurado como facturado (y si el monto del pedido es el mismo que el monto total de la propuesta vinculada firmada) +descWORKFLOW_INVOICE_CLASSIFY_BILLED_PROPAL=Clasifique la propuesta de origen vinculado como facturada cuando la factura del cliente se valida (y si el monto de la factura es el mismo que el monto total de la propuesta vinculada firmada) +descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_ORDER=Clasifique el pedido de ventas de origen vinculado como facturado cuando se valida la factura del cliente (y si el monto de la factura es el mismo que el monto total del pedido vinculado) +descWORKFLOW_INVOICE_CLASSIFY_BILLED_ORDER=Clasifique el pedido de ventas de origen vinculado como facturado cuando la factura del cliente se establece como pagada (y si el monto de la factura es el mismo que el monto total del pedido vinculado) +descWORKFLOW_ORDER_CLASSIFY_SHIPPED_SHIPPING=Clasifique el pedido de ventas de origen vinculado como enviado cuando se valida un envío (y si la cantidad enviada por todos los envíos es la misma que en el pedido para actualizar) +descWORKFLOW_ORDER_CLASSIFY_BILLED_SUPPLIER_PROPOSAL=Clasifique la propuesta del proveedor de origen vinculado como facturada cuando se valida la factura del proveedor (y si el monto de la factura es el mismo que el monto total de la propuesta vinculada) +descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Clasifique la orden de compra de origen vinculado como facturada cuando se valida la factura del proveedor (y si el monto de la factura es el mismo que el monto total del pedido vinculado) diff --git a/htdocs/langs/es_ES/accountancy.lang b/htdocs/langs/es_ES/accountancy.lang index 909d0a3d874..e1bac9ea90f 100644 --- a/htdocs/langs/es_ES/accountancy.lang +++ b/htdocs/langs/es_ES/accountancy.lang @@ -121,6 +121,7 @@ InvoiceLinesDone=Líneas de facturas contabilizadas ExpenseReportLines=Líneas de informes de gastos a contabilizar ExpenseReportLinesDone=Líneas de informes de gastos contabilizadas IntoAccount=Contabilizar línea con la cuenta contable +TotalForAccount=Total for accounting account Ventilate=Contabilizar @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Cuenta contable para registrar donaciones ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Cuenta contable para registrar subscripciones ACCOUNTING_PRODUCT_BUY_ACCOUNT=Cuenta contable predeterminada para los productos comprados (si no se define en el producto) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_ACCOUNT=Cuenta contable predeterminada para los productos vendidos (si no se define en el producto) ACCOUNTING_PRODUCT_SOLD_INTRA_ACCOUNT=Cuenta contable predeterminada para los productos vendidos en la CEE (si no se define en el producto) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Cuenta contable predeterminada para los productos vendidos fuera de la CEE (si no se define en el producto) + ACCOUNTING_SERVICE_BUY_ACCOUNT=Cuenta contable predeterminada para los servicios comprados (si no se define en el servicio) +ACCOUNTING_SERVICE_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_ACCOUNT=Cuenta contable predeterminada para los servicios vendidos (si no se define en el servico) ACCOUNTING_SERVICE_SOLD_INTRA_ACCOUNT=Cuenta contable predeterminada para los servicios vendidos en la CEE (si no se define en el servico) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Cuenta contable predeterminada para los servicios vendidos fuera de la CEE (si no se define en el producto) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Tercero desconoci ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Cuenta del tercero desconocida o tercero desconocido. Error de bloqueo UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Cuenta del tercero desconocida y cuenta de espera no definida. Error de bloqueo PaymentsNotLinkedToProduct=Pagos no vinculados a un producto/servicio +OpeningBalance=Opening balance ShowOpeningBalance=Show opening balance HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Grupo de cuenta PcgtypeDesc=Group 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. +Reconcilable=Reconcilable + TotalVente=Total facturación antes de impuestos TotalMarge=Total margen ventas @@ -307,11 +317,13 @@ Modelcsv_quadratus=Exportar a Quadratus QuadraCompta Modelcsv_ebp=Exportar a EBP Modelcsv_cogilog=Eportar a Cogilog Modelcsv_agiris=Exportar a Agiris -Modelcsv_LDCompta=Exportar para LD Compta (v9 y superior) (En pruebas) +Modelcsv_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Exportar a OpenConcerto (En pruebas) Modelcsv_configurable=Exportación CSV Configurable Modelcsv_FEC=Exportación FEC Modelcsv_Sage50_Swiss=Exportación a Sage 50 Suiza +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Id plan contable ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Modo ventas OptionModeProductSellIntra=Modo Ventas exportación CEE OptionModeProductSellExport=Modo ventas exportación otros paises OptionModeProductBuy=Modo compras +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries OptionModeProductSellDesc=Mostrar todos los productos con cuenta contable de ventas OptionModeProductSellIntraDesc=Mostrar todos los productos con cuenta contable para ventas en CEE. OptionModeProductSellExportDesc=Mostrar todos los productos con cuenta contable para otras ventas al exterior. OptionModeProductBuyDesc=Mostrar todos los productos con cuenta contable de compras +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=Eliminar código contable de las líneas que no existen en el plan contable CleanHistory=Resetear todos los vínculos del año seleccionado PredefinedGroups=Grupos personalizados @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Cuenta eliminada del grupo SaleLocal=Venta local SaleExport=Venta de exportación SaleEEC=Venta en CEE +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=Rango de cuenta contable diff --git a/htdocs/langs/es_ES/admin.lang b/htdocs/langs/es_ES/admin.lang index c3ea6b5330e..3256a1806f7 100644 --- a/htdocs/langs/es_ES/admin.lang +++ b/htdocs/langs/es_ES/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Servidor web usuario/grupo NoSessionFound=Parece que su PHP no puede listar las sesiones activas. El directorio de salvaguardado de sesiones (%s) puede estar protegido (por ejemplo, por los permisos del sistema operativo o por la directiva open_basedir de su PHP). DBStoringCharset=Codificación de la base de datos para el almacenamiento de datos DBSortingCharset=Codificación de la base de datos para clasificar los datos +HostCharset=Host charset ClientCharset=Juego de caracteres del cliente ClientSortingCharset=Colación de clientes WarningModuleNotActive=El módulo %s debe ser activado @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Nota: Su PHP limita el tamaño máximo de archivos a sub NoMaxSizeByPHPLimit=Ninguna limitación interna en su servidor PHP MaxSizeForUploadedFiles=Tamaño máximo de los documentos a subir (0 para prohibir la subida) UseCaptchaCode=Utilización de código gráfico (CAPTCHA) en la página de inicio de sesión -AntiVirusCommand= Ruta completa hacia el comando del antivirus -AntiVirusCommandExample= Ejemplo para ClamWin: c:\\Program Files (x86)\\ClamWin\\bin\\clamscan.exe
    Ejemplo para ClamAv: /usr/bin/clamscan +AntiVirusCommand=Ruta completa hacia el comando del antivirus +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= Parámetros complementarios en la línea de comandos -AntiVirusParamExample= Ejemplo para ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=Configuración del módulo Contabilidad UserSetup=Configuración gestión de los usuarios MultiCurrencySetup=Configuración del módulo multidivisa @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Opción deshabilitada en demo FeatureAvailableOnlyOnStable=Funcionaliad disponible únicamente en versiones oficiales estables BoxesDesc=Los paneles son componentes que muestran algunos datos que pueden añadirse para personalizar algunas páginas. Puede elegir entre mostrar o no el panel mediante la selección de la página de destino y haciendo clic en 'Activar', o haciendo clic en la papelera para desactivarlo. OnlyActiveElementsAreShown=Sólo los elementos de módulos activados son mostrados. -ModulesDesc=Los módulos/aplicaciones definen qué funcionalidad está habilitada en el software. Algunos módulos requieren permisos que se deben conceder 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 activar/desactivar un módulo/aplicación. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. ModulesMarketPlaceDesc=Puede encontrar más módulos para descargar en sitios web externos en Internet ... ModulesDeployDesc=Si los permisos en su sistema de archivos lo permiten, puede utilizar esta herramienta para instalar un módulo externo. El módulo estará entonces visible en la pestaña %s. ModulesMarketPlaces=Buscar módulos externos... @@ -212,6 +213,7 @@ CompatibleUpTo=Compatible con la versión %s NotCompatible=Este módulo no parece compatible con su Dolibarr %s (Min %s - Max %s). CompatibleAfterUpdate=Este módulo requiere una actualización de su Dolibarr %s (Min %s - Max %s). SeeInMarkerPlace=Ver en la tienda +SeeSetupOfModule=Vea la configuración del módulo %s Updated=Actualizado Nouveauté=Novedad AchatTelechargement=Comprar/Descargar @@ -221,6 +223,7 @@ DoliPartnersDesc=Lista de empresas que ofrecen módulos y desarrollos a medida.< WebSiteDesc=Sitios web de referencia para encontrar más módulos (no core)... DevelopYourModuleDesc=Algunas soluciones para desarrollar su propio módulo ... URL=URL +RelativeURL=Relative URL BoxesAvailable=Paneles disponibles BoxesActivated=Paneles activados ActivateOn=Activar en @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Casilla de verificación ExtrafieldCheckBoxFromList=Casilla de selección de tabla ExtrafieldLink=Objeto adjuntado ComputedFormula=Campo combinado -ComputedFormulaDesc=Puede introducir aquí una fórmula utilizando otras propiedades de objeto o cualquier código PHP para obtener un valor calculado dinámico. Puede utilizar cualquier fórmula compatible con PHP, incluido el operador de condición "?" y los objetos globales siguientes: $db, $conf, $langs, $mysoc, $user, $object.
    ATENCIÓN: Sólo algunas propiedades de $object pueden estar disponibles. Si necesita propiedades no cargadas, solo busque el objeto en su fórmula como en el segundo ejemplo.
    Usando un campo computado significa que no puede ingresar ningún valor de la interfaz. Además, si hay un error de sintaxis, la fórmula puede devolver nada.

    Ejemplo de fórmula:
    $object->id < 10 ? round($object->id / 2, 2) : ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Ejemlo de recarga de objeto
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id : ($obj->rowid ? $obj->rowid : $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5 : '-1'

    Otro ejemplo de fórmula para forzar la carga del objeto y su objeto principal:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref : 'Parent project not found' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Almacenar campo combinado ComputedpersistentDesc=Los campos adicionales calculados se almacenarán en la base de datos, sin embargo, el valor solo se volverá a calcular cuando se cambie el objeto de este campo. ¡Si el campo calculado depende de otros objetos o datos globales, este valor podría ser incorrecto! ExtrafieldParamHelpPassword=Mantener este campo vacío significa que el valor se almacenará sin cifrado (el campo permanecerá solo oculto con estrellas en la pantalla).
    Establezca aquí el valor 'auto' para usar la regla de cifrado predeterminada para guardar la contraseña en la base de datos (entonces el valor leído será solo el hash, no hay forma de recuperar el valor original) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Deje este campo vacío para usar el valor por defecto DefaultLink=Enlace por defecto SetAsDefault=Establecer por defecto ValueOverwrittenByUserSetup=Atención: Este valor puede ser sobreescrito por un valor específico de la configuración del usuario (cada usuario puede tener su propia url clicktodial) -ExternalModule=Módulo externo - Instalado en el directorio %s +ExternalModule=External module +InstalledInto=Installed into directory %s BarcodeInitForthird-parties=Inicialización masiva de códigos de barras para terceros BarcodeInitForProductsOrServices=Inicio masivo de código de barras para productos o servicios CurrentlyNWithoutBarCode=Actualmente tiene %s registros de %s %s sin código de barras definido. @@ -947,7 +951,7 @@ DictionaryCanton=Provincias DictionaryRegion=Regiones DictionaryCountry=Países DictionaryCurrency=Monedas -DictionaryCivility=Tratamiento (Sr. Sra. etc.) +DictionaryCivility=Honorific titles DictionaryActions=Tipos de eventos de la agenda DictionarySocialContributions=Tipos de impuestos sociales o fiscales DictionaryVAT=Tasa de IVA (Impuesto sobre ventas en EEUU) @@ -988,6 +992,7 @@ VATIsNotUsedDesc=El tipo de IVA propuesto por defecto es 0. Este es el caso de a VATIsUsedExampleFR=En Francia, se trata de las sociedades u organismos que eligen un régimen fiscal general (General simplificado o General normal), régimen en el cual se declara el IVA. VATIsNotUsedExampleFR=En Francia, se trata de asociaciones exentas de IVA o sociedades, organismos o profesiones liberales que han elegido el régimen fiscal de módulos (IVA en franquicia), pagando un IVA en franquicia sin hacer declaración de IVA. Esta elección hace aparecer la anotación "IVA no aplicable - art-293B del CGI" en las facturas. ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=Tasa LocalTax1IsNotUsed=No sujeto LocalTax1IsUsedDesc=Uso de un 2º tipo de impuesto (Distinto del IVA) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=El tipo de IRPF propuesto por defecto en las creaciones de LocalTax2IsNotUsedDescES=El tipo de IRPF propuesto por defecto es 0. Final de regla. LocalTax2IsUsedExampleES=En España, se trata de personas físicas: autónomos y profesionales independientes que prestan servicios y empresas que han elegido el régimen fiscal de módulos. LocalTax2IsNotUsedExampleES=En España, se trata de empresas no sujetas al régimen fiscal de módulos. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=Informes de impuestos locales CalcLocaltax1=Ventas - Compras CalcLocaltax1Desc=Los informes se calculan con la diferencia entre las ventas y las compras @@ -1018,6 +1026,7 @@ CalcLocaltax2=Compras CalcLocaltax2Desc=Los informes se basan en el total de las compras CalcLocaltax3=Ventas CalcLocaltax3Desc=Los informes se basan en el total de las ventas +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=Etiqueta que se utilizará si no se encuentra traducción para este código LabelOnDocuments=Etiqueta sobre documentos LabelOrTranslationKey=Clave de traducción o cadena @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Informe de gastos no aprobado Delays_MAIN_DELAY_HOLIDAYS=Días libres a aprobar SetupDescription1=Antes de comenzar a usar Dolibarr, se deben definir algunos parámetros iniciales y habilitar/configurar los módulos. SetupDescription2=Las siguientes dos secciones son obligatorias (las dos primeras entradas en el menú Configuración): -SetupDescription3=%s->%s
    Parámetros básicos para personalizar el comportamiento por defecto de Dolibarr (por ejemplo características relacionadas con el país) -SetupDescription4=%s -> %s
    Este software es una colección de varios módulos, todos más o menos independientes. Los módulos relevantes para tus necesidades deben ser activados y configurados. Se añadirán nuevas funcionalidades a los menús por cada módulo que se active. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. SetupDescription5=Las otras entradas de configuración gestionan parámetros opcionales. LogEvents=Auditoría de la seguridad de eventos Audit=Auditoría @@ -1128,7 +1137,7 @@ LogEventDesc=Activa el registro de eventos de seguridad aquí. Los administrador AreaForAdminOnly=Los parámetros de configuración solamente pueden ser tratados por usuarios administrador SystemInfoDesc=La información del sistema es información técnica accesible solamente en solo lectura a los administradores. SystemAreaForAdminOnly=Esta área está disponible solo para usuarios administradores. Los permisos de usuario de Dolibarr no pueden cambiar esta restricción. -CompanyFundationDesc=Edite la información de la empresa o institución. Haga clic en el botón "%s" a pié de página. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. AccountantDesc=Si tiene un contable/asesor externo, puede editar aquí su información. AccountantFileNumber=Código contable DisplayDesc=Los parámetros que afectan el aspecto y el comportamiento de Dolibarr se pueden modificar aquí. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Reglas para generar y validar contraseñas. DisableForgetPasswordLinkOnLogonPage=No mostrar el vínculo "Contraseña olvidada" en la página de login UsersSetup=Configuración del módulo usuarios UserMailRequired=E-Mail necesario para crear un usuario nuevo +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### HRMSetup=Setup del módulo RRHH ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Modelo de documento de facturas BillsPDFModulesAccordindToInvoiceType=Modelos de documentos de facturas según tipo de factura PaymentsPDFModules=Modelo de documentos de pago ForceInvoiceDate=Forzar la fecha de factura a la fecha de validación -SuggestedPaymentModesIfNotDefinedInInvoice=Formas de pago sugeridas para las facturas si no están definidas explícitamente +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice SuggestPaymentByRIBOnAccount=Sugerir el pago por domiciliación en la cuenta SuggestPaymentByChequeToAddress=Sugerir el pago por cheque a FreeLegalTextOnInvoices=Texto libre en facturas @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Configuración de pagos a proveedores PropalSetup=Configuración del módulo Presupuestos ProposalsNumberingModules=Módulos de numeración de presupuestos ProposalsPDFModules=Modelos de documentos de presupuestos -SuggestedPaymentModesIfNotDefinedInProposal=Formas de pago sugeridas en presupuestos si no están definidas para los mismos +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal FreeLegalTextOnProposal=Texto libre en presupuestos WatermarkOnDraftProposal=Marca de agua en presupuestos borrador (en caso de estar vacío) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Preguntar por cuenta bancaria a usar en el presupuesto @@ -1322,6 +1334,7 @@ WAREHOUSE_ASK_WAREHOUSE_DURING_ORDER=Almacén a utilizar para el pedido ##### Suppliers Orders ##### BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_ORDER=Preguntar por cuenta bancaria a usar en el pedido a proveedor ##### Orders ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=Configuración de Gestión de Pedidos OrdersNumberingModules=Módulos de numeración de los pedidos OrdersModelModule=Modelos de documentos de pedidos @@ -1720,7 +1733,7 @@ MultiCompanySetup=Configuración del módulo Multi-empresa ##### Suppliers ##### SuppliersSetup=Configuración del módulo de proveedores SuppliersCommandModel=Plantilla completa de Pedidos a proveedores -SuppliersCommandModelMuscadet=Plantilla completa de la orden de compra +SuppliersCommandModelMuscadet=Plantilla completa de la orden de compra (implementación anterior de la plantilla de cornas) SuppliersInvoiceModel=Plantilla completa de Factura de proveedor SuppliersInvoiceNumberingModel=Modelos de numeración de facturas de proveedor IfSetToYesDontForgetPermission=Si se establece en un valor no nulo, no olvide proporcionar permisos a los grupos o usuarios permitidos para la segunda aprobación @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Ocultar imágenes en el Menú superior LeftMenuBackgroundColor=Color de fondo para el Menú izquierdo BackgroundTableTitleColor=Color de fondo para Tabla título línea BackgroundTableTitleTextColor=Color del texto para la línea de título de la tabla +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Color de fondo para líneas de tabla odd BackgroundTableLineEvenColor=Color de fondo para todas las líneas de tabl MinimumNoticePeriod=Período mínimo de notificación (Su solicitud de licencia debe hacerse antes de este período) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Referencia Dolibarr no encontrada en ID de mensaje FormatZip=Código postal MainMenuCode=Código de entrada del menú (menú principal) ECMAutoTree=Mostrar arbol automático GED -OperationParamDesc=Defina valores para usar para la acción, o cómo extraer valores. Por ejemplo:
    objproperty1=SET:abc
    objproperty1=SET:un valor con reemplazo de __objproperty1__
    objproperty3=SETIFEMPTY:abc
    objproperty4 =EXTRACT:HEADER:X-Myheaderkey.*[^\\s]+(.*)
    options_myextrafield=EXTRACT:SUBJECT:([^\\s]*)
    object.objproperty5=EXTRACT:BODY:el nombre de mi empresa es\\s([^\\s]*)

    Utilizar el caracter ; como separador para extraer o configurar varias propiedades. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Horario de apertura OpeningHoursDesc=Teclea el horario normal de apertura de tu compañía. ResourceSetup=Configuración del módulo Recursos @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Advertencia, los valores altos ralentiz ModuleActivated=El módulo %s está activado y ralentiza dramáticamente la interfaz EXPORTS_SHARE_MODELS=Los modelos de exportación son compartidos con todos. ExportSetup=Configuración del módulo de exportación. +ImportSetup=Setup of module Import InstanceUniqueID=ID única de la instancia SmallerThan=Menor que LargerThan=Mayor que @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Realice un Ping anónimo '+1' al servidor de la base Dolibarr FeatureNotAvailableWithReceptionModule=Función no disponible cuando el módulo Recepción está activado EmailTemplate=Plantilla para e-mail EMailsWillHaveMessageID=Los correos electrónicos tendrán una etiqueta 'Referencias' que coincida con esta sintaxis -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/es_ES/bills.lang b/htdocs/langs/es_ES/bills.lang index 8e7f5965969..0e13bb6e406 100644 --- a/htdocs/langs/es_ES/bills.lang +++ b/htdocs/langs/es_ES/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Facturas de proveedores SupplierBill=Factura proveedor SupplierBills=Facturas de proveedores Payment=Pago -PaymentBack=Reembolso -CustomerInvoicePaymentBack=Reembolso +PaymentBack=Devolución +CustomerInvoicePaymentBack=Devolución Payments=Pagos PaymentsBack=Reembolsos paymentInInvoiceCurrency=en la divisa de las facturas PaidBack=Reembolsado DeletePayment=Eliminar el pago ConfirmDeletePayment=¿Está seguro de querer eliminar este pago? -ConfirmConvertToReduc=¿Desea convertir este %s en un descuento absoluto? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? ConfirmConvertToReduc2=El importe se guardará entre todos los descuentos y podría utilizarse como un descuento para una factura actual o futura para este cliente. -ConfirmConvertToReducSupplier=¿Desea convertir este %s en un descuento absoluto? +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? ConfirmConvertToReducSupplier2=El importe se guardará entre todos los descuentos y podría utilizarse como un descuento para una factura actual o futura de este proveedor. SupplierPayments=Pagos a proveedor ReceivedPayments=Pagos recibidos @@ -209,17 +209,13 @@ NumberOfBillsByMonth=Nº de facturas por mes AmountOfBills=Importe de las facturas AmountOfBillsHT=Importe de las facturas (Sin IVA) AmountOfBillsByMonthHT=Importe de las facturas por mes (Sin IVA) -ShowSocialContribution=Ver tasa social/fiscal -ShowBill=Ver factura -ShowInvoice=Ver factura -ShowInvoiceReplace=Ver factura rectificativa -ShowInvoiceAvoir=Ver abono -ShowInvoiceDeposit=Ver factura de anticipo -ShowInvoiceSituation=Ver situación factura UseSituationInvoices=Permitir factura de situación UseSituationInvoicesCreditNote=Permitir factura de situación de abono Retainedwarranty=Garantía retenida +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Porcentaje predeterminado de garantía retenida +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=Para pagar en %s toPayOn=pagar en %s RetainedWarranty=Garantía retenida @@ -230,7 +226,6 @@ setretainedwarranty=Definir garantía retenida setretainedwarrantyDateLimit=Definir fecha límite de garantía retenida RetainedWarrantyDateLimit=Fecha límite de garantía retenida RetainedWarrantyNeed100Percent=La factura de situación debe estar en el progreso 100%% para que se muestre en PDF -ShowPayment=Ver pago AlreadyPaid=Ya pagado AlreadyPaidBack=Ya reembolsado AlreadyPaidNoCreditNotesNoDeposits=Ya pagado (excluidos los abonos y anticipos) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Generado desde la plantilla de facturas recurrentes %s WarningInvoiceDateInFuture=Atención: la fecha de la factura es mayor que la fecha actual WarningInvoiceDateTooFarInFuture=Atención: la fecha de la factura es muy lejana a la fecha actual ViewAvailableGlobalDiscounts=Ver los descuentos disponibles +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Estado PaymentConditionShortRECEP=Acuse de recibo @@ -441,7 +437,7 @@ PaymentTypeFAC=Factor PaymentTypeShortFAC=Factor BankDetails=Datos bancarios BankCode=Código banco -DeskCode=Código de oficina +DeskCode=Oficina BankAccountNumber=Número cuenta BankAccountNumberKey=DC Residence=Dirección @@ -509,7 +505,7 @@ ToMakePayment=Pagar ToMakePaymentBack=Reembolsar ListOfYourUnpaidInvoices=Listado de facturas impagadas NoteListOfYourUnpaidInvoices=Nota: Este listado incluye solamente los terceros de los que usted es comercial. -RevenueStamp=Timbre fiscal +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=Esta opción solo está disponible al crear una factura desde la pestaña 'cliente' del tercero YouMustCreateInvoiceFromSupplierThird=Esta opción solo está disponible al crear una factura desde la pestaña 'proveedor' del tercero YouMustCreateStandardInvoiceFirstDesc=Tiene que crear una factura estandar antes de convertirla a "plantilla" para crear una nueva plantilla de factura @@ -575,3 +571,4 @@ AutoFillDateTo=Establecer fecha de finalización para la línea de servicio con AutoFillDateToShort=Definir fecha de finalización MaxNumberOfGenerationReached=Máximo número de generaciones alcanzado BILL_DELETEInDolibarr=Factura eliminada +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/es_ES/blockedlog.lang b/htdocs/langs/es_ES/blockedlog.lang index d3e4fc44d0a..d18c47c2657 100644 --- a/htdocs/langs/es_ES/blockedlog.lang +++ b/htdocs/langs/es_ES/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Registros inalterables ShowAllFingerPrintsMightBeTooLong=Mostrar todos los registros archivados (puede ser largo) ShowAllFingerPrintsErrorsMightBeTooLong=Mostrar todos los registros de archivo no válidos (puede ser largo) DownloadBlockChain=Descargar huellas dactilares -KoCheckFingerprintValidity=El registro archivado no es válido. Significa que alguien (¿un pirata informático?) Modificó algunos datos de este registro archivado después de que se grabó, o borró el registro archivado anterior (verifique que exista la línea con el # anterior). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=El registro archivado es válido. Significa que no se modificó ningún dato en esta línea y el registro sigue a la anterior. OkCheckFingerprintValidityButChainIsKo=El registro archivado parece válido en comparación con el anterior, pero la cadena se dañó anteriormente. AddedByAuthority=Almacenado en autoridad remota diff --git a/htdocs/langs/es_ES/cashdesk.lang b/htdocs/langs/es_ES/cashdesk.lang index 3ed336cddc7..c348ec90580 100644 --- a/htdocs/langs/es_ES/cashdesk.lang +++ b/htdocs/langs/es_ES/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Añadir este artículo RestartSelling=Retomar la venta SellFinished=Venta completada PrintTicket=Imprimir +SendTicket=Send ticket NoProductFound=Ningún artículo encontrado ProductFound=Producto encontrado NoArticle=Ningún artículo @@ -48,6 +49,7 @@ Footer=Pié de página AmountAtEndOfPeriod=Importe al final del período (día, mes o año) TheoricalAmount=Importe teórico RealAmount=Importe real +CashFence=Cash fence CashFenceDone=Cierre de caja realizado para el período. NbOfInvoices=Nº de facturas Paymentnumpad=Tipo de Pad para introducir el pago. @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS necesita categorías de productos para trabajar OrderNotes=Pedidos CashDeskBankAccountFor=Cuenta por defecto a usar para cobros en NoPaimementModesDefined=No hay modo de pago definido en la configuración de TakePOS -TicketVatGrouped=Agrupar por tipo de IVA en los tickets -AutoPrintTickets=Imprimir tickets automáticamente +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Habilitar características para Bar o Restaurante ConfirmDeletionOfThisPOSSale=¿Está seguro de querer eliminar la venta actual? ConfirmDiscardOfThisPOSSale=¿Quiere descartar esta venta? @@ -87,7 +90,19 @@ HeadBar=Cabecera SortProductField=Field for sorting products Browser=Navegador BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/es_ES/companies.lang b/htdocs/langs/es_ES/companies.lang index 3beee367458..0a98814f97f 100644 --- a/htdocs/langs/es_ES/companies.lang +++ b/htdocs/langs/es_ES/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted=La empresa "%s" ha sido eliminada ListOfContacts=Listado de contactos ListOfContactsAddresses=Listado de contactos ListOfThirdParties=Listado de terceros -ShowCompany=Mostrar tercero ShowContact=Mostrar contacto ContactsAllShort=Todos (sin filtro) ContactType=Tipo de contacto @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=Nombre del comercial SaleRepresentativeLastname=Apellidos del comercial ErrorThirdpartiesMerge=Se produjo un error al eliminar los terceros. Por favor, compruebe el log. Los cambios han sido anulados. NewCustomerSupplierCodeProposed=Código de cliente o proveedor ya utilizado, se sugiere un nuevo código +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Tipo de pago - Cliente PaymentTermsCustomer=Condiciones de pago - Cliente diff --git a/htdocs/langs/es_ES/compta.lang b/htdocs/langs/es_ES/compta.lang index c2c829d861d..19261fa227b 100644 --- a/htdocs/langs/es_ES/compta.lang +++ b/htdocs/langs/es_ES/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=Consulte %sanálisis de pagos%s para obtener un cálc SeeReportInDueDebtMode=Consulte %sanálisis de facturas %s para un cálculo basado en facturas registradas conocidas, incluso si aún no se han contabilizado en Libro mayor. SeeReportInBookkeepingMode=Consulte el %sInforme de facturación%s para realizar un cálculo en la Tabla Libro mayor RulesAmountWithTaxIncluded=- Los importes mostrados son con todos los impuestos incluídos. -RulesResultDue=- Incluye las facturas pendientes, los gastos, el IVA, las donaciones pagadas o no. También se incluyen los salarios pagados.
    - Se basa en la fecha de la validación de las facturas e IVA y en la fecha de vencimiento de los gastos. Para los salarios definidos con el módulo de Salarios, se usa la fecha de valor del pago. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- Incluye los pagos realizados sobre las facturas, las gastos y el IVA.
    - Se basa en las fechas de pago de las facturas, gastos e IVA. La fecha de donación para las donaciones -RulesCADue=- Incluye las facturas a clientes, estén pagadas o no.
    - Se basa en la fecha de validación de las mismas.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- Incluye los pagos efectuados de las facturas a clientes.
    - Se basa en la fecha de pago de las mismas
    RulesCATotalSaleJournal=Incluye todas las líneas de crédito del diario de ventas. RulesAmountOnInOutBookkeepingRecord=Incluye registro en su libro mayor con cuentas contables que tiene el grupo "GASTOS" o "INGRESOS" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Volumen de ventas emitidas por tipo de impuesto TurnoverCollectedbyVatrate=Volumen de ventas cobradas por tipo de impuesto PurchasebyVatrate=Compra por tasa de impuestos LabelToShow=Etiqueta corta +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/es_ES/errors.lang b/htdocs/langs/es_ES/errors.lang index 4c32a8ed7a8..9d8bb8cf2dd 100644 --- a/htdocs/langs/es_ES/errors.lang +++ b/htdocs/langs/es_ES/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=Archivo no recibido íntegramente por el servidor. ErrorNoTmpDir=Directorio temporal de recepción %s inexistente ErrorUploadBlockedByAddon=Subida bloqueada por un plugin PHP/Apache. ErrorFileSizeTooLarge=El tamaño del fichero es demasiado grande. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Longitud del campo demasiado largo para el tipo int (máximo %s cifras) ErrorSizeTooLongForVarcharType=Longitud del campo demasiado largo para el tipo cadena (máximo %s cifras) ErrorNoValueForSelectType=Los valores de la lista deben ser indicados @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # Warnings WarningParamUploadMaxFileSizeHigherThanPostMaxSize=El parámetro PHP upload_max_filesize (%s) es más alto que el parámetro PHP post_max_size (%s). Esta no es una configuración consistente. 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. diff --git a/htdocs/langs/es_ES/install.lang b/htdocs/langs/es_ES/install.lang index 462b4d627af..17812d15fbd 100644 --- a/htdocs/langs/es_ES/install.lang +++ b/htdocs/langs/es_ES/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=Este PHP soporta Curl PHPSupportCalendar=Este PHP admite extensiones de calendarios. PHPSupportUTF8=Este PHP soporta las funciones UTF8. PHPSupportIntl=Este PHP soporta las funciones Intl. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=Este PHP soporta las funciones %s. PHPMemoryOK=Su memoria máxima de sesión PHP esta definida a %s. Esto debería ser suficiente. PHPMemoryTooLow=Su memoria máxima de sesión PHP está definida en %s bytes. Esto es muy poco. Se recomienda modificar el parámetro memory_limit de su archivo php.ini a por lo menos %s bytes. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=Su PHP no soporta Curl. ErrorPHPDoesNotSupportCalendar=Su instalación de PHP no admite extensiones de calendario. ErrorPHPDoesNotSupportUTF8=Este PHP no soporta las funciones UTF8. Resuelva el problema antes de instalar Dolibarr ya que no podrá funcionar correctamente. ErrorPHPDoesNotSupportIntl=Este PHP no soporta las funciones Intl. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Su instalación de PHP no soporta las funciones %s. ErrorDirDoesNotExists=El directorio %s no existe o no es accesible. ErrorGoBackAndCorrectParameters=Vuelva atrás y corrija los parámetros inválidos... @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=La aplicación intenta instalar la actualización YouTryInstallDisabledByFileLock=La aplicación intenta instalar la actualización, pero las páginas de instalación/actualización se han desactivado por razones de seguridad (mediante el archivo de bloqueo install.lock del directorio de documentos de dolibarr).
    ClickHereToGoToApp=Haga clic aquí para ir a su aplicación ClickOnLinkOrRemoveManualy=Haga clic en el siguiente enlace y si siempre llega a esta página, debe eliminar manualmente el archivo install.lock del directorio de documentos +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/es_ES/link.lang b/htdocs/langs/es_ES/link.lang index 1f9c077de3a..7bfa0b17d00 100644 --- a/htdocs/langs/es_ES/link.lang +++ b/htdocs/langs/es_ES/link.lang @@ -8,3 +8,4 @@ LinkRemoved=El vínculo %s ha sido eliminado ErrorFailedToDeleteLink= Error al eliminar el vínculo '%s' ErrorFailedToUpdateLink= Error al actualizar el vínculo '%s' URLToLink=URL a enlazar +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/es_ES/mails.lang b/htdocs/langs/es_ES/mails.lang index a8d72baaba2..a8930d2dd3d 100644 --- a/htdocs/langs/es_ES/mails.lang +++ b/htdocs/langs/es_ES/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=No se han encontrado contactos/direcciones con alguna NoContactLinkedToThirdpartieWithCategoryFound=No se han encontrado contactos/direcciones con alguna categoría OutGoingEmailSetup=Configuración del correo saliente InGoingEmailSetup=Configuración del correo entrante -OutGoingEmailSetupForEmailing=Configuración de correo saliente (para correo masivo) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Configuración de correo saliente predeterminada Information=Información ContactsWithThirdpartyFilter=Contactos con filtro de terceros. diff --git a/htdocs/langs/es_ES/main.lang b/htdocs/langs/es_ES/main.lang index d72146a9945..026de108ad1 100644 --- a/htdocs/langs/es_ES/main.lang +++ b/htdocs/langs/es_ES/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Guardar y permanecer SaveAndNew=Guardar y nuevo TestConnection=Probar la conexión ToClone=Copiar +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Seleccione los datos que desea copiar: NoCloneOptionsSpecified=No hay datos definidos para copiar Of=de @@ -829,6 +830,8 @@ Gender=Sexo Genderman=Hombre Genderwoman=Mujer ViewList=Vista de listado +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Obligatorio Hello=Hola GoodBye=Adiós @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Seleccione sus opciones de gráfico para construir u Measures=Medidas XAxis=Eje X YAxis=Eje Y +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/es_ES/modulebuilder.lang b/htdocs/langs/es_ES/modulebuilder.lang index 5ce907dcc4f..53e0ce43f50 100644 --- a/htdocs/langs/es_ES/modulebuilder.lang +++ b/htdocs/langs/es_ES/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=Listado de entradas de diccionarios ListOfPermissionsDefined=Listado de permisos definidos SeeExamples=Vea ejemplos aquí EnabledDesc=Condición para tener este campo activo (Ejemplos: 1 o $conf->global->MYMODULE_MYOPTION) -VisibleDesc=¿El campo es visible? (Ejemplos: 0=Nunca visible, 1=Visible en la lista y en formularios de creación/actualización/visualización, 2=Visible únicamente en la lista, 3=Visible únicamente en formularios de creación/actualización/visualización (no en la lista),4=Visible en la lista y en formularios únicamente de actualización/visualización (no en creación),5=Visible en la lista y en formularios únicamente de visualización (ni en creación ni en actualización). Usar un valor negativo significa que por defecto no se muestra el campo en la lista pero puede ser seleccionado para su visualización) Puede ser una expresión, por ejemplo:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty DisplayOnPdf=Display on PDF IsAMeasureDesc=¿Se puede acumular el valor del campo para obtener un total en el listado? (Ejemplos: 1 o 0) SearchAllDesc=¿El campo se usa para realizar una búsqueda desde la herramienta de búsqueda rápida? (Ejemplos: 1 o 0) diff --git a/htdocs/langs/es_ES/other.lang b/htdocs/langs/es_ES/other.lang index d74254a2e71..9ede964857b 100644 --- a/htdocs/langs/es_ES/other.lang +++ b/htdocs/langs/es_ES/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Actualmente solo es posible 1 campo como X-Axis. Solo se ha seleccionado el primer campo seleccionado. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Validación pedido de cliente Notify_ORDER_SENTBYMAIL=Envío pedido de cliente por e-mail Notify_ORDER_SUPPLIER_SENTBYMAIL=Envío pedido a proveedor por e-mail @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=URL de la página WEBSITE_TITLE=Título WEBSITE_DESCRIPTION=Descripción WEBSITE_IMAGE=Imagen -WEBSITE_IMAGEDesc=Ruta relativa de las imágenes. Puede mantenerla vacía, ya que rara vez se usa (puede ser usada por el contenido dinámico para mostrar una vista previa de una lista de publicaciones de blog). Use __WEBSITEKEY__ en la ruta si depende del nombre del sitio web. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Claves LinesToImport=Líneas a importar diff --git a/htdocs/langs/es_ES/products.lang b/htdocs/langs/es_ES/products.lang index 2ed6f756286..83090c479e6 100644 --- a/htdocs/langs/es_ES/products.lang +++ b/htdocs/langs/es_ES/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=¡Esta herramienta actualiza la tasa de IVA definida en MassBarcodeInit=Inicialización masiva de códigos de barra MassBarcodeInitDesc=Puede usar esta página para inicializar el código de barras en los objetos que no tienen un código de barras definido. Compruebe antes que el módulo de códigos de barras esté configurado correctamente. ProductAccountancyBuyCode=Código contable (compras) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Código contable (ventas) ProductAccountancySellIntraCode=Código contable (venta intracomunitaria) ProductAccountancySellExportCode=Código de contabilidad (venta de exportación) @@ -165,7 +167,7 @@ SuppliersPrices=Precios de proveedores SuppliersPricesOfProductsOrServices=Precios de proveedores (productos o servicios) CustomCode=Código aduanero CountryOrigin=País de origen -Nature=Naturaleza del producto (materia prima/acabado) +Nature=Nature of product (material/finished) ShortLabel=Etiqueta corta Unit=Unidad p=u. diff --git a/htdocs/langs/es_ES/projects.lang b/htdocs/langs/es_ES/projects.lang index c4298377e9e..763e2b2cb06 100644 --- a/htdocs/langs/es_ES/projects.lang +++ b/htdocs/langs/es_ES/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=que estoy vinculado al proyecto Time=Tiempo ListOfTasks=Listado de tareas GoToListOfTimeConsumed=Ir al listado de tiempos consumidos -GoToListOfTasks=Mostrar como listado -GoToGanttView=mostrar como Gantt GanttView=Vista de Gantt ListProposalsAssociatedProject=Listado de presupuestos asociados al proyecto ListOrdersAssociatedProject=Listado de pedidos de clientes asociados al proyecto @@ -188,7 +186,7 @@ PlannedWorkload=Carga de trabajo prevista PlannedWorkloadShort=Carga de trabajo ProjectReferers=Items relacionados ProjectMustBeValidatedFirst=El proyecto debe validarse primero -FirstAddRessourceToAllocateTime=Asignar un usuario a la tarea para asignar tiempo +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=Entrada por día InputPerWeek=Entrada por semana InputPerMonth=Entrada por mes @@ -240,6 +238,7 @@ LatestModifiedProjects=Últimos %s proyectos modificados OtherFilteredTasks=Otras tareas filtradas NoAssignedTasks=Sin tareas asignadas ( Asigne proyectos/tareas al usuario actual desde el selector superior para indicar tiempos en ellas) ThirdPartyRequiredToGenerateInvoice=Se debe definir un tercero en el proyecto para poder facturarlo. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=Permitir comentarios de los usuarios sobre las tareas AllowCommentOnProject=Permitir comentarios de los usuarios en los proyectos @@ -256,7 +255,7 @@ ServiceToUseOnLines=Servicio a utilizar en lineas. InvoiceGeneratedFromTimeSpent=Se ha generado la factura %s a partir del tiempo empleado en el proyecto ProjectBillTimeDescription=Verifique si ingresa la hoja de horas trabajadas en las tareas del proyecto y planea generar factura(s) a partir de la hoja para facturar al cliente del proyecto (no lo verifique si planea crear una factura que no se base en las hojas de horas trabajadas ingresadas). Nota: Para generar la factura, vaya a la pestaña 'Tiempo empleado' del proyecto y seleccione las líneas a incluir. ProjectFollowOpportunity=Seguir oportunidad -ProjectFollowTasks=Seguir tareas +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Uso: Oportunidad UsageTasks=Uso: Tareas @@ -265,3 +264,4 @@ InvoiceToUse=Borrador de factura para usar NewInvoice=Nueva factura OneLinePerTask=Una línea por tarea OneLinePerPeriod=Una línea por período +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/es_ES/receiptprinter.lang b/htdocs/langs/es_ES/receiptprinter.lang index f72e8676fd9..4876103a07b 100644 --- a/htdocs/langs/es_ES/receiptprinter.lang +++ b/htdocs/langs/es_ES/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Impresora de pruebas CONNECTOR_NETWORK_PRINT=Impresora de red CONNECTOR_FILE_PRINT=Impresora Local CONNECTOR_WINDOWS_PRINT=Impresora local de Windows +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Impresora falsa para pruebas CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Perfil por defecto PROFILE_SIMPLE=Perfil simple PROFILE_EPOSTEP=Perfil Epos Tep @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Invoice month in letters DOL_VALUE_MONTH=Invoice month DOL_VALUE_DAY=Invoice day DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Ref. factura +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Número de IVA intracomunitario +DOL_VALUE_MYSOC_CAPITAL=Capital +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/es_ES/stripe.lang b/htdocs/langs/es_ES/stripe.lang index b7f92f55d9d..d34c8786689 100644 --- a/htdocs/langs/es_ES/stripe.lang +++ b/htdocs/langs/es_ES/stripe.lang @@ -32,6 +32,7 @@ VendorName=Nombre del vendedor CSSUrlForPaymentForm=Url de la hoja de estilo CSS para el formulario de pago NewStripePaymentReceived=Nuevo pago de Stripe recibido NewStripePaymentFailed=Nuevo pago de Stripe intentado, pero ha fallado +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Clave secreta test STRIPE_TEST_PUBLISHABLE_KEY=Clave de test publicable STRIPE_TEST_WEBHOOK_KEY=Clave de prueba Webhook @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Enlace para configurar Stripe WebHook para llamar a l ToOfferALinkForLiveWebhook=Enlace para configurar Stripe WebHook para llamar a la IPN (modo real) PaymentWillBeRecordedForNextPeriod=El pago se registrará para el próximo período. ClickHereToTryAgain=Haga clic aquí para volver a intentarlo ... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Debido a las fuertes reglas de autenticación del cliente, la creación de una tarjeta debe realizarse desde la oficina administrativa de Stripe. Puede hacer clic aquí para activar el registro de cliente de Stripe: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/es_ES/users.lang b/htdocs/langs/es_ES/users.lang index 62e0d03710c..b843c3e6ba4 100644 --- a/htdocs/langs/es_ES/users.lang +++ b/htdocs/langs/es_ES/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Usuarios y sus propiedades. DomainUser=Usuario de dominio Reactivate=Reactivar CreateInternalUserDesc=Este formulario le permite crear un usuario interno para su empresa/organización. Para crear un usuario externo (cliente, proveedor, etc), use el botón "Crear una cuenta de usuario" desde la ficha de un contacto del tercero. -InternalExternalDesc=Un usuario interno es un usuario que pertenece a su empresa/organización.
    Un usuario externo es un usuario cliente, proveedor u otro.

    En los 2 casos, los permisos de usuarios definen los derechos de acceso, pero el usuario externo puede además tener un gestor de menús diferente al usuario interno (véase Inicio - Configuración - Entorno) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=El permiso se concede ya que lo hereda de un grupo al cual pertenece el usuario. Inherited=Heredado UserWillBeInternalUser=El usuario creado será un usuario interno (ya que no está ligado a un tercero en particular) @@ -113,3 +113,5 @@ CantDisableYourself=No puede deshabilitar su propio registro de usuario ForceUserExpenseValidator=Forzar validador de informes de gastos ForceUserHolidayValidator=Forzar validador de solicitud de días libres ValidatorIsSupervisorByDefault=Por defecto, el validador es el supervisor del usuario. Mantener vacío para mantener este comportamiento. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/es_ES/website.lang b/htdocs/langs/es_ES/website.lang index fdbed999abc..b76d1c83cf6 100644 --- a/htdocs/langs/es_ES/website.lang +++ b/htdocs/langs/es_ES/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=Ver página en una pestaña nueva SetAsHomePage=Establecer como Página de inicio RealURL=URL Real ViewWebsiteInProduction=Ver sitio web usando la URL de inicio -SetHereVirtualHost=Si puede crear, en su servidor web (Apache, Nginx...), un Host Virtual con PHP activado y un directorio Root en
    %s
    introduzca aquí el nombre del host virtual que ha creado, así que la previsualización puede verse usando este acceso directo al servidor, y no solo usando el servidor de Dolibarr +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS=En el entorno de desarrollo, es posible que prefiera probar el sitio con el servidor web incrustado de PHP (se requiere PHP 5.5) ejecutando
    php -S 0.0.0.0:8080 -t %s YouCanAlsoDeployToAnotherWHP=Ejecute su sitio web con otro proveedor de alojamiento Dolibarr
    Si no tiene un servidor web como Apache o NGinx disponible en Internet, puede exportar e importar su sitio web a otra instancia de Dolibarr proporcionada por otro proveedor de alojamiento de Dolibarr que brinde una integración completa con el módulo del sitio web. Puede encontrar una lista de algunos proveedores de hosting Dolibarr en https://saas.dolibarr.org CheckVirtualHostPerms=Compruebe también que el host virtual tiene %s en archivos en %s @@ -56,7 +57,7 @@ NoPageYet=No hay páginas todavía YouCanCreatePageOrImportTemplate=Puede crear una nueva página o importar una plantilla de sitio web completa SyntaxHelp=Ayuda en la sintaxis del código YouCanEditHtmlSourceckeditor=Puede editar código fuente HTML utilizando el botón "Origen" en el editor. -YouCanEditHtmlSource=
    Puede incluir código PHP en esta fuente usando las etiquetas <? Php?> . Las siguientes variables globales están disponibles: $ conf, $ db, $ mysoc, $ user, $ website, $ websitepage, $ weblangs.

    También puede incluir contenido de otra página / contenedor con la siguiente sintaxis:
    <? php includeContainer ('alias_of_container_to_include'); ?>

    Puede hacer una redirección a otra página / contenedor con la siguiente sintaxis (Nota: no envíe ningún contenido antes de una redirección):
    <? php redirectToContainer ('alias_of_container_to_redirect_to'); ?>

    Para agregar un enlace a otra página, use la sintaxis:
    <a href="alias_of_page_to_link_to.php"> mylink <a>

    Para incluir un enlace para descargar un archivo almacenado en el directorio de documentos , use el contenedor document.php :
    Ejemplo, para un archivo en documentos / ecm (debe registrarse), la sintaxis es:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/font>filename.ext">
    Para un archivo en documentos / medios (directorio abierto para acceso público), la sintaxis es:
    <a href="/document.php?modulepart=medias&file=[relative_dir/font>filename.ext">
    Para un archivo compartido con un enlace compartido (acceso abierto utilizando la clave hash para compartir archivos), la sintaxis es:
    <a href="/document.php?hashp=publicsharekeyoffile">

    Para incluir una imagen almacenada en el directorio de documentos , use el contenedor viewimage.php :
    Ejemplo, para una imagen en documentos / medios (directorio abierto para acceso público), la sintaxis es:
    <img src = "/ viewimage.php? modulepart = medias & file = [relative_dir /] filename.ext">

    Más ejemplos de HTML o código dinámico disponibles en la documentación wiki
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Clonar página/contenedor CloneSite=Clonar sitio SiteAdded=Sitio web agregado @@ -76,7 +77,7 @@ BlogPost=Entrada en el blog WebsiteAccount=Cuenta del sitio web WebsiteAccounts=Cuentas del sitio web AddWebsiteAccount=Crear cuenta de sitio web -BackToListOfThirdParty=Volver a la lista de Terceros +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Deshabilite primero el sitio web MyContainerTitle=Título de mi sitio web AnotherContainer=Así es como se incluye el contenido de otra página/contenedor (puede tener un error aquí si habilita el código dinámico porque el subcontenedor incrustado puede no existir) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Lo sentimos, este sitio web está actualmente fue WEBSITE_USE_WEBSITE_ACCOUNTS=Habilitar tabla de cuentas del sitio web WEBSITE_USE_WEBSITE_ACCOUNTSTooltip=Habilitar tabla para almacenar cuentas del sitio web (inicio de sesión/contraseña) para cada sitio web/tercero YouMustDefineTheHomePage=Antes debe definir la página de inicio por defecto -OnlyEditionOfSourceForGrabbedContentFuture=Atención: la creación de una página web mediante la importación de una página web externa está reservada para usuarios experimentados. Dependiendo de la complejidad de la página de origen, el resultado de la importación puede diferir una vez importado del original. Además, si la página de origen utiliza un estilo CSS común o un javascript no compatible, puede interrumpir el aspecto o las características del editor del sitio web al trabajar en esta página. Este método es una forma más rápida de tener una página, pero se recomienda crear su nueva página desde cero o desde una plantilla de página sugerida.
    También tenga en cuenta que solo será posible la edición de código HTML cuando el contenido de una página se haya inicializado al agarrar desde una página externa (el editor "en línea" NO estará disponible) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Nota: solo será posible editar una fuente HTML cuando el contenido de una página se integre utilizando una página externa GrabImagesInto=Obtener también imágenes encontradas en css y página. ImagesShouldBeSavedInto=Las imágenes deben guardarse en el directorio @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=Para buenas prácticas de SEO, use un texto de entre 5 MainLanguage=Main language OtherLanguages=Other languages UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/es_GT/accountancy.lang b/htdocs/langs/es_GT/accountancy.lang new file mode 100644 index 00000000000..9827b9d3795 --- /dev/null +++ b/htdocs/langs/es_GT/accountancy.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - accountancy +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 diff --git a/htdocs/langs/es_GT/admin.lang b/htdocs/langs/es_GT/admin.lang new file mode 100644 index 00000000000..27c312f77d7 --- /dev/null +++ b/htdocs/langs/es_GT/admin.lang @@ -0,0 +1,5 @@ +# Dolibarr language file - Source file is en_US - admin +MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the maximum filesize for upload to %s %s, irrespective of the value of this parameter +Module56Name=Telephony +Module56Desc=Telephony integration +EmailCollectorLoadThirdPartyHelp=You can use this action to use the email content to find and load an existing thirdparty in your database. The found (or created) thirdparty will be used for following actions that need it. In the parameter field you can use for example 'EXTRACT:BODY:Name:\\s([^\\s]*)' if you want to extract the name of the thirdparty from a string 'Name: name to find' found into the body. diff --git a/htdocs/langs/es_GT/companies.lang b/htdocs/langs/es_GT/companies.lang new file mode 100644 index 00000000000..6897cf22f06 --- /dev/null +++ b/htdocs/langs/es_GT/companies.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - companies +Contact=Contact diff --git a/htdocs/langs/es_GT/main.lang b/htdocs/langs/es_GT/main.lang new file mode 100644 index 00000000000..2e691473326 --- /dev/null +++ b/htdocs/langs/es_GT/main.lang @@ -0,0 +1,21 @@ +# Dolibarr language file - Source file is en_US - main +DIRECTION=ltr +FONTFORPDF=helvetica +FONTSIZEFORPDF=10 +SeparatorDecimal=. +SeparatorThousand=, +FormatDateShort=%m/%d/%Y +FormatDateShortInput=%m/%d/%Y +FormatDateShortJava=MM/dd/yyyy +FormatDateShortJavaInput=MM/dd/yyyy +FormatDateShortJQuery=mm/dd/yy +FormatDateShortJQueryInput=mm/dd/yy +FormatHourShortJQuery=HH:MI +FormatHourShort=%I:%M %p +FormatHourShortDuration=%H:%M +FormatDateTextShort=%b %d, %Y +FormatDateText=%B %d, %Y +FormatDateHourShort=%m/%d/%Y %I:%M %p +FormatDateHourSecShort=%m/%d/%Y %I:%M:%S %p +FormatDateHourTextShort=%b %d, %Y, %I:%M %p +FormatDateHourText=%B %d, %Y, %I:%M %p diff --git a/htdocs/langs/es_GT/modulebuilder.lang b/htdocs/langs/es_GT/modulebuilder.lang new file mode 100644 index 00000000000..8bbcc78a506 --- /dev/null +++ b/htdocs/langs/es_GT/modulebuilder.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - modulebuilder +ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: diff --git a/htdocs/langs/es_GT/projects.lang b/htdocs/langs/es_GT/projects.lang new file mode 100644 index 00000000000..7e42793b0e9 --- /dev/null +++ b/htdocs/langs/es_GT/projects.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - projects +CantRemoveProject=This project can't be removed as it is referenced by some other objects (invoice, orders or other). See referers tab. diff --git a/htdocs/langs/es_HN/accountancy.lang b/htdocs/langs/es_HN/accountancy.lang new file mode 100644 index 00000000000..9827b9d3795 --- /dev/null +++ b/htdocs/langs/es_HN/accountancy.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - accountancy +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 diff --git a/htdocs/langs/es_HN/admin.lang b/htdocs/langs/es_HN/admin.lang new file mode 100644 index 00000000000..27c312f77d7 --- /dev/null +++ b/htdocs/langs/es_HN/admin.lang @@ -0,0 +1,5 @@ +# Dolibarr language file - Source file is en_US - admin +MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the maximum filesize for upload to %s %s, irrespective of the value of this parameter +Module56Name=Telephony +Module56Desc=Telephony integration +EmailCollectorLoadThirdPartyHelp=You can use this action to use the email content to find and load an existing thirdparty in your database. The found (or created) thirdparty will be used for following actions that need it. In the parameter field you can use for example 'EXTRACT:BODY:Name:\\s([^\\s]*)' if you want to extract the name of the thirdparty from a string 'Name: name to find' found into the body. diff --git a/htdocs/langs/es_HN/companies.lang b/htdocs/langs/es_HN/companies.lang new file mode 100644 index 00000000000..6897cf22f06 --- /dev/null +++ b/htdocs/langs/es_HN/companies.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - companies +Contact=Contact diff --git a/htdocs/langs/es_HN/modulebuilder.lang b/htdocs/langs/es_HN/modulebuilder.lang new file mode 100644 index 00000000000..8bbcc78a506 --- /dev/null +++ b/htdocs/langs/es_HN/modulebuilder.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - modulebuilder +ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: diff --git a/htdocs/langs/es_HN/projects.lang b/htdocs/langs/es_HN/projects.lang new file mode 100644 index 00000000000..7e42793b0e9 --- /dev/null +++ b/htdocs/langs/es_HN/projects.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - projects +CantRemoveProject=This project can't be removed as it is referenced by some other objects (invoice, orders or other). See referers tab. diff --git a/htdocs/langs/es_MX/admin.lang b/htdocs/langs/es_MX/admin.lang index 9673e5b8955..441a6d31cb8 100644 --- a/htdocs/langs/es_MX/admin.lang +++ b/htdocs/langs/es_MX/admin.lang @@ -70,9 +70,7 @@ 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 AntiVirusCommand=Ruta completa del comando del antivirus -AntiVirusCommandExample=Ejemplo para ClamWin: c:\\ Progra~1\\ClamWin\\bin\\clamscan.exe
    Ejemplo para ClamAV: /usr/bin/clamscan 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 @@ -153,7 +151,6 @@ 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 ModulesDeployDesc=Si los permisos en tu sistema de archivos lo permiten, puedes usar esta herramienta para utilizar un módulo externo. El módulo entonces sera visible en la pestaña %s. ModulesMarketPlaces=Encontrar App/módulos externos @@ -236,8 +233,6 @@ DictionaryProspectStatus=Estatus del cliente potencial Upgrade=Actualizar LDAPFieldFirstName=Nombre(s) AGENDA_SHOW_LINKED_OBJECT=Mostrar objeto vinculado en la vista de agenda -SuppliersCommandModel=Complete template of Purchase Order -SuppliersInvoiceModel=Complete template of Vendor Invoice 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_MX/agenda.lang b/htdocs/langs/es_MX/agenda.lang index d4917197047..aa8f360dcfd 100644 --- a/htdocs/langs/es_MX/agenda.lang +++ b/htdocs/langs/es_MX/agenda.lang @@ -1,6 +1,5 @@ # Dolibarr language file - Source file is en_US - agenda ActionsOwnedBy=Evento propiedad de -AffectedTo=Asignado a Event=Evento ListOfActions=Lista de eventos ToUserOfGroup=A cualquier usuario del grupo diff --git a/htdocs/langs/es_MX/bills.lang b/htdocs/langs/es_MX/bills.lang index a6ee51cba02..a9e388cf198 100644 --- a/htdocs/langs/es_MX/bills.lang +++ b/htdocs/langs/es_MX/bills.lang @@ -43,5 +43,5 @@ CreditNote=Nota de crédito ReasonDiscount=Razón PaymentTypeCB=Tarjeta de crédito PaymentTypeShortCB=Tarjeta de crédito -PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template (old implementation of Sponge template) +PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template situationInvoiceShortcode_S=D diff --git a/htdocs/langs/es_MX/boxes.lang b/htdocs/langs/es_MX/boxes.lang new file mode 100644 index 00000000000..4ca95308953 --- /dev/null +++ b/htdocs/langs/es_MX/boxes.lang @@ -0,0 +1,13 @@ +# Dolibarr language file - Source file is en_US - boxes +BoxLoginInformation=Información de Login +BoxLastRssInfos=Información RSS +BoxLastProducts=Últimos %s Productos/Servicios +BoxLastSupplierBills=Últimas facturas de proveedor +BoxLastCustomerBills=Últimas facturas de clientes +BoxOldestUnpaidCustomerBills=Facturas de clientes sin pagar más antiguas +BoxOldestUnpaidSupplierBills=Facturas de proveedores sin pagar más antiguas +BoxLastProposals=Últimas propuestas comerciales +BoxLastCustomerOrders=Últimos pedidos de venta +BoxCurrentAccounts=Saldo de cuentas abiertas +BoxTitleLastModifiedPropals=Últimas %s cotizaciones modificadas +ForProposals=Propuestas diff --git a/htdocs/langs/es_MX/companies.lang b/htdocs/langs/es_MX/companies.lang index 72b4040e785..4ffbf46023e 100644 --- a/htdocs/langs/es_MX/companies.lang +++ b/htdocs/langs/es_MX/companies.lang @@ -7,8 +7,8 @@ DeleteContact=Eliminar un contacto/dirección ConfirmDeleteContact=¿Estás seguro que quieres borrar este contacto y toda la información heredada? MenuNewProspect=Nuevo prospecto MenuNewSupplier=Nuevo vendedor -NewCompany=Nueva compañía (prospecto, cliente, vendedor) -NewThirdParty=Nuevo tercero (prospecto, cliente, vendedor) +NewCompany=Nueva compañía (cliente potencial, cliente, proveedor) +NewThirdParty=Nuevo tercero (cleinte potencial, cliente, proveedor) CreateThirdPartyAndContact=Crear un tercero + un contacto hijo IdThirdParty=ID de tercero IdCompany=ID de empresa @@ -24,6 +24,7 @@ PriceFormatInCurrentLanguage=Formato de visualización de precios en el idioma y ThirdPartyEmail=Correo electrónico del tercero ThirdPartyCustomersWithIdProf12=Clientes con %s o %s ThirdPartySuppliers=Vendedores +ToCreateContactWithSameName=Creará automáticamente un contacto/dirección con la misma información en tercero. En la mayoría de los casos, incluso si su tercero es una persona física, la creación de un tercero solo es suficiente. ParentCompany=Empresa matriz ReportByQuarter=Reporte por tasa CivilityCode=Código de civilidad @@ -119,8 +120,18 @@ CompanyHasRelativeDiscount=Éste cliente tiene un descuento por defecto de %s CompanyHasNoRelativeDiscount=Este cliente no tiene ningún descuento relativo por defecto HasRelativeDiscountFromSupplier=Tiene un descuento predeterminado de %s%% de este proveedor HasNoRelativeDiscountFromSupplier=No tiene un descuento relativo predeterminado de este proveedor. +CompanyHasAbsoluteDiscount=Este cliente aún tiene descuentos disponibles (notas de crédito o pagos) por %s %s +CompanyHasDownPaymentOrCommercialDiscount=Este cliente aún tiene descuentos disponibles (notas de crédito o pagos) por %s %s CompanyHasCreditNote=Este cliente aún tiene notas de crédito por %s %s +HasNoAbsoluteDiscountFromSupplier=No se tiene un descuento disponible con este proveedor +HasAbsoluteDiscountFromSupplier=Se tiene descuentos disponibles (notas de credito o pagos) por %s%s para este proveedor +HasDownPaymentOrCommercialDiscountFromSupplier=Se tiene descuentos disponibles (notas de credito o pagos) por %s%s para este proveedor +HasCreditNoteFromSupplier=Se tienen notas de crédito por %s%s para este proveedor CompanyHasNoAbsoluteDiscount=Este cliente no tiene descuentos fijos disponibles +CustomerAbsoluteDiscountAllUsers=Descuento absoluto para el cliente (autorizado para todos los usuarios) +CustomerAbsoluteDiscountMy=Descuento absoluto para el cliente (autorizado por usted mismo) +SupplierAbsoluteDiscountAllUsers=Descuento absoluto con proveedor (dado por todos los usuarios) +SupplierAbsoluteDiscountMy=Descuento absoluto con proveedor (dado por usted mismo) DiscountNone=Ninguno ContactId=ID de contacto NoContactDefinedForThirdParty=No se ha definido un contacto para este tercero @@ -128,16 +139,33 @@ NoContactDefined=No hay contacto definido DefaultContact=Contacto/dirección por defecto DeleteACompany=Eliminar empresa PersonalInformations=Datos personales +CustomerCode=Código de cliente +SupplierCode=Código de proveedor +CustomerCodeShort=Código de cliente +SupplierCodeShort=Código de proveedor +CustomerCodeDesc=Código de cliente, único para todos los clientes +SupplierCodeDesc=Código de proveedor, único para todos los proveedores RequiredIfCustomer=Requerido si el tercero es un cliente o cliente potencial +RequiredIfSupplier=Requerido si el tercero es un proveedor +ValidityControledByModule=Validez controlada por el módulo +ThisIsModuleRules=Reglas para este módulo CompanyDeleted=Empresa "%s" eliminada de la base de datos. ListOfContacts=Lista de contactos/direcciones ListOfContactsAddresses=Lista de contactos/direcciones +ListOfThirdParties=Lista de terceros ContactsAllShort=Todos (Sin filtro) ContactForOrdersOrShipments=Contacto de la orden o del envío ContactForInvoices=Contacto de facturación NoContactForAnyOrderOrShipments=Este contacto no es un contacto para cualquier pedido o envío +NewContactAddress=Nuevo contacto/dirección EditCompany=Editar empresa +ThisUserIsNot=Este usuario no es un cliente potencial, cliente ni proveedor +VATIntraCheckDesc=El numero de control de IVA intracomunitario debe incluir el prefijo del país. El enlace %s permite consultar al servicio de control de números de IVA intracomunitario (VIES). Se requiere acceso a Internet desde el servidor para que este servicio funcione. +VATIntraCheckableOnEUSite=Verificar el numero de control de IVA intracomunitario en la web de la Comisión Europea +VATIntraManualCheck=También puedes verificar manualmente desde el sitio web de la comision europea %s ErrorVATCheckMS_UNAVAILABLE=No es posible realizar la verificación. El servicio de comprobación no es prestado por el país miembro (%s). +NorProspectNorCustomer=No es cliente potencial, ni cliente +JuridicalStatus=Tipo de entidad legal OthersNotLinkedToThirdParty=Otros, no vinculado a un tercero ProspectStatus=Estatus del cliente potencial TE_MEDIUM=Mediana empresa @@ -152,22 +180,37 @@ ChangeContactInProcess=Cambiar estado a 'Contacto en proceso' ChangeContactDone=Cambiar estado a 'Contacto realizado' NoParentCompany=Ninguno DolibarrLogin=Login de usuario +ExportDataset_company_1=Terceros (Empresas/fundaciones/personas físicas) y sus propiedades +ExportDataset_company_2=Contactos y propiedades +ImportDataset_company_1=Terceros y sus propiedades +ImportDataset_company_2=Contactos/Direcciones adicionales del tercero +ImportDataset_company_3=Cuentas de banco del tercero +ImportDataset_company_4=Representante de ventas del tercero (asigna representantes de ventas/usuarios de companias) +PriceLevel=Nivel de precio +PriceLevelLabels=Etiquetas de nivel de precios DeleteFile=Borrar archivo ConfirmDeleteFile=¿Seguro que quieres borrar este archivo? AllocateCommercial=Asignado al representante de ventas Organization=Organización +FiscalYearInformation=Año fiscal FiscalMonthStart=Més de inicio del año fiscal +YouMustAssignUserMailFirst=Debe crear un correo electrónico para este usuario primero para poder agregarle notificaciones de correo electrónico. YouMustCreateContactFirst=Para poder agregar notificaciones por correo electrónico, primero debe definir contactos con correos electrónicos válidos para el tercero +ListSuppliersShort=Lista de proveedores +ListProspectsShort=Lista de clientes potenciales +ListCustomersShort=Lista de clientes ThirdPartiesArea=Terceros/Contactos LastModifiedThirdParties=Últimos %s Terceros modificados UniqueThirdParties=Total de terceros InActivity=Abierta OutstandingBillReached=Max. para la cuenta pendiente alcanzada OrderMinAmount=Cantidad mínima por pedido +MonkeyNumRefModelDesc=Devuelve un número con formato %syymm-nnnn para el código de cliente y %syymm-nnnn para código de proveedor donde yy es el año, mm el mes y nnnn una secuencia numérica sin ruptura y sin regresar a 0. LeopardNumRefModelDesc=El código es libre. Este código puede ser modificado en cualquier momento. ManagingDirectors=Administrador(es) (CEO, Director, Presidente...) MergeOriginThirdparty=Tercero duplicado (tercero que deseas eliminar) MergeThirdparties=Combinar terceros +ConfirmMergeThirdparties=¿Seguro que deseas combinar este tercero con el tercero actual? Todos los objetos vinculados (facturas, pedidos, ...) de este tercero serán trasladados al tercero actual y despues se eliminara el tercero. ThirdpartiesMergeSuccess=Se han fusionado los terceros SaleRepresentativeLogin=Inicio de sesión del representante de ventas SaleRepresentativeFirstname=Nombre del representante de ventas diff --git a/htdocs/langs/es_MX/errors.lang b/htdocs/langs/es_MX/errors.lang new file mode 100644 index 00000000000..a1307643505 --- /dev/null +++ b/htdocs/langs/es_MX/errors.lang @@ -0,0 +1,4 @@ +# Dolibarr language file - Source file is en_US - errors +ErrorSubjectIsRequired=El tema del correo electrónico es obligatorio +ErrorFieldAccountNotDefinedForLine=Valor para la cuenta contable no definido para la línea (%s) +ErrorTooManyErrorsProcessStopped=Demasiados errores. Se detuvo el proceso. diff --git a/htdocs/langs/es_MX/externalsite.lang b/htdocs/langs/es_MX/externalsite.lang new file mode 100644 index 00000000000..0576f5b0be1 --- /dev/null +++ b/htdocs/langs/es_MX/externalsite.lang @@ -0,0 +1,4 @@ +# Dolibarr language file - Source file is en_US - externalsite +ExternalSiteSetup=Configurar vínculo a un sitio web externo +ExternalSiteModuleNotComplete=El módulo ExternalSite no estaba configurado correctamente. +ExampleMyMenuEntry=Mi entrada en el menú diff --git a/htdocs/langs/es_MX/ftp.lang b/htdocs/langs/es_MX/ftp.lang new file mode 100644 index 00000000000..68ba0a1ab91 --- /dev/null +++ b/htdocs/langs/es_MX/ftp.lang @@ -0,0 +1,11 @@ +# Dolibarr language file - Source file is en_US - ftp +FTPClientSetup=Configuración del módulo Cliente FTP +NewFTPClient=Configuración de nueva conexión FTP +FTPAreaDesc=Esta pantalla muestra una vista de un servidor FTP +SetupOfFTPClientModuleNotComplete=La configuración del módulo Cliente FTP parece estar incompleta +FailedToConnectToFTPServer=Error al conectarse al servidor FTP (servidor %s, puerto %s) +FailedToConnectToFTPServerWithCredentials=Error al iniciar sesión en el servidor FTP con el login/password definidos +FTPFailedToRemoveFile=Error al eliminar el archivo %s . +FTPFailedToRemoveDir=Error al eliminar el directorio %s : verifique los permisos y que el directorio esté vacío. +ChooseAFTPEntryIntoMenu=Elija un sitio FTP del menú... +FailedToGetFile=Error al obtener archivos %s diff --git a/htdocs/langs/es_MX/install.lang b/htdocs/langs/es_MX/install.lang index 254ae6b1547..32549c46947 100644 --- a/htdocs/langs/es_MX/install.lang +++ b/htdocs/langs/es_MX/install.lang @@ -38,7 +38,6 @@ GoToDolibarr=Ir a Dolibarr GoToSetupArea=Ir a Dolibarr (área de configuración) GoToUpgradePage=Ir a actualizar la página de nuevo WithNoSlashAtTheEnd=Sin la diagonal "/" al final -DirectoryRecommendation=IMPORTANT: You must use a directory that is outside of the web pages (so do not use a subdirectory of previous parameter). DolibarrAdminLogin=Dolibarr Admin Login ChoosedMigrateScript=Elija script de migración ProcessMigrateScript=Procesamiento de script diff --git a/htdocs/langs/es_MX/interventions.lang b/htdocs/langs/es_MX/interventions.lang new file mode 100644 index 00000000000..38725ecbb96 --- /dev/null +++ b/htdocs/langs/es_MX/interventions.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - interventions +StatusInterInvoiced=Facturada diff --git a/htdocs/langs/es_MX/link.lang b/htdocs/langs/es_MX/link.lang new file mode 100644 index 00000000000..b97dcbc1a69 --- /dev/null +++ b/htdocs/langs/es_MX/link.lang @@ -0,0 +1,10 @@ +# Dolibarr language file - Source file is en_US - link +LinkANewFile=Vincular un nuevo archivo / documento +LinkedFiles=Archivos enlazados y documentos +NoLinkFound=No hay enlaces registrados +LinkComplete=El archivo se ha vinculado correctamente +ErrorFileNotLinked=No se pudo vincular el archivo. +LinkRemoved=Se ha eliminado el enlace %s +ErrorFailedToDeleteLink=No se pudo eliminar el vínculo ' %s ' +ErrorFailedToUpdateLink=Error al actualizar el vínculo ' %s ' +URLToLink=URL para vincular diff --git a/htdocs/langs/es_MX/mails.lang b/htdocs/langs/es_MX/mails.lang new file mode 100644 index 00000000000..9846afc3bbb --- /dev/null +++ b/htdocs/langs/es_MX/mails.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - mails +MailMessage=Cuerpo del correo electronico diff --git a/htdocs/langs/es_MX/main.lang b/htdocs/langs/es_MX/main.lang index 16bf9b6bbec..257b51e4abb 100644 --- a/htdocs/langs/es_MX/main.lang +++ b/htdocs/langs/es_MX/main.lang @@ -85,7 +85,6 @@ DefaultValue=Valor predeterminado PriceUTTC=P.U. (IVA incl.) AmountInvoice=Importe de la factura AmountPayment=Importe de pago -MulticurrencyPaymentAmount=Monto del pago, moneda original AmountLT1=Importe impuestos 2 AmountLT2=Importe impuestos 3 AmountAverage=Importe promedio diff --git a/htdocs/langs/es_MX/modulebuilder.lang b/htdocs/langs/es_MX/modulebuilder.lang new file mode 100644 index 00000000000..d2e2992eac2 --- /dev/null +++ b/htdocs/langs/es_MX/modulebuilder.lang @@ -0,0 +1,12 @@ +# Dolibarr language file - Source file is en_US - modulebuilder +ObjectKey=Clave de objeto +ModuleBuilderDeschooks=Esta pestaña está dedicada a los ganchos. +ModuleBuilderDescwidgets=Esta pestaña está dedicada a administrar / crear widgets. +BuildDocumentation=Crear documentación +ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: +DescriptorFile=Archivo descriptor del módulo +ApiClassFile=Archivo para la clase API de PHP +PageForList=Página PHP para la lista de registro +PathToModulePackage=Ruta del módulo/aplicación zip +SpaceOrSpecialCharAreNotAllowed=No se permiten espacios ni caracteres especiales. +FileNotYetGenerated=Archivo aún no generado diff --git a/htdocs/langs/es_MX/multicurrency.lang b/htdocs/langs/es_MX/multicurrency.lang new file mode 100644 index 00000000000..f4741d43a4f --- /dev/null +++ b/htdocs/langs/es_MX/multicurrency.lang @@ -0,0 +1,18 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Divisas múltiples +ErrorAddRateFail=Error en la tasa agregada +ErrorAddCurrencyFail=Error en la divisa añadida +ErrorDeleteCurrencyFail=Error en la eliminación +multicurrency_syncronize_error=Error de sincronización: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Use la fecha del documento para encontrar la tasa de cambio, en lugar de usar la última tasa conocida +multicurrency_useOriginTx=Cuando se crea un objeto a partir de otro, mantenga la tasa original del objeto fuente (de lo contrario, use la tasa conocida más reciente) +CurrencyLayerAccount=API de CurrencyLayer +CurrencyLayerAccount_help_to_synchronize=Debe crear una cuenta en el sitio web %s para usar esta funcionalidad.
    Obtenga su clave API .
    Si usa una cuenta gratuita, no puede cambiar la moneda de origen (USD por defecto).
    Si su moneda principal no es USD, la aplicación lo recalculará automáticamente.

    Está limitado a 1000 sincronizaciones por mes. +multicurrency_appCurrencySource=Divisa de origen +multicurrency_alternateCurrencySource=Divisa de origen alternativa +CurrenciesUsed=Divisas utilizadas +CurrenciesUsed_help_to_add=Agregue las diferentes divisas y tasas que necesita usar en sus propuestas , pedidos etc. +MulticurrencyReceived=Recibido, divisa original +MulticurrencyRemainderToTake=Importe restante, divisa original +MulticurrencyPaymentAmount=Monto del pago, divisa original +AmountToOthercurrency=Importe para (en la divisa de la cuenta receptora) diff --git a/htdocs/langs/es_MX/oauth.lang b/htdocs/langs/es_MX/oauth.lang new file mode 100644 index 00000000000..922201394e7 --- /dev/null +++ b/htdocs/langs/es_MX/oauth.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - oauth +ConfigOAuth=Configuración de OAuth +OAuthServices=Servicios de OAuth +ManualTokenGeneration=Generación manual de tokens +TokenManager=Administrador de tokens +IsTokenGenerated=¿Se generó el token? +NoAccessToken=Ningún token de acceso guardado en la base de datos local +HasAccessToken=Se generó un token y se guardó en la base de datos local. +ToCheckDeleteTokenOnProvider=Haga clic aquí para verificar / eliminar la autorización guardada por el proveedor de OAuth %s +RequestAccess=Haga clic aquí para solicitar / renovar el acceso y recibir un nuevo token para guardar +UseTheFollowingUrlAsRedirectURI=Use la siguiente URL como URI de redireccionamiento al crear sus credenciales con su proveedor de OAuth: +ListOfSupportedOauthProviders=Ingrese las credenciales proporcionadas por su proveedor de OAuth2. Aquí solo se enumeran los proveedores de OAuth2 compatibles. Estos servicios pueden ser utilizados por otros módulos que necesitan autenticación OAuth2. +SeePreviousTab=Ver pestaña anterior +OAuthIDSecret=ID OAuth y Secret +TOKEN_EXPIRED=Token caducado +TOKEN_EXPIRE_AT=El token caduca a las +OAUTH_GOOGLE_NAME=Servicio de Google OAuth +OAUTH_GOOGLE_ID=ID de Google OAuth +OAUTH_GOOGLE_DESC=Vaya a esta página y luego a "Credenciales" para crear credenciales de OAuth +OAUTH_GITHUB_NAME=Servicio OAuth GitHub +OAUTH_GITHUB_ID=Id OAuth GitHub +OAUTH_GITHUB_DESC=Vaya a esta página y luego "Registre una nueva aplicación" para crear credenciales de OAuth diff --git a/htdocs/langs/es_MX/orders.lang b/htdocs/langs/es_MX/orders.lang index 84b219f56ad..a3bb0ddd512 100644 --- a/htdocs/langs/es_MX/orders.lang +++ b/htdocs/langs/es_MX/orders.lang @@ -2,7 +2,5 @@ StatusOrderCanceledShort=Cancelado StatusOrderCanceled=Cancelado PDFEinsteinDescription=A complete order model -PDFEratostheneDescription=A complete order model -PDFProformaDescription=A complete Proforma invoice template StatusSupplierOrderCanceledShort=Cancelado StatusSupplierOrderCanceled=Cancelado diff --git a/htdocs/langs/es_MX/other.lang b/htdocs/langs/es_MX/other.lang index 3404c216e5d..ac900b15595 100644 --- a/htdocs/langs/es_MX/other.lang +++ b/htdocs/langs/es_MX/other.lang @@ -2,4 +2,3 @@ Tools=Herramientas TMenuTools=Herramientas Notify_COMPANY_CREATE=Tercero creado -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. diff --git a/htdocs/langs/es_MX/products.lang b/htdocs/langs/es_MX/products.lang index c1c5cf61af4..8ade985e293 100644 --- a/htdocs/langs/es_MX/products.lang +++ b/htdocs/langs/es_MX/products.lang @@ -2,7 +2,6 @@ ProductId=ID de producto / servicio CantBeLessThanMinPrice=El precio de venta no puede ser inferior al mínimo permitido para este producto (%s sin impuestos). Este mensaje también puede aparecer si escribe un descuento demasiado importante. ErrorProductBadRefOrLabel=Valor incorrecto para referencia o etiqueta. -Suppliers=Vendedores ProductsAndServicesArea=Área de productos y servicios ProductsArea=Área de producto SetDefaultBarcodeType=Establecer el tipo de código de barras diff --git a/htdocs/langs/es_MX/projects.lang b/htdocs/langs/es_MX/projects.lang new file mode 100644 index 00000000000..6131522fb16 --- /dev/null +++ b/htdocs/langs/es_MX/projects.lang @@ -0,0 +1,4 @@ +# Dolibarr language file - Source file is en_US - projects +AddHereTimeSpentForDay=Añadir aquí el tiempo dedicado a este día / tarea +CantRemoveProject=This project can't be removed as it is referenced by some other objects (invoice, orders or other). See referers tab. +OppStatusPROPO=Cotización diff --git a/htdocs/langs/es_MX/propal.lang b/htdocs/langs/es_MX/propal.lang index fcd6f3f4488..761ead8ad71 100644 --- a/htdocs/langs/es_MX/propal.lang +++ b/htdocs/langs/es_MX/propal.lang @@ -4,4 +4,3 @@ PropalsDraft=Borradores PropalsOpened=Abierta PropalStatusClosedShort=Cerrada DocModelAzurDescription=A complete proposal model -DocModelCyanDescription=A complete proposal model diff --git a/htdocs/langs/es_MX/receiptprinter.lang b/htdocs/langs/es_MX/receiptprinter.lang new file mode 100644 index 00000000000..e1f2f09db2f --- /dev/null +++ b/htdocs/langs/es_MX/receiptprinter.lang @@ -0,0 +1,19 @@ +# Dolibarr language file - Source file is en_US - receiptprinter +TestSentToPrinter=Prueba enviada a la impresora %s +ReceiptPrinterDesc=Configuración de impresoras de recibos +CONNECTOR_DUMMY=Impresora ficticia +CONNECTOR_FILE_PRINT=Impresora local +CONNECTOR_DUMMY_HELP=Impresora falsa para la prueba, no hace nada +CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x: 9100 +CONNECTOR_FILE_PRINT_HELP=/dev/usb /lp0, /dev/ usb/lp1 +CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser: secret@computername/grupo de trabajo/ impresoraderecibos +DOL_ALIGN_LEFT=Alinea el texto a la izquierda +DOL_ALIGN_CENTER=Texto del centro +DOL_ALIGN_RIGHT=Alinea el texto a la derecha +DOL_USE_FONT_C=Utilizar la fuente C de la impresora +DOL_PRINT_BARCODE=Imprimir código de barras +DOL_PRINT_BARCODE_CUSTOMER_ID=Imprimir ID de cliente de código de barras +DOL_CUT_PAPER_FULL=Cortar ticket por completo +DOL_CUT_PAPER_PARTIAL=Cortar el ticket parcialmente +DOL_OPEN_DRAWER=Abrir cajón de efectivo +DOL_ACTIVATE_BUZZER=Activar zumbador diff --git a/htdocs/langs/es_MX/salaries.lang b/htdocs/langs/es_MX/salaries.lang new file mode 100644 index 00000000000..67866c1d344 --- /dev/null +++ b/htdocs/langs/es_MX/salaries.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - salaries +THM=Tasa promedio por hora +TJM=Tasa diaria promedio diff --git a/htdocs/langs/es_MX/suppliers.lang b/htdocs/langs/es_MX/suppliers.lang new file mode 100644 index 00000000000..f0609ce1413 --- /dev/null +++ b/htdocs/langs/es_MX/suppliers.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - suppliers +Suppliers=Vendedores diff --git a/htdocs/langs/es_MX/website.lang b/htdocs/langs/es_MX/website.lang new file mode 100644 index 00000000000..c290dfeb729 --- /dev/null +++ b/htdocs/langs/es_MX/website.lang @@ -0,0 +1,4 @@ +# Dolibarr language file - Source file is en_US - website +HomePage=Página Principal +NoPageYet=Sin páginas aun +GrabImagesInto=Insertar también las imágenes encontradas en CSS y página. diff --git a/htdocs/langs/es_MX/workflow.lang b/htdocs/langs/es_MX/workflow.lang new file mode 100644 index 00000000000..7993a64d096 --- /dev/null +++ b/htdocs/langs/es_MX/workflow.lang @@ -0,0 +1,15 @@ +# Dolibarr language file - Source file is en_US - workflow +WorkflowSetup=Configuración del módulo de flujo de trabajo +WorkflowDesc=Este módulo proporciona algunas acciones automáticas. De manera predeterminada, el flujo de trabajo está abierto (puede hacer las cosas en el orden que desee) pero aquí puede activar algunas acciones automáticas. +ThereIsNoWorkflowToModify=No hay modificaciones de flujo de trabajo disponibles con los módulos activados. +descWORKFLOW_PROPAL_AUTOCREATE_ORDER=Crear automáticamente un pedido de ventas después de firmar una propuesta comercial (el nuevo pedido tendrá el mismo importe que la propuesta) +descWORKFLOW_PROPAL_AUTOCREATE_INVOICE=Crear automáticamente una factura de cliente después de firmar una propuesta comercial (la nueva factura tendrá el mismo importe que la propuesta) +descWORKFLOW_CONTRACT_AUTOCREATE_INVOICE=Crear automáticamente una factura de cliente después de validar un contrato +descWORKFLOW_ORDER_AUTOCREATE_INVOICE=Crear automáticamente una factura de cliente después de cerrar un pedido de ventas (la nueva factura tendrá el mismo importe que el pedido) +descWORKFLOW_ORDER_CLASSIFY_BILLED_PROPAL=Clasifique la propuesta de origen vinculada como facturada cuando el pedido de ventas esté configurado como facturado (y si el monto del pedido es el mismo que el monto total de la propuesta vinculada firmada) +descWORKFLOW_INVOICE_CLASSIFY_BILLED_PROPAL=Clasifique la propuesta de origen vinculada como facturada cuando se valida la factura del cliente (y si el monto de la factura es el mismo que el monto total de la propuesta vinculada firmada) +descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_ORDER=Clasifique el pedido de ventas de origen vinculado como facturado cuando se valida la factura del cliente (y si el monto de la factura es el mismo que el monto total del pedido vinculado) +descWORKFLOW_INVOICE_CLASSIFY_BILLED_ORDER=Clasifique el pedido de ventas de origen vinculado como facturado cuando la factura del cliente se establece como pagada (y si el monto de la factura es el mismo que el monto total del pedido vinculado) +descWORKFLOW_ORDER_CLASSIFY_SHIPPED_SHIPPING=Clasifique el pedido de ventas de origen vinculado como enviado cuando se valida un envío (y si la cantidad enviada por todos los envíos es la misma que en el pedido para actualizar) +descWORKFLOW_ORDER_CLASSIFY_BILLED_SUPPLIER_PROPOSAL=Clasifique la propuesta del proveedor de origen vinculado como facturada cuando se valide la factura del proveedor (y si el monto de la factura es el mismo que el monto total de la propuesta vinculada) +descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Clasifique el pedido de compra de origen vinculado como facturado cuando se valida la factura del proveedor (y si el monto de la factura es el mismo que el monto total del pedido vinculado) diff --git a/htdocs/langs/es_MX/zapier.lang b/htdocs/langs/es_MX/zapier.lang new file mode 100644 index 00000000000..191720d465a --- /dev/null +++ b/htdocs/langs/es_MX/zapier.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - zapier +ModuleZapierForDolibarrDesc =Módulo Zapier para Dolibarr diff --git a/htdocs/langs/es_PA/accountancy.lang b/htdocs/langs/es_PA/accountancy.lang new file mode 100644 index 00000000000..9827b9d3795 --- /dev/null +++ b/htdocs/langs/es_PA/accountancy.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - accountancy +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 diff --git a/htdocs/langs/es_PA/admin.lang b/htdocs/langs/es_PA/admin.lang index 99443ee80a7..458ab5fc1b4 100644 --- a/htdocs/langs/es_PA/admin.lang +++ b/htdocs/langs/es_PA/admin.lang @@ -1,6 +1,4 @@ # Dolibarr language file - Source file is en_US - admin VersionUnknown=Desconocido -SuppliersCommandModel=Complete template of Purchase Order -SuppliersInvoiceModel=Complete template of Vendor Invoice 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. EmailCollectorLoadThirdPartyHelp=You can use this action to use the email content to find and load an existing thirdparty in your database. The found (or created) thirdparty will be used for following actions that need it. In the parameter field you can use for example 'EXTRACT:BODY:Name:\\s([^\\s]*)' if you want to extract the name of the thirdparty from a string 'Name: name to find' found into the body. diff --git a/htdocs/langs/es_PA/companies.lang b/htdocs/langs/es_PA/companies.lang new file mode 100644 index 00000000000..6897cf22f06 --- /dev/null +++ b/htdocs/langs/es_PA/companies.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - companies +Contact=Contact diff --git a/htdocs/langs/es_PA/modulebuilder.lang b/htdocs/langs/es_PA/modulebuilder.lang new file mode 100644 index 00000000000..8bbcc78a506 --- /dev/null +++ b/htdocs/langs/es_PA/modulebuilder.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - modulebuilder +ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: diff --git a/htdocs/langs/es_PA/projects.lang b/htdocs/langs/es_PA/projects.lang new file mode 100644 index 00000000000..7e42793b0e9 --- /dev/null +++ b/htdocs/langs/es_PA/projects.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - projects +CantRemoveProject=This project can't be removed as it is referenced by some other objects (invoice, orders or other). See referers tab. diff --git a/htdocs/langs/es_PE/admin.lang b/htdocs/langs/es_PE/admin.lang index ed1fa38ddd0..16738012308 100644 --- a/htdocs/langs/es_PE/admin.lang +++ b/htdocs/langs/es_PE/admin.lang @@ -1,7 +1,6 @@ # Dolibarr language file - Source file is en_US - admin VersionProgram=Versión del programa VersionLastInstall=Instalar versión inicial -AntiVirusCommandExample=Ejemplo para ClamWin: c:\\Progra~1\\ClamWin\\bin\\clamscan.exe
    Ejemplo para ClamAv: /usr/bin/clamscan ExampleOfDirectoriesForModelGen=Ejemplo de sintaxis:
    c:\\mydir
    /home/mydir
    DOL_DATA_ROOT/ecm/ecmdir Module30Name=Facturas Permission91=Consultar impuestos e IGV @@ -10,8 +9,6 @@ Permission93=Eliminar impuestos e IGV DictionaryVAT=Tasa de IGV o tasa de impuesto a las ventas UnitPriceOfProduct=Precio unitario sin IGV de un producto OptionVatMode=IGV adeudado -SuppliersCommandModel=Complete template of Purchase Order -SuppliersInvoiceModel=Complete template of Vendor Invoice MailToSendInvoice=Facturas de Clientes 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. EmailCollectorLoadThirdPartyHelp=You can use this action to use the email content to find and load an existing thirdparty in your database. The found (or created) thirdparty will be used for following actions that need it. In the parameter field you can use for example 'EXTRACT:BODY:Name:\\s([^\\s]*)' if you want to extract the name of the thirdparty from a string 'Name: name to find' found into the body. diff --git a/htdocs/langs/es_PE/agenda.lang b/htdocs/langs/es_PE/agenda.lang new file mode 100644 index 00000000000..689bffa0fdf --- /dev/null +++ b/htdocs/langs/es_PE/agenda.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - agenda +ListOfActions=Lista de eventos diff --git a/htdocs/langs/es_PE/assets.lang b/htdocs/langs/es_PE/assets.lang new file mode 100644 index 00000000000..7eee01f4abb --- /dev/null +++ b/htdocs/langs/es_PE/assets.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - assets +DeleteType=Borrar diff --git a/htdocs/langs/es_PE/banks.lang b/htdocs/langs/es_PE/banks.lang new file mode 100644 index 00000000000..68b1fdb8954 --- /dev/null +++ b/htdocs/langs/es_PE/banks.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - banks +StatusAccountOpened=Abrir +StatusAccountClosed=Cerrado diff --git a/htdocs/langs/es_PE/bills.lang b/htdocs/langs/es_PE/bills.lang index 3267ce16011..124c730f7cb 100644 --- a/htdocs/langs/es_PE/bills.lang +++ b/htdocs/langs/es_PE/bills.lang @@ -10,4 +10,4 @@ ConfirmClassifyPaidPartiallyReasonDiscountNoVat=El resto a pagar (%s %s) AmountOfBillsByMonthHT=Importe de las facturas por mes (Sin IGV) CreditNote=Nota de crédito VATIsNotUsedForInvoice=* IGV no aplicable art-293B del CGI -PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template (old implementation of Sponge template) +PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template diff --git a/htdocs/langs/es_PE/bookmarks.lang b/htdocs/langs/es_PE/bookmarks.lang new file mode 100644 index 00000000000..fa33f8df135 --- /dev/null +++ b/htdocs/langs/es_PE/bookmarks.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - bookmarks +AddThisPageToBookmarks=Agregar página actual a marcadores diff --git a/htdocs/langs/es_PE/cashdesk.lang b/htdocs/langs/es_PE/cashdesk.lang new file mode 100644 index 00000000000..2486b6f71de --- /dev/null +++ b/htdocs/langs/es_PE/cashdesk.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - cashdesk +CashDeskMenu=Punto de venta +CashDesk=Punto de venta diff --git a/htdocs/langs/es_PE/commercial.lang b/htdocs/langs/es_PE/commercial.lang new file mode 100644 index 00000000000..6fcebccd4b3 --- /dev/null +++ b/htdocs/langs/es_PE/commercial.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - commercial +ActionAC_CLO=Cerrado diff --git a/htdocs/langs/es_PE/cron.lang b/htdocs/langs/es_PE/cron.lang new file mode 100644 index 00000000000..96e3d29ed2c --- /dev/null +++ b/htdocs/langs/es_PE/cron.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - cron +CronStatusActiveBtn=Activado +CronStatusInactiveBtn=Inhabilitar diff --git a/htdocs/langs/es_PE/donations.lang b/htdocs/langs/es_PE/donations.lang new file mode 100644 index 00000000000..53d835a8a1c --- /dev/null +++ b/htdocs/langs/es_PE/donations.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - donations +DonationStatusPromiseNotValidatedShort=Borrador +DonationStatusPaidShort=Recibido diff --git a/htdocs/langs/es_PE/externalsite.lang b/htdocs/langs/es_PE/externalsite.lang new file mode 100644 index 00000000000..5250a01cd56 --- /dev/null +++ b/htdocs/langs/es_PE/externalsite.lang @@ -0,0 +1,4 @@ +# Dolibarr language file - Source file is en_US - externalsite +ExternalSiteSetup=Configurar enlace al sitio web externo +ExternalSiteModuleNotComplete=El modulo Sitio Web Externo no esta configurado apropiadamente +ExampleMyMenuEntry=Mi entrada al menú diff --git a/htdocs/langs/es_PE/help.lang b/htdocs/langs/es_PE/help.lang new file mode 100644 index 00000000000..47e4527dd88 --- /dev/null +++ b/htdocs/langs/es_PE/help.lang @@ -0,0 +1,20 @@ +# Dolibarr language file - Source file is en_US - help +CommunitySupport=Foro / Soporte Wiki +EMailSupport=Soporte de correos electrónicos. +RemoteControlSupport=En linea, tiempo real / Soporte remoto +OtherSupport=Otro Soporte +ToSeeListOfAvailableRessources=Para contacto / ver fuentes disponibles +HelpCenter=Centro de ayuda +DolibarrHelpCenter=Dolibarr Ayuda y Centro de Soporte +ToGoBackToDolibarr=De otra manera, click aquí para continuar usando Dolibarr . +TypeSupportCommunauty=Comunidad (libre) +NeedHelpCenter=Necesita ayuda o soporte? +Efficiency=Eficiencia +TypeHelpOnly=Solo ayuda +TypeHelpDev=Ayudar+Desarrollar +TypeHelpDevForm=Ayuda+Desarrollo+Entrenamiento +BackToHelpCenter=De otra manera, volver al centro de ayuda de la página principal . +LinkToGoldMember=Puede llamar a uno de los entrenadores preseleccionados por Dolibarr para su idioma (%s) haciendo clic en su Widget (estado y precio máximo son actualizados automáticamente): +PossibleLanguages=Idiomas soportados +SubscribeToFoundation=Ayuda al proyecto Dolibarr, suscríbete a la fundación +SeeOfficalSupport=Para el soporte oficial de Dolibarr en su idioma:
    %s diff --git a/htdocs/langs/es_PE/holiday.lang b/htdocs/langs/es_PE/holiday.lang new file mode 100644 index 00000000000..d1993b0f33b --- /dev/null +++ b/htdocs/langs/es_PE/holiday.lang @@ -0,0 +1,4 @@ +# Dolibarr language file - Source file is en_US - holiday +EditCP=Editar +DeleteCP=Borrar +ActionCancelCP=Cancelar diff --git a/htdocs/langs/es_PE/interventions.lang b/htdocs/langs/es_PE/interventions.lang new file mode 100644 index 00000000000..71789345f39 --- /dev/null +++ b/htdocs/langs/es_PE/interventions.lang @@ -0,0 +1,9 @@ +# Dolibarr language file - Source file is en_US - interventions +InterventionCard=Ficha de intervención +NewIntervention=Nueva intervención +ChangeIntoRepeatableIntervention=Cambiar a intervención frecuente +ActionsOnFicheInter=Acciones sobre la intervención +LastInterventions=Últimas %sintervenciones +InterventionContact=Contacto de intervención +DeleteIntervention=Borrar intervención +InterDuration=Duración de intervención diff --git a/htdocs/langs/es_PE/mails.lang b/htdocs/langs/es_PE/mails.lang new file mode 100644 index 00000000000..89f3524e991 --- /dev/null +++ b/htdocs/langs/es_PE/mails.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - mails +MailingStatusRead=Leer diff --git a/htdocs/langs/es_PE/main.lang b/htdocs/langs/es_PE/main.lang index f6216220edc..ecb8bb29791 100644 --- a/htdocs/langs/es_PE/main.lang +++ b/htdocs/langs/es_PE/main.lang @@ -43,7 +43,6 @@ SearchOf=Buscar ReOpen=Re-Abrir Upload=Subir AmountVAT=Importe impuesto -MulticurrencyPaymentAmount=Monto pagado, moneda original MulticurrencyAmountVAT=Importe impuesto, moneda original TotalVAT=Total impuesto TTC=IGV incluido diff --git a/htdocs/langs/es_PE/margins.lang b/htdocs/langs/es_PE/margins.lang new file mode 100644 index 00000000000..2a8cac5af8b --- /dev/null +++ b/htdocs/langs/es_PE/margins.lang @@ -0,0 +1,13 @@ +# Dolibarr language file - Source file is en_US - margins +MarginRate=Ratio de margen +DisplayMarginRates=Mostrar ratios de margen +InputPrice=Precio de entrada +UserMargins=Margenes de usuario +ProductService=Producto o Servicio +AllProducts=Todos los Productos y Servicios +ChooseProduct/Service=Escoge producto o servicio +UseDiscountOnTotal=En subtotal +CostPrice=Precio de costo +UnitCharges=Cargos unitarios +Charges=Cargos +CheckMargins=Detalles de los márgenes diff --git a/htdocs/langs/es_PE/modulebuilder.lang b/htdocs/langs/es_PE/modulebuilder.lang new file mode 100644 index 00000000000..8bbcc78a506 --- /dev/null +++ b/htdocs/langs/es_PE/modulebuilder.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - modulebuilder +ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: diff --git a/htdocs/langs/es_PE/mrp.lang b/htdocs/langs/es_PE/mrp.lang index 14a870e357b..adc1bbf4eb2 100644 --- a/htdocs/langs/es_PE/mrp.lang +++ b/htdocs/langs/es_PE/mrp.lang @@ -1,14 +1,54 @@ # Dolibarr language file - Source file is en_US - mrp +Mrp=Órdenes de Fabricación +MO=Orden de Fabricación +MRPDescription=Modulo para gestionar la producción y órdenes de fabricación (OF). MRPArea=Área PRM -MenuBOM=Listas de material +MrpSetupPage=Configuración del modulo PRM +MenuBOM=Lista de materiales LatestBOMModified=Últimas%s Lista de materiales modificados +LatestMOModified=Últimas %s Órdenes de Fabricación modificadas BillOfMaterials=Lista de Material ListOfBOMs=Listado de Lista De Material - BOM +ListOfManufacturingOrders=Lista de Órdenes de Fabricación NewBOM=Nueva lista de material +ProductBOMHelp=Producto para crear con este BOM.
    Nota: Productos con la propiedad 'Naturaleza del producto'= 'Materia prima' no serán visibles en esta lista. BOMsNumberingModules=Plantillas de numeración BOM +BOMsModelModule=Plantillas de documento BOM +MOsNumberingModules=Numeración de plantillas MO +MOsModelModule=Plantillas de documento MO FreeLegalTextOnBOMs=Texto libre en documento BOM WatermarkOnDraftBOMs=Marca de agua en BOM borrador +FreeLegalTextOnMOs=Texto libre en documento MO +WatermarkOnDraftMOs=Marca de agua en borrador MO +ConfirmCloneBillOfMaterials=Está seguro de clonar esta lista de materiales %s? +ConfirmCloneMo=Está seguro de clonar la Orden de Fabricación %s? ValueOfMeansLoss=Valor de 0.95 significa un promedio de 5%% pérdidas durante la producción -DeleteBillOfMaterials=Borrar Lista De Materiales +DeleteBillOfMaterials=Eliminar Lista De Materiales ConfirmDeleteBillOfMaterials=Está seguro de borrar esta Lista de Materiales ConfirmDeleteMo=Está seguro de borrar esta Lista de Materiales +NewMO=Nueva Orden de Fabricación +QtyToProduce=Cantidad a producir +DateEndPlannedMo=Fecha de fin planeada +KeepEmptyForAsap=Vacío si es 'Tan pronto como sea posible' +EstimatedDurationDesc=Duración estimada a fabricar el producto usando este BOM +ConfirmValidateBom=Está seguro de validar el BOM con la referencia %s (Usted podrá usarlo para crear nuevas órdenes de fabricación) +ConfirmCloseBom=Está seguro de cancelar este BOM (Ya no podrá usarlo para crear nuevas órdenes de fabricación) +ConfirmReopenBom=Está seguro de re-abrir este BOM (Podrá usarlo para crear nuevas órdenes de fabricación) +QtyFrozen=Cant. Congelada +QuantityFrozen=Cantidad congelada +QuantityConsumedInvariable=Cuando está marcada, la cantidad consumida es siempre el valor asignado y no depende de la cantidad producida +DisableStockChangeHelp=Cuando está marcada, el stock no cambia en este producto, cualquiera que sea la cantidad consumida. +BomAndBomLines=Lista de materiales y lineas +BOMLine=Linea de BOM +CreateMO=Crear MO +ToConsume=Consumir +ToProduce=Producir +QtyAlreadyConsumed=Cant. consumida +QtyAlreadyProduced=Cant. producida +ConsumeOrProduce=Consumir o Producir +ConsumeAndProduceAll=Consumir y Producir Todo +TheProductXIsAlreadyTheProductToProduce=El producto a agregar es el producto a producir +ConfirmValidateMo=Está seguro de validar esta Orden de Fabricación? +AddNewConsumeLines=Agregar nueva linea para consumir +ProductsToConsume=Productos para consumir +ProductsToProduce=Productos para producir diff --git a/htdocs/langs/es_PE/multicurrency.lang b/htdocs/langs/es_PE/multicurrency.lang new file mode 100644 index 00000000000..99cd1a14d95 --- /dev/null +++ b/htdocs/langs/es_PE/multicurrency.lang @@ -0,0 +1,20 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Multimoneda +ErrorAddRateFail=Error al añadir el tipo +ErrorAddCurrencyFail=Error al añadir la moneda +ErrorDeleteCurrencyFail=Fallo al eliminar +multicurrency_syncronize_error=Error de sincronización:%s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Usar la fecha del documento para encontrar el tipo de cambio, en lugar de usar el último tipo cambio conocido +multicurrency_useOriginTx=Cuando un objeto es creado desde otro, mantener el tipo de cambio original desde el objeto fuente (otro usar el último cambio conocido) +CurrencyLayerAccount=API Módulo Monedas +CurrencyLayerAccount_help_to_synchronize=Debe crear una cuenta en el sitio web %s para usar esta funcionalidad.
    Obtenga su Llave API .
    Si usa una cuenta libre, no puede cambiar la moneda origen (USD predeterminado).
    Si su moneda principal no es USD, la aplicación lo recalculará automáticamente.

    Está limitado a 1000 sincronizaciones por mes. +multicurrency_appId=Llave API +multicurrency_appCurrencySource=Moneda origen +multicurrency_alternateCurrencySource=Moneda origen alterna +CurrenciesUsed=Monedas usadas +CurrenciesUsed_help_to_add=Añadir las diferentes monedas y tipos de cambio que necesita usar en sus propuestas , ordenes etc. +rate=tipo de cambio +MulticurrencyReceived=Recibido, moneda original +MulticurrencyRemainderToTake=Monto pendiente, moneda original +MulticurrencyPaymentAmount=Monto pagado, moneda original +AmountToOthercurrency=Monto (en moneda de la cuenta receptora) diff --git a/htdocs/langs/es_PE/products.lang b/htdocs/langs/es_PE/products.lang new file mode 100644 index 00000000000..d29e3ce3677 --- /dev/null +++ b/htdocs/langs/es_PE/products.lang @@ -0,0 +1,6 @@ +# Dolibarr language file - Source file is en_US - products +ProductRef=Ref. de producto +ProductLabel=Etiqueta del producto +ProductServiceCard=Ficha Productos/Servicios +ProductOrService=Producto o Servicio +ExportDataset_produit_1=Productos diff --git a/htdocs/langs/es_PE/projects.lang b/htdocs/langs/es_PE/projects.lang new file mode 100644 index 00000000000..9abf8160ac0 --- /dev/null +++ b/htdocs/langs/es_PE/projects.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - projects +CantRemoveProject=This project can't be removed as it is referenced by some other objects (invoice, orders or other). See referers tab. +OppStatusPROPO=Cotización diff --git a/htdocs/langs/es_PE/propal.lang b/htdocs/langs/es_PE/propal.lang index 8d0e582c109..14ae98682ee 100644 --- a/htdocs/langs/es_PE/propal.lang +++ b/htdocs/langs/es_PE/propal.lang @@ -2,4 +2,3 @@ ProposalShort=Cotización PropalsOpened=Abrir DocModelAzurDescription=A complete proposal model -DocModelCyanDescription=A complete proposal model diff --git a/htdocs/langs/es_PE/salaries.lang b/htdocs/langs/es_PE/salaries.lang new file mode 100644 index 00000000000..f7ca43beb1f --- /dev/null +++ b/htdocs/langs/es_PE/salaries.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - salaries +SALARIES_ACCOUNTING_ACCOUNT_PAYMENT=Cuenta contable usada por el usuario del tercero diff --git a/htdocs/langs/es_PE/stocks.lang b/htdocs/langs/es_PE/stocks.lang new file mode 100644 index 00000000000..aa3e15a560f --- /dev/null +++ b/htdocs/langs/es_PE/stocks.lang @@ -0,0 +1,4 @@ +# Dolibarr language file - Source file is en_US - stocks +QtyDispatchedShort=Cant. despachada +MovementCorrectStock=Corrección de stock del producto %s +inventoryEdit=Editar diff --git a/htdocs/langs/es_PE/trips.lang b/htdocs/langs/es_PE/trips.lang new file mode 100644 index 00000000000..15199d635e8 --- /dev/null +++ b/htdocs/langs/es_PE/trips.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - trips +EX_SUO=Suministros de oficina diff --git a/htdocs/langs/es_PE/users.lang b/htdocs/langs/es_PE/users.lang new file mode 100644 index 00000000000..185c0f9f101 --- /dev/null +++ b/htdocs/langs/es_PE/users.lang @@ -0,0 +1,4 @@ +# Dolibarr language file - Source file is en_US - users +DisableUser=Inhabilitar +DeleteUser=Borrar +DeleteGroup=Borrar diff --git a/htdocs/langs/es_PE/website.lang b/htdocs/langs/es_PE/website.lang new file mode 100644 index 00000000000..85fd95deb49 --- /dev/null +++ b/htdocs/langs/es_PE/website.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - website +ReadPerm=Leer diff --git a/htdocs/langs/es_PE/workflow.lang b/htdocs/langs/es_PE/workflow.lang new file mode 100644 index 00000000000..f6bd3f07716 --- /dev/null +++ b/htdocs/langs/es_PE/workflow.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - workflow +WorkflowSetup=Configuración del módulo de Flujo de Trabajo diff --git a/htdocs/langs/es_PY/accountancy.lang b/htdocs/langs/es_PY/accountancy.lang new file mode 100644 index 00000000000..9827b9d3795 --- /dev/null +++ b/htdocs/langs/es_PY/accountancy.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - accountancy +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 diff --git a/htdocs/langs/es_PY/admin.lang b/htdocs/langs/es_PY/admin.lang new file mode 100644 index 00000000000..27c312f77d7 --- /dev/null +++ b/htdocs/langs/es_PY/admin.lang @@ -0,0 +1,5 @@ +# Dolibarr language file - Source file is en_US - admin +MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the maximum filesize for upload to %s %s, irrespective of the value of this parameter +Module56Name=Telephony +Module56Desc=Telephony integration +EmailCollectorLoadThirdPartyHelp=You can use this action to use the email content to find and load an existing thirdparty in your database. The found (or created) thirdparty will be used for following actions that need it. In the parameter field you can use for example 'EXTRACT:BODY:Name:\\s([^\\s]*)' if you want to extract the name of the thirdparty from a string 'Name: name to find' found into the body. diff --git a/htdocs/langs/es_PY/companies.lang b/htdocs/langs/es_PY/companies.lang new file mode 100644 index 00000000000..6897cf22f06 --- /dev/null +++ b/htdocs/langs/es_PY/companies.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - companies +Contact=Contact diff --git a/htdocs/langs/es_PY/modulebuilder.lang b/htdocs/langs/es_PY/modulebuilder.lang new file mode 100644 index 00000000000..8bbcc78a506 --- /dev/null +++ b/htdocs/langs/es_PY/modulebuilder.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - modulebuilder +ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: diff --git a/htdocs/langs/es_PY/projects.lang b/htdocs/langs/es_PY/projects.lang new file mode 100644 index 00000000000..7e42793b0e9 --- /dev/null +++ b/htdocs/langs/es_PY/projects.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - projects +CantRemoveProject=This project can't be removed as it is referenced by some other objects (invoice, orders or other). See referers tab. diff --git a/htdocs/langs/es_PY/zapier.lang b/htdocs/langs/es_PY/zapier.lang new file mode 100644 index 00000000000..c7cc16646c5 --- /dev/null +++ b/htdocs/langs/es_PY/zapier.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - zapier +ModuleZapierForDolibarrDesc =Zapier para modulo Dolibarr +ZapierForDolibarrSetup =Instalacion de Zapier para Dolibarr diff --git a/htdocs/langs/es_US/accountancy.lang b/htdocs/langs/es_US/accountancy.lang new file mode 100644 index 00000000000..9827b9d3795 --- /dev/null +++ b/htdocs/langs/es_US/accountancy.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - accountancy +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 diff --git a/htdocs/langs/es_US/admin.lang b/htdocs/langs/es_US/admin.lang new file mode 100644 index 00000000000..27c312f77d7 --- /dev/null +++ b/htdocs/langs/es_US/admin.lang @@ -0,0 +1,5 @@ +# Dolibarr language file - Source file is en_US - admin +MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the maximum filesize for upload to %s %s, irrespective of the value of this parameter +Module56Name=Telephony +Module56Desc=Telephony integration +EmailCollectorLoadThirdPartyHelp=You can use this action to use the email content to find and load an existing thirdparty in your database. The found (or created) thirdparty will be used for following actions that need it. In the parameter field you can use for example 'EXTRACT:BODY:Name:\\s([^\\s]*)' if you want to extract the name of the thirdparty from a string 'Name: name to find' found into the body. diff --git a/htdocs/langs/es_US/companies.lang b/htdocs/langs/es_US/companies.lang new file mode 100644 index 00000000000..6897cf22f06 --- /dev/null +++ b/htdocs/langs/es_US/companies.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - companies +Contact=Contact diff --git a/htdocs/langs/es_US/main.lang b/htdocs/langs/es_US/main.lang new file mode 100644 index 00000000000..2e691473326 --- /dev/null +++ b/htdocs/langs/es_US/main.lang @@ -0,0 +1,21 @@ +# Dolibarr language file - Source file is en_US - main +DIRECTION=ltr +FONTFORPDF=helvetica +FONTSIZEFORPDF=10 +SeparatorDecimal=. +SeparatorThousand=, +FormatDateShort=%m/%d/%Y +FormatDateShortInput=%m/%d/%Y +FormatDateShortJava=MM/dd/yyyy +FormatDateShortJavaInput=MM/dd/yyyy +FormatDateShortJQuery=mm/dd/yy +FormatDateShortJQueryInput=mm/dd/yy +FormatHourShortJQuery=HH:MI +FormatHourShort=%I:%M %p +FormatHourShortDuration=%H:%M +FormatDateTextShort=%b %d, %Y +FormatDateText=%B %d, %Y +FormatDateHourShort=%m/%d/%Y %I:%M %p +FormatDateHourSecShort=%m/%d/%Y %I:%M:%S %p +FormatDateHourTextShort=%b %d, %Y, %I:%M %p +FormatDateHourText=%B %d, %Y, %I:%M %p diff --git a/htdocs/langs/es_US/modulebuilder.lang b/htdocs/langs/es_US/modulebuilder.lang new file mode 100644 index 00000000000..8bbcc78a506 --- /dev/null +++ b/htdocs/langs/es_US/modulebuilder.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - modulebuilder +ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: diff --git a/htdocs/langs/es_US/projects.lang b/htdocs/langs/es_US/projects.lang new file mode 100644 index 00000000000..7e42793b0e9 --- /dev/null +++ b/htdocs/langs/es_US/projects.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - projects +CantRemoveProject=This project can't be removed as it is referenced by some other objects (invoice, orders or other). See referers tab. diff --git a/htdocs/langs/es_UY/accountancy.lang b/htdocs/langs/es_UY/accountancy.lang new file mode 100644 index 00000000000..9827b9d3795 --- /dev/null +++ b/htdocs/langs/es_UY/accountancy.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - accountancy +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 diff --git a/htdocs/langs/es_UY/admin.lang b/htdocs/langs/es_UY/admin.lang new file mode 100644 index 00000000000..27c312f77d7 --- /dev/null +++ b/htdocs/langs/es_UY/admin.lang @@ -0,0 +1,5 @@ +# Dolibarr language file - Source file is en_US - admin +MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the maximum filesize for upload to %s %s, irrespective of the value of this parameter +Module56Name=Telephony +Module56Desc=Telephony integration +EmailCollectorLoadThirdPartyHelp=You can use this action to use the email content to find and load an existing thirdparty in your database. The found (or created) thirdparty will be used for following actions that need it. In the parameter field you can use for example 'EXTRACT:BODY:Name:\\s([^\\s]*)' if you want to extract the name of the thirdparty from a string 'Name: name to find' found into the body. diff --git a/htdocs/langs/es_UY/companies.lang b/htdocs/langs/es_UY/companies.lang new file mode 100644 index 00000000000..6897cf22f06 --- /dev/null +++ b/htdocs/langs/es_UY/companies.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - companies +Contact=Contact diff --git a/htdocs/langs/es_UY/modulebuilder.lang b/htdocs/langs/es_UY/modulebuilder.lang new file mode 100644 index 00000000000..8bbcc78a506 --- /dev/null +++ b/htdocs/langs/es_UY/modulebuilder.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - modulebuilder +ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: diff --git a/htdocs/langs/es_UY/projects.lang b/htdocs/langs/es_UY/projects.lang new file mode 100644 index 00000000000..7e42793b0e9 --- /dev/null +++ b/htdocs/langs/es_UY/projects.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - projects +CantRemoveProject=This project can't be removed as it is referenced by some other objects (invoice, orders or other). See referers tab. diff --git a/htdocs/langs/es_VE/accountancy.lang b/htdocs/langs/es_VE/accountancy.lang new file mode 100644 index 00000000000..9827b9d3795 --- /dev/null +++ b/htdocs/langs/es_VE/accountancy.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - accountancy +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 diff --git a/htdocs/langs/es_VE/admin.lang b/htdocs/langs/es_VE/admin.lang index 7b2b8ecef64..4feb99ac81e 100644 --- a/htdocs/langs/es_VE/admin.lang +++ b/htdocs/langs/es_VE/admin.lang @@ -30,7 +30,5 @@ 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) -SuppliersCommandModel=Complete template of Purchase Order -SuppliersInvoiceModel=Complete template of Vendor Invoice 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. EmailCollectorLoadThirdPartyHelp=You can use this action to use the email content to find and load an existing thirdparty in your database. The found (or created) thirdparty will be used for following actions that need it. In the parameter field you can use for example 'EXTRACT:BODY:Name:\\s([^\\s]*)' if you want to extract the name of the thirdparty from a string 'Name: name to find' found into the body. diff --git a/htdocs/langs/es_VE/bills.lang b/htdocs/langs/es_VE/bills.lang index 753248eaf0d..d1fe99b8fcd 100644 --- a/htdocs/langs/es_VE/bills.lang +++ b/htdocs/langs/es_VE/bills.lang @@ -8,5 +8,5 @@ PaymentConditionShortPT_ORDER=Pedido PaymentTypeShortTRA=A validar VATIsNotUsedForInvoice=- LawApplicationPart1=- -PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template (old implementation of Sponge template) +PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template situationInvoiceShortcode_S=D diff --git a/htdocs/langs/es_VE/categories.lang b/htdocs/langs/es_VE/categories.lang new file mode 100644 index 00000000000..a3fec9ee376 --- /dev/null +++ b/htdocs/langs/es_VE/categories.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - categories +ExtraFieldsCategories=Atributos complementarios diff --git a/htdocs/langs/es_VE/dict.lang b/htdocs/langs/es_VE/dict.lang new file mode 100644 index 00000000000..7510f6f7bdd --- /dev/null +++ b/htdocs/langs/es_VE/dict.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - dict +ExpAutoCat=Carro diff --git a/htdocs/langs/es_VE/modulebuilder.lang b/htdocs/langs/es_VE/modulebuilder.lang new file mode 100644 index 00000000000..8bbcc78a506 --- /dev/null +++ b/htdocs/langs/es_VE/modulebuilder.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - modulebuilder +ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: diff --git a/htdocs/langs/es_VE/orders.lang b/htdocs/langs/es_VE/orders.lang index 1953e730541..af9af547c83 100644 --- a/htdocs/langs/es_VE/orders.lang +++ b/htdocs/langs/es_VE/orders.lang @@ -1,8 +1,6 @@ # Dolibarr language file - Source file is en_US - orders StatusOrderDeliveredShort=Emitido PDFEinsteinDescription=A complete order model -PDFEratostheneDescription=A complete order model -PDFProformaDescription=A complete Proforma invoice template StatusSupplierOrderDraftShort=A validar StatusSupplierOrderValidatedShort=Validada StatusSupplierOrderDelivered=Emitido diff --git a/htdocs/langs/es_VE/other.lang b/htdocs/langs/es_VE/other.lang index 74603c3a3e3..6f639e2a2ca 100644 --- a/htdocs/langs/es_VE/other.lang +++ b/htdocs/langs/es_VE/other.lang @@ -1,4 +1,3 @@ # Dolibarr language file - Source file is en_US - other SourcesRepository=Repositorio de fuentes WEBSITE_DESCRIPTION=Descripcion -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. diff --git a/htdocs/langs/es_VE/propal.lang b/htdocs/langs/es_VE/propal.lang index afb7079b24d..1740adeccf3 100644 --- a/htdocs/langs/es_VE/propal.lang +++ b/htdocs/langs/es_VE/propal.lang @@ -1,4 +1,3 @@ # Dolibarr language file - Source file is en_US - propal PropalsOpened=Abierta DocModelAzurDescription=A complete proposal model -DocModelCyanDescription=A complete proposal model diff --git a/htdocs/langs/et_EE/accountancy.lang b/htdocs/langs/et_EE/accountancy.lang index 125d57fa712..3b7e45ac3cc 100644 --- a/htdocs/langs/et_EE/accountancy.lang +++ b/htdocs/langs/et_EE/accountancy.lang @@ -121,6 +121,7 @@ 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 +TotalForAccount=Total for accounting account Ventilate=Bind @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Accounting account to register donations ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (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 products sold in EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported 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_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (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_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unkno ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error PaymentsNotLinkedToProduct=Payment not linked to any product / service +OpeningBalance=Opening balance ShowOpeningBalance=Show opening balance HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Group of account PcgtypeDesc=Group 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. +Reconcilable=Reconcilable + TotalVente=Total turnover before tax TotalMarge=Total sales margin @@ -307,11 +317,13 @@ 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Chart of accounts Id ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC OptionModeProductSellExport=Mode sales exported in other countries OptionModeProductBuy=Mode purchases +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries 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. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=Remove accounting code from lines that not exists into charts of account CleanHistory=Reset all bindings for selected year PredefinedGroups=Predefined groups @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Account removed from group SaleLocal=Local sale SaleExport=Export sale SaleEEC=Sale in EEC +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=Range of accounting account diff --git a/htdocs/langs/et_EE/admin.lang b/htdocs/langs/et_EE/admin.lang index 7e62c9545de..9c8a6573db8 100644 --- a/htdocs/langs/et_EE/admin.lang +++ b/htdocs/langs/et_EE/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Veebiserveri kasutaja/grupp NoSessionFound=Your PHP configuration seems to not allow listing of active sessions. The directory used to save sessions (%s) may be protected (for example by OS permissions or by PHP directive open_basedir). DBStoringCharset=Märgistik, mida kasutatakse andmete salvestamiseks andmebaasi DBSortingCharset=Märgistik, mida kasutada andmete sorteerimiseks andmebaasis +HostCharset=Host charset ClientCharset=Client charset ClientSortingCharset=Client collation WarningModuleNotActive=Moodul %s peab olema sisse lülitatud. @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the NoMaxSizeByPHPLimit=Märkus: PHP seadistustes pole piiri määratletud MaxSizeForUploadedFiles=Üleslaetava faili maksimaalne suurus (0 keelab failide üleslaadimise) UseCaptchaCode=Kasuta sisselogimise lehel graafilist koodi (CAPTCHA) -AntiVirusCommand= Täielik süsteemi rada antiviiruse käsuni -AntiVirusCommandExample= ClamWini põhine näide: C:\\Program~1\\ClamWin\\bin\\clamscan.exe
    ClamAV põhine näide: /usr/bin/clamscan +AntiVirusCommand=Täielik süsteemi rada antiviiruse käsuni +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= Lisaparameetrid, mida käsureal edastada -AntiVirusParamExample= ClamWini põhine näide: --database="C:\\Program Files (x86)\\ClamWin\\lib" +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=Raamatupidamise mooduli seadistamine UserSetup=Kasutajate haldamise seadistamine MultiCurrencySetup=Multi-currency setup @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Demoversioonis blokeeritud funktsionaalsus FeatureAvailableOnlyOnStable=Feature only available on official stable versions BoxesDesc=Widgets are components showing some information that you can add to personalize some pages. You can choose between showing the widget or not by selecting target page and clicking 'Activate', or by clicking the trashcan to disable it. OnlyActiveElementsAreShown=Näidatakse ainult elemente sisse lülitatud moodulitest. -ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button (at end of module line) to enable/disable a module/application. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. ModulesMarketPlaceDesc=Alla laadimiseks leiad rohkem mooduleid Internetist. ModulesDeployDesc=If permissions on your file system allow it, you can use this tool to deploy an external module. The module will then be visible on the tab %s. ModulesMarketPlaces=Otsi katsetuskärgus rakendusi/mooduleid @@ -212,6 +213,7 @@ CompatibleUpTo=Ühilduv versioooniga %s NotCompatible=This module does not seem compatible with your Dolibarr %s (Min %s - Max %s). CompatibleAfterUpdate=This module requires an update to your Dolibarr %s (Min %s - Max %s). SeeInMarkerPlace=See in Market place +SeeSetupOfModule=See setup of module %s Updated=Uuendatud Nouveauté=Novelty AchatTelechargement=Osta / Laadi alla @@ -221,6 +223,7 @@ DoliPartnersDesc=List of companies providing custom-developed modules or feature WebSiteDesc=External websites for more add-on (non-core) modules... DevelopYourModuleDesc=Some solutions to develop your own module... URL=URL +RelativeURL=Relative URL BoxesAvailable=Saadaolevad vidinad BoxesActivated=Aktiveeritud vidinad ActivateOn=Aktiveeri lehel @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Märkeruudud ExtrafieldCheckBoxFromList=Märkeruudud tabelist ExtrafieldLink=Viide objektile ComputedFormula=Arvutatud väli -ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Store computed field ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! ExtrafieldParamHelpPassword=Leaving this field blank means this value will be stored without encryption (field must be only hidden with star on screen).
    Set 'auto' to use the default encryption rule to save password into database (then value read will be the hash only, no way to retrieve original value) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Jäta tühjaks vaikeväärtuse kasutamiseks DefaultLink=Vaikimisi link SetAsDefault=Määra vaikimisi ValueOverwrittenByUserSetup=Hoiatus: kasutaja võib selle väärtuse üle kirjutada oma seadetega (iga kasutaja saab määratleda isikliku clicktodial URLi) -ExternalModule=Väline moodul - paigaldatud kausta %s +ExternalModule=External module +InstalledInto=Installed into directory %s BarcodeInitForthird-parties=Mass-vöötkoodi loomine kolmandatele osapooltele BarcodeInitForProductsOrServices=Toodete/teenuste jaoks massiline vöötkoodide loomine või lähtestamine CurrentlyNWithoutBarCode=Praegu on teil %s kirje %s %s kohta ilma vöötkoodi määramata. @@ -947,7 +951,7 @@ DictionaryCanton=States/Provinces DictionaryRegion=Piirkonnad DictionaryCountry=Riigid DictionaryCurrency=Valuutad -DictionaryCivility=Title of civility +DictionaryCivility=Honorific titles DictionaryActions=Types of agenda events DictionarySocialContributions=Types of social or fiscal taxes DictionaryVAT=Käibe- või müügimaksumäärad @@ -988,6 +992,7 @@ VATIsNotUsedDesc=By default the proposed Sales tax is 0 which can be used for ca VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=Määr LocalTax1IsNotUsed=Ära kasuta teist maksu LocalTax1IsUsedDesc=Use a second type of tax (other than first one) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices LocalTax2IsNotUsedDescES=Vaikimisi pakutud IRPF on 0. Reegli lõpp. LocalTax2IsUsedExampleES=Hispaanias on nad vabakutselised ja spetsialistid, kes pakuvad teenuseid ja ettevõtted, kes on valinud moodulipõhise maksusüsteemi. LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=Reports on local taxes CalcLocaltax1=Müügid - Ostud CalcLocaltax1Desc=Kohalike maksude aruannete arvutamiseks kasutatakse kohalike maksude müügi ja kohalike maksude ostude vahet @@ -1018,6 +1026,7 @@ CalcLocaltax2=Ostud CalcLocaltax2Desc=Kohalike maksude aruanded on kohalike maksude ostude summas CalcLocaltax3=Müügid CalcLocaltax3Desc=Kohalike maksude aruanded on kohalike maksude müükide summas +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=Vaikimisi kasutatav silt, kui koodile ei leitud tõlke vastet LabelOnDocuments=Dokumentide silt LabelOrTranslationKey=Label or translation key @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Expense report to approve Delays_MAIN_DELAY_HOLIDAYS=Leave requests 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. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. SetupDescription5=Other Setup menu entries manage optional parameters. LogEvents=Sündmuste turvaaudit Audit=Audit @@ -1128,7 +1137,7 @@ LogEventDesc=Enable logging for specific security events. Administrators the log AreaForAdminOnly=Setup parameters can be set by administrator users only. SystemInfoDesc=Süsteemi info sisaldab mitmesugust tehnilist infot, mida ei saa muuta ning mis on nähtav vaid administraatoritele. SystemAreaForAdminOnly=This area is available to administrator users only. Dolibarr user permissions cannot change this restriction. -CompanyFundationDesc=Edit the information of the company/entity. Click on "%s" button at the bottom of the page. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. AccountantFileNumber=Accountant code DisplayDesc=Parameters affecting the look and behaviour of Dolibarr can be modified here. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Rules to generate and validate passwords DisableForgetPasswordLinkOnLogonPage=Do not show the "Password Forgotten" link on the Login page UsersSetup=Kasutajate mooduli seadistamine UserMailRequired=Email required to create a new user +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### HRMSetup=HRM module setup ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Arve dokumentide mudelid BillsPDFModulesAccordindToInvoiceType=Invoice documents models according to invoice type PaymentsPDFModules=Payment documents models ForceInvoiceDate=Sunni arve kuupäevaks arve kinnitamise kuupäev -SuggestedPaymentModesIfNotDefinedInInvoice=Soovitatav vaikimisi makseviis arvel, kui seda pole arvel määratletud +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice SuggestPaymentByRIBOnAccount=Suggest payment by withdrawal on account SuggestPaymentByChequeToAddress=Suggest payment by check to FreeLegalTextOnInvoices=Vaba tekst arvetel @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Vendor payments setup PropalSetup=Pakkumiste mooduli seadistamine ProposalsNumberingModules=Pakkumiste numeratsiooni mudelid ProposalsPDFModules=Pakkumiste dokumentatsiooni mudelid -SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined for proposal +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal FreeLegalTextOnProposal=Vaba tekst pakkumistel WatermarkOnDraftProposal=Vesimärk pakkumiste mustanditel (puudub, kui tühi) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal @@ -1322,6 +1334,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 ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=Sales Orders management setup OrdersNumberingModules=Tellimuste numeratsiooni mudelid OrdersModelModule=Tellimuste dokumentide mudelid @@ -1471,7 +1484,7 @@ LDAPFieldCompanyExample=Example: o LDAPFieldSid=SID LDAPFieldSidExample=Example: objectsid LDAPFieldEndLastSubscription=Tellimuse lõpu kuupäev -LDAPFieldTitle=Job position +LDAPFieldTitle=Ametikoht LDAPFieldTitleExample=Näide: tiitel LDAPFieldGroupid=Group id LDAPFieldGroupidExample=Exemple : gidnumber @@ -1720,7 +1733,7 @@ MultiCompanySetup=Mitme ettevõtte mooduli seadistamine ##### Suppliers ##### SuppliersSetup=Vendor module setup SuppliersCommandModel=Complete template of Purchase Order -SuppliersCommandModelMuscadet=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) SuppliersInvoiceModel=Complete template of Vendor Invoice SuppliersInvoiceNumberingModel=Vendor invoices numbering models IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Hide images in Top menu LeftMenuBackgroundColor=Background color for Left menu BackgroundTableTitleColor=Background color for Table title line BackgroundTableTitleTextColor=Text color for Table title line +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Background color for odd table lines BackgroundTableLineEvenColor=Background color for even table lines MinimumNoticePeriod=Minimum notice period (Your leave request must be done before this delay) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Dolibarr Reference not found in Message ID FormatZip=Postiindeks MainMenuCode=Menu entry code (mainmenu) ECMAutoTree=Show automatic ECM tree -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. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Opening hours OpeningHoursDesc=Enter here the regular opening hours of your company. ResourceSetup=Configuration of Resource module @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramatical ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export +ImportSetup=Setup of module Import InstanceUniqueID=Unique ID of the instance SmallerThan=Smaller than LargerThan=Larger than @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled EmailTemplate=Template for email EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/et_EE/bills.lang b/htdocs/langs/et_EE/bills.lang index e866e640b5e..990cafbf5c7 100644 --- a/htdocs/langs/et_EE/bills.lang +++ b/htdocs/langs/et_EE/bills.lang @@ -66,9 +66,9 @@ paymentInInvoiceCurrency=in invoices currency PaidBack=Tagasi makstud DeletePayment=Kustuta makse ConfirmDeletePayment=Kas olete kindel, et soovite selle makse kustutada? -ConfirmConvertToReduc=Kas soovite selle %s konverteerida absoluutseks allahindluseks? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? ConfirmConvertToReduc2=Summa salvestatakse kõigi allahindluste hulka ja seda saab kasutada selle kliendi jooksva või tulevase arve allahindlusena. -ConfirmConvertToReducSupplier=Kas soovite selle %s konverteerida absoluutseks allahindluseks? +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. SupplierPayments=Tarnija maksed ReceivedPayments=Laekunud maksed @@ -209,17 +209,13 @@ NumberOfBillsByMonth=No. of invoices per month AmountOfBills=Arvete summa AmountOfBillsHT=Amount of invoices (net of tax) AmountOfBillsByMonthHT=Arvete summa kuus (maksudeta) -ShowSocialContribution=Show social/fiscal tax -ShowBill=Näita arvet -ShowInvoice=Näita arvet -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 +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=To pay on %s toPayOn=to pay on %s RetainedWarranty=Retained Warranty @@ -230,7 +226,6 @@ 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 AlreadyPaidNoCreditNotesNoDeposits=Already paid (without credit notes and down payments) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Generated from template invoice %s WarningInvoiceDateInFuture=Warning, the invoice date is higher than current date WarningInvoiceDateTooFarInFuture=Warning, the invoice date is too far from current date ViewAvailableGlobalDiscounts=View available discounts +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Staatus PaymentConditionShortRECEP=Due Upon Receipt @@ -509,7 +505,7 @@ ToMakePayment=Maksa ToMakePaymentBack=Maksa tagasi ListOfYourUnpaidInvoices=Maksmata arvete nimekiri NoteListOfYourUnpaidInvoices=Märkus: see nimekiri sisaldab vaid nende kolmandate isikute arveid, kelle jaoks Sa oled märgitud müügiesindajaks. -RevenueStamp=Maksumärk +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party YouMustCreateStandardInvoiceFirstDesc=You have to create a standard invoice first and convert it to "template" to create a new template invoice @@ -575,3 +571,4 @@ AutoFillDateTo=Set end date for service line with next invoice date AutoFillDateToShort=Set end date MaxNumberOfGenerationReached=Max number of gen. reached BILL_DELETEInDolibarr=Arve kustutatud +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/et_EE/blockedlog.lang b/htdocs/langs/et_EE/blockedlog.lang index 1da7967fe88..ac567943c5c 100644 --- a/htdocs/langs/et_EE/blockedlog.lang +++ b/htdocs/langs/et_EE/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Unalterable logs ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) DownloadBlockChain=Download fingerprints -KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this re after it was recorded, or has erased the previous archived record (check that line with previous # exists). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. AddedByAuthority=Stored into remote authority diff --git a/htdocs/langs/et_EE/cashdesk.lang b/htdocs/langs/et_EE/cashdesk.lang index c9c6fd87412..0a680f21d67 100644 --- a/htdocs/langs/et_EE/cashdesk.lang +++ b/htdocs/langs/et_EE/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Lisa see artikkel RestartSelling=Mine müümisel tagasi SellFinished=Sale complete PrintTicket=Trüki tšekk +SendTicket=Send ticket NoProductFound=Artiklit ei leitud ProductFound=toodet leitud NoArticle=Artiklid puuduvad @@ -48,6 +49,7 @@ Footer=Footer AmountAtEndOfPeriod=Amount at end of period (day, month or year) TheoricalAmount=Theorical amount RealAmount=Real amount +CashFence=Cash fence CashFenceDone=Cash fence done for the period NbOfInvoices=Arveid Paymentnumpad=Type of Pad to enter payment @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS needs product categories to work OrderNotes=Order Notes CashDeskBankAccountFor=Default account to use for payments in NoPaimementModesDefined=No paiment mode defined in TakePOS configuration -TicketVatGrouped=Group VAT by rate in tickets -AutoPrintTickets=Automatically print tickets +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? @@ -87,7 +90,19 @@ HeadBar=Head Bar SortProductField=Field for sorting products Browser=Veebilehitseja BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/et_EE/companies.lang b/htdocs/langs/et_EE/companies.lang index 99c3f2219cf..7e172d130b8 100644 --- a/htdocs/langs/et_EE/companies.lang +++ b/htdocs/langs/et_EE/companies.lang @@ -2,16 +2,16 @@ ErrorCompanyNameAlreadyExists=Ettevõte nimega %s on juba olemas. Vali mõni muu. ErrorSetACountryFirst=Esmalt vali riik SelectThirdParty=Vali kolmas isik -ConfirmDeleteCompany=Are you sure you want to delete this company and all inherited information? +ConfirmDeleteCompany=Kas soovite kindlasti selle ettevõtte ja kogu päritud teabe kustutada? DeleteContact=Kustuta kontakt/aadress -ConfirmDeleteContact=Are you sure you want to delete this contact and all inherited information? -MenuNewThirdParty=New Third Party -MenuNewCustomer=New Customer -MenuNewProspect=New Prospect -MenuNewSupplier=New Vendor +ConfirmDeleteContact=Kas soovite kindlasti selle kontakti ja kogu päritud teabe kustutada? +MenuNewThirdParty=Uus kolmas osapool +MenuNewCustomer=Uus klient +MenuNewProspect=Uus huviline +MenuNewSupplier=Uus tarnija MenuNewPrivateIndividual=Uus eraisik -NewCompany=New company (prospect, customer, vendor) -NewThirdParty=New Third Party (prospect, customer, vendor) +NewCompany=Uus ettevõte (huviline, klient, müüja) +NewThirdParty=Uus kolmas osapool (huviline, klient, müüja) CreateDolibarrThirdPartySupplier=Create a third party (vendor) CreateThirdPartyOnly=Uus kolmas isik CreateThirdPartyAndContact=Create a third party + a child contact @@ -25,7 +25,7 @@ ThirdPartyContact=Third-party contact/address Company=Ettevõte CompanyName=Ettevõtte nimi AliasNames=Hüüdnimi (ärinimi, kaubamärk, ...) -AliasNameShort=Alias Name +AliasNameShort=Varjunimi Companies=Ettevõtted CountryIsInEEC=Country is inside the European Economic Community PriceFormatInCurrentLanguage=Price display format in the current language and currency @@ -41,17 +41,17 @@ ThirdPartyCustomersWithIdProf12=Klient koos %s või %s ThirdPartySuppliers=Tarnijad ThirdPartyType=Third-party type Individual=Eraisik -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. +ToCreateContactWithSameName=Loob automaatselt kontakti / aadressi, millel on sama teave kui kolmanda osapoole all. Enamikul juhtudel, isegi kui teie kolmas osapool on füüsiline isik, piisab ainult kolmanda osapoole loomisest. ParentCompany=Emaettevõte Subsidiaries=Tütarettevõtted -ReportByMonth=Report by month -ReportByCustomers=Report by customer +ReportByMonth=Aruanne kuude kaupa +ReportByCustomers=Kliendi aruanne ReportByQuarter=Aruanne määra alusel CivilityCode=Sisekorraeeskiri RegisteredOffice=Peakontor Lastname=Perekonnanimi Firstname=Eesnimi -PostOrFunction=Job position +PostOrFunction=Ametikoht UserTitle=Tiitel NatureOfThirdParty=Nature of Third party NatureOfContact=Nature of Contact @@ -78,18 +78,18 @@ Zip=Postiindeks Town=Linn Web=Veeb Poste= Ametikoht -DefaultLang=Language default +DefaultLang=Keele vaikeseade VATIsUsed=Sales tax used VATIsUsedWhenSelling=This defines if this third party includes a sale tax or not when it makes an invoice to its own customers -VATIsNotUsed=Sales tax is not used +VATIsNotUsed=Käibemaksu ei kasutata CopyAddressFromSoc=Copy address from third-party details ThirdpartyNotCustomerNotSupplierSoNoRef=Third party neither customer nor vendor, no available referring objects ThirdpartyIsNeitherCustomerNorClientSoCannotHaveDiscounts=Third party neither customer nor vendor, discounts are not available -PaymentBankAccount=Payment bank account +PaymentBankAccount=Makse pangakonto OverAllProposals=Pakkumised OverAllOrders=Tellimused OverAllInvoices=Arved -OverAllSupplierProposals=Price requests +OverAllSupplierProposals=Hinnapäringud ##### Local Taxes ##### LocalTax1IsUsed=Kasuta teist maksu LocalTax1IsUsedES= RE on kasutuses @@ -98,9 +98,9 @@ LocalTax2IsUsed=Kasuta kolmandat maksu LocalTax2IsUsedES= IRPF on kasutuses LocalTax2IsNotUsedES= IRPF pole kasutuses WrongCustomerCode=Vigane kliendi kood -WrongSupplierCode=Vendor code invalid +WrongSupplierCode=Tarnija kood on vale CustomerCodeModel=Kliendi koodi mudel -SupplierCodeModel=Vendor code model +SupplierCodeModel=Tarnija koodimudel Gencod=Vöötkood ##### Professional ID ##### ProfId1Short=Reg nr 1 @@ -108,7 +108,7 @@ ProfId2Short=Reg nr 2 ProfId3Short=Reg nr 3 ProfId4Short=Reg nr 4 ProfId5Short=Reg nr 5 -ProfId6Short=Prof. id 6 +ProfId6Short=Reg nr 6 ProfId1=Registrikood ProfId2=Registrikood 2 ProfId3=Registrikood 3 @@ -263,8 +263,8 @@ ProfId1DZ=RC ProfId2DZ=Art. ProfId3DZ=NIF ProfId4DZ=NIS -VATIntra=VAT ID -VATIntraShort=VAT ID +VATIntra=KMKR number +VATIntraShort=KMKR number VATIntraSyntaxIsValid=Süntaks on kehtiv VATReturn=VAT return ProspectCustomer=Huviline/klient @@ -292,8 +292,8 @@ CustomerAbsoluteDiscountMy=Absolute customer discounts (granted by yourself) SupplierAbsoluteDiscountAllUsers=Absolute vendor discounts (entered by all users) SupplierAbsoluteDiscountMy=Absolute vendor discounts (entered by yourself) DiscountNone=Pole -Vendor=Vendor -Supplier=Vendor +Vendor=Tarnija +Supplier=Tarnija AddContact=Uus kontakt AddContactAddress=Uus kontakt/aadress EditContact=Muuda kontakti @@ -301,31 +301,30 @@ EditContactAddress=Muuda kontakti/aadressi Contact=Kontakt ContactId=Contact id ContactsAddresses=Kontaktid/aadressid -FromContactName=Name: +FromContactName=Nimi: NoContactDefinedForThirdParty=Antud kolmanda isikuga pole ühtki kontakti seotud NoContactDefined=Kontakti pole määratud DefaultContact=Vaikimisi kontakt/aadress -ContactByDefaultFor=Default contact/address for +ContactByDefaultFor=Vaikekontakti / aadress AddThirdParty=Uus kolmas isik DeleteACompany=Kustuta ettevõte PersonalInformations=Isikuandmed AccountancyCode=Accounting account -CustomerCode=Customer Code -SupplierCode=Vendor Code -CustomerCodeShort=Customer Code -SupplierCodeShort=Vendor Code -CustomerCodeDesc=Customer Code, unique for all customers -SupplierCodeDesc=Vendor Code, unique for all vendors +CustomerCode=Kliendi kood +SupplierCode=Tarnija kood +CustomerCodeShort=Kliendi kood +SupplierCodeShort=Tarnija kood +CustomerCodeDesc=Kliendi kood, unikaalne igal kliendil +SupplierCodeDesc=Tarnija kood, unikaalne igal kliendil RequiredIfCustomer=Nõutud, kui kolmas isik on klient või huviline RequiredIfSupplier=Required if third party is a vendor ValidityControledByModule=Validity controlled by module -ThisIsModuleRules=Rules for this module +ThisIsModuleRules=Selle mooduli reeglid ProspectToContact=Huviline, kellega ühendust võtta CompanyDeleted=Ettevõte "%s" on andmebaasist kustutatud. ListOfContacts=Kontaktide/aadresside nimekiri ListOfContactsAddresses=Kontaktide/aadresside nimekiri -ListOfThirdParties=List of Third Parties -ShowCompany=Show Third Party +ListOfThirdParties=Kolmandate osapoolte nimekiri ShowContact=Näita kontakti ContactsAllShort=Kõik (filtrita) ContactType=Kontakti liik @@ -340,7 +339,7 @@ NoContactForAnyProposal=See kontakt ei ole ühegi pakkumisega seotud NoContactForAnyContract=See kontakt ei ole ühegi lepinguga seotud NoContactForAnyInvoice=See kontakt ei ole ühegi arvega seotud NewContact=Uus kontaktisik -NewContactAddress=New Contact/Address +NewContactAddress=Uus kontakt/aadress MyContacts=Minu kontaktid Capital=Kapital CapitalOf=%s kapital @@ -354,7 +353,7 @@ VATIntraManualCheck=You can also check manually on the European Commission websi ErrorVATCheckMS_UNAVAILABLE=Kontrollida pole võimalik. Kontrolli, et liikmesriik (%s) võimaldab teenust kasutada. NorProspectNorCustomer=Not prospect, nor customer JuridicalStatus=Legal Entity Type -Staff=Employees +Staff=Töötajad ProspectLevelShort=Potentsiaalne ProspectLevel=Huvilise potentsiaal ContactPrivate=Era- @@ -375,19 +374,19 @@ TE_MEDIUM=Keskmise suurusega ettevõte TE_ADMIN=Valitsusasutus TE_SMALL=Väikeettevõte TE_RETAIL=Jaemüüja -TE_WHOLE=Wholesaler +TE_WHOLE=Hulgimüüja TE_PRIVATE=Eraisik TE_OTHER=Muu StatusProspect-1=Ära kontakteeru StatusProspect0=Pole kunagi kontakteerutud -StatusProspect1=To be contacted +StatusProspect1=Tuleb ühendust võtta StatusProspect2=Kontakteerumine teoksil StatusProspect3=Kontakteerumine lõpetatud -ChangeDoNotContact=Muuda staatuseks "Ära kontakteeru" -ChangeNeverContacted=Muuda staatuseks "Pole kunagi kontakteerutud" -ChangeToContact=Change status to 'To be contacted' -ChangeContactInProcess=Muuda staatuseks "Kontakteerumine teoksil" -ChangeContactDone=Muuda staatuseks "Kontakteerumine teostatud" +ChangeDoNotContact=Muuda staatuseks 'Ära kontakteeru' +ChangeNeverContacted=Muuda staatuseks 'Pole kunagi kontakteerutud' +ChangeToContact=Muuda staatuseks 'Tuleb ühendust võtta' +ChangeContactInProcess=Muuda staatuseks 'Kontakteerumine teoksil' +ChangeContactDone=Muuda staatuseks 'Kontakteerumine teostatud' ProspectsByStatus=Huvilised staatuse järgi NoParentCompany=Mitte ükski ExportCardToFormat=Ekspordi kaart formaati @@ -404,15 +403,15 @@ PriceLevel=Price Level PriceLevelLabels=Price Level Labels DeliveryAddress=Tarneaadress AddAddress=Lisa aadress -SupplierCategory=Vendor category +SupplierCategory=Tarnija kategooria JuridicalStatus200=Sõltumatu DeleteFile=Kustuta fail ConfirmDeleteFile=Oled sa kindel, et soovid selle faili kustutada? AllocateCommercial=Assigned to sales representative Organization=Organisatsioon -FiscalYearInformation=Fiscal Year +FiscalYearInformation=Eelarveaasta FiscalMonthStart=Majandusaasta esimene kuu -SocialNetworksInformation=Social networks +SocialNetworksInformation=Sotsiaalvõrgud SocialNetworksFacebookURL=Facebook URL SocialNetworksTwitterURL=Twitter URL SocialNetworksLinkedinURL=Linkedin URL @@ -421,25 +420,25 @@ SocialNetworksYoutubeURL=Youtube URL SocialNetworksGithubURL=Github URL YouMustAssignUserMailFirst=You must create an email for this user prior to being able to add an email notification. YouMustCreateContactFirst=To be able to add email notifications, you must first define contacts with valid emails for the third party -ListSuppliersShort=List of Vendors -ListProspectsShort=List of Prospects -ListCustomersShort=List of Customers -ThirdPartiesArea=Third Parties/Contacts -LastModifiedThirdParties=Last %s modified Third Parties -UniqueThirdParties=Total of Third Parties +ListSuppliersShort=Tarnijate nimekiri +ListProspectsShort=Huviliste nimekiri +ListCustomersShort=Klientide nimekiri +ThirdPartiesArea=Kolmandad isikud/Kontaktid +LastModifiedThirdParties=Viimati muudetud %s kolmandad isikud +UniqueThirdParties=Kolmandaid isikuid kokku InActivity=Ava ActivityCeased=Suletud -ThirdPartyIsClosed=Third party is closed -ProductsIntoElements=List of products/services into %s +ThirdPartyIsClosed=Kolmas osapool on suletud +ProductsIntoElements=Toodete / teenuste loetelu %s CurrentOutstandingBill=Hetkel maksmata summa OutstandingBill=Suurim võimalik maksmata arve OutstandingBillReached=Max. for outstanding bill reached -OrderMinAmount=Minimum amount for order +OrderMinAmount=Minimaalne tellimuse summa MonkeyNumRefModelDesc=Return a number with the format %syymm-nnnn for the customer code and %syymm-nnnn for the vendor code where yy is year, mm is month and nnnn is a sequence with no break and no return to 0. LeopardNumRefModelDesc=Kood on vaba, seda saab igal ajal muuta. ManagingDirectors=Haldaja(te) nimi (CEO, direktor, president...) MergeOriginThirdparty=Duplicate third party (third party you want to delete) -MergeThirdparties=Merge third parties +MergeThirdparties=Kolmandate osapoolte ühendamine ConfirmMergeThirdparties=Are you sure you want to merge this third party into the current one? All linked objects (invoices, orders, ...) will be moved to current third party, then the third party will be deleted. ThirdpartiesMergeSuccess=Third parties have been merged SaleRepresentativeLogin=Login of sales representative @@ -447,9 +446,10 @@ SaleRepresentativeFirstname=First name of sales representative SaleRepresentativeLastname=Last name of sales representative ErrorThirdpartiesMerge=There was an error when deleting the third parties. Please check the log. Changes have been reverted. NewCustomerSupplierCodeProposed=Customer or Vendor code already used, a new code is suggested +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports -PaymentTypeCustomer=Payment Type - Customer -PaymentTermsCustomer=Payment Terms - Customer +PaymentTypeCustomer=Makse tüüp - klient +PaymentTermsCustomer=Maksetingimused - klient PaymentTypeSupplier=Payment Type - Vendor PaymentTermsSupplier=Payment Term - Vendor PaymentTypeBoth=Payment Type - Customer and Vendor diff --git a/htdocs/langs/et_EE/compta.lang b/htdocs/langs/et_EE/compta.lang index 7b481d6ec18..51037afab90 100644 --- a/htdocs/langs/et_EE/compta.lang +++ b/htdocs/langs/et_EE/compta.lang @@ -78,15 +78,15 @@ MenuNewSocialContribution=New social/fiscal tax NewSocialContribution=New social/fiscal tax AddSocialContribution=Add social/fiscal tax ContributionsToPay=Social/fiscal taxes to pay -AccountancyTreasuryArea=Billing and payment area +AccountancyTreasuryArea=Arveldused ja maksed NewPayment=Uus makse PaymentCustomerInvoice=Müügiarve makse -PaymentSupplierInvoice=vendor invoice payment +PaymentSupplierInvoice=Ostuarve makse PaymentSocialContribution=Social/fiscal tax payment PaymentVat=KM makse ListPayment=Maksete nimekiri ListOfCustomerPayments=Klientide maksete nimekiri -ListOfSupplierPayments=List of vendor payments +ListOfSupplierPayments=Tarnija maksete nimekiri DateStartPeriod=Perioodi alguse kuupäev DateEndPeriod=Perioodi lõpu kuupäev newLT1Payment=New tax 2 payment @@ -106,7 +106,7 @@ VATPayments=Sales tax payments VATRefund=Sales tax refund NewVATPayment=New sales tax payment NewLocalTaxPayment=New tax %s payment -Refund=Refund +Refund=Tagasimakse SocialContributionsPayments=Social/fiscal taxes payments ShowVatPayment=Näita käibemaksu makset TotalToPay=Kokku maksta @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=See %sanalysis of payments%s for a calculation on act SeeReportInDueDebtMode=See %sanalysis of invoices%s for a calculation based on known recorded invoices even if they are not yet accounted in Ledger. SeeReportInBookkeepingMode=See %sBookeeping report%s for a calculation on Bookkeeping Ledger table RulesAmountWithTaxIncluded=- Näidatud summad sisaldavad kõiki makse -RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the validation date of invoices and VAT and on the due date for expenses. For salaries defined with Salary module, the value date of payment is used. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- It includes the real payments made on invoices, expenses, VAT and salaries.
    - It is based on the payment dates of the invoices, expenses, VAT and salaries. The donation date for donation. -RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the validation date of these invoices.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    RulesCATotalSaleJournal=It includes all credit lines from the Sale journal. RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Turnover invoiced by sale tax rate TurnoverCollectedbyVatrate=Turnover collected by sale tax rate PurchasebyVatrate=Purchase by sale tax rate LabelToShow=Short label +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/et_EE/donations.lang b/htdocs/langs/et_EE/donations.lang index 3ce6a497b4a..1642553abef 100644 --- a/htdocs/langs/et_EE/donations.lang +++ b/htdocs/langs/et_EE/donations.lang @@ -7,7 +7,6 @@ AddDonation=Create a donation NewDonation=Uus annetus DeleteADonation=Delete a donation ConfirmDeleteADonation=Are you sure you want to delete this donation? -ShowDonation=Kuva annetus PublicDonation=Avalik annetus DonationsArea=Annetuste ala DonationStatusPromiseNotValidated=Lubaduse mustand @@ -17,6 +16,7 @@ DonationStatusPromiseNotValidatedShort=Mustand DonationStatusPromiseValidatedShort=KInnitatud DonationStatusPaidShort=Vastu võetud DonationTitle=Annetuse kviitung +DonationDate=Donation date DonationDatePayment=Maksekuupäev ValidPromess=Kinnita lubadus DonationReceipt=Annetuse kviitung diff --git a/htdocs/langs/et_EE/errors.lang b/htdocs/langs/et_EE/errors.lang index 1c9d5419603..caaab19cf77 100644 --- a/htdocs/langs/et_EE/errors.lang +++ b/htdocs/langs/et_EE/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=Fail ei jõudnud täielikult serverisse. ErrorNoTmpDir=Ajutist kausta %s ei ole olemas. ErrorUploadBlockedByAddon=PHP/Apache pistik blokeeris üleslaadimise. ErrorFileSizeTooLarge=Fail on liiga suur. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Liiga pikk täisarvu tüübi jaoks (maksimaalselt %s numbrit) ErrorSizeTooLongForVarcharType=Liiga pikk sõne tüübi jaoks (maksimaalselt %s tähemärki) ErrorNoValueForSelectType=Palun sisesta nimekirja väärtused @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # 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/et_EE/install.lang b/htdocs/langs/et_EE/install.lang index c09d2515759..4a90a8ebd5b 100644 --- a/htdocs/langs/et_EE/install.lang +++ b/htdocs/langs/et_EE/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=This PHP supports Curl. PHPSupportCalendar=This PHP supports calendars extensions. PHPSupportUTF8=This PHP supports UTF8 functions. PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=This PHP supports %s functions. PHPMemoryOK=Antud PHP poolt kasutatav sessiooni maksimaalne mälu on %s. See peaks olema piisav. 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. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=Your PHP installation does not support Curl. ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. 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. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. ErrorDirDoesNotExists=Kausta %s ei ole olemas. ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=The application tried to self-upgrade, but the in 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. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/et_EE/interventions.lang b/htdocs/langs/et_EE/interventions.lang index f9a8bb06dfe..9f2db49e62c 100644 --- a/htdocs/langs/et_EE/interventions.lang +++ b/htdocs/langs/et_EE/interventions.lang @@ -41,9 +41,7 @@ InterventionsArea=Interventions area DraftFichinter=Draft interventions LastModifiedInterventions=Latest %s modified interventions FichinterToProcess=Interventions to process -##### Types de contacts ##### TypeContact_fichinter_external_CUSTOMER=Kliendi kontakt järelkajaks -# Modele numérotation PrintProductsOnFichinter=Print also lines of type "product" (not only services) on intervention card PrintProductsOnFichinterDetails=interventions generated from orders UseServicesDurationOnFichinter=Use services duration for interventions generated from orders @@ -53,14 +51,16 @@ InterventionStatistics=Statistics of interventions NbOfinterventions=No. of intervention cards NumberOfInterventionsByMonth=No. of intervention cards by month (date of validation) AmountOfInteventionNotIncludedByDefault=Amount of intervention is not included by default into profit (in most cases, timesheets are used to count time spent). Add option PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT to 1 into home-setup-other to include them. -##### Exports ##### InterId=Intervention id InterRef=Intervention ref. InterDateCreation=Date creation intervention InterDuration=Duration intervention InterStatus=Status intervention InterNote=Note intervention +InterLine=Line of intervention InterLineId=Line id intervention InterLineDate=Line date intervention InterLineDuration=Line duration intervention InterLineDesc=Line description intervention +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/et_EE/link.lang b/htdocs/langs/et_EE/link.lang index fdcf07aeff4..1ffcd41a18b 100644 --- a/htdocs/langs/et_EE/link.lang +++ b/htdocs/langs/et_EE/link.lang @@ -8,3 +8,4 @@ LinkRemoved=The link %s has been removed ErrorFailedToDeleteLink= Failed to remove link '%s' ErrorFailedToUpdateLink= Failed to update link '%s' URLToLink=URL to link +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/et_EE/mails.lang b/htdocs/langs/et_EE/mails.lang index 124100ca5fc..3df50cb7057 100644 --- a/htdocs/langs/et_EE/mails.lang +++ b/htdocs/langs/et_EE/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=No contact/address with a category found NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found OutGoingEmailSetup=Outgoing email setup InGoingEmailSetup=Incoming email setup -OutGoingEmailSetupForEmailing=Outgoing email setup (for mass emailing) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Default outgoing email setup Information=Informatsioon ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/et_EE/main.lang b/htdocs/langs/et_EE/main.lang index 2cfc2cf6a14..47507ee7b1b 100644 --- a/htdocs/langs/et_EE/main.lang +++ b/htdocs/langs/et_EE/main.lang @@ -31,7 +31,7 @@ Translation=Tõlge EmptySearchString=Enter a non empty search string NoRecordFound=Kirjet ei leitud NoRecordDeleted=No record deleted -NotEnoughDataYet=Not enough data +NotEnoughDataYet=Pole piisavalt andmeid NoError=Vigu ei tekkinud Error=Viga Errors=Vead @@ -65,19 +65,19 @@ ErrorNoVATRateDefinedForSellerCountry=Viga: riigi '%s' jaoks ei ole käibemaksum ErrorNoSocialContributionForSellerCountry=Error, no social/fiscal taxes type defined for country '%s'. ErrorFailedToSaveFile=Viga: faili salvestamine ebaõnnestus. ErrorCannotAddThisParentWarehouse=You are trying to add a parent warehouse which is already a child of a existing warehouse -MaxNbOfRecordPerPage=Max. number of records per page -NotAuthorized=You are not authorized to do that. +MaxNbOfRecordPerPage=Maksimaalne kirjete arv ühel lehel +NotAuthorized=Teil pole selleks õigusi. SetDate=Sea kuupäev SelectDate=Vali kuupäev SeeAlso=Vaata lisaks %s SeeHere=Vaata siia ClickHere=Klõpsa siia -Here=Here +Here=Siin Apply=Rakenda BackgroundColorByDefault=Vaikimisi taustavärv -FileRenamed=The file was successfully renamed -FileGenerated=The file was successfully generated -FileSaved=The file was successfully saved +FileRenamed=Fail nimetati edukalt ümber +FileGenerated=Fail loodi edukalt +FileSaved=Fail salvestati edukalt FileUploaded=Fail on edukalt üles laetud FileTransferComplete=File(s) uploaded successfully FilesDeleted=File(s) successfully deleted @@ -174,6 +174,7 @@ SaveAndStay=Save and stay SaveAndNew=Save and new TestConnection=Kontrolli ühendust ToClone=Klooni +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Choose data you want to clone: NoCloneOptionsSpecified=Kloonitavad andmed pole määratletud. Of=/ @@ -213,7 +214,7 @@ Parameter=Parameeter Parameters=Parameetrid Value=Väärtus PersonalValue=Isiklik väärtus -NewObject=New %s +NewObject=Uus %s NewValue=Uus väärtus CurrentValue=Praegune väärtus Code=Kood @@ -829,6 +830,8 @@ Gender=Gender Genderman=Man Genderwoman=Woman ViewList=Nimekirja vaade +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Mandatory Hello=Tere GoodBye=GoodBye @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Select your graph options to build a graph Measures=Measures XAxis=X-Axis YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/et_EE/modulebuilder.lang b/htdocs/langs/et_EE/modulebuilder.lang index 00a8c0f9d32..135ac1ae9ec 100644 --- a/htdocs/langs/et_EE/modulebuilder.lang +++ b/htdocs/langs/et_EE/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=List of dictionaries entries ListOfPermissionsDefined=List of defined permissions SeeExamples=See examples here EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) -VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update). Using a negative value means field is not shown by default on list but can be selected for viewing). It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty DisplayOnPdf=Display on PDF IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) diff --git a/htdocs/langs/et_EE/multicurrency.lang b/htdocs/langs/et_EE/multicurrency.lang new file mode 100644 index 00000000000..bfcbd11fb7c --- /dev/null +++ b/htdocs/langs/et_EE/multicurrency.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Multi currency +ErrorAddRateFail=Error in added rate +ErrorAddCurrencyFail=Error in added currency +ErrorDeleteCurrencyFail=Error delete fail +multicurrency_syncronize_error=Synchronization error: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Use the date of the document to find the currency rate, instead of using the latest known rate +multicurrency_useOriginTx=When an object is created from another, keep the original rate from the source object (otherwise use the latest known rate) +CurrencyLayerAccount=CurrencyLayer API +CurrencyLayerAccount_help_to_synchronize=You must create an account on website %s to use this functionality.
    Get your API key.
    If you use a free account, you can't change the source currency (USD by default).
    If your main currency is not USD, the application will automatically recalculate it.

    You are limited to 1000 synchronizations per month. +multicurrency_appId=API key +multicurrency_appCurrencySource=Source currency +multicurrency_alternateCurrencySource=Alternate source currency +CurrenciesUsed=Currencies used +CurrenciesUsed_help_to_add=Add the different currencies and rates you need to use on your proposals, orders etc. +rate=rate +MulticurrencyReceived=Received, original currency +MulticurrencyRemainderToTake=Remaining amount, original currency +MulticurrencyPaymentAmount=Payment amount, original currency +AmountToOthercurrency=Amount To (in currency of receiving account) +CurrencyRateSyncSucceed=Currency rate synchronization done successfuly +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Use the currency of the document for online payments diff --git a/htdocs/langs/et_EE/other.lang b/htdocs/langs/et_EE/other.lang index b90544436d0..45f1f704e4f 100644 --- a/htdocs/langs/et_EE/other.lang +++ b/htdocs/langs/et_EE/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Sales order validated Notify_ORDER_SENTBYMAIL=Sales order sent by mail Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=URL of page WEBSITE_TITLE=Tiitel WEBSITE_DESCRIPTION=Kirjeldus WEBSITE_IMAGE=Image -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Keywords LinesToImport=Lines to import diff --git a/htdocs/langs/et_EE/products.lang b/htdocs/langs/et_EE/products.lang index a84a75db6e5..1334c8a4108 100644 --- a/htdocs/langs/et_EE/products.lang +++ b/htdocs/langs/et_EE/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL MassBarcodeInit=Mass barcode init MassBarcodeInitDesc=This page can be used to initialize a barcode on objects that does not have barcode defined. Check before that setup of module barcode is complete. ProductAccountancyBuyCode=Accounting code (purchase) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Accounting code (sale) ProductAccountancySellIntraCode=Accounting code (sale intra-Community) ProductAccountancySellExportCode=Accounting code (sale export) @@ -165,7 +167,7 @@ SuppliersPrices=Vendor prices SuppliersPricesOfProductsOrServices=Vendor prices (of products or services) CustomCode=Customs / Commodity / HS code CountryOrigin=Päritolumaa -Nature=Nature of produt (material/finished) +Nature=Nature of product (material/finished) ShortLabel=Short label Unit=Ühik p=u. diff --git a/htdocs/langs/et_EE/projects.lang b/htdocs/langs/et_EE/projects.lang index fa8050496d3..37b54e96354 100644 --- a/htdocs/langs/et_EE/projects.lang +++ b/htdocs/langs/et_EE/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=which I'm linked to project Time=Aeg ListOfTasks=List of tasks GoToListOfTimeConsumed=Go to list of time consumed -GoToListOfTasks=Show as list -GoToGanttView=show as Gantt GanttView=Gantt View ListProposalsAssociatedProject=List of the commercial proposals related to the project ListOrdersAssociatedProject=List of sales orders related to the project @@ -188,7 +186,7 @@ PlannedWorkload=Planeeritav koormus PlannedWorkloadShort=Workload ProjectReferers=Related items ProjectMustBeValidatedFirst=Esmalt peab projekti kinnitama -FirstAddRessourceToAllocateTime=Assign a user resource to task to allocate time +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=Input per day InputPerWeek=Input per week InputPerMonth=Input per month @@ -240,6 +238,7 @@ LatestModifiedProjects=Latest %s modified projects OtherFilteredTasks=Other filtered tasks NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=Allow user comments on tasks AllowCommentOnProject=Allow user comments on projects @@ -256,7 +255,7 @@ ServiceToUseOnLines=Service to use on lines InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. ProjectFollowOpportunity=Follow opportunity -ProjectFollowTasks=Follow tasks +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Usage: Opportunity UsageTasks=Usage: Tasks @@ -265,3 +264,4 @@ InvoiceToUse=Draft invoice to use NewInvoice=Uus arve OneLinePerTask=One line per task OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/et_EE/receiptprinter.lang b/htdocs/langs/et_EE/receiptprinter.lang index 105d6ae26db..243c2ee59e4 100644 --- a/htdocs/langs/et_EE/receiptprinter.lang +++ b/htdocs/langs/et_EE/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Dummy Printer CONNECTOR_NETWORK_PRINT=Network Printer CONNECTOR_FILE_PRINT=Local Printer CONNECTOR_WINDOWS_PRINT=Local Windows Printer +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Fake Printer for test, does nothing CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Default Profile PROFILE_SIMPLE=Simple Profile PROFILE_EPOSTEP=Epos Tep Profile @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Invoice month in letters DOL_VALUE_MONTH=Invoice month DOL_VALUE_DAY=Invoice day DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Arve viide +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=Kapital +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/et_EE/stripe.lang b/htdocs/langs/et_EE/stripe.lang index bbac6d5d366..748df85ac20 100644 --- a/htdocs/langs/et_EE/stripe.lang +++ b/htdocs/langs/et_EE/stripe.lang @@ -32,6 +32,7 @@ VendorName=Müüja nim CSSUrlForPaymentForm=Maksmise vormi CSS stiililehtede URL NewStripePaymentReceived=New Stripe payment received NewStripePaymentFailed=New Stripe payment tried but failed +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Secret test key STRIPE_TEST_PUBLISHABLE_KEY=Publishable test key STRIPE_TEST_WEBHOOK_KEY=Webhook test key @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mo 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... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authenticatin rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/et_EE/users.lang b/htdocs/langs/et_EE/users.lang index d1dbbce4de2..df908040ddf 100644 --- a/htdocs/langs/et_EE/users.lang +++ b/htdocs/langs/et_EE/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Users and their properties DomainUser=Domeeni kasutaja %s Reactivate=Aktiveeri uuesti CreateInternalUserDesc=This form allows you to create an internal user in your company/organization. To create an external user (customer, vendor etc. ..), use the button 'Create Dolibarr User' from that third-party's contact card. -InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other.

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=Õigus on antud, kuna see pärineb mõnest grupist, kuhu kasutaja kuulub Inherited=Päritud UserWillBeInternalUser=Loodav kasutaja on sisemine kasutaja (kuna ei ole seotud mõne kolmanda isikuga) @@ -110,3 +110,8 @@ UserLogged=User logged DateEmployment=Employment Start Date DateEmploymentEnd=Employment End Date CantDisableYourself=You can't disable your own user record +ForceUserExpenseValidator=Force expense report validator +ForceUserHolidayValidator=Force leave request validator +ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/et_EE/website.lang b/htdocs/langs/et_EE/website.lang index 36c1396735d..19b7c38d1c9 100644 --- a/htdocs/langs/et_EE/website.lang +++ b/htdocs/langs/et_EE/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=View page in new tab SetAsHomePage=Set as Home page RealURL=Real URL ViewWebsiteInProduction=View web site using home URLs -SetHereVirtualHost=Use with Apache/NGinx/...
    If you can create, on your web server (Apache, Nginx, ...), a dedicated Virtual Host with PHP enabled and a Root directory on
    %s
    then set the name of the virtual host you have created in the properties of web site, so the preview can be done also using this dedicated web server access instead of the internal Dolibarr server. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS=Use with PHP embedded server
    On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running
    php -S 0.0.0.0:8080 -t %s YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org CheckVirtualHostPerms=Check also that virtual host has permission %s on files into
    %s @@ -56,7 +57,7 @@ NoPageYet=No pages yet YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template SyntaxHelp=Help on specific syntax tips YouCanEditHtmlSourceckeditor=You can edit HTML source code using the "Source" button in editor. -YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Clone page/container CloneSite=Clone site SiteAdded=Website added @@ -76,7 +77,7 @@ BlogPost=Blog post WebsiteAccount=Website account WebsiteAccounts=Website accounts AddWebsiteAccount=Create web site account -BackToListOfThirdParty=Back to list for Third Party +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Disable website first MyContainerTitle=My web site title AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Sorry, this website is currently off line. Please 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 -OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that edits of HTML source will be possible when page content has been initialized by grabbing it from an external page ("Online" editor will NOT be available) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Only edition of HTML source is possible when content was grabbed from an external site GrabImagesInto=Grab also images found into css and page. ImagesShouldBeSavedInto=Images should be saved into directory @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 ch MainLanguage=Main language OtherLanguages=Other languages UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/et_EE/zapier.lang b/htdocs/langs/et_EE/zapier.lang new file mode 100644 index 00000000000..6d6eda71313 --- /dev/null +++ b/htdocs/langs/et_EE/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr module + +# +# Admin page +# +ZapierForDolibarrSetup = Setup of Zapier for Dolibarr diff --git a/htdocs/langs/eu_ES/accountancy.lang b/htdocs/langs/eu_ES/accountancy.lang index 1f9382137ea..b8ce37a0956 100644 --- a/htdocs/langs/eu_ES/accountancy.lang +++ b/htdocs/langs/eu_ES/accountancy.lang @@ -121,6 +121,7 @@ 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 +TotalForAccount=Total for accounting account Ventilate=Bind @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Accounting account to register donations ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (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 products sold in EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported 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_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (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_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unkno ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error PaymentsNotLinkedToProduct=Payment not linked to any product / service +OpeningBalance=Opening balance ShowOpeningBalance=Show opening balance HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Group of account PcgtypeDesc=Group 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. +Reconcilable=Reconcilable + TotalVente=Total turnover before tax TotalMarge=Total sales margin @@ -307,11 +317,13 @@ 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Chart of accounts Id ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC OptionModeProductSellExport=Mode sales exported in other countries OptionModeProductBuy=Mode purchases +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries 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. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=Remove accounting code from lines that not exists into charts of account CleanHistory=Reset all bindings for selected year PredefinedGroups=Predefined groups @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Account removed from group SaleLocal=Local sale SaleExport=Export sale SaleEEC=Sale in EEC +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=Range of accounting account diff --git a/htdocs/langs/eu_ES/admin.lang b/htdocs/langs/eu_ES/admin.lang index 5bda14433c6..3ec57b27021 100644 --- a/htdocs/langs/eu_ES/admin.lang +++ b/htdocs/langs/eu_ES/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Web-zerbitzariaren erabiltzailea/taldea NoSessionFound=Your PHP configuration seems to not allow listing of active sessions. The directory used to save sessions (%s) may be protected (for example by OS permissions or by PHP directive open_basedir). DBStoringCharset=Database charset to store data DBSortingCharset=Database charset to sort data +HostCharset=Host charset ClientCharset=Client charset ClientSortingCharset=Client collation WarningModuleNotActive=%s moduluak gaituta egon behar du @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the NoMaxSizeByPHPLimit=Oharra: zure PHP konfigurazioan ez da limiterik ezarri MaxSizeForUploadedFiles=Igotako fitxategien tamaina maximoa (0 fitxategiak igotzea ezgaitzeko) UseCaptchaCode=Sarrera orrian kode grafikoa (CAPTCHA) erabili -AntiVirusCommand= Biruskontrako komandoaren kokapen osoa -AntiVirusCommandExample= Example for ClamWin: c:\\Progra~1\\ClamWin\\bin\\clamscan.exe
    Example for ClamAv: /usr/bin/clamscan +AntiVirusCommand=Biruskontrako komandoaren kokapen osoa +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= More parameters on command line -AntiVirusParamExample= Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=Kontabilitate moduluaren konfigurazia UserSetup=Erabiltzaileen kudeaketaren konfigurazioa MultiCurrencySetup=Multi-currency setup @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Demo-an ezgaitutako aukera FeatureAvailableOnlyOnStable=Feature only available on official stable versions BoxesDesc=Widgets are components showing some information that you can add to personalize some pages. You can choose between showing the widget or not by selecting target page and clicking 'Activate', or by clicking the trashcan to disable it. OnlyActiveElementsAreShown=Only elements from enabled modules are shown. -ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button (at end of module line) to enable/disable a module/application. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. ModulesMarketPlaceDesc=You can find more modules to download on external websites on the Internet... ModulesDeployDesc=If permissions on your file system allow it, you can use this tool to deploy an external module. The module will then be visible on the tab %s. ModulesMarketPlaces=Find external app/modules @@ -212,6 +213,7 @@ CompatibleUpTo=Compatible with version %s NotCompatible=This module does not seem compatible with your Dolibarr %s (Min %s - Max %s). CompatibleAfterUpdate=This module requires an update to your Dolibarr %s (Min %s - Max %s). SeeInMarkerPlace=See in Market place +SeeSetupOfModule=See setup of module %s Updated=Updated Nouveauté=Novelty AchatTelechargement=Buy / Download @@ -221,6 +223,7 @@ DoliPartnersDesc=List of companies providing custom-developed modules or feature WebSiteDesc=External websites for more add-on (non-core) modules... DevelopYourModuleDesc=Some solutions to develop your own module... URL=URL +RelativeURL=Relative URL BoxesAvailable=Widgets available BoxesActivated=Widgets activated ActivateOn=Aktibatu on @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Checkboxes ExtrafieldCheckBoxFromList=Checkboxes from table ExtrafieldLink=Link to an object ComputedFormula=Computed field -ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Store computed field ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! ExtrafieldParamHelpPassword=Leaving this field blank means this value will be stored without encryption (field must be only hidden with star on screen).
    Set 'auto' to use the default encryption rule to save password into database (then value read will be the hash only, no way to retrieve original value) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Keep empty to use default value DefaultLink=Default link SetAsDefault=Set as default ValueOverwrittenByUserSetup=Warning, this value may be overwritten by user specific setup (each user can set his own clicktodial url) -ExternalModule=External module - Installed into directory %s +ExternalModule=External module +InstalledInto=Installed into directory %s BarcodeInitForthird-parties=Mass barcode init for third-parties BarcodeInitForProductsOrServices=Mass barcode init or reset for products or services CurrentlyNWithoutBarCode=Currently, you have %s record on %s %s without barcode defined. @@ -947,7 +951,7 @@ DictionaryCanton=States/Provinces DictionaryRegion=Regions DictionaryCountry=Countries DictionaryCurrency=Currencies -DictionaryCivility=Title of civility +DictionaryCivility=Honorific titles DictionaryActions=Types of agenda events DictionarySocialContributions=Types of social or fiscal taxes DictionaryVAT=VAT Rates or Sales Tax Rates @@ -988,6 +992,7 @@ VATIsNotUsedDesc=By default the proposed Sales tax is 0 which can be used for ca VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=Rate LocalTax1IsNotUsed=Do not use second tax LocalTax1IsUsedDesc=Use a second type of tax (other than first one) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices LocalTax2IsNotUsedDescES=By default the proposed IRPF is 0. End of rule. LocalTax2IsUsedExampleES=In Spain, freelancers and independent professionals who provide services and companies who have chosen the tax system of modules. LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=Reports on local taxes CalcLocaltax1=Sales - Purchases CalcLocaltax1Desc=Local Taxes reports are calculated with the difference between localtaxes sales and localtaxes purchases @@ -1018,6 +1026,7 @@ CalcLocaltax2=Purchases CalcLocaltax2Desc=Local Taxes reports are the total of localtaxes purchases CalcLocaltax3=Sales CalcLocaltax3Desc=Local Taxes reports are the total of localtaxes sales +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=Label used by default if no translation can be found for code LabelOnDocuments=Label on documents LabelOrTranslationKey=Label or translation key @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Expense report to approve Delays_MAIN_DELAY_HOLIDAYS=Leave requests 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. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. SetupDescription5=Other Setup menu entries manage optional parameters. LogEvents=Security audit events Audit=Audit @@ -1128,7 +1137,7 @@ LogEventDesc=Enable logging for specific security events. Administrators the log AreaForAdminOnly=Setup parameters can be set by administrator users only. SystemInfoDesc=System information is miscellaneous technical information you get in read only mode and visible for administrators only. SystemAreaForAdminOnly=This area is available to administrator users only. Dolibarr user permissions cannot change this restriction. -CompanyFundationDesc=Edit the information of the company/entity. Click on "%s" button at the bottom of the page. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. AccountantFileNumber=Accountant code DisplayDesc=Parameters affecting the look and behaviour of Dolibarr can be modified here. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Rules to generate and validate passwords DisableForgetPasswordLinkOnLogonPage=Do not show the "Password Forgotten" link on the Login page UsersSetup=Users module setup UserMailRequired=Email required to create a new user +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### HRMSetup=HRM module setup ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Invoice documents models BillsPDFModulesAccordindToInvoiceType=Invoice documents models according to invoice type PaymentsPDFModules=Payment documents models ForceInvoiceDate=Force invoice date to validation date -SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined for invoice +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice SuggestPaymentByRIBOnAccount=Suggest payment by withdrawal on account SuggestPaymentByChequeToAddress=Suggest payment by check to FreeLegalTextOnInvoices=Free text on invoices @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Vendor payments setup PropalSetup=Commercial proposals module setup ProposalsNumberingModules=Commercial proposal numbering models ProposalsPDFModules=Commercial proposal documents models -SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined for proposal +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal FreeLegalTextOnProposal=Free text on commercial proposals WatermarkOnDraftProposal=Watermark on draft commercial proposals (none if empty) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal @@ -1322,6 +1334,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 ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=Sales Orders management setup OrdersNumberingModules=Orders numbering models OrdersModelModule=Order documents models @@ -1720,7 +1733,7 @@ MultiCompanySetup=Multi-company module setup ##### Suppliers ##### SuppliersSetup=Vendor module setup SuppliersCommandModel=Complete template of Purchase Order -SuppliersCommandModelMuscadet=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) SuppliersInvoiceModel=Complete template of Vendor Invoice SuppliersInvoiceNumberingModel=Vendor invoices numbering models IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Hide images in Top menu LeftMenuBackgroundColor=Background color for Left menu BackgroundTableTitleColor=Background color for Table title line BackgroundTableTitleTextColor=Text color for Table title line +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Background color for odd table lines BackgroundTableLineEvenColor=Background color for even table lines MinimumNoticePeriod=Minimum notice period (Your leave request must be done before this delay) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Dolibarr Reference not found in Message ID FormatZip=Zip MainMenuCode=Menu entry code (mainmenu) ECMAutoTree=Show automatic ECM tree -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. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Opening hours OpeningHoursDesc=Enter here the regular opening hours of your company. ResourceSetup=Configuration of Resource module @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramatical ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export +ImportSetup=Setup of module Import InstanceUniqueID=Unique ID of the instance SmallerThan=Smaller than LargerThan=Larger than @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled EmailTemplate=Template for email EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/eu_ES/bills.lang b/htdocs/langs/eu_ES/bills.lang index 10f4d1b487c..9a4c8f55e10 100644 --- a/htdocs/langs/eu_ES/bills.lang +++ b/htdocs/langs/eu_ES/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Vendors invoices SupplierBill=Vendor invoice SupplierBills=suppliers invoices Payment=Payment -PaymentBack=Payment back -CustomerInvoicePaymentBack=Payment back +PaymentBack=Refund +CustomerInvoicePaymentBack=Refund Payments=Ordainketak PaymentsBack=Refunds paymentInInvoiceCurrency=in invoices currency PaidBack=Paid back DeletePayment=Ordainketa ezabatu ConfirmDeletePayment=Are you sure you want to delete this payment? -ConfirmConvertToReduc=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. -ConfirmConvertToReducSupplier=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. SupplierPayments=Vendor payments ReceivedPayments=Jasotako ordainketak @@ -209,17 +209,13 @@ NumberOfBillsByMonth=No. of invoices per month AmountOfBills=Faktura kopurua AmountOfBillsHT=Amount of invoices (net of tax) AmountOfBillsByMonthHT=Amount of invoices by month (net of tax) -ShowSocialContribution=Show social/fiscal tax -ShowBill=Faktura erakutsi -ShowInvoice=Faktura erakutsi -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 +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=To pay on %s toPayOn=to pay on %s RetainedWarranty=Retained Warranty @@ -230,7 +226,6 @@ 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 AlreadyPaidNoCreditNotesNoDeposits=Already paid (without credit notes and down payments) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Generated from template invoice %s WarningInvoiceDateInFuture=Warning, the invoice date is higher than current date WarningInvoiceDateTooFarInFuture=Warning, the invoice date is too far from current date ViewAvailableGlobalDiscounts=View available discounts +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Status PaymentConditionShortRECEP=Due Upon Receipt @@ -509,7 +505,7 @@ ToMakePayment=Pay ToMakePaymentBack=Pay back ListOfYourUnpaidInvoices=List of unpaid invoices NoteListOfYourUnpaidInvoices=Note: This list contains only invoices for third parties you are linked to as a sale representative. -RevenueStamp=Revenue stamp +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party YouMustCreateStandardInvoiceFirstDesc=You have to create a standard invoice first and convert it to "template" to create a new template invoice @@ -575,3 +571,4 @@ AutoFillDateTo=Set end date for service line with next invoice date AutoFillDateToShort=Set end date MaxNumberOfGenerationReached=Max number of gen. reached BILL_DELETEInDolibarr=Invoice deleted +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/eu_ES/blockedlog.lang b/htdocs/langs/eu_ES/blockedlog.lang index cff8f7d657b..5afae6e9e53 100644 --- a/htdocs/langs/eu_ES/blockedlog.lang +++ b/htdocs/langs/eu_ES/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Unalterable logs ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) DownloadBlockChain=Download fingerprints -KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this re after it was recorded, or has erased the previous archived record (check that line with previous # exists). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. AddedByAuthority=Stored into remote authority diff --git a/htdocs/langs/eu_ES/cashdesk.lang b/htdocs/langs/eu_ES/cashdesk.lang index f18207ff5d1..13240b9b76e 100644 --- a/htdocs/langs/eu_ES/cashdesk.lang +++ b/htdocs/langs/eu_ES/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Add this article RestartSelling=Go back on sell SellFinished=Sale complete PrintTicket=Print ticket +SendTicket=Send ticket NoProductFound=No article found ProductFound=product found NoArticle=No article @@ -48,6 +49,7 @@ Footer=Footer AmountAtEndOfPeriod=Amount at end of period (day, month or year) TheoricalAmount=Theorical amount RealAmount=Real amount +CashFence=Cash fence CashFenceDone=Cash fence done for the period NbOfInvoices=Nb of invoices Paymentnumpad=Type of Pad to enter payment @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS needs product categories to work OrderNotes=Order Notes CashDeskBankAccountFor=Default account to use for payments in NoPaimementModesDefined=No paiment mode defined in TakePOS configuration -TicketVatGrouped=Group VAT by rate in tickets -AutoPrintTickets=Automatically print tickets +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? @@ -87,7 +90,19 @@ HeadBar=Head Bar SortProductField=Field for sorting products Browser=Browser BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/eu_ES/companies.lang b/htdocs/langs/eu_ES/companies.lang index b5af0e3f49c..dc4f4bcc2c2 100644 --- a/htdocs/langs/eu_ES/companies.lang +++ b/htdocs/langs/eu_ES/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted=Company "%s" deleted from database. ListOfContacts=List of contacts/addresses ListOfContactsAddresses=List of contacts/addresses ListOfThirdParties=List of Third Parties -ShowCompany=Show Third Party ShowContact=Show contact ContactsAllShort=All (No filter) ContactType=Contact type @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=First name of sales representative SaleRepresentativeLastname=Last name of sales representative ErrorThirdpartiesMerge=There was an error when deleting the third parties. Please check the log. Changes have been reverted. NewCustomerSupplierCodeProposed=Customer or Vendor code already used, a new code is suggested +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Payment Type - Customer PaymentTermsCustomer=Payment Terms - Customer diff --git a/htdocs/langs/eu_ES/compta.lang b/htdocs/langs/eu_ES/compta.lang index ab097bae3e3..2d8e20c7ec2 100644 --- a/htdocs/langs/eu_ES/compta.lang +++ b/htdocs/langs/eu_ES/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=See %sanalysis of payments%s for a calculation on act SeeReportInDueDebtMode=See %sanalysis of invoices%s for a calculation based on known recorded invoices even if they are not yet accounted in Ledger. SeeReportInBookkeepingMode=See %sBookeeping report%s for a calculation on Bookkeeping Ledger table RulesAmountWithTaxIncluded=- Amounts shown are with all taxes included -RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the validation date of invoices and VAT and on the due date for expenses. For salaries defined with Salary module, the value date of payment is used. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- It includes the real payments made on invoices, expenses, VAT and salaries.
    - It is based on the payment dates of the invoices, expenses, VAT and salaries. The donation date for donation. -RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the validation date of these invoices.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    RulesCATotalSaleJournal=It includes all credit lines from the Sale journal. RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Turnover invoiced by sale tax rate TurnoverCollectedbyVatrate=Turnover collected by sale tax rate PurchasebyVatrate=Purchase by sale tax rate LabelToShow=Short label +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/eu_ES/donations.lang b/htdocs/langs/eu_ES/donations.lang index 413f5a28f1c..9b8f2e76c05 100644 --- a/htdocs/langs/eu_ES/donations.lang +++ b/htdocs/langs/eu_ES/donations.lang @@ -7,7 +7,6 @@ AddDonation=Create a donation NewDonation=New donation DeleteADonation=Delete a donation ConfirmDeleteADonation=Are you sure you want to delete this donation? -ShowDonation=Show donation PublicDonation=Public donation DonationsArea=Donations area DonationStatusPromiseNotValidated=Draft promise @@ -17,6 +16,7 @@ DonationStatusPromiseNotValidatedShort=Draft DonationStatusPromiseValidatedShort=Validated DonationStatusPaidShort=Received DonationTitle=Donation receipt +DonationDate=Donation date DonationDatePayment=Ordainketa data ValidPromess=Validate promise DonationReceipt=Donation receipt diff --git a/htdocs/langs/eu_ES/errors.lang b/htdocs/langs/eu_ES/errors.lang index 3ffc686e62f..7c67aeca8b5 100644 --- a/htdocs/langs/eu_ES/errors.lang +++ b/htdocs/langs/eu_ES/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=File not received completely by server. ErrorNoTmpDir=Temporary directy %s does not exists. ErrorUploadBlockedByAddon=Upload blocked by a PHP/Apache plugin. ErrorFileSizeTooLarge=File size is too large. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Size too long for int type (%s digits maximum) ErrorSizeTooLongForVarcharType=Size too long for string type (%s chars maximum) ErrorNoValueForSelectType=Please fill value for select list @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # 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/eu_ES/install.lang b/htdocs/langs/eu_ES/install.lang index bf9c08c4ba7..f67dff57184 100644 --- a/htdocs/langs/eu_ES/install.lang +++ b/htdocs/langs/eu_ES/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=This PHP supports Curl. PHPSupportCalendar=This PHP supports calendars extensions. PHPSupportUTF8=This PHP supports UTF8 functions. PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=This PHP supports %s functions. PHPMemoryOK=Your PHP max session memory is set to %s. This should be enough. 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. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=Your PHP installation does not support Curl. ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. 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. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. ErrorDirDoesNotExists=Directory %s does not exist. ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=The application tried to self-upgrade, but the in 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. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/eu_ES/interventions.lang b/htdocs/langs/eu_ES/interventions.lang index e7667ef6946..e5936f8246e 100644 --- a/htdocs/langs/eu_ES/interventions.lang +++ b/htdocs/langs/eu_ES/interventions.lang @@ -41,9 +41,7 @@ InterventionsArea=Interventions area DraftFichinter=Draft interventions LastModifiedInterventions=Latest %s modified interventions FichinterToProcess=Interventions to process -##### Types de contacts ##### TypeContact_fichinter_external_CUSTOMER=Following-up customer contact -# Modele numérotation PrintProductsOnFichinter=Print also lines of type "product" (not only services) on intervention card PrintProductsOnFichinterDetails=interventions generated from orders UseServicesDurationOnFichinter=Use services duration for interventions generated from orders @@ -53,14 +51,16 @@ InterventionStatistics=Statistics of interventions NbOfinterventions=No. of intervention cards NumberOfInterventionsByMonth=No. of intervention cards by month (date of validation) AmountOfInteventionNotIncludedByDefault=Amount of intervention is not included by default into profit (in most cases, timesheets are used to count time spent). Add option PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT to 1 into home-setup-other to include them. -##### Exports ##### InterId=Intervention id InterRef=Intervention ref. InterDateCreation=Date creation intervention InterDuration=Duration intervention InterStatus=Status intervention InterNote=Note intervention +InterLine=Line of intervention InterLineId=Line id intervention InterLineDate=Line date intervention InterLineDuration=Line duration intervention InterLineDesc=Line description intervention +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/eu_ES/link.lang b/htdocs/langs/eu_ES/link.lang index 35732927962..d3a0fc9370e 100644 --- a/htdocs/langs/eu_ES/link.lang +++ b/htdocs/langs/eu_ES/link.lang @@ -8,3 +8,4 @@ LinkRemoved=%s esteka ezabatua izan da ErrorFailedToDeleteLink= Ezin izan da '%s' esteka ezabatu ErrorFailedToUpdateLink= Ezin izan da '%s' esteka berritu URLToLink=URL to link +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/eu_ES/mails.lang b/htdocs/langs/eu_ES/mails.lang index b5947e9b94d..3c35c12be7a 100644 --- a/htdocs/langs/eu_ES/mails.lang +++ b/htdocs/langs/eu_ES/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=No contact/address with a category found NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found OutGoingEmailSetup=Outgoing email setup InGoingEmailSetup=Incoming email setup -OutGoingEmailSetupForEmailing=Outgoing email setup (for mass emailing) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Default outgoing email setup Information=Informazioa ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/eu_ES/main.lang b/htdocs/langs/eu_ES/main.lang index 16b1a073b36..c46d4569b13 100644 --- a/htdocs/langs/eu_ES/main.lang +++ b/htdocs/langs/eu_ES/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Save and stay SaveAndNew=Save and new TestConnection=Test connection ToClone=Clone +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Choose data you want to clone: NoCloneOptionsSpecified=No data to clone defined. Of=of @@ -829,6 +830,8 @@ Gender=Gender Genderman=Man Genderwoman=Woman ViewList=List view +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Mandatory Hello=Hello GoodBye=GoodBye @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Select your graph options to build a graph Measures=Measures XAxis=X-Axis YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/eu_ES/modulebuilder.lang b/htdocs/langs/eu_ES/modulebuilder.lang index 00a8c0f9d32..135ac1ae9ec 100644 --- a/htdocs/langs/eu_ES/modulebuilder.lang +++ b/htdocs/langs/eu_ES/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=List of dictionaries entries ListOfPermissionsDefined=List of defined permissions SeeExamples=See examples here EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) -VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update). Using a negative value means field is not shown by default on list but can be selected for viewing). It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty DisplayOnPdf=Display on PDF IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) diff --git a/htdocs/langs/eu_ES/multicurrency.lang b/htdocs/langs/eu_ES/multicurrency.lang new file mode 100644 index 00000000000..bfcbd11fb7c --- /dev/null +++ b/htdocs/langs/eu_ES/multicurrency.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Multi currency +ErrorAddRateFail=Error in added rate +ErrorAddCurrencyFail=Error in added currency +ErrorDeleteCurrencyFail=Error delete fail +multicurrency_syncronize_error=Synchronization error: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Use the date of the document to find the currency rate, instead of using the latest known rate +multicurrency_useOriginTx=When an object is created from another, keep the original rate from the source object (otherwise use the latest known rate) +CurrencyLayerAccount=CurrencyLayer API +CurrencyLayerAccount_help_to_synchronize=You must create an account on website %s to use this functionality.
    Get your API key.
    If you use a free account, you can't change the source currency (USD by default).
    If your main currency is not USD, the application will automatically recalculate it.

    You are limited to 1000 synchronizations per month. +multicurrency_appId=API key +multicurrency_appCurrencySource=Source currency +multicurrency_alternateCurrencySource=Alternate source currency +CurrenciesUsed=Currencies used +CurrenciesUsed_help_to_add=Add the different currencies and rates you need to use on your proposals, orders etc. +rate=rate +MulticurrencyReceived=Received, original currency +MulticurrencyRemainderToTake=Remaining amount, original currency +MulticurrencyPaymentAmount=Payment amount, original currency +AmountToOthercurrency=Amount To (in currency of receiving account) +CurrencyRateSyncSucceed=Currency rate synchronization done successfuly +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Use the currency of the document for online payments diff --git a/htdocs/langs/eu_ES/other.lang b/htdocs/langs/eu_ES/other.lang index 28e88cf2a2f..83e9970fedc 100644 --- a/htdocs/langs/eu_ES/other.lang +++ b/htdocs/langs/eu_ES/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Sales order validated Notify_ORDER_SENTBYMAIL=Sales order sent by mail Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=URL of page WEBSITE_TITLE=Title WEBSITE_DESCRIPTION=Deskribapena WEBSITE_IMAGE=Image -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Keywords LinesToImport=Lines to import diff --git a/htdocs/langs/eu_ES/products.lang b/htdocs/langs/eu_ES/products.lang index 473c0b334b0..6cf471d7350 100644 --- a/htdocs/langs/eu_ES/products.lang +++ b/htdocs/langs/eu_ES/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL MassBarcodeInit=Mass barcode init MassBarcodeInitDesc=This page can be used to initialize a barcode on objects that does not have barcode defined. Check before that setup of module barcode is complete. ProductAccountancyBuyCode=Accounting code (purchase) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Accounting code (sale) ProductAccountancySellIntraCode=Accounting code (sale intra-Community) ProductAccountancySellExportCode=Accounting code (sale export) @@ -165,7 +167,7 @@ SuppliersPrices=Vendor prices SuppliersPricesOfProductsOrServices=Vendor prices (of products or services) CustomCode=Customs / Commodity / HS code CountryOrigin=Origin country -Nature=Nature of produt (material/finished) +Nature=Nature of product (material/finished) ShortLabel=Short label Unit=Unit p=u. diff --git a/htdocs/langs/eu_ES/projects.lang b/htdocs/langs/eu_ES/projects.lang index 7ff3b979bd9..2d78af80fc2 100644 --- a/htdocs/langs/eu_ES/projects.lang +++ b/htdocs/langs/eu_ES/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=which I'm linked to project Time=Time ListOfTasks=List of tasks GoToListOfTimeConsumed=Go to list of time consumed -GoToListOfTasks=Show as list -GoToGanttView=show as Gantt GanttView=Gantt View ListProposalsAssociatedProject=List of the commercial proposals related to the project ListOrdersAssociatedProject=List of sales orders related to the project @@ -188,7 +186,7 @@ PlannedWorkload=Planned workload PlannedWorkloadShort=Workload ProjectReferers=Related items ProjectMustBeValidatedFirst=Project must be validated first -FirstAddRessourceToAllocateTime=Assign a user resource to task to allocate time +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=Input per day InputPerWeek=Input per week InputPerMonth=Input per month @@ -240,6 +238,7 @@ LatestModifiedProjects=Latest %s modified projects OtherFilteredTasks=Other filtered tasks NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=Allow user comments on tasks AllowCommentOnProject=Allow user comments on projects @@ -256,7 +255,7 @@ ServiceToUseOnLines=Service to use on lines InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. ProjectFollowOpportunity=Follow opportunity -ProjectFollowTasks=Follow tasks +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Usage: Opportunity UsageTasks=Usage: Tasks @@ -265,3 +264,4 @@ InvoiceToUse=Draft invoice to use NewInvoice=New invoice OneLinePerTask=One line per task OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/eu_ES/receiptprinter.lang b/htdocs/langs/eu_ES/receiptprinter.lang index 3df49b9fe67..896eaa313dd 100644 --- a/htdocs/langs/eu_ES/receiptprinter.lang +++ b/htdocs/langs/eu_ES/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Dummy Printer CONNECTOR_NETWORK_PRINT=Network Printer CONNECTOR_FILE_PRINT=Local Printer CONNECTOR_WINDOWS_PRINT=Local Windows Printer +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Fake Printer for test, does nothing CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Default Profile PROFILE_SIMPLE=Simple Profile PROFILE_EPOSTEP=Epos Tep Profile @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Invoice month in letters DOL_VALUE_MONTH=Invoice month DOL_VALUE_DAY=Invoice day DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Invoice ref +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=Capital +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/eu_ES/stripe.lang b/htdocs/langs/eu_ES/stripe.lang index da7fcd95ebd..4696e5b8128 100644 --- a/htdocs/langs/eu_ES/stripe.lang +++ b/htdocs/langs/eu_ES/stripe.lang @@ -32,6 +32,7 @@ VendorName=Name of vendor CSSUrlForPaymentForm=CSS style sheet url for payment form NewStripePaymentReceived=New Stripe payment received NewStripePaymentFailed=New Stripe payment tried but failed +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Secret test key STRIPE_TEST_PUBLISHABLE_KEY=Publishable test key STRIPE_TEST_WEBHOOK_KEY=Webhook test key @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mo 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... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authenticatin rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/eu_ES/users.lang b/htdocs/langs/eu_ES/users.lang index b61662c49ce..2d4f828a737 100644 --- a/htdocs/langs/eu_ES/users.lang +++ b/htdocs/langs/eu_ES/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Users and their properties DomainUser=Domain user %s Reactivate=Reactivate CreateInternalUserDesc=This form allows you to create an internal user in your company/organization. To create an external user (customer, vendor etc. ..), use the button 'Create Dolibarr User' from that third-party's contact card. -InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other.

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=Permission granted because inherited from one of a user's group. Inherited=Inherited UserWillBeInternalUser=Created user will be an internal user (because not linked to a particular third party) @@ -110,3 +110,8 @@ UserLogged=User logged DateEmployment=Employment Start Date DateEmploymentEnd=Employment End Date CantDisableYourself=You can't disable your own user record +ForceUserExpenseValidator=Force expense report validator +ForceUserHolidayValidator=Force leave request validator +ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/eu_ES/website.lang b/htdocs/langs/eu_ES/website.lang index 73ffbc30aa4..45e420e2549 100644 --- a/htdocs/langs/eu_ES/website.lang +++ b/htdocs/langs/eu_ES/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=View page in new tab SetAsHomePage=Set as Home page RealURL=Real URL ViewWebsiteInProduction=View web site using home URLs -SetHereVirtualHost=Use with Apache/NGinx/...
    If you can create, on your web server (Apache, Nginx, ...), a dedicated Virtual Host with PHP enabled and a Root directory on
    %s
    then set the name of the virtual host you have created in the properties of web site, so the preview can be done also using this dedicated web server access instead of the internal Dolibarr server. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS=Use with PHP embedded server
    On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running
    php -S 0.0.0.0:8080 -t %s YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org CheckVirtualHostPerms=Check also that virtual host has permission %s on files into
    %s @@ -56,7 +57,7 @@ NoPageYet=No pages yet YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template SyntaxHelp=Help on specific syntax tips YouCanEditHtmlSourceckeditor=You can edit HTML source code using the "Source" button in editor. -YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Clone page/container CloneSite=Clone site SiteAdded=Website added @@ -76,7 +77,7 @@ BlogPost=Blog post WebsiteAccount=Website account WebsiteAccounts=Website accounts AddWebsiteAccount=Create web site account -BackToListOfThirdParty=Back to list for Third Party +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Disable website first MyContainerTitle=My web site title AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Sorry, this website is currently off line. Please 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 -OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that edits of HTML source will be possible when page content has been initialized by grabbing it from an external page ("Online" editor will NOT be available) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Only edition of HTML source is possible when content was grabbed from an external site GrabImagesInto=Grab also images found into css and page. ImagesShouldBeSavedInto=Images should be saved into directory @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 ch MainLanguage=Main language OtherLanguages=Other languages UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/eu_ES/zapier.lang b/htdocs/langs/eu_ES/zapier.lang new file mode 100644 index 00000000000..6d6eda71313 --- /dev/null +++ b/htdocs/langs/eu_ES/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr module + +# +# Admin page +# +ZapierForDolibarrSetup = Setup of Zapier for Dolibarr diff --git a/htdocs/langs/fa_IR/accountancy.lang b/htdocs/langs/fa_IR/accountancy.lang index 15f67cc5a13..75703b7c214 100644 --- a/htdocs/langs/fa_IR/accountancy.lang +++ b/htdocs/langs/fa_IR/accountancy.lang @@ -121,6 +121,7 @@ InvoiceLinesDone=سطور بند شدۀ صورت‌حساب‌ها ExpenseReportLines=سطور گزارش هزینه‌ها که باید بند شوند ExpenseReportLinesDone=سطور بندشدۀ گزارش هزینه‌ها IntoAccount=بندکردن سطر به حساب حسابداری +TotalForAccount=Total for accounting account Ventilate=بندکردن @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=حساب حساب‌داری ثبت کمک و اعا ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=حساب حساب‌داری ثبت اشتراک‌ها ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_ACCOUNT=حساب حساب‌داری پیش‌فرض برای محصولات فروخته شده (در صورت عدم تعریف در برگۀ محصولات استفاده می‌شود) ACCOUNTING_PRODUCT_SOLD_INTRA_ACCOUNT=Accounting account by default for the products sold in EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported out of EEC (used if not defined in the product sheet) + ACCOUNTING_SERVICE_BUY_ACCOUNT=حساب حساب‌داری پیش‌فرض برای خدمات خریداری شده (در صورت عدم تعریف در برگۀ خدمات استفاده می‌شود) +ACCOUNTING_SERVICE_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_ACCOUNT=حساب حساب‌داری پیش‌فرض برای خدمات فروخته شده (در صورت عدم تعریف در برگۀ خدمات استفاده می‌شود) ACCOUNTING_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unkno ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=حساب شخص‌سوم تعریف نشده یا شخص سوم ناشناخته است. خطای انسدادی UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=حساب شخص‌سوم ناشناخته و حساب انتظار تعریف نشده است. خطای انسدادی PaymentsNotLinkedToProduct=پرداخت به هیچ محصول/خدمتی وصل نشده است +OpeningBalance=Opening balance ShowOpeningBalance=Show opening balance HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group Pcgtype=گروه حساب PcgtypeDesc=Group 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. +Reconcilable=Reconcilable + TotalVente=جمع گردش‌مالی پیش‌از محاسبۀ مالیات TotalMarge=حاشیه فروش کل @@ -307,11 +317,13 @@ Modelcsv_quadratus=صدور برای Quadratus QuadraCompta Modelcsv_ebp=صدور برای EBP Modelcsv_cogilog=صدور برای Cogilog Modelcsv_agiris=صدور برای Agiris -Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) +Modelcsv_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=صادرکردن برای OpenConcerto  (آزمایشی) Modelcsv_configurable= صدور قابل پیکربندی CSV Modelcsv_FEC=Export FEC Modelcsv_Sage50_Swiss=صادرکردن برای Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=ساختار شناسۀ حساب‌‌ها ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=حالت فروش OptionModeProductSellIntra=حالت فروش به شکل EEC صادر می‌گردد OptionModeProductSellExport=حالت فروش به حالت سایر کشورها صادر می‌گرد OptionModeProductBuy=حالت خرید +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries OptionModeProductSellDesc=نمایش همۀ محصولات دارای حساب‌حساب‌داری برای فروش OptionModeProductSellIntraDesc=نمایش همۀ محصولات در حساب حسابداری برای فروش در EEC OptionModeProductSellExportDesc=نمایش همۀ محصولات در حساب حسابداری برای سایر فروش‌های خارجی OptionModeProductBuyDesc=نمایش همۀ محصولات دارای حساب‌حساب‌داری برای خرید +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=حذف کد حساب‌داری از سطوری که در ساختار و نمودار حساب وجود ندارند CleanHistory=بازسازی همۀ بندشدن‌ها برای سال انتخاب شده PredefinedGroups=گروه‌های از پیش‌تعریف شده @@ -338,6 +354,8 @@ AccountRemovedFromGroup=حساب از گروه حذف شده‌است SaleLocal=Local sale SaleExport=Export sale SaleEEC=Sale in EEC +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=بازۀ حساب حساب‌داری diff --git a/htdocs/langs/fa_IR/admin.lang b/htdocs/langs/fa_IR/admin.lang index 4da03d6d6b7..846bacb3666 100644 --- a/htdocs/langs/fa_IR/admin.lang +++ b/htdocs/langs/fa_IR/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=کاربرِ/گروهِ سرویس‌دهندۀ‌وب NoSessionFound=به نظر می‌رسد پیکربندی PHP شما امکان فهرست‌کردن نشست‌های فعال را نداشته باشد. ممکن است پوشه‌ای که برای ذخیرۀ نشست‌ها مورد استفاده است (%s) حفاظت شده باشد (مثلا بواسطۀ مجوزهای سیستم‌عامل یا با تمهیدات open_basedir در PHP). DBStoringCharset=تنظیمات کدبندی Charset بانک داده برای ذخیره داده‌ها DBSortingCharset=تنظیمات کدبندی Charset بانک داده برای مرتب‌سازی داده‌ها +HostCharset=Host charset ClientCharset=تنظیمات Charset مشتری ClientSortingCharset=تنظیمات collation مشتری WarningModuleNotActive=واحد %s باید فعال باشد @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=نکته: پیکربندی PHP شما حداکث NoMaxSizeByPHPLimit=توجه: هیچ محدودیتی در پیکربندی PHP شما وجود ندارد MaxSizeForUploadedFiles=حداکثر اندازۀ فایل بارگذاری شده ( برای عدم اجازۀ ارسال فایل عدد 0 را وارد نمائید) UseCaptchaCode=استفاده از کدهای گرافیکی (CAPTCHA) در صفحۀ ورود -AntiVirusCommand= مسیر کامل خط‌فرمان ویروس‌کش -AntiVirusCommandExample= مثال برای ClamWin این نشانی: c:\\Progra~1\\ClamWin\\bin\\clamscan.exe
    برای ClamAv این نشانی: /usr/bin/clamscan +AntiVirusCommand=مسیر کامل خط‌فرمان ویروس‌کش +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= پارامترهای بیشتر در خط فرمان -AntiVirusParamExample= مثال برای ClamWin به این شکل : --database="C:\\Program Files (x86)\\ClamWin\\lib" +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=برپاسازی واحد حساب‌داری UserSetup=برپاسازی مدیریت کاربر MultiCurrencySetup=برپاسازی چندگانگی-واحدپولی @@ -199,7 +200,7 @@ FeatureDisabledInDemo=ویژگی غیرفعال در نسخۀ نمایشی FeatureAvailableOnlyOnStable=این ویژگی فقط در نسخه‌های رسمی پایدار در دسترس است BoxesDesc=وسایل یا widgets اجزائی هستند که به شما اطلاعاتی برای شخصی‌سازی برخی صفحات نمایش می‌دهند.شما می‌توانید برای نمایش یا عدم نمایش این وسیله در صفحۀ مورد نظر صفحۀ هدف را انتخاب کرده و کلید "فعال‌سازی" را فشار دهید، یا این‌که بر روی سطل‌آشغال کلیک کرده یا آن را فعال نمائید. OnlyActiveElementsAreShown=تنها عناصیر مربوط به واحد‌های فعال نمایش داده می‌شوند. -ModulesDesc=این واحد‌ها/برنامه‌ها تعیین می‌کنند کدام قابلیت‌ها در نرم‌افزار فعال شوند. برخی واحد‌ها نیازمند مجوزدادن به کاربرن هستند تا امکان دسترسی به آن‌ها فراهم باشد. (در انتهای سطر مربوط به واحد) روی کلید روش/خاموش کلیک کنید تا واحد/برنامۀ مورد نظر را فعال/غیرفعال نمائید. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. ModulesMarketPlaceDesc=می‌توانید واحد‌های بیشتری برای دریافت در سایت‌های موجود روی اینترنت پیدا کنید... ModulesDeployDesc=اگر مجوزهای موجود روی سرویس‌دهندۀ شما اجازه دهد، شما می‌توانید این ابزار را برای به کار گرفتن یک واحد بیرونی استفاده نمائید. این واحد در زبانۀ %s قابل نمایش خواهد بود. ModulesMarketPlaces=پیدا کردن واحد‌ها/برنامه‌های بیرونی @@ -212,6 +213,7 @@ CompatibleUpTo=سازگار با نسخۀ %s NotCompatible=به نظر نمی‌رسد این واحد با نسخۀ %s Dolibarr  نصب شده سازگار باشد (سازگاری حداقل با %s و حداکثر با %s ). CompatibleAfterUpdate=این واحد نیازمند روزآمدسازی Dolibarr نسخۀ %s است (حداقل %s - حداکثر %s) SeeInMarkerPlace=نمایش در بازارچه +SeeSetupOfModule=See setup of module %s Updated=روزآمد شده Nouveauté=تازگی AchatTelechargement=خرید / بارگیری @@ -221,6 +223,7 @@ DoliPartnersDesc=فهرست شرکت‌هائی که واحد‌ها یا قاب WebSiteDesc=سایت‌های دیگر برای واحد‌های افزودنی (غیر هسته‌) دیگر... DevelopYourModuleDesc=چند راه برای توسعه دادن و ایجاد واحد دل‌خواه.... URL=نشانی‌اینترنتی +RelativeURL=Relative URL BoxesAvailable=وسایل در دسترس BoxesActivated=وسایل فعال شده ActivateOn=فعال کردن در @@ -425,7 +428,7 @@ ExtrafieldCheckBox=کادرهای تائید ExtrafieldCheckBoxFromList=کادرهای تائید از جدول ExtrafieldLink=پیوند به یک شیء ComputedFormula=بخش محاسبه شده -ComputedFormulaDesc=شما در این‌جا می‌توانید فرمولی را با استفاده از مشخصات دیگر یک شیء یا یک کدنوشتۀ PHP وارد نمائید تا یک مقدار پویای محاسبه شده دریافت کنید. شما همچنین می‌توانید هر فرمول سازگار با PHP را به همراه عمل‌گر شرطی "?" وارد نمائید که با یک شیء سراسری دنبال می‌شود: $db, $conf, $langs, $mysoc, $user, $object.
    هشدار: تنها برخی از مشخصه‌های $object در دسترس هستند. در صورتی که نیاز به مشخصه‌ای دارید که بارگذاری نشده، همانند مثال دوم خودتان باید آن شیء را واکشی نمائید.
    استفاده از یک بخش محاسبه‌شده به آن معناست که شما قادر نخواهید باد که از رابط خود مقداری وارد نمائید. همچنین، در صورتی که یک خطای نوشتاری وجود داشته باشد، فرمول هیچ چیز ارائه نخواهد داد.

    مثال فرمول:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    مثال بارگذاری مجدد شیئ
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    مثال دیگر فرمول برای اازام به بارگذاری شیء و والد آن:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=بخش محاسبه‌شدۀ فروشگاه ComputedpersistentDesc=بخش‌های محاسبه‌شدۀ اضافی در پایگاه داده ذخیره خواهند شد، به‌هرحال مقدار تنها در زمانی دوباره محاسبه خواهد شد که شیء این بخش تغییر کند. در صورتی که بخش محاسبه‌شده به سایر اشیاء یا داده‌های سراسری وابسته باشد، این مقدار ممکن است خطا باشد!! ExtrafieldParamHelpPassword=خالی رها کردن این بخش به معنای این است که مقدار بدون حفاظت ذخیره خواهد شد (بخش مربوطه باید با یک ستاره روی صفحه پنهان باشد).
    'auto' را برای استفاده از قواعد حفاظت برای ذخیرۀ گذرواژه در بانک‌داده ذخیره کنید (مقدار خوانده شده کدبندی شده است و امکان خواندن مقدار اصلی دیگر وجود نخواهد داشت) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=برای استفاده از مقدار پیش‌فرض چ DefaultLink=پیوند پیش‌فرض SetAsDefault=ثبت پیش‌فرض ValueOverwrittenByUserSetup=هشدار! این مقدار ممکناست با تغییر تنظیمات برپاسازی کاربر بازنویسی شود (هر کاربر می‌تواند نشانی مخصوص به خود را برای clicktodial تولید کند) -ExternalModule=واحد خارجی - نصب شده در پوشه %s +ExternalModule=External module +InstalledInto=Installed into directory %s BarcodeInitForthird-parties=ایجاد دستجمعی بارکد برای اشخاص‌سوم BarcodeInitForProductsOrServices=ایجاد یا بازسازی بارکد برای محصولات یا خدمات CurrentlyNWithoutBarCode=در حال حاضر شما %s ردیف در %s %s دارید که برای آن‌ها بارکد تعریف نشده. @@ -947,7 +951,7 @@ DictionaryCanton=ایالت‌ها/استان‌ها DictionaryRegion=مناطق DictionaryCountry=کشورها DictionaryCurrency=واحد پول -DictionaryCivility=عنوان اجتماعی +DictionaryCivility=Honorific titles DictionaryActions=انواع برگزاری جلسات DictionarySocialContributions=انواع مالیات‌های اجتماعی یا مالیات‌های مرتبط با سیاست‌های مالی DictionaryVAT=نرخ مالیات‌بر‌ارزش‌افزوده یا مالیات‌بر‌فروش @@ -988,6 +992,7 @@ VATIsNotUsedDesc=مالیات بر فروش مطروحه به طور پیش‌ VATIsUsedExampleFR=در فرانسه، به این معناست که شرکت‌ها و موسسات یک سامانۀ سیاست‌مالی حقیقی دارند (حقیقی ساده یا حقیقی عادی). سامانه‌ای که در آن مالیات بر ارزش افزوده تعریف می‌شود. VATIsNotUsedExampleFR=در فرانسه، این بدان معناست که مؤسساتی که برای آن‌ها مالیات بر فروش تعریف نشده یا شرکت‌ها، سازمان‌ها یا مشاغل آزادی که سامانۀ سیاست مالی ریزسازمانی برگزیده‌اند (مالیات بر فروش طی فرانچایز-فرداد-حق‌امتیاز) و بدون تعریف مالیات برفروش مبلغ مالیات فروش فرانچایز را پرداخت کرده‌اند. این انتخاب به صورت مراجع "مالیات بر فروش اختصاص داده نمی‌شود - art-293B of CGI" در صورت‌حساب نمایش داده خواهد شد. ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=نرخ LocalTax1IsNotUsed=آیا مالیات دوم استفاده نشود LocalTax1IsUsedDesc=استفاده از نوع دوم مالیات (غیر از نوع اول) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=نرخ پیش‌فرض IRPF در هنگام ساخت مش LocalTax2IsNotUsedDescES=به طور پیش‌فرض IRPF  مطروحه برابر با 0 است. پایان قاعده. LocalTax2IsUsedExampleES=در اسپانیا، خوداشتغالان، و متخصصین مستقل که ارائه دهندۀ خدمات هستند و شرکت‌هائی که سامانۀ مالیاتی modules را برگزیده‌اند. LocalTax2IsNotUsedExampleES=در اسپانیا مشاغلی هستند که درسامانۀ مالیاتی modules موضوعیت ندارند. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=گزارش مالیات‌های محلی CalcLocaltax1=فروش‌ها - خرید‌ها CalcLocaltax1Desc=گزارش مالیات‌های محلی با محاسبۀ تفاوت مالیات‌برفروش محلی و مالیات‌‌برخرید محلی به دست می‌آید @@ -1018,6 +1026,7 @@ CalcLocaltax2=خریدها CalcLocaltax2Desc=گزارش مالیات‌های محلی جمع مالیات‌برفروش‌های محلی است CalcLocaltax3=فروش‌ها CalcLocaltax3Desc=گزارش مالیات محلی جمع مالیات‌برفروش محلی است +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=این برچسب در حالتی که هیچ ترجمه‌ای برای کد یافت نشود استفاده خواهد شد LabelOnDocuments=برچسب روی مستندات LabelOrTranslationKey=برچسب یا کلید ترجمه @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=گزارش‌هزینه‌های منتظر ت Delays_MAIN_DELAY_HOLIDAYS=Leave requests to approve SetupDescription1=پیش از شروع استفاده از Dolibarr ابتدا باید مقادیر مختلفی را تعریف کنید و واحد‌های مختلف فعال/پیکربندی شوند SetupDescription2=دو واحد بعدی الزامی هستند (دو ورودی اول در فهرست برپاسازی): -SetupDescription3=%s->%s
    مؤلفه‌های بنیادین مورد استفاده برای تعیین‌ رفتار پیش‌فرض برنامۀ شما (مثلا برای قابلیت‌های مربوط به کشور). -SetupDescription4=%s->%s
    این نرم‌افزار مجموعه‌ای از برنامه‌ها/واحدهای متنوع است که همگی کم و بیش از یکدیگر مستقل هستند. واحدهای مربوط به نیاز شما باید فعال و پیکربندی شوند. با فعال کردن این واحدها گزینه‌ها/عناوین مربوطه به فهرست‌ها اضافه خواهد شد. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. SetupDescription5=سایر عناوین فهرست برپاسازی برای مدیریت مقادیر اختیاری. LogEvents=رویدادهای بازرسی امنیتی Audit=بازرسی @@ -1128,7 +1137,7 @@ LogEventDesc=فعال کردن گزارش‌گیری برای روی‌داده AreaForAdminOnly=مقادیر برپاسازی تنها توسط کاربران مدیر قابل تنظیم است. SystemInfoDesc=اطلاعات سامانه، اطلاعاتی فنی است که در حالت فقط خواندنی است و تنها برای مدیران قابل نمایش است. SystemAreaForAdminOnly=این ناحیه تنها برای کاربران مدیر در دسترس است. مجوزهای کاربران Dolibarr  این محدودیت‌ها را تغییر نمی‌دهد. -CompanyFundationDesc=Edit the information of the company/entity. Click on "%s" button at the bottom of the page. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. AccountantDesc=در صورتی‌که شما یک حساب‌دار/دفتردار بیرونی دارید، می‌توانید اطلاعات وی را این‌جا ویرایش نمائید AccountantFileNumber=کد حساب‌دار DisplayDesc=مقادیری که بر شکل و رفتار Dolibarr اثرگذارند از این‌جا قابل تغییرند. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=قواعد تولید و اعتبارسنجی گذرو DisableForgetPasswordLinkOnLogonPage=در صفحۀ ورود پیوند "فراموشی گذرواژه" نمایش داده نشود UsersSetup=برپاسازی واحد کاربران UserMailRequired=برای ایجاد یک کاربر جدید یک رایانامه لازم است +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### HRMSetup=برپاسازی واحد مدیریت منابع انسانی ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=شکل مستندهای صورت‌حساب BillsPDFModulesAccordindToInvoiceType=شکل مستندهای صورت‌حساب با توجه به نوع صورت‌حساب PaymentsPDFModules=شکل مستندات پرداخت ForceInvoiceDate=الزام تاریخ صورت‌حساب به تاریخ تائیداعتبار -SuggestedPaymentModesIfNotDefinedInInvoice=حالت‌های پیشنهادی و پیش‌فرض پرداخت در صورت‌حساب در صورتی که تعیین نشده باشد +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice SuggestPaymentByRIBOnAccount=پیشنهاد پرداخت در صرف‌نظر کردن از حساب SuggestPaymentByChequeToAddress=پیشنهاد پرداخت با چک به FreeLegalTextOnInvoices=متن دل‌خواه بر روی صورت‌حساب‌ها @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=برپاسازی پرداخت‌های فروشندگان PropalSetup=راه اندازی ماژول طرح های تجاری ProposalsNumberingModules=مدل شماره طرح تجاری ProposalsPDFModules=شکل‌های مستندات پیشنهاد‌های تجاری -SuggestedPaymentModesIfNotDefinedInProposal=روش پرداخت پشنهادی پیش‌فرض در پیشنهاد در صورتی که در صفحۀ ایجاد آن تعریف نشده باشد +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal FreeLegalTextOnProposal=متن دل‌خواه بر روی پیشنهادات تجاری WatermarkOnDraftProposal=نقش پس‌زمینه بر روی پیشنهادات تجاری پیش‌نویس (هیچ در صورت خالی بودن) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=درخواست مقصد حساب‌بانکی پیشنهاد @@ -1322,6 +1334,7 @@ WAREHOUSE_ASK_WAREHOUSE_DURING_ORDER=پرسش انبار منبع در خصوص ##### Suppliers Orders ##### BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_ORDER=پرسش حساب بانکی مقصد در مورد سفارش خرید ##### Orders ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=برپاسازی مدیریت سفارشات فروش OrdersNumberingModules=روش‌های شماره‌گذاری سفارشات OrdersModelModule=شکل‌های مستندات سفارش @@ -1720,7 +1733,7 @@ MultiCompanySetup=برپاسازی واحد چندشرکتی ##### Suppliers ##### SuppliersSetup=برپاسازی واحد فروشندگان SuppliersCommandModel=Complete template of Purchase Order -SuppliersCommandModelMuscadet=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) SuppliersInvoiceModel=Complete template of Vendor Invoice SuppliersInvoiceNumberingModel=روش‌های شماره‌گذاری صورت‌حساب فروشندگان IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval @@ -1792,6 +1805,7 @@ TopMenuDisableImages=پنهان کردن تصاویر فهرست بالا LeftMenuBackgroundColor=رنگ پس‌زمینۀ فهرست سمت چپ BackgroundTableTitleColor=رنگ پس‌زمیۀ سطر عنوان جدول BackgroundTableTitleTextColor=رنگ نوشتۀ سطر عنوان جدول +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=رنگ پس‌زمینۀ سطور فرد جدول BackgroundTableLineEvenColor=رنگ پس‌زمینۀ سطور زوج جدول MinimumNoticePeriod=حداقل بازۀ خبردهی (درخواست مرخصی شما باید حداقل با این فاصلۀ زمانی انجام شود) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Dolibarr Reference not found in Message ID FormatZip=کدپستی MainMenuCode=کد ورودی فهرست (فهرست اصلی) ECMAutoTree=نمایش ساختاردرختی خودکار ECM -OperationParamDesc=مقادیر تعریف شده برای کنش-action یا چگونگی استخراج مقادیر را این‌جا تعریف کنید. برای مثال:
    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]*)

    از یک ویرگول‌نقطۀ انگلیسی ; به‌عنوان جداکنندۀ یا استخراجی یا تنظیم چند گروه مشخصات استفاده کنید. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=ساعات کار OpeningHoursDesc=ساعات کاری معمول شرکت خود را در این بخش وارد نمائید ResourceSetup=پیکربندی واحد منابع @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=هشدار! مقادیر بزرگ خر ModuleActivated=واحد %s فعال شده و باعث کاهش سرعت رابط کاربری می‌شود EXPORTS_SHARE_MODELS=اشکال صادارات با همگان به اشتراک گذاشته شدند ExportSetup=برپاسازی واحد صادرات +ImportSetup=Setup of module Import InstanceUniqueID=شناسۀ منحصر به‌فرد نمونه SmallerThan=کوچک‌تر از LargerThan=بزرگتر از @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled EmailTemplate=Template for email EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/fa_IR/bills.lang b/htdocs/langs/fa_IR/bills.lang index 32d7c870906..873505c2680 100644 --- a/htdocs/langs/fa_IR/bills.lang +++ b/htdocs/langs/fa_IR/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=صورت‌حاسب‌های فروشنده SupplierBill=صورت‌حساب فروشنده SupplierBills=صور‌ت‌حساب تامین‌کنندگان Payment=پرداخت -PaymentBack=برگشت پرداخت -CustomerInvoicePaymentBack=برگشت پرداخت +PaymentBack=بازپس‌گیری +CustomerInvoicePaymentBack=بازپس‌گیری Payments=پرداخت‌ها PaymentsBack=Refunds paymentInInvoiceCurrency=به واحد‌پولی صورت‌حساب PaidBack=پرداخت برگردانده شد DeletePayment=حذف پرداخت ConfirmDeletePayment=آیا مطمئنید که می‌خواهید این پرداخت را حذف کنید؟ -ConfirmConvertToReduc=آیا می‌خواهید این %s را به یک تخفیفت مطلق تبدیل کنید؟ +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? ConfirmConvertToReduc2=این مبلغ در میان همۀ تخفیف‌ها ذخیره خواهد شد و می‌تواند به‌عنوان یک صورت‌حساب فعلی یا آینده برای این مشتری مورد استفاده قرار گیرد. -ConfirmConvertToReducSupplier=آیا می‌خواهید این %s را به یک تخفیفت مطلق تبدیل کنید؟ +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? ConfirmConvertToReducSupplier2=این مبلغ در میان همۀ تخفیف‌ها ذخیره خواهد شد و می‌تواند به‌عنوان یک صورت‌حساب فعلی یا آینده برای این فروشنده مورد استفاده قرار گیرد. SupplierPayments=پرداخت‌های فروشندگان ReceivedPayments=پول‌های دریافتی @@ -209,17 +209,13 @@ NumberOfBillsByMonth=تعداد صورت‌حساب‌ها در ماه AmountOfBills=مبلغ صورت‌حساب‌ها AmountOfBillsHT=مبلغ صورت‌حساب‌ها (خالص پس از کسر مالیات) AmountOfBillsByMonthHT=مبلغ ماهیانۀ صورت‌حساب‌ها (خالص پس از کسر مالیات) -ShowSocialContribution=نمایش مالیات اجتماعی/مالی -ShowBill=نمایش صورت‌حساب -ShowInvoice=نمایش صورت‌حساب -ShowInvoiceReplace=نمایش صورت‌حساب جایگزین -ShowInvoiceAvoir=نمایش یادداشت اعتباری -ShowInvoiceDeposit=نمایش صورت‌حساب پیش‌پرداخت -ShowInvoiceSituation=نمایش صورت‌حساب وضعیت UseSituationInvoices=Allow situation invoice UseSituationInvoicesCreditNote=Allow situation invoice credit note Retainedwarranty=Retained warranty +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=To pay on %s toPayOn=to pay on %s RetainedWarranty=Retained Warranty @@ -230,7 +226,6 @@ 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=قبلا پرداخت شده است (بدون یادداشت‌های اعتباری و پیش‌پرداخت) @@ -390,6 +385,7 @@ GeneratedFromTemplate=تولید شده از قالب صورت‌حسابی %s WarningInvoiceDateInFuture=هشدار! تاریخ صورت‌حساب بیشتر از تاریخ کنونی است WarningInvoiceDateTooFarInFuture=هشدار! تاریخ صورت‌حساب از تاریخ امروز بسیار دور است ViewAvailableGlobalDiscounts=نمایش تخفیف‌های موجود +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=وضعیت PaymentConditionShortRECEP=در هنگام دریافت @@ -509,7 +505,7 @@ ToMakePayment=پرداخت ToMakePaymentBack=پس‌دادن‌پرداخت ListOfYourUnpaidInvoices=فهرست صورت‌حساب‌های پرداخت نشده NoteListOfYourUnpaidInvoices=نکته: این فهرست تنها دربردارندۀ صورت‌حساب‌های شخص‌سوم‌هائی است که شما آن‌ها را به‌عنوان نمایندۀ فروش پیوند کرده‌اید. -RevenueStamp=تمبر درآمد +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=این گزینه تنها وقتی فعال است که شما صورت‌حساب را از زبانۀ "مشتری" یک شخص سوم می‌سازید YouMustCreateInvoiceFromSupplierThird=این گزینه تنها وقتی فعال است که شما صورت‌حساب را از زبانۀ "فروشنده" یک شخص سوم می‌سازید YouMustCreateStandardInvoiceFirstDesc=شما باید ابتدا یک صورت‌حساب استاندارد ساخته و سپس آن را تبدیل به "قالب" کنید تا یک صورت‌حساب قالبی ساخته باشید @@ -575,3 +571,4 @@ AutoFillDateTo=تنظیم تاریخ پایان برای سطر خدمات با AutoFillDateToShort=تنظیم تاریخ پایان MaxNumberOfGenerationReached=حداکثر تعداد تولید به‌سررسیده BILL_DELETEInDolibarr=صورت‌حساب حذف شد +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/fa_IR/blockedlog.lang b/htdocs/langs/fa_IR/blockedlog.lang index 231855e54eb..116a6acbb42 100644 --- a/htdocs/langs/fa_IR/blockedlog.lang +++ b/htdocs/langs/fa_IR/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=گزارش‌کارهای غیرقابل‌تغییر ShowAllFingerPrintsMightBeTooLong=نمایش همۀ گزارش‌کار‌های بایگانی شده (ممکن است طولانی باشد) ShowAllFingerPrintsErrorsMightBeTooLong=نمایش همۀ گزارش‌کارهای نامعتبر بایگانی (ممکن است طولانی باشد) DownloadBlockChain=دریافت اثرانگشت‌ها -KoCheckFingerprintValidity=ورودی گزارش‌کاری بایگانی شده معتبر نیست. این به آن معناست که کس (یک هکر؟) بخشی از داده‌ها را پس از ذخیره دست‌کاری کرده است و یا ردیف‌های بایگانی‌های قدیمی را حذف کرده است. (بررسی کنید سطر با # پیشین وجود داشته باشد). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=ردیف گزارش‌کار بایگانی شده معتبر است. داده‌های این سطر ویرایش نشده و ورودی به‌دنبال ورودی قبل است. OkCheckFingerprintValidityButChainIsKo=گزارش‌کار بایگانی شده در قیاس با قبلی معتبر است اما زنجیره قبلا خراب شده است. AddedByAuthority=ذخیره شده برای مقام دوردست diff --git a/htdocs/langs/fa_IR/cashdesk.lang b/htdocs/langs/fa_IR/cashdesk.lang index ff05973a452..c9b346240f6 100644 --- a/htdocs/langs/fa_IR/cashdesk.lang +++ b/htdocs/langs/fa_IR/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=اضافه کردن این مقاله RestartSelling=بازگشت در فروش SellFinished=فروش تکمیل شد PrintTicket=چاپ بلیط +SendTicket=Send ticket NoProductFound=مقاله ای یافت نشد. ProductFound=محصول یافته شده NoArticle=هیچ مقاله ای یافت نشد @@ -48,6 +49,7 @@ Footer=پاورقی AmountAtEndOfPeriod=مبلغ در انتهای دوره (روز، ماه یا سال) TheoricalAmount=مبلغ نظری RealAmount=مقدار واقعی +CashFence=Cash fence CashFenceDone=حصار نقدی برای دوره تعیین شده NbOfInvoices=Nb و از فاکتورها Paymentnumpad=نوع بخش‌کناری @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS نیازمند کار با دسته‌بندی م OrderNotes=مرتب کردن یادداشت‌ها CashDeskBankAccountFor=حساب پیش‌فرض برای ذخیرۀ پرداخت‌ها NoPaimementModesDefined=در پیکربندی TakePOS هیچ حالت پرداختی تعریف نشده است -TicketVatGrouped=در قبض م.ب.ا.ا توسط نرخ گروه‌بندی شو -AutoPrintTickets=چاپ خودکار قبوض +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=فعال‌کردن موارد مربوط به کافه و رستوران ConfirmDeletionOfThisPOSSale=آیا مطمئن هستید می‌خواهید این فروش را حذف کنید؟ ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? @@ -87,7 +90,19 @@ HeadBar=Head Bar SortProductField=Field for sorting products Browser=مرورگر BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/fa_IR/companies.lang b/htdocs/langs/fa_IR/companies.lang index 5b6ec1024b6..46ef83419ac 100644 --- a/htdocs/langs/fa_IR/companies.lang +++ b/htdocs/langs/fa_IR/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted= شرکت "%s" از پایگاه داده حذف شد. ListOfContacts=فهرست طرف‌های‌تماس/نشانی‌ها ListOfContactsAddresses=فهرست طرف‌های‌تماس/نشانی‌ها ListOfThirdParties=فهرست شخص‌سوم‌ها -ShowCompany=نمایش شخص‌سوم ShowContact=نمایش طرف‌تماس ContactsAllShort=همه (بدون صافی) ContactType=نوع طرف‌تماس @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=نام نمایندۀ فروش SaleRepresentativeLastname=نام خانوادگی نمایندۀ فروش ErrorThirdpartiesMerge=در هنگام حذف شخص‌سوم‌ها یک اشکال پیش آمد. لطفا گزارش‌کار را ببینید. تغییرات انجام نشد. NewCustomerSupplierCodeProposed=کد فروشنده یا کد مشتری قبلا استفاده شده است، یک کد جدید پیشنهاد می‌شود +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=نوع پرداخت - مشتری PaymentTermsCustomer=شرایط پرداخت - مشتری diff --git a/htdocs/langs/fa_IR/compta.lang b/htdocs/langs/fa_IR/compta.lang index ff0da8dc752..530a5514a9f 100644 --- a/htdocs/langs/fa_IR/compta.lang +++ b/htdocs/langs/fa_IR/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=برای محاسبۀ پرداخت‌های حقیق SeeReportInDueDebtMode=برای محاسبۀ صورت‌حساب‌های ثبت شده که حتی هنوز در دفترکل حساب نشده‌اند به %sتحلیل صورت‌حساب‌ها %s نگاه کنید. SeeReportInBookkeepingMode=برای محاسبه‌ای بر روی جدول حساب‌داری دفترکل به %sگزارش حساب‌داری%s مراجعه کنید. RulesAmountWithTaxIncluded=- تمام مالیات‌ها در مقادیر نمایش داده شده، گنجانده شده‌اند -RulesResultDue=- این شامل همۀ صورت‌حساب‌های پرداخت‌نشده، هزینه‌ها، مالیات بر ارزش افزوده، کمک‌های مالی پرداخت شده و نشده است. همچنین شامل حقوق‌های پرداخت شده می‌باشد.
    - بسته به تاریخ تائید اعتبار در خصوص صورت‌حساب‌ها و مالیات بر ارزش افزوده و بر حسب تاریخ سررسید هزینه‌ها می‌باشد. برای حقوق‌هائی که در واحد حقوق‌ها تعریف شده است، از مقدار تاریخ پرداخت استفاده می‌شود. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- این شامل همۀ پرداخت‌های واقعی صورت‌حساب‌ها، هزینه‌ها، مالیات بر ارزش افزوده و حقوق‌ها است.
    - بر حسب تاریخ پرداخت صورت‌حساب‌ها، هزینه‌ها، مالیات بر ارزش افزوده و حقوق‌ها می‌باشد. تاریخ کمک‌مالی برای کمک‌های مالی -RulesCADue=- شامل صورت‌حساب‌های به موعد رسیدۀ مشتری، چه پرداخت شده باشند یا نه می‌باشد.
    این بر حسب تاریخ تائید اعتبار این صورت‌حساب‌ها است.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- شامل همۀ پرداخت‌های دریافت‌شدۀ مؤثر صورت‌حساب‌های مشتریان است.
    -این بسته به تاریخ پرداخت این صورت‌حساب‌هاست
    RulesCATotalSaleJournal=شامل همۀ سطور بستانکار دفترفروش‌روزانه است RulesAmountOnInOutBookkeepingRecord=شامل همۀ ردیف‌های دفترکل دارای حساب‌حساب‌داری است که در گروه‌های "هزینه" یا "درآمد" باشند @@ -255,3 +255,10 @@ TurnoverbyVatrate=گردش‌مالی صورت‌حساب‌شده بر حسب TurnoverCollectedbyVatrate=گردش‌مالی دریافت‌شده بر حسب نرخ مالیات بر فروش PurchasebyVatrate=خریدها بر اساس نرخ مالیات بر فروش LabelToShow=برچسب کوتاه +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/fa_IR/donations.lang b/htdocs/langs/fa_IR/donations.lang index 9f15e4ae3b2..3d2c3bf387c 100644 --- a/htdocs/langs/fa_IR/donations.lang +++ b/htdocs/langs/fa_IR/donations.lang @@ -7,7 +7,6 @@ AddDonation=ایجاد یک عنوان کمک‌مالی NewDonation=کمک‌مالی جدید DeleteADonation=حذف یک کمک‌مالی ConfirmDeleteADonation=آیا مطمئن هستید می‌خواهید این کمک مالی را حذف کنید؟ -ShowDonation=نمایش کمک‌مالی PublicDonation=کمک‌مالی علنی DonationsArea=بخش کمک‌های مالی DonationStatusPromiseNotValidated=پیش‌نویس وعده @@ -17,6 +16,7 @@ DonationStatusPromiseNotValidatedShort=پیش‌نویس DonationStatusPromiseValidatedShort=معتبر شد DonationStatusPaidShort=دریافت شد DonationTitle=رسید کمک‌مالی +DonationDate=Donation date DonationDatePayment=تاریخ پرداخت ValidPromess=تائید وعده DonationReceipt=رسید کمک‌مالی diff --git a/htdocs/langs/fa_IR/errors.lang b/htdocs/langs/fa_IR/errors.lang index 8fba2849bbc..15b5c27c05d 100644 --- a/htdocs/langs/fa_IR/errors.lang +++ b/htdocs/langs/fa_IR/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=فایل به طور کامل توسط سرور دریافت ن ErrorNoTmpDir=پوشۀ موقت %s وجود ندارد. ErrorUploadBlockedByAddon=امکان ارسال توسط یک افزونۀ PHP/Apache مسدود شده است ErrorFileSizeTooLarge=حجم فایل بسیار بزرگ است. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=برای این نوع عددصحیح اندازه بسیار بلند است (حداکثر %s رقم) ErrorSizeTooLongForVarcharType=برای این نوع رشتۀ حروقی اندازه بسیار بزرگ است (حداکثر %s نویسه) ErrorNoValueForSelectType=لطفا مقدار مربوط به فهرست انتخاب را وارد کنید @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # 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 قابل استفاده نیست. ممکن است برای یک رابط/واحد بیرونی قابل استفاده باشد، اما اگر شما نخواهید هیچ نام کاربری ورود و گذرواژه‌ای برای یک عضو استفاده کنید، شما می‌توانید گزینۀ "ایجاد یک نام‌ورد برای هر عضو" را از برپاسازی واحد اعضاء غیرفعال کنید. در صورتی که نیاز دارید که نام‌ورود داشته باشید اما گذرواژه نداشته باشید، می‌توانید این بخش را خالی گذاشته تا از این هشدار بر حذر باشید. نکته: همچنین نشانی رایانامه می‌تواند در صورتی که عضو به یک‌کاربر متصل باشد، می‌‌تواند مورد استفاده قرار گیرد diff --git a/htdocs/langs/fa_IR/install.lang b/htdocs/langs/fa_IR/install.lang index 9444eb76c8f..40f4347659e 100644 --- a/htdocs/langs/fa_IR/install.lang +++ b/htdocs/langs/fa_IR/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=این PHP از Curl پشتیبان می‌کند. PHPSupportCalendar=This PHP supports calendars extensions. PHPSupportUTF8=این PHP از توابع UTF8 پشتیبانی می‌کند. PHPSupportIntl=این PHP از توابع Intl پشتیبانی می‌کند +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=This PHP supports %s functions. PHPMemoryOK=حداکثر حافظۀ اختصاص داده شده به نشست به %s تنظیم شده است. این باید کافی باشد. PHPMemoryTooLow=حداکثر حافظۀ مورد استفاده در یک نشست در PHP شما در حد %s بایت تنظیم شده است. این میزان بسیار کمی است. فایل php.ini را ویرایش نموده و مقدار memory_limit را حداقل برابر %s بایت تنظیم کنید @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=نسخۀ PHP نصب شدۀ شما از Curl پشتی ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. ErrorPHPDoesNotSupportUTF8=نسخۀ PHP نصب شدۀ شما از توابع UTF8 پشتیبانی نمی‌کند. Dolibarr نمی‌تواند به درستی کار کند. قبل از نصب Dolibarr این مشکل را حل کنید. ErrorPHPDoesNotSupportIntl=نسخۀ نصب شدۀ PHP شما از توابع Intl پشتیبانی نمی‌کند. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. ErrorDirDoesNotExists=پوشۀ %s وجود ندارد. ErrorGoBackAndCorrectParameters=به عقب برگردید و مقادیر را بررسی/اصلاح کنید. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=برنامه تلاش کرده است که خود YouTryInstallDisabledByFileLock=برنامه تلاش کرده است خود را ارتقا دهد، اما صفحات نصب/ارتقا به دلایل امنیتی غیر فعال شده است ( چون فایل قفل install.lock در پوشۀ documents دلیبار وجود دارد).
    ClickHereToGoToApp=برای مراجعه به برنامه این‌جا کلیک کنید ClickOnLinkOrRemoveManualy=روی پیوند مقابل کلیک کنید. اگر همیشه شما همین صفحه را می‌بینید شما باید فایل install.lock را از پوشۀ document حذف کرده یا تغییر نام دهید. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/fa_IR/interventions.lang b/htdocs/langs/fa_IR/interventions.lang index 78e3fc1feca..546e61e10b5 100644 --- a/htdocs/langs/fa_IR/interventions.lang +++ b/htdocs/langs/fa_IR/interventions.lang @@ -41,9 +41,7 @@ InterventionsArea=بخش پادرمیانی DraftFichinter=پادرمیانی‌های پیش‌نویس LastModifiedInterventions=آخرین %s پادرمیانی ویرایش شده FichinterToProcess=پادرمیانی‌های قابل پردازش -##### Types de contacts ##### TypeContact_fichinter_external_CUSTOMER=طرف‌تماس پیگیر مشتری -# Modele numérotation PrintProductsOnFichinter=همچنین سطور نوع "محصول" (نه فقط خدمات) روی کارت پادرمیانی چاپ شود PrintProductsOnFichinterDetails=پادرمیانی‌های تولید شده از سفارش‌ها UseServicesDurationOnFichinter=استفاده از طول‌مدت خدمات برای پادرمیانی‌های تولید شده از سفارش‌ها @@ -53,14 +51,16 @@ InterventionStatistics=آمار پادرمیانی‌ها NbOfinterventions=تعداد کارت‌های پادرمیانی NumberOfInterventionsByMonth=تعداد کارت‌های پادرمیانی بر حسب ما (تاریخ تائید اعتبار) AmountOfInteventionNotIncludedByDefault=به طور پیش‌فرض مبلغ پادرمیانی در سود محاسبه نمی‌شود (در اکثر موارد، برگه‌های زمان برای محاسبۀ زمان صرف شده استفاده می‌شوند). برای شامل کردن سود آن‌ها گزینۀ PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT را در خانه-برپاسازی-سایر به 1 تغییر دهید. -##### Exports ##### InterId=شناسۀ پادرمیانی InterRef=ش.ارجاع پادرمیانی InterDateCreation=تاریخ ساخت پادرمیانی InterDuration=طول‌مدت پادرمیانی InterStatus=وضعیت پادرمیانی InterNote=یادداشت پادرمیانی +InterLine=Line of intervention InterLineId=شناسۀ سطر پادرمیانی InterLineDate=تاریخ سطر پادرمیانی InterLineDuration=طول‌مدت سطر پادرمیانی InterLineDesc=توضیحات سطر پادرمیانی +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/fa_IR/link.lang b/htdocs/langs/fa_IR/link.lang index 130af3f943a..012040c2baa 100644 --- a/htdocs/langs/fa_IR/link.lang +++ b/htdocs/langs/fa_IR/link.lang @@ -8,3 +8,4 @@ LinkRemoved=پیوند %s برداشته شد ErrorFailedToDeleteLink= امکان حذف پیوند '%s' نبود ErrorFailedToUpdateLink= امکان روزآمدسازی پیوند '%s' نبود URLToLink=نشانی برای پیوند کردن +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/fa_IR/mails.lang b/htdocs/langs/fa_IR/mails.lang index 944ec850582..b25c03b7177 100644 --- a/htdocs/langs/fa_IR/mails.lang +++ b/htdocs/langs/fa_IR/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=No contact/address with a category found NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found OutGoingEmailSetup=Outgoing email setup InGoingEmailSetup=Incoming email setup -OutGoingEmailSetupForEmailing=Outgoing email setup (for mass emailing) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Default outgoing email setup Information=اطلاعات ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/fa_IR/main.lang b/htdocs/langs/fa_IR/main.lang index dfe1207edd1..cc1cc21575b 100644 --- a/htdocs/langs/fa_IR/main.lang +++ b/htdocs/langs/fa_IR/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Save and stay SaveAndNew=Save and new TestConnection=آزمایش اتصال ToClone=نسخه‌برداری +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=تاریخی که برای نسخه‌برداری مد نظر دارید: NoCloneOptionsSpecified=هیچ داده‌ای برای نسخه‌برداری پیدا نشد Of=از @@ -829,6 +830,8 @@ Gender=جنسیت Genderman=مرد Genderwoman=زن ViewList=نمای فهرستی +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=الزامی Hello=سلام GoodBye=خدانگهدار @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Select your graph options to build a graph Measures=Measures XAxis=X-Axis YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/fa_IR/modulebuilder.lang b/htdocs/langs/fa_IR/modulebuilder.lang index 00a8c0f9d32..135ac1ae9ec 100644 --- a/htdocs/langs/fa_IR/modulebuilder.lang +++ b/htdocs/langs/fa_IR/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=List of dictionaries entries ListOfPermissionsDefined=List of defined permissions SeeExamples=See examples here EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) -VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update). Using a negative value means field is not shown by default on list but can be selected for viewing). It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty DisplayOnPdf=Display on PDF IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) diff --git a/htdocs/langs/fa_IR/multicurrency.lang b/htdocs/langs/fa_IR/multicurrency.lang new file mode 100644 index 00000000000..0c144dac2ec --- /dev/null +++ b/htdocs/langs/fa_IR/multicurrency.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=چند واحدپولی +ErrorAddRateFail=خطا در نرخ اضافه شده +ErrorAddCurrencyFail=خطا در واحدپولی اضافه شده +ErrorDeleteCurrencyFail=خطا، حذف مقدور نیست +multicurrency_syncronize_error=خطای همگام‌سازی: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=از تاریخ سند برای پیدا کردن نرخ واحد‌پولی به جای استفاده از آخرین نرخ معلوم استفاده شود +multicurrency_useOriginTx=هنگامی که یک شیء از شیء دیگر ساخته شد، نرخ اصلی از شیء مبدأ حفظ شود (در غیر این‌صورت آخرین نرخ شناخته شده استفاده می‌شود) +CurrencyLayerAccount=رابط‌برنامه‌نویسی کاربردی CurrencyLayer +CurrencyLayerAccount_help_to_synchronize=برای استفاده از این قابلیت باید یک حساب‌کاربری روی سایت %s بسازید.
    سپس کلید API خود را دریافت نمائید.
    در صورتی که از حساب رایگان استفاده می‌کنید شما نمی‌توانید واحدپولی مبدأ (یعنی دلار به شکل پیش‌فرض) را تغییر دهید.
    در صورتی که واحدپولی اصلی شما دلارآمریکا نیست، این برنامه به طور خودکار آن را محاسبه خواهد کرد.

    شما در ماه محدود به 1000 همگام سازی هستید. +multicurrency_appId=کلید API +multicurrency_appCurrencySource=واحدپولی مبدأ +multicurrency_alternateCurrencySource=واحدپولی جایگزین مبدأ +CurrenciesUsed=واحدهای پولی استفاده شده +CurrenciesUsed_help_to_add=واحدهای پولی مبدأ و نرخ مربوطه را که احتیاج دارید در پیشنهادها، سفارش‌ها و غیره استفاده شوند وارد کنید +rate=نرخ +MulticurrencyReceived=دریافت شد، نرخ اصلی +MulticurrencyRemainderToTake=مقدار باقی‌مانده، واحد پولی اصلی +MulticurrencyPaymentAmount=نرخ پرداختی، واحدپولی اصلی +AmountToOthercurrency=مبلغ به (در واحدپولی حساب دریافت کننده) +CurrencyRateSyncSucceed=Currency rate synchronization done successfuly +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Use the currency of the document for online payments diff --git a/htdocs/langs/fa_IR/other.lang b/htdocs/langs/fa_IR/other.lang index 975f18a065c..f374ef2619e 100644 --- a/htdocs/langs/fa_IR/other.lang +++ b/htdocs/langs/fa_IR/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Sales order validated Notify_ORDER_SENTBYMAIL=Sales order sent by mail Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=URL of page WEBSITE_TITLE=عنوان WEBSITE_DESCRIPTION=توصیف WEBSITE_IMAGE=Image -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Keywords LinesToImport=Lines to import diff --git a/htdocs/langs/fa_IR/products.lang b/htdocs/langs/fa_IR/products.lang index 35c11214236..e7d131c8f2a 100644 --- a/htdocs/langs/fa_IR/products.lang +++ b/htdocs/langs/fa_IR/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=این ابزار نرخ مالیات بر ارزش ا MassBarcodeInit=تعریف دستجمعی بارکد MassBarcodeInitDesc=این صفحه می‌تواند برای تعریف بارکد اشیائی که برای آن‌ها بارکد تعریف نشده استفاده شود. قبل از استفاده، مطمئن شوید واحد بارکد به خوبی نصب و برپاسازی شده است. ProductAccountancyBuyCode=کد حساب‌داری (خرید) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=کد حساب‌داری (فروش) ProductAccountancySellIntraCode=کد حساب‌داری (فروش داخل جامعه‌ای-اروپا) ProductAccountancySellExportCode=کد حساب‌داری (فروش صادرات) @@ -165,7 +167,7 @@ SuppliersPrices=قیمت‌های فروشنده SuppliersPricesOfProductsOrServices=قیمت‌های فروشنده (مربوط به محصولات و خدمات) CustomCode=گمرک / کالا / کدبندی هماهنگ کالا CountryOrigin=کشور مبدا -Nature=Nature of produt (material/finished) +Nature=Nature of product (material/finished) ShortLabel=برچسب کوتاه Unit=واحد p=واحد diff --git a/htdocs/langs/fa_IR/projects.lang b/htdocs/langs/fa_IR/projects.lang index 30cc3fbfbc8..d2886d5f9ae 100644 --- a/htdocs/langs/fa_IR/projects.lang +++ b/htdocs/langs/fa_IR/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=which I'm linked to project Time=زمان ListOfTasks=فهرست وظایف GoToListOfTimeConsumed=رجوع به فهرست زمان صرف شده -GoToListOfTasks=Show as list -GoToGanttView=show as Gantt GanttView=نمای گانت ListProposalsAssociatedProject=فهرست پیشنهادهای تجاری مرتبط با طرح ListOrdersAssociatedProject=فهرست سفارش‌های فروش مربوط به طرح @@ -188,7 +186,7 @@ PlannedWorkload=حجم‌کار برنامه‌ریزی‌شده PlannedWorkloadShort=حجم‌کار ProjectReferers=موارد مربوط ProjectMustBeValidatedFirst=ابتدا باید طرح تائیداعتبار شود -FirstAddRessourceToAllocateTime=نسبت دادن منابع کاربر برای اختصاص زمان +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=ورودی در روز InputPerWeek=ورودی در هفته InputPerMonth=Input per month @@ -240,6 +238,7 @@ LatestModifiedProjects=آخرین %s طرح تغییر یافته OtherFilteredTasks=سایر وظایف گُزیده شده NoAssignedTasks=هیچ وظیفه‌ای نسبت داده نشده ( طرح/وظیفه را از بالا به کاربر فعلی نسبت دهید تا زمان را روی آن وارد کنید) ThirdPartyRequiredToGenerateInvoice=یک طرف سوم باید روی طرح تعریف شود تا امکان صورت‌حساب درست کردن برای آن وجود داشته باشد +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=اجازۀ یادداشت نویسی کاربران روی وظایف AllowCommentOnProject=امکان توضیح نویسی بر روی طرح‌ها @@ -256,7 +255,7 @@ ServiceToUseOnLines=خدمات برای استفاده بر سطور InvoiceGeneratedFromTimeSpent=صورت‌حساب %s بر اساس زمان صرف شده روی طرح تولید شد ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. ProjectFollowOpportunity=Follow opportunity -ProjectFollowTasks=Follow tasks +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Usage: Opportunity UsageTasks=Usage: Tasks @@ -265,3 +264,4 @@ InvoiceToUse=Draft invoice to use NewInvoice=صورت‌حساب جدید OneLinePerTask=One line per task OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/fa_IR/receiptprinter.lang b/htdocs/langs/fa_IR/receiptprinter.lang index d022c499690..c7a819dbe8a 100644 --- a/htdocs/langs/fa_IR/receiptprinter.lang +++ b/htdocs/langs/fa_IR/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Dummy Printer CONNECTOR_NETWORK_PRINT=Network Printer CONNECTOR_FILE_PRINT=Local Printer CONNECTOR_WINDOWS_PRINT=Local Windows Printer +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Fake Printer for test, does nothing CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Default Profile PROFILE_SIMPLE=Simple Profile PROFILE_EPOSTEP=Epos Tep Profile @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Invoice month in letters DOL_VALUE_MONTH=Invoice month DOL_VALUE_DAY=Invoice day DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=ارجاع صورت‌حساب +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=شناسۀ داخل-جامعه‌ای م.ب.ا.ا. -اروپا +DOL_VALUE_MYSOC_CAPITAL=سرمایه +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/fa_IR/stripe.lang b/htdocs/langs/fa_IR/stripe.lang index 2c086aeb584..aa5ed9a19f9 100644 --- a/htdocs/langs/fa_IR/stripe.lang +++ b/htdocs/langs/fa_IR/stripe.lang @@ -32,6 +32,7 @@ VendorName=نام فروشنده CSSUrlForPaymentForm=آدرس شیوه نامه CSS برای فرم پرداخت NewStripePaymentReceived=New Stripe payment received NewStripePaymentFailed=New Stripe payment tried but failed +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Secret test key STRIPE_TEST_PUBLISHABLE_KEY=Publishable test key STRIPE_TEST_WEBHOOK_KEY=Webhook test key @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mo 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... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authenticatin rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/fa_IR/users.lang b/htdocs/langs/fa_IR/users.lang index 909a1ebbb82..012f6b0d90a 100644 --- a/htdocs/langs/fa_IR/users.lang +++ b/htdocs/langs/fa_IR/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=کاربران و مشخصات آنها DomainUser=کاربر دامنه %s Reactivate=دوباره فعال کردن CreateInternalUserDesc=این برگه به شما امکان ایجاد یک کاربر داخلی در شرکت/مؤسسۀ شما را می‌دهد. برای ساخت یک کاربر خارجی (مشتری، فروشنده، غیره) از گزینۀ "ساخت کاربر Dolibarr" از برگۀ تماس شخص سوم وی اقدام نمائید. -InternalExternalDesc=یک کاربر داخلی کاربری است که عضوی از شرکت/سازمان است.
    یک کاربر خارجی یک مشتری، فروشنده یا از این دست است.

    در هر دو حالت، مجوزها، دسترسی‌های موجود در Dolibarr را تعریف خواهد کرد. همچنین کاربر خارجی می‌تواند مدیریت فهرست متفاوتی از کاربر داخلی داشته باشد (به خانه - برپاسازی - نمایش ) مراجعه نمائید. +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=اجازه‌ها اعطا شده زیرا از یک گروه‌کاربری ارث‌گرفته شده است Inherited=ارث‌گرفته UserWillBeInternalUser=کاربری که ایجاد می‌شود یک کاربر داخلی خواهد بود (زیرا به یک شخص‌سوم معین پیوند نشده است) @@ -110,3 +110,8 @@ UserLogged=کاربر وارد شده DateEmployment=تاریخ شروع استخدام DateEmploymentEnd=تاریخ پایان استخدام CantDisableYourself=شما نمی‌توانید ردیف کاربری خود را غیرفعال کنید +ForceUserExpenseValidator=Force expense report validator +ForceUserHolidayValidator=Force leave request validator +ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/fa_IR/website.lang b/htdocs/langs/fa_IR/website.lang index 545ff8cf12e..85387497d64 100644 --- a/htdocs/langs/fa_IR/website.lang +++ b/htdocs/langs/fa_IR/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=View page in new tab SetAsHomePage=Set as Home page RealURL=Real URL ViewWebsiteInProduction=View web site using home URLs -SetHereVirtualHost=Use with Apache/NGinx/...
    If you can create, on your web server (Apache, Nginx, ...), a dedicated Virtual Host with PHP enabled and a Root directory on
    %s
    then set the name of the virtual host you have created in the properties of web site, so the preview can be done also using this dedicated web server access instead of the internal Dolibarr server. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS=Use with PHP embedded server
    On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running
    php -S 0.0.0.0:8080 -t %s YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org CheckVirtualHostPerms=Check also that virtual host has permission %s on files into
    %s @@ -56,7 +57,7 @@ NoPageYet=No pages yet YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template SyntaxHelp=Help on specific syntax tips YouCanEditHtmlSourceckeditor=You can edit HTML source code using the "Source" button in editor. -YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Clone page/container CloneSite=Clone site SiteAdded=Website added @@ -76,7 +77,7 @@ BlogPost=Blog post WebsiteAccount=Website account WebsiteAccounts=حساب‌های وبگاه AddWebsiteAccount=Create web site account -BackToListOfThirdParty=Back to list for Third Party +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Disable website first MyContainerTitle=My web site title AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Sorry, this website is currently off line. Please 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 -OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that edits of HTML source will be possible when page content has been initialized by grabbing it from an external page ("Online" editor will NOT be available) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Only edition of HTML source is possible when content was grabbed from an external site GrabImagesInto=Grab also images found into css and page. ImagesShouldBeSavedInto=Images should be saved into directory @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 ch MainLanguage=Main language OtherLanguages=Other languages UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/fa_IR/zapier.lang b/htdocs/langs/fa_IR/zapier.lang new file mode 100644 index 00000000000..6d6eda71313 --- /dev/null +++ b/htdocs/langs/fa_IR/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr module + +# +# Admin page +# +ZapierForDolibarrSetup = Setup of Zapier for Dolibarr diff --git a/htdocs/langs/fi_FI/accountancy.lang b/htdocs/langs/fi_FI/accountancy.lang index 733c0148cd3..354d1833531 100644 --- a/htdocs/langs/fi_FI/accountancy.lang +++ b/htdocs/langs/fi_FI/accountancy.lang @@ -121,6 +121,7 @@ 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 +TotalForAccount=Total for accounting account Ventilate=Sitoa @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Accounting account to register donations ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (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 products sold in EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported 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_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (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_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unkno ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error PaymentsNotLinkedToProduct=Payment not linked to any product / service +OpeningBalance=Opening balance ShowOpeningBalance=Show opening balance HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Group of account PcgtypeDesc=Group 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. +Reconcilable=Reconcilable + TotalVente=Total turnover before tax TotalMarge=Total sales margin @@ -307,11 +317,13 @@ 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Chart of accounts Id ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC OptionModeProductSellExport=Mode sales exported in other countries OptionModeProductBuy=Mode purchases +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries 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. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=Remove accounting code from lines that not exists into charts of account CleanHistory=Reset all bindings for selected year PredefinedGroups=Predefined groups @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Account removed from group SaleLocal=Local sale SaleExport=Export sale SaleEEC=Sale in EEC +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=Range of accounting account diff --git a/htdocs/langs/fi_FI/admin.lang b/htdocs/langs/fi_FI/admin.lang index 018aa0ec393..5bf229dcf33 100644 --- a/htdocs/langs/fi_FI/admin.lang +++ b/htdocs/langs/fi_FI/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Web-palvelimen käyttäjä / ryhmä NoSessionFound=PHP:n asetukset estävät aktiivisten istuntojen listaamisen. Istuntojen tallennushakemisto (%s) voi olla suojattu (Käyttöjärjestelmäoikeudet tai PHP: n open_basedir). DBStoringCharset=Tietokannan merkistö tietojen tallennukseen DBSortingCharset=Tietokannan merkistö tietojen lajitteluun +HostCharset=Host charset ClientCharset=Clientin merkistö ClientSortingCharset=Clientin ulkoasu WarningModuleNotActive=Moduuli %s on oltava käytössä @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Huom:Nykyiset PHP-asetukset rajoittavat tiedosto NoMaxSizeByPHPLimit=Huom: Rajaa ei ole asetettu PHP-asetuksissa MaxSizeForUploadedFiles=Lähetettävien tiedostojen enimmäiskoko (0 estää lähetykset) UseCaptchaCode=Käytä graafista koodia (CAPTCHA) kirjautumissivulla -AntiVirusCommand= Virustorjuntaohjelman polku -AntiVirusCommandExample= Esim. ClamWin: C:\\Program Files (x86)\\ClamWin\\bin\\clamscan.exe
    Esim. ClamAV: /usr/bin/clamscan +AntiVirusCommand=Virustorjuntaohjelman polku +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= Lisää parametreja komentorivillä -AntiVirusParamExample= Esimerkki ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=Kirjanpitomoduulin asetukset UserSetup=Käyttäjien hallinta-asetukset MultiCurrencySetup=Multi-valuutta asetukset @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Ominaisuus on poistettu käytöstä demossa FeatureAvailableOnlyOnStable=Ominaisuus käytettävissä vain virallisissa vakaissa versioissa BoxesDesc=Widgets are components showing some information that you can add to personalize some pages. You can choose between showing the widget or not by selecting target page and clicking 'Activate', or by clicking the trashcan to disable it. OnlyActiveElementsAreShown=Only elements from enabled modules are shown. -ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button (at end of module line) to enable/disable a module/application. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. ModulesMarketPlaceDesc=You can find more modules to download on external websites on the Internet... ModulesDeployDesc=If permissions on your file system allow it, you can use this tool to deploy an external module. The module will then be visible on the tab %s. ModulesMarketPlaces=Etsi ulkoisia sovelluksia/moduuleja @@ -212,6 +213,7 @@ CompatibleUpTo=Yhteensopiva version %s kanssa NotCompatible=Moduuli ei ole yhteensopiva Dolibarr - version %s kanssa. (Min %s - Max %s) CompatibleAfterUpdate=Moduuli vaatii Dolibarr - version %s päivittämisen. (Min %s - Max %s) SeeInMarkerPlace=See in Market place +SeeSetupOfModule=See setup of module %s Updated=Päivitetty Nouveauté=Novelty AchatTelechargement=Osta / Lataa @@ -221,6 +223,7 @@ DoliPartnersDesc=List of companies providing custom-developed modules or feature WebSiteDesc=External websites for more add-on (non-core) modules... DevelopYourModuleDesc=Some solutions to develop your own module... URL=Osoite +RelativeURL=Relative URL BoxesAvailable=Widgetit saatavilla BoxesActivated=Widget aktivoitu ActivateOn=Aktivoi @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Valintaruudut ExtrafieldCheckBoxFromList=Checkboxes from table ExtrafieldLink=Link to an object ComputedFormula=Computed field -ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Store computed field ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! ExtrafieldParamHelpPassword=Leaving this field blank means this value will be stored without encryption (field must be only hidden with star on screen).
    Set 'auto' to use the default encryption rule to save password into database (then value read will be the hash only, no way to retrieve original value) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Pidä tyhjänä käyttääksesi oletusarvoa DefaultLink=Oletuslinkki SetAsDefault=Aseta oletukseksi ValueOverwrittenByUserSetup=Warning, this value may be overwritten by user specific setup (each user can set his own clicktodial url) -ExternalModule=Ulkoinen moduuli - asennettu hakemistoon %s +ExternalModule=External module +InstalledInto=Installed into directory %s BarcodeInitForthird-parties=Mass barcode init for third-parties BarcodeInitForProductsOrServices=Mass barcode init or reset for products or services CurrentlyNWithoutBarCode=Currently, you have %s record on %s %s without barcode defined. @@ -947,7 +951,7 @@ DictionaryCanton=States/Provinces DictionaryRegion=Alueiden DictionaryCountry=Maat DictionaryCurrency=Valuutat -DictionaryCivility=Siviilisääty +DictionaryCivility=Honorific titles DictionaryActions=Types of agenda events DictionarySocialContributions=Types of social or fiscal taxes DictionaryVAT=ALV- ja Myyntiveroprosentit @@ -988,6 +992,7 @@ VATIsNotUsedDesc=By default the proposed Sales tax is 0 which can be used for ca VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=Kurssi LocalTax1IsNotUsed=Älä käytä toista veroa LocalTax1IsUsedDesc=Use a second type of tax (other than first one) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices LocalTax2IsNotUsedDescES=Oletuksena ehdotettu IRPF on 0. Loppu sääntö. LocalTax2IsUsedExampleES=Espanjassa, freelancer ja itsenäisten ammatinharjoittajien, jotka tarjoavat palveluja ja yrityksiä, jotka ovat valinneet verojärjestelmän moduuleja. LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=Raportit paikallisista veroista CalcLocaltax1=Myynnit - Ostot CalcLocaltax1Desc=Paikallisten verojen raportit on laskettu paikallisverojen myyntien ja ostojen erotuksena @@ -1018,6 +1026,7 @@ CalcLocaltax2=Ostot CalcLocaltax2Desc=Veroraportit on laskettu hankintojen veroista CalcLocaltax3=Myynti CalcLocaltax3Desc=Veroraportit on laskettu myyntien veroista +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=Label käyttää oletusarvoisesti, jos ei ole käännös löytyy koodi LabelOnDocuments=Label asiakirjoihin LabelOrTranslationKey=Label or translation key @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Hyväksyttävissä olevat kuluraportit Delays_MAIN_DELAY_HOLIDAYS=Hyväksyttävissä olevat vapaa-anomukset 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. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. SetupDescription5=Other Setup menu entries manage optional parameters. LogEvents=Security Audit tapahtumat Audit=Auditointi @@ -1128,7 +1137,7 @@ LogEventDesc=Enable logging for specific security events. Administrators the log AreaForAdminOnly=Setup parameters can be set by administrator users only. SystemInfoDesc=Järjestelmän tiedot ovat erinäiset tekniset tiedot saavat lukea vain tila ja näkyvissä vain järjestelmänvalvojat. SystemAreaForAdminOnly=This area is available to administrator users only. Dolibarr user permissions cannot change this restriction. -CompanyFundationDesc=Edit the information of the company/entity. Click on "%s" button at the bottom of the page. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. AccountantFileNumber=Accountant code DisplayDesc=Parameters affecting the look and behaviour of Dolibarr can be modified here. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Rules to generate and validate passwords DisableForgetPasswordLinkOnLogonPage=Do not show the "Password Forgotten" link on the Login page UsersSetup=Käyttäjät moduuli setup UserMailRequired=Email required to create a new user +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### HRMSetup=Henkilöstöhallinta moduulin asetukset ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Laskun asiakirjojen malleja BillsPDFModulesAccordindToInvoiceType=Invoice documents models according to invoice type PaymentsPDFModules=Payment documents models ForceInvoiceDate=Force laskun päivämäärästä validointiin päivämäärä -SuggestedPaymentModesIfNotDefinedInInvoice=Ehdotetut maksut tilassa lasku automaattisesti, jos ei ole määritetty lasku +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice SuggestPaymentByRIBOnAccount=Suggest payment by withdrawal on account SuggestPaymentByChequeToAddress=Suggest payment by check to FreeLegalTextOnInvoices=Laskun viesti @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Toimittajamaksujen asetukset PropalSetup=Kaupalliset ehdotuksia moduulin asetukset ProposalsNumberingModules=Kaupalliset ehdotus numerointiin modules ProposalsPDFModules=Kaupalliset ehdotus asiakirjojen malleja -SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined for proposal +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal FreeLegalTextOnProposal=Vapaa tekstihaku kaupallisiin ehdotuksia WatermarkOnDraftProposal=Watermark on draft commercial proposals (none if empty) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal @@ -1322,6 +1334,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 ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=Sales Orders management setup OrdersNumberingModules=Tilaukset numerointiin modules OrdersModelModule=Tilaa asiakirjojen malleja @@ -1720,7 +1733,7 @@ MultiCompanySetup=Multi-yhtiö moduulin asetukset ##### Suppliers ##### SuppliersSetup='Toimittaja' - moduulin asetukset SuppliersCommandModel=Complete template of Purchase Order -SuppliersCommandModelMuscadet=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) SuppliersInvoiceModel=Complete template of Vendor Invoice SuppliersInvoiceNumberingModel=Vendor invoices numbering models IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Piilota kuvat ylävalikosta LeftMenuBackgroundColor=Taustaväri alavalikolle BackgroundTableTitleColor=Background color for Table title line BackgroundTableTitleTextColor=Text color for Table title line +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Background color for odd table lines BackgroundTableLineEvenColor=Background color for even table lines MinimumNoticePeriod=Minimum notice period (Your leave request must be done before this delay) @@ -1823,7 +1837,7 @@ MailToSendInvoice=Asiakkaiden laskut MailToSendShipment=Lähetykset MailToSendIntervention=Interventions MailToSendSupplierRequestForQuotation=Tarjouspyyntö -MailToSendSupplierOrder=Purchase orders +MailToSendSupplierOrder=Ostotilaukset MailToSendSupplierInvoice=Vendor invoices MailToSendContract=Sopimukset MailToThirdparty=Sidosryhmät @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Dolibarr Reference not found in Message ID FormatZip=Postinumero MainMenuCode=Menu entry code (mainmenu) ECMAutoTree=Show automatic ECM tree -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. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Aukioloajat OpeningHoursDesc=Yrityksen tavalliset aukioloajat ResourceSetup=Configuration of Resource module @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Varoitus, suuremmat arvot hidastavat me ModuleActivated=Moduuli %son aktiivinen ja hidastaa ohjelmaa EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Vienti-moduulin asetukset +ImportSetup=Setup of module Import InstanceUniqueID=Instanssin ID SmallerThan=Pienempi kuin LargerThan=Suurempi kuin @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server FeatureNotAvailableWithReceptionModule=Ominaisuus ei käytettävissä kun moduuli Vastaanotto on aktiivinen EmailTemplate=Mallisähköposti EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/fi_FI/assets.lang b/htdocs/langs/fi_FI/assets.lang index 3646f4159f1..8d7c8f33c1a 100644 --- a/htdocs/langs/fi_FI/assets.lang +++ b/htdocs/langs/fi_FI/assets.lang @@ -26,7 +26,7 @@ AssetsTypeSetup=Asset type setup AssetTypeModified=Asset type modified AssetType=Varannon tyyppi AssetsLines=Varannot -DeleteType=Poistaa +DeleteType=Poista DeleteAnAssetType=Delete an asset type ConfirmDeleteAssetType=Are you sure you want to delete this asset type? ShowTypeCard=Näytä tyyppi ' %s' diff --git a/htdocs/langs/fi_FI/bills.lang b/htdocs/langs/fi_FI/bills.lang index c7e0beebf89..a781ab260d3 100644 --- a/htdocs/langs/fi_FI/bills.lang +++ b/htdocs/langs/fi_FI/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Toimittajien laskut SupplierBill=Vendor invoice SupplierBills=tavarantoimittajien laskut Payment=Maksu -PaymentBack=Maksun -CustomerInvoicePaymentBack=Maksun +PaymentBack=Refund +CustomerInvoicePaymentBack=Refund Payments=Maksut PaymentsBack=Refunds paymentInInvoiceCurrency=in invoices currency PaidBack=Takaisin maksu DeletePayment=Poista maksu ConfirmDeletePayment=Oletko varma, että haluat poistaa tämän suorituksen? -ConfirmConvertToReduc=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. -ConfirmConvertToReducSupplier=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. SupplierPayments=Maksut toimittajille ReceivedPayments=Vastaanotetut maksut @@ -209,17 +209,13 @@ NumberOfBillsByMonth=No. of invoices per month AmountOfBills=Määrä laskuista AmountOfBillsHT=Amount of invoices (net of tax) AmountOfBillsByMonthHT=Määrä laskut kuukausittain (verojen jälkeen) -ShowSocialContribution=Show social/fiscal tax -ShowBill=Näytä lasku -ShowInvoice=Näytä lasku -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 +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=To pay on %s toPayOn=to pay on %s RetainedWarranty=Retained Warranty @@ -230,7 +226,6 @@ 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 AlreadyPaidNoCreditNotesNoDeposits=Already paid (without credit notes and down payments) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Generated from template invoice %s WarningInvoiceDateInFuture=Warning, the invoice date is higher than current date WarningInvoiceDateTooFarInFuture=Warning, the invoice date is too far from current date ViewAvailableGlobalDiscounts=Katso saatavilla olevat alennukset +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Tila PaymentConditionShortRECEP=Due Upon Receipt @@ -509,7 +505,7 @@ ToMakePayment=Maksa ToMakePaymentBack=Takaisin maksu ListOfYourUnpaidInvoices=Luettelo maksamattomista laskuista NoteListOfYourUnpaidInvoices=Note: This list contains only invoices for third parties you are linked to as a sale representative. -RevenueStamp=Revenue stamp +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party YouMustCreateStandardInvoiceFirstDesc=You have to create a standard invoice first and convert it to "template" to create a new template invoice @@ -528,8 +524,8 @@ TypeContact_facture_external_BILLING=Asiakkaan lasku yhteystiedot TypeContact_facture_external_SHIPPING=Asiakas merenkulku yhteystiedot TypeContact_facture_external_SERVICE=Asiakaspalvelu ottaa yhteyttä TypeContact_invoice_supplier_internal_SALESREPFOLL=Representative following-up vendor invoice -TypeContact_invoice_supplier_external_BILLING=Vendor invoice contact -TypeContact_invoice_supplier_external_SHIPPING=Vendor shipping contact +TypeContact_invoice_supplier_external_BILLING=Toimittajan laskun kontakti +TypeContact_invoice_supplier_external_SHIPPING=Toimittajan toimitus kontakti TypeContact_invoice_supplier_external_SERVICE=Vendor service contact # Situation invoices InvoiceFirstSituationAsk=First situation invoice @@ -575,3 +571,4 @@ AutoFillDateTo=Set end date for service line with next invoice date AutoFillDateToShort=Set end date MaxNumberOfGenerationReached=Max number of gen. reached BILL_DELETEInDolibarr=Lasku poistettu +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/fi_FI/blockedlog.lang b/htdocs/langs/fi_FI/blockedlog.lang index cc69e90c513..f9a07298706 100644 --- a/htdocs/langs/fi_FI/blockedlog.lang +++ b/htdocs/langs/fi_FI/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Unalterable logs ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) DownloadBlockChain=Download fingerprints -KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this re after it was recorded, or has erased the previous archived record (check that line with previous # exists). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. AddedByAuthority=Stored into remote authority diff --git a/htdocs/langs/fi_FI/cashdesk.lang b/htdocs/langs/fi_FI/cashdesk.lang index 5bbd311f27a..81fe61276e5 100644 --- a/htdocs/langs/fi_FI/cashdesk.lang +++ b/htdocs/langs/fi_FI/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Lisää tämä artikkeli RestartSelling=Mene takaisin myydä SellFinished=Myynti valmis PrintTicket=Tulosta lippu +SendTicket=Send ticket NoProductFound=Ei artikkeli löydetty ProductFound=Tuote löytyy NoArticle=Ei artikkeli @@ -48,6 +49,7 @@ Footer=Footer AmountAtEndOfPeriod=Amount at end of period (day, month or year) TheoricalAmount=Theorical amount RealAmount=Real amount +CashFence=Cash fence CashFenceDone=Cash fence done for the period NbOfInvoices=Nb laskuista Paymentnumpad=Type of Pad to enter payment @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS needs product categories to work OrderNotes=Order Notes CashDeskBankAccountFor=Default account to use for payments in NoPaimementModesDefined=No paiment mode defined in TakePOS configuration -TicketVatGrouped=Group VAT by rate in tickets -AutoPrintTickets=Automatically print tickets +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? @@ -87,7 +90,19 @@ HeadBar=Head Bar SortProductField=Field for sorting products Browser=Selain BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/fi_FI/companies.lang b/htdocs/langs/fi_FI/companies.lang index 6bcc497776c..db7da866e5b 100644 --- a/htdocs/langs/fi_FI/companies.lang +++ b/htdocs/langs/fi_FI/companies.lang @@ -54,10 +54,10 @@ Firstname=Etunimi PostOrFunction=Asema UserTitle=Titteli NatureOfThirdParty=Sidosryhmän luonne -NatureOfContact=Nature of Contact +NatureOfContact=Yhteyshenkilön luonne Address=Osoite -State=Valtio / Lääni -StateCode=State/Province code +State=Postialue +StateCode=Postinumero StateShort=Valtio Region=Alue Region-State=Alue - Osavaltio @@ -79,7 +79,7 @@ Town=Postitoimipaikka Web=Kotisivut Poste= Asema DefaultLang=Oletuskieli -VATIsUsed=Myyntivero +VATIsUsed=Käytettävä myyntivero VATIsUsedWhenSelling=Määrittää sisällyttääkö sidosryhmä myyntiveron omien asiakkaidensa laskuun. VATIsNotUsed=Myyntivero ei käytössä CopyAddressFromSoc=Kopioi osoite sidosryhmän tiedoista @@ -100,7 +100,7 @@ LocalTax2IsNotUsedES= IRPF ei käytössä WrongCustomerCode=Asiakastunnus vihreellinen WrongSupplierCode=Toimittajan tunnus virheellinen CustomerCodeModel=Asiakastunnuksen malli -SupplierCodeModel=Vendor code model +SupplierCodeModel=Toimittajakoodin malli Gencod=Viivakoodi ##### Professional ID ##### ProfId1Short=Prof id 1 @@ -310,12 +310,12 @@ AddThirdParty=Luo sidosryhmä DeleteACompany=Poista yritys PersonalInformations=Henkilötiedot AccountancyCode=Kirjanpito tili -CustomerCode=Asiakastunnua +CustomerCode=Asiakastunnus SupplierCode=Toimittajatunnus -CustomerCodeShort=Asiakastunnua +CustomerCodeShort=Asiakastunnus SupplierCodeShort=Toimittajatunnus -CustomerCodeDesc=Customer Code, unique for all customers -SupplierCodeDesc=Vendor Code, unique for all vendors +CustomerCodeDesc=Asiakaskohtainen koodi, uniikki jokaiselle asiakkaalle +SupplierCodeDesc=Toimittajakohtainen koodi, uniikki jokaiselle toimittajalle RequiredIfCustomer=Vaaditaan, jos sidosryhmä on asiakas tai mahdollinen asiakas RequiredIfSupplier=Vaadittu jos sidosryhmä on toimittaja ValidityControledByModule=Validity controlled by module @@ -325,16 +325,15 @@ CompanyDeleted=Yritys " %s" poistettu tietokannasta. ListOfContacts=Yhteystietoluettelo ListOfContactsAddresses=Yhteystietoluettelo ListOfThirdParties=Sidosryhmäluettelo -ShowCompany=Näytä sidosryhmä ShowContact=Näytä yhteystiedot ContactsAllShort=Kaikki (Ei suodatinta) ContactType=Yhteystiedon tyyppi ContactForOrders=Tilauksen yhteystiedon ContactForOrdersOrShipments=Tilauksen tai lähetyksen yhteystiedot -ContactForProposals=Tarjouksen yhteystiedon -ContactForContracts=Sopimukset yhteystiedot +ContactForProposals=Tarjouksen yhteyshenkilö +ContactForContracts=Sopimuksen yhteyshenkilö ContactForInvoices=Laskut yhteystiedot -NoContactForAnyOrder=Tämä yhteyshenkilö ei ole yhteyttä mihinkään jotta +NoContactForAnyOrder=Tämä yhteyshenkilö ei ole yhteyshenkilönä yhdessäkään tilauksessa. NoContactForAnyOrderOrShipments=Tämä yhteystieto ei ole yhteystietona missään tilauksessa tai toimituksessa NoContactForAnyProposal=Tämä yhteys ei ole yhteyttä mihinkään kaupalliseen ehdotus NoContactForAnyContract=Tämä yhteys ei ole yhteyttä mihinkään sopimukseen @@ -345,7 +344,7 @@ MyContacts=Omat yhteystiedot Capital=Pääoma CapitalOf=%s:n pääoma EditCompany=Muokkaa yritystä -ThisUserIsNot=This user is not a prospect, customer or vendor +ThisUserIsNot=Tämä ei ole prospekti, asiakas tai toimittaja VATIntraCheck=Shekki VATIntraCheckDesc=ALV-tunnuksen täytyy sisältää maatunnus. Linkki %s käyttää European VAT checker service (VIES)  - palvelua ja tarvii internet-yhteyden Dolibarr-palvelimeen VATIntraCheckURL=http://ec.europa.eu/taxation_customs/vies/vieshome.do @@ -353,7 +352,7 @@ VATIntraCheckableOnEUSite=Tarkasta ALV-tunnus E.U: n sivuilta VATIntraManualCheck=Voit tehdä tarkastuksen myös käsin E.U: n sivuilla %s ErrorVATCheckMS_UNAVAILABLE=Tarkistaminen ei mahdollista. Jäsenvaltio ei toimita tarkastuspalvelua ( %s). NorProspectNorCustomer=Ei mahdollinen asiakas eikä asiakas -JuridicalStatus=Legal Entity Type +JuridicalStatus=Yritysmuoto Staff=Työntekijät ProspectLevelShort=Potenttiaali ProspectLevel=Prospekti potentiaali @@ -363,7 +362,7 @@ ContactVisibility=Näkyvyys ContactOthers=Muu OthersNotLinkedToThirdParty=Toiset, jotka eivät liity kolmasosaa osapuoli ProspectStatus=Prospektin tila -PL_NONE=Aucun +PL_NONE=Ei mitään PL_UNKNOWN=Tuntematon PL_LOW=Matala PL_MEDIUM=Keskitaso @@ -399,16 +398,16 @@ ExportDataset_company_2=Contacts and their properties ImportDataset_company_1=Third-parties and their properties ImportDataset_company_2=Third-parties additional contacts/addresses and attributes ImportDataset_company_3=Sidosryhmien pankkitilit -ImportDataset_company_4=Third-parties Sales representatives (assign sales representatives/users to companies) +ImportDataset_company_4=Kolmansien osapuolten myyjät (lisää myyjät/käyttäjät yrityskohtaisesti) PriceLevel=Hintataso -PriceLevelLabels=Price Level Labels +PriceLevelLabels=Hintaryhmät DeliveryAddress=Toimitusosoite AddAddress=Lisää osoite -SupplierCategory=Vendor category +SupplierCategory=Toimittaja kategoria JuridicalStatus200=Itsenäinen DeleteFile=Poista tiedosto ConfirmDeleteFile=Oletko varma, että haluat poistaa tämän tiedoston? -AllocateCommercial=Liitä myyntiedustajaan +AllocateCommercial=Liitetty myyntiedustajaan Organization=Organisaatio FiscalYearInformation=Tilikausi FiscalMonthStart=Tilikauden aloituskuukausi @@ -419,14 +418,14 @@ SocialNetworksLinkedinURL=Linkedin URL SocialNetworksInstagramURL=Instagram URL SocialNetworksYoutubeURL=Youtube URL SocialNetworksGithubURL=Github URL -YouMustAssignUserMailFirst=You must create an email for this user prior to being able to add an email notification. +YouMustAssignUserMailFirst=Aseta sähköposti että voi lisätä sähköpostimuistukset käyttöön YouMustCreateContactFirst=Voidaksesi lisätä sähköposti muistutukset, täytyy ensin täyttää yhteystiedot sidosryhmän oikealla sähköpostiosoitteella ListSuppliersShort=Toimittajaluettelo ListProspectsShort=Luettelo mahdollisista asiakkaista ListCustomersShort=Asiakasluettelo ThirdPartiesArea=Sidosryhmät/yhteystiedot LastModifiedThirdParties=Last %s modified Third Parties -UniqueThirdParties=Total of Third Parties +UniqueThirdParties=Yhteensä sidosryhmiä InActivity=Avoinna ActivityCeased=Kiinni ThirdPartyIsClosed=Sidosryhmä on suljettu @@ -446,7 +445,8 @@ SaleRepresentativeLogin=Myyntiedustajan kirjautuminen SaleRepresentativeFirstname=Myyntiedustajan etunimi SaleRepresentativeLastname=Myyntiedustajan sukunimi ErrorThirdpartiesMerge=Sidosryhmän poistossa tapahtui virhe. Tarkista virhe lokitiedostosta. Muutoksia ei tehty -NewCustomerSupplierCodeProposed=Customer or Vendor code already used, a new code is suggested +NewCustomerSupplierCodeProposed=Tuotekoodi käytössä, käytä uutta koodia +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Maksutapa - Asiakas PaymentTermsCustomer=Maksuehdot - Asiakas diff --git a/htdocs/langs/fi_FI/compta.lang b/htdocs/langs/fi_FI/compta.lang index c193b43978e..88b914cd030 100644 --- a/htdocs/langs/fi_FI/compta.lang +++ b/htdocs/langs/fi_FI/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=See %sanalysis of payments%s for a calculation on act SeeReportInDueDebtMode=See %sanalysis of invoices%s for a calculation based on known recorded invoices even if they are not yet accounted in Ledger. SeeReportInBookkeepingMode=See %sBookeeping report%s for a calculation on Bookkeeping Ledger table RulesAmountWithTaxIncluded=- Amounts shown are with all taxes included -RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the validation date of invoices and VAT and on the due date for expenses. For salaries defined with Salary module, the value date of payment is used. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- It includes the real payments made on invoices, expenses, VAT and salaries.
    - It is based on the payment dates of the invoices, expenses, VAT and salaries. The donation date for donation. -RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the validation date of these invoices.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    RulesCATotalSaleJournal=It includes all credit lines from the Sale journal. RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Turnover invoiced by sale tax rate TurnoverCollectedbyVatrate=Turnover collected by sale tax rate PurchasebyVatrate=Purchase by sale tax rate LabelToShow=Short label +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/fi_FI/donations.lang b/htdocs/langs/fi_FI/donations.lang index 93072e82e4b..1cb5e0a33a7 100644 --- a/htdocs/langs/fi_FI/donations.lang +++ b/htdocs/langs/fi_FI/donations.lang @@ -7,7 +7,6 @@ AddDonation=Create a donation NewDonation=Uusi lahjoitus DeleteADonation=Delete a donation ConfirmDeleteADonation=Are you sure you want to delete this donation? -ShowDonation=Show donation PublicDonation=Julkiset lahjoitus DonationsArea=Lahjoitukset alueella DonationStatusPromiseNotValidated=Luonnos lupaus @@ -17,6 +16,7 @@ DonationStatusPromiseNotValidatedShort=Vedos DonationStatusPromiseValidatedShort=Validoidut DonationStatusPaidShort=Vastatut DonationTitle=Donation receipt +DonationDate=Donation date DonationDatePayment=Maksupäivä ValidPromess=Vahvista lupaus DonationReceipt=Donation receipt diff --git a/htdocs/langs/fi_FI/errors.lang b/htdocs/langs/fi_FI/errors.lang index f568deeb469..f2f1ba0fb15 100644 --- a/htdocs/langs/fi_FI/errors.lang +++ b/htdocs/langs/fi_FI/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=Tiedosto ei saanut kokonaan palvelimelta. ErrorNoTmpDir=Tilapäinen directy %s ei ole. ErrorUploadBlockedByAddon=Lähetä estetty PHP / Apache plugin. ErrorFileSizeTooLarge=Tiedoston koko on liian suuri. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Koko liian pitkä int tyyppi (%s merkkiä maksimi) ErrorSizeTooLongForVarcharType=Koko liian pitkä jono tyyppi (%s merkkiä maksimi) ErrorNoValueForSelectType=Please fill value for select list @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # 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/fi_FI/install.lang b/htdocs/langs/fi_FI/install.lang index f01edcad905..03c084676eb 100644 --- a/htdocs/langs/fi_FI/install.lang +++ b/htdocs/langs/fi_FI/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=This PHP supports Curl. PHPSupportCalendar=This PHP supports calendars extensions. PHPSupportUTF8=This PHP supports UTF8 functions. PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=This PHP supports %s functions. PHPMemoryOK=Sinun PHP max istuntojakson muisti on asetettu %s. Tämän pitäisi olla tarpeeksi. 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. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=Sinun PHP asennuksesi ei tue Curl. ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. 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. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. ErrorDirDoesNotExists=Hakemiston %s ei ole olemassa. ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=The application tried to self-upgrade, but the in 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. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/fi_FI/interventions.lang b/htdocs/langs/fi_FI/interventions.lang index 9ba791d48b3..d01ef905476 100644 --- a/htdocs/langs/fi_FI/interventions.lang +++ b/htdocs/langs/fi_FI/interventions.lang @@ -24,7 +24,7 @@ NameAndSignatureOfInternalContact=Name and signature of intervening: NameAndSignatureOfExternalContact=Name and signature of customer: DocumentModelStandard=Vakioasiakirja malli interventioiden InterventionCardsAndInterventionLines=Interventions and lines of interventions -InterventionClassifyBilled=Luokitella "Laskutetaan" +InterventionClassifyBilled=Luokittele "laskutettu" InterventionClassifyUnBilled=Classify "Unbilled" InterventionClassifyDone=Classify "Done" StatusInterInvoiced=Laskutetaan @@ -41,9 +41,7 @@ InterventionsArea=Interventions area DraftFichinter=Draft interventions LastModifiedInterventions=Latest %s modified interventions FichinterToProcess=Interventions to process -##### Types de contacts ##### TypeContact_fichinter_external_CUSTOMER=Seurata asiakkaiden yhteystiedot -# Modele numérotation PrintProductsOnFichinter=Print also lines of type "product" (not only services) on intervention card PrintProductsOnFichinterDetails=interventions generated from orders UseServicesDurationOnFichinter=Use services duration for interventions generated from orders @@ -53,14 +51,16 @@ InterventionStatistics=Statistics of interventions NbOfinterventions=No. of intervention cards NumberOfInterventionsByMonth=No. of intervention cards by month (date of validation) AmountOfInteventionNotIncludedByDefault=Amount of intervention is not included by default into profit (in most cases, timesheets are used to count time spent). Add option PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT to 1 into home-setup-other to include them. -##### Exports ##### InterId=Intervention id InterRef=Intervention ref. InterDateCreation=Date creation intervention InterDuration=Duration intervention InterStatus=Status intervention InterNote=Note intervention +InterLine=Line of intervention InterLineId=Line id intervention InterLineDate=Line date intervention InterLineDuration=Line duration intervention InterLineDesc=Line description intervention +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/fi_FI/link.lang b/htdocs/langs/fi_FI/link.lang index e794e091a48..2db365c6329 100644 --- a/htdocs/langs/fi_FI/link.lang +++ b/htdocs/langs/fi_FI/link.lang @@ -8,3 +8,4 @@ LinkRemoved=%s linkki on poistettu ErrorFailedToDeleteLink= Linkin '%s' poisto ei onnistunut ErrorFailedToUpdateLink= Linkin '%s' päivitys ei onnistunut URLToLink=URL linkiksi +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/fi_FI/mails.lang b/htdocs/langs/fi_FI/mails.lang index 77d9cde2195..005cf01f18a 100644 --- a/htdocs/langs/fi_FI/mails.lang +++ b/htdocs/langs/fi_FI/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=No contact/address with a category found NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found OutGoingEmailSetup=Outgoing email setup InGoingEmailSetup=Incoming email setup -OutGoingEmailSetupForEmailing=Outgoing email setup (for mass emailing) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Default outgoing email setup Information=Information ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/fi_FI/main.lang b/htdocs/langs/fi_FI/main.lang index e38ede431d7..ad39167d919 100644 --- a/htdocs/langs/fi_FI/main.lang +++ b/htdocs/langs/fi_FI/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Save and stay SaveAndNew=Save and new TestConnection=Testaa yhteys ToClone=Klooni +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Choose data you want to clone: NoCloneOptionsSpecified=Ei tietoja kloonata määritelty. Of=ja @@ -425,6 +426,7 @@ Modules=Moduulit/Applikaatiot Option=Vaihtoehto List=Luettelo FullList=Täydellinen luettelo +FullConversation=Full conversation Statistics=Tilastot OtherStatistics=Muut tilastot Status=Tila @@ -829,6 +831,8 @@ Gender=Sukupuoli Genderman=Mies Genderwoman=Nainen ViewList=Näytä lista +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Pakollinen Hello=Terve GoodBye=Näkemiin @@ -844,7 +848,7 @@ ShowTempMassFilesArea=Show area of files built by mass actions ConfirmMassDeletion=Bulk Delete confirmation ConfirmMassDeletionQuestion=Are you sure you want to delete the %s selected record(s)? RelatedObjects=Related Objects -ClassifyBilled=Luokittele laskutetaan +ClassifyBilled=Luokittele laskutetuksi ClassifyUnbilled=Classify unbilled Progress=Edistyminen ProgressShort=Progr. @@ -950,12 +954,13 @@ SearchIntoMembers=Jäsenet SearchIntoUsers=Käyttäjät SearchIntoProductsOrServices=Tuotteet tai palvelut SearchIntoProjects=Projektit +SearchIntoMO=Manufacturing Orders SearchIntoTasks=Tehtävät SearchIntoCustomerInvoices=Asiakkaiden laskut SearchIntoSupplierInvoices=Vendor invoices SearchIntoCustomerOrders=Asiakkaan tilaukset -SearchIntoSupplierOrders=Purchase orders -SearchIntoCustomerProposals=Tarjoukset asiakkaille +SearchIntoSupplierOrders=Ostotilaukset +SearchIntoCustomerProposals=Tarjoukset SearchIntoSupplierProposals=Vendor proposals SearchIntoInterventions=Interventions SearchIntoContracts=Sopimukset @@ -969,7 +974,7 @@ CommentPage=Comments space CommentAdded=Kommentti lisätty CommentDeleted=Kommentti poistettu Everybody=Yhteiset hanke -PayedBy=Paid by +PayedBy=Maksettu toimesta PayedTo=Paid to Monthly=Monthly Quarterly=Quarterly @@ -1022,3 +1027,9 @@ SelectYourGraphOptionsFirst=Select your graph options to build a graph Measures=Measures XAxis=X-Axis YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? +ShowOtherLanguages=Show other languages +SwitchInEditModeToAddTranslation=Switch in edit mode to add translations for this language +NotUsedForThisCustomer=Not used for this customer diff --git a/htdocs/langs/fi_FI/margins.lang b/htdocs/langs/fi_FI/margins.lang index d4f7e3dbb23..d1b075c7bc3 100644 --- a/htdocs/langs/fi_FI/margins.lang +++ b/htdocs/langs/fi_FI/margins.lang @@ -16,6 +16,7 @@ MarginDetails=Margin details ProductMargins=Product margins CustomerMargins=Customer margins SalesRepresentativeMargins=Sales representative margins +ContactOfInvoice=Contact of invoice UserMargins=User margins ProductService=Tuote tai palvelu AllProducts=Kaikki tuotteet ja palvelut @@ -31,14 +32,14 @@ MARGIN_TYPE=Buying/Cost price suggested by default for margin calculation MargeType1=Margin on Best vendor price MargeType2=Margin on Weighted Average Price (WAP) MargeType3=Margin on Cost Price -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 -CostPrice=Cost price +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=Kustannushinta UnitCharges=Unit charges Charges=Charges AgentContactType=Commercial agent contact type -AgentContactTypeDetails=Define what contact type (linked on invoices) will be used for margin report per sale representative +AgentContactTypeDetails=Define what contact type (linked on invoices) will be used for margin report per contact/address. Note that reading statistics on a contact is not reliable since in most cases the contact may not be defined explicitely on the invoices. rateMustBeNumeric=Rate must be a numeric value markRateShouldBeLesserThan100=Mark rate should be lower than 100 ShowMarginInfos=Show margin infos CheckMargins=Margins detail -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/fi_FI/modulebuilder.lang b/htdocs/langs/fi_FI/modulebuilder.lang index 00a8c0f9d32..135ac1ae9ec 100644 --- a/htdocs/langs/fi_FI/modulebuilder.lang +++ b/htdocs/langs/fi_FI/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=List of dictionaries entries ListOfPermissionsDefined=List of defined permissions SeeExamples=See examples here EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) -VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update). Using a negative value means field is not shown by default on list but can be selected for viewing). It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty DisplayOnPdf=Display on PDF IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) diff --git a/htdocs/langs/fi_FI/multicurrency.lang b/htdocs/langs/fi_FI/multicurrency.lang new file mode 100644 index 00000000000..c285b180058 --- /dev/null +++ b/htdocs/langs/fi_FI/multicurrency.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Multi currency +ErrorAddRateFail=Error in added rate +ErrorAddCurrencyFail=Error in added currency +ErrorDeleteCurrencyFail=Error delete fail +multicurrency_syncronize_error=Synchronization error: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Use the date of the document to find the currency rate, instead of using the latest known rate +multicurrency_useOriginTx=When an object is created from another, keep the original rate from the source object (otherwise use the latest known rate) +CurrencyLayerAccount=CurrencyLayer API +CurrencyLayerAccount_help_to_synchronize=You must create an account on website %s to use this functionality.
    Get your API key.
    If you use a free account, you can't change the source currency (USD by default).
    If your main currency is not USD, the application will automatically recalculate it.

    You are limited to 1000 synchronizations per month. +multicurrency_appId=API key +multicurrency_appCurrencySource=Source currency +multicurrency_alternateCurrencySource=Alternate source currency +CurrenciesUsed=Currencies used +CurrenciesUsed_help_to_add=Add the different currencies and rates you need to use on your proposals, orders etc. +rate=rate +MulticurrencyReceived=Received, original currency +MulticurrencyRemainderToTake=Remaining amount, original currency +MulticurrencyPaymentAmount=Suorituksen summa, alkuperäinen valuutta +AmountToOthercurrency=Amount To (in currency of receiving account) +CurrencyRateSyncSucceed=Currency rate synchronization done successfuly +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Use the currency of the document for online payments diff --git a/htdocs/langs/fi_FI/orders.lang b/htdocs/langs/fi_FI/orders.lang index 9eb16bfb4cb..6ad75f3c205 100644 --- a/htdocs/langs/fi_FI/orders.lang +++ b/htdocs/langs/fi_FI/orders.lang @@ -141,7 +141,7 @@ OrderByEMail=Sähköposti OrderByWWW=Online OrderByPhone=Puhelin # Documents models -PDFEinsteinDescription=A complete order model (old implementation of Eratosthene template) +PDFEinsteinDescription=A complete order model PDFEratostheneDescription=A complete order model PDFEdisonDescription=Yksinkertainen tilausmalli PDFProformaDescription=A complete Proforma invoice template diff --git a/htdocs/langs/fi_FI/other.lang b/htdocs/langs/fi_FI/other.lang index 3e05eb44a04..5cd5ddd1758 100644 --- a/htdocs/langs/fi_FI/other.lang +++ b/htdocs/langs/fi_FI/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Sales order validated Notify_ORDER_SENTBYMAIL=Sales order sent by mail Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=URL of page WEBSITE_TITLE=Titteli WEBSITE_DESCRIPTION=Kuvaus WEBSITE_IMAGE=Image -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Keywords LinesToImport=Lines to import diff --git a/htdocs/langs/fi_FI/products.lang b/htdocs/langs/fi_FI/products.lang index 91ccfbb1d6f..6fa3b77b08e 100644 --- a/htdocs/langs/fi_FI/products.lang +++ b/htdocs/langs/fi_FI/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL MassBarcodeInit=Mass barcode init MassBarcodeInitDesc=This page can be used to initialize a barcode on objects that does not have barcode defined. Check before that setup of module barcode is complete. ProductAccountancyBuyCode=Kirjanpitotili (ostot) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Kirjanpitotili (myynti) ProductAccountancySellIntraCode=Accounting code (sale intra-Community) ProductAccountancySellExportCode=Kirjanpitotili (Vientimyynti) @@ -164,8 +166,8 @@ CustomerPrices=Asiakas hinnat SuppliersPrices=Vendor prices SuppliersPricesOfProductsOrServices=Vendor prices (of products or services) CustomCode=Customs / Commodity / HS code -CountryOrigin=Alkuperä maa -Nature=Nature of produt (material/finished) +CountryOrigin=Alkuperämaa +Nature=Nature of product (material/finished) ShortLabel=Short label Unit=Yksikkö p=u. diff --git a/htdocs/langs/fi_FI/projects.lang b/htdocs/langs/fi_FI/projects.lang index 54314312026..5dc84d3c585 100644 --- a/htdocs/langs/fi_FI/projects.lang +++ b/htdocs/langs/fi_FI/projects.lang @@ -4,92 +4,90 @@ ProjectRef=Project ref. ProjectId=Project Id ProjectLabel=Project label ProjectsArea=Projects Area -ProjectStatus=Project status +ProjectStatus=Projektin tila SharedProject=Yhteiset hanke PrivateProject=Hankkeen yhteystiedot -ProjectsImContactFor=Projects for I am explicitly a contact -AllAllowedProjects=All project I can read (mine + public) +ProjectsImContactFor=Omat projektit +AllAllowedProjects=Omat ja muiden projektit AllProjects=Kaikki hankkeet MyProjectsDesc=This view is limited to projects you are a contact for -ProjectsPublicDesc=Tämä näkemys esitetään kaikki hankkeet sinulla voi lukea. +ProjectsPublicDesc=Tässä näkymässä esitetään kaikki hankkeet joita sinulla on oikaus katsoa. TasksOnProjectsPublicDesc=This view presents all tasks on projects you are allowed to read. -ProjectsPublicTaskDesc=Tämä näkemys esitetään kaikki hankkeet ja tehtävät sinulla voi lukea. +ProjectsPublicTaskDesc=Tässä näkymässä esitetään kaikki tehtävät joita sinulla on oikaus katsoa. ProjectsDesc=Tämä näkemys esitetään kaikki hankkeet (käyttäjäoikeuksien antaa sinulle luvan katsella kaikkea). TasksOnProjectsDesc=This view presents all tasks on all projects (your user permissions grant you permission to view everything). MyTasksDesc=This view is limited to projects or tasks you are a contact for OnlyOpenedProject=Only open projects are visible (projects in draft or closed status are not visible). -ClosedProjectsAreHidden=Closed projects are not visible. +ClosedProjectsAreHidden=Suljetut projektit eivät ole nähtävissä. TasksPublicDesc=Tämä näkemys esitetään kaikki hankkeet ja tehtävät sinulla voi lukea. TasksDesc=Tämä näkemys esitetään kaikki hankkeet ja tehtävät (käyttäjäoikeuksien antaa sinulle luvan katsella kaikkea). AllTaskVisibleButEditIfYouAreAssigned=All tasks for qualified projects are visible, but you can enter time only for task assigned to selected user. Assign task if you need to enter time on it. OnlyYourTaskAreVisible=Only tasks assigned to you are visible. Assign task to yourself if it is not visible and you need to enter time on it. -ImportDatasetTasks=Tasks of projects -ProjectCategories=Project tags/categories +ImportDatasetTasks=Projektien tehtävät +ProjectCategories=Projektien/Tehtävien kategoriat NewProject=Uusi projekti -AddProject=Create project +AddProject=Perusta projekti DeleteAProject=Poista hanke DeleteATask=Poista tehtävä -ConfirmDeleteAProject=Are you sure you want to delete this project? -ConfirmDeleteATask=Are you sure you want to delete this task? -OpenedProjects=Open projects -OpenedTasks=Open tasks +ConfirmDeleteAProject=Oletko varma että haluat poistaa tämän projektin? +ConfirmDeleteATask=Oletko varma että haluat poistaa tämän tehtävän? +OpenedProjects=Avoimet projektit +OpenedTasks=Avoimet tehtävät OpportunitiesStatusForOpenedProjects=Leads amount of open projects by status OpportunitiesStatusForProjects=Leads amount of projects by status -ShowProject=Näytä hankkeen +ShowProject=Näytä projekti ShowTask=Näytä tehtävä -SetProject=Aseta hankkeen +SetProject=Aseta projekti NoProject=Ei hanke määritellään -NbOfProjects=Number of projects -NbOfTasks=Number of tasks +NbOfProjects=Projektien määrä +NbOfTasks=Tehtävien määrä TimeSpent=Käytetty aika TimeSpentByYou=Time spent by you TimeSpentByUser=Time spent by user TimesSpent=Käytetty aika -TaskId=Task ID -RefTask=Task ref. -LabelTask=Task label +TaskId=Tehtävän ID +RefTask=Tehtävän viittaus +LabelTask=Tehtävän merkki TaskTimeSpent=Time spent on tasks TaskTimeUser=Käyttäjä TaskTimeNote=Huomautus -TaskTimeDate=Date +TaskTimeDate=Päivämäärä TasksOnOpenedProject=Tasks on open projects WorkloadNotDefined=Workload not defined NewTimeSpent=Käytetty aika MyTimeSpent=Oma käytetty aika -BillTime=Bill the time spent -BillTimeShort=Bill time -TimeToBill=Time not billed -TimeBilled=Time billed +BillTime=Laskuta käytetty aika +BillTimeShort=Laskutettava aika +TimeToBill=Laskuttamaton aika +TimeBilled=Laskutettu aika Tasks=Tehtävät Task=Tehtävä -TaskDateStart=Task start date -TaskDateEnd=Task end date -TaskDescription=Task description +TaskDateStart=Tehtävän alkupäivä +TaskDateEnd=Tehtävän loppupäivä +TaskDescription=Tehtävän kuvaus NewTask=Uusi tehtävä -AddTask=Create task -AddTimeSpent=Create time spent -AddHereTimeSpentForDay=Add here time spent for this day/task -AddHereTimeSpentForWeek=Add here time spent for this week/task +AddTask=Perusta tehtävä +AddTimeSpent=Kirjaa käytetty aika +AddHereTimeSpentForDay=Lisää tähän käytetty aika tälle päivälle/tehtävälle +AddHereTimeSpentForWeek=Lisää tähän käytetty aika tälle viikolle/tehtävälle Activity=Toiminto Activities=Tehtävät / toiminnot MyActivities=Omat tehtävät / toiminnot -MyProjects=Omat hankkeet -MyProjectsArea=My projects Area -DurationEffective=Todellisen keston -ProgressDeclared=Declared progress -TaskProgressSummary=Task progress -CurentlyOpenedTasks=Curently open tasks +MyProjects=Omat projektit +MyProjectsArea=Omat projektit - alue +DurationEffective=Todellisen kesto +ProgressDeclared=Julkaistu eteneminen +TaskProgressSummary=Tehtien eteneminen +CurentlyOpenedTasks=Avoimet tehtävät TheReportedProgressIsLessThanTheCalculatedProgressionByX=The declared progress is less %s than the calculated progression TheReportedProgressIsMoreThanTheCalculatedProgressionByX=The declared progress is more %s than the calculated progression -ProgressCalculated=Calculated progress +ProgressCalculated=Lasketut projektit WhichIamLinkedTo=which I'm linked to WhichIamLinkedToProject=which I'm linked to project Time=Aika -ListOfTasks=List of tasks +ListOfTasks=Tehtävälista GoToListOfTimeConsumed=Go to list of time consumed -GoToListOfTasks=Show as list -GoToGanttView=show as Gantt -GanttView=Gantt View +GanttView=GANTT näkymä ListProposalsAssociatedProject=List of the commercial proposals related to the project ListOrdersAssociatedProject=List of sales orders related to the project ListInvoicesAssociatedProject=List of customer invoices related to the project @@ -188,7 +186,7 @@ PlannedWorkload=Planned workload PlannedWorkloadShort=Workload ProjectReferers=Liittyvät tuotteet ProjectMustBeValidatedFirst=Project must be validated first -FirstAddRessourceToAllocateTime=Assign a user resource to task to allocate time +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=Input per day InputPerWeek=Input per week InputPerMonth=Input per month @@ -240,6 +238,7 @@ LatestModifiedProjects=Latest %s modified projects OtherFilteredTasks=Other filtered tasks NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=Allow user comments on tasks AllowCommentOnProject=Allow user comments on projects @@ -256,7 +255,7 @@ ServiceToUseOnLines=Service to use on lines InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. ProjectFollowOpportunity=Follow opportunity -ProjectFollowTasks=Follow tasks +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Usage: Opportunity UsageTasks=Usage: Tasks @@ -265,3 +264,4 @@ InvoiceToUse=Draft invoice to use NewInvoice=Uusi lasku OneLinePerTask=One line per task OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/fi_FI/receiptprinter.lang b/htdocs/langs/fi_FI/receiptprinter.lang index f50113846a2..72c80718a92 100644 --- a/htdocs/langs/fi_FI/receiptprinter.lang +++ b/htdocs/langs/fi_FI/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Dummy tulostin CONNECTOR_NETWORK_PRINT=Verkkotulostin CONNECTOR_FILE_PRINT=Paikallinen tulostin CONNECTOR_WINDOWS_PRINT=Paikallinen Windows tulostin +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Olematon tulostin testiä varten, ei tee mitään CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Oletus profiili PROFILE_SIMPLE=Yksinkertainen profiili PROFILE_EPOSTEP=Epos Tep profiili @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Invoice month in letters DOL_VALUE_MONTH=Invoice month DOL_VALUE_DAY=Invoice day DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Laskun ref +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=Pääoma +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/fi_FI/sendings.lang b/htdocs/langs/fi_FI/sendings.lang index 2713619694a..f45dd858ab4 100644 --- a/htdocs/langs/fi_FI/sendings.lang +++ b/htdocs/langs/fi_FI/sendings.lang @@ -16,7 +16,7 @@ NbOfSendings=Toimitusten lukumäärä NumberOfShipmentsByMonth=Number of shipments by month SendingCard=Toimituskortti NewSending=Uusi toimitus -CreateShipment=Luo lähettäminen +CreateShipment=Luo lähetys QtyShipped=Kpl lähetetty QtyShippedShort=Qty ship. QtyPreparedOrShipped=Qty prepared or shipped @@ -31,7 +31,7 @@ SendingsAndReceivingForSameOrder=Tämän tilauksen toimitukset ja kuittaukset SendingsToValidate=Toimitu StatusSendingCanceled=Peruttu StatusSendingDraft=Vedos -StatusSendingValidated=Validoidut (tuotteet alukselle tai jo lähettänyt) +StatusSendingValidated=Validoidut (lähetettävät tai lähetetyt tuotteet) StatusSendingProcessed=Jalostettu StatusSendingDraftShort=Vedos StatusSendingValidatedShort=Validoidut diff --git a/htdocs/langs/fi_FI/stocks.lang b/htdocs/langs/fi_FI/stocks.lang index 79f95bf0d9a..8c8273e4411 100644 --- a/htdocs/langs/fi_FI/stocks.lang +++ b/htdocs/langs/fi_FI/stocks.lang @@ -1,17 +1,17 @@ # Dolibarr language file - Source file is en_US - stocks WarehouseCard=Warehouse-kortti -Warehouse=Warehouse +Warehouse=Varasto Warehouses=Varastot ParentWarehouse=Parent warehouse NewWarehouse=New warehouse / Stock Location -WarehouseEdit=Muokkaa varasto +WarehouseEdit=Muokkaa varastoa MenuNewWarehouse=Uusi varasto -WarehouseSource=Lähde varasto +WarehouseSource=Lähdevarasto WarehouseSourceNotDefined=No warehouse defined, AddWarehouse=Create warehouse AddOne=Add one DefaultWarehouse=Default warehouse -WarehouseTarget=Kohdekieli varasto +WarehouseTarget=Kohdevarasto ValidateSending=Poista lähettäminen CancelSending=Peruuta lähettäminen DeleteSending=Poista lähettäminen @@ -22,7 +22,7 @@ LotSerial=Lots/Serials LotSerialList=List of lot/serials Movements=Liikkeet ErrorWarehouseRefRequired=Warehouse viite nimi tarvitaan -ListOfWarehouses=Luettelo varastoissa +ListOfWarehouses=Luettelo varastoista ListOfStockMovements=Luettelo varastojen muutokset ListOfInventories=List of inventories MovementId=Movement ID @@ -80,7 +80,7 @@ StockLimitShort=Limit for alert StockLimit=Stock limit for alert StockLimitDesc=(empty) means no warning.
    0 can be used for a warning as soon as stock is empty. PhysicalStock=Physical Stock -RealStock=Real Stock +RealStock=Varastossa RealStockDesc=Physical/real stock is the stock currently in the warehouses. RealStockWillAutomaticallyWhen=The real stock will be modified according to this rule (as defined in the Stock module): VirtualStock=Virtual varastossa diff --git a/htdocs/langs/fi_FI/stripe.lang b/htdocs/langs/fi_FI/stripe.lang index 8ca2b1b040f..c14c2d42860 100644 --- a/htdocs/langs/fi_FI/stripe.lang +++ b/htdocs/langs/fi_FI/stripe.lang @@ -32,6 +32,7 @@ VendorName=Nimi myyjä CSSUrlForPaymentForm=CSS-tyylisivu url maksun muodossa NewStripePaymentReceived=New Stripe payment received NewStripePaymentFailed=New Stripe payment tried but failed +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Secret test key STRIPE_TEST_PUBLISHABLE_KEY=Publishable test key STRIPE_TEST_WEBHOOK_KEY=Webhook test key @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mo 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... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authenticatin rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/fi_FI/users.lang b/htdocs/langs/fi_FI/users.lang index a4c8f7b7cec..780bb758259 100644 --- a/htdocs/langs/fi_FI/users.lang +++ b/htdocs/langs/fi_FI/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Users and their properties DomainUser=Domain käyttäjän %s Reactivate=Uudelleenaktivoi CreateInternalUserDesc=This form allows you to create an internal user in your company/organization. To create an external user (customer, vendor etc. ..), use the button 'Create Dolibarr User' from that third-party's contact card. -InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other.

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=Lupa myönnettiin, koska periytyy yhden käyttäjän ryhmä. Inherited=Peritty UserWillBeInternalUser=Luotu käyttäjä on sisäinen käyttäjä (koska ei liity erityistä kolmannelle osapuolelle) @@ -113,3 +113,5 @@ CantDisableYourself=You can't disable your own user record ForceUserExpenseValidator=Force expense report validator ForceUserHolidayValidator=Force leave request validator ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/fi_FI/website.lang b/htdocs/langs/fi_FI/website.lang index 2a68da89c30..306041a8f3f 100644 --- a/htdocs/langs/fi_FI/website.lang +++ b/htdocs/langs/fi_FI/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=View page in new tab SetAsHomePage=Aseta kotisivuksi RealURL=Lue URL ViewWebsiteInProduction=View web site using home URLs -SetHereVirtualHost=Use with Apache/NGinx/...
    If you can create, on your web server (Apache, Nginx, ...), a dedicated Virtual Host with PHP enabled and a Root directory on
    %s
    then set the name of the virtual host you have created in the properties of web site, so the preview can be done also using this dedicated web server access instead of the internal Dolibarr server. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS=Use with PHP embedded server
    On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running
    php -S 0.0.0.0:8080 -t %s YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org CheckVirtualHostPerms=Check also that virtual host has permission %s on files into
    %s @@ -56,7 +57,7 @@ NoPageYet=No pages yet YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template SyntaxHelp=Help on specific syntax tips YouCanEditHtmlSourceckeditor=You can edit HTML source code using the "Source" button in editor. -YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Clone page/container CloneSite=Kloonaa sivusto SiteAdded=Website added @@ -76,7 +77,7 @@ BlogPost=Blog post WebsiteAccount=Website account WebsiteAccounts=Website accounts AddWebsiteAccount=Create web site account -BackToListOfThirdParty=Back to list for Third Party +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Disable website first MyContainerTitle=My web site title AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Sorry, this website is currently off line. Please 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 -OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that edits of HTML source will be possible when page content has been initialized by grabbing it from an external page ("Online" editor will NOT be available) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Only edition of HTML source is possible when content was grabbed from an external site GrabImagesInto=Grab also images found into css and page. ImagesShouldBeSavedInto=Images should be saved into directory @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 ch MainLanguage=Main language OtherLanguages=Other languages UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/fi_FI/withdrawals.lang b/htdocs/langs/fi_FI/withdrawals.lang index be3ff8c56ce..76b959d9d33 100644 --- a/htdocs/langs/fi_FI/withdrawals.lang +++ b/htdocs/langs/fi_FI/withdrawals.lang @@ -27,7 +27,7 @@ MakeWithdrawRequest=Make a direct debit payment request WithdrawRequestsDone=%s direct debit payment requests recorded ThirdPartyBankCode=Third-party bank code 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=Luokittele hyvitetään +ClassCredited=Luokittele hyvitetyksi ClassCreditedConfirm=Oletko varma, että haluat luokitella tämän vetäytymisen vastaanottamisesta kuin hyvitetty pankkitilisi? TransData=Päivämäärä Lähetetty TransMetod=Menetelmä Lähetetty @@ -50,7 +50,7 @@ StatusMotif0=Määrittelemätön StatusMotif1=Säännös insuffisante StatusMotif2=Tirage conteste StatusMotif3=No direct debit payment order -StatusMotif4=Sales Order +StatusMotif4=Myyntitilaus StatusMotif5=RIB inexploitable StatusMotif6=Huomioon ilman tasapaino StatusMotif7=Ratkaisusta diff --git a/htdocs/langs/fi_FI/zapier.lang b/htdocs/langs/fi_FI/zapier.lang new file mode 100644 index 00000000000..2a84e392559 --- /dev/null +++ b/htdocs/langs/fi_FI/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier Dolibarr:lle +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier Dolibarr-moduulille + +# +# Admin page +# +ZapierForDolibarrSetup = Zapier Dolibarr:lle asetukset diff --git a/htdocs/langs/fr_BE/admin.lang b/htdocs/langs/fr_BE/admin.lang index 6fe29d6202b..8ba2e658bdb 100644 --- a/htdocs/langs/fr_BE/admin.lang +++ b/htdocs/langs/fr_BE/admin.lang @@ -17,7 +17,5 @@ IfModuleEnabled=Note: oui ne fonctionne que si le module %s est activé Module20Name=Propales Module30Name=Factures Target=Objectif -SuppliersCommandModel=Complete template of Purchase Order -SuppliersInvoiceModel=Complete template of Vendor Invoice 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. EmailCollectorLoadThirdPartyHelp=You can use this action to use the email content to find and load an existing thirdparty in your database. The found (or created) thirdparty will be used for following actions that need it. In the parameter field you can use for example 'EXTRACT:BODY:Name:\\s([^\\s]*)' if you want to extract the name of the thirdparty from a string 'Name: name to find' found into the body. diff --git a/htdocs/langs/fr_BE/agenda.lang b/htdocs/langs/fr_BE/agenda.lang index d2102705f02..0e9fcea385a 100644 --- a/htdocs/langs/fr_BE/agenda.lang +++ b/htdocs/langs/fr_BE/agenda.lang @@ -1,5 +1,4 @@ # Dolibarr language file - Source file is en_US - agenda -AffectedTo=Assigné à ListOfActions=Liste d'événements MenuToDoActions=Tous les événements incomplets MenuDoneActions=Tous les événements terminés diff --git a/htdocs/langs/fr_BE/bills.lang b/htdocs/langs/fr_BE/bills.lang index bffa158d338..48d93ed5920 100644 --- a/htdocs/langs/fr_BE/bills.lang +++ b/htdocs/langs/fr_BE/bills.lang @@ -26,7 +26,6 @@ PaymentAmount=Montant de paiement AddBill=Créer facture ou note de crédit EnterPaymentDueToCustomer=Réaliser règlement de crédits dus au client ErrorInvoiceAvoirMustBeNegative=Erreur, une facture de type Note de crédit doit avoir un montant négatif -ShowInvoiceAvoir=Afficher note de crédit EscompteOfferedShort=Ristourne Discounts=Ristournes AddDiscount=Créer ristourne @@ -39,5 +38,5 @@ PaymentTypeShortLIQ=En espèces PaymentTypeCB=Carte de crédit PaymentTypeShortCB=Carte de crédit Cash=En espèces -PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template (old implementation of Sponge template) +PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template TerreNumRefModelDesc1=Renvoie le numéro sous la forme %syymm-nnnn pour les factures et %syymm-nnnn pour les notes de crédits où yy est l'année, mm le mois et nnnn un compteur séquentiel sans rupture et sans remise à 0 diff --git a/htdocs/langs/fr_BE/modulebuilder.lang b/htdocs/langs/fr_BE/modulebuilder.lang new file mode 100644 index 00000000000..8bbcc78a506 --- /dev/null +++ b/htdocs/langs/fr_BE/modulebuilder.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - modulebuilder +ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: diff --git a/htdocs/langs/fr_BE/products.lang b/htdocs/langs/fr_BE/products.lang new file mode 100644 index 00000000000..e6f65995020 --- /dev/null +++ b/htdocs/langs/fr_BE/products.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - products +LastModifiedProductsAndServices=%s derniers produits/services diff --git a/htdocs/langs/fr_BE/projects.lang b/htdocs/langs/fr_BE/projects.lang new file mode 100644 index 00000000000..7e42793b0e9 --- /dev/null +++ b/htdocs/langs/fr_BE/projects.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - projects +CantRemoveProject=This project can't be removed as it is referenced by some other objects (invoice, orders or other). See referers tab. diff --git a/htdocs/langs/fr_CA/admin.lang b/htdocs/langs/fr_CA/admin.lang index 0e082ab6de8..a3ecbf32f06 100644 --- a/htdocs/langs/fr_CA/admin.lang +++ b/htdocs/langs/fr_CA/admin.lang @@ -191,8 +191,6 @@ ApiExporerIs=Vous pouvez explorer et tester les API à l'URL OnlyActiveElementsAreExposed=Seuls les éléments de modules activés sont exposés ApiKey=Clé API WarningAPIExplorerDisabled=L'explorateur API a été désactivé. L'API Explorer n'est pas nécessaire pour fournir des services API. C'est un outil permettant aux développeurs de trouver / tester des API REST. Si vous avez besoin de cet outil, installez le module API REST pour l'activer. -SuppliersCommandModel=Complete template of Purchase Order -SuppliersInvoiceModel=Complete template of Vendor Invoice AccountingPeriods=Périodes de comptabilité AccountingPeriodCard=Période de comptabilité NewFiscalYear=Nouvelle période comptable diff --git a/htdocs/langs/fr_CA/bills.lang b/htdocs/langs/fr_CA/bills.lang index 910c77067a3..68989d1d124 100644 --- a/htdocs/langs/fr_CA/bills.lang +++ b/htdocs/langs/fr_CA/bills.lang @@ -31,9 +31,6 @@ ConfirmCustomerPayment=Confirmez-vous cette entrée de paiement pour %s % ConfirmSupplierPayment=Confirmez-vous cette entrée de paiement pour %s %s? ConfirmValidatePayment=Êtes-vous sûr de vouloir valider ce paiement? Aucun changement ne peut être effectué une fois le paiement validé. AmountOfBillsByMonthHT=Montant de factures par mois (no tax.) -ShowSocialContribution=Afficher charge sociale -ShowInvoiceDeposit=Afficher la facture de paiement -ShowInvoiceSituation=Montrer facture de situation AlreadyPaidNoCreditNotesNoDeposits=Déjà payé (sans notes de crédit ni acomptes) EscompteOffered=Escompte (règlement avant échéance) EscompteOfferedShort=Remise @@ -83,7 +80,7 @@ PaymentTypeShortTRA=Brouillon ChequeMaker=Émetteur du chèque/transfert DepositId=Identifiant de dépot YouMustCreateStandardInvoiceFirstDesc=Vous devez d'abord créer une facture standard et la convertir en «modèle» pour créer une nouvelle facture modèle -PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template (old implementation of Sponge template) +PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template PDFCrevetteDescription=Facture modèle PDF Crevette. Un modèle de facture complet pour les factures de situation MarsNumRefModelDesc1=Numéro de retour avec le format %syymm-nnnn pour les factures standard, %syymm-nnnn pour les factures de remplacement, %syymm-nnnn pour les factures de versement et %syymm-nnnn pour les notes de crédit où il est année, mm est le mois et nnnn est une séquence sans interruption et non Retourner à 0 CactusNumRefModelDesc1=Numéro de retour avec le format %syymm-nnnn pour les factures standard, %syymm-nnnn pour les notes de crédit et %syymm-nnnn pour les factures de versement de paiement où yy est l'année, mm est le mois et nnnn est une séquence sans interruption et aucun retour à 0 diff --git a/htdocs/langs/fr_CA/categories.lang b/htdocs/langs/fr_CA/categories.lang index ddd510a52e0..71116b8842c 100644 --- a/htdocs/langs/fr_CA/categories.lang +++ b/htdocs/langs/fr_CA/categories.lang @@ -22,6 +22,4 @@ ProductsCategoriesShort=Tags/catégories de produits MembersCategoriesShort=Tags/catégories de membres AccountsCategoriesShort=Étiquettes / catégories de comptes ProjectsCategoriesShort=Projets Tags / catégories -ThisCategoryHasNoAccount=Cette catégorie ne contient aucun compte. -ThisCategoryHasNoProject=Cette catégorie ne contient aucun projet. CatProJectLinks=Liens entre projets et tags / catégories diff --git a/htdocs/langs/fr_CA/compta.lang b/htdocs/langs/fr_CA/compta.lang index d90041a728d..9426cca9d08 100644 --- a/htdocs/langs/fr_CA/compta.lang +++ b/htdocs/langs/fr_CA/compta.lang @@ -45,7 +45,6 @@ ConfirmDeleteSocialContribution=Êtes-vous sûr de vouloir supprimer cette charg ExportDataset_tax_1=Charges sociales et paiements CalcModeVATDebt=Mode %sTPS/TVH sur débit%s. CalcModeVATEngagement=Mode %s TPS/TVH sur encaissement%s. -RulesResultDue=- Il comprend les factures, les dépenses, la TVA, les dons, qu'ils soient payés ou non. Comprend également les salaires payés.
    - Il est basé sur la date de validation des factures et la TVA et à la date d'échéance des dépenses. Pour les salaires définis avec le module Salaire, la date de valeur du paiement est utilisée. RulesResultInOut=- Il comprend les paiements réels effectués sur les factures, les dépenses, la TVA et les salaires.
    - Il est basé sur les dates de paiement des factures, des dépenses, de la TVA et des salaires. La date de donation pour le don. DepositsAreIncluded=- Les factures de versement sont incluses LT1ReportByCustomersES=Rapport par tiers des RE (TVA) diff --git a/htdocs/langs/fr_CA/donations.lang b/htdocs/langs/fr_CA/donations.lang index 9102ba55b8a..d4178883d73 100644 --- a/htdocs/langs/fr_CA/donations.lang +++ b/htdocs/langs/fr_CA/donations.lang @@ -2,7 +2,6 @@ Donor=Donneur DeleteADonation=Supprimer un don ConfirmDeleteADonation=Êtes-vous sûr de vouloir supprimer ce don? -ShowDonation=Montrer le don DonationsArea=Domaine de donations DonationStatusPromiseNotValidated=Projet de promesse DonationStatusPaid=Dons reçus diff --git a/htdocs/langs/fr_CA/exports.lang b/htdocs/langs/fr_CA/exports.lang index 9b9a43adfb2..f194dc86615 100644 --- a/htdocs/langs/fr_CA/exports.lang +++ b/htdocs/langs/fr_CA/exports.lang @@ -14,7 +14,6 @@ FieldsTitle=Titre des champs FieldTitle=Titre du champ Sheet=Drap NoImportableData=Aucune donnée importable (aucun module avec des définitions permettant d'importer des données) -SQLUsedForExport=SQL Request used to extract data LineLabel=Étiquette de ligne LineDescription=Description de la ligne LineUnitPrice=Prix ​​unitaire de la ligne diff --git a/htdocs/langs/fr_CA/install.lang b/htdocs/langs/fr_CA/install.lang index fce602a3195..b9fa031ae48 100644 --- a/htdocs/langs/fr_CA/install.lang +++ b/htdocs/langs/fr_CA/install.lang @@ -1,7 +1,6 @@ # Dolibarr language file - Source file is en_US - install ErrorPHPDoesNotSupportCurl=Votre installation PHP ne prend pas en charge Curl. AdminLoginCreatedSuccessfuly=Connexion administrateur Dolibarr '%s' créé avec succès. -DirectoryRecommendation=IMPORTANT: You must use a directory that is outside of the web pages (so do not use a subdirectory of previous parameter). FailedToCreateAdminLogin=Impossible de créer un compte administrateur Dolibarr. MigrationContractsIncoherentCreationDateUpdateSuccess=Correction mauvaise valeur de la date de création du contrat effectuée avec succès MigrationBankTransfertsUpdate=Mettre à jour les liens entre la saisie bancaire et un virement bancaire diff --git a/htdocs/langs/fr_CA/main.lang b/htdocs/langs/fr_CA/main.lang index 212af6e5318..fdb14636cb9 100644 --- a/htdocs/langs/fr_CA/main.lang +++ b/htdocs/langs/fr_CA/main.lang @@ -114,6 +114,7 @@ RelatedObjects=Objets associés FrontOffice=Front Office ExportFilteredList=Export liste filtrée ExportList=Liste des exportations +ExportOptions=Options d'exportation GroupBy=Par groupe... ViewFlatList=Afficher la liste forfaitaire RemoveString=Supprimer la chaîne '%s' diff --git a/htdocs/langs/fr_CA/other.lang b/htdocs/langs/fr_CA/other.lang index e19e7944a15..ba425feb946 100644 --- a/htdocs/langs/fr_CA/other.lang +++ b/htdocs/langs/fr_CA/other.lang @@ -110,4 +110,3 @@ LibraryVersion=Version de la bibliothèque ExportableDatas=Données à l'exportation NoExportableData=Aucune donnée exportable (aucun module avec des données exportables chargées ou des autorisations manquantes) WebsiteSetup=Site de configuration du module -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. diff --git a/htdocs/langs/fr_CA/projects.lang b/htdocs/langs/fr_CA/projects.lang index 7b2d5aad08b..f92612aa8bf 100644 --- a/htdocs/langs/fr_CA/projects.lang +++ b/htdocs/langs/fr_CA/projects.lang @@ -88,7 +88,6 @@ AddElement=Lien vers l'élément PlannedWorkload=Charge de travail planifiée ProjectReferers=Articles connexes ProjectMustBeValidatedFirst=Le projet doit d'abord être validé -FirstAddRessourceToAllocateTime=Affectez une ressource utilisateur à la tâche pour allouer du temps InputPerDay=Entrée par jour InputPerWeek=Entrée par semaine TimeAlreadyRecorded=Il s'agit du temps passé déjà enregistré pour cette tâche / jour et utilisateur %s diff --git a/htdocs/langs/fr_CH/accountancy.lang b/htdocs/langs/fr_CH/accountancy.lang new file mode 100644 index 00000000000..9827b9d3795 --- /dev/null +++ b/htdocs/langs/fr_CH/accountancy.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - accountancy +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 diff --git a/htdocs/langs/fr_CH/admin.lang b/htdocs/langs/fr_CH/admin.lang new file mode 100644 index 00000000000..27c312f77d7 --- /dev/null +++ b/htdocs/langs/fr_CH/admin.lang @@ -0,0 +1,5 @@ +# Dolibarr language file - Source file is en_US - admin +MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the maximum filesize for upload to %s %s, irrespective of the value of this parameter +Module56Name=Telephony +Module56Desc=Telephony integration +EmailCollectorLoadThirdPartyHelp=You can use this action to use the email content to find and load an existing thirdparty in your database. The found (or created) thirdparty will be used for following actions that need it. In the parameter field you can use for example 'EXTRACT:BODY:Name:\\s([^\\s]*)' if you want to extract the name of the thirdparty from a string 'Name: name to find' found into the body. diff --git a/htdocs/langs/fr_CH/modulebuilder.lang b/htdocs/langs/fr_CH/modulebuilder.lang new file mode 100644 index 00000000000..8bbcc78a506 --- /dev/null +++ b/htdocs/langs/fr_CH/modulebuilder.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - modulebuilder +ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: diff --git a/htdocs/langs/fr_CH/projects.lang b/htdocs/langs/fr_CH/projects.lang new file mode 100644 index 00000000000..7e42793b0e9 --- /dev/null +++ b/htdocs/langs/fr_CH/projects.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - projects +CantRemoveProject=This project can't be removed as it is referenced by some other objects (invoice, orders or other). See referers tab. diff --git a/htdocs/langs/fr_CI/accountancy.lang b/htdocs/langs/fr_CI/accountancy.lang new file mode 100644 index 00000000000..9827b9d3795 --- /dev/null +++ b/htdocs/langs/fr_CI/accountancy.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - accountancy +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 diff --git a/htdocs/langs/fr_CI/admin.lang b/htdocs/langs/fr_CI/admin.lang new file mode 100644 index 00000000000..27c312f77d7 --- /dev/null +++ b/htdocs/langs/fr_CI/admin.lang @@ -0,0 +1,5 @@ +# Dolibarr language file - Source file is en_US - admin +MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the maximum filesize for upload to %s %s, irrespective of the value of this parameter +Module56Name=Telephony +Module56Desc=Telephony integration +EmailCollectorLoadThirdPartyHelp=You can use this action to use the email content to find and load an existing thirdparty in your database. The found (or created) thirdparty will be used for following actions that need it. In the parameter field you can use for example 'EXTRACT:BODY:Name:\\s([^\\s]*)' if you want to extract the name of the thirdparty from a string 'Name: name to find' found into the body. diff --git a/htdocs/langs/fr_CI/main.lang b/htdocs/langs/fr_CI/main.lang new file mode 100644 index 00000000000..2e691473326 --- /dev/null +++ b/htdocs/langs/fr_CI/main.lang @@ -0,0 +1,21 @@ +# Dolibarr language file - Source file is en_US - main +DIRECTION=ltr +FONTFORPDF=helvetica +FONTSIZEFORPDF=10 +SeparatorDecimal=. +SeparatorThousand=, +FormatDateShort=%m/%d/%Y +FormatDateShortInput=%m/%d/%Y +FormatDateShortJava=MM/dd/yyyy +FormatDateShortJavaInput=MM/dd/yyyy +FormatDateShortJQuery=mm/dd/yy +FormatDateShortJQueryInput=mm/dd/yy +FormatHourShortJQuery=HH:MI +FormatHourShort=%I:%M %p +FormatHourShortDuration=%H:%M +FormatDateTextShort=%b %d, %Y +FormatDateText=%B %d, %Y +FormatDateHourShort=%m/%d/%Y %I:%M %p +FormatDateHourSecShort=%m/%d/%Y %I:%M:%S %p +FormatDateHourTextShort=%b %d, %Y, %I:%M %p +FormatDateHourText=%B %d, %Y, %I:%M %p diff --git a/htdocs/langs/fr_CI/modulebuilder.lang b/htdocs/langs/fr_CI/modulebuilder.lang new file mode 100644 index 00000000000..8bbcc78a506 --- /dev/null +++ b/htdocs/langs/fr_CI/modulebuilder.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - modulebuilder +ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: diff --git a/htdocs/langs/fr_CI/projects.lang b/htdocs/langs/fr_CI/projects.lang new file mode 100644 index 00000000000..7e42793b0e9 --- /dev/null +++ b/htdocs/langs/fr_CI/projects.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - projects +CantRemoveProject=This project can't be removed as it is referenced by some other objects (invoice, orders or other). See referers tab. diff --git a/htdocs/langs/fr_CM/accountancy.lang b/htdocs/langs/fr_CM/accountancy.lang new file mode 100644 index 00000000000..9827b9d3795 --- /dev/null +++ b/htdocs/langs/fr_CM/accountancy.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - accountancy +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 diff --git a/htdocs/langs/fr_CM/admin.lang b/htdocs/langs/fr_CM/admin.lang new file mode 100644 index 00000000000..27c312f77d7 --- /dev/null +++ b/htdocs/langs/fr_CM/admin.lang @@ -0,0 +1,5 @@ +# Dolibarr language file - Source file is en_US - admin +MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the maximum filesize for upload to %s %s, irrespective of the value of this parameter +Module56Name=Telephony +Module56Desc=Telephony integration +EmailCollectorLoadThirdPartyHelp=You can use this action to use the email content to find and load an existing thirdparty in your database. The found (or created) thirdparty will be used for following actions that need it. In the parameter field you can use for example 'EXTRACT:BODY:Name:\\s([^\\s]*)' if you want to extract the name of the thirdparty from a string 'Name: name to find' found into the body. diff --git a/htdocs/langs/fr_CM/main.lang b/htdocs/langs/fr_CM/main.lang new file mode 100644 index 00000000000..2e691473326 --- /dev/null +++ b/htdocs/langs/fr_CM/main.lang @@ -0,0 +1,21 @@ +# Dolibarr language file - Source file is en_US - main +DIRECTION=ltr +FONTFORPDF=helvetica +FONTSIZEFORPDF=10 +SeparatorDecimal=. +SeparatorThousand=, +FormatDateShort=%m/%d/%Y +FormatDateShortInput=%m/%d/%Y +FormatDateShortJava=MM/dd/yyyy +FormatDateShortJavaInput=MM/dd/yyyy +FormatDateShortJQuery=mm/dd/yy +FormatDateShortJQueryInput=mm/dd/yy +FormatHourShortJQuery=HH:MI +FormatHourShort=%I:%M %p +FormatHourShortDuration=%H:%M +FormatDateTextShort=%b %d, %Y +FormatDateText=%B %d, %Y +FormatDateHourShort=%m/%d/%Y %I:%M %p +FormatDateHourSecShort=%m/%d/%Y %I:%M:%S %p +FormatDateHourTextShort=%b %d, %Y, %I:%M %p +FormatDateHourText=%B %d, %Y, %I:%M %p diff --git a/htdocs/langs/fr_CM/modulebuilder.lang b/htdocs/langs/fr_CM/modulebuilder.lang new file mode 100644 index 00000000000..8bbcc78a506 --- /dev/null +++ b/htdocs/langs/fr_CM/modulebuilder.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - modulebuilder +ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: diff --git a/htdocs/langs/fr_CM/projects.lang b/htdocs/langs/fr_CM/projects.lang new file mode 100644 index 00000000000..7e42793b0e9 --- /dev/null +++ b/htdocs/langs/fr_CM/projects.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - projects +CantRemoveProject=This project can't be removed as it is referenced by some other objects (invoice, orders or other). See referers tab. diff --git a/htdocs/langs/fr_FR/accountancy.lang b/htdocs/langs/fr_FR/accountancy.lang index eece6bb3014..0263549e3f2 100644 --- a/htdocs/langs/fr_FR/accountancy.lang +++ b/htdocs/langs/fr_FR/accountancy.lang @@ -2,7 +2,7 @@ Accountancy=Comptabilité Accounting=Comptabilité ACCOUNTING_EXPORT_SEPARATORCSV=Séparateur de colonnes pour le fichier exporté -ACCOUNTING_EXPORT_DATE=Format de date pour le fichier d'exportation +ACCOUNTING_EXPORT_DATE=Format de date pour le fichier d'export ACCOUNTING_EXPORT_PIECE=Exporter la référence de la pièce ? ACCOUNTING_EXPORT_GLOBAL_ACCOUNT=Exporter avec les lignes regroupées ? ACCOUNTING_EXPORT_LABEL=Exporter le libellé @@ -93,7 +93,7 @@ AccountAccountingSuggest=Code comptable suggéré MenuDefaultAccounts=Comptes par défaut MenuBankAccounts=Comptes bancaires MenuVatAccounts=Comptes TVA -MenuTaxAccounts=Comptes charges +MenuTaxAccounts=Comptes charges soc./fisc. MenuExpenseReportAccounts=Comptes notes de frais MenuLoanAccounts=Comptes emprunts MenuProductsAccounts=Comptes produits @@ -121,6 +121,7 @@ InvoiceLinesDone=Lignes de factures liées ExpenseReportLines=Lignes de notes de frais à lier ExpenseReportLinesDone=Lignes de notes de frais liées IntoAccount=Lier ligne avec le compte comptable +TotalForAccount=Total for accounting account Ventilate=Lier @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Compte comptable pour l'enregistrement des dons ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Compte comptable pour enregistrer les adhésions ACCOUNTING_PRODUCT_BUY_ACCOUNT=Compte comptable par défaut pour les produits achetés (utilisé si non défini dans la fiche produit) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Compte comptable par défaut pour les produits achetés dans la CEE (utilisé si non défini dans la fiche produit) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Compte comptable par défaut pour les produits achetés et importés hors de la CEE (utilisé si non défini dans la fiche produit) ACCOUNTING_PRODUCT_SOLD_ACCOUNT=Compte comptable par défaut pour les produits vendus (utilisé si non défini dans la fiche produit) ACCOUNTING_PRODUCT_SOLD_INTRA_ACCOUNT=Code comptable par défaut pour les produits vendus dans la CEE (utilisé si non définie dans la fiche produit) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Code comptable par défaut pour les produits vendus et exportés hors de la CEE (utilisé si non définie dans la fiche produit) + ACCOUNTING_SERVICE_BUY_ACCOUNT=Compte comptable par défaut pour les services achetés (utilisé si non défini dans la fiche service) +ACCOUNTING_SERVICE_BUY_INTRA_ACCOUNT=Compte comptable par défaut pour les services achetés dans la CEE (utilisé si non défini dans la fiche service) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Compte comptable par défaut pour les services achetés et importés hors de la CEE (utilisé si non défini dans la fiche service) ACCOUNTING_SERVICE_SOLD_ACCOUNT=Compte comptable par défaut pour les services vendus (utilisé si non défini dans la fiche service) ACCOUNTING_SERVICE_SOLD_INTRA_ACCOUNT=Compte comptable par défaut pour les services vendus dans la CEE (utilisé si non défini dans la fiche service) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Code comptable par défaut pour les services vendus et exportés hors de la CEE (utilisé si non définie dans la fiche produit) @@ -228,11 +234,15 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Tiers inconnu et ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Compte tiers non défini ou inconnu. Erreur bloquante. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Compte tiers inconnu et compte d'attente non défini. Erreur blocante. PaymentsNotLinkedToProduct=Paiement non lié à un produit / service -ShowOpeningBalance=Show opening balance -HideOpeningBalance=Hide opening balance +OpeningBalance=Opening balance +ShowOpeningBalance=Afficher balance d'ouverture +HideOpeningBalance=Cacher balance d'ouverture +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Groupe de comptes comptables -PcgtypeDesc=Group 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. +PcgtypeDesc=Les groupes de comptes sont utilisés comme critères de filtre et de regroupement prédéfinis pour certains rapports de comptabilité. Par exemple, «INCOME» ou «EXPENSE» sont utilisés en tant que groupes pour la comptabilité afin de générer le rapport dépenses / revenus. + +Reconcilable=Rapprochable TotalVente=Total chiffre affaires hors taxe TotalMarge=Total marge @@ -308,10 +318,12 @@ 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_LDCompta10=Export pour LD Compta (v10 et supérieure) Modelcsv_openconcerto=Export pour OpenConcerto (Test) Modelcsv_configurable=Export configurable Modelcsv_FEC=Export FEC Modelcsv_Sage50_Swiss=Export pour Sage 50 Suisse +Modelcsv_winfic=Export pour Winfic - eWinfic - WinSis Compta ChartofaccountsId=Id plan comptable ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Mode ventes OptionModeProductSellIntra=Mode ventes exportées dans la CEE OptionModeProductSellExport=Mode ventes exportées dans d'autres pays OptionModeProductBuy=Mode achats +OptionModeProductBuyIntra=Mode achats importés depuis la CEE +OptionModeProductBuyExport=Mode achats importés dans d'autres pays OptionModeProductSellDesc=Afficher tous les produits/services avec le compte comptable pour les ventes. OptionModeProductSellIntraDesc=Afficher tous les produits avec un compte comptabilité pour les ventes dans la CEE. OptionModeProductSellExportDesc=Afficher tous les produits avec un compte comptable pour les autres ventes à les autres pays. OptionModeProductBuyDesc=Afficher tous les produits/services avec le compte comptable pour les achats. +OptionModeProductBuyIntraDesc=Afficher tous les produits avec un compte comptable pour les achats dans les pays CEE. +OptionModeProductBuyExportDesc=Afficher tous les produits avec un compte comptable pour les achats dans les pays hors CEE. CleanFixHistory=Effacer les données comptables des lignes qui n'existent pas dans le plan comptable CleanHistory=Réinitialiser tous les liens pour l'année sélectionnée PredefinedGroups=Groupes prédéfinis @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Compte supprimé du groupe SaleLocal=Vente locale SaleExport=Vente export SaleEEC=Vente dans la CEE +SaleEECWithVAT=Vente dans la CEE avec un taux de TVA non nul, on considère qu'il s'agit d'une vente intracommunutaire à un assujetti à la TVA et le compte comptable suggéré est le compte comptable de vente classique. +SaleEECWithoutVATNumber=Vente dans la CEE avec un taux de TVA nul mais sans numéro de TVA intracommunutaire renseigné dans la fiche du tiers. Nous forçons ainsi le compte comptable de vente classique. Il est nécessaire de renseigner le numéro de TVA intracommunautaire dans la fiche du tiers ou changer le compte comptable de vente si nécessaire. ## Dictionary Range=Plage de comptes @@ -358,7 +376,7 @@ UseMenuToSetBindindManualy=Lignes non encore liées, utilisez le menu Exemple pour ClamWin: --database = "C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=Configuration du module Comptabilité UserSetup=Configuration de la gestion des utilisateurs MultiCurrencySetup=Configuration du module Multi-devise @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Fonction désactivée dans la démo FeatureAvailableOnlyOnStable=Fonction disponible uniquement sur les versions officielles stables BoxesDesc=Les widgets sont des composants montrant des informations que vous pouvez ajouter à vos pages pour les personnaliser. Vous pouvez choisir de les afficher ou non en sélectionnant la page cible et en cliquant sur "Activer" ou "Désactiver". OnlyActiveElementsAreShown=Seuls les éléments en rapport avec un module actif sont présentés. -ModulesDesc=Les modules Dolibarr définissent quelles fonctionnalités sont disponibles dans le logiciel. Certains modules / applications nécessitent, après activation, d'accorder des autorisations aux utilisateurs. Cliquez sur le bouton activé/désactivé (en fin de ligne) pour activer un module/application. +ModulesDesc=Les modules Dolibarr définissent quelles fonctionnalités sont disponibles dans le logiciel. Certains modules / applications nécessitent, après activation, d'accorder des autorisations aux utilisateurs. Cliquez sur le bouton activé/désactivé %s pour activer un module/application. ModulesMarketPlaceDesc=D'autres modules/extensions sont disponibles en téléchargement sur des sites externes sur Internet... ModulesDeployDesc=Si les permissions de votre système de fichier le permettent , vous pouvez utiliser cet outil pour déployer un module externe. Le module sera alors visible dans l'onglet %s. ModulesMarketPlaces=Rechercher un module/application externe @@ -212,6 +213,7 @@ CompatibleUpTo=Compatible avec la version %s NotCompatible=Ce module n'est pas compatible avec votre version %s de Dolibarr (version min. %s - version max. %s). CompatibleAfterUpdate=Ce module nécessite une mise à jour de Dolibarr %s (Version min. %s - Version max. %s). SeeInMarkerPlace=Voir dans la boutique +SeeSetupOfModule=Voir la configuration du module %s Updated=Mise à jour effectuée Nouveauté=Nouveauté AchatTelechargement=Acheter/télécharger @@ -221,6 +223,7 @@ DoliPartnersDesc=Liste de quelques sociétés qui peuvent fournir/développer de WebSiteDesc=Sites fournisseurs à consulter pour trouver plus de modules (extensions)... DevelopYourModuleDesc=Quelques pistes pour développer votre propre module/application... URL=URL +RelativeURL=URL relative BoxesAvailable=Widgets disponibles BoxesActivated=Widgets activés ActivateOn=Activer sur @@ -328,7 +331,7 @@ SetupIsReadyForUse=L"installation du module est terminée. Il est cependant néc NotExistsDirect=Le dossier racine alternatif n'est pas défini.
    InfDirAlt=Depuis les versions 3, il est possible de définir un dossier racine alternatif. Cela permet d'installer modules et thèmes additionnels dans un répertoire dédié.
    Créer un dossier racine alternatif à Dolibarr (ex : custom).
    InfDirExample=
    Ensuite, déclarez le dans le fichier conf.php
    $dolibarr_main_url_root_alt='/custom'
    $dolibarr_main_document_root_alt='/path/of/dolibarr/htdocs/custom'
    Si ces lignes sont commentées avec un symbole "#" ou "//", activer les en supprimant le caractère "#" ou "//". -YouCanSubmitFile=You can upload the .zip file of module package from here: +YouCanSubmitFile=Vous pouvez téléverser le fichier .zip du package du module à partir d'ici: CurrentVersion=Version actuelle de Dolibarr CallUpdatePage=Aller à la page de mise à jour de la structure et des données de la base : %s. LastStableVersion=Dernière version stable disponible @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Cases à cocher ExtrafieldCheckBoxFromList=Cases à cocher issues d'une table ExtrafieldLink=Lien vers un objet ComputedFormula=Champ calculé -ComputedFormulaDesc=Vous pouvez entrer ici une formule utilisant les propriétés objet ou tout code PHP pour obtenir des valeurs dynamiques. Vous pouvez utiliser toute formule compatible PHP, incluant l'opérateur conditionnel "?", et les objets globaux : $db, $conf, $langs, $mysoc, $user, $object.
    ATTENTION : Seulement quelques propriétés de l'objet $object pourraient être disponibles. Si vous avez besoin de propriétés non chargées, créez vous même une instance de l'objet dans votre formule, comme dans le deuxième exemple.
    Utiliser un champs calculé signifie que vous ne pouvez pas entrer vous même toute valeur à partir de l'interface. Aussi, s'il y a une erreur de syntaxe, la formule pourrait ne rien retourner.

    Exemple de formule:
    $object->id < 10 ? round($object->id / 2, 2) : ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Exemple pour recharger l'objet:
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id : ($obj->rowid ? $obj->rowid : $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5 : '-1'

    Un autre exemple de formule pour forcer le rechargement d'un objet et de son objet parent:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref : 'Objet parent projet non trouvé' +ComputedFormulaDesc=Vous pouvez entrer ici une formule utilisant les propriétés objet ou tout code PHP pour obtenir des valeurs dynamiques. Vous pouvez utiliser toute formule compatible PHP, incluant l'opérateur conditionnel "?", et les objets globaux suivants : $db, $conf, $langs, $mysoc, $user, $object.
    ATTENTION : Seulement quelques propriétés de l'objet $object pourraient être disponibles. Si vous avez besoin de propriétés non chargées, créez vous même une instance de l'objet dans votre formule, comme dans le deuxième exemple.
    Utiliser un champs calculé signifie que vous ne pouvez pas entrer vous même toute valeur à partir de l'interface. Aussi, s'il y a une erreur de syntaxe, la formule pourrait ne rien retourner.

    Exemple de formule:
    $object->id < 10 ? round($object->id / 2, 2) : ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Exemple pour recharger l'objet:
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id : ($obj->rowid ? $obj->rowid : $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5 : '-1'

    Un autre exemple de formule pour forcer le rechargement d'un objet et de son objet parent:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref : 'Objet parent projet non trouvé' Computedpersistent=Stocker le champ calculé ComputedpersistentDesc=Les champs supplémentaires calculés seront stockés dans la base de données. Toutefois, la valeur ne sera recalculée que lorsque l'objet de ce champ sera modifié. Si le champ calculé dépend d'autres objets ou de données globales, cette valeur peut être fausse !! ExtrafieldParamHelpPassword=Laissez ce champ vide signifie que la valeur sera stockée sans cryptage (le champ doit juste être caché avec des étoiles sur l'écran).
    Définissez la valeur 'auto' pour utiliser la règle de cryptage par défaut pour enregistrer le mot de passe dans la base de données (ensuite la valeur utilisée sera le hash uniquement, sans moyen de retrouver la valeur d'origine) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Laisser ce champ vide pour utiliser la valeur par défaut DefaultLink=Lien par défaut SetAsDefault=Définir par défaut ValueOverwrittenByUserSetup=Attention, cette valeur peut être écrasée par une valeur spécifique à la configuration de l'utilisateur (chaque utilisateur pouvant avoir sa propre URL « clicktodial ») -ExternalModule=Module externe - Installé dans le répertoire %s +ExternalModule=Module externe +InstalledInto=Installé dans le répertoire %s BarcodeInitForthird-parties=Initialisation du code-barre en masse pour les tiers BarcodeInitForProductsOrServices=Initialisation ou purge en masse des codes-barre des produits ou services CurrentlyNWithoutBarCode=Actuellement, vous avez %s enregistrements sur %s %s sans code barre défini. @@ -546,7 +550,7 @@ Module58Desc=Intégration d'un système de « ClickToDial » (Asterisk, …) Module59Name=Bookmark4u Module59Desc=Ajoute une fonction pour générer un compte Bookmark4u depuis un compte Dolibarr Module60Name=Autocollants -Module60Desc=Gestion des autocollants +Module60Desc=Gestion des pages d'autocollants Module70Name=Interventions Module70Desc=Gestion des interventions chez les tiers Module75Name=Notes de frais @@ -642,7 +646,7 @@ Module50000Desc=Module permettant d'offrir une page de paiement en ligne par car Module50100Name=PdV SimplePOS Module50100Desc=Point de vente SimplePOS (caisse enregistreuse simple) Module50150Name=PdV TakePOS -Module50150Desc=Point of Sale module TakePOS (touchscreen POS, for shops, bars or restaurants). +Module50150Desc=Point de Vente TakePOS (Caisse enregistreuse à écran tactile, pour magasins, bars, restaurants, etc). Module50200Name=Paypal Module50200Desc=Module permettant d'offrir une page de paiement en ligne par carte de crédit avec PayBox. Ceci peut être utilisé par les clients pour faire des paiements de montants libre ou pour des paiements d'un objet particulier de Dolibarr (facture, commande, ...) Module50300Name=Stripe @@ -881,7 +885,7 @@ Permission1251=Lancer des importations en masse dans la base (chargement de donn Permission1321=Exporter les factures clients, attributs et règlements Permission1322=Rouvrir une facture payée Permission1421=Exporter les commandes clients et attributs -Permission2401=Lire les actions (événements ou tâches) liées à son compte utilisateur (si propriétaire de l’événement ou lui est assigné) +Permission2401=Lire les actions (événements ou tâches) liées à son compte utilisateur (si propriétaire de l’événement ou simplement assigné à l'événement) Permission2402=Créer/modifier des actions (événements ou tâches) liées à son compte utilisateur (si propriétaire de l'événement) Permission2403=Supprimer des actions (événements ou tâches) liées à son compte utilisateur (si propriétaire de l'événement) Permission2411=Lire les actions (événements ou tâches) des autres @@ -988,6 +992,7 @@ VATIsNotUsedDesc=Le taux de TVA proposé par défaut est 0. C'est le cas d'assoc VATIsUsedExampleFR=En France, cela signifie que les entreprises ou les organisations sont assujetis à la tva (réel ou normal). VATIsNotUsedExampleFR=En France, il s'agit des associations ne déclarant pas de TVA ou sociétés, organismes ou professions libérales ayant choisi le régime fiscal micro entreprise (TVA en franchise) et payant une TVA en franchise sans faire de déclaration de TVA. Ce choix fait de plus apparaître la mention "TVA non applicable - art-293B du CGI" sur les factures. ##### Local Taxes ##### +TypeOfSaleTaxes=Type de taxe de vente LTRate=Taux LocalTax1IsNotUsed=Non assujeti LocalTax1IsUsedDesc=Utilisation d'un 2ème type taxe (autre que le premier) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=Le IRPF proposé par défaut lors de la création de propa LocalTax2IsNotUsedDescES=L'IRPF proposé par défaut est 0. Fin de règle. LocalTax2IsUsedExampleES=En Espagne, ce sont des professionnels autonomes et indépendants qui offrent des services, et des sociétés qui ont choisi le système fiscal du module. LocalTax2IsNotUsedExampleES=En Espagne, ce sont des sociétés qui ne sont pas soumises au système fiscal du module. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Utilisez un timbre fiscal +UseRevenueStampExample=La valeur du timbre fiscal est définie par défaut dans la configuration des dictionnaires (%s - %s - %s) CalcLocaltax=Rapports sur les taxes locales CalcLocaltax1=Ventes - Achats CalcLocaltax1Desc=Les rapports des Taxes locales sont calculées avec la différence entre les taxes locales de ventes et les taxes locales d'achats @@ -1018,10 +1026,11 @@ CalcLocaltax2=Achats CalcLocaltax2Desc=Le Rapport des Taxes locales sont le total des taxes locales d'achats CalcLocaltax3=Ventes CalcLocaltax3Desc=Le Rapports des Taxes locales sont le total des taxes locales de ventes +NoLocalTaxXForThisCountry=Selon la configuration des taxes (voir %s - %s - %s), votre pays n'a pas besoin d'utiliser ce type de taxe LabelUsedByDefault=Libellé qui sera utilisé si aucune traduction n'est trouvée pour ce code LabelOnDocuments=Libellé sur les documents LabelOrTranslationKey=Libellé ou clé de traduction -ValueOfConstantKey=Value of a configuration constant +ValueOfConstantKey=Valeur de constante de configuration NbOfDays=Nb. de jours AtEndOfMonth=En fin de mois CurrentNext=Current/Next @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Note de frais à approuver Delays_MAIN_DELAY_HOLIDAYS=Demandes de congés à approuver SetupDescription1=L'espace configuration permet de réaliser le paramétrage initial afin de pouvoir commencer à utiliser l'application. SetupDescription2=Les deux étapes obligatoires sont les deux premières entrées dans le menu de configuration, soit -SetupDescription3=%s -> %s
    Paramètres basiques pour personnaliser le comportement par défaut du logiciel (comportement lié au pays par exemple). -SetupDescription4= %s -> %s
    Ce logiciel est un ensemble de plusieurs modules/applications, tous plus ou moins indépendants. Les fonctionnalités en rapport avec vos besoins doivent être activées et configurées. De nouvelles entrées/options seront ajoutés aux menus avec l'activation d'un module. +SetupDescription3=%s -> %s

    Paramètres basiques pour personnaliser le comportement par défaut du logiciel (comportement lié au pays par exemple). +SetupDescription4= %s -> %s

    Ce logiciel est un ensemble de plusieurs modules/applications. Les fonctionnalités en rapport avec vos besoins doivent être activées et configurées. Les entrées menus seront ajoutées avec l'activation de ces modules. SetupDescription5=Les autres entrées de configuration gèrent des paramètres facultatifs. LogEvents=Événements d'audit de sécurité Audit=Audit de sécurité @@ -1128,7 +1137,7 @@ LogEventDesc=Vous pouvez activer ici l'historique des événements d'audit de s AreaForAdminOnly=Les paramètres d'installation ne peuvent être remplis que par les utilisateurs administrateurs uniquement. SystemInfoDesc=Les informations systèmes sont des informations techniques diverses accessibles en lecture seule aux administrateurs uniquement. SystemAreaForAdminOnly=Cet espace n'est accessible qu'aux utilisateurs de type administrateur. Aucune permission Dolibarr ne permet d'étendre le cercle des utilisateurs autorisés à cet espace. -CompanyFundationDesc=Modifiez les informations de la société/organisation. Cliquez sur le bouton "%s" en bas de la page. +CompanyFundationDesc=Modifiez les informations de votre société/organisation. Cliquez sur le bouton "%s" en bas de page pour sauvegarder. AccountantDesc=Si vous avez un comptable externe, vous pouvez saisir ici ses informations. AccountantFileNumber=Code comptable DisplayDesc=Vous pouvez choisir ici tous les paramètres liés à l'apparence de Dolibarr @@ -1144,7 +1153,7 @@ TriggerAlwaysActive=Déclencheurs de ce fichier toujours actifs, quels que soien TriggerActiveAsModuleActive=Déclencheurs de ce fichier actifs car le module %s est actif. GeneratedPasswordDesc=Définissez ici quelle règle vous voulez utiliser pour générer les mots de passe quand vous demandez à générer un nouveau mot de passe DictionaryDesc=Définissez ici les données de référence. Vous pouvez compléter/modifier les données prédéfinies avec les vôtres. -ConstDesc=Cette page vous permet d'éditer (remplacer) des paramètres non disponibles dans d'autres pages. Il s'agit principalement de paramètres réservés pour les développeurs et dépannage avancé uniquement. +ConstDesc=Cette page vous permet d'éditer (remplacer) des paramètres non disponibles dans d'autres pages. Il s'agit principalement de paramètres réservés pour les développeurs et dépannage avancé uniquement. Consultez ici la liste des options. MiscellaneousDesc=Définissez ici les autres paramètres en rapport avec la sécurité. LimitsSetup=Configuration des limites et précisions LimitsDesc=Vous pouvez définir ici les limites, précisions et optimisations utilisées par Dolibarr @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Règle pour la génération des mots de passe proposé DisableForgetPasswordLinkOnLogonPage=Cacher le lien "Mot de passe oublié" sur la page de connexion UsersSetup=Configuration du module utilisateurs UserMailRequired=Email requis pour créer un nouvel utilisateur +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Modèles de documents pour les documents générés à partir de la fiche utilisateur +GroupsDocModules=Modèles de documents pour les documents générés à partir de la fiche d'un groupe ##### HRM setup ##### HRMSetup=Configuration du module GRH ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Modèle de document de factures BillsPDFModulesAccordindToInvoiceType=Modèles de documents de facturation en fonction du type de facture PaymentsPDFModules=Modèle de document pour les règlements ForceInvoiceDate=Forcer la date de facturation à la date de validation (seulement de Brouillon à Impayée) -SuggestedPaymentModesIfNotDefinedInInvoice=Mode de paiement suggéré par défaut si non défini au niveau de la facture +SuggestedPaymentModesIfNotDefinedInInvoice=Mode de paiement suggéré sur la facture par défaut s'il n'est pas défini sur la facture SuggestPaymentByRIBOnAccount=Proposer paiement par virement sur le compte SuggestPaymentByChequeToAddress=Proposer paiement par chèque à l'ordre et adresse de FreeLegalTextOnInvoices=Mention complémentaire sur les factures @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Configuration des règlements fournisseurs PropalSetup=Configuration du module Propositions Commerciales ProposalsNumberingModules=Modèles de numérotation des propositions commerciales ProposalsPDFModules=Modèles de documents de propositions commerciales -SuggestedPaymentModesIfNotDefinedInProposal=Mode de paiement suggéré sur le document proposition par défaut s'il n'est pas défini au niveau de la proposition +SuggestedPaymentModesIfNotDefinedInProposal=Mode de paiement suggéré sur les propositions par défaut s'il n'est pas défini au niveau de la proposition FreeLegalTextOnProposal=Mention complémentaire sur les propositions commerciales WatermarkOnDraftProposal=Filigrane sur les brouillons de propositions commerciales (aucun si vide) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Saisir le compte bancaire cible lors de la proposition commerciale @@ -1322,6 +1334,7 @@ WAREHOUSE_ASK_WAREHOUSE_DURING_ORDER=Demander pour l'entrepôt-source pour la co ##### Suppliers Orders ##### BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_ORDER=Demandez le compte bancaire destination de commande fournisseur ##### Orders ##### +SuggestedPaymentModesIfNotDefinedInOrder=Mode de paiement suggéré sur le document de la commande par défaut s'il n'est pas défini sur la commande OrdersSetup=Configuration du module Commandes OrdersNumberingModules=Modèles de numérotation des commandes OrdersModelModule=Modèles de document des commandes @@ -1686,9 +1699,9 @@ CashDeskIdWareHouse=Forcer et restreindre l'emplacement/entrepôt à utiliser po StockDecreaseForPointOfSaleDisabled=Réduction de stock lors de l'utilisation du Point de Vente désactivée StockDecreaseForPointOfSaleDisabledbyBatch=La décrémentation de stock depuis ce module Point de Vente n'est pas encore compatible avec la gestion des numéros de lots/série. CashDeskYouDidNotDisableStockDecease=Vous n'avez pas désactivé la réduction de stock lors d'une vente depuis le Point de vente. Par conséquent, un entrepôt est nécessaire. -CashDeskForceDecreaseStockLabel=Décrémentation des stocks pour les lots a été forcé. -CashDeskForceDecreaseStockDesc=Décrémentation des lots par DLC et DLUO les plus anciennes. -CashDeskReaderKeyCodeForEnter=Code pour la touche "Entrée" du lecteur de codes à barres. +CashDeskForceDecreaseStockLabel=La diminution des stocks de produits soumis à numéros de lots a été forcée. +CashDeskForceDecreaseStockDesc=Diminuez d'abord par les dates de DMD/DLUO ou DLC les plus anciennes +CashDeskReaderKeyCodeForEnter=Code clé pour "Entrée" défini dans le lecteur de code-barres (exemple: 13) ##### Bookmark ##### BookmarkSetup=Configuration du module Marque-pages BookmarkDesc=Ce module vous permet de gérer des liens et raccourcis. Il permet aussi d'ajouter n'importe quelle page de Dolibarr ou lien web dans le menu d'accès rapide sur la gauche. @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Cacher les images du menu principal LeftMenuBackgroundColor=Couleur de fond pour le menu Gauche BackgroundTableTitleColor=Couleur de fond pour la ligne de titres des liste/tableaux BackgroundTableTitleTextColor=Couleur du texte pour la ligne de titre des tableaux +BackgroundTableTitleTextlinkColor=Couleur du texte pour la ligne de lien du titre du tableau BackgroundTableLineOddColor=Couleur de fond pour les lignes impaires des tables BackgroundTableLineEvenColor=Couleur de fond pour les lignes paires des tales MinimumNoticePeriod=Période de préavis minimum (Votre demande de congé doit être faite avant ce délai) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Référence Dolibarr non trouvée dans l'ID du message FormatZip=Zip MainMenuCode=Code d'entrée du menu (mainmenu) ECMAutoTree=Afficher l'arborescence GED automatique -OperationParamDesc=Définissez les valeurs à utiliser pour l'action, ou comment extraire les valeurs. Par exemple:
    objproperty1 = SET:abc
    objproperty2=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]*)

    Utilisez un charactère ; comme séparateur pour extraire ou définir plusieurs propriétés. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Heures d'ouverture OpeningHoursDesc=Entrez ici les heures d'ouverture régulières de votre entreprise. ResourceSetup=Configuration du module Ressource @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Attention, les valeurs élevées ralent 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 +ImportSetup=Configuration du module Import InstanceUniqueID=ID unique de l'instance SmallerThan=Plus petit que LargerThan=Plus grand que @@ -1978,6 +1993,10 @@ NotAPublicIp=Pas une IP publique MakeAnonymousPing=Effectuez un ping «+1» anonyme sur le serveur de la fondation Dolibarr (une seule fois après l’installation) pour permettre à la fondation de compter le nombre d’installations de Dolibarr. FeatureNotAvailableWithReceptionModule=Fonction non disponible lorsque le module Réception est activée EmailTemplate=Modèle d'e-mail -EMailsWillHaveMessageID=Les e-mails auront une étiquette 'Références' correspondant à cette syntaxe -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. -FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +EMailsWillHaveMessageID=Les e-mails auront une étiquette 'References' correspondant à cette syntaxe +PDF_USE_ALSO_LANGUAGE_CODE=Si vous souhaitez que certains textes de votre PDF soient dupliqués dans 2 langues différentes dans le même PDF généré, vous devez définir ici cette deuxième langue pour que le PDF généré contienne 2 langues différentes dans la même page, celle choisie lors de la génération du PDF et celle-ci (seuls quelques modèles PDF prennent en charge cette fonction). Gardez vide pour 1 langue par PDF. +FafaIconSocialNetworksDesc=Entrez ici le code d'une icône FontAwesome. Si vous ne savez pas ce qu'est FontAwesome, vous pouvez utiliser la valeur générique fa-address-book. +RssNote=Remarque: Chaque définition de flux RSS fournit un widget que vous devez activer pour qu'il soit disponible dans le tableau de bord +JumpToBoxes=Aller à la Configuration -> Widgets +MeasuringUnitTypeDesc=Utilisez ici une valeur comme "taille", "surface", "volume", "poids", "temps". +MeasuringScaleDesc=L'échelle est le nombre de positions où vous devez déplacer la partie décimale pour qu'elle corresponde à l'unité de référence par défaut. Pour le type d'unité "temps", c'est le nombre de secondes. Les valeurs comprises entre 80 et 99 sont des valeurs réservées. diff --git a/htdocs/langs/fr_FR/bills.lang b/htdocs/langs/fr_FR/bills.lang index 03d1b95b879..5f2c4c29729 100644 --- a/htdocs/langs/fr_FR/bills.lang +++ b/htdocs/langs/fr_FR/bills.lang @@ -58,8 +58,8 @@ SuppliersInvoices=Factures fournisseurs SupplierBill=Facture fournisseur SupplierBills=Factures fournisseurs Payment=Règlement -PaymentBack=Remboursement -CustomerInvoicePaymentBack=Remboursement +PaymentBack=Rembourser +CustomerInvoicePaymentBack=Rembourser Payments=Règlements PaymentsBack=Remboursements paymentInInvoiceCurrency=Dans la devise des factures @@ -209,17 +209,13 @@ NumberOfBillsByMonth=Nb de factures par mois AmountOfBills=Montant de factures AmountOfBillsHT=Montant des factures (HT) AmountOfBillsByMonthHT=Montant de factures par mois (HT) -ShowSocialContribution=Afficher charge fiscale/sociale -ShowBill=Afficher facture -ShowInvoice=Afficher facture -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 +AllowedInvoiceForRetainedWarranty=Garantie conservée utilisable sur les types de factures suivants RetainedwarrantyDefaultPercent=Pourcentage par défaut de la retenue de garantie +RetainedwarrantyOnlyForSituation=Rendre la "retenue de garantie" disponible uniquement pour les factures de situation +RetainedwarrantyOnlyForSituationFinal=Sur les factures de situation, la déduction globale pour "retenue de garantie" n'est appliquée que sur la facture de situation finale ToPayOn=A payer sur %s toPayOn=à payer sur %s RetainedWarranty=Retenue de garantie @@ -230,7 +226,6 @@ 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é AlreadyPaidNoCreditNotesNoDeposits=Déjà réglé (hors avoirs et acomptes) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Généré à partir du modèle de facture %s WarningInvoiceDateInFuture=Attention, la date de facturation est antérieur à la date actuelle WarningInvoiceDateTooFarInFuture=Attention, la date de facturation est trop éloignée de la date actuelle ViewAvailableGlobalDiscounts=Voir les remises disponibles +GroupPaymentsByModOnReports=Grouper les paiements par mode sur les rapports # PaymentConditions Statut=État PaymentConditionShortRECEP=A réception @@ -575,3 +571,4 @@ AutoFillDateTo=Définir la date de fin de la ligne de service avec la date de la AutoFillDateToShort=Définir la date de fin MaxNumberOfGenerationReached=Nb maximum de gén. atteint BILL_DELETEInDolibarr=Facture supprimée +BILL_SUPPLIER_DELETEInDolibarr=Facture fournisseur supprimée diff --git a/htdocs/langs/fr_FR/blockedlog.lang b/htdocs/langs/fr_FR/blockedlog.lang index 2588df90cee..c0619d33371 100644 --- a/htdocs/langs/fr_FR/blockedlog.lang +++ b/htdocs/langs/fr_FR/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Logs inaltérables ShowAllFingerPrintsMightBeTooLong=Afficher tous les journaux archivés (peut être long) ShowAllFingerPrintsErrorsMightBeTooLong=Afficher tous les journaux d'archives non valides (peut être long) DownloadBlockChain=Télécharger les empreintes -KoCheckFingerprintValidity=Le journal archivé n'est pas valide. Cela signifie que quelqu'un (un pirate informatique ?) a modifié certaines données de ce journal archivé après son enregistrement ou a effacé l'enregistrement archivé précédent (vérifiez que la ligne avec le # précédent existe). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Le journal archivé est valide. Les données de cette ligne n'ont pas été modifiées et l'enregistrement suit le précédent. OkCheckFingerprintValidityButChainIsKo=Le journal archivé semble valide par rapport au précédent mais la chaîne était corrompue auparavant. AddedByAuthority=Stocké dans une autorité distante diff --git a/htdocs/langs/fr_FR/cashdesk.lang b/htdocs/langs/fr_FR/cashdesk.lang index 106630d5b17..d1aa1c677fa 100644 --- a/htdocs/langs/fr_FR/cashdesk.lang +++ b/htdocs/langs/fr_FR/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Ajouter cet article RestartSelling=Reprendre la vente SellFinished=Vente complète PrintTicket=Imprimer ticket +SendTicket=Envoyer le ticket NoProductFound=Aucun article trouvé ProductFound=produit trouvé NoArticle=Aucun article @@ -48,6 +49,7 @@ Footer=Bas de page AmountAtEndOfPeriod=Montant en fin de période (jour, mois ou année) TheoricalAmount=Montant théorique RealAmount=Montant réel +CashFence=Clôture de caisse CashFenceDone=Clôture de caisse faite pour la période NbOfInvoices=Nb de factures Paymentnumpad=Type de pavé pour entrer le paiement @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS a besoin des catégories de produits pour fonctio OrderNotes=Notes de commande CashDeskBankAccountFor=Compte par défaut à utiliser pour les paiements en NoPaimementModesDefined=Aucun mode de paiement défini dans la configuration de TakePOS -TicketVatGrouped=Grouper la TVA par taux sur les tickets -AutoPrintTickets=Imprimer automatiquement les tickets +TicketVatGrouped=Grouper la TVA par taux sur les tickets / reçus +AutoPrintTickets=Imprimer automatiquement les tickets / reçus +PrintCustomerOnReceipts=Imprimer le client sur les tickets|reçus EnableBarOrRestaurantFeatures=Activer les fonctionnalités pour bar ou restaurant ConfirmDeletionOfThisPOSSale=Confirmez-vous la suppression de cette vente en cours? ConfirmDiscardOfThisPOSSale=Voulez-vous écarter cette vente en cours? @@ -81,16 +84,27 @@ CustomReceipt=Reçu personnalisé ReceiptName=Nom du reçu ProductSupplements=Suppléments de produit SupplementCategory=Catégorie des suppléments -ColorTheme=Color theme +ColorTheme=Couleur du thème Colorful=Coloré -HeadBar=Head Bar -SortProductField=Champ pour le tri des produits +HeadBar=Bandeau du haut +SortProductField=Champ de tri des produits Browser=Navigateur -BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposNumpadUsePaymentIcon=Utilisation d'icônes sur les touches des modes de règlement du pavé numérique -CashDeskRefNumberingModules=Modèles de numérotation des caisses -CashDeskGenericMaskCodes6 =
    La balise {TN} permet de rajouter le numéro du terminal +BrowserMethodDescription=Impression simple et facile des reçus. Seuls quelques paramètres pour configurer le reçu. Impression via le navigateur. +TakeposConnectorMethodDescription=Module externe avec fonctionnalités supplémentaires. Possibilité d'imprimer depuis le cloud. +PrintMethod=Méthode d'impression +ReceiptPrinterMethodDescription=Méthode puissante avec beaucoup de paramètres. Entièrement personnalisable avec des modèles. Impossible d'imprimer à partir du cloud. +ByTerminal=Par terminal +TakeposNumpadUsePaymentIcon=Utiliser l'icône de paiement sur le pavé numérique +CashDeskRefNumberingModules=Module de numérotation pour le POS +CashDeskGenericMaskCodes6 =
    La balise {TN} est utilisée pour ajouter le numéro de terminal TakeposGroupSameProduct=Regrouper les mêmes lignes de produits -PrintMethod=Print method -ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. -ByTerminal=By terminal +StartAParallelSale=Lancer une nouvelle vente en parallèle +ControlCashOpening=Popup d'ouverture de caisse à l'ouverture +CloseCashFence=Clôturer la caisse +CashReport=Rapport de caisse +MainPrinterToUse=Imprimante principale à utiliser +OrderPrinterToUse=Imprimante à utiliser +MainTemplateToUse=Modèle principal à utiliser +OrderTemplateToUse=Modèle de commande à utiliser +BarRestaurant=Bar Restaurant +AutoOrder=Commande automatique du client diff --git a/htdocs/langs/fr_FR/companies.lang b/htdocs/langs/fr_FR/companies.lang index 9945859c16b..7101ec05242 100644 --- a/htdocs/langs/fr_FR/companies.lang +++ b/htdocs/langs/fr_FR/companies.lang @@ -325,8 +325,8 @@ CompanyDeleted=La société "%s" a été supprimée de la base. ListOfContacts=Liste des contacts ListOfContactsAddresses=Liste des contacts/adresses ListOfThirdParties=Liste des tiers -ShowCompany=Afficher tiers -ShowContact=Afficher contact +ShowCompany=Tiers +ShowContact=Adresse de contact ContactsAllShort=Tous (pas de filtre) ContactType=Type de contact ContactForOrders=Contact de commandes @@ -447,6 +447,7 @@ SaleRepresentativeFirstname=Prénom du commercial SaleRepresentativeLastname=Nom du commercial ErrorThirdpartiesMerge=Une erreur est survenue lors de la suppression de ce tiers. Consultez les log. La modification a été annulée. NewCustomerSupplierCodeProposed=Code client ou fournisseur déjà utilisé, un nouveau code est suggéré +KeepEmptyIfGenericAddress=Gardez ce champ vide si cette adresse est une adresse générique #Imports PaymentTypeCustomer=Type de paiement - Client PaymentTermsCustomer=Conditions de paiement - Client diff --git a/htdocs/langs/fr_FR/compta.lang b/htdocs/langs/fr_FR/compta.lang index 8252a1cb29f..3eb8b17150a 100644 --- a/htdocs/langs/fr_FR/compta.lang +++ b/htdocs/langs/fr_FR/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=Voir %sanalyse des paiements%s pour un calcul sur les SeeReportInDueDebtMode=Voir %sanalyse des factures%s pour un calcul basé sur les factures enregistrées connues même si elles ne sont pas encore comptabilisées dans le Grand Livre. SeeReportInBookkeepingMode=Voir le %sRapport sur le Grand Livre%s pour un calcul sur les tables du Grand Livre RulesAmountWithTaxIncluded=- Les montants affichés sont les montants taxe incluse -RulesResultDue=- Il comprend les factures impayées, les dépenses, la TVA, les dons, qu'ils soient payées ou non. Il comprend également les salaires versés.
    - Il est basé sur la date de validation des factures et de la TVA et à la date prévue pour les dépenses. Pour les salaires définis avec le module de salaire, la date de paiement de la valeur est utilisée. +RulesResultDue=- Il comprend les factures impayées, les dépenses, la TVA, les dons, qu'ils soient payées ou non. Il comprend également les salaires versés.
    - Il est basé sur la date de facturation des factures et sur la date des dépenses et paiement des taxes. Pour les salaires définis avec le module Salaire, la date de valeur du paiement est utilisée. RulesResultInOut=- Il comprend les paiements réels effectués sur les factures, les dépenses, la TVA et les salaires.
    - Il est basé sur les dates de paiement des factures, les dépenses, la TVA et les salaires. La date du don pour le don. -RulesCADue=- Il inclut les factures clients dues, qu'elles soient payées ou non.
    - Il se base sur la date de validation de ces factures.
    +RulesCADue=- Il inclut les factures clients dues, qu'elles soient payées ou non.
    - Il se base sur la date de facturation de ces factures.
    RulesCAIn=- Il inclut les règlements effectivement reçus des factures clients.
    - Il se base sur la date de règlement de ces factures
    RulesCATotalSaleJournal=Il comprend toutes les lignes du journal de vente. RulesAmountOnInOutBookkeepingRecord=Cela inclut les enregistrements dans votre Grand Livre ayant les comptes de comptabilité qui ont le groupe "EXPENSE" ou "INCOME" @@ -255,3 +255,12 @@ TurnoverbyVatrate=Chiffre d'affaire facturé par taux de TVA TurnoverCollectedbyVatrate=Chiffre d'affaires encaissé par taux de TVA PurchasebyVatrate=Achat par taux de TVA LabelToShow=Libellé court +PurchaseTurnover=Chiffre d'affaires d'achat +PurchaseTurnoverCollected=Chiffre d'affaires d'achat collecté +RulesPurchaseTurnoverDue=- Il comprend les factures dues par le fournisseur, qu'elles soient payées ou non.
    - Il est basé sur la date de facturation de ces factures.
    +RulesPurchaseTurnoverIn=- Il comprend tous les paiements effectifs des factures effectuées aux fournisseurs.
    - Il est basé sur la date de paiement de ces factures
    +RulesPurchaseTurnoverTotalPurchaseJournal=Il comprend toutes les lignes de débit du journal d'achat. +ReportPurchaseTurnover=Chiffre d'affaires d'achat facturé +ReportPurchaseTurnoverCollected=Chiffre d'affaires d'achat encaissé +IncludeVarpaysInResults = Inclure divers paiements dans les rapports +IncludeLoansInResults = Inclure les prêts dans les rapports diff --git a/htdocs/langs/fr_FR/errors.lang b/htdocs/langs/fr_FR/errors.lang index a620ff5e072..6fdaed0fe48 100644 --- a/htdocs/langs/fr_FR/errors.lang +++ b/htdocs/langs/fr_FR/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=Fichier non reçu intégralement par le serveur. ErrorNoTmpDir=Répertoire temporaire de réception %s inexistant. ErrorUploadBlockedByAddon=Upload bloqué par un plugin PHP/Apache. ErrorFileSizeTooLarge=La taille du fichier est trop grande. +ErrorFieldTooLong=Le champ %s est trop long. ErrorSizeTooLongForIntType=Longueur de champ trop longue pour le type int (%s chiffres maximum) ErrorSizeTooLongForVarcharType=Longueur de champ trop longue pour le type chaine (%s caractères maximum) ErrorNoValueForSelectType=Les valeurs de la liste de sélection doivent être renseignées @@ -96,7 +97,7 @@ ErrorBadMaskFailedToLocatePosOfSequence=Erreur, masque sans numéro de séquence ErrorBadMaskBadRazMonth=Erreur, mauvais valeur de remise à zéro ErrorMaxNumberReachForThisMask=Nombre maximum atteint pour ce masque ErrorCounterMustHaveMoreThan3Digits=Le compteur doit avoir au moins 3 positions -ErrorSelectAtLeastOne=Error, select at least one entry. +ErrorSelectAtLeastOne=Erreur, sélectionnez au moins une entrée. ErrorDeleteNotPossibleLineIsConsolidated=Suppression impossible car l'enregistrement porte sur au moins une transaction bancaire rapprochée ErrorProdIdAlreadyExist=%s est attribué à un autre tiers ErrorFailedToSendPassword=Échec de l'envoi du mot de passe @@ -117,9 +118,9 @@ ErrorLoginDoesNotExists=Le compte utilisateur identifié par %s n'a pu ê ErrorLoginHasNoEmail=Cet utilisateur n'a pas d'email. Impossible de continuer. ErrorBadValueForCode=Mauvaise valeur saisie pour le code. Réessayez avec une nouvelle valeur... ErrorBothFieldCantBeNegative=Les champs %s et %s ne peuvent être tous deux négatifs -ErrorFieldCantBeNegativeOnInvoice=Field %s cannot be negative on this type of invoice. If you need to add a discount line, just create the discount first (from field '%s' in thirdparty card) and apply it to the invoice. -ErrorLinesCantBeNegativeForOneVATRate=Total of lines can't be negative for a given VAT rate. -ErrorLinesCantBeNegativeOnDeposits=Lines can't be negative in a deposit. You will face problems when you will need to consume the deposit in final invoice if you do so. +ErrorFieldCantBeNegativeOnInvoice=Le champ %s ne peut pas être négatif sur ce type de facture. Si vous devez ajouter une ligne de remise, créez d'abord la remise (à partir du champ '%s' dans la fiche du tiers) et appliquez-la à la facture. +ErrorLinesCantBeNegativeForOneVATRate=Le total des lignes ne peut pas être négatif pour un taux de TVA donné. +ErrorLinesCantBeNegativeOnDeposits=Les lignes ne peuvent pas être négatives dans un acompte. Si vous le faites, vous rencontrerez des problèmes lorsque vous devrez consommer l'acompte dans la facture finale. ErrorQtyForCustomerInvoiceCantBeNegative=La quantité d'une ligne ne peut pas être négative dans les factures clients ErrorWebServerUserHasNotPermission=Le compte d'exécution du serveur web %s n'a pas les permissions pour cela ErrorNoActivatedBarcode=Aucun type de code-barres activé @@ -229,12 +230,13 @@ ErrorFieldRequiredForProduct=Le champ '%s' est obligatoire pour le produit %s ProblemIsInSetupOfTerminal=Le problème est dans la configuration du terminal %s. ErrorAddAtLeastOneLineFirst=Ajouter d'abord au moins une ligne ErrorRecordAlreadyInAccountingDeletionNotPossible=Erreur, l'enregistrement est déjà transféré dans la comptabilité, la suppression n'est pas possible. -ErrorLanguageMandatoryIfPageSetAsTranslationOfAnother=Error, language is mandatory if you set the page as a translation of another one. -ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated page is same than this one. -ErrorBatchNoFoundForProductInWarehouse=Aucun lot trouvé pour le produit "%s" dans l'entrepôt "%s". -ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=Quantité insuffisante dans les lots pour le produit "%s" dans l'entepôt "%s". -ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorLanguageMandatoryIfPageSetAsTranslationOfAnother=Erreur, la langue est obligatoire si vous définissez la page comme une traduction d'une autre. +ErrorLanguageOfTranslatedPageIsSameThanThisPage=Erreur, la langue de la page traduite est la même que celle-ci. +ErrorBatchNoFoundForProductInWarehouse=Aucun lot / série trouvé pour le produit "%s" dans l'entrepôt "%s". +ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=Pas assez de quantité pour ce lot / série pour le produit "%s" dans l'entrepôt "%s". +ErrorOnlyOneFieldForGroupByIsPossible=1 seul champ pour le 'Grouper par' est possible (les autres sont supprimés) +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # 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. diff --git a/htdocs/langs/fr_FR/install.lang b/htdocs/langs/fr_FR/install.lang index af9016d25c6..9e0084ef7e4 100644 --- a/htdocs/langs/fr_FR/install.lang +++ b/htdocs/langs/fr_FR/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=PHP supporte l'extension Curl PHPSupportCalendar=Ce PHP supporte les extensions calendar. PHPSupportUTF8=Ce PHP prend en charge les fonctions UTF8. PHPSupportIntl=Ce PHP supporte les fonctions Intl. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=Ce PHP prend en charge les fonctions %s. PHPMemoryOK=Votre mémoire maximum de session PHP est définie à %s. Ceci devrait être suffisant. PHPMemoryTooLow=Votre mémoire maximum de session PHP est définie à %s octets. Ceci est trop faible. Il est recommandé de modifier le paramètre memory_limit de votre fichier php.ini à au moins %s octets. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=Votre version de PHP ne supporte pas l'extension Curl ErrorPHPDoesNotSupportCalendar=Votre installation de PHP ne supporte pas les extensions php calendar. ErrorPHPDoesNotSupportUTF8=Ce PHP ne prend pas en charge les fonctions UTF8. Résolvez le problème avant d'installer Dolibarr car il ne pourra pas fonctionner correctement. ErrorPHPDoesNotSupportIntl=Votre installation de PHP ne supporte pas les fonctions Intl. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Votre installation PHP ne prend pas en charge les fonctions %s. ErrorDirDoesNotExists=Le répertoire %s n'existe pas ou n'est pas accessible. ErrorGoBackAndCorrectParameters=Revenez en arrière et vérifiez / corrigez les paramètres. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=L'application essaie de se mettre à jour, mais l YouTryInstallDisabledByFileLock=L'application a tenté de se mettre à niveau automatiquement, mais les pages d'installation / de mise à niveau ont été désactivées pour des raisons de sécurité (grâce à l'existence d'un fichier de verrouillage install.lock dans le répertoire de documents dolibarr).
    ClickHereToGoToApp=Cliquez ici pour aller sur votre application ClickOnLinkOrRemoveManualy=Cliquez sur le lien suivant et si vous atteignez toujours cette page, vous devez supprimer manuellement le fichier install.lock dans le répertoire documents +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/fr_FR/interventions.lang b/htdocs/langs/fr_FR/interventions.lang index 407e8dbec26..43722fe2bfd 100644 --- a/htdocs/langs/fr_FR/interventions.lang +++ b/htdocs/langs/fr_FR/interventions.lang @@ -41,9 +41,7 @@ InterventionsArea=Espace interventions DraftFichinter=Interventions brouillon LastModifiedInterventions=Les %s dernières interventions modifiées FichinterToProcess=Interventions à traiter -##### Types de contacts ##### TypeContact_fichinter_external_CUSTOMER=Contact client suivi de l'intervention -# Modele numérotation PrintProductsOnFichinter=Imprimer aussi les lignes de type "produit" (pas seulement de type service) sur les fiches d'intervention PrintProductsOnFichinterDetails=interventions générées à partir des commandes UseServicesDurationOnFichinter=Utiliser la durée des services dans les interventions créées depuis des commandes @@ -53,7 +51,6 @@ InterventionStatistics=Statistiques des interventions NbOfinterventions=Nb de fiches d'intervention NumberOfInterventionsByMonth=Nb de fiches d'intervention par mois (date de validation) AmountOfInteventionNotIncludedByDefault=Le total des interventions 'nest pas inclus par défaut dans les profits (dans la plupart des cas, les feuilles de temps totalisent le temps passé). Activez l'option PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT à 1 dans Accueil > Condiguration > Divers -##### Exports ##### InterId=Id intervention InterRef=Intervention ref. InterDateCreation=Date création intervention @@ -65,3 +62,5 @@ InterLineId=Id ligne intervention InterLineDate=Date ligne intervention InterLineDuration=Durée ligne intervention InterLineDesc=Description ligne intervention +RepeatableIntervention=Modèle d'intervention +ToCreateAPredefinedIntervention=Pour créer une intervention prédéfinie ou récurrente, créez une intervention standard et convertissez-la en modèle d'intervention diff --git a/htdocs/langs/fr_FR/link.lang b/htdocs/langs/fr_FR/link.lang index 8257300ada2..4534b8420e7 100644 --- a/htdocs/langs/fr_FR/link.lang +++ b/htdocs/langs/fr_FR/link.lang @@ -8,3 +8,4 @@ LinkRemoved=Le lien %s a été supprimé ErrorFailedToDeleteLink= Impossible de supprimer le lien '%s' ErrorFailedToUpdateLink= Impossible de modifier le lien '%s' URLToLink=URL à lier +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/fr_FR/mails.lang b/htdocs/langs/fr_FR/mails.lang index 178b3dd421d..59999521019 100644 --- a/htdocs/langs/fr_FR/mails.lang +++ b/htdocs/langs/fr_FR/mails.lang @@ -25,7 +25,7 @@ ShowEMailing=Afficher emailing ListOfEMailings=Liste des emailings NewMailing=Nouvel emailing EditMailing=Éditer emailing -ResetMailing=Nouvel envoi +ResetMailing=Ré-envoyer emailing DeleteMailing=Supprimer emailing DeleteAMailing=Supprimer un emailing PreviewMailing=Prévisualiser emailing @@ -132,7 +132,7 @@ AddNewNotification=Activer un nouveau couple cible/évènement pour notification ListOfActiveNotifications=Liste des cibles/évènements actifs pour notification par emails ListOfNotificationsDone=Liste des notifications emails envoyées MailSendSetupIs=La configuration d'envoi d'emails a été définir sur '%s'. Ce mode ne peut pas être utilisé pour envoyer des e-mailing en masse. -MailSendSetupIs2=Vous devez d'abord aller, avec un compte d'administrateur, dans le menu %sAccueil - Configuration - EMails%s pour changer le paramètre '%s' pour utiliser le mode '%s'. Avec ce mode, vous pouvez accéder à la configuration du serveur SMTP fourni par votre fournisseur de services Internet et utiliser la fonction d'envoi d'email en masse. +MailSendSetupIs2=Vous devez d'abord aller, avec un compte d'administrateur, dans le menu %sAccueil - Configuration - EMails%s pour changer le paramètre '%s' pour utiliser le mode '%s'. Avec ce mode, vous pouvez entrer le paramétrage du serveur SMTP fourni par votre fournisseur de services Internet et utiliser la fonction d'envoi d'email en masse. MailSendSetupIs3=Si vous avez des questions sur la façon de configurer votre serveur SMTP, vous pouvez demander à %s. YouCanAlsoUseSupervisorKeyword=Vous pouvez également ajouter le mot-clé __SUPERVISOREMAIL__ pour avoir les emails envoyés au responsable hiérarchique de l'utilisateur (ne fonctionne que si un email est défini pour ce responsable) NbOfTargetedContacts=Nombre courant d'emails de contacts cibles @@ -164,7 +164,7 @@ NoContactWithCategoryFound=Pas de contact/adresses avec cette catégorie NoContactLinkedToThirdpartieWithCategoryFound=Pas de contact/adresses associés à un ters avec cette catégorie OutGoingEmailSetup=Configuration email sortant InGoingEmailSetup=Configuration email entrant -OutGoingEmailSetupForEmailing=Configuration des e-mail sortant (pour les e-mails de masse) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Configuration des emails sortant Information=Information ContactsWithThirdpartyFilter=Contacts ayant pour tiers diff --git a/htdocs/langs/fr_FR/main.lang b/htdocs/langs/fr_FR/main.lang index d3f86678f25..03212c77540 100644 --- a/htdocs/langs/fr_FR/main.lang +++ b/htdocs/langs/fr_FR/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Enregistrer et rester SaveAndNew=Enregistrer et nouveau TestConnection=Tester la connexion ToClone=Cloner +ConfirmCloneAsk=Voulez-vous vraiment cloner l'objet %s ? ConfirmClone=Veuillez choisir votre option de clonage : NoCloneOptionsSpecified=Aucun option de clonage n'a été spécifiée. Of=du @@ -352,8 +353,8 @@ PriceUTTC=P.U TTC Amount=Montant AmountInvoice=Montant facture AmountInvoiced=Montant facturé -AmountInvoicedHT=Amount invoiced (incl. tax) -AmountInvoicedTTC=Amount invoiced (excl. tax) +AmountInvoicedHT=Montant facturé (TTC) +AmountInvoicedTTC=Montant facturé (HT) AmountPayment=Montant paiement AmountHTShort=Montant HT AmountTTCShort=Montant TTC @@ -425,6 +426,7 @@ Modules=Modules/Applications Option=Option List=Liste FullList=Liste complète +FullConversation=Conversation complète Statistics=Statistiques OtherStatistics=Autres statistiques Status=État @@ -829,6 +831,8 @@ Gender=Genre Genderman=Homme Genderwoman=Femme ViewList=Vue liste +ViewGantt=Vue Gantt +ViewKanban=Vue Kanban Mandatory=Obligatoire Hello=Bonjour GoodBye=Au revoir @@ -856,7 +860,7 @@ Export=Exporter Exports=Exports ExportFilteredList=Exporter liste filtrée ExportList=Exporter liste -ExportOptions=Options d'exportation +ExportOptions=Options d'export IncludeDocsAlreadyExported=Inclure les documents déjà exportés ExportOfPiecesAlreadyExportedIsEnable=L'exportation de pièces déjà exportées est activée ExportOfPiecesAlreadyExportedIsDisable=L'exportation des pièces déjà exportées est désactivée @@ -884,7 +888,7 @@ WebSiteAccounts=Comptes de site web ExpenseReport=Note de frais ExpenseReports=Notes de frais HR=HR -HRAndBank=HR et banque +HRAndBank=Salarié AutomaticallyCalculated=Calculé automatiquement TitleSetToDraft=Retour à l'état de brouillon ConfirmSetToDraft=Etes vous sûr de vouloir revenir à l'état Brouillon ? @@ -950,6 +954,7 @@ SearchIntoMembers=Adhérents SearchIntoUsers=Utilisateurs SearchIntoProductsOrServices=Produits ou services SearchIntoProjects=Projets +SearchIntoMO=Ordres de fabrication SearchIntoTasks=Tâches SearchIntoCustomerInvoices=Factures clients SearchIntoSupplierInvoices=Factures fournisseur @@ -1022,3 +1027,9 @@ SelectYourGraphOptionsFirst=Sélectionnez vos options de graphique pour construi Measures=Mesures XAxis=Axe X YAxis=Axe Y +StatusOfRefMustBe=Le statut de %s doit être %s +DeleteFileHeader=Confirmer la suppression du fichier +DeleteFileText=Voulez-vous vraiment supprimer ce fichier? +ShowOtherLanguages=Afficher les autres langues +SwitchInEditModeToAddTranslation=Passer en mode édition pour ajouter des traductions pour cette langue +NotUsedForThisCustomer=Non utilisé pour ce client diff --git a/htdocs/langs/fr_FR/modulebuilder.lang b/htdocs/langs/fr_FR/modulebuilder.lang index 5c88c9173ac..ea734dd7587 100644 --- a/htdocs/langs/fr_FR/modulebuilder.lang +++ b/htdocs/langs/fr_FR/modulebuilder.lang @@ -83,9 +83,9 @@ ListOfDictionariesEntries=Liste des entrées de dictionnaires ListOfPermissionsDefined=Liste des permissions SeeExamples=Voir des exemples ici EnabledDesc=Condition pour que ce champ soit actif (Exemples: 1 ou $conf->global->MYMODULE_MYOPTION) -VisibleDesc=Le champ est-il visible ? (Exemples: 0 = Jamais visible, 1 = Visible sur les listes et formulaires de création/mise à jour/visualisation, 2 = Visible uniquement sur la liste, 3 = Visible uniquement sur le formulaire de création/mise à jour/affichage (pas les listes), 4=Visible sur les listes et formulaire de mise à jour et affichage uniquement (pas en création), 5=Visible sur les listes et formulaire en lecture (pas en création ni modification). Utiliser une valeur négative signifie que le champ n'est pas affiché par défaut sur la liste mais peut être sélectionné pour l'affichage). Il peut s'agir d'une expression, par exemple : 
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene -DisplayOnPdf=Display on PDF +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Affichez ce champ sur les documents PDF compatibles, vous pouvez gérer la position avec le champ "Position".
    Actuellement, les modèles compatibles PDF connus sont: Eratostene (ordre), Espadon (navire), une éponge (factures), cyan (Propal / citation), Cornas (commande fournisseur)

    Pour le document:
    0 = non affiché
    1 = affiché
    2 = affiché uniquement si non vide

    Pour les lignes de document:
    0 = non affiché
    1 = affiché dans une colonne
    3 = affiché dans la colonne de description de ligne après la description
    4 = affiché dans la colonne de description après le description uniquement si non vide +DisplayOnPdf=Afficher sur PDF IsAMeasureDesc=Peut-on cumuler la valeur du champ pour obtenir un total dans les listes ? (Exemples: 1 ou 0) SearchAllDesc=Le champ doit-il être utilisé pour effectuer une recherche à partir de l'outil de recherche rapide ? (Exemples: 1 ou 0) SpecDefDesc=Entrez ici toute la documentation que vous souhaitez joindre au module et qui n'a pas encore été définis dans d'autres onglets. Vous pouvez utiliser .md ou, mieux, la syntaxe enrichie .asciidoc. @@ -94,7 +94,7 @@ MenusDefDesc=Définissez ici les menus fournis par votre module DictionariesDefDesc=Définissez ici les dictionnaires fournis par le module PermissionsDefDesc=Définissez ici les nouvelles permissions fournies par votre module MenusDefDescTooltip=Les menus fournis par votre module / application sont définis dans le tableau $this->menus dans le fichier descripteur de module. Vous pouvez modifier manuellement ce fichier ou utiliser l'éditeur intégré.

    Remarque: une fois définis (et les modules réactivés), les menus sont également visibles dans l'éditeur de menus mis à la disposition des utilisateurs administrateurs sur %s. -DictionariesDefDescTooltip=Les dictionnaires fournis par votre module/application sont définis dans le tableau $this->dictionnaires dans le fichier descripteur de module. Vous pouvez modifier manuellement ce fichier ou utiliser l'éditeur intégré.

    Remarque: une fois définis (et réactivés par le module), les dictionnaires sont également visibles dans la zone de configuration par les utilisateurs administrateurs sur %s. +DictionariesDefDescTooltip=Les dictionnaires fournis par votre module/application sont définis dans le tableau $this->dictionaries dans le fichier descripteur de module. Vous pouvez modifier manuellement ce fichier ou utiliser l'éditeur intégré.

    Remarque: une fois définis (et module réactivé), les dictionnaires sont également visibles dans la zone de configuration par les utilisateurs administrateurs sur %s. PermissionsDefDescTooltip=Les autorisations fournies par votre module / application sont définies dans le tableau $this->rights dans le fichier descripteur de module. Vous pouvez modifier manuellement ce fichier ou utiliser l'éditeur intégré.

    Remarque: une fois définies (et le module réactivé), les autorisations sont visibles dans la configuration par défaut des autorisations %s. HooksDefDesc=Définissez dans la propriété module_parts ['hooks'] , dans le descripteur de module, le contexte des hooks à gérer (la liste des contextes peut être trouvée par une recherche sur ' initHooks (' dans le code du noyau).
    Editez le fichier hook pour ajouter le code de vos fonctions hookées (les fonctions hookables peuvent être trouvées par une recherche sur ' executeHooks ' dans le code core). TriggerDefDesc=Définissez dans le fichier trigger le code que vous souhaitez exécuter pour chaque événement métier exécuté. diff --git a/htdocs/langs/fr_FR/other.lang b/htdocs/langs/fr_FR/other.lang index e1a9a124f7e..022e9f0207e 100644 --- a/htdocs/langs/fr_FR/other.lang +++ b/htdocs/langs/fr_FR/other.lang @@ -30,11 +30,11 @@ PreviousYearOfInvoice=Année précédente de la date de facturation NextYearOfInvoice=Année suivante de la date de facturation DateNextInvoiceBeforeGen=Date de la prochaine génération (avant génération) DateNextInvoiceAfterGen=Date de la prochaine facture (après génération) -GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mode. The mode 'Lines' was automatically selected instead. +GraphInBarsAreLimitedToNMeasures=Les graphiques sont limités à %s mesures en mode 'Bars'. Le mode "Lignes" a été automatiquement sélectionné à la place. OnlyOneFieldForXAxisIsPossible=1 seul champ est actuellement possible en tant qu'axe X. Seul le premier champ sélectionné a été choisi. -AtLeastOneMeasureIsRequired=At least 1 field for measure is required -AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +AtLeastOneMeasureIsRequired=Au moins 1 champ de mesure est requis +AtLeastOneXAxisIsRequired=Au moins 1 champ pour l'axe X est requis +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Validation commande client Notify_ORDER_SENTBYMAIL=Envoi commande client par email Notify_ORDER_SUPPLIER_SENTBYMAIL=Envoi commande fournisseur par email @@ -108,7 +108,7 @@ DemoFundation=Gestion des adhérents d'une association DemoFundation2=Gestion des adhérents et trésorerie d'une association DemoCompanyServiceOnly=Société ou indépendant faisant du service uniquement DemoCompanyShopWithCashDesk=Gestion d'un magasin avec caisse -DemoCompanyProductAndStocks=Magasin de vente de produits avec point de vente +DemoCompanyProductAndStocks=Magasin vendant des produits via points de vente DemoCompanyManufacturing=Société de fabrication de produits DemoCompanyAll=Société avec de multiples activités (tous les modules principaux) CreatedBy=Créé par %s @@ -190,7 +190,7 @@ NumberOfSupplierProposals=Nombre de demandes de prix NumberOfSupplierOrders=Nombre de commandes fournisseurs NumberOfSupplierInvoices=Nombre de factures fournisseurs NumberOfContracts=Nombre de contrats -NumberOfMos=Number of manufacturing orders +NumberOfMos=Nombre d'ordres de fabrication NumberOfUnitsProposals=Quantités présentes dans les propositions commerciales NumberOfUnitsCustomerOrders=Quantités présentes dans les commandes clients NumberOfUnitsCustomerInvoices=Quantités présentes dans les factures clients @@ -198,7 +198,7 @@ NumberOfUnitsSupplierProposals=Quantités présentes dans les demande de prix NumberOfUnitsSupplierOrders=Quantités présentes dans les commandes fournisseurs NumberOfUnitsSupplierInvoices=Quantités présentes dans les factures fournisseurs NumberOfUnitsContracts=Nombre d'unités en contrat -NumberOfUnitsMos=Number of units to produce in manufacturing orders +NumberOfUnitsMos=Nombre d'unités à produire dans les ordres de fabrication EMailTextInterventionAddedContact=Une nouvelle intervention %s vous a été assignée EMailTextInterventionValidated=La fiche intervention %s vous concernant a été validée. EMailTextInvoiceValidated=La facture %s vous concernant a été validée. @@ -274,13 +274,13 @@ WEBSITE_PAGEURL=URL de la page WEBSITE_TITLE=Titre WEBSITE_DESCRIPTION=Description WEBSITE_IMAGE=Image -WEBSITE_IMAGEDesc=Chemin relatif du média image. Vous pouvez garder ce champ vide car il est rarement utilisé (cela peut être utilisé par du contenu dynamique pour afficher un aperçu de page de type "blog_post"). Utilisez la chaine __WEBSITEKEY__ dans le chemin si le chemin dépend du nom du site web. +WEBSITE_IMAGEDesc=Chemin relatif du média image. Vous pouvez garder ce champ vide car il est rarement utilisé (cela peut être utilisé par du contenu dynamique pour afficher un aperçu de page de type "blog_post"). Utilisez la chaîne __WEBSITE_KEY__ dans le chemin si le chemin dépend du nom du site web (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Mots clés LinesToImport=Lignes à importer MemoryUsage=Utilisation de la mémoire RequestDuration=Durée de la demande -PopuProp=Products/Services by popularity in Proposals -PopuCom=Products/Services by popularity in Orders -ProductStatistics=Products/Services Statistics -NbOfQtyInOrders=Qty in orders +PopuProp=Produits / services par popularité dans les propositions +PopuCom=Produits/services par popularité dans les commandes +ProductStatistics=Statistiques sur les produits / services +NbOfQtyInOrders=Qté en commandes diff --git a/htdocs/langs/fr_FR/products.lang b/htdocs/langs/fr_FR/products.lang index 02e4378f24d..9219eb2d1cd 100644 --- a/htdocs/langs/fr_FR/products.lang +++ b/htdocs/langs/fr_FR/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=Cette page permet de modifier les taux de TVA définis MassBarcodeInit=Initialisation codes-barre MassBarcodeInitDesc=Cette page peut être utilisée pour initialiser un code-barre sur des objets qui ne disposent pas de code-barre défini. Vérifiez avant que l'installation du module code-barres est complète. ProductAccountancyBuyCode=Code comptable (achat) +ProductAccountancyBuyIntraCode=Code comptable (achat intra-communautaire) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Code comptable (vente) ProductAccountancySellIntraCode=Code comptable (vente intra-communautaire) ProductAccountancySellExportCode=Code comptable (vente à l'export) @@ -165,7 +167,7 @@ SuppliersPrices=Prix fournisseurs SuppliersPricesOfProductsOrServices=Prix fournisseurs (des produits ou services) CustomCode=Nomenclature douanière / Code SH CountryOrigin=Pays d'origine -Nature=Nature du produit (matière première / produit fini) +Nature=Nature of product (material/finished) ShortLabel=Libellé court Unit=Unité p=u. @@ -331,9 +333,9 @@ PossibleValues=Valeurs possibles GoOnMenuToCreateVairants=Allez sur le menu %s - %s pour ajouter les attributs de variantes (comme les couleurs, tailles, ...) UseProductFournDesc=Ajouter une fonctionnalité pour définir les descriptions des produits définies par les fournisseurs en plus des descriptions pour les clients ProductSupplierDescription=Description du fournisseur du produit -UseProductSupplierPackaging=Use packaging on supplier prices (recalculate quantities according to packaging set on supplier price when adding/updating line in supplier documents) -PackagingForThisProduct=Packaging -QtyRecalculatedWithPackaging=The quantity of the line were recalculated according to supplier packaging +UseProductSupplierPackaging=Utiliser le conditionnement/emballage sur les prix fournisseur (recalculer les quantités en fonction de l'emballage défini sur le prix fournisseur lors de l'ajout / mise à jour de la ligne dans les documents fournisseurs) +PackagingForThisProduct=Emballage +QtyRecalculatedWithPackaging=La quantité de la ligne a été recalculée en fonction de l'emballage du fournisseur #Attributes VariantAttributes=Attributs de variante @@ -367,7 +369,7 @@ UsePercentageVariations=Utiliser les pourcentages de variation PercentageVariation=Variation de pourcentage ErrorDeletingGeneratedProducts=Une erreur s'est produite lors de la suppression des variantes existante de produits NbOfDifferentValues=Nb de valeurs différentes -NbProducts=Number of products +NbProducts=Nb de produits ParentProduct=Produit parent HideChildProducts=Cacher les variantes de produits ShowChildProducts=Afficher les variantes de produits @@ -380,4 +382,4 @@ ErrorProductCombinationNotFound=Variante du produit non trouvé ActionAvailableOnVariantProductOnly=Action disponible uniquement sur la variante du produit ProductsPricePerCustomer=Prix produit par clients ProductSupplierExtraFields=Attributs supplémentaires (Prix fournisseur) -DeleteLinkedProduct=Delete the child product linked to the combination +DeleteLinkedProduct=Supprimer le produit enfant lié à la combinaison diff --git a/htdocs/langs/fr_FR/projects.lang b/htdocs/langs/fr_FR/projects.lang index 95bbee0cd22..4c1ee9a3c33 100644 --- a/htdocs/langs/fr_FR/projects.lang +++ b/htdocs/langs/fr_FR/projects.lang @@ -22,7 +22,7 @@ ClosedProjectsAreHidden=Les projets fermés ne sont pas visible. TasksPublicDesc=Cette vue présente tous les projets et tâches pour lesquels vous êtes habilité à avoir une visibilité. TasksDesc=Cette vue présente tous les projets et tâches (vos habilitations vous offrant une vue exhaustive). AllTaskVisibleButEditIfYouAreAssigned=Toutes les tâches des projets sont visibles mais il n'est possible de saisir du temps passé que sur celles assignées à l'utilisateur sélectionné.\nAssignez la tâche si elle ne l'est pas déjà pour pouvoir saisir du temps dessus. -OnlyYourTaskAreVisible=Seules les tâches qui vous sont assignées sont visibles. Assignez vous une tâche pour la voir et saisir du temps passé +OnlyYourTaskAreVisible=Seules les tâches qui vous sont assignées sont visibles. Assignez vous une tâche pour la voir et saisir du temps. ImportDatasetTasks=Tâches des projets ProjectCategories=Catégories/tags de projet NewProject=Nouveau projet @@ -39,8 +39,8 @@ ShowProject=Afficher projet ShowTask=Afficher tâche SetProject=Définir projet NoProject=Aucun projet défini ou responsable -NbOfProjects=Number of projects -NbOfTasks=Number of tasks +NbOfProjects=Nombre de projets +NbOfTasks=Nb de tâches TimeSpent=Temps consommé TimeSpentByYou=Temps consommé par vous TimeSpentByUser=Temps consommé par utilisateur @@ -87,8 +87,6 @@ WhichIamLinkedToProject=dont je suis contact de projet Time=Temps ListOfTasks=Liste de tâches GoToListOfTimeConsumed=Aller à la liste des temps consommés -GoToListOfTasks=Vue liste -GoToGanttView=Vue Gantt GanttView=Vue Gantt ListProposalsAssociatedProject=Liste des propositions commerciales associées au projet ListOrdersAssociatedProject=Liste des commandes clients associées au projet @@ -104,7 +102,7 @@ ListDonationsAssociatedProject=Liste des dons associés au projet ListVariousPaymentsAssociatedProject=Liste des paiements divers liés au projet ListSalariesAssociatedProject=Liste des paiements de salaires liés au projet ListActionsAssociatedProject=Liste des événements associés au projet -ListMOAssociatedProject=List of manufacturing orders related to the project +ListMOAssociatedProject=Liste des ordres de fabrication liées au projet ListTaskTimeUserProject=Liste du temps consommé sur les tâches d'un projet ListTaskTimeForTask=Liste du temps consommé sur les tâches ActivityOnProjectToday=Activité projet aujourd'hui @@ -164,7 +162,7 @@ OpportunityProbability=Probabilité d'opportunité OpportunityProbabilityShort=Prob. opp. OpportunityAmount=Montant opportunité OpportunityAmountShort=Montant opportunité -OpportunityWeightedAmount=Montant pondéré opportunité +OpportunityWeightedAmount=Montant pondéré des opportunités OpportunityWeightedAmountShort=Montant pondéré opp. OpportunityAmountAverageShort=montant moyen des opportunités OpportunityAmountWeigthedShort=Montant pondéré des opportunités @@ -188,7 +186,7 @@ PlannedWorkload=Charge de travail prévue PlannedWorkloadShort=Charge de travail ProjectReferers=Objets associés ProjectMustBeValidatedFirst=Le projet doit être validé d'abord -FirstAddRessourceToAllocateTime=Affecter un utilisateur pour saisir des temps +FirstAddRessourceToAllocateTime=Affecter un utilisateur comme contact du projet pour saisir des temps InputPerDay=Saisie par jour InputPerWeek=Saisie par semaine InputPerMonth=Saisie par mois @@ -240,6 +238,7 @@ LatestModifiedProjects=Les %s derniers projets modifiés OtherFilteredTasks=Autres tâches filtrées NoAssignedTasks=Aucune tâche assignée (assignez un projet/tâche à l'utilisateur depuis la liste déroulante utilisateur en haut pour pouvoir saisir du temps dessus) ThirdPartyRequiredToGenerateInvoice=Un tiers doit être défini sur le projet pour pouvoir le facturer. +ChooseANotYetAssignedTask=Choisissez une tâches qui ne vous est pas encore assignée # Comments trans AllowCommentOnTask=Autoriser les utilisateurs à ajouter des commentaires sur les tâches AllowCommentOnProject=Autoriser les commentaires utilisateur sur les projets @@ -256,7 +255,7 @@ ServiceToUseOnLines=Service à utiliser sur les lignes InvoiceGeneratedFromTimeSpent=La facture %s a été générée à partir du temps passé sur le projet ProjectBillTimeDescription=Cochez si vous saisissez du temps sur les tâches du projet ET prévoyez de générer des factures à partir des temps pour facturer le client du projet (ne cochez pas si vous comptez créer une facture qui n'est pas basée sur la saisie des temps). Note: Pour générer une facture, aller sur l'onglet 'Temps consommé' du project et sélectionnez les lignes à inclure. ProjectFollowOpportunity=Suivre une opportunité -ProjectFollowTasks=Suivre une tache +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Utilisation: Opportunité UsageTasks=Utilisation: Tâches @@ -265,3 +264,4 @@ InvoiceToUse=Facture brouillon à utiliser NewInvoice=Nouvelle facture OneLinePerTask=Une ligne par tâche OneLinePerPeriod=Une ligne par période +RefTaskParent=Réf. Tâche parent diff --git a/htdocs/langs/fr_FR/propal.lang b/htdocs/langs/fr_FR/propal.lang index d9e40866689..4cdb1b05cb3 100644 --- a/htdocs/langs/fr_FR/propal.lang +++ b/htdocs/langs/fr_FR/propal.lang @@ -76,7 +76,7 @@ TypeContact_propal_external_BILLING=Contact client facturation proposition TypeContact_propal_external_CUSTOMER=Contact client suivi proposition TypeContact_propal_external_SHIPPING=Contact client pour la livraison # Document models -DocModelAzurDescription=Un modèle de proposition complet (ancienne implémentation du modèle Cyan) +DocModelAzurDescription=Un modèle de proposition complet DocModelCyanDescription=Un modèle de proposition complet DefaultModelPropalCreate=Modèle par défaut à la création DefaultModelPropalToBill=Modèle par défaut lors de la clôture d'une proposition commerciale (à facturer) diff --git a/htdocs/langs/fr_FR/receiptprinter.lang b/htdocs/langs/fr_FR/receiptprinter.lang index 23970db5ed7..a092201b65b 100644 --- a/htdocs/langs/fr_FR/receiptprinter.lang +++ b/htdocs/langs/fr_FR/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Imprimante Test CONNECTOR_NETWORK_PRINT=Imprimante réseau CONNECTOR_FILE_PRINT=Imprimante locale CONNECTOR_WINDOWS_PRINT=Imprimante Windows local +CONNECTOR_CUPS_PRINT=Imprimante Cups CONNECTOR_DUMMY_HELP=Fausse imprimante pour le test, ne fait rien CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=Nom de l'imprimante CUPS, exemple: HPRT_TP805L PROFILE_DEFAULT=Profil par défaut PROFILE_SIMPLE=Profil standard PROFILE_EPOSTEP=Profil Epos Tep @@ -55,9 +57,39 @@ DOL_UNDERLINE_DISABLED=Désactiver le souligné DOL_BEEP=Bruit de fond DOL_PRINT_TEXT=Imprimer le texte DOL_VALUE_DATE=Date facturation -DOL_VALUE_DATE_TIME=Invoice date and time -DOL_VALUE_YEAR=Invoice year -DOL_VALUE_MONTH_LETTERS=Invoice month in letters -DOL_VALUE_MONTH=Invoice month -DOL_VALUE_DAY=Invoice day -DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_VALUE_DATE_TIME=Date et heure de facturation +DOL_VALUE_YEAR=Année de facturation +DOL_VALUE_MONTH_LETTERS=Mois de facturation en lettres +DOL_VALUE_MONTH=Mois de facturation +DOL_VALUE_DAY=Jour de facturation +DOL_VALUE_DAY_LETTERS=Jour de facturation en lettres +DOL_LINE_FEED_REVERSE=Retour à la ligne +DOL_VALUE_OBJECT_ID=ID de la facture +DOL_VALUE_OBJECT_REF=Réf facture +DOL_PRINT_OBJECT_LINES=Lignes de facture +DOL_VALUE_CUSTOMER_FIRSTNAME=Prénom du client +DOL_VALUE_CUSTOMER_LASTNAME=Nom du client +DOL_VALUE_CUSTOMER_MAIL=Email client +DOL_VALUE_CUSTOMER_PHONE=Téléphone du client +DOL_VALUE_CUSTOMER_MOBILE=Portable du client +DOL_VALUE_CUSTOMER_SKYPE=Skype du client +DOL_VALUE_CUSTOMER_TAX_NUMBER=Numéro TVA du client +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Solde du compte client +DOL_VALUE_MYSOC_NAME=Nom de votre société +DOL_VALUE_MYSOC_ADDRESS=Adresse de votre société +DOL_VALUE_MYSOC_ZIP=Votre code postal +DOL_VALUE_MYSOC_TOWN=Votre ville +DOL_VALUE_MYSOC_COUNTRY=Votre pays +DOL_VALUE_MYSOC_IDPROF1=Votre IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Votre IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Votre IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Votre IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Votre IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Votre IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Numéro de TVA intracommunautaire +DOL_VALUE_MYSOC_CAPITAL=Capital +DOL_VALUE_VENDOR_LASTNAME=Nom du vendeur +DOL_VALUE_VENDOR_FIRSTNAME=Prénom du vendeur +DOL_VALUE_VENDOR_MAIL=Email du vendeur +DOL_VALUE_CUSTOMER_POINTS=Points client +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/fr_FR/stocks.lang b/htdocs/langs/fr_FR/stocks.lang index b3ea9e04c13..63e966fc0aa 100644 --- a/htdocs/langs/fr_FR/stocks.lang +++ b/htdocs/langs/fr_FR/stocks.lang @@ -218,3 +218,4 @@ InventoryForASpecificWarehouse=Inventaire pour un entrepôt spécifique InventoryForASpecificProduct=Inventaire pour un produit spécifique StockIsRequiredToChooseWhichLotToUse=Le module Stock est requis pour choisir une lot ForceTo=Forcer à +AlwaysShowFullArbo=Toujours afficher l'arborescence complète dans le lien vers la fiche \ No newline at end of file diff --git a/htdocs/langs/fr_FR/stripe.lang b/htdocs/langs/fr_FR/stripe.lang index 27c220f7ec5..57b5c7e29ca 100644 --- a/htdocs/langs/fr_FR/stripe.lang +++ b/htdocs/langs/fr_FR/stripe.lang @@ -32,6 +32,7 @@ VendorName=Nom du vendeur CSSUrlForPaymentForm=URL feuille style css pour le formulaire de paiement NewStripePaymentReceived=Nouveau paiement Stripe reçu NewStripePaymentFailed=Nouveau paiement Stripe tenté mais en échec +FailedToChargeCard=Échec d'encaissement de la carte STRIPE_TEST_SECRET_KEY=Clé secrète de test STRIPE_TEST_PUBLISHABLE_KEY=Clé plublique de test STRIPE_TEST_WEBHOOK_KEY=Clé test des Webhooks @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Lien pour la configuration de Stripe WebHook pour app 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... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authenticatin rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/fr_FR/users.lang b/htdocs/langs/fr_FR/users.lang index 332306735cc..1ed6c956e66 100644 --- a/htdocs/langs/fr_FR/users.lang +++ b/htdocs/langs/fr_FR/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Utilisateurs et attributs DomainUser=Utilisateur du domaine %s Reactivate=Réactiver CreateInternalUserDesc=Ce formulaire permet de créer un utilisateur interne à votre société/institution. Pour créer un utilisateur externe (client, fournisseur, ...), utilisez le bouton 'Créer compte utilisateur' qui se trouve sur la fiche du contact du tiers. -InternalExternalDesc=Un utilisateur interne est un utilisateur qui fait partie de votre société/institution.
    Un utilisateur externe est un compte utilisateur pour une client, fournisseur ou autre.

    Dans les deux cas, les permissions déterminent les accès aux fonctionnalités de Dolibarr. De plus, les utilisateurs externes peuvent avoir un gestionnaire de menu différent des utilisateurs internes (Voir Accueil > configuration > Affichage) +InternalExternalDesc=Un utilisateur interne est un utilisateur qui fait partie de votre société/institution.
    Un utilisateur externe est un compte utilisateur pour un client, fournisseur ou autre (La création d'un utilisateur externe pour un tiers peut etre fait depuis la fiche d'un contact de tiers).

    Dans les deux cas, les permissions déterminent les accès aux fonctionnalités. De plus, les utilisateurs externes peuvent avoir un gestionnaire de menu différent des utilisateurs internes (Voir Accueil > configuration > Affichage) PermissionInheritedFromAGroup=La permission est accordée car héritée d'un groupe auquel appartient l'utilisateur. Inherited=Hérité UserWillBeInternalUser=L'utilisateur créé sera un utilisateur interne (car non lié à un tiers en particulier) @@ -78,6 +78,7 @@ UserWillBeExternalUser=L'utilisateur créé sera un utilisateur externe (car li IdPhoneCaller=Identifiant appelant (téléphone) NewUserCreated=Création utilisateur %s NewUserPassword=Changement mot de passe de %s +NewPasswordValidated=Votre nouveau mot de passe a été validé et doit être utilisé maintenant pour vous connecter. EventUserModified=Modification utilisateur %s UserDisabled=Désactivation utilisateur %s UserEnabled=Activation utilisateur %s @@ -110,3 +111,8 @@ UserLogged=Utilisateur connecté DateEmployment=Date d'embauche DateEmploymentEnd=Date de fin d'emploi CantDisableYourself=Vous ne pouvez pas désactiver votre propre compte utilisateur +ForceUserExpenseValidator=Forcer le valideur des notes de frais +ForceUserHolidayValidator=Forcer le valideur des congés +ValidatorIsSupervisorByDefault=Par défaut, le valideur est le responsable hiérarchique de l'utilisateur. Gardez vide pour conserver ce comportement. +UserPersonalEmail=Email personnel +UserPersonalMobile=Téléphone portable personnel diff --git a/htdocs/langs/fr_FR/website.lang b/htdocs/langs/fr_FR/website.lang index 0ffa73a567c..f24b01e192a 100644 --- a/htdocs/langs/fr_FR/website.lang +++ b/htdocs/langs/fr_FR/website.lang @@ -42,7 +42,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éé 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. +SetHereVirtualHost= Utilisation avec Apache/NGinx/...
    Créez sur votre serveur Web (Apache, Nginx, ...) un hôte virtuel dédié avec PHP activé et un répertoire racine sur
    %s +ExampleToUseInApacheVirtualHostConfig=Exemple à utiliser dans la configuration de l'hôte virtuel Apache: 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 YouCanAlsoDeployToAnotherWHP=Exécutez votre site Web avec un autre fournisseur d'hébergement Dolibarr
    Si vous ne disposez pas d'un serveur Web tel qu'Apache ou NGinx sur Internet, vous pouvez exporter et importer votre site Web vers une autre instance de Dolibarr fournie par un autre fournisseur d'hébergement Dolibarr offrant une intégration complète avec le module de site Web. Vous pouvez trouver une liste de certains hébergeurs Dolibarr sur https://saas.dolibarr.org CheckVirtualHostPerms=Vérifiez également que le virtual host a la permission %s sur les fichiers dans %s @@ -56,7 +57,7 @@ NoPageYet=Pas de page pour l'instant YouCanCreatePageOrImportTemplate=Vous pouvez créer une nouvelle page ou importer un modèle de site Web complet. SyntaxHelp=Aide sur quelques astuces spécifiques de syntaxe YouCanEditHtmlSourceckeditor=Vous pouvez éditer le code source en activant l'éditeur HTML avec le bouton "Source". -YouCanEditHtmlSource=
    Vous pouvez inclure du code PHP dans cette source en utilisant les balises <?php ?>. Les variables globales suivantes sont disponibles: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    Vous pouvez également inclure le contenu d'une autre page / conteneur avec la syntaxe suivante:
    <? php includeContainer ('alias_of_container_to_include'); ?>

    Vous pouvez créer une redirection vers une autre page / conteneur avec la syntaxe suivante (Remarque: ne pas afficher de contenu avant une redirection):
    <? php redirectToContainer ('alias_of_container_to_redirect_to'); ?>

    Pour ajouter un lien vers une autre page, utilisez la syntaxe:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    Pour inclure un lien pour télécharger un fichier stocké dans le répertoire des documents , utilisez l'encapsuleur document.php :
    Exemple, pour un fichier dans documents/ecm (besoin d'être loggué), la syntaxe est:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    Pour un fichier dans des documents/médias (répertoire ouvert pour accès public), la syntaxe est:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    Pour un fichier partagé avec un lien de partage (accès ouvert en utilisant la clé de partage du fichier), la syntaxe est la suivante:
    <a href="/document.php?hashp=publicsharekeyoffile">

    Pour inclure une image stockée dans le répertoire documents, utilisez le wrapper viewimage.php :
    Exemple, pour une image dans des documents/médias (répertoire ouvert), la syntaxe est:
    <img src = "/viewimage.php?modulepart=media&file=[relative_dir/]filename.ext">

    Plus d'exemples de code HTML ou dynamique sont disponibles sur la documentation du wiki
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Cloner la page/container CloneSite=Cloner le site SiteAdded=Site web ajouté @@ -76,7 +77,7 @@ BlogPost=Article de Blog WebsiteAccount=Compte de site Web WebsiteAccounts=Comptes de site web AddWebsiteAccount=Créer un compte de site web -BackToListOfThirdParty=Retour à la liste pour le Tiers +BackToListForThirdParty=Retour à la liste pour le tiers DisableSiteFirst=Désactiver le site Web d'abord MyContainerTitle=Titre de mon site web AnotherContainer=Voici comment inclure le contenu d'une autre page/conteneur (vous pouvez avoir une erreur ici si vous activez le code dynamique car le sous-conteneur incorporé peut ne pas exister) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Désolé, ce site est actuellement hors ligne. Me WEBSITE_USE_WEBSITE_ACCOUNTS=Activer la table des comptes du site Web WEBSITE_USE_WEBSITE_ACCOUNTSTooltip=Activer la table pour stocker les comptes de site Web (login / pass) pour chaque site web / tiers YouMustDefineTheHomePage=Vous devez d'abord définir la page d'accueil par défaut -OnlyEditionOfSourceForGrabbedContentFuture=Avertissement: La création d'une page Web en important une page Web externe est réservée à un utilisateur expérimenté. Selon la complexité de la page source, le résultat de l'importation peut différer une fois importé de l'original. De même, si la page source utilise un style CSS commun ou un code JavaScript non compatible, cela peut casser l'apparence ou les fonctionnalités de l'éditeur de site Web lorsque vous travaillez sur cette page. Cette méthode est un moyen plus rapide d’avoir une page, mais il est recommandé de créer votre nouvelle page à partir de rien ou à partir d’un modèle de page suggéré.
    Notez également que seule l’édition de la source HTML sera possible lorsqu’un contenu de page aura été initialisé par une capture d'une page externe (l'éditeur "en ligne" ne sera PAS disponible) +OnlyEditionOfSourceForGrabbedContentFuture=Avertissement: La création d'une page Web en important une page Web externe est réservée aux utilisateurs expérimentés. Selon la complexité de la page source, le résultat de l'importation peut différer une fois importé de l'original. De même, si la page source utilise un style CSS en conflit ou un code JavaScript non compatible, cela peut casser l'apparence ou les fonctionnalités de l'éditeur de site Web lorsque vous travaillez sur cette page. Cette méthode est un moyen plus rapide de créer une nouvelle page, mais il est recommandé de créer votre nouvelle page à partir de rien ou à partir d’un modèle de page suggéré.
    Notez également que seule l’éditeur en ligne peut ne pas fonctionner correctement quand il est utilisé sur une page créée par aspiration. OnlyEditionOfSourceForGrabbedContent=Seule l'édition de source HTML est possible lorsque le contenu a été aspiré depuis un site externe GrabImagesInto=Aspirer aussi les images trouvées dans les css et la page. ImagesShouldBeSavedInto=Les images doivent être sauvegardées dans le répertoire @@ -121,6 +122,9 @@ BackToHomePage=Retour à la page d'accueil... TranslationLinks=Liens de traduction YouTryToAccessToAFileThatIsNotAWebsitePage=Vous tentez d'accéder à une page qui n'est pas une page du site web UseTextBetween5And70Chars=Pour les bonnes pratiques de référencement, utilisez un texte de 5 à 70 caractères -MainLanguage=Main language -OtherLanguages=Other languages -UseManifest=Provide a manifest.json file +MainLanguage=Langage principal +OtherLanguages=Autres langues +UseManifest=Fournir un fichier manifest.json +PublicAuthorAlias=Alias publique de l'auteur +AvailableLanguagesAreDefinedIntoWebsiteProperties=Les langues disponibles sont définies dans les propriétés du site Web +ReplacementDoneInXPages=Remplacement effectué dans %s pages ou des conteneurs diff --git a/htdocs/langs/fr_GA/accountancy.lang b/htdocs/langs/fr_GA/accountancy.lang new file mode 100644 index 00000000000..9827b9d3795 --- /dev/null +++ b/htdocs/langs/fr_GA/accountancy.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - accountancy +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 diff --git a/htdocs/langs/fr_GA/admin.lang b/htdocs/langs/fr_GA/admin.lang new file mode 100644 index 00000000000..27c312f77d7 --- /dev/null +++ b/htdocs/langs/fr_GA/admin.lang @@ -0,0 +1,5 @@ +# Dolibarr language file - Source file is en_US - admin +MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the maximum filesize for upload to %s %s, irrespective of the value of this parameter +Module56Name=Telephony +Module56Desc=Telephony integration +EmailCollectorLoadThirdPartyHelp=You can use this action to use the email content to find and load an existing thirdparty in your database. The found (or created) thirdparty will be used for following actions that need it. In the parameter field you can use for example 'EXTRACT:BODY:Name:\\s([^\\s]*)' if you want to extract the name of the thirdparty from a string 'Name: name to find' found into the body. diff --git a/htdocs/langs/fr_GA/main.lang b/htdocs/langs/fr_GA/main.lang new file mode 100644 index 00000000000..2e691473326 --- /dev/null +++ b/htdocs/langs/fr_GA/main.lang @@ -0,0 +1,21 @@ +# Dolibarr language file - Source file is en_US - main +DIRECTION=ltr +FONTFORPDF=helvetica +FONTSIZEFORPDF=10 +SeparatorDecimal=. +SeparatorThousand=, +FormatDateShort=%m/%d/%Y +FormatDateShortInput=%m/%d/%Y +FormatDateShortJava=MM/dd/yyyy +FormatDateShortJavaInput=MM/dd/yyyy +FormatDateShortJQuery=mm/dd/yy +FormatDateShortJQueryInput=mm/dd/yy +FormatHourShortJQuery=HH:MI +FormatHourShort=%I:%M %p +FormatHourShortDuration=%H:%M +FormatDateTextShort=%b %d, %Y +FormatDateText=%B %d, %Y +FormatDateHourShort=%m/%d/%Y %I:%M %p +FormatDateHourSecShort=%m/%d/%Y %I:%M:%S %p +FormatDateHourTextShort=%b %d, %Y, %I:%M %p +FormatDateHourText=%B %d, %Y, %I:%M %p diff --git a/htdocs/langs/fr_GA/modulebuilder.lang b/htdocs/langs/fr_GA/modulebuilder.lang new file mode 100644 index 00000000000..8bbcc78a506 --- /dev/null +++ b/htdocs/langs/fr_GA/modulebuilder.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - modulebuilder +ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: diff --git a/htdocs/langs/fr_GA/projects.lang b/htdocs/langs/fr_GA/projects.lang new file mode 100644 index 00000000000..7e42793b0e9 --- /dev/null +++ b/htdocs/langs/fr_GA/projects.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - projects +CantRemoveProject=This project can't be removed as it is referenced by some other objects (invoice, orders or other). See referers tab. diff --git a/htdocs/langs/gl_ES/accountancy.lang b/htdocs/langs/gl_ES/accountancy.lang new file mode 100644 index 00000000000..27f6d9f08b9 --- /dev/null +++ b/htdocs/langs/gl_ES/accountancy.lang @@ -0,0 +1,382 @@ +# Dolibarr language file - en_US - Accountancy (Double entries) +Accountancy=Accountancy +Accounting=Contabilidade +ACCOUNTING_EXPORT_SEPARATORCSV=Separador de columnas no ficheiro de exportación +ACCOUNTING_EXPORT_DATE=Formato de data no ficheiro de exportación +ACCOUNTING_EXPORT_PIECE=Exportar o número de asento +ACCOUNTING_EXPORT_GLOBAL_ACCOUNT=Exportar coa conta global +ACCOUNTING_EXPORT_LABEL=Exportar etiqueta +ACCOUNTING_EXPORT_AMOUNT=Exportar importe +ACCOUNTING_EXPORT_DEVISE=Exportar divisa +Selectformat=Seleccione o formato do ficheiro +ACCOUNTING_EXPORT_FORMAT=Seleccione o formato do ficheiro +ACCOUNTING_EXPORT_ENDLINE=Seleccione o tipo de retorno de carro +ACCOUNTING_EXPORT_PREFIX_SPEC=Especifique o prefixo do nome de ficheiro +ThisService=Este servizo +ThisProduct=Este produto +DefaultForService=Predeterminado para o servizo +DefaultForProduct=Predeterminado para o produto +CantSuggest=Non pode suxerirse +AccountancySetupDoneFromAccountancyMenu=A maior parte da configuración da contabilidad realizase dende o menú %s +ConfigAccountingExpert=Configuración do módulo contabilidade avanzada +Journalization=Procesar diarios +Journaux=Diarios +JournalFinancial=Diarios financieiros +BackToChartofaccounts=Voltar ao plan contable +Chartofaccounts=Plan contable +CurrentDedicatedAccountingAccount=Conta contable adicada +AssignDedicatedAccountingAccount=Nova conta a asignar +InvoiceLabel=Etiqueta factura +OverviewOfAmountOfLinesNotBound=Resumo da cantidade de liñas non vinculadas a unha conta contable +OverviewOfAmountOfLinesBound=Resumo da cantidade de liñas xa vinculadas a unha conta contable +OtherInfo=Outra información +DeleteCptCategory=Eliminar a conta contable do grupo +ConfirmDeleteCptCategory=¿Está certo de querer eliminar esta conta contable do grupo de contas contables? +JournalizationInLedgerStatus=Estado de diario +AlreadyInGeneralLedger=Xa rexistrado no Libro Maior +NotYetInGeneralLedger=Non foi rexistrado aínda no Libro Maior +GroupIsEmptyCheckSetup=O grupo está baleiro, comprobe a configuración d a personalización de grupos contables +DetailByAccount=Amosar detalles por conta +AccountWithNonZeroValues=Contas con valores non cero +ListOfAccounts=Listaxe de contas +CountriesInEEC=Países na CEE +CountriesNotInEEC=Países non CEE +CountriesInEECExceptMe=Todos os paises incluidos na CEE excepto %s +CountriesExceptMe=Todos os países excepto %s +AccountantFiles=Exportar documentos contables + +MainAccountForCustomersNotDefined=Conta contable principal para clientes non definida na configuración +MainAccountForSuppliersNotDefined=Conta contable principal para provedores non definida na configuración +MainAccountForUsersNotDefined=Conta contable principal para usuarios non definida na configuración +MainAccountForVatPaymentNotDefined=Conta contable principal para pagos de IVE non definida na configuración +MainAccountForSubscriptionPaymentNotDefined=Conta contable principal para o pago de subscricións non definida na configuración + +AccountancyArea=Área contabilidade +AccountancyAreaDescIntro=O uso do módulo de contabilidade realízase en varios pasos: +AccountancyAreaDescActionOnce=As seguintes accións execútanse normalmente unha soa vez, ou unha vez ao ano... +AccountancyAreaDescActionOnceBis=Os seguintes pasos deben facerse para aforrar tempo no futuro, suxerindo a conta contable predeterminada correcta para realizar os diarios (escritura dos rexistros nos Diarios e Libro Maior) +AccountancyAreaDescActionFreq=As seguintes accións execútanse normalmente cada mes, semana ou día en empresas moi grandes... + +AccountancyAreaDescJournalSetup=PASO %s: Cree ou mire o contido da sua listaxe de diarios dende o menú %s +AccountancyAreaDescChartModel=PASO %s: Crea un modelo do plan xeral contable dende o menú %s +AccountancyAreaDescChart=PASO %s: Crear ou mirar o contido do seu plan xeral contable dende o menú %s + +AccountancyAreaDescVat=PASO %s: Defina as contas contables para cada tasa de IVE. Para iso, use a entrada do menú %s. +AccountancyAreaDescDefault=PASO %s: Defina as contas contables por defecto. Para iso, use a entrada do menú %s. +AccountancyAreaDescExpenseReport=PASO %s: Defina as contas contables por defecto para cada tipo de informe de gastos. Para iso, use a entrada do menú %s. +AccountancyAreaDescSal=PASO %s: Defina as contas contables para os pagos de salarios. Para iso, use a entrada do menú %s. +AccountancyAreaDescContrib=PASO %s: Defina as contas contables dos gastos especiais (impostos varios). Para iso, use a entrada do menú %s. +AccountancyAreaDescDonation=PASO %s: Defina as contas contables para as donacións. Para iso, use a entrada do menú %s. +AccountancyAreaDescSubscription=STEP %s: Defina as contas contables por defecto para a subscrición de membros. Para iso, use a entrada do menú %s. +AccountancyAreaDescMisc=PASO %s: Defina a conta por defecto obrigada e as contas contables por defecto para transaccións varias. Para iso, use a entrada do menú %s. +AccountancyAreaDescLoan=PASO %s: Defina as contas contables por defecto para préstamos. Para iso, use a entrada do menú %s.\n +AccountancyAreaDescBank=PASO %s: Defina as contas contables e o código para cada conta bancaria e financiera. Pode empezar dende a páxina %s. +AccountancyAreaDescProd=PASO %s: Defina as contas contables nos seus produtos/servizos. Para elo pode utilizar o menú %s. + +AccountancyAreaDescBind=PASO %s: Mire que os enlaces entre as liñas %s existentes e as contas contables son correctos, para que a aplicación poda rexistrar as transaccións no Libro Maior nun só clic. Complete os enlaces que falten. Para iso, utilice a entrada de menú %s. +AccountancyAreaDescWriteRecords=PASO %s: Escribir as transaccións no Libro Maior. Para iso, entre no menú %s, e faga clic no botón %s. +AccountancyAreaDescAnalyze=PASO %s: Engadir ou editar transaccións existentes, xerar informes e exportacións. + +AccountancyAreaDescClosePeriod=PASO %s: Pechar periodo, polo que non poderá facer modificacións nun futuro. + +TheJournalCodeIsNotDefinedOnSomeBankAccount=Non foi completado un paso obrigatorio na configuración (conta contable non definida en todas as contas bancarias) +Selectchartofaccounts=Seleccione un plan contable activo +ChangeAndLoad=Cambiar e cargar +Addanaccount=Engadir unha conta contable +AccountAccounting=Conta contable +AccountAccountingShort=Conta +SubledgerAccount=Subconta contable +SubledgerAccountLabel=Etiqueta subconta contable +ShowAccountingAccount=Amosar contabilidade +ShowAccountingJournal=Amosar diario contable +AccountAccountingSuggest=Conta contable suxerida +MenuDefaultAccounts=Contas contables por defecto +MenuBankAccounts=Contas Bancarias +MenuVatAccounts=Contas de IVE +MenuTaxAccounts=Contas de impostos +MenuExpenseReportAccounts=Contas de informes de gastos +MenuLoanAccounts=Contas de préstamos +MenuProductsAccounts=Contas de produtos +MenuClosureAccounts=Contas de peche +MenuAccountancyClosure=Closure +MenuAccountancyValidationMovements=Validate movements +ProductsBinding=Contas de produtos +TransferInAccounting=Transfer in accounting +RegistrationInAccounting=Registration in accounting +Binding=Contabilizar +CustomersVentilation=Contabilizar facturas a clientes +SuppliersVentilation=Contabilizar facturas de provedores +ExpenseReportsVentilation=Contabilizar informes de gastos +CreateMvts=Crear nova transacción +UpdateMvts=Modificación dunha transacción +ValidTransaction=Transacción validada +WriteBookKeeping=Register transactions in Ledger +Bookkeeping=Libro Maior +AccountBalance=Saldo da conta +ObjectsRef=Referencia de obxecto orixe +CAHTF=Total compras a provedor antes de impostos +TotalExpenseReport=Total informe de gastos +InvoiceLines=Liñas de facturas a contabilizar +InvoiceLinesDone=Liñas de facturas contabilizadas +ExpenseReportLines=Liñas de informes de gastos a contabilizar +ExpenseReportLinesDone=Liñas de informes de gastos contabilizadas +IntoAccount=Contabilizar liña coa conta contable +TotalForAccount=Total for accounting account + + +Ventilate=Contabilizar +LineId=Id liña +Processing=Procesamento +EndProcessing=Proceso terminado. +SelectedLines=Liñas seleccionadas +Lineofinvoice=Liña da factura +LineOfExpenseReport=Liña de informe de gastos +NoAccountSelected=Non foi seleccionada conta contable +VentilatedinAccount=Contabilizada con éxito na conta contable +NotVentilatedinAccount=Conta sen contabilización na contabilidad +XLineSuccessfullyBinded=%s produtos/servizos relacionados correctamente nunha conta contable +XLineFailedToBeBinded=%s produtos/servizos sen conta contable + +ACCOUNTING_LIMIT_LIST_VENTILATION=Número de elementos a contabilizar que amósanse por páxina (máximo recomendado: 50) +ACCOUNTING_LIST_SORT_VENTILATION_TODO=Ordear as páxinas de contabilización "A contabilizar" polos elementos mais recentes +ACCOUNTING_LIST_SORT_VENTILATION_DONE=Ordear as páxinas de contabilización "Contabilizadas" polos elementos mais recentes + +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=Length of the third-party accounting accounts (If you set value to 6 here, the account '401' will appear like '401000' on screen) +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=Habilita a lista combinada para a conta subsidiaria (pode ser lento se tes moitos terceiros) + +ACCOUNTING_SELL_JOURNAL=Diario de vendas +ACCOUNTING_PURCHASE_JOURNAL=Diario de compras +ACCOUNTING_MISCELLANEOUS_JOURNAL=Diario de operacións diversas +ACCOUNTING_EXPENSEREPORT_JOURNAL=Informe de gastos diario +ACCOUNTING_SOCIAL_JOURNAL=Diario social +ACCOUNTING_HAS_NEW_JOURNAL=Ten un novo diario + +ACCOUNTING_RESULT_PROFIT=Conta de resultado contable (Beneficio) +ACCOUNTING_RESULT_LOSS=Conta de resultado contable (Perda) +ACCOUNTING_CLOSURE_DEFAULT_JOURNAL=Diario de peche + +ACCOUNTING_ACCOUNT_TRANSFER_CASH=Conta contable de transferencia bancaria +TransitionalAccount=Transitional bank transfer account + +ACCOUNTING_ACCOUNT_SUSPENSE=Conta contable de operacións pendentes de asignar +DONATION_ACCOUNTINGACCOUNT=Conta contable de rexistro de donacións +ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Conta contable de rexistro subscricións + +ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_SOLD_ACCOUNT=Conta contable predeterminada para os produtos vendidos (usada se non están definidos na folla de produtos) +ACCOUNTING_PRODUCT_SOLD_INTRA_ACCOUNT=Accounting account by default for the products sold in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported out of EEC (used if not defined in the product sheet) + +ACCOUNTING_SERVICE_BUY_ACCOUNT=Conta contable predeterminada para os servizos comprados (usada se non están definidos na folla de servizos) +ACCOUNTING_SERVICE_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_SOLD_ACCOUNT=Conta contable predeterminada para os servizos vendidos (usada se non están definidos na folla de servizos) +ACCOUNTING_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) + +Doctype=Tipo de documento +Docdate=Data +Docref=Referencia +LabelAccount=Etiqueta conta +LabelOperation=Etiqueta operación +Sens=Sentido +LetteringCode=Codigo de letras +Lettering=Lettering +Codejournal=Diario +JournalLabel=Etiqueta diario +NumPiece=Apunte +TransactionNumShort=Núm. transacción +AccountingCategory=Grupos personalizados +GroupByAccountAccounting=Agrupar por conta contable +AccountingAccountGroupsDesc=Pode definir aquí algúns grupos de contas contables. Serán usadas para informes de contabilidade personalizados. +ByAccounts=Por contas +ByPredefinedAccountGroups=Por grupos predefinidos +ByPersonalizedAccountGroups=Por grupos personalizados +ByYear=Por ano +NotMatch=Non establecido +DeleteMvt=Eliminar liñas do Libro Maior +DelMonth=Month to delete +DelYear=Ano a eliminar +DelJournal=Diario a eliminar +ConfirmDeleteMvt=This will delete all lines of the Ledger for the year/month and/or from a specific journal (At least one criterion is required). You will have to reuse the feature 'Registration in accounting' to have the deleted record back in the ledger. +ConfirmDeleteMvtPartial=This will delete the transaction from the Ledger (all lines related to same transaction will be deleted) +FinanceJournal=Diario financiero +ExpenseReportsJournal=Diario informe de gastos +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=Conta contable para IVE non definida +ThirdpartyAccountNotDefined=Conta contable para terceiro non definida +ProductAccountNotDefined=Conta contable para produto non definida +FeeAccountNotDefined=Conta de gastos non definida +BankAccountNotDefined=Conta contable bancaria no definida +CustomerInvoicePayment=Cobro de factura a cliente +ThirdPartyAccount=Conta de terceiro +NewAccountingMvt=Novo movemento +NumMvts=Número de movemento +ListeMvts=Listaxe de movementos +ErrorDebitCredit=Debe e Haber non poden conter un valor ao mesmo tempo +AddCompteFromBK=Engadir contas contables ao grupo +ReportThirdParty=Listaxe de contas de terceiros +DescThirdPartyReport=Consulte aquí o listaxe de clientes e provedores e os seus códigos contables +ListAccounts=Listaxe de contas contables +UnknownAccountForThirdparty=Conta contable de terceiro descoñecida, usaremos %s +UnknownAccountForThirdpartyBlocking=Conta contable de terceiro descoñecida. Erro de bloqueo. +ThirdpartyAccountNotDefinedOrThirdPartyUnknown=Third-party account not defined or third party unknown. We will use %s +ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unknown and subledger not defined on the payment. We will keep the subledger account value empty. +ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Conta contable de terceiro non definida ou terceiro descoñecido. Erro de bloqueo. +UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error +PaymentsNotLinkedToProduct=Payment not linked to any product / service +OpeningBalance=Opening balance +ShowOpeningBalance=Show opening balance +HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group + +Pcgtype=Grupo de conta +PcgtypeDesc=Group 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. + +Reconcilable=Reconcilable + +TotalVente=Total facturación antes de impostos +TotalMarge=Total marxe vendas + +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: +Vide=- +DescVentilSupplier=Consult here the list of vendor invoice lines bound or not yet bound to a product accounting account (only record not already transfered in accountancy are visible) +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 + +DescClosure=Consult here the number of movements by month who are not validated & fiscal years already open +OverviewOfMovementsNotValidated=Step 1/ Overview of movements not validated. (Necessary to close a fiscal year) +ValidateMovements=Validate movements +DescValidateMovements=Any modification or deletion of writing, lettering and deletes will be prohibited. All entries for an exercise must be validated otherwise closing will not be possible +SelectMonthAndValidate=Select month and validate movements + +ValidateHistory=Bind Automatically +AutomaticBindingDone=Automatic binding done + +ErrorAccountancyCodeIsAlreadyUse=Error, you cannot delete this accounting account because it is used +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 +ShowTutorial=Show Tutorial +NotReconciled=Non reconciliado + +## Admin +ApplyMassCategories=Apply mass categories +AddAccountFromBookKeepingWithNoCategories=Available account not yet in the personalized group +CategoryDeleted=Category for the accounting account has been removed +AccountingJournals=Accounting journals +AccountingJournal=Accounting journal +NewAccountingJournal=New accounting journal +ShowAccountingJournal=Amosar diario contable +NatureOfJournal=Nature of Journal +AccountingJournalType1=Miscellaneous operations +AccountingJournalType2=Sales +AccountingJournalType3=Purchases +AccountingJournalType4=Banco +AccountingJournalType5=Expenses report +AccountingJournalType8=Inventario +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 + +## 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) +Modelcsv_openconcerto=Export for OpenConcerto (Test) +Modelcsv_configurable=Export CSV Configurable +Modelcsv_FEC=Export FEC +Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta +ChartofaccountsId=Chart of accounts Id + +## 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 used for accounting closures. +Options=Options +OptionModeProductSell=Mode sales +OptionModeProductSellIntra=Mode sales exported in EEC +OptionModeProductSellExport=Mode sales exported in other countries +OptionModeProductBuy=Mode purchases +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries +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. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign 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 +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. + +## Dictionary +Range=Range of accounting account +Calculated=Calculado +Formula=Fórmula + +## 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 + +## 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 diff --git a/htdocs/langs/gl_ES/admin.lang b/htdocs/langs/gl_ES/admin.lang new file mode 100644 index 00000000000..2ac9627eb55 --- /dev/null +++ b/htdocs/langs/gl_ES/admin.lang @@ -0,0 +1,2002 @@ +# Dolibarr language file - Source file is en_US - admin +Foundation=Fundación +Version=Versión +Publisher=Editor +VersionProgram=Versión do programa +VersionLastInstall=Versión da instalación inicial +VersionLastUpgrade=Versión da última actualización +VersionExperimental=Experimental +VersionDevelopment=Desenvolvemento +VersionUnknown=Descoñecida +VersionRecommanded=Recomendada +FileCheck=Comprobador da integridade de ficheiros +FileCheckDesc=Esta ferramenta permítelle verificar a integridade dos ficheiros e a configuración da súa aplicación, comparando cada ficheiro co oficial. Tamén podese verificar o valor de algunhas constantes de configuración. Pódes utilizar esta ferramenta para detectar se algúns ficheiros foron modificados (ex. por un hacker). +FileIntegrityIsStrictlyConformedWithReference=A integridade dos ficheiros axústase estritamente a referencia. +FileIntegrityIsOkButFilesWereAdded=A comprobación da integridade dos ficheiros foi correcta, con todo engadíronse algunhos ficheiros novos. +FileIntegritySomeFilesWereRemovedOrModified=A comprobación da integridade de ficheiros fallou. Algunhos ficheiros foron modificados, eliminados ou agregados. +GlobalChecksum=Suma de comprobación global +MakeIntegrityAnalysisFrom=Realizar a análise da integridade dos ficheiros da aplicación dende +LocalSignature=Sinatura local incrustada (menos segura) +RemoteSignature=Sinatura remota (mais segura) +FilesMissing=Arquivos non atopados +FilesUpdated=Arquivos actualizados +FilesModified=Arquivos modificados +FilesAdded=Arquivos engadidos +FileCheckDolibarr=Comprobar a integradade dos ficheiros da aplicación +AvailableOnlyOnPackagedVersions=O ficheiro local para a comprobación da integridade só está dispoñible cando a aplicación instálase dende un paquete oficial +XmlNotFound=Non atópase o ficheiro xml de Integridade +SessionId=ID sesión +SessionSaveHandler=Manexador para gardar sesións +SessionSavePath=Ruta para gardar sesión +PurgeSessions=Purga de sesións +ConfirmPurgeSessions=¿Realmente desexa purgar todas as sesións? Isto desconectará todos os usuarios (excepto a si mesmo). +NoSessionListWithThisHandler=O xestor de sesións configurado no seu PHP non permite amosar as sesións en curso +LockNewSessions=Bloquear novas conexións +ConfirmLockNewSessions=¿Está certo de querer restrinxir calquera novo aceso a Dolibarr únicamente ao seu usuario? Só o usuario %s poderá conectarse despois disto. +UnlockNewSessions=Eliminar bloqueo de conexións +YourSession=A súa sesión +Sessions=Sesións de usuarios +WebUserGroup=Usuario/grupo do servidor web +NoSessionFound=Your PHP configuration seems to not allow listing of active sessions. The directory used to save sessions (%s) may be protected (for example by OS permissions or by PHP directive open_basedir). +DBStoringCharset=Xogo de caracteres da base de dados para almacenar os dados +DBSortingCharset=Xogo de caracteres da base de dados para ordear os dados +HostCharset=Host charset +ClientCharset=Client charset +ClientSortingCharset=Client collation +WarningModuleNotActive=O módulo %s debe activarse +WarningOnlyPermissionOfActivatedModules=Só os permisos relacionados cos modulos activados mostránse aqui. Vostede pode activar outros módulos na páxina Inicio->Configuración->Módulos. +DolibarrSetup=Instalar ou actualizar Dolibarr +InternalUser=Usuario interno +ExternalUser=Usuario externo +InternalUsers=Usuarios internos +ExternalUsers=Usuarios externos +GUISetup=Pantalla +SetupArea=Config. +UploadNewTemplate=Nova(s) prantilla(s) actualizada(s) +FormToTestFileUploadForm=Formulario para verificar a subida de ficheiros (segundo a configuración) +IfModuleEnabled=Nota: sí, é efectivo só se o módulo %s está habilitado +RemoveLock=Elimine o ficheiro %s, se existe, para permitir o uso da ferramenta de Actualización/Instalación. +RestoreLock=Restore file %s, with read permission only, to disable any further use of the Update/Install tool. +SecuritySetup=Configuración de seguridade +SecurityFilesDesc=Define here options related to security about uploading files. +ErrorModuleRequirePHPVersion=Erro, este módulo require a versión %s ou maior de PHP +ErrorModuleRequireDolibarrVersion=Erro, este módulo require a versión %s ou maior de Dolibarr +ErrorDecimalLargerThanAreForbidden=Erro, a precisión maior de %s non está soportada. +DictionarySetup=Configuración dos Diccionarios +Dictionary=Diccionarios +ErrorReservedTypeSystemSystemAuto=O valor 'system' e 'systemauto' para o tipo está reservado. Vostede pode empregar 'user' como valor para engadir o seu propio rexistro +ErrorCodeCantContainZero=O código non pode conter o valor 0 +DisableJavascript=Inhabilitar as funcións JavaScript e Ajax +DisableJavascriptNote=Note: For test or debug purpose. For optimization for blind person or text browsers, you may prefer to use the setup on the profile of user +UseSearchToSelectCompanyTooltip=Also if you have a large number of third parties (> 100 000), you can increase speed by setting constant COMPANY_DONOTSEARCH_ANYWHERE to 1 in Setup->Other. Search will then be limited to start of string. +UseSearchToSelectContactTooltip=Also if you have a large number of third parties (> 100 000), you can increase speed by setting constant CONTACT_DONOTSEARCH_ANYWHERE to 1 in Setup->Other. Search will then be limited to start of string. +DelaiedFullListToSelectCompany=Wait until a key is pressed before loading content of Third Parties combo list.
    This may increase performance if you have a large number of third parties, but it is less convenient. +DelaiedFullListToSelectContact=Wait until a key is pressed before loading content of Contact combo list.
    This may increase performance if you have a large number of contacts, but it is less convenient) +NumberOfKeyToSearch=Number of characters to trigger search: %s +NumberOfBytes=Number of Bytes +SearchString=Search string +NotAvailableWhenAjaxDisabled=Not available when Ajax disabled +AllowToSelectProjectFromOtherCompany=On document of a third party, can choose a project linked to another third party +JavascriptDisabled=Javascript desactivado +UsePreviewTabs=Ver lapelas vista previa +ShowPreview=Ver vista previa +PreviewNotAvailable=Vista previa non dispoñible +ThemeCurrentlyActive=Tema actualmente activo +CurrentTimeZone=Zona horaria PHP (Servidor) +MySQLTimeZone=Zona horaria MySql (base de datos) +TZHasNoEffect=Dates are stored and returned by database server as if they were kept as submitted string. The timezone has effect only when using the UNIX_TIMESTAMP function (that should not be used by Dolibarr, so database TZ should have no effect, even if changed after data was entered). +Space=Área +Table=Taboa +Fields=Campos +Index=Índice +Mask=Máscara +NextValue=Próximo valor +NextValueForInvoices=Próximo valor (facturas) +NextValueForCreditNotes=Próximo valor (abonos) +NextValueForDeposit=Próximo valor (anticipos) +NextValueForReplacements=Próximo valor (rectificativas) +MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the maximum filesize for upload to %s %s, irrespective of the value of this parameter +NoMaxSizeByPHPLimit=Nota: Ningunha limitación está configurada no seu servidor PHP +MaxSizeForUploadedFiles=Tamaño máximo dos ficheiros a subir (0 para desactivar a subida) +UseCaptchaCode=Utilización de código gráfico (CAPTCHA) na páxina de inicio de sesión +AntiVirusCommand=Ruta completa ao comando do antivirus +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe +AntiVirusParam= Mais parámetors na liña de comandos +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" +ComptaSetup=Configuración do módulo Contabilidade +UserSetup=Configuración na xestión de usuarios +MultiCurrencySetup=Configuración do módulo multimoeda +MenuLimits=Límites e precisión +MenuIdParent=Id do menú pai +DetailMenuIdParent=ID do menú pai (baleiro para un menú superior) +DetailPosition=Número de orde para definir a posición do menú +AllMenus=Todos +NotConfigured=Módulo/Aplicación non configurado +Active=Activo +SetupShort=Config. +OtherOptions=Outras opcións +OtherSetup=Outra configuración +CurrentValueSeparatorDecimal=Separador decimal +CurrentValueSeparatorThousand=Separador miles +Destination=Destino +IdModule=Identificador do modulo +IdPermissions=Identificador de permisos +LanguageBrowserParameter=Parámetro %s +LocalisationDolibarrParameters=Parámetros de localización +ClientTZ=Zona Horaria Cliente (usuario) +ClientHour=Hora Cliente (usuario) +OSTZ=Zona Horaria Servidor +PHPTZ=Zona Horaria Servidor PHP +DaylingSavingTime=Horario de verán (usuario) +CurrentHour=Hora PHP (servidor) +CurrentSessionTimeOut=Timeout sesión actual +YouCanEditPHPTZ=To set a different PHP timezone (not required), you can try to add a .htaccess file with a line like this "SetEnv TZ Europe/Paris" +HoursOnThisPageAreOnServerTZ=Atención, ao contrario doutras pantallas, o horario nesta páxina non atópase na súa zona horaria local, atópase na zona horaria do servidor. +Box=Panel +Boxes=Paneis +MaxNbOfLinesForBoxes=Número máximo de liñas para paneis +AllWidgetsWereEnabled=Todos os widgets dispoñibles están activados +PositionByDefault=Posición por defecto +Position=Posición +MenusDesc=Menu managers set content of the two menu bars (horizontal and vertical). +MenusEditorDesc=The menu editor allows you to define custom menu entries. Use it carefully to avoid instability and permanently unreachable menu entries.
    Some modules add menu entries (in menu All mostly). If you remove some of these entries by mistake, you can restore them disabling and reenabling the module. +MenuForUsers=Menú para os usuarios +LangFile=ficheiro .lang +Language_en_US_es_MX_etc=Language (en_US, es_MX, ...) +System=Sistema +SystemInfo=Infomación do Sistema +SystemToolsArea=Área utilidades do sistema +SystemToolsAreaDesc=This area provides administration functions. Use the menu to choose the required feature. +Purge=Purga +PurgeAreaDesc=This page allows you to delete all files generated or stored by Dolibarr (temporary files or all files in %s directory). Using this feature is not normally necessary. It is provided as a workaround for users whose Dolibarr is hosted by a provider that does not offer permissions to delete files generated by the web server. +PurgeDeleteLogFile=Delete log files, including %s defined for Syslog module (no risk of losing data) +PurgeDeleteTemporaryFiles=Delete all temporary files (no risk of losing data). Note: Deletion is done only if the temp directory was created 24 hours ago. +PurgeDeleteTemporaryFilesShort=Eliminar ficheiros temporais purgados +PurgeDeleteAllFilesInDocumentsDir=Delete all files in directory: %s.
    This will delete all generated documents related to elements (third parties, invoices etc...), files uploaded into the ECM module, database backup dumps and temporary files. +PurgeRunNow=Purgar agora +PurgeNothingToDelete=Sen directorios ou ficheiros a eliminar. +PurgeNDirectoriesDeleted=%s ficheiros ou directorios eliminados +PurgeNDirectoriesFailed=Erro ao eliminar %s ficheiros ou directorios. +PurgeAuditEvents=Purgar todos os eventos de seguridade +ConfirmPurgeAuditEvents=Are you sure you want to purge all security events? All security logs will be deleted, no other data will be removed. +GenerateBackup=Xerar copia de seguridade +Backup=Copia de seguridade +Restore=Restore +RunCommandSummary=Backup has been launched with the following command +BackupResult=Resultado da copia de seguridade +BackupFileSuccessfullyCreated=Backup file successfully generated +YouCanDownloadBackupFile=The generated file can now be downloaded +NoBackupFileAvailable=No backup files available. +ExportMethod=Export method +ImportMethod=Método de importación +ToBuildBackupFileClickHere=To build a backup file, click here. +ImportMySqlDesc=To import a MySQL backup file, you may use phpMyAdmin via your hosting or use the mysql command from the Command line.
    For example: +ImportPostgreSqlDesc=To import a backup file, you must use pg_restore command from command line: +ImportMySqlCommand=%s %s < mybackupfile.sql +ImportPostgreSqlCommand=%s %s mybackupfile.sql +FileNameToGenerate=Nombre do ficheiro de copia de seguridade: +Compression=Compresión +CommandsToDisableForeignKeysForImport=Command to disable foreign keys on import +CommandsToDisableForeignKeysForImportWarning=Mandatory if you want to be able to restore your sql dump later +ExportCompatibility=Compatibility of generated export file +ExportUseMySQLQuickParameter=Use the --quick parameter +ExportUseMySQLQuickParameterHelp=The '--quick' parameter helps limit RAM consumption for large tables. +MySqlExportParameters=MySQL export parameters +PostgreSqlExportParameters= PostgreSQL export parameters +UseTransactionnalMode=Use transactional mode +FullPathToMysqldumpCommand=Full path to mysqldump command +FullPathToPostgreSQLdumpCommand=Full path to pg_dump command +AddDropDatabase=Engados orde DROP DATABASE +AddDropTable=Engadir orde DROP TABLE +ExportStructure=Structure +NameColumn=Name columns +ExtendedInsert=Extended INSERT +NoLockBeforeInsert=No lock commands around INSERT +DelayedInsert=Delayed insert +EncodeBinariesInHexa=Encode binary data in hexadecimal +IgnoreDuplicateRecords=Ignore errors of duplicate record (INSERT IGNORE) +AutoDetectLang=Autodetectar (idioma navegador) +FeatureDisabledInDemo=Feature disabled in demo +FeatureAvailableOnlyOnStable=Feature only available on official stable versions +BoxesDesc=Widgets are components showing some information that you can add to personalize some pages. You can choose between showing the widget or not by selecting target page and clicking 'Activate', or by clicking the trashcan to disable it. +OnlyActiveElementsAreShown=Only elements from enabled modules are shown. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. +ModulesMarketPlaceDesc=You can find more modules to download on external websites on the Internet... +ModulesDeployDesc=If permissions on your file system allow it, you can use this tool to deploy an external module. The module will then be visible on the tab %s. +ModulesMarketPlaces=Find external app/modules +ModulesDevelopYourModule=Develop your own app/modules +ModulesDevelopDesc=You may also develop your own module or find a partner to develop one for you. +DOLISTOREdescriptionLong=Instead of switching on www.dolistore.com web site to find an external module, you can use this embedded tool that will perform the search on the external market place for you (may be slow, need an internet access)... +NewModule=Novo +FreeModule=Free +CompatibleUpTo=Compatible coa versión %s +NotCompatible=This module does not seem compatible with your Dolibarr %s (Min %s - Max %s). +CompatibleAfterUpdate=This module requires an update to your Dolibarr %s (Min %s - Max %s). +SeeInMarkerPlace=See in Market place +SeeSetupOfModule=See setup of module %s +Updated=Actualizado +Nouveauté=Novidade +AchatTelechargement=Compra/Descarga +GoModuleSetupArea=To deploy/install a new module, go to the Module setup area: %s. +DoliStoreDesc=DoliStore, the official market place for Dolibarr ERP/CRM external modules +DoliPartnersDesc=List of companies providing custom-developed modules or features.
    Note: since Dolibarr is an open source application, anyone experienced in PHP programming may develop a module. +WebSiteDesc=External websites for more add-on (non-core) modules... +DevelopYourModuleDesc=Some solutions to develop your own module... +URL=URL +RelativeURL=Relative URL +BoxesAvailable=Widgets available +BoxesActivated=Widgets activated +ActivateOn=Activate on +ActiveOn=Activated on +SourceFile=Source file +AvailableOnlyIfJavascriptAndAjaxNotDisabled=Available only if JavaScript is not disabled +Required=Required +UsedOnlyWithTypeOption=Used by some agenda option only +Security=Security +Passwords=Passwords +DoNotStoreClearPassword=Encrypt passwords stored in database (NOT as plain-text). It is strongly recommended to activate this option. +MainDbPasswordFileConfEncrypted=Encrypt database password stored in conf.php. It is strongly recommended to activate this option. +InstrucToEncodePass=To have password encoded into the conf.php file, replace the line
    $dolibarr_main_db_pass="...";
    by
    $dolibarr_main_db_pass="crypted:%s"; +InstrucToClearPass=To have password decoded (clear) into the conf.php file, replace the line
    $dolibarr_main_db_pass="crypted:...";
    by
    $dolibarr_main_db_pass="%s"; +ProtectAndEncryptPdfFiles=Protect generated PDF files. This is NOT recommended as it breaks bulk PDF generation. +ProtectAndEncryptPdfFilesDesc=Protection of a PDF document keeps it available to read and print with any PDF browser. However, editing and copying is not possible anymore. Note that using this feature makes building of a global merged PDFs not working. +Feature=Feature +DolibarrLicense=License +Developpers=Developers/contributors +OfficialWebSite=Dolibarr official web site +OfficialWebSiteLocal=Local web site (%s) +OfficialWiki=Dolibarr documentation / Wiki +OfficialDemo=Dolibarr online demo +OfficialMarketPlace=Official market place for external modules/addons +OfficialWebHostingService=Referenced web hosting services (Cloud hosting) +ReferencedPreferredPartners=Preferred Partners +OtherResources=Other resources +ExternalResources=External Resources +SocialNetworks=Social Networks +ForDocumentationSeeWiki=For user or developer documentation (Doc, FAQs...),
    take a look at the Dolibarr Wiki:
    %s +ForAnswersSeeForum=For any other questions/help, you can use the Dolibarr forum:
    %s +HelpCenterDesc1=Here are some resources for getting help and support with Dolibarr. +HelpCenterDesc2=Some of these resources are only available in english. +CurrentMenuHandler=Current menu handler +MeasuringUnit=Unidade de medida +LeftMargin=Marxe esquerdo +TopMargin=Marxe superior +PaperSize=Tipo de papel +Orientation=Orientación +SpaceX=Área X +SpaceY=Área Y +FontSize=Tamaño da fonte +Content=Contido +NoticePeriod=Prazo de aviso +NewByMonth=Novo por mes +Emails=E-Mails +EMailsSetup=Configuración e-mails +EMailsDesc=This page allows you to override your default PHP parameters for email sending. In most cases on Unix/Linux OS, the PHP setup is correct and these parameters are unnecessary. +EmailSenderProfiles=Emails sender profiles +EMailsSenderProfileDesc=You can keep this section empty. If you enter some emails here, they will be added to the list of possible senders into the combobox when your write a new email. +MAIN_MAIL_SMTP_PORT=SMTP/SMTPS Port (default value in php.ini: %s) +MAIN_MAIL_SMTP_SERVER=SMTP/SMTPS Host (default value in php.ini: %s) +MAIN_MAIL_SMTP_PORT_NotAvailableOnLinuxLike=SMTP/SMTPS Port (Not defined into PHP on Unix-like systems) +MAIN_MAIL_SMTP_SERVER_NotAvailableOnLinuxLike=SMTP/SMTPS Host (Not defined into PHP on Unix-like systems) +MAIN_MAIL_EMAIL_FROM=Sender email for automatic emails (default value in php.ini: %s) +MAIN_MAIL_ERRORS_TO=Email used for error returns emails (fields 'Errors-To' in emails sent) +MAIN_MAIL_AUTOCOPY_TO= Copy (Bcc) all sent emails to +MAIN_DISABLE_ALL_MAILS=Disable all email sending (for test purposes or demos) +MAIN_MAIL_FORCE_SENDTO=Send all emails to (instead of real recipients, for test purposes) +MAIN_MAIL_ENABLED_USER_DEST_SELECT=Suggest emails of employees (if defined) into the list of predefined recipient when writing a new email +MAIN_MAIL_SENDMODE=Email sending method +MAIN_MAIL_SMTPS_ID=SMTP ID (if sending server requires authentication) +MAIN_MAIL_SMTPS_PW=SMTP Password (if sending server requires authentication) +MAIN_MAIL_EMAIL_TLS=Use TLS (SSL) encryption +MAIN_MAIL_EMAIL_STARTTLS=Use TLS (STARTTLS) encryption +MAIN_MAIL_EMAIL_DKIM_ENABLED=Use DKIM to generate email signature +MAIN_MAIL_EMAIL_DKIM_DOMAIN=Email Domain for use with dkim +MAIN_MAIL_EMAIL_DKIM_SELECTOR=Name of dkim selector +MAIN_MAIL_EMAIL_DKIM_PRIVATE_KEY=Private key for dkim signing +MAIN_DISABLE_ALL_SMS=Disable all SMS sending (for test purposes or demos) +MAIN_SMS_SENDMODE=Method to use to send SMS +MAIN_MAIL_SMS_FROM=Default sender phone number for SMS sending +MAIN_MAIL_DEFAULT_FROMTYPE=Default sender email for manual sending (User email or Company email) +UserEmail=User email +CompanyEmail=Company Email +FeatureNotAvailableOnLinux=Feature not available on Unix like systems. Test your sendmail program locally. +SubmitTranslation=If the translation for this language is not complete or you find errors, you can correct this by editing files in directory langs/%s and submit your change to www.transifex.com/dolibarr-association/dolibarr/ +SubmitTranslationENUS=If translation for this language is not complete or you find errors, you can correct this by editing files into directory langs/%s and submit modified files on dolibarr.org/forum or for developers on github.com/Dolibarr/dolibarr. +ModuleSetup=Configuración do Módulo +ModulesSetup=Configuración dos Módulos/Aplicacións +ModuleFamilyBase=Sistema +ModuleFamilyCrm=Xestión da Relación co Cliente (CRM) +ModuleFamilySrm=Xestión d Relacións co Provedore (VRM) +ModuleFamilyProducts=Xestión de produtos (PM) +ModuleFamilyHr=Xestión de Recursos Humanos (HR) +ModuleFamilyProjects=Proxectos/Traballo colaborativo +ModuleFamilyOther=Outro +ModuleFamilyTechnic=Ferramenta para Multi Módulos +ModuleFamilyExperimental=Módulos experimentais +ModuleFamilyFinancial=Módulos financieros (Contabilidade/Tesourería) +ModuleFamilyECM=Xestión Electrónica de Contidos (GED) +ModuleFamilyPortal=Sitios Web e outras aplicacións frontais +ModuleFamilyInterface=Interfaces con sistemas externos +MenuHandlers=Xestores de menú +MenuAdmin=Editor de menú +DoNotUseInProduction=Non usar en produción +ThisIsProcessToFollow=Upgrade procedure: +ThisIsAlternativeProcessToFollow=This is an alternative setup to process manually: +StepNb=Step %s +FindPackageFromWebSite=Find a package that provides the features you need (for example on the official web site %s). +DownloadPackageFromWebSite=Download package (for example from the official web site %s). +UnpackPackageInDolibarrRoot=Unpack/unzip the packaged files into your Dolibarr server directory: %s +UnpackPackageInModulesRoot=To deploy/install an external module, unpack/unzip the packaged files into the server directory dedicated to external modules:
    %s +SetupIsReadyForUse=Module deployment is finished. You must however enable and setup the module in your application by going to the page setup modules: %s. +NotExistsDirect=The alternative root directory is not defined to an existing directory.
    +InfDirAlt=Since version 3, it is possible to define an alternative root directory. This allows you to store, into a dedicated directory, plug-ins and custom templates.
    Just create a directory at the root of Dolibarr (eg: custom).
    +InfDirExample=
    Then declare it in the file conf.php
    $dolibarr_main_url_root_alt='/custom'
    $dolibarr_main_document_root_alt='/path/of/dolibarr/htdocs/custom'
    If these lines are commented with "#", to enable them, just uncomment by removing the "#" character. +YouCanSubmitFile=You can upload the .zip file of module package from here: +CurrentVersion=Dolibarr current version +CallUpdatePage=Browse to the page that updates the database structure and data: %s. +LastStableVersion=Latest stable version +LastActivationDate=Latest activation date +LastActivationAuthor=Latest activation author +LastActivationIP=Latest activation IP +UpdateServerOffline=Update server offline +WithCounter=Manage a counter +GenericMaskCodes=You may enter any numbering mask. In this mask, the following tags could be used:
    {000000} corresponds to a number which will be incremented on each %s. Enter as many zeros as the desired length of the counter. The counter will be completed by zeros from the left in order to have as many zeros as the mask.
    {000000+000} same as previous but an offset corresponding to the number to the right of the + sign is applied starting on first %s.
    {000000@x} same as previous but the counter is reset to zero when month x is reached (x between 1 and 12, or 0 to use the early months of fiscal year defined in your configuration, or 99 to reset to zero every month). If this option is used and x is 2 or higher, then sequence {yy}{mm} or {yyyy}{mm} is also required.
    {dd} day (01 to 31).
    {mm} month (01 to 12).
    {yy}, {yyyy} or {y} year over 2, 4 or 1 numbers.
    +GenericMaskCodes2={cccc} the client code on n characters
    {cccc000} the client code on n characters is followed by a counter dedicated for customer. This counter dedicated to customer is reset at same time than global counter.
    {tttt} The code of third party type on n characters (see menu Home - Setup - Dictionary - Types of third parties). If you add this tag, the counter will be different for each type of third party.
    +GenericMaskCodes3=All other characters in the mask will remain intact.
    Spaces are not allowed.
    +GenericMaskCodes4a=Example on the 99th %s of the third party TheCompany, with date 2007-01-31:
    +GenericMaskCodes4b=Example on third party created on 2007-03-01:
    +GenericMaskCodes4c=Example on product created on 2007-03-01:
    +GenericMaskCodes5=ABC{yy}{mm}-{000000} will give ABC0701-000099
    {0000+100@1}-ZZZ/{dd}/XXX will give 0199-ZZZ/31/XXX
    IN{yy}{mm}-{0000}-{t} will give IN0701-0099-A if the type of company is 'Responsable Inscripto' with code for type that is 'A_RI' +GenericNumRefModelDesc=Returns a customizable number according to a defined mask. +ServerAvailableOnIPOrPort=Server is available at address %s on port %s +ServerNotAvailableOnIPOrPort=Server is not available at address %s on port %s +DoTestServerAvailability=Test server connectivity +DoTestSend=Test sending +DoTestSendHTML=Test sending HTML +ErrorCantUseRazIfNoYearInMask=Error, can't use option @ to reset counter each year if sequence {yy} or {yyyy} is not in mask. +ErrorCantUseRazInStartedYearIfNoYearMonthInMask=Error, can't use option @ if sequence {yy}{mm} or {yyyy}{mm} is not in mask. +UMask=UMask parameter for new files on Unix/Linux/BSD/Mac file system. +UMaskExplanation=This parameter allow you to define permissions set by default on files created by Dolibarr on server (during upload for example).
    It must be the octal value (for example, 0666 means read and write for everyone).
    This parameter is useless on a Windows server. +SeeWikiForAllTeam=Take a look at the Wiki page for a list of contributors and their organization +UseACacheDelay= Delay for caching export response in seconds (0 or empty for no cache) +DisableLinkToHelpCenter=Hide link "Need help or support" on login page +DisableLinkToHelp=Hide link to online help "%s" +AddCRIfTooLong=There is no automatic text wrapping, text that is too long will not display on documents. Please add carriage returns in the text area if needed. +ConfirmPurge=Are you sure you want to execute this purge?
    This will permanently delete all your data files with no way to restore them (ECM files, attached files...). +MinLength=Minimum length +LanguageFilesCachedIntoShmopSharedMemory=Files .lang loaded in shared memory +LanguageFile=Language file +ExamplesWithCurrentSetup=Examples with current configuration +ListOfDirectories=List of OpenDocument templates directories +ListOfDirectoriesForModelGenODT=List of directories containing templates files with OpenDocument format.

    Put here full path of directories.
    Add a carriage return between eah 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. +NumberOfModelFilesFound=Number of ODT/ODS template files found in these directories +ExampleOfDirectoriesForModelGen=Examples of syntax:
    c:\\mydir
    /home/mydir
    DOL_DATA_ROOT/ecm/ecmdir +FollowingSubstitutionKeysCanBeUsed=
    To know how to create your odt document templates, before storing them in those directories, read wiki documentation: +FullListOnOnlineDocumentation=http://wiki.dolibarr.org/index.php/Create_an_ODT_document_template +FirstnameNamePosition=Position of Name/Lastname +DescWeather=The following images will be shown on the dashboard when the number of late actions reach the following values: +KeyForWebServicesAccess=Key to use Web Services (parameter "dolibarrkey" in webservices) +TestSubmitForm=Input test form +ThisForceAlsoTheme=Using this menu manager will also use its own theme whatever the user choice. Also this menu manager specialized for smartphones does not work on all smartphone. Use another menu manager if you experience problems with yours. +ThemeDir=Skins directory +ConnectionTimeout=Connection timeout +ResponseTimeout=Response timeout +SmsTestMessage=Test message from __PHONEFROM__ to __PHONETO__ +ModuleMustBeEnabledFirst=Module %s must be enabled first if you need this feature. +SecurityToken=Key to secure URLs +NoSmsEngine=No SMS sender manager available. A SMS sender manager is not installed with the default distribution because they depend on an external vendor, but you can find some on %s +PDF=PDF +PDFDesc=Global options for PDF generation. +PDFAddressForging=Rules for address boxes +HideAnyVATInformationOnPDF=Hide all information related to Sales Tax / VAT +PDFRulesForSalesTax=Rules for Sales Tax / VAT +PDFLocaltax=Rules for %s +HideLocalTaxOnPDF=Hide %s rate in column Tax Sale +HideDescOnPDF=Hide products description +HideRefOnPDF=Hide products ref. +HideDetailsOnPDF=Hide product lines details +PlaceCustomerAddressToIsoLocation=Use french standard position (La Poste) for customer address position +Library=Library +UrlGenerationParameters=Parameters to secure URLs +SecurityTokenIsUnique=Use a unique securekey parameter for each URL +EnterRefToBuildUrl=Enter reference for object %s +GetSecuredUrl=Get calculated URL +ButtonHideUnauthorized=Hide buttons for non-admin users for unauthorized actions instead of showing greyed disabled buttons +OldVATRates=Old VAT rate +NewVATRates=New VAT rate +PriceBaseTypeToChange=Modify on prices with base reference value defined on +MassConvert=Launch bulk conversion +PriceFormatInCurrentLanguage=Price Format In Current Language +String=String +TextLong=Long text +HtmlText=Html text +Int=Integer +Float=Float +DateAndTime=Data e hora +Unique=Único +Boolean=Boolean (unha caixa de verificación) +ExtrafieldPhone = Teléfono +ExtrafieldPrice = Prezo +ExtrafieldMail = Correo +ExtrafieldUrl = Url +ExtrafieldSelect = Listaxe de selección +ExtrafieldSelectList = Listaxe dende unha taboa +ExtrafieldSeparator=Separador (non é un campo) +ExtrafieldPassword=Contrasinal +ExtrafieldRadio=Botón tipo radio (só un seleccionado) +ExtrafieldCheckBox=Caixa de verificación +ExtrafieldCheckBoxFromList=Caixa de verificaciión de táboa +ExtrafieldLink=Vínculo a un obxecto +ComputedFormula=Computed field +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +Computedpersistent=Store computed field +ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! +ExtrafieldParamHelpPassword=Leaving this field blank means this value will be stored without encryption (field must be only hidden with star on screen).
    Set 'auto' to use the default encryption rule to save password into database (then value read will be the hash only, no way to retrieve original value) +ExtrafieldParamHelpselect=List of values must be lines with format key,value (where key can't be '0')

    for example:
    1,value1
    2,value2
    code3,value3
    ...

    In order to have the list depending on another complementary attribute list:
    1,value1|options_parent_list_code:parent_key
    2,value2|options_parent_list_code:parent_key

    In order to have the list depending on another list:
    1,value1|parent_list_code:parent_key
    2,value2|parent_list_code:parent_key +ExtrafieldParamHelpcheckbox=List of values must be lines with format key,value (where key can't be '0')

    for example:
    1,value1
    2,value2
    3,value3
    ... +ExtrafieldParamHelpradio=List of values must be lines with format key,value (where key can't be '0')

    for example:
    1,value1
    2,value2
    3,value3
    ... +ExtrafieldParamHelpsellist=List of values comes from a table
    Syntax: table_name:label_field:id_field::filter
    Example: c_typent:libelle:id::filter

    - idfilter is necessarly a primary int key
    - filter can be a simple test (eg active=1) to display only active value
    You can also use $ID$ in filter witch is the current id of current object
    To do a SELECT in filter use $SEL$
    if you want to filter on extrafields use syntax extra.fieldcode=... (where field code is the code of extrafield)

    In order to have the list depending on another complementary attribute list:
    c_typent:libelle:id:options_parent_list_code|parent_column:filter

    In order to have the list depending on another list:
    c_typent:libelle:id:parent_list_code|parent_column:filter +ExtrafieldParamHelpchkbxlst=List of values comes from a table
    Syntax: table_name:label_field:id_field::filter
    Example: c_typent:libelle:id::filter

    filter can be a simple test (eg active=1) to display only active value
    You can also use $ID$ in filter witch is the current id of current object
    To do a SELECT in filter use $SEL$
    if you want to filter on extrafields use syntax extra.fieldcode=... (where field code is the code of extrafield)

    In order to have the list depending on another complementary attribute list:
    c_typent:libelle:id:options_parent_list_code|parent_column:filter

    In order to have the list depending on another list:
    c_typent:libelle:id:parent_list_code|parent_column:filter +ExtrafieldParamHelplink=Parameters must be ObjectName:Classpath
    Syntax: ObjectName:Classpath
    Examples:
    Societe:societe/class/societe.class.php
    Contact:contact/class/contact.class.php +ExtrafieldParamHelpSeparator=Keep empty for a simple separator
    Set this to 1 for a collapsing separator (open by default for new session, then status is kept for each user session)
    Set this to 2 for a collapsing separator (collapsed by default for new session, then status is kept fore each user session) +LibraryToBuildPDF=Library used for PDF generation +LocalTaxDesc=Some countries may apply two or three taxes on each invoice line. If this is the case, choose the type for the second and third tax and its rate. Possible type are:
    1: local tax apply on products and services without vat (localtax is calculated on amount without tax)
    2: local tax apply on products and services including vat (localtax is calculated on amount + main tax)
    3: local tax apply on products without vat (localtax is calculated on amount without tax)
    4: local tax apply on products including vat (localtax is calculated on amount + main vat)
    5: local tax apply on services without vat (localtax is calculated on amount without tax)
    6: local tax apply on services including vat (localtax is calculated on amount + tax) +SMS=SMS +LinkToTestClickToDial=Enter a phone number to call to show a link to test the ClickToDial url for user %s +RefreshPhoneLink=Refresh link +LinkToTest=Clickable link generated for user %s (click phone number to test) +KeepEmptyToUseDefault=Keep empty to use default value +DefaultLink=Default link +SetAsDefault=Set as default +ValueOverwrittenByUserSetup=Warning, this value may be overwritten by user specific setup (each user can set his own clicktodial url) +ExternalModule=External module +InstalledInto=Installed into directory %s +BarcodeInitForthird-parties=Mass barcode init for third-parties +BarcodeInitForProductsOrServices=Mass barcode init or reset for products or services +CurrentlyNWithoutBarCode=Currently, you have %s record on %s %s without barcode defined. +InitEmptyBarCode=Init value for next %s empty records +EraseAllCurrentBarCode=Erase all current barcode values +ConfirmEraseAllCurrentBarCode=Are you sure you want to erase all current barcode values? +AllBarcodeReset=All barcode values have been removed +NoBarcodeNumberingTemplateDefined=No numbering barcode template enabled in the Barcode module setup. +EnableFileCache=Enable file cache +ShowDetailsInPDFPageFoot=Add more details into footer, such as company address or manager names (in addition to professional ids, company capital and VAT number). +NoDetails=No additional details in footer +DisplayCompanyInfo=Display company address +DisplayCompanyManagers=Display manager names +DisplayCompanyInfoAndManagers=Display company address and manager names +EnableAndSetupModuleCron=If you want to have this recurring invoice generated automatically, module *%s* must be enabled and correctly setup. Otherwise, generation of invoices must be done manually from this template using the *Create* button. Note that even if you enabled automatic generation, you can still safely launch manual generation. Generation of duplicates for the same period is not possible. +ModuleCompanyCodeCustomerAquarium=%s followed by customer code for a customer accounting code +ModuleCompanyCodeSupplierAquarium=%s followed by vendor code for a vendor accounting code +ModuleCompanyCodePanicum=Return an empty accounting code. +ModuleCompanyCodeDigitaria=Returns a compound accounting code according to the name of the third party. The code consists of a prefix that can be defined in the first position followed by the number of characters defined in the third party code. +ModuleCompanyCodeCustomerDigitaria=%s followed by the truncated customer name by the number of characters: %s for the customer accounting code. +ModuleCompanyCodeSupplierDigitaria=%s followed by the truncated supplier name by the number of characters: %s for the supplier accounting code. +Use3StepsApproval=By default, Purchase Orders need to be created and approved by 2 different users (one step/user to create and one step/user to approve. Note that if user has both permission to create and approve, one step/user will be enough). You can ask with this option to introduce a third step/user approval, if amount is higher than a dedicated value (so 3 steps will be necessary: 1=validation, 2=first approval and 3=second approval if amount is enough).
    Set this to empty if one approval (2 steps) is enough, set it to a very low value (0.1) if a second approval (3 steps) is always required. +UseDoubleApproval=Use a 3 steps approval when amount (without tax) is higher than... +WarningPHPMail=WARNING: It is often better to setup outgoing emails to use the email server of your provider instead of the default setup. Some email providers (like Yahoo) do not allow you to send an email from another server than their own server. Your current setup uses the server of the application to send email and not the server of your email provider, so some recipients (the one compatible with the restrictive DMARC protocol), will ask your email provider if they can accept your email and some email providers (like Yahoo) may respond "no" because the server is not theirs, so few of your sent Emails may not be accepted (be careful also of your email provider's sending quota).
    If your Email provider (like Yahoo) has this restriction, you must change Email setup to choose the other method "SMTP server" and enter the SMTP server and credentials provided by your Email provider. +WarningPHPMail2=If your email SMTP provider need to restrict email client to some IP addresses (very rare), this is the IP address of the mail user agent (MUA) for your ERP CRM application: %s. +WarningPHPMailSPF=If the domain name in your sender email address is protected by SPF (ask you email provider), you must include the following IPs in the SPF record of the DNS of your domain: %s. +ClickToShowDescription=Click to show description +DependsOn=This module needs the module(s) +RequiredBy=This module is required by module(s) +TheKeyIsTheNameOfHtmlField=This is the name of the HTML field. Technical knowledge is required to read the content of the HTML page to get the key name of a field. +PageUrlForDefaultValues=You must enter the relative path of the page URL. If you include parameters in URL, the default values will be effective if all parameters are set to same value. +PageUrlForDefaultValuesCreate=
    Example:
    For the form to create a new third party, it is %s.
    For URL of external modules installed into custom directory, do not include the "custom/", so use path like mymodule/mypage.php and not custom/mymodule/mypage.php.
    If you want default value only if url has some parameter, you can use %s +PageUrlForDefaultValuesList=
    Example:
    For the page that lists third parties, it is %s.
    For URL of external modules installed into custom directory, do not include the "custom/" so use a path like mymodule/mypagelist.php and not custom/mymodule/mypagelist.php.
    If you want default value only if url has some parameter, you can use %s +AlsoDefaultValuesAreEffectiveForActionCreate=Also note that overwritting default values for form creation works only for pages that were correctly designed (so with parameter action=create or presend...) +EnableDefaultValues=Enable customization of default values +EnableOverwriteTranslation=Enable usage of overwritten translation +GoIntoTranslationMenuToChangeThis=A translation has been found for the key with this code. To change this value, you must edit it from Home-Setup-translation. +WarningSettingSortOrder=Warning, setting a default sort order may result in a technical error when going on the list page if field is an unknown field. If you experience such an error, come back to this page to remove the default sort order and restore default behavior. +Field=Field +ProductDocumentTemplates=Document templates to generate product document +FreeLegalTextOnExpenseReports=Free legal text on expense reports +WatermarkOnDraftExpenseReports=Watermark on draft expense reports +AttachMainDocByDefault=Set this to 1 if you want to attach main document to email by default (if applicable) +FilesAttachedToEmail=Attach file +SendEmailsReminders=Send agenda reminders by emails +davDescription=Setup a WebDAV server +DAVSetup=Setup of module DAV +DAV_ALLOW_PRIVATE_DIR=Enable the generic private directory (WebDAV dedicated directory named "private" - login required) +DAV_ALLOW_PRIVATE_DIRTooltip=The generic private directory is a WebDAV directory anybody can access with its application login/pass. +DAV_ALLOW_PUBLIC_DIR=Enable the generic public directory (WebDAV dedicated directory named "public" - no login required) +DAV_ALLOW_PUBLIC_DIRTooltip=The generic public directory is a WebDAV directory anybody can access (in read and write mode), with no authorization required (login/password account). +DAV_ALLOW_ECM_DIR=Enable the DMS/ECM private directory (root directory of the DMS/ECM module - login required) +DAV_ALLOW_ECM_DIRTooltip=The root directory where all files are manually uploaded when using the DMS/ECM module. Similarly as access from the web interface, you will need a valid login/password with adecuate permissions to access it. +# Modules +Module0Name=Usuarios e grupos +Module0Desc=Xestión de Usuarios / Empregados e grupos +Module1Name=Terceiros +Module1Desc=Xestión de empresas e contactos (clientes, clientes potenciais...) +Module2Name=Comercial +Module2Desc=Xestión comercial +Module10Name=Accounting (simplified) +Module10Desc=Simple accounting reports (journals, turnover) based on database content. Does not use any ledger table. +Module20Name=Orzamentos +Module20Desc=Xestión de orzamentos/propostas comerciais +Module22Name=Mailings Masivos +Module22Desc=Administración e envío de E-Mails masivos +Module23Name=Enerxía +Module23Desc=Monitoriza o consumo de enerxías +Module25Name=Pedidos de clientes +Module25Desc=Xestión de pedidos de clientes +Module30Name=Facturas e abonos +Module30Desc=Xestión de facturas e abonos a clientes. Xestión de facturas e abonos de provedores +Module40Name=Provedores +Module40Desc=Vendors and purchase management (purchase orders and billing of supplier invoices) +Module42Name=Rexistros de depuración +Module42Desc=Xeración de logs (ficheiros, syslog,...). Ditos rexistros son para propósitos técnicos/depuración. +Module49Name=Editores +Module49Desc=Xestión de editores +Module50Name=Produtos +Module50Desc=Xestión de produtos +Module51Name=Mailings masivos +Module51Desc=Administraciónde correo de papel en masa +Module52Name=Stocks +Module52Desc=Stock management +Module53Name=Servizos +Module53Desc=Xestión de servizos +Module54Name=Contratos/Suscricións +Module54Desc=Xestión de contratos (servizos ou suscripcións recurrentes) +Module55Name=Códigos de barras +Module55Desc=Xestión dos códigos de barras +Module56Name=Telefonía +Module56Desc=Integración da telefonía +Module57Name=Domiciliacións bancarias +Module57Desc=Xestión de domiciliacións. Tamén inclue xeración de ficheiro SEPA para países Europeos. +Module58Name=ClickToDial +Module58Desc=Integración con sistema ClickToDial (Asterisk, ...) +Module59Name=Bookmark4u +Module59Desc=Engade función para xerar unha conta Bookmark4u dende unha conta Dolibarr +Module60Name=Stickers +Module60Desc=Management of stickers +Module70Name=Intervencións +Module70Desc=Xestión das intervencións +Module75Name=Notas de gasto e desprazamentos +Module75Desc=Xestión das notas de gasto e desprazamentos +Module80Name=Expedicións +Module80Desc=Xestión de expedicións e recepcións +Module85Name=Bancos & Efectivo +Module85Desc=Xestión das contas de contas bancarias ou efectivo +Module100Name=Sitio web externo +Module100Desc=Add a link to an external website as a main menu icon. Website is shown in a frame under the top menu. +Module105Name=Mailman e SPIP +Module105Desc=Interfaz con Mailman ou SPIP para o módulo Membros +Module200Name=LDAP +Module200Desc=Sincronización co directorio LDAP +Module210Name=PostNuke +Module210Desc=Integración con PostNuke +Module240Name=Exportaciones de datos +Module240Desc=Tool to export Dolibarr data (with assistance) +Module250Name=Importación de datos +Module250Desc=Tool to import data into Dolibarr (with assistance) +Module310Name=Membros +Module310Desc=Xestión de membros dunha Fundación/Asociación +Module320Name=Fíos RSS +Module320Desc=Adición de fíos de información RSS nas páxinas Dolibarr +Module330Name=Marcadores e atallos +Module330Desc=Crear marcadores, sempre accesibles, a páxinas internas ou externas as que acostuma acceder +Module400Name=Proxectos ou Oportunidades +Module400Desc=Xestión de proxectos, oportunidades/leads e/o tarefas. Tamén podes asignar calquera elemento (factura, pedido, orzamento, intervención...) a un proxecto e ter unha vista transversal do proxecto +Module410Name=Webcalendar +Module410Desc=Integración con Webcalendar +Module500Name=Impostos e gastos especiais +Module500Desc=Xestión de outros gastos (impostos, gastos sociais ou fiscais, dividendos...) +Module510Name=Salarios +Module510Desc=Rexistro e seguemento do pago dos salarios aos seus empregados +Module520Name=Crédito +Module520Desc=Xestión de créditos +Module600Name=Notifications on business event +Module600Desc=Enviar notificaciones por e-mail desencadenados por algunos eventos de negocios: para os usuarios (configuración definida para cada usuario), para contactos de terceiros (configuración definida en cada terceiro) ou e-mails específicos +Module600Long=Teña conta que este módulo envía e-mails en tempo real cuando prodúcese un evento. Se está buscando unha función para enviar recordatorios por e-mail dos eventos da súa axenda, vaia á configuración do módulo Axenda. +Module610Name=Variantes de produtos +Module610Desc=Permite a creación de variantes de produtos (cor, talla, etc.) +Module700Name=Donacións +Module700Desc=Xestión de donacións +Module770Name=Informes de gastos +Module770Desc=Xestión de informes de gastos (transporte, alimentación...) +Module1120Name=Orzamento de provedor +Module1120Desc=Solicitude orzamento e prezos a provedor +Module1200Name=Mantis +Module1200Desc=Integración con Mantis +Module1520Name=Xeración Documento +Module1520Desc=Xeración de documentos de correo masivo +Module1780Name=Etiquetas/Categorías +Module1780Desc=Crear etiquetas/categoría (produtos, clientes, provedores, contactos ou membros) +Module2000Name=Editor WYSIWYG +Module2000Desc=Allow text fields to be edited/formatted using CKEditor (html) +Module2200Name=Dynamic Prices +Module2200Desc=Use maths expressions for auto-generation of prices +Module2300Name=Scheduled jobs +Module2300Desc=Scheduled jobs management (alias cron or chrono table) +Module2400Name=Events/Agenda +Module2400Desc=Track events. Log automatic events for tracking purposes or record manual events or meetings. This is the principal module for good Customer or Vendor Relationship Management. +Module2500Name=DMS / ECM +Module2500Desc=Document Management System / Electronic Content Management. Automatic organization of your generated or stored documents. Share them when you need. +Module2600Name=API/Web services (SOAP server) +Module2600Desc=Enable the Dolibarr SOAP server providing API services +Module2610Name=API/Web services (REST server) +Module2610Desc=Enable the Dolibarr REST server providing API services +Module2660Name=Call WebServices (SOAP client) +Module2660Desc=Enable the Dolibarr web services client (Can be used to push data/requests to external servers. Only Purchase orders are currently supported.) +Module2700Name=Gravatar +Module2700Desc=Use online Gravatar service (www.gravatar.com) to show photo of users/members (found with their emails). Needs Internet access +Module2800Desc=FTP Client +Module2900Name=GeoIPMaxmind +Module2900Desc=GeoIP Maxmind conversions capabilities +Module3200Name=Unalterable Archives +Module3200Desc=Enable an unalterable log of business events. Events are archived in real-time. The log is a read-only table of chained events that can be exported. This module may be mandatory for some countries. +Module4000Name=HRM +Module4000Desc=Human resources management (management of department, employee contracts and feelings) +Module5000Name=Multi-empresa +Module5000Desc=Permite xestionar varias empresas +Module6000Name=Fluxo de traballo +Module6000Desc=Xestión de fluxoo de traballo (creación automática dun obxecto e/ou cambio de estado automático) +Module10000Name=Sitios web +Module10000Desc=Create websites (public) with a WYSIWYG editor. This is a webmaster or developer oriented CMS (it is better to know HTML and CSS language). Just setup your web server (Apache, Nginx, ...) to point to the dedicated Dolibarr directory to have it online on the internet with your own domain name. +Module20000Name=Leave Request Management +Module20000Desc=Define and track employee leave requests +Module39000Name=Product Lots +Module39000Desc=Lots, serial numbers, eat-by/sell-by date management for products +Module40000Name=Multicurrency +Module40000Desc=Use alternative currencies in prices and documents +Module50000Name=PayBox +Module50000Desc=Offer customers a PayBox online payment page (credit/debit cards). This can be used to allow your customers to make ad-hoc payments or payments related to a specific Dolibarr object (invoice, order etc...) +Module50100Name=POS SimplePOS +Module50100Desc=Point of Sale module SimplePOS (simple POS). +Module50150Name=POS TakePOS +Module50150Desc=Point of Sale module TakePOS (touchscreen POS, for shops, bars or restaurants). +Module50200Name=Paypal +Module50200Desc=Offer customers a PayPal online payment page (PayPal account or credit/debit cards). This can be used to allow your customers to make ad-hoc payments or payments related to a specific Dolibarr object (invoice, order etc...) +Module50300Name=Stripe +Module50300Desc=Offer customers a Stripe online payment page (credit/debit cards). This can be used to allow your customers to make ad-hoc payments or payments related to a specific Dolibarr object (invoice, order etc...) +Module50400Name=Accounting (double entry) +Module50400Desc=Accounting management (double entries, support general and auxiliary ledgers). Export the ledger in several other accounting software formats. +Module54000Name=PrintIPP +Module54000Desc=Direct print (without opening the documents) using Cups IPP interface (Printer must be visible from server, and CUPS must be installed on server). +Module55000Name=Enquisa ou Voto +Module55000Desc=Create online polls, surveys or votes (like Doodle, Studs, RDVz etc...) +Module59000Name=Margins +Module59000Desc=Module to manage margins +Module60000Name=Commissions +Module60000Desc=Module to manage commissions +Module62000Name=Incoterms +Module62000Desc=Engade funcións para xestionar Incoterms +Module63000Name=Recursos +Module63000Desc=Manage resources (printers, cars, rooms, ...) for allocating to events +Permission11=Consultar facturas de cliente +Permission12=Crear/Modificar facturas de cliente +Permission13=Unvalidate customer invoices +Permission14=Validar facturas de cliente +Permission15=Enviar facturas de cliente por correo +Permission16=Emitir pagos de facturas de cliente +Permission19=Eliminar facturas de cliente +Permission21=Consultar orzamentos comerciais +Permission22=Crear/modificar orzamentos comerciais +Permission24=Validar orzamentos comerciais +Permission25=Enviar orzamentos comerciais +Permission26=Cerrar orzamentos comerciais +Permission27=Eliminar orzamentos comerciais +Permission28=Exportar orzamentos comerciais +Permission31=Consultar produtos +Permission32=Crear/modificar produtos +Permission34=Eliminar produtos +Permission36=Ver/xestionar produtos ocultos +Permission38=Exportar produtos +Permission41=Consultar proxectos e tarefas (proxectos compartidos e proxectos dos que son contacto). Tamén pode introducir tempos consumidos, para mín ou os meus subordinados, en tarefas asignadas (Follas de tempo). +Permission42=Crear/modificar proxectos (proxectos compartidos e proxectos dos que son contacto). Tamén pode crear tarefas e asignar usuarios a proxectos e tarefas +Permission44=Eliminar proxectos (compartidos ou son contacto) +Permission45=Exportar proxectos +Permission61=Consultar intervencións +Permission62=Crear/modificar intervencións +Permission64=Eliminar intervencións +Permission67=Exportar intervencións +Permission71=Consultar membros +Permission72=Crear/modificar membros +Permission74=Eliminar membros +Permission75=Configurar tipos dos membros +Permission76=Exportar datos +Permission78=Consultar cotizacións +Permission79=Crear/modificar cotizacións +Permission81=Consultar pedidos de clientes +Permission82=Crear/modificar pedidos de clientes +Permission84=Validar pedidos de clientes +Permission86=Enviar pedidos de clientes +Permission87=Pechar pedidos de clientes +Permission88=Anular pedidos de clientes +Permission89=Eliminar pedidos de clientes +Permission91=Consultar impostos sociais ou fiscais e IVE +Permission92=Crear/modificar impostos sociais ou fiscais e IVE +Permission93=Eliminar impostos sociais ou fiscais e IVE +Permission94=Exportar impostos sociais ou fiscais +Permission95=Consultar balances e resultados +Permission101=Consultar expedicións +Permission102=Crear/modificar expedicións +Permission104=Validar expedicións +Permission106=Exportar expedicións +Permission109=Eliminar expedicións +Permission111=Consultar contas financieras +Permission112=Crear/modificar/eliminar e comparar movementos bancarios +Permission113=Configurar contas financieras (crear, xestionar categorías) +Permission114=Reconciliar transaccións +Permission115=Exportar transaccións e extractos de conta +Permission116=Transferencias entre contas +Permission117=Xestionar envío de cheques +Permission121=Consultar empresas +Permission122=Crear/modificar terceiros vinculados ao usuario +Permission125=Eliminar terceiros vinculados ao usuario +Permission126=Exportar las empresas +Permission141=Read all projects and tasks (also private projects for which I am not a contact) +Permission142=Create/modify all projects and tasks (also private projects for which I am not a contact) +Permission144=Delete all projects and tasks (also private projects i am not contact for) +Permission146=Consultar provedores +Permission147=Consultar estatísticas +Permission151=Leer domiciliacións +Permission152=Crear/modificar domiciliacións +Permission153=Enviar/Trasmitir domiciliacións +Permission154=Rexistrar Abonos/Devolucións de domiciliacións +Permission161=Consultar contratos/suscricións +Permission162=Crear/modificar contratos/suscripcións +Permission163=Activar un servizo/suscripción dun contrato +Permission164=Desactivar un servizo/suscripcion dun contrato +Permission165=Eliminar contratos/suscripcións +Permission167=Exportar contratos +Permission171=Ler viaxes e gastos (seus e dos seus subordinados) +Permission172=Crear/modificar viaxes e gastos +Permission173=Eliminar viaxes e gastos +Permission174=Ler todos os viaxes e gastos +Permission178=Exportar viaxes e gastos +Permission180=Consultar provedores +Permission181=Consultar pedidos a provedores +Permission182=Crear/modificar pedidos a provedores +Permission183=Validar pedidos a provedores +Permission184=Aprobar pedidos a provedores +Permission185=Ordenar ou cancelar pedidos a provedores +Permission186=Recibir pedidos de provedores +Permission187=Pechar pedidos a provedores +Permission188=Anular pedidos a provedores +Permission192=Crear liñas +Permission193=Cancelar liñas +Permission194=Consultar o ancho de banda de liñas +Permission202=Crear conexións ADSL +Permission203=Order connections orders +Permission204=Order connections +Permission205=Manage connections +Permission206=Read connections +Permission211=Read Telephony +Permission212=Order lines +Permission213=Activate line +Permission214=Setup Telephony +Permission215=Setup providers +Permission221=Read emailings +Permission222=Create/modify emailings (topic, recipients...) +Permission223=Validate emailings (allows sending) +Permission229=Delete emailings +Permission237=View recipients and info +Permission238=Manually send mailings +Permission239=Delete mailings after validation or sent +Permission241=Read categories +Permission242=Create/modify categories +Permission243=Delete categories +Permission244=See the contents of the hidden categories +Permission251=Read other users and groups +PermissionAdvanced251=Read other users +Permission252=Read permissions of other users +Permission253=Create/modify other users, groups and permissions +PermissionAdvanced253=Create/modify internal/external users and permissions +Permission254=Create/modify external users only +Permission255=Modify other users password +Permission256=Delete or disable other users +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). +Permission271=Consultar CA +Permission272=Consultar facturas +Permission273=Emitir facturas +Permission281=Consultar contactos +Permission282=Crear/modificar contactos +Permission283=Eliminar contactos +Permission286=Exportar contactos +Permission291=Consultar tarifas +Permission292=Definir permisos sobre as tarifas +Permission293=Modificar tarifas de clientes +Permission300=Ler códigos de barras +Permission301=Crear/modificar códigos de barras +Permission302=Eliminar código de barras +Permission311=Consultar servizos +Permission312=Asignar servizos/suscricións a un contrato +Permission331=Consultar marcadores +Permission332=Crear/modificar marcadores +Permission333=Eliminar marcadores +Permission341=Consultar os seus propios permisos +Permission342=Crear/modificar a súa propia información de usuario +Permission343=Modificar su propia contrasinal +Permission344=Modificar os seus propios permisos +Permission351=Consultar os grupos +Permission352=Consultar os permisos de grupos +Permission353=Crear/modificar os grupos +Permission354=Eliminar ou desactivar grupos +Permission358=Exportar usuarios +Permission401=Read discounts +Permission402=Create/modify discounts +Permission403=Validate discounts +Permission404=Delete discounts +Permission430=Use Debug Bar +Permission511=Read payments of salaries +Permission512=Create/modify payments of salaries +Permission514=Delete payments of salaries +Permission517=Export salaries +Permission520=Read Loans +Permission522=Create/modify loans +Permission524=Delete loans +Permission525=Access loan calculator +Permission527=Export loans +Permission531=Consultar servizos +Permission532=Create/modify services +Permission534=Delete services +Permission536=See/manage hidden services +Permission538=Export services +Permission650=Read Bills of Materials +Permission651=Create/Update Bills of Materials +Permission652=Delete Bills of Materials +Permission701=Read donations +Permission702=Create/modify donations +Permission703=Delete donations +Permission771=Read expense reports (yours and your subordinates) +Permission772=Create/modify expense reports +Permission773=Delete expense reports +Permission774=Read all expense reports (even for user not subordinates) +Permission775=Approve expense reports +Permission776=Pay expense reports +Permission779=Export expense reports +Permission1001=Consultar stocks +Permission1002=Crear/modificar almacéns +Permission1003=Eliminar almacéns +Permission1004=Consultar movementos de stock +Permission1005=Crear/modificar movementos de stock +Permission1101=Read delivery receipts +Permission1102=Create/modify delivery receipts +Permission1104=Validate delivery receipts +Permission1109=Delete delivery receipts +Permission1121=Read supplier proposals +Permission1122=Create/modify supplier proposals +Permission1123=Validate supplier proposals +Permission1124=Send supplier proposals +Permission1125=Delete supplier proposals +Permission1126=Close supplier price requests +Permission1181=Consultar provedores +Permission1182=Consultar pedidos a provedores +Permission1183=Crear/modificar pedidos a provedores +Permission1184=Validar pedidos a provedores +Permission1185=Aprobar pedidos a provedores +Permission1186=Enviar pedidos a provedores +Permission1187=Acknowledge receipt of purchase orders +Permission1188=Delete purchase orders +Permission1190=Approve (second approval) purchase orders +Permission1201=Get result of an export +Permission1202=Create/Modify an export +Permission1231=Read vendor invoices +Permission1232=Create/modify vendor invoices +Permission1233=Validate vendor invoices +Permission1234=Delete vendor invoices +Permission1235=Send vendor invoices by email +Permission1236=Export vendor invoices, attributes and payments +Permission1237=Export purchase orders and their details +Permission1251=Run mass imports of external data into database (data load) +Permission1321=Export customer invoices, attributes and payments +Permission1322=Reopen a paid bill +Permission1421=Export sales orders and attributes +Permission2401=Read actions (events or tasks) linked to his user account (if owner of event or just assigned to) +Permission2402=Create/modify actions (events or tasks) linked to his user account (if owner of event) +Permission2403=Delete actions (events or tasks) linked to his user account (if owner of event) +Permission2411=Read actions (events or tasks) of others +Permission2412=Create/modify actions (events or tasks) of others +Permission2413=Delete actions (events or tasks) of others +Permission2414=Export actions/tasks of others +Permission2501=Read/Download documents +Permission2502=Download documents +Permission2503=Submit or delete documents +Permission2515=Setup documents directories +Permission2801=Use FTP client in read mode (browse and download only) +Permission2802=Use FTP client in write mode (delete or upload files) +Permission3200=Read archived events and fingerprints +Permission4001=See employees +Permission4002=Create employees +Permission4003=Delete employees +Permission4004=Export employees +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. +Permission10005=Delete website content +Permission20001=Read leave requests (your leave and those of your subordinates) +Permission20002=Create/modify your leave requests (your leave and those of your subordinates) +Permission20003=Delete leave requests +Permission20004=Read all leave requests (even of user not subordinates) +Permission20005=Create/modify leave requests for everybody (even of user not subordinates) +Permission20006=Admin leave requests (setup and update balance) +Permission20007=Approve leave requests +Permission23001=Read Scheduled job +Permission23002=Create/update Scheduled job +Permission23003=Delete Scheduled job +Permission23004=Execute Scheduled job +Permission50101=Use Point of Sale +Permission50201=Consultar as transaccións +Permission50202=Importar as transaccións +Permission50401=Bind products and invoices with accounting accounts +Permission50411=Read operations in ledger +Permission50412=Write/Edit operations in ledger +Permission50414=Delete operations in ledger +Permission50415=Delete all operations by year and journal in ledger +Permission50418=Export operations of the ledger +Permission50420=Report and export reports (turnover, balance, journals, ledger) +Permission50430=Define fiscal periods. Validate transactions and close fiscal periods. +Permission50440=Manage chart of accounts, setup of accountancy +Permission51001=Read assets +Permission51002=Create/Update assets +Permission51003=Delete assets +Permission51005=Setup types of asset +Permission54001=Imprimir +Permission55001=Consultar enquisas +Permission55002=Crear/modificar enquisas +Permission59001=Consultar marxes comerciais +Permission59002=Definir marxes comerciais +Permission59003=Consultar todas as marxes de usuario +Permission63001=Consultar recursos +Permission63002=Crear/modificar recursos +Permission63003=Eliminar recursos +Permission63004=Vincular recursos a eventos da axenda +DictionaryCompanyType=Tipos de terceiros +DictionaryCompanyJuridicalType=Formas xurídicas de terceiros +DictionaryProspectLevel=Cliente potencial +DictionaryCanton=States/Provinces +DictionaryRegion=Regions +DictionaryCountry=Countries +DictionaryCurrency=Moedas +DictionaryCivility=Honorific titles +DictionaryActions=Types of agenda events +DictionarySocialContributions=Types of social or fiscal taxes +DictionaryVAT=VAT Rates or Sales Tax Rates +DictionaryRevenueStamp=Amount of tax stamps +DictionaryPaymentConditions=Payment Terms +DictionaryPaymentModes=Payment Modes +DictionaryTypeContact=Contact/Address types +DictionaryTypeOfContainer=Website - Type of website pages/containers +DictionaryEcotaxe=Ecotax (WEEE) +DictionaryPaperFormat=Paper formats +DictionaryFormatCards=Card formats +DictionaryFees=Expense report - Types of expense report lines +DictionarySendingMethods=Shipping methods +DictionaryStaff=Number of Employees +DictionaryAvailability=Delivery delay +DictionaryOrderMethods=Ordering methods +DictionarySource=Origin of proposals/orders +DictionaryAccountancyCategory=Personalized groups for reports +DictionaryAccountancysystem=Models for chart of accounts +DictionaryAccountancyJournal=Accounting journals +DictionaryEMailTemplates=Email Templates +DictionaryUnits=Units +DictionaryMeasuringUnits=Measuring Units +DictionarySocialNetworks=Social Networks +DictionaryProspectStatus=Estado do cliente potencial +DictionaryHolidayTypes=Types of leave +DictionaryOpportunityStatus=Lead status for project/lead +DictionaryExpenseTaxCat=Expense report - Transportation categories +DictionaryExpenseTaxRange=Expense report - Range by transportation category +SetupSaved=Setup saved +SetupNotSaved=Setup not saved +BackToModuleList=Back to Module list +BackToDictionaryList=Back to Dictionaries list +TypeOfRevenueStamp=Type of tax stamp +VATManagement=Sales Tax Management +VATIsUsedDesc=By default when creating prospects, invoices, orders etc. the Sales Tax rate follows the active standard rule:
    If the seller is not subject to Sales tax, then Sales tax defaults to 0. End of rule.
    If the (seller's country = buyer's country), then the Sales tax by default equals the Sales tax of the product in the seller's country. End of rule.
    If the seller and buyer are both in the European Community and goods are transport-related products (haulage, shipping, airline), the default VAT is 0. This rule is dependant on the seller's country - please consult with your accountant. The VAT should be paid by the buyer to the customs office in their country and not to the seller. End of rule.
    If the seller and buyer are both in the European Community and the buyer is not a company (with a registered intra-Community VAT number) then the VAT defaults to the VAT rate of the seller's country. End of rule.
    If the seller and buyer are both in the European Community and the buyer is a company (with a registered intra-Community VAT number), then the VAT is 0 by default. End of rule.
    In any other case the proposed default is Sales tax=0. End of rule. +VATIsNotUsedDesc=By default the proposed Sales tax is 0 which can be used for cases like associations, individuals or small companies. +VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. +VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. +##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax +LTRate=Tipo +LocalTax1IsNotUsed=Do not use second tax +LocalTax1IsUsedDesc=Use a second type of tax (other than first one) +LocalTax1IsNotUsedDesc=Do not use other type of tax (other than first one) +LocalTax1Management=Second type of tax +LocalTax1IsUsedExample= +LocalTax1IsNotUsedExample= +LocalTax2IsNotUsed=Do not use third tax +LocalTax2IsUsedDesc=Use a third type of tax (other than first one) +LocalTax2IsNotUsedDesc=Do not use other type of tax (other than first one) +LocalTax2Management=Third type of tax +LocalTax2IsUsedExample= +LocalTax2IsNotUsedExample= +LocalTax1ManagementES=Xestión RE +LocalTax1IsUsedDescES=The RE rate by default when creating prospects, invoices, orders etc. follow the active standard rule:
    If the buyer is not subjected to RE, RE by default=0. End of rule.
    If the buyer is subjected to RE then the RE by default. End of rule.
    +LocalTax1IsNotUsedDescES=By default the proposed RE is 0. End of rule. +LocalTax1IsUsedExampleES=In Spain they are professionals subject to some specific sections of the Spanish IAE. +LocalTax1IsNotUsedExampleES=In Spain they are professional and societies and subject to certain sections of the Spanish IAE. +LocalTax2ManagementES=IRPF Management +LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices, orders etc. follow the active standard rule:
    If the seller is not subjected to IRPF, then IRPF by default=0. End of rule.
    If the seller is subjected to IRPF then the IRPF by default. End of rule.
    +LocalTax2IsNotUsedDescES=By default the proposed IRPF is 0. End of rule. +LocalTax2IsUsedExampleES=In Spain, freelancers and independent professionals who provide services and companies who have chosen the tax system of modules. +LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) +CalcLocaltax=Reports on local taxes +CalcLocaltax1=Sales - Purchases +CalcLocaltax1Desc=Local Taxes reports are calculated with the difference between localtaxes sales and localtaxes purchases +CalcLocaltax2=Purchases +CalcLocaltax2Desc=Local Taxes reports are the total of localtaxes purchases +CalcLocaltax3=Sales +CalcLocaltax3Desc=Local Taxes reports are the total of localtaxes sales +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax +LabelUsedByDefault=Label used by default if no translation can be found for code +LabelOnDocuments=Label on documents +LabelOrTranslationKey=Label or translation key +ValueOfConstantKey=Value of a configuration constant +NbOfDays=Nº de días +AtEndOfMonth=A fin de mes +CurrentNext=Actual/Siguinte +Offset=Decálogo +AlwaysActive=Sempre activo +Upgrade=Actualización +MenuUpgrade=Actualización / Extensión +AddExtensionThemeModuleOrOther=Implantar/Instalar app/módulo externo +WebServer=Servidor web +DocumentRootServer=Directorio raíz do servidor web +DataRootServer=Directorio raíz dos ficheiros de datos +IP=IP +Port=Porto +VirtualServerName=Nome do servidor virtual +OS=SO +PhpWebLink=Vínculo Web-PHP +Server=Servidor +Database=Base de datos +DatabaseServer=Host da base de datos +DatabaseName=Nome da base de datos +DatabasePort=Porto da base de datos +DatabaseUser=Usuario da base de datos +DatabasePassword=Contrasinal da base de datos +Tables=Taboas +TableName=Nome da taboa +NbOfRecord=Nº de rexistros +Host=Servidor +DriverType=Tipo de driver +SummarySystem=System information summary +SummaryConst=List of all Dolibarr setup parameters +MenuCompanySetup=Empresa/Organización +DefaultMenuManager= Xestor do menú estándar +DefaultMenuSmartphoneManager=Xestor de menú smartphone +Skin=Tema visual +DefaultSkin=Tema visual por defecto +MaxSizeList=Lonxitude máxima de listaxes +DefaultMaxSizeList=Default max length for lists +DefaultMaxSizeShortList=Default max length for short lists (i.e. in customer card) +MessageOfDay=Message of the day +MessageLogin=Login page message +LoginPage=Login page +BackgroundImageLogin=Background image +PermanentLeftSearchForm=Permanent search form on left menu +DefaultLanguage=Default language +EnableMultilangInterface=Enable multilanguage support +EnableShowLogo=Show the company logo in the menu +CompanyInfo=Empresa/Organización +CompanyIds=Identificación da Empresa/Organización +CompanyName=Nome +CompanyAddress=Enderezo +CompanyZip=Código postal +CompanyTown=Poboación +CompanyCountry=País +CompanyCurrency=Main currency +CompanyObject=Object of the company +IDCountry=ID country +Logo=Logo +LogoDesc=Main logo of company. Will be used into generated documents (PDF, ...) +LogoSquarred=Logo (squarred) +LogoSquarredDesc=Must be a squarred icon (width = height). This logo will be used as the favorite icon or other need like for the top menu bar (if not disabled into display setup). +DoNotSuggestPaymentMode=Do not suggest +NoActiveBankAccountDefined=No active bank account defined +OwnerOfBankAccount=Owner of bank account %s +BankModuleNotActive=Bank accounts module not enabled +ShowBugTrackLink=Show link "%s" +Alerts=Alertas +DelaysOfToleranceBeforeWarning=Delay before displaying a warning alert for: +DelaysOfToleranceDesc=Set the delay before an alert icon %s is shown onscreen for the late element. +Delays_MAIN_DELAY_ACTIONS_TODO=Planned events (agenda events) not completed +Delays_MAIN_DELAY_PROJECT_TO_CLOSE=Project not closed in time +Delays_MAIN_DELAY_TASKS_TODO=Planned task (project tasks) not completed +Delays_MAIN_DELAY_ORDERS_TO_PROCESS=Order not processed +Delays_MAIN_DELAY_SUPPLIER_ORDERS_TO_PROCESS=Purchase order not processed +Delays_MAIN_DELAY_PROPALS_TO_CLOSE=Proposal not closed +Delays_MAIN_DELAY_PROPALS_TO_BILL=Proposal not billed +Delays_MAIN_DELAY_NOT_ACTIVATED_SERVICES=Service to activate +Delays_MAIN_DELAY_RUNNING_SERVICES=Expired service +Delays_MAIN_DELAY_SUPPLIER_BILLS_TO_PAY=Unpaid vendor invoice +Delays_MAIN_DELAY_CUSTOMER_BILLS_UNPAYED=Unpaid customer invoice +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 +Delays_MAIN_DELAY_HOLIDAYS=Leave requests 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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. +SetupDescription5=Other Setup menu entries manage optional parameters. +LogEvents=Security audit events +Audit=Auditoría +InfoDolibarr=About Dolibarr +InfoBrowser=About Browser +InfoOS=About OS +InfoWebServer=About Web Server +InfoDatabase=About Database +InfoPHP=About PHP +InfoPerf=About Performances +BrowserName=Nome do navegador +BrowserOS=Browser OS +ListOfSecurityEvents=List of Dolibarr security events +SecurityEventsPurged=Security events purged +LogEventDesc=Enable logging for specific security events. Administrators the log via menu %s - %s. Warning, this feature can generate a large amount of data in the database. +AreaForAdminOnly=Setup parameters can be set by administrator users only. +SystemInfoDesc=System information is miscellaneous technical information you get in read only mode and visible for administrators only. +SystemAreaForAdminOnly=This area is available to administrator users only. Dolibarr user permissions cannot change this restriction. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. +AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. +AccountantFileNumber=Accountant code +DisplayDesc=Parameters affecting the look and behaviour of Dolibarr can be modified here. +AvailableModules=Available app/modules +ToActivateModule=To activate modules, go on setup Area (Home->Setup->Modules). +SessionTimeOut=Time out for session +SessionExplanation=This number guarantees that the session will never expire before this delay, if the session cleaner is done by Internal PHP session cleaner (and nothing else). Internal PHP session cleaner does not guarantee that the session will expire after this delay. It will expire, after this delay, and when the session cleaner is run, so every %s/%s access, but only during access made by other sessions (if value is 0, it means clearing of session is done only by an external process).
    Note: on some servers with an external session cleaning mechanism (cron under debian, ubuntu ...), the sessions can be destroyed after a period defined by an external setup, no matter what the value entered here is. +TriggersAvailable=Available triggers +TriggersDesc=Triggers are files that will modify the behavior of Dolibarr workflow once copied into the directory htdocs/core/triggers. They realize new actions, activated on Dolibarr events (new company creation, invoice validation, ...). +TriggerDisabledByName=Triggers in this file are disabled by the -NORUN suffix in their name. +TriggerDisabledAsModuleDisabled=Triggers in this file are disabled as module %s is disabled. +TriggerAlwaysActive=Triggers in this file are always active, whatever are the activated Dolibarr modules. +TriggerActiveAsModuleActive=Triggers in this file are active as module %s is enabled. +GeneratedPasswordDesc=Choose the method to be used for auto-generated passwords. +DictionaryDesc=Insert all reference data. You can add your values to the default. +ConstDesc=This page allows you to edit (override) parameters not available in other pages. These are mostly reserved parameters for developers/advanced troubleshooting only. +MiscellaneousDesc=All other security related parameters are defined here. +LimitsSetup=Limits/Precision setup +LimitsDesc=You can define limits, precisions and optimizations used by Dolibarr here +MAIN_MAX_DECIMALS_UNIT=Max. decimals for unit prices +MAIN_MAX_DECIMALS_TOT=Max. decimals for total prices +MAIN_MAX_DECIMALS_SHOWN=Max. decimals for prices shown on screen. Add an ellipsis ... after this parameter (e.g. "2...") if you want to see "..." suffixed to the truncated price. +MAIN_ROUNDING_RULE_TOT=Step of rounding range (for countries where rounding is done on something other than base 10. For example, put 0.05 if rounding is done by 0.05 steps) +UnitPriceOfProduct=Net unit price of a product +TotalPriceAfterRounding=Total price (excl/vat/incl tax) after rounding +ParameterActiveForNextInputOnly=Parameter effective for next input only +NoEventOrNoAuditSetup=No security event has been logged. This is normal if Audit has not been enabled in the "Setup - Security - Events" page. +NoEventFoundWithCriteria=No security event has been found for this search criteria. +SeeLocalSendMailSetup=See your local sendmail setup +BackupDesc=A complete backup of a Dolibarr installation requires two steps. +BackupDesc2=Backup the contents of the "documents" directory (%s) containing all uploaded and generated files. This will also include all the dump files generated in Step 1. This operation may last several minutes. +BackupDesc3=Backup the structure and contents of your database (%s) into a dump file. For this, you can use the following assistant. +BackupDescX=The archived directory should be stored in a secure place. +BackupDescY=The generated dump file should be stored in a secure place. +BackupPHPWarning=Backup cannot be guaranteed with this method. Previous one recommended. +RestoreDesc=To restore a Dolibarr backup, two steps are required. +RestoreDesc2=Restore the backup file (zip file for example) of the "documents" directory to a new Dolibarr installation or into this current documents directory (%s). +RestoreDesc3=Restore the database structure and data from a backup dump file into the database of the new Dolibarr installation or into the database of this current installation (%s). Warning, once the restore is complete, you must use a login/password, that existed from the backup time/installation to connect again.
    To restore a backup database into this current installation, you can follow this assistant. +RestoreMySQL=MySQL import +ForcedToByAModule= This rule is forced to %s by an activated module +PreviousDumpFiles=Existing backup files +PreviousArchiveFiles=Existing archive files +WeekStartOnDay=First day of the week +RunningUpdateProcessMayBeRequired=Running the upgrade process seems to be required (Program version %s differs from Database version %s) +YouMustRunCommandFromCommandLineAfterLoginToUser=You must run this command from command line after login to a shell with user %s or you must add -W option at end of command line to provide %s password. +YourPHPDoesNotHaveSSLSupport=SSL functions not available in your PHP +DownloadMoreSkins=More skins to download +SimpleNumRefModelDesc=Returns the reference number with format %syymm-nnnn where yy is year, mm is month and nnnn is sequential with no reset +ShowProfIdInAddress=Show professional id with addresses +ShowVATIntaInAddress=Hide intra-Community VAT number with addresses +TranslationUncomplete=Partial translation +MAIN_DISABLE_METEO=Disable meteorological view +MeteoStdMod=Standard mode +MeteoStdModEnabled=Standard mode enabled +MeteoPercentageMod=Percentage mode +MeteoPercentageModEnabled=Percentage mode enabled +MeteoUseMod=Click to use %s +TestLoginToAPI=Test login to API +ProxyDesc=Some features of Dolibarr require internet access. Define here the internet connection parameters such as access through a proxy server if necessary. +ExternalAccess=External/Internet Access +MAIN_PROXY_USE=Use a proxy server (otherwise access is direct to the internet) +MAIN_PROXY_HOST=Proxy server: Name/Address +MAIN_PROXY_PORT=Proxy server: Port +MAIN_PROXY_USER=Proxy server: Login/User +MAIN_PROXY_PASS=Proxy server: Password +DefineHereComplementaryAttributes=Define here any additional/custom attributes that you want to be included for: %s +ExtraFields=Complementary attributes +ExtraFieldsLines=Complementary attributes (lines) +ExtraFieldsLinesRec=Complementary attributes (templates invoices lines) +ExtraFieldsSupplierOrdersLines=Complementary attributes (order lines) +ExtraFieldsSupplierInvoicesLines=Complementary attributes (invoice lines) +ExtraFieldsThirdParties=Complementary attributes (third party) +ExtraFieldsContacts=Complementary attributes (contacts/address) +ExtraFieldsMember=Complementary attributes (member) +ExtraFieldsMemberType=Complementary attributes (member type) +ExtraFieldsCustomerInvoices=Complementary attributes (invoices) +ExtraFieldsCustomerInvoicesRec=Complementary attributes (templates invoices) +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). +PathToDocuments=Path to documents +PathDirectory=Directory +SendmailOptionMayHurtBuggedMTA=Feature to send mails using method "PHP mail direct" will generate a mail message that might not be parsed correctly by some receiving mail servers. The result is that some mails can't be read by people hosted by those bugged platforms. This is the case for some Internet providers (Ex: Orange in France). This is not a problem with Dolibarr or PHP but with the receiving mail server. You can however add an option MAIN_FIX_FOR_BUGGED_MTA to 1 in Setup - Other to modify Dolibarr to avoid this. However, you may experience problems with other servers that strictly use the SMTP standard. The other solution (recommended) is to use the method "SMTP socket library" which has no disadvantages. +TranslationSetup=Setup of translation +TranslationKeySearch=Search a translation key or string +TranslationOverwriteKey=Overwrite a translation string +TranslationDesc=How to set the display language:
    * Default/Systemwide: menu Home -> Setup -> Display
    * Per user: Click on the username at the top of the screen and modify the User Display Setup tab on the user card. +TranslationOverwriteDesc=You can also override strings filling the following table. Choose your language from "%s" dropdown, insert the translation key string into "%s" and your new translation into "%s" +TranslationOverwriteDesc2=You can use the other tab to help you know which translation key to use +TranslationString=Translation string +CurrentTranslationString=Current translation string +WarningAtLeastKeyOrTranslationRequired=A search criteria is required at least for key or translation string +NewTranslationStringToShow=New translation string to show +OriginalValueWas=The original translation is overwritten. Original value was:

    %s +TransKeyWithoutOriginalValue=You forced a new translation for the translation key '%s' that does not exist in any language files +TotalNumberOfActivatedModules=Activated application/modules: %s / %s +YouMustEnableOneModule=You must at least enable 1 module +ClassNotFoundIntoPathWarning=Class %s not found in PHP path +YesInSummer=Yes in summer +OnlyFollowingModulesAreOpenedToExternalUsers=Note, only the following modules are available to external users (irrespective of the permissions of such users) and only if permissions are granted:
    +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. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. +SearchOptim=Search optimization +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. +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. +FieldEdition=Edition of field %s +FillThisOnlyIfRequired=Example: +2 (fill only if timezone offset problems are experienced) +GetBarCode=Get barcode +NumberingModules=Numbering models +##### Module password generation +PasswordGenerationStandard=Return a password generated according to internal Dolibarr algorithm: 8 characters containing shared numbers and characters in lowercase. +PasswordGenerationNone=Do not suggest a generated password. Password must be typed in manually. +PasswordGenerationPerso=Return a password according to your personally defined configuration. +SetupPerso=According to your configuration +PasswordPatternDesc=Password pattern description +##### Users setup ##### +RuleForGeneratedPasswords=Rules to generate and validate passwords +DisableForgetPasswordLinkOnLogonPage=Do not show the "Password Forgotten" link on the Login page +UsersSetup=Users module setup +UserMailRequired=Email required to create a new user +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record +##### HRM setup ##### +HRMSetup=HRM module setup +##### Company setup ##### +CompanySetup=Companies module setup +CompanyCodeChecker=Options for automatic generation of customer/vendor codes +AccountCodeManager=Options for automatic generation of customer/vendor accounting codes +NotificationsDesc=Email notifications can be sent automatically for some Dolibarr events.
    Recipients of notifications can be defined: +NotificationsDescUser=* per user, one user at a time. +NotificationsDescContact=* per third-party contacts (customers or vendors), one contact at a time. +NotificationsDescGlobal=* or by setting global email addresses in this setup page. +ModelModules=Document Templates +DocumentModelOdt=Generate documents from OpenDocument templates (.ODT / .ODS files from LibreOffice, OpenOffice, KOffice, TextEdit,...) +WatermarkOnDraft=Watermark on draft document +JSOnPaimentBill=Activate feature to autofill payment lines on payment form +CompanyIdProfChecker=Rules for Professional IDs +MustBeUnique=Must be unique? +MustBeMandatory=Mandatory to create third parties (if VAT number or type of company defined) ? +MustBeInvoiceMandatory=Mandatory to validate invoices? +TechnicalServicesProvided=Technical services provided +#####DAV ##### +WebDAVSetupDesc=This is the link to access the WebDAV directory. It contains a "public" dir open to any user knowing the URL (if public directory access allowed) and a "private" directory that needs an existing login account/password for access. +WebDavServer=Root URL of %s server: %s +##### Webcal setup ##### +WebCalUrlForVCalExport=An export link to %s format is available at following link: %s +##### Invoices ##### +BillsSetup=Invoices module setup +BillsNumberingModule=Invoices and credit notes numbering model +BillsPDFModules=Invoice documents models +BillsPDFModulesAccordindToInvoiceType=Invoice documents models according to invoice type +PaymentsPDFModules=Payment documents models +ForceInvoiceDate=Force invoice date to validation date +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice +SuggestPaymentByRIBOnAccount=Suggest payment by withdrawal on account +SuggestPaymentByChequeToAddress=Suggest payment by check to +FreeLegalTextOnInvoices=Free text on invoices +WatermarkOnDraftInvoices=Watermark on draft invoices (none if empty) +PaymentsNumberingModule=Payments numbering model +SuppliersPayment=Vendor payments +SupplierPaymentSetup=Vendor payments setup +##### Proposals ##### +PropalSetup=Commercial proposals module setup +ProposalsNumberingModules=Commercial proposal numbering models +ProposalsPDFModules=Commercial proposal documents models +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal +FreeLegalTextOnProposal=Free text on commercial proposals +WatermarkOnDraftProposal=Watermark on draft commercial proposals (none if empty) +BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal +##### SupplierProposal ##### +SupplierProposalSetup=Price requests suppliers module setup +SupplierProposalNumberingModules=Price requests suppliers numbering models +SupplierProposalPDFModules=Price requests suppliers documents models +FreeLegalTextOnSupplierProposal=Free text on price requests suppliers +WatermarkOnDraftSupplierProposal=Watermark on draft price requests suppliers (none if empty) +BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_PROPOSAL=Ask for bank account destination of price request +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 ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order +OrdersSetup=Sales Orders management setup +OrdersNumberingModules=Orders numbering models +OrdersModelModule=Order documents models +FreeLegalTextOnOrders=Free text on orders +WatermarkOnDraftOrders=Watermark on draft orders (none if empty) +ShippableOrderIconInList=Add an icon in Orders list which indicate if order is shippable +BANK_ASK_PAYMENT_BANK_DURING_ORDER=Ask for bank account destination of order +##### Interventions ##### +InterventionsSetup=Interventions module setup +FreeLegalTextOnInterventions=Free text on intervention documents +FicheinterNumberingModules=Intervention numbering models +TemplatePDFInterventions=Intervention card documents models +WatermarkOnDraftInterventionCards=Watermark on intervention card documents (none if empty) +##### Contracts ##### +ContractsSetup=Contracts/Subscriptions module setup +ContractsNumberingModules=Contracts numbering modules +TemplatePDFContracts=Contracts documents models +FreeLegalTextOnContracts=Free text on contracts +WatermarkOnDraftContractCards=Watermark on draft contracts (none if empty) +##### Members ##### +MembersSetup=Members module setup +MemberMainOptions=Main options +AdherentLoginRequired= Manage a Login for each member +AdherentMailRequired=Email required to create a new member +MemberSendInformationByMailByDefault=Checkbox to send mail confirmation to members (validation or new subscription) is on by default +VisitorCanChooseItsPaymentMode=Visitor can choose from available payment modes +MEMBER_REMINDER_EMAIL=Enable automatic reminder by email of expired subscriptions. Note: Module %s must be enabled and correctly setup to send reminders. +##### LDAP setup ##### +LDAPSetup=LDAP Setup +LDAPGlobalParameters=Parámetros globais +LDAPUsersSynchro=Usuarios +LDAPGroupsSynchro=Grupos +LDAPContactsSynchro=Contactos +LDAPMembersSynchro=Membros +LDAPMembersTypesSynchro=Tipos de membros +LDAPSynchronization=Sincronización LDAP +LDAPFunctionsNotAvailableOnPHP=As funcións LDAP non están dispoñibles no seu PHP +LDAPToDolibarr=LDAP -> Dolibarr +DolibarrToLDAP=Dolibarr -> LDAP +LDAPNamingAttribute=Clave en LDAP +LDAPSynchronizeUsers=Organización dos usuarios en LDAP +LDAPSynchronizeGroups=Organización dos grupos en LDAP +LDAPSynchronizeContacts=Organización dos contactos en LDAP +LDAPSynchronizeMembers=Organización dos membros da Fundación en LDAP +LDAPSynchronizeMembersTypes=Organización dos tipos de membros da Fundación en LDAP +LDAPPrimaryServer=Servidor primario +LDAPSecondaryServer=Servidor secundario +LDAPServerPort=Porto do servidor +LDAPServerPortExample=Porto por defecto : 389 +LDAPServerProtocolVersion=Versión de protocolo +LDAPServerUseTLS=Use TLS +LDAPServerUseTLSExample=Your LDAP server use TLS +LDAPServerDn=Server DN +LDAPAdminDn=Administrator DN +LDAPAdminDnExample=Complete DN (ex: cn=admin,dc=example,dc=com or cn=Administrator,cn=Users,dc=example,dc=com for active directory) +LDAPPassword=Administrator password +LDAPUserDn=Users' DN +LDAPUserDnExample=Complete DN (ex: ou=users,dc=example,dc=com) +LDAPGroupDn=Groups' DN +LDAPGroupDnExample=Complete DN (ex: ou=groups,dc=example,dc=com) +LDAPServerExample=Server address (ex: localhost, 192.168.0.2, ldaps://ldap.example.com/) +LDAPServerDnExample=Complete DN (ex: dc=example,dc=com) +LDAPDnSynchroActive=Users and groups synchronization +LDAPDnSynchroActiveExample=LDAP to Dolibarr or Dolibarr to LDAP synchronization +LDAPDnContactActive=Contacts' synchronization +LDAPDnContactActiveExample=Activated/Unactivated synchronization +LDAPDnMemberActive=Members' synchronization +LDAPDnMemberActiveExample=Activated/Unactivated synchronization +LDAPDnMemberTypeActive=Members types' synchronization +LDAPDnMemberTypeActiveExample=Activated/Unactivated synchronization +LDAPContactDn=Dolibarr contacts' DN +LDAPContactDnExample=Complete DN (ex: ou=contacts,dc=example,dc=com) +LDAPMemberDn=Dolibarr members DN +LDAPMemberDnExample=Complete DN (ex: ou=members,dc=example,dc=com) +LDAPMemberObjectClassList=List of objectClass +LDAPMemberObjectClassListExample=List of objectClass defining record attributes (ex: top,inetOrgPerson or top,user for active directory) +LDAPMemberTypeDn=Dolibarr members types DN +LDAPMemberTypepDnExample=Complete DN (ex: ou=memberstypes,dc=example,dc=com) +LDAPMemberTypeObjectClassList=List of objectClass +LDAPMemberTypeObjectClassListExample=List of objectClass defining record attributes (ex: top,groupOfUniqueNames) +LDAPUserObjectClassList=List of objectClass +LDAPUserObjectClassListExample=List of objectClass defining record attributes (ex: top,inetOrgPerson or top,user for active directory) +LDAPGroupObjectClassList=List of objectClass +LDAPGroupObjectClassListExample=List of objectClass defining record attributes (ex: top,groupOfUniqueNames) +LDAPContactObjectClassList=List of objectClass +LDAPContactObjectClassListExample=List of objectClass defining record attributes (ex: top,inetOrgPerson or top,user for active directory) +LDAPTestConnect=Probar a conexión LDAP +LDAPTestSynchroContact=Test contacts synchronization +LDAPTestSynchroUser=Test user synchronization +LDAPTestSynchroGroup=Test group synchronization +LDAPTestSynchroMember=Test member synchronization +LDAPTestSynchroMemberType=Test member type synchronization +LDAPTestSearch= Test a LDAP search +LDAPSynchroOK=Synchronization test successful +LDAPSynchroKO=Failed synchronization test +LDAPSynchroKOMayBePermissions=Failed synchronization test. Check that the connection to the server is correctly configured and allows LDAP updates +LDAPTCPConnectOK=TCP connect to LDAP server successful (Server=%s, Port=%s) +LDAPTCPConnectKO=TCP connect to LDAP server failed (Server=%s, Port=%s) +LDAPBindOK=Connect/Authenticate to LDAP server successful (Server=%s, Port=%s, Admin=%s, Password=%s) +LDAPBindKO=Connect/Authenticate to LDAP server failed (Server=%s, Port=%s, Admin=%s, Password=%s) +LDAPSetupForVersion3=LDAP server configured for version 3 +LDAPSetupForVersion2=LDAP server configured for version 2 +LDAPDolibarrMapping=Dolibarr Mapping +LDAPLdapMapping=LDAP Mapping +LDAPFieldLoginUnix=Login (unix) +LDAPFieldLoginExample=Exemplo : uid +LDAPFilterConnection=Search filter +LDAPFilterConnectionExample=Example: &(objectClass=inetOrgPerson) +LDAPFieldLoginSamba=Login (samba, activedirectory) +LDAPFieldLoginSambaExample=Example: samaccountname +LDAPFieldFullname=Nome completo +LDAPFieldFullnameExample=Example: cn +LDAPFieldPasswordNotCrypted=Password not encrypted +LDAPFieldPasswordCrypted=Password encrypted +LDAPFieldPasswordExample=Example: userPassword +LDAPFieldCommonNameExample=Example: cn +LDAPFieldName=Nome +LDAPFieldNameExample=Example: sn +LDAPFieldFirstName=Nome +LDAPFieldFirstNameExample=Example: givenName +LDAPFieldMail=Email address +LDAPFieldMailExample=Example: mail +LDAPFieldPhone=Professional phone number +LDAPFieldPhoneExample=Example: telephonenumber +LDAPFieldHomePhone=Personal phone number +LDAPFieldHomePhoneExample=Example: homephone +LDAPFieldMobile=Cellular phone +LDAPFieldMobileExample=Example: mobile +LDAPFieldFax=Fax number +LDAPFieldFaxExample=Example: facsimiletelephonenumber +LDAPFieldAddress=Street +LDAPFieldAddressExample=Example: street +LDAPFieldZip=Código postal +LDAPFieldZipExample=Example: postalcode +LDAPFieldTown=Poboación +LDAPFieldTownExample=Example: l +LDAPFieldCountry=País +LDAPFieldDescription=Descrición +LDAPFieldDescriptionExample=Example: description +LDAPFieldNotePublic=Public Note +LDAPFieldNotePublicExample=Example: publicnote +LDAPFieldGroupMembers= Group members +LDAPFieldGroupMembersExample= Example: uniqueMember +LDAPFieldBirthdate=Birthdate +LDAPFieldCompany=Empresa +LDAPFieldCompanyExample=Example: o +LDAPFieldSid=SID +LDAPFieldSidExample=Example: objectsid +LDAPFieldEndLastSubscription=Date of subscription end +LDAPFieldTitle=Posto de traballo +LDAPFieldTitleExample=Example: title +LDAPFieldGroupid=Group id +LDAPFieldGroupidExample=Exemple : gidnumber +LDAPFieldUserid=User id +LDAPFieldUseridExample=Exemple : uidnumber +LDAPFieldHomedirectory=Home directory +LDAPFieldHomedirectoryExample=Exemple : homedirectory +LDAPFieldHomedirectoryprefix=Home directory prefix +LDAPSetupNotComplete=LDAP setup not complete (go on others tabs) +LDAPNoUserOrPasswordProvidedAccessIsReadOnly=No administrator or password provided. LDAP access will be anonymous and in read only mode. +LDAPDescContact=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr contacts. +LDAPDescUsers=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr users. +LDAPDescGroups=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr groups. +LDAPDescMembers=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr members module. +LDAPDescMembersTypes=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr members types. +LDAPDescValues=Example values are designed for OpenLDAP with following loaded schemas: core.schema, cosine.schema, inetorgperson.schema). If you use thoose values and OpenLDAP, modify your LDAP config file slapd.conf to have all thoose schemas loaded. +ForANonAnonymousAccess=For an authenticated access (for a write access for example) +PerfDolibarr=Performance setup/optimizing report +YouMayFindPerfAdviceHere=This page provides some checks or advice related to performance. +NotInstalled=Not installed, so your server is not slowed down by this. +ApplicativeCache=Applicative cache +MemcachedNotAvailable=No applicative cache found. You can enhance performance by installing a cache server Memcached and a module able to use this cache server.
    More information here http://wiki.dolibarr.org/index.php/Module_MemCached_EN.
    Note that a lot of web hosting provider does not provide such cache server. +MemcachedModuleAvailableButNotSetup=Module memcached for applicative cache found but setup of module is not complete. +MemcachedAvailableAndSetup=Module memcached dedicated to use memcached server is enabled. +OPCodeCache=OPCode cache +NoOPCodeCacheFound=No OPCode cache found. Maybe you are using an OPCode cache other than XCache or eAccelerator (good), or maybe you don't have OPCode cache (very bad). +HTTPCacheStaticResources=HTTP cache for static resources (css, img, javascript) +FilesOfTypeCached=Files of type %s are cached by HTTP server +FilesOfTypeNotCached=Files of type %s are not cached by HTTP server +FilesOfTypeCompressed=Files of type %s are compressed by HTTP server +FilesOfTypeNotCompressed=Files of type %s are not compressed by HTTP server +CacheByServer=Cache by server +CacheByServerDesc=For example using the Apache directive "ExpiresByType image/gif A2592000" +CacheByClient=Cache by browser +CompressionOfResources=Compression of HTTP responses +CompressionOfResourcesDesc=For example using the Apache directive "AddOutputFilterByType DEFLATE" +TestNotPossibleWithCurrentBrowsers=Such an automatic detection is not possible with current browsers +DefaultValuesDesc=Here you may define the default value you wish to use when creating a new record, and/or default filters or the sort order when you list records. +DefaultCreateForm=Default values (to use on forms) +DefaultSearchFilters=Default search filters +DefaultSortOrder=Default sort orders +DefaultFocus=Default focus fields +DefaultMandatory=Mandatory form fields +##### Products ##### +ProductSetup=Configuración do módulo Produtos +ServiceSetup=Configuración do módulo Servizos +ProductServiceSetup=Configuración dos módulos Produtos e Servizos +NumberOfProductShowInSelect=Maximum number of products to show in combo select lists (0=no limit) +ViewProductDescInFormAbility=Display product descriptions in forms (otherwise shown in a tooltip popup) +MergePropalProductCard=Activate in product/service Attached Files tab an option to merge product PDF document to proposal PDF azur if product/service is in the proposal +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=Default barcode type to use for products +SetDefaultBarcodeTypeThirdParties=Default barcode type to use for third parties +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= Product / Service configuration +IsNotADir=is not a directory! +##### Syslog ##### +SyslogSetup=Logs module setup +SyslogOutput=Logs outputs +SyslogFacility=Facility +SyslogLevel=Level +SyslogFilename=File name and path +YouCanUseDOL_DATA_ROOT=You can use DOL_DATA_ROOT/dolibarr.log for a log file in Dolibarr "documents" directory. You can set a different path to store this file. +ErrorUnknownSyslogConstant=Constant %s is not a known Syslog constant +OnlyWindowsLOG_USER=Windows only supports LOG_USER +CompressSyslogs=Compression and backup of debug log files (generated by module Log for debug) +SyslogFileNumberOfSaves=Log backups +ConfigureCleaningCronjobToSetFrequencyOfSaves=Configure cleaning scheduled job to set log backup frequency +##### Donations ##### +DonationsSetup=Donation module setup +DonationsReceiptModel=Template of donation receipt +##### Barcode ##### +BarcodeSetup=Configuración dos códigos de barras +PaperFormatModule=Módulos de formatos de impresión +BarcodeEncodeModule=Tipos de códigos de barras +CodeBarGenerator=Xerador de código de barras +ChooseABarCode=No generator defined +FormatNotSupportedByGenerator=Format not supported by this generator +BarcodeDescEAN8=Códigos de barras tipo EAN8 +BarcodeDescEAN13=Códigos de barras tipo EAN13 +BarcodeDescUPC=Códigos de barras tipo UPC +BarcodeDescISBN=Códigos de barras tipo ISBN +BarcodeDescC39=Códigos de barras tipo C39 +BarcodeDescC128=Códigos de barras tipo C128 +BarcodeDescDATAMATRIX=Códigos de barras tipo Datamatrix +BarcodeDescQRCODE=Códigos de barras tipo código QR +GenbarcodeLocation=Ferramenta de xeración de códigos de barras na liña de comandos (usada polo motor interno para determinados tipos de códigos de barras). Ten que ser compatible con "genbarcode".
    Por exemplo: /usr/local/bin/genbarcode +BarcodeInternalEngine=Motor interno +BarCodeNumberManager=Xestor para auto definir números de código de barras +##### Prelevements ##### +WithdrawalsSetup=Setup of module Direct Debit payments +##### ExternalRSS ##### +ExternalRSSSetup=External RSS imports setup +NewRSS=New RSS Feed +RSSUrl=RSS URL +RSSUrlExample=An interesting RSS feed +##### Mailing ##### +MailingSetup=EMailing module setup +MailingEMailFrom=Sender email (From) for emails sent by emailing module +MailingEMailError=Return Email (Errors-to) for emails with errors +MailingDelay=Seconds to wait after sending next message +##### Notification ##### +NotificationSetup=Email Notification module setup +NotificationEMailFrom=Sender email (From) for emails sent by the Notifications module +FixedEmailTarget=Recipient +##### Sendings ##### +SendingsSetup=Shipping module setup +SendingsReceiptModel=Sending receipt model +SendingsNumberingModules=Sendings numbering modules +SendingsAbility=Support shipping sheets for customer deliveries +NoNeedForDeliveryReceipts=In most cases, shipping sheets are used both as sheets for customer deliveries (list of products to send) and sheets that are received and signed by customer. Hence the product deliveries receipt is a duplicated feature and is rarely activated. +FreeLegalTextOnShippings=Free text on shipments +##### Deliveries ##### +DeliveryOrderNumberingModules=Products deliveries receipt numbering module +DeliveryOrderModel=Products deliveries receipt model +DeliveriesOrderAbility=Support products deliveries receipts +FreeLegalTextOnDeliveryReceipts=Free text on delivery receipts +##### FCKeditor ##### +AdvancedEditor=Advanced editor +ActivateFCKeditor=Activate advanced editor for: +FCKeditorForCompany=WYSIWIG creation/edition of elements description and note (except products/services) +FCKeditorForProduct=WYSIWIG creation/edition of products/services description and note +FCKeditorForProductDetails=WYSIWIG creation/edition of products details lines for all entities (proposals, orders, invoices, etc...). Warning: Using this option for this case is seriously not recommended as it can create problems with special characters and page formatting when building PDF files. +FCKeditorForMailing= WYSIWIG creation/edition for mass eMailings (Tools->eMailing) +FCKeditorForUserSignature=WYSIWIG creation/edition of user signature +FCKeditorForMail=WYSIWIG creation/edition for all mail (except Tools->eMailing) +FCKeditorForTicket=WYSIWIG creation/edition for tickets +##### Stock ##### +StockSetup=Stock module setup +IfYouUsePointOfSaleCheckModule=If you use the Point of Sale module (POS) provided by default or an external module, this setup may be ignored by your POS module. Most POS modules are designed by default to create an invoice immediately and decrease stock irrespective of the options here. So if you need or not to have a stock decrease when registering a sale from your POS, check also your POS module setup. +##### Menu ##### +MenuDeleted=Menú eliminado +Menus=Menús +TreeMenuPersonalized=Menús personalizados +NotTopTreeMenuPersonalized=Menús personalizados non ligados a un menú superior +NewMenu=New menu +Menu=Selection of menu +MenuHandler=Menu handler +MenuModule=Source module +HideUnauthorizedMenu= Hide unauthorized menus (gray) +DetailId=Id menu +DetailMenuHandler=Menu handler where to show new menu +DetailMenuModule=Module name if menu entry come from a module +DetailType=Type of menu (top or left) +DetailTitre=Menu label or label code for translation +DetailUrl=URL where menu send you (Absolute URL link or external link with http://) +DetailEnabled=Condition to show or not entry +DetailRight=Condition to display unauthorized grey menus +DetailLangs=Lang file name for label code translation +DetailUser=Intern / Extern / All +Target=Destinatario +DetailTarget=Target for links (_blank top opens a new window) +DetailLevel=Level (-1:top menu, 0:header menu, >0 menu and sub menu) +ModifMenu=Menu change +DeleteMenu=Delete menu entry +ConfirmDeleteMenu=Are you sure you want to delete menu entry %s? +FailedToInitializeMenu=Failed to initialize menu +##### Tax ##### +TaxSetup=Taxes, social or fiscal taxes and dividends module setup +OptionVatMode=VAT due +OptionVATDefault=Standard basis +OptionVATDebitOption=Accrual basis +OptionVatDefaultDesc=VAT is due:
    - on delivery of goods (based on invoice date)
    - on payments for services +OptionVatDebitOptionDesc=VAT is due:
    - on delivery of goods (based on invoice date)
    - on invoice (debit) for services +OptionPaymentForProductAndServices=Cash basis for products and services +OptionPaymentForProductAndServicesDesc=VAT is due:
    - on payment for goods
    - on payments for services +SummaryOfVatExigibilityUsedByDefault=Time of VAT eligibility by default according to chosen option: +OnDelivery=On delivery +OnPayment=On payment +OnInvoice=On invoice +SupposedToBePaymentDate=Payment date used +SupposedToBeInvoiceDate=Invoice date used +Buy=Buy +Sell=Vendas +InvoiceDateUsed=Invoice date used +YourCompanyDoesNotUseVAT=Your company has been defined to not use VAT (Home - Setup - Company/Organization), so there is no VAT options to setup. +AccountancyCode=Accounting Code +AccountancyCodeSell=Sale account. code +AccountancyCodeBuy=Purchase account. code +##### Agenda ##### +AgendaSetup=Events and agenda module setup +PasswordTogetVCalExport=Key to authorize export link +PastDelayVCalExport=Do not export event older than +AGENDA_USE_EVENT_TYPE=Use events types (managed in menu Setup -> Dictionaries -> Type of agenda events) +AGENDA_USE_EVENT_TYPE_DEFAULT=Automatically set this default value for type of event in event create form +AGENDA_DEFAULT_FILTER_TYPE=Automatically set this type of event in search filter of agenda view +AGENDA_DEFAULT_FILTER_STATUS=Automatically set this status for events in search filter of agenda view +AGENDA_DEFAULT_VIEW=Which tab do you want to open by default when selecting menu Agenda +AGENDA_REMINDER_EMAIL=Enable event reminder by emails (remind option/delay can be defined on each event). Note: Module %s must be enabled and correctly setup to have reminder sent at the correct frequency. +AGENDA_REMINDER_BROWSER=Enable event reminder on user's browser (when event date is reached, each user is able to refuse this from the browser confirmation question) +AGENDA_REMINDER_BROWSER_SOUND=Enable sound notification +AGENDA_SHOW_LINKED_OBJECT=Show linked object into agenda view +##### Clicktodial ##### +ClickToDialSetup=Click To Dial module setup +ClickToDialUrlDesc=Url called when a click on phone picto is done. In URL, you can use tags
    __PHONETO__ that will be replaced with the phone number of person to call
    __PHONEFROM__ that will be replaced with phone number of calling person (yours)
    __LOGIN__ that will be replaced with clicktodial login (defined on user card)
    __PASS__ that will be replaced with clicktodial password (defined on user card). +ClickToDialDesc=This module makea phone numbers clickable links. A click on the icon will make your phone call the number. This can be used to call a call-center system from Dolibarr that can call the phone number on a SIP system for example. +ClickToDialUseTelLink=Use just a link "tel:" on phone numbers +ClickToDialUseTelLinkDesc=Use this method if your users have a softphone or a software interface installed on the same computer as the browser, and called when you click on a link in your browser that starts with "tel:". If you need a full server solution (no need of local software installation), you must set this to "No" and fill next field. +##### Point Of Sale (CashDesk) ##### +CashDesk=Point of Sale +CashDeskSetup=Point of Sales module setup +CashDeskThirdPartyForSell=Default generic third party to use for sales +CashDeskBankAccountForSell=Default account to use to receive cash payments +CashDeskBankAccountForCheque=Default account to use to receive payments by check +CashDeskBankAccountForCB=Default account to use to receive payments by credit cards +CashDeskBankAccountForSumup=Default bank account to use to receive payments by SumUp +CashDeskDoNotDecreaseStock=Disable stock decrease when a sale is done from Point of Sale (if "no", stock decrease is done for each sale done from POS, irrespective of the option set in module Stock). +CashDeskIdWareHouse=Force and restrict warehouse to use for stock decrease +StockDecreaseForPointOfSaleDisabled=Stock decrease from Point of Sale disabled +StockDecreaseForPointOfSaleDisabledbyBatch=Stock decrease in POS is not compatible with module Serial/Lot management (currently active) so stock decrease is disabled. +CashDeskYouDidNotDisableStockDecease=You did not disable stock decrease when making a sale from Point of Sale. Hence a warehouse is required. +CashDeskForceDecreaseStockLabel=Stock decrease for batch products was forced. +CashDeskForceDecreaseStockDesc=Decrease first by the oldest eatby and sellby dates. +CashDeskReaderKeyCodeForEnter=Key code for "Enter" defined in barcode reader (Example: 13) +##### Bookmark ##### +BookmarkSetup=Bookmark module setup +BookmarkDesc=This module allows you to manage bookmarks. You can also add shortcuts to any Dolibarr pages or external web sites on your left menu. +NbOfBoomarkToShow=Maximum number of bookmarks to show in left menu +##### WebServices ##### +WebServicesSetup=Webservices module setup +WebServicesDesc=By enabling this module, Dolibarr become a web service server to provide miscellaneous web services. +WSDLCanBeDownloadedHere=WSDL descriptor files of provided services can be download here +EndPointIs=SOAP clients must send their requests to the Dolibarr endpoint available at URL +##### API #### +ApiSetup=API module setup +ApiDesc=By enabling this module, Dolibarr become a REST server to provide miscellaneous web services. +ApiProductionMode=Enable production mode (this will activate use of a cache for services management) +ApiExporerIs=You can explore and test the APIs at URL +OnlyActiveElementsAreExposed=Only elements from enabled modules are exposed +ApiKey=Key for API +WarningAPIExplorerDisabled=The API explorer has been disabled. API explorer is not required to provide API services. It is a tool for developer to find/test REST APIs. If you need this tool, go into setup of module API REST to activate it. +##### Bank ##### +BankSetupModule=Bank module setup +FreeLegalTextOnChequeReceipts=Free text on check receipts +BankOrderShow=Display order of bank accounts for countries using "detailed bank number" +BankOrderGlobal=Xeral +BankOrderGlobalDesc=General display order +BankOrderES=Español +BankOrderESDesc=Spanish display order +ChequeReceiptsNumberingModule=Check Receipts Numbering Module +##### Multicompany ##### +MultiCompanySetup=Multi-company module setup +##### Suppliers ##### +SuppliersSetup=Vendor module setup +SuppliersCommandModel=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) +SuppliersInvoiceModel=Complete template of Vendor Invoice +SuppliersInvoiceNumberingModel=Vendor invoices numbering models +IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval +##### GeoIPMaxmind ##### +GeoIPMaxmindSetup=GeoIP Maxmind module setup +PathToGeoIPMaxmindCountryDataFile=Path to file containing Maxmind ip to country translation.
    Examples:
    /usr/local/share/GeoIP/GeoIP.dat
    /usr/share/GeoIP/GeoIP.dat
    /usr/share/GeoIP/GeoLite2-Country.mmdb +NoteOnPathLocation=Note that your ip to country data file must be inside a directory your PHP can read (Check your PHP open_basedir setup and filesystem permissions). +YouCanDownloadFreeDatFileTo=You can download a free demo version of the Maxmind GeoIP country file at %s. +YouCanDownloadAdvancedDatFileTo=You can also download a more complete version, with updates, of the Maxmind GeoIP country file at %s. +TestGeoIPResult=Test of a conversion IP -> country +##### Projects ##### +ProjectsNumberingModules=Projects numbering module +ProjectsSetup=Project module setup +ProjectsModelModule=Project reports document model +TasksNumberingModules=Tasks numbering module +TaskModelModule=Tasks reports document model +UseSearchToSelectProject=Wait until a key is pressed before loading content of Project combo list.
    This may improve performance if you have a large number of projects, but it is less convenient. +##### ECM (GED) ##### +##### Fiscal Year ##### +AccountingPeriods=Accounting periods +AccountingPeriodCard=Accounting period +NewFiscalYear=New accounting period +OpenFiscalYear=Open accounting period +CloseFiscalYear=Close accounting period +DeleteFiscalYear=Delete accounting period +ConfirmDeleteFiscalYear=Are you sure to delete this accounting period? +ShowFiscalYear=Show accounting period +AlwaysEditable=Can always be edited +MAIN_APPLICATION_TITLE=Force visible name of application (warning: setting your own name here may break autofill login feature when using DoliDroid mobile application) +NbMajMin=Minimum number of uppercase characters +NbNumMin=Minimum number of numeric characters +NbSpeMin=Minimum number of special characters +NbIteConsecutive=Maximum number of repeating same characters +NoAmbiCaracAutoGeneration=Do not use ambiguous characters ("1","l","i","|","0","O") for automatic generation +SalariesSetup=Setup of module salaries +SortOrder=Sort order +Format=Format +TypePaymentDesc=0:Customer payment type, 1:Vendor payment type, 2:Both customers and suppliers payment type +IncludePath=Include path (defined into variable %s) +ExpenseReportsSetup=Setup of module Expense Reports +TemplatePDFExpenseReports=Document templates to generate expense report document +ExpenseReportsIkSetup=Setup of module Expense Reports - Milles index +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 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 to the tab "Notifications" of a third party to add or remove notifications for contacts/addresses +Threshold=Threshold +BackupDumpWizard=Wizard to build the database dump file +BackupZipWizard=Wizard to build the archive of documents directory +SomethingMakeInstallFromWebNotPossible=Installation of external module is not possible from the web interface for the following reason: +SomethingMakeInstallFromWebNotPossible2=For this reason, process to upgrade described here is a manual process only a privileged user may perform. +InstallModuleFromWebHasBeenDisabledByFile=Install of external module from application has been disabled by your administrator. You must ask him to remove the file %s to allow this feature. +ConfFileMustContainCustom=Installing or building an external module from application need to save the module files into directory %s. To have this directory processed by Dolibarr, you must setup your conf/conf.php to add the 2 directive lines:
    $dolibarr_main_url_root_alt='/custom';
    $dolibarr_main_document_root_alt='%s/custom'; +HighlightLinesOnMouseHover=Highlight table lines when mouse move passes over +HighlightLinesColor=Highlight color of the line when the mouse passes over (use 'ffffff' for no highlight) +HighlightLinesChecked=Highlight color of the line when it is checked (use 'ffffff' for no highlight) +TextTitleColor=Text color of Page title +LinkColor=Color of links +PressF5AfterChangingThis=Press CTRL+F5 on keyboard or clear your browser cache after changing this value to have it effective +NotSupportedByAllThemes=Will works with core themes, may not be supported by external themes +BackgroundColor=Background color +TopMenuBackgroundColor=Background color for Top menu +TopMenuDisableImages=Hide images in Top menu +LeftMenuBackgroundColor=Background color for Left menu +BackgroundTableTitleColor=Background color for Table title line +BackgroundTableTitleTextColor=Text color for Table title line +BackgroundTableTitleTextlinkColor=Text color for Table title link line +BackgroundTableLineOddColor=Background color for odd table lines +BackgroundTableLineEvenColor=Background color for even table lines +MinimumNoticePeriod=Minimum notice period (Your leave request must be done before this delay) +NbAddedAutomatically=Number of days added to counters of users (automatically) each month +EnterAnyCode=This field contains a reference to identify line. Enter any value of your choice, but without special characters. +Enter0or1=Enter 0 or 1 +UnicodeCurrency=Enter here between braces, list of byte number that represent the currency symbol. For example: for $, enter [36] - for brazil real R$ [82,36] - for €, enter [8364] +ColorFormat=The RGB color is in HEX format, eg: FF0000 +PositionIntoComboList=Position of line into combo lists +SellTaxRate=Sale tax rate +RecuperableOnly=Yes for VAT "Not Perceived but Recoverable" dedicated for some state in France. Keep value to "No" in all other cases. +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=Type of template +TemplateIsVisibleByOwnerOnly=Template is visible to owner only +VisibleEverywhere=Visible everywhere +VisibleNowhere=Visible nowhere +FixTZ=TimeZone fix +FillFixTZOnlyIfRequired=Example: +2 (fill only if problem experienced) +ExpectedChecksum=Expected Checksum +CurrentChecksum=Current Checksum +ExpectedSize=Expected size +CurrentSize=Current size +ForcedConstants=Required constant values +MailToSendProposal=Orzamentos a clientes +MailToSendOrder=Pedidos de clientes +MailToSendInvoice=Facturas a clientes +MailToSendShipment=Envíos +MailToSendIntervention=Intervencións +MailToSendSupplierRequestForQuotation=Quotation request +MailToSendSupplierOrder=Pedidos a provedores +MailToSendSupplierInvoice=Facturas provedor +MailToSendContract=Contratos +MailToThirdparty=Terceiros +MailToMember=Membros +MailToUser=Usuarios +MailToProject=Páxina proxectos +ByDefaultInList=Show by default on list view +YouUseLastStableVersion=You use the latest stable version +TitleExampleForMajorRelease=Example of message you can use to announce this major release (feel free to use it on your web sites) +TitleExampleForMaintenanceRelease=Example of message you can use to announce this maintenance release (feel free to use it on your web sites) +ExampleOfNewsMessageForMajorRelease=Dolibarr ERP & CRM %s is available. Version %s is a major release with a lot of new features for both users and developers. You can download it from the download area of https://www.dolibarr.org portal (subdirectory Stable versions). You can read ChangeLog for complete list of changes. +ExampleOfNewsMessageForMaintenanceRelease=Dolibarr ERP & CRM %s is available. Version %s is a maintenance version, so contains only bug fixes. We recommend all users to upgrade to this version. A maintenance release does not introduce new features or changes to the database. You may download it from the download area of https://www.dolibarr.org portal (subdirectory Stable versions). You can read the ChangeLog for complete list of changes. +MultiPriceRuleDesc=When option "Several levels of prices per product/service" is enabled, you can define different prices (one per price level) for each product. To save you time, here you may enter a rule to autocalculate a price for each level based on the price of the first level, so you will have to only enter a price for the first level for each product. This page is designed to save you time but is useful only if your prices for each level are relative to first level. You can ignore this page in most cases. +ModelModulesProduct=Templates for product documents +ToGenerateCodeDefineAutomaticRuleFirst=To be able to generate codes automatically, you must first define a manager to auto-define the barcode number. +SeeSubstitutionVars=See * note for list of possible substitution variables +SeeChangeLog=See ChangeLog file (english only) +AllPublishers=All publishers +UnknownPublishers=Unknown publishers +AddRemoveTabs=Add or remove tabs +AddDataTables=Add object tables +AddDictionaries=Add dictionaries tables +AddData=Add objects or dictionaries data +AddBoxes=Add widgets +AddSheduledJobs=Add scheduled jobs +AddHooks=Add hooks +AddTriggers=Add triggers +AddMenus=Engade menús +AddPermissions=Add permissions +AddExportProfiles=Add export profiles +AddImportProfiles=Add import profiles +AddOtherPagesOrServices=Add other pages or services +AddModels=Add document or numbering templates +AddSubstitutions=Add keys substitutions +DetectionNotPossible=Detection not possible +UrlToGetKeyToUseAPIs=Url to get token to use API (once token has been received it is saved in database user table and must be provided on each API call) +ListOfAvailableAPIs=List of available APIs +activateModuleDependNotSatisfied=Module "%s" depends on module "%s", that is missing, so module "%1$s" may not work correctly. Please install module "%2$s" or disable module "%1$s" if you want to be safe from any surprise +CommandIsNotInsideAllowedCommands=The command you are trying to run is not in the list of allowed commands defined in parameter $dolibarr_main_restrict_os_commands in the conf.php file. +LandingPage=Landing page +SamePriceAlsoForSharedCompanies=If you use a multicompany module, with the choice "Single price", the price will also be the same for all companies if products are shared between environments +ModuleEnabledAdminMustCheckRights=Module has been activated. Permissions for activated module(s) were given to admin users only. You may need to grant permissions to other users or groups manually if necessary. +UserHasNoPermissions=This user has no permissions defined +TypeCdr=Use "None" if the date of payment term is date of invoice plus a delta in days (delta is field "%s")
    Use "At end of month", if, after delta, the date must be increased to reach the end of month (+ an optional "%s" in days)
    Use "Current/Next" to have payment term date being the first Nth of the month after delta (delta is field "%s", N is stored into field "%s") +BaseCurrency=Reference currency of the company (go into setup of company to change this) +WarningNoteModuleInvoiceForFrenchLaw=This module %s is compliant with French laws (Loi Finance 2016). +WarningNoteModulePOSForFrenchLaw=This module %s is compliant with French laws (Loi Finance 2016) because module Non Reversible Logs is automatically activated. +WarningInstallationMayBecomeNotCompliantWithLaw=You are trying to install module %s that is an external module. Activating an external module means you trust the publisher of that module and that you are sure that this module does not adversely impact the behavior of your application, and is compliant with laws of your country (%s). If the module introduces an illegal feature, you become responsible for the use of illegal software. +MAIN_PDF_MARGIN_LEFT=Left margin on PDF +MAIN_PDF_MARGIN_RIGHT=Right margin on PDF +MAIN_PDF_MARGIN_TOP=Top margin on PDF +MAIN_PDF_MARGIN_BOTTOM=Bottom margin on PDF +NothingToSetup=There is no specific setup required for this module. +SetToYesIfGroupIsComputationOfOtherGroups=Set this to yes if this group is a computation of other groups +EnterCalculationRuleIfPreviousFieldIsYes=Enter calculation rule if previous field was set to Yes (For example 'CODEGRP1+CODEGRP2') +SeveralLangugeVariatFound=Several language variants found +RemoveSpecialChars=Remove special characters +COMPANY_AQUARIUM_CLEAN_REGEX=Regex filter to clean value (COMPANY_AQUARIUM_CLEAN_REGEX) +COMPANY_DIGITARIA_CLEAN_REGEX=Regex filter to clean value (COMPANY_DIGITARIA_CLEAN_REGEX) +COMPANY_DIGITARIA_UNIQUE_CODE=Duplicate not allowed +GDPRContact=Data Protection Officer (DPO, Data Privacy or GDPR contact) +GDPRContactDesc=If you store data about European companies/citizens, you can name the contact who is responsible for the General Data Protection Regulation here +HelpOnTooltip=Help text to show on tooltip +HelpOnTooltipDesc=Put text or a translation key here for the text to show in a tooltip when this field appears in a form +YouCanDeleteFileOnServerWith=You can delete this file on the server with Command Line:
    %s +ChartLoaded=Chart of account loaded +SocialNetworkSetup=Setup of module Social Networks +EnableFeatureFor=Enable features for %s +VATIsUsedIsOff=Note: The option to use Sales Tax or VAT has been set to Off in the menu %s - %s, so Sales tax or Vat used will always be 0 for sales. +SwapSenderAndRecipientOnPDF=Swap sender and recipient address position on PDF documents +FeatureSupportedOnTextFieldsOnly=Warning, feature supported on text fields only. Also an URL parameter action=create or action=edit must be set OR page name must end with 'new.php' to trigger this feature. +EmailCollector=Email collector +EmailCollectorDescription=Add a scheduled job and a setup page to scan regularly email boxes (using IMAP protocol) and record emails received into your application, at the right place and/or create some records automatically (like leads). +NewEmailCollector=New Email Collector +EMailHost=Host of email IMAP server +MailboxSourceDirectory=Mailbox source directory +MailboxTargetDirectory=Mailbox target directory +EmailcollectorOperations=Operations to do by collector +MaxEmailCollectPerCollect=Max number of emails collected per collect +CollectNow=Collect now +ConfirmCloneEmailCollector=Are you sure you want to clone the Email collector %s ? +DateLastCollectResult=Date latest collect tried +DateLastcollectResultOk=Date latest collect successfull +LastResult=Latest result +EmailCollectorConfirmCollectTitle=Email collect confirmation +EmailCollectorConfirmCollect=Do you want to run the collection for this collector now ? +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) +CodeLastResult=Latest result code +NbOfEmailsInInbox=Number of emails in source directory +LoadThirdPartyFromName=Load third party searching on %s (load only) +LoadThirdPartyFromNameOrCreate=Load third party searching on %s (create if not found) +WithDolTrackingID=Dolibarr Reference found in Message ID +WithoutDolTrackingID=Dolibarr Reference not found in Message ID +FormatZip=Código postal +MainMenuCode=Menu entry code (mainmenu) +ECMAutoTree=Show automatic ECM tree +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. +OpeningHours=Opening hours +OpeningHoursDesc=Enter here the regular opening hours of your company. +ResourceSetup=Configuration of Resource module +UseSearchToSelectResource=Use a search form to choose a resource (rather than a drop-down list). +DisabledResourceLinkUser=Disable feature to link a resource to users +DisabledResourceLinkContact=Disable feature to link a resource to contacts +EnableResourceUsedInEventCheck=Enable feature to check if a resource is in use in an event +ConfirmUnactivation=Confirm module reset +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. +RootCategoryForProductsToSell=Root category of products to sell +RootCategoryForProductsToSellDesc=If defined, only products inside this category or childs of this category will be available in the Point Of Sale +DebugBar=Debug Bar +DebugBarDesc=Toolbar that comes with a plenty of tools to simplify debugging +DebugBarSetup=DebugBar Setup +GeneralOptions=General Options +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 +ModuleActivated=Module %s is activated and slows the interface +EXPORTS_SHARE_MODELS=Export models are share with everybody +ExportSetup=Setup of module Export +ImportSetup=Setup of module Import +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/. +EmailCollectorTargetDir=It may be a desired behaviour to move the email into another tag/directory when it was processed successfully. Just set a value here to use this feature. Note that you must also use a read/write login account. +EmailCollectorLoadThirdPartyHelp=You can use this action to use the email content to find and load an existing thirdparty in your database. The found (or created) thirdparty will be used for following actions that need it. In the parameter field you can use for example 'EXTRACT:BODY:Name:\\s([^\\s]*)' if you want to extract the name of the thirdparty from a string 'Name: name to find' found into the body. +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 +RESTRICT_ON_IP=Allow access to some host IP only (wildcard not allowed, use space between values). Empty means every hosts can access. +IPListExample=127.0.0.1 192.168.0.2 [::1] +BaseOnSabeDavVersion=Based on the library SabreDAV version +NotAPublicIp=Not a public IP +MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server (done 1 time only after installation) to allow the foundation to count the number of Dolibarr installation. +FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled +EmailTemplate=Template for email +EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/gl_ES/agenda.lang b/htdocs/langs/gl_ES/agenda.lang new file mode 100644 index 00000000000..6c845e7be1b --- /dev/null +++ b/htdocs/langs/gl_ES/agenda.lang @@ -0,0 +1,154 @@ +# Dolibarr language file - Source file is en_US - agenda +IdAgenda=ID de evento +Actions=Eventos +Agenda=Axenda +TMenuAgenda=Axenda +Agendas=Axendas +LocalAgenda=Calendario interno +ActionsOwnedBy=Evento propiedade de +ActionsOwnedByShort=Propietario +AffectedTo=Asignada a +Event=Evento +Events=Eventos +EventsNb=Número de eventos +ListOfActions=Listaxe de eventos +EventReports=Informes de evento +Location=Localización +ToUserOfGroup=A calquera usuario do grupo +EventOnFullDay=Evento para todo o(s) día(s) +MenuToDoActions=Todos os eventos incompletos +MenuDoneActions=Todos os eventos rematados +MenuToDoMyActions=Meus eventos incompletos +MenuDoneMyActions=Meus eventos rematados +ListOfEvents=Listaxe de acontecementos (calendario interno) +ActionsAskedBy=Eventos rexistrados por +ActionsToDoBy=Eventos asignados a +ActionsDoneBy=Eventos realizados por +ActionAssignedTo=Evento asignado a +ViewCal=Vista mensual +ViewDay=Vista diaria +ViewWeek=Vista semanal +ViewPerUser=Vista por usuario +ViewPerType=Vista por tipo +AutoActions= Inclusión automática na axenda +AgendaAutoActionDesc= Aquí podes definir os eventos que queras que Dolibarr cre automáticamente in Agenda. Se non sinalas nada, só as accións manuais serán visualizadas na axenda. O seguemento automático de accións comerciais sobre obxectos (validación, cambio de estado, non será gardado. +AgendaSetupOtherDesc= Esta páxina ten opcións que permiten a configuración da exportación dos eventos de Dolibarr a un calendario externo (Thunderbird, Google Calendar etc...) +AgendaExtSitesDesc=Esta páxina permite configurar fontes externas de calendarios para ver os seus eventos dentro da axenda Dolibarr. +ActionsEvents=Eventos para que Dolibarr cre unha acción na axenda automáticamente +EventRemindersByEmailNotEnabled=Lembranzas de eventos por correo non foron activados na configuración do módulo %s. +##### Agenda event labels ##### +NewCompanyToDolibarr=Terceiro %s creado +COMPANY_DELETEInDolibarr=Third party %s deleted +ContractValidatedInDolibarr=Contrato %s validado +CONTRACT_DELETEInDolibarr=Contrato %s eliminado +PropalClosedSignedInDolibarr=Orzamento %s asinado +PropalClosedRefusedInDolibarr=Orzamento %s rexeitado +PropalValidatedInDolibarr=Orzamento %s validado +PropalClassifiedBilledInDolibarr=Orzamento %s clasificado como facturado +InvoiceValidatedInDolibarr=Factura %s validada +InvoiceValidatedInDolibarrFromPos=Factura %s validada desde TPV +InvoiceBackToDraftInDolibarr=Factura %s de volta a borrador +InvoiceDeleteDolibarr=Factura %s eliminada +InvoicePaidInDolibarr=Factura %s cambiada a pagada +InvoiceCanceledInDolibarr=Factura %s cancelada +MemberValidatedInDolibarr=Membro %s validado +MemberModifiedInDolibarr=Membro %s modificado +MemberResiliatedInDolibarr=Membro %s rematado +MemberDeletedInDolibarr=Membro %s eliminado +MemberSubscriptionAddedInDolibarr=Suscrición %s do membro %s engadida +MemberSubscriptionModifiedInDolibarr=Suscrición %s do membro %s modificada +MemberSubscriptionDeletedInDolibarr=Suscrición %s do membro %s eliminada +ShipmentValidatedInDolibarr=Expedición %s validada +ShipmentClassifyClosedInDolibarr=Expedición %s clasificada como pagada +ShipmentUnClassifyCloseddInDolibarr=Shipment %s classified re-open +ShipmentBackToDraftInDolibarr=Expedición %s de volta ao estatus de borrador +ShipmentDeletedInDolibarr=Expedición %s eliminada +OrderCreatedInDolibarr=Pedido %s creado +OrderValidatedInDolibarr=Pedido %s validado +OrderDeliveredInDolibarr=Pedido %s clasificado como enviado +OrderCanceledInDolibarr=Pedido %s anulado +OrderBilledInDolibarr=Pedido %s clasificado como facturado +OrderApprovedInDolibarr=Pedido %s aprobado +OrderRefusedInDolibarr=Pedido %s rexeitado +OrderBackToDraftInDolibarr=Pedido %s de volta ao estaus borrador +ProposalSentByEMail=Orzamento %s enviado por e-mail +ContractSentByEMail=Contrato %s enviado por e-Mail +OrderSentByEMail=Pedido de cliente %s enviado por e-mail +InvoiceSentByEMail=Factura a cliente %s enviada por e-mail +SupplierOrderSentByEMail=Pedido a proveedor %s enviado por e-mail +ORDER_SUPPLIER_DELETEInDolibarr=Purchase order %s deleted +SupplierInvoiceSentByEMail=Factura de proveedor %s enviada por e-mail +ShippingSentByEMail=Expedición %s enviada por email +ShippingValidated= Expedición %s validada +InterventionSentByEMail=Intervención %s enviada por e-mail +ProposalDeleted=Orzamento eliminado +OrderDeleted=Pedido eliminado +InvoiceDeleted=Factura eliminada +DraftInvoiceDeleted=Draft invoice deleted +PRODUCT_CREATEInDolibarr=Produto %s creado +PRODUCT_MODIFYInDolibarr=Produto %s modificado +PRODUCT_DELETEInDolibarr=Produto %s eliminado +HOLIDAY_CREATEInDolibarr=Request for leave %s created +HOLIDAY_MODIFYInDolibarr=Request for leave %s modified +HOLIDAY_APPROVEInDolibarr=Request for leave %s approved +HOLIDAY_VALIDATEInDolibarr=Request for leave %s validated +HOLIDAY_DELETEInDolibarr=Request for leave %s deleted +EXPENSE_REPORT_CREATEInDolibarr=Informe de gastos %s creado +EXPENSE_REPORT_VALIDATEInDolibarr=Informe de gastos %s validado +EXPENSE_REPORT_APPROVEInDolibarr=Informe de gastos %s aprobado +EXPENSE_REPORT_DELETEInDolibarr=Informe de gastos %s eliminado +EXPENSE_REPORT_REFUSEDInDolibarr=Informe de gastos %s rexeitado +PROJECT_CREATEInDolibarr=Proxecto %s creado +PROJECT_MODIFYInDolibarr=Proxecto %s modificado +PROJECT_DELETEInDolibarr=Proxecto %s eliminado +TICKET_CREATEInDolibarr=Ticket %s creado +TICKET_MODIFYInDolibarr=Ticket %s modificado +TICKET_ASSIGNEDInDolibarr=Ticket %s assigned +TICKET_CLOSEInDolibarr=Ticket %s closed +TICKET_DELETEInDolibarr=Ticket %s eliminado +BOM_VALIDATEInDolibarr=BOM validated +BOM_UNVALIDATEInDolibarr=BOM unvalidated +BOM_CLOSEInDolibarr=BOM disabled +BOM_REOPENInDolibarr=BOM reopen +BOM_DELETEInDolibarr=BOM deleted +MRP_MO_VALIDATEInDolibarr=MO validated +MRP_MO_PRODUCEDInDolibarr=MO produced +MRP_MO_DELETEInDolibarr=MO deleted +##### End agenda events ##### +AgendaModelModule=Prantillas de documentos para eventos +DateActionStart=Data de inicio +DateActionEnd=Data de fin +AgendaUrlOptions1=Pode tamén engadir os seguintes parámetros ao filtro de saida: +AgendaUrlOptions3=logina=%s para restrinxir saída as accións pertencentes ao usuario %s. +AgendaUrlOptionsNotAdmin= logina =!%s para restrinxir saída as accións que non pertencen ao usuario %s. +AgendaUrlOptions4=logint=%spara restrinxir saída as accións asignadas ao usuario %s(propietario e outros). +AgendaUrlOptionsProject=project=__PROJECT_ID__ para restrinxir saída de accións asociadas ao proxecto __PROJECT_ID__. +AgendaUrlOptionsNotAutoEvent=notactiontype = systemauto para excluir o evento automáticamente. +AgendaUrlOptionsIncludeHolidays=includeholidays=1 to include events of holidays. +AgendaShowBirthdayEvents=Amosar cumpreanos dos contactos +AgendaHideBirthdayEvents=Ocultar cumpreanos dos contactos +Busy=Ocupado +ExportDataset_event1=Listaxe de eventos da axenda +DefaultWorkingDays=Xornada laboral semanal por defecto (Por exemplo: 1-5, 1-6) +DefaultWorkingHours=Xornada laboral diaria en horas (Por exemplo 9-18) +# External Sites ical +ExportCal=Exportar calendario +ExtSites=Importar calendarios externos +ExtSitesEnableThisTool=Amosar calendarios externos (definido na configuración global) na axenda. Non afecta aos calendarios externos definidos polos usuarios +ExtSitesNbOfAgenda=Número de calendarios +AgendaExtNb=Calendario nº %s +ExtSiteUrlAgenda=Url de acceso ao ficheiro .ical +ExtSiteNoLabel=Sen descrición +VisibleTimeRange=Rango de tempo visible +VisibleDaysRange=Rango de días visibles +AddEvent=Crear evento +MyAvailability=A miña dispoñibilidade +ActionType=Tipo de evento +DateActionBegin=Data de comezo do evento +ConfirmCloneEvent=¿Esta certo de querer clonar o evento %s? +RepeatEvent=Repetir evento +EveryWeek=Cada semana +EveryMonth=Cada mes +DayOfMonth=Día do mes +DayOfWeek=Día da semana +DateStartPlusOne=Data inicio +1 hora diff --git a/htdocs/langs/gl_ES/assets.lang b/htdocs/langs/gl_ES/assets.lang new file mode 100644 index 00000000000..7bc7e8d73a1 --- /dev/null +++ b/htdocs/langs/gl_ES/assets.lang @@ -0,0 +1,65 @@ +# Copyright (C) 2018 Alexandre Spangaro +# +# 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 . + +# +# Generic +# +Assets = Assets +NewAsset = New asset +AccountancyCodeAsset = Accounting code (asset) +AccountancyCodeDepreciationAsset = Accounting code (depreciation asset account) +AccountancyCodeDepreciationExpense = Accounting code (depreciation expense account) +NewAssetType=New asset type +AssetsTypeSetup=Asset type setup +AssetTypeModified=Asset type modified +AssetType=Asset type +AssetsLines=Assets +DeleteType=Eliminar +DeleteAnAssetType=Delete an asset type +ConfirmDeleteAssetType=Are you sure you want to delete this asset type? +ShowTypeCard=Show type '%s' + +# Module label 'ModuleAssetsName' +ModuleAssetsName = Assets +# Module description 'ModuleAssetsDesc' +ModuleAssetsDesc = Assets description + +# +# Admin page +# +AssetsSetup = Assets setup +Settings = Settings +AssetsSetupPage = Assets setup page +ExtraFieldsAssetsType = Complementary attributes (Asset type) +AssetsType=Asset type +AssetsTypeId=Asset type id +AssetsTypeLabel=Asset type label +AssetsTypes=Assets types + +# +# Menu +# +MenuAssets = Assets +MenuNewAsset = New asset +MenuTypeAssets = Type assets +MenuListAssets = Listaxe +MenuNewTypeAssets = Novo +MenuListTypeAssets = Listaxe + +# +# Module +# +NewAssetType=New asset type +NewAsset=New asset diff --git a/htdocs/langs/gl_ES/banks.lang b/htdocs/langs/gl_ES/banks.lang new file mode 100644 index 00000000000..b9198633c7b --- /dev/null +++ b/htdocs/langs/gl_ES/banks.lang @@ -0,0 +1,175 @@ +# Dolibarr language file - Source file is en_US - banks +Bank=Banco +MenuBankCash=Bancos | Caixa +MenuVariousPayment=Pagos varios +MenuNewVariousPayment=Novos pagos varios +BankName=Nome do banco +FinancialAccount=Conta +BankAccount=Conta bancaria +BankAccounts=Contas Bancarias +BankAccountsAndGateways=Contas bancarias | Pasarelas +ShowAccount=Amosar conta +AccountRef=Ref. conta financiera +AccountLabel=Etiqueta conta financiera +CashAccount=Conta caixa +CashAccounts=Contas caixa +CurrentAccounts=Contas correntes +SavingAccounts=Contas de aforro +ErrorBankLabelAlreadyExists=Etiqueta de conta financiera xa existente +BankBalance=Saldo +BankBalanceBefore=Saldo anterior +BankBalanceAfter=Saldo posterior +BalanceMinimalAllowed=Saldo mínimo autorizado +BalanceMinimalDesired=Saldo mínimo desexado +InitialBankBalance=Saldo inicial +EndBankBalance=Saldo final +CurrentBalance=Saldo actual +FutureBalance=Saldo previsto +ShowAllTimeBalance=Amosar balance dende o principio +AllTime=Dende o inicio +Reconciliation=Conciliación +RIB=Conta bancaria +IBAN=Número IBAN +BIC=Código BIC/SWIFT +SwiftValid=BIC/SWIFT válido +SwiftVNotalid=BIC/SWIFT non válido +IbanValid=IBAN válido +IbanNotValid=IBAN non válido +StandingOrders=Domiciliacións +StandingOrder=Domiciliación +AccountStatement=Extracto da conta +AccountStatementShort=Extracto +AccountStatements=Extractos da conta +LastAccountStatements=Últimos extractos bancarios +IOMonthlyReporting=Informe mensual +BankAccountDomiciliation=Enderezo do Banco +BankAccountCountry=País do Banco +BankAccountOwner=Nome do titular da conta +BankAccountOwnerAddress=Enderezo do titular da conta +RIBControlError=Fallo na integridade dos datos. O número da conta é incompleto ou incorrecto (revisa o país, números e IBAN). +CreateAccount=Crear conta +NewBankAccount=Nova conta +NewFinancialAccount=Nova conta financiera +MenuNewFinancialAccount=Nova conta +EditFinancialAccount=Edición conta +LabelBankCashAccount=Etiqueta da conta ou caixa +AccountType=Tipo de conta +BankType0=Conta bancaria de aforros +BankType1=Conta bancaria corrente +BankType2=Conta caixa +AccountsArea=Área contas +AccountCard=Ficha conta +DeleteAccount=Eliminación de conta +ConfirmDeleteAccount=¿Está certo de querer eliminar esta conta? +Account=Conta +BankTransactionByCategories=Rexistros bancarios por categorías +BankTransactionForCategory=Rexistros bancarios pola categoría %s +RemoveFromRubrique=Eliminar vínculo coa categoría +RemoveFromRubriqueConfirm=¿Está certo de querer eliminar o vínculo entre o rexistro e a categoría? +ListBankTransactions=Listaxe de rexistros bancarios +IdTransaction=Id de transacción +BankTransactions=Rexistros bancarios +BankTransaction=Rexistro bancario +ListTransactions=Listaxe rexistros +ListTransactionsByCategory=Listaxe rexistros/categoría +TransactionsToConciliate=Rexistros a conciliar +TransactionsToConciliateShort=To reconcile +Conciliable=Pode ser conciliado +Conciliate=Conciliar +Conciliation=Conciliación +SaveStatementOnly=Gardar só extracto +ReconciliationLate=Conciliación tardía +IncludeClosedAccount=Incluir contas pechadas +OnlyOpenedAccount=Só contas abiertas +AccountToCredit=Conta de crédito +AccountToDebit=Conta de débito +DisableConciliation=Desactivar a función de conciliación para esta conta +ConciliationDisabled=Función de conciliación desactivada +LinkedToAConciliatedTransaction=Vinculada a un rexistro conciliado +StatusAccountOpened=Aberta +StatusAccountClosed=Pechada +AccountIdShort=Número +LineRecord=Rexistro +AddBankRecord=Engadir rexistro +AddBankRecordLong=Engadir rexistro manual +Conciliated=Reconciliado +ConciliatedBy=Reconciliado por +DateConciliating=Data de reconciliación +BankLineConciliated=Entry reconciled with bank receipt +Reconciled=Reconciliado +NotReconciled=Non reconciliado +CustomerInvoicePayment=Cobro a cliente +SupplierInvoicePayment=Pago a provedor +SubscriptionPayment=Pago cota +WithdrawalPayment=Debit payment order +SocialContributionPayment=Pago de imposto social/fiscal +BankTransfer=Transferencia bancaria +BankTransfers=Transferencias bancarias +MenuBankInternalTransfer=Transferencia interna +TransferDesc=Ao transferir dunha conta a outra, Dolibarr crea dous rexistros contables (un de débito na conta orixe e un de crédito na conta destino). Do mesmo importe (salvo o signo), a etiqueta e a data serán usadas para esta transacción. +TransferFrom=De +TransferTo=A +TransferFromToDone=A transferencia de %s hacia %s de %s %s foi rexistrada. +CheckTransmitter=Emisor +ValidateCheckReceipt=¿Validar este cheque recibido? +ConfirmValidateCheckReceipt=¿Está certo de querer validar esta remesa? (ningunha modificación será posible unha vez sexa aprobada) +DeleteCheckReceipt=¿Eliminar esta remesa? +ConfirmDeleteCheckReceipt=¿Está certo de querer eliminar esta remesa? +BankChecks=Cheques bancarios +BankChecksToReceipt=Cheques agardando o deposito +BankChecksToReceiptShort=Cheques agardando o deposito +ShowCheckReceipt=Amosar remesa recibida +NumberOfCheques=Nº de cheque +DeleteTransaction=Eliminar rexistro +ConfirmDeleteTransaction=¿Está certo de querer eliminar este rexistro? +ThisWillAlsoDeleteBankRecord=Isto tamén eliminará o rexistro bancario +BankMovements=Movementos +PlannedTransactions=Rexistros previstos +Graph=Gráficos +ExportDataset_banque_1=Rexistros bancarios e extractos de conta +ExportDataset_banque_2=Xustificante bancario +TransactionOnTheOtherAccount=Transacción sobre a outra conta +PaymentNumberUpdateSucceeded=Número de pago actualizado correctamente +PaymentNumberUpdateFailed=Numero de pago non puido ser actualizado +PaymentDateUpdateSucceeded=Data de pago actualizada correctamente +PaymentDateUpdateFailed=Data de pago non puido ser actualizada +Transactions=Transaccións +BankTransactionLine=Rexistro bancario +AllAccounts=Todas as contas bancarias e de caixa +BackToAccount=Voltar á conta +ShowAllAccounts=Amosar para todas as contas +FutureTransaction=Transacción futura. Non é posible a reconciliación. +SelectChequeTransactionAndGenerate=Seleccione/filtre cheques a engadir na remesa de cheches e facga click en "Crear". +InputReceiptNumber=Escolla o extracto relacionado coa conciliación. Use o valor númerico ordenable: YYMM or YYYYMMDD +EventualyAddCategory=Eventualmente, especifique a categoría na que quere clasificar os rexistros +ToConciliate=A reconciliar? +ThenCheckLinesAndConciliate=Entón, chequea as liñas presentes no extracto bancario e faga click +DefaultRIB=Conta bancaria por defecto +AllRIB=Todas as contas bancarias +LabelRIB=Nome da conta bancaria +NoBANRecord=Ningunha conta bancaria +DeleteARib=Borrar rexistro bancario +ConfirmDeleteRib=¿Está certo de querer eliminar esta conta bancaria? +RejectCheck=Cheque rexeitado +ConfirmRejectCheck=¿Está certo de querer marcar este cheque como rexeitado? +RejectCheckDate=Data de rexeitamento do cheque +CheckRejected=Cheque rexeitado +CheckRejectedAndInvoicesReopened=Check returned and invoices re-open +BankAccountModelModule=Modelos de documentos para contas bancarias +DocumentModelSepaMandate=Prantilla de orde SEPA. Útil só para países membros da UE. +DocumentModelBan=Prantilla para imprimir unha páxina coa información IBAN. +NewVariousPayment=New miscellaneous payment +VariousPayment=Miscellaneous payment +VariousPayments=Pagos varios +ShowVariousPayment=Show miscellaneous payment +AddVariousPayment=Add miscellaneous payment +SEPAMandate=Orde SEPA +YourSEPAMandate=A súa orde SEPA +FindYourSEPAMandate=Esta é a súa orde SEPA para autorizar a nosa empresa a realizar un petición de débito ao seu banco. Envíea de volta asinada (dixitalice o documento asinado) ou envíe por correo a +AutoReportLastAccountStatement=Automaticanete cubra a etiqueta 'numero de extracto bancario' co último número de extracto de cando fixo a reconciliación +CashControl=POS cash fence +NewCashFence=New cash fence +BankColorizeMovement=Colorize movements +BankColorizeMovementDesc=If this function is enable, you can choose specific background color for debit or credit movements +BankColorizeMovementName1=Background color for debit movement +BankColorizeMovementName2=Background color for credit movement diff --git a/htdocs/langs/gl_ES/bills.lang b/htdocs/langs/gl_ES/bills.lang new file mode 100644 index 00000000000..26d835196c8 --- /dev/null +++ b/htdocs/langs/gl_ES/bills.lang @@ -0,0 +1,574 @@ +# Dolibarr language file - Source file is en_US - bills +Bill=Invoice +Bills=Facturas e abonos +BillsCustomers=Facturas a clientes +BillsCustomer=Customer invoice +BillsSuppliers=Facturas provedor +BillsCustomersUnpaid=Unpaid customer invoices +BillsCustomersUnpaidForCompany=Unpaid customer invoices for %s +BillsSuppliersUnpaid=Unpaid vendor invoices +BillsSuppliersUnpaidForCompany=Unpaid vendors invoices for %s +BillsLate=Late payments +BillsStatistics=Customers invoices statistics +BillsStatisticsSuppliers=Vendors invoices statistics +DisabledBecauseDispatchedInBookkeeping=Disabled because invoice was dispatched into bookkeeping +DisabledBecauseNotLastInvoice=Disabled because invoice is not erasable. Some invoices were recorded after this one and it will create holes in the counter. +DisabledBecauseNotErasable=Disabled because cannot be erased +InvoiceStandard=Standard invoice +InvoiceStandardAsk=Standard invoice +InvoiceStandardDesc=This kind of invoice is the common invoice. +InvoiceDeposit=Down payment invoice +InvoiceDepositAsk=Down payment invoice +InvoiceDepositDesc=This kind of invoice is done when a down payment has been received. +InvoiceProForma=Proforma invoice +InvoiceProFormaAsk=Proforma invoice +InvoiceProFormaDesc=Proforma invoice is an image of a true invoice but has no accountancy value. +InvoiceReplacement=Replacement invoice +InvoiceReplacementAsk=Replacement invoice for invoice +InvoiceReplacementDesc=Replacement invoice is used to completely replace an invoice with no payment already received.

    Note: Only invoices with no payment on it can be replaced. If the invoice you replace is not yet closed, it will be automatically closed to 'abandoned'. +InvoiceAvoir=Credit note +InvoiceAvoirAsk=Credit note to correct invoice +InvoiceAvoirDesc=The credit note is a negative invoice used to correct the fact that an invoice shows an amount that differs from the amount actually paid (eg the customer paid too much by mistake, or will not pay the complete amount since some products were returned). +invoiceAvoirWithLines=Create Credit Note with lines from the origin invoice +invoiceAvoirWithPaymentRestAmount=Create Credit Note with remaining unpaid of origin invoice +invoiceAvoirLineWithPaymentRestAmount=Credit Note for remaining unpaid amount +ReplaceInvoice=Replace invoice %s +ReplacementInvoice=Replacement invoice +ReplacedByInvoice=Replaced by invoice %s +ReplacementByInvoice=Replaced by invoice +CorrectInvoice=Correct invoice %s +CorrectionInvoice=Correction invoice +UsedByInvoice=Used to pay invoice %s +ConsumedBy=Consumed by +NotConsumed=Not consumed +NoReplacableInvoice=No replaceable invoices +NoInvoiceToCorrect=No invoice to correct +InvoiceHasAvoir=Was source of one or several credit notes +CardBill=Invoice card +PredefinedInvoices=Predefined Invoices +Invoice=Invoice +PdfInvoiceTitle=Invoice +Invoices=Facturas e abonos +InvoiceLine=Invoice line +InvoiceCustomer=Customer invoice +CustomerInvoice=Customer invoice +CustomersInvoices=Facturas a clientes +SupplierInvoice=Vendor invoice +SuppliersInvoices=Vendors invoices +SupplierBill=Vendor invoice +SupplierBills=suppliers invoices +Payment=Payment +PaymentBack=Refund +CustomerInvoicePaymentBack=Refund +Payments=Payments +PaymentsBack=Refunds +paymentInInvoiceCurrency=in invoices currency +PaidBack=Paid back +DeletePayment=Delete payment +ConfirmDeletePayment=Are you sure you want to delete this payment? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? +ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? +ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. +SupplierPayments=Vendor payments +ReceivedPayments=Received payments +ReceivedCustomersPayments=Payments received from customers +PayedSuppliersPayments=Payments paid to vendors +ReceivedCustomersPaymentsToValid=Received customers payments to validate +PaymentsReportsForYear=Payments reports for %s +PaymentsReports=Payments reports +PaymentsAlreadyDone=Payments already done +PaymentsBackAlreadyDone=Refunds already done +PaymentRule=Payment rule +PaymentMode=Payment Type +PaymentTypeDC=Debit/Credit Card +PaymentTypePP=PayPal +IdPaymentMode=Payment Type (id) +CodePaymentMode=Payment Type (code) +LabelPaymentMode=Payment Type (label) +PaymentModeShort=Payment Type +PaymentTerm=Payment Term +PaymentConditions=Payment Terms +PaymentConditionsShort=Payment Terms +PaymentAmount=Importe pago +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' +ClassifyUnBilled=Classify 'Unbilled' +CreateBill=Create Invoice +CreateCreditNote=Create credit note +AddBill=Create invoice or credit note +AddToDraftInvoices=Add to draft invoice +DeleteBill=Delete invoice +SearchACustomerInvoice=Search for a customer invoice +SearchASupplierInvoice=Search for a vendor invoice +CancelBill=Cancel an invoice +SendRemindByMail=Send reminder by email +DoPayment=Enter payment +DoPaymentBack=Enter refund +ConvertToReduc=Mark as credit available +ConvertExcessReceivedToReduc=Convert excess received into available credit +ConvertExcessPaidToReduc=Convert excess paid into available discount +EnterPaymentReceivedFromCustomer=Enter payment received from customer +EnterPaymentDueToCustomer=Make payment due to customer +DisabledBecauseRemainderToPayIsZero=Disabled because remaining unpaid is zero +PriceBase=Price base +BillStatus=Invoice status +StatusOfGeneratedInvoices=Status of generated invoices +BillStatusDraft=Borrador (é preciso validar) +BillStatusPaid=Pago +BillStatusPaidBackOrConverted=Credit note refund or marked as credit available +BillStatusConverted=Paid (ready for consumption in final invoice) +BillStatusCanceled=Abandoned +BillStatusValidated=Validated (needs to be paid) +BillStatusStarted=Started +BillStatusNotPaid=Not paid +BillStatusNotRefunded=Not refunded +BillStatusClosedUnpaid=Closed (unpaid) +BillStatusClosedPaidPartially=Paid (partially) +BillShortStatusDraft=Borrador +BillShortStatusPaid=Pago +BillShortStatusPaidBackOrConverted=Refunded or converted +Refunded=Refunded +BillShortStatusConverted=Pago +BillShortStatusCanceled=Abandoned +BillShortStatusValidated=Validado +BillShortStatusStarted=Started +BillShortStatusNotPaid=Not paid +BillShortStatusNotRefunded=Not refunded +BillShortStatusClosedUnpaid=Pechada +BillShortStatusClosedPaidPartially=Paid (partially) +PaymentStatusToValidShort=A validar +ErrorVATIntraNotConfigured=Intra-Community VAT number not yet defined +ErrorNoPaiementModeConfigured=No default payment type defined. Go to Invoice module setup to fix this. +ErrorCreateBankAccount=Create a bank account, then go to Setup panel of Invoice module to define payment types +ErrorBillNotFound=Invoice %s does not exist +ErrorInvoiceAlreadyReplaced=Error, you tried to validate an invoice to replace invoice %s. But this one has already been replaced by invoice %s. +ErrorDiscountAlreadyUsed=Error, discount already used +ErrorInvoiceAvoirMustBeNegative=Error, correct invoice must have a negative amount +ErrorInvoiceOfThisTypeMustBePositive=Error, this type of invoice must have an amount excluding tax positive (or null) +ErrorCantCancelIfReplacementInvoiceNotValidated=Error, can't cancel an invoice that has been replaced by another invoice that is still in draft status +ErrorThisPartOrAnotherIsAlreadyUsedSoDiscountSerieCantBeRemoved=This part or another is already used so discount series cannot be removed. +BillFrom=De +BillTo=A +ActionsOnBill=Actions on invoice +RecurringInvoiceTemplate=Template / Recurring invoice +NoQualifiedRecurringInvoiceTemplateFound=No recurring template invoice qualified for generation. +FoundXQualifiedRecurringInvoiceTemplate=Found %s recurring template invoice(s) qualified for generation. +NotARecurringInvoiceTemplate=Not a recurring template invoice +NewBill=New invoice +LastBills=Latest %s invoices +LatestTemplateInvoices=Latest %s template invoices +LatestCustomerTemplateInvoices=Latest %s customer template invoices +LatestSupplierTemplateInvoices=Latest %s vendor template invoices +LastCustomersBills=Latest %s customer invoices +LastSuppliersBills=Latest %s vendor invoices +AllBills=All invoices +AllCustomerTemplateInvoices=All template invoices +OtherBills=Other invoices +DraftBills=Draft invoices +CustomersDraftInvoices=Customer draft invoices +SuppliersDraftInvoices=Vendor draft invoices +Unpaid=Unpaid +ErrorNoPaymentDefined=Error No payment defined +ConfirmDeleteBill=Are you sure you want to delete this invoice? +ConfirmValidateBill=Are you sure you want to validate this invoice with reference %s? +ConfirmUnvalidateBill=Are you sure you want to change invoice %s to draft status? +ConfirmClassifyPaidBill=Are you sure you want to change invoice %s to status paid? +ConfirmCancelBill=Are you sure you want to cancel invoice %s? +ConfirmCancelBillQuestion=Why do you want to classify this invoice 'abandoned'? +ConfirmClassifyPaidPartially=Are you sure you want to change invoice %s to status paid? +ConfirmClassifyPaidPartiallyQuestion=This invoice has not been paid completely. What is the reason for closing this invoice? +ConfirmClassifyPaidPartiallyReasonAvoir=Remaining unpaid (%s %s) is a discount granted because payment was made before term. I regularize the VAT with a credit note. +ConfirmClassifyPaidPartiallyReasonDiscount=Remaining unpaid (%s %s) is a discount granted because payment was made before term. +ConfirmClassifyPaidPartiallyReasonDiscountNoVat=Remaining unpaid (%s %s) is a discount granted because payment was made before term. I accept to lose the VAT on this discount. +ConfirmClassifyPaidPartiallyReasonDiscountVat=Remaining unpaid (%s %s) is a discount granted because payment was made before term. I recover the VAT on this discount without a credit note. +ConfirmClassifyPaidPartiallyReasonBadCustomer=Bad customer +ConfirmClassifyPaidPartiallyReasonProductReturned=Products partially returned +ConfirmClassifyPaidPartiallyReasonOther=Amount abandoned for other reason +ConfirmClassifyPaidPartiallyReasonDiscountNoVatDesc=This choice is possible if your invoice has been provided with suitable comments. (Example «Only the tax corresponding to the price that has been actually paid gives rights to deduction») +ConfirmClassifyPaidPartiallyReasonDiscountVatDesc=In some countries, this choice might be possible only if your invoice contains correct notes. +ConfirmClassifyPaidPartiallyReasonAvoirDesc=Use this choice if all other does not suit +ConfirmClassifyPaidPartiallyReasonBadCustomerDesc=A bad customer is a customer that refuses to pay his debt. +ConfirmClassifyPaidPartiallyReasonProductReturnedDesc=This choice is used when payment is not complete because some of products were returned +ConfirmClassifyPaidPartiallyReasonOtherDesc=Use this choice if all others are not suitable, for example in following situation:
    - payment not complete because some products were shipped back
    - amount claimed too important because a discount was forgotten
    In all cases, amount over-claimed must be corrected in accountancy system by creating a credit note. +ConfirmClassifyAbandonReasonOther=Outro +ConfirmClassifyAbandonReasonOtherDesc=This choice will be used in all other cases. For example because you plan to create a replacing invoice. +ConfirmCustomerPayment=Do you confirm this payment input for %s %s? +ConfirmSupplierPayment=Do you confirm this payment input for %s %s? +ConfirmValidatePayment=Are you sure you want to validate this payment? No change can be made once payment is validated. +ValidateBill=Validate invoice +UnvalidateBill=Unvalidate invoice +NumberOfBills=No. of invoices +NumberOfBillsByMonth=No. of invoices per month +AmountOfBills=Amount of invoices +AmountOfBillsHT=Amount of invoices (net of tax) +AmountOfBillsByMonthHT=Amount of invoices by month (net of tax) +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices +RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation +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 +AlreadyPaid=Already paid +AlreadyPaidBack=Already paid back +AlreadyPaidNoCreditNotesNoDeposits=Already paid (without credit notes and down payments) +Abandoned=Abandoned +RemainderToPay=Remaining unpaid +RemainderToTake=Remaining amount to take +RemainderToPayBack=Remaining amount to refund +Rest=Pendente +AmountExpected=Amount claimed +ExcessReceived=Excess received +ExcessPaid=Excess paid +EscompteOffered=Discount offered (payment before term) +EscompteOfferedShort=Desconto +SendBillRef=Submission of invoice %s +SendReminderBillRef=Submission of invoice %s (reminder) +StandingOrders=Direct debit orders +StandingOrder=Domiciliación +NoDraftBills=No draft invoices +NoOtherDraftBills=No other draft invoices +NoDraftInvoices=No draft invoices +RefBill=Invoice ref +ToBill=To bill +RemainderToBill=Remainder to bill +SendBillByMail=Send invoice by email +SendReminderBillByMail=Send reminder by email +RelatedCommercialProposals=Related commercial proposals +RelatedRecurringCustomerInvoices=Related recurring customer invoices +MenuToValid=To valid +DateMaxPayment=Payment due on +DateInvoice=Invoice date +DatePointOfTax=Point of tax +NoInvoice=No invoice +ClassifyBill=Classify invoice +SupplierBillsToPay=Unpaid vendor invoices +CustomerBillsUnpaid=Unpaid customer invoices +NonPercuRecuperable=Non-recoverable +SetConditions=Set Payment Terms +SetMode=Set Payment Type +SetRevenuStamp=Set revenue stamp +Billed=Facturado +RecurringInvoices=Recurring invoices +RepeatableInvoice=Template invoice +RepeatableInvoices=Template invoices +Repeatable=Template +Repeatables=Templates +ChangeIntoRepeatableInvoice=Convert into template invoice +CreateRepeatableInvoice=Create template invoice +CreateFromRepeatableInvoice=Create from template invoice +CustomersInvoicesAndInvoiceLines=Customer invoices and invoice details +CustomersInvoicesAndPayments=Customer invoices and payments +ExportDataset_invoice_1=Customer invoices and invoice details +ExportDataset_invoice_2=Customer invoices and payments +ProformaBill=Proforma Bill: +Reduction=Reduction +ReductionShort=Disc. +Reductions=Reductions +ReductionsShort=Disc. +Discounts=Discounts +AddDiscount=Create discount +AddRelativeDiscount=Create relative discount +EditRelativeDiscount=Edit relative discount +AddGlobalDiscount=Create absolute discount +EditGlobalDiscounts=Edit absolute discounts +AddCreditNote=Create credit note +ShowDiscount=Show discount +ShowReduc=Show the discount +ShowSourceInvoice=Show the source invoice +RelativeDiscount=Desconto relativo +GlobalDiscount=Global discount +CreditNote=Credit note +CreditNotes=Credit notes +CreditNotesOrExcessReceived=Credit notes or excess received +Deposit=Down payment +Deposits=Down payments +DiscountFromCreditNote=Discount from credit note %s +DiscountFromDeposit=Down payments from invoice %s +DiscountFromExcessReceived=Payments in excess of invoice %s +DiscountFromExcessPaid=Payments in excess of invoice %s +AbsoluteDiscountUse=This kind of credit can be used on invoice before its validation +CreditNoteDepositUse=Invoice must be validated to use this kind of credits +NewGlobalDiscount=New absolute discount +NewRelativeDiscount=New relative discount +DiscountType=Discount type +NoteReason=Note/Reason +ReasonDiscount=Razón +DiscountOfferedBy=Granted by +DiscountStillRemaining=Discounts or credits available +DiscountAlreadyCounted=Discounts or credits already consumed +CustomerDiscounts=Customer discounts +SupplierDiscounts=Vendors discounts +BillAddress=Bill address +HelpEscompte=This discount is a discount granted to customer because payment was made before term. +HelpAbandonBadCustomer=This amount has been abandoned (customer said to be a bad customer) and is considered as an exceptional loss. +HelpAbandonOther=This amount has been abandoned since it was an error (wrong customer or invoice replaced by another for example) +IdSocialContribution=Social/fiscal tax payment id +PaymentId=Payment id +PaymentRef=Payment ref. +InvoiceId=Invoice id +InvoiceRef=Invoice ref. +InvoiceDateCreation=Invoice creation date +InvoiceStatus=Invoice status +InvoiceNote=Invoice note +InvoicePaid=Invoice paid +InvoicePaidCompletely=Paid completely +InvoicePaidCompletelyHelp=Invoice that are paid completely. This excludes invoices that are paid partially. To get list of all 'Closed' or non 'Closed' invoices, prefer to use a filter on the invoice status. +OrderBilled=Order billed +DonationPaid=Donation paid +PaymentNumber=Payment number +RemoveDiscount=Remove discount +WatermarkOnDraftBill=Watermark on draft invoices (nothing if empty) +InvoiceNotChecked=No invoice selected +ConfirmCloneInvoice=Are you sure you want to clone this invoice %s? +DisabledBecauseReplacedInvoice=Action disabled because invoice has been replaced +DescTaxAndDividendsArea=This area presents a summary of all payments made for special expenses. Only records with payments during the fixed year are included here. +NbOfPayments=No. of payments +SplitDiscount=Split discount in two +ConfirmSplitDiscount=Are you sure you want to split this discount of %s %s into two smaller discounts? +TypeAmountOfEachNewDiscount=Input amount for each of two parts: +TotalOfTwoDiscountMustEqualsOriginal=The total of the two new discounts must be equal to the original discount amount. +ConfirmRemoveDiscount=Are you sure you want to remove this discount? +RelatedBill=Related invoice +RelatedBills=Related invoices +RelatedCustomerInvoices=Related customer invoices +RelatedSupplierInvoices=Related vendor invoices +LatestRelatedBill=Latest related invoice +WarningBillExist=Warning, one or more invoices already exist +MergingPDFTool=Merging PDF tool +AmountPaymentDistributedOnInvoice=Payment amount distributed on invoice +PaymentOnDifferentThirdBills=Allow payments on different third parties bills but same parent company +PaymentNote=Payment note +ListOfPreviousSituationInvoices=List of previous situation invoices +ListOfNextSituationInvoices=List of next situation invoices +ListOfSituationInvoices=List of situation invoices +CurrentSituationTotal=Total current situation +DisabledBecauseNotEnouthCreditNote=To remove a situation invoice from cycle, this invoice's credit note total must cover this invoice total +RemoveSituationFromCycle=Remove this invoice from cycle +ConfirmRemoveSituationFromCycle=Remove this invoice %s from cycle ? +ConfirmOuting=Confirm outing +FrequencyPer_d=Every %s days +FrequencyPer_m=Every %s months +FrequencyPer_y=Every %s years +FrequencyUnit=Frequency unit +toolTipFrequency=Examples:
    Set 7, Day: give a new invoice every 7 days
    Set 3, Month: give a new invoice every 3 month +NextDateToExecution=Date for next invoice generation +NextDateToExecutionShort=Date next gen. +DateLastGeneration=Date of latest generation +DateLastGenerationShort=Date latest gen. +MaxPeriodNumber=Max. number of invoice generation +NbOfGenerationDone=Number of invoice generation already done +NbOfGenerationDoneShort=Number of generation done +MaxGenerationReached=Maximum number of generations reached +InvoiceAutoValidate=Validate invoices automatically +GeneratedFromRecurringInvoice=Generated from template recurring invoice %s +DateIsNotEnough=Date not reached yet +InvoiceGeneratedFromTemplate=Invoice %s generated from recurring template invoice %s +GeneratedFromTemplate=Generated from template invoice %s +WarningInvoiceDateInFuture=Warning, the invoice date is higher than current date +WarningInvoiceDateTooFarInFuture=Warning, the invoice date is too far from current date +ViewAvailableGlobalDiscounts=View available discounts +GroupPaymentsByModOnReports=Group payments by mode on reports +# PaymentConditions +Statut=Estado +PaymentConditionShortRECEP=Due Upon Receipt +PaymentConditionRECEP=Due Upon Receipt +PaymentConditionShort30D=30 days +PaymentCondition30D=30 days +PaymentConditionShort30DENDMONTH=30 days of month-end +PaymentCondition30DENDMONTH=Within 30 days following the end of the month +PaymentConditionShort60D=60 days +PaymentCondition60D=60 days +PaymentConditionShort60DENDMONTH=60 days of month-end +PaymentCondition60DENDMONTH=Within 60 days following the end of the month +PaymentConditionShortPT_DELIVERY=Delivery +PaymentConditionPT_DELIVERY=On delivery +PaymentConditionShortPT_ORDER=Pedido +PaymentConditionPT_ORDER=On order +PaymentConditionShortPT_5050=50-50 +PaymentConditionPT_5050=50%% in advance, 50%% on delivery +PaymentConditionShort10D=10 days +PaymentCondition10D=10 days +PaymentConditionShort10DENDMONTH=10 days of month-end +PaymentCondition10DENDMONTH=Within 10 days following the end of the month +PaymentConditionShort14D=14 days +PaymentCondition14D=14 days +PaymentConditionShort14DENDMONTH=14 days of month-end +PaymentCondition14DENDMONTH=Within 14 days following the end of the month +FixAmount=Fixed amount - 1 line with label '%s' +VarAmount=Variable amount (%% tot.) +VarAmountOneLine=Variable amount (%% tot.) - 1 line with label '%s' +VarAmountAllLines=Variable amount (%% tot.) - all same lines +# PaymentType +PaymentTypeVIR=Transferencia bancaria +PaymentTypeShortVIR=Transferencia bancaria +PaymentTypePRE=Direct debit payment order +PaymentTypeShortPRE=Debit payment order +PaymentTypeLIQ=Cash +PaymentTypeShortLIQ=Cash +PaymentTypeCB=Tarxeta de crédito +PaymentTypeShortCB=Tarxeta de crédito +PaymentTypeCHQ=Verificar +PaymentTypeShortCHQ=Verificar +PaymentTypeTIP=TIP (Documents against Payment) +PaymentTypeShortTIP=TIP Payment +PaymentTypeVAD=Online payment +PaymentTypeShortVAD=Online payment +PaymentTypeTRA=Bank draft +PaymentTypeShortTRA=Borrador +PaymentTypeFAC=Factor +PaymentTypeShortFAC=Factor +BankDetails=Bank details +BankCode=Bank code +DeskCode=Branch code +BankAccountNumber=Account number +BankAccountNumberKey=Checksum +Residence=Enderezo +IBANNumber=IBAN account number +IBAN=IBAN +BIC=BIC/SWIFT +BICNumber=Código BIC/SWIFT +ExtraInfos=Extra infos +RegulatedOn=Regulated on +ChequeNumber=Check N° +ChequeOrTransferNumber=Check/Transfer N° +ChequeBordereau=Check schedule +ChequeMaker=Check/Transfer transmitter +ChequeBank=Bank of Check +CheckBank=Verificar +NetToBePaid=Net to be paid +PhoneNumber=Tel +FullPhoneNumber=Telephone +TeleFax=Fax +PrettyLittleSentence=Accept the amount of payments due by checks issued in my name as a Member of an accounting association approved by the Fiscal Administration. +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=sent to +PaymentByTransferOnThisBankAccount=Payment by transfer to the following bank account +VATIsNotUsedForInvoice=* Non applicable VAT art-293B of CGI +LawApplicationPart1=By application of the law 80.335 of 12/05/80 +LawApplicationPart2=the goods remain the property of +LawApplicationPart3=the seller until full payment of +LawApplicationPart4=their price. +LimitedLiabilityCompanyCapital=SARL with Capital of +UseLine=Aplicar +UseDiscount=Use discount +UseCredit=Use credit +UseCreditNoteInInvoicePayment=Reduce amount to pay with this credit +MenuChequeDeposits=Check Deposits +MenuCheques=Checks +MenuChequesReceipts=Check receipts +NewChequeDeposit=New deposit +ChequesReceipts=Check receipts +ChequesArea=Check deposits area +ChequeDeposits=Check deposits +Cheques=Checks +DepositId=Id deposit +NbCheque=Number of checks +CreditNoteConvertedIntoDiscount=This %s has been converted into %s +UsBillingContactAsIncoiveRecipientIfExist=Use contact/address with type 'billing contact' instead of third-party address as recipient for invoices +ShowUnpaidAll=Show all unpaid invoices +ShowUnpaidLateOnly=Show late unpaid invoices only +PaymentInvoiceRef=Payment invoice %s +ValidateInvoice=Validate invoice +ValidateInvoices=Validate invoices +Cash=Cash +Reported=Delayed +DisabledBecausePayments=Not possible since there are some payments +CantRemovePaymentWithOneInvoicePaid=Can't remove payment since there is at least one invoice classified paid +ExpectedToPay=Expected payment +CantRemoveConciliatedPayment=Can't remove reconciled payment +PayedByThisPayment=Paid by this payment +ClosePaidInvoicesAutomatically=Classify automatically all standard, down payment or replacement invoices as "Paid" when payment is done entirely. +ClosePaidCreditNotesAutomatically=Classify automatically all credit notes as "Paid" when refund is done entirely. +ClosePaidContributionsAutomatically=Classify automatically all social or fiscal contributions as "Paid" when payment is done entirely. +AllCompletelyPayedInvoiceWillBeClosed=All invoices with no remainder to pay will be automatically closed with status "Paid". +ToMakePayment=Pay +ToMakePaymentBack=Pay back +ListOfYourUnpaidInvoices=List of unpaid invoices +NoteListOfYourUnpaidInvoices=Note: This list contains only invoices for third parties you are linked to as a sale representative. +RevenueStamp=Tax stamp +YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party +YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party +YouMustCreateStandardInvoiceFirstDesc=You have to create a standard invoice first and convert it to "template" to create a new template invoice +PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template (old implementation of Sponge template) +PDFSpongeDescription=Invoice PDF template Sponge. A complete invoice template +PDFCrevetteDescription=Invoice PDF template Crevette. A complete invoice template for situation invoices +TerreNumRefModelDesc1=Return number with format %syymm-nnnn for standard invoices and %syymm-nnnn for credit notes where yy is year, mm is month and nnnn is a sequence with no break and no return to 0 +MarsNumRefModelDesc1=Return number with format %syymm-nnnn for standard invoices, %syymm-nnnn for replacement invoices, %syymm-nnnn for down payment invoices and %syymm-nnnn for credit notes where yy is year, mm is month and nnnn is a sequence with no break and no return to 0 +TerreNumRefModelError=A bill starting with $syymm already exists and is not compatible with this model of sequence. Remove it or rename it to activate this module. +CactusNumRefModelDesc1=Return number with format %syymm-nnnn for standard invoices, %syymm-nnnn for credit notes and %syymm-nnnn for down payment invoices where yy is year, mm is month and nnnn is a sequence with no break and no return to 0 +EarlyClosingReason=Early closing reason +EarlyClosingComment=Early closing note +##### Types de contacts ##### +TypeContact_facture_internal_SALESREPFOLL=Representative following-up customer invoice +TypeContact_facture_external_BILLING=Contacto cliente facturación pedido +TypeContact_facture_external_SHIPPING=Contacto cliente entrega pedido +TypeContact_facture_external_SERVICE=Customer service contact +TypeContact_invoice_supplier_internal_SALESREPFOLL=Representative following-up vendor invoice +TypeContact_invoice_supplier_external_BILLING=Contacto provedor factura +TypeContact_invoice_supplier_external_SHIPPING=Contacto seguemento envío a provedor +TypeContact_invoice_supplier_external_SERVICE=Vendor service contact +# Situation invoices +InvoiceFirstSituationAsk=First situation invoice +InvoiceFirstSituationDesc=The situation invoices are tied to situations related to a progression, for example the progression of a construction. Each situation is tied to an invoice. +InvoiceSituation=Situation invoice +InvoiceSituationAsk=Invoice following the situation +InvoiceSituationDesc=Create a new situation following an already existing one +SituationAmount=Situation invoice amount(net) +SituationDeduction=Situation subtraction +ModifyAllLines=Modify all lines +CreateNextSituationInvoice=Create next situation +ErrorFindNextSituationInvoice=Error unable to find next situation cycle ref +ErrorOutingSituationInvoiceOnUpdate=Unable to outing this situation invoice. +ErrorOutingSituationInvoiceCreditNote=Unable to outing linked credit note. +NotLastInCycle=This invoice is not the latest in cycle and must not be modified. +DisabledBecauseNotLastInCycle=The next situation already exists. +DisabledBecauseFinal=This situation is final. +situationInvoiceShortcode_AS=AS +situationInvoiceShortcode_S=D +CantBeLessThanMinPercent=The progress can't be smaller than its value in the previous situation. +NoSituations=No open situations +InvoiceSituationLast=Final and general invoice +PDFCrevetteSituationNumber=Situation N°%s +PDFCrevetteSituationInvoiceLineDecompte=Situation invoice - COUNT +PDFCrevetteSituationInvoiceTitle=Situation invoice +PDFCrevetteSituationInvoiceLine=Situation N°%s: Inv. N°%s on %s +TotalSituationInvoice=Total situation +invoiceLineProgressError=Invoice line progress can't be greater than or equal to the next invoice line +updatePriceNextInvoiceErrorUpdateline=Error: update price on invoice line: %s +ToCreateARecurringInvoice=To create a recurring invoice for this contract, first create this draft invoice, then convert it into an invoice template and define the frequency for generation of future invoices. +ToCreateARecurringInvoiceGene=To generate future invoices regularly and manually, just go on menu %s - %s - %s. +ToCreateARecurringInvoiceGeneAuto=If you need to have such invoices generated automatically, ask your administrator to enable and setup module %s. Note that both methods (manual and automatic) can be used together with no risk of duplication. +DeleteRepeatableInvoice=Delete template invoice +ConfirmDeleteRepeatableInvoice=Are your sure you want to delete the template invoice? +CreateOneBillByThird=Create one invoice per third party (otherwise, one invoice per order) +BillCreated=%s bill(s) created +StatusOfGeneratedDocuments=Status of document generation +DoNotGenerateDoc=Do not generate document file +AutogenerateDoc=Auto generate document file +AutoFillDateFrom=Set start date for service line with invoice date +AutoFillDateFromShort=Set start date +AutoFillDateTo=Set end date for service line with next invoice date +AutoFillDateToShort=Set end date +MaxNumberOfGenerationReached=Max number of gen. reached +BILL_DELETEInDolibarr=Factura eliminada +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/gl_ES/blockedlog.lang b/htdocs/langs/gl_ES/blockedlog.lang new file mode 100644 index 00000000000..5afae6e9e53 --- /dev/null +++ b/htdocs/langs/gl_ES/blockedlog.lang @@ -0,0 +1,54 @@ +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). +CompanyInitialKey=Company initial key (hash of genesis block) +BrowseBlockedLog=Unalterable logs +ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) +ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) +DownloadBlockChain=Download fingerprints +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). +OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. +OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. +AddedByAuthority=Stored into remote authority +NotAddedByAuthorityYet=Not yet stored into remote authority +ShowDetails=Show stored details +logPAYMENT_VARIOUS_CREATE=Payment (not assigned to an invoice) created +logPAYMENT_VARIOUS_MODIFY=Payment (not assigned to an invoice) modified +logPAYMENT_VARIOUS_DELETE=Payment (not assigned to an invoice) logical deletion +logPAYMENT_ADD_TO_BANK=Payment added to bank +logPAYMENT_CUSTOMER_CREATE=Customer payment created +logPAYMENT_CUSTOMER_DELETE=Customer payment logical deletion +logDONATION_PAYMENT_CREATE=Donation payment created +logDONATION_PAYMENT_DELETE=Donation payment logical deletion +logBILL_PAYED=Customer invoice paid +logBILL_UNPAYED=Customer invoice set unpaid +logBILL_VALIDATE=Customer invoice validated +logBILL_SENTBYMAIL=Customer invoice send by mail +logBILL_DELETE=Customer invoice logically deleted +logMODULE_RESET=Module BlockedLog was disabled +logMODULE_SET=Module BlockedLog was enabled +logDON_VALIDATE=Donation validated +logDON_MODIFY=Donation modified +logDON_DELETE=Donation logical deletion +logMEMBER_SUBSCRIPTION_CREATE=Member subscription created +logMEMBER_SUBSCRIPTION_MODIFY=Member subscription modified +logMEMBER_SUBSCRIPTION_DELETE=Member subscription logical deletion +logCASHCONTROL_VALIDATE=Cash fence recording +BlockedLogBillDownload=Customer invoice download +BlockedLogBillPreview=Customer invoice preview +BlockedlogInfoDialog=Log Details +ListOfTrackedEvents=List of tracked events +Fingerprint=Fingerprint +DownloadLogCSV=Export archived logs (CSV) +logDOC_PREVIEW=Preview of a validated document in order to print or download +logDOC_DOWNLOAD=Download of a validated document in order to print or send +DataOfArchivedEvent=Full datas of archived event +ImpossibleToReloadObject=Original object (type %s, id %s) not linked (see 'Full datas' column to get unalterable saved data) +BlockedLogAreRequiredByYourCountryLegislation=Unalterable Logs module may be required by the legislation of your country. Disabling this module may render any future transactions invalid with respect to the law and the use of legal software as they can not be validated by a tax audit. +BlockedLogActivatedBecauseRequiredByYourCountryLegislation=Unalterable Logs module was activated because of the legislation of your country. Disabling this module may render any future transactions invalid with respect to the law and the use of legal software as they cannot be validated by a tax audit. +BlockedLogDisableNotAllowedForCountry=List of countries where usage of this module is mandatory (just to prevent to disable the module by error, if your country is in this list, disable of module is not possible without editing this list first. Note also that enabling/disabling this module will keep a track into the unalterable log). +OnlyNonValid=Non-valid +TooManyRecordToScanRestrictFilters=Too many records to scan/analyze. Please restrict list with more restrictive filters. +RestrictYearToExport=Restrict month / year to export diff --git a/htdocs/langs/gl_ES/bookmarks.lang b/htdocs/langs/gl_ES/bookmarks.lang new file mode 100644 index 00000000000..93ef36b3e51 --- /dev/null +++ b/htdocs/langs/gl_ES/bookmarks.lang @@ -0,0 +1,21 @@ +# Dolibarr language file - Source file is en_US - marque pages +AddThisPageToBookmarks=Engadir a páxina actual aos marcadores +Bookmark=Marcador +Bookmarks=Marcadores +ListOfBookmarks=Listaxe de marcadores +EditBookmarks=Listar/editar marcadores +NewBookmark=Novo marcador +ShowBookmark=Amosar marcadores +OpenANewWindow=Abrir nunha nova xanela +ReplaceWindow=Reemplazar a xanela actual +BookmarkTargetNewWindowShort=Nova xanela +BookmarkTargetReplaceWindowShort=Xanela actual +BookmarkTitle=Nome do marcador +UrlOrLink=URL +BehaviourOnClick=Comportamento cando un marcador URL é seleccionado +CreateBookmark=Crear marcador +SetHereATitleForLink=Indicar un nome para o marcador +UseAnExternalHttpLinkOrRelativeDolibarrLink=Usar unha externa/absoluta URL (https://URL) ou unha interna/relativa URL de Dolibarr (/DOLIBARR_ROOT/htdocs/...) +ChooseIfANewWindowMustBeOpenedOnClickOnBookmark=Escolla se debe abrir a páxina nesta xanela ou nunha nova xanela +BookmarksManagement=Xestión de marcadores +BookmarksMenuShortCut=Ctrl + shift + m diff --git a/htdocs/langs/gl_ES/boxes.lang b/htdocs/langs/gl_ES/boxes.lang new file mode 100644 index 00000000000..b2acfbb98a0 --- /dev/null +++ b/htdocs/langs/gl_ES/boxes.lang @@ -0,0 +1,102 @@ +# Dolibarr language file - Source file is en_US - boxes +BoxLoginInformation=Información login +BoxLastRssInfos=Fíos de información RSS +BoxLastProducts=Últimos %s produtos/servizos +BoxProductsAlertStock=Alertas de stock para produtos +BoxLastProductsInContract=Últimos %s produtos/servizos contratados +BoxLastSupplierBills=Últimas facturas de provedores +BoxLastCustomerBills=Últimas facturas a clientes +BoxOldestUnpaidCustomerBills=Facturas a clientes mais antigas pendentes de cobro +BoxOldestUnpaidSupplierBills=Facturas de provedores mais antigas pendentes de pago +BoxLastProposals=Últimos orzamentos +BoxLastProspects=Últimos clientes potenciaiss modificados +BoxLastCustomers=Últimos clientes modificados +BoxLastSuppliers=Últimos provedores modificados +BoxLastCustomerOrders=Últimas facturas a clientes +BoxLastActions=Últimas accións +BoxLastContracts=Últimos contratos +BoxLastContacts=Últimos contactos/enderezos +BoxLastMembers=Últimos membros +BoxFicheInter=Últimas intervencións +BoxCurrentAccounts=Balance de contas abertas +BoxTitleMemberNextBirthdays=Birthdays of this month (members) +BoxTitleLastRssInfos=Últimas %s novas de %s +BoxTitleLastProducts=Produtos/Servizos: Últimos %s modificados +BoxTitleProductsAlertStock=Produtos: alerta de stock +BoxTitleLastSuppliers=Últimos %s provedores rexistrados +BoxTitleLastModifiedSuppliers=Provedores: últimos %s modificados +BoxTitleLastModifiedCustomers=Clientes: últimos %s modificados +BoxTitleLastCustomersOrProspects=Últimos %s clientes ou clientes potenciais +BoxTitleLastCustomerBills=Latest %s modified Customer invoices +BoxTitleLastSupplierBills=Latest %s modified Vendor invoices +BoxTitleLastModifiedProspects=Orzamentos: Últimos %s modificados +BoxTitleLastModifiedMembers=Últimos %s membros +BoxTitleLastFicheInter=Últimas %s intervencións modificadas +BoxTitleOldestUnpaidCustomerBills=Facturas Clientes: mais antigas %s pendentes de cobro +BoxTitleOldestUnpaidSupplierBills=Facturas Provedores: mais antigas %s pendentes de pago +BoxTitleCurrentAccounts=Contas abertas: balance +BoxTitleSupplierOrdersAwaitingReception=Supplier orders awaiting reception +BoxTitleLastModifiedContacts=Contactos/Enderezos: Últimos %s modificados +BoxMyLastBookmarks=Bookmarks: latest %s +BoxOldestExpiredServices=Servizos antigos expirados +BoxLastExpiredServices=Últimos %s contratos mais antigos con servizos expirados +BoxTitleLastActionsToDo=Últimas %s accións a realizar +BoxTitleLastContracts=Últimos %s contratos modificados +BoxTitleLastModifiedDonations=Últimas %s donacións modificadas +BoxTitleLastModifiedExpenses=Últimos %s informes de gastos modificados +BoxTitleLatestModifiedBoms=Latest %s modified BOMs +BoxTitleLatestModifiedMos=Latest %s modified Manufacturing Orders +BoxGlobalActivity=Actividade global (facturas, orzamentos, ordes) +BoxGoodCustomers=Bos clientes +BoxTitleGoodCustomers=%s Bos clientes +FailedToRefreshDataInfoNotUpToDate=Erro ao actualizar o RSS. Último refresco correcto na data: %s +LastRefreshDate=Última data de refresco +NoRecordedBookmarks=Non hai marcadores definidos +ClickToAdd=Faga clic aquí para engadir. +NoRecordedCustomers=Ningún cliente rexistrado +NoRecordedContacts=Ningún contacto regxistrado +NoActionsToDo=Sen eventos a realizar +NoRecordedOrders=Sen pedidos de clientes rexistrados +NoRecordedProposals=Sen orzamentos rexistrados +NoRecordedInvoices=Sen facturas a clientes rexistradas +NoUnpaidCustomerBills=Non hai facturas a clientes pendentes de cobro +NoUnpaidSupplierBills=Non hai facturas de provedores pendentes de pago +NoModifiedSupplierBills=Sen facturas de provedor rexistradas +NoRecordedProducts=Sen produtos/servizos rexistrados +NoRecordedProspects=Sen clientes potenciais rexistrados +NoContractedProducts=Sen produtos/servizos contratados +NoRecordedContracts=Sen contratos rexistrados +NoRecordedInterventions=Sen intervencións gardadas +BoxLatestSupplierOrders=Últimos pedidos a provedores +BoxLatestSupplierOrdersAwaitingReception=Latest Purchase Orders (with a pending reception) +NoSupplierOrder=Sen pedidos a provedores +BoxCustomersInvoicesPerMonth=Facturas a clientes por mes +BoxSuppliersInvoicesPerMonth=Facturas de provedores por mes +BoxCustomersOrdersPerMonth=Pedidos de clientes por mes +BoxSuppliersOrdersPerMonth=Pedidos a provedores por mes +BoxProposalsPerMonth=Orzamentos por mes +NoTooLowStockProducts=Sen produtos por debaixo do stock mínimo +BoxProductDistribution=Distribución de produtos/servizos +ForObject=On %s +BoxTitleLastModifiedSupplierBills=Facturas Provedor: útimas %s modificadas +BoxTitleLatestModifiedSupplierOrders=Pedidos Provedor: últimos %s modificados +BoxTitleLastModifiedCustomerBills=Facturas Clientes: últimas %s modificadas +BoxTitleLastModifiedCustomerOrders=Pedidos Clientes: últimos %s pedidos modificados +BoxTitleLastModifiedPropals=Últimos %s orzamentos modificados +ForCustomersInvoices=Facturas a clientes +ForCustomersOrders=Pedidos de clientes +ForProposals=Orzamentos +LastXMonthRolling=Os últimos %s meses consecutivos +ChooseBoxToAdd=Engadir panel ao seu taboleiro +BoxAdded=O panel foi agregado ao seu taboleiro +BoxTitleUserBirthdaysOfMonth=Birthdays of this month (users) +BoxLastManualEntries=Last manual entries in accountancy +BoxTitleLastManualEntries=%s latest manual entries +NoRecordedManualEntries=No manual entries record in accountancy +BoxSuspenseAccount=Count accountancy operation with suspense account +BoxTitleSuspenseAccount=Number of unallocated lines +NumberOfLinesInSuspenseAccount=Number of line in suspense account +SuspenseAccountNotDefined=Suspense account isn't defined +BoxLastCustomerShipments=Last customer shipments +BoxTitleLastCustomerShipments=Latest %s customer shipments +NoRecordedShipments=No recorded customer shipment diff --git a/htdocs/langs/gl_ES/cashdesk.lang b/htdocs/langs/gl_ES/cashdesk.lang new file mode 100644 index 00000000000..3c4236bf89f --- /dev/null +++ b/htdocs/langs/gl_ES/cashdesk.lang @@ -0,0 +1,110 @@ +# Language file - Source file is en_US - cashdesk +CashDeskMenu=Point of sale +CashDesk=Point of sale +CashDeskBankCash=Bank account (cash) +CashDeskBankCB=Bank account (card) +CashDeskBankCheque=Bank account (cheque) +CashDeskWarehouse=Warehouse +CashdeskShowServices=Selling services +CashDeskProducts=Produtos +CashDeskStock=Stock +CashDeskOn=on +CashDeskThirdParty=Third party +ShoppingCart=Shopping cart +NewSell=New sell +AddThisArticle=Add this article +RestartSelling=Go back on sell +SellFinished=Sale complete +PrintTicket=Print ticket +SendTicket=Send ticket +NoProductFound=No article found +ProductFound=product found +NoArticle=No article +Identification=Identification +Article=Article +Difference=Difference +TotalTicket=Total ticket +NoVAT=No VAT for this sale +Change=Excess received +BankToPay=Account for payment +ShowCompany=Show company +ShowStock=Show warehouse +DeleteArticle=Click to remove this article +FilterRefOrLabelOrBC=Search (Ref/Label) +UserNeedPermissionToEditStockToUsePos=You ask to decrease stock on invoice creation, so user that uses POS needs to have permission to edit stock. +DolibarrReceiptPrinter=Dolibarr Receipt Printer +PointOfSale=Point of Sale +PointOfSaleShort=POS +CloseBill=Close Bill +Floors=Floors +Floor=Floor +AddTable=Add table +Place=Place +TakeposConnectorNecesary='TakePOS Connector' required +OrderPrinters=Order printers +SearchProduct=Search product +Receipt=Receipt +Header=Header +Footer=Footer +AmountAtEndOfPeriod=Amount at end of period (day, month or year) +TheoricalAmount=Theorical amount +RealAmount=Real amount +CashFence=Cash fence +CashFenceDone=Cash fence done for the period +NbOfInvoices=Nb of invoices +Paymentnumpad=Type of Pad to enter payment +Numberspad=Numbers Pad +BillsCoinsPad=Coins and banknotes Pad +DolistorePosCategory=TakePOS modules and other POS solutions for Dolibarr +TakeposNeedsCategories=TakePOS needs product categories to work +OrderNotes=Order Notes +CashDeskBankAccountFor=Default account to use for payments in +NoPaimementModesDefined=No paiment mode defined in TakePOS configuration +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts +EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant +ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? +ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? +History=History +ValidateAndClose=Validate and close +Terminal=Terminal +NumberOfTerminals=Number of Terminals +TerminalSelect=Select terminal you want to use: +POSTicket=POS Ticket +POSTerminal=POS Terminal +POSModule=POS Module +BasicPhoneLayout=Use basic layout for phones +SetupOfTerminalNotComplete=Setup of terminal %s is not complete +DirectPayment=Direct payment +DirectPaymentButton=Direct cash payment button +InvoiceIsAlreadyValidated=Invoice is already validated +NoLinesToBill=No lines to bill +CustomReceipt=Custom Receipt +ReceiptName=Receipt Name +ProductSupplements=Product Supplements +SupplementCategory=Supplement category +ColorTheme=Color theme +Colorful=Colorful +HeadBar=Head Bar +SortProductField=Field for sorting products +Browser=Navegador +BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. +PrintMethod=Print method +ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. +ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for POS sales +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use +BarRestaurant=Bar Restaurant +AutoOrder=Customer auto order diff --git a/htdocs/langs/gl_ES/categories.lang b/htdocs/langs/gl_ES/categories.lang new file mode 100644 index 00000000000..679bd032588 --- /dev/null +++ b/htdocs/langs/gl_ES/categories.lang @@ -0,0 +1,89 @@ +# Dolibarr language file - Source file is en_US - categories +Rubrique=Tag/Category +Rubriques=Etiquetas/Categorías +RubriquesTransactions=Tags/Categories of transactions +categories=tags/categories +NoCategoryYet=No tag/category of this type created +In=In +AddIn=Add in +modify=modify +Classify=Classify +CategoriesArea=Tags/Categories area +ProductsCategoriesArea=Products/Services tags/categories area +SuppliersCategoriesArea=Vendors tags/categories area +CustomersCategoriesArea=Customers tags/categories area +MembersCategoriesArea=Members tags/categories area +ContactsCategoriesArea=Contacts tags/categories area +AccountsCategoriesArea=Accounts tags/categories area +ProjectsCategoriesArea=Projects tags/categories area +UsersCategoriesArea=Users tags/categories area +SubCats=Sub-categories +CatList=List of tags/categories +NewCategory=New tag/category +ModifCat=Modify tag/category +CatCreated=Tag/category created +CreateCat=Create tag/category +CreateThisCat=Create this tag/category +NoSubCat=No subcategory. +SubCatOf=Subcategory +FoundCats=Found tags/categories +ImpossibleAddCat=Impossible to add the tag/category %s +WasAddedSuccessfully=%s was added successfully. +ObjectAlreadyLinkedToCategory=Element is already linked to this tag/category. +ProductIsInCategories=Product/service is linked to following tags/categories +CompanyIsInCustomersCategories=This third party is linked to following customers/prospects tags/categories +CompanyIsInSuppliersCategories=This third party is linked to following vendors tags/categories +MemberIsInCategories=This member is linked to following members tags/categories +ContactIsInCategories=This contact is linked to following contacts tags/categories +ProductHasNoCategory=This product/service is not in any tags/categories +CompanyHasNoCategory=This third party is not in any tags/categories +MemberHasNoCategory=This member is not in any tags/categories +ContactHasNoCategory=This contact is not in any tags/categories +ProjectHasNoCategory=This project is not in any tags/categories +ClassifyInCategory=Add to tag/category +NotCategorized=Without tag/category +CategoryExistsAtSameLevel=This category already exists with this ref +ContentsVisibleByAllShort=Contents visible by all +ContentsNotVisibleByAllShort=Contents not visible by all +DeleteCategory=Delete tag/category +ConfirmDeleteCategory=Are you sure you want to delete this tag/category? +NoCategoriesDefined=No tag/category defined +SuppliersCategoryShort=Vendors tag/category +CustomersCategoryShort=Customers tag/category +ProductsCategoryShort=Products tag/category +MembersCategoryShort=Members tag/category +SuppliersCategoriesShort=Vendors tags/categories +CustomersCategoriesShort=Customers tags/categories +ProspectsCategoriesShort=Prospects tags/categories +CustomersProspectsCategoriesShort=Cust./Prosp. tags/categories +ProductsCategoriesShort=Products tags/categories +MembersCategoriesShort=Members tags/categories +ContactCategoriesShort=Contacts tags/categories +AccountsCategoriesShort=Accounts tags/categories +ProjectsCategoriesShort=Projects tags/categories +UsersCategoriesShort=Users tags/categories +StockCategoriesShort=Warehouse tags/categories +ThisCategoryHasNoItems=This category does not contain any items. +CategId=Tag/category id +CatSupList=List of vendor tags/categories +CatCusList=List of customer/prospect tags/categories +CatProdList=List of products tags/categories +CatMemberList=List of members tags/categories +CatContactList=List of contact tags/categories +CatSupLinks=Links between suppliers and tags/categories +CatCusLinks=Links between customers/prospects and tags/categories +CatContactsLinks=Links between contacts/addresses and tags/categories +CatProdLinks=Links between products/services and tags/categories +CatProJectLinks=Links between projects and tags/categories +DeleteFromCat=Remove from tags/category +ExtraFieldsCategories=Complementary attributes +CategoriesSetup=Tags/categories setup +CategorieRecursiv=Link with parent tag/category automatically +CategorieRecursivHelp=If option is on, when you add a product into a subcategory, product will also be added into the parent category. +AddProductServiceIntoCategory=Add the following product/service +ShowCategory=Show tag/category +ByDefaultInList=By default in list +ChooseCategory=Choose category +StocksCategoriesArea=Warehouses Categories Area +ActionCommCategoriesArea=Events Categories Area +UseOrOperatorForCategories=Use or operator for categories diff --git a/htdocs/langs/gl_ES/commercial.lang b/htdocs/langs/gl_ES/commercial.lang new file mode 100644 index 00000000000..6c69d81c243 --- /dev/null +++ b/htdocs/langs/gl_ES/commercial.lang @@ -0,0 +1,80 @@ +# Dolibarr language file - Source file is en_US - commercial +Commercial=Commerce +CommercialArea=Commerce area +Customer=Cliente +Customers=Clientes +Prospect=Cliente potencial +Prospects=Clientes potenciais +DeleteAction=Delete an event +NewAction=New event +AddAction=Crear evento +AddAnAction=Create an event +AddActionRendezVous=Create a Rendez-vous event +ConfirmDeleteAction=Are you sure you want to delete this event? +CardAction=Event card +ActionOnCompany=Related company +ActionOnContact=Related contact +TaskRDVWith=Meeting with %s +ShowTask=Ver tarefa +ShowAction=Show event +ActionsReport=Events report +ThirdPartiesOfSaleRepresentative=Third parties with sales representative +SaleRepresentativesOfThirdParty=Sales representatives of third party +SalesRepresentative=Sales representative +SalesRepresentatives=Sales representatives +SalesRepresentativeFollowUp=Sales representative (follow-up) +SalesRepresentativeSignature=Sales representative (signature) +NoSalesRepresentativeAffected=No particular sales representative assigned +ShowCustomer=Show customer +ShowProspect=Show prospect +ListOfProspects=List of prospects +ListOfCustomers=List of customers +LastDoneTasks=Latest %s completed actions +LastActionsToDo=Oldest %s not completed actions +DoneAndToDoActions=Completed and To do events +DoneActions=Completed events +ToDoActions=Incomplete events +SendPropalRef=Submission of commercial proposal %s +SendOrderRef=Submission of order %s +StatusNotApplicable=Non aplicable +StatusActionToDo=A realizar +StatusActionDone=Complete +StatusActionInProcess=Expedición en curso +TasksHistoryForThisContact=Events for this contact +LastProspectDoNotContact=Non contactar +LastProspectNeverContacted=Nunca contactado +LastProspectToContact=To contact +LastProspectContactInProcess=Contacto en curso +LastProspectContactDone=Contacto realizado +ActionAffectedTo=Evento asignado a +ActionDoneBy=Event done by +ActionAC_TEL=Phone call +ActionAC_FAX=Send fax +ActionAC_PROP=Send proposal by mail +ActionAC_EMAIL=Send Email +ActionAC_EMAIL_IN=Reception of Email +ActionAC_RDV=Meetings +ActionAC_INT=Intervention on site +ActionAC_FAC=Send customer invoice by mail +ActionAC_REL=Send customer invoice by mail (reminder) +ActionAC_CLO=Pechar +ActionAC_EMAILING=Send mass email +ActionAC_COM=Send sales order by mail +ActionAC_SHIP=Send shipping by mail +ActionAC_SUP_ORD=Send purchase order by mail +ActionAC_SUP_INV=Send vendor invoice by mail +ActionAC_OTH=Outro +ActionAC_OTH_AUTO=Automatically inserted events +ActionAC_MANUAL=Manually inserted events +ActionAC_AUTO=Automatically inserted events +ActionAC_OTH_AUTOShort=Auto +Stats=Sales statistics +StatusProsp=Estado do cliente potencial +DraftPropals=Draft commercial proposals +NoLimit=No limit +ToOfferALinkForOnlineSignature=Link for online signature +WelcomeOnOnlineSignaturePage=Welcome to the page to accept commercial proposals from %s +ThisScreenAllowsYouToSignDocFrom=This screen allow you to accept and sign, or refuse, a quote/commercial proposal +ThisIsInformationOnDocumentToSign=This is information on document to accept or refuse +SignatureProposalRef=Signature of quote/commercial proposal %s +FeatureOnlineSignDisabled=Feature for online signing disabled or document generated before the feature was enabled diff --git a/htdocs/langs/gl_ES/companies.lang b/htdocs/langs/gl_ES/companies.lang new file mode 100644 index 00000000000..c61f543ab32 --- /dev/null +++ b/htdocs/langs/gl_ES/companies.lang @@ -0,0 +1,458 @@ +# Dolibarr language file - Source file is en_US - companies +ErrorCompanyNameAlreadyExists=O nome da empresa %s xa existe. Escolla outro. +ErrorSetACountryFirst=Defina en primeiro lugar o país +SelectThirdParty=Seleccionar un terceiro +ConfirmDeleteCompany=¿Está certo de querer eliminar esta empresa e toda a súa información inmanente? +DeleteContact=Eliminar un contacto/enderezo +ConfirmDeleteContact=¿Está certo de querer eliminar este contacto e toda a información inmanente? +MenuNewThirdParty=Novo terceiro +MenuNewCustomer=Novo cliente +MenuNewProspect=Novo cliente potencial +MenuNewSupplier=Novo provedor +MenuNewPrivateIndividual=Novo particular +NewCompany=Nova empresa (cliente potencial, cliente, provedor) +NewThirdParty=Novo terceiro (cliente potencial, cliente, provedor) +CreateDolibarrThirdPartySupplier=Crear un terceiro (provedor) +CreateThirdPartyOnly=Crear un terceiro +CreateThirdPartyAndContact=Crear un terceiro + un contacto asociado +ProspectionArea=Área de prospección +IdThirdParty=ID terceiro +IdCompany=Id empresa +IdContact=Id contacto +Contacts=Contactos/Enderezos +ThirdPartyContacts=Contactos terceiros +ThirdPartyContact=Contacto terceiro/enderezo +Company=Empresa +CompanyName=Razón social +AliasNames=Apodo (comercial, marca rexistrada, ...) +AliasNameShort=Apodo +Companies=Empresas +CountryIsInEEC=País dentro da Comunidade Económica Europea +PriceFormatInCurrentLanguage=Formato de prezo no idioma actual +ThirdPartyName=Nome do terceiro +ThirdPartyEmail=E-mail do terceiro +ThirdParty=Terceiro +ThirdParties=Terceiros +ThirdPartyProspects=Clientes potenciais +ThirdPartyProspectsStats=Clientes potenciais +ThirdPartyCustomers=Clientes +ThirdPartyCustomersStats=Clientes +ThirdPartyCustomersWithIdProf12=Clientes con %s ó %s +ThirdPartySuppliers=Provedores +ThirdPartyType=Tipo de terceiro +Individual=Particular +ToCreateContactWithSameName=Creará automáticamente un contacto/enderezo coa mesma información que o terceiro noutro terceiro. Na maioría dos casos, aínda que o terceiro sexa una persona física, creando un terciro só é suficiente. +ParentCompany=Sede empresa +Subsidiaries=Filiais +ReportByMonth=Informe por mes +ReportByCustomers=Informe por cliente +ReportByQuarter=Informe por taxa +CivilityCode=Código cortesía +RegisteredOffice=Domicilio social +Lastname=Apelidos +Firstname=Nome +PostOrFunction=Posto de traballo +UserTitle=Título +NatureOfThirdParty=Natureza do terceiro +NatureOfContact=Natureza do contacto +Address=Enderezo +State=Provincia/Estado +StateCode=State/Province code +StateShort=Provincia/Estado +Region=Rexión +Region-State=Rexión - Estado +Country=País +CountryCode=Código país +CountryId=Id país +Phone=Teléfono +PhoneShort=Teléfono +Skype=Skype +Call=Chamar +Chat=Chat +PhonePro=Teléf. traballo +PhonePerso=Teléf. particular +PhoneMobile=Móbil +No_Email=Rexeitar e-mails masivos +Fax=Fax +Zip=Código postal +Town=Poboación +Web=Web +Poste= Posto +DefaultLang=Idioma por defecto +VATIsUsed=Suxeito a IVE +VATIsUsedWhenSelling=Esto define se este terceiro inclúe un imposto á venda ou non cando emite unha factura aos seus propios clientes +VATIsNotUsed=Non suxeito a IVE +CopyAddressFromSoc=Copiar enderezo do detalle do terceiro +ThirdpartyNotCustomerNotSupplierSoNoRef=Terceiro que non é cliente nin provedor, sen obxectos referenciados +ThirdpartyIsNeitherCustomerNorClientSoCannotHaveDiscounts=Terceiro que non é cliente nin provedor, descontos non dispoñibles +PaymentBankAccount=Conta bancaria de pago +OverAllProposals=Orzamentos +OverAllOrders=Pedimentos +OverAllInvoices=Facturas e abonos +OverAllSupplierProposals=Prezo orzamentos +##### Local Taxes ##### +LocalTax1IsUsed=Usar segunda taxa +LocalTax1IsUsedES= Suxeito a RE +LocalTax1IsNotUsedES= Non suxeito a RE +LocalTax2IsUsed=Usar taxa terceiros +LocalTax2IsUsedES= Suxeito a IRPF +LocalTax2IsNotUsedES= Non suxeito a IRPF +WrongCustomerCode=Código cliente incorrecto +WrongSupplierCode=Código provedor incorrecto +CustomerCodeModel=Modelo de código cliente +SupplierCodeModel=Modelo de código provedor +Gencod=Código de barras +##### Professional ID ##### +ProfId1Short=Id Prof 1 +ProfId2Short=Id Prof 2 +ProfId3Short=Id Prof 3 +ProfId4Short=Id Prof 4 +ProfId5Short=Id Prof 5 +ProfId6Short=Id Prof 6 +ProfId1=ID profesional 1 +ProfId2=ID profesional 2 +ProfId3=ID profesional 3 +ProfId4=ID profesional 4 +ProfId5=ID profesional 5 +ProfId6=ID profesional 6 +ProfId1AR=Id Prof 1 (CUIT/CUIL)CUIT/CUIL +ProfId2AR=Id Prof (Ingresos brutos) +ProfId3AR=- +ProfId4AR=- +ProfId5AR=- +ProfId6AR=- +ProfId1AT=Id Prof 1 (USt.-IdNr) +ProfId2AT=Id Prof 2 (USt.-Nr) +ProfId3AT=Id Prof 3 (Handelsregister-Nr.) +ProfId4AT=- +ProfId5AT=- +ProfId6AT=- +ProfId1AU=Id Prof 1 (ABN) +ProfId2AU=- +ProfId3AU=- +ProfId4AU=- +ProfId5AU=- +ProfId6AU=- +ProfId1BE=Id Prof 1 (Número de colexiado) +ProfId2BE=- +ProfId3BE=- +ProfId4BE=- +ProfId5BE=- +ProfId6BE=- +ProfId1BR=- +ProfId2BR=IE (Inscrición Estadual) +ProfId3BR=IM (Inscrición Municipal) +ProfId4BR=CPF +#ProfId5BR=CNAE +#ProfId6BR=INSS +ProfId1CH=- +ProfId2CH=- +ProfId3CH=Id Prof 1 (Número federal) +ProfId4CH=Id Prof 2 (Número de rexistro comercial) +ProfId5CH=- +ProfId6CH=- +ProfId1CL=Id Prof 1 (R.U.T.) +ProfId2CL=- +ProfId3CL=- +ProfId4CL=- +ProfId5CL=- +ProfId6CL=- +ProfId1CO=Id Prof 1 (R.U.T.) +ProfId2CO=- +ProfId3CO=- +ProfId4CO=- +ProfId5CO=- +ProfId6CO=- +ProfId1DE=Id prof. 1 (USt.-IdNr) +ProfId2DE=Id prof. 2 (USt.-Nr) +ProfId3DE=Id prof. 3 (Handelsregister-Nr.) +ProfId4DE=- +ProfId5DE=- +ProfId6DE=- +ProfId1ES=Id Prof 1 (CIF/NIF) +ProfId2ES=Id Prof 2 (Núm. seguridade social) +ProfId3ES=Id Prof 3 (CNAE) +ProfId4ES=Id Prof 4 (Número colexiado) +ProfId5ES=- +ProfId6ES=- +ProfId1FR=Id Prof 1 (SIREN) +ProfId2FR=Id Prof 2 (SIRET) +ProfId3FR=Id Prof 3 (NAF, antigo APE) +ProfId4FR=Id Prof 4 (RCS/RM) +ProfId5FR=- +ProfId6FR=- +ProfId1GB=Número rexistro +ProfId2GB=- +ProfId3GB=SIC +ProfId4GB=- +ProfId5GB=- +ProfId6GB=- +ProfId1HN=Id prof. 1 (RTN) +ProfId2HN=- +ProfId3HN=- +ProfId4HN=- +ProfId5HN=- +ProfId6HN=- +ProfId1IN=Id prof. 1 (TIN) +ProfId2IN=Id prof. 2 (PAN) +ProfId3IN=Id prof. 3 (SRVC TAX) +ProfId4IN=Id prof. 4 +ProfId5IN=Id prof. 5 +ProfId6IN=- +ProfId1LU=Id. prof. 1 (R.C.S. Luxembourg) +ProfId2LU=Id. prof. 2 (Negocios permitidos) +ProfId3LU=- +ProfId4LU=- +ProfId5LU=- +ProfId6LU=- +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=Id. prof. 5 (I.C.E.) +ProfId6MA=- +ProfId1MX=Id prof. 1 (R.F.C.) +ProfId2MX=Id prof. 2 (Rexistro Patroal IMSS) +ProfId3MX=Id prof. 2 (Cédula Profesional) +ProfId4MX=- +ProfId5MX=- +ProfId6MX=- +ProfId1NL=Número KVK +ProfId2NL=- +ProfId3NL=- +ProfId4NL=- +ProfId5NL=- +ProfId6NL=- +ProfId1PT=Id prof. 1 (NIPC) +ProfId2PT=Id prof. 2 (Número seguridade social) +ProfId3PT=Id prof. 3 (Número rexistro comercial) +ProfId4PT=Id prof. 4 (Conservatorio) +ProfId5PT=- +ProfId6PT=- +ProfId1SN=RC +ProfId2SN=NINEA +ProfId3SN=- +ProfId4SN=- +ProfId5SN=- +ProfId6SN=- +ProfId1TN=Id prof. 1 (RC) +ProfId2TN=Id prof. 2 (Matrícula fiscal) +ProfId3TN=Id prof. 3 (Código de aduana) +ProfId4TN=Id prof. 4 (BAN) +ProfId5TN=- +ProfId6TN=- +ProfId1US=Id prof. (FEIN) +ProfId2US=- +ProfId3US=- +ProfId4US=- +ProfId5US=- +ProfId6US=- +ProfId1RO=Prof Id 1 (CUI) +ProfId2RO=Prof Id 2 (Nr. Înmatriculare) +ProfId3RO=Prof Id 3 (CAEN) +ProfId4RO=- +ProfId5RO=Prof Id 5 (EUID) +ProfId6RO=- +ProfId1RU=Id prof. 1 (OGRN) +ProfId2RU=Id prof. 2 (INN) +ProfId3RU=Id prof. 3 (KPP) +ProfId4RU=Id prof. 4 (OKPO) +ProfId5RU=- +ProfId6RU=- +ProfId1DZ=RC +ProfId2DZ=Art. +ProfId3DZ=NIF +ProfId4DZ=NIS +VATIntra=CIF/NIF intracomunitario +VATIntraShort=CIF intra. +VATIntraSyntaxIsValid=Sintaxe é válida +VATReturn=Devolución IVE +ProspectCustomer=Cliente potencial/Cliente +Prospect=Cliente potencial +CustomerCard=Ficha cliente +Customer=Cliente +CustomerRelativeDiscount=Desconto relativo a cliente +SupplierRelativeDiscount=Desconto relativo a provedor +CustomerRelativeDiscountShort=Desconto relativo +CustomerAbsoluteDiscountShort=Desconto fixo +CompanyHasRelativeDiscount=Este cliente ten un desconto por defecto de %s%% +CompanyHasNoRelativeDiscount=Este cliente non ten descontos relativos por defecto +HasRelativeDiscountFromSupplier=Ten un desconto predeterminado de %s%% neste provedor +HasNoRelativeDiscountFromSupplier=Non ten desconto relativo predeterminado neste provedor +CompanyHasAbsoluteDiscount=Este cliente ten descontos (abonos ou anticipos) dispoñibles para %s %s +CompanyHasDownPaymentOrCommercialDiscount=Este cliente ten descontos dispoñibles (anticipos, comerciais) para %s %s +CompanyHasCreditNote=Este cliente ten anticipos dispoñibles en %s %s +HasNoAbsoluteDiscountFromSupplier=Non ten ningún crédito de desconto dispoñible neste provedor +HasAbsoluteDiscountFromSupplier=Ten descontos dispoñibles (notas de créditos ou anticipos) para %s %s deste provedor +HasDownPaymentOrCommercialDiscountFromSupplier=Ten descontos dispoñibles (comerciais, anticipos) para %s %s deste provedor +HasCreditNoteFromSupplier=Ten abonos para %s %s deste provedor +CompanyHasNoAbsoluteDiscount=Este cliente non ten mais descontos fixos dispoñibles +CustomerAbsoluteDiscountAllUsers=Descontos fixos a clientes (acordado por todos os usuarios) +CustomerAbsoluteDiscountMy=Descontos fixos a clientes (acordados persoalmente) +SupplierAbsoluteDiscountAllUsers=Descontos fixos de provedores (acordado por todos os usuarios) +SupplierAbsoluteDiscountMy=Descontos fixos de provedores (acordados persoalmente) +DiscountNone=Ningún +Vendor=Vendedor +Supplier=Provedor +AddContact=Crear contacto +AddContactAddress=Crear contacto/enderezo +EditContact=Editar contacto +EditContactAddress=Editar contacto/enderezo +Contact=Contacto +ContactId=Id contacto +ContactsAddresses=Contactos/Enderezos +FromContactName=Nome: +NoContactDefinedForThirdParty=Ningún contacto definido para este terceiro +NoContactDefined=Ningún contacto definido +DefaultContact=Contacto por defecto +ContactByDefaultFor=Contacto/Enderezo por defecto +AddThirdParty=Crear terceiro +DeleteACompany=Eliminar unha empresa +PersonalInformations=Información persoal +AccountancyCode=Conta contable +CustomerCode=Código cliente +SupplierCode=Código provedor +CustomerCodeShort=Código cliente +SupplierCodeShort=Código provedor +CustomerCodeDesc=Código cliente, único para todos os clientes +SupplierCodeDesc=Código provedor, único para todos os provedores +RequiredIfCustomer=Requerido se o terceiro é un cliente ou cliente potencial +RequiredIfSupplier=Requerido se o terceiro é un provedor +ValidityControledByModule=Validación controlada polo módulo +ThisIsModuleRules=Regras para este módulo. +ProspectToContact=Cliente potencial a contactar +CompanyDeleted=A empresa "%s" foi eliminada +ListOfContacts=Listaxe de contactos +ListOfContactsAddresses=Listaxe de contactos/enderezos +ListOfThirdParties=Listaxe de terceiros +ShowCompany=Third Party +ShowContact=Contact-Address +ContactsAllShort=Todos (sen filtro) +ContactType=Tipo de contacto +ContactForOrders=Contacto de pedimentos +ContactForOrdersOrShipments=Contacto de pedimentos ou envíos +ContactForProposals=Contacto de orzamentos +ContactForContracts=Contacto de contratos +ContactForInvoices=Contacto de facturas +NoContactForAnyOrder=Este contacto non é contacto de ningún pedimento +NoContactForAnyOrderOrShipments=Este contacto non é contacto de ningún pedimento o envío +NoContactForAnyProposal=Este contacto non é contacto de ningún orzamento +NoContactForAnyContract=Este contacto non é contacto de ningún contrato +NoContactForAnyInvoice=Este contacto non é contacto de ningunha factura +NewContact=Novo contacto +NewContactAddress=Novo Contacto/Enderezo +MyContacts=Meus contactos +Capital=Capital +CapitalOf=Capital de %s +EditCompany=Modificar empresa +ThisUserIsNot=This user is not a prospect, customer or vendor +VATIntraCheck=Verificar +VATIntraCheckDesc=El enlace %s permite consultar no servizo europeo de control de números de IVE intracomunitario (VIES). Requírese acceso a internet dende o servidor Dolibarr para o servizo. +VATIntraCheckURL=http://ec.europa.eu/taxation_customs/vies/vieshome.do +VATIntraCheckableOnEUSite=Verificar o CIF/NIF intracomunitario na web da Comisión Europea +VATIntraManualCheck=Pode tamén verificar manualmente na web da Comisión Europea %s +ErrorVATCheckMS_UNAVAILABLE=Comprobación imposible. O servizo de comprobación non é fornecido polo Estado membro (%s). +NorProspectNorCustomer=Nin cliente, nin cliente potencial +JuridicalStatus=Forma xurídica +Staff=Empregados +ProspectLevelShort=Potencial +ProspectLevel=Cliente potencial +ContactPrivate=Privado +ContactPublic=Compartido +ContactVisibility=Visibilidade +ContactOthers=Outro +OthersNotLinkedToThirdParty=Outros, non vinculados a un terceiro +ProspectStatus=Estado do cliente potencial +PL_NONE=Ningún +PL_UNKNOWN=Descoñecido +PL_LOW=Baixo +PL_MEDIUM=Medio +PL_HIGH=Alto +TE_UNKNOWN=- +TE_STARTUP=Startup +TE_GROUP=Gran empresa +TE_MEDIUM=PYME +TE_ADMIN=Administración +TE_SMALL=PYME +TE_RETAIL=Minorista +TE_WHOLE=Maiorista +TE_PRIVATE=Particular +TE_OTHER=Outro +StatusProspect-1=Non contactar +StatusProspect0=Nunca contactado +StatusProspect1=A contactar +StatusProspect2=Contacto en curso +StatusProspect3=Contacto realizado +ChangeDoNotContact=Cambiar o estado a 'Non contactar' +ChangeNeverContacted=Cambiar o estado a 'Nunca contactado' +ChangeToContact=Cambiar o estado a 'A contactar' +ChangeContactInProcess=Cambiar o estado a 'Contacto en curso' +ChangeContactDone=Cambiar o estado a 'Contacto realizado' +ProspectsByStatus=Clientes potenciais por estado +NoParentCompany=Ningunha +ExportCardToFormat=Exportar ficha a formato +ContactNotLinkedToCompany=Contacto non vinculado a un terceiro +DolibarrLogin=Login no Dolibarr +NoDolibarrAccess=Sen acceso a Dolibarr +ExportDataset_company_1=Terceiros (Empresas / fundacións / particulares) e as súas propiedades +ExportDataset_company_2=Contactos e as súas propiedades +ImportDataset_company_1=Terceiros e as súas propiedades +ImportDataset_company_2=Contactos/Enderezos e atributos de terceiros +ImportDataset_company_3=Contas bancarias de terceiros +ImportDataset_company_4=Comerciais de Terceiros (Asigna comerciais/usuarios a empresas) +PriceLevel=Nivel de prezos +PriceLevelLabels=Etiquetas de nivel de prezos +DeliveryAddress=Enderezo de envío +AddAddress=Engadir enderezo +SupplierCategory=Categoría de provedor +JuridicalStatus200=Independente +DeleteFile=Eliminación dun arquivo +ConfirmDeleteFile=¿Está certo de querer eliminar este arquivo? +AllocateCommercial=Asignado a comercial +Organization=Organización +FiscalYearInformation=Ano fiscal +FiscalMonthStart=Mes de inicio do ano fiscal +SocialNetworksInformation=Social networks +SocialNetworksFacebookURL=Facebook URL +SocialNetworksTwitterURL=Twitter URL +SocialNetworksLinkedinURL=Linkedin URL +SocialNetworksInstagramURL=Instagram URL +SocialNetworksYoutubeURL=Youtube URL +SocialNetworksGithubURL=Github URL +YouMustAssignUserMailFirst=Primeiro tes que asignar un e-mail para este usuario para poder engadilo en notificaciónss de e-mail. +YouMustCreateContactFirst=Para poder engadir notificaciones por e-mail, primeiro tes que definir contactos con e-mails válidos para terceiros +ListSuppliersShort=Listaxe de provedores +ListProspectsShort=Listaxe de clientes potenciais +ListCustomersShort=Listaxe de clientes +ThirdPartiesArea=Área de Terceiros/Contactos +LastModifiedThirdParties=Últimos %s terceiros modificados +UniqueThirdParties=Total de terceiros únicos +InActivity=Activo +ActivityCeased=Pechada +ThirdPartyIsClosed=O terceiro está pechado +ProductsIntoElements=Listaxe de produtos/servizos en %s +CurrentOutstandingBill=Risco alcanzado +OutstandingBill=Importe máximo para facturas pendentes +OutstandingBillReached=Importe máximo para facturas pendentes +OrderMinAmount=Importe mínimo para pedimento +MonkeyNumRefModelDesc=Devolve un número co formato %syymm-nnnn para os códigos de clientes e %syymm-nnnn para os códigos dos provedores, onde yy é o ano, mm é o mes e nnnn é unha secuencia sen ruptura e sen voltar a 0. +LeopardNumRefModelDesc=Código libre. Pode ser modificado en calquera momento. +ManagingDirectors=Administrador(es) (CEO, director, presidente, etc.) +MergeOriginThirdparty=Terceiro duplicado (terceiro a eliminar) +MergeThirdparties=Fusionar terceiros +ConfirmMergeThirdparties=¿Está certo de querer fusionar este terceiro co actual? Todos os obxectos relacionados (facturas, pedimentos, ..) moveranse ao terceiro actual, e o terceiro será eliminado. +ThirdpartiesMergeSuccess=Os terceiros foron fusionados +SaleRepresentativeLogin=Inicio de sesión do comercial +SaleRepresentativeFirstname=Nome do comercial +SaleRepresentativeLastname=Apelidos do comercial +ErrorThirdpartiesMerge=Aconteceu un erro a eliminar os terceiros. Pregase comprobe o log. Os cambios foron anulados. +NewCustomerSupplierCodeProposed=Código de cliente ou provedor xa usado, un novo código é suxerido +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address +#Imports +PaymentTypeCustomer=Tipo de pago - Cliente +PaymentTermsCustomer=Termos de pago - Cliente +PaymentTypeSupplier=Tipo de pago - Provedor +PaymentTermsSupplier=Termos de pago - Provedor +PaymentTypeBoth=Payment Type - Customer and Vendor +MulticurrencyUsed=Use MultiMoeda +MulticurrencyCurrency=Moeda diff --git a/htdocs/langs/gl_ES/compta.lang b/htdocs/langs/gl_ES/compta.lang new file mode 100644 index 00000000000..dad8d434561 --- /dev/null +++ b/htdocs/langs/gl_ES/compta.lang @@ -0,0 +1,266 @@ +# Dolibarr language file - Source file is en_US - compta +MenuFinancial=Billing | Payment +TaxModuleSetupToModifyRules=Go to Taxes module setup to modify rules for calculation +TaxModuleSetupToModifyRulesLT=Go to Company setup to modify rules for calculation +OptionMode=Option for accountancy +OptionModeTrue=Option Incomes-Expenses +OptionModeVirtual=Option Claims-Debts +OptionModeTrueDesc=In this context, the turnover is calculated over payments (date of payments). The validity of the figures is assured only if the book-keeping is scrutinized through the input/output on the accounts via invoices. +OptionModeVirtualDesc=In this context, the turnover is calculated over invoices (date of validation). When these invoices are due, whether they have been paid or not, they are listed in the turnover output. +FeatureIsSupportedInInOutModeOnly=Feature only available in CREDITS-DEBTS accountancy mode (See Accountancy module configuration) +VATReportBuildWithOptionDefinedInModule=Amounts shown here are calculated using rules defined by Tax module setup. +LTReportBuildWithOptionDefinedInModule=Amounts shown here are calculated using rules defined by Company setup. +Param=Config. +RemainingAmountPayment=Amount payment remaining: +Account=Conta +Accountparent=Parent account +Accountsparent=Parent accounts +Income=Income +Outcome=Expense +MenuReportInOut=Income / Expense +ReportInOut=Balance of income and expenses +ReportTurnover=Turnover invoiced +ReportTurnoverCollected=Turnover collected +PaymentsNotLinkedToInvoice=Payments not linked to any invoice, so not linked to any third party +PaymentsNotLinkedToUser=Payments not linked to any user +Profit=Profit +AccountingResult=Accounting result +BalanceBefore=Balance (before) +Balance=Saldo +Debit=Debit +Credit=Credit +Piece=Accounting Doc. +AmountHTVATRealReceived=Net collected +AmountHTVATRealPaid=Net paid +VATToPay=Tax sales +VATReceived=Tax received +VATToCollect=Tax purchases +VATSummary=Tax monthly +VATBalance=Tax Balance +VATPaid=Tax paid +LT1Summary=Tax 2 summary +LT2Summary=Tax 3 summary +LT1SummaryES=RE Balance +LT2SummaryES=IRPF Balance +LT1SummaryIN=CGST Balance +LT2SummaryIN=SGST Balance +LT1Paid=Tax 2 paid +LT2Paid=Tax 3 paid +LT1PaidES=RE Paid +LT2PaidES=IRPF Paid +LT1PaidIN=CGST Paid +LT2PaidIN=SGST Paid +LT1Customer=Tax 2 sales +LT1Supplier=Tax 2 purchases +LT1CustomerES=RE sales +LT1SupplierES=RE purchases +LT1CustomerIN=CGST sales +LT1SupplierIN=CGST purchases +LT2Customer=Tax 3 sales +LT2Supplier=Tax 3 purchases +LT2CustomerES=IRPF sales +LT2SupplierES=IRPF purchases +LT2CustomerIN=SGST sales +LT2SupplierIN=SGST purchases +VATCollected=VAT collected +StatusToPay=To pay +SpecialExpensesArea=Area for all special payments +SocialContribution=Social or fiscal tax +SocialContributions=Social or fiscal taxes +SocialContributionsDeductibles=Deductible social or fiscal taxes +SocialContributionsNondeductibles=Nondeductible social or fiscal taxes +LabelContrib=Label contribution +TypeContrib=Type contribution +MenuSpecialExpenses=Special expenses +MenuTaxAndDividends=Taxes and dividends +MenuSocialContributions=Social/fiscal taxes +MenuNewSocialContribution=New social/fiscal tax +NewSocialContribution=New social/fiscal tax +AddSocialContribution=Add social/fiscal tax +ContributionsToPay=Social/fiscal taxes to pay +AccountancyTreasuryArea=Billing and payment area +NewPayment=New payment +PaymentCustomerInvoice=Customer invoice payment +PaymentSupplierInvoice=vendor invoice payment +PaymentSocialContribution=Pago de imposto social/fiscal +PaymentVat=VAT payment +ListPayment=List of payments +ListOfCustomerPayments=List of customer payments +ListOfSupplierPayments=List of vendor payments +DateStartPeriod=Date start period +DateEndPeriod=Date end period +newLT1Payment=New tax 2 payment +newLT2Payment=New tax 3 payment +LT1Payment=Tax 2 payment +LT1Payments=Tax 2 payments +LT2Payment=Tax 3 payment +LT2Payments=Tax 3 payments +newLT1PaymentES=New RE payment +newLT2PaymentES=New IRPF payment +LT1PaymentES=RE Payment +LT1PaymentsES=RE Payments +LT2PaymentES=IRPF Payment +LT2PaymentsES=IRPF Payments +VATPayment=Sales tax payment +VATPayments=Sales tax payments +VATRefund=Sales tax refund +NewVATPayment=New sales tax payment +NewLocalTaxPayment=New tax %s payment +Refund=Refund +SocialContributionsPayments=Social/fiscal taxes payments +ShowVatPayment=Show VAT payment +TotalToPay=Total to pay +BalanceVisibilityDependsOnSortAndFilters=Balance is visible in this list only if table is sorted ascending on %s and filtered for 1 bank account +CustomerAccountancyCode=Customer accounting code +SupplierAccountancyCode=Vendor accounting code +CustomerAccountancyCodeShort=Cust. account. code +SupplierAccountancyCodeShort=Sup. account. code +AccountNumber=Account number +NewAccountingAccount=Nova conta +Turnover=Turnover invoiced +TurnoverCollected=Turnover collected +SalesTurnoverMinimum=Minimum turnover +ByExpenseIncome=By expenses & incomes +ByThirdParties=Por terceiros +ByUserAuthorOfInvoice=By invoice author +CheckReceipt=Check deposit +CheckReceiptShort=Check deposit +LastCheckReceiptShort=Latest %s check receipts +NewCheckReceipt=New discount +NewCheckDeposit=New check deposit +NewCheckDepositOn=Create receipt for deposit on account: %s +NoWaitingChecks=No checks awaiting deposit. +DateChequeReceived=Check reception date +NbOfCheques=No. of checks +PaySocialContribution=Pay a social/fiscal tax +ConfirmPaySocialContribution=Are you sure you want to classify this social or fiscal tax as paid? +DeleteSocialContribution=Delete a social or fiscal tax payment +ConfirmDeleteSocialContribution=Are you sure you want to delete this social/fiscal tax payment? +ExportDataset_tax_1=Social and fiscal taxes and payments +CalcModeVATDebt=Mode %sVAT on commitment accounting%s. +CalcModeVATEngagement=Mode %sVAT on incomes-expenses%s. +CalcModeDebt=Analysis of known recorded invoices even if they are not yet accounted in ledger. +CalcModeEngagement=Analysis of known recorded payments, even if they are not yet accounted in Ledger. +CalcModeBookkeeping=Analysis of data journalized in Bookkeeping Ledger table. +CalcModeLT1= Mode %sRE on customer invoices - suppliers invoices%s +CalcModeLT1Debt=Mode %sRE on customer invoices%s +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=Balance of income and expenses, annual summary +AnnualSummaryInputOutputMode=Balance of income and expenses, annual summary +AnnualByCompanies=Balance of income and expenses, by predefined groups of account +AnnualByCompaniesDueDebtMode=Balance of income and expenses, detail by predefined groups, mode %sClaims-Debts%s said Commitment accounting. +AnnualByCompaniesInputOutputMode=Balance of income and expenses, detail by predefined groups, mode %sIncomes-Expenses%s said cash accounting. +SeeReportInInputOutputMode=See %sanalysis of payments%s for a calculation on actual payments made even if they are not yet accounted in Ledger. +SeeReportInDueDebtMode=See %sanalysis of invoices%s for a calculation based on known recorded invoices even if they are not yet accounted in Ledger. +SeeReportInBookkeepingMode=See %sBookeeping report%s for a calculation on Bookkeeping Ledger table +RulesAmountWithTaxIncluded=- Amounts shown are with all taxes included +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. +RulesResultInOut=- It includes the real payments made on invoices, expenses, VAT and salaries.
    - It is based on the payment dates of the invoices, expenses, VAT and salaries. The donation date for donation. +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    +RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    +RulesCATotalSaleJournal=It includes all credit lines from the Sale journal. +RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" +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 +DepositsAreIncluded=- Down payment invoices are included +LT1ReportByCustomers=Report tax 2 by third party +LT2ReportByCustomers=Report tax 3 by third party +LT1ReportByCustomersES=Report by third party RE +LT2ReportByCustomersES=Report by third party IRPF +VATReport=Sale tax report +VATReportByPeriods=Sale tax report by period +VATReportByRates=Sale tax report by rates +VATReportByThirdParties=Sale tax report by third parties +VATReportByCustomers=Sale tax report by customer +VATReportByCustomersInInputOutputMode=Report by the customer VAT collected and paid +VATReportByQuartersInInputOutputMode=Report by Sale tax rate of the tax collected and paid +LT1ReportByQuarters=Report tax 2 by rate +LT2ReportByQuarters=Report tax 3 by rate +LT1ReportByQuartersES=Report by RE rate +LT2ReportByQuartersES=Report by IRPF rate +SeeVATReportInInputOutputMode=See report %sVAT encasement%s for a standard calculation +SeeVATReportInDueDebtMode=See report %sVAT on flow%s for a calculation with an option on the flow +RulesVATInServices=- For services, the report includes the VAT regulations actually received or issued on the basis of the date of payment. +RulesVATInProducts=- For material assets, the report includes the VAT received or issued on the basis of the date of payment. +RulesVATDueServices=- For services, the report includes VAT invoices due, paid or not, based on the invoice date. +RulesVATDueProducts=- For material assets, the report includes the VAT invoices, based on the invoice date. +OptionVatInfoModuleComptabilite=Note: For material assets, it should use the date of delivery to be more fair. +ThisIsAnEstimatedValue=This is a preview, based on business events and not from the final ledger table, so final results may differ from this preview values +PercentOfInvoice=%%/invoice +NotUsedForGoods=Not used on goods +ProposalStats=Statistics on proposals +OrderStats=Statistics on orders +InvoiceStats=Statistics on bills +Dispatch=Dispatching +Dispatched=Dispatched +ToDispatch=To dispatch +ThirdPartyMustBeEditAsCustomer=Third party must be defined as a customer +SellsJournal=Sales Journal +PurchasesJournal=Purchases Journal +DescSellsJournal=Sales Journal +DescPurchasesJournal=Purchases Journal +CodeNotDef=Non definido +WarningDepositsNotIncluded=Down payment invoices are not included in this version with this accountancy module. +DatePaymentTermCantBeLowerThanObjectDate=Payment term date can't be lower than object date. +Pcg_version=Chart of accounts models +Pcg_type=Pcg type +Pcg_subtype=Pcg subtype +InvoiceLinesToDispatch=Invoice lines to dispatch +ByProductsAndServices=By product and service +RefExt=External ref +ToCreateAPredefinedInvoice=To create a template invoice, create a standard invoice, then, without validating it, click onto button "%s". +LinkedOrder=Vincular a pedido +Mode1=Method 1 +Mode2=Method 2 +CalculationRuleDesc=To calculate total VAT, there is two methods:
    Method 1 is rounding vat on each line, then summing them.
    Method 2 is summing all vat on each line, then rounding result.
    Final result may differs from few cents. Default mode is mode %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. +CalculationMode=Calculation mode +AccountancyJournal=Accounting code journal +ACCOUNTING_VAT_SOLD_ACCOUNT=Accounting account by default for VAT on sales (used if not defined on VAT dictionary setup) +ACCOUNTING_VAT_BUY_ACCOUNT=Accounting account by default for VAT on purchases (used if not defined on VAT dictionary setup) +ACCOUNTING_VAT_PAY_ACCOUNT=Accounting account by default for paying VAT +ACCOUNTING_ACCOUNT_CUSTOMER=Accounting account used for customer third parties +ACCOUNTING_ACCOUNT_CUSTOMER_Desc=The dedicated accounting account defined on third party card will be used for Subledger accounting only. This one will be used for General Ledger and as default value of Subledger accounting if dedicated customer accounting account on third party is not defined. +ACCOUNTING_ACCOUNT_SUPPLIER=Accounting account used for vendor third parties +ACCOUNTING_ACCOUNT_SUPPLIER_Desc=The dedicated accounting account defined on third party card will be used for Subledger accounting only. This one will be used for General Ledger and as default value of Subledger accounting if dedicated vendor accounting account on third party is not defined. +ConfirmCloneTax=Confirm the clone of a social/fiscal tax +CloneTaxForNextMonth=Clone it for next month +SimpleReport=Simple report +AddExtraReport=Extra reports (add foreign and national customer report) +OtherCountriesCustomersReport=Foreign customers report +BasedOnTwoFirstLettersOfVATNumberBeingDifferentFromYourCompanyCountry=Based on the two first letters of the VAT number being different from your own company's country code +SameCountryCustomersWithVAT=National customers report +BasedOnTwoFirstLettersOfVATNumberBeingTheSameAsYourCompanyCountry=Based on the two first letters of the VAT number being the same as your own company's country code +LinkedFichinter=Link to an intervention +ImportDataset_tax_contrib=Social/fiscal taxes +ImportDataset_tax_vat=Vat payments +ErrorBankAccountNotFound=Error: Bank account not found +FiscalPeriod=Accounting period +ListSocialContributionAssociatedProject=List of social contributions associated with the project +DeleteFromCat=Remove from accounting group +AccountingAffectation=Accounting assignment +LastDayTaxIsRelatedTo=Last day of period the tax is related to +VATDue=Sale tax claimed +ClaimedForThisPeriod=Claimed for the period +PaidDuringThisPeriod=Paid during this period +ByVatRate=By sale tax rate +TurnoverbyVatrate=Turnover invoiced by sale tax rate +TurnoverCollectedbyVatrate=Turnover collected by sale tax rate +PurchasebyVatrate=Purchase by sale tax rate +LabelToShow=Etiqueta curta +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected +IncludeVarpaysInResults = Include various payments in reports +IncludeLoansInResults = Include loans in reports diff --git a/htdocs/langs/gl_ES/contracts.lang b/htdocs/langs/gl_ES/contracts.lang new file mode 100644 index 00000000000..91d06661e8f --- /dev/null +++ b/htdocs/langs/gl_ES/contracts.lang @@ -0,0 +1,101 @@ +# Dolibarr language file - Source file is en_US - contracts +ContractsArea=Contracts area +ListOfContracts=List of contracts +AllContracts=All contracts +ContractCard=Contract card +ContractStatusNotRunning=Not running +ContractStatusDraft=Borrador +ContractStatusValidated=Validado +ContractStatusClosed=Pechada +ServiceStatusInitial=Not running +ServiceStatusRunning=Running +ServiceStatusNotLate=Running, not expired +ServiceStatusNotLateShort=Not expired +ServiceStatusLate=Running, expired +ServiceStatusLateShort=Expired +ServiceStatusClosed=Pechada +ShowContractOfService=Show contract of service +Contracts=Contratos +ContractsSubscriptions=Contratos/Suscricións +ContractsAndLine=Contracts and line of contracts +Contract=Contract +ContractLine=Contract line +Closing=Closing +NoContracts=No contracts +MenuServices=Servizos +MenuInactiveServices=Services not active +MenuRunningServices=Running services +MenuExpiredServices=Expired services +MenuClosedServices=Closed services +NewContract=New contract +NewContractSubscription=New contract/subscription +AddContract=Create contract +DeleteAContract=Delete a contract +ActivateAllOnContract=Activate all services +CloseAContract=Close a contract +ConfirmDeleteAContract=Are you sure you want to delete this contract and all its services? +ConfirmValidateContract=Are you sure you want to validate this contract under name %s? +ConfirmActivateAllOnContract=This will open all services (not yet active). Are you sure you want to open all services? +ConfirmCloseContract=This will close all services (active or not). Are you sure you want to close this contract? +ConfirmCloseService=Are you sure you want to close this service with date %s? +ValidateAContract=Validate a contract +ActivateService=Activate service +ConfirmActivateService=Are you sure you want to activate this service with date %s? +RefContract=Contract reference +DateContract=Contract date +DateServiceActivate=Service activation date +ListOfServices=List of services +ListOfInactiveServices=List of not active services +ListOfExpiredServices=List of expired active services +ListOfClosedServices=List of closed services +ListOfRunningServices=List of running services +NotActivatedServices=Inactive services (among validated contracts) +BoardNotActivatedServices=Services to activate among validated contracts +BoardNotActivatedServicesShort=Services to activate +LastContracts=Latest %s contracts +LastModifiedServices=Latest %s modified services +ContractStartDate=Data de inicio +ContractEndDate=Data de fin +DateStartPlanned=Planned start date +DateStartPlannedShort=Planned start date +DateEndPlanned=Planned end date +DateEndPlannedShort=Planned end date +DateStartReal=Real start date +DateStartRealShort=Real start date +DateEndReal=Real end date +DateEndRealShort=Real end date +CloseService=Close service +BoardRunningServices=Services running +BoardRunningServicesShort=Services running +BoardExpiredServices=Services expired +BoardExpiredServicesShort=Services expired +ServiceStatus=Status of service +DraftContracts=Drafts contracts +CloseRefusedBecauseOneServiceActive=Contract can't be closed as there is at least one open service on it +ActivateAllContracts=Activate all contract lines +CloseAllContracts=Close all contract lines +DeleteContractLine=Delete a contract line +ConfirmDeleteContractLine=Are you sure you want to delete this contract line? +MoveToAnotherContract=Move service into another contract. +ConfirmMoveToAnotherContract=I choosed new target contract and confirm I want to move this service into this contract. +ConfirmMoveToAnotherContractQuestion=Choose in which existing contract (of same third party), you want to move this service to? +PaymentRenewContractId=Renew contract line (number %s) +ExpiredSince=Expiration date +NoExpiredServices=No expired active services +ListOfServicesToExpireWithDuration=List of Services to expire in %s days +ListOfServicesToExpireWithDurationNeg=List of Services expired from more than %s days +ListOfServicesToExpire=List of Services to expire +NoteListOfYourExpiredServices=This list contains only services of contracts for third parties you are linked to as a sale representative. +StandardContractsTemplate=Standard contracts template +ContactNameAndSignature=For %s, name and signature: +OnlyLinesWithTypeServiceAreUsed=Only lines with type "Service" will be cloned. +ConfirmCloneContract=Are you sure you want to clone the contract %s? +LowerDateEndPlannedShort=Lower planned end date of active services +SendContractRef=Contract information __REF__ +OtherContracts=Other contracts +##### Types de contacts ##### +TypeContact_contrat_internal_SALESREPSIGN=Sales representative signing contract +TypeContact_contrat_internal_SALESREPFOLL=Sales representative following-up contract +TypeContact_contrat_external_BILLING=Billing customer contact +TypeContact_contrat_external_CUSTOMER=Follow-up customer contact +TypeContact_contrat_external_SALESREPSIGN=Signing contract customer contact diff --git a/htdocs/langs/gl_ES/cron.lang b/htdocs/langs/gl_ES/cron.lang new file mode 100644 index 00000000000..0d13a042fbc --- /dev/null +++ b/htdocs/langs/gl_ES/cron.lang @@ -0,0 +1,84 @@ +# Dolibarr language file - Source file is en_US - cron +# About page +# Right +Permission23101 = Read Scheduled job +Permission23102 = Create/update Scheduled job +Permission23103 = Delete Scheduled job +Permission23104 = Execute Scheduled job +# Admin +CronSetup=Scheduled job management setup +URLToLaunchCronJobs=URL to check and launch qualified cron jobs +OrToLaunchASpecificJob=Or to check and launch a specific job +KeyForCronAccess=Security key for URL to launch cron jobs +FileToLaunchCronJobs=Command line to check and launch qualified cron jobs +CronExplainHowToRunUnix=On Unix environment you should use the following crontab entry to run the command line each 5 minutes +CronExplainHowToRunWin=On Microsoft(tm) Windows environment you can use Scheduled Task tools to run the command line each 5 minutes +CronMethodDoesNotExists=Class %s does not contains any method %s +CronJobDefDesc=Cron job profiles are defined into the module descriptor file. When module is activated, they are loaded and available so you can administer the jobs from the admin tools menu %s. +CronJobProfiles=List of predefined cron job profiles +# Menu +EnabledAndDisabled=Enabled and disabled +# Page list +CronLastOutput=Latest run output +CronLastResult=Latest result code +CronCommand=Command +CronList=Scheduled jobs +CronDelete=Delete scheduled jobs +CronConfirmDelete=Are you sure you want to delete these scheduled jobs? +CronExecute=Launch scheduled job +CronConfirmExecute=Are you sure you want to execute these scheduled jobs now? +CronInfo=Scheduled job module allows to schedule jobs to execute them automatically. Jobs can also be started manually. +CronTask=Job +CronNone=Ningún +CronDtStart=Not before +CronDtEnd=Not after +CronDtNextLaunch=Next execution +CronDtLastLaunch=Start date of latest execution +CronDtLastResult=End date of latest execution +CronFrequency=Frecuencia +CronClass=Class +CronMethod=Método +CronModule=Module +CronNoJobs=No jobs registered +CronPriority=Prioridade +CronLabel=Etiqueta +CronNbRun=Number of launches +CronMaxRun=Maximum number of launches +CronEach=Every +JobFinished=Job launched and finished +#Page card +CronAdd= Add jobs +CronEvery=Execute job each +CronObject=Instance/Object to create +CronArgs=Parámetros +CronSaveSucess=Save successfully +CronNote=Comentario +CronFieldMandatory=Fields %s is mandatory +CronErrEndDateStartDt=End date cannot be before start date +StatusAtInstall=Status at module installation +CronStatusActiveBtn=Activo +CronStatusInactiveBtn=Desactivar +CronTaskInactive=This job is disabled +CronId=Id +CronClassFile=Filename with class +CronModuleHelp=Name of Dolibarr module directory (also work with external Dolibarr module).
    For example to call the fetch method of Dolibarr Product object /htdocs/product/class/product.class.php, the value for module is
    product +CronClassFileHelp=The relative path and file name to load (path is relative to web server root directory).
    For example to call the fetch method of Dolibarr Product object htdocs/product/class/product.class.php, the value for class file name is
    product/class/product.class.php +CronObjectHelp=The object name to load.
    For example to call the fetch method of Dolibarr Product object /htdocs/product/class/product.class.php, the value for class file name is
    Product +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=The system command line to execute. +CronCreateJob=Create new Scheduled Job +CronFrom=De +# Info +# Common +CronType=Job type +CronType_method=Call method of a PHP Class +CronType_command=Shell command +CronCannotLoadClass=Cannot load class file %s (to use class %s) +CronCannotLoadObject=Class file %s was loaded, but object %s was not found into it +UseMenuModuleToolsToAddCronJobs=Go into menu "Home - Admin tools - Scheduled jobs" to see and edit scheduled jobs. +JobDisabled=Job disabled +MakeLocalDatabaseDumpShort=Local database backup +MakeLocalDatabaseDump=Create a local database dump. Parameters are: compression ('gz' or 'bz' or 'none'), backup type ('mysql', 'pgsql', 'auto'), 1, 'auto' or filename to build, number of backup files to keep +WarningCronDelayed=Attention, for performance purpose, whatever is next date of execution of enabled jobs, your jobs may be delayed to a maximum of %s hours, before being run. +DATAPOLICYJob=Data cleaner and anonymizer diff --git a/htdocs/langs/gl_ES/deliveries.lang b/htdocs/langs/gl_ES/deliveries.lang new file mode 100644 index 00000000000..f97f863389b --- /dev/null +++ b/htdocs/langs/gl_ES/deliveries.lang @@ -0,0 +1,31 @@ +# Dolibarr language file - Source file is en_US - deliveries +Delivery=Delivery +DeliveryRef=Ref Delivery +DeliveryCard=Receipt card +DeliveryOrder=Delivery receipt +DeliveryDate=Delivery date +CreateDeliveryOrder=Generate delivery receipt +DeliveryStateSaved=Delivery state saved +SetDeliveryDate=Set shipping date +ValidateDeliveryReceipt=Validate delivery receipt +ValidateDeliveryReceiptConfirm=Are you sure you want to validate this delivery receipt? +DeleteDeliveryReceipt=Delete delivery receipt +DeleteDeliveryReceiptConfirm=Are you sure you want to delete delivery receipt %s? +DeliveryMethod=Delivery method +TrackingNumber=Tracking number +DeliveryNotValidated=Delivery not validated +StatusDeliveryCanceled=Anulado +StatusDeliveryDraft=Borrador +StatusDeliveryValidated=Recibido +# merou PDF model +NameAndSignature=Name and Signature: +ToAndDate=To___________________________________ on ____/_____/__________ +GoodStatusDeclaration=Have received the goods above in good condition, +Deliverer=Deliverer: +Sender=Remitente +Recipient=Recipient +ErrorStockIsNotEnough=There's not enough stock +Shippable=Shippable +NonShippable=Not Shippable +ShowReceiving=Show delivery receipt +NonExistentOrder=Nonexistent order diff --git a/htdocs/langs/gl_ES/dict.lang b/htdocs/langs/gl_ES/dict.lang new file mode 100644 index 00000000000..ec315d97142 --- /dev/null +++ b/htdocs/langs/gl_ES/dict.lang @@ -0,0 +1,359 @@ +# Dolibarr language file - Source file is en_US - dict +CountryFR=France +CountryBE=Belgium +CountryIT=Italy +CountryES=Spain +CountryDE=Germany +CountryCH=Switzerland +# Warning, country code GB is for United Kingdom. UK Does not exists as country code in ISO standard. +CountryGB=United Kingdom +CountryUK=United Kingdom +CountryIE=Ireland +CountryCN=China +CountryTN=Tunisia +CountryUS=United States +CountryMA=Morocco +CountryDZ=Algeria +CountryCA=Canada +CountryTG=Togo +CountryGA=Gabon +CountryNL=Netherlands +CountryHU=Hungary +CountryRU=Russia +CountrySE=Sweden +CountryCI=Ivoiry Coast +CountrySN=Senegal +CountryAR=Argentina +CountryCM=Cameroon +CountryPT=Portugal +CountrySA=Saudi Arabia +CountryMC=Monaco +CountryAU=Australia +CountrySG=Singapore +CountryAF=Afghanistan +CountryAX=Åland Islands +CountryAL=Albania +CountryAS=American Samoa +CountryAD=Andorra +CountryAO=Angola +CountryAI=Anguilla +CountryAQ=Antarctica +CountryAG=Antigua and Barbuda +CountryAM=Armenia +CountryAW=Aruba +CountryAT=Austria +CountryAZ=Azerbaijan +CountryBS=Bahamas +CountryBH=Bahrain +CountryBD=Bangladesh +CountryBB=Barbados +CountryBY=Belarus +CountryBZ=Belize +CountryBJ=Benin +CountryBM=Bermuda +CountryBT=Bhutan +CountryBO=Bolivia +CountryBA=Bosnia and Herzegovina +CountryBW=Botswana +CountryBV=Bouvet Island +CountryBR=Brazil +CountryIO=British Indian Ocean Territory +CountryBN=Brunei Darussalam +CountryBG=Bulgaria +CountryBF=Burkina Faso +CountryBI=Burundi +CountryKH=Cambodia +CountryCV=Cape Verde +CountryKY=Cayman Islands +CountryCF=Central African Republic +CountryTD=Chad +CountryCL=Chile +CountryCX=Christmas Island +CountryCC=Cocos (Keeling) Islands +CountryCO=Colombia +CountryKM=Comoros +CountryCG=Congo +CountryCD=Congo, The Democratic Republic of the +CountryCK=Cook Islands +CountryCR=Costa Rica +CountryHR=Croatia +CountryCU=Cuba +CountryCY=Cyprus +CountryCZ=Czech Republic +CountryDK=Denmark +CountryDJ=Djibouti +CountryDM=Dominica +CountryDO=Dominican Republic +CountryEC=Ecuador +CountryEG=Egypt +CountrySV=El Salvador +CountryGQ=Equatorial Guinea +CountryER=Eritrea +CountryEE=Estonia +CountryET=Ethiopia +CountryFK=Falkland Islands +CountryFO=Faroe Islands +CountryFJ=Fiji Islands +CountryFI=Finland +CountryGF=French Guiana +CountryPF=French Polynesia +CountryTF=French Southern Territories +CountryGM=Gambia +CountryGE=Georgia +CountryGH=Ghana +CountryGI=Gibraltar +CountryGR=Greece +CountryGL=Greenland +CountryGD=Grenada +CountryGP=Guadeloupe +CountryGU=Guam +CountryGT=Guatemala +CountryGN=Guinea +CountryGW=Guinea-Bissau +CountryGY=Guyana +CountryHT=Haïti +CountryHM=Heard Island and McDonald +CountryVA=Holy See (Vatican City State) +CountryHN=Honduras +CountryHK=Hong Kong +CountryIS=Iceland +CountryIN=India +CountryID=Indonesia +CountryIR=Iran +CountryIQ=Iraq +CountryIL=Israel +CountryJM=Jamaica +CountryJP=Japan +CountryJO=Jordan +CountryKZ=Kazakhstan +CountryKE=Kenya +CountryKI=Kiribati +CountryKP=North Korea +CountryKR=South Korea +CountryKW=Kuwait +CountryKG=Kyrgyzstan +CountryLA=Lao +CountryLV=Latvia +CountryLB=Lebanon +CountryLS=Lesotho +CountryLR=Liberia +CountryLY=Libyan +CountryLI=Liechtenstein +CountryLT=Lithuania +CountryLU=Luxembourg +CountryMO=Macao +CountryMK=Macedonia, the former Yugoslav of +CountryMG=Madagascar +CountryMW=Malawi +CountryMY=Malaysia +CountryMV=Maldives +CountryML=Mali +CountryMT=Malta +CountryMH=Marshall Islands +CountryMQ=Martinique +CountryMR=Mauritania +CountryMU=Mauritius +CountryYT=Mayotte +CountryMX=Mexico +CountryFM=Micronesia +CountryMD=Moldova +CountryMN=Mongolia +CountryMS=Monserrat +CountryMZ=Mozambique +CountryMM=Myanmar (Burma) +CountryNA=Namibia +CountryNR=Nauru +CountryNP=Nepal +CountryAN=Netherlands Antilles +CountryNC=New Caledonia +CountryNZ=New Zealand +CountryNI=Nicaragua +CountryNE=Niger +CountryNG=Nigeria +CountryNU=Niue +CountryNF=Norfolk Island +CountryMP=Northern Mariana Islands +CountryNO=Norway +CountryOM=Oman +CountryPK=Pakistan +CountryPW=Palau +CountryPS=Palestinian Territory, Occupied +CountryPA=Panama +CountryPG=Papua New Guinea +CountryPY=Paraguay +CountryPE=Peru +CountryPH=Philippines +CountryPN=Pitcairn Islands +CountryPL=Poland +CountryPR=Puerto Rico +CountryQA=Qatar +CountryRE=Reunion +CountryRO=Romania +CountryRW=Rwanda +CountrySH=Saint Helena +CountryKN=Saint Kitts and Nevis +CountryLC=Saint Lucia +CountryPM=Saint Pierre and Miquelon +CountryVC=Saint Vincent and Grenadines +CountryWS=Samoa +CountrySM=San Marino +CountryST=Sao Tome and Principe +CountryRS=Serbia +CountrySC=Seychelles +CountrySL=Sierra Leone +CountrySK=Slovakia +CountrySI=Slovenia +CountrySB=Solomon Islands +CountrySO=Somalia +CountryZA=South Africa +CountryGS=South Georgia and the South Sandwich Islands +CountryLK=Sri Lanka +CountrySD=Sudan +CountrySR=Suriname +CountrySJ=Svalbard and Jan Mayen +CountrySZ=Swaziland +CountrySY=Syrian +CountryTW=Taiwan +CountryTJ=Tajikistan +CountryTZ=Tanzania +CountryTH=Thailand +CountryTL=Timor-Leste +CountryTK=Tokelau +CountryTO=Tonga +CountryTT=Trinidad and Tobago +CountryTR=Turkey +CountryTM=Turkmenistan +CountryTC=Turks and Caicos Islands +CountryTV=Tuvalu +CountryUG=Uganda +CountryUA=Ukraine +CountryAE=United Arab Emirates +CountryUM=United States Minor Outlying Islands +CountryUY=Uruguay +CountryUZ=Uzbekistan +CountryVU=Vanuatu +CountryVE=Venezuela +CountryVN=Viet Nam +CountryVG=Virgin Islands, British +CountryVI=Virgin Islands, U.S. +CountryWF=Wallis and Futuna +CountryEH=Western Sahara +CountryYE=Yemen +CountryZM=Zambia +CountryZW=Zimbabwe +CountryGG=Guernsey +CountryIM=Isle of Man +CountryJE=Jersey +CountryME=Montenegro +CountryBL=Saint Barthelemy +CountryMF=Saint Martin + +##### Civilities ##### +CivilityMME=Mrs. +CivilityMR=Mr. +CivilityMLE=Ms. +CivilityMTRE=Master +CivilityDR=Doctor +##### Currencies ##### +Currencyeuros=Euros +CurrencyAUD=AU Dollars +CurrencySingAUD=AU Dollar +CurrencyCAD=CAN Dollars +CurrencySingCAD=CAN Dollar +CurrencyCHF=Swiss Francs +CurrencySingCHF=Swiss Franc +CurrencyEUR=Euros +CurrencySingEUR=Euro +CurrencyFRF=French Francs +CurrencySingFRF=French Franc +CurrencyGBP=GB Pounds +CurrencySingGBP=GB Pound +CurrencyINR=Indian rupees +CurrencySingINR=Indian rupee +CurrencyMAD=Dirham +CurrencySingMAD=Dirham +CurrencyMGA=Ariary +CurrencySingMGA=Ariary +CurrencyMUR=Mauritius rupees +CurrencySingMUR=Mauritius rupee +CurrencyNOK=Norwegian krones +CurrencySingNOK=Norwegian kronas +CurrencyTND=Tunisian dinars +CurrencySingTND=Tunisian dinar +CurrencyUSD=US Dollars +CurrencySingUSD=US Dollar +CurrencyUAH=Hryvnia +CurrencySingUAH=Hryvnia +CurrencyXAF=CFA Francs BEAC +CurrencySingXAF=CFA Franc BEAC +CurrencyXOF=CFA Francs BCEAO +CurrencySingXOF=CFA Franc BCEAO +CurrencyXPF=CFP Francs +CurrencySingXPF=CFP Franc +CurrencyCentEUR=cents +CurrencyCentSingEUR=cent +CurrencyCentINR=paisa +CurrencyCentSingINR=paise +CurrencyThousandthSingTND=thousandth +#### Input reasons ##### +DemandReasonTypeSRC_INTE=Internet +DemandReasonTypeSRC_CAMP_MAIL=Mailing campaign +DemandReasonTypeSRC_CAMP_EMAIL=EMailing campaign +DemandReasonTypeSRC_CAMP_PHO=Phone campaign +DemandReasonTypeSRC_CAMP_FAX=Fax campaign +DemandReasonTypeSRC_COMM=Commercial contact +DemandReasonTypeSRC_SHOP=Shop contact +DemandReasonTypeSRC_WOM=Word of mouth +DemandReasonTypeSRC_PARTNER=Partner +DemandReasonTypeSRC_EMPLOYEE=Employee +DemandReasonTypeSRC_SPONSORING=Sponsorship +DemandReasonTypeSRC_SRC_CUSTOMER=Incoming contact of a customer +#### Paper formats #### +PaperFormatEU4A0=Format 4A0 +PaperFormatEU2A0=Format 2A0 +PaperFormatEUA0=Format A0 +PaperFormatEUA1=Format A1 +PaperFormatEUA2=Format A2 +PaperFormatEUA3=Format A3 +PaperFormatEUA4=Format A4 +PaperFormatEUA5=Format A5 +PaperFormatEUA6=Format A6 +PaperFormatUSLETTER=Format Letter US +PaperFormatUSLEGAL=Format Legal US +PaperFormatUSEXECUTIVE=Format Executive US +PaperFormatUSLEDGER=Format Ledger/Tabloid +PaperFormatCAP1=Format P1 Canada +PaperFormatCAP2=Format P2 Canada +PaperFormatCAP3=Format P3 Canada +PaperFormatCAP4=Format P4 Canada +PaperFormatCAP5=Format P5 Canada +PaperFormatCAP6=Format P6 Canada +#### Expense report categories #### +ExpAutoCat=Car +ExpCycloCat=Moped +ExpMotoCat=Motorbike +ExpAuto3CV=3 CV +ExpAuto4CV=4 CV +ExpAuto5CV=5 CV +ExpAuto6CV=6 CV +ExpAuto7CV=7 CV +ExpAuto8CV=8 CV +ExpAuto9CV=9 CV +ExpAuto10CV=10 CV +ExpAuto11CV=11 CV +ExpAuto12CV=12 CV +ExpAuto3PCV=3 CV and more +ExpAuto4PCV=4 CV and more +ExpAuto5PCV=5 CV and more +ExpAuto6PCV=6 CV and more +ExpAuto7PCV=7 CV and more +ExpAuto8PCV=8 CV and more +ExpAuto9PCV=9 CV and more +ExpAuto10PCV=10 CV and more +ExpAuto11PCV=11 CV and more +ExpAuto12PCV=12 CV and more +ExpAuto13PCV=13 CV and more +ExpCyclo=Capacity lower to 50cm3 +ExpMoto12CV=Motorbike 1 or 2 CV +ExpMoto345CV=Motorbike 3, 4 or 5 CV +ExpMoto5PCV=Motorbike 5 CV and more diff --git a/htdocs/langs/gl_ES/donations.lang b/htdocs/langs/gl_ES/donations.lang new file mode 100644 index 00000000000..16cf65e2c5f --- /dev/null +++ b/htdocs/langs/gl_ES/donations.lang @@ -0,0 +1,34 @@ +# Dolibarr language file - Source file is en_US - donations +Donation=Donation +Donations=Donacións +DonationRef=Donation ref. +Donor=Donor +AddDonation=Create a donation +NewDonation=New donation +DeleteADonation=Delete a donation +ConfirmDeleteADonation=Are you sure you want to delete this donation? +PublicDonation=Public donation +DonationsArea=Donations area +DonationStatusPromiseNotValidated=Draft promise +DonationStatusPromiseValidated=Validated promise +DonationStatusPaid=Donation received +DonationStatusPromiseNotValidatedShort=Borrador +DonationStatusPromiseValidatedShort=Validado +DonationStatusPaidShort=Recibido +DonationTitle=Donation receipt +DonationDate=Donation date +DonationDatePayment=Payment date +ValidPromess=Validate promise +DonationReceipt=Donation receipt +DonationsModels=Documents models for donation receipts +LastModifiedDonations=Últimas %s donacións modificadas +DonationRecipient=Donation recipient +IConfirmDonationReception=The recipient declare reception, as a donation, of the following amount +MinimumAmount=Minimum amount is %s +FreeTextOnDonations=Free text to show in footer +FrenchOptions=Options for France +DONATION_ART200=Show article 200 from CGI if you are concerned +DONATION_ART238=Show article 238 from CGI if you are concerned +DONATION_ART885=Show article 885 from CGI if you are concerned +DonationPayment=Donation payment +DonationValidated=Donation %s validated diff --git a/htdocs/langs/gl_ES/ecm.lang b/htdocs/langs/gl_ES/ecm.lang new file mode 100644 index 00000000000..31d4da0f388 --- /dev/null +++ b/htdocs/langs/gl_ES/ecm.lang @@ -0,0 +1,52 @@ +# Dolibarr language file - Source file is en_US - ecm +ECMNbOfDocs=No. of documents in directory +ECMSection=Directory +ECMSectionManual=Manual directory +ECMSectionAuto=Automatic directory +ECMSectionsManual=Manual tree +ECMSectionsAuto=Automatic tree +ECMSections=Directories +ECMRoot=ECM Root +ECMNewSection=New directory +ECMAddSection=Add directory +ECMCreationDate=Data de creación +ECMNbOfFilesInDir=Number of files in directory +ECMNbOfSubDir=Number of sub-directories +ECMNbOfFilesInSubDir=Number of files in sub-directories +ECMCreationUser=Creator +ECMArea=DMS/ECM area +ECMAreaDesc=The DMS/ECM (Document Management System / Electronic Content Management) area allows you to save, share and search quickly all kind of documents in Dolibarr. +ECMAreaDesc2=* Automatic directories are filled automatically when adding documents from card of an element.
    * Manual directories can be used to save documents not linked to a particular element. +ECMSectionWasRemoved=Directory %s has been deleted. +ECMSectionWasCreated=Directory %s has been created. +ECMSearchByKeywords=Search by keywords +ECMSearchByEntity=Search by object +ECMSectionOfDocuments=Directories of documents +ECMTypeAuto=Automatic +ECMDocsBySocialContributions=Documents linked to social or fiscal taxes +ECMDocsByThirdParties=Documents linked to third parties +ECMDocsByProposals=Documents linked to proposals +ECMDocsByOrders=Documents linked to customers orders +ECMDocsByContracts=Documents linked to contracts +ECMDocsByInvoices=Documents linked to customers invoices +ECMDocsByProducts=Documents linked to products +ECMDocsByProjects=Documents linked to projects +ECMDocsByUsers=Documents linked to users +ECMDocsByInterventions=Documents linked to interventions +ECMDocsByExpenseReports=Documents linked to expense reports +ECMDocsByHolidays=Documents linked to holidays +ECMDocsBySupplierProposals=Documents linked to vendor proposals +ECMNoDirectoryYet=No directory created +ShowECMSection=Show directory +DeleteSection=Remove directory +ConfirmDeleteSection=Can you confirm you want to delete the directory %s? +ECMDirectoryForFiles=Relative directory for files +CannotRemoveDirectoryContainsFilesOrDirs=Removal not possible because it contains some files or sub-directories +CannotRemoveDirectoryContainsFiles=Removal not possible because it contains some files +ECMFileManager=File manager +ECMSelectASection=Select a directory in the tree... +DirNotSynchronizedSyncFirst=This directory seems to be created or modified outside ECM module. You must click on "Resync" button first to synchronize disk and database to get content of this directory. +ReSyncListOfDir=Resync list of directories +HashOfFileContent=Hash of file content +NoDirectoriesFound=No directories found +FileNotYetIndexedInDatabase=File not yet indexed into database (try to re-upload it) diff --git a/htdocs/langs/gl_ES/errors.lang b/htdocs/langs/gl_ES/errors.lang new file mode 100644 index 00000000000..7c67aeca8b5 --- /dev/null +++ b/htdocs/langs/gl_ES/errors.lang @@ -0,0 +1,265 @@ +# Dolibarr language file - Source file is en_US - errors + +# No errors +NoErrorCommitIsDone=No error, we commit +# Errors +ErrorButCommitIsDone=Errors found but we validate despite this +ErrorBadEMail=Email %s is wrong +ErrorBadUrl=Url %s is wrong +ErrorBadValueForParamNotAString=Bad value for your parameter. It appends generally when translation is missing. +ErrorLoginAlreadyExists=Login %s already exists. +ErrorGroupAlreadyExists=Group %s already exists. +ErrorRecordNotFound=Record not found. +ErrorFailToCopyFile=Failed to copy file '%s' into '%s'. +ErrorFailToCopyDir=Failed to copy directory '%s' into '%s'. +ErrorFailToRenameFile=Failed to rename file '%s' into '%s'. +ErrorFailToDeleteFile=Failed to remove file '%s'. +ErrorFailToCreateFile=Failed to create file '%s'. +ErrorFailToRenameDir=Failed to rename directory '%s' into '%s'. +ErrorFailToCreateDir=Failed to create directory '%s'. +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=This bank account is a cash account, so it accepts payments of type cash only. +ErrorFromToAccountsMustDiffers=Source and targets bank accounts must be different. +ErrorBadThirdPartyName=Bad value for third-party name +ErrorProdIdIsMandatory=The %s is mandatory +ErrorBadCustomerCodeSyntax=Bad syntax for customer code +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. +ErrorCustomerCodeRequired=Customer code required +ErrorBarCodeRequired=Barcode required +ErrorCustomerCodeAlreadyUsed=Customer code already used +ErrorBarCodeAlreadyUsed=Barcode already used +ErrorPrefixRequired=Prefix required +ErrorBadSupplierCodeSyntax=Bad syntax for vendor code +ErrorSupplierCodeRequired=Vendor code required +ErrorSupplierCodeAlreadyUsed=Vendor code already used +ErrorBadParameters=Bad parameters +ErrorBadValueForParameter=Wrong value '%s' for parameter '%s' +ErrorBadImageFormat=Image file has not a supported format (Your PHP does not support functions to convert images of this format) +ErrorBadDateFormat=Value '%s' has wrong date format +ErrorWrongDate=Date is not correct! +ErrorFailedToWriteInDir=Failed to write in directory %s +ErrorFoundBadEmailInFile=Found incorrect email syntax for %s lines in file (example line %s with email=%s) +ErrorUserCannotBeDelete=User cannot be deleted. Maybe it is associated to Dolibarr entities. +ErrorFieldsRequired=Some required fields were not filled. +ErrorSubjectIsRequired=The email topic is required +ErrorFailedToCreateDir=Failed to create a directory. Check that Web server user has permissions to write into Dolibarr documents directory. If parameter safe_mode is enabled on this PHP, check that Dolibarr php files owns to web server user (or group). +ErrorNoMailDefinedForThisUser=No mail defined for this user +ErrorFeatureNeedJavascript=This feature need javascript to be activated to work. Change this in setup - display. +ErrorTopMenuMustHaveAParentWithId0=A menu of type 'Top' can't have a parent menu. Put 0 in parent menu or choose a menu of type 'Left'. +ErrorLeftMenuMustHaveAParentId=A menu of type 'Left' must have a parent id. +ErrorFileNotFound=File %s not found (Bad path, wrong permissions or access denied by PHP openbasedir or safe_mode parameter) +ErrorDirNotFound=Directory %s not found (Bad path, wrong permissions or access denied by PHP openbasedir or safe_mode parameter) +ErrorFunctionNotAvailableInPHP=Function %s is required for this feature but is not available in this version/setup of PHP. +ErrorDirAlreadyExists=A directory with this name already exists. +ErrorFileAlreadyExists=A file with this name already exists. +ErrorPartialFile=File not received completely by server. +ErrorNoTmpDir=Temporary directy %s does not exists. +ErrorUploadBlockedByAddon=Upload blocked by a PHP/Apache plugin. +ErrorFileSizeTooLarge=File size is too large. +ErrorFieldTooLong=Field %s is too long. +ErrorSizeTooLongForIntType=Size too long for int type (%s digits maximum) +ErrorSizeTooLongForVarcharType=Size too long for string type (%s chars maximum) +ErrorNoValueForSelectType=Please fill value for select list +ErrorNoValueForCheckBoxType=Please fill value for checkbox list +ErrorNoValueForRadioType=Please fill value for radio list +ErrorBadFormatValueList=The list value cannot have more than one comma: %s, but need at least one: key,value +ErrorFieldCanNotContainSpecialCharacters=The field %s must not contains special characters. +ErrorFieldCanNotContainSpecialNorUpperCharacters=The field %s must not contain special characters, nor upper case characters and cannot contain only numbers. +ErrorFieldMustHaveXChar=The field %s must have at least %s characters. +ErrorNoAccountancyModuleLoaded=No accountancy module activated +ErrorExportDuplicateProfil=This profile name already exists for this export set. +ErrorLDAPSetupNotComplete=Dolibarr-LDAP matching is not complete. +ErrorLDAPMakeManualTest=A .ldif file has been generated in directory %s. Try to load it manually from command line to have more information on errors. +ErrorCantSaveADoneUserWithZeroPercentage=Can't save an action with "status not started" if field "done by" is also filled. +ErrorRefAlreadyExists=Ref used for creation already exists. +ErrorPleaseTypeBankTransactionReportName=Please enter the bank statement name where the entry has to be reported (Format YYYYMM or YYYYMMDD) +ErrorRecordHasChildren=Failed to delete record since it has some child records. +ErrorRecordHasAtLeastOneChildOfType=Object has at least one child of type %s +ErrorRecordIsUsedCantDelete=Can't delete record. It is already used or included into another object. +ErrorModuleRequireJavascript=Javascript must not be disabled to have this feature working. To enable/disable Javascript, go to menu Home->Setup->Display. +ErrorPasswordsMustMatch=Both typed passwords must match each other +ErrorContactEMail=A technical error occured. Please, contact administrator to following email %s and provide the error code %s in your message, or add a screen copy of this page. +ErrorWrongValueForField=Field %s: '%s' does not match regex rule %s +ErrorFieldValueNotIn=Field %s: '%s' is not a value found in field %s of %s +ErrorFieldRefNotIn=Field %s: '%s' is not a %s existing ref +ErrorsOnXLines=%s errors found +ErrorFileIsInfectedWithAVirus=The antivirus program was not able to validate the file (file might be infected by a virus) +ErrorSpecialCharNotAllowedForField=Special characters are not allowed for field "%s" +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 %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 +ErrorMaxNumberReachForThisMask=Maximum number reached for this mask +ErrorCounterMustHaveMoreThan3Digits=Counter must have more than 3 digits +ErrorSelectAtLeastOne=Error, select at least one entry. +ErrorDeleteNotPossibleLineIsConsolidated=Delete not possible because record is linked to a bank transaction that is conciliated +ErrorProdIdAlreadyExist=%s is assigned to another third +ErrorFailedToSendPassword=Failed to send password +ErrorFailedToLoadRSSFile=Fails to get RSS feed. Try to add constant MAIN_SIMPLEXMLLOAD_DEBUG if error messages does not provide enough information. +ErrorForbidden=Access denied.
    You try to access to a page, area or feature of a disabled module or without being in an authenticated session or that is not allowed to your user. +ErrorForbidden2=Permission for this login can be defined by your Dolibarr administrator from menu %s->%s. +ErrorForbidden3=It seems that Dolibarr is not used through an authenticated session. Take a look at Dolibarr setup documentation to know how to manage authentications (htaccess, mod_auth or other...). +ErrorNoImagickReadimage=Class Imagick is not found in this PHP. No preview can be available. Administrators can disable this tab from menu Setup - Display. +ErrorRecordAlreadyExists=Record already exists +ErrorLabelAlreadyExists=This label already exists +ErrorCantReadFile=Failed to read file '%s' +ErrorCantReadDir=Failed to read directory '%s' +ErrorBadLoginPassword=Bad value for login or password +ErrorLoginDisabled=Your account has been disabled +ErrorFailedToRunExternalCommand=Failed to run external command. Check it is available and runnable by your PHP server. If PHP Safe Mode is enabled, check that command is inside a directory defined by parameter safe_mode_exec_dir. +ErrorFailedToChangePassword=Failed to change password +ErrorLoginDoesNotExists=User with login %s could not be found. +ErrorLoginHasNoEmail=This user has no email address. Process aborted. +ErrorBadValueForCode=Bad value for security code. Try again with new value... +ErrorBothFieldCantBeNegative=Fields %s and %s can't be both negative +ErrorFieldCantBeNegativeOnInvoice=Field %s cannot be negative on this type of invoice. If you need to add a discount line, just create the discount first (from field '%s' in thirdparty card) and apply it to the invoice. +ErrorLinesCantBeNegativeForOneVATRate=Total of lines can't be negative for a given VAT rate. +ErrorLinesCantBeNegativeOnDeposits=Lines can't be negative in a deposit. You will face problems when you will need to consume the deposit in final invoice if you do so. +ErrorQtyForCustomerInvoiceCantBeNegative=Quantity for line into customer invoices can't be negative +ErrorWebServerUserHasNotPermission=User account %s used to execute web server has no permission for that +ErrorNoActivatedBarcode=No barcode type activated +ErrUnzipFails=Failed to unzip %s with ZipArchive +ErrNoZipEngine=No engine to zip/unzip %s file in this PHP +ErrorFileMustBeADolibarrPackage=The file %s must be a Dolibarr zip package +ErrorModuleFileRequired=You must select a Dolibarr module package file +ErrorPhpCurlNotInstalled=The PHP CURL is not installed, this is essential to talk with Paypal +ErrorFailedToAddToMailmanList=Failed to add record %s to Mailman list %s or SPIP base +ErrorFailedToRemoveToMailmanList=Failed to remove record %s to Mailman list %s or SPIP base +ErrorNewValueCantMatchOldValue=New value can't be equal to old one +ErrorFailedToValidatePasswordReset=Failed to reinit password. May be the reinit was already done (this link can be used only one time). If not, try to restart the reinit process. +ErrorToConnectToMysqlCheckInstance=Connect to database fails. Check database server is running (for example, with mysql/mariadb, you can launch it from command line with 'sudo service mysql start'). +ErrorFailedToAddContact=Failed to add contact +ErrorDateMustBeBeforeToday=The date cannot be greater than today +ErrorPaymentModeDefinedToWithoutSetup=A payment mode was set to type %s but setup of module Invoice was not completed to define information to show for this payment mode. +ErrorPHPNeedModule=Error, your PHP must have module %s installed to use this feature. +ErrorOpenIDSetupNotComplete=You setup Dolibarr config file to allow OpenID authentication, but URL of OpenID service is not defined into constant %s +ErrorWarehouseMustDiffers=Source and target warehouses must differs +ErrorBadFormat=Bad format! +ErrorMemberNotLinkedToAThirpartyLinkOrCreateFirst=Error, this member is not yet linked to any third party. Link member to an existing third party or create a new third party before creating subscription with invoice. +ErrorThereIsSomeDeliveries=Error, there is some deliveries linked to this shipment. Deletion refused. +ErrorCantDeletePaymentReconciliated=Can't delete a payment that had generated a bank entry that was reconciled +ErrorCantDeletePaymentSharedWithPayedInvoice=Can't delete a payment shared by at least one invoice with status Paid +ErrorPriceExpression1=Cannot assign to constant '%s' +ErrorPriceExpression2=Cannot redefine built-in function '%s' +ErrorPriceExpression3=Undefined variable '%s' in function definition +ErrorPriceExpression4=Illegal character '%s' +ErrorPriceExpression5=Unexpected '%s' +ErrorPriceExpression6=Wrong number of arguments (%s given, %s expected) +ErrorPriceExpression8=Unexpected operator '%s' +ErrorPriceExpression9=An unexpected error occured +ErrorPriceExpression10=Operator '%s' lacks operand +ErrorPriceExpression11=Expecting '%s' +ErrorPriceExpression14=Division by zero +ErrorPriceExpression17=Undefined variable '%s' +ErrorPriceExpression19=Expression not found +ErrorPriceExpression20=Empty expression +ErrorPriceExpression21=Empty result '%s' +ErrorPriceExpression22=Negative result '%s' +ErrorPriceExpression23=Unknown or non set variable '%s' in %s +ErrorPriceExpression24=Variable '%s' exists but has no value +ErrorPriceExpressionInternal=Internal error '%s' +ErrorPriceExpressionUnknown=Unknown error '%s' +ErrorSrcAndTargetWarehouseMustDiffers=Source and target warehouses must differs +ErrorTryToMakeMoveOnProductRequiringBatchData=Error, trying to make a stock movement without lot/serial information, on product '%s' requiring lot/serial information +ErrorCantSetReceptionToTotalDoneWithReceptionToApprove=All recorded receptions must first be verified (approved or denied) before being allowed to do this action +ErrorCantSetReceptionToTotalDoneWithReceptionDenied=All recorded receptions must first be verified (approved) before being allowed to do this action +ErrorGlobalVariableUpdater0=HTTP request failed with error '%s' +ErrorGlobalVariableUpdater1=Invalid JSON format '%s' +ErrorGlobalVariableUpdater2=Missing parameter '%s' +ErrorGlobalVariableUpdater3=The requested data was not found in result +ErrorGlobalVariableUpdater4=SOAP client failed with error '%s' +ErrorGlobalVariableUpdater5=No global variable selected +ErrorFieldMustBeANumeric=Field %s must be a numeric value +ErrorMandatoryParametersNotProvided=Mandatory parameter(s) not provided +ErrorOppStatusRequiredIfAmount=You set an estimated amount for this lead. So you must also enter it's status. +ErrorFailedToLoadModuleDescriptorForXXX=Failed to load module descriptor class for %s +ErrorBadDefinitionOfMenuArrayInModuleDescriptor=Bad Definition Of Menu Array In Module Descriptor (bad value for key fk_menu) +ErrorSavingChanges=An error has occurred when saving the changes +ErrorWarehouseRequiredIntoShipmentLine=Warehouse is required on the line to ship +ErrorFileMustHaveFormat=File must have format %s +ErrorSupplierCountryIsNotDefined=Country for this vendor is not defined. Correct this first. +ErrorsThirdpartyMerge=Failed to merge the two records. Request canceled. +ErrorStockIsNotEnoughToAddProductOnOrder=Stock is not enough for product %s to add it into a new order. +ErrorStockIsNotEnoughToAddProductOnInvoice=Stock is not enough for product %s to add it into a new invoice. +ErrorStockIsNotEnoughToAddProductOnShipment=Stock is not enough for product %s to add it into a new shipment. +ErrorStockIsNotEnoughToAddProductOnProposal=Stock is not enough for product %s to add it into a new proposal. +ErrorFailedToLoadLoginFileForMode=Failed to get the login key for mode '%s'. +ErrorModuleNotFound=File of module was not found. +ErrorFieldAccountNotDefinedForBankLine=Value for Accounting account not defined for source line id %s (%s) +ErrorFieldAccountNotDefinedForInvoiceLine=Value for Accounting account not defined for invoice id %s (%s) +ErrorFieldAccountNotDefinedForLine=Value for Accounting account not defined for the line (%s) +ErrorBankStatementNameMustFollowRegex=Error, bank statement name must follow the following syntax rule %s +ErrorPhpMailDelivery=Check that you don't use a too high number of recipients and that your email content is not similar to a Spam. Ask also your administrator to check firewall and server logs files for a more complete information. +ErrorUserNotAssignedToTask=User must be assigned to task to be able to enter time consumed. +ErrorTaskAlreadyAssigned=Task already assigned to user +ErrorModuleFileSeemsToHaveAWrongFormat=The module package seems to have a wrong format. +ErrorModuleFileSeemsToHaveAWrongFormat2=At least one mandatory directory must exists into zip of module: %s or %s +ErrorFilenameDosNotMatchDolibarrPackageRules=The name of the module package (%s) does not match expected name syntax: %s +ErrorDuplicateTrigger=Error, duplicate trigger name %s. Already loaded from %s. +ErrorNoWarehouseDefined=Error, no warehouses defined. +ErrorBadLinkSourceSetButBadValueForRef=The link you use is not valid. A 'source' for payment is defined, but value for 'ref' is not valid. +ErrorTooManyErrorsProcessStopped=Too many errors. Process was stopped. +ErrorMassValidationNotAllowedWhenStockIncreaseOnAction=Mass validation is not possible when option to increase/decrease stock is set on this action (you must validate one by one so you can define the warehouse to increase/decrease) +ErrorObjectMustHaveStatusDraftToBeValidated=Object %s must have status 'Draft' to be validated. +ErrorObjectMustHaveLinesToBeValidated=Object %s must have lines to be validated. +ErrorOnlyInvoiceValidatedCanBeSentInMassAction=Only validated invoices can be sent using the "Send by email" mass action. +ErrorChooseBetweenFreeEntryOrPredefinedProduct=You must choose if article is a predefined product or not +ErrorDiscountLargerThanRemainToPaySplitItBefore=The discount you try to apply is larger than remain to pay. Split the discount in 2 smaller discounts before. +ErrorFileNotFoundWithSharedLink=File was not found. May be the share key was modified or file was removed recently. +ErrorProductBarCodeAlreadyExists=The product barcode %s already exists on another product reference. +ErrorNoteAlsoThatSubProductCantBeFollowedByLot=Note also that using virtual product to have auto increase/decrease of subproducts is not possible when at least one subproduct (or subproduct of subproducts) needs a serial/lot number. +ErrorDescRequiredForFreeProductLines=Description is mandatory for lines with free product +ErrorAPageWithThisNameOrAliasAlreadyExists=The page/container %s has the same name or alternative alias that the one your try to use +ErrorDuringChartLoad=Error when loading chart of accounts. If few accounts were not loaded, you can still enter them manually. +ErrorBadSyntaxForParamKeyForContent=Bad syntax for param keyforcontent. Must have a value starting with %s or %s +ErrorVariableKeyForContentMustBeSet=Error, the constant with name %s (with text content to show) or %s (with external url to show) must be set. +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. +ErrorObjectMustHaveStatusActiveToBeDisabled=Objects must have status 'Active' to be disabled +ErrorObjectMustHaveStatusDraftOrDisabledToBeActivated=Objects must have status 'Draft' or 'Disabled' to be enabled +ErrorNoFieldWithAttributeShowoncombobox=No fields has property 'showoncombobox' into definition of object '%s'. No way to show the combolist. +ErrorFieldRequiredForProduct=Field '%s' is required for product %s +ProblemIsInSetupOfTerminal=Problem is in setup of terminal %s. +ErrorAddAtLeastOneLineFirst=Add at least one line first +ErrorRecordAlreadyInAccountingDeletionNotPossible=Error, record is already transferred in accounting, deletion is not possible. +ErrorLanguageMandatoryIfPageSetAsTranslationOfAnother=Error, language is mandatory if you set the page as a translation of another one. +ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated page is same than this one. +ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". +ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". +ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty +# 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 +WarningSafeModeOnCheckExecDir=Warning, PHP option safe_mode is on so command must be stored inside a directory declared by php parameter safe_mode_exec_dir. +WarningBookmarkAlreadyExists=A bookmark with this title or this target (URL) already exists. +WarningPassIsEmpty=Warning, database password is empty. This is a security hole. You should add a password to your database and change your conf.php file to reflect this. +WarningConfFileMustBeReadOnly=Warning, your config file (htdocs/conf/conf.php) can be overwritten by the web server. This is a serious security hole. Modify permissions on file to be in read only mode for operating system user used by Web server. If you use Windows and FAT format for your disk, you must know that this file system does not allow to add permissions on file, so can't be completely safe. +WarningsOnXLines=Warnings on %s source record(s) +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). +WarningCloseAlways=Warning, closing is done even if amount differs between source and target elements. Enable this feature with caution. +WarningUsingThisBoxSlowDown=Warning, using this box slow down seriously all pages showing the box. +WarningClickToDialUserSetupNotComplete=Setup of ClickToDial information for your user are not complete (see tab ClickToDial onto your user card). +WarningFeatureDisabledWithDisplayOptimizedForBlindNoJs=Feature disabled when display setup is optimized for blind person or text browsers. +WarningPaymentDateLowerThanInvoiceDate=Payment date (%s) is earlier than invoice date (%s) for invoice %s. +WarningTooManyDataPleaseUseMoreFilters=Too many data (more than %s lines). Please use more filters or set the constant %s to a higher limit. +WarningSomeLinesWithNullHourlyRate=Some times were recorded by some users while their hourly rate was not defined. A value of 0 %s per hour was used but this may result in wrong valuation of time spent. +WarningYourLoginWasModifiedPleaseLogin=Your login was modified. For security purpose you will have to login with your new login before next action. +WarningAnEntryAlreadyExistForTransKey=An entry already exists for the translation key for this language +WarningNumberOfRecipientIsRestrictedInMassAction=Warning, number of different recipient is limited to %s when using the mass actions on lists +WarningDateOfLineMustBeInExpenseReportRange=Warning, the date of line is not in the range of the expense report +WarningProjectClosed=Project is closed. You must re-open it first. +WarningSomeBankTransactionByChequeWereRemovedAfter=Some bank transaction were removed after that the receipt including them were generated. So nb of cheques and total of receipt may differ from number and total in list. diff --git a/htdocs/langs/gl_ES/exports.lang b/htdocs/langs/gl_ES/exports.lang new file mode 100644 index 00000000000..b4c9be1a706 --- /dev/null +++ b/htdocs/langs/gl_ES/exports.lang @@ -0,0 +1,135 @@ +# Dolibarr language file - Source file is en_US - exports +ExportsArea=Exportacións +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 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 your selections as an export profile/template (for reuse). +SaveImportModel=Save this import profile (for reuse) ... +ExportModelName=Export profile name +ExportModelSaved=Export profile saved as %s. +ExportableFields=Exportable fields +ExportedFields=Exported fields +ImportModelName=Import profile name +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 the file format in the combo box and click on "Generate" to build the export file... +AvailableFormats=Available Formats +LibraryShort=Library +ExportCsvSeparator=Csv caracter separator +ImportCsvSeparator=Csv caracter separator +Step=Step +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 extract data +LineId=Id of line +LineLabel=Label of line +LineDescription=Descrición de liña +LineUnitPrice=Unit price of line +LineVATRate=VAT Rate of line +LineQty=Quantity for line +LineTotalHT=Amount excl. tax for line +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 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) +Field=Field +NoFields=No fields +MoveField=Move field column number %s +ExampleOfImportFile=Example_of_import_file +SaveImportProfile=Save this import profile +ErrorImportDuplicateProfil=Failed to save this import profile with this name. An existing profile already exists with this name. +TablesTarget=Targeted tables +FieldsTarget=Targeted fields +FieldTarget=Targeted field +FieldSource=Source field +NbOfSourceLines=Number of lines in source file +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=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 correct all errors before running the definitive import. +FileWasImported=File was imported with number %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 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 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 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 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 +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=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 +ComputedField=Computed field +## filters +SelectFilterFields=If you want to filter on some values, just input values here. +FilteredFields=Filtered fields +FilteredFieldsValues=Value for filter +FormatControlRule=Format control rule +## imports updates +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/gl_ES/externalsite.lang b/htdocs/langs/gl_ES/externalsite.lang new file mode 100644 index 00000000000..38e8a11823b --- /dev/null +++ b/htdocs/langs/gl_ES/externalsite.lang @@ -0,0 +1,5 @@ +# Dolibarr language file - Source file is en_US - externalsite +ExternalSiteSetup=Configuración do enlace ao sitio web externo +ExternalSiteURL=URL do sitio web externo +ExternalSiteModuleNotComplete=O módulo do sitio externo non foi configurado correctamente. +ExampleMyMenuEntry=O meu menú de entrada diff --git a/htdocs/langs/gl_ES/ftp.lang b/htdocs/langs/gl_ES/ftp.lang new file mode 100644 index 00000000000..d80b87c2715 --- /dev/null +++ b/htdocs/langs/gl_ES/ftp.lang @@ -0,0 +1,14 @@ +# Dolibarr language file - Source file is en_US - ftp +FTPClientSetup=FTP Client module setup +NewFTPClient=New FTP connection setup +FTPArea=FTP Area +FTPAreaDesc=This screen shows a view of an FTP server. +SetupOfFTPClientModuleNotComplete=The setup of the FTP client module seems to be incomplete +FTPFeatureNotSupportedByYourPHP=Your PHP does not support FTP functions +FailedToConnectToFTPServer=Failed to connect to FTP server (server %s, port %s) +FailedToConnectToFTPServerWithCredentials=Failed to login to FTP server with defined login/password +FTPFailedToRemoveFile=Failed to remove file %s. +FTPFailedToRemoveDir=Failed to remove directory %s: check permissions and that the directory is empty. +FTPPassiveMode=Passive mode +ChooseAFTPEntryIntoMenu=Choose a FTP site from the menu... +FailedToGetFile=Failed to get files %s diff --git a/htdocs/langs/gl_ES/help.lang b/htdocs/langs/gl_ES/help.lang new file mode 100644 index 00000000000..7b6c242b896 --- /dev/null +++ b/htdocs/langs/gl_ES/help.lang @@ -0,0 +1,23 @@ +# Dolibarr language file - Source file is en_US - help +CommunitySupport=Forum/Wiki support +EMailSupport=Emails support +RemoteControlSupport=Online real-time / remote support +OtherSupport=Other support +ToSeeListOfAvailableRessources=To contact/see available resources: +HelpCenter=Help Center +DolibarrHelpCenter=Dolibarr Help and Support Center +ToGoBackToDolibarr=Otherwise, click here to continue to use Dolibarr. +TypeOfSupport=Type of support +TypeSupportCommunauty=Community (free) +TypeSupportCommercial=Comercial +TypeOfHelp=Tipo +NeedHelpCenter=Need help or support? +Efficiency=Efficiency +TypeHelpOnly=Help only +TypeHelpDev=Help+Development +TypeHelpDevForm=Help+Development+Training +BackToHelpCenter=Otherwise, go back to Help center home page. +LinkToGoldMember=You can call one of the trainers preselected by Dolibarr for your language (%s) by clicking their Widget (status and maximum price are automatically updated): +PossibleLanguages=Supported languages +SubscribeToFoundation=Help the Dolibarr project, subscribe to the foundation +SeeOfficalSupport=For official Dolibarr support in your language:
    %s diff --git a/htdocs/langs/gl_ES/holiday.lang b/htdocs/langs/gl_ES/holiday.lang new file mode 100644 index 00000000000..4a5eb743482 --- /dev/null +++ b/htdocs/langs/gl_ES/holiday.lang @@ -0,0 +1,133 @@ +# Dolibarr language file - Source file is en_US - holiday +HRM=HRM +Holidays=Día libre +CPTitreMenu=Día libre +MenuReportMonth=Estado mensual +MenuAddCP=Nova petición de vacacións +NotActiveModCP=Debe activar o módulo Días libres para ver esta páxina +AddCP=Realizar unha petición de días libres +DateDebCP=Data de inicio +DateFinCP=Data de fin +DraftCP=Borrador +ToReviewCP=Agardando aprobación +ApprovedCP=Aprobada +CancelCP=Anulada +RefuseCP=Rexeitada +ValidatorCP=Validador +ListeCP=Listaxe de días libres +LeaveId=ID Vacacións +ReviewedByCP=Será revisada por +UserID=User ID +UserForApprovalID=ID de usuario de aprobación +UserForApprovalFirstname=Nome do usuario de aprobación +UserForApprovalLastname=Apelido do usuario de aprobación +UserForApprovalLogin=Inicio de sesión de usuario de aprobación +DescCP=Descrición +SendRequestCP=Crear a petición de días libres +DelayToRequestCP=As peticións de días libres deben realizarse alo menos %s días antes. +MenuConfCP=Balance de días libres +SoldeCPUser=O seu saldo é de %s días. +ErrorEndDateCP=Debe indicar unha data de fin maior á data de inicio. +ErrorSQLCreateCP=Aconteceu un erro de SQL durante a creación : +ErrorIDFicheCP=Aconteceu un erro, esta solicitude non existe. +ReturnCP=Voltar á páxina anterior +ErrorUserViewCP=Non está autorizado a ler esta petición de días libres. +InfosWorkflowCP=Información do workflow +RequestByCP=Pedido por +TitreRequestCP=Pedido de días libres +TypeOfLeaveId=ID tipo de días libres +TypeOfLeaveCode=Código tipo de días libres +TypeOfLeaveLabel=Tipo de etiqueta de días libres +NbUseDaysCP=Número de vacacións consumidos +NbUseDaysCPHelp=The calculation takes into account the non working days and the holidays defined in the dictionary. +NbUseDaysCPShort=Días consumidos +NbUseDaysCPShortInMonth=Días consumidos en mes +DayIsANonWorkingDay=%s is a non working day +DateStartInMonth=Data de inicio en mes +DateEndInMonth=Data de fin en mes +EditCP=Editar +DeleteCP=Eliminar +ActionRefuseCP=Rexeitar +ActionCancelCP=Cancelar +StatutCP=Estado +TitleDeleteCP=Eliminar a petición de días libres +ConfirmDeleteCP=¿Está certo de querer eliminar esta petición de días libres? +ErrorCantDeleteCP=Erro, non ten permisos para eliminar esta petición de días libres. +CantCreateCP=Non ten permisos para realizar peticións de días libres. +InvalidValidatorCP=Debe escoller un validador para a súa petición de días libres. +NoDateDebut=Debe indicar unha data de inicio. +NoDateFin=Debe indicar unha data de fin. +ErrorDureeCP=A súa petición de días libres non contén ningún día hábil. +TitleValidCP=Aprobar a petición de días libres +ConfirmValidCP=¿Está certo de querer validar esta petición de días libres? +DateValidCP=Data de aprobación +TitleToValidCP=Enviar a petición de días libres +ConfirmToValidCP=¿Está certo de querer enviar a petición de días libres? +TitleRefuseCP=Rexeitar a petición de días libres +ConfirmRefuseCP=¿Está certo de querer rexeitar a petición de días libres? +NoMotifRefuseCP=Debe seleccionar un motivo para rexeitar esta petición. +TitleCancelCP=Cancelar a petición de días libres +ConfirmCancelCP=¿Está certo de querer anular a petición de días libres? +DetailRefusCP=Motivo do rexeitamento +DateRefusCP=Data do rexeitamento +DateCancelCP=Data da cancelación +DefineEventUserCP=Asignar excepcionalmente días libres a un usuario +addEventToUserCP=Asignar este permiso +NotTheAssignedApprover=Vostede non é o aprobador asignado +MotifCP=Razón +UserCP=Usuario +ErrorAddEventToUserCP=Aconteceu un erro na asignación do permiso excepcional. +AddEventToUserOkCP=Engadiuse o permiso excepcional. +MenuLogCP=Ver rexistro de cambios +LogCP=Historial de actualizacións de vacacións +ActionByCP=Realizado por +UserUpdateCP=Para o usuario +PrevSoldeCP=Saldo anterior +NewSoldeCP=Novo saldo +alreadyCPexist=Xa foi efectuada unha petición de días libres para este período. +FirstDayOfHoliday=Primeiro día de vacacións +LastDayOfHoliday=Último día vacacións +BoxTitleLastLeaveRequests=Últimas %s solicitudes de días libres modificadas +HolidaysMonthlyUpdate=Actualización mensual +ManualUpdate=Actualización manual +HolidaysCancelation=Cancelación días libres +EmployeeLastname=Apelidos do empregado +EmployeeFirstname=Nome do empregado +TypeWasDisabledOrRemoved=O tipo de día libre (id %s) foi desactivado ou eliminado +LastHolidays=Últimas %s solicitudes de días libres +AllHolidays=Todas as solicitudes de días libres +HalfDay=Medio día +NotTheAssignedApprover=Vostede non é o aprobador asignado +LEAVE_PAID=Vacación +LEAVE_SICK=Baixa por enfermidade +LEAVE_OTHER=Outro motivo de día libre +LEAVE_PAID_FR=Vacación +## Configuration du Module ## +LastUpdateCP=Última actualización automática de días libres +MonthOfLastMonthlyUpdate=Mes da última actualización automática de días libres +UpdateConfCPOK=Actualización efectuada. +Module27130Name= Xestión dos días libres +Module27130Desc= Xestión dos días libres +ErrorMailNotSend=Aconteceu un erro no envío do e-mail : +NoticePeriod=Prazo de aviso +#Messages +HolidaysToValidate=Días libres a validar +HolidaysToValidateBody=A continuación atopará unha solicitude de días libres a validar +HolidaysToValidateDelay=Esta solicitude de días libres terá lugar nun prazo de menos de %s días. +HolidaysToValidateAlertSolde=O usuario que fixo esta solicitude de días libres non dispón de suficintes días dispoñibles. +HolidaysValidated=Días libres validados +HolidaysValidatedBody=A súa solicitude de días libres dende o %s ao %s foi validada. +HolidaysRefused=Solicitude denegada +HolidaysRefusedBody=A súa solicitude de días libres dende o %s ao %s foi denegada polo seguinte motivo : +HolidaysCanceled=Días libres cancelados +HolidaysCanceledBody=A súa solicitude de días libres dende o %s ao %s foi cancelada. +FollowedByACounter=1: Este tipo de día libre precisa ser seguido por un contador. O contador incrementase manualmente ou automáticamente e cando valídase unha solicitude, o contador disminue.
    0: Non é seguido por un contador. +NoLeaveWithCounterDefined=Non hai ningún tipo de peticións de días libres definida que precisen ser seguidas por un contador +GoIntoDictionaryHolidayTypes=Vaia a Inicio - Configuración - Diccionarios - Tipos de días libres para configurar os diferentes tipos de días libres. +HolidaySetup=Configuración do módulo Vacacións +HolidaysNumberingModules=Modelos de numeración de petición de días libres +TemplatePDFHolidays=Prantilla PDF para petición de días libres +FreeLegalTextOnHolidays=Texto libre no PDF +WatermarkOnDraftHolidayCards=Marca de auga no borrador de petición de días libres +HolidaysToApprove=Holidays to approve +NobodyHasPermissionToValidateHolidays=Nobody has permission to validate holidays diff --git a/htdocs/langs/gl_ES/hrm.lang b/htdocs/langs/gl_ES/hrm.lang new file mode 100644 index 00000000000..1417a11698a --- /dev/null +++ b/htdocs/langs/gl_ES/hrm.lang @@ -0,0 +1,18 @@ +# Dolibarr language file - en_US - hrm +# Admin +HRM_EMAIL_EXTERNAL_SERVICE=Email to prevent HRM external service +Establishments=Establishments +Establishment=Establishment +NewEstablishment=New establishment +DeleteEstablishment=Delete establishment +ConfirmDeleteEstablishment=Are you sure you wish to delete this establishment? +OpenEtablishment=Open establishment +CloseEtablishment=Close establishment +# Dictionary +DictionaryPublicHolidays=HRM - Public holidays +DictionaryDepartment=HRM - Department list +DictionaryFunction=HRM - Function list +# Module +Employees=Empregados +Employee=Employee +NewEmployee=New employee diff --git a/htdocs/langs/gl_ES/install.lang b/htdocs/langs/gl_ES/install.lang new file mode 100644 index 00000000000..1b822223782 --- /dev/null +++ b/htdocs/langs/gl_ES/install.lang @@ -0,0 +1,223 @@ +# Dolibarr language file - Source file is en_US - install +InstallEasy=Just follow the instructions step by step. +MiscellaneousChecks=Prerequisites check +ConfFileExists=Configuration file %s exists. +ConfFileDoesNotExistsAndCouldNotBeCreated=Configuration file %s does not exist and could not be created! +ConfFileCouldBeCreated=Configuration file %s could be created. +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=Configuration file %s is writable. +ConfFileMustBeAFileNotADir=Configuration file %s must be a file, not a directory. +ConfFileReload=Reloading parameters from configuration file. +PHPSupportSessions=This PHP supports sessions. +PHPSupportPOSTGETOk=This PHP supports variables POST and 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. +PHPSupportCalendar=This PHP supports calendars extensions. +PHPSupportUTF8=This PHP supports UTF8 functions. +PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. +PHPSupport=This PHP supports %s functions. +PHPMemoryOK=Your PHP max session memory is set to %s. This should be enough. +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. +ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. +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. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. +ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. +ErrorDirDoesNotExists=Directory %s does not exist. +ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. +ErrorWrongValueForParameter=You may have typed a wrong value for parameter '%s'. +ErrorFailedToCreateDatabase=Failed to create database '%s'. +ErrorFailedToConnectToDatabase=Failed to connect to database '%s'. +ErrorDatabaseVersionTooLow=Database version (%s) too old. Version %s or higher is required. +ErrorPHPVersionTooLow=PHP version too old. Version %s is required. +ErrorConnectedButDatabaseNotFound=Connection to server successful but database '%s' not found. +ErrorDatabaseAlreadyExists=Database '%s' already exists. +IfDatabaseNotExistsGoBackAndUncheckCreate=If the database does not exist, go back and check option "Create database". +IfDatabaseExistsGoBackAndCheckCreate=If database already exists, go back and uncheck "Create database" option. +WarningBrowserTooOld=Version of browser is too old. Upgrading your browser to a recent version of Firefox, Chrome or Opera is highly recommended. +PHPVersion=PHP Version +License=Using license +ConfigurationFile=Configuration file +WebPagesDirectory=Directory where web pages are stored +DocumentsDirectory=Directory to store uploaded and generated documents +URLRoot=URL Root +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=Tipo de driver +Server=Servidor +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. +DatabaseServer=Database server +DatabaseName=Nome da base de datos +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=Password for Dolibarr database owner. +CreateDatabase=Create database +CreateUser=Create user account or grant user account permission on the Dolibarr database +DatabaseSuperUserAccess=Database server - Superuser access +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 +ServerConnection=Server connection +DatabaseCreation=Database creation +CreateDatabaseObjects=Database objects creation +ReferenceDataLoading=Reference data loading +TablesAndPrimaryKeysCreation=Tables and Primary keys creation +CreateTableAndPrimaryKey=Create table %s +CreateOtherKeysForTable=Create foreign keys and indexes for table %s +OtherKeysCreation=Foreign keys and indexes creation +FunctionsCreation=Functions creation +AdminAccountCreation=Administrator login creation +PleaseTypePassword=Please type a password, empty passwords are not allowed! +PleaseTypeALogin=Please type a login! +PasswordsMismatch=Passwords differs, please try again! +SetupEnd=End of setup +SystemIsInstalled=This installation is complete. +SystemIsUpgraded=Dolibarr has been upgraded successfully. +YouNeedToPersonalizeSetup=You need to configure Dolibarr to suit your needs (appearance, features, ...). To do this, please follow the link below: +AdminLoginCreatedSuccessfuly=Dolibarr administrator login '%s' created successfully. +GoToDolibarr=Go to Dolibarr +GoToSetupArea=Go to Dolibarr (setup area) +MigrationNotFinished=The database version is not completely up to date: run the upgrade process again. +GoToUpgradePage=Go to upgrade page again +WithNoSlashAtTheEnd=Without the slash "/" at the end +DirectoryRecommendation=IMPORTANT: You must use a directory that is outside of the web pages (so do not use a subdirectory of previous parameter). +LoginAlreadyExists=Already exists +DolibarrAdminLogin=Dolibarr admin login +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 +ChoosedMigrateScript=Choose migration script +DataMigration=Database migration (data) +DatabaseMigration=Database migration (structure + some data) +ProcessMigrateScript=Script processing +ChooseYourSetupMode=Choose your setup mode and click "Start"... +FreshInstall=Fresh install +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=Actualización +UpgradeDesc=Use this mode if you have replaced old Dolibarr files with files from a newer version. This will upgrade your database and data. +Start=Start +InstallNotAllowed=Setup not allowed by conf.php permissions +YouMustCreateWithPermission=You must create file %s and set write permissions on it for the web server during install process. +CorrectProblemAndReloadPage=Please fix the problem and press F5 to reload the page. +AlreadyDone=Already migrated +DatabaseVersion=Database version +ServerVersion=Database server version +YouMustCreateItAndAllowServerToWrite=You must create this directory and allow for the web server to write into it. +DBSortingCollation=Character sorting order +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. +OrphelinsPaymentsDetectedByMethod=Orphans payment detected by method %s +RemoveItManuallyAndPressF5ToContinue=Remove it manually and press F5 to continue. +FieldRenamed=Field renamed +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=Recommended choice to install version %s from your current version %s +InstallChoiceSuggested=Install choice suggested by installer. +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=If this name is correct and that database does not exist yet, you must check option "Create database". +OpenBaseDir=PHP openbasedir parameter +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 +MigrationShippingDelivery=Upgrade storage of shipping +MigrationShippingDelivery2=Upgrade storage of shipping 2 +MigrationFinished=Migration finished +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. +ActivateModule=Activate module %s +ShowEditTechnicalParameters=Click here to show/edit advanced parameters (expert mode) +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 +######### +# upgrade +MigrationFixData=Fix for denormalized data +MigrationOrder=Data migration for customer's orders +MigrationSupplierOrder=Data migration for vendor's orders +MigrationProposal=Data migration for commercial proposals +MigrationInvoice=Data migration for customer's invoices +MigrationContract=Data migration for contracts +MigrationSuccessfullUpdate=Upgrade successful +MigrationUpdateFailed=Failed upgrade process +MigrationRelationshipTables=Data migration for relationship tables (%s) +MigrationPaymentsUpdate=Payment data correction +MigrationPaymentsNumberToUpdate=%s payment(s) to update +MigrationProcessPaymentUpdate=Update payment(s) %s +MigrationPaymentsNothingToUpdate=No more things to do +MigrationPaymentsNothingUpdatable=No more payments that can be corrected +MigrationContractsUpdate=Contract data correction +MigrationContractsNumberToUpdate=%s contract(s) to update +MigrationContractsLineCreation=Create contract line for contract ref %s +MigrationContractsNothingToUpdate=No more things to do +MigrationContractsFieldDontExist=Field fk_facture does not exist anymore. Nothing to do. +MigrationContractsEmptyDatesUpdate=Contract empty date correction +MigrationContractsEmptyDatesUpdateSuccess=Contract empty date correction done successfully +MigrationContractsEmptyDatesNothingToUpdate=No contract empty date to correct +MigrationContractsEmptyCreationDatesNothingToUpdate=No contract creation date to correct +MigrationContractsInvalidDatesUpdate=Bad value date contract correction +MigrationContractsInvalidDateFix=Correct contract %s (Contract date=%s, Starting service date min=%s) +MigrationContractsInvalidDatesNumber=%s contracts modified +MigrationContractsInvalidDatesNothingToUpdate=No date with bad value to correct +MigrationContractsIncoherentCreationDateUpdate=Bad value contract creation date correction +MigrationContractsIncoherentCreationDateUpdateSuccess=Bad value contract creation date correction done successfully +MigrationContractsIncoherentCreationDateNothingToUpdate=No bad value for contract creation date to correct +MigrationReopeningContracts=Open contract closed by error +MigrationReopenThisContract=Reopen contract %s +MigrationReopenedContractsNumber=%s contracts modified +MigrationReopeningContractsNothingToUpdate=No closed contract to open +MigrationBankTransfertsUpdate=Update links between bank entry and a bank transfer +MigrationBankTransfertsNothingToUpdate=All links are up to date +MigrationShipmentOrderMatching=Sendings receipt update +MigrationDeliveryOrderMatching=Delivery receipt update +MigrationDeliveryDetail=Delivery update +MigrationStockDetail=Update stock value of products +MigrationMenusDetail=Update dynamic menus tables +MigrationDeliveryAddress=Update delivery address in shipments +MigrationProjectTaskActors=Data migration for table llx_projet_task_actors +MigrationProjectUserResp=Data migration field fk_user_resp of llx_projet to llx_element_contact +MigrationProjectTaskTime=Update time spent in seconds +MigrationActioncommElement=Update data on actions +MigrationPaymentMode=Data migration for payment type +MigrationCategorieAssociation=Migration of categories +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 +MigrationFieldsSocialNetworks=Migration of users fields social networks (%s) +MigrationReloadModule=Reload module %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. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/gl_ES/interventions.lang b/htdocs/langs/gl_ES/interventions.lang new file mode 100644 index 00000000000..8896e77e348 --- /dev/null +++ b/htdocs/langs/gl_ES/interventions.lang @@ -0,0 +1,66 @@ +# Dolibarr language file - Source file is en_US - interventions +Intervention=Intervention +Interventions=Intervencións +InterventionCard=Intervention card +NewIntervention=New intervention +AddIntervention=Create intervention +ChangeIntoRepeatableIntervention=Change to repeatable intervention +ListOfInterventions=List of interventions +ActionsOnFicheInter=Actions on intervention +LastInterventions=Latest %s interventions +AllInterventions=All interventions +CreateDraftIntervention=Crear borrador +InterventionContact=Intervention contact +DeleteIntervention=Delete intervention +ValidateIntervention=Validate intervention +ModifyIntervention=Modify intervention +DeleteInterventionLine=Delete intervention line +ConfirmDeleteIntervention=Are you sure you want to delete this intervention? +ConfirmValidateIntervention=Are you sure you want to validate this intervention under name %s? +ConfirmModifyIntervention=Are you sure you want to modify this intervention? +ConfirmDeleteInterventionLine=Are you sure you want to delete this intervention line? +ConfirmCloneIntervention=Are you sure you want to clone this intervention? +NameAndSignatureOfInternalContact=Name and signature of intervening: +NameAndSignatureOfExternalContact=Name and signature of customer: +DocumentModelStandard=Standard document model for interventions +InterventionCardsAndInterventionLines=Interventions and lines of interventions +InterventionClassifyBilled=Classify "Billed" +InterventionClassifyUnBilled=Classify "Unbilled" +InterventionClassifyDone=Classify "Done" +StatusInterInvoiced=Facturado +SendInterventionRef=Submission of intervention %s +SendInterventionByMail=Send intervention by email +InterventionCreatedInDolibarr=Intervention %s created +InterventionValidatedInDolibarr=Intervention %s validated +InterventionModifiedInDolibarr=Intervention %s modified +InterventionClassifiedBilledInDolibarr=Intervention %s set as billed +InterventionClassifiedUnbilledInDolibarr=Intervention %s set as unbilled +InterventionSentByEMail=Intervención %s enviada por e-mail +InterventionDeletedInDolibarr=Intervention %s deleted +InterventionsArea=Interventions area +DraftFichinter=Draft interventions +LastModifiedInterventions=Últimas %s intervencións modificadas +FichinterToProcess=Interventions to process +TypeContact_fichinter_external_CUSTOMER=Following-up customer contact +PrintProductsOnFichinter=Print also lines of type "product" (not only services) on intervention card +PrintProductsOnFichinterDetails=interventions generated from orders +UseServicesDurationOnFichinter=Use services duration for interventions generated from orders +UseDurationOnFichinter=Hides the duration field for intervention records +UseDateWithoutHourOnFichinter=Hides hours and minutes off the date field for intervention records +InterventionStatistics=Statistics of interventions +NbOfinterventions=No. of intervention cards +NumberOfInterventionsByMonth=No. of intervention cards by month (date of validation) +AmountOfInteventionNotIncludedByDefault=Amount of intervention is not included by default into profit (in most cases, timesheets are used to count time spent). Add option PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT to 1 into home-setup-other to include them. +InterId=Intervention id +InterRef=Intervention ref. +InterDateCreation=Date creation intervention +InterDuration=Duration intervention +InterStatus=Status intervention +InterNote=Note intervention +InterLine=Line of intervention +InterLineId=Line id intervention +InterLineDate=Line date intervention +InterLineDuration=Line duration intervention +InterLineDesc=Line description intervention +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/gl_ES/languages.lang b/htdocs/langs/gl_ES/languages.lang new file mode 100644 index 00000000000..2bee3acad18 --- /dev/null +++ b/htdocs/langs/gl_ES/languages.lang @@ -0,0 +1,89 @@ +# Dolibarr language file - Source file is en_US - languages +Language_ar_AR=Árabe +Language_ar_EG=Arabic (Egypt) +Language_ar_SA=Árabe +Language_bn_BD=Bengali +Language_bg_BG=Búlgaro +Language_bs_BA=Bosnio +Language_ca_ES=Catalán +Language_cs_CZ=Checo +Language_da_DA=Danés +Language_da_DK=Danés +Language_de_DE=Alemán +Language_de_AT=Alemán (Austria) +Language_de_CH=German (Switzerland) +Language_el_GR=Grego +Language_el_CY=Greek (Cyprus) +Language_en_AU=Inglés (Australia) +Language_en_CA=English (Canada) +Language_en_GB=Inglés (Reino Unido) +Language_en_IN=Inglés (India) +Language_en_NZ=Inglés (Nova Celandia) +Language_en_SA=Inglés (Arabia Saudita) +Language_en_US=Inglés (Estados Unidos) +Language_en_ZA=Inglés (Sudáfrica) +Language_es_ES=Español +Language_es_AR=Español (Arxentina) +Language_es_BO=Spanish (Bolivia) +Language_es_CL=Spanish (Chile) +Language_es_CO=Spanish (Colombia) +Language_es_DO=Spanish (Dominican Republic) +Language_es_EC=Spanish (Ecuador) +Language_es_HN=Español (Honduras) +Language_es_MX=Español (México) +Language_es_PA=Spanish (Panama) +Language_es_PY=Español (Paraguay) +Language_es_PE=Español (Perú) +Language_es_PR=Español (Porto Rico) +Language_es_UY=Spanish (Uruguay) +Language_es_VE=Spanish (Venezuela) +Language_et_EE=Estoniano +Language_eu_ES=Éuscaro +Language_fa_IR=Persa +Language_fi_FI=Finnish +Language_fr_BE=Francés (Bélxica) +Language_fr_CA=Francés (Canadá) +Language_fr_CH=Francés (Suíza) +Language_fr_FR=Francés +Language_fr_NC=Francés (Nova Caledonia) +Language_fy_NL=Frisian +Language_he_IL=Hebreo +Language_hr_HR=Croata +Language_hu_HU=Húngaro +Language_id_ID=Indonesian +Language_is_IS=Islandés +Language_it_IT=Italiano +Language_ja_JP=Xaponés +Language_ka_GE=Georgian +Language_km_KH=Khmer +Language_kn_IN=Kannada +Language_ko_KR=Coreano +Language_lo_LA=Lao +Language_lt_LT=Lituano +Language_lv_LV=Letón +Language_mk_MK=Macedonio +Language_mn_MN=Mongolian +Language_nb_NO=Noruegués (Bokmål) +Language_nl_BE=Holandés (Bélxica) +Language_nl_NL=Dutch +Language_pl_PL=Polaco +Language_pt_BR=Portugués (Brasil) +Language_pt_PT=Portugués +Language_ro_RO=Romanés +Language_ru_RU=Ruso +Language_ru_UA=Ruso (Ucraína) +Language_tr_TR=Turco +Language_sl_SI=Esloveno +Language_sv_SV=Sueco +Language_sv_SE=Sueco +Language_sq_AL=Albanian +Language_sk_SK=Eslovaco +Language_sr_RS=Serbian +Language_sw_SW=Kiswahili +Language_th_TH=Thai +Language_uk_UA=Ucraíno +Language_uz_UZ=Usbeco +Language_vi_VN=Vietnamita +Language_zh_CN=Chinés +Language_zh_TW=Chinés (tradicional) +Language_bh_MY=Malay diff --git a/htdocs/langs/gl_ES/ldap.lang b/htdocs/langs/gl_ES/ldap.lang new file mode 100644 index 00000000000..2afb9618134 --- /dev/null +++ b/htdocs/langs/gl_ES/ldap.lang @@ -0,0 +1,27 @@ +# Dolibarr language file - Source file is en_US - ldap +YouMustChangePassNextLogon=Password for user %s on the domain %s must be changed. +UserMustChangePassNextLogon=User must change password on the domain %s +LDAPInformationsForThisContact=Information in LDAP database for this contact +LDAPInformationsForThisUser=Information in LDAP database for this user +LDAPInformationsForThisGroup=Information in LDAP database for this group +LDAPInformationsForThisMember=Information in LDAP database for this member +LDAPInformationsForThisMemberType=Information in LDAP database for this member type +LDAPAttributes=LDAP attributes +LDAPCard=LDAP card +LDAPRecordNotFound=Record not found in LDAP database +LDAPUsers=Users in LDAP database +LDAPFieldStatus=Estado +LDAPFieldFirstSubscriptionDate=First subscription date +LDAPFieldFirstSubscriptionAmount=First subscription amount +LDAPFieldLastSubscriptionDate=Latest subscription date +LDAPFieldLastSubscriptionAmount=Latest subscription amount +LDAPFieldSkype=Skype id +LDAPFieldSkypeExample=Example: skypeName +UserSynchronized=User synchronized +GroupSynchronized=Group synchronized +MemberSynchronized=Member synchronized +MemberTypeSynchronized=Member type synchronized +ContactSynchronized=Contact synchronized +ForceSynchronize=Force synchronizing Dolibarr -> LDAP +ErrorFailedToReadLDAP=Failed to read LDAP database. Check LDAP module setup and database accessibility. +PasswordOfUserInLDAP=Password of user in LDAP diff --git a/htdocs/langs/gl_ES/link.lang b/htdocs/langs/gl_ES/link.lang new file mode 100644 index 00000000000..1ffcd41a18b --- /dev/null +++ b/htdocs/langs/gl_ES/link.lang @@ -0,0 +1,11 @@ +# Dolibarr language file - Source file is en_US - languages +LinkANewFile=Link a new file/document +LinkedFiles=Linked files and documents +NoLinkFound=No registered links +LinkComplete=The file has been linked successfully +ErrorFileNotLinked=The file could not be linked +LinkRemoved=The link %s has been removed +ErrorFailedToDeleteLink= Failed to remove link '%s' +ErrorFailedToUpdateLink= Failed to update link '%s' +URLToLink=URL to link +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/gl_ES/loan.lang b/htdocs/langs/gl_ES/loan.lang new file mode 100644 index 00000000000..d260f06419e --- /dev/null +++ b/htdocs/langs/gl_ES/loan.lang @@ -0,0 +1,31 @@ +# Dolibarr language file - Source file is en_US - loan +Loan=Loan +Loans=Crédito +NewLoan=New Loan +ShowLoan=Show Loan +PaymentLoan=Loan payment +LoanPayment=Loan payment +ShowLoanPayment=Show Loan Payment +LoanCapital=Capital +Insurance=Insurance +Interest=Interest +Nbterms=Number of terms +Term=Term +LoanAccountancyCapitalCode=Accounting account capital +LoanAccountancyInsuranceCode=Accounting account insurance +LoanAccountancyInterestCode=Accounting account interest +ConfirmDeleteLoan=Confirm deleting this loan +LoanDeleted=Loan Deleted Successfully +ConfirmPayLoan=Confirm classify paid this loan +LoanPaid=Loan Paid +ListLoanAssociatedProject=List of loan associated with the project +AddLoan=Create loan +FinancialCommitment=Financial commitment +InterestAmount=Interest +CapitalRemain=Capital remain +# Admin +ConfigLoan=Configuration of the module loan +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 diff --git a/htdocs/langs/gl_ES/mailmanspip.lang b/htdocs/langs/gl_ES/mailmanspip.lang new file mode 100644 index 00000000000..bab4b3576b4 --- /dev/null +++ b/htdocs/langs/gl_ES/mailmanspip.lang @@ -0,0 +1,27 @@ +# Dolibarr language file - Source file is en_US - mailmanspip +MailmanSpipSetup=Mailman and SPIP module Setup +MailmanTitle=Mailman mailing list system +TestSubscribe=To test subscription to Mailman lists +TestUnSubscribe=To test unsubscribe from Mailman lists +MailmanCreationSuccess=Subscription test was executed successfully +MailmanDeletionSuccess=Unsubscription test was executed successfully +SynchroMailManEnabled=A Mailman update will be performed +SynchroSpipEnabled=A Spip update will be performed +DescADHERENT_MAILMAN_ADMINPW=Mailman administrator password +DescADHERENT_MAILMAN_URL=URL for Mailman subscriptions +DescADHERENT_MAILMAN_UNSUB_URL=URL for Mailman unsubscriptions +DescADHERENT_MAILMAN_LISTS=List(s) for automatic inscription of new members (separated by a comma) +SPIPTitle=SPIP Content Management System +DescADHERENT_SPIP_SERVEUR=SPIP Server +DescADHERENT_SPIP_DB=SPIP database name +DescADHERENT_SPIP_USER=SPIP database login +DescADHERENT_SPIP_PASS=SPIP database password +AddIntoSpip=Add into SPIP +AddIntoSpipConfirmation=Are you sure you want to add this member into SPIP? +AddIntoSpipError=Failed to add the user in SPIP +DeleteIntoSpip=Remove from SPIP +DeleteIntoSpipConfirmation=Are you sure you want to remove this member from SPIP? +DeleteIntoSpipError=Failed to suppress the user from SPIP +SPIPConnectionFailed=Failed to connect to SPIP +SuccessToAddToMailmanList=%s successfully added to mailman list %s or SPIP database +SuccessToRemoveToMailmanList=%s successfully removed from mailman list %s or SPIP database diff --git a/htdocs/langs/gl_ES/mails.lang b/htdocs/langs/gl_ES/mails.lang new file mode 100644 index 00000000000..d05826326fc --- /dev/null +++ b/htdocs/langs/gl_ES/mails.lang @@ -0,0 +1,170 @@ +# Dolibarr language file - Source file is en_US - mails +Mailing=EMailing +EMailing=EMailing +EMailings=EMailings +AllEMailings=All eMailings +MailCard=EMailing card +MailRecipients=Recipients +MailRecipient=Recipient +MailTitle=Descrición +MailFrom=Remitente +MailErrorsTo=Errors to +MailReply=Reply to +MailTo=Receiver(s) +MailToUsers=To user(s) +MailCC=Copy to +MailToCCUsers=Copy to users(s) +MailCCC=Cached copy to +MailTopic=Email topic +MailText=Mensaxe +MailFile=Attached files +MailMessage=Texto no corpo da mensaxe +SubjectNotIn=Not in Subject +BodyNotIn=Not in Body +ShowEMailing=Show emailing +ListOfEMailings=List of emailings +NewMailing=New emailing +EditMailing=Edit emailing +ResetMailing=Resend emailing +DeleteMailing=Delete emailing +DeleteAMailing=Delete an emailing +PreviewMailing=Preview emailing +CreateMailing=Create emailing +TestMailing=Test email +ValidMailing=Valid emailing +MailingStatusDraft=Borrador +MailingStatusValidated=Validado +MailingStatusSent=Enviado +MailingStatusSentPartialy=Enviado parcialmente +MailingStatusSentCompletely=Envío completado +MailingStatusError=Erro +MailingStatusNotSent=Non enviado +MailSuccessfulySent=Email (from %s to %s) successfully accepted for delivery +MailingSuccessfullyValidated=EMailing successfully validated +MailUnsubcribe=Unsubscribe +MailingStatusNotContact=Don't contact anymore +MailingStatusReadAndUnsubscribe=Read and unsubscribe +ErrorMailRecipientIsEmpty=Email recipient is empty +WarningNoEMailsAdded=No new Email to add to recipient's list. +ConfirmValidMailing=Are you sure you want to validate this emailing? +ConfirmResetMailing=Warning, by re-initializing emailing %s, you will allow the re-sending this email in a bulk mailing. Are you sure you want to do this? +ConfirmDeleteMailing=Are you sure you want to delete this emailing? +NbOfUniqueEMails=No. of unique emails +NbOfEMails=No. of EMails +TotalNbOfDistinctRecipients=Number of distinct recipients +NoTargetYet=No recipients defined yet (Go on tab 'Recipients') +NoRecipientEmail=No recipient email for %s +RemoveRecipient=Remove recipient +YouCanAddYourOwnPredefindedListHere=To create your email selector module, see htdocs/core/modules/mailings/README. +EMailTestSubstitutionReplacedByGenericValues=When using test mode, substitutions variables are replaced by generic values +MailingAddFile=Attach this file +NoAttachedFiles=No attached files +BadEMail=Bad value for Email +ConfirmCloneEMailing=Are you sure you want to clone this emailing? +CloneContent=Clone message +CloneReceivers=Cloner recipients +DateLastSend=Date of latest sending +DateSending=Date sending +SentTo=Sent to %s +MailingStatusRead=Read +YourMailUnsubcribeOK=The email %s is correctly unsubscribe from mailing list +ActivateCheckReadKey=Key used to encrypt URL used for "Read Receipt" and "Unsubscribe" feature +EMailSentToNRecipients=Email sent to %s recipients. +EMailSentForNElements=Email sent for %s elements. +XTargetsAdded=%s recipients added into target list +OnlyPDFattachmentSupported=If the PDF documents were already generated for the objects to send, they will be attached to email. If not, no email will be sent (also, note that only pdf documents are supported as attachments in mass sending in this version). +AllRecipientSelected=The recipients of the %s record selected (if their email is known). +GroupEmails=Group emails +OneEmailPerRecipient=One email per recipient (by default, one email per record selected) +WarningIfYouCheckOneRecipientPerEmail=Warning, if you check this box, it means only one email will be sent for several different record selected, so, if your message contains substitution variables that refers to data of a record, it becomes not possible to replace them. +ResultOfMailSending=Result of mass Email sending +NbSelected=Number selected +NbIgnored=Number ignored +NbSent=Number sent +SentXXXmessages=%s message(s) sent. +ConfirmUnvalidateEmailing=Are you sure you want to change email %s to draft status? +MailingModuleDescContactsWithThirdpartyFilter=Contact with customer filters +MailingModuleDescContactsByCompanyCategory=Contacts by third-party category +MailingModuleDescContactsByCategory=Contacts by categories +MailingModuleDescContactsByFunction=Contacts by position +MailingModuleDescEmailsFromFile=Emails from file +MailingModuleDescEmailsFromUser=Emails input by user +MailingModuleDescDolibarrUsers=Users with Emails +MailingModuleDescThirdPartiesByCategories=Third parties (by categories) +SendingFromWebInterfaceIsNotAllowed=Sending from web interface is not allowed. + +# Libelle des modules de liste de destinataires mailing +LineInFile=Line %s in file +RecipientSelectionModules=Defined requests for recipient's selection +MailSelectedRecipients=Selected recipients +MailingArea=EMailings area +LastMailings=Latest %s emailings +TargetsStatistics=Targets statistics +NbOfCompaniesContacts=Unique contacts/addresses +MailNoChangePossible=Recipients for validated emailing can't be changed +SearchAMailing=Search mailing +SendMailing=Send emailing +SentBy=Sent by +MailingNeedCommand=Sending an emailing can be performed from command line. Ask your server administrator to launch the following command to send the emailing to all recipients: +MailingNeedCommand2=You can however send them online by adding parameter MAILING_LIMIT_SENDBYWEB with value of max number of emails you want to send by session. For this, go on Home - Setup - Other. +ConfirmSendingEmailing=If you want to send emailing directly from this screen, please confirm you are sure you want to send emailing now from your browser ? +LimitSendingEmailing=Note: Sending of emailings from web interface is done in several times for security and timeout reasons, %s recipients at a time for each sending session. +TargetsReset=Clear list +ToClearAllRecipientsClickHere=Click here to clear the recipient list for this emailing +ToAddRecipientsChooseHere=Add recipients by choosing from the lists +NbOfEMailingsReceived=Mass emailings received +NbOfEMailingsSend=Mass emailings sent +IdRecord=ID record +DeliveryReceipt=Delivery Ack. +YouCanUseCommaSeparatorForSeveralRecipients=You can use the comma separator to specify several recipients. +TagCheckMail=Track mail opening +TagUnsubscribe=Unsubscribe link +TagSignature=Signature of sending user +EMailRecipient=Recipient Email +TagMailtoEmail=Recipient Email (including html "mailto:" link) +NoEmailSentBadSenderOrRecipientEmail=No email sent. Bad sender or recipient email. Verify user profile. +# Module Notifications +Notifications=Notificacións +NoNotificationsWillBeSent=No email notifications are planned for this event and company +ANotificationsWillBeSent=1 notification will be sent by email +SomeNotificationsWillBeSent=%s notifications will be sent by email +AddNewNotification=Activate a new email notification target/event +ListOfActiveNotifications=List all active targets/events for email notification +ListOfNotificationsDone=List all email notifications sent +MailSendSetupIs=Configuration of email sending has been setup to '%s'. This mode can't be used to send mass emailing. +MailSendSetupIs2=You must first go, with an admin account, into menu %sHome - Setup - EMails%s to change parameter '%s' to use mode '%s'. With this mode, you can enter setup of the SMTP server provided by your Internet Service Provider and use Mass emailing feature. +MailSendSetupIs3=If you have any questions on how to setup your SMTP server, you can ask to %s. +YouCanAlsoUseSupervisorKeyword=You can also add the keyword __SUPERVISOREMAIL__ to have email being sent to the supervisor of user (works only if an email is defined for this supervisor) +NbOfTargetedContacts=Current number of targeted contact emails +UseFormatFileEmailToTarget=Imported file must have format email;name;firstname;other +UseFormatInputEmailToTarget=Enter a string with format email;name;firstname;other +MailAdvTargetRecipients=Recipients (advanced selection) +AdvTgtTitle=Fill input fields to preselect the third parties or contacts/addresses to target +AdvTgtSearchTextHelp=Use %% as wildcards. For example to find all item like jean, joe, jim, you can input j%%, you can also use ; as separator for value, and use ! for except this value. For example jean;joe;jim%%;!jimo;!jima% will target all jean, joe, start with jim but not jimo and not everything that starts with jima +AdvTgtSearchIntHelp=Use interval to select int or float value +AdvTgtMinVal=Minimum value +AdvTgtMaxVal=Maximum value +AdvTgtSearchDtHelp=Use interval to select date value +AdvTgtStartDt=Start dt. +AdvTgtEndDt=End dt. +AdvTgtTypeOfIncudeHelp=Target Email of third party and email of contact of the third party, or just third-party email or just contact email +AdvTgtTypeOfIncude=Type of targeted email +AdvTgtContactHelp=Use only if you target contact into "Type of targeted email" +AddAll=Add all +RemoveAll=Remove all +ItemsCount=Item(s) +AdvTgtNameTemplate=Filter name +AdvTgtAddContact=Add emails according to criteria +AdvTgtLoadFilter=Load filter +AdvTgtDeleteFilter=Delete filter +AdvTgtSaveFilter=Save filter +AdvTgtCreateFilter=Create filter +AdvTgtOrCreateNewFilter=Name of new filter +NoContactWithCategoryFound=No contact/address with a category found +NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found +OutGoingEmailSetup=Outgoing email setup +InGoingEmailSetup=Incoming email setup +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) +DefaultOutgoingEmailSetup=Default outgoing email setup +Information=Información +ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/gl_ES/main.lang b/htdocs/langs/gl_ES/main.lang new file mode 100644 index 00000000000..1370106591b --- /dev/null +++ b/htdocs/langs/gl_ES/main.lang @@ -0,0 +1,1035 @@ +# Dolibarr language file - Source file is en_US - main +DIRECTION=ltr +# Note for Chinese: +# msungstdlight or cid0ct are for traditional Chinese (traditional does not render with Ubuntu pdf reader) +# stsongstdlight or cid0cs are for simplified Chinese +# To read Chinese pdf with Linux: sudo apt-get install poppler-data +FONTFORPDF=helvetica +FONTSIZEFORPDF=10 +SeparatorDecimal=, +SeparatorThousand=. +FormatDateShort=%d/%m/%Y +FormatDateShortInput=%d/%m/%Y +FormatDateShortJava=dd/MM/yyyy +FormatDateShortJavaInput=dd/MM/yyyy +FormatDateShortJQuery=dd/mm/yy +FormatDateShortJQueryInput=dd/mm/yy +FormatHourShortJQuery=HH:MI +FormatHourShort=%H:%M +FormatHourShortDuration=%H:%M +FormatDateTextShort=%d %b %Y +FormatDateText=%d %B %Y +FormatDateHourShort=%m/%d/%Y %I:%M %p +FormatDateHourSecShort=%m/%d/%Y %I:%M:%S %p +FormatDateHourTextShort=%b %d, %Y, %I:%M %p +FormatDateHourText=%B %d, %Y, %I:%M %p +DatabaseConnection=Conexión á base de datos +NoTemplateDefined=Sen prantilla dispoñible para este tipo de e-mail +AvailableVariables=Variables de substitución dispoñibles +NoTranslation=Sen tradución +Translation=Tradución +EmptySearchString=Enter a non empty search string +NoRecordFound=Non atopáronse rexistros +NoRecordDeleted=Non foi eliminado o rexistro +NotEnoughDataYet=Non hai suficintes datos +NoError=Ningún erro +Error=Erro +Errors=Errores +ErrorFieldRequired=O campo '%s' é obrigatorio +ErrorFieldFormat=O campo '%s' ten un valor incorrecto +ErrorFileDoesNotExists=O arquivo %s non existe +ErrorFailedToOpenFile=Fallou ao abrir o arquivo %s +ErrorCanNotCreateDir=Non pode crear o directorio %s +ErrorCanNotReadDir=Non pode ler o directorio %s +ErrorConstantNotDefined=Parámetro %s non definido +ErrorUnknown=Erro descoñecido +ErrorSQL=Erro de SQL +ErrorLogoFileNotFound=O arquivo do logo '%s' non atópase +ErrorGoToGlobalSetup=Vaia á configuración 'Empresa/Organización' para corrixir isto +ErrorGoToModuleSetup=Vaia á configuración do módulo para corrixir isto +ErrorFailedToSendMail=Erro no envío do e-mail (emisor=%s, destinatario=%s) +ErrorFileNotUploaded=Non foi posible actualizar o arquivo. Revisa que o tamaño non excede o máximo permitido, que hai espazo libre no disco e que non hai xa un arquivo co mesmo nome no directorio. +ErrorInternalErrorDetected=Erro detectado +ErrorWrongHostParameter=Parámetro do servidor erroneo +ErrorYourCountryIsNotDefined=O seu país non está definido. Vaia ao Inicio-Configuración-Edición e cubra novamente o formulario +ErrorRecordIsUsedByChild=Fallo ao suprimir este rexistro. O rexistro está a ser utilizado como pai de alo menos un rexistro fillo. +ErrorWrongValue=Valor incorrecto +ErrorWrongValueForParameterX=Valor incorrecto do parámetro %s +ErrorNoRequestInError=Ningunha petición con erro +ErrorServiceUnavailableTryLater=Service not available at the moment. Try again later. +ErrorDuplicateField=Duplicate value in a unique field +ErrorSomeErrorWereFoundRollbackIsDone=Atopáronse algúns erros. Modificacións desfeitas. +ErrorConfigParameterNotDefined=O parámetro %s no está definido no arquivo de configuración Dolibarr conf.php. +ErrorCantLoadUserFromDolibarrDatabase=Failed to find user %s in Dolibarr database. +ErrorNoVATRateDefinedForSellerCountry=Error, ningún tipo de IVE definido para o país '%s'. +ErrorNoSocialContributionForSellerCountry=Error, no social/fiscal taxes type defined for country '%s'. +ErrorFailedToSaveFile=Error, failed to save file. +ErrorCannotAddThisParentWarehouse=You are trying to add a parent warehouse which is already a child of a existing warehouse +MaxNbOfRecordPerPage=Número máximo de rexistros por páxina +NotAuthorized=Non estás autorizado para facer isto. +SetDate=Fixar data +SelectDate=Seleccione unha data +SeeAlso=Vexa tamén %s +SeeHere=Vexa aquí +ClickHere=Faga clic aquí +Here=Aquí +Apply=Aplicar +BackgroundColorByDefault=Cor de fondo por defecto +FileRenamed=O arquivo foi renomeado correctamente +FileGenerated=O arquivo fo xerado correctamente +FileSaved=O arquivo foi gardado correctamente +FileUploaded=O arquivo subiuse correctamente +FileTransferComplete=Arquivo(s) subidos(s) correctamente +FilesDeleted=Arquivos(s) eliminados correctamente +FileWasNotUploaded=Un arquivo foi seleccionado para xuntalo, pero ainda non foi subido. Faga clic en "Xuntar este arquivo" para subilo. +NbOfEntries=Nº de entradas +GoToWikiHelpPage=Ler a axuda en liña (é preciso acceso a Internet ) +GoToHelpPage=Ler a axuda +RecordSaved=Rexistro gardado +RecordDeleted=Rexistro eliminado +RecordGenerated=Record generated +LevelOfFeature=Nivel de funcións +NotDefined=Non definido +DolibarrInHttpAuthenticationSoPasswordUseless=Dolibarr authentication mode is set to %s in configuration file conf.php.
    This means that the password database is external to Dolibarr, so changing this field may have no effect. +Administrator=Administrador +Undefined=Non definido +PasswordForgotten=¿Esqueceu a súa contrasinal? +NoAccount=¿Sen conta? +SeeAbove=Mencionado anteriormente +HomeArea=Inicio +LastConnexion=Última conexión +PreviousConnexion=Conexión anterior +PreviousValue=Valor previo +ConnectedOnMultiCompany=Conexión á entidade +ConnectedSince=Conectado dende +AuthenticationMode=Modo de autentificación +RequestedUrl=URL solicitada +DatabaseTypeManager=Tipo de xestor de base de datos +RequestLastAccessInError=Último acceso á base de datos con erro na solicitude +ReturnCodeLastAccessInError=Código de retorno de acceso á base de datos con erro para a última petición +InformationLastAccessInError=Información do último erro de petición de acceso de base de datos +DolibarrHasDetectedError=Dolibarr detectou un erro técnico +YouCanSetOptionDolibarrMainProdToZero=Pode ler o arquivo log ou establecer a opción $dolibarr_main_prod a '0' no seu arquivo de configuración para obter mais información. +InformationToHelpDiagnose=Esta información pode ser útil para propstas de diagnóstico (pode configurar a opción $dolibarr_main_prod to '1' para eliminar as notificacións) +MoreInformation=Mais información +TechnicalInformation=Información técnica +TechnicalID=ID Técnica +LineID=Line ID +NotePublic=Nota (pública) +NotePrivate=Nota (privada) +PrecisionUnitIsLimitedToXDecimals=Dolibarr was setup to limit precision of unit prices to %s decimals. +DoTest=Probar +ToFilter=Filtrar +NoFilter=Sen filtro +WarningYouHaveAtLeastOneTaskLate=Warning, you have at least one element that has exceeded the tolerance time. +yes=sí +Yes=Sí +no=non +No=Non +All=Todo +Home=Inicio +Help=Axuda +OnlineHelp=Axuda en liña +PageWiki=Páxina Wiki +MediaBrowser=Navegador de medios +Always=Sempre +Never=Nunca +Under=baixo +Period=Período +PeriodEndDate=Data fin do período +SelectedPeriod=Período seleccionado +PreviousPeriod=Período anterior +Activate=Activar +Activated=Activado +Closed=Pechada +Closed2=Pechada +NotClosed=Non pechado +Enabled=Activado +Enable=Activo +Deprecated=Obsoleto +Disable=Desactivar +Disabled=Desactivado +Add=Engadir +AddLink=Víncular +RemoveLink=Eliminar vínculo +AddToDraft=Engadir a borrador +Update=Actualizar +Close=Pechar +CloseBox=Eliminar panel do seu taboleiro +Confirm=Confirmar +ConfirmSendCardByMail=¿Realmente quere enviar o contido desta ficha por correo a %s? +Delete=Eliminar +Remove=Retirar +Resiliate=Terminar +Cancel=Cancelar +Modify=Modificar +Edit=Editar +Validate=Validar +ValidateAndApprove=Validar e Aprobar +ToValidate=A validar +NotValidated=Non validado +Save=Gardar +SaveAs=Gardar como +SaveAndStay=Save and stay +SaveAndNew=Save and new +TestConnection=Probar a conexión +ToClone=Copiar +ConfirmCloneAsk=Are you sure you want to clone the object %s? +ConfirmClone=Escolla os datos que desexa copiar: +NoCloneOptionsSpecified=Non hai datos definidos para copiar +Of=de +Go=Ir +Run=Lanzar +CopyOf=Copia de +Show=Ver +Hide=Oculto +ShowCardHere=Ver a ficha +Search=Procurar +SearchOf=Procura +SearchMenuShortCut=Ctrl + shift + f +Valid=Validar +Approve=Aprobar +Disapprove=Desaprobar +ReOpen=Reabrir +Upload=Actualizar arquivo +ToLink=Vínculo +Select=Seleccionar +Choose=Escoller +Resize=Redimensionar +ResizeOrCrop=Cambiar o tamaño ou cortar +Recenter=Encadrar +Author=Autor +User=Usuario +Users=Usuarios +Group=Grupo +Groups=Grupos +NoUserGroupDefined=Non hai definido grupo de usuarios +Password=Contrasinal +PasswordRetype=Repetir o teu contrasinal +NoteSomeFeaturesAreDisabled=Ten conta que moitos módulos/funcionalidades foron desactivados nesta demo. +Name=Nome +NameSlashCompany=Name / Company +Person=Persoa +Parameter=Parámetro +Parameters=Parámetros +Value=Valor +PersonalValue=Valor persoalizado +NewObject=Novo %s +NewValue=Novo valor +CurrentValue=Valor actual +Code=Código +Type=Tipo +Language=Idioma +MultiLanguage=Multiidioma +Note=Nota +Title=Título +Label=Etiqueta +RefOrLabel=Ref. ou etiqueta +Info=Log +Family=Familia +Description=Descrición +Designation=Descrición +DescriptionOfLine=Descrición de liña +DateOfLine=Data da liña +DurationOfLine=Permanecia da liña +Model=Prantilla documento +DefaultModel=Prantilla por defecto do documento +Action=Acción +About=Acerca de +Number=Número +NumberByMonth=Número por mes +AmountByMonth=Importe por mes +Numero=Número +Limit=Límite +Limits=Límites +Logout=Desconectar +NoLogoutProcessWithAuthMode=Sen funcionalidades de desconexión co modo de autenticación %s +Connection=Usuario +Setup=Config. +Alert=Alerta +MenuWarnings=Alertas +Previous=Anterior +Next=Seguinte +Cards=Fichas +Card=Ficha +Now=Agora +HourStart=Hora de inicio +Date=Data +DateAndHour=Data e hora +DateToday=Data de hoxe +DateReference=Data de referencia +DateStart=Data de inicio +DateEnd=Data de fin +DateCreation=Data de creación +DateCreationShort=Data creac. +DateModification=Data de modificación +DateModificationShort=Data modif. +DateLastModification=Última data de modificación +DateValidation=Data de validación +DateClosing=Data de peche +DateDue=Data de vencemento +DateValue=Data do valor +DateValueShort=Data do valor +DateOperation=Data da operación +DateOperationShort=Data oper. +DateLimit=Data límite +DateRequest=Data da consulta +DateProcess=Data do proceso +DateBuild=Data xeración do informe +DatePayment=Data de pago +DateApprove=Data de aprobación +DateApprove2=Data de aprobación (segunda aprobación) +RegistrationDate=Data de rexistro +UserCreation=Usuario creador +UserModification=Usuario da modificación +UserValidation=Usuario da validación +UserCreationShort=Usuario Crea. +UserModificationShort=Usuario Modif. +UserValidationShort=Usuario valid. +DurationYear=ano +DurationMonth=mes +DurationWeek=semana +DurationDay=día +DurationYears=anos +DurationMonths=meses +DurationWeeks=semanas +DurationDays=días +Year=Ano +Month=Mes +Week=Semana +WeekShort=Semana +Day=Día +Hour=Hora +Minute=Minuto +Second=Segundo +Years=Anos +Months=Meses +Days=Días +days=días +Hours=Horas +Minutes=Minutos +Seconds=Segundos +Weeks=Semanas +Today=Hoxe +Yesterday=Onte +Tomorrow=Mañá +Morning=Na mañá +Afternoon=Na tarde +Quadri=Trimestre +MonthOfDay=Mes do día +HourShort=H +MinuteShort=min +Rate=Tipo +CurrencyRate=Taxa de conversión de moeda +UseLocalTax=Incluir taxas +Bytes=Bytes +KiloBytes=Kilobytes +MegaBytes=Megabytes +GigaBytes=Gigabytes +TeraBytes=Terabytes +UserAuthor=Usuario da creación +UserModif=Usuario da última actualización +b=b. +Kb=Kb +Mb=Mb +Gb=Gb +Tb=Tb +Cut=Cortar +Copy=Copiar +Paste=Pegar +Default=Por defecto +DefaultValue=Valor por defecto +DefaultValues=Valores/filtros/ordenacións por defecto +Price=Prezo +PriceCurrency=Prezo (moeda) +UnitPrice=Prezo unitario +UnitPriceHT=Prezo base +UnitPriceHTCurrency=Prezo unitario (sen impostos) (moeda) +UnitPriceTTC=Prezo unitario +PriceU=P.U. +PriceUHT=P.U. (rede) +PriceUHTCurrency=P.U. (divisa) +PriceUTTC=P.U. (i.i.) +Amount=Importe +AmountInvoice=Importe factura +AmountInvoiced=Importe facturado +AmountInvoicedHT=Amount invoiced (incl. tax) +AmountInvoicedTTC=Amount invoiced (excl. tax) +AmountPayment=Importe pago +AmountHTShort=Base imp. (e.i.) +AmountTTCShort=Importe (i.i.) +AmountHT=Base impoñible (e.i.) +AmountTTC=Importe total (i.i.) +AmountVAT=Importe IVE +MulticurrencyAlreadyPaid=Xa pago na divisa orixinal +MulticurrencyRemainderToPay=Pendente de pago na divisa orixinal +MulticurrencyPaymentAmount=Importe total na divisa orixinal +MulticurrencyAmountHT=Base impoñible na divisa orixinal (e.i.) +MulticurrencyAmountTTC=Total na divisa orixinal (i.i.) +MulticurrencyAmountVAT=Importe IVE na divisa orixinal +AmountLT1=Importe Imposto 2 +AmountLT2=Importe Imposto 3 +AmountLT1ES=Importe RE +AmountLT2ES=Importe IRPF +AmountTotal=Importe total +AmountAverage=Importe medio +PriceQtyMinHT=Prezo cantidade min. (e.i.) +PriceQtyMinHTCurrency=Prezo cantidade min. (e.i.) (moeda) +Percentage=Porcentaxe +Total=Total +SubTotal=Subtotal +TotalHTShort=Importe (e.i.) +TotalHT100Short=Total 100%% (excl.) +TotalHTShortCurrency=Total (divisa) +TotalTTCShort=Total +TotalHT=Base impoñible +TotalHTforthispage=Total (base impoñible) nesta páxina +Totalforthispage=Total nesta páxina +TotalTTC=Total +TotalTTCToYourCredit=Total a crédito +TotalVAT=Total IVE +TotalVATIN=IGST total +TotalLT1=Total Imposto 2 +TotalLT2=Total Imposto 3 +TotalLT1ES=Total RE +TotalLT2ES=Total IRPF +TotalLT1IN=Total CGST +TotalLT2IN=SGST total +HT=Sen IVE +TTC=IVE incluido +INCVATONLY=I.V.E. inc. +INCT=Inc. todas as taxas +VAT=IVE +VATIN=IGST +VATs=Tasas sobre vendas +VATINs=Impostos IGST +LT1=Vendas imposto RE +LT1Type=Tipo de imposto RE ás vendas +LT2=Vendas imposto IRPF +LT2Type=Imposto IRPF nas vendas +LT1ES=RE +LT2ES=IRPF +LT1IN=CGST +LT2IN=SGST +LT1GC=Additionnal cents +VATRate=Taxa IVE +VATCode=Código taxa IVE +VATNPR=Taxa NPR +DefaultTaxRate=Taxa de imposto por defecto +Average=Media +Sum=Suma +Delta=Diferencia +StatusToPay=To pay +RemainToPay=Resta por pagar +Module=Módulo/Aplicación +Modules=Módulos/Aplicacións +Option=Opción +List=Listaxe +FullList=Listaxe completo +FullConversation=Full conversation +Statistics=Estatísticas +OtherStatistics=Outras estatísticas +Status=Estado +Favorite=Favorito +ShortInfo=Info. +Ref=Ref. +ExternalRef=Ref. externa +RefSupplier=Ref. provedor +RefPayment=Ref. pago +CommercialProposalsShort=Orzamentos +Comment=Comentario +Comments=Comentarios +ActionsToDo=Eventos a realizar +ActionsToDoShort=A realizar +ActionsDoneShort=Realizados +ActionNotApplicable=Non aplicable +ActionRunningNotStarted=Non comezado +ActionRunningShort=En progreso +ActionDoneShort=Terminado +ActionUncomplete=Incompleto +LatestLinkedEvents=Últimos %s eventos vinculados +CompanyFoundation=Empresa/Organización +Accountant=Contable +ContactsForCompany=Contactos deste terceiro +ContactsAddressesForCompany=Contactos/enderezos deste terceiro +AddressesForCompany=Enderezos deste terceiro +ActionsOnCompany=Eventos deste terceiro +ActionsOnContact=Eventos deste contacto/enderezo +ActionsOnContract=Events for this contract +ActionsOnMember=Eventos deste membro +ActionsOnProduct=Eventos deste produto +NActionsLate=%s en atraso +ToDo=A realizar +Completed=Realizado +Running=En progreso +RequestAlreadyDone=Solicitude xa rexistrada +Filter=Filtro +FilterOnInto=Procurar critero '%s' nas filas %s +RemoveFilter=Eliminar filtro +ChartGenerated=Gráficos xerados +ChartNotGenerated=Gráfico non xerado +GeneratedOn=Xerado sobre %s +Generate=Xerar +Duration=Permanencia +TotalDuration=Permanencia total +Summary=Resumo +DolibarrStateBoard=Estatísticas da base de datos +DolibarrWorkBoard=Items pendentes +NoOpenedElementToProcess=No open element to process +Available=Dispoñible +NotYetAvailable=Aínda non dispoñible +NotAvailable=Non dispoñible +Categories=Etiquetas/categorías +Category=Etiqueta/categoría +By=Por +From=De +FromLocation=De +to=a +To=a +and=e +or=ou +Other=Outro +Others=Outros +OtherInformations=Outra información +Quantity=Cantidade +Qty=Cant. +ChangedBy=Modificado por +ApprovedBy=Aprobado por +ApprovedBy2=Aprobado por (segunda aprobación) +Approved=Aprobado +Refused=Rexeitado +ReCalculate=Recalcular +ResultKo=Erro +Reporting=Informe +Reportings=Informes +Draft=Borrador +Drafts=Borradores +StatusInterInvoiced=Invoiced +Validated=Validado +Opened=Activo +OpenAll=Open (All) +ClosedAll=Closed (All) +New=Novo +Discount=Desconto +Unknown=Descoñecido +General=Xeral +Size=Tamaño +OriginalSize=Tamaño orixinal +Received=Recibido +Paid=Pago +Topic=Asunto +ByCompanies=Por terceiros +ByUsers=Por usuario +Links=Vinculos +Link=Vínculo +Rejects=Devolucións +Preview=Vista previa +NextStep=Seguinte paso +Datas=Datos +None=Nada +NoneF=Ningunha +NoneOrSeveral=Ningún ou varios +Late=Atraso +LateDesc=Un rexistro está definido como atrasado segundo a configuración do sistema no menú menú Inicio - Configuración - Alertas. +NoItemLate=Sen items en atraso +Photo=Foto +Photos=Fotos +AddPhoto=Engadir foto +DeletePicture=Eliminar imaxe +ConfirmDeletePicture=¿Confirma a eliminación da imaxe? +Login=Login +LoginEmail=Login (e-mail) +LoginOrEmail=Login ou e-mail +CurrentLogin=Login actual +EnterLoginDetail=Introduza os datos de inicio de sesión +January=xaneiro +February=febreiro +March=marzo +April=abril +May=maio +June=xuño +July=xullo +August=agosto +September=setembro +October=outubro +November=novembro +December=decembro +Month01=xaneiro +Month02=febreiro +Month03=marzo +Month04=abril +Month05=maio +Month06=xuño +Month07=xullo +Month08=agosto +Month09=setembro +Month10=ocutubro +Month11=novembro +Month12=decembro +MonthShort01=xan. +MonthShort02=feb. +MonthShort03=mar. +MonthShort04=abr. +MonthShort05=ma. +MonthShort06=xun. +MonthShort07=xul. +MonthShort08=ago. +MonthShort09=sep. +MonthShort10=out. +MonthShort11=nov. +MonthShort12=dec. +MonthVeryShort01=X +MonthVeryShort02=F +MonthVeryShort03=M +MonthVeryShort04=A +MonthVeryShort05=M +MonthVeryShort06=X +MonthVeryShort07=X +MonthVeryShort08=A +MonthVeryShort09=S +MonthVeryShort10=O +MonthVeryShort11=N +MonthVeryShort12=D +AttachedFiles=Arquivos e documentos a xuntar +JoinMainDoc=Engadir ao documento principal +DateFormatYYYYMM=YYYY-MM +DateFormatYYYYMMDD=YYYY-MM-DD +DateFormatYYYYMMDDHHMM=YYYY-MM-DD HH:SS +ReportName=Nome do informe +ReportPeriod=Período do informe +ReportDescription=Descrición +Report=Informe +Keyword=Clave +Origin=Orixe +Legend=Lenda +Fill=Encher +Reset=Baleirar +File=Arquivo +Files=Arquivos +NotAllowed=Non autorizado +ReadPermissionNotAllowed=Sen permisos de lectura +AmountInCurrency=Importes en %s moeda +Example=Exemplo +Examples=Exemplos +NoExample=Sen exemplo +FindBug=Reportar un erro +NbOfThirdParties=Número de terceros +NbOfLines=Números de liñas +NbOfObjects=Número de obxectos +NbOfObjectReferers=Nª de items relacionados +Referers=Items relacionados +TotalQuantity=Cantidade total +DateFromTo=De %s a %s +DateFrom=A partires de %s +DateUntil=Ata %s +Check=Verificar +Uncheck=Eliminar verificación +Internal=Interno +External=Externo +Internals=Internos +Externals=Externos +Warning=Alerta +Warnings=Alertas +BuildDoc=Xerar o documento +Entity=Entidade +Entities=Entidades +CustomerPreview=Historial cliente +SupplierPreview=Historial provedor +ShowCustomerPreview=Amosar historial do cliente +ShowSupplierPreview=Amosar historial do provedor +RefCustomer=Ref. cliente +Currency=Moeda +InfoAdmin=Información para os administradores +Undo=Anular +Redo=Facer de novo +ExpandAll=Expandir todo +UndoExpandAll=Contraer todo +SeeAll=Ver todo +Reason=Razón +FeatureNotYetSupported=Funcionalidade ainda non soportada +CloseWindow=Pechar xanela +Response=Resposta +Priority=Prioridade +SendByMail=Enviar por e-mail +MailSentBy=E-mail enviado por +TextUsedInTheMessageBody=Texto no corpo da mensaxe +SendAcknowledgementByMail=Enviar correo de confirmación +SendMail=Enviar correol +Email=E-mail +NoEMail=Sen e-mail +AlreadyRead=Xá lido +NotRead=Non lido +NoMobilePhone=Sen teléfono móbil +Owner=Propietario +FollowingConstantsWillBeSubstituted=As seguintes constantes serán substituidas polo seu valor correspondente. +Refresh=Refrescar +BackToList=Voltar á listaxe +GoBack=Voltar atrás +CanBeModifiedIfOk=Pode modificarse se é valido +CanBeModifiedIfKo=Pode modificarse se non é valido +ValueIsValid=Valor válido +ValueIsNotValid=Valor non válido +RecordCreatedSuccessfully=Rexistro creado correctamente +RecordModifiedSuccessfully=Rexistro modificado correctamente +RecordsModified=%s rexistros modificados +RecordsDeleted=%s rexistros eliminados +RecordsGenerated=%s rexistro(s) xerado(s) +AutomaticCode=Creación automática de código +FeatureDisabled=Función desactivada +MoveBox=Mover panel +Offered=Oferta +NotEnoughPermissions=Non ten permisos para esta acción +SessionName=Nome sesión +Method=Método +Receive=Recepción +CompleteOrNoMoreReceptionExpected=Completado ou no agárdase mais +ExpectedValue=Valor agardado +PartialWoman=Parcial +TotalWoman=Total +NeverReceived=Nunca recibido +Canceled=Cancelado +YouCanChangeValuesForThisListFromDictionarySetup=Pode cambiar os valores desta listaxe no menú Configuración->Diccionarios +YouCanChangeValuesForThisListFrom=Pode cambiar os valores desta listaxe dende o menú %s +YouCanSetDefaultValueInModuleSetup=Pode establecer o valor predeterminado que é utilízado cando crease un novo rexistro na configuración do módulo +Color=Cor +Documents=Documentos vinculados +Documents2=Documentos +UploadDisabled=Subida desactivada +MenuAccountancy=Contabilidade +MenuECM=Documentos +MenuAWStats=AWStats +MenuMembers=Membros +MenuAgendaGoogle=Axenda Google +ThisLimitIsDefinedInSetup=Límite Dolibarr (Menú Inicio-configuración-seguridade): %s Kb, PHP limit: %s Kb +NoFileFound=Non hai documentos gardados neste directorio +CurrentUserLanguage=Idioma actual +CurrentTheme=Tema actual +CurrentMenuManager=Xestor menú actual +Browser=Navegador +Layout=Presentación +Screen=Pantalla +DisabledModules=Módulos desactivados +For=Para +ForCustomer=Para cliente +Signature=Sinatura +DateOfSignature=Data da sinatura +HidePassword=Amosar comando con contrasinal oculta +UnHidePassword=Amosar comando con contrasinal á vista +Root=Raíz +RootOfMedias=Root of public medias (/medias) +Informations=Información +Page=Páxina +Notes=Notas +AddNewLine=Engadir nova liña +AddFile=Engadir arquivo +FreeZone=Sen produtos/servizos predefinidos +FreeLineOfType=Entrada libre, tipo: +CloneMainAttributes=Clonar o obxecto con estes atributos principais +ReGeneratePDF=Xerar de novo o PDF +PDFMerge=Fusión PDF +Merge=Fusión +DocumentModelStandardPDF=Modelo PDF estándard +PrintContentArea=Amosar páxina de impresión da zona central +MenuManager=Xestor de menú +WarningYouAreInMaintenanceMode=Atención, está en modo mantemento, só o login %s está autorizado para utilizar a aplicación neste momento. +CoreErrorTitle=Erro de sistema +CoreErrorMessage=O sentimos, pero aconteceu un erro. Póñase en contacto co administrador do sistema para comprobar os rexistros ou desactive $dolibarr_main_prod=1 para obter mais información. +CreditCard=Tarxeta de crédito +ValidatePayment=Validar pago +CreditOrDebitCard=Tarxeta de crédito ou débito +FieldsWithAreMandatory=Os campos marcados cun %s son obrigatorios +FieldsWithIsForPublic=Os campos marcados co %s amosaránse na lista pública de membros. Se non desexa velos, desactive a caixa "público". +AccordingToGeoIPDatabase=(obtido por conversión GeoIP) +Line=Líña +NotSupported=Non soportado +RequiredField=Campo obrigatorio +Result=Resultado +ToTest=Probar +ValidateBefore=Item must be validated before using this feature +Visibility=Visibilidade +Totalizable=Totalizable +TotalizableDesc=Este campo é totalizable nas listaxes +Private=Privado +Hidden=Caché +Resources=Recursos +Source=Orixe +Prefix=Prefixo +Before=Antes +After=Despois +IPAddress=Enderezo IP +Frequency=Frecuencia +IM=Mensaxería instantánea +NewAttribute=Novo atributo +AttributeCode=Código +URLPhoto=Url da foto/logo +SetLinkToAnotherThirdParty=Vincular a outro terceiro +LinkTo=Vincular a +LinkToProposal=Vincular a pedido +LinkToOrder=Vincular a pedido +LinkToInvoice=Vincular a factura +LinkToTemplateInvoice=Vincular a prantilla de factura +LinkToSupplierOrder=Vincular a pedido a provedor +LinkToSupplierProposal=Vincular a orzamento de provedor +LinkToSupplierInvoice=Vincular a factura de provedor +LinkToContract=Vincular a contrato +LinkToIntervention=Vincular a intervención +LinkToTicket=Link to ticket +CreateDraft=Crear borrador +SetToDraft=Voltar a borrador +ClickToEdit=Clic para editar +ClickToRefresh=Clic para actualizar +EditWithEditor=Editar con CKEditor +EditWithTextEditor=Editar con editor de texto +EditHTMLSource=Editar código HTML +ObjectDeleted=Obxecto %s eliminado +ByCountry=Por país +ByTown=Por poboación +ByDate=Por data +ByMonthYear=Por mes/ano +ByYear=Por ano +ByMonth=Por mes +ByDay=Por día +BySalesRepresentative=Por comercial +LinkedToSpecificUsers=Vinculado a un contacto de usuario particular +NoResults=Ningún resultado +AdminTools=Ferramentas de administración +SystemTools=Utilidades do sistema +ModulesSystemTools=Utilidades de módulos +Test=Proba +Element=Elemento +NoPhotoYet=Ainda non ten fotografía dispoñible +Dashboard=Taboleiro +MyDashboard=Meu taboleiro +Deductible=Deducible +from=de +toward=cara a +Access=Acceso +SelectAction=Seleccione acción +SelectTargetUser=Seleccionar usuario/empregado de destino +HelpCopyToClipboard=Use Ctrl+C para copiar ao portapapeis +SaveUploadedFileWithMask=Gardar o arquivo no servidor co nome "%s" (senón "%s") +OriginFileName=Nome do arquivo orixe +SetDemandReason=Definir orixe +SetBankAccount=Definir conta bancaria +AccountCurrency=Moeda da conta +ViewPrivateNote=Ver notas +XMoreLines=%s líña(s) ocultas +ShowMoreLines=Amosar mais/menos liñas +PublicUrl=URL pública +AddBox=Engadir caixa +SelectElementAndClick=Seleccione un elemento e faga clic %s +PrintFile=Imprimir Arquivo %s +ShowTransaction=Amosar rexistro na conta bancaria +ShowIntervention=Amosar intervención +ShowContract=Amosar contrato +GoIntoSetupToChangeLogo=Vaia a Inicio->Configuración->Empresa/Institución para cambiar o logo ou vaia a Inicio->Configuración->Entorno para ocultalo +Deny=Denegar +Denied=Denegada +ListOf=Lista de %s +ListOfTemplates=Listaxe de prantillas +Gender=Sexo +Genderman=Home +Genderwoman=Muller +ViewList=Vista de listaxe +ViewGantt=Gantt view +ViewKanban=Kanban view +Mandatory=Obrigatorio +Hello=Ola +GoodBye=Adeus +Sincerely=Atentamente +ConfirmDeleteObject=Are you sure you want to delete this object? +DeleteLine=Eliminación de liña +ConfirmDeleteLine=¿Está certo de querer eliminar esta liña? +NoPDFAvailableForDocGenAmongChecked=Sen PDF dispoñibles para a xeración de documentos entre os rexistros seleccionados +TooManyRecordForMassAction=Demasiados rexistros seleccionados para a acción masiva. A acción está restrinxida a unha listaxe de %s rexistros. +NoRecordSelected=Sen rexistros seleccionados +MassFilesArea=Área de arquivos xerados por accións masivas +ShowTempMassFilesArea=Amosar área de arquivos xerados por accións masivas +ConfirmMassDeletion=Confirmación borrado masivo +ConfirmMassDeletionQuestion=¿Estás certo de querer eliminar os %s rexistro(s) seleccionado(s)? +RelatedObjects=Obxectos relacionados +ClassifyBilled=Clasificar facturado +ClassifyUnbilled=Clasificar non facturado +Progress=Progreso +ProgressShort=Progr. +FrontOffice=Front office +BackOffice=Back office +Submit=Submit +View=Ver +Export=Exportar +Exports=Exportacións +ExportFilteredList=Listaxe filtrado de exportación +ExportList=Listaxe de exportación +ExportOptions=Opcións de exportación +IncludeDocsAlreadyExported=Include docs already exported +ExportOfPiecesAlreadyExportedIsEnable=Export of pieces already exported is enable +ExportOfPiecesAlreadyExportedIsDisable=Export of pieces already exported is disable +AllExportedMovementsWereRecordedAsExported=All exported movements were recorded as exported +NotAllExportedMovementsCouldBeRecordedAsExported=Not all exported movements could be recorded as exported +Miscellaneous=Miscelánea +Calendar=Calendario +GroupBy=Agrupado por... +ViewFlatList=Ver listaxe plana +RemoveString=Eliminar cadea '%s' +SomeTranslationAreUncomplete=Algúns dos idiomas ofrecidos poden estar parcialmente traducidos ou poden conter erros. Axuda a corrixir teu idioma rexistrándose en http://transifex.com/projects/p/dolibarr/. +DirectDownloadLink=Enlace de descarga directa (público/externo) +DirectDownloadInternalLink=Enlace de descarga directa (precisa estar rexistrado e precisa permisos) +Download=Descargar +DownloadDocument=Descargar o documento +ActualizeCurrency=Actualizar o tipo de cambio +Fiscalyear=Ano fiscal +ModuleBuilder=Module and Application Builder +SetMultiCurrencyCode=Establecer moeda +BulkActions=Accións masivas +ClickToShowHelp=Faga clic para amosar a axuda sobre ferramentas +WebSite=Sitio web +WebSites=Sitios web +WebSiteAccounts=Contas do sitio web +ExpenseReport=Informe de gasto +ExpenseReports=Informes de gastos +HR=RRHH +HRAndBank=RRHH e bancos +AutomaticallyCalculated=Calculado automáticamente +TitleSetToDraft=De volta ao borrador +ConfirmSetToDraft=¿Está certo de querer voltar ao estado Borrador? +ImportId=ID de importación +Events=Eventos +EMailTemplates=Prantillas E-mail +FileNotShared=Arquivo non compartido ao público externo +Project=Proxecto +Projects=Proxectos +LeadOrProject=Oportunidade | Proxecto +LeadsOrProjects=Oportunidades | Proxectos +Lead=Oportunidade +Leads=Oportunidades +ListOpenLeads=Listaxe oportunidades abertas +ListOpenProjects=Listaxe proxectos abertos +NewLeadOrProject=Nova oportunidade ou proxecto +Rights=Permisos +LineNb=Líña no. +IncotermLabel=Incoterms +TabLetteringCustomer=Letras do cliente +TabLetteringSupplier=Letras do provedor +Monday=lúns +Tuesday=martes +Wednesday=mércores +Thursday=xoves +Friday=venres +Saturday=sábado +Sunday=domingo +MondayMin=Lu +TuesdayMin=Ma +WednesdayMin=Mi +ThursdayMin=Xo +FridayMin=Ve +SaturdayMin=Sa +SundayMin=Do +Day1=lúns +Day2=martes +Day3=mércores +Day4=xoves +Day5=venres +Day6=sábado +Day0=domingo +ShortMonday=L +ShortTuesday=M +ShortWednesday=Me +ShortThursday=X +ShortFriday=V +ShortSaturday=S +ShortSunday=D +SelectMailModel=Seleccione unha prantilla de correo +SetRef=Establecer ref +Select2ResultFoundUseArrows=Algúns resultados atopados. Use as frechas para seleccionar. +Select2NotFound=Non atopáronse resultados +Select2Enter=Introducir +Select2MoreCharacter=ou mais caracteres +Select2MoreCharacters=ou mais caracteres +Select2MoreCharactersMore=Sintaxe de procura:
    | O (a|b)
    * Calquera carácter (a*b)
    ^ Comeza con (^ab)
    $ Remata con (ab$)
    +Select2LoadingMoreResults=Cargando mais resultados... +Select2SearchInProgress=Procura en progreso... +SearchIntoThirdparties=Terceiros +SearchIntoContacts=Contactos +SearchIntoMembers=Membros +SearchIntoUsers=Usuarios +SearchIntoProductsOrServices=Produtos ou servizos +SearchIntoProjects=Proxectos +SearchIntoMO=Manufacturing Orders +SearchIntoTasks=Tarefas +SearchIntoCustomerInvoices=Facturas a clientes +SearchIntoSupplierInvoices=Facturas provedor +SearchIntoCustomerOrders=Pedidos de clientes +SearchIntoSupplierOrders=Pedidos a provedor +SearchIntoCustomerProposals=Orzamentos +SearchIntoSupplierProposals=Orzamentos de provedor +SearchIntoInterventions=Intervencións +SearchIntoContracts=Contratos +SearchIntoCustomerShipments=Envíos a clientes +SearchIntoExpenseReports=Informes de gastos +SearchIntoLeaves=Día libre +SearchIntoTickets=Tickets +CommentLink=Comentarios +NbComments=Número de comentarios +CommentPage=Espazo de comentarios +CommentAdded=Comentario engadido +CommentDeleted=Comentario borrado +Everybody=Proxecto compartido +PayedBy=Pagado por +PayedTo=Pagado a +Monthly=Mensual +Quarterly=Trimestral +Annual=Anual +Local=Local +Remote=Remoto +LocalAndRemote=Local e remoto +KeyboardShortcut=Atallo de teclado +AssignedTo=Asignada a +Deletedraft=Eliminar borrador +ConfirmMassDraftDeletion=Confirmación de borrado en masa +FileSharedViaALink=Arquivo compartido ao través dun vínculo +SelectAThirdPartyFirst=Selecciona un terceiro antes... +YouAreCurrentlyInSandboxMode=Estás actualmente no modo %s "sandbox" +Inventory=Inventario +AnalyticCode=Analytic code +TMenuMRP=MRP +ShowMoreInfos=Show More Infos +NoFilesUploadedYet=Please upload a document first +SeePrivateNote=See private note +PaymentInformation=Payment information +ValidFrom=Valid from +ValidUntil=Valid until +NoRecordedUsers=No users +ToClose=To close +ToProcess=A procesar +ToApprove=To approve +GlobalOpenedElemView=Global view +NoArticlesFoundForTheKeyword=No article found for the keyword '%s' +NoArticlesFoundForTheCategory=No article found for the category +ToAcceptRefuse=To accept | refuse +ContactDefault_agenda=Evento +ContactDefault_commande=Pedido +ContactDefault_contrat=Contract +ContactDefault_facture=Invoice +ContactDefault_fichinter=Intervention +ContactDefault_invoice_supplier=Supplier Invoice +ContactDefault_order_supplier=Purchase Order +ContactDefault_project=Proxecto +ContactDefault_project_task=Tarefa +ContactDefault_propal=Orzamento +ContactDefault_supplier_proposal=Supplier Proposal +ContactDefault_ticket=Ticket +ContactAddedAutomatically=Contact added from contact thirdparty roles +More=More +ShowDetails=Show details +CustomReports=Custom reports +StatisticsOn=Statistics on +SelectYourGraphOptionsFirst=Select your graph options to build a graph +Measures=Measures +XAxis=X-Axis +YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? +ShowOtherLanguages=Show other languages +SwitchInEditModeToAddTranslation=Switch in edit mode to add translations for this language +NotUsedForThisCustomer=Not used for this customer diff --git a/htdocs/langs/gl_ES/margins.lang b/htdocs/langs/gl_ES/margins.lang new file mode 100644 index 00000000000..cde55c81ae7 --- /dev/null +++ b/htdocs/langs/gl_ES/margins.lang @@ -0,0 +1,45 @@ +# Dolibarr language file - Source file is en_US - marges + +Margin=Margin +Margins=Margins +TotalMargin=Total Margin +MarginOnProducts=Margin / Products +MarginOnServices=Margin / Services +MarginRate=Margin rate +MarkRate=Mark rate +DisplayMarginRates=Display margin rates +DisplayMarkRates=Display mark rates +InputPrice=Input price +margin=Profit margins management +margesSetup=Profit margins management setup +MarginDetails=Margin details +ProductMargins=Product margins +CustomerMargins=Customer margins +SalesRepresentativeMargins=Sales representative margins +ContactOfInvoice=Contact of invoice +UserMargins=User margins +ProductService=Produto ou servizo +AllProducts=All products and services +ChooseProduct/Service=Choose product or service +ForceBuyingPriceIfNull=Force buying/cost price to selling price if not defined +ForceBuyingPriceIfNullDetails=If buying/cost price not defined, and this option "ON", margin will be zero on line (buying/cost price = selling price), otherwise ("OFF"), marge will be equal to suggested default. +MARGIN_METHODE_FOR_DISCOUNT=Margin method for global discounts +UseDiscountAsProduct=As a product +UseDiscountAsService=As a service +UseDiscountOnTotal=On subtotal +MARGIN_METHODE_FOR_DISCOUNT_DETAILS=Defines if a global discount is treated as a product, a service, or only on subtotal for margin calculation. +MARGIN_TYPE=Buying/Cost price suggested by default for margin calculation +MargeType1=Margin on Best vendor price +MargeType2=Margin on Weighted Average Price (WAP) +MargeType3=Margin on Cost Price +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=Cost price +UnitCharges=Unit charges +Charges=Charges +AgentContactType=Commercial agent contact type +AgentContactTypeDetails=Define what contact type (linked on invoices) will be used for margin report per contact/address. Note that reading statistics on a contact is not reliable since in most cases the contact may not be defined explicitely on the invoices. +rateMustBeNumeric=Rate must be a numeric value +markRateShouldBeLesserThan100=Mark rate should be lower than 100 +ShowMarginInfos=Show margin infos +CheckMargins=Margins detail +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/gl_ES/members.lang b/htdocs/langs/gl_ES/members.lang new file mode 100644 index 00000000000..cba81a285c5 --- /dev/null +++ b/htdocs/langs/gl_ES/members.lang @@ -0,0 +1,204 @@ +# Dolibarr language file - Source file is en_US - members +MembersArea=Members area +MemberCard=Member card +SubscriptionCard=Subscription card +Member=Member +Members=Membros +ShowMember=Show member card +UserNotLinkedToMember=User not linked to a member +ThirdpartyNotLinkedToMember=Third party not linked to a member +MembersTickets=Members Tickets +FundationMembers=Foundation members +ListOfValidatedPublicMembers=List of validated public members +ErrorThisMemberIsNotPublic=This member is not public +ErrorMemberIsAlreadyLinkedToThisThirdParty=Another member (name: %s, login: %s) is already linked to a third party %s. Remove this link first because a third party can't be linked to only a member (and vice versa). +ErrorUserPermissionAllowsToLinksToItselfOnly=For security reasons, you must be granted permissions to edit all users to be able to link a member to a user that is not yours. +SetLinkToUser=Link to a Dolibarr user +SetLinkToThirdParty=Link to a Dolibarr third party +MembersCards=Members business cards +MembersList=List of members +MembersListToValid=List of draft members (to be validated) +MembersListValid=List of valid members +MembersListUpToDate=List of valid members with up to date subscription +MembersListNotUpToDate=List of valid members with subscription out of date +MembersListResiliated=List of terminated members +MembersListQualified=List of qualified members +MenuMembersToValidate=Draft members +MenuMembersValidated=Validated members +MenuMembersUpToDate=Up to date members +MenuMembersNotUpToDate=Out of date members +MenuMembersResiliated=Terminated members +MembersWithSubscriptionToReceive=Members with subscription to receive +MembersWithSubscriptionToReceiveShort=Subscription to receive +DateSubscription=Subscription date +DateEndSubscription=Subscription end date +EndSubscription=End subscription +SubscriptionId=Subscription id +MemberId=Member id +NewMember=New member +MemberType=Member type +MemberTypeId=Member type id +MemberTypeLabel=Member type label +MembersTypes=Tipos de membros +MemberStatusDraft=Borrador (é preciso validar) +MemberStatusDraftShort=Borrador +MemberStatusActive=Validated (waiting subscription) +MemberStatusActiveShort=Validado +MemberStatusActiveLate=Subscription expired +MemberStatusActiveLateShort=Expired +MemberStatusPaid=Subscription up to date +MemberStatusPaidShort=Up to date +MemberStatusResiliated=Terminated member +MemberStatusResiliatedShort=Terminated +MembersStatusToValid=Draft members +MembersStatusResiliated=Terminated members +MemberStatusNoSubscription=Validated (no subscription needed) +MemberStatusNoSubscriptionShort=Validado +SubscriptionNotNeeded=No subscription needed +NewCotisation=New contribution +PaymentSubscription=New contribution payment +SubscriptionEndDate=Subscription's end date +MembersTypeSetup=Members type setup +MemberTypeModified=Member type modified +DeleteAMemberType=Delete a member type +ConfirmDeleteMemberType=Are you sure you want to delete this member type? +MemberTypeDeleted=Member type deleted +MemberTypeCanNotBeDeleted=Member type can not be deleted +NewSubscription=New subscription +NewSubscriptionDesc=This form allows you to record your subscription as a new member of the foundation. If you want to renew your subscription (if already a member), please contact foundation board instead by email %s. +Subscription=Subscription +Subscriptions=Subscriptions +SubscriptionLate=Atraso +SubscriptionNotReceived=Subscription never received +ListOfSubscriptions=List of subscriptions +SendCardByMail=Send card by email +AddMember=Create member +NoTypeDefinedGoToSetup=No member types defined. Go to menu "Members types" +NewMemberType=New member type +WelcomeEMail=Welcome email +SubscriptionRequired=Subscription required +DeleteType=Eliminar +VoteAllowed=Vote allowed +Physical=Physical +Moral=Moral +MorPhy=Moral/Physical +Reenable=Reenable +ResiliateMember=Terminate a member +ConfirmResiliateMember=Are you sure you want to terminate this member? +DeleteMember=Delete a member +ConfirmDeleteMember=Are you sure you want to delete this member (Deleting a member will delete all his subscriptions)? +DeleteSubscription=Delete a subscription +ConfirmDeleteSubscription=Are you sure you want to delete this subscription? +Filehtpasswd=htpasswd file +ValidateMember=Validate a member +ConfirmValidateMember=Are you sure you want to validate this member? +FollowingLinksArePublic=The following links are open pages not protected by any Dolibarr permission. They are not formatted pages, provided as example to show how to list members database. +PublicMemberList=Public member list +BlankSubscriptionForm=Public self-subscription form +BlankSubscriptionFormDesc=Dolibarr can provide you a public URL/website to allow external visitors to ask to subscribe to the foundation. If an online payment module is enabled, a payment form may also be automatically provided. +EnablePublicSubscriptionForm=Enable the public website with self-subscription form +ForceMemberType=Force the member type +ExportDataset_member_1=Members and subscriptions +ImportDataset_member_1=Membros +LastMembersModified=Latest %s modified members +LastSubscriptionsModified=Latest %s modified subscriptions +String=String +Text=Text +Int=Int +DateAndTime=Date and time +PublicMemberCard=Member public card +SubscriptionNotRecorded=Subscription not recorded +AddSubscription=Create subscription +ShowSubscription=Show subscription +# Label of email templates +SendingAnEMailToMember=Sending information email to member +SendingEmailOnAutoSubscription=Sending email on auto registration +SendingEmailOnMemberValidation=Sending email on new member validation +SendingEmailOnNewSubscription=Sending email on new subscription +SendingReminderForExpiredSubscription=Sending reminder for expired subscriptions +SendingEmailOnCancelation=Sending email on cancelation +# Topic of email templates +YourMembershipRequestWasReceived=Your membership was received. +YourMembershipWasValidated=Your membership was validated +YourSubscriptionWasRecorded=Your new subscription was recorded +SubscriptionReminderEmail=Subscription reminder +YourMembershipWasCanceled=Your membership was canceled +CardContent=Content of your member card +# Text of email templates +ThisIsContentOfYourMembershipRequestWasReceived=We want to let you know that your membership request was received.

    +ThisIsContentOfYourMembershipWasValidated=We want to let you know that your membership was validated with the following information:

    +ThisIsContentOfYourSubscriptionWasRecorded=We want to let you know that your new subscription was recorded.

    +ThisIsContentOfSubscriptionReminderEmail=We want to let you know that your subscription is about to expire or has already expired (__MEMBER_LAST_SUBSCRIPTION_DATE_END__). We hope you will renew it.

    +ThisIsContentOfYourCard=This is a summary of the information we have about you. Please contact us if anything is incorrect.

    +DescADHERENT_AUTOREGISTER_NOTIF_MAIL_SUBJECT=Subject of the notification email received in case of auto-inscription of a guest +DescADHERENT_AUTOREGISTER_NOTIF_MAIL=Content of the notification email received in case of auto-inscription of a guest +DescADHERENT_EMAIL_TEMPLATE_AUTOREGISTER=Email template to use to send email to a member on member autosubscription +DescADHERENT_EMAIL_TEMPLATE_MEMBER_VALIDATION=Email template to use to send email to a member on member validation +DescADHERENT_EMAIL_TEMPLATE_SUBSCRIPTION=Email template to use to send email to a member on new subscription recording +DescADHERENT_EMAIL_TEMPLATE_REMIND_EXPIRATION=Email template to use to send email reminder when subscription is about to expire +DescADHERENT_EMAIL_TEMPLATE_CANCELATION=Email template to use to send email to a member on member cancelation +DescADHERENT_MAIL_FROM=Sender Email for automatic emails +DescADHERENT_ETIQUETTE_TYPE=Format of labels page +DescADHERENT_ETIQUETTE_TEXT=Text printed on member address sheets +DescADHERENT_CARD_TYPE=Format of cards page +DescADHERENT_CARD_HEADER_TEXT=Text printed on top of member cards +DescADHERENT_CARD_TEXT=Text printed on member cards (align on left) +DescADHERENT_CARD_TEXT_RIGHT=Text printed on member cards (align on right) +DescADHERENT_CARD_FOOTER_TEXT=Text printed on bottom of member cards +ShowTypeCard=Show type '%s' +HTPasswordExport=htpassword file generation +NoThirdPartyAssociatedToMember=No third party associated to this member +MembersAndSubscriptions= Members and Subscriptions +MoreActions=Complementary action on recording +MoreActionsOnSubscription=Complementary action, suggested by default when recording a subscription +MoreActionBankDirect=Create a direct entry on bank account +MoreActionBankViaInvoice=Create an invoice, and a payment on bank account +MoreActionInvoiceOnly=Create an invoice with no payment +LinkToGeneratedPages=Generate visit cards +LinkToGeneratedPagesDesc=This screen allows you to generate PDF files with business cards for all your members or a particular member. +DocForAllMembersCards=Generate business cards for all members +DocForOneMemberCards=Generate business cards for a particular member +DocForLabels=Generate address sheets +SubscriptionPayment=Pago cota +LastSubscriptionDate=Date of latest subscription payment +LastSubscriptionAmount=Amount of latest subscription +MembersStatisticsByCountries=Members statistics by country +MembersStatisticsByState=Members statistics by state/province +MembersStatisticsByTown=Members statistics by town +MembersStatisticsByRegion=Members statistics by region +NbOfMembers=Number of members +NoValidatedMemberYet=No validated members found +MembersByCountryDesc=This screen show you statistics on members by countries. Graphic depends however on Google online graph service and is available only if an internet connection is is working. +MembersByStateDesc=This screen show you statistics on members by state/provinces/canton. +MembersByTownDesc=This screen show you statistics on members by town. +MembersStatisticsDesc=Choose statistics you want to read... +MenuMembersStats=Estatísticas +LastMemberDate=Latest member date +LatestSubscriptionDate=Latest subscription date +MemberNature=Nature of member +Public=Information are public +NewMemberbyWeb=New member added. Awaiting approval +NewMemberForm=New member form +SubscriptionsStatistics=Statistics on subscriptions +NbOfSubscriptions=Number of subscriptions +AmountOfSubscriptions=Amount of subscriptions +TurnoverOrBudget=Turnover (for a company) or Budget (for a foundation) +DefaultAmount=Default amount of subscription +CanEditAmount=Visitor can choose/edit amount of its subscription +MEMBER_NEWFORM_PAYONLINE=Jump on integrated online payment page +ByProperties=By nature +MembersStatisticsByProperties=Members statistics by nature +MembersByNature=This screen show you statistics on members by nature. +MembersByRegion=This screen show you statistics on members by region. +VATToUseForSubscriptions=VAT rate to use for subscriptions +NoVatOnSubscription=No VAT for subscriptions +ADHERENT_PRODUCT_ID_FOR_SUBSCRIPTIONS=Product used for subscription line into invoice: %s +NameOrCompany=Name or company +SubscriptionRecorded=Subscription recorded +NoEmailSentToMember=No email sent to member +EmailSentToMember=Email sent to member at %s +SendReminderForExpiredSubscriptionTitle=Send reminder by email for expired subscription +SendReminderForExpiredSubscription=Send reminder by email to members when subscription is about to expire (parameter is number of days before end of subscription to send the remind. It can be a list of days separated by a semicolon, for example '10;5;0;-5') +MembershipPaid=Membership paid for current period (until %s) +YouMayFindYourInvoiceInThisEmail=You may find your invoice attached to this email +XMembersClosed=%s member(s) closed diff --git a/htdocs/langs/gl_ES/modulebuilder.lang b/htdocs/langs/gl_ES/modulebuilder.lang new file mode 100644 index 00000000000..135ac1ae9ec --- /dev/null +++ b/htdocs/langs/gl_ES/modulebuilder.lang @@ -0,0 +1,141 @@ +# Dolibarr language file - Source file is en_US - loan +ModuleBuilderDesc=This tool must be used only by experienced users or developers. It provides utilities to build or edit your own module. Documentation for alternative manual development is here. +EnterNameOfModuleDesc=Enter name of the module/application to create with no spaces. Use uppercase to separate words (For example: MyModule, EcommerceForShop, SyncWithMySystem...) +EnterNameOfObjectDesc=Enter name of the object to create with no spaces. Use uppercase to separate words (For example: MyObject, Student, Teacher...). The CRUD class file, but also API file, pages to list/add/edit/delete object and SQL files will be generated. +ModuleBuilderDesc2=Path where modules are generated/edited (first directory for external modules defined into %s): %s +ModuleBuilderDesc3=Generated/editable modules found: %s +ModuleBuilderDesc4=A module is detected as 'editable' when the file %s exists in root of module directory +NewModule=New module +NewObjectInModulebuilder=New object +ModuleKey=Module key +ObjectKey=Object key +ModuleInitialized=Module initialized +FilesForObjectInitialized=Files for new object '%s' initialized +FilesForObjectUpdated=Files for object '%s' updated (.sql files and .class.php file) +ModuleBuilderDescdescription=Enter here all general information that describe your module. +ModuleBuilderDescspecifications=You can enter here a detailed description of the specifications of your module that is not already structured into other tabs. So you have within easy reach all the rules to develop. Also this text content will be included into the generated documentation (see last tab). You can use Markdown format, but it is recommended to use Asciidoc format (comparison between .md and .asciidoc: http://asciidoctor.org/docs/user-manual/#compared-to-markdown). +ModuleBuilderDescobjects=Define here the objects you want to manage with your module. A CRUD DAO class, SQL files, page to list record of objects, to create/edit/view a record and an API will be generated. +ModuleBuilderDescmenus=This tab is dedicated to define menu entries provided by your module. +ModuleBuilderDescpermissions=This tab is dedicated to define the new permissions you want to provide with your module. +ModuleBuilderDesctriggers=This is the view of triggers provided by your module. To include code executed when a triggered business event is launched, just edit this file. +ModuleBuilderDeschooks=This tab is dedicated to hooks. +ModuleBuilderDescwidgets=This tab is dedicated to manage/build widgets. +ModuleBuilderDescbuildpackage=You can generate here a "ready to distribute" package file (a normalized .zip file) of your module and a "ready to distribute" documentation file. Just click on button to build the package or documentation file. +EnterNameOfModuleToDeleteDesc=You can delete your module. WARNING: All coding files of module (generated or created manually) AND structured data and documentation will be deleted! +EnterNameOfObjectToDeleteDesc=You can delete an object. WARNING: All coding files (generated or created manually) related to object will be deleted! +DangerZone=Danger zone +BuildPackage=Build package +BuildPackageDesc=You can generate a zip package of your application so your are ready to distribute it on any Dolibarr. You can also distribute it or sell it on marketplace like DoliStore.com. +BuildDocumentation=Build documentation +ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: +ModuleIsLive=This module has been activated. Any change may break a current live feature. +DescriptionLong=Long description +EditorName=Name of editor +EditorUrl=URL of editor +DescriptorFile=Descriptor file of module +ClassFile=File for PHP DAO CRUD class +ApiClassFile=File for PHP API class +PageForList=PHP page for list of record +PageForCreateEditView=PHP page to create/edit/view a record +PageForAgendaTab=PHP page for event tab +PageForDocumentTab=PHP page for document tab +PageForNoteTab=PHP page for note tab +PathToModulePackage=Path to zip of module/application package +PathToModuleDocumentation=Path to file of module/application documentation (%s) +SpaceOrSpecialCharAreNotAllowed=Spaces or special characters are not allowed. +FileNotYetGenerated=File not yet generated +RegenerateClassAndSql=Force update of .class and .sql files +RegenerateMissingFiles=Generate missing files +SpecificationFile=File of documentation +LanguageFile=File for language +ObjectProperties=Object Properties +ConfirmDeleteProperty=Are you sure you want to delete the property %s? This will change code in PHP class but also remove column from table definition of object. +NotNull=Not NULL +NotNullDesc=1=Set database to NOT NULL. -1=Allow null values and force value to NULL if empty ('' or 0). +SearchAll=Used for 'search all' +DatabaseIndex=Database index +FileAlreadyExists=File %s already exists +TriggersFile=File for triggers code +HooksFile=File for hooks code +ArrayOfKeyValues=Array of key-val +ArrayOfKeyValuesDesc=Array of keys and values if field is a combo list with fixed values +WidgetFile=Widget file +CSSFile=CSS file +JSFile=Javascript file +ReadmeFile=Readme file +ChangeLog=ChangeLog file +TestClassFile=File for PHP Unit Test class +SqlFile=Sql file +PageForLib=File for the common PHP library +PageForObjLib=File for the PHP library dedicated to object +SqlFileExtraFields=Sql file for complementary attributes +SqlFileKey=Sql file for keys +SqlFileKeyExtraFields=Sql file for keys of complementary attributes +AnObjectAlreadyExistWithThisNameAndDiffCase=An object already exists with this name and a different case +UseAsciiDocFormat=You can use Markdown format, but it is recommended to use Asciidoc format (omparison between .md and .asciidoc: http://asciidoctor.org/docs/user-manual/#compared-to-markdown) +IsAMeasure=Is a measure +DirScanned=Directory scanned +NoTrigger=No trigger +NoWidget=No widget +GoToApiExplorer=Go to API explorer +ListOfMenusEntries=List of menu entries +ListOfDictionariesEntries=List of dictionaries entries +ListOfPermissionsDefined=List of defined permissions +SeeExamples=See examples here +EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty +DisplayOnPdf=Display on PDF +IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) +SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) +SpecDefDesc=Enter here all documentation you want to provide with your module that is not already defined by other tabs. You can use .md or better, the rich .asciidoc syntax. +LanguageDefDesc=Enter in this files, all the key and the translation for each language file. +MenusDefDesc=Define here the menus provided by your module +DictionariesDefDesc=Define here the dictionaries provided by your module +PermissionsDefDesc=Define here the new permissions provided by your module +MenusDefDescTooltip=The menus provided by your module/application are defined into the array $this->menus into the module descriptor file. You can edit manually this file or use the embedded editor.

    Note: Once defined (and module re-activated), menus are also visible into the menu editor available to administrator users on %s. +DictionariesDefDescTooltip=The dictionaries provided by your module/application are defined into the array $this->dictionaries into the module descriptor file. You can edit manually this file or use the embedded editor.

    Note: Once defined (and module re-activated), dictionaries are also visible into the setup area to administrator users on %s. +PermissionsDefDescTooltip=The permissions provided by your module/application are defined into the array $this->rights into the module descriptor file. You can edit manually this file or use the embedded editor.

    Note: Once defined (and module re-activated), permissions are visible into the default permissions setup %s. +HooksDefDesc=Define in the module_parts['hooks'] property, in the module descriptor, the context of hooks you want to manage (list of contexts can be found by a search on 'initHooks(' in core code).
    Edit the hook file to add code of your hooked functions (hookable functions can be found by a search on 'executeHooks' in core code). +TriggerDefDesc=Define in the trigger file the code you want to execute for each business event executed. +SeeIDsInUse=See IDs in use in your installation +SeeReservedIDsRangeHere=See range of reserved IDs +ToolkitForDevelopers=Toolkit for Dolibarr developers +TryToUseTheModuleBuilder=If you have knowledge of SQL and PHP, you may use the native module builder wizard.
    Enable the module %s and use the wizard by clicking the on the top right menu.
    Warning: This is an advanced developer feature, do not experiment on your production site! +SeeTopRightMenu=See on the top right menu +AddLanguageFile=Add language file +YouCanUseTranslationKey=You can use here a key that is the translation key found into language file (see tab "Languages") +DropTableIfEmpty=(Delete table if empty) +TableDoesNotExists=The table %s does not exists +TableDropped=Table %s deleted +InitStructureFromExistingTable=Build the structure array string of an existing table +UseAboutPage=Disable the about page +UseDocFolder=Disable the documentation folder +UseSpecificReadme=Use a specific ReadMe +ContentOfREADMECustomized=Note: The content of the README.md file has been replaced with the specific value defined into setup of ModuleBuilder. +RealPathOfModule=Real path of module +ContentCantBeEmpty=Content of file can't be empty +WidgetDesc=You can generate and edit here the widgets that will be embedded with your module. +CSSDesc=You can generate and edit here a file with personalized CSS embedded with your module. +JSDesc=You can generate and edit here a file with personalized Javascript embedded with your module. +CLIDesc=You can generate here some command line scripts you want to provide with your module. +CLIFile=CLI File +NoCLIFile=No CLI files +UseSpecificEditorName = Use a specific editor name +UseSpecificEditorURL = Use a specific editor URL +UseSpecificFamily = Use a specific family +UseSpecificAuthor = Use a specific author +UseSpecificVersion = Use a specific initial version +ModuleMustBeEnabled=The module/application must be enabled first +IncludeRefGeneration=The reference of object must be generated automatically +IncludeRefGenerationHelp=Check this if you want to include code to manage the generation automatically of the reference +IncludeDocGeneration=I want to generate some documents from the object +IncludeDocGenerationHelp=If you check this, some code will be generated to add a "Generate document" box on the record. +ShowOnCombobox=Show value into combobox +KeyForTooltip=Key for tooltip +CSSClass=CSS Class +NotEditable=Not editable +ForeignKey=Foreign key +TypeOfFieldsHelp=Type of fields:
    varchar(99), double(24,8), real, text, html, datetime, timestamp, integer, integer:ClassName:relativepath/to/classfile.class.php[:1[:filter]] ('1' means we add a + button after the combo to create the record, 'filter' can be 'status=1 AND fk_user = __USER_ID AND entity IN (__SHARED_ENTITIES__)' for example) +AsciiToHtmlConverter=Ascii to HTML converter +AsciiToPdfConverter=Ascii to PDF converter diff --git a/htdocs/langs/gl_ES/mrp.lang b/htdocs/langs/gl_ES/mrp.lang new file mode 100644 index 00000000000..d3c4d3253c6 --- /dev/null +++ b/htdocs/langs/gl_ES/mrp.lang @@ -0,0 +1,76 @@ +Mrp=Manufacturing Orders +MO=Manufacturing Order +MRPDescription=Module to manage production and Manufacturing Orders (MO). +MRPArea=MRP Area +MrpSetupPage=Setup of module MRP +MenuBOM=Bills of material +LatestBOMModified=Latest %s Bills of materials modified +LatestMOModified=Latest %s Manufacturing Orders modified +Bom=Bills of Material +BillOfMaterials=Bill of Material +BOMsSetup=Setup of module BOM +ListOfBOMs=List of bills of material - BOM +ListOfManufacturingOrders=List of Manufacturing Orders +NewBOM=New bill of material +ProductBOMHelp=Product to create with this BOM.
    Note: Products with the property 'Nature of product' = 'Raw material' are not visible into this list. +BOMsNumberingModules=BOM numbering templates +BOMsModelModule=BOM document templates +MOsNumberingModules=MO numbering templates +MOsModelModule=MO document templates +FreeLegalTextOnBOMs=Free text on document of BOM +WatermarkOnDraftBOMs=Watermark on draft BOM +FreeLegalTextOnMOs=Free text on document of MO +WatermarkOnDraftMOs=Watermark on draft MO +ConfirmCloneBillOfMaterials=Are you sure you want to clone the bill of material %s ? +ConfirmCloneMo=Are you sure you want to clone the Manufacturing Order %s ? +ManufacturingEfficiency=Manufacturing efficiency +ConsumptionEfficiency=Consumption efficiency +ValueOfMeansLoss=Value of 0.95 means an average of 5%% of loss during the production +ValueOfMeansLossForProductProduced=Value of 0.95 means an average of 5%% of loss of produced product +DeleteBillOfMaterials=Delete Bill Of Materials +DeleteMo=Delete Manufacturing Order +ConfirmDeleteBillOfMaterials=Are you sure you want to delete this Bill Of Material? +ConfirmDeleteMo=Are you sure you want to delete this Bill Of Material? +MenuMRP=Manufacturing Orders +NewMO=New Manufacturing Order +QtyToProduce=Qty to produce +DateStartPlannedMo=Date start planned +DateEndPlannedMo=Date end planned +KeepEmptyForAsap=Empty means 'As Soon As Possible' +EstimatedDuration=Estimated duration +EstimatedDurationDesc=Estimated duration to manufacture this product using this BOM +ConfirmValidateBom=Are you sure you want to validate the BOM with the reference %s (you will be able to use it to build new Manufacturing Orders) +ConfirmCloseBom=Are you sure you want to cancel this BOM (you won't be able to use it to build new Manufacturing Orders anymore) ? +ConfirmReopenBom=Are you sure you want to re-open this BOM (you will be able to use it to build new Manufacturing Orders) +StatusMOProduced=Produced +QtyFrozen=Frozen Qty +QuantityFrozen=Frozen Quantity +QuantityConsumedInvariable=When this flag is set, the quantity consumed is always the value defined and is not relative to the quantity produced. +DisableStockChange=Stock change disabled +DisableStockChangeHelp=When this flag is set, there is no stock change on this product, whatever is the quantity consumed +BomAndBomLines=Bills Of Material and lines +BOMLine=Line of BOM +WarehouseForProduction=Warehouse for production +CreateMO=Create MO +ToConsume=To consume +ToProduce=To produce +QtyAlreadyConsumed=Qty already consumed +QtyAlreadyProduced=Qty already produced +QtyRequiredIfNoLoss=Qty required if there is no loss (Manufacturing efficiency is 100%%) +ConsumeOrProduce=Consume or Produce +ConsumeAndProduceAll=Consume and Produce All +Manufactured=Manufactured +TheProductXIsAlreadyTheProductToProduce=The product to add is already the product to produce. +ForAQuantityOf=For a quantity to produce of %s +ConfirmValidateMo=Are you sure you want to validate this Manufacturing Order? +ConfirmProductionDesc=By clicking on '%s', you will validate the consumption and/or production for the quantities set. This will also update the stock and record stock movements. +ProductionForRef=Production of %s +AutoCloseMO=Close automatically the Manufacturing Order if quantities to consume and to produce are reached +NoStockChangeOnServices=No stock change on services +ProductQtyToConsumeByMO=Product quantity still to consume by open MO +ProductQtyToProduceByMO=Product quentity still to produce by open MO +AddNewConsumeLines=Add new line to consume +ProductsToConsume=Products to consume +ProductsToProduce=Products to produce +UnitCost=Unit cost +TotalCost=Total cost diff --git a/htdocs/langs/gl_ES/multicurrency.lang b/htdocs/langs/gl_ES/multicurrency.lang new file mode 100644 index 00000000000..4e50a29d774 --- /dev/null +++ b/htdocs/langs/gl_ES/multicurrency.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Multi currency +ErrorAddRateFail=Error in added rate +ErrorAddCurrencyFail=Error in added currency +ErrorDeleteCurrencyFail=Error delete fail +multicurrency_syncronize_error=Synchronization error: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Use the date of the document to find the currency rate, instead of using the latest known rate +multicurrency_useOriginTx=When an object is created from another, keep the original rate from the source object (otherwise use the latest known rate) +CurrencyLayerAccount=CurrencyLayer API +CurrencyLayerAccount_help_to_synchronize=You must create an account on website %s to use this functionality.
    Get your API key.
    If you use a free account, you can't change the source currency (USD by default).
    If your main currency is not USD, the application will automatically recalculate it.

    You are limited to 1000 synchronizations per month. +multicurrency_appId=API key +multicurrency_appCurrencySource=Source currency +multicurrency_alternateCurrencySource=Alternate source currency +CurrenciesUsed=Currencies used +CurrenciesUsed_help_to_add=Add the different currencies and rates you need to use on your proposals, orders etc. +rate=rate +MulticurrencyReceived=Received, original currency +MulticurrencyRemainderToTake=Remaining amount, original currency +MulticurrencyPaymentAmount=Importe total na divisa orixinal +AmountToOthercurrency=Amount To (in currency of receiving account) +CurrencyRateSyncSucceed=Currency rate synchronization done successfuly +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Use the currency of the document for online payments diff --git a/htdocs/langs/gl_ES/oauth.lang b/htdocs/langs/gl_ES/oauth.lang new file mode 100644 index 00000000000..075ff49a895 --- /dev/null +++ b/htdocs/langs/gl_ES/oauth.lang @@ -0,0 +1,32 @@ +# 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 credentials with your OAuth provider: +ListOfSupportedOauthProviders=Enter the credentials provided by your OAuth2 provider. Only supported OAuth2 providers are listedd here. These services 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 to 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 to this page then "Register a new application" to create OAuth credentials +OAUTH_STRIPE_TEST_NAME=OAuth Stripe Test +OAUTH_STRIPE_LIVE_NAME=OAuth Stripe Live diff --git a/htdocs/langs/gl_ES/opensurvey.lang b/htdocs/langs/gl_ES/opensurvey.lang new file mode 100644 index 00000000000..9f83fcfb4f3 --- /dev/null +++ b/htdocs/langs/gl_ES/opensurvey.lang @@ -0,0 +1,61 @@ +# Dolibarr language file - Source file is en_US - opensurvey +Survey=Poll +Surveys=Polls +OrganizeYourMeetingEasily=Organize your meetings and polls easily. First select the type of poll... +NewSurvey=New poll +OpenSurveyArea=Polls area +AddACommentForPoll=You can add a comment into poll... +AddComment=Add comment +CreatePoll=Create poll +PollTitle=Poll title +ToReceiveEMailForEachVote=Receive an email for each vote +TypeDate=Type date +TypeClassic=Type standard +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=Remove all days +CopyHoursOfFirstDay=Copy hours of first day +RemoveAllHours=Remove all hours +SelectedDays=Selected days +TheBestChoice=The best choice currently is +TheBestChoices=The best choices currently are +with=with +OpenSurveyHowTo=If you agree to vote in this poll, you have to give your name, choose the values that fit best for you and validate with the plus button at the end of the line. +CommentsOfVoters=Comments of voters +ConfirmRemovalOfPoll=Are you sure you want to remove this poll (and all votes) +RemovePoll=Remove poll +UrlForSurvey=URL to communicate to get a direct access to poll +PollOnChoice=You are creating a poll to make a multi-choice for a poll. First enter all possible choices for your poll: +CreateSurveyDate=Create a date poll +CreateSurveyStandard=Create a standard poll +CheckBox=Simple checkbox +YesNoList=List (empty/yes/no) +PourContreList=List (empty/for/against) +AddNewColumn=Add new column +TitleChoice=Choice label +ExportSpreadsheet=Export result spreadsheet +ExpireDate=Data límite +NbOfSurveys=Number of polls +NbOfVoters=No. of voters +SurveyResults=Results +PollAdminDesc=You are allowed to change all vote lines of this poll with button "Edit". You can, as well, remove a column or a line with %s. You can also add a new column with %s. +5MoreChoices=5 more choices +Against=Against +YouAreInivitedToVote=You are invited to vote for this poll +VoteNameAlreadyExists=This name was already used for this poll +AddADate=Add a date +AddStartHour=Add start hour +AddEndHour=Add end hour +votes=vote(s) +NoCommentYet=No comments have been posted for this poll yet +CanComment=Voters can comment in the poll +CanSeeOthersVote=Voters can see other people's vote +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=Back to current month +ErrorOpenSurveyFillFirstSection=You haven't filled the first section of the poll creation +ErrorOpenSurveyOneChoice=Enter at least one choice +ErrorInsertingComment=There was an error while inserting your comment +MoreChoices=Enter more choices for the voters +SurveyExpiredInfo=The poll has been closed or voting delay has expired. +EmailSomeoneVoted=%s has filled a line.\nYou can find your poll at the link: \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 diff --git a/htdocs/langs/gl_ES/orders.lang b/htdocs/langs/gl_ES/orders.lang new file mode 100644 index 00000000000..5c1385df66c --- /dev/null +++ b/htdocs/langs/gl_ES/orders.lang @@ -0,0 +1,189 @@ +# Dolibarr language file - Source file is en_US - orders +OrdersArea=Área pedimentos de clientes +SuppliersOrdersArea=Área pedimentos a provedores +OrderCard=Ficha pedimento +OrderId=Id pedimento +Order=Pedimento +PdfOrderTitle=Pedimento +Orders=Pedimentos +OrderLine=Liña de pedimento +OrderDate=Data pedimento +OrderDateShort=Data de pedimento +OrderToProcess=Pedimento a procesar +NewOrder=Novo pedimento +NewOrderSupplier=New Purchase Order +ToOrder=Realizar pedimento +MakeOrder=Realizar pedimento +SupplierOrder=Pedimento a provedor +SuppliersOrders=Pedimentos a provedores +SuppliersOrdersRunning=Pedimentos a provedores actuais +CustomerOrder=Conta bloqueada +CustomersOrders=Pedimentos de clientes +CustomersOrdersRunning=Pedimentos de clientes en curso +CustomersOrdersAndOrdersLines=Pedimentos de clientes e liñas de pedimento +OrdersDeliveredToBill=Pedimentos de clientes enviados a facturar +OrdersToBill=Pedimentos de clientes enviados +OrdersInProcess=Pedimentos de clientes en proceso +OrdersToProcess=Pedimentos de clientes a procesar +SuppliersOrdersToProcess=Pedimentos a provedores a procesar +SuppliersOrdersAwaitingReception=Pedimentos agardando recepción +AwaitingReception=Agardando recepción +StatusOrderCanceledShort=Anulado +StatusOrderDraftShort=Borrador +StatusOrderValidatedShort=Validado +StatusOrderSentShort=Expedición en curso +StatusOrderSent=Envío en curso +StatusOrderOnProcessShort=Pedimento +StatusOrderProcessedShort=Procesado +StatusOrderDelivered=Emitido +StatusOrderDeliveredShort=Enviado +StatusOrderToBillShort=Emitido +StatusOrderApprovedShort=Aprobado +StatusOrderRefusedShort=Rexeitado +StatusOrderToProcessShort=A procesar +StatusOrderReceivedPartiallyShort=Recibido parcialmente +StatusOrderReceivedAllShort=Produtos recibidos +StatusOrderCanceled=Anulado +StatusOrderDraft=Borrador (a validar) +StatusOrderValidated=Validado +StatusOrderOnProcess=Pedimento - Agardando recepción +StatusOrderOnProcessWithValidation=Pedimento - Agardando recibir ou validar +StatusOrderProcessed=Procesado +StatusOrderToBill=Emitido +StatusOrderApproved=Aprobado +StatusOrderRefused=Rexeitado +StatusOrderReceivedPartially=Recibido parcialmente +StatusOrderReceivedAll=Todos os productos recibidos +ShippingExist=Existe unha expedición +QtyOrdered=Cant. pedida +ProductQtyInDraft=Cantidades en borrador de pedimentos +ProductQtyInDraftOrWaitingApproved=Cantidades en borrador de pedimentos ou aprobados, pero non realizados +MenuOrdersToBill=Pedimentos a facturar +MenuOrdersToBill2=Pedimentos facturables +ShipProduct=Enviar produto +CreateOrder=Crear pedimento +RefuseOrder=Rexeitar o pedimento +ApproveOrder=Aprobar pedimento +Approve2Order=Aprobar pedimento (segundo nivel) +ValidateOrder=Validar o pedimento +UnvalidateOrder=Desvalidar o pedimento +DeleteOrder=Eliminar o pedimento +CancelOrder=Anular o pedimento +OrderReopened= Order %s re-open +AddOrder=Crear pedimento +AddPurchaseOrder=Create purchase order +AddToDraftOrders=Engadir a pedimento borrador +ShowOrder=Amosar pedimento +OrdersOpened=Pedimentos a procesar +NoDraftOrders=Sen pedimentos borrador +NoOrder=Sen pedimentos +NoSupplierOrder=Sen orde de compra +LastOrders=Últimos %s pedimentos de clientes +LastCustomerOrders=Últimos %s pedimentos de clientes +LastSupplierOrders=Últimas %s ordes de compra +LastModifiedOrders=Últimos %s pedimentos de clientes modificados +AllOrders=Todos os pedimentos +NbOfOrders=Número de pedimentos +OrdersStatistics=Estatísticas de pedimentos de clientes +OrdersStatisticsSuppliers=Estatísticas de ordes de pedimento +NumberOfOrdersByMonth=Número de pedimentos por mes +AmountOfOrdersByMonthHT=Importe total de pedimentos por mes (sen IVE) +ListOfOrders=Listaxe de pedimentos +CloseOrder=Pechar pedimento +ConfirmCloseOrder=¿Está seguro de querer clasificar este pedimento como enviado? Una vez enviado un pedimento, solo podrá facturarse +ConfirmDeleteOrder=¿Está seguro de querer eliminar este pedimento? +ConfirmValidateOrder=¿Está seguro de querer validar este pedimento bajo la referencia %s ? +ConfirmUnvalidateOrder=¿Está seguro de querer restaurar el pedimento %s al estado borrador? +ConfirmCancelOrder=¿Está seguro de querer anular este pedimento? +ConfirmMakeOrder=¿Está seguro de querer confirmar este pedimento en fecha de %s ? +GenerateBill=Facturar +ClassifyShipped=Clasificar enviado +DraftOrders=Pedimentos borrador +DraftSuppliersOrders=Ordes de pedimentos borrador +OnProcessOrders=Pedimentos en proceso +RefOrder=Ref. pedimento +RefCustomerOrder=Ref. pedimento para o cliente +RefOrderSupplier=Ref. pedimento para o provedor +RefOrderSupplierShort=Ref. ped. prov. +SendOrderByMail=Enviar pedimento por e-mail +ActionsOnOrder=Eventos sobre o pedimento +NoArticleOfTypeProduct=Non hai artigos de tipo 'producto' y por lo tanto enviables en este pedimento +OrderMode=Método de pedimento +AuthorRequest=Autor/Solicitante +UserWithApproveOrderGrant=Usuarios habilitados para aprobar os pedimentos +PaymentOrderRef=Pago pedimento %s +ConfirmCloneOrder=¿Está seguro de querer clonar este pedimento %s? +DispatchSupplierOrder=Recepción do pedimento a provedor %s +FirstApprovalAlreadyDone=Primeira aprobación realizada +SecondApprovalAlreadyDone=Segunda aprobación realizada +SupplierOrderReceivedInDolibarr=Purchase Order %s received %s +SupplierOrderSubmitedInDolibarr=Purchase Order %s submited +SupplierOrderClassifiedBilled=Purchase Order %s set billed +OtherOrders=Outros pedimentos +##### Types de contacts ##### +TypeContact_commande_internal_SALESREPFOLL=Responsable seguemento do pedimento cliente +TypeContact_commande_internal_SHIPPING=Responsable envío pedimento cliente +TypeContact_commande_external_BILLING=Contacto cliente facturación pedimento +TypeContact_commande_external_SHIPPING=Contacto cliente entrega pedimento +TypeContact_commande_external_CUSTOMER=Contacto cliente seguemento pedimento +TypeContact_order_supplier_internal_SALESREPFOLL=Comercial seguimento pedimento de compra +TypeContact_order_supplier_internal_SHIPPING=Responsable recepción pedimento a provedor +TypeContact_order_supplier_external_BILLING=Contacto provedor factura +TypeContact_order_supplier_external_SHIPPING=Contacto seguemento envío aprovedor +TypeContact_order_supplier_external_CUSTOMER=Contacto seguemento pedimento a provedor +Error_COMMANDE_SUPPLIER_ADDON_NotDefined=Constante COMMANDE_SUPPLIER_ADDON no definida +Error_COMMANDE_ADDON_NotDefined=Constante COMMANDE_ADDON non definida +Error_OrderNotChecked=Non foron seleccionados pedimentos a facturar +# Order modes (how we receive order). Not the "why" are keys stored into dict.lang +OrderByMail=Correo +OrderByFax=Fax +OrderByEMail=E-Mail +OrderByWWW=En liña +OrderByPhone=Teléfono +# Documents models +PDFEinsteinDescription=A complete order model (old implementation of Eratosthene template) +PDFEratostheneDescription=A complete order model +PDFEdisonDescription=Modelo de pedimento simple +PDFProformaDescription=A complete Proforma invoice template +CreateInvoiceForThisCustomer=Facturar pedimentos +CreateInvoiceForThisSupplier=Facturar pedimentos +NoOrdersToInvoice=Sen pedimentos facturables +CloseProcessedOrdersAutomatically=Clasificar automáticamente como "Procesados" os pedimentos seleccionados. +OrderCreation=Creación pedimento +Ordered=Pedimento +OrderCreated=Os seus pedimentos foron creados +OrderFail=Produciuse un erro durante na creación dos seus pedimentos +CreateOrders=Crear pedimentos +ToBillSeveralOrderSelectCustomer=Para crear unha factura para numerosos pedimentos, faga primero click sobre o cliente e despois escolla "%s". +OptionToSetOrderBilledNotEnabled=Opción do modulo fluxo de traballo, modificar o pedimento a 'Facturado' automáticamente cando a factura é validada, está desactivado, polo que hai que modificar o estado da orde a 'Facturado' manualmente despois de que a factura sexa xerada. +IfValidateInvoiceIsNoOrderStayUnbilled=Se a validación da factura é 'Non', a orde retornará a modo 'Non facturado' ata que a factura sexa validada. +CloseReceivedSupplierOrdersAutomatically=Pechar pedimento a modo "%s" automaticamente se todos os produtos foron recibidos. +SetShippingMode=Indica o modo de envío +WithReceptionFinished=Con recepción finalizada +#### supplier orders status +StatusSupplierOrderCanceledShort=Anulada +StatusSupplierOrderDraftShort=Borrador +StatusSupplierOrderValidatedShort=Validado +StatusSupplierOrderSentShort=Expedición en curso +StatusSupplierOrderSent=Envío en curso +StatusSupplierOrderOnProcessShort=Pedido +StatusSupplierOrderProcessedShort=Procesado +StatusSupplierOrderDelivered=Emitido +StatusSupplierOrderDeliveredShort=Emitido +StatusSupplierOrderToBillShort=Emitido +StatusSupplierOrderApprovedShort=Aprobada +StatusSupplierOrderRefusedShort=Rexeitada +StatusSupplierOrderToProcessShort=A procesar +StatusSupplierOrderReceivedPartiallyShort=Recibido parcialmente +StatusSupplierOrderReceivedAllShort=Produtos recibidos +StatusSupplierOrderCanceled=Anulada +StatusSupplierOrderDraft=Borrador (é preciso validar) +StatusSupplierOrderValidated=Validado +StatusSupplierOrderOnProcess=Pedido - Agardando recepción +StatusSupplierOrderOnProcessWithValidation=Pedido - Agardando recibir ou validar +StatusSupplierOrderProcessed=Procesado +StatusSupplierOrderToBill=Emitido +StatusSupplierOrderApproved=Aprobada +StatusSupplierOrderRefused=Rexeitada +StatusSupplierOrderReceivedPartially=Recibido parcialmente +StatusSupplierOrderReceivedAll=Todos os productos recibidos diff --git a/htdocs/langs/gl_ES/other.lang b/htdocs/langs/gl_ES/other.lang new file mode 100644 index 00000000000..6dcdf5749a9 --- /dev/null +++ b/htdocs/langs/gl_ES/other.lang @@ -0,0 +1,286 @@ +# Dolibarr language file - Source file is en_US - other +SecurityCode=Security code +NumberingShort=N° +Tools=Tools +TMenuTools=Tools +ToolsDesc=All tools not included in other menu entries are grouped here.
    All the tools can be accessed via the left menu. +Birthday=Birthday +BirthdayDate=Birthday date +DateToBirth=Birth date +BirthdayAlertOn=birthday alert active +BirthdayAlertOff=birthday alert inactive +TransKey=Translation of the key TransKey +MonthOfInvoice=Month (number 1-12) of invoice date +TextMonthOfInvoice=Month (text) of invoice date +PreviousMonthOfInvoice=Previous month (number 1-12) of invoice date +TextPreviousMonthOfInvoice=Previous month (text) of invoice date +NextMonthOfInvoice=Following month (number 1-12) of invoice date +TextNextMonthOfInvoice=Following month (text) of invoice date +ZipFileGeneratedInto=Zip file generated into %s. +DocFileGeneratedInto=Doc file generated into %s. +JumpToLogin=Disconnected. Go to login page... +MessageForm=Message on online payment form +MessageOK=Message on the return page for a validated payment +MessageKO=Message on the return page for a canceled payment +ContentOfDirectoryIsNotEmpty=Content of this directory is not empty. +DeleteAlsoContentRecursively=Check to delete all content recursively +PoweredBy=Powered by +YearOfInvoice=Year of invoice date +PreviousYearOfInvoice=Previous year of invoice date +NextYearOfInvoice=Following year of invoice date +DateNextInvoiceBeforeGen=Date of next invoice (before generation) +DateNextInvoiceAfterGen=Date of next invoice (after generation) +GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mode. The mode 'Lines' was automatically selected instead. +OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. +AtLeastOneMeasureIsRequired=At least 1 field for measure is required +AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required +LatestBlogPosts=Latest Blog Posts +Notify_ORDER_VALIDATE=Sales order validated +Notify_ORDER_SENTBYMAIL=Sales order sent by mail +Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email +Notify_ORDER_SUPPLIER_VALIDATE=Purchase order recorded +Notify_ORDER_SUPPLIER_APPROVE=Purchase order approved +Notify_ORDER_SUPPLIER_REFUSE=Purchase order refused +Notify_PROPAL_VALIDATE=Customer proposal validated +Notify_PROPAL_CLOSE_SIGNED=Customer proposal closed signed +Notify_PROPAL_CLOSE_REFUSED=Customer proposal closed refused +Notify_PROPAL_SENTBYMAIL=Commercial proposal sent by mail +Notify_WITHDRAW_TRANSMIT=Transmission withdrawal +Notify_WITHDRAW_CREDIT=Credit withdrawal +Notify_WITHDRAW_EMIT=Perform withdrawal +Notify_COMPANY_CREATE=Third party created +Notify_COMPANY_SENTBYMAIL=Mails sent from third party card +Notify_BILL_VALIDATE=Customer invoice validated +Notify_BILL_UNVALIDATE=Customer invoice unvalidated +Notify_BILL_PAYED=Customer invoice paid +Notify_BILL_CANCEL=Customer invoice canceled +Notify_BILL_SENTBYMAIL=Customer invoice sent by mail +Notify_BILL_SUPPLIER_VALIDATE=Vendor invoice validated +Notify_BILL_SUPPLIER_PAYED=Vendor invoice paid +Notify_BILL_SUPPLIER_SENTBYMAIL=Vendor invoice sent by mail +Notify_BILL_SUPPLIER_CANCELED=Vendor invoice cancelled +Notify_CONTRACT_VALIDATE=Contract validated +Notify_FICHINTER_VALIDATE=Intervention validated +Notify_FICHINTER_ADD_CONTACT=Added contact to Intervention +Notify_FICHINTER_SENTBYMAIL=Intervention sent by mail +Notify_SHIPPING_VALIDATE=Shipping validated +Notify_SHIPPING_SENTBYMAIL=Shipping sent by mail +Notify_MEMBER_VALIDATE=Member validated +Notify_MEMBER_MODIFY=Member modified +Notify_MEMBER_SUBSCRIPTION=Member subscribed +Notify_MEMBER_RESILIATE=Member terminated +Notify_MEMBER_DELETE=Member deleted +Notify_PROJECT_CREATE=Project creation +Notify_TASK_CREATE=Task created +Notify_TASK_MODIFY=Task modified +Notify_TASK_DELETE=Task deleted +Notify_EXPENSE_REPORT_VALIDATE=Expense report validated (approval required) +Notify_EXPENSE_REPORT_APPROVE=Expense report approved +Notify_HOLIDAY_VALIDATE=Leave request validated (approval required) +Notify_HOLIDAY_APPROVE=Leave request approved +SeeModuleSetup=See setup of module %s +NbOfAttachedFiles=Number of attached files/documents +TotalSizeOfAttachedFiles=Total size of attached files/documents +MaxSize=Maximum size +AttachANewFile=Attach a new file/document +LinkedObject=Linked object +NbOfActiveNotifications=Number of notifications (no. of recipient emails) +PredefinedMailTest=__(Hello)__\nThis is a test mail sent to __EMAIL__.\nThe two lines are separated by a carriage return.\n\n__USER_SIGNATURE__ +PredefinedMailTestHtml=__(Hello)__\nThis is a test 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__ +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__ +PredefinedMailContentSendSupplierProposal=__(Hello)__\n\nPlease find price request __REF__ attached\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ +PredefinedMailContentSendOrder=__(Hello)__\n\nPlease find order __REF__ attached\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ +PredefinedMailContentSendSupplierOrder=__(Hello)__\n\nPlease find our order __REF__ attached\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ +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__ +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 is a compact ERP/CRM supporting several business modules. A demo showcasing all modules makes no sense as this scenario never occurs (several hundred available). So, several demo profiles are available. +ChooseYourDemoProfil=Choose the demo profile that best suits your needs... +ChooseYourDemoProfilMore=...or build your own profile
    (manual module selection) +DemoFundation=Manage members of a foundation +DemoFundation2=Manage members and bank account of a foundation +DemoCompanyServiceOnly=Company or freelance selling service only +DemoCompanyShopWithCashDesk=Manage a shop with a cash desk +DemoCompanyProductAndStocks=Shop selling products with Point Of Sales +DemoCompanyManufacturing=Company manufacturing products +DemoCompanyAll=Company with multiple activities (all main modules) +CreatedBy=Created by %s +ModifiedBy=Modified by %s +ValidatedBy=Validated by %s +ClosedBy=Closed by %s +CreatedById=User id who created +ModifiedById=User id who made latest change +ValidatedById=User id who validated +CanceledById=User id who canceled +ClosedById=User id who closed +CreatedByLogin=User login who created +ModifiedByLogin=User login who made latest change +ValidatedByLogin=User login who validated +CanceledByLogin=User login who canceled +ClosedByLogin=User login who closed +FileWasRemoved=File %s was removed +DirWasRemoved=Directory %s was removed +FeatureNotYetAvailable=Feature not yet available in the current version +FeaturesSupported=Supported features +Width=Width +Height=Height +Depth=Depth +Top=Top +Bottom=Bottom +Left=Left +Right=Right +CalculatedWeight=Calculated weight +CalculatedVolume=Calculated volume +Weight=Weight +WeightUnitton=tonne +WeightUnitkg=kg +WeightUnitg=g +WeightUnitmg=mg +WeightUnitpound=pound +WeightUnitounce=ounce +Length=Length +LengthUnitm=m +LengthUnitdm=dm +LengthUnitcm=cm +LengthUnitmm=mm +Surface=Area +SurfaceUnitm2=m² +SurfaceUnitdm2=dm² +SurfaceUnitcm2=cm² +SurfaceUnitmm2=mm² +SurfaceUnitfoot2=ft² +SurfaceUnitinch2=in² +Volume=Volume +VolumeUnitm3=m³ +VolumeUnitdm3=dm³ (L) +VolumeUnitcm3=cm³ (ml) +VolumeUnitmm3=mm³ (µl) +VolumeUnitfoot3=ft³ +VolumeUnitinch3=in³ +VolumeUnitounce=ounce +VolumeUnitlitre=litre +VolumeUnitgallon=gallon +SizeUnitm=m +SizeUnitdm=dm +SizeUnitcm=cm +SizeUnitmm=mm +SizeUnitinch=inch +SizeUnitfoot=foot +SizeUnitpoint=point +BugTracker=Bug tracker +SendNewPasswordDesc=This form allows you to request a new password. It will be sent to your email address.
    Change will become effective once you click on the confirmation link in the email.
    Check your inbox. +BackToLoginPage=Back to login page +AuthenticationDoesNotAllowSendNewPassword=Authentication mode is %s.
    In this mode, Dolibarr can't know nor change your password.
    Contact your system administrator if you want to change your password. +EnableGDLibraryDesc=Install or enable GD library on your PHP installation to use this option. +ProfIdShortDesc=Prof Id %s is an information depending on third party country.
    For example, for country %s, it's code %s. +DolibarrDemo=Dolibarr ERP/CRM demo +StatsByNumberOfUnits=Statistics for sum of qty of products/services +StatsByNumberOfEntities=Statistics in number of referring entities (no. of invoice, or order...) +NumberOfProposals=Number of proposals +NumberOfCustomerOrders=Number of sales orders +NumberOfCustomerInvoices=Number of customer invoices +NumberOfSupplierProposals=Number of vendor proposals +NumberOfSupplierOrders=Number of purchase orders +NumberOfSupplierInvoices=Number of vendor invoices +NumberOfContracts=Number of contracts +NumberOfMos=Number of manufacturing orders +NumberOfUnitsProposals=Number of units on proposals +NumberOfUnitsCustomerOrders=Number of units on sales orders +NumberOfUnitsCustomerInvoices=Number of units on customer invoices +NumberOfUnitsSupplierProposals=Number of units on vendor proposals +NumberOfUnitsSupplierOrders=Number of units on purchase orders +NumberOfUnitsSupplierInvoices=Number of units on vendor invoices +NumberOfUnitsContracts=Number of units on contracts +NumberOfUnitsMos=Number of units to produce in manufacturing orders +EMailTextInterventionAddedContact=A new intervention %s has been assigned to you. +EMailTextInterventionValidated=The intervention %s has been validated. +EMailTextInvoiceValidated=Invoice %s has been validated. +EMailTextInvoicePayed=Invoice %s has been paid. +EMailTextProposalValidated=Proposal %s has been validated. +EMailTextProposalClosedSigned=Proposal %s has been closed signed. +EMailTextOrderValidated=Order %s has been validated. +EMailTextOrderApproved=Order %s has been approved. +EMailTextOrderValidatedBy=Order %s has been recorded by %s. +EMailTextOrderApprovedBy=Order %s has been approved by %s. +EMailTextOrderRefused=Order %s has been refused. +EMailTextOrderRefusedBy=Order %s has been refused by %s. +EMailTextExpeditionValidated=Shipping %s has been validated. +EMailTextExpenseReportValidated=Expense report %s has been validated. +EMailTextExpenseReportApproved=Expense report %s has been approved. +EMailTextHolidayValidated=Leave request %s has been validated. +EMailTextHolidayApproved=Leave request %s has been approved. +ImportedWithSet=Importation data set +DolibarrNotification=Automatic notification +ResizeDesc=Enter new width OR new height. Ratio will be kept during resizing... +NewLength=New width +NewHeight=New height +NewSizeAfterCropping=New size after cropping +DefineNewAreaToPick=Define new area on image to pick (left click on image then drag until you reach the opposite corner) +CurrentInformationOnImage=This tool was designed to help you to resize or crop an image. This is the information on the current edited image +ImageEditor=Image editor +YouReceiveMailBecauseOfNotification=You receive this message because your email has been added to list of targets to be informed of particular events into %s software of %s. +YouReceiveMailBecauseOfNotification2=This event is the following: +ThisIsListOfModules=This is a list of modules preselected by this demo profile (only most common modules are visible in this demo). Edit this to have a more personalized demo and click on "Start". +UseAdvancedPerms=Use the advanced permissions of some modules +FileFormat=File format +SelectAColor=Choose a color +AddFiles=Add Files +StartUpload=Start upload +CancelUpload=Cancel upload +FileIsTooBig=Files is too big +PleaseBePatient=Please be patient... +NewPassword=New password +ResetPassword=Reset password +RequestToResetPasswordReceived=A request to change your password has been received. +NewKeyIs=This is your new keys to login +NewKeyWillBe=Your new key to login to software will be +ClickHereToGoTo=Click here to go to %s +YouMustClickToChange=You must however first click on the following link to validate this password change +ForgetIfNothing=If you didn't request this change, just forget this email. Your credentials are kept safe. +IfAmountHigherThan=If amount higher than %s +SourcesRepository=Repository for sources +Chart=Chart +PassEncoding=Password encoding +PermissionsAdd=Permissions added +PermissionsDelete=Permissions removed +YourPasswordMustHaveAtLeastXChars=Your password must have at least %s chars +YourPasswordHasBeenReset=Your password has been reset successfully +ApplicantIpAddress=IP address of applicant +SMSSentTo=SMS sent to %s +MissingIds=Missing ids +ThirdPartyCreatedByEmailCollector=Third party created by email collector from email MSGID %s +ContactCreatedByEmailCollector=Contact/address created by email collector from email MSGID %s +ProjectCreatedByEmailCollector=Project created by email collector from email MSGID %s +TicketCreatedByEmailCollector=Ticket created by email collector from email MSGID %s +OpeningHoursFormatDesc=Use a - to separate opening and closing hours.
    Use a space to enter different ranges.
    Example: 8-12 14-18 + +##### Export ##### +ExportsArea=Exports area +AvailableFormats=Available formats +LibraryUsed=Library used +LibraryVersion=Library version +ExportableDatas=Exportable data +NoExportableData=No exportable data (no modules with exportable data loaded, or missing permissions) +##### External sites ##### +WebsiteSetup=Setup of module website +WEBSITE_PAGEURL=URL of page +WEBSITE_TITLE=Título +WEBSITE_DESCRIPTION=Descrición +WEBSITE_IMAGE=Image +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). +WEBSITE_KEYWORDS=Keywords +LinesToImport=Lines to import + +MemoryUsage=Memory usage +RequestDuration=Duration of request +PopuProp=Products/Services by popularity in Proposals +PopuCom=Products/Services by popularity in Orders +ProductStatistics=Products/Services Statistics +NbOfQtyInOrders=Qty in orders diff --git a/htdocs/langs/gl_ES/paybox.lang b/htdocs/langs/gl_ES/paybox.lang new file mode 100644 index 00000000000..e993d94eb67 --- /dev/null +++ b/htdocs/langs/gl_ES/paybox.lang @@ -0,0 +1,31 @@ +# Dolibarr language file - Source file is en_US - paybox +PayBoxSetup=PayBox module setup +PayBoxDesc=This module offer pages to allow payment on Paybox by customers. This can be used for a free payment or for a payment on a particular Dolibarr object (invoice, order, ...) +FollowingUrlAreAvailableToMakePayments=Following URLs are available to offer a page to a customer to make a payment on Dolibarr objects +PaymentForm=Payment form +WelcomeOnPaymentPage=Welcome to our online payment service +ThisScreenAllowsYouToPay=This screen allow you to make an online payment to %s. +ThisIsInformationOnPayment=This is information on payment to do +ToComplete=To complete +YourEMail=Email to receive payment confirmation +Creditor=Creditor +PaymentCode=Payment code +PayBoxDoPayment=Pay with Paybox +YouWillBeRedirectedOnPayBox=You will be redirected on secured Paybox page to input you credit card information +Continue=Seguinte +SetupPayBoxToHavePaymentCreatedAutomatically=Setup your Paybox with url %s to have payment created automatically when validated by Paybox. +YourPaymentHasBeenRecorded=This page confirms that your payment has been recorded. Thank you. +YourPaymentHasNotBeenRecorded=Your payment has NOT been recorded and the transaction has been canceled. Thank you. +AccountParameter=Account parameters +UsageParameter=Usage parameters +InformationToFindParameters=Help to find your %s account information +PAYBOX_CGI_URL_V2=Url of Paybox CGI module for payment +VendorName=Name of vendor +CSSUrlForPaymentForm=CSS style sheet url for payment form +NewPayboxPaymentReceived=New Paybox payment received +NewPayboxPaymentFailed=New Paybox payment tried but failed +PAYBOX_PAYONLINE_SENDEMAIL=Email notification after payment attempt (success or fail) +PAYBOX_PBX_SITE=Value for PBX SITE +PAYBOX_PBX_RANG=Value for PBX Rang +PAYBOX_PBX_IDENTIFIANT=Value for PBX ID +PAYBOX_HMAC_KEY=HMAC key diff --git a/htdocs/langs/gl_ES/paypal.lang b/htdocs/langs/gl_ES/paypal.lang new file mode 100644 index 00000000000..5eb5f389445 --- /dev/null +++ b/htdocs/langs/gl_ES/paypal.lang @@ -0,0 +1,36 @@ +# Dolibarr language file - Source file is en_US - paypal +PaypalSetup=PayPal module setup +PaypalDesc=This module allows payment by customers via PayPal. This can be used for a ad-hoc payment or for a payment related to a Dolibarr object (invoice, order, ...) +PaypalOrCBDoPayment=Pay with PayPal (Card or PayPal) +PaypalDoPayment=Pay with PayPal +PAYPAL_API_SANDBOX=Mode test/sandbox +PAYPAL_API_USER=API username +PAYPAL_API_PASSWORD=API password +PAYPAL_API_SIGNATURE=API signature +PAYPAL_SSLVERSION=Curl SSL Version +PAYPAL_API_INTEGRAL_OR_PAYPALONLY=Offer "integral" payment (Credit card+PayPal) or "PayPal" only +PaypalModeIntegral=Integral +PaypalModeOnlyPaypal=PayPal only +ONLINE_PAYMENT_CSS_URL=Optional URL of CSS stylesheet on online payment page +ThisIsTransactionId=This is id of transaction: %s +PAYPAL_ADD_PAYMENT_URL=Include the PayPal payment url when you send a document by email +NewOnlinePaymentReceived=New online payment received +NewOnlinePaymentFailed=New online payment tried but failed +ONLINE_PAYMENT_SENDEMAIL=Email address for notifications after each payment attempt (for success and fail) +ReturnURLAfterPayment=Return URL after payment +ValidationOfOnlinePaymentFailed=Validation of online payment failed +PaymentSystemConfirmPaymentPageWasCalledButFailed=Payment confirmation page was called by payment system returned an error +SetExpressCheckoutAPICallFailed=SetExpressCheckout API call failed. +DoExpressCheckoutPaymentAPICallFailed=DoExpressCheckoutPayment API call failed. +DetailedErrorMessage=Detailed Error Message +ShortErrorMessage=Short Error Message +ErrorCode=Error Code +ErrorSeverityCode=Error Severity Code +OnlinePaymentSystem=Online payment system +PaypalLiveEnabled=PayPal "live" mode enabled (otherwise test/sandbox mode) +PaypalImportPayment=Import PayPal payments +PostActionAfterPayment=Post actions after payments +ARollbackWasPerformedOnPostActions=A rollback was performed on all Post actions. You must complete post actions manually if they are necessary. +ValidationOfPaymentFailed=Validation of payment has failed +CardOwner=Card holder +PayPalBalance=Paypal credit diff --git a/htdocs/langs/gl_ES/printing.lang b/htdocs/langs/gl_ES/printing.lang new file mode 100644 index 00000000000..8c4c9f92a6f --- /dev/null +++ b/htdocs/langs/gl_ES/printing.lang @@ -0,0 +1,54 @@ +# Dolibarr language file - Source file is en_US - printing +Module64000Name=Direct Printing +Module64000Desc=Enable Direct Printing System +PrintingSetup=Setup of Direct Printing System +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=Direct Printing jobs +DirectPrint=Direct print +PrintingDriverDesc=Configuration variables for printing driver. +ListDrivers=List of drivers +PrintTestDesc=List of Printers. +FileWasSentToPrinter=File %s was sent to printer +ViaModule=via the module +NoActivePrintingModuleFound=No active driver to print document. Check setup of module %s. +PleaseSelectaDriverfromList=Please select a driver from list. +PleaseConfigureDriverfromList=Please configure the selected driver from list. +SetupDriver=Driver setup +TargetedPrinter=Targeted printer +UserConf=Setup per user +PRINTGCP_INFO=Google OAuth API setup +PRINTGCP_AUTHLINK=Authentication +PRINTGCP_TOKEN_ACCESS=Google Cloud Print OAuth Token +PrintGCPDesc=This driver allows sending documents directly to a printer using Google Cloud Print. +GCP_Name=Nome +GCP_displayName=Display Name +GCP_Id=Printer Id +GCP_OwnerName=Owner Name +GCP_State=Printer State +GCP_connectionStatus=Online State +GCP_Type=Printer Type +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=Porto +PRINTIPP_USER=Login +PRINTIPP_PASSWORD=Contrasinal +NoDefaultPrinterDefined=No default printer defined +DefaultPrinter=Default printer +Printer=Printer +IPP_Uri=Printer Uri +IPP_Name=Printer Name +IPP_State=Printer State +IPP_State_reason=State reason +IPP_State_reason1=State reason1 +IPP_BW=BW +IPP_Color=Cor +IPP_Device=Device +IPP_Media=Printer media +IPP_Supported=Type of media +DirectPrintingJobsDesc=This page lists printing jobs found for available printers. +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/gl_ES/productbatch.lang b/htdocs/langs/gl_ES/productbatch.lang new file mode 100644 index 00000000000..1c19e4fb96f --- /dev/null +++ b/htdocs/langs/gl_ES/productbatch.lang @@ -0,0 +1,24 @@ +# ProductBATCH language file - en_US - ProductBATCH +ManageLotSerial=Use lot/serial number +ProductStatusOnBatch=Yes (lot/serial required) +ProductStatusNotOnBatch=No (lot/serial not used) +ProductStatusOnBatchShort=Sí +ProductStatusNotOnBatchShort=Non +Batch=Lot/Serial +atleast1batchfield=Eat-by date or Sell-by date or Lot/Serial number +batch_number=Lot/Serial number +BatchNumberShort=Lot/Serial +EatByDate=Eat-by date +SellByDate=Sell-by date +DetailBatchNumber=Lot/Serial details +printBatch=Lot/Serial: %s +printEatby=Eat-by: %s +printSellby=Sell-by: %s +printQty=Qty: %d +AddDispatchBatchLine=Add a line for Shelf Life dispatching +WhenProductBatchModuleOnOptionAreForced=When module Lot/Serial is on, automatic stock decrease is forced to 'Decrease real stocks on shipping validation' and automatic increase mode is forced to 'Increase real stocks on manual dispatching into warehouses' and can't be edited. Other options can be defined as you want. +ProductDoesNotUseBatchSerial=This product does not use lot/serial number +ProductLotSetup=Setup of module lot/serial +ShowCurrentStockOfLot=Show current stock for couple product/lot +ShowLogOfMovementIfLot=Show log of movements for couple product/lot +StockDetailPerBatch=Stock detail per lot diff --git a/htdocs/langs/gl_ES/products.lang b/htdocs/langs/gl_ES/products.lang new file mode 100644 index 00000000000..218207e2737 --- /dev/null +++ b/htdocs/langs/gl_ES/products.lang @@ -0,0 +1,385 @@ +# Dolibarr language file - Source file is en_US - products +ProductRef=Ref. produto +ProductLabel=Etiqueta produto +ProductLabelTranslated=Tradución etiqueta de produto +ProductDescription=Product description +ProductDescriptionTranslated=Tradución da descrición de produto +ProductNoteTranslated=Tradución notas de produto +ProductServiceCard=Ficha Produto/Servizo +TMenuProducts=Produtos +TMenuServices=Servizos +Products=Produtos +Services=Servizos +Product=Produto +Service=Servizo +ProductId=ID produto/servizo +Create=Crear +Reference=Referencia +NewProduct=Novo produto +NewService=Novo servizo +ProductVatMassChange=Cambio de IVE masivo +ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL products and services! +MassBarcodeInit=Mass barcode init +MassBarcodeInitDesc=This page can be used to initialize a barcode on objects that does not have barcode defined. Check before that setup of module barcode is complete. +ProductAccountancyBuyCode=Código contable (compra) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) +ProductAccountancySellCode=Código contable (venda) +ProductAccountancySellIntraCode=Código contable (venda intracomunitaria) +ProductAccountancySellExportCode=Código contable (venda de exportación) +ProductOrService=Produto ou servizo +ProductsAndServices=Produtos e servizos +ProductsOrServices=Produtos ou servizos +ProductsPipeServices=Produtos | Servizos +ProductsOnSale=Products for sale +ProductsOnPurchase=Products for purchase +ProductsOnSaleOnly=Produtos só á venda +ProductsOnPurchaseOnly=Produtos só en compra +ProductsNotOnSell=Produtos nin á venda nin en compra +ProductsOnSellAndOnBuy=Produtos en venda e en compra +ServicesOnSale=Services for sale +ServicesOnPurchase=Services for purchase +ServicesOnSaleOnly=Servizos só á venda +ServicesOnPurchaseOnly=Servizos só en compra +ServicesNotOnSell=Servizos fora de venda e de compra +ServicesOnSellAndOnBuy=Servizos á venda e en compra +LastModifiedProductsAndServices=Últimos %s produtos/servizos modificados +LastRecordedProducts=Últimos %s produtos rexistrados +LastRecordedServices=Últimos %s servizos rexistrados +CardProduct0=Produto +CardProduct1=Servizo +Stock=Stock +MenuStocks=Stocks +Stocks=Stocks e localización de produtos (almacén) +Movements=Movementos +Sell=Vendas +Buy=Compras +OnSell=En venda +OnBuy=En compra +NotOnSell=Fora de venda +ProductStatusOnSell=En venda +ProductStatusNotOnSell=Fora de venda +ProductStatusOnSellShort=En venda +ProductStatusNotOnSellShort=Fora de venda +ProductStatusOnBuy=En compra +ProductStatusNotOnBuy=Fora de compra +ProductStatusOnBuyShort=En compra +ProductStatusNotOnBuyShort=Fora de compra +UpdateVAT=Actualizar IVE +UpdateDefaultPrice=Actualizar prezo por defecto +UpdateLevelPrices=Actualizar prezos para cada nivel +AppliedPricesFrom=Prezo de venda +SellingPrice=Prezo de venda +SellingPriceHT=Prezo de venda sen IVE +SellingPriceTTC=Prezo de venda con IVE +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. +CostPriceUsage=This value could be used for margin calculation. +SoldAmount=Importe vendas +PurchasedAmount=Importe compras +NewPrice=Novo prezo +MinPrice=Prezo de venda mín. +EditSellingPriceLabel=Editar etiqueta prezo de venda +CantBeLessThanMinPrice=The selling price can't be lower than minimum allowed for this product (%s without tax). This message can also appears if you type a too important discount. +ContractStatusClosed=Pechada +ErrorProductAlreadyExists=Un produto coa referencia %s xa existe. +ErrorProductBadRefOrLabel=Wrong value for reference or label. +ErrorProductClone=There was a problem while trying to clone the product or service. +ErrorPriceCantBeLowerThanMinPrice=Error, price can't be lower than minimum price. +Suppliers=Provedores +SupplierRef=Vendor SKU +ShowProduct=Amosar produto +ShowService=Amosar servizo +ProductsAndServicesArea=Área produtos e servizos +ProductsArea=Área Produtos +ServicesArea=Área Servizos +ListOfStockMovements=Listaxe de movementos de stock +BuyingPrice=Prezo de compra +PriceForEachProduct=Produtos con prezos específicos +SupplierCard=Ficha provedor +PriceRemoved=Prezo eliminado +BarCode=Código de barras +BarcodeType=Tipo de código de barras +SetDefaultBarcodeType=Defina o tipo de código de barras +BarcodeValue=Valor do código de barras +NoteNotVisibleOnBill=Nota (non visible nas facturas, orzamentos...) +ServiceLimitedDuration=Se o produto é un servizo con duración limitada : +MultiPricesAbility=Multiple price segments per product/service (each customer is in one price segment) +MultiPricesNumPrices=Number of prices +AssociatedProductsAbility=Activate virtual products (kits) +AssociatedProducts=Virtual products +AssociatedProductsNumber=Number of products composing this virtual product +ParentProductsNumber=Number of parent packaging product +ParentProducts=Parent products +IfZeroItIsNotAVirtualProduct=Se 0, este produto non é un produto virtual +IfZeroItIsNotUsedByVirtualProduct=If 0, this product is not used by any virtual product +KeywordFilter=Filtro por clave +CategoryFilter=Category filter +ProductToAddSearch=Search product to add +NoMatchFound=No match found +ListOfProductsServices=List of products/services +ProductAssociationList=Listaxe de produtos/servizos que compoñen este produto virtual /produto/kit +ProductParentList=List of virtual products/services with this product as a component +ErrorAssociationIsFatherOfThis=One of selected product is parent with current product +DeleteProduct=Eliminar un produto/servizo +ConfirmDeleteProduct=¿Está certo de querer eliminar este produto/servizo? +ProductDeleted=O produto/servizo "%s" foi eliminado da base de datos. +ExportDataset_produit_1=Produtos +ExportDataset_service_1=Servizos +ImportDataset_produit_1=Produtos +ImportDataset_service_1=Servizos +DeleteProductLine=Eliminar liña de produto +ConfirmDeleteProductLine=¿Está certo de querer eliminar esta liña de produto? +ProductSpecial=Especial +QtyMin=Cantidad mínima de compra +PriceQtyMin=Price quantity min. +PriceQtyMinCurrency=Price (currency) for this qty. (no discount) +VATRateForSupplierProduct=Tasa IVE (para este produto/provedor) +DiscountQtyMin=Desconto para esta cantidade +NoPriceDefinedForThisSupplier=Ningún prezo/cant. definido para este provedor/produto +NoSupplierPriceDefinedForThisProduct=Ningún prezo/cant. a provedor definida para este produto +PredefinedProductsToSell=Produtos predefinidos +PredefinedServicesToSell=Servizos predefinidos +PredefinedProductsAndServicesToSell=Produtos/servizos predefinidos á venda +PredefinedProductsToPurchase=Produto predefinido para compra +PredefinedServicesToPurchase=Servizos predefinidos para comprar +PredefinedProductsAndServicesToPurchase=Produtos/servizos predefinidos para compra +NotPredefinedProducts=Sen produtos/servizos predefinidos +GenerateThumb=Xerar a etiqueta +ServiceNb=Servizo no %s +ListProductServiceByPopularity=Listaxe de produtos/servizos por popularidade +ListProductByPopularity=Listaxe de produtos por popularidade +ListServiceByPopularity=Listaxe de servizos por popularidade +Finished=Produto manufacturado +RowMaterial=Materia prima +ConfirmCloneProduct=¿Está certo de querer clonar o produto ou servizo %s? +CloneContentProduct=Clonar a información principal do produto/servizo +ClonePricesProduct=Clonar prezos +CloneCategoriesProduct=Clone tags/categories linked +CloneCompositionProduct=Clone virtual product/service +CloneCombinationsProduct=Clonar variantes de produto +ProductIsUsed=Este produto é utilizado +NewRefForClone=Ref. do novo produto/servizo +SellingPrices=Prezos de venda +BuyingPrices=Prezos de compra +CustomerPrices=Prezos a clientes +SuppliersPrices=Prezos a provedores +SuppliersPricesOfProductsOrServices=Prezos de provedores (de produtos ou servizos) +CustomCode=Código aduaneiro / Mercancía / +CountryOrigin=País de orixe +Nature=Nature of product (material/finished) +ShortLabel=Etiqueta curta +Unit=Unidade +p=u. +set=conxunto +se=conxunto +second=segundo +s=s +hour=hora +h=h +day=día +d=d +kilogram=kilogramo +kg=Kg +gram=gramo +g=g +meter=metro +m=m +lm=ml +m2=m² +m3=m³ +liter=litro +l=L +unitP=Peza +unitSET=Conxunto +unitS=Segundo +unitH=Hora +unitD=Día +unitG=Gramo +unitM=Metro +unitLM=Metro lineal +unitM2=Metro cadrado +unitM3=Metro cúbico +unitL=Litro +unitT=ton +unitKG=kg +unitG=Gramo +unitMG=mg +unitLB=pound +unitOZ=ounce +unitM=Metro +unitDM=dm +unitCM=cm +unitMM=mm +unitFT=ft +unitIN=in +unitM2=Metro cadrado +unitDM2=dm² +unitCM2=cm² +unitMM2=mm² +unitFT2=ft² +unitIN2=in² +unitM3=Metro cúbico +unitDM3=dm³ +unitCM3=cm³ +unitMM3=mm³ +unitFT3=ft³ +unitIN3=in³ +unitOZ3=ounce +unitgallon=gallon +ProductCodeModel=Modelo de ref. de produto +ServiceCodeModel=Modelo de ref. de servizo +CurrentProductPrice=Prezo actual +AlwaysUseNewPrice=Usar sempre o prezo actual de produto/servizo +AlwaysUseFixedPrice=Usar o prezo fixado +PriceByQuantity=Prezos diferentes por cantidade +DisablePriceByQty=Desactivar prezos por cantidade +PriceByQuantityRange=Rango cantidade +MultipriceRules=Regras para segmento de prezos +UseMultipriceRules=Use price segment rules (defined into product module setup) to auto calculate prices of all other segments according to first segment +PercentVariationOver=%% variación sobre %s +PercentDiscountOver=%% desconto sobre %s +KeepEmptyForAutoCalculation=Mantéñase baleiro para que calcule automáticamente o peso ou volume dos produtos +VariantRefExample=Examples: COL, SIZE +VariantLabelExample=Examples: Color, Size +### composition fabrication +Build=Fabricar +ProductsMultiPrice=Produtos e prezos para cada segmento de prezos +ProductsOrServiceMultiPrice=Prezos a clientes (de produtos ou servizos, multiprezos) +ProductSellByQuarterHT=Facturación trimestral de produtos antes de impostos +ServiceSellByQuarterHT=Facturación trimestral de servizos antes de impostos +Quarter1=1º trimestre +Quarter2=2º trimestre +Quarter3=3º trimestre +Quarter4=4º trimestre +BarCodePrintsheet=Imprimir código de barras +PageToGenerateBarCodeSheets=With this tool, you can print sheets of barcode stickers. Choose format of your sticker page, type of barcode and value of barcode, then click on button %s. +NumberOfStickers=Number of stickers to print on page +PrintsheetForOneBarCode=Print several stickers for one barcode +BuildPageToPrint=Generate page to print +FillBarCodeTypeAndValueManually=Fill barcode type and value manually. +FillBarCodeTypeAndValueFromProduct=Fill barcode type and value from barcode of a product. +FillBarCodeTypeAndValueFromThirdParty=Fill barcode type and value from barcode of a third party. +DefinitionOfBarCodeForProductNotComplete=Definition of type or value of barcode not complete for product %s. +DefinitionOfBarCodeForThirdpartyNotComplete=Definition of type or value of barcode non complete for third party %s. +BarCodeDataForProduct=Información do código de barras do produto %s: +BarCodeDataForThirdparty=Información do código de barras do terceiro %s: +ResetBarcodeForAllRecords=Definir valores de codigo de barras para todos os rexistros (isto restablecerá os valores de códigos de barras xa rexistrados cos novos valores) +PriceByCustomer=Diferentes prezos para cada cliente +PriceCatalogue=Un prezo único de venda por produto/servizo +PricingRule=Regras para prezos de venda +AddCustomerPrice=Configurar prezo po cliente +ForceUpdateChildPriceSoc=Establecer o mesmo prezo nas filiais dos clientes +PriceByCustomerLog=Historial de prezos previos a clientes +MinimumPriceLimit=O prezo mínimo non pode ser menor que %s +MinimumRecommendedPrice=O prezo mínimo recomendado é: %s +PriceExpressionEditor=Editor de expresión de prezos +PriceExpressionSelected=Expresión de prezos seleccionada +PriceExpressionEditorHelp1="price = 2 + 2" ou "2 + 2" para configurar un prezo. Use ; para separar expresións +PriceExpressionEditorHelp2=You can access ExtraFields with variables like #extrafield_myextrafieldkey# and global variables with #global_mycode# +PriceExpressionEditorHelp3=In both product/service and vendor prices there are these variables available:
    #tva_tx# #localtax1_tx# #localtax2_tx# #weight# #length# #surface# #price_min# +PriceExpressionEditorHelp4=In product/service price only: #supplier_min_price#
    In vendor prices only: #supplier_quantity# and #supplier_tva_tx# +PriceExpressionEditorHelp5=Valores globais dispoñibles: +PriceMode=Modo prezo +PriceNumeric=Número +DefaultPrice=Prezo por defecto +ComposedProductIncDecStock=Increase/Decrease stock on parent change +ComposedProduct=Child products +MinSupplierPrice=Prezo mínimo de compra +MinCustomerPrice=Prezo mínimo de venda +DynamicPriceConfiguration=Configuración de prezo dinámico +DynamicPriceDesc=You may define mathematical formulae to calculate Customer or Vendor prices. Such formulas can use all mathematical operators, some constants and variables. You can define here the variables you wish to use. If the variable needs an automatic update, you may define the external URL to allow Dolibarr to update the value automatically. +AddVariable=Engadir variable +AddUpdater=Engadir Actualizador +GlobalVariables=Variables globais +VariableToUpdate=Variable a actualizar +GlobalVariableUpdaters=External updaters for variables +GlobalVariableUpdaterType0=datos JSON +GlobalVariableUpdaterHelp0=Parses JSON data from specified URL, VALUE specifies the location of relevant value, +GlobalVariableUpdaterHelpFormat0=Format for request {"URL": "http://example.com/urlofjson", "VALUE": "array1,array2,targetvalue"} +GlobalVariableUpdaterType1=WebService data +GlobalVariableUpdaterHelp1=Parses WebService data from specified URL, NS specifies the namespace, VALUE specifies the location of relevant value, DATA should contain the data to send and METHOD is the calling WS method +GlobalVariableUpdaterHelpFormat1=Format for request is {"URL": "http://example.com/urlofws", "VALUE": "array,targetvalue", "NS": "http://example.com/urlofns", "METHOD": "myWSMethod", "DATA": {"your": "data", "to": "send"}} +UpdateInterval=Intervalo de actualización (minutos) +LastUpdated=Última actualización +CorrectlyUpdated=Actualizado correctamente +PropalMergePdfProductActualFile=Arcquivos usados para engadir no PDF Azur son +PropalMergePdfProductChooseFile=Seleccione os arquivos PDF +IncludingProductWithTag=Produtos/servizos incluidos co tag +DefaultPriceRealPriceMayDependOnCustomer=Prezo por defecto, ou prezo real pode depender do cliente +WarningSelectOneDocument=Seleccione alo menos un documento +DefaultUnitToShow=Unidade +NbOfQtyInProposals=Cant. en orzamentos +ClinkOnALinkOfColumn=Click on a link of column %s to get a detailed view... +ProductsOrServicesTranslations=Tradución Produtos/Servizos +TranslatedLabel=Translated label +TranslatedDescription=Translated description +TranslatedNote=Translated notes +ProductWeight=Weight for 1 product +ProductVolume=Volume for 1 product +WeightUnits=Weight unit +VolumeUnits=Volume unit +WidthUnits=Width unit +LengthUnits=Length unit +HeightUnits=Height unit +SurfaceUnits=Surface unit +SizeUnits=Size unit +DeleteProductBuyPrice=Delete buying price +ConfirmDeleteProductBuyPrice=Are you sure you want to delete this buying price? +SubProduct=Sub product +ProductSheet=Product sheet +ServiceSheet=Service sheet +PossibleValues=Possible values +GoOnMenuToCreateVairants=Vaia ao menú %s - %s para preparar variables de atributos (como cores, tamaño, ...) +UseProductFournDesc=Add a feature to define the descriptions of products defined by the vendors in addition to descriptions for customers +ProductSupplierDescription=Vendor description for the product +UseProductSupplierPackaging=Use packaging on supplier prices (recalculate quantities according to packaging set on supplier price when adding/updating line in supplier documents) +PackagingForThisProduct=Packaging +QtyRecalculatedWithPackaging=The quantity of the line were recalculated according to supplier packaging + +#Attributes +VariantAttributes=Atributos variantes +ProductAttributes=Atributos variantes para produtos +ProductAttributeName=Atributo variante %s +ProductAttribute=Atributo variante +ProductAttributeDeleteDialog=¿Está certo de querer eliminar este atributo? Todos os valores serán eliminados +ProductAttributeValueDeleteDialog=¿Está certo de querer eliminar o valor "%s" con referencia "%s" deste atributo? +ProductCombinationDeleteDialog=¿Está certo de querer eliminar a variante do produto "%s"? +ProductCombinationAlreadyUsed=Aconteceu un erro eliminando a variante. Comprobe que non está a ser usada por algún obxecto +ProductCombinations=Variantes +PropagateVariant=Propagar variantes +HideProductCombinations=Ocultar as variantes de produto no selector de produtos +ProductCombination=Variante +NewProductCombination=Nova variante +EditProductCombination=Editando variante +NewProductCombinations=Novas variantes +EditProductCombinations=Editando variantes +SelectCombination=Seleccione combinación +ProductCombinationGenerator=Xerador de variantes +Features=Funcións +PriceImpact=Impacto no prezo +WeightImpact=Impacto no peso +NewProductAttribute=Novo atributo +NewProductAttributeValue=Novo valor de atributo +ErrorCreatingProductAttributeValue=Ocurriu un erro ao crear o valor do atributo. Esto pode ser por que xa existía un valor con esta referencia +ProductCombinationGeneratorWarning=If you continue, before generating new variants, all previous ones will be DELETED. Already existing ones will be updated with the new values +TooMuchCombinationsWarning=Generating lots of variants may result in high CPU, memory usage and Dolibarr not able to create them. Enabling the option "%s" may help reduce memory usage. +DoNotRemovePreviousCombinations=Non remover variantes previas +UsePercentageVariations=Utilizar variacións porcentuais +PercentageVariation=Variación porcentual +ErrorDeletingGeneratedProducts=Aconteceu un erro mentres eliminaba as variantes de produtos existentes +NbOfDifferentValues=Nº de valores diferentes +NbProducts=Number of products +ParentProduct=Parent product +HideChildProducts=Ocultar as variantes de produtos +ShowChildProducts=Amosar a variantes de produtos +NoEditVariants=Go to Parent product card and edit variants price impact in the variants tab +ConfirmCloneProductCombinations=Would you like to copy all the product variants to the other parent product with the given reference? +CloneDestinationReference=Referencia de produto de destino +ErrorCopyProductCombinations=Aconteceu un erro ao copiar as variantes de produto +ErrorDestinationProductNotFound=Destino do produto non atopado +ErrorProductCombinationNotFound=Variante do produto non atopada +ActionAvailableOnVariantProductOnly=Action only available on the variant of product +ProductsPricePerCustomer=Product prices per customers +ProductSupplierExtraFields=Additional Attributes (Supplier Prices) +DeleteLinkedProduct=Delete the child product linked to the combination diff --git a/htdocs/langs/gl_ES/projects.lang b/htdocs/langs/gl_ES/projects.lang new file mode 100644 index 00000000000..b3f52fd5964 --- /dev/null +++ b/htdocs/langs/gl_ES/projects.lang @@ -0,0 +1,267 @@ +# Dolibarr language file - Source file is en_US - projects +RefProject=Ref. proxecto +ProjectRef=Ref. proxecto +ProjectId=Id proxecto +ProjectLabel=Etiqueta proxecto +ProjectsArea=Área proxectos +ProjectStatus=Estado do proxecto +SharedProject=Proxecto compartido +PrivateProject=Contactos proxecto +ProjectsImContactFor=Proxectos dos que son contacto explícito +AllAllowedProjects=Todos os proxectos que podo ler (meus + públicos) +AllProjects=Todos os proxectos +MyProjectsDesc=Esta vista está limitada a aqueles proxectos dos que é un contacto +ProjectsPublicDesc=Esta vista amosa todos os proxectos dos que ten dereito a visualizar. +TasksOnProjectsPublicDesc=Esta vista amosa todos os proxectos dos que ten dereito a visualizar. +ProjectsPublicTaskDesc=Esta vista amosa todos os proxectos e tarefas dos que ten dereito a visualizar. +ProjectsDesc=Esta vista amosa todos os proxectos (os seus permisos de usuario permítenlle ter unha visión completa). +TasksOnProjectsDesc=Esta vista amosa todos as tarefas (os seus permisos de usuario permítenlle ter unha visión completa). +MyTasksDesc=Esta vista limítase aos proxectos ou tarefas nos que vostede é un contacto nelas +OnlyOpenedProject=Só os proxectos abertos son visibles (os proxectos en estado borrador ou pechado non son visibles). +ClosedProjectsAreHidden=Os proxectos pechados non son visibles. +TasksPublicDesc=Esta vista amosa todos os proxectos e tarefas nos que vostede ten dereito a visualizar. +TasksDesc=This view presents all projects and tasks (your user permissions grant you permission to view everything). +AllTaskVisibleButEditIfYouAreAssigned=All tasks for qualified projects are visible, but you can enter time only for task assigned to selected user. Assign task if you need to enter time on it. +OnlyYourTaskAreVisible=Only tasks assigned to you are visible. Assign task to yourself if it is not visible and you need to enter time on it. +ImportDatasetTasks=Tarefas de proxectos +ProjectCategories=Etiquetas/categorías de proxectos +NewProject=Novo proxecto +AddProject=Crear proxecto +DeleteAProject=Eliminar un proxecto +DeleteATask=Eliminar unha tarefa +ConfirmDeleteAProject=¿Está certo de querer eliminar este proxecto? +ConfirmDeleteATask=¿Está certo de querer eliminar esta tarefa? +OpenedProjects=Proxectos abertos +OpenedTasks=Tarefas abertas +OpportunitiesStatusForOpenedProjects=Importe oportunidades de proxectos abertos por estado +OpportunitiesStatusForProjects=Importe oportunidades de proxectos por estado +ShowProject=Ver proxecto +ShowTask=Ver tarefa +SetProject=Definir proxecto +NoProject=Ningún proxecto definido ou propiedade de +NbOfProjects=Number of projects +NbOfTasks=Number of tasks +TimeSpent=Tempo adicado +TimeSpentByYou=Tempo adicado por vostede +TimeSpentByUser=Tempo adicado por usuario +TimesSpent=Tempos adicados +TaskId=Task ID +RefTask=Task ref. +LabelTask=Task label +TaskTimeSpent=Tempo adicado en tarefas +TaskTimeUser=Usuario +TaskTimeNote=Nota +TaskTimeDate=Data +TasksOnOpenedProject=Tarefas en proxectos abertos +WorkloadNotDefined=Carga de traballo non definida +NewTimeSpent=Tempo adicado +MyTimeSpent=Meu tempo adicado +BillTime=Facturar tempo adicado +BillTimeShort=Facturar tempo +TimeToBill=Time not billed +TimeBilled=Time billed +Tasks=Tarefas +Task=Tarefa +TaskDateStart=Data inicio tarefa +TaskDateEnd=Data finalización tarefa +TaskDescription=Descrición tarefa +NewTask=Nova tarefa +AddTask=Crear tarefa +AddTimeSpent=Engadir tempo adicado +AddHereTimeSpentForDay=Engadir tempo empregado neste día día/tarefa +AddHereTimeSpentForWeek=Add here time spent for this week/task +Activity=Actividade +Activities=Tarefas/actividades +MyActivities=As miñas tarefas/actividades +MyProjects=Os meus proxectos +MyProjectsArea=A miña Área de proxectos +DurationEffective=Duración efectiva +ProgressDeclared=Progresión declarada +TaskProgressSummary=Task progress +CurentlyOpenedTasks=Curently open tasks +TheReportedProgressIsLessThanTheCalculatedProgressionByX=The declared progress is less %s than the calculated progression +TheReportedProgressIsMoreThanTheCalculatedProgressionByX=The declared progress is more %s than the calculated progression +ProgressCalculated=Progresión calculada +WhichIamLinkedTo=which I'm linked to +WhichIamLinkedToProject=which I'm linked to project +Time=Tempo +ListOfTasks=Listaxe de tarefas +GoToListOfTimeConsumed=Ir á listaxe de tempos empregados +GanttView=Vista de Gantt +ListProposalsAssociatedProject=Listaxe de orzamentos asociados ao proxecto +ListOrdersAssociatedProject=Listaxe de pedidos de clientes asociados ao proxecto +ListInvoicesAssociatedProject=Listaxe de facturas a clientes asociadas ao proxecto +ListPredefinedInvoicesAssociatedProject=Listaxe de facturas asociadas ao proxecto +ListSupplierOrdersAssociatedProject=Listaxe de pedidos a proveedor asociados ao proxecto +ListSupplierInvoicesAssociatedProject=Listaxe de facturas de proveedores asociadas ao proxecto +ListContractAssociatedProject=Listaxe de contratos asociados ao proxecto +ListShippingAssociatedProject=Listaxe de envíos asociados ao proxecto +ListFichinterAssociatedProject=Listaxe de intervencións asociadas ao proxecto +ListExpenseReportsAssociatedProject=Listaxe de informes de gastos asociados ao proxecto +ListDonationsAssociatedProject=Listaxe de donacións asociadas ao proxecto +ListVariousPaymentsAssociatedProject=Listaxe de pagos diversos asociados ao proxecto +ListSalariesAssociatedProject=Listaxe de pagos de salarios asociados ao proxecto +ListActionsAssociatedProject=Listaxe de eventos asociados ao proxecto +ListMOAssociatedProject=List of manufacturing orders related to the project +ListTaskTimeUserProject=Listaxe de tempo empregado en tarefas do proxecto +ListTaskTimeForTask=Listaxe de tempo empregado na tarefa +ActivityOnProjectToday=Actividade no proxecto hoxe +ActivityOnProjectYesterday=Actividade no proxecto onte +ActivityOnProjectThisWeek=Actividade no proxecto esta semana +ActivityOnProjectThisMonth=Actividade no proxecto este mes +ActivityOnProjectThisYear=Actividade no proxecto este ano +ChildOfProjectTask=Fío da tarefa +ChildOfTask=Fío da tarefa +TaskHasChild=A tarefa ten fíos +NotOwnerOfProject=Non é dono deste proxecto privado +AffectedTo=Asignado a +CantRemoveProject=Este proxecto non pode ser eliminado porque está referenciado por algúns outros obxectoss (facturas, pedidos ou outras). Ver lapela de referencias. +ValidateProject=Validar proxecto +ConfirmValidateProject=¿Está certo de querer validar este proxecto? +CloseAProject=Pechar proxecto +ConfirmCloseAProject=¿Está certo de querer pechar este proxecto? +AlsoCloseAProject=Pechar tamén o proxecto (manter aberto se aínda precisa continuar coas tarefas de produción nel) +ReOpenAProject=Reabrir proxecto +ConfirmReOpenAProject=Está certo de querer reabrir este proxecto? +ProjectContact=Contacts of project +TaskContact=Contactos de tarefas +ActionsOnProject=Eventos do proxecto +YouAreNotContactOfProject=You are not a contact of this private project +UserIsNotContactOfProject=User is not a contact of this private project +DeleteATimeSpent=Delete time spent +ConfirmDeleteATimeSpent=Are you sure you want to delete this time spent? +DoNotShowMyTasksOnly=See also tasks not assigned to me +ShowMyTasksOnly=View only tasks assigned to me +TaskRessourceLinks=Contacts of task +ProjectsDedicatedToThisThirdParty=Projects dedicated to this third party +NoTasks=No tasks for this project +LinkedToAnotherCompany=Linked to other third party +TaskIsNotAssignedToUser=Task not assigned to user. Use button '%s' to assign task now. +ErrorTimeSpentIsEmpty=Time spent is empty +ThisWillAlsoRemoveTasks=This action will also delete all tasks of project (%s tasks at the moment) and all inputs of time spent. +IfNeedToUseOtherObjectKeepEmpty=If some objects (invoice, order, ...), belonging to another third party, must be linked to the project to create, keep this empty to have the project being multi third parties. +CloneTasks=Clonar as tarefas +CloneContacts=Clonar os contactos +CloneNotes=Clonar a notas +CloneProjectFiles=Clone project joined files +CloneTaskFiles=Clone task(s) joined files (if task(s) cloned) +CloneMoveDate=Update project/tasks dates from now? +ConfirmCloneProject=Are you sure to clone this project? +ProjectReportDate=Change task dates according to new project start date +ErrorShiftTaskDate=Impossible to shift task date according to new project start date +ProjectsAndTasksLines=Projects and tasks +ProjectCreatedInDolibarr=Proxecto %s creado +ProjectValidatedInDolibarr=Proxecto %s validado +ProjectModifiedInDolibarr=Proxecto %s modificado +TaskCreatedInDolibarr=La tarefa %s fue creada +TaskModifiedInDolibarr=La tarefa %s fue modificada +TaskDeletedInDolibarr=La tarefa %s fue eliminada +OpportunityStatus=Estado de oportunidade +OpportunityStatusShort=Est. Oport. +OpportunityProbability=Probabilidade de oportunidade +OpportunityProbabilityShort=Prob. Opor. +OpportunityAmount=Importe Oport. +OpportunityAmountShort=Importe oportunidade +OpportunityWeightedAmount=Opportunity weighted amount +OpportunityWeightedAmountShort=Opp. weighted amount +OpportunityAmountAverageShort=Importe promedio oportunidade +OpportunityAmountWeigthedShort=Importe ponderado oportunidade +WonLostExcluded=Excluidos Gañados/Perdidos +##### Types de contacts ##### +TypeContact_project_internal_PROJECTLEADER=Xefe de proxecto +TypeContact_project_external_PROJECTLEADER=Xefe de proxecto +TypeContact_project_internal_PROJECTCONTRIBUTOR=Participante +TypeContact_project_external_PROJECTCONTRIBUTOR=Participante +TypeContact_project_task_internal_TASKEXECUTIVE=Responsable +TypeContact_project_task_external_TASKEXECUTIVE=Responsable +TypeContact_project_task_internal_TASKCONTRIBUTOR=Participante +TypeContact_project_task_external_TASKCONTRIBUTOR=Participante +SelectElement=Escolla elemento +AddElement=Vincular ao elmento +# Documents models +DocumentModelBeluga=Prantilla de documento do para a descrición dos obxectos vinculados +DocumentModelBaleine=Prantilla de documendo do proxecto para tarefas +DocumentModelTimeSpent=Prantilla de informe de proxecto para o tempo empregado +PlannedWorkload=Carga de traballo planificada +PlannedWorkloadShort=Carga de traballo +ProjectReferers=Items relacionados +ProjectMustBeValidatedFirst=O proxecto previamente ten que validarse +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time +InputPerDay=Entrada por día +InputPerWeek=Entrada por semana +InputPerMonth=Input per month +InputDetail=Detalle de entrada +TimeAlreadyRecorded=Tempo adicado xa rexistrado para esta tarefa/día e usuario %s +ProjectsWithThisUserAsContact=Proxectos con este usuario como contacto +TasksWithThisUserAsContact=Tarefas asignadas a este usuario +ResourceNotAssignedToProject=Non asignado ao proxecto +ResourceNotAssignedToTheTask=Non asignado á tarefa +NoUserAssignedToTheProject=Ningún usuario asignado a este proxecto +TimeSpentBy=Tempo empregado por +TasksAssignedTo=Tarefas asignadas a +AssignTaskToMe=Asignarme a tarefa +AssignTaskToUser=Asignar a tarefa a %s +SelectTaskToAssign=Escolla tarefa a asignar... +AssignTask=Asignar +ProjectOverview=Resumo +ManageTasks=Usar proxectos para seguir tarefas e/ou tempos empregados (follas de tempo) +ManageOpportunitiesStatus=Usar proxectos para seguir oportunidades +ProjectNbProjectByMonth=Nº de proxectos creados por mes +ProjectNbTaskByMonth=Nº de tarefas creadas por mes +ProjectOppAmountOfProjectsByMonth=Importe de oportunidades por mes +ProjectWeightedOppAmountOfProjectsByMonth=Importe medio oportinidades por mes +ProjectOpenedProjectByOppStatus=Proxectos/oportunidades abertas por estado da oportunidade +ProjectsStatistics=Estatísticas sobre proxectos/oportunidades +TasksStatistics=Estatísticas sobre tarefas en proxectos/oportunidade +TaskAssignedToEnterTime=Tarefa asignada. Debería poder introducir tempos nesta tarefa. +IdTaskTime=Id tempo da tarefa +YouCanCompleteRef=If you want to complete the ref with some suffix, it is recommanded to add a - character to separate it, so the automatic numbering will still work correctly for next projects. For example %s-MYSUFFIX +OpenedProjectsByThirdparties=Proxectos abertos de terceiros +OnlyOpportunitiesShort=Só oportunidades +OpenedOpportunitiesShort=Oportunidades abertas +NotOpenedOpportunitiesShort=Not an open lead +NotAnOpportunityShort=Non é unha oportunidade +OpportunityTotalAmount=Importe total de oportunidades +OpportunityPonderatedAmount=Importe medio de oportunidades +OpportunityPonderatedAmountDesc=Importe medio oportunidades con probabilidade +OppStatusPROSP=Prospección +OppStatusQUAL=Cualificación +OppStatusPROPO=Orzamento +OppStatusNEGO=Negociación +OppStatusPENDING=Pendente +OppStatusWON=Gañado +OppStatusLOST=Perdido +Budget=Orzamento +AllowToLinkFromOtherCompany=Allow to link project from other company

    Supported values:
    - Keep empty: Can link any project of the company (default)
    - "all": Can link any projects, even projects of other companies
    - A list of third-party ids separated by commas: can link all projects of these third partys (Example: 123,4795,53)
    +LatestProjects=Últimos %s proxectos +LatestModifiedProjects=Últimos %s proxectos modificados +OtherFilteredTasks=Outras tarefas filtradas +NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) +ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you +# Comments trans +AllowCommentOnTask=Allow user comments on tasks +AllowCommentOnProject=Allow user comments on projects +DontHavePermissionForCloseProject=You do not have permissions to close the project %s +DontHaveTheValidateStatus=The project %s must be open to be closed +RecordsClosed=%s project(s) closed +SendProjectRef=Informacións do proxecto %s +ModuleSalaryToDefineHourlyRateMustBeEnabled=Module 'Salaries' must be enabled to define employee hourly rate to have time spent valorized +NewTaskRefSuggested=Task ref already used, a new task ref is required +TimeSpentInvoiced=Tenpo empregado facturado +TimeSpentForInvoice=Tempo empregado +OneLinePerUser=One line per user +ServiceToUseOnLines=Service to use on lines +InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project +ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. +ProjectFollowOpportunity=Follow opportunity +ProjectFollowTasks=Follow tasks or time spent +Usage=Usage +UsageOpportunity=Usage: Opportunity +UsageTasks=Usage: Tasks +UsageBillTimeShort=Usage: Bill time +InvoiceToUse=Draft invoice to use +NewInvoice=New invoice +OneLinePerTask=One line per task +OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/gl_ES/propal.lang b/htdocs/langs/gl_ES/propal.lang new file mode 100644 index 00000000000..6af409942a9 --- /dev/null +++ b/htdocs/langs/gl_ES/propal.lang @@ -0,0 +1,86 @@ +# Dolibarr language file - Source file is en_US - propal +Proposals=Orzamentos +Proposal=Commercial proposal +ProposalShort=Orzamento +ProposalsDraft=Draft commercial proposals +ProposalsOpened=Open commercial proposals +CommercialProposal=Commercial proposal +PdfCommercialProposalTitle=Commercial proposal +ProposalCard=Proposal card +NewProp=New commercial proposal +NewPropal=New proposal +Prospect=Cliente potencial +DeleteProp=Delete commercial proposal +ValidateProp=Validate commercial proposal +AddProp=Create proposal +ConfirmDeleteProp=Are you sure you want to delete this commercial proposal? +ConfirmValidateProp=Are you sure you want to validate this commercial proposal under name %s? +LastPropals=Latest %s proposals +LastModifiedProposals=Últimos %s orzamentos modificados +AllPropals=All proposals +SearchAProposal=Search a proposal +NoProposal=No proposal +ProposalsStatistics=Commercial proposal's statistics +NumberOfProposalsByMonth=Número por mes +AmountOfProposalsByMonthHT=Amount by month (excl. tax) +NbOfProposals=Number of commercial proposals +ShowPropal=Show proposal +PropalsDraft=Borradores +PropalsOpened=Aberta +PropalStatusDraft=Borrador (é preciso validar) +PropalStatusValidated=Validated (proposal is open) +PropalStatusSigned=Signed (needs billing) +PropalStatusNotSigned=Not signed (closed) +PropalStatusBilled=Facturado +PropalStatusDraftShort=Borrador +PropalStatusValidatedShort=Validated (open) +PropalStatusClosedShort=Pechada +PropalStatusSignedShort=Signed +PropalStatusNotSignedShort=Not signed +PropalStatusBilledShort=Facturado +PropalsToClose=Commercial proposals to close +PropalsToBill=Signed commercial proposals to bill +ListOfProposals=List of commercial proposals +ActionsOnPropal=Events on proposal +RefProposal=Commercial proposal ref +SendPropalByMail=Send commercial proposal by mail +DatePropal=Date of proposal +DateEndPropal=Validity ending date +ValidityDuration=Validity duration +CloseAs=Set status to +SetAcceptedRefused=Set accepted/refused +ErrorPropalNotFound=Propal %s not found +AddToDraftProposals=Add to draft proposal +NoDraftProposals=No draft proposals +CopyPropalFrom=Create commercial proposal by copying existing proposal +CreateEmptyPropal=Create empty commercial proposal or from list of products/services +DefaultProposalDurationValidity=Default commercial proposal validity duration (in days) +UseCustomerContactAsPropalRecipientIfExist=Use contact/address with type 'Contact following-up proposal' if defined instead of third party address as proposal recipient address +ConfirmClonePropal=Are you sure you want to clone the commercial proposal %s? +ConfirmReOpenProp=Are you sure you want to open back the commercial proposal %s? +ProposalsAndProposalsLines=Commercial proposal and lines +ProposalLine=Proposal line +AvailabilityPeriod=Availability delay +SetAvailability=Set availability delay +AfterOrder=after order +OtherProposals=Other proposals +##### Availability ##### +AvailabilityTypeAV_NOW=Immediate +AvailabilityTypeAV_1W=1 week +AvailabilityTypeAV_2W=2 weeks +AvailabilityTypeAV_3W=3 weeks +AvailabilityTypeAV_1M=1 month +##### Types de contacts ##### +TypeContact_propal_internal_SALESREPFOLL=Representative following-up proposal +TypeContact_propal_external_BILLING=Contacto cliente facturación pedido +TypeContact_propal_external_CUSTOMER=Customer contact following-up proposal +TypeContact_propal_external_SHIPPING=Customer contact for delivery +# Document models +DocModelAzurDescription=A complete proposal model (old implementation of Cyan template) +DocModelCyanDescription=A complete proposal model +DefaultModelPropalCreate=Default model creation +DefaultModelPropalToBill=Default template when closing a business proposal (to be invoiced) +DefaultModelPropalClosed=Default template when closing a business proposal (unbilled) +ProposalCustomerSignature=Written acceptance, company stamp, date and signature +ProposalsStatisticsSuppliers=Vendor proposals statistics +CaseFollowedBy=Case followed by diff --git a/htdocs/langs/gl_ES/receiptprinter.lang b/htdocs/langs/gl_ES/receiptprinter.lang new file mode 100644 index 00000000000..c4ac81e8fe8 --- /dev/null +++ b/htdocs/langs/gl_ES/receiptprinter.lang @@ -0,0 +1,95 @@ +# Dolibarr language file - Source file is en_US - receiptprinter +ReceiptPrinterSetup=Setup of module ReceiptPrinter +PrinterAdded=Printer %s added +PrinterUpdated=Printer %s updated +PrinterDeleted=Printer %s deleted +TestSentToPrinter=Test Sent To Printer %s +ReceiptPrinter=Receipt printers +ReceiptPrinterDesc=Setup of receipt printers +ReceiptPrinterTemplateDesc=Setup of Templates +ReceiptPrinterTypeDesc=Description of Receipt Printer's type +ReceiptPrinterProfileDesc=Description of Receipt Printer's Profile +ListPrinters=List of Printers +SetupReceiptTemplate=Template Setup +CONNECTOR_DUMMY=Dummy Printer +CONNECTOR_NETWORK_PRINT=Network Printer +CONNECTOR_FILE_PRINT=Local Printer +CONNECTOR_WINDOWS_PRINT=Local Windows Printer +CONNECTOR_CUPS_PRINT=Cups Printer +CONNECTOR_DUMMY_HELP=Fake Printer for test, does nothing +CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 +CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 +CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L +PROFILE_DEFAULT=Default Profile +PROFILE_SIMPLE=Simple Profile +PROFILE_EPOSTEP=Epos Tep Profile +PROFILE_P822D=P822D Profile +PROFILE_STAR=Star Profile +PROFILE_DEFAULT_HELP=Default Profile suitable for Epson printers +PROFILE_SIMPLE_HELP=Simple Profile No Graphics +PROFILE_EPOSTEP_HELP=Epos Tep Profile +PROFILE_P822D_HELP=P822D Profile No Graphics +PROFILE_STAR_HELP=Star Profile +DOL_LINE_FEED=Skip line +DOL_ALIGN_LEFT=Left align text +DOL_ALIGN_CENTER=Center text +DOL_ALIGN_RIGHT=Right align text +DOL_USE_FONT_A=Use font A of printer +DOL_USE_FONT_B=Use font B of printer +DOL_USE_FONT_C=Use font C of printer +DOL_PRINT_BARCODE=Imprimir código de barras +DOL_PRINT_BARCODE_CUSTOMER_ID=Print barcode customer id +DOL_CUT_PAPER_FULL=Cut ticket completely +DOL_CUT_PAPER_PARTIAL=Cut ticket partially +DOL_OPEN_DRAWER=Open cash drawer +DOL_ACTIVATE_BUZZER=Activate buzzer +DOL_PRINT_QRCODE=Print QR Code +DOL_PRINT_LOGO=Print logo of my company +DOL_PRINT_LOGO_OLD=Print logo of my company (old printers) +DOL_BOLD=Bold +DOL_BOLD_DISABLED=Disable bold +DOL_DOUBLE_HEIGHT=Double height size +DOL_DOUBLE_WIDTH=Double width size +DOL_DEFAULT_HEIGHT_WIDTH=Default height and width size +DOL_UNDERLINE=Enable underline +DOL_UNDERLINE_DISABLED=Disable underline +DOL_BEEP=Beed sound +DOL_PRINT_TEXT=Print text +DOL_VALUE_DATE=Invoice date +DOL_VALUE_DATE_TIME=Invoice date and time +DOL_VALUE_YEAR=Invoice year +DOL_VALUE_MONTH_LETTERS=Invoice month in letters +DOL_VALUE_MONTH=Invoice month +DOL_VALUE_DAY=Invoice day +DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Invoice ref +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=Capital +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/gl_ES/receptions.lang b/htdocs/langs/gl_ES/receptions.lang new file mode 100644 index 00000000000..bc33c30d4e1 --- /dev/null +++ b/htdocs/langs/gl_ES/receptions.lang @@ -0,0 +1,45 @@ +# Dolibarr language file - Source file is en_US - receptions +ReceptionsSetup=Product Reception setup +RefReception=Ref. reception +Reception=Reception +Receptions=Receptions +AllReceptions=All Receptions +Reception=Reception +Receptions=Receptions +ShowReception=Show Receptions +ReceptionsArea=Receptions area +ListOfReceptions=List of receptions +ReceptionMethod=Reception method +LastReceptions=Latest %s receptions +StatisticsOfReceptions=Statistics for receptions +NbOfReceptions=Number of receptions +NumberOfReceptionsByMonth=Number of receptions by month +ReceptionCard=Reception card +NewReception=New reception +CreateReception=Create reception +QtyInOtherReceptions=Qty in other receptions +OtherReceptionsForSameOrder=Other receptions for this order +ReceptionsAndReceivingForSameOrder=Receptions and receipts for this order +ReceptionsToValidate=Receptions to validate +StatusReceptionCanceled=Anulado +StatusReceptionDraft=Borrador +StatusReceptionValidated=Validated (products to ship or already shipped) +StatusReceptionProcessed=Procesado +StatusReceptionDraftShort=Borrador +StatusReceptionValidatedShort=Validado +StatusReceptionProcessedShort=Procesado +ReceptionSheet=Reception sheet +ConfirmDeleteReception=Are you sure you want to delete this reception? +ConfirmValidateReception=Are you sure you want to validate this reception with reference %s? +ConfirmCancelReception=Are you sure you want to cancel this reception? +StatsOnReceptionsOnlyValidated=Statistics conducted on receptions only validated. Date used is date of validation of reception (planed delivery date is not always known). +SendReceptionByEMail=Send reception by email +SendReceptionRef=Submission of reception %s +ActionsOnReception=Events on reception +ReceptionCreationIsDoneFromOrder=For the moment, creation of a new reception is done from the order card. +ReceptionLine=Reception line +ProductQtyInReceptionAlreadySent=Product quantity from open sales order already sent +ProductQtyInSuppliersReceptionAlreadyRecevied=Product quantity from open supplier order already received +ValidateOrderFirstBeforeReception=You must first validate the order before being able to make receptions. +ReceptionsNumberingModules=Numbering module for receptions +ReceptionsReceiptModel=Document templates for receptions diff --git a/htdocs/langs/gl_ES/resource.lang b/htdocs/langs/gl_ES/resource.lang new file mode 100644 index 00000000000..360dbebb5ac --- /dev/null +++ b/htdocs/langs/gl_ES/resource.lang @@ -0,0 +1,39 @@ +# Dolibarr language file - Source file is en_US - resource +MenuResourceIndex=Recursos +MenuResourceAdd=New resource +DeleteResource=Delete resource +ConfirmDeleteResourceElement=Confirm delete the resource for this element +NoResourceInDatabase=No resource in database. +NoResourceLinked=No resource linked +ActionsOnResource=Events about this resource +ResourcePageIndex=Resources list +ResourceSingular=Resource +ResourceCard=Resource card +AddResource=Create a resource +ResourceFormLabel_ref=Resource name +ResourceType=Resource type +ResourceFormLabel_description=Resource description + +ResourcesLinkedToElement=Resources linked to element + +ShowResource=Show resource + +ResourceElementPage=Element resources +ResourceCreatedWithSuccess=Resource successfully created +RessourceLineSuccessfullyDeleted=Resource line successfully deleted +RessourceLineSuccessfullyUpdated=Resource line successfully updated +ResourceLinkedWithSuccess=Resource linked with success + +ConfirmDeleteResource=Confirm to delete this resource +RessourceSuccessfullyDeleted=Resource successfully deleted +DictionaryResourceType=Type of resources + +SelectResource=Select resource + +IdResource=Id resource +AssetNumber=Serial number +ResourceTypeCode=Resource type code +ImportDataset_resource_1=Recursos + +ErrorResourcesAlreadyInUse=Some resources are in use +ErrorResourceUseInEvent=%s used in %s event diff --git a/htdocs/langs/gl_ES/salaries.lang b/htdocs/langs/gl_ES/salaries.lang new file mode 100644 index 00000000000..3054758f469 --- /dev/null +++ b/htdocs/langs/gl_ES/salaries.lang @@ -0,0 +1,21 @@ +# Dolibarr language file - Source file is en_US - salaries +SALARIES_ACCOUNTING_ACCOUNT_PAYMENT=Accounting account used for user third parties +SALARIES_ACCOUNTING_ACCOUNT_PAYMENT_Desc=The dedicated accounting account defined on user card will be used for Subledger accounting only. This one will be used for General Ledger and as default value of Subledger accounting if dedicated user accounting account on user is not defined. +SALARIES_ACCOUNTING_ACCOUNT_CHARGE=Accounting account by default for wage payments +Salary=Salary +Salaries=Salarios +NewSalaryPayment=New salary payment +AddSalaryPayment=Add salary payment +SalaryPayment=Salary payment +SalariesPayments=Salaries payments +ShowSalaryPayment=Show salary payment +THM=Average hourly rate +TJM=Average daily rate +CurrentSalary=Current salary +THMDescription=This value may be used to calculate the cost of time consumed on a project entered by users if module project is used +TJMDescription=This value is currently for information only and is not used for any calculation +LastSalaries=Latest %s salary payments +AllSalaries=All salary payments +SalariesStatistics=Salary statistics +# Export +SalariesAndPayments=Salaries and payments diff --git a/htdocs/langs/gl_ES/sendings.lang b/htdocs/langs/gl_ES/sendings.lang new file mode 100644 index 00000000000..7a2a0c2ce0b --- /dev/null +++ b/htdocs/langs/gl_ES/sendings.lang @@ -0,0 +1,74 @@ +# Dolibarr language file - Source file is en_US - sendings +RefSending=Ref. shipment +Sending=Shipment +Sendings=Envíos +AllSendings=All Shipments +Shipment=Shipment +Shipments=Envíos +ShowSending=Show Shipments +Receivings=Delivery Receipts +SendingsArea=Shipments area +ListOfSendings=List of shipments +SendingMethod=Shipping method +LastSendings=Latest %s shipments +StatisticsOfSendings=Statistics for shipments +NbOfSendings=Number of shipments +NumberOfShipmentsByMonth=Number of shipments by month +SendingCard=Shipment card +NewSending=New shipment +CreateShipment=Create shipment +QtyShipped=Qty shipped +QtyShippedShort=Qty ship. +QtyPreparedOrShipped=Qty prepared or shipped +QtyToShip=Qty to ship +QtyToReceive=Qty to receive +QtyReceived=Qty received +QtyInOtherShipments=Qty in other shipments +KeepToShip=Remain to ship +KeepToShipShort=Remain +OtherSendingsForSameOrder=Other shipments for this order +SendingsAndReceivingForSameOrder=Shipments and receipts for this order +SendingsToValidate=Shipments to validate +StatusSendingCanceled=Anulado +StatusSendingDraft=Borrador +StatusSendingValidated=Validated (products to ship or already shipped) +StatusSendingProcessed=Procesado +StatusSendingDraftShort=Borrador +StatusSendingValidatedShort=Validado +StatusSendingProcessedShort=Procesado +SendingSheet=Shipment sheet +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=Warning, no products waiting to be shipped. +StatsOnShipmentsOnlyValidated=Statistics conducted on shipments only validated. Date used is date of validation of shipment (planed delivery date is not always known). +DateDeliveryPlanned=Planned date of delivery +RefDeliveryReceipt=Ref delivery receipt +StatusReceipt=Status delivery receipt +DateReceived=Date delivery received +ClassifyReception=Classify reception +SendShippingByEMail=Send shipment by email +SendShippingRef=Submission of shipment %s +ActionsOnShipping=Events on shipment +LinkToTrackYourPackage=Link to track your package +ShipmentCreationIsDoneFromOrder=For the moment, creation of a new shipment is done from the order card. +ShipmentLine=Shipment line +ProductQtyInCustomersOrdersRunning=Product quantity from open sales orders +ProductQtyInSuppliersOrdersRunning=Product quantity from open purchase orders +ProductQtyInShipmentAlreadySent=Product quantity from open sales order already sent +ProductQtyInSuppliersShipmentAlreadyRecevied=Product quantity from open purchase orders already received +NoProductToShipFoundIntoStock=No product to ship found in warehouse %s. Correct stock or go back to choose another warehouse. +WeightVolShort=Weight/Vol. +ValidateOrderFirstBeforeShipment=You must first validate the order before being able to make shipments. + +# Sending methods +# ModelDocument +DocumentModelTyphon=More complete document model for delivery receipts (logo...) +Error_EXPEDITION_ADDON_NUMBER_NotDefined=Constant EXPEDITION_ADDON_NUMBER not defined +SumOfProductVolumes=Sum of product volumes +SumOfProductWeights=Sum of product weights + +# warehouse details +DetailWarehouseNumber= Warehouse details +DetailWarehouseFormat= W:%s (Qty: %d) diff --git a/htdocs/langs/gl_ES/sms.lang b/htdocs/langs/gl_ES/sms.lang new file mode 100644 index 00000000000..75f91e553c4 --- /dev/null +++ b/htdocs/langs/gl_ES/sms.lang @@ -0,0 +1,51 @@ +# Dolibarr language file - Source file is en_US - sms +Sms=SMS +SmsSetup=Configuración dos SMS +SmsDesc=Esta páxina permite definir as opcións globais dos SMS +SmsCard=Ficha SMS +AllSms=Todas as campañas SMS +SmsTargets=Destinatarios +SmsRecipients=Destinatarios +SmsRecipient=Destinatario +SmsTitle=Descrición +SmsFrom=Remitente +SmsTo=Destinatario +SmsTopic=Asunto do SMS +SmsText=Mensaxe +SmsMessage=Mensaxe SMS +ShowSms=Amosar SMS +ListOfSms=Listaxe de campañas SMS +NewSms=Nova campaña de SMS +EditSms=Editar SMS +ResetSms=Enviando novo +DeleteSms=Borrar campaña SMS +DeleteASms=Retirar campaña SMS +PreviewSms=Previo SMS +PrepareSms=Preparar SMS +CreateSms=Crear SMS +SmsResult=Resultado do envío de SMS +TestSms=Test de SMS +ValidSms=Validar SMS +ApproveSms=Aprobar SMS +SmsStatusDraft=Borrador +SmsStatusValidated=Validado +SmsStatusApproved=Aprobado +SmsStatusSent=Enviado +SmsStatusSentPartialy=Enviado parcialmente +SmsStatusSentCompletely=Envío completado +SmsStatusError=Erro +SmsStatusNotSent=Non enviado +SmsSuccessfulySent=SMS enviado correctamente (de 1%s a 1%s ) +ErrorSmsRecipientIsEmpty=Number of target is empty +WarningNoSmsAdded=No new phone number to add to target list +ConfirmValidSms=Do you confirm validation of this campaign? +NbOfUniqueSms=No. of unique phone numbers +NbOfSms=No. of phone numbers +ThisIsATestMessage=This is a test message +SendSms=Send SMS +SmsInfoCharRemain=No. of remaining characters +SmsInfoNumero= (international format i.e.: +33899701761) +DelayBeforeSending=Delay before sending (minutes) +SmsNoPossibleSenderFound=No sender available. Check setup of your SMS provider. +SmsNoPossibleRecipientFound=No target available. Check setup of your SMS provider. +DisableStopIfSupported=Disable STOP message (if supported) diff --git a/htdocs/langs/gl_ES/stocks.lang b/htdocs/langs/gl_ES/stocks.lang new file mode 100644 index 00000000000..a8acfdb4045 --- /dev/null +++ b/htdocs/langs/gl_ES/stocks.lang @@ -0,0 +1,220 @@ +# Dolibarr language file - Source file is en_US - stocks +WarehouseCard=Warehouse card +Warehouse=Warehouse +Warehouses=Warehouses +ParentWarehouse=Parent warehouse +NewWarehouse=New warehouse / Stock Location +WarehouseEdit=Modify warehouse +MenuNewWarehouse=New warehouse +WarehouseSource=Source warehouse +WarehouseSourceNotDefined=No warehouse defined, +AddWarehouse=Create warehouse +AddOne=Add one +DefaultWarehouse=Default warehouse +WarehouseTarget=Target warehouse +ValidateSending=Delete sending +CancelSending=Cancel sending +DeleteSending=Delete sending +Stock=Stock +Stocks=Stocks +StocksByLotSerial=Stocks by lot/serial +LotSerial=Lots/Serials +LotSerialList=List of lot/serials +Movements=Movementos +ErrorWarehouseRefRequired=Warehouse reference name is required +ListOfWarehouses=List of warehouses +ListOfStockMovements=Listaxe de movementos de stock +ListOfInventories=List of inventories +MovementId=Movement ID +StockMovementForId=Movement ID %d +ListMouvementStockProject=List of stock movements associated to project +StocksArea=Warehouses area +AllWarehouses=All warehouses +IncludeAlsoDraftOrders=Include also draft orders +Location=Localización +LocationSummary=Short name location +NumberOfDifferentProducts=Number of different products +NumberOfProducts=Total number of products +LastMovement=Latest movement +LastMovements=Latest movements +Units=Units +Unit=Unidade +StockCorrection=Stock correction +CorrectStock=Correct stock +StockTransfer=Stock transfer +TransferStock=Transfer stock +MassStockTransferShort=Mass stock transfer +StockMovement=Stock movement +StockMovements=Stock movements +NumberOfUnit=Number of units +UnitPurchaseValue=Unit purchase price +StockTooLow=Stock too low +StockLowerThanLimit=Stock lower than alert limit (%s) +EnhancedValue=Valor +PMPValue=Weighted average price +PMPValueShort=WAP +EnhancedValueOfWarehouses=Warehouses value +UserWarehouseAutoCreate=Create a user warehouse automatically when creating a user +AllowAddLimitStockByWarehouse=Manage also value for minimum and desired stock per pairing (product-warehouse) in addition to the value for minimum and desired stock per product +IndependantSubProductStock=Product stock and subproduct stock are independent +QtyDispatched=Quantity dispatched +QtyDispatchedShort=Qty dispatched +QtyToDispatchShort=Qty to dispatch +OrderDispatch=Item receipts +RuleForStockManagementDecrease=Choose Rule for automatic stock decrease (manual decrease is always possible, even if an automatic decrease rule is activated) +RuleForStockManagementIncrease=Choose Rule for automatic stock increase (manual increase is always possible, even if an automatic increase rule is activated) +DeStockOnBill=Decrease real stocks on validation of customer invoice/credit note +DeStockOnValidateOrder=Decrease real stocks on validation of sales order +DeStockOnShipment=Decrease real stocks on shipping validation +DeStockOnShipmentOnClosing=Decrease real stocks when shipping is set to closed +ReStockOnBill=Increase real stocks on validation of vendor invoice/credit note +ReStockOnValidateOrder=Increase real stocks on purchase order approval +ReStockOnDispatchOrder=Increase real stocks on manual dispatching into warehouse, after purchase order receipt of goods +StockOnReception=Increase real stocks on validation of reception +StockOnReceptionOnClosing=Increase real stocks when reception is set to closed +OrderStatusNotReadyToDispatch=Order has not yet or no more a status that allows dispatching of products in stock warehouses. +StockDiffPhysicTeoric=Explanation for difference between physical and virtual stock +NoPredefinedProductToDispatch=No predefined products for this object. So no dispatching in stock is required. +DispatchVerb=Dispatch +StockLimitShort=Limit for alert +StockLimit=Stock limit for alert +StockLimitDesc=(empty) means no warning.
    0 can be used for a warning as soon as stock is empty. +PhysicalStock=Physical Stock +RealStock=Real Stock +RealStockDesc=Physical/real stock is the stock currently in the warehouses. +RealStockWillAutomaticallyWhen=The real stock will be modified according to this rule (as defined in the Stock module): +VirtualStock=Virtual stock +VirtualStockDesc=Virtual stock is the calculated stock available once all open/pending actions (that affect stocks) are closed (purchase orders received, sales orders shipped etc.) +IdWarehouse=Id warehouse +DescWareHouse=Description warehouse +LieuWareHouse=Localisation warehouse +WarehousesAndProducts=Warehouses and products +WarehousesAndProductsBatchDetail=Warehouses and products (with detail per lot/serial) +AverageUnitPricePMPShort=Weighted average input price +AverageUnitPricePMP=Weighted average input price +SellPriceMin=Selling Unit Price +EstimatedStockValueSellShort=Value for sell +EstimatedStockValueSell=Value for sell +EstimatedStockValueShort=Input stock value +EstimatedStockValue=Input stock value +DeleteAWarehouse=Delete a warehouse +ConfirmDeleteWarehouse=Are you sure you want to delete the warehouse %s? +PersonalStock=Personal stock %s +ThisWarehouseIsPersonalStock=This warehouse represents personal stock of %s %s +SelectWarehouseForStockDecrease=Choose warehouse to use for stock decrease +SelectWarehouseForStockIncrease=Choose warehouse to use for stock increase +NoStockAction=No stock action +DesiredStock=Desired Stock +DesiredStockDesc=This stock amount will be the value used to fill the stock by replenishment feature. +StockToBuy=To order +Replenishment=Replenishment +ReplenishmentOrders=Replenishment orders +VirtualDiffersFromPhysical=According to increase/decrease stock options, physical stock and virtual stock (physical + current orders) may differ +UseVirtualStockByDefault=Use virtual stock by default, instead of physical stock, for replenishment feature +UseVirtualStock=Use virtual stock +UsePhysicalStock=Use physical stock +CurentSelectionMode=Current selection mode +CurentlyUsingVirtualStock=Virtual stock +CurentlyUsingPhysicalStock=Physical stock +RuleForStockReplenishment=Rule for stocks replenishment +SelectProductWithNotNullQty=Select at least one product with a qty not null and a vendor +AlertOnly= Alerts only +WarehouseForStockDecrease=The warehouse %s will be used for stock decrease +WarehouseForStockIncrease=The warehouse %s will be used for stock increase +ForThisWarehouse=For this warehouse +ReplenishmentStatusDesc=This is a list of all products with a stock lower than desired stock (or lower than alert value if checkbox "alert only" is checked). Using the checkbox, you can create purchase orders to fill the difference. +ReplenishmentOrdersDesc=This is a list of all open purchase orders including predefined products. Only open orders with predefined products, so orders that may affect stocks, are visible here. +Replenishments=Replenishments +NbOfProductBeforePeriod=Quantity of product %s in stock before selected period (< %s) +NbOfProductAfterPeriod=Quantity of product %s in stock after selected period (> %s) +MassMovement=Mass movement +SelectProductInAndOutWareHouse=Select a product, a quantity, a source warehouse and a target warehouse, then click "%s". Once this is done for all required movements, click onto "%s". +RecordMovement=Record transfer +ReceivingForSameOrder=Receipts for this order +StockMovementRecorded=Stock movements recorded +RuleForStockAvailability=Rules on stock requirements +StockMustBeEnoughForInvoice=Stock level must be enough to add product/service to invoice (check is done on current real stock when adding a line into invoice whatever the rule for automatic stock change) +StockMustBeEnoughForOrder=Stock level must be enough to add product/service to order (check is done on current real stock when adding a line into order whatever the rule for automatic stock change) +StockMustBeEnoughForShipment= Stock level must be enough to add product/service to shipment (check is done on current real stock when adding a line into shipment whatever the rule for automatic stock change) +MovementLabel=Label of movement +TypeMovement=Type of movement +DateMovement=Date of movement +InventoryCode=Movement or inventory code +IsInPackage=Contained into package +WarehouseAllowNegativeTransfer=Stock can be negative +qtyToTranferIsNotEnough=You don't have enough stock from your source warehouse and your setup does not allow negative stocks. +qtyToTranferLotIsNotEnough=You don't have enough stock, for this lot number, from your source warehouse and your setup does not allow negative stocks (Qty for product '%s' with lot '%s' is %s in warehouse '%s'). +ShowWarehouse=Show warehouse +MovementCorrectStock=Stock correction for product %s +MovementTransferStock=Stock transfer of product %s into another warehouse +InventoryCodeShort=Inv./Mov. code +NoPendingReceptionOnSupplierOrder=No pending reception due to open purchase order +ThisSerialAlreadyExistWithDifferentDate=This lot/serial number (%s) already exists but with different eatby or sellby date (found %s but you enter %s). +OpenAll=Open for all actions +OpenInternal=Open only for internal actions +UseDispatchStatus=Use a dispatch status (approve/refuse) for product lines on purchase order reception +OptionMULTIPRICESIsOn=Option "several prices per segment" is on. It means a product has several selling price so value for sell can't be calculated +ProductStockWarehouseCreated=Stock limit for alert and desired optimal stock correctly created +ProductStockWarehouseUpdated=Stock limit for alert and desired optimal stock correctly updated +ProductStockWarehouseDeleted=Stock limit for alert and desired optimal stock correctly deleted +AddNewProductStockWarehouse=Set new limit for alert and desired optimal stock +AddStockLocationLine=Decrease quantity then click to add another warehouse for this product +InventoryDate=Inventory date +NewInventory=New inventory +inventorySetup = Inventory Setup +inventoryCreatePermission=Create new inventory +inventoryReadPermission=View inventories +inventoryWritePermission=Update inventories +inventoryValidatePermission=Validate inventory +inventoryTitle=Inventario +inventoryListTitle=Inventories +inventoryListEmpty=No inventory in progress +inventoryCreateDelete=Create/Delete inventory +inventoryCreate=Create new +inventoryEdit=Editar +inventoryValidate=Validado +inventoryDraft=Running +inventorySelectWarehouse=Warehouse choice +inventoryConfirmCreate=Crear +inventoryOfWarehouse=Inventory for warehouse: %s +inventoryErrorQtyAdd=Error: one quantity is less than zero +inventoryMvtStock=By inventory +inventoryWarningProductAlreadyExists=This product is already into list +SelectCategory=Category filter +SelectFournisseur=Vendor filter +inventoryOnDate=Inventario +INVENTORY_DISABLE_VIRTUAL=Virtual product (kit): do not decrement stock of a child product +INVENTORY_USE_MIN_PA_IF_NO_LAST_PA=Use the buy price if no last buy price can be found +INVENTORY_USE_INVENTORY_DATE_FOR_DATE_OF_MVT=Stock movements will have the date of inventory (instead of the date of inventory validation) +inventoryChangePMPPermission=Allow to change PMP value for a product +ColumnNewPMP=New unit PMP +OnlyProdsInStock=Do not add product without stock +TheoricalQty=Theorique qty +TheoricalValue=Theorique qty +LastPA=Last BP +CurrentPA=Curent BP +RecordedQty=Recorded Qty +RealQty=Real Qty +RealValue=Real Value +RegulatedQty=Regulated Qty +AddInventoryProduct=Add product to inventory +AddProduct=Engadir +ApplyPMP=Apply PMP +FlushInventory=Flush inventory +ConfirmFlushInventory=Do you confirm this action? +InventoryFlushed=Inventory flushed +ExitEditMode=Exit edition +inventoryDeleteLine=Eliminación de liña +RegulateStock=Regulate Stock +ListInventory=Listaxe +StockSupportServices=Stock management supports Services +StockSupportServicesDesc=By default, you can stock only products of type "product". You may also stock a product of type "service" if both module Services and this option are enabled. +ReceiveProducts=Receive items +StockIncreaseAfterCorrectTransfer=Increase by correction/transfer +StockDecreaseAfterCorrectTransfer=Decrease by correction/transfer +StockIncrease=Stock increase +StockDecrease=Stock decrease +InventoryForASpecificWarehouse=Inventory for a specific warehouse +InventoryForASpecificProduct=Inventory for a specific product +StockIsRequiredToChooseWhichLotToUse=Stock is required to choose which lot to use +ForceTo=Force to diff --git a/htdocs/langs/gl_ES/stripe.lang b/htdocs/langs/gl_ES/stripe.lang new file mode 100644 index 00000000000..38f22b6ab4d --- /dev/null +++ b/htdocs/langs/gl_ES/stripe.lang @@ -0,0 +1,72 @@ +# Dolibarr language file - Source file is en_US - stripe +StripeSetup=Stripe module setup +StripeDesc=Offer customers a Stripe online payment page for payments with credit/cebit cards via Stripe. This can be used to allow your customers to make ad-hoc payments or for payments related to a particular Dolibarr object (invoice, order, ...) +StripeOrCBDoPayment=Pay with credit card or Stripe +FollowingUrlAreAvailableToMakePayments=Following URLs are available to offer a page to a customer to make a payment on Dolibarr objects +PaymentForm=Payment form +WelcomeOnPaymentPage=Welcome to our online payment service +ThisScreenAllowsYouToPay=This screen allow you to make an online payment to %s. +ThisIsInformationOnPayment=This is information on payment to do +ToComplete=To complete +YourEMail=Email to receive payment confirmation +STRIPE_PAYONLINE_SENDEMAIL=Email notification after a payment attempt (success or fail) +Creditor=Creditor +PaymentCode=Payment code +StripeDoPayment=Pay with Stripe +YouWillBeRedirectedOnStripe=You will be redirected on secured Stripe page to input you credit card information +Continue=Seguinte +ToOfferALinkForOnlinePayment=URL for %s payment +ToOfferALinkForOnlinePaymentOnOrder=URL to offer a %s online payment page for a sales order +ToOfferALinkForOnlinePaymentOnInvoice=URL to offer a %s online payment page for a customer invoice +ToOfferALinkForOnlinePaymentOnContractLine=URL to offer a %s online payment page for a contract line +ToOfferALinkForOnlinePaymentOnFreeAmount=URL to offer a %s online payment page of any amount with no existing object +ToOfferALinkForOnlinePaymentOnMemberSubscription=URL to offer a %s online payment page for a member subscription +ToOfferALinkForOnlinePaymentOnDonation=URL to offer a %s online payment page for payment of a donation +YouCanAddTagOnUrl=You can also add url parameter &tag=value to any of those URL (mandatory only for payment not linked to an object) to add your own payment comment tag.
    For the URL of payments with no existing object, you may also add the parameter &noidempotency=1 so the same link with same tag can be used several times (some payment mode may limit the payment to 1 for each different link without this parameter) +SetupStripeToHavePaymentCreatedAutomatically=Setup your Stripe with url %s to have payment created automatically when validated by Stripe. +AccountParameter=Account parameters +UsageParameter=Usage parameters +InformationToFindParameters=Help to find your %s account information +STRIPE_CGI_URL_V2=Url of Stripe CGI module for payment +VendorName=Name of vendor +CSSUrlForPaymentForm=CSS style sheet url for payment form +NewStripePaymentReceived=New Stripe payment received +NewStripePaymentFailed=New Stripe payment tried but failed +FailedToChargeCard=Failed to charge card +STRIPE_TEST_SECRET_KEY=Secret test key +STRIPE_TEST_PUBLISHABLE_KEY=Publishable test key +STRIPE_TEST_WEBHOOK_KEY=Webhook test key +STRIPE_LIVE_SECRET_KEY=Secret live key +STRIPE_LIVE_PUBLISHABLE_KEY=Publishable live key +STRIPE_LIVE_WEBHOOK_KEY=Webhook live key +ONLINE_PAYMENT_WAREHOUSE=Stock to use for stock decrease when online payment is done
    (TODO When option to decrease stock is done on an action on invoice and the online payment generate itself the invoice ?) +StripeLiveEnabled=Stripe live enabled (otherwise test/sandbox mode) +StripeImportPayment=Import Stripe payments +ExampleOfTestCreditCard=Example of credit card for test: %s => valid, %s => error CVC, %s => expired, %s => charge fails +StripeGateways=Stripe gateways +OAUTH_STRIPE_TEST_ID=Stripe Connect Client ID (ca_...) +OAUTH_STRIPE_LIVE_ID=Stripe Connect Client ID (ca_...) +BankAccountForBankTransfer=Bank account for fund payouts +StripeAccount=Stripe account +StripeChargeList=List of Stripe charges +StripeTransactionList=List of Stripe transactions +StripeCustomerId=Stripe customer id +StripePaymentModes=Stripe payment modes +LocalID=Local ID +StripeID=Stripe ID +NameOnCard=Name on card +CardNumber=Card Number +ExpiryDate=Expiry Date +CVN=CVN +DeleteACard=Delete Card +ConfirmDeleteCard=Are you sure you want to delete this Credit or Debit card? +CreateCustomerOnStripe=Create customer on Stripe +CreateCardOnStripe=Create card on Stripe +ShowInStripe=Show in Stripe +StripeUserAccountForActions=User account to use for email notification of some Stripe events (Stripe payouts) +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... +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/gl_ES/supplier_proposal.lang b/htdocs/langs/gl_ES/supplier_proposal.lang new file mode 100644 index 00000000000..41ee3f3fc21 --- /dev/null +++ b/htdocs/langs/gl_ES/supplier_proposal.lang @@ -0,0 +1,54 @@ +# Dolibarr language file - Source file is en_US - supplier_proposal +SupplierProposal=Vendor commercial proposals +supplier_proposalDESC=Manage price requests to suppliers +SupplierProposalNew=New price request +CommRequest=Price request +CommRequests=Prezo orzamentos +SearchRequest=Find a request +DraftRequests=Draft requests +SupplierProposalsDraft=Draft vendor proposals +LastModifiedRequests=Latest %s modified price requests +RequestsOpened=Open price requests +SupplierProposalArea=Vendor proposals area +SupplierProposalShort=Vendor proposal +SupplierProposals=Orzamentos de provedor +SupplierProposalsShort=Orzamentos de provedor +NewAskPrice=New price request +ShowSupplierProposal=Show price request +AddSupplierProposal=Create a price request +SupplierProposalRefFourn=Vendor ref +SupplierProposalDate=Delivery date +SupplierProposalRefFournNotice=Before closing to "Accepted", think to grasp suppliers references. +ConfirmValidateAsk=Are you sure you want to validate this price request under name %s? +DeleteAsk=Delete request +ValidateAsk=Validate request +SupplierProposalStatusDraft=Borrador (é preciso validar) +SupplierProposalStatusValidated=Validated (request is open) +SupplierProposalStatusClosed=Pechada +SupplierProposalStatusSigned=Accepted +SupplierProposalStatusNotSigned=Rexeitado +SupplierProposalStatusDraftShort=Borrador +SupplierProposalStatusValidatedShort=Validado +SupplierProposalStatusClosedShort=Pechada +SupplierProposalStatusSignedShort=Accepted +SupplierProposalStatusNotSignedShort=Rexeitado +CopyAskFrom=Create a price request by copying an existing request +CreateEmptyAsk=Create blank request +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=Send price request by mail +SendAskRef=Sending the price request %s +SupplierProposalCard=Request card +ConfirmDeleteAsk=Are you sure you want to delete this price request %s? +ActionsOnSupplierProposal=Events on price request +DocModelAuroreDescription=A complete request model (logo...) +CommercialAsk=Price request +DefaultModelSupplierProposalCreate=Default model creation +DefaultModelSupplierProposalToBill=Default template when closing a price request (accepted) +DefaultModelSupplierProposalClosed=Default template when closing a price request (refused) +ListOfSupplierProposals=List of vendor proposal requests +ListSupplierProposalsAssociatedProject=List of vendor proposals associated with project +SupplierProposalsToClose=Vendor proposals to close +SupplierProposalsToProcess=Vendor proposals to process +LastSupplierProposals=Latest %s price requests +AllPriceRequests=All requests diff --git a/htdocs/langs/gl_ES/suppliers.lang b/htdocs/langs/gl_ES/suppliers.lang new file mode 100644 index 00000000000..fa0d1ea5ab6 --- /dev/null +++ b/htdocs/langs/gl_ES/suppliers.lang @@ -0,0 +1,47 @@ +# Dolibarr language file - Source file is en_US - vendors +Suppliers=Provedores +SuppliersInvoice=Vendor invoice +ShowSupplierInvoice=Show Vendor Invoice +NewSupplier=New vendor +History=History +ListOfSuppliers=List of vendors +ShowSupplier=Show vendor +OrderDate=Data pedido +BuyingPriceMin=Best buying price +BuyingPriceMinShort=Best buying price +TotalBuyingPriceMinShort=Total of subproducts buying prices +TotalSellingPriceMinShort=Total of subproducts selling prices +SomeSubProductHaveNoPrices=Some sub-products have no price defined +AddSupplierPrice=Add buying price +ChangeSupplierPrice=Change buying price +SupplierPrices=Prezos a provedores +ReferenceSupplierIsAlreadyAssociatedWithAProduct=This vendor reference is already associated with a product: %s +NoRecordedSuppliers=No vendor recorded +SupplierPayment=Pago a provedor +SuppliersArea=Vendor area +RefSupplierShort=Ref. provedor +Availability=Availability +ExportDataset_fournisseur_1=Vendor invoices and invoice details +ExportDataset_fournisseur_2=Vendor invoices and payments +ExportDataset_fournisseur_3=Purchase orders and order details +ApproveThisOrder=Approve this order +ConfirmApproveThisOrder=Are you sure you want to approve order %s? +DenyingThisOrder=Deny this order +ConfirmDenyingThisOrder=Are you sure you want to deny this order %s? +ConfirmCancelThisOrder=Are you sure you want to cancel this order %s? +AddSupplierOrder=Create Purchase Order +AddSupplierInvoice=Create vendor invoice +ListOfSupplierProductForSupplier=List of products and prices for vendor %s +SentToSuppliers=Sent to vendors +ListOfSupplierOrders=List of purchase orders +MenuOrdersSupplierToBill=Purchase orders to invoice +NbDaysToDelivery=Delivery delay (days) +DescNbDaysToDelivery=The longest delivery delay of the products from this order +SupplierReputation=Vendor reputation +DoNotOrderThisProductToThisSupplier=Do not order +NotTheGoodQualitySupplier=Low quality +ReputationForThisProduct=Reputation +BuyerName=Buyer name +AllProductServicePrices=All product / service prices +AllProductReferencesOfSupplier=All product / service references of vendor +BuyingPriceNumShort=Prezos a provedores diff --git a/htdocs/langs/gl_ES/ticket.lang b/htdocs/langs/gl_ES/ticket.lang new file mode 100644 index 00000000000..1167d2d8c69 --- /dev/null +++ b/htdocs/langs/gl_ES/ticket.lang @@ -0,0 +1,305 @@ +# en_US lang file for module ticket +# Copyright (C) 2013 Jean-François FERRY +# +# 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 . + +# +# Generic +# + +Module56000Name=Tickets +Module56000Desc=Ticket system for issue or request management + +Permission56001=See tickets +Permission56002=Modify tickets +Permission56003=Delete tickets +Permission56004=Manage tickets +Permission56005=See tickets of all third parties (not effective for external users, always be limited to the third party they depend on) + +TicketDictType=Ticket - Types +TicketDictCategory=Ticket - Groupes +TicketDictSeverity=Ticket - Severities +TicketDictResolution=Ticket - Resolution +TicketTypeShortBUGSOFT=Dysfonctionnement logiciel +TicketTypeShortBUGHARD=Dysfonctionnement matériel +TicketTypeShortCOM=Commercial question + +TicketTypeShortHELP=Request for functionnal help +TicketTypeShortISSUE=Issue, bug or problem +TicketTypeShortREQUEST=Change or enhancement request +TicketTypeShortPROJET=Proxecto +TicketTypeShortOTHER=Outro + +TicketSeverityShortLOW=Baixo +TicketSeverityShortNORMAL=Normal +TicketSeverityShortHIGH=Alto +TicketSeverityShortBLOCKING=Critical/Blocking + +ErrorBadEmailAddress=Field '%s' incorrect +MenuTicketMyAssign=My tickets +MenuTicketMyAssignNonClosed=My open tickets +MenuListNonClosed=Open tickets + +TypeContact_ticket_internal_CONTRIBUTOR=Participante +TypeContact_ticket_internal_SUPPORTTEC=Assigned user +TypeContact_ticket_external_SUPPORTCLI=Customer contact / incident tracking +TypeContact_ticket_external_CONTRIBUTOR=External contributor + +OriginEmail=Email source +Notify_TICKET_SENTBYMAIL=Send ticket message by email + +# Status +NotRead=Non lido +Read=Read +Assigned=Assigned +InProgress=En progreso +NeedMoreInformation=Waiting for information +Answered=Answered +Waiting=Waiting +Closed=Pechada +Deleted=Deleted + +# Dict +Type=Tipo +Category=Analytic code +Severity=Severity + +# Email templates +MailToSendTicketMessage=To send email from ticket message + +# +# Admin page +# +TicketSetup=Ticket module setup +TicketSettings=Settings +TicketSetupPage= +TicketPublicAccess=A public interface requiring no identification is available at the following url +TicketSetupDictionaries=The type of ticket, severity and analytic codes are configurable from dictionaries +TicketParamModule=Module variable setup +TicketParamMail=Email setup +TicketEmailNotificationFrom=Notification email from +TicketEmailNotificationFromHelp=Used into ticket message answer by example +TicketEmailNotificationTo=Notifications email to +TicketEmailNotificationToHelp=Send email notifications to this address. +TicketNewEmailBodyLabel=Text message sent after creating a ticket +TicketNewEmailBodyHelp=The text specified here will be inserted into the email confirming the creation of a new ticket from the public interface. Information on the consultation of the ticket are automatically added. +TicketParamPublicInterface=Public interface setup +TicketsEmailMustExist=Require an existing email address to create a ticket +TicketsEmailMustExistHelp=In the public interface, the email address should already be filled in the database to create a new ticket. +PublicInterface=Public interface +TicketUrlPublicInterfaceLabelAdmin=Alternative URL for public interface +TicketUrlPublicInterfaceHelpAdmin=It is possible to define an alias to the web server and thus make available the public interface with another URL (the server must act as a proxy on this new URL) +TicketPublicInterfaceTextHomeLabelAdmin=Welcome text of the public interface +TicketPublicInterfaceTextHome=You can create a support ticket or view existing from its identifier tracking ticket. +TicketPublicInterfaceTextHomeHelpAdmin=The text defined here will appear on the home page of the public interface. +TicketPublicInterfaceTopicLabelAdmin=Interface title +TicketPublicInterfaceTopicHelp=This text will appear as the title of the public interface. +TicketPublicInterfaceTextHelpMessageLabelAdmin=Help text to the message entry +TicketPublicInterfaceTextHelpMessageHelpAdmin=This text will appear above the message input area of the user. +ExtraFieldsTicket=Extra attributes +TicketCkEditorEmailNotActivated=HTML editor is not activated. Please put FCKEDITOR_ENABLE_MAIL content to 1 to get it. +TicketsDisableEmail=Do not send emails for ticket creation or message recording +TicketsDisableEmailHelp=By default, emails are sent when new tickets or messages created. Enable this option to disable *all* email notifications +TicketsLogEnableEmail=Enable log by email +TicketsLogEnableEmailHelp=At each change, an email will be sent **to each contact** associated with the ticket. +TicketParams=Params +TicketsShowModuleLogo=Display the logo of the module in the public interface +TicketsShowModuleLogoHelp=Enable this option to hide the logo module in the pages of the public interface +TicketsShowCompanyLogo=Display the logo of the company in the public interface +TicketsShowCompanyLogoHelp=Enable this option to hide the logo of the main company in the pages of the public interface +TicketsEmailAlsoSendToMainAddress=Also send notification to main email address +TicketsEmailAlsoSendToMainAddressHelp=Enable this option to send an email to "Notification email from" address (see setup below) +TicketsLimitViewAssignedOnly=Restrict the display to tickets assigned to the current user (not effective for external users, always be limited to the third party they depend on) +TicketsLimitViewAssignedOnlyHelp=Only tickets assigned to the current user will be visible. Does not apply to a user with tickets management rights. +TicketsActivatePublicInterface=Activate public interface +TicketsActivatePublicInterfaceHelp=Public interface allow any visitors to create tickets. +TicketsAutoAssignTicket=Automatically assign the user who created the ticket +TicketsAutoAssignTicketHelp=When creating a ticket, the user can be automatically assigned to the ticket. +TicketNumberingModules=Tickets numbering module +TicketNotifyTiersAtCreation=Notify third party at creation +TicketGroup=Grupo +TicketsDisableCustomerEmail=Always disable emails when a ticket is created from public interface +# +# Index & list page +# +TicketsIndex=Tickets area +TicketList=List of tickets +TicketAssignedToMeInfos=This page display ticket list created by or assigned to current user +NoTicketsFound=No ticket found +NoUnreadTicketsFound=No unread ticket found +TicketViewAllTickets=View all tickets +TicketViewNonClosedOnly=View only open tickets +TicketStatByStatus=Tickets by status +OrderByDateAsc=Sort by ascending date +OrderByDateDesc=Sort by descending date +ShowAsConversation=Show as conversation list +MessageListViewType=Show as table list + +# +# Ticket card +# +Ticket=Ticket +TicketCard=Ticket card +CreateTicket=Create ticket +EditTicket=Edit ticket +TicketsManagement=Tickets Management +CreatedBy=Created by +NewTicket=New Ticket +SubjectAnswerToTicket=Ticket answer +TicketTypeRequest=Request type +TicketCategory=Analytic code +SeeTicket=See ticket +TicketMarkedAsRead=Ticket has been marked as read +TicketReadOn=Read on +TicketCloseOn=Data de peche +MarkAsRead=Mark ticket as read +TicketHistory=Ticket history +AssignUser=Assign to user +TicketAssigned=Ticket is now assigned +TicketChangeType=Change type +TicketChangeCategory=Change analytic code +TicketChangeSeverity=Change severity +TicketAddMessage=Add a message +AddMessage=Add a message +MessageSuccessfullyAdded=Ticket added +TicketMessageSuccessfullyAdded=Message successfully added +TicketMessagesList=Message list +NoMsgForThisTicket=No message for this ticket +Properties=Classification +LatestNewTickets=Latest %s newest tickets (not read) +TicketSeverity=Severity +ShowTicket=See ticket +RelatedTickets=Related tickets +TicketAddIntervention=Create intervention +CloseTicket=Close ticket +CloseATicket=Close a ticket +ConfirmCloseAticket=Confirm ticket closing +ConfirmDeleteTicket=Please confirm ticket deleting +TicketDeletedSuccess=Ticket deleted with success +TicketMarkedAsClosed=Ticket marked as closed +TicketDurationAuto=Calculated duration +TicketDurationAutoInfos=Duration calculated automatically from intervention related +TicketUpdated=Ticket updated +SendMessageByEmail=Send message by email +TicketNewMessage=New message +ErrorMailRecipientIsEmptyForSendTicketMessage=Recipient is empty. No email send +TicketGoIntoContactTab=Please go into "Contacts" tab to select them +TicketMessageMailIntro=Introduction +TicketMessageMailIntroHelp=This text is added only at the beginning of the email and will not be saved. +TicketMessageMailIntroLabelAdmin=Introduction to the message when sending email +TicketMessageMailIntroText=Hello,
    A new response was sent on a ticket that you contact. Here is the message:
    +TicketMessageMailIntroHelpAdmin=This text will be inserted before the text of the response to a ticket. +TicketMessageMailSignature=Sinatura +TicketMessageMailSignatureHelp=This text is added only at the end of the email and will not be saved. +TicketMessageMailSignatureText=

    Sincerely,

    --

    +TicketMessageMailSignatureLabelAdmin=Signature of response email +TicketMessageMailSignatureHelpAdmin=This text will be inserted after the response message. +TicketMessageHelp=Only this text will be saved in the message list on ticket card. +TicketMessageSubstitutionReplacedByGenericValues=Substitutions variables are replaced by generic values. +TimeElapsedSince=Time elapsed since +TicketTimeToRead=Time elapsed before read +TicketContacts=Contacts ticket +TicketDocumentsLinked=Documents linked to ticket +ConfirmReOpenTicket=Confirm reopen this ticket ? +TicketMessageMailIntroAutoNewPublicMessage=A new message was posted on the ticket with the subject %s: +TicketAssignedToYou=Ticket assigned +TicketAssignedEmailBody=You have been assigned the ticket #%s by %s +MarkMessageAsPrivate=Mark message as private +TicketMessagePrivateHelp=This message will not display to external users +TicketEmailOriginIssuer=Issuer at origin of the tickets +InitialMessage=Initial Message +LinkToAContract=Link to a contract +TicketPleaseSelectAContract=Select a contract +UnableToCreateInterIfNoSocid=Can not create an intervention when no third party is defined +TicketMailExchanges=Mail exchanges +TicketInitialMessageModified=Initial message modified +TicketMessageSuccesfullyUpdated=Message successfully updated +TicketChangeStatus=Change status +TicketConfirmChangeStatus=Confirm the status change: %s ? +TicketLogStatusChanged=Status changed: %s to %s +TicketNotNotifyTiersAtCreate=Not notify company at create +Unread=Unread +TicketNotCreatedFromPublicInterface=Not available. Ticket was not created from public interface. +PublicInterfaceNotEnabled=Public interface was not enabled +ErrorTicketRefRequired=Ticket reference name is required + +# +# Logs +# +TicketLogMesgReadBy=Ticket %s read by %s +NoLogForThisTicket=No log for this ticket yet +TicketLogAssignedTo=Ticket %s assigned to %s +TicketLogPropertyChanged=Ticket %s modified: classification from %s to %s +TicketLogClosedBy=Ticket %s closed by %s +TicketLogReopen=Ticket %s re-open + +# +# Public pages +# +TicketSystem=Ticket system +ShowListTicketWithTrackId=Display ticket list from track ID +ShowTicketWithTrackId=Display ticket from track ID +TicketPublicDesc=You can create a support ticket or check from an existing ID. +YourTicketSuccessfullySaved=Ticket has been successfully saved! +MesgInfosPublicTicketCreatedWithTrackId=A new ticket has been created with ID %s and Ref %s. +PleaseRememberThisId=Please keep the tracking number that we might ask you later. +TicketNewEmailSubject=Ticket creation confirmation - Ref %s (public ticket ID %s) +TicketNewEmailSubjectCustomer=New support ticket +TicketNewEmailBody=This is an automatic email to confirm you have registered a new ticket. +TicketNewEmailBodyCustomer=This is an automatic email to confirm a new ticket has just been created into your account. +TicketNewEmailBodyInfosTicket=Information for monitoring the ticket +TicketNewEmailBodyInfosTrackId=Ticket tracking number: %s +TicketNewEmailBodyInfosTrackUrl=You can view the progress of the ticket by clicking the link above. +TicketNewEmailBodyInfosTrackUrlCustomer=You can view the progress of the ticket in the specific interface by clicking the following link +TicketEmailPleaseDoNotReplyToThisEmail=Please do not reply directly to this email! Use the link to reply into the interface. +TicketPublicInfoCreateTicket=This form allows you to record a support ticket in our management system. +TicketPublicPleaseBeAccuratelyDescribe=Please accurately describe the problem. Provide the most information possible to allow us to correctly identify your request. +TicketPublicMsgViewLogIn=Please enter ticket tracking ID +TicketTrackId=Public Tracking ID +OneOfTicketTrackId=One of your tracking ID +ErrorTicketNotFound=Ticket with tracking ID %s not found! +Subject=Asunto +ViewTicket=View ticket +ViewMyTicketList=View my ticket list +ErrorEmailMustExistToCreateTicket=Error: email address not found in our database +TicketNewEmailSubjectAdmin=New ticket created - Ref %s (public ticket ID %s) +TicketNewEmailBodyAdmin=

    Ticket has just been created with ID #%s, see information:

    +SeeThisTicketIntomanagementInterface=See ticket in management interface +TicketPublicInterfaceForbidden=The public interface for the tickets was not enabled +ErrorEmailOrTrackingInvalid=Bad value for tracking ID or email +OldUser=Old user +NewUser=Novo usuario +NumberOfTicketsByMonth=Number of tickets per month +NbOfTickets=Number of tickets +# notifications +TicketNotificationEmailSubject=Ticket %s updated +TicketNotificationEmailBody=This is an automatic message to notify you that ticket %s has just been updated +TicketNotificationRecipient=Notification recipient +TicketNotificationLogMessage=Log message +TicketNotificationEmailBodyInfosTrackUrlinternal=View ticket into interface +TicketNotificationNumberEmailSent=Notification email sent: %s + +ActionsOnTicket=Events on ticket + +# +# Boxes +# +BoxLastTicket=Latest created tickets +BoxLastTicketDescription=Latest %s created tickets +BoxLastTicketContent= +BoxLastTicketNoRecordedTickets=No recent unread tickets +BoxLastModifiedTicket=Latest modified tickets +BoxLastModifiedTicketDescription=Latest %s modified tickets +BoxLastModifiedTicketContent= +BoxLastModifiedTicketNoRecordedTickets=No recent modified tickets diff --git a/htdocs/langs/gl_ES/trips.lang b/htdocs/langs/gl_ES/trips.lang new file mode 100644 index 00000000000..9b585d46fd8 --- /dev/null +++ b/htdocs/langs/gl_ES/trips.lang @@ -0,0 +1,151 @@ +# Dolibarr language file - Source file is en_US - trips +ShowExpenseReport=Show expense report +Trips=Informes de gastos +TripsAndExpenses=Expenses reports +TripsAndExpensesStatistics=Expense reports statistics +TripCard=Expense report card +AddTrip=Create expense report +ListOfTrips=List of expense reports +ListOfFees=List of fees +TypeFees=Types of fees +ShowTrip=Show expense report +NewTrip=New expense report +LastExpenseReports=Latest %s expense reports +AllExpenseReports=All expense reports +CompanyVisited=Company/organization visited +FeesKilometersOrAmout=Amount or kilometers +DeleteTrip=Delete expense report +ConfirmDeleteTrip=Are you sure you want to delete this expense report? +ListTripsAndExpenses=List of expense reports +ListToApprove=Waiting for approval +ExpensesArea=Expense reports area +ClassifyRefunded=Classify 'Refunded' +ExpenseReportWaitingForApproval=A new expense report has been submitted for approval +ExpenseReportWaitingForApprovalMessage=A new expense report has been submitted and is waiting for approval.
    - User: %s
    - Period: %s
    Click here to validate: %s +ExpenseReportWaitingForReApproval=An expense report has been submitted for re-approval +ExpenseReportWaitingForReApprovalMessage=An expense report has been submitted and is waiting for re-approval.
    The %s, you refused to approve the expense report for this reason: %s.
    A new version has been proposed and waiting for your approval.
    - User: %s
    - Period: %s
    Click here to validate: %s +ExpenseReportApproved=An expense report was approved +ExpenseReportApprovedMessage=The expense report %s was approved.
    - User: %s
    - Approved by: %s
    Click here to show the expense report: %s +ExpenseReportRefused=An expense report was refused +ExpenseReportRefusedMessage=The expense report %s was refused.
    - User: %s
    - Refused by: %s
    - Motive for refusal: %s
    Click here to show the expense report: %s +ExpenseReportCanceled=An expense report was canceled +ExpenseReportCanceledMessage=The expense report %s was canceled.
    - User: %s
    - Canceled by: %s
    - Motive for cancellation: %s
    Click here to show the expense report: %s +ExpenseReportPaid=An expense report was paid +ExpenseReportPaidMessage=The expense report %s was paid.
    - User: %s
    - Paid by: %s
    Click here to show the expense report: %s +TripId=Id expense report +AnyOtherInThisListCanValidate=Person to inform for validation. +TripSociete=Information company +TripNDF=Informations expense report +PDFStandardExpenseReports=Standard template to generate a PDF document for expense report +ExpenseReportLine=Expense report line +TF_OTHER=Outro +TF_TRIP=Transportation +TF_LUNCH=Lunch +TF_METRO=Metro +TF_TRAIN=Train +TF_BUS=Bus +TF_CAR=Car +TF_PEAGE=Toll +TF_ESSENCE=Fuel +TF_HOTEL=Hotel +TF_TAXI=Taxi +EX_KME=Mileage costs +EX_FUE=Fuel CV +EX_HOT=Hotel +EX_PAR=Parking CV +EX_TOL=Toll CV +EX_TAX=Various Taxes +EX_IND=Indemnity transportation subscription +EX_SUM=Maintenance supply +EX_SUO=Office supplies +EX_CAR=Car rental +EX_DOC=Documentation +EX_CUR=Customers receiving +EX_OTR=Other receiving +EX_POS=Postage +EX_CAM=CV maintenance and repair +EX_EMM=Employees meal +EX_GUM=Guests meal +EX_BRE=Breakfast +EX_FUE_VP=Fuel PV +EX_TOL_VP=Toll PV +EX_PAR_VP=Parking PV +EX_CAM_VP=PV maintenance and repair +DefaultCategoryCar=Default transportation mode +DefaultRangeNumber=Default range number +UploadANewFileNow=Upload a new document now +Error_EXPENSEREPORT_ADDON_NotDefined=Error, the rule for expense report numbering ref was not defined into setup of module 'Expense Report' +ErrorDoubleDeclaration=You have declared another expense report into a similar date range. +AucuneLigne=There is no expense report declared yet +ModePaiement=Payment mode +VALIDATOR=User responsible for approval +VALIDOR=Aprobado por +AUTHOR=Recorded by +AUTHORPAIEMENT=Pagado por +REFUSEUR=Denied by +CANCEL_USER=Deleted by +MOTIF_REFUS=Razón +MOTIF_CANCEL=Razón +DATE_REFUS=Deny date +DATE_SAVE=Data de validación +DATE_CANCEL=Cancelation date +DATE_PAIEMENT=Payment date +BROUILLONNER=Reopen +ExpenseReportRef=Ref. expense report +ValidateAndSubmit=Validate and submit for approval +ValidatedWaitingApproval=Validated (waiting for approval) +NOT_AUTHOR=You are not the author of this expense report. Operation cancelled. +ConfirmRefuseTrip=Are you sure you want to deny this expense report? +ValideTrip=Approve expense report +ConfirmValideTrip=Are you sure you want to approve this expense report? +PaidTrip=Pay an expense report +ConfirmPaidTrip=Are you sure you want to change status of this expense report to "Paid"? +ConfirmCancelTrip=Are you sure you want to cancel this expense report? +BrouillonnerTrip=Move back expense report to status "Draft" +ConfirmBrouillonnerTrip=Are you sure you want to move this expense report to status "Draft"? +SaveTrip=Validate expense report +ConfirmSaveTrip=Are you sure you want to validate this expense report? +NoTripsToExportCSV=No expense report to export for this period. +ExpenseReportPayment=Expense report payment +ExpenseReportsToApprove=Expense reports to approve +ExpenseReportsToPay=Expense reports to pay +ConfirmCloneExpenseReport=Are you sure you want to clone this expense report ? +ExpenseReportsIk=Expense report milles index +ExpenseReportsRules=Expense report rules +ExpenseReportIkDesc=You can modify the calculation of kilometers expense by category and range who they are previously defined. d is the distance in kilometers +ExpenseReportRulesDesc=You can create or update any rules of calculation. This part will be used when user will create a new expense report +expenseReportOffset=Decálogo +expenseReportCoef=Coefficient +expenseReportTotalForFive=Example with d = 5 +expenseReportRangeFromTo=from %d to %d +expenseReportRangeMoreThan=more than %d +expenseReportCoefUndefined=(value not defined) +expenseReportCatDisabled=Category disabled - see the c_exp_tax_cat dictionary +expenseReportRangeDisabled=Range disabled - see the c_exp_tax_range dictionay +expenseReportPrintExample=offset + (d x coef) = %s +ExpenseReportApplyTo=Apply to +ExpenseReportDomain=Domain to apply +ExpenseReportLimitOn=Limit on +ExpenseReportDateStart=Date start +ExpenseReportDateEnd=Date end +ExpenseReportLimitAmount=Limite amount +ExpenseReportRestrictive=Restrictive +AllExpenseReport=All type of expense report +OnExpense=Expense line +ExpenseReportRuleSave=Expense report rule saved +ExpenseReportRuleErrorOnSave=Error: %s +RangeNum=Range %d +ExpenseReportConstraintViolationError=Constraint violation id [%s]: %s is superior to %s %s +byEX_DAY=by day (limitation to %s) +byEX_MON=by month (limitation to %s) +byEX_YEA=by year (limitation to %s) +byEX_EXP=by line (limitation to %s) +ExpenseReportConstraintViolationWarning=Constraint violation id [%s]: %s is superior to %s %s +nolimitbyEX_DAY=by day (no limitation) +nolimitbyEX_MON=by month (no limitation) +nolimitbyEX_YEA=by year (no limitation) +nolimitbyEX_EXP=by line (no limitation) +CarCategory=Category of car +ExpenseRangeOffset=Offset amount: %s +RangeIk=Mileage range +AttachTheNewLineToTheDocument=Attach the line to an uploaded document diff --git a/htdocs/langs/gl_ES/users.lang b/htdocs/langs/gl_ES/users.lang new file mode 100644 index 00000000000..3b598c04a22 --- /dev/null +++ b/htdocs/langs/gl_ES/users.lang @@ -0,0 +1,118 @@ +# Dolibarr language file - Source file is en_US - users +HRMArea=Área Recursos humáns +UserCard=Ficha usuario +GroupCard=Ficha grupo +Permission=Permiso +Permissions=Permisos +EditPassword=Editar contrasinal +SendNewPassword=Xerar e enviar novo contrasinal +SendNewPasswordLink=Enviar enlace para restablecer o contrasinal +ReinitPassword=Xerar novo contrasinal +PasswordChangedTo=Contrasinal modificado para: %s +SubjectNewPassword=O seu novo contrasinal para %s +GroupRights=Permisos de grupo +UserRights=Permisos usuario +UserGUISetup=Interfaz usuario +DisableUser=Desactivar +DisableAUser=Desactivar un usuario +DeleteUser=Eliminar +DeleteAUser=Eliminar un usuario +EnableAUser=Activar un usuario +DeleteGroup=Eliminar +DeleteAGroup=Eliminar un grupo +ConfirmDisableUser=Está certo de querer desactivar o usuario %s? +ConfirmDeleteUser=¿Está certo de querer eliminar o usuario %s? +ConfirmDeleteGroup=¿Está certo de querer eliminar o grupo %s? +ConfirmEnableUser=¿Está certo de querer activar o usuario %s? +ConfirmReinitPassword=¿Está certo de querer xerar un novo contrasinal ao usuario %s? +ConfirmSendNewPassword=¿Está certo de querer xerar e enviar un novo contrasinal ao usuario %s? +NewUser=Novo usuario +CreateUser=Engadir usuario +LoginNotDefined=O usuario non está definido +NameNotDefined=O nome non está definido +ListOfUsers=Listaxe de usuarios +SuperAdministrator=Super Administrador +SuperAdministratorDesc=Administrador global +AdministratorDesc=Administrador +DefaultRights=Permisos por defecto +DefaultRightsDesc=Defina aquí os permisos por defecto, é dicir: os permisos que serán asignados automáticamente a un novo usuario no momento da súa creación (Ver a ficha usuario para cambiar os permisos a un usuario existente). +DolibarrUsers=Usuarios Dolibarr +LastName=Apelidos +FirstName=Nome +ListOfGroups=Listaxe de grupos +NewGroup=Novo grupo +CreateGroup=Engadir o grupo +RemoveFromGroup=Eliminar do grupo +PasswordChangedAndSentTo=Contrasinal cambiado e enviado a %s. +PasswordChangeRequest=Solicitude para cambiar o contrasinal de %s +PasswordChangeRequestSent=Solicitude de cambio de contrasinal para %s enviado a %s. +ConfirmPasswordReset=Confirmar restablecemento de contrasinal +MenuUsersAndGroups=Usuarios e grupos +LastGroupsCreated=Últimos %s grupos creados +LastUsersCreated=Últimos %s usuarios creados +ShowGroup=Ver grupo +ShowUser=Ver usuario +NonAffectedUsers=Usuarios non asignados +UserModified=Usuario correctamente modificado +PhotoFile=Ficheiro foto +ListOfUsersInGroup=Listaxe de usuarios deste grupo +ListOfGroupsForUser=Listaxe de grupos deste usuario +LinkToCompanyContact=Enlace terceiros / contactos +LinkedToDolibarrMember=Enlace membro +LinkedToDolibarrUser=Enlace a usuario Dolibarr +LinkedToDolibarrThirdParty=Enlace a terceiro Dolibarr +CreateDolibarrLogin=Crear un usuario +CreateDolibarrThirdParty=Crear un terceiro +LoginAccountDisableInDolibarr=A conta está desactivada en Dolibarr +UsePersonalValue=Utilizar valores persoalizados +InternalUser=Usuario interno +ExportDataset_user_1=Usuarios e as súas propiedades. +DomainUser=Usuario de dominio +Reactivate=Reactivar +CreateInternalUserDesc=Este formulario permitelle engadir un usuario interno para a súa empresa/organización. Para crear un usuario externo (cliente, provedor, etc...), use o botón "Crear usuario Dolibarr" dende unha ficha dun contacto do terceiro. +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +PermissionInheritedFromAGroup=O permiso concédese xa que o hereda dun grupo ao cal pertence o usuario. +Inherited=Heredado +UserWillBeInternalUser=O usuario creado será un usuario interno (xa que non está ligado a un terceiro en particular) +UserWillBeExternalUser=O usuario creado será un usuario externo (xa que está ligado a un terceiro en particular) +IdPhoneCaller=ID chamada recibida (teléfono) +NewUserCreated=usuario %s creado +NewUserPassword=Password cambiado para %s +NewPasswordValidated=Your new password have been validated and must be used now to login. +EventUserModified=Usuario %s modificado +UserDisabled=Usuario %s deshabilitado +UserEnabled=Usuario %s activado +UserDeleted=Usuario %s eliminado +NewGroupCreated=Grupo %s engadido +GroupModified=Grupo %s modificado +GroupDeleted=Grupo %s eliminado +ConfirmCreateContact=¿Está certo de querer crear unha conta Dolibarr para este contacto? +ConfirmCreateLogin=¿Está certo de querer crear unha conta Dolibarr para este membro? +ConfirmCreateThirdParty=¿Está certo de querer crear un terceiro para este membro? +LoginToCreate=Login a crear +NameToCreate=Nome do terceiro a crear +YourRole=Os seus roles +YourQuotaOfUsersIsReached=¡Máximo de cota de usuarios activos! +NbOfUsers=Nº de usuarios +NbOfPermissions=Nº de permisos +DontDowngradeSuperAdmin=Sólo un superadmin pode degradar un superadmin +HierarchicalResponsible=Supervisor +HierarchicView=Vista xerárquica +UseTypeFieldToChange=Modificar o campo Tipo para cambiar +OpenIDURL=URL OpenID +LoginUsingOpenID=Usar OpenID para iniciar sesión +WeeklyHours=Horas traballadas (por semana) +ExpectedWorkedHours=Horas previstas por semana +ColorUser=Cor para o usuario +DisabledInMonoUserMode=Desactivado en modo mantemento +UserAccountancyCode=Código contable usuario +UserLogoff=Usuario desconectado +UserLogged=Usuario conectado +DateEmployment=Data de contratación do empregado +DateEmploymentEnd=Data de baixa do empregado +CantDisableYourself=You can't disable your own user record +ForceUserExpenseValidator=Force expense report validator +ForceUserHolidayValidator=Force leave request validator +ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/gl_ES/website.lang b/htdocs/langs/gl_ES/website.lang new file mode 100644 index 00000000000..1e930afcec1 --- /dev/null +++ b/htdocs/langs/gl_ES/website.lang @@ -0,0 +1,130 @@ +# Dolibarr language file - Source file is en_US - website +Shortname=Código +WebsiteSetupDesc=Create here the websites you wish to use. Then go into menu Websites to edit them. +DeleteWebsite=Delete website +ConfirmDeleteWebsite=Are you sure you want to delete this web site? All its pages and content will also be removed. The files uploaded (like into the medias directory, the ECM module, ...) will remain. +WEBSITE_TYPE_CONTAINER=Type of page/container +WEBSITE_PAGE_EXAMPLE=Web page to use as example +WEBSITE_PAGENAME=Page name/alias +WEBSITE_ALIASALT=Alternative page names/aliases +WEBSITE_ALIASALTDesc=Use here list of other name/aliases so the page can also be accessed using this other names/aliases (for example the old name after renaming the alias to keep backlink on old link/name working). Syntax is:
    alternativename1, alternativename2, ... +WEBSITE_CSS_URL=URL of external CSS file +WEBSITE_CSS_INLINE=CSS file content (common to all pages) +WEBSITE_JS_INLINE=Javascript file content (common to all pages) +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. +MediaFiles=Media library +EditCss=Edit website properties +EditMenu=Edit menu +EditMedias=Edit medias +EditPageMeta=Edit page/container properties +EditInLine=Edit inline +AddWebsite=Add website +Webpage=Web page/container +AddPage=Add page/container +HomePage=Home Page +PageContainer=Page/container +PreviewOfSiteNotYetAvailable=Preview of your website %s not yet available. You must first 'Import a full website template' or just 'Add a page/container'. +RequestedPageHasNoContentYet=Requested page with id %s has no content yet, or cache file .tpl.php was removed. Edit content of the page to solve this. +SiteDeleted=Web site '%s' deleted +PageContent=Page/Contenair +PageDeleted=Page/Contenair '%s' of website %s deleted +PageAdded=Page/Contenair '%s' added +ViewSiteInNewTab=View site in new tab +ViewPageInNewTab=View page in new tab +SetAsHomePage=Set as Home page +RealURL=Real URL +ViewWebsiteInProduction=View web site using home URLs +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: +YouCanAlsoTestWithPHPS=Use with PHP embedded server
    On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running
    php -S 0.0.0.0:8080 -t %s +YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org +CheckVirtualHostPerms=Check also that virtual host has permission %s on files into
    %s +ReadPerm=Read +WritePerm=Write +TestDeployOnWeb=Test/deploy on web +PreviewSiteServedByWebServer=Preview %s in a new tab.

    The %s will be served by an external web server (like Apache, Nginx, IIS). You must install and setup this server before to point to directory:
    %s
    URL served by external server:
    %s +PreviewSiteServedByDolibarr=Preview %s in a new tab.

    The %s will be served by Dolibarr server so it does not need any extra web server (like Apache, Nginx, IIS) to be installed.
    The inconvenient is that URL of pages are not user friendly and start with path of your Dolibarr.
    URL served by Dolibarr:
    %s

    To use your own external web server to serve this web site, create a virtual host on your web server that point on directory
    %s
    then enter the name of this virtual server and click on the other preview button. +VirtualHostUrlNotDefined=URL of the virtual host served by external web server not defined +NoPageYet=No pages yet +YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template +SyntaxHelp=Help on specific syntax tips +YouCanEditHtmlSourceckeditor=You can edit HTML source code using the "Source" button in editor. +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +ClonePage=Clone page/container +CloneSite=Clone site +SiteAdded=Website added +ConfirmClonePage=Please enter code/alias of new page and if it is a translation of the cloned page. +PageIsANewTranslation=The new page is a translation of the current page ? +LanguageMustNotBeSameThanClonedPage=You clone a page as a translation. The language of the new page must be different than language of source page. +ParentPageId=Parent page ID +WebsiteId=Website ID +CreateByFetchingExternalPage=Create page/container by fetching page from external URL... +OrEnterPageInfoManually=Or create page from scratch or from a page template... +FetchAndCreate=Fetch and Create +ExportSite=Export website +ImportSite=Import website template +IDOfPage=Id of page +Banner=Banner +BlogPost=Blog post +WebsiteAccount=Website account +WebsiteAccounts=Contas do sitio web +AddWebsiteAccount=Create web site account +BackToListForThirdParty=Back to list for the third-party +DisableSiteFirst=Disable website first +MyContainerTitle=My web site title +AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) +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 +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. +OnlyEditionOfSourceForGrabbedContent=Only edition of HTML source is possible when content was grabbed from an external site +GrabImagesInto=Grab also images found into css and page. +ImagesShouldBeSavedInto=Images should be saved into directory +WebsiteRootOfImages=Root directory for website images +SubdirOfPage=Sub-directory dedicated to page +AliasPageAlreadyExists=Alias page %s already exists +CorporateHomePage=Corporate Home page +EmptyPage=Empty page +ExternalURLMustStartWithHttp=External URL must start with http:// or https:// +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 +ThisPageHasTranslationPages=This page/container has translation +NoWebSiteCreateOneFirst=No website has been created yet. Create one first. +GoTo=Go to +DynamicPHPCodeContainsAForbiddenInstruction=You add dynamic PHP code that contains the PHP instruction '%s' that is forbidden by default as dynamic content (see hidden options WEBSITE_PHP_ALLOW_xxx to increase list of allowed commands). +NotAllowedToAddDynamicContent=You don't have permission to add or edit PHP dynamic content in websites. Ask permission or just keep code into php tags unmodified. +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 +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. +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. +Dynamiccontent=Sample of a page with dynamic content +ImportSite=Import website template +EditInLineOnOff=Mode 'Edit inline' is %s +ShowSubContainersOnOff=Mode to execute 'dynamic content' is %s +GlobalCSSorJS=Global CSS/JS/Header file of web site +BackToHomePage=Back to home page... +TranslationLinks=Translation links +YouTryToAccessToAFileThatIsNotAWebsitePage=You try to access to a page that is not a website page +UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 characters +MainLanguage=Main language +OtherLanguages=Other languages +UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/gl_ES/withdrawals.lang b/htdocs/langs/gl_ES/withdrawals.lang new file mode 100644 index 00000000000..6ecb64032c0 --- /dev/null +++ b/htdocs/langs/gl_ES/withdrawals.lang @@ -0,0 +1,119 @@ +# Dolibarr language file - Source file is en_US - withdrawals +CustomersStandingOrdersArea=Direct debit payment orders area +SuppliersStandingOrdersArea=Direct credit payment orders area +StandingOrdersPayment=Direct debit payment orders +StandingOrderPayment=Direct debit payment order +NewStandingOrder=New direct debit order +StandingOrderToProcess=A procesar +WithdrawalsReceipts=Direct debit orders +WithdrawalReceipt=Domiciliación +LastWithdrawalReceipts=Latest %s direct debit files +WithdrawalsLines=Direct debit order lines +RequestStandingOrderToTreat=Request for direct debit payment order to process +RequestStandingOrderTreated=Request for direct debit payment order processed +NotPossibleForThisStatusOfWithdrawReceiptORLine=Not yet possible. Withdraw status must be set to 'credited' before declaring reject on specific lines. +NbOfInvoiceToWithdraw=No. of qualified invoice with waiting direct debit order +NbOfInvoiceToWithdrawWithInfo=No. of customer invoice with direct debit payment orders having defined bank account information +InvoiceWaitingWithdraw=Invoice waiting for direct debit +AmountToWithdraw=Amount to withdraw +WithdrawsRefused=Direct debit refused +NoInvoiceToWithdraw=No customer invoice with open 'Direct debit requests' is waiting. Go on tab '%s' on invoice card to make a request. +ResponsibleUser=User Responsible +WithdrawalsSetup=Direct debit payment setup +WithdrawStatistics=Direct debit payment statistics +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 +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=Classify credited +ClassCreditedConfirm=Are you sure you want to classify this withdrawal receipt as credited on your bank account? +TransData=Transmission date +TransMetod=Transmission method +Send=Send +Lines=Lines +StandingOrderReject=Issue a rejection +WithdrawalRefused=Withdrawal refused +WithdrawalRefusedConfirm=Are you sure you want to enter a withdrawal rejection for society +RefusedData=Date of rejection +RefusedReason=Reason for rejection +RefusedInvoicing=Billing the rejection +NoInvoiceRefused=Do not charge the rejection +InvoiceRefused=Invoice refused (Charge the rejection to customer) +StatusDebitCredit=Status debit/credit +StatusWaiting=Waiting +StatusTrans=Enviado +StatusCredited=Credited +StatusRefused=Rexeitado +StatusMotif0=Unspecified +StatusMotif1=Insufficient funds +StatusMotif2=Request contested +StatusMotif3=No direct debit payment order +StatusMotif4=Pedido de cliente +StatusMotif5=RIB unusable +StatusMotif6=Account without balance +StatusMotif7=Judicial Decision +StatusMotif8=Other reason +CreateForSepaFRST=Create direct debit file (SEPA FRST) +CreateForSepaRCUR=Create direct debit file (SEPA RCUR) +CreateAll=Create direct debit file (all) +CreateGuichet=Only office +CreateBanque=Only bank +OrderWaiting=Waiting for treatment +NotifyTransmision=Withdrawal Transmission +NotifyCredit=Withdrawal Credit +NumeroNationalEmetter=National Transmitter Number +WithBankUsingRIB=For bank accounts using RIB +WithBankUsingBANBIC=For bank accounts using IBAN/BIC/SWIFT +BankToReceiveWithdraw=Receiving Bank Account +CreditDate=Credit on +WithdrawalFileNotCapable=Unable to generate withdrawal receipt file for your country %s (Your country is not supported) +ShowWithdraw=Show Direct Debit Order +IfInvoiceNeedOnWithdrawPaymentWontBeClosed=However, if invoice has at least one direct debit payment order not yet processed, it won't be set as paid to allow prior withdrawal 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 payment order is closed, payment on invoice will be automatically recorded, and invoice closed if remainder to pay is null. +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 +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) +WithdrawRequestAmount=Amount of Direct debit request: +WithdrawRequestErrorNilAmount=Unable to create direct debit request for empty amount. +SepaMandate=SEPA Direct Debit Mandate +SepaMandateShort=SEPA Mandate +PleaseReturnMandate=Please return this mandate form by email to %s or by mail to +SEPALegalText=By signing this mandate form, you authorize (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. +CreditorIdentifier=Creditor Identifier +CreditorName=Creditor Name +SEPAFillForm=(B) Please complete all the fields marked * +SEPAFormYourName=Your name +SEPAFormYourBAN=Your Bank Account Name (IBAN) +SEPAFormYourBIC=Your Bank Identifier Code (BIC) +SEPAFrstOrRecur=Type of payment +ModeRECUR=Recurring payment +ModeFRST=One-off payment +PleaseCheckOne=Please check one only +DirectDebitOrderCreated=Direct debit order %s created +AmountRequested=Amount requested +SEPARCUR=SEPA CUR +SEPAFRST=SEPA FRST +ExecutionDate=Execution date +CreateForSepa=Create direct debit file +ICS=Creditor Identifier CI +END_TO_END="EndToEndId" SEPA XML tag - Unique id assigned per transaction +USTRD="Unstructured" SEPA XML tag +ADDDAYS=Add days to Execution Date + +### Notifications +InfoCreditSubject=Payment of direct debit payment order %s by the bank +InfoCreditMessage=The direct debit payment order %s has been paid by the bank
    Data of payment: %s +InfoTransSubject=Transmission of direct debit payment order %s to bank +InfoTransMessage=The direct debit payment order %s has been sent to bank by %s %s.

    +InfoTransData=Amount: %s
    Method: %s
    Date: %s +InfoRejectSubject=Direct debit payment order refused +InfoRejectMessage=Hello,

    the direct debit payment order of invoice %s related to the company %s, with an amount of %s has been refused by the bank.

    --
    %s +ModeWarning=Option for real mode was not set, we stop after this simulation diff --git a/htdocs/langs/gl_ES/workflow.lang b/htdocs/langs/gl_ES/workflow.lang new file mode 100644 index 00000000000..be126eef0f4 --- /dev/null +++ b/htdocs/langs/gl_ES/workflow.lang @@ -0,0 +1,20 @@ +# Dolibarr language file - Source file is en_US - workflow +WorkflowSetup=Workflow module setup +WorkflowDesc=This module provides some automatic actions. By default, the workflow is open (you can do things in the order you want) but here you can activate some automatic actions. +ThereIsNoWorkflowToModify=There is no workflow modifications available with the activated modules. +# Autocreate +descWORKFLOW_PROPAL_AUTOCREATE_ORDER=Automatically create a sales order after a commercial proposal is signed (the new order will have same amount as the proposal) +descWORKFLOW_PROPAL_AUTOCREATE_INVOICE=Automatically create a customer invoice after a commercial proposal is signed (the new invoice will have same amount as the proposal) +descWORKFLOW_CONTRACT_AUTOCREATE_INVOICE=Automatically create a customer invoice after a contract is validated +descWORKFLOW_ORDER_AUTOCREATE_INVOICE=Automatically create a customer invoice after a sales order is closed (the new invoice will have same amount as the order) +# Autoclassify customer proposal or order +descWORKFLOW_ORDER_CLASSIFY_BILLED_PROPAL=Classify linked source proposal as billed when sales order is set to billed (and if the amount of the order is the same as the total amount of the signed linked proposal) +descWORKFLOW_INVOICE_CLASSIFY_BILLED_PROPAL=Classify linked source proposal as billed when customer invoice is validated (and if the amount of the invoice is the same as the total amount of the signed linked proposal) +descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_ORDER=Classify linked source sales order as billed when customer invoice is validated (and if the amount of the invoice is the same as the total amount of the linked order) +descWORKFLOW_INVOICE_CLASSIFY_BILLED_ORDER=Classify linked source sales order as billed when customer invoice is set to paid (and if the amount of the invoice is the same as the total amount of the linked order) +descWORKFLOW_ORDER_CLASSIFY_SHIPPED_SHIPPING=Classify linked source sales order as shipped when a shipment is validated (and if the quantity shipped by all shipments is the same as in the order to update) +# Autoclassify purchase order +descWORKFLOW_ORDER_CLASSIFY_BILLED_SUPPLIER_PROPOSAL=Classify linked source vendor proposal as billed when vendor invoice is validated (and if the amount of the invoice is the same as the total amount of the linked proposal) +descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Classify linked source purchase order as billed when vendor invoice is validated (and if the amount of the invoice is the same as the total amount of the linked order) +AutomaticCreation=Automatic creation +AutomaticClassification=Automatic classification diff --git a/htdocs/langs/gl_ES/zapier.lang b/htdocs/langs/gl_ES/zapier.lang new file mode 100644 index 00000000000..fdaaf449595 --- /dev/null +++ b/htdocs/langs/gl_ES/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier para Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier para modulo de Dolibarr + +# +# Admin page +# +ZapierForDolibarrSetup = Configuración de Zapier para Dolibarr diff --git a/htdocs/langs/he_IL/accountancy.lang b/htdocs/langs/he_IL/accountancy.lang index 1f9382137ea..b8ce37a0956 100644 --- a/htdocs/langs/he_IL/accountancy.lang +++ b/htdocs/langs/he_IL/accountancy.lang @@ -121,6 +121,7 @@ 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 +TotalForAccount=Total for accounting account Ventilate=Bind @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Accounting account to register donations ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (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 products sold in EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported 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_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (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_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unkno ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error PaymentsNotLinkedToProduct=Payment not linked to any product / service +OpeningBalance=Opening balance ShowOpeningBalance=Show opening balance HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Group of account PcgtypeDesc=Group 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. +Reconcilable=Reconcilable + TotalVente=Total turnover before tax TotalMarge=Total sales margin @@ -307,11 +317,13 @@ 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Chart of accounts Id ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC OptionModeProductSellExport=Mode sales exported in other countries OptionModeProductBuy=Mode purchases +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries 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. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=Remove accounting code from lines that not exists into charts of account CleanHistory=Reset all bindings for selected year PredefinedGroups=Predefined groups @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Account removed from group SaleLocal=Local sale SaleExport=Export sale SaleEEC=Sale in EEC +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=Range of accounting account diff --git a/htdocs/langs/he_IL/admin.lang b/htdocs/langs/he_IL/admin.lang index 6f2a807d99a..8285f39c5df 100644 --- a/htdocs/langs/he_IL/admin.lang +++ b/htdocs/langs/he_IL/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=שרת אינטרנט המשתמש / קבוצה NoSessionFound=Your PHP configuration seems to not allow listing of active sessions. The directory used to save sessions (%s) may be protected (for example by OS permissions or by PHP directive open_basedir). DBStoringCharset=מאגר המידע charset לאחסון נתונים DBSortingCharset=מאגר המידע charset למיין נתונים +HostCharset=Host charset ClientCharset=Client charset ClientSortingCharset=Client collation WarningModuleNotActive=%s מודול יש להפעיל @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the NoMaxSizeByPHPLimit=הערה: אין גבול מוגדר בתצורת שלך PHP MaxSizeForUploadedFiles=הגודל המקסימלי של קבצים שאפשר להעלות (0 לאסור על כל ההעלאה) UseCaptchaCode=השתמש בקוד גרפי (CAPTCHA) בדף הכניסה -AntiVirusCommand= הנתיב המלא האנטי וירוס הפקודה -AntiVirusCommandExample= דוגמה ClamWin: c: \\ progra ~ 1 \\ ClamWin \\ bin \\ clamscan.exe
    דוגמה ClamAV: / usr / bin / clamscan +AntiVirusCommand=הנתיב המלא האנטי וירוס הפקודה +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= פרמטרים נוספים על שורת הפקודה -AntiVirusParamExample= דוגמה עבור ClamWin: - מסד נתונים = "C: \\ קבצי תוכניות (x86) \\ ClamWin \\ lib" +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=מודול הנהלת חשבונות ההתקנה UserSetup=התקנה וניהול של המשתמש MultiCurrencySetup=Multi-currency setup @@ -199,7 +200,7 @@ FeatureDisabledInDemo=התכונה זמינה ב דמו FeatureAvailableOnlyOnStable=Feature only available on official stable versions BoxesDesc=Widgets are components showing some information that you can add to personalize some pages. You can choose between showing the widget or not by selecting target page and clicking 'Activate', or by clicking the trashcan to disable it. OnlyActiveElementsAreShown=האלמנטים היחידים של מודולים המאפשרים מוצגים. -ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button (at end of module line) to enable/disable a module/application. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. ModulesMarketPlaceDesc=You can find more modules to download on external websites on the Internet... ModulesDeployDesc=If permissions on your file system allow it, you can use this tool to deploy an external module. The module will then be visible on the tab %s. ModulesMarketPlaces=Find external app/modules @@ -212,6 +213,7 @@ CompatibleUpTo=Compatible with version %s NotCompatible=This module does not seem compatible with your Dolibarr %s (Min %s - Max %s). CompatibleAfterUpdate=This module requires an update to your Dolibarr %s (Min %s - Max %s). SeeInMarkerPlace=See in Market place +SeeSetupOfModule=See setup of module %s Updated=Updated Nouveauté=Novelty AchatTelechargement=Buy / Download @@ -221,6 +223,7 @@ DoliPartnersDesc=List of companies providing custom-developed modules or feature WebSiteDesc=External websites for more add-on (non-core) modules... DevelopYourModuleDesc=Some solutions to develop your own module... URL=URL +RelativeURL=Relative URL BoxesAvailable=Widgets available BoxesActivated=Widgets activated ActivateOn=הפעל על @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Checkboxes ExtrafieldCheckBoxFromList=Checkboxes from table ExtrafieldLink=Link to an object ComputedFormula=Computed field -ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Store computed field ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! ExtrafieldParamHelpPassword=Leaving this field blank means this value will be stored without encryption (field must be only hidden with star on screen).
    Set 'auto' to use the default encryption rule to save password into database (then value read will be the hash only, no way to retrieve original value) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Keep empty to use default value DefaultLink=Default link SetAsDefault=Set as default ValueOverwrittenByUserSetup=Warning, this value may be overwritten by user specific setup (each user can set his own clicktodial url) -ExternalModule=External module - Installed into directory %s +ExternalModule=External module +InstalledInto=Installed into directory %s BarcodeInitForthird-parties=Mass barcode init for third-parties BarcodeInitForProductsOrServices=Mass barcode init or reset for products or services CurrentlyNWithoutBarCode=Currently, you have %s record on %s %s without barcode defined. @@ -947,7 +951,7 @@ DictionaryCanton=States/Provinces DictionaryRegion=אזורים DictionaryCountry=מדינות DictionaryCurrency=מטבעות -DictionaryCivility=Title of civility +DictionaryCivility=Honorific titles DictionaryActions=Types of agenda events DictionarySocialContributions=Types of social or fiscal taxes DictionaryVAT=שיעורי מע"מ או מכירות שיעורי מס @@ -988,6 +992,7 @@ VATIsNotUsedDesc=By default the proposed Sales tax is 0 which can be used for ca VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=Rate LocalTax1IsNotUsed=Do not use second tax LocalTax1IsUsedDesc=Use a second type of tax (other than first one) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices LocalTax2IsNotUsedDescES=כברירת מחדל IRPF המוצע הוא 0. קץ שלטון. LocalTax2IsUsedExampleES=בספרד, פרילנסרים ובעלי מקצוע עצמאיים המספקים שירותים וחברות אשר בחרו במערכת המס של מודולים. LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=Reports on local taxes CalcLocaltax1=Sales - Purchases CalcLocaltax1Desc=Local Taxes reports are calculated with the difference between localtaxes sales and localtaxes purchases @@ -1018,6 +1026,7 @@ CalcLocaltax2=Purchases CalcLocaltax2Desc=Local Taxes reports are the total of localtaxes purchases CalcLocaltax3=Sales CalcLocaltax3Desc=Local Taxes reports are the total of localtaxes sales +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=לייבל שימוש כברירת מחדל אם לא התרגום ניתן למצוא את קוד LabelOnDocuments=התווית על מסמכים LabelOrTranslationKey=Label or translation key @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Expense report to approve Delays_MAIN_DELAY_HOLIDAYS=Leave requests 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. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. SetupDescription5=Other Setup menu entries manage optional parameters. LogEvents=ביקורת אבטחה אירועים Audit=ביקורת @@ -1128,7 +1137,7 @@ LogEventDesc=Enable logging for specific security events. Administrators the log AreaForAdminOnly=Setup parameters can be set by administrator users only. SystemInfoDesc=מערכת מידע הוא מידע טכני שונות נכנסת למצב קריאה בלבד ונראה לעין עבור מנהלי בלבד. SystemAreaForAdminOnly=This area is available to administrator users only. Dolibarr user permissions cannot change this restriction. -CompanyFundationDesc=Edit the information of the company/entity. Click on "%s" button at the bottom of the page. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. AccountantFileNumber=Accountant code DisplayDesc=Parameters affecting the look and behaviour of Dolibarr can be modified here. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Rules to generate and validate passwords DisableForgetPasswordLinkOnLogonPage=Do not show the "Password Forgotten" link on the Login page UsersSetup=משתמשים מודול ההתקנה UserMailRequired=Email required to create a new user +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### HRMSetup=HRM module setup ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=חשבוניות ומסמכים מודלים BillsPDFModulesAccordindToInvoiceType=Invoice documents models according to invoice type PaymentsPDFModules=Payment documents models ForceInvoiceDate=להכריח את תאריך החשבונית עד כה אימות -SuggestedPaymentModesIfNotDefinedInInvoice=תשלומים שהציע מצב בחשבונית כברירת מחדל, אם לא הוגדרו עבור חשבונית +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice SuggestPaymentByRIBOnAccount=Suggest payment by withdrawal on account SuggestPaymentByChequeToAddress=Suggest payment by check to FreeLegalTextOnInvoices=טקסט חופשי על חשבוניות @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Vendor payments setup PropalSetup=מודול הצעות מסחרי ההתקנה ProposalsNumberingModules=הצעה מסחרית המונה מודולים ProposalsPDFModules=מסמכי ההצעה מודלים מסחריים -SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined for proposal +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal FreeLegalTextOnProposal=טקסט חופשי על הצעות מסחריות WatermarkOnDraftProposal=סימן מים על הצעות טיוטה מסחריים (כל אם ריק) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal @@ -1322,6 +1334,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 ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=Sales Orders management setup OrdersNumberingModules=הזמנות מספור מודולים OrdersModelModule=מסמכים הזמנת דגמים @@ -1720,7 +1733,7 @@ MultiCompanySetup=רב החברה מודול ההתקנה ##### Suppliers ##### SuppliersSetup=Vendor module setup SuppliersCommandModel=Complete template of Purchase Order -SuppliersCommandModelMuscadet=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) SuppliersInvoiceModel=Complete template of Vendor Invoice SuppliersInvoiceNumberingModel=Vendor invoices numbering models IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Hide images in Top menu LeftMenuBackgroundColor=Background color for Left menu BackgroundTableTitleColor=Background color for Table title line BackgroundTableTitleTextColor=Text color for Table title line +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Background color for odd table lines BackgroundTableLineEvenColor=Background color for even table lines MinimumNoticePeriod=Minimum notice period (Your leave request must be done before this delay) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Dolibarr Reference not found in Message ID FormatZip=רוכסן MainMenuCode=Menu entry code (mainmenu) ECMAutoTree=Show automatic ECM tree -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. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Opening hours OpeningHoursDesc=Enter here the regular opening hours of your company. ResourceSetup=Configuration of Resource module @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramatical ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export +ImportSetup=Setup of module Import InstanceUniqueID=Unique ID of the instance SmallerThan=Smaller than LargerThan=Larger than @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled EmailTemplate=Template for email EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/he_IL/bills.lang b/htdocs/langs/he_IL/bills.lang index f5cef2fe190..643972c94a5 100644 --- a/htdocs/langs/he_IL/bills.lang +++ b/htdocs/langs/he_IL/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Vendors invoices SupplierBill=Vendor invoice SupplierBills=suppliers invoices Payment=Payment -PaymentBack=Payment back -CustomerInvoicePaymentBack=Payment back +PaymentBack=Refund +CustomerInvoicePaymentBack=Refund Payments=Payments PaymentsBack=Refunds paymentInInvoiceCurrency=in invoices currency PaidBack=Paid back DeletePayment=Delete payment ConfirmDeletePayment=Are you sure you want to delete this payment? -ConfirmConvertToReduc=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. -ConfirmConvertToReducSupplier=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. SupplierPayments=Vendor payments ReceivedPayments=Received payments @@ -209,17 +209,13 @@ NumberOfBillsByMonth=No. of invoices per month AmountOfBills=Amount of invoices AmountOfBillsHT=Amount of invoices (net of tax) AmountOfBillsByMonthHT=Amount of invoices by month (net of tax) -ShowSocialContribution=Show social/fiscal tax -ShowBill=Show invoice -ShowInvoice=Show invoice -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 +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=To pay on %s toPayOn=to pay on %s RetainedWarranty=Retained Warranty @@ -230,7 +226,6 @@ 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 AlreadyPaidNoCreditNotesNoDeposits=Already paid (without credit notes and down payments) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Generated from template invoice %s WarningInvoiceDateInFuture=Warning, the invoice date is higher than current date WarningInvoiceDateTooFarInFuture=Warning, the invoice date is too far from current date ViewAvailableGlobalDiscounts=View available discounts +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Status PaymentConditionShortRECEP=Due Upon Receipt @@ -509,7 +505,7 @@ ToMakePayment=Pay ToMakePaymentBack=Pay back ListOfYourUnpaidInvoices=List of unpaid invoices NoteListOfYourUnpaidInvoices=Note: This list contains only invoices for third parties you are linked to as a sale representative. -RevenueStamp=Revenue stamp +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party YouMustCreateStandardInvoiceFirstDesc=You have to create a standard invoice first and convert it to "template" to create a new template invoice @@ -575,3 +571,4 @@ AutoFillDateTo=Set end date for service line with next invoice date AutoFillDateToShort=Set end date MaxNumberOfGenerationReached=Max number of gen. reached BILL_DELETEInDolibarr=Invoice deleted +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/he_IL/blockedlog.lang b/htdocs/langs/he_IL/blockedlog.lang index cff8f7d657b..5afae6e9e53 100644 --- a/htdocs/langs/he_IL/blockedlog.lang +++ b/htdocs/langs/he_IL/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Unalterable logs ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) DownloadBlockChain=Download fingerprints -KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this re after it was recorded, or has erased the previous archived record (check that line with previous # exists). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. AddedByAuthority=Stored into remote authority diff --git a/htdocs/langs/he_IL/cashdesk.lang b/htdocs/langs/he_IL/cashdesk.lang index 211154918de..d1fd7b33150 100644 --- a/htdocs/langs/he_IL/cashdesk.lang +++ b/htdocs/langs/he_IL/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Add this article RestartSelling=Go back on sell SellFinished=Sale complete PrintTicket=Print ticket +SendTicket=Send ticket NoProductFound=No article found ProductFound=product found NoArticle=No article @@ -48,6 +49,7 @@ Footer=Footer AmountAtEndOfPeriod=Amount at end of period (day, month or year) TheoricalAmount=Theorical amount RealAmount=Real amount +CashFence=Cash fence CashFenceDone=Cash fence done for the period NbOfInvoices=Nb of invoices Paymentnumpad=Type of Pad to enter payment @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS needs product categories to work OrderNotes=Order Notes CashDeskBankAccountFor=Default account to use for payments in NoPaimementModesDefined=No paiment mode defined in TakePOS configuration -TicketVatGrouped=Group VAT by rate in tickets -AutoPrintTickets=Automatically print tickets +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? @@ -87,7 +90,19 @@ HeadBar=Head Bar SortProductField=Field for sorting products Browser=Browser BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/he_IL/companies.lang b/htdocs/langs/he_IL/companies.lang index 8fe6ed3f84e..26a5eb3958e 100644 --- a/htdocs/langs/he_IL/companies.lang +++ b/htdocs/langs/he_IL/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted=Company "%s" deleted from database. ListOfContacts=List of contacts/addresses ListOfContactsAddresses=List of contacts/addresses ListOfThirdParties=List of Third Parties -ShowCompany=Show Third Party ShowContact=Show contact ContactsAllShort=All (No filter) ContactType=Contact type @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=First name of sales representative SaleRepresentativeLastname=Last name of sales representative ErrorThirdpartiesMerge=There was an error when deleting the third parties. Please check the log. Changes have been reverted. NewCustomerSupplierCodeProposed=Customer or Vendor code already used, a new code is suggested +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Payment Type - Customer PaymentTermsCustomer=Payment Terms - Customer diff --git a/htdocs/langs/he_IL/compta.lang b/htdocs/langs/he_IL/compta.lang index 6a854e6fa80..bea3663aff1 100644 --- a/htdocs/langs/he_IL/compta.lang +++ b/htdocs/langs/he_IL/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=See %sanalysis of payments%s for a calculation on act SeeReportInDueDebtMode=See %sanalysis of invoices%s for a calculation based on known recorded invoices even if they are not yet accounted in Ledger. SeeReportInBookkeepingMode=See %sBookeeping report%s for a calculation on Bookkeeping Ledger table RulesAmountWithTaxIncluded=- Amounts shown are with all taxes included -RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the validation date of invoices and VAT and on the due date for expenses. For salaries defined with Salary module, the value date of payment is used. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- It includes the real payments made on invoices, expenses, VAT and salaries.
    - It is based on the payment dates of the invoices, expenses, VAT and salaries. The donation date for donation. -RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the validation date of these invoices.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    RulesCATotalSaleJournal=It includes all credit lines from the Sale journal. RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Turnover invoiced by sale tax rate TurnoverCollectedbyVatrate=Turnover collected by sale tax rate PurchasebyVatrate=Purchase by sale tax rate LabelToShow=Short label +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/he_IL/donations.lang b/htdocs/langs/he_IL/donations.lang index 6936e94040a..e554d722f9d 100644 --- a/htdocs/langs/he_IL/donations.lang +++ b/htdocs/langs/he_IL/donations.lang @@ -7,7 +7,6 @@ AddDonation=Create a donation NewDonation=New donation DeleteADonation=Delete a donation ConfirmDeleteADonation=Are you sure you want to delete this donation? -ShowDonation=Show donation PublicDonation=Public donation DonationsArea=Donations area DonationStatusPromiseNotValidated=Draft promise @@ -17,6 +16,7 @@ DonationStatusPromiseNotValidatedShort=Draft DonationStatusPromiseValidatedShort=Validated DonationStatusPaidShort=Received DonationTitle=Donation receipt +DonationDate=Donation date DonationDatePayment=Payment date ValidPromess=Validate promise DonationReceipt=Donation receipt diff --git a/htdocs/langs/he_IL/errors.lang b/htdocs/langs/he_IL/errors.lang index 3ffc686e62f..7c67aeca8b5 100644 --- a/htdocs/langs/he_IL/errors.lang +++ b/htdocs/langs/he_IL/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=File not received completely by server. ErrorNoTmpDir=Temporary directy %s does not exists. ErrorUploadBlockedByAddon=Upload blocked by a PHP/Apache plugin. ErrorFileSizeTooLarge=File size is too large. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Size too long for int type (%s digits maximum) ErrorSizeTooLongForVarcharType=Size too long for string type (%s chars maximum) ErrorNoValueForSelectType=Please fill value for select list @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # 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/he_IL/install.lang b/htdocs/langs/he_IL/install.lang index 637f67fbab7..42f8f5149de 100644 --- a/htdocs/langs/he_IL/install.lang +++ b/htdocs/langs/he_IL/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=This PHP supports Curl. PHPSupportCalendar=This PHP supports calendars extensions. PHPSupportUTF8=This PHP supports UTF8 functions. PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=This PHP supports %s functions. PHPMemoryOK=Your PHP max session memory is set to %s. This should be enough. 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. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=Your PHP installation does not support Curl. ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. 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. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. ErrorDirDoesNotExists=Directory %s does not exist. ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=The application tried to self-upgrade, but the in 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. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/he_IL/interventions.lang b/htdocs/langs/he_IL/interventions.lang index e7294616187..f09d69912e1 100644 --- a/htdocs/langs/he_IL/interventions.lang +++ b/htdocs/langs/he_IL/interventions.lang @@ -41,9 +41,7 @@ InterventionsArea=Interventions area DraftFichinter=Draft interventions LastModifiedInterventions=Latest %s modified interventions FichinterToProcess=Interventions to process -##### Types de contacts ##### TypeContact_fichinter_external_CUSTOMER=Following-up customer contact -# Modele numérotation PrintProductsOnFichinter=Print also lines of type "product" (not only services) on intervention card PrintProductsOnFichinterDetails=interventions generated from orders UseServicesDurationOnFichinter=Use services duration for interventions generated from orders @@ -53,14 +51,16 @@ InterventionStatistics=Statistics of interventions NbOfinterventions=No. of intervention cards NumberOfInterventionsByMonth=No. of intervention cards by month (date of validation) AmountOfInteventionNotIncludedByDefault=Amount of intervention is not included by default into profit (in most cases, timesheets are used to count time spent). Add option PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT to 1 into home-setup-other to include them. -##### Exports ##### InterId=Intervention id InterRef=Intervention ref. InterDateCreation=Date creation intervention InterDuration=Duration intervention InterStatus=Status intervention InterNote=Note intervention +InterLine=Line of intervention InterLineId=Line id intervention InterLineDate=Line date intervention InterLineDuration=Line duration intervention InterLineDesc=Line description intervention +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/he_IL/link.lang b/htdocs/langs/he_IL/link.lang index fdcf07aeff4..1ffcd41a18b 100644 --- a/htdocs/langs/he_IL/link.lang +++ b/htdocs/langs/he_IL/link.lang @@ -8,3 +8,4 @@ LinkRemoved=The link %s has been removed ErrorFailedToDeleteLink= Failed to remove link '%s' ErrorFailedToUpdateLink= Failed to update link '%s' URLToLink=URL to link +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/he_IL/mails.lang b/htdocs/langs/he_IL/mails.lang index 97db492d7e8..6da35178dd2 100644 --- a/htdocs/langs/he_IL/mails.lang +++ b/htdocs/langs/he_IL/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=No contact/address with a category found NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found OutGoingEmailSetup=Outgoing email setup InGoingEmailSetup=Incoming email setup -OutGoingEmailSetupForEmailing=Outgoing email setup (for mass emailing) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Default outgoing email setup Information=Information ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/he_IL/main.lang b/htdocs/langs/he_IL/main.lang index b4865808ee6..caa57ce5e5a 100644 --- a/htdocs/langs/he_IL/main.lang +++ b/htdocs/langs/he_IL/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Save and stay SaveAndNew=Save and new TestConnection=Test connection ToClone=Clone +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Choose data you want to clone: NoCloneOptionsSpecified=No data to clone defined. Of=of @@ -829,6 +830,8 @@ Gender=Gender Genderman=Man Genderwoman=Woman ViewList=List view +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Mandatory Hello=Hello GoodBye=GoodBye @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Select your graph options to build a graph Measures=Measures XAxis=X-Axis YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/he_IL/modulebuilder.lang b/htdocs/langs/he_IL/modulebuilder.lang index 00a8c0f9d32..135ac1ae9ec 100644 --- a/htdocs/langs/he_IL/modulebuilder.lang +++ b/htdocs/langs/he_IL/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=List of dictionaries entries ListOfPermissionsDefined=List of defined permissions SeeExamples=See examples here EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) -VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update). Using a negative value means field is not shown by default on list but can be selected for viewing). It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty DisplayOnPdf=Display on PDF IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) diff --git a/htdocs/langs/he_IL/multicurrency.lang b/htdocs/langs/he_IL/multicurrency.lang new file mode 100644 index 00000000000..bfcbd11fb7c --- /dev/null +++ b/htdocs/langs/he_IL/multicurrency.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Multi currency +ErrorAddRateFail=Error in added rate +ErrorAddCurrencyFail=Error in added currency +ErrorDeleteCurrencyFail=Error delete fail +multicurrency_syncronize_error=Synchronization error: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Use the date of the document to find the currency rate, instead of using the latest known rate +multicurrency_useOriginTx=When an object is created from another, keep the original rate from the source object (otherwise use the latest known rate) +CurrencyLayerAccount=CurrencyLayer API +CurrencyLayerAccount_help_to_synchronize=You must create an account on website %s to use this functionality.
    Get your API key.
    If you use a free account, you can't change the source currency (USD by default).
    If your main currency is not USD, the application will automatically recalculate it.

    You are limited to 1000 synchronizations per month. +multicurrency_appId=API key +multicurrency_appCurrencySource=Source currency +multicurrency_alternateCurrencySource=Alternate source currency +CurrenciesUsed=Currencies used +CurrenciesUsed_help_to_add=Add the different currencies and rates you need to use on your proposals, orders etc. +rate=rate +MulticurrencyReceived=Received, original currency +MulticurrencyRemainderToTake=Remaining amount, original currency +MulticurrencyPaymentAmount=Payment amount, original currency +AmountToOthercurrency=Amount To (in currency of receiving account) +CurrencyRateSyncSucceed=Currency rate synchronization done successfuly +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Use the currency of the document for online payments diff --git a/htdocs/langs/he_IL/other.lang b/htdocs/langs/he_IL/other.lang index f6e81db4cc1..580d977179a 100644 --- a/htdocs/langs/he_IL/other.lang +++ b/htdocs/langs/he_IL/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Sales order validated Notify_ORDER_SENTBYMAIL=Sales order sent by mail Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=URL of page WEBSITE_TITLE=Title WEBSITE_DESCRIPTION=תאור WEBSITE_IMAGE=Image -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Keywords LinesToImport=Lines to import diff --git a/htdocs/langs/he_IL/products.lang b/htdocs/langs/he_IL/products.lang index 3e5d6cac9c1..f883b0823e1 100644 --- a/htdocs/langs/he_IL/products.lang +++ b/htdocs/langs/he_IL/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL MassBarcodeInit=Mass barcode init MassBarcodeInitDesc=This page can be used to initialize a barcode on objects that does not have barcode defined. Check before that setup of module barcode is complete. ProductAccountancyBuyCode=Accounting code (purchase) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Accounting code (sale) ProductAccountancySellIntraCode=Accounting code (sale intra-Community) ProductAccountancySellExportCode=Accounting code (sale export) @@ -165,7 +167,7 @@ SuppliersPrices=Vendor prices SuppliersPricesOfProductsOrServices=Vendor prices (of products or services) CustomCode=Customs / Commodity / HS code CountryOrigin=Origin country -Nature=Nature of produt (material/finished) +Nature=Nature of product (material/finished) ShortLabel=Short label Unit=Unit p=u. diff --git a/htdocs/langs/he_IL/projects.lang b/htdocs/langs/he_IL/projects.lang index be41a714872..2eb71eb7ff0 100644 --- a/htdocs/langs/he_IL/projects.lang +++ b/htdocs/langs/he_IL/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=which I'm linked to project Time=Time ListOfTasks=List of tasks GoToListOfTimeConsumed=Go to list of time consumed -GoToListOfTasks=Show as list -GoToGanttView=show as Gantt GanttView=Gantt View ListProposalsAssociatedProject=List of the commercial proposals related to the project ListOrdersAssociatedProject=List of sales orders related to the project @@ -188,7 +186,7 @@ PlannedWorkload=Planned workload PlannedWorkloadShort=Workload ProjectReferers=Related items ProjectMustBeValidatedFirst=Project must be validated first -FirstAddRessourceToAllocateTime=Assign a user resource to task to allocate time +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=Input per day InputPerWeek=Input per week InputPerMonth=Input per month @@ -240,6 +238,7 @@ LatestModifiedProjects=Latest %s modified projects OtherFilteredTasks=Other filtered tasks NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=Allow user comments on tasks AllowCommentOnProject=Allow user comments on projects @@ -256,7 +255,7 @@ ServiceToUseOnLines=Service to use on lines InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. ProjectFollowOpportunity=Follow opportunity -ProjectFollowTasks=Follow tasks +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Usage: Opportunity UsageTasks=Usage: Tasks @@ -265,3 +264,4 @@ InvoiceToUse=Draft invoice to use NewInvoice=New invoice OneLinePerTask=One line per task OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/he_IL/receiptprinter.lang b/htdocs/langs/he_IL/receiptprinter.lang index 3df49b9fe67..896eaa313dd 100644 --- a/htdocs/langs/he_IL/receiptprinter.lang +++ b/htdocs/langs/he_IL/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Dummy Printer CONNECTOR_NETWORK_PRINT=Network Printer CONNECTOR_FILE_PRINT=Local Printer CONNECTOR_WINDOWS_PRINT=Local Windows Printer +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Fake Printer for test, does nothing CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Default Profile PROFILE_SIMPLE=Simple Profile PROFILE_EPOSTEP=Epos Tep Profile @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Invoice month in letters DOL_VALUE_MONTH=Invoice month DOL_VALUE_DAY=Invoice day DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Invoice ref +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=Capital +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/he_IL/stripe.lang b/htdocs/langs/he_IL/stripe.lang index eb77441d2cd..844762040af 100644 --- a/htdocs/langs/he_IL/stripe.lang +++ b/htdocs/langs/he_IL/stripe.lang @@ -32,6 +32,7 @@ VendorName=Name of vendor CSSUrlForPaymentForm=CSS style sheet url for payment form NewStripePaymentReceived=New Stripe payment received NewStripePaymentFailed=New Stripe payment tried but failed +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Secret test key STRIPE_TEST_PUBLISHABLE_KEY=Publishable test key STRIPE_TEST_WEBHOOK_KEY=Webhook test key @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mo 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... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authenticatin rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/he_IL/users.lang b/htdocs/langs/he_IL/users.lang index 990140b3232..107e604ded1 100644 --- a/htdocs/langs/he_IL/users.lang +++ b/htdocs/langs/he_IL/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Users and their properties DomainUser=Domain user %s Reactivate=Reactivate CreateInternalUserDesc=This form allows you to create an internal user in your company/organization. To create an external user (customer, vendor etc. ..), use the button 'Create Dolibarr User' from that third-party's contact card. -InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other.

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=Permission granted because inherited from one of a user's group. Inherited=Inherited UserWillBeInternalUser=Created user will be an internal user (because not linked to a particular third party) @@ -110,3 +110,8 @@ UserLogged=User logged DateEmployment=Employment Start Date DateEmploymentEnd=Employment End Date CantDisableYourself=You can't disable your own user record +ForceUserExpenseValidator=Force expense report validator +ForceUserHolidayValidator=Force leave request validator +ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/he_IL/website.lang b/htdocs/langs/he_IL/website.lang index 9e5c4ba3ff8..bce2a09fb03 100644 --- a/htdocs/langs/he_IL/website.lang +++ b/htdocs/langs/he_IL/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=View page in new tab SetAsHomePage=Set as Home page RealURL=Real URL ViewWebsiteInProduction=View web site using home URLs -SetHereVirtualHost=Use with Apache/NGinx/...
    If you can create, on your web server (Apache, Nginx, ...), a dedicated Virtual Host with PHP enabled and a Root directory on
    %s
    then set the name of the virtual host you have created in the properties of web site, so the preview can be done also using this dedicated web server access instead of the internal Dolibarr server. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS=Use with PHP embedded server
    On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running
    php -S 0.0.0.0:8080 -t %s YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org CheckVirtualHostPerms=Check also that virtual host has permission %s on files into
    %s @@ -56,7 +57,7 @@ NoPageYet=No pages yet YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template SyntaxHelp=Help on specific syntax tips YouCanEditHtmlSourceckeditor=You can edit HTML source code using the "Source" button in editor. -YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Clone page/container CloneSite=Clone site SiteAdded=Website added @@ -76,7 +77,7 @@ BlogPost=Blog post WebsiteAccount=Website account WebsiteAccounts=Website accounts AddWebsiteAccount=Create web site account -BackToListOfThirdParty=Back to list for Third Party +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Disable website first MyContainerTitle=My web site title AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Sorry, this website is currently off line. Please 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 -OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that edits of HTML source will be possible when page content has been initialized by grabbing it from an external page ("Online" editor will NOT be available) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Only edition of HTML source is possible when content was grabbed from an external site GrabImagesInto=Grab also images found into css and page. ImagesShouldBeSavedInto=Images should be saved into directory @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 ch MainLanguage=Main language OtherLanguages=Other languages UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/he_IL/zapier.lang b/htdocs/langs/he_IL/zapier.lang new file mode 100644 index 00000000000..6d6eda71313 --- /dev/null +++ b/htdocs/langs/he_IL/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr module + +# +# Admin page +# +ZapierForDolibarrSetup = Setup of Zapier for Dolibarr diff --git a/htdocs/langs/hi_IN/accountancy.lang b/htdocs/langs/hi_IN/accountancy.lang new file mode 100644 index 00000000000..cf5c727024d --- /dev/null +++ b/htdocs/langs/hi_IN/accountancy.lang @@ -0,0 +1,382 @@ +# Dolibarr language file - en_US - Accountancy (Double entries) +Accountancy=Accountancy +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=सेवा के लिए डिफ़ॉल्ट +DefaultForProduct=उत्पाद के लिए डिफ़ॉल्ट +CantSuggest=सुझाव नहीं दे सकते +AccountancySetupDoneFromAccountancyMenu=लेखाकर्म का अधिकांश सेटअप मेनू से किया जाता है %s +ConfigAccountingExpert=मॉड्यूल लेखांकन विशेषज्ञ का कन्फ़िग्यर्एशन +Journalization=रोज़नामचीकरण +Journaux=बहीखाता +JournalFinancial=वित्तीय बहीखाता +BackToChartofaccounts=प्रतिफल लेखा जोखा का व्यौरा +Chartofaccounts=लेखा जोखा का व्यौरा +CurrentDedicatedAccountingAccount=चालू समर्पित खाता +AssignDedicatedAccountingAccount=निर्दिष्ट करने के लिए नया खाता +InvoiceLabel=चालान लेबल +OverviewOfAmountOfLinesNotBound=Overview of amount of lines not bound to an accounting account +OverviewOfAmountOfLinesBound=Overview of amount of lines already bound to an accounting account +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=खातों की सूची +CountriesInEEC=Countries in EEC +CountriesNotInEEC=Countries not in EEC +CountriesInEECExceptMe=Countries in EEC except %s +CountriesExceptMe=All countries except %s +AccountantFiles=Export accounting documents + +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 + +AccountancyArea=लेखा क्षेत्र +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... + +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 + +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. + +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. + +AccountancyAreaDescClosePeriod=STEP %s: Close period so we can't make modification in a future. + +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 +AccountAccountingShort=Account +SubledgerAccount=Subledger account +SubledgerAccountLabel=Subledger account label +ShowAccountingAccount=Show accounting account +ShowAccountingJournal=Show accounting journal +AccountAccountingSuggest=Accounting account suggested +MenuDefaultAccounts=Default accounts +MenuBankAccounts=Bank accounts +MenuVatAccounts=Vat accounts +MenuTaxAccounts=Tax accounts +MenuExpenseReportAccounts=Expense report accounts +MenuLoanAccounts=Loan accounts +MenuProductsAccounts=Product accounts +MenuClosureAccounts=Closure accounts +MenuAccountancyClosure=Closure +MenuAccountancyValidationMovements=Validate movements +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 +TotalForAccount=Total for accounting account + + +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 + +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_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=Length of the third-party accounting accounts (If you set value to 6 here, the account '401' will appear like '401000' on screen) +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_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_RESULT_PROFIT=Result accounting account (Profit) +ACCOUNTING_RESULT_LOSS=Result accounting account (Loss) +ACCOUNTING_CLOSURE_DEFAULT_JOURNAL=Journal of closure + +ACCOUNTING_ACCOUNT_TRANSFER_CASH=Accounting account of transitional bank transfer +TransitionalAccount=Transitional bank transfer account + +ACCOUNTING_ACCOUNT_SUSPENSE=Accounting account of wait +DONATION_ACCOUNTINGACCOUNT=Accounting account to register donations +ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions + +ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (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 products sold in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported 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_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (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_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) + +Doctype=Type of document +Docdate=Date +Docref=Reference +LabelAccount=Label account +LabelOperation=Label operation +Sens=Sens +LetteringCode=Lettering code +Lettering=Lettering +Codejournal=Journal +JournalLabel=Journal label +NumPiece=Piece number +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=By year +NotMatch=Not Set +DeleteMvt=Delete Ledger lines +DelMonth=Month to delete +DelYear=Year to delete +DelJournal=Journal to delete +ConfirmDeleteMvt=This will delete all lines of the Ledger for the year/month and/or from a specific journal (At least one criterion is required). You will have to reuse the feature 'Registration in accounting' to have the deleted record back in the ledger. +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=Third-party account +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=List third-party account +DescThirdPartyReport=Consult here the list of third-party customers and vendors and their accounting accounts +ListAccounts=List of the accounting accounts +UnknownAccountForThirdparty=Unknown third-party account. We will use %s +UnknownAccountForThirdpartyBlocking=Unknown third-party account. Blocking error +ThirdpartyAccountNotDefinedOrThirdPartyUnknown=Third-party account not defined or third party unknown. We will use %s +ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unknown and subledger not defined on the payment. We will keep the subledger account value empty. +ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. +UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error +PaymentsNotLinkedToProduct=Payment not linked to any product / service +OpeningBalance=Opening balance +ShowOpeningBalance=Show opening balance +HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group + +Pcgtype=Group of account +PcgtypeDesc=Group 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. + +Reconcilable=Reconcilable + +TotalVente=Total turnover before tax +TotalMarge=Total sales margin + +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: +Vide=- +DescVentilSupplier=Consult here the list of vendor invoice lines bound or not yet bound to a product accounting account (only record not already transfered in accountancy are visible) +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 + +DescClosure=Consult here the number of movements by month who are not validated & fiscal years already open +OverviewOfMovementsNotValidated=Step 1/ Overview of movements not validated. (Necessary to close a fiscal year) +ValidateMovements=Validate movements +DescValidateMovements=Any modification or deletion of writing, lettering and deletes will be prohibited. All entries for an exercise must be validated otherwise closing will not be possible +SelectMonthAndValidate=Select month and validate movements + +ValidateHistory=Bind Automatically +AutomaticBindingDone=Automatic binding done + +ErrorAccountancyCodeIsAlreadyUse=Error, you cannot delete this accounting account because it is used +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 +ShowTutorial=Show Tutorial +NotReconciled=Not reconciled + +## Admin +ApplyMassCategories=Apply mass categories +AddAccountFromBookKeepingWithNoCategories=Available account not yet in the personalized group +CategoryDeleted=Category for the accounting account has been removed +AccountingJournals=Accounting journals +AccountingJournal=Accounting journal +NewAccountingJournal=New accounting journal +ShowAccountingJournal=Show accounting journal +NatureOfJournal=Nature of Journal +AccountingJournalType1=Miscellaneous operations +AccountingJournalType2=Sales +AccountingJournalType3=Purchases +AccountingJournalType4=Bank +AccountingJournalType5=Expenses report +AccountingJournalType8=Inventory +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 + +## 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) +Modelcsv_openconcerto=Export for OpenConcerto (Test) +Modelcsv_configurable=Export CSV Configurable +Modelcsv_FEC=Export FEC +Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta +ChartofaccountsId=Chart of accounts Id + +## 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 used for accounting closures. +Options=Options +OptionModeProductSell=Mode sales +OptionModeProductSellIntra=Mode sales exported in EEC +OptionModeProductSellExport=Mode sales exported in other countries +OptionModeProductBuy=Mode purchases +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries +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. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign 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 +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. + +## Dictionary +Range=Range of accounting account +Calculated=Calculated +Formula=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 + +## 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 diff --git a/htdocs/langs/hi_IN/admin.lang b/htdocs/langs/hi_IN/admin.lang new file mode 100644 index 00000000000..5b67c600bd5 --- /dev/null +++ b/htdocs/langs/hi_IN/admin.lang @@ -0,0 +1,2002 @@ +# Dolibarr language file - Source file is en_US - admin +Foundation=प्रतिष्ठान +Version=संस्करण +Publisher=प्रकाशक +VersionProgram=संस्करण कार्यक्रम +VersionLastInstall=प्रारंभिक संस्थापित संस्करण +VersionLastUpgrade=नवीनतम संस्करण का उन्नयन +VersionExperimental=प्रायोगिक +VersionDevelopment=डेवलोपमेन्ट +VersionUnknown=अज्ञात +VersionRecommanded=संस्तुत +FileCheck=फाइलसेट अखंडता की जाँच +FileCheckDesc=यह उपकरण आपको आधिकारिक फ़ाइल के साथ प्रत्येक फ़ाइल की तुलना करते हुए, फ़ाइलों की अखंडता और आपके एप्लिकेशन के सेटअप की जांच करने की अनुमति देता है। कुछ सेटअप स्थिरांक के मूल्य को भी जांचा जा सकता है। आप इस उपकरण का उपयोग यह निर्धारित करने के लिए कर सकते हैं कि क्या कोई फाइल संशोधित की गई है (जैसे किसी हैकर द्वारा)। +FileIntegrityIsStrictlyConformedWithReference=फ़ाइलें अखंडता को कड़ाई से संदर्भ के साथ संधारित किया गया है। +FileIntegrityIsOkButFilesWereAdded=फ़ाइलें अखंडता जांच पास हो गई हैं, हालांकि कुछ नई फाइलें जोड़ी गई हैं। +FileIntegritySomeFilesWereRemovedOrModified=फ़ाइलें अखंडता की जाँच में विफल हो गई है। कुछ फ़ाइलों को संशोधित, हटाया या जोड़ा गया हैं। +GlobalChecksum=सार्वभौम चेकसम +MakeIntegrityAnalysisFrom=एप्लिकेशन फ़ाइलों की अखंडता का विश्लेषण करें +LocalSignature=एंबेडेड स्थानीय हस्ताक्षर (कम विश्वसनीय) +RemoteSignature=दूरस्थ दूर हस्ताक्षर (अधिक विश्वसनीय) +FilesMissing=गुम फ़ाइलें +FilesUpdated=नवीनीकृत फ़ाइलें +FilesModified=संशोधित फ़ाइलें +FilesAdded=जोड़ी गई फ़ाइलें +FileCheckDolibarr=एप्लिकेशन फ़ाइलों की अखंडता की जाँच करें +AvailableOnlyOnPackagedVersions=अखंडता जाँच के लिए स्थानीय फ़ाइल केवल तब उपलब्ध होती है जब आवेदन आधिकारिक पैकेज से स्थापित किया जाता है +XmlNotFound=एप्लिकेशन की Xml इंटीग्रिटी फ़ाइल नहीं मिली +SessionId=सत्र पहचान +SessionSaveHandler=सत्र बचाने के लिए संचालक +SessionSavePath=सत्र संचय स्थान  +PurgeSessions=सत्र का परिशोध +ConfirmPurgeSessions=क्या आप वास्तव में सभी सत्रों को शुद्ध करना चाहते हैं? यह प्रत्येक उपयोगकर्ता (स्वयं को छोड़कर) को डिस्कनेक्ट कर देगा। +NoSessionListWithThisHandler=अपने PHP में कॉन्फ़िगर किए गए सत्र संचालक को सभी चालू सत्रों को सूचीबद्ध करने की अनुमति नहीं देता है। +LockNewSessions=नए कनेक्शन लॉक करें +ConfirmLockNewSessions=क्या आप वाकई Dolibarr के किसी भी नये कनेक्शन को अपने तक सीमित रखना चाहते हैं? इसके बाद सिर्फ़ यूजर %s ही कनेक्ट कर पाएंगे। +UnlockNewSessions=कनेक्शन लॉक हटाए +YourSession=आपका सत्र +Sessions=उपयोगकर्ताओं का सत्र +WebUserGroup=वेब सर्वर उपयोगकर्ता / समूह +NoSessionFound=आपका PHP कॉन्फ़िगरेशन सक्रिय सत्रों की सूची की अनुमति नहीं देता है। सत्र संरक्षण के लिए उपयोग की गई डायरेक्टरी ( %s) शायद संरक्षित की गई है (उदाहरण के लिए OS अनुमतियाँ या PHP निर्देशक द्वारा open_basedir)। +DBStoringCharset=डेटाबेस डेटा संग्रहीत करने के लिए charset +DBSortingCharset=डेटा को सॉर्ट करने के लिए डेटाबेस charset +HostCharset=Host charset +ClientCharset=Client charset +ClientSortingCharset=Client collation +WarningModuleNotActive=Module %s must be enabled +WarningOnlyPermissionOfActivatedModules=Only permissions related to activated modules are shown here. You can activate other modules in the Home->Setup->Modules page. +DolibarrSetup=Dolibarr install or upgrade +InternalUser=Internal user +ExternalUser=External user +InternalUsers=Internal users +ExternalUsers=External users +GUISetup=Display +SetupArea=Setup +UploadNewTemplate=Upload new template(s) +FormToTestFileUploadForm=Form to test file upload (according to setup) +IfModuleEnabled=Note: yes is effective only if module %s is enabled +RemoveLock=Remove/rename file %s if it exists, to allow usage of the Update/Install tool. +RestoreLock=Restore file %s, with read permission only, to disable any further use of the Update/Install tool. +SecuritySetup=Security setup +SecurityFilesDesc=Define here options related to security about uploading files. +ErrorModuleRequirePHPVersion=Error, this module requires PHP version %s or higher +ErrorModuleRequireDolibarrVersion=Error, this module requires Dolibarr version %s or higher +ErrorDecimalLargerThanAreForbidden=Error, a precision higher than %s is not supported. +DictionarySetup=Dictionary setup +Dictionary=Dictionaries +ErrorReservedTypeSystemSystemAuto=Value 'system' and 'systemauto' for type is reserved. You can use 'user' as value to add your own record +ErrorCodeCantContainZero=Code can't contain value 0 +DisableJavascript=Disable JavaScript and Ajax functions +DisableJavascriptNote=Note: For test or debug purpose. For optimization for blind person or text browsers, you may prefer to use the setup on the profile of user +UseSearchToSelectCompanyTooltip=Also if you have a large number of third parties (> 100 000), you can increase speed by setting constant COMPANY_DONOTSEARCH_ANYWHERE to 1 in Setup->Other. Search will then be limited to start of string. +UseSearchToSelectContactTooltip=Also if you have a large number of third parties (> 100 000), you can increase speed by setting constant CONTACT_DONOTSEARCH_ANYWHERE to 1 in Setup->Other. Search will then be limited to start of string. +DelaiedFullListToSelectCompany=Wait until a key is pressed before loading content of Third Parties combo list.
    This may increase performance if you have a large number of third parties, but it is less convenient. +DelaiedFullListToSelectContact=Wait until a key is pressed before loading content of Contact combo list.
    This may increase performance if you have a large number of contacts, but it is less convenient) +NumberOfKeyToSearch=Number of characters to trigger search: %s +NumberOfBytes=Number of Bytes +SearchString=Search string +NotAvailableWhenAjaxDisabled=Not available when Ajax disabled +AllowToSelectProjectFromOtherCompany=On document of a third party, can choose a project linked to another third party +JavascriptDisabled=JavaScript disabled +UsePreviewTabs=Use preview tabs +ShowPreview=Show preview +PreviewNotAvailable=Preview not available +ThemeCurrentlyActive=Theme currently active +CurrentTimeZone=TimeZone PHP (server) +MySQLTimeZone=TimeZone MySql (database) +TZHasNoEffect=Dates are stored and returned by database server as if they were kept as submitted string. The timezone has effect only when using the UNIX_TIMESTAMP function (that should not be used by Dolibarr, so database TZ should have no effect, even if changed after data was entered). +Space=Space +Table=Table +Fields=Fields +Index=Index +Mask=Mask +NextValue=Next value +NextValueForInvoices=Next value (invoices) +NextValueForCreditNotes=Next value (credit notes) +NextValueForDeposit=Next value (down payment) +NextValueForReplacements=Next value (replacements) +MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the maximum filesize for upload to %s %s, irrespective of the value of this parameter +NoMaxSizeByPHPLimit=Note: No limit is set in your PHP configuration +MaxSizeForUploadedFiles=Maximum size for uploaded files (0 to disallow any upload) +UseCaptchaCode=Use graphical code (CAPTCHA) on login page +AntiVirusCommand=Full path to antivirus command +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe +AntiVirusParam= More parameters on command line +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" +ComptaSetup=Accounting module setup +UserSetup=User management setup +MultiCurrencySetup=Multi-currency setup +MenuLimits=Limits and accuracy +MenuIdParent=Parent menu ID +DetailMenuIdParent=ID of parent menu (empty for a top menu) +DetailPosition=Sort number to define menu position +AllMenus=All +NotConfigured=Module/Application not configured +Active=Active +SetupShort=Setup +OtherOptions=Other options +OtherSetup=Other Setup +CurrentValueSeparatorDecimal=Decimal separator +CurrentValueSeparatorThousand=Thousand separator +Destination=Destination +IdModule=Module ID +IdPermissions=Permissions ID +LanguageBrowserParameter=Parameter %s +LocalisationDolibarrParameters=Localization parameters +ClientTZ=Client Time Zone (user) +ClientHour=Client time (user) +OSTZ=Server OS Time Zone +PHPTZ=PHP server Time Zone +DaylingSavingTime=Daylight saving time +CurrentHour=PHP Time (server) +CurrentSessionTimeOut=Current session timeout +YouCanEditPHPTZ=To set a different PHP timezone (not required), you can try to add a .htaccess file with a line like this "SetEnv TZ Europe/Paris" +HoursOnThisPageAreOnServerTZ=Warning, in contrary of other screens, hours on this page are not in your local timezone, but of the timezone of the server. +Box=Widget +Boxes=Widgets +MaxNbOfLinesForBoxes=Max. number of lines for widgets +AllWidgetsWereEnabled=All available widgets are enabled +PositionByDefault=Default order +Position=Position +MenusDesc=Menu managers set content of the two menu bars (horizontal and vertical). +MenusEditorDesc=The menu editor allows you to define custom menu entries. Use it carefully to avoid instability and permanently unreachable menu entries.
    Some modules add menu entries (in menu All mostly). If you remove some of these entries by mistake, you can restore them disabling and reenabling the module. +MenuForUsers=Menu for users +LangFile=.lang file +Language_en_US_es_MX_etc=Language (en_US, es_MX, ...) +System=System +SystemInfo=System information +SystemToolsArea=System tools area +SystemToolsAreaDesc=This area provides administration functions. Use the menu to choose the required feature. +Purge=Purge +PurgeAreaDesc=This page allows you to delete all files generated or stored by Dolibarr (temporary files or all files in %s directory). Using this feature is not normally necessary. It is provided as a workaround for users whose Dolibarr is hosted by a provider that does not offer permissions to delete files generated by the web server. +PurgeDeleteLogFile=Delete log files, including %s defined for Syslog module (no risk of losing data) +PurgeDeleteTemporaryFiles=Delete all temporary files (no risk of losing data). Note: Deletion is done only if the temp directory was created 24 hours ago. +PurgeDeleteTemporaryFilesShort=Delete temporary files +PurgeDeleteAllFilesInDocumentsDir=Delete all files in directory: %s.
    This will delete all generated documents related to elements (third parties, invoices etc...), files uploaded into the ECM module, database backup dumps and temporary files. +PurgeRunNow=Purge now +PurgeNothingToDelete=No directory or files to delete. +PurgeNDirectoriesDeleted=%s files or directories deleted. +PurgeNDirectoriesFailed=Failed to delete %s files or directories. +PurgeAuditEvents=Purge all security events +ConfirmPurgeAuditEvents=Are you sure you want to purge all security events? All security logs will be deleted, no other data will be removed. +GenerateBackup=Generate backup +Backup=Backup +Restore=Restore +RunCommandSummary=Backup has been launched with the following command +BackupResult=Backup result +BackupFileSuccessfullyCreated=Backup file successfully generated +YouCanDownloadBackupFile=The generated file can now be downloaded +NoBackupFileAvailable=No backup files available. +ExportMethod=Export method +ImportMethod=Import method +ToBuildBackupFileClickHere=To build a backup file, click here. +ImportMySqlDesc=To import a MySQL backup file, you may use phpMyAdmin via your hosting or use the mysql command from the Command line.
    For example: +ImportPostgreSqlDesc=To import a backup file, you must use pg_restore command from command line: +ImportMySqlCommand=%s %s < mybackupfile.sql +ImportPostgreSqlCommand=%s %s mybackupfile.sql +FileNameToGenerate=Filename for backup: +Compression=Compression +CommandsToDisableForeignKeysForImport=Command to disable foreign keys on import +CommandsToDisableForeignKeysForImportWarning=Mandatory if you want to be able to restore your sql dump later +ExportCompatibility=Compatibility of generated export file +ExportUseMySQLQuickParameter=Use the --quick parameter +ExportUseMySQLQuickParameterHelp=The '--quick' parameter helps limit RAM consumption for large tables. +MySqlExportParameters=MySQL export parameters +PostgreSqlExportParameters= PostgreSQL export parameters +UseTransactionnalMode=Use transactional mode +FullPathToMysqldumpCommand=Full path to mysqldump command +FullPathToPostgreSQLdumpCommand=Full path to pg_dump command +AddDropDatabase=Add DROP DATABASE command +AddDropTable=Add DROP TABLE command +ExportStructure=Structure +NameColumn=Name columns +ExtendedInsert=Extended INSERT +NoLockBeforeInsert=No lock commands around INSERT +DelayedInsert=Delayed insert +EncodeBinariesInHexa=Encode binary data in hexadecimal +IgnoreDuplicateRecords=Ignore errors of duplicate record (INSERT IGNORE) +AutoDetectLang=Autodetect (browser language) +FeatureDisabledInDemo=Feature disabled in demo +FeatureAvailableOnlyOnStable=Feature only available on official stable versions +BoxesDesc=Widgets are components showing some information that you can add to personalize some pages. You can choose between showing the widget or not by selecting target page and clicking 'Activate', or by clicking the trashcan to disable it. +OnlyActiveElementsAreShown=Only elements from enabled modules are shown. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. +ModulesMarketPlaceDesc=You can find more modules to download on external websites on the Internet... +ModulesDeployDesc=If permissions on your file system allow it, you can use this tool to deploy an external module. The module will then be visible on the tab %s. +ModulesMarketPlaces=Find external app/modules +ModulesDevelopYourModule=Develop your own app/modules +ModulesDevelopDesc=You may also develop your own module or find a partner to develop one for you. +DOLISTOREdescriptionLong=Instead of switching on www.dolistore.com web site to find an external module, you can use this embedded tool that will perform the search on the external market place for you (may be slow, need an internet access)... +NewModule=New +FreeModule=Free +CompatibleUpTo=Compatible with version %s +NotCompatible=This module does not seem compatible with your Dolibarr %s (Min %s - Max %s). +CompatibleAfterUpdate=This module requires an update to your Dolibarr %s (Min %s - Max %s). +SeeInMarkerPlace=See in Market place +SeeSetupOfModule=See setup of module %s +Updated=Updated +Nouveauté=Novelty +AchatTelechargement=Buy / Download +GoModuleSetupArea=To deploy/install a new module, go to the Module setup area: %s. +DoliStoreDesc=DoliStore, the official market place for Dolibarr ERP/CRM external modules +DoliPartnersDesc=List of companies providing custom-developed modules or features.
    Note: since Dolibarr is an open source application, anyone experienced in PHP programming may develop a module. +WebSiteDesc=External websites for more add-on (non-core) modules... +DevelopYourModuleDesc=Some solutions to develop your own module... +URL=URL +RelativeURL=Relative URL +BoxesAvailable=Widgets available +BoxesActivated=Widgets activated +ActivateOn=Activate on +ActiveOn=Activated on +SourceFile=Source file +AvailableOnlyIfJavascriptAndAjaxNotDisabled=Available only if JavaScript is not disabled +Required=Required +UsedOnlyWithTypeOption=Used by some agenda option only +Security=Security +Passwords=Passwords +DoNotStoreClearPassword=Encrypt passwords stored in database (NOT as plain-text). It is strongly recommended to activate this option. +MainDbPasswordFileConfEncrypted=Encrypt database password stored in conf.php. It is strongly recommended to activate this option. +InstrucToEncodePass=To have password encoded into the conf.php file, replace the line
    $dolibarr_main_db_pass="...";
    by
    $dolibarr_main_db_pass="crypted:%s"; +InstrucToClearPass=To have password decoded (clear) into the conf.php file, replace the line
    $dolibarr_main_db_pass="crypted:...";
    by
    $dolibarr_main_db_pass="%s"; +ProtectAndEncryptPdfFiles=Protect generated PDF files. This is NOT recommended as it breaks bulk PDF generation. +ProtectAndEncryptPdfFilesDesc=Protection of a PDF document keeps it available to read and print with any PDF browser. However, editing and copying is not possible anymore. Note that using this feature makes building of a global merged PDFs not working. +Feature=Feature +DolibarrLicense=License +Developpers=Developers/contributors +OfficialWebSite=Dolibarr official web site +OfficialWebSiteLocal=Local web site (%s) +OfficialWiki=Dolibarr documentation / Wiki +OfficialDemo=Dolibarr online demo +OfficialMarketPlace=Official market place for external modules/addons +OfficialWebHostingService=Referenced web hosting services (Cloud hosting) +ReferencedPreferredPartners=Preferred Partners +OtherResources=Other resources +ExternalResources=External Resources +SocialNetworks=Social Networks +ForDocumentationSeeWiki=For user or developer documentation (Doc, FAQs...),
    take a look at the Dolibarr Wiki:
    %s +ForAnswersSeeForum=For any other questions/help, you can use the Dolibarr forum:
    %s +HelpCenterDesc1=Here are some resources for getting help and support with Dolibarr. +HelpCenterDesc2=Some of these resources are only available in english. +CurrentMenuHandler=Current menu handler +MeasuringUnit=Measuring unit +LeftMargin=Left margin +TopMargin=Top margin +PaperSize=Paper type +Orientation=Orientation +SpaceX=Space X +SpaceY=Space Y +FontSize=Font size +Content=Content +NoticePeriod=Notice period +NewByMonth=New by month +Emails=Emails +EMailsSetup=Emails setup +EMailsDesc=This page allows you to override your default PHP parameters for email sending. In most cases on Unix/Linux OS, the PHP setup is correct and these parameters are unnecessary. +EmailSenderProfiles=Emails sender profiles +EMailsSenderProfileDesc=You can keep this section empty. If you enter some emails here, they will be added to the list of possible senders into the combobox when your write a new email. +MAIN_MAIL_SMTP_PORT=SMTP/SMTPS Port (default value in php.ini: %s) +MAIN_MAIL_SMTP_SERVER=SMTP/SMTPS Host (default value in php.ini: %s) +MAIN_MAIL_SMTP_PORT_NotAvailableOnLinuxLike=SMTP/SMTPS Port (Not defined into PHP on Unix-like systems) +MAIN_MAIL_SMTP_SERVER_NotAvailableOnLinuxLike=SMTP/SMTPS Host (Not defined into PHP on Unix-like systems) +MAIN_MAIL_EMAIL_FROM=Sender email for automatic emails (default value in php.ini: %s) +MAIN_MAIL_ERRORS_TO=Email used for error returns emails (fields 'Errors-To' in emails sent) +MAIN_MAIL_AUTOCOPY_TO= Copy (Bcc) all sent emails to +MAIN_DISABLE_ALL_MAILS=Disable all email sending (for test purposes or demos) +MAIN_MAIL_FORCE_SENDTO=Send all emails to (instead of real recipients, for test purposes) +MAIN_MAIL_ENABLED_USER_DEST_SELECT=Suggest emails of employees (if defined) into the list of predefined recipient when writing a new email +MAIN_MAIL_SENDMODE=Email sending method +MAIN_MAIL_SMTPS_ID=SMTP ID (if sending server requires authentication) +MAIN_MAIL_SMTPS_PW=SMTP Password (if sending server requires authentication) +MAIN_MAIL_EMAIL_TLS=Use TLS (SSL) encryption +MAIN_MAIL_EMAIL_STARTTLS=Use TLS (STARTTLS) encryption +MAIN_MAIL_EMAIL_DKIM_ENABLED=Use DKIM to generate email signature +MAIN_MAIL_EMAIL_DKIM_DOMAIN=Email Domain for use with dkim +MAIN_MAIL_EMAIL_DKIM_SELECTOR=Name of dkim selector +MAIN_MAIL_EMAIL_DKIM_PRIVATE_KEY=Private key for dkim signing +MAIN_DISABLE_ALL_SMS=Disable all SMS sending (for test purposes or demos) +MAIN_SMS_SENDMODE=Method to use to send SMS +MAIN_MAIL_SMS_FROM=Default sender phone number for SMS sending +MAIN_MAIL_DEFAULT_FROMTYPE=Default sender email for manual sending (User email or Company email) +UserEmail=User email +CompanyEmail=Company Email +FeatureNotAvailableOnLinux=Feature not available on Unix like systems. Test your sendmail program locally. +SubmitTranslation=If the translation for this language is not complete or you find errors, you can correct this by editing files in directory langs/%s and submit your change to www.transifex.com/dolibarr-association/dolibarr/ +SubmitTranslationENUS=If translation for this language is not complete or you find errors, you can correct this by editing files into directory langs/%s and submit modified files on dolibarr.org/forum or for developers on github.com/Dolibarr/dolibarr. +ModuleSetup=Module setup +ModulesSetup=Modules/Application setup +ModuleFamilyBase=System +ModuleFamilyCrm=Customer Relationship Management (CRM) +ModuleFamilySrm=Vendor Relationship Management (VRM) +ModuleFamilyProducts=Product Management (PM) +ModuleFamilyHr=Human Resource Management (HR) +ModuleFamilyProjects=Projects/Collaborative work +ModuleFamilyOther=Other +ModuleFamilyTechnic=Multi-modules tools +ModuleFamilyExperimental=Experimental modules +ModuleFamilyFinancial=Financial Modules (Accounting/Treasury) +ModuleFamilyECM=Electronic Content Management (ECM) +ModuleFamilyPortal=Websites and other frontal application +ModuleFamilyInterface=Interfaces with external systems +MenuHandlers=Menu handlers +MenuAdmin=Menu editor +DoNotUseInProduction=Do not use in production +ThisIsProcessToFollow=Upgrade procedure: +ThisIsAlternativeProcessToFollow=This is an alternative setup to process manually: +StepNb=Step %s +FindPackageFromWebSite=Find a package that provides the features you need (for example on the official web site %s). +DownloadPackageFromWebSite=Download package (for example from the official web site %s). +UnpackPackageInDolibarrRoot=Unpack/unzip the packaged files into your Dolibarr server directory: %s +UnpackPackageInModulesRoot=To deploy/install an external module, unpack/unzip the packaged files into the server directory dedicated to external modules:
    %s +SetupIsReadyForUse=Module deployment is finished. You must however enable and setup the module in your application by going to the page setup modules: %s. +NotExistsDirect=The alternative root directory is not defined to an existing directory.
    +InfDirAlt=Since version 3, it is possible to define an alternative root directory. This allows you to store, into a dedicated directory, plug-ins and custom templates.
    Just create a directory at the root of Dolibarr (eg: custom).
    +InfDirExample=
    Then declare it in the file conf.php
    $dolibarr_main_url_root_alt='/custom'
    $dolibarr_main_document_root_alt='/path/of/dolibarr/htdocs/custom'
    If these lines are commented with "#", to enable them, just uncomment by removing the "#" character. +YouCanSubmitFile=You can upload the .zip file of module package from here: +CurrentVersion=Dolibarr current version +CallUpdatePage=Browse to the page that updates the database structure and data: %s. +LastStableVersion=Latest stable version +LastActivationDate=Latest activation date +LastActivationAuthor=Latest activation author +LastActivationIP=Latest activation IP +UpdateServerOffline=Update server offline +WithCounter=Manage a counter +GenericMaskCodes=You may enter any numbering mask. In this mask, the following tags could be used:
    {000000} corresponds to a number which will be incremented on each %s. Enter as many zeros as the desired length of the counter. The counter will be completed by zeros from the left in order to have as many zeros as the mask.
    {000000+000} same as previous but an offset corresponding to the number to the right of the + sign is applied starting on first %s.
    {000000@x} same as previous but the counter is reset to zero when month x is reached (x between 1 and 12, or 0 to use the early months of fiscal year defined in your configuration, or 99 to reset to zero every month). If this option is used and x is 2 or higher, then sequence {yy}{mm} or {yyyy}{mm} is also required.
    {dd} day (01 to 31).
    {mm} month (01 to 12).
    {yy}, {yyyy} or {y} year over 2, 4 or 1 numbers.
    +GenericMaskCodes2={cccc} the client code on n characters
    {cccc000} the client code on n characters is followed by a counter dedicated for customer. This counter dedicated to customer is reset at same time than global counter.
    {tttt} The code of third party type on n characters (see menu Home - Setup - Dictionary - Types of third parties). If you add this tag, the counter will be different for each type of third party.
    +GenericMaskCodes3=All other characters in the mask will remain intact.
    Spaces are not allowed.
    +GenericMaskCodes4a=Example on the 99th %s of the third party TheCompany, with date 2007-01-31:
    +GenericMaskCodes4b=Example on third party created on 2007-03-01:
    +GenericMaskCodes4c=Example on product created on 2007-03-01:
    +GenericMaskCodes5=ABC{yy}{mm}-{000000} will give ABC0701-000099
    {0000+100@1}-ZZZ/{dd}/XXX will give 0199-ZZZ/31/XXX
    IN{yy}{mm}-{0000}-{t} will give IN0701-0099-A if the type of company is 'Responsable Inscripto' with code for type that is 'A_RI' +GenericNumRefModelDesc=Returns a customizable number according to a defined mask. +ServerAvailableOnIPOrPort=Server is available at address %s on port %s +ServerNotAvailableOnIPOrPort=Server is not available at address %s on port %s +DoTestServerAvailability=Test server connectivity +DoTestSend=Test sending +DoTestSendHTML=Test sending HTML +ErrorCantUseRazIfNoYearInMask=Error, can't use option @ to reset counter each year if sequence {yy} or {yyyy} is not in mask. +ErrorCantUseRazInStartedYearIfNoYearMonthInMask=Error, can't use option @ if sequence {yy}{mm} or {yyyy}{mm} is not in mask. +UMask=UMask parameter for new files on Unix/Linux/BSD/Mac file system. +UMaskExplanation=This parameter allow you to define permissions set by default on files created by Dolibarr on server (during upload for example).
    It must be the octal value (for example, 0666 means read and write for everyone).
    This parameter is useless on a Windows server. +SeeWikiForAllTeam=Take a look at the Wiki page for a list of contributors and their organization +UseACacheDelay= Delay for caching export response in seconds (0 or empty for no cache) +DisableLinkToHelpCenter=Hide link "Need help or support" on login page +DisableLinkToHelp=Hide link to online help "%s" +AddCRIfTooLong=There is no automatic text wrapping, text that is too long will not display on documents. Please add carriage returns in the text area if needed. +ConfirmPurge=Are you sure you want to execute this purge?
    This will permanently delete all your data files with no way to restore them (ECM files, attached files...). +MinLength=Minimum length +LanguageFilesCachedIntoShmopSharedMemory=Files .lang loaded in shared memory +LanguageFile=Language file +ExamplesWithCurrentSetup=Examples with current configuration +ListOfDirectories=List of OpenDocument templates directories +ListOfDirectoriesForModelGenODT=List of directories containing templates files with OpenDocument format.

    Put here full path of directories.
    Add a carriage return between eah 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. +NumberOfModelFilesFound=Number of ODT/ODS template files found in these directories +ExampleOfDirectoriesForModelGen=Examples of syntax:
    c:\\mydir
    /home/mydir
    DOL_DATA_ROOT/ecm/ecmdir +FollowingSubstitutionKeysCanBeUsed=
    To know how to create your odt document templates, before storing them in those directories, read wiki documentation: +FullListOnOnlineDocumentation=http://wiki.dolibarr.org/index.php/Create_an_ODT_document_template +FirstnameNamePosition=Position of Name/Lastname +DescWeather=The following images will be shown on the dashboard when the number of late actions reach the following values: +KeyForWebServicesAccess=Key to use Web Services (parameter "dolibarrkey" in webservices) +TestSubmitForm=Input test form +ThisForceAlsoTheme=Using this menu manager will also use its own theme whatever the user choice. Also this menu manager specialized for smartphones does not work on all smartphone. Use another menu manager if you experience problems with yours. +ThemeDir=Skins directory +ConnectionTimeout=Connection timeout +ResponseTimeout=Response timeout +SmsTestMessage=Test message from __PHONEFROM__ to __PHONETO__ +ModuleMustBeEnabledFirst=Module %s must be enabled first if you need this feature. +SecurityToken=Key to secure URLs +NoSmsEngine=No SMS sender manager available. A SMS sender manager is not installed with the default distribution because they depend on an external vendor, but you can find some on %s +PDF=PDF +PDFDesc=Global options for PDF generation. +PDFAddressForging=Rules for address boxes +HideAnyVATInformationOnPDF=Hide all information related to Sales Tax / VAT +PDFRulesForSalesTax=Rules for Sales Tax / VAT +PDFLocaltax=Rules for %s +HideLocalTaxOnPDF=Hide %s rate in column Tax Sale +HideDescOnPDF=Hide products description +HideRefOnPDF=Hide products ref. +HideDetailsOnPDF=Hide product lines details +PlaceCustomerAddressToIsoLocation=Use french standard position (La Poste) for customer address position +Library=Library +UrlGenerationParameters=Parameters to secure URLs +SecurityTokenIsUnique=Use a unique securekey parameter for each URL +EnterRefToBuildUrl=Enter reference for object %s +GetSecuredUrl=Get calculated URL +ButtonHideUnauthorized=Hide buttons for non-admin users for unauthorized actions instead of showing greyed disabled buttons +OldVATRates=Old VAT rate +NewVATRates=New VAT rate +PriceBaseTypeToChange=Modify on prices with base reference value defined on +MassConvert=Launch bulk conversion +PriceFormatInCurrentLanguage=Price Format In Current Language +String=String +TextLong=Long text +HtmlText=Html text +Int=Integer +Float=Float +DateAndTime=Date and hour +Unique=Unique +Boolean=Boolean (one checkbox) +ExtrafieldPhone = Phone +ExtrafieldPrice = Price +ExtrafieldMail = Email +ExtrafieldUrl = Url +ExtrafieldSelect = Select list +ExtrafieldSelectList = Select from table +ExtrafieldSeparator=Separator (not a field) +ExtrafieldPassword=Password +ExtrafieldRadio=Radio buttons (one choice only) +ExtrafieldCheckBox=Checkboxes +ExtrafieldCheckBoxFromList=Checkboxes from table +ExtrafieldLink=Link to an object +ComputedFormula=Computed field +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +Computedpersistent=Store computed field +ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! +ExtrafieldParamHelpPassword=Leaving this field blank means this value will be stored without encryption (field must be only hidden with star on screen).
    Set 'auto' to use the default encryption rule to save password into database (then value read will be the hash only, no way to retrieve original value) +ExtrafieldParamHelpselect=List of values must be lines with format key,value (where key can't be '0')

    for example:
    1,value1
    2,value2
    code3,value3
    ...

    In order to have the list depending on another complementary attribute list:
    1,value1|options_parent_list_code:parent_key
    2,value2|options_parent_list_code:parent_key

    In order to have the list depending on another list:
    1,value1|parent_list_code:parent_key
    2,value2|parent_list_code:parent_key +ExtrafieldParamHelpcheckbox=List of values must be lines with format key,value (where key can't be '0')

    for example:
    1,value1
    2,value2
    3,value3
    ... +ExtrafieldParamHelpradio=List of values must be lines with format key,value (where key can't be '0')

    for example:
    1,value1
    2,value2
    3,value3
    ... +ExtrafieldParamHelpsellist=List of values comes from a table
    Syntax: table_name:label_field:id_field::filter
    Example: c_typent:libelle:id::filter

    - idfilter is necessarly a primary int key
    - filter can be a simple test (eg active=1) to display only active value
    You can also use $ID$ in filter witch is the current id of current object
    To do a SELECT in filter use $SEL$
    if you want to filter on extrafields use syntax extra.fieldcode=... (where field code is the code of extrafield)

    In order to have the list depending on another complementary attribute list:
    c_typent:libelle:id:options_parent_list_code|parent_column:filter

    In order to have the list depending on another list:
    c_typent:libelle:id:parent_list_code|parent_column:filter +ExtrafieldParamHelpchkbxlst=List of values comes from a table
    Syntax: table_name:label_field:id_field::filter
    Example: c_typent:libelle:id::filter

    filter can be a simple test (eg active=1) to display only active value
    You can also use $ID$ in filter witch is the current id of current object
    To do a SELECT in filter use $SEL$
    if you want to filter on extrafields use syntax extra.fieldcode=... (where field code is the code of extrafield)

    In order to have the list depending on another complementary attribute list:
    c_typent:libelle:id:options_parent_list_code|parent_column:filter

    In order to have the list depending on another list:
    c_typent:libelle:id:parent_list_code|parent_column:filter +ExtrafieldParamHelplink=Parameters must be ObjectName:Classpath
    Syntax: ObjectName:Classpath
    Examples:
    Societe:societe/class/societe.class.php
    Contact:contact/class/contact.class.php +ExtrafieldParamHelpSeparator=Keep empty for a simple separator
    Set this to 1 for a collapsing separator (open by default for new session, then status is kept for each user session)
    Set this to 2 for a collapsing separator (collapsed by default for new session, then status is kept fore each user session) +LibraryToBuildPDF=Library used for PDF generation +LocalTaxDesc=Some countries may apply two or three taxes on each invoice line. If this is the case, choose the type for the second and third tax and its rate. Possible type are:
    1: local tax apply on products and services without vat (localtax is calculated on amount without tax)
    2: local tax apply on products and services including vat (localtax is calculated on amount + main tax)
    3: local tax apply on products without vat (localtax is calculated on amount without tax)
    4: local tax apply on products including vat (localtax is calculated on amount + main vat)
    5: local tax apply on services without vat (localtax is calculated on amount without tax)
    6: local tax apply on services including vat (localtax is calculated on amount + tax) +SMS=SMS +LinkToTestClickToDial=Enter a phone number to call to show a link to test the ClickToDial url for user %s +RefreshPhoneLink=Refresh link +LinkToTest=Clickable link generated for user %s (click phone number to test) +KeepEmptyToUseDefault=Keep empty to use default value +DefaultLink=Default link +SetAsDefault=Set as default +ValueOverwrittenByUserSetup=Warning, this value may be overwritten by user specific setup (each user can set his own clicktodial url) +ExternalModule=External module +InstalledInto=Installed into directory %s +BarcodeInitForthird-parties=Mass barcode init for third-parties +BarcodeInitForProductsOrServices=Mass barcode init or reset for products or services +CurrentlyNWithoutBarCode=Currently, you have %s record on %s %s without barcode defined. +InitEmptyBarCode=Init value for next %s empty records +EraseAllCurrentBarCode=Erase all current barcode values +ConfirmEraseAllCurrentBarCode=Are you sure you want to erase all current barcode values? +AllBarcodeReset=All barcode values have been removed +NoBarcodeNumberingTemplateDefined=No numbering barcode template enabled in the Barcode module setup. +EnableFileCache=Enable file cache +ShowDetailsInPDFPageFoot=Add more details into footer, such as company address or manager names (in addition to professional ids, company capital and VAT number). +NoDetails=No additional details in footer +DisplayCompanyInfo=Display company address +DisplayCompanyManagers=Display manager names +DisplayCompanyInfoAndManagers=Display company address and manager names +EnableAndSetupModuleCron=If you want to have this recurring invoice generated automatically, module *%s* must be enabled and correctly setup. Otherwise, generation of invoices must be done manually from this template using the *Create* button. Note that even if you enabled automatic generation, you can still safely launch manual generation. Generation of duplicates for the same period is not possible. +ModuleCompanyCodeCustomerAquarium=%s followed by customer code for a customer accounting code +ModuleCompanyCodeSupplierAquarium=%s followed by vendor code for a vendor accounting code +ModuleCompanyCodePanicum=Return an empty accounting code. +ModuleCompanyCodeDigitaria=Returns a compound accounting code according to the name of the third party. The code consists of a prefix that can be defined in the first position followed by the number of characters defined in the third party code. +ModuleCompanyCodeCustomerDigitaria=%s followed by the truncated customer name by the number of characters: %s for the customer accounting code. +ModuleCompanyCodeSupplierDigitaria=%s followed by the truncated supplier name by the number of characters: %s for the supplier accounting code. +Use3StepsApproval=By default, Purchase Orders need to be created and approved by 2 different users (one step/user to create and one step/user to approve. Note that if user has both permission to create and approve, one step/user will be enough). You can ask with this option to introduce a third step/user approval, if amount is higher than a dedicated value (so 3 steps will be necessary: 1=validation, 2=first approval and 3=second approval if amount is enough).
    Set this to empty if one approval (2 steps) is enough, set it to a very low value (0.1) if a second approval (3 steps) is always required. +UseDoubleApproval=Use a 3 steps approval when amount (without tax) is higher than... +WarningPHPMail=WARNING: It is often better to setup outgoing emails to use the email server of your provider instead of the default setup. Some email providers (like Yahoo) do not allow you to send an email from another server than their own server. Your current setup uses the server of the application to send email and not the server of your email provider, so some recipients (the one compatible with the restrictive DMARC protocol), will ask your email provider if they can accept your email and some email providers (like Yahoo) may respond "no" because the server is not theirs, so few of your sent Emails may not be accepted (be careful also of your email provider's sending quota).
    If your Email provider (like Yahoo) has this restriction, you must change Email setup to choose the other method "SMTP server" and enter the SMTP server and credentials provided by your Email provider. +WarningPHPMail2=If your email SMTP provider need to restrict email client to some IP addresses (very rare), this is the IP address of the mail user agent (MUA) for your ERP CRM application: %s. +WarningPHPMailSPF=If the domain name in your sender email address is protected by SPF (ask you email provider), you must include the following IPs in the SPF record of the DNS of your domain: %s. +ClickToShowDescription=Click to show description +DependsOn=This module needs the module(s) +RequiredBy=This module is required by module(s) +TheKeyIsTheNameOfHtmlField=This is the name of the HTML field. Technical knowledge is required to read the content of the HTML page to get the key name of a field. +PageUrlForDefaultValues=You must enter the relative path of the page URL. If you include parameters in URL, the default values will be effective if all parameters are set to same value. +PageUrlForDefaultValuesCreate=
    Example:
    For the form to create a new third party, it is %s.
    For URL of external modules installed into custom directory, do not include the "custom/", so use path like mymodule/mypage.php and not custom/mymodule/mypage.php.
    If you want default value only if url has some parameter, you can use %s +PageUrlForDefaultValuesList=
    Example:
    For the page that lists third parties, it is %s.
    For URL of external modules installed into custom directory, do not include the "custom/" so use a path like mymodule/mypagelist.php and not custom/mymodule/mypagelist.php.
    If you want default value only if url has some parameter, you can use %s +AlsoDefaultValuesAreEffectiveForActionCreate=Also note that overwritting default values for form creation works only for pages that were correctly designed (so with parameter action=create or presend...) +EnableDefaultValues=Enable customization of default values +EnableOverwriteTranslation=Enable usage of overwritten translation +GoIntoTranslationMenuToChangeThis=A translation has been found for the key with this code. To change this value, you must edit it from Home-Setup-translation. +WarningSettingSortOrder=Warning, setting a default sort order may result in a technical error when going on the list page if field is an unknown field. If you experience such an error, come back to this page to remove the default sort order and restore default behavior. +Field=Field +ProductDocumentTemplates=Document templates to generate product document +FreeLegalTextOnExpenseReports=Free legal text on expense reports +WatermarkOnDraftExpenseReports=Watermark on draft expense reports +AttachMainDocByDefault=Set this to 1 if you want to attach main document to email by default (if applicable) +FilesAttachedToEmail=Attach file +SendEmailsReminders=Send agenda reminders by emails +davDescription=Setup a WebDAV server +DAVSetup=Setup of module DAV +DAV_ALLOW_PRIVATE_DIR=Enable the generic private directory (WebDAV dedicated directory named "private" - login required) +DAV_ALLOW_PRIVATE_DIRTooltip=The generic private directory is a WebDAV directory anybody can access with its application login/pass. +DAV_ALLOW_PUBLIC_DIR=Enable the generic public directory (WebDAV dedicated directory named "public" - no login required) +DAV_ALLOW_PUBLIC_DIRTooltip=The generic public directory is a WebDAV directory anybody can access (in read and write mode), with no authorization required (login/password account). +DAV_ALLOW_ECM_DIR=Enable the DMS/ECM private directory (root directory of the DMS/ECM module - login required) +DAV_ALLOW_ECM_DIRTooltip=The root directory where all files are manually uploaded when using the DMS/ECM module. Similarly as access from the web interface, you will need a valid login/password with adecuate permissions to access it. +# Modules +Module0Name=Users & Groups +Module0Desc=Users / Employees and Groups management +Module1Name=Third Parties +Module1Desc=Companies and contacts management (customers, prospects...) +Module2Name=Commercial +Module2Desc=Commercial management +Module10Name=Accounting (simplified) +Module10Desc=Simple accounting reports (journals, turnover) based on database content. Does not use any ledger table. +Module20Name=Proposals +Module20Desc=Commercial proposal management +Module22Name=Mass Emailings +Module22Desc=Manage bulk emailing +Module23Name=Energy +Module23Desc=Monitoring the consumption of energies +Module25Name=Sales Orders +Module25Desc=Sales order management +Module30Name=Invoices +Module30Desc=Management of invoices and credit notes for customers. Management of invoices and credit notes for suppliers +Module40Name=Vendors +Module40Desc=Vendors and purchase management (purchase orders and billing of supplier invoices) +Module42Name=Debug Logs +Module42Desc=Logging facilities (file, syslog, ...). Such logs are for technical/debug purposes. +Module49Name=Editors +Module49Desc=Editor management +Module50Name=Products +Module50Desc=Management of Products +Module51Name=Mass mailings +Module51Desc=Mass paper mailing management +Module52Name=Stocks +Module52Desc=Stock management +Module53Name=Services +Module53Desc=Management of Services +Module54Name=Contracts/Subscriptions +Module54Desc=Management of contracts (services or recurring subscriptions) +Module55Name=Barcodes +Module55Desc=Barcode management +Module56Name=Telephony +Module56Desc=Telephony integration +Module57Name=Bank Direct Debit payments +Module57Desc=Management of Direct Debit payment orders. It includes generation of SEPA file for European countries. +Module58Name=ClickToDial +Module58Desc=Integration of a ClickToDial system (Asterisk, ...) +Module59Name=Bookmark4u +Module59Desc=Add function to generate Bookmark4u account from a Dolibarr account +Module60Name=Stickers +Module60Desc=Management of stickers +Module70Name=Interventions +Module70Desc=Intervention management +Module75Name=Expense and trip notes +Module75Desc=Expense and trip notes management +Module80Name=Shipments +Module80Desc=Shipments and delivery note management +Module85Name=Banks & Cash +Module85Desc=Management of bank or cash accounts +Module100Name=External Site +Module100Desc=Add a link to an external website as a main menu icon. Website is shown in a frame under the top menu. +Module105Name=Mailman and SPIP +Module105Desc=Mailman or SPIP interface for member module +Module200Name=LDAP +Module200Desc=LDAP directory synchronization +Module210Name=PostNuke +Module210Desc=PostNuke integration +Module240Name=Data exports +Module240Desc=Tool to export Dolibarr data (with assistance) +Module250Name=Data imports +Module250Desc=Tool to import data into Dolibarr (with assistance) +Module310Name=Members +Module310Desc=Foundation members management +Module320Name=RSS Feed +Module320Desc=Add a RSS feed to Dolibarr pages +Module330Name=Bookmarks & Shortcuts +Module330Desc=Create shortcuts, always accessible, to the internal or external pages to which you frequently access +Module400Name=Projects or Leads +Module400Desc=Management of projects, leads/opportunities and/or tasks. You can also assign any element (invoice, order, proposal, intervention, ...) to a project and get a transversal view from the project view. +Module410Name=Webcalendar +Module410Desc=Webcalendar integration +Module500Name=Taxes & Special Expenses +Module500Desc=Management of other expenses (sale taxes, social or fiscal taxes, dividends, ...) +Module510Name=Salaries +Module510Desc=Record and track employee payments +Module520Name=Loans +Module520Desc=Management of loans +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 +Module610Desc=Creation of product variants (color, size etc.) +Module700Name=Donations +Module700Desc=Donation management +Module770Name=Expense Reports +Module770Desc=Manage expense reports claims (transportation, meal, ...) +Module1120Name=Vendor Commercial Proposals +Module1120Desc=Request vendor commercial proposal and prices +Module1200Name=Mantis +Module1200Desc=Mantis integration +Module1520Name=Document Generation +Module1520Desc=Mass email document generation +Module1780Name=Tags/Categories +Module1780Desc=Create tags/category (products, customers, suppliers, contacts or members) +Module2000Name=WYSIWYG editor +Module2000Desc=Allow text fields to be edited/formatted using CKEditor (html) +Module2200Name=Dynamic Prices +Module2200Desc=Use maths expressions for auto-generation of prices +Module2300Name=Scheduled jobs +Module2300Desc=Scheduled jobs management (alias cron or chrono table) +Module2400Name=Events/Agenda +Module2400Desc=Track events. Log automatic events for tracking purposes or record manual events or meetings. This is the principal module for good Customer or Vendor Relationship Management. +Module2500Name=DMS / ECM +Module2500Desc=Document Management System / Electronic Content Management. Automatic organization of your generated or stored documents. Share them when you need. +Module2600Name=API/Web services (SOAP server) +Module2600Desc=Enable the Dolibarr SOAP server providing API services +Module2610Name=API/Web services (REST server) +Module2610Desc=Enable the Dolibarr REST server providing API services +Module2660Name=Call WebServices (SOAP client) +Module2660Desc=Enable the Dolibarr web services client (Can be used to push data/requests to external servers. Only Purchase orders are currently supported.) +Module2700Name=Gravatar +Module2700Desc=Use online Gravatar service (www.gravatar.com) to show photo of users/members (found with their emails). Needs Internet access +Module2800Desc=FTP Client +Module2900Name=GeoIPMaxmind +Module2900Desc=GeoIP Maxmind conversions capabilities +Module3200Name=Unalterable Archives +Module3200Desc=Enable an unalterable log of business events. Events are archived in real-time. The log is a read-only table of chained events that can be exported. This module may be mandatory for some countries. +Module4000Name=HRM +Module4000Desc=Human resources management (management of department, employee contracts and feelings) +Module5000Name=Multi-company +Module5000Desc=Allows you to manage multiple companies +Module6000Name=Workflow +Module6000Desc=Workflow management (automatic creation of object and/or automatic status change) +Module10000Name=Websites +Module10000Desc=Create websites (public) with a WYSIWYG editor. This is a webmaster or developer oriented CMS (it is better to know HTML and CSS language). Just setup your web server (Apache, Nginx, ...) to point to the dedicated Dolibarr directory to have it online on the internet with your own domain name. +Module20000Name=Leave Request Management +Module20000Desc=Define and track employee leave requests +Module39000Name=Product Lots +Module39000Desc=Lots, serial numbers, eat-by/sell-by date management for products +Module40000Name=Multicurrency +Module40000Desc=Use alternative currencies in prices and documents +Module50000Name=PayBox +Module50000Desc=Offer customers a PayBox online payment page (credit/debit cards). This can be used to allow your customers to make ad-hoc payments or payments related to a specific Dolibarr object (invoice, order etc...) +Module50100Name=POS SimplePOS +Module50100Desc=Point of Sale module SimplePOS (simple POS). +Module50150Name=POS TakePOS +Module50150Desc=Point of Sale module TakePOS (touchscreen POS, for shops, bars or restaurants). +Module50200Name=Paypal +Module50200Desc=Offer customers a PayPal online payment page (PayPal account or credit/debit cards). This can be used to allow your customers to make ad-hoc payments or payments related to a specific Dolibarr object (invoice, order etc...) +Module50300Name=Stripe +Module50300Desc=Offer customers a Stripe online payment page (credit/debit cards). This can be used to allow your customers to make ad-hoc payments or payments related to a specific Dolibarr object (invoice, order etc...) +Module50400Name=Accounting (double entry) +Module50400Desc=Accounting management (double entries, support general and auxiliary ledgers). Export the ledger in several other accounting software formats. +Module54000Name=PrintIPP +Module54000Desc=Direct print (without opening the documents) using Cups IPP interface (Printer must be visible from server, and CUPS must be installed on server). +Module55000Name=Poll, Survey or Vote +Module55000Desc=Create online polls, surveys or votes (like Doodle, Studs, RDVz etc...) +Module59000Name=Margins +Module59000Desc=Module to manage margins +Module60000Name=Commissions +Module60000Desc=Module to manage commissions +Module62000Name=Incoterms +Module62000Desc=Add features to manage Incoterms +Module63000Name=Resources +Module63000Desc=Manage resources (printers, cars, rooms, ...) for allocating to events +Permission11=Read customer invoices +Permission12=Create/modify customer invoices +Permission13=Unvalidate customer invoices +Permission14=Validate customer invoices +Permission15=Send customer invoices by email +Permission16=Create payments for customer invoices +Permission19=Delete customer invoices +Permission21=Read commercial proposals +Permission22=Create/modify commercial proposals +Permission24=Validate commercial proposals +Permission25=Send commercial proposals +Permission26=Close commercial proposals +Permission27=Delete commercial proposals +Permission28=Export commercial proposals +Permission31=Read products +Permission32=Create/modify products +Permission34=Delete products +Permission36=See/manage hidden products +Permission38=Export products +Permission41=Read projects and tasks (shared project and projects I'm contact for). Can also enter time consumed, for me or my hierarchy, on assigned tasks (Timesheet) +Permission42=Create/modify projects (shared project and projects I'm contact for). Can also create tasks and assign users to project and tasks +Permission44=Delete projects (shared project and projects I'm contact for) +Permission45=Export projects +Permission61=Read interventions +Permission62=Create/modify interventions +Permission64=Delete interventions +Permission67=Export interventions +Permission71=Read members +Permission72=Create/modify members +Permission74=Delete members +Permission75=Setup types of membership +Permission76=Export data +Permission78=Read subscriptions +Permission79=Create/modify subscriptions +Permission81=Read customers orders +Permission82=Create/modify customers orders +Permission84=Validate customers orders +Permission86=Send customers orders +Permission87=Close customers orders +Permission88=Cancel customers orders +Permission89=Delete customers orders +Permission91=Read social or fiscal taxes and vat +Permission92=Create/modify social or fiscal taxes and vat +Permission93=Delete social or fiscal taxes and vat +Permission94=Export social or fiscal taxes +Permission95=Read reports +Permission101=Read sendings +Permission102=Create/modify sendings +Permission104=Validate sendings +Permission106=Export sendings +Permission109=Delete sendings +Permission111=Read financial accounts +Permission112=Create/modify/delete and compare transactions +Permission113=Setup financial accounts (create, manage categories) +Permission114=Reconcile transactions +Permission115=Export transactions and account statements +Permission116=Transfers between accounts +Permission117=Manage checks dispatching +Permission121=Read third parties linked to user +Permission122=Create/modify third parties linked to user +Permission125=Delete third parties linked to user +Permission126=Export third parties +Permission141=Read all projects and tasks (also private projects for which I am not a contact) +Permission142=Create/modify all projects and tasks (also private projects for which I am not a contact) +Permission144=Delete all projects and tasks (also private projects i am not contact for) +Permission146=Read providers +Permission147=Read stats +Permission151=Read direct debit payment orders +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=Read contracts/subscriptions +Permission162=Create/modify contracts/subscriptions +Permission163=Activate a service/subscription of a contract +Permission164=Disable a service/subscription of a contract +Permission165=Delete contracts/subscriptions +Permission167=Export contracts +Permission171=Read trips and expenses (yours and your subordinates) +Permission172=Create/modify trips and expenses +Permission173=Delete trips and expenses +Permission174=Read all trips and expenses +Permission178=Export trips and expenses +Permission180=Read suppliers +Permission181=Read purchase orders +Permission182=Create/modify purchase orders +Permission183=Validate purchase orders +Permission184=Approve purchase orders +Permission185=Order or cancel purchase orders +Permission186=Receive purchase orders +Permission187=Close purchase orders +Permission188=Cancel purchase orders +Permission192=Create lines +Permission193=Cancel lines +Permission194=Read the bandwidth lines +Permission202=Create ADSL connections +Permission203=Order connections orders +Permission204=Order connections +Permission205=Manage connections +Permission206=Read connections +Permission211=Read Telephony +Permission212=Order lines +Permission213=Activate line +Permission214=Setup Telephony +Permission215=Setup providers +Permission221=Read emailings +Permission222=Create/modify emailings (topic, recipients...) +Permission223=Validate emailings (allows sending) +Permission229=Delete emailings +Permission237=View recipients and info +Permission238=Manually send mailings +Permission239=Delete mailings after validation or sent +Permission241=Read categories +Permission242=Create/modify categories +Permission243=Delete categories +Permission244=See the contents of the hidden categories +Permission251=Read other users and groups +PermissionAdvanced251=Read other users +Permission252=Read permissions of other users +Permission253=Create/modify other users, groups and permissions +PermissionAdvanced253=Create/modify internal/external users and permissions +Permission254=Create/modify external users only +Permission255=Modify other users password +Permission256=Delete or disable other users +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). +Permission271=Read CA +Permission272=Read invoices +Permission273=Issue invoices +Permission281=Read contacts +Permission282=Create/modify contacts +Permission283=Delete contacts +Permission286=Export contacts +Permission291=Read tariffs +Permission292=Set permissions on the tariffs +Permission293=Modify customer's tariffs +Permission300=Read barcodes +Permission301=Create/modify barcodes +Permission302=Delete barcodes +Permission311=Read services +Permission312=Assign service/subscription to contract +Permission331=Read bookmarks +Permission332=Create/modify bookmarks +Permission333=Delete bookmarks +Permission341=Read its own permissions +Permission342=Create/modify his own user information +Permission343=Modify his own password +Permission344=Modify its own permissions +Permission351=Read groups +Permission352=Read groups permissions +Permission353=Create/modify groups +Permission354=Delete or disable groups +Permission358=Export users +Permission401=Read discounts +Permission402=Create/modify discounts +Permission403=Validate discounts +Permission404=Delete discounts +Permission430=Use Debug Bar +Permission511=Read payments of salaries +Permission512=Create/modify payments of salaries +Permission514=Delete payments of salaries +Permission517=Export salaries +Permission520=Read Loans +Permission522=Create/modify loans +Permission524=Delete loans +Permission525=Access loan calculator +Permission527=Export loans +Permission531=Read services +Permission532=Create/modify services +Permission534=Delete services +Permission536=See/manage hidden services +Permission538=Export services +Permission650=Read Bills of Materials +Permission651=Create/Update Bills of Materials +Permission652=Delete Bills of Materials +Permission701=Read donations +Permission702=Create/modify donations +Permission703=Delete donations +Permission771=Read expense reports (yours and your subordinates) +Permission772=Create/modify expense reports +Permission773=Delete expense reports +Permission774=Read all expense reports (even for user not subordinates) +Permission775=Approve expense reports +Permission776=Pay expense reports +Permission779=Export expense reports +Permission1001=Read stocks +Permission1002=Create/modify warehouses +Permission1003=Delete warehouses +Permission1004=Read stock movements +Permission1005=Create/modify stock movements +Permission1101=Read delivery receipts +Permission1102=Create/modify delivery receipts +Permission1104=Validate delivery receipts +Permission1109=Delete delivery receipts +Permission1121=Read supplier proposals +Permission1122=Create/modify supplier proposals +Permission1123=Validate supplier proposals +Permission1124=Send supplier proposals +Permission1125=Delete supplier proposals +Permission1126=Close supplier price requests +Permission1181=Read suppliers +Permission1182=Read purchase orders +Permission1183=Create/modify purchase orders +Permission1184=Validate purchase orders +Permission1185=Approve purchase orders +Permission1186=Order purchase orders +Permission1187=Acknowledge receipt of purchase orders +Permission1188=Delete purchase orders +Permission1190=Approve (second approval) purchase orders +Permission1201=Get result of an export +Permission1202=Create/Modify an export +Permission1231=Read vendor invoices +Permission1232=Create/modify vendor invoices +Permission1233=Validate vendor invoices +Permission1234=Delete vendor invoices +Permission1235=Send vendor invoices by email +Permission1236=Export vendor invoices, attributes and payments +Permission1237=Export purchase orders and their details +Permission1251=Run mass imports of external data into database (data load) +Permission1321=Export customer invoices, attributes and payments +Permission1322=Reopen a paid bill +Permission1421=Export sales orders and attributes +Permission2401=Read actions (events or tasks) linked to his user account (if owner of event or just assigned to) +Permission2402=Create/modify actions (events or tasks) linked to his user account (if owner of event) +Permission2403=Delete actions (events or tasks) linked to his user account (if owner of event) +Permission2411=Read actions (events or tasks) of others +Permission2412=Create/modify actions (events or tasks) of others +Permission2413=Delete actions (events or tasks) of others +Permission2414=Export actions/tasks of others +Permission2501=Read/Download documents +Permission2502=Download documents +Permission2503=Submit or delete documents +Permission2515=Setup documents directories +Permission2801=Use FTP client in read mode (browse and download only) +Permission2802=Use FTP client in write mode (delete or upload files) +Permission3200=Read archived events and fingerprints +Permission4001=See employees +Permission4002=Create employees +Permission4003=Delete employees +Permission4004=Export employees +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. +Permission10005=Delete website content +Permission20001=Read leave requests (your leave and those of your subordinates) +Permission20002=Create/modify your leave requests (your leave and those of your subordinates) +Permission20003=Delete leave requests +Permission20004=Read all leave requests (even of user not subordinates) +Permission20005=Create/modify leave requests for everybody (even of user not subordinates) +Permission20006=Admin leave requests (setup and update balance) +Permission20007=Approve leave requests +Permission23001=Read Scheduled job +Permission23002=Create/update Scheduled job +Permission23003=Delete Scheduled job +Permission23004=Execute Scheduled job +Permission50101=Use Point of Sale +Permission50201=Read transactions +Permission50202=Import transactions +Permission50401=Bind products and invoices with accounting accounts +Permission50411=Read operations in ledger +Permission50412=Write/Edit operations in ledger +Permission50414=Delete operations in ledger +Permission50415=Delete all operations by year and journal in ledger +Permission50418=Export operations of the ledger +Permission50420=Report and export reports (turnover, balance, journals, ledger) +Permission50430=Define fiscal periods. Validate transactions and close fiscal periods. +Permission50440=Manage chart of accounts, setup of accountancy +Permission51001=Read assets +Permission51002=Create/Update assets +Permission51003=Delete assets +Permission51005=Setup types of asset +Permission54001=Print +Permission55001=Read polls +Permission55002=Create/modify polls +Permission59001=Read commercial margins +Permission59002=Define commercial margins +Permission59003=Read every user margin +Permission63001=Read resources +Permission63002=Create/modify resources +Permission63003=Delete resources +Permission63004=Link resources to agenda events +DictionaryCompanyType=Third-party types +DictionaryCompanyJuridicalType=Third-party legal entities +DictionaryProspectLevel=Prospect potential +DictionaryCanton=States/Provinces +DictionaryRegion=Regions +DictionaryCountry=Countries +DictionaryCurrency=Currencies +DictionaryCivility=Honorific titles +DictionaryActions=Types of agenda events +DictionarySocialContributions=Types of social or fiscal taxes +DictionaryVAT=VAT Rates or Sales Tax Rates +DictionaryRevenueStamp=Amount of tax stamps +DictionaryPaymentConditions=Payment Terms +DictionaryPaymentModes=Payment Modes +DictionaryTypeContact=Contact/Address types +DictionaryTypeOfContainer=Website - Type of website pages/containers +DictionaryEcotaxe=Ecotax (WEEE) +DictionaryPaperFormat=Paper formats +DictionaryFormatCards=Card formats +DictionaryFees=Expense report - Types of expense report lines +DictionarySendingMethods=Shipping methods +DictionaryStaff=Number of Employees +DictionaryAvailability=Delivery delay +DictionaryOrderMethods=Ordering methods +DictionarySource=Origin of proposals/orders +DictionaryAccountancyCategory=Personalized groups for reports +DictionaryAccountancysystem=Models for chart of accounts +DictionaryAccountancyJournal=Accounting journals +DictionaryEMailTemplates=Email Templates +DictionaryUnits=Units +DictionaryMeasuringUnits=Measuring Units +DictionarySocialNetworks=Social Networks +DictionaryProspectStatus=Prospect status +DictionaryHolidayTypes=Types of leave +DictionaryOpportunityStatus=Lead status for project/lead +DictionaryExpenseTaxCat=Expense report - Transportation categories +DictionaryExpenseTaxRange=Expense report - Range by transportation category +SetupSaved=Setup saved +SetupNotSaved=Setup not saved +BackToModuleList=Back to Module list +BackToDictionaryList=Back to Dictionaries list +TypeOfRevenueStamp=Type of tax stamp +VATManagement=Sales Tax Management +VATIsUsedDesc=By default when creating prospects, invoices, orders etc. the Sales Tax rate follows the active standard rule:
    If the seller is not subject to Sales tax, then Sales tax defaults to 0. End of rule.
    If the (seller's country = buyer's country), then the Sales tax by default equals the Sales tax of the product in the seller's country. End of rule.
    If the seller and buyer are both in the European Community and goods are transport-related products (haulage, shipping, airline), the default VAT is 0. This rule is dependant on the seller's country - please consult with your accountant. The VAT should be paid by the buyer to the customs office in their country and not to the seller. End of rule.
    If the seller and buyer are both in the European Community and the buyer is not a company (with a registered intra-Community VAT number) then the VAT defaults to the VAT rate of the seller's country. End of rule.
    If the seller and buyer are both in the European Community and the buyer is a company (with a registered intra-Community VAT number), then the VAT is 0 by default. End of rule.
    In any other case the proposed default is Sales tax=0. End of rule. +VATIsNotUsedDesc=By default the proposed Sales tax is 0 which can be used for cases like associations, individuals or small companies. +VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. +VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. +##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax +LTRate=Rate +LocalTax1IsNotUsed=Do not use second tax +LocalTax1IsUsedDesc=Use a second type of tax (other than first one) +LocalTax1IsNotUsedDesc=Do not use other type of tax (other than first one) +LocalTax1Management=Second type of tax +LocalTax1IsUsedExample= +LocalTax1IsNotUsedExample= +LocalTax2IsNotUsed=Do not use third tax +LocalTax2IsUsedDesc=Use a third type of tax (other than first one) +LocalTax2IsNotUsedDesc=Do not use other type of tax (other than first one) +LocalTax2Management=Third type of tax +LocalTax2IsUsedExample= +LocalTax2IsNotUsedExample= +LocalTax1ManagementES=RE Management +LocalTax1IsUsedDescES=The RE rate by default when creating prospects, invoices, orders etc. follow the active standard rule:
    If the buyer is not subjected to RE, RE by default=0. End of rule.
    If the buyer is subjected to RE then the RE by default. End of rule.
    +LocalTax1IsNotUsedDescES=By default the proposed RE is 0. End of rule. +LocalTax1IsUsedExampleES=In Spain they are professionals subject to some specific sections of the Spanish IAE. +LocalTax1IsNotUsedExampleES=In Spain they are professional and societies and subject to certain sections of the Spanish IAE. +LocalTax2ManagementES=IRPF Management +LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices, orders etc. follow the active standard rule:
    If the seller is not subjected to IRPF, then IRPF by default=0. End of rule.
    If the seller is subjected to IRPF then the IRPF by default. End of rule.
    +LocalTax2IsNotUsedDescES=By default the proposed IRPF is 0. End of rule. +LocalTax2IsUsedExampleES=In Spain, freelancers and independent professionals who provide services and companies who have chosen the tax system of modules. +LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) +CalcLocaltax=Reports on local taxes +CalcLocaltax1=Sales - Purchases +CalcLocaltax1Desc=Local Taxes reports are calculated with the difference between localtaxes sales and localtaxes purchases +CalcLocaltax2=Purchases +CalcLocaltax2Desc=Local Taxes reports are the total of localtaxes purchases +CalcLocaltax3=Sales +CalcLocaltax3Desc=Local Taxes reports are the total of localtaxes sales +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax +LabelUsedByDefault=Label used by default if no translation can be found for code +LabelOnDocuments=Label on documents +LabelOrTranslationKey=Label or translation key +ValueOfConstantKey=Value of a configuration constant +NbOfDays=No. of days +AtEndOfMonth=At end of month +CurrentNext=Current/Next +Offset=Offset +AlwaysActive=Always active +Upgrade=Upgrade +MenuUpgrade=Upgrade / Extend +AddExtensionThemeModuleOrOther=Deploy/install external app/module +WebServer=Web server +DocumentRootServer=Web server's root directory +DataRootServer=Data files directory +IP=IP +Port=Port +VirtualServerName=Virtual server name +OS=OS +PhpWebLink=Web-Php link +Server=Server +Database=Database +DatabaseServer=Database host +DatabaseName=Database name +DatabasePort=Database port +DatabaseUser=Database user +DatabasePassword=Database password +Tables=Tables +TableName=Table name +NbOfRecord=No. of records +Host=Server +DriverType=Driver type +SummarySystem=System information summary +SummaryConst=List of all Dolibarr setup parameters +MenuCompanySetup=Company/Organization +DefaultMenuManager= Standard menu manager +DefaultMenuSmartphoneManager=Smartphone menu manager +Skin=Skin theme +DefaultSkin=Default skin theme +MaxSizeList=Max length for list +DefaultMaxSizeList=Default max length for lists +DefaultMaxSizeShortList=Default max length for short lists (i.e. in customer card) +MessageOfDay=Message of the day +MessageLogin=Login page message +LoginPage=Login page +BackgroundImageLogin=Background image +PermanentLeftSearchForm=Permanent search form on left menu +DefaultLanguage=Default language +EnableMultilangInterface=Enable multilanguage support +EnableShowLogo=Show the company logo in the menu +CompanyInfo=Company/Organization +CompanyIds=Company/Organization identities +CompanyName=Name +CompanyAddress=Address +CompanyZip=Zip +CompanyTown=Town +CompanyCountry=Country +CompanyCurrency=Main currency +CompanyObject=Object of the company +IDCountry=ID country +Logo=Logo +LogoDesc=Main logo of company. Will be used into generated documents (PDF, ...) +LogoSquarred=Logo (squarred) +LogoSquarredDesc=Must be a squarred icon (width = height). This logo will be used as the favorite icon or other need like for the top menu bar (if not disabled into display setup). +DoNotSuggestPaymentMode=Do not suggest +NoActiveBankAccountDefined=No active bank account defined +OwnerOfBankAccount=Owner of bank account %s +BankModuleNotActive=Bank accounts module not enabled +ShowBugTrackLink=Show link "%s" +Alerts=Alerts +DelaysOfToleranceBeforeWarning=Delay before displaying a warning alert for: +DelaysOfToleranceDesc=Set the delay before an alert icon %s is shown onscreen for the late element. +Delays_MAIN_DELAY_ACTIONS_TODO=Planned events (agenda events) not completed +Delays_MAIN_DELAY_PROJECT_TO_CLOSE=Project not closed in time +Delays_MAIN_DELAY_TASKS_TODO=Planned task (project tasks) not completed +Delays_MAIN_DELAY_ORDERS_TO_PROCESS=Order not processed +Delays_MAIN_DELAY_SUPPLIER_ORDERS_TO_PROCESS=Purchase order not processed +Delays_MAIN_DELAY_PROPALS_TO_CLOSE=Proposal not closed +Delays_MAIN_DELAY_PROPALS_TO_BILL=Proposal not billed +Delays_MAIN_DELAY_NOT_ACTIVATED_SERVICES=Service to activate +Delays_MAIN_DELAY_RUNNING_SERVICES=Expired service +Delays_MAIN_DELAY_SUPPLIER_BILLS_TO_PAY=Unpaid vendor invoice +Delays_MAIN_DELAY_CUSTOMER_BILLS_UNPAYED=Unpaid customer invoice +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 +Delays_MAIN_DELAY_HOLIDAYS=Leave requests 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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. +SetupDescription5=Other Setup menu entries manage optional parameters. +LogEvents=Security audit events +Audit=Audit +InfoDolibarr=About Dolibarr +InfoBrowser=About Browser +InfoOS=About OS +InfoWebServer=About Web Server +InfoDatabase=About Database +InfoPHP=About PHP +InfoPerf=About Performances +BrowserName=Browser name +BrowserOS=Browser OS +ListOfSecurityEvents=List of Dolibarr security events +SecurityEventsPurged=Security events purged +LogEventDesc=Enable logging for specific security events. Administrators the log via menu %s - %s. Warning, this feature can generate a large amount of data in the database. +AreaForAdminOnly=Setup parameters can be set by administrator users only. +SystemInfoDesc=System information is miscellaneous technical information you get in read only mode and visible for administrators only. +SystemAreaForAdminOnly=This area is available to administrator users only. Dolibarr user permissions cannot change this restriction. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. +AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. +AccountantFileNumber=Accountant code +DisplayDesc=Parameters affecting the look and behaviour of Dolibarr can be modified here. +AvailableModules=Available app/modules +ToActivateModule=To activate modules, go on setup Area (Home->Setup->Modules). +SessionTimeOut=Time out for session +SessionExplanation=This number guarantees that the session will never expire before this delay, if the session cleaner is done by Internal PHP session cleaner (and nothing else). Internal PHP session cleaner does not guarantee that the session will expire after this delay. It will expire, after this delay, and when the session cleaner is run, so every %s/%s access, but only during access made by other sessions (if value is 0, it means clearing of session is done only by an external process).
    Note: on some servers with an external session cleaning mechanism (cron under debian, ubuntu ...), the sessions can be destroyed after a period defined by an external setup, no matter what the value entered here is. +TriggersAvailable=Available triggers +TriggersDesc=Triggers are files that will modify the behavior of Dolibarr workflow once copied into the directory htdocs/core/triggers. They realize new actions, activated on Dolibarr events (new company creation, invoice validation, ...). +TriggerDisabledByName=Triggers in this file are disabled by the -NORUN suffix in their name. +TriggerDisabledAsModuleDisabled=Triggers in this file are disabled as module %s is disabled. +TriggerAlwaysActive=Triggers in this file are always active, whatever are the activated Dolibarr modules. +TriggerActiveAsModuleActive=Triggers in this file are active as module %s is enabled. +GeneratedPasswordDesc=Choose the method to be used for auto-generated passwords. +DictionaryDesc=Insert all reference data. You can add your values to the default. +ConstDesc=This page allows you to edit (override) parameters not available in other pages. These are mostly reserved parameters for developers/advanced troubleshooting only. +MiscellaneousDesc=All other security related parameters are defined here. +LimitsSetup=Limits/Precision setup +LimitsDesc=You can define limits, precisions and optimizations used by Dolibarr here +MAIN_MAX_DECIMALS_UNIT=Max. decimals for unit prices +MAIN_MAX_DECIMALS_TOT=Max. decimals for total prices +MAIN_MAX_DECIMALS_SHOWN=Max. decimals for prices shown on screen. Add an ellipsis ... after this parameter (e.g. "2...") if you want to see "..." suffixed to the truncated price. +MAIN_ROUNDING_RULE_TOT=Step of rounding range (for countries where rounding is done on something other than base 10. For example, put 0.05 if rounding is done by 0.05 steps) +UnitPriceOfProduct=Net unit price of a product +TotalPriceAfterRounding=Total price (excl/vat/incl tax) after rounding +ParameterActiveForNextInputOnly=Parameter effective for next input only +NoEventOrNoAuditSetup=No security event has been logged. This is normal if Audit has not been enabled in the "Setup - Security - Events" page. +NoEventFoundWithCriteria=No security event has been found for this search criteria. +SeeLocalSendMailSetup=See your local sendmail setup +BackupDesc=A complete backup of a Dolibarr installation requires two steps. +BackupDesc2=Backup the contents of the "documents" directory (%s) containing all uploaded and generated files. This will also include all the dump files generated in Step 1. This operation may last several minutes. +BackupDesc3=Backup the structure and contents of your database (%s) into a dump file. For this, you can use the following assistant. +BackupDescX=The archived directory should be stored in a secure place. +BackupDescY=The generated dump file should be stored in a secure place. +BackupPHPWarning=Backup cannot be guaranteed with this method. Previous one recommended. +RestoreDesc=To restore a Dolibarr backup, two steps are required. +RestoreDesc2=Restore the backup file (zip file for example) of the "documents" directory to a new Dolibarr installation or into this current documents directory (%s). +RestoreDesc3=Restore the database structure and data from a backup dump file into the database of the new Dolibarr installation or into the database of this current installation (%s). Warning, once the restore is complete, you must use a login/password, that existed from the backup time/installation to connect again.
    To restore a backup database into this current installation, you can follow this assistant. +RestoreMySQL=MySQL import +ForcedToByAModule= This rule is forced to %s by an activated module +PreviousDumpFiles=Existing backup files +PreviousArchiveFiles=Existing archive files +WeekStartOnDay=First day of the week +RunningUpdateProcessMayBeRequired=Running the upgrade process seems to be required (Program version %s differs from Database version %s) +YouMustRunCommandFromCommandLineAfterLoginToUser=You must run this command from command line after login to a shell with user %s or you must add -W option at end of command line to provide %s password. +YourPHPDoesNotHaveSSLSupport=SSL functions not available in your PHP +DownloadMoreSkins=More skins to download +SimpleNumRefModelDesc=Returns the reference number with format %syymm-nnnn where yy is year, mm is month and nnnn is sequential with no reset +ShowProfIdInAddress=Show professional id with addresses +ShowVATIntaInAddress=Hide intra-Community VAT number with addresses +TranslationUncomplete=Partial translation +MAIN_DISABLE_METEO=Disable meteorological view +MeteoStdMod=Standard mode +MeteoStdModEnabled=Standard mode enabled +MeteoPercentageMod=Percentage mode +MeteoPercentageModEnabled=Percentage mode enabled +MeteoUseMod=Click to use %s +TestLoginToAPI=Test login to API +ProxyDesc=Some features of Dolibarr require internet access. Define here the internet connection parameters such as access through a proxy server if necessary. +ExternalAccess=External/Internet Access +MAIN_PROXY_USE=Use a proxy server (otherwise access is direct to the internet) +MAIN_PROXY_HOST=Proxy server: Name/Address +MAIN_PROXY_PORT=Proxy server: Port +MAIN_PROXY_USER=Proxy server: Login/User +MAIN_PROXY_PASS=Proxy server: Password +DefineHereComplementaryAttributes=Define here any additional/custom attributes that you want to be included for: %s +ExtraFields=Complementary attributes +ExtraFieldsLines=Complementary attributes (lines) +ExtraFieldsLinesRec=Complementary attributes (templates invoices lines) +ExtraFieldsSupplierOrdersLines=Complementary attributes (order lines) +ExtraFieldsSupplierInvoicesLines=Complementary attributes (invoice lines) +ExtraFieldsThirdParties=Complementary attributes (third party) +ExtraFieldsContacts=Complementary attributes (contacts/address) +ExtraFieldsMember=Complementary attributes (member) +ExtraFieldsMemberType=Complementary attributes (member type) +ExtraFieldsCustomerInvoices=Complementary attributes (invoices) +ExtraFieldsCustomerInvoicesRec=Complementary attributes (templates invoices) +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). +PathToDocuments=Path to documents +PathDirectory=Directory +SendmailOptionMayHurtBuggedMTA=Feature to send mails using method "PHP mail direct" will generate a mail message that might not be parsed correctly by some receiving mail servers. The result is that some mails can't be read by people hosted by those bugged platforms. This is the case for some Internet providers (Ex: Orange in France). This is not a problem with Dolibarr or PHP but with the receiving mail server. You can however add an option MAIN_FIX_FOR_BUGGED_MTA to 1 in Setup - Other to modify Dolibarr to avoid this. However, you may experience problems with other servers that strictly use the SMTP standard. The other solution (recommended) is to use the method "SMTP socket library" which has no disadvantages. +TranslationSetup=Setup of translation +TranslationKeySearch=Search a translation key or string +TranslationOverwriteKey=Overwrite a translation string +TranslationDesc=How to set the display language:
    * Default/Systemwide: menu Home -> Setup -> Display
    * Per user: Click on the username at the top of the screen and modify the User Display Setup tab on the user card. +TranslationOverwriteDesc=You can also override strings filling the following table. Choose your language from "%s" dropdown, insert the translation key string into "%s" and your new translation into "%s" +TranslationOverwriteDesc2=You can use the other tab to help you know which translation key to use +TranslationString=Translation string +CurrentTranslationString=Current translation string +WarningAtLeastKeyOrTranslationRequired=A search criteria is required at least for key or translation string +NewTranslationStringToShow=New translation string to show +OriginalValueWas=The original translation is overwritten. Original value was:

    %s +TransKeyWithoutOriginalValue=You forced a new translation for the translation key '%s' that does not exist in any language files +TotalNumberOfActivatedModules=Activated application/modules: %s / %s +YouMustEnableOneModule=You must at least enable 1 module +ClassNotFoundIntoPathWarning=Class %s not found in PHP path +YesInSummer=Yes in summer +OnlyFollowingModulesAreOpenedToExternalUsers=Note, only the following modules are available to external users (irrespective of the permissions of such users) and only if permissions are granted:
    +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. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. +SearchOptim=Search optimization +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. +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. +FieldEdition=Edition of field %s +FillThisOnlyIfRequired=Example: +2 (fill only if timezone offset problems are experienced) +GetBarCode=Get barcode +NumberingModules=Numbering models +##### Module password generation +PasswordGenerationStandard=Return a password generated according to internal Dolibarr algorithm: 8 characters containing shared numbers and characters in lowercase. +PasswordGenerationNone=Do not suggest a generated password. Password must be typed in manually. +PasswordGenerationPerso=Return a password according to your personally defined configuration. +SetupPerso=According to your configuration +PasswordPatternDesc=Password pattern description +##### Users setup ##### +RuleForGeneratedPasswords=Rules to generate and validate passwords +DisableForgetPasswordLinkOnLogonPage=Do not show the "Password Forgotten" link on the Login page +UsersSetup=Users module setup +UserMailRequired=Email required to create a new user +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record +##### HRM setup ##### +HRMSetup=HRM module setup +##### Company setup ##### +CompanySetup=Companies module setup +CompanyCodeChecker=Options for automatic generation of customer/vendor codes +AccountCodeManager=Options for automatic generation of customer/vendor accounting codes +NotificationsDesc=Email notifications can be sent automatically for some Dolibarr events.
    Recipients of notifications can be defined: +NotificationsDescUser=* per user, one user at a time. +NotificationsDescContact=* per third-party contacts (customers or vendors), one contact at a time. +NotificationsDescGlobal=* or by setting global email addresses in this setup page. +ModelModules=Document Templates +DocumentModelOdt=Generate documents from OpenDocument templates (.ODT / .ODS files from LibreOffice, OpenOffice, KOffice, TextEdit,...) +WatermarkOnDraft=Watermark on draft document +JSOnPaimentBill=Activate feature to autofill payment lines on payment form +CompanyIdProfChecker=Rules for Professional IDs +MustBeUnique=Must be unique? +MustBeMandatory=Mandatory to create third parties (if VAT number or type of company defined) ? +MustBeInvoiceMandatory=Mandatory to validate invoices? +TechnicalServicesProvided=Technical services provided +#####DAV ##### +WebDAVSetupDesc=This is the link to access the WebDAV directory. It contains a "public" dir open to any user knowing the URL (if public directory access allowed) and a "private" directory that needs an existing login account/password for access. +WebDavServer=Root URL of %s server: %s +##### Webcal setup ##### +WebCalUrlForVCalExport=An export link to %s format is available at following link: %s +##### Invoices ##### +BillsSetup=Invoices module setup +BillsNumberingModule=Invoices and credit notes numbering model +BillsPDFModules=Invoice documents models +BillsPDFModulesAccordindToInvoiceType=Invoice documents models according to invoice type +PaymentsPDFModules=Payment documents models +ForceInvoiceDate=Force invoice date to validation date +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice +SuggestPaymentByRIBOnAccount=Suggest payment by withdrawal on account +SuggestPaymentByChequeToAddress=Suggest payment by check to +FreeLegalTextOnInvoices=Free text on invoices +WatermarkOnDraftInvoices=Watermark on draft invoices (none if empty) +PaymentsNumberingModule=Payments numbering model +SuppliersPayment=Vendor payments +SupplierPaymentSetup=Vendor payments setup +##### Proposals ##### +PropalSetup=Commercial proposals module setup +ProposalsNumberingModules=Commercial proposal numbering models +ProposalsPDFModules=Commercial proposal documents models +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal +FreeLegalTextOnProposal=Free text on commercial proposals +WatermarkOnDraftProposal=Watermark on draft commercial proposals (none if empty) +BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal +##### SupplierProposal ##### +SupplierProposalSetup=Price requests suppliers module setup +SupplierProposalNumberingModules=Price requests suppliers numbering models +SupplierProposalPDFModules=Price requests suppliers documents models +FreeLegalTextOnSupplierProposal=Free text on price requests suppliers +WatermarkOnDraftSupplierProposal=Watermark on draft price requests suppliers (none if empty) +BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_PROPOSAL=Ask for bank account destination of price request +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 ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order +OrdersSetup=Sales Orders management setup +OrdersNumberingModules=Orders numbering models +OrdersModelModule=Order documents models +FreeLegalTextOnOrders=Free text on orders +WatermarkOnDraftOrders=Watermark on draft orders (none if empty) +ShippableOrderIconInList=Add an icon in Orders list which indicate if order is shippable +BANK_ASK_PAYMENT_BANK_DURING_ORDER=Ask for bank account destination of order +##### Interventions ##### +InterventionsSetup=Interventions module setup +FreeLegalTextOnInterventions=Free text on intervention documents +FicheinterNumberingModules=Intervention numbering models +TemplatePDFInterventions=Intervention card documents models +WatermarkOnDraftInterventionCards=Watermark on intervention card documents (none if empty) +##### Contracts ##### +ContractsSetup=Contracts/Subscriptions module setup +ContractsNumberingModules=Contracts numbering modules +TemplatePDFContracts=Contracts documents models +FreeLegalTextOnContracts=Free text on contracts +WatermarkOnDraftContractCards=Watermark on draft contracts (none if empty) +##### Members ##### +MembersSetup=Members module setup +MemberMainOptions=Main options +AdherentLoginRequired= Manage a Login for each member +AdherentMailRequired=Email required to create a new member +MemberSendInformationByMailByDefault=Checkbox to send mail confirmation to members (validation or new subscription) is on by default +VisitorCanChooseItsPaymentMode=Visitor can choose from available payment modes +MEMBER_REMINDER_EMAIL=Enable automatic reminder by email of expired subscriptions. Note: Module %s must be enabled and correctly setup to send reminders. +##### LDAP setup ##### +LDAPSetup=LDAP Setup +LDAPGlobalParameters=Global parameters +LDAPUsersSynchro=Users +LDAPGroupsSynchro=Groups +LDAPContactsSynchro=Contacts +LDAPMembersSynchro=Members +LDAPMembersTypesSynchro=Members types +LDAPSynchronization=LDAP synchronisation +LDAPFunctionsNotAvailableOnPHP=LDAP functions are not available on your PHP +LDAPToDolibarr=LDAP -> Dolibarr +DolibarrToLDAP=Dolibarr -> LDAP +LDAPNamingAttribute=Key in LDAP +LDAPSynchronizeUsers=Organization of users in LDAP +LDAPSynchronizeGroups=Organization of groups in LDAP +LDAPSynchronizeContacts=Organization of contacts in LDAP +LDAPSynchronizeMembers=Organization of foundation's members in LDAP +LDAPSynchronizeMembersTypes=Organization of foundation's members types in LDAP +LDAPPrimaryServer=Primary server +LDAPSecondaryServer=Secondary server +LDAPServerPort=Server port +LDAPServerPortExample=Default port: 389 +LDAPServerProtocolVersion=Protocol version +LDAPServerUseTLS=Use TLS +LDAPServerUseTLSExample=Your LDAP server use TLS +LDAPServerDn=Server DN +LDAPAdminDn=Administrator DN +LDAPAdminDnExample=Complete DN (ex: cn=admin,dc=example,dc=com or cn=Administrator,cn=Users,dc=example,dc=com for active directory) +LDAPPassword=Administrator password +LDAPUserDn=Users' DN +LDAPUserDnExample=Complete DN (ex: ou=users,dc=example,dc=com) +LDAPGroupDn=Groups' DN +LDAPGroupDnExample=Complete DN (ex: ou=groups,dc=example,dc=com) +LDAPServerExample=Server address (ex: localhost, 192.168.0.2, ldaps://ldap.example.com/) +LDAPServerDnExample=Complete DN (ex: dc=example,dc=com) +LDAPDnSynchroActive=Users and groups synchronization +LDAPDnSynchroActiveExample=LDAP to Dolibarr or Dolibarr to LDAP synchronization +LDAPDnContactActive=Contacts' synchronization +LDAPDnContactActiveExample=Activated/Unactivated synchronization +LDAPDnMemberActive=Members' synchronization +LDAPDnMemberActiveExample=Activated/Unactivated synchronization +LDAPDnMemberTypeActive=Members types' synchronization +LDAPDnMemberTypeActiveExample=Activated/Unactivated synchronization +LDAPContactDn=Dolibarr contacts' DN +LDAPContactDnExample=Complete DN (ex: ou=contacts,dc=example,dc=com) +LDAPMemberDn=Dolibarr members DN +LDAPMemberDnExample=Complete DN (ex: ou=members,dc=example,dc=com) +LDAPMemberObjectClassList=List of objectClass +LDAPMemberObjectClassListExample=List of objectClass defining record attributes (ex: top,inetOrgPerson or top,user for active directory) +LDAPMemberTypeDn=Dolibarr members types DN +LDAPMemberTypepDnExample=Complete DN (ex: ou=memberstypes,dc=example,dc=com) +LDAPMemberTypeObjectClassList=List of objectClass +LDAPMemberTypeObjectClassListExample=List of objectClass defining record attributes (ex: top,groupOfUniqueNames) +LDAPUserObjectClassList=List of objectClass +LDAPUserObjectClassListExample=List of objectClass defining record attributes (ex: top,inetOrgPerson or top,user for active directory) +LDAPGroupObjectClassList=List of objectClass +LDAPGroupObjectClassListExample=List of objectClass defining record attributes (ex: top,groupOfUniqueNames) +LDAPContactObjectClassList=List of objectClass +LDAPContactObjectClassListExample=List of objectClass defining record attributes (ex: top,inetOrgPerson or top,user for active directory) +LDAPTestConnect=Test LDAP connection +LDAPTestSynchroContact=Test contacts synchronization +LDAPTestSynchroUser=Test user synchronization +LDAPTestSynchroGroup=Test group synchronization +LDAPTestSynchroMember=Test member synchronization +LDAPTestSynchroMemberType=Test member type synchronization +LDAPTestSearch= Test a LDAP search +LDAPSynchroOK=Synchronization test successful +LDAPSynchroKO=Failed synchronization test +LDAPSynchroKOMayBePermissions=Failed synchronization test. Check that the connection to the server is correctly configured and allows LDAP updates +LDAPTCPConnectOK=TCP connect to LDAP server successful (Server=%s, Port=%s) +LDAPTCPConnectKO=TCP connect to LDAP server failed (Server=%s, Port=%s) +LDAPBindOK=Connect/Authenticate to LDAP server successful (Server=%s, Port=%s, Admin=%s, Password=%s) +LDAPBindKO=Connect/Authenticate to LDAP server failed (Server=%s, Port=%s, Admin=%s, Password=%s) +LDAPSetupForVersion3=LDAP server configured for version 3 +LDAPSetupForVersion2=LDAP server configured for version 2 +LDAPDolibarrMapping=Dolibarr Mapping +LDAPLdapMapping=LDAP Mapping +LDAPFieldLoginUnix=Login (unix) +LDAPFieldLoginExample=Example: uid +LDAPFilterConnection=Search filter +LDAPFilterConnectionExample=Example: &(objectClass=inetOrgPerson) +LDAPFieldLoginSamba=Login (samba, activedirectory) +LDAPFieldLoginSambaExample=Example: samaccountname +LDAPFieldFullname=Full name +LDAPFieldFullnameExample=Example: cn +LDAPFieldPasswordNotCrypted=Password not encrypted +LDAPFieldPasswordCrypted=Password encrypted +LDAPFieldPasswordExample=Example: userPassword +LDAPFieldCommonNameExample=Example: cn +LDAPFieldName=Name +LDAPFieldNameExample=Example: sn +LDAPFieldFirstName=First name +LDAPFieldFirstNameExample=Example: givenName +LDAPFieldMail=Email address +LDAPFieldMailExample=Example: mail +LDAPFieldPhone=Professional phone number +LDAPFieldPhoneExample=Example: telephonenumber +LDAPFieldHomePhone=Personal phone number +LDAPFieldHomePhoneExample=Example: homephone +LDAPFieldMobile=Cellular phone +LDAPFieldMobileExample=Example: mobile +LDAPFieldFax=Fax number +LDAPFieldFaxExample=Example: facsimiletelephonenumber +LDAPFieldAddress=Street +LDAPFieldAddressExample=Example: street +LDAPFieldZip=Zip +LDAPFieldZipExample=Example: postalcode +LDAPFieldTown=Town +LDAPFieldTownExample=Example: l +LDAPFieldCountry=Country +LDAPFieldDescription=Description +LDAPFieldDescriptionExample=Example: description +LDAPFieldNotePublic=Public Note +LDAPFieldNotePublicExample=Example: publicnote +LDAPFieldGroupMembers= Group members +LDAPFieldGroupMembersExample= Example: uniqueMember +LDAPFieldBirthdate=Birthdate +LDAPFieldCompany=Company +LDAPFieldCompanyExample=Example: o +LDAPFieldSid=SID +LDAPFieldSidExample=Example: objectsid +LDAPFieldEndLastSubscription=Date of subscription end +LDAPFieldTitle=Job position +LDAPFieldTitleExample=Example: title +LDAPFieldGroupid=Group id +LDAPFieldGroupidExample=Exemple : gidnumber +LDAPFieldUserid=User id +LDAPFieldUseridExample=Exemple : uidnumber +LDAPFieldHomedirectory=Home directory +LDAPFieldHomedirectoryExample=Exemple : homedirectory +LDAPFieldHomedirectoryprefix=Home directory prefix +LDAPSetupNotComplete=LDAP setup not complete (go on others tabs) +LDAPNoUserOrPasswordProvidedAccessIsReadOnly=No administrator or password provided. LDAP access will be anonymous and in read only mode. +LDAPDescContact=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr contacts. +LDAPDescUsers=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr users. +LDAPDescGroups=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr groups. +LDAPDescMembers=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr members module. +LDAPDescMembersTypes=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr members types. +LDAPDescValues=Example values are designed for OpenLDAP with following loaded schemas: core.schema, cosine.schema, inetorgperson.schema). If you use thoose values and OpenLDAP, modify your LDAP config file slapd.conf to have all thoose schemas loaded. +ForANonAnonymousAccess=For an authenticated access (for a write access for example) +PerfDolibarr=Performance setup/optimizing report +YouMayFindPerfAdviceHere=This page provides some checks or advice related to performance. +NotInstalled=Not installed, so your server is not slowed down by this. +ApplicativeCache=Applicative cache +MemcachedNotAvailable=No applicative cache found. You can enhance performance by installing a cache server Memcached and a module able to use this cache server.
    More information here http://wiki.dolibarr.org/index.php/Module_MemCached_EN.
    Note that a lot of web hosting provider does not provide such cache server. +MemcachedModuleAvailableButNotSetup=Module memcached for applicative cache found but setup of module is not complete. +MemcachedAvailableAndSetup=Module memcached dedicated to use memcached server is enabled. +OPCodeCache=OPCode cache +NoOPCodeCacheFound=No OPCode cache found. Maybe you are using an OPCode cache other than XCache or eAccelerator (good), or maybe you don't have OPCode cache (very bad). +HTTPCacheStaticResources=HTTP cache for static resources (css, img, javascript) +FilesOfTypeCached=Files of type %s are cached by HTTP server +FilesOfTypeNotCached=Files of type %s are not cached by HTTP server +FilesOfTypeCompressed=Files of type %s are compressed by HTTP server +FilesOfTypeNotCompressed=Files of type %s are not compressed by HTTP server +CacheByServer=Cache by server +CacheByServerDesc=For example using the Apache directive "ExpiresByType image/gif A2592000" +CacheByClient=Cache by browser +CompressionOfResources=Compression of HTTP responses +CompressionOfResourcesDesc=For example using the Apache directive "AddOutputFilterByType DEFLATE" +TestNotPossibleWithCurrentBrowsers=Such an automatic detection is not possible with current browsers +DefaultValuesDesc=Here you may define the default value you wish to use when creating a new record, and/or default filters or the sort order when you list records. +DefaultCreateForm=Default values (to use on forms) +DefaultSearchFilters=Default search filters +DefaultSortOrder=Default sort orders +DefaultFocus=Default focus fields +DefaultMandatory=Mandatory form fields +##### Products ##### +ProductSetup=Products module setup +ServiceSetup=Services module setup +ProductServiceSetup=Products and Services modules setup +NumberOfProductShowInSelect=Maximum number of products to show in combo select lists (0=no limit) +ViewProductDescInFormAbility=Display product descriptions in forms (otherwise shown in a tooltip popup) +MergePropalProductCard=Activate in product/service Attached Files tab an option to merge product PDF document to proposal PDF azur if product/service is in the proposal +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=Default barcode type to use for products +SetDefaultBarcodeTypeThirdParties=Default barcode type to use for third parties +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= Product / Service configuration +IsNotADir=is not a directory! +##### Syslog ##### +SyslogSetup=Logs module setup +SyslogOutput=Logs outputs +SyslogFacility=Facility +SyslogLevel=Level +SyslogFilename=File name and path +YouCanUseDOL_DATA_ROOT=You can use DOL_DATA_ROOT/dolibarr.log for a log file in Dolibarr "documents" directory. You can set a different path to store this file. +ErrorUnknownSyslogConstant=Constant %s is not a known Syslog constant +OnlyWindowsLOG_USER=Windows only supports LOG_USER +CompressSyslogs=Compression and backup of debug log files (generated by module Log for debug) +SyslogFileNumberOfSaves=Log backups +ConfigureCleaningCronjobToSetFrequencyOfSaves=Configure cleaning scheduled job to set log backup frequency +##### Donations ##### +DonationsSetup=Donation module setup +DonationsReceiptModel=Template of donation receipt +##### Barcode ##### +BarcodeSetup=Barcode setup +PaperFormatModule=Print format module +BarcodeEncodeModule=Barcode encoding type +CodeBarGenerator=Barcode generator +ChooseABarCode=No generator defined +FormatNotSupportedByGenerator=Format not supported by this generator +BarcodeDescEAN8=Barcode of type EAN8 +BarcodeDescEAN13=Barcode of type EAN13 +BarcodeDescUPC=Barcode of type UPC +BarcodeDescISBN=Barcode of type ISBN +BarcodeDescC39=Barcode of type C39 +BarcodeDescC128=Barcode of type C128 +BarcodeDescDATAMATRIX=Barcode of type Datamatrix +BarcodeDescQRCODE=Barcode of type QR code +GenbarcodeLocation=Bar code generation command line tool (used by internal engine for some bar code types). Must be compatible with "genbarcode".
    For example: /usr/local/bin/genbarcode +BarcodeInternalEngine=Internal engine +BarCodeNumberManager=Manager to auto define barcode numbers +##### Prelevements ##### +WithdrawalsSetup=Setup of module Direct Debit payments +##### ExternalRSS ##### +ExternalRSSSetup=External RSS imports setup +NewRSS=New RSS Feed +RSSUrl=RSS URL +RSSUrlExample=An interesting RSS feed +##### Mailing ##### +MailingSetup=EMailing module setup +MailingEMailFrom=Sender email (From) for emails sent by emailing module +MailingEMailError=Return Email (Errors-to) for emails with errors +MailingDelay=Seconds to wait after sending next message +##### Notification ##### +NotificationSetup=Email Notification module setup +NotificationEMailFrom=Sender email (From) for emails sent by the Notifications module +FixedEmailTarget=Recipient +##### Sendings ##### +SendingsSetup=Shipping module setup +SendingsReceiptModel=Sending receipt model +SendingsNumberingModules=Sendings numbering modules +SendingsAbility=Support shipping sheets for customer deliveries +NoNeedForDeliveryReceipts=In most cases, shipping sheets are used both as sheets for customer deliveries (list of products to send) and sheets that are received and signed by customer. Hence the product deliveries receipt is a duplicated feature and is rarely activated. +FreeLegalTextOnShippings=Free text on shipments +##### Deliveries ##### +DeliveryOrderNumberingModules=Products deliveries receipt numbering module +DeliveryOrderModel=Products deliveries receipt model +DeliveriesOrderAbility=Support products deliveries receipts +FreeLegalTextOnDeliveryReceipts=Free text on delivery receipts +##### FCKeditor ##### +AdvancedEditor=Advanced editor +ActivateFCKeditor=Activate advanced editor for: +FCKeditorForCompany=WYSIWIG creation/edition of elements description and note (except products/services) +FCKeditorForProduct=WYSIWIG creation/edition of products/services description and note +FCKeditorForProductDetails=WYSIWIG creation/edition of products details lines for all entities (proposals, orders, invoices, etc...). Warning: Using this option for this case is seriously not recommended as it can create problems with special characters and page formatting when building PDF files. +FCKeditorForMailing= WYSIWIG creation/edition for mass eMailings (Tools->eMailing) +FCKeditorForUserSignature=WYSIWIG creation/edition of user signature +FCKeditorForMail=WYSIWIG creation/edition for all mail (except Tools->eMailing) +FCKeditorForTicket=WYSIWIG creation/edition for tickets +##### Stock ##### +StockSetup=Stock module setup +IfYouUsePointOfSaleCheckModule=If you use the Point of Sale module (POS) provided by default or an external module, this setup may be ignored by your POS module. Most POS modules are designed by default to create an invoice immediately and decrease stock irrespective of the options here. So if you need or not to have a stock decrease when registering a sale from your POS, check also your POS module setup. +##### Menu ##### +MenuDeleted=Menu deleted +Menus=Menus +TreeMenuPersonalized=Personalized menus +NotTopTreeMenuPersonalized=Personalized menus not linked to a top menu entry +NewMenu=New menu +Menu=Selection of menu +MenuHandler=Menu handler +MenuModule=Source module +HideUnauthorizedMenu= Hide unauthorized menus (gray) +DetailId=Id menu +DetailMenuHandler=Menu handler where to show new menu +DetailMenuModule=Module name if menu entry come from a module +DetailType=Type of menu (top or left) +DetailTitre=Menu label or label code for translation +DetailUrl=URL where menu send you (Absolute URL link or external link with http://) +DetailEnabled=Condition to show or not entry +DetailRight=Condition to display unauthorized grey menus +DetailLangs=Lang file name for label code translation +DetailUser=Intern / Extern / All +Target=Target +DetailTarget=Target for links (_blank top opens a new window) +DetailLevel=Level (-1:top menu, 0:header menu, >0 menu and sub menu) +ModifMenu=Menu change +DeleteMenu=Delete menu entry +ConfirmDeleteMenu=Are you sure you want to delete menu entry %s? +FailedToInitializeMenu=Failed to initialize menu +##### Tax ##### +TaxSetup=Taxes, social or fiscal taxes and dividends module setup +OptionVatMode=VAT due +OptionVATDefault=Standard basis +OptionVATDebitOption=Accrual basis +OptionVatDefaultDesc=VAT is due:
    - on delivery of goods (based on invoice date)
    - on payments for services +OptionVatDebitOptionDesc=VAT is due:
    - on delivery of goods (based on invoice date)
    - on invoice (debit) for services +OptionPaymentForProductAndServices=Cash basis for products and services +OptionPaymentForProductAndServicesDesc=VAT is due:
    - on payment for goods
    - on payments for services +SummaryOfVatExigibilityUsedByDefault=Time of VAT eligibility by default according to chosen option: +OnDelivery=On delivery +OnPayment=On payment +OnInvoice=On invoice +SupposedToBePaymentDate=Payment date used +SupposedToBeInvoiceDate=Invoice date used +Buy=Buy +Sell=Sell +InvoiceDateUsed=Invoice date used +YourCompanyDoesNotUseVAT=Your company has been defined to not use VAT (Home - Setup - Company/Organization), so there is no VAT options to setup. +AccountancyCode=Accounting Code +AccountancyCodeSell=Sale account. code +AccountancyCodeBuy=Purchase account. code +##### Agenda ##### +AgendaSetup=Events and agenda module setup +PasswordTogetVCalExport=Key to authorize export link +PastDelayVCalExport=Do not export event older than +AGENDA_USE_EVENT_TYPE=Use events types (managed in menu Setup -> Dictionaries -> Type of agenda events) +AGENDA_USE_EVENT_TYPE_DEFAULT=Automatically set this default value for type of event in event create form +AGENDA_DEFAULT_FILTER_TYPE=Automatically set this type of event in search filter of agenda view +AGENDA_DEFAULT_FILTER_STATUS=Automatically set this status for events in search filter of agenda view +AGENDA_DEFAULT_VIEW=Which tab do you want to open by default when selecting menu Agenda +AGENDA_REMINDER_EMAIL=Enable event reminder by emails (remind option/delay can be defined on each event). Note: Module %s must be enabled and correctly setup to have reminder sent at the correct frequency. +AGENDA_REMINDER_BROWSER=Enable event reminder on user's browser (when event date is reached, each user is able to refuse this from the browser confirmation question) +AGENDA_REMINDER_BROWSER_SOUND=Enable sound notification +AGENDA_SHOW_LINKED_OBJECT=Show linked object into agenda view +##### Clicktodial ##### +ClickToDialSetup=Click To Dial module setup +ClickToDialUrlDesc=Url called when a click on phone picto is done. In URL, you can use tags
    __PHONETO__ that will be replaced with the phone number of person to call
    __PHONEFROM__ that will be replaced with phone number of calling person (yours)
    __LOGIN__ that will be replaced with clicktodial login (defined on user card)
    __PASS__ that will be replaced with clicktodial password (defined on user card). +ClickToDialDesc=This module makea phone numbers clickable links. A click on the icon will make your phone call the number. This can be used to call a call-center system from Dolibarr that can call the phone number on a SIP system for example. +ClickToDialUseTelLink=Use just a link "tel:" on phone numbers +ClickToDialUseTelLinkDesc=Use this method if your users have a softphone or a software interface installed on the same computer as the browser, and called when you click on a link in your browser that starts with "tel:". If you need a full server solution (no need of local software installation), you must set this to "No" and fill next field. +##### Point Of Sale (CashDesk) ##### +CashDesk=Point of Sale +CashDeskSetup=Point of Sales module setup +CashDeskThirdPartyForSell=Default generic third party to use for sales +CashDeskBankAccountForSell=Default account to use to receive cash payments +CashDeskBankAccountForCheque=Default account to use to receive payments by check +CashDeskBankAccountForCB=Default account to use to receive payments by credit cards +CashDeskBankAccountForSumup=Default bank account to use to receive payments by SumUp +CashDeskDoNotDecreaseStock=Disable stock decrease when a sale is done from Point of Sale (if "no", stock decrease is done for each sale done from POS, irrespective of the option set in module Stock). +CashDeskIdWareHouse=Force and restrict warehouse to use for stock decrease +StockDecreaseForPointOfSaleDisabled=Stock decrease from Point of Sale disabled +StockDecreaseForPointOfSaleDisabledbyBatch=Stock decrease in POS is not compatible with module Serial/Lot management (currently active) so stock decrease is disabled. +CashDeskYouDidNotDisableStockDecease=You did not disable stock decrease when making a sale from Point of Sale. Hence a warehouse is required. +CashDeskForceDecreaseStockLabel=Stock decrease for batch products was forced. +CashDeskForceDecreaseStockDesc=Decrease first by the oldest eatby and sellby dates. +CashDeskReaderKeyCodeForEnter=Key code for "Enter" defined in barcode reader (Example: 13) +##### Bookmark ##### +BookmarkSetup=Bookmark module setup +BookmarkDesc=This module allows you to manage bookmarks. You can also add shortcuts to any Dolibarr pages or external web sites on your left menu. +NbOfBoomarkToShow=Maximum number of bookmarks to show in left menu +##### WebServices ##### +WebServicesSetup=Webservices module setup +WebServicesDesc=By enabling this module, Dolibarr become a web service server to provide miscellaneous web services. +WSDLCanBeDownloadedHere=WSDL descriptor files of provided services can be download here +EndPointIs=SOAP clients must send their requests to the Dolibarr endpoint available at URL +##### API #### +ApiSetup=API module setup +ApiDesc=By enabling this module, Dolibarr become a REST server to provide miscellaneous web services. +ApiProductionMode=Enable production mode (this will activate use of a cache for services management) +ApiExporerIs=You can explore and test the APIs at URL +OnlyActiveElementsAreExposed=Only elements from enabled modules are exposed +ApiKey=Key for API +WarningAPIExplorerDisabled=The API explorer has been disabled. API explorer is not required to provide API services. It is a tool for developer to find/test REST APIs. If you need this tool, go into setup of module API REST to activate it. +##### Bank ##### +BankSetupModule=Bank module setup +FreeLegalTextOnChequeReceipts=Free text on check receipts +BankOrderShow=Display order of bank accounts for countries using "detailed bank number" +BankOrderGlobal=General +BankOrderGlobalDesc=General display order +BankOrderES=Spanish +BankOrderESDesc=Spanish display order +ChequeReceiptsNumberingModule=Check Receipts Numbering Module +##### Multicompany ##### +MultiCompanySetup=Multi-company module setup +##### Suppliers ##### +SuppliersSetup=Vendor module setup +SuppliersCommandModel=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) +SuppliersInvoiceModel=Complete template of Vendor Invoice +SuppliersInvoiceNumberingModel=Vendor invoices numbering models +IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval +##### GeoIPMaxmind ##### +GeoIPMaxmindSetup=GeoIP Maxmind module setup +PathToGeoIPMaxmindCountryDataFile=Path to file containing Maxmind ip to country translation.
    Examples:
    /usr/local/share/GeoIP/GeoIP.dat
    /usr/share/GeoIP/GeoIP.dat
    /usr/share/GeoIP/GeoLite2-Country.mmdb +NoteOnPathLocation=Note that your ip to country data file must be inside a directory your PHP can read (Check your PHP open_basedir setup and filesystem permissions). +YouCanDownloadFreeDatFileTo=You can download a free demo version of the Maxmind GeoIP country file at %s. +YouCanDownloadAdvancedDatFileTo=You can also download a more complete version, with updates, of the Maxmind GeoIP country file at %s. +TestGeoIPResult=Test of a conversion IP -> country +##### Projects ##### +ProjectsNumberingModules=Projects numbering module +ProjectsSetup=Project module setup +ProjectsModelModule=Project reports document model +TasksNumberingModules=Tasks numbering module +TaskModelModule=Tasks reports document model +UseSearchToSelectProject=Wait until a key is pressed before loading content of Project combo list.
    This may improve performance if you have a large number of projects, but it is less convenient. +##### ECM (GED) ##### +##### Fiscal Year ##### +AccountingPeriods=Accounting periods +AccountingPeriodCard=Accounting period +NewFiscalYear=New accounting period +OpenFiscalYear=Open accounting period +CloseFiscalYear=Close accounting period +DeleteFiscalYear=Delete accounting period +ConfirmDeleteFiscalYear=Are you sure to delete this accounting period? +ShowFiscalYear=Show accounting period +AlwaysEditable=Can always be edited +MAIN_APPLICATION_TITLE=Force visible name of application (warning: setting your own name here may break autofill login feature when using DoliDroid mobile application) +NbMajMin=Minimum number of uppercase characters +NbNumMin=Minimum number of numeric characters +NbSpeMin=Minimum number of special characters +NbIteConsecutive=Maximum number of repeating same characters +NoAmbiCaracAutoGeneration=Do not use ambiguous characters ("1","l","i","|","0","O") for automatic generation +SalariesSetup=Setup of module salaries +SortOrder=Sort order +Format=Format +TypePaymentDesc=0:Customer payment type, 1:Vendor payment type, 2:Both customers and suppliers payment type +IncludePath=Include path (defined into variable %s) +ExpenseReportsSetup=Setup of module Expense Reports +TemplatePDFExpenseReports=Document templates to generate expense report document +ExpenseReportsIkSetup=Setup of module Expense Reports - Milles index +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 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 to the tab "Notifications" of a third party to add or remove notifications for contacts/addresses +Threshold=Threshold +BackupDumpWizard=Wizard to build the database dump file +BackupZipWizard=Wizard to build the archive of documents directory +SomethingMakeInstallFromWebNotPossible=Installation of external module is not possible from the web interface for the following reason: +SomethingMakeInstallFromWebNotPossible2=For this reason, process to upgrade described here is a manual process only a privileged user may perform. +InstallModuleFromWebHasBeenDisabledByFile=Install of external module from application has been disabled by your administrator. You must ask him to remove the file %s to allow this feature. +ConfFileMustContainCustom=Installing or building an external module from application need to save the module files into directory %s. To have this directory processed by Dolibarr, you must setup your conf/conf.php to add the 2 directive lines:
    $dolibarr_main_url_root_alt='/custom';
    $dolibarr_main_document_root_alt='%s/custom'; +HighlightLinesOnMouseHover=Highlight table lines when mouse move passes over +HighlightLinesColor=Highlight color of the line when the mouse passes over (use 'ffffff' for no highlight) +HighlightLinesChecked=Highlight color of the line when it is checked (use 'ffffff' for no highlight) +TextTitleColor=Text color of Page title +LinkColor=Color of links +PressF5AfterChangingThis=Press CTRL+F5 on keyboard or clear your browser cache after changing this value to have it effective +NotSupportedByAllThemes=Will works with core themes, may not be supported by external themes +BackgroundColor=Background color +TopMenuBackgroundColor=Background color for Top menu +TopMenuDisableImages=Hide images in Top menu +LeftMenuBackgroundColor=Background color for Left menu +BackgroundTableTitleColor=Background color for Table title line +BackgroundTableTitleTextColor=Text color for Table title line +BackgroundTableTitleTextlinkColor=Text color for Table title link line +BackgroundTableLineOddColor=Background color for odd table lines +BackgroundTableLineEvenColor=Background color for even table lines +MinimumNoticePeriod=Minimum notice period (Your leave request must be done before this delay) +NbAddedAutomatically=Number of days added to counters of users (automatically) each month +EnterAnyCode=This field contains a reference to identify line. Enter any value of your choice, but without special characters. +Enter0or1=Enter 0 or 1 +UnicodeCurrency=Enter here between braces, list of byte number that represent the currency symbol. For example: for $, enter [36] - for brazil real R$ [82,36] - for €, enter [8364] +ColorFormat=The RGB color is in HEX format, eg: FF0000 +PositionIntoComboList=Position of line into combo lists +SellTaxRate=Sale tax rate +RecuperableOnly=Yes for VAT "Not Perceived but Recoverable" dedicated for some state in France. Keep value to "No" in all other cases. +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=Type of template +TemplateIsVisibleByOwnerOnly=Template is visible to owner only +VisibleEverywhere=Visible everywhere +VisibleNowhere=Visible nowhere +FixTZ=TimeZone fix +FillFixTZOnlyIfRequired=Example: +2 (fill only if problem experienced) +ExpectedChecksum=Expected Checksum +CurrentChecksum=Current Checksum +ExpectedSize=Expected size +CurrentSize=Current size +ForcedConstants=Required constant values +MailToSendProposal=Customer proposals +MailToSendOrder=Sales orders +MailToSendInvoice=Customer invoices +MailToSendShipment=Shipments +MailToSendIntervention=Interventions +MailToSendSupplierRequestForQuotation=Quotation request +MailToSendSupplierOrder=Purchase orders +MailToSendSupplierInvoice=Vendor invoices +MailToSendContract=Contracts +MailToThirdparty=Third parties +MailToMember=Members +MailToUser=Users +MailToProject=Projects page +ByDefaultInList=Show by default on list view +YouUseLastStableVersion=You use the latest stable version +TitleExampleForMajorRelease=Example of message you can use to announce this major release (feel free to use it on your web sites) +TitleExampleForMaintenanceRelease=Example of message you can use to announce this maintenance release (feel free to use it on your web sites) +ExampleOfNewsMessageForMajorRelease=Dolibarr ERP & CRM %s is available. Version %s is a major release with a lot of new features for both users and developers. You can download it from the download area of https://www.dolibarr.org portal (subdirectory Stable versions). You can read ChangeLog for complete list of changes. +ExampleOfNewsMessageForMaintenanceRelease=Dolibarr ERP & CRM %s is available. Version %s is a maintenance version, so contains only bug fixes. We recommend all users to upgrade to this version. A maintenance release does not introduce new features or changes to the database. You may download it from the download area of https://www.dolibarr.org portal (subdirectory Stable versions). You can read the ChangeLog for complete list of changes. +MultiPriceRuleDesc=When option "Several levels of prices per product/service" is enabled, you can define different prices (one per price level) for each product. To save you time, here you may enter a rule to autocalculate a price for each level based on the price of the first level, so you will have to only enter a price for the first level for each product. This page is designed to save you time but is useful only if your prices for each level are relative to first level. You can ignore this page in most cases. +ModelModulesProduct=Templates for product documents +ToGenerateCodeDefineAutomaticRuleFirst=To be able to generate codes automatically, you must first define a manager to auto-define the barcode number. +SeeSubstitutionVars=See * note for list of possible substitution variables +SeeChangeLog=See ChangeLog file (english only) +AllPublishers=All publishers +UnknownPublishers=Unknown publishers +AddRemoveTabs=Add or remove tabs +AddDataTables=Add object tables +AddDictionaries=Add dictionaries tables +AddData=Add objects or dictionaries data +AddBoxes=Add widgets +AddSheduledJobs=Add scheduled jobs +AddHooks=Add hooks +AddTriggers=Add triggers +AddMenus=Add menus +AddPermissions=Add permissions +AddExportProfiles=Add export profiles +AddImportProfiles=Add import profiles +AddOtherPagesOrServices=Add other pages or services +AddModels=Add document or numbering templates +AddSubstitutions=Add keys substitutions +DetectionNotPossible=Detection not possible +UrlToGetKeyToUseAPIs=Url to get token to use API (once token has been received it is saved in database user table and must be provided on each API call) +ListOfAvailableAPIs=List of available APIs +activateModuleDependNotSatisfied=Module "%s" depends on module "%s", that is missing, so module "%1$s" may not work correctly. Please install module "%2$s" or disable module "%1$s" if you want to be safe from any surprise +CommandIsNotInsideAllowedCommands=The command you are trying to run is not in the list of allowed commands defined in parameter $dolibarr_main_restrict_os_commands in the conf.php file. +LandingPage=Landing page +SamePriceAlsoForSharedCompanies=If you use a multicompany module, with the choice "Single price", the price will also be the same for all companies if products are shared between environments +ModuleEnabledAdminMustCheckRights=Module has been activated. Permissions for activated module(s) were given to admin users only. You may need to grant permissions to other users or groups manually if necessary. +UserHasNoPermissions=This user has no permissions defined +TypeCdr=Use "None" if the date of payment term is date of invoice plus a delta in days (delta is field "%s")
    Use "At end of month", if, after delta, the date must be increased to reach the end of month (+ an optional "%s" in days)
    Use "Current/Next" to have payment term date being the first Nth of the month after delta (delta is field "%s", N is stored into field "%s") +BaseCurrency=Reference currency of the company (go into setup of company to change this) +WarningNoteModuleInvoiceForFrenchLaw=This module %s is compliant with French laws (Loi Finance 2016). +WarningNoteModulePOSForFrenchLaw=This module %s is compliant with French laws (Loi Finance 2016) because module Non Reversible Logs is automatically activated. +WarningInstallationMayBecomeNotCompliantWithLaw=You are trying to install module %s that is an external module. Activating an external module means you trust the publisher of that module and that you are sure that this module does not adversely impact the behavior of your application, and is compliant with laws of your country (%s). If the module introduces an illegal feature, you become responsible for the use of illegal software. +MAIN_PDF_MARGIN_LEFT=Left margin on PDF +MAIN_PDF_MARGIN_RIGHT=Right margin on PDF +MAIN_PDF_MARGIN_TOP=Top margin on PDF +MAIN_PDF_MARGIN_BOTTOM=Bottom margin on PDF +NothingToSetup=There is no specific setup required for this module. +SetToYesIfGroupIsComputationOfOtherGroups=Set this to yes if this group is a computation of other groups +EnterCalculationRuleIfPreviousFieldIsYes=Enter calculation rule if previous field was set to Yes (For example 'CODEGRP1+CODEGRP2') +SeveralLangugeVariatFound=Several language variants found +RemoveSpecialChars=Remove special characters +COMPANY_AQUARIUM_CLEAN_REGEX=Regex filter to clean value (COMPANY_AQUARIUM_CLEAN_REGEX) +COMPANY_DIGITARIA_CLEAN_REGEX=Regex filter to clean value (COMPANY_DIGITARIA_CLEAN_REGEX) +COMPANY_DIGITARIA_UNIQUE_CODE=Duplicate not allowed +GDPRContact=Data Protection Officer (DPO, Data Privacy or GDPR contact) +GDPRContactDesc=If you store data about European companies/citizens, you can name the contact who is responsible for the General Data Protection Regulation here +HelpOnTooltip=Help text to show on tooltip +HelpOnTooltipDesc=Put text or a translation key here for the text to show in a tooltip when this field appears in a form +YouCanDeleteFileOnServerWith=You can delete this file on the server with Command Line:
    %s +ChartLoaded=Chart of account loaded +SocialNetworkSetup=Setup of module Social Networks +EnableFeatureFor=Enable features for %s +VATIsUsedIsOff=Note: The option to use Sales Tax or VAT has been set to Off in the menu %s - %s, so Sales tax or Vat used will always be 0 for sales. +SwapSenderAndRecipientOnPDF=Swap sender and recipient address position on PDF documents +FeatureSupportedOnTextFieldsOnly=Warning, feature supported on text fields only. Also an URL parameter action=create or action=edit must be set OR page name must end with 'new.php' to trigger this feature. +EmailCollector=Email collector +EmailCollectorDescription=Add a scheduled job and a setup page to scan regularly email boxes (using IMAP protocol) and record emails received into your application, at the right place and/or create some records automatically (like leads). +NewEmailCollector=New Email Collector +EMailHost=Host of email IMAP server +MailboxSourceDirectory=Mailbox source directory +MailboxTargetDirectory=Mailbox target directory +EmailcollectorOperations=Operations to do by collector +MaxEmailCollectPerCollect=Max number of emails collected per collect +CollectNow=Collect now +ConfirmCloneEmailCollector=Are you sure you want to clone the Email collector %s ? +DateLastCollectResult=Date latest collect tried +DateLastcollectResultOk=Date latest collect successfull +LastResult=Latest result +EmailCollectorConfirmCollectTitle=Email collect confirmation +EmailCollectorConfirmCollect=Do you want to run the collection for this collector now ? +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) +CodeLastResult=Latest result code +NbOfEmailsInInbox=Number of emails in source directory +LoadThirdPartyFromName=Load third party searching on %s (load only) +LoadThirdPartyFromNameOrCreate=Load third party searching on %s (create if not found) +WithDolTrackingID=Dolibarr Reference found in Message ID +WithoutDolTrackingID=Dolibarr Reference not found in Message ID +FormatZip=Zip +MainMenuCode=Menu entry code (mainmenu) +ECMAutoTree=Show automatic ECM tree +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. +OpeningHours=Opening hours +OpeningHoursDesc=Enter here the regular opening hours of your company. +ResourceSetup=Configuration of Resource module +UseSearchToSelectResource=Use a search form to choose a resource (rather than a drop-down list). +DisabledResourceLinkUser=Disable feature to link a resource to users +DisabledResourceLinkContact=Disable feature to link a resource to contacts +EnableResourceUsedInEventCheck=Enable feature to check if a resource is in use in an event +ConfirmUnactivation=Confirm module reset +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. +RootCategoryForProductsToSell=Root category of products to sell +RootCategoryForProductsToSellDesc=If defined, only products inside this category or childs of this category will be available in the Point Of Sale +DebugBar=Debug Bar +DebugBarDesc=Toolbar that comes with a plenty of tools to simplify debugging +DebugBarSetup=DebugBar Setup +GeneralOptions=General Options +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 +ModuleActivated=Module %s is activated and slows the interface +EXPORTS_SHARE_MODELS=Export models are share with everybody +ExportSetup=Setup of module Export +ImportSetup=Setup of module Import +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/. +EmailCollectorTargetDir=It may be a desired behaviour to move the email into another tag/directory when it was processed successfully. Just set a value here to use this feature. Note that you must also use a read/write login account. +EmailCollectorLoadThirdPartyHelp=You can use this action to use the email content to find and load an existing thirdparty in your database. The found (or created) thirdparty will be used for following actions that need it. In the parameter field you can use for example 'EXTRACT:BODY:Name:\\s([^\\s]*)' if you want to extract the name of the thirdparty from a string 'Name: name to find' found into the body. +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 +RESTRICT_ON_IP=Allow access to some host IP only (wildcard not allowed, use space between values). Empty means every hosts can access. +IPListExample=127.0.0.1 192.168.0.2 [::1] +BaseOnSabeDavVersion=Based on the library SabreDAV version +NotAPublicIp=Not a public IP +MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server (done 1 time only after installation) to allow the foundation to count the number of Dolibarr installation. +FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled +EmailTemplate=Template for email +EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/hi_IN/agenda.lang b/htdocs/langs/hi_IN/agenda.lang new file mode 100644 index 00000000000..2031241d2c9 --- /dev/null +++ b/htdocs/langs/hi_IN/agenda.lang @@ -0,0 +1,154 @@ +# Dolibarr language file - Source file is en_US - agenda +IdAgenda=ID event +Actions=Events +Agenda=Agenda +TMenuAgenda=Agenda +Agendas=Agendas +LocalAgenda=Internal calendar +ActionsOwnedBy=Event owned by +ActionsOwnedByShort=Owner +AffectedTo=Assigned to +Event=Event +Events=Events +EventsNb=Number of events +ListOfActions=List of events +EventReports=Event reports +Location=Location +ToUserOfGroup=To any user in group +EventOnFullDay=Event on all day(s) +MenuToDoActions=All incomplete events +MenuDoneActions=All terminated events +MenuToDoMyActions=My incomplete events +MenuDoneMyActions=My terminated events +ListOfEvents=List of events (internal calendar) +ActionsAskedBy=Events reported by +ActionsToDoBy=Events assigned to +ActionsDoneBy=Events done by +ActionAssignedTo=Event assigned to +ViewCal=Month view +ViewDay=Day view +ViewWeek=Week view +ViewPerUser=Per user view +ViewPerType=Per type view +AutoActions= Automatic filling +AgendaAutoActionDesc= Here you may define events which you want Dolibarr to create automatically in Agenda. If nothing is checked, only manual actions will be included in logs and displayed in Agenda. Automatic tracking of business actions done on objects (validation, status change) will not be saved. +AgendaSetupOtherDesc= This page provides options to allow the export of your Dolibarr events into an external calendar (Thunderbird, Google Calendar etc...) +AgendaExtSitesDesc=This page allows to declare external sources of calendars to see their events into Dolibarr agenda. +ActionsEvents=Events for which Dolibarr will create an action in agenda automatically +EventRemindersByEmailNotEnabled=Event reminders by email was not enabled into %s module setup. +##### Agenda event labels ##### +NewCompanyToDolibarr=Third party %s created +COMPANY_DELETEInDolibarr=Third party %s deleted +ContractValidatedInDolibarr=Contract %s validated +CONTRACT_DELETEInDolibarr=Contract %s deleted +PropalClosedSignedInDolibarr=Proposal %s signed +PropalClosedRefusedInDolibarr=Proposal %s refused +PropalValidatedInDolibarr=Proposal %s validated +PropalClassifiedBilledInDolibarr=Proposal %s classified billed +InvoiceValidatedInDolibarr=Invoice %s validated +InvoiceValidatedInDolibarrFromPos=Invoice %s validated from POS +InvoiceBackToDraftInDolibarr=Invoice %s go back to draft status +InvoiceDeleteDolibarr=Invoice %s deleted +InvoicePaidInDolibarr=Invoice %s changed to paid +InvoiceCanceledInDolibarr=Invoice %s canceled +MemberValidatedInDolibarr=Member %s validated +MemberModifiedInDolibarr=Member %s modified +MemberResiliatedInDolibarr=Member %s terminated +MemberDeletedInDolibarr=Member %s deleted +MemberSubscriptionAddedInDolibarr=Subscription %s for member %s added +MemberSubscriptionModifiedInDolibarr=Subscription %s for member %s modified +MemberSubscriptionDeletedInDolibarr=Subscription %s for member %s deleted +ShipmentValidatedInDolibarr=Shipment %s validated +ShipmentClassifyClosedInDolibarr=Shipment %s classified billed +ShipmentUnClassifyCloseddInDolibarr=Shipment %s classified re-open +ShipmentBackToDraftInDolibarr=Shipment %s go back to draft status +ShipmentDeletedInDolibarr=Shipment %s deleted +OrderCreatedInDolibarr=Order %s created +OrderValidatedInDolibarr=Order %s validated +OrderDeliveredInDolibarr=Order %s classified delivered +OrderCanceledInDolibarr=Order %s canceled +OrderBilledInDolibarr=Order %s classified billed +OrderApprovedInDolibarr=Order %s approved +OrderRefusedInDolibarr=Order %s refused +OrderBackToDraftInDolibarr=Order %s go back to draft status +ProposalSentByEMail=Commercial proposal %s sent by email +ContractSentByEMail=Contract %s sent by email +OrderSentByEMail=Sales order %s sent by email +InvoiceSentByEMail=Customer invoice %s sent by email +SupplierOrderSentByEMail=Purchase order %s sent by email +ORDER_SUPPLIER_DELETEInDolibarr=Purchase order %s deleted +SupplierInvoiceSentByEMail=Vendor invoice %s sent by email +ShippingSentByEMail=Shipment %s sent by email +ShippingValidated= Shipment %s validated +InterventionSentByEMail=Intervention %s sent by email +ProposalDeleted=Proposal deleted +OrderDeleted=Order deleted +InvoiceDeleted=Invoice deleted +DraftInvoiceDeleted=Draft invoice deleted +PRODUCT_CREATEInDolibarr=Product %s created +PRODUCT_MODIFYInDolibarr=Product %s modified +PRODUCT_DELETEInDolibarr=Product %s deleted +HOLIDAY_CREATEInDolibarr=Request for leave %s created +HOLIDAY_MODIFYInDolibarr=Request for leave %s modified +HOLIDAY_APPROVEInDolibarr=Request for leave %s approved +HOLIDAY_VALIDATEInDolibarr=Request for leave %s validated +HOLIDAY_DELETEInDolibarr=Request for leave %s deleted +EXPENSE_REPORT_CREATEInDolibarr=Expense report %s created +EXPENSE_REPORT_VALIDATEInDolibarr=Expense report %s validated +EXPENSE_REPORT_APPROVEInDolibarr=Expense report %s approved +EXPENSE_REPORT_DELETEInDolibarr=Expense report %s deleted +EXPENSE_REPORT_REFUSEDInDolibarr=Expense report %s refused +PROJECT_CREATEInDolibarr=Project %s created +PROJECT_MODIFYInDolibarr=Project %s modified +PROJECT_DELETEInDolibarr=Project %s deleted +TICKET_CREATEInDolibarr=Ticket %s created +TICKET_MODIFYInDolibarr=Ticket %s modified +TICKET_ASSIGNEDInDolibarr=Ticket %s assigned +TICKET_CLOSEInDolibarr=Ticket %s closed +TICKET_DELETEInDolibarr=Ticket %s deleted +BOM_VALIDATEInDolibarr=BOM validated +BOM_UNVALIDATEInDolibarr=BOM unvalidated +BOM_CLOSEInDolibarr=BOM disabled +BOM_REOPENInDolibarr=BOM reopen +BOM_DELETEInDolibarr=BOM deleted +MRP_MO_VALIDATEInDolibarr=MO validated +MRP_MO_PRODUCEDInDolibarr=MO produced +MRP_MO_DELETEInDolibarr=MO deleted +##### End agenda events ##### +AgendaModelModule=Document templates for event +DateActionStart=Start date +DateActionEnd=End date +AgendaUrlOptions1=You can also add following parameters to filter output: +AgendaUrlOptions3=logina=%s to restrict output to actions owned by a user %s. +AgendaUrlOptionsNotAdmin=logina=!%s to restrict output to actions not owned by user %s. +AgendaUrlOptions4=logint=%s to restrict output to actions assigned to user %s (owner and others). +AgendaUrlOptionsProject=project=__PROJECT_ID__ to restrict output to actions linked to project __PROJECT_ID__. +AgendaUrlOptionsNotAutoEvent=notactiontype=systemauto to exclude automatic events. +AgendaUrlOptionsIncludeHolidays=includeholidays=1 to include events of holidays. +AgendaShowBirthdayEvents=Show birthdays of contacts +AgendaHideBirthdayEvents=Hide birthdays of contacts +Busy=Busy +ExportDataset_event1=List of agenda events +DefaultWorkingDays=Default working days range in week (Example: 1-5, 1-6) +DefaultWorkingHours=Default working hours in day (Example: 9-18) +# External Sites ical +ExportCal=Export calendar +ExtSites=Import external calendars +ExtSitesEnableThisTool=Show external calendars (defined in global setup) in Agenda. Does not affect external calendars defined by users. +ExtSitesNbOfAgenda=Number of calendars +AgendaExtNb=Calendar no. %s +ExtSiteUrlAgenda=URL to access .ical file +ExtSiteNoLabel=No Description +VisibleTimeRange=Visible time range +VisibleDaysRange=Visible days range +AddEvent=Create event +MyAvailability=My availability +ActionType=Event type +DateActionBegin=Start event date +ConfirmCloneEvent=Are you sure you want to clone the event %s? +RepeatEvent=Repeat event +EveryWeek=Every week +EveryMonth=Every month +DayOfMonth=Day of month +DayOfWeek=Day of week +DateStartPlusOne=Date start + 1 hour diff --git a/htdocs/langs/hi_IN/assets.lang b/htdocs/langs/hi_IN/assets.lang new file mode 100644 index 00000000000..ef04723c6c2 --- /dev/null +++ b/htdocs/langs/hi_IN/assets.lang @@ -0,0 +1,65 @@ +# Copyright (C) 2018 Alexandre Spangaro +# +# 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 . + +# +# Generic +# +Assets = Assets +NewAsset = New asset +AccountancyCodeAsset = Accounting code (asset) +AccountancyCodeDepreciationAsset = Accounting code (depreciation asset account) +AccountancyCodeDepreciationExpense = Accounting code (depreciation expense account) +NewAssetType=New asset type +AssetsTypeSetup=Asset type setup +AssetTypeModified=Asset type modified +AssetType=Asset type +AssetsLines=Assets +DeleteType=Delete +DeleteAnAssetType=Delete an asset type +ConfirmDeleteAssetType=Are you sure you want to delete this asset type? +ShowTypeCard=Show type '%s' + +# Module label 'ModuleAssetsName' +ModuleAssetsName = Assets +# Module description 'ModuleAssetsDesc' +ModuleAssetsDesc = Assets description + +# +# Admin page +# +AssetsSetup = Assets setup +Settings = Settings +AssetsSetupPage = Assets setup page +ExtraFieldsAssetsType = Complementary attributes (Asset type) +AssetsType=Asset type +AssetsTypeId=Asset type id +AssetsTypeLabel=Asset type label +AssetsTypes=Assets types + +# +# Menu +# +MenuAssets = Assets +MenuNewAsset = New asset +MenuTypeAssets = Type assets +MenuListAssets = List +MenuNewTypeAssets = New +MenuListTypeAssets = List + +# +# Module +# +NewAssetType=New asset type +NewAsset=New asset diff --git a/htdocs/langs/hi_IN/banks.lang b/htdocs/langs/hi_IN/banks.lang new file mode 100644 index 00000000000..e54239e9fb2 --- /dev/null +++ b/htdocs/langs/hi_IN/banks.lang @@ -0,0 +1,175 @@ +# Dolibarr language file - Source file is en_US - banks +Bank=Bank +MenuBankCash=Banks | Cash +MenuVariousPayment=Miscellaneous payments +MenuNewVariousPayment=New Miscellaneous payment +BankName=Bank name +FinancialAccount=Account +BankAccount=Bank account +BankAccounts=Bank accounts +BankAccountsAndGateways=Bank accounts | Gateways +ShowAccount=Show Account +AccountRef=Financial account ref +AccountLabel=Financial account label +CashAccount=Cash account +CashAccounts=Cash accounts +CurrentAccounts=Current accounts +SavingAccounts=Savings accounts +ErrorBankLabelAlreadyExists=Financial account label already exists +BankBalance=Balance +BankBalanceBefore=Balance before +BankBalanceAfter=Balance after +BalanceMinimalAllowed=Minimum allowed balance +BalanceMinimalDesired=Minimum desired balance +InitialBankBalance=Initial balance +EndBankBalance=End balance +CurrentBalance=Current balance +FutureBalance=Future balance +ShowAllTimeBalance=Show balance from start +AllTime=From start +Reconciliation=Reconciliation +RIB=Bank Account Number +IBAN=IBAN number +BIC=BIC/SWIFT code +SwiftValid=BIC/SWIFT valid +SwiftVNotalid=BIC/SWIFT not valid +IbanValid=BAN valid +IbanNotValid=BAN not valid +StandingOrders=Direct Debit orders +StandingOrder=Direct debit order +AccountStatement=Account statement +AccountStatementShort=Statement +AccountStatements=Account statements +LastAccountStatements=Last account statements +IOMonthlyReporting=Monthly reporting +BankAccountDomiciliation=Bank address +BankAccountCountry=Account country +BankAccountOwner=Account owner name +BankAccountOwnerAddress=Account owner address +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=Create account +NewBankAccount=New account +NewFinancialAccount=New financial account +MenuNewFinancialAccount=New financial account +EditFinancialAccount=Edit account +LabelBankCashAccount=Bank or cash label +AccountType=Account type +BankType0=Savings account +BankType1=Current or credit card account +BankType2=Cash account +AccountsArea=Accounts area +AccountCard=Account card +DeleteAccount=Delete account +ConfirmDeleteAccount=Are you sure you want to delete this account? +Account=Account +BankTransactionByCategories=Bank entries by categories +BankTransactionForCategory=Bank entries for category %s +RemoveFromRubrique=Remove link with category +RemoveFromRubriqueConfirm=Are you sure you want to remove link between the entry and the category? +ListBankTransactions=List of bank entries +IdTransaction=Transaction ID +BankTransactions=Bank entries +BankTransaction=Bank entry +ListTransactions=List entries +ListTransactionsByCategory=List entries/category +TransactionsToConciliate=Entries to reconcile +TransactionsToConciliateShort=To reconcile +Conciliable=Can be reconciled +Conciliate=Reconcile +Conciliation=Reconciliation +SaveStatementOnly=Save statement only +ReconciliationLate=Reconciliation late +IncludeClosedAccount=Include closed accounts +OnlyOpenedAccount=Only open accounts +AccountToCredit=Account to credit +AccountToDebit=Account to debit +DisableConciliation=Disable reconciliation feature for this account +ConciliationDisabled=Reconciliation feature disabled +LinkedToAConciliatedTransaction=Linked to a conciliated entry +StatusAccountOpened=Open +StatusAccountClosed=Closed +AccountIdShort=Number +LineRecord=Transaction +AddBankRecord=Add entry +AddBankRecordLong=Add entry manually +Conciliated=Reconciled +ConciliatedBy=Reconciled by +DateConciliating=Reconcile date +BankLineConciliated=Entry reconciled with bank receipt +Reconciled=Reconciled +NotReconciled=Not reconciled +CustomerInvoicePayment=Customer payment +SupplierInvoicePayment=Vendor payment +SubscriptionPayment=Subscription payment +WithdrawalPayment=Debit payment order +SocialContributionPayment=Social/fiscal tax payment +BankTransfer=Bank transfer +BankTransfers=Bank transfers +MenuBankInternalTransfer=Internal transfer +TransferDesc=Transfer from one account to another, Dolibarr will write two records (a debit in source account and a credit in target account). The same amount (except sign), label and date will be used for this transaction) +TransferFrom=From +TransferTo=To +TransferFromToDone=A transfer from %s to %s of %s %s has been recorded. +CheckTransmitter=Transmitter +ValidateCheckReceipt=Validate this check receipt? +ConfirmValidateCheckReceipt=Are you sure you want to validate this check receipt, no change will be possible once this is done? +DeleteCheckReceipt=Delete this check receipt? +ConfirmDeleteCheckReceipt=Are you sure you want to delete this check receipt? +BankChecks=Bank checks +BankChecksToReceipt=Checks awaiting deposit +BankChecksToReceiptShort=Checks awaiting deposit +ShowCheckReceipt=Show check deposit receipt +NumberOfCheques=No. of check +DeleteTransaction=Delete entry +ConfirmDeleteTransaction=Are you sure you want to delete this entry? +ThisWillAlsoDeleteBankRecord=This will also delete generated bank entry +BankMovements=Movements +PlannedTransactions=Planned entries +Graph=Graphics +ExportDataset_banque_1=Bank entries and account statement +ExportDataset_banque_2=Deposit slip +TransactionOnTheOtherAccount=Transaction on the other account +PaymentNumberUpdateSucceeded=Payment number updated successfully +PaymentNumberUpdateFailed=Payment number could not be updated +PaymentDateUpdateSucceeded=Payment date updated successfully +PaymentDateUpdateFailed=Payment date could not be updated +Transactions=Transactions +BankTransactionLine=Bank entry +AllAccounts=All bank and cash accounts +BackToAccount=Back to account +ShowAllAccounts=Show for all accounts +FutureTransaction=Future transaction. Unable to reconcile. +SelectChequeTransactionAndGenerate=Select/filter checks to include in the check deposit receipt and click on "Create". +InputReceiptNumber=Choose the bank statement related with the conciliation. Use a sortable numeric value: YYYYMM or YYYYMMDD +EventualyAddCategory=Eventually, specify a category in which to classify the records +ToConciliate=To reconcile? +ThenCheckLinesAndConciliate=Then, check the lines present in the bank statement and click +DefaultRIB=Default BAN +AllRIB=All BAN +LabelRIB=BAN Label +NoBANRecord=No BAN record +DeleteARib=Delete BAN record +ConfirmDeleteRib=Are you sure you want to delete this BAN record? +RejectCheck=Check returned +ConfirmRejectCheck=Are you sure you want to mark this check as rejected? +RejectCheckDate=Date the check was returned +CheckRejected=Check returned +CheckRejectedAndInvoicesReopened=Check returned and invoices re-open +BankAccountModelModule=Document templates for bank accounts +DocumentModelSepaMandate=Template of SEPA mandate. Useful for European countries in EEC only. +DocumentModelBan=Template to print a page with BAN information. +NewVariousPayment=New miscellaneous payment +VariousPayment=Miscellaneous payment +VariousPayments=Miscellaneous payments +ShowVariousPayment=Show miscellaneous payment +AddVariousPayment=Add miscellaneous payment +SEPAMandate=SEPA mandate +YourSEPAMandate=Your SEPA mandate +FindYourSEPAMandate=This is your SEPA mandate to authorize our company to make direct debit order to your bank. Return it signed (scan of the signed document) or send it by mail to +AutoReportLastAccountStatement=Automatically fill the field 'number of bank statement' with last statement number when making reconciliation +CashControl=POS cash fence +NewCashFence=New cash fence +BankColorizeMovement=Colorize movements +BankColorizeMovementDesc=If this function is enable, you can choose specific background color for debit or credit movements +BankColorizeMovementName1=Background color for debit movement +BankColorizeMovementName2=Background color for credit movement diff --git a/htdocs/langs/hi_IN/bills.lang b/htdocs/langs/hi_IN/bills.lang new file mode 100644 index 00000000000..9f11d8ecf87 --- /dev/null +++ b/htdocs/langs/hi_IN/bills.lang @@ -0,0 +1,574 @@ +# Dolibarr language file - Source file is en_US - bills +Bill=Invoice +Bills=Invoices +BillsCustomers=Customer invoices +BillsCustomer=Customer invoice +BillsSuppliers=Vendor invoices +BillsCustomersUnpaid=Unpaid customer invoices +BillsCustomersUnpaidForCompany=Unpaid customer invoices for %s +BillsSuppliersUnpaid=Unpaid vendor invoices +BillsSuppliersUnpaidForCompany=Unpaid vendors invoices for %s +BillsLate=Late payments +BillsStatistics=Customers invoices statistics +BillsStatisticsSuppliers=Vendors invoices statistics +DisabledBecauseDispatchedInBookkeeping=Disabled because invoice was dispatched into bookkeeping +DisabledBecauseNotLastInvoice=Disabled because invoice is not erasable. Some invoices were recorded after this one and it will create holes in the counter. +DisabledBecauseNotErasable=Disabled because cannot be erased +InvoiceStandard=Standard invoice +InvoiceStandardAsk=Standard invoice +InvoiceStandardDesc=This kind of invoice is the common invoice. +InvoiceDeposit=Down payment invoice +InvoiceDepositAsk=Down payment invoice +InvoiceDepositDesc=This kind of invoice is done when a down payment has been received. +InvoiceProForma=Proforma invoice +InvoiceProFormaAsk=Proforma invoice +InvoiceProFormaDesc=Proforma invoice is an image of a true invoice but has no accountancy value. +InvoiceReplacement=Replacement invoice +InvoiceReplacementAsk=Replacement invoice for invoice +InvoiceReplacementDesc=Replacement invoice is used to completely replace an invoice with no payment already received.

    Note: Only invoices with no payment on it can be replaced. If the invoice you replace is not yet closed, it will be automatically closed to 'abandoned'. +InvoiceAvoir=Credit note +InvoiceAvoirAsk=Credit note to correct invoice +InvoiceAvoirDesc=The credit note is a negative invoice used to correct the fact that an invoice shows an amount that differs from the amount actually paid (eg the customer paid too much by mistake, or will not pay the complete amount since some products were returned). +invoiceAvoirWithLines=Create Credit Note with lines from the origin invoice +invoiceAvoirWithPaymentRestAmount=Create Credit Note with remaining unpaid of origin invoice +invoiceAvoirLineWithPaymentRestAmount=Credit Note for remaining unpaid amount +ReplaceInvoice=Replace invoice %s +ReplacementInvoice=Replacement invoice +ReplacedByInvoice=Replaced by invoice %s +ReplacementByInvoice=Replaced by invoice +CorrectInvoice=Correct invoice %s +CorrectionInvoice=Correction invoice +UsedByInvoice=Used to pay invoice %s +ConsumedBy=Consumed by +NotConsumed=Not consumed +NoReplacableInvoice=No replaceable invoices +NoInvoiceToCorrect=No invoice to correct +InvoiceHasAvoir=Was source of one or several credit notes +CardBill=Invoice card +PredefinedInvoices=Predefined Invoices +Invoice=Invoice +PdfInvoiceTitle=Invoice +Invoices=Invoices +InvoiceLine=Invoice line +InvoiceCustomer=Customer invoice +CustomerInvoice=Customer invoice +CustomersInvoices=Customers invoices +SupplierInvoice=Vendor invoice +SuppliersInvoices=Vendors invoices +SupplierBill=Vendor invoice +SupplierBills=suppliers invoices +Payment=Payment +PaymentBack=Refund +CustomerInvoicePaymentBack=Refund +Payments=Payments +PaymentsBack=Refunds +paymentInInvoiceCurrency=in invoices currency +PaidBack=Paid back +DeletePayment=Delete payment +ConfirmDeletePayment=Are you sure you want to delete this payment? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? +ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? +ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. +SupplierPayments=Vendor payments +ReceivedPayments=Received payments +ReceivedCustomersPayments=Payments received from customers +PayedSuppliersPayments=Payments paid to vendors +ReceivedCustomersPaymentsToValid=Received customers payments to validate +PaymentsReportsForYear=Payments reports for %s +PaymentsReports=Payments reports +PaymentsAlreadyDone=Payments already done +PaymentsBackAlreadyDone=Refunds already done +PaymentRule=Payment rule +PaymentMode=Payment Type +PaymentTypeDC=Debit/Credit Card +PaymentTypePP=PayPal +IdPaymentMode=Payment Type (id) +CodePaymentMode=Payment Type (code) +LabelPaymentMode=Payment Type (label) +PaymentModeShort=Payment Type +PaymentTerm=Payment Term +PaymentConditions=Payment Terms +PaymentConditionsShort=Payment Terms +PaymentAmount=Payment amount +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' +ClassifyUnBilled=Classify 'Unbilled' +CreateBill=Create Invoice +CreateCreditNote=Create credit note +AddBill=Create invoice or credit note +AddToDraftInvoices=Add to draft invoice +DeleteBill=Delete invoice +SearchACustomerInvoice=Search for a customer invoice +SearchASupplierInvoice=Search for a vendor invoice +CancelBill=Cancel an invoice +SendRemindByMail=Send reminder by email +DoPayment=Enter payment +DoPaymentBack=Enter refund +ConvertToReduc=Mark as credit available +ConvertExcessReceivedToReduc=Convert excess received into available credit +ConvertExcessPaidToReduc=Convert excess paid into available discount +EnterPaymentReceivedFromCustomer=Enter payment received from customer +EnterPaymentDueToCustomer=Make payment due to customer +DisabledBecauseRemainderToPayIsZero=Disabled because remaining unpaid is zero +PriceBase=Price base +BillStatus=Invoice status +StatusOfGeneratedInvoices=Status of generated invoices +BillStatusDraft=Draft (needs to be validated) +BillStatusPaid=Paid +BillStatusPaidBackOrConverted=Credit note refund or marked as credit available +BillStatusConverted=Paid (ready for consumption in final invoice) +BillStatusCanceled=Abandoned +BillStatusValidated=Validated (needs to be paid) +BillStatusStarted=Started +BillStatusNotPaid=Not paid +BillStatusNotRefunded=Not refunded +BillStatusClosedUnpaid=Closed (unpaid) +BillStatusClosedPaidPartially=Paid (partially) +BillShortStatusDraft=Draft +BillShortStatusPaid=Paid +BillShortStatusPaidBackOrConverted=Refunded or converted +Refunded=Refunded +BillShortStatusConverted=Paid +BillShortStatusCanceled=Abandoned +BillShortStatusValidated=Validated +BillShortStatusStarted=Started +BillShortStatusNotPaid=Not paid +BillShortStatusNotRefunded=Not refunded +BillShortStatusClosedUnpaid=Closed +BillShortStatusClosedPaidPartially=Paid (partially) +PaymentStatusToValidShort=To validate +ErrorVATIntraNotConfigured=Intra-Community VAT number not yet defined +ErrorNoPaiementModeConfigured=No default payment type defined. Go to Invoice module setup to fix this. +ErrorCreateBankAccount=Create a bank account, then go to Setup panel of Invoice module to define payment types +ErrorBillNotFound=Invoice %s does not exist +ErrorInvoiceAlreadyReplaced=Error, you tried to validate an invoice to replace invoice %s. But this one has already been replaced by invoice %s. +ErrorDiscountAlreadyUsed=Error, discount already used +ErrorInvoiceAvoirMustBeNegative=Error, correct invoice must have a negative amount +ErrorInvoiceOfThisTypeMustBePositive=Error, this type of invoice must have an amount excluding tax positive (or null) +ErrorCantCancelIfReplacementInvoiceNotValidated=Error, can't cancel an invoice that has been replaced by another invoice that is still in draft status +ErrorThisPartOrAnotherIsAlreadyUsedSoDiscountSerieCantBeRemoved=This part or another is already used so discount series cannot be removed. +BillFrom=From +BillTo=To +ActionsOnBill=Actions on invoice +RecurringInvoiceTemplate=Template / Recurring invoice +NoQualifiedRecurringInvoiceTemplateFound=No recurring template invoice qualified for generation. +FoundXQualifiedRecurringInvoiceTemplate=Found %s recurring template invoice(s) qualified for generation. +NotARecurringInvoiceTemplate=Not a recurring template invoice +NewBill=New invoice +LastBills=Latest %s invoices +LatestTemplateInvoices=Latest %s template invoices +LatestCustomerTemplateInvoices=Latest %s customer template invoices +LatestSupplierTemplateInvoices=Latest %s vendor template invoices +LastCustomersBills=Latest %s customer invoices +LastSuppliersBills=Latest %s vendor invoices +AllBills=All invoices +AllCustomerTemplateInvoices=All template invoices +OtherBills=Other invoices +DraftBills=Draft invoices +CustomersDraftInvoices=Customer draft invoices +SuppliersDraftInvoices=Vendor draft invoices +Unpaid=Unpaid +ErrorNoPaymentDefined=Error No payment defined +ConfirmDeleteBill=Are you sure you want to delete this invoice? +ConfirmValidateBill=Are you sure you want to validate this invoice with reference %s? +ConfirmUnvalidateBill=Are you sure you want to change invoice %s to draft status? +ConfirmClassifyPaidBill=Are you sure you want to change invoice %s to status paid? +ConfirmCancelBill=Are you sure you want to cancel invoice %s? +ConfirmCancelBillQuestion=Why do you want to classify this invoice 'abandoned'? +ConfirmClassifyPaidPartially=Are you sure you want to change invoice %s to status paid? +ConfirmClassifyPaidPartiallyQuestion=This invoice has not been paid completely. What is the reason for closing this invoice? +ConfirmClassifyPaidPartiallyReasonAvoir=Remaining unpaid (%s %s) is a discount granted because payment was made before term. I regularize the VAT with a credit note. +ConfirmClassifyPaidPartiallyReasonDiscount=Remaining unpaid (%s %s) is a discount granted because payment was made before term. +ConfirmClassifyPaidPartiallyReasonDiscountNoVat=Remaining unpaid (%s %s) is a discount granted because payment was made before term. I accept to lose the VAT on this discount. +ConfirmClassifyPaidPartiallyReasonDiscountVat=Remaining unpaid (%s %s) is a discount granted because payment was made before term. I recover the VAT on this discount without a credit note. +ConfirmClassifyPaidPartiallyReasonBadCustomer=Bad customer +ConfirmClassifyPaidPartiallyReasonProductReturned=Products partially returned +ConfirmClassifyPaidPartiallyReasonOther=Amount abandoned for other reason +ConfirmClassifyPaidPartiallyReasonDiscountNoVatDesc=This choice is possible if your invoice has been provided with suitable comments. (Example «Only the tax corresponding to the price that has been actually paid gives rights to deduction») +ConfirmClassifyPaidPartiallyReasonDiscountVatDesc=In some countries, this choice might be possible only if your invoice contains correct notes. +ConfirmClassifyPaidPartiallyReasonAvoirDesc=Use this choice if all other does not suit +ConfirmClassifyPaidPartiallyReasonBadCustomerDesc=A bad customer is a customer that refuses to pay his debt. +ConfirmClassifyPaidPartiallyReasonProductReturnedDesc=This choice is used when payment is not complete because some of products were returned +ConfirmClassifyPaidPartiallyReasonOtherDesc=Use this choice if all others are not suitable, for example in following situation:
    - payment not complete because some products were shipped back
    - amount claimed too important because a discount was forgotten
    In all cases, amount over-claimed must be corrected in accountancy system by creating a credit note. +ConfirmClassifyAbandonReasonOther=Other +ConfirmClassifyAbandonReasonOtherDesc=This choice will be used in all other cases. For example because you plan to create a replacing invoice. +ConfirmCustomerPayment=Do you confirm this payment input for %s %s? +ConfirmSupplierPayment=Do you confirm this payment input for %s %s? +ConfirmValidatePayment=Are you sure you want to validate this payment? No change can be made once payment is validated. +ValidateBill=Validate invoice +UnvalidateBill=Unvalidate invoice +NumberOfBills=No. of invoices +NumberOfBillsByMonth=No. of invoices per month +AmountOfBills=Amount of invoices +AmountOfBillsHT=Amount of invoices (net of tax) +AmountOfBillsByMonthHT=Amount of invoices by month (net of tax) +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices +RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation +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 +AlreadyPaid=Already paid +AlreadyPaidBack=Already paid back +AlreadyPaidNoCreditNotesNoDeposits=Already paid (without credit notes and down payments) +Abandoned=Abandoned +RemainderToPay=Remaining unpaid +RemainderToTake=Remaining amount to take +RemainderToPayBack=Remaining amount to refund +Rest=Pending +AmountExpected=Amount claimed +ExcessReceived=Excess received +ExcessPaid=Excess paid +EscompteOffered=Discount offered (payment before term) +EscompteOfferedShort=Discount +SendBillRef=Submission of invoice %s +SendReminderBillRef=Submission of invoice %s (reminder) +StandingOrders=Direct debit orders +StandingOrder=Direct debit order +NoDraftBills=No draft invoices +NoOtherDraftBills=No other draft invoices +NoDraftInvoices=No draft invoices +RefBill=Invoice ref +ToBill=To bill +RemainderToBill=Remainder to bill +SendBillByMail=Send invoice by email +SendReminderBillByMail=Send reminder by email +RelatedCommercialProposals=Related commercial proposals +RelatedRecurringCustomerInvoices=Related recurring customer invoices +MenuToValid=To valid +DateMaxPayment=Payment due on +DateInvoice=Invoice date +DatePointOfTax=Point of tax +NoInvoice=No invoice +ClassifyBill=Classify invoice +SupplierBillsToPay=Unpaid vendor invoices +CustomerBillsUnpaid=Unpaid customer invoices +NonPercuRecuperable=Non-recoverable +SetConditions=Set Payment Terms +SetMode=Set Payment Type +SetRevenuStamp=Set revenue stamp +Billed=Billed +RecurringInvoices=Recurring invoices +RepeatableInvoice=Template invoice +RepeatableInvoices=Template invoices +Repeatable=Template +Repeatables=Templates +ChangeIntoRepeatableInvoice=Convert into template invoice +CreateRepeatableInvoice=Create template invoice +CreateFromRepeatableInvoice=Create from template invoice +CustomersInvoicesAndInvoiceLines=Customer invoices and invoice details +CustomersInvoicesAndPayments=Customer invoices and payments +ExportDataset_invoice_1=Customer invoices and invoice details +ExportDataset_invoice_2=Customer invoices and payments +ProformaBill=Proforma Bill: +Reduction=Reduction +ReductionShort=Disc. +Reductions=Reductions +ReductionsShort=Disc. +Discounts=Discounts +AddDiscount=Create discount +AddRelativeDiscount=Create relative discount +EditRelativeDiscount=Edit relative discount +AddGlobalDiscount=Create absolute discount +EditGlobalDiscounts=Edit absolute discounts +AddCreditNote=Create credit note +ShowDiscount=Show discount +ShowReduc=Show the discount +ShowSourceInvoice=Show the source invoice +RelativeDiscount=Relative discount +GlobalDiscount=Global discount +CreditNote=Credit note +CreditNotes=Credit notes +CreditNotesOrExcessReceived=Credit notes or excess received +Deposit=Down payment +Deposits=Down payments +DiscountFromCreditNote=Discount from credit note %s +DiscountFromDeposit=Down payments from invoice %s +DiscountFromExcessReceived=Payments in excess of invoice %s +DiscountFromExcessPaid=Payments in excess of invoice %s +AbsoluteDiscountUse=This kind of credit can be used on invoice before its validation +CreditNoteDepositUse=Invoice must be validated to use this kind of credits +NewGlobalDiscount=New absolute discount +NewRelativeDiscount=New relative discount +DiscountType=Discount type +NoteReason=Note/Reason +ReasonDiscount=Reason +DiscountOfferedBy=Granted by +DiscountStillRemaining=Discounts or credits available +DiscountAlreadyCounted=Discounts or credits already consumed +CustomerDiscounts=Customer discounts +SupplierDiscounts=Vendors discounts +BillAddress=Bill address +HelpEscompte=This discount is a discount granted to customer because payment was made before term. +HelpAbandonBadCustomer=This amount has been abandoned (customer said to be a bad customer) and is considered as an exceptional loss. +HelpAbandonOther=This amount has been abandoned since it was an error (wrong customer or invoice replaced by another for example) +IdSocialContribution=Social/fiscal tax payment id +PaymentId=Payment id +PaymentRef=Payment ref. +InvoiceId=Invoice id +InvoiceRef=Invoice ref. +InvoiceDateCreation=Invoice creation date +InvoiceStatus=Invoice status +InvoiceNote=Invoice note +InvoicePaid=Invoice paid +InvoicePaidCompletely=Paid completely +InvoicePaidCompletelyHelp=Invoice that are paid completely. This excludes invoices that are paid partially. To get list of all 'Closed' or non 'Closed' invoices, prefer to use a filter on the invoice status. +OrderBilled=Order billed +DonationPaid=Donation paid +PaymentNumber=Payment number +RemoveDiscount=Remove discount +WatermarkOnDraftBill=Watermark on draft invoices (nothing if empty) +InvoiceNotChecked=No invoice selected +ConfirmCloneInvoice=Are you sure you want to clone this invoice %s? +DisabledBecauseReplacedInvoice=Action disabled because invoice has been replaced +DescTaxAndDividendsArea=This area presents a summary of all payments made for special expenses. Only records with payments during the fixed year are included here. +NbOfPayments=No. of payments +SplitDiscount=Split discount in two +ConfirmSplitDiscount=Are you sure you want to split this discount of %s %s into two smaller discounts? +TypeAmountOfEachNewDiscount=Input amount for each of two parts: +TotalOfTwoDiscountMustEqualsOriginal=The total of the two new discounts must be equal to the original discount amount. +ConfirmRemoveDiscount=Are you sure you want to remove this discount? +RelatedBill=Related invoice +RelatedBills=Related invoices +RelatedCustomerInvoices=Related customer invoices +RelatedSupplierInvoices=Related vendor invoices +LatestRelatedBill=Latest related invoice +WarningBillExist=Warning, one or more invoices already exist +MergingPDFTool=Merging PDF tool +AmountPaymentDistributedOnInvoice=Payment amount distributed on invoice +PaymentOnDifferentThirdBills=Allow payments on different third parties bills but same parent company +PaymentNote=Payment note +ListOfPreviousSituationInvoices=List of previous situation invoices +ListOfNextSituationInvoices=List of next situation invoices +ListOfSituationInvoices=List of situation invoices +CurrentSituationTotal=Total current situation +DisabledBecauseNotEnouthCreditNote=To remove a situation invoice from cycle, this invoice's credit note total must cover this invoice total +RemoveSituationFromCycle=Remove this invoice from cycle +ConfirmRemoveSituationFromCycle=Remove this invoice %s from cycle ? +ConfirmOuting=Confirm outing +FrequencyPer_d=Every %s days +FrequencyPer_m=Every %s months +FrequencyPer_y=Every %s years +FrequencyUnit=Frequency unit +toolTipFrequency=Examples:
    Set 7, Day: give a new invoice every 7 days
    Set 3, Month: give a new invoice every 3 month +NextDateToExecution=Date for next invoice generation +NextDateToExecutionShort=Date next gen. +DateLastGeneration=Date of latest generation +DateLastGenerationShort=Date latest gen. +MaxPeriodNumber=Max. number of invoice generation +NbOfGenerationDone=Number of invoice generation already done +NbOfGenerationDoneShort=Number of generation done +MaxGenerationReached=Maximum number of generations reached +InvoiceAutoValidate=Validate invoices automatically +GeneratedFromRecurringInvoice=Generated from template recurring invoice %s +DateIsNotEnough=Date not reached yet +InvoiceGeneratedFromTemplate=Invoice %s generated from recurring template invoice %s +GeneratedFromTemplate=Generated from template invoice %s +WarningInvoiceDateInFuture=Warning, the invoice date is higher than current date +WarningInvoiceDateTooFarInFuture=Warning, the invoice date is too far from current date +ViewAvailableGlobalDiscounts=View available discounts +GroupPaymentsByModOnReports=Group payments by mode on reports +# PaymentConditions +Statut=Status +PaymentConditionShortRECEP=Due Upon Receipt +PaymentConditionRECEP=Due Upon Receipt +PaymentConditionShort30D=30 days +PaymentCondition30D=30 days +PaymentConditionShort30DENDMONTH=30 days of month-end +PaymentCondition30DENDMONTH=Within 30 days following the end of the month +PaymentConditionShort60D=60 days +PaymentCondition60D=60 days +PaymentConditionShort60DENDMONTH=60 days of month-end +PaymentCondition60DENDMONTH=Within 60 days following the end of the month +PaymentConditionShortPT_DELIVERY=Delivery +PaymentConditionPT_DELIVERY=On delivery +PaymentConditionShortPT_ORDER=Order +PaymentConditionPT_ORDER=On order +PaymentConditionShortPT_5050=50-50 +PaymentConditionPT_5050=50%% in advance, 50%% on delivery +PaymentConditionShort10D=10 days +PaymentCondition10D=10 days +PaymentConditionShort10DENDMONTH=10 days of month-end +PaymentCondition10DENDMONTH=Within 10 days following the end of the month +PaymentConditionShort14D=14 days +PaymentCondition14D=14 days +PaymentConditionShort14DENDMONTH=14 days of month-end +PaymentCondition14DENDMONTH=Within 14 days following the end of the month +FixAmount=Fixed amount - 1 line with label '%s' +VarAmount=Variable amount (%% tot.) +VarAmountOneLine=Variable amount (%% tot.) - 1 line with label '%s' +VarAmountAllLines=Variable amount (%% tot.) - all same lines +# PaymentType +PaymentTypeVIR=Bank transfer +PaymentTypeShortVIR=Bank transfer +PaymentTypePRE=Direct debit payment order +PaymentTypeShortPRE=Debit payment order +PaymentTypeLIQ=Cash +PaymentTypeShortLIQ=Cash +PaymentTypeCB=Credit card +PaymentTypeShortCB=Credit card +PaymentTypeCHQ=Check +PaymentTypeShortCHQ=Check +PaymentTypeTIP=TIP (Documents against Payment) +PaymentTypeShortTIP=TIP Payment +PaymentTypeVAD=Online payment +PaymentTypeShortVAD=Online payment +PaymentTypeTRA=Bank draft +PaymentTypeShortTRA=Draft +PaymentTypeFAC=Factor +PaymentTypeShortFAC=Factor +BankDetails=Bank details +BankCode=Bank code +DeskCode=Branch code +BankAccountNumber=Account number +BankAccountNumberKey=Checksum +Residence=Address +IBANNumber=IBAN account number +IBAN=IBAN +BIC=BIC/SWIFT +BICNumber=BIC/SWIFT code +ExtraInfos=Extra infos +RegulatedOn=Regulated on +ChequeNumber=Check N° +ChequeOrTransferNumber=Check/Transfer N° +ChequeBordereau=Check schedule +ChequeMaker=Check/Transfer transmitter +ChequeBank=Bank of Check +CheckBank=Check +NetToBePaid=Net to be paid +PhoneNumber=Tel +FullPhoneNumber=Telephone +TeleFax=Fax +PrettyLittleSentence=Accept the amount of payments due by checks issued in my name as a Member of an accounting association approved by the Fiscal Administration. +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=sent to +PaymentByTransferOnThisBankAccount=Payment by transfer to the following bank account +VATIsNotUsedForInvoice=* Non applicable VAT art-293B of CGI +LawApplicationPart1=By application of the law 80.335 of 12/05/80 +LawApplicationPart2=the goods remain the property of +LawApplicationPart3=the seller until full payment of +LawApplicationPart4=their price. +LimitedLiabilityCompanyCapital=SARL with Capital of +UseLine=Apply +UseDiscount=Use discount +UseCredit=Use credit +UseCreditNoteInInvoicePayment=Reduce amount to pay with this credit +MenuChequeDeposits=Check Deposits +MenuCheques=Checks +MenuChequesReceipts=Check receipts +NewChequeDeposit=New deposit +ChequesReceipts=Check receipts +ChequesArea=Check deposits area +ChequeDeposits=Check deposits +Cheques=Checks +DepositId=Id deposit +NbCheque=Number of checks +CreditNoteConvertedIntoDiscount=This %s has been converted into %s +UsBillingContactAsIncoiveRecipientIfExist=Use contact/address with type 'billing contact' instead of third-party address as recipient for invoices +ShowUnpaidAll=Show all unpaid invoices +ShowUnpaidLateOnly=Show late unpaid invoices only +PaymentInvoiceRef=Payment invoice %s +ValidateInvoice=Validate invoice +ValidateInvoices=Validate invoices +Cash=Cash +Reported=Delayed +DisabledBecausePayments=Not possible since there are some payments +CantRemovePaymentWithOneInvoicePaid=Can't remove payment since there is at least one invoice classified paid +ExpectedToPay=Expected payment +CantRemoveConciliatedPayment=Can't remove reconciled payment +PayedByThisPayment=Paid by this payment +ClosePaidInvoicesAutomatically=Classify automatically all standard, down payment or replacement invoices as "Paid" when payment is done entirely. +ClosePaidCreditNotesAutomatically=Classify automatically all credit notes as "Paid" when refund is done entirely. +ClosePaidContributionsAutomatically=Classify automatically all social or fiscal contributions as "Paid" when payment is done entirely. +AllCompletelyPayedInvoiceWillBeClosed=All invoices with no remainder to pay will be automatically closed with status "Paid". +ToMakePayment=Pay +ToMakePaymentBack=Pay back +ListOfYourUnpaidInvoices=List of unpaid invoices +NoteListOfYourUnpaidInvoices=Note: This list contains only invoices for third parties you are linked to as a sale representative. +RevenueStamp=Tax stamp +YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party +YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party +YouMustCreateStandardInvoiceFirstDesc=You have to create a standard invoice first and convert it to "template" to create a new template invoice +PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template (old implementation of Sponge template) +PDFSpongeDescription=Invoice PDF template Sponge. A complete invoice template +PDFCrevetteDescription=Invoice PDF template Crevette. A complete invoice template for situation invoices +TerreNumRefModelDesc1=Return number with format %syymm-nnnn for standard invoices and %syymm-nnnn for credit notes where yy is year, mm is month and nnnn is a sequence with no break and no return to 0 +MarsNumRefModelDesc1=Return number with format %syymm-nnnn for standard invoices, %syymm-nnnn for replacement invoices, %syymm-nnnn for down payment invoices and %syymm-nnnn for credit notes where yy is year, mm is month and nnnn is a sequence with no break and no return to 0 +TerreNumRefModelError=A bill starting with $syymm already exists and is not compatible with this model of sequence. Remove it or rename it to activate this module. +CactusNumRefModelDesc1=Return number with format %syymm-nnnn for standard invoices, %syymm-nnnn for credit notes and %syymm-nnnn for down payment invoices where yy is year, mm is month and nnnn is a sequence with no break and no return to 0 +EarlyClosingReason=Early closing reason +EarlyClosingComment=Early closing note +##### Types de contacts ##### +TypeContact_facture_internal_SALESREPFOLL=Representative following-up customer invoice +TypeContact_facture_external_BILLING=Customer invoice contact +TypeContact_facture_external_SHIPPING=Customer shipping contact +TypeContact_facture_external_SERVICE=Customer service contact +TypeContact_invoice_supplier_internal_SALESREPFOLL=Representative following-up vendor invoice +TypeContact_invoice_supplier_external_BILLING=Vendor invoice contact +TypeContact_invoice_supplier_external_SHIPPING=Vendor shipping contact +TypeContact_invoice_supplier_external_SERVICE=Vendor service contact +# Situation invoices +InvoiceFirstSituationAsk=First situation invoice +InvoiceFirstSituationDesc=The situation invoices are tied to situations related to a progression, for example the progression of a construction. Each situation is tied to an invoice. +InvoiceSituation=Situation invoice +InvoiceSituationAsk=Invoice following the situation +InvoiceSituationDesc=Create a new situation following an already existing one +SituationAmount=Situation invoice amount(net) +SituationDeduction=Situation subtraction +ModifyAllLines=Modify all lines +CreateNextSituationInvoice=Create next situation +ErrorFindNextSituationInvoice=Error unable to find next situation cycle ref +ErrorOutingSituationInvoiceOnUpdate=Unable to outing this situation invoice. +ErrorOutingSituationInvoiceCreditNote=Unable to outing linked credit note. +NotLastInCycle=This invoice is not the latest in cycle and must not be modified. +DisabledBecauseNotLastInCycle=The next situation already exists. +DisabledBecauseFinal=This situation is final. +situationInvoiceShortcode_AS=AS +situationInvoiceShortcode_S=S +CantBeLessThanMinPercent=The progress can't be smaller than its value in the previous situation. +NoSituations=No open situations +InvoiceSituationLast=Final and general invoice +PDFCrevetteSituationNumber=Situation N°%s +PDFCrevetteSituationInvoiceLineDecompte=Situation invoice - COUNT +PDFCrevetteSituationInvoiceTitle=Situation invoice +PDFCrevetteSituationInvoiceLine=Situation N°%s: Inv. N°%s on %s +TotalSituationInvoice=Total situation +invoiceLineProgressError=Invoice line progress can't be greater than or equal to the next invoice line +updatePriceNextInvoiceErrorUpdateline=Error: update price on invoice line: %s +ToCreateARecurringInvoice=To create a recurring invoice for this contract, first create this draft invoice, then convert it into an invoice template and define the frequency for generation of future invoices. +ToCreateARecurringInvoiceGene=To generate future invoices regularly and manually, just go on menu %s - %s - %s. +ToCreateARecurringInvoiceGeneAuto=If you need to have such invoices generated automatically, ask your administrator to enable and setup module %s. Note that both methods (manual and automatic) can be used together with no risk of duplication. +DeleteRepeatableInvoice=Delete template invoice +ConfirmDeleteRepeatableInvoice=Are your sure you want to delete the template invoice? +CreateOneBillByThird=Create one invoice per third party (otherwise, one invoice per order) +BillCreated=%s bill(s) created +StatusOfGeneratedDocuments=Status of document generation +DoNotGenerateDoc=Do not generate document file +AutogenerateDoc=Auto generate document file +AutoFillDateFrom=Set start date for service line with invoice date +AutoFillDateFromShort=Set start date +AutoFillDateTo=Set end date for service line with next invoice date +AutoFillDateToShort=Set end date +MaxNumberOfGenerationReached=Max number of gen. reached +BILL_DELETEInDolibarr=Invoice deleted +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/hi_IN/blockedlog.lang b/htdocs/langs/hi_IN/blockedlog.lang new file mode 100644 index 00000000000..5afae6e9e53 --- /dev/null +++ b/htdocs/langs/hi_IN/blockedlog.lang @@ -0,0 +1,54 @@ +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). +CompanyInitialKey=Company initial key (hash of genesis block) +BrowseBlockedLog=Unalterable logs +ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) +ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) +DownloadBlockChain=Download fingerprints +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). +OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. +OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. +AddedByAuthority=Stored into remote authority +NotAddedByAuthorityYet=Not yet stored into remote authority +ShowDetails=Show stored details +logPAYMENT_VARIOUS_CREATE=Payment (not assigned to an invoice) created +logPAYMENT_VARIOUS_MODIFY=Payment (not assigned to an invoice) modified +logPAYMENT_VARIOUS_DELETE=Payment (not assigned to an invoice) logical deletion +logPAYMENT_ADD_TO_BANK=Payment added to bank +logPAYMENT_CUSTOMER_CREATE=Customer payment created +logPAYMENT_CUSTOMER_DELETE=Customer payment logical deletion +logDONATION_PAYMENT_CREATE=Donation payment created +logDONATION_PAYMENT_DELETE=Donation payment logical deletion +logBILL_PAYED=Customer invoice paid +logBILL_UNPAYED=Customer invoice set unpaid +logBILL_VALIDATE=Customer invoice validated +logBILL_SENTBYMAIL=Customer invoice send by mail +logBILL_DELETE=Customer invoice logically deleted +logMODULE_RESET=Module BlockedLog was disabled +logMODULE_SET=Module BlockedLog was enabled +logDON_VALIDATE=Donation validated +logDON_MODIFY=Donation modified +logDON_DELETE=Donation logical deletion +logMEMBER_SUBSCRIPTION_CREATE=Member subscription created +logMEMBER_SUBSCRIPTION_MODIFY=Member subscription modified +logMEMBER_SUBSCRIPTION_DELETE=Member subscription logical deletion +logCASHCONTROL_VALIDATE=Cash fence recording +BlockedLogBillDownload=Customer invoice download +BlockedLogBillPreview=Customer invoice preview +BlockedlogInfoDialog=Log Details +ListOfTrackedEvents=List of tracked events +Fingerprint=Fingerprint +DownloadLogCSV=Export archived logs (CSV) +logDOC_PREVIEW=Preview of a validated document in order to print or download +logDOC_DOWNLOAD=Download of a validated document in order to print or send +DataOfArchivedEvent=Full datas of archived event +ImpossibleToReloadObject=Original object (type %s, id %s) not linked (see 'Full datas' column to get unalterable saved data) +BlockedLogAreRequiredByYourCountryLegislation=Unalterable Logs module may be required by the legislation of your country. Disabling this module may render any future transactions invalid with respect to the law and the use of legal software as they can not be validated by a tax audit. +BlockedLogActivatedBecauseRequiredByYourCountryLegislation=Unalterable Logs module was activated because of the legislation of your country. Disabling this module may render any future transactions invalid with respect to the law and the use of legal software as they cannot be validated by a tax audit. +BlockedLogDisableNotAllowedForCountry=List of countries where usage of this module is mandatory (just to prevent to disable the module by error, if your country is in this list, disable of module is not possible without editing this list first. Note also that enabling/disabling this module will keep a track into the unalterable log). +OnlyNonValid=Non-valid +TooManyRecordToScanRestrictFilters=Too many records to scan/analyze. Please restrict list with more restrictive filters. +RestrictYearToExport=Restrict month / year to export diff --git a/htdocs/langs/hi_IN/bookmarks.lang b/htdocs/langs/hi_IN/bookmarks.lang new file mode 100644 index 00000000000..87466cadcfa --- /dev/null +++ b/htdocs/langs/hi_IN/bookmarks.lang @@ -0,0 +1,21 @@ +# Dolibarr language file - Source file is en_US - marque pages +AddThisPageToBookmarks=Add current page to bookmarks +Bookmark=Bookmark +Bookmarks=Bookmarks +ListOfBookmarks=List of bookmarks +EditBookmarks=List/edit bookmarks +NewBookmark=New bookmark +ShowBookmark=Show bookmark +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=Create bookmark +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=Bookmarks management +BookmarksMenuShortCut=Ctrl + shift + m diff --git a/htdocs/langs/hi_IN/boxes.lang b/htdocs/langs/hi_IN/boxes.lang new file mode 100644 index 00000000000..bd62684421a --- /dev/null +++ b/htdocs/langs/hi_IN/boxes.lang @@ -0,0 +1,102 @@ +# Dolibarr language file - Source file is en_US - boxes +BoxLoginInformation=Login Information +BoxLastRssInfos=RSS Information +BoxLastProducts=Latest %s Products/Services +BoxProductsAlertStock=Stock alerts for products +BoxLastProductsInContract=Latest %s contracted products/services +BoxLastSupplierBills=Latest Vendor invoices +BoxLastCustomerBills=Latest Customer invoices +BoxOldestUnpaidCustomerBills=Oldest unpaid customer invoices +BoxOldestUnpaidSupplierBills=Oldest unpaid vendor invoices +BoxLastProposals=Latest commercial proposals +BoxLastProspects=Latest modified prospects +BoxLastCustomers=Latest modified customers +BoxLastSuppliers=Latest modified suppliers +BoxLastCustomerOrders=Latest sales orders +BoxLastActions=Latest actions +BoxLastContracts=Latest contracts +BoxLastContacts=Latest contacts/addresses +BoxLastMembers=Latest members +BoxFicheInter=Latest interventions +BoxCurrentAccounts=Open accounts balance +BoxTitleMemberNextBirthdays=Birthdays of this month (members) +BoxTitleLastRssInfos=Latest %s news from %s +BoxTitleLastProducts=Products/Services: last %s modified +BoxTitleProductsAlertStock=Products: stock alert +BoxTitleLastSuppliers=Latest %s recorded suppliers +BoxTitleLastModifiedSuppliers=Vendors: last %s modified +BoxTitleLastModifiedCustomers=Customers: last %s modified +BoxTitleLastCustomersOrProspects=Latest %s customers or prospects +BoxTitleLastCustomerBills=Latest %s modified Customer invoices +BoxTitleLastSupplierBills=Latest %s modified Vendor invoices +BoxTitleLastModifiedProspects=Prospects: last %s modified +BoxTitleLastModifiedMembers=Latest %s members +BoxTitleLastFicheInter=Latest %s modified interventions +BoxTitleOldestUnpaidCustomerBills=Customer Invoices: oldest %s unpaid +BoxTitleOldestUnpaidSupplierBills=Vendor Invoices: oldest %s unpaid +BoxTitleCurrentAccounts=Open Accounts: balances +BoxTitleSupplierOrdersAwaitingReception=Supplier orders awaiting reception +BoxTitleLastModifiedContacts=Contacts/Addresses: last %s modified +BoxMyLastBookmarks=Bookmarks: latest %s +BoxOldestExpiredServices=Oldest active expired services +BoxLastExpiredServices=Latest %s oldest contacts with active expired services +BoxTitleLastActionsToDo=Latest %s actions to do +BoxTitleLastContracts=Latest %s modified contracts +BoxTitleLastModifiedDonations=Latest %s modified donations +BoxTitleLastModifiedExpenses=Latest %s modified expense reports +BoxTitleLatestModifiedBoms=Latest %s modified BOMs +BoxTitleLatestModifiedMos=Latest %s modified Manufacturing Orders +BoxGlobalActivity=Global activity (invoices, proposals, orders) +BoxGoodCustomers=Good customers +BoxTitleGoodCustomers=%s Good customers +FailedToRefreshDataInfoNotUpToDate=Failed to refresh RSS flux. Latest successful refresh date: %s +LastRefreshDate=Latest refresh date +NoRecordedBookmarks=No bookmarks defined. +ClickToAdd=Click here to add. +NoRecordedCustomers=No recorded customers +NoRecordedContacts=No recorded contacts +NoActionsToDo=No actions to do +NoRecordedOrders=No recorded sales orders +NoRecordedProposals=No recorded proposals +NoRecordedInvoices=No recorded customer invoices +NoUnpaidCustomerBills=No unpaid customer invoices +NoUnpaidSupplierBills=No unpaid vendor invoices +NoModifiedSupplierBills=No recorded vendor invoices +NoRecordedProducts=No recorded products/services +NoRecordedProspects=No recorded prospects +NoContractedProducts=No products/services contracted +NoRecordedContracts=No recorded contracts +NoRecordedInterventions=No recorded interventions +BoxLatestSupplierOrders=Latest purchase orders +BoxLatestSupplierOrdersAwaitingReception=Latest Purchase Orders (with a pending reception) +NoSupplierOrder=No recorded purchase order +BoxCustomersInvoicesPerMonth=Customer Invoices per month +BoxSuppliersInvoicesPerMonth=Vendor Invoices per month +BoxCustomersOrdersPerMonth=Sales Orders per month +BoxSuppliersOrdersPerMonth=Vendor Orders per month +BoxProposalsPerMonth=Proposals per month +NoTooLowStockProducts=No products are under the low stock limit +BoxProductDistribution=Products/Services Distribution +ForObject=On %s +BoxTitleLastModifiedSupplierBills=Vendor Invoices: last %s modified +BoxTitleLatestModifiedSupplierOrders=Vendor Orders: last %s modified +BoxTitleLastModifiedCustomerBills=Customer Invoices: last %s modified +BoxTitleLastModifiedCustomerOrders=Sales Orders: last %s modified +BoxTitleLastModifiedPropals=Latest %s modified proposals +ForCustomersInvoices=Customers invoices +ForCustomersOrders=Customers orders +ForProposals=Proposals +LastXMonthRolling=The latest %s month rolling +ChooseBoxToAdd=Add widget to your dashboard +BoxAdded=Widget was added in your dashboard +BoxTitleUserBirthdaysOfMonth=Birthdays of this month (users) +BoxLastManualEntries=Last manual entries in accountancy +BoxTitleLastManualEntries=%s latest manual entries +NoRecordedManualEntries=No manual entries record in accountancy +BoxSuspenseAccount=Count accountancy operation with suspense account +BoxTitleSuspenseAccount=Number of unallocated lines +NumberOfLinesInSuspenseAccount=Number of line in suspense account +SuspenseAccountNotDefined=Suspense account isn't defined +BoxLastCustomerShipments=Last customer shipments +BoxTitleLastCustomerShipments=Latest %s customer shipments +NoRecordedShipments=No recorded customer shipment diff --git a/htdocs/langs/hi_IN/cashdesk.lang b/htdocs/langs/hi_IN/cashdesk.lang new file mode 100644 index 00000000000..0903a3d10bc --- /dev/null +++ b/htdocs/langs/hi_IN/cashdesk.lang @@ -0,0 +1,110 @@ +# Language file - Source file is en_US - cashdesk +CashDeskMenu=Point of sale +CashDesk=Point of sale +CashDeskBankCash=Bank account (cash) +CashDeskBankCB=Bank account (card) +CashDeskBankCheque=Bank account (cheque) +CashDeskWarehouse=Warehouse +CashdeskShowServices=Selling services +CashDeskProducts=Products +CashDeskStock=Stock +CashDeskOn=on +CashDeskThirdParty=Third party +ShoppingCart=Shopping cart +NewSell=New sell +AddThisArticle=Add this article +RestartSelling=Go back on sell +SellFinished=Sale complete +PrintTicket=Print ticket +SendTicket=Send ticket +NoProductFound=No article found +ProductFound=product found +NoArticle=No article +Identification=Identification +Article=Article +Difference=Difference +TotalTicket=Total ticket +NoVAT=No VAT for this sale +Change=Excess received +BankToPay=Account for payment +ShowCompany=Show company +ShowStock=Show warehouse +DeleteArticle=Click to remove this article +FilterRefOrLabelOrBC=Search (Ref/Label) +UserNeedPermissionToEditStockToUsePos=You ask to decrease stock on invoice creation, so user that uses POS needs to have permission to edit stock. +DolibarrReceiptPrinter=Dolibarr Receipt Printer +PointOfSale=Point of Sale +PointOfSaleShort=POS +CloseBill=Close Bill +Floors=Floors +Floor=Floor +AddTable=Add table +Place=Place +TakeposConnectorNecesary='TakePOS Connector' required +OrderPrinters=Order printers +SearchProduct=Search product +Receipt=Receipt +Header=Header +Footer=Footer +AmountAtEndOfPeriod=Amount at end of period (day, month or year) +TheoricalAmount=Theorical amount +RealAmount=Real amount +CashFence=Cash fence +CashFenceDone=Cash fence done for the period +NbOfInvoices=Nb of invoices +Paymentnumpad=Type of Pad to enter payment +Numberspad=Numbers Pad +BillsCoinsPad=Coins and banknotes Pad +DolistorePosCategory=TakePOS modules and other POS solutions for Dolibarr +TakeposNeedsCategories=TakePOS needs product categories to work +OrderNotes=Order Notes +CashDeskBankAccountFor=Default account to use for payments in +NoPaimementModesDefined=No paiment mode defined in TakePOS configuration +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts +EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant +ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? +ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? +History=History +ValidateAndClose=Validate and close +Terminal=Terminal +NumberOfTerminals=Number of Terminals +TerminalSelect=Select terminal you want to use: +POSTicket=POS Ticket +POSTerminal=POS Terminal +POSModule=POS Module +BasicPhoneLayout=Use basic layout for phones +SetupOfTerminalNotComplete=Setup of terminal %s is not complete +DirectPayment=Direct payment +DirectPaymentButton=Direct cash payment button +InvoiceIsAlreadyValidated=Invoice is already validated +NoLinesToBill=No lines to bill +CustomReceipt=Custom Receipt +ReceiptName=Receipt Name +ProductSupplements=Product Supplements +SupplementCategory=Supplement category +ColorTheme=Color theme +Colorful=Colorful +HeadBar=Head Bar +SortProductField=Field for sorting products +Browser=Browser +BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. +PrintMethod=Print method +ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. +ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for POS sales +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use +BarRestaurant=Bar Restaurant +AutoOrder=Customer auto order diff --git a/htdocs/langs/hi_IN/categories.lang b/htdocs/langs/hi_IN/categories.lang new file mode 100644 index 00000000000..30bace0574c --- /dev/null +++ b/htdocs/langs/hi_IN/categories.lang @@ -0,0 +1,89 @@ +# Dolibarr language file - Source file is en_US - categories +Rubrique=Tag/Category +Rubriques=Tags/Categories +RubriquesTransactions=Tags/Categories of transactions +categories=tags/categories +NoCategoryYet=No tag/category of this type created +In=In +AddIn=Add in +modify=modify +Classify=Classify +CategoriesArea=Tags/Categories area +ProductsCategoriesArea=Products/Services tags/categories area +SuppliersCategoriesArea=Vendors tags/categories area +CustomersCategoriesArea=Customers tags/categories area +MembersCategoriesArea=Members tags/categories area +ContactsCategoriesArea=Contacts tags/categories area +AccountsCategoriesArea=Accounts tags/categories area +ProjectsCategoriesArea=Projects tags/categories area +UsersCategoriesArea=Users tags/categories area +SubCats=Sub-categories +CatList=List of tags/categories +NewCategory=New tag/category +ModifCat=Modify tag/category +CatCreated=Tag/category created +CreateCat=Create tag/category +CreateThisCat=Create this tag/category +NoSubCat=No subcategory. +SubCatOf=Subcategory +FoundCats=Found tags/categories +ImpossibleAddCat=Impossible to add the tag/category %s +WasAddedSuccessfully=%s was added successfully. +ObjectAlreadyLinkedToCategory=Element is already linked to this tag/category. +ProductIsInCategories=Product/service is linked to following tags/categories +CompanyIsInCustomersCategories=This third party is linked to following customers/prospects tags/categories +CompanyIsInSuppliersCategories=This third party is linked to following vendors tags/categories +MemberIsInCategories=This member is linked to following members tags/categories +ContactIsInCategories=This contact is linked to following contacts tags/categories +ProductHasNoCategory=This product/service is not in any tags/categories +CompanyHasNoCategory=This third party is not in any tags/categories +MemberHasNoCategory=This member is not in any tags/categories +ContactHasNoCategory=This contact is not in any tags/categories +ProjectHasNoCategory=This project is not in any tags/categories +ClassifyInCategory=Add to tag/category +NotCategorized=Without tag/category +CategoryExistsAtSameLevel=This category already exists with this ref +ContentsVisibleByAllShort=Contents visible by all +ContentsNotVisibleByAllShort=Contents not visible by all +DeleteCategory=Delete tag/category +ConfirmDeleteCategory=Are you sure you want to delete this tag/category? +NoCategoriesDefined=No tag/category defined +SuppliersCategoryShort=Vendors tag/category +CustomersCategoryShort=Customers tag/category +ProductsCategoryShort=Products tag/category +MembersCategoryShort=Members tag/category +SuppliersCategoriesShort=Vendors tags/categories +CustomersCategoriesShort=Customers tags/categories +ProspectsCategoriesShort=Prospects tags/categories +CustomersProspectsCategoriesShort=Cust./Prosp. tags/categories +ProductsCategoriesShort=Products tags/categories +MembersCategoriesShort=Members tags/categories +ContactCategoriesShort=Contacts tags/categories +AccountsCategoriesShort=Accounts tags/categories +ProjectsCategoriesShort=Projects tags/categories +UsersCategoriesShort=Users tags/categories +StockCategoriesShort=Warehouse tags/categories +ThisCategoryHasNoItems=This category does not contain any items. +CategId=Tag/category id +CatSupList=List of vendor tags/categories +CatCusList=List of customer/prospect tags/categories +CatProdList=List of products tags/categories +CatMemberList=List of members tags/categories +CatContactList=List of contact tags/categories +CatSupLinks=Links between suppliers and tags/categories +CatCusLinks=Links between customers/prospects and tags/categories +CatContactsLinks=Links between contacts/addresses and tags/categories +CatProdLinks=Links between products/services and tags/categories +CatProJectLinks=Links between projects and tags/categories +DeleteFromCat=Remove from tags/category +ExtraFieldsCategories=Complementary attributes +CategoriesSetup=Tags/categories setup +CategorieRecursiv=Link with parent tag/category automatically +CategorieRecursivHelp=If option is on, when you add a product into a subcategory, product will also be added into the parent category. +AddProductServiceIntoCategory=Add the following product/service +ShowCategory=Show tag/category +ByDefaultInList=By default in list +ChooseCategory=Choose category +StocksCategoriesArea=Warehouses Categories Area +ActionCommCategoriesArea=Events Categories Area +UseOrOperatorForCategories=Use or operator for categories diff --git a/htdocs/langs/hi_IN/commercial.lang b/htdocs/langs/hi_IN/commercial.lang new file mode 100644 index 00000000000..10c536e0d48 --- /dev/null +++ b/htdocs/langs/hi_IN/commercial.lang @@ -0,0 +1,80 @@ +# Dolibarr language file - Source file is en_US - commercial +Commercial=Commerce +CommercialArea=Commerce area +Customer=Customer +Customers=Customers +Prospect=Prospect +Prospects=Prospects +DeleteAction=Delete an event +NewAction=New event +AddAction=Create event +AddAnAction=Create an event +AddActionRendezVous=Create a Rendez-vous event +ConfirmDeleteAction=Are you sure you want to delete this event? +CardAction=Event card +ActionOnCompany=Related company +ActionOnContact=Related contact +TaskRDVWith=Meeting with %s +ShowTask=Show task +ShowAction=Show event +ActionsReport=Events report +ThirdPartiesOfSaleRepresentative=Third parties with sales representative +SaleRepresentativesOfThirdParty=Sales representatives of third party +SalesRepresentative=Sales representative +SalesRepresentatives=Sales representatives +SalesRepresentativeFollowUp=Sales representative (follow-up) +SalesRepresentativeSignature=Sales representative (signature) +NoSalesRepresentativeAffected=No particular sales representative assigned +ShowCustomer=Show customer +ShowProspect=Show prospect +ListOfProspects=List of prospects +ListOfCustomers=List of customers +LastDoneTasks=Latest %s completed actions +LastActionsToDo=Oldest %s not completed actions +DoneAndToDoActions=Completed and To do events +DoneActions=Completed events +ToDoActions=Incomplete events +SendPropalRef=Submission of commercial proposal %s +SendOrderRef=Submission of order %s +StatusNotApplicable=Not applicable +StatusActionToDo=To do +StatusActionDone=Complete +StatusActionInProcess=In process +TasksHistoryForThisContact=Events for this contact +LastProspectDoNotContact=Do not contact +LastProspectNeverContacted=Never contacted +LastProspectToContact=To contact +LastProspectContactInProcess=Contact in process +LastProspectContactDone=Contact done +ActionAffectedTo=Event assigned to +ActionDoneBy=Event done by +ActionAC_TEL=Phone call +ActionAC_FAX=Send fax +ActionAC_PROP=Send proposal by mail +ActionAC_EMAIL=Send Email +ActionAC_EMAIL_IN=Reception of Email +ActionAC_RDV=Meetings +ActionAC_INT=Intervention on site +ActionAC_FAC=Send customer invoice by mail +ActionAC_REL=Send customer invoice by mail (reminder) +ActionAC_CLO=Close +ActionAC_EMAILING=Send mass email +ActionAC_COM=Send sales order by mail +ActionAC_SHIP=Send shipping by mail +ActionAC_SUP_ORD=Send purchase order by mail +ActionAC_SUP_INV=Send vendor invoice by mail +ActionAC_OTH=Other +ActionAC_OTH_AUTO=Automatically inserted events +ActionAC_MANUAL=Manually inserted events +ActionAC_AUTO=Automatically inserted events +ActionAC_OTH_AUTOShort=Auto +Stats=Sales statistics +StatusProsp=Prospect status +DraftPropals=Draft commercial proposals +NoLimit=No limit +ToOfferALinkForOnlineSignature=Link for online signature +WelcomeOnOnlineSignaturePage=Welcome to the page to accept commercial proposals from %s +ThisScreenAllowsYouToSignDocFrom=This screen allow you to accept and sign, or refuse, a quote/commercial proposal +ThisIsInformationOnDocumentToSign=This is information on document to accept or refuse +SignatureProposalRef=Signature of quote/commercial proposal %s +FeatureOnlineSignDisabled=Feature for online signing disabled or document generated before the feature was enabled diff --git a/htdocs/langs/hi_IN/companies.lang b/htdocs/langs/hi_IN/companies.lang new file mode 100644 index 00000000000..e200fd8adb8 --- /dev/null +++ b/htdocs/langs/hi_IN/companies.lang @@ -0,0 +1,458 @@ +# Dolibarr language file - Source file is en_US - companies +ErrorCompanyNameAlreadyExists=Company name %s already exists. Choose another one. +ErrorSetACountryFirst=Set the country first +SelectThirdParty=Select a third party +ConfirmDeleteCompany=Are you sure you want to delete this company and all inherited information? +DeleteContact=Delete a contact/address +ConfirmDeleteContact=Are you sure you want to delete this contact and all inherited information? +MenuNewThirdParty=New Third Party +MenuNewCustomer=New Customer +MenuNewProspect=New Prospect +MenuNewSupplier=New Vendor +MenuNewPrivateIndividual=New private individual +NewCompany=New company (prospect, customer, vendor) +NewThirdParty=New Third Party (prospect, customer, vendor) +CreateDolibarrThirdPartySupplier=Create a third party (vendor) +CreateThirdPartyOnly=Create third party +CreateThirdPartyAndContact=Create a third party + a child contact +ProspectionArea=Prospection area +IdThirdParty=Id third party +IdCompany=Company Id +IdContact=Contact Id +Contacts=Contacts/Addresses +ThirdPartyContacts=Third-party contacts +ThirdPartyContact=Third-party contact/address +Company=Company +CompanyName=Company name +AliasNames=Alias name (commercial, trademark, ...) +AliasNameShort=Alias Name +Companies=Companies +CountryIsInEEC=Country is inside the European Economic Community +PriceFormatInCurrentLanguage=Price display format in the current language and currency +ThirdPartyName=Third-party name +ThirdPartyEmail=Third-party email +ThirdParty=Third-party +ThirdParties=Third-parties +ThirdPartyProspects=Prospects +ThirdPartyProspectsStats=Prospects +ThirdPartyCustomers=Customers +ThirdPartyCustomersStats=Customers +ThirdPartyCustomersWithIdProf12=Customers with %s or %s +ThirdPartySuppliers=Vendors +ThirdPartyType=Third-party type +Individual=Private individual +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=Parent company +Subsidiaries=Subsidiaries +ReportByMonth=Report by month +ReportByCustomers=Report by customer +ReportByQuarter=Report by rate +CivilityCode=Civility code +RegisteredOffice=Registered office +Lastname=Last name +Firstname=First name +PostOrFunction=Job position +UserTitle=Title +NatureOfThirdParty=Nature of Third party +NatureOfContact=Nature of Contact +Address=Address +State=State/Province +StateCode=State/Province code +StateShort=State +Region=Region +Region-State=Region - State +Country=Country +CountryCode=Country code +CountryId=Country id +Phone=Phone +PhoneShort=Phone +Skype=Skype +Call=Call +Chat=Chat +PhonePro=Prof. phone +PhonePerso=Pers. phone +PhoneMobile=Mobile +No_Email=Refuse bulk emailings +Fax=Fax +Zip=Zip Code +Town=City +Web=Web +Poste= Position +DefaultLang=Language default +VATIsUsed=Sales tax used +VATIsUsedWhenSelling=This defines if this third party includes a sale tax or not when it makes an invoice to its own customers +VATIsNotUsed=Sales tax is not used +CopyAddressFromSoc=Copy address from third-party details +ThirdpartyNotCustomerNotSupplierSoNoRef=Third party neither customer nor vendor, no available referring objects +ThirdpartyIsNeitherCustomerNorClientSoCannotHaveDiscounts=Third party neither customer nor vendor, discounts are not available +PaymentBankAccount=Payment bank account +OverAllProposals=Proposals +OverAllOrders=Orders +OverAllInvoices=Invoices +OverAllSupplierProposals=Price requests +##### Local Taxes ##### +LocalTax1IsUsed=Use second tax +LocalTax1IsUsedES= RE is used +LocalTax1IsNotUsedES= RE is not used +LocalTax2IsUsed=Use third tax +LocalTax2IsUsedES= IRPF is used +LocalTax2IsNotUsedES= IRPF is not used +WrongCustomerCode=Customer code invalid +WrongSupplierCode=Vendor code invalid +CustomerCodeModel=Customer code model +SupplierCodeModel=Vendor code model +Gencod=Barcode +##### Professional ID ##### +ProfId1Short=Prof. id 1 +ProfId2Short=Prof. id 2 +ProfId3Short=Prof. id 3 +ProfId4Short=Prof. id 4 +ProfId5Short=Prof. id 5 +ProfId6Short=Prof. id 6 +ProfId1=Professional ID 1 +ProfId2=Professional ID 2 +ProfId3=Professional ID 3 +ProfId4=Professional ID 4 +ProfId5=Professional ID 5 +ProfId6=Professional ID 6 +ProfId1AR=Prof Id 1 (CUIT/CUIL) +ProfId2AR=Prof Id 2 (Revenu brutes) +ProfId3AR=- +ProfId4AR=- +ProfId5AR=- +ProfId6AR=- +ProfId1AT=Prof Id 1 (USt.-IdNr) +ProfId2AT=Prof Id 2 (USt.-Nr) +ProfId3AT=Prof Id 3 (Handelsregister-Nr.) +ProfId4AT=- +ProfId5AT=- +ProfId6AT=- +ProfId1AU=Prof Id 1 (ABN) +ProfId2AU=- +ProfId3AU=- +ProfId4AU=- +ProfId5AU=- +ProfId6AU=- +ProfId1BE=Prof Id 1 (Professional number) +ProfId2BE=- +ProfId3BE=- +ProfId4BE=- +ProfId5BE=- +ProfId6BE=- +ProfId1BR=- +ProfId2BR=IE (Inscricao Estadual) +ProfId3BR=IM (Inscricao Municipal) +ProfId4BR=CPF +#ProfId5BR=CNAE +#ProfId6BR=INSS +ProfId1CH=- +ProfId2CH=- +ProfId3CH=Prof Id 1 (Federal number) +ProfId4CH=Prof Id 2 (Commercial Record number) +ProfId5CH=- +ProfId6CH=- +ProfId1CL=Prof Id 1 (R.U.T.) +ProfId2CL=- +ProfId3CL=- +ProfId4CL=- +ProfId5CL=- +ProfId6CL=- +ProfId1CO=Prof Id 1 (R.U.T.) +ProfId2CO=- +ProfId3CO=- +ProfId4CO=- +ProfId5CO=- +ProfId6CO=- +ProfId1DE=Prof Id 1 (USt.-IdNr) +ProfId2DE=Prof Id 2 (USt.-Nr) +ProfId3DE=Prof Id 3 (Handelsregister-Nr.) +ProfId4DE=- +ProfId5DE=- +ProfId6DE=- +ProfId1ES=Prof Id 1 (CIF/NIF) +ProfId2ES=Prof Id 2 (Social security number) +ProfId3ES=Prof Id 3 (CNAE) +ProfId4ES=Prof Id 4 (Collegiate number) +ProfId5ES=- +ProfId6ES=- +ProfId1FR=Prof Id 1 (SIREN) +ProfId2FR=Prof Id 2 (SIRET) +ProfId3FR=Prof Id 3 (NAF, old APE) +ProfId4FR=Prof Id 4 (RCS/RM) +ProfId5FR=- +ProfId6FR=- +ProfId1GB=Registration Number +ProfId2GB=- +ProfId3GB=SIC +ProfId4GB=- +ProfId5GB=- +ProfId6GB=- +ProfId1HN=Id prof. 1 (RTN) +ProfId2HN=- +ProfId3HN=- +ProfId4HN=- +ProfId5HN=- +ProfId6HN=- +ProfId1IN=Prof Id 1 (TIN) +ProfId2IN=Prof Id 2 (PAN) +ProfId3IN=Prof Id 3 (SRVC TAX) +ProfId4IN=Prof Id 4 +ProfId5IN=Prof Id 5 +ProfId6IN=- +ProfId1LU=Id. prof. 1 (R.C.S. Luxembourg) +ProfId2LU=Id. prof. 2 (Business permit) +ProfId3LU=- +ProfId4LU=- +ProfId5LU=- +ProfId6LU=- +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=Id. prof. 5 (I.C.E.) +ProfId6MA=- +ProfId1MX=Prof Id 1 (R.F.C). +ProfId2MX=Prof Id 2 (R..P. IMSS) +ProfId3MX=Prof Id 3 (Profesional Charter) +ProfId4MX=- +ProfId5MX=- +ProfId6MX=- +ProfId1NL=KVK nummer +ProfId2NL=- +ProfId3NL=- +ProfId4NL=Burgerservicenummer (BSN) +ProfId5NL=- +ProfId6NL=- +ProfId1PT=Prof Id 1 (NIPC) +ProfId2PT=Prof Id 2 (Social security number) +ProfId3PT=Prof Id 3 (Commercial Record number) +ProfId4PT=Prof Id 4 (Conservatory) +ProfId5PT=- +ProfId6PT=- +ProfId1SN=RC +ProfId2SN=NINEA +ProfId3SN=- +ProfId4SN=- +ProfId5SN=- +ProfId6SN=- +ProfId1TN=Prof Id 1 (RC) +ProfId2TN=Prof Id 2 (Fiscal matricule) +ProfId3TN=Prof Id 3 (Douane code) +ProfId4TN=Prof Id 4 (BAN) +ProfId5TN=- +ProfId6TN=- +ProfId1US=Prof Id (FEIN) +ProfId2US=- +ProfId3US=- +ProfId4US=- +ProfId5US=- +ProfId6US=- +ProfId1RO=Prof Id 1 (CUI) +ProfId2RO=Prof Id 2 (Nr. Înmatriculare) +ProfId3RO=Prof Id 3 (CAEN) +ProfId4RO=- +ProfId5RO=Prof Id 5 (EUID) +ProfId6RO=- +ProfId1RU=Prof Id 1 (OGRN) +ProfId2RU=Prof Id 2 (INN) +ProfId3RU=Prof Id 3 (KPP) +ProfId4RU=Prof Id 4 (OKPO) +ProfId5RU=- +ProfId6RU=- +ProfId1DZ=RC +ProfId2DZ=Art. +ProfId3DZ=NIF +ProfId4DZ=NIS +VATIntra=VAT ID +VATIntraShort=VAT ID +VATIntraSyntaxIsValid=Syntax is valid +VATReturn=VAT return +ProspectCustomer=Prospect / Customer +Prospect=Prospect +CustomerCard=Customer Card +Customer=Customer +CustomerRelativeDiscount=Relative customer discount +SupplierRelativeDiscount=Relative vendor discount +CustomerRelativeDiscountShort=Relative discount +CustomerAbsoluteDiscountShort=Absolute discount +CompanyHasRelativeDiscount=This customer has a default discount of %s%% +CompanyHasNoRelativeDiscount=This customer has no relative discount by default +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 +CompanyHasDownPaymentOrCommercialDiscount=This customer has discounts available (commercial, down payments) for %s %s +CompanyHasCreditNote=This customer still has credit notes for %s %s +HasNoAbsoluteDiscountFromSupplier=You have no discount credit available from this vendor +HasAbsoluteDiscountFromSupplier=You have discounts available (credits notes or down payments) for %s %s from this vendor +HasDownPaymentOrCommercialDiscountFromSupplier=You have discounts available (commercial, down payments) for %s %s from this vendor +HasCreditNoteFromSupplier=You have credit notes for %s %s from this vendor +CompanyHasNoAbsoluteDiscount=This customer has no discount credit available +CustomerAbsoluteDiscountAllUsers=Absolute customer discounts (granted by all users) +CustomerAbsoluteDiscountMy=Absolute customer discounts (granted by yourself) +SupplierAbsoluteDiscountAllUsers=Absolute vendor discounts (entered by all users) +SupplierAbsoluteDiscountMy=Absolute vendor discounts (entered by yourself) +DiscountNone=None +Vendor=Vendor +Supplier=Vendor +AddContact=Create contact +AddContactAddress=Create contact/address +EditContact=Edit contact +EditContactAddress=Edit contact/address +Contact=Contact +ContactId=Contact id +ContactsAddresses=Contacts/Addresses +FromContactName=Name: +NoContactDefinedForThirdParty=No contact defined for this third party +NoContactDefined=No contact defined +DefaultContact=Default contact/address +ContactByDefaultFor=Default contact/address for +AddThirdParty=Create third party +DeleteACompany=Delete a company +PersonalInformations=Personal data +AccountancyCode=Accounting account +CustomerCode=Customer Code +SupplierCode=Vendor Code +CustomerCodeShort=Customer Code +SupplierCodeShort=Vendor Code +CustomerCodeDesc=Customer Code, unique for all customers +SupplierCodeDesc=Vendor Code, unique for all vendors +RequiredIfCustomer=Required if third party is a customer or prospect +RequiredIfSupplier=Required if third party is a vendor +ValidityControledByModule=Validity controlled by module +ThisIsModuleRules=Rules for this module +ProspectToContact=Prospect to contact +CompanyDeleted=Company "%s" deleted from database. +ListOfContacts=List of contacts/addresses +ListOfContactsAddresses=List of contacts/addresses +ListOfThirdParties=List of Third Parties +ShowCompany=Third Party +ShowContact=Contact-Address +ContactsAllShort=All (No filter) +ContactType=Contact type +ContactForOrders=Order's contact +ContactForOrdersOrShipments=Order's or shipment's contact +ContactForProposals=Proposal's contact +ContactForContracts=Contract's contact +ContactForInvoices=Invoice's contact +NoContactForAnyOrder=This contact is not a contact for any order +NoContactForAnyOrderOrShipments=This contact is not a contact for any order or shipment +NoContactForAnyProposal=This contact is not a contact for any commercial proposal +NoContactForAnyContract=This contact is not a contact for any contract +NoContactForAnyInvoice=This contact is not a contact for any invoice +NewContact=New contact +NewContactAddress=New Contact/Address +MyContacts=My contacts +Capital=Capital +CapitalOf=Capital of %s +EditCompany=Edit company +ThisUserIsNot=This user is not a prospect, customer or vendor +VATIntraCheck=Check +VATIntraCheckDesc=The VAT ID must include the country prefix. The link %s uses the European VAT checker service (VIES) which requires internet access from the Dolibarr server. +VATIntraCheckURL=http://ec.europa.eu/taxation_customs/vies/vieshome.do +VATIntraCheckableOnEUSite=Check the intra-Community VAT ID on the European Commission website +VATIntraManualCheck=You can also check manually on the European Commission website %s +ErrorVATCheckMS_UNAVAILABLE=Check not possible. Check service is not provided by the member state (%s). +NorProspectNorCustomer=Not prospect, nor customer +JuridicalStatus=Legal Entity Type +Staff=Employees +ProspectLevelShort=Potential +ProspectLevel=Prospect potential +ContactPrivate=Private +ContactPublic=Shared +ContactVisibility=Visibility +ContactOthers=Other +OthersNotLinkedToThirdParty=Others, not linked to a third party +ProspectStatus=Prospect status +PL_NONE=None +PL_UNKNOWN=अज्ञात +PL_LOW=Low +PL_MEDIUM=Medium +PL_HIGH=High +TE_UNKNOWN=- +TE_STARTUP=Startup +TE_GROUP=Large company +TE_MEDIUM=Medium company +TE_ADMIN=Governmental +TE_SMALL=Small company +TE_RETAIL=Retailer +TE_WHOLE=Wholesaler +TE_PRIVATE=Private individual +TE_OTHER=Other +StatusProspect-1=Do not contact +StatusProspect0=Never contacted +StatusProspect1=To be contacted +StatusProspect2=Contact in process +StatusProspect3=Contact done +ChangeDoNotContact=Change status to 'Do not contact' +ChangeNeverContacted=Change status to 'Never contacted' +ChangeToContact=Change status to 'To be contacted' +ChangeContactInProcess=Change status to 'Contact in process' +ChangeContactDone=Change status to 'Contact done' +ProspectsByStatus=Prospects by status +NoParentCompany=None +ExportCardToFormat=Export card to format +ContactNotLinkedToCompany=Contact not linked to any third party +DolibarrLogin=Dolibarr login +NoDolibarrAccess=No Dolibarr access +ExportDataset_company_1=Third-parties (companies/foundations/physical people) and their properties +ExportDataset_company_2=Contacts and their properties +ImportDataset_company_1=Third-parties and their properties +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) +PriceLevel=Price Level +PriceLevelLabels=Price Level Labels +DeliveryAddress=Delivery address +AddAddress=Add address +SupplierCategory=Vendor category +JuridicalStatus200=Independent +DeleteFile=Delete file +ConfirmDeleteFile=Are you sure you want to delete this file? +AllocateCommercial=Assigned to sales representative +Organization=Organization +FiscalYearInformation=Fiscal Year +FiscalMonthStart=Starting month of the fiscal year +SocialNetworksInformation=Social networks +SocialNetworksFacebookURL=Facebook URL +SocialNetworksTwitterURL=Twitter URL +SocialNetworksLinkedinURL=Linkedin URL +SocialNetworksInstagramURL=Instagram URL +SocialNetworksYoutubeURL=Youtube URL +SocialNetworksGithubURL=Github URL +YouMustAssignUserMailFirst=You must create an email for this user prior to being able to add an email notification. +YouMustCreateContactFirst=To be able to add email notifications, you must first define contacts with valid emails for the third party +ListSuppliersShort=List of Vendors +ListProspectsShort=List of Prospects +ListCustomersShort=List of Customers +ThirdPartiesArea=Third Parties/Contacts +LastModifiedThirdParties=Last %s modified Third Parties +UniqueThirdParties=Total of Third Parties +InActivity=Open +ActivityCeased=Closed +ThirdPartyIsClosed=Third party is closed +ProductsIntoElements=List of products/services into %s +CurrentOutstandingBill=Current outstanding bill +OutstandingBill=Max. for outstanding bill +OutstandingBillReached=Max. for outstanding bill reached +OrderMinAmount=Minimum amount for order +MonkeyNumRefModelDesc=Return a number with the format %syymm-nnnn for the customer code and %syymm-nnnn for the vendor code where yy is year, mm is month and nnnn is a sequence with no break and no return to 0. +LeopardNumRefModelDesc=The code is free. This code can be modified at any time. +ManagingDirectors=Manager(s) name (CEO, director, president...) +MergeOriginThirdparty=Duplicate third party (third party you want to delete) +MergeThirdparties=Merge third parties +ConfirmMergeThirdparties=Are you sure you want to merge this third party into the current one? All linked objects (invoices, orders, ...) will be moved to current third party, then the third party will be deleted. +ThirdpartiesMergeSuccess=Third parties have been merged +SaleRepresentativeLogin=Login of sales representative +SaleRepresentativeFirstname=First name of sales representative +SaleRepresentativeLastname=Last name of sales representative +ErrorThirdpartiesMerge=There was an error when deleting the third parties. Please check the log. Changes have been reverted. +NewCustomerSupplierCodeProposed=Customer or Vendor code already used, a new code is suggested +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address +#Imports +PaymentTypeCustomer=Payment Type - Customer +PaymentTermsCustomer=Payment Terms - Customer +PaymentTypeSupplier=Payment Type - Vendor +PaymentTermsSupplier=Payment Term - Vendor +PaymentTypeBoth=Payment Type - Customer and Vendor +MulticurrencyUsed=Use Multicurrency +MulticurrencyCurrency=Currency diff --git a/htdocs/langs/hi_IN/compta.lang b/htdocs/langs/hi_IN/compta.lang new file mode 100644 index 00000000000..8a8c837ac87 --- /dev/null +++ b/htdocs/langs/hi_IN/compta.lang @@ -0,0 +1,266 @@ +# Dolibarr language file - Source file is en_US - compta +MenuFinancial=Billing | Payment +TaxModuleSetupToModifyRules=Go to Taxes module setup to modify rules for calculation +TaxModuleSetupToModifyRulesLT=Go to Company setup to modify rules for calculation +OptionMode=Option for accountancy +OptionModeTrue=Option Incomes-Expenses +OptionModeVirtual=Option Claims-Debts +OptionModeTrueDesc=In this context, the turnover is calculated over payments (date of payments). The validity of the figures is assured only if the book-keeping is scrutinized through the input/output on the accounts via invoices. +OptionModeVirtualDesc=In this context, the turnover is calculated over invoices (date of validation). When these invoices are due, whether they have been paid or not, they are listed in the turnover output. +FeatureIsSupportedInInOutModeOnly=Feature only available in CREDITS-DEBTS accountancy mode (See Accountancy module configuration) +VATReportBuildWithOptionDefinedInModule=Amounts shown here are calculated using rules defined by Tax module setup. +LTReportBuildWithOptionDefinedInModule=Amounts shown here are calculated using rules defined by Company setup. +Param=Setup +RemainingAmountPayment=Amount payment remaining: +Account=Account +Accountparent=Parent account +Accountsparent=Parent accounts +Income=Income +Outcome=Expense +MenuReportInOut=Income / Expense +ReportInOut=Balance of income and expenses +ReportTurnover=Turnover invoiced +ReportTurnoverCollected=Turnover collected +PaymentsNotLinkedToInvoice=Payments not linked to any invoice, so not linked to any third party +PaymentsNotLinkedToUser=Payments not linked to any user +Profit=Profit +AccountingResult=Accounting result +BalanceBefore=Balance (before) +Balance=Balance +Debit=Debit +Credit=Credit +Piece=Accounting Doc. +AmountHTVATRealReceived=Net collected +AmountHTVATRealPaid=Net paid +VATToPay=Tax sales +VATReceived=Tax received +VATToCollect=Tax purchases +VATSummary=Tax monthly +VATBalance=Tax Balance +VATPaid=Tax paid +LT1Summary=Tax 2 summary +LT2Summary=Tax 3 summary +LT1SummaryES=RE Balance +LT2SummaryES=IRPF Balance +LT1SummaryIN=CGST Balance +LT2SummaryIN=SGST Balance +LT1Paid=Tax 2 paid +LT2Paid=Tax 3 paid +LT1PaidES=RE Paid +LT2PaidES=IRPF Paid +LT1PaidIN=CGST Paid +LT2PaidIN=SGST Paid +LT1Customer=Tax 2 sales +LT1Supplier=Tax 2 purchases +LT1CustomerES=RE sales +LT1SupplierES=RE purchases +LT1CustomerIN=CGST sales +LT1SupplierIN=CGST purchases +LT2Customer=Tax 3 sales +LT2Supplier=Tax 3 purchases +LT2CustomerES=IRPF sales +LT2SupplierES=IRPF purchases +LT2CustomerIN=SGST sales +LT2SupplierIN=SGST purchases +VATCollected=VAT collected +StatusToPay=To pay +SpecialExpensesArea=Area for all special payments +SocialContribution=Social or fiscal tax +SocialContributions=Social or fiscal taxes +SocialContributionsDeductibles=Deductible social or fiscal taxes +SocialContributionsNondeductibles=Nondeductible social or fiscal taxes +LabelContrib=Label contribution +TypeContrib=Type contribution +MenuSpecialExpenses=Special expenses +MenuTaxAndDividends=Taxes and dividends +MenuSocialContributions=Social/fiscal taxes +MenuNewSocialContribution=New social/fiscal tax +NewSocialContribution=New social/fiscal tax +AddSocialContribution=Add social/fiscal tax +ContributionsToPay=Social/fiscal taxes to pay +AccountancyTreasuryArea=Billing and payment area +NewPayment=New payment +PaymentCustomerInvoice=Customer invoice payment +PaymentSupplierInvoice=vendor invoice payment +PaymentSocialContribution=Social/fiscal tax payment +PaymentVat=VAT payment +ListPayment=List of payments +ListOfCustomerPayments=List of customer payments +ListOfSupplierPayments=List of vendor payments +DateStartPeriod=Date start period +DateEndPeriod=Date end period +newLT1Payment=New tax 2 payment +newLT2Payment=New tax 3 payment +LT1Payment=Tax 2 payment +LT1Payments=Tax 2 payments +LT2Payment=Tax 3 payment +LT2Payments=Tax 3 payments +newLT1PaymentES=New RE payment +newLT2PaymentES=New IRPF payment +LT1PaymentES=RE Payment +LT1PaymentsES=RE Payments +LT2PaymentES=IRPF Payment +LT2PaymentsES=IRPF Payments +VATPayment=Sales tax payment +VATPayments=Sales tax payments +VATRefund=Sales tax refund +NewVATPayment=New sales tax payment +NewLocalTaxPayment=New tax %s payment +Refund=Refund +SocialContributionsPayments=Social/fiscal taxes payments +ShowVatPayment=Show VAT payment +TotalToPay=Total to pay +BalanceVisibilityDependsOnSortAndFilters=Balance is visible in this list only if table is sorted ascending on %s and filtered for 1 bank account +CustomerAccountancyCode=Customer accounting code +SupplierAccountancyCode=Vendor accounting code +CustomerAccountancyCodeShort=Cust. account. code +SupplierAccountancyCodeShort=Sup. account. code +AccountNumber=Account number +NewAccountingAccount=New account +Turnover=Turnover invoiced +TurnoverCollected=Turnover collected +SalesTurnoverMinimum=Minimum turnover +ByExpenseIncome=By expenses & incomes +ByThirdParties=By third parties +ByUserAuthorOfInvoice=By invoice author +CheckReceipt=Check deposit +CheckReceiptShort=Check deposit +LastCheckReceiptShort=Latest %s check receipts +NewCheckReceipt=New discount +NewCheckDeposit=New check deposit +NewCheckDepositOn=Create receipt for deposit on account: %s +NoWaitingChecks=No checks awaiting deposit. +DateChequeReceived=Check reception date +NbOfCheques=No. of checks +PaySocialContribution=Pay a social/fiscal tax +ConfirmPaySocialContribution=Are you sure you want to classify this social or fiscal tax as paid? +DeleteSocialContribution=Delete a social or fiscal tax payment +ConfirmDeleteSocialContribution=Are you sure you want to delete this social/fiscal tax payment? +ExportDataset_tax_1=Social and fiscal taxes and payments +CalcModeVATDebt=Mode %sVAT on commitment accounting%s. +CalcModeVATEngagement=Mode %sVAT on incomes-expenses%s. +CalcModeDebt=Analysis of known recorded invoices even if they are not yet accounted in ledger. +CalcModeEngagement=Analysis of known recorded payments, even if they are not yet accounted in Ledger. +CalcModeBookkeeping=Analysis of data journalized in Bookkeeping Ledger table. +CalcModeLT1= Mode %sRE on customer invoices - suppliers invoices%s +CalcModeLT1Debt=Mode %sRE on customer invoices%s +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=Balance of income and expenses, annual summary +AnnualSummaryInputOutputMode=Balance of income and expenses, annual summary +AnnualByCompanies=Balance of income and expenses, by predefined groups of account +AnnualByCompaniesDueDebtMode=Balance of income and expenses, detail by predefined groups, mode %sClaims-Debts%s said Commitment accounting. +AnnualByCompaniesInputOutputMode=Balance of income and expenses, detail by predefined groups, mode %sIncomes-Expenses%s said cash accounting. +SeeReportInInputOutputMode=See %sanalysis of payments%s for a calculation on actual payments made even if they are not yet accounted in Ledger. +SeeReportInDueDebtMode=See %sanalysis of invoices%s for a calculation based on known recorded invoices even if they are not yet accounted in Ledger. +SeeReportInBookkeepingMode=See %sBookeeping report%s for a calculation on Bookkeeping Ledger table +RulesAmountWithTaxIncluded=- Amounts shown are with all taxes included +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. +RulesResultInOut=- It includes the real payments made on invoices, expenses, VAT and salaries.
    - It is based on the payment dates of the invoices, expenses, VAT and salaries. The donation date for donation. +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    +RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    +RulesCATotalSaleJournal=It includes all credit lines from the Sale journal. +RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" +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 +DepositsAreIncluded=- Down payment invoices are included +LT1ReportByCustomers=Report tax 2 by third party +LT2ReportByCustomers=Report tax 3 by third party +LT1ReportByCustomersES=Report by third party RE +LT2ReportByCustomersES=Report by third party IRPF +VATReport=Sale tax report +VATReportByPeriods=Sale tax report by period +VATReportByRates=Sale tax report by rates +VATReportByThirdParties=Sale tax report by third parties +VATReportByCustomers=Sale tax report by customer +VATReportByCustomersInInputOutputMode=Report by the customer VAT collected and paid +VATReportByQuartersInInputOutputMode=Report by Sale tax rate of the tax collected and paid +LT1ReportByQuarters=Report tax 2 by rate +LT2ReportByQuarters=Report tax 3 by rate +LT1ReportByQuartersES=Report by RE rate +LT2ReportByQuartersES=Report by IRPF rate +SeeVATReportInInputOutputMode=See report %sVAT encasement%s for a standard calculation +SeeVATReportInDueDebtMode=See report %sVAT on flow%s for a calculation with an option on the flow +RulesVATInServices=- For services, the report includes the VAT regulations actually received or issued on the basis of the date of payment. +RulesVATInProducts=- For material assets, the report includes the VAT received or issued on the basis of the date of payment. +RulesVATDueServices=- For services, the report includes VAT invoices due, paid or not, based on the invoice date. +RulesVATDueProducts=- For material assets, the report includes the VAT invoices, based on the invoice date. +OptionVatInfoModuleComptabilite=Note: For material assets, it should use the date of delivery to be more fair. +ThisIsAnEstimatedValue=This is a preview, based on business events and not from the final ledger table, so final results may differ from this preview values +PercentOfInvoice=%%/invoice +NotUsedForGoods=Not used on goods +ProposalStats=Statistics on proposals +OrderStats=Statistics on orders +InvoiceStats=Statistics on bills +Dispatch=Dispatching +Dispatched=Dispatched +ToDispatch=To dispatch +ThirdPartyMustBeEditAsCustomer=Third party must be defined as a customer +SellsJournal=Sales Journal +PurchasesJournal=Purchases Journal +DescSellsJournal=Sales Journal +DescPurchasesJournal=Purchases Journal +CodeNotDef=Not defined +WarningDepositsNotIncluded=Down payment invoices are not included in this version with this accountancy module. +DatePaymentTermCantBeLowerThanObjectDate=Payment term date can't be lower than object date. +Pcg_version=Chart of accounts models +Pcg_type=Pcg type +Pcg_subtype=Pcg subtype +InvoiceLinesToDispatch=Invoice lines to dispatch +ByProductsAndServices=By product and service +RefExt=External ref +ToCreateAPredefinedInvoice=To create a template invoice, create a standard invoice, then, without validating it, click onto button "%s". +LinkedOrder=Link to order +Mode1=Method 1 +Mode2=Method 2 +CalculationRuleDesc=To calculate total VAT, there is two methods:
    Method 1 is rounding vat on each line, then summing them.
    Method 2 is summing all vat on each line, then rounding result.
    Final result may differs from few cents. Default mode is mode %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. +CalculationMode=Calculation mode +AccountancyJournal=Accounting code journal +ACCOUNTING_VAT_SOLD_ACCOUNT=Accounting account by default for VAT on sales (used if not defined on VAT dictionary setup) +ACCOUNTING_VAT_BUY_ACCOUNT=Accounting account by default for VAT on purchases (used if not defined on VAT dictionary setup) +ACCOUNTING_VAT_PAY_ACCOUNT=Accounting account by default for paying VAT +ACCOUNTING_ACCOUNT_CUSTOMER=Accounting account used for customer third parties +ACCOUNTING_ACCOUNT_CUSTOMER_Desc=The dedicated accounting account defined on third party card will be used for Subledger accounting only. This one will be used for General Ledger and as default value of Subledger accounting if dedicated customer accounting account on third party is not defined. +ACCOUNTING_ACCOUNT_SUPPLIER=Accounting account used for vendor third parties +ACCOUNTING_ACCOUNT_SUPPLIER_Desc=The dedicated accounting account defined on third party card will be used for Subledger accounting only. This one will be used for General Ledger and as default value of Subledger accounting if dedicated vendor accounting account on third party is not defined. +ConfirmCloneTax=Confirm the clone of a social/fiscal tax +CloneTaxForNextMonth=Clone it for next month +SimpleReport=Simple report +AddExtraReport=Extra reports (add foreign and national customer report) +OtherCountriesCustomersReport=Foreign customers report +BasedOnTwoFirstLettersOfVATNumberBeingDifferentFromYourCompanyCountry=Based on the two first letters of the VAT number being different from your own company's country code +SameCountryCustomersWithVAT=National customers report +BasedOnTwoFirstLettersOfVATNumberBeingTheSameAsYourCompanyCountry=Based on the two first letters of the VAT number being the same as your own company's country code +LinkedFichinter=Link to an intervention +ImportDataset_tax_contrib=Social/fiscal taxes +ImportDataset_tax_vat=Vat payments +ErrorBankAccountNotFound=Error: Bank account not found +FiscalPeriod=Accounting period +ListSocialContributionAssociatedProject=List of social contributions associated with the project +DeleteFromCat=Remove from accounting group +AccountingAffectation=Accounting assignment +LastDayTaxIsRelatedTo=Last day of period the tax is related to +VATDue=Sale tax claimed +ClaimedForThisPeriod=Claimed for the period +PaidDuringThisPeriod=Paid during this period +ByVatRate=By sale tax rate +TurnoverbyVatrate=Turnover invoiced by sale tax rate +TurnoverCollectedbyVatrate=Turnover collected by sale tax rate +PurchasebyVatrate=Purchase by sale tax rate +LabelToShow=Short label +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected +IncludeVarpaysInResults = Include various payments in reports +IncludeLoansInResults = Include loans in reports diff --git a/htdocs/langs/hi_IN/contracts.lang b/htdocs/langs/hi_IN/contracts.lang new file mode 100644 index 00000000000..47572c355ab --- /dev/null +++ b/htdocs/langs/hi_IN/contracts.lang @@ -0,0 +1,101 @@ +# Dolibarr language file - Source file is en_US - contracts +ContractsArea=Contracts area +ListOfContracts=List of contracts +AllContracts=All contracts +ContractCard=Contract card +ContractStatusNotRunning=Not running +ContractStatusDraft=Draft +ContractStatusValidated=Validated +ContractStatusClosed=Closed +ServiceStatusInitial=Not running +ServiceStatusRunning=Running +ServiceStatusNotLate=Running, not expired +ServiceStatusNotLateShort=Not expired +ServiceStatusLate=Running, expired +ServiceStatusLateShort=Expired +ServiceStatusClosed=Closed +ShowContractOfService=Show contract of service +Contracts=Contracts +ContractsSubscriptions=Contracts/Subscriptions +ContractsAndLine=Contracts and line of contracts +Contract=Contract +ContractLine=Contract line +Closing=Closing +NoContracts=No contracts +MenuServices=Services +MenuInactiveServices=Services not active +MenuRunningServices=Running services +MenuExpiredServices=Expired services +MenuClosedServices=Closed services +NewContract=New contract +NewContractSubscription=New contract/subscription +AddContract=Create contract +DeleteAContract=Delete a contract +ActivateAllOnContract=Activate all services +CloseAContract=Close a contract +ConfirmDeleteAContract=Are you sure you want to delete this contract and all its services? +ConfirmValidateContract=Are you sure you want to validate this contract under name %s? +ConfirmActivateAllOnContract=This will open all services (not yet active). Are you sure you want to open all services? +ConfirmCloseContract=This will close all services (active or not). Are you sure you want to close this contract? +ConfirmCloseService=Are you sure you want to close this service with date %s? +ValidateAContract=Validate a contract +ActivateService=Activate service +ConfirmActivateService=Are you sure you want to activate this service with date %s? +RefContract=Contract reference +DateContract=Contract date +DateServiceActivate=Service activation date +ListOfServices=List of services +ListOfInactiveServices=List of not active services +ListOfExpiredServices=List of expired active services +ListOfClosedServices=List of closed services +ListOfRunningServices=List of running services +NotActivatedServices=Inactive services (among validated contracts) +BoardNotActivatedServices=Services to activate among validated contracts +BoardNotActivatedServicesShort=Services to activate +LastContracts=Latest %s contracts +LastModifiedServices=Latest %s modified services +ContractStartDate=Start date +ContractEndDate=End date +DateStartPlanned=Planned start date +DateStartPlannedShort=Planned start date +DateEndPlanned=Planned end date +DateEndPlannedShort=Planned end date +DateStartReal=Real start date +DateStartRealShort=Real start date +DateEndReal=Real end date +DateEndRealShort=Real end date +CloseService=Close service +BoardRunningServices=Services running +BoardRunningServicesShort=Services running +BoardExpiredServices=Services expired +BoardExpiredServicesShort=Services expired +ServiceStatus=Status of service +DraftContracts=Drafts contracts +CloseRefusedBecauseOneServiceActive=Contract can't be closed as there is at least one open service on it +ActivateAllContracts=Activate all contract lines +CloseAllContracts=Close all contract lines +DeleteContractLine=Delete a contract line +ConfirmDeleteContractLine=Are you sure you want to delete this contract line? +MoveToAnotherContract=Move service into another contract. +ConfirmMoveToAnotherContract=I choosed new target contract and confirm I want to move this service into this contract. +ConfirmMoveToAnotherContractQuestion=Choose in which existing contract (of same third party), you want to move this service to? +PaymentRenewContractId=Renew contract line (number %s) +ExpiredSince=Expiration date +NoExpiredServices=No expired active services +ListOfServicesToExpireWithDuration=List of Services to expire in %s days +ListOfServicesToExpireWithDurationNeg=List of Services expired from more than %s days +ListOfServicesToExpire=List of Services to expire +NoteListOfYourExpiredServices=This list contains only services of contracts for third parties you are linked to as a sale representative. +StandardContractsTemplate=Standard contracts template +ContactNameAndSignature=For %s, name and signature: +OnlyLinesWithTypeServiceAreUsed=Only lines with type "Service" will be cloned. +ConfirmCloneContract=Are you sure you want to clone the contract %s? +LowerDateEndPlannedShort=Lower planned end date of active services +SendContractRef=Contract information __REF__ +OtherContracts=Other contracts +##### Types de contacts ##### +TypeContact_contrat_internal_SALESREPSIGN=Sales representative signing contract +TypeContact_contrat_internal_SALESREPFOLL=Sales representative following-up contract +TypeContact_contrat_external_BILLING=Billing customer contact +TypeContact_contrat_external_CUSTOMER=Follow-up customer contact +TypeContact_contrat_external_SALESREPSIGN=Signing contract customer contact diff --git a/htdocs/langs/hi_IN/cron.lang b/htdocs/langs/hi_IN/cron.lang new file mode 100644 index 00000000000..1de1251831a --- /dev/null +++ b/htdocs/langs/hi_IN/cron.lang @@ -0,0 +1,84 @@ +# Dolibarr language file - Source file is en_US - cron +# About page +# Right +Permission23101 = Read Scheduled job +Permission23102 = Create/update Scheduled job +Permission23103 = Delete Scheduled job +Permission23104 = Execute Scheduled job +# Admin +CronSetup=Scheduled job management setup +URLToLaunchCronJobs=URL to check and launch qualified cron jobs +OrToLaunchASpecificJob=Or to check and launch a specific job +KeyForCronAccess=Security key for URL to launch cron jobs +FileToLaunchCronJobs=Command line to check and launch qualified cron jobs +CronExplainHowToRunUnix=On Unix environment you should use the following crontab entry to run the command line each 5 minutes +CronExplainHowToRunWin=On Microsoft(tm) Windows environment you can use Scheduled Task tools to run the command line each 5 minutes +CronMethodDoesNotExists=Class %s does not contains any method %s +CronJobDefDesc=Cron job profiles are defined into the module descriptor file. When module is activated, they are loaded and available so you can administer the jobs from the admin tools menu %s. +CronJobProfiles=List of predefined cron job profiles +# Menu +EnabledAndDisabled=Enabled and disabled +# Page list +CronLastOutput=Latest run output +CronLastResult=Latest result code +CronCommand=Command +CronList=Scheduled jobs +CronDelete=Delete scheduled jobs +CronConfirmDelete=Are you sure you want to delete these scheduled jobs? +CronExecute=Launch scheduled job +CronConfirmExecute=Are you sure you want to execute these scheduled jobs now? +CronInfo=Scheduled job module allows to schedule jobs to execute them automatically. Jobs can also be started manually. +CronTask=Job +CronNone=None +CronDtStart=Not before +CronDtEnd=Not after +CronDtNextLaunch=Next execution +CronDtLastLaunch=Start date of latest execution +CronDtLastResult=End date of latest execution +CronFrequency=Frequency +CronClass=Class +CronMethod=Method +CronModule=Module +CronNoJobs=No jobs registered +CronPriority=Priority +CronLabel=Label +CronNbRun=Number of launches +CronMaxRun=Maximum number of launches +CronEach=Every +JobFinished=Job launched and finished +#Page card +CronAdd= Add jobs +CronEvery=Execute job each +CronObject=Instance/Object to create +CronArgs=Parameters +CronSaveSucess=Save successfully +CronNote=Comment +CronFieldMandatory=Fields %s is mandatory +CronErrEndDateStartDt=End date cannot be before start date +StatusAtInstall=Status at module installation +CronStatusActiveBtn=Enable +CronStatusInactiveBtn=Disable +CronTaskInactive=This job is disabled +CronId=Id +CronClassFile=Filename with class +CronModuleHelp=Name of Dolibarr module directory (also work with external Dolibarr module).
    For example to call the fetch method of Dolibarr Product object /htdocs/product/class/product.class.php, the value for module is
    product +CronClassFileHelp=The relative path and file name to load (path is relative to web server root directory).
    For example to call the fetch method of Dolibarr Product object htdocs/product/class/product.class.php, the value for class file name is
    product/class/product.class.php +CronObjectHelp=The object name to load.
    For example to call the fetch method of Dolibarr Product object /htdocs/product/class/product.class.php, the value for class file name is
    Product +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=The system command line to execute. +CronCreateJob=Create new Scheduled Job +CronFrom=From +# Info +# Common +CronType=Job type +CronType_method=Call method of a PHP Class +CronType_command=Shell command +CronCannotLoadClass=Cannot load class file %s (to use class %s) +CronCannotLoadObject=Class file %s was loaded, but object %s was not found into it +UseMenuModuleToolsToAddCronJobs=Go into menu "Home - Admin tools - Scheduled jobs" to see and edit scheduled jobs. +JobDisabled=Job disabled +MakeLocalDatabaseDumpShort=Local database backup +MakeLocalDatabaseDump=Create a local database dump. Parameters are: compression ('gz' or 'bz' or 'none'), backup type ('mysql', 'pgsql', 'auto'), 1, 'auto' or filename to build, number of backup files to keep +WarningCronDelayed=Attention, for performance purpose, whatever is next date of execution of enabled jobs, your jobs may be delayed to a maximum of %s hours, before being run. +DATAPOLICYJob=Data cleaner and anonymizer diff --git a/htdocs/langs/hi_IN/deliveries.lang b/htdocs/langs/hi_IN/deliveries.lang new file mode 100644 index 00000000000..1f48c01de75 --- /dev/null +++ b/htdocs/langs/hi_IN/deliveries.lang @@ -0,0 +1,31 @@ +# Dolibarr language file - Source file is en_US - deliveries +Delivery=Delivery +DeliveryRef=Ref Delivery +DeliveryCard=Receipt card +DeliveryOrder=Delivery receipt +DeliveryDate=Delivery date +CreateDeliveryOrder=Generate delivery receipt +DeliveryStateSaved=Delivery state saved +SetDeliveryDate=Set shipping date +ValidateDeliveryReceipt=Validate delivery receipt +ValidateDeliveryReceiptConfirm=Are you sure you want to validate this delivery receipt? +DeleteDeliveryReceipt=Delete delivery receipt +DeleteDeliveryReceiptConfirm=Are you sure you want to delete delivery receipt %s? +DeliveryMethod=Delivery method +TrackingNumber=Tracking number +DeliveryNotValidated=Delivery not validated +StatusDeliveryCanceled=Canceled +StatusDeliveryDraft=Draft +StatusDeliveryValidated=Received +# merou PDF model +NameAndSignature=Name and Signature: +ToAndDate=To___________________________________ on ____/_____/__________ +GoodStatusDeclaration=Have received the goods above in good condition, +Deliverer=Deliverer: +Sender=Sender +Recipient=Recipient +ErrorStockIsNotEnough=There's not enough stock +Shippable=Shippable +NonShippable=Not Shippable +ShowReceiving=Show delivery receipt +NonExistentOrder=Nonexistent order diff --git a/htdocs/langs/hi_IN/dict.lang b/htdocs/langs/hi_IN/dict.lang new file mode 100644 index 00000000000..ec315d97142 --- /dev/null +++ b/htdocs/langs/hi_IN/dict.lang @@ -0,0 +1,359 @@ +# Dolibarr language file - Source file is en_US - dict +CountryFR=France +CountryBE=Belgium +CountryIT=Italy +CountryES=Spain +CountryDE=Germany +CountryCH=Switzerland +# Warning, country code GB is for United Kingdom. UK Does not exists as country code in ISO standard. +CountryGB=United Kingdom +CountryUK=United Kingdom +CountryIE=Ireland +CountryCN=China +CountryTN=Tunisia +CountryUS=United States +CountryMA=Morocco +CountryDZ=Algeria +CountryCA=Canada +CountryTG=Togo +CountryGA=Gabon +CountryNL=Netherlands +CountryHU=Hungary +CountryRU=Russia +CountrySE=Sweden +CountryCI=Ivoiry Coast +CountrySN=Senegal +CountryAR=Argentina +CountryCM=Cameroon +CountryPT=Portugal +CountrySA=Saudi Arabia +CountryMC=Monaco +CountryAU=Australia +CountrySG=Singapore +CountryAF=Afghanistan +CountryAX=Åland Islands +CountryAL=Albania +CountryAS=American Samoa +CountryAD=Andorra +CountryAO=Angola +CountryAI=Anguilla +CountryAQ=Antarctica +CountryAG=Antigua and Barbuda +CountryAM=Armenia +CountryAW=Aruba +CountryAT=Austria +CountryAZ=Azerbaijan +CountryBS=Bahamas +CountryBH=Bahrain +CountryBD=Bangladesh +CountryBB=Barbados +CountryBY=Belarus +CountryBZ=Belize +CountryBJ=Benin +CountryBM=Bermuda +CountryBT=Bhutan +CountryBO=Bolivia +CountryBA=Bosnia and Herzegovina +CountryBW=Botswana +CountryBV=Bouvet Island +CountryBR=Brazil +CountryIO=British Indian Ocean Territory +CountryBN=Brunei Darussalam +CountryBG=Bulgaria +CountryBF=Burkina Faso +CountryBI=Burundi +CountryKH=Cambodia +CountryCV=Cape Verde +CountryKY=Cayman Islands +CountryCF=Central African Republic +CountryTD=Chad +CountryCL=Chile +CountryCX=Christmas Island +CountryCC=Cocos (Keeling) Islands +CountryCO=Colombia +CountryKM=Comoros +CountryCG=Congo +CountryCD=Congo, The Democratic Republic of the +CountryCK=Cook Islands +CountryCR=Costa Rica +CountryHR=Croatia +CountryCU=Cuba +CountryCY=Cyprus +CountryCZ=Czech Republic +CountryDK=Denmark +CountryDJ=Djibouti +CountryDM=Dominica +CountryDO=Dominican Republic +CountryEC=Ecuador +CountryEG=Egypt +CountrySV=El Salvador +CountryGQ=Equatorial Guinea +CountryER=Eritrea +CountryEE=Estonia +CountryET=Ethiopia +CountryFK=Falkland Islands +CountryFO=Faroe Islands +CountryFJ=Fiji Islands +CountryFI=Finland +CountryGF=French Guiana +CountryPF=French Polynesia +CountryTF=French Southern Territories +CountryGM=Gambia +CountryGE=Georgia +CountryGH=Ghana +CountryGI=Gibraltar +CountryGR=Greece +CountryGL=Greenland +CountryGD=Grenada +CountryGP=Guadeloupe +CountryGU=Guam +CountryGT=Guatemala +CountryGN=Guinea +CountryGW=Guinea-Bissau +CountryGY=Guyana +CountryHT=Haïti +CountryHM=Heard Island and McDonald +CountryVA=Holy See (Vatican City State) +CountryHN=Honduras +CountryHK=Hong Kong +CountryIS=Iceland +CountryIN=India +CountryID=Indonesia +CountryIR=Iran +CountryIQ=Iraq +CountryIL=Israel +CountryJM=Jamaica +CountryJP=Japan +CountryJO=Jordan +CountryKZ=Kazakhstan +CountryKE=Kenya +CountryKI=Kiribati +CountryKP=North Korea +CountryKR=South Korea +CountryKW=Kuwait +CountryKG=Kyrgyzstan +CountryLA=Lao +CountryLV=Latvia +CountryLB=Lebanon +CountryLS=Lesotho +CountryLR=Liberia +CountryLY=Libyan +CountryLI=Liechtenstein +CountryLT=Lithuania +CountryLU=Luxembourg +CountryMO=Macao +CountryMK=Macedonia, the former Yugoslav of +CountryMG=Madagascar +CountryMW=Malawi +CountryMY=Malaysia +CountryMV=Maldives +CountryML=Mali +CountryMT=Malta +CountryMH=Marshall Islands +CountryMQ=Martinique +CountryMR=Mauritania +CountryMU=Mauritius +CountryYT=Mayotte +CountryMX=Mexico +CountryFM=Micronesia +CountryMD=Moldova +CountryMN=Mongolia +CountryMS=Monserrat +CountryMZ=Mozambique +CountryMM=Myanmar (Burma) +CountryNA=Namibia +CountryNR=Nauru +CountryNP=Nepal +CountryAN=Netherlands Antilles +CountryNC=New Caledonia +CountryNZ=New Zealand +CountryNI=Nicaragua +CountryNE=Niger +CountryNG=Nigeria +CountryNU=Niue +CountryNF=Norfolk Island +CountryMP=Northern Mariana Islands +CountryNO=Norway +CountryOM=Oman +CountryPK=Pakistan +CountryPW=Palau +CountryPS=Palestinian Territory, Occupied +CountryPA=Panama +CountryPG=Papua New Guinea +CountryPY=Paraguay +CountryPE=Peru +CountryPH=Philippines +CountryPN=Pitcairn Islands +CountryPL=Poland +CountryPR=Puerto Rico +CountryQA=Qatar +CountryRE=Reunion +CountryRO=Romania +CountryRW=Rwanda +CountrySH=Saint Helena +CountryKN=Saint Kitts and Nevis +CountryLC=Saint Lucia +CountryPM=Saint Pierre and Miquelon +CountryVC=Saint Vincent and Grenadines +CountryWS=Samoa +CountrySM=San Marino +CountryST=Sao Tome and Principe +CountryRS=Serbia +CountrySC=Seychelles +CountrySL=Sierra Leone +CountrySK=Slovakia +CountrySI=Slovenia +CountrySB=Solomon Islands +CountrySO=Somalia +CountryZA=South Africa +CountryGS=South Georgia and the South Sandwich Islands +CountryLK=Sri Lanka +CountrySD=Sudan +CountrySR=Suriname +CountrySJ=Svalbard and Jan Mayen +CountrySZ=Swaziland +CountrySY=Syrian +CountryTW=Taiwan +CountryTJ=Tajikistan +CountryTZ=Tanzania +CountryTH=Thailand +CountryTL=Timor-Leste +CountryTK=Tokelau +CountryTO=Tonga +CountryTT=Trinidad and Tobago +CountryTR=Turkey +CountryTM=Turkmenistan +CountryTC=Turks and Caicos Islands +CountryTV=Tuvalu +CountryUG=Uganda +CountryUA=Ukraine +CountryAE=United Arab Emirates +CountryUM=United States Minor Outlying Islands +CountryUY=Uruguay +CountryUZ=Uzbekistan +CountryVU=Vanuatu +CountryVE=Venezuela +CountryVN=Viet Nam +CountryVG=Virgin Islands, British +CountryVI=Virgin Islands, U.S. +CountryWF=Wallis and Futuna +CountryEH=Western Sahara +CountryYE=Yemen +CountryZM=Zambia +CountryZW=Zimbabwe +CountryGG=Guernsey +CountryIM=Isle of Man +CountryJE=Jersey +CountryME=Montenegro +CountryBL=Saint Barthelemy +CountryMF=Saint Martin + +##### Civilities ##### +CivilityMME=Mrs. +CivilityMR=Mr. +CivilityMLE=Ms. +CivilityMTRE=Master +CivilityDR=Doctor +##### Currencies ##### +Currencyeuros=Euros +CurrencyAUD=AU Dollars +CurrencySingAUD=AU Dollar +CurrencyCAD=CAN Dollars +CurrencySingCAD=CAN Dollar +CurrencyCHF=Swiss Francs +CurrencySingCHF=Swiss Franc +CurrencyEUR=Euros +CurrencySingEUR=Euro +CurrencyFRF=French Francs +CurrencySingFRF=French Franc +CurrencyGBP=GB Pounds +CurrencySingGBP=GB Pound +CurrencyINR=Indian rupees +CurrencySingINR=Indian rupee +CurrencyMAD=Dirham +CurrencySingMAD=Dirham +CurrencyMGA=Ariary +CurrencySingMGA=Ariary +CurrencyMUR=Mauritius rupees +CurrencySingMUR=Mauritius rupee +CurrencyNOK=Norwegian krones +CurrencySingNOK=Norwegian kronas +CurrencyTND=Tunisian dinars +CurrencySingTND=Tunisian dinar +CurrencyUSD=US Dollars +CurrencySingUSD=US Dollar +CurrencyUAH=Hryvnia +CurrencySingUAH=Hryvnia +CurrencyXAF=CFA Francs BEAC +CurrencySingXAF=CFA Franc BEAC +CurrencyXOF=CFA Francs BCEAO +CurrencySingXOF=CFA Franc BCEAO +CurrencyXPF=CFP Francs +CurrencySingXPF=CFP Franc +CurrencyCentEUR=cents +CurrencyCentSingEUR=cent +CurrencyCentINR=paisa +CurrencyCentSingINR=paise +CurrencyThousandthSingTND=thousandth +#### Input reasons ##### +DemandReasonTypeSRC_INTE=Internet +DemandReasonTypeSRC_CAMP_MAIL=Mailing campaign +DemandReasonTypeSRC_CAMP_EMAIL=EMailing campaign +DemandReasonTypeSRC_CAMP_PHO=Phone campaign +DemandReasonTypeSRC_CAMP_FAX=Fax campaign +DemandReasonTypeSRC_COMM=Commercial contact +DemandReasonTypeSRC_SHOP=Shop contact +DemandReasonTypeSRC_WOM=Word of mouth +DemandReasonTypeSRC_PARTNER=Partner +DemandReasonTypeSRC_EMPLOYEE=Employee +DemandReasonTypeSRC_SPONSORING=Sponsorship +DemandReasonTypeSRC_SRC_CUSTOMER=Incoming contact of a customer +#### Paper formats #### +PaperFormatEU4A0=Format 4A0 +PaperFormatEU2A0=Format 2A0 +PaperFormatEUA0=Format A0 +PaperFormatEUA1=Format A1 +PaperFormatEUA2=Format A2 +PaperFormatEUA3=Format A3 +PaperFormatEUA4=Format A4 +PaperFormatEUA5=Format A5 +PaperFormatEUA6=Format A6 +PaperFormatUSLETTER=Format Letter US +PaperFormatUSLEGAL=Format Legal US +PaperFormatUSEXECUTIVE=Format Executive US +PaperFormatUSLEDGER=Format Ledger/Tabloid +PaperFormatCAP1=Format P1 Canada +PaperFormatCAP2=Format P2 Canada +PaperFormatCAP3=Format P3 Canada +PaperFormatCAP4=Format P4 Canada +PaperFormatCAP5=Format P5 Canada +PaperFormatCAP6=Format P6 Canada +#### Expense report categories #### +ExpAutoCat=Car +ExpCycloCat=Moped +ExpMotoCat=Motorbike +ExpAuto3CV=3 CV +ExpAuto4CV=4 CV +ExpAuto5CV=5 CV +ExpAuto6CV=6 CV +ExpAuto7CV=7 CV +ExpAuto8CV=8 CV +ExpAuto9CV=9 CV +ExpAuto10CV=10 CV +ExpAuto11CV=11 CV +ExpAuto12CV=12 CV +ExpAuto3PCV=3 CV and more +ExpAuto4PCV=4 CV and more +ExpAuto5PCV=5 CV and more +ExpAuto6PCV=6 CV and more +ExpAuto7PCV=7 CV and more +ExpAuto8PCV=8 CV and more +ExpAuto9PCV=9 CV and more +ExpAuto10PCV=10 CV and more +ExpAuto11PCV=11 CV and more +ExpAuto12PCV=12 CV and more +ExpAuto13PCV=13 CV and more +ExpCyclo=Capacity lower to 50cm3 +ExpMoto12CV=Motorbike 1 or 2 CV +ExpMoto345CV=Motorbike 3, 4 or 5 CV +ExpMoto5PCV=Motorbike 5 CV and more diff --git a/htdocs/langs/hi_IN/donations.lang b/htdocs/langs/hi_IN/donations.lang new file mode 100644 index 00000000000..de4bdf68f03 --- /dev/null +++ b/htdocs/langs/hi_IN/donations.lang @@ -0,0 +1,34 @@ +# Dolibarr language file - Source file is en_US - donations +Donation=Donation +Donations=Donations +DonationRef=Donation ref. +Donor=Donor +AddDonation=Create a donation +NewDonation=New donation +DeleteADonation=Delete a donation +ConfirmDeleteADonation=Are you sure you want to delete this donation? +PublicDonation=Public donation +DonationsArea=Donations area +DonationStatusPromiseNotValidated=Draft promise +DonationStatusPromiseValidated=Validated promise +DonationStatusPaid=Donation received +DonationStatusPromiseNotValidatedShort=Draft +DonationStatusPromiseValidatedShort=Validated +DonationStatusPaidShort=Received +DonationTitle=Donation receipt +DonationDate=Donation date +DonationDatePayment=Payment date +ValidPromess=Validate promise +DonationReceipt=Donation receipt +DonationsModels=Documents models for donation receipts +LastModifiedDonations=Latest %s modified donations +DonationRecipient=Donation recipient +IConfirmDonationReception=The recipient declare reception, as a donation, of the following amount +MinimumAmount=Minimum amount is %s +FreeTextOnDonations=Free text to show in footer +FrenchOptions=Options for France +DONATION_ART200=Show article 200 from CGI if you are concerned +DONATION_ART238=Show article 238 from CGI if you are concerned +DONATION_ART885=Show article 885 from CGI if you are concerned +DonationPayment=Donation payment +DonationValidated=Donation %s validated diff --git a/htdocs/langs/hi_IN/ecm.lang b/htdocs/langs/hi_IN/ecm.lang new file mode 100644 index 00000000000..369ac6dfdfa --- /dev/null +++ b/htdocs/langs/hi_IN/ecm.lang @@ -0,0 +1,52 @@ +# Dolibarr language file - Source file is en_US - ecm +ECMNbOfDocs=No. of documents in directory +ECMSection=Directory +ECMSectionManual=Manual directory +ECMSectionAuto=Automatic directory +ECMSectionsManual=Manual tree +ECMSectionsAuto=Automatic tree +ECMSections=Directories +ECMRoot=ECM Root +ECMNewSection=New directory +ECMAddSection=Add directory +ECMCreationDate=Creation date +ECMNbOfFilesInDir=Number of files in directory +ECMNbOfSubDir=Number of sub-directories +ECMNbOfFilesInSubDir=Number of files in sub-directories +ECMCreationUser=Creator +ECMArea=DMS/ECM area +ECMAreaDesc=The DMS/ECM (Document Management System / Electronic Content Management) area allows you to save, share and search quickly all kind of documents in Dolibarr. +ECMAreaDesc2=* Automatic directories are filled automatically when adding documents from card of an element.
    * Manual directories can be used to save documents not linked to a particular element. +ECMSectionWasRemoved=Directory %s has been deleted. +ECMSectionWasCreated=Directory %s has been created. +ECMSearchByKeywords=Search by keywords +ECMSearchByEntity=Search by object +ECMSectionOfDocuments=Directories of documents +ECMTypeAuto=Automatic +ECMDocsBySocialContributions=Documents linked to social or fiscal taxes +ECMDocsByThirdParties=Documents linked to third parties +ECMDocsByProposals=Documents linked to proposals +ECMDocsByOrders=Documents linked to customers orders +ECMDocsByContracts=Documents linked to contracts +ECMDocsByInvoices=Documents linked to customers invoices +ECMDocsByProducts=Documents linked to products +ECMDocsByProjects=Documents linked to projects +ECMDocsByUsers=Documents linked to users +ECMDocsByInterventions=Documents linked to interventions +ECMDocsByExpenseReports=Documents linked to expense reports +ECMDocsByHolidays=Documents linked to holidays +ECMDocsBySupplierProposals=Documents linked to vendor proposals +ECMNoDirectoryYet=No directory created +ShowECMSection=Show directory +DeleteSection=Remove directory +ConfirmDeleteSection=Can you confirm you want to delete the directory %s? +ECMDirectoryForFiles=Relative directory for files +CannotRemoveDirectoryContainsFilesOrDirs=Removal not possible because it contains some files or sub-directories +CannotRemoveDirectoryContainsFiles=Removal not possible because it contains some files +ECMFileManager=File manager +ECMSelectASection=Select a directory in the tree... +DirNotSynchronizedSyncFirst=This directory seems to be created or modified outside ECM module. You must click on "Resync" button first to synchronize disk and database to get content of this directory. +ReSyncListOfDir=Resync list of directories +HashOfFileContent=Hash of file content +NoDirectoriesFound=No directories found +FileNotYetIndexedInDatabase=File not yet indexed into database (try to re-upload it) diff --git a/htdocs/langs/hi_IN/errors.lang b/htdocs/langs/hi_IN/errors.lang new file mode 100644 index 00000000000..7c67aeca8b5 --- /dev/null +++ b/htdocs/langs/hi_IN/errors.lang @@ -0,0 +1,265 @@ +# Dolibarr language file - Source file is en_US - errors + +# No errors +NoErrorCommitIsDone=No error, we commit +# Errors +ErrorButCommitIsDone=Errors found but we validate despite this +ErrorBadEMail=Email %s is wrong +ErrorBadUrl=Url %s is wrong +ErrorBadValueForParamNotAString=Bad value for your parameter. It appends generally when translation is missing. +ErrorLoginAlreadyExists=Login %s already exists. +ErrorGroupAlreadyExists=Group %s already exists. +ErrorRecordNotFound=Record not found. +ErrorFailToCopyFile=Failed to copy file '%s' into '%s'. +ErrorFailToCopyDir=Failed to copy directory '%s' into '%s'. +ErrorFailToRenameFile=Failed to rename file '%s' into '%s'. +ErrorFailToDeleteFile=Failed to remove file '%s'. +ErrorFailToCreateFile=Failed to create file '%s'. +ErrorFailToRenameDir=Failed to rename directory '%s' into '%s'. +ErrorFailToCreateDir=Failed to create directory '%s'. +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=This bank account is a cash account, so it accepts payments of type cash only. +ErrorFromToAccountsMustDiffers=Source and targets bank accounts must be different. +ErrorBadThirdPartyName=Bad value for third-party name +ErrorProdIdIsMandatory=The %s is mandatory +ErrorBadCustomerCodeSyntax=Bad syntax for customer code +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. +ErrorCustomerCodeRequired=Customer code required +ErrorBarCodeRequired=Barcode required +ErrorCustomerCodeAlreadyUsed=Customer code already used +ErrorBarCodeAlreadyUsed=Barcode already used +ErrorPrefixRequired=Prefix required +ErrorBadSupplierCodeSyntax=Bad syntax for vendor code +ErrorSupplierCodeRequired=Vendor code required +ErrorSupplierCodeAlreadyUsed=Vendor code already used +ErrorBadParameters=Bad parameters +ErrorBadValueForParameter=Wrong value '%s' for parameter '%s' +ErrorBadImageFormat=Image file has not a supported format (Your PHP does not support functions to convert images of this format) +ErrorBadDateFormat=Value '%s' has wrong date format +ErrorWrongDate=Date is not correct! +ErrorFailedToWriteInDir=Failed to write in directory %s +ErrorFoundBadEmailInFile=Found incorrect email syntax for %s lines in file (example line %s with email=%s) +ErrorUserCannotBeDelete=User cannot be deleted. Maybe it is associated to Dolibarr entities. +ErrorFieldsRequired=Some required fields were not filled. +ErrorSubjectIsRequired=The email topic is required +ErrorFailedToCreateDir=Failed to create a directory. Check that Web server user has permissions to write into Dolibarr documents directory. If parameter safe_mode is enabled on this PHP, check that Dolibarr php files owns to web server user (or group). +ErrorNoMailDefinedForThisUser=No mail defined for this user +ErrorFeatureNeedJavascript=This feature need javascript to be activated to work. Change this in setup - display. +ErrorTopMenuMustHaveAParentWithId0=A menu of type 'Top' can't have a parent menu. Put 0 in parent menu or choose a menu of type 'Left'. +ErrorLeftMenuMustHaveAParentId=A menu of type 'Left' must have a parent id. +ErrorFileNotFound=File %s not found (Bad path, wrong permissions or access denied by PHP openbasedir or safe_mode parameter) +ErrorDirNotFound=Directory %s not found (Bad path, wrong permissions or access denied by PHP openbasedir or safe_mode parameter) +ErrorFunctionNotAvailableInPHP=Function %s is required for this feature but is not available in this version/setup of PHP. +ErrorDirAlreadyExists=A directory with this name already exists. +ErrorFileAlreadyExists=A file with this name already exists. +ErrorPartialFile=File not received completely by server. +ErrorNoTmpDir=Temporary directy %s does not exists. +ErrorUploadBlockedByAddon=Upload blocked by a PHP/Apache plugin. +ErrorFileSizeTooLarge=File size is too large. +ErrorFieldTooLong=Field %s is too long. +ErrorSizeTooLongForIntType=Size too long for int type (%s digits maximum) +ErrorSizeTooLongForVarcharType=Size too long for string type (%s chars maximum) +ErrorNoValueForSelectType=Please fill value for select list +ErrorNoValueForCheckBoxType=Please fill value for checkbox list +ErrorNoValueForRadioType=Please fill value for radio list +ErrorBadFormatValueList=The list value cannot have more than one comma: %s, but need at least one: key,value +ErrorFieldCanNotContainSpecialCharacters=The field %s must not contains special characters. +ErrorFieldCanNotContainSpecialNorUpperCharacters=The field %s must not contain special characters, nor upper case characters and cannot contain only numbers. +ErrorFieldMustHaveXChar=The field %s must have at least %s characters. +ErrorNoAccountancyModuleLoaded=No accountancy module activated +ErrorExportDuplicateProfil=This profile name already exists for this export set. +ErrorLDAPSetupNotComplete=Dolibarr-LDAP matching is not complete. +ErrorLDAPMakeManualTest=A .ldif file has been generated in directory %s. Try to load it manually from command line to have more information on errors. +ErrorCantSaveADoneUserWithZeroPercentage=Can't save an action with "status not started" if field "done by" is also filled. +ErrorRefAlreadyExists=Ref used for creation already exists. +ErrorPleaseTypeBankTransactionReportName=Please enter the bank statement name where the entry has to be reported (Format YYYYMM or YYYYMMDD) +ErrorRecordHasChildren=Failed to delete record since it has some child records. +ErrorRecordHasAtLeastOneChildOfType=Object has at least one child of type %s +ErrorRecordIsUsedCantDelete=Can't delete record. It is already used or included into another object. +ErrorModuleRequireJavascript=Javascript must not be disabled to have this feature working. To enable/disable Javascript, go to menu Home->Setup->Display. +ErrorPasswordsMustMatch=Both typed passwords must match each other +ErrorContactEMail=A technical error occured. Please, contact administrator to following email %s and provide the error code %s in your message, or add a screen copy of this page. +ErrorWrongValueForField=Field %s: '%s' does not match regex rule %s +ErrorFieldValueNotIn=Field %s: '%s' is not a value found in field %s of %s +ErrorFieldRefNotIn=Field %s: '%s' is not a %s existing ref +ErrorsOnXLines=%s errors found +ErrorFileIsInfectedWithAVirus=The antivirus program was not able to validate the file (file might be infected by a virus) +ErrorSpecialCharNotAllowedForField=Special characters are not allowed for field "%s" +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 %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 +ErrorMaxNumberReachForThisMask=Maximum number reached for this mask +ErrorCounterMustHaveMoreThan3Digits=Counter must have more than 3 digits +ErrorSelectAtLeastOne=Error, select at least one entry. +ErrorDeleteNotPossibleLineIsConsolidated=Delete not possible because record is linked to a bank transaction that is conciliated +ErrorProdIdAlreadyExist=%s is assigned to another third +ErrorFailedToSendPassword=Failed to send password +ErrorFailedToLoadRSSFile=Fails to get RSS feed. Try to add constant MAIN_SIMPLEXMLLOAD_DEBUG if error messages does not provide enough information. +ErrorForbidden=Access denied.
    You try to access to a page, area or feature of a disabled module or without being in an authenticated session or that is not allowed to your user. +ErrorForbidden2=Permission for this login can be defined by your Dolibarr administrator from menu %s->%s. +ErrorForbidden3=It seems that Dolibarr is not used through an authenticated session. Take a look at Dolibarr setup documentation to know how to manage authentications (htaccess, mod_auth or other...). +ErrorNoImagickReadimage=Class Imagick is not found in this PHP. No preview can be available. Administrators can disable this tab from menu Setup - Display. +ErrorRecordAlreadyExists=Record already exists +ErrorLabelAlreadyExists=This label already exists +ErrorCantReadFile=Failed to read file '%s' +ErrorCantReadDir=Failed to read directory '%s' +ErrorBadLoginPassword=Bad value for login or password +ErrorLoginDisabled=Your account has been disabled +ErrorFailedToRunExternalCommand=Failed to run external command. Check it is available and runnable by your PHP server. If PHP Safe Mode is enabled, check that command is inside a directory defined by parameter safe_mode_exec_dir. +ErrorFailedToChangePassword=Failed to change password +ErrorLoginDoesNotExists=User with login %s could not be found. +ErrorLoginHasNoEmail=This user has no email address. Process aborted. +ErrorBadValueForCode=Bad value for security code. Try again with new value... +ErrorBothFieldCantBeNegative=Fields %s and %s can't be both negative +ErrorFieldCantBeNegativeOnInvoice=Field %s cannot be negative on this type of invoice. If you need to add a discount line, just create the discount first (from field '%s' in thirdparty card) and apply it to the invoice. +ErrorLinesCantBeNegativeForOneVATRate=Total of lines can't be negative for a given VAT rate. +ErrorLinesCantBeNegativeOnDeposits=Lines can't be negative in a deposit. You will face problems when you will need to consume the deposit in final invoice if you do so. +ErrorQtyForCustomerInvoiceCantBeNegative=Quantity for line into customer invoices can't be negative +ErrorWebServerUserHasNotPermission=User account %s used to execute web server has no permission for that +ErrorNoActivatedBarcode=No barcode type activated +ErrUnzipFails=Failed to unzip %s with ZipArchive +ErrNoZipEngine=No engine to zip/unzip %s file in this PHP +ErrorFileMustBeADolibarrPackage=The file %s must be a Dolibarr zip package +ErrorModuleFileRequired=You must select a Dolibarr module package file +ErrorPhpCurlNotInstalled=The PHP CURL is not installed, this is essential to talk with Paypal +ErrorFailedToAddToMailmanList=Failed to add record %s to Mailman list %s or SPIP base +ErrorFailedToRemoveToMailmanList=Failed to remove record %s to Mailman list %s or SPIP base +ErrorNewValueCantMatchOldValue=New value can't be equal to old one +ErrorFailedToValidatePasswordReset=Failed to reinit password. May be the reinit was already done (this link can be used only one time). If not, try to restart the reinit process. +ErrorToConnectToMysqlCheckInstance=Connect to database fails. Check database server is running (for example, with mysql/mariadb, you can launch it from command line with 'sudo service mysql start'). +ErrorFailedToAddContact=Failed to add contact +ErrorDateMustBeBeforeToday=The date cannot be greater than today +ErrorPaymentModeDefinedToWithoutSetup=A payment mode was set to type %s but setup of module Invoice was not completed to define information to show for this payment mode. +ErrorPHPNeedModule=Error, your PHP must have module %s installed to use this feature. +ErrorOpenIDSetupNotComplete=You setup Dolibarr config file to allow OpenID authentication, but URL of OpenID service is not defined into constant %s +ErrorWarehouseMustDiffers=Source and target warehouses must differs +ErrorBadFormat=Bad format! +ErrorMemberNotLinkedToAThirpartyLinkOrCreateFirst=Error, this member is not yet linked to any third party. Link member to an existing third party or create a new third party before creating subscription with invoice. +ErrorThereIsSomeDeliveries=Error, there is some deliveries linked to this shipment. Deletion refused. +ErrorCantDeletePaymentReconciliated=Can't delete a payment that had generated a bank entry that was reconciled +ErrorCantDeletePaymentSharedWithPayedInvoice=Can't delete a payment shared by at least one invoice with status Paid +ErrorPriceExpression1=Cannot assign to constant '%s' +ErrorPriceExpression2=Cannot redefine built-in function '%s' +ErrorPriceExpression3=Undefined variable '%s' in function definition +ErrorPriceExpression4=Illegal character '%s' +ErrorPriceExpression5=Unexpected '%s' +ErrorPriceExpression6=Wrong number of arguments (%s given, %s expected) +ErrorPriceExpression8=Unexpected operator '%s' +ErrorPriceExpression9=An unexpected error occured +ErrorPriceExpression10=Operator '%s' lacks operand +ErrorPriceExpression11=Expecting '%s' +ErrorPriceExpression14=Division by zero +ErrorPriceExpression17=Undefined variable '%s' +ErrorPriceExpression19=Expression not found +ErrorPriceExpression20=Empty expression +ErrorPriceExpression21=Empty result '%s' +ErrorPriceExpression22=Negative result '%s' +ErrorPriceExpression23=Unknown or non set variable '%s' in %s +ErrorPriceExpression24=Variable '%s' exists but has no value +ErrorPriceExpressionInternal=Internal error '%s' +ErrorPriceExpressionUnknown=Unknown error '%s' +ErrorSrcAndTargetWarehouseMustDiffers=Source and target warehouses must differs +ErrorTryToMakeMoveOnProductRequiringBatchData=Error, trying to make a stock movement without lot/serial information, on product '%s' requiring lot/serial information +ErrorCantSetReceptionToTotalDoneWithReceptionToApprove=All recorded receptions must first be verified (approved or denied) before being allowed to do this action +ErrorCantSetReceptionToTotalDoneWithReceptionDenied=All recorded receptions must first be verified (approved) before being allowed to do this action +ErrorGlobalVariableUpdater0=HTTP request failed with error '%s' +ErrorGlobalVariableUpdater1=Invalid JSON format '%s' +ErrorGlobalVariableUpdater2=Missing parameter '%s' +ErrorGlobalVariableUpdater3=The requested data was not found in result +ErrorGlobalVariableUpdater4=SOAP client failed with error '%s' +ErrorGlobalVariableUpdater5=No global variable selected +ErrorFieldMustBeANumeric=Field %s must be a numeric value +ErrorMandatoryParametersNotProvided=Mandatory parameter(s) not provided +ErrorOppStatusRequiredIfAmount=You set an estimated amount for this lead. So you must also enter it's status. +ErrorFailedToLoadModuleDescriptorForXXX=Failed to load module descriptor class for %s +ErrorBadDefinitionOfMenuArrayInModuleDescriptor=Bad Definition Of Menu Array In Module Descriptor (bad value for key fk_menu) +ErrorSavingChanges=An error has occurred when saving the changes +ErrorWarehouseRequiredIntoShipmentLine=Warehouse is required on the line to ship +ErrorFileMustHaveFormat=File must have format %s +ErrorSupplierCountryIsNotDefined=Country for this vendor is not defined. Correct this first. +ErrorsThirdpartyMerge=Failed to merge the two records. Request canceled. +ErrorStockIsNotEnoughToAddProductOnOrder=Stock is not enough for product %s to add it into a new order. +ErrorStockIsNotEnoughToAddProductOnInvoice=Stock is not enough for product %s to add it into a new invoice. +ErrorStockIsNotEnoughToAddProductOnShipment=Stock is not enough for product %s to add it into a new shipment. +ErrorStockIsNotEnoughToAddProductOnProposal=Stock is not enough for product %s to add it into a new proposal. +ErrorFailedToLoadLoginFileForMode=Failed to get the login key for mode '%s'. +ErrorModuleNotFound=File of module was not found. +ErrorFieldAccountNotDefinedForBankLine=Value for Accounting account not defined for source line id %s (%s) +ErrorFieldAccountNotDefinedForInvoiceLine=Value for Accounting account not defined for invoice id %s (%s) +ErrorFieldAccountNotDefinedForLine=Value for Accounting account not defined for the line (%s) +ErrorBankStatementNameMustFollowRegex=Error, bank statement name must follow the following syntax rule %s +ErrorPhpMailDelivery=Check that you don't use a too high number of recipients and that your email content is not similar to a Spam. Ask also your administrator to check firewall and server logs files for a more complete information. +ErrorUserNotAssignedToTask=User must be assigned to task to be able to enter time consumed. +ErrorTaskAlreadyAssigned=Task already assigned to user +ErrorModuleFileSeemsToHaveAWrongFormat=The module package seems to have a wrong format. +ErrorModuleFileSeemsToHaveAWrongFormat2=At least one mandatory directory must exists into zip of module: %s or %s +ErrorFilenameDosNotMatchDolibarrPackageRules=The name of the module package (%s) does not match expected name syntax: %s +ErrorDuplicateTrigger=Error, duplicate trigger name %s. Already loaded from %s. +ErrorNoWarehouseDefined=Error, no warehouses defined. +ErrorBadLinkSourceSetButBadValueForRef=The link you use is not valid. A 'source' for payment is defined, but value for 'ref' is not valid. +ErrorTooManyErrorsProcessStopped=Too many errors. Process was stopped. +ErrorMassValidationNotAllowedWhenStockIncreaseOnAction=Mass validation is not possible when option to increase/decrease stock is set on this action (you must validate one by one so you can define the warehouse to increase/decrease) +ErrorObjectMustHaveStatusDraftToBeValidated=Object %s must have status 'Draft' to be validated. +ErrorObjectMustHaveLinesToBeValidated=Object %s must have lines to be validated. +ErrorOnlyInvoiceValidatedCanBeSentInMassAction=Only validated invoices can be sent using the "Send by email" mass action. +ErrorChooseBetweenFreeEntryOrPredefinedProduct=You must choose if article is a predefined product or not +ErrorDiscountLargerThanRemainToPaySplitItBefore=The discount you try to apply is larger than remain to pay. Split the discount in 2 smaller discounts before. +ErrorFileNotFoundWithSharedLink=File was not found. May be the share key was modified or file was removed recently. +ErrorProductBarCodeAlreadyExists=The product barcode %s already exists on another product reference. +ErrorNoteAlsoThatSubProductCantBeFollowedByLot=Note also that using virtual product to have auto increase/decrease of subproducts is not possible when at least one subproduct (or subproduct of subproducts) needs a serial/lot number. +ErrorDescRequiredForFreeProductLines=Description is mandatory for lines with free product +ErrorAPageWithThisNameOrAliasAlreadyExists=The page/container %s has the same name or alternative alias that the one your try to use +ErrorDuringChartLoad=Error when loading chart of accounts. If few accounts were not loaded, you can still enter them manually. +ErrorBadSyntaxForParamKeyForContent=Bad syntax for param keyforcontent. Must have a value starting with %s or %s +ErrorVariableKeyForContentMustBeSet=Error, the constant with name %s (with text content to show) or %s (with external url to show) must be set. +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. +ErrorObjectMustHaveStatusActiveToBeDisabled=Objects must have status 'Active' to be disabled +ErrorObjectMustHaveStatusDraftOrDisabledToBeActivated=Objects must have status 'Draft' or 'Disabled' to be enabled +ErrorNoFieldWithAttributeShowoncombobox=No fields has property 'showoncombobox' into definition of object '%s'. No way to show the combolist. +ErrorFieldRequiredForProduct=Field '%s' is required for product %s +ProblemIsInSetupOfTerminal=Problem is in setup of terminal %s. +ErrorAddAtLeastOneLineFirst=Add at least one line first +ErrorRecordAlreadyInAccountingDeletionNotPossible=Error, record is already transferred in accounting, deletion is not possible. +ErrorLanguageMandatoryIfPageSetAsTranslationOfAnother=Error, language is mandatory if you set the page as a translation of another one. +ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated page is same than this one. +ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". +ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". +ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty +# 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 +WarningSafeModeOnCheckExecDir=Warning, PHP option safe_mode is on so command must be stored inside a directory declared by php parameter safe_mode_exec_dir. +WarningBookmarkAlreadyExists=A bookmark with this title or this target (URL) already exists. +WarningPassIsEmpty=Warning, database password is empty. This is a security hole. You should add a password to your database and change your conf.php file to reflect this. +WarningConfFileMustBeReadOnly=Warning, your config file (htdocs/conf/conf.php) can be overwritten by the web server. This is a serious security hole. Modify permissions on file to be in read only mode for operating system user used by Web server. If you use Windows and FAT format for your disk, you must know that this file system does not allow to add permissions on file, so can't be completely safe. +WarningsOnXLines=Warnings on %s source record(s) +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). +WarningCloseAlways=Warning, closing is done even if amount differs between source and target elements. Enable this feature with caution. +WarningUsingThisBoxSlowDown=Warning, using this box slow down seriously all pages showing the box. +WarningClickToDialUserSetupNotComplete=Setup of ClickToDial information for your user are not complete (see tab ClickToDial onto your user card). +WarningFeatureDisabledWithDisplayOptimizedForBlindNoJs=Feature disabled when display setup is optimized for blind person or text browsers. +WarningPaymentDateLowerThanInvoiceDate=Payment date (%s) is earlier than invoice date (%s) for invoice %s. +WarningTooManyDataPleaseUseMoreFilters=Too many data (more than %s lines). Please use more filters or set the constant %s to a higher limit. +WarningSomeLinesWithNullHourlyRate=Some times were recorded by some users while their hourly rate was not defined. A value of 0 %s per hour was used but this may result in wrong valuation of time spent. +WarningYourLoginWasModifiedPleaseLogin=Your login was modified. For security purpose you will have to login with your new login before next action. +WarningAnEntryAlreadyExistForTransKey=An entry already exists for the translation key for this language +WarningNumberOfRecipientIsRestrictedInMassAction=Warning, number of different recipient is limited to %s when using the mass actions on lists +WarningDateOfLineMustBeInExpenseReportRange=Warning, the date of line is not in the range of the expense report +WarningProjectClosed=Project is closed. You must re-open it first. +WarningSomeBankTransactionByChequeWereRemovedAfter=Some bank transaction were removed after that the receipt including them were generated. So nb of cheques and total of receipt may differ from number and total in list. diff --git a/htdocs/langs/hi_IN/exports.lang b/htdocs/langs/hi_IN/exports.lang new file mode 100644 index 00000000000..3549e3f8b23 --- /dev/null +++ b/htdocs/langs/hi_IN/exports.lang @@ -0,0 +1,135 @@ +# Dolibarr language file - Source file is en_US - exports +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 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 your selections as an export profile/template (for reuse). +SaveImportModel=Save this import profile (for reuse) ... +ExportModelName=Export profile name +ExportModelSaved=Export profile saved as %s. +ExportableFields=Exportable fields +ExportedFields=Exported fields +ImportModelName=Import profile name +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 the file format in the combo box and click on "Generate" to build the export file... +AvailableFormats=Available Formats +LibraryShort=Library +ExportCsvSeparator=Csv caracter separator +ImportCsvSeparator=Csv caracter separator +Step=Step +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 extract data +LineId=Id of line +LineLabel=Label of line +LineDescription=Description of line +LineUnitPrice=Unit price of line +LineVATRate=VAT Rate of line +LineQty=Quantity for line +LineTotalHT=Amount excl. tax for line +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 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) +Field=Field +NoFields=No fields +MoveField=Move field column number %s +ExampleOfImportFile=Example_of_import_file +SaveImportProfile=Save this import profile +ErrorImportDuplicateProfil=Failed to save this import profile with this name. An existing profile already exists with this name. +TablesTarget=Targeted tables +FieldsTarget=Targeted fields +FieldTarget=Targeted field +FieldSource=Source field +NbOfSourceLines=Number of lines in source file +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=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 correct all errors before running the definitive import. +FileWasImported=File was imported with number %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 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 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 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 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 +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=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 +ComputedField=Computed field +## filters +SelectFilterFields=If you want to filter on some values, just input values here. +FilteredFields=Filtered fields +FilteredFieldsValues=Value for filter +FormatControlRule=Format control rule +## imports updates +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/hi_IN/externalsite.lang b/htdocs/langs/hi_IN/externalsite.lang new file mode 100644 index 00000000000..da4853df0df --- /dev/null +++ b/htdocs/langs/hi_IN/externalsite.lang @@ -0,0 +1,5 @@ +# Dolibarr language file - Source file is en_US - externalsite +ExternalSiteSetup=Setup link to external website +ExternalSiteURL=External Site URL +ExternalSiteModuleNotComplete=Module ExternalSite was not configured properly. +ExampleMyMenuEntry=My menu entry diff --git a/htdocs/langs/hi_IN/ftp.lang b/htdocs/langs/hi_IN/ftp.lang new file mode 100644 index 00000000000..d80b87c2715 --- /dev/null +++ b/htdocs/langs/hi_IN/ftp.lang @@ -0,0 +1,14 @@ +# Dolibarr language file - Source file is en_US - ftp +FTPClientSetup=FTP Client module setup +NewFTPClient=New FTP connection setup +FTPArea=FTP Area +FTPAreaDesc=This screen shows a view of an FTP server. +SetupOfFTPClientModuleNotComplete=The setup of the FTP client module seems to be incomplete +FTPFeatureNotSupportedByYourPHP=Your PHP does not support FTP functions +FailedToConnectToFTPServer=Failed to connect to FTP server (server %s, port %s) +FailedToConnectToFTPServerWithCredentials=Failed to login to FTP server with defined login/password +FTPFailedToRemoveFile=Failed to remove file %s. +FTPFailedToRemoveDir=Failed to remove directory %s: check permissions and that the directory is empty. +FTPPassiveMode=Passive mode +ChooseAFTPEntryIntoMenu=Choose a FTP site from the menu... +FailedToGetFile=Failed to get files %s diff --git a/htdocs/langs/hi_IN/help.lang b/htdocs/langs/hi_IN/help.lang new file mode 100644 index 00000000000..048de16d3c0 --- /dev/null +++ b/htdocs/langs/hi_IN/help.lang @@ -0,0 +1,23 @@ +# Dolibarr language file - Source file is en_US - help +CommunitySupport=Forum/Wiki support +EMailSupport=Emails support +RemoteControlSupport=Online real-time / remote support +OtherSupport=Other support +ToSeeListOfAvailableRessources=To contact/see available resources: +HelpCenter=Help Center +DolibarrHelpCenter=Dolibarr Help and Support Center +ToGoBackToDolibarr=Otherwise, click here to continue to use Dolibarr. +TypeOfSupport=Type of support +TypeSupportCommunauty=Community (free) +TypeSupportCommercial=Commercial +TypeOfHelp=Type +NeedHelpCenter=Need help or support? +Efficiency=Efficiency +TypeHelpOnly=Help only +TypeHelpDev=Help+Development +TypeHelpDevForm=Help+Development+Training +BackToHelpCenter=Otherwise, go back to Help center home page. +LinkToGoldMember=You can call one of the trainers preselected by Dolibarr for your language (%s) by clicking their Widget (status and maximum price are automatically updated): +PossibleLanguages=Supported languages +SubscribeToFoundation=Help the Dolibarr project, subscribe to the foundation +SeeOfficalSupport=For official Dolibarr support in your language:
    %s diff --git a/htdocs/langs/hi_IN/holiday.lang b/htdocs/langs/hi_IN/holiday.lang new file mode 100644 index 00000000000..82de49f9c5f --- /dev/null +++ b/htdocs/langs/hi_IN/holiday.lang @@ -0,0 +1,133 @@ +# Dolibarr language file - Source file is en_US - holiday +HRM=HRM +Holidays=Leave +CPTitreMenu=Leave +MenuReportMonth=Monthly statement +MenuAddCP=New leave request +NotActiveModCP=You must enable the module Leave to view this page. +AddCP=Make a leave request +DateDebCP=Start date +DateFinCP=End date +DraftCP=Draft +ToReviewCP=Awaiting approval +ApprovedCP=Approved +CancelCP=Canceled +RefuseCP=Refused +ValidatorCP=Approbator +ListeCP=List of leave +LeaveId=Leave ID +ReviewedByCP=Will be approved by +UserID=User ID +UserForApprovalID=User for approval ID +UserForApprovalFirstname=First name of approval user +UserForApprovalLastname=Last name of approval user +UserForApprovalLogin=Login of approval user +DescCP=Description +SendRequestCP=Create leave request +DelayToRequestCP=Leave requests must be made at least %s day(s) before them. +MenuConfCP=Balance of leave +SoldeCPUser=Leave balance is %s days. +ErrorEndDateCP=You must select an end date greater than the start date. +ErrorSQLCreateCP=An SQL error occurred during the creation: +ErrorIDFicheCP=An error has occurred, the leave request does not exist. +ReturnCP=Return to previous page +ErrorUserViewCP=You are not authorized to read this leave request. +InfosWorkflowCP=Information Workflow +RequestByCP=Requested by +TitreRequestCP=Leave request +TypeOfLeaveId=Type of leave ID +TypeOfLeaveCode=Type of leave code +TypeOfLeaveLabel=Type of leave label +NbUseDaysCP=Number of days of vacation consumed +NbUseDaysCPHelp=The calculation takes into account the non working days and the holidays defined in the dictionary. +NbUseDaysCPShort=Days consumed +NbUseDaysCPShortInMonth=Days consumed in month +DayIsANonWorkingDay=%s is a non working day +DateStartInMonth=Start date in month +DateEndInMonth=End date in month +EditCP=Edit +DeleteCP=Delete +ActionRefuseCP=Refuse +ActionCancelCP=Cancel +StatutCP=Status +TitleDeleteCP=Delete the leave request +ConfirmDeleteCP=Confirm the deletion of this leave request? +ErrorCantDeleteCP=Error you don't have the right to delete this leave request. +CantCreateCP=You don't have the right to make leave requests. +InvalidValidatorCP=You must choose an approbator to your leave request. +NoDateDebut=You must select a start date. +NoDateFin=You must select an end date. +ErrorDureeCP=Your leave request does not contain working day. +TitleValidCP=Approve the leave request +ConfirmValidCP=Are you sure you want to approve the leave request? +DateValidCP=Date approved +TitleToValidCP=Send leave request +ConfirmToValidCP=Are you sure you want to send the leave request? +TitleRefuseCP=Refuse the leave request +ConfirmRefuseCP=Are you sure you want to refuse the leave request? +NoMotifRefuseCP=You must choose a reason for refusing the request. +TitleCancelCP=Cancel the leave request +ConfirmCancelCP=Are you sure you want to cancel the leave request? +DetailRefusCP=Reason for refusal +DateRefusCP=Date of refusal +DateCancelCP=Date of cancellation +DefineEventUserCP=Assign an exceptional leave for a user +addEventToUserCP=Assign leave +NotTheAssignedApprover=You are not the assigned approver +MotifCP=Reason +UserCP=User +ErrorAddEventToUserCP=An error occurred while adding the exceptional leave. +AddEventToUserOkCP=The addition of the exceptional leave has been completed. +MenuLogCP=View change logs +LogCP=Log of updates of available vacation days +ActionByCP=Performed by +UserUpdateCP=For the user +PrevSoldeCP=Previous Balance +NewSoldeCP=New Balance +alreadyCPexist=A leave request has already been done on this period. +FirstDayOfHoliday=First day of vacation +LastDayOfHoliday=Last day of vacation +BoxTitleLastLeaveRequests=Latest %s modified leave requests +HolidaysMonthlyUpdate=Monthly update +ManualUpdate=Manual update +HolidaysCancelation=Leave request cancelation +EmployeeLastname=Employee last name +EmployeeFirstname=Employee first name +TypeWasDisabledOrRemoved=Leave type (id %s) was disabled or removed +LastHolidays=Latest %s leave requests +AllHolidays=All leave requests +HalfDay=Half day +NotTheAssignedApprover=You are not the assigned approver +LEAVE_PAID=Paid vacation +LEAVE_SICK=Sick leave +LEAVE_OTHER=Other leave +LEAVE_PAID_FR=Paid vacation +## Configuration du Module ## +LastUpdateCP=Latest automatic update of leave allocation +MonthOfLastMonthlyUpdate=Month of latest automatic update of leave allocation +UpdateConfCPOK=Updated successfully. +Module27130Name= Management of leave requests +Module27130Desc= Management of leave requests +ErrorMailNotSend=An error occurred while sending email: +NoticePeriod=Notice period +#Messages +HolidaysToValidate=Validate leave requests +HolidaysToValidateBody=Below is a leave request to validate +HolidaysToValidateDelay=This leave request will take place within a period of less than %s days. +HolidaysToValidateAlertSolde=The user who made this leave request does not have enough available days. +HolidaysValidated=Validated leave requests +HolidaysValidatedBody=Your leave request for %s to %s has been validated. +HolidaysRefused=Request denied +HolidaysRefusedBody=Your leave request for %s to %s has been denied for the following reason: +HolidaysCanceled=Canceled leaved request +HolidaysCanceledBody=Your leave request for %s to %s has been canceled. +FollowedByACounter=1: This type of leave need to be followed by a counter. Counter is incremented manually or automatically and when a leave request is validated, counter is decremented.
    0: Not followed by a counter. +NoLeaveWithCounterDefined=There is no leave types defined that need to be followed by a counter +GoIntoDictionaryHolidayTypes=Go into Home - Setup - Dictionaries - Type of leave to setup the different types of leaves. +HolidaySetup=Setup of module Holiday +HolidaysNumberingModules=Leave requests numbering models +TemplatePDFHolidays=Template for leave requests PDF +FreeLegalTextOnHolidays=Free text on PDF +WatermarkOnDraftHolidayCards=Watermarks on draft leave requests +HolidaysToApprove=Holidays to approve +NobodyHasPermissionToValidateHolidays=Nobody has permission to validate holidays diff --git a/htdocs/langs/hi_IN/hrm.lang b/htdocs/langs/hi_IN/hrm.lang new file mode 100644 index 00000000000..3697c47e30d --- /dev/null +++ b/htdocs/langs/hi_IN/hrm.lang @@ -0,0 +1,18 @@ +# Dolibarr language file - en_US - hrm +# Admin +HRM_EMAIL_EXTERNAL_SERVICE=Email to prevent HRM external service +Establishments=Establishments +Establishment=Establishment +NewEstablishment=New establishment +DeleteEstablishment=Delete establishment +ConfirmDeleteEstablishment=Are you sure you wish to delete this establishment? +OpenEtablishment=Open establishment +CloseEtablishment=Close establishment +# Dictionary +DictionaryPublicHolidays=HRM - Public holidays +DictionaryDepartment=HRM - Department list +DictionaryFunction=HRM - Function list +# Module +Employees=Employees +Employee=Employee +NewEmployee=New employee diff --git a/htdocs/langs/hi_IN/install.lang b/htdocs/langs/hi_IN/install.lang new file mode 100644 index 00000000000..f67dff57184 --- /dev/null +++ b/htdocs/langs/hi_IN/install.lang @@ -0,0 +1,223 @@ +# Dolibarr language file - Source file is en_US - install +InstallEasy=Just follow the instructions step by step. +MiscellaneousChecks=Prerequisites check +ConfFileExists=Configuration file %s exists. +ConfFileDoesNotExistsAndCouldNotBeCreated=Configuration file %s does not exist and could not be created! +ConfFileCouldBeCreated=Configuration file %s could be created. +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=Configuration file %s is writable. +ConfFileMustBeAFileNotADir=Configuration file %s must be a file, not a directory. +ConfFileReload=Reloading parameters from configuration file. +PHPSupportSessions=This PHP supports sessions. +PHPSupportPOSTGETOk=This PHP supports variables POST and 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. +PHPSupportCalendar=This PHP supports calendars extensions. +PHPSupportUTF8=This PHP supports UTF8 functions. +PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. +PHPSupport=This PHP supports %s functions. +PHPMemoryOK=Your PHP max session memory is set to %s. This should be enough. +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. +ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. +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. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. +ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. +ErrorDirDoesNotExists=Directory %s does not exist. +ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. +ErrorWrongValueForParameter=You may have typed a wrong value for parameter '%s'. +ErrorFailedToCreateDatabase=Failed to create database '%s'. +ErrorFailedToConnectToDatabase=Failed to connect to database '%s'. +ErrorDatabaseVersionTooLow=Database version (%s) too old. Version %s or higher is required. +ErrorPHPVersionTooLow=PHP version too old. Version %s is required. +ErrorConnectedButDatabaseNotFound=Connection to server successful but database '%s' not found. +ErrorDatabaseAlreadyExists=Database '%s' already exists. +IfDatabaseNotExistsGoBackAndUncheckCreate=If the database does not exist, go back and check option "Create database". +IfDatabaseExistsGoBackAndCheckCreate=If database already exists, go back and uncheck "Create database" option. +WarningBrowserTooOld=Version of browser is too old. Upgrading your browser to a recent version of Firefox, Chrome or Opera is highly recommended. +PHPVersion=PHP Version +License=Using license +ConfigurationFile=Configuration file +WebPagesDirectory=Directory where web pages are stored +DocumentsDirectory=Directory to store uploaded and generated documents +URLRoot=URL Root +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=Driver type +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. +DatabaseServer=Database server +DatabaseName=Database name +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=Password for Dolibarr database owner. +CreateDatabase=Create database +CreateUser=Create user account or grant user account permission on the Dolibarr database +DatabaseSuperUserAccess=Database server - Superuser access +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 +ServerConnection=Server connection +DatabaseCreation=Database creation +CreateDatabaseObjects=Database objects creation +ReferenceDataLoading=Reference data loading +TablesAndPrimaryKeysCreation=Tables and Primary keys creation +CreateTableAndPrimaryKey=Create table %s +CreateOtherKeysForTable=Create foreign keys and indexes for table %s +OtherKeysCreation=Foreign keys and indexes creation +FunctionsCreation=Functions creation +AdminAccountCreation=Administrator login creation +PleaseTypePassword=Please type a password, empty passwords are not allowed! +PleaseTypeALogin=Please type a login! +PasswordsMismatch=Passwords differs, please try again! +SetupEnd=End of setup +SystemIsInstalled=This installation is complete. +SystemIsUpgraded=Dolibarr has been upgraded successfully. +YouNeedToPersonalizeSetup=You need to configure Dolibarr to suit your needs (appearance, features, ...). To do this, please follow the link below: +AdminLoginCreatedSuccessfuly=Dolibarr administrator login '%s' created successfully. +GoToDolibarr=Go to Dolibarr +GoToSetupArea=Go to Dolibarr (setup area) +MigrationNotFinished=The database version is not completely up to date: run the upgrade process again. +GoToUpgradePage=Go to upgrade page again +WithNoSlashAtTheEnd=Without the slash "/" at the end +DirectoryRecommendation=IMPORTANT: You must use a directory that is outside of the web pages (so do not use a subdirectory of previous parameter). +LoginAlreadyExists=Already exists +DolibarrAdminLogin=Dolibarr admin login +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 +ChoosedMigrateScript=Choose migration script +DataMigration=Database migration (data) +DatabaseMigration=Database migration (structure + some data) +ProcessMigrateScript=Script processing +ChooseYourSetupMode=Choose your setup mode and click "Start"... +FreshInstall=Fresh install +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=Upgrade +UpgradeDesc=Use this mode if you have replaced old Dolibarr files with files from a newer version. This will upgrade your database and data. +Start=Start +InstallNotAllowed=Setup not allowed by conf.php permissions +YouMustCreateWithPermission=You must create file %s and set write permissions on it for the web server during install process. +CorrectProblemAndReloadPage=Please fix the problem and press F5 to reload the page. +AlreadyDone=Already migrated +DatabaseVersion=Database version +ServerVersion=Database server version +YouMustCreateItAndAllowServerToWrite=You must create this directory and allow for the web server to write into it. +DBSortingCollation=Character sorting order +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. +OrphelinsPaymentsDetectedByMethod=Orphans payment detected by method %s +RemoveItManuallyAndPressF5ToContinue=Remove it manually and press F5 to continue. +FieldRenamed=Field renamed +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=Recommended choice to install version %s from your current version %s +InstallChoiceSuggested=Install choice suggested by installer. +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=If this name is correct and that database does not exist yet, you must check option "Create database". +OpenBaseDir=PHP openbasedir parameter +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 +MigrationShippingDelivery=Upgrade storage of shipping +MigrationShippingDelivery2=Upgrade storage of shipping 2 +MigrationFinished=Migration finished +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. +ActivateModule=Activate module %s +ShowEditTechnicalParameters=Click here to show/edit advanced parameters (expert mode) +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 +######### +# upgrade +MigrationFixData=Fix for denormalized data +MigrationOrder=Data migration for customer's orders +MigrationSupplierOrder=Data migration for vendor's orders +MigrationProposal=Data migration for commercial proposals +MigrationInvoice=Data migration for customer's invoices +MigrationContract=Data migration for contracts +MigrationSuccessfullUpdate=Upgrade successful +MigrationUpdateFailed=Failed upgrade process +MigrationRelationshipTables=Data migration for relationship tables (%s) +MigrationPaymentsUpdate=Payment data correction +MigrationPaymentsNumberToUpdate=%s payment(s) to update +MigrationProcessPaymentUpdate=Update payment(s) %s +MigrationPaymentsNothingToUpdate=No more things to do +MigrationPaymentsNothingUpdatable=No more payments that can be corrected +MigrationContractsUpdate=Contract data correction +MigrationContractsNumberToUpdate=%s contract(s) to update +MigrationContractsLineCreation=Create contract line for contract ref %s +MigrationContractsNothingToUpdate=No more things to do +MigrationContractsFieldDontExist=Field fk_facture does not exist anymore. Nothing to do. +MigrationContractsEmptyDatesUpdate=Contract empty date correction +MigrationContractsEmptyDatesUpdateSuccess=Contract empty date correction done successfully +MigrationContractsEmptyDatesNothingToUpdate=No contract empty date to correct +MigrationContractsEmptyCreationDatesNothingToUpdate=No contract creation date to correct +MigrationContractsInvalidDatesUpdate=Bad value date contract correction +MigrationContractsInvalidDateFix=Correct contract %s (Contract date=%s, Starting service date min=%s) +MigrationContractsInvalidDatesNumber=%s contracts modified +MigrationContractsInvalidDatesNothingToUpdate=No date with bad value to correct +MigrationContractsIncoherentCreationDateUpdate=Bad value contract creation date correction +MigrationContractsIncoherentCreationDateUpdateSuccess=Bad value contract creation date correction done successfully +MigrationContractsIncoherentCreationDateNothingToUpdate=No bad value for contract creation date to correct +MigrationReopeningContracts=Open contract closed by error +MigrationReopenThisContract=Reopen contract %s +MigrationReopenedContractsNumber=%s contracts modified +MigrationReopeningContractsNothingToUpdate=No closed contract to open +MigrationBankTransfertsUpdate=Update links between bank entry and a bank transfer +MigrationBankTransfertsNothingToUpdate=All links are up to date +MigrationShipmentOrderMatching=Sendings receipt update +MigrationDeliveryOrderMatching=Delivery receipt update +MigrationDeliveryDetail=Delivery update +MigrationStockDetail=Update stock value of products +MigrationMenusDetail=Update dynamic menus tables +MigrationDeliveryAddress=Update delivery address in shipments +MigrationProjectTaskActors=Data migration for table llx_projet_task_actors +MigrationProjectUserResp=Data migration field fk_user_resp of llx_projet to llx_element_contact +MigrationProjectTaskTime=Update time spent in seconds +MigrationActioncommElement=Update data on actions +MigrationPaymentMode=Data migration for payment type +MigrationCategorieAssociation=Migration of categories +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 +MigrationFieldsSocialNetworks=Migration of users fields social networks (%s) +MigrationReloadModule=Reload module %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. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/hi_IN/interventions.lang b/htdocs/langs/hi_IN/interventions.lang new file mode 100644 index 00000000000..e5936f8246e --- /dev/null +++ b/htdocs/langs/hi_IN/interventions.lang @@ -0,0 +1,66 @@ +# Dolibarr language file - Source file is en_US - interventions +Intervention=Intervention +Interventions=Interventions +InterventionCard=Intervention card +NewIntervention=New intervention +AddIntervention=Create intervention +ChangeIntoRepeatableIntervention=Change to repeatable intervention +ListOfInterventions=List of interventions +ActionsOnFicheInter=Actions on intervention +LastInterventions=Latest %s interventions +AllInterventions=All interventions +CreateDraftIntervention=Create draft +InterventionContact=Intervention contact +DeleteIntervention=Delete intervention +ValidateIntervention=Validate intervention +ModifyIntervention=Modify intervention +DeleteInterventionLine=Delete intervention line +ConfirmDeleteIntervention=Are you sure you want to delete this intervention? +ConfirmValidateIntervention=Are you sure you want to validate this intervention under name %s? +ConfirmModifyIntervention=Are you sure you want to modify this intervention? +ConfirmDeleteInterventionLine=Are you sure you want to delete this intervention line? +ConfirmCloneIntervention=Are you sure you want to clone this intervention? +NameAndSignatureOfInternalContact=Name and signature of intervening: +NameAndSignatureOfExternalContact=Name and signature of customer: +DocumentModelStandard=Standard document model for interventions +InterventionCardsAndInterventionLines=Interventions and lines of interventions +InterventionClassifyBilled=Classify "Billed" +InterventionClassifyUnBilled=Classify "Unbilled" +InterventionClassifyDone=Classify "Done" +StatusInterInvoiced=Billed +SendInterventionRef=Submission of intervention %s +SendInterventionByMail=Send intervention by email +InterventionCreatedInDolibarr=Intervention %s created +InterventionValidatedInDolibarr=Intervention %s validated +InterventionModifiedInDolibarr=Intervention %s modified +InterventionClassifiedBilledInDolibarr=Intervention %s set as billed +InterventionClassifiedUnbilledInDolibarr=Intervention %s set as unbilled +InterventionSentByEMail=Intervention %s sent by email +InterventionDeletedInDolibarr=Intervention %s deleted +InterventionsArea=Interventions area +DraftFichinter=Draft interventions +LastModifiedInterventions=Latest %s modified interventions +FichinterToProcess=Interventions to process +TypeContact_fichinter_external_CUSTOMER=Following-up customer contact +PrintProductsOnFichinter=Print also lines of type "product" (not only services) on intervention card +PrintProductsOnFichinterDetails=interventions generated from orders +UseServicesDurationOnFichinter=Use services duration for interventions generated from orders +UseDurationOnFichinter=Hides the duration field for intervention records +UseDateWithoutHourOnFichinter=Hides hours and minutes off the date field for intervention records +InterventionStatistics=Statistics of interventions +NbOfinterventions=No. of intervention cards +NumberOfInterventionsByMonth=No. of intervention cards by month (date of validation) +AmountOfInteventionNotIncludedByDefault=Amount of intervention is not included by default into profit (in most cases, timesheets are used to count time spent). Add option PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT to 1 into home-setup-other to include them. +InterId=Intervention id +InterRef=Intervention ref. +InterDateCreation=Date creation intervention +InterDuration=Duration intervention +InterStatus=Status intervention +InterNote=Note intervention +InterLine=Line of intervention +InterLineId=Line id intervention +InterLineDate=Line date intervention +InterLineDuration=Line duration intervention +InterLineDesc=Line description intervention +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/hi_IN/languages.lang b/htdocs/langs/hi_IN/languages.lang new file mode 100644 index 00000000000..6185183161b --- /dev/null +++ b/htdocs/langs/hi_IN/languages.lang @@ -0,0 +1,89 @@ +# Dolibarr language file - Source file is en_US - languages +Language_ar_AR=Arabic +Language_ar_EG=Arabic (Egypt) +Language_ar_SA=Arabic +Language_bn_BD=Bengali +Language_bg_BG=Bulgarian +Language_bs_BA=Bosnian +Language_ca_ES=Catalan +Language_cs_CZ=Czech +Language_da_DA=Danish +Language_da_DK=Danish +Language_de_DE=German +Language_de_AT=German (Austria) +Language_de_CH=German (Switzerland) +Language_el_GR=Greek +Language_el_CY=Greek (Cyprus) +Language_en_AU=English (Australia) +Language_en_CA=English (Canada) +Language_en_GB=English (United Kingdom) +Language_en_IN=English (India) +Language_en_NZ=English (New Zealand) +Language_en_SA=English (Saudi Arabia) +Language_en_US=English (United States) +Language_en_ZA=English (South Africa) +Language_es_ES=Spanish +Language_es_AR=Spanish (Argentina) +Language_es_BO=Spanish (Bolivia) +Language_es_CL=Spanish (Chile) +Language_es_CO=Spanish (Colombia) +Language_es_DO=Spanish (Dominican Republic) +Language_es_EC=Spanish (Ecuador) +Language_es_HN=Spanish (Honduras) +Language_es_MX=Spanish (Mexico) +Language_es_PA=Spanish (Panama) +Language_es_PY=Spanish (Paraguay) +Language_es_PE=Spanish (Peru) +Language_es_PR=Spanish (Puerto Rico) +Language_es_UY=Spanish (Uruguay) +Language_es_VE=Spanish (Venezuela) +Language_et_EE=Estonian +Language_eu_ES=Basque +Language_fa_IR=Persian +Language_fi_FI=Finnish +Language_fr_BE=French (Belgium) +Language_fr_CA=French (Canada) +Language_fr_CH=French (Switzerland) +Language_fr_FR=French +Language_fr_NC=French (New Caledonia) +Language_fy_NL=Frisian +Language_he_IL=Hebrew +Language_hr_HR=Croatian +Language_hu_HU=Hungarian +Language_id_ID=Indonesian +Language_is_IS=Icelandic +Language_it_IT=Italian +Language_ja_JP=Japanese +Language_ka_GE=Georgian +Language_km_KH=Khmer +Language_kn_IN=Kannada +Language_ko_KR=Korean +Language_lo_LA=Lao +Language_lt_LT=Lithuanian +Language_lv_LV=Latvian +Language_mk_MK=Macedonian +Language_mn_MN=Mongolian +Language_nb_NO=Norwegian (Bokmål) +Language_nl_BE=Dutch (Belgium) +Language_nl_NL=Dutch +Language_pl_PL=Polish +Language_pt_BR=Portuguese (Brazil) +Language_pt_PT=Portuguese +Language_ro_RO=Romanian +Language_ru_RU=Russian +Language_ru_UA=Russian (Ukraine) +Language_tr_TR=Turkish +Language_sl_SI=Slovenian +Language_sv_SV=Swedish +Language_sv_SE=Swedish +Language_sq_AL=Albanian +Language_sk_SK=Slovakian +Language_sr_RS=Serbian +Language_sw_SW=Kiswahili +Language_th_TH=Thai +Language_uk_UA=Ukrainian +Language_uz_UZ=Uzbek +Language_vi_VN=Vietnamese +Language_zh_CN=Chinese +Language_zh_TW=Chinese (Traditional) +Language_bh_MY=Malay diff --git a/htdocs/langs/hi_IN/ldap.lang b/htdocs/langs/hi_IN/ldap.lang new file mode 100644 index 00000000000..8b6f0864215 --- /dev/null +++ b/htdocs/langs/hi_IN/ldap.lang @@ -0,0 +1,27 @@ +# Dolibarr language file - Source file is en_US - ldap +YouMustChangePassNextLogon=Password for user %s on the domain %s must be changed. +UserMustChangePassNextLogon=User must change password on the domain %s +LDAPInformationsForThisContact=Information in LDAP database for this contact +LDAPInformationsForThisUser=Information in LDAP database for this user +LDAPInformationsForThisGroup=Information in LDAP database for this group +LDAPInformationsForThisMember=Information in LDAP database for this member +LDAPInformationsForThisMemberType=Information in LDAP database for this member type +LDAPAttributes=LDAP attributes +LDAPCard=LDAP card +LDAPRecordNotFound=Record not found in LDAP database +LDAPUsers=Users in LDAP database +LDAPFieldStatus=Status +LDAPFieldFirstSubscriptionDate=First subscription date +LDAPFieldFirstSubscriptionAmount=First subscription amount +LDAPFieldLastSubscriptionDate=Latest subscription date +LDAPFieldLastSubscriptionAmount=Latest subscription amount +LDAPFieldSkype=Skype id +LDAPFieldSkypeExample=Example: skypeName +UserSynchronized=User synchronized +GroupSynchronized=Group synchronized +MemberSynchronized=Member synchronized +MemberTypeSynchronized=Member type synchronized +ContactSynchronized=Contact synchronized +ForceSynchronize=Force synchronizing Dolibarr -> LDAP +ErrorFailedToReadLDAP=Failed to read LDAP database. Check LDAP module setup and database accessibility. +PasswordOfUserInLDAP=Password of user in LDAP diff --git a/htdocs/langs/hi_IN/link.lang b/htdocs/langs/hi_IN/link.lang new file mode 100644 index 00000000000..1ffcd41a18b --- /dev/null +++ b/htdocs/langs/hi_IN/link.lang @@ -0,0 +1,11 @@ +# Dolibarr language file - Source file is en_US - languages +LinkANewFile=Link a new file/document +LinkedFiles=Linked files and documents +NoLinkFound=No registered links +LinkComplete=The file has been linked successfully +ErrorFileNotLinked=The file could not be linked +LinkRemoved=The link %s has been removed +ErrorFailedToDeleteLink= Failed to remove link '%s' +ErrorFailedToUpdateLink= Failed to update link '%s' +URLToLink=URL to link +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/hi_IN/loan.lang b/htdocs/langs/hi_IN/loan.lang new file mode 100644 index 00000000000..534dee08867 --- /dev/null +++ b/htdocs/langs/hi_IN/loan.lang @@ -0,0 +1,31 @@ +# Dolibarr language file - Source file is en_US - loan +Loan=Loan +Loans=Loans +NewLoan=New Loan +ShowLoan=Show Loan +PaymentLoan=Loan payment +LoanPayment=Loan payment +ShowLoanPayment=Show Loan Payment +LoanCapital=Capital +Insurance=Insurance +Interest=Interest +Nbterms=Number of terms +Term=Term +LoanAccountancyCapitalCode=Accounting account capital +LoanAccountancyInsuranceCode=Accounting account insurance +LoanAccountancyInterestCode=Accounting account interest +ConfirmDeleteLoan=Confirm deleting this loan +LoanDeleted=Loan Deleted Successfully +ConfirmPayLoan=Confirm classify paid this loan +LoanPaid=Loan Paid +ListLoanAssociatedProject=List of loan associated with the project +AddLoan=Create loan +FinancialCommitment=Financial commitment +InterestAmount=Interest +CapitalRemain=Capital remain +# Admin +ConfigLoan=Configuration of the module loan +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 diff --git a/htdocs/langs/hi_IN/mailmanspip.lang b/htdocs/langs/hi_IN/mailmanspip.lang new file mode 100644 index 00000000000..bab4b3576b4 --- /dev/null +++ b/htdocs/langs/hi_IN/mailmanspip.lang @@ -0,0 +1,27 @@ +# Dolibarr language file - Source file is en_US - mailmanspip +MailmanSpipSetup=Mailman and SPIP module Setup +MailmanTitle=Mailman mailing list system +TestSubscribe=To test subscription to Mailman lists +TestUnSubscribe=To test unsubscribe from Mailman lists +MailmanCreationSuccess=Subscription test was executed successfully +MailmanDeletionSuccess=Unsubscription test was executed successfully +SynchroMailManEnabled=A Mailman update will be performed +SynchroSpipEnabled=A Spip update will be performed +DescADHERENT_MAILMAN_ADMINPW=Mailman administrator password +DescADHERENT_MAILMAN_URL=URL for Mailman subscriptions +DescADHERENT_MAILMAN_UNSUB_URL=URL for Mailman unsubscriptions +DescADHERENT_MAILMAN_LISTS=List(s) for automatic inscription of new members (separated by a comma) +SPIPTitle=SPIP Content Management System +DescADHERENT_SPIP_SERVEUR=SPIP Server +DescADHERENT_SPIP_DB=SPIP database name +DescADHERENT_SPIP_USER=SPIP database login +DescADHERENT_SPIP_PASS=SPIP database password +AddIntoSpip=Add into SPIP +AddIntoSpipConfirmation=Are you sure you want to add this member into SPIP? +AddIntoSpipError=Failed to add the user in SPIP +DeleteIntoSpip=Remove from SPIP +DeleteIntoSpipConfirmation=Are you sure you want to remove this member from SPIP? +DeleteIntoSpipError=Failed to suppress the user from SPIP +SPIPConnectionFailed=Failed to connect to SPIP +SuccessToAddToMailmanList=%s successfully added to mailman list %s or SPIP database +SuccessToRemoveToMailmanList=%s successfully removed from mailman list %s or SPIP database diff --git a/htdocs/langs/hi_IN/mails.lang b/htdocs/langs/hi_IN/mails.lang new file mode 100644 index 00000000000..7b3bfd3852a --- /dev/null +++ b/htdocs/langs/hi_IN/mails.lang @@ -0,0 +1,170 @@ +# Dolibarr language file - Source file is en_US - mails +Mailing=EMailing +EMailing=EMailing +EMailings=EMailings +AllEMailings=All eMailings +MailCard=EMailing card +MailRecipients=Recipients +MailRecipient=Recipient +MailTitle=Description +MailFrom=Sender +MailErrorsTo=Errors to +MailReply=Reply to +MailTo=Receiver(s) +MailToUsers=To user(s) +MailCC=Copy to +MailToCCUsers=Copy to users(s) +MailCCC=Cached copy to +MailTopic=Email topic +MailText=Message +MailFile=Attached files +MailMessage=Email body +SubjectNotIn=Not in Subject +BodyNotIn=Not in Body +ShowEMailing=Show emailing +ListOfEMailings=List of emailings +NewMailing=New emailing +EditMailing=Edit emailing +ResetMailing=Resend emailing +DeleteMailing=Delete emailing +DeleteAMailing=Delete an emailing +PreviewMailing=Preview emailing +CreateMailing=Create emailing +TestMailing=Test email +ValidMailing=Valid emailing +MailingStatusDraft=Draft +MailingStatusValidated=Validated +MailingStatusSent=Sent +MailingStatusSentPartialy=Sent partially +MailingStatusSentCompletely=Sent completely +MailingStatusError=Error +MailingStatusNotSent=Not sent +MailSuccessfulySent=Email (from %s to %s) successfully accepted for delivery +MailingSuccessfullyValidated=EMailing successfully validated +MailUnsubcribe=Unsubscribe +MailingStatusNotContact=Don't contact anymore +MailingStatusReadAndUnsubscribe=Read and unsubscribe +ErrorMailRecipientIsEmpty=Email recipient is empty +WarningNoEMailsAdded=No new Email to add to recipient's list. +ConfirmValidMailing=Are you sure you want to validate this emailing? +ConfirmResetMailing=Warning, by re-initializing emailing %s, you will allow the re-sending this email in a bulk mailing. Are you sure you want to do this? +ConfirmDeleteMailing=Are you sure you want to delete this emailing? +NbOfUniqueEMails=No. of unique emails +NbOfEMails=No. of EMails +TotalNbOfDistinctRecipients=Number of distinct recipients +NoTargetYet=No recipients defined yet (Go on tab 'Recipients') +NoRecipientEmail=No recipient email for %s +RemoveRecipient=Remove recipient +YouCanAddYourOwnPredefindedListHere=To create your email selector module, see htdocs/core/modules/mailings/README. +EMailTestSubstitutionReplacedByGenericValues=When using test mode, substitutions variables are replaced by generic values +MailingAddFile=Attach this file +NoAttachedFiles=No attached files +BadEMail=Bad value for Email +ConfirmCloneEMailing=Are you sure you want to clone this emailing? +CloneContent=Clone message +CloneReceivers=Cloner recipients +DateLastSend=Date of latest sending +DateSending=Date sending +SentTo=Sent to %s +MailingStatusRead=Read +YourMailUnsubcribeOK=The email %s is correctly unsubscribe from mailing list +ActivateCheckReadKey=Key used to encrypt URL used for "Read Receipt" and "Unsubscribe" feature +EMailSentToNRecipients=Email sent to %s recipients. +EMailSentForNElements=Email sent for %s elements. +XTargetsAdded=%s recipients added into target list +OnlyPDFattachmentSupported=If the PDF documents were already generated for the objects to send, they will be attached to email. If not, no email will be sent (also, note that only pdf documents are supported as attachments in mass sending in this version). +AllRecipientSelected=The recipients of the %s record selected (if their email is known). +GroupEmails=Group emails +OneEmailPerRecipient=One email per recipient (by default, one email per record selected) +WarningIfYouCheckOneRecipientPerEmail=Warning, if you check this box, it means only one email will be sent for several different record selected, so, if your message contains substitution variables that refers to data of a record, it becomes not possible to replace them. +ResultOfMailSending=Result of mass Email sending +NbSelected=Number selected +NbIgnored=Number ignored +NbSent=Number sent +SentXXXmessages=%s message(s) sent. +ConfirmUnvalidateEmailing=Are you sure you want to change email %s to draft status? +MailingModuleDescContactsWithThirdpartyFilter=Contact with customer filters +MailingModuleDescContactsByCompanyCategory=Contacts by third-party category +MailingModuleDescContactsByCategory=Contacts by categories +MailingModuleDescContactsByFunction=Contacts by position +MailingModuleDescEmailsFromFile=Emails from file +MailingModuleDescEmailsFromUser=Emails input by user +MailingModuleDescDolibarrUsers=Users with Emails +MailingModuleDescThirdPartiesByCategories=Third parties (by categories) +SendingFromWebInterfaceIsNotAllowed=Sending from web interface is not allowed. + +# Libelle des modules de liste de destinataires mailing +LineInFile=Line %s in file +RecipientSelectionModules=Defined requests for recipient's selection +MailSelectedRecipients=Selected recipients +MailingArea=EMailings area +LastMailings=Latest %s emailings +TargetsStatistics=Targets statistics +NbOfCompaniesContacts=Unique contacts/addresses +MailNoChangePossible=Recipients for validated emailing can't be changed +SearchAMailing=Search mailing +SendMailing=Send emailing +SentBy=Sent by +MailingNeedCommand=Sending an emailing can be performed from command line. Ask your server administrator to launch the following command to send the emailing to all recipients: +MailingNeedCommand2=You can however send them online by adding parameter MAILING_LIMIT_SENDBYWEB with value of max number of emails you want to send by session. For this, go on Home - Setup - Other. +ConfirmSendingEmailing=If you want to send emailing directly from this screen, please confirm you are sure you want to send emailing now from your browser ? +LimitSendingEmailing=Note: Sending of emailings from web interface is done in several times for security and timeout reasons, %s recipients at a time for each sending session. +TargetsReset=Clear list +ToClearAllRecipientsClickHere=Click here to clear the recipient list for this emailing +ToAddRecipientsChooseHere=Add recipients by choosing from the lists +NbOfEMailingsReceived=Mass emailings received +NbOfEMailingsSend=Mass emailings sent +IdRecord=ID record +DeliveryReceipt=Delivery Ack. +YouCanUseCommaSeparatorForSeveralRecipients=You can use the comma separator to specify several recipients. +TagCheckMail=Track mail opening +TagUnsubscribe=Unsubscribe link +TagSignature=Signature of sending user +EMailRecipient=Recipient Email +TagMailtoEmail=Recipient Email (including html "mailto:" link) +NoEmailSentBadSenderOrRecipientEmail=No email sent. Bad sender or recipient email. Verify user profile. +# Module Notifications +Notifications=Notifications +NoNotificationsWillBeSent=No email notifications are planned for this event and company +ANotificationsWillBeSent=1 notification will be sent by email +SomeNotificationsWillBeSent=%s notifications will be sent by email +AddNewNotification=Activate a new email notification target/event +ListOfActiveNotifications=List all active targets/events for email notification +ListOfNotificationsDone=List all email notifications sent +MailSendSetupIs=Configuration of email sending has been setup to '%s'. This mode can't be used to send mass emailing. +MailSendSetupIs2=You must first go, with an admin account, into menu %sHome - Setup - EMails%s to change parameter '%s' to use mode '%s'. With this mode, you can enter setup of the SMTP server provided by your Internet Service Provider and use Mass emailing feature. +MailSendSetupIs3=If you have any questions on how to setup your SMTP server, you can ask to %s. +YouCanAlsoUseSupervisorKeyword=You can also add the keyword __SUPERVISOREMAIL__ to have email being sent to the supervisor of user (works only if an email is defined for this supervisor) +NbOfTargetedContacts=Current number of targeted contact emails +UseFormatFileEmailToTarget=Imported file must have format email;name;firstname;other +UseFormatInputEmailToTarget=Enter a string with format email;name;firstname;other +MailAdvTargetRecipients=Recipients (advanced selection) +AdvTgtTitle=Fill input fields to preselect the third parties or contacts/addresses to target +AdvTgtSearchTextHelp=Use %% as wildcards. For example to find all item like jean, joe, jim, you can input j%%, you can also use ; as separator for value, and use ! for except this value. For example jean;joe;jim%%;!jimo;!jima% will target all jean, joe, start with jim but not jimo and not everything that starts with jima +AdvTgtSearchIntHelp=Use interval to select int or float value +AdvTgtMinVal=Minimum value +AdvTgtMaxVal=Maximum value +AdvTgtSearchDtHelp=Use interval to select date value +AdvTgtStartDt=Start dt. +AdvTgtEndDt=End dt. +AdvTgtTypeOfIncudeHelp=Target Email of third party and email of contact of the third party, or just third-party email or just contact email +AdvTgtTypeOfIncude=Type of targeted email +AdvTgtContactHelp=Use only if you target contact into "Type of targeted email" +AddAll=Add all +RemoveAll=Remove all +ItemsCount=Item(s) +AdvTgtNameTemplate=Filter name +AdvTgtAddContact=Add emails according to criteria +AdvTgtLoadFilter=Load filter +AdvTgtDeleteFilter=Delete filter +AdvTgtSaveFilter=Save filter +AdvTgtCreateFilter=Create filter +AdvTgtOrCreateNewFilter=Name of new filter +NoContactWithCategoryFound=No contact/address with a category found +NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found +OutGoingEmailSetup=Outgoing email setup +InGoingEmailSetup=Incoming email setup +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) +DefaultOutgoingEmailSetup=Default outgoing email setup +Information=Information +ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/hi_IN/main.lang b/htdocs/langs/hi_IN/main.lang new file mode 100644 index 00000000000..797698ef70e --- /dev/null +++ b/htdocs/langs/hi_IN/main.lang @@ -0,0 +1,1035 @@ +# Dolibarr language file - Source file is en_US - main +DIRECTION=ltr +# Note for Chinese: +# msungstdlight or cid0ct are for traditional Chinese (traditional does not render with Ubuntu pdf reader) +# stsongstdlight or cid0cs are for simplified Chinese +# To read Chinese pdf with Linux: sudo apt-get install poppler-data +FONTFORPDF=helvetica +FONTSIZEFORPDF=10 +SeparatorDecimal=. +SeparatorThousand=, +FormatDateShort=%m/%d/%Y +FormatDateShortInput=%m/%d/%Y +FormatDateShortJava=MM/dd/yyyy +FormatDateShortJavaInput=MM/dd/yyyy +FormatDateShortJQuery=mm/dd/yy +FormatDateShortJQueryInput=mm/dd/yy +FormatHourShortJQuery=HH:MI +FormatHourShort=%I:%M %p +FormatHourShortDuration=%H:%M +FormatDateTextShort=%b %d, %Y +FormatDateText=%B %d, %Y +FormatDateHourShort=%m/%d/%Y %I:%M %p +FormatDateHourSecShort=%m/%d/%Y %I:%M:%S %p +FormatDateHourTextShort=%b %d, %Y, %I:%M %p +FormatDateHourText=%B %d, %Y, %I:%M %p +DatabaseConnection=Database connection +NoTemplateDefined=No template available for this email type +AvailableVariables=Available substitution variables +NoTranslation=No translation +Translation=Translation +EmptySearchString=Enter a non empty search string +NoRecordFound=No record found +NoRecordDeleted=No record deleted +NotEnoughDataYet=Not enough data +NoError=No error +Error=Error +Errors=Errors +ErrorFieldRequired=Field '%s' is required +ErrorFieldFormat=Field '%s' has a bad value +ErrorFileDoesNotExists=File %s does not exist +ErrorFailedToOpenFile=Failed to open file %s +ErrorCanNotCreateDir=Cannot create dir %s +ErrorCanNotReadDir=Cannot read dir %s +ErrorConstantNotDefined=Parameter %s not defined +ErrorUnknown=Unknown error +ErrorSQL=SQL Error +ErrorLogoFileNotFound=Logo file '%s' was not found +ErrorGoToGlobalSetup=Go to 'Company/Organization' setup to fix this +ErrorGoToModuleSetup=Go to Module setup to fix this +ErrorFailedToSendMail=Failed to send mail (sender=%s, receiver=%s) +ErrorFileNotUploaded=File was not uploaded. Check that size does not exceed maximum allowed, that free space is available on disk and that there is not already a file with same name in this directory. +ErrorInternalErrorDetected=Error detected +ErrorWrongHostParameter=Wrong host parameter +ErrorYourCountryIsNotDefined=Your country is not defined. Go to Home-Setup-Edit and post the form again. +ErrorRecordIsUsedByChild=Failed to delete this record. This record is used by at least one child record. +ErrorWrongValue=Wrong value +ErrorWrongValueForParameterX=Wrong value for parameter %s +ErrorNoRequestInError=No request in error +ErrorServiceUnavailableTryLater=Service not available at the moment. Try again later. +ErrorDuplicateField=Duplicate value in a unique field +ErrorSomeErrorWereFoundRollbackIsDone=Some errors were found. Changes have been rolled back. +ErrorConfigParameterNotDefined=Parameter %s is not defined in the Dolibarr config file conf.php. +ErrorCantLoadUserFromDolibarrDatabase=Failed to find user %s in Dolibarr database. +ErrorNoVATRateDefinedForSellerCountry=Error, no vat rates defined for country '%s'. +ErrorNoSocialContributionForSellerCountry=Error, no social/fiscal taxes type defined for country '%s'. +ErrorFailedToSaveFile=Error, failed to save file. +ErrorCannotAddThisParentWarehouse=You are trying to add a parent warehouse which is already a child of a existing warehouse +MaxNbOfRecordPerPage=Max. number of records per page +NotAuthorized=You are not authorized to do that. +SetDate=Set date +SelectDate=Select a date +SeeAlso=See also %s +SeeHere=See here +ClickHere=Click here +Here=Here +Apply=Apply +BackgroundColorByDefault=Default background color +FileRenamed=The file was successfully renamed +FileGenerated=The file was successfully generated +FileSaved=The file was successfully saved +FileUploaded=The file was successfully uploaded +FileTransferComplete=File(s) uploaded successfully +FilesDeleted=File(s) successfully deleted +FileWasNotUploaded=A file is selected for attachment but was not yet uploaded. Click on "Attach file" for this. +NbOfEntries=No. of entries +GoToWikiHelpPage=Read online help (Internet access needed) +GoToHelpPage=Read help +RecordSaved=Record saved +RecordDeleted=Record deleted +RecordGenerated=Record generated +LevelOfFeature=Level of features +NotDefined=Not defined +DolibarrInHttpAuthenticationSoPasswordUseless=Dolibarr authentication mode is set to %s in configuration file conf.php.
    This means that the password database is external to Dolibarr, so changing this field may have no effect. +Administrator=Administrator +Undefined=Undefined +PasswordForgotten=Password forgotten? +NoAccount=No account? +SeeAbove=See above +HomeArea=Home +LastConnexion=Last login +PreviousConnexion=Previous login +PreviousValue=Previous value +ConnectedOnMultiCompany=Connected on environment +ConnectedSince=Connected since +AuthenticationMode=Authentication mode +RequestedUrl=Requested URL +DatabaseTypeManager=Database type manager +RequestLastAccessInError=Latest database access request error +ReturnCodeLastAccessInError=Return code for latest database access request error +InformationLastAccessInError=Information for latest database access request error +DolibarrHasDetectedError=Dolibarr has detected a technical error +YouCanSetOptionDolibarrMainProdToZero=You can read log file or set option $dolibarr_main_prod to '0' in your config file to get more information. +InformationToHelpDiagnose=This information can be useful for diagnostic purposes (you can set option $dolibarr_main_prod to '1' to remove such notices) +MoreInformation=More information +TechnicalInformation=Technical information +TechnicalID=Technical ID +LineID=Line ID +NotePublic=Note (public) +NotePrivate=Note (private) +PrecisionUnitIsLimitedToXDecimals=Dolibarr was setup to limit precision of unit prices to %s decimals. +DoTest=Test +ToFilter=Filter +NoFilter=No filter +WarningYouHaveAtLeastOneTaskLate=Warning, you have at least one element that has exceeded the tolerance time. +yes=yes +Yes=Yes +no=no +No=No +All=All +Home=Home +Help=Help +OnlineHelp=Online help +PageWiki=Wiki page +MediaBrowser=Media browser +Always=Always +Never=Never +Under=under +Period=Period +PeriodEndDate=End date for period +SelectedPeriod=Selected period +PreviousPeriod=Previous period +Activate=Activate +Activated=Activated +Closed=Closed +Closed2=Closed +NotClosed=Not closed +Enabled=Enabled +Enable=Enable +Deprecated=Deprecated +Disable=Disable +Disabled=Disabled +Add=Add +AddLink=Add link +RemoveLink=Remove link +AddToDraft=Add to draft +Update=Update +Close=Close +CloseBox=Remove widget from your dashboard +Confirm=Confirm +ConfirmSendCardByMail=Do you really want to send the content of this card by mail to %s? +Delete=Delete +Remove=Remove +Resiliate=Terminate +Cancel=Cancel +Modify=Modify +Edit=Edit +Validate=Validate +ValidateAndApprove=Validate and Approve +ToValidate=To validate +NotValidated=Not validated +Save=Save +SaveAs=Save As +SaveAndStay=Save and stay +SaveAndNew=Save and new +TestConnection=Test connection +ToClone=Clone +ConfirmCloneAsk=Are you sure you want to clone the object %s? +ConfirmClone=Choose data you want to clone: +NoCloneOptionsSpecified=No data to clone defined. +Of=of +Go=Go +Run=Run +CopyOf=Copy of +Show=Show +Hide=Hide +ShowCardHere=Show card +Search=Search +SearchOf=Search +SearchMenuShortCut=Ctrl + shift + f +Valid=Valid +Approve=Approve +Disapprove=Disapprove +ReOpen=Re-Open +Upload=Upload +ToLink=Link +Select=Select +Choose=Choose +Resize=Resize +ResizeOrCrop=Resize or Crop +Recenter=Recenter +Author=Author +User=User +Users=Users +Group=Group +Groups=Groups +NoUserGroupDefined=No user group defined +Password=Password +PasswordRetype=Retype your password +NoteSomeFeaturesAreDisabled=Note that a lot of features/modules are disabled in this demonstration. +Name=Name +NameSlashCompany=Name / Company +Person=Person +Parameter=Parameter +Parameters=Parameters +Value=Value +PersonalValue=Personal value +NewObject=New %s +NewValue=New value +CurrentValue=Current value +Code=Code +Type=Type +Language=Language +MultiLanguage=Multi-language +Note=Note +Title=Title +Label=Label +RefOrLabel=Ref. or label +Info=Log +Family=Family +Description=Description +Designation=Description +DescriptionOfLine=Description of line +DateOfLine=Date of line +DurationOfLine=Duration of line +Model=Doc template +DefaultModel=Default doc template +Action=Event +About=About +Number=Number +NumberByMonth=Number by month +AmountByMonth=Amount by month +Numero=Number +Limit=Limit +Limits=Limits +Logout=Logout +NoLogoutProcessWithAuthMode=No applicative disconnect feature with authentication mode %s +Connection=Login +Setup=Setup +Alert=Alert +MenuWarnings=Alerts +Previous=Previous +Next=Next +Cards=Cards +Card=Card +Now=Now +HourStart=Start hour +Date=Date +DateAndHour=Date and hour +DateToday=Today's date +DateReference=Reference date +DateStart=Start date +DateEnd=End date +DateCreation=Creation date +DateCreationShort=Creat. date +DateModification=Modification date +DateModificationShort=Modif. date +DateLastModification=Latest modification date +DateValidation=Validation date +DateClosing=Closing date +DateDue=Due date +DateValue=Value date +DateValueShort=Value date +DateOperation=Operation date +DateOperationShort=Oper. Date +DateLimit=Limit date +DateRequest=Request date +DateProcess=Process date +DateBuild=Report build date +DatePayment=Date of payment +DateApprove=Approving date +DateApprove2=Approving date (second approval) +RegistrationDate=Registration date +UserCreation=Creation user +UserModification=Modification user +UserValidation=Validation user +UserCreationShort=Creat. user +UserModificationShort=Modif. user +UserValidationShort=Valid. user +DurationYear=year +DurationMonth=month +DurationWeek=week +DurationDay=day +DurationYears=years +DurationMonths=months +DurationWeeks=weeks +DurationDays=days +Year=Year +Month=Month +Week=Week +WeekShort=Week +Day=Day +Hour=Hour +Minute=Minute +Second=Second +Years=Years +Months=Months +Days=Days +days=days +Hours=Hours +Minutes=Minutes +Seconds=Seconds +Weeks=Weeks +Today=Today +Yesterday=Yesterday +Tomorrow=Tomorrow +Morning=Morning +Afternoon=Afternoon +Quadri=Quadri +MonthOfDay=Month of the day +HourShort=H +MinuteShort=mn +Rate=Rate +CurrencyRate=Currency conversion rate +UseLocalTax=Include tax +Bytes=Bytes +KiloBytes=Kilobytes +MegaBytes=Megabytes +GigaBytes=Gigabytes +TeraBytes=Terabytes +UserAuthor=User of creation +UserModif=User of last update +b=b. +Kb=Kb +Mb=Mb +Gb=Gb +Tb=Tb +Cut=Cut +Copy=Copy +Paste=Paste +Default=Default +DefaultValue=Default value +DefaultValues=Default values/filters/sorting +Price=Price +PriceCurrency=Price (currency) +UnitPrice=Unit price +UnitPriceHT=Unit price (excl.) +UnitPriceHTCurrency=Unit price (excl.) (currency) +UnitPriceTTC=Unit price +PriceU=U.P. +PriceUHT=U.P. (net) +PriceUHTCurrency=U.P (currency) +PriceUTTC=U.P. (inc. tax) +Amount=Amount +AmountInvoice=Invoice amount +AmountInvoiced=Amount invoiced +AmountInvoicedHT=Amount invoiced (incl. tax) +AmountInvoicedTTC=Amount invoiced (excl. tax) +AmountPayment=Payment amount +AmountHTShort=Amount (excl.) +AmountTTCShort=Amount (inc. tax) +AmountHT=Amount (excl. tax) +AmountTTC=Amount (inc. tax) +AmountVAT=Amount tax +MulticurrencyAlreadyPaid=Already paid, original currency +MulticurrencyRemainderToPay=Remain to pay, original currency +MulticurrencyPaymentAmount=Payment amount, original currency +MulticurrencyAmountHT=Amount (excl. tax), original currency +MulticurrencyAmountTTC=Amount (inc. of tax), original currency +MulticurrencyAmountVAT=Amount tax, original currency +AmountLT1=Amount tax 2 +AmountLT2=Amount tax 3 +AmountLT1ES=Amount RE +AmountLT2ES=Amount IRPF +AmountTotal=Total amount +AmountAverage=Average amount +PriceQtyMinHT=Price quantity min. (excl. tax) +PriceQtyMinHTCurrency=Price quantity min. (excl. tax) (currency) +Percentage=Percentage +Total=Total +SubTotal=Subtotal +TotalHTShort=Total (excl.) +TotalHT100Short=Total 100%% (excl.) +TotalHTShortCurrency=Total (excl. in currency) +TotalTTCShort=Total (inc. tax) +TotalHT=Total (excl. tax) +TotalHTforthispage=Total (excl. tax) for this page +Totalforthispage=Total for this page +TotalTTC=Total (inc. tax) +TotalTTCToYourCredit=Total (inc. tax) to your credit +TotalVAT=Total tax +TotalVATIN=Total IGST +TotalLT1=Total tax 2 +TotalLT2=Total tax 3 +TotalLT1ES=Total RE +TotalLT2ES=Total IRPF +TotalLT1IN=Total CGST +TotalLT2IN=Total SGST +HT=Excl. tax +TTC=Inc. tax +INCVATONLY=Inc. VAT +INCT=Inc. all taxes +VAT=Sales tax +VATIN=IGST +VATs=Sales taxes +VATINs=IGST taxes +LT1=Sales tax 2 +LT1Type=Sales tax 2 type +LT2=Sales tax 3 +LT2Type=Sales tax 3 type +LT1ES=RE +LT2ES=IRPF +LT1IN=CGST +LT2IN=SGST +LT1GC=Additionnal cents +VATRate=Tax Rate +VATCode=Tax Rate code +VATNPR=Tax Rate NPR +DefaultTaxRate=Default tax rate +Average=Average +Sum=Sum +Delta=Delta +StatusToPay=To pay +RemainToPay=Remain to pay +Module=Module/Application +Modules=Modules/Applications +Option=Option +List=List +FullList=Full list +FullConversation=Full conversation +Statistics=Statistics +OtherStatistics=Other statistics +Status=Status +Favorite=Favorite +ShortInfo=Info. +Ref=Ref. +ExternalRef=Ref. extern +RefSupplier=Ref. vendor +RefPayment=Ref. payment +CommercialProposalsShort=Commercial proposals +Comment=Comment +Comments=Comments +ActionsToDo=Events to do +ActionsToDoShort=To do +ActionsDoneShort=Done +ActionNotApplicable=Not applicable +ActionRunningNotStarted=To start +ActionRunningShort=In progress +ActionDoneShort=Finished +ActionUncomplete=Incomplete +LatestLinkedEvents=Latest %s linked events +CompanyFoundation=Company/Organization +Accountant=Accountant +ContactsForCompany=Contacts for this third party +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 +ToDo=To do +Completed=Completed +Running=In progress +RequestAlreadyDone=Request already recorded +Filter=Filter +FilterOnInto=Search criteria '%s' into fields %s +RemoveFilter=Remove filter +ChartGenerated=Chart generated +ChartNotGenerated=Chart not generated +GeneratedOn=Build on %s +Generate=Generate +Duration=Duration +TotalDuration=Total duration +Summary=Summary +DolibarrStateBoard=Database Statistics +DolibarrWorkBoard=Open Items +NoOpenedElementToProcess=No open element to process +Available=Available +NotYetAvailable=Not yet available +NotAvailable=Not available +Categories=Tags/categories +Category=Tag/category +By=By +From=From +FromLocation=From +to=to +To=to +and=and +or=or +Other=Other +Others=Others +OtherInformations=अन्य सूचना +Quantity=Quantity +Qty=Qty +ChangedBy=Changed by +ApprovedBy=Approved by +ApprovedBy2=Approved by (second approval) +Approved=Approved +Refused=Refused +ReCalculate=Recalculate +ResultKo=Failure +Reporting=Reporting +Reportings=Reporting +Draft=Draft +Drafts=Drafts +StatusInterInvoiced=Invoiced +Validated=Validated +Opened=Open +OpenAll=Open (All) +ClosedAll=Closed (All) +New=New +Discount=Discount +Unknown=अज्ञात +General=General +Size=Size +OriginalSize=Original size +Received=Received +Paid=Paid +Topic=Subject +ByCompanies=By third parties +ByUsers=By user +Links=Links +Link=Link +Rejects=Rejects +Preview=Preview +NextStep=Next step +Datas=Data +None=None +NoneF=None +NoneOrSeveral=None or several +Late=Late +LateDesc=An item is defined as Delayed as per the system configuration in menu Home - Setup - Alerts. +NoItemLate=No late item +Photo=Picture +Photos=Pictures +AddPhoto=Add picture +DeletePicture=Picture delete +ConfirmDeletePicture=Confirm picture deletion? +Login=Login +LoginEmail=Login (email) +LoginOrEmail=Login or Email +CurrentLogin=Current login +EnterLoginDetail=Enter login details +January=January +February=February +March=March +April=April +May=May +June=June +July=July +August=August +September=September +October=October +November=November +December=December +Month01=January +Month02=February +Month03=March +Month04=April +Month05=May +Month06=June +Month07=July +Month08=August +Month09=September +Month10=October +Month11=November +Month12=December +MonthShort01=Jan +MonthShort02=Feb +MonthShort03=Mar +MonthShort04=Apr +MonthShort05=May +MonthShort06=Jun +MonthShort07=Jul +MonthShort08=Aug +MonthShort09=Sep +MonthShort10=Oct +MonthShort11=Nov +MonthShort12=Dec +MonthVeryShort01=J +MonthVeryShort02=F +MonthVeryShort03=M +MonthVeryShort04=A +MonthVeryShort05=M +MonthVeryShort06=J +MonthVeryShort07=J +MonthVeryShort08=A +MonthVeryShort09=S +MonthVeryShort10=O +MonthVeryShort11=N +MonthVeryShort12=D +AttachedFiles=Attached files and documents +JoinMainDoc=Join main document +DateFormatYYYYMM=YYYY-MM +DateFormatYYYYMMDD=YYYY-MM-DD +DateFormatYYYYMMDDHHMM=YYYY-MM-DD HH:SS +ReportName=Report name +ReportPeriod=Report period +ReportDescription=Description +Report=Report +Keyword=Keyword +Origin=Origin +Legend=Legend +Fill=Fill +Reset=Reset +File=File +Files=Files +NotAllowed=Not allowed +ReadPermissionNotAllowed=Read permission not allowed +AmountInCurrency=Amount in %s currency +Example=Example +Examples=Examples +NoExample=No example +FindBug=Report a bug +NbOfThirdParties=Number of third parties +NbOfLines=Number of lines +NbOfObjects=Number of objects +NbOfObjectReferers=Number of related items +Referers=Related items +TotalQuantity=Total quantity +DateFromTo=From %s to %s +DateFrom=From %s +DateUntil=Until %s +Check=Check +Uncheck=Uncheck +Internal=Internal +External=External +Internals=Internal +Externals=External +Warning=Warning +Warnings=Warnings +BuildDoc=Build Doc +Entity=Environment +Entities=Entities +CustomerPreview=Customer preview +SupplierPreview=Vendor preview +ShowCustomerPreview=Show customer preview +ShowSupplierPreview=Show vendor preview +RefCustomer=Ref. customer +Currency=Currency +InfoAdmin=Information for administrators +Undo=Undo +Redo=Redo +ExpandAll=Expand all +UndoExpandAll=Undo expand +SeeAll=See all +Reason=Reason +FeatureNotYetSupported=Feature not yet supported +CloseWindow=Close window +Response=Response +Priority=Priority +SendByMail=Send by email +MailSentBy=Email sent by +TextUsedInTheMessageBody=Email body +SendAcknowledgementByMail=Send confirmation email +SendMail=Send email +Email=Email +NoEMail=No email +AlreadyRead=Already read +NotRead=Not read +NoMobilePhone=No mobile phone +Owner=Owner +FollowingConstantsWillBeSubstituted=The following constants will be replaced with the corresponding value. +Refresh=Refresh +BackToList=Back to list +GoBack=Go back +CanBeModifiedIfOk=Can be modified if valid +CanBeModifiedIfKo=Can be modified if not valid +ValueIsValid=Value is valid +ValueIsNotValid=Value is not valid +RecordCreatedSuccessfully=Record created successfully +RecordModifiedSuccessfully=Record modified successfully +RecordsModified=%s record(s) modified +RecordsDeleted=%s record(s) deleted +RecordsGenerated=%s record(s) generated +AutomaticCode=Automatic code +FeatureDisabled=Feature disabled +MoveBox=Move widget +Offered=Offered +NotEnoughPermissions=You don't have permission for this action +SessionName=Session name +Method=Method +Receive=Receive +CompleteOrNoMoreReceptionExpected=Complete or nothing more expected +ExpectedValue=Expected Value +PartialWoman=Partial +TotalWoman=Total +NeverReceived=Never received +Canceled=Canceled +YouCanChangeValuesForThisListFromDictionarySetup=You can change values for this list from menu Setup - Dictionaries +YouCanChangeValuesForThisListFrom=You can change values for this list from menu %s +YouCanSetDefaultValueInModuleSetup=You can set the default value used when creating a new record in module setup +Color=Color +Documents=Linked files +Documents2=Documents +UploadDisabled=Upload disabled +MenuAccountancy=लेखांकन +MenuECM=Documents +MenuAWStats=AWStats +MenuMembers=Members +MenuAgendaGoogle=Google agenda +ThisLimitIsDefinedInSetup=Dolibarr limit (Menu home-setup-security): %s Kb, PHP limit: %s Kb +NoFileFound=No documents saved in this directory +CurrentUserLanguage=Current language +CurrentTheme=Current theme +CurrentMenuManager=Current menu manager +Browser=Browser +Layout=Layout +Screen=Screen +DisabledModules=Disabled modules +For=For +ForCustomer=For customer +Signature=Signature +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 +AddNewLine=Add new line +AddFile=Add file +FreeZone=Not a predefined product/service +FreeLineOfType=Free-text item, type: +CloneMainAttributes=Clone object with its main attributes +ReGeneratePDF=Re-generate PDF +PDFMerge=PDF Merge +Merge=Merge +DocumentModelStandardPDF=Standard PDF template +PrintContentArea=Show page to print main content area +MenuManager=Menu manager +WarningYouAreInMaintenanceMode=Warning, you are in maintenance mode: only login %s is allowed to use the application in this mode. +CoreErrorTitle=System error +CoreErrorMessage=Sorry, an error occurred. Contact your system administrator to check the logs or disable $dolibarr_main_prod=1 to get more information. +CreditCard=Credit card +ValidatePayment=Validate payment +CreditOrDebitCard=Credit or debit card +FieldsWithAreMandatory=Fields with %s are mandatory +FieldsWithIsForPublic=Fields with %s are shown in public list of members. If you don't want this, uncheck the "public" box. +AccordingToGeoIPDatabase=(according to GeoIP conversion) +Line=Line +NotSupported=Not supported +RequiredField=Required field +Result=Result +ToTest=Test +ValidateBefore=Item must be validated before using this feature +Visibility=Visibility +Totalizable=Totalizable +TotalizableDesc=This field is totalizable in list +Private=Private +Hidden=Hidden +Resources=Resources +Source=Source +Prefix=Prefix +Before=Before +After=After +IPAddress=IP address +Frequency=Frequency +IM=Instant messaging +NewAttribute=New attribute +AttributeCode=Attribute code +URLPhoto=URL of photo/logo +SetLinkToAnotherThirdParty=Link to another third party +LinkTo=Link to +LinkToProposal=Link to proposal +LinkToOrder=Link to order +LinkToInvoice=Link to invoice +LinkToTemplateInvoice=Link to template invoice +LinkToSupplierOrder=Link to purchase order +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 +ClickToRefresh=Click to refresh +EditWithEditor=Edit with CKEditor +EditWithTextEditor=Edit with Text editor +EditHTMLSource=Edit HTML Source +ObjectDeleted=Object %s deleted +ByCountry=By country +ByTown=By town +ByDate=By date +ByMonthYear=By month/year +ByYear=By year +ByMonth=By month +ByDay=By day +BySalesRepresentative=By sales representative +LinkedToSpecificUsers=Linked to a particular user contact +NoResults=No results +AdminTools=Admin Tools +SystemTools=System tools +ModulesSystemTools=Modules tools +Test=Test +Element=Element +NoPhotoYet=No pictures available yet +Dashboard=Dashboard +MyDashboard=My Dashboard +Deductible=Deductible +from=from +toward=toward +Access=Access +SelectAction=Select action +SelectTargetUser=Select target user/employee +HelpCopyToClipboard=Use Ctrl+C to copy to clipboard +SaveUploadedFileWithMask=Save file on server with name "%s" (otherwise "%s") +OriginFileName=Original filename +SetDemandReason=Set source +SetBankAccount=Define Bank Account +AccountCurrency=Account currency +ViewPrivateNote=View notes +XMoreLines=%s line(s) hidden +ShowMoreLines=Show more/less lines +PublicUrl=Public URL +AddBox=Add box +SelectElementAndClick=Select an element and click %s +PrintFile=Print File %s +ShowTransaction=Show entry on bank account +ShowIntervention=Show intervention +ShowContract=Show contract +GoIntoSetupToChangeLogo=Go to Home - Setup - Company to change logo or go to Home - Setup - Display to hide. +Deny=Deny +Denied=Denied +ListOf=List of %s +ListOfTemplates=List of templates +Gender=Gender +Genderman=Man +Genderwoman=Woman +ViewList=List view +ViewGantt=Gantt view +ViewKanban=Kanban view +Mandatory=Mandatory +Hello=Hello +GoodBye=GoodBye +Sincerely=Sincerely +ConfirmDeleteObject=Are you sure you want to delete this object? +DeleteLine=Delete line +ConfirmDeleteLine=Are you sure you want to delete this line? +NoPDFAvailableForDocGenAmongChecked=No PDF were available for the document generation among checked record +TooManyRecordForMassAction=Too many records selected for mass action. The action is restricted to a list of %s records. +NoRecordSelected=No record selected +MassFilesArea=Area for files built by mass actions +ShowTempMassFilesArea=Show area of files built by mass actions +ConfirmMassDeletion=Bulk Delete confirmation +ConfirmMassDeletionQuestion=Are you sure you want to delete the %s selected record(s)? +RelatedObjects=Related Objects +ClassifyBilled=Classify billed +ClassifyUnbilled=Classify unbilled +Progress=Progress +ProgressShort=Progr. +FrontOffice=Front office +BackOffice=Back office +Submit=Submit +View=View +Export=Export +Exports=Exports +ExportFilteredList=Export filtered list +ExportList=Export list +ExportOptions=Export Options +IncludeDocsAlreadyExported=Include docs already exported +ExportOfPiecesAlreadyExportedIsEnable=Export of pieces already exported is enable +ExportOfPiecesAlreadyExportedIsDisable=Export of pieces already exported is disable +AllExportedMovementsWereRecordedAsExported=All exported movements were recorded as exported +NotAllExportedMovementsCouldBeRecordedAsExported=Not all exported movements could be recorded as exported +Miscellaneous=Miscellaneous +Calendar=Calendar +GroupBy=Group by... +ViewFlatList=View flat list +RemoveString=Remove string '%s' +SomeTranslationAreUncomplete=Some of the languages offered may be only partially translated or may contain errors. Please help to correct your language by registering at https://transifex.com/projects/p/dolibarr/ to add your improvements. +DirectDownloadLink=Direct download link (public/external) +DirectDownloadInternalLink=Direct download link (need to be logged and need permissions) +Download=Download +DownloadDocument=Download document +ActualizeCurrency=Update currency rate +Fiscalyear=Fiscal year +ModuleBuilder=Module and Application Builder +SetMultiCurrencyCode=Set currency +BulkActions=Bulk actions +ClickToShowHelp=Click to show tooltip help +WebSite=Website +WebSites=Websites +WebSiteAccounts=Website accounts +ExpenseReport=Expense report +ExpenseReports=Expense reports +HR=HR +HRAndBank=HR and Bank +AutomaticallyCalculated=Automatically calculated +TitleSetToDraft=Go back to draft +ConfirmSetToDraft=Are you sure you want to go back to Draft status? +ImportId=Import id +Events=Events +EMailTemplates=Email templates +FileNotShared=File not shared to external public +Project=Project +Projects=Projects +LeadOrProject=Lead | Project +LeadsOrProjects=Leads | Projects +Lead=Lead +Leads=Leads +ListOpenLeads=List open leads +ListOpenProjects=List open projects +NewLeadOrProject=New lead or project +Rights=Permissions +LineNb=Line no. +IncotermLabel=Incoterms +TabLetteringCustomer=Customer lettering +TabLetteringSupplier=Vendor lettering +Monday=Monday +Tuesday=Tuesday +Wednesday=Wednesday +Thursday=Thursday +Friday=Friday +Saturday=Saturday +Sunday=Sunday +MondayMin=Mo +TuesdayMin=Tu +WednesdayMin=We +ThursdayMin=Th +FridayMin=Fr +SaturdayMin=Sa +SundayMin=Su +Day1=Monday +Day2=Tuesday +Day3=Wednesday +Day4=Thursday +Day5=Friday +Day6=Saturday +Day0=Sunday +ShortMonday=M +ShortTuesday=T +ShortWednesday=W +ShortThursday=T +ShortFriday=F +ShortSaturday=S +ShortSunday=S +SelectMailModel=Select an email template +SetRef=Set ref +Select2ResultFoundUseArrows=Some results found. Use arrows to select. +Select2NotFound=No result found +Select2Enter=Enter +Select2MoreCharacter=or more character +Select2MoreCharacters=or more characters +Select2MoreCharactersMore=Search syntax:
    | OR (a|b)
    * Any character (a*b)
    ^ Start with (^ab)
    $ End with (ab$)
    +Select2LoadingMoreResults=Loading more results... +Select2SearchInProgress=Search in progress... +SearchIntoThirdparties=Third parties +SearchIntoContacts=Contacts +SearchIntoMembers=Members +SearchIntoUsers=Users +SearchIntoProductsOrServices=Products or services +SearchIntoProjects=Projects +SearchIntoMO=Manufacturing Orders +SearchIntoTasks=Tasks +SearchIntoCustomerInvoices=Customer invoices +SearchIntoSupplierInvoices=Vendor invoices +SearchIntoCustomerOrders=Sales orders +SearchIntoSupplierOrders=Purchase orders +SearchIntoCustomerProposals=Commercial proposals +SearchIntoSupplierProposals=Vendor proposals +SearchIntoInterventions=Interventions +SearchIntoContracts=Contracts +SearchIntoCustomerShipments=Customer shipments +SearchIntoExpenseReports=Expense reports +SearchIntoLeaves=Leave +SearchIntoTickets=Tickets +CommentLink=Comments +NbComments=Number of comments +CommentPage=Comments space +CommentAdded=Comment added +CommentDeleted=Comment deleted +Everybody=Everybody +PayedBy=Paid by +PayedTo=Paid to +Monthly=Monthly +Quarterly=Quarterly +Annual=Annual +Local=Local +Remote=Remote +LocalAndRemote=Local and Remote +KeyboardShortcut=Keyboard shortcut +AssignedTo=Assigned to +Deletedraft=Delete draft +ConfirmMassDraftDeletion=Draft mass delete confirmation +FileSharedViaALink=File shared via a link +SelectAThirdPartyFirst=Select a third party first... +YouAreCurrentlyInSandboxMode=You are currently in the %s "sandbox" mode +Inventory=Inventory +AnalyticCode=Analytic code +TMenuMRP=MRP +ShowMoreInfos=Show More Infos +NoFilesUploadedYet=Please upload a document first +SeePrivateNote=See private note +PaymentInformation=Payment information +ValidFrom=Valid from +ValidUntil=Valid until +NoRecordedUsers=No users +ToClose=To close +ToProcess=To process +ToApprove=To approve +GlobalOpenedElemView=Global view +NoArticlesFoundForTheKeyword=No article found for the keyword '%s' +NoArticlesFoundForTheCategory=No article found for the category +ToAcceptRefuse=To accept | refuse +ContactDefault_agenda=Event +ContactDefault_commande=Order +ContactDefault_contrat=Contract +ContactDefault_facture=Invoice +ContactDefault_fichinter=Intervention +ContactDefault_invoice_supplier=Supplier Invoice +ContactDefault_order_supplier=Purchase Order +ContactDefault_project=Project +ContactDefault_project_task=Task +ContactDefault_propal=Proposal +ContactDefault_supplier_proposal=Supplier Proposal +ContactDefault_ticket=Ticket +ContactAddedAutomatically=Contact added from contact thirdparty roles +More=More +ShowDetails=Show details +CustomReports=Custom reports +StatisticsOn=Statistics on +SelectYourGraphOptionsFirst=Select your graph options to build a graph +Measures=Measures +XAxis=X-Axis +YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? +ShowOtherLanguages=Show other languages +SwitchInEditModeToAddTranslation=Switch in edit mode to add translations for this language +NotUsedForThisCustomer=Not used for this customer diff --git a/htdocs/langs/hi_IN/margins.lang b/htdocs/langs/hi_IN/margins.lang new file mode 100644 index 00000000000..76ea8ad5c4d --- /dev/null +++ b/htdocs/langs/hi_IN/margins.lang @@ -0,0 +1,45 @@ +# Dolibarr language file - Source file is en_US - marges + +Margin=Margin +Margins=Margins +TotalMargin=Total Margin +MarginOnProducts=Margin / Products +MarginOnServices=Margin / Services +MarginRate=Margin rate +MarkRate=Mark rate +DisplayMarginRates=Display margin rates +DisplayMarkRates=Display mark rates +InputPrice=Input price +margin=Profit margins management +margesSetup=Profit margins management setup +MarginDetails=Margin details +ProductMargins=Product margins +CustomerMargins=Customer margins +SalesRepresentativeMargins=Sales representative margins +ContactOfInvoice=Contact of invoice +UserMargins=User margins +ProductService=Product or Service +AllProducts=All products and services +ChooseProduct/Service=Choose product or service +ForceBuyingPriceIfNull=Force buying/cost price to selling price if not defined +ForceBuyingPriceIfNullDetails=If buying/cost price not defined, and this option "ON", margin will be zero on line (buying/cost price = selling price), otherwise ("OFF"), marge will be equal to suggested default. +MARGIN_METHODE_FOR_DISCOUNT=Margin method for global discounts +UseDiscountAsProduct=As a product +UseDiscountAsService=As a service +UseDiscountOnTotal=On subtotal +MARGIN_METHODE_FOR_DISCOUNT_DETAILS=Defines if a global discount is treated as a product, a service, or only on subtotal for margin calculation. +MARGIN_TYPE=Buying/Cost price suggested by default for margin calculation +MargeType1=Margin on Best vendor price +MargeType2=Margin on Weighted Average Price (WAP) +MargeType3=Margin on Cost Price +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=Cost price +UnitCharges=Unit charges +Charges=Charges +AgentContactType=Commercial agent contact type +AgentContactTypeDetails=Define what contact type (linked on invoices) will be used for margin report per contact/address. Note that reading statistics on a contact is not reliable since in most cases the contact may not be defined explicitely on the invoices. +rateMustBeNumeric=Rate must be a numeric value +markRateShouldBeLesserThan100=Mark rate should be lower than 100 +ShowMarginInfos=Show margin infos +CheckMargins=Margins detail +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/hi_IN/members.lang b/htdocs/langs/hi_IN/members.lang new file mode 100644 index 00000000000..dd0a5bf49e2 --- /dev/null +++ b/htdocs/langs/hi_IN/members.lang @@ -0,0 +1,204 @@ +# Dolibarr language file - Source file is en_US - members +MembersArea=Members area +MemberCard=Member card +SubscriptionCard=Subscription card +Member=Member +Members=Members +ShowMember=Show member card +UserNotLinkedToMember=User not linked to a member +ThirdpartyNotLinkedToMember=Third party not linked to a member +MembersTickets=Members Tickets +FundationMembers=Foundation members +ListOfValidatedPublicMembers=List of validated public members +ErrorThisMemberIsNotPublic=This member is not public +ErrorMemberIsAlreadyLinkedToThisThirdParty=Another member (name: %s, login: %s) is already linked to a third party %s. Remove this link first because a third party can't be linked to only a member (and vice versa). +ErrorUserPermissionAllowsToLinksToItselfOnly=For security reasons, you must be granted permissions to edit all users to be able to link a member to a user that is not yours. +SetLinkToUser=Link to a Dolibarr user +SetLinkToThirdParty=Link to a Dolibarr third party +MembersCards=Members business cards +MembersList=List of members +MembersListToValid=List of draft members (to be validated) +MembersListValid=List of valid members +MembersListUpToDate=List of valid members with up to date subscription +MembersListNotUpToDate=List of valid members with subscription out of date +MembersListResiliated=List of terminated members +MembersListQualified=List of qualified members +MenuMembersToValidate=Draft members +MenuMembersValidated=Validated members +MenuMembersUpToDate=Up to date members +MenuMembersNotUpToDate=Out of date members +MenuMembersResiliated=Terminated members +MembersWithSubscriptionToReceive=Members with subscription to receive +MembersWithSubscriptionToReceiveShort=Subscription to receive +DateSubscription=Subscription date +DateEndSubscription=Subscription end date +EndSubscription=End subscription +SubscriptionId=Subscription id +MemberId=Member id +NewMember=New member +MemberType=Member type +MemberTypeId=Member type id +MemberTypeLabel=Member type label +MembersTypes=Members types +MemberStatusDraft=Draft (needs to be validated) +MemberStatusDraftShort=Draft +MemberStatusActive=Validated (waiting subscription) +MemberStatusActiveShort=Validated +MemberStatusActiveLate=Subscription expired +MemberStatusActiveLateShort=Expired +MemberStatusPaid=Subscription up to date +MemberStatusPaidShort=Up to date +MemberStatusResiliated=Terminated member +MemberStatusResiliatedShort=Terminated +MembersStatusToValid=Draft members +MembersStatusResiliated=Terminated members +MemberStatusNoSubscription=Validated (no subscription needed) +MemberStatusNoSubscriptionShort=Validated +SubscriptionNotNeeded=No subscription needed +NewCotisation=New contribution +PaymentSubscription=New contribution payment +SubscriptionEndDate=Subscription's end date +MembersTypeSetup=Members type setup +MemberTypeModified=Member type modified +DeleteAMemberType=Delete a member type +ConfirmDeleteMemberType=Are you sure you want to delete this member type? +MemberTypeDeleted=Member type deleted +MemberTypeCanNotBeDeleted=Member type can not be deleted +NewSubscription=New subscription +NewSubscriptionDesc=This form allows you to record your subscription as a new member of the foundation. If you want to renew your subscription (if already a member), please contact foundation board instead by email %s. +Subscription=Subscription +Subscriptions=Subscriptions +SubscriptionLate=Late +SubscriptionNotReceived=Subscription never received +ListOfSubscriptions=List of subscriptions +SendCardByMail=Send card by email +AddMember=Create member +NoTypeDefinedGoToSetup=No member types defined. Go to menu "Members types" +NewMemberType=New member type +WelcomeEMail=Welcome email +SubscriptionRequired=Subscription required +DeleteType=Delete +VoteAllowed=Vote allowed +Physical=Physical +Moral=Moral +MorPhy=Moral/Physical +Reenable=Reenable +ResiliateMember=Terminate a member +ConfirmResiliateMember=Are you sure you want to terminate this member? +DeleteMember=Delete a member +ConfirmDeleteMember=Are you sure you want to delete this member (Deleting a member will delete all his subscriptions)? +DeleteSubscription=Delete a subscription +ConfirmDeleteSubscription=Are you sure you want to delete this subscription? +Filehtpasswd=htpasswd file +ValidateMember=Validate a member +ConfirmValidateMember=Are you sure you want to validate this member? +FollowingLinksArePublic=The following links are open pages not protected by any Dolibarr permission. They are not formatted pages, provided as example to show how to list members database. +PublicMemberList=Public member list +BlankSubscriptionForm=Public self-subscription form +BlankSubscriptionFormDesc=Dolibarr can provide you a public URL/website to allow external visitors to ask to subscribe to the foundation. If an online payment module is enabled, a payment form may also be automatically provided. +EnablePublicSubscriptionForm=Enable the public website with self-subscription form +ForceMemberType=Force the member type +ExportDataset_member_1=Members and subscriptions +ImportDataset_member_1=Members +LastMembersModified=Latest %s modified members +LastSubscriptionsModified=Latest %s modified subscriptions +String=String +Text=Text +Int=Int +DateAndTime=Date and time +PublicMemberCard=Member public card +SubscriptionNotRecorded=Subscription not recorded +AddSubscription=Create subscription +ShowSubscription=Show subscription +# Label of email templates +SendingAnEMailToMember=Sending information email to member +SendingEmailOnAutoSubscription=Sending email on auto registration +SendingEmailOnMemberValidation=Sending email on new member validation +SendingEmailOnNewSubscription=Sending email on new subscription +SendingReminderForExpiredSubscription=Sending reminder for expired subscriptions +SendingEmailOnCancelation=Sending email on cancelation +# Topic of email templates +YourMembershipRequestWasReceived=Your membership was received. +YourMembershipWasValidated=Your membership was validated +YourSubscriptionWasRecorded=Your new subscription was recorded +SubscriptionReminderEmail=Subscription reminder +YourMembershipWasCanceled=Your membership was canceled +CardContent=Content of your member card +# Text of email templates +ThisIsContentOfYourMembershipRequestWasReceived=We want to let you know that your membership request was received.

    +ThisIsContentOfYourMembershipWasValidated=We want to let you know that your membership was validated with the following information:

    +ThisIsContentOfYourSubscriptionWasRecorded=We want to let you know that your new subscription was recorded.

    +ThisIsContentOfSubscriptionReminderEmail=We want to let you know that your subscription is about to expire or has already expired (__MEMBER_LAST_SUBSCRIPTION_DATE_END__). We hope you will renew it.

    +ThisIsContentOfYourCard=This is a summary of the information we have about you. Please contact us if anything is incorrect.

    +DescADHERENT_AUTOREGISTER_NOTIF_MAIL_SUBJECT=Subject of the notification email received in case of auto-inscription of a guest +DescADHERENT_AUTOREGISTER_NOTIF_MAIL=Content of the notification email received in case of auto-inscription of a guest +DescADHERENT_EMAIL_TEMPLATE_AUTOREGISTER=Email template to use to send email to a member on member autosubscription +DescADHERENT_EMAIL_TEMPLATE_MEMBER_VALIDATION=Email template to use to send email to a member on member validation +DescADHERENT_EMAIL_TEMPLATE_SUBSCRIPTION=Email template to use to send email to a member on new subscription recording +DescADHERENT_EMAIL_TEMPLATE_REMIND_EXPIRATION=Email template to use to send email reminder when subscription is about to expire +DescADHERENT_EMAIL_TEMPLATE_CANCELATION=Email template to use to send email to a member on member cancelation +DescADHERENT_MAIL_FROM=Sender Email for automatic emails +DescADHERENT_ETIQUETTE_TYPE=Format of labels page +DescADHERENT_ETIQUETTE_TEXT=Text printed on member address sheets +DescADHERENT_CARD_TYPE=Format of cards page +DescADHERENT_CARD_HEADER_TEXT=Text printed on top of member cards +DescADHERENT_CARD_TEXT=Text printed on member cards (align on left) +DescADHERENT_CARD_TEXT_RIGHT=Text printed on member cards (align on right) +DescADHERENT_CARD_FOOTER_TEXT=Text printed on bottom of member cards +ShowTypeCard=Show type '%s' +HTPasswordExport=htpassword file generation +NoThirdPartyAssociatedToMember=No third party associated to this member +MembersAndSubscriptions= Members and Subscriptions +MoreActions=Complementary action on recording +MoreActionsOnSubscription=Complementary action, suggested by default when recording a subscription +MoreActionBankDirect=Create a direct entry on bank account +MoreActionBankViaInvoice=Create an invoice, and a payment on bank account +MoreActionInvoiceOnly=Create an invoice with no payment +LinkToGeneratedPages=Generate visit cards +LinkToGeneratedPagesDesc=This screen allows you to generate PDF files with business cards for all your members or a particular member. +DocForAllMembersCards=Generate business cards for all members +DocForOneMemberCards=Generate business cards for a particular member +DocForLabels=Generate address sheets +SubscriptionPayment=Subscription payment +LastSubscriptionDate=Date of latest subscription payment +LastSubscriptionAmount=Amount of latest subscription +MembersStatisticsByCountries=Members statistics by country +MembersStatisticsByState=Members statistics by state/province +MembersStatisticsByTown=Members statistics by town +MembersStatisticsByRegion=Members statistics by region +NbOfMembers=Number of members +NoValidatedMemberYet=No validated members found +MembersByCountryDesc=This screen show you statistics on members by countries. Graphic depends however on Google online graph service and is available only if an internet connection is is working. +MembersByStateDesc=This screen show you statistics on members by state/provinces/canton. +MembersByTownDesc=This screen show you statistics on members by town. +MembersStatisticsDesc=Choose statistics you want to read... +MenuMembersStats=Statistics +LastMemberDate=Latest member date +LatestSubscriptionDate=Latest subscription date +MemberNature=Nature of member +Public=Information are public +NewMemberbyWeb=New member added. Awaiting approval +NewMemberForm=New member form +SubscriptionsStatistics=Statistics on subscriptions +NbOfSubscriptions=Number of subscriptions +AmountOfSubscriptions=Amount of subscriptions +TurnoverOrBudget=Turnover (for a company) or Budget (for a foundation) +DefaultAmount=Default amount of subscription +CanEditAmount=Visitor can choose/edit amount of its subscription +MEMBER_NEWFORM_PAYONLINE=Jump on integrated online payment page +ByProperties=By nature +MembersStatisticsByProperties=Members statistics by nature +MembersByNature=This screen show you statistics on members by nature. +MembersByRegion=This screen show you statistics on members by region. +VATToUseForSubscriptions=VAT rate to use for subscriptions +NoVatOnSubscription=No VAT for subscriptions +ADHERENT_PRODUCT_ID_FOR_SUBSCRIPTIONS=Product used for subscription line into invoice: %s +NameOrCompany=Name or company +SubscriptionRecorded=Subscription recorded +NoEmailSentToMember=No email sent to member +EmailSentToMember=Email sent to member at %s +SendReminderForExpiredSubscriptionTitle=Send reminder by email for expired subscription +SendReminderForExpiredSubscription=Send reminder by email to members when subscription is about to expire (parameter is number of days before end of subscription to send the remind. It can be a list of days separated by a semicolon, for example '10;5;0;-5') +MembershipPaid=Membership paid for current period (until %s) +YouMayFindYourInvoiceInThisEmail=You may find your invoice attached to this email +XMembersClosed=%s member(s) closed diff --git a/htdocs/langs/hi_IN/modulebuilder.lang b/htdocs/langs/hi_IN/modulebuilder.lang new file mode 100644 index 00000000000..135ac1ae9ec --- /dev/null +++ b/htdocs/langs/hi_IN/modulebuilder.lang @@ -0,0 +1,141 @@ +# Dolibarr language file - Source file is en_US - loan +ModuleBuilderDesc=This tool must be used only by experienced users or developers. It provides utilities to build or edit your own module. Documentation for alternative manual development is here. +EnterNameOfModuleDesc=Enter name of the module/application to create with no spaces. Use uppercase to separate words (For example: MyModule, EcommerceForShop, SyncWithMySystem...) +EnterNameOfObjectDesc=Enter name of the object to create with no spaces. Use uppercase to separate words (For example: MyObject, Student, Teacher...). The CRUD class file, but also API file, pages to list/add/edit/delete object and SQL files will be generated. +ModuleBuilderDesc2=Path where modules are generated/edited (first directory for external modules defined into %s): %s +ModuleBuilderDesc3=Generated/editable modules found: %s +ModuleBuilderDesc4=A module is detected as 'editable' when the file %s exists in root of module directory +NewModule=New module +NewObjectInModulebuilder=New object +ModuleKey=Module key +ObjectKey=Object key +ModuleInitialized=Module initialized +FilesForObjectInitialized=Files for new object '%s' initialized +FilesForObjectUpdated=Files for object '%s' updated (.sql files and .class.php file) +ModuleBuilderDescdescription=Enter here all general information that describe your module. +ModuleBuilderDescspecifications=You can enter here a detailed description of the specifications of your module that is not already structured into other tabs. So you have within easy reach all the rules to develop. Also this text content will be included into the generated documentation (see last tab). You can use Markdown format, but it is recommended to use Asciidoc format (comparison between .md and .asciidoc: http://asciidoctor.org/docs/user-manual/#compared-to-markdown). +ModuleBuilderDescobjects=Define here the objects you want to manage with your module. A CRUD DAO class, SQL files, page to list record of objects, to create/edit/view a record and an API will be generated. +ModuleBuilderDescmenus=This tab is dedicated to define menu entries provided by your module. +ModuleBuilderDescpermissions=This tab is dedicated to define the new permissions you want to provide with your module. +ModuleBuilderDesctriggers=This is the view of triggers provided by your module. To include code executed when a triggered business event is launched, just edit this file. +ModuleBuilderDeschooks=This tab is dedicated to hooks. +ModuleBuilderDescwidgets=This tab is dedicated to manage/build widgets. +ModuleBuilderDescbuildpackage=You can generate here a "ready to distribute" package file (a normalized .zip file) of your module and a "ready to distribute" documentation file. Just click on button to build the package or documentation file. +EnterNameOfModuleToDeleteDesc=You can delete your module. WARNING: All coding files of module (generated or created manually) AND structured data and documentation will be deleted! +EnterNameOfObjectToDeleteDesc=You can delete an object. WARNING: All coding files (generated or created manually) related to object will be deleted! +DangerZone=Danger zone +BuildPackage=Build package +BuildPackageDesc=You can generate a zip package of your application so your are ready to distribute it on any Dolibarr. You can also distribute it or sell it on marketplace like DoliStore.com. +BuildDocumentation=Build documentation +ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: +ModuleIsLive=This module has been activated. Any change may break a current live feature. +DescriptionLong=Long description +EditorName=Name of editor +EditorUrl=URL of editor +DescriptorFile=Descriptor file of module +ClassFile=File for PHP DAO CRUD class +ApiClassFile=File for PHP API class +PageForList=PHP page for list of record +PageForCreateEditView=PHP page to create/edit/view a record +PageForAgendaTab=PHP page for event tab +PageForDocumentTab=PHP page for document tab +PageForNoteTab=PHP page for note tab +PathToModulePackage=Path to zip of module/application package +PathToModuleDocumentation=Path to file of module/application documentation (%s) +SpaceOrSpecialCharAreNotAllowed=Spaces or special characters are not allowed. +FileNotYetGenerated=File not yet generated +RegenerateClassAndSql=Force update of .class and .sql files +RegenerateMissingFiles=Generate missing files +SpecificationFile=File of documentation +LanguageFile=File for language +ObjectProperties=Object Properties +ConfirmDeleteProperty=Are you sure you want to delete the property %s? This will change code in PHP class but also remove column from table definition of object. +NotNull=Not NULL +NotNullDesc=1=Set database to NOT NULL. -1=Allow null values and force value to NULL if empty ('' or 0). +SearchAll=Used for 'search all' +DatabaseIndex=Database index +FileAlreadyExists=File %s already exists +TriggersFile=File for triggers code +HooksFile=File for hooks code +ArrayOfKeyValues=Array of key-val +ArrayOfKeyValuesDesc=Array of keys and values if field is a combo list with fixed values +WidgetFile=Widget file +CSSFile=CSS file +JSFile=Javascript file +ReadmeFile=Readme file +ChangeLog=ChangeLog file +TestClassFile=File for PHP Unit Test class +SqlFile=Sql file +PageForLib=File for the common PHP library +PageForObjLib=File for the PHP library dedicated to object +SqlFileExtraFields=Sql file for complementary attributes +SqlFileKey=Sql file for keys +SqlFileKeyExtraFields=Sql file for keys of complementary attributes +AnObjectAlreadyExistWithThisNameAndDiffCase=An object already exists with this name and a different case +UseAsciiDocFormat=You can use Markdown format, but it is recommended to use Asciidoc format (omparison between .md and .asciidoc: http://asciidoctor.org/docs/user-manual/#compared-to-markdown) +IsAMeasure=Is a measure +DirScanned=Directory scanned +NoTrigger=No trigger +NoWidget=No widget +GoToApiExplorer=Go to API explorer +ListOfMenusEntries=List of menu entries +ListOfDictionariesEntries=List of dictionaries entries +ListOfPermissionsDefined=List of defined permissions +SeeExamples=See examples here +EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty +DisplayOnPdf=Display on PDF +IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) +SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) +SpecDefDesc=Enter here all documentation you want to provide with your module that is not already defined by other tabs. You can use .md or better, the rich .asciidoc syntax. +LanguageDefDesc=Enter in this files, all the key and the translation for each language file. +MenusDefDesc=Define here the menus provided by your module +DictionariesDefDesc=Define here the dictionaries provided by your module +PermissionsDefDesc=Define here the new permissions provided by your module +MenusDefDescTooltip=The menus provided by your module/application are defined into the array $this->menus into the module descriptor file. You can edit manually this file or use the embedded editor.

    Note: Once defined (and module re-activated), menus are also visible into the menu editor available to administrator users on %s. +DictionariesDefDescTooltip=The dictionaries provided by your module/application are defined into the array $this->dictionaries into the module descriptor file. You can edit manually this file or use the embedded editor.

    Note: Once defined (and module re-activated), dictionaries are also visible into the setup area to administrator users on %s. +PermissionsDefDescTooltip=The permissions provided by your module/application are defined into the array $this->rights into the module descriptor file. You can edit manually this file or use the embedded editor.

    Note: Once defined (and module re-activated), permissions are visible into the default permissions setup %s. +HooksDefDesc=Define in the module_parts['hooks'] property, in the module descriptor, the context of hooks you want to manage (list of contexts can be found by a search on 'initHooks(' in core code).
    Edit the hook file to add code of your hooked functions (hookable functions can be found by a search on 'executeHooks' in core code). +TriggerDefDesc=Define in the trigger file the code you want to execute for each business event executed. +SeeIDsInUse=See IDs in use in your installation +SeeReservedIDsRangeHere=See range of reserved IDs +ToolkitForDevelopers=Toolkit for Dolibarr developers +TryToUseTheModuleBuilder=If you have knowledge of SQL and PHP, you may use the native module builder wizard.
    Enable the module %s and use the wizard by clicking the on the top right menu.
    Warning: This is an advanced developer feature, do not experiment on your production site! +SeeTopRightMenu=See on the top right menu +AddLanguageFile=Add language file +YouCanUseTranslationKey=You can use here a key that is the translation key found into language file (see tab "Languages") +DropTableIfEmpty=(Delete table if empty) +TableDoesNotExists=The table %s does not exists +TableDropped=Table %s deleted +InitStructureFromExistingTable=Build the structure array string of an existing table +UseAboutPage=Disable the about page +UseDocFolder=Disable the documentation folder +UseSpecificReadme=Use a specific ReadMe +ContentOfREADMECustomized=Note: The content of the README.md file has been replaced with the specific value defined into setup of ModuleBuilder. +RealPathOfModule=Real path of module +ContentCantBeEmpty=Content of file can't be empty +WidgetDesc=You can generate and edit here the widgets that will be embedded with your module. +CSSDesc=You can generate and edit here a file with personalized CSS embedded with your module. +JSDesc=You can generate and edit here a file with personalized Javascript embedded with your module. +CLIDesc=You can generate here some command line scripts you want to provide with your module. +CLIFile=CLI File +NoCLIFile=No CLI files +UseSpecificEditorName = Use a specific editor name +UseSpecificEditorURL = Use a specific editor URL +UseSpecificFamily = Use a specific family +UseSpecificAuthor = Use a specific author +UseSpecificVersion = Use a specific initial version +ModuleMustBeEnabled=The module/application must be enabled first +IncludeRefGeneration=The reference of object must be generated automatically +IncludeRefGenerationHelp=Check this if you want to include code to manage the generation automatically of the reference +IncludeDocGeneration=I want to generate some documents from the object +IncludeDocGenerationHelp=If you check this, some code will be generated to add a "Generate document" box on the record. +ShowOnCombobox=Show value into combobox +KeyForTooltip=Key for tooltip +CSSClass=CSS Class +NotEditable=Not editable +ForeignKey=Foreign key +TypeOfFieldsHelp=Type of fields:
    varchar(99), double(24,8), real, text, html, datetime, timestamp, integer, integer:ClassName:relativepath/to/classfile.class.php[:1[:filter]] ('1' means we add a + button after the combo to create the record, 'filter' can be 'status=1 AND fk_user = __USER_ID AND entity IN (__SHARED_ENTITIES__)' for example) +AsciiToHtmlConverter=Ascii to HTML converter +AsciiToPdfConverter=Ascii to PDF converter diff --git a/htdocs/langs/hi_IN/mrp.lang b/htdocs/langs/hi_IN/mrp.lang new file mode 100644 index 00000000000..d3c4d3253c6 --- /dev/null +++ b/htdocs/langs/hi_IN/mrp.lang @@ -0,0 +1,76 @@ +Mrp=Manufacturing Orders +MO=Manufacturing Order +MRPDescription=Module to manage production and Manufacturing Orders (MO). +MRPArea=MRP Area +MrpSetupPage=Setup of module MRP +MenuBOM=Bills of material +LatestBOMModified=Latest %s Bills of materials modified +LatestMOModified=Latest %s Manufacturing Orders modified +Bom=Bills of Material +BillOfMaterials=Bill of Material +BOMsSetup=Setup of module BOM +ListOfBOMs=List of bills of material - BOM +ListOfManufacturingOrders=List of Manufacturing Orders +NewBOM=New bill of material +ProductBOMHelp=Product to create with this BOM.
    Note: Products with the property 'Nature of product' = 'Raw material' are not visible into this list. +BOMsNumberingModules=BOM numbering templates +BOMsModelModule=BOM document templates +MOsNumberingModules=MO numbering templates +MOsModelModule=MO document templates +FreeLegalTextOnBOMs=Free text on document of BOM +WatermarkOnDraftBOMs=Watermark on draft BOM +FreeLegalTextOnMOs=Free text on document of MO +WatermarkOnDraftMOs=Watermark on draft MO +ConfirmCloneBillOfMaterials=Are you sure you want to clone the bill of material %s ? +ConfirmCloneMo=Are you sure you want to clone the Manufacturing Order %s ? +ManufacturingEfficiency=Manufacturing efficiency +ConsumptionEfficiency=Consumption efficiency +ValueOfMeansLoss=Value of 0.95 means an average of 5%% of loss during the production +ValueOfMeansLossForProductProduced=Value of 0.95 means an average of 5%% of loss of produced product +DeleteBillOfMaterials=Delete Bill Of Materials +DeleteMo=Delete Manufacturing Order +ConfirmDeleteBillOfMaterials=Are you sure you want to delete this Bill Of Material? +ConfirmDeleteMo=Are you sure you want to delete this Bill Of Material? +MenuMRP=Manufacturing Orders +NewMO=New Manufacturing Order +QtyToProduce=Qty to produce +DateStartPlannedMo=Date start planned +DateEndPlannedMo=Date end planned +KeepEmptyForAsap=Empty means 'As Soon As Possible' +EstimatedDuration=Estimated duration +EstimatedDurationDesc=Estimated duration to manufacture this product using this BOM +ConfirmValidateBom=Are you sure you want to validate the BOM with the reference %s (you will be able to use it to build new Manufacturing Orders) +ConfirmCloseBom=Are you sure you want to cancel this BOM (you won't be able to use it to build new Manufacturing Orders anymore) ? +ConfirmReopenBom=Are you sure you want to re-open this BOM (you will be able to use it to build new Manufacturing Orders) +StatusMOProduced=Produced +QtyFrozen=Frozen Qty +QuantityFrozen=Frozen Quantity +QuantityConsumedInvariable=When this flag is set, the quantity consumed is always the value defined and is not relative to the quantity produced. +DisableStockChange=Stock change disabled +DisableStockChangeHelp=When this flag is set, there is no stock change on this product, whatever is the quantity consumed +BomAndBomLines=Bills Of Material and lines +BOMLine=Line of BOM +WarehouseForProduction=Warehouse for production +CreateMO=Create MO +ToConsume=To consume +ToProduce=To produce +QtyAlreadyConsumed=Qty already consumed +QtyAlreadyProduced=Qty already produced +QtyRequiredIfNoLoss=Qty required if there is no loss (Manufacturing efficiency is 100%%) +ConsumeOrProduce=Consume or Produce +ConsumeAndProduceAll=Consume and Produce All +Manufactured=Manufactured +TheProductXIsAlreadyTheProductToProduce=The product to add is already the product to produce. +ForAQuantityOf=For a quantity to produce of %s +ConfirmValidateMo=Are you sure you want to validate this Manufacturing Order? +ConfirmProductionDesc=By clicking on '%s', you will validate the consumption and/or production for the quantities set. This will also update the stock and record stock movements. +ProductionForRef=Production of %s +AutoCloseMO=Close automatically the Manufacturing Order if quantities to consume and to produce are reached +NoStockChangeOnServices=No stock change on services +ProductQtyToConsumeByMO=Product quantity still to consume by open MO +ProductQtyToProduceByMO=Product quentity still to produce by open MO +AddNewConsumeLines=Add new line to consume +ProductsToConsume=Products to consume +ProductsToProduce=Products to produce +UnitCost=Unit cost +TotalCost=Total cost diff --git a/htdocs/langs/hi_IN/multicurrency.lang b/htdocs/langs/hi_IN/multicurrency.lang new file mode 100644 index 00000000000..bfcbd11fb7c --- /dev/null +++ b/htdocs/langs/hi_IN/multicurrency.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Multi currency +ErrorAddRateFail=Error in added rate +ErrorAddCurrencyFail=Error in added currency +ErrorDeleteCurrencyFail=Error delete fail +multicurrency_syncronize_error=Synchronization error: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Use the date of the document to find the currency rate, instead of using the latest known rate +multicurrency_useOriginTx=When an object is created from another, keep the original rate from the source object (otherwise use the latest known rate) +CurrencyLayerAccount=CurrencyLayer API +CurrencyLayerAccount_help_to_synchronize=You must create an account on website %s to use this functionality.
    Get your API key.
    If you use a free account, you can't change the source currency (USD by default).
    If your main currency is not USD, the application will automatically recalculate it.

    You are limited to 1000 synchronizations per month. +multicurrency_appId=API key +multicurrency_appCurrencySource=Source currency +multicurrency_alternateCurrencySource=Alternate source currency +CurrenciesUsed=Currencies used +CurrenciesUsed_help_to_add=Add the different currencies and rates you need to use on your proposals, orders etc. +rate=rate +MulticurrencyReceived=Received, original currency +MulticurrencyRemainderToTake=Remaining amount, original currency +MulticurrencyPaymentAmount=Payment amount, original currency +AmountToOthercurrency=Amount To (in currency of receiving account) +CurrencyRateSyncSucceed=Currency rate synchronization done successfuly +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Use the currency of the document for online payments diff --git a/htdocs/langs/hi_IN/oauth.lang b/htdocs/langs/hi_IN/oauth.lang new file mode 100644 index 00000000000..075ff49a895 --- /dev/null +++ b/htdocs/langs/hi_IN/oauth.lang @@ -0,0 +1,32 @@ +# 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 credentials with your OAuth provider: +ListOfSupportedOauthProviders=Enter the credentials provided by your OAuth2 provider. Only supported OAuth2 providers are listedd here. These services 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 to 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 to this page then "Register a new application" to create OAuth credentials +OAUTH_STRIPE_TEST_NAME=OAuth Stripe Test +OAUTH_STRIPE_LIVE_NAME=OAuth Stripe Live diff --git a/htdocs/langs/hi_IN/opensurvey.lang b/htdocs/langs/hi_IN/opensurvey.lang new file mode 100644 index 00000000000..7d26151fa16 --- /dev/null +++ b/htdocs/langs/hi_IN/opensurvey.lang @@ -0,0 +1,61 @@ +# Dolibarr language file - Source file is en_US - opensurvey +Survey=Poll +Surveys=Polls +OrganizeYourMeetingEasily=Organize your meetings and polls easily. First select the type of poll... +NewSurvey=New poll +OpenSurveyArea=Polls area +AddACommentForPoll=You can add a comment into poll... +AddComment=Add comment +CreatePoll=Create poll +PollTitle=Poll title +ToReceiveEMailForEachVote=Receive an email for each vote +TypeDate=Type date +TypeClassic=Type standard +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=Remove all days +CopyHoursOfFirstDay=Copy hours of first day +RemoveAllHours=Remove all hours +SelectedDays=Selected days +TheBestChoice=The best choice currently is +TheBestChoices=The best choices currently are +with=with +OpenSurveyHowTo=If you agree to vote in this poll, you have to give your name, choose the values that fit best for you and validate with the plus button at the end of the line. +CommentsOfVoters=Comments of voters +ConfirmRemovalOfPoll=Are you sure you want to remove this poll (and all votes) +RemovePoll=Remove poll +UrlForSurvey=URL to communicate to get a direct access to poll +PollOnChoice=You are creating a poll to make a multi-choice for a poll. First enter all possible choices for your poll: +CreateSurveyDate=Create a date poll +CreateSurveyStandard=Create a standard poll +CheckBox=Simple checkbox +YesNoList=List (empty/yes/no) +PourContreList=List (empty/for/against) +AddNewColumn=Add new column +TitleChoice=Choice label +ExportSpreadsheet=Export result spreadsheet +ExpireDate=Limit date +NbOfSurveys=Number of polls +NbOfVoters=No. of voters +SurveyResults=Results +PollAdminDesc=You are allowed to change all vote lines of this poll with button "Edit". You can, as well, remove a column or a line with %s. You can also add a new column with %s. +5MoreChoices=5 more choices +Against=Against +YouAreInivitedToVote=You are invited to vote for this poll +VoteNameAlreadyExists=This name was already used for this poll +AddADate=Add a date +AddStartHour=Add start hour +AddEndHour=Add end hour +votes=vote(s) +NoCommentYet=No comments have been posted for this poll yet +CanComment=Voters can comment in the poll +CanSeeOthersVote=Voters can see other people's vote +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=Back to current month +ErrorOpenSurveyFillFirstSection=You haven't filled the first section of the poll creation +ErrorOpenSurveyOneChoice=Enter at least one choice +ErrorInsertingComment=There was an error while inserting your comment +MoreChoices=Enter more choices for the voters +SurveyExpiredInfo=The poll has been closed or voting delay has expired. +EmailSomeoneVoted=%s has filled a line.\nYou can find your poll at the link: \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 diff --git a/htdocs/langs/hi_IN/orders.lang b/htdocs/langs/hi_IN/orders.lang new file mode 100644 index 00000000000..ad91e1eef63 --- /dev/null +++ b/htdocs/langs/hi_IN/orders.lang @@ -0,0 +1,189 @@ +# Dolibarr language file - Source file is en_US - orders +OrdersArea=Customers orders area +SuppliersOrdersArea=Purchase orders area +OrderCard=Order card +OrderId=Order Id +Order=Order +PdfOrderTitle=Order +Orders=Orders +OrderLine=Order line +OrderDate=Order date +OrderDateShort=Order date +OrderToProcess=Order to process +NewOrder=New order +NewOrderSupplier=New Purchase Order +ToOrder=Make order +MakeOrder=Make order +SupplierOrder=Purchase order +SuppliersOrders=Purchase orders +SuppliersOrdersRunning=Current purchase orders +CustomerOrder=Sales Order +CustomersOrders=Sales Orders +CustomersOrdersRunning=Current sales orders +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 +SuppliersOrdersAwaitingReception=Purchase orders awaiting reception +AwaitingReception=Awaiting reception +StatusOrderCanceledShort=Canceled +StatusOrderDraftShort=Draft +StatusOrderValidatedShort=Validated +StatusOrderSentShort=In process +StatusOrderSent=Shipment in process +StatusOrderOnProcessShort=Ordered +StatusOrderProcessedShort=Processed +StatusOrderDelivered=Delivered +StatusOrderDeliveredShort=Delivered +StatusOrderToBillShort=Delivered +StatusOrderApprovedShort=Approved +StatusOrderRefusedShort=Refused +StatusOrderToProcessShort=To process +StatusOrderReceivedPartiallyShort=Partially received +StatusOrderReceivedAllShort=Products received +StatusOrderCanceled=Canceled +StatusOrderDraft=Draft (needs to be validated) +StatusOrderValidated=Validated +StatusOrderOnProcess=Ordered - Standby reception +StatusOrderOnProcessWithValidation=Ordered - Standby reception or validation +StatusOrderProcessed=Processed +StatusOrderToBill=Delivered +StatusOrderApproved=Approved +StatusOrderRefused=Refused +StatusOrderReceivedPartially=Partially received +StatusOrderReceivedAll=All products received +ShippingExist=A shipment exists +QtyOrdered=Qty ordered +ProductQtyInDraft=Product quantity into draft orders +ProductQtyInDraftOrWaitingApproved=Product quantity into draft or approved orders, not yet ordered +MenuOrdersToBill=Orders delivered +MenuOrdersToBill2=Billable orders +ShipProduct=Ship product +CreateOrder=Create Order +RefuseOrder=Refuse order +ApproveOrder=Approve order +Approve2Order=Approve order (second level) +ValidateOrder=Validate order +UnvalidateOrder=Unvalidate order +DeleteOrder=Delete order +CancelOrder=Cancel order +OrderReopened= Order %s re-open +AddOrder=Create order +AddPurchaseOrder=Create purchase order +AddToDraftOrders=Add to draft order +ShowOrder=Show order +OrdersOpened=Orders to process +NoDraftOrders=No draft orders +NoOrder=No order +NoSupplierOrder=No purchase order +LastOrders=Latest %s sales orders +LastCustomerOrders=Latest %s sales orders +LastSupplierOrders=Latest %s purchase orders +LastModifiedOrders=Latest %s modified orders +AllOrders=All orders +NbOfOrders=Number of orders +OrdersStatistics=Order's statistics +OrdersStatisticsSuppliers=Purchase order statistics +NumberOfOrdersByMonth=Number of orders by month +AmountOfOrdersByMonthHT=Amount of orders by month (excl. tax) +ListOfOrders=List of orders +CloseOrder=Close order +ConfirmCloseOrder=Are you sure you want to set this order to delivered? Once an order is delivered, it can be set to billed. +ConfirmDeleteOrder=Are you sure you want to delete this order? +ConfirmValidateOrder=Are you sure you want to validate this order under name %s? +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=Generate invoice +ClassifyShipped=Classify delivered +DraftOrders=Draft orders +DraftSuppliersOrders=Draft purchase orders +OnProcessOrders=In process orders +RefOrder=Ref. order +RefCustomerOrder=Ref. order for customer +RefOrderSupplier=Ref. order for vendor +RefOrderSupplierShort=Ref. order vendor +SendOrderByMail=Send order by mail +ActionsOnOrder=Events on order +NoArticleOfTypeProduct=No article of type 'product' so no shippable article for this order +OrderMode=Order method +AuthorRequest=Request author +UserWithApproveOrderGrant=Users granted with "approve orders" permission. +PaymentOrderRef=Payment of order %s +ConfirmCloneOrder=Are you sure you want to clone this order %s? +DispatchSupplierOrder=Receiving purchase order %s +FirstApprovalAlreadyDone=First approval already done +SecondApprovalAlreadyDone=Second approval already done +SupplierOrderReceivedInDolibarr=Purchase Order %s received %s +SupplierOrderSubmitedInDolibarr=Purchase Order %s submitted +SupplierOrderClassifiedBilled=Purchase Order %s set billed +OtherOrders=Other orders +##### Types de contacts ##### +TypeContact_commande_internal_SALESREPFOLL=Representative following-up sales order +TypeContact_commande_internal_SHIPPING=Representative following-up shipping +TypeContact_commande_external_BILLING=Customer invoice contact +TypeContact_commande_external_SHIPPING=Customer shipping contact +TypeContact_commande_external_CUSTOMER=Customer contact following-up order +TypeContact_order_supplier_internal_SALESREPFOLL=Representative following-up purchase order +TypeContact_order_supplier_internal_SHIPPING=Representative following-up shipping +TypeContact_order_supplier_external_BILLING=Vendor invoice contact +TypeContact_order_supplier_external_SHIPPING=Vendor shipping contact +TypeContact_order_supplier_external_CUSTOMER=Vendor contact following-up order +Error_COMMANDE_SUPPLIER_ADDON_NotDefined=Constant COMMANDE_SUPPLIER_ADDON not defined +Error_COMMANDE_ADDON_NotDefined=Constant COMMANDE_ADDON not defined +Error_OrderNotChecked=No orders to invoice selected +# Order modes (how we receive order). Not the "why" are keys stored into dict.lang +OrderByMail=Mail +OrderByFax=Fax +OrderByEMail=Email +OrderByWWW=Online +OrderByPhone=Phone +# Documents models +PDFEinsteinDescription=A complete order model (old implementation of Eratosthene template) +PDFEratostheneDescription=A complete order model +PDFEdisonDescription=A simple order model +PDFProformaDescription=A complete Proforma invoice template +CreateInvoiceForThisCustomer=Bill orders +CreateInvoiceForThisSupplier=Bill orders +NoOrdersToInvoice=No orders billable +CloseProcessedOrdersAutomatically=Classify "Processed" all selected orders. +OrderCreation=Order creation +Ordered=Ordered +OrderCreated=Your orders have been created +OrderFail=An error happened during your orders creation +CreateOrders=Create orders +ToBillSeveralOrderSelectCustomer=To create an invoice for several orders, click first onto customer, then choose "%s". +OptionToSetOrderBilledNotEnabled=Option from module Workflow, to set order to 'Billed' automatically when invoice is validated, is not enabled, so you will have to set the status of orders to 'Billed' manually after the invoice has been generated. +IfValidateInvoiceIsNoOrderStayUnbilled=If invoice validation is 'No', the order will remain to status 'Unbilled' until the invoice is validated. +CloseReceivedSupplierOrdersAutomatically=Close order to status "%s" automatically if all products are received. +SetShippingMode=Set shipping mode +WithReceptionFinished=With reception finished +#### supplier orders status +StatusSupplierOrderCanceledShort=Canceled +StatusSupplierOrderDraftShort=Draft +StatusSupplierOrderValidatedShort=Validated +StatusSupplierOrderSentShort=In process +StatusSupplierOrderSent=Shipment in process +StatusSupplierOrderOnProcessShort=Ordered +StatusSupplierOrderProcessedShort=Processed +StatusSupplierOrderDelivered=Delivered +StatusSupplierOrderDeliveredShort=Delivered +StatusSupplierOrderToBillShort=Delivered +StatusSupplierOrderApprovedShort=Approved +StatusSupplierOrderRefusedShort=Refused +StatusSupplierOrderToProcessShort=To process +StatusSupplierOrderReceivedPartiallyShort=Partially received +StatusSupplierOrderReceivedAllShort=Products received +StatusSupplierOrderCanceled=Canceled +StatusSupplierOrderDraft=Draft (needs to be validated) +StatusSupplierOrderValidated=Validated +StatusSupplierOrderOnProcess=Ordered - Standby reception +StatusSupplierOrderOnProcessWithValidation=Ordered - Standby reception or validation +StatusSupplierOrderProcessed=Processed +StatusSupplierOrderToBill=Delivered +StatusSupplierOrderApproved=Approved +StatusSupplierOrderRefused=Refused +StatusSupplierOrderReceivedPartially=Partially received +StatusSupplierOrderReceivedAll=All products received diff --git a/htdocs/langs/hi_IN/other.lang b/htdocs/langs/hi_IN/other.lang new file mode 100644 index 00000000000..ba85f51e739 --- /dev/null +++ b/htdocs/langs/hi_IN/other.lang @@ -0,0 +1,286 @@ +# Dolibarr language file - Source file is en_US - other +SecurityCode=Security code +NumberingShort=N° +Tools=Tools +TMenuTools=Tools +ToolsDesc=All tools not included in other menu entries are grouped here.
    All the tools can be accessed via the left menu. +Birthday=Birthday +BirthdayDate=Birthday date +DateToBirth=Birth date +BirthdayAlertOn=birthday alert active +BirthdayAlertOff=birthday alert inactive +TransKey=Translation of the key TransKey +MonthOfInvoice=Month (number 1-12) of invoice date +TextMonthOfInvoice=Month (text) of invoice date +PreviousMonthOfInvoice=Previous month (number 1-12) of invoice date +TextPreviousMonthOfInvoice=Previous month (text) of invoice date +NextMonthOfInvoice=Following month (number 1-12) of invoice date +TextNextMonthOfInvoice=Following month (text) of invoice date +ZipFileGeneratedInto=Zip file generated into %s. +DocFileGeneratedInto=Doc file generated into %s. +JumpToLogin=Disconnected. Go to login page... +MessageForm=Message on online payment form +MessageOK=Message on the return page for a validated payment +MessageKO=Message on the return page for a canceled payment +ContentOfDirectoryIsNotEmpty=Content of this directory is not empty. +DeleteAlsoContentRecursively=Check to delete all content recursively +PoweredBy=Powered by +YearOfInvoice=Year of invoice date +PreviousYearOfInvoice=Previous year of invoice date +NextYearOfInvoice=Following year of invoice date +DateNextInvoiceBeforeGen=Date of next invoice (before generation) +DateNextInvoiceAfterGen=Date of next invoice (after generation) +GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mode. The mode 'Lines' was automatically selected instead. +OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. +AtLeastOneMeasureIsRequired=At least 1 field for measure is required +AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required +LatestBlogPosts=Latest Blog Posts +Notify_ORDER_VALIDATE=Sales order validated +Notify_ORDER_SENTBYMAIL=Sales order sent by mail +Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email +Notify_ORDER_SUPPLIER_VALIDATE=Purchase order recorded +Notify_ORDER_SUPPLIER_APPROVE=Purchase order approved +Notify_ORDER_SUPPLIER_REFUSE=Purchase order refused +Notify_PROPAL_VALIDATE=Customer proposal validated +Notify_PROPAL_CLOSE_SIGNED=Customer proposal closed signed +Notify_PROPAL_CLOSE_REFUSED=Customer proposal closed refused +Notify_PROPAL_SENTBYMAIL=Commercial proposal sent by mail +Notify_WITHDRAW_TRANSMIT=Transmission withdrawal +Notify_WITHDRAW_CREDIT=Credit withdrawal +Notify_WITHDRAW_EMIT=Perform withdrawal +Notify_COMPANY_CREATE=Third party created +Notify_COMPANY_SENTBYMAIL=Mails sent from third party card +Notify_BILL_VALIDATE=Customer invoice validated +Notify_BILL_UNVALIDATE=Customer invoice unvalidated +Notify_BILL_PAYED=Customer invoice paid +Notify_BILL_CANCEL=Customer invoice canceled +Notify_BILL_SENTBYMAIL=Customer invoice sent by mail +Notify_BILL_SUPPLIER_VALIDATE=Vendor invoice validated +Notify_BILL_SUPPLIER_PAYED=Vendor invoice paid +Notify_BILL_SUPPLIER_SENTBYMAIL=Vendor invoice sent by mail +Notify_BILL_SUPPLIER_CANCELED=Vendor invoice cancelled +Notify_CONTRACT_VALIDATE=Contract validated +Notify_FICHINTER_VALIDATE=Intervention validated +Notify_FICHINTER_ADD_CONTACT=Added contact to Intervention +Notify_FICHINTER_SENTBYMAIL=Intervention sent by mail +Notify_SHIPPING_VALIDATE=Shipping validated +Notify_SHIPPING_SENTBYMAIL=Shipping sent by mail +Notify_MEMBER_VALIDATE=Member validated +Notify_MEMBER_MODIFY=Member modified +Notify_MEMBER_SUBSCRIPTION=Member subscribed +Notify_MEMBER_RESILIATE=Member terminated +Notify_MEMBER_DELETE=Member deleted +Notify_PROJECT_CREATE=Project creation +Notify_TASK_CREATE=Task created +Notify_TASK_MODIFY=Task modified +Notify_TASK_DELETE=Task deleted +Notify_EXPENSE_REPORT_VALIDATE=Expense report validated (approval required) +Notify_EXPENSE_REPORT_APPROVE=Expense report approved +Notify_HOLIDAY_VALIDATE=Leave request validated (approval required) +Notify_HOLIDAY_APPROVE=Leave request approved +SeeModuleSetup=See setup of module %s +NbOfAttachedFiles=Number of attached files/documents +TotalSizeOfAttachedFiles=Total size of attached files/documents +MaxSize=Maximum size +AttachANewFile=Attach a new file/document +LinkedObject=Linked object +NbOfActiveNotifications=Number of notifications (no. of recipient emails) +PredefinedMailTest=__(Hello)__\nThis is a test mail sent to __EMAIL__.\nThe two lines are separated by a carriage return.\n\n__USER_SIGNATURE__ +PredefinedMailTestHtml=__(Hello)__\nThis is a test 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__ +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__ +PredefinedMailContentSendSupplierProposal=__(Hello)__\n\nPlease find price request __REF__ attached\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ +PredefinedMailContentSendOrder=__(Hello)__\n\nPlease find order __REF__ attached\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ +PredefinedMailContentSendSupplierOrder=__(Hello)__\n\nPlease find our order __REF__ attached\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ +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__ +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 is a compact ERP/CRM supporting several business modules. A demo showcasing all modules makes no sense as this scenario never occurs (several hundred available). So, several demo profiles are available. +ChooseYourDemoProfil=Choose the demo profile that best suits your needs... +ChooseYourDemoProfilMore=...or build your own profile
    (manual module selection) +DemoFundation=Manage members of a foundation +DemoFundation2=Manage members and bank account of a foundation +DemoCompanyServiceOnly=Company or freelance selling service only +DemoCompanyShopWithCashDesk=Manage a shop with a cash desk +DemoCompanyProductAndStocks=Shop selling products with Point Of Sales +DemoCompanyManufacturing=Company manufacturing products +DemoCompanyAll=Company with multiple activities (all main modules) +CreatedBy=Created by %s +ModifiedBy=Modified by %s +ValidatedBy=Validated by %s +ClosedBy=Closed by %s +CreatedById=User id who created +ModifiedById=User id who made latest change +ValidatedById=User id who validated +CanceledById=User id who canceled +ClosedById=User id who closed +CreatedByLogin=User login who created +ModifiedByLogin=User login who made latest change +ValidatedByLogin=User login who validated +CanceledByLogin=User login who canceled +ClosedByLogin=User login who closed +FileWasRemoved=File %s was removed +DirWasRemoved=Directory %s was removed +FeatureNotYetAvailable=Feature not yet available in the current version +FeaturesSupported=Supported features +Width=Width +Height=Height +Depth=Depth +Top=Top +Bottom=Bottom +Left=Left +Right=Right +CalculatedWeight=Calculated weight +CalculatedVolume=Calculated volume +Weight=Weight +WeightUnitton=tonne +WeightUnitkg=kg +WeightUnitg=g +WeightUnitmg=mg +WeightUnitpound=pound +WeightUnitounce=ounce +Length=Length +LengthUnitm=m +LengthUnitdm=dm +LengthUnitcm=cm +LengthUnitmm=mm +Surface=Area +SurfaceUnitm2=m² +SurfaceUnitdm2=dm² +SurfaceUnitcm2=cm² +SurfaceUnitmm2=mm² +SurfaceUnitfoot2=ft² +SurfaceUnitinch2=in² +Volume=Volume +VolumeUnitm3=m³ +VolumeUnitdm3=dm³ (L) +VolumeUnitcm3=cm³ (ml) +VolumeUnitmm3=mm³ (µl) +VolumeUnitfoot3=ft³ +VolumeUnitinch3=in³ +VolumeUnitounce=ounce +VolumeUnitlitre=litre +VolumeUnitgallon=gallon +SizeUnitm=m +SizeUnitdm=dm +SizeUnitcm=cm +SizeUnitmm=mm +SizeUnitinch=inch +SizeUnitfoot=foot +SizeUnitpoint=point +BugTracker=Bug tracker +SendNewPasswordDesc=This form allows you to request a new password. It will be sent to your email address.
    Change will become effective once you click on the confirmation link in the email.
    Check your inbox. +BackToLoginPage=Back to login page +AuthenticationDoesNotAllowSendNewPassword=Authentication mode is %s.
    In this mode, Dolibarr can't know nor change your password.
    Contact your system administrator if you want to change your password. +EnableGDLibraryDesc=Install or enable GD library on your PHP installation to use this option. +ProfIdShortDesc=Prof Id %s is an information depending on third party country.
    For example, for country %s, it's code %s. +DolibarrDemo=Dolibarr ERP/CRM demo +StatsByNumberOfUnits=Statistics for sum of qty of products/services +StatsByNumberOfEntities=Statistics in number of referring entities (no. of invoice, or order...) +NumberOfProposals=Number of proposals +NumberOfCustomerOrders=Number of sales orders +NumberOfCustomerInvoices=Number of customer invoices +NumberOfSupplierProposals=Number of vendor proposals +NumberOfSupplierOrders=Number of purchase orders +NumberOfSupplierInvoices=Number of vendor invoices +NumberOfContracts=Number of contracts +NumberOfMos=Number of manufacturing orders +NumberOfUnitsProposals=Number of units on proposals +NumberOfUnitsCustomerOrders=Number of units on sales orders +NumberOfUnitsCustomerInvoices=Number of units on customer invoices +NumberOfUnitsSupplierProposals=Number of units on vendor proposals +NumberOfUnitsSupplierOrders=Number of units on purchase orders +NumberOfUnitsSupplierInvoices=Number of units on vendor invoices +NumberOfUnitsContracts=Number of units on contracts +NumberOfUnitsMos=Number of units to produce in manufacturing orders +EMailTextInterventionAddedContact=A new intervention %s has been assigned to you. +EMailTextInterventionValidated=The intervention %s has been validated. +EMailTextInvoiceValidated=Invoice %s has been validated. +EMailTextInvoicePayed=Invoice %s has been paid. +EMailTextProposalValidated=Proposal %s has been validated. +EMailTextProposalClosedSigned=Proposal %s has been closed signed. +EMailTextOrderValidated=Order %s has been validated. +EMailTextOrderApproved=Order %s has been approved. +EMailTextOrderValidatedBy=Order %s has been recorded by %s. +EMailTextOrderApprovedBy=Order %s has been approved by %s. +EMailTextOrderRefused=Order %s has been refused. +EMailTextOrderRefusedBy=Order %s has been refused by %s. +EMailTextExpeditionValidated=Shipping %s has been validated. +EMailTextExpenseReportValidated=Expense report %s has been validated. +EMailTextExpenseReportApproved=Expense report %s has been approved. +EMailTextHolidayValidated=Leave request %s has been validated. +EMailTextHolidayApproved=Leave request %s has been approved. +ImportedWithSet=Importation data set +DolibarrNotification=Automatic notification +ResizeDesc=Enter new width OR new height. Ratio will be kept during resizing... +NewLength=New width +NewHeight=New height +NewSizeAfterCropping=New size after cropping +DefineNewAreaToPick=Define new area on image to pick (left click on image then drag until you reach the opposite corner) +CurrentInformationOnImage=This tool was designed to help you to resize or crop an image. This is the information on the current edited image +ImageEditor=Image editor +YouReceiveMailBecauseOfNotification=You receive this message because your email has been added to list of targets to be informed of particular events into %s software of %s. +YouReceiveMailBecauseOfNotification2=This event is the following: +ThisIsListOfModules=This is a list of modules preselected by this demo profile (only most common modules are visible in this demo). Edit this to have a more personalized demo and click on "Start". +UseAdvancedPerms=Use the advanced permissions of some modules +FileFormat=File format +SelectAColor=Choose a color +AddFiles=Add Files +StartUpload=Start upload +CancelUpload=Cancel upload +FileIsTooBig=Files is too big +PleaseBePatient=Please be patient... +NewPassword=New password +ResetPassword=Reset password +RequestToResetPasswordReceived=A request to change your password has been received. +NewKeyIs=This is your new keys to login +NewKeyWillBe=Your new key to login to software will be +ClickHereToGoTo=Click here to go to %s +YouMustClickToChange=You must however first click on the following link to validate this password change +ForgetIfNothing=If you didn't request this change, just forget this email. Your credentials are kept safe. +IfAmountHigherThan=If amount higher than %s +SourcesRepository=Repository for sources +Chart=Chart +PassEncoding=Password encoding +PermissionsAdd=Permissions added +PermissionsDelete=Permissions removed +YourPasswordMustHaveAtLeastXChars=Your password must have at least %s chars +YourPasswordHasBeenReset=Your password has been reset successfully +ApplicantIpAddress=IP address of applicant +SMSSentTo=SMS sent to %s +MissingIds=Missing ids +ThirdPartyCreatedByEmailCollector=Third party created by email collector from email MSGID %s +ContactCreatedByEmailCollector=Contact/address created by email collector from email MSGID %s +ProjectCreatedByEmailCollector=Project created by email collector from email MSGID %s +TicketCreatedByEmailCollector=Ticket created by email collector from email MSGID %s +OpeningHoursFormatDesc=Use a - to separate opening and closing hours.
    Use a space to enter different ranges.
    Example: 8-12 14-18 + +##### Export ##### +ExportsArea=Exports area +AvailableFormats=Available formats +LibraryUsed=Library used +LibraryVersion=Library version +ExportableDatas=Exportable data +NoExportableData=No exportable data (no modules with exportable data loaded, or missing permissions) +##### External sites ##### +WebsiteSetup=Setup of module website +WEBSITE_PAGEURL=URL of page +WEBSITE_TITLE=Title +WEBSITE_DESCRIPTION=Description +WEBSITE_IMAGE=Image +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). +WEBSITE_KEYWORDS=Keywords +LinesToImport=Lines to import + +MemoryUsage=Memory usage +RequestDuration=Duration of request +PopuProp=Products/Services by popularity in Proposals +PopuCom=Products/Services by popularity in Orders +ProductStatistics=Products/Services Statistics +NbOfQtyInOrders=Qty in orders diff --git a/htdocs/langs/hi_IN/paybox.lang b/htdocs/langs/hi_IN/paybox.lang new file mode 100644 index 00000000000..1bbbef4017b --- /dev/null +++ b/htdocs/langs/hi_IN/paybox.lang @@ -0,0 +1,31 @@ +# Dolibarr language file - Source file is en_US - paybox +PayBoxSetup=PayBox module setup +PayBoxDesc=This module offer pages to allow payment on Paybox by customers. This can be used for a free payment or for a payment on a particular Dolibarr object (invoice, order, ...) +FollowingUrlAreAvailableToMakePayments=Following URLs are available to offer a page to a customer to make a payment on Dolibarr objects +PaymentForm=Payment form +WelcomeOnPaymentPage=Welcome to our online payment service +ThisScreenAllowsYouToPay=This screen allow you to make an online payment to %s. +ThisIsInformationOnPayment=This is information on payment to do +ToComplete=To complete +YourEMail=Email to receive payment confirmation +Creditor=Creditor +PaymentCode=Payment code +PayBoxDoPayment=Pay with Paybox +YouWillBeRedirectedOnPayBox=You will be redirected on secured Paybox page to input you credit card information +Continue=Next +SetupPayBoxToHavePaymentCreatedAutomatically=Setup your Paybox with url %s to have payment created automatically when validated by Paybox. +YourPaymentHasBeenRecorded=This page confirms that your payment has been recorded. Thank you. +YourPaymentHasNotBeenRecorded=Your payment has NOT been recorded and the transaction has been canceled. Thank you. +AccountParameter=Account parameters +UsageParameter=Usage parameters +InformationToFindParameters=Help to find your %s account information +PAYBOX_CGI_URL_V2=Url of Paybox CGI module for payment +VendorName=Name of vendor +CSSUrlForPaymentForm=CSS style sheet url for payment form +NewPayboxPaymentReceived=New Paybox payment received +NewPayboxPaymentFailed=New Paybox payment tried but failed +PAYBOX_PAYONLINE_SENDEMAIL=Email notification after payment attempt (success or fail) +PAYBOX_PBX_SITE=Value for PBX SITE +PAYBOX_PBX_RANG=Value for PBX Rang +PAYBOX_PBX_IDENTIFIANT=Value for PBX ID +PAYBOX_HMAC_KEY=HMAC key diff --git a/htdocs/langs/hi_IN/paypal.lang b/htdocs/langs/hi_IN/paypal.lang new file mode 100644 index 00000000000..5eb5f389445 --- /dev/null +++ b/htdocs/langs/hi_IN/paypal.lang @@ -0,0 +1,36 @@ +# Dolibarr language file - Source file is en_US - paypal +PaypalSetup=PayPal module setup +PaypalDesc=This module allows payment by customers via PayPal. This can be used for a ad-hoc payment or for a payment related to a Dolibarr object (invoice, order, ...) +PaypalOrCBDoPayment=Pay with PayPal (Card or PayPal) +PaypalDoPayment=Pay with PayPal +PAYPAL_API_SANDBOX=Mode test/sandbox +PAYPAL_API_USER=API username +PAYPAL_API_PASSWORD=API password +PAYPAL_API_SIGNATURE=API signature +PAYPAL_SSLVERSION=Curl SSL Version +PAYPAL_API_INTEGRAL_OR_PAYPALONLY=Offer "integral" payment (Credit card+PayPal) or "PayPal" only +PaypalModeIntegral=Integral +PaypalModeOnlyPaypal=PayPal only +ONLINE_PAYMENT_CSS_URL=Optional URL of CSS stylesheet on online payment page +ThisIsTransactionId=This is id of transaction: %s +PAYPAL_ADD_PAYMENT_URL=Include the PayPal payment url when you send a document by email +NewOnlinePaymentReceived=New online payment received +NewOnlinePaymentFailed=New online payment tried but failed +ONLINE_PAYMENT_SENDEMAIL=Email address for notifications after each payment attempt (for success and fail) +ReturnURLAfterPayment=Return URL after payment +ValidationOfOnlinePaymentFailed=Validation of online payment failed +PaymentSystemConfirmPaymentPageWasCalledButFailed=Payment confirmation page was called by payment system returned an error +SetExpressCheckoutAPICallFailed=SetExpressCheckout API call failed. +DoExpressCheckoutPaymentAPICallFailed=DoExpressCheckoutPayment API call failed. +DetailedErrorMessage=Detailed Error Message +ShortErrorMessage=Short Error Message +ErrorCode=Error Code +ErrorSeverityCode=Error Severity Code +OnlinePaymentSystem=Online payment system +PaypalLiveEnabled=PayPal "live" mode enabled (otherwise test/sandbox mode) +PaypalImportPayment=Import PayPal payments +PostActionAfterPayment=Post actions after payments +ARollbackWasPerformedOnPostActions=A rollback was performed on all Post actions. You must complete post actions manually if they are necessary. +ValidationOfPaymentFailed=Validation of payment has failed +CardOwner=Card holder +PayPalBalance=Paypal credit diff --git a/htdocs/langs/hi_IN/printing.lang b/htdocs/langs/hi_IN/printing.lang new file mode 100644 index 00000000000..16494583550 --- /dev/null +++ b/htdocs/langs/hi_IN/printing.lang @@ -0,0 +1,54 @@ +# Dolibarr language file - Source file is en_US - printing +Module64000Name=Direct Printing +Module64000Desc=Enable Direct Printing System +PrintingSetup=Setup of Direct Printing System +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=Direct Printing jobs +DirectPrint=Direct print +PrintingDriverDesc=Configuration variables for printing driver. +ListDrivers=List of drivers +PrintTestDesc=List of Printers. +FileWasSentToPrinter=File %s was sent to printer +ViaModule=via the module +NoActivePrintingModuleFound=No active driver to print document. Check setup of module %s. +PleaseSelectaDriverfromList=Please select a driver from list. +PleaseConfigureDriverfromList=Please configure the selected driver from list. +SetupDriver=Driver setup +TargetedPrinter=Targeted printer +UserConf=Setup per user +PRINTGCP_INFO=Google OAuth API setup +PRINTGCP_AUTHLINK=Authentication +PRINTGCP_TOKEN_ACCESS=Google Cloud Print OAuth Token +PrintGCPDesc=This driver allows sending documents directly to a printer using Google Cloud Print. +GCP_Name=Name +GCP_displayName=Display Name +GCP_Id=Printer Id +GCP_OwnerName=Owner Name +GCP_State=Printer State +GCP_connectionStatus=Online State +GCP_Type=Printer Type +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=Login +PRINTIPP_PASSWORD=Password +NoDefaultPrinterDefined=No default printer defined +DefaultPrinter=Default printer +Printer=Printer +IPP_Uri=Printer Uri +IPP_Name=Printer Name +IPP_State=Printer State +IPP_State_reason=State reason +IPP_State_reason1=State reason1 +IPP_BW=BW +IPP_Color=Color +IPP_Device=Device +IPP_Media=Printer media +IPP_Supported=Type of media +DirectPrintingJobsDesc=This page lists printing jobs found for available printers. +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/hi_IN/productbatch.lang b/htdocs/langs/hi_IN/productbatch.lang new file mode 100644 index 00000000000..54270c4a23b --- /dev/null +++ b/htdocs/langs/hi_IN/productbatch.lang @@ -0,0 +1,24 @@ +# ProductBATCH language file - en_US - ProductBATCH +ManageLotSerial=Use lot/serial number +ProductStatusOnBatch=Yes (lot/serial required) +ProductStatusNotOnBatch=No (lot/serial not used) +ProductStatusOnBatchShort=Yes +ProductStatusNotOnBatchShort=No +Batch=Lot/Serial +atleast1batchfield=Eat-by date or Sell-by date or Lot/Serial number +batch_number=Lot/Serial number +BatchNumberShort=Lot/Serial +EatByDate=Eat-by date +SellByDate=Sell-by date +DetailBatchNumber=Lot/Serial details +printBatch=Lot/Serial: %s +printEatby=Eat-by: %s +printSellby=Sell-by: %s +printQty=Qty: %d +AddDispatchBatchLine=Add a line for Shelf Life dispatching +WhenProductBatchModuleOnOptionAreForced=When module Lot/Serial is on, automatic stock decrease is forced to 'Decrease real stocks on shipping validation' and automatic increase mode is forced to 'Increase real stocks on manual dispatching into warehouses' and can't be edited. Other options can be defined as you want. +ProductDoesNotUseBatchSerial=This product does not use lot/serial number +ProductLotSetup=Setup of module lot/serial +ShowCurrentStockOfLot=Show current stock for couple product/lot +ShowLogOfMovementIfLot=Show log of movements for couple product/lot +StockDetailPerBatch=Stock detail per lot diff --git a/htdocs/langs/hi_IN/products.lang b/htdocs/langs/hi_IN/products.lang new file mode 100644 index 00000000000..a31243a07b6 --- /dev/null +++ b/htdocs/langs/hi_IN/products.lang @@ -0,0 +1,385 @@ +# Dolibarr language file - Source file is en_US - products +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 +TMenuProducts=Products +TMenuServices=Services +Products=Products +Services=Services +Product=Product +Service=Service +ProductId=Product/service id +Create=Create +Reference=Reference +NewProduct=New product +NewService=New service +ProductVatMassChange=Global VAT Update +ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL products and services! +MassBarcodeInit=Mass barcode init +MassBarcodeInitDesc=This page can be used to initialize a barcode on objects that does not have barcode defined. Check before that setup of module barcode is complete. +ProductAccountancyBuyCode=Accounting code (purchase) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) +ProductAccountancySellCode=Accounting code (sale) +ProductAccountancySellIntraCode=Accounting code (sale intra-Community) +ProductAccountancySellExportCode=Accounting code (sale export) +ProductOrService=Product or Service +ProductsAndServices=Products and Services +ProductsOrServices=Products or Services +ProductsPipeServices=Products | Services +ProductsOnSale=Products for sale +ProductsOnPurchase=Products for purchase +ProductsOnSaleOnly=Products for sale only +ProductsOnPurchaseOnly=Products for purchase only +ProductsNotOnSell=Products not for sale and not for purchase +ProductsOnSellAndOnBuy=Products for sale and for purchase +ServicesOnSale=Services for sale +ServicesOnPurchase=Services for purchase +ServicesOnSaleOnly=Services for sale only +ServicesOnPurchaseOnly=Services for purchase only +ServicesNotOnSell=Services not for sale and not for purchase +ServicesOnSellAndOnBuy=Services for sale and for purchase +LastModifiedProductsAndServices=Last %s modified products/services +LastRecordedProducts=Latest %s recorded products +LastRecordedServices=Latest %s recorded services +CardProduct0=Product +CardProduct1=Service +Stock=Stock +MenuStocks=Stocks +Stocks=Stocks and location (warehouse) of products +Movements=Movements +Sell=Sell +Buy=Purchase +OnSell=For sale +OnBuy=For purchase +NotOnSell=Not for sale +ProductStatusOnSell=For sale +ProductStatusNotOnSell=Not for sale +ProductStatusOnSellShort=For sale +ProductStatusNotOnSellShort=Not for sale +ProductStatusOnBuy=For purchase +ProductStatusNotOnBuy=Not for purchase +ProductStatusOnBuyShort=For purchase +ProductStatusNotOnBuyShort=Not for purchase +UpdateVAT=Update vat +UpdateDefaultPrice=Update default price +UpdateLevelPrices=Update prices for each level +AppliedPricesFrom=Applied from +SellingPrice=Selling price +SellingPriceHT=Selling price (excl. tax) +SellingPriceTTC=Selling price (inc. tax) +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. +CostPriceUsage=This value could be used for margin calculation. +SoldAmount=Sold amount +PurchasedAmount=Purchased amount +NewPrice=New price +MinPrice=Min. sell price +EditSellingPriceLabel=Edit selling price label +CantBeLessThanMinPrice=The selling price can't be lower than minimum allowed for this product (%s without tax). This message can also appears if you type a too important discount. +ContractStatusClosed=Closed +ErrorProductAlreadyExists=A product with reference %s already exists. +ErrorProductBadRefOrLabel=Wrong value for reference or label. +ErrorProductClone=There was a problem while trying to clone the product or service. +ErrorPriceCantBeLowerThanMinPrice=Error, price can't be lower than minimum price. +Suppliers=Vendors +SupplierRef=Vendor SKU +ShowProduct=Show product +ShowService=Show service +ProductsAndServicesArea=Product and Services area +ProductsArea=Product area +ServicesArea=Services area +ListOfStockMovements=List of stock movements +BuyingPrice=Buying price +PriceForEachProduct=Products with specific prices +SupplierCard=Vendor card +PriceRemoved=Price removed +BarCode=Barcode +BarcodeType=Barcode type +SetDefaultBarcodeType=Set barcode type +BarcodeValue=Barcode value +NoteNotVisibleOnBill=Note (not visible on invoices, proposals...) +ServiceLimitedDuration=If product is a service with limited duration: +MultiPricesAbility=Multiple price segments per product/service (each customer is in one price segment) +MultiPricesNumPrices=Number of prices +AssociatedProductsAbility=Activate virtual products (kits) +AssociatedProducts=Virtual products +AssociatedProductsNumber=Number of products composing this virtual product +ParentProductsNumber=Number of parent packaging product +ParentProducts=Parent products +IfZeroItIsNotAVirtualProduct=If 0, this product is not a virtual product +IfZeroItIsNotUsedByVirtualProduct=If 0, this product is not used by any virtual product +KeywordFilter=Keyword filter +CategoryFilter=Category filter +ProductToAddSearch=Search product to add +NoMatchFound=No match found +ListOfProductsServices=List of products/services +ProductAssociationList=List of products/services that are component(s) of this virtual product/kit +ProductParentList=List of virtual products/services with this product as a component +ErrorAssociationIsFatherOfThis=One of selected product is parent with current product +DeleteProduct=Delete a product/service +ConfirmDeleteProduct=Are you sure you want to delete this product/service? +ProductDeleted=Product/Service "%s" deleted from database. +ExportDataset_produit_1=Products +ExportDataset_service_1=Services +ImportDataset_produit_1=Products +ImportDataset_service_1=Services +DeleteProductLine=Delete product line +ConfirmDeleteProductLine=Are you sure you want to delete this product line? +ProductSpecial=Special +QtyMin=Min. purchase quantity +PriceQtyMin=Price quantity min. +PriceQtyMinCurrency=Price (currency) for this qty. (no discount) +VATRateForSupplierProduct=VAT Rate (for this vendor/product) +DiscountQtyMin=Discount for this qty. +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=Predefined products/services to sell +PredefinedProductsToPurchase=Predefined product to purchase +PredefinedServicesToPurchase=Predefined services to purchase +PredefinedProductsAndServicesToPurchase=Predefined products/services to purchase +NotPredefinedProducts=Not predefined products/services +GenerateThumb=Generate thumb +ServiceNb=Service #%s +ListProductServiceByPopularity=List of products/services by popularity +ListProductByPopularity=List of products by popularity +ListServiceByPopularity=List of services by popularity +Finished=Manufactured product +RowMaterial=Raw Material +ConfirmCloneProduct=Are you sure you want to clone product or service %s? +CloneContentProduct=Clone all main information of product/service +ClonePricesProduct=Clone prices +CloneCategoriesProduct=Clone tags/categories linked +CloneCompositionProduct=Clone virtual product/service +CloneCombinationsProduct=Clone product variants +ProductIsUsed=This product is used +NewRefForClone=Ref. of new product/service +SellingPrices=Selling prices +BuyingPrices=Buying prices +CustomerPrices=Customer prices +SuppliersPrices=Vendor prices +SuppliersPricesOfProductsOrServices=Vendor prices (of products or services) +CustomCode=Customs / Commodity / HS code +CountryOrigin=Origin country +Nature=Nature of product (material/finished) +ShortLabel=Short label +Unit=Unit +p=u. +set=set +se=set +second=second +s=s +hour=hour +h=h +day=day +d=d +kilogram=kilogram +kg=Kg +gram=gram +g=g +meter=meter +m=m +lm=lm +m2=m² +m3=m³ +liter=liter +l=L +unitP=Piece +unitSET=Set +unitS=Second +unitH=Hour +unitD=Day +unitG=Gram +unitM=Meter +unitLM=Linear meter +unitM2=Square meter +unitM3=Cubic meter +unitL=Liter +unitT=ton +unitKG=kg +unitG=Gram +unitMG=mg +unitLB=pound +unitOZ=ounce +unitM=Meter +unitDM=dm +unitCM=cm +unitMM=mm +unitFT=ft +unitIN=in +unitM2=Square meter +unitDM2=dm² +unitCM2=cm² +unitMM2=mm² +unitFT2=ft² +unitIN2=in² +unitM3=Cubic meter +unitDM3=dm³ +unitCM3=cm³ +unitMM3=mm³ +unitFT3=ft³ +unitIN3=in³ +unitOZ3=ounce +unitgallon=gallon +ProductCodeModel=Product ref template +ServiceCodeModel=Service ref template +CurrentProductPrice=Current price +AlwaysUseNewPrice=Always use current price of product/service +AlwaysUseFixedPrice=Use the fixed price +PriceByQuantity=Different prices by quantity +DisablePriceByQty=Disable prices by quantity +PriceByQuantityRange=Quantity range +MultipriceRules=Price segment rules +UseMultipriceRules=Use price segment rules (defined into product module setup) to auto calculate prices of all other segments according to first segment +PercentVariationOver=%% variation over %s +PercentDiscountOver=%% discount over %s +KeepEmptyForAutoCalculation=Keep empty to have this calculated automatically from weight or volume of products +VariantRefExample=Examples: COL, SIZE +VariantLabelExample=Examples: Color, Size +### composition fabrication +Build=Produce +ProductsMultiPrice=Products and prices for each price segment +ProductsOrServiceMultiPrice=Customer prices (of products or services, multi-prices) +ProductSellByQuarterHT=Products turnover quarterly before tax +ServiceSellByQuarterHT=Services turnover quarterly before tax +Quarter1=1st. Quarter +Quarter2=2nd. Quarter +Quarter3=3rd. Quarter +Quarter4=4th. Quarter +BarCodePrintsheet=Print barcode +PageToGenerateBarCodeSheets=With this tool, you can print sheets of barcode stickers. Choose format of your sticker page, type of barcode and value of barcode, then click on button %s. +NumberOfStickers=Number of stickers to print on page +PrintsheetForOneBarCode=Print several stickers for one barcode +BuildPageToPrint=Generate page to print +FillBarCodeTypeAndValueManually=Fill barcode type and value manually. +FillBarCodeTypeAndValueFromProduct=Fill barcode type and value from barcode of a product. +FillBarCodeTypeAndValueFromThirdParty=Fill barcode type and value from barcode of a third party. +DefinitionOfBarCodeForProductNotComplete=Definition of type or value of barcode not complete for product %s. +DefinitionOfBarCodeForThirdpartyNotComplete=Definition of type or value of barcode non complete for third party %s. +BarCodeDataForProduct=Barcode information of product %s: +BarCodeDataForThirdparty=Barcode information of third party %s: +ResetBarcodeForAllRecords=Define barcode value for all record (this will also reset barcode value already defined with new values) +PriceByCustomer=Different prices for each customer +PriceCatalogue=A single sell price per product/service +PricingRule=Rules for selling prices +AddCustomerPrice=Add price by customer +ForceUpdateChildPriceSoc=Set same price on customer subsidiaries +PriceByCustomerLog=Log of previous customer prices +MinimumPriceLimit=Minimum price can't be lower then %s +MinimumRecommendedPrice=Minimum recommended price is: %s +PriceExpressionEditor=Price expression editor +PriceExpressionSelected=Selected price expression +PriceExpressionEditorHelp1="price = 2 + 2" or "2 + 2" for setting the price. Use ; to separate expressions +PriceExpressionEditorHelp2=You can access ExtraFields with variables like #extrafield_myextrafieldkey# and global variables with #global_mycode# +PriceExpressionEditorHelp3=In both product/service and vendor prices there are these variables available:
    #tva_tx# #localtax1_tx# #localtax2_tx# #weight# #length# #surface# #price_min# +PriceExpressionEditorHelp4=In product/service price only: #supplier_min_price#
    In vendor prices only: #supplier_quantity# and #supplier_tva_tx# +PriceExpressionEditorHelp5=Available global values: +PriceMode=Price mode +PriceNumeric=Number +DefaultPrice=Default price +ComposedProductIncDecStock=Increase/Decrease stock on parent change +ComposedProduct=Child products +MinSupplierPrice=Minimum buying price +MinCustomerPrice=Minimum selling price +DynamicPriceConfiguration=Dynamic price configuration +DynamicPriceDesc=You may define mathematical formulae to calculate Customer or Vendor prices. Such formulas can use all mathematical operators, some constants and variables. You can define here the variables you wish to use. If the variable needs an automatic update, you may define the external URL to allow Dolibarr to update the value automatically. +AddVariable=Add Variable +AddUpdater=Add Updater +GlobalVariables=Global variables +VariableToUpdate=Variable to update +GlobalVariableUpdaters=External updaters for variables +GlobalVariableUpdaterType0=JSON data +GlobalVariableUpdaterHelp0=Parses JSON data from specified URL, VALUE specifies the location of relevant value, +GlobalVariableUpdaterHelpFormat0=Format for request {"URL": "http://example.com/urlofjson", "VALUE": "array1,array2,targetvalue"} +GlobalVariableUpdaterType1=WebService data +GlobalVariableUpdaterHelp1=Parses WebService data from specified URL, NS specifies the namespace, VALUE specifies the location of relevant value, DATA should contain the data to send and METHOD is the calling WS method +GlobalVariableUpdaterHelpFormat1=Format for request is {"URL": "http://example.com/urlofws", "VALUE": "array,targetvalue", "NS": "http://example.com/urlofns", "METHOD": "myWSMethod", "DATA": {"your": "data", "to": "send"}} +UpdateInterval=Update interval (minutes) +LastUpdated=Latest update +CorrectlyUpdated=Correctly updated +PropalMergePdfProductActualFile=Files use to add into PDF Azur are/is +PropalMergePdfProductChooseFile=Select PDF files +IncludingProductWithTag=Including product/service with tag +DefaultPriceRealPriceMayDependOnCustomer=Default price, real price may depend on customer +WarningSelectOneDocument=Please select at least one document +DefaultUnitToShow=Unit +NbOfQtyInProposals=Qty in proposals +ClinkOnALinkOfColumn=Click on a link of column %s to get a detailed view... +ProductsOrServicesTranslations=Products/Services translations +TranslatedLabel=Translated label +TranslatedDescription=Translated description +TranslatedNote=Translated notes +ProductWeight=Weight for 1 product +ProductVolume=Volume for 1 product +WeightUnits=Weight unit +VolumeUnits=Volume unit +WidthUnits=Width unit +LengthUnits=Length unit +HeightUnits=Height unit +SurfaceUnits=Surface unit +SizeUnits=Size unit +DeleteProductBuyPrice=Delete buying price +ConfirmDeleteProductBuyPrice=Are you sure you want to delete this buying price? +SubProduct=Sub product +ProductSheet=Product sheet +ServiceSheet=Service sheet +PossibleValues=Possible values +GoOnMenuToCreateVairants=Go on menu %s - %s to prepare attribute variants (like colors, size, ...) +UseProductFournDesc=Add a feature to define the descriptions of products defined by the vendors in addition to descriptions for customers +ProductSupplierDescription=Vendor description for the product +UseProductSupplierPackaging=Use packaging on supplier prices (recalculate quantities according to packaging set on supplier price when adding/updating line in supplier documents) +PackagingForThisProduct=Packaging +QtyRecalculatedWithPackaging=The quantity of the line were recalculated according to supplier packaging + +#Attributes +VariantAttributes=Variant attributes +ProductAttributes=Variant attributes for products +ProductAttributeName=Variant attribute %s +ProductAttribute=Variant attribute +ProductAttributeDeleteDialog=Are you sure you want to delete this attribute? All values will be deleted +ProductAttributeValueDeleteDialog=Are you sure you want to delete the value "%s" with reference "%s" of this attribute? +ProductCombinationDeleteDialog=Are you sure want to delete the variant of the product "%s"? +ProductCombinationAlreadyUsed=There was an error while deleting the variant. Please check it is not being used in any object +ProductCombinations=Variants +PropagateVariant=Propagate variants +HideProductCombinations=Hide products variant in the products selector +ProductCombination=Variant +NewProductCombination=New variant +EditProductCombination=Editing variant +NewProductCombinations=New variants +EditProductCombinations=Editing variants +SelectCombination=Select combination +ProductCombinationGenerator=Variants generator +Features=Features +PriceImpact=Price impact +WeightImpact=Weight impact +NewProductAttribute=New attribute +NewProductAttributeValue=New attribute value +ErrorCreatingProductAttributeValue=There was an error while creating the attribute value. It could be because there is already an existing value with that reference +ProductCombinationGeneratorWarning=If you continue, before generating new variants, all previous ones will be DELETED. Already existing ones will be updated with the new values +TooMuchCombinationsWarning=Generating lots of variants may result in high CPU, memory usage and Dolibarr not able to create them. Enabling the option "%s" may help reduce memory usage. +DoNotRemovePreviousCombinations=Do not remove previous variants +UsePercentageVariations=Use percentage variations +PercentageVariation=Percentage variation +ErrorDeletingGeneratedProducts=There was an error while trying to delete existing product variants +NbOfDifferentValues=No. of different values +NbProducts=Number of products +ParentProduct=Parent product +HideChildProducts=Hide variant products +ShowChildProducts=Show variant products +NoEditVariants=Go to Parent product card and edit variants price impact in the variants tab +ConfirmCloneProductCombinations=Would you like to copy all the product variants to the other parent product with the given reference? +CloneDestinationReference=Destination product reference +ErrorCopyProductCombinations=There was an error while copying the product variants +ErrorDestinationProductNotFound=Destination product not found +ErrorProductCombinationNotFound=Product variant not found +ActionAvailableOnVariantProductOnly=Action only available on the variant of product +ProductsPricePerCustomer=Product prices per customers +ProductSupplierExtraFields=Additional Attributes (Supplier Prices) +DeleteLinkedProduct=Delete the child product linked to the combination diff --git a/htdocs/langs/hi_IN/projects.lang b/htdocs/langs/hi_IN/projects.lang new file mode 100644 index 00000000000..bb42bff3c87 --- /dev/null +++ b/htdocs/langs/hi_IN/projects.lang @@ -0,0 +1,267 @@ +# Dolibarr language file - Source file is en_US - projects +RefProject=Ref. project +ProjectRef=Project ref. +ProjectId=Project Id +ProjectLabel=Project label +ProjectsArea=Projects Area +ProjectStatus=Project status +SharedProject=Everybody +PrivateProject=Project contacts +ProjectsImContactFor=Projects for I am explicitly a contact +AllAllowedProjects=All project I can read (mine + public) +AllProjects=All projects +MyProjectsDesc=This view is limited to projects you are a contact for +ProjectsPublicDesc=This view presents all projects you are allowed to read. +TasksOnProjectsPublicDesc=This view presents all tasks on projects you are allowed to read. +ProjectsPublicTaskDesc=This view presents all projects and tasks you are allowed to read. +ProjectsDesc=This view presents all projects (your user permissions grant you permission to view everything). +TasksOnProjectsDesc=This view presents all tasks on all projects (your user permissions grant you permission to view everything). +MyTasksDesc=This view is limited to projects or tasks you are a contact for +OnlyOpenedProject=Only open projects are visible (projects in draft or closed status are not visible). +ClosedProjectsAreHidden=Closed projects are not visible. +TasksPublicDesc=This view presents all projects and tasks you are allowed to read. +TasksDesc=This view presents all projects and tasks (your user permissions grant you permission to view everything). +AllTaskVisibleButEditIfYouAreAssigned=All tasks for qualified projects are visible, but you can enter time only for task assigned to selected user. Assign task if you need to enter time on it. +OnlyYourTaskAreVisible=Only tasks assigned to you are visible. Assign task to yourself if it is not visible and you need to enter time on it. +ImportDatasetTasks=Tasks of projects +ProjectCategories=Project tags/categories +NewProject=New project +AddProject=Create project +DeleteAProject=Delete a project +DeleteATask=Delete a task +ConfirmDeleteAProject=Are you sure you want to delete this project? +ConfirmDeleteATask=Are you sure you want to delete this task? +OpenedProjects=Open projects +OpenedTasks=Open tasks +OpportunitiesStatusForOpenedProjects=Leads amount of open projects by status +OpportunitiesStatusForProjects=Leads amount of projects by status +ShowProject=Show project +ShowTask=Show task +SetProject=Set project +NoProject=No project defined or owned +NbOfProjects=Number of projects +NbOfTasks=Number of tasks +TimeSpent=Time spent +TimeSpentByYou=Time spent by you +TimeSpentByUser=Time spent by user +TimesSpent=Time spent +TaskId=Task ID +RefTask=Task ref. +LabelTask=Task label +TaskTimeSpent=Time spent on tasks +TaskTimeUser=User +TaskTimeNote=Note +TaskTimeDate=Date +TasksOnOpenedProject=Tasks on open projects +WorkloadNotDefined=Workload not defined +NewTimeSpent=Time spent +MyTimeSpent=My time spent +BillTime=Bill the time spent +BillTimeShort=Bill time +TimeToBill=Time not billed +TimeBilled=Time billed +Tasks=Tasks +Task=Task +TaskDateStart=Task start date +TaskDateEnd=Task end date +TaskDescription=Task description +NewTask=New task +AddTask=Create task +AddTimeSpent=Create time spent +AddHereTimeSpentForDay=Add here time spent for this day/task +AddHereTimeSpentForWeek=Add here time spent for this week/task +Activity=Activity +Activities=Tasks/activities +MyActivities=My tasks/activities +MyProjects=My projects +MyProjectsArea=My projects Area +DurationEffective=Effective duration +ProgressDeclared=Declared progress +TaskProgressSummary=Task progress +CurentlyOpenedTasks=Curently open tasks +TheReportedProgressIsLessThanTheCalculatedProgressionByX=The declared progress is less %s than the calculated progression +TheReportedProgressIsMoreThanTheCalculatedProgressionByX=The declared progress is more %s than the calculated progression +ProgressCalculated=Calculated progress +WhichIamLinkedTo=which I'm linked to +WhichIamLinkedToProject=which I'm linked to project +Time=Time +ListOfTasks=List of tasks +GoToListOfTimeConsumed=Go to list of time consumed +GanttView=Gantt View +ListProposalsAssociatedProject=List of the commercial proposals related to the project +ListOrdersAssociatedProject=List of sales orders related to the project +ListInvoicesAssociatedProject=List of customer invoices related to the project +ListPredefinedInvoicesAssociatedProject=List of customer template invoices related to the project +ListSupplierOrdersAssociatedProject=List of purchase orders related to the project +ListSupplierInvoicesAssociatedProject=List of vendor invoices related to the project +ListContractAssociatedProject=List of contracts related to the project +ListShippingAssociatedProject=List of shippings related to the project +ListFichinterAssociatedProject=List of interventions related to the project +ListExpenseReportsAssociatedProject=List of expense reports related to the project +ListDonationsAssociatedProject=List of donations related to the project +ListVariousPaymentsAssociatedProject=List of miscellaneous payments related to the project +ListSalariesAssociatedProject=List of payments of salaries related to the project +ListActionsAssociatedProject=List of events related to the project +ListMOAssociatedProject=List of manufacturing orders related to the project +ListTaskTimeUserProject=List of time consumed on tasks of project +ListTaskTimeForTask=List of time consumed on task +ActivityOnProjectToday=Activity on project today +ActivityOnProjectYesterday=Activity on project yesterday +ActivityOnProjectThisWeek=Activity on project this week +ActivityOnProjectThisMonth=Activity on project this month +ActivityOnProjectThisYear=Activity on project this year +ChildOfProjectTask=Child of project/task +ChildOfTask=Child of task +TaskHasChild=Task has child +NotOwnerOfProject=Not owner of this private project +AffectedTo=Allocated to +CantRemoveProject=This project can't be removed as it is referenced by some other objects (invoice, orders or other). See referers tab. +ValidateProject=Validate projet +ConfirmValidateProject=Are you sure you want to validate this project? +CloseAProject=Close project +ConfirmCloseAProject=Are you sure you want to close this project? +AlsoCloseAProject=Also close project (keep it open if you still need to follow production tasks on it) +ReOpenAProject=Open project +ConfirmReOpenAProject=Are you sure you want to re-open this project? +ProjectContact=Contacts of project +TaskContact=Task contacts +ActionsOnProject=Events on project +YouAreNotContactOfProject=You are not a contact of this private project +UserIsNotContactOfProject=User is not a contact of this private project +DeleteATimeSpent=Delete time spent +ConfirmDeleteATimeSpent=Are you sure you want to delete this time spent? +DoNotShowMyTasksOnly=See also tasks not assigned to me +ShowMyTasksOnly=View only tasks assigned to me +TaskRessourceLinks=Contacts of task +ProjectsDedicatedToThisThirdParty=Projects dedicated to this third party +NoTasks=No tasks for this project +LinkedToAnotherCompany=Linked to other third party +TaskIsNotAssignedToUser=Task not assigned to user. Use button '%s' to assign task now. +ErrorTimeSpentIsEmpty=Time spent is empty +ThisWillAlsoRemoveTasks=This action will also delete all tasks of project (%s tasks at the moment) and all inputs of time spent. +IfNeedToUseOtherObjectKeepEmpty=If some objects (invoice, order, ...), belonging to another third party, must be linked to the project to create, keep this empty to have the project being multi third parties. +CloneTasks=Clone tasks +CloneContacts=Clone contacts +CloneNotes=Clone notes +CloneProjectFiles=Clone project joined files +CloneTaskFiles=Clone task(s) joined files (if task(s) cloned) +CloneMoveDate=Update project/tasks dates from now? +ConfirmCloneProject=Are you sure to clone this project? +ProjectReportDate=Change task dates according to new project start date +ErrorShiftTaskDate=Impossible to shift task date according to new project start date +ProjectsAndTasksLines=Projects and tasks +ProjectCreatedInDolibarr=Project %s created +ProjectValidatedInDolibarr=Project %s validated +ProjectModifiedInDolibarr=Project %s modified +TaskCreatedInDolibarr=Task %s created +TaskModifiedInDolibarr=Task %s modified +TaskDeletedInDolibarr=Task %s deleted +OpportunityStatus=Lead status +OpportunityStatusShort=Lead status +OpportunityProbability=Lead probability +OpportunityProbabilityShort=Lead probab. +OpportunityAmount=Lead amount +OpportunityAmountShort=Lead amount +OpportunityWeightedAmount=Opportunity weighted amount +OpportunityWeightedAmountShort=Opp. weighted amount +OpportunityAmountAverageShort=Average lead amount +OpportunityAmountWeigthedShort=Weighted lead amount +WonLostExcluded=Won/Lost excluded +##### Types de contacts ##### +TypeContact_project_internal_PROJECTLEADER=Project leader +TypeContact_project_external_PROJECTLEADER=Project leader +TypeContact_project_internal_PROJECTCONTRIBUTOR=Contributor +TypeContact_project_external_PROJECTCONTRIBUTOR=Contributor +TypeContact_project_task_internal_TASKEXECUTIVE=Task executive +TypeContact_project_task_external_TASKEXECUTIVE=Task executive +TypeContact_project_task_internal_TASKCONTRIBUTOR=Contributor +TypeContact_project_task_external_TASKCONTRIBUTOR=Contributor +SelectElement=Select element +AddElement=Link to element +# Documents models +DocumentModelBeluga=Project document template for linked objects overview +DocumentModelBaleine=Project document template for tasks +DocumentModelTimeSpent=Project report template for time spent +PlannedWorkload=Planned workload +PlannedWorkloadShort=Workload +ProjectReferers=Related items +ProjectMustBeValidatedFirst=Project must be validated first +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time +InputPerDay=Input per day +InputPerWeek=Input per week +InputPerMonth=Input per month +InputDetail=Input detail +TimeAlreadyRecorded=This is time spent already recorded for this task/day and user %s +ProjectsWithThisUserAsContact=Projects with this user as contact +TasksWithThisUserAsContact=Tasks assigned to this user +ResourceNotAssignedToProject=Not assigned to project +ResourceNotAssignedToTheTask=Not assigned to the task +NoUserAssignedToTheProject=No users assigned to this project +TimeSpentBy=Time spent by +TasksAssignedTo=Tasks assigned to +AssignTaskToMe=Assign task to me +AssignTaskToUser=Assign task to %s +SelectTaskToAssign=Select task to assign... +AssignTask=Assign +ProjectOverview=Overview +ManageTasks=Use projects to follow tasks and/or report time spent (timesheets) +ManageOpportunitiesStatus=Use projects to follow leads/opportinuties +ProjectNbProjectByMonth=No. of created projects by month +ProjectNbTaskByMonth=No. of created tasks by month +ProjectOppAmountOfProjectsByMonth=Amount of leads by month +ProjectWeightedOppAmountOfProjectsByMonth=Weighted amount of leads by month +ProjectOpenedProjectByOppStatus=Open project/lead by lead status +ProjectsStatistics=Statistics on projects/leads +TasksStatistics=Statistics on project/lead tasks +TaskAssignedToEnterTime=Task assigned. Entering time on this task should be possible. +IdTaskTime=Id task time +YouCanCompleteRef=If you want to complete the ref with some suffix, it is recommanded to add a - character to separate it, so the automatic numbering will still work correctly for next projects. For example %s-MYSUFFIX +OpenedProjectsByThirdparties=Open projects by third parties +OnlyOpportunitiesShort=Only leads +OpenedOpportunitiesShort=Open leads +NotOpenedOpportunitiesShort=Not an open lead +NotAnOpportunityShort=Not a lead +OpportunityTotalAmount=Total amount of leads +OpportunityPonderatedAmount=Weighted amount of leads +OpportunityPonderatedAmountDesc=Leads amount weighted with probability +OppStatusPROSP=Prospection +OppStatusQUAL=Qualification +OppStatusPROPO=Proposal +OppStatusNEGO=Negociation +OppStatusPENDING=Pending +OppStatusWON=Won +OppStatusLOST=Lost +Budget=Budget +AllowToLinkFromOtherCompany=Allow to link project from other company

    Supported values:
    - Keep empty: Can link any project of the company (default)
    - "all": Can link any projects, even projects of other companies
    - A list of third-party ids separated by commas: can link all projects of these third partys (Example: 123,4795,53)
    +LatestProjects=Latest %s projects +LatestModifiedProjects=Latest %s modified projects +OtherFilteredTasks=Other filtered tasks +NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) +ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you +# Comments trans +AllowCommentOnTask=Allow user comments on tasks +AllowCommentOnProject=Allow user comments on projects +DontHavePermissionForCloseProject=You do not have permissions to close the project %s +DontHaveTheValidateStatus=The project %s must be open to be closed +RecordsClosed=%s project(s) closed +SendProjectRef=Information project %s +ModuleSalaryToDefineHourlyRateMustBeEnabled=Module 'Salaries' must be enabled to define employee hourly rate to have time spent valorized +NewTaskRefSuggested=Task ref already used, a new task ref is required +TimeSpentInvoiced=Time spent billed +TimeSpentForInvoice=Time spent +OneLinePerUser=One line per user +ServiceToUseOnLines=Service to use on lines +InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project +ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. +ProjectFollowOpportunity=Follow opportunity +ProjectFollowTasks=Follow tasks or time spent +Usage=Usage +UsageOpportunity=Usage: Opportunity +UsageTasks=Usage: Tasks +UsageBillTimeShort=Usage: Bill time +InvoiceToUse=Draft invoice to use +NewInvoice=New invoice +OneLinePerTask=One line per task +OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/hi_IN/propal.lang b/htdocs/langs/hi_IN/propal.lang new file mode 100644 index 00000000000..71d6857c909 --- /dev/null +++ b/htdocs/langs/hi_IN/propal.lang @@ -0,0 +1,86 @@ +# Dolibarr language file - Source file is en_US - propal +Proposals=Commercial proposals +Proposal=Commercial proposal +ProposalShort=Proposal +ProposalsDraft=Draft commercial proposals +ProposalsOpened=Open commercial proposals +CommercialProposal=Commercial proposal +PdfCommercialProposalTitle=Commercial proposal +ProposalCard=Proposal card +NewProp=New commercial proposal +NewPropal=New proposal +Prospect=Prospect +DeleteProp=Delete commercial proposal +ValidateProp=Validate commercial proposal +AddProp=Create proposal +ConfirmDeleteProp=Are you sure you want to delete this commercial proposal? +ConfirmValidateProp=Are you sure you want to validate this commercial proposal under name %s? +LastPropals=Latest %s proposals +LastModifiedProposals=Latest %s modified proposals +AllPropals=All proposals +SearchAProposal=Search a proposal +NoProposal=No proposal +ProposalsStatistics=Commercial proposal's statistics +NumberOfProposalsByMonth=Number by month +AmountOfProposalsByMonthHT=Amount by month (excl. tax) +NbOfProposals=Number of commercial proposals +ShowPropal=Show proposal +PropalsDraft=Drafts +PropalsOpened=Open +PropalStatusDraft=Draft (needs to be validated) +PropalStatusValidated=Validated (proposal is open) +PropalStatusSigned=Signed (needs billing) +PropalStatusNotSigned=Not signed (closed) +PropalStatusBilled=Billed +PropalStatusDraftShort=Draft +PropalStatusValidatedShort=Validated (open) +PropalStatusClosedShort=Closed +PropalStatusSignedShort=Signed +PropalStatusNotSignedShort=Not signed +PropalStatusBilledShort=Billed +PropalsToClose=Commercial proposals to close +PropalsToBill=Signed commercial proposals to bill +ListOfProposals=List of commercial proposals +ActionsOnPropal=Events on proposal +RefProposal=Commercial proposal ref +SendPropalByMail=Send commercial proposal by mail +DatePropal=Date of proposal +DateEndPropal=Validity ending date +ValidityDuration=Validity duration +CloseAs=Set status to +SetAcceptedRefused=Set accepted/refused +ErrorPropalNotFound=Propal %s not found +AddToDraftProposals=Add to draft proposal +NoDraftProposals=No draft proposals +CopyPropalFrom=Create commercial proposal by copying existing proposal +CreateEmptyPropal=Create empty commercial proposal or from list of products/services +DefaultProposalDurationValidity=Default commercial proposal validity duration (in days) +UseCustomerContactAsPropalRecipientIfExist=Use contact/address with type 'Contact following-up proposal' if defined instead of third party address as proposal recipient address +ConfirmClonePropal=Are you sure you want to clone the commercial proposal %s? +ConfirmReOpenProp=Are you sure you want to open back the commercial proposal %s? +ProposalsAndProposalsLines=Commercial proposal and lines +ProposalLine=Proposal line +AvailabilityPeriod=Availability delay +SetAvailability=Set availability delay +AfterOrder=after order +OtherProposals=Other proposals +##### Availability ##### +AvailabilityTypeAV_NOW=Immediate +AvailabilityTypeAV_1W=1 week +AvailabilityTypeAV_2W=2 weeks +AvailabilityTypeAV_3W=3 weeks +AvailabilityTypeAV_1M=1 month +##### Types de contacts ##### +TypeContact_propal_internal_SALESREPFOLL=Representative following-up proposal +TypeContact_propal_external_BILLING=Customer invoice contact +TypeContact_propal_external_CUSTOMER=Customer contact following-up proposal +TypeContact_propal_external_SHIPPING=Customer contact for delivery +# Document models +DocModelAzurDescription=A complete proposal model (old implementation of Cyan template) +DocModelCyanDescription=A complete proposal model +DefaultModelPropalCreate=Default model creation +DefaultModelPropalToBill=Default template when closing a business proposal (to be invoiced) +DefaultModelPropalClosed=Default template when closing a business proposal (unbilled) +ProposalCustomerSignature=Written acceptance, company stamp, date and signature +ProposalsStatisticsSuppliers=Vendor proposals statistics +CaseFollowedBy=Case followed by diff --git a/htdocs/langs/hi_IN/receiptprinter.lang b/htdocs/langs/hi_IN/receiptprinter.lang new file mode 100644 index 00000000000..896eaa313dd --- /dev/null +++ b/htdocs/langs/hi_IN/receiptprinter.lang @@ -0,0 +1,95 @@ +# Dolibarr language file - Source file is en_US - receiptprinter +ReceiptPrinterSetup=Setup of module ReceiptPrinter +PrinterAdded=Printer %s added +PrinterUpdated=Printer %s updated +PrinterDeleted=Printer %s deleted +TestSentToPrinter=Test Sent To Printer %s +ReceiptPrinter=Receipt printers +ReceiptPrinterDesc=Setup of receipt printers +ReceiptPrinterTemplateDesc=Setup of Templates +ReceiptPrinterTypeDesc=Description of Receipt Printer's type +ReceiptPrinterProfileDesc=Description of Receipt Printer's Profile +ListPrinters=List of Printers +SetupReceiptTemplate=Template Setup +CONNECTOR_DUMMY=Dummy Printer +CONNECTOR_NETWORK_PRINT=Network Printer +CONNECTOR_FILE_PRINT=Local Printer +CONNECTOR_WINDOWS_PRINT=Local Windows Printer +CONNECTOR_CUPS_PRINT=Cups Printer +CONNECTOR_DUMMY_HELP=Fake Printer for test, does nothing +CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 +CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 +CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L +PROFILE_DEFAULT=Default Profile +PROFILE_SIMPLE=Simple Profile +PROFILE_EPOSTEP=Epos Tep Profile +PROFILE_P822D=P822D Profile +PROFILE_STAR=Star Profile +PROFILE_DEFAULT_HELP=Default Profile suitable for Epson printers +PROFILE_SIMPLE_HELP=Simple Profile No Graphics +PROFILE_EPOSTEP_HELP=Epos Tep Profile +PROFILE_P822D_HELP=P822D Profile No Graphics +PROFILE_STAR_HELP=Star Profile +DOL_LINE_FEED=Skip line +DOL_ALIGN_LEFT=Left align text +DOL_ALIGN_CENTER=Center text +DOL_ALIGN_RIGHT=Right align text +DOL_USE_FONT_A=Use font A of printer +DOL_USE_FONT_B=Use font B of printer +DOL_USE_FONT_C=Use font C of printer +DOL_PRINT_BARCODE=Print barcode +DOL_PRINT_BARCODE_CUSTOMER_ID=Print barcode customer id +DOL_CUT_PAPER_FULL=Cut ticket completely +DOL_CUT_PAPER_PARTIAL=Cut ticket partially +DOL_OPEN_DRAWER=Open cash drawer +DOL_ACTIVATE_BUZZER=Activate buzzer +DOL_PRINT_QRCODE=Print QR Code +DOL_PRINT_LOGO=Print logo of my company +DOL_PRINT_LOGO_OLD=Print logo of my company (old printers) +DOL_BOLD=Bold +DOL_BOLD_DISABLED=Disable bold +DOL_DOUBLE_HEIGHT=Double height size +DOL_DOUBLE_WIDTH=Double width size +DOL_DEFAULT_HEIGHT_WIDTH=Default height and width size +DOL_UNDERLINE=Enable underline +DOL_UNDERLINE_DISABLED=Disable underline +DOL_BEEP=Beed sound +DOL_PRINT_TEXT=Print text +DOL_VALUE_DATE=Invoice date +DOL_VALUE_DATE_TIME=Invoice date and time +DOL_VALUE_YEAR=Invoice year +DOL_VALUE_MONTH_LETTERS=Invoice month in letters +DOL_VALUE_MONTH=Invoice month +DOL_VALUE_DAY=Invoice day +DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Invoice ref +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=Capital +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/hi_IN/receptions.lang b/htdocs/langs/hi_IN/receptions.lang new file mode 100644 index 00000000000..010a7521846 --- /dev/null +++ b/htdocs/langs/hi_IN/receptions.lang @@ -0,0 +1,45 @@ +# Dolibarr language file - Source file is en_US - receptions +ReceptionsSetup=Product Reception setup +RefReception=Ref. reception +Reception=Reception +Receptions=Receptions +AllReceptions=All Receptions +Reception=Reception +Receptions=Receptions +ShowReception=Show Receptions +ReceptionsArea=Receptions area +ListOfReceptions=List of receptions +ReceptionMethod=Reception method +LastReceptions=Latest %s receptions +StatisticsOfReceptions=Statistics for receptions +NbOfReceptions=Number of receptions +NumberOfReceptionsByMonth=Number of receptions by month +ReceptionCard=Reception card +NewReception=New reception +CreateReception=Create reception +QtyInOtherReceptions=Qty in other receptions +OtherReceptionsForSameOrder=Other receptions for this order +ReceptionsAndReceivingForSameOrder=Receptions and receipts for this order +ReceptionsToValidate=Receptions to validate +StatusReceptionCanceled=Canceled +StatusReceptionDraft=Draft +StatusReceptionValidated=Validated (products to ship or already shipped) +StatusReceptionProcessed=Processed +StatusReceptionDraftShort=Draft +StatusReceptionValidatedShort=Validated +StatusReceptionProcessedShort=Processed +ReceptionSheet=Reception sheet +ConfirmDeleteReception=Are you sure you want to delete this reception? +ConfirmValidateReception=Are you sure you want to validate this reception with reference %s? +ConfirmCancelReception=Are you sure you want to cancel this reception? +StatsOnReceptionsOnlyValidated=Statistics conducted on receptions only validated. Date used is date of validation of reception (planed delivery date is not always known). +SendReceptionByEMail=Send reception by email +SendReceptionRef=Submission of reception %s +ActionsOnReception=Events on reception +ReceptionCreationIsDoneFromOrder=For the moment, creation of a new reception is done from the order card. +ReceptionLine=Reception line +ProductQtyInReceptionAlreadySent=Product quantity from open sales order already sent +ProductQtyInSuppliersReceptionAlreadyRecevied=Product quantity from open supplier order already received +ValidateOrderFirstBeforeReception=You must first validate the order before being able to make receptions. +ReceptionsNumberingModules=Numbering module for receptions +ReceptionsReceiptModel=Document templates for receptions diff --git a/htdocs/langs/hi_IN/resource.lang b/htdocs/langs/hi_IN/resource.lang new file mode 100644 index 00000000000..e8574dc680f --- /dev/null +++ b/htdocs/langs/hi_IN/resource.lang @@ -0,0 +1,39 @@ +# Dolibarr language file - Source file is en_US - resource +MenuResourceIndex=Resources +MenuResourceAdd=New resource +DeleteResource=Delete resource +ConfirmDeleteResourceElement=Confirm delete the resource for this element +NoResourceInDatabase=No resource in database. +NoResourceLinked=No resource linked +ActionsOnResource=Events about this resource +ResourcePageIndex=Resources list +ResourceSingular=Resource +ResourceCard=Resource card +AddResource=Create a resource +ResourceFormLabel_ref=Resource name +ResourceType=Resource type +ResourceFormLabel_description=Resource description + +ResourcesLinkedToElement=Resources linked to element + +ShowResource=Show resource + +ResourceElementPage=Element resources +ResourceCreatedWithSuccess=Resource successfully created +RessourceLineSuccessfullyDeleted=Resource line successfully deleted +RessourceLineSuccessfullyUpdated=Resource line successfully updated +ResourceLinkedWithSuccess=Resource linked with success + +ConfirmDeleteResource=Confirm to delete this resource +RessourceSuccessfullyDeleted=Resource successfully deleted +DictionaryResourceType=Type of resources + +SelectResource=Select resource + +IdResource=Id resource +AssetNumber=Serial number +ResourceTypeCode=Resource type code +ImportDataset_resource_1=Resources + +ErrorResourcesAlreadyInUse=Some resources are in use +ErrorResourceUseInEvent=%s used in %s event diff --git a/htdocs/langs/hi_IN/salaries.lang b/htdocs/langs/hi_IN/salaries.lang new file mode 100644 index 00000000000..7c3c08a65bd --- /dev/null +++ b/htdocs/langs/hi_IN/salaries.lang @@ -0,0 +1,21 @@ +# Dolibarr language file - Source file is en_US - salaries +SALARIES_ACCOUNTING_ACCOUNT_PAYMENT=Accounting account used for user third parties +SALARIES_ACCOUNTING_ACCOUNT_PAYMENT_Desc=The dedicated accounting account defined on user card will be used for Subledger accounting only. This one will be used for General Ledger and as default value of Subledger accounting if dedicated user accounting account on user is not defined. +SALARIES_ACCOUNTING_ACCOUNT_CHARGE=Accounting account by default for wage payments +Salary=Salary +Salaries=Salaries +NewSalaryPayment=New salary payment +AddSalaryPayment=Add salary payment +SalaryPayment=Salary payment +SalariesPayments=Salaries payments +ShowSalaryPayment=Show salary payment +THM=Average hourly rate +TJM=Average daily rate +CurrentSalary=Current salary +THMDescription=This value may be used to calculate the cost of time consumed on a project entered by users if module project is used +TJMDescription=This value is currently for information only and is not used for any calculation +LastSalaries=Latest %s salary payments +AllSalaries=All salary payments +SalariesStatistics=Salary statistics +# Export +SalariesAndPayments=Salaries and payments diff --git a/htdocs/langs/hi_IN/sendings.lang b/htdocs/langs/hi_IN/sendings.lang new file mode 100644 index 00000000000..5ce3b7f67e9 --- /dev/null +++ b/htdocs/langs/hi_IN/sendings.lang @@ -0,0 +1,74 @@ +# Dolibarr language file - Source file is en_US - sendings +RefSending=Ref. shipment +Sending=Shipment +Sendings=Shipments +AllSendings=All Shipments +Shipment=Shipment +Shipments=Shipments +ShowSending=Show Shipments +Receivings=Delivery Receipts +SendingsArea=Shipments area +ListOfSendings=List of shipments +SendingMethod=Shipping method +LastSendings=Latest %s shipments +StatisticsOfSendings=Statistics for shipments +NbOfSendings=Number of shipments +NumberOfShipmentsByMonth=Number of shipments by month +SendingCard=Shipment card +NewSending=New shipment +CreateShipment=Create shipment +QtyShipped=Qty shipped +QtyShippedShort=Qty ship. +QtyPreparedOrShipped=Qty prepared or shipped +QtyToShip=Qty to ship +QtyToReceive=Qty to receive +QtyReceived=Qty received +QtyInOtherShipments=Qty in other shipments +KeepToShip=Remain to ship +KeepToShipShort=Remain +OtherSendingsForSameOrder=Other shipments for this order +SendingsAndReceivingForSameOrder=Shipments and receipts for this order +SendingsToValidate=Shipments to validate +StatusSendingCanceled=Canceled +StatusSendingDraft=Draft +StatusSendingValidated=Validated (products to ship or already shipped) +StatusSendingProcessed=Processed +StatusSendingDraftShort=Draft +StatusSendingValidatedShort=Validated +StatusSendingProcessedShort=Processed +SendingSheet=Shipment sheet +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=Warning, no products waiting to be shipped. +StatsOnShipmentsOnlyValidated=Statistics conducted on shipments only validated. Date used is date of validation of shipment (planed delivery date is not always known). +DateDeliveryPlanned=Planned date of delivery +RefDeliveryReceipt=Ref delivery receipt +StatusReceipt=Status delivery receipt +DateReceived=Date delivery received +ClassifyReception=Classify reception +SendShippingByEMail=Send shipment by email +SendShippingRef=Submission of shipment %s +ActionsOnShipping=Events on shipment +LinkToTrackYourPackage=Link to track your package +ShipmentCreationIsDoneFromOrder=For the moment, creation of a new shipment is done from the order card. +ShipmentLine=Shipment line +ProductQtyInCustomersOrdersRunning=Product quantity from open sales orders +ProductQtyInSuppliersOrdersRunning=Product quantity from open purchase orders +ProductQtyInShipmentAlreadySent=Product quantity from open sales order already sent +ProductQtyInSuppliersShipmentAlreadyRecevied=Product quantity from open purchase orders already received +NoProductToShipFoundIntoStock=No product to ship found in warehouse %s. Correct stock or go back to choose another warehouse. +WeightVolShort=Weight/Vol. +ValidateOrderFirstBeforeShipment=You must first validate the order before being able to make shipments. + +# Sending methods +# ModelDocument +DocumentModelTyphon=More complete document model for delivery receipts (logo...) +Error_EXPEDITION_ADDON_NUMBER_NotDefined=Constant EXPEDITION_ADDON_NUMBER not defined +SumOfProductVolumes=Sum of product volumes +SumOfProductWeights=Sum of product weights + +# warehouse details +DetailWarehouseNumber= Warehouse details +DetailWarehouseFormat= W:%s (Qty: %d) diff --git a/htdocs/langs/hi_IN/sms.lang b/htdocs/langs/hi_IN/sms.lang new file mode 100644 index 00000000000..055085eb16a --- /dev/null +++ b/htdocs/langs/hi_IN/sms.lang @@ -0,0 +1,51 @@ +# Dolibarr language file - Source file is en_US - sms +Sms=Sms +SmsSetup=SMS setup +SmsDesc=This page allows you to define global options on SMS features +SmsCard=SMS Card +AllSms=All SMS campaigns +SmsTargets=Targets +SmsRecipients=Targets +SmsRecipient=Target +SmsTitle=Description +SmsFrom=Sender +SmsTo=Target +SmsTopic=Topic of SMS +SmsText=Message +SmsMessage=SMS Message +ShowSms=Show SMS +ListOfSms=List SMS campaigns +NewSms=New SMS campaign +EditSms=Edit SMS +ResetSms=New sending +DeleteSms=Delete SMS campaign +DeleteASms=Remove a SMS campaign +PreviewSms=Previuw SMS +PrepareSms=Prepare SMS +CreateSms=Create SMS +SmsResult=Result of SMS sending +TestSms=Test SMS +ValidSms=Validate SMS +ApproveSms=Approve SMS +SmsStatusDraft=Draft +SmsStatusValidated=Validated +SmsStatusApproved=Approved +SmsStatusSent=Sent +SmsStatusSentPartialy=Sent partially +SmsStatusSentCompletely=Sent completely +SmsStatusError=Error +SmsStatusNotSent=Not sent +SmsSuccessfulySent=SMS correctly sent (from %s to %s) +ErrorSmsRecipientIsEmpty=Number of target is empty +WarningNoSmsAdded=No new phone number to add to target list +ConfirmValidSms=Do you confirm validation of this campaign? +NbOfUniqueSms=No. of unique phone numbers +NbOfSms=No. of phone numbers +ThisIsATestMessage=This is a test message +SendSms=Send SMS +SmsInfoCharRemain=No. of remaining characters +SmsInfoNumero= (international format i.e.: +33899701761) +DelayBeforeSending=Delay before sending (minutes) +SmsNoPossibleSenderFound=No sender available. Check setup of your SMS provider. +SmsNoPossibleRecipientFound=No target available. Check setup of your SMS provider. +DisableStopIfSupported=Disable STOP message (if supported) diff --git a/htdocs/langs/hi_IN/stocks.lang b/htdocs/langs/hi_IN/stocks.lang new file mode 100644 index 00000000000..9856649b834 --- /dev/null +++ b/htdocs/langs/hi_IN/stocks.lang @@ -0,0 +1,220 @@ +# Dolibarr language file - Source file is en_US - stocks +WarehouseCard=Warehouse card +Warehouse=Warehouse +Warehouses=Warehouses +ParentWarehouse=Parent warehouse +NewWarehouse=New warehouse / Stock Location +WarehouseEdit=Modify warehouse +MenuNewWarehouse=New warehouse +WarehouseSource=Source warehouse +WarehouseSourceNotDefined=No warehouse defined, +AddWarehouse=Create warehouse +AddOne=Add one +DefaultWarehouse=Default warehouse +WarehouseTarget=Target warehouse +ValidateSending=Delete sending +CancelSending=Cancel sending +DeleteSending=Delete sending +Stock=Stock +Stocks=Stocks +StocksByLotSerial=Stocks by lot/serial +LotSerial=Lots/Serials +LotSerialList=List of lot/serials +Movements=Movements +ErrorWarehouseRefRequired=Warehouse reference name is required +ListOfWarehouses=List of warehouses +ListOfStockMovements=List of stock movements +ListOfInventories=List of inventories +MovementId=Movement ID +StockMovementForId=Movement ID %d +ListMouvementStockProject=List of stock movements associated to project +StocksArea=Warehouses area +AllWarehouses=All warehouses +IncludeAlsoDraftOrders=Include also draft orders +Location=Location +LocationSummary=Short name location +NumberOfDifferentProducts=Number of different products +NumberOfProducts=Total number of products +LastMovement=Latest movement +LastMovements=Latest movements +Units=Units +Unit=Unit +StockCorrection=Stock correction +CorrectStock=Correct stock +StockTransfer=Stock transfer +TransferStock=Transfer stock +MassStockTransferShort=Mass stock transfer +StockMovement=Stock movement +StockMovements=Stock movements +NumberOfUnit=Number of units +UnitPurchaseValue=Unit purchase price +StockTooLow=Stock too low +StockLowerThanLimit=Stock lower than alert limit (%s) +EnhancedValue=Value +PMPValue=Weighted average price +PMPValueShort=WAP +EnhancedValueOfWarehouses=Warehouses value +UserWarehouseAutoCreate=Create a user warehouse automatically when creating a user +AllowAddLimitStockByWarehouse=Manage also value for minimum and desired stock per pairing (product-warehouse) in addition to the value for minimum and desired stock per product +IndependantSubProductStock=Product stock and subproduct stock are independent +QtyDispatched=Quantity dispatched +QtyDispatchedShort=Qty dispatched +QtyToDispatchShort=Qty to dispatch +OrderDispatch=Item receipts +RuleForStockManagementDecrease=Choose Rule for automatic stock decrease (manual decrease is always possible, even if an automatic decrease rule is activated) +RuleForStockManagementIncrease=Choose Rule for automatic stock increase (manual increase is always possible, even if an automatic increase rule is activated) +DeStockOnBill=Decrease real stocks on validation of customer invoice/credit note +DeStockOnValidateOrder=Decrease real stocks on validation of sales order +DeStockOnShipment=Decrease real stocks on shipping validation +DeStockOnShipmentOnClosing=Decrease real stocks when shipping is set to closed +ReStockOnBill=Increase real stocks on validation of vendor invoice/credit note +ReStockOnValidateOrder=Increase real stocks on purchase order approval +ReStockOnDispatchOrder=Increase real stocks on manual dispatching into warehouse, after purchase order receipt of goods +StockOnReception=Increase real stocks on validation of reception +StockOnReceptionOnClosing=Increase real stocks when reception is set to closed +OrderStatusNotReadyToDispatch=Order has not yet or no more a status that allows dispatching of products in stock warehouses. +StockDiffPhysicTeoric=Explanation for difference between physical and virtual stock +NoPredefinedProductToDispatch=No predefined products for this object. So no dispatching in stock is required. +DispatchVerb=Dispatch +StockLimitShort=Limit for alert +StockLimit=Stock limit for alert +StockLimitDesc=(empty) means no warning.
    0 can be used for a warning as soon as stock is empty. +PhysicalStock=Physical Stock +RealStock=Real Stock +RealStockDesc=Physical/real stock is the stock currently in the warehouses. +RealStockWillAutomaticallyWhen=The real stock will be modified according to this rule (as defined in the Stock module): +VirtualStock=Virtual stock +VirtualStockDesc=Virtual stock is the calculated stock available once all open/pending actions (that affect stocks) are closed (purchase orders received, sales orders shipped etc.) +IdWarehouse=Id warehouse +DescWareHouse=Description warehouse +LieuWareHouse=Localisation warehouse +WarehousesAndProducts=Warehouses and products +WarehousesAndProductsBatchDetail=Warehouses and products (with detail per lot/serial) +AverageUnitPricePMPShort=Weighted average input price +AverageUnitPricePMP=Weighted average input price +SellPriceMin=Selling Unit Price +EstimatedStockValueSellShort=Value for sell +EstimatedStockValueSell=Value for sell +EstimatedStockValueShort=Input stock value +EstimatedStockValue=Input stock value +DeleteAWarehouse=Delete a warehouse +ConfirmDeleteWarehouse=Are you sure you want to delete the warehouse %s? +PersonalStock=Personal stock %s +ThisWarehouseIsPersonalStock=This warehouse represents personal stock of %s %s +SelectWarehouseForStockDecrease=Choose warehouse to use for stock decrease +SelectWarehouseForStockIncrease=Choose warehouse to use for stock increase +NoStockAction=No stock action +DesiredStock=Desired Stock +DesiredStockDesc=This stock amount will be the value used to fill the stock by replenishment feature. +StockToBuy=To order +Replenishment=Replenishment +ReplenishmentOrders=Replenishment orders +VirtualDiffersFromPhysical=According to increase/decrease stock options, physical stock and virtual stock (physical + current orders) may differ +UseVirtualStockByDefault=Use virtual stock by default, instead of physical stock, for replenishment feature +UseVirtualStock=Use virtual stock +UsePhysicalStock=Use physical stock +CurentSelectionMode=Current selection mode +CurentlyUsingVirtualStock=Virtual stock +CurentlyUsingPhysicalStock=Physical stock +RuleForStockReplenishment=Rule for stocks replenishment +SelectProductWithNotNullQty=Select at least one product with a qty not null and a vendor +AlertOnly= Alerts only +WarehouseForStockDecrease=The warehouse %s will be used for stock decrease +WarehouseForStockIncrease=The warehouse %s will be used for stock increase +ForThisWarehouse=For this warehouse +ReplenishmentStatusDesc=This is a list of all products with a stock lower than desired stock (or lower than alert value if checkbox "alert only" is checked). Using the checkbox, you can create purchase orders to fill the difference. +ReplenishmentOrdersDesc=This is a list of all open purchase orders including predefined products. Only open orders with predefined products, so orders that may affect stocks, are visible here. +Replenishments=Replenishments +NbOfProductBeforePeriod=Quantity of product %s in stock before selected period (< %s) +NbOfProductAfterPeriod=Quantity of product %s in stock after selected period (> %s) +MassMovement=Mass movement +SelectProductInAndOutWareHouse=Select a product, a quantity, a source warehouse and a target warehouse, then click "%s". Once this is done for all required movements, click onto "%s". +RecordMovement=Record transfer +ReceivingForSameOrder=Receipts for this order +StockMovementRecorded=Stock movements recorded +RuleForStockAvailability=Rules on stock requirements +StockMustBeEnoughForInvoice=Stock level must be enough to add product/service to invoice (check is done on current real stock when adding a line into invoice whatever the rule for automatic stock change) +StockMustBeEnoughForOrder=Stock level must be enough to add product/service to order (check is done on current real stock when adding a line into order whatever the rule for automatic stock change) +StockMustBeEnoughForShipment= Stock level must be enough to add product/service to shipment (check is done on current real stock when adding a line into shipment whatever the rule for automatic stock change) +MovementLabel=Label of movement +TypeMovement=Type of movement +DateMovement=Date of movement +InventoryCode=Movement or inventory code +IsInPackage=Contained into package +WarehouseAllowNegativeTransfer=Stock can be negative +qtyToTranferIsNotEnough=You don't have enough stock from your source warehouse and your setup does not allow negative stocks. +qtyToTranferLotIsNotEnough=You don't have enough stock, for this lot number, from your source warehouse and your setup does not allow negative stocks (Qty for product '%s' with lot '%s' is %s in warehouse '%s'). +ShowWarehouse=Show warehouse +MovementCorrectStock=Stock correction for product %s +MovementTransferStock=Stock transfer of product %s into another warehouse +InventoryCodeShort=Inv./Mov. code +NoPendingReceptionOnSupplierOrder=No pending reception due to open purchase order +ThisSerialAlreadyExistWithDifferentDate=This lot/serial number (%s) already exists but with different eatby or sellby date (found %s but you enter %s). +OpenAll=Open for all actions +OpenInternal=Open only for internal actions +UseDispatchStatus=Use a dispatch status (approve/refuse) for product lines on purchase order reception +OptionMULTIPRICESIsOn=Option "several prices per segment" is on. It means a product has several selling price so value for sell can't be calculated +ProductStockWarehouseCreated=Stock limit for alert and desired optimal stock correctly created +ProductStockWarehouseUpdated=Stock limit for alert and desired optimal stock correctly updated +ProductStockWarehouseDeleted=Stock limit for alert and desired optimal stock correctly deleted +AddNewProductStockWarehouse=Set new limit for alert and desired optimal stock +AddStockLocationLine=Decrease quantity then click to add another warehouse for this product +InventoryDate=Inventory date +NewInventory=New inventory +inventorySetup = Inventory Setup +inventoryCreatePermission=Create new inventory +inventoryReadPermission=View inventories +inventoryWritePermission=Update inventories +inventoryValidatePermission=Validate inventory +inventoryTitle=Inventory +inventoryListTitle=Inventories +inventoryListEmpty=No inventory in progress +inventoryCreateDelete=Create/Delete inventory +inventoryCreate=Create new +inventoryEdit=Edit +inventoryValidate=Validated +inventoryDraft=Running +inventorySelectWarehouse=Warehouse choice +inventoryConfirmCreate=Create +inventoryOfWarehouse=Inventory for warehouse: %s +inventoryErrorQtyAdd=Error: one quantity is less than zero +inventoryMvtStock=By inventory +inventoryWarningProductAlreadyExists=This product is already into list +SelectCategory=Category filter +SelectFournisseur=Vendor filter +inventoryOnDate=Inventory +INVENTORY_DISABLE_VIRTUAL=Virtual product (kit): do not decrement stock of a child product +INVENTORY_USE_MIN_PA_IF_NO_LAST_PA=Use the buy price if no last buy price can be found +INVENTORY_USE_INVENTORY_DATE_FOR_DATE_OF_MVT=Stock movements will have the date of inventory (instead of the date of inventory validation) +inventoryChangePMPPermission=Allow to change PMP value for a product +ColumnNewPMP=New unit PMP +OnlyProdsInStock=Do not add product without stock +TheoricalQty=Theorique qty +TheoricalValue=Theorique qty +LastPA=Last BP +CurrentPA=Curent BP +RecordedQty=Recorded Qty +RealQty=Real Qty +RealValue=Real Value +RegulatedQty=Regulated Qty +AddInventoryProduct=Add product to inventory +AddProduct=Add +ApplyPMP=Apply PMP +FlushInventory=Flush inventory +ConfirmFlushInventory=Do you confirm this action? +InventoryFlushed=Inventory flushed +ExitEditMode=Exit edition +inventoryDeleteLine=Delete line +RegulateStock=Regulate Stock +ListInventory=List +StockSupportServices=Stock management supports Services +StockSupportServicesDesc=By default, you can stock only products of type "product". You may also stock a product of type "service" if both module Services and this option are enabled. +ReceiveProducts=Receive items +StockIncreaseAfterCorrectTransfer=Increase by correction/transfer +StockDecreaseAfterCorrectTransfer=Decrease by correction/transfer +StockIncrease=Stock increase +StockDecrease=Stock decrease +InventoryForASpecificWarehouse=Inventory for a specific warehouse +InventoryForASpecificProduct=Inventory for a specific product +StockIsRequiredToChooseWhichLotToUse=Stock is required to choose which lot to use +ForceTo=Force to diff --git a/htdocs/langs/hi_IN/stripe.lang b/htdocs/langs/hi_IN/stripe.lang new file mode 100644 index 00000000000..844762040af --- /dev/null +++ b/htdocs/langs/hi_IN/stripe.lang @@ -0,0 +1,72 @@ +# Dolibarr language file - Source file is en_US - stripe +StripeSetup=Stripe module setup +StripeDesc=Offer customers a Stripe online payment page for payments with credit/cebit cards via Stripe. This can be used to allow your customers to make ad-hoc payments or for payments related to a particular Dolibarr object (invoice, order, ...) +StripeOrCBDoPayment=Pay with credit card or Stripe +FollowingUrlAreAvailableToMakePayments=Following URLs are available to offer a page to a customer to make a payment on Dolibarr objects +PaymentForm=Payment form +WelcomeOnPaymentPage=Welcome to our online payment service +ThisScreenAllowsYouToPay=This screen allow you to make an online payment to %s. +ThisIsInformationOnPayment=This is information on payment to do +ToComplete=To complete +YourEMail=Email to receive payment confirmation +STRIPE_PAYONLINE_SENDEMAIL=Email notification after a payment attempt (success or fail) +Creditor=Creditor +PaymentCode=Payment code +StripeDoPayment=Pay with Stripe +YouWillBeRedirectedOnStripe=You will be redirected on secured Stripe page to input you credit card information +Continue=Next +ToOfferALinkForOnlinePayment=URL for %s payment +ToOfferALinkForOnlinePaymentOnOrder=URL to offer a %s online payment page for a sales order +ToOfferALinkForOnlinePaymentOnInvoice=URL to offer a %s online payment page for a customer invoice +ToOfferALinkForOnlinePaymentOnContractLine=URL to offer a %s online payment page for a contract line +ToOfferALinkForOnlinePaymentOnFreeAmount=URL to offer a %s online payment page of any amount with no existing object +ToOfferALinkForOnlinePaymentOnMemberSubscription=URL to offer a %s online payment page for a member subscription +ToOfferALinkForOnlinePaymentOnDonation=URL to offer a %s online payment page for payment of a donation +YouCanAddTagOnUrl=You can also add url parameter &tag=value to any of those URL (mandatory only for payment not linked to an object) to add your own payment comment tag.
    For the URL of payments with no existing object, you may also add the parameter &noidempotency=1 so the same link with same tag can be used several times (some payment mode may limit the payment to 1 for each different link without this parameter) +SetupStripeToHavePaymentCreatedAutomatically=Setup your Stripe with url %s to have payment created automatically when validated by Stripe. +AccountParameter=Account parameters +UsageParameter=Usage parameters +InformationToFindParameters=Help to find your %s account information +STRIPE_CGI_URL_V2=Url of Stripe CGI module for payment +VendorName=Name of vendor +CSSUrlForPaymentForm=CSS style sheet url for payment form +NewStripePaymentReceived=New Stripe payment received +NewStripePaymentFailed=New Stripe payment tried but failed +FailedToChargeCard=Failed to charge card +STRIPE_TEST_SECRET_KEY=Secret test key +STRIPE_TEST_PUBLISHABLE_KEY=Publishable test key +STRIPE_TEST_WEBHOOK_KEY=Webhook test key +STRIPE_LIVE_SECRET_KEY=Secret live key +STRIPE_LIVE_PUBLISHABLE_KEY=Publishable live key +STRIPE_LIVE_WEBHOOK_KEY=Webhook live key +ONLINE_PAYMENT_WAREHOUSE=Stock to use for stock decrease when online payment is done
    (TODO When option to decrease stock is done on an action on invoice and the online payment generate itself the invoice ?) +StripeLiveEnabled=Stripe live enabled (otherwise test/sandbox mode) +StripeImportPayment=Import Stripe payments +ExampleOfTestCreditCard=Example of credit card for test: %s => valid, %s => error CVC, %s => expired, %s => charge fails +StripeGateways=Stripe gateways +OAUTH_STRIPE_TEST_ID=Stripe Connect Client ID (ca_...) +OAUTH_STRIPE_LIVE_ID=Stripe Connect Client ID (ca_...) +BankAccountForBankTransfer=Bank account for fund payouts +StripeAccount=Stripe account +StripeChargeList=List of Stripe charges +StripeTransactionList=List of Stripe transactions +StripeCustomerId=Stripe customer id +StripePaymentModes=Stripe payment modes +LocalID=Local ID +StripeID=Stripe ID +NameOnCard=Name on card +CardNumber=Card Number +ExpiryDate=Expiry Date +CVN=CVN +DeleteACard=Delete Card +ConfirmDeleteCard=Are you sure you want to delete this Credit or Debit card? +CreateCustomerOnStripe=Create customer on Stripe +CreateCardOnStripe=Create card on Stripe +ShowInStripe=Show in Stripe +StripeUserAccountForActions=User account to use for email notification of some Stripe events (Stripe payouts) +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... +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/hi_IN/supplier_proposal.lang b/htdocs/langs/hi_IN/supplier_proposal.lang new file mode 100644 index 00000000000..ce5bdf0425a --- /dev/null +++ b/htdocs/langs/hi_IN/supplier_proposal.lang @@ -0,0 +1,54 @@ +# Dolibarr language file - Source file is en_US - supplier_proposal +SupplierProposal=Vendor commercial proposals +supplier_proposalDESC=Manage price requests to suppliers +SupplierProposalNew=New price request +CommRequest=Price request +CommRequests=Price requests +SearchRequest=Find a request +DraftRequests=Draft requests +SupplierProposalsDraft=Draft vendor proposals +LastModifiedRequests=Latest %s modified price requests +RequestsOpened=Open price requests +SupplierProposalArea=Vendor proposals area +SupplierProposalShort=Vendor proposal +SupplierProposals=Vendor proposals +SupplierProposalsShort=Vendor proposals +NewAskPrice=New price request +ShowSupplierProposal=Show price request +AddSupplierProposal=Create a price request +SupplierProposalRefFourn=Vendor ref +SupplierProposalDate=Delivery date +SupplierProposalRefFournNotice=Before closing to "Accepted", think to grasp suppliers references. +ConfirmValidateAsk=Are you sure you want to validate this price request under name %s? +DeleteAsk=Delete request +ValidateAsk=Validate request +SupplierProposalStatusDraft=Draft (needs to be validated) +SupplierProposalStatusValidated=Validated (request is open) +SupplierProposalStatusClosed=Closed +SupplierProposalStatusSigned=Accepted +SupplierProposalStatusNotSigned=Refused +SupplierProposalStatusDraftShort=Draft +SupplierProposalStatusValidatedShort=Validated +SupplierProposalStatusClosedShort=Closed +SupplierProposalStatusSignedShort=Accepted +SupplierProposalStatusNotSignedShort=Refused +CopyAskFrom=Create a price request by copying an existing request +CreateEmptyAsk=Create blank request +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=Send price request by mail +SendAskRef=Sending the price request %s +SupplierProposalCard=Request card +ConfirmDeleteAsk=Are you sure you want to delete this price request %s? +ActionsOnSupplierProposal=Events on price request +DocModelAuroreDescription=A complete request model (logo...) +CommercialAsk=Price request +DefaultModelSupplierProposalCreate=Default model creation +DefaultModelSupplierProposalToBill=Default template when closing a price request (accepted) +DefaultModelSupplierProposalClosed=Default template when closing a price request (refused) +ListOfSupplierProposals=List of vendor proposal requests +ListSupplierProposalsAssociatedProject=List of vendor proposals associated with project +SupplierProposalsToClose=Vendor proposals to close +SupplierProposalsToProcess=Vendor proposals to process +LastSupplierProposals=Latest %s price requests +AllPriceRequests=All requests diff --git a/htdocs/langs/hi_IN/suppliers.lang b/htdocs/langs/hi_IN/suppliers.lang new file mode 100644 index 00000000000..b69b11272b4 --- /dev/null +++ b/htdocs/langs/hi_IN/suppliers.lang @@ -0,0 +1,47 @@ +# Dolibarr language file - Source file is en_US - vendors +Suppliers=Vendors +SuppliersInvoice=Vendor invoice +ShowSupplierInvoice=Show Vendor Invoice +NewSupplier=New vendor +History=History +ListOfSuppliers=List of vendors +ShowSupplier=Show vendor +OrderDate=Order date +BuyingPriceMin=Best buying price +BuyingPriceMinShort=Best buying price +TotalBuyingPriceMinShort=Total of subproducts buying prices +TotalSellingPriceMinShort=Total of subproducts selling prices +SomeSubProductHaveNoPrices=Some sub-products have no price defined +AddSupplierPrice=Add buying price +ChangeSupplierPrice=Change buying price +SupplierPrices=Vendor prices +ReferenceSupplierIsAlreadyAssociatedWithAProduct=This vendor reference is already associated with a product: %s +NoRecordedSuppliers=No vendor recorded +SupplierPayment=Vendor payment +SuppliersArea=Vendor area +RefSupplierShort=Ref. vendor +Availability=Availability +ExportDataset_fournisseur_1=Vendor invoices and invoice details +ExportDataset_fournisseur_2=Vendor invoices and payments +ExportDataset_fournisseur_3=Purchase orders and order details +ApproveThisOrder=Approve this order +ConfirmApproveThisOrder=Are you sure you want to approve order %s? +DenyingThisOrder=Deny this order +ConfirmDenyingThisOrder=Are you sure you want to deny this order %s? +ConfirmCancelThisOrder=Are you sure you want to cancel this order %s? +AddSupplierOrder=Create Purchase Order +AddSupplierInvoice=Create vendor invoice +ListOfSupplierProductForSupplier=List of products and prices for vendor %s +SentToSuppliers=Sent to vendors +ListOfSupplierOrders=List of purchase orders +MenuOrdersSupplierToBill=Purchase orders to invoice +NbDaysToDelivery=Delivery delay (days) +DescNbDaysToDelivery=The longest delivery delay of the products from this order +SupplierReputation=Vendor reputation +DoNotOrderThisProductToThisSupplier=Do not order +NotTheGoodQualitySupplier=Low quality +ReputationForThisProduct=Reputation +BuyerName=Buyer name +AllProductServicePrices=All product / service prices +AllProductReferencesOfSupplier=All product / service references of vendor +BuyingPriceNumShort=Vendor prices diff --git a/htdocs/langs/hi_IN/ticket.lang b/htdocs/langs/hi_IN/ticket.lang new file mode 100644 index 00000000000..80518c3401a --- /dev/null +++ b/htdocs/langs/hi_IN/ticket.lang @@ -0,0 +1,305 @@ +# en_US lang file for module ticket +# Copyright (C) 2013 Jean-François FERRY +# +# 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 . + +# +# Generic +# + +Module56000Name=Tickets +Module56000Desc=Ticket system for issue or request management + +Permission56001=See tickets +Permission56002=Modify tickets +Permission56003=Delete tickets +Permission56004=Manage tickets +Permission56005=See tickets of all third parties (not effective for external users, always be limited to the third party they depend on) + +TicketDictType=Ticket - Types +TicketDictCategory=Ticket - Groupes +TicketDictSeverity=Ticket - Severities +TicketDictResolution=Ticket - Resolution +TicketTypeShortBUGSOFT=Dysfonctionnement logiciel +TicketTypeShortBUGHARD=Dysfonctionnement matériel +TicketTypeShortCOM=Commercial question + +TicketTypeShortHELP=Request for functionnal help +TicketTypeShortISSUE=Issue, bug or problem +TicketTypeShortREQUEST=Change or enhancement request +TicketTypeShortPROJET=Project +TicketTypeShortOTHER=Other + +TicketSeverityShortLOW=Low +TicketSeverityShortNORMAL=Normal +TicketSeverityShortHIGH=High +TicketSeverityShortBLOCKING=Critical/Blocking + +ErrorBadEmailAddress=Field '%s' incorrect +MenuTicketMyAssign=My tickets +MenuTicketMyAssignNonClosed=My open tickets +MenuListNonClosed=Open tickets + +TypeContact_ticket_internal_CONTRIBUTOR=Contributor +TypeContact_ticket_internal_SUPPORTTEC=Assigned user +TypeContact_ticket_external_SUPPORTCLI=Customer contact / incident tracking +TypeContact_ticket_external_CONTRIBUTOR=External contributor + +OriginEmail=Email source +Notify_TICKET_SENTBYMAIL=Send ticket message by email + +# Status +NotRead=Not read +Read=Read +Assigned=Assigned +InProgress=In progress +NeedMoreInformation=Waiting for information +Answered=Answered +Waiting=Waiting +Closed=Closed +Deleted=Deleted + +# Dict +Type=Type +Category=Analytic code +Severity=Severity + +# Email templates +MailToSendTicketMessage=To send email from ticket message + +# +# Admin page +# +TicketSetup=Ticket module setup +TicketSettings=Settings +TicketSetupPage= +TicketPublicAccess=A public interface requiring no identification is available at the following url +TicketSetupDictionaries=The type of ticket, severity and analytic codes are configurable from dictionaries +TicketParamModule=Module variable setup +TicketParamMail=Email setup +TicketEmailNotificationFrom=Notification email from +TicketEmailNotificationFromHelp=Used into ticket message answer by example +TicketEmailNotificationTo=Notifications email to +TicketEmailNotificationToHelp=Send email notifications to this address. +TicketNewEmailBodyLabel=Text message sent after creating a ticket +TicketNewEmailBodyHelp=The text specified here will be inserted into the email confirming the creation of a new ticket from the public interface. Information on the consultation of the ticket are automatically added. +TicketParamPublicInterface=Public interface setup +TicketsEmailMustExist=Require an existing email address to create a ticket +TicketsEmailMustExistHelp=In the public interface, the email address should already be filled in the database to create a new ticket. +PublicInterface=Public interface +TicketUrlPublicInterfaceLabelAdmin=Alternative URL for public interface +TicketUrlPublicInterfaceHelpAdmin=It is possible to define an alias to the web server and thus make available the public interface with another URL (the server must act as a proxy on this new URL) +TicketPublicInterfaceTextHomeLabelAdmin=Welcome text of the public interface +TicketPublicInterfaceTextHome=You can create a support ticket or view existing from its identifier tracking ticket. +TicketPublicInterfaceTextHomeHelpAdmin=The text defined here will appear on the home page of the public interface. +TicketPublicInterfaceTopicLabelAdmin=Interface title +TicketPublicInterfaceTopicHelp=This text will appear as the title of the public interface. +TicketPublicInterfaceTextHelpMessageLabelAdmin=Help text to the message entry +TicketPublicInterfaceTextHelpMessageHelpAdmin=This text will appear above the message input area of the user. +ExtraFieldsTicket=Extra attributes +TicketCkEditorEmailNotActivated=HTML editor is not activated. Please put FCKEDITOR_ENABLE_MAIL content to 1 to get it. +TicketsDisableEmail=Do not send emails for ticket creation or message recording +TicketsDisableEmailHelp=By default, emails are sent when new tickets or messages created. Enable this option to disable *all* email notifications +TicketsLogEnableEmail=Enable log by email +TicketsLogEnableEmailHelp=At each change, an email will be sent **to each contact** associated with the ticket. +TicketParams=Params +TicketsShowModuleLogo=Display the logo of the module in the public interface +TicketsShowModuleLogoHelp=Enable this option to hide the logo module in the pages of the public interface +TicketsShowCompanyLogo=Display the logo of the company in the public interface +TicketsShowCompanyLogoHelp=Enable this option to hide the logo of the main company in the pages of the public interface +TicketsEmailAlsoSendToMainAddress=Also send notification to main email address +TicketsEmailAlsoSendToMainAddressHelp=Enable this option to send an email to "Notification email from" address (see setup below) +TicketsLimitViewAssignedOnly=Restrict the display to tickets assigned to the current user (not effective for external users, always be limited to the third party they depend on) +TicketsLimitViewAssignedOnlyHelp=Only tickets assigned to the current user will be visible. Does not apply to a user with tickets management rights. +TicketsActivatePublicInterface=Activate public interface +TicketsActivatePublicInterfaceHelp=Public interface allow any visitors to create tickets. +TicketsAutoAssignTicket=Automatically assign the user who created the ticket +TicketsAutoAssignTicketHelp=When creating a ticket, the user can be automatically assigned to the ticket. +TicketNumberingModules=Tickets numbering module +TicketNotifyTiersAtCreation=Notify third party at creation +TicketGroup=Group +TicketsDisableCustomerEmail=Always disable emails when a ticket is created from public interface +# +# Index & list page +# +TicketsIndex=Tickets area +TicketList=List of tickets +TicketAssignedToMeInfos=This page display ticket list created by or assigned to current user +NoTicketsFound=No ticket found +NoUnreadTicketsFound=No unread ticket found +TicketViewAllTickets=View all tickets +TicketViewNonClosedOnly=View only open tickets +TicketStatByStatus=Tickets by status +OrderByDateAsc=Sort by ascending date +OrderByDateDesc=Sort by descending date +ShowAsConversation=Show as conversation list +MessageListViewType=Show as table list + +# +# Ticket card +# +Ticket=Ticket +TicketCard=Ticket card +CreateTicket=Create ticket +EditTicket=Edit ticket +TicketsManagement=Tickets Management +CreatedBy=Created by +NewTicket=New Ticket +SubjectAnswerToTicket=Ticket answer +TicketTypeRequest=Request type +TicketCategory=Analytic code +SeeTicket=See ticket +TicketMarkedAsRead=Ticket has been marked as read +TicketReadOn=Read on +TicketCloseOn=Closing date +MarkAsRead=Mark ticket as read +TicketHistory=Ticket history +AssignUser=Assign to user +TicketAssigned=Ticket is now assigned +TicketChangeType=Change type +TicketChangeCategory=Change analytic code +TicketChangeSeverity=Change severity +TicketAddMessage=Add a message +AddMessage=Add a message +MessageSuccessfullyAdded=Ticket added +TicketMessageSuccessfullyAdded=Message successfully added +TicketMessagesList=Message list +NoMsgForThisTicket=No message for this ticket +Properties=Classification +LatestNewTickets=Latest %s newest tickets (not read) +TicketSeverity=Severity +ShowTicket=See ticket +RelatedTickets=Related tickets +TicketAddIntervention=Create intervention +CloseTicket=Close ticket +CloseATicket=Close a ticket +ConfirmCloseAticket=Confirm ticket closing +ConfirmDeleteTicket=Please confirm ticket deleting +TicketDeletedSuccess=Ticket deleted with success +TicketMarkedAsClosed=Ticket marked as closed +TicketDurationAuto=Calculated duration +TicketDurationAutoInfos=Duration calculated automatically from intervention related +TicketUpdated=Ticket updated +SendMessageByEmail=Send message by email +TicketNewMessage=New message +ErrorMailRecipientIsEmptyForSendTicketMessage=Recipient is empty. No email send +TicketGoIntoContactTab=Please go into "Contacts" tab to select them +TicketMessageMailIntro=Introduction +TicketMessageMailIntroHelp=This text is added only at the beginning of the email and will not be saved. +TicketMessageMailIntroLabelAdmin=Introduction to the message when sending email +TicketMessageMailIntroText=Hello,
    A new response was sent on a ticket that you contact. Here is the message:
    +TicketMessageMailIntroHelpAdmin=This text will be inserted before the text of the response to a ticket. +TicketMessageMailSignature=Signature +TicketMessageMailSignatureHelp=This text is added only at the end of the email and will not be saved. +TicketMessageMailSignatureText=

    Sincerely,

    --

    +TicketMessageMailSignatureLabelAdmin=Signature of response email +TicketMessageMailSignatureHelpAdmin=This text will be inserted after the response message. +TicketMessageHelp=Only this text will be saved in the message list on ticket card. +TicketMessageSubstitutionReplacedByGenericValues=Substitutions variables are replaced by generic values. +TimeElapsedSince=Time elapsed since +TicketTimeToRead=Time elapsed before read +TicketContacts=Contacts ticket +TicketDocumentsLinked=Documents linked to ticket +ConfirmReOpenTicket=Confirm reopen this ticket ? +TicketMessageMailIntroAutoNewPublicMessage=A new message was posted on the ticket with the subject %s: +TicketAssignedToYou=Ticket assigned +TicketAssignedEmailBody=You have been assigned the ticket #%s by %s +MarkMessageAsPrivate=Mark message as private +TicketMessagePrivateHelp=This message will not display to external users +TicketEmailOriginIssuer=Issuer at origin of the tickets +InitialMessage=Initial Message +LinkToAContract=Link to a contract +TicketPleaseSelectAContract=Select a contract +UnableToCreateInterIfNoSocid=Can not create an intervention when no third party is defined +TicketMailExchanges=Mail exchanges +TicketInitialMessageModified=Initial message modified +TicketMessageSuccesfullyUpdated=Message successfully updated +TicketChangeStatus=Change status +TicketConfirmChangeStatus=Confirm the status change: %s ? +TicketLogStatusChanged=Status changed: %s to %s +TicketNotNotifyTiersAtCreate=Not notify company at create +Unread=Unread +TicketNotCreatedFromPublicInterface=Not available. Ticket was not created from public interface. +PublicInterfaceNotEnabled=Public interface was not enabled +ErrorTicketRefRequired=Ticket reference name is required + +# +# Logs +# +TicketLogMesgReadBy=Ticket %s read by %s +NoLogForThisTicket=No log for this ticket yet +TicketLogAssignedTo=Ticket %s assigned to %s +TicketLogPropertyChanged=Ticket %s modified: classification from %s to %s +TicketLogClosedBy=Ticket %s closed by %s +TicketLogReopen=Ticket %s re-open + +# +# Public pages +# +TicketSystem=Ticket system +ShowListTicketWithTrackId=Display ticket list from track ID +ShowTicketWithTrackId=Display ticket from track ID +TicketPublicDesc=You can create a support ticket or check from an existing ID. +YourTicketSuccessfullySaved=Ticket has been successfully saved! +MesgInfosPublicTicketCreatedWithTrackId=A new ticket has been created with ID %s and Ref %s. +PleaseRememberThisId=Please keep the tracking number that we might ask you later. +TicketNewEmailSubject=Ticket creation confirmation - Ref %s (public ticket ID %s) +TicketNewEmailSubjectCustomer=New support ticket +TicketNewEmailBody=This is an automatic email to confirm you have registered a new ticket. +TicketNewEmailBodyCustomer=This is an automatic email to confirm a new ticket has just been created into your account. +TicketNewEmailBodyInfosTicket=Information for monitoring the ticket +TicketNewEmailBodyInfosTrackId=Ticket tracking number: %s +TicketNewEmailBodyInfosTrackUrl=You can view the progress of the ticket by clicking the link above. +TicketNewEmailBodyInfosTrackUrlCustomer=You can view the progress of the ticket in the specific interface by clicking the following link +TicketEmailPleaseDoNotReplyToThisEmail=Please do not reply directly to this email! Use the link to reply into the interface. +TicketPublicInfoCreateTicket=This form allows you to record a support ticket in our management system. +TicketPublicPleaseBeAccuratelyDescribe=Please accurately describe the problem. Provide the most information possible to allow us to correctly identify your request. +TicketPublicMsgViewLogIn=Please enter ticket tracking ID +TicketTrackId=Public Tracking ID +OneOfTicketTrackId=One of your tracking ID +ErrorTicketNotFound=Ticket with tracking ID %s not found! +Subject=Subject +ViewTicket=View ticket +ViewMyTicketList=View my ticket list +ErrorEmailMustExistToCreateTicket=Error: email address not found in our database +TicketNewEmailSubjectAdmin=New ticket created - Ref %s (public ticket ID %s) +TicketNewEmailBodyAdmin=

    Ticket has just been created with ID #%s, see information:

    +SeeThisTicketIntomanagementInterface=See ticket in management interface +TicketPublicInterfaceForbidden=The public interface for the tickets was not enabled +ErrorEmailOrTrackingInvalid=Bad value for tracking ID or email +OldUser=Old user +NewUser=New user +NumberOfTicketsByMonth=Number of tickets per month +NbOfTickets=Number of tickets +# notifications +TicketNotificationEmailSubject=Ticket %s updated +TicketNotificationEmailBody=This is an automatic message to notify you that ticket %s has just been updated +TicketNotificationRecipient=Notification recipient +TicketNotificationLogMessage=Log message +TicketNotificationEmailBodyInfosTrackUrlinternal=View ticket into interface +TicketNotificationNumberEmailSent=Notification email sent: %s + +ActionsOnTicket=Events on ticket + +# +# Boxes +# +BoxLastTicket=Latest created tickets +BoxLastTicketDescription=Latest %s created tickets +BoxLastTicketContent= +BoxLastTicketNoRecordedTickets=No recent unread tickets +BoxLastModifiedTicket=Latest modified tickets +BoxLastModifiedTicketDescription=Latest %s modified tickets +BoxLastModifiedTicketContent= +BoxLastModifiedTicketNoRecordedTickets=No recent modified tickets diff --git a/htdocs/langs/hi_IN/trips.lang b/htdocs/langs/hi_IN/trips.lang new file mode 100644 index 00000000000..654f14d6bf7 --- /dev/null +++ b/htdocs/langs/hi_IN/trips.lang @@ -0,0 +1,151 @@ +# Dolibarr language file - Source file is en_US - trips +ShowExpenseReport=Show expense report +Trips=Expense reports +TripsAndExpenses=Expenses reports +TripsAndExpensesStatistics=Expense reports statistics +TripCard=Expense report card +AddTrip=Create expense report +ListOfTrips=List of expense reports +ListOfFees=List of fees +TypeFees=Types of fees +ShowTrip=Show expense report +NewTrip=New expense report +LastExpenseReports=Latest %s expense reports +AllExpenseReports=All expense reports +CompanyVisited=Company/organization visited +FeesKilometersOrAmout=Amount or kilometers +DeleteTrip=Delete expense report +ConfirmDeleteTrip=Are you sure you want to delete this expense report? +ListTripsAndExpenses=List of expense reports +ListToApprove=Waiting for approval +ExpensesArea=Expense reports area +ClassifyRefunded=Classify 'Refunded' +ExpenseReportWaitingForApproval=A new expense report has been submitted for approval +ExpenseReportWaitingForApprovalMessage=A new expense report has been submitted and is waiting for approval.
    - User: %s
    - Period: %s
    Click here to validate: %s +ExpenseReportWaitingForReApproval=An expense report has been submitted for re-approval +ExpenseReportWaitingForReApprovalMessage=An expense report has been submitted and is waiting for re-approval.
    The %s, you refused to approve the expense report for this reason: %s.
    A new version has been proposed and waiting for your approval.
    - User: %s
    - Period: %s
    Click here to validate: %s +ExpenseReportApproved=An expense report was approved +ExpenseReportApprovedMessage=The expense report %s was approved.
    - User: %s
    - Approved by: %s
    Click here to show the expense report: %s +ExpenseReportRefused=An expense report was refused +ExpenseReportRefusedMessage=The expense report %s was refused.
    - User: %s
    - Refused by: %s
    - Motive for refusal: %s
    Click here to show the expense report: %s +ExpenseReportCanceled=An expense report was canceled +ExpenseReportCanceledMessage=The expense report %s was canceled.
    - User: %s
    - Canceled by: %s
    - Motive for cancellation: %s
    Click here to show the expense report: %s +ExpenseReportPaid=An expense report was paid +ExpenseReportPaidMessage=The expense report %s was paid.
    - User: %s
    - Paid by: %s
    Click here to show the expense report: %s +TripId=Id expense report +AnyOtherInThisListCanValidate=Person to inform for validation. +TripSociete=Information company +TripNDF=Informations expense report +PDFStandardExpenseReports=Standard template to generate a PDF document for expense report +ExpenseReportLine=Expense report line +TF_OTHER=Other +TF_TRIP=Transportation +TF_LUNCH=Lunch +TF_METRO=Metro +TF_TRAIN=Train +TF_BUS=Bus +TF_CAR=Car +TF_PEAGE=Toll +TF_ESSENCE=Fuel +TF_HOTEL=Hotel +TF_TAXI=Taxi +EX_KME=Mileage costs +EX_FUE=Fuel CV +EX_HOT=Hotel +EX_PAR=Parking CV +EX_TOL=Toll CV +EX_TAX=Various Taxes +EX_IND=Indemnity transportation subscription +EX_SUM=Maintenance supply +EX_SUO=Office supplies +EX_CAR=Car rental +EX_DOC=Documentation +EX_CUR=Customers receiving +EX_OTR=Other receiving +EX_POS=Postage +EX_CAM=CV maintenance and repair +EX_EMM=Employees meal +EX_GUM=Guests meal +EX_BRE=Breakfast +EX_FUE_VP=Fuel PV +EX_TOL_VP=Toll PV +EX_PAR_VP=Parking PV +EX_CAM_VP=PV maintenance and repair +DefaultCategoryCar=Default transportation mode +DefaultRangeNumber=Default range number +UploadANewFileNow=Upload a new document now +Error_EXPENSEREPORT_ADDON_NotDefined=Error, the rule for expense report numbering ref was not defined into setup of module 'Expense Report' +ErrorDoubleDeclaration=You have declared another expense report into a similar date range. +AucuneLigne=There is no expense report declared yet +ModePaiement=Payment mode +VALIDATOR=User responsible for approval +VALIDOR=Approved by +AUTHOR=Recorded by +AUTHORPAIEMENT=Paid by +REFUSEUR=Denied by +CANCEL_USER=Deleted by +MOTIF_REFUS=Reason +MOTIF_CANCEL=Reason +DATE_REFUS=Deny date +DATE_SAVE=Validation date +DATE_CANCEL=Cancelation date +DATE_PAIEMENT=Payment date +BROUILLONNER=Reopen +ExpenseReportRef=Ref. expense report +ValidateAndSubmit=Validate and submit for approval +ValidatedWaitingApproval=Validated (waiting for approval) +NOT_AUTHOR=You are not the author of this expense report. Operation cancelled. +ConfirmRefuseTrip=Are you sure you want to deny this expense report? +ValideTrip=Approve expense report +ConfirmValideTrip=Are you sure you want to approve this expense report? +PaidTrip=Pay an expense report +ConfirmPaidTrip=Are you sure you want to change status of this expense report to "Paid"? +ConfirmCancelTrip=Are you sure you want to cancel this expense report? +BrouillonnerTrip=Move back expense report to status "Draft" +ConfirmBrouillonnerTrip=Are you sure you want to move this expense report to status "Draft"? +SaveTrip=Validate expense report +ConfirmSaveTrip=Are you sure you want to validate this expense report? +NoTripsToExportCSV=No expense report to export for this period. +ExpenseReportPayment=Expense report payment +ExpenseReportsToApprove=Expense reports to approve +ExpenseReportsToPay=Expense reports to pay +ConfirmCloneExpenseReport=Are you sure you want to clone this expense report ? +ExpenseReportsIk=Expense report milles index +ExpenseReportsRules=Expense report rules +ExpenseReportIkDesc=You can modify the calculation of kilometers expense by category and range who they are previously defined. d is the distance in kilometers +ExpenseReportRulesDesc=You can create or update any rules of calculation. This part will be used when user will create a new expense report +expenseReportOffset=Offset +expenseReportCoef=Coefficient +expenseReportTotalForFive=Example with d = 5 +expenseReportRangeFromTo=from %d to %d +expenseReportRangeMoreThan=more than %d +expenseReportCoefUndefined=(value not defined) +expenseReportCatDisabled=Category disabled - see the c_exp_tax_cat dictionary +expenseReportRangeDisabled=Range disabled - see the c_exp_tax_range dictionay +expenseReportPrintExample=offset + (d x coef) = %s +ExpenseReportApplyTo=Apply to +ExpenseReportDomain=Domain to apply +ExpenseReportLimitOn=Limit on +ExpenseReportDateStart=Date start +ExpenseReportDateEnd=Date end +ExpenseReportLimitAmount=Limite amount +ExpenseReportRestrictive=Restrictive +AllExpenseReport=All type of expense report +OnExpense=Expense line +ExpenseReportRuleSave=Expense report rule saved +ExpenseReportRuleErrorOnSave=Error: %s +RangeNum=Range %d +ExpenseReportConstraintViolationError=Constraint violation id [%s]: %s is superior to %s %s +byEX_DAY=by day (limitation to %s) +byEX_MON=by month (limitation to %s) +byEX_YEA=by year (limitation to %s) +byEX_EXP=by line (limitation to %s) +ExpenseReportConstraintViolationWarning=Constraint violation id [%s]: %s is superior to %s %s +nolimitbyEX_DAY=by day (no limitation) +nolimitbyEX_MON=by month (no limitation) +nolimitbyEX_YEA=by year (no limitation) +nolimitbyEX_EXP=by line (no limitation) +CarCategory=Category of car +ExpenseRangeOffset=Offset amount: %s +RangeIk=Mileage range +AttachTheNewLineToTheDocument=Attach the line to an uploaded document diff --git a/htdocs/langs/hi_IN/users.lang b/htdocs/langs/hi_IN/users.lang new file mode 100644 index 00000000000..41a5ebd0981 --- /dev/null +++ b/htdocs/langs/hi_IN/users.lang @@ -0,0 +1,118 @@ +# Dolibarr language file - Source file is en_US - users +HRMArea=HRM area +UserCard=User card +GroupCard=Group card +Permission=Permission +Permissions=Permissions +EditPassword=Edit password +SendNewPassword=Regenerate and send password +SendNewPasswordLink=Send link to reset password +ReinitPassword=Regenerate password +PasswordChangedTo=Password changed to: %s +SubjectNewPassword=Your new password for %s +GroupRights=Group permissions +UserRights=User permissions +UserGUISetup=User Display Setup +DisableUser=Disable +DisableAUser=Disable a user +DeleteUser=Delete +DeleteAUser=Delete a user +EnableAUser=Enable a user +DeleteGroup=Delete +DeleteAGroup=Delete a group +ConfirmDisableUser=Are you sure you want to disable user %s? +ConfirmDeleteUser=Are you sure you want to delete user %s? +ConfirmDeleteGroup=Are you sure you want to delete group %s? +ConfirmEnableUser=Are you sure you want to enable user %s? +ConfirmReinitPassword=Are you sure you want to generate a new password for user %s? +ConfirmSendNewPassword=Are you sure you want to generate and send new password for user %s? +NewUser=New user +CreateUser=Create user +LoginNotDefined=Login is not defined. +NameNotDefined=Name is not defined. +ListOfUsers=List of users +SuperAdministrator=Super Administrator +SuperAdministratorDesc=Global administrator +AdministratorDesc=Administrator +DefaultRights=Default Permissions +DefaultRightsDesc=Define here the default permissions that are automatically granted to a new user (to modify permissions for existing users, go to the user card). +DolibarrUsers=Dolibarr users +LastName=Last name +FirstName=First name +ListOfGroups=List of groups +NewGroup=New group +CreateGroup=Create group +RemoveFromGroup=Remove from group +PasswordChangedAndSentTo=Password changed and sent to %s. +PasswordChangeRequest=Request to change password for %s +PasswordChangeRequestSent=Request to change password for %s sent to %s. +ConfirmPasswordReset=Confirm password reset +MenuUsersAndGroups=Users & Groups +LastGroupsCreated=Latest %s groups created +LastUsersCreated=Latest %s users created +ShowGroup=Show group +ShowUser=Show user +NonAffectedUsers=Non assigned users +UserModified=User modified successfully +PhotoFile=Photo file +ListOfUsersInGroup=List of users in this group +ListOfGroupsForUser=List of groups for this user +LinkToCompanyContact=Link to third party / contact +LinkedToDolibarrMember=Link to member +LinkedToDolibarrUser=Link to Dolibarr user +LinkedToDolibarrThirdParty=Link to Dolibarr third party +CreateDolibarrLogin=Create a user +CreateDolibarrThirdParty=Create a third party +LoginAccountDisableInDolibarr=Account disabled in Dolibarr. +UsePersonalValue=Use personal value +InternalUser=Internal user +ExportDataset_user_1=Users and their properties +DomainUser=Domain user %s +Reactivate=Reactivate +CreateInternalUserDesc=This form allows you to create an internal user in your company/organization. To create an external user (customer, vendor etc. ..), use the button 'Create Dolibarr User' from that third-party's contact card. +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +PermissionInheritedFromAGroup=Permission granted because inherited from one of a user's group. +Inherited=Inherited +UserWillBeInternalUser=Created user will be an internal user (because not linked to a particular third party) +UserWillBeExternalUser=Created user will be an external user (because linked to a particular third party) +IdPhoneCaller=Id phone caller +NewUserCreated=User %s created +NewUserPassword=Password change for %s +NewPasswordValidated=Your new password have been validated and must be used now to login. +EventUserModified=User %s modified +UserDisabled=User %s disabled +UserEnabled=User %s activated +UserDeleted=User %s removed +NewGroupCreated=Group %s created +GroupModified=Group %s modified +GroupDeleted=Group %s removed +ConfirmCreateContact=Are you sure you want to create a Dolibarr account for this contact? +ConfirmCreateLogin=Are you sure you want to create a Dolibarr account for this member? +ConfirmCreateThirdParty=Are you sure you want to create a third party for this member? +LoginToCreate=Login to create +NameToCreate=Name of third party to create +YourRole=Your roles +YourQuotaOfUsersIsReached=Your quota of active users is reached ! +NbOfUsers=No. of users +NbOfPermissions=No. of permissions +DontDowngradeSuperAdmin=Only a superadmin can downgrade a superadmin +HierarchicalResponsible=Supervisor +HierarchicView=Hierarchical view +UseTypeFieldToChange=Use field Type to change +OpenIDURL=OpenID URL +LoginUsingOpenID=Use OpenID to login +WeeklyHours=Hours worked (per week) +ExpectedWorkedHours=Expected worked hours per week +ColorUser=Color of the user +DisabledInMonoUserMode=Disabled in maintenance mode +UserAccountancyCode=User accounting code +UserLogoff=User logout +UserLogged=User logged +DateEmployment=Employment Start Date +DateEmploymentEnd=Employment End Date +CantDisableYourself=You can't disable your own user record +ForceUserExpenseValidator=Force expense report validator +ForceUserHolidayValidator=Force leave request validator +ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/hi_IN/website.lang b/htdocs/langs/hi_IN/website.lang new file mode 100644 index 00000000000..bce2a09fb03 --- /dev/null +++ b/htdocs/langs/hi_IN/website.lang @@ -0,0 +1,130 @@ +# Dolibarr language file - Source file is en_US - website +Shortname=Code +WebsiteSetupDesc=Create here the websites you wish to use. Then go into menu Websites to edit them. +DeleteWebsite=Delete website +ConfirmDeleteWebsite=Are you sure you want to delete this web site? All its pages and content will also be removed. The files uploaded (like into the medias directory, the ECM module, ...) will remain. +WEBSITE_TYPE_CONTAINER=Type of page/container +WEBSITE_PAGE_EXAMPLE=Web page to use as example +WEBSITE_PAGENAME=Page name/alias +WEBSITE_ALIASALT=Alternative page names/aliases +WEBSITE_ALIASALTDesc=Use here list of other name/aliases so the page can also be accessed using this other names/aliases (for example the old name after renaming the alias to keep backlink on old link/name working). Syntax is:
    alternativename1, alternativename2, ... +WEBSITE_CSS_URL=URL of external CSS file +WEBSITE_CSS_INLINE=CSS file content (common to all pages) +WEBSITE_JS_INLINE=Javascript file content (common to all pages) +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. +MediaFiles=Media library +EditCss=Edit website properties +EditMenu=Edit menu +EditMedias=Edit medias +EditPageMeta=Edit page/container properties +EditInLine=Edit inline +AddWebsite=Add website +Webpage=Web page/container +AddPage=Add page/container +HomePage=Home Page +PageContainer=Page/container +PreviewOfSiteNotYetAvailable=Preview of your website %s not yet available. You must first 'Import a full website template' or just 'Add a page/container'. +RequestedPageHasNoContentYet=Requested page with id %s has no content yet, or cache file .tpl.php was removed. Edit content of the page to solve this. +SiteDeleted=Web site '%s' deleted +PageContent=Page/Contenair +PageDeleted=Page/Contenair '%s' of website %s deleted +PageAdded=Page/Contenair '%s' added +ViewSiteInNewTab=View site in new tab +ViewPageInNewTab=View page in new tab +SetAsHomePage=Set as Home page +RealURL=Real URL +ViewWebsiteInProduction=View web site using home URLs +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: +YouCanAlsoTestWithPHPS=Use with PHP embedded server
    On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running
    php -S 0.0.0.0:8080 -t %s +YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org +CheckVirtualHostPerms=Check also that virtual host has permission %s on files into
    %s +ReadPerm=Read +WritePerm=Write +TestDeployOnWeb=Test/deploy on web +PreviewSiteServedByWebServer=Preview %s in a new tab.

    The %s will be served by an external web server (like Apache, Nginx, IIS). You must install and setup this server before to point to directory:
    %s
    URL served by external server:
    %s +PreviewSiteServedByDolibarr=Preview %s in a new tab.

    The %s will be served by Dolibarr server so it does not need any extra web server (like Apache, Nginx, IIS) to be installed.
    The inconvenient is that URL of pages are not user friendly and start with path of your Dolibarr.
    URL served by Dolibarr:
    %s

    To use your own external web server to serve this web site, create a virtual host on your web server that point on directory
    %s
    then enter the name of this virtual server and click on the other preview button. +VirtualHostUrlNotDefined=URL of the virtual host served by external web server not defined +NoPageYet=No pages yet +YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template +SyntaxHelp=Help on specific syntax tips +YouCanEditHtmlSourceckeditor=You can edit HTML source code using the "Source" button in editor. +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +ClonePage=Clone page/container +CloneSite=Clone site +SiteAdded=Website added +ConfirmClonePage=Please enter code/alias of new page and if it is a translation of the cloned page. +PageIsANewTranslation=The new page is a translation of the current page ? +LanguageMustNotBeSameThanClonedPage=You clone a page as a translation. The language of the new page must be different than language of source page. +ParentPageId=Parent page ID +WebsiteId=Website ID +CreateByFetchingExternalPage=Create page/container by fetching page from external URL... +OrEnterPageInfoManually=Or create page from scratch or from a page template... +FetchAndCreate=Fetch and Create +ExportSite=Export website +ImportSite=Import website template +IDOfPage=Id of page +Banner=Banner +BlogPost=Blog post +WebsiteAccount=Website account +WebsiteAccounts=Website accounts +AddWebsiteAccount=Create web site account +BackToListForThirdParty=Back to list for the third-party +DisableSiteFirst=Disable website first +MyContainerTitle=My web site title +AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) +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 +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. +OnlyEditionOfSourceForGrabbedContent=Only edition of HTML source is possible when content was grabbed from an external site +GrabImagesInto=Grab also images found into css and page. +ImagesShouldBeSavedInto=Images should be saved into directory +WebsiteRootOfImages=Root directory for website images +SubdirOfPage=Sub-directory dedicated to page +AliasPageAlreadyExists=Alias page %s already exists +CorporateHomePage=Corporate Home page +EmptyPage=Empty page +ExternalURLMustStartWithHttp=External URL must start with http:// or https:// +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 +ThisPageHasTranslationPages=This page/container has translation +NoWebSiteCreateOneFirst=No website has been created yet. Create one first. +GoTo=Go to +DynamicPHPCodeContainsAForbiddenInstruction=You add dynamic PHP code that contains the PHP instruction '%s' that is forbidden by default as dynamic content (see hidden options WEBSITE_PHP_ALLOW_xxx to increase list of allowed commands). +NotAllowedToAddDynamicContent=You don't have permission to add or edit PHP dynamic content in websites. Ask permission or just keep code into php tags unmodified. +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 +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. +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. +Dynamiccontent=Sample of a page with dynamic content +ImportSite=Import website template +EditInLineOnOff=Mode 'Edit inline' is %s +ShowSubContainersOnOff=Mode to execute 'dynamic content' is %s +GlobalCSSorJS=Global CSS/JS/Header file of web site +BackToHomePage=Back to home page... +TranslationLinks=Translation links +YouTryToAccessToAFileThatIsNotAWebsitePage=You try to access to a page that is not a website page +UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 characters +MainLanguage=Main language +OtherLanguages=Other languages +UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/hi_IN/withdrawals.lang b/htdocs/langs/hi_IN/withdrawals.lang new file mode 100644 index 00000000000..b1d6e30e329 --- /dev/null +++ b/htdocs/langs/hi_IN/withdrawals.lang @@ -0,0 +1,119 @@ +# Dolibarr language file - Source file is en_US - withdrawals +CustomersStandingOrdersArea=Direct debit payment orders area +SuppliersStandingOrdersArea=Direct credit payment orders area +StandingOrdersPayment=Direct debit payment orders +StandingOrderPayment=Direct debit payment order +NewStandingOrder=New direct debit order +StandingOrderToProcess=To process +WithdrawalsReceipts=Direct debit orders +WithdrawalReceipt=Direct debit order +LastWithdrawalReceipts=Latest %s direct debit files +WithdrawalsLines=Direct debit order lines +RequestStandingOrderToTreat=Request for direct debit payment order to process +RequestStandingOrderTreated=Request for direct debit payment order processed +NotPossibleForThisStatusOfWithdrawReceiptORLine=Not yet possible. Withdraw status must be set to 'credited' before declaring reject on specific lines. +NbOfInvoiceToWithdraw=No. of qualified invoice with waiting direct debit order +NbOfInvoiceToWithdrawWithInfo=No. of customer invoice with direct debit payment orders having defined bank account information +InvoiceWaitingWithdraw=Invoice waiting for direct debit +AmountToWithdraw=Amount to withdraw +WithdrawsRefused=Direct debit refused +NoInvoiceToWithdraw=No customer invoice with open 'Direct debit requests' is waiting. Go on tab '%s' on invoice card to make a request. +ResponsibleUser=User Responsible +WithdrawalsSetup=Direct debit payment setup +WithdrawStatistics=Direct debit payment statistics +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 +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=Classify credited +ClassCreditedConfirm=Are you sure you want to classify this withdrawal receipt as credited on your bank account? +TransData=Transmission date +TransMetod=Transmission method +Send=Send +Lines=Lines +StandingOrderReject=Issue a rejection +WithdrawalRefused=Withdrawal refused +WithdrawalRefusedConfirm=Are you sure you want to enter a withdrawal rejection for society +RefusedData=Date of rejection +RefusedReason=Reason for rejection +RefusedInvoicing=Billing the rejection +NoInvoiceRefused=Do not charge the rejection +InvoiceRefused=Invoice refused (Charge the rejection to customer) +StatusDebitCredit=Status debit/credit +StatusWaiting=Waiting +StatusTrans=Sent +StatusCredited=Credited +StatusRefused=Refused +StatusMotif0=Unspecified +StatusMotif1=Insufficient funds +StatusMotif2=Request contested +StatusMotif3=No direct debit payment order +StatusMotif4=Sales Order +StatusMotif5=RIB unusable +StatusMotif6=Account without balance +StatusMotif7=Judicial Decision +StatusMotif8=Other reason +CreateForSepaFRST=Create direct debit file (SEPA FRST) +CreateForSepaRCUR=Create direct debit file (SEPA RCUR) +CreateAll=Create direct debit file (all) +CreateGuichet=Only office +CreateBanque=Only bank +OrderWaiting=Waiting for treatment +NotifyTransmision=Withdrawal Transmission +NotifyCredit=Withdrawal Credit +NumeroNationalEmetter=National Transmitter Number +WithBankUsingRIB=For bank accounts using RIB +WithBankUsingBANBIC=For bank accounts using IBAN/BIC/SWIFT +BankToReceiveWithdraw=Receiving Bank Account +CreditDate=Credit on +WithdrawalFileNotCapable=Unable to generate withdrawal receipt file for your country %s (Your country is not supported) +ShowWithdraw=Show Direct Debit Order +IfInvoiceNeedOnWithdrawPaymentWontBeClosed=However, if invoice has at least one direct debit payment order not yet processed, it won't be set as paid to allow prior withdrawal 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 payment order is closed, payment on invoice will be automatically recorded, and invoice closed if remainder to pay is null. +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 +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) +WithdrawRequestAmount=Amount of Direct debit request: +WithdrawRequestErrorNilAmount=Unable to create direct debit request for empty amount. +SepaMandate=SEPA Direct Debit Mandate +SepaMandateShort=SEPA Mandate +PleaseReturnMandate=Please return this mandate form by email to %s or by mail to +SEPALegalText=By signing this mandate form, you authorize (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. +CreditorIdentifier=Creditor Identifier +CreditorName=Creditor Name +SEPAFillForm=(B) Please complete all the fields marked * +SEPAFormYourName=Your name +SEPAFormYourBAN=Your Bank Account Name (IBAN) +SEPAFormYourBIC=Your Bank Identifier Code (BIC) +SEPAFrstOrRecur=Type of payment +ModeRECUR=Recurring payment +ModeFRST=One-off payment +PleaseCheckOne=Please check one only +DirectDebitOrderCreated=Direct debit order %s created +AmountRequested=Amount requested +SEPARCUR=SEPA CUR +SEPAFRST=SEPA FRST +ExecutionDate=Execution date +CreateForSepa=Create direct debit file +ICS=Creditor Identifier CI +END_TO_END="EndToEndId" SEPA XML tag - Unique id assigned per transaction +USTRD="Unstructured" SEPA XML tag +ADDDAYS=Add days to Execution Date + +### Notifications +InfoCreditSubject=Payment of direct debit payment order %s by the bank +InfoCreditMessage=The direct debit payment order %s has been paid by the bank
    Data of payment: %s +InfoTransSubject=Transmission of direct debit payment order %s to bank +InfoTransMessage=The direct debit payment order %s has been sent to bank by %s %s.

    +InfoTransData=Amount: %s
    Method: %s
    Date: %s +InfoRejectSubject=Direct debit payment order refused +InfoRejectMessage=Hello,

    the direct debit payment order of invoice %s related to the company %s, with an amount of %s has been refused by the bank.

    --
    %s +ModeWarning=Option for real mode was not set, we stop after this simulation diff --git a/htdocs/langs/hi_IN/workflow.lang b/htdocs/langs/hi_IN/workflow.lang new file mode 100644 index 00000000000..be126eef0f4 --- /dev/null +++ b/htdocs/langs/hi_IN/workflow.lang @@ -0,0 +1,20 @@ +# Dolibarr language file - Source file is en_US - workflow +WorkflowSetup=Workflow module setup +WorkflowDesc=This module provides some automatic actions. By default, the workflow is open (you can do things in the order you want) but here you can activate some automatic actions. +ThereIsNoWorkflowToModify=There is no workflow modifications available with the activated modules. +# Autocreate +descWORKFLOW_PROPAL_AUTOCREATE_ORDER=Automatically create a sales order after a commercial proposal is signed (the new order will have same amount as the proposal) +descWORKFLOW_PROPAL_AUTOCREATE_INVOICE=Automatically create a customer invoice after a commercial proposal is signed (the new invoice will have same amount as the proposal) +descWORKFLOW_CONTRACT_AUTOCREATE_INVOICE=Automatically create a customer invoice after a contract is validated +descWORKFLOW_ORDER_AUTOCREATE_INVOICE=Automatically create a customer invoice after a sales order is closed (the new invoice will have same amount as the order) +# Autoclassify customer proposal or order +descWORKFLOW_ORDER_CLASSIFY_BILLED_PROPAL=Classify linked source proposal as billed when sales order is set to billed (and if the amount of the order is the same as the total amount of the signed linked proposal) +descWORKFLOW_INVOICE_CLASSIFY_BILLED_PROPAL=Classify linked source proposal as billed when customer invoice is validated (and if the amount of the invoice is the same as the total amount of the signed linked proposal) +descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_ORDER=Classify linked source sales order as billed when customer invoice is validated (and if the amount of the invoice is the same as the total amount of the linked order) +descWORKFLOW_INVOICE_CLASSIFY_BILLED_ORDER=Classify linked source sales order as billed when customer invoice is set to paid (and if the amount of the invoice is the same as the total amount of the linked order) +descWORKFLOW_ORDER_CLASSIFY_SHIPPED_SHIPPING=Classify linked source sales order as shipped when a shipment is validated (and if the quantity shipped by all shipments is the same as in the order to update) +# Autoclassify purchase order +descWORKFLOW_ORDER_CLASSIFY_BILLED_SUPPLIER_PROPOSAL=Classify linked source vendor proposal as billed when vendor invoice is validated (and if the amount of the invoice is the same as the total amount of the linked proposal) +descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Classify linked source purchase order as billed when vendor invoice is validated (and if the amount of the invoice is the same as the total amount of the linked order) +AutomaticCreation=Automatic creation +AutomaticClassification=Automatic classification diff --git a/htdocs/langs/hi_IN/zapier.lang b/htdocs/langs/hi_IN/zapier.lang new file mode 100644 index 00000000000..6d6eda71313 --- /dev/null +++ b/htdocs/langs/hi_IN/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr module + +# +# Admin page +# +ZapierForDolibarrSetup = Setup of Zapier for Dolibarr diff --git a/htdocs/langs/hr_HR/accountancy.lang b/htdocs/langs/hr_HR/accountancy.lang index 506c379e981..0838fa32941 100644 --- a/htdocs/langs/hr_HR/accountancy.lang +++ b/htdocs/langs/hr_HR/accountancy.lang @@ -121,6 +121,7 @@ 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 +TotalForAccount=Total for accounting account Ventilate=Bind @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Accounting account to register donations ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (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 products sold in EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported 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_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (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_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unkno ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error PaymentsNotLinkedToProduct=Payment not linked to any product / service +OpeningBalance=Opening balance ShowOpeningBalance=Show opening balance HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Group of account PcgtypeDesc=Group 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. +Reconcilable=Reconcilable + TotalVente=Total turnover before tax TotalMarge=Total sales margin @@ -307,11 +317,13 @@ 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Chart of accounts Id ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Načini prodaje OptionModeProductSellIntra=Mode sales exported in EEC OptionModeProductSellExport=Mode sales exported in other countries OptionModeProductBuy=Načini nabavke +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries 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. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=Remove accounting code from lines that not exists into charts of account CleanHistory=Reset all bindings for selected year PredefinedGroups=Predefined groups @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Account removed from group SaleLocal=Local sale SaleExport=Export sale SaleEEC=Sale in EEC +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=Raspon obračunskog računa diff --git a/htdocs/langs/hr_HR/admin.lang b/htdocs/langs/hr_HR/admin.lang index 00393affd11..5555183e943 100644 --- a/htdocs/langs/hr_HR/admin.lang +++ b/htdocs/langs/hr_HR/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Web Server korisnik/grupa NoSessionFound=Your PHP configuration seems to not allow listing of active sessions. The directory used to save sessions (%s) may be protected (for example by OS permissions or by PHP directive open_basedir). DBStoringCharset=Database charset to store data DBSortingCharset=Charset baze za sortiranje podataka +HostCharset=Host charset ClientCharset=Client charset ClientSortingCharset=Client collation WarningModuleNotActive=Modul %s mora biti omogućen @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the NoMaxSizeByPHPLimit=Napomena: Limit nije podešen u vašoj PHP konfiguraciji MaxSizeForUploadedFiles=Maksimalna veličina datoteka za upload (0 onemogučuje bilokakav upload) UseCaptchaCode=Koristi grafički kod (CAPTCHA) na stranici za prijavu -AntiVirusCommand= Puna putanja do antivirusne komande -AntiVirusCommandExample= Example for ClamWin: c:\\Progra~1\\ClamWin\\bin\\clamscan.exe
    Example for ClamAv: /usr/bin/clamscan +AntiVirusCommand=Puna putanja do antivirusne komande +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= Dodatni parametri za komandnu liniju -AntiVirusParamExample= Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=Podešavanje modula računovodstva UserSetup=Podešavanje upravljanja korisnicima MultiCurrencySetup=Podešavanje više valuta @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Mogućnost onemogućena u demo verziji FeatureAvailableOnlyOnStable=Feature only available on official stable versions BoxesDesc=Widgets are components showing some information that you can add to personalize some pages. You can choose between showing the widget or not by selecting target page and clicking 'Activate', or by clicking the trashcan to disable it. OnlyActiveElementsAreShown=Prikazani su samo elementi sa omogučenih modula -ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button (at end of module line) to enable/disable a module/application. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. ModulesMarketPlaceDesc=Možete pronaći više modula za download na vanjskim internet web lokacijama ModulesDeployDesc=If permissions on your file system allow it, you can use this tool to deploy an external module. The module will then be visible on the tab %s. ModulesMarketPlaces=Nađi vanjske aplikacije/module @@ -212,6 +213,7 @@ CompatibleUpTo=Compatible with version %s NotCompatible=This module does not seem compatible with your Dolibarr %s (Min %s - Max %s). CompatibleAfterUpdate=This module requires an update to your Dolibarr %s (Min %s - Max %s). SeeInMarkerPlace=See in Market place +SeeSetupOfModule=See setup of module %s Updated=Updated Nouveauté=Novelty AchatTelechargement=Buy / Download @@ -221,6 +223,7 @@ DoliPartnersDesc=List of companies providing custom-developed modules or feature WebSiteDesc=External websites for more add-on (non-core) modules... DevelopYourModuleDesc=Some solutions to develop your own module... URL=URL +RelativeURL=Relative URL BoxesAvailable=Dostupni dodaci BoxesActivated=Aktivirani dodaci ActivateOn=Aktiviraj na @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Checkboxes ExtrafieldCheckBoxFromList=Checkboxes from table ExtrafieldLink=Poveži s objektom ComputedFormula=Computed field -ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Store computed field ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! ExtrafieldParamHelpPassword=Leaving this field blank means this value will be stored without encryption (field must be only hidden with star on screen).
    Set 'auto' to use the default encryption rule to save password into database (then value read will be the hash only, no way to retrieve original value) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Ostavite prazno za zadane vrijednosti DefaultLink=Default link SetAsDefault=Postavi kao zadano ValueOverwrittenByUserSetup=Warning, this value may be overwritten by user specific setup (each user can set his own clicktodial url) -ExternalModule=Vanjski modul - Instaliran u mapi %s +ExternalModule=External module +InstalledInto=Installed into directory %s BarcodeInitForthird-parties=Mass barcode init for third-parties BarcodeInitForProductsOrServices=Masovno postavljanje ili promjena barkodova usluga i proizvoda CurrentlyNWithoutBarCode=Currently, you have %s record on %s %s without barcode defined. @@ -947,7 +951,7 @@ DictionaryCanton=States/Provinces DictionaryRegion=Regije DictionaryCountry=Zemlje DictionaryCurrency=Valute -DictionaryCivility=Title of civility +DictionaryCivility=Honorific titles DictionaryActions=Tipovi događaja agende DictionarySocialContributions=Types of social or fiscal taxes DictionaryVAT=Stope PDV-a ili stope prodajnih poreza @@ -988,6 +992,7 @@ VATIsNotUsedDesc=By default the proposed Sales tax is 0 which can be used for ca VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=Stopa LocalTax1IsNotUsed=Nemoj koristit drugi porez LocalTax1IsUsedDesc=Use a second type of tax (other than first one) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices LocalTax2IsNotUsedDescES=Kao zadano preporučeni IRPF je 0. Kraj prvila. LocalTax2IsUsedExampleES=In Spain, freelancers and independent professionals who provide services and companies who have chosen the tax system of modules. LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=Izvještaji o lokalnim porezima CalcLocaltax1=Prodaja - Nabava CalcLocaltax1Desc=Local Taxes reports are calculated with the difference between localtaxes sales and localtaxes purchases @@ -1018,6 +1026,7 @@ CalcLocaltax2=Nabava CalcLocaltax2Desc=Local Taxes reports are the total of localtaxes purchases CalcLocaltax3=Prodaja CalcLocaltax3Desc=Local Taxes reports are the total of localtaxes sales +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=Oznake korištene kao zadane ako ne postoji prijevoda za kod LabelOnDocuments=Oznake na dokumentima LabelOrTranslationKey=Label or translation key @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Expense report to approve Delays_MAIN_DELAY_HOLIDAYS=Leave requests 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. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. SetupDescription5=Other Setup menu entries manage optional parameters. LogEvents=Pregled sigurnosnih događaja Audit=Revizija @@ -1128,7 +1137,7 @@ LogEventDesc=Enable logging for specific security events. Administrators the log AreaForAdminOnly=Setup parameters can be set by administrator users only. SystemInfoDesc=System information is miscellaneous technical information you get in read only mode and visible for administrators only. SystemAreaForAdminOnly=This area is available to administrator users only. Dolibarr user permissions cannot change this restriction. -CompanyFundationDesc=Edit the information of the company/entity. Click on "%s" button at the bottom of the page. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. AccountantFileNumber=Accountant code DisplayDesc=Parameters affecting the look and behaviour of Dolibarr can be modified here. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Rules to generate and validate passwords DisableForgetPasswordLinkOnLogonPage=Do not show the "Password Forgotten" link on the Login page UsersSetup=Podešavanje modula korisnka UserMailRequired=Email required to create a new user +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### HRMSetup=Podešavanje modula HRM ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Model dokumenata računa BillsPDFModulesAccordindToInvoiceType=Invoice documents models according to invoice type PaymentsPDFModules=Payment documents models ForceInvoiceDate=Forsiraj datum računa kao datum ovjere -SuggestedPaymentModesIfNotDefinedInInvoice=Predloženi način plačanja na računu kao zadano ako nije definirano za račun +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice SuggestPaymentByRIBOnAccount=Suggest payment by withdrawal on account SuggestPaymentByChequeToAddress=Suggest payment by check to FreeLegalTextOnInvoices=Slobodan unos teksta na računu @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Vendor payments setup PropalSetup=Podešavanje modula ponuda ProposalsNumberingModules=Modeli brojeva ponuda ProposalsPDFModules=Modeli dokumenta ponuda -SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined for proposal +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal FreeLegalTextOnProposal=Slobodan unos teksta na ponudi WatermarkOnDraftProposal=Vodeni žig na skici ponude (ako nije prazno) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Traži odredišni bankovni račun ponude @@ -1322,6 +1334,7 @@ WAREHOUSE_ASK_WAREHOUSE_DURING_ORDER=Upitaj za izvorno skladište za narudžbe ##### Suppliers Orders ##### BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_ORDER=Ask for bank account destination of purchase order ##### Orders ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=Postavke upravljanja narudžbenicama OrdersNumberingModules=Način označavanja narudžba OrdersModelModule=Model dokumenata narudžba @@ -1720,7 +1733,7 @@ MultiCompanySetup=Više poduzeća module podešavanje ##### Suppliers ##### SuppliersSetup=Vendor module setup SuppliersCommandModel=Complete template of Purchase Order -SuppliersCommandModelMuscadet=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) SuppliersInvoiceModel=Complete template of Vendor Invoice SuppliersInvoiceNumberingModel=Vendor invoices numbering models IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Sakrij slike u gornjem izborniku LeftMenuBackgroundColor=Boja pozadine lijevog izbornika BackgroundTableTitleColor=Boja pozadine za zaglavlje tablica BackgroundTableTitleTextColor=Text color for Table title line +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Boja pozadine za neparne redove u tablici BackgroundTableLineEvenColor=Boja pozadine za parne redove u tablici MinimumNoticePeriod=Minimum notice period (Your leave request must be done before this delay) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Dolibarr Reference not found in Message ID FormatZip=PBR MainMenuCode=Menu entry code (mainmenu) ECMAutoTree=Show automatic ECM tree -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. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Opening hours OpeningHoursDesc=Enter here the regular opening hours of your company. ResourceSetup=Configuration of Resource module @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramatical ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export +ImportSetup=Setup of module Import InstanceUniqueID=Unique ID of the instance SmallerThan=Smaller than LargerThan=Larger than @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled EmailTemplate=Template for email EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/hr_HR/bills.lang b/htdocs/langs/hr_HR/bills.lang index 6783733932e..e033143aff2 100644 --- a/htdocs/langs/hr_HR/bills.lang +++ b/htdocs/langs/hr_HR/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Ulazni računi SupplierBill=Ulazni račun SupplierBills=Ulazni računi Payment=Plaćanja -PaymentBack=Isplata -CustomerInvoicePaymentBack=Isplata +PaymentBack=Povrat +CustomerInvoicePaymentBack=Povrat Payments=Plaćanja PaymentsBack=Refunds paymentInInvoiceCurrency=u valuti računa PaidBack=Uplaćeno natrag DeletePayment=Izbriši plaćanje ConfirmDeletePayment=Sigurno želite izbrisati ovo plaćanje? -ConfirmConvertToReduc=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. -ConfirmConvertToReducSupplier=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. SupplierPayments=Vendor payments ReceivedPayments=Primljene uplate @@ -209,17 +209,13 @@ NumberOfBillsByMonth=Broj računa po mjesecu AmountOfBills=Broj računa AmountOfBillsHT=Amount of invoices (net of tax) AmountOfBillsByMonthHT=Iznos računa po mjesecu (bez PDV-a) -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 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 +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=To pay on %s toPayOn=to pay on %s RetainedWarranty=Retained Warranty @@ -230,7 +226,6 @@ 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 AlreadyPaidNoCreditNotesNoDeposits=Uplaćeni iznos (bez knjižnih odobrenja i predujmova) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Generated from template invoice %s WarningInvoiceDateInFuture=Warning, the invoice date is higher than current date WarningInvoiceDateTooFarInFuture=Warning, the invoice date is too far from current date ViewAvailableGlobalDiscounts=View available discounts +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Status PaymentConditionShortRECEP=Dospijeće po primitku @@ -509,7 +505,7 @@ ToMakePayment=Plati ToMakePaymentBack=Povrat ListOfYourUnpaidInvoices=Popis neplaćenih računa NoteListOfYourUnpaidInvoices=Napomena: Ovaj popis sadrži samo račune za komitente kojima ste vi prodajni predstavnik -RevenueStamp=Prihodovna markica +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party YouMustCreateStandardInvoiceFirstDesc=Kako biste izradili novi predložak računa morate prvo izraditi običan račun i onda ga promijeniti u "predložak" @@ -575,3 +571,4 @@ AutoFillDateTo=Set end date for service line with next invoice date AutoFillDateToShort=Set end date MaxNumberOfGenerationReached=Max number of gen. reached BILL_DELETEInDolibarr=Račun obrisan +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/hr_HR/blockedlog.lang b/htdocs/langs/hr_HR/blockedlog.lang index cff8f7d657b..5afae6e9e53 100644 --- a/htdocs/langs/hr_HR/blockedlog.lang +++ b/htdocs/langs/hr_HR/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Unalterable logs ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) DownloadBlockChain=Download fingerprints -KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this re after it was recorded, or has erased the previous archived record (check that line with previous # exists). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. AddedByAuthority=Stored into remote authority diff --git a/htdocs/langs/hr_HR/cashdesk.lang b/htdocs/langs/hr_HR/cashdesk.lang index 200a99c3d40..efcc63b0adc 100644 --- a/htdocs/langs/hr_HR/cashdesk.lang +++ b/htdocs/langs/hr_HR/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Dodaj ovu stavku RestartSelling=Povratak na prodaju SellFinished=Sale complete PrintTicket=Ispis računa +SendTicket=Send ticket NoProductFound=Stavka nije pronađena ProductFound=Proizvod pronađen NoArticle=Nema stavke @@ -48,6 +49,7 @@ Footer=Footer AmountAtEndOfPeriod=Amount at end of period (day, month or year) TheoricalAmount=Theorical amount RealAmount=Real amount +CashFence=Cash fence CashFenceDone=Cash fence done for the period NbOfInvoices=Broj računa Paymentnumpad=Type of Pad to enter payment @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS needs product categories to work OrderNotes=Order Notes CashDeskBankAccountFor=Default account to use for payments in NoPaimementModesDefined=No paiment mode defined in TakePOS configuration -TicketVatGrouped=Group VAT by rate in tickets -AutoPrintTickets=Automatically print tickets +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? @@ -87,7 +90,19 @@ HeadBar=Head Bar SortProductField=Field for sorting products Browser=Preglednik BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/hr_HR/companies.lang b/htdocs/langs/hr_HR/companies.lang index 691cbe562de..7606871ab5c 100644 --- a/htdocs/langs/hr_HR/companies.lang +++ b/htdocs/langs/hr_HR/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted=Tvrtka "%s" izbrisana iz baze. ListOfContacts=Popis kontakata/adresa ListOfContactsAddresses=Popis kontakata/adresa ListOfThirdParties=Popis trećih osoba -ShowCompany=Show Third Party ShowContact=Prikaži kontakt ContactsAllShort=Sve(bez filtera) ContactType=Vrsta kontakta @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=Ime prodajnog predstavnika SaleRepresentativeLastname=Prezime prodajnog predstavnika ErrorThirdpartiesMerge=Došlo je do greške tijekom brisanja treće osobe. Molim provjerite zapis. Izmjene su povraćene. NewCustomerSupplierCodeProposed=Customer or Vendor code already used, a new code is suggested +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Payment Type - Customer PaymentTermsCustomer=Rok plaćanja - kupac diff --git a/htdocs/langs/hr_HR/compta.lang b/htdocs/langs/hr_HR/compta.lang index 897da7b6b27..ba2536a8dba 100644 --- a/htdocs/langs/hr_HR/compta.lang +++ b/htdocs/langs/hr_HR/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=See %sanalysis of payments%s for a calculation on act SeeReportInDueDebtMode=See %sanalysis of invoices%s for a calculation based on known recorded invoices even if they are not yet accounted in Ledger. SeeReportInBookkeepingMode=See %sBookeeping report%s for a calculation on Bookkeeping Ledger table RulesAmountWithTaxIncluded=Prikazani iznosi su sa uključenim svim porezima -RulesResultDue=- Uključuje neplačene račune, troškove, PDV, donacije bez obzira da li su plaćene ili ne. Također uključuje isplačene plaće.
    - Baziran je na datumu ovjere računa i PDV i po datumu dospjeća troškova. Za plaće definirane sa modulom Plaća, koristi se vrijednost datuma isplate. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- Uključuje stvarne uplate po računima, troškove, PDV i plaće.
    - Baziran je po datumu plaćanja računa, troškova, PDV-a i plaćama. Datum donacje za donacije. -RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the validation date of these invoices.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    RulesCATotalSaleJournal=It includes all credit lines from the Sale journal. RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Turnover invoiced by sale tax rate TurnoverCollectedbyVatrate=Turnover collected by sale tax rate PurchasebyVatrate=Purchase by sale tax rate LabelToShow=Kratka oznaka +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/hr_HR/donations.lang b/htdocs/langs/hr_HR/donations.lang index 134409d1d52..d7c4d18809a 100644 --- a/htdocs/langs/hr_HR/donations.lang +++ b/htdocs/langs/hr_HR/donations.lang @@ -7,7 +7,6 @@ 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=Donacije DonationStatusPromiseNotValidated=Skica obečanja @@ -17,11 +16,12 @@ DonationStatusPromiseNotValidatedShort=Skica DonationStatusPromiseValidatedShort=Ovjereno DonationStatusPaidShort=Primljeno DonationTitle=Račun za donaciju +DonationDate=Donation date DonationDatePayment=Datum plačanja ValidPromess=Ovjeri obečanje DonationReceipt=Račun za donaciju DonationsModels=Modeli dokumenata za račune donacija -LastModifiedDonations=Zadnjih %s promjenjenih donacija +LastModifiedDonations=Zadnje %s promijenjene donacije DonationRecipient=Primatelj donacije IConfirmDonationReception=Primatelj objavljuje primitak, kao donaciju, sljedećeg iznosa MinimumAmount=Minimalni iznos je %s diff --git a/htdocs/langs/hr_HR/errors.lang b/htdocs/langs/hr_HR/errors.lang index 7c474631e5d..d6fc3f95da2 100644 --- a/htdocs/langs/hr_HR/errors.lang +++ b/htdocs/langs/hr_HR/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=File not received completely by server. ErrorNoTmpDir=Temporary directy %s does not exists. ErrorUploadBlockedByAddon=Upload blocked by a PHP/Apache plugin. ErrorFileSizeTooLarge=File size is too large. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Size too long for int type (%s digits maximum) ErrorSizeTooLongForVarcharType=Size too long for string type (%s chars maximum) ErrorNoValueForSelectType=Please fill value for select list @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # 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/hr_HR/install.lang b/htdocs/langs/hr_HR/install.lang index 35ae3c62b90..763892bfb5f 100644 --- a/htdocs/langs/hr_HR/install.lang +++ b/htdocs/langs/hr_HR/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=This PHP supports Curl. PHPSupportCalendar=This PHP supports calendars extensions. PHPSupportUTF8=This PHP supports UTF8 functions. PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=This PHP supports %s functions. PHPMemoryOK=Your PHP max session memory is set to %s. This should be enough. 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. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=Your PHP installation does not support Curl. ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. 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. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. ErrorDirDoesNotExists=Directory %s does not exist. ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=The application tried to self-upgrade, but the in 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. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/hr_HR/link.lang b/htdocs/langs/hr_HR/link.lang index 9e5eb0d2868..ee140b37440 100644 --- a/htdocs/langs/hr_HR/link.lang +++ b/htdocs/langs/hr_HR/link.lang @@ -8,3 +8,4 @@ LinkRemoved=Veza %s je obrisana ErrorFailedToDeleteLink= Neuspješno brisanje veze '%s' ErrorFailedToUpdateLink= Neuspješna promjena veze '%s' URLToLink=URL prema vezi +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/hr_HR/mails.lang b/htdocs/langs/hr_HR/mails.lang index 89ef9388cf4..6595e1154c2 100644 --- a/htdocs/langs/hr_HR/mails.lang +++ b/htdocs/langs/hr_HR/mails.lang @@ -1,20 +1,20 @@ # Dolibarr language file - Source file is en_US - mails -Mailing=EMailing -EMailing=EMailing -EMailings=EMailings -AllEMailings=All eMailings -MailCard=EMailing card -MailRecipients=Recipients +Mailing=elektronička pošta +EMailing=elektronička pošta +EMailings=elektronička pošta +AllEMailings=Sva elektronička pošta +MailCard=Kartica elektroničke pošte +MailRecipients=Primatelji MailRecipient=Primatelj MailTitle=Opis MailFrom=Pošiljatelj -MailErrorsTo=Errors to -MailReply=Reply to -MailTo=Receiver(s) -MailToUsers=To user(s) -MailCC=Copy to -MailToCCUsers=Copy to users(s) -MailCCC=Cached copy to +MailErrorsTo=Pogreške +MailReply=Odgovoriti na +MailTo=Primatelj(i) +MailToUsers=Korisnicima +MailCC=Kopirajte u +MailToCCUsers=Kopirajte korisniku(cima) +MailCCC=Predmemorirana kopija u MailTopic=Email topic MailText=Poruka MailFile=Attached files @@ -164,7 +164,7 @@ NoContactWithCategoryFound=No contact/address with a category found NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found OutGoingEmailSetup=Outgoing email setup InGoingEmailSetup=Incoming email setup -OutGoingEmailSetupForEmailing=Outgoing email setup (for mass emailing) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Default outgoing email setup Information=Podatak ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/hr_HR/main.lang b/htdocs/langs/hr_HR/main.lang index 59aedeecba8..6cdf2638483 100644 --- a/htdocs/langs/hr_HR/main.lang +++ b/htdocs/langs/hr_HR/main.lang @@ -5,7 +5,7 @@ DIRECTION=ltr # stsongstdlight or cid0cs are for simplified Chinese # To read Chinese pdf with Linux: sudo apt-get install poppler-data FONTFORPDF=helvetica -FONTSIZEFORPDF=9 +FONTSIZEFORPDF=10 SeparatorDecimal=, SeparatorThousand=. FormatDateShort=%d/%m/%Y @@ -59,7 +59,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=Značajka %s nije određena u Dolibarr datoteci s postavkama conf.php. +ErrorConfigParameterNotDefined=Značajka %s nije određena u dototeci s postavkama Dolibarra 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. @@ -174,6 +174,7 @@ SaveAndStay=Save and stay SaveAndNew=Save and new TestConnection=Provjera veze ToClone=Kloniraj +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Izaberite podatke koje želite klonirati: NoCloneOptionsSpecified=Podaci za kloniranje nisu izabrani. Of=od @@ -425,6 +426,7 @@ Modules=Moduli/Aplikacije Option=Opcija List=Popis FullList=Cijeli popis +FullConversation=Full conversation Statistics=Statistika OtherStatistics=Ostale statistike Status=Stanje @@ -721,7 +723,7 @@ Notes=Bilješke AddNewLine=Dodaj novu stavku AddFile=Dodaj datoteku FreeZone=Ovaj proizvod/usluga nije predhodno upisan -FreeLineOfType=Slobodan upis, vrsta stavke: +FreeLineOfType=Slobodan upis, vrsta: CloneMainAttributes=Kloniraj predmet sa svim glavnim svojstvima ReGeneratePDF=Re-generate PDF PDFMerge=Spoji PDF @@ -829,6 +831,8 @@ Gender=Spol Genderman=Muško Genderwoman=Žensko ViewList=Pregled popisa +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Obavezno Hello=Pozdrav GoodBye=Doviđenja! @@ -879,7 +883,7 @@ SetMultiCurrencyCode=Odredi valutu BulkActions=Opsežne radnje ClickToShowHelp=Klikni za prikaz pomoći WebSite=Website -WebSites=Web lokacije +WebSites=Mrežne stranice WebSiteAccounts=Website accounts ExpenseReport=Izvještaj troškova ExpenseReports=Izvještaji troškova @@ -950,6 +954,7 @@ SearchIntoMembers=Članovi SearchIntoUsers=Korisnici SearchIntoProductsOrServices=Proizvodi ili usluge SearchIntoProjects=Projekti +SearchIntoMO=Manufacturing Orders SearchIntoTasks=Zadaci SearchIntoCustomerInvoices=Računi za kupce SearchIntoSupplierInvoices=Ulazni računi @@ -995,9 +1000,9 @@ ValidFrom=Valid from ValidUntil=Valid until NoRecordedUsers=No users ToClose=Za zatvaranje -ToProcess=Za obradu +ToProcess=Za provedbu ToApprove=To approve -GlobalOpenedElemView=Global view +GlobalOpenedElemView=Opći pregled NoArticlesFoundForTheKeyword=No article found for the keyword '%s' NoArticlesFoundForTheCategory=No article found for the category ToAcceptRefuse=Za prihvatiti | odbiti @@ -1005,7 +1010,7 @@ ContactDefault_agenda=Događaj ContactDefault_commande=Narudžba kupca ContactDefault_contrat=Ugovor ContactDefault_facture=Račun -ContactDefault_fichinter=Intervencija +ContactDefault_fichinter=Zahvat ContactDefault_invoice_supplier=Supplier Invoice ContactDefault_order_supplier=Purchase Order ContactDefault_project=Projekt @@ -1022,3 +1027,9 @@ SelectYourGraphOptionsFirst=Select your graph options to build a graph Measures=Measures XAxis=X-Axis YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? +ShowOtherLanguages=Show other languages +SwitchInEditModeToAddTranslation=Switch in edit mode to add translations for this language +NotUsedForThisCustomer=Not used for this customer diff --git a/htdocs/langs/hr_HR/modulebuilder.lang b/htdocs/langs/hr_HR/modulebuilder.lang index 00a8c0f9d32..135ac1ae9ec 100644 --- a/htdocs/langs/hr_HR/modulebuilder.lang +++ b/htdocs/langs/hr_HR/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=List of dictionaries entries ListOfPermissionsDefined=List of defined permissions SeeExamples=See examples here EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) -VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update). Using a negative value means field is not shown by default on list but can be selected for viewing). It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty DisplayOnPdf=Display on PDF IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) diff --git a/htdocs/langs/hr_HR/multicurrency.lang b/htdocs/langs/hr_HR/multicurrency.lang new file mode 100644 index 00000000000..d88a98f2a6e --- /dev/null +++ b/htdocs/langs/hr_HR/multicurrency.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Multi currency +ErrorAddRateFail=Error in added rate +ErrorAddCurrencyFail=Error in added currency +ErrorDeleteCurrencyFail=Error delete fail +multicurrency_syncronize_error=Synchronization error: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Use the date of the document to find the currency rate, instead of using the latest known rate +multicurrency_useOriginTx=When an object is created from another, keep the original rate from the source object (otherwise use the latest known rate) +CurrencyLayerAccount=CurrencyLayer API +CurrencyLayerAccount_help_to_synchronize=You must create an account on website %s to use this functionality.
    Get your API key.
    If you use a free account, you can't change the source currency (USD by default).
    If your main currency is not USD, the application will automatically recalculate it.

    You are limited to 1000 synchronizations per month. +multicurrency_appId=API key +multicurrency_appCurrencySource=Source currency +multicurrency_alternateCurrencySource=Alternate source currency +CurrenciesUsed=Currencies used +CurrenciesUsed_help_to_add=Add the different currencies and rates you need to use on your proposals, orders etc. +rate=rate +MulticurrencyReceived=Received, original currency +MulticurrencyRemainderToTake=Preostali iznos, izvorna valuta +MulticurrencyPaymentAmount=Iznos plaćanja, prvotna valuta +AmountToOthercurrency=Amount To (in currency of receiving account) +CurrencyRateSyncSucceed=Currency rate synchronization done successfuly +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Use the currency of the document for online payments diff --git a/htdocs/langs/hr_HR/orders.lang b/htdocs/langs/hr_HR/orders.lang index 55004de52bb..3c704a81c68 100644 --- a/htdocs/langs/hr_HR/orders.lang +++ b/htdocs/langs/hr_HR/orders.lang @@ -141,7 +141,7 @@ OrderByEMail=E-pošta OrderByWWW=Online OrderByPhone=Telefon # Documents models -PDFEinsteinDescription=A complete order model (old implementation of Eratosthene template) +PDFEinsteinDescription=A complete order model PDFEratostheneDescription=A complete order model PDFEdisonDescription=Jednostavan model narudžbe PDFProformaDescription=A complete Proforma invoice template diff --git a/htdocs/langs/hr_HR/other.lang b/htdocs/langs/hr_HR/other.lang index 6b16495c105..eafd337d32b 100644 --- a/htdocs/langs/hr_HR/other.lang +++ b/htdocs/langs/hr_HR/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Sales order validated Notify_ORDER_SENTBYMAIL=Sales order sent by mail Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=URL of page WEBSITE_TITLE=Naslov WEBSITE_DESCRIPTION=Opis WEBSITE_IMAGE=Image -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Keywords LinesToImport=Lines to import diff --git a/htdocs/langs/hr_HR/products.lang b/htdocs/langs/hr_HR/products.lang index 87fa7195895..cea95c3fd23 100644 --- a/htdocs/langs/hr_HR/products.lang +++ b/htdocs/langs/hr_HR/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL MassBarcodeInit=Masovni init barkoda MassBarcodeInitDesc=Ova stranica se može koristiti za inicijalizaciju barkoda na objektima koji nemaju definiran barkod. Provjerite prije da li su postavke barcode modula podešene. ProductAccountancyBuyCode=Accounting code (purchase) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Accounting code (sale) ProductAccountancySellIntraCode=Accounting code (sale intra-Community) ProductAccountancySellExportCode=Accounting code (sale export) @@ -165,7 +167,7 @@ SuppliersPrices=Vendor prices SuppliersPricesOfProductsOrServices=Vendor prices (of products or services) CustomCode=Customs / Commodity / HS code CountryOrigin=Zemlja porijekla -Nature=Nature of produt (material/finished) +Nature=Nature of product (material/finished) ShortLabel=Kratka oznaka Unit=Jedinica p=j. diff --git a/htdocs/langs/hr_HR/projects.lang b/htdocs/langs/hr_HR/projects.lang index 7bff5b50088..66fc8dd3384 100644 --- a/htdocs/langs/hr_HR/projects.lang +++ b/htdocs/langs/hr_HR/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=projekt s kojim sam povezan Time=Vrijeme ListOfTasks=Popis zadataka GoToListOfTimeConsumed=Idi na popis utrošenog vremena -GoToListOfTasks=Prikaži kao popis -GoToGanttView=Prikaži kao gantogram (vremenski plan) GanttView=Gantogram ListProposalsAssociatedProject=Popis komercijalnih prijedloga vezanih za projekt ListOrdersAssociatedProject=Popis narudžbenica vezanih za projekt @@ -188,7 +186,7 @@ PlannedWorkload=Planirano opterećenje PlannedWorkloadShort=Opterećenje ProjectReferers=Povezane stavke ProjectMustBeValidatedFirst=Projekt mora biti prvo ovjeren -FirstAddRessourceToAllocateTime=Dodjeli korisnka u zadatak za alokaciju vremena +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=Unos po danu InputPerWeek=Unos po tjednu InputPerMonth=Input per month @@ -240,6 +238,7 @@ LatestModifiedProjects=Najnoviji %s modificirani projekti OtherFilteredTasks=Ostali filtrirani zadaci NoAssignedTasks=Nisu pronađeni zadani zadaci (dodijelite projekt / zadatke trenutnom korisniku iz gornjeg okvira za odabir da biste unijeli vrijeme u njega) ThirdPartyRequiredToGenerateInvoice=Treća strana mora biti definirana na projektu kako bi mogli fakturirati. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=Dopusti napomene korisnika na zadatke AllowCommentOnProject=Dopusti napomene korisnika na projekte @@ -256,7 +255,7 @@ ServiceToUseOnLines=Usluga za uporabu na linijama InvoiceGeneratedFromTimeSpent=Račun %s generiran je od vremena utrišenog na projektu ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. ProjectFollowOpportunity=Follow opportunity -ProjectFollowTasks=Follow tasks +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Upotreba: Prilika UsageTasks=Upotreba: Zadaci @@ -265,3 +264,4 @@ InvoiceToUse=Draft invoice to use NewInvoice=Novi račun OneLinePerTask=One line per task OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/hr_HR/propal.lang b/htdocs/langs/hr_HR/propal.lang index f9f9edf6dab..ed134477f08 100644 --- a/htdocs/langs/hr_HR/propal.lang +++ b/htdocs/langs/hr_HR/propal.lang @@ -76,7 +76,7 @@ TypeContact_propal_external_BILLING=Kontakt osoba pri kupcu za račun TypeContact_propal_external_CUSTOMER=Kontakt osoba pri kupcu za ponudu TypeContact_propal_external_SHIPPING=Customer contact for delivery # Document models -DocModelAzurDescription=A complete proposal model (old implementation of Cyan template) +DocModelAzurDescription=A complete proposal model DocModelCyanDescription=A complete proposal model DefaultModelPropalCreate=Izrada osnovnog modela DefaultModelPropalToBill=Osnovni predložak prilikom zatvaranja poslovne ponude (za naplatu) diff --git a/htdocs/langs/hr_HR/receiptprinter.lang b/htdocs/langs/hr_HR/receiptprinter.lang index 7c8379f37af..02eea48a645 100644 --- a/htdocs/langs/hr_HR/receiptprinter.lang +++ b/htdocs/langs/hr_HR/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Dummy Printer CONNECTOR_NETWORK_PRINT=Mrežni pisač CONNECTOR_FILE_PRINT=Lokalni pisač CONNECTOR_WINDOWS_PRINT=Lokalni Windows pisač +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Lažni pisač za test, ne radi ništa CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Predefinirani profil PROFILE_SIMPLE=Jednostavan profil PROFILE_EPOSTEP=EPOS TEP profil @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Invoice month in letters DOL_VALUE_MONTH=Invoice month DOL_VALUE_DAY=Invoice day DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Broj računa +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=Kapital +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/hr_HR/stripe.lang b/htdocs/langs/hr_HR/stripe.lang index 1bb6a024d47..1aeada94d38 100644 --- a/htdocs/langs/hr_HR/stripe.lang +++ b/htdocs/langs/hr_HR/stripe.lang @@ -32,6 +32,7 @@ VendorName=Naziv pružatelja CSSUrlForPaymentForm=CSS style sheet url for payment form NewStripePaymentReceived=New Stripe payment received NewStripePaymentFailed=New Stripe payment tried but failed +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Secret test key STRIPE_TEST_PUBLISHABLE_KEY=Publishable test key STRIPE_TEST_WEBHOOK_KEY=Webhook test key @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mo 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... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authenticatin rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/hr_HR/users.lang b/htdocs/langs/hr_HR/users.lang index 4adcbad88a9..cf47e5c7710 100644 --- a/htdocs/langs/hr_HR/users.lang +++ b/htdocs/langs/hr_HR/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Users and their properties DomainUser=Korisnik na domeni %s Reactivate=Reaktiviraj CreateInternalUserDesc=This form allows you to create an internal user in your company/organization. To create an external user (customer, vendor etc. ..), use the button 'Create Dolibarr User' from that third-party's contact card. -InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other.

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=Dozvola odobrena jer je nasljeđeno od jedne od korisničkih grupa. Inherited=Nasljeđeno UserWillBeInternalUser=Kreirani korisnik će biti interni korisnik (jer nije vezan za određenog komitenta) @@ -113,3 +113,5 @@ CantDisableYourself=You can't disable your own user record ForceUserExpenseValidator=Force expense report validator ForceUserHolidayValidator=Force leave request validator ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/hr_HR/website.lang b/htdocs/langs/hr_HR/website.lang index 66882d8ee7f..b93f725b338 100644 --- a/htdocs/langs/hr_HR/website.lang +++ b/htdocs/langs/hr_HR/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=Pogledaj stranicu u novom tabu SetAsHomePage=Postavi kao početnu stranicu RealURL=Pravi URL ViewWebsiteInProduction=Pogledaj web lokaciju koristeći URL naslovnice -SetHereVirtualHost=Use with Apache/NGinx/...
    If you can create, on your web server (Apache, Nginx, ...), a dedicated Virtual Host with PHP enabled and a Root directory on
    %s
    then set the name of the virtual host you have created in the properties of web site, so the preview can be done also using this dedicated web server access instead of the internal Dolibarr server. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS=Use with PHP embedded server
    On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running
    php -S 0.0.0.0:8080 -t %s YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org CheckVirtualHostPerms=Check also that virtual host has permission %s on files into
    %s @@ -56,7 +57,7 @@ NoPageYet=No pages yet YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template SyntaxHelp=Help on specific syntax tips YouCanEditHtmlSourceckeditor=You can edit HTML source code using the "Source" button in editor. -YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Clone page/container CloneSite=Clone site SiteAdded=Website added @@ -76,7 +77,7 @@ BlogPost=Blog post WebsiteAccount=Website account WebsiteAccounts=Website accounts AddWebsiteAccount=Create web site account -BackToListOfThirdParty=Back to list for Third Party +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Disable website first MyContainerTitle=My web site title AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Sorry, this website is currently off line. Please 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 -OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that edits of HTML source will be possible when page content has been initialized by grabbing it from an external page ("Online" editor will NOT be available) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Only edition of HTML source is possible when content was grabbed from an external site GrabImagesInto=Grab also images found into css and page. ImagesShouldBeSavedInto=Images should be saved into directory @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 ch MainLanguage=Main language OtherLanguages=Other languages UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/hr_HR/zapier.lang b/htdocs/langs/hr_HR/zapier.lang new file mode 100644 index 00000000000..6d6eda71313 --- /dev/null +++ b/htdocs/langs/hr_HR/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr module + +# +# Admin page +# +ZapierForDolibarrSetup = Setup of Zapier for Dolibarr diff --git a/htdocs/langs/hu_HU/accountancy.lang b/htdocs/langs/hu_HU/accountancy.lang index b547bf274de..b104ad68c84 100644 --- a/htdocs/langs/hu_HU/accountancy.lang +++ b/htdocs/langs/hu_HU/accountancy.lang @@ -121,6 +121,7 @@ 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 +TotalForAccount=Total for accounting account Ventilate=Bind @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Accounting account to register donations ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (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 products sold in EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported 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_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (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_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unkno ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error PaymentsNotLinkedToProduct=Payment not linked to any product / service +OpeningBalance=Opening balance ShowOpeningBalance=Show opening balance HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Group of account PcgtypeDesc=Group 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. +Reconcilable=Reconcilable + TotalVente=Total turnover before tax TotalMarge=Teljes eladási marzs @@ -307,11 +317,13 @@ 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Chart of accounts Id ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC OptionModeProductSellExport=Mode sales exported in other countries OptionModeProductBuy=Mode purchases +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries 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. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=Remove accounting code from lines that not exists into charts of account CleanHistory=Reset all bindings for selected year PredefinedGroups=Predefined groups @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Account removed from group SaleLocal=Local sale SaleExport=Export sale SaleEEC=Sale in EEC +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=Range of accounting account diff --git a/htdocs/langs/hu_HU/admin.lang b/htdocs/langs/hu_HU/admin.lang index e01ebc06bc2..e564f090666 100644 --- a/htdocs/langs/hu_HU/admin.lang +++ b/htdocs/langs/hu_HU/admin.lang @@ -12,8 +12,8 @@ VersionRecommanded=Ajánlott FileCheck=A fájlkészlet integritásának ellenőrzése FileCheckDesc=Ez az eszköz lehetővé teszi a fájlok integritásának és az alkalmazás beállításainak ellenőrzését, összehasonlítva az egyes fájlokat a hivatalos fájlokkal. Bizonyos beállítási állandók értékét szintén ellenőrizni lehet. Ezzel az eszközzel meghatározhatja, hogy valamelyik fájlt módosították-e (például egy hacker). FileIntegrityIsStrictlyConformedWithReference=A fájlok integritása szigorúan megfelel a referenciának. -FileIntegrityIsOkButFilesWereAdded=A fájlok integritásának ellenőrzése sikeres volt, azonban néhány új fájlt hozzáadtak. -FileIntegritySomeFilesWereRemovedOrModified=A fájlok integritásának ellenőrzése sikertelen. Néhány fájlt módosítottak, eltávolítottak vagy hozzáadtak. +FileIntegrityIsOkButFilesWereAdded=A fájlok integritásának ellenőrzése sikeres volt, azonban néhány új fájl hozzá lett adva. +FileIntegritySomeFilesWereRemovedOrModified=A fájlok integritásának ellenőrzése nem járt sikerrel. Néhány fájl módosítva lett, el lett távolítva vagy hozzá lett adva. GlobalChecksum=Globális ellenőrző összeg MakeIntegrityAnalysisFrom=Alkalmazásfájlok integritásának elemzése LocalSignature=Beágyazott helyi aláírás (kevésbé megbízható) @@ -40,6 +40,7 @@ WebUserGroup=Webszerver felhasználója / csoportja NoSessionFound=Úgy tűnik, hogy a PHP-konfigurációja nem engedélyezi az aktív munkamenetek felsorolását. A munkamenetek mentéséhez használt könyvtár (%s) védett lehet (például operációs rendszer jogosultság vagy open_basedir PHP irányelv). DBStoringCharset=Az adatbázis adattárolási karakterkészlete DBSortingCharset=Az adatbázis adatrendezési karakterkészlete +HostCharset=Host charset ClientCharset=Ügyfél karakterkészlet ClientSortingCharset=Ügyfél karakterkészlet egyeztetés WarningModuleNotActive=A %s modult engedélyezni kell @@ -65,7 +66,7 @@ DictionarySetup=Szótár beállítása Dictionary=Szótárak ErrorReservedTypeSystemSystemAuto=A "system" és a "systemauto" típusértékek foglaltak. Saját bejegyzés hozzáadására használhatja a "user" értéket. ErrorCodeCantContainZero=A kód nem tartalmazhatja a 0 értéket -DisableJavascript=Disable JavaScript és Ajax funkciókkal +DisableJavascript=JavaScript és Ajax funkciók letiltása DisableJavascriptNote=Megjegyzés: teszt vagy hibakeresés céljából. A vak vagy szöveges böngészők optimalizálásához lehetséges, hogy a felhasználói profilban érdemes beállítani UseSearchToSelectCompanyTooltip=Ha nagyszámú partnerrel rendelkezik (> 100 000), akkor növelheti a sebességet, ha a COMPANY_DONOTSEARCH_ANYWHERE értéket 1-re állítja a Beállítás-> Egyéb menüben. A keresés ezután a karakterlánc elejére korlátozódik. UseSearchToSelectContactTooltip=Ha nagyszámú harmadik fél van (> 100 000), akkor növelheti a sebességet, ha a CONTACT_DONOTSEARCH_ANYWHERE állandó értéket 1-re állítja a Beállítás-> Egyéb menüben. A keresés ezután a karakterlánc elejére korlátozódik. @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Megjegyzés: az Ön PHP konfigurációjában j NoMaxSizeByPHPLimit=Megjegyzés: A PHP konfigurációban nincs beállítva korlátozás MaxSizeForUploadedFiles=A feltöltött fájlok maximális mérete (0 megtiltja a feltöltést) UseCaptchaCode=Grafikus kód (CAPTCHA) használata a bejelentkezési oldalon -AntiVirusCommand= A vírusirtó parancs teljes elérési útvonala -AntiVirusCommandExample= Példa ClamWin esetére: c:\\Progra~1\\ClamWin\\bin\\clamscan.exe
    Példa ClamAV esetére: /usr/bin/clamscan +AntiVirusCommand=A vírusirtó parancs teljes elérési útvonala +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= A parancssor további paraméterei -AntiVirusParamExample= Példa ClamWin esetére: -database="C:\\Program Files (x86)\\ClamWin\\lib" +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=Számviteli modul beállítása UserSetup=Felhasználói beállítások kezelése MultiCurrencySetup=Több valuta beállítása @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Demó módban kikapcsolva FeatureAvailableOnlyOnStable=A szolgáltatás csak a hivatalos stabil verziókban érhető el BoxesDesc=A modulok olyan összetevők, amelyek információkat mutatnak, s hozzáadhatóak az oldalak testreszabásához. Választhat úgy, hogy megjelenik-e a modul, vagy nem, ha kiválasztja a céloldalt és kattint az 'Aktiválás' gombra, vagy a kukára kattintva tilthatja le azt. OnlyActiveElementsAreShown=Csak a bekapcsolt modulok elemei jelennek meg. -ModulesDesc=A modulok / alkalmazások határozzák meg, hogy mely szolgáltatások érhetők el a szoftverben. Néhány modulhoz engedély szükséges a felhasználók számára a modul aktiválása után. Kattintson a be / ki gombra (a modul sor végén) a modul / alkalmazás engedélyezéséhez / letiltásához. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. ModulesMarketPlaceDesc=Az interneten további modulokat találhat... ModulesDeployDesc=Ha a fájlrendszer engedélyei ezt lehetővé teszik, akkor ezt az eszközt használhatja egy külső modul telepítéséhez. A modul ezután a %s fülön lesz látható. ModulesMarketPlaces=Külső alkalmazások / modulok keresése @@ -212,6 +213,7 @@ CompatibleUpTo=Kompatibilis a(z) %s verzióval NotCompatible=Ez a modul nem tűnik kompatibilisnek a Dolibarr %s verzióval (Min %s - Max %s). CompatibleAfterUpdate=Ehhez a modulhoz frissíteni kell a Dolibarr %s-t (Min %s - Max %s). SeeInMarkerPlace=Lásd a piactéren +SeeSetupOfModule=Lásd a %s modul beállításait Updated=Frissítve Nouveauté=Újdonság AchatTelechargement=Vásárlás / Letöltés @@ -221,6 +223,7 @@ DoliPartnersDesc=Az egyedi fejlesztésű modulokat vagy funkciókat kínáló c WebSiteDesc=Külső webhelyek további kiegészítő (nem alapvető) modulokhoz ... DevelopYourModuleDesc=Néhány javaslat a saját modul fejlesztésére ... URL=URL elérési út +RelativeURL=Relative URL BoxesAvailable=Elérhető widgetek BoxesActivated=Aktivált widgetek ActivateOn=Aktiválás @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Jelölőnégyzeteket ExtrafieldCheckBoxFromList=Jelölőnégyzetek a táblából ExtrafieldLink=Link egy objektumhoz ComputedFormula=Számított mező -ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Számított mező mentése ComputedpersistentDesc=A kiszámított extra mezőket az adatbázis tárolja, azonban az érték csak akkor kerül újraszámításra, ha a mező objektuma megváltozik. Ha a kiszámított mező más objektumoktól vagy globális adatoktól függ, akkor ez az érték rossz lehet! ExtrafieldParamHelpPassword=Ha ezt a mezőt üresen hagyja, akkor ez az érték titkosítás nélkül lesz tárolva (a mezőt csak a csillaggal lehet elrejteni a képernyőn).
    Állítsa be az „auto” értéket az alapértelmezett titkosítási szabály használatával a jelszó adatbázisba mentéséhez (akkor az olvasott érték csak hash kód lesz, az eredeti érték nem olvasható) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Az alapérték használatához hagyja üresen DefaultLink=Alapértelmezett hivatkozás SetAsDefault=Beállítás alapértelmezettként ValueOverwrittenByUserSetup=Figyelem, ezt az értéket a felhasználó-specifikus beállítás felülírhatja (minden felhasználó beállíthatja saját clicktodial URL-jét) -ExternalModule=Külső modul - Telepítve a(z) %s könyvtárba +ExternalModule=External module +InstalledInto=Installed into directory %s BarcodeInitForthird-parties=Tömeges vonalkód készítése partnereknek BarcodeInitForProductsOrServices=A termékek vagy szolgáltatások tömeges vonalkód-indítása vagy visszaállítása CurrentlyNWithoutBarCode=Currently, you have %s record on %s %s without barcode defined. @@ -947,7 +951,7 @@ DictionaryCanton=Államok / Tartományok DictionaryRegion=Régiók DictionaryCountry=Országok DictionaryCurrency=Pénznemek -DictionaryCivility=Udvarias megszólítás +DictionaryCivility=Honorific titles DictionaryActions=Types of agenda events DictionarySocialContributions=Types of social or fiscal taxes DictionaryVAT=HÉA-kulcsok vagy Értékesítés adókulcsok @@ -988,6 +992,7 @@ VATIsNotUsedDesc=By default the proposed Sales tax is 0 which can be used for ca VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=Arány LocalTax1IsNotUsed=Do not use second tax LocalTax1IsUsedDesc=Use a second type of tax (other than first one) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices LocalTax2IsNotUsedDescES=Alapértelmezésben a javasolt IRPF 0. Vége a szabály. LocalTax2IsUsedExampleES=Spanyolországban, szabadúszók és független szakemberek, akik szolgáltatásokat nyújtanak és a vállalatok akik úgy döntöttek, az adórendszer a modulok. LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=Reports on local taxes CalcLocaltax1=Sales - Purchases CalcLocaltax1Desc=Local Taxes reports are calculated with the difference between localtaxes sales and localtaxes purchases @@ -1018,6 +1026,7 @@ CalcLocaltax2=Beszerzések CalcLocaltax2Desc=Local Taxes reports are the total of localtaxes purchases CalcLocaltax3=Eladások CalcLocaltax3Desc=Local Taxes reports are the total of localtaxes sales +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=Label az alap, ha nincs fordítás megtalálható a kód LabelOnDocuments=Címke dokumentumok LabelOrTranslationKey=Címke vagy fordítási kulcs @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Expense report to approve Delays_MAIN_DELAY_HOLIDAYS=Leave requests 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. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. SetupDescription5=Az "Egyéb beállítás" menü az opcionális paramétereket tartalmazza. LogEvents=Biztonsági audit események Audit=Könyvvizsgálat @@ -1128,7 +1137,7 @@ LogEventDesc=Enable logging for specific security events. Administrators the log AreaForAdminOnly=Setup parameters can be set by administrator users only. SystemInfoDesc=Rendszer információk különféle műszaki információkat kapunk a csak olvasható módban, és csak rendszergazdák számára látható. SystemAreaForAdminOnly=This area is available to administrator users only. Dolibarr user permissions cannot change this restriction. -CompanyFundationDesc=Edit the information of the company/entity. Click on "%s" button at the bottom of the page. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. AccountantDesc=Ha van külső könyvelője / könyvvizsgálója, itt szerkesztheti annak adatait. AccountantFileNumber=Könyvelői kód DisplayDesc=A Dolibarr kinézetét és viselkedését befolyásoló paraméterek itt módosíthatók. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=A jelszavak létrehozására és érvényesítésére DisableForgetPasswordLinkOnLogonPage=Ne jelenítse meg az "Elfelejtett jelszó" linket a Bejelentkezés oldalon UsersSetup=Felhasználók modul beállítása UserMailRequired=Új felhasználó létrehozásához e-mail szükséges +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### HRMSetup=HRM modul beállításai ##### Company setup ##### @@ -1282,10 +1294,10 @@ CompanyIdProfChecker=Rules for Professional IDs MustBeUnique=Egyedinek kell lennie? MustBeMandatory=Mandatory to create third parties (if VAT number or type of company defined) ? MustBeInvoiceMandatory=Mandatory to validate invoices? -TechnicalServicesProvided=Technical services provided +TechnicalServicesProvided=Technikai szolgáltatások #####DAV ##### WebDAVSetupDesc=This is the link to access the WebDAV directory. It contains a "public" dir open to any user knowing the URL (if public directory access allowed) and a "private" directory that needs an existing login account/password for access. -WebDavServer=Root URL of %s server: %s +WebDavServer=A(z) %s szerver gyökér URL-je: %s ##### Webcal setup ##### WebCalUrlForVCalExport=Az export linket %s formátumban elérhető a következő linkre: %s ##### Invoices ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Számla dokumentumok modellek BillsPDFModulesAccordindToInvoiceType=Invoice documents models according to invoice type PaymentsPDFModules=Payment documents models ForceInvoiceDate=Kényszer számla keltétől annak érvényességét -SuggestedPaymentModesIfNotDefinedInInvoice=Javasolt fizetési mód a számlát az alap, ha nincs meg a számla +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice SuggestPaymentByRIBOnAccount=Suggest payment by withdrawal on account SuggestPaymentByChequeToAddress=Suggest payment by check to FreeLegalTextOnInvoices=Szabad szöveg a számlán @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Vendor payments setup PropalSetup=A kereskedelmi modul beállítási javaslatok ProposalsNumberingModules=Üzleti ajánlat számozási modulok ProposalsPDFModules=Üzleti ajánlat dokumentumok modellek -SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined for proposal +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal FreeLegalTextOnProposal=Szabad szöveg a kereskedelmi javaslatok WatermarkOnDraftProposal=Watermark on draft commercial proposals (none if empty) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal @@ -1322,6 +1334,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 ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=Sales Orders management setup OrdersNumberingModules=Megrendelés számozási modulok OrdersModelModule=Rendelés dokumentumok modellek @@ -1417,69 +1430,69 @@ LDAPTestSynchroMemberType=Test member type synchronization LDAPTestSearch= Test a LDAP search LDAPSynchroOK=A szinkronizálás sikeres teszt LDAPSynchroKO=Nem sikerült a szinkronizálás teszt -LDAPSynchroKOMayBePermissions=Failed synchronization test. Check that the connection to the server is correctly configured and allows LDAP updates +LDAPSynchroKOMayBePermissions=Nem sikerült a szinkronizálási teszt. Ellenőrizze, hogy a szerverrel való kapcsolat megfelelően van-e konfigurálva, és lehetővé teszi-e az LDAP frissítéseket LDAPTCPConnectOK=TCP csatlakozni az LDAP szerver sikeres (= %s Server, Port = %s) LDAPTCPConnectKO=TCP csatlakozni az LDAP kiszolgáló nem (Server = %s, Port = %s) -LDAPBindOK=Connect/Authenticate to LDAP server successful (Server=%s, Port=%s, Admin=%s, Password=%s) -LDAPBindKO=Connect/Authenticate to LDAP server failed (Server=%s, Port=%s, Admin=%s, Password=%s) +LDAPBindOK=Csatlakozás/hitelesítés az LDAP szerverhez sikeres (Szerver = %s, Port = %s, Rendszergazda = %s, Jelszó = %s) +LDAPBindKO=Csatlakozás/hitelesítés az LDAP szerverhez sikertelen (Szerver = %s, Port = %s, Rendszergazda = %s, Jelszó = %s) LDAPSetupForVersion3=LDAP-kiszolgáló konfigurálva a 3-as verzió LDAPSetupForVersion2=LDAP-kiszolgáló konfigurálva a 2-es verziója LDAPDolibarrMapping=Dolibarr Mapping LDAPLdapMapping=LDAP Mapping LDAPFieldLoginUnix=Bejelentkezés (unix) -LDAPFieldLoginExample=Example: uid +LDAPFieldLoginExample=Példa: uid LDAPFilterConnection=Keresés szűrő -LDAPFilterConnectionExample=Example: &(objectClass=inetOrgPerson) +LDAPFilterConnectionExample=Példa: &(objectClass=inetOrgPerson) LDAPFieldLoginSamba=Bejelentkezés (samba, ActiveDirectoryba) -LDAPFieldLoginSambaExample=Example: samaccountname +LDAPFieldLoginSambaExample=Példa: samaccountname LDAPFieldFullname=Keresztnév -LDAPFieldFullnameExample=Example: cn -LDAPFieldPasswordNotCrypted=Password not encrypted -LDAPFieldPasswordCrypted=Password encrypted -LDAPFieldPasswordExample=Example: userPassword -LDAPFieldCommonNameExample=Example: cn +LDAPFieldFullnameExample=Példa: cn +LDAPFieldPasswordNotCrypted=A jelszó nincs titkosítva +LDAPFieldPasswordCrypted=A jelszó titkosítva +LDAPFieldPasswordExample=Példa: userPassword +LDAPFieldCommonNameExample=Példa: cn LDAPFieldName=Név -LDAPFieldNameExample=Example: sn +LDAPFieldNameExample=Példa: sn LDAPFieldFirstName=Keresztnév -LDAPFieldFirstNameExample=Example: givenName +LDAPFieldFirstNameExample=Példa: keresztnév LDAPFieldMail=E-mail cím -LDAPFieldMailExample=Example: mail +LDAPFieldMailExample=Példa: mail LDAPFieldPhone=Szakmai telefonszám -LDAPFieldPhoneExample=Example: telephonenumber +LDAPFieldPhoneExample=Példa: telefonszám LDAPFieldHomePhone=Személyes telefonszám -LDAPFieldHomePhoneExample=Example: homephone +LDAPFieldHomePhoneExample=Példa: otthonitelefon LDAPFieldMobile=Mobiltelefon -LDAPFieldMobileExample=Example: mobile +LDAPFieldMobileExample=Példa: mobil LDAPFieldFax=Faxszám -LDAPFieldFaxExample=Example: facsimiletelephonenumber +LDAPFieldFaxExample=Példa: telefaxtelefonszám LDAPFieldAddress=Utca -LDAPFieldAddressExample=Example: street +LDAPFieldAddressExample=Példa: utca LDAPFieldZip=Zip -LDAPFieldZipExample=Example: postalcode +LDAPFieldZipExample=Példa: irányítószám LDAPFieldTown=Város LDAPFieldTownExample=Example: l LDAPFieldCountry=Ország LDAPFieldDescription=Leírás -LDAPFieldDescriptionExample=Example: description -LDAPFieldNotePublic=Public Note -LDAPFieldNotePublicExample=Example: publicnote +LDAPFieldDescriptionExample=Példa: leírás +LDAPFieldNotePublic=Nyilvános jegyzet +LDAPFieldNotePublicExample=Példa: nyilvánosjegyzet LDAPFieldGroupMembers= A csoport tagjai LDAPFieldGroupMembersExample= Example: uniqueMember LDAPFieldBirthdate=Születésének LDAPFieldCompany=Vállalat -LDAPFieldCompanyExample=Example: o +LDAPFieldCompanyExample=Példa: o LDAPFieldSid=SID -LDAPFieldSidExample=Example: objectsid +LDAPFieldSidExample=Példa: objectsid LDAPFieldEndLastSubscription=Születési előfizetés vége LDAPFieldTitle=Állás pozíció -LDAPFieldTitleExample=Example: title -LDAPFieldGroupid=Group id -LDAPFieldGroupidExample=Exemple : gidnumber -LDAPFieldUserid=User id -LDAPFieldUseridExample=Exemple : uidnumber -LDAPFieldHomedirectory=Home directory -LDAPFieldHomedirectoryExample=Exemple : homedirectory -LDAPFieldHomedirectoryprefix=Home directory prefix +LDAPFieldTitleExample=Példa: cím +LDAPFieldGroupid=Csoportazonosító +LDAPFieldGroupidExample=Példa: gidnumber +LDAPFieldUserid=Felhasználói azonosító +LDAPFieldUseridExample=Példa: uidnumber +LDAPFieldHomedirectory=Kezdő könyvtár +LDAPFieldHomedirectoryExample=Példa: homedirectory +LDAPFieldHomedirectoryprefix=Kezdő könyvtár előtag LDAPSetupNotComplete=LDAP telepítés nem teljes (go másokra fül) LDAPNoUserOrPasswordProvidedAccessIsReadOnly=Nem rendszergazdai jelszót vagy biztosított. LDAP hozzáférés lesz, névtelen és csak olvasható módba. LDAPDescContact=Ez az oldal lehetővé teszi, hogy meghatározza az LDAP attribútumok név LDAP fa minden egyes adat található Dolibarr kapcsolatok. @@ -1489,40 +1502,40 @@ LDAPDescMembers=Ez az oldal lehetővé teszi, hogy meghatározza az LDAP attrib LDAPDescMembersTypes=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr members types. LDAPDescValues=Példaértékek tervezték OpenLDAP az alábbi betöltött sémák: core.schema, cosine.schema, inetorgperson.schema). Ha a thoose értékek és az OpenLDAP, módosíthatja az LDAP konfigurációs file slapd.conf hogy minden thoose sémák betöltve. ForANonAnonymousAccess=A hitelesített hozzáférés (egy írási például) -PerfDolibarr=Performance setup/optimizing report -YouMayFindPerfAdviceHere=This page provides some checks or advice related to performance. -NotInstalled=Not installed, so your server is not slowed down by this. -ApplicativeCache=Applicative cache -MemcachedNotAvailable=No applicative cache found. You can enhance performance by installing a cache server Memcached and a module able to use this cache server.
    More information here http://wiki.dolibarr.org/index.php/Module_MemCached_EN.
    Note that a lot of web hosting provider does not provide such cache server. -MemcachedModuleAvailableButNotSetup=Module memcached for applicative cache found but setup of module is not complete. -MemcachedAvailableAndSetup=Module memcached dedicated to use memcached server is enabled. -OPCodeCache=OPCode cache -NoOPCodeCacheFound=No OPCode cache found. Maybe you are using an OPCode cache other than XCache or eAccelerator (good), or maybe you don't have OPCode cache (very bad). +PerfDolibarr=Teljesítménybeállítás/optimalizálás jelentés +YouMayFindPerfAdviceHere=Ezen az oldalon található néhány ellenőrzés vagy tanácsadás a teljesítményhez kapcsolódóan. +NotInstalled=Nincs telepítve, így a szervert ez nem lassítja le. +ApplicativeCache=Alkalmazható gyorsítótár +MemcachedNotAvailable=Nem található alkalmazható gyorsítótár. A teljesítmény javításához telepítheti a Memcached gyorsítótár-kiszolgálót és egy modult, amely képes használni ezt a gyorsítótár-kiszolgálót.
    További információ itt http://wiki.dolibarr.org/index.php/Module_MemCached_EN .
    Vegye figyelembe, hogy sok webtárhely-szolgáltató nem nyújt ilyen gyorsítótár-kiszolgálót. +MemcachedModuleAvailableButNotSetup=Található memcached modul a gyorsítótár-kiszolgálóhoz, de a modul telepítése még nem fejeződött be. +MemcachedAvailableAndSetup=A memcached szerver használatához a memcached modul engedélyezve van. +OPCodeCache=OPCode gyorsítótár +NoOPCodeCacheFound=Nem található az OPCode gyorsítótár. Lehet, hogy egy másik OPCode gyorsítótárat használ, mint például az XCache-t vagy az eAccelerator-t (jó), vagy lehet, hogy nincs OPCode-gyorsítótár (nagyon rossz). HTTPCacheStaticResources=Statikus erőforrások (css, img, javascript) HTTP gyorsítótára FilesOfTypeCached=A HTTP szerver a %s típusú fájlok esetében használja a gyorsítótárat. FilesOfTypeNotCached=A HTTP szerver a %s típusú fájlok esetében nem használja a gyorsítótárat. FilesOfTypeCompressed=A HTTP szerver a %s típusú fájlokat tömöríti. FilesOfTypeNotCompressed=A HTTP szerver a %s típusú fájlokat nem tömöríti. -CacheByServer=Cache by server -CacheByServerDesc=For example using the Apache directive "ExpiresByType image/gif A2592000" +CacheByServer=Gyorsítótár kiszolgálónként +CacheByServerDesc=Például az "ExpiresByType image/gif A2592000" Apache irányelv használatával CacheByClient=Cache by browser CompressionOfResources=HTTP válaszok tömörítése -CompressionOfResourcesDesc=For example using the Apache directive "AddOutputFilterByType DEFLATE" -TestNotPossibleWithCurrentBrowsers=Such an automatic detection is not possible with current browsers -DefaultValuesDesc=Here you may define the default value you wish to use when creating a new record, and/or default filters or the sort order when you list records. -DefaultCreateForm=Default values (to use on forms) -DefaultSearchFilters=Default search filters -DefaultSortOrder=Default sort orders +CompressionOfResourcesDesc=Például az "AddOutputFilterByType DEFLATE" Apache irányelv használatával +TestNotPossibleWithCurrentBrowsers=A jelenlegi böngészőknél nem lehetséges ilyen automatikus észlelés +DefaultValuesDesc=Meghatározhatja azt az alapértelmezett értéket, amelyet új rekord létrehozásakor használni kíván, és/vagy az alapértelmezett szűrőket, vagy a rendezési sorrendet a rekordok listázásakor. +DefaultCreateForm=Alapértelmezett értékek (űrlapok használatához) +DefaultSearchFilters=Alapértelmezett keresési szűrők +DefaultSortOrder=Alapértelmezett rendezési sorrendek DefaultFocus=Default focus fields -DefaultMandatory=Mandatory form fields +DefaultMandatory=Kötelező űrlapmezők ##### Products ##### ProductSetup=Termékek modul beállítása ServiceSetup=Szolgáltatások modul beállítása ProductServiceSetup=Termékek és szolgáltatások modulok beállítása -NumberOfProductShowInSelect=Maximum number of products to show in combo select lists (0=no limit) +NumberOfProductShowInSelect=A kombinált kiválasztási listákban megjelenítendő termékek maximális száma (0 = nincs korlátozás) ViewProductDescInFormAbility=Display product descriptions in forms (otherwise shown in a tooltip popup) MergePropalProductCard=Activate in product/service Attached Files tab an option to merge product PDF document to proposal PDF azur if product/service is in the proposal -ViewProductDescInThirdpartyLanguageAbility=Display products descriptions in the language of the third party +ViewProductDescInThirdpartyLanguageAbility=A termékleírások megjelenítése a partner nyelvén 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=Alapértelmezett típusú vonalkód használatát termékek @@ -1720,7 +1733,7 @@ MultiCompanySetup=Több cég setup modul ##### Suppliers ##### SuppliersSetup=Vendor module setup SuppliersCommandModel=Complete template of Purchase Order -SuppliersCommandModelMuscadet=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) SuppliersInvoiceModel=Complete template of Vendor Invoice SuppliersInvoiceNumberingModel=Vendor invoices numbering models IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Hide images in Top menu LeftMenuBackgroundColor=Background color for Left menu BackgroundTableTitleColor=Background color for Table title line BackgroundTableTitleTextColor=Text color for Table title line +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Background color for odd table lines BackgroundTableLineEvenColor=Background color for even table lines MinimumNoticePeriod=Minimum notice period (Your leave request must be done before this delay) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Dolibarr Reference not found in Message ID FormatZip=Zip MainMenuCode=Menu entry code (mainmenu) ECMAutoTree=Show automatic ECM tree -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. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Opening hours OpeningHoursDesc=Enter here the regular opening hours of your company. ResourceSetup=Configuration of Resource module @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramatical ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export +ImportSetup=Setup of module Import InstanceUniqueID=Unique ID of the instance SmallerThan=Smaller than LargerThan=Larger than @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled EmailTemplate=Template for email EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/hu_HU/bills.lang b/htdocs/langs/hu_HU/bills.lang index ab8c59769af..18f7c42c99c 100644 --- a/htdocs/langs/hu_HU/bills.lang +++ b/htdocs/langs/hu_HU/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Vendors invoices SupplierBill=Vendor invoice SupplierBills=beszállítók számlái Payment=Fizetés -PaymentBack=vissza fizetési -CustomerInvoicePaymentBack=vissza fizetési +PaymentBack=Visszatérítés +CustomerInvoicePaymentBack=Visszatérítés Payments=Kifizetések PaymentsBack=Refunds paymentInInvoiceCurrency=in invoices currency PaidBack=Visszafizetések DeletePayment=Fizetés törlése ConfirmDeletePayment=Are you sure you want to delete this payment? -ConfirmConvertToReduc=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. -ConfirmConvertToReducSupplier=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. SupplierPayments=Vendor payments ReceivedPayments=Fogadott befizetések @@ -209,17 +209,13 @@ NumberOfBillsByMonth=No. of invoices per month AmountOfBills=Számlák összege AmountOfBillsHT=Amount of invoices (net of tax) AmountOfBillsByMonthHT=Összege a számlák havonta (adózott) -ShowSocialContribution=Mutasd a szociális adót -ShowBill=Számla megjelenítése -ShowInvoice=Számla megjelenítése -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 +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=To pay on %s toPayOn=to pay on %s RetainedWarranty=Retained Warranty @@ -230,7 +226,6 @@ 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 AlreadyPaidNoCreditNotesNoDeposits=Already paid (without credit notes and down payments) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Generated from template invoice %s WarningInvoiceDateInFuture=Warning, the invoice date is higher than current date WarningInvoiceDateTooFarInFuture=Warning, the invoice date is too far from current date ViewAvailableGlobalDiscounts=View available discounts +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Státusz PaymentConditionShortRECEP=Due Upon Receipt @@ -509,7 +505,7 @@ ToMakePayment=Kifizetés ToMakePaymentBack=Visszafizetés ListOfYourUnpaidInvoices=Nyitott számlák listája NoteListOfYourUnpaidInvoices=Note: This list contains only invoices for third parties you are linked to as a sale representative. -RevenueStamp=Illetékbélyeg +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party YouMustCreateStandardInvoiceFirstDesc=You have to create a standard invoice first and convert it to "template" to create a new template invoice @@ -575,3 +571,4 @@ AutoFillDateTo=Set end date for service line with next invoice date AutoFillDateToShort=Set end date MaxNumberOfGenerationReached=Max number of gen. reached BILL_DELETEInDolibarr=Invoice deleted +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/hu_HU/blockedlog.lang b/htdocs/langs/hu_HU/blockedlog.lang index 28194fd21de..8a37fe90724 100644 --- a/htdocs/langs/hu_HU/blockedlog.lang +++ b/htdocs/langs/hu_HU/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Unalterable logs ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) DownloadBlockChain=Download fingerprints -KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this re after it was recorded, or has erased the previous archived record (check that line with previous # exists). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. AddedByAuthority=Stored into remote authority diff --git a/htdocs/langs/hu_HU/cashdesk.lang b/htdocs/langs/hu_HU/cashdesk.lang index d2c1b57f40b..c7ca149736d 100644 --- a/htdocs/langs/hu_HU/cashdesk.lang +++ b/htdocs/langs/hu_HU/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Add hozzá ezt a cikket RestartSelling=Menj vissza eladni SellFinished=Értékesítés befejezte PrintTicket=Nyomtatás jegy +SendTicket=Send ticket NoProductFound=Nem találtam cikket ProductFound=termék található NoArticle=Nincs cikk @@ -48,6 +49,7 @@ Footer=Footer AmountAtEndOfPeriod=Amount at end of period (day, month or year) TheoricalAmount=Theorical amount RealAmount=Real amount +CashFence=Cash fence CashFenceDone=Cash fence done for the period NbOfInvoices=Számlák száma Paymentnumpad=Type of Pad to enter payment @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS needs product categories to work OrderNotes=Order Notes CashDeskBankAccountFor=Default account to use for payments in NoPaimementModesDefined=No paiment mode defined in TakePOS configuration -TicketVatGrouped=Group VAT by rate in tickets -AutoPrintTickets=Automatically print tickets +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? @@ -87,7 +90,19 @@ HeadBar=Head Bar SortProductField=Field for sorting products Browser=Böngésző BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/hu_HU/companies.lang b/htdocs/langs/hu_HU/companies.lang index 32b0b049214..26f3995ee4c 100644 --- a/htdocs/langs/hu_HU/companies.lang +++ b/htdocs/langs/hu_HU/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted="%s" cég törölve az adatbázisból. ListOfContacts=Névjegyek / címek ListOfContactsAddresses=Névjegyek / címek ListOfThirdParties=Partnerek listája -ShowCompany=Mutasd a partnereket ShowContact=Kapcsolat mutatása ContactsAllShort=Minden (nincs szűrő) ContactType=Kapcsolat típusa @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=Az értékesítési képviselő vezetékneve SaleRepresentativeLastname=Az értékesítési képviselő vezetékneve ErrorThirdpartiesMerge=Hiba történt a partner(ek) törlésekor. Kérjük, ellenőrizze a naplót. A változtatások visszavonva. NewCustomerSupplierCodeProposed=A vevő vagy az eladó kódja már használatban van, egy új kód javasolt +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Fizetés típusa - Ügyfél PaymentTermsCustomer=Fizetési feltételek - Ügyfél diff --git a/htdocs/langs/hu_HU/compta.lang b/htdocs/langs/hu_HU/compta.lang index 8a8efc62c29..1843b1372a1 100644 --- a/htdocs/langs/hu_HU/compta.lang +++ b/htdocs/langs/hu_HU/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=See %sanalysis of payments%s for a calculation on act SeeReportInDueDebtMode=See %sanalysis of invoices%s for a calculation based on known recorded invoices even if they are not yet accounted in Ledger. SeeReportInBookkeepingMode=See %sBookeeping report%s for a calculation on Bookkeeping Ledger table RulesAmountWithTaxIncluded=- Amounts shown are with all taxes included -RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the validation date of invoices and VAT and on the due date for expenses. For salaries defined with Salary module, the value date of payment is used. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- It includes the real payments made on invoices, expenses, VAT and salaries.
    - It is based on the payment dates of the invoices, expenses, VAT and salaries. The donation date for donation. -RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the validation date of these invoices.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    RulesCATotalSaleJournal=It includes all credit lines from the Sale journal. RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Turnover invoiced by sale tax rate TurnoverCollectedbyVatrate=Turnover collected by sale tax rate PurchasebyVatrate=Purchase by sale tax rate LabelToShow=Rövid címke +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/hu_HU/donations.lang b/htdocs/langs/hu_HU/donations.lang index 84aac702dfd..a1673755055 100644 --- a/htdocs/langs/hu_HU/donations.lang +++ b/htdocs/langs/hu_HU/donations.lang @@ -7,7 +7,6 @@ AddDonation=Create a donation NewDonation=Új adomány DeleteADonation=Delete a donation ConfirmDeleteADonation=Are you sure you want to delete this donation? -ShowDonation=Show donation PublicDonation=Publikus adomány DonationsArea=Adomány terület DonationStatusPromiseNotValidated=Igéret vázlat @@ -17,6 +16,7 @@ DonationStatusPromiseNotValidatedShort=Vázlat DonationStatusPromiseValidatedShort=Hitelesített DonationStatusPaidShort=Kapott DonationTitle=Donation receipt +DonationDate=Donation date DonationDatePayment=Fizetési határidő ValidPromess=Érvényesítés ígéret DonationReceipt=Donation receipt diff --git a/htdocs/langs/hu_HU/errors.lang b/htdocs/langs/hu_HU/errors.lang index 281f32104ac..f6bd16ca771 100644 --- a/htdocs/langs/hu_HU/errors.lang +++ b/htdocs/langs/hu_HU/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=A fájlt nem sikerült teljesen feltölteni. ErrorNoTmpDir=A %s ideiglenes könyvtár nem létezik. ErrorUploadBlockedByAddon=A feltöltést akadályozza valamilyen PHP / Apache plugin. ErrorFileSizeTooLarge=A fájl mérete túl nagy. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Túl nagy szám az int típushoz (maximum %s számjegy) ErrorSizeTooLongForVarcharType=Túl hosszú szöveg a string típushoz (%s karakter maximum) ErrorNoValueForSelectType=Please fill value for select list @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # 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/hu_HU/install.lang b/htdocs/langs/hu_HU/install.lang index da1615f437a..c9b3e5ee4e5 100644 --- a/htdocs/langs/hu_HU/install.lang +++ b/htdocs/langs/hu_HU/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=Ez a PHP támogatja a Curl-t. PHPSupportCalendar=Ez a PHP támogatja a naptár-kiterjesztéseket. PHPSupportUTF8=Ez a PHP támogatja az UTF8 funkciókat. PHPSupportIntl=Ez a PHP támogatja a többnyelvű funkciókat. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=Ez a PHP támogatja a(z) %s funkciókat. PHPMemoryOK=A munkamenetek maximális memóriája %s. Ennek elégnek kéne lennie. PHPMemoryTooLow=A PHP munkamenetmemóriája %s bájt maximumra van beállítva. Ez túl alacsony. Változtassa meg a php.ini fájlban a memory_limit paraméter értékét legalább %s bájtra. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=A PHP telepítése nem támogatja a Curl-t. ErrorPHPDoesNotSupportCalendar=A telepített PHP nem támogatja a php naptárkiterjesztéseket. ErrorPHPDoesNotSupportUTF8=A telepített PHP nem támogatja az UTF8 funkciókat. A Dolibarr nem működik megfelelően. A Dolibarr telepítése előtt oldja meg ezt. ErrorPHPDoesNotSupportIntl=A telepített PHP nem támogatja a többnyelvű funkciókat. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=A telepített PHP nem támogatja a(z) %s funkciókat. ErrorDirDoesNotExists=%s könyvtár nem létezik. ErrorGoBackAndCorrectParameters=Menjen vissza és ellenőrizze / javítsa ki a paramétereket. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=Az alkalmazás megpróbált frissítést végreha YouTryInstallDisabledByFileLock=Az alkalmazás megpróbált frissítést végrehajtani, de a biztonságot szem előtt tartva letiltottuk a telepítési / frissítési oldalakat (az install.lock zárolási fájl létrehozásával a dolibarr dokumentumok könyvtárában).
    ClickHereToGoToApp=Kattintson ide az alkalmazás eléréséhez ClickOnLinkOrRemoveManualy=Kattintson a következő linkre. Ha mindig ugyanazt az oldalt látja, el kell távolítania / át kell neveznie az install.lock fájlt a dokumentumok könyvtárban. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/hu_HU/interventions.lang b/htdocs/langs/hu_HU/interventions.lang index 4755bac2007..40f2ec4977c 100644 --- a/htdocs/langs/hu_HU/interventions.lang +++ b/htdocs/langs/hu_HU/interventions.lang @@ -41,9 +41,7 @@ InterventionsArea=Interventions area DraftFichinter=Draft interventions LastModifiedInterventions=Latest %s modified interventions FichinterToProcess=Interventions to process -##### Types de contacts ##### TypeContact_fichinter_external_CUSTOMER=Ügyfél kapcsolat követés -# Modele numérotation PrintProductsOnFichinter=Print also lines of type "product" (not only services) on intervention card PrintProductsOnFichinterDetails=interventions generated from orders UseServicesDurationOnFichinter=Use services duration for interventions generated from orders @@ -53,14 +51,16 @@ InterventionStatistics=Statistics of interventions NbOfinterventions=No. of intervention cards NumberOfInterventionsByMonth=No. of intervention cards by month (date of validation) AmountOfInteventionNotIncludedByDefault=Amount of intervention is not included by default into profit (in most cases, timesheets are used to count time spent). Add option PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT to 1 into home-setup-other to include them. -##### Exports ##### InterId=Intervention id InterRef=Intervention ref. InterDateCreation=Date creation intervention InterDuration=Duration intervention InterStatus=Status intervention InterNote=Note intervention +InterLine=Line of intervention InterLineId=Line id intervention InterLineDate=Line date intervention InterLineDuration=Line duration intervention InterLineDesc=Line description intervention +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/hu_HU/link.lang b/htdocs/langs/hu_HU/link.lang index 32e8792ef16..4a300402b46 100644 --- a/htdocs/langs/hu_HU/link.lang +++ b/htdocs/langs/hu_HU/link.lang @@ -8,3 +8,4 @@ LinkRemoved=A %s hivatkozás törölve ErrorFailedToDeleteLink= A '%s' hivakozás törlése sikertelen ErrorFailedToUpdateLink= A '%s' hivakozás frissítése sikertelen URLToLink=A hivatkozás címe +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/hu_HU/mails.lang b/htdocs/langs/hu_HU/mails.lang index 068acc39b23..748b00764b6 100644 --- a/htdocs/langs/hu_HU/mails.lang +++ b/htdocs/langs/hu_HU/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=No contact/address with a category found NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found OutGoingEmailSetup=Outgoing email setup InGoingEmailSetup=Incoming email setup -OutGoingEmailSetupForEmailing=Outgoing email setup (for mass emailing) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Default outgoing email setup Information=Információ ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/hu_HU/main.lang b/htdocs/langs/hu_HU/main.lang index 4a57c743427..f6b07282fc3 100644 --- a/htdocs/langs/hu_HU/main.lang +++ b/htdocs/langs/hu_HU/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Mentés és maradj SaveAndNew=Mentés és új TestConnection=Kapcsolat tesztelése ToClone=Klónozás +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Válassza ki a klónozni kívánt adatokat: NoCloneOptionsSpecified=Nincs klónozandó adat meghatározva. Of=birtokában @@ -829,6 +830,8 @@ Gender=Nem Genderman=Férfi Genderwoman=Nő ViewList=Lista megtekintése +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Kötelező kitölteni Hello=Hello GoodBye=Viszontlátásra @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Válassza ki a grafikon beállításait a grafikon f Measures=Méretek XAxis=X-tengely YAxis=Y-tengely +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/hu_HU/modulebuilder.lang b/htdocs/langs/hu_HU/modulebuilder.lang index 00a8c0f9d32..135ac1ae9ec 100644 --- a/htdocs/langs/hu_HU/modulebuilder.lang +++ b/htdocs/langs/hu_HU/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=List of dictionaries entries ListOfPermissionsDefined=List of defined permissions SeeExamples=See examples here EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) -VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update). Using a negative value means field is not shown by default on list but can be selected for viewing). It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty DisplayOnPdf=Display on PDF IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) diff --git a/htdocs/langs/hu_HU/orders.lang b/htdocs/langs/hu_HU/orders.lang index 3e21f863216..8b1b0ac0e74 100644 --- a/htdocs/langs/hu_HU/orders.lang +++ b/htdocs/langs/hu_HU/orders.lang @@ -141,7 +141,7 @@ OrderByEMail=E-mail OrderByWWW=Online OrderByPhone=Telefon # Documents models -PDFEinsteinDescription=Teljes megrendelési modell (az Eratosthene sablon régi megvalósítása) +PDFEinsteinDescription=Teljes megrendelési modell PDFEratostheneDescription=Teljes megrendelési modell PDFEdisonDescription=Egyszerű megrendelési sablon PDFProformaDescription=Teljes Proforma számlasablon diff --git a/htdocs/langs/hu_HU/other.lang b/htdocs/langs/hu_HU/other.lang index 2c84431663c..b070f06054a 100644 --- a/htdocs/langs/hu_HU/other.lang +++ b/htdocs/langs/hu_HU/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=A grafikák „Sávok” módban %s mértékre OnlyOneFieldForXAxisIsPossible=Jelenleg csak 1 mező lehetséges X-tengelyként. Csak az első kiválasztott mező került kiválasztásra. AtLeastOneMeasureIsRequired=Legalább 1 mező szükséges a méréshez AtLeastOneXAxisIsRequired=Legalább 1 mező szükséges az X-tengelyhez - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Az értékesítési megrendelés érvényes Notify_ORDER_SENTBYMAIL=Az értékesítési megrendelés postai úton elküldve Notify_ORDER_SUPPLIER_SENTBYMAIL=A beszerzési megrendelés e-mailben elküldve @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=Az oldal URL-je WEBSITE_TITLE=Cím WEBSITE_DESCRIPTION=Leírás WEBSITE_IMAGE=Kép -WEBSITE_IMAGEDesc=A képfájl relatív útja. Ezt üresen hagyhatja, mivel ezt ritkán használják (a dinamikus tartalom felhasználhatja miniatűr megjelenítésére a blogbejegyzések listájában). Használja a __WEBSITEKEY__ az elérési útban, ha az elérési út a webhely nevétől függ. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Kulcsszavak LinesToImport=Importálandó sorok diff --git a/htdocs/langs/hu_HU/products.lang b/htdocs/langs/hu_HU/products.lang index 014a4a9fccb..c28d41d5a08 100644 --- a/htdocs/langs/hu_HU/products.lang +++ b/htdocs/langs/hu_HU/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=Ez az eszköz frissíti MINDEN termékre MassBarcodeInit=Tömeges vonalkód létrehozás MassBarcodeInitDesc=Ezen az oldalon lehet vonalkódot létrehozni azon objektumoknak, amelyeknél még nincs meghatározva vonalkód. Ellenőrizze a beállításokat, mielőtt a barcode modul befejeződik. ProductAccountancyBuyCode=Számviteli kód (vásárlás) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Számviteli kód (eladás) ProductAccountancySellIntraCode=Számviteli kód (Közösségen belüli eladás) ProductAccountancySellExportCode=Számviteli kód (export eladás) @@ -165,7 +167,7 @@ SuppliersPrices=Eladási árak SuppliersPricesOfProductsOrServices=Eladási árak (termékek vagy szolgáltatások) CustomCode=Vám / Áru / HS kód CountryOrigin=Származási ország -Nature=A termék természete (alapanyag / késztermék) +Nature=Nature of product (material/finished) ShortLabel=Rövid címke Unit=Egység p=db. diff --git a/htdocs/langs/hu_HU/projects.lang b/htdocs/langs/hu_HU/projects.lang index 8376020d283..50a4460b1ab 100644 --- a/htdocs/langs/hu_HU/projects.lang +++ b/htdocs/langs/hu_HU/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=which I'm linked to project Time=Idő ListOfTasks=List of tasks GoToListOfTimeConsumed=Go to list of time consumed -GoToListOfTasks=Show as list -GoToGanttView=show as Gantt GanttView=Gantt View ListProposalsAssociatedProject=List of the commercial proposals related to the project ListOrdersAssociatedProject=List of sales orders related to the project @@ -188,7 +186,7 @@ PlannedWorkload=Planned workload PlannedWorkloadShort=Workload ProjectReferers=Kapcsolódó elemek ProjectMustBeValidatedFirst=Project must be validated first -FirstAddRessourceToAllocateTime=Assign a user resource to task to allocate time +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=Input per day InputPerWeek=Input per week InputPerMonth=Input per month @@ -240,6 +238,7 @@ LatestModifiedProjects=Latest %s modified projects OtherFilteredTasks=Other filtered tasks NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=Allow user comments on tasks AllowCommentOnProject=Allow user comments on projects @@ -256,7 +255,7 @@ ServiceToUseOnLines=Service to use on lines InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. ProjectFollowOpportunity=Follow opportunity -ProjectFollowTasks=Follow tasks +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Usage: Opportunity UsageTasks=Usage: Tasks @@ -265,3 +264,4 @@ InvoiceToUse=Draft invoice to use NewInvoice=Új számla OneLinePerTask=One line per task OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/hu_HU/receiptprinter.lang b/htdocs/langs/hu_HU/receiptprinter.lang index 3d2c4e632ab..08d8836143b 100644 --- a/htdocs/langs/hu_HU/receiptprinter.lang +++ b/htdocs/langs/hu_HU/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Dummy Printer CONNECTOR_NETWORK_PRINT=Network Printer CONNECTOR_FILE_PRINT=Local Printer CONNECTOR_WINDOWS_PRINT=Local Windows Printer +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Fake Printer for test, does nothing CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Default Profile PROFILE_SIMPLE=Simple Profile PROFILE_EPOSTEP=Epos Tep Profile @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Invoice month in letters DOL_VALUE_MONTH=Invoice month DOL_VALUE_DAY=Invoice day DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Számla hiv. +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=Tőke +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/hu_HU/stripe.lang b/htdocs/langs/hu_HU/stripe.lang index d88607e0c22..27845bc9ee2 100644 --- a/htdocs/langs/hu_HU/stripe.lang +++ b/htdocs/langs/hu_HU/stripe.lang @@ -32,6 +32,7 @@ VendorName=Neve eladó CSSUrlForPaymentForm=CSS stíluslapot url fizetési forma NewStripePaymentReceived=New Stripe payment received NewStripePaymentFailed=New Stripe payment tried but failed +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Secret test key STRIPE_TEST_PUBLISHABLE_KEY=Publishable test key STRIPE_TEST_WEBHOOK_KEY=Webhook test key @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mo 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... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authenticatin rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/hu_HU/users.lang b/htdocs/langs/hu_HU/users.lang index 63cd31fa91c..084d20b5834 100644 --- a/htdocs/langs/hu_HU/users.lang +++ b/htdocs/langs/hu_HU/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Felhasználók és tulajdonságaik DomainUser=Domain felhasználók %s Reactivate=Újra aktiválás CreateInternalUserDesc=Ez az űrlap lehetővé teszi belső felhasználó létrehozását a vállalatban/szervezetben. Külső felhasználó (vevő, eladó stb.) létrehozásához használja a 'Dolibarr felhasználó létrehozása' gombot a partner névjegykártyáján. -InternalExternalDesc=A belső felhasználó az a felhasználó, amely része a vállalatának/szervezetének.
    Egy külső felhasználó vevő, eladó vagy más.

    Mindkét esetben az engedélyek meghatározzák a felhasználó Dolibarr jogait, a külső felhasználónak más menükezelője is lehet, mint a belső felhasználónál (lásd Kezdőlap - Beállítás - Kijelző) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=Engedélyek megadva mert örökölte az egyik csoporttól. Inherited=Örökölve UserWillBeInternalUser=Létrehozta felhasználó lesz egy belső felhasználó (mivel nem kapcsolódik az adott harmadik fél) @@ -113,3 +113,5 @@ CantDisableYourself=Saját felhasználói rekordját nem tilthatja le ForceUserExpenseValidator=A költségjelentés érvényesítésének kényszerítése ForceUserHolidayValidator=A szabadságkérelem érvényesítése ValidatorIsSupervisorByDefault=Alapértelmezés szerint az érvényesítő a felhasználó vezetője. Hagyja üresen ha ez így van. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/hu_HU/website.lang b/htdocs/langs/hu_HU/website.lang index 27dc084c76f..1b6e840db9d 100644 --- a/htdocs/langs/hu_HU/website.lang +++ b/htdocs/langs/hu_HU/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=Az oldal megtekintése új lapon SetAsHomePage=Beállítás kezdőlapnak RealURL=Valódi URL ViewWebsiteInProduction=Tekintse meg a webhelyet otthoni URL-ek segítségével -SetHereVirtualHost=Használja Apache / NGinx / ...
    Ha a webkiszolgálón (Apache, Nginx, ...) létrehozhat egy dedikált virtuális gazdagépet, amelyen a PHP engedélyezve van, és egy gyökérkönyvtárat
    %s
    majd állítsa be a webhely tulajdonságaiban létrehozott virtuális gazdagép nevét, így az előnézetet a belső Dolibarr szerver helyett ennek a dedikált webkiszolgálónak a hozzáférésével is el lehet végezni. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS=Használjon beépített PHP szerverrel
    Fejlesztői környezetben a futtatással inkább tesztelheti a webhelyet a beágyazott PHP szerverrel (PHP 5.5 szükséges)
    php -S 0.0.0.0:8080 -t %s YouCanAlsoDeployToAnotherWHP=Futtassa weboldalát egy másik Dolibarr tárhely szolgáltatóval
    Ha még nem áll rendelkezésre internetes szerver, például Apache vagy NGinx, akkor exportálhatja és importálhatja webhelyét egy másik Dolibarr példányra, amelyet egy másik Dolibarr tárhely szolgáltató biztosít, és amely teljes mértékben integrálja a webhely modult. Néhány Dolibarr tárhely-szolgáltató felsorolását a https://saas.dolibarr.org oldalon találja CheckVirtualHostPerms=Ellenőrizze azt is, hogy a virtuális gazdagép rendelkezik-e %s engedéllyel a fájlokba
    %s @@ -56,7 +57,7 @@ NoPageYet=Még nincs oldal YouCanCreatePageOrImportTemplate=Készíthet új oldalt, vagy importálhat egy teljes webhelysablont SyntaxHelp=Súgó a konkrét szintaxis-tippekhez YouCanEditHtmlSourceckeditor=A HTML forráskódot a szerkesztőben a "Forrás" gombbal szerkesztheti. -YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Oldal / tároló klónozása CloneSite=Klón webhely SiteAdded=Webhely hozzáadva @@ -76,7 +77,7 @@ BlogPost=Blog bejegyzés WebsiteAccount=Weboldal-account WebsiteAccounts=Webhely-accountok AddWebsiteAccount=Hozzon létre webhely accountot -BackToListOfThirdParty=Vissza a harmadik felek listájához +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Először tiltsa le a webhelyet MyContainerTitle=Saját webhelyem címe AnotherContainer=Így lehet beépíteni egy másik oldal / tároló tartalmát (itt lehet hiba, ha engedélyezi a dinamikus kódot, mert a beágyazott konténer nem létezik) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Sajnáljuk, ez a webhely jelenleg offline állapo WEBSITE_USE_WEBSITE_ACCOUNTS=Engedélyezze a webhely account tábláját WEBSITE_USE_WEBSITE_ACCOUNTSTooltip=Engedélyezze a táblát a webhely accountok (usernév / jelszó) tárolására minden weboldalon / harmadik félnél YouMustDefineTheHomePage=Először meg kell határoznia az alapértelmezett Kezdőlapot -OnlyEditionOfSourceForGrabbedContentFuture=Figyelem: A weboldal külső weboldal importálásával történő létrehozása a tapasztalt felhasználók számára van fenntartva. A forrásoldal összetettségétől függően az importálás eredménye eltérhet az eredetitől. Ha a forrásoldal is általános CSS stílusokat vagy ütköző javascriptet használ, akkor az megsemmisítheti a webhely szerkesztő megjelenését vagy funkcióit, amikor ezen az oldalon dolgozik. Ez a módszer gyorsabb módszer egy oldal létrehozására, de ajánlott az új oldal a nulláról vagy a javasolt oldalsablonból történő létrehozása.
    Vegye figyelembe azt is, hogy a HTML forrás szerkesztése akkor lehetséges, ha az oldal tartalma inicializálva van, ha egy külső oldalról grabbeli azt (az "Online" szerkesztő NEM lesz elérhető) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Csak a HTML forrás kiadása lehetséges, ha a tartalmat egy külső webhelyről megragadták GrabImagesInto=Ragadja meg a css-ben és az oldalon található képeket is. ImagesShouldBeSavedInto=A képeket a könyvtárba kell menteni @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=A helyes SEO gyakorlat érdekében használjon 5 és 7 MainLanguage=Fő nyelv OtherLanguages=Más nyelvek UseManifest=Adjon meg egy manifest.json fájlt +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/hu_HU/zapier.lang b/htdocs/langs/hu_HU/zapier.lang new file mode 100644 index 00000000000..3b4fd59132c --- /dev/null +++ b/htdocs/langs/hu_HU/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr modul + +# +# Admin page +# +ZapierForDolibarrSetup = Zapier for Dolibarr beállítása diff --git a/htdocs/langs/id_ID/accountancy.lang b/htdocs/langs/id_ID/accountancy.lang index e4768b87f5f..863d677e5da 100644 --- a/htdocs/langs/id_ID/accountancy.lang +++ b/htdocs/langs/id_ID/accountancy.lang @@ -121,6 +121,7 @@ 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 +TotalForAccount=Total for accounting account Ventilate=Bind @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Accounting account to register donations ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (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 products sold in EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported 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_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (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_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unkno ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error PaymentsNotLinkedToProduct=Payment not linked to any product / service +OpeningBalance=Opening balance ShowOpeningBalance=Show opening balance HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Group of account PcgtypeDesc=Group 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. +Reconcilable=Reconcilable + TotalVente=Total turnover before tax TotalMarge=Total margin penjualan @@ -307,11 +317,13 @@ 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Chart of accounts Id ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Mode penjualan OptionModeProductSellIntra=Mode sales exported in EEC OptionModeProductSellExport=Mode sales exported in other countries OptionModeProductBuy=Mode pembelian +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries 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. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=Remove accounting code from lines that not exists into charts of account CleanHistory=Reset all bindings for selected year PredefinedGroups=Predefined groups @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Account removed from group SaleLocal=Local sale SaleExport=Export sale SaleEEC=Sale in EEC +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=Rentang akun-akun akuntansi diff --git a/htdocs/langs/id_ID/admin.lang b/htdocs/langs/id_ID/admin.lang index 8dea06a28ad..dfb3b7223f4 100644 --- a/htdocs/langs/id_ID/admin.lang +++ b/htdocs/langs/id_ID/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Server web untuk pengguna ( user ) / grup. NoSessionFound=Your PHP configuration seems to not allow listing of active sessions. The directory used to save sessions (%s) may be protected (for example by OS permissions or by PHP directive open_basedir). DBStoringCharset=Karakter set atau charset untuk menyimpan data DBSortingCharset=Karakter set atau charset didalam Database untuk penyortiran data +HostCharset=Host charset ClientCharset=Client charset ClientSortingCharset=Client collation WarningModuleNotActive=Modul %s harus di nyalakan @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the NoMaxSizeByPHPLimit=Catatan: Tidak ada batas diatur dalam konfigurasi PHP Anda MaxSizeForUploadedFiles=Ukuran maksimal untuk file upload (0 untuk melarang pengunggahan ada) UseCaptchaCode=Gunakan kode grafis (CAPTCHA) pada halaman login -AntiVirusCommand= Path lengkap ke perintah antivirus -AntiVirusCommandExample= Contoh untuk ClamWin: c: \\ progra ~ 1 \\ ClamWin \\ bin \\ clamscan.exe
    Contoh untuk ClamAV: / usr / bin / clamscan +AntiVirusCommand=Path lengkap ke perintah antivirus +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= Lebih lanjut tentang parameter baris perintah -AntiVirusParamExample= Contoh untuk ClamWin: - database = "C: \\ Program Files (x86) \\ ClamWin \\ lib" +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=Pengaturan modul Akuntansi UserSetup=Konfigurasi manajemen pengguna MultiCurrencySetup=Multi-currency setup @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Feature disabled in demo FeatureAvailableOnlyOnStable=Feature only available on official stable versions BoxesDesc=Widgets are components showing some information that you can add to personalize some pages. You can choose between showing the widget or not by selecting target page and clicking 'Activate', or by clicking the trashcan to disable it. OnlyActiveElementsAreShown=Only elements from enabled modules are shown. -ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button (at end of module line) to enable/disable a module/application. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. ModulesMarketPlaceDesc=You can find more modules to download on external websites on the Internet... ModulesDeployDesc=If permissions on your file system allow it, you can use this tool to deploy an external module. The module will then be visible on the tab %s. ModulesMarketPlaces=Find external app/modules @@ -212,6 +213,7 @@ CompatibleUpTo=Compatible with version %s NotCompatible=This module does not seem compatible with your Dolibarr %s (Min %s - Max %s). CompatibleAfterUpdate=This module requires an update to your Dolibarr %s (Min %s - Max %s). SeeInMarkerPlace=See in Market place +SeeSetupOfModule=See setup of module %s Updated=Updated Nouveauté=Novelty AchatTelechargement=Buy / Download @@ -221,6 +223,7 @@ DoliPartnersDesc=List of companies providing custom-developed modules or feature WebSiteDesc=External websites for more add-on (non-core) modules... DevelopYourModuleDesc=Some solutions to develop your own module... URL=URL +RelativeURL=Relative URL BoxesAvailable=Widgets available BoxesActivated=Widgets activated ActivateOn=Activate on @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Checkboxes ExtrafieldCheckBoxFromList=Checkboxes from table ExtrafieldLink=Link to an object ComputedFormula=Computed field -ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Store computed field ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! ExtrafieldParamHelpPassword=Leaving this field blank means this value will be stored without encryption (field must be only hidden with star on screen).
    Set 'auto' to use the default encryption rule to save password into database (then value read will be the hash only, no way to retrieve original value) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Keep empty to use default value DefaultLink=Link Standar SetAsDefault=Set as default ValueOverwrittenByUserSetup=Warning, this value may be overwritten by user specific setup (each user can set his own clicktodial url) -ExternalModule=External module - Installed into directory %s +ExternalModule=External module +InstalledInto=Installed into directory %s BarcodeInitForthird-parties=Mass barcode init for third-parties BarcodeInitForProductsOrServices=Mass barcode init or reset for products or services CurrentlyNWithoutBarCode=Currently, you have %s record on %s %s without barcode defined. @@ -947,7 +951,7 @@ DictionaryCanton=States/Provinces DictionaryRegion=Regions DictionaryCountry=Countries DictionaryCurrency=Currencies -DictionaryCivility=Title of civility +DictionaryCivility=Honorific titles DictionaryActions=Types of agenda events DictionarySocialContributions=Types of social or fiscal taxes DictionaryVAT=VAT Rates or Sales Tax Rates @@ -988,6 +992,7 @@ VATIsNotUsedDesc=By default the proposed Sales tax is 0 which can be used for ca VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=Rate LocalTax1IsNotUsed=Do not use second tax LocalTax1IsUsedDesc=Use a second type of tax (other than first one) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices LocalTax2IsNotUsedDescES=By default the proposed IRPF is 0. End of rule. LocalTax2IsUsedExampleES=In Spain, freelancers and independent professionals who provide services and companies who have chosen the tax system of modules. LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=Reports on local taxes CalcLocaltax1=Sales - Purchases CalcLocaltax1Desc=Local Taxes reports are calculated with the difference between localtaxes sales and localtaxes purchases @@ -1018,6 +1026,7 @@ CalcLocaltax2=Purchases CalcLocaltax2Desc=Local Taxes reports are the total of localtaxes purchases CalcLocaltax3=Sales CalcLocaltax3Desc=Local Taxes reports are the total of localtaxes sales +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=Label used by default if no translation can be found for code LabelOnDocuments=Label on documents LabelOrTranslationKey=Label or translation key @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Expense report to approve Delays_MAIN_DELAY_HOLIDAYS=Leave requests 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. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. SetupDescription5=Other Setup menu entries manage optional parameters. LogEvents=Security audit events Audit=Audit @@ -1128,7 +1137,7 @@ LogEventDesc=Enable logging for specific security events. Administrators the log AreaForAdminOnly=Setup parameters can be set by administrator users only. SystemInfoDesc=System information is miscellaneous technical information you get in read only mode and visible for administrators only. SystemAreaForAdminOnly=This area is available to administrator users only. Dolibarr user permissions cannot change this restriction. -CompanyFundationDesc=Edit the information of the company/entity. Click on "%s" button at the bottom of the page. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. AccountantFileNumber=Accountant code DisplayDesc=Parameters affecting the look and behaviour of Dolibarr can be modified here. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Rules to generate and validate passwords DisableForgetPasswordLinkOnLogonPage=Do not show the "Password Forgotten" link on the Login page UsersSetup=Users module setup UserMailRequired=Email required to create a new user +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### HRMSetup=HRM module setup ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Invoice documents models BillsPDFModulesAccordindToInvoiceType=Invoice documents models according to invoice type PaymentsPDFModules=Payment documents models ForceInvoiceDate=Force invoice date to validation date -SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined for invoice +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice SuggestPaymentByRIBOnAccount=Suggest payment by withdrawal on account SuggestPaymentByChequeToAddress=Suggest payment by check to FreeLegalTextOnInvoices=Free text on invoices @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Vendor payments setup PropalSetup=Commercial proposals module setup ProposalsNumberingModules=Commercial proposal numbering models ProposalsPDFModules=Commercial proposal documents models -SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined for proposal +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal FreeLegalTextOnProposal=Free text on commercial proposals WatermarkOnDraftProposal=Watermark on draft commercial proposals (none if empty) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal @@ -1322,6 +1334,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 ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=Sales Orders management setup OrdersNumberingModules=Orders numbering models OrdersModelModule=Order documents models @@ -1720,7 +1733,7 @@ MultiCompanySetup=Multi-company module setup ##### Suppliers ##### SuppliersSetup=Vendor module setup SuppliersCommandModel=Complete template of Purchase Order -SuppliersCommandModelMuscadet=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) SuppliersInvoiceModel=Complete template of Vendor Invoice SuppliersInvoiceNumberingModel=Vendor invoices numbering models IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Hide images in Top menu LeftMenuBackgroundColor=Background color for Left menu BackgroundTableTitleColor=Background color for Table title line BackgroundTableTitleTextColor=Text color for Table title line +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Background color for odd table lines BackgroundTableLineEvenColor=Background color for even table lines MinimumNoticePeriod=Minimum notice period (Your leave request must be done before this delay) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Dolibarr Reference not found in Message ID FormatZip=Kode Pos MainMenuCode=Menu entry code (mainmenu) ECMAutoTree=Show automatic ECM tree -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. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Opening hours OpeningHoursDesc=Enter here the regular opening hours of your company. ResourceSetup=Configuration of Resource module @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramatical ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export +ImportSetup=Setup of module Import InstanceUniqueID=Unique ID of the instance SmallerThan=Smaller than LargerThan=lebih besar dari @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled EmailTemplate=Template for email EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/id_ID/bills.lang b/htdocs/langs/id_ID/bills.lang index 4b62c14cfb1..6cd5f0ac5cf 100644 --- a/htdocs/langs/id_ID/bills.lang +++ b/htdocs/langs/id_ID/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Vendors invoices SupplierBill=Vendor invoice SupplierBills=semua tagihan untuk semua pemasok / supplier Payment=Pembayaran -PaymentBack=Pembayaran kembali -CustomerInvoicePaymentBack=Pembayaran kembali +PaymentBack=Refund +CustomerInvoicePaymentBack=Refund Payments=Semua pembayaran PaymentsBack=Refunds paymentInInvoiceCurrency=in invoices currency PaidBack=Dibayar kembali DeletePayment=Hapus pembayaran ConfirmDeletePayment=Are you sure you want to delete this payment? -ConfirmConvertToReduc=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. -ConfirmConvertToReducSupplier=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. SupplierPayments=Vendor payments ReceivedPayments=Semua pembayaran yang diterima @@ -209,17 +209,13 @@ NumberOfBillsByMonth=No. of invoices per month AmountOfBills=Amount of invoices AmountOfBillsHT=Amount of invoices (net of tax) AmountOfBillsByMonthHT=Amount of invoices by month (net of tax) -ShowSocialContribution=Show social/fiscal tax -ShowBill=Show invoice -ShowInvoice=Show invoice -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 +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=To pay on %s toPayOn=to pay on %s RetainedWarranty=Retained Warranty @@ -230,7 +226,6 @@ 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 AlreadyPaidNoCreditNotesNoDeposits=Already paid (without credit notes and down payments) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Generated from template invoice %s WarningInvoiceDateInFuture=Warning, the invoice date is higher than current date WarningInvoiceDateTooFarInFuture=Warning, the invoice date is too far from current date ViewAvailableGlobalDiscounts=View available discounts +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Status PaymentConditionShortRECEP=Due Upon Receipt @@ -509,7 +505,7 @@ ToMakePayment=Pay ToMakePaymentBack=Pay back ListOfYourUnpaidInvoices=List of unpaid invoices NoteListOfYourUnpaidInvoices=Note: This list contains only invoices for third parties you are linked to as a sale representative. -RevenueStamp=Revenue stamp +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party YouMustCreateStandardInvoiceFirstDesc=You have to create a standard invoice first and convert it to "template" to create a new template invoice @@ -575,3 +571,4 @@ AutoFillDateTo=Set end date for service line with next invoice date AutoFillDateToShort=Set end date MaxNumberOfGenerationReached=Max number of gen. reached BILL_DELETEInDolibarr=Invoice deleted +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/id_ID/blockedlog.lang b/htdocs/langs/id_ID/blockedlog.lang index cff8f7d657b..5afae6e9e53 100644 --- a/htdocs/langs/id_ID/blockedlog.lang +++ b/htdocs/langs/id_ID/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Unalterable logs ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) DownloadBlockChain=Download fingerprints -KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this re after it was recorded, or has erased the previous archived record (check that line with previous # exists). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. AddedByAuthority=Stored into remote authority diff --git a/htdocs/langs/id_ID/cashdesk.lang b/htdocs/langs/id_ID/cashdesk.lang index b040df0305d..4dcde5eda9f 100644 --- a/htdocs/langs/id_ID/cashdesk.lang +++ b/htdocs/langs/id_ID/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Add this article RestartSelling=Go back on sell SellFinished=Sale complete PrintTicket=Print ticket +SendTicket=Send ticket NoProductFound=No article found ProductFound=product found NoArticle=No article @@ -48,6 +49,7 @@ Footer=Footer AmountAtEndOfPeriod=Amount at end of period (day, month or year) TheoricalAmount=Theorical amount RealAmount=Real amount +CashFence=Cash fence CashFenceDone=Cash fence done for the period NbOfInvoices=Nb of invoices Paymentnumpad=Type of Pad to enter payment @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS needs product categories to work OrderNotes=Order Notes CashDeskBankAccountFor=Default account to use for payments in NoPaimementModesDefined=No paiment mode defined in TakePOS configuration -TicketVatGrouped=Group VAT by rate in tickets -AutoPrintTickets=Automatically print tickets +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? @@ -87,7 +90,19 @@ HeadBar=Head Bar SortProductField=Field for sorting products Browser=Browser BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/id_ID/companies.lang b/htdocs/langs/id_ID/companies.lang index 4a2c3fa0599..a90e08ac188 100644 --- a/htdocs/langs/id_ID/companies.lang +++ b/htdocs/langs/id_ID/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted=Company "%s" deleted from database. ListOfContacts=List of contacts/addresses ListOfContactsAddresses=List of contacts/addresses ListOfThirdParties=List of Third Parties -ShowCompany=Show Third Party ShowContact=Show contact ContactsAllShort=All (No filter) ContactType=Contact type @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=First name of sales representative SaleRepresentativeLastname=Last name of sales representative ErrorThirdpartiesMerge=There was an error when deleting the third parties. Please check the log. Changes have been reverted. NewCustomerSupplierCodeProposed=Customer or Vendor code already used, a new code is suggested +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Payment Type - Customer PaymentTermsCustomer=Payment Terms - Customer diff --git a/htdocs/langs/id_ID/compta.lang b/htdocs/langs/id_ID/compta.lang index 1e81d808167..37cf0356250 100644 --- a/htdocs/langs/id_ID/compta.lang +++ b/htdocs/langs/id_ID/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=See %sanalysis of payments%s for a calculation on act SeeReportInDueDebtMode=See %sanalysis of invoices%s for a calculation based on known recorded invoices even if they are not yet accounted in Ledger. SeeReportInBookkeepingMode=See %sBookeeping report%s for a calculation on Bookkeeping Ledger table RulesAmountWithTaxIncluded=- Amounts shown are with all taxes included -RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the validation date of invoices and VAT and on the due date for expenses. For salaries defined with Salary module, the value date of payment is used. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- It includes the real payments made on invoices, expenses, VAT and salaries.
    - It is based on the payment dates of the invoices, expenses, VAT and salaries. The donation date for donation. -RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the validation date of these invoices.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    RulesCATotalSaleJournal=It includes all credit lines from the Sale journal. RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Turnover invoiced by sale tax rate TurnoverCollectedbyVatrate=Turnover collected by sale tax rate PurchasebyVatrate=Purchase by sale tax rate LabelToShow=Short label +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/id_ID/donations.lang b/htdocs/langs/id_ID/donations.lang index 503432517ad..ef8cce95038 100644 --- a/htdocs/langs/id_ID/donations.lang +++ b/htdocs/langs/id_ID/donations.lang @@ -7,7 +7,6 @@ AddDonation=Create a donation NewDonation=New donation DeleteADonation=Delete a donation ConfirmDeleteADonation=Are you sure you want to delete this donation? -ShowDonation=Show donation PublicDonation=Public donation DonationsArea=Donations area DonationStatusPromiseNotValidated=Draft promise @@ -17,6 +16,7 @@ DonationStatusPromiseNotValidatedShort=Konsep DonationStatusPromiseValidatedShort=Divalidasi DonationStatusPaidShort=Received DonationTitle=Donation receipt +DonationDate=Donation date DonationDatePayment=Tanggal pembayaran ValidPromess=Validate promise DonationReceipt=Donation receipt diff --git a/htdocs/langs/id_ID/errors.lang b/htdocs/langs/id_ID/errors.lang index 3ffc686e62f..7c67aeca8b5 100644 --- a/htdocs/langs/id_ID/errors.lang +++ b/htdocs/langs/id_ID/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=File not received completely by server. ErrorNoTmpDir=Temporary directy %s does not exists. ErrorUploadBlockedByAddon=Upload blocked by a PHP/Apache plugin. ErrorFileSizeTooLarge=File size is too large. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Size too long for int type (%s digits maximum) ErrorSizeTooLongForVarcharType=Size too long for string type (%s chars maximum) ErrorNoValueForSelectType=Please fill value for select list @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # 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/id_ID/install.lang b/htdocs/langs/id_ID/install.lang index bc6b7fc3e69..59457c8085f 100644 --- a/htdocs/langs/id_ID/install.lang +++ b/htdocs/langs/id_ID/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=This PHP supports Curl. PHPSupportCalendar=This PHP supports calendars extensions. PHPSupportUTF8=This PHP supports UTF8 functions. PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=This PHP supports %s functions. PHPMemoryOK=Your PHP max session memory is set to %s. This should be enough. 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. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=Your PHP installation does not support Curl. ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. 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. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. ErrorDirDoesNotExists=Directory %s does not exist. ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=The application tried to self-upgrade, but the in 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. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/id_ID/interventions.lang b/htdocs/langs/id_ID/interventions.lang index e7667ef6946..e5936f8246e 100644 --- a/htdocs/langs/id_ID/interventions.lang +++ b/htdocs/langs/id_ID/interventions.lang @@ -41,9 +41,7 @@ InterventionsArea=Interventions area DraftFichinter=Draft interventions LastModifiedInterventions=Latest %s modified interventions FichinterToProcess=Interventions to process -##### Types de contacts ##### TypeContact_fichinter_external_CUSTOMER=Following-up customer contact -# Modele numérotation PrintProductsOnFichinter=Print also lines of type "product" (not only services) on intervention card PrintProductsOnFichinterDetails=interventions generated from orders UseServicesDurationOnFichinter=Use services duration for interventions generated from orders @@ -53,14 +51,16 @@ InterventionStatistics=Statistics of interventions NbOfinterventions=No. of intervention cards NumberOfInterventionsByMonth=No. of intervention cards by month (date of validation) AmountOfInteventionNotIncludedByDefault=Amount of intervention is not included by default into profit (in most cases, timesheets are used to count time spent). Add option PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT to 1 into home-setup-other to include them. -##### Exports ##### InterId=Intervention id InterRef=Intervention ref. InterDateCreation=Date creation intervention InterDuration=Duration intervention InterStatus=Status intervention InterNote=Note intervention +InterLine=Line of intervention InterLineId=Line id intervention InterLineDate=Line date intervention InterLineDuration=Line duration intervention InterLineDesc=Line description intervention +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/id_ID/link.lang b/htdocs/langs/id_ID/link.lang index 600b2d930ff..1d10ffbad6e 100644 --- a/htdocs/langs/id_ID/link.lang +++ b/htdocs/langs/id_ID/link.lang @@ -8,3 +8,4 @@ LinkRemoved=Tautan %s telah dihapus ErrorFailedToDeleteLink= gagal untuk menghapus tautan '%s' ErrorFailedToUpdateLink= Gagal untuk memperbaharui tautan '%s' URLToLink=URL to link +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/id_ID/mails.lang b/htdocs/langs/id_ID/mails.lang index c02d383c4fb..195055ba334 100644 --- a/htdocs/langs/id_ID/mails.lang +++ b/htdocs/langs/id_ID/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=No contact/address with a category found NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found OutGoingEmailSetup=Outgoing email setup InGoingEmailSetup=Incoming email setup -OutGoingEmailSetupForEmailing=Outgoing email setup (for mass emailing) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Default outgoing email setup Information=Information ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/id_ID/main.lang b/htdocs/langs/id_ID/main.lang index 3ef8d8605d4..9988de10e94 100644 --- a/htdocs/langs/id_ID/main.lang +++ b/htdocs/langs/id_ID/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Save and stay SaveAndNew=Save and new TestConnection=Test connection ToClone=Clone +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Choose data you want to clone: NoCloneOptionsSpecified=No data to clone defined. Of=of @@ -829,6 +830,8 @@ Gender=Gender Genderman=Man Genderwoman=Woman ViewList=Tampilan daftar +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Mandatory Hello=Hello GoodBye=GoodBye @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Select your graph options to build a graph Measures=Measures XAxis=X-Axis YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/id_ID/modulebuilder.lang b/htdocs/langs/id_ID/modulebuilder.lang index 00a8c0f9d32..135ac1ae9ec 100644 --- a/htdocs/langs/id_ID/modulebuilder.lang +++ b/htdocs/langs/id_ID/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=List of dictionaries entries ListOfPermissionsDefined=List of defined permissions SeeExamples=See examples here EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) -VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update). Using a negative value means field is not shown by default on list but can be selected for viewing). It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty DisplayOnPdf=Display on PDF IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) diff --git a/htdocs/langs/id_ID/multicurrency.lang b/htdocs/langs/id_ID/multicurrency.lang new file mode 100644 index 00000000000..bfcbd11fb7c --- /dev/null +++ b/htdocs/langs/id_ID/multicurrency.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Multi currency +ErrorAddRateFail=Error in added rate +ErrorAddCurrencyFail=Error in added currency +ErrorDeleteCurrencyFail=Error delete fail +multicurrency_syncronize_error=Synchronization error: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Use the date of the document to find the currency rate, instead of using the latest known rate +multicurrency_useOriginTx=When an object is created from another, keep the original rate from the source object (otherwise use the latest known rate) +CurrencyLayerAccount=CurrencyLayer API +CurrencyLayerAccount_help_to_synchronize=You must create an account on website %s to use this functionality.
    Get your API key.
    If you use a free account, you can't change the source currency (USD by default).
    If your main currency is not USD, the application will automatically recalculate it.

    You are limited to 1000 synchronizations per month. +multicurrency_appId=API key +multicurrency_appCurrencySource=Source currency +multicurrency_alternateCurrencySource=Alternate source currency +CurrenciesUsed=Currencies used +CurrenciesUsed_help_to_add=Add the different currencies and rates you need to use on your proposals, orders etc. +rate=rate +MulticurrencyReceived=Received, original currency +MulticurrencyRemainderToTake=Remaining amount, original currency +MulticurrencyPaymentAmount=Payment amount, original currency +AmountToOthercurrency=Amount To (in currency of receiving account) +CurrencyRateSyncSucceed=Currency rate synchronization done successfuly +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Use the currency of the document for online payments diff --git a/htdocs/langs/id_ID/other.lang b/htdocs/langs/id_ID/other.lang index 8e8d51192cb..7cac2e06e63 100644 --- a/htdocs/langs/id_ID/other.lang +++ b/htdocs/langs/id_ID/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Sales order validated Notify_ORDER_SENTBYMAIL=Sales order sent by mail Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=URL of page WEBSITE_TITLE=Title WEBSITE_DESCRIPTION=Keterangan WEBSITE_IMAGE=Image -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Keywords LinesToImport=Lines to import diff --git a/htdocs/langs/id_ID/products.lang b/htdocs/langs/id_ID/products.lang index 9e8aff41e86..411bb7216ed 100644 --- a/htdocs/langs/id_ID/products.lang +++ b/htdocs/langs/id_ID/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL MassBarcodeInit=Mass barcode init MassBarcodeInitDesc=This page can be used to initialize a barcode on objects that does not have barcode defined. Check before that setup of module barcode is complete. ProductAccountancyBuyCode=Accounting code (purchase) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Accounting code (sale) ProductAccountancySellIntraCode=Accounting code (sale intra-Community) ProductAccountancySellExportCode=Accounting code (sale export) @@ -165,7 +167,7 @@ SuppliersPrices=Vendor prices SuppliersPricesOfProductsOrServices=Vendor prices (of products or services) CustomCode=Customs / Commodity / HS code CountryOrigin=Origin country -Nature=Nature of produt (material/finished) +Nature=Nature of product (material/finished) ShortLabel=Short label Unit=Unit p=u. diff --git a/htdocs/langs/id_ID/projects.lang b/htdocs/langs/id_ID/projects.lang index 0a2900a8296..2e2ab925585 100644 --- a/htdocs/langs/id_ID/projects.lang +++ b/htdocs/langs/id_ID/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=which I'm linked to project Time=Time ListOfTasks=List of tasks GoToListOfTimeConsumed=Go to list of time consumed -GoToListOfTasks=Show as list -GoToGanttView=show as Gantt GanttView=Gantt View ListProposalsAssociatedProject=List of the commercial proposals related to the project ListOrdersAssociatedProject=List of sales orders related to the project @@ -188,7 +186,7 @@ PlannedWorkload=Planned workload PlannedWorkloadShort=Workload ProjectReferers=Related items ProjectMustBeValidatedFirst=Project must be validated first -FirstAddRessourceToAllocateTime=Assign a user resource to task to allocate time +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=Input per day InputPerWeek=Input per week InputPerMonth=Input per month @@ -240,6 +238,7 @@ LatestModifiedProjects=Latest %s modified projects OtherFilteredTasks=Other filtered tasks NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=Allow user comments on tasks AllowCommentOnProject=Allow user comments on projects @@ -256,7 +255,7 @@ ServiceToUseOnLines=Service to use on lines InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. ProjectFollowOpportunity=Follow opportunity -ProjectFollowTasks=Follow tasks +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Usage: Opportunity UsageTasks=Usage: Tasks @@ -265,3 +264,4 @@ InvoiceToUse=Draft invoice to use NewInvoice=Tagihan baru OneLinePerTask=One line per task OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/id_ID/receiptprinter.lang b/htdocs/langs/id_ID/receiptprinter.lang index 3df49b9fe67..896eaa313dd 100644 --- a/htdocs/langs/id_ID/receiptprinter.lang +++ b/htdocs/langs/id_ID/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Dummy Printer CONNECTOR_NETWORK_PRINT=Network Printer CONNECTOR_FILE_PRINT=Local Printer CONNECTOR_WINDOWS_PRINT=Local Windows Printer +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Fake Printer for test, does nothing CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Default Profile PROFILE_SIMPLE=Simple Profile PROFILE_EPOSTEP=Epos Tep Profile @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Invoice month in letters DOL_VALUE_MONTH=Invoice month DOL_VALUE_DAY=Invoice day DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Invoice ref +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=Capital +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/id_ID/stripe.lang b/htdocs/langs/id_ID/stripe.lang index eb77441d2cd..844762040af 100644 --- a/htdocs/langs/id_ID/stripe.lang +++ b/htdocs/langs/id_ID/stripe.lang @@ -32,6 +32,7 @@ VendorName=Name of vendor CSSUrlForPaymentForm=CSS style sheet url for payment form NewStripePaymentReceived=New Stripe payment received NewStripePaymentFailed=New Stripe payment tried but failed +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Secret test key STRIPE_TEST_PUBLISHABLE_KEY=Publishable test key STRIPE_TEST_WEBHOOK_KEY=Webhook test key @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mo 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... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authenticatin rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/id_ID/users.lang b/htdocs/langs/id_ID/users.lang index d424b1f334e..a9498dec5ac 100644 --- a/htdocs/langs/id_ID/users.lang +++ b/htdocs/langs/id_ID/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Users and their properties DomainUser=Domain user %s Reactivate=Reactivate CreateInternalUserDesc=This form allows you to create an internal user in your company/organization. To create an external user (customer, vendor etc. ..), use the button 'Create Dolibarr User' from that third-party's contact card. -InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other.

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=Permission granted because inherited from one of a user's group. Inherited=Inherited UserWillBeInternalUser=Created user will be an internal user (because not linked to a particular third party) @@ -110,3 +110,8 @@ UserLogged=User logged DateEmployment=Employment Start Date DateEmploymentEnd=Employment End Date CantDisableYourself=You can't disable your own user record +ForceUserExpenseValidator=Force expense report validator +ForceUserHolidayValidator=Force leave request validator +ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/id_ID/website.lang b/htdocs/langs/id_ID/website.lang index 9e5c4ba3ff8..bce2a09fb03 100644 --- a/htdocs/langs/id_ID/website.lang +++ b/htdocs/langs/id_ID/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=View page in new tab SetAsHomePage=Set as Home page RealURL=Real URL ViewWebsiteInProduction=View web site using home URLs -SetHereVirtualHost=Use with Apache/NGinx/...
    If you can create, on your web server (Apache, Nginx, ...), a dedicated Virtual Host with PHP enabled and a Root directory on
    %s
    then set the name of the virtual host you have created in the properties of web site, so the preview can be done also using this dedicated web server access instead of the internal Dolibarr server. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS=Use with PHP embedded server
    On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running
    php -S 0.0.0.0:8080 -t %s YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org CheckVirtualHostPerms=Check also that virtual host has permission %s on files into
    %s @@ -56,7 +57,7 @@ NoPageYet=No pages yet YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template SyntaxHelp=Help on specific syntax tips YouCanEditHtmlSourceckeditor=You can edit HTML source code using the "Source" button in editor. -YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Clone page/container CloneSite=Clone site SiteAdded=Website added @@ -76,7 +77,7 @@ BlogPost=Blog post WebsiteAccount=Website account WebsiteAccounts=Website accounts AddWebsiteAccount=Create web site account -BackToListOfThirdParty=Back to list for Third Party +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Disable website first MyContainerTitle=My web site title AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Sorry, this website is currently off line. Please 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 -OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that edits of HTML source will be possible when page content has been initialized by grabbing it from an external page ("Online" editor will NOT be available) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Only edition of HTML source is possible when content was grabbed from an external site GrabImagesInto=Grab also images found into css and page. ImagesShouldBeSavedInto=Images should be saved into directory @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 ch MainLanguage=Main language OtherLanguages=Other languages UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/id_ID/zapier.lang b/htdocs/langs/id_ID/zapier.lang new file mode 100644 index 00000000000..6d6eda71313 --- /dev/null +++ b/htdocs/langs/id_ID/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr module + +# +# Admin page +# +ZapierForDolibarrSetup = Setup of Zapier for Dolibarr diff --git a/htdocs/langs/is_IS/accountancy.lang b/htdocs/langs/is_IS/accountancy.lang index b9a78b69be0..04161db7e5a 100644 --- a/htdocs/langs/is_IS/accountancy.lang +++ b/htdocs/langs/is_IS/accountancy.lang @@ -121,6 +121,7 @@ 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 +TotalForAccount=Total for accounting account Ventilate=Bind @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Accounting account to register donations ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (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 products sold in EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported 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_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (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_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unkno ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error PaymentsNotLinkedToProduct=Payment not linked to any product / service +OpeningBalance=Opening balance ShowOpeningBalance=Show opening balance HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Group of account PcgtypeDesc=Group 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. +Reconcilable=Reconcilable + TotalVente=Total turnover before tax TotalMarge=Total sales margin @@ -307,11 +317,13 @@ 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Chart of accounts Id ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC OptionModeProductSellExport=Mode sales exported in other countries OptionModeProductBuy=Mode purchases +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries 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. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=Remove accounting code from lines that not exists into charts of account CleanHistory=Reset all bindings for selected year PredefinedGroups=Predefined groups @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Account removed from group SaleLocal=Local sale SaleExport=Export sale SaleEEC=Sale in EEC +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=Range of accounting account diff --git a/htdocs/langs/is_IS/admin.lang b/htdocs/langs/is_IS/admin.lang index 0b03d4da07f..fc6f20d8da7 100644 --- a/htdocs/langs/is_IS/admin.lang +++ b/htdocs/langs/is_IS/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Vefþjóninn notandi / hópur NoSessionFound=Your PHP configuration seems to not allow listing of active sessions. The directory used to save sessions (%s) may be protected (for example by OS permissions or by PHP directive open_basedir). DBStoringCharset=Gagnasafn msgstr til að geyma gögn DBSortingCharset=Gagnasafn msgstr til að flokka gögn +HostCharset=Host charset ClientCharset=Client charset ClientSortingCharset=Client collation WarningModuleNotActive=Module %s verður að vera virkt @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the NoMaxSizeByPHPLimit=Ath: Ekki eru sett lágmörk á PHP uppsetningu þína MaxSizeForUploadedFiles=Hámarks stærð fyrir skrár (0 til banna allir senda) UseCaptchaCode=Nota myndræna kóða (Kapteinn) á innskráningarsíðu -AntiVirusCommand= Full slóð að antivirus stjórn -AntiVirusCommandExample= Dæmi um Samloka: c: \\ Program Files (x86) \\ Samloka \\ kassi \\ clamscan.exe
    Dæmi um Samloka: / usr / bin / clamscan +AntiVirusCommand=Full slóð að antivirus stjórn +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= Fleiri breytur á lína -AntiVirusParamExample= Dæmi um Samloka: - gagnasafn = "C: \\ Program Files (x86) \\ Samloka \\ lib" +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=Bókhald mát skipulag UserSetup=Stjórn notanda skipulag MultiCurrencySetup=Multi-currency setup @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Lögun fatlaður í kynningu FeatureAvailableOnlyOnStable=Feature only available on official stable versions BoxesDesc=Widgets are components showing some information that you can add to personalize some pages. You can choose between showing the widget or not by selecting target page and clicking 'Activate', or by clicking the trashcan to disable it. OnlyActiveElementsAreShown=Aðeins atriði frá virkt einingar eru birtar. -ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button (at end of module line) to enable/disable a module/application. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. ModulesMarketPlaceDesc=You can find more modules to download on external websites on the Internet... ModulesDeployDesc=If permissions on your file system allow it, you can use this tool to deploy an external module. The module will then be visible on the tab %s. ModulesMarketPlaces=Find external app/modules @@ -212,6 +213,7 @@ CompatibleUpTo=Compatible with version %s NotCompatible=This module does not seem compatible with your Dolibarr %s (Min %s - Max %s). CompatibleAfterUpdate=This module requires an update to your Dolibarr %s (Min %s - Max %s). SeeInMarkerPlace=See in Market place +SeeSetupOfModule=See setup of module %s Updated=Updated Nouveauté=Novelty AchatTelechargement=Buy / Download @@ -221,6 +223,7 @@ DoliPartnersDesc=List of companies providing custom-developed modules or feature WebSiteDesc=External websites for more add-on (non-core) modules... DevelopYourModuleDesc=Some solutions to develop your own module... URL=URL +RelativeURL=Relative URL BoxesAvailable=Widgets available BoxesActivated=Widgets activated ActivateOn=Virkja á @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Checkboxes ExtrafieldCheckBoxFromList=Checkboxes from table ExtrafieldLink=Link to an object ComputedFormula=Computed field -ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Store computed field ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! ExtrafieldParamHelpPassword=Leaving this field blank means this value will be stored without encryption (field must be only hidden with star on screen).
    Set 'auto' to use the default encryption rule to save password into database (then value read will be the hash only, no way to retrieve original value) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Keep empty to use default value DefaultLink=Default link SetAsDefault=Set as default ValueOverwrittenByUserSetup=Warning, this value may be overwritten by user specific setup (each user can set his own clicktodial url) -ExternalModule=External module - Installed into directory %s +ExternalModule=External module +InstalledInto=Installed into directory %s BarcodeInitForthird-parties=Mass barcode init for third-parties BarcodeInitForProductsOrServices=Mass barcode init or reset for products or services CurrentlyNWithoutBarCode=Currently, you have %s record on %s %s without barcode defined. @@ -947,7 +951,7 @@ DictionaryCanton=States/Provinces DictionaryRegion=Svæði DictionaryCountry=Lönd DictionaryCurrency=Gjaldmiðlar -DictionaryCivility=Title of civility +DictionaryCivility=Honorific titles DictionaryActions=Types of agenda events DictionarySocialContributions=Types of social or fiscal taxes DictionaryVAT=VSK Verð @@ -988,6 +992,7 @@ VATIsNotUsedDesc=By default the proposed Sales tax is 0 which can be used for ca VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=Verð LocalTax1IsNotUsed=Do not use second tax LocalTax1IsUsedDesc=Use a second type of tax (other than first one) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices LocalTax2IsNotUsedDescES=Sjálfgefið er fyrirhuguð IRPF er 0. Lok reglu. LocalTax2IsUsedExampleES=Á Spáni freelancers og sjálfstæða sérfræðinga sem veita þjónustu og fyrirtæki sem hafa valið skatt kerfi eininga. LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=Reports on local taxes CalcLocaltax1=Sales - Purchases CalcLocaltax1Desc=Local Taxes reports are calculated with the difference between localtaxes sales and localtaxes purchases @@ -1018,6 +1026,7 @@ CalcLocaltax2=Innkaup CalcLocaltax2Desc=Local Taxes reports are the total of localtaxes purchases CalcLocaltax3=Velta CalcLocaltax3Desc=Local Taxes reports are the total of localtaxes sales +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=Merki notaður við vanræksla, ef ekki þýðingu er að finna í kóða LabelOnDocuments=Merki um skjöl LabelOrTranslationKey=Label or translation key @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Expense report to approve Delays_MAIN_DELAY_HOLIDAYS=Leave requests 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. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. SetupDescription5=Other Setup menu entries manage optional parameters. LogEvents=Öryggi endurskoðun viðburðir Audit=Úttekt @@ -1128,7 +1137,7 @@ LogEventDesc=Enable logging for specific security events. Administrators the log AreaForAdminOnly=Setup parameters can be set by administrator users only. SystemInfoDesc=Kerfi upplýsingar er ýmis tæknilegar upplýsingar sem þú færð í lesa aðeins háttur og sýnileg Aðeins kerfisstjórar. SystemAreaForAdminOnly=This area is available to administrator users only. Dolibarr user permissions cannot change this restriction. -CompanyFundationDesc=Edit the information of the company/entity. Click on "%s" button at the bottom of the page. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. AccountantFileNumber=Accountant code DisplayDesc=Parameters affecting the look and behaviour of Dolibarr can be modified here. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Rules to generate and validate passwords DisableForgetPasswordLinkOnLogonPage=Do not show the "Password Forgotten" link on the Login page UsersSetup=Notendur mát skipulag UserMailRequired=Email required to create a new user +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### HRMSetup=HRM module setup ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Invoice skjöl módel BillsPDFModulesAccordindToInvoiceType=Invoice documents models according to invoice type PaymentsPDFModules=Payment documents models ForceInvoiceDate=Force dagsetningu reiknings staðfestingu dagsetningu -SuggestedPaymentModesIfNotDefinedInInvoice=Leiðbeinandi greiðslur háttur á reikning við vanræksla ef ekki er skilgreind fyrir reikning +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice SuggestPaymentByRIBOnAccount=Suggest payment by withdrawal on account SuggestPaymentByChequeToAddress=Suggest payment by check to FreeLegalTextOnInvoices=Frjáls texti á reikningum @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Vendor payments setup PropalSetup=Auglýsing tillögur mát skipulag ProposalsNumberingModules=Auglýsing tillögu tala mát ProposalsPDFModules=Auglýsing tillögu skjöl módel -SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined for proposal +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal FreeLegalTextOnProposal=Frjáls texti um viðskiptabanka tillögur WatermarkOnDraftProposal=Watermark on draft commercial proposals (none if empty) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal @@ -1322,6 +1334,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 ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=Sales Orders management setup OrdersNumberingModules=Pantanir tala mát OrdersModelModule=Panta skjöl módel @@ -1720,7 +1733,7 @@ MultiCompanySetup=Multi-fyrirtæki mát skipulag ##### Suppliers ##### SuppliersSetup=Vendor module setup SuppliersCommandModel=Complete template of Purchase Order -SuppliersCommandModelMuscadet=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) SuppliersInvoiceModel=Complete template of Vendor Invoice SuppliersInvoiceNumberingModel=Vendor invoices numbering models IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Hide images in Top menu LeftMenuBackgroundColor=Background color for Left menu BackgroundTableTitleColor=Background color for Table title line BackgroundTableTitleTextColor=Text color for Table title line +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Background color for odd table lines BackgroundTableLineEvenColor=Background color for even table lines MinimumNoticePeriod=Minimum notice period (Your leave request must be done before this delay) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Dolibarr Reference not found in Message ID FormatZip=Zip MainMenuCode=Menu entry code (mainmenu) ECMAutoTree=Show automatic ECM tree -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. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Opening hours OpeningHoursDesc=Enter here the regular opening hours of your company. ResourceSetup=Configuration of Resource module @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramatical ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export +ImportSetup=Setup of module Import InstanceUniqueID=Unique ID of the instance SmallerThan=Smaller than LargerThan=Larger than @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled EmailTemplate=Template for email EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/is_IS/bills.lang b/htdocs/langs/is_IS/bills.lang index f4e78a6e916..021a6a69fb8 100644 --- a/htdocs/langs/is_IS/bills.lang +++ b/htdocs/langs/is_IS/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Vendors invoices SupplierBill=Vendor invoice SupplierBills=birgjum reikninga Payment=Greiðsla -PaymentBack=Greiðsla til baka -CustomerInvoicePaymentBack=Greiðsla til baka +PaymentBack=Refund +CustomerInvoicePaymentBack=Refund Payments=Greiðslur PaymentsBack=Refunds paymentInInvoiceCurrency=in invoices currency PaidBack=Paid back DeletePayment=Eyða greiðslu ConfirmDeletePayment=Are you sure you want to delete this payment? -ConfirmConvertToReduc=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. -ConfirmConvertToReducSupplier=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. SupplierPayments=Vendor payments ReceivedPayments=Móttekin greiðslur @@ -209,17 +209,13 @@ NumberOfBillsByMonth=No. of invoices per month AmountOfBills=Upphæð á reikningi AmountOfBillsHT=Amount of invoices (net of tax) AmountOfBillsByMonthHT=Upphæð á reikningi eftir mánuði (eftir skatta) -ShowSocialContribution=Show social/fiscal tax -ShowBill=Sýna reikning -ShowInvoice=Sýna reikning -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 +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=To pay on %s toPayOn=to pay on %s RetainedWarranty=Retained Warranty @@ -230,7 +226,6 @@ 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 AlreadyPaidNoCreditNotesNoDeposits=Already paid (without credit notes and down payments) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Generated from template invoice %s WarningInvoiceDateInFuture=Warning, the invoice date is higher than current date WarningInvoiceDateTooFarInFuture=Warning, the invoice date is too far from current date ViewAvailableGlobalDiscounts=View available discounts +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Status PaymentConditionShortRECEP=Due Upon Receipt @@ -509,7 +505,7 @@ ToMakePayment=Pay ToMakePaymentBack=Pay back ListOfYourUnpaidInvoices=List of unpaid invoices NoteListOfYourUnpaidInvoices=Note: This list contains only invoices for third parties you are linked to as a sale representative. -RevenueStamp=Revenue stamp +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party YouMustCreateStandardInvoiceFirstDesc=You have to create a standard invoice first and convert it to "template" to create a new template invoice @@ -575,3 +571,4 @@ AutoFillDateTo=Set end date for service line with next invoice date AutoFillDateToShort=Set end date MaxNumberOfGenerationReached=Max number of gen. reached BILL_DELETEInDolibarr=Invoice deleted +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/is_IS/blockedlog.lang b/htdocs/langs/is_IS/blockedlog.lang index 626f5821bcf..4a0e02851e2 100644 --- a/htdocs/langs/is_IS/blockedlog.lang +++ b/htdocs/langs/is_IS/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Unalterable logs ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) DownloadBlockChain=Download fingerprints -KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this re after it was recorded, or has erased the previous archived record (check that line with previous # exists). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. AddedByAuthority=Stored into remote authority diff --git a/htdocs/langs/is_IS/cashdesk.lang b/htdocs/langs/is_IS/cashdesk.lang index 11eb12c8b02..53d67608a08 100644 --- a/htdocs/langs/is_IS/cashdesk.lang +++ b/htdocs/langs/is_IS/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Bæta við þessa grein RestartSelling=Fara aftur á að selja SellFinished=Sale complete PrintTicket=Prenta miða +SendTicket=Send ticket NoProductFound=Engin grein fannst ProductFound=vara fannst NoArticle=Engin grein @@ -48,6 +49,7 @@ Footer=Footer AmountAtEndOfPeriod=Amount at end of period (day, month or year) TheoricalAmount=Theorical amount RealAmount=Real amount +CashFence=Cash fence CashFenceDone=Cash fence done for the period NbOfInvoices=NB af reikningum Paymentnumpad=Type of Pad to enter payment @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS needs product categories to work OrderNotes=Order Notes CashDeskBankAccountFor=Default account to use for payments in NoPaimementModesDefined=No paiment mode defined in TakePOS configuration -TicketVatGrouped=Group VAT by rate in tickets -AutoPrintTickets=Automatically print tickets +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? @@ -87,7 +90,19 @@ HeadBar=Head Bar SortProductField=Field for sorting products Browser=Browser BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/is_IS/companies.lang b/htdocs/langs/is_IS/companies.lang index 8e2f1086cbe..699c424c082 100644 --- a/htdocs/langs/is_IS/companies.lang +++ b/htdocs/langs/is_IS/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted=Fyrirtæki " %s " eytt úr gagnagrunninum. ListOfContacts=Listi yfir tengiliði ListOfContactsAddresses=Listi yfir tengiliði ListOfThirdParties=List of Third Parties -ShowCompany=Show Third Party ShowContact=Show samband ContactsAllShort=Öll (síu) ContactType=Hafðu tegund @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=First name of sales representative SaleRepresentativeLastname=Last name of sales representative ErrorThirdpartiesMerge=There was an error when deleting the third parties. Please check the log. Changes have been reverted. NewCustomerSupplierCodeProposed=Customer or Vendor code already used, a new code is suggested +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Payment Type - Customer PaymentTermsCustomer=Payment Terms - Customer diff --git a/htdocs/langs/is_IS/compta.lang b/htdocs/langs/is_IS/compta.lang index bd1c8b64c46..82960faedfc 100644 --- a/htdocs/langs/is_IS/compta.lang +++ b/htdocs/langs/is_IS/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=See %sanalysis of payments%s for a calculation on act SeeReportInDueDebtMode=See %sanalysis of invoices%s for a calculation based on known recorded invoices even if they are not yet accounted in Ledger. SeeReportInBookkeepingMode=See %sBookeeping report%s for a calculation on Bookkeeping Ledger table RulesAmountWithTaxIncluded=- Amounts shown are with all taxes included -RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the validation date of invoices and VAT and on the due date for expenses. For salaries defined with Salary module, the value date of payment is used. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- It includes the real payments made on invoices, expenses, VAT and salaries.
    - It is based on the payment dates of the invoices, expenses, VAT and salaries. The donation date for donation. -RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the validation date of these invoices.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    RulesCATotalSaleJournal=It includes all credit lines from the Sale journal. RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Turnover invoiced by sale tax rate TurnoverCollectedbyVatrate=Turnover collected by sale tax rate PurchasebyVatrate=Purchase by sale tax rate LabelToShow=Short label +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/is_IS/donations.lang b/htdocs/langs/is_IS/donations.lang index bc1a2f2d943..ecf48a28958 100644 --- a/htdocs/langs/is_IS/donations.lang +++ b/htdocs/langs/is_IS/donations.lang @@ -7,7 +7,6 @@ AddDonation=Create a donation NewDonation=New málefnið DeleteADonation=Delete a donation ConfirmDeleteADonation=Are you sure you want to delete this donation? -ShowDonation=Show donation PublicDonation=Almenn framlög DonationsArea=Fjárframlög area DonationStatusPromiseNotValidated=Drög að lofa @@ -17,6 +16,7 @@ DonationStatusPromiseNotValidatedShort=Víxill DonationStatusPromiseValidatedShort=Staðfestar DonationStatusPaidShort=Móttekin DonationTitle=Donation receipt +DonationDate=Donation date DonationDatePayment=Gjalddagi ValidPromess=Staðfesta loforð DonationReceipt=Donation receipt diff --git a/htdocs/langs/is_IS/errors.lang b/htdocs/langs/is_IS/errors.lang index 6c5f33f419e..28f89d9d044 100644 --- a/htdocs/langs/is_IS/errors.lang +++ b/htdocs/langs/is_IS/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=Skrá fékk ekki alveg við þjóninn. ErrorNoTmpDir=Tímabundin directy %s er ekki til. ErrorUploadBlockedByAddon=Hlaða læst með PHP / Apache tappi. ErrorFileSizeTooLarge=Skráarstærð er of stór. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Stærð of lengi fyrir int tegund (%s tölustafir hámark) ErrorSizeTooLongForVarcharType=Stærð of lengi fyrir gerð band (%s stafir hámark) ErrorNoValueForSelectType=Please fill value for select list @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # 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/is_IS/install.lang b/htdocs/langs/is_IS/install.lang index 4d44fcfc421..9c14f4b9435 100644 --- a/htdocs/langs/is_IS/install.lang +++ b/htdocs/langs/is_IS/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=This PHP supports Curl. PHPSupportCalendar=This PHP supports calendars extensions. PHPSupportUTF8=This PHP supports UTF8 functions. PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=This PHP supports %s functions. PHPMemoryOK=Your PHP max fundur minnið er stillt á %s . Þetta ætti að vera nóg. 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. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=Your PHP installation does not support Curl. ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. 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. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. ErrorDirDoesNotExists=Listinn %s er ekki til. ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=The application tried to self-upgrade, but the in 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. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/is_IS/interventions.lang b/htdocs/langs/is_IS/interventions.lang index 395f3cd1ca6..97a9f4d2785 100644 --- a/htdocs/langs/is_IS/interventions.lang +++ b/htdocs/langs/is_IS/interventions.lang @@ -41,9 +41,7 @@ InterventionsArea=Interventions area DraftFichinter=Draft interventions LastModifiedInterventions=Latest %s modified interventions FichinterToProcess=Interventions to process -##### Types de contacts ##### TypeContact_fichinter_external_CUSTOMER=Eftir upp viðskiptavina samband -# Modele numérotation PrintProductsOnFichinter=Print also lines of type "product" (not only services) on intervention card PrintProductsOnFichinterDetails=interventions generated from orders UseServicesDurationOnFichinter=Use services duration for interventions generated from orders @@ -53,14 +51,16 @@ InterventionStatistics=Statistics of interventions NbOfinterventions=No. of intervention cards NumberOfInterventionsByMonth=No. of intervention cards by month (date of validation) AmountOfInteventionNotIncludedByDefault=Amount of intervention is not included by default into profit (in most cases, timesheets are used to count time spent). Add option PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT to 1 into home-setup-other to include them. -##### Exports ##### InterId=Intervention id InterRef=Intervention ref. InterDateCreation=Date creation intervention InterDuration=Duration intervention InterStatus=Status intervention InterNote=Note intervention +InterLine=Line of intervention InterLineId=Line id intervention InterLineDate=Line date intervention InterLineDuration=Line duration intervention InterLineDesc=Line description intervention +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/is_IS/link.lang b/htdocs/langs/is_IS/link.lang index fdcf07aeff4..1ffcd41a18b 100644 --- a/htdocs/langs/is_IS/link.lang +++ b/htdocs/langs/is_IS/link.lang @@ -8,3 +8,4 @@ LinkRemoved=The link %s has been removed ErrorFailedToDeleteLink= Failed to remove link '%s' ErrorFailedToUpdateLink= Failed to update link '%s' URLToLink=URL to link +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/is_IS/mails.lang b/htdocs/langs/is_IS/mails.lang index 23de4f9fad2..fd2e406a2e5 100644 --- a/htdocs/langs/is_IS/mails.lang +++ b/htdocs/langs/is_IS/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=No contact/address with a category found NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found OutGoingEmailSetup=Outgoing email setup InGoingEmailSetup=Incoming email setup -OutGoingEmailSetupForEmailing=Outgoing email setup (for mass emailing) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Default outgoing email setup Information=Information ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/is_IS/main.lang b/htdocs/langs/is_IS/main.lang index 85245ac028d..271416128f0 100644 --- a/htdocs/langs/is_IS/main.lang +++ b/htdocs/langs/is_IS/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Save and stay SaveAndNew=Save and new TestConnection=Próf tengingu ToClone=Klóna +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Choose data you want to clone: NoCloneOptionsSpecified=Engin gögn til að afrita skilgreind. Of=á @@ -829,6 +830,8 @@ Gender=Gender Genderman=Man Genderwoman=Woman ViewList=Skoða lista +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Mandatory Hello=Hello GoodBye=GoodBye @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Select your graph options to build a graph Measures=Measures XAxis=X-Axis YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/is_IS/modulebuilder.lang b/htdocs/langs/is_IS/modulebuilder.lang index 00a8c0f9d32..135ac1ae9ec 100644 --- a/htdocs/langs/is_IS/modulebuilder.lang +++ b/htdocs/langs/is_IS/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=List of dictionaries entries ListOfPermissionsDefined=List of defined permissions SeeExamples=See examples here EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) -VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update). Using a negative value means field is not shown by default on list but can be selected for viewing). It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty DisplayOnPdf=Display on PDF IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) diff --git a/htdocs/langs/is_IS/multicurrency.lang b/htdocs/langs/is_IS/multicurrency.lang new file mode 100644 index 00000000000..bfcbd11fb7c --- /dev/null +++ b/htdocs/langs/is_IS/multicurrency.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Multi currency +ErrorAddRateFail=Error in added rate +ErrorAddCurrencyFail=Error in added currency +ErrorDeleteCurrencyFail=Error delete fail +multicurrency_syncronize_error=Synchronization error: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Use the date of the document to find the currency rate, instead of using the latest known rate +multicurrency_useOriginTx=When an object is created from another, keep the original rate from the source object (otherwise use the latest known rate) +CurrencyLayerAccount=CurrencyLayer API +CurrencyLayerAccount_help_to_synchronize=You must create an account on website %s to use this functionality.
    Get your API key.
    If you use a free account, you can't change the source currency (USD by default).
    If your main currency is not USD, the application will automatically recalculate it.

    You are limited to 1000 synchronizations per month. +multicurrency_appId=API key +multicurrency_appCurrencySource=Source currency +multicurrency_alternateCurrencySource=Alternate source currency +CurrenciesUsed=Currencies used +CurrenciesUsed_help_to_add=Add the different currencies and rates you need to use on your proposals, orders etc. +rate=rate +MulticurrencyReceived=Received, original currency +MulticurrencyRemainderToTake=Remaining amount, original currency +MulticurrencyPaymentAmount=Payment amount, original currency +AmountToOthercurrency=Amount To (in currency of receiving account) +CurrencyRateSyncSucceed=Currency rate synchronization done successfuly +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Use the currency of the document for online payments diff --git a/htdocs/langs/is_IS/other.lang b/htdocs/langs/is_IS/other.lang index ebaa25e6d3d..b81f0d0f77e 100644 --- a/htdocs/langs/is_IS/other.lang +++ b/htdocs/langs/is_IS/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Sales order validated Notify_ORDER_SENTBYMAIL=Sales order sent by mail Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=URL of page WEBSITE_TITLE=Titill WEBSITE_DESCRIPTION=Lýsing WEBSITE_IMAGE=Image -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Keywords LinesToImport=Lines to import diff --git a/htdocs/langs/is_IS/products.lang b/htdocs/langs/is_IS/products.lang index 3ed2df6e56c..50494b9a623 100644 --- a/htdocs/langs/is_IS/products.lang +++ b/htdocs/langs/is_IS/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL MassBarcodeInit=Mass barcode init MassBarcodeInitDesc=This page can be used to initialize a barcode on objects that does not have barcode defined. Check before that setup of module barcode is complete. ProductAccountancyBuyCode=Accounting code (purchase) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Accounting code (sale) ProductAccountancySellIntraCode=Accounting code (sale intra-Community) ProductAccountancySellExportCode=Accounting code (sale export) @@ -165,7 +167,7 @@ SuppliersPrices=Vendor prices SuppliersPricesOfProductsOrServices=Vendor prices (of products or services) CustomCode=Customs / Commodity / HS code CountryOrigin=Uppruni land -Nature=Nature of produt (material/finished) +Nature=Nature of product (material/finished) ShortLabel=Short label Unit=Unit p=u. diff --git a/htdocs/langs/is_IS/projects.lang b/htdocs/langs/is_IS/projects.lang index 883d21f7aab..e65a23d7fc4 100644 --- a/htdocs/langs/is_IS/projects.lang +++ b/htdocs/langs/is_IS/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=which I'm linked to project Time=Tími ListOfTasks=List of tasks GoToListOfTimeConsumed=Go to list of time consumed -GoToListOfTasks=Show as list -GoToGanttView=show as Gantt GanttView=Gantt View ListProposalsAssociatedProject=List of the commercial proposals related to the project ListOrdersAssociatedProject=List of sales orders related to the project @@ -188,7 +186,7 @@ PlannedWorkload=Planned workload PlannedWorkloadShort=Workload ProjectReferers=Related items ProjectMustBeValidatedFirst=Project must be validated first -FirstAddRessourceToAllocateTime=Assign a user resource to task to allocate time +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=Input per day InputPerWeek=Input per week InputPerMonth=Input per month @@ -240,6 +238,7 @@ LatestModifiedProjects=Latest %s modified projects OtherFilteredTasks=Other filtered tasks NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=Allow user comments on tasks AllowCommentOnProject=Allow user comments on projects @@ -256,7 +255,7 @@ ServiceToUseOnLines=Service to use on lines InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. ProjectFollowOpportunity=Follow opportunity -ProjectFollowTasks=Follow tasks +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Usage: Opportunity UsageTasks=Usage: Tasks @@ -265,3 +264,4 @@ InvoiceToUse=Draft invoice to use NewInvoice=Nýr reikningur OneLinePerTask=One line per task OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/is_IS/receiptprinter.lang b/htdocs/langs/is_IS/receiptprinter.lang index 76c8635765a..6ba804469a5 100644 --- a/htdocs/langs/is_IS/receiptprinter.lang +++ b/htdocs/langs/is_IS/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Dummy Printer CONNECTOR_NETWORK_PRINT=Network Printer CONNECTOR_FILE_PRINT=Local Printer CONNECTOR_WINDOWS_PRINT=Local Windows Printer +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Fake Printer for test, does nothing CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Default Profile PROFILE_SIMPLE=Simple Profile PROFILE_EPOSTEP=Epos Tep Profile @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Invoice month in letters DOL_VALUE_MONTH=Invoice month DOL_VALUE_DAY=Invoice day DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Invoice dómari +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=Capital +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/is_IS/stripe.lang b/htdocs/langs/is_IS/stripe.lang index 66b0105ee29..8ba78b4df1e 100644 --- a/htdocs/langs/is_IS/stripe.lang +++ b/htdocs/langs/is_IS/stripe.lang @@ -32,6 +32,7 @@ VendorName=Nafn seljanda CSSUrlForPaymentForm=CSS stíll lak url fyrir formi greiðslu NewStripePaymentReceived=New Stripe payment received NewStripePaymentFailed=New Stripe payment tried but failed +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Secret test key STRIPE_TEST_PUBLISHABLE_KEY=Publishable test key STRIPE_TEST_WEBHOOK_KEY=Webhook test key @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mo 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... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authenticatin rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/is_IS/users.lang b/htdocs/langs/is_IS/users.lang index b0830affd55..3d4566f6abf 100644 --- a/htdocs/langs/is_IS/users.lang +++ b/htdocs/langs/is_IS/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Users and their properties DomainUser=Lén notanda %s Reactivate=Endurvekja CreateInternalUserDesc=This form allows you to create an internal user in your company/organization. To create an external user (customer, vendor etc. ..), use the button 'Create Dolibarr User' from that third-party's contact card. -InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other.

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=Heimild veitt vegna þess að arfur frá einni í hópnum notanda. Inherited=Arf UserWillBeInternalUser=Búið notandi vilja vera innri notanda (vegna þess að ekki tengd við ákveðna þriðja aðila) @@ -110,3 +110,8 @@ UserLogged=User logged DateEmployment=Employment Start Date DateEmploymentEnd=Employment End Date CantDisableYourself=You can't disable your own user record +ForceUserExpenseValidator=Force expense report validator +ForceUserHolidayValidator=Force leave request validator +ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/is_IS/website.lang b/htdocs/langs/is_IS/website.lang index 738071eb4b4..7cb01917290 100644 --- a/htdocs/langs/is_IS/website.lang +++ b/htdocs/langs/is_IS/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=View page in new tab SetAsHomePage=Set as Home page RealURL=Real URL ViewWebsiteInProduction=View web site using home URLs -SetHereVirtualHost=Use with Apache/NGinx/...
    If you can create, on your web server (Apache, Nginx, ...), a dedicated Virtual Host with PHP enabled and a Root directory on
    %s
    then set the name of the virtual host you have created in the properties of web site, so the preview can be done also using this dedicated web server access instead of the internal Dolibarr server. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS=Use with PHP embedded server
    On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running
    php -S 0.0.0.0:8080 -t %s YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org CheckVirtualHostPerms=Check also that virtual host has permission %s on files into
    %s @@ -56,7 +57,7 @@ NoPageYet=No pages yet YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template SyntaxHelp=Help on specific syntax tips YouCanEditHtmlSourceckeditor=You can edit HTML source code using the "Source" button in editor. -YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Clone page/container CloneSite=Clone site SiteAdded=Website added @@ -76,7 +77,7 @@ BlogPost=Blog post WebsiteAccount=Website account WebsiteAccounts=Website accounts AddWebsiteAccount=Create web site account -BackToListOfThirdParty=Back to list for Third Party +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Disable website first MyContainerTitle=My web site title AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Sorry, this website is currently off line. Please 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 -OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that edits of HTML source will be possible when page content has been initialized by grabbing it from an external page ("Online" editor will NOT be available) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Only edition of HTML source is possible when content was grabbed from an external site GrabImagesInto=Grab also images found into css and page. ImagesShouldBeSavedInto=Images should be saved into directory @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 ch MainLanguage=Main language OtherLanguages=Other languages UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/is_IS/zapier.lang b/htdocs/langs/is_IS/zapier.lang new file mode 100644 index 00000000000..6d6eda71313 --- /dev/null +++ b/htdocs/langs/is_IS/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr module + +# +# Admin page +# +ZapierForDolibarrSetup = Setup of Zapier for Dolibarr diff --git a/htdocs/langs/it_CH/accountancy.lang b/htdocs/langs/it_CH/accountancy.lang new file mode 100644 index 00000000000..9827b9d3795 --- /dev/null +++ b/htdocs/langs/it_CH/accountancy.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - accountancy +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 diff --git a/htdocs/langs/it_CH/admin.lang b/htdocs/langs/it_CH/admin.lang new file mode 100644 index 00000000000..b81932f9f03 --- /dev/null +++ b/htdocs/langs/it_CH/admin.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - admin +Module56Name=Telephony +Module56Desc=Telephony integration diff --git a/htdocs/langs/it_CH/companies.lang b/htdocs/langs/it_CH/companies.lang new file mode 100644 index 00000000000..6897cf22f06 --- /dev/null +++ b/htdocs/langs/it_CH/companies.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - companies +Contact=Contact diff --git a/htdocs/langs/it_CH/main.lang b/htdocs/langs/it_CH/main.lang new file mode 100644 index 00000000000..2e691473326 --- /dev/null +++ b/htdocs/langs/it_CH/main.lang @@ -0,0 +1,21 @@ +# Dolibarr language file - Source file is en_US - main +DIRECTION=ltr +FONTFORPDF=helvetica +FONTSIZEFORPDF=10 +SeparatorDecimal=. +SeparatorThousand=, +FormatDateShort=%m/%d/%Y +FormatDateShortInput=%m/%d/%Y +FormatDateShortJava=MM/dd/yyyy +FormatDateShortJavaInput=MM/dd/yyyy +FormatDateShortJQuery=mm/dd/yy +FormatDateShortJQueryInput=mm/dd/yy +FormatHourShortJQuery=HH:MI +FormatHourShort=%I:%M %p +FormatHourShortDuration=%H:%M +FormatDateTextShort=%b %d, %Y +FormatDateText=%B %d, %Y +FormatDateHourShort=%m/%d/%Y %I:%M %p +FormatDateHourSecShort=%m/%d/%Y %I:%M:%S %p +FormatDateHourTextShort=%b %d, %Y, %I:%M %p +FormatDateHourText=%B %d, %Y, %I:%M %p diff --git a/htdocs/langs/it_CH/projects.lang b/htdocs/langs/it_CH/projects.lang new file mode 100644 index 00000000000..7e42793b0e9 --- /dev/null +++ b/htdocs/langs/it_CH/projects.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - projects +CantRemoveProject=This project can't be removed as it is referenced by some other objects (invoice, orders or other). See referers tab. diff --git a/htdocs/langs/it_IT/accountancy.lang b/htdocs/langs/it_IT/accountancy.lang index f924fd121c9..9be0770d70b 100644 --- a/htdocs/langs/it_IT/accountancy.lang +++ b/htdocs/langs/it_IT/accountancy.lang @@ -121,6 +121,7 @@ InvoiceLinesDone=Righe di fatture bloccate ExpenseReportLines=Linee di note spese da associare ExpenseReportLinesDone=Linee vincolate di note spese IntoAccount=Collega linee con il piano dei conti +TotalForAccount=Total for accounting account Ventilate=Associa @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Conto di contabilità per registrare le donazioni ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Conto contabile per registrare gli abbonamenti ACCOUNTING_PRODUCT_BUY_ACCOUNT=Conto di contabilità predefinito per i prodotti acquistati (se non definito nella scheda prodotto) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_ACCOUNT=Conto di contabilità predefinito per i prodotti venduti (se non definito nella scheda prodotto) ACCOUNTING_PRODUCT_SOLD_INTRA_ACCOUNT=Conto contabile per impostazione predefinita per i prodotti venduti in CEE (utilizzato se non definito nella scheda prodotto) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Conto contabile per impostazione predefinita per l'esportazione dei prodotti venduti fuori dalla CEE (utilizzato se non definito nella scheda prodotto) + ACCOUNTING_SERVICE_BUY_ACCOUNT=Conto di contabilità per impostazione predefinita per i servizi acquistati (utilizzato se non definito nel foglio di servizio) +ACCOUNTING_SERVICE_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_ACCOUNT=Conto di contabilità per impostazione predefinita per i servizi venduti (utilizzato se non definito nel foglio di servizio) ACCOUNTING_SERVICE_SOLD_INTRA_ACCOUNT=Conto contabile predefinito per i servizi venduti nella CEE (solo se non definito nella scheda servizio) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Conto contabile predefinito per i servizi venduti ed esportati fuori dalla CEE (solo se non definito nella scheda servizio) @@ -228,13 +234,17 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unkno ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error PaymentsNotLinkedToProduct=Payment not linked to any product / service -ShowOpeningBalance=Show opening balance -HideOpeningBalance=Hide opening balance +OpeningBalance=Opening balance +ShowOpeningBalance=Mostra bilancio di apertura +HideOpeningBalance=Nascondi bilancio di apertura +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Gruppo di conto PcgtypeDesc=Group 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. -TotalVente=Total turnover before tax +Reconcilable=Reconcilable + +TotalVente=Fatturato totale al lordo delle imposte TotalMarge=Margine totale sulle vendite DescVentilCustomer=Consult here the list of customer invoice lines bound (or not) to a product accounting account @@ -286,7 +296,7 @@ AccountingJournalType1=Miscellaneous operations AccountingJournalType2=Vendite AccountingJournalType3=Acquisti AccountingJournalType4=Banca -AccountingJournalType5=Expenses report +AccountingJournalType5=Rimborsi spese AccountingJournalType8=Inventario AccountingJournalType9=Has-new ErrorAccountingJournalIsAlreadyUse=Questo giornale è già in uso @@ -307,11 +317,13 @@ 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Id Piano dei Conti ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Modalità vendita OptionModeProductSellIntra=Mode sales exported in EEC OptionModeProductSellExport=Mode sales exported in other countries OptionModeProductBuy=Modalità acquisto +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries 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. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=Remove accounting code from lines that not exists into charts of account CleanHistory=Resetta tutti i collegamenti per l'anno corrente PredefinedGroups=Gruppi predefiniti @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Account removed from group SaleLocal=Local sale SaleExport=Export sale SaleEEC=Sale in EEC +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=Range of accounting account diff --git a/htdocs/langs/it_IT/admin.lang b/htdocs/langs/it_IT/admin.lang index 7c938027e80..a790bf4a540 100644 --- a/htdocs/langs/it_IT/admin.lang +++ b/htdocs/langs/it_IT/admin.lang @@ -20,8 +20,8 @@ LocalSignature=Firma locale incorporata (meno affidabile) RemoteSignature=Firma remota (più affidabile) FilesMissing=File mancanti FilesUpdated=File aggiornati -FilesModified=Files modificati -FilesAdded=Files aggiunti +FilesModified=File modificati +FilesAdded=File aggiunti FileCheckDolibarr=Controlla l'integrità dei file dell'applicazione AvailableOnlyOnPackagedVersions=Il file locale per la verifica d'integrità è disponibile solo quando l'applicazione è installata da un pacchetto ufficiale XmlNotFound=File xml di controllo integrità non trovato @@ -40,6 +40,7 @@ WebUserGroup=Utente/gruppo del server web (per esempio www-data) NoSessionFound=La tua configurazione PHP sembra non permetta di mostrare le sessioni attive. La directory utilizzata per salvare le sessioni (%s) potrebbe non essere protetta (per esempio tramite permessi SO oppure dalla direttiva PHP open_basedir). DBStoringCharset=Charset per il salvataggio dei dati nel database DBSortingCharset=Set di caratteri del database per ordinare i dati +HostCharset=Host charset ClientCharset=Client charset ClientSortingCharset=Client collation WarningModuleNotActive=Il modulo %s deve essere attivato @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the NoMaxSizeByPHPLimit=Nota: nessun limite impostato nella configurazione PHP MaxSizeForUploadedFiles=Dimensione massima dei file caricati (0 per disabilitare l'upload) UseCaptchaCode=Utilizzare verifica captcha nella pagina di login -AntiVirusCommand= Percorso completo programma antivirus -AntiVirusCommandExample= Esempio per ClamWin: c:\\Program Files (x86)\\ClamWin\\bin\\clamscan.exe
    Esempio per ClamAV: / usr/bin/clamscan +AntiVirusCommand=Percorso completo programma antivirus +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= Più parametri sulla riga di comando -AntiVirusParamExample= Esempio per ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=Impostazioni modulo contabilità UserSetup=Impostazioni per la gestione utenti MultiCurrencySetup=Impostazioni multi-valuta @@ -197,9 +198,9 @@ IgnoreDuplicateRecords=Ignora errori per record duplicati (INSERT IGNORE) AutoDetectLang=Rileva automaticamente (lingua del browser) FeatureDisabledInDemo=Funzione disabilitata in modalità demo FeatureAvailableOnlyOnStable=Feature disponibile solo nelle versioni stabili ufficiali -BoxesDesc=Widgets are components showing some information that you can add to personalize some pages. You can choose between showing the widget or not by selecting target page and clicking 'Activate', or by clicking the trashcan to disable it. +BoxesDesc=I Widgets sono componenti che personalizzano le pagine aggiungendo delle informazioni.\nPuoi scegliere se mostrare il widget o meno cliccando 'Attiva' sulla la pagina di destinazione, o cliccando sul cestino per disattivarlo. OnlyActiveElementsAreShown=Vengono mostrati solo gli elementi relativi ai moduli attivi . -ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button (at end of module line) to enable/disable a module/application. +ModulesDesc=I moduli / applicazioni determinano quali funzionalità sono disponibili nel software. Alcuni moduli richiedono autorizzazioni da concedere agli utenti dopo l'attivazione del modulo stesso. Fare clic sul pulsante on / off %s (alla fine della riga del modulo) per abilitare / disabilitare un modulo / un'applicazione. ModulesMarketPlaceDesc=Potete trovare altri moduli da scaricare su siti web esterni... ModulesDeployDesc=If permissions on your file system allow it, you can use this tool to deploy an external module. The module will then be visible on the tab %s. ModulesMarketPlaces=Trova app/moduli esterni... @@ -212,6 +213,7 @@ CompatibleUpTo=Compatibile con la versione %s NotCompatible=Questo modulo non sembra essere compatibile con la tua versione di Dolibarr %s (Min %s - Max %s). CompatibleAfterUpdate=Questo modulo richiede un aggiornamento a Dolibarr %s (Min %s - Max %s). SeeInMarkerPlace=See in Market place +SeeSetupOfModule=Vedi la configurazione del modulo %s Updated=Aggiornato Nouveauté=Novità AchatTelechargement=Aquista / Scarica @@ -221,6 +223,7 @@ DoliPartnersDesc=List of companies providing custom-developed modules or feature WebSiteDesc=Siti web esterni per ulteriori moduli add-on (non essenziali)... DevelopYourModuleDesc=Spunti per sviluppare il tuo modulo... URL=Collegamento +RelativeURL=Indirizzo URL relativo BoxesAvailable=Widget disponibili BoxesActivated=Widget attivi ActivateOn=Attiva sul @@ -231,8 +234,8 @@ Required=Richiesto UsedOnlyWithTypeOption=Used by some agenda option only Security=Sicurezza Passwords=Password -DoNotStoreClearPassword=Encrypt passwords stored in database (NOT as plain-text). It is strongly recommended to activate this option. -MainDbPasswordFileConfEncrypted=Encrypt database password stored in conf.php. It is strongly recommended to activate this option. +DoNotStoreClearPassword=Non memorizzare le password in chiaro nel database (raccomandato) +MainDbPasswordFileConfEncrypted=Password del database crittata in conf.php (raccomandato) InstrucToEncodePass=Per avere la password codificata sostituisci nel file conf.php , la linea
    $dolibarr_main_db_pass="...";
    con
    $dolibarr_main_db_pass="crypted:%s"; InstrucToClearPass=Per avere la password decodificata (in chiaro) sostituisci nel fileconf.php la linea
    $dolibarr_main_db_pass="crypted:...";
    con
    $dolibarr_main_db_pass="%s"; ProtectAndEncryptPdfFiles=Protect generated PDF files. This is NOT recommended as it breaks bulk PDF generation. @@ -248,7 +251,7 @@ OfficialMarketPlace=Market ufficiale per moduli esterni e addon OfficialWebHostingService=Servizi di hosting web referenziati (Hosting Cloud) ReferencedPreferredPartners=Preferred Partners OtherResources=Altre risorse -ExternalResources=External Resources +ExternalResources=Risorse esterne SocialNetworks=Social Networks ForDocumentationSeeWiki=La documentazione per utenti e sviluppatori e le FAQ sono disponibili sul wiki di Dolibarr:
    Dai un'occhiata a %s ForAnswersSeeForum=Per qualsiasi altro problema/domanda, si può utilizzare il forum di Dolibarr:
    %s @@ -279,8 +282,8 @@ MAIN_MAIL_EMAIL_FROM=Indirizzo mittente per le email automatiche (predefinito in MAIN_MAIL_ERRORS_TO=Indirizzo a cui inviare eventuali errori (campi 'Errors-To' nelle email inviate) MAIN_MAIL_AUTOCOPY_TO= Indirizzo a cui inviare in copia Ccn tutte le mail in uscita MAIN_DISABLE_ALL_MAILS=Disabilita l'invio delle email (a scopo di test o demo) -MAIN_MAIL_FORCE_SENDTO=Send all emails to (instead of real recipients, for test purposes) -MAIN_MAIL_ENABLED_USER_DEST_SELECT=Add employee users with email into allowed recipient list +MAIN_MAIL_FORCE_SENDTO=Invia tutte le e-mail a (anziché ai destinatari reali, a scopo di test) +MAIN_MAIL_ENABLED_USER_DEST_SELECT=Suggerisci l'indirizzo e-mail dei dipendenti (se definiti) nell'elenco dei destinatari predefiniti durante l'invio una nuova e-mail MAIN_MAIL_SENDMODE=Metodo di invio email MAIN_MAIL_SMTPS_ID=Username SMTP (se il server richiede l'autenticazione) MAIN_MAIL_SMTPS_PW=Password SMTP (se il server richiede l'autenticazione) @@ -293,7 +296,7 @@ MAIN_MAIL_EMAIL_DKIM_PRIVATE_KEY=Private key for dkim signing MAIN_DISABLE_ALL_SMS=Disabilita l'invio di SMS (a scopo di test o demo) MAIN_SMS_SENDMODE=Metodo da utilizzare per inviare SMS MAIN_MAIL_SMS_FROM=Numero predefinito del mittente per gli SMS -MAIN_MAIL_DEFAULT_FROMTYPE=Default sender email for manual sending (User email or Company email) +MAIN_MAIL_DEFAULT_FROMTYPE=Email predefinita del mittente per l'invio manuale (email utente o email aziendale) UserEmail=Email utente CompanyEmail=Company Email FeatureNotAvailableOnLinux=Funzione non disponibile sui sistemi Linux. Viene usato il server di posta installato sul server (es. sendmail). @@ -302,9 +305,9 @@ SubmitTranslationENUS=Se la traduzione per questa lingua non è completa o trovi ModuleSetup=Impostazioni modulo ModulesSetup=Impostazione Modulo/Applicazione ModuleFamilyBase=Sistema -ModuleFamilyCrm=Customer Relationship Management (CRM) -ModuleFamilySrm=Vendor Relationship Management (VRM) -ModuleFamilyProducts=Product Management (PM) +ModuleFamilyCrm=Gestione delle relazioni con i clienti (CRM) +ModuleFamilySrm=Gestione delle relazioni con i fornitori (SRM / VRM) +ModuleFamilyProducts=Gestione dei prodotti (PM) ModuleFamilyHr=Gestione delle risorse umane (HR) ModuleFamilyProjects=Progetti/collaborazioni ModuleFamilyOther=Altro @@ -312,7 +315,7 @@ ModuleFamilyTechnic=Strumenti Multi-modulo ModuleFamilyExperimental=Moduli sperimentali ModuleFamilyFinancial=Moduli finanziari (Contabilità/Cassa) ModuleFamilyECM=ECM -ModuleFamilyPortal=Websites and other frontal application +ModuleFamilyPortal=Web sites ed altre applicazioni ModuleFamilyInterface=Interfacce con sistemi esterni MenuHandlers=Gestori menu MenuAdmin=Editor menu @@ -363,7 +366,7 @@ ConfirmPurge=Are you sure you want to execute this purge?
    This will permanent MinLength=Durata minima LanguageFilesCachedIntoShmopSharedMemory=File Lang caricati nella memoria cache LanguageFile=File di Lingua -ExamplesWithCurrentSetup=Examples with current configuration +ExamplesWithCurrentSetup=Esempi di funzionamento secondo la configurazione attuale ListOfDirectories=Elenco delle directory dei modelli OpenDocument ListOfDirectoriesForModelGenODT=Lista di cartelle contenenti file modello in formato OpenDocument.

    Inserisci qui il percorso completo delle cartelle.
    Digitare un 'Invio' tra ciascuna cartella.
    Per aggiungere una cartella del modulo GED, inserire qui DOL_DATA_ROOT/ecm/yourdirectoryname.

    I file in quelle cartelle devono terminare con .odt o .ods. NumberOfModelFilesFound=Number of ODT/ODS template files found in these directories @@ -381,24 +384,24 @@ ResponseTimeout=Timeout della risposta SmsTestMessage=Prova messaggio da __PHONEFROM__ a __PHONETO__ ModuleMustBeEnabledFirst=Il modulo %s deve prima essere attivato per poter accedere a questa funzione. SecurityToken=Token di sicurezza -NoSmsEngine=No SMS sender manager available. A SMS sender manager is not installed with the default distribution because they depend on an external vendor, but you can find some on %s +NoSmsEngine=Nessun gestore mittente SMS disponibile. Un gestore mittente SMS non è installato con la distribuzione predefinita perché dipendono da un fornitore esterno, ma puoi trovarne alcuni su %s PDF=PDF -PDFDesc=Global options for PDF generation. -PDFAddressForging=Rules for address boxes -HideAnyVATInformationOnPDF=Hide all information related to Sales Tax / VAT +PDFDesc=Opzioni globali per la generazione di PDF. +PDFAddressForging=Regole per i box degli indirizzi sui documenti pdf +HideAnyVATInformationOnPDF=Nascondi tutte le informazioni relative all'IVA sui pdf generati. PDFRulesForSalesTax=Regole per tasse sulla vendita/IVA PDFLocaltax=Regole per %s HideLocalTaxOnPDF=Hide %s rate in column Tax Sale -HideDescOnPDF=Hide products description -HideRefOnPDF=Hide products ref. -HideDetailsOnPDF=Hide product lines details +HideDescOnPDF=Nascondi le descrizioni dei prodotti nel pdf generato +HideRefOnPDF=Nascondi il riferimento dei prodotti nel pdf generato +HideDetailsOnPDF=Nascondi dettagli linee prodotti sui PDF generati PlaceCustomerAddressToIsoLocation=Usa la posizione predefinita francese (La Poste) per l'indirizzo del cliente Library=Libreria UrlGenerationParameters=Parametri di generazione degli indirizzi SecurityTokenIsUnique=Utilizzare un unico parametro securekey per ogni URL EnterRefToBuildUrl=Inserisci la reference per l'oggetto %s GetSecuredUrl=Prendi URL calcolato -ButtonHideUnauthorized=Hide buttons for non-admin users for unauthorized actions instead of showing greyed disabled buttons +ButtonHideUnauthorized=Nascondi i pulsanti per azioni non autorizzate anziché mostrare i pulsanti disabilitati OldVATRates=Vecchia aliquota IVA NewVATRates=Nuova aliquota IVA PriceBaseTypeToChange=Modifica i prezzi con la valuta di base definita. @@ -423,9 +426,9 @@ ExtrafieldPassword=Password ExtrafieldRadio=Radio buttons (one choice only) ExtrafieldCheckBox=Checkboxes ExtrafieldCheckBoxFromList=Checkboxes from table -ExtrafieldLink=Link to an object +ExtrafieldLink=Collegamento ad un oggetto ComputedFormula=Campo calcolato -ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Store computed field ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! ExtrafieldParamHelpPassword=Leaving this field blank means this value will be stored without encryption (field must be only hidden with star on screen).
    Set 'auto' to use the default encryption rule to save password into database (then value read will be the hash only, no way to retrieve original value) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Lasciare vuoto per utilizzare il valore di default DefaultLink=Link predefinito SetAsDefault=Imposta come predefinito ValueOverwrittenByUserSetup=Attenzione, questo valore potrebbe essere sovrascritto da un impostazione specifica dell'utente (ogni utente può settare il proprio url clicktodial) -ExternalModule=Modulo esterno - Installato nella directory %s +ExternalModule=Modulo esterno +InstalledInto=Installato nella directory %s BarcodeInitForthird-parties=Mass barcode init for third-parties BarcodeInitForProductsOrServices=Mass barcode init or reset for products or services CurrentlyNWithoutBarCode=Currently, you have %s record on %s %s without barcode defined. @@ -456,7 +460,7 @@ ConfirmEraseAllCurrentBarCode=Vuoi davvero eliminare tutti i valori attuali dei AllBarcodeReset=All barcode values have been removed NoBarcodeNumberingTemplateDefined=No numbering barcode template enabled in the Barcode module setup. EnableFileCache=Abilita file di cache -ShowDetailsInPDFPageFoot=Add more details into footer, such as company address or manager names (in addition to professional ids, company capital and VAT number). +ShowDetailsInPDFPageFoot=Aggiungi più dettagli nel piè di pagina, come l'indirizzo dell'azienda o i nomi dei gestori (oltre agli ID professionali, al capitale aziendale e al numero di partita IVA). NoDetails=No additional details in footer DisplayCompanyInfo=Mostra indirizzo dell'azienda DisplayCompanyManagers=Visualizza nomi responsabili @@ -469,7 +473,7 @@ ModuleCompanyCodeDigitaria=Accounting code depends on third-party code. The code ModuleCompanyCodeCustomerDigitaria=%s seguito dal nome del cliente troncato dal numero di caratteri: %s per il codice contabile del cliente. ModuleCompanyCodeSupplierDigitaria=%s seguito dal nome del fornitore troncato dal numero di caratteri: %s per il codice contabile del fornitore. Use3StepsApproval=By default, Purchase Orders need to be created and approved by 2 different users (one step/user to create and one step/user to approve. Note that if user has both permission to create and approve, one step/user will be enough). You can ask with this option to introduce a third step/user approval, if amount is higher than a dedicated value (so 3 steps will be necessary: 1=validation, 2=first approval and 3=second approval if amount is enough).
    Set this to empty if one approval (2 steps) is enough, set it to a very low value (0.1) if a second approval (3 steps) is always required. -UseDoubleApproval=Use a 3 steps approval when amount (without tax) is higher than... +UseDoubleApproval=Utilizzare un'approvazione in 3 passaggi quando l'importo (senza tasse) è superiore a ... WarningPHPMail=WARNING: It is often better to setup outgoing emails to use the email server of your provider instead of the default setup. Some email providers (like Yahoo) do not allow you to send an email from another server than their own server. Your current setup uses the server of the application to send email and not the server of your email provider, so some recipients (the one compatible with the restrictive DMARC protocol), will ask your email provider if they can accept your email and some email providers (like Yahoo) may respond "no" because the server is not theirs, so few of your sent Emails may not be accepted (be careful also of your email provider's sending quota).
    If your Email provider (like Yahoo) has this restriction, you must change Email setup to choose the other method "SMTP server" and enter the SMTP server and credentials provided by your Email provider. WarningPHPMail2=If your email SMTP provider need to restrict email client to some IP addresses (very rare), this is the IP address of the mail user agent (MUA) for your ERP CRM application: %s. WarningPHPMailSPF=If the domain name in your sender email address is protected by SPF (ask you email provider), you must include the following IPs in the SPF record of the DNS of your domain: %s. @@ -481,7 +485,7 @@ PageUrlForDefaultValues=You must enter the relative path of the page URL. If you PageUrlForDefaultValuesCreate=
    Example:
    For the form to create a new third party, it is %s.
    For URL of external modules installed into custom directory, do not include the "custom/", so use path like mymodule/mypage.php and not custom/mymodule/mypage.php.
    If you want default value only if url has some parameter, you can use %s PageUrlForDefaultValuesList=
    Example:
    For the page that lists third parties, it is %s.
    For URL of external modules installed into custom directory, do not include the "custom/" so use a path like mymodule/mypagelist.php and not custom/mymodule/mypagelist.php.
    If you want default value only if url has some parameter, you can use %s AlsoDefaultValuesAreEffectiveForActionCreate=Also note that overwritting default values for form creation works only for pages that were correctly designed (so with parameter action=create or presend...) -EnableDefaultValues=Enable customization of default values +EnableDefaultValues=Abilita l'utilizzo di valori predefiniti personalizzati EnableOverwriteTranslation=Abilita queste traduzioni personalizzate GoIntoTranslationMenuToChangeThis=A translation has been found for the key with this code. To change this value, you must edit it from Home-Setup-translation. WarningSettingSortOrder=Warning, setting a default sort order may result in a technical error when going on the list page if field is an unknown field. If you experience such an error, come back to this page to remove the default sort order and restore default behavior. @@ -492,7 +496,7 @@ WatermarkOnDraftExpenseReports=Bozze delle note spese filigranate AttachMainDocByDefault=Imposta a 1 se vuoi allegare il documento principale alle email come impostazione predefinita (se applicabile) FilesAttachedToEmail=Allega file SendEmailsReminders=Invia promemoria agenda via email -davDescription=Setup a WebDAV server +davDescription=Configurazione di un server WebDAV DAVSetup=Configurazione del modulo DAV DAV_ALLOW_PRIVATE_DIR=Enable the generic private directory (WebDAV dedicated directory named "private" - login required) DAV_ALLOW_PRIVATE_DIRTooltip=The generic private directory is a WebDAV directory anybody can access with its application login/pass. @@ -504,163 +508,163 @@ DAV_ALLOW_ECM_DIRTooltip=The root directory where all files are manually uploade Module0Name=Utenti e gruppi Module0Desc=Gestione utenti/impiegati e gruppi Module1Name=Soggetti terzi -Module1Desc=Companies and contacts management (customers, prospects...) +Module1Desc=Gestione aziende e soggetti terzi (clienti, fornitori e contatti) Module2Name=Commerciale Module2Desc=Gestione commerciale -Module10Name=Accounting (simplified) +Module10Name=Contabilità (semplificata) Module10Desc=Resoconti contabili semplici (spese, ricavi) basati sul contenuto del database. Non usa tabelle di contabilità generale. Module20Name=Proposte Module20Desc=Gestione proposte commerciali Module22Name=Mass Emailings -Module22Desc=Manage bulk emailing +Module22Desc=Gestione invii di posta massiva Module23Name=Energia Module23Desc=Monitoraggio del consumo energetico Module25Name=Ordini Cliente -Module25Desc=Sales order management +Module25Desc=Gestione ordini cliente Module30Name=Fatture -Module30Desc=Management of invoices and credit notes for customers. Management of invoices and credit notes for suppliers +Module30Desc=Gestione delle fatture e note di accredito per i clienti. Gestione di fatture e note di accredito per fornitori Module40Name=Fornitori -Module40Desc=Vendors and purchase management (purchase orders and billing of supplier invoices) +Module40Desc=Gestione fornitori e acquisti (ordini e fatture) Module42Name=Debug Logs Module42Desc=Strumenti di tracciamento (file, syslog, ...). Questi strumenti sono per scopi tecnici/correzione. Module49Name=Redazione Module49Desc=Gestione redattori Module50Name=Prodotti -Module50Desc=Management of Products +Module50Desc=Gestione prodotti Module51Name=Posta massiva Module51Desc=Modulo per la gestione dell'invio massivo di posta cartacea Module52Name=Magazzino -Module52Desc=Stock management (for products only) +Module52Desc=Gestione magazzino prodotti Module53Name=Servizi Module53Desc=Gestione servizi Module54Name=Contratti/Abbonamenti -Module54Desc=Management of contracts (services or recurring subscriptions) +Module54Desc=Gestione contratti (servizi o abbonamenti) Module55Name=Codici a barre Module55Desc=Gestione codici a barre Module56Name=Telefonia Module56Desc=Integrazione telefonia -Module57Name=Bank Direct Debit payments -Module57Desc=Management of Direct Debit payment orders. It includes generation of SEPA file for European countries. +Module57Name=Ordini addebito diretto (SEPA) +Module57Desc=Gestione degli ordini di pagamento SEPA Direct Debit. Comprende anche la generazione di file SEPA per i paesi europei. Module58Name=ClickToDial Module58Desc=Integrazione di un sistema ClickToDial (per esempio Asterisk) Module59Name=Bookmark4u Module59Desc=Aggiungi la possibilità di generare account Bookmark4u da un account Dolibarr Module60Name=Stickers -Module60Desc=Management of stickers +Module60Desc=Gestione stickers Module70Name=Interventi Module70Desc=Gestione Interventi Module75Name=Spese di viaggio e note spese Module75Desc=Gestione spese di viaggio e note spese Module80Name=Spedizioni -Module80Desc=Shipments and delivery note management -Module85Name=Banche & Denaro +Module80Desc=Gestione spedizioni e bolla di consegna +Module85Name=Banche e cassa Module85Desc=Gestione di conti bancari o conti di cassa -Module100Name=External Site -Module100Desc=Add a link to an external website as a main menu icon. Website is shown in a frame under the top menu. +Module100Name=Sito esterno +Module100Desc=Aggiungi un collegamento ad un sito Web esterno come icona del menu principale. Il sito Web sarà visualizzato in un iframe. Module105Name=Mailman e SPIP Module105Desc=Interfaccia Mailman o SPIP per il modulo membri Module200Name=LDAP -Module200Desc=LDAP directory synchronization +Module200Desc=Sincronizzazione directory LDAP Module210Name=Postnuke Module210Desc=Integrazione Postnuke Module240Name=Esportazione dati Module240Desc=Strumento per esportare i dati di Dolibarr (con assistenti) Module250Name=Importazione dati -Module250Desc=Tool to import data into Dolibarr (with assistants) +Module250Desc=Strumento per importare dati in Dolibarr (con assistente) Module310Name=Membri Module310Desc=Gestione membri della fondazione Module320Name=Feed RSS -Module320Desc=Add a RSS feed to Dolibarr pages -Module330Name=Bookmarks & Shortcuts -Module330Desc=Create shortcuts, always accessible, to the internal or external pages to which you frequently access -Module400Name=Projects or Leads -Module400Desc=Management of projects, leads/opportunities and/or tasks. You can also assign any element (invoice, order, proposal, intervention, ...) to a project and get a transversal view from the project view. +Module320Desc=Aggiungi un feed RSS alle pagine Dolibarr +Module330Name=Segnalibri e scorciatoie +Module330Desc=Crea collegamenti, sempre accessibili, alle pagine interne o esterne a cui accedi più frequentemente +Module400Name=Progetti o Opportunità +Module400Desc=Gestione di progetti ed opportunità. Puoi assegnare ogni elemento (fattura, ordini, proposte commerciali, interventi, ...) ad un progetto ed avere una vista trasversale dalla scheda del progetto Module410Name=Calendario web Module410Desc=Integrazione calendario web -Module500Name=Taxes & Special Expenses -Module500Desc=Management of other expenses (sale taxes, social or fiscal taxes, dividends, ...) +Module500Name=Tasse e spese speciali +Module500Desc=Amministrazione delle spese speciali quali tasse, contributi sociali, dividendi e salari. Module510Name=Stipendi -Module510Desc=Record and track employee payments +Module510Desc=Gestione salari e pagamenti dei dipendenti Module520Name=Prestiti Module520Desc=Gestione dei prestiti -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 +Module600Name=Notifiche di eventi aziendali +Module600Desc=Inviare notifiche EMail (generate da eventi aziendali) ad utenti (impostazione definita per ogni utente) o contatti di terze parti (impostazione definita per ogni terza parte) o a email predefinite 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 -Module610Desc=Creation of product variants (color, size etc.) +Module610Desc=Creazione delle varianti di prodotto (colore, taglia etc.) Module700Name=Donazioni Module700Desc=Gestione donazioni -Module770Name=Expense Reports -Module770Desc=Manage expense reports claims (transportation, meal, ...) -Module1120Name=Vendor Commercial Proposals -Module1120Desc=Request vendor commercial proposal and prices +Module770Name=Rimborso spese +Module770Desc=Gestione delle richieste di rimborso spese (trasporti, pasti, ...) +Module1120Name=Richieste quotazioni fornitore +Module1120Desc=Gestione delle richieste di offerta e quotazioni verso i fornitori Module1200Name=Mantis Module1200Desc=Integrazione Mantis Module1520Name=Generazione dei documenti -Module1520Desc=Mass email document generation +Module1520Desc=Generazione di massa documenti di posta elettronica Module1780Name=Tag/categorie Module1780Desc=Crea tag / categorie (prodotti, clienti, fornitori, contatti o membri) Module2000Name=FCKeditor -Module2000Desc=Allow text fields to be edited/formatted using CKEditor (html) +Module2000Desc=Permette di usare un editor avanzato (CKEditor) per alcune aree di testo Module2200Name=Prezzi dinamici -Module2200Desc=Use maths expressions for auto-generation of prices +Module2200Desc=Utilizza espressioni matematiche per la generazione automatica dei prezzi Module2300Name=Processi pianificati Module2300Desc=Gestione delle operazioni pianificate Module2400Name=Eventi/Agenda -Module2400Desc=Track events. Log automatic events for tracking purposes or record manual events or meetings. This is the principal module for good Customer or Vendor Relationship Management. +Module2400Desc=Gestione eventi/compiti e ordine del giorno. Registra manualmente eventi nell'agenda o consenti all'applicazione di registrare eventi automaticamente a scopo di monitoraggio. Questo è il modulo principale per una buona gestione delle relazioni con clienti e fornitori. Module2500Name=DMS / ECM -Module2500Desc=Document Management System / Electronic Content Management. Automatic organization of your generated or stored documents. Share them when you need. +Module2500Desc=Sistema di gestione documentale / Gestione elettronica dei contenuti. Organizzazione automatica dei documenti generati o archiviati. Condivisione con chi ne ha bisogno. Module2600Name=API/Web services (SOAP server) Module2600Desc=Attiva il server SOAP che fornisce i servizi di API Module2610Name=API/Web services (REST server) Module2610Desc=Attiva il server REST che fornisce i servizi di API Module2660Name=Chiamata WebServices (SOAP client) -Module2660Desc=Enable the Dolibarr web services client (Can be used to push data/requests to external servers. Only Purchase orders are currently supported.) +Module2660Desc=Abilitare il client dei Web service Dolibarr (può essere utilizzato per inviare dati / richieste a server esterni. Attualmente sono supportati solo gli ordini di acquisto). Module2700Name=Gravatar -Module2700Desc=Use online Gravatar service (www.gravatar.com) to show photo of users/members (found with their emails). Needs Internet access +Module2700Desc=Usa il servizio online Gravatar (www.gravatar.com) per mostrare le foto degli utenti/membri. Necessita dell'accesso a Internet Module2800Desc=Client FTP Module2900Name=GeoIPMaxmind Module2900Desc=Localizzazione degli accessi tramite GeoIP Maxmind -Module3200Name=Unalterable Archives -Module3200Desc=Enable an unalterable log of business events. Events are archived in real-time. The log is a read-only table of chained events that can be exported. This module may be mandatory for some countries. +Module3200Name=Archivi inalterabili +Module3200Desc=Abilita un registro inalterabile degli eventi aziendali. Gli eventi sono archiviati in tempo reale. Il registro è una tabella di sola lettura degli eventi concatenati che possono essere esportati. Questo modulo potrebbe essere obbligatorio per alcuni paesi. Module4000Name=Risorse umane -Module4000Desc=Human resources management (management of department, employee contracts and feelings) +Module4000Desc=Gestione delle risorse umane (gestione dei dipartimenti e contratti dipendenti) Module5000Name=Multiazienda Module5000Desc=Permette la gestione di diverse aziende Module6000Name=Flusso di lavoro -Module6000Desc=Workflow management (automatic creation of object and/or automatic status change) +Module6000Desc=Gestione flussi di lavoro (creazione automatica di oggetti e / o cambio di stati automatico) Module10000Name=Siti web -Module10000Desc=Create websites (public) with a WYSIWYG editor. Just setup your web server (Apache, Nginx, ...) to point to the dedicated Dolibarr directory to have it online on the internet with your own domain name. -Module20000Name=Leave Request Management -Module20000Desc=Define and track employee leave requests -Module39000Name=Product Lots -Module39000Desc=Lots, serial numbers, eat-by/sell-by date management for products +Module10000Desc=Crea siti Web (pubblici) con un editor WYSIWYG. Si tratta di un CMS orientato a webmaster o sviluppatori (richiesta conoscenza di linguaggio HTML e CSS). Basta configurare il proprio server Web (Apache, Nginx, ...) in modo che punti alla directory Dolibarr dedicata per averlo online su Internet con il proprio nome di dominio. +Module20000Name=Richieste ferie / permesso +Module20000Desc=Gestione delle richieste di ferie e permessi dei dipendenti aziendali +Module39000Name=Lotti di prodotto +Module39000Desc=Lotti, numeri seriali, gestione delle date di scadenza dei prodotti Module40000Name=Multicurrency -Module40000Desc=Use alternative currencies in prices and documents +Module40000Desc=Usa valute alternative in prezzi e documenti Module50000Name=PayBox -Module50000Desc=Offer customers a PayBox online payment page (credit/debit cards). This can be used to allow your customers to make ad-hoc payments or payments related to a specific Dolibarr object (invoice, order etc...) +Module50000Desc=Modulo per offrire una pagina di pagamento che accetti pagamenti con carte di credito o debito via PayBox. Può essere usato per tutti i pagamenti dei clienti o solo per alcune specifiche tipologie di pagamenti in Dolibarr (fatture, ordini, ...) Module50100Name=Punti vendita SimplePOS Module50100Desc=Modulo per la creazione di un punto vendita SimplePOS (POS semplice) Module50150Name=Punti vendita TakePOS -Module50150Desc=Point of Sale module TakePOS (touchscreen POS, for shops, bars or restaurants). +Module50150Desc=Modulo Punto vendita TakePOS (touchscreen POS). Module50200Name=Paypal -Module50200Desc=Offer customers a PayPal online payment page (PayPal account or credit/debit cards). This can be used to allow your customers to make ad-hoc payments or payments related to a specific Dolibarr object (invoice, order etc...) +Module50200Desc=Modulo per offrire una pagina di pagamento che accetti pagamenti PayPal (carte di credito/debito o credito PayPal). Può essere usato per tutti i pagamenti dei clienti o solo per alcune specifiche tipologie di pagamenti in Dolibarr (fatture, ordini, ...) Module50300Name=Stripe -Module50300Desc=Offer customers a Stripe online payment page (credit/debit cards). This can be used to allow your customers to make ad-hoc payments or payments related to a specific Dolibarr object (invoice, order etc...) -Module50400Name=Accounting (double entry) -Module50400Desc=Accounting management (double entries, support general and auxiliary ledgers). Export the ledger in several other accounting software formats. +Module50300Desc=Offri ai clienti una pagina di pagamento online Stripe (carte di credito / debito). Questo modulo può essere usato per consentire ai tuoi clienti di effettuare pagamenti ad-hoc o pagamenti relativi a uno specifico oggetto Dolibarr (fattura, ordine ecc ...) +Module50400Name=Contabilità (partita doppia) +Module50400Desc=Gestione contabile (partita doppia, supporto per libri contabili principali e ausiliari). Esportazione del libro mastro in diversi altri formati per software contabili. Module54000Name=PrintIPP Module54000Desc=Direct print (without opening the documents) using Cups IPP interface (Printer must be visible from server, and CUPS must be installed on server). Module55000Name=Sondaggio, Indagine o Votazione -Module55000Desc=Create online polls, surveys or votes (like Doodle, Studs, RDVz etc...) +Module55000Desc=Modulo per creare sondaggi, indagini o feedback online (Doodle, Studs, Rdvz o simili) Module59000Name=Margini Module59000Desc=Modulo per gestire margini Module60000Name=Commissioni Module60000Desc=Modulo per gestire commissioni Module62000Name=Import-Export -Module62000Desc=Add features to manage Incoterms +Module62000Desc=Aggiunge funzioni per la gestione Incoterm Module63000Name=Risorse -Module63000Desc=Manage resources (printers, cars, rooms, ...) for allocating to events +Module63000Desc=Gestione risorse (stampanti, automobili, locali, ...) e loro utilizzo all'interno degli eventi Permission11=Vedere le fatture attive Permission12=Creare fatture attive Permission13=Annullare le fatture attive @@ -715,10 +719,10 @@ Permission109=Eliminare spedizioni Permission111=Vedere i conti bancari Permission112=Creare/modificare/cancellare e confrontare operazioni bancarie Permission113=Imposta conti finanziari (crea, gestire le categorie) -Permission114=Reconcile transactions +Permission114=Riconciliare transazioni Permission115=Operazioni di esportazione ed estratti conto Permission116=Trasferimenti tra conti -Permission117=Manage checks dispatching +Permission117=Gestire il deposito di assegni Permission121=Vedere soggetti terzi collegati all'utente Permission122=Creare/modificare terzi legati all'utente Permission125=Eliminare terzi legati all'utente @@ -735,9 +739,9 @@ Permission154=Record Credits/Rejections of direct debit payment orders Permission161=Leggi contratti / abbonamenti Permission162=Crea/modifica contratti/abbonamenti Permission163=Attiva un servizio/sottoscrizione di un contratto -Permission164=Disable a service/subscription of a contract +Permission164=Disattivare un servizio di un contratto Permission165=Elimina contratti / abbonamenti -Permission167=Esprta contratti +Permission167=Esportare contratti Permission171=Vedi viaggi e spese (propri e i suoi subordinati) Permission172=Crea/modifica nota spese Permission173=Elimina nota spese @@ -799,7 +803,7 @@ Permission300=Read barcodes Permission301=Create/modify barcodes Permission302=Delete barcodes Permission311=Vedere servizi -Permission312=Assign service/subscription to contract +Permission312=Assegnare un servizio a un contratto Permission331=Vedere segnalibri Permission332=Creare/modificare segnalibri Permission333=Eliminare segnalibri @@ -816,7 +820,7 @@ Permission401=Vedere sconti Permission402=Creare/modificare sconti Permission403=Convalidare sconti Permission404=Eliminare sconti -Permission430=Use Debug Bar +Permission430=Usa la barra di debug Permission511=Read payments of salaries Permission512=Create/modify payments of salaries Permission514=Delete payments of salaries @@ -838,11 +842,11 @@ Permission701=Vedere donazioni Permission702=Creare/modificare donazioni Permission703=Eliminare donazioni Permission771=Visualizzare le note spese (tue e dei tuoi subordinati) -Permission772=Create/modify expense reports -Permission773=Delete expense reports -Permission774=Read all expense reports (even for user not subordinates) -Permission775=Approve expense reports -Permission776=Pay expense reports +Permission772=Creare / modificare le note spese +Permission773=Eliminare le note spese +Permission774=Vedere tutte le note spese (anche per utenti non subordinati) +Permission775=Approvare le note spese +Permission776=Pagare le note spese Permission779=Esporta note spese Permission1001=Vedere magazzino Permission1002=Crea/modifica magazzini @@ -870,18 +874,18 @@ Permission1188=Delete purchase orders Permission1190=Approve (second approval) purchase orders Permission1201=Ottieni il risultato di un esportazione Permission1202=Creare/Modificare esportazioni -Permission1231=Read vendor invoices -Permission1232=Create/modify vendor invoices -Permission1233=Validate vendor invoices -Permission1234=Delete vendor invoices -Permission1235=Send vendor invoices by email +Permission1231=Visualizzare le fatture fornitori +Permission1232=Creare / modificare fatture fornitore +Permission1233=Convalidare fatture fornitore +Permission1234=Eliminare fatture fornitore +Permission1235=Inviare fatture fornitore tramite e-mail Permission1236=Export vendor invoices, attributes and payments 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=Esporta Ordini Cliente e attributi -Permission2401=Read actions (events or tasks) linked to his user account (if owner of event or just assigned to) +Permission2401=Leggere le azioni (eventi o attività) collegate al suo account utente (se proprietario dell'evento) Permission2402=Creare/modificare azioni (eventi o compiti) personali Permission2403=Cancellare azioni (eventi o compiti) personali Permission2411=Vedere azioni (eventi o compiti) altrui @@ -908,7 +912,7 @@ Permission20002=Create/modify your leave requests (your leave and those of your Permission20003=Eliminare le richieste di ferie Permission20004=Read all leave requests (even of user not subordinates) Permission20005=Create/modify leave requests for everybody (even of user not subordinates) -Permission20006=Admin leave requests (setup and update balance) +Permission20006=Amministrazione richieste di ferie/permessi (impostazione e aggiornamento del bilancio) Permission20007=Approvare le richieste di ferie Permission23001=Leggi lavoro pianificato Permission23002=Crea / Aggiorna lavoro pianificato @@ -923,7 +927,7 @@ Permission50412=Write/Edit operations in ledger Permission50414=Delete operations in ledger Permission50415=Delete all operations by year and journal in ledger Permission50418=Export operations of the ledger -Permission50420=Report and export reports (turnover, balance, journals, ledger) +Permission50420=Report e report sulle esportazioni (fatturato, saldo, giornali, libro mastro) Permission50430=Define and close a fiscal period Permission50440=Manage chart of accounts, setup of accountancy Permission51001=Read assets @@ -943,25 +947,25 @@ Permission63004=Collega le risorse agli eventi DictionaryCompanyType=Tipo di soggetto terzo DictionaryCompanyJuridicalType=Entità legali di terze parti DictionaryProspectLevel=Liv. cliente potenziale -DictionaryCanton=States/Provinces +DictionaryCanton=Stati / Province DictionaryRegion=Regioni DictionaryCountry=Paesi DictionaryCurrency=Valute -DictionaryCivility=Title of civility +DictionaryCivility=Titoli personali e professionali DictionaryActions=Tipi di azioni/eventi DictionarySocialContributions=Types of social or fiscal taxes DictionaryVAT=Aliquote IVA o Tasse di vendita -DictionaryRevenueStamp=Amount of tax stamps +DictionaryRevenueStamp=Ammontare dei valori bollati DictionaryPaymentConditions=Termini di Pagamento -DictionaryPaymentModes=Payment Modes +DictionaryPaymentModes=Tipi di pagamento DictionaryTypeContact=Tipi di contatti/indirizzi DictionaryTypeOfContainer=Website - Type of website pages/containers DictionaryEcotaxe=Ecotassa (WEEE) DictionaryPaperFormat=Formati di carta DictionaryFormatCards=Card formats -DictionaryFees=Expense report - Types of expense report lines +DictionaryFees=Note spesa - Tipi di righe delle note spesa DictionarySendingMethods=Metodi di spedizione -DictionaryStaff=Number of Employees +DictionaryStaff=Numero di dipendenti DictionaryAvailability=Tempi di consegna DictionaryOrderMethods=Metodi di ordinazione DictionarySource=Origine delle proposte/ordini @@ -973,21 +977,22 @@ DictionaryUnits=Unità DictionaryMeasuringUnits=Unità di misura DictionarySocialNetworks=Social networks DictionaryProspectStatus=Stato cliente potenziale -DictionaryHolidayTypes=Types of leave -DictionaryOpportunityStatus=Lead status for project/lead -DictionaryExpenseTaxCat=Expense report - Transportation categories -DictionaryExpenseTaxRange=Expense report - Range by transportation category +DictionaryHolidayTypes=Tipi di ferie/permessi +DictionaryOpportunityStatus=Stato opportunità per progetto/clienti potenziali +DictionaryExpenseTaxCat=Note spesa - Categorie di trasporto +DictionaryExpenseTaxRange=Note spesa: intervallo per categoria di trasporto SetupSaved=Impostazioni salvate SetupNotSaved=Impostazioni non salvate -BackToModuleList=Back to Module list -BackToDictionaryList=Back to Dictionaries list +BackToModuleList=Torna all'elenco dei moduli +BackToDictionaryList=Torna all'elenco dei dizionari TypeOfRevenueStamp=Type of tax stamp -VATManagement=Sales Tax Management -VATIsUsedDesc=By default when creating prospects, invoices, orders etc. the Sales Tax rate follows the active standard rule:
    If the seller is not subject to Sales tax, then Sales tax defaults to 0. End of rule.
    If the (seller's country = buyer's country), then the Sales tax by default equals the Sales tax of the product in the seller's country. End of rule.
    If the seller and buyer are both in the European Community and goods are transport-related products (haulage, shipping, airline), the default VAT is 0. This rule is dependant on the seller's country - please consult with your accountant. The VAT should be paid by the buyer to the customs office in their country and not to the seller. End of rule.
    If the seller and buyer are both in the European Community and the buyer is not a company (with a registered intra-Community VAT number) then the VAT defaults to the VAT rate of the seller's country. End of rule.
    If the seller and buyer are both in the European Community and the buyer is a company (with a registered intra-Community VAT number), then the VAT is 0 by default. End of rule.
    In any other case the proposed default is Sales tax=0. End of rule. -VATIsNotUsedDesc=By default the proposed Sales tax is 0 which can be used for cases like associations, individuals or small companies. +VATManagement=Gestione imposte sulle vendite +VATIsUsedDesc=Per impostazione predefinita quando si creano proposte commerciali, fatture, ordini ecc., L'aliquota IVA segue la regola standard attiva:
    Se il venditore non è soggetto all'imposta sulle vendite, per impostazione predefinita l'imposta sulle vendite è 0. Fine della regola.
    Se il (Paese del fornitore = Paese dell'acquirente), l'imposta sulle vendite per impostazione predefinita è uguale all'imposta sulle vendite del prodotto nel paese del fornitore. Fine della regola
    Se il fornitore e l'acquirente sono entrambi nella Comunità Europea e le merci sono prodotti relativi al trasporto (trasporto, spedizione, compagnia aerea), l'IVA di default è 0. Questa regola dipende dal paese del fornitore - consultare il proprio commercialista. L'IVA deve essere pagata dall'acquirente all'ufficio doganale del proprio paese e non al venditore. Fine della regola
    Se il fornitore e l'acquirente sono entrambi nella Comunità Europea e l'acquirente non è una società (con un numero di partita IVA intracomunitaria registrato), l'IVA si imposta automaticamente sull'aliquota IVA del paese del fornitore. Fine della regola
    Se il fornitore e l'acquirente sono entrambi nella Comunità Europea e l'acquirente è una società (con una partita IVA intracomunitaria registrata), l'IVA è 0 per impostazione predefinita. Fine della regola
    In tutti gli altri casi il valore predefinito proposto è IVA = 0. Fine della regola +VATIsNotUsedDesc=Per impostazione predefinita, l'imposta sulle vendite proposta è 0 che può essere utilizzata per casi come associazioni, privati o piccole aziende. VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=Tariffa LocalTax1IsNotUsed=Non usare seconda tassa LocalTax1IsUsedDesc=Use a second type of tax (other than first one) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices LocalTax2IsNotUsedDescES=Per impostazione predefinita la proposta di IRPF è 0. Fine della regola. LocalTax2IsUsedExampleES=In Spagna, liberi professionisti e freelance che forniscono servizi e le aziende che hanno scelto il regime fiscale modulare. LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=Reports on local taxes CalcLocaltax1=Acquisti-vendite CalcLocaltax1Desc=Local Taxes reports are calculated with the difference between localtaxes sales and localtaxes purchases @@ -1018,11 +1026,12 @@ CalcLocaltax2=Acquisti CalcLocaltax2Desc=Local Taxes reports are the total of localtaxes purchases CalcLocaltax3=Vendite CalcLocaltax3Desc=Local Taxes reports are the total of localtaxes sales +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=Descrizione (utilizzata in tutti i documenti per cui non esiste la traduzione) LabelOnDocuments=Descrizione sul documento -LabelOrTranslationKey=Label or translation key -ValueOfConstantKey=Value of a configuration constant -NbOfDays=No. of days +LabelOrTranslationKey=Etichetta o chiave di traduzione +ValueOfConstantKey=Valore di una costante +NbOfDays=Numero di giorni AtEndOfMonth=Alla fine del mese CurrentNext=Corrente/Successivo Offset=Scostamento @@ -1059,23 +1068,23 @@ Skin=Tema DefaultSkin=Skin di default MaxSizeList=Lunghezza massima elenchi DefaultMaxSizeList=Lunghezza massima predefinita elenchi -DefaultMaxSizeShortList=Default max length for short lists (i.e. in customer card) +DefaultMaxSizeShortList=Massima lunghezza di default per gli elenchi brevi (es in scheda cliente) MessageOfDay=Messaggio del giorno MessageLogin=Messaggio per la pagina di login LoginPage=Pagina di login BackgroundImageLogin=Immagine di sfondo PermanentLeftSearchForm=Modulo di ricerca permanente nel menu di sinistra DefaultLanguage=Lingua predefinita (codice lingua) -EnableMultilangInterface=Enable multilanguage support +EnableMultilangInterface=Abilita supporto multilingua EnableShowLogo=Abilita la visualizzazione del logo CompanyInfo=Società/Organizzazione -CompanyIds=Company/Organization identities +CompanyIds=Informazioni società/fondazione CompanyName=Nome CompanyAddress=Indirizzo CompanyZip=CAP CompanyTown=Città CompanyCountry=Paese -CompanyCurrency=Principali valute +CompanyCurrency=Valuta principale CompanyObject=Mission della società IDCountry=ID paese Logo=Logo @@ -1091,26 +1100,26 @@ Alerts=Avvisi e segnalazioni DelaysOfToleranceBeforeWarning=Delay before displaying a warning alert for: DelaysOfToleranceDesc=Set the delay before an alert icon %s is shown onscreen for the late element. Delays_MAIN_DELAY_ACTIONS_TODO=Planned events (agenda events) not completed -Delays_MAIN_DELAY_PROJECT_TO_CLOSE=Project not closed in time +Delays_MAIN_DELAY_PROJECT_TO_CLOSE=Progetto non chiuso in tempo Delays_MAIN_DELAY_TASKS_TODO=Planned task (project tasks) not completed Delays_MAIN_DELAY_ORDERS_TO_PROCESS=Order not processed Delays_MAIN_DELAY_SUPPLIER_ORDERS_TO_PROCESS=Purchase order not processed -Delays_MAIN_DELAY_PROPALS_TO_CLOSE=Proposal not closed -Delays_MAIN_DELAY_PROPALS_TO_BILL=Proposal not billed +Delays_MAIN_DELAY_PROPALS_TO_CLOSE=Proposta non chiusa +Delays_MAIN_DELAY_PROPALS_TO_BILL=Proposta non fatturata Delays_MAIN_DELAY_NOT_ACTIVATED_SERVICES=Service to activate Delays_MAIN_DELAY_RUNNING_SERVICES=Expired service -Delays_MAIN_DELAY_SUPPLIER_BILLS_TO_PAY=Unpaid vendor invoice +Delays_MAIN_DELAY_SUPPLIER_BILLS_TO_PAY=Fattura fornitore non pagata Delays_MAIN_DELAY_CUSTOMER_BILLS_UNPAYED=Unpaid customer invoice 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 +Delays_MAIN_DELAY_EXPENSEREPORTS=Note spese da approvare Delays_MAIN_DELAY_HOLIDAYS=Invia richieste da approvare 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. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. +SetupDescription5=Altre voci di menu consentono la gestione di parametri opzionali. LogEvents=Eventi di audit di sicurezza Audit=Audit InfoDolibarr=Informazioni su Dolibarr @@ -1127,11 +1136,11 @@ SecurityEventsPurged=Eventi di sicurezza eliminati LogEventDesc=Enable logging for specific security events. Administrators the log via menu %s - %s. Warning, this feature can generate a large amount of data in the database. AreaForAdminOnly=I parametri di setup possono essere definiti solo da utenti di tipo amministratore. SystemInfoDesc=Le informazioni di sistema sono dati tecnici visibili in sola lettura e solo dagli amministratori. -SystemAreaForAdminOnly=This area is available to administrator users only. Dolibarr user permissions cannot change this restriction. -CompanyFundationDesc=Edit the information of the company/entity. Click on "%s" or "%s" button at the bottom of the page. -AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. +SystemAreaForAdminOnly=Questa area è disponibile solo per gli utenti amministratori. Le autorizzazioni utente Dolibarr non possono modificare questa limitazione. +CompanyFundationDesc=Modifica le informazioni dell'azienda / fondazione. Fai clic sul pulsante "%s" nella parte inferiore della pagina. +AccountantDesc=Se hai un contabile / contabile esterno, puoi modificare qui le sue informazioni. AccountantFileNumber=Accountant code -DisplayDesc=Parameters affecting the look and behaviour of Dolibarr can be modified here. +DisplayDesc=Qui è possibile scegliere i parametri relativi all'aspetto di Dolibarr AvailableModules=Moduli disponibili ToActivateModule=Per attivare i moduli, andare nell'area Impostazioni (Home->Impostazioni->Moduli). SessionTimeOut=Timeout delle sessioni @@ -1144,16 +1153,16 @@ TriggerAlwaysActive=I trigger in questo file sono sempre attivi, indipendentemen TriggerActiveAsModuleActive=I trigger in questo file sono attivi se il modulo %s è attivo. GeneratedPasswordDesc=Choose the method to be used for auto-generated passwords. DictionaryDesc=Inserire tutti i dati di riferimento. È possibile aggiungere i propri valori a quelli di default. -ConstDesc=This page allows you to edit (override) parameters not available in other pages. These are mostly reserved parameters for developers/advanced troubleshooting. For a full list of the parameters available see here. +ConstDesc=Questa pagina consente di modificare (sovrascrivere) i parametri non disponibili in altre pagine. Questi sono parametri principalmente riservati agli sviluppatori o per la risoluzione avanzata dei problemi. MiscellaneousDesc=Definire qui tutti gli altri parametri relativi alla sicurezza. LimitsSetup=Limiti/impostazioni di precisione -LimitsDesc=You can define limits, precisions and optimizations used by Dolibarr here -MAIN_MAX_DECIMALS_UNIT=Max. decimals for unit prices -MAIN_MAX_DECIMALS_TOT=Max. decimals for total prices -MAIN_MAX_DECIMALS_SHOWN=Max. decimals for prices shown on screen. Add an ellipsis ... after this parameter (e.g. "2...") if you want to see "..." suffixed to the truncated price. -MAIN_ROUNDING_RULE_TOT=Step of rounding range (for countries where rounding is done on something other than base 10. For example, put 0.05 if rounding is done by 0.05 steps) +LimitsDesc=Da qui è possibile definire i limiti e la precisione utilizzati da Dolibarr. +MAIN_MAX_DECIMALS_UNIT=Limite massimo di decimali per i prezzi unitari +MAIN_MAX_DECIMALS_TOT=Limite massimo di decimali per il totale dei prezzi. +MAIN_MAX_DECIMALS_SHOWN=Limite massimo dei decimali per i prezzi visualizzati a schermo (Aggiungi ... dopo tale numero (es. "2...") se vuoi visualizzare tre puntini per indicare il troncamento del numero). +MAIN_ROUNDING_RULE_TOT=Regola per l'arrotondamento (per i pochi paesi in cui l'arrotondamento non è calcolato in base 10). Per esempio, inserisci 0.05 se l'arrotondamento viene fatto a step di 0.05 UnitPriceOfProduct=Prezzo unitario netto di un prodotto -TotalPriceAfterRounding=Total price (excl/vat/incl tax) after rounding +TotalPriceAfterRounding=Prezzo totale (IVA esclusa / IVA inclusa) dopo l'arrotondamento ParameterActiveForNextInputOnly=Parametro valido esclusivamente per il prossimo inserimento NoEventOrNoAuditSetup=No security event has been logged. This is normal if Audit has not been enabled in the "Setup - Security - Events" page. NoEventFoundWithCriteria=No security event has been found for this search criteria. @@ -1170,17 +1179,17 @@ RestoreDesc3=Restore the database structure and data from a backup dump file int RestoreMySQL=Importa MySQL ForcedToByAModule= Questa regola è impsotata su %s da un modulo attivo PreviousDumpFiles=Existing backup files -PreviousArchiveFiles=Existing archive files -WeekStartOnDay=First day of the week +PreviousArchiveFiles=Archivio files esistente +WeekStartOnDay=Primo giorno della settimana RunningUpdateProcessMayBeRequired=Running the upgrade process seems to be required (Program version %s differs from Database version %s) YouMustRunCommandFromCommandLineAfterLoginToUser=È necessario eseguire questo comando dal riga di comando dopo il login in una shell con l'utente %s. YourPHPDoesNotHaveSSLSupport=Il PHP del server non supporta SSL DownloadMoreSkins=Scarica altre skin SimpleNumRefModelDesc=Returns the reference number with format %syymm-nnnn where yy is year, mm is month and nnnn is sequential with no reset -ShowProfIdInAddress=Show professional id with addresses -ShowVATIntaInAddress=Hide intra-Community VAT number with addresses +ShowProfIdInAddress=Nei documenti mostra identità professionale completa di: +ShowVATIntaInAddress=Nascondi il numero di partita IVA intracomunitaria negli indirizzi TranslationUncomplete=Traduzione incompleta -MAIN_DISABLE_METEO=Disable meteorological view +MAIN_DISABLE_METEO=Disabilita visualizzazione meteo MeteoStdMod=Standard mode MeteoStdModEnabled=Standard mode enabled MeteoPercentageMod=Modalità percentuale @@ -1188,31 +1197,31 @@ MeteoPercentageModEnabled=Percentage mode enabled MeteoUseMod=Clicca per usare %s TestLoginToAPI=Test login per API ProxyDesc=Some features of Dolibarr require internet access. Define here the internet connection parameters such as access through a proxy server if necessary. -ExternalAccess=External/Internet Access +ExternalAccess=Accesso esterno / Internet MAIN_PROXY_USE=Use a proxy server (otherwise access is direct to the internet) MAIN_PROXY_HOST=Proxy server: Name/Address MAIN_PROXY_PORT=Proxy server: Port MAIN_PROXY_USER=Proxy server: Login/User MAIN_PROXY_PASS=Proxy server: Password -DefineHereComplementaryAttributes=Define here any additional/custom attributes that you want to be included for: %s +DefineHereComplementaryAttributes=Definire gli eventuali attributi aggiuntivi / campi personalizzati che devono essere inclusi negli oggetti: %s ExtraFields=Campi extra -ExtraFieldsLines=Complementary attributes (lines) -ExtraFieldsLinesRec=Complementary attributes (templates invoices lines) -ExtraFieldsSupplierOrdersLines=Complementary attributes (order lines) -ExtraFieldsSupplierInvoicesLines=Complementary attributes (invoice lines) +ExtraFieldsLines=Attributi complementari (righe) +ExtraFieldsLinesRec=Attributi complementari (righe di template di fattura) +ExtraFieldsSupplierOrdersLines=Attributi complementari (righe ordine) +ExtraFieldsSupplierInvoicesLines=Attributi complementari (righe di fattura) ExtraFieldsThirdParties=Attributi complementari (soggetto terzo) -ExtraFieldsContacts=Complementary attributes (contacts/address) +ExtraFieldsContacts=Attributi complementari (contatti / indirizzo) ExtraFieldsMember=Attributi Complementari (membri) ExtraFieldsMemberType=Attributi Complementari (tipo di membro) ExtraFieldsCustomerInvoices=Attributi aggiuntivi (fatture) -ExtraFieldsCustomerInvoicesRec=Complementary attributes (templates invoices) +ExtraFieldsCustomerInvoicesRec=Attributi complementari (template di fattura) ExtraFieldsSupplierOrders=Attributi Complementari (ordini) ExtraFieldsSupplierInvoices=Attributi Complementari (fatture) ExtraFieldsProject=Attributi Complementari (progetti) ExtraFieldsProjectTask=Attributi Complementari (attività) -ExtraFieldsSalaries=Complementary attributes (salaries) +ExtraFieldsSalaries=Attributi complementari (stipendi) ExtraFieldHasWrongValue=L'attributo %s ha un valore errato. -AlphaNumOnlyLowerCharsAndNoSpace=only alphanumericals and lower case characters without space +AlphaNumOnlyLowerCharsAndNoSpace=solo caratteri alfanumerici e caratteri minuscoli senza spazio 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). PathToDocuments=Percorso documenti PathDirectory=Percorso directory @@ -1233,7 +1242,7 @@ TotalNumberOfActivatedModules=Applicazioni/moduli attivi: %s / %s YouMustEnableOneModule=Devi abilitare almeno un modulo ClassNotFoundIntoPathWarning=Class %s not found in PHP path YesInSummer=Si in estate -OnlyFollowingModulesAreOpenedToExternalUsers=Note, only the following modules are available to external users (irrespective of the permissions of such users) and only if permissions are granted:
    +OnlyFollowingModulesAreOpenedToExternalUsers=Nota, solo i seguenti moduli sono disponibili per gli utenti esterni (indipendentemente dalle autorizzazioni di tali utenti) e solo se le autorizzazioni sono concesse:
    SuhosinSessionEncrypt=Sessioni salvate con criptazione tramite Suhosin ConditionIsCurrently=La condizione corrente è %s YouUseBestDriver=You use driver %s which is the best driver currently available. @@ -1249,7 +1258,7 @@ 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. -FieldEdition=Edition of field %s +FieldEdition=Modifica del campo %s FillThisOnlyIfRequired=Per esempio: +2 (compilare solo se ci sono problemi di scostamento del fuso orario) GetBarCode=Ottieni codice a barre NumberingModules=Numbering models @@ -1261,16 +1270,19 @@ SetupPerso=Secondo la tua configurazione PasswordPatternDesc=Password pattern description ##### Users setup ##### RuleForGeneratedPasswords=Rules to generate and validate passwords -DisableForgetPasswordLinkOnLogonPage=Do not show the "Password Forgotten" link on the Login page +DisableForgetPasswordLinkOnLogonPage=Non mostrare il link "Password dimenticata?" nella pagina di accesso UsersSetup=Impostazioni modulo utenti -UserMailRequired=Email required to create a new user +UserMailRequired=È obbligatorio inserire un indirizzo email per creare un nuovo utente +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### HRMSetup=Impostazioni modulo risorse umane ##### Company setup ##### CompanySetup=Impostazioni modulo aziende -CompanyCodeChecker=Options for automatic generation of customer/vendor codes -AccountCodeManager=Options for automatic generation of customer/vendor accounting codes -NotificationsDesc=Email notifications can be sent automatically for some Dolibarr events.
    Recipients of notifications can be defined: +CompanyCodeChecker=Opzioni per la generazione automatica di codici cliente / fornitore +AccountCodeManager=Opzioni per la generazione automatica di codici contabili cliente / fornitore +NotificationsDesc=Le notifiche e-mail possono essere inviate automaticamente per alcuni eventi Dolibarr.
    I destinatari delle notifiche possono essere definiti: NotificationsDescUser=* per user, one user at a time. NotificationsDescContact=* per third-party contacts (customers or vendors), one contact at a time. NotificationsDescGlobal=* or by setting global email addresses in this setup page. @@ -1301,16 +1313,16 @@ SuggestPaymentByChequeToAddress=Suggest payment by check to FreeLegalTextOnInvoices=Testo libero sulle fatture WatermarkOnDraftInvoices=Bozze delle fatture filigranate (nessuna filigrana se vuoto) PaymentsNumberingModule=Modello per la numerazione dei documenti -SuppliersPayment=Vendor payments -SupplierPaymentSetup=Vendor payments setup +SuppliersPayment=Pagamenti fornitori +SupplierPaymentSetup=Impostazioni pagamenti fornitori ##### Proposals ##### PropalSetup=Impostazioni proposte commerciali ProposalsNumberingModules=Modelli di numerazione della proposta commerciale ProposalsPDFModules=Modelli per pdf proposta commerciale -SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined for proposal +SuggestedPaymentModesIfNotDefinedInProposal=Suggerire le modalità predefinite di pagamento delle proposte, se non definite già nella proposta FreeLegalTextOnProposal=Testo libero sulle proposte commerciali WatermarkOnDraftProposal=Bozze dei preventivi filigranate (nessuna filigrana se vuoto) -BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal +BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Richiedi conto bancario di destinazione sulle proposte ##### SupplierProposal ##### SupplierProposalSetup=Price requests suppliers module setup SupplierProposalNumberingModules=Price requests suppliers numbering models @@ -1322,6 +1334,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 ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggerire le modalità predefinite di pagamento degli ordini, se non definite già nell'ordine OrdersSetup=Impostazione gestione Ordini Cliente OrdersNumberingModules=Modelli di numerazione ordini OrdersModelModule=Modelli per ordini in pdf @@ -1347,7 +1360,7 @@ MemberMainOptions=Opzioni principali AdherentLoginRequired= Gestire un account di accesso per ogni membro AdherentMailRequired=Email required to create a new member MemberSendInformationByMailByDefault=Checkbox per inviare una mail di conferma per i membri (è attiva per impostazione predefinita) -VisitorCanChooseItsPaymentMode=Visitor can choose from available payment modes +VisitorCanChooseItsPaymentMode=Il visitatore può scegliere tra le modalità di pagamento disponibili MEMBER_REMINDER_EMAIL=Enable automatic reminder by email of expired subscriptions. Note: Module %s must be enabled and correctly setup to send reminders. ##### LDAP setup ##### LDAPSetup=Impostazioni del protocollo LDAP @@ -1509,12 +1522,12 @@ CacheByClient=Cache per browser CompressionOfResources=Compressione delle risposte HTTP CompressionOfResourcesDesc=For example using the Apache directive "AddOutputFilterByType DEFLATE" TestNotPossibleWithCurrentBrowsers=Con i browser attuali l'individuazione automatica non è possibile -DefaultValuesDesc=Here you may define the default value you wish to use when creating a new record, and/or default filters or the sort order when you list records. -DefaultCreateForm=Default values (to use on forms) +DefaultValuesDesc=Qui è possibile definire il valore predefinito che si desidera utilizzare durante la creazione di un nuovo record e / o i filtri predefiniti o l'ordinamento quando si elencano i record. +DefaultCreateForm=Valori predefiniti (da utilizzare nei form) DefaultSearchFilters=Filtri di ricerca predefiniti -DefaultSortOrder=Default sort orders -DefaultFocus=Default focus fields -DefaultMandatory=Mandatory form fields +DefaultSortOrder=Ordinamento predefinito +DefaultFocus=Campi con focus predefinito +DefaultMandatory=Campi obbligatori ##### Products ##### ProductSetup=Impostazioni modulo prodotti ServiceSetup=Impostazioni modulo servizi @@ -1577,7 +1590,7 @@ MailingEMailFrom=Sender email (From) for emails sent by emailing module MailingEMailError=Return Email (Errors-to) for emails with errors MailingDelay=Seconds to wait after sending next message ##### Notification ##### -NotificationSetup=Email Notification module setup +NotificationSetup=Impostazioni modulo notifiche email NotificationEMailFrom=Sender email (From) for emails sent by the Notifications module FixedEmailTarget=Destinatario ##### Sendings ##### @@ -1603,7 +1616,7 @@ FCKeditorForUserSignature=WYSIWIG creazione/modifica della firma utente FCKeditorForMail=WYSIWIG creation/edition for all mail (except Tools->eMailing) FCKeditorForTicket=Creazione / edizione WYSIWIG per i biglietti ##### Stock ##### -StockSetup=Stock module setup +StockSetup=Impostazioni modulo magazzino IfYouUsePointOfSaleCheckModule=If you use the Point of Sale module (POS) provided by default or an external module, this setup may be ignored by your POS module. Most POS modules are designed by default to create an invoice immediately and decrease stock irrespective of the options here. So if you need or not to have a stock decrease when registering a sale from your POS, check also your POS module setup. ##### Menu ##### MenuDeleted=Menu soppresso @@ -1650,7 +1663,7 @@ SupposedToBeInvoiceDate=Alla data della fattura Buy=Acquista Sell=Vendi InvoiceDateUsed=Data utilizzata per la fatturazione -YourCompanyDoesNotUseVAT=Your company has been defined to not use VAT (Home - Setup - Company/Organization), so there is no VAT options to setup. +YourCompanyDoesNotUseVAT=La tua azienda è stata definita per non utilizzare l'IVA (Home - Installazione - Azienda / Organizzazione), quindi non ci sono opzioni IVA da impostare. AccountancyCode=Accounting Code AccountancyCodeSell=Codice contabilità vendite AccountancyCodeBuy=Codice contabilità acquisti @@ -1662,7 +1675,7 @@ AGENDA_USE_EVENT_TYPE=Use events types (managed in menu Setup -> Dictionaries -> AGENDA_USE_EVENT_TYPE_DEFAULT=Automatically set this default value for type of event in event create form AGENDA_DEFAULT_FILTER_TYPE=Automatically set this type of event in search filter of agenda view AGENDA_DEFAULT_FILTER_STATUS=Automatically set this status for events in search filter of agenda view -AGENDA_DEFAULT_VIEW=Which tab do you want to open by default when selecting menu Agenda +AGENDA_DEFAULT_VIEW=Quale scheda si desidera aprire per impostazione predefinita quando si seleziona il menu Agenda AGENDA_REMINDER_EMAIL=Enable event reminder by emails (remind option/delay can be defined on each event). Note: Module %s must be enabled and correctly setup to have reminder sent at the correct frequency. AGENDA_REMINDER_BROWSER=Enable event reminder on user's browser (when event date is reached, each user is able to refuse this from the browser confirmation question) AGENDA_REMINDER_BROWSER_SOUND=Attiva i suoni per le notifiche @@ -1691,7 +1704,7 @@ CashDeskForceDecreaseStockDesc=Decrease first by the oldest eatby and sellby dat CashDeskReaderKeyCodeForEnter=Key code for "Enter" defined in barcode reader (Example: 13) ##### Bookmark ##### BookmarkSetup=Impostazioni modulo segnalibri -BookmarkDesc=This module allows you to manage bookmarks. You can also add shortcuts to any Dolibarr pages or external web sites on your left menu. +BookmarkDesc=Questo modulo consente di gestire i segnalibri web. È possibile aggiungere collegamenti a pagine Dolibarr o a qualsiasi altro sito web esterno al menu di sinistra. NbOfBoomarkToShow=Numero massimo dei segnalibri da mostrare nel menu di sinistra ##### WebServices ##### WebServicesSetup=Impostazioni modulo webservices @@ -1704,8 +1717,8 @@ ApiDesc=By enabling this module, Dolibarr become a REST server to provide miscel ApiProductionMode=Enable production mode (this will activate use of a cache for services management) ApiExporerIs=Puoi controllare e testare le API all'indirizzo OnlyActiveElementsAreExposed=Vengono esposti solo elementi correlati ai moduli abilitati -ApiKey=Key for API -WarningAPIExplorerDisabled=The API explorer has been disabled. API explorer is not required to provide API services. It is a tool for developer to find/test REST APIs. If you need this tool, go into setup of module API REST to activate it. +ApiKey=Chiave per API +WarningAPIExplorerDisabled=L'API Explorer è stato disabilitato. API Explorer non è tenuto a fornire servizi API. È uno strumento per gli sviluppatori per trovare / testare le API REST. Se hai bisogno di questo strumento, vai all'installazione del modulo API REST per attivarlo. ##### Bank ##### BankSetupModule=Impostazioni modulo banca/cassa FreeLegalTextOnChequeReceipts=Free text on check receipts @@ -1718,12 +1731,12 @@ ChequeReceiptsNumberingModule=Check Receipts Numbering Module ##### Multicompany ##### MultiCompanySetup=Impostazioni modulo multiazienda ##### Suppliers ##### -SuppliersSetup=Vendor module setup -SuppliersCommandModel=Complete template of Purchase Order -SuppliersCommandModelMuscadet=Complete template of Purchase Order -SuppliersInvoiceModel=Complete template of Vendor Invoice -SuppliersInvoiceNumberingModel=Vendor invoices numbering models -IfSetToYesDontForgetPermission=If set to yes, don't forget to provide permissions to groups or users allowed for the second approval +SuppliersSetup=Impostazioni modulo fornitori +SuppliersCommandModel=Modello completo dell'ordine d'acquisto +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) +SuppliersInvoiceModel=Modello completo di fattura fornitore +SuppliersInvoiceNumberingModel=Modello per la numerazione delle fatture fornitore +IfSetToYesDontForgetPermission=Se impostato su un valore non nullo, non dimenticare di fornire autorizzazioni a gruppi o utenti autorizzati per la seconda approvazione ##### GeoIPMaxmind ##### GeoIPMaxmindSetup=Impostazioni modulo GeoIP Maxmind PathToGeoIPMaxmindCountryDataFile=Path to file containing Maxmind ip to country translation.
    Examples:
    /usr/local/share/GeoIP/GeoIP.dat
    /usr/share/GeoIP/GeoIP.dat
    /usr/share/GeoIP/GeoLite2-Country.mmdb @@ -1749,7 +1762,7 @@ DeleteFiscalYear=Elimina periodo di esercizio ConfirmDeleteFiscalYear=Vuoi davvero cancellare questo periodo di esercizio? ShowFiscalYear=Mostra periodo di esercizio AlwaysEditable=Può essere modificato in qualsiasi momento -MAIN_APPLICATION_TITLE=Force visible name of application (warning: setting your own name here may break autofill login feature when using DoliDroid mobile application) +MAIN_APPLICATION_TITLE=Forza il nome visibile dell'applicazione (avviso: l'impostazione del proprio nome qui potrebbe interrompere la funzionalità di accesso alla compilazione automatica quando si utilizza l'applicazione mobile DoliDroid) NbMajMin=Numero minimo di caratteri maiuscoli NbNumMin=Numero minimo di caratteri numerici NbSpeMin=Numero minimo di caratteri speciali @@ -1764,40 +1777,41 @@ ExpenseReportsSetup=Impostazioni del modulo note spese TemplatePDFExpenseReports=Document templates to generate expense report document ExpenseReportsIkSetup=Setup of module Expense Reports - Milles index ExpenseReportsRulesSetup=Setup of module Expense Reports - Rules -ExpenseReportNumberingModules=Expense reports numbering module +ExpenseReportNumberingModules=Modelli di numerazione delle note spesa 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 automatic notifications per user* +YouMayFindNotificationsFeaturesIntoModuleNotification=È possibile trovare opzioni per le notifiche e-mail abilitando e configurando il modulo 'Notifiche di eventi lavorativi' +ListOfNotificationsPerUser=Elenco delle notifiche automatiche per utente* 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 +ListOfFixedNotifications=Elenco di notifiche fisse automatiche +GoOntoUserCardToAddMore=Vai alla scheda "Notifiche" di un utente per aggiungere o rimuovere le notifiche per gli utenti GoOntoContactCardToAddMore=Go on the tab "Notifications" of a third party to add or remove notifications for contacts/addresses Threshold=Soglia -BackupDumpWizard=Wizard to build the database dump file +BackupDumpWizard=Procedura guidata per creare file di backup del database (dump) BackupZipWizard=Wizard to build the archive of documents directory SomethingMakeInstallFromWebNotPossible=Installation of external module is not possible from the web interface for the following reason: SomethingMakeInstallFromWebNotPossible2=For this reason, process to upgrade described here is a manual process only a privileged user may perform. InstallModuleFromWebHasBeenDisabledByFile=Install of external module from application has been disabled by your administrator. You must ask him to remove the file %s to allow this feature. ConfFileMustContainCustom=Installing or building an external module from application need to save the module files into directory %s. To have this directory processed by Dolibarr, you must setup your conf/conf.php to add the 2 directive lines:
    $dolibarr_main_url_root_alt='/custom';
    $dolibarr_main_document_root_alt='%s/custom'; HighlightLinesOnMouseHover=Highlight table lines when mouse move passes over -HighlightLinesColor=Highlight color of the line when the mouse passes over (use 'ffffff' for no highlight) -HighlightLinesChecked=Highlight color of the line when it is checked (use 'ffffff' for no highlight) +HighlightLinesColor=Evidenzia il colore della linea quando passa il mouse (usa 'ffffff' per nessuna evidenziazione) +HighlightLinesChecked=Evidenzia il colore della linea quando è selezionata (usa 'ffffff' per nessuna evidenziazione) TextTitleColor=Colore del testo del titolo della pagina LinkColor=Colore dei link PressF5AfterChangingThis=Premi CTRL + F5 sulla tastiera o cancella la cache del browser per rendere effettiva la modifica di questo parametro NotSupportedByAllThemes=Funziona con il tema Eldy ma non è supportato da tutti gli altri temi -BackgroundColor=Background color -TopMenuBackgroundColor=Background color for Top menu +BackgroundColor=Colore di sfondo +TopMenuBackgroundColor=Colore di sfondo menù in alto TopMenuDisableImages=Nascondi le icone nel menu superiore -LeftMenuBackgroundColor=Background color for Left menu +LeftMenuBackgroundColor=Colore di sfondo menù laterale BackgroundTableTitleColor=Colore di sfondo della riga di intestazione -BackgroundTableTitleTextColor=Text color for Table title line -BackgroundTableLineOddColor=Background color for odd table lines -BackgroundTableLineEvenColor=Background color for even table lines +BackgroundTableTitleTextColor=Colore del testo per la riga del titolo delle tabelle +BackgroundTableTitleTextlinkColor=Text color for Table title link line +BackgroundTableLineOddColor=Colore di sfondo per le linee dispari delle tabelle +BackgroundTableLineEvenColor=Colore di sfondo per le linee pari delle tabelle MinimumNoticePeriod=Periodo minimo di avviso (le richieste di ferie/permesso dovranno essere effettuate prima di questo periodo) NbAddedAutomatically=Numero di giorni aggiunti ai contatori di utenti (automaticamente) ogni mese EnterAnyCode=Questo campo contiene un riferimento per identificare la linea. Inserisci qualsiasi valore di tua scelta, ma senza caratteri speciali. -Enter0or1=Enter 0 or 1 +Enter0or1=Inserire 0 o 1 UnicodeCurrency=Enter here between braces, list of byte number that represent the currency symbol. For example: for $, enter [36] - for brazil real R$ [82,36] - for €, enter [8364] ColorFormat=Il colore RGB è nel formato HEX, es:FF0000 PositionIntoComboList=Posizione di questo modello nella menu a tendina @@ -1884,19 +1898,19 @@ RemoveSpecialChars=Rimuovi caratteri speciali COMPANY_AQUARIUM_CLEAN_REGEX=Regex filter to clean value (COMPANY_AQUARIUM_CLEAN_REGEX) COMPANY_DIGITARIA_CLEAN_REGEX=Regex filter su clean value (COMPANY_DIGITARIA_CLEAN_REGEX) COMPANY_DIGITARIA_UNIQUE_CODE=Duplicazione non consentita -GDPRContact=Data Protection Officer (DPO, Data Privacy or GDPR contact) -GDPRContactDesc=If you store data about European companies/citizens, you can name the contact who is responsible for the General Data Protection Regulation here -HelpOnTooltip=Help text to show on tooltip -HelpOnTooltipDesc=Put text or a translation key here for the text to show in a tooltip when this field appears in a form +GDPRContact=DPO (Data Protection Officer) o in italiano RPD (Responsabile della Protezione dei Dati) +GDPRContactDesc=Se memorizzi dati relativi a società / cittadini europei, puoi memorizzare qui il contatto responsabile del trattamento dei dati personali/sensibili +HelpOnTooltip=Testo di aiuto da mostrare come tooltip +HelpOnTooltipDesc=Inserisci qui il testo o una chiave di traduzione affinché il testo sia mostrato nel tooltip quando questo campo appare in un form YouCanDeleteFileOnServerWith=You can delete this file on the server with Command Line:
    %s ChartLoaded=Chart of account loaded SocialNetworkSetup=Setup of module Social Networks EnableFeatureFor=Enable features for %s VATIsUsedIsOff=Note: The option to use Sales Tax or VAT has been set to Off in the menu %s - %s, so Sales tax or Vat used will always be 0 for sales. -SwapSenderAndRecipientOnPDF=Swap sender and recipient address position on PDF documents -FeatureSupportedOnTextFieldsOnly=Warning, feature supported on text fields only. Also an URL parameter action=create or action=edit must be set OR page name must end with 'new.php' to trigger this feature. +SwapSenderAndRecipientOnPDF=Scambia la posizione dell'indirizzo del mittente e del destinatario sui documenti PDF +FeatureSupportedOnTextFieldsOnly=Attenzione, funzionalità supportata solo nei campi di testo. Inoltre, è necessario impostare un parametro URL action = create o action = edit OPPURE il nome della pagina deve terminare con 'new.php' per attivare questa funzione. EmailCollector=Email collector -EmailCollectorDescription=Add a scheduled job and a setup page to scan regularly email boxes (using IMAP protocol) and record emails received into your application, at the right place and/or create some records automatically (like leads). +EmailCollectorDescription=Aggiungi un lavoro programmato e una pagina di configurazione per scansionare regolarmente caselle di posta elettronica (usando il protocollo IMAP) e registrare le email ricevute nella tua applicazione, nel posto giusto e / o creare automaticamente alcuni record (come i lead). NewEmailCollector=New Email Collector EMailHost=Host of email IMAP server MailboxSourceDirectory=Mailbox source directory @@ -1917,7 +1931,7 @@ RecordEvent=Record email event 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 +NbOfEmailsInInbox=Numero di e-mail nella directory di origine LoadThirdPartyFromName=Load third party searching on %s (load only) LoadThirdPartyFromNameOrCreate=Load third party searching on %s (create if not found) WithDolTrackingID=Dolibarr Tracking ID found @@ -1925,9 +1939,9 @@ WithoutDolTrackingID=Dolibarr Tracking ID not found FormatZip=CAP MainMenuCode=Menu entry code (mainmenu) ECMAutoTree=Show automatic ECM tree -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. -OpeningHours=Opening hours -OpeningHoursDesc=Enter here the regular opening hours of your company. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. +OpeningHours=Orari di apertura +OpeningHoursDesc=Inserisci gli orari di apertura regolare della tua azienda. ResourceSetup=Configuration of Resource module UseSearchToSelectResource=Utilizza il form di ricerca per scegliere una risorsa (invece della lista a tendina) DisabledResourceLinkUser=Disattiva funzionalità per collegare una risorsa agli utenti @@ -1936,10 +1950,10 @@ EnableResourceUsedInEventCheck=Abilitare la funzione per verificare se una risor ConfirmUnactivation=Conferma reset del modulo 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_OPTIMIZEFORTEXTBROWSER=Semplifica l'interfaccia per i non vedenti 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. +MAIN_OPTIMIZEFORCOLORBLIND=Cambia il colore dell'interfaccia per i non vedenti +MAIN_OPTIMIZEFORCOLORBLINDDesc=Abilita questa opzione se sei daltonico, in alcuni casi l'interfaccia cambierà la configurazione del colore per aumentare il contrasto. Protanopia=Protanopia Deuteranopes=Deuteranopes Tritanopes=Tritanopes @@ -1948,17 +1962,18 @@ 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. RootCategoryForProductsToSell=Root category of products to sell RootCategoryForProductsToSellDesc=If defined, only products inside this category or childs of this category will be available in the Point Of Sale -DebugBar=Debug Bar +DebugBar=Barra di debug DebugBarDesc=Toolbar that comes with a plenty of tools to simplify debugging -DebugBarSetup=DebugBar Setup +DebugBarSetup=Impostazione barra di debug GeneralOptions=General Options LogsLinesNumber=Number of lines to show on logs tab -UseDebugBar=Use the debug bar +UseDebugBar=Usa la barra di debug DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export +ImportSetup=Setup of module Import InstanceUniqueID=Unique ID of the instance SmallerThan=Smaller than LargerThan=Larger than @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server FeatureNotAvailableWithReceptionModule=Funzione non disponibile quando la ricezione del modulo è abilitata EmailTemplate=Modello per le e-mail EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/it_IT/banks.lang b/htdocs/langs/it_IT/banks.lang index 380091e9351..fad1a61d848 100644 --- a/htdocs/langs/it_IT/banks.lang +++ b/htdocs/langs/it_IT/banks.lang @@ -17,7 +17,7 @@ CurrentAccounts=Conti correnti SavingAccounts=Conti di risparmio ErrorBankLabelAlreadyExists=Etichetta banca già esistente BankBalance=Saldo -BankBalanceBefore=Saldo prima +BankBalanceBefore=Bilancio precedente BankBalanceAfter=Saldo dopo BalanceMinimalAllowed=Saldo minimo consentito BalanceMinimalDesired=Saldo minimo voluto @@ -42,7 +42,7 @@ AccountStatementShort=Est. conto AccountStatements=Estratti conto LastAccountStatements=Ultimi estratti conto IOMonthlyReporting=Report mensile -BankAccountDomiciliation=Bank address +BankAccountDomiciliation=Indirizzo banca BankAccountCountry=Paese del conto BankAccountOwner=Nome titolare BankAccountOwnerAddress=Indirizzo titolare @@ -139,7 +139,7 @@ AllAccounts=Tutte le banche e le casse BackToAccount=Torna al conto ShowAllAccounts=Mostra per tutti gli account FutureTransaction=Future transaction. Unable to reconcile. -SelectChequeTransactionAndGenerate=Seleziona gli assegni dar includere nella ricevuta di versamento e clicca su "Crea". +SelectChequeTransactionAndGenerate=Seleziona gli assegni da includere nella ricevuta di versamento e clicca su "Crea". InputReceiptNumber=Scegliere l'estratto conto collegato alla conciliazione. Utilizzare un valore numerico ordinabile: AAAAMM o AAAAMMGG EventualyAddCategory=Infine, specificare una categoria in cui classificare i record ToConciliate=Da conciliare? diff --git a/htdocs/langs/it_IT/bills.lang b/htdocs/langs/it_IT/bills.lang index 20e5e69e47e..5394de1c8f9 100644 --- a/htdocs/langs/it_IT/bills.lang +++ b/htdocs/langs/it_IT/bills.lang @@ -66,27 +66,27 @@ paymentInInvoiceCurrency=nella valuta delle fatture PaidBack=Rimborsato DeletePayment=Elimina pagamento ConfirmDeletePayment=Vuoi davvero cancellare questo pagamento? -ConfirmConvertToReduc=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReduc=Vuoi convertire questa %s in uno sconto assoluto? ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. -ConfirmConvertToReducSupplier=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReducSupplier=Vuoi convertire questo %s in uno sconto assoluto? ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. SupplierPayments=Vendor payments ReceivedPayments=Pagamenti ricevuti ReceivedCustomersPayments=Pagamenti ricevuti dai clienti -PayedSuppliersPayments=Payments paid to vendors +PayedSuppliersPayments=Pagamenti effettuati ai fornitori ReceivedCustomersPaymentsToValid=Pagamenti ricevuti dai clienti da convalidare PaymentsReportsForYear=Report pagamenti per %s PaymentsReports=Report pagamenti PaymentsAlreadyDone=Pagamenti già fatti PaymentsBackAlreadyDone=Rimborso già effettuato PaymentRule=Regola pagamento -PaymentMode=Payment Type +PaymentMode=Tipo di pagamento PaymentTypeDC=Carta di Debito/Credito PaymentTypePP=PayPal -IdPaymentMode=Payment Type (id) -CodePaymentMode=Payment Type (code) -LabelPaymentMode=Payment Type (label) -PaymentModeShort=Payment Type +IdPaymentMode=Tipo di pagamento (id) +CodePaymentMode=Tipo di pagamento (codice) +LabelPaymentMode=Tipo di pagamento (etichetta) +PaymentModeShort=Tipo di pagamento PaymentTerm=Payment Term PaymentConditions=Termini di Pagamento PaymentConditionsShort=Termini di Pagamento @@ -106,7 +106,7 @@ AddBill=Crea fattura o nota di credito AddToDraftInvoices=Aggiungi alle fattture in bozza DeleteBill=Elimina fattura SearchACustomerInvoice=Cerca una fattura attiva -SearchASupplierInvoice=Search for a vendor invoice +SearchASupplierInvoice=Cerca una fattura fornitore CancelBill=Annulla una fattura SendRemindByMail=Inviare promemoria via email DoPayment=Registra pagamento @@ -146,7 +146,7 @@ BillShortStatusClosedPaidPartially=Pagata (in parte) PaymentStatusToValidShort=Da convalidare ErrorVATIntraNotConfigured=Intra-Community VAT number not yet defined ErrorNoPaiementModeConfigured=No default payment type defined. Go to Invoice module setup to fix this. -ErrorCreateBankAccount=Create a bank account, then go to Setup panel of Invoice module to define payment types +ErrorCreateBankAccount=Crea un conto bancario, quindi passa al modulo impostazione delle fatture per definire i tipi di pagamento ErrorBillNotFound=La fattura %s non esiste ErrorInvoiceAlreadyReplaced=Error, you tried to validate an invoice to replace invoice %s. But this one has already been replaced by invoice %s. ErrorDiscountAlreadyUsed=Errore, sconto già utilizzato @@ -204,22 +204,18 @@ ConfirmSupplierPayment=Confermare riscossione per %s %s? ConfirmValidatePayment=Vuoi davvero convalidare questo pagamento? Una volta convalidato non si potranno più operare modifiche. ValidateBill=Convalida fattura UnvalidateBill=Invalida fattura -NumberOfBills=No. of invoices -NumberOfBillsByMonth=No. of invoices per month +NumberOfBills=Numero di fatture +NumberOfBillsByMonth=Numero di fatture per mese AmountOfBills=Importo delle fatture AmountOfBillsHT=Amount of invoices (net of tax) AmountOfBillsByMonthHT=Importo delle fatture per mese (al netto delle imposte) -ShowSocialContribution=Mostra imposte sociali/fiscali -ShowBill=Visualizza fattura -ShowInvoice=Visualizza fattura -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 +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=To pay on %s toPayOn=to pay on %s RetainedWarranty=Retained Warranty @@ -230,7 +226,6 @@ 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 AlreadyPaidNoCreditNotesNoDeposits=Già pagata (senza note di credito e note d'accredito) @@ -334,7 +329,7 @@ InvoiceDateCreation=Data di creazione fattura InvoiceStatus=Stato Fattura InvoiceNote=Nota Fattura InvoicePaid=Fattura pagata -InvoicePaidCompletely=Paid completely +InvoicePaidCompletely=Pagata completamente InvoicePaidCompletelyHelp=Invoice that are paid completely. This excludes invoices that are paid partially. To get list of all 'Closed' or non 'Closed' invoices, prefer to use a filter on the invoice status. OrderBilled=Order billed DonationPaid=Donation paid @@ -354,7 +349,7 @@ ConfirmRemoveDiscount=Vuoi davvero eliminare questo sconto? RelatedBill=Fattura correlata RelatedBills=Fatture correlate RelatedCustomerInvoices=Fatture attive correlate -RelatedSupplierInvoices=Related vendor invoices +RelatedSupplierInvoices=Fatture fornitore correlate LatestRelatedBill=Ultima fattura correlata WarningBillExist=Warning, one or more invoices already exist MergingPDFTool=Strumento di fusione dei PDF @@ -378,7 +373,7 @@ NextDateToExecution=Data per la prossima generazione di fattura NextDateToExecutionShort=Data successiva gen. DateLastGeneration=Data dell'ultima generazione DateLastGenerationShort=Data ultima gen. -MaxPeriodNumber=Max. number of invoice generation +MaxPeriodNumber=Numero massimo di fatture da generare NbOfGenerationDone=Numero di fatture generate già create NbOfGenerationDoneShort=Numero di generazione eseguita MaxGenerationReached=Numero massimo di generazioni raggiunto @@ -390,6 +385,7 @@ GeneratedFromTemplate=Generated from template invoice %s WarningInvoiceDateInFuture=Attenzione, la data della fattura è successiva alla data odierna WarningInvoiceDateTooFarInFuture=Attenzione, la data della fattura è troppo lontana dalla data odierna ViewAvailableGlobalDiscounts=Mostra gli sconti disponibili +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Stato PaymentConditionShortRECEP=Rimessa diretta @@ -441,7 +437,7 @@ PaymentTypeFAC=Fattore PaymentTypeShortFAC=Fattore BankDetails=Dati banca BankCode=ABI -DeskCode=Branch code +DeskCode=Codice filiale BankAccountNumber=C.C. BankAccountNumberKey=Checksum Residence=Indirizzo @@ -477,13 +473,13 @@ UseLine=Applica UseDiscount=Usa lo sconto UseCredit=Utilizza il credito UseCreditNoteInInvoicePayment=Riduci l'ammontare del pagamento con la nota di credito -MenuChequeDeposits=Check Deposits +MenuChequeDeposits=Deposito assegni MenuCheques=Assegni MenuChequesReceipts=Check receipts NewChequeDeposit=Nuovo acconto ChequesReceipts=Check receipts -ChequesArea=Check deposits area -ChequeDeposits=Check deposits +ChequesArea=Area deposito assegni +ChequeDeposits=Deposito assegni Cheques=Assegni DepositId=ID deposito NbCheque=Numero di assegni @@ -509,11 +505,11 @@ ToMakePayment=Paga ToMakePaymentBack=Rimborsa ListOfYourUnpaidInvoices=Elenco fatture non pagate NoteListOfYourUnpaidInvoices=Nota: questo elenco contiene solo fatture che hai collegato ad un rappresentante. -RevenueStamp=Marca da bollo +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party YouMustCreateStandardInvoiceFirstDesc=Per creare un nuovo modelo bisogna prima creare una fattura normale e poi convertirla. -PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template (old implementation of Sponge template) +PDFCrabeDescription=Modello di fattura PDF Crabe. Un modello completo di fattura (vecchia implementazione del modello Sponge) PDFSpongeDescription=Invoice PDF template Sponge. A complete invoice template PDFCrevetteDescription=Modello di fattura Crevette. Template completo per le fatture (Modello raccomandato) TerreNumRefModelDesc1=Restituisce un numero nel formato %syymm-nnnn per le fatture, %syymm-nnnn per le note di credito e %syymm-nnnn per i versamenti, dove yy è l'anno, mm è il mese e nnnn è una sequenza progressiva, senza salti e che non si azzera. @@ -528,7 +524,7 @@ TypeContact_facture_external_BILLING=Contatto fatturazioni clienti TypeContact_facture_external_SHIPPING=Contatto spedizioni clienti TypeContact_facture_external_SERVICE=Contatto servizio clienti TypeContact_invoice_supplier_internal_SALESREPFOLL=Representative following-up vendor invoice -TypeContact_invoice_supplier_external_BILLING=Vendor invoice contact +TypeContact_invoice_supplier_external_BILLING=Contatto fattura fornitore TypeContact_invoice_supplier_external_SHIPPING=Vendor shipping contact TypeContact_invoice_supplier_external_SERVICE=Vendor service contact # Situation invoices @@ -575,3 +571,4 @@ AutoFillDateTo=Imposta data di fine per la riga di servizio con la successiva da AutoFillDateToShort=Imposta data di fine MaxNumberOfGenerationReached=Max number of gen. reached BILL_DELETEInDolibarr=Fattura cancellata +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/it_IT/blockedlog.lang b/htdocs/langs/it_IT/blockedlog.lang index f69567e0ebf..b0cbfa4cdde 100644 --- a/htdocs/langs/it_IT/blockedlog.lang +++ b/htdocs/langs/it_IT/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Unalterable logs ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) DownloadBlockChain=Download fingerprints -KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this re after it was recorded, or has erased the previous archived record (check that line with previous # exists). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. AddedByAuthority=Stored into remote authority diff --git a/htdocs/langs/it_IT/boxes.lang b/htdocs/langs/it_IT/boxes.lang index 33a3614472e..c55a5828087 100644 --- a/htdocs/langs/it_IT/boxes.lang +++ b/htdocs/langs/it_IT/boxes.lang @@ -4,7 +4,7 @@ BoxLastRssInfos=RSS Information BoxLastProducts=Latest %s Products/Services BoxProductsAlertStock=Avvisi per le scorte di prodotti BoxLastProductsInContract=Ultimi %s prodotti/servizi contrattualizzati -BoxLastSupplierBills=Latest Vendor invoices +BoxLastSupplierBills=Ultime fatture fornitore BoxLastCustomerBills=Latest Customer invoices BoxOldestUnpaidCustomerBills=Ultime fatture attive non pagate BoxOldestUnpaidSupplierBills=Fatture Fornitore non pagate più vecchie @@ -21,14 +21,14 @@ BoxFicheInter=Ultimi interventi BoxCurrentAccounts=Saldo conti aperti BoxTitleMemberNextBirthdays=Compleanni di questo mese (membri) BoxTitleLastRssInfos=Ultime %s notizie da %s -BoxTitleLastProducts=Products/Services: last %s modified +BoxTitleLastProducts=Prodotti/Servizi: ultimi %s modificati BoxTitleProductsAlertStock=Prodotti: allerta scorte BoxTitleLastSuppliers=Ultimi %s ordini fornitore BoxTitleLastModifiedSuppliers=Fornitori: ultimi %s modificati BoxTitleLastModifiedCustomers=Clienti: ultimi %s modificati BoxTitleLastCustomersOrProspects=Ultimi %s clienti o potenziali clienti -BoxTitleLastCustomerBills=Ultime %s Fatture Cliente -BoxTitleLastSupplierBills=Ultime %sFatture Fornitore +BoxTitleLastCustomerBills=Ultime %s fatture attive modificate +BoxTitleLastSupplierBills=Ultime %s fatture fornitore modificate BoxTitleLastModifiedProspects=Clienti potenziali: ultimi %s modificati BoxTitleLastModifiedMembers=Ultimi %s membri BoxTitleLastFicheInter=Ultimi %s interventi modificati @@ -36,8 +36,8 @@ BoxTitleOldestUnpaidCustomerBills=Fatture cliente: %s non pagate più vecchie BoxTitleOldestUnpaidSupplierBills=Fatture fornitori: %s più vecchie non pagate BoxTitleCurrentAccounts=Conti aperti: bilanci BoxTitleSupplierOrdersAwaitingReception=Ordini dei fornitori in attesa di ricezione -BoxTitleLastModifiedContacts=Contacts/Addresses: last %s modified -BoxMyLastBookmarks=Bookmarks: latest %s +BoxTitleLastModifiedContacts=Contatti/indirizzi: ultimi %s modificati +BoxMyLastBookmarks=Segnalibri: ultimi %s modificati BoxOldestExpiredServices=Servizi scaduti da più tempo ancora attivi BoxLastExpiredServices=Ultimi %s contatti con servizi scaduti ancora attivi BoxTitleLastActionsToDo=Ultime %s azioni da fare @@ -61,7 +61,7 @@ NoRecordedProposals=Nessuna proposta registrata NoRecordedInvoices=Nessuna fattura attiva registrata NoUnpaidCustomerBills=Nessuna fattura attiva non pagata NoUnpaidSupplierBills=Nessuna Fattura Fornitore non pagata -NoModifiedSupplierBills=No recorded vendor invoices +NoModifiedSupplierBills=Nessuna fattura fornitore registrata NoRecordedProducts=Nessun prodotto/servizio registrato NoRecordedProspects=Nessun potenziale cliente registrato NoContractedProducts=Nessun prodotto/servizio contrattualizzato @@ -71,16 +71,16 @@ BoxLatestSupplierOrders=Latest purchase orders BoxLatestSupplierOrdersAwaitingReception=Ultimi ordini di acquisto (con una ricezione in sospeso) NoSupplierOrder=No recorded purchase order BoxCustomersInvoicesPerMonth=Fatture cliente al mese -BoxSuppliersInvoicesPerMonth=Vendor Invoices per month +BoxSuppliersInvoicesPerMonth=Fatture fornitore per mese BoxCustomersOrdersPerMonth=Ordini Cliente per mese -BoxSuppliersOrdersPerMonth=Vendor Orders per month -BoxProposalsPerMonth=proposte al mese +BoxSuppliersOrdersPerMonth=Ordini fornitore per mese +BoxProposalsPerMonth=Preventivi per mese NoTooLowStockProducts=Nessun prodotto sotto la soglia minima di scorte BoxProductDistribution=Distribuzione prodotti/servizi ForObject=On %s -BoxTitleLastModifiedSupplierBills=Vendor Invoices: last %s modified -BoxTitleLatestModifiedSupplierOrders=Vendor Orders: last %s modified -BoxTitleLastModifiedCustomerBills=Customer Invoices: last %s modified +BoxTitleLastModifiedSupplierBills=Fatture fornitore: ultime %s modificate +BoxTitleLatestModifiedSupplierOrders=Ordini fornitore: ultimi %s modificati +BoxTitleLastModifiedCustomerBills=Fatture attive: ultime %s modificate BoxTitleLastModifiedCustomerOrders=Ordini: ultimi %s modificati BoxTitleLastModifiedPropals=Ultime %s proposte modificate ForCustomersInvoices=Fatture attive @@ -89,7 +89,7 @@ ForProposals=Proposte LastXMonthRolling=Ultimi %s mesi ChooseBoxToAdd=Aggiungi widget alla dashboard BoxAdded=Widget aggiunto al pannello principale -BoxTitleUserBirthdaysOfMonth=Birthdays of this month +BoxTitleUserBirthdaysOfMonth=Compleanni di questo mese (utenti) BoxLastManualEntries=Ultime registrazioni manuali in contabilità BoxTitleLastManualEntries=%s ultime voci del manuale NoRecordedManualEntries=Nessuna registrazione manuale registrata in contabilità @@ -98,5 +98,5 @@ BoxTitleSuspenseAccount=Numero di righe non allocate NumberOfLinesInSuspenseAccount=Numero di riga nell'account suspense SuspenseAccountNotDefined=L'account Suspense non è definito BoxLastCustomerShipments=Ultime spedizioni cliente -BoxTitleLastCustomerShipments=Latest %s customer shipments -NoRecordedShipments=No recorded customer shipment +BoxTitleLastCustomerShipments=Ultime %s spedizioni cliente +NoRecordedShipments=Nessuna spedizione cliente registrata diff --git a/htdocs/langs/it_IT/cashdesk.lang b/htdocs/langs/it_IT/cashdesk.lang index 97bf03f0231..9d92620b4be 100644 --- a/htdocs/langs/it_IT/cashdesk.lang +++ b/htdocs/langs/it_IT/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Aggiungi questo articolo RestartSelling=Rimetti in vendita SellFinished=Vendita completata PrintTicket=Stampa biglietto +SendTicket=Send ticket NoProductFound=Nessun articolo trovato ProductFound=Prodotto trovato NoArticle=Nessun articolo @@ -48,6 +49,7 @@ Footer=Footer AmountAtEndOfPeriod=Amount at end of period (day, month or year) TheoricalAmount=Theorical amount RealAmount=Real amount +CashFence=Cash fence CashFenceDone=Cash fence done for the period NbOfInvoices=Numero di fatture Paymentnumpad=Type of Pad to enter payment @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS needs product categories to work OrderNotes=Order Notes CashDeskBankAccountFor=Default account to use for payments in NoPaimementModesDefined=No paiment mode defined in TakePOS configuration -TicketVatGrouped=Group VAT by rate in tickets -AutoPrintTickets=Automatically print tickets +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? @@ -87,7 +90,19 @@ HeadBar=Head Bar SortProductField=Field for sorting products Browser=Browser BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/it_IT/categories.lang b/htdocs/langs/it_IT/categories.lang index 87d41652b62..7663624b70c 100644 --- a/htdocs/langs/it_IT/categories.lang +++ b/htdocs/langs/it_IT/categories.lang @@ -10,7 +10,7 @@ modify=modifica Classify=Classifica CategoriesArea=Area tag/categorie ProductsCategoriesArea=Area categorie/tag prodotti/servizi -SuppliersCategoriesArea=Vendors tags/categories area +SuppliersCategoriesArea=Area tag/categorie fornitori CustomersCategoriesArea=Area tag/categorie clienti MembersCategoriesArea=Area tag/categorie membri ContactsCategoriesArea=Area tag/categorie contatti @@ -32,7 +32,7 @@ WasAddedSuccessfully= %s aggiunta con successo ObjectAlreadyLinkedToCategory=L'elemento è già collegato a questa tag/categoria ProductIsInCategories=Il prodotto/servizio è collegato alle seguenti tag/categorie CompanyIsInCustomersCategories=Questo soggetto terzo è collegato alle seguenti tag/categorie di clienti/potenziali clienti -CompanyIsInSuppliersCategories=This third party is linked to following vendors tags/categories +CompanyIsInSuppliersCategories=Il soggetto terzo è collegato alle seguenti tag/categorie fornitori MemberIsInCategories=Il membro è collegato alle seguenti tag/categorie membri ContactIsInCategories=Il contatto appartiene alle seguenti tag/categorie ProductHasNoCategory=Questo prodotto/servizio non è collegato ad alcuna tag/categoria @@ -48,14 +48,14 @@ ContentsNotVisibleByAllShort=Contenuti non visibili a tutti DeleteCategory=Elimina tag/categoria ConfirmDeleteCategory=Vuoi davvero eliminare questo tag/categoria? NoCategoriesDefined=Nessuna tag/categoria definita -SuppliersCategoryShort=Vendors tag/category +SuppliersCategoryShort=Tag/categoria fornitori CustomersCategoryShort=Tag/categoria clienti ProductsCategoryShort=Tag/categoria prodotti MembersCategoryShort=Tag/categoria membri -SuppliersCategoriesShort=Vendors tags/categories +SuppliersCategoriesShort=Tag/categorie fornitori CustomersCategoriesShort=Tag/categorie clienti ProspectsCategoriesShort=Tag/categorie clienti potenziali -CustomersProspectsCategoriesShort=Cust./Prosp. tags/categories +CustomersProspectsCategoriesShort=Tag/categorie clienti/clienti potenziali ProductsCategoriesShort=Tag/categorie prodotti MembersCategoriesShort=Tag/categorie membri ContactCategoriesShort=Tag/categorie contatti @@ -63,13 +63,7 @@ AccountsCategoriesShort=Conti di tag/categorie ProjectsCategoriesShort=Tag/categoria progetti UsersCategoriesShort=Users tags/categories StockCategoriesShort=Tag / categorie di magazzino -ThisCategoryHasNoProduct=Questa categoria non contiene alcun prodotto -ThisCategoryHasNoSupplier=This category does not contain any vendor. -ThisCategoryHasNoCustomer=Questa categoria non contiene alcun cliente -ThisCategoryHasNoMember=Questa categoria non contiene alcun membro -ThisCategoryHasNoContact=Questa categoria non contiene contatti -ThisCategoryHasNoAccount=Non ci sono conti collegati a questa categoria -ThisCategoryHasNoProject=Questa categoria non contiene alcun progetto. +ThisCategoryHasNoItems=This category does not contain any items. CategId=ID Tag/categoria CatSupList=List of vendor tags/categories CatCusList=Lista delle tag/categorie clienti @@ -78,7 +72,7 @@ CatMemberList=Lista delle tag/categorie membri CatContactList=Lista delle tag/categorie contatti CatSupLinks=Collegamenti tra fornitori e tag/categorie CatCusLinks=Collegamenti tra clienti e tag/categorie -CatContactsLinks=Links between contacts/addresses and tags/categories +CatContactsLinks=Collegamento fra: contatti/indirizzi e tags/categorie CatProdLinks=Collegamenti tra prodotti/servizi e tag/categorie CatProJectLinks=Collegamenti tra progetti e tag/categorie DeleteFromCat=Elimina dalla tag/categoria @@ -91,5 +85,5 @@ ShowCategory=Mostra tag/categoria ByDefaultInList=Default nella lista ChooseCategory=Choose category StocksCategoriesArea=Area categorie magazzini -ActionCommCategoriesArea=Events Categories Area +ActionCommCategoriesArea=Area eventi categorie UseOrOperatorForCategories=Uso o operatore per le categorie diff --git a/htdocs/langs/it_IT/commercial.lang b/htdocs/langs/it_IT/commercial.lang index ae6a92c63b0..45304358bf6 100644 --- a/htdocs/langs/it_IT/commercial.lang +++ b/htdocs/langs/it_IT/commercial.lang @@ -19,7 +19,7 @@ ShowTask=Visualizza compito ShowAction=Visualizza azione ActionsReport=Prospetto azioni ThirdPartiesOfSaleRepresentative=Soggetti terzi con agenti di vendita -SaleRepresentativesOfThirdParty=Agenti di vendita di soggetti terzi +SaleRepresentativesOfThirdParty=Agenti di vendita del soggetto terzo SalesRepresentative=Venditore SalesRepresentatives=Venditori SalesRepresentativeFollowUp=Venditore (di follow-up) @@ -73,8 +73,8 @@ StatusProsp=Stato del cliente potenziale DraftPropals=Bozze di proposte commerciali NoLimit=Nessun limite ToOfferALinkForOnlineSignature=Link per firma online -WelcomeOnOnlineSignaturePage=Welcome to the page to accept commercial proposals from %s +WelcomeOnOnlineSignaturePage=Benvenuti nella pagina per accettare proposte commerciali da %s ThisScreenAllowsYouToSignDocFrom=Questa schermata consente di accettare e firmare, o rifiutare, un preventivo/proposta commerciale ThisIsInformationOnDocumentToSign=Queste sono informazioni sul documento da accettare o rifiutare -SignatureProposalRef=Signature of quote/commercial proposal %s +SignatureProposalRef=Firma del preventivo/proposta commerciale %s FeatureOnlineSignDisabled=Funzionalità per la firma online disattivata o documento generato prima che la funzione fosse abilitata diff --git a/htdocs/langs/it_IT/companies.lang b/htdocs/langs/it_IT/companies.lang index d3dbbc93a18..8f2cb848865 100644 --- a/htdocs/langs/it_IT/companies.lang +++ b/htdocs/langs/it_IT/companies.lang @@ -277,7 +277,7 @@ CustomerRelativeDiscountShort=Sconto relativo CustomerAbsoluteDiscountShort=Sconto assoluto CompanyHasRelativeDiscount=Il cliente ha uno sconto del %s%% CompanyHasNoRelativeDiscount=Il cliente non ha alcuno sconto relativo impostato -HasRelativeDiscountFromSupplier=You have a default discount of %s%% from this vendor +HasRelativeDiscountFromSupplier=Hai uno sconto predefinito di %s%% da questo fornitore HasNoRelativeDiscountFromSupplier=You have no default relative discount from this vendor CompanyHasAbsoluteDiscount=Questo cliente ha degli sconti disponibili (note di credito o anticipi) per un totale di %s%s CompanyHasDownPaymentOrCommercialDiscount=Questo cliente ha uno sconto disponibile (commerciale, anticipi) per %s%s @@ -325,7 +325,6 @@ CompanyDeleted=Società %s cancellata dal database. ListOfContacts=Elenco dei contatti ListOfContactsAddresses=Elenco dei contatti ListOfThirdParties=Elenco dei soggetti terzi -ShowCompany=Mostra soggetto terzo ShowContact=Mostra contatti ContactsAllShort=Tutti (Nessun filtro) ContactType=Tipo di contatto @@ -352,7 +351,7 @@ VATIntraCheckURL=http://ec.europa.eu/taxation_customs/vies/vieshome.do VATIntraCheckableOnEUSite=Check the intra-Community VAT ID on the European Commission website VATIntraManualCheck=È anche possibile controllare manualmente sul sito della Commissione Europea %s ErrorVATCheckMS_UNAVAILABLE=Non è possibile effettuare il controllo. Servizio non previsto per lo stato membro ( %s). -NorProspectNorCustomer=Not prospect, nor customer +NorProspectNorCustomer=Né cliente, né cliente potenziale JuridicalStatus=Forma giuridica Staff=Dipendenti ProspectLevelShort=Cl. Pot. @@ -400,8 +399,8 @@ ImportDataset_company_1=Third-parties and their properties 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) -PriceLevel=Price Level -PriceLevelLabels=Price Level Labels +PriceLevel=Livello dei prezzi +PriceLevelLabels=Etichette livello dei prezzi DeliveryAddress=Indirizzo di consegna AddAddress=Aggiungi un indirizzo SupplierCategory=Categoria fornitore @@ -447,11 +446,12 @@ SaleRepresentativeFirstname=Nome del commerciale SaleRepresentativeLastname=Cognome del commerciale ErrorThirdpartiesMerge=Si è verificato un errore durante l'eliminazione di terze parti. Si prega di controllare il registro. Le modifiche sono state ripristinate. NewCustomerSupplierCodeProposed=Customer or Vendor code already used, a new code is suggested +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Payment Type - Customer PaymentTermsCustomer=Termini di Pagamento - Cliente PaymentTypeSupplier=Payment Type - Vendor -PaymentTermsSupplier=Payment Term - Vendor +PaymentTermsSupplier=Termine di pagamento - Fornitore PaymentTypeBoth=Tipo di pagamento - Cliente e fornitore MulticurrencyUsed=Use Multicurrency MulticurrencyCurrency=Valuta diff --git a/htdocs/langs/it_IT/compta.lang b/htdocs/langs/it_IT/compta.lang index cf5d2312892..c08cfa61481 100644 --- a/htdocs/langs/it_IT/compta.lang +++ b/htdocs/langs/it_IT/compta.lang @@ -19,13 +19,13 @@ Income=Entrate Outcome=Uscite MenuReportInOut=Entrate/Uscite ReportInOut=Bilancio di entrate e uscite -ReportTurnover=Turnover invoiced -ReportTurnoverCollected=Turnover collected +ReportTurnover=Fatturato +ReportTurnoverCollected=Fatturato PaymentsNotLinkedToInvoice=I pagamenti non legati ad una fattura, quindi non legati ad alcun soggetto terzo PaymentsNotLinkedToUser=Pagamenti non legati ad alcun utente Profit=Utile AccountingResult=Risultato contabile -BalanceBefore=Balance (before) +BalanceBefore=Bilancio (precedente) Balance=Saldo Debit=Debito Credit=Credito @@ -81,12 +81,12 @@ ContributionsToPay=Tasse/contributi da pagare AccountancyTreasuryArea=Billing and payment area NewPayment=Nuovo pagamento PaymentCustomerInvoice=Pagamento fattura attiva -PaymentSupplierInvoice=vendor invoice payment +PaymentSupplierInvoice=pagamento fattura fornitore PaymentSocialContribution=Pagamento delle imposte sociali/fiscali PaymentVat=Pagamento IVA ListPayment=Elenco dei pagamenti ListOfCustomerPayments=Elenco dei pagamenti dei clienti -ListOfSupplierPayments=List of vendor payments +ListOfSupplierPayments=Elenco dei pagamenti fornitore DateStartPeriod=Data di inzio DateEndPeriod=Data di fine newLT1Payment=New tax 2 payment @@ -118,8 +118,8 @@ SupplierAccountancyCodeShort=Cod. cont. fornitore AccountNumber=Numero di conto NewAccountingAccount=Nuovo conto Turnover=Turnover invoiced -TurnoverCollected=Turnover collected -SalesTurnoverMinimum=Minimum turnover +TurnoverCollected=Fatturato +SalesTurnoverMinimum=Fatturato minimo di vendita ByExpenseIncome=By expenses & incomes ByThirdParties=Per soggetti terzi ByUserAuthorOfInvoice=Per autore fattura @@ -139,8 +139,8 @@ ConfirmDeleteSocialContribution=Sei sicuro di voler cancellare il pagamento di q ExportDataset_tax_1=Tasse/contributi e pagamenti CalcModeVATDebt=Modalità %sIVA su contabilità d'impegno%s. CalcModeVATEngagement=Calcola %sIVA su entrate-uscite%s -CalcModeDebt=Analysis of known recorded invoices even if they are not yet accounted in ledger. -CalcModeEngagement=Analysis of known recorded payments, even if they are not yet accounted in Ledger. +CalcModeDebt=Analisi delle fatture registrate anche se non sono ancora contabilizzate nel libro mastro. +CalcModeEngagement=Analisi dei pagamenti registrati, anche se non ancora contabilizzati nel libro mastro. CalcModeBookkeeping=Analysis of data journalized in Bookkeeping Ledger table. CalcModeLT1= Modalità %sRE su fatture clienti - fatture fornitori%s CalcModeLT1Debt=Modalità %sRE su fatture clienti%s @@ -153,21 +153,21 @@ AnnualSummaryInputOutputMode=Bilancio di entrate e uscite, sintesi annuale AnnualByCompanies=Balance of income and expenses, by predefined groups of account AnnualByCompaniesDueDebtMode=Balance of income and expenses, detail by predefined groups, mode %sClaims-Debts%s said Commitment accounting. AnnualByCompaniesInputOutputMode=Balance of income and expenses, detail by predefined groups, mode %sIncomes-Expenses%s said cash accounting. -SeeReportInInputOutputMode=See %sanalysis of payments%s for a calculation on actual payments made even if they are not yet accounted in Ledger. -SeeReportInDueDebtMode=See %sanalysis of invoices%s for a calculation based on known recorded invoices even if they are not yet accounted in Ledger. +SeeReportInInputOutputMode=Vedi %sanalisi dei pagamenti%s per un calcolo sui pagamenti effettivi effettuati anche se non ancora contabilizzati nel libro mastro. +SeeReportInDueDebtMode=Vedi %sanalisi delle fatture %s per un calcolo basato sulle fatture registrate anche se non ancora contabilizzate nel libro mastro. SeeReportInBookkeepingMode=See %sBookeeping report%s for a calculation on Bookkeeping Ledger table RulesAmountWithTaxIncluded=- Gli importi indicati sono tasse incluse -RulesResultDue=- Gli importi indicati sono tutti tasse incluse
    - Comprendono le fatture in sospeso, l'IVA e le spese, che siano state pagate o meno.
    - Si basa sulla data di convalida delle fatture e dell'IVA e sulla data di scadenza per le spese. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- Include i pagamenti reali di fatture, spese e IVA.
    - Si basa sulle date di pagamento di fatture, spese e IVA. -RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the validation date of these invoices.
    -RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    +RulesCAIn=- Comprende le fatture effettivamente pagate dai clienti.
    - Si basa sulla data dei pagamenti.
    RulesCATotalSaleJournal=It includes all credit lines from the Sale journal. RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" 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 -DepositsAreIncluded=- Down payment invoices are included +DepositsAreIncluded=- Sono incluse le fatture d'acconto LT1ReportByCustomers=Report tax 2 by third party LT2ReportByCustomers=Report tax 3 by third party LT1ReportByCustomersES=Report by third party RE @@ -211,7 +211,7 @@ Pcg_version=Chart of accounts models Pcg_type=Tipo pcg Pcg_subtype=Sottotipo Pcg InvoiceLinesToDispatch=Riga di fattura da spedire *consegnare -ByProductsAndServices=By product and service +ByProductsAndServices=Per prodotti e servizi RefExt=Referente esterno ToCreateAPredefinedInvoice=Per creare un modello di fattura, crea una fattura standard e poi, senza convalidarla, clicca sul pulsante "%s". LinkedOrder=Collega a ordine @@ -219,7 +219,7 @@ Mode1=Metodo 1 Mode2=Metodo 2 CalculationRuleDesc=Ci sono due metodi per calcolare l'IVA totale:
    Metodo 1: arrotondare l'IVA per ogni riga e poi sommare.
    Metodo 2: sommare l'IVA di ogni riga e poi arrotondare il risultato della somma.
    Il risultato finale può differire di alcuni centesimi tra i due metodi. Il metodo di default è il %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. +TurnoverPerProductInCommitmentAccountingNotRelevant=Il report sul fatturato per prodotto non è disponibile. Questo rapporto è disponibile solo per il fatturato. TurnoverPerSaleTaxRateInCommitmentAccountingNotRelevant=The report of Turnover collected per sale tax rate is not available. This report is only available for turnover invoiced. CalculationMode=Metodo di calcolo AccountancyJournal=Accounting code journal @@ -250,8 +250,15 @@ LastDayTaxIsRelatedTo=Last day of period the tax is related to VATDue=Sale tax claimed ClaimedForThisPeriod=Claimed for the period PaidDuringThisPeriod=Paid during this period -ByVatRate=By sale tax rate -TurnoverbyVatrate=Turnover invoiced by sale tax rate -TurnoverCollectedbyVatrate=Turnover collected by sale tax rate -PurchasebyVatrate=Purchase by sale tax rate +ByVatRate=Per aliquota iva di vendita +TurnoverbyVatrate=Fatturato per aliquota iva di vendita +TurnoverCollectedbyVatrate=Fatturato per aliquota iva di vendita +PurchasebyVatrate=Acquisti per aliquota iva LabelToShow=Etichetta breve +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/it_IT/ecm.lang b/htdocs/langs/it_IT/ecm.lang index 84390cc378f..78b9b6f0f1b 100644 --- a/htdocs/langs/it_IT/ecm.lang +++ b/htdocs/langs/it_IT/ecm.lang @@ -34,8 +34,8 @@ ECMDocsByProjects=Documenti collegati ai progetti ECMDocsByUsers=Documenti collegati agli utenti ECMDocsByInterventions=Documenti collegati agli interventi ECMDocsByExpenseReports=Documenti collegati a note spese -ECMDocsByHolidays=Documents linked to holidays -ECMDocsBySupplierProposals=Documents linked to supplier proposals +ECMDocsByHolidays=Documenti collegati alle ferie +ECMDocsBySupplierProposals=Documenti collegati alle proposte fornitore ECMNoDirectoryYet=Nessuna directory creata ShowECMSection=Visualizza la directory DeleteSection=Eliminare la directory diff --git a/htdocs/langs/it_IT/errors.lang b/htdocs/langs/it_IT/errors.lang index 778ea8e2d0d..c70da08be62 100644 --- a/htdocs/langs/it_IT/errors.lang +++ b/htdocs/langs/it_IT/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=File non completamente ricevuto dal server. ErrorNoTmpDir=La directory temporanea %s non esiste. ErrorUploadBlockedByAddon=Upload bloccato da un plugin di Apache/PHP ErrorFileSizeTooLarge=La dimensione del file è troppo grande. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Numero troppo lungo (massimo %s cifre) ErrorSizeTooLongForVarcharType=Stringa troppo lunga (limite di %s caratteri) ErrorNoValueForSelectType=Per favore immetti un valore per la lista di selezione @@ -165,7 +166,7 @@ ErrorPriceExpression24=La variabile '%s' esiste, ma non è valorizzata ErrorPriceExpressionInternal=Errore interno '%s' ErrorPriceExpressionUnknown=Errore sconosciuto '%s' ErrorSrcAndTargetWarehouseMustDiffers=I magazzini di origine e di destinazione devono essere diversi -ErrorTryToMakeMoveOnProductRequiringBatchData=Error, trying to make a stock movement without lot/serial information, on product '%s' requiring lot/serial information +ErrorTryToMakeMoveOnProductRequiringBatchData=Errore, tentativo di eseguire un movimento di magazzino senza informazioni lotto / seriale, sul prodotto '%s' che richiede informazioni lotto / seriale ErrorCantSetReceptionToTotalDoneWithReceptionToApprove=All recorded receptions must first be verified (approved or denied) before being allowed to do this action ErrorCantSetReceptionToTotalDoneWithReceptionDenied=All recorded receptions must first be verified (approved) before being allowed to do this action ErrorGlobalVariableUpdater0=Richiesta HTTP fallita con errore '%s' @@ -187,7 +188,7 @@ ErrorsThirdpartyMerge=Failed to merge the two records. Request canceled. ErrorStockIsNotEnoughToAddProductOnOrder=Stock is not enough for product %s to add it into a new order. ErrorStockIsNotEnoughToAddProductOnInvoice=Stock is not enough for product %s to add it into a new invoice. ErrorStockIsNotEnoughToAddProductOnShipment=Stock is not enough for product %s to add it into a new shipment. -ErrorStockIsNotEnoughToAddProductOnProposal=Stock is not enough for product %s to add it into a new proposal. +ErrorStockIsNotEnoughToAddProductOnProposal=Le scorte del prodotto %s non sono sufficienti per aggiungerlo in una nuova proposta. ErrorFailedToLoadLoginFileForMode=Failed to get the login key for mode '%s'. ErrorModuleNotFound=Impossibile trovare il file del modulo ErrorFieldAccountNotDefinedForBankLine=Value for Accounting account not defined for source line id %s (%s) @@ -234,12 +235,13 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # 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 +WarningMandatorySetupNotComplete=I parametri di configurazione obbligatori non sono ancora stati definiti. +WarningEnableYourModulesApplications=Attiva i moduli/applicazioni per iniziare ad utilizzare il software WarningSafeModeOnCheckExecDir=Attenzione: quando è attiva l'opzione safe_mode, il comando deve essere contenuto in una directory dichiarata dal parametro safe_mode_exec_dir. WarningBookmarkAlreadyExists=Un segnalibro per questo link (URL) o con lo stesso titolo esiste già. WarningPassIsEmpty=Attenzione, il database è accessibile senza password. Questa è una grave falla di sicurezza! Si dovrebbe aggiungere una password per il database e cambiare il file conf.php di conseguenza. @@ -259,5 +261,5 @@ WarningYourLoginWasModifiedPleaseLogin=La tua login è stata modificata. Per rag WarningAnEntryAlreadyExistForTransKey=Esiste già una voce tradotta per la chiave di traduzione per questa lingua WarningNumberOfRecipientIsRestrictedInMassAction=Warning, number of different recipient is limited to %s when using the mass actions on lists WarningDateOfLineMustBeInExpenseReportRange=Warning, the date of line is not in the range of the expense report -WarningProjectClosed=Project is closed. You must re-open it first. +WarningProjectClosed=Il progetto è chiuso. È necessario prima aprirlo nuovamente. WarningSomeBankTransactionByChequeWereRemovedAfter=Some bank transaction were removed after that the receipt including them were generated. So nb of cheques and total of receipt may differ from number and total in list. diff --git a/htdocs/langs/it_IT/exports.lang b/htdocs/langs/it_IT/exports.lang index bf0ca6d90bc..0e0af4a9030 100644 --- a/htdocs/langs/it_IT/exports.lang +++ b/htdocs/langs/it_IT/exports.lang @@ -26,6 +26,8 @@ FieldTitle=Campi titolo NowClickToGenerateToBuildExportFile=Ora, fare clic su "Genera" per generare il file di esportazione ... AvailableFormats=Formati disponibili LibraryShort=Libreria +ExportCsvSeparator=Csv caracter separator +ImportCsvSeparator=Csv caracter separator Step=Passaggio FormatedImport=Importazione assistita FormatedImportDesc1=Questa sezione consente di importare dati personalizzati, utilizzando un assistente per aiutarti nel processo anche senza conoscenze tecniche. @@ -119,7 +121,7 @@ KeepEmptyToGoToEndOfFile=Lascia il campo vuoto per andare alla fine del file SelectPrimaryColumnsForUpdateAttempt=Select column(s) to use as primary key for update attempt UpdateNotYetSupportedForThisImport=Il caricamento non è supportato per questo tipo di importazione (solo inserimento) NoUpdateAttempt=No update attempt was performed, only insert -ImportDataset_user_1=Untenti (dipendenti o no) e proprietà +ImportDataset_user_1=Utenti (dipendenti o no) e proprietà ComputedField=Computed field ## filters SelectFilterFields=Se vuoi filtrare su qualche valore, inserisci qui il valore. diff --git a/htdocs/langs/it_IT/holiday.lang b/htdocs/langs/it_IT/holiday.lang index 89821e19cc4..1a91af8aeb4 100644 --- a/htdocs/langs/it_IT/holiday.lang +++ b/htdocs/langs/it_IT/holiday.lang @@ -1,7 +1,7 @@ # Dolibarr language file - Source file is en_US - holiday HRM=Risorse umane -Holidays=Leave -CPTitreMenu=Leave +Holidays=Ferie / Permessi +CPTitreMenu=Ferie / Permessi MenuReportMonth=Estratto conto mensile MenuAddCP=Nuova richiesta NotActiveModCP=You must enable the module Leave to view this page. @@ -25,8 +25,8 @@ UserForApprovalLogin=Login of approval user DescCP=Descrizione SendRequestCP=Inserisci richiesta di assenza DelayToRequestCP=Le richieste devono essere inserite almeno %s giorni prima dell'inizio. -MenuConfCP=Balance of leave -SoldeCPUser=Leave balance is %s days. +MenuConfCP=Bilancio delle ferie / permessi +SoldeCPUser=Rimangono %s giorni di ferie ErrorEndDateCP=La data di fine deve essere posteriore alla data di inizio. ErrorSQLCreateCP=Si è verificato un errore SQL durante la creazione: ErrorIDFicheCP=Si è verificato un errore: la richiesta non esiste. @@ -99,8 +99,8 @@ AllHolidays=Tutte le richieste di permesso HalfDay=Mezza giornata NotTheAssignedApprover=You are not the assigned approver LEAVE_PAID=Paid vacation -LEAVE_SICK=Sick leave -LEAVE_OTHER=Other leave +LEAVE_SICK=Malattia +LEAVE_OTHER=Altro LEAVE_PAID_FR=Paid vacation ## Configuration du Module ## LastUpdateCP=Latest automatic update of leave allocation @@ -115,19 +115,19 @@ HolidaysToValidate=Convalida ferie HolidaysToValidateBody=Di sotto una richiesta ferie da convalidare HolidaysToValidateDelay=Questa richiesta avrà luogo fra meno di %s giorni HolidaysToValidateAlertSolde=The user who made this leave request does not have enough available days. -HolidaysValidated=Richieste di assenza approvate +HolidaysValidated=Richieste di ferie/permesso approvate HolidaysValidatedBody=La tua richiesta di ferie dal %s al %s è stata approvata HolidaysRefused=Richiesta negata HolidaysRefusedBody=Your leave request for %s to %s has been denied for the following reason: -HolidaysCanceled=Richiesta di assenza cancellata +HolidaysCanceled=Richiesta di ferie/permesso eliminata HolidaysCanceledBody=La tua richiesta di ferie dal %s al %s è stata cancellata FollowedByACounter=1: questo tipo di ferie segue un contatore. Il contatore incrementa automaticamente o manualmente e quando una richiesta di ferie è validata. il contatore decrementa.
    0: non segue nessun contatore NoLeaveWithCounterDefined=Non ci sono tipi di ferie definite che devono seguire un contatore -GoIntoDictionaryHolidayTypes=Go into Home - Setup - Dictionaries - Type of leave to setup the different types of leaves. +GoIntoDictionaryHolidayTypes=Vai in Home - Impostazioni - Dizionari - Tipi di ferie/permessi per impostare i diversi tipi di ferie e permessi. HolidaySetup=Setup of module Holiday HolidaysNumberingModules=Leave requests numbering models TemplatePDFHolidays=Template for leave requests PDF FreeLegalTextOnHolidays=Free text on PDF WatermarkOnDraftHolidayCards=Watermarks on draft leave requests -HolidaysToApprove=Holidays to approve +HolidaysToApprove=Ferie da approvare NobodyHasPermissionToValidateHolidays=Nobody has permission to validate holidays diff --git a/htdocs/langs/it_IT/install.lang b/htdocs/langs/it_IT/install.lang index ca43361cf52..659ce3b4a2d 100644 --- a/htdocs/langs/it_IT/install.lang +++ b/htdocs/langs/it_IT/install.lang @@ -16,7 +16,8 @@ PHPSupportCurl=This PHP supports Curl. PHPSupportCalendar=Questo PHP supporta le estensioni dei calendari. PHPSupportUTF8=This PHP supports UTF8 functions. PHPSupportIntl=This PHP supports Intl functions. -PHPSupport=This PHP supports %s functions. +PHPSupportxDebug=This PHP supports extended debug functions. +PHPSupport=La versione di PHP supporta la funzione %s. PHPMemoryOK=La memoria massima per la sessione è fissata dal PHP a %s. Dovrebbe essere sufficiente. 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 @@ -26,7 +27,8 @@ ErrorPHPDoesNotSupportCurl=L'attuale installazione di PHP non supporta cURL. ErrorPHPDoesNotSupportCalendar=La tua installazione di PHP non supporta le estensioni del calendario php. 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. -ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. +ErrorPHPDoesNotSupport=La tua installazione di PHP non supporta le funzioni %s. ErrorDirDoesNotExists=La directory %s non esiste. ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. ErrorWrongValueForParameter=Potresti aver digitato un valore errato per il parametro %s. @@ -210,10 +212,12 @@ MigrationUserPhotoPath=Migration of photo paths for users MigrationFieldsSocialNetworks=Migration of users fields social networks (%s) MigrationReloadModule=Ricarica modulo %s MigrationResetBlockedLog=Reset del modulo BlockedLog per l'algoritmo v7 -ShowNotAvailableOptions=Show unavailable options -HideNotAvailableOptions=Hide unavailable options +ShowNotAvailableOptions=Mostra opzioni non disponibili +HideNotAvailableOptions=Nascondi opzioni non disponibili 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. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/it_IT/link.lang b/htdocs/langs/it_IT/link.lang index 3c3a345c16a..5448ce32703 100644 --- a/htdocs/langs/it_IT/link.lang +++ b/htdocs/langs/it_IT/link.lang @@ -8,3 +8,4 @@ LinkRemoved=Il collegamento %s è stato rimosso ErrorFailedToDeleteLink= Impossibile rimuovere il collegamento '%s' ErrorFailedToUpdateLink= Impossibile caricare il collegamento '%s' URLToLink=Indirizzo del link +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/it_IT/mails.lang b/htdocs/langs/it_IT/mails.lang index 306ba1f5a22..cb3d441981a 100644 --- a/htdocs/langs/it_IT/mails.lang +++ b/htdocs/langs/it_IT/mails.lang @@ -50,7 +50,7 @@ ConfirmValidMailing=Intendi veramente validare questo invio? ConfirmResetMailing=Warning, by re-initializing emailing %s, you will allow the re-sending this email in a bulk mailing. Are you sure you want to do this? ConfirmDeleteMailing=Are you sure you want to delete this emailing? NbOfUniqueEMails=No. of unique emails -NbOfEMails=No. of EMails +NbOfEMails=Numero di email TotalNbOfDistinctRecipients=Numero di singoli destinatari NoTargetYet=Nessun destinatario ancora definito (Vai alla scheda 'destinatari') NoRecipientEmail=No recipient email for %s @@ -75,7 +75,7 @@ XTargetsAdded=%s destinatari aggiunti alla lista di invio OnlyPDFattachmentSupported=If the PDF documents were already generated for the objects to send, they will be attached to email. If not, no email will be sent (also, note that only pdf documents are supported as attachments in mass sending in this version). AllRecipientSelected=The recipients of the %s record selected (if their email is known). GroupEmails=Group emails -OneEmailPerRecipient=One email per recipient (by default, one email per record selected) +OneEmailPerRecipient=Una e-mail per destinatario (per impostazione predefinita, una e-mail per record selezionato) WarningIfYouCheckOneRecipientPerEmail=Warning, if you check this box, it means only one email will be sent for several different record selected, so, if your message contains substitution variables that refers to data of a record, it becomes not possible to replace them. ResultOfMailSending=Result of mass Email sending NbSelected=Number selected @@ -162,9 +162,9 @@ AdvTgtCreateFilter=Crea filtro AdvTgtOrCreateNewFilter=Titolo del nuovo filtro NoContactWithCategoryFound=No contact/address with a category found NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found -OutGoingEmailSetup=Outgoing email setup +OutGoingEmailSetup=Configurazione email in uscita InGoingEmailSetup=Incoming email setup -OutGoingEmailSetupForEmailing=Outgoing email setup (for mass emailing) -DefaultOutgoingEmailSetup=Default outgoing email setup +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) +DefaultOutgoingEmailSetup=Impostazione predefinita email in uscita Information=Informazioni ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/it_IT/main.lang b/htdocs/langs/it_IT/main.lang index 8b222aac6de..b7d535794fe 100644 --- a/htdocs/langs/it_IT/main.lang +++ b/htdocs/langs/it_IT/main.lang @@ -171,9 +171,10 @@ NotValidated=Non valido Save=Salva SaveAs=Salva con nome SaveAndStay=Salva e rimani -SaveAndNew=Save and new +SaveAndNew=Salva e nuovo TestConnection=Test connessione ToClone=Clonare +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Choose data you want to clone: NoCloneOptionsSpecified=Dati da clonare non definiti Of=di @@ -338,12 +339,12 @@ Copy=Copia Paste=Incolla Default=Predefinito DefaultValue=Valore predefinito -DefaultValues=Default values/filters/sorting +DefaultValues=Valori / filtri / ordinamenti predefiniti Price=Prezzo PriceCurrency=Prezzo (valuta) UnitPrice=Prezzo unitario -UnitPriceHT=Unit price (excl.) -UnitPriceHTCurrency=Unit price (excl.) (currency) +UnitPriceHT=Prezzo unitario (netto) +UnitPriceHTCurrency=Prezzo unitario (netto) (valuta) UnitPriceTTC=Prezzo unitario (lordo) PriceU=P.U. PriceUHT=P.U.(netto) @@ -353,11 +354,11 @@ Amount=Importo AmountInvoice=Importo della fattura AmountInvoiced=Importo fatturato AmountInvoicedHT=Amount invoiced (incl. tax) -AmountInvoicedTTC=Amount invoiced (excl. tax) +AmountInvoicedTTC=Importo fatturato (al netto delle imposte) AmountPayment=Importo del pagamento -AmountHTShort=Amount (excl.) +AmountHTShort=Importo (netto) AmountTTCShort=Importo (IVA inc.) -AmountHT=Amount (excl. tax) +AmountHT=Importo (al netto delle imposte) AmountTTC=Importo (IVA inclusa) AmountVAT=Importo IVA MulticurrencyAlreadyPaid=Already paid, original currency @@ -372,8 +373,8 @@ AmountLT1ES=Importo RE (Spagna) AmountLT2ES=Importo IRPF (Spagna) AmountTotal=Importo totale AmountAverage=Importo medio -PriceQtyMinHT=Price quantity min. (excl. tax) -PriceQtyMinHTCurrency=Price quantity min. (excl. tax) (currency) +PriceQtyMinHT=Prezzo quantità min. tasse escluse +PriceQtyMinHTCurrency=Prezzo per quantità min. (tasse escluse) (valuta) Percentage=Percentuale Total=Totale SubTotal=Totale parziale @@ -394,7 +395,7 @@ TotalLT1ES=Totale RE TotalLT2ES=Totale IRPF TotalLT1IN=Totale CGST TotalLT2IN=Totale SGST -HT=Excl. tax +HT=Al netto delle imposte TTC=IVA inclusa INCVATONLY=IVA inclusa INCT=Inc. tutte le tasse @@ -432,7 +433,7 @@ Favorite=Preferito ShortInfo=Info. Ref=Rif. ExternalRef=Rif. esterno -RefSupplier=Rif. venditore +RefSupplier=Rif. fornitore RefPayment=Rif. pagamento CommercialProposalsShort=Preventivi/Proposte commerciali Comment=Commento @@ -632,9 +633,9 @@ BuildDoc=Genera Doc Entity=Entità Entities=Entità CustomerPreview=Anteprima cliente -SupplierPreview=Anteprima venditore +SupplierPreview=Anteprima fornitore ShowCustomerPreview=Visualizza anteprima cliente -ShowSupplierPreview=Mostra anteprima venditore +ShowSupplierPreview=Visualizza anteprima fornitore RefCustomer=Rif. cliente Currency=Valuta InfoAdmin=Informazioni per gli amministratori @@ -721,7 +722,7 @@ Notes=Note AddNewLine=Aggiungi una nuova riga AddFile=Aggiungi file FreeZone=Non è un prodotto/servizio predefinito -FreeLineOfType=Free-text item, type: +FreeLineOfType=Testo libero, tipologia: CloneMainAttributes=Clona oggetto con i suoi principali attributi ReGeneratePDF=Rigenera PDF PDFMerge=Unisci PDF @@ -745,8 +746,8 @@ Result=Risultato ToTest=Provare ValidateBefore=Convalidare la scheda prima di utilizzare questa funzione Visibility=Visibilità -Totalizable=Totalizable -TotalizableDesc=This field is totalizable in list +Totalizable=Totalizzabile +TotalizableDesc=Questo campo è totalizzabile nell'elenco Private=Privato Hidden=Nascosto Resources=Risorse @@ -765,13 +766,13 @@ LinkTo=Collega a... LinkToProposal=Collega a proposta LinkToOrder=Collega a ordine LinkToInvoice=Collega a fattura attiva -LinkToTemplateInvoice=Link to template invoice -LinkToSupplierOrder=Link to purchase order -LinkToSupplierProposal=Link to vendor proposal -LinkToSupplierInvoice=Link to vendor invoice +LinkToTemplateInvoice=Collega ad un modello di fattura +LinkToSupplierOrder=Collega ad un ordine d'acquisto +LinkToSupplierProposal=Collega alla proposta fornitore +LinkToSupplierInvoice=Collega alla fattura fornitore LinkToContract=Collega a contratto LinkToIntervention=Collega a intervento -LinkToTicket=Link to ticket +LinkToTicket=Collega al ticket CreateDraft=Crea bozza SetToDraft=Ritorna a bozza ClickToEdit=Clicca per modificare @@ -829,6 +830,8 @@ Gender=Genere Genderman=Uomo Genderwoman=Donna ViewList=Vista elenco +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Obbligatorio Hello=Ciao GoodBye=Addio @@ -874,7 +877,7 @@ Download=Download DownloadDocument=Scarica documento ActualizeCurrency=Aggiorna tasso di cambio Fiscalyear=Anno fiscale -ModuleBuilder=Module and Application Builder +ModuleBuilder=Generatore di moduli/applicazioni SetMultiCurrencyCode=Imposta valuta BulkActions=Azioni in blocco ClickToShowHelp=Clicca per mostrare l'aiuto contestuale @@ -887,20 +890,20 @@ HR=HR HRAndBank=HR e Banca AutomaticallyCalculated=Calcolato automaticamente TitleSetToDraft=Torna a Bozza -ConfirmSetToDraft=Are you sure you want to go back to Draft status? +ConfirmSetToDraft=Sei sicuro di voler tornare allo stato di Bozza? ImportId=ID di importazione Events=Eventi EMailTemplates=Modelli e-mail FileNotShared=File non condiviso con pubblico esterno Project=Progetto Projects=Progetti -LeadOrProject=Lead | Project +LeadOrProject=Opportunità | Progetto LeadsOrProjects=Leads | Projects Lead=Lead Leads=Leads ListOpenLeads=List open leads ListOpenProjects=Lista progetti aperti -NewLeadOrProject=New lead or project +NewLeadOrProject=Nuova opportunità o progetto Rights=Autorizzazioni LineNb=Linea n° IncotermLabel=Import-Export @@ -956,12 +959,12 @@ SearchIntoSupplierInvoices=Fatture Fornitore SearchIntoCustomerOrders=Ordini Cliente SearchIntoSupplierOrders=Ordini d'acquisto SearchIntoCustomerProposals=Proposte del cliente -SearchIntoSupplierProposals=Proposta venditore +SearchIntoSupplierProposals=Proposte fornitore SearchIntoInterventions=Interventi SearchIntoContracts=Contratti SearchIntoCustomerShipments=Spedizioni cliente SearchIntoExpenseReports=Nota spese -SearchIntoLeaves=Leave +SearchIntoLeaves=Ferie / Permessi SearchIntoTickets=Ticket CommentLink=Commenti NbComments=Numero dei commenti @@ -997,7 +1000,7 @@ NoRecordedUsers=No users ToClose=Da chiudere ToProcess=Da lavorare ToApprove=To approve -GlobalOpenedElemView=Global view +GlobalOpenedElemView=Vista globale NoArticlesFoundForTheKeyword=No article found for the keyword '%s' NoArticlesFoundForTheCategory=No article found for the category ToAcceptRefuse=Da accettare | Rifiutare @@ -1020,5 +1023,8 @@ CustomReports=Custom reports StatisticsOn=Statistics on SelectYourGraphOptionsFirst=Select your graph options to build a graph Measures=Measures -XAxis=X-Axis -YAxis=Y-Axis +XAxis=Asse X +YAxis=Asse Y +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/it_IT/modulebuilder.lang b/htdocs/langs/it_IT/modulebuilder.lang index 85c0c0f1e55..fb1de1a4cad 100644 --- a/htdocs/langs/it_IT/modulebuilder.lang +++ b/htdocs/langs/it_IT/modulebuilder.lang @@ -6,7 +6,7 @@ ModuleBuilderDesc2=Path where modules are generated/edited (first directory for ModuleBuilderDesc3=Generated/editable modules found: %s ModuleBuilderDesc4=A module is detected as 'editable' when the file %s exists in root of module directory NewModule=Nuovo modulo -NewObjectInModulebuilder=New object +NewObjectInModulebuilder=Nuovo oggetto ModuleKey=Module key ObjectKey=Object key ModuleInitialized=Modulo inizializzato @@ -60,17 +60,17 @@ HooksFile=File for hooks code ArrayOfKeyValues=Array of key-val ArrayOfKeyValuesDesc=Array of keys and values if field is a combo list with fixed values WidgetFile=Widget file -CSSFile=CSS file -JSFile=Javascript file +CSSFile=File CSS +JSFile=File Javascript ReadmeFile=Readme file ChangeLog=ChangeLog file TestClassFile=File for PHP Unit Test class SqlFile=Sql file PageForLib=File for PHP library PageForObjLib=File for PHP library dedicated to object -SqlFileExtraFields=Sql file for complementary attributes +SqlFileExtraFields=File SQL per attributi complementari SqlFileKey=Sql file for keys -SqlFileKeyExtraFields=Sql file for keys of complementary attributes +SqlFileKeyExtraFields=File SQL per chiavi di attributi complementari AnObjectAlreadyExistWithThisNameAndDiffCase=An object already exists with this name and a different case UseAsciiDocFormat=You can use Markdown format, but it is recommended to use Asciidoc format (omparison between .md and .asciidoc: http://asciidoctor.org/docs/user-manual/#compared-to-markdown) IsAMeasure=Is a measure @@ -79,15 +79,15 @@ NoTrigger=No trigger NoWidget=No widget GoToApiExplorer=Go to API explorer ListOfMenusEntries=List of menu entries -ListOfDictionariesEntries=List of dictionaries entries +ListOfDictionariesEntries=Elenco voci dizionari ListOfPermissionsDefined=List of defined permissions -SeeExamples=See examples here +SeeExamples=Vedi esempi qui EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) -VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create). Using a negative value means field is not shown by default on list but can be selected for viewing). It can be an expression, for example: preg_match('/public/', $_SERVER['PHP_SELF'])?0:1 -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene -DisplayOnPdf=Display on PDF +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty +DisplayOnPdf=Mostra sul PDF IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) -SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) +SearchAllDesc=Il campo è utilizzato per effettuare una ricerca dallo strumento di ricerca rapida? (Esempi: 1 o 0) SpecDefDesc=Enter here all documentation you want to provide with your module that is not already defined by other tabs. You can use .md or better, the rich .asciidoc syntax. LanguageDefDesc=Enter in this files, all the key and the translation for each language file. MenusDefDesc=Define here the menus provided by your module @@ -129,13 +129,13 @@ UseSpecificVersion = Use a specific initial version ModuleMustBeEnabled=The module/application must be enabled first IncludeRefGeneration=The reference of object must be generated automatically IncludeRefGenerationHelp=Check this if you want to include code to manage the generation automatically of the reference -IncludeDocGeneration=I want to generate some documents from the object +IncludeDocGeneration=Desidero generare alcuni documenti da questo oggetto IncludeDocGenerationHelp=If you check this, some code will be generated to add a "Generate document" box on the record. -ShowOnCombobox=Show value into combobox +ShowOnCombobox=Mostra il valore dentro il combobox KeyForTooltip=Key for tooltip -CSSClass=CSS Class -NotEditable=Not editable -ForeignKey=Foreign key +CSSClass=Classe CSS +NotEditable=Non modificabile +ForeignKey=Chiave esterna TypeOfFieldsHelp=Type of fields:
    varchar(99), double(24,8), real, text, html, datetime, timestamp, integer, integer:ClassName:relativepath/to/classfile.class.php[:1[:filter]] ('1' means we add a + button after the combo to create the record, 'filter' can be 'status=1 AND fk_user = __USER_ID AND entity IN (__SHARED_ENTITIES__)' for example) AsciiToHtmlConverter=Ascii to HTML converter AsciiToPdfConverter=Ascii to PDF converter diff --git a/htdocs/langs/it_IT/mrp.lang b/htdocs/langs/it_IT/mrp.lang index 7706c41f4b8..c0185190272 100644 --- a/htdocs/langs/it_IT/mrp.lang +++ b/htdocs/langs/it_IT/mrp.lang @@ -1,6 +1,6 @@ Mrp=Ordini di produzione MO=Ordine di produzione -MRPDescription=Module to manage production and Manufacturing Orders (MO). +MRPDescription=Modulo per la gestione degli ordini di produzione (MO). MRPArea=MRP Area MrpSetupPage=Configurazione del modulo MRP MenuBOM=Bills of material @@ -15,20 +15,20 @@ NewBOM=New bill of material ProductBOMHelp=Product to create with this BOM BOMsNumberingModules=BOM numbering templates BOMsModelModule=BOMS document templates -MOsNumberingModules=MO numbering templates -MOsModelModule=MO document templates +MOsNumberingModules=Modelli di numerazione degli ordini di produzione (MO) +MOsModelModule=Modello PDF ordini di produzione (MO) FreeLegalTextOnBOMs=Free text on document of BOM WatermarkOnDraftBOMs=Watermark on draft BOM -FreeLegalTextOnMOs=Free text on document of MO -WatermarkOnDraftMOs=Watermark on draft MO +FreeLegalTextOnMOs=Testo libero sui documenti MO +WatermarkOnDraftMOs=Filigrana sulla bozza degli ordini di produzione MO (se presente) ConfirmCloneBillOfMaterials=Are you sure you want to clone this bill of material ? -ConfirmCloneMo=Are you sure you want to clone the Manufacturing Order %s ? +ConfirmCloneMo=Vuoi davvero clonare l'ordine di produzione %s? ManufacturingEfficiency=Manufacturing efficiency ConsumptionEfficiency=Consumption efficiency ValueOfMeansLoss=Value of 0.95 means an average of 5%% of loss during the production ValueOfMeansLossForProductProduced=Value of 0.95 means an average of 5%% of loss of produced product DeleteBillOfMaterials=Delete Bill Of Materials -DeleteMo=Delete Manufacturing Order +DeleteMo=Elimina Ordine di Produzione ConfirmDeleteBillOfMaterials=Are you sure you want to delete this Bill Of Material? ConfirmDeleteMo=Are you sure you want to delete this Bill Of Material? MenuMRP=Ordini di produzione @@ -40,22 +40,22 @@ KeepEmptyForAsap=Vuoto significa "Il più presto possibile" EstimatedDuration=Durata stimata EstimatedDurationDesc=Estimated duration to manufacture this product using this BOM ConfirmValidateBom=Are you sure you want to validate the BOM with the reference %s (you will be able to use it to build new Manufacturing Orders) -ConfirmCloseBom=Are you sure you want to cancel this BOM (you won't be able to use it to build new Manufacturing Orders anymore) ? +ConfirmCloseBom=Vuoi davvero eliminare questa Distinta Base (non sarà più possibile utilizzarla per creare nuovi ordini di produzione) ConfirmReopenBom=Are you sure you want to re-open this BOM (you will be able to use it to build new Manufacturing Orders) StatusMOProduced=Prodotto -QtyFrozen=Frozen Qty -QuantityFrozen=Frozen Quantity +QtyFrozen=Quantità congelata +QuantityFrozen=Quantità congelata QuantityConsumedInvariable=When this flag is set, the quantity consumed is always the value defined and is not relative to the quantity produced. DisableStockChange=Stock change disabled DisableStockChangeHelp=When this flag is set, there is no stock change on this product, whatever is the quantity consumed BomAndBomLines=Bills Of Material and lines BOMLine=Line of BOM -WarehouseForProduction=Warehouse for production -CreateMO=Create MO +WarehouseForProduction=Magazzino per la produzione +CreateMO=Crea Ordine di Produzione ToConsume=To consume -ToProduce=To produce -QtyAlreadyConsumed=Qty already consumed -QtyAlreadyProduced=Qty already produced +ToProduce=Da produrre +QtyAlreadyConsumed=Q.tà già consumate +QtyAlreadyProduced=Q.tà già prodotte ConsumeOrProduce=Consume or Produce ConsumeAndProduceAll=Consume and Produce All Manufactured=Manufactured @@ -63,7 +63,7 @@ TheProductXIsAlreadyTheProductToProduce=The product to add is already the produc ForAQuantityOf1=For a quantity to produce of 1 ConfirmValidateMo=Are you sure you want to validate this Manufacturing Order? ConfirmProductionDesc=By clicking on '%s', you will validate the consumption and/or production for the quantities set. This will also update the stock and record stock movements. -ProductionForRef=Production of %s +ProductionForRef=Produzione di %s AutoCloseMO=Close automatically the Manufacturing Order if quantities to consume and to produce are reached NoStockChangeOnServices=No stock change on services ProductQtyToConsumeByMO=Product quantity still to consume by open MO @@ -71,3 +71,5 @@ ProductQtyToProduceByMO=Product quentity still to produce by open MO AddNewConsumeLines=Add new line to consume ProductsToConsume=Products to consume ProductsToProduce=Products to produce +UnitCost=Unit cost +TotalCost=Total cost diff --git a/htdocs/langs/it_IT/multicurrency.lang b/htdocs/langs/it_IT/multicurrency.lang index 4f05cd491b6..1dafc929e0b 100644 --- a/htdocs/langs/it_IT/multicurrency.lang +++ b/htdocs/langs/it_IT/multicurrency.lang @@ -8,13 +8,15 @@ MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Use date of document to find currency ra multicurrency_useOriginTx=When an object is created from another, keep the original rate of source object (otherwise use the latest known rate) CurrencyLayerAccount=CurrencyLayer API CurrencyLayerAccount_help_to_synchronize=You sould create an account on their website to use this functionnality
    Get your API key
    If you use a free account you can't change the currency source (USD by default)
    But if your main currency isn't USD you can use the alternate currency source to force you main currency

    You are limited at 1000 synchronizations per month -multicurrency_appId=API key +multicurrency_appId=Chiave API multicurrency_appCurrencySource=Currency source multicurrency_alternateCurrencySource=Alternate currency source CurrenciesUsed=Currencies used -CurrenciesUsed_help_to_add=Add the differents currencies and rates you need to use on you proposals, orders, etc. +CurrenciesUsed_help_to_add=Aggiunge le diverse valute e tassi di cambio che si desiderano utilizzare su proposte , ordini , ecc. rate=rate MulticurrencyReceived=Received, original currency MulticurrencyRemainderToTake=Remaining amout, original currency MulticurrencyPaymentAmount=Payment amount, original currency AmountToOthercurrency=Amount To (in currency of receiving account) +CurrencyRateSyncSucceed=Currency rate synchronization done successfuly +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Use the currency of the document for online payments diff --git a/htdocs/langs/it_IT/oauth.lang b/htdocs/langs/it_IT/oauth.lang index 2a231675247..397a585074e 100644 --- a/htdocs/langs/it_IT/oauth.lang +++ b/htdocs/langs/it_IT/oauth.lang @@ -14,7 +14,7 @@ DeleteAccess=Click qui per eliminare il token UseTheFollowingUrlAsRedirectURI=Usa il seguente indirizzo come Redirect URI quando crei le credenziali sul tuo provider OAuth: ListOfSupportedOauthProviders=Inserisci qui le credenziali fornite dal tuo provider OAuth. Vengono visualizzati solo i provider supportati. Questa configurazione può essere usata ache dagli altri moduli che necessitano di autenticazione OAuth2. OAuthSetupForLogin=Page to generate an OAuth token -SeePreviousTab=See previous tab +SeePreviousTab=Vedi la scheda precedente OAuthIDSecret=OAuth ID and Secret TOKEN_REFRESH=Token Refresh Present TOKEN_EXPIRED=Token scaduto diff --git a/htdocs/langs/it_IT/orders.lang b/htdocs/langs/it_IT/orders.lang index cd567d39f07..c1dbc75c639 100644 --- a/htdocs/langs/it_IT/orders.lang +++ b/htdocs/langs/it_IT/orders.lang @@ -20,10 +20,10 @@ SuppliersOrdersRunning=Ordini d'acquisto in corso CustomerOrder=Sales Order CustomersOrders=Ordini Cliente CustomersOrdersRunning=Ordini Cliente in corso -CustomersOrdersAndOrdersLines=Sales orders and order details +CustomersOrdersAndOrdersLines=Ordini dei clienti e righe degli ordini OrdersDeliveredToBill=Sales orders delivered to bill -OrdersToBill=Sales orders delivered -OrdersInProcess=Sales orders in process +OrdersToBill=Ordini clienti spediti +OrdersInProcess=Ordini clienti in corso OrdersToProcess=Ordini Cliente da trattare SuppliersOrdersToProcess=Ordini Fornitore da trattare SuppliersOrdersAwaitingReception=Ordini di acquisto in attesa di ricezione @@ -87,7 +87,7 @@ NbOfOrders=Numero di ordini OrdersStatistics=Statistiche ordini OrdersStatisticsSuppliers=Purchase order statistics NumberOfOrdersByMonth=Numero di ordini per mese -AmountOfOrdersByMonthHT=Amount of orders by month (excl. tax) +AmountOfOrdersByMonthHT=Importo ordini per mese (al netto delle imposte) ListOfOrders=Elenco degli ordini CloseOrder=Chiudi ordine ConfirmCloseOrder=Are you sure you want to set this order to delivered? Once an order is delivered, it can be set to billed. @@ -104,7 +104,7 @@ OnProcessOrders=Ordini in lavorazione RefOrder=Rif. ordine RefCustomerOrder=Rif. fornitore RefOrderSupplier=Ref. order for vendor -RefOrderSupplierShort=Ref. order vendor +RefOrderSupplierShort=Rif. ordine forn. SendOrderByMail=Invia ordine via email ActionsOnOrder=Azioni all'ordine NoArticleOfTypeProduct=Non ci sono articoli definiti "prodotto" quindi non ci sono articoli da spedire @@ -121,14 +121,14 @@ SupplierOrderSubmitedInDolibarr=Purchase Order %s submitted SupplierOrderClassifiedBilled=Purchase Order %s set billed OtherOrders=Altri ordini ##### Types de contacts ##### -TypeContact_commande_internal_SALESREPFOLL=Representative following-up sales order +TypeContact_commande_internal_SALESREPFOLL=Responsabile ordini cliente TypeContact_commande_internal_SHIPPING=Responsabile spedizioni cliente TypeContact_commande_external_BILLING=Contatto fatturazione cliente TypeContact_commande_external_SHIPPING=Contatto spedizioni cliente TypeContact_commande_external_CUSTOMER=Contatto follow-up cliente TypeContact_order_supplier_internal_SALESREPFOLL=Representative following-up purchase order TypeContact_order_supplier_internal_SHIPPING=Responsabile spedizioni fornitore -TypeContact_order_supplier_external_BILLING=Vendor invoice contact +TypeContact_order_supplier_external_BILLING=Contatto fattura fornitore TypeContact_order_supplier_external_SHIPPING=Vendor shipping contact TypeContact_order_supplier_external_CUSTOMER=Vendor contact following-up order Error_COMMANDE_SUPPLIER_ADDON_NotDefined=Costante COMMANDE_SUPPLIER_ADDON non definita @@ -141,11 +141,12 @@ OrderByEMail=Email OrderByWWW=Sito OrderByPhone=Telefono # Documents models -PDFEinsteinDescription=A complete order model (old implementation of Eratosthene template) +PDFEinsteinDescription=Un modello completo PDF di ordine cliente PDFEratostheneDescription=Un modello completo per gli ordini PDFEdisonDescription=Un modello semplice per gli ordini -PDFProformaDescription=A complete Proforma invoice template +PDFProformaDescription=Un modello completo PDF di fattura Proforma CreateInvoiceForThisCustomer=Ordini da fatturare +CreateInvoiceForThisSupplier=Ordini da fatturare NoOrdersToInvoice=Nessun ordine fatturabile CloseProcessedOrdersAutomatically=Classifica come "Lavorati" tutti gli ordini selezionati OrderCreation=Creazione di ordine diff --git a/htdocs/langs/it_IT/other.lang b/htdocs/langs/it_IT/other.lang index a1750795b26..0fef5921397 100644 --- a/htdocs/langs/it_IT/other.lang +++ b/htdocs/langs/it_IT/other.lang @@ -24,7 +24,7 @@ MessageOK=Message on the return page for a validated payment MessageKO=Message on the return page for a canceled payment ContentOfDirectoryIsNotEmpty=La directory non è vuota. DeleteAlsoContentRecursively=Check to delete all content recursively -PoweredBy=Powered by +PoweredBy=Realizzato da YearOfInvoice=Year of invoice date PreviousYearOfInvoice=Previous year of invoice date NextYearOfInvoice=Following year of invoice date @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Sales order validated Notify_ORDER_SENTBYMAIL=Sales order sent by mail Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email @@ -42,8 +42,8 @@ Notify_ORDER_SUPPLIER_VALIDATE=Purchase order recorded Notify_ORDER_SUPPLIER_APPROVE=Purchase order approved Notify_ORDER_SUPPLIER_REFUSE=Purchase order refused Notify_PROPAL_VALIDATE=proposta convalidata -Notify_PROPAL_CLOSE_SIGNED=Customer proposal closed signed -Notify_PROPAL_CLOSE_REFUSED=Customer proposal closed refused +Notify_PROPAL_CLOSE_SIGNED=Proposta del cliente chiusa come firmata +Notify_PROPAL_CLOSE_REFUSED=Proposta del cliente chiusa come rifiutata Notify_PROPAL_SENTBYMAIL=Proposta inviata per email Notify_WITHDRAW_TRANSMIT=Invia prelievo Notify_WITHDRAW_CREDIT=Accredita prelievo @@ -55,9 +55,9 @@ Notify_BILL_UNVALIDATE=Ricevuta cliente non convalidata Notify_BILL_PAYED=Customer invoice paid Notify_BILL_CANCEL=Fattura attiva annullata Notify_BILL_SENTBYMAIL=Fattura attiva inviata per email -Notify_BILL_SUPPLIER_VALIDATE=Vendor invoice validated -Notify_BILL_SUPPLIER_PAYED=Vendor invoice paid -Notify_BILL_SUPPLIER_SENTBYMAIL=Vendor invoice sent by mail +Notify_BILL_SUPPLIER_VALIDATE=Fattura fornitore convalidata +Notify_BILL_SUPPLIER_PAYED=Fattura fornitore pagata +Notify_BILL_SUPPLIER_SENTBYMAIL=Fattura fornitore inviata per mail Notify_BILL_SUPPLIER_CANCELED=Vendor invoice cancelled Notify_CONTRACT_VALIDATE=Contratto convalidato Notify_FICHINTER_VALIDATE=Intervento convalidato @@ -74,17 +74,17 @@ Notify_PROJECT_CREATE=Creazione del progetto Notify_TASK_CREATE=Attività creata Notify_TASK_MODIFY=Attività modificata Notify_TASK_DELETE=Attività cancellata -Notify_EXPENSE_REPORT_VALIDATE=Expense report validated (approval required) -Notify_EXPENSE_REPORT_APPROVE=Expense report approved -Notify_HOLIDAY_VALIDATE=Leave request validated (approval required) -Notify_HOLIDAY_APPROVE=Leave request approved +Notify_EXPENSE_REPORT_VALIDATE=Note spese convalidate (è richiesta l'approvazione) +Notify_EXPENSE_REPORT_APPROVE=Nota spesa approvata +Notify_HOLIDAY_VALIDATE=Richiesta ferie/permesso convalidata (approvazione richiesta) +Notify_HOLIDAY_APPROVE=Richiesta ferie/permesso approvata SeeModuleSetup=Vedi la configurazione del modulo %s NbOfAttachedFiles=Numero di file/documenti allegati TotalSizeOfAttachedFiles=Dimensione totale dei file/documenti allegati MaxSize=La dimensione massima è AttachANewFile=Allega un nuovo file/documento LinkedObject=Oggetto collegato -NbOfActiveNotifications=Number of notifications (no. of recipient emails) +NbOfActiveNotifications=Numero di notifiche (num. di email da ricevere) PredefinedMailTest=__(Hello)__\nThis is a test mail sent to __EMAIL__.\nThe two lines are separated by a carriage return.\n\n__USER_SIGNATURE__ PredefinedMailTestHtml=__(Hello)__\nThis is a test mail (the word test must be in bold).
    The two lines are separated by a carriage return.

    __USER_SIGNATURE__ PredefinedMailContentContract=__(Buongiorno)__\n\n\n__(Cordialmente)__\n\n__USER_SIGNATURE__ @@ -181,30 +181,30 @@ AuthenticationDoesNotAllowSendNewPassword=La modalità di autenticazione è % EnableGDLibraryDesc=Per usare questa opzione bisogna installare o abilitare la libreria GD in PHP. ProfIdShortDesc=Prof ID %s è un dato dipendente dal paese terzo.
    Ad esempio, per il paese %s, è il codice %s. DolibarrDemo=Dolibarr ERP/CRM demo -StatsByNumberOfUnits=Statistics for sum of qty of products/services -StatsByNumberOfEntities=Statistics in number of referring entities (no. of invoice, or order...) +StatsByNumberOfUnits=Statistiche per somma della quantità di prodotti / servizi +StatsByNumberOfEntities=Statistiche in numero di entità referenti (n. di fatture o ordini ...) NumberOfProposals=Numero di preventivi -NumberOfCustomerOrders=Number of sales orders +NumberOfCustomerOrders=Numero di ordini cliente NumberOfCustomerInvoices=Numero di ordini fornitore -NumberOfSupplierProposals=Number of vendor proposals +NumberOfSupplierProposals=Numero di proposte del fornitore NumberOfSupplierOrders=Numero ordini d'acquisto NumberOfSupplierInvoices=Number of vendor invoices -NumberOfContracts=Number of contracts +NumberOfContracts=Numero di contratti NumberOfMos=Number of manufacturing orders -NumberOfUnitsProposals=Number of units on proposals -NumberOfUnitsCustomerOrders=Number of units on sales orders -NumberOfUnitsCustomerInvoices=Number of units on customer invoices -NumberOfUnitsSupplierProposals=Number of units on vendor proposals -NumberOfUnitsSupplierOrders=Number of units on purchase orders -NumberOfUnitsSupplierInvoices=Number of units on vendor invoices -NumberOfUnitsContracts=Number of units on contracts +NumberOfUnitsProposals=Numero di unità nei preventivi +NumberOfUnitsCustomerOrders=Numero di unità sugli ordini cliente +NumberOfUnitsCustomerInvoices=Numero di unità nelle fatture cliente +NumberOfUnitsSupplierProposals=Numero di unità nelle proposte fornitori +NumberOfUnitsSupplierOrders=Numero di unità negli ordini d'acquisto +NumberOfUnitsSupplierInvoices=Numero di unità nelle fatture fornitore +NumberOfUnitsContracts=Numero di unità nei contratti NumberOfUnitsMos=Number of units to produce in manufacturing orders EMailTextInterventionAddedContact=A new intervention %s has been assigned to you. EMailTextInterventionValidated=Intervento %s convalidato EMailTextInvoiceValidated=La fattura %s è stata convalidata. EMailTextInvoicePayed=Invoice %s has been paid. EMailTextProposalValidated=La proposta %s è stata convalidata. -EMailTextProposalClosedSigned=Proposal %s has been closed signed. +EMailTextProposalClosedSigned=La proposta %s è stata chiusa e firmata. EMailTextOrderValidated=Order %s has been validated. EMailTextOrderApproved=Order %s has been approved. EMailTextOrderValidatedBy=Order %s has been recorded by %s. @@ -214,7 +214,7 @@ EMailTextOrderRefusedBy=Order %s has been refused by %s. EMailTextExpeditionValidated=Shipping %s has been validated. EMailTextExpenseReportValidated=Expense report %s has been validated. EMailTextExpenseReportApproved=Expense report %s has been approved. -EMailTextHolidayValidated=Leave request %s has been validated. +EMailTextHolidayValidated=La richiesta di ferie/permesso %s è stata convalidata. EMailTextHolidayApproved=Leave request %s has been approved. ImportedWithSet=Set dati importazione DolibarrNotification=Notifica automatica @@ -274,11 +274,11 @@ WEBSITE_PAGEURL=Indirizzo URL della pagina WEBSITE_TITLE=Titolo WEBSITE_DESCRIPTION=Descrizione WEBSITE_IMAGE=Image -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Parole chiave LinesToImport=Righe da importare -MemoryUsage=Memory usage +MemoryUsage=Utilizzo della memoria RequestDuration=Duration of request PopuProp=Products/Services by popularity in Proposals PopuCom=Products/Services by popularity in Orders diff --git a/htdocs/langs/it_IT/paybox.lang b/htdocs/langs/it_IT/paybox.lang index 83b4b081dbc..3f398c374d0 100644 --- a/htdocs/langs/it_IT/paybox.lang +++ b/htdocs/langs/it_IT/paybox.lang @@ -20,7 +20,7 @@ AccountParameter=Dati account UsageParameter=Parametri d'uso InformationToFindParameters=Aiuto per trovare informazioni sul tuo account %s PAYBOX_CGI_URL_V2=URL del modulo CGI di Paybox per il pagamento -VendorName=Nome del venditore +VendorName=Nome del fornitore CSSUrlForPaymentForm=URL del foglio di stile CSS per il modulo di pagamento NewPayboxPaymentReceived=Nuovo pagamento Paybox ricevuto NewPayboxPaymentFailed=Nuovo tentativo di pagamento Paybox ma fallito diff --git a/htdocs/langs/it_IT/products.lang b/htdocs/langs/it_IT/products.lang index 78c718b0c37..4d5f8b24b65 100644 --- a/htdocs/langs/it_IT/products.lang +++ b/htdocs/langs/it_IT/products.lang @@ -17,11 +17,13 @@ Create=Crea Reference=Riferimento NewProduct=Nuovo prodotto NewService=Nuovo servizio -ProductVatMassChange=Global VAT Update -ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL products and services! +ProductVatMassChange=Modifica di massa dell'IVA +ProductVatMassChangeDesc=Questo strumento aggiorna l'aliquota IVA definita su TUTTI i prodotti e servizi! MassBarcodeInit=Inizializzazione di massa dei codici a barre MassBarcodeInitDesc=Questa pagina può essere usata per inizializzare un codice a barre di un oggetto che non ha ancora un codice a barre definito. Controlla prima che il setup del modulo Codici a barre sia completo. ProductAccountancyBuyCode=Codice contabile (acquisto) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Codice contabile (vendita) ProductAccountancySellIntraCode=Codice contabile (vendita intracomunitaria) ProductAccountancySellExportCode=Codice contabile (vendita per esportazione) @@ -66,17 +68,17 @@ ProductStatusNotOnBuyShort=Obsoleto UpdateVAT=Aggiorna iva UpdateDefaultPrice=Aggiornamento prezzo predefinito UpdateLevelPrices=Aggiorna prezzi per ogni livello -AppliedPricesFrom=Applied from +AppliedPricesFrom=Valido dal SellingPrice=Prezzo di vendita -SellingPriceHT=Selling price (excl. tax) +SellingPriceHT=Prezzo di vendita (al netto delle imposte) SellingPriceTTC=Prezzo di vendita (inclusa IVA) -SellingMinPriceTTC=Minimum Selling price (inc. tax) +SellingMinPriceTTC=Prezzo minimo di vendita (tasse incluse) 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. CostPriceUsage=Questo valore può essere utilizzato per il calcolo del margine. SoldAmount=Quantità venduta PurchasedAmount=Quantità acquistata NewPrice=Nuovo prezzo -MinPrice=Min. sell price +MinPrice=Prezzo minimo di vendita EditSellingPriceLabel=Modifica l'etichetta del prezzo di vendita CantBeLessThanMinPrice=Il prezzo di vendita non può essere inferiore al minimo consentito per questo prodotto ( %s IVA esclusa) ContractStatusClosed=Chiuso @@ -85,7 +87,7 @@ ErrorProductBadRefOrLabel=Il valore di riferimento o l'etichetta è sbagliato. ErrorProductClone=Si è verificato un problema cercando di cuplicare il prodotto o servizio ErrorPriceCantBeLowerThanMinPrice=Errore, il prezzo non può essere inferiore al prezzo minimo. Suppliers=Fornitori -SupplierRef=Vendor SKU +SupplierRef=Codice Fornitore (SKU) ShowProduct=Visualizza prodotto ShowService=Visualizza servizio ProductsAndServicesArea=Area prodotti e servizi @@ -116,7 +118,7 @@ CategoryFilter=Filtro categoria ProductToAddSearch=Cerca prodotto da aggiungere NoMatchFound=Nessun risultato trovato ListOfProductsServices=Elenco prodotti/servizi -ProductAssociationList=List of products/services that are component(s) of this virtual product/kit +ProductAssociationList=Elenco dei prodotti / servizi che sono componenti di questo prodotto / pacchetto virtuale ProductParentList=Elenco dei prodotti/servizi comprendenti questo prodotto ErrorAssociationIsFatherOfThis=Uno dei prodotti selezionati è padre dell'attuale prodotto DeleteProduct=Elimina un prodotto/servizio @@ -129,11 +131,11 @@ ImportDataset_service_1=Servizi DeleteProductLine=Elimina linea di prodotti ConfirmDeleteProductLine=Vuoi davvero cancellare questa linea di prodotti? ProductSpecial=Prodotto speciale -QtyMin=Min. purchase quantity -PriceQtyMin=Price quantity min. -PriceQtyMinCurrency=Price (currency) for this qty. (no discount) -VATRateForSupplierProduct=VAT Rate (for this vendor/product) -DiscountQtyMin=Discount for this qty. +QtyMin=Min. quantità d'acquisto +PriceQtyMin=Prezzo quantità min. +PriceQtyMinCurrency=Prezzo per questa quantità min. (senza sconto) (valuta) +VATRateForSupplierProduct=Aliquota IVA (per questo fornitore / prodotto) +DiscountQtyMin=Sconto per questa quantità NoPriceDefinedForThisSupplier=No price/qty defined for this vendor/product NoSupplierPriceDefinedForThisProduct=No vendor price/qty defined for this product PredefinedProductsToSell=Predefined Product @@ -165,7 +167,7 @@ SuppliersPrices=Prezzi fornitore SuppliersPricesOfProductsOrServices=Vendor prices (of products or services) CustomCode=Customs / Commodity / HS code CountryOrigin=Paese di origine -Nature=Nature of produt (material/finished) +Nature=Nature of product (material/finished) ShortLabel=Etichetta breve Unit=Unità p=u. @@ -282,7 +284,7 @@ PriceMode=Modalità di prezzo PriceNumeric=Numero DefaultPrice=Prezzo predefinito ComposedProductIncDecStock=Aumenta e Diminuisci le scorte alla modifica del prodotto padre -ComposedProduct=Child products +ComposedProduct=Sottoprodotto MinSupplierPrice=Prezzo d'acquisto minimo MinCustomerPrice=Prezzo minimo di vendita DynamicPriceConfiguration=Configurazione dinamica dei prezzi diff --git a/htdocs/langs/it_IT/projects.lang b/htdocs/langs/it_IT/projects.lang index 1fe3f577d6a..6917266e6df 100644 --- a/htdocs/langs/it_IT/projects.lang +++ b/htdocs/langs/it_IT/projects.lang @@ -39,7 +39,7 @@ ShowProject=Visualizza progetto ShowTask=Visualizza compito SetProject=Imposta progetto NoProject=Nessun progetto definito o assegnato -NbOfProjects=Number of projects +NbOfProjects=Num. di progetti NbOfTasks=Numero attività TimeSpent=Tempo lavorato TimeSpentByYou=Tempo impiegato da te @@ -87,8 +87,6 @@ WhichIamLinkedToProject=which I'm linked to project Time=Tempo ListOfTasks=Elenco dei compiti GoToListOfTimeConsumed=Vai all'elenco del tempo impiegato -GoToListOfTasks=Vai all'elenco dei compiti -GoToGanttView=Go to Gantt view GanttView=Vista Gantt ListProposalsAssociatedProject=List of the commercial proposals related to the project ListOrdersAssociatedProject=List of sales orders related to the project @@ -99,11 +97,11 @@ ListSupplierInvoicesAssociatedProject=Elenco fatture d'acquisto associate al pro ListContractAssociatedProject=Elenco contratti associati al progetto ListShippingAssociatedProject=Elenco spedizioni associate al progetto ListFichinterAssociatedProject=Elenco interventi associati al progetto -ListExpenseReportsAssociatedProject=List of expense reports related to the project -ListDonationsAssociatedProject=List of donations related to the project +ListExpenseReportsAssociatedProject=Elenco delle note spese associate al progetto +ListDonationsAssociatedProject=Elenco delle donazioni associate al progetto ListVariousPaymentsAssociatedProject=List of miscellaneous payments related to the project ListSalariesAssociatedProject=Elenco pagamenti stipendio associati al progetto -ListActionsAssociatedProject=List of events related to the project +ListActionsAssociatedProject=Elenco degli eventi associati al progetto ListMOAssociatedProject=List of manufacturing orders related to the project ListTaskTimeUserProject=Tempo impiegato in compiti del progetto ListTaskTimeForTask=Tempo impiegato per l'attività @@ -188,10 +186,10 @@ PlannedWorkload=Carico di lavoro previsto PlannedWorkloadShort=Carico di lavoro ProjectReferers=Elementi correlati ProjectMustBeValidatedFirst=I progetti devono prima essere validati -FirstAddRessourceToAllocateTime=Assegna una risorsa per allocare tempo +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=Input per giorno InputPerWeek=Input per settimana -InputPerMonth=Input per month +InputPerMonth=Input per mese InputDetail=Dettagli di input TimeAlreadyRecorded=Questo lasso di tempo è già stato registrato per questa attività/giorno e l'utente%s ProjectsWithThisUserAsContact=Progetti con questo utente come contatto @@ -206,12 +204,12 @@ AssignTaskToUser=Assegnata attività a %s SelectTaskToAssign=Seleziona attività da a assegnare... AssignTask=Assegnare ProjectOverview=Panoramica -ManageTasks=Use projects to follow tasks and/or report time spent (timesheets) +ManageTasks=Utilizzare i progetti per seguire compiti e/o tempo lavorato ManageOpportunitiesStatus=Utilizzare i progetti per seguire clienti interessati/opportunità -ProjectNbProjectByMonth=No. of created projects by month -ProjectNbTaskByMonth=No. of created tasks by month +ProjectNbProjectByMonth=Num. di progetti creati per mese +ProjectNbTaskByMonth=Numero di attività create per mese ProjectOppAmountOfProjectsByMonth=Amount of leads by month -ProjectWeightedOppAmountOfProjectsByMonth=Weighted amount of leads by month +ProjectWeightedOppAmountOfProjectsByMonth=Quantità ponderata di opportunità per mese ProjectOpenedProjectByOppStatus=Open project/lead by lead status ProjectsStatistics=Le statistiche relative a progetti/clienti interessati TasksStatistics=Statistiche su attività di progetto/clienti interessati @@ -223,8 +221,8 @@ OnlyOpportunitiesShort=Only leads OpenedOpportunitiesShort=Open leads NotOpenedOpportunitiesShort=Not an open lead NotAnOpportunityShort=Not a lead -OpportunityTotalAmount=Total amount of leads -OpportunityPonderatedAmount=Weighted amount of leads +OpportunityTotalAmount=Importo totale delle opportunità +OpportunityPonderatedAmount=Importo ponderato delle opportunità OpportunityPonderatedAmountDesc=Leads amount weighted with probability OppStatusPROSP=Potenziale OppStatusQUAL=Qualificazione @@ -240,6 +238,7 @@ LatestModifiedProjects=Ultimi %s progetti modificati OtherFilteredTasks=Altre attività filtrate NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=Permetti agli utenti di commentare queste attività AllowCommentOnProject=Permetti agli utenti di commentare questi progetti @@ -256,12 +255,13 @@ ServiceToUseOnLines=Service to use on lines InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. ProjectFollowOpportunity=Opportunità da seguire -ProjectFollowTasks=Attività di progetto -Usage=Usage +ProjectFollowTasks=Follow tasks or time spent +Usage=Utilizzo UsageOpportunity=Utilizzo: opportunità UsageTasks=Uso: Compiti UsageBillTimeShort=Utilizzo: tempo di fatturazione -InvoiceToUse=Draft invoice to use +InvoiceToUse=Fattura in bozza da usare NewInvoice=Nuova fattura OneLinePerTask=Una riga per compito OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/it_IT/propal.lang b/htdocs/langs/it_IT/propal.lang index 8f2993b417c..ee7ebc262b8 100644 --- a/htdocs/langs/it_IT/propal.lang +++ b/htdocs/langs/it_IT/propal.lang @@ -76,7 +76,7 @@ TypeContact_propal_external_BILLING=Contatto per la fatturazione TypeContact_propal_external_CUSTOMER=Responsabile per il cliente TypeContact_propal_external_SHIPPING=Contatto cliente per la consegna # Document models -DocModelAzurDescription=A complete proposal model (old implementation of Cyan template) +DocModelAzurDescription=A complete proposal model DocModelCyanDescription=Modello di preventivo completo DefaultModelPropalCreate=Creazione del modello predefinito DefaultModelPropalToBill=Modello predefinito quando si chiude un preventivo (da fatturare) diff --git a/htdocs/langs/it_IT/receiptprinter.lang b/htdocs/langs/it_IT/receiptprinter.lang index 7b1a22e748d..3dd1ff848c7 100644 --- a/htdocs/langs/it_IT/receiptprinter.lang +++ b/htdocs/langs/it_IT/receiptprinter.lang @@ -5,7 +5,7 @@ PrinterUpdated=Stampante %s aggiornata PrinterDeleted=Stampante %s eliminata TestSentToPrinter=Stampa di prova inviata a %s ReceiptPrinter=Receipt printers -ReceiptPrinterDesc=Setup of receipt printers +ReceiptPrinterDesc=Configurazione stampa ricevute ReceiptPrinterTemplateDesc=Setup of Templates ReceiptPrinterTypeDesc=Description of Receipt Printer's type ReceiptPrinterProfileDesc=Description of Receipt Printer's Profile @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Stampante dummy CONNECTOR_NETWORK_PRINT=Stampante di rete CONNECTOR_FILE_PRINT=Stampante locale CONNECTOR_WINDOWS_PRINT=Stampante Windows locale +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Stampante di test (non stampa davvero) CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Profilo predefinito PROFILE_SIMPLE=Profilo semplice PROFILE_EPOSTEP=Epos Tep Profile @@ -45,8 +47,8 @@ DOL_ACTIVATE_BUZZER=Activate buzzer DOL_PRINT_QRCODE=Stampa codice QR DOL_PRINT_LOGO=Stampa il logo della mia azienda DOL_PRINT_LOGO_OLD=Stampa il logo della mia azienda (vecchie stampe) -DOL_BOLD=Bold -DOL_BOLD_DISABLED=Disable bold +DOL_BOLD=Grassetto +DOL_BOLD_DISABLED=Disabilita grassetto DOL_DOUBLE_HEIGHT=Double height size DOL_DOUBLE_WIDTH=Double width size DOL_DEFAULT_HEIGHT_WIDTH=Default height and width size @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Invoice month in letters DOL_VALUE_MONTH=Invoice month DOL_VALUE_DAY=Invoice day DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Rif. fattura +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=Capitale +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/it_IT/stocks.lang b/htdocs/langs/it_IT/stocks.lang index 90b3d73bcb1..8f3d7072a54 100644 --- a/htdocs/langs/it_IT/stocks.lang +++ b/htdocs/langs/it_IT/stocks.lang @@ -64,9 +64,9 @@ OrderDispatch=Ricezione prodotti RuleForStockManagementDecrease=Choose Rule for automatic stock decrease (manual decrease is always possible, even if an automatic decrease rule is activated) RuleForStockManagementIncrease=Choose Rule for automatic stock increase (manual increase is always possible, even if an automatic increase rule is activated) DeStockOnBill=Decrease real stocks on validation of customer invoice/credit note -DeStockOnValidateOrder=Decrease real stocks on validation of sales order -DeStockOnShipment=Diminuire stock reali sulla validazione di spedizione -DeStockOnShipmentOnClosing=Decrease real stocks when shipping is set to closed +DeStockOnValidateOrder=Diminuire le scorte fisiche/reali alla convalida degli ordini cliente +DeStockOnShipment=Diminuire le scorte fisiche/reali alla convalida della spedizione +DeStockOnShipmentOnClosing=Diminuire le scorte fisiche/reali quando la spedizione viene chiusa. ReStockOnBill=Increase real stocks on validation of vendor invoice/credit note ReStockOnValidateOrder=Increase real stocks on purchase order approval ReStockOnDispatchOrder=Increase real stocks on manual dispatching into warehouse, after purchase order receipt of goods @@ -79,10 +79,10 @@ DispatchVerb=Ricezione StockLimitShort=Limite per segnalazioni StockLimit=Limite minimo scorte (per gli avvisi) StockLimitDesc=(empty) means no warning.
    0 can be used for a warning as soon as stock is empty. -PhysicalStock=Physical Stock +PhysicalStock=Scorte fisiche RealStock=Scorte reali -RealStockDesc=Physical/real stock is the stock currently in the warehouses. -RealStockWillAutomaticallyWhen=The real stock will be modified according to this rule (as defined in the Stock module): +RealStockDesc=Scorte fisiche/reali è la giacenza attualmente nei magazzini.\n +RealStockWillAutomaticallyWhen=Le scorte fisiche saranno modificate secondo le seguenti regole (come definito nel modulo Magazzino): VirtualStock=Scorte virtuali VirtualStockDesc=Virtual stock is the calculated stock available once all open/pending actions (that affect stocks) are closed (purchase orders received, sales orders shipped etc.) IdWarehouse=Id magazzino @@ -104,7 +104,7 @@ ThisWarehouseIsPersonalStock=Questo magazzino rappresenta la riserva personale d SelectWarehouseForStockDecrease=Scegli magazzino da utilizzare per la riduzione delle scorte SelectWarehouseForStockIncrease=Scegli magazzino da utilizzare per l'aumento delle scorte NoStockAction=Nessuna azione su queste scorte -DesiredStock=Desired Stock +DesiredStock=Scorte ottimali desiderate DesiredStockDesc=Questa quantità sarà il valore utilizzato per rifornire il magazzino mediante la funzione di rifornimento. StockToBuy=Da ordinare Replenishment=Rifornimento @@ -112,17 +112,17 @@ ReplenishmentOrders=Ordini di rifornimento VirtualDiffersFromPhysical=In relazione alle opzioni di incremento/riduzione, le scorte fisiche e quelle virtuali (fisiche - ordini clienti + ordini fornitori) potrebbero differire UseVirtualStockByDefault=Utilizza scorte virtuali come default, invece delle scorte fisiche, per la funzione di rifornimento UseVirtualStock=Usa scorte virtuale -UsePhysicalStock=Usa giacenza fisica +UsePhysicalStock=Usa scorte fisiche CurentSelectionMode=Modalità di selezione corrente CurentlyUsingVirtualStock=Giacenza virtuale -CurentlyUsingPhysicalStock=Giacenza fisica +CurentlyUsingPhysicalStock=Scorte fisiche RuleForStockReplenishment=Regola per il rifornimento delle scorte SelectProductWithNotNullQty=Select at least one product with a qty not null and a vendor AlertOnly= Solo avvisi WarehouseForStockDecrease=Il magazzino %s sarà usato per la diminuzione delle scorte WarehouseForStockIncrease=Il magazzino %s sarà usato per l'aumento delle scorte ForThisWarehouse=Per questo magazzino -ReplenishmentStatusDesc=This is a list of all products with a stock lower than desired stock (or lower than alert value if checkbox "alert only" is checked). Using the checkbox, you can create purchase orders to fill the difference. +ReplenishmentStatusDesc=Questa è una lista di tutti i prodotti con una giacenza inferiore a quella desiderata (o inferiore al valore di allarme se la casella "solo allarme" è selezionata). Utilizzando la casella di controllo, è possibile creare ordini fornitori per colmare la differenza. ReplenishmentOrdersDesc=This is a list of all open purchase orders including predefined products. Only open orders with predefined products, so orders that may affect stocks, are visible here. Replenishments=Rifornimento NbOfProductBeforePeriod=Quantità del prodotto %s in magazzino prima del periodo selezionato (< %s) @@ -152,7 +152,7 @@ NoPendingReceptionOnSupplierOrder=No pending reception due to open purchase orde ThisSerialAlreadyExistWithDifferentDate=Questo lotto/numero seriale (%s) esiste già con una differente data di scadenza o di validità (trovata %s, inserita %s ) OpenAll=Aperto per tutte le azioni OpenInternal=Aperto per le azioni interne -UseDispatchStatus=Use a dispatch status (approve/refuse) for product lines on purchase order reception +UseDispatchStatus=Utilizzare uno stato di spedizione (approvato / rifiutato) per le righe di prodotti alla ricezione dell'ordine di acquisto OptionMULTIPRICESIsOn=Option "several prices per segment" is on. It means a product has several selling price so value for sell can't be calculated ProductStockWarehouseCreated=Stock limit for alert and desired optimal stock correctly created ProductStockWarehouseUpdated=Stock limit for alert and desired optimal stock correctly updated @@ -160,9 +160,9 @@ ProductStockWarehouseDeleted=Stock limit for alert and desired optimal stock cor AddNewProductStockWarehouse=Set new limit for alert and desired optimal stock AddStockLocationLine=Decrease quantity then click to add another warehouse for this product InventoryDate=Inventory date -NewInventory=New inventory +NewInventory=Nuovo inventario inventorySetup = Inventory Setup -inventoryCreatePermission=Create new inventory +inventoryCreatePermission=Crea nuovo inventario inventoryReadPermission=View inventories inventoryWritePermission=Update inventories inventoryValidatePermission=Validate inventory diff --git a/htdocs/langs/it_IT/stripe.lang b/htdocs/langs/it_IT/stripe.lang index 2e4972ccef1..dcad56604c6 100644 --- a/htdocs/langs/it_IT/stripe.lang +++ b/htdocs/langs/it_IT/stripe.lang @@ -1,6 +1,6 @@ # Dolibarr language file - Source file is en_US - stripe StripeSetup=Stripe module setup -StripeDesc=Offer customers a Stripe online payment page for payments with credit/cebit cards via Stripe. This can be used to allow your customers to make ad-hoc payments or for payments related to a particular Dolibarr object (invoice, order, ...) +StripeDesc=Offri ai clienti una pagina di pagamento online Stripe per pagamenti con carte di credito / debito tramite Stripe . Questo modulo può essere usato per consentire ai tuoi clienti di effettuare pagamenti ad-hoc o per pagamenti relativi a un particolare oggetto Dolibarr (fattura, ordine, ...) StripeOrCBDoPayment=Pay with credit card or Stripe FollowingUrlAreAvailableToMakePayments=Puoi utilizzare i seguenti indirizzi per permettere ai clienti di effettuare pagamenti su Dolibarr PaymentForm=Forma di pagamento @@ -30,8 +30,9 @@ InformationToFindParameters=Aiuto per trovare informazioni sul tuo account %s STRIPE_CGI_URL_V2=Url of Stripe CGI module for payment VendorName=Nome del venditore CSSUrlForPaymentForm=URL del foglio di stile CSS per il modulo di pagamento -NewStripePaymentReceived=New Stripe payment received -NewStripePaymentFailed=New Stripe payment tried but failed +NewStripePaymentReceived=Nuovo pagamento Stripe ricevuto +NewStripePaymentFailed=Nuovo pagamento Stripe provato ma non riuscito +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Secret test key STRIPE_TEST_PUBLISHABLE_KEY=Publishable test key STRIPE_TEST_WEBHOOK_KEY=Webhook test key @@ -40,7 +41,7 @@ STRIPE_LIVE_PUBLISHABLE_KEY=Publishable live key STRIPE_LIVE_WEBHOOK_KEY=Webhook live key ONLINE_PAYMENT_WAREHOUSE=Stock to use for stock decrease when online payment is done
    (TODO When option to decrease stock is done on an action on invoice and the online payment generate itself the invoice ?) StripeLiveEnabled=Stripe live enabled (otherwise test/sandbox mode) -StripeImportPayment=Import Stripe payments +StripeImportPayment=Importa pagamenti Stripe ExampleOfTestCreditCard=Example of credit card for test: %s => valid, %s => error CVC, %s => expired, %s => charge fails StripeGateways=Stripe gateways OAUTH_STRIPE_TEST_ID=Stripe Connect Client ID (ca_...) @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mo 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... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authenticatin rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/it_IT/supplier_proposal.lang b/htdocs/langs/it_IT/supplier_proposal.lang index 31568557d34..6ef46f45959 100644 --- a/htdocs/langs/it_IT/supplier_proposal.lang +++ b/htdocs/langs/it_IT/supplier_proposal.lang @@ -9,10 +9,10 @@ DraftRequests=Quotazioni in bozza SupplierProposalsDraft=Bozza di proposta fornitore LastModifiedRequests=Ultime %s richieste di quotazione modificate RequestsOpened=Apri richieste di quotazione -SupplierProposalArea=Area proposte fornitore +SupplierProposalArea=Area quotazioni fornitori SupplierProposalShort=Proposta fornitore -SupplierProposals=Proposta venditore -SupplierProposalsShort=Proposta venditore +SupplierProposals=Proposte fornitore +SupplierProposalsShort=Proposte fornitore NewAskPrice=Nuova richiesta quotazione ShowSupplierProposal=Mostra le richieste di quotazione AddSupplierProposal=Inserisci richiesta di quotazione diff --git a/htdocs/langs/it_IT/suppliers.lang b/htdocs/langs/it_IT/suppliers.lang index 4f7a8280b1f..deeb5548651 100644 --- a/htdocs/langs/it_IT/suppliers.lang +++ b/htdocs/langs/it_IT/suppliers.lang @@ -19,7 +19,7 @@ ReferenceSupplierIsAlreadyAssociatedWithAProduct=Questo referenza del fornitore NoRecordedSuppliers=Nessun fornitore registrato SupplierPayment=Pagamento fornitore SuppliersArea=Area fornitore -RefSupplierShort=Rif. fornitura +RefSupplierShort=Rif. fornitore Availability=Disponibilità ExportDataset_fournisseur_1=Fatture fornitore e dettagli ExportDataset_fournisseur_2=Fatture fornitore e pagamenti diff --git a/htdocs/langs/it_IT/ticket.lang b/htdocs/langs/it_IT/ticket.lang index 20f6650f9cc..18141535770 100644 --- a/htdocs/langs/it_IT/ticket.lang +++ b/htdocs/langs/it_IT/ticket.lang @@ -21,7 +21,7 @@ Module56000Name=Ticket Module56000Desc=Sistema di ticket per la gestione di problemi o richieste -Permission56001=See tickets +Permission56001=Visualizza tickets Permission56002=Modify tickets Permission56003=Delete tickets Permission56004=Manage tickets @@ -36,7 +36,7 @@ TicketTypeShortBUGHARD=Dysfonctionnement matériel TicketTypeShortCOM=Commercial question TicketTypeShortHELP=Request for functionnal help -TicketTypeShortISSUE=Issue, bug or problem +TicketTypeShortISSUE=Issue, bug o problemi TicketTypeShortREQUEST=Change or enhancement request TicketTypeShortPROJET=Progetto TicketTypeShortOTHER=Altro @@ -64,7 +64,7 @@ NotRead=Non letto Read=Da leggere Assigned=Assegnato InProgress=Avviato -NeedMoreInformation=Waiting for information +NeedMoreInformation=In attesa di informazioni Answered=Answered Waiting=In attesa Closed=Chiuso @@ -90,7 +90,7 @@ TicketParamModule=Module variable setup TicketParamMail=Email setup TicketEmailNotificationFrom=Notification email from TicketEmailNotificationFromHelp=Used into ticket message answer by example -TicketEmailNotificationTo=Notifications email to +TicketEmailNotificationTo=Notifiche via email a TicketEmailNotificationToHelp=Invia email di notifica a questo indirizzo TicketNewEmailBodyLabel=Text message sent after creating a ticket TicketNewEmailBodyHelp=The text specified here will be inserted into the email confirming the creation of a new ticket from the public interface. Information on the consultation of the ticket are automatically added. @@ -133,7 +133,7 @@ TicketsDisableCustomerEmail=Always disable emails when a ticket is created from # # Index & list page # -TicketsIndex=Ticket (Home) +TicketsIndex=Area Tickets TicketList=List of tickets TicketAssignedToMeInfos=This page display ticket list created by or assigned to current user NoTicketsFound=No ticket found @@ -280,7 +280,7 @@ TicketPublicInterfaceForbidden=The public interface for the tickets was not enab ErrorEmailOrTrackingInvalid=Bad value for tracking ID or email OldUser=Old user NewUser=Nuovo utente -NumberOfTicketsByMonth=Number of tickets per month +NumberOfTicketsByMonth=Numero di ticket per mese NbOfTickets=Number of tickets # notifications TicketNotificationEmailSubject=Ticket %s updated diff --git a/htdocs/langs/it_IT/trips.lang b/htdocs/langs/it_IT/trips.lang index f8ba60ce433..d328b22677d 100644 --- a/htdocs/langs/it_IT/trips.lang +++ b/htdocs/langs/it_IT/trips.lang @@ -10,9 +10,9 @@ ListOfFees=Elenco delle tariffe TypeFees=Tipi di imposte ShowTrip=Mostra note spese NewTrip=Nuova nota spese -LastExpenseReports=Latest %s expense reports -AllExpenseReports=All expense reports -CompanyVisited=Company/organization visited +LastExpenseReports=Ultime %s note spese +AllExpenseReports=Tutte le note spese +CompanyVisited=Azienda / organizzazione visitata FeesKilometersOrAmout=Tariffa kilometrica o importo DeleteTrip=Elimina nota spese ConfirmDeleteTrip=Vuoi davvero eliminare questa nota spese? diff --git a/htdocs/langs/it_IT/users.lang b/htdocs/langs/it_IT/users.lang index 04ccb76704e..a0dd542b471 100644 --- a/htdocs/langs/it_IT/users.lang +++ b/htdocs/langs/it_IT/users.lang @@ -12,7 +12,7 @@ PasswordChangedTo=Password cambiata a: %s SubjectNewPassword=La tua nuova password per %s GroupRights=Autorizzazioni del gruppo UserRights=Autorizzazioni utente -UserGUISetup=User Display Setup +UserGUISetup=Impostazioni grafiche DisableUser=Disattiva DisableAUser=Disattiva un utente DeleteUser=Elimina @@ -34,7 +34,7 @@ ListOfUsers=Elenco utenti SuperAdministrator=Superadmin SuperAdministratorDesc=Con tutti i diritti di amministrazione AdministratorDesc=Amministratore -DefaultRights=Default Permissions +DefaultRights=Autorizzazioni predefinite DefaultRightsDesc=Define here the default permissions that are automatically granted to a new user (to modify permissions for existing users, go to the user card). DolibarrUsers=Utenti Dolibarr LastName=Cognome @@ -70,7 +70,7 @@ ExportDataset_user_1=Users and their properties DomainUser=Utente di dominio %s Reactivate=Riattiva CreateInternalUserDesc=This form allows you to create an internal user in your company/organization. To create an external user (customer, vendor etc. ..), use the button 'Create Dolibarr User' from that third-party's contact card. -InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other.

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=Autorizzazioni ereditate dall'appartenenza al gruppo. Inherited=Ereditato UserWillBeInternalUser=L'utente sarà un utente interno (in quanto non collegato a un soggetto terzo) @@ -113,3 +113,5 @@ CantDisableYourself=You can't disable your own user record ForceUserExpenseValidator=Forza validatore rapporto spese ForceUserHolidayValidator=Convalida richiesta di congedo forzato ValidatorIsSupervisorByDefault=Per impostazione predefinita, il validatore è il supervisore dell'utente. Mantieni vuoto per mantenere questo comportamento. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/it_IT/website.lang b/htdocs/langs/it_IT/website.lang index cf4ac858e55..c3ab2f4d430 100644 --- a/htdocs/langs/it_IT/website.lang +++ b/htdocs/langs/it_IT/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=Visualizza pagina in una nuova scheda SetAsHomePage=Imposta come homepage RealURL=Indirizzo URL vero ViewWebsiteInProduction=View web site using home URLs -SetHereVirtualHost=Use with Apache/NGinx/...
    If you can create, on your web server (Apache, Nginx, ...), a dedicated Virtual Host with PHP enabled and a Root directory on
    %s
    then set the name of the virtual host you have created in the properties of web site, so the preview can be done also using this dedicated web server access instead of the internal Dolibarr server. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS=Use with PHP embedded server
    On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running
    php -S 0.0.0.0:8080 -t %s YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org CheckVirtualHostPerms=Check also that virtual host has permission %s on files into
    %s @@ -56,7 +57,7 @@ NoPageYet=No pages yet YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template SyntaxHelp=Help on specific syntax tips YouCanEditHtmlSourceckeditor=You can edit HTML source code using the "Source" button in editor. -YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">
    +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Clone page/container CloneSite=Clone site SiteAdded=Website added @@ -76,7 +77,7 @@ BlogPost=Articoli sul blog WebsiteAccount=Website account WebsiteAccounts=Website accounts AddWebsiteAccount=Create web site account -BackToListOfThirdParty=Back to list for Third Party +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Disable website first MyContainerTitle=My web site title AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Sorry, this website is currently off line. Please 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 -OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that edits of HTML source will be possible when page content has been initialized by grabbing it from an external page ("Online" editor will NOT be available) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Only edition of HTML source is possible when content was grabbed from an external site GrabImagesInto=Grab also images found into css and page. ImagesShouldBeSavedInto=Images should be saved into directory @@ -121,6 +122,9 @@ BackToHomePage=Torna alla home page ... TranslationLinks=Link alla traduzione YouTryToAccessToAFileThatIsNotAWebsitePage=Stai tentando di accedere ad una pagina che non è pesente UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 characters -MainLanguage=Main language +MainLanguage=Lingua principale OtherLanguages=Other languages UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/it_IT/zapier.lang b/htdocs/langs/it_IT/zapier.lang new file mode 100644 index 00000000000..cf2795a5fbe --- /dev/null +++ b/htdocs/langs/it_IT/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier per Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier per modulo Dolibarr + +# +# Admin page +# +ZapierForDolibarrSetup = Installazione di Zapier per Dolibarr diff --git a/htdocs/langs/ja_JP/accountancy.lang b/htdocs/langs/ja_JP/accountancy.lang index 157933ed993..839cbc858f8 100644 --- a/htdocs/langs/ja_JP/accountancy.lang +++ b/htdocs/langs/ja_JP/accountancy.lang @@ -121,6 +121,7 @@ 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 +TotalForAccount=Total for accounting account Ventilate=Bind @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Accounting account to register donations ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (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 products sold in EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported 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_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (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_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unkno ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error PaymentsNotLinkedToProduct=Payment not linked to any product / service +OpeningBalance=Opening balance ShowOpeningBalance=Show opening balance HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Group of account PcgtypeDesc=Group 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. +Reconcilable=Reconcilable + TotalVente=Total turnover before tax TotalMarge=Total sales margin @@ -307,11 +317,13 @@ 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Chart of accounts Id ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC OptionModeProductSellExport=Mode sales exported in other countries OptionModeProductBuy=Mode purchases +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries 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. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=Remove accounting code from lines that not exists into charts of account CleanHistory=Reset all bindings for selected year PredefinedGroups=Predefined groups @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Account removed from group SaleLocal=Local sale SaleExport=Export sale SaleEEC=Sale in EEC +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=Range of accounting account diff --git a/htdocs/langs/ja_JP/admin.lang b/htdocs/langs/ja_JP/admin.lang index 425e8bec807..9f3da177793 100644 --- a/htdocs/langs/ja_JP/admin.lang +++ b/htdocs/langs/ja_JP/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Webサーバのユーザ/グループ NoSessionFound=Your PHP configuration seems to not allow listing of active sessions. The directory used to save sessions (%s) may be protected (for example by OS permissions or by PHP directive open_basedir). DBStoringCharset=データを格納するデータベース·キャラクタ·セット DBSortingCharset=データをソートするには、データベース·キャラクタ·セット +HostCharset=Host charset ClientCharset=Client charset ClientSortingCharset=Client collation WarningModuleNotActive=モジュール%sを有効する必要あります @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the NoMaxSizeByPHPLimit=注:制限なしお使いのPHPの設定で設定されていません MaxSizeForUploadedFiles=アップロードファイルの最大サイズ(0は任意のアップロードを許可しないように) UseCaptchaCode=ログインページで、グラフィカルコード(CAPTCHA)を使用して -AntiVirusCommand= アンチウイルスのコマンドへのフルパス -AntiVirusCommandExample= ClamWinの例:C:\\ PROGRA〜1 \\ ClamWinの\\ BIN \\ clamscan.exe
    ClamAV用例:は/ usr / bin / clamscan +AntiVirusCommand=アンチウイルスのコマンドへのフルパス +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= コマンドラインで複数のパラメータ -AntiVirusParamExample= ClamWinのための例: - データベース= "はC:\\ Program Files(x86)を\\ ClamWinの\\ libに" +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=会計モジュールのセットアップ UserSetup=ユーザーの管理設定 MultiCurrencySetup=Multi-currency setup @@ -199,7 +200,7 @@ FeatureDisabledInDemo=デモで機能を無効にする FeatureAvailableOnlyOnStable=Feature only available on official stable versions BoxesDesc=Widgets are components showing some information that you can add to personalize some pages. You can choose between showing the widget or not by selecting target page and clicking 'Activate', or by clicking the trashcan to disable it. OnlyActiveElementsAreShown=から要素のみ対応のモジュールが表示されます。 -ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button (at end of module line) to enable/disable a module/application. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. ModulesMarketPlaceDesc=You can find more modules to download on external websites on the Internet... ModulesDeployDesc=If permissions on your file system allow it, you can use this tool to deploy an external module. The module will then be visible on the tab %s. ModulesMarketPlaces=Find external app/modules @@ -212,6 +213,7 @@ CompatibleUpTo=Compatible with version %s NotCompatible=This module does not seem compatible with your Dolibarr %s (Min %s - Max %s). CompatibleAfterUpdate=This module requires an update to your Dolibarr %s (Min %s - Max %s). SeeInMarkerPlace=See in Market place +SeeSetupOfModule=See setup of module %s Updated=Updated Nouveauté=Novelty AchatTelechargement=Buy / Download @@ -221,6 +223,7 @@ DoliPartnersDesc=List of companies providing custom-developed modules or feature WebSiteDesc=External websites for more add-on (non-core) modules... DevelopYourModuleDesc=Some solutions to develop your own module... URL=URL +RelativeURL=Relative URL BoxesAvailable=Widgets available BoxesActivated=Widgets activated ActivateOn=でアクティブに @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Checkboxes ExtrafieldCheckBoxFromList=Checkboxes from table ExtrafieldLink=Link to an object ComputedFormula=Computed field -ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Store computed field ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! ExtrafieldParamHelpPassword=Leaving this field blank means this value will be stored without encryption (field must be only hidden with star on screen).
    Set 'auto' to use the default encryption rule to save password into database (then value read will be the hash only, no way to retrieve original value) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Keep empty to use default value DefaultLink=Default link SetAsDefault=Set as default ValueOverwrittenByUserSetup=Warning, this value may be overwritten by user specific setup (each user can set his own clicktodial url) -ExternalModule=External module - Installed into directory %s +ExternalModule=External module +InstalledInto=Installed into directory %s BarcodeInitForthird-parties=Mass barcode init for third-parties BarcodeInitForProductsOrServices=Mass barcode init or reset for products or services CurrentlyNWithoutBarCode=Currently, you have %s record on %s %s without barcode defined. @@ -947,7 +951,7 @@ DictionaryCanton=States/Provinces DictionaryRegion=地域 DictionaryCountry=国 DictionaryCurrency=通貨 -DictionaryCivility=Title of civility +DictionaryCivility=Honorific titles DictionaryActions=Types of agenda events DictionarySocialContributions=Types of social or fiscal taxes DictionaryVAT=VATレートまたは販売税率 @@ -988,6 +992,7 @@ VATIsNotUsedDesc=By default the proposed Sales tax is 0 which can be used for ca VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=率 LocalTax1IsNotUsed=Do not use second tax LocalTax1IsUsedDesc=Use a second type of tax (other than first one) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices LocalTax2IsNotUsedDescES=デフォルトでは、提案されたIRPFは0です。ルールの終わり。 LocalTax2IsUsedExampleES=スペインでは、フリーランサーとサービスモジュールの税制を選択した企業に提供する独立した専門家。 LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=Reports on local taxes CalcLocaltax1=Sales - Purchases CalcLocaltax1Desc=Local Taxes reports are calculated with the difference between localtaxes sales and localtaxes purchases @@ -1018,6 +1026,7 @@ CalcLocaltax2=購入 CalcLocaltax2Desc=Local Taxes reports are the total of localtaxes purchases CalcLocaltax3=販売 CalcLocaltax3Desc=Local Taxes reports are the total of localtaxes sales +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=ない翻訳がコードに見つからない場合、デフォルトで使用されるラベル LabelOnDocuments=ドキュメントのラベル LabelOrTranslationKey=Label or translation key @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Expense report to approve Delays_MAIN_DELAY_HOLIDAYS=Leave requests 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. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. SetupDescription5=Other Setup menu entries manage optional parameters. LogEvents=セキュリティ監査イベント Audit=監査 @@ -1128,7 +1137,7 @@ LogEventDesc=Enable logging for specific security events. Administrators the log AreaForAdminOnly=Setup parameters can be set by administrator users only. SystemInfoDesc=システム情報では、読み取り専用モードでのみ管理者の目に見える得るその他の技術情報です。 SystemAreaForAdminOnly=This area is available to administrator users only. Dolibarr user permissions cannot change this restriction. -CompanyFundationDesc=Edit the information of the company/entity. Click on "%s" button at the bottom of the page. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. AccountantFileNumber=Accountant code DisplayDesc=Parameters affecting the look and behaviour of Dolibarr can be modified here. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Rules to generate and validate passwords DisableForgetPasswordLinkOnLogonPage=Do not show the "Password Forgotten" link on the Login page UsersSetup=ユーザーモジュールのセットアップ UserMailRequired=Email required to create a new user +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### HRMSetup=HRM module setup ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=請求書ドキュメントモデル BillsPDFModulesAccordindToInvoiceType=Invoice documents models according to invoice type PaymentsPDFModules=Payment documents models ForceInvoiceDate=検証日に請求書の日付を強制的に -SuggestedPaymentModesIfNotDefinedInInvoice=請求書のために定義されていない場合、デフォルトでは請求書上で示唆決済モード +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice SuggestPaymentByRIBOnAccount=Suggest payment by withdrawal on account SuggestPaymentByChequeToAddress=Suggest payment by check to FreeLegalTextOnInvoices=請求書のフリーテキスト @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Vendor payments setup PropalSetup=商業的な提案はモジュールのセットアップ ProposalsNumberingModules=商業的な提案番号モジュール ProposalsPDFModules=商業的な提案文書のモデル -SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined for proposal +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal FreeLegalTextOnProposal=商業的な提案でフリーテキスト WatermarkOnDraftProposal=Watermark on draft commercial proposals (none if empty) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal @@ -1322,6 +1334,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 ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=Sales Orders management setup OrdersNumberingModules=モジュールの番号受注 OrdersModelModule=注文書のモデル @@ -1720,7 +1733,7 @@ MultiCompanySetup=マルチ会社のモジュールのセットアップ ##### Suppliers ##### SuppliersSetup=Vendor module setup SuppliersCommandModel=Complete template of Purchase Order -SuppliersCommandModelMuscadet=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) SuppliersInvoiceModel=Complete template of Vendor Invoice SuppliersInvoiceNumberingModel=Vendor invoices numbering models IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Hide images in Top menu LeftMenuBackgroundColor=Background color for Left menu BackgroundTableTitleColor=Background color for Table title line BackgroundTableTitleTextColor=Text color for Table title line +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Background color for odd table lines BackgroundTableLineEvenColor=Background color for even table lines MinimumNoticePeriod=Minimum notice period (Your leave request must be done before this delay) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Dolibarr Reference not found in Message ID FormatZip=ZIP MainMenuCode=Menu entry code (mainmenu) ECMAutoTree=Show automatic ECM tree -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. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Opening hours OpeningHoursDesc=Enter here the regular opening hours of your company. ResourceSetup=Configuration of Resource module @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramatical ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export +ImportSetup=Setup of module Import InstanceUniqueID=Unique ID of the instance SmallerThan=Smaller than LargerThan=Larger than @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled EmailTemplate=Template for email EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/ja_JP/bills.lang b/htdocs/langs/ja_JP/bills.lang index 1b81a9dba8f..286d0b7d1ae 100644 --- a/htdocs/langs/ja_JP/bills.lang +++ b/htdocs/langs/ja_JP/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Vendors invoices SupplierBill=Vendor invoice SupplierBills=仕入先の請求書 Payment=支払い -PaymentBack=戻って支払い -CustomerInvoicePaymentBack=戻って支払い +PaymentBack=Refund +CustomerInvoicePaymentBack=Refund Payments=支払い PaymentsBack=Refunds paymentInInvoiceCurrency=in invoices currency PaidBack=Paid back DeletePayment=支払いを削除します。 ConfirmDeletePayment=Are you sure you want to delete this payment? -ConfirmConvertToReduc=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. -ConfirmConvertToReducSupplier=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. SupplierPayments=Vendor payments ReceivedPayments=受け取った支払い @@ -209,17 +209,13 @@ NumberOfBillsByMonth=No. of invoices per month AmountOfBills=請求書の金額 AmountOfBillsHT=Amount of invoices (net of tax) AmountOfBillsByMonthHT=月別請求書の金額(税引後) -ShowSocialContribution=Show social/fiscal tax -ShowBill=請求書を表示する -ShowInvoice=請求書を表示する -ShowInvoiceReplace=請求書を交換見せる -ShowInvoiceAvoir=クレジットメモを表示する -ShowInvoiceDeposit=Show down payment invoice -ShowInvoiceSituation=Show situation invoice UseSituationInvoices=Allow situation invoice UseSituationInvoicesCreditNote=Allow situation invoice credit note Retainedwarranty=Retained warranty +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=To pay on %s toPayOn=to pay on %s RetainedWarranty=Retained Warranty @@ -230,7 +226,6 @@ 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 AlreadyPaidNoCreditNotesNoDeposits=Already paid (without credit notes and down payments) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Generated from template invoice %s WarningInvoiceDateInFuture=Warning, the invoice date is higher than current date WarningInvoiceDateTooFarInFuture=Warning, the invoice date is too far from current date ViewAvailableGlobalDiscounts=View available discounts +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=ステータス PaymentConditionShortRECEP=Due Upon Receipt @@ -509,7 +505,7 @@ ToMakePayment=Pay ToMakePaymentBack=Pay back ListOfYourUnpaidInvoices=List of unpaid invoices NoteListOfYourUnpaidInvoices=Note: This list contains only invoices for third parties you are linked to as a sale representative. -RevenueStamp=Revenue stamp +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party YouMustCreateStandardInvoiceFirstDesc=You have to create a standard invoice first and convert it to "template" to create a new template invoice @@ -575,3 +571,4 @@ AutoFillDateTo=Set end date for service line with next invoice date AutoFillDateToShort=Set end date MaxNumberOfGenerationReached=Max number of gen. reached BILL_DELETEInDolibarr=Invoice deleted +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/ja_JP/blockedlog.lang b/htdocs/langs/ja_JP/blockedlog.lang index 3b14b0761a3..8410e1d5419 100644 --- a/htdocs/langs/ja_JP/blockedlog.lang +++ b/htdocs/langs/ja_JP/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Unalterable logs ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) DownloadBlockChain=Download fingerprints -KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this re after it was recorded, or has erased the previous archived record (check that line with previous # exists). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. AddedByAuthority=Stored into remote authority diff --git a/htdocs/langs/ja_JP/cashdesk.lang b/htdocs/langs/ja_JP/cashdesk.lang index 8fb2af438ff..53905618d23 100644 --- a/htdocs/langs/ja_JP/cashdesk.lang +++ b/htdocs/langs/ja_JP/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=この記事を追加します。 RestartSelling=販売に戻る SellFinished=販売完了 PrintTicket=印刷チケット +SendTicket=Send ticket NoProductFound=記事見つかりません ProductFound=製品が見つかりました NoArticle=いいえ記事ません @@ -48,6 +49,7 @@ Footer=Footer AmountAtEndOfPeriod=Amount at end of period (day, month or year) TheoricalAmount=Theorical amount RealAmount=Real amount +CashFence=Cash fence CashFenceDone=Cash fence done for the period NbOfInvoices=請求書のNb Paymentnumpad=Type of Pad to enter payment @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS needs product categories to work OrderNotes=Order Notes CashDeskBankAccountFor=Default account to use for payments in NoPaimementModesDefined=No paiment mode defined in TakePOS configuration -TicketVatGrouped=Group VAT by rate in tickets -AutoPrintTickets=Automatically print tickets +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? @@ -87,7 +90,19 @@ HeadBar=Head Bar SortProductField=Field for sorting products Browser=Browser BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/ja_JP/companies.lang b/htdocs/langs/ja_JP/companies.lang index 37ddfe69630..5779051f34f 100644 --- a/htdocs/langs/ja_JP/companies.lang +++ b/htdocs/langs/ja_JP/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted=データベースから削除された会社 "%s"。 ListOfContacts=連絡先/アドレスのリスト ListOfContactsAddresses=連絡先/アドレスのリスト ListOfThirdParties=List of Third Parties -ShowCompany=Show Third Party ShowContact=連絡先を表示する ContactsAllShort=すべて(フィルタなし) ContactType=コンタクトタイプ @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=First name of sales representative SaleRepresentativeLastname=Last name of sales representative ErrorThirdpartiesMerge=There was an error when deleting the third parties. Please check the log. Changes have been reverted. NewCustomerSupplierCodeProposed=Customer or Vendor code already used, a new code is suggested +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Payment Type - Customer PaymentTermsCustomer=Payment Terms - Customer diff --git a/htdocs/langs/ja_JP/compta.lang b/htdocs/langs/ja_JP/compta.lang index 10ad16add2d..b5359c7da1e 100644 --- a/htdocs/langs/ja_JP/compta.lang +++ b/htdocs/langs/ja_JP/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=See %sanalysis of payments%s for a calculation on act SeeReportInDueDebtMode=See %sanalysis of invoices%s for a calculation based on known recorded invoices even if they are not yet accounted in Ledger. SeeReportInBookkeepingMode=See %sBookeeping report%s for a calculation on Bookkeeping Ledger table RulesAmountWithTaxIncluded=- Amounts shown are with all taxes included -RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the validation date of invoices and VAT and on the due date for expenses. For salaries defined with Salary module, the value date of payment is used. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- It includes the real payments made on invoices, expenses, VAT and salaries.
    - It is based on the payment dates of the invoices, expenses, VAT and salaries. The donation date for donation. -RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the validation date of these invoices.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    RulesCATotalSaleJournal=It includes all credit lines from the Sale journal. RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" @@ -191,7 +191,7 @@ RulesVATDueServices=- サービスについては、報告書は、請求書の RulesVATDueProducts=- For material assets, the report includes the VAT invoices, based on the invoice date. OptionVatInfoModuleComptabilite=注:材料の資産については、それがより公正に配信した日付を使用する必要があります。 ThisIsAnEstimatedValue=This is a preview, based on business events and not from the final ledger table, so final results may differ from this preview values -PercentOfInvoice=%%/請求書 +PercentOfInvoice=%%/請求書 NotUsedForGoods=財では使用しません ProposalStats=提案に関する統計 OrderStats=注文に関する統計 @@ -255,3 +255,12 @@ TurnoverbyVatrate=Turnover invoiced by sale tax rate TurnoverCollectedbyVatrate=Turnover collected by sale tax rate PurchasebyVatrate=Purchase by sale tax rate LabelToShow=Short label +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected +IncludeVarpaysInResults = Include various payments in reports +IncludeLoansInResults = Include loans in reports diff --git a/htdocs/langs/ja_JP/donations.lang b/htdocs/langs/ja_JP/donations.lang index c3841279a47..68a136bd285 100644 --- a/htdocs/langs/ja_JP/donations.lang +++ b/htdocs/langs/ja_JP/donations.lang @@ -7,7 +7,6 @@ AddDonation=Create a donation NewDonation=新しい寄付 DeleteADonation=Delete a donation ConfirmDeleteADonation=Are you sure you want to delete this donation? -ShowDonation=Show donation PublicDonation=義援金 DonationsArea=寄付のエリア DonationStatusPromiseNotValidated=ドラフトの約束 @@ -17,6 +16,7 @@ DonationStatusPromiseNotValidatedShort=ドラフト DonationStatusPromiseValidatedShort=検証 DonationStatusPaidShort=受信された DonationTitle=Donation receipt +DonationDate=Donation date DonationDatePayment=支払期日 ValidPromess=約束を検証する DonationReceipt=Donation receipt diff --git a/htdocs/langs/ja_JP/errors.lang b/htdocs/langs/ja_JP/errors.lang index e75a5699366..fe936f0de87 100644 --- a/htdocs/langs/ja_JP/errors.lang +++ b/htdocs/langs/ja_JP/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=ファイルはサーバーで完全に受け取っていませ ErrorNoTmpDir=一時的なdirectyの%sが存在しません。 ErrorUploadBlockedByAddon=PHP / Apacheプラグインによってブロックされてアップロードします。 ErrorFileSizeTooLarge=ファイルサイズが大きすぎます。 +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=(%s桁の最大値)int型に対して長すぎるサイズ ErrorSizeTooLongForVarcharType=文字列型(%s文字最大)長すぎるサイズ ErrorNoValueForSelectType=Please fill value for select list @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # 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/ja_JP/install.lang b/htdocs/langs/ja_JP/install.lang index e9edfac1a37..530e00adb78 100644 --- a/htdocs/langs/ja_JP/install.lang +++ b/htdocs/langs/ja_JP/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=This PHP supports Curl. PHPSupportCalendar=This PHP supports calendars extensions. PHPSupportUTF8=This PHP supports UTF8 functions. PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=This PHP supports %s 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. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=お使いのPHPインストールはCurlをサポー ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. 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. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. ErrorDirDoesNotExists=ディレクトリの%sが存在しません。 ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=The application tried to self-upgrade, but the in 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. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/ja_JP/interventions.lang b/htdocs/langs/ja_JP/interventions.lang index 7e4f9e4e533..f6278c8556d 100644 --- a/htdocs/langs/ja_JP/interventions.lang +++ b/htdocs/langs/ja_JP/interventions.lang @@ -41,9 +41,7 @@ InterventionsArea=Interventions area DraftFichinter=Draft interventions LastModifiedInterventions=Latest %s modified interventions FichinterToProcess=Interventions to process -##### Types de contacts ##### TypeContact_fichinter_external_CUSTOMER=フォローアップ顧客との接触 -# Modele numérotation PrintProductsOnFichinter=Print also lines of type "product" (not only services) on intervention card PrintProductsOnFichinterDetails=interventions generated from orders UseServicesDurationOnFichinter=Use services duration for interventions generated from orders @@ -53,14 +51,16 @@ InterventionStatistics=Statistics of interventions NbOfinterventions=No. of intervention cards NumberOfInterventionsByMonth=No. of intervention cards by month (date of validation) AmountOfInteventionNotIncludedByDefault=Amount of intervention is not included by default into profit (in most cases, timesheets are used to count time spent). Add option PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT to 1 into home-setup-other to include them. -##### Exports ##### InterId=Intervention id InterRef=Intervention ref. InterDateCreation=Date creation intervention InterDuration=Duration intervention InterStatus=Status intervention InterNote=Note intervention +InterLine=Line of intervention InterLineId=Line id intervention InterLineDate=Line date intervention InterLineDuration=Line duration intervention InterLineDesc=Line description intervention +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/ja_JP/link.lang b/htdocs/langs/ja_JP/link.lang index 51c5d766fc4..ede779683da 100644 --- a/htdocs/langs/ja_JP/link.lang +++ b/htdocs/langs/ja_JP/link.lang @@ -8,3 +8,4 @@ LinkRemoved=リンク %s が削除されました ErrorFailedToDeleteLink= リンク '%s' を削除できませんでした ErrorFailedToUpdateLink= リンク '%s' を更新できませんでした URLToLink=リンクの URL +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/ja_JP/mails.lang b/htdocs/langs/ja_JP/mails.lang index 4c1dd54d0d4..cdd1d8e1eeb 100644 --- a/htdocs/langs/ja_JP/mails.lang +++ b/htdocs/langs/ja_JP/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=No contact/address with a category found NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found OutGoingEmailSetup=Outgoing email setup InGoingEmailSetup=Incoming email setup -OutGoingEmailSetupForEmailing=Outgoing email setup (for mass emailing) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Default outgoing email setup Information=Information ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/ja_JP/main.lang b/htdocs/langs/ja_JP/main.lang index 7dc914b5354..571c9f75ab4 100644 --- a/htdocs/langs/ja_JP/main.lang +++ b/htdocs/langs/ja_JP/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Save and stay SaveAndNew=Save and new TestConnection=試験用接続 ToClone=クローン +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Choose data you want to clone: NoCloneOptionsSpecified=定義されているクローンを作成するデータがありません。 Of=の @@ -829,6 +830,8 @@ Gender=Gender Genderman=Man Genderwoman=Woman ViewList=リストビュー +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Mandatory Hello=Hello GoodBye=GoodBye @@ -971,7 +974,7 @@ CommentDeleted=Comment deleted Everybody=皆 PayedBy=Paid by PayedTo=Paid to -Monthly=Monthly +Monthly=毎月 Quarterly=Quarterly Annual=Annual Local=Local @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Select your graph options to build a graph Measures=Measures XAxis=X-Axis YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/ja_JP/modulebuilder.lang b/htdocs/langs/ja_JP/modulebuilder.lang index 00a8c0f9d32..135ac1ae9ec 100644 --- a/htdocs/langs/ja_JP/modulebuilder.lang +++ b/htdocs/langs/ja_JP/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=List of dictionaries entries ListOfPermissionsDefined=List of defined permissions SeeExamples=See examples here EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) -VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update). Using a negative value means field is not shown by default on list but can be selected for viewing). It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty DisplayOnPdf=Display on PDF IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) diff --git a/htdocs/langs/ja_JP/multicurrency.lang b/htdocs/langs/ja_JP/multicurrency.lang new file mode 100644 index 00000000000..bfcbd11fb7c --- /dev/null +++ b/htdocs/langs/ja_JP/multicurrency.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Multi currency +ErrorAddRateFail=Error in added rate +ErrorAddCurrencyFail=Error in added currency +ErrorDeleteCurrencyFail=Error delete fail +multicurrency_syncronize_error=Synchronization error: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Use the date of the document to find the currency rate, instead of using the latest known rate +multicurrency_useOriginTx=When an object is created from another, keep the original rate from the source object (otherwise use the latest known rate) +CurrencyLayerAccount=CurrencyLayer API +CurrencyLayerAccount_help_to_synchronize=You must create an account on website %s to use this functionality.
    Get your API key.
    If you use a free account, you can't change the source currency (USD by default).
    If your main currency is not USD, the application will automatically recalculate it.

    You are limited to 1000 synchronizations per month. +multicurrency_appId=API key +multicurrency_appCurrencySource=Source currency +multicurrency_alternateCurrencySource=Alternate source currency +CurrenciesUsed=Currencies used +CurrenciesUsed_help_to_add=Add the different currencies and rates you need to use on your proposals, orders etc. +rate=rate +MulticurrencyReceived=Received, original currency +MulticurrencyRemainderToTake=Remaining amount, original currency +MulticurrencyPaymentAmount=Payment amount, original currency +AmountToOthercurrency=Amount To (in currency of receiving account) +CurrencyRateSyncSucceed=Currency rate synchronization done successfuly +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Use the currency of the document for online payments diff --git a/htdocs/langs/ja_JP/other.lang b/htdocs/langs/ja_JP/other.lang index 27b1ffe543e..bed40f08556 100644 --- a/htdocs/langs/ja_JP/other.lang +++ b/htdocs/langs/ja_JP/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Sales order validated Notify_ORDER_SENTBYMAIL=Sales order sent by mail Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=URL of page WEBSITE_TITLE=タイトル WEBSITE_DESCRIPTION=説明 WEBSITE_IMAGE=Image -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Keywords LinesToImport=Lines to import diff --git a/htdocs/langs/ja_JP/products.lang b/htdocs/langs/ja_JP/products.lang index b2546e37351..61a31695f3a 100644 --- a/htdocs/langs/ja_JP/products.lang +++ b/htdocs/langs/ja_JP/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL MassBarcodeInit=Mass barcode init MassBarcodeInitDesc=This page can be used to initialize a barcode on objects that does not have barcode defined. Check before that setup of module barcode is complete. ProductAccountancyBuyCode=Accounting code (purchase) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Accounting code (sale) ProductAccountancySellIntraCode=Accounting code (sale intra-Community) ProductAccountancySellExportCode=Accounting code (sale export) @@ -165,7 +167,7 @@ SuppliersPrices=Vendor prices SuppliersPricesOfProductsOrServices=Vendor prices (of products or services) CustomCode=Customs / Commodity / HS code CountryOrigin=原産国 -Nature=Nature of produt (material/finished) +Nature=Nature of product (material/finished) ShortLabel=Short label Unit=ユニット p=u. diff --git a/htdocs/langs/ja_JP/projects.lang b/htdocs/langs/ja_JP/projects.lang index f0f0a7e387f..b374f5a404b 100644 --- a/htdocs/langs/ja_JP/projects.lang +++ b/htdocs/langs/ja_JP/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=which I'm linked to project Time=時間 ListOfTasks=List of tasks GoToListOfTimeConsumed=Go to list of time consumed -GoToListOfTasks=Show as list -GoToGanttView=show as Gantt GanttView=Gantt View ListProposalsAssociatedProject=List of the commercial proposals related to the project ListOrdersAssociatedProject=List of sales orders related to the project @@ -188,7 +186,7 @@ PlannedWorkload=Planned workload PlannedWorkloadShort=Workload ProjectReferers=Related items ProjectMustBeValidatedFirst=Project must be validated first -FirstAddRessourceToAllocateTime=Assign a user resource to task to allocate time +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=Input per day InputPerWeek=Input per week InputPerMonth=Input per month @@ -240,6 +238,7 @@ LatestModifiedProjects=Latest %s modified projects OtherFilteredTasks=Other filtered tasks NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=Allow user comments on tasks AllowCommentOnProject=Allow user comments on projects @@ -256,7 +255,7 @@ ServiceToUseOnLines=Service to use on lines InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. ProjectFollowOpportunity=Follow opportunity -ProjectFollowTasks=Follow tasks +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Usage: Opportunity UsageTasks=Usage: Tasks @@ -265,3 +264,4 @@ InvoiceToUse=Draft invoice to use NewInvoice=新しい請求書 OneLinePerTask=One line per task OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/ja_JP/receiptprinter.lang b/htdocs/langs/ja_JP/receiptprinter.lang index c738f5e89d5..673850ca62f 100644 --- a/htdocs/langs/ja_JP/receiptprinter.lang +++ b/htdocs/langs/ja_JP/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Dummy Printer CONNECTOR_NETWORK_PRINT=Network Printer CONNECTOR_FILE_PRINT=Local Printer CONNECTOR_WINDOWS_PRINT=Local Windows Printer +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Fake Printer for test, does nothing CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Default Profile PROFILE_SIMPLE=Simple Profile PROFILE_EPOSTEP=Epos Tep Profile @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Invoice month in letters DOL_VALUE_MONTH=Invoice month DOL_VALUE_DAY=Invoice day DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=請求書参照 +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=資本 +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/ja_JP/stripe.lang b/htdocs/langs/ja_JP/stripe.lang index 36061a632a1..90be83666f7 100644 --- a/htdocs/langs/ja_JP/stripe.lang +++ b/htdocs/langs/ja_JP/stripe.lang @@ -32,6 +32,7 @@ VendorName=ベンダーの名前 CSSUrlForPaymentForm=支払いフォームのCSSスタイルシートのURL NewStripePaymentReceived=New Stripe payment received NewStripePaymentFailed=New Stripe payment tried but failed +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Secret test key STRIPE_TEST_PUBLISHABLE_KEY=Publishable test key STRIPE_TEST_WEBHOOK_KEY=Webhook test key @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mo 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... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authenticatin rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/ja_JP/users.lang b/htdocs/langs/ja_JP/users.lang index 2666d4032c8..daa3de23f77 100644 --- a/htdocs/langs/ja_JP/users.lang +++ b/htdocs/langs/ja_JP/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Users and their properties DomainUser=ドメインユーザー%s Reactivate=再アクティブ化 CreateInternalUserDesc=This form allows you to create an internal user in your company/organization. To create an external user (customer, vendor etc. ..), use the button 'Create Dolibarr User' from that third-party's contact card. -InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other.

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=ユーザーのグループのいずれかから継承されたので、許可が付与されます。 Inherited=継承された UserWillBeInternalUser=(特定の第三者にリンクされていないため)作成したユーザーは、内部ユーザーになります @@ -110,3 +110,8 @@ UserLogged=User logged DateEmployment=Employment Start Date DateEmploymentEnd=Employment End Date CantDisableYourself=You can't disable your own user record +ForceUserExpenseValidator=Force expense report validator +ForceUserHolidayValidator=Force leave request validator +ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/ja_JP/website.lang b/htdocs/langs/ja_JP/website.lang index fc034117da4..b3e1aad6d54 100644 --- a/htdocs/langs/ja_JP/website.lang +++ b/htdocs/langs/ja_JP/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=View page in new tab SetAsHomePage=ホームページに設定する RealURL=Real URL ViewWebsiteInProduction=View web site using home URLs -SetHereVirtualHost=Use with Apache/NGinx/...
    If you can create, on your web server (Apache, Nginx, ...), a dedicated Virtual Host with PHP enabled and a Root directory on
    %s
    then set the name of the virtual host you have created in the properties of web site, so the preview can be done also using this dedicated web server access instead of the internal Dolibarr server. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS=Use with PHP embedded server
    On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running
    php -S 0.0.0.0:8080 -t %s YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org CheckVirtualHostPerms=Check also that virtual host has permission %s on files into
    %s @@ -56,7 +57,7 @@ NoPageYet=No pages yet YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template SyntaxHelp=Help on specific syntax tips YouCanEditHtmlSourceckeditor=You can edit HTML source code using the "Source" button in editor. -YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Clone page/container CloneSite=Clone site SiteAdded=Website added @@ -76,7 +77,7 @@ BlogPost=Blog post WebsiteAccount=Website account WebsiteAccounts=Website accounts AddWebsiteAccount=Create web site account -BackToListOfThirdParty=Back to list for Third Party +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Disable website first MyContainerTitle=My web site title AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Sorry, this website is currently off line. Please 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 -OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that edits of HTML source will be possible when page content has been initialized by grabbing it from an external page ("Online" editor will NOT be available) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Only edition of HTML source is possible when content was grabbed from an external site GrabImagesInto=Grab also images found into css and page. ImagesShouldBeSavedInto=Images should be saved into directory @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 ch MainLanguage=Main language OtherLanguages=Other languages UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/ja_JP/zapier.lang b/htdocs/langs/ja_JP/zapier.lang new file mode 100644 index 00000000000..6d6eda71313 --- /dev/null +++ b/htdocs/langs/ja_JP/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr module + +# +# Admin page +# +ZapierForDolibarrSetup = Setup of Zapier for Dolibarr diff --git a/htdocs/langs/ka_GE/accountancy.lang b/htdocs/langs/ka_GE/accountancy.lang index 1f9382137ea..b8ce37a0956 100644 --- a/htdocs/langs/ka_GE/accountancy.lang +++ b/htdocs/langs/ka_GE/accountancy.lang @@ -121,6 +121,7 @@ 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 +TotalForAccount=Total for accounting account Ventilate=Bind @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Accounting account to register donations ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (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 products sold in EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported 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_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (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_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unkno ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error PaymentsNotLinkedToProduct=Payment not linked to any product / service +OpeningBalance=Opening balance ShowOpeningBalance=Show opening balance HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Group of account PcgtypeDesc=Group 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. +Reconcilable=Reconcilable + TotalVente=Total turnover before tax TotalMarge=Total sales margin @@ -307,11 +317,13 @@ 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Chart of accounts Id ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC OptionModeProductSellExport=Mode sales exported in other countries OptionModeProductBuy=Mode purchases +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries 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. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=Remove accounting code from lines that not exists into charts of account CleanHistory=Reset all bindings for selected year PredefinedGroups=Predefined groups @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Account removed from group SaleLocal=Local sale SaleExport=Export sale SaleEEC=Sale in EEC +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=Range of accounting account diff --git a/htdocs/langs/ka_GE/admin.lang b/htdocs/langs/ka_GE/admin.lang index 2f36c876c1a..7eb67d7a4ab 100644 --- a/htdocs/langs/ka_GE/admin.lang +++ b/htdocs/langs/ka_GE/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Web server user/group NoSessionFound=Your PHP configuration seems to not allow listing of active sessions. The directory used to save sessions (%s) may be protected (for example by OS permissions or by PHP directive open_basedir). DBStoringCharset=Database charset to store data DBSortingCharset=Database charset to sort data +HostCharset=Host charset ClientCharset=Client charset ClientSortingCharset=Client collation WarningModuleNotActive=Module %s must be enabled @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the NoMaxSizeByPHPLimit=Note: No limit is set in your PHP configuration MaxSizeForUploadedFiles=Maximum size for uploaded files (0 to disallow any upload) UseCaptchaCode=Use graphical code (CAPTCHA) on login page -AntiVirusCommand= Full path to antivirus command -AntiVirusCommandExample= Example for ClamWin: c:\\Progra~1\\ClamWin\\bin\\clamscan.exe
    Example for ClamAv: /usr/bin/clamscan +AntiVirusCommand=Full path to antivirus command +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= More parameters on command line -AntiVirusParamExample= Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=Accounting module setup UserSetup=User management setup MultiCurrencySetup=Multi-currency setup @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Feature disabled in demo FeatureAvailableOnlyOnStable=Feature only available on official stable versions BoxesDesc=Widgets are components showing some information that you can add to personalize some pages. You can choose between showing the widget or not by selecting target page and clicking 'Activate', or by clicking the trashcan to disable it. OnlyActiveElementsAreShown=Only elements from enabled modules are shown. -ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button (at end of module line) to enable/disable a module/application. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. ModulesMarketPlaceDesc=You can find more modules to download on external websites on the Internet... ModulesDeployDesc=If permissions on your file system allow it, you can use this tool to deploy an external module. The module will then be visible on the tab %s. ModulesMarketPlaces=Find external app/modules @@ -212,6 +213,7 @@ CompatibleUpTo=Compatible with version %s NotCompatible=This module does not seem compatible with your Dolibarr %s (Min %s - Max %s). CompatibleAfterUpdate=This module requires an update to your Dolibarr %s (Min %s - Max %s). SeeInMarkerPlace=See in Market place +SeeSetupOfModule=See setup of module %s Updated=Updated Nouveauté=Novelty AchatTelechargement=Buy / Download @@ -221,6 +223,7 @@ DoliPartnersDesc=List of companies providing custom-developed modules or feature WebSiteDesc=External websites for more add-on (non-core) modules... DevelopYourModuleDesc=Some solutions to develop your own module... URL=URL +RelativeURL=Relative URL BoxesAvailable=Widgets available BoxesActivated=Widgets activated ActivateOn=Activate on @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Checkboxes ExtrafieldCheckBoxFromList=Checkboxes from table ExtrafieldLink=Link to an object ComputedFormula=Computed field -ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Store computed field ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! ExtrafieldParamHelpPassword=Leaving this field blank means this value will be stored without encryption (field must be only hidden with star on screen).
    Set 'auto' to use the default encryption rule to save password into database (then value read will be the hash only, no way to retrieve original value) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Keep empty to use default value DefaultLink=Default link SetAsDefault=Set as default ValueOverwrittenByUserSetup=Warning, this value may be overwritten by user specific setup (each user can set his own clicktodial url) -ExternalModule=External module - Installed into directory %s +ExternalModule=External module +InstalledInto=Installed into directory %s BarcodeInitForthird-parties=Mass barcode init for third-parties BarcodeInitForProductsOrServices=Mass barcode init or reset for products or services CurrentlyNWithoutBarCode=Currently, you have %s record on %s %s without barcode defined. @@ -947,7 +951,7 @@ DictionaryCanton=States/Provinces DictionaryRegion=Regions DictionaryCountry=Countries DictionaryCurrency=Currencies -DictionaryCivility=Title of civility +DictionaryCivility=Honorific titles DictionaryActions=Types of agenda events DictionarySocialContributions=Types of social or fiscal taxes DictionaryVAT=VAT Rates or Sales Tax Rates @@ -988,6 +992,7 @@ VATIsNotUsedDesc=By default the proposed Sales tax is 0 which can be used for ca VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=Rate LocalTax1IsNotUsed=Do not use second tax LocalTax1IsUsedDesc=Use a second type of tax (other than first one) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices LocalTax2IsNotUsedDescES=By default the proposed IRPF is 0. End of rule. LocalTax2IsUsedExampleES=In Spain, freelancers and independent professionals who provide services and companies who have chosen the tax system of modules. LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=Reports on local taxes CalcLocaltax1=Sales - Purchases CalcLocaltax1Desc=Local Taxes reports are calculated with the difference between localtaxes sales and localtaxes purchases @@ -1018,6 +1026,7 @@ CalcLocaltax2=Purchases CalcLocaltax2Desc=Local Taxes reports are the total of localtaxes purchases CalcLocaltax3=Sales CalcLocaltax3Desc=Local Taxes reports are the total of localtaxes sales +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=Label used by default if no translation can be found for code LabelOnDocuments=Label on documents LabelOrTranslationKey=Label or translation key @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Expense report to approve Delays_MAIN_DELAY_HOLIDAYS=Leave requests 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. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. SetupDescription5=Other Setup menu entries manage optional parameters. LogEvents=Security audit events Audit=Audit @@ -1128,7 +1137,7 @@ LogEventDesc=Enable logging for specific security events. Administrators the log AreaForAdminOnly=Setup parameters can be set by administrator users only. SystemInfoDesc=System information is miscellaneous technical information you get in read only mode and visible for administrators only. SystemAreaForAdminOnly=This area is available to administrator users only. Dolibarr user permissions cannot change this restriction. -CompanyFundationDesc=Edit the information of the company/entity. Click on "%s" button at the bottom of the page. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. AccountantFileNumber=Accountant code DisplayDesc=Parameters affecting the look and behaviour of Dolibarr can be modified here. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Rules to generate and validate passwords DisableForgetPasswordLinkOnLogonPage=Do not show the "Password Forgotten" link on the Login page UsersSetup=Users module setup UserMailRequired=Email required to create a new user +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### HRMSetup=HRM module setup ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Invoice documents models BillsPDFModulesAccordindToInvoiceType=Invoice documents models according to invoice type PaymentsPDFModules=Payment documents models ForceInvoiceDate=Force invoice date to validation date -SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined for invoice +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice SuggestPaymentByRIBOnAccount=Suggest payment by withdrawal on account SuggestPaymentByChequeToAddress=Suggest payment by check to FreeLegalTextOnInvoices=Free text on invoices @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Vendor payments setup PropalSetup=Commercial proposals module setup ProposalsNumberingModules=Commercial proposal numbering models ProposalsPDFModules=Commercial proposal documents models -SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined for proposal +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal FreeLegalTextOnProposal=Free text on commercial proposals WatermarkOnDraftProposal=Watermark on draft commercial proposals (none if empty) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal @@ -1322,6 +1334,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 ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=Sales Orders management setup OrdersNumberingModules=Orders numbering models OrdersModelModule=Order documents models @@ -1720,7 +1733,7 @@ MultiCompanySetup=Multi-company module setup ##### Suppliers ##### SuppliersSetup=Vendor module setup SuppliersCommandModel=Complete template of Purchase Order -SuppliersCommandModelMuscadet=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) SuppliersInvoiceModel=Complete template of Vendor Invoice SuppliersInvoiceNumberingModel=Vendor invoices numbering models IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Hide images in Top menu LeftMenuBackgroundColor=Background color for Left menu BackgroundTableTitleColor=Background color for Table title line BackgroundTableTitleTextColor=Text color for Table title line +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Background color for odd table lines BackgroundTableLineEvenColor=Background color for even table lines MinimumNoticePeriod=Minimum notice period (Your leave request must be done before this delay) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Dolibarr Reference not found in Message ID FormatZip=Zip MainMenuCode=Menu entry code (mainmenu) ECMAutoTree=Show automatic ECM tree -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. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Opening hours OpeningHoursDesc=Enter here the regular opening hours of your company. ResourceSetup=Configuration of Resource module @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramatical ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export +ImportSetup=Setup of module Import InstanceUniqueID=Unique ID of the instance SmallerThan=Smaller than LargerThan=Larger than @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled EmailTemplate=Template for email EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/ka_GE/bills.lang b/htdocs/langs/ka_GE/bills.lang index 6d7c61784f7..9f11d8ecf87 100644 --- a/htdocs/langs/ka_GE/bills.lang +++ b/htdocs/langs/ka_GE/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Vendors invoices SupplierBill=Vendor invoice SupplierBills=suppliers invoices Payment=Payment -PaymentBack=Payment back -CustomerInvoicePaymentBack=Payment back +PaymentBack=Refund +CustomerInvoicePaymentBack=Refund Payments=Payments PaymentsBack=Refunds paymentInInvoiceCurrency=in invoices currency PaidBack=Paid back DeletePayment=Delete payment ConfirmDeletePayment=Are you sure you want to delete this payment? -ConfirmConvertToReduc=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. -ConfirmConvertToReducSupplier=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. SupplierPayments=Vendor payments ReceivedPayments=Received payments @@ -209,17 +209,13 @@ NumberOfBillsByMonth=No. of invoices per month AmountOfBills=Amount of invoices AmountOfBillsHT=Amount of invoices (net of tax) AmountOfBillsByMonthHT=Amount of invoices by month (net of tax) -ShowSocialContribution=Show social/fiscal tax -ShowBill=Show invoice -ShowInvoice=Show invoice -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 +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=To pay on %s toPayOn=to pay on %s RetainedWarranty=Retained Warranty @@ -230,7 +226,6 @@ 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 AlreadyPaidNoCreditNotesNoDeposits=Already paid (without credit notes and down payments) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Generated from template invoice %s WarningInvoiceDateInFuture=Warning, the invoice date is higher than current date WarningInvoiceDateTooFarInFuture=Warning, the invoice date is too far from current date ViewAvailableGlobalDiscounts=View available discounts +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Status PaymentConditionShortRECEP=Due Upon Receipt @@ -509,7 +505,7 @@ ToMakePayment=Pay ToMakePaymentBack=Pay back ListOfYourUnpaidInvoices=List of unpaid invoices NoteListOfYourUnpaidInvoices=Note: This list contains only invoices for third parties you are linked to as a sale representative. -RevenueStamp=Revenue stamp +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party YouMustCreateStandardInvoiceFirstDesc=You have to create a standard invoice first and convert it to "template" to create a new template invoice @@ -575,3 +571,4 @@ AutoFillDateTo=Set end date for service line with next invoice date AutoFillDateToShort=Set end date MaxNumberOfGenerationReached=Max number of gen. reached BILL_DELETEInDolibarr=Invoice deleted +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/ka_GE/blockedlog.lang b/htdocs/langs/ka_GE/blockedlog.lang index cff8f7d657b..5afae6e9e53 100644 --- a/htdocs/langs/ka_GE/blockedlog.lang +++ b/htdocs/langs/ka_GE/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Unalterable logs ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) DownloadBlockChain=Download fingerprints -KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this re after it was recorded, or has erased the previous archived record (check that line with previous # exists). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. AddedByAuthority=Stored into remote authority diff --git a/htdocs/langs/ka_GE/cashdesk.lang b/htdocs/langs/ka_GE/cashdesk.lang index 7ddbc71f3e9..f9f00015840 100644 --- a/htdocs/langs/ka_GE/cashdesk.lang +++ b/htdocs/langs/ka_GE/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Add this article RestartSelling=Go back on sell SellFinished=Sale complete PrintTicket=Print ticket +SendTicket=Send ticket NoProductFound=No article found ProductFound=product found NoArticle=No article @@ -48,6 +49,7 @@ Footer=Footer AmountAtEndOfPeriod=Amount at end of period (day, month or year) TheoricalAmount=Theorical amount RealAmount=Real amount +CashFence=Cash fence CashFenceDone=Cash fence done for the period NbOfInvoices=Nb of invoices Paymentnumpad=Type of Pad to enter payment @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS needs product categories to work OrderNotes=Order Notes CashDeskBankAccountFor=Default account to use for payments in NoPaimementModesDefined=No paiment mode defined in TakePOS configuration -TicketVatGrouped=Group VAT by rate in tickets -AutoPrintTickets=Automatically print tickets +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? @@ -87,7 +90,19 @@ HeadBar=Head Bar SortProductField=Field for sorting products Browser=Browser BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/ka_GE/companies.lang b/htdocs/langs/ka_GE/companies.lang index c569a48c84a..f8b3d0354e2 100644 --- a/htdocs/langs/ka_GE/companies.lang +++ b/htdocs/langs/ka_GE/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted=Company "%s" deleted from database. ListOfContacts=List of contacts/addresses ListOfContactsAddresses=List of contacts/addresses ListOfThirdParties=List of Third Parties -ShowCompany=Show Third Party ShowContact=Show contact ContactsAllShort=All (No filter) ContactType=Contact type @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=First name of sales representative SaleRepresentativeLastname=Last name of sales representative ErrorThirdpartiesMerge=There was an error when deleting the third parties. Please check the log. Changes have been reverted. NewCustomerSupplierCodeProposed=Customer or Vendor code already used, a new code is suggested +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Payment Type - Customer PaymentTermsCustomer=Payment Terms - Customer diff --git a/htdocs/langs/ka_GE/compta.lang b/htdocs/langs/ka_GE/compta.lang index 1de030a1905..6cd046c5607 100644 --- a/htdocs/langs/ka_GE/compta.lang +++ b/htdocs/langs/ka_GE/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=See %sanalysis of payments%s for a calculation on act SeeReportInDueDebtMode=See %sanalysis of invoices%s for a calculation based on known recorded invoices even if they are not yet accounted in Ledger. SeeReportInBookkeepingMode=See %sBookeeping report%s for a calculation on Bookkeeping Ledger table RulesAmountWithTaxIncluded=- Amounts shown are with all taxes included -RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the validation date of invoices and VAT and on the due date for expenses. For salaries defined with Salary module, the value date of payment is used. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- It includes the real payments made on invoices, expenses, VAT and salaries.
    - It is based on the payment dates of the invoices, expenses, VAT and salaries. The donation date for donation. -RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the validation date of these invoices.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    RulesCATotalSaleJournal=It includes all credit lines from the Sale journal. RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Turnover invoiced by sale tax rate TurnoverCollectedbyVatrate=Turnover collected by sale tax rate PurchasebyVatrate=Purchase by sale tax rate LabelToShow=Short label +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/ka_GE/donations.lang b/htdocs/langs/ka_GE/donations.lang index 5edc8d62033..de4bdf68f03 100644 --- a/htdocs/langs/ka_GE/donations.lang +++ b/htdocs/langs/ka_GE/donations.lang @@ -7,7 +7,6 @@ AddDonation=Create a donation NewDonation=New donation DeleteADonation=Delete a donation ConfirmDeleteADonation=Are you sure you want to delete this donation? -ShowDonation=Show donation PublicDonation=Public donation DonationsArea=Donations area DonationStatusPromiseNotValidated=Draft promise @@ -17,6 +16,7 @@ DonationStatusPromiseNotValidatedShort=Draft DonationStatusPromiseValidatedShort=Validated DonationStatusPaidShort=Received DonationTitle=Donation receipt +DonationDate=Donation date DonationDatePayment=Payment date ValidPromess=Validate promise DonationReceipt=Donation receipt diff --git a/htdocs/langs/ka_GE/errors.lang b/htdocs/langs/ka_GE/errors.lang index 3ffc686e62f..7c67aeca8b5 100644 --- a/htdocs/langs/ka_GE/errors.lang +++ b/htdocs/langs/ka_GE/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=File not received completely by server. ErrorNoTmpDir=Temporary directy %s does not exists. ErrorUploadBlockedByAddon=Upload blocked by a PHP/Apache plugin. ErrorFileSizeTooLarge=File size is too large. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Size too long for int type (%s digits maximum) ErrorSizeTooLongForVarcharType=Size too long for string type (%s chars maximum) ErrorNoValueForSelectType=Please fill value for select list @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # 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/ka_GE/install.lang b/htdocs/langs/ka_GE/install.lang index bf9c08c4ba7..f67dff57184 100644 --- a/htdocs/langs/ka_GE/install.lang +++ b/htdocs/langs/ka_GE/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=This PHP supports Curl. PHPSupportCalendar=This PHP supports calendars extensions. PHPSupportUTF8=This PHP supports UTF8 functions. PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=This PHP supports %s functions. PHPMemoryOK=Your PHP max session memory is set to %s. This should be enough. 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. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=Your PHP installation does not support Curl. ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. 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. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. ErrorDirDoesNotExists=Directory %s does not exist. ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=The application tried to self-upgrade, but the in 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. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/ka_GE/interventions.lang b/htdocs/langs/ka_GE/interventions.lang index e7667ef6946..e5936f8246e 100644 --- a/htdocs/langs/ka_GE/interventions.lang +++ b/htdocs/langs/ka_GE/interventions.lang @@ -41,9 +41,7 @@ InterventionsArea=Interventions area DraftFichinter=Draft interventions LastModifiedInterventions=Latest %s modified interventions FichinterToProcess=Interventions to process -##### Types de contacts ##### TypeContact_fichinter_external_CUSTOMER=Following-up customer contact -# Modele numérotation PrintProductsOnFichinter=Print also lines of type "product" (not only services) on intervention card PrintProductsOnFichinterDetails=interventions generated from orders UseServicesDurationOnFichinter=Use services duration for interventions generated from orders @@ -53,14 +51,16 @@ InterventionStatistics=Statistics of interventions NbOfinterventions=No. of intervention cards NumberOfInterventionsByMonth=No. of intervention cards by month (date of validation) AmountOfInteventionNotIncludedByDefault=Amount of intervention is not included by default into profit (in most cases, timesheets are used to count time spent). Add option PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT to 1 into home-setup-other to include them. -##### Exports ##### InterId=Intervention id InterRef=Intervention ref. InterDateCreation=Date creation intervention InterDuration=Duration intervention InterStatus=Status intervention InterNote=Note intervention +InterLine=Line of intervention InterLineId=Line id intervention InterLineDate=Line date intervention InterLineDuration=Line duration intervention InterLineDesc=Line description intervention +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/ka_GE/link.lang b/htdocs/langs/ka_GE/link.lang index fdcf07aeff4..1ffcd41a18b 100644 --- a/htdocs/langs/ka_GE/link.lang +++ b/htdocs/langs/ka_GE/link.lang @@ -8,3 +8,4 @@ LinkRemoved=The link %s has been removed ErrorFailedToDeleteLink= Failed to remove link '%s' ErrorFailedToUpdateLink= Failed to update link '%s' URLToLink=URL to link +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/ka_GE/mails.lang b/htdocs/langs/ka_GE/mails.lang index 8b92cef3103..7b3bfd3852a 100644 --- a/htdocs/langs/ka_GE/mails.lang +++ b/htdocs/langs/ka_GE/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=No contact/address with a category found NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found OutGoingEmailSetup=Outgoing email setup InGoingEmailSetup=Incoming email setup -OutGoingEmailSetupForEmailing=Outgoing email setup (for mass emailing) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Default outgoing email setup Information=Information ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/ka_GE/main.lang b/htdocs/langs/ka_GE/main.lang index 686f3ac1849..2082506c405 100644 --- a/htdocs/langs/ka_GE/main.lang +++ b/htdocs/langs/ka_GE/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Save and stay SaveAndNew=Save and new TestConnection=Test connection ToClone=Clone +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Choose data you want to clone: NoCloneOptionsSpecified=No data to clone defined. Of=of @@ -829,6 +830,8 @@ Gender=Gender Genderman=Man Genderwoman=Woman ViewList=List view +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Mandatory Hello=Hello GoodBye=GoodBye @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Select your graph options to build a graph Measures=Measures XAxis=X-Axis YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/ka_GE/modulebuilder.lang b/htdocs/langs/ka_GE/modulebuilder.lang index 00a8c0f9d32..135ac1ae9ec 100644 --- a/htdocs/langs/ka_GE/modulebuilder.lang +++ b/htdocs/langs/ka_GE/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=List of dictionaries entries ListOfPermissionsDefined=List of defined permissions SeeExamples=See examples here EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) -VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update). Using a negative value means field is not shown by default on list but can be selected for viewing). It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty DisplayOnPdf=Display on PDF IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) diff --git a/htdocs/langs/ka_GE/multicurrency.lang b/htdocs/langs/ka_GE/multicurrency.lang new file mode 100644 index 00000000000..bfcbd11fb7c --- /dev/null +++ b/htdocs/langs/ka_GE/multicurrency.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Multi currency +ErrorAddRateFail=Error in added rate +ErrorAddCurrencyFail=Error in added currency +ErrorDeleteCurrencyFail=Error delete fail +multicurrency_syncronize_error=Synchronization error: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Use the date of the document to find the currency rate, instead of using the latest known rate +multicurrency_useOriginTx=When an object is created from another, keep the original rate from the source object (otherwise use the latest known rate) +CurrencyLayerAccount=CurrencyLayer API +CurrencyLayerAccount_help_to_synchronize=You must create an account on website %s to use this functionality.
    Get your API key.
    If you use a free account, you can't change the source currency (USD by default).
    If your main currency is not USD, the application will automatically recalculate it.

    You are limited to 1000 synchronizations per month. +multicurrency_appId=API key +multicurrency_appCurrencySource=Source currency +multicurrency_alternateCurrencySource=Alternate source currency +CurrenciesUsed=Currencies used +CurrenciesUsed_help_to_add=Add the different currencies and rates you need to use on your proposals, orders etc. +rate=rate +MulticurrencyReceived=Received, original currency +MulticurrencyRemainderToTake=Remaining amount, original currency +MulticurrencyPaymentAmount=Payment amount, original currency +AmountToOthercurrency=Amount To (in currency of receiving account) +CurrencyRateSyncSucceed=Currency rate synchronization done successfuly +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Use the currency of the document for online payments diff --git a/htdocs/langs/ka_GE/other.lang b/htdocs/langs/ka_GE/other.lang index 00259d976bc..ba85f51e739 100644 --- a/htdocs/langs/ka_GE/other.lang +++ b/htdocs/langs/ka_GE/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Sales order validated Notify_ORDER_SENTBYMAIL=Sales order sent by mail Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=URL of page WEBSITE_TITLE=Title WEBSITE_DESCRIPTION=Description WEBSITE_IMAGE=Image -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Keywords LinesToImport=Lines to import diff --git a/htdocs/langs/ka_GE/products.lang b/htdocs/langs/ka_GE/products.lang index d8a3192551f..a31243a07b6 100644 --- a/htdocs/langs/ka_GE/products.lang +++ b/htdocs/langs/ka_GE/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL MassBarcodeInit=Mass barcode init MassBarcodeInitDesc=This page can be used to initialize a barcode on objects that does not have barcode defined. Check before that setup of module barcode is complete. ProductAccountancyBuyCode=Accounting code (purchase) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Accounting code (sale) ProductAccountancySellIntraCode=Accounting code (sale intra-Community) ProductAccountancySellExportCode=Accounting code (sale export) @@ -165,7 +167,7 @@ SuppliersPrices=Vendor prices SuppliersPricesOfProductsOrServices=Vendor prices (of products or services) CustomCode=Customs / Commodity / HS code CountryOrigin=Origin country -Nature=Nature of produt (material/finished) +Nature=Nature of product (material/finished) ShortLabel=Short label Unit=Unit p=u. diff --git a/htdocs/langs/ka_GE/projects.lang b/htdocs/langs/ka_GE/projects.lang index 94e440f9ab9..bb42bff3c87 100644 --- a/htdocs/langs/ka_GE/projects.lang +++ b/htdocs/langs/ka_GE/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=which I'm linked to project Time=Time ListOfTasks=List of tasks GoToListOfTimeConsumed=Go to list of time consumed -GoToListOfTasks=Show as list -GoToGanttView=show as Gantt GanttView=Gantt View ListProposalsAssociatedProject=List of the commercial proposals related to the project ListOrdersAssociatedProject=List of sales orders related to the project @@ -188,7 +186,7 @@ PlannedWorkload=Planned workload PlannedWorkloadShort=Workload ProjectReferers=Related items ProjectMustBeValidatedFirst=Project must be validated first -FirstAddRessourceToAllocateTime=Assign a user resource to task to allocate time +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=Input per day InputPerWeek=Input per week InputPerMonth=Input per month @@ -240,6 +238,7 @@ LatestModifiedProjects=Latest %s modified projects OtherFilteredTasks=Other filtered tasks NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=Allow user comments on tasks AllowCommentOnProject=Allow user comments on projects @@ -256,7 +255,7 @@ ServiceToUseOnLines=Service to use on lines InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. ProjectFollowOpportunity=Follow opportunity -ProjectFollowTasks=Follow tasks +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Usage: Opportunity UsageTasks=Usage: Tasks @@ -265,3 +264,4 @@ InvoiceToUse=Draft invoice to use NewInvoice=New invoice OneLinePerTask=One line per task OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/ka_GE/receiptprinter.lang b/htdocs/langs/ka_GE/receiptprinter.lang index 3df49b9fe67..896eaa313dd 100644 --- a/htdocs/langs/ka_GE/receiptprinter.lang +++ b/htdocs/langs/ka_GE/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Dummy Printer CONNECTOR_NETWORK_PRINT=Network Printer CONNECTOR_FILE_PRINT=Local Printer CONNECTOR_WINDOWS_PRINT=Local Windows Printer +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Fake Printer for test, does nothing CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Default Profile PROFILE_SIMPLE=Simple Profile PROFILE_EPOSTEP=Epos Tep Profile @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Invoice month in letters DOL_VALUE_MONTH=Invoice month DOL_VALUE_DAY=Invoice day DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Invoice ref +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=Capital +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/ka_GE/stripe.lang b/htdocs/langs/ka_GE/stripe.lang index eb77441d2cd..844762040af 100644 --- a/htdocs/langs/ka_GE/stripe.lang +++ b/htdocs/langs/ka_GE/stripe.lang @@ -32,6 +32,7 @@ VendorName=Name of vendor CSSUrlForPaymentForm=CSS style sheet url for payment form NewStripePaymentReceived=New Stripe payment received NewStripePaymentFailed=New Stripe payment tried but failed +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Secret test key STRIPE_TEST_PUBLISHABLE_KEY=Publishable test key STRIPE_TEST_WEBHOOK_KEY=Webhook test key @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mo 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... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authenticatin rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/ka_GE/users.lang b/htdocs/langs/ka_GE/users.lang index 43fa5342da3..aea4e7676e4 100644 --- a/htdocs/langs/ka_GE/users.lang +++ b/htdocs/langs/ka_GE/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Users and their properties DomainUser=Domain user %s Reactivate=Reactivate CreateInternalUserDesc=This form allows you to create an internal user in your company/organization. To create an external user (customer, vendor etc. ..), use the button 'Create Dolibarr User' from that third-party's contact card. -InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other.

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=Permission granted because inherited from one of a user's group. Inherited=Inherited UserWillBeInternalUser=Created user will be an internal user (because not linked to a particular third party) @@ -110,3 +110,8 @@ UserLogged=User logged DateEmployment=Employment Start Date DateEmploymentEnd=Employment End Date CantDisableYourself=You can't disable your own user record +ForceUserExpenseValidator=Force expense report validator +ForceUserHolidayValidator=Force leave request validator +ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/ka_GE/website.lang b/htdocs/langs/ka_GE/website.lang index 9e5c4ba3ff8..bce2a09fb03 100644 --- a/htdocs/langs/ka_GE/website.lang +++ b/htdocs/langs/ka_GE/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=View page in new tab SetAsHomePage=Set as Home page RealURL=Real URL ViewWebsiteInProduction=View web site using home URLs -SetHereVirtualHost=Use with Apache/NGinx/...
    If you can create, on your web server (Apache, Nginx, ...), a dedicated Virtual Host with PHP enabled and a Root directory on
    %s
    then set the name of the virtual host you have created in the properties of web site, so the preview can be done also using this dedicated web server access instead of the internal Dolibarr server. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS=Use with PHP embedded server
    On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running
    php -S 0.0.0.0:8080 -t %s YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org CheckVirtualHostPerms=Check also that virtual host has permission %s on files into
    %s @@ -56,7 +57,7 @@ NoPageYet=No pages yet YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template SyntaxHelp=Help on specific syntax tips YouCanEditHtmlSourceckeditor=You can edit HTML source code using the "Source" button in editor. -YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Clone page/container CloneSite=Clone site SiteAdded=Website added @@ -76,7 +77,7 @@ BlogPost=Blog post WebsiteAccount=Website account WebsiteAccounts=Website accounts AddWebsiteAccount=Create web site account -BackToListOfThirdParty=Back to list for Third Party +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Disable website first MyContainerTitle=My web site title AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Sorry, this website is currently off line. Please 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 -OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that edits of HTML source will be possible when page content has been initialized by grabbing it from an external page ("Online" editor will NOT be available) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Only edition of HTML source is possible when content was grabbed from an external site GrabImagesInto=Grab also images found into css and page. ImagesShouldBeSavedInto=Images should be saved into directory @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 ch MainLanguage=Main language OtherLanguages=Other languages UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/ka_GE/zapier.lang b/htdocs/langs/ka_GE/zapier.lang new file mode 100644 index 00000000000..6d6eda71313 --- /dev/null +++ b/htdocs/langs/ka_GE/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr module + +# +# Admin page +# +ZapierForDolibarrSetup = Setup of Zapier for Dolibarr diff --git a/htdocs/langs/km_KH/accountancy.lang b/htdocs/langs/km_KH/accountancy.lang new file mode 100644 index 00000000000..b8ce37a0956 --- /dev/null +++ b/htdocs/langs/km_KH/accountancy.lang @@ -0,0 +1,382 @@ +# Dolibarr language file - en_US - Accountancy (Double entries) +Accountancy=Accountancy +Accounting=Accounting +ACCOUNTING_EXPORT_SEPARATORCSV=Column separator for export file +ACCOUNTING_EXPORT_DATE=Date format for export file +ACCOUNTING_EXPORT_PIECE=Export the number of piece +ACCOUNTING_EXPORT_GLOBAL_ACCOUNT=Export with global account +ACCOUNTING_EXPORT_LABEL=Export label +ACCOUNTING_EXPORT_AMOUNT=Export amount +ACCOUNTING_EXPORT_DEVISE=Export currency +Selectformat=Select the format for the file +ACCOUNTING_EXPORT_FORMAT=Select the format for the file +ACCOUNTING_EXPORT_ENDLINE=Select the carriage return type +ACCOUNTING_EXPORT_PREFIX_SPEC=Specify the prefix for the file name +ThisService=This service +ThisProduct=This product +DefaultForService=Default for service +DefaultForProduct=Default for product +CantSuggest=Can't suggest +AccountancySetupDoneFromAccountancyMenu=Most setup of the accountancy is done from the menu %s +ConfigAccountingExpert=Configuration of the module accounting expert +Journalization=Journalization +Journaux=Journals +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 +OtherInfo=Other information +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 + +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 + +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... + +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 + +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. + +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. + +AccountancyAreaDescClosePeriod=STEP %s: Close period so we can't make modification in a future. + +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 +AccountAccountingShort=Account +SubledgerAccount=Subledger account +SubledgerAccountLabel=Subledger account label +ShowAccountingAccount=Show accounting account +ShowAccountingJournal=Show accounting journal +AccountAccountingSuggest=Accounting account suggested +MenuDefaultAccounts=Default accounts +MenuBankAccounts=Bank accounts +MenuVatAccounts=Vat accounts +MenuTaxAccounts=Tax accounts +MenuExpenseReportAccounts=Expense report accounts +MenuLoanAccounts=Loan accounts +MenuProductsAccounts=Product accounts +MenuClosureAccounts=Closure accounts +MenuAccountancyClosure=Closure +MenuAccountancyValidationMovements=Validate movements +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 +TotalForAccount=Total for accounting account + + +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 + +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_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=Length of the third-party accounting accounts (If you set value to 6 here, the account '401' will appear like '401000' on screen) +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_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_RESULT_PROFIT=Result accounting account (Profit) +ACCOUNTING_RESULT_LOSS=Result accounting account (Loss) +ACCOUNTING_CLOSURE_DEFAULT_JOURNAL=Journal of closure + +ACCOUNTING_ACCOUNT_TRANSFER_CASH=Accounting account of transitional bank transfer +TransitionalAccount=Transitional bank transfer account + +ACCOUNTING_ACCOUNT_SUSPENSE=Accounting account of wait +DONATION_ACCOUNTINGACCOUNT=Accounting account to register donations +ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions + +ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (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 products sold in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported 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_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (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_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) + +Doctype=Type of document +Docdate=Date +Docref=Reference +LabelAccount=Label account +LabelOperation=Label operation +Sens=Sens +LetteringCode=Lettering code +Lettering=Lettering +Codejournal=Journal +JournalLabel=Journal label +NumPiece=Piece number +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=By year +NotMatch=Not Set +DeleteMvt=Delete Ledger lines +DelMonth=Month to delete +DelYear=Year to delete +DelJournal=Journal to delete +ConfirmDeleteMvt=This will delete all lines of the Ledger for the year/month and/or from a specific journal (At least one criterion is required). You will have to reuse the feature 'Registration in accounting' to have the deleted record back in the ledger. +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=Third-party account +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=List third-party account +DescThirdPartyReport=Consult here the list of third-party customers and vendors and their accounting accounts +ListAccounts=List of the accounting accounts +UnknownAccountForThirdparty=Unknown third-party account. We will use %s +UnknownAccountForThirdpartyBlocking=Unknown third-party account. Blocking error +ThirdpartyAccountNotDefinedOrThirdPartyUnknown=Third-party account not defined or third party unknown. We will use %s +ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unknown and subledger not defined on the payment. We will keep the subledger account value empty. +ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. +UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error +PaymentsNotLinkedToProduct=Payment not linked to any product / service +OpeningBalance=Opening balance +ShowOpeningBalance=Show opening balance +HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group + +Pcgtype=Group of account +PcgtypeDesc=Group 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. + +Reconcilable=Reconcilable + +TotalVente=Total turnover before tax +TotalMarge=Total sales margin + +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: +Vide=- +DescVentilSupplier=Consult here the list of vendor invoice lines bound or not yet bound to a product accounting account (only record not already transfered in accountancy are visible) +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 + +DescClosure=Consult here the number of movements by month who are not validated & fiscal years already open +OverviewOfMovementsNotValidated=Step 1/ Overview of movements not validated. (Necessary to close a fiscal year) +ValidateMovements=Validate movements +DescValidateMovements=Any modification or deletion of writing, lettering and deletes will be prohibited. All entries for an exercise must be validated otherwise closing will not be possible +SelectMonthAndValidate=Select month and validate movements + +ValidateHistory=Bind Automatically +AutomaticBindingDone=Automatic binding done + +ErrorAccountancyCodeIsAlreadyUse=Error, you cannot delete this accounting account because it is used +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 +ShowTutorial=Show Tutorial +NotReconciled=Not reconciled + +## Admin +ApplyMassCategories=Apply mass categories +AddAccountFromBookKeepingWithNoCategories=Available account not yet in the personalized group +CategoryDeleted=Category for the accounting account has been removed +AccountingJournals=Accounting journals +AccountingJournal=Accounting journal +NewAccountingJournal=New accounting journal +ShowAccountingJournal=Show accounting journal +NatureOfJournal=Nature of Journal +AccountingJournalType1=Miscellaneous operations +AccountingJournalType2=Sales +AccountingJournalType3=Purchases +AccountingJournalType4=Bank +AccountingJournalType5=Expenses report +AccountingJournalType8=Inventory +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 + +## 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) +Modelcsv_openconcerto=Export for OpenConcerto (Test) +Modelcsv_configurable=Export CSV Configurable +Modelcsv_FEC=Export FEC +Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta +ChartofaccountsId=Chart of accounts Id + +## 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 used for accounting closures. +Options=Options +OptionModeProductSell=Mode sales +OptionModeProductSellIntra=Mode sales exported in EEC +OptionModeProductSellExport=Mode sales exported in other countries +OptionModeProductBuy=Mode purchases +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries +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. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign 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 +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. + +## Dictionary +Range=Range of accounting account +Calculated=Calculated +Formula=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 + +## 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 diff --git a/htdocs/langs/km_KH/admin.lang b/htdocs/langs/km_KH/admin.lang new file mode 100644 index 00000000000..7eb67d7a4ab --- /dev/null +++ b/htdocs/langs/km_KH/admin.lang @@ -0,0 +1,2002 @@ +# Dolibarr language file - Source file is en_US - admin +Foundation=Foundation +Version=Version +Publisher=Publisher +VersionProgram=Version program +VersionLastInstall=Initial install version +VersionLastUpgrade=Latest version upgrade +VersionExperimental=Experimental +VersionDevelopment=Development +VersionUnknown=Unknown +VersionRecommanded=Recommended +FileCheck=Fileset Integrity Checks +FileCheckDesc=This tool allows you to check the integrity of files and the setup of your application, comparing each file with the official one. The value of some setup constants may also be checked. You can use this tool to determine if any files have been modified (e.g by a hacker). +FileIntegrityIsStrictlyConformedWithReference=Files integrity is strictly conformed with the reference. +FileIntegrityIsOkButFilesWereAdded=Files integrity check has passed, however some new files have been added. +FileIntegritySomeFilesWereRemovedOrModified=Files integrity check has failed. Some files were modified, removed or added. +GlobalChecksum=Global checksum +MakeIntegrityAnalysisFrom=Make integrity analysis of application files from +LocalSignature=Embedded local signature (less reliable) +RemoteSignature=Remote distant signature (more reliable) +FilesMissing=Missing Files +FilesUpdated=Updated Files +FilesModified=Modified Files +FilesAdded=Added Files +FileCheckDolibarr=Check integrity of application files +AvailableOnlyOnPackagedVersions=The local file for integrity checking is only available when the application is installed from an official package +XmlNotFound=Xml Integrity File of application not found +SessionId=Session ID +SessionSaveHandler=Handler to save sessions +SessionSavePath=Session save location +PurgeSessions=Purge of sessions +ConfirmPurgeSessions=Do you really want to purge all sessions? This will disconnect every user (except yourself). +NoSessionListWithThisHandler=Save session handler configured in your PHP does not allow listing all running sessions. +LockNewSessions=Lock new connections +ConfirmLockNewSessions=Are you sure you want to restrict any new Dolibarr connection to yourself? Only user %s will be able to connect after that. +UnlockNewSessions=Remove connection lock +YourSession=Your session +Sessions=Users Sessions +WebUserGroup=Web server user/group +NoSessionFound=Your PHP configuration seems to not allow listing of active sessions. The directory used to save sessions (%s) may be protected (for example by OS permissions or by PHP directive open_basedir). +DBStoringCharset=Database charset to store data +DBSortingCharset=Database charset to sort data +HostCharset=Host charset +ClientCharset=Client charset +ClientSortingCharset=Client collation +WarningModuleNotActive=Module %s must be enabled +WarningOnlyPermissionOfActivatedModules=Only permissions related to activated modules are shown here. You can activate other modules in the Home->Setup->Modules page. +DolibarrSetup=Dolibarr install or upgrade +InternalUser=Internal user +ExternalUser=External user +InternalUsers=Internal users +ExternalUsers=External users +GUISetup=Display +SetupArea=Setup +UploadNewTemplate=Upload new template(s) +FormToTestFileUploadForm=Form to test file upload (according to setup) +IfModuleEnabled=Note: yes is effective only if module %s is enabled +RemoveLock=Remove/rename file %s if it exists, to allow usage of the Update/Install tool. +RestoreLock=Restore file %s, with read permission only, to disable any further use of the Update/Install tool. +SecuritySetup=Security setup +SecurityFilesDesc=Define here options related to security about uploading files. +ErrorModuleRequirePHPVersion=Error, this module requires PHP version %s or higher +ErrorModuleRequireDolibarrVersion=Error, this module requires Dolibarr version %s or higher +ErrorDecimalLargerThanAreForbidden=Error, a precision higher than %s is not supported. +DictionarySetup=Dictionary setup +Dictionary=Dictionaries +ErrorReservedTypeSystemSystemAuto=Value 'system' and 'systemauto' for type is reserved. You can use 'user' as value to add your own record +ErrorCodeCantContainZero=Code can't contain value 0 +DisableJavascript=Disable JavaScript and Ajax functions +DisableJavascriptNote=Note: For test or debug purpose. For optimization for blind person or text browsers, you may prefer to use the setup on the profile of user +UseSearchToSelectCompanyTooltip=Also if you have a large number of third parties (> 100 000), you can increase speed by setting constant COMPANY_DONOTSEARCH_ANYWHERE to 1 in Setup->Other. Search will then be limited to start of string. +UseSearchToSelectContactTooltip=Also if you have a large number of third parties (> 100 000), you can increase speed by setting constant CONTACT_DONOTSEARCH_ANYWHERE to 1 in Setup->Other. Search will then be limited to start of string. +DelaiedFullListToSelectCompany=Wait until a key is pressed before loading content of Third Parties combo list.
    This may increase performance if you have a large number of third parties, but it is less convenient. +DelaiedFullListToSelectContact=Wait until a key is pressed before loading content of Contact combo list.
    This may increase performance if you have a large number of contacts, but it is less convenient) +NumberOfKeyToSearch=Number of characters to trigger search: %s +NumberOfBytes=Number of Bytes +SearchString=Search string +NotAvailableWhenAjaxDisabled=Not available when Ajax disabled +AllowToSelectProjectFromOtherCompany=On document of a third party, can choose a project linked to another third party +JavascriptDisabled=JavaScript disabled +UsePreviewTabs=Use preview tabs +ShowPreview=Show preview +PreviewNotAvailable=Preview not available +ThemeCurrentlyActive=Theme currently active +CurrentTimeZone=TimeZone PHP (server) +MySQLTimeZone=TimeZone MySql (database) +TZHasNoEffect=Dates are stored and returned by database server as if they were kept as submitted string. The timezone has effect only when using the UNIX_TIMESTAMP function (that should not be used by Dolibarr, so database TZ should have no effect, even if changed after data was entered). +Space=Space +Table=Table +Fields=Fields +Index=Index +Mask=Mask +NextValue=Next value +NextValueForInvoices=Next value (invoices) +NextValueForCreditNotes=Next value (credit notes) +NextValueForDeposit=Next value (down payment) +NextValueForReplacements=Next value (replacements) +MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the maximum filesize for upload to %s %s, irrespective of the value of this parameter +NoMaxSizeByPHPLimit=Note: No limit is set in your PHP configuration +MaxSizeForUploadedFiles=Maximum size for uploaded files (0 to disallow any upload) +UseCaptchaCode=Use graphical code (CAPTCHA) on login page +AntiVirusCommand=Full path to antivirus command +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe +AntiVirusParam= More parameters on command line +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" +ComptaSetup=Accounting module setup +UserSetup=User management setup +MultiCurrencySetup=Multi-currency setup +MenuLimits=Limits and accuracy +MenuIdParent=Parent menu ID +DetailMenuIdParent=ID of parent menu (empty for a top menu) +DetailPosition=Sort number to define menu position +AllMenus=All +NotConfigured=Module/Application not configured +Active=Active +SetupShort=Setup +OtherOptions=Other options +OtherSetup=Other Setup +CurrentValueSeparatorDecimal=Decimal separator +CurrentValueSeparatorThousand=Thousand separator +Destination=Destination +IdModule=Module ID +IdPermissions=Permissions ID +LanguageBrowserParameter=Parameter %s +LocalisationDolibarrParameters=Localization parameters +ClientTZ=Client Time Zone (user) +ClientHour=Client time (user) +OSTZ=Server OS Time Zone +PHPTZ=PHP server Time Zone +DaylingSavingTime=Daylight saving time +CurrentHour=PHP Time (server) +CurrentSessionTimeOut=Current session timeout +YouCanEditPHPTZ=To set a different PHP timezone (not required), you can try to add a .htaccess file with a line like this "SetEnv TZ Europe/Paris" +HoursOnThisPageAreOnServerTZ=Warning, in contrary of other screens, hours on this page are not in your local timezone, but of the timezone of the server. +Box=Widget +Boxes=Widgets +MaxNbOfLinesForBoxes=Max. number of lines for widgets +AllWidgetsWereEnabled=All available widgets are enabled +PositionByDefault=Default order +Position=Position +MenusDesc=Menu managers set content of the two menu bars (horizontal and vertical). +MenusEditorDesc=The menu editor allows you to define custom menu entries. Use it carefully to avoid instability and permanently unreachable menu entries.
    Some modules add menu entries (in menu All mostly). If you remove some of these entries by mistake, you can restore them disabling and reenabling the module. +MenuForUsers=Menu for users +LangFile=.lang file +Language_en_US_es_MX_etc=Language (en_US, es_MX, ...) +System=System +SystemInfo=System information +SystemToolsArea=System tools area +SystemToolsAreaDesc=This area provides administration functions. Use the menu to choose the required feature. +Purge=Purge +PurgeAreaDesc=This page allows you to delete all files generated or stored by Dolibarr (temporary files or all files in %s directory). Using this feature is not normally necessary. It is provided as a workaround for users whose Dolibarr is hosted by a provider that does not offer permissions to delete files generated by the web server. +PurgeDeleteLogFile=Delete log files, including %s defined for Syslog module (no risk of losing data) +PurgeDeleteTemporaryFiles=Delete all temporary files (no risk of losing data). Note: Deletion is done only if the temp directory was created 24 hours ago. +PurgeDeleteTemporaryFilesShort=Delete temporary files +PurgeDeleteAllFilesInDocumentsDir=Delete all files in directory: %s.
    This will delete all generated documents related to elements (third parties, invoices etc...), files uploaded into the ECM module, database backup dumps and temporary files. +PurgeRunNow=Purge now +PurgeNothingToDelete=No directory or files to delete. +PurgeNDirectoriesDeleted=%s files or directories deleted. +PurgeNDirectoriesFailed=Failed to delete %s files or directories. +PurgeAuditEvents=Purge all security events +ConfirmPurgeAuditEvents=Are you sure you want to purge all security events? All security logs will be deleted, no other data will be removed. +GenerateBackup=Generate backup +Backup=Backup +Restore=Restore +RunCommandSummary=Backup has been launched with the following command +BackupResult=Backup result +BackupFileSuccessfullyCreated=Backup file successfully generated +YouCanDownloadBackupFile=The generated file can now be downloaded +NoBackupFileAvailable=No backup files available. +ExportMethod=Export method +ImportMethod=Import method +ToBuildBackupFileClickHere=To build a backup file, click here. +ImportMySqlDesc=To import a MySQL backup file, you may use phpMyAdmin via your hosting or use the mysql command from the Command line.
    For example: +ImportPostgreSqlDesc=To import a backup file, you must use pg_restore command from command line: +ImportMySqlCommand=%s %s < mybackupfile.sql +ImportPostgreSqlCommand=%s %s mybackupfile.sql +FileNameToGenerate=Filename for backup: +Compression=Compression +CommandsToDisableForeignKeysForImport=Command to disable foreign keys on import +CommandsToDisableForeignKeysForImportWarning=Mandatory if you want to be able to restore your sql dump later +ExportCompatibility=Compatibility of generated export file +ExportUseMySQLQuickParameter=Use the --quick parameter +ExportUseMySQLQuickParameterHelp=The '--quick' parameter helps limit RAM consumption for large tables. +MySqlExportParameters=MySQL export parameters +PostgreSqlExportParameters= PostgreSQL export parameters +UseTransactionnalMode=Use transactional mode +FullPathToMysqldumpCommand=Full path to mysqldump command +FullPathToPostgreSQLdumpCommand=Full path to pg_dump command +AddDropDatabase=Add DROP DATABASE command +AddDropTable=Add DROP TABLE command +ExportStructure=Structure +NameColumn=Name columns +ExtendedInsert=Extended INSERT +NoLockBeforeInsert=No lock commands around INSERT +DelayedInsert=Delayed insert +EncodeBinariesInHexa=Encode binary data in hexadecimal +IgnoreDuplicateRecords=Ignore errors of duplicate record (INSERT IGNORE) +AutoDetectLang=Autodetect (browser language) +FeatureDisabledInDemo=Feature disabled in demo +FeatureAvailableOnlyOnStable=Feature only available on official stable versions +BoxesDesc=Widgets are components showing some information that you can add to personalize some pages. You can choose between showing the widget or not by selecting target page and clicking 'Activate', or by clicking the trashcan to disable it. +OnlyActiveElementsAreShown=Only elements from enabled modules are shown. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. +ModulesMarketPlaceDesc=You can find more modules to download on external websites on the Internet... +ModulesDeployDesc=If permissions on your file system allow it, you can use this tool to deploy an external module. The module will then be visible on the tab %s. +ModulesMarketPlaces=Find external app/modules +ModulesDevelopYourModule=Develop your own app/modules +ModulesDevelopDesc=You may also develop your own module or find a partner to develop one for you. +DOLISTOREdescriptionLong=Instead of switching on www.dolistore.com web site to find an external module, you can use this embedded tool that will perform the search on the external market place for you (may be slow, need an internet access)... +NewModule=New +FreeModule=Free +CompatibleUpTo=Compatible with version %s +NotCompatible=This module does not seem compatible with your Dolibarr %s (Min %s - Max %s). +CompatibleAfterUpdate=This module requires an update to your Dolibarr %s (Min %s - Max %s). +SeeInMarkerPlace=See in Market place +SeeSetupOfModule=See setup of module %s +Updated=Updated +Nouveauté=Novelty +AchatTelechargement=Buy / Download +GoModuleSetupArea=To deploy/install a new module, go to the Module setup area: %s. +DoliStoreDesc=DoliStore, the official market place for Dolibarr ERP/CRM external modules +DoliPartnersDesc=List of companies providing custom-developed modules or features.
    Note: since Dolibarr is an open source application, anyone experienced in PHP programming may develop a module. +WebSiteDesc=External websites for more add-on (non-core) modules... +DevelopYourModuleDesc=Some solutions to develop your own module... +URL=URL +RelativeURL=Relative URL +BoxesAvailable=Widgets available +BoxesActivated=Widgets activated +ActivateOn=Activate on +ActiveOn=Activated on +SourceFile=Source file +AvailableOnlyIfJavascriptAndAjaxNotDisabled=Available only if JavaScript is not disabled +Required=Required +UsedOnlyWithTypeOption=Used by some agenda option only +Security=Security +Passwords=Passwords +DoNotStoreClearPassword=Encrypt passwords stored in database (NOT as plain-text). It is strongly recommended to activate this option. +MainDbPasswordFileConfEncrypted=Encrypt database password stored in conf.php. It is strongly recommended to activate this option. +InstrucToEncodePass=To have password encoded into the conf.php file, replace the line
    $dolibarr_main_db_pass="...";
    by
    $dolibarr_main_db_pass="crypted:%s"; +InstrucToClearPass=To have password decoded (clear) into the conf.php file, replace the line
    $dolibarr_main_db_pass="crypted:...";
    by
    $dolibarr_main_db_pass="%s"; +ProtectAndEncryptPdfFiles=Protect generated PDF files. This is NOT recommended as it breaks bulk PDF generation. +ProtectAndEncryptPdfFilesDesc=Protection of a PDF document keeps it available to read and print with any PDF browser. However, editing and copying is not possible anymore. Note that using this feature makes building of a global merged PDFs not working. +Feature=Feature +DolibarrLicense=License +Developpers=Developers/contributors +OfficialWebSite=Dolibarr official web site +OfficialWebSiteLocal=Local web site (%s) +OfficialWiki=Dolibarr documentation / Wiki +OfficialDemo=Dolibarr online demo +OfficialMarketPlace=Official market place for external modules/addons +OfficialWebHostingService=Referenced web hosting services (Cloud hosting) +ReferencedPreferredPartners=Preferred Partners +OtherResources=Other resources +ExternalResources=External Resources +SocialNetworks=Social Networks +ForDocumentationSeeWiki=For user or developer documentation (Doc, FAQs...),
    take a look at the Dolibarr Wiki:
    %s +ForAnswersSeeForum=For any other questions/help, you can use the Dolibarr forum:
    %s +HelpCenterDesc1=Here are some resources for getting help and support with Dolibarr. +HelpCenterDesc2=Some of these resources are only available in english. +CurrentMenuHandler=Current menu handler +MeasuringUnit=Measuring unit +LeftMargin=Left margin +TopMargin=Top margin +PaperSize=Paper type +Orientation=Orientation +SpaceX=Space X +SpaceY=Space Y +FontSize=Font size +Content=Content +NoticePeriod=Notice period +NewByMonth=New by month +Emails=Emails +EMailsSetup=Emails setup +EMailsDesc=This page allows you to override your default PHP parameters for email sending. In most cases on Unix/Linux OS, the PHP setup is correct and these parameters are unnecessary. +EmailSenderProfiles=Emails sender profiles +EMailsSenderProfileDesc=You can keep this section empty. If you enter some emails here, they will be added to the list of possible senders into the combobox when your write a new email. +MAIN_MAIL_SMTP_PORT=SMTP/SMTPS Port (default value in php.ini: %s) +MAIN_MAIL_SMTP_SERVER=SMTP/SMTPS Host (default value in php.ini: %s) +MAIN_MAIL_SMTP_PORT_NotAvailableOnLinuxLike=SMTP/SMTPS Port (Not defined into PHP on Unix-like systems) +MAIN_MAIL_SMTP_SERVER_NotAvailableOnLinuxLike=SMTP/SMTPS Host (Not defined into PHP on Unix-like systems) +MAIN_MAIL_EMAIL_FROM=Sender email for automatic emails (default value in php.ini: %s) +MAIN_MAIL_ERRORS_TO=Email used for error returns emails (fields 'Errors-To' in emails sent) +MAIN_MAIL_AUTOCOPY_TO= Copy (Bcc) all sent emails to +MAIN_DISABLE_ALL_MAILS=Disable all email sending (for test purposes or demos) +MAIN_MAIL_FORCE_SENDTO=Send all emails to (instead of real recipients, for test purposes) +MAIN_MAIL_ENABLED_USER_DEST_SELECT=Suggest emails of employees (if defined) into the list of predefined recipient when writing a new email +MAIN_MAIL_SENDMODE=Email sending method +MAIN_MAIL_SMTPS_ID=SMTP ID (if sending server requires authentication) +MAIN_MAIL_SMTPS_PW=SMTP Password (if sending server requires authentication) +MAIN_MAIL_EMAIL_TLS=Use TLS (SSL) encryption +MAIN_MAIL_EMAIL_STARTTLS=Use TLS (STARTTLS) encryption +MAIN_MAIL_EMAIL_DKIM_ENABLED=Use DKIM to generate email signature +MAIN_MAIL_EMAIL_DKIM_DOMAIN=Email Domain for use with dkim +MAIN_MAIL_EMAIL_DKIM_SELECTOR=Name of dkim selector +MAIN_MAIL_EMAIL_DKIM_PRIVATE_KEY=Private key for dkim signing +MAIN_DISABLE_ALL_SMS=Disable all SMS sending (for test purposes or demos) +MAIN_SMS_SENDMODE=Method to use to send SMS +MAIN_MAIL_SMS_FROM=Default sender phone number for SMS sending +MAIN_MAIL_DEFAULT_FROMTYPE=Default sender email for manual sending (User email or Company email) +UserEmail=User email +CompanyEmail=Company Email +FeatureNotAvailableOnLinux=Feature not available on Unix like systems. Test your sendmail program locally. +SubmitTranslation=If the translation for this language is not complete or you find errors, you can correct this by editing files in directory langs/%s and submit your change to www.transifex.com/dolibarr-association/dolibarr/ +SubmitTranslationENUS=If translation for this language is not complete or you find errors, you can correct this by editing files into directory langs/%s and submit modified files on dolibarr.org/forum or for developers on github.com/Dolibarr/dolibarr. +ModuleSetup=Module setup +ModulesSetup=Modules/Application setup +ModuleFamilyBase=System +ModuleFamilyCrm=Customer Relationship Management (CRM) +ModuleFamilySrm=Vendor Relationship Management (VRM) +ModuleFamilyProducts=Product Management (PM) +ModuleFamilyHr=Human Resource Management (HR) +ModuleFamilyProjects=Projects/Collaborative work +ModuleFamilyOther=Other +ModuleFamilyTechnic=Multi-modules tools +ModuleFamilyExperimental=Experimental modules +ModuleFamilyFinancial=Financial Modules (Accounting/Treasury) +ModuleFamilyECM=Electronic Content Management (ECM) +ModuleFamilyPortal=Websites and other frontal application +ModuleFamilyInterface=Interfaces with external systems +MenuHandlers=Menu handlers +MenuAdmin=Menu editor +DoNotUseInProduction=Do not use in production +ThisIsProcessToFollow=Upgrade procedure: +ThisIsAlternativeProcessToFollow=This is an alternative setup to process manually: +StepNb=Step %s +FindPackageFromWebSite=Find a package that provides the features you need (for example on the official web site %s). +DownloadPackageFromWebSite=Download package (for example from the official web site %s). +UnpackPackageInDolibarrRoot=Unpack/unzip the packaged files into your Dolibarr server directory: %s +UnpackPackageInModulesRoot=To deploy/install an external module, unpack/unzip the packaged files into the server directory dedicated to external modules:
    %s +SetupIsReadyForUse=Module deployment is finished. You must however enable and setup the module in your application by going to the page setup modules: %s. +NotExistsDirect=The alternative root directory is not defined to an existing directory.
    +InfDirAlt=Since version 3, it is possible to define an alternative root directory. This allows you to store, into a dedicated directory, plug-ins and custom templates.
    Just create a directory at the root of Dolibarr (eg: custom).
    +InfDirExample=
    Then declare it in the file conf.php
    $dolibarr_main_url_root_alt='/custom'
    $dolibarr_main_document_root_alt='/path/of/dolibarr/htdocs/custom'
    If these lines are commented with "#", to enable them, just uncomment by removing the "#" character. +YouCanSubmitFile=You can upload the .zip file of module package from here: +CurrentVersion=Dolibarr current version +CallUpdatePage=Browse to the page that updates the database structure and data: %s. +LastStableVersion=Latest stable version +LastActivationDate=Latest activation date +LastActivationAuthor=Latest activation author +LastActivationIP=Latest activation IP +UpdateServerOffline=Update server offline +WithCounter=Manage a counter +GenericMaskCodes=You may enter any numbering mask. In this mask, the following tags could be used:
    {000000} corresponds to a number which will be incremented on each %s. Enter as many zeros as the desired length of the counter. The counter will be completed by zeros from the left in order to have as many zeros as the mask.
    {000000+000} same as previous but an offset corresponding to the number to the right of the + sign is applied starting on first %s.
    {000000@x} same as previous but the counter is reset to zero when month x is reached (x between 1 and 12, or 0 to use the early months of fiscal year defined in your configuration, or 99 to reset to zero every month). If this option is used and x is 2 or higher, then sequence {yy}{mm} or {yyyy}{mm} is also required.
    {dd} day (01 to 31).
    {mm} month (01 to 12).
    {yy}, {yyyy} or {y} year over 2, 4 or 1 numbers.
    +GenericMaskCodes2={cccc} the client code on n characters
    {cccc000} the client code on n characters is followed by a counter dedicated for customer. This counter dedicated to customer is reset at same time than global counter.
    {tttt} The code of third party type on n characters (see menu Home - Setup - Dictionary - Types of third parties). If you add this tag, the counter will be different for each type of third party.
    +GenericMaskCodes3=All other characters in the mask will remain intact.
    Spaces are not allowed.
    +GenericMaskCodes4a=Example on the 99th %s of the third party TheCompany, with date 2007-01-31:
    +GenericMaskCodes4b=Example on third party created on 2007-03-01:
    +GenericMaskCodes4c=Example on product created on 2007-03-01:
    +GenericMaskCodes5=ABC{yy}{mm}-{000000} will give ABC0701-000099
    {0000+100@1}-ZZZ/{dd}/XXX will give 0199-ZZZ/31/XXX
    IN{yy}{mm}-{0000}-{t} will give IN0701-0099-A if the type of company is 'Responsable Inscripto' with code for type that is 'A_RI' +GenericNumRefModelDesc=Returns a customizable number according to a defined mask. +ServerAvailableOnIPOrPort=Server is available at address %s on port %s +ServerNotAvailableOnIPOrPort=Server is not available at address %s on port %s +DoTestServerAvailability=Test server connectivity +DoTestSend=Test sending +DoTestSendHTML=Test sending HTML +ErrorCantUseRazIfNoYearInMask=Error, can't use option @ to reset counter each year if sequence {yy} or {yyyy} is not in mask. +ErrorCantUseRazInStartedYearIfNoYearMonthInMask=Error, can't use option @ if sequence {yy}{mm} or {yyyy}{mm} is not in mask. +UMask=UMask parameter for new files on Unix/Linux/BSD/Mac file system. +UMaskExplanation=This parameter allow you to define permissions set by default on files created by Dolibarr on server (during upload for example).
    It must be the octal value (for example, 0666 means read and write for everyone).
    This parameter is useless on a Windows server. +SeeWikiForAllTeam=Take a look at the Wiki page for a list of contributors and their organization +UseACacheDelay= Delay for caching export response in seconds (0 or empty for no cache) +DisableLinkToHelpCenter=Hide link "Need help or support" on login page +DisableLinkToHelp=Hide link to online help "%s" +AddCRIfTooLong=There is no automatic text wrapping, text that is too long will not display on documents. Please add carriage returns in the text area if needed. +ConfirmPurge=Are you sure you want to execute this purge?
    This will permanently delete all your data files with no way to restore them (ECM files, attached files...). +MinLength=Minimum length +LanguageFilesCachedIntoShmopSharedMemory=Files .lang loaded in shared memory +LanguageFile=Language file +ExamplesWithCurrentSetup=Examples with current configuration +ListOfDirectories=List of OpenDocument templates directories +ListOfDirectoriesForModelGenODT=List of directories containing templates files with OpenDocument format.

    Put here full path of directories.
    Add a carriage return between eah 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. +NumberOfModelFilesFound=Number of ODT/ODS template files found in these directories +ExampleOfDirectoriesForModelGen=Examples of syntax:
    c:\\mydir
    /home/mydir
    DOL_DATA_ROOT/ecm/ecmdir +FollowingSubstitutionKeysCanBeUsed=
    To know how to create your odt document templates, before storing them in those directories, read wiki documentation: +FullListOnOnlineDocumentation=http://wiki.dolibarr.org/index.php/Create_an_ODT_document_template +FirstnameNamePosition=Position of Name/Lastname +DescWeather=The following images will be shown on the dashboard when the number of late actions reach the following values: +KeyForWebServicesAccess=Key to use Web Services (parameter "dolibarrkey" in webservices) +TestSubmitForm=Input test form +ThisForceAlsoTheme=Using this menu manager will also use its own theme whatever the user choice. Also this menu manager specialized for smartphones does not work on all smartphone. Use another menu manager if you experience problems with yours. +ThemeDir=Skins directory +ConnectionTimeout=Connection timeout +ResponseTimeout=Response timeout +SmsTestMessage=Test message from __PHONEFROM__ to __PHONETO__ +ModuleMustBeEnabledFirst=Module %s must be enabled first if you need this feature. +SecurityToken=Key to secure URLs +NoSmsEngine=No SMS sender manager available. A SMS sender manager is not installed with the default distribution because they depend on an external vendor, but you can find some on %s +PDF=PDF +PDFDesc=Global options for PDF generation. +PDFAddressForging=Rules for address boxes +HideAnyVATInformationOnPDF=Hide all information related to Sales Tax / VAT +PDFRulesForSalesTax=Rules for Sales Tax / VAT +PDFLocaltax=Rules for %s +HideLocalTaxOnPDF=Hide %s rate in column Tax Sale +HideDescOnPDF=Hide products description +HideRefOnPDF=Hide products ref. +HideDetailsOnPDF=Hide product lines details +PlaceCustomerAddressToIsoLocation=Use french standard position (La Poste) for customer address position +Library=Library +UrlGenerationParameters=Parameters to secure URLs +SecurityTokenIsUnique=Use a unique securekey parameter for each URL +EnterRefToBuildUrl=Enter reference for object %s +GetSecuredUrl=Get calculated URL +ButtonHideUnauthorized=Hide buttons for non-admin users for unauthorized actions instead of showing greyed disabled buttons +OldVATRates=Old VAT rate +NewVATRates=New VAT rate +PriceBaseTypeToChange=Modify on prices with base reference value defined on +MassConvert=Launch bulk conversion +PriceFormatInCurrentLanguage=Price Format In Current Language +String=String +TextLong=Long text +HtmlText=Html text +Int=Integer +Float=Float +DateAndTime=Date and hour +Unique=Unique +Boolean=Boolean (one checkbox) +ExtrafieldPhone = Phone +ExtrafieldPrice = Price +ExtrafieldMail = Email +ExtrafieldUrl = Url +ExtrafieldSelect = Select list +ExtrafieldSelectList = Select from table +ExtrafieldSeparator=Separator (not a field) +ExtrafieldPassword=Password +ExtrafieldRadio=Radio buttons (one choice only) +ExtrafieldCheckBox=Checkboxes +ExtrafieldCheckBoxFromList=Checkboxes from table +ExtrafieldLink=Link to an object +ComputedFormula=Computed field +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +Computedpersistent=Store computed field +ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! +ExtrafieldParamHelpPassword=Leaving this field blank means this value will be stored without encryption (field must be only hidden with star on screen).
    Set 'auto' to use the default encryption rule to save password into database (then value read will be the hash only, no way to retrieve original value) +ExtrafieldParamHelpselect=List of values must be lines with format key,value (where key can't be '0')

    for example:
    1,value1
    2,value2
    code3,value3
    ...

    In order to have the list depending on another complementary attribute list:
    1,value1|options_parent_list_code:parent_key
    2,value2|options_parent_list_code:parent_key

    In order to have the list depending on another list:
    1,value1|parent_list_code:parent_key
    2,value2|parent_list_code:parent_key +ExtrafieldParamHelpcheckbox=List of values must be lines with format key,value (where key can't be '0')

    for example:
    1,value1
    2,value2
    3,value3
    ... +ExtrafieldParamHelpradio=List of values must be lines with format key,value (where key can't be '0')

    for example:
    1,value1
    2,value2
    3,value3
    ... +ExtrafieldParamHelpsellist=List of values comes from a table
    Syntax: table_name:label_field:id_field::filter
    Example: c_typent:libelle:id::filter

    - idfilter is necessarly a primary int key
    - filter can be a simple test (eg active=1) to display only active value
    You can also use $ID$ in filter witch is the current id of current object
    To do a SELECT in filter use $SEL$
    if you want to filter on extrafields use syntax extra.fieldcode=... (where field code is the code of extrafield)

    In order to have the list depending on another complementary attribute list:
    c_typent:libelle:id:options_parent_list_code|parent_column:filter

    In order to have the list depending on another list:
    c_typent:libelle:id:parent_list_code|parent_column:filter +ExtrafieldParamHelpchkbxlst=List of values comes from a table
    Syntax: table_name:label_field:id_field::filter
    Example: c_typent:libelle:id::filter

    filter can be a simple test (eg active=1) to display only active value
    You can also use $ID$ in filter witch is the current id of current object
    To do a SELECT in filter use $SEL$
    if you want to filter on extrafields use syntax extra.fieldcode=... (where field code is the code of extrafield)

    In order to have the list depending on another complementary attribute list:
    c_typent:libelle:id:options_parent_list_code|parent_column:filter

    In order to have the list depending on another list:
    c_typent:libelle:id:parent_list_code|parent_column:filter +ExtrafieldParamHelplink=Parameters must be ObjectName:Classpath
    Syntax: ObjectName:Classpath
    Examples:
    Societe:societe/class/societe.class.php
    Contact:contact/class/contact.class.php +ExtrafieldParamHelpSeparator=Keep empty for a simple separator
    Set this to 1 for a collapsing separator (open by default for new session, then status is kept for each user session)
    Set this to 2 for a collapsing separator (collapsed by default for new session, then status is kept fore each user session) +LibraryToBuildPDF=Library used for PDF generation +LocalTaxDesc=Some countries may apply two or three taxes on each invoice line. If this is the case, choose the type for the second and third tax and its rate. Possible type are:
    1: local tax apply on products and services without vat (localtax is calculated on amount without tax)
    2: local tax apply on products and services including vat (localtax is calculated on amount + main tax)
    3: local tax apply on products without vat (localtax is calculated on amount without tax)
    4: local tax apply on products including vat (localtax is calculated on amount + main vat)
    5: local tax apply on services without vat (localtax is calculated on amount without tax)
    6: local tax apply on services including vat (localtax is calculated on amount + tax) +SMS=SMS +LinkToTestClickToDial=Enter a phone number to call to show a link to test the ClickToDial url for user %s +RefreshPhoneLink=Refresh link +LinkToTest=Clickable link generated for user %s (click phone number to test) +KeepEmptyToUseDefault=Keep empty to use default value +DefaultLink=Default link +SetAsDefault=Set as default +ValueOverwrittenByUserSetup=Warning, this value may be overwritten by user specific setup (each user can set his own clicktodial url) +ExternalModule=External module +InstalledInto=Installed into directory %s +BarcodeInitForthird-parties=Mass barcode init for third-parties +BarcodeInitForProductsOrServices=Mass barcode init or reset for products or services +CurrentlyNWithoutBarCode=Currently, you have %s record on %s %s without barcode defined. +InitEmptyBarCode=Init value for next %s empty records +EraseAllCurrentBarCode=Erase all current barcode values +ConfirmEraseAllCurrentBarCode=Are you sure you want to erase all current barcode values? +AllBarcodeReset=All barcode values have been removed +NoBarcodeNumberingTemplateDefined=No numbering barcode template enabled in the Barcode module setup. +EnableFileCache=Enable file cache +ShowDetailsInPDFPageFoot=Add more details into footer, such as company address or manager names (in addition to professional ids, company capital and VAT number). +NoDetails=No additional details in footer +DisplayCompanyInfo=Display company address +DisplayCompanyManagers=Display manager names +DisplayCompanyInfoAndManagers=Display company address and manager names +EnableAndSetupModuleCron=If you want to have this recurring invoice generated automatically, module *%s* must be enabled and correctly setup. Otherwise, generation of invoices must be done manually from this template using the *Create* button. Note that even if you enabled automatic generation, you can still safely launch manual generation. Generation of duplicates for the same period is not possible. +ModuleCompanyCodeCustomerAquarium=%s followed by customer code for a customer accounting code +ModuleCompanyCodeSupplierAquarium=%s followed by vendor code for a vendor accounting code +ModuleCompanyCodePanicum=Return an empty accounting code. +ModuleCompanyCodeDigitaria=Returns a compound accounting code according to the name of the third party. The code consists of a prefix that can be defined in the first position followed by the number of characters defined in the third party code. +ModuleCompanyCodeCustomerDigitaria=%s followed by the truncated customer name by the number of characters: %s for the customer accounting code. +ModuleCompanyCodeSupplierDigitaria=%s followed by the truncated supplier name by the number of characters: %s for the supplier accounting code. +Use3StepsApproval=By default, Purchase Orders need to be created and approved by 2 different users (one step/user to create and one step/user to approve. Note that if user has both permission to create and approve, one step/user will be enough). You can ask with this option to introduce a third step/user approval, if amount is higher than a dedicated value (so 3 steps will be necessary: 1=validation, 2=first approval and 3=second approval if amount is enough).
    Set this to empty if one approval (2 steps) is enough, set it to a very low value (0.1) if a second approval (3 steps) is always required. +UseDoubleApproval=Use a 3 steps approval when amount (without tax) is higher than... +WarningPHPMail=WARNING: It is often better to setup outgoing emails to use the email server of your provider instead of the default setup. Some email providers (like Yahoo) do not allow you to send an email from another server than their own server. Your current setup uses the server of the application to send email and not the server of your email provider, so some recipients (the one compatible with the restrictive DMARC protocol), will ask your email provider if they can accept your email and some email providers (like Yahoo) may respond "no" because the server is not theirs, so few of your sent Emails may not be accepted (be careful also of your email provider's sending quota).
    If your Email provider (like Yahoo) has this restriction, you must change Email setup to choose the other method "SMTP server" and enter the SMTP server and credentials provided by your Email provider. +WarningPHPMail2=If your email SMTP provider need to restrict email client to some IP addresses (very rare), this is the IP address of the mail user agent (MUA) for your ERP CRM application: %s. +WarningPHPMailSPF=If the domain name in your sender email address is protected by SPF (ask you email provider), you must include the following IPs in the SPF record of the DNS of your domain: %s. +ClickToShowDescription=Click to show description +DependsOn=This module needs the module(s) +RequiredBy=This module is required by module(s) +TheKeyIsTheNameOfHtmlField=This is the name of the HTML field. Technical knowledge is required to read the content of the HTML page to get the key name of a field. +PageUrlForDefaultValues=You must enter the relative path of the page URL. If you include parameters in URL, the default values will be effective if all parameters are set to same value. +PageUrlForDefaultValuesCreate=
    Example:
    For the form to create a new third party, it is %s.
    For URL of external modules installed into custom directory, do not include the "custom/", so use path like mymodule/mypage.php and not custom/mymodule/mypage.php.
    If you want default value only if url has some parameter, you can use %s +PageUrlForDefaultValuesList=
    Example:
    For the page that lists third parties, it is %s.
    For URL of external modules installed into custom directory, do not include the "custom/" so use a path like mymodule/mypagelist.php and not custom/mymodule/mypagelist.php.
    If you want default value only if url has some parameter, you can use %s +AlsoDefaultValuesAreEffectiveForActionCreate=Also note that overwritting default values for form creation works only for pages that were correctly designed (so with parameter action=create or presend...) +EnableDefaultValues=Enable customization of default values +EnableOverwriteTranslation=Enable usage of overwritten translation +GoIntoTranslationMenuToChangeThis=A translation has been found for the key with this code. To change this value, you must edit it from Home-Setup-translation. +WarningSettingSortOrder=Warning, setting a default sort order may result in a technical error when going on the list page if field is an unknown field. If you experience such an error, come back to this page to remove the default sort order and restore default behavior. +Field=Field +ProductDocumentTemplates=Document templates to generate product document +FreeLegalTextOnExpenseReports=Free legal text on expense reports +WatermarkOnDraftExpenseReports=Watermark on draft expense reports +AttachMainDocByDefault=Set this to 1 if you want to attach main document to email by default (if applicable) +FilesAttachedToEmail=Attach file +SendEmailsReminders=Send agenda reminders by emails +davDescription=Setup a WebDAV server +DAVSetup=Setup of module DAV +DAV_ALLOW_PRIVATE_DIR=Enable the generic private directory (WebDAV dedicated directory named "private" - login required) +DAV_ALLOW_PRIVATE_DIRTooltip=The generic private directory is a WebDAV directory anybody can access with its application login/pass. +DAV_ALLOW_PUBLIC_DIR=Enable the generic public directory (WebDAV dedicated directory named "public" - no login required) +DAV_ALLOW_PUBLIC_DIRTooltip=The generic public directory is a WebDAV directory anybody can access (in read and write mode), with no authorization required (login/password account). +DAV_ALLOW_ECM_DIR=Enable the DMS/ECM private directory (root directory of the DMS/ECM module - login required) +DAV_ALLOW_ECM_DIRTooltip=The root directory where all files are manually uploaded when using the DMS/ECM module. Similarly as access from the web interface, you will need a valid login/password with adecuate permissions to access it. +# Modules +Module0Name=Users & Groups +Module0Desc=Users / Employees and Groups management +Module1Name=Third Parties +Module1Desc=Companies and contacts management (customers, prospects...) +Module2Name=Commercial +Module2Desc=Commercial management +Module10Name=Accounting (simplified) +Module10Desc=Simple accounting reports (journals, turnover) based on database content. Does not use any ledger table. +Module20Name=Proposals +Module20Desc=Commercial proposal management +Module22Name=Mass Emailings +Module22Desc=Manage bulk emailing +Module23Name=Energy +Module23Desc=Monitoring the consumption of energies +Module25Name=Sales Orders +Module25Desc=Sales order management +Module30Name=Invoices +Module30Desc=Management of invoices and credit notes for customers. Management of invoices and credit notes for suppliers +Module40Name=Vendors +Module40Desc=Vendors and purchase management (purchase orders and billing of supplier invoices) +Module42Name=Debug Logs +Module42Desc=Logging facilities (file, syslog, ...). Such logs are for technical/debug purposes. +Module49Name=Editors +Module49Desc=Editor management +Module50Name=Products +Module50Desc=Management of Products +Module51Name=Mass mailings +Module51Desc=Mass paper mailing management +Module52Name=Stocks +Module52Desc=Stock management +Module53Name=Services +Module53Desc=Management of Services +Module54Name=Contracts/Subscriptions +Module54Desc=Management of contracts (services or recurring subscriptions) +Module55Name=Barcodes +Module55Desc=Barcode management +Module56Name=Telephony +Module56Desc=Telephony integration +Module57Name=Bank Direct Debit payments +Module57Desc=Management of Direct Debit payment orders. It includes generation of SEPA file for European countries. +Module58Name=ClickToDial +Module58Desc=Integration of a ClickToDial system (Asterisk, ...) +Module59Name=Bookmark4u +Module59Desc=Add function to generate Bookmark4u account from a Dolibarr account +Module60Name=Stickers +Module60Desc=Management of stickers +Module70Name=Interventions +Module70Desc=Intervention management +Module75Name=Expense and trip notes +Module75Desc=Expense and trip notes management +Module80Name=Shipments +Module80Desc=Shipments and delivery note management +Module85Name=Banks & Cash +Module85Desc=Management of bank or cash accounts +Module100Name=External Site +Module100Desc=Add a link to an external website as a main menu icon. Website is shown in a frame under the top menu. +Module105Name=Mailman and SPIP +Module105Desc=Mailman or SPIP interface for member module +Module200Name=LDAP +Module200Desc=LDAP directory synchronization +Module210Name=PostNuke +Module210Desc=PostNuke integration +Module240Name=Data exports +Module240Desc=Tool to export Dolibarr data (with assistance) +Module250Name=Data imports +Module250Desc=Tool to import data into Dolibarr (with assistance) +Module310Name=Members +Module310Desc=Foundation members management +Module320Name=RSS Feed +Module320Desc=Add a RSS feed to Dolibarr pages +Module330Name=Bookmarks & Shortcuts +Module330Desc=Create shortcuts, always accessible, to the internal or external pages to which you frequently access +Module400Name=Projects or Leads +Module400Desc=Management of projects, leads/opportunities and/or tasks. You can also assign any element (invoice, order, proposal, intervention, ...) to a project and get a transversal view from the project view. +Module410Name=Webcalendar +Module410Desc=Webcalendar integration +Module500Name=Taxes & Special Expenses +Module500Desc=Management of other expenses (sale taxes, social or fiscal taxes, dividends, ...) +Module510Name=Salaries +Module510Desc=Record and track employee payments +Module520Name=Loans +Module520Desc=Management of loans +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 +Module610Desc=Creation of product variants (color, size etc.) +Module700Name=Donations +Module700Desc=Donation management +Module770Name=Expense Reports +Module770Desc=Manage expense reports claims (transportation, meal, ...) +Module1120Name=Vendor Commercial Proposals +Module1120Desc=Request vendor commercial proposal and prices +Module1200Name=Mantis +Module1200Desc=Mantis integration +Module1520Name=Document Generation +Module1520Desc=Mass email document generation +Module1780Name=Tags/Categories +Module1780Desc=Create tags/category (products, customers, suppliers, contacts or members) +Module2000Name=WYSIWYG editor +Module2000Desc=Allow text fields to be edited/formatted using CKEditor (html) +Module2200Name=Dynamic Prices +Module2200Desc=Use maths expressions for auto-generation of prices +Module2300Name=Scheduled jobs +Module2300Desc=Scheduled jobs management (alias cron or chrono table) +Module2400Name=Events/Agenda +Module2400Desc=Track events. Log automatic events for tracking purposes or record manual events or meetings. This is the principal module for good Customer or Vendor Relationship Management. +Module2500Name=DMS / ECM +Module2500Desc=Document Management System / Electronic Content Management. Automatic organization of your generated or stored documents. Share them when you need. +Module2600Name=API/Web services (SOAP server) +Module2600Desc=Enable the Dolibarr SOAP server providing API services +Module2610Name=API/Web services (REST server) +Module2610Desc=Enable the Dolibarr REST server providing API services +Module2660Name=Call WebServices (SOAP client) +Module2660Desc=Enable the Dolibarr web services client (Can be used to push data/requests to external servers. Only Purchase orders are currently supported.) +Module2700Name=Gravatar +Module2700Desc=Use online Gravatar service (www.gravatar.com) to show photo of users/members (found with their emails). Needs Internet access +Module2800Desc=FTP Client +Module2900Name=GeoIPMaxmind +Module2900Desc=GeoIP Maxmind conversions capabilities +Module3200Name=Unalterable Archives +Module3200Desc=Enable an unalterable log of business events. Events are archived in real-time. The log is a read-only table of chained events that can be exported. This module may be mandatory for some countries. +Module4000Name=HRM +Module4000Desc=Human resources management (management of department, employee contracts and feelings) +Module5000Name=Multi-company +Module5000Desc=Allows you to manage multiple companies +Module6000Name=Workflow +Module6000Desc=Workflow management (automatic creation of object and/or automatic status change) +Module10000Name=Websites +Module10000Desc=Create websites (public) with a WYSIWYG editor. This is a webmaster or developer oriented CMS (it is better to know HTML and CSS language). Just setup your web server (Apache, Nginx, ...) to point to the dedicated Dolibarr directory to have it online on the internet with your own domain name. +Module20000Name=Leave Request Management +Module20000Desc=Define and track employee leave requests +Module39000Name=Product Lots +Module39000Desc=Lots, serial numbers, eat-by/sell-by date management for products +Module40000Name=Multicurrency +Module40000Desc=Use alternative currencies in prices and documents +Module50000Name=PayBox +Module50000Desc=Offer customers a PayBox online payment page (credit/debit cards). This can be used to allow your customers to make ad-hoc payments or payments related to a specific Dolibarr object (invoice, order etc...) +Module50100Name=POS SimplePOS +Module50100Desc=Point of Sale module SimplePOS (simple POS). +Module50150Name=POS TakePOS +Module50150Desc=Point of Sale module TakePOS (touchscreen POS, for shops, bars or restaurants). +Module50200Name=Paypal +Module50200Desc=Offer customers a PayPal online payment page (PayPal account or credit/debit cards). This can be used to allow your customers to make ad-hoc payments or payments related to a specific Dolibarr object (invoice, order etc...) +Module50300Name=Stripe +Module50300Desc=Offer customers a Stripe online payment page (credit/debit cards). This can be used to allow your customers to make ad-hoc payments or payments related to a specific Dolibarr object (invoice, order etc...) +Module50400Name=Accounting (double entry) +Module50400Desc=Accounting management (double entries, support general and auxiliary ledgers). Export the ledger in several other accounting software formats. +Module54000Name=PrintIPP +Module54000Desc=Direct print (without opening the documents) using Cups IPP interface (Printer must be visible from server, and CUPS must be installed on server). +Module55000Name=Poll, Survey or Vote +Module55000Desc=Create online polls, surveys or votes (like Doodle, Studs, RDVz etc...) +Module59000Name=Margins +Module59000Desc=Module to manage margins +Module60000Name=Commissions +Module60000Desc=Module to manage commissions +Module62000Name=Incoterms +Module62000Desc=Add features to manage Incoterms +Module63000Name=Resources +Module63000Desc=Manage resources (printers, cars, rooms, ...) for allocating to events +Permission11=Read customer invoices +Permission12=Create/modify customer invoices +Permission13=Unvalidate customer invoices +Permission14=Validate customer invoices +Permission15=Send customer invoices by email +Permission16=Create payments for customer invoices +Permission19=Delete customer invoices +Permission21=Read commercial proposals +Permission22=Create/modify commercial proposals +Permission24=Validate commercial proposals +Permission25=Send commercial proposals +Permission26=Close commercial proposals +Permission27=Delete commercial proposals +Permission28=Export commercial proposals +Permission31=Read products +Permission32=Create/modify products +Permission34=Delete products +Permission36=See/manage hidden products +Permission38=Export products +Permission41=Read projects and tasks (shared project and projects I'm contact for). Can also enter time consumed, for me or my hierarchy, on assigned tasks (Timesheet) +Permission42=Create/modify projects (shared project and projects I'm contact for). Can also create tasks and assign users to project and tasks +Permission44=Delete projects (shared project and projects I'm contact for) +Permission45=Export projects +Permission61=Read interventions +Permission62=Create/modify interventions +Permission64=Delete interventions +Permission67=Export interventions +Permission71=Read members +Permission72=Create/modify members +Permission74=Delete members +Permission75=Setup types of membership +Permission76=Export data +Permission78=Read subscriptions +Permission79=Create/modify subscriptions +Permission81=Read customers orders +Permission82=Create/modify customers orders +Permission84=Validate customers orders +Permission86=Send customers orders +Permission87=Close customers orders +Permission88=Cancel customers orders +Permission89=Delete customers orders +Permission91=Read social or fiscal taxes and vat +Permission92=Create/modify social or fiscal taxes and vat +Permission93=Delete social or fiscal taxes and vat +Permission94=Export social or fiscal taxes +Permission95=Read reports +Permission101=Read sendings +Permission102=Create/modify sendings +Permission104=Validate sendings +Permission106=Export sendings +Permission109=Delete sendings +Permission111=Read financial accounts +Permission112=Create/modify/delete and compare transactions +Permission113=Setup financial accounts (create, manage categories) +Permission114=Reconcile transactions +Permission115=Export transactions and account statements +Permission116=Transfers between accounts +Permission117=Manage checks dispatching +Permission121=Read third parties linked to user +Permission122=Create/modify third parties linked to user +Permission125=Delete third parties linked to user +Permission126=Export third parties +Permission141=Read all projects and tasks (also private projects for which I am not a contact) +Permission142=Create/modify all projects and tasks (also private projects for which I am not a contact) +Permission144=Delete all projects and tasks (also private projects i am not contact for) +Permission146=Read providers +Permission147=Read stats +Permission151=Read direct debit payment orders +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=Read contracts/subscriptions +Permission162=Create/modify contracts/subscriptions +Permission163=Activate a service/subscription of a contract +Permission164=Disable a service/subscription of a contract +Permission165=Delete contracts/subscriptions +Permission167=Export contracts +Permission171=Read trips and expenses (yours and your subordinates) +Permission172=Create/modify trips and expenses +Permission173=Delete trips and expenses +Permission174=Read all trips and expenses +Permission178=Export trips and expenses +Permission180=Read suppliers +Permission181=Read purchase orders +Permission182=Create/modify purchase orders +Permission183=Validate purchase orders +Permission184=Approve purchase orders +Permission185=Order or cancel purchase orders +Permission186=Receive purchase orders +Permission187=Close purchase orders +Permission188=Cancel purchase orders +Permission192=Create lines +Permission193=Cancel lines +Permission194=Read the bandwidth lines +Permission202=Create ADSL connections +Permission203=Order connections orders +Permission204=Order connections +Permission205=Manage connections +Permission206=Read connections +Permission211=Read Telephony +Permission212=Order lines +Permission213=Activate line +Permission214=Setup Telephony +Permission215=Setup providers +Permission221=Read emailings +Permission222=Create/modify emailings (topic, recipients...) +Permission223=Validate emailings (allows sending) +Permission229=Delete emailings +Permission237=View recipients and info +Permission238=Manually send mailings +Permission239=Delete mailings after validation or sent +Permission241=Read categories +Permission242=Create/modify categories +Permission243=Delete categories +Permission244=See the contents of the hidden categories +Permission251=Read other users and groups +PermissionAdvanced251=Read other users +Permission252=Read permissions of other users +Permission253=Create/modify other users, groups and permissions +PermissionAdvanced253=Create/modify internal/external users and permissions +Permission254=Create/modify external users only +Permission255=Modify other users password +Permission256=Delete or disable other users +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). +Permission271=Read CA +Permission272=Read invoices +Permission273=Issue invoices +Permission281=Read contacts +Permission282=Create/modify contacts +Permission283=Delete contacts +Permission286=Export contacts +Permission291=Read tariffs +Permission292=Set permissions on the tariffs +Permission293=Modify customer's tariffs +Permission300=Read barcodes +Permission301=Create/modify barcodes +Permission302=Delete barcodes +Permission311=Read services +Permission312=Assign service/subscription to contract +Permission331=Read bookmarks +Permission332=Create/modify bookmarks +Permission333=Delete bookmarks +Permission341=Read its own permissions +Permission342=Create/modify his own user information +Permission343=Modify his own password +Permission344=Modify its own permissions +Permission351=Read groups +Permission352=Read groups permissions +Permission353=Create/modify groups +Permission354=Delete or disable groups +Permission358=Export users +Permission401=Read discounts +Permission402=Create/modify discounts +Permission403=Validate discounts +Permission404=Delete discounts +Permission430=Use Debug Bar +Permission511=Read payments of salaries +Permission512=Create/modify payments of salaries +Permission514=Delete payments of salaries +Permission517=Export salaries +Permission520=Read Loans +Permission522=Create/modify loans +Permission524=Delete loans +Permission525=Access loan calculator +Permission527=Export loans +Permission531=Read services +Permission532=Create/modify services +Permission534=Delete services +Permission536=See/manage hidden services +Permission538=Export services +Permission650=Read Bills of Materials +Permission651=Create/Update Bills of Materials +Permission652=Delete Bills of Materials +Permission701=Read donations +Permission702=Create/modify donations +Permission703=Delete donations +Permission771=Read expense reports (yours and your subordinates) +Permission772=Create/modify expense reports +Permission773=Delete expense reports +Permission774=Read all expense reports (even for user not subordinates) +Permission775=Approve expense reports +Permission776=Pay expense reports +Permission779=Export expense reports +Permission1001=Read stocks +Permission1002=Create/modify warehouses +Permission1003=Delete warehouses +Permission1004=Read stock movements +Permission1005=Create/modify stock movements +Permission1101=Read delivery receipts +Permission1102=Create/modify delivery receipts +Permission1104=Validate delivery receipts +Permission1109=Delete delivery receipts +Permission1121=Read supplier proposals +Permission1122=Create/modify supplier proposals +Permission1123=Validate supplier proposals +Permission1124=Send supplier proposals +Permission1125=Delete supplier proposals +Permission1126=Close supplier price requests +Permission1181=Read suppliers +Permission1182=Read purchase orders +Permission1183=Create/modify purchase orders +Permission1184=Validate purchase orders +Permission1185=Approve purchase orders +Permission1186=Order purchase orders +Permission1187=Acknowledge receipt of purchase orders +Permission1188=Delete purchase orders +Permission1190=Approve (second approval) purchase orders +Permission1201=Get result of an export +Permission1202=Create/Modify an export +Permission1231=Read vendor invoices +Permission1232=Create/modify vendor invoices +Permission1233=Validate vendor invoices +Permission1234=Delete vendor invoices +Permission1235=Send vendor invoices by email +Permission1236=Export vendor invoices, attributes and payments +Permission1237=Export purchase orders and their details +Permission1251=Run mass imports of external data into database (data load) +Permission1321=Export customer invoices, attributes and payments +Permission1322=Reopen a paid bill +Permission1421=Export sales orders and attributes +Permission2401=Read actions (events or tasks) linked to his user account (if owner of event or just assigned to) +Permission2402=Create/modify actions (events or tasks) linked to his user account (if owner of event) +Permission2403=Delete actions (events or tasks) linked to his user account (if owner of event) +Permission2411=Read actions (events or tasks) of others +Permission2412=Create/modify actions (events or tasks) of others +Permission2413=Delete actions (events or tasks) of others +Permission2414=Export actions/tasks of others +Permission2501=Read/Download documents +Permission2502=Download documents +Permission2503=Submit or delete documents +Permission2515=Setup documents directories +Permission2801=Use FTP client in read mode (browse and download only) +Permission2802=Use FTP client in write mode (delete or upload files) +Permission3200=Read archived events and fingerprints +Permission4001=See employees +Permission4002=Create employees +Permission4003=Delete employees +Permission4004=Export employees +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. +Permission10005=Delete website content +Permission20001=Read leave requests (your leave and those of your subordinates) +Permission20002=Create/modify your leave requests (your leave and those of your subordinates) +Permission20003=Delete leave requests +Permission20004=Read all leave requests (even of user not subordinates) +Permission20005=Create/modify leave requests for everybody (even of user not subordinates) +Permission20006=Admin leave requests (setup and update balance) +Permission20007=Approve leave requests +Permission23001=Read Scheduled job +Permission23002=Create/update Scheduled job +Permission23003=Delete Scheduled job +Permission23004=Execute Scheduled job +Permission50101=Use Point of Sale +Permission50201=Read transactions +Permission50202=Import transactions +Permission50401=Bind products and invoices with accounting accounts +Permission50411=Read operations in ledger +Permission50412=Write/Edit operations in ledger +Permission50414=Delete operations in ledger +Permission50415=Delete all operations by year and journal in ledger +Permission50418=Export operations of the ledger +Permission50420=Report and export reports (turnover, balance, journals, ledger) +Permission50430=Define fiscal periods. Validate transactions and close fiscal periods. +Permission50440=Manage chart of accounts, setup of accountancy +Permission51001=Read assets +Permission51002=Create/Update assets +Permission51003=Delete assets +Permission51005=Setup types of asset +Permission54001=Print +Permission55001=Read polls +Permission55002=Create/modify polls +Permission59001=Read commercial margins +Permission59002=Define commercial margins +Permission59003=Read every user margin +Permission63001=Read resources +Permission63002=Create/modify resources +Permission63003=Delete resources +Permission63004=Link resources to agenda events +DictionaryCompanyType=Third-party types +DictionaryCompanyJuridicalType=Third-party legal entities +DictionaryProspectLevel=Prospect potential +DictionaryCanton=States/Provinces +DictionaryRegion=Regions +DictionaryCountry=Countries +DictionaryCurrency=Currencies +DictionaryCivility=Honorific titles +DictionaryActions=Types of agenda events +DictionarySocialContributions=Types of social or fiscal taxes +DictionaryVAT=VAT Rates or Sales Tax Rates +DictionaryRevenueStamp=Amount of tax stamps +DictionaryPaymentConditions=Payment Terms +DictionaryPaymentModes=Payment Modes +DictionaryTypeContact=Contact/Address types +DictionaryTypeOfContainer=Website - Type of website pages/containers +DictionaryEcotaxe=Ecotax (WEEE) +DictionaryPaperFormat=Paper formats +DictionaryFormatCards=Card formats +DictionaryFees=Expense report - Types of expense report lines +DictionarySendingMethods=Shipping methods +DictionaryStaff=Number of Employees +DictionaryAvailability=Delivery delay +DictionaryOrderMethods=Ordering methods +DictionarySource=Origin of proposals/orders +DictionaryAccountancyCategory=Personalized groups for reports +DictionaryAccountancysystem=Models for chart of accounts +DictionaryAccountancyJournal=Accounting journals +DictionaryEMailTemplates=Email Templates +DictionaryUnits=Units +DictionaryMeasuringUnits=Measuring Units +DictionarySocialNetworks=Social Networks +DictionaryProspectStatus=Prospect status +DictionaryHolidayTypes=Types of leave +DictionaryOpportunityStatus=Lead status for project/lead +DictionaryExpenseTaxCat=Expense report - Transportation categories +DictionaryExpenseTaxRange=Expense report - Range by transportation category +SetupSaved=Setup saved +SetupNotSaved=Setup not saved +BackToModuleList=Back to Module list +BackToDictionaryList=Back to Dictionaries list +TypeOfRevenueStamp=Type of tax stamp +VATManagement=Sales Tax Management +VATIsUsedDesc=By default when creating prospects, invoices, orders etc. the Sales Tax rate follows the active standard rule:
    If the seller is not subject to Sales tax, then Sales tax defaults to 0. End of rule.
    If the (seller's country = buyer's country), then the Sales tax by default equals the Sales tax of the product in the seller's country. End of rule.
    If the seller and buyer are both in the European Community and goods are transport-related products (haulage, shipping, airline), the default VAT is 0. This rule is dependant on the seller's country - please consult with your accountant. The VAT should be paid by the buyer to the customs office in their country and not to the seller. End of rule.
    If the seller and buyer are both in the European Community and the buyer is not a company (with a registered intra-Community VAT number) then the VAT defaults to the VAT rate of the seller's country. End of rule.
    If the seller and buyer are both in the European Community and the buyer is a company (with a registered intra-Community VAT number), then the VAT is 0 by default. End of rule.
    In any other case the proposed default is Sales tax=0. End of rule. +VATIsNotUsedDesc=By default the proposed Sales tax is 0 which can be used for cases like associations, individuals or small companies. +VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. +VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. +##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax +LTRate=Rate +LocalTax1IsNotUsed=Do not use second tax +LocalTax1IsUsedDesc=Use a second type of tax (other than first one) +LocalTax1IsNotUsedDesc=Do not use other type of tax (other than first one) +LocalTax1Management=Second type of tax +LocalTax1IsUsedExample= +LocalTax1IsNotUsedExample= +LocalTax2IsNotUsed=Do not use third tax +LocalTax2IsUsedDesc=Use a third type of tax (other than first one) +LocalTax2IsNotUsedDesc=Do not use other type of tax (other than first one) +LocalTax2Management=Third type of tax +LocalTax2IsUsedExample= +LocalTax2IsNotUsedExample= +LocalTax1ManagementES=RE Management +LocalTax1IsUsedDescES=The RE rate by default when creating prospects, invoices, orders etc. follow the active standard rule:
    If the buyer is not subjected to RE, RE by default=0. End of rule.
    If the buyer is subjected to RE then the RE by default. End of rule.
    +LocalTax1IsNotUsedDescES=By default the proposed RE is 0. End of rule. +LocalTax1IsUsedExampleES=In Spain they are professionals subject to some specific sections of the Spanish IAE. +LocalTax1IsNotUsedExampleES=In Spain they are professional and societies and subject to certain sections of the Spanish IAE. +LocalTax2ManagementES=IRPF Management +LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices, orders etc. follow the active standard rule:
    If the seller is not subjected to IRPF, then IRPF by default=0. End of rule.
    If the seller is subjected to IRPF then the IRPF by default. End of rule.
    +LocalTax2IsNotUsedDescES=By default the proposed IRPF is 0. End of rule. +LocalTax2IsUsedExampleES=In Spain, freelancers and independent professionals who provide services and companies who have chosen the tax system of modules. +LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) +CalcLocaltax=Reports on local taxes +CalcLocaltax1=Sales - Purchases +CalcLocaltax1Desc=Local Taxes reports are calculated with the difference between localtaxes sales and localtaxes purchases +CalcLocaltax2=Purchases +CalcLocaltax2Desc=Local Taxes reports are the total of localtaxes purchases +CalcLocaltax3=Sales +CalcLocaltax3Desc=Local Taxes reports are the total of localtaxes sales +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax +LabelUsedByDefault=Label used by default if no translation can be found for code +LabelOnDocuments=Label on documents +LabelOrTranslationKey=Label or translation key +ValueOfConstantKey=Value of a configuration constant +NbOfDays=No. of days +AtEndOfMonth=At end of month +CurrentNext=Current/Next +Offset=Offset +AlwaysActive=Always active +Upgrade=Upgrade +MenuUpgrade=Upgrade / Extend +AddExtensionThemeModuleOrOther=Deploy/install external app/module +WebServer=Web server +DocumentRootServer=Web server's root directory +DataRootServer=Data files directory +IP=IP +Port=Port +VirtualServerName=Virtual server name +OS=OS +PhpWebLink=Web-Php link +Server=Server +Database=Database +DatabaseServer=Database host +DatabaseName=Database name +DatabasePort=Database port +DatabaseUser=Database user +DatabasePassword=Database password +Tables=Tables +TableName=Table name +NbOfRecord=No. of records +Host=Server +DriverType=Driver type +SummarySystem=System information summary +SummaryConst=List of all Dolibarr setup parameters +MenuCompanySetup=Company/Organization +DefaultMenuManager= Standard menu manager +DefaultMenuSmartphoneManager=Smartphone menu manager +Skin=Skin theme +DefaultSkin=Default skin theme +MaxSizeList=Max length for list +DefaultMaxSizeList=Default max length for lists +DefaultMaxSizeShortList=Default max length for short lists (i.e. in customer card) +MessageOfDay=Message of the day +MessageLogin=Login page message +LoginPage=Login page +BackgroundImageLogin=Background image +PermanentLeftSearchForm=Permanent search form on left menu +DefaultLanguage=Default language +EnableMultilangInterface=Enable multilanguage support +EnableShowLogo=Show the company logo in the menu +CompanyInfo=Company/Organization +CompanyIds=Company/Organization identities +CompanyName=Name +CompanyAddress=Address +CompanyZip=Zip +CompanyTown=Town +CompanyCountry=Country +CompanyCurrency=Main currency +CompanyObject=Object of the company +IDCountry=ID country +Logo=Logo +LogoDesc=Main logo of company. Will be used into generated documents (PDF, ...) +LogoSquarred=Logo (squarred) +LogoSquarredDesc=Must be a squarred icon (width = height). This logo will be used as the favorite icon or other need like for the top menu bar (if not disabled into display setup). +DoNotSuggestPaymentMode=Do not suggest +NoActiveBankAccountDefined=No active bank account defined +OwnerOfBankAccount=Owner of bank account %s +BankModuleNotActive=Bank accounts module not enabled +ShowBugTrackLink=Show link "%s" +Alerts=Alerts +DelaysOfToleranceBeforeWarning=Delay before displaying a warning alert for: +DelaysOfToleranceDesc=Set the delay before an alert icon %s is shown onscreen for the late element. +Delays_MAIN_DELAY_ACTIONS_TODO=Planned events (agenda events) not completed +Delays_MAIN_DELAY_PROJECT_TO_CLOSE=Project not closed in time +Delays_MAIN_DELAY_TASKS_TODO=Planned task (project tasks) not completed +Delays_MAIN_DELAY_ORDERS_TO_PROCESS=Order not processed +Delays_MAIN_DELAY_SUPPLIER_ORDERS_TO_PROCESS=Purchase order not processed +Delays_MAIN_DELAY_PROPALS_TO_CLOSE=Proposal not closed +Delays_MAIN_DELAY_PROPALS_TO_BILL=Proposal not billed +Delays_MAIN_DELAY_NOT_ACTIVATED_SERVICES=Service to activate +Delays_MAIN_DELAY_RUNNING_SERVICES=Expired service +Delays_MAIN_DELAY_SUPPLIER_BILLS_TO_PAY=Unpaid vendor invoice +Delays_MAIN_DELAY_CUSTOMER_BILLS_UNPAYED=Unpaid customer invoice +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 +Delays_MAIN_DELAY_HOLIDAYS=Leave requests 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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. +SetupDescription5=Other Setup menu entries manage optional parameters. +LogEvents=Security audit events +Audit=Audit +InfoDolibarr=About Dolibarr +InfoBrowser=About Browser +InfoOS=About OS +InfoWebServer=About Web Server +InfoDatabase=About Database +InfoPHP=About PHP +InfoPerf=About Performances +BrowserName=Browser name +BrowserOS=Browser OS +ListOfSecurityEvents=List of Dolibarr security events +SecurityEventsPurged=Security events purged +LogEventDesc=Enable logging for specific security events. Administrators the log via menu %s - %s. Warning, this feature can generate a large amount of data in the database. +AreaForAdminOnly=Setup parameters can be set by administrator users only. +SystemInfoDesc=System information is miscellaneous technical information you get in read only mode and visible for administrators only. +SystemAreaForAdminOnly=This area is available to administrator users only. Dolibarr user permissions cannot change this restriction. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. +AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. +AccountantFileNumber=Accountant code +DisplayDesc=Parameters affecting the look and behaviour of Dolibarr can be modified here. +AvailableModules=Available app/modules +ToActivateModule=To activate modules, go on setup Area (Home->Setup->Modules). +SessionTimeOut=Time out for session +SessionExplanation=This number guarantees that the session will never expire before this delay, if the session cleaner is done by Internal PHP session cleaner (and nothing else). Internal PHP session cleaner does not guarantee that the session will expire after this delay. It will expire, after this delay, and when the session cleaner is run, so every %s/%s access, but only during access made by other sessions (if value is 0, it means clearing of session is done only by an external process).
    Note: on some servers with an external session cleaning mechanism (cron under debian, ubuntu ...), the sessions can be destroyed after a period defined by an external setup, no matter what the value entered here is. +TriggersAvailable=Available triggers +TriggersDesc=Triggers are files that will modify the behavior of Dolibarr workflow once copied into the directory htdocs/core/triggers. They realize new actions, activated on Dolibarr events (new company creation, invoice validation, ...). +TriggerDisabledByName=Triggers in this file are disabled by the -NORUN suffix in their name. +TriggerDisabledAsModuleDisabled=Triggers in this file are disabled as module %s is disabled. +TriggerAlwaysActive=Triggers in this file are always active, whatever are the activated Dolibarr modules. +TriggerActiveAsModuleActive=Triggers in this file are active as module %s is enabled. +GeneratedPasswordDesc=Choose the method to be used for auto-generated passwords. +DictionaryDesc=Insert all reference data. You can add your values to the default. +ConstDesc=This page allows you to edit (override) parameters not available in other pages. These are mostly reserved parameters for developers/advanced troubleshooting only. +MiscellaneousDesc=All other security related parameters are defined here. +LimitsSetup=Limits/Precision setup +LimitsDesc=You can define limits, precisions and optimizations used by Dolibarr here +MAIN_MAX_DECIMALS_UNIT=Max. decimals for unit prices +MAIN_MAX_DECIMALS_TOT=Max. decimals for total prices +MAIN_MAX_DECIMALS_SHOWN=Max. decimals for prices shown on screen. Add an ellipsis ... after this parameter (e.g. "2...") if you want to see "..." suffixed to the truncated price. +MAIN_ROUNDING_RULE_TOT=Step of rounding range (for countries where rounding is done on something other than base 10. For example, put 0.05 if rounding is done by 0.05 steps) +UnitPriceOfProduct=Net unit price of a product +TotalPriceAfterRounding=Total price (excl/vat/incl tax) after rounding +ParameterActiveForNextInputOnly=Parameter effective for next input only +NoEventOrNoAuditSetup=No security event has been logged. This is normal if Audit has not been enabled in the "Setup - Security - Events" page. +NoEventFoundWithCriteria=No security event has been found for this search criteria. +SeeLocalSendMailSetup=See your local sendmail setup +BackupDesc=A complete backup of a Dolibarr installation requires two steps. +BackupDesc2=Backup the contents of the "documents" directory (%s) containing all uploaded and generated files. This will also include all the dump files generated in Step 1. This operation may last several minutes. +BackupDesc3=Backup the structure and contents of your database (%s) into a dump file. For this, you can use the following assistant. +BackupDescX=The archived directory should be stored in a secure place. +BackupDescY=The generated dump file should be stored in a secure place. +BackupPHPWarning=Backup cannot be guaranteed with this method. Previous one recommended. +RestoreDesc=To restore a Dolibarr backup, two steps are required. +RestoreDesc2=Restore the backup file (zip file for example) of the "documents" directory to a new Dolibarr installation or into this current documents directory (%s). +RestoreDesc3=Restore the database structure and data from a backup dump file into the database of the new Dolibarr installation or into the database of this current installation (%s). Warning, once the restore is complete, you must use a login/password, that existed from the backup time/installation to connect again.
    To restore a backup database into this current installation, you can follow this assistant. +RestoreMySQL=MySQL import +ForcedToByAModule= This rule is forced to %s by an activated module +PreviousDumpFiles=Existing backup files +PreviousArchiveFiles=Existing archive files +WeekStartOnDay=First day of the week +RunningUpdateProcessMayBeRequired=Running the upgrade process seems to be required (Program version %s differs from Database version %s) +YouMustRunCommandFromCommandLineAfterLoginToUser=You must run this command from command line after login to a shell with user %s or you must add -W option at end of command line to provide %s password. +YourPHPDoesNotHaveSSLSupport=SSL functions not available in your PHP +DownloadMoreSkins=More skins to download +SimpleNumRefModelDesc=Returns the reference number with format %syymm-nnnn where yy is year, mm is month and nnnn is sequential with no reset +ShowProfIdInAddress=Show professional id with addresses +ShowVATIntaInAddress=Hide intra-Community VAT number with addresses +TranslationUncomplete=Partial translation +MAIN_DISABLE_METEO=Disable meteorological view +MeteoStdMod=Standard mode +MeteoStdModEnabled=Standard mode enabled +MeteoPercentageMod=Percentage mode +MeteoPercentageModEnabled=Percentage mode enabled +MeteoUseMod=Click to use %s +TestLoginToAPI=Test login to API +ProxyDesc=Some features of Dolibarr require internet access. Define here the internet connection parameters such as access through a proxy server if necessary. +ExternalAccess=External/Internet Access +MAIN_PROXY_USE=Use a proxy server (otherwise access is direct to the internet) +MAIN_PROXY_HOST=Proxy server: Name/Address +MAIN_PROXY_PORT=Proxy server: Port +MAIN_PROXY_USER=Proxy server: Login/User +MAIN_PROXY_PASS=Proxy server: Password +DefineHereComplementaryAttributes=Define here any additional/custom attributes that you want to be included for: %s +ExtraFields=Complementary attributes +ExtraFieldsLines=Complementary attributes (lines) +ExtraFieldsLinesRec=Complementary attributes (templates invoices lines) +ExtraFieldsSupplierOrdersLines=Complementary attributes (order lines) +ExtraFieldsSupplierInvoicesLines=Complementary attributes (invoice lines) +ExtraFieldsThirdParties=Complementary attributes (third party) +ExtraFieldsContacts=Complementary attributes (contacts/address) +ExtraFieldsMember=Complementary attributes (member) +ExtraFieldsMemberType=Complementary attributes (member type) +ExtraFieldsCustomerInvoices=Complementary attributes (invoices) +ExtraFieldsCustomerInvoicesRec=Complementary attributes (templates invoices) +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). +PathToDocuments=Path to documents +PathDirectory=Directory +SendmailOptionMayHurtBuggedMTA=Feature to send mails using method "PHP mail direct" will generate a mail message that might not be parsed correctly by some receiving mail servers. The result is that some mails can't be read by people hosted by those bugged platforms. This is the case for some Internet providers (Ex: Orange in France). This is not a problem with Dolibarr or PHP but with the receiving mail server. You can however add an option MAIN_FIX_FOR_BUGGED_MTA to 1 in Setup - Other to modify Dolibarr to avoid this. However, you may experience problems with other servers that strictly use the SMTP standard. The other solution (recommended) is to use the method "SMTP socket library" which has no disadvantages. +TranslationSetup=Setup of translation +TranslationKeySearch=Search a translation key or string +TranslationOverwriteKey=Overwrite a translation string +TranslationDesc=How to set the display language:
    * Default/Systemwide: menu Home -> Setup -> Display
    * Per user: Click on the username at the top of the screen and modify the User Display Setup tab on the user card. +TranslationOverwriteDesc=You can also override strings filling the following table. Choose your language from "%s" dropdown, insert the translation key string into "%s" and your new translation into "%s" +TranslationOverwriteDesc2=You can use the other tab to help you know which translation key to use +TranslationString=Translation string +CurrentTranslationString=Current translation string +WarningAtLeastKeyOrTranslationRequired=A search criteria is required at least for key or translation string +NewTranslationStringToShow=New translation string to show +OriginalValueWas=The original translation is overwritten. Original value was:

    %s +TransKeyWithoutOriginalValue=You forced a new translation for the translation key '%s' that does not exist in any language files +TotalNumberOfActivatedModules=Activated application/modules: %s / %s +YouMustEnableOneModule=You must at least enable 1 module +ClassNotFoundIntoPathWarning=Class %s not found in PHP path +YesInSummer=Yes in summer +OnlyFollowingModulesAreOpenedToExternalUsers=Note, only the following modules are available to external users (irrespective of the permissions of such users) and only if permissions are granted:
    +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. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. +SearchOptim=Search optimization +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. +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. +FieldEdition=Edition of field %s +FillThisOnlyIfRequired=Example: +2 (fill only if timezone offset problems are experienced) +GetBarCode=Get barcode +NumberingModules=Numbering models +##### Module password generation +PasswordGenerationStandard=Return a password generated according to internal Dolibarr algorithm: 8 characters containing shared numbers and characters in lowercase. +PasswordGenerationNone=Do not suggest a generated password. Password must be typed in manually. +PasswordGenerationPerso=Return a password according to your personally defined configuration. +SetupPerso=According to your configuration +PasswordPatternDesc=Password pattern description +##### Users setup ##### +RuleForGeneratedPasswords=Rules to generate and validate passwords +DisableForgetPasswordLinkOnLogonPage=Do not show the "Password Forgotten" link on the Login page +UsersSetup=Users module setup +UserMailRequired=Email required to create a new user +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record +##### HRM setup ##### +HRMSetup=HRM module setup +##### Company setup ##### +CompanySetup=Companies module setup +CompanyCodeChecker=Options for automatic generation of customer/vendor codes +AccountCodeManager=Options for automatic generation of customer/vendor accounting codes +NotificationsDesc=Email notifications can be sent automatically for some Dolibarr events.
    Recipients of notifications can be defined: +NotificationsDescUser=* per user, one user at a time. +NotificationsDescContact=* per third-party contacts (customers or vendors), one contact at a time. +NotificationsDescGlobal=* or by setting global email addresses in this setup page. +ModelModules=Document Templates +DocumentModelOdt=Generate documents from OpenDocument templates (.ODT / .ODS files from LibreOffice, OpenOffice, KOffice, TextEdit,...) +WatermarkOnDraft=Watermark on draft document +JSOnPaimentBill=Activate feature to autofill payment lines on payment form +CompanyIdProfChecker=Rules for Professional IDs +MustBeUnique=Must be unique? +MustBeMandatory=Mandatory to create third parties (if VAT number or type of company defined) ? +MustBeInvoiceMandatory=Mandatory to validate invoices? +TechnicalServicesProvided=Technical services provided +#####DAV ##### +WebDAVSetupDesc=This is the link to access the WebDAV directory. It contains a "public" dir open to any user knowing the URL (if public directory access allowed) and a "private" directory that needs an existing login account/password for access. +WebDavServer=Root URL of %s server: %s +##### Webcal setup ##### +WebCalUrlForVCalExport=An export link to %s format is available at following link: %s +##### Invoices ##### +BillsSetup=Invoices module setup +BillsNumberingModule=Invoices and credit notes numbering model +BillsPDFModules=Invoice documents models +BillsPDFModulesAccordindToInvoiceType=Invoice documents models according to invoice type +PaymentsPDFModules=Payment documents models +ForceInvoiceDate=Force invoice date to validation date +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice +SuggestPaymentByRIBOnAccount=Suggest payment by withdrawal on account +SuggestPaymentByChequeToAddress=Suggest payment by check to +FreeLegalTextOnInvoices=Free text on invoices +WatermarkOnDraftInvoices=Watermark on draft invoices (none if empty) +PaymentsNumberingModule=Payments numbering model +SuppliersPayment=Vendor payments +SupplierPaymentSetup=Vendor payments setup +##### Proposals ##### +PropalSetup=Commercial proposals module setup +ProposalsNumberingModules=Commercial proposal numbering models +ProposalsPDFModules=Commercial proposal documents models +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal +FreeLegalTextOnProposal=Free text on commercial proposals +WatermarkOnDraftProposal=Watermark on draft commercial proposals (none if empty) +BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal +##### SupplierProposal ##### +SupplierProposalSetup=Price requests suppliers module setup +SupplierProposalNumberingModules=Price requests suppliers numbering models +SupplierProposalPDFModules=Price requests suppliers documents models +FreeLegalTextOnSupplierProposal=Free text on price requests suppliers +WatermarkOnDraftSupplierProposal=Watermark on draft price requests suppliers (none if empty) +BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_PROPOSAL=Ask for bank account destination of price request +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 ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order +OrdersSetup=Sales Orders management setup +OrdersNumberingModules=Orders numbering models +OrdersModelModule=Order documents models +FreeLegalTextOnOrders=Free text on orders +WatermarkOnDraftOrders=Watermark on draft orders (none if empty) +ShippableOrderIconInList=Add an icon in Orders list which indicate if order is shippable +BANK_ASK_PAYMENT_BANK_DURING_ORDER=Ask for bank account destination of order +##### Interventions ##### +InterventionsSetup=Interventions module setup +FreeLegalTextOnInterventions=Free text on intervention documents +FicheinterNumberingModules=Intervention numbering models +TemplatePDFInterventions=Intervention card documents models +WatermarkOnDraftInterventionCards=Watermark on intervention card documents (none if empty) +##### Contracts ##### +ContractsSetup=Contracts/Subscriptions module setup +ContractsNumberingModules=Contracts numbering modules +TemplatePDFContracts=Contracts documents models +FreeLegalTextOnContracts=Free text on contracts +WatermarkOnDraftContractCards=Watermark on draft contracts (none if empty) +##### Members ##### +MembersSetup=Members module setup +MemberMainOptions=Main options +AdherentLoginRequired= Manage a Login for each member +AdherentMailRequired=Email required to create a new member +MemberSendInformationByMailByDefault=Checkbox to send mail confirmation to members (validation or new subscription) is on by default +VisitorCanChooseItsPaymentMode=Visitor can choose from available payment modes +MEMBER_REMINDER_EMAIL=Enable automatic reminder by email of expired subscriptions. Note: Module %s must be enabled and correctly setup to send reminders. +##### LDAP setup ##### +LDAPSetup=LDAP Setup +LDAPGlobalParameters=Global parameters +LDAPUsersSynchro=Users +LDAPGroupsSynchro=Groups +LDAPContactsSynchro=Contacts +LDAPMembersSynchro=Members +LDAPMembersTypesSynchro=Members types +LDAPSynchronization=LDAP synchronisation +LDAPFunctionsNotAvailableOnPHP=LDAP functions are not available on your PHP +LDAPToDolibarr=LDAP -> Dolibarr +DolibarrToLDAP=Dolibarr -> LDAP +LDAPNamingAttribute=Key in LDAP +LDAPSynchronizeUsers=Organization of users in LDAP +LDAPSynchronizeGroups=Organization of groups in LDAP +LDAPSynchronizeContacts=Organization of contacts in LDAP +LDAPSynchronizeMembers=Organization of foundation's members in LDAP +LDAPSynchronizeMembersTypes=Organization of foundation's members types in LDAP +LDAPPrimaryServer=Primary server +LDAPSecondaryServer=Secondary server +LDAPServerPort=Server port +LDAPServerPortExample=Default port: 389 +LDAPServerProtocolVersion=Protocol version +LDAPServerUseTLS=Use TLS +LDAPServerUseTLSExample=Your LDAP server use TLS +LDAPServerDn=Server DN +LDAPAdminDn=Administrator DN +LDAPAdminDnExample=Complete DN (ex: cn=admin,dc=example,dc=com or cn=Administrator,cn=Users,dc=example,dc=com for active directory) +LDAPPassword=Administrator password +LDAPUserDn=Users' DN +LDAPUserDnExample=Complete DN (ex: ou=users,dc=example,dc=com) +LDAPGroupDn=Groups' DN +LDAPGroupDnExample=Complete DN (ex: ou=groups,dc=example,dc=com) +LDAPServerExample=Server address (ex: localhost, 192.168.0.2, ldaps://ldap.example.com/) +LDAPServerDnExample=Complete DN (ex: dc=example,dc=com) +LDAPDnSynchroActive=Users and groups synchronization +LDAPDnSynchroActiveExample=LDAP to Dolibarr or Dolibarr to LDAP synchronization +LDAPDnContactActive=Contacts' synchronization +LDAPDnContactActiveExample=Activated/Unactivated synchronization +LDAPDnMemberActive=Members' synchronization +LDAPDnMemberActiveExample=Activated/Unactivated synchronization +LDAPDnMemberTypeActive=Members types' synchronization +LDAPDnMemberTypeActiveExample=Activated/Unactivated synchronization +LDAPContactDn=Dolibarr contacts' DN +LDAPContactDnExample=Complete DN (ex: ou=contacts,dc=example,dc=com) +LDAPMemberDn=Dolibarr members DN +LDAPMemberDnExample=Complete DN (ex: ou=members,dc=example,dc=com) +LDAPMemberObjectClassList=List of objectClass +LDAPMemberObjectClassListExample=List of objectClass defining record attributes (ex: top,inetOrgPerson or top,user for active directory) +LDAPMemberTypeDn=Dolibarr members types DN +LDAPMemberTypepDnExample=Complete DN (ex: ou=memberstypes,dc=example,dc=com) +LDAPMemberTypeObjectClassList=List of objectClass +LDAPMemberTypeObjectClassListExample=List of objectClass defining record attributes (ex: top,groupOfUniqueNames) +LDAPUserObjectClassList=List of objectClass +LDAPUserObjectClassListExample=List of objectClass defining record attributes (ex: top,inetOrgPerson or top,user for active directory) +LDAPGroupObjectClassList=List of objectClass +LDAPGroupObjectClassListExample=List of objectClass defining record attributes (ex: top,groupOfUniqueNames) +LDAPContactObjectClassList=List of objectClass +LDAPContactObjectClassListExample=List of objectClass defining record attributes (ex: top,inetOrgPerson or top,user for active directory) +LDAPTestConnect=Test LDAP connection +LDAPTestSynchroContact=Test contacts synchronization +LDAPTestSynchroUser=Test user synchronization +LDAPTestSynchroGroup=Test group synchronization +LDAPTestSynchroMember=Test member synchronization +LDAPTestSynchroMemberType=Test member type synchronization +LDAPTestSearch= Test a LDAP search +LDAPSynchroOK=Synchronization test successful +LDAPSynchroKO=Failed synchronization test +LDAPSynchroKOMayBePermissions=Failed synchronization test. Check that the connection to the server is correctly configured and allows LDAP updates +LDAPTCPConnectOK=TCP connect to LDAP server successful (Server=%s, Port=%s) +LDAPTCPConnectKO=TCP connect to LDAP server failed (Server=%s, Port=%s) +LDAPBindOK=Connect/Authenticate to LDAP server successful (Server=%s, Port=%s, Admin=%s, Password=%s) +LDAPBindKO=Connect/Authenticate to LDAP server failed (Server=%s, Port=%s, Admin=%s, Password=%s) +LDAPSetupForVersion3=LDAP server configured for version 3 +LDAPSetupForVersion2=LDAP server configured for version 2 +LDAPDolibarrMapping=Dolibarr Mapping +LDAPLdapMapping=LDAP Mapping +LDAPFieldLoginUnix=Login (unix) +LDAPFieldLoginExample=Example: uid +LDAPFilterConnection=Search filter +LDAPFilterConnectionExample=Example: &(objectClass=inetOrgPerson) +LDAPFieldLoginSamba=Login (samba, activedirectory) +LDAPFieldLoginSambaExample=Example: samaccountname +LDAPFieldFullname=Full name +LDAPFieldFullnameExample=Example: cn +LDAPFieldPasswordNotCrypted=Password not encrypted +LDAPFieldPasswordCrypted=Password encrypted +LDAPFieldPasswordExample=Example: userPassword +LDAPFieldCommonNameExample=Example: cn +LDAPFieldName=Name +LDAPFieldNameExample=Example: sn +LDAPFieldFirstName=First name +LDAPFieldFirstNameExample=Example: givenName +LDAPFieldMail=Email address +LDAPFieldMailExample=Example: mail +LDAPFieldPhone=Professional phone number +LDAPFieldPhoneExample=Example: telephonenumber +LDAPFieldHomePhone=Personal phone number +LDAPFieldHomePhoneExample=Example: homephone +LDAPFieldMobile=Cellular phone +LDAPFieldMobileExample=Example: mobile +LDAPFieldFax=Fax number +LDAPFieldFaxExample=Example: facsimiletelephonenumber +LDAPFieldAddress=Street +LDAPFieldAddressExample=Example: street +LDAPFieldZip=Zip +LDAPFieldZipExample=Example: postalcode +LDAPFieldTown=Town +LDAPFieldTownExample=Example: l +LDAPFieldCountry=Country +LDAPFieldDescription=Description +LDAPFieldDescriptionExample=Example: description +LDAPFieldNotePublic=Public Note +LDAPFieldNotePublicExample=Example: publicnote +LDAPFieldGroupMembers= Group members +LDAPFieldGroupMembersExample= Example: uniqueMember +LDAPFieldBirthdate=Birthdate +LDAPFieldCompany=Company +LDAPFieldCompanyExample=Example: o +LDAPFieldSid=SID +LDAPFieldSidExample=Example: objectsid +LDAPFieldEndLastSubscription=Date of subscription end +LDAPFieldTitle=Job position +LDAPFieldTitleExample=Example: title +LDAPFieldGroupid=Group id +LDAPFieldGroupidExample=Exemple : gidnumber +LDAPFieldUserid=User id +LDAPFieldUseridExample=Exemple : uidnumber +LDAPFieldHomedirectory=Home directory +LDAPFieldHomedirectoryExample=Exemple : homedirectory +LDAPFieldHomedirectoryprefix=Home directory prefix +LDAPSetupNotComplete=LDAP setup not complete (go on others tabs) +LDAPNoUserOrPasswordProvidedAccessIsReadOnly=No administrator or password provided. LDAP access will be anonymous and in read only mode. +LDAPDescContact=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr contacts. +LDAPDescUsers=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr users. +LDAPDescGroups=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr groups. +LDAPDescMembers=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr members module. +LDAPDescMembersTypes=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr members types. +LDAPDescValues=Example values are designed for OpenLDAP with following loaded schemas: core.schema, cosine.schema, inetorgperson.schema). If you use thoose values and OpenLDAP, modify your LDAP config file slapd.conf to have all thoose schemas loaded. +ForANonAnonymousAccess=For an authenticated access (for a write access for example) +PerfDolibarr=Performance setup/optimizing report +YouMayFindPerfAdviceHere=This page provides some checks or advice related to performance. +NotInstalled=Not installed, so your server is not slowed down by this. +ApplicativeCache=Applicative cache +MemcachedNotAvailable=No applicative cache found. You can enhance performance by installing a cache server Memcached and a module able to use this cache server.
    More information here http://wiki.dolibarr.org/index.php/Module_MemCached_EN.
    Note that a lot of web hosting provider does not provide such cache server. +MemcachedModuleAvailableButNotSetup=Module memcached for applicative cache found but setup of module is not complete. +MemcachedAvailableAndSetup=Module memcached dedicated to use memcached server is enabled. +OPCodeCache=OPCode cache +NoOPCodeCacheFound=No OPCode cache found. Maybe you are using an OPCode cache other than XCache or eAccelerator (good), or maybe you don't have OPCode cache (very bad). +HTTPCacheStaticResources=HTTP cache for static resources (css, img, javascript) +FilesOfTypeCached=Files of type %s are cached by HTTP server +FilesOfTypeNotCached=Files of type %s are not cached by HTTP server +FilesOfTypeCompressed=Files of type %s are compressed by HTTP server +FilesOfTypeNotCompressed=Files of type %s are not compressed by HTTP server +CacheByServer=Cache by server +CacheByServerDesc=For example using the Apache directive "ExpiresByType image/gif A2592000" +CacheByClient=Cache by browser +CompressionOfResources=Compression of HTTP responses +CompressionOfResourcesDesc=For example using the Apache directive "AddOutputFilterByType DEFLATE" +TestNotPossibleWithCurrentBrowsers=Such an automatic detection is not possible with current browsers +DefaultValuesDesc=Here you may define the default value you wish to use when creating a new record, and/or default filters or the sort order when you list records. +DefaultCreateForm=Default values (to use on forms) +DefaultSearchFilters=Default search filters +DefaultSortOrder=Default sort orders +DefaultFocus=Default focus fields +DefaultMandatory=Mandatory form fields +##### Products ##### +ProductSetup=Products module setup +ServiceSetup=Services module setup +ProductServiceSetup=Products and Services modules setup +NumberOfProductShowInSelect=Maximum number of products to show in combo select lists (0=no limit) +ViewProductDescInFormAbility=Display product descriptions in forms (otherwise shown in a tooltip popup) +MergePropalProductCard=Activate in product/service Attached Files tab an option to merge product PDF document to proposal PDF azur if product/service is in the proposal +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=Default barcode type to use for products +SetDefaultBarcodeTypeThirdParties=Default barcode type to use for third parties +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= Product / Service configuration +IsNotADir=is not a directory! +##### Syslog ##### +SyslogSetup=Logs module setup +SyslogOutput=Logs outputs +SyslogFacility=Facility +SyslogLevel=Level +SyslogFilename=File name and path +YouCanUseDOL_DATA_ROOT=You can use DOL_DATA_ROOT/dolibarr.log for a log file in Dolibarr "documents" directory. You can set a different path to store this file. +ErrorUnknownSyslogConstant=Constant %s is not a known Syslog constant +OnlyWindowsLOG_USER=Windows only supports LOG_USER +CompressSyslogs=Compression and backup of debug log files (generated by module Log for debug) +SyslogFileNumberOfSaves=Log backups +ConfigureCleaningCronjobToSetFrequencyOfSaves=Configure cleaning scheduled job to set log backup frequency +##### Donations ##### +DonationsSetup=Donation module setup +DonationsReceiptModel=Template of donation receipt +##### Barcode ##### +BarcodeSetup=Barcode setup +PaperFormatModule=Print format module +BarcodeEncodeModule=Barcode encoding type +CodeBarGenerator=Barcode generator +ChooseABarCode=No generator defined +FormatNotSupportedByGenerator=Format not supported by this generator +BarcodeDescEAN8=Barcode of type EAN8 +BarcodeDescEAN13=Barcode of type EAN13 +BarcodeDescUPC=Barcode of type UPC +BarcodeDescISBN=Barcode of type ISBN +BarcodeDescC39=Barcode of type C39 +BarcodeDescC128=Barcode of type C128 +BarcodeDescDATAMATRIX=Barcode of type Datamatrix +BarcodeDescQRCODE=Barcode of type QR code +GenbarcodeLocation=Bar code generation command line tool (used by internal engine for some bar code types). Must be compatible with "genbarcode".
    For example: /usr/local/bin/genbarcode +BarcodeInternalEngine=Internal engine +BarCodeNumberManager=Manager to auto define barcode numbers +##### Prelevements ##### +WithdrawalsSetup=Setup of module Direct Debit payments +##### ExternalRSS ##### +ExternalRSSSetup=External RSS imports setup +NewRSS=New RSS Feed +RSSUrl=RSS URL +RSSUrlExample=An interesting RSS feed +##### Mailing ##### +MailingSetup=EMailing module setup +MailingEMailFrom=Sender email (From) for emails sent by emailing module +MailingEMailError=Return Email (Errors-to) for emails with errors +MailingDelay=Seconds to wait after sending next message +##### Notification ##### +NotificationSetup=Email Notification module setup +NotificationEMailFrom=Sender email (From) for emails sent by the Notifications module +FixedEmailTarget=Recipient +##### Sendings ##### +SendingsSetup=Shipping module setup +SendingsReceiptModel=Sending receipt model +SendingsNumberingModules=Sendings numbering modules +SendingsAbility=Support shipping sheets for customer deliveries +NoNeedForDeliveryReceipts=In most cases, shipping sheets are used both as sheets for customer deliveries (list of products to send) and sheets that are received and signed by customer. Hence the product deliveries receipt is a duplicated feature and is rarely activated. +FreeLegalTextOnShippings=Free text on shipments +##### Deliveries ##### +DeliveryOrderNumberingModules=Products deliveries receipt numbering module +DeliveryOrderModel=Products deliveries receipt model +DeliveriesOrderAbility=Support products deliveries receipts +FreeLegalTextOnDeliveryReceipts=Free text on delivery receipts +##### FCKeditor ##### +AdvancedEditor=Advanced editor +ActivateFCKeditor=Activate advanced editor for: +FCKeditorForCompany=WYSIWIG creation/edition of elements description and note (except products/services) +FCKeditorForProduct=WYSIWIG creation/edition of products/services description and note +FCKeditorForProductDetails=WYSIWIG creation/edition of products details lines for all entities (proposals, orders, invoices, etc...). Warning: Using this option for this case is seriously not recommended as it can create problems with special characters and page formatting when building PDF files. +FCKeditorForMailing= WYSIWIG creation/edition for mass eMailings (Tools->eMailing) +FCKeditorForUserSignature=WYSIWIG creation/edition of user signature +FCKeditorForMail=WYSIWIG creation/edition for all mail (except Tools->eMailing) +FCKeditorForTicket=WYSIWIG creation/edition for tickets +##### Stock ##### +StockSetup=Stock module setup +IfYouUsePointOfSaleCheckModule=If you use the Point of Sale module (POS) provided by default or an external module, this setup may be ignored by your POS module. Most POS modules are designed by default to create an invoice immediately and decrease stock irrespective of the options here. So if you need or not to have a stock decrease when registering a sale from your POS, check also your POS module setup. +##### Menu ##### +MenuDeleted=Menu deleted +Menus=Menus +TreeMenuPersonalized=Personalized menus +NotTopTreeMenuPersonalized=Personalized menus not linked to a top menu entry +NewMenu=New menu +Menu=Selection of menu +MenuHandler=Menu handler +MenuModule=Source module +HideUnauthorizedMenu= Hide unauthorized menus (gray) +DetailId=Id menu +DetailMenuHandler=Menu handler where to show new menu +DetailMenuModule=Module name if menu entry come from a module +DetailType=Type of menu (top or left) +DetailTitre=Menu label or label code for translation +DetailUrl=URL where menu send you (Absolute URL link or external link with http://) +DetailEnabled=Condition to show or not entry +DetailRight=Condition to display unauthorized grey menus +DetailLangs=Lang file name for label code translation +DetailUser=Intern / Extern / All +Target=Target +DetailTarget=Target for links (_blank top opens a new window) +DetailLevel=Level (-1:top menu, 0:header menu, >0 menu and sub menu) +ModifMenu=Menu change +DeleteMenu=Delete menu entry +ConfirmDeleteMenu=Are you sure you want to delete menu entry %s? +FailedToInitializeMenu=Failed to initialize menu +##### Tax ##### +TaxSetup=Taxes, social or fiscal taxes and dividends module setup +OptionVatMode=VAT due +OptionVATDefault=Standard basis +OptionVATDebitOption=Accrual basis +OptionVatDefaultDesc=VAT is due:
    - on delivery of goods (based on invoice date)
    - on payments for services +OptionVatDebitOptionDesc=VAT is due:
    - on delivery of goods (based on invoice date)
    - on invoice (debit) for services +OptionPaymentForProductAndServices=Cash basis for products and services +OptionPaymentForProductAndServicesDesc=VAT is due:
    - on payment for goods
    - on payments for services +SummaryOfVatExigibilityUsedByDefault=Time of VAT eligibility by default according to chosen option: +OnDelivery=On delivery +OnPayment=On payment +OnInvoice=On invoice +SupposedToBePaymentDate=Payment date used +SupposedToBeInvoiceDate=Invoice date used +Buy=Buy +Sell=Sell +InvoiceDateUsed=Invoice date used +YourCompanyDoesNotUseVAT=Your company has been defined to not use VAT (Home - Setup - Company/Organization), so there is no VAT options to setup. +AccountancyCode=Accounting Code +AccountancyCodeSell=Sale account. code +AccountancyCodeBuy=Purchase account. code +##### Agenda ##### +AgendaSetup=Events and agenda module setup +PasswordTogetVCalExport=Key to authorize export link +PastDelayVCalExport=Do not export event older than +AGENDA_USE_EVENT_TYPE=Use events types (managed in menu Setup -> Dictionaries -> Type of agenda events) +AGENDA_USE_EVENT_TYPE_DEFAULT=Automatically set this default value for type of event in event create form +AGENDA_DEFAULT_FILTER_TYPE=Automatically set this type of event in search filter of agenda view +AGENDA_DEFAULT_FILTER_STATUS=Automatically set this status for events in search filter of agenda view +AGENDA_DEFAULT_VIEW=Which tab do you want to open by default when selecting menu Agenda +AGENDA_REMINDER_EMAIL=Enable event reminder by emails (remind option/delay can be defined on each event). Note: Module %s must be enabled and correctly setup to have reminder sent at the correct frequency. +AGENDA_REMINDER_BROWSER=Enable event reminder on user's browser (when event date is reached, each user is able to refuse this from the browser confirmation question) +AGENDA_REMINDER_BROWSER_SOUND=Enable sound notification +AGENDA_SHOW_LINKED_OBJECT=Show linked object into agenda view +##### Clicktodial ##### +ClickToDialSetup=Click To Dial module setup +ClickToDialUrlDesc=Url called when a click on phone picto is done. In URL, you can use tags
    __PHONETO__ that will be replaced with the phone number of person to call
    __PHONEFROM__ that will be replaced with phone number of calling person (yours)
    __LOGIN__ that will be replaced with clicktodial login (defined on user card)
    __PASS__ that will be replaced with clicktodial password (defined on user card). +ClickToDialDesc=This module makea phone numbers clickable links. A click on the icon will make your phone call the number. This can be used to call a call-center system from Dolibarr that can call the phone number on a SIP system for example. +ClickToDialUseTelLink=Use just a link "tel:" on phone numbers +ClickToDialUseTelLinkDesc=Use this method if your users have a softphone or a software interface installed on the same computer as the browser, and called when you click on a link in your browser that starts with "tel:". If you need a full server solution (no need of local software installation), you must set this to "No" and fill next field. +##### Point Of Sale (CashDesk) ##### +CashDesk=Point of Sale +CashDeskSetup=Point of Sales module setup +CashDeskThirdPartyForSell=Default generic third party to use for sales +CashDeskBankAccountForSell=Default account to use to receive cash payments +CashDeskBankAccountForCheque=Default account to use to receive payments by check +CashDeskBankAccountForCB=Default account to use to receive payments by credit cards +CashDeskBankAccountForSumup=Default bank account to use to receive payments by SumUp +CashDeskDoNotDecreaseStock=Disable stock decrease when a sale is done from Point of Sale (if "no", stock decrease is done for each sale done from POS, irrespective of the option set in module Stock). +CashDeskIdWareHouse=Force and restrict warehouse to use for stock decrease +StockDecreaseForPointOfSaleDisabled=Stock decrease from Point of Sale disabled +StockDecreaseForPointOfSaleDisabledbyBatch=Stock decrease in POS is not compatible with module Serial/Lot management (currently active) so stock decrease is disabled. +CashDeskYouDidNotDisableStockDecease=You did not disable stock decrease when making a sale from Point of Sale. Hence a warehouse is required. +CashDeskForceDecreaseStockLabel=Stock decrease for batch products was forced. +CashDeskForceDecreaseStockDesc=Decrease first by the oldest eatby and sellby dates. +CashDeskReaderKeyCodeForEnter=Key code for "Enter" defined in barcode reader (Example: 13) +##### Bookmark ##### +BookmarkSetup=Bookmark module setup +BookmarkDesc=This module allows you to manage bookmarks. You can also add shortcuts to any Dolibarr pages or external web sites on your left menu. +NbOfBoomarkToShow=Maximum number of bookmarks to show in left menu +##### WebServices ##### +WebServicesSetup=Webservices module setup +WebServicesDesc=By enabling this module, Dolibarr become a web service server to provide miscellaneous web services. +WSDLCanBeDownloadedHere=WSDL descriptor files of provided services can be download here +EndPointIs=SOAP clients must send their requests to the Dolibarr endpoint available at URL +##### API #### +ApiSetup=API module setup +ApiDesc=By enabling this module, Dolibarr become a REST server to provide miscellaneous web services. +ApiProductionMode=Enable production mode (this will activate use of a cache for services management) +ApiExporerIs=You can explore and test the APIs at URL +OnlyActiveElementsAreExposed=Only elements from enabled modules are exposed +ApiKey=Key for API +WarningAPIExplorerDisabled=The API explorer has been disabled. API explorer is not required to provide API services. It is a tool for developer to find/test REST APIs. If you need this tool, go into setup of module API REST to activate it. +##### Bank ##### +BankSetupModule=Bank module setup +FreeLegalTextOnChequeReceipts=Free text on check receipts +BankOrderShow=Display order of bank accounts for countries using "detailed bank number" +BankOrderGlobal=General +BankOrderGlobalDesc=General display order +BankOrderES=Spanish +BankOrderESDesc=Spanish display order +ChequeReceiptsNumberingModule=Check Receipts Numbering Module +##### Multicompany ##### +MultiCompanySetup=Multi-company module setup +##### Suppliers ##### +SuppliersSetup=Vendor module setup +SuppliersCommandModel=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) +SuppliersInvoiceModel=Complete template of Vendor Invoice +SuppliersInvoiceNumberingModel=Vendor invoices numbering models +IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval +##### GeoIPMaxmind ##### +GeoIPMaxmindSetup=GeoIP Maxmind module setup +PathToGeoIPMaxmindCountryDataFile=Path to file containing Maxmind ip to country translation.
    Examples:
    /usr/local/share/GeoIP/GeoIP.dat
    /usr/share/GeoIP/GeoIP.dat
    /usr/share/GeoIP/GeoLite2-Country.mmdb +NoteOnPathLocation=Note that your ip to country data file must be inside a directory your PHP can read (Check your PHP open_basedir setup and filesystem permissions). +YouCanDownloadFreeDatFileTo=You can download a free demo version of the Maxmind GeoIP country file at %s. +YouCanDownloadAdvancedDatFileTo=You can also download a more complete version, with updates, of the Maxmind GeoIP country file at %s. +TestGeoIPResult=Test of a conversion IP -> country +##### Projects ##### +ProjectsNumberingModules=Projects numbering module +ProjectsSetup=Project module setup +ProjectsModelModule=Project reports document model +TasksNumberingModules=Tasks numbering module +TaskModelModule=Tasks reports document model +UseSearchToSelectProject=Wait until a key is pressed before loading content of Project combo list.
    This may improve performance if you have a large number of projects, but it is less convenient. +##### ECM (GED) ##### +##### Fiscal Year ##### +AccountingPeriods=Accounting periods +AccountingPeriodCard=Accounting period +NewFiscalYear=New accounting period +OpenFiscalYear=Open accounting period +CloseFiscalYear=Close accounting period +DeleteFiscalYear=Delete accounting period +ConfirmDeleteFiscalYear=Are you sure to delete this accounting period? +ShowFiscalYear=Show accounting period +AlwaysEditable=Can always be edited +MAIN_APPLICATION_TITLE=Force visible name of application (warning: setting your own name here may break autofill login feature when using DoliDroid mobile application) +NbMajMin=Minimum number of uppercase characters +NbNumMin=Minimum number of numeric characters +NbSpeMin=Minimum number of special characters +NbIteConsecutive=Maximum number of repeating same characters +NoAmbiCaracAutoGeneration=Do not use ambiguous characters ("1","l","i","|","0","O") for automatic generation +SalariesSetup=Setup of module salaries +SortOrder=Sort order +Format=Format +TypePaymentDesc=0:Customer payment type, 1:Vendor payment type, 2:Both customers and suppliers payment type +IncludePath=Include path (defined into variable %s) +ExpenseReportsSetup=Setup of module Expense Reports +TemplatePDFExpenseReports=Document templates to generate expense report document +ExpenseReportsIkSetup=Setup of module Expense Reports - Milles index +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 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 to the tab "Notifications" of a third party to add or remove notifications for contacts/addresses +Threshold=Threshold +BackupDumpWizard=Wizard to build the database dump file +BackupZipWizard=Wizard to build the archive of documents directory +SomethingMakeInstallFromWebNotPossible=Installation of external module is not possible from the web interface for the following reason: +SomethingMakeInstallFromWebNotPossible2=For this reason, process to upgrade described here is a manual process only a privileged user may perform. +InstallModuleFromWebHasBeenDisabledByFile=Install of external module from application has been disabled by your administrator. You must ask him to remove the file %s to allow this feature. +ConfFileMustContainCustom=Installing or building an external module from application need to save the module files into directory %s. To have this directory processed by Dolibarr, you must setup your conf/conf.php to add the 2 directive lines:
    $dolibarr_main_url_root_alt='/custom';
    $dolibarr_main_document_root_alt='%s/custom'; +HighlightLinesOnMouseHover=Highlight table lines when mouse move passes over +HighlightLinesColor=Highlight color of the line when the mouse passes over (use 'ffffff' for no highlight) +HighlightLinesChecked=Highlight color of the line when it is checked (use 'ffffff' for no highlight) +TextTitleColor=Text color of Page title +LinkColor=Color of links +PressF5AfterChangingThis=Press CTRL+F5 on keyboard or clear your browser cache after changing this value to have it effective +NotSupportedByAllThemes=Will works with core themes, may not be supported by external themes +BackgroundColor=Background color +TopMenuBackgroundColor=Background color for Top menu +TopMenuDisableImages=Hide images in Top menu +LeftMenuBackgroundColor=Background color for Left menu +BackgroundTableTitleColor=Background color for Table title line +BackgroundTableTitleTextColor=Text color for Table title line +BackgroundTableTitleTextlinkColor=Text color for Table title link line +BackgroundTableLineOddColor=Background color for odd table lines +BackgroundTableLineEvenColor=Background color for even table lines +MinimumNoticePeriod=Minimum notice period (Your leave request must be done before this delay) +NbAddedAutomatically=Number of days added to counters of users (automatically) each month +EnterAnyCode=This field contains a reference to identify line. Enter any value of your choice, but without special characters. +Enter0or1=Enter 0 or 1 +UnicodeCurrency=Enter here between braces, list of byte number that represent the currency symbol. For example: for $, enter [36] - for brazil real R$ [82,36] - for €, enter [8364] +ColorFormat=The RGB color is in HEX format, eg: FF0000 +PositionIntoComboList=Position of line into combo lists +SellTaxRate=Sale tax rate +RecuperableOnly=Yes for VAT "Not Perceived but Recoverable" dedicated for some state in France. Keep value to "No" in all other cases. +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=Type of template +TemplateIsVisibleByOwnerOnly=Template is visible to owner only +VisibleEverywhere=Visible everywhere +VisibleNowhere=Visible nowhere +FixTZ=TimeZone fix +FillFixTZOnlyIfRequired=Example: +2 (fill only if problem experienced) +ExpectedChecksum=Expected Checksum +CurrentChecksum=Current Checksum +ExpectedSize=Expected size +CurrentSize=Current size +ForcedConstants=Required constant values +MailToSendProposal=Customer proposals +MailToSendOrder=Sales orders +MailToSendInvoice=Customer invoices +MailToSendShipment=Shipments +MailToSendIntervention=Interventions +MailToSendSupplierRequestForQuotation=Quotation request +MailToSendSupplierOrder=Purchase orders +MailToSendSupplierInvoice=Vendor invoices +MailToSendContract=Contracts +MailToThirdparty=Third parties +MailToMember=Members +MailToUser=Users +MailToProject=Projects page +ByDefaultInList=Show by default on list view +YouUseLastStableVersion=You use the latest stable version +TitleExampleForMajorRelease=Example of message you can use to announce this major release (feel free to use it on your web sites) +TitleExampleForMaintenanceRelease=Example of message you can use to announce this maintenance release (feel free to use it on your web sites) +ExampleOfNewsMessageForMajorRelease=Dolibarr ERP & CRM %s is available. Version %s is a major release with a lot of new features for both users and developers. You can download it from the download area of https://www.dolibarr.org portal (subdirectory Stable versions). You can read ChangeLog for complete list of changes. +ExampleOfNewsMessageForMaintenanceRelease=Dolibarr ERP & CRM %s is available. Version %s is a maintenance version, so contains only bug fixes. We recommend all users to upgrade to this version. A maintenance release does not introduce new features or changes to the database. You may download it from the download area of https://www.dolibarr.org portal (subdirectory Stable versions). You can read the ChangeLog for complete list of changes. +MultiPriceRuleDesc=When option "Several levels of prices per product/service" is enabled, you can define different prices (one per price level) for each product. To save you time, here you may enter a rule to autocalculate a price for each level based on the price of the first level, so you will have to only enter a price for the first level for each product. This page is designed to save you time but is useful only if your prices for each level are relative to first level. You can ignore this page in most cases. +ModelModulesProduct=Templates for product documents +ToGenerateCodeDefineAutomaticRuleFirst=To be able to generate codes automatically, you must first define a manager to auto-define the barcode number. +SeeSubstitutionVars=See * note for list of possible substitution variables +SeeChangeLog=See ChangeLog file (english only) +AllPublishers=All publishers +UnknownPublishers=Unknown publishers +AddRemoveTabs=Add or remove tabs +AddDataTables=Add object tables +AddDictionaries=Add dictionaries tables +AddData=Add objects or dictionaries data +AddBoxes=Add widgets +AddSheduledJobs=Add scheduled jobs +AddHooks=Add hooks +AddTriggers=Add triggers +AddMenus=Add menus +AddPermissions=Add permissions +AddExportProfiles=Add export profiles +AddImportProfiles=Add import profiles +AddOtherPagesOrServices=Add other pages or services +AddModels=Add document or numbering templates +AddSubstitutions=Add keys substitutions +DetectionNotPossible=Detection not possible +UrlToGetKeyToUseAPIs=Url to get token to use API (once token has been received it is saved in database user table and must be provided on each API call) +ListOfAvailableAPIs=List of available APIs +activateModuleDependNotSatisfied=Module "%s" depends on module "%s", that is missing, so module "%1$s" may not work correctly. Please install module "%2$s" or disable module "%1$s" if you want to be safe from any surprise +CommandIsNotInsideAllowedCommands=The command you are trying to run is not in the list of allowed commands defined in parameter $dolibarr_main_restrict_os_commands in the conf.php file. +LandingPage=Landing page +SamePriceAlsoForSharedCompanies=If you use a multicompany module, with the choice "Single price", the price will also be the same for all companies if products are shared between environments +ModuleEnabledAdminMustCheckRights=Module has been activated. Permissions for activated module(s) were given to admin users only. You may need to grant permissions to other users or groups manually if necessary. +UserHasNoPermissions=This user has no permissions defined +TypeCdr=Use "None" if the date of payment term is date of invoice plus a delta in days (delta is field "%s")
    Use "At end of month", if, after delta, the date must be increased to reach the end of month (+ an optional "%s" in days)
    Use "Current/Next" to have payment term date being the first Nth of the month after delta (delta is field "%s", N is stored into field "%s") +BaseCurrency=Reference currency of the company (go into setup of company to change this) +WarningNoteModuleInvoiceForFrenchLaw=This module %s is compliant with French laws (Loi Finance 2016). +WarningNoteModulePOSForFrenchLaw=This module %s is compliant with French laws (Loi Finance 2016) because module Non Reversible Logs is automatically activated. +WarningInstallationMayBecomeNotCompliantWithLaw=You are trying to install module %s that is an external module. Activating an external module means you trust the publisher of that module and that you are sure that this module does not adversely impact the behavior of your application, and is compliant with laws of your country (%s). If the module introduces an illegal feature, you become responsible for the use of illegal software. +MAIN_PDF_MARGIN_LEFT=Left margin on PDF +MAIN_PDF_MARGIN_RIGHT=Right margin on PDF +MAIN_PDF_MARGIN_TOP=Top margin on PDF +MAIN_PDF_MARGIN_BOTTOM=Bottom margin on PDF +NothingToSetup=There is no specific setup required for this module. +SetToYesIfGroupIsComputationOfOtherGroups=Set this to yes if this group is a computation of other groups +EnterCalculationRuleIfPreviousFieldIsYes=Enter calculation rule if previous field was set to Yes (For example 'CODEGRP1+CODEGRP2') +SeveralLangugeVariatFound=Several language variants found +RemoveSpecialChars=Remove special characters +COMPANY_AQUARIUM_CLEAN_REGEX=Regex filter to clean value (COMPANY_AQUARIUM_CLEAN_REGEX) +COMPANY_DIGITARIA_CLEAN_REGEX=Regex filter to clean value (COMPANY_DIGITARIA_CLEAN_REGEX) +COMPANY_DIGITARIA_UNIQUE_CODE=Duplicate not allowed +GDPRContact=Data Protection Officer (DPO, Data Privacy or GDPR contact) +GDPRContactDesc=If you store data about European companies/citizens, you can name the contact who is responsible for the General Data Protection Regulation here +HelpOnTooltip=Help text to show on tooltip +HelpOnTooltipDesc=Put text or a translation key here for the text to show in a tooltip when this field appears in a form +YouCanDeleteFileOnServerWith=You can delete this file on the server with Command Line:
    %s +ChartLoaded=Chart of account loaded +SocialNetworkSetup=Setup of module Social Networks +EnableFeatureFor=Enable features for %s +VATIsUsedIsOff=Note: The option to use Sales Tax or VAT has been set to Off in the menu %s - %s, so Sales tax or Vat used will always be 0 for sales. +SwapSenderAndRecipientOnPDF=Swap sender and recipient address position on PDF documents +FeatureSupportedOnTextFieldsOnly=Warning, feature supported on text fields only. Also an URL parameter action=create or action=edit must be set OR page name must end with 'new.php' to trigger this feature. +EmailCollector=Email collector +EmailCollectorDescription=Add a scheduled job and a setup page to scan regularly email boxes (using IMAP protocol) and record emails received into your application, at the right place and/or create some records automatically (like leads). +NewEmailCollector=New Email Collector +EMailHost=Host of email IMAP server +MailboxSourceDirectory=Mailbox source directory +MailboxTargetDirectory=Mailbox target directory +EmailcollectorOperations=Operations to do by collector +MaxEmailCollectPerCollect=Max number of emails collected per collect +CollectNow=Collect now +ConfirmCloneEmailCollector=Are you sure you want to clone the Email collector %s ? +DateLastCollectResult=Date latest collect tried +DateLastcollectResultOk=Date latest collect successfull +LastResult=Latest result +EmailCollectorConfirmCollectTitle=Email collect confirmation +EmailCollectorConfirmCollect=Do you want to run the collection for this collector now ? +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) +CodeLastResult=Latest result code +NbOfEmailsInInbox=Number of emails in source directory +LoadThirdPartyFromName=Load third party searching on %s (load only) +LoadThirdPartyFromNameOrCreate=Load third party searching on %s (create if not found) +WithDolTrackingID=Dolibarr Reference found in Message ID +WithoutDolTrackingID=Dolibarr Reference not found in Message ID +FormatZip=Zip +MainMenuCode=Menu entry code (mainmenu) +ECMAutoTree=Show automatic ECM tree +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. +OpeningHours=Opening hours +OpeningHoursDesc=Enter here the regular opening hours of your company. +ResourceSetup=Configuration of Resource module +UseSearchToSelectResource=Use a search form to choose a resource (rather than a drop-down list). +DisabledResourceLinkUser=Disable feature to link a resource to users +DisabledResourceLinkContact=Disable feature to link a resource to contacts +EnableResourceUsedInEventCheck=Enable feature to check if a resource is in use in an event +ConfirmUnactivation=Confirm module reset +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. +RootCategoryForProductsToSell=Root category of products to sell +RootCategoryForProductsToSellDesc=If defined, only products inside this category or childs of this category will be available in the Point Of Sale +DebugBar=Debug Bar +DebugBarDesc=Toolbar that comes with a plenty of tools to simplify debugging +DebugBarSetup=DebugBar Setup +GeneralOptions=General Options +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 +ModuleActivated=Module %s is activated and slows the interface +EXPORTS_SHARE_MODELS=Export models are share with everybody +ExportSetup=Setup of module Export +ImportSetup=Setup of module Import +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/. +EmailCollectorTargetDir=It may be a desired behaviour to move the email into another tag/directory when it was processed successfully. Just set a value here to use this feature. Note that you must also use a read/write login account. +EmailCollectorLoadThirdPartyHelp=You can use this action to use the email content to find and load an existing thirdparty in your database. The found (or created) thirdparty will be used for following actions that need it. In the parameter field you can use for example 'EXTRACT:BODY:Name:\\s([^\\s]*)' if you want to extract the name of the thirdparty from a string 'Name: name to find' found into the body. +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 +RESTRICT_ON_IP=Allow access to some host IP only (wildcard not allowed, use space between values). Empty means every hosts can access. +IPListExample=127.0.0.1 192.168.0.2 [::1] +BaseOnSabeDavVersion=Based on the library SabreDAV version +NotAPublicIp=Not a public IP +MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server (done 1 time only after installation) to allow the foundation to count the number of Dolibarr installation. +FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled +EmailTemplate=Template for email +EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/km_KH/agenda.lang b/htdocs/langs/km_KH/agenda.lang new file mode 100644 index 00000000000..2031241d2c9 --- /dev/null +++ b/htdocs/langs/km_KH/agenda.lang @@ -0,0 +1,154 @@ +# Dolibarr language file - Source file is en_US - agenda +IdAgenda=ID event +Actions=Events +Agenda=Agenda +TMenuAgenda=Agenda +Agendas=Agendas +LocalAgenda=Internal calendar +ActionsOwnedBy=Event owned by +ActionsOwnedByShort=Owner +AffectedTo=Assigned to +Event=Event +Events=Events +EventsNb=Number of events +ListOfActions=List of events +EventReports=Event reports +Location=Location +ToUserOfGroup=To any user in group +EventOnFullDay=Event on all day(s) +MenuToDoActions=All incomplete events +MenuDoneActions=All terminated events +MenuToDoMyActions=My incomplete events +MenuDoneMyActions=My terminated events +ListOfEvents=List of events (internal calendar) +ActionsAskedBy=Events reported by +ActionsToDoBy=Events assigned to +ActionsDoneBy=Events done by +ActionAssignedTo=Event assigned to +ViewCal=Month view +ViewDay=Day view +ViewWeek=Week view +ViewPerUser=Per user view +ViewPerType=Per type view +AutoActions= Automatic filling +AgendaAutoActionDesc= Here you may define events which you want Dolibarr to create automatically in Agenda. If nothing is checked, only manual actions will be included in logs and displayed in Agenda. Automatic tracking of business actions done on objects (validation, status change) will not be saved. +AgendaSetupOtherDesc= This page provides options to allow the export of your Dolibarr events into an external calendar (Thunderbird, Google Calendar etc...) +AgendaExtSitesDesc=This page allows to declare external sources of calendars to see their events into Dolibarr agenda. +ActionsEvents=Events for which Dolibarr will create an action in agenda automatically +EventRemindersByEmailNotEnabled=Event reminders by email was not enabled into %s module setup. +##### Agenda event labels ##### +NewCompanyToDolibarr=Third party %s created +COMPANY_DELETEInDolibarr=Third party %s deleted +ContractValidatedInDolibarr=Contract %s validated +CONTRACT_DELETEInDolibarr=Contract %s deleted +PropalClosedSignedInDolibarr=Proposal %s signed +PropalClosedRefusedInDolibarr=Proposal %s refused +PropalValidatedInDolibarr=Proposal %s validated +PropalClassifiedBilledInDolibarr=Proposal %s classified billed +InvoiceValidatedInDolibarr=Invoice %s validated +InvoiceValidatedInDolibarrFromPos=Invoice %s validated from POS +InvoiceBackToDraftInDolibarr=Invoice %s go back to draft status +InvoiceDeleteDolibarr=Invoice %s deleted +InvoicePaidInDolibarr=Invoice %s changed to paid +InvoiceCanceledInDolibarr=Invoice %s canceled +MemberValidatedInDolibarr=Member %s validated +MemberModifiedInDolibarr=Member %s modified +MemberResiliatedInDolibarr=Member %s terminated +MemberDeletedInDolibarr=Member %s deleted +MemberSubscriptionAddedInDolibarr=Subscription %s for member %s added +MemberSubscriptionModifiedInDolibarr=Subscription %s for member %s modified +MemberSubscriptionDeletedInDolibarr=Subscription %s for member %s deleted +ShipmentValidatedInDolibarr=Shipment %s validated +ShipmentClassifyClosedInDolibarr=Shipment %s classified billed +ShipmentUnClassifyCloseddInDolibarr=Shipment %s classified re-open +ShipmentBackToDraftInDolibarr=Shipment %s go back to draft status +ShipmentDeletedInDolibarr=Shipment %s deleted +OrderCreatedInDolibarr=Order %s created +OrderValidatedInDolibarr=Order %s validated +OrderDeliveredInDolibarr=Order %s classified delivered +OrderCanceledInDolibarr=Order %s canceled +OrderBilledInDolibarr=Order %s classified billed +OrderApprovedInDolibarr=Order %s approved +OrderRefusedInDolibarr=Order %s refused +OrderBackToDraftInDolibarr=Order %s go back to draft status +ProposalSentByEMail=Commercial proposal %s sent by email +ContractSentByEMail=Contract %s sent by email +OrderSentByEMail=Sales order %s sent by email +InvoiceSentByEMail=Customer invoice %s sent by email +SupplierOrderSentByEMail=Purchase order %s sent by email +ORDER_SUPPLIER_DELETEInDolibarr=Purchase order %s deleted +SupplierInvoiceSentByEMail=Vendor invoice %s sent by email +ShippingSentByEMail=Shipment %s sent by email +ShippingValidated= Shipment %s validated +InterventionSentByEMail=Intervention %s sent by email +ProposalDeleted=Proposal deleted +OrderDeleted=Order deleted +InvoiceDeleted=Invoice deleted +DraftInvoiceDeleted=Draft invoice deleted +PRODUCT_CREATEInDolibarr=Product %s created +PRODUCT_MODIFYInDolibarr=Product %s modified +PRODUCT_DELETEInDolibarr=Product %s deleted +HOLIDAY_CREATEInDolibarr=Request for leave %s created +HOLIDAY_MODIFYInDolibarr=Request for leave %s modified +HOLIDAY_APPROVEInDolibarr=Request for leave %s approved +HOLIDAY_VALIDATEInDolibarr=Request for leave %s validated +HOLIDAY_DELETEInDolibarr=Request for leave %s deleted +EXPENSE_REPORT_CREATEInDolibarr=Expense report %s created +EXPENSE_REPORT_VALIDATEInDolibarr=Expense report %s validated +EXPENSE_REPORT_APPROVEInDolibarr=Expense report %s approved +EXPENSE_REPORT_DELETEInDolibarr=Expense report %s deleted +EXPENSE_REPORT_REFUSEDInDolibarr=Expense report %s refused +PROJECT_CREATEInDolibarr=Project %s created +PROJECT_MODIFYInDolibarr=Project %s modified +PROJECT_DELETEInDolibarr=Project %s deleted +TICKET_CREATEInDolibarr=Ticket %s created +TICKET_MODIFYInDolibarr=Ticket %s modified +TICKET_ASSIGNEDInDolibarr=Ticket %s assigned +TICKET_CLOSEInDolibarr=Ticket %s closed +TICKET_DELETEInDolibarr=Ticket %s deleted +BOM_VALIDATEInDolibarr=BOM validated +BOM_UNVALIDATEInDolibarr=BOM unvalidated +BOM_CLOSEInDolibarr=BOM disabled +BOM_REOPENInDolibarr=BOM reopen +BOM_DELETEInDolibarr=BOM deleted +MRP_MO_VALIDATEInDolibarr=MO validated +MRP_MO_PRODUCEDInDolibarr=MO produced +MRP_MO_DELETEInDolibarr=MO deleted +##### End agenda events ##### +AgendaModelModule=Document templates for event +DateActionStart=Start date +DateActionEnd=End date +AgendaUrlOptions1=You can also add following parameters to filter output: +AgendaUrlOptions3=logina=%s to restrict output to actions owned by a user %s. +AgendaUrlOptionsNotAdmin=logina=!%s to restrict output to actions not owned by user %s. +AgendaUrlOptions4=logint=%s to restrict output to actions assigned to user %s (owner and others). +AgendaUrlOptionsProject=project=__PROJECT_ID__ to restrict output to actions linked to project __PROJECT_ID__. +AgendaUrlOptionsNotAutoEvent=notactiontype=systemauto to exclude automatic events. +AgendaUrlOptionsIncludeHolidays=includeholidays=1 to include events of holidays. +AgendaShowBirthdayEvents=Show birthdays of contacts +AgendaHideBirthdayEvents=Hide birthdays of contacts +Busy=Busy +ExportDataset_event1=List of agenda events +DefaultWorkingDays=Default working days range in week (Example: 1-5, 1-6) +DefaultWorkingHours=Default working hours in day (Example: 9-18) +# External Sites ical +ExportCal=Export calendar +ExtSites=Import external calendars +ExtSitesEnableThisTool=Show external calendars (defined in global setup) in Agenda. Does not affect external calendars defined by users. +ExtSitesNbOfAgenda=Number of calendars +AgendaExtNb=Calendar no. %s +ExtSiteUrlAgenda=URL to access .ical file +ExtSiteNoLabel=No Description +VisibleTimeRange=Visible time range +VisibleDaysRange=Visible days range +AddEvent=Create event +MyAvailability=My availability +ActionType=Event type +DateActionBegin=Start event date +ConfirmCloneEvent=Are you sure you want to clone the event %s? +RepeatEvent=Repeat event +EveryWeek=Every week +EveryMonth=Every month +DayOfMonth=Day of month +DayOfWeek=Day of week +DateStartPlusOne=Date start + 1 hour diff --git a/htdocs/langs/km_KH/banks.lang b/htdocs/langs/km_KH/banks.lang new file mode 100644 index 00000000000..e54239e9fb2 --- /dev/null +++ b/htdocs/langs/km_KH/banks.lang @@ -0,0 +1,175 @@ +# Dolibarr language file - Source file is en_US - banks +Bank=Bank +MenuBankCash=Banks | Cash +MenuVariousPayment=Miscellaneous payments +MenuNewVariousPayment=New Miscellaneous payment +BankName=Bank name +FinancialAccount=Account +BankAccount=Bank account +BankAccounts=Bank accounts +BankAccountsAndGateways=Bank accounts | Gateways +ShowAccount=Show Account +AccountRef=Financial account ref +AccountLabel=Financial account label +CashAccount=Cash account +CashAccounts=Cash accounts +CurrentAccounts=Current accounts +SavingAccounts=Savings accounts +ErrorBankLabelAlreadyExists=Financial account label already exists +BankBalance=Balance +BankBalanceBefore=Balance before +BankBalanceAfter=Balance after +BalanceMinimalAllowed=Minimum allowed balance +BalanceMinimalDesired=Minimum desired balance +InitialBankBalance=Initial balance +EndBankBalance=End balance +CurrentBalance=Current balance +FutureBalance=Future balance +ShowAllTimeBalance=Show balance from start +AllTime=From start +Reconciliation=Reconciliation +RIB=Bank Account Number +IBAN=IBAN number +BIC=BIC/SWIFT code +SwiftValid=BIC/SWIFT valid +SwiftVNotalid=BIC/SWIFT not valid +IbanValid=BAN valid +IbanNotValid=BAN not valid +StandingOrders=Direct Debit orders +StandingOrder=Direct debit order +AccountStatement=Account statement +AccountStatementShort=Statement +AccountStatements=Account statements +LastAccountStatements=Last account statements +IOMonthlyReporting=Monthly reporting +BankAccountDomiciliation=Bank address +BankAccountCountry=Account country +BankAccountOwner=Account owner name +BankAccountOwnerAddress=Account owner address +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=Create account +NewBankAccount=New account +NewFinancialAccount=New financial account +MenuNewFinancialAccount=New financial account +EditFinancialAccount=Edit account +LabelBankCashAccount=Bank or cash label +AccountType=Account type +BankType0=Savings account +BankType1=Current or credit card account +BankType2=Cash account +AccountsArea=Accounts area +AccountCard=Account card +DeleteAccount=Delete account +ConfirmDeleteAccount=Are you sure you want to delete this account? +Account=Account +BankTransactionByCategories=Bank entries by categories +BankTransactionForCategory=Bank entries for category %s +RemoveFromRubrique=Remove link with category +RemoveFromRubriqueConfirm=Are you sure you want to remove link between the entry and the category? +ListBankTransactions=List of bank entries +IdTransaction=Transaction ID +BankTransactions=Bank entries +BankTransaction=Bank entry +ListTransactions=List entries +ListTransactionsByCategory=List entries/category +TransactionsToConciliate=Entries to reconcile +TransactionsToConciliateShort=To reconcile +Conciliable=Can be reconciled +Conciliate=Reconcile +Conciliation=Reconciliation +SaveStatementOnly=Save statement only +ReconciliationLate=Reconciliation late +IncludeClosedAccount=Include closed accounts +OnlyOpenedAccount=Only open accounts +AccountToCredit=Account to credit +AccountToDebit=Account to debit +DisableConciliation=Disable reconciliation feature for this account +ConciliationDisabled=Reconciliation feature disabled +LinkedToAConciliatedTransaction=Linked to a conciliated entry +StatusAccountOpened=Open +StatusAccountClosed=Closed +AccountIdShort=Number +LineRecord=Transaction +AddBankRecord=Add entry +AddBankRecordLong=Add entry manually +Conciliated=Reconciled +ConciliatedBy=Reconciled by +DateConciliating=Reconcile date +BankLineConciliated=Entry reconciled with bank receipt +Reconciled=Reconciled +NotReconciled=Not reconciled +CustomerInvoicePayment=Customer payment +SupplierInvoicePayment=Vendor payment +SubscriptionPayment=Subscription payment +WithdrawalPayment=Debit payment order +SocialContributionPayment=Social/fiscal tax payment +BankTransfer=Bank transfer +BankTransfers=Bank transfers +MenuBankInternalTransfer=Internal transfer +TransferDesc=Transfer from one account to another, Dolibarr will write two records (a debit in source account and a credit in target account). The same amount (except sign), label and date will be used for this transaction) +TransferFrom=From +TransferTo=To +TransferFromToDone=A transfer from %s to %s of %s %s has been recorded. +CheckTransmitter=Transmitter +ValidateCheckReceipt=Validate this check receipt? +ConfirmValidateCheckReceipt=Are you sure you want to validate this check receipt, no change will be possible once this is done? +DeleteCheckReceipt=Delete this check receipt? +ConfirmDeleteCheckReceipt=Are you sure you want to delete this check receipt? +BankChecks=Bank checks +BankChecksToReceipt=Checks awaiting deposit +BankChecksToReceiptShort=Checks awaiting deposit +ShowCheckReceipt=Show check deposit receipt +NumberOfCheques=No. of check +DeleteTransaction=Delete entry +ConfirmDeleteTransaction=Are you sure you want to delete this entry? +ThisWillAlsoDeleteBankRecord=This will also delete generated bank entry +BankMovements=Movements +PlannedTransactions=Planned entries +Graph=Graphics +ExportDataset_banque_1=Bank entries and account statement +ExportDataset_banque_2=Deposit slip +TransactionOnTheOtherAccount=Transaction on the other account +PaymentNumberUpdateSucceeded=Payment number updated successfully +PaymentNumberUpdateFailed=Payment number could not be updated +PaymentDateUpdateSucceeded=Payment date updated successfully +PaymentDateUpdateFailed=Payment date could not be updated +Transactions=Transactions +BankTransactionLine=Bank entry +AllAccounts=All bank and cash accounts +BackToAccount=Back to account +ShowAllAccounts=Show for all accounts +FutureTransaction=Future transaction. Unable to reconcile. +SelectChequeTransactionAndGenerate=Select/filter checks to include in the check deposit receipt and click on "Create". +InputReceiptNumber=Choose the bank statement related with the conciliation. Use a sortable numeric value: YYYYMM or YYYYMMDD +EventualyAddCategory=Eventually, specify a category in which to classify the records +ToConciliate=To reconcile? +ThenCheckLinesAndConciliate=Then, check the lines present in the bank statement and click +DefaultRIB=Default BAN +AllRIB=All BAN +LabelRIB=BAN Label +NoBANRecord=No BAN record +DeleteARib=Delete BAN record +ConfirmDeleteRib=Are you sure you want to delete this BAN record? +RejectCheck=Check returned +ConfirmRejectCheck=Are you sure you want to mark this check as rejected? +RejectCheckDate=Date the check was returned +CheckRejected=Check returned +CheckRejectedAndInvoicesReopened=Check returned and invoices re-open +BankAccountModelModule=Document templates for bank accounts +DocumentModelSepaMandate=Template of SEPA mandate. Useful for European countries in EEC only. +DocumentModelBan=Template to print a page with BAN information. +NewVariousPayment=New miscellaneous payment +VariousPayment=Miscellaneous payment +VariousPayments=Miscellaneous payments +ShowVariousPayment=Show miscellaneous payment +AddVariousPayment=Add miscellaneous payment +SEPAMandate=SEPA mandate +YourSEPAMandate=Your SEPA mandate +FindYourSEPAMandate=This is your SEPA mandate to authorize our company to make direct debit order to your bank. Return it signed (scan of the signed document) or send it by mail to +AutoReportLastAccountStatement=Automatically fill the field 'number of bank statement' with last statement number when making reconciliation +CashControl=POS cash fence +NewCashFence=New cash fence +BankColorizeMovement=Colorize movements +BankColorizeMovementDesc=If this function is enable, you can choose specific background color for debit or credit movements +BankColorizeMovementName1=Background color for debit movement +BankColorizeMovementName2=Background color for credit movement diff --git a/htdocs/langs/km_KH/bills.lang b/htdocs/langs/km_KH/bills.lang new file mode 100644 index 00000000000..9f11d8ecf87 --- /dev/null +++ b/htdocs/langs/km_KH/bills.lang @@ -0,0 +1,574 @@ +# Dolibarr language file - Source file is en_US - bills +Bill=Invoice +Bills=Invoices +BillsCustomers=Customer invoices +BillsCustomer=Customer invoice +BillsSuppliers=Vendor invoices +BillsCustomersUnpaid=Unpaid customer invoices +BillsCustomersUnpaidForCompany=Unpaid customer invoices for %s +BillsSuppliersUnpaid=Unpaid vendor invoices +BillsSuppliersUnpaidForCompany=Unpaid vendors invoices for %s +BillsLate=Late payments +BillsStatistics=Customers invoices statistics +BillsStatisticsSuppliers=Vendors invoices statistics +DisabledBecauseDispatchedInBookkeeping=Disabled because invoice was dispatched into bookkeeping +DisabledBecauseNotLastInvoice=Disabled because invoice is not erasable. Some invoices were recorded after this one and it will create holes in the counter. +DisabledBecauseNotErasable=Disabled because cannot be erased +InvoiceStandard=Standard invoice +InvoiceStandardAsk=Standard invoice +InvoiceStandardDesc=This kind of invoice is the common invoice. +InvoiceDeposit=Down payment invoice +InvoiceDepositAsk=Down payment invoice +InvoiceDepositDesc=This kind of invoice is done when a down payment has been received. +InvoiceProForma=Proforma invoice +InvoiceProFormaAsk=Proforma invoice +InvoiceProFormaDesc=Proforma invoice is an image of a true invoice but has no accountancy value. +InvoiceReplacement=Replacement invoice +InvoiceReplacementAsk=Replacement invoice for invoice +InvoiceReplacementDesc=Replacement invoice is used to completely replace an invoice with no payment already received.

    Note: Only invoices with no payment on it can be replaced. If the invoice you replace is not yet closed, it will be automatically closed to 'abandoned'. +InvoiceAvoir=Credit note +InvoiceAvoirAsk=Credit note to correct invoice +InvoiceAvoirDesc=The credit note is a negative invoice used to correct the fact that an invoice shows an amount that differs from the amount actually paid (eg the customer paid too much by mistake, or will not pay the complete amount since some products were returned). +invoiceAvoirWithLines=Create Credit Note with lines from the origin invoice +invoiceAvoirWithPaymentRestAmount=Create Credit Note with remaining unpaid of origin invoice +invoiceAvoirLineWithPaymentRestAmount=Credit Note for remaining unpaid amount +ReplaceInvoice=Replace invoice %s +ReplacementInvoice=Replacement invoice +ReplacedByInvoice=Replaced by invoice %s +ReplacementByInvoice=Replaced by invoice +CorrectInvoice=Correct invoice %s +CorrectionInvoice=Correction invoice +UsedByInvoice=Used to pay invoice %s +ConsumedBy=Consumed by +NotConsumed=Not consumed +NoReplacableInvoice=No replaceable invoices +NoInvoiceToCorrect=No invoice to correct +InvoiceHasAvoir=Was source of one or several credit notes +CardBill=Invoice card +PredefinedInvoices=Predefined Invoices +Invoice=Invoice +PdfInvoiceTitle=Invoice +Invoices=Invoices +InvoiceLine=Invoice line +InvoiceCustomer=Customer invoice +CustomerInvoice=Customer invoice +CustomersInvoices=Customers invoices +SupplierInvoice=Vendor invoice +SuppliersInvoices=Vendors invoices +SupplierBill=Vendor invoice +SupplierBills=suppliers invoices +Payment=Payment +PaymentBack=Refund +CustomerInvoicePaymentBack=Refund +Payments=Payments +PaymentsBack=Refunds +paymentInInvoiceCurrency=in invoices currency +PaidBack=Paid back +DeletePayment=Delete payment +ConfirmDeletePayment=Are you sure you want to delete this payment? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? +ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? +ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. +SupplierPayments=Vendor payments +ReceivedPayments=Received payments +ReceivedCustomersPayments=Payments received from customers +PayedSuppliersPayments=Payments paid to vendors +ReceivedCustomersPaymentsToValid=Received customers payments to validate +PaymentsReportsForYear=Payments reports for %s +PaymentsReports=Payments reports +PaymentsAlreadyDone=Payments already done +PaymentsBackAlreadyDone=Refunds already done +PaymentRule=Payment rule +PaymentMode=Payment Type +PaymentTypeDC=Debit/Credit Card +PaymentTypePP=PayPal +IdPaymentMode=Payment Type (id) +CodePaymentMode=Payment Type (code) +LabelPaymentMode=Payment Type (label) +PaymentModeShort=Payment Type +PaymentTerm=Payment Term +PaymentConditions=Payment Terms +PaymentConditionsShort=Payment Terms +PaymentAmount=Payment amount +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' +ClassifyUnBilled=Classify 'Unbilled' +CreateBill=Create Invoice +CreateCreditNote=Create credit note +AddBill=Create invoice or credit note +AddToDraftInvoices=Add to draft invoice +DeleteBill=Delete invoice +SearchACustomerInvoice=Search for a customer invoice +SearchASupplierInvoice=Search for a vendor invoice +CancelBill=Cancel an invoice +SendRemindByMail=Send reminder by email +DoPayment=Enter payment +DoPaymentBack=Enter refund +ConvertToReduc=Mark as credit available +ConvertExcessReceivedToReduc=Convert excess received into available credit +ConvertExcessPaidToReduc=Convert excess paid into available discount +EnterPaymentReceivedFromCustomer=Enter payment received from customer +EnterPaymentDueToCustomer=Make payment due to customer +DisabledBecauseRemainderToPayIsZero=Disabled because remaining unpaid is zero +PriceBase=Price base +BillStatus=Invoice status +StatusOfGeneratedInvoices=Status of generated invoices +BillStatusDraft=Draft (needs to be validated) +BillStatusPaid=Paid +BillStatusPaidBackOrConverted=Credit note refund or marked as credit available +BillStatusConverted=Paid (ready for consumption in final invoice) +BillStatusCanceled=Abandoned +BillStatusValidated=Validated (needs to be paid) +BillStatusStarted=Started +BillStatusNotPaid=Not paid +BillStatusNotRefunded=Not refunded +BillStatusClosedUnpaid=Closed (unpaid) +BillStatusClosedPaidPartially=Paid (partially) +BillShortStatusDraft=Draft +BillShortStatusPaid=Paid +BillShortStatusPaidBackOrConverted=Refunded or converted +Refunded=Refunded +BillShortStatusConverted=Paid +BillShortStatusCanceled=Abandoned +BillShortStatusValidated=Validated +BillShortStatusStarted=Started +BillShortStatusNotPaid=Not paid +BillShortStatusNotRefunded=Not refunded +BillShortStatusClosedUnpaid=Closed +BillShortStatusClosedPaidPartially=Paid (partially) +PaymentStatusToValidShort=To validate +ErrorVATIntraNotConfigured=Intra-Community VAT number not yet defined +ErrorNoPaiementModeConfigured=No default payment type defined. Go to Invoice module setup to fix this. +ErrorCreateBankAccount=Create a bank account, then go to Setup panel of Invoice module to define payment types +ErrorBillNotFound=Invoice %s does not exist +ErrorInvoiceAlreadyReplaced=Error, you tried to validate an invoice to replace invoice %s. But this one has already been replaced by invoice %s. +ErrorDiscountAlreadyUsed=Error, discount already used +ErrorInvoiceAvoirMustBeNegative=Error, correct invoice must have a negative amount +ErrorInvoiceOfThisTypeMustBePositive=Error, this type of invoice must have an amount excluding tax positive (or null) +ErrorCantCancelIfReplacementInvoiceNotValidated=Error, can't cancel an invoice that has been replaced by another invoice that is still in draft status +ErrorThisPartOrAnotherIsAlreadyUsedSoDiscountSerieCantBeRemoved=This part or another is already used so discount series cannot be removed. +BillFrom=From +BillTo=To +ActionsOnBill=Actions on invoice +RecurringInvoiceTemplate=Template / Recurring invoice +NoQualifiedRecurringInvoiceTemplateFound=No recurring template invoice qualified for generation. +FoundXQualifiedRecurringInvoiceTemplate=Found %s recurring template invoice(s) qualified for generation. +NotARecurringInvoiceTemplate=Not a recurring template invoice +NewBill=New invoice +LastBills=Latest %s invoices +LatestTemplateInvoices=Latest %s template invoices +LatestCustomerTemplateInvoices=Latest %s customer template invoices +LatestSupplierTemplateInvoices=Latest %s vendor template invoices +LastCustomersBills=Latest %s customer invoices +LastSuppliersBills=Latest %s vendor invoices +AllBills=All invoices +AllCustomerTemplateInvoices=All template invoices +OtherBills=Other invoices +DraftBills=Draft invoices +CustomersDraftInvoices=Customer draft invoices +SuppliersDraftInvoices=Vendor draft invoices +Unpaid=Unpaid +ErrorNoPaymentDefined=Error No payment defined +ConfirmDeleteBill=Are you sure you want to delete this invoice? +ConfirmValidateBill=Are you sure you want to validate this invoice with reference %s? +ConfirmUnvalidateBill=Are you sure you want to change invoice %s to draft status? +ConfirmClassifyPaidBill=Are you sure you want to change invoice %s to status paid? +ConfirmCancelBill=Are you sure you want to cancel invoice %s? +ConfirmCancelBillQuestion=Why do you want to classify this invoice 'abandoned'? +ConfirmClassifyPaidPartially=Are you sure you want to change invoice %s to status paid? +ConfirmClassifyPaidPartiallyQuestion=This invoice has not been paid completely. What is the reason for closing this invoice? +ConfirmClassifyPaidPartiallyReasonAvoir=Remaining unpaid (%s %s) is a discount granted because payment was made before term. I regularize the VAT with a credit note. +ConfirmClassifyPaidPartiallyReasonDiscount=Remaining unpaid (%s %s) is a discount granted because payment was made before term. +ConfirmClassifyPaidPartiallyReasonDiscountNoVat=Remaining unpaid (%s %s) is a discount granted because payment was made before term. I accept to lose the VAT on this discount. +ConfirmClassifyPaidPartiallyReasonDiscountVat=Remaining unpaid (%s %s) is a discount granted because payment was made before term. I recover the VAT on this discount without a credit note. +ConfirmClassifyPaidPartiallyReasonBadCustomer=Bad customer +ConfirmClassifyPaidPartiallyReasonProductReturned=Products partially returned +ConfirmClassifyPaidPartiallyReasonOther=Amount abandoned for other reason +ConfirmClassifyPaidPartiallyReasonDiscountNoVatDesc=This choice is possible if your invoice has been provided with suitable comments. (Example «Only the tax corresponding to the price that has been actually paid gives rights to deduction») +ConfirmClassifyPaidPartiallyReasonDiscountVatDesc=In some countries, this choice might be possible only if your invoice contains correct notes. +ConfirmClassifyPaidPartiallyReasonAvoirDesc=Use this choice if all other does not suit +ConfirmClassifyPaidPartiallyReasonBadCustomerDesc=A bad customer is a customer that refuses to pay his debt. +ConfirmClassifyPaidPartiallyReasonProductReturnedDesc=This choice is used when payment is not complete because some of products were returned +ConfirmClassifyPaidPartiallyReasonOtherDesc=Use this choice if all others are not suitable, for example in following situation:
    - payment not complete because some products were shipped back
    - amount claimed too important because a discount was forgotten
    In all cases, amount over-claimed must be corrected in accountancy system by creating a credit note. +ConfirmClassifyAbandonReasonOther=Other +ConfirmClassifyAbandonReasonOtherDesc=This choice will be used in all other cases. For example because you plan to create a replacing invoice. +ConfirmCustomerPayment=Do you confirm this payment input for %s %s? +ConfirmSupplierPayment=Do you confirm this payment input for %s %s? +ConfirmValidatePayment=Are you sure you want to validate this payment? No change can be made once payment is validated. +ValidateBill=Validate invoice +UnvalidateBill=Unvalidate invoice +NumberOfBills=No. of invoices +NumberOfBillsByMonth=No. of invoices per month +AmountOfBills=Amount of invoices +AmountOfBillsHT=Amount of invoices (net of tax) +AmountOfBillsByMonthHT=Amount of invoices by month (net of tax) +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices +RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation +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 +AlreadyPaid=Already paid +AlreadyPaidBack=Already paid back +AlreadyPaidNoCreditNotesNoDeposits=Already paid (without credit notes and down payments) +Abandoned=Abandoned +RemainderToPay=Remaining unpaid +RemainderToTake=Remaining amount to take +RemainderToPayBack=Remaining amount to refund +Rest=Pending +AmountExpected=Amount claimed +ExcessReceived=Excess received +ExcessPaid=Excess paid +EscompteOffered=Discount offered (payment before term) +EscompteOfferedShort=Discount +SendBillRef=Submission of invoice %s +SendReminderBillRef=Submission of invoice %s (reminder) +StandingOrders=Direct debit orders +StandingOrder=Direct debit order +NoDraftBills=No draft invoices +NoOtherDraftBills=No other draft invoices +NoDraftInvoices=No draft invoices +RefBill=Invoice ref +ToBill=To bill +RemainderToBill=Remainder to bill +SendBillByMail=Send invoice by email +SendReminderBillByMail=Send reminder by email +RelatedCommercialProposals=Related commercial proposals +RelatedRecurringCustomerInvoices=Related recurring customer invoices +MenuToValid=To valid +DateMaxPayment=Payment due on +DateInvoice=Invoice date +DatePointOfTax=Point of tax +NoInvoice=No invoice +ClassifyBill=Classify invoice +SupplierBillsToPay=Unpaid vendor invoices +CustomerBillsUnpaid=Unpaid customer invoices +NonPercuRecuperable=Non-recoverable +SetConditions=Set Payment Terms +SetMode=Set Payment Type +SetRevenuStamp=Set revenue stamp +Billed=Billed +RecurringInvoices=Recurring invoices +RepeatableInvoice=Template invoice +RepeatableInvoices=Template invoices +Repeatable=Template +Repeatables=Templates +ChangeIntoRepeatableInvoice=Convert into template invoice +CreateRepeatableInvoice=Create template invoice +CreateFromRepeatableInvoice=Create from template invoice +CustomersInvoicesAndInvoiceLines=Customer invoices and invoice details +CustomersInvoicesAndPayments=Customer invoices and payments +ExportDataset_invoice_1=Customer invoices and invoice details +ExportDataset_invoice_2=Customer invoices and payments +ProformaBill=Proforma Bill: +Reduction=Reduction +ReductionShort=Disc. +Reductions=Reductions +ReductionsShort=Disc. +Discounts=Discounts +AddDiscount=Create discount +AddRelativeDiscount=Create relative discount +EditRelativeDiscount=Edit relative discount +AddGlobalDiscount=Create absolute discount +EditGlobalDiscounts=Edit absolute discounts +AddCreditNote=Create credit note +ShowDiscount=Show discount +ShowReduc=Show the discount +ShowSourceInvoice=Show the source invoice +RelativeDiscount=Relative discount +GlobalDiscount=Global discount +CreditNote=Credit note +CreditNotes=Credit notes +CreditNotesOrExcessReceived=Credit notes or excess received +Deposit=Down payment +Deposits=Down payments +DiscountFromCreditNote=Discount from credit note %s +DiscountFromDeposit=Down payments from invoice %s +DiscountFromExcessReceived=Payments in excess of invoice %s +DiscountFromExcessPaid=Payments in excess of invoice %s +AbsoluteDiscountUse=This kind of credit can be used on invoice before its validation +CreditNoteDepositUse=Invoice must be validated to use this kind of credits +NewGlobalDiscount=New absolute discount +NewRelativeDiscount=New relative discount +DiscountType=Discount type +NoteReason=Note/Reason +ReasonDiscount=Reason +DiscountOfferedBy=Granted by +DiscountStillRemaining=Discounts or credits available +DiscountAlreadyCounted=Discounts or credits already consumed +CustomerDiscounts=Customer discounts +SupplierDiscounts=Vendors discounts +BillAddress=Bill address +HelpEscompte=This discount is a discount granted to customer because payment was made before term. +HelpAbandonBadCustomer=This amount has been abandoned (customer said to be a bad customer) and is considered as an exceptional loss. +HelpAbandonOther=This amount has been abandoned since it was an error (wrong customer or invoice replaced by another for example) +IdSocialContribution=Social/fiscal tax payment id +PaymentId=Payment id +PaymentRef=Payment ref. +InvoiceId=Invoice id +InvoiceRef=Invoice ref. +InvoiceDateCreation=Invoice creation date +InvoiceStatus=Invoice status +InvoiceNote=Invoice note +InvoicePaid=Invoice paid +InvoicePaidCompletely=Paid completely +InvoicePaidCompletelyHelp=Invoice that are paid completely. This excludes invoices that are paid partially. To get list of all 'Closed' or non 'Closed' invoices, prefer to use a filter on the invoice status. +OrderBilled=Order billed +DonationPaid=Donation paid +PaymentNumber=Payment number +RemoveDiscount=Remove discount +WatermarkOnDraftBill=Watermark on draft invoices (nothing if empty) +InvoiceNotChecked=No invoice selected +ConfirmCloneInvoice=Are you sure you want to clone this invoice %s? +DisabledBecauseReplacedInvoice=Action disabled because invoice has been replaced +DescTaxAndDividendsArea=This area presents a summary of all payments made for special expenses. Only records with payments during the fixed year are included here. +NbOfPayments=No. of payments +SplitDiscount=Split discount in two +ConfirmSplitDiscount=Are you sure you want to split this discount of %s %s into two smaller discounts? +TypeAmountOfEachNewDiscount=Input amount for each of two parts: +TotalOfTwoDiscountMustEqualsOriginal=The total of the two new discounts must be equal to the original discount amount. +ConfirmRemoveDiscount=Are you sure you want to remove this discount? +RelatedBill=Related invoice +RelatedBills=Related invoices +RelatedCustomerInvoices=Related customer invoices +RelatedSupplierInvoices=Related vendor invoices +LatestRelatedBill=Latest related invoice +WarningBillExist=Warning, one or more invoices already exist +MergingPDFTool=Merging PDF tool +AmountPaymentDistributedOnInvoice=Payment amount distributed on invoice +PaymentOnDifferentThirdBills=Allow payments on different third parties bills but same parent company +PaymentNote=Payment note +ListOfPreviousSituationInvoices=List of previous situation invoices +ListOfNextSituationInvoices=List of next situation invoices +ListOfSituationInvoices=List of situation invoices +CurrentSituationTotal=Total current situation +DisabledBecauseNotEnouthCreditNote=To remove a situation invoice from cycle, this invoice's credit note total must cover this invoice total +RemoveSituationFromCycle=Remove this invoice from cycle +ConfirmRemoveSituationFromCycle=Remove this invoice %s from cycle ? +ConfirmOuting=Confirm outing +FrequencyPer_d=Every %s days +FrequencyPer_m=Every %s months +FrequencyPer_y=Every %s years +FrequencyUnit=Frequency unit +toolTipFrequency=Examples:
    Set 7, Day: give a new invoice every 7 days
    Set 3, Month: give a new invoice every 3 month +NextDateToExecution=Date for next invoice generation +NextDateToExecutionShort=Date next gen. +DateLastGeneration=Date of latest generation +DateLastGenerationShort=Date latest gen. +MaxPeriodNumber=Max. number of invoice generation +NbOfGenerationDone=Number of invoice generation already done +NbOfGenerationDoneShort=Number of generation done +MaxGenerationReached=Maximum number of generations reached +InvoiceAutoValidate=Validate invoices automatically +GeneratedFromRecurringInvoice=Generated from template recurring invoice %s +DateIsNotEnough=Date not reached yet +InvoiceGeneratedFromTemplate=Invoice %s generated from recurring template invoice %s +GeneratedFromTemplate=Generated from template invoice %s +WarningInvoiceDateInFuture=Warning, the invoice date is higher than current date +WarningInvoiceDateTooFarInFuture=Warning, the invoice date is too far from current date +ViewAvailableGlobalDiscounts=View available discounts +GroupPaymentsByModOnReports=Group payments by mode on reports +# PaymentConditions +Statut=Status +PaymentConditionShortRECEP=Due Upon Receipt +PaymentConditionRECEP=Due Upon Receipt +PaymentConditionShort30D=30 days +PaymentCondition30D=30 days +PaymentConditionShort30DENDMONTH=30 days of month-end +PaymentCondition30DENDMONTH=Within 30 days following the end of the month +PaymentConditionShort60D=60 days +PaymentCondition60D=60 days +PaymentConditionShort60DENDMONTH=60 days of month-end +PaymentCondition60DENDMONTH=Within 60 days following the end of the month +PaymentConditionShortPT_DELIVERY=Delivery +PaymentConditionPT_DELIVERY=On delivery +PaymentConditionShortPT_ORDER=Order +PaymentConditionPT_ORDER=On order +PaymentConditionShortPT_5050=50-50 +PaymentConditionPT_5050=50%% in advance, 50%% on delivery +PaymentConditionShort10D=10 days +PaymentCondition10D=10 days +PaymentConditionShort10DENDMONTH=10 days of month-end +PaymentCondition10DENDMONTH=Within 10 days following the end of the month +PaymentConditionShort14D=14 days +PaymentCondition14D=14 days +PaymentConditionShort14DENDMONTH=14 days of month-end +PaymentCondition14DENDMONTH=Within 14 days following the end of the month +FixAmount=Fixed amount - 1 line with label '%s' +VarAmount=Variable amount (%% tot.) +VarAmountOneLine=Variable amount (%% tot.) - 1 line with label '%s' +VarAmountAllLines=Variable amount (%% tot.) - all same lines +# PaymentType +PaymentTypeVIR=Bank transfer +PaymentTypeShortVIR=Bank transfer +PaymentTypePRE=Direct debit payment order +PaymentTypeShortPRE=Debit payment order +PaymentTypeLIQ=Cash +PaymentTypeShortLIQ=Cash +PaymentTypeCB=Credit card +PaymentTypeShortCB=Credit card +PaymentTypeCHQ=Check +PaymentTypeShortCHQ=Check +PaymentTypeTIP=TIP (Documents against Payment) +PaymentTypeShortTIP=TIP Payment +PaymentTypeVAD=Online payment +PaymentTypeShortVAD=Online payment +PaymentTypeTRA=Bank draft +PaymentTypeShortTRA=Draft +PaymentTypeFAC=Factor +PaymentTypeShortFAC=Factor +BankDetails=Bank details +BankCode=Bank code +DeskCode=Branch code +BankAccountNumber=Account number +BankAccountNumberKey=Checksum +Residence=Address +IBANNumber=IBAN account number +IBAN=IBAN +BIC=BIC/SWIFT +BICNumber=BIC/SWIFT code +ExtraInfos=Extra infos +RegulatedOn=Regulated on +ChequeNumber=Check N° +ChequeOrTransferNumber=Check/Transfer N° +ChequeBordereau=Check schedule +ChequeMaker=Check/Transfer transmitter +ChequeBank=Bank of Check +CheckBank=Check +NetToBePaid=Net to be paid +PhoneNumber=Tel +FullPhoneNumber=Telephone +TeleFax=Fax +PrettyLittleSentence=Accept the amount of payments due by checks issued in my name as a Member of an accounting association approved by the Fiscal Administration. +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=sent to +PaymentByTransferOnThisBankAccount=Payment by transfer to the following bank account +VATIsNotUsedForInvoice=* Non applicable VAT art-293B of CGI +LawApplicationPart1=By application of the law 80.335 of 12/05/80 +LawApplicationPart2=the goods remain the property of +LawApplicationPart3=the seller until full payment of +LawApplicationPart4=their price. +LimitedLiabilityCompanyCapital=SARL with Capital of +UseLine=Apply +UseDiscount=Use discount +UseCredit=Use credit +UseCreditNoteInInvoicePayment=Reduce amount to pay with this credit +MenuChequeDeposits=Check Deposits +MenuCheques=Checks +MenuChequesReceipts=Check receipts +NewChequeDeposit=New deposit +ChequesReceipts=Check receipts +ChequesArea=Check deposits area +ChequeDeposits=Check deposits +Cheques=Checks +DepositId=Id deposit +NbCheque=Number of checks +CreditNoteConvertedIntoDiscount=This %s has been converted into %s +UsBillingContactAsIncoiveRecipientIfExist=Use contact/address with type 'billing contact' instead of third-party address as recipient for invoices +ShowUnpaidAll=Show all unpaid invoices +ShowUnpaidLateOnly=Show late unpaid invoices only +PaymentInvoiceRef=Payment invoice %s +ValidateInvoice=Validate invoice +ValidateInvoices=Validate invoices +Cash=Cash +Reported=Delayed +DisabledBecausePayments=Not possible since there are some payments +CantRemovePaymentWithOneInvoicePaid=Can't remove payment since there is at least one invoice classified paid +ExpectedToPay=Expected payment +CantRemoveConciliatedPayment=Can't remove reconciled payment +PayedByThisPayment=Paid by this payment +ClosePaidInvoicesAutomatically=Classify automatically all standard, down payment or replacement invoices as "Paid" when payment is done entirely. +ClosePaidCreditNotesAutomatically=Classify automatically all credit notes as "Paid" when refund is done entirely. +ClosePaidContributionsAutomatically=Classify automatically all social or fiscal contributions as "Paid" when payment is done entirely. +AllCompletelyPayedInvoiceWillBeClosed=All invoices with no remainder to pay will be automatically closed with status "Paid". +ToMakePayment=Pay +ToMakePaymentBack=Pay back +ListOfYourUnpaidInvoices=List of unpaid invoices +NoteListOfYourUnpaidInvoices=Note: This list contains only invoices for third parties you are linked to as a sale representative. +RevenueStamp=Tax stamp +YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party +YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party +YouMustCreateStandardInvoiceFirstDesc=You have to create a standard invoice first and convert it to "template" to create a new template invoice +PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template (old implementation of Sponge template) +PDFSpongeDescription=Invoice PDF template Sponge. A complete invoice template +PDFCrevetteDescription=Invoice PDF template Crevette. A complete invoice template for situation invoices +TerreNumRefModelDesc1=Return number with format %syymm-nnnn for standard invoices and %syymm-nnnn for credit notes where yy is year, mm is month and nnnn is a sequence with no break and no return to 0 +MarsNumRefModelDesc1=Return number with format %syymm-nnnn for standard invoices, %syymm-nnnn for replacement invoices, %syymm-nnnn for down payment invoices and %syymm-nnnn for credit notes where yy is year, mm is month and nnnn is a sequence with no break and no return to 0 +TerreNumRefModelError=A bill starting with $syymm already exists and is not compatible with this model of sequence. Remove it or rename it to activate this module. +CactusNumRefModelDesc1=Return number with format %syymm-nnnn for standard invoices, %syymm-nnnn for credit notes and %syymm-nnnn for down payment invoices where yy is year, mm is month and nnnn is a sequence with no break and no return to 0 +EarlyClosingReason=Early closing reason +EarlyClosingComment=Early closing note +##### Types de contacts ##### +TypeContact_facture_internal_SALESREPFOLL=Representative following-up customer invoice +TypeContact_facture_external_BILLING=Customer invoice contact +TypeContact_facture_external_SHIPPING=Customer shipping contact +TypeContact_facture_external_SERVICE=Customer service contact +TypeContact_invoice_supplier_internal_SALESREPFOLL=Representative following-up vendor invoice +TypeContact_invoice_supplier_external_BILLING=Vendor invoice contact +TypeContact_invoice_supplier_external_SHIPPING=Vendor shipping contact +TypeContact_invoice_supplier_external_SERVICE=Vendor service contact +# Situation invoices +InvoiceFirstSituationAsk=First situation invoice +InvoiceFirstSituationDesc=The situation invoices are tied to situations related to a progression, for example the progression of a construction. Each situation is tied to an invoice. +InvoiceSituation=Situation invoice +InvoiceSituationAsk=Invoice following the situation +InvoiceSituationDesc=Create a new situation following an already existing one +SituationAmount=Situation invoice amount(net) +SituationDeduction=Situation subtraction +ModifyAllLines=Modify all lines +CreateNextSituationInvoice=Create next situation +ErrorFindNextSituationInvoice=Error unable to find next situation cycle ref +ErrorOutingSituationInvoiceOnUpdate=Unable to outing this situation invoice. +ErrorOutingSituationInvoiceCreditNote=Unable to outing linked credit note. +NotLastInCycle=This invoice is not the latest in cycle and must not be modified. +DisabledBecauseNotLastInCycle=The next situation already exists. +DisabledBecauseFinal=This situation is final. +situationInvoiceShortcode_AS=AS +situationInvoiceShortcode_S=S +CantBeLessThanMinPercent=The progress can't be smaller than its value in the previous situation. +NoSituations=No open situations +InvoiceSituationLast=Final and general invoice +PDFCrevetteSituationNumber=Situation N°%s +PDFCrevetteSituationInvoiceLineDecompte=Situation invoice - COUNT +PDFCrevetteSituationInvoiceTitle=Situation invoice +PDFCrevetteSituationInvoiceLine=Situation N°%s: Inv. N°%s on %s +TotalSituationInvoice=Total situation +invoiceLineProgressError=Invoice line progress can't be greater than or equal to the next invoice line +updatePriceNextInvoiceErrorUpdateline=Error: update price on invoice line: %s +ToCreateARecurringInvoice=To create a recurring invoice for this contract, first create this draft invoice, then convert it into an invoice template and define the frequency for generation of future invoices. +ToCreateARecurringInvoiceGene=To generate future invoices regularly and manually, just go on menu %s - %s - %s. +ToCreateARecurringInvoiceGeneAuto=If you need to have such invoices generated automatically, ask your administrator to enable and setup module %s. Note that both methods (manual and automatic) can be used together with no risk of duplication. +DeleteRepeatableInvoice=Delete template invoice +ConfirmDeleteRepeatableInvoice=Are your sure you want to delete the template invoice? +CreateOneBillByThird=Create one invoice per third party (otherwise, one invoice per order) +BillCreated=%s bill(s) created +StatusOfGeneratedDocuments=Status of document generation +DoNotGenerateDoc=Do not generate document file +AutogenerateDoc=Auto generate document file +AutoFillDateFrom=Set start date for service line with invoice date +AutoFillDateFromShort=Set start date +AutoFillDateTo=Set end date for service line with next invoice date +AutoFillDateToShort=Set end date +MaxNumberOfGenerationReached=Max number of gen. reached +BILL_DELETEInDolibarr=Invoice deleted +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/km_KH/blockedlog.lang b/htdocs/langs/km_KH/blockedlog.lang index cff8f7d657b..5afae6e9e53 100644 --- a/htdocs/langs/km_KH/blockedlog.lang +++ b/htdocs/langs/km_KH/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Unalterable logs ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) DownloadBlockChain=Download fingerprints -KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this re after it was recorded, or has erased the previous archived record (check that line with previous # exists). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. AddedByAuthority=Stored into remote authority diff --git a/htdocs/langs/km_KH/bookmarks.lang b/htdocs/langs/km_KH/bookmarks.lang new file mode 100644 index 00000000000..87466cadcfa --- /dev/null +++ b/htdocs/langs/km_KH/bookmarks.lang @@ -0,0 +1,21 @@ +# Dolibarr language file - Source file is en_US - marque pages +AddThisPageToBookmarks=Add current page to bookmarks +Bookmark=Bookmark +Bookmarks=Bookmarks +ListOfBookmarks=List of bookmarks +EditBookmarks=List/edit bookmarks +NewBookmark=New bookmark +ShowBookmark=Show bookmark +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=Create bookmark +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=Bookmarks management +BookmarksMenuShortCut=Ctrl + shift + m diff --git a/htdocs/langs/km_KH/boxes.lang b/htdocs/langs/km_KH/boxes.lang new file mode 100644 index 00000000000..bd62684421a --- /dev/null +++ b/htdocs/langs/km_KH/boxes.lang @@ -0,0 +1,102 @@ +# Dolibarr language file - Source file is en_US - boxes +BoxLoginInformation=Login Information +BoxLastRssInfos=RSS Information +BoxLastProducts=Latest %s Products/Services +BoxProductsAlertStock=Stock alerts for products +BoxLastProductsInContract=Latest %s contracted products/services +BoxLastSupplierBills=Latest Vendor invoices +BoxLastCustomerBills=Latest Customer invoices +BoxOldestUnpaidCustomerBills=Oldest unpaid customer invoices +BoxOldestUnpaidSupplierBills=Oldest unpaid vendor invoices +BoxLastProposals=Latest commercial proposals +BoxLastProspects=Latest modified prospects +BoxLastCustomers=Latest modified customers +BoxLastSuppliers=Latest modified suppliers +BoxLastCustomerOrders=Latest sales orders +BoxLastActions=Latest actions +BoxLastContracts=Latest contracts +BoxLastContacts=Latest contacts/addresses +BoxLastMembers=Latest members +BoxFicheInter=Latest interventions +BoxCurrentAccounts=Open accounts balance +BoxTitleMemberNextBirthdays=Birthdays of this month (members) +BoxTitleLastRssInfos=Latest %s news from %s +BoxTitleLastProducts=Products/Services: last %s modified +BoxTitleProductsAlertStock=Products: stock alert +BoxTitleLastSuppliers=Latest %s recorded suppliers +BoxTitleLastModifiedSuppliers=Vendors: last %s modified +BoxTitleLastModifiedCustomers=Customers: last %s modified +BoxTitleLastCustomersOrProspects=Latest %s customers or prospects +BoxTitleLastCustomerBills=Latest %s modified Customer invoices +BoxTitleLastSupplierBills=Latest %s modified Vendor invoices +BoxTitleLastModifiedProspects=Prospects: last %s modified +BoxTitleLastModifiedMembers=Latest %s members +BoxTitleLastFicheInter=Latest %s modified interventions +BoxTitleOldestUnpaidCustomerBills=Customer Invoices: oldest %s unpaid +BoxTitleOldestUnpaidSupplierBills=Vendor Invoices: oldest %s unpaid +BoxTitleCurrentAccounts=Open Accounts: balances +BoxTitleSupplierOrdersAwaitingReception=Supplier orders awaiting reception +BoxTitleLastModifiedContacts=Contacts/Addresses: last %s modified +BoxMyLastBookmarks=Bookmarks: latest %s +BoxOldestExpiredServices=Oldest active expired services +BoxLastExpiredServices=Latest %s oldest contacts with active expired services +BoxTitleLastActionsToDo=Latest %s actions to do +BoxTitleLastContracts=Latest %s modified contracts +BoxTitleLastModifiedDonations=Latest %s modified donations +BoxTitleLastModifiedExpenses=Latest %s modified expense reports +BoxTitleLatestModifiedBoms=Latest %s modified BOMs +BoxTitleLatestModifiedMos=Latest %s modified Manufacturing Orders +BoxGlobalActivity=Global activity (invoices, proposals, orders) +BoxGoodCustomers=Good customers +BoxTitleGoodCustomers=%s Good customers +FailedToRefreshDataInfoNotUpToDate=Failed to refresh RSS flux. Latest successful refresh date: %s +LastRefreshDate=Latest refresh date +NoRecordedBookmarks=No bookmarks defined. +ClickToAdd=Click here to add. +NoRecordedCustomers=No recorded customers +NoRecordedContacts=No recorded contacts +NoActionsToDo=No actions to do +NoRecordedOrders=No recorded sales orders +NoRecordedProposals=No recorded proposals +NoRecordedInvoices=No recorded customer invoices +NoUnpaidCustomerBills=No unpaid customer invoices +NoUnpaidSupplierBills=No unpaid vendor invoices +NoModifiedSupplierBills=No recorded vendor invoices +NoRecordedProducts=No recorded products/services +NoRecordedProspects=No recorded prospects +NoContractedProducts=No products/services contracted +NoRecordedContracts=No recorded contracts +NoRecordedInterventions=No recorded interventions +BoxLatestSupplierOrders=Latest purchase orders +BoxLatestSupplierOrdersAwaitingReception=Latest Purchase Orders (with a pending reception) +NoSupplierOrder=No recorded purchase order +BoxCustomersInvoicesPerMonth=Customer Invoices per month +BoxSuppliersInvoicesPerMonth=Vendor Invoices per month +BoxCustomersOrdersPerMonth=Sales Orders per month +BoxSuppliersOrdersPerMonth=Vendor Orders per month +BoxProposalsPerMonth=Proposals per month +NoTooLowStockProducts=No products are under the low stock limit +BoxProductDistribution=Products/Services Distribution +ForObject=On %s +BoxTitleLastModifiedSupplierBills=Vendor Invoices: last %s modified +BoxTitleLatestModifiedSupplierOrders=Vendor Orders: last %s modified +BoxTitleLastModifiedCustomerBills=Customer Invoices: last %s modified +BoxTitleLastModifiedCustomerOrders=Sales Orders: last %s modified +BoxTitleLastModifiedPropals=Latest %s modified proposals +ForCustomersInvoices=Customers invoices +ForCustomersOrders=Customers orders +ForProposals=Proposals +LastXMonthRolling=The latest %s month rolling +ChooseBoxToAdd=Add widget to your dashboard +BoxAdded=Widget was added in your dashboard +BoxTitleUserBirthdaysOfMonth=Birthdays of this month (users) +BoxLastManualEntries=Last manual entries in accountancy +BoxTitleLastManualEntries=%s latest manual entries +NoRecordedManualEntries=No manual entries record in accountancy +BoxSuspenseAccount=Count accountancy operation with suspense account +BoxTitleSuspenseAccount=Number of unallocated lines +NumberOfLinesInSuspenseAccount=Number of line in suspense account +SuspenseAccountNotDefined=Suspense account isn't defined +BoxLastCustomerShipments=Last customer shipments +BoxTitleLastCustomerShipments=Latest %s customer shipments +NoRecordedShipments=No recorded customer shipment diff --git a/htdocs/langs/km_KH/cashdesk.lang b/htdocs/langs/km_KH/cashdesk.lang new file mode 100644 index 00000000000..0903a3d10bc --- /dev/null +++ b/htdocs/langs/km_KH/cashdesk.lang @@ -0,0 +1,110 @@ +# Language file - Source file is en_US - cashdesk +CashDeskMenu=Point of sale +CashDesk=Point of sale +CashDeskBankCash=Bank account (cash) +CashDeskBankCB=Bank account (card) +CashDeskBankCheque=Bank account (cheque) +CashDeskWarehouse=Warehouse +CashdeskShowServices=Selling services +CashDeskProducts=Products +CashDeskStock=Stock +CashDeskOn=on +CashDeskThirdParty=Third party +ShoppingCart=Shopping cart +NewSell=New sell +AddThisArticle=Add this article +RestartSelling=Go back on sell +SellFinished=Sale complete +PrintTicket=Print ticket +SendTicket=Send ticket +NoProductFound=No article found +ProductFound=product found +NoArticle=No article +Identification=Identification +Article=Article +Difference=Difference +TotalTicket=Total ticket +NoVAT=No VAT for this sale +Change=Excess received +BankToPay=Account for payment +ShowCompany=Show company +ShowStock=Show warehouse +DeleteArticle=Click to remove this article +FilterRefOrLabelOrBC=Search (Ref/Label) +UserNeedPermissionToEditStockToUsePos=You ask to decrease stock on invoice creation, so user that uses POS needs to have permission to edit stock. +DolibarrReceiptPrinter=Dolibarr Receipt Printer +PointOfSale=Point of Sale +PointOfSaleShort=POS +CloseBill=Close Bill +Floors=Floors +Floor=Floor +AddTable=Add table +Place=Place +TakeposConnectorNecesary='TakePOS Connector' required +OrderPrinters=Order printers +SearchProduct=Search product +Receipt=Receipt +Header=Header +Footer=Footer +AmountAtEndOfPeriod=Amount at end of period (day, month or year) +TheoricalAmount=Theorical amount +RealAmount=Real amount +CashFence=Cash fence +CashFenceDone=Cash fence done for the period +NbOfInvoices=Nb of invoices +Paymentnumpad=Type of Pad to enter payment +Numberspad=Numbers Pad +BillsCoinsPad=Coins and banknotes Pad +DolistorePosCategory=TakePOS modules and other POS solutions for Dolibarr +TakeposNeedsCategories=TakePOS needs product categories to work +OrderNotes=Order Notes +CashDeskBankAccountFor=Default account to use for payments in +NoPaimementModesDefined=No paiment mode defined in TakePOS configuration +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts +EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant +ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? +ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? +History=History +ValidateAndClose=Validate and close +Terminal=Terminal +NumberOfTerminals=Number of Terminals +TerminalSelect=Select terminal you want to use: +POSTicket=POS Ticket +POSTerminal=POS Terminal +POSModule=POS Module +BasicPhoneLayout=Use basic layout for phones +SetupOfTerminalNotComplete=Setup of terminal %s is not complete +DirectPayment=Direct payment +DirectPaymentButton=Direct cash payment button +InvoiceIsAlreadyValidated=Invoice is already validated +NoLinesToBill=No lines to bill +CustomReceipt=Custom Receipt +ReceiptName=Receipt Name +ProductSupplements=Product Supplements +SupplementCategory=Supplement category +ColorTheme=Color theme +Colorful=Colorful +HeadBar=Head Bar +SortProductField=Field for sorting products +Browser=Browser +BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. +PrintMethod=Print method +ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. +ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for POS sales +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use +BarRestaurant=Bar Restaurant +AutoOrder=Customer auto order diff --git a/htdocs/langs/km_KH/categories.lang b/htdocs/langs/km_KH/categories.lang new file mode 100644 index 00000000000..30bace0574c --- /dev/null +++ b/htdocs/langs/km_KH/categories.lang @@ -0,0 +1,89 @@ +# Dolibarr language file - Source file is en_US - categories +Rubrique=Tag/Category +Rubriques=Tags/Categories +RubriquesTransactions=Tags/Categories of transactions +categories=tags/categories +NoCategoryYet=No tag/category of this type created +In=In +AddIn=Add in +modify=modify +Classify=Classify +CategoriesArea=Tags/Categories area +ProductsCategoriesArea=Products/Services tags/categories area +SuppliersCategoriesArea=Vendors tags/categories area +CustomersCategoriesArea=Customers tags/categories area +MembersCategoriesArea=Members tags/categories area +ContactsCategoriesArea=Contacts tags/categories area +AccountsCategoriesArea=Accounts tags/categories area +ProjectsCategoriesArea=Projects tags/categories area +UsersCategoriesArea=Users tags/categories area +SubCats=Sub-categories +CatList=List of tags/categories +NewCategory=New tag/category +ModifCat=Modify tag/category +CatCreated=Tag/category created +CreateCat=Create tag/category +CreateThisCat=Create this tag/category +NoSubCat=No subcategory. +SubCatOf=Subcategory +FoundCats=Found tags/categories +ImpossibleAddCat=Impossible to add the tag/category %s +WasAddedSuccessfully=%s was added successfully. +ObjectAlreadyLinkedToCategory=Element is already linked to this tag/category. +ProductIsInCategories=Product/service is linked to following tags/categories +CompanyIsInCustomersCategories=This third party is linked to following customers/prospects tags/categories +CompanyIsInSuppliersCategories=This third party is linked to following vendors tags/categories +MemberIsInCategories=This member is linked to following members tags/categories +ContactIsInCategories=This contact is linked to following contacts tags/categories +ProductHasNoCategory=This product/service is not in any tags/categories +CompanyHasNoCategory=This third party is not in any tags/categories +MemberHasNoCategory=This member is not in any tags/categories +ContactHasNoCategory=This contact is not in any tags/categories +ProjectHasNoCategory=This project is not in any tags/categories +ClassifyInCategory=Add to tag/category +NotCategorized=Without tag/category +CategoryExistsAtSameLevel=This category already exists with this ref +ContentsVisibleByAllShort=Contents visible by all +ContentsNotVisibleByAllShort=Contents not visible by all +DeleteCategory=Delete tag/category +ConfirmDeleteCategory=Are you sure you want to delete this tag/category? +NoCategoriesDefined=No tag/category defined +SuppliersCategoryShort=Vendors tag/category +CustomersCategoryShort=Customers tag/category +ProductsCategoryShort=Products tag/category +MembersCategoryShort=Members tag/category +SuppliersCategoriesShort=Vendors tags/categories +CustomersCategoriesShort=Customers tags/categories +ProspectsCategoriesShort=Prospects tags/categories +CustomersProspectsCategoriesShort=Cust./Prosp. tags/categories +ProductsCategoriesShort=Products tags/categories +MembersCategoriesShort=Members tags/categories +ContactCategoriesShort=Contacts tags/categories +AccountsCategoriesShort=Accounts tags/categories +ProjectsCategoriesShort=Projects tags/categories +UsersCategoriesShort=Users tags/categories +StockCategoriesShort=Warehouse tags/categories +ThisCategoryHasNoItems=This category does not contain any items. +CategId=Tag/category id +CatSupList=List of vendor tags/categories +CatCusList=List of customer/prospect tags/categories +CatProdList=List of products tags/categories +CatMemberList=List of members tags/categories +CatContactList=List of contact tags/categories +CatSupLinks=Links between suppliers and tags/categories +CatCusLinks=Links between customers/prospects and tags/categories +CatContactsLinks=Links between contacts/addresses and tags/categories +CatProdLinks=Links between products/services and tags/categories +CatProJectLinks=Links between projects and tags/categories +DeleteFromCat=Remove from tags/category +ExtraFieldsCategories=Complementary attributes +CategoriesSetup=Tags/categories setup +CategorieRecursiv=Link with parent tag/category automatically +CategorieRecursivHelp=If option is on, when you add a product into a subcategory, product will also be added into the parent category. +AddProductServiceIntoCategory=Add the following product/service +ShowCategory=Show tag/category +ByDefaultInList=By default in list +ChooseCategory=Choose category +StocksCategoriesArea=Warehouses Categories Area +ActionCommCategoriesArea=Events Categories Area +UseOrOperatorForCategories=Use or operator for categories diff --git a/htdocs/langs/km_KH/commercial.lang b/htdocs/langs/km_KH/commercial.lang new file mode 100644 index 00000000000..10c536e0d48 --- /dev/null +++ b/htdocs/langs/km_KH/commercial.lang @@ -0,0 +1,80 @@ +# Dolibarr language file - Source file is en_US - commercial +Commercial=Commerce +CommercialArea=Commerce area +Customer=Customer +Customers=Customers +Prospect=Prospect +Prospects=Prospects +DeleteAction=Delete an event +NewAction=New event +AddAction=Create event +AddAnAction=Create an event +AddActionRendezVous=Create a Rendez-vous event +ConfirmDeleteAction=Are you sure you want to delete this event? +CardAction=Event card +ActionOnCompany=Related company +ActionOnContact=Related contact +TaskRDVWith=Meeting with %s +ShowTask=Show task +ShowAction=Show event +ActionsReport=Events report +ThirdPartiesOfSaleRepresentative=Third parties with sales representative +SaleRepresentativesOfThirdParty=Sales representatives of third party +SalesRepresentative=Sales representative +SalesRepresentatives=Sales representatives +SalesRepresentativeFollowUp=Sales representative (follow-up) +SalesRepresentativeSignature=Sales representative (signature) +NoSalesRepresentativeAffected=No particular sales representative assigned +ShowCustomer=Show customer +ShowProspect=Show prospect +ListOfProspects=List of prospects +ListOfCustomers=List of customers +LastDoneTasks=Latest %s completed actions +LastActionsToDo=Oldest %s not completed actions +DoneAndToDoActions=Completed and To do events +DoneActions=Completed events +ToDoActions=Incomplete events +SendPropalRef=Submission of commercial proposal %s +SendOrderRef=Submission of order %s +StatusNotApplicable=Not applicable +StatusActionToDo=To do +StatusActionDone=Complete +StatusActionInProcess=In process +TasksHistoryForThisContact=Events for this contact +LastProspectDoNotContact=Do not contact +LastProspectNeverContacted=Never contacted +LastProspectToContact=To contact +LastProspectContactInProcess=Contact in process +LastProspectContactDone=Contact done +ActionAffectedTo=Event assigned to +ActionDoneBy=Event done by +ActionAC_TEL=Phone call +ActionAC_FAX=Send fax +ActionAC_PROP=Send proposal by mail +ActionAC_EMAIL=Send Email +ActionAC_EMAIL_IN=Reception of Email +ActionAC_RDV=Meetings +ActionAC_INT=Intervention on site +ActionAC_FAC=Send customer invoice by mail +ActionAC_REL=Send customer invoice by mail (reminder) +ActionAC_CLO=Close +ActionAC_EMAILING=Send mass email +ActionAC_COM=Send sales order by mail +ActionAC_SHIP=Send shipping by mail +ActionAC_SUP_ORD=Send purchase order by mail +ActionAC_SUP_INV=Send vendor invoice by mail +ActionAC_OTH=Other +ActionAC_OTH_AUTO=Automatically inserted events +ActionAC_MANUAL=Manually inserted events +ActionAC_AUTO=Automatically inserted events +ActionAC_OTH_AUTOShort=Auto +Stats=Sales statistics +StatusProsp=Prospect status +DraftPropals=Draft commercial proposals +NoLimit=No limit +ToOfferALinkForOnlineSignature=Link for online signature +WelcomeOnOnlineSignaturePage=Welcome to the page to accept commercial proposals from %s +ThisScreenAllowsYouToSignDocFrom=This screen allow you to accept and sign, or refuse, a quote/commercial proposal +ThisIsInformationOnDocumentToSign=This is information on document to accept or refuse +SignatureProposalRef=Signature of quote/commercial proposal %s +FeatureOnlineSignDisabled=Feature for online signing disabled or document generated before the feature was enabled diff --git a/htdocs/langs/km_KH/companies.lang b/htdocs/langs/km_KH/companies.lang new file mode 100644 index 00000000000..0fad58c9389 --- /dev/null +++ b/htdocs/langs/km_KH/companies.lang @@ -0,0 +1,458 @@ +# Dolibarr language file - Source file is en_US - companies +ErrorCompanyNameAlreadyExists=Company name %s already exists. Choose another one. +ErrorSetACountryFirst=Set the country first +SelectThirdParty=Select a third party +ConfirmDeleteCompany=Are you sure you want to delete this company and all inherited information? +DeleteContact=Delete a contact/address +ConfirmDeleteContact=Are you sure you want to delete this contact and all inherited information? +MenuNewThirdParty=New Third Party +MenuNewCustomer=New Customer +MenuNewProspect=New Prospect +MenuNewSupplier=New Vendor +MenuNewPrivateIndividual=New private individual +NewCompany=New company (prospect, customer, vendor) +NewThirdParty=New Third Party (prospect, customer, vendor) +CreateDolibarrThirdPartySupplier=Create a third party (vendor) +CreateThirdPartyOnly=Create third party +CreateThirdPartyAndContact=Create a third party + a child contact +ProspectionArea=Prospection area +IdThirdParty=Id third party +IdCompany=Company Id +IdContact=Contact Id +Contacts=Contacts/Addresses +ThirdPartyContacts=Third-party contacts +ThirdPartyContact=Third-party contact/address +Company=Company +CompanyName=Company name +AliasNames=Alias name (commercial, trademark, ...) +AliasNameShort=Alias Name +Companies=Companies +CountryIsInEEC=Country is inside the European Economic Community +PriceFormatInCurrentLanguage=Price display format in the current language and currency +ThirdPartyName=Third-party name +ThirdPartyEmail=Third-party email +ThirdParty=Third-party +ThirdParties=Third-parties +ThirdPartyProspects=Prospects +ThirdPartyProspectsStats=Prospects +ThirdPartyCustomers=Customers +ThirdPartyCustomersStats=Customers +ThirdPartyCustomersWithIdProf12=Customers with %s or %s +ThirdPartySuppliers=Vendors +ThirdPartyType=Third-party type +Individual=Private individual +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=Parent company +Subsidiaries=Subsidiaries +ReportByMonth=Report by month +ReportByCustomers=Report by customer +ReportByQuarter=Report by rate +CivilityCode=Civility code +RegisteredOffice=Registered office +Lastname=Last name +Firstname=First name +PostOrFunction=Job position +UserTitle=Title +NatureOfThirdParty=Nature of Third party +NatureOfContact=Nature of Contact +Address=Address +State=State/Province +StateCode=State/Province code +StateShort=State +Region=Region +Region-State=Region - State +Country=Country +CountryCode=Country code +CountryId=Country id +Phone=Phone +PhoneShort=Phone +Skype=Skype +Call=Call +Chat=Chat +PhonePro=Prof. phone +PhonePerso=Pers. phone +PhoneMobile=Mobile +No_Email=Refuse bulk emailings +Fax=Fax +Zip=Zip Code +Town=City +Web=Web +Poste= Position +DefaultLang=Language default +VATIsUsed=Sales tax used +VATIsUsedWhenSelling=This defines if this third party includes a sale tax or not when it makes an invoice to its own customers +VATIsNotUsed=Sales tax is not used +CopyAddressFromSoc=Copy address from third-party details +ThirdpartyNotCustomerNotSupplierSoNoRef=Third party neither customer nor vendor, no available referring objects +ThirdpartyIsNeitherCustomerNorClientSoCannotHaveDiscounts=Third party neither customer nor vendor, discounts are not available +PaymentBankAccount=Payment bank account +OverAllProposals=Proposals +OverAllOrders=Orders +OverAllInvoices=Invoices +OverAllSupplierProposals=Price requests +##### Local Taxes ##### +LocalTax1IsUsed=Use second tax +LocalTax1IsUsedES= RE is used +LocalTax1IsNotUsedES= RE is not used +LocalTax2IsUsed=Use third tax +LocalTax2IsUsedES= IRPF is used +LocalTax2IsNotUsedES= IRPF is not used +WrongCustomerCode=Customer code invalid +WrongSupplierCode=Vendor code invalid +CustomerCodeModel=Customer code model +SupplierCodeModel=Vendor code model +Gencod=Barcode +##### Professional ID ##### +ProfId1Short=Prof. id 1 +ProfId2Short=Prof. id 2 +ProfId3Short=Prof. id 3 +ProfId4Short=Prof. id 4 +ProfId5Short=Prof. id 5 +ProfId6Short=Prof. id 6 +ProfId1=Professional ID 1 +ProfId2=Professional ID 2 +ProfId3=Professional ID 3 +ProfId4=Professional ID 4 +ProfId5=Professional ID 5 +ProfId6=Professional ID 6 +ProfId1AR=Prof Id 1 (CUIT/CUIL) +ProfId2AR=Prof Id 2 (Revenu brutes) +ProfId3AR=- +ProfId4AR=- +ProfId5AR=- +ProfId6AR=- +ProfId1AT=Prof Id 1 (USt.-IdNr) +ProfId2AT=Prof Id 2 (USt.-Nr) +ProfId3AT=Prof Id 3 (Handelsregister-Nr.) +ProfId4AT=- +ProfId5AT=- +ProfId6AT=- +ProfId1AU=Prof Id 1 (ABN) +ProfId2AU=- +ProfId3AU=- +ProfId4AU=- +ProfId5AU=- +ProfId6AU=- +ProfId1BE=Prof Id 1 (Professional number) +ProfId2BE=- +ProfId3BE=- +ProfId4BE=- +ProfId5BE=- +ProfId6BE=- +ProfId1BR=- +ProfId2BR=IE (Inscricao Estadual) +ProfId3BR=IM (Inscricao Municipal) +ProfId4BR=CPF +#ProfId5BR=CNAE +#ProfId6BR=INSS +ProfId1CH=- +ProfId2CH=- +ProfId3CH=Prof Id 1 (Federal number) +ProfId4CH=Prof Id 2 (Commercial Record number) +ProfId5CH=- +ProfId6CH=- +ProfId1CL=Prof Id 1 (R.U.T.) +ProfId2CL=- +ProfId3CL=- +ProfId4CL=- +ProfId5CL=- +ProfId6CL=- +ProfId1CO=Prof Id 1 (R.U.T.) +ProfId2CO=- +ProfId3CO=- +ProfId4CO=- +ProfId5CO=- +ProfId6CO=- +ProfId1DE=Prof Id 1 (USt.-IdNr) +ProfId2DE=Prof Id 2 (USt.-Nr) +ProfId3DE=Prof Id 3 (Handelsregister-Nr.) +ProfId4DE=- +ProfId5DE=- +ProfId6DE=- +ProfId1ES=Prof Id 1 (CIF/NIF) +ProfId2ES=Prof Id 2 (Social security number) +ProfId3ES=Prof Id 3 (CNAE) +ProfId4ES=Prof Id 4 (Collegiate number) +ProfId5ES=- +ProfId6ES=- +ProfId1FR=Prof Id 1 (SIREN) +ProfId2FR=Prof Id 2 (SIRET) +ProfId3FR=Prof Id 3 (NAF, old APE) +ProfId4FR=Prof Id 4 (RCS/RM) +ProfId5FR=- +ProfId6FR=- +ProfId1GB=Registration Number +ProfId2GB=- +ProfId3GB=SIC +ProfId4GB=- +ProfId5GB=- +ProfId6GB=- +ProfId1HN=Id prof. 1 (RTN) +ProfId2HN=- +ProfId3HN=- +ProfId4HN=- +ProfId5HN=- +ProfId6HN=- +ProfId1IN=Prof Id 1 (TIN) +ProfId2IN=Prof Id 2 (PAN) +ProfId3IN=Prof Id 3 (SRVC TAX) +ProfId4IN=Prof Id 4 +ProfId5IN=Prof Id 5 +ProfId6IN=- +ProfId1LU=Id. prof. 1 (R.C.S. Luxembourg) +ProfId2LU=Id. prof. 2 (Business permit) +ProfId3LU=- +ProfId4LU=- +ProfId5LU=- +ProfId6LU=- +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=Id. prof. 5 (I.C.E.) +ProfId6MA=- +ProfId1MX=Prof Id 1 (R.F.C). +ProfId2MX=Prof Id 2 (R..P. IMSS) +ProfId3MX=Prof Id 3 (Profesional Charter) +ProfId4MX=- +ProfId5MX=- +ProfId6MX=- +ProfId1NL=KVK nummer +ProfId2NL=- +ProfId3NL=- +ProfId4NL=Burgerservicenummer (BSN) +ProfId5NL=- +ProfId6NL=- +ProfId1PT=Prof Id 1 (NIPC) +ProfId2PT=Prof Id 2 (Social security number) +ProfId3PT=Prof Id 3 (Commercial Record number) +ProfId4PT=Prof Id 4 (Conservatory) +ProfId5PT=- +ProfId6PT=- +ProfId1SN=RC +ProfId2SN=NINEA +ProfId3SN=- +ProfId4SN=- +ProfId5SN=- +ProfId6SN=- +ProfId1TN=Prof Id 1 (RC) +ProfId2TN=Prof Id 2 (Fiscal matricule) +ProfId3TN=Prof Id 3 (Douane code) +ProfId4TN=Prof Id 4 (BAN) +ProfId5TN=- +ProfId6TN=- +ProfId1US=Prof Id (FEIN) +ProfId2US=- +ProfId3US=- +ProfId4US=- +ProfId5US=- +ProfId6US=- +ProfId1RO=Prof Id 1 (CUI) +ProfId2RO=Prof Id 2 (Nr. Înmatriculare) +ProfId3RO=Prof Id 3 (CAEN) +ProfId4RO=- +ProfId5RO=Prof Id 5 (EUID) +ProfId6RO=- +ProfId1RU=Prof Id 1 (OGRN) +ProfId2RU=Prof Id 2 (INN) +ProfId3RU=Prof Id 3 (KPP) +ProfId4RU=Prof Id 4 (OKPO) +ProfId5RU=- +ProfId6RU=- +ProfId1DZ=RC +ProfId2DZ=Art. +ProfId3DZ=NIF +ProfId4DZ=NIS +VATIntra=VAT ID +VATIntraShort=VAT ID +VATIntraSyntaxIsValid=Syntax is valid +VATReturn=VAT return +ProspectCustomer=Prospect / Customer +Prospect=Prospect +CustomerCard=Customer Card +Customer=Customer +CustomerRelativeDiscount=Relative customer discount +SupplierRelativeDiscount=Relative vendor discount +CustomerRelativeDiscountShort=Relative discount +CustomerAbsoluteDiscountShort=Absolute discount +CompanyHasRelativeDiscount=This customer has a default discount of %s%% +CompanyHasNoRelativeDiscount=This customer has no relative discount by default +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 +CompanyHasDownPaymentOrCommercialDiscount=This customer has discounts available (commercial, down payments) for %s %s +CompanyHasCreditNote=This customer still has credit notes for %s %s +HasNoAbsoluteDiscountFromSupplier=You have no discount credit available from this vendor +HasAbsoluteDiscountFromSupplier=You have discounts available (credits notes or down payments) for %s %s from this vendor +HasDownPaymentOrCommercialDiscountFromSupplier=You have discounts available (commercial, down payments) for %s %s from this vendor +HasCreditNoteFromSupplier=You have credit notes for %s %s from this vendor +CompanyHasNoAbsoluteDiscount=This customer has no discount credit available +CustomerAbsoluteDiscountAllUsers=Absolute customer discounts (granted by all users) +CustomerAbsoluteDiscountMy=Absolute customer discounts (granted by yourself) +SupplierAbsoluteDiscountAllUsers=Absolute vendor discounts (entered by all users) +SupplierAbsoluteDiscountMy=Absolute vendor discounts (entered by yourself) +DiscountNone=None +Vendor=Vendor +Supplier=Vendor +AddContact=Create contact +AddContactAddress=Create contact/address +EditContact=Edit contact +EditContactAddress=Edit contact/address +Contact=Contact +ContactId=Contact id +ContactsAddresses=Contacts/Addresses +FromContactName=Name: +NoContactDefinedForThirdParty=No contact defined for this third party +NoContactDefined=No contact defined +DefaultContact=Default contact/address +ContactByDefaultFor=Default contact/address for +AddThirdParty=Create third party +DeleteACompany=Delete a company +PersonalInformations=Personal data +AccountancyCode=Accounting account +CustomerCode=Customer Code +SupplierCode=Vendor Code +CustomerCodeShort=Customer Code +SupplierCodeShort=Vendor Code +CustomerCodeDesc=Customer Code, unique for all customers +SupplierCodeDesc=Vendor Code, unique for all vendors +RequiredIfCustomer=Required if third party is a customer or prospect +RequiredIfSupplier=Required if third party is a vendor +ValidityControledByModule=Validity controlled by module +ThisIsModuleRules=Rules for this module +ProspectToContact=Prospect to contact +CompanyDeleted=Company "%s" deleted from database. +ListOfContacts=List of contacts/addresses +ListOfContactsAddresses=List of contacts/addresses +ListOfThirdParties=List of Third Parties +ShowCompany=Third Party +ShowContact=Contact-Address +ContactsAllShort=All (No filter) +ContactType=Contact type +ContactForOrders=Order's contact +ContactForOrdersOrShipments=Order's or shipment's contact +ContactForProposals=Proposal's contact +ContactForContracts=Contract's contact +ContactForInvoices=Invoice's contact +NoContactForAnyOrder=This contact is not a contact for any order +NoContactForAnyOrderOrShipments=This contact is not a contact for any order or shipment +NoContactForAnyProposal=This contact is not a contact for any commercial proposal +NoContactForAnyContract=This contact is not a contact for any contract +NoContactForAnyInvoice=This contact is not a contact for any invoice +NewContact=New contact +NewContactAddress=New Contact/Address +MyContacts=My contacts +Capital=Capital +CapitalOf=Capital of %s +EditCompany=Edit company +ThisUserIsNot=This user is not a prospect, customer or vendor +VATIntraCheck=Check +VATIntraCheckDesc=The VAT ID must include the country prefix. The link %s uses the European VAT checker service (VIES) which requires internet access from the Dolibarr server. +VATIntraCheckURL=http://ec.europa.eu/taxation_customs/vies/vieshome.do +VATIntraCheckableOnEUSite=Check the intra-Community VAT ID on the European Commission website +VATIntraManualCheck=You can also check manually on the European Commission website %s +ErrorVATCheckMS_UNAVAILABLE=Check not possible. Check service is not provided by the member state (%s). +NorProspectNorCustomer=Not prospect, nor customer +JuridicalStatus=Legal Entity Type +Staff=Employees +ProspectLevelShort=Potential +ProspectLevel=Prospect potential +ContactPrivate=Private +ContactPublic=Shared +ContactVisibility=Visibility +ContactOthers=Other +OthersNotLinkedToThirdParty=Others, not linked to a third party +ProspectStatus=Prospect status +PL_NONE=None +PL_UNKNOWN=Unknown +PL_LOW=Low +PL_MEDIUM=Medium +PL_HIGH=High +TE_UNKNOWN=- +TE_STARTUP=Startup +TE_GROUP=Large company +TE_MEDIUM=Medium company +TE_ADMIN=Governmental +TE_SMALL=Small company +TE_RETAIL=Retailer +TE_WHOLE=Wholesaler +TE_PRIVATE=Private individual +TE_OTHER=Other +StatusProspect-1=Do not contact +StatusProspect0=Never contacted +StatusProspect1=To be contacted +StatusProspect2=Contact in process +StatusProspect3=Contact done +ChangeDoNotContact=Change status to 'Do not contact' +ChangeNeverContacted=Change status to 'Never contacted' +ChangeToContact=Change status to 'To be contacted' +ChangeContactInProcess=Change status to 'Contact in process' +ChangeContactDone=Change status to 'Contact done' +ProspectsByStatus=Prospects by status +NoParentCompany=None +ExportCardToFormat=Export card to format +ContactNotLinkedToCompany=Contact not linked to any third party +DolibarrLogin=Dolibarr login +NoDolibarrAccess=No Dolibarr access +ExportDataset_company_1=Third-parties (companies/foundations/physical people) and their properties +ExportDataset_company_2=Contacts and their properties +ImportDataset_company_1=Third-parties and their properties +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) +PriceLevel=Price Level +PriceLevelLabels=Price Level Labels +DeliveryAddress=Delivery address +AddAddress=Add address +SupplierCategory=Vendor category +JuridicalStatus200=Independent +DeleteFile=Delete file +ConfirmDeleteFile=Are you sure you want to delete this file? +AllocateCommercial=Assigned to sales representative +Organization=Organization +FiscalYearInformation=Fiscal Year +FiscalMonthStart=Starting month of the fiscal year +SocialNetworksInformation=Social networks +SocialNetworksFacebookURL=Facebook URL +SocialNetworksTwitterURL=Twitter URL +SocialNetworksLinkedinURL=Linkedin URL +SocialNetworksInstagramURL=Instagram URL +SocialNetworksYoutubeURL=Youtube URL +SocialNetworksGithubURL=Github URL +YouMustAssignUserMailFirst=You must create an email for this user prior to being able to add an email notification. +YouMustCreateContactFirst=To be able to add email notifications, you must first define contacts with valid emails for the third party +ListSuppliersShort=List of Vendors +ListProspectsShort=List of Prospects +ListCustomersShort=List of Customers +ThirdPartiesArea=Third Parties/Contacts +LastModifiedThirdParties=Last %s modified Third Parties +UniqueThirdParties=Total of Third Parties +InActivity=Open +ActivityCeased=Closed +ThirdPartyIsClosed=Third party is closed +ProductsIntoElements=List of products/services into %s +CurrentOutstandingBill=Current outstanding bill +OutstandingBill=Max. for outstanding bill +OutstandingBillReached=Max. for outstanding bill reached +OrderMinAmount=Minimum amount for order +MonkeyNumRefModelDesc=Return a number with the format %syymm-nnnn for the customer code and %syymm-nnnn for the vendor code where yy is year, mm is month and nnnn is a sequence with no break and no return to 0. +LeopardNumRefModelDesc=The code is free. This code can be modified at any time. +ManagingDirectors=Manager(s) name (CEO, director, president...) +MergeOriginThirdparty=Duplicate third party (third party you want to delete) +MergeThirdparties=Merge third parties +ConfirmMergeThirdparties=Are you sure you want to merge this third party into the current one? All linked objects (invoices, orders, ...) will be moved to current third party, then the third party will be deleted. +ThirdpartiesMergeSuccess=Third parties have been merged +SaleRepresentativeLogin=Login of sales representative +SaleRepresentativeFirstname=First name of sales representative +SaleRepresentativeLastname=Last name of sales representative +ErrorThirdpartiesMerge=There was an error when deleting the third parties. Please check the log. Changes have been reverted. +NewCustomerSupplierCodeProposed=Customer or Vendor code already used, a new code is suggested +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address +#Imports +PaymentTypeCustomer=Payment Type - Customer +PaymentTermsCustomer=Payment Terms - Customer +PaymentTypeSupplier=Payment Type - Vendor +PaymentTermsSupplier=Payment Term - Vendor +PaymentTypeBoth=Payment Type - Customer and Vendor +MulticurrencyUsed=Use Multicurrency +MulticurrencyCurrency=Currency diff --git a/htdocs/langs/km_KH/compta.lang b/htdocs/langs/km_KH/compta.lang new file mode 100644 index 00000000000..8a8c837ac87 --- /dev/null +++ b/htdocs/langs/km_KH/compta.lang @@ -0,0 +1,266 @@ +# Dolibarr language file - Source file is en_US - compta +MenuFinancial=Billing | Payment +TaxModuleSetupToModifyRules=Go to Taxes module setup to modify rules for calculation +TaxModuleSetupToModifyRulesLT=Go to Company setup to modify rules for calculation +OptionMode=Option for accountancy +OptionModeTrue=Option Incomes-Expenses +OptionModeVirtual=Option Claims-Debts +OptionModeTrueDesc=In this context, the turnover is calculated over payments (date of payments). The validity of the figures is assured only if the book-keeping is scrutinized through the input/output on the accounts via invoices. +OptionModeVirtualDesc=In this context, the turnover is calculated over invoices (date of validation). When these invoices are due, whether they have been paid or not, they are listed in the turnover output. +FeatureIsSupportedInInOutModeOnly=Feature only available in CREDITS-DEBTS accountancy mode (See Accountancy module configuration) +VATReportBuildWithOptionDefinedInModule=Amounts shown here are calculated using rules defined by Tax module setup. +LTReportBuildWithOptionDefinedInModule=Amounts shown here are calculated using rules defined by Company setup. +Param=Setup +RemainingAmountPayment=Amount payment remaining: +Account=Account +Accountparent=Parent account +Accountsparent=Parent accounts +Income=Income +Outcome=Expense +MenuReportInOut=Income / Expense +ReportInOut=Balance of income and expenses +ReportTurnover=Turnover invoiced +ReportTurnoverCollected=Turnover collected +PaymentsNotLinkedToInvoice=Payments not linked to any invoice, so not linked to any third party +PaymentsNotLinkedToUser=Payments not linked to any user +Profit=Profit +AccountingResult=Accounting result +BalanceBefore=Balance (before) +Balance=Balance +Debit=Debit +Credit=Credit +Piece=Accounting Doc. +AmountHTVATRealReceived=Net collected +AmountHTVATRealPaid=Net paid +VATToPay=Tax sales +VATReceived=Tax received +VATToCollect=Tax purchases +VATSummary=Tax monthly +VATBalance=Tax Balance +VATPaid=Tax paid +LT1Summary=Tax 2 summary +LT2Summary=Tax 3 summary +LT1SummaryES=RE Balance +LT2SummaryES=IRPF Balance +LT1SummaryIN=CGST Balance +LT2SummaryIN=SGST Balance +LT1Paid=Tax 2 paid +LT2Paid=Tax 3 paid +LT1PaidES=RE Paid +LT2PaidES=IRPF Paid +LT1PaidIN=CGST Paid +LT2PaidIN=SGST Paid +LT1Customer=Tax 2 sales +LT1Supplier=Tax 2 purchases +LT1CustomerES=RE sales +LT1SupplierES=RE purchases +LT1CustomerIN=CGST sales +LT1SupplierIN=CGST purchases +LT2Customer=Tax 3 sales +LT2Supplier=Tax 3 purchases +LT2CustomerES=IRPF sales +LT2SupplierES=IRPF purchases +LT2CustomerIN=SGST sales +LT2SupplierIN=SGST purchases +VATCollected=VAT collected +StatusToPay=To pay +SpecialExpensesArea=Area for all special payments +SocialContribution=Social or fiscal tax +SocialContributions=Social or fiscal taxes +SocialContributionsDeductibles=Deductible social or fiscal taxes +SocialContributionsNondeductibles=Nondeductible social or fiscal taxes +LabelContrib=Label contribution +TypeContrib=Type contribution +MenuSpecialExpenses=Special expenses +MenuTaxAndDividends=Taxes and dividends +MenuSocialContributions=Social/fiscal taxes +MenuNewSocialContribution=New social/fiscal tax +NewSocialContribution=New social/fiscal tax +AddSocialContribution=Add social/fiscal tax +ContributionsToPay=Social/fiscal taxes to pay +AccountancyTreasuryArea=Billing and payment area +NewPayment=New payment +PaymentCustomerInvoice=Customer invoice payment +PaymentSupplierInvoice=vendor invoice payment +PaymentSocialContribution=Social/fiscal tax payment +PaymentVat=VAT payment +ListPayment=List of payments +ListOfCustomerPayments=List of customer payments +ListOfSupplierPayments=List of vendor payments +DateStartPeriod=Date start period +DateEndPeriod=Date end period +newLT1Payment=New tax 2 payment +newLT2Payment=New tax 3 payment +LT1Payment=Tax 2 payment +LT1Payments=Tax 2 payments +LT2Payment=Tax 3 payment +LT2Payments=Tax 3 payments +newLT1PaymentES=New RE payment +newLT2PaymentES=New IRPF payment +LT1PaymentES=RE Payment +LT1PaymentsES=RE Payments +LT2PaymentES=IRPF Payment +LT2PaymentsES=IRPF Payments +VATPayment=Sales tax payment +VATPayments=Sales tax payments +VATRefund=Sales tax refund +NewVATPayment=New sales tax payment +NewLocalTaxPayment=New tax %s payment +Refund=Refund +SocialContributionsPayments=Social/fiscal taxes payments +ShowVatPayment=Show VAT payment +TotalToPay=Total to pay +BalanceVisibilityDependsOnSortAndFilters=Balance is visible in this list only if table is sorted ascending on %s and filtered for 1 bank account +CustomerAccountancyCode=Customer accounting code +SupplierAccountancyCode=Vendor accounting code +CustomerAccountancyCodeShort=Cust. account. code +SupplierAccountancyCodeShort=Sup. account. code +AccountNumber=Account number +NewAccountingAccount=New account +Turnover=Turnover invoiced +TurnoverCollected=Turnover collected +SalesTurnoverMinimum=Minimum turnover +ByExpenseIncome=By expenses & incomes +ByThirdParties=By third parties +ByUserAuthorOfInvoice=By invoice author +CheckReceipt=Check deposit +CheckReceiptShort=Check deposit +LastCheckReceiptShort=Latest %s check receipts +NewCheckReceipt=New discount +NewCheckDeposit=New check deposit +NewCheckDepositOn=Create receipt for deposit on account: %s +NoWaitingChecks=No checks awaiting deposit. +DateChequeReceived=Check reception date +NbOfCheques=No. of checks +PaySocialContribution=Pay a social/fiscal tax +ConfirmPaySocialContribution=Are you sure you want to classify this social or fiscal tax as paid? +DeleteSocialContribution=Delete a social or fiscal tax payment +ConfirmDeleteSocialContribution=Are you sure you want to delete this social/fiscal tax payment? +ExportDataset_tax_1=Social and fiscal taxes and payments +CalcModeVATDebt=Mode %sVAT on commitment accounting%s. +CalcModeVATEngagement=Mode %sVAT on incomes-expenses%s. +CalcModeDebt=Analysis of known recorded invoices even if they are not yet accounted in ledger. +CalcModeEngagement=Analysis of known recorded payments, even if they are not yet accounted in Ledger. +CalcModeBookkeeping=Analysis of data journalized in Bookkeeping Ledger table. +CalcModeLT1= Mode %sRE on customer invoices - suppliers invoices%s +CalcModeLT1Debt=Mode %sRE on customer invoices%s +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=Balance of income and expenses, annual summary +AnnualSummaryInputOutputMode=Balance of income and expenses, annual summary +AnnualByCompanies=Balance of income and expenses, by predefined groups of account +AnnualByCompaniesDueDebtMode=Balance of income and expenses, detail by predefined groups, mode %sClaims-Debts%s said Commitment accounting. +AnnualByCompaniesInputOutputMode=Balance of income and expenses, detail by predefined groups, mode %sIncomes-Expenses%s said cash accounting. +SeeReportInInputOutputMode=See %sanalysis of payments%s for a calculation on actual payments made even if they are not yet accounted in Ledger. +SeeReportInDueDebtMode=See %sanalysis of invoices%s for a calculation based on known recorded invoices even if they are not yet accounted in Ledger. +SeeReportInBookkeepingMode=See %sBookeeping report%s for a calculation on Bookkeeping Ledger table +RulesAmountWithTaxIncluded=- Amounts shown are with all taxes included +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. +RulesResultInOut=- It includes the real payments made on invoices, expenses, VAT and salaries.
    - It is based on the payment dates of the invoices, expenses, VAT and salaries. The donation date for donation. +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    +RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    +RulesCATotalSaleJournal=It includes all credit lines from the Sale journal. +RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" +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 +DepositsAreIncluded=- Down payment invoices are included +LT1ReportByCustomers=Report tax 2 by third party +LT2ReportByCustomers=Report tax 3 by third party +LT1ReportByCustomersES=Report by third party RE +LT2ReportByCustomersES=Report by third party IRPF +VATReport=Sale tax report +VATReportByPeriods=Sale tax report by period +VATReportByRates=Sale tax report by rates +VATReportByThirdParties=Sale tax report by third parties +VATReportByCustomers=Sale tax report by customer +VATReportByCustomersInInputOutputMode=Report by the customer VAT collected and paid +VATReportByQuartersInInputOutputMode=Report by Sale tax rate of the tax collected and paid +LT1ReportByQuarters=Report tax 2 by rate +LT2ReportByQuarters=Report tax 3 by rate +LT1ReportByQuartersES=Report by RE rate +LT2ReportByQuartersES=Report by IRPF rate +SeeVATReportInInputOutputMode=See report %sVAT encasement%s for a standard calculation +SeeVATReportInDueDebtMode=See report %sVAT on flow%s for a calculation with an option on the flow +RulesVATInServices=- For services, the report includes the VAT regulations actually received or issued on the basis of the date of payment. +RulesVATInProducts=- For material assets, the report includes the VAT received or issued on the basis of the date of payment. +RulesVATDueServices=- For services, the report includes VAT invoices due, paid or not, based on the invoice date. +RulesVATDueProducts=- For material assets, the report includes the VAT invoices, based on the invoice date. +OptionVatInfoModuleComptabilite=Note: For material assets, it should use the date of delivery to be more fair. +ThisIsAnEstimatedValue=This is a preview, based on business events and not from the final ledger table, so final results may differ from this preview values +PercentOfInvoice=%%/invoice +NotUsedForGoods=Not used on goods +ProposalStats=Statistics on proposals +OrderStats=Statistics on orders +InvoiceStats=Statistics on bills +Dispatch=Dispatching +Dispatched=Dispatched +ToDispatch=To dispatch +ThirdPartyMustBeEditAsCustomer=Third party must be defined as a customer +SellsJournal=Sales Journal +PurchasesJournal=Purchases Journal +DescSellsJournal=Sales Journal +DescPurchasesJournal=Purchases Journal +CodeNotDef=Not defined +WarningDepositsNotIncluded=Down payment invoices are not included in this version with this accountancy module. +DatePaymentTermCantBeLowerThanObjectDate=Payment term date can't be lower than object date. +Pcg_version=Chart of accounts models +Pcg_type=Pcg type +Pcg_subtype=Pcg subtype +InvoiceLinesToDispatch=Invoice lines to dispatch +ByProductsAndServices=By product and service +RefExt=External ref +ToCreateAPredefinedInvoice=To create a template invoice, create a standard invoice, then, without validating it, click onto button "%s". +LinkedOrder=Link to order +Mode1=Method 1 +Mode2=Method 2 +CalculationRuleDesc=To calculate total VAT, there is two methods:
    Method 1 is rounding vat on each line, then summing them.
    Method 2 is summing all vat on each line, then rounding result.
    Final result may differs from few cents. Default mode is mode %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. +CalculationMode=Calculation mode +AccountancyJournal=Accounting code journal +ACCOUNTING_VAT_SOLD_ACCOUNT=Accounting account by default for VAT on sales (used if not defined on VAT dictionary setup) +ACCOUNTING_VAT_BUY_ACCOUNT=Accounting account by default for VAT on purchases (used if not defined on VAT dictionary setup) +ACCOUNTING_VAT_PAY_ACCOUNT=Accounting account by default for paying VAT +ACCOUNTING_ACCOUNT_CUSTOMER=Accounting account used for customer third parties +ACCOUNTING_ACCOUNT_CUSTOMER_Desc=The dedicated accounting account defined on third party card will be used for Subledger accounting only. This one will be used for General Ledger and as default value of Subledger accounting if dedicated customer accounting account on third party is not defined. +ACCOUNTING_ACCOUNT_SUPPLIER=Accounting account used for vendor third parties +ACCOUNTING_ACCOUNT_SUPPLIER_Desc=The dedicated accounting account defined on third party card will be used for Subledger accounting only. This one will be used for General Ledger and as default value of Subledger accounting if dedicated vendor accounting account on third party is not defined. +ConfirmCloneTax=Confirm the clone of a social/fiscal tax +CloneTaxForNextMonth=Clone it for next month +SimpleReport=Simple report +AddExtraReport=Extra reports (add foreign and national customer report) +OtherCountriesCustomersReport=Foreign customers report +BasedOnTwoFirstLettersOfVATNumberBeingDifferentFromYourCompanyCountry=Based on the two first letters of the VAT number being different from your own company's country code +SameCountryCustomersWithVAT=National customers report +BasedOnTwoFirstLettersOfVATNumberBeingTheSameAsYourCompanyCountry=Based on the two first letters of the VAT number being the same as your own company's country code +LinkedFichinter=Link to an intervention +ImportDataset_tax_contrib=Social/fiscal taxes +ImportDataset_tax_vat=Vat payments +ErrorBankAccountNotFound=Error: Bank account not found +FiscalPeriod=Accounting period +ListSocialContributionAssociatedProject=List of social contributions associated with the project +DeleteFromCat=Remove from accounting group +AccountingAffectation=Accounting assignment +LastDayTaxIsRelatedTo=Last day of period the tax is related to +VATDue=Sale tax claimed +ClaimedForThisPeriod=Claimed for the period +PaidDuringThisPeriod=Paid during this period +ByVatRate=By sale tax rate +TurnoverbyVatrate=Turnover invoiced by sale tax rate +TurnoverCollectedbyVatrate=Turnover collected by sale tax rate +PurchasebyVatrate=Purchase by sale tax rate +LabelToShow=Short label +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected +IncludeVarpaysInResults = Include various payments in reports +IncludeLoansInResults = Include loans in reports diff --git a/htdocs/langs/km_KH/contracts.lang b/htdocs/langs/km_KH/contracts.lang new file mode 100644 index 00000000000..47572c355ab --- /dev/null +++ b/htdocs/langs/km_KH/contracts.lang @@ -0,0 +1,101 @@ +# Dolibarr language file - Source file is en_US - contracts +ContractsArea=Contracts area +ListOfContracts=List of contracts +AllContracts=All contracts +ContractCard=Contract card +ContractStatusNotRunning=Not running +ContractStatusDraft=Draft +ContractStatusValidated=Validated +ContractStatusClosed=Closed +ServiceStatusInitial=Not running +ServiceStatusRunning=Running +ServiceStatusNotLate=Running, not expired +ServiceStatusNotLateShort=Not expired +ServiceStatusLate=Running, expired +ServiceStatusLateShort=Expired +ServiceStatusClosed=Closed +ShowContractOfService=Show contract of service +Contracts=Contracts +ContractsSubscriptions=Contracts/Subscriptions +ContractsAndLine=Contracts and line of contracts +Contract=Contract +ContractLine=Contract line +Closing=Closing +NoContracts=No contracts +MenuServices=Services +MenuInactiveServices=Services not active +MenuRunningServices=Running services +MenuExpiredServices=Expired services +MenuClosedServices=Closed services +NewContract=New contract +NewContractSubscription=New contract/subscription +AddContract=Create contract +DeleteAContract=Delete a contract +ActivateAllOnContract=Activate all services +CloseAContract=Close a contract +ConfirmDeleteAContract=Are you sure you want to delete this contract and all its services? +ConfirmValidateContract=Are you sure you want to validate this contract under name %s? +ConfirmActivateAllOnContract=This will open all services (not yet active). Are you sure you want to open all services? +ConfirmCloseContract=This will close all services (active or not). Are you sure you want to close this contract? +ConfirmCloseService=Are you sure you want to close this service with date %s? +ValidateAContract=Validate a contract +ActivateService=Activate service +ConfirmActivateService=Are you sure you want to activate this service with date %s? +RefContract=Contract reference +DateContract=Contract date +DateServiceActivate=Service activation date +ListOfServices=List of services +ListOfInactiveServices=List of not active services +ListOfExpiredServices=List of expired active services +ListOfClosedServices=List of closed services +ListOfRunningServices=List of running services +NotActivatedServices=Inactive services (among validated contracts) +BoardNotActivatedServices=Services to activate among validated contracts +BoardNotActivatedServicesShort=Services to activate +LastContracts=Latest %s contracts +LastModifiedServices=Latest %s modified services +ContractStartDate=Start date +ContractEndDate=End date +DateStartPlanned=Planned start date +DateStartPlannedShort=Planned start date +DateEndPlanned=Planned end date +DateEndPlannedShort=Planned end date +DateStartReal=Real start date +DateStartRealShort=Real start date +DateEndReal=Real end date +DateEndRealShort=Real end date +CloseService=Close service +BoardRunningServices=Services running +BoardRunningServicesShort=Services running +BoardExpiredServices=Services expired +BoardExpiredServicesShort=Services expired +ServiceStatus=Status of service +DraftContracts=Drafts contracts +CloseRefusedBecauseOneServiceActive=Contract can't be closed as there is at least one open service on it +ActivateAllContracts=Activate all contract lines +CloseAllContracts=Close all contract lines +DeleteContractLine=Delete a contract line +ConfirmDeleteContractLine=Are you sure you want to delete this contract line? +MoveToAnotherContract=Move service into another contract. +ConfirmMoveToAnotherContract=I choosed new target contract and confirm I want to move this service into this contract. +ConfirmMoveToAnotherContractQuestion=Choose in which existing contract (of same third party), you want to move this service to? +PaymentRenewContractId=Renew contract line (number %s) +ExpiredSince=Expiration date +NoExpiredServices=No expired active services +ListOfServicesToExpireWithDuration=List of Services to expire in %s days +ListOfServicesToExpireWithDurationNeg=List of Services expired from more than %s days +ListOfServicesToExpire=List of Services to expire +NoteListOfYourExpiredServices=This list contains only services of contracts for third parties you are linked to as a sale representative. +StandardContractsTemplate=Standard contracts template +ContactNameAndSignature=For %s, name and signature: +OnlyLinesWithTypeServiceAreUsed=Only lines with type "Service" will be cloned. +ConfirmCloneContract=Are you sure you want to clone the contract %s? +LowerDateEndPlannedShort=Lower planned end date of active services +SendContractRef=Contract information __REF__ +OtherContracts=Other contracts +##### Types de contacts ##### +TypeContact_contrat_internal_SALESREPSIGN=Sales representative signing contract +TypeContact_contrat_internal_SALESREPFOLL=Sales representative following-up contract +TypeContact_contrat_external_BILLING=Billing customer contact +TypeContact_contrat_external_CUSTOMER=Follow-up customer contact +TypeContact_contrat_external_SALESREPSIGN=Signing contract customer contact diff --git a/htdocs/langs/km_KH/cron.lang b/htdocs/langs/km_KH/cron.lang new file mode 100644 index 00000000000..1de1251831a --- /dev/null +++ b/htdocs/langs/km_KH/cron.lang @@ -0,0 +1,84 @@ +# Dolibarr language file - Source file is en_US - cron +# About page +# Right +Permission23101 = Read Scheduled job +Permission23102 = Create/update Scheduled job +Permission23103 = Delete Scheduled job +Permission23104 = Execute Scheduled job +# Admin +CronSetup=Scheduled job management setup +URLToLaunchCronJobs=URL to check and launch qualified cron jobs +OrToLaunchASpecificJob=Or to check and launch a specific job +KeyForCronAccess=Security key for URL to launch cron jobs +FileToLaunchCronJobs=Command line to check and launch qualified cron jobs +CronExplainHowToRunUnix=On Unix environment you should use the following crontab entry to run the command line each 5 minutes +CronExplainHowToRunWin=On Microsoft(tm) Windows environment you can use Scheduled Task tools to run the command line each 5 minutes +CronMethodDoesNotExists=Class %s does not contains any method %s +CronJobDefDesc=Cron job profiles are defined into the module descriptor file. When module is activated, they are loaded and available so you can administer the jobs from the admin tools menu %s. +CronJobProfiles=List of predefined cron job profiles +# Menu +EnabledAndDisabled=Enabled and disabled +# Page list +CronLastOutput=Latest run output +CronLastResult=Latest result code +CronCommand=Command +CronList=Scheduled jobs +CronDelete=Delete scheduled jobs +CronConfirmDelete=Are you sure you want to delete these scheduled jobs? +CronExecute=Launch scheduled job +CronConfirmExecute=Are you sure you want to execute these scheduled jobs now? +CronInfo=Scheduled job module allows to schedule jobs to execute them automatically. Jobs can also be started manually. +CronTask=Job +CronNone=None +CronDtStart=Not before +CronDtEnd=Not after +CronDtNextLaunch=Next execution +CronDtLastLaunch=Start date of latest execution +CronDtLastResult=End date of latest execution +CronFrequency=Frequency +CronClass=Class +CronMethod=Method +CronModule=Module +CronNoJobs=No jobs registered +CronPriority=Priority +CronLabel=Label +CronNbRun=Number of launches +CronMaxRun=Maximum number of launches +CronEach=Every +JobFinished=Job launched and finished +#Page card +CronAdd= Add jobs +CronEvery=Execute job each +CronObject=Instance/Object to create +CronArgs=Parameters +CronSaveSucess=Save successfully +CronNote=Comment +CronFieldMandatory=Fields %s is mandatory +CronErrEndDateStartDt=End date cannot be before start date +StatusAtInstall=Status at module installation +CronStatusActiveBtn=Enable +CronStatusInactiveBtn=Disable +CronTaskInactive=This job is disabled +CronId=Id +CronClassFile=Filename with class +CronModuleHelp=Name of Dolibarr module directory (also work with external Dolibarr module).
    For example to call the fetch method of Dolibarr Product object /htdocs/product/class/product.class.php, the value for module is
    product +CronClassFileHelp=The relative path and file name to load (path is relative to web server root directory).
    For example to call the fetch method of Dolibarr Product object htdocs/product/class/product.class.php, the value for class file name is
    product/class/product.class.php +CronObjectHelp=The object name to load.
    For example to call the fetch method of Dolibarr Product object /htdocs/product/class/product.class.php, the value for class file name is
    Product +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=The system command line to execute. +CronCreateJob=Create new Scheduled Job +CronFrom=From +# Info +# Common +CronType=Job type +CronType_method=Call method of a PHP Class +CronType_command=Shell command +CronCannotLoadClass=Cannot load class file %s (to use class %s) +CronCannotLoadObject=Class file %s was loaded, but object %s was not found into it +UseMenuModuleToolsToAddCronJobs=Go into menu "Home - Admin tools - Scheduled jobs" to see and edit scheduled jobs. +JobDisabled=Job disabled +MakeLocalDatabaseDumpShort=Local database backup +MakeLocalDatabaseDump=Create a local database dump. Parameters are: compression ('gz' or 'bz' or 'none'), backup type ('mysql', 'pgsql', 'auto'), 1, 'auto' or filename to build, number of backup files to keep +WarningCronDelayed=Attention, for performance purpose, whatever is next date of execution of enabled jobs, your jobs may be delayed to a maximum of %s hours, before being run. +DATAPOLICYJob=Data cleaner and anonymizer diff --git a/htdocs/langs/km_KH/deliveries.lang b/htdocs/langs/km_KH/deliveries.lang new file mode 100644 index 00000000000..1f48c01de75 --- /dev/null +++ b/htdocs/langs/km_KH/deliveries.lang @@ -0,0 +1,31 @@ +# Dolibarr language file - Source file is en_US - deliveries +Delivery=Delivery +DeliveryRef=Ref Delivery +DeliveryCard=Receipt card +DeliveryOrder=Delivery receipt +DeliveryDate=Delivery date +CreateDeliveryOrder=Generate delivery receipt +DeliveryStateSaved=Delivery state saved +SetDeliveryDate=Set shipping date +ValidateDeliveryReceipt=Validate delivery receipt +ValidateDeliveryReceiptConfirm=Are you sure you want to validate this delivery receipt? +DeleteDeliveryReceipt=Delete delivery receipt +DeleteDeliveryReceiptConfirm=Are you sure you want to delete delivery receipt %s? +DeliveryMethod=Delivery method +TrackingNumber=Tracking number +DeliveryNotValidated=Delivery not validated +StatusDeliveryCanceled=Canceled +StatusDeliveryDraft=Draft +StatusDeliveryValidated=Received +# merou PDF model +NameAndSignature=Name and Signature: +ToAndDate=To___________________________________ on ____/_____/__________ +GoodStatusDeclaration=Have received the goods above in good condition, +Deliverer=Deliverer: +Sender=Sender +Recipient=Recipient +ErrorStockIsNotEnough=There's not enough stock +Shippable=Shippable +NonShippable=Not Shippable +ShowReceiving=Show delivery receipt +NonExistentOrder=Nonexistent order diff --git a/htdocs/langs/km_KH/dict.lang b/htdocs/langs/km_KH/dict.lang new file mode 100644 index 00000000000..ec315d97142 --- /dev/null +++ b/htdocs/langs/km_KH/dict.lang @@ -0,0 +1,359 @@ +# Dolibarr language file - Source file is en_US - dict +CountryFR=France +CountryBE=Belgium +CountryIT=Italy +CountryES=Spain +CountryDE=Germany +CountryCH=Switzerland +# Warning, country code GB is for United Kingdom. UK Does not exists as country code in ISO standard. +CountryGB=United Kingdom +CountryUK=United Kingdom +CountryIE=Ireland +CountryCN=China +CountryTN=Tunisia +CountryUS=United States +CountryMA=Morocco +CountryDZ=Algeria +CountryCA=Canada +CountryTG=Togo +CountryGA=Gabon +CountryNL=Netherlands +CountryHU=Hungary +CountryRU=Russia +CountrySE=Sweden +CountryCI=Ivoiry Coast +CountrySN=Senegal +CountryAR=Argentina +CountryCM=Cameroon +CountryPT=Portugal +CountrySA=Saudi Arabia +CountryMC=Monaco +CountryAU=Australia +CountrySG=Singapore +CountryAF=Afghanistan +CountryAX=Åland Islands +CountryAL=Albania +CountryAS=American Samoa +CountryAD=Andorra +CountryAO=Angola +CountryAI=Anguilla +CountryAQ=Antarctica +CountryAG=Antigua and Barbuda +CountryAM=Armenia +CountryAW=Aruba +CountryAT=Austria +CountryAZ=Azerbaijan +CountryBS=Bahamas +CountryBH=Bahrain +CountryBD=Bangladesh +CountryBB=Barbados +CountryBY=Belarus +CountryBZ=Belize +CountryBJ=Benin +CountryBM=Bermuda +CountryBT=Bhutan +CountryBO=Bolivia +CountryBA=Bosnia and Herzegovina +CountryBW=Botswana +CountryBV=Bouvet Island +CountryBR=Brazil +CountryIO=British Indian Ocean Territory +CountryBN=Brunei Darussalam +CountryBG=Bulgaria +CountryBF=Burkina Faso +CountryBI=Burundi +CountryKH=Cambodia +CountryCV=Cape Verde +CountryKY=Cayman Islands +CountryCF=Central African Republic +CountryTD=Chad +CountryCL=Chile +CountryCX=Christmas Island +CountryCC=Cocos (Keeling) Islands +CountryCO=Colombia +CountryKM=Comoros +CountryCG=Congo +CountryCD=Congo, The Democratic Republic of the +CountryCK=Cook Islands +CountryCR=Costa Rica +CountryHR=Croatia +CountryCU=Cuba +CountryCY=Cyprus +CountryCZ=Czech Republic +CountryDK=Denmark +CountryDJ=Djibouti +CountryDM=Dominica +CountryDO=Dominican Republic +CountryEC=Ecuador +CountryEG=Egypt +CountrySV=El Salvador +CountryGQ=Equatorial Guinea +CountryER=Eritrea +CountryEE=Estonia +CountryET=Ethiopia +CountryFK=Falkland Islands +CountryFO=Faroe Islands +CountryFJ=Fiji Islands +CountryFI=Finland +CountryGF=French Guiana +CountryPF=French Polynesia +CountryTF=French Southern Territories +CountryGM=Gambia +CountryGE=Georgia +CountryGH=Ghana +CountryGI=Gibraltar +CountryGR=Greece +CountryGL=Greenland +CountryGD=Grenada +CountryGP=Guadeloupe +CountryGU=Guam +CountryGT=Guatemala +CountryGN=Guinea +CountryGW=Guinea-Bissau +CountryGY=Guyana +CountryHT=Haïti +CountryHM=Heard Island and McDonald +CountryVA=Holy See (Vatican City State) +CountryHN=Honduras +CountryHK=Hong Kong +CountryIS=Iceland +CountryIN=India +CountryID=Indonesia +CountryIR=Iran +CountryIQ=Iraq +CountryIL=Israel +CountryJM=Jamaica +CountryJP=Japan +CountryJO=Jordan +CountryKZ=Kazakhstan +CountryKE=Kenya +CountryKI=Kiribati +CountryKP=North Korea +CountryKR=South Korea +CountryKW=Kuwait +CountryKG=Kyrgyzstan +CountryLA=Lao +CountryLV=Latvia +CountryLB=Lebanon +CountryLS=Lesotho +CountryLR=Liberia +CountryLY=Libyan +CountryLI=Liechtenstein +CountryLT=Lithuania +CountryLU=Luxembourg +CountryMO=Macao +CountryMK=Macedonia, the former Yugoslav of +CountryMG=Madagascar +CountryMW=Malawi +CountryMY=Malaysia +CountryMV=Maldives +CountryML=Mali +CountryMT=Malta +CountryMH=Marshall Islands +CountryMQ=Martinique +CountryMR=Mauritania +CountryMU=Mauritius +CountryYT=Mayotte +CountryMX=Mexico +CountryFM=Micronesia +CountryMD=Moldova +CountryMN=Mongolia +CountryMS=Monserrat +CountryMZ=Mozambique +CountryMM=Myanmar (Burma) +CountryNA=Namibia +CountryNR=Nauru +CountryNP=Nepal +CountryAN=Netherlands Antilles +CountryNC=New Caledonia +CountryNZ=New Zealand +CountryNI=Nicaragua +CountryNE=Niger +CountryNG=Nigeria +CountryNU=Niue +CountryNF=Norfolk Island +CountryMP=Northern Mariana Islands +CountryNO=Norway +CountryOM=Oman +CountryPK=Pakistan +CountryPW=Palau +CountryPS=Palestinian Territory, Occupied +CountryPA=Panama +CountryPG=Papua New Guinea +CountryPY=Paraguay +CountryPE=Peru +CountryPH=Philippines +CountryPN=Pitcairn Islands +CountryPL=Poland +CountryPR=Puerto Rico +CountryQA=Qatar +CountryRE=Reunion +CountryRO=Romania +CountryRW=Rwanda +CountrySH=Saint Helena +CountryKN=Saint Kitts and Nevis +CountryLC=Saint Lucia +CountryPM=Saint Pierre and Miquelon +CountryVC=Saint Vincent and Grenadines +CountryWS=Samoa +CountrySM=San Marino +CountryST=Sao Tome and Principe +CountryRS=Serbia +CountrySC=Seychelles +CountrySL=Sierra Leone +CountrySK=Slovakia +CountrySI=Slovenia +CountrySB=Solomon Islands +CountrySO=Somalia +CountryZA=South Africa +CountryGS=South Georgia and the South Sandwich Islands +CountryLK=Sri Lanka +CountrySD=Sudan +CountrySR=Suriname +CountrySJ=Svalbard and Jan Mayen +CountrySZ=Swaziland +CountrySY=Syrian +CountryTW=Taiwan +CountryTJ=Tajikistan +CountryTZ=Tanzania +CountryTH=Thailand +CountryTL=Timor-Leste +CountryTK=Tokelau +CountryTO=Tonga +CountryTT=Trinidad and Tobago +CountryTR=Turkey +CountryTM=Turkmenistan +CountryTC=Turks and Caicos Islands +CountryTV=Tuvalu +CountryUG=Uganda +CountryUA=Ukraine +CountryAE=United Arab Emirates +CountryUM=United States Minor Outlying Islands +CountryUY=Uruguay +CountryUZ=Uzbekistan +CountryVU=Vanuatu +CountryVE=Venezuela +CountryVN=Viet Nam +CountryVG=Virgin Islands, British +CountryVI=Virgin Islands, U.S. +CountryWF=Wallis and Futuna +CountryEH=Western Sahara +CountryYE=Yemen +CountryZM=Zambia +CountryZW=Zimbabwe +CountryGG=Guernsey +CountryIM=Isle of Man +CountryJE=Jersey +CountryME=Montenegro +CountryBL=Saint Barthelemy +CountryMF=Saint Martin + +##### Civilities ##### +CivilityMME=Mrs. +CivilityMR=Mr. +CivilityMLE=Ms. +CivilityMTRE=Master +CivilityDR=Doctor +##### Currencies ##### +Currencyeuros=Euros +CurrencyAUD=AU Dollars +CurrencySingAUD=AU Dollar +CurrencyCAD=CAN Dollars +CurrencySingCAD=CAN Dollar +CurrencyCHF=Swiss Francs +CurrencySingCHF=Swiss Franc +CurrencyEUR=Euros +CurrencySingEUR=Euro +CurrencyFRF=French Francs +CurrencySingFRF=French Franc +CurrencyGBP=GB Pounds +CurrencySingGBP=GB Pound +CurrencyINR=Indian rupees +CurrencySingINR=Indian rupee +CurrencyMAD=Dirham +CurrencySingMAD=Dirham +CurrencyMGA=Ariary +CurrencySingMGA=Ariary +CurrencyMUR=Mauritius rupees +CurrencySingMUR=Mauritius rupee +CurrencyNOK=Norwegian krones +CurrencySingNOK=Norwegian kronas +CurrencyTND=Tunisian dinars +CurrencySingTND=Tunisian dinar +CurrencyUSD=US Dollars +CurrencySingUSD=US Dollar +CurrencyUAH=Hryvnia +CurrencySingUAH=Hryvnia +CurrencyXAF=CFA Francs BEAC +CurrencySingXAF=CFA Franc BEAC +CurrencyXOF=CFA Francs BCEAO +CurrencySingXOF=CFA Franc BCEAO +CurrencyXPF=CFP Francs +CurrencySingXPF=CFP Franc +CurrencyCentEUR=cents +CurrencyCentSingEUR=cent +CurrencyCentINR=paisa +CurrencyCentSingINR=paise +CurrencyThousandthSingTND=thousandth +#### Input reasons ##### +DemandReasonTypeSRC_INTE=Internet +DemandReasonTypeSRC_CAMP_MAIL=Mailing campaign +DemandReasonTypeSRC_CAMP_EMAIL=EMailing campaign +DemandReasonTypeSRC_CAMP_PHO=Phone campaign +DemandReasonTypeSRC_CAMP_FAX=Fax campaign +DemandReasonTypeSRC_COMM=Commercial contact +DemandReasonTypeSRC_SHOP=Shop contact +DemandReasonTypeSRC_WOM=Word of mouth +DemandReasonTypeSRC_PARTNER=Partner +DemandReasonTypeSRC_EMPLOYEE=Employee +DemandReasonTypeSRC_SPONSORING=Sponsorship +DemandReasonTypeSRC_SRC_CUSTOMER=Incoming contact of a customer +#### Paper formats #### +PaperFormatEU4A0=Format 4A0 +PaperFormatEU2A0=Format 2A0 +PaperFormatEUA0=Format A0 +PaperFormatEUA1=Format A1 +PaperFormatEUA2=Format A2 +PaperFormatEUA3=Format A3 +PaperFormatEUA4=Format A4 +PaperFormatEUA5=Format A5 +PaperFormatEUA6=Format A6 +PaperFormatUSLETTER=Format Letter US +PaperFormatUSLEGAL=Format Legal US +PaperFormatUSEXECUTIVE=Format Executive US +PaperFormatUSLEDGER=Format Ledger/Tabloid +PaperFormatCAP1=Format P1 Canada +PaperFormatCAP2=Format P2 Canada +PaperFormatCAP3=Format P3 Canada +PaperFormatCAP4=Format P4 Canada +PaperFormatCAP5=Format P5 Canada +PaperFormatCAP6=Format P6 Canada +#### Expense report categories #### +ExpAutoCat=Car +ExpCycloCat=Moped +ExpMotoCat=Motorbike +ExpAuto3CV=3 CV +ExpAuto4CV=4 CV +ExpAuto5CV=5 CV +ExpAuto6CV=6 CV +ExpAuto7CV=7 CV +ExpAuto8CV=8 CV +ExpAuto9CV=9 CV +ExpAuto10CV=10 CV +ExpAuto11CV=11 CV +ExpAuto12CV=12 CV +ExpAuto3PCV=3 CV and more +ExpAuto4PCV=4 CV and more +ExpAuto5PCV=5 CV and more +ExpAuto6PCV=6 CV and more +ExpAuto7PCV=7 CV and more +ExpAuto8PCV=8 CV and more +ExpAuto9PCV=9 CV and more +ExpAuto10PCV=10 CV and more +ExpAuto11PCV=11 CV and more +ExpAuto12PCV=12 CV and more +ExpAuto13PCV=13 CV and more +ExpCyclo=Capacity lower to 50cm3 +ExpMoto12CV=Motorbike 1 or 2 CV +ExpMoto345CV=Motorbike 3, 4 or 5 CV +ExpMoto5PCV=Motorbike 5 CV and more diff --git a/htdocs/langs/km_KH/donations.lang b/htdocs/langs/km_KH/donations.lang new file mode 100644 index 00000000000..de4bdf68f03 --- /dev/null +++ b/htdocs/langs/km_KH/donations.lang @@ -0,0 +1,34 @@ +# Dolibarr language file - Source file is en_US - donations +Donation=Donation +Donations=Donations +DonationRef=Donation ref. +Donor=Donor +AddDonation=Create a donation +NewDonation=New donation +DeleteADonation=Delete a donation +ConfirmDeleteADonation=Are you sure you want to delete this donation? +PublicDonation=Public donation +DonationsArea=Donations area +DonationStatusPromiseNotValidated=Draft promise +DonationStatusPromiseValidated=Validated promise +DonationStatusPaid=Donation received +DonationStatusPromiseNotValidatedShort=Draft +DonationStatusPromiseValidatedShort=Validated +DonationStatusPaidShort=Received +DonationTitle=Donation receipt +DonationDate=Donation date +DonationDatePayment=Payment date +ValidPromess=Validate promise +DonationReceipt=Donation receipt +DonationsModels=Documents models for donation receipts +LastModifiedDonations=Latest %s modified donations +DonationRecipient=Donation recipient +IConfirmDonationReception=The recipient declare reception, as a donation, of the following amount +MinimumAmount=Minimum amount is %s +FreeTextOnDonations=Free text to show in footer +FrenchOptions=Options for France +DONATION_ART200=Show article 200 from CGI if you are concerned +DONATION_ART238=Show article 238 from CGI if you are concerned +DONATION_ART885=Show article 885 from CGI if you are concerned +DonationPayment=Donation payment +DonationValidated=Donation %s validated diff --git a/htdocs/langs/km_KH/ecm.lang b/htdocs/langs/km_KH/ecm.lang new file mode 100644 index 00000000000..369ac6dfdfa --- /dev/null +++ b/htdocs/langs/km_KH/ecm.lang @@ -0,0 +1,52 @@ +# Dolibarr language file - Source file is en_US - ecm +ECMNbOfDocs=No. of documents in directory +ECMSection=Directory +ECMSectionManual=Manual directory +ECMSectionAuto=Automatic directory +ECMSectionsManual=Manual tree +ECMSectionsAuto=Automatic tree +ECMSections=Directories +ECMRoot=ECM Root +ECMNewSection=New directory +ECMAddSection=Add directory +ECMCreationDate=Creation date +ECMNbOfFilesInDir=Number of files in directory +ECMNbOfSubDir=Number of sub-directories +ECMNbOfFilesInSubDir=Number of files in sub-directories +ECMCreationUser=Creator +ECMArea=DMS/ECM area +ECMAreaDesc=The DMS/ECM (Document Management System / Electronic Content Management) area allows you to save, share and search quickly all kind of documents in Dolibarr. +ECMAreaDesc2=* Automatic directories are filled automatically when adding documents from card of an element.
    * Manual directories can be used to save documents not linked to a particular element. +ECMSectionWasRemoved=Directory %s has been deleted. +ECMSectionWasCreated=Directory %s has been created. +ECMSearchByKeywords=Search by keywords +ECMSearchByEntity=Search by object +ECMSectionOfDocuments=Directories of documents +ECMTypeAuto=Automatic +ECMDocsBySocialContributions=Documents linked to social or fiscal taxes +ECMDocsByThirdParties=Documents linked to third parties +ECMDocsByProposals=Documents linked to proposals +ECMDocsByOrders=Documents linked to customers orders +ECMDocsByContracts=Documents linked to contracts +ECMDocsByInvoices=Documents linked to customers invoices +ECMDocsByProducts=Documents linked to products +ECMDocsByProjects=Documents linked to projects +ECMDocsByUsers=Documents linked to users +ECMDocsByInterventions=Documents linked to interventions +ECMDocsByExpenseReports=Documents linked to expense reports +ECMDocsByHolidays=Documents linked to holidays +ECMDocsBySupplierProposals=Documents linked to vendor proposals +ECMNoDirectoryYet=No directory created +ShowECMSection=Show directory +DeleteSection=Remove directory +ConfirmDeleteSection=Can you confirm you want to delete the directory %s? +ECMDirectoryForFiles=Relative directory for files +CannotRemoveDirectoryContainsFilesOrDirs=Removal not possible because it contains some files or sub-directories +CannotRemoveDirectoryContainsFiles=Removal not possible because it contains some files +ECMFileManager=File manager +ECMSelectASection=Select a directory in the tree... +DirNotSynchronizedSyncFirst=This directory seems to be created or modified outside ECM module. You must click on "Resync" button first to synchronize disk and database to get content of this directory. +ReSyncListOfDir=Resync list of directories +HashOfFileContent=Hash of file content +NoDirectoriesFound=No directories found +FileNotYetIndexedInDatabase=File not yet indexed into database (try to re-upload it) diff --git a/htdocs/langs/km_KH/errors.lang b/htdocs/langs/km_KH/errors.lang new file mode 100644 index 00000000000..7c67aeca8b5 --- /dev/null +++ b/htdocs/langs/km_KH/errors.lang @@ -0,0 +1,265 @@ +# Dolibarr language file - Source file is en_US - errors + +# No errors +NoErrorCommitIsDone=No error, we commit +# Errors +ErrorButCommitIsDone=Errors found but we validate despite this +ErrorBadEMail=Email %s is wrong +ErrorBadUrl=Url %s is wrong +ErrorBadValueForParamNotAString=Bad value for your parameter. It appends generally when translation is missing. +ErrorLoginAlreadyExists=Login %s already exists. +ErrorGroupAlreadyExists=Group %s already exists. +ErrorRecordNotFound=Record not found. +ErrorFailToCopyFile=Failed to copy file '%s' into '%s'. +ErrorFailToCopyDir=Failed to copy directory '%s' into '%s'. +ErrorFailToRenameFile=Failed to rename file '%s' into '%s'. +ErrorFailToDeleteFile=Failed to remove file '%s'. +ErrorFailToCreateFile=Failed to create file '%s'. +ErrorFailToRenameDir=Failed to rename directory '%s' into '%s'. +ErrorFailToCreateDir=Failed to create directory '%s'. +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=This bank account is a cash account, so it accepts payments of type cash only. +ErrorFromToAccountsMustDiffers=Source and targets bank accounts must be different. +ErrorBadThirdPartyName=Bad value for third-party name +ErrorProdIdIsMandatory=The %s is mandatory +ErrorBadCustomerCodeSyntax=Bad syntax for customer code +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. +ErrorCustomerCodeRequired=Customer code required +ErrorBarCodeRequired=Barcode required +ErrorCustomerCodeAlreadyUsed=Customer code already used +ErrorBarCodeAlreadyUsed=Barcode already used +ErrorPrefixRequired=Prefix required +ErrorBadSupplierCodeSyntax=Bad syntax for vendor code +ErrorSupplierCodeRequired=Vendor code required +ErrorSupplierCodeAlreadyUsed=Vendor code already used +ErrorBadParameters=Bad parameters +ErrorBadValueForParameter=Wrong value '%s' for parameter '%s' +ErrorBadImageFormat=Image file has not a supported format (Your PHP does not support functions to convert images of this format) +ErrorBadDateFormat=Value '%s' has wrong date format +ErrorWrongDate=Date is not correct! +ErrorFailedToWriteInDir=Failed to write in directory %s +ErrorFoundBadEmailInFile=Found incorrect email syntax for %s lines in file (example line %s with email=%s) +ErrorUserCannotBeDelete=User cannot be deleted. Maybe it is associated to Dolibarr entities. +ErrorFieldsRequired=Some required fields were not filled. +ErrorSubjectIsRequired=The email topic is required +ErrorFailedToCreateDir=Failed to create a directory. Check that Web server user has permissions to write into Dolibarr documents directory. If parameter safe_mode is enabled on this PHP, check that Dolibarr php files owns to web server user (or group). +ErrorNoMailDefinedForThisUser=No mail defined for this user +ErrorFeatureNeedJavascript=This feature need javascript to be activated to work. Change this in setup - display. +ErrorTopMenuMustHaveAParentWithId0=A menu of type 'Top' can't have a parent menu. Put 0 in parent menu or choose a menu of type 'Left'. +ErrorLeftMenuMustHaveAParentId=A menu of type 'Left' must have a parent id. +ErrorFileNotFound=File %s not found (Bad path, wrong permissions or access denied by PHP openbasedir or safe_mode parameter) +ErrorDirNotFound=Directory %s not found (Bad path, wrong permissions or access denied by PHP openbasedir or safe_mode parameter) +ErrorFunctionNotAvailableInPHP=Function %s is required for this feature but is not available in this version/setup of PHP. +ErrorDirAlreadyExists=A directory with this name already exists. +ErrorFileAlreadyExists=A file with this name already exists. +ErrorPartialFile=File not received completely by server. +ErrorNoTmpDir=Temporary directy %s does not exists. +ErrorUploadBlockedByAddon=Upload blocked by a PHP/Apache plugin. +ErrorFileSizeTooLarge=File size is too large. +ErrorFieldTooLong=Field %s is too long. +ErrorSizeTooLongForIntType=Size too long for int type (%s digits maximum) +ErrorSizeTooLongForVarcharType=Size too long for string type (%s chars maximum) +ErrorNoValueForSelectType=Please fill value for select list +ErrorNoValueForCheckBoxType=Please fill value for checkbox list +ErrorNoValueForRadioType=Please fill value for radio list +ErrorBadFormatValueList=The list value cannot have more than one comma: %s, but need at least one: key,value +ErrorFieldCanNotContainSpecialCharacters=The field %s must not contains special characters. +ErrorFieldCanNotContainSpecialNorUpperCharacters=The field %s must not contain special characters, nor upper case characters and cannot contain only numbers. +ErrorFieldMustHaveXChar=The field %s must have at least %s characters. +ErrorNoAccountancyModuleLoaded=No accountancy module activated +ErrorExportDuplicateProfil=This profile name already exists for this export set. +ErrorLDAPSetupNotComplete=Dolibarr-LDAP matching is not complete. +ErrorLDAPMakeManualTest=A .ldif file has been generated in directory %s. Try to load it manually from command line to have more information on errors. +ErrorCantSaveADoneUserWithZeroPercentage=Can't save an action with "status not started" if field "done by" is also filled. +ErrorRefAlreadyExists=Ref used for creation already exists. +ErrorPleaseTypeBankTransactionReportName=Please enter the bank statement name where the entry has to be reported (Format YYYYMM or YYYYMMDD) +ErrorRecordHasChildren=Failed to delete record since it has some child records. +ErrorRecordHasAtLeastOneChildOfType=Object has at least one child of type %s +ErrorRecordIsUsedCantDelete=Can't delete record. It is already used or included into another object. +ErrorModuleRequireJavascript=Javascript must not be disabled to have this feature working. To enable/disable Javascript, go to menu Home->Setup->Display. +ErrorPasswordsMustMatch=Both typed passwords must match each other +ErrorContactEMail=A technical error occured. Please, contact administrator to following email %s and provide the error code %s in your message, or add a screen copy of this page. +ErrorWrongValueForField=Field %s: '%s' does not match regex rule %s +ErrorFieldValueNotIn=Field %s: '%s' is not a value found in field %s of %s +ErrorFieldRefNotIn=Field %s: '%s' is not a %s existing ref +ErrorsOnXLines=%s errors found +ErrorFileIsInfectedWithAVirus=The antivirus program was not able to validate the file (file might be infected by a virus) +ErrorSpecialCharNotAllowedForField=Special characters are not allowed for field "%s" +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 %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 +ErrorMaxNumberReachForThisMask=Maximum number reached for this mask +ErrorCounterMustHaveMoreThan3Digits=Counter must have more than 3 digits +ErrorSelectAtLeastOne=Error, select at least one entry. +ErrorDeleteNotPossibleLineIsConsolidated=Delete not possible because record is linked to a bank transaction that is conciliated +ErrorProdIdAlreadyExist=%s is assigned to another third +ErrorFailedToSendPassword=Failed to send password +ErrorFailedToLoadRSSFile=Fails to get RSS feed. Try to add constant MAIN_SIMPLEXMLLOAD_DEBUG if error messages does not provide enough information. +ErrorForbidden=Access denied.
    You try to access to a page, area or feature of a disabled module or without being in an authenticated session or that is not allowed to your user. +ErrorForbidden2=Permission for this login can be defined by your Dolibarr administrator from menu %s->%s. +ErrorForbidden3=It seems that Dolibarr is not used through an authenticated session. Take a look at Dolibarr setup documentation to know how to manage authentications (htaccess, mod_auth or other...). +ErrorNoImagickReadimage=Class Imagick is not found in this PHP. No preview can be available. Administrators can disable this tab from menu Setup - Display. +ErrorRecordAlreadyExists=Record already exists +ErrorLabelAlreadyExists=This label already exists +ErrorCantReadFile=Failed to read file '%s' +ErrorCantReadDir=Failed to read directory '%s' +ErrorBadLoginPassword=Bad value for login or password +ErrorLoginDisabled=Your account has been disabled +ErrorFailedToRunExternalCommand=Failed to run external command. Check it is available and runnable by your PHP server. If PHP Safe Mode is enabled, check that command is inside a directory defined by parameter safe_mode_exec_dir. +ErrorFailedToChangePassword=Failed to change password +ErrorLoginDoesNotExists=User with login %s could not be found. +ErrorLoginHasNoEmail=This user has no email address. Process aborted. +ErrorBadValueForCode=Bad value for security code. Try again with new value... +ErrorBothFieldCantBeNegative=Fields %s and %s can't be both negative +ErrorFieldCantBeNegativeOnInvoice=Field %s cannot be negative on this type of invoice. If you need to add a discount line, just create the discount first (from field '%s' in thirdparty card) and apply it to the invoice. +ErrorLinesCantBeNegativeForOneVATRate=Total of lines can't be negative for a given VAT rate. +ErrorLinesCantBeNegativeOnDeposits=Lines can't be negative in a deposit. You will face problems when you will need to consume the deposit in final invoice if you do so. +ErrorQtyForCustomerInvoiceCantBeNegative=Quantity for line into customer invoices can't be negative +ErrorWebServerUserHasNotPermission=User account %s used to execute web server has no permission for that +ErrorNoActivatedBarcode=No barcode type activated +ErrUnzipFails=Failed to unzip %s with ZipArchive +ErrNoZipEngine=No engine to zip/unzip %s file in this PHP +ErrorFileMustBeADolibarrPackage=The file %s must be a Dolibarr zip package +ErrorModuleFileRequired=You must select a Dolibarr module package file +ErrorPhpCurlNotInstalled=The PHP CURL is not installed, this is essential to talk with Paypal +ErrorFailedToAddToMailmanList=Failed to add record %s to Mailman list %s or SPIP base +ErrorFailedToRemoveToMailmanList=Failed to remove record %s to Mailman list %s or SPIP base +ErrorNewValueCantMatchOldValue=New value can't be equal to old one +ErrorFailedToValidatePasswordReset=Failed to reinit password. May be the reinit was already done (this link can be used only one time). If not, try to restart the reinit process. +ErrorToConnectToMysqlCheckInstance=Connect to database fails. Check database server is running (for example, with mysql/mariadb, you can launch it from command line with 'sudo service mysql start'). +ErrorFailedToAddContact=Failed to add contact +ErrorDateMustBeBeforeToday=The date cannot be greater than today +ErrorPaymentModeDefinedToWithoutSetup=A payment mode was set to type %s but setup of module Invoice was not completed to define information to show for this payment mode. +ErrorPHPNeedModule=Error, your PHP must have module %s installed to use this feature. +ErrorOpenIDSetupNotComplete=You setup Dolibarr config file to allow OpenID authentication, but URL of OpenID service is not defined into constant %s +ErrorWarehouseMustDiffers=Source and target warehouses must differs +ErrorBadFormat=Bad format! +ErrorMemberNotLinkedToAThirpartyLinkOrCreateFirst=Error, this member is not yet linked to any third party. Link member to an existing third party or create a new third party before creating subscription with invoice. +ErrorThereIsSomeDeliveries=Error, there is some deliveries linked to this shipment. Deletion refused. +ErrorCantDeletePaymentReconciliated=Can't delete a payment that had generated a bank entry that was reconciled +ErrorCantDeletePaymentSharedWithPayedInvoice=Can't delete a payment shared by at least one invoice with status Paid +ErrorPriceExpression1=Cannot assign to constant '%s' +ErrorPriceExpression2=Cannot redefine built-in function '%s' +ErrorPriceExpression3=Undefined variable '%s' in function definition +ErrorPriceExpression4=Illegal character '%s' +ErrorPriceExpression5=Unexpected '%s' +ErrorPriceExpression6=Wrong number of arguments (%s given, %s expected) +ErrorPriceExpression8=Unexpected operator '%s' +ErrorPriceExpression9=An unexpected error occured +ErrorPriceExpression10=Operator '%s' lacks operand +ErrorPriceExpression11=Expecting '%s' +ErrorPriceExpression14=Division by zero +ErrorPriceExpression17=Undefined variable '%s' +ErrorPriceExpression19=Expression not found +ErrorPriceExpression20=Empty expression +ErrorPriceExpression21=Empty result '%s' +ErrorPriceExpression22=Negative result '%s' +ErrorPriceExpression23=Unknown or non set variable '%s' in %s +ErrorPriceExpression24=Variable '%s' exists but has no value +ErrorPriceExpressionInternal=Internal error '%s' +ErrorPriceExpressionUnknown=Unknown error '%s' +ErrorSrcAndTargetWarehouseMustDiffers=Source and target warehouses must differs +ErrorTryToMakeMoveOnProductRequiringBatchData=Error, trying to make a stock movement without lot/serial information, on product '%s' requiring lot/serial information +ErrorCantSetReceptionToTotalDoneWithReceptionToApprove=All recorded receptions must first be verified (approved or denied) before being allowed to do this action +ErrorCantSetReceptionToTotalDoneWithReceptionDenied=All recorded receptions must first be verified (approved) before being allowed to do this action +ErrorGlobalVariableUpdater0=HTTP request failed with error '%s' +ErrorGlobalVariableUpdater1=Invalid JSON format '%s' +ErrorGlobalVariableUpdater2=Missing parameter '%s' +ErrorGlobalVariableUpdater3=The requested data was not found in result +ErrorGlobalVariableUpdater4=SOAP client failed with error '%s' +ErrorGlobalVariableUpdater5=No global variable selected +ErrorFieldMustBeANumeric=Field %s must be a numeric value +ErrorMandatoryParametersNotProvided=Mandatory parameter(s) not provided +ErrorOppStatusRequiredIfAmount=You set an estimated amount for this lead. So you must also enter it's status. +ErrorFailedToLoadModuleDescriptorForXXX=Failed to load module descriptor class for %s +ErrorBadDefinitionOfMenuArrayInModuleDescriptor=Bad Definition Of Menu Array In Module Descriptor (bad value for key fk_menu) +ErrorSavingChanges=An error has occurred when saving the changes +ErrorWarehouseRequiredIntoShipmentLine=Warehouse is required on the line to ship +ErrorFileMustHaveFormat=File must have format %s +ErrorSupplierCountryIsNotDefined=Country for this vendor is not defined. Correct this first. +ErrorsThirdpartyMerge=Failed to merge the two records. Request canceled. +ErrorStockIsNotEnoughToAddProductOnOrder=Stock is not enough for product %s to add it into a new order. +ErrorStockIsNotEnoughToAddProductOnInvoice=Stock is not enough for product %s to add it into a new invoice. +ErrorStockIsNotEnoughToAddProductOnShipment=Stock is not enough for product %s to add it into a new shipment. +ErrorStockIsNotEnoughToAddProductOnProposal=Stock is not enough for product %s to add it into a new proposal. +ErrorFailedToLoadLoginFileForMode=Failed to get the login key for mode '%s'. +ErrorModuleNotFound=File of module was not found. +ErrorFieldAccountNotDefinedForBankLine=Value for Accounting account not defined for source line id %s (%s) +ErrorFieldAccountNotDefinedForInvoiceLine=Value for Accounting account not defined for invoice id %s (%s) +ErrorFieldAccountNotDefinedForLine=Value for Accounting account not defined for the line (%s) +ErrorBankStatementNameMustFollowRegex=Error, bank statement name must follow the following syntax rule %s +ErrorPhpMailDelivery=Check that you don't use a too high number of recipients and that your email content is not similar to a Spam. Ask also your administrator to check firewall and server logs files for a more complete information. +ErrorUserNotAssignedToTask=User must be assigned to task to be able to enter time consumed. +ErrorTaskAlreadyAssigned=Task already assigned to user +ErrorModuleFileSeemsToHaveAWrongFormat=The module package seems to have a wrong format. +ErrorModuleFileSeemsToHaveAWrongFormat2=At least one mandatory directory must exists into zip of module: %s or %s +ErrorFilenameDosNotMatchDolibarrPackageRules=The name of the module package (%s) does not match expected name syntax: %s +ErrorDuplicateTrigger=Error, duplicate trigger name %s. Already loaded from %s. +ErrorNoWarehouseDefined=Error, no warehouses defined. +ErrorBadLinkSourceSetButBadValueForRef=The link you use is not valid. A 'source' for payment is defined, but value for 'ref' is not valid. +ErrorTooManyErrorsProcessStopped=Too many errors. Process was stopped. +ErrorMassValidationNotAllowedWhenStockIncreaseOnAction=Mass validation is not possible when option to increase/decrease stock is set on this action (you must validate one by one so you can define the warehouse to increase/decrease) +ErrorObjectMustHaveStatusDraftToBeValidated=Object %s must have status 'Draft' to be validated. +ErrorObjectMustHaveLinesToBeValidated=Object %s must have lines to be validated. +ErrorOnlyInvoiceValidatedCanBeSentInMassAction=Only validated invoices can be sent using the "Send by email" mass action. +ErrorChooseBetweenFreeEntryOrPredefinedProduct=You must choose if article is a predefined product or not +ErrorDiscountLargerThanRemainToPaySplitItBefore=The discount you try to apply is larger than remain to pay. Split the discount in 2 smaller discounts before. +ErrorFileNotFoundWithSharedLink=File was not found. May be the share key was modified or file was removed recently. +ErrorProductBarCodeAlreadyExists=The product barcode %s already exists on another product reference. +ErrorNoteAlsoThatSubProductCantBeFollowedByLot=Note also that using virtual product to have auto increase/decrease of subproducts is not possible when at least one subproduct (or subproduct of subproducts) needs a serial/lot number. +ErrorDescRequiredForFreeProductLines=Description is mandatory for lines with free product +ErrorAPageWithThisNameOrAliasAlreadyExists=The page/container %s has the same name or alternative alias that the one your try to use +ErrorDuringChartLoad=Error when loading chart of accounts. If few accounts were not loaded, you can still enter them manually. +ErrorBadSyntaxForParamKeyForContent=Bad syntax for param keyforcontent. Must have a value starting with %s or %s +ErrorVariableKeyForContentMustBeSet=Error, the constant with name %s (with text content to show) or %s (with external url to show) must be set. +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. +ErrorObjectMustHaveStatusActiveToBeDisabled=Objects must have status 'Active' to be disabled +ErrorObjectMustHaveStatusDraftOrDisabledToBeActivated=Objects must have status 'Draft' or 'Disabled' to be enabled +ErrorNoFieldWithAttributeShowoncombobox=No fields has property 'showoncombobox' into definition of object '%s'. No way to show the combolist. +ErrorFieldRequiredForProduct=Field '%s' is required for product %s +ProblemIsInSetupOfTerminal=Problem is in setup of terminal %s. +ErrorAddAtLeastOneLineFirst=Add at least one line first +ErrorRecordAlreadyInAccountingDeletionNotPossible=Error, record is already transferred in accounting, deletion is not possible. +ErrorLanguageMandatoryIfPageSetAsTranslationOfAnother=Error, language is mandatory if you set the page as a translation of another one. +ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated page is same than this one. +ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". +ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". +ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty +# 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 +WarningSafeModeOnCheckExecDir=Warning, PHP option safe_mode is on so command must be stored inside a directory declared by php parameter safe_mode_exec_dir. +WarningBookmarkAlreadyExists=A bookmark with this title or this target (URL) already exists. +WarningPassIsEmpty=Warning, database password is empty. This is a security hole. You should add a password to your database and change your conf.php file to reflect this. +WarningConfFileMustBeReadOnly=Warning, your config file (htdocs/conf/conf.php) can be overwritten by the web server. This is a serious security hole. Modify permissions on file to be in read only mode for operating system user used by Web server. If you use Windows and FAT format for your disk, you must know that this file system does not allow to add permissions on file, so can't be completely safe. +WarningsOnXLines=Warnings on %s source record(s) +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). +WarningCloseAlways=Warning, closing is done even if amount differs between source and target elements. Enable this feature with caution. +WarningUsingThisBoxSlowDown=Warning, using this box slow down seriously all pages showing the box. +WarningClickToDialUserSetupNotComplete=Setup of ClickToDial information for your user are not complete (see tab ClickToDial onto your user card). +WarningFeatureDisabledWithDisplayOptimizedForBlindNoJs=Feature disabled when display setup is optimized for blind person or text browsers. +WarningPaymentDateLowerThanInvoiceDate=Payment date (%s) is earlier than invoice date (%s) for invoice %s. +WarningTooManyDataPleaseUseMoreFilters=Too many data (more than %s lines). Please use more filters or set the constant %s to a higher limit. +WarningSomeLinesWithNullHourlyRate=Some times were recorded by some users while their hourly rate was not defined. A value of 0 %s per hour was used but this may result in wrong valuation of time spent. +WarningYourLoginWasModifiedPleaseLogin=Your login was modified. For security purpose you will have to login with your new login before next action. +WarningAnEntryAlreadyExistForTransKey=An entry already exists for the translation key for this language +WarningNumberOfRecipientIsRestrictedInMassAction=Warning, number of different recipient is limited to %s when using the mass actions on lists +WarningDateOfLineMustBeInExpenseReportRange=Warning, the date of line is not in the range of the expense report +WarningProjectClosed=Project is closed. You must re-open it first. +WarningSomeBankTransactionByChequeWereRemovedAfter=Some bank transaction were removed after that the receipt including them were generated. So nb of cheques and total of receipt may differ from number and total in list. diff --git a/htdocs/langs/km_KH/exports.lang b/htdocs/langs/km_KH/exports.lang new file mode 100644 index 00000000000..3549e3f8b23 --- /dev/null +++ b/htdocs/langs/km_KH/exports.lang @@ -0,0 +1,135 @@ +# Dolibarr language file - Source file is en_US - exports +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 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 your selections as an export profile/template (for reuse). +SaveImportModel=Save this import profile (for reuse) ... +ExportModelName=Export profile name +ExportModelSaved=Export profile saved as %s. +ExportableFields=Exportable fields +ExportedFields=Exported fields +ImportModelName=Import profile name +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 the file format in the combo box and click on "Generate" to build the export file... +AvailableFormats=Available Formats +LibraryShort=Library +ExportCsvSeparator=Csv caracter separator +ImportCsvSeparator=Csv caracter separator +Step=Step +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 extract data +LineId=Id of line +LineLabel=Label of line +LineDescription=Description of line +LineUnitPrice=Unit price of line +LineVATRate=VAT Rate of line +LineQty=Quantity for line +LineTotalHT=Amount excl. tax for line +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 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) +Field=Field +NoFields=No fields +MoveField=Move field column number %s +ExampleOfImportFile=Example_of_import_file +SaveImportProfile=Save this import profile +ErrorImportDuplicateProfil=Failed to save this import profile with this name. An existing profile already exists with this name. +TablesTarget=Targeted tables +FieldsTarget=Targeted fields +FieldTarget=Targeted field +FieldSource=Source field +NbOfSourceLines=Number of lines in source file +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=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 correct all errors before running the definitive import. +FileWasImported=File was imported with number %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 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 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 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 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 +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=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 +ComputedField=Computed field +## filters +SelectFilterFields=If you want to filter on some values, just input values here. +FilteredFields=Filtered fields +FilteredFieldsValues=Value for filter +FormatControlRule=Format control rule +## imports updates +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/km_KH/externalsite.lang b/htdocs/langs/km_KH/externalsite.lang new file mode 100644 index 00000000000..da4853df0df --- /dev/null +++ b/htdocs/langs/km_KH/externalsite.lang @@ -0,0 +1,5 @@ +# Dolibarr language file - Source file is en_US - externalsite +ExternalSiteSetup=Setup link to external website +ExternalSiteURL=External Site URL +ExternalSiteModuleNotComplete=Module ExternalSite was not configured properly. +ExampleMyMenuEntry=My menu entry diff --git a/htdocs/langs/km_KH/ftp.lang b/htdocs/langs/km_KH/ftp.lang new file mode 100644 index 00000000000..d80b87c2715 --- /dev/null +++ b/htdocs/langs/km_KH/ftp.lang @@ -0,0 +1,14 @@ +# Dolibarr language file - Source file is en_US - ftp +FTPClientSetup=FTP Client module setup +NewFTPClient=New FTP connection setup +FTPArea=FTP Area +FTPAreaDesc=This screen shows a view of an FTP server. +SetupOfFTPClientModuleNotComplete=The setup of the FTP client module seems to be incomplete +FTPFeatureNotSupportedByYourPHP=Your PHP does not support FTP functions +FailedToConnectToFTPServer=Failed to connect to FTP server (server %s, port %s) +FailedToConnectToFTPServerWithCredentials=Failed to login to FTP server with defined login/password +FTPFailedToRemoveFile=Failed to remove file %s. +FTPFailedToRemoveDir=Failed to remove directory %s: check permissions and that the directory is empty. +FTPPassiveMode=Passive mode +ChooseAFTPEntryIntoMenu=Choose a FTP site from the menu... +FailedToGetFile=Failed to get files %s diff --git a/htdocs/langs/km_KH/help.lang b/htdocs/langs/km_KH/help.lang new file mode 100644 index 00000000000..048de16d3c0 --- /dev/null +++ b/htdocs/langs/km_KH/help.lang @@ -0,0 +1,23 @@ +# Dolibarr language file - Source file is en_US - help +CommunitySupport=Forum/Wiki support +EMailSupport=Emails support +RemoteControlSupport=Online real-time / remote support +OtherSupport=Other support +ToSeeListOfAvailableRessources=To contact/see available resources: +HelpCenter=Help Center +DolibarrHelpCenter=Dolibarr Help and Support Center +ToGoBackToDolibarr=Otherwise, click here to continue to use Dolibarr. +TypeOfSupport=Type of support +TypeSupportCommunauty=Community (free) +TypeSupportCommercial=Commercial +TypeOfHelp=Type +NeedHelpCenter=Need help or support? +Efficiency=Efficiency +TypeHelpOnly=Help only +TypeHelpDev=Help+Development +TypeHelpDevForm=Help+Development+Training +BackToHelpCenter=Otherwise, go back to Help center home page. +LinkToGoldMember=You can call one of the trainers preselected by Dolibarr for your language (%s) by clicking their Widget (status and maximum price are automatically updated): +PossibleLanguages=Supported languages +SubscribeToFoundation=Help the Dolibarr project, subscribe to the foundation +SeeOfficalSupport=For official Dolibarr support in your language:
    %s diff --git a/htdocs/langs/km_KH/holiday.lang b/htdocs/langs/km_KH/holiday.lang new file mode 100644 index 00000000000..82de49f9c5f --- /dev/null +++ b/htdocs/langs/km_KH/holiday.lang @@ -0,0 +1,133 @@ +# Dolibarr language file - Source file is en_US - holiday +HRM=HRM +Holidays=Leave +CPTitreMenu=Leave +MenuReportMonth=Monthly statement +MenuAddCP=New leave request +NotActiveModCP=You must enable the module Leave to view this page. +AddCP=Make a leave request +DateDebCP=Start date +DateFinCP=End date +DraftCP=Draft +ToReviewCP=Awaiting approval +ApprovedCP=Approved +CancelCP=Canceled +RefuseCP=Refused +ValidatorCP=Approbator +ListeCP=List of leave +LeaveId=Leave ID +ReviewedByCP=Will be approved by +UserID=User ID +UserForApprovalID=User for approval ID +UserForApprovalFirstname=First name of approval user +UserForApprovalLastname=Last name of approval user +UserForApprovalLogin=Login of approval user +DescCP=Description +SendRequestCP=Create leave request +DelayToRequestCP=Leave requests must be made at least %s day(s) before them. +MenuConfCP=Balance of leave +SoldeCPUser=Leave balance is %s days. +ErrorEndDateCP=You must select an end date greater than the start date. +ErrorSQLCreateCP=An SQL error occurred during the creation: +ErrorIDFicheCP=An error has occurred, the leave request does not exist. +ReturnCP=Return to previous page +ErrorUserViewCP=You are not authorized to read this leave request. +InfosWorkflowCP=Information Workflow +RequestByCP=Requested by +TitreRequestCP=Leave request +TypeOfLeaveId=Type of leave ID +TypeOfLeaveCode=Type of leave code +TypeOfLeaveLabel=Type of leave label +NbUseDaysCP=Number of days of vacation consumed +NbUseDaysCPHelp=The calculation takes into account the non working days and the holidays defined in the dictionary. +NbUseDaysCPShort=Days consumed +NbUseDaysCPShortInMonth=Days consumed in month +DayIsANonWorkingDay=%s is a non working day +DateStartInMonth=Start date in month +DateEndInMonth=End date in month +EditCP=Edit +DeleteCP=Delete +ActionRefuseCP=Refuse +ActionCancelCP=Cancel +StatutCP=Status +TitleDeleteCP=Delete the leave request +ConfirmDeleteCP=Confirm the deletion of this leave request? +ErrorCantDeleteCP=Error you don't have the right to delete this leave request. +CantCreateCP=You don't have the right to make leave requests. +InvalidValidatorCP=You must choose an approbator to your leave request. +NoDateDebut=You must select a start date. +NoDateFin=You must select an end date. +ErrorDureeCP=Your leave request does not contain working day. +TitleValidCP=Approve the leave request +ConfirmValidCP=Are you sure you want to approve the leave request? +DateValidCP=Date approved +TitleToValidCP=Send leave request +ConfirmToValidCP=Are you sure you want to send the leave request? +TitleRefuseCP=Refuse the leave request +ConfirmRefuseCP=Are you sure you want to refuse the leave request? +NoMotifRefuseCP=You must choose a reason for refusing the request. +TitleCancelCP=Cancel the leave request +ConfirmCancelCP=Are you sure you want to cancel the leave request? +DetailRefusCP=Reason for refusal +DateRefusCP=Date of refusal +DateCancelCP=Date of cancellation +DefineEventUserCP=Assign an exceptional leave for a user +addEventToUserCP=Assign leave +NotTheAssignedApprover=You are not the assigned approver +MotifCP=Reason +UserCP=User +ErrorAddEventToUserCP=An error occurred while adding the exceptional leave. +AddEventToUserOkCP=The addition of the exceptional leave has been completed. +MenuLogCP=View change logs +LogCP=Log of updates of available vacation days +ActionByCP=Performed by +UserUpdateCP=For the user +PrevSoldeCP=Previous Balance +NewSoldeCP=New Balance +alreadyCPexist=A leave request has already been done on this period. +FirstDayOfHoliday=First day of vacation +LastDayOfHoliday=Last day of vacation +BoxTitleLastLeaveRequests=Latest %s modified leave requests +HolidaysMonthlyUpdate=Monthly update +ManualUpdate=Manual update +HolidaysCancelation=Leave request cancelation +EmployeeLastname=Employee last name +EmployeeFirstname=Employee first name +TypeWasDisabledOrRemoved=Leave type (id %s) was disabled or removed +LastHolidays=Latest %s leave requests +AllHolidays=All leave requests +HalfDay=Half day +NotTheAssignedApprover=You are not the assigned approver +LEAVE_PAID=Paid vacation +LEAVE_SICK=Sick leave +LEAVE_OTHER=Other leave +LEAVE_PAID_FR=Paid vacation +## Configuration du Module ## +LastUpdateCP=Latest automatic update of leave allocation +MonthOfLastMonthlyUpdate=Month of latest automatic update of leave allocation +UpdateConfCPOK=Updated successfully. +Module27130Name= Management of leave requests +Module27130Desc= Management of leave requests +ErrorMailNotSend=An error occurred while sending email: +NoticePeriod=Notice period +#Messages +HolidaysToValidate=Validate leave requests +HolidaysToValidateBody=Below is a leave request to validate +HolidaysToValidateDelay=This leave request will take place within a period of less than %s days. +HolidaysToValidateAlertSolde=The user who made this leave request does not have enough available days. +HolidaysValidated=Validated leave requests +HolidaysValidatedBody=Your leave request for %s to %s has been validated. +HolidaysRefused=Request denied +HolidaysRefusedBody=Your leave request for %s to %s has been denied for the following reason: +HolidaysCanceled=Canceled leaved request +HolidaysCanceledBody=Your leave request for %s to %s has been canceled. +FollowedByACounter=1: This type of leave need to be followed by a counter. Counter is incremented manually or automatically and when a leave request is validated, counter is decremented.
    0: Not followed by a counter. +NoLeaveWithCounterDefined=There is no leave types defined that need to be followed by a counter +GoIntoDictionaryHolidayTypes=Go into Home - Setup - Dictionaries - Type of leave to setup the different types of leaves. +HolidaySetup=Setup of module Holiday +HolidaysNumberingModules=Leave requests numbering models +TemplatePDFHolidays=Template for leave requests PDF +FreeLegalTextOnHolidays=Free text on PDF +WatermarkOnDraftHolidayCards=Watermarks on draft leave requests +HolidaysToApprove=Holidays to approve +NobodyHasPermissionToValidateHolidays=Nobody has permission to validate holidays diff --git a/htdocs/langs/km_KH/hrm.lang b/htdocs/langs/km_KH/hrm.lang new file mode 100644 index 00000000000..3697c47e30d --- /dev/null +++ b/htdocs/langs/km_KH/hrm.lang @@ -0,0 +1,18 @@ +# Dolibarr language file - en_US - hrm +# Admin +HRM_EMAIL_EXTERNAL_SERVICE=Email to prevent HRM external service +Establishments=Establishments +Establishment=Establishment +NewEstablishment=New establishment +DeleteEstablishment=Delete establishment +ConfirmDeleteEstablishment=Are you sure you wish to delete this establishment? +OpenEtablishment=Open establishment +CloseEtablishment=Close establishment +# Dictionary +DictionaryPublicHolidays=HRM - Public holidays +DictionaryDepartment=HRM - Department list +DictionaryFunction=HRM - Function list +# Module +Employees=Employees +Employee=Employee +NewEmployee=New employee diff --git a/htdocs/langs/km_KH/install.lang b/htdocs/langs/km_KH/install.lang new file mode 100644 index 00000000000..f67dff57184 --- /dev/null +++ b/htdocs/langs/km_KH/install.lang @@ -0,0 +1,223 @@ +# Dolibarr language file - Source file is en_US - install +InstallEasy=Just follow the instructions step by step. +MiscellaneousChecks=Prerequisites check +ConfFileExists=Configuration file %s exists. +ConfFileDoesNotExistsAndCouldNotBeCreated=Configuration file %s does not exist and could not be created! +ConfFileCouldBeCreated=Configuration file %s could be created. +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=Configuration file %s is writable. +ConfFileMustBeAFileNotADir=Configuration file %s must be a file, not a directory. +ConfFileReload=Reloading parameters from configuration file. +PHPSupportSessions=This PHP supports sessions. +PHPSupportPOSTGETOk=This PHP supports variables POST and 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. +PHPSupportCalendar=This PHP supports calendars extensions. +PHPSupportUTF8=This PHP supports UTF8 functions. +PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. +PHPSupport=This PHP supports %s functions. +PHPMemoryOK=Your PHP max session memory is set to %s. This should be enough. +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. +ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. +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. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. +ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. +ErrorDirDoesNotExists=Directory %s does not exist. +ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. +ErrorWrongValueForParameter=You may have typed a wrong value for parameter '%s'. +ErrorFailedToCreateDatabase=Failed to create database '%s'. +ErrorFailedToConnectToDatabase=Failed to connect to database '%s'. +ErrorDatabaseVersionTooLow=Database version (%s) too old. Version %s or higher is required. +ErrorPHPVersionTooLow=PHP version too old. Version %s is required. +ErrorConnectedButDatabaseNotFound=Connection to server successful but database '%s' not found. +ErrorDatabaseAlreadyExists=Database '%s' already exists. +IfDatabaseNotExistsGoBackAndUncheckCreate=If the database does not exist, go back and check option "Create database". +IfDatabaseExistsGoBackAndCheckCreate=If database already exists, go back and uncheck "Create database" option. +WarningBrowserTooOld=Version of browser is too old. Upgrading your browser to a recent version of Firefox, Chrome or Opera is highly recommended. +PHPVersion=PHP Version +License=Using license +ConfigurationFile=Configuration file +WebPagesDirectory=Directory where web pages are stored +DocumentsDirectory=Directory to store uploaded and generated documents +URLRoot=URL Root +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=Driver type +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. +DatabaseServer=Database server +DatabaseName=Database name +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=Password for Dolibarr database owner. +CreateDatabase=Create database +CreateUser=Create user account or grant user account permission on the Dolibarr database +DatabaseSuperUserAccess=Database server - Superuser access +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 +ServerConnection=Server connection +DatabaseCreation=Database creation +CreateDatabaseObjects=Database objects creation +ReferenceDataLoading=Reference data loading +TablesAndPrimaryKeysCreation=Tables and Primary keys creation +CreateTableAndPrimaryKey=Create table %s +CreateOtherKeysForTable=Create foreign keys and indexes for table %s +OtherKeysCreation=Foreign keys and indexes creation +FunctionsCreation=Functions creation +AdminAccountCreation=Administrator login creation +PleaseTypePassword=Please type a password, empty passwords are not allowed! +PleaseTypeALogin=Please type a login! +PasswordsMismatch=Passwords differs, please try again! +SetupEnd=End of setup +SystemIsInstalled=This installation is complete. +SystemIsUpgraded=Dolibarr has been upgraded successfully. +YouNeedToPersonalizeSetup=You need to configure Dolibarr to suit your needs (appearance, features, ...). To do this, please follow the link below: +AdminLoginCreatedSuccessfuly=Dolibarr administrator login '%s' created successfully. +GoToDolibarr=Go to Dolibarr +GoToSetupArea=Go to Dolibarr (setup area) +MigrationNotFinished=The database version is not completely up to date: run the upgrade process again. +GoToUpgradePage=Go to upgrade page again +WithNoSlashAtTheEnd=Without the slash "/" at the end +DirectoryRecommendation=IMPORTANT: You must use a directory that is outside of the web pages (so do not use a subdirectory of previous parameter). +LoginAlreadyExists=Already exists +DolibarrAdminLogin=Dolibarr admin login +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 +ChoosedMigrateScript=Choose migration script +DataMigration=Database migration (data) +DatabaseMigration=Database migration (structure + some data) +ProcessMigrateScript=Script processing +ChooseYourSetupMode=Choose your setup mode and click "Start"... +FreshInstall=Fresh install +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=Upgrade +UpgradeDesc=Use this mode if you have replaced old Dolibarr files with files from a newer version. This will upgrade your database and data. +Start=Start +InstallNotAllowed=Setup not allowed by conf.php permissions +YouMustCreateWithPermission=You must create file %s and set write permissions on it for the web server during install process. +CorrectProblemAndReloadPage=Please fix the problem and press F5 to reload the page. +AlreadyDone=Already migrated +DatabaseVersion=Database version +ServerVersion=Database server version +YouMustCreateItAndAllowServerToWrite=You must create this directory and allow for the web server to write into it. +DBSortingCollation=Character sorting order +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. +OrphelinsPaymentsDetectedByMethod=Orphans payment detected by method %s +RemoveItManuallyAndPressF5ToContinue=Remove it manually and press F5 to continue. +FieldRenamed=Field renamed +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=Recommended choice to install version %s from your current version %s +InstallChoiceSuggested=Install choice suggested by installer. +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=If this name is correct and that database does not exist yet, you must check option "Create database". +OpenBaseDir=PHP openbasedir parameter +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 +MigrationShippingDelivery=Upgrade storage of shipping +MigrationShippingDelivery2=Upgrade storage of shipping 2 +MigrationFinished=Migration finished +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. +ActivateModule=Activate module %s +ShowEditTechnicalParameters=Click here to show/edit advanced parameters (expert mode) +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 +######### +# upgrade +MigrationFixData=Fix for denormalized data +MigrationOrder=Data migration for customer's orders +MigrationSupplierOrder=Data migration for vendor's orders +MigrationProposal=Data migration for commercial proposals +MigrationInvoice=Data migration for customer's invoices +MigrationContract=Data migration for contracts +MigrationSuccessfullUpdate=Upgrade successful +MigrationUpdateFailed=Failed upgrade process +MigrationRelationshipTables=Data migration for relationship tables (%s) +MigrationPaymentsUpdate=Payment data correction +MigrationPaymentsNumberToUpdate=%s payment(s) to update +MigrationProcessPaymentUpdate=Update payment(s) %s +MigrationPaymentsNothingToUpdate=No more things to do +MigrationPaymentsNothingUpdatable=No more payments that can be corrected +MigrationContractsUpdate=Contract data correction +MigrationContractsNumberToUpdate=%s contract(s) to update +MigrationContractsLineCreation=Create contract line for contract ref %s +MigrationContractsNothingToUpdate=No more things to do +MigrationContractsFieldDontExist=Field fk_facture does not exist anymore. Nothing to do. +MigrationContractsEmptyDatesUpdate=Contract empty date correction +MigrationContractsEmptyDatesUpdateSuccess=Contract empty date correction done successfully +MigrationContractsEmptyDatesNothingToUpdate=No contract empty date to correct +MigrationContractsEmptyCreationDatesNothingToUpdate=No contract creation date to correct +MigrationContractsInvalidDatesUpdate=Bad value date contract correction +MigrationContractsInvalidDateFix=Correct contract %s (Contract date=%s, Starting service date min=%s) +MigrationContractsInvalidDatesNumber=%s contracts modified +MigrationContractsInvalidDatesNothingToUpdate=No date with bad value to correct +MigrationContractsIncoherentCreationDateUpdate=Bad value contract creation date correction +MigrationContractsIncoherentCreationDateUpdateSuccess=Bad value contract creation date correction done successfully +MigrationContractsIncoherentCreationDateNothingToUpdate=No bad value for contract creation date to correct +MigrationReopeningContracts=Open contract closed by error +MigrationReopenThisContract=Reopen contract %s +MigrationReopenedContractsNumber=%s contracts modified +MigrationReopeningContractsNothingToUpdate=No closed contract to open +MigrationBankTransfertsUpdate=Update links between bank entry and a bank transfer +MigrationBankTransfertsNothingToUpdate=All links are up to date +MigrationShipmentOrderMatching=Sendings receipt update +MigrationDeliveryOrderMatching=Delivery receipt update +MigrationDeliveryDetail=Delivery update +MigrationStockDetail=Update stock value of products +MigrationMenusDetail=Update dynamic menus tables +MigrationDeliveryAddress=Update delivery address in shipments +MigrationProjectTaskActors=Data migration for table llx_projet_task_actors +MigrationProjectUserResp=Data migration field fk_user_resp of llx_projet to llx_element_contact +MigrationProjectTaskTime=Update time spent in seconds +MigrationActioncommElement=Update data on actions +MigrationPaymentMode=Data migration for payment type +MigrationCategorieAssociation=Migration of categories +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 +MigrationFieldsSocialNetworks=Migration of users fields social networks (%s) +MigrationReloadModule=Reload module %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. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/km_KH/interventions.lang b/htdocs/langs/km_KH/interventions.lang new file mode 100644 index 00000000000..e5936f8246e --- /dev/null +++ b/htdocs/langs/km_KH/interventions.lang @@ -0,0 +1,66 @@ +# Dolibarr language file - Source file is en_US - interventions +Intervention=Intervention +Interventions=Interventions +InterventionCard=Intervention card +NewIntervention=New intervention +AddIntervention=Create intervention +ChangeIntoRepeatableIntervention=Change to repeatable intervention +ListOfInterventions=List of interventions +ActionsOnFicheInter=Actions on intervention +LastInterventions=Latest %s interventions +AllInterventions=All interventions +CreateDraftIntervention=Create draft +InterventionContact=Intervention contact +DeleteIntervention=Delete intervention +ValidateIntervention=Validate intervention +ModifyIntervention=Modify intervention +DeleteInterventionLine=Delete intervention line +ConfirmDeleteIntervention=Are you sure you want to delete this intervention? +ConfirmValidateIntervention=Are you sure you want to validate this intervention under name %s? +ConfirmModifyIntervention=Are you sure you want to modify this intervention? +ConfirmDeleteInterventionLine=Are you sure you want to delete this intervention line? +ConfirmCloneIntervention=Are you sure you want to clone this intervention? +NameAndSignatureOfInternalContact=Name and signature of intervening: +NameAndSignatureOfExternalContact=Name and signature of customer: +DocumentModelStandard=Standard document model for interventions +InterventionCardsAndInterventionLines=Interventions and lines of interventions +InterventionClassifyBilled=Classify "Billed" +InterventionClassifyUnBilled=Classify "Unbilled" +InterventionClassifyDone=Classify "Done" +StatusInterInvoiced=Billed +SendInterventionRef=Submission of intervention %s +SendInterventionByMail=Send intervention by email +InterventionCreatedInDolibarr=Intervention %s created +InterventionValidatedInDolibarr=Intervention %s validated +InterventionModifiedInDolibarr=Intervention %s modified +InterventionClassifiedBilledInDolibarr=Intervention %s set as billed +InterventionClassifiedUnbilledInDolibarr=Intervention %s set as unbilled +InterventionSentByEMail=Intervention %s sent by email +InterventionDeletedInDolibarr=Intervention %s deleted +InterventionsArea=Interventions area +DraftFichinter=Draft interventions +LastModifiedInterventions=Latest %s modified interventions +FichinterToProcess=Interventions to process +TypeContact_fichinter_external_CUSTOMER=Following-up customer contact +PrintProductsOnFichinter=Print also lines of type "product" (not only services) on intervention card +PrintProductsOnFichinterDetails=interventions generated from orders +UseServicesDurationOnFichinter=Use services duration for interventions generated from orders +UseDurationOnFichinter=Hides the duration field for intervention records +UseDateWithoutHourOnFichinter=Hides hours and minutes off the date field for intervention records +InterventionStatistics=Statistics of interventions +NbOfinterventions=No. of intervention cards +NumberOfInterventionsByMonth=No. of intervention cards by month (date of validation) +AmountOfInteventionNotIncludedByDefault=Amount of intervention is not included by default into profit (in most cases, timesheets are used to count time spent). Add option PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT to 1 into home-setup-other to include them. +InterId=Intervention id +InterRef=Intervention ref. +InterDateCreation=Date creation intervention +InterDuration=Duration intervention +InterStatus=Status intervention +InterNote=Note intervention +InterLine=Line of intervention +InterLineId=Line id intervention +InterLineDate=Line date intervention +InterLineDuration=Line duration intervention +InterLineDesc=Line description intervention +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/km_KH/languages.lang b/htdocs/langs/km_KH/languages.lang new file mode 100644 index 00000000000..6185183161b --- /dev/null +++ b/htdocs/langs/km_KH/languages.lang @@ -0,0 +1,89 @@ +# Dolibarr language file - Source file is en_US - languages +Language_ar_AR=Arabic +Language_ar_EG=Arabic (Egypt) +Language_ar_SA=Arabic +Language_bn_BD=Bengali +Language_bg_BG=Bulgarian +Language_bs_BA=Bosnian +Language_ca_ES=Catalan +Language_cs_CZ=Czech +Language_da_DA=Danish +Language_da_DK=Danish +Language_de_DE=German +Language_de_AT=German (Austria) +Language_de_CH=German (Switzerland) +Language_el_GR=Greek +Language_el_CY=Greek (Cyprus) +Language_en_AU=English (Australia) +Language_en_CA=English (Canada) +Language_en_GB=English (United Kingdom) +Language_en_IN=English (India) +Language_en_NZ=English (New Zealand) +Language_en_SA=English (Saudi Arabia) +Language_en_US=English (United States) +Language_en_ZA=English (South Africa) +Language_es_ES=Spanish +Language_es_AR=Spanish (Argentina) +Language_es_BO=Spanish (Bolivia) +Language_es_CL=Spanish (Chile) +Language_es_CO=Spanish (Colombia) +Language_es_DO=Spanish (Dominican Republic) +Language_es_EC=Spanish (Ecuador) +Language_es_HN=Spanish (Honduras) +Language_es_MX=Spanish (Mexico) +Language_es_PA=Spanish (Panama) +Language_es_PY=Spanish (Paraguay) +Language_es_PE=Spanish (Peru) +Language_es_PR=Spanish (Puerto Rico) +Language_es_UY=Spanish (Uruguay) +Language_es_VE=Spanish (Venezuela) +Language_et_EE=Estonian +Language_eu_ES=Basque +Language_fa_IR=Persian +Language_fi_FI=Finnish +Language_fr_BE=French (Belgium) +Language_fr_CA=French (Canada) +Language_fr_CH=French (Switzerland) +Language_fr_FR=French +Language_fr_NC=French (New Caledonia) +Language_fy_NL=Frisian +Language_he_IL=Hebrew +Language_hr_HR=Croatian +Language_hu_HU=Hungarian +Language_id_ID=Indonesian +Language_is_IS=Icelandic +Language_it_IT=Italian +Language_ja_JP=Japanese +Language_ka_GE=Georgian +Language_km_KH=Khmer +Language_kn_IN=Kannada +Language_ko_KR=Korean +Language_lo_LA=Lao +Language_lt_LT=Lithuanian +Language_lv_LV=Latvian +Language_mk_MK=Macedonian +Language_mn_MN=Mongolian +Language_nb_NO=Norwegian (Bokmål) +Language_nl_BE=Dutch (Belgium) +Language_nl_NL=Dutch +Language_pl_PL=Polish +Language_pt_BR=Portuguese (Brazil) +Language_pt_PT=Portuguese +Language_ro_RO=Romanian +Language_ru_RU=Russian +Language_ru_UA=Russian (Ukraine) +Language_tr_TR=Turkish +Language_sl_SI=Slovenian +Language_sv_SV=Swedish +Language_sv_SE=Swedish +Language_sq_AL=Albanian +Language_sk_SK=Slovakian +Language_sr_RS=Serbian +Language_sw_SW=Kiswahili +Language_th_TH=Thai +Language_uk_UA=Ukrainian +Language_uz_UZ=Uzbek +Language_vi_VN=Vietnamese +Language_zh_CN=Chinese +Language_zh_TW=Chinese (Traditional) +Language_bh_MY=Malay diff --git a/htdocs/langs/km_KH/ldap.lang b/htdocs/langs/km_KH/ldap.lang new file mode 100644 index 00000000000..8b6f0864215 --- /dev/null +++ b/htdocs/langs/km_KH/ldap.lang @@ -0,0 +1,27 @@ +# Dolibarr language file - Source file is en_US - ldap +YouMustChangePassNextLogon=Password for user %s on the domain %s must be changed. +UserMustChangePassNextLogon=User must change password on the domain %s +LDAPInformationsForThisContact=Information in LDAP database for this contact +LDAPInformationsForThisUser=Information in LDAP database for this user +LDAPInformationsForThisGroup=Information in LDAP database for this group +LDAPInformationsForThisMember=Information in LDAP database for this member +LDAPInformationsForThisMemberType=Information in LDAP database for this member type +LDAPAttributes=LDAP attributes +LDAPCard=LDAP card +LDAPRecordNotFound=Record not found in LDAP database +LDAPUsers=Users in LDAP database +LDAPFieldStatus=Status +LDAPFieldFirstSubscriptionDate=First subscription date +LDAPFieldFirstSubscriptionAmount=First subscription amount +LDAPFieldLastSubscriptionDate=Latest subscription date +LDAPFieldLastSubscriptionAmount=Latest subscription amount +LDAPFieldSkype=Skype id +LDAPFieldSkypeExample=Example: skypeName +UserSynchronized=User synchronized +GroupSynchronized=Group synchronized +MemberSynchronized=Member synchronized +MemberTypeSynchronized=Member type synchronized +ContactSynchronized=Contact synchronized +ForceSynchronize=Force synchronizing Dolibarr -> LDAP +ErrorFailedToReadLDAP=Failed to read LDAP database. Check LDAP module setup and database accessibility. +PasswordOfUserInLDAP=Password of user in LDAP diff --git a/htdocs/langs/km_KH/link.lang b/htdocs/langs/km_KH/link.lang new file mode 100644 index 00000000000..1ffcd41a18b --- /dev/null +++ b/htdocs/langs/km_KH/link.lang @@ -0,0 +1,11 @@ +# Dolibarr language file - Source file is en_US - languages +LinkANewFile=Link a new file/document +LinkedFiles=Linked files and documents +NoLinkFound=No registered links +LinkComplete=The file has been linked successfully +ErrorFileNotLinked=The file could not be linked +LinkRemoved=The link %s has been removed +ErrorFailedToDeleteLink= Failed to remove link '%s' +ErrorFailedToUpdateLink= Failed to update link '%s' +URLToLink=URL to link +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/km_KH/loan.lang b/htdocs/langs/km_KH/loan.lang new file mode 100644 index 00000000000..534dee08867 --- /dev/null +++ b/htdocs/langs/km_KH/loan.lang @@ -0,0 +1,31 @@ +# Dolibarr language file - Source file is en_US - loan +Loan=Loan +Loans=Loans +NewLoan=New Loan +ShowLoan=Show Loan +PaymentLoan=Loan payment +LoanPayment=Loan payment +ShowLoanPayment=Show Loan Payment +LoanCapital=Capital +Insurance=Insurance +Interest=Interest +Nbterms=Number of terms +Term=Term +LoanAccountancyCapitalCode=Accounting account capital +LoanAccountancyInsuranceCode=Accounting account insurance +LoanAccountancyInterestCode=Accounting account interest +ConfirmDeleteLoan=Confirm deleting this loan +LoanDeleted=Loan Deleted Successfully +ConfirmPayLoan=Confirm classify paid this loan +LoanPaid=Loan Paid +ListLoanAssociatedProject=List of loan associated with the project +AddLoan=Create loan +FinancialCommitment=Financial commitment +InterestAmount=Interest +CapitalRemain=Capital remain +# Admin +ConfigLoan=Configuration of the module loan +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 diff --git a/htdocs/langs/km_KH/mailmanspip.lang b/htdocs/langs/km_KH/mailmanspip.lang new file mode 100644 index 00000000000..bab4b3576b4 --- /dev/null +++ b/htdocs/langs/km_KH/mailmanspip.lang @@ -0,0 +1,27 @@ +# Dolibarr language file - Source file is en_US - mailmanspip +MailmanSpipSetup=Mailman and SPIP module Setup +MailmanTitle=Mailman mailing list system +TestSubscribe=To test subscription to Mailman lists +TestUnSubscribe=To test unsubscribe from Mailman lists +MailmanCreationSuccess=Subscription test was executed successfully +MailmanDeletionSuccess=Unsubscription test was executed successfully +SynchroMailManEnabled=A Mailman update will be performed +SynchroSpipEnabled=A Spip update will be performed +DescADHERENT_MAILMAN_ADMINPW=Mailman administrator password +DescADHERENT_MAILMAN_URL=URL for Mailman subscriptions +DescADHERENT_MAILMAN_UNSUB_URL=URL for Mailman unsubscriptions +DescADHERENT_MAILMAN_LISTS=List(s) for automatic inscription of new members (separated by a comma) +SPIPTitle=SPIP Content Management System +DescADHERENT_SPIP_SERVEUR=SPIP Server +DescADHERENT_SPIP_DB=SPIP database name +DescADHERENT_SPIP_USER=SPIP database login +DescADHERENT_SPIP_PASS=SPIP database password +AddIntoSpip=Add into SPIP +AddIntoSpipConfirmation=Are you sure you want to add this member into SPIP? +AddIntoSpipError=Failed to add the user in SPIP +DeleteIntoSpip=Remove from SPIP +DeleteIntoSpipConfirmation=Are you sure you want to remove this member from SPIP? +DeleteIntoSpipError=Failed to suppress the user from SPIP +SPIPConnectionFailed=Failed to connect to SPIP +SuccessToAddToMailmanList=%s successfully added to mailman list %s or SPIP database +SuccessToRemoveToMailmanList=%s successfully removed from mailman list %s or SPIP database diff --git a/htdocs/langs/km_KH/mails.lang b/htdocs/langs/km_KH/mails.lang new file mode 100644 index 00000000000..7b3bfd3852a --- /dev/null +++ b/htdocs/langs/km_KH/mails.lang @@ -0,0 +1,170 @@ +# Dolibarr language file - Source file is en_US - mails +Mailing=EMailing +EMailing=EMailing +EMailings=EMailings +AllEMailings=All eMailings +MailCard=EMailing card +MailRecipients=Recipients +MailRecipient=Recipient +MailTitle=Description +MailFrom=Sender +MailErrorsTo=Errors to +MailReply=Reply to +MailTo=Receiver(s) +MailToUsers=To user(s) +MailCC=Copy to +MailToCCUsers=Copy to users(s) +MailCCC=Cached copy to +MailTopic=Email topic +MailText=Message +MailFile=Attached files +MailMessage=Email body +SubjectNotIn=Not in Subject +BodyNotIn=Not in Body +ShowEMailing=Show emailing +ListOfEMailings=List of emailings +NewMailing=New emailing +EditMailing=Edit emailing +ResetMailing=Resend emailing +DeleteMailing=Delete emailing +DeleteAMailing=Delete an emailing +PreviewMailing=Preview emailing +CreateMailing=Create emailing +TestMailing=Test email +ValidMailing=Valid emailing +MailingStatusDraft=Draft +MailingStatusValidated=Validated +MailingStatusSent=Sent +MailingStatusSentPartialy=Sent partially +MailingStatusSentCompletely=Sent completely +MailingStatusError=Error +MailingStatusNotSent=Not sent +MailSuccessfulySent=Email (from %s to %s) successfully accepted for delivery +MailingSuccessfullyValidated=EMailing successfully validated +MailUnsubcribe=Unsubscribe +MailingStatusNotContact=Don't contact anymore +MailingStatusReadAndUnsubscribe=Read and unsubscribe +ErrorMailRecipientIsEmpty=Email recipient is empty +WarningNoEMailsAdded=No new Email to add to recipient's list. +ConfirmValidMailing=Are you sure you want to validate this emailing? +ConfirmResetMailing=Warning, by re-initializing emailing %s, you will allow the re-sending this email in a bulk mailing. Are you sure you want to do this? +ConfirmDeleteMailing=Are you sure you want to delete this emailing? +NbOfUniqueEMails=No. of unique emails +NbOfEMails=No. of EMails +TotalNbOfDistinctRecipients=Number of distinct recipients +NoTargetYet=No recipients defined yet (Go on tab 'Recipients') +NoRecipientEmail=No recipient email for %s +RemoveRecipient=Remove recipient +YouCanAddYourOwnPredefindedListHere=To create your email selector module, see htdocs/core/modules/mailings/README. +EMailTestSubstitutionReplacedByGenericValues=When using test mode, substitutions variables are replaced by generic values +MailingAddFile=Attach this file +NoAttachedFiles=No attached files +BadEMail=Bad value for Email +ConfirmCloneEMailing=Are you sure you want to clone this emailing? +CloneContent=Clone message +CloneReceivers=Cloner recipients +DateLastSend=Date of latest sending +DateSending=Date sending +SentTo=Sent to %s +MailingStatusRead=Read +YourMailUnsubcribeOK=The email %s is correctly unsubscribe from mailing list +ActivateCheckReadKey=Key used to encrypt URL used for "Read Receipt" and "Unsubscribe" feature +EMailSentToNRecipients=Email sent to %s recipients. +EMailSentForNElements=Email sent for %s elements. +XTargetsAdded=%s recipients added into target list +OnlyPDFattachmentSupported=If the PDF documents were already generated for the objects to send, they will be attached to email. If not, no email will be sent (also, note that only pdf documents are supported as attachments in mass sending in this version). +AllRecipientSelected=The recipients of the %s record selected (if their email is known). +GroupEmails=Group emails +OneEmailPerRecipient=One email per recipient (by default, one email per record selected) +WarningIfYouCheckOneRecipientPerEmail=Warning, if you check this box, it means only one email will be sent for several different record selected, so, if your message contains substitution variables that refers to data of a record, it becomes not possible to replace them. +ResultOfMailSending=Result of mass Email sending +NbSelected=Number selected +NbIgnored=Number ignored +NbSent=Number sent +SentXXXmessages=%s message(s) sent. +ConfirmUnvalidateEmailing=Are you sure you want to change email %s to draft status? +MailingModuleDescContactsWithThirdpartyFilter=Contact with customer filters +MailingModuleDescContactsByCompanyCategory=Contacts by third-party category +MailingModuleDescContactsByCategory=Contacts by categories +MailingModuleDescContactsByFunction=Contacts by position +MailingModuleDescEmailsFromFile=Emails from file +MailingModuleDescEmailsFromUser=Emails input by user +MailingModuleDescDolibarrUsers=Users with Emails +MailingModuleDescThirdPartiesByCategories=Third parties (by categories) +SendingFromWebInterfaceIsNotAllowed=Sending from web interface is not allowed. + +# Libelle des modules de liste de destinataires mailing +LineInFile=Line %s in file +RecipientSelectionModules=Defined requests for recipient's selection +MailSelectedRecipients=Selected recipients +MailingArea=EMailings area +LastMailings=Latest %s emailings +TargetsStatistics=Targets statistics +NbOfCompaniesContacts=Unique contacts/addresses +MailNoChangePossible=Recipients for validated emailing can't be changed +SearchAMailing=Search mailing +SendMailing=Send emailing +SentBy=Sent by +MailingNeedCommand=Sending an emailing can be performed from command line. Ask your server administrator to launch the following command to send the emailing to all recipients: +MailingNeedCommand2=You can however send them online by adding parameter MAILING_LIMIT_SENDBYWEB with value of max number of emails you want to send by session. For this, go on Home - Setup - Other. +ConfirmSendingEmailing=If you want to send emailing directly from this screen, please confirm you are sure you want to send emailing now from your browser ? +LimitSendingEmailing=Note: Sending of emailings from web interface is done in several times for security and timeout reasons, %s recipients at a time for each sending session. +TargetsReset=Clear list +ToClearAllRecipientsClickHere=Click here to clear the recipient list for this emailing +ToAddRecipientsChooseHere=Add recipients by choosing from the lists +NbOfEMailingsReceived=Mass emailings received +NbOfEMailingsSend=Mass emailings sent +IdRecord=ID record +DeliveryReceipt=Delivery Ack. +YouCanUseCommaSeparatorForSeveralRecipients=You can use the comma separator to specify several recipients. +TagCheckMail=Track mail opening +TagUnsubscribe=Unsubscribe link +TagSignature=Signature of sending user +EMailRecipient=Recipient Email +TagMailtoEmail=Recipient Email (including html "mailto:" link) +NoEmailSentBadSenderOrRecipientEmail=No email sent. Bad sender or recipient email. Verify user profile. +# Module Notifications +Notifications=Notifications +NoNotificationsWillBeSent=No email notifications are planned for this event and company +ANotificationsWillBeSent=1 notification will be sent by email +SomeNotificationsWillBeSent=%s notifications will be sent by email +AddNewNotification=Activate a new email notification target/event +ListOfActiveNotifications=List all active targets/events for email notification +ListOfNotificationsDone=List all email notifications sent +MailSendSetupIs=Configuration of email sending has been setup to '%s'. This mode can't be used to send mass emailing. +MailSendSetupIs2=You must first go, with an admin account, into menu %sHome - Setup - EMails%s to change parameter '%s' to use mode '%s'. With this mode, you can enter setup of the SMTP server provided by your Internet Service Provider and use Mass emailing feature. +MailSendSetupIs3=If you have any questions on how to setup your SMTP server, you can ask to %s. +YouCanAlsoUseSupervisorKeyword=You can also add the keyword __SUPERVISOREMAIL__ to have email being sent to the supervisor of user (works only if an email is defined for this supervisor) +NbOfTargetedContacts=Current number of targeted contact emails +UseFormatFileEmailToTarget=Imported file must have format email;name;firstname;other +UseFormatInputEmailToTarget=Enter a string with format email;name;firstname;other +MailAdvTargetRecipients=Recipients (advanced selection) +AdvTgtTitle=Fill input fields to preselect the third parties or contacts/addresses to target +AdvTgtSearchTextHelp=Use %% as wildcards. For example to find all item like jean, joe, jim, you can input j%%, you can also use ; as separator for value, and use ! for except this value. For example jean;joe;jim%%;!jimo;!jima% will target all jean, joe, start with jim but not jimo and not everything that starts with jima +AdvTgtSearchIntHelp=Use interval to select int or float value +AdvTgtMinVal=Minimum value +AdvTgtMaxVal=Maximum value +AdvTgtSearchDtHelp=Use interval to select date value +AdvTgtStartDt=Start dt. +AdvTgtEndDt=End dt. +AdvTgtTypeOfIncudeHelp=Target Email of third party and email of contact of the third party, or just third-party email or just contact email +AdvTgtTypeOfIncude=Type of targeted email +AdvTgtContactHelp=Use only if you target contact into "Type of targeted email" +AddAll=Add all +RemoveAll=Remove all +ItemsCount=Item(s) +AdvTgtNameTemplate=Filter name +AdvTgtAddContact=Add emails according to criteria +AdvTgtLoadFilter=Load filter +AdvTgtDeleteFilter=Delete filter +AdvTgtSaveFilter=Save filter +AdvTgtCreateFilter=Create filter +AdvTgtOrCreateNewFilter=Name of new filter +NoContactWithCategoryFound=No contact/address with a category found +NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found +OutGoingEmailSetup=Outgoing email setup +InGoingEmailSetup=Incoming email setup +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) +DefaultOutgoingEmailSetup=Default outgoing email setup +Information=Information +ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/km_KH/main.lang b/htdocs/langs/km_KH/main.lang index d597668081d..e35d169066d 100644 --- a/htdocs/langs/km_KH/main.lang +++ b/htdocs/langs/km_KH/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Save and stay SaveAndNew=Save and new TestConnection=Test connection ToClone=Clone +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Choose data you want to clone: NoCloneOptionsSpecified=No data to clone defined. Of=of @@ -829,6 +830,8 @@ Gender=Gender Genderman=Man Genderwoman=Woman ViewList=List view +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Mandatory Hello=Hello GoodBye=GoodBye @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Select your graph options to build a graph Measures=Measures XAxis=X-Axis YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/km_KH/margins.lang b/htdocs/langs/km_KH/margins.lang new file mode 100644 index 00000000000..76ea8ad5c4d --- /dev/null +++ b/htdocs/langs/km_KH/margins.lang @@ -0,0 +1,45 @@ +# Dolibarr language file - Source file is en_US - marges + +Margin=Margin +Margins=Margins +TotalMargin=Total Margin +MarginOnProducts=Margin / Products +MarginOnServices=Margin / Services +MarginRate=Margin rate +MarkRate=Mark rate +DisplayMarginRates=Display margin rates +DisplayMarkRates=Display mark rates +InputPrice=Input price +margin=Profit margins management +margesSetup=Profit margins management setup +MarginDetails=Margin details +ProductMargins=Product margins +CustomerMargins=Customer margins +SalesRepresentativeMargins=Sales representative margins +ContactOfInvoice=Contact of invoice +UserMargins=User margins +ProductService=Product or Service +AllProducts=All products and services +ChooseProduct/Service=Choose product or service +ForceBuyingPriceIfNull=Force buying/cost price to selling price if not defined +ForceBuyingPriceIfNullDetails=If buying/cost price not defined, and this option "ON", margin will be zero on line (buying/cost price = selling price), otherwise ("OFF"), marge will be equal to suggested default. +MARGIN_METHODE_FOR_DISCOUNT=Margin method for global discounts +UseDiscountAsProduct=As a product +UseDiscountAsService=As a service +UseDiscountOnTotal=On subtotal +MARGIN_METHODE_FOR_DISCOUNT_DETAILS=Defines if a global discount is treated as a product, a service, or only on subtotal for margin calculation. +MARGIN_TYPE=Buying/Cost price suggested by default for margin calculation +MargeType1=Margin on Best vendor price +MargeType2=Margin on Weighted Average Price (WAP) +MargeType3=Margin on Cost Price +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=Cost price +UnitCharges=Unit charges +Charges=Charges +AgentContactType=Commercial agent contact type +AgentContactTypeDetails=Define what contact type (linked on invoices) will be used for margin report per contact/address. Note that reading statistics on a contact is not reliable since in most cases the contact may not be defined explicitely on the invoices. +rateMustBeNumeric=Rate must be a numeric value +markRateShouldBeLesserThan100=Mark rate should be lower than 100 +ShowMarginInfos=Show margin infos +CheckMargins=Margins detail +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/km_KH/members.lang b/htdocs/langs/km_KH/members.lang new file mode 100644 index 00000000000..dd0a5bf49e2 --- /dev/null +++ b/htdocs/langs/km_KH/members.lang @@ -0,0 +1,204 @@ +# Dolibarr language file - Source file is en_US - members +MembersArea=Members area +MemberCard=Member card +SubscriptionCard=Subscription card +Member=Member +Members=Members +ShowMember=Show member card +UserNotLinkedToMember=User not linked to a member +ThirdpartyNotLinkedToMember=Third party not linked to a member +MembersTickets=Members Tickets +FundationMembers=Foundation members +ListOfValidatedPublicMembers=List of validated public members +ErrorThisMemberIsNotPublic=This member is not public +ErrorMemberIsAlreadyLinkedToThisThirdParty=Another member (name: %s, login: %s) is already linked to a third party %s. Remove this link first because a third party can't be linked to only a member (and vice versa). +ErrorUserPermissionAllowsToLinksToItselfOnly=For security reasons, you must be granted permissions to edit all users to be able to link a member to a user that is not yours. +SetLinkToUser=Link to a Dolibarr user +SetLinkToThirdParty=Link to a Dolibarr third party +MembersCards=Members business cards +MembersList=List of members +MembersListToValid=List of draft members (to be validated) +MembersListValid=List of valid members +MembersListUpToDate=List of valid members with up to date subscription +MembersListNotUpToDate=List of valid members with subscription out of date +MembersListResiliated=List of terminated members +MembersListQualified=List of qualified members +MenuMembersToValidate=Draft members +MenuMembersValidated=Validated members +MenuMembersUpToDate=Up to date members +MenuMembersNotUpToDate=Out of date members +MenuMembersResiliated=Terminated members +MembersWithSubscriptionToReceive=Members with subscription to receive +MembersWithSubscriptionToReceiveShort=Subscription to receive +DateSubscription=Subscription date +DateEndSubscription=Subscription end date +EndSubscription=End subscription +SubscriptionId=Subscription id +MemberId=Member id +NewMember=New member +MemberType=Member type +MemberTypeId=Member type id +MemberTypeLabel=Member type label +MembersTypes=Members types +MemberStatusDraft=Draft (needs to be validated) +MemberStatusDraftShort=Draft +MemberStatusActive=Validated (waiting subscription) +MemberStatusActiveShort=Validated +MemberStatusActiveLate=Subscription expired +MemberStatusActiveLateShort=Expired +MemberStatusPaid=Subscription up to date +MemberStatusPaidShort=Up to date +MemberStatusResiliated=Terminated member +MemberStatusResiliatedShort=Terminated +MembersStatusToValid=Draft members +MembersStatusResiliated=Terminated members +MemberStatusNoSubscription=Validated (no subscription needed) +MemberStatusNoSubscriptionShort=Validated +SubscriptionNotNeeded=No subscription needed +NewCotisation=New contribution +PaymentSubscription=New contribution payment +SubscriptionEndDate=Subscription's end date +MembersTypeSetup=Members type setup +MemberTypeModified=Member type modified +DeleteAMemberType=Delete a member type +ConfirmDeleteMemberType=Are you sure you want to delete this member type? +MemberTypeDeleted=Member type deleted +MemberTypeCanNotBeDeleted=Member type can not be deleted +NewSubscription=New subscription +NewSubscriptionDesc=This form allows you to record your subscription as a new member of the foundation. If you want to renew your subscription (if already a member), please contact foundation board instead by email %s. +Subscription=Subscription +Subscriptions=Subscriptions +SubscriptionLate=Late +SubscriptionNotReceived=Subscription never received +ListOfSubscriptions=List of subscriptions +SendCardByMail=Send card by email +AddMember=Create member +NoTypeDefinedGoToSetup=No member types defined. Go to menu "Members types" +NewMemberType=New member type +WelcomeEMail=Welcome email +SubscriptionRequired=Subscription required +DeleteType=Delete +VoteAllowed=Vote allowed +Physical=Physical +Moral=Moral +MorPhy=Moral/Physical +Reenable=Reenable +ResiliateMember=Terminate a member +ConfirmResiliateMember=Are you sure you want to terminate this member? +DeleteMember=Delete a member +ConfirmDeleteMember=Are you sure you want to delete this member (Deleting a member will delete all his subscriptions)? +DeleteSubscription=Delete a subscription +ConfirmDeleteSubscription=Are you sure you want to delete this subscription? +Filehtpasswd=htpasswd file +ValidateMember=Validate a member +ConfirmValidateMember=Are you sure you want to validate this member? +FollowingLinksArePublic=The following links are open pages not protected by any Dolibarr permission. They are not formatted pages, provided as example to show how to list members database. +PublicMemberList=Public member list +BlankSubscriptionForm=Public self-subscription form +BlankSubscriptionFormDesc=Dolibarr can provide you a public URL/website to allow external visitors to ask to subscribe to the foundation. If an online payment module is enabled, a payment form may also be automatically provided. +EnablePublicSubscriptionForm=Enable the public website with self-subscription form +ForceMemberType=Force the member type +ExportDataset_member_1=Members and subscriptions +ImportDataset_member_1=Members +LastMembersModified=Latest %s modified members +LastSubscriptionsModified=Latest %s modified subscriptions +String=String +Text=Text +Int=Int +DateAndTime=Date and time +PublicMemberCard=Member public card +SubscriptionNotRecorded=Subscription not recorded +AddSubscription=Create subscription +ShowSubscription=Show subscription +# Label of email templates +SendingAnEMailToMember=Sending information email to member +SendingEmailOnAutoSubscription=Sending email on auto registration +SendingEmailOnMemberValidation=Sending email on new member validation +SendingEmailOnNewSubscription=Sending email on new subscription +SendingReminderForExpiredSubscription=Sending reminder for expired subscriptions +SendingEmailOnCancelation=Sending email on cancelation +# Topic of email templates +YourMembershipRequestWasReceived=Your membership was received. +YourMembershipWasValidated=Your membership was validated +YourSubscriptionWasRecorded=Your new subscription was recorded +SubscriptionReminderEmail=Subscription reminder +YourMembershipWasCanceled=Your membership was canceled +CardContent=Content of your member card +# Text of email templates +ThisIsContentOfYourMembershipRequestWasReceived=We want to let you know that your membership request was received.

    +ThisIsContentOfYourMembershipWasValidated=We want to let you know that your membership was validated with the following information:

    +ThisIsContentOfYourSubscriptionWasRecorded=We want to let you know that your new subscription was recorded.

    +ThisIsContentOfSubscriptionReminderEmail=We want to let you know that your subscription is about to expire or has already expired (__MEMBER_LAST_SUBSCRIPTION_DATE_END__). We hope you will renew it.

    +ThisIsContentOfYourCard=This is a summary of the information we have about you. Please contact us if anything is incorrect.

    +DescADHERENT_AUTOREGISTER_NOTIF_MAIL_SUBJECT=Subject of the notification email received in case of auto-inscription of a guest +DescADHERENT_AUTOREGISTER_NOTIF_MAIL=Content of the notification email received in case of auto-inscription of a guest +DescADHERENT_EMAIL_TEMPLATE_AUTOREGISTER=Email template to use to send email to a member on member autosubscription +DescADHERENT_EMAIL_TEMPLATE_MEMBER_VALIDATION=Email template to use to send email to a member on member validation +DescADHERENT_EMAIL_TEMPLATE_SUBSCRIPTION=Email template to use to send email to a member on new subscription recording +DescADHERENT_EMAIL_TEMPLATE_REMIND_EXPIRATION=Email template to use to send email reminder when subscription is about to expire +DescADHERENT_EMAIL_TEMPLATE_CANCELATION=Email template to use to send email to a member on member cancelation +DescADHERENT_MAIL_FROM=Sender Email for automatic emails +DescADHERENT_ETIQUETTE_TYPE=Format of labels page +DescADHERENT_ETIQUETTE_TEXT=Text printed on member address sheets +DescADHERENT_CARD_TYPE=Format of cards page +DescADHERENT_CARD_HEADER_TEXT=Text printed on top of member cards +DescADHERENT_CARD_TEXT=Text printed on member cards (align on left) +DescADHERENT_CARD_TEXT_RIGHT=Text printed on member cards (align on right) +DescADHERENT_CARD_FOOTER_TEXT=Text printed on bottom of member cards +ShowTypeCard=Show type '%s' +HTPasswordExport=htpassword file generation +NoThirdPartyAssociatedToMember=No third party associated to this member +MembersAndSubscriptions= Members and Subscriptions +MoreActions=Complementary action on recording +MoreActionsOnSubscription=Complementary action, suggested by default when recording a subscription +MoreActionBankDirect=Create a direct entry on bank account +MoreActionBankViaInvoice=Create an invoice, and a payment on bank account +MoreActionInvoiceOnly=Create an invoice with no payment +LinkToGeneratedPages=Generate visit cards +LinkToGeneratedPagesDesc=This screen allows you to generate PDF files with business cards for all your members or a particular member. +DocForAllMembersCards=Generate business cards for all members +DocForOneMemberCards=Generate business cards for a particular member +DocForLabels=Generate address sheets +SubscriptionPayment=Subscription payment +LastSubscriptionDate=Date of latest subscription payment +LastSubscriptionAmount=Amount of latest subscription +MembersStatisticsByCountries=Members statistics by country +MembersStatisticsByState=Members statistics by state/province +MembersStatisticsByTown=Members statistics by town +MembersStatisticsByRegion=Members statistics by region +NbOfMembers=Number of members +NoValidatedMemberYet=No validated members found +MembersByCountryDesc=This screen show you statistics on members by countries. Graphic depends however on Google online graph service and is available only if an internet connection is is working. +MembersByStateDesc=This screen show you statistics on members by state/provinces/canton. +MembersByTownDesc=This screen show you statistics on members by town. +MembersStatisticsDesc=Choose statistics you want to read... +MenuMembersStats=Statistics +LastMemberDate=Latest member date +LatestSubscriptionDate=Latest subscription date +MemberNature=Nature of member +Public=Information are public +NewMemberbyWeb=New member added. Awaiting approval +NewMemberForm=New member form +SubscriptionsStatistics=Statistics on subscriptions +NbOfSubscriptions=Number of subscriptions +AmountOfSubscriptions=Amount of subscriptions +TurnoverOrBudget=Turnover (for a company) or Budget (for a foundation) +DefaultAmount=Default amount of subscription +CanEditAmount=Visitor can choose/edit amount of its subscription +MEMBER_NEWFORM_PAYONLINE=Jump on integrated online payment page +ByProperties=By nature +MembersStatisticsByProperties=Members statistics by nature +MembersByNature=This screen show you statistics on members by nature. +MembersByRegion=This screen show you statistics on members by region. +VATToUseForSubscriptions=VAT rate to use for subscriptions +NoVatOnSubscription=No VAT for subscriptions +ADHERENT_PRODUCT_ID_FOR_SUBSCRIPTIONS=Product used for subscription line into invoice: %s +NameOrCompany=Name or company +SubscriptionRecorded=Subscription recorded +NoEmailSentToMember=No email sent to member +EmailSentToMember=Email sent to member at %s +SendReminderForExpiredSubscriptionTitle=Send reminder by email for expired subscription +SendReminderForExpiredSubscription=Send reminder by email to members when subscription is about to expire (parameter is number of days before end of subscription to send the remind. It can be a list of days separated by a semicolon, for example '10;5;0;-5') +MembershipPaid=Membership paid for current period (until %s) +YouMayFindYourInvoiceInThisEmail=You may find your invoice attached to this email +XMembersClosed=%s member(s) closed diff --git a/htdocs/langs/km_KH/modulebuilder.lang b/htdocs/langs/km_KH/modulebuilder.lang new file mode 100644 index 00000000000..135ac1ae9ec --- /dev/null +++ b/htdocs/langs/km_KH/modulebuilder.lang @@ -0,0 +1,141 @@ +# Dolibarr language file - Source file is en_US - loan +ModuleBuilderDesc=This tool must be used only by experienced users or developers. It provides utilities to build or edit your own module. Documentation for alternative manual development is here. +EnterNameOfModuleDesc=Enter name of the module/application to create with no spaces. Use uppercase to separate words (For example: MyModule, EcommerceForShop, SyncWithMySystem...) +EnterNameOfObjectDesc=Enter name of the object to create with no spaces. Use uppercase to separate words (For example: MyObject, Student, Teacher...). The CRUD class file, but also API file, pages to list/add/edit/delete object and SQL files will be generated. +ModuleBuilderDesc2=Path where modules are generated/edited (first directory for external modules defined into %s): %s +ModuleBuilderDesc3=Generated/editable modules found: %s +ModuleBuilderDesc4=A module is detected as 'editable' when the file %s exists in root of module directory +NewModule=New module +NewObjectInModulebuilder=New object +ModuleKey=Module key +ObjectKey=Object key +ModuleInitialized=Module initialized +FilesForObjectInitialized=Files for new object '%s' initialized +FilesForObjectUpdated=Files for object '%s' updated (.sql files and .class.php file) +ModuleBuilderDescdescription=Enter here all general information that describe your module. +ModuleBuilderDescspecifications=You can enter here a detailed description of the specifications of your module that is not already structured into other tabs. So you have within easy reach all the rules to develop. Also this text content will be included into the generated documentation (see last tab). You can use Markdown format, but it is recommended to use Asciidoc format (comparison between .md and .asciidoc: http://asciidoctor.org/docs/user-manual/#compared-to-markdown). +ModuleBuilderDescobjects=Define here the objects you want to manage with your module. A CRUD DAO class, SQL files, page to list record of objects, to create/edit/view a record and an API will be generated. +ModuleBuilderDescmenus=This tab is dedicated to define menu entries provided by your module. +ModuleBuilderDescpermissions=This tab is dedicated to define the new permissions you want to provide with your module. +ModuleBuilderDesctriggers=This is the view of triggers provided by your module. To include code executed when a triggered business event is launched, just edit this file. +ModuleBuilderDeschooks=This tab is dedicated to hooks. +ModuleBuilderDescwidgets=This tab is dedicated to manage/build widgets. +ModuleBuilderDescbuildpackage=You can generate here a "ready to distribute" package file (a normalized .zip file) of your module and a "ready to distribute" documentation file. Just click on button to build the package or documentation file. +EnterNameOfModuleToDeleteDesc=You can delete your module. WARNING: All coding files of module (generated or created manually) AND structured data and documentation will be deleted! +EnterNameOfObjectToDeleteDesc=You can delete an object. WARNING: All coding files (generated or created manually) related to object will be deleted! +DangerZone=Danger zone +BuildPackage=Build package +BuildPackageDesc=You can generate a zip package of your application so your are ready to distribute it on any Dolibarr. You can also distribute it or sell it on marketplace like DoliStore.com. +BuildDocumentation=Build documentation +ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: +ModuleIsLive=This module has been activated. Any change may break a current live feature. +DescriptionLong=Long description +EditorName=Name of editor +EditorUrl=URL of editor +DescriptorFile=Descriptor file of module +ClassFile=File for PHP DAO CRUD class +ApiClassFile=File for PHP API class +PageForList=PHP page for list of record +PageForCreateEditView=PHP page to create/edit/view a record +PageForAgendaTab=PHP page for event tab +PageForDocumentTab=PHP page for document tab +PageForNoteTab=PHP page for note tab +PathToModulePackage=Path to zip of module/application package +PathToModuleDocumentation=Path to file of module/application documentation (%s) +SpaceOrSpecialCharAreNotAllowed=Spaces or special characters are not allowed. +FileNotYetGenerated=File not yet generated +RegenerateClassAndSql=Force update of .class and .sql files +RegenerateMissingFiles=Generate missing files +SpecificationFile=File of documentation +LanguageFile=File for language +ObjectProperties=Object Properties +ConfirmDeleteProperty=Are you sure you want to delete the property %s? This will change code in PHP class but also remove column from table definition of object. +NotNull=Not NULL +NotNullDesc=1=Set database to NOT NULL. -1=Allow null values and force value to NULL if empty ('' or 0). +SearchAll=Used for 'search all' +DatabaseIndex=Database index +FileAlreadyExists=File %s already exists +TriggersFile=File for triggers code +HooksFile=File for hooks code +ArrayOfKeyValues=Array of key-val +ArrayOfKeyValuesDesc=Array of keys and values if field is a combo list with fixed values +WidgetFile=Widget file +CSSFile=CSS file +JSFile=Javascript file +ReadmeFile=Readme file +ChangeLog=ChangeLog file +TestClassFile=File for PHP Unit Test class +SqlFile=Sql file +PageForLib=File for the common PHP library +PageForObjLib=File for the PHP library dedicated to object +SqlFileExtraFields=Sql file for complementary attributes +SqlFileKey=Sql file for keys +SqlFileKeyExtraFields=Sql file for keys of complementary attributes +AnObjectAlreadyExistWithThisNameAndDiffCase=An object already exists with this name and a different case +UseAsciiDocFormat=You can use Markdown format, but it is recommended to use Asciidoc format (omparison between .md and .asciidoc: http://asciidoctor.org/docs/user-manual/#compared-to-markdown) +IsAMeasure=Is a measure +DirScanned=Directory scanned +NoTrigger=No trigger +NoWidget=No widget +GoToApiExplorer=Go to API explorer +ListOfMenusEntries=List of menu entries +ListOfDictionariesEntries=List of dictionaries entries +ListOfPermissionsDefined=List of defined permissions +SeeExamples=See examples here +EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty +DisplayOnPdf=Display on PDF +IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) +SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) +SpecDefDesc=Enter here all documentation you want to provide with your module that is not already defined by other tabs. You can use .md or better, the rich .asciidoc syntax. +LanguageDefDesc=Enter in this files, all the key and the translation for each language file. +MenusDefDesc=Define here the menus provided by your module +DictionariesDefDesc=Define here the dictionaries provided by your module +PermissionsDefDesc=Define here the new permissions provided by your module +MenusDefDescTooltip=The menus provided by your module/application are defined into the array $this->menus into the module descriptor file. You can edit manually this file or use the embedded editor.

    Note: Once defined (and module re-activated), menus are also visible into the menu editor available to administrator users on %s. +DictionariesDefDescTooltip=The dictionaries provided by your module/application are defined into the array $this->dictionaries into the module descriptor file. You can edit manually this file or use the embedded editor.

    Note: Once defined (and module re-activated), dictionaries are also visible into the setup area to administrator users on %s. +PermissionsDefDescTooltip=The permissions provided by your module/application are defined into the array $this->rights into the module descriptor file. You can edit manually this file or use the embedded editor.

    Note: Once defined (and module re-activated), permissions are visible into the default permissions setup %s. +HooksDefDesc=Define in the module_parts['hooks'] property, in the module descriptor, the context of hooks you want to manage (list of contexts can be found by a search on 'initHooks(' in core code).
    Edit the hook file to add code of your hooked functions (hookable functions can be found by a search on 'executeHooks' in core code). +TriggerDefDesc=Define in the trigger file the code you want to execute for each business event executed. +SeeIDsInUse=See IDs in use in your installation +SeeReservedIDsRangeHere=See range of reserved IDs +ToolkitForDevelopers=Toolkit for Dolibarr developers +TryToUseTheModuleBuilder=If you have knowledge of SQL and PHP, you may use the native module builder wizard.
    Enable the module %s and use the wizard by clicking the on the top right menu.
    Warning: This is an advanced developer feature, do not experiment on your production site! +SeeTopRightMenu=See on the top right menu +AddLanguageFile=Add language file +YouCanUseTranslationKey=You can use here a key that is the translation key found into language file (see tab "Languages") +DropTableIfEmpty=(Delete table if empty) +TableDoesNotExists=The table %s does not exists +TableDropped=Table %s deleted +InitStructureFromExistingTable=Build the structure array string of an existing table +UseAboutPage=Disable the about page +UseDocFolder=Disable the documentation folder +UseSpecificReadme=Use a specific ReadMe +ContentOfREADMECustomized=Note: The content of the README.md file has been replaced with the specific value defined into setup of ModuleBuilder. +RealPathOfModule=Real path of module +ContentCantBeEmpty=Content of file can't be empty +WidgetDesc=You can generate and edit here the widgets that will be embedded with your module. +CSSDesc=You can generate and edit here a file with personalized CSS embedded with your module. +JSDesc=You can generate and edit here a file with personalized Javascript embedded with your module. +CLIDesc=You can generate here some command line scripts you want to provide with your module. +CLIFile=CLI File +NoCLIFile=No CLI files +UseSpecificEditorName = Use a specific editor name +UseSpecificEditorURL = Use a specific editor URL +UseSpecificFamily = Use a specific family +UseSpecificAuthor = Use a specific author +UseSpecificVersion = Use a specific initial version +ModuleMustBeEnabled=The module/application must be enabled first +IncludeRefGeneration=The reference of object must be generated automatically +IncludeRefGenerationHelp=Check this if you want to include code to manage the generation automatically of the reference +IncludeDocGeneration=I want to generate some documents from the object +IncludeDocGenerationHelp=If you check this, some code will be generated to add a "Generate document" box on the record. +ShowOnCombobox=Show value into combobox +KeyForTooltip=Key for tooltip +CSSClass=CSS Class +NotEditable=Not editable +ForeignKey=Foreign key +TypeOfFieldsHelp=Type of fields:
    varchar(99), double(24,8), real, text, html, datetime, timestamp, integer, integer:ClassName:relativepath/to/classfile.class.php[:1[:filter]] ('1' means we add a + button after the combo to create the record, 'filter' can be 'status=1 AND fk_user = __USER_ID AND entity IN (__SHARED_ENTITIES__)' for example) +AsciiToHtmlConverter=Ascii to HTML converter +AsciiToPdfConverter=Ascii to PDF converter diff --git a/htdocs/langs/km_KH/multicurrency.lang b/htdocs/langs/km_KH/multicurrency.lang new file mode 100644 index 00000000000..bfcbd11fb7c --- /dev/null +++ b/htdocs/langs/km_KH/multicurrency.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Multi currency +ErrorAddRateFail=Error in added rate +ErrorAddCurrencyFail=Error in added currency +ErrorDeleteCurrencyFail=Error delete fail +multicurrency_syncronize_error=Synchronization error: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Use the date of the document to find the currency rate, instead of using the latest known rate +multicurrency_useOriginTx=When an object is created from another, keep the original rate from the source object (otherwise use the latest known rate) +CurrencyLayerAccount=CurrencyLayer API +CurrencyLayerAccount_help_to_synchronize=You must create an account on website %s to use this functionality.
    Get your API key.
    If you use a free account, you can't change the source currency (USD by default).
    If your main currency is not USD, the application will automatically recalculate it.

    You are limited to 1000 synchronizations per month. +multicurrency_appId=API key +multicurrency_appCurrencySource=Source currency +multicurrency_alternateCurrencySource=Alternate source currency +CurrenciesUsed=Currencies used +CurrenciesUsed_help_to_add=Add the different currencies and rates you need to use on your proposals, orders etc. +rate=rate +MulticurrencyReceived=Received, original currency +MulticurrencyRemainderToTake=Remaining amount, original currency +MulticurrencyPaymentAmount=Payment amount, original currency +AmountToOthercurrency=Amount To (in currency of receiving account) +CurrencyRateSyncSucceed=Currency rate synchronization done successfuly +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Use the currency of the document for online payments diff --git a/htdocs/langs/km_KH/oauth.lang b/htdocs/langs/km_KH/oauth.lang new file mode 100644 index 00000000000..075ff49a895 --- /dev/null +++ b/htdocs/langs/km_KH/oauth.lang @@ -0,0 +1,32 @@ +# 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 credentials with your OAuth provider: +ListOfSupportedOauthProviders=Enter the credentials provided by your OAuth2 provider. Only supported OAuth2 providers are listedd here. These services 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 to 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 to this page then "Register a new application" to create OAuth credentials +OAUTH_STRIPE_TEST_NAME=OAuth Stripe Test +OAUTH_STRIPE_LIVE_NAME=OAuth Stripe Live diff --git a/htdocs/langs/km_KH/opensurvey.lang b/htdocs/langs/km_KH/opensurvey.lang new file mode 100644 index 00000000000..7d26151fa16 --- /dev/null +++ b/htdocs/langs/km_KH/opensurvey.lang @@ -0,0 +1,61 @@ +# Dolibarr language file - Source file is en_US - opensurvey +Survey=Poll +Surveys=Polls +OrganizeYourMeetingEasily=Organize your meetings and polls easily. First select the type of poll... +NewSurvey=New poll +OpenSurveyArea=Polls area +AddACommentForPoll=You can add a comment into poll... +AddComment=Add comment +CreatePoll=Create poll +PollTitle=Poll title +ToReceiveEMailForEachVote=Receive an email for each vote +TypeDate=Type date +TypeClassic=Type standard +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=Remove all days +CopyHoursOfFirstDay=Copy hours of first day +RemoveAllHours=Remove all hours +SelectedDays=Selected days +TheBestChoice=The best choice currently is +TheBestChoices=The best choices currently are +with=with +OpenSurveyHowTo=If you agree to vote in this poll, you have to give your name, choose the values that fit best for you and validate with the plus button at the end of the line. +CommentsOfVoters=Comments of voters +ConfirmRemovalOfPoll=Are you sure you want to remove this poll (and all votes) +RemovePoll=Remove poll +UrlForSurvey=URL to communicate to get a direct access to poll +PollOnChoice=You are creating a poll to make a multi-choice for a poll. First enter all possible choices for your poll: +CreateSurveyDate=Create a date poll +CreateSurveyStandard=Create a standard poll +CheckBox=Simple checkbox +YesNoList=List (empty/yes/no) +PourContreList=List (empty/for/against) +AddNewColumn=Add new column +TitleChoice=Choice label +ExportSpreadsheet=Export result spreadsheet +ExpireDate=Limit date +NbOfSurveys=Number of polls +NbOfVoters=No. of voters +SurveyResults=Results +PollAdminDesc=You are allowed to change all vote lines of this poll with button "Edit". You can, as well, remove a column or a line with %s. You can also add a new column with %s. +5MoreChoices=5 more choices +Against=Against +YouAreInivitedToVote=You are invited to vote for this poll +VoteNameAlreadyExists=This name was already used for this poll +AddADate=Add a date +AddStartHour=Add start hour +AddEndHour=Add end hour +votes=vote(s) +NoCommentYet=No comments have been posted for this poll yet +CanComment=Voters can comment in the poll +CanSeeOthersVote=Voters can see other people's vote +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=Back to current month +ErrorOpenSurveyFillFirstSection=You haven't filled the first section of the poll creation +ErrorOpenSurveyOneChoice=Enter at least one choice +ErrorInsertingComment=There was an error while inserting your comment +MoreChoices=Enter more choices for the voters +SurveyExpiredInfo=The poll has been closed or voting delay has expired. +EmailSomeoneVoted=%s has filled a line.\nYou can find your poll at the link: \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 diff --git a/htdocs/langs/km_KH/orders.lang b/htdocs/langs/km_KH/orders.lang new file mode 100644 index 00000000000..ad91e1eef63 --- /dev/null +++ b/htdocs/langs/km_KH/orders.lang @@ -0,0 +1,189 @@ +# Dolibarr language file - Source file is en_US - orders +OrdersArea=Customers orders area +SuppliersOrdersArea=Purchase orders area +OrderCard=Order card +OrderId=Order Id +Order=Order +PdfOrderTitle=Order +Orders=Orders +OrderLine=Order line +OrderDate=Order date +OrderDateShort=Order date +OrderToProcess=Order to process +NewOrder=New order +NewOrderSupplier=New Purchase Order +ToOrder=Make order +MakeOrder=Make order +SupplierOrder=Purchase order +SuppliersOrders=Purchase orders +SuppliersOrdersRunning=Current purchase orders +CustomerOrder=Sales Order +CustomersOrders=Sales Orders +CustomersOrdersRunning=Current sales orders +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 +SuppliersOrdersAwaitingReception=Purchase orders awaiting reception +AwaitingReception=Awaiting reception +StatusOrderCanceledShort=Canceled +StatusOrderDraftShort=Draft +StatusOrderValidatedShort=Validated +StatusOrderSentShort=In process +StatusOrderSent=Shipment in process +StatusOrderOnProcessShort=Ordered +StatusOrderProcessedShort=Processed +StatusOrderDelivered=Delivered +StatusOrderDeliveredShort=Delivered +StatusOrderToBillShort=Delivered +StatusOrderApprovedShort=Approved +StatusOrderRefusedShort=Refused +StatusOrderToProcessShort=To process +StatusOrderReceivedPartiallyShort=Partially received +StatusOrderReceivedAllShort=Products received +StatusOrderCanceled=Canceled +StatusOrderDraft=Draft (needs to be validated) +StatusOrderValidated=Validated +StatusOrderOnProcess=Ordered - Standby reception +StatusOrderOnProcessWithValidation=Ordered - Standby reception or validation +StatusOrderProcessed=Processed +StatusOrderToBill=Delivered +StatusOrderApproved=Approved +StatusOrderRefused=Refused +StatusOrderReceivedPartially=Partially received +StatusOrderReceivedAll=All products received +ShippingExist=A shipment exists +QtyOrdered=Qty ordered +ProductQtyInDraft=Product quantity into draft orders +ProductQtyInDraftOrWaitingApproved=Product quantity into draft or approved orders, not yet ordered +MenuOrdersToBill=Orders delivered +MenuOrdersToBill2=Billable orders +ShipProduct=Ship product +CreateOrder=Create Order +RefuseOrder=Refuse order +ApproveOrder=Approve order +Approve2Order=Approve order (second level) +ValidateOrder=Validate order +UnvalidateOrder=Unvalidate order +DeleteOrder=Delete order +CancelOrder=Cancel order +OrderReopened= Order %s re-open +AddOrder=Create order +AddPurchaseOrder=Create purchase order +AddToDraftOrders=Add to draft order +ShowOrder=Show order +OrdersOpened=Orders to process +NoDraftOrders=No draft orders +NoOrder=No order +NoSupplierOrder=No purchase order +LastOrders=Latest %s sales orders +LastCustomerOrders=Latest %s sales orders +LastSupplierOrders=Latest %s purchase orders +LastModifiedOrders=Latest %s modified orders +AllOrders=All orders +NbOfOrders=Number of orders +OrdersStatistics=Order's statistics +OrdersStatisticsSuppliers=Purchase order statistics +NumberOfOrdersByMonth=Number of orders by month +AmountOfOrdersByMonthHT=Amount of orders by month (excl. tax) +ListOfOrders=List of orders +CloseOrder=Close order +ConfirmCloseOrder=Are you sure you want to set this order to delivered? Once an order is delivered, it can be set to billed. +ConfirmDeleteOrder=Are you sure you want to delete this order? +ConfirmValidateOrder=Are you sure you want to validate this order under name %s? +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=Generate invoice +ClassifyShipped=Classify delivered +DraftOrders=Draft orders +DraftSuppliersOrders=Draft purchase orders +OnProcessOrders=In process orders +RefOrder=Ref. order +RefCustomerOrder=Ref. order for customer +RefOrderSupplier=Ref. order for vendor +RefOrderSupplierShort=Ref. order vendor +SendOrderByMail=Send order by mail +ActionsOnOrder=Events on order +NoArticleOfTypeProduct=No article of type 'product' so no shippable article for this order +OrderMode=Order method +AuthorRequest=Request author +UserWithApproveOrderGrant=Users granted with "approve orders" permission. +PaymentOrderRef=Payment of order %s +ConfirmCloneOrder=Are you sure you want to clone this order %s? +DispatchSupplierOrder=Receiving purchase order %s +FirstApprovalAlreadyDone=First approval already done +SecondApprovalAlreadyDone=Second approval already done +SupplierOrderReceivedInDolibarr=Purchase Order %s received %s +SupplierOrderSubmitedInDolibarr=Purchase Order %s submitted +SupplierOrderClassifiedBilled=Purchase Order %s set billed +OtherOrders=Other orders +##### Types de contacts ##### +TypeContact_commande_internal_SALESREPFOLL=Representative following-up sales order +TypeContact_commande_internal_SHIPPING=Representative following-up shipping +TypeContact_commande_external_BILLING=Customer invoice contact +TypeContact_commande_external_SHIPPING=Customer shipping contact +TypeContact_commande_external_CUSTOMER=Customer contact following-up order +TypeContact_order_supplier_internal_SALESREPFOLL=Representative following-up purchase order +TypeContact_order_supplier_internal_SHIPPING=Representative following-up shipping +TypeContact_order_supplier_external_BILLING=Vendor invoice contact +TypeContact_order_supplier_external_SHIPPING=Vendor shipping contact +TypeContact_order_supplier_external_CUSTOMER=Vendor contact following-up order +Error_COMMANDE_SUPPLIER_ADDON_NotDefined=Constant COMMANDE_SUPPLIER_ADDON not defined +Error_COMMANDE_ADDON_NotDefined=Constant COMMANDE_ADDON not defined +Error_OrderNotChecked=No orders to invoice selected +# Order modes (how we receive order). Not the "why" are keys stored into dict.lang +OrderByMail=Mail +OrderByFax=Fax +OrderByEMail=Email +OrderByWWW=Online +OrderByPhone=Phone +# Documents models +PDFEinsteinDescription=A complete order model (old implementation of Eratosthene template) +PDFEratostheneDescription=A complete order model +PDFEdisonDescription=A simple order model +PDFProformaDescription=A complete Proforma invoice template +CreateInvoiceForThisCustomer=Bill orders +CreateInvoiceForThisSupplier=Bill orders +NoOrdersToInvoice=No orders billable +CloseProcessedOrdersAutomatically=Classify "Processed" all selected orders. +OrderCreation=Order creation +Ordered=Ordered +OrderCreated=Your orders have been created +OrderFail=An error happened during your orders creation +CreateOrders=Create orders +ToBillSeveralOrderSelectCustomer=To create an invoice for several orders, click first onto customer, then choose "%s". +OptionToSetOrderBilledNotEnabled=Option from module Workflow, to set order to 'Billed' automatically when invoice is validated, is not enabled, so you will have to set the status of orders to 'Billed' manually after the invoice has been generated. +IfValidateInvoiceIsNoOrderStayUnbilled=If invoice validation is 'No', the order will remain to status 'Unbilled' until the invoice is validated. +CloseReceivedSupplierOrdersAutomatically=Close order to status "%s" automatically if all products are received. +SetShippingMode=Set shipping mode +WithReceptionFinished=With reception finished +#### supplier orders status +StatusSupplierOrderCanceledShort=Canceled +StatusSupplierOrderDraftShort=Draft +StatusSupplierOrderValidatedShort=Validated +StatusSupplierOrderSentShort=In process +StatusSupplierOrderSent=Shipment in process +StatusSupplierOrderOnProcessShort=Ordered +StatusSupplierOrderProcessedShort=Processed +StatusSupplierOrderDelivered=Delivered +StatusSupplierOrderDeliveredShort=Delivered +StatusSupplierOrderToBillShort=Delivered +StatusSupplierOrderApprovedShort=Approved +StatusSupplierOrderRefusedShort=Refused +StatusSupplierOrderToProcessShort=To process +StatusSupplierOrderReceivedPartiallyShort=Partially received +StatusSupplierOrderReceivedAllShort=Products received +StatusSupplierOrderCanceled=Canceled +StatusSupplierOrderDraft=Draft (needs to be validated) +StatusSupplierOrderValidated=Validated +StatusSupplierOrderOnProcess=Ordered - Standby reception +StatusSupplierOrderOnProcessWithValidation=Ordered - Standby reception or validation +StatusSupplierOrderProcessed=Processed +StatusSupplierOrderToBill=Delivered +StatusSupplierOrderApproved=Approved +StatusSupplierOrderRefused=Refused +StatusSupplierOrderReceivedPartially=Partially received +StatusSupplierOrderReceivedAll=All products received diff --git a/htdocs/langs/km_KH/other.lang b/htdocs/langs/km_KH/other.lang new file mode 100644 index 00000000000..ba85f51e739 --- /dev/null +++ b/htdocs/langs/km_KH/other.lang @@ -0,0 +1,286 @@ +# Dolibarr language file - Source file is en_US - other +SecurityCode=Security code +NumberingShort=N° +Tools=Tools +TMenuTools=Tools +ToolsDesc=All tools not included in other menu entries are grouped here.
    All the tools can be accessed via the left menu. +Birthday=Birthday +BirthdayDate=Birthday date +DateToBirth=Birth date +BirthdayAlertOn=birthday alert active +BirthdayAlertOff=birthday alert inactive +TransKey=Translation of the key TransKey +MonthOfInvoice=Month (number 1-12) of invoice date +TextMonthOfInvoice=Month (text) of invoice date +PreviousMonthOfInvoice=Previous month (number 1-12) of invoice date +TextPreviousMonthOfInvoice=Previous month (text) of invoice date +NextMonthOfInvoice=Following month (number 1-12) of invoice date +TextNextMonthOfInvoice=Following month (text) of invoice date +ZipFileGeneratedInto=Zip file generated into %s. +DocFileGeneratedInto=Doc file generated into %s. +JumpToLogin=Disconnected. Go to login page... +MessageForm=Message on online payment form +MessageOK=Message on the return page for a validated payment +MessageKO=Message on the return page for a canceled payment +ContentOfDirectoryIsNotEmpty=Content of this directory is not empty. +DeleteAlsoContentRecursively=Check to delete all content recursively +PoweredBy=Powered by +YearOfInvoice=Year of invoice date +PreviousYearOfInvoice=Previous year of invoice date +NextYearOfInvoice=Following year of invoice date +DateNextInvoiceBeforeGen=Date of next invoice (before generation) +DateNextInvoiceAfterGen=Date of next invoice (after generation) +GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mode. The mode 'Lines' was automatically selected instead. +OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. +AtLeastOneMeasureIsRequired=At least 1 field for measure is required +AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required +LatestBlogPosts=Latest Blog Posts +Notify_ORDER_VALIDATE=Sales order validated +Notify_ORDER_SENTBYMAIL=Sales order sent by mail +Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email +Notify_ORDER_SUPPLIER_VALIDATE=Purchase order recorded +Notify_ORDER_SUPPLIER_APPROVE=Purchase order approved +Notify_ORDER_SUPPLIER_REFUSE=Purchase order refused +Notify_PROPAL_VALIDATE=Customer proposal validated +Notify_PROPAL_CLOSE_SIGNED=Customer proposal closed signed +Notify_PROPAL_CLOSE_REFUSED=Customer proposal closed refused +Notify_PROPAL_SENTBYMAIL=Commercial proposal sent by mail +Notify_WITHDRAW_TRANSMIT=Transmission withdrawal +Notify_WITHDRAW_CREDIT=Credit withdrawal +Notify_WITHDRAW_EMIT=Perform withdrawal +Notify_COMPANY_CREATE=Third party created +Notify_COMPANY_SENTBYMAIL=Mails sent from third party card +Notify_BILL_VALIDATE=Customer invoice validated +Notify_BILL_UNVALIDATE=Customer invoice unvalidated +Notify_BILL_PAYED=Customer invoice paid +Notify_BILL_CANCEL=Customer invoice canceled +Notify_BILL_SENTBYMAIL=Customer invoice sent by mail +Notify_BILL_SUPPLIER_VALIDATE=Vendor invoice validated +Notify_BILL_SUPPLIER_PAYED=Vendor invoice paid +Notify_BILL_SUPPLIER_SENTBYMAIL=Vendor invoice sent by mail +Notify_BILL_SUPPLIER_CANCELED=Vendor invoice cancelled +Notify_CONTRACT_VALIDATE=Contract validated +Notify_FICHINTER_VALIDATE=Intervention validated +Notify_FICHINTER_ADD_CONTACT=Added contact to Intervention +Notify_FICHINTER_SENTBYMAIL=Intervention sent by mail +Notify_SHIPPING_VALIDATE=Shipping validated +Notify_SHIPPING_SENTBYMAIL=Shipping sent by mail +Notify_MEMBER_VALIDATE=Member validated +Notify_MEMBER_MODIFY=Member modified +Notify_MEMBER_SUBSCRIPTION=Member subscribed +Notify_MEMBER_RESILIATE=Member terminated +Notify_MEMBER_DELETE=Member deleted +Notify_PROJECT_CREATE=Project creation +Notify_TASK_CREATE=Task created +Notify_TASK_MODIFY=Task modified +Notify_TASK_DELETE=Task deleted +Notify_EXPENSE_REPORT_VALIDATE=Expense report validated (approval required) +Notify_EXPENSE_REPORT_APPROVE=Expense report approved +Notify_HOLIDAY_VALIDATE=Leave request validated (approval required) +Notify_HOLIDAY_APPROVE=Leave request approved +SeeModuleSetup=See setup of module %s +NbOfAttachedFiles=Number of attached files/documents +TotalSizeOfAttachedFiles=Total size of attached files/documents +MaxSize=Maximum size +AttachANewFile=Attach a new file/document +LinkedObject=Linked object +NbOfActiveNotifications=Number of notifications (no. of recipient emails) +PredefinedMailTest=__(Hello)__\nThis is a test mail sent to __EMAIL__.\nThe two lines are separated by a carriage return.\n\n__USER_SIGNATURE__ +PredefinedMailTestHtml=__(Hello)__\nThis is a test 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__ +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__ +PredefinedMailContentSendSupplierProposal=__(Hello)__\n\nPlease find price request __REF__ attached\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ +PredefinedMailContentSendOrder=__(Hello)__\n\nPlease find order __REF__ attached\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ +PredefinedMailContentSendSupplierOrder=__(Hello)__\n\nPlease find our order __REF__ attached\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ +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__ +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 is a compact ERP/CRM supporting several business modules. A demo showcasing all modules makes no sense as this scenario never occurs (several hundred available). So, several demo profiles are available. +ChooseYourDemoProfil=Choose the demo profile that best suits your needs... +ChooseYourDemoProfilMore=...or build your own profile
    (manual module selection) +DemoFundation=Manage members of a foundation +DemoFundation2=Manage members and bank account of a foundation +DemoCompanyServiceOnly=Company or freelance selling service only +DemoCompanyShopWithCashDesk=Manage a shop with a cash desk +DemoCompanyProductAndStocks=Shop selling products with Point Of Sales +DemoCompanyManufacturing=Company manufacturing products +DemoCompanyAll=Company with multiple activities (all main modules) +CreatedBy=Created by %s +ModifiedBy=Modified by %s +ValidatedBy=Validated by %s +ClosedBy=Closed by %s +CreatedById=User id who created +ModifiedById=User id who made latest change +ValidatedById=User id who validated +CanceledById=User id who canceled +ClosedById=User id who closed +CreatedByLogin=User login who created +ModifiedByLogin=User login who made latest change +ValidatedByLogin=User login who validated +CanceledByLogin=User login who canceled +ClosedByLogin=User login who closed +FileWasRemoved=File %s was removed +DirWasRemoved=Directory %s was removed +FeatureNotYetAvailable=Feature not yet available in the current version +FeaturesSupported=Supported features +Width=Width +Height=Height +Depth=Depth +Top=Top +Bottom=Bottom +Left=Left +Right=Right +CalculatedWeight=Calculated weight +CalculatedVolume=Calculated volume +Weight=Weight +WeightUnitton=tonne +WeightUnitkg=kg +WeightUnitg=g +WeightUnitmg=mg +WeightUnitpound=pound +WeightUnitounce=ounce +Length=Length +LengthUnitm=m +LengthUnitdm=dm +LengthUnitcm=cm +LengthUnitmm=mm +Surface=Area +SurfaceUnitm2=m² +SurfaceUnitdm2=dm² +SurfaceUnitcm2=cm² +SurfaceUnitmm2=mm² +SurfaceUnitfoot2=ft² +SurfaceUnitinch2=in² +Volume=Volume +VolumeUnitm3=m³ +VolumeUnitdm3=dm³ (L) +VolumeUnitcm3=cm³ (ml) +VolumeUnitmm3=mm³ (µl) +VolumeUnitfoot3=ft³ +VolumeUnitinch3=in³ +VolumeUnitounce=ounce +VolumeUnitlitre=litre +VolumeUnitgallon=gallon +SizeUnitm=m +SizeUnitdm=dm +SizeUnitcm=cm +SizeUnitmm=mm +SizeUnitinch=inch +SizeUnitfoot=foot +SizeUnitpoint=point +BugTracker=Bug tracker +SendNewPasswordDesc=This form allows you to request a new password. It will be sent to your email address.
    Change will become effective once you click on the confirmation link in the email.
    Check your inbox. +BackToLoginPage=Back to login page +AuthenticationDoesNotAllowSendNewPassword=Authentication mode is %s.
    In this mode, Dolibarr can't know nor change your password.
    Contact your system administrator if you want to change your password. +EnableGDLibraryDesc=Install or enable GD library on your PHP installation to use this option. +ProfIdShortDesc=Prof Id %s is an information depending on third party country.
    For example, for country %s, it's code %s. +DolibarrDemo=Dolibarr ERP/CRM demo +StatsByNumberOfUnits=Statistics for sum of qty of products/services +StatsByNumberOfEntities=Statistics in number of referring entities (no. of invoice, or order...) +NumberOfProposals=Number of proposals +NumberOfCustomerOrders=Number of sales orders +NumberOfCustomerInvoices=Number of customer invoices +NumberOfSupplierProposals=Number of vendor proposals +NumberOfSupplierOrders=Number of purchase orders +NumberOfSupplierInvoices=Number of vendor invoices +NumberOfContracts=Number of contracts +NumberOfMos=Number of manufacturing orders +NumberOfUnitsProposals=Number of units on proposals +NumberOfUnitsCustomerOrders=Number of units on sales orders +NumberOfUnitsCustomerInvoices=Number of units on customer invoices +NumberOfUnitsSupplierProposals=Number of units on vendor proposals +NumberOfUnitsSupplierOrders=Number of units on purchase orders +NumberOfUnitsSupplierInvoices=Number of units on vendor invoices +NumberOfUnitsContracts=Number of units on contracts +NumberOfUnitsMos=Number of units to produce in manufacturing orders +EMailTextInterventionAddedContact=A new intervention %s has been assigned to you. +EMailTextInterventionValidated=The intervention %s has been validated. +EMailTextInvoiceValidated=Invoice %s has been validated. +EMailTextInvoicePayed=Invoice %s has been paid. +EMailTextProposalValidated=Proposal %s has been validated. +EMailTextProposalClosedSigned=Proposal %s has been closed signed. +EMailTextOrderValidated=Order %s has been validated. +EMailTextOrderApproved=Order %s has been approved. +EMailTextOrderValidatedBy=Order %s has been recorded by %s. +EMailTextOrderApprovedBy=Order %s has been approved by %s. +EMailTextOrderRefused=Order %s has been refused. +EMailTextOrderRefusedBy=Order %s has been refused by %s. +EMailTextExpeditionValidated=Shipping %s has been validated. +EMailTextExpenseReportValidated=Expense report %s has been validated. +EMailTextExpenseReportApproved=Expense report %s has been approved. +EMailTextHolidayValidated=Leave request %s has been validated. +EMailTextHolidayApproved=Leave request %s has been approved. +ImportedWithSet=Importation data set +DolibarrNotification=Automatic notification +ResizeDesc=Enter new width OR new height. Ratio will be kept during resizing... +NewLength=New width +NewHeight=New height +NewSizeAfterCropping=New size after cropping +DefineNewAreaToPick=Define new area on image to pick (left click on image then drag until you reach the opposite corner) +CurrentInformationOnImage=This tool was designed to help you to resize or crop an image. This is the information on the current edited image +ImageEditor=Image editor +YouReceiveMailBecauseOfNotification=You receive this message because your email has been added to list of targets to be informed of particular events into %s software of %s. +YouReceiveMailBecauseOfNotification2=This event is the following: +ThisIsListOfModules=This is a list of modules preselected by this demo profile (only most common modules are visible in this demo). Edit this to have a more personalized demo and click on "Start". +UseAdvancedPerms=Use the advanced permissions of some modules +FileFormat=File format +SelectAColor=Choose a color +AddFiles=Add Files +StartUpload=Start upload +CancelUpload=Cancel upload +FileIsTooBig=Files is too big +PleaseBePatient=Please be patient... +NewPassword=New password +ResetPassword=Reset password +RequestToResetPasswordReceived=A request to change your password has been received. +NewKeyIs=This is your new keys to login +NewKeyWillBe=Your new key to login to software will be +ClickHereToGoTo=Click here to go to %s +YouMustClickToChange=You must however first click on the following link to validate this password change +ForgetIfNothing=If you didn't request this change, just forget this email. Your credentials are kept safe. +IfAmountHigherThan=If amount higher than %s +SourcesRepository=Repository for sources +Chart=Chart +PassEncoding=Password encoding +PermissionsAdd=Permissions added +PermissionsDelete=Permissions removed +YourPasswordMustHaveAtLeastXChars=Your password must have at least %s chars +YourPasswordHasBeenReset=Your password has been reset successfully +ApplicantIpAddress=IP address of applicant +SMSSentTo=SMS sent to %s +MissingIds=Missing ids +ThirdPartyCreatedByEmailCollector=Third party created by email collector from email MSGID %s +ContactCreatedByEmailCollector=Contact/address created by email collector from email MSGID %s +ProjectCreatedByEmailCollector=Project created by email collector from email MSGID %s +TicketCreatedByEmailCollector=Ticket created by email collector from email MSGID %s +OpeningHoursFormatDesc=Use a - to separate opening and closing hours.
    Use a space to enter different ranges.
    Example: 8-12 14-18 + +##### Export ##### +ExportsArea=Exports area +AvailableFormats=Available formats +LibraryUsed=Library used +LibraryVersion=Library version +ExportableDatas=Exportable data +NoExportableData=No exportable data (no modules with exportable data loaded, or missing permissions) +##### External sites ##### +WebsiteSetup=Setup of module website +WEBSITE_PAGEURL=URL of page +WEBSITE_TITLE=Title +WEBSITE_DESCRIPTION=Description +WEBSITE_IMAGE=Image +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). +WEBSITE_KEYWORDS=Keywords +LinesToImport=Lines to import + +MemoryUsage=Memory usage +RequestDuration=Duration of request +PopuProp=Products/Services by popularity in Proposals +PopuCom=Products/Services by popularity in Orders +ProductStatistics=Products/Services Statistics +NbOfQtyInOrders=Qty in orders diff --git a/htdocs/langs/km_KH/paybox.lang b/htdocs/langs/km_KH/paybox.lang new file mode 100644 index 00000000000..1bbbef4017b --- /dev/null +++ b/htdocs/langs/km_KH/paybox.lang @@ -0,0 +1,31 @@ +# Dolibarr language file - Source file is en_US - paybox +PayBoxSetup=PayBox module setup +PayBoxDesc=This module offer pages to allow payment on Paybox by customers. This can be used for a free payment or for a payment on a particular Dolibarr object (invoice, order, ...) +FollowingUrlAreAvailableToMakePayments=Following URLs are available to offer a page to a customer to make a payment on Dolibarr objects +PaymentForm=Payment form +WelcomeOnPaymentPage=Welcome to our online payment service +ThisScreenAllowsYouToPay=This screen allow you to make an online payment to %s. +ThisIsInformationOnPayment=This is information on payment to do +ToComplete=To complete +YourEMail=Email to receive payment confirmation +Creditor=Creditor +PaymentCode=Payment code +PayBoxDoPayment=Pay with Paybox +YouWillBeRedirectedOnPayBox=You will be redirected on secured Paybox page to input you credit card information +Continue=Next +SetupPayBoxToHavePaymentCreatedAutomatically=Setup your Paybox with url %s to have payment created automatically when validated by Paybox. +YourPaymentHasBeenRecorded=This page confirms that your payment has been recorded. Thank you. +YourPaymentHasNotBeenRecorded=Your payment has NOT been recorded and the transaction has been canceled. Thank you. +AccountParameter=Account parameters +UsageParameter=Usage parameters +InformationToFindParameters=Help to find your %s account information +PAYBOX_CGI_URL_V2=Url of Paybox CGI module for payment +VendorName=Name of vendor +CSSUrlForPaymentForm=CSS style sheet url for payment form +NewPayboxPaymentReceived=New Paybox payment received +NewPayboxPaymentFailed=New Paybox payment tried but failed +PAYBOX_PAYONLINE_SENDEMAIL=Email notification after payment attempt (success or fail) +PAYBOX_PBX_SITE=Value for PBX SITE +PAYBOX_PBX_RANG=Value for PBX Rang +PAYBOX_PBX_IDENTIFIANT=Value for PBX ID +PAYBOX_HMAC_KEY=HMAC key diff --git a/htdocs/langs/km_KH/paypal.lang b/htdocs/langs/km_KH/paypal.lang new file mode 100644 index 00000000000..5eb5f389445 --- /dev/null +++ b/htdocs/langs/km_KH/paypal.lang @@ -0,0 +1,36 @@ +# Dolibarr language file - Source file is en_US - paypal +PaypalSetup=PayPal module setup +PaypalDesc=This module allows payment by customers via PayPal. This can be used for a ad-hoc payment or for a payment related to a Dolibarr object (invoice, order, ...) +PaypalOrCBDoPayment=Pay with PayPal (Card or PayPal) +PaypalDoPayment=Pay with PayPal +PAYPAL_API_SANDBOX=Mode test/sandbox +PAYPAL_API_USER=API username +PAYPAL_API_PASSWORD=API password +PAYPAL_API_SIGNATURE=API signature +PAYPAL_SSLVERSION=Curl SSL Version +PAYPAL_API_INTEGRAL_OR_PAYPALONLY=Offer "integral" payment (Credit card+PayPal) or "PayPal" only +PaypalModeIntegral=Integral +PaypalModeOnlyPaypal=PayPal only +ONLINE_PAYMENT_CSS_URL=Optional URL of CSS stylesheet on online payment page +ThisIsTransactionId=This is id of transaction: %s +PAYPAL_ADD_PAYMENT_URL=Include the PayPal payment url when you send a document by email +NewOnlinePaymentReceived=New online payment received +NewOnlinePaymentFailed=New online payment tried but failed +ONLINE_PAYMENT_SENDEMAIL=Email address for notifications after each payment attempt (for success and fail) +ReturnURLAfterPayment=Return URL after payment +ValidationOfOnlinePaymentFailed=Validation of online payment failed +PaymentSystemConfirmPaymentPageWasCalledButFailed=Payment confirmation page was called by payment system returned an error +SetExpressCheckoutAPICallFailed=SetExpressCheckout API call failed. +DoExpressCheckoutPaymentAPICallFailed=DoExpressCheckoutPayment API call failed. +DetailedErrorMessage=Detailed Error Message +ShortErrorMessage=Short Error Message +ErrorCode=Error Code +ErrorSeverityCode=Error Severity Code +OnlinePaymentSystem=Online payment system +PaypalLiveEnabled=PayPal "live" mode enabled (otherwise test/sandbox mode) +PaypalImportPayment=Import PayPal payments +PostActionAfterPayment=Post actions after payments +ARollbackWasPerformedOnPostActions=A rollback was performed on all Post actions. You must complete post actions manually if they are necessary. +ValidationOfPaymentFailed=Validation of payment has failed +CardOwner=Card holder +PayPalBalance=Paypal credit diff --git a/htdocs/langs/km_KH/printing.lang b/htdocs/langs/km_KH/printing.lang new file mode 100644 index 00000000000..16494583550 --- /dev/null +++ b/htdocs/langs/km_KH/printing.lang @@ -0,0 +1,54 @@ +# Dolibarr language file - Source file is en_US - printing +Module64000Name=Direct Printing +Module64000Desc=Enable Direct Printing System +PrintingSetup=Setup of Direct Printing System +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=Direct Printing jobs +DirectPrint=Direct print +PrintingDriverDesc=Configuration variables for printing driver. +ListDrivers=List of drivers +PrintTestDesc=List of Printers. +FileWasSentToPrinter=File %s was sent to printer +ViaModule=via the module +NoActivePrintingModuleFound=No active driver to print document. Check setup of module %s. +PleaseSelectaDriverfromList=Please select a driver from list. +PleaseConfigureDriverfromList=Please configure the selected driver from list. +SetupDriver=Driver setup +TargetedPrinter=Targeted printer +UserConf=Setup per user +PRINTGCP_INFO=Google OAuth API setup +PRINTGCP_AUTHLINK=Authentication +PRINTGCP_TOKEN_ACCESS=Google Cloud Print OAuth Token +PrintGCPDesc=This driver allows sending documents directly to a printer using Google Cloud Print. +GCP_Name=Name +GCP_displayName=Display Name +GCP_Id=Printer Id +GCP_OwnerName=Owner Name +GCP_State=Printer State +GCP_connectionStatus=Online State +GCP_Type=Printer Type +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=Login +PRINTIPP_PASSWORD=Password +NoDefaultPrinterDefined=No default printer defined +DefaultPrinter=Default printer +Printer=Printer +IPP_Uri=Printer Uri +IPP_Name=Printer Name +IPP_State=Printer State +IPP_State_reason=State reason +IPP_State_reason1=State reason1 +IPP_BW=BW +IPP_Color=Color +IPP_Device=Device +IPP_Media=Printer media +IPP_Supported=Type of media +DirectPrintingJobsDesc=This page lists printing jobs found for available printers. +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/km_KH/productbatch.lang b/htdocs/langs/km_KH/productbatch.lang new file mode 100644 index 00000000000..54270c4a23b --- /dev/null +++ b/htdocs/langs/km_KH/productbatch.lang @@ -0,0 +1,24 @@ +# ProductBATCH language file - en_US - ProductBATCH +ManageLotSerial=Use lot/serial number +ProductStatusOnBatch=Yes (lot/serial required) +ProductStatusNotOnBatch=No (lot/serial not used) +ProductStatusOnBatchShort=Yes +ProductStatusNotOnBatchShort=No +Batch=Lot/Serial +atleast1batchfield=Eat-by date or Sell-by date or Lot/Serial number +batch_number=Lot/Serial number +BatchNumberShort=Lot/Serial +EatByDate=Eat-by date +SellByDate=Sell-by date +DetailBatchNumber=Lot/Serial details +printBatch=Lot/Serial: %s +printEatby=Eat-by: %s +printSellby=Sell-by: %s +printQty=Qty: %d +AddDispatchBatchLine=Add a line for Shelf Life dispatching +WhenProductBatchModuleOnOptionAreForced=When module Lot/Serial is on, automatic stock decrease is forced to 'Decrease real stocks on shipping validation' and automatic increase mode is forced to 'Increase real stocks on manual dispatching into warehouses' and can't be edited. Other options can be defined as you want. +ProductDoesNotUseBatchSerial=This product does not use lot/serial number +ProductLotSetup=Setup of module lot/serial +ShowCurrentStockOfLot=Show current stock for couple product/lot +ShowLogOfMovementIfLot=Show log of movements for couple product/lot +StockDetailPerBatch=Stock detail per lot diff --git a/htdocs/langs/km_KH/products.lang b/htdocs/langs/km_KH/products.lang new file mode 100644 index 00000000000..a31243a07b6 --- /dev/null +++ b/htdocs/langs/km_KH/products.lang @@ -0,0 +1,385 @@ +# Dolibarr language file - Source file is en_US - products +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 +TMenuProducts=Products +TMenuServices=Services +Products=Products +Services=Services +Product=Product +Service=Service +ProductId=Product/service id +Create=Create +Reference=Reference +NewProduct=New product +NewService=New service +ProductVatMassChange=Global VAT Update +ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL products and services! +MassBarcodeInit=Mass barcode init +MassBarcodeInitDesc=This page can be used to initialize a barcode on objects that does not have barcode defined. Check before that setup of module barcode is complete. +ProductAccountancyBuyCode=Accounting code (purchase) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) +ProductAccountancySellCode=Accounting code (sale) +ProductAccountancySellIntraCode=Accounting code (sale intra-Community) +ProductAccountancySellExportCode=Accounting code (sale export) +ProductOrService=Product or Service +ProductsAndServices=Products and Services +ProductsOrServices=Products or Services +ProductsPipeServices=Products | Services +ProductsOnSale=Products for sale +ProductsOnPurchase=Products for purchase +ProductsOnSaleOnly=Products for sale only +ProductsOnPurchaseOnly=Products for purchase only +ProductsNotOnSell=Products not for sale and not for purchase +ProductsOnSellAndOnBuy=Products for sale and for purchase +ServicesOnSale=Services for sale +ServicesOnPurchase=Services for purchase +ServicesOnSaleOnly=Services for sale only +ServicesOnPurchaseOnly=Services for purchase only +ServicesNotOnSell=Services not for sale and not for purchase +ServicesOnSellAndOnBuy=Services for sale and for purchase +LastModifiedProductsAndServices=Last %s modified products/services +LastRecordedProducts=Latest %s recorded products +LastRecordedServices=Latest %s recorded services +CardProduct0=Product +CardProduct1=Service +Stock=Stock +MenuStocks=Stocks +Stocks=Stocks and location (warehouse) of products +Movements=Movements +Sell=Sell +Buy=Purchase +OnSell=For sale +OnBuy=For purchase +NotOnSell=Not for sale +ProductStatusOnSell=For sale +ProductStatusNotOnSell=Not for sale +ProductStatusOnSellShort=For sale +ProductStatusNotOnSellShort=Not for sale +ProductStatusOnBuy=For purchase +ProductStatusNotOnBuy=Not for purchase +ProductStatusOnBuyShort=For purchase +ProductStatusNotOnBuyShort=Not for purchase +UpdateVAT=Update vat +UpdateDefaultPrice=Update default price +UpdateLevelPrices=Update prices for each level +AppliedPricesFrom=Applied from +SellingPrice=Selling price +SellingPriceHT=Selling price (excl. tax) +SellingPriceTTC=Selling price (inc. tax) +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. +CostPriceUsage=This value could be used for margin calculation. +SoldAmount=Sold amount +PurchasedAmount=Purchased amount +NewPrice=New price +MinPrice=Min. sell price +EditSellingPriceLabel=Edit selling price label +CantBeLessThanMinPrice=The selling price can't be lower than minimum allowed for this product (%s without tax). This message can also appears if you type a too important discount. +ContractStatusClosed=Closed +ErrorProductAlreadyExists=A product with reference %s already exists. +ErrorProductBadRefOrLabel=Wrong value for reference or label. +ErrorProductClone=There was a problem while trying to clone the product or service. +ErrorPriceCantBeLowerThanMinPrice=Error, price can't be lower than minimum price. +Suppliers=Vendors +SupplierRef=Vendor SKU +ShowProduct=Show product +ShowService=Show service +ProductsAndServicesArea=Product and Services area +ProductsArea=Product area +ServicesArea=Services area +ListOfStockMovements=List of stock movements +BuyingPrice=Buying price +PriceForEachProduct=Products with specific prices +SupplierCard=Vendor card +PriceRemoved=Price removed +BarCode=Barcode +BarcodeType=Barcode type +SetDefaultBarcodeType=Set barcode type +BarcodeValue=Barcode value +NoteNotVisibleOnBill=Note (not visible on invoices, proposals...) +ServiceLimitedDuration=If product is a service with limited duration: +MultiPricesAbility=Multiple price segments per product/service (each customer is in one price segment) +MultiPricesNumPrices=Number of prices +AssociatedProductsAbility=Activate virtual products (kits) +AssociatedProducts=Virtual products +AssociatedProductsNumber=Number of products composing this virtual product +ParentProductsNumber=Number of parent packaging product +ParentProducts=Parent products +IfZeroItIsNotAVirtualProduct=If 0, this product is not a virtual product +IfZeroItIsNotUsedByVirtualProduct=If 0, this product is not used by any virtual product +KeywordFilter=Keyword filter +CategoryFilter=Category filter +ProductToAddSearch=Search product to add +NoMatchFound=No match found +ListOfProductsServices=List of products/services +ProductAssociationList=List of products/services that are component(s) of this virtual product/kit +ProductParentList=List of virtual products/services with this product as a component +ErrorAssociationIsFatherOfThis=One of selected product is parent with current product +DeleteProduct=Delete a product/service +ConfirmDeleteProduct=Are you sure you want to delete this product/service? +ProductDeleted=Product/Service "%s" deleted from database. +ExportDataset_produit_1=Products +ExportDataset_service_1=Services +ImportDataset_produit_1=Products +ImportDataset_service_1=Services +DeleteProductLine=Delete product line +ConfirmDeleteProductLine=Are you sure you want to delete this product line? +ProductSpecial=Special +QtyMin=Min. purchase quantity +PriceQtyMin=Price quantity min. +PriceQtyMinCurrency=Price (currency) for this qty. (no discount) +VATRateForSupplierProduct=VAT Rate (for this vendor/product) +DiscountQtyMin=Discount for this qty. +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=Predefined products/services to sell +PredefinedProductsToPurchase=Predefined product to purchase +PredefinedServicesToPurchase=Predefined services to purchase +PredefinedProductsAndServicesToPurchase=Predefined products/services to purchase +NotPredefinedProducts=Not predefined products/services +GenerateThumb=Generate thumb +ServiceNb=Service #%s +ListProductServiceByPopularity=List of products/services by popularity +ListProductByPopularity=List of products by popularity +ListServiceByPopularity=List of services by popularity +Finished=Manufactured product +RowMaterial=Raw Material +ConfirmCloneProduct=Are you sure you want to clone product or service %s? +CloneContentProduct=Clone all main information of product/service +ClonePricesProduct=Clone prices +CloneCategoriesProduct=Clone tags/categories linked +CloneCompositionProduct=Clone virtual product/service +CloneCombinationsProduct=Clone product variants +ProductIsUsed=This product is used +NewRefForClone=Ref. of new product/service +SellingPrices=Selling prices +BuyingPrices=Buying prices +CustomerPrices=Customer prices +SuppliersPrices=Vendor prices +SuppliersPricesOfProductsOrServices=Vendor prices (of products or services) +CustomCode=Customs / Commodity / HS code +CountryOrigin=Origin country +Nature=Nature of product (material/finished) +ShortLabel=Short label +Unit=Unit +p=u. +set=set +se=set +second=second +s=s +hour=hour +h=h +day=day +d=d +kilogram=kilogram +kg=Kg +gram=gram +g=g +meter=meter +m=m +lm=lm +m2=m² +m3=m³ +liter=liter +l=L +unitP=Piece +unitSET=Set +unitS=Second +unitH=Hour +unitD=Day +unitG=Gram +unitM=Meter +unitLM=Linear meter +unitM2=Square meter +unitM3=Cubic meter +unitL=Liter +unitT=ton +unitKG=kg +unitG=Gram +unitMG=mg +unitLB=pound +unitOZ=ounce +unitM=Meter +unitDM=dm +unitCM=cm +unitMM=mm +unitFT=ft +unitIN=in +unitM2=Square meter +unitDM2=dm² +unitCM2=cm² +unitMM2=mm² +unitFT2=ft² +unitIN2=in² +unitM3=Cubic meter +unitDM3=dm³ +unitCM3=cm³ +unitMM3=mm³ +unitFT3=ft³ +unitIN3=in³ +unitOZ3=ounce +unitgallon=gallon +ProductCodeModel=Product ref template +ServiceCodeModel=Service ref template +CurrentProductPrice=Current price +AlwaysUseNewPrice=Always use current price of product/service +AlwaysUseFixedPrice=Use the fixed price +PriceByQuantity=Different prices by quantity +DisablePriceByQty=Disable prices by quantity +PriceByQuantityRange=Quantity range +MultipriceRules=Price segment rules +UseMultipriceRules=Use price segment rules (defined into product module setup) to auto calculate prices of all other segments according to first segment +PercentVariationOver=%% variation over %s +PercentDiscountOver=%% discount over %s +KeepEmptyForAutoCalculation=Keep empty to have this calculated automatically from weight or volume of products +VariantRefExample=Examples: COL, SIZE +VariantLabelExample=Examples: Color, Size +### composition fabrication +Build=Produce +ProductsMultiPrice=Products and prices for each price segment +ProductsOrServiceMultiPrice=Customer prices (of products or services, multi-prices) +ProductSellByQuarterHT=Products turnover quarterly before tax +ServiceSellByQuarterHT=Services turnover quarterly before tax +Quarter1=1st. Quarter +Quarter2=2nd. Quarter +Quarter3=3rd. Quarter +Quarter4=4th. Quarter +BarCodePrintsheet=Print barcode +PageToGenerateBarCodeSheets=With this tool, you can print sheets of barcode stickers. Choose format of your sticker page, type of barcode and value of barcode, then click on button %s. +NumberOfStickers=Number of stickers to print on page +PrintsheetForOneBarCode=Print several stickers for one barcode +BuildPageToPrint=Generate page to print +FillBarCodeTypeAndValueManually=Fill barcode type and value manually. +FillBarCodeTypeAndValueFromProduct=Fill barcode type and value from barcode of a product. +FillBarCodeTypeAndValueFromThirdParty=Fill barcode type and value from barcode of a third party. +DefinitionOfBarCodeForProductNotComplete=Definition of type or value of barcode not complete for product %s. +DefinitionOfBarCodeForThirdpartyNotComplete=Definition of type or value of barcode non complete for third party %s. +BarCodeDataForProduct=Barcode information of product %s: +BarCodeDataForThirdparty=Barcode information of third party %s: +ResetBarcodeForAllRecords=Define barcode value for all record (this will also reset barcode value already defined with new values) +PriceByCustomer=Different prices for each customer +PriceCatalogue=A single sell price per product/service +PricingRule=Rules for selling prices +AddCustomerPrice=Add price by customer +ForceUpdateChildPriceSoc=Set same price on customer subsidiaries +PriceByCustomerLog=Log of previous customer prices +MinimumPriceLimit=Minimum price can't be lower then %s +MinimumRecommendedPrice=Minimum recommended price is: %s +PriceExpressionEditor=Price expression editor +PriceExpressionSelected=Selected price expression +PriceExpressionEditorHelp1="price = 2 + 2" or "2 + 2" for setting the price. Use ; to separate expressions +PriceExpressionEditorHelp2=You can access ExtraFields with variables like #extrafield_myextrafieldkey# and global variables with #global_mycode# +PriceExpressionEditorHelp3=In both product/service and vendor prices there are these variables available:
    #tva_tx# #localtax1_tx# #localtax2_tx# #weight# #length# #surface# #price_min# +PriceExpressionEditorHelp4=In product/service price only: #supplier_min_price#
    In vendor prices only: #supplier_quantity# and #supplier_tva_tx# +PriceExpressionEditorHelp5=Available global values: +PriceMode=Price mode +PriceNumeric=Number +DefaultPrice=Default price +ComposedProductIncDecStock=Increase/Decrease stock on parent change +ComposedProduct=Child products +MinSupplierPrice=Minimum buying price +MinCustomerPrice=Minimum selling price +DynamicPriceConfiguration=Dynamic price configuration +DynamicPriceDesc=You may define mathematical formulae to calculate Customer or Vendor prices. Such formulas can use all mathematical operators, some constants and variables. You can define here the variables you wish to use. If the variable needs an automatic update, you may define the external URL to allow Dolibarr to update the value automatically. +AddVariable=Add Variable +AddUpdater=Add Updater +GlobalVariables=Global variables +VariableToUpdate=Variable to update +GlobalVariableUpdaters=External updaters for variables +GlobalVariableUpdaterType0=JSON data +GlobalVariableUpdaterHelp0=Parses JSON data from specified URL, VALUE specifies the location of relevant value, +GlobalVariableUpdaterHelpFormat0=Format for request {"URL": "http://example.com/urlofjson", "VALUE": "array1,array2,targetvalue"} +GlobalVariableUpdaterType1=WebService data +GlobalVariableUpdaterHelp1=Parses WebService data from specified URL, NS specifies the namespace, VALUE specifies the location of relevant value, DATA should contain the data to send and METHOD is the calling WS method +GlobalVariableUpdaterHelpFormat1=Format for request is {"URL": "http://example.com/urlofws", "VALUE": "array,targetvalue", "NS": "http://example.com/urlofns", "METHOD": "myWSMethod", "DATA": {"your": "data", "to": "send"}} +UpdateInterval=Update interval (minutes) +LastUpdated=Latest update +CorrectlyUpdated=Correctly updated +PropalMergePdfProductActualFile=Files use to add into PDF Azur are/is +PropalMergePdfProductChooseFile=Select PDF files +IncludingProductWithTag=Including product/service with tag +DefaultPriceRealPriceMayDependOnCustomer=Default price, real price may depend on customer +WarningSelectOneDocument=Please select at least one document +DefaultUnitToShow=Unit +NbOfQtyInProposals=Qty in proposals +ClinkOnALinkOfColumn=Click on a link of column %s to get a detailed view... +ProductsOrServicesTranslations=Products/Services translations +TranslatedLabel=Translated label +TranslatedDescription=Translated description +TranslatedNote=Translated notes +ProductWeight=Weight for 1 product +ProductVolume=Volume for 1 product +WeightUnits=Weight unit +VolumeUnits=Volume unit +WidthUnits=Width unit +LengthUnits=Length unit +HeightUnits=Height unit +SurfaceUnits=Surface unit +SizeUnits=Size unit +DeleteProductBuyPrice=Delete buying price +ConfirmDeleteProductBuyPrice=Are you sure you want to delete this buying price? +SubProduct=Sub product +ProductSheet=Product sheet +ServiceSheet=Service sheet +PossibleValues=Possible values +GoOnMenuToCreateVairants=Go on menu %s - %s to prepare attribute variants (like colors, size, ...) +UseProductFournDesc=Add a feature to define the descriptions of products defined by the vendors in addition to descriptions for customers +ProductSupplierDescription=Vendor description for the product +UseProductSupplierPackaging=Use packaging on supplier prices (recalculate quantities according to packaging set on supplier price when adding/updating line in supplier documents) +PackagingForThisProduct=Packaging +QtyRecalculatedWithPackaging=The quantity of the line were recalculated according to supplier packaging + +#Attributes +VariantAttributes=Variant attributes +ProductAttributes=Variant attributes for products +ProductAttributeName=Variant attribute %s +ProductAttribute=Variant attribute +ProductAttributeDeleteDialog=Are you sure you want to delete this attribute? All values will be deleted +ProductAttributeValueDeleteDialog=Are you sure you want to delete the value "%s" with reference "%s" of this attribute? +ProductCombinationDeleteDialog=Are you sure want to delete the variant of the product "%s"? +ProductCombinationAlreadyUsed=There was an error while deleting the variant. Please check it is not being used in any object +ProductCombinations=Variants +PropagateVariant=Propagate variants +HideProductCombinations=Hide products variant in the products selector +ProductCombination=Variant +NewProductCombination=New variant +EditProductCombination=Editing variant +NewProductCombinations=New variants +EditProductCombinations=Editing variants +SelectCombination=Select combination +ProductCombinationGenerator=Variants generator +Features=Features +PriceImpact=Price impact +WeightImpact=Weight impact +NewProductAttribute=New attribute +NewProductAttributeValue=New attribute value +ErrorCreatingProductAttributeValue=There was an error while creating the attribute value. It could be because there is already an existing value with that reference +ProductCombinationGeneratorWarning=If you continue, before generating new variants, all previous ones will be DELETED. Already existing ones will be updated with the new values +TooMuchCombinationsWarning=Generating lots of variants may result in high CPU, memory usage and Dolibarr not able to create them. Enabling the option "%s" may help reduce memory usage. +DoNotRemovePreviousCombinations=Do not remove previous variants +UsePercentageVariations=Use percentage variations +PercentageVariation=Percentage variation +ErrorDeletingGeneratedProducts=There was an error while trying to delete existing product variants +NbOfDifferentValues=No. of different values +NbProducts=Number of products +ParentProduct=Parent product +HideChildProducts=Hide variant products +ShowChildProducts=Show variant products +NoEditVariants=Go to Parent product card and edit variants price impact in the variants tab +ConfirmCloneProductCombinations=Would you like to copy all the product variants to the other parent product with the given reference? +CloneDestinationReference=Destination product reference +ErrorCopyProductCombinations=There was an error while copying the product variants +ErrorDestinationProductNotFound=Destination product not found +ErrorProductCombinationNotFound=Product variant not found +ActionAvailableOnVariantProductOnly=Action only available on the variant of product +ProductsPricePerCustomer=Product prices per customers +ProductSupplierExtraFields=Additional Attributes (Supplier Prices) +DeleteLinkedProduct=Delete the child product linked to the combination diff --git a/htdocs/langs/km_KH/projects.lang b/htdocs/langs/km_KH/projects.lang new file mode 100644 index 00000000000..bb42bff3c87 --- /dev/null +++ b/htdocs/langs/km_KH/projects.lang @@ -0,0 +1,267 @@ +# Dolibarr language file - Source file is en_US - projects +RefProject=Ref. project +ProjectRef=Project ref. +ProjectId=Project Id +ProjectLabel=Project label +ProjectsArea=Projects Area +ProjectStatus=Project status +SharedProject=Everybody +PrivateProject=Project contacts +ProjectsImContactFor=Projects for I am explicitly a contact +AllAllowedProjects=All project I can read (mine + public) +AllProjects=All projects +MyProjectsDesc=This view is limited to projects you are a contact for +ProjectsPublicDesc=This view presents all projects you are allowed to read. +TasksOnProjectsPublicDesc=This view presents all tasks on projects you are allowed to read. +ProjectsPublicTaskDesc=This view presents all projects and tasks you are allowed to read. +ProjectsDesc=This view presents all projects (your user permissions grant you permission to view everything). +TasksOnProjectsDesc=This view presents all tasks on all projects (your user permissions grant you permission to view everything). +MyTasksDesc=This view is limited to projects or tasks you are a contact for +OnlyOpenedProject=Only open projects are visible (projects in draft or closed status are not visible). +ClosedProjectsAreHidden=Closed projects are not visible. +TasksPublicDesc=This view presents all projects and tasks you are allowed to read. +TasksDesc=This view presents all projects and tasks (your user permissions grant you permission to view everything). +AllTaskVisibleButEditIfYouAreAssigned=All tasks for qualified projects are visible, but you can enter time only for task assigned to selected user. Assign task if you need to enter time on it. +OnlyYourTaskAreVisible=Only tasks assigned to you are visible. Assign task to yourself if it is not visible and you need to enter time on it. +ImportDatasetTasks=Tasks of projects +ProjectCategories=Project tags/categories +NewProject=New project +AddProject=Create project +DeleteAProject=Delete a project +DeleteATask=Delete a task +ConfirmDeleteAProject=Are you sure you want to delete this project? +ConfirmDeleteATask=Are you sure you want to delete this task? +OpenedProjects=Open projects +OpenedTasks=Open tasks +OpportunitiesStatusForOpenedProjects=Leads amount of open projects by status +OpportunitiesStatusForProjects=Leads amount of projects by status +ShowProject=Show project +ShowTask=Show task +SetProject=Set project +NoProject=No project defined or owned +NbOfProjects=Number of projects +NbOfTasks=Number of tasks +TimeSpent=Time spent +TimeSpentByYou=Time spent by you +TimeSpentByUser=Time spent by user +TimesSpent=Time spent +TaskId=Task ID +RefTask=Task ref. +LabelTask=Task label +TaskTimeSpent=Time spent on tasks +TaskTimeUser=User +TaskTimeNote=Note +TaskTimeDate=Date +TasksOnOpenedProject=Tasks on open projects +WorkloadNotDefined=Workload not defined +NewTimeSpent=Time spent +MyTimeSpent=My time spent +BillTime=Bill the time spent +BillTimeShort=Bill time +TimeToBill=Time not billed +TimeBilled=Time billed +Tasks=Tasks +Task=Task +TaskDateStart=Task start date +TaskDateEnd=Task end date +TaskDescription=Task description +NewTask=New task +AddTask=Create task +AddTimeSpent=Create time spent +AddHereTimeSpentForDay=Add here time spent for this day/task +AddHereTimeSpentForWeek=Add here time spent for this week/task +Activity=Activity +Activities=Tasks/activities +MyActivities=My tasks/activities +MyProjects=My projects +MyProjectsArea=My projects Area +DurationEffective=Effective duration +ProgressDeclared=Declared progress +TaskProgressSummary=Task progress +CurentlyOpenedTasks=Curently open tasks +TheReportedProgressIsLessThanTheCalculatedProgressionByX=The declared progress is less %s than the calculated progression +TheReportedProgressIsMoreThanTheCalculatedProgressionByX=The declared progress is more %s than the calculated progression +ProgressCalculated=Calculated progress +WhichIamLinkedTo=which I'm linked to +WhichIamLinkedToProject=which I'm linked to project +Time=Time +ListOfTasks=List of tasks +GoToListOfTimeConsumed=Go to list of time consumed +GanttView=Gantt View +ListProposalsAssociatedProject=List of the commercial proposals related to the project +ListOrdersAssociatedProject=List of sales orders related to the project +ListInvoicesAssociatedProject=List of customer invoices related to the project +ListPredefinedInvoicesAssociatedProject=List of customer template invoices related to the project +ListSupplierOrdersAssociatedProject=List of purchase orders related to the project +ListSupplierInvoicesAssociatedProject=List of vendor invoices related to the project +ListContractAssociatedProject=List of contracts related to the project +ListShippingAssociatedProject=List of shippings related to the project +ListFichinterAssociatedProject=List of interventions related to the project +ListExpenseReportsAssociatedProject=List of expense reports related to the project +ListDonationsAssociatedProject=List of donations related to the project +ListVariousPaymentsAssociatedProject=List of miscellaneous payments related to the project +ListSalariesAssociatedProject=List of payments of salaries related to the project +ListActionsAssociatedProject=List of events related to the project +ListMOAssociatedProject=List of manufacturing orders related to the project +ListTaskTimeUserProject=List of time consumed on tasks of project +ListTaskTimeForTask=List of time consumed on task +ActivityOnProjectToday=Activity on project today +ActivityOnProjectYesterday=Activity on project yesterday +ActivityOnProjectThisWeek=Activity on project this week +ActivityOnProjectThisMonth=Activity on project this month +ActivityOnProjectThisYear=Activity on project this year +ChildOfProjectTask=Child of project/task +ChildOfTask=Child of task +TaskHasChild=Task has child +NotOwnerOfProject=Not owner of this private project +AffectedTo=Allocated to +CantRemoveProject=This project can't be removed as it is referenced by some other objects (invoice, orders or other). See referers tab. +ValidateProject=Validate projet +ConfirmValidateProject=Are you sure you want to validate this project? +CloseAProject=Close project +ConfirmCloseAProject=Are you sure you want to close this project? +AlsoCloseAProject=Also close project (keep it open if you still need to follow production tasks on it) +ReOpenAProject=Open project +ConfirmReOpenAProject=Are you sure you want to re-open this project? +ProjectContact=Contacts of project +TaskContact=Task contacts +ActionsOnProject=Events on project +YouAreNotContactOfProject=You are not a contact of this private project +UserIsNotContactOfProject=User is not a contact of this private project +DeleteATimeSpent=Delete time spent +ConfirmDeleteATimeSpent=Are you sure you want to delete this time spent? +DoNotShowMyTasksOnly=See also tasks not assigned to me +ShowMyTasksOnly=View only tasks assigned to me +TaskRessourceLinks=Contacts of task +ProjectsDedicatedToThisThirdParty=Projects dedicated to this third party +NoTasks=No tasks for this project +LinkedToAnotherCompany=Linked to other third party +TaskIsNotAssignedToUser=Task not assigned to user. Use button '%s' to assign task now. +ErrorTimeSpentIsEmpty=Time spent is empty +ThisWillAlsoRemoveTasks=This action will also delete all tasks of project (%s tasks at the moment) and all inputs of time spent. +IfNeedToUseOtherObjectKeepEmpty=If some objects (invoice, order, ...), belonging to another third party, must be linked to the project to create, keep this empty to have the project being multi third parties. +CloneTasks=Clone tasks +CloneContacts=Clone contacts +CloneNotes=Clone notes +CloneProjectFiles=Clone project joined files +CloneTaskFiles=Clone task(s) joined files (if task(s) cloned) +CloneMoveDate=Update project/tasks dates from now? +ConfirmCloneProject=Are you sure to clone this project? +ProjectReportDate=Change task dates according to new project start date +ErrorShiftTaskDate=Impossible to shift task date according to new project start date +ProjectsAndTasksLines=Projects and tasks +ProjectCreatedInDolibarr=Project %s created +ProjectValidatedInDolibarr=Project %s validated +ProjectModifiedInDolibarr=Project %s modified +TaskCreatedInDolibarr=Task %s created +TaskModifiedInDolibarr=Task %s modified +TaskDeletedInDolibarr=Task %s deleted +OpportunityStatus=Lead status +OpportunityStatusShort=Lead status +OpportunityProbability=Lead probability +OpportunityProbabilityShort=Lead probab. +OpportunityAmount=Lead amount +OpportunityAmountShort=Lead amount +OpportunityWeightedAmount=Opportunity weighted amount +OpportunityWeightedAmountShort=Opp. weighted amount +OpportunityAmountAverageShort=Average lead amount +OpportunityAmountWeigthedShort=Weighted lead amount +WonLostExcluded=Won/Lost excluded +##### Types de contacts ##### +TypeContact_project_internal_PROJECTLEADER=Project leader +TypeContact_project_external_PROJECTLEADER=Project leader +TypeContact_project_internal_PROJECTCONTRIBUTOR=Contributor +TypeContact_project_external_PROJECTCONTRIBUTOR=Contributor +TypeContact_project_task_internal_TASKEXECUTIVE=Task executive +TypeContact_project_task_external_TASKEXECUTIVE=Task executive +TypeContact_project_task_internal_TASKCONTRIBUTOR=Contributor +TypeContact_project_task_external_TASKCONTRIBUTOR=Contributor +SelectElement=Select element +AddElement=Link to element +# Documents models +DocumentModelBeluga=Project document template for linked objects overview +DocumentModelBaleine=Project document template for tasks +DocumentModelTimeSpent=Project report template for time spent +PlannedWorkload=Planned workload +PlannedWorkloadShort=Workload +ProjectReferers=Related items +ProjectMustBeValidatedFirst=Project must be validated first +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time +InputPerDay=Input per day +InputPerWeek=Input per week +InputPerMonth=Input per month +InputDetail=Input detail +TimeAlreadyRecorded=This is time spent already recorded for this task/day and user %s +ProjectsWithThisUserAsContact=Projects with this user as contact +TasksWithThisUserAsContact=Tasks assigned to this user +ResourceNotAssignedToProject=Not assigned to project +ResourceNotAssignedToTheTask=Not assigned to the task +NoUserAssignedToTheProject=No users assigned to this project +TimeSpentBy=Time spent by +TasksAssignedTo=Tasks assigned to +AssignTaskToMe=Assign task to me +AssignTaskToUser=Assign task to %s +SelectTaskToAssign=Select task to assign... +AssignTask=Assign +ProjectOverview=Overview +ManageTasks=Use projects to follow tasks and/or report time spent (timesheets) +ManageOpportunitiesStatus=Use projects to follow leads/opportinuties +ProjectNbProjectByMonth=No. of created projects by month +ProjectNbTaskByMonth=No. of created tasks by month +ProjectOppAmountOfProjectsByMonth=Amount of leads by month +ProjectWeightedOppAmountOfProjectsByMonth=Weighted amount of leads by month +ProjectOpenedProjectByOppStatus=Open project/lead by lead status +ProjectsStatistics=Statistics on projects/leads +TasksStatistics=Statistics on project/lead tasks +TaskAssignedToEnterTime=Task assigned. Entering time on this task should be possible. +IdTaskTime=Id task time +YouCanCompleteRef=If you want to complete the ref with some suffix, it is recommanded to add a - character to separate it, so the automatic numbering will still work correctly for next projects. For example %s-MYSUFFIX +OpenedProjectsByThirdparties=Open projects by third parties +OnlyOpportunitiesShort=Only leads +OpenedOpportunitiesShort=Open leads +NotOpenedOpportunitiesShort=Not an open lead +NotAnOpportunityShort=Not a lead +OpportunityTotalAmount=Total amount of leads +OpportunityPonderatedAmount=Weighted amount of leads +OpportunityPonderatedAmountDesc=Leads amount weighted with probability +OppStatusPROSP=Prospection +OppStatusQUAL=Qualification +OppStatusPROPO=Proposal +OppStatusNEGO=Negociation +OppStatusPENDING=Pending +OppStatusWON=Won +OppStatusLOST=Lost +Budget=Budget +AllowToLinkFromOtherCompany=Allow to link project from other company

    Supported values:
    - Keep empty: Can link any project of the company (default)
    - "all": Can link any projects, even projects of other companies
    - A list of third-party ids separated by commas: can link all projects of these third partys (Example: 123,4795,53)
    +LatestProjects=Latest %s projects +LatestModifiedProjects=Latest %s modified projects +OtherFilteredTasks=Other filtered tasks +NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) +ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you +# Comments trans +AllowCommentOnTask=Allow user comments on tasks +AllowCommentOnProject=Allow user comments on projects +DontHavePermissionForCloseProject=You do not have permissions to close the project %s +DontHaveTheValidateStatus=The project %s must be open to be closed +RecordsClosed=%s project(s) closed +SendProjectRef=Information project %s +ModuleSalaryToDefineHourlyRateMustBeEnabled=Module 'Salaries' must be enabled to define employee hourly rate to have time spent valorized +NewTaskRefSuggested=Task ref already used, a new task ref is required +TimeSpentInvoiced=Time spent billed +TimeSpentForInvoice=Time spent +OneLinePerUser=One line per user +ServiceToUseOnLines=Service to use on lines +InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project +ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. +ProjectFollowOpportunity=Follow opportunity +ProjectFollowTasks=Follow tasks or time spent +Usage=Usage +UsageOpportunity=Usage: Opportunity +UsageTasks=Usage: Tasks +UsageBillTimeShort=Usage: Bill time +InvoiceToUse=Draft invoice to use +NewInvoice=New invoice +OneLinePerTask=One line per task +OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/km_KH/propal.lang b/htdocs/langs/km_KH/propal.lang new file mode 100644 index 00000000000..71d6857c909 --- /dev/null +++ b/htdocs/langs/km_KH/propal.lang @@ -0,0 +1,86 @@ +# Dolibarr language file - Source file is en_US - propal +Proposals=Commercial proposals +Proposal=Commercial proposal +ProposalShort=Proposal +ProposalsDraft=Draft commercial proposals +ProposalsOpened=Open commercial proposals +CommercialProposal=Commercial proposal +PdfCommercialProposalTitle=Commercial proposal +ProposalCard=Proposal card +NewProp=New commercial proposal +NewPropal=New proposal +Prospect=Prospect +DeleteProp=Delete commercial proposal +ValidateProp=Validate commercial proposal +AddProp=Create proposal +ConfirmDeleteProp=Are you sure you want to delete this commercial proposal? +ConfirmValidateProp=Are you sure you want to validate this commercial proposal under name %s? +LastPropals=Latest %s proposals +LastModifiedProposals=Latest %s modified proposals +AllPropals=All proposals +SearchAProposal=Search a proposal +NoProposal=No proposal +ProposalsStatistics=Commercial proposal's statistics +NumberOfProposalsByMonth=Number by month +AmountOfProposalsByMonthHT=Amount by month (excl. tax) +NbOfProposals=Number of commercial proposals +ShowPropal=Show proposal +PropalsDraft=Drafts +PropalsOpened=Open +PropalStatusDraft=Draft (needs to be validated) +PropalStatusValidated=Validated (proposal is open) +PropalStatusSigned=Signed (needs billing) +PropalStatusNotSigned=Not signed (closed) +PropalStatusBilled=Billed +PropalStatusDraftShort=Draft +PropalStatusValidatedShort=Validated (open) +PropalStatusClosedShort=Closed +PropalStatusSignedShort=Signed +PropalStatusNotSignedShort=Not signed +PropalStatusBilledShort=Billed +PropalsToClose=Commercial proposals to close +PropalsToBill=Signed commercial proposals to bill +ListOfProposals=List of commercial proposals +ActionsOnPropal=Events on proposal +RefProposal=Commercial proposal ref +SendPropalByMail=Send commercial proposal by mail +DatePropal=Date of proposal +DateEndPropal=Validity ending date +ValidityDuration=Validity duration +CloseAs=Set status to +SetAcceptedRefused=Set accepted/refused +ErrorPropalNotFound=Propal %s not found +AddToDraftProposals=Add to draft proposal +NoDraftProposals=No draft proposals +CopyPropalFrom=Create commercial proposal by copying existing proposal +CreateEmptyPropal=Create empty commercial proposal or from list of products/services +DefaultProposalDurationValidity=Default commercial proposal validity duration (in days) +UseCustomerContactAsPropalRecipientIfExist=Use contact/address with type 'Contact following-up proposal' if defined instead of third party address as proposal recipient address +ConfirmClonePropal=Are you sure you want to clone the commercial proposal %s? +ConfirmReOpenProp=Are you sure you want to open back the commercial proposal %s? +ProposalsAndProposalsLines=Commercial proposal and lines +ProposalLine=Proposal line +AvailabilityPeriod=Availability delay +SetAvailability=Set availability delay +AfterOrder=after order +OtherProposals=Other proposals +##### Availability ##### +AvailabilityTypeAV_NOW=Immediate +AvailabilityTypeAV_1W=1 week +AvailabilityTypeAV_2W=2 weeks +AvailabilityTypeAV_3W=3 weeks +AvailabilityTypeAV_1M=1 month +##### Types de contacts ##### +TypeContact_propal_internal_SALESREPFOLL=Representative following-up proposal +TypeContact_propal_external_BILLING=Customer invoice contact +TypeContact_propal_external_CUSTOMER=Customer contact following-up proposal +TypeContact_propal_external_SHIPPING=Customer contact for delivery +# Document models +DocModelAzurDescription=A complete proposal model (old implementation of Cyan template) +DocModelCyanDescription=A complete proposal model +DefaultModelPropalCreate=Default model creation +DefaultModelPropalToBill=Default template when closing a business proposal (to be invoiced) +DefaultModelPropalClosed=Default template when closing a business proposal (unbilled) +ProposalCustomerSignature=Written acceptance, company stamp, date and signature +ProposalsStatisticsSuppliers=Vendor proposals statistics +CaseFollowedBy=Case followed by diff --git a/htdocs/langs/km_KH/receiptprinter.lang b/htdocs/langs/km_KH/receiptprinter.lang new file mode 100644 index 00000000000..896eaa313dd --- /dev/null +++ b/htdocs/langs/km_KH/receiptprinter.lang @@ -0,0 +1,95 @@ +# Dolibarr language file - Source file is en_US - receiptprinter +ReceiptPrinterSetup=Setup of module ReceiptPrinter +PrinterAdded=Printer %s added +PrinterUpdated=Printer %s updated +PrinterDeleted=Printer %s deleted +TestSentToPrinter=Test Sent To Printer %s +ReceiptPrinter=Receipt printers +ReceiptPrinterDesc=Setup of receipt printers +ReceiptPrinterTemplateDesc=Setup of Templates +ReceiptPrinterTypeDesc=Description of Receipt Printer's type +ReceiptPrinterProfileDesc=Description of Receipt Printer's Profile +ListPrinters=List of Printers +SetupReceiptTemplate=Template Setup +CONNECTOR_DUMMY=Dummy Printer +CONNECTOR_NETWORK_PRINT=Network Printer +CONNECTOR_FILE_PRINT=Local Printer +CONNECTOR_WINDOWS_PRINT=Local Windows Printer +CONNECTOR_CUPS_PRINT=Cups Printer +CONNECTOR_DUMMY_HELP=Fake Printer for test, does nothing +CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 +CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 +CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L +PROFILE_DEFAULT=Default Profile +PROFILE_SIMPLE=Simple Profile +PROFILE_EPOSTEP=Epos Tep Profile +PROFILE_P822D=P822D Profile +PROFILE_STAR=Star Profile +PROFILE_DEFAULT_HELP=Default Profile suitable for Epson printers +PROFILE_SIMPLE_HELP=Simple Profile No Graphics +PROFILE_EPOSTEP_HELP=Epos Tep Profile +PROFILE_P822D_HELP=P822D Profile No Graphics +PROFILE_STAR_HELP=Star Profile +DOL_LINE_FEED=Skip line +DOL_ALIGN_LEFT=Left align text +DOL_ALIGN_CENTER=Center text +DOL_ALIGN_RIGHT=Right align text +DOL_USE_FONT_A=Use font A of printer +DOL_USE_FONT_B=Use font B of printer +DOL_USE_FONT_C=Use font C of printer +DOL_PRINT_BARCODE=Print barcode +DOL_PRINT_BARCODE_CUSTOMER_ID=Print barcode customer id +DOL_CUT_PAPER_FULL=Cut ticket completely +DOL_CUT_PAPER_PARTIAL=Cut ticket partially +DOL_OPEN_DRAWER=Open cash drawer +DOL_ACTIVATE_BUZZER=Activate buzzer +DOL_PRINT_QRCODE=Print QR Code +DOL_PRINT_LOGO=Print logo of my company +DOL_PRINT_LOGO_OLD=Print logo of my company (old printers) +DOL_BOLD=Bold +DOL_BOLD_DISABLED=Disable bold +DOL_DOUBLE_HEIGHT=Double height size +DOL_DOUBLE_WIDTH=Double width size +DOL_DEFAULT_HEIGHT_WIDTH=Default height and width size +DOL_UNDERLINE=Enable underline +DOL_UNDERLINE_DISABLED=Disable underline +DOL_BEEP=Beed sound +DOL_PRINT_TEXT=Print text +DOL_VALUE_DATE=Invoice date +DOL_VALUE_DATE_TIME=Invoice date and time +DOL_VALUE_YEAR=Invoice year +DOL_VALUE_MONTH_LETTERS=Invoice month in letters +DOL_VALUE_MONTH=Invoice month +DOL_VALUE_DAY=Invoice day +DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Invoice ref +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=Capital +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/km_KH/resource.lang b/htdocs/langs/km_KH/resource.lang new file mode 100644 index 00000000000..e8574dc680f --- /dev/null +++ b/htdocs/langs/km_KH/resource.lang @@ -0,0 +1,39 @@ +# Dolibarr language file - Source file is en_US - resource +MenuResourceIndex=Resources +MenuResourceAdd=New resource +DeleteResource=Delete resource +ConfirmDeleteResourceElement=Confirm delete the resource for this element +NoResourceInDatabase=No resource in database. +NoResourceLinked=No resource linked +ActionsOnResource=Events about this resource +ResourcePageIndex=Resources list +ResourceSingular=Resource +ResourceCard=Resource card +AddResource=Create a resource +ResourceFormLabel_ref=Resource name +ResourceType=Resource type +ResourceFormLabel_description=Resource description + +ResourcesLinkedToElement=Resources linked to element + +ShowResource=Show resource + +ResourceElementPage=Element resources +ResourceCreatedWithSuccess=Resource successfully created +RessourceLineSuccessfullyDeleted=Resource line successfully deleted +RessourceLineSuccessfullyUpdated=Resource line successfully updated +ResourceLinkedWithSuccess=Resource linked with success + +ConfirmDeleteResource=Confirm to delete this resource +RessourceSuccessfullyDeleted=Resource successfully deleted +DictionaryResourceType=Type of resources + +SelectResource=Select resource + +IdResource=Id resource +AssetNumber=Serial number +ResourceTypeCode=Resource type code +ImportDataset_resource_1=Resources + +ErrorResourcesAlreadyInUse=Some resources are in use +ErrorResourceUseInEvent=%s used in %s event diff --git a/htdocs/langs/km_KH/salaries.lang b/htdocs/langs/km_KH/salaries.lang new file mode 100644 index 00000000000..7c3c08a65bd --- /dev/null +++ b/htdocs/langs/km_KH/salaries.lang @@ -0,0 +1,21 @@ +# Dolibarr language file - Source file is en_US - salaries +SALARIES_ACCOUNTING_ACCOUNT_PAYMENT=Accounting account used for user third parties +SALARIES_ACCOUNTING_ACCOUNT_PAYMENT_Desc=The dedicated accounting account defined on user card will be used for Subledger accounting only. This one will be used for General Ledger and as default value of Subledger accounting if dedicated user accounting account on user is not defined. +SALARIES_ACCOUNTING_ACCOUNT_CHARGE=Accounting account by default for wage payments +Salary=Salary +Salaries=Salaries +NewSalaryPayment=New salary payment +AddSalaryPayment=Add salary payment +SalaryPayment=Salary payment +SalariesPayments=Salaries payments +ShowSalaryPayment=Show salary payment +THM=Average hourly rate +TJM=Average daily rate +CurrentSalary=Current salary +THMDescription=This value may be used to calculate the cost of time consumed on a project entered by users if module project is used +TJMDescription=This value is currently for information only and is not used for any calculation +LastSalaries=Latest %s salary payments +AllSalaries=All salary payments +SalariesStatistics=Salary statistics +# Export +SalariesAndPayments=Salaries and payments diff --git a/htdocs/langs/km_KH/sendings.lang b/htdocs/langs/km_KH/sendings.lang new file mode 100644 index 00000000000..5ce3b7f67e9 --- /dev/null +++ b/htdocs/langs/km_KH/sendings.lang @@ -0,0 +1,74 @@ +# Dolibarr language file - Source file is en_US - sendings +RefSending=Ref. shipment +Sending=Shipment +Sendings=Shipments +AllSendings=All Shipments +Shipment=Shipment +Shipments=Shipments +ShowSending=Show Shipments +Receivings=Delivery Receipts +SendingsArea=Shipments area +ListOfSendings=List of shipments +SendingMethod=Shipping method +LastSendings=Latest %s shipments +StatisticsOfSendings=Statistics for shipments +NbOfSendings=Number of shipments +NumberOfShipmentsByMonth=Number of shipments by month +SendingCard=Shipment card +NewSending=New shipment +CreateShipment=Create shipment +QtyShipped=Qty shipped +QtyShippedShort=Qty ship. +QtyPreparedOrShipped=Qty prepared or shipped +QtyToShip=Qty to ship +QtyToReceive=Qty to receive +QtyReceived=Qty received +QtyInOtherShipments=Qty in other shipments +KeepToShip=Remain to ship +KeepToShipShort=Remain +OtherSendingsForSameOrder=Other shipments for this order +SendingsAndReceivingForSameOrder=Shipments and receipts for this order +SendingsToValidate=Shipments to validate +StatusSendingCanceled=Canceled +StatusSendingDraft=Draft +StatusSendingValidated=Validated (products to ship or already shipped) +StatusSendingProcessed=Processed +StatusSendingDraftShort=Draft +StatusSendingValidatedShort=Validated +StatusSendingProcessedShort=Processed +SendingSheet=Shipment sheet +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=Warning, no products waiting to be shipped. +StatsOnShipmentsOnlyValidated=Statistics conducted on shipments only validated. Date used is date of validation of shipment (planed delivery date is not always known). +DateDeliveryPlanned=Planned date of delivery +RefDeliveryReceipt=Ref delivery receipt +StatusReceipt=Status delivery receipt +DateReceived=Date delivery received +ClassifyReception=Classify reception +SendShippingByEMail=Send shipment by email +SendShippingRef=Submission of shipment %s +ActionsOnShipping=Events on shipment +LinkToTrackYourPackage=Link to track your package +ShipmentCreationIsDoneFromOrder=For the moment, creation of a new shipment is done from the order card. +ShipmentLine=Shipment line +ProductQtyInCustomersOrdersRunning=Product quantity from open sales orders +ProductQtyInSuppliersOrdersRunning=Product quantity from open purchase orders +ProductQtyInShipmentAlreadySent=Product quantity from open sales order already sent +ProductQtyInSuppliersShipmentAlreadyRecevied=Product quantity from open purchase orders already received +NoProductToShipFoundIntoStock=No product to ship found in warehouse %s. Correct stock or go back to choose another warehouse. +WeightVolShort=Weight/Vol. +ValidateOrderFirstBeforeShipment=You must first validate the order before being able to make shipments. + +# Sending methods +# ModelDocument +DocumentModelTyphon=More complete document model for delivery receipts (logo...) +Error_EXPEDITION_ADDON_NUMBER_NotDefined=Constant EXPEDITION_ADDON_NUMBER not defined +SumOfProductVolumes=Sum of product volumes +SumOfProductWeights=Sum of product weights + +# warehouse details +DetailWarehouseNumber= Warehouse details +DetailWarehouseFormat= W:%s (Qty: %d) diff --git a/htdocs/langs/km_KH/sms.lang b/htdocs/langs/km_KH/sms.lang new file mode 100644 index 00000000000..055085eb16a --- /dev/null +++ b/htdocs/langs/km_KH/sms.lang @@ -0,0 +1,51 @@ +# Dolibarr language file - Source file is en_US - sms +Sms=Sms +SmsSetup=SMS setup +SmsDesc=This page allows you to define global options on SMS features +SmsCard=SMS Card +AllSms=All SMS campaigns +SmsTargets=Targets +SmsRecipients=Targets +SmsRecipient=Target +SmsTitle=Description +SmsFrom=Sender +SmsTo=Target +SmsTopic=Topic of SMS +SmsText=Message +SmsMessage=SMS Message +ShowSms=Show SMS +ListOfSms=List SMS campaigns +NewSms=New SMS campaign +EditSms=Edit SMS +ResetSms=New sending +DeleteSms=Delete SMS campaign +DeleteASms=Remove a SMS campaign +PreviewSms=Previuw SMS +PrepareSms=Prepare SMS +CreateSms=Create SMS +SmsResult=Result of SMS sending +TestSms=Test SMS +ValidSms=Validate SMS +ApproveSms=Approve SMS +SmsStatusDraft=Draft +SmsStatusValidated=Validated +SmsStatusApproved=Approved +SmsStatusSent=Sent +SmsStatusSentPartialy=Sent partially +SmsStatusSentCompletely=Sent completely +SmsStatusError=Error +SmsStatusNotSent=Not sent +SmsSuccessfulySent=SMS correctly sent (from %s to %s) +ErrorSmsRecipientIsEmpty=Number of target is empty +WarningNoSmsAdded=No new phone number to add to target list +ConfirmValidSms=Do you confirm validation of this campaign? +NbOfUniqueSms=No. of unique phone numbers +NbOfSms=No. of phone numbers +ThisIsATestMessage=This is a test message +SendSms=Send SMS +SmsInfoCharRemain=No. of remaining characters +SmsInfoNumero= (international format i.e.: +33899701761) +DelayBeforeSending=Delay before sending (minutes) +SmsNoPossibleSenderFound=No sender available. Check setup of your SMS provider. +SmsNoPossibleRecipientFound=No target available. Check setup of your SMS provider. +DisableStopIfSupported=Disable STOP message (if supported) diff --git a/htdocs/langs/km_KH/stocks.lang b/htdocs/langs/km_KH/stocks.lang new file mode 100644 index 00000000000..9856649b834 --- /dev/null +++ b/htdocs/langs/km_KH/stocks.lang @@ -0,0 +1,220 @@ +# Dolibarr language file - Source file is en_US - stocks +WarehouseCard=Warehouse card +Warehouse=Warehouse +Warehouses=Warehouses +ParentWarehouse=Parent warehouse +NewWarehouse=New warehouse / Stock Location +WarehouseEdit=Modify warehouse +MenuNewWarehouse=New warehouse +WarehouseSource=Source warehouse +WarehouseSourceNotDefined=No warehouse defined, +AddWarehouse=Create warehouse +AddOne=Add one +DefaultWarehouse=Default warehouse +WarehouseTarget=Target warehouse +ValidateSending=Delete sending +CancelSending=Cancel sending +DeleteSending=Delete sending +Stock=Stock +Stocks=Stocks +StocksByLotSerial=Stocks by lot/serial +LotSerial=Lots/Serials +LotSerialList=List of lot/serials +Movements=Movements +ErrorWarehouseRefRequired=Warehouse reference name is required +ListOfWarehouses=List of warehouses +ListOfStockMovements=List of stock movements +ListOfInventories=List of inventories +MovementId=Movement ID +StockMovementForId=Movement ID %d +ListMouvementStockProject=List of stock movements associated to project +StocksArea=Warehouses area +AllWarehouses=All warehouses +IncludeAlsoDraftOrders=Include also draft orders +Location=Location +LocationSummary=Short name location +NumberOfDifferentProducts=Number of different products +NumberOfProducts=Total number of products +LastMovement=Latest movement +LastMovements=Latest movements +Units=Units +Unit=Unit +StockCorrection=Stock correction +CorrectStock=Correct stock +StockTransfer=Stock transfer +TransferStock=Transfer stock +MassStockTransferShort=Mass stock transfer +StockMovement=Stock movement +StockMovements=Stock movements +NumberOfUnit=Number of units +UnitPurchaseValue=Unit purchase price +StockTooLow=Stock too low +StockLowerThanLimit=Stock lower than alert limit (%s) +EnhancedValue=Value +PMPValue=Weighted average price +PMPValueShort=WAP +EnhancedValueOfWarehouses=Warehouses value +UserWarehouseAutoCreate=Create a user warehouse automatically when creating a user +AllowAddLimitStockByWarehouse=Manage also value for minimum and desired stock per pairing (product-warehouse) in addition to the value for minimum and desired stock per product +IndependantSubProductStock=Product stock and subproduct stock are independent +QtyDispatched=Quantity dispatched +QtyDispatchedShort=Qty dispatched +QtyToDispatchShort=Qty to dispatch +OrderDispatch=Item receipts +RuleForStockManagementDecrease=Choose Rule for automatic stock decrease (manual decrease is always possible, even if an automatic decrease rule is activated) +RuleForStockManagementIncrease=Choose Rule for automatic stock increase (manual increase is always possible, even if an automatic increase rule is activated) +DeStockOnBill=Decrease real stocks on validation of customer invoice/credit note +DeStockOnValidateOrder=Decrease real stocks on validation of sales order +DeStockOnShipment=Decrease real stocks on shipping validation +DeStockOnShipmentOnClosing=Decrease real stocks when shipping is set to closed +ReStockOnBill=Increase real stocks on validation of vendor invoice/credit note +ReStockOnValidateOrder=Increase real stocks on purchase order approval +ReStockOnDispatchOrder=Increase real stocks on manual dispatching into warehouse, after purchase order receipt of goods +StockOnReception=Increase real stocks on validation of reception +StockOnReceptionOnClosing=Increase real stocks when reception is set to closed +OrderStatusNotReadyToDispatch=Order has not yet or no more a status that allows dispatching of products in stock warehouses. +StockDiffPhysicTeoric=Explanation for difference between physical and virtual stock +NoPredefinedProductToDispatch=No predefined products for this object. So no dispatching in stock is required. +DispatchVerb=Dispatch +StockLimitShort=Limit for alert +StockLimit=Stock limit for alert +StockLimitDesc=(empty) means no warning.
    0 can be used for a warning as soon as stock is empty. +PhysicalStock=Physical Stock +RealStock=Real Stock +RealStockDesc=Physical/real stock is the stock currently in the warehouses. +RealStockWillAutomaticallyWhen=The real stock will be modified according to this rule (as defined in the Stock module): +VirtualStock=Virtual stock +VirtualStockDesc=Virtual stock is the calculated stock available once all open/pending actions (that affect stocks) are closed (purchase orders received, sales orders shipped etc.) +IdWarehouse=Id warehouse +DescWareHouse=Description warehouse +LieuWareHouse=Localisation warehouse +WarehousesAndProducts=Warehouses and products +WarehousesAndProductsBatchDetail=Warehouses and products (with detail per lot/serial) +AverageUnitPricePMPShort=Weighted average input price +AverageUnitPricePMP=Weighted average input price +SellPriceMin=Selling Unit Price +EstimatedStockValueSellShort=Value for sell +EstimatedStockValueSell=Value for sell +EstimatedStockValueShort=Input stock value +EstimatedStockValue=Input stock value +DeleteAWarehouse=Delete a warehouse +ConfirmDeleteWarehouse=Are you sure you want to delete the warehouse %s? +PersonalStock=Personal stock %s +ThisWarehouseIsPersonalStock=This warehouse represents personal stock of %s %s +SelectWarehouseForStockDecrease=Choose warehouse to use for stock decrease +SelectWarehouseForStockIncrease=Choose warehouse to use for stock increase +NoStockAction=No stock action +DesiredStock=Desired Stock +DesiredStockDesc=This stock amount will be the value used to fill the stock by replenishment feature. +StockToBuy=To order +Replenishment=Replenishment +ReplenishmentOrders=Replenishment orders +VirtualDiffersFromPhysical=According to increase/decrease stock options, physical stock and virtual stock (physical + current orders) may differ +UseVirtualStockByDefault=Use virtual stock by default, instead of physical stock, for replenishment feature +UseVirtualStock=Use virtual stock +UsePhysicalStock=Use physical stock +CurentSelectionMode=Current selection mode +CurentlyUsingVirtualStock=Virtual stock +CurentlyUsingPhysicalStock=Physical stock +RuleForStockReplenishment=Rule for stocks replenishment +SelectProductWithNotNullQty=Select at least one product with a qty not null and a vendor +AlertOnly= Alerts only +WarehouseForStockDecrease=The warehouse %s will be used for stock decrease +WarehouseForStockIncrease=The warehouse %s will be used for stock increase +ForThisWarehouse=For this warehouse +ReplenishmentStatusDesc=This is a list of all products with a stock lower than desired stock (or lower than alert value if checkbox "alert only" is checked). Using the checkbox, you can create purchase orders to fill the difference. +ReplenishmentOrdersDesc=This is a list of all open purchase orders including predefined products. Only open orders with predefined products, so orders that may affect stocks, are visible here. +Replenishments=Replenishments +NbOfProductBeforePeriod=Quantity of product %s in stock before selected period (< %s) +NbOfProductAfterPeriod=Quantity of product %s in stock after selected period (> %s) +MassMovement=Mass movement +SelectProductInAndOutWareHouse=Select a product, a quantity, a source warehouse and a target warehouse, then click "%s". Once this is done for all required movements, click onto "%s". +RecordMovement=Record transfer +ReceivingForSameOrder=Receipts for this order +StockMovementRecorded=Stock movements recorded +RuleForStockAvailability=Rules on stock requirements +StockMustBeEnoughForInvoice=Stock level must be enough to add product/service to invoice (check is done on current real stock when adding a line into invoice whatever the rule for automatic stock change) +StockMustBeEnoughForOrder=Stock level must be enough to add product/service to order (check is done on current real stock when adding a line into order whatever the rule for automatic stock change) +StockMustBeEnoughForShipment= Stock level must be enough to add product/service to shipment (check is done on current real stock when adding a line into shipment whatever the rule for automatic stock change) +MovementLabel=Label of movement +TypeMovement=Type of movement +DateMovement=Date of movement +InventoryCode=Movement or inventory code +IsInPackage=Contained into package +WarehouseAllowNegativeTransfer=Stock can be negative +qtyToTranferIsNotEnough=You don't have enough stock from your source warehouse and your setup does not allow negative stocks. +qtyToTranferLotIsNotEnough=You don't have enough stock, for this lot number, from your source warehouse and your setup does not allow negative stocks (Qty for product '%s' with lot '%s' is %s in warehouse '%s'). +ShowWarehouse=Show warehouse +MovementCorrectStock=Stock correction for product %s +MovementTransferStock=Stock transfer of product %s into another warehouse +InventoryCodeShort=Inv./Mov. code +NoPendingReceptionOnSupplierOrder=No pending reception due to open purchase order +ThisSerialAlreadyExistWithDifferentDate=This lot/serial number (%s) already exists but with different eatby or sellby date (found %s but you enter %s). +OpenAll=Open for all actions +OpenInternal=Open only for internal actions +UseDispatchStatus=Use a dispatch status (approve/refuse) for product lines on purchase order reception +OptionMULTIPRICESIsOn=Option "several prices per segment" is on. It means a product has several selling price so value for sell can't be calculated +ProductStockWarehouseCreated=Stock limit for alert and desired optimal stock correctly created +ProductStockWarehouseUpdated=Stock limit for alert and desired optimal stock correctly updated +ProductStockWarehouseDeleted=Stock limit for alert and desired optimal stock correctly deleted +AddNewProductStockWarehouse=Set new limit for alert and desired optimal stock +AddStockLocationLine=Decrease quantity then click to add another warehouse for this product +InventoryDate=Inventory date +NewInventory=New inventory +inventorySetup = Inventory Setup +inventoryCreatePermission=Create new inventory +inventoryReadPermission=View inventories +inventoryWritePermission=Update inventories +inventoryValidatePermission=Validate inventory +inventoryTitle=Inventory +inventoryListTitle=Inventories +inventoryListEmpty=No inventory in progress +inventoryCreateDelete=Create/Delete inventory +inventoryCreate=Create new +inventoryEdit=Edit +inventoryValidate=Validated +inventoryDraft=Running +inventorySelectWarehouse=Warehouse choice +inventoryConfirmCreate=Create +inventoryOfWarehouse=Inventory for warehouse: %s +inventoryErrorQtyAdd=Error: one quantity is less than zero +inventoryMvtStock=By inventory +inventoryWarningProductAlreadyExists=This product is already into list +SelectCategory=Category filter +SelectFournisseur=Vendor filter +inventoryOnDate=Inventory +INVENTORY_DISABLE_VIRTUAL=Virtual product (kit): do not decrement stock of a child product +INVENTORY_USE_MIN_PA_IF_NO_LAST_PA=Use the buy price if no last buy price can be found +INVENTORY_USE_INVENTORY_DATE_FOR_DATE_OF_MVT=Stock movements will have the date of inventory (instead of the date of inventory validation) +inventoryChangePMPPermission=Allow to change PMP value for a product +ColumnNewPMP=New unit PMP +OnlyProdsInStock=Do not add product without stock +TheoricalQty=Theorique qty +TheoricalValue=Theorique qty +LastPA=Last BP +CurrentPA=Curent BP +RecordedQty=Recorded Qty +RealQty=Real Qty +RealValue=Real Value +RegulatedQty=Regulated Qty +AddInventoryProduct=Add product to inventory +AddProduct=Add +ApplyPMP=Apply PMP +FlushInventory=Flush inventory +ConfirmFlushInventory=Do you confirm this action? +InventoryFlushed=Inventory flushed +ExitEditMode=Exit edition +inventoryDeleteLine=Delete line +RegulateStock=Regulate Stock +ListInventory=List +StockSupportServices=Stock management supports Services +StockSupportServicesDesc=By default, you can stock only products of type "product". You may also stock a product of type "service" if both module Services and this option are enabled. +ReceiveProducts=Receive items +StockIncreaseAfterCorrectTransfer=Increase by correction/transfer +StockDecreaseAfterCorrectTransfer=Decrease by correction/transfer +StockIncrease=Stock increase +StockDecrease=Stock decrease +InventoryForASpecificWarehouse=Inventory for a specific warehouse +InventoryForASpecificProduct=Inventory for a specific product +StockIsRequiredToChooseWhichLotToUse=Stock is required to choose which lot to use +ForceTo=Force to diff --git a/htdocs/langs/km_KH/stripe.lang b/htdocs/langs/km_KH/stripe.lang new file mode 100644 index 00000000000..844762040af --- /dev/null +++ b/htdocs/langs/km_KH/stripe.lang @@ -0,0 +1,72 @@ +# Dolibarr language file - Source file is en_US - stripe +StripeSetup=Stripe module setup +StripeDesc=Offer customers a Stripe online payment page for payments with credit/cebit cards via Stripe. This can be used to allow your customers to make ad-hoc payments or for payments related to a particular Dolibarr object (invoice, order, ...) +StripeOrCBDoPayment=Pay with credit card or Stripe +FollowingUrlAreAvailableToMakePayments=Following URLs are available to offer a page to a customer to make a payment on Dolibarr objects +PaymentForm=Payment form +WelcomeOnPaymentPage=Welcome to our online payment service +ThisScreenAllowsYouToPay=This screen allow you to make an online payment to %s. +ThisIsInformationOnPayment=This is information on payment to do +ToComplete=To complete +YourEMail=Email to receive payment confirmation +STRIPE_PAYONLINE_SENDEMAIL=Email notification after a payment attempt (success or fail) +Creditor=Creditor +PaymentCode=Payment code +StripeDoPayment=Pay with Stripe +YouWillBeRedirectedOnStripe=You will be redirected on secured Stripe page to input you credit card information +Continue=Next +ToOfferALinkForOnlinePayment=URL for %s payment +ToOfferALinkForOnlinePaymentOnOrder=URL to offer a %s online payment page for a sales order +ToOfferALinkForOnlinePaymentOnInvoice=URL to offer a %s online payment page for a customer invoice +ToOfferALinkForOnlinePaymentOnContractLine=URL to offer a %s online payment page for a contract line +ToOfferALinkForOnlinePaymentOnFreeAmount=URL to offer a %s online payment page of any amount with no existing object +ToOfferALinkForOnlinePaymentOnMemberSubscription=URL to offer a %s online payment page for a member subscription +ToOfferALinkForOnlinePaymentOnDonation=URL to offer a %s online payment page for payment of a donation +YouCanAddTagOnUrl=You can also add url parameter &tag=value to any of those URL (mandatory only for payment not linked to an object) to add your own payment comment tag.
    For the URL of payments with no existing object, you may also add the parameter &noidempotency=1 so the same link with same tag can be used several times (some payment mode may limit the payment to 1 for each different link without this parameter) +SetupStripeToHavePaymentCreatedAutomatically=Setup your Stripe with url %s to have payment created automatically when validated by Stripe. +AccountParameter=Account parameters +UsageParameter=Usage parameters +InformationToFindParameters=Help to find your %s account information +STRIPE_CGI_URL_V2=Url of Stripe CGI module for payment +VendorName=Name of vendor +CSSUrlForPaymentForm=CSS style sheet url for payment form +NewStripePaymentReceived=New Stripe payment received +NewStripePaymentFailed=New Stripe payment tried but failed +FailedToChargeCard=Failed to charge card +STRIPE_TEST_SECRET_KEY=Secret test key +STRIPE_TEST_PUBLISHABLE_KEY=Publishable test key +STRIPE_TEST_WEBHOOK_KEY=Webhook test key +STRIPE_LIVE_SECRET_KEY=Secret live key +STRIPE_LIVE_PUBLISHABLE_KEY=Publishable live key +STRIPE_LIVE_WEBHOOK_KEY=Webhook live key +ONLINE_PAYMENT_WAREHOUSE=Stock to use for stock decrease when online payment is done
    (TODO When option to decrease stock is done on an action on invoice and the online payment generate itself the invoice ?) +StripeLiveEnabled=Stripe live enabled (otherwise test/sandbox mode) +StripeImportPayment=Import Stripe payments +ExampleOfTestCreditCard=Example of credit card for test: %s => valid, %s => error CVC, %s => expired, %s => charge fails +StripeGateways=Stripe gateways +OAUTH_STRIPE_TEST_ID=Stripe Connect Client ID (ca_...) +OAUTH_STRIPE_LIVE_ID=Stripe Connect Client ID (ca_...) +BankAccountForBankTransfer=Bank account for fund payouts +StripeAccount=Stripe account +StripeChargeList=List of Stripe charges +StripeTransactionList=List of Stripe transactions +StripeCustomerId=Stripe customer id +StripePaymentModes=Stripe payment modes +LocalID=Local ID +StripeID=Stripe ID +NameOnCard=Name on card +CardNumber=Card Number +ExpiryDate=Expiry Date +CVN=CVN +DeleteACard=Delete Card +ConfirmDeleteCard=Are you sure you want to delete this Credit or Debit card? +CreateCustomerOnStripe=Create customer on Stripe +CreateCardOnStripe=Create card on Stripe +ShowInStripe=Show in Stripe +StripeUserAccountForActions=User account to use for email notification of some Stripe events (Stripe payouts) +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... +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/km_KH/supplier_proposal.lang b/htdocs/langs/km_KH/supplier_proposal.lang new file mode 100644 index 00000000000..ce5bdf0425a --- /dev/null +++ b/htdocs/langs/km_KH/supplier_proposal.lang @@ -0,0 +1,54 @@ +# Dolibarr language file - Source file is en_US - supplier_proposal +SupplierProposal=Vendor commercial proposals +supplier_proposalDESC=Manage price requests to suppliers +SupplierProposalNew=New price request +CommRequest=Price request +CommRequests=Price requests +SearchRequest=Find a request +DraftRequests=Draft requests +SupplierProposalsDraft=Draft vendor proposals +LastModifiedRequests=Latest %s modified price requests +RequestsOpened=Open price requests +SupplierProposalArea=Vendor proposals area +SupplierProposalShort=Vendor proposal +SupplierProposals=Vendor proposals +SupplierProposalsShort=Vendor proposals +NewAskPrice=New price request +ShowSupplierProposal=Show price request +AddSupplierProposal=Create a price request +SupplierProposalRefFourn=Vendor ref +SupplierProposalDate=Delivery date +SupplierProposalRefFournNotice=Before closing to "Accepted", think to grasp suppliers references. +ConfirmValidateAsk=Are you sure you want to validate this price request under name %s? +DeleteAsk=Delete request +ValidateAsk=Validate request +SupplierProposalStatusDraft=Draft (needs to be validated) +SupplierProposalStatusValidated=Validated (request is open) +SupplierProposalStatusClosed=Closed +SupplierProposalStatusSigned=Accepted +SupplierProposalStatusNotSigned=Refused +SupplierProposalStatusDraftShort=Draft +SupplierProposalStatusValidatedShort=Validated +SupplierProposalStatusClosedShort=Closed +SupplierProposalStatusSignedShort=Accepted +SupplierProposalStatusNotSignedShort=Refused +CopyAskFrom=Create a price request by copying an existing request +CreateEmptyAsk=Create blank request +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=Send price request by mail +SendAskRef=Sending the price request %s +SupplierProposalCard=Request card +ConfirmDeleteAsk=Are you sure you want to delete this price request %s? +ActionsOnSupplierProposal=Events on price request +DocModelAuroreDescription=A complete request model (logo...) +CommercialAsk=Price request +DefaultModelSupplierProposalCreate=Default model creation +DefaultModelSupplierProposalToBill=Default template when closing a price request (accepted) +DefaultModelSupplierProposalClosed=Default template when closing a price request (refused) +ListOfSupplierProposals=List of vendor proposal requests +ListSupplierProposalsAssociatedProject=List of vendor proposals associated with project +SupplierProposalsToClose=Vendor proposals to close +SupplierProposalsToProcess=Vendor proposals to process +LastSupplierProposals=Latest %s price requests +AllPriceRequests=All requests diff --git a/htdocs/langs/km_KH/suppliers.lang b/htdocs/langs/km_KH/suppliers.lang new file mode 100644 index 00000000000..b69b11272b4 --- /dev/null +++ b/htdocs/langs/km_KH/suppliers.lang @@ -0,0 +1,47 @@ +# Dolibarr language file - Source file is en_US - vendors +Suppliers=Vendors +SuppliersInvoice=Vendor invoice +ShowSupplierInvoice=Show Vendor Invoice +NewSupplier=New vendor +History=History +ListOfSuppliers=List of vendors +ShowSupplier=Show vendor +OrderDate=Order date +BuyingPriceMin=Best buying price +BuyingPriceMinShort=Best buying price +TotalBuyingPriceMinShort=Total of subproducts buying prices +TotalSellingPriceMinShort=Total of subproducts selling prices +SomeSubProductHaveNoPrices=Some sub-products have no price defined +AddSupplierPrice=Add buying price +ChangeSupplierPrice=Change buying price +SupplierPrices=Vendor prices +ReferenceSupplierIsAlreadyAssociatedWithAProduct=This vendor reference is already associated with a product: %s +NoRecordedSuppliers=No vendor recorded +SupplierPayment=Vendor payment +SuppliersArea=Vendor area +RefSupplierShort=Ref. vendor +Availability=Availability +ExportDataset_fournisseur_1=Vendor invoices and invoice details +ExportDataset_fournisseur_2=Vendor invoices and payments +ExportDataset_fournisseur_3=Purchase orders and order details +ApproveThisOrder=Approve this order +ConfirmApproveThisOrder=Are you sure you want to approve order %s? +DenyingThisOrder=Deny this order +ConfirmDenyingThisOrder=Are you sure you want to deny this order %s? +ConfirmCancelThisOrder=Are you sure you want to cancel this order %s? +AddSupplierOrder=Create Purchase Order +AddSupplierInvoice=Create vendor invoice +ListOfSupplierProductForSupplier=List of products and prices for vendor %s +SentToSuppliers=Sent to vendors +ListOfSupplierOrders=List of purchase orders +MenuOrdersSupplierToBill=Purchase orders to invoice +NbDaysToDelivery=Delivery delay (days) +DescNbDaysToDelivery=The longest delivery delay of the products from this order +SupplierReputation=Vendor reputation +DoNotOrderThisProductToThisSupplier=Do not order +NotTheGoodQualitySupplier=Low quality +ReputationForThisProduct=Reputation +BuyerName=Buyer name +AllProductServicePrices=All product / service prices +AllProductReferencesOfSupplier=All product / service references of vendor +BuyingPriceNumShort=Vendor prices diff --git a/htdocs/langs/km_KH/trips.lang b/htdocs/langs/km_KH/trips.lang new file mode 100644 index 00000000000..654f14d6bf7 --- /dev/null +++ b/htdocs/langs/km_KH/trips.lang @@ -0,0 +1,151 @@ +# Dolibarr language file - Source file is en_US - trips +ShowExpenseReport=Show expense report +Trips=Expense reports +TripsAndExpenses=Expenses reports +TripsAndExpensesStatistics=Expense reports statistics +TripCard=Expense report card +AddTrip=Create expense report +ListOfTrips=List of expense reports +ListOfFees=List of fees +TypeFees=Types of fees +ShowTrip=Show expense report +NewTrip=New expense report +LastExpenseReports=Latest %s expense reports +AllExpenseReports=All expense reports +CompanyVisited=Company/organization visited +FeesKilometersOrAmout=Amount or kilometers +DeleteTrip=Delete expense report +ConfirmDeleteTrip=Are you sure you want to delete this expense report? +ListTripsAndExpenses=List of expense reports +ListToApprove=Waiting for approval +ExpensesArea=Expense reports area +ClassifyRefunded=Classify 'Refunded' +ExpenseReportWaitingForApproval=A new expense report has been submitted for approval +ExpenseReportWaitingForApprovalMessage=A new expense report has been submitted and is waiting for approval.
    - User: %s
    - Period: %s
    Click here to validate: %s +ExpenseReportWaitingForReApproval=An expense report has been submitted for re-approval +ExpenseReportWaitingForReApprovalMessage=An expense report has been submitted and is waiting for re-approval.
    The %s, you refused to approve the expense report for this reason: %s.
    A new version has been proposed and waiting for your approval.
    - User: %s
    - Period: %s
    Click here to validate: %s +ExpenseReportApproved=An expense report was approved +ExpenseReportApprovedMessage=The expense report %s was approved.
    - User: %s
    - Approved by: %s
    Click here to show the expense report: %s +ExpenseReportRefused=An expense report was refused +ExpenseReportRefusedMessage=The expense report %s was refused.
    - User: %s
    - Refused by: %s
    - Motive for refusal: %s
    Click here to show the expense report: %s +ExpenseReportCanceled=An expense report was canceled +ExpenseReportCanceledMessage=The expense report %s was canceled.
    - User: %s
    - Canceled by: %s
    - Motive for cancellation: %s
    Click here to show the expense report: %s +ExpenseReportPaid=An expense report was paid +ExpenseReportPaidMessage=The expense report %s was paid.
    - User: %s
    - Paid by: %s
    Click here to show the expense report: %s +TripId=Id expense report +AnyOtherInThisListCanValidate=Person to inform for validation. +TripSociete=Information company +TripNDF=Informations expense report +PDFStandardExpenseReports=Standard template to generate a PDF document for expense report +ExpenseReportLine=Expense report line +TF_OTHER=Other +TF_TRIP=Transportation +TF_LUNCH=Lunch +TF_METRO=Metro +TF_TRAIN=Train +TF_BUS=Bus +TF_CAR=Car +TF_PEAGE=Toll +TF_ESSENCE=Fuel +TF_HOTEL=Hotel +TF_TAXI=Taxi +EX_KME=Mileage costs +EX_FUE=Fuel CV +EX_HOT=Hotel +EX_PAR=Parking CV +EX_TOL=Toll CV +EX_TAX=Various Taxes +EX_IND=Indemnity transportation subscription +EX_SUM=Maintenance supply +EX_SUO=Office supplies +EX_CAR=Car rental +EX_DOC=Documentation +EX_CUR=Customers receiving +EX_OTR=Other receiving +EX_POS=Postage +EX_CAM=CV maintenance and repair +EX_EMM=Employees meal +EX_GUM=Guests meal +EX_BRE=Breakfast +EX_FUE_VP=Fuel PV +EX_TOL_VP=Toll PV +EX_PAR_VP=Parking PV +EX_CAM_VP=PV maintenance and repair +DefaultCategoryCar=Default transportation mode +DefaultRangeNumber=Default range number +UploadANewFileNow=Upload a new document now +Error_EXPENSEREPORT_ADDON_NotDefined=Error, the rule for expense report numbering ref was not defined into setup of module 'Expense Report' +ErrorDoubleDeclaration=You have declared another expense report into a similar date range. +AucuneLigne=There is no expense report declared yet +ModePaiement=Payment mode +VALIDATOR=User responsible for approval +VALIDOR=Approved by +AUTHOR=Recorded by +AUTHORPAIEMENT=Paid by +REFUSEUR=Denied by +CANCEL_USER=Deleted by +MOTIF_REFUS=Reason +MOTIF_CANCEL=Reason +DATE_REFUS=Deny date +DATE_SAVE=Validation date +DATE_CANCEL=Cancelation date +DATE_PAIEMENT=Payment date +BROUILLONNER=Reopen +ExpenseReportRef=Ref. expense report +ValidateAndSubmit=Validate and submit for approval +ValidatedWaitingApproval=Validated (waiting for approval) +NOT_AUTHOR=You are not the author of this expense report. Operation cancelled. +ConfirmRefuseTrip=Are you sure you want to deny this expense report? +ValideTrip=Approve expense report +ConfirmValideTrip=Are you sure you want to approve this expense report? +PaidTrip=Pay an expense report +ConfirmPaidTrip=Are you sure you want to change status of this expense report to "Paid"? +ConfirmCancelTrip=Are you sure you want to cancel this expense report? +BrouillonnerTrip=Move back expense report to status "Draft" +ConfirmBrouillonnerTrip=Are you sure you want to move this expense report to status "Draft"? +SaveTrip=Validate expense report +ConfirmSaveTrip=Are you sure you want to validate this expense report? +NoTripsToExportCSV=No expense report to export for this period. +ExpenseReportPayment=Expense report payment +ExpenseReportsToApprove=Expense reports to approve +ExpenseReportsToPay=Expense reports to pay +ConfirmCloneExpenseReport=Are you sure you want to clone this expense report ? +ExpenseReportsIk=Expense report milles index +ExpenseReportsRules=Expense report rules +ExpenseReportIkDesc=You can modify the calculation of kilometers expense by category and range who they are previously defined. d is the distance in kilometers +ExpenseReportRulesDesc=You can create or update any rules of calculation. This part will be used when user will create a new expense report +expenseReportOffset=Offset +expenseReportCoef=Coefficient +expenseReportTotalForFive=Example with d = 5 +expenseReportRangeFromTo=from %d to %d +expenseReportRangeMoreThan=more than %d +expenseReportCoefUndefined=(value not defined) +expenseReportCatDisabled=Category disabled - see the c_exp_tax_cat dictionary +expenseReportRangeDisabled=Range disabled - see the c_exp_tax_range dictionay +expenseReportPrintExample=offset + (d x coef) = %s +ExpenseReportApplyTo=Apply to +ExpenseReportDomain=Domain to apply +ExpenseReportLimitOn=Limit on +ExpenseReportDateStart=Date start +ExpenseReportDateEnd=Date end +ExpenseReportLimitAmount=Limite amount +ExpenseReportRestrictive=Restrictive +AllExpenseReport=All type of expense report +OnExpense=Expense line +ExpenseReportRuleSave=Expense report rule saved +ExpenseReportRuleErrorOnSave=Error: %s +RangeNum=Range %d +ExpenseReportConstraintViolationError=Constraint violation id [%s]: %s is superior to %s %s +byEX_DAY=by day (limitation to %s) +byEX_MON=by month (limitation to %s) +byEX_YEA=by year (limitation to %s) +byEX_EXP=by line (limitation to %s) +ExpenseReportConstraintViolationWarning=Constraint violation id [%s]: %s is superior to %s %s +nolimitbyEX_DAY=by day (no limitation) +nolimitbyEX_MON=by month (no limitation) +nolimitbyEX_YEA=by year (no limitation) +nolimitbyEX_EXP=by line (no limitation) +CarCategory=Category of car +ExpenseRangeOffset=Offset amount: %s +RangeIk=Mileage range +AttachTheNewLineToTheDocument=Attach the line to an uploaded document diff --git a/htdocs/langs/km_KH/users.lang b/htdocs/langs/km_KH/users.lang new file mode 100644 index 00000000000..41a5ebd0981 --- /dev/null +++ b/htdocs/langs/km_KH/users.lang @@ -0,0 +1,118 @@ +# Dolibarr language file - Source file is en_US - users +HRMArea=HRM area +UserCard=User card +GroupCard=Group card +Permission=Permission +Permissions=Permissions +EditPassword=Edit password +SendNewPassword=Regenerate and send password +SendNewPasswordLink=Send link to reset password +ReinitPassword=Regenerate password +PasswordChangedTo=Password changed to: %s +SubjectNewPassword=Your new password for %s +GroupRights=Group permissions +UserRights=User permissions +UserGUISetup=User Display Setup +DisableUser=Disable +DisableAUser=Disable a user +DeleteUser=Delete +DeleteAUser=Delete a user +EnableAUser=Enable a user +DeleteGroup=Delete +DeleteAGroup=Delete a group +ConfirmDisableUser=Are you sure you want to disable user %s? +ConfirmDeleteUser=Are you sure you want to delete user %s? +ConfirmDeleteGroup=Are you sure you want to delete group %s? +ConfirmEnableUser=Are you sure you want to enable user %s? +ConfirmReinitPassword=Are you sure you want to generate a new password for user %s? +ConfirmSendNewPassword=Are you sure you want to generate and send new password for user %s? +NewUser=New user +CreateUser=Create user +LoginNotDefined=Login is not defined. +NameNotDefined=Name is not defined. +ListOfUsers=List of users +SuperAdministrator=Super Administrator +SuperAdministratorDesc=Global administrator +AdministratorDesc=Administrator +DefaultRights=Default Permissions +DefaultRightsDesc=Define here the default permissions that are automatically granted to a new user (to modify permissions for existing users, go to the user card). +DolibarrUsers=Dolibarr users +LastName=Last name +FirstName=First name +ListOfGroups=List of groups +NewGroup=New group +CreateGroup=Create group +RemoveFromGroup=Remove from group +PasswordChangedAndSentTo=Password changed and sent to %s. +PasswordChangeRequest=Request to change password for %s +PasswordChangeRequestSent=Request to change password for %s sent to %s. +ConfirmPasswordReset=Confirm password reset +MenuUsersAndGroups=Users & Groups +LastGroupsCreated=Latest %s groups created +LastUsersCreated=Latest %s users created +ShowGroup=Show group +ShowUser=Show user +NonAffectedUsers=Non assigned users +UserModified=User modified successfully +PhotoFile=Photo file +ListOfUsersInGroup=List of users in this group +ListOfGroupsForUser=List of groups for this user +LinkToCompanyContact=Link to third party / contact +LinkedToDolibarrMember=Link to member +LinkedToDolibarrUser=Link to Dolibarr user +LinkedToDolibarrThirdParty=Link to Dolibarr third party +CreateDolibarrLogin=Create a user +CreateDolibarrThirdParty=Create a third party +LoginAccountDisableInDolibarr=Account disabled in Dolibarr. +UsePersonalValue=Use personal value +InternalUser=Internal user +ExportDataset_user_1=Users and their properties +DomainUser=Domain user %s +Reactivate=Reactivate +CreateInternalUserDesc=This form allows you to create an internal user in your company/organization. To create an external user (customer, vendor etc. ..), use the button 'Create Dolibarr User' from that third-party's contact card. +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +PermissionInheritedFromAGroup=Permission granted because inherited from one of a user's group. +Inherited=Inherited +UserWillBeInternalUser=Created user will be an internal user (because not linked to a particular third party) +UserWillBeExternalUser=Created user will be an external user (because linked to a particular third party) +IdPhoneCaller=Id phone caller +NewUserCreated=User %s created +NewUserPassword=Password change for %s +NewPasswordValidated=Your new password have been validated and must be used now to login. +EventUserModified=User %s modified +UserDisabled=User %s disabled +UserEnabled=User %s activated +UserDeleted=User %s removed +NewGroupCreated=Group %s created +GroupModified=Group %s modified +GroupDeleted=Group %s removed +ConfirmCreateContact=Are you sure you want to create a Dolibarr account for this contact? +ConfirmCreateLogin=Are you sure you want to create a Dolibarr account for this member? +ConfirmCreateThirdParty=Are you sure you want to create a third party for this member? +LoginToCreate=Login to create +NameToCreate=Name of third party to create +YourRole=Your roles +YourQuotaOfUsersIsReached=Your quota of active users is reached ! +NbOfUsers=No. of users +NbOfPermissions=No. of permissions +DontDowngradeSuperAdmin=Only a superadmin can downgrade a superadmin +HierarchicalResponsible=Supervisor +HierarchicView=Hierarchical view +UseTypeFieldToChange=Use field Type to change +OpenIDURL=OpenID URL +LoginUsingOpenID=Use OpenID to login +WeeklyHours=Hours worked (per week) +ExpectedWorkedHours=Expected worked hours per week +ColorUser=Color of the user +DisabledInMonoUserMode=Disabled in maintenance mode +UserAccountancyCode=User accounting code +UserLogoff=User logout +UserLogged=User logged +DateEmployment=Employment Start Date +DateEmploymentEnd=Employment End Date +CantDisableYourself=You can't disable your own user record +ForceUserExpenseValidator=Force expense report validator +ForceUserHolidayValidator=Force leave request validator +ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/km_KH/website.lang b/htdocs/langs/km_KH/website.lang new file mode 100644 index 00000000000..bce2a09fb03 --- /dev/null +++ b/htdocs/langs/km_KH/website.lang @@ -0,0 +1,130 @@ +# Dolibarr language file - Source file is en_US - website +Shortname=Code +WebsiteSetupDesc=Create here the websites you wish to use. Then go into menu Websites to edit them. +DeleteWebsite=Delete website +ConfirmDeleteWebsite=Are you sure you want to delete this web site? All its pages and content will also be removed. The files uploaded (like into the medias directory, the ECM module, ...) will remain. +WEBSITE_TYPE_CONTAINER=Type of page/container +WEBSITE_PAGE_EXAMPLE=Web page to use as example +WEBSITE_PAGENAME=Page name/alias +WEBSITE_ALIASALT=Alternative page names/aliases +WEBSITE_ALIASALTDesc=Use here list of other name/aliases so the page can also be accessed using this other names/aliases (for example the old name after renaming the alias to keep backlink on old link/name working). Syntax is:
    alternativename1, alternativename2, ... +WEBSITE_CSS_URL=URL of external CSS file +WEBSITE_CSS_INLINE=CSS file content (common to all pages) +WEBSITE_JS_INLINE=Javascript file content (common to all pages) +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. +MediaFiles=Media library +EditCss=Edit website properties +EditMenu=Edit menu +EditMedias=Edit medias +EditPageMeta=Edit page/container properties +EditInLine=Edit inline +AddWebsite=Add website +Webpage=Web page/container +AddPage=Add page/container +HomePage=Home Page +PageContainer=Page/container +PreviewOfSiteNotYetAvailable=Preview of your website %s not yet available. You must first 'Import a full website template' or just 'Add a page/container'. +RequestedPageHasNoContentYet=Requested page with id %s has no content yet, or cache file .tpl.php was removed. Edit content of the page to solve this. +SiteDeleted=Web site '%s' deleted +PageContent=Page/Contenair +PageDeleted=Page/Contenair '%s' of website %s deleted +PageAdded=Page/Contenair '%s' added +ViewSiteInNewTab=View site in new tab +ViewPageInNewTab=View page in new tab +SetAsHomePage=Set as Home page +RealURL=Real URL +ViewWebsiteInProduction=View web site using home URLs +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: +YouCanAlsoTestWithPHPS=Use with PHP embedded server
    On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running
    php -S 0.0.0.0:8080 -t %s +YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org +CheckVirtualHostPerms=Check also that virtual host has permission %s on files into
    %s +ReadPerm=Read +WritePerm=Write +TestDeployOnWeb=Test/deploy on web +PreviewSiteServedByWebServer=Preview %s in a new tab.

    The %s will be served by an external web server (like Apache, Nginx, IIS). You must install and setup this server before to point to directory:
    %s
    URL served by external server:
    %s +PreviewSiteServedByDolibarr=Preview %s in a new tab.

    The %s will be served by Dolibarr server so it does not need any extra web server (like Apache, Nginx, IIS) to be installed.
    The inconvenient is that URL of pages are not user friendly and start with path of your Dolibarr.
    URL served by Dolibarr:
    %s

    To use your own external web server to serve this web site, create a virtual host on your web server that point on directory
    %s
    then enter the name of this virtual server and click on the other preview button. +VirtualHostUrlNotDefined=URL of the virtual host served by external web server not defined +NoPageYet=No pages yet +YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template +SyntaxHelp=Help on specific syntax tips +YouCanEditHtmlSourceckeditor=You can edit HTML source code using the "Source" button in editor. +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +ClonePage=Clone page/container +CloneSite=Clone site +SiteAdded=Website added +ConfirmClonePage=Please enter code/alias of new page and if it is a translation of the cloned page. +PageIsANewTranslation=The new page is a translation of the current page ? +LanguageMustNotBeSameThanClonedPage=You clone a page as a translation. The language of the new page must be different than language of source page. +ParentPageId=Parent page ID +WebsiteId=Website ID +CreateByFetchingExternalPage=Create page/container by fetching page from external URL... +OrEnterPageInfoManually=Or create page from scratch or from a page template... +FetchAndCreate=Fetch and Create +ExportSite=Export website +ImportSite=Import website template +IDOfPage=Id of page +Banner=Banner +BlogPost=Blog post +WebsiteAccount=Website account +WebsiteAccounts=Website accounts +AddWebsiteAccount=Create web site account +BackToListForThirdParty=Back to list for the third-party +DisableSiteFirst=Disable website first +MyContainerTitle=My web site title +AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) +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 +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. +OnlyEditionOfSourceForGrabbedContent=Only edition of HTML source is possible when content was grabbed from an external site +GrabImagesInto=Grab also images found into css and page. +ImagesShouldBeSavedInto=Images should be saved into directory +WebsiteRootOfImages=Root directory for website images +SubdirOfPage=Sub-directory dedicated to page +AliasPageAlreadyExists=Alias page %s already exists +CorporateHomePage=Corporate Home page +EmptyPage=Empty page +ExternalURLMustStartWithHttp=External URL must start with http:// or https:// +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 +ThisPageHasTranslationPages=This page/container has translation +NoWebSiteCreateOneFirst=No website has been created yet. Create one first. +GoTo=Go to +DynamicPHPCodeContainsAForbiddenInstruction=You add dynamic PHP code that contains the PHP instruction '%s' that is forbidden by default as dynamic content (see hidden options WEBSITE_PHP_ALLOW_xxx to increase list of allowed commands). +NotAllowedToAddDynamicContent=You don't have permission to add or edit PHP dynamic content in websites. Ask permission or just keep code into php tags unmodified. +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 +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. +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. +Dynamiccontent=Sample of a page with dynamic content +ImportSite=Import website template +EditInLineOnOff=Mode 'Edit inline' is %s +ShowSubContainersOnOff=Mode to execute 'dynamic content' is %s +GlobalCSSorJS=Global CSS/JS/Header file of web site +BackToHomePage=Back to home page... +TranslationLinks=Translation links +YouTryToAccessToAFileThatIsNotAWebsitePage=You try to access to a page that is not a website page +UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 characters +MainLanguage=Main language +OtherLanguages=Other languages +UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/km_KH/withdrawals.lang b/htdocs/langs/km_KH/withdrawals.lang new file mode 100644 index 00000000000..b1d6e30e329 --- /dev/null +++ b/htdocs/langs/km_KH/withdrawals.lang @@ -0,0 +1,119 @@ +# Dolibarr language file - Source file is en_US - withdrawals +CustomersStandingOrdersArea=Direct debit payment orders area +SuppliersStandingOrdersArea=Direct credit payment orders area +StandingOrdersPayment=Direct debit payment orders +StandingOrderPayment=Direct debit payment order +NewStandingOrder=New direct debit order +StandingOrderToProcess=To process +WithdrawalsReceipts=Direct debit orders +WithdrawalReceipt=Direct debit order +LastWithdrawalReceipts=Latest %s direct debit files +WithdrawalsLines=Direct debit order lines +RequestStandingOrderToTreat=Request for direct debit payment order to process +RequestStandingOrderTreated=Request for direct debit payment order processed +NotPossibleForThisStatusOfWithdrawReceiptORLine=Not yet possible. Withdraw status must be set to 'credited' before declaring reject on specific lines. +NbOfInvoiceToWithdraw=No. of qualified invoice with waiting direct debit order +NbOfInvoiceToWithdrawWithInfo=No. of customer invoice with direct debit payment orders having defined bank account information +InvoiceWaitingWithdraw=Invoice waiting for direct debit +AmountToWithdraw=Amount to withdraw +WithdrawsRefused=Direct debit refused +NoInvoiceToWithdraw=No customer invoice with open 'Direct debit requests' is waiting. Go on tab '%s' on invoice card to make a request. +ResponsibleUser=User Responsible +WithdrawalsSetup=Direct debit payment setup +WithdrawStatistics=Direct debit payment statistics +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 +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=Classify credited +ClassCreditedConfirm=Are you sure you want to classify this withdrawal receipt as credited on your bank account? +TransData=Transmission date +TransMetod=Transmission method +Send=Send +Lines=Lines +StandingOrderReject=Issue a rejection +WithdrawalRefused=Withdrawal refused +WithdrawalRefusedConfirm=Are you sure you want to enter a withdrawal rejection for society +RefusedData=Date of rejection +RefusedReason=Reason for rejection +RefusedInvoicing=Billing the rejection +NoInvoiceRefused=Do not charge the rejection +InvoiceRefused=Invoice refused (Charge the rejection to customer) +StatusDebitCredit=Status debit/credit +StatusWaiting=Waiting +StatusTrans=Sent +StatusCredited=Credited +StatusRefused=Refused +StatusMotif0=Unspecified +StatusMotif1=Insufficient funds +StatusMotif2=Request contested +StatusMotif3=No direct debit payment order +StatusMotif4=Sales Order +StatusMotif5=RIB unusable +StatusMotif6=Account without balance +StatusMotif7=Judicial Decision +StatusMotif8=Other reason +CreateForSepaFRST=Create direct debit file (SEPA FRST) +CreateForSepaRCUR=Create direct debit file (SEPA RCUR) +CreateAll=Create direct debit file (all) +CreateGuichet=Only office +CreateBanque=Only bank +OrderWaiting=Waiting for treatment +NotifyTransmision=Withdrawal Transmission +NotifyCredit=Withdrawal Credit +NumeroNationalEmetter=National Transmitter Number +WithBankUsingRIB=For bank accounts using RIB +WithBankUsingBANBIC=For bank accounts using IBAN/BIC/SWIFT +BankToReceiveWithdraw=Receiving Bank Account +CreditDate=Credit on +WithdrawalFileNotCapable=Unable to generate withdrawal receipt file for your country %s (Your country is not supported) +ShowWithdraw=Show Direct Debit Order +IfInvoiceNeedOnWithdrawPaymentWontBeClosed=However, if invoice has at least one direct debit payment order not yet processed, it won't be set as paid to allow prior withdrawal 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 payment order is closed, payment on invoice will be automatically recorded, and invoice closed if remainder to pay is null. +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 +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) +WithdrawRequestAmount=Amount of Direct debit request: +WithdrawRequestErrorNilAmount=Unable to create direct debit request for empty amount. +SepaMandate=SEPA Direct Debit Mandate +SepaMandateShort=SEPA Mandate +PleaseReturnMandate=Please return this mandate form by email to %s or by mail to +SEPALegalText=By signing this mandate form, you authorize (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. +CreditorIdentifier=Creditor Identifier +CreditorName=Creditor Name +SEPAFillForm=(B) Please complete all the fields marked * +SEPAFormYourName=Your name +SEPAFormYourBAN=Your Bank Account Name (IBAN) +SEPAFormYourBIC=Your Bank Identifier Code (BIC) +SEPAFrstOrRecur=Type of payment +ModeRECUR=Recurring payment +ModeFRST=One-off payment +PleaseCheckOne=Please check one only +DirectDebitOrderCreated=Direct debit order %s created +AmountRequested=Amount requested +SEPARCUR=SEPA CUR +SEPAFRST=SEPA FRST +ExecutionDate=Execution date +CreateForSepa=Create direct debit file +ICS=Creditor Identifier CI +END_TO_END="EndToEndId" SEPA XML tag - Unique id assigned per transaction +USTRD="Unstructured" SEPA XML tag +ADDDAYS=Add days to Execution Date + +### Notifications +InfoCreditSubject=Payment of direct debit payment order %s by the bank +InfoCreditMessage=The direct debit payment order %s has been paid by the bank
    Data of payment: %s +InfoTransSubject=Transmission of direct debit payment order %s to bank +InfoTransMessage=The direct debit payment order %s has been sent to bank by %s %s.

    +InfoTransData=Amount: %s
    Method: %s
    Date: %s +InfoRejectSubject=Direct debit payment order refused +InfoRejectMessage=Hello,

    the direct debit payment order of invoice %s related to the company %s, with an amount of %s has been refused by the bank.

    --
    %s +ModeWarning=Option for real mode was not set, we stop after this simulation diff --git a/htdocs/langs/km_KH/workflow.lang b/htdocs/langs/km_KH/workflow.lang new file mode 100644 index 00000000000..be126eef0f4 --- /dev/null +++ b/htdocs/langs/km_KH/workflow.lang @@ -0,0 +1,20 @@ +# Dolibarr language file - Source file is en_US - workflow +WorkflowSetup=Workflow module setup +WorkflowDesc=This module provides some automatic actions. By default, the workflow is open (you can do things in the order you want) but here you can activate some automatic actions. +ThereIsNoWorkflowToModify=There is no workflow modifications available with the activated modules. +# Autocreate +descWORKFLOW_PROPAL_AUTOCREATE_ORDER=Automatically create a sales order after a commercial proposal is signed (the new order will have same amount as the proposal) +descWORKFLOW_PROPAL_AUTOCREATE_INVOICE=Automatically create a customer invoice after a commercial proposal is signed (the new invoice will have same amount as the proposal) +descWORKFLOW_CONTRACT_AUTOCREATE_INVOICE=Automatically create a customer invoice after a contract is validated +descWORKFLOW_ORDER_AUTOCREATE_INVOICE=Automatically create a customer invoice after a sales order is closed (the new invoice will have same amount as the order) +# Autoclassify customer proposal or order +descWORKFLOW_ORDER_CLASSIFY_BILLED_PROPAL=Classify linked source proposal as billed when sales order is set to billed (and if the amount of the order is the same as the total amount of the signed linked proposal) +descWORKFLOW_INVOICE_CLASSIFY_BILLED_PROPAL=Classify linked source proposal as billed when customer invoice is validated (and if the amount of the invoice is the same as the total amount of the signed linked proposal) +descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_ORDER=Classify linked source sales order as billed when customer invoice is validated (and if the amount of the invoice is the same as the total amount of the linked order) +descWORKFLOW_INVOICE_CLASSIFY_BILLED_ORDER=Classify linked source sales order as billed when customer invoice is set to paid (and if the amount of the invoice is the same as the total amount of the linked order) +descWORKFLOW_ORDER_CLASSIFY_SHIPPED_SHIPPING=Classify linked source sales order as shipped when a shipment is validated (and if the quantity shipped by all shipments is the same as in the order to update) +# Autoclassify purchase order +descWORKFLOW_ORDER_CLASSIFY_BILLED_SUPPLIER_PROPOSAL=Classify linked source vendor proposal as billed when vendor invoice is validated (and if the amount of the invoice is the same as the total amount of the linked proposal) +descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Classify linked source purchase order as billed when vendor invoice is validated (and if the amount of the invoice is the same as the total amount of the linked order) +AutomaticCreation=Automatic creation +AutomaticClassification=Automatic classification diff --git a/htdocs/langs/km_KH/zapier.lang b/htdocs/langs/km_KH/zapier.lang new file mode 100644 index 00000000000..6d6eda71313 --- /dev/null +++ b/htdocs/langs/km_KH/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr module + +# +# Admin page +# +ZapierForDolibarrSetup = Setup of Zapier for Dolibarr diff --git a/htdocs/langs/kn_IN/accountancy.lang b/htdocs/langs/kn_IN/accountancy.lang index 1f9382137ea..b8ce37a0956 100644 --- a/htdocs/langs/kn_IN/accountancy.lang +++ b/htdocs/langs/kn_IN/accountancy.lang @@ -121,6 +121,7 @@ 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 +TotalForAccount=Total for accounting account Ventilate=Bind @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Accounting account to register donations ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (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 products sold in EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported 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_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (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_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unkno ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error PaymentsNotLinkedToProduct=Payment not linked to any product / service +OpeningBalance=Opening balance ShowOpeningBalance=Show opening balance HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Group of account PcgtypeDesc=Group 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. +Reconcilable=Reconcilable + TotalVente=Total turnover before tax TotalMarge=Total sales margin @@ -307,11 +317,13 @@ 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Chart of accounts Id ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC OptionModeProductSellExport=Mode sales exported in other countries OptionModeProductBuy=Mode purchases +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries 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. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=Remove accounting code from lines that not exists into charts of account CleanHistory=Reset all bindings for selected year PredefinedGroups=Predefined groups @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Account removed from group SaleLocal=Local sale SaleExport=Export sale SaleEEC=Sale in EEC +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=Range of accounting account diff --git a/htdocs/langs/kn_IN/admin.lang b/htdocs/langs/kn_IN/admin.lang index a58d8721b90..b2c9e35f1e6 100644 --- a/htdocs/langs/kn_IN/admin.lang +++ b/htdocs/langs/kn_IN/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Web server user/group NoSessionFound=Your PHP configuration seems to not allow listing of active sessions. The directory used to save sessions (%s) may be protected (for example by OS permissions or by PHP directive open_basedir). DBStoringCharset=Database charset to store data DBSortingCharset=Database charset to sort data +HostCharset=Host charset ClientCharset=Client charset ClientSortingCharset=Client collation WarningModuleNotActive=Module %s must be enabled @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the NoMaxSizeByPHPLimit=Note: No limit is set in your PHP configuration MaxSizeForUploadedFiles=Maximum size for uploaded files (0 to disallow any upload) UseCaptchaCode=Use graphical code (CAPTCHA) on login page -AntiVirusCommand= Full path to antivirus command -AntiVirusCommandExample= Example for ClamWin: c:\\Progra~1\\ClamWin\\bin\\clamscan.exe
    Example for ClamAv: /usr/bin/clamscan +AntiVirusCommand=Full path to antivirus command +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= More parameters on command line -AntiVirusParamExample= Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=Accounting module setup UserSetup=User management setup MultiCurrencySetup=Multi-currency setup @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Feature disabled in demo FeatureAvailableOnlyOnStable=Feature only available on official stable versions BoxesDesc=Widgets are components showing some information that you can add to personalize some pages. You can choose between showing the widget or not by selecting target page and clicking 'Activate', or by clicking the trashcan to disable it. OnlyActiveElementsAreShown=Only elements from enabled modules are shown. -ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button (at end of module line) to enable/disable a module/application. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. ModulesMarketPlaceDesc=You can find more modules to download on external websites on the Internet... ModulesDeployDesc=If permissions on your file system allow it, you can use this tool to deploy an external module. The module will then be visible on the tab %s. ModulesMarketPlaces=Find external app/modules @@ -212,6 +213,7 @@ CompatibleUpTo=Compatible with version %s NotCompatible=This module does not seem compatible with your Dolibarr %s (Min %s - Max %s). CompatibleAfterUpdate=This module requires an update to your Dolibarr %s (Min %s - Max %s). SeeInMarkerPlace=See in Market place +SeeSetupOfModule=See setup of module %s Updated=Updated Nouveauté=Novelty AchatTelechargement=Buy / Download @@ -221,6 +223,7 @@ DoliPartnersDesc=List of companies providing custom-developed modules or feature WebSiteDesc=External websites for more add-on (non-core) modules... DevelopYourModuleDesc=Some solutions to develop your own module... URL=URL +RelativeURL=Relative URL BoxesAvailable=Widgets available BoxesActivated=Widgets activated ActivateOn=Activate on @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Checkboxes ExtrafieldCheckBoxFromList=Checkboxes from table ExtrafieldLink=Link to an object ComputedFormula=Computed field -ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Store computed field ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! ExtrafieldParamHelpPassword=Leaving this field blank means this value will be stored without encryption (field must be only hidden with star on screen).
    Set 'auto' to use the default encryption rule to save password into database (then value read will be the hash only, no way to retrieve original value) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Keep empty to use default value DefaultLink=Default link SetAsDefault=Set as default ValueOverwrittenByUserSetup=Warning, this value may be overwritten by user specific setup (each user can set his own clicktodial url) -ExternalModule=External module - Installed into directory %s +ExternalModule=External module +InstalledInto=Installed into directory %s BarcodeInitForthird-parties=Mass barcode init for third-parties BarcodeInitForProductsOrServices=Mass barcode init or reset for products or services CurrentlyNWithoutBarCode=Currently, you have %s record on %s %s without barcode defined. @@ -947,7 +951,7 @@ DictionaryCanton=States/Provinces DictionaryRegion=Regions DictionaryCountry=Countries DictionaryCurrency=Currencies -DictionaryCivility=Title of civility +DictionaryCivility=Honorific titles DictionaryActions=Types of agenda events DictionarySocialContributions=Types of social or fiscal taxes DictionaryVAT=VAT Rates or Sales Tax Rates @@ -988,6 +992,7 @@ VATIsNotUsedDesc=By default the proposed Sales tax is 0 which can be used for ca VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=Rate LocalTax1IsNotUsed=Do not use second tax LocalTax1IsUsedDesc=Use a second type of tax (other than first one) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices LocalTax2IsNotUsedDescES=By default the proposed IRPF is 0. End of rule. LocalTax2IsUsedExampleES=In Spain, freelancers and independent professionals who provide services and companies who have chosen the tax system of modules. LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=Reports on local taxes CalcLocaltax1=Sales - Purchases CalcLocaltax1Desc=Local Taxes reports are calculated with the difference between localtaxes sales and localtaxes purchases @@ -1018,6 +1026,7 @@ CalcLocaltax2=Purchases CalcLocaltax2Desc=Local Taxes reports are the total of localtaxes purchases CalcLocaltax3=Sales CalcLocaltax3Desc=Local Taxes reports are the total of localtaxes sales +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=Label used by default if no translation can be found for code LabelOnDocuments=Label on documents LabelOrTranslationKey=Label or translation key @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Expense report to approve Delays_MAIN_DELAY_HOLIDAYS=Leave requests 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. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. SetupDescription5=Other Setup menu entries manage optional parameters. LogEvents=Security audit events Audit=Audit @@ -1128,7 +1137,7 @@ LogEventDesc=Enable logging for specific security events. Administrators the log AreaForAdminOnly=Setup parameters can be set by administrator users only. SystemInfoDesc=System information is miscellaneous technical information you get in read only mode and visible for administrators only. SystemAreaForAdminOnly=This area is available to administrator users only. Dolibarr user permissions cannot change this restriction. -CompanyFundationDesc=Edit the information of the company/entity. Click on "%s" button at the bottom of the page. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. AccountantFileNumber=Accountant code DisplayDesc=Parameters affecting the look and behaviour of Dolibarr can be modified here. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Rules to generate and validate passwords DisableForgetPasswordLinkOnLogonPage=Do not show the "Password Forgotten" link on the Login page UsersSetup=Users module setup UserMailRequired=Email required to create a new user +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### HRMSetup=HRM module setup ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Invoice documents models BillsPDFModulesAccordindToInvoiceType=Invoice documents models according to invoice type PaymentsPDFModules=Payment documents models ForceInvoiceDate=Force invoice date to validation date -SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined for invoice +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice SuggestPaymentByRIBOnAccount=Suggest payment by withdrawal on account SuggestPaymentByChequeToAddress=Suggest payment by check to FreeLegalTextOnInvoices=Free text on invoices @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Vendor payments setup PropalSetup=Commercial proposals module setup ProposalsNumberingModules=Commercial proposal numbering models ProposalsPDFModules=Commercial proposal documents models -SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined for proposal +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal FreeLegalTextOnProposal=Free text on commercial proposals WatermarkOnDraftProposal=Watermark on draft commercial proposals (none if empty) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal @@ -1322,6 +1334,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 ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=Sales Orders management setup OrdersNumberingModules=Orders numbering models OrdersModelModule=Order documents models @@ -1720,7 +1733,7 @@ MultiCompanySetup=Multi-company module setup ##### Suppliers ##### SuppliersSetup=Vendor module setup SuppliersCommandModel=Complete template of Purchase Order -SuppliersCommandModelMuscadet=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) SuppliersInvoiceModel=Complete template of Vendor Invoice SuppliersInvoiceNumberingModel=Vendor invoices numbering models IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Hide images in Top menu LeftMenuBackgroundColor=Background color for Left menu BackgroundTableTitleColor=Background color for Table title line BackgroundTableTitleTextColor=Text color for Table title line +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Background color for odd table lines BackgroundTableLineEvenColor=Background color for even table lines MinimumNoticePeriod=Minimum notice period (Your leave request must be done before this delay) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Dolibarr Reference not found in Message ID FormatZip=Zip MainMenuCode=Menu entry code (mainmenu) ECMAutoTree=Show automatic ECM tree -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. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Opening hours OpeningHoursDesc=Enter here the regular opening hours of your company. ResourceSetup=Configuration of Resource module @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramatical ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export +ImportSetup=Setup of module Import InstanceUniqueID=Unique ID of the instance SmallerThan=Smaller than LargerThan=Larger than @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled EmailTemplate=Template for email EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/kn_IN/bills.lang b/htdocs/langs/kn_IN/bills.lang index fa99a0c04f2..43b5460d816 100644 --- a/htdocs/langs/kn_IN/bills.lang +++ b/htdocs/langs/kn_IN/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Vendors invoices SupplierBill=Vendor invoice SupplierBills=suppliers invoices Payment=Payment -PaymentBack=Payment back -CustomerInvoicePaymentBack=Payment back +PaymentBack=Refund +CustomerInvoicePaymentBack=Refund Payments=Payments PaymentsBack=Refunds paymentInInvoiceCurrency=in invoices currency PaidBack=Paid back DeletePayment=Delete payment ConfirmDeletePayment=Are you sure you want to delete this payment? -ConfirmConvertToReduc=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. -ConfirmConvertToReducSupplier=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. SupplierPayments=Vendor payments ReceivedPayments=Received payments @@ -209,17 +209,13 @@ NumberOfBillsByMonth=No. of invoices per month AmountOfBills=Amount of invoices AmountOfBillsHT=Amount of invoices (net of tax) AmountOfBillsByMonthHT=Amount of invoices by month (net of tax) -ShowSocialContribution=Show social/fiscal tax -ShowBill=Show invoice -ShowInvoice=Show invoice -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 +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=To pay on %s toPayOn=to pay on %s RetainedWarranty=Retained Warranty @@ -230,7 +226,6 @@ 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 AlreadyPaidNoCreditNotesNoDeposits=Already paid (without credit notes and down payments) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Generated from template invoice %s WarningInvoiceDateInFuture=Warning, the invoice date is higher than current date WarningInvoiceDateTooFarInFuture=Warning, the invoice date is too far from current date ViewAvailableGlobalDiscounts=View available discounts +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Status PaymentConditionShortRECEP=Due Upon Receipt @@ -509,7 +505,7 @@ ToMakePayment=Pay ToMakePaymentBack=Pay back ListOfYourUnpaidInvoices=List of unpaid invoices NoteListOfYourUnpaidInvoices=Note: This list contains only invoices for third parties you are linked to as a sale representative. -RevenueStamp=Revenue stamp +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party YouMustCreateStandardInvoiceFirstDesc=You have to create a standard invoice first and convert it to "template" to create a new template invoice @@ -575,3 +571,4 @@ AutoFillDateTo=Set end date for service line with next invoice date AutoFillDateToShort=Set end date MaxNumberOfGenerationReached=Max number of gen. reached BILL_DELETEInDolibarr=Invoice deleted +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/kn_IN/blockedlog.lang b/htdocs/langs/kn_IN/blockedlog.lang index cff8f7d657b..5afae6e9e53 100644 --- a/htdocs/langs/kn_IN/blockedlog.lang +++ b/htdocs/langs/kn_IN/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Unalterable logs ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) DownloadBlockChain=Download fingerprints -KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this re after it was recorded, or has erased the previous archived record (check that line with previous # exists). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. AddedByAuthority=Stored into remote authority diff --git a/htdocs/langs/kn_IN/cashdesk.lang b/htdocs/langs/kn_IN/cashdesk.lang index 62081b8ef1a..0b220155882 100644 --- a/htdocs/langs/kn_IN/cashdesk.lang +++ b/htdocs/langs/kn_IN/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Add this article RestartSelling=Go back on sell SellFinished=Sale complete PrintTicket=Print ticket +SendTicket=Send ticket NoProductFound=No article found ProductFound=product found NoArticle=No article @@ -48,6 +49,7 @@ Footer=Footer AmountAtEndOfPeriod=Amount at end of period (day, month or year) TheoricalAmount=Theorical amount RealAmount=Real amount +CashFence=Cash fence CashFenceDone=Cash fence done for the period NbOfInvoices=Nb of invoices Paymentnumpad=Type of Pad to enter payment @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS needs product categories to work OrderNotes=Order Notes CashDeskBankAccountFor=Default account to use for payments in NoPaimementModesDefined=No paiment mode defined in TakePOS configuration -TicketVatGrouped=Group VAT by rate in tickets -AutoPrintTickets=Automatically print tickets +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? @@ -87,7 +90,19 @@ HeadBar=Head Bar SortProductField=Field for sorting products Browser=Browser BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/kn_IN/companies.lang b/htdocs/langs/kn_IN/companies.lang index 0affa46d9a7..a327eeb7562 100644 --- a/htdocs/langs/kn_IN/companies.lang +++ b/htdocs/langs/kn_IN/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted="%s" ಸಂಸ್ಥೆಯನ್ನು ಡೇಟಾಬೇಸ್- ListOfContacts=ಸಂಪರ್ಕಗಳ / ವಿಳಾಸಗಳ ಪಟ್ಟಿ ListOfContactsAddresses=ಸಂಪರ್ಕಗಳ / ವಿಳಾಸಗಳ ಪಟ್ಟಿ ListOfThirdParties=List of Third Parties -ShowCompany=Show Third Party ShowContact=ಸಂಪರ್ಕವನ್ನು ತೋರಿಸಿ ContactsAllShort=ಎಲ್ಲಾ (ಸೋಸಿಲ್ಲದ) ContactType=ಸಂಪರ್ಕದ ಮಾದರಿ @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=First name of sales representative SaleRepresentativeLastname=Last name of sales representative ErrorThirdpartiesMerge=There was an error when deleting the third parties. Please check the log. Changes have been reverted. NewCustomerSupplierCodeProposed=Customer or Vendor code already used, a new code is suggested +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Payment Type - Customer PaymentTermsCustomer=Payment Terms - Customer diff --git a/htdocs/langs/kn_IN/compta.lang b/htdocs/langs/kn_IN/compta.lang index 1de030a1905..6cd046c5607 100644 --- a/htdocs/langs/kn_IN/compta.lang +++ b/htdocs/langs/kn_IN/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=See %sanalysis of payments%s for a calculation on act SeeReportInDueDebtMode=See %sanalysis of invoices%s for a calculation based on known recorded invoices even if they are not yet accounted in Ledger. SeeReportInBookkeepingMode=See %sBookeeping report%s for a calculation on Bookkeeping Ledger table RulesAmountWithTaxIncluded=- Amounts shown are with all taxes included -RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the validation date of invoices and VAT and on the due date for expenses. For salaries defined with Salary module, the value date of payment is used. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- It includes the real payments made on invoices, expenses, VAT and salaries.
    - It is based on the payment dates of the invoices, expenses, VAT and salaries. The donation date for donation. -RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the validation date of these invoices.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    RulesCATotalSaleJournal=It includes all credit lines from the Sale journal. RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Turnover invoiced by sale tax rate TurnoverCollectedbyVatrate=Turnover collected by sale tax rate PurchasebyVatrate=Purchase by sale tax rate LabelToShow=Short label +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/kn_IN/donations.lang b/htdocs/langs/kn_IN/donations.lang index 5edc8d62033..de4bdf68f03 100644 --- a/htdocs/langs/kn_IN/donations.lang +++ b/htdocs/langs/kn_IN/donations.lang @@ -7,7 +7,6 @@ AddDonation=Create a donation NewDonation=New donation DeleteADonation=Delete a donation ConfirmDeleteADonation=Are you sure you want to delete this donation? -ShowDonation=Show donation PublicDonation=Public donation DonationsArea=Donations area DonationStatusPromiseNotValidated=Draft promise @@ -17,6 +16,7 @@ DonationStatusPromiseNotValidatedShort=Draft DonationStatusPromiseValidatedShort=Validated DonationStatusPaidShort=Received DonationTitle=Donation receipt +DonationDate=Donation date DonationDatePayment=Payment date ValidPromess=Validate promise DonationReceipt=Donation receipt diff --git a/htdocs/langs/kn_IN/errors.lang b/htdocs/langs/kn_IN/errors.lang index 3ffc686e62f..7c67aeca8b5 100644 --- a/htdocs/langs/kn_IN/errors.lang +++ b/htdocs/langs/kn_IN/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=File not received completely by server. ErrorNoTmpDir=Temporary directy %s does not exists. ErrorUploadBlockedByAddon=Upload blocked by a PHP/Apache plugin. ErrorFileSizeTooLarge=File size is too large. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Size too long for int type (%s digits maximum) ErrorSizeTooLongForVarcharType=Size too long for string type (%s chars maximum) ErrorNoValueForSelectType=Please fill value for select list @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # 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/kn_IN/install.lang b/htdocs/langs/kn_IN/install.lang index bf9c08c4ba7..f67dff57184 100644 --- a/htdocs/langs/kn_IN/install.lang +++ b/htdocs/langs/kn_IN/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=This PHP supports Curl. PHPSupportCalendar=This PHP supports calendars extensions. PHPSupportUTF8=This PHP supports UTF8 functions. PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=This PHP supports %s functions. PHPMemoryOK=Your PHP max session memory is set to %s. This should be enough. 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. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=Your PHP installation does not support Curl. ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. 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. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. ErrorDirDoesNotExists=Directory %s does not exist. ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=The application tried to self-upgrade, but the in 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. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/kn_IN/interventions.lang b/htdocs/langs/kn_IN/interventions.lang index e7667ef6946..e5936f8246e 100644 --- a/htdocs/langs/kn_IN/interventions.lang +++ b/htdocs/langs/kn_IN/interventions.lang @@ -41,9 +41,7 @@ InterventionsArea=Interventions area DraftFichinter=Draft interventions LastModifiedInterventions=Latest %s modified interventions FichinterToProcess=Interventions to process -##### Types de contacts ##### TypeContact_fichinter_external_CUSTOMER=Following-up customer contact -# Modele numérotation PrintProductsOnFichinter=Print also lines of type "product" (not only services) on intervention card PrintProductsOnFichinterDetails=interventions generated from orders UseServicesDurationOnFichinter=Use services duration for interventions generated from orders @@ -53,14 +51,16 @@ InterventionStatistics=Statistics of interventions NbOfinterventions=No. of intervention cards NumberOfInterventionsByMonth=No. of intervention cards by month (date of validation) AmountOfInteventionNotIncludedByDefault=Amount of intervention is not included by default into profit (in most cases, timesheets are used to count time spent). Add option PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT to 1 into home-setup-other to include them. -##### Exports ##### InterId=Intervention id InterRef=Intervention ref. InterDateCreation=Date creation intervention InterDuration=Duration intervention InterStatus=Status intervention InterNote=Note intervention +InterLine=Line of intervention InterLineId=Line id intervention InterLineDate=Line date intervention InterLineDuration=Line duration intervention InterLineDesc=Line description intervention +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/kn_IN/link.lang b/htdocs/langs/kn_IN/link.lang index fdcf07aeff4..1ffcd41a18b 100644 --- a/htdocs/langs/kn_IN/link.lang +++ b/htdocs/langs/kn_IN/link.lang @@ -8,3 +8,4 @@ LinkRemoved=The link %s has been removed ErrorFailedToDeleteLink= Failed to remove link '%s' ErrorFailedToUpdateLink= Failed to update link '%s' URLToLink=URL to link +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/kn_IN/mails.lang b/htdocs/langs/kn_IN/mails.lang index 8b92cef3103..7b3bfd3852a 100644 --- a/htdocs/langs/kn_IN/mails.lang +++ b/htdocs/langs/kn_IN/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=No contact/address with a category found NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found OutGoingEmailSetup=Outgoing email setup InGoingEmailSetup=Incoming email setup -OutGoingEmailSetupForEmailing=Outgoing email setup (for mass emailing) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Default outgoing email setup Information=Information ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/kn_IN/main.lang b/htdocs/langs/kn_IN/main.lang index ebb3f3e0ccc..1bc3ff31efb 100644 --- a/htdocs/langs/kn_IN/main.lang +++ b/htdocs/langs/kn_IN/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Save and stay SaveAndNew=Save and new TestConnection=Test connection ToClone=Clone +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Choose data you want to clone: NoCloneOptionsSpecified=No data to clone defined. Of=of @@ -829,6 +830,8 @@ Gender=Gender Genderman=Man Genderwoman=Woman ViewList=List view +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Mandatory Hello=Hello GoodBye=GoodBye @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Select your graph options to build a graph Measures=Measures XAxis=X-Axis YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/kn_IN/modulebuilder.lang b/htdocs/langs/kn_IN/modulebuilder.lang index 00a8c0f9d32..135ac1ae9ec 100644 --- a/htdocs/langs/kn_IN/modulebuilder.lang +++ b/htdocs/langs/kn_IN/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=List of dictionaries entries ListOfPermissionsDefined=List of defined permissions SeeExamples=See examples here EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) -VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update). Using a negative value means field is not shown by default on list but can be selected for viewing). It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty DisplayOnPdf=Display on PDF IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) diff --git a/htdocs/langs/kn_IN/multicurrency.lang b/htdocs/langs/kn_IN/multicurrency.lang new file mode 100644 index 00000000000..bfcbd11fb7c --- /dev/null +++ b/htdocs/langs/kn_IN/multicurrency.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Multi currency +ErrorAddRateFail=Error in added rate +ErrorAddCurrencyFail=Error in added currency +ErrorDeleteCurrencyFail=Error delete fail +multicurrency_syncronize_error=Synchronization error: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Use the date of the document to find the currency rate, instead of using the latest known rate +multicurrency_useOriginTx=When an object is created from another, keep the original rate from the source object (otherwise use the latest known rate) +CurrencyLayerAccount=CurrencyLayer API +CurrencyLayerAccount_help_to_synchronize=You must create an account on website %s to use this functionality.
    Get your API key.
    If you use a free account, you can't change the source currency (USD by default).
    If your main currency is not USD, the application will automatically recalculate it.

    You are limited to 1000 synchronizations per month. +multicurrency_appId=API key +multicurrency_appCurrencySource=Source currency +multicurrency_alternateCurrencySource=Alternate source currency +CurrenciesUsed=Currencies used +CurrenciesUsed_help_to_add=Add the different currencies and rates you need to use on your proposals, orders etc. +rate=rate +MulticurrencyReceived=Received, original currency +MulticurrencyRemainderToTake=Remaining amount, original currency +MulticurrencyPaymentAmount=Payment amount, original currency +AmountToOthercurrency=Amount To (in currency of receiving account) +CurrencyRateSyncSucceed=Currency rate synchronization done successfuly +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Use the currency of the document for online payments diff --git a/htdocs/langs/kn_IN/other.lang b/htdocs/langs/kn_IN/other.lang index 90f8adbf270..4f4d283f203 100644 --- a/htdocs/langs/kn_IN/other.lang +++ b/htdocs/langs/kn_IN/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Sales order validated Notify_ORDER_SENTBYMAIL=Sales order sent by mail Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=URL of page WEBSITE_TITLE=ಶೀರ್ಷಿಕೆ WEBSITE_DESCRIPTION=Description WEBSITE_IMAGE=Image -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Keywords LinesToImport=Lines to import diff --git a/htdocs/langs/kn_IN/products.lang b/htdocs/langs/kn_IN/products.lang index c5321165f68..cea4640f10b 100644 --- a/htdocs/langs/kn_IN/products.lang +++ b/htdocs/langs/kn_IN/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL MassBarcodeInit=Mass barcode init MassBarcodeInitDesc=This page can be used to initialize a barcode on objects that does not have barcode defined. Check before that setup of module barcode is complete. ProductAccountancyBuyCode=Accounting code (purchase) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Accounting code (sale) ProductAccountancySellIntraCode=Accounting code (sale intra-Community) ProductAccountancySellExportCode=Accounting code (sale export) @@ -165,7 +167,7 @@ SuppliersPrices=Vendor prices SuppliersPricesOfProductsOrServices=Vendor prices (of products or services) CustomCode=Customs / Commodity / HS code CountryOrigin=Origin country -Nature=Nature of produt (material/finished) +Nature=Nature of product (material/finished) ShortLabel=Short label Unit=Unit p=u. diff --git a/htdocs/langs/kn_IN/projects.lang b/htdocs/langs/kn_IN/projects.lang index 94e440f9ab9..bb42bff3c87 100644 --- a/htdocs/langs/kn_IN/projects.lang +++ b/htdocs/langs/kn_IN/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=which I'm linked to project Time=Time ListOfTasks=List of tasks GoToListOfTimeConsumed=Go to list of time consumed -GoToListOfTasks=Show as list -GoToGanttView=show as Gantt GanttView=Gantt View ListProposalsAssociatedProject=List of the commercial proposals related to the project ListOrdersAssociatedProject=List of sales orders related to the project @@ -188,7 +186,7 @@ PlannedWorkload=Planned workload PlannedWorkloadShort=Workload ProjectReferers=Related items ProjectMustBeValidatedFirst=Project must be validated first -FirstAddRessourceToAllocateTime=Assign a user resource to task to allocate time +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=Input per day InputPerWeek=Input per week InputPerMonth=Input per month @@ -240,6 +238,7 @@ LatestModifiedProjects=Latest %s modified projects OtherFilteredTasks=Other filtered tasks NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=Allow user comments on tasks AllowCommentOnProject=Allow user comments on projects @@ -256,7 +255,7 @@ ServiceToUseOnLines=Service to use on lines InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. ProjectFollowOpportunity=Follow opportunity -ProjectFollowTasks=Follow tasks +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Usage: Opportunity UsageTasks=Usage: Tasks @@ -265,3 +264,4 @@ InvoiceToUse=Draft invoice to use NewInvoice=New invoice OneLinePerTask=One line per task OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/kn_IN/receiptprinter.lang b/htdocs/langs/kn_IN/receiptprinter.lang index 3df49b9fe67..ac21f079a24 100644 --- a/htdocs/langs/kn_IN/receiptprinter.lang +++ b/htdocs/langs/kn_IN/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Dummy Printer CONNECTOR_NETWORK_PRINT=Network Printer CONNECTOR_FILE_PRINT=Local Printer CONNECTOR_WINDOWS_PRINT=Local Windows Printer +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Fake Printer for test, does nothing CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Default Profile PROFILE_SIMPLE=Simple Profile PROFILE_EPOSTEP=Epos Tep Profile @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Invoice month in letters DOL_VALUE_MONTH=Invoice month DOL_VALUE_DAY=Invoice day DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Invoice ref +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=ರಾಜಧಾನಿ +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/kn_IN/stripe.lang b/htdocs/langs/kn_IN/stripe.lang index eb77441d2cd..844762040af 100644 --- a/htdocs/langs/kn_IN/stripe.lang +++ b/htdocs/langs/kn_IN/stripe.lang @@ -32,6 +32,7 @@ VendorName=Name of vendor CSSUrlForPaymentForm=CSS style sheet url for payment form NewStripePaymentReceived=New Stripe payment received NewStripePaymentFailed=New Stripe payment tried but failed +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Secret test key STRIPE_TEST_PUBLISHABLE_KEY=Publishable test key STRIPE_TEST_WEBHOOK_KEY=Webhook test key @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mo 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... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authenticatin rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/kn_IN/users.lang b/htdocs/langs/kn_IN/users.lang index bb9041b3ef0..535d745855e 100644 --- a/htdocs/langs/kn_IN/users.lang +++ b/htdocs/langs/kn_IN/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Users and their properties DomainUser=Domain user %s Reactivate=Reactivate CreateInternalUserDesc=This form allows you to create an internal user in your company/organization. To create an external user (customer, vendor etc. ..), use the button 'Create Dolibarr User' from that third-party's contact card. -InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other.

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=Permission granted because inherited from one of a user's group. Inherited=Inherited UserWillBeInternalUser=Created user will be an internal user (because not linked to a particular third party) @@ -110,3 +110,8 @@ UserLogged=User logged DateEmployment=Employment Start Date DateEmploymentEnd=Employment End Date CantDisableYourself=You can't disable your own user record +ForceUserExpenseValidator=Force expense report validator +ForceUserHolidayValidator=Force leave request validator +ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/kn_IN/website.lang b/htdocs/langs/kn_IN/website.lang index 9e5c4ba3ff8..bce2a09fb03 100644 --- a/htdocs/langs/kn_IN/website.lang +++ b/htdocs/langs/kn_IN/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=View page in new tab SetAsHomePage=Set as Home page RealURL=Real URL ViewWebsiteInProduction=View web site using home URLs -SetHereVirtualHost=Use with Apache/NGinx/...
    If you can create, on your web server (Apache, Nginx, ...), a dedicated Virtual Host with PHP enabled and a Root directory on
    %s
    then set the name of the virtual host you have created in the properties of web site, so the preview can be done also using this dedicated web server access instead of the internal Dolibarr server. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS=Use with PHP embedded server
    On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running
    php -S 0.0.0.0:8080 -t %s YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org CheckVirtualHostPerms=Check also that virtual host has permission %s on files into
    %s @@ -56,7 +57,7 @@ NoPageYet=No pages yet YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template SyntaxHelp=Help on specific syntax tips YouCanEditHtmlSourceckeditor=You can edit HTML source code using the "Source" button in editor. -YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Clone page/container CloneSite=Clone site SiteAdded=Website added @@ -76,7 +77,7 @@ BlogPost=Blog post WebsiteAccount=Website account WebsiteAccounts=Website accounts AddWebsiteAccount=Create web site account -BackToListOfThirdParty=Back to list for Third Party +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Disable website first MyContainerTitle=My web site title AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Sorry, this website is currently off line. Please 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 -OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that edits of HTML source will be possible when page content has been initialized by grabbing it from an external page ("Online" editor will NOT be available) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Only edition of HTML source is possible when content was grabbed from an external site GrabImagesInto=Grab also images found into css and page. ImagesShouldBeSavedInto=Images should be saved into directory @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 ch MainLanguage=Main language OtherLanguages=Other languages UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/kn_IN/zapier.lang b/htdocs/langs/kn_IN/zapier.lang new file mode 100644 index 00000000000..6d6eda71313 --- /dev/null +++ b/htdocs/langs/kn_IN/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr module + +# +# Admin page +# +ZapierForDolibarrSetup = Setup of Zapier for Dolibarr diff --git a/htdocs/langs/ko_KR/accountancy.lang b/htdocs/langs/ko_KR/accountancy.lang index b094e0fa6e8..3cb63bca795 100644 --- a/htdocs/langs/ko_KR/accountancy.lang +++ b/htdocs/langs/ko_KR/accountancy.lang @@ -121,6 +121,7 @@ InvoiceLinesDone=묶음 처리된 청구서 항목 ExpenseReportLines=Lines of expense reports to bind ExpenseReportLinesDone=Bound lines of expense reports IntoAccount=회계계좌로 연결 +TotalForAccount=Total for accounting account Ventilate=묶음 처리 @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Accounting account to register donations ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (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 products sold in EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported 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_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (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_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unkno ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error PaymentsNotLinkedToProduct=Payment not linked to any product / service +OpeningBalance=Opening balance ShowOpeningBalance=Show opening balance HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Group of account PcgtypeDesc=Group 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. +Reconcilable=Reconcilable + TotalVente=Total turnover before tax TotalMarge=Total sales margin @@ -307,11 +317,13 @@ 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Chart of accounts Id ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC OptionModeProductSellExport=Mode sales exported in other countries OptionModeProductBuy=Mode purchases +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries 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. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=Remove accounting code from lines that not exists into charts of account CleanHistory=Reset all bindings for selected year PredefinedGroups=Predefined groups @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Account removed from group SaleLocal=Local sale SaleExport=Export sale SaleEEC=Sale in EEC +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=Range of accounting account diff --git a/htdocs/langs/ko_KR/admin.lang b/htdocs/langs/ko_KR/admin.lang index 1e621b02c71..cb4c843759a 100644 --- a/htdocs/langs/ko_KR/admin.lang +++ b/htdocs/langs/ko_KR/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Web server user/group NoSessionFound=Your PHP configuration seems to not allow listing of active sessions. The directory used to save sessions (%s) may be protected (for example by OS permissions or by PHP directive open_basedir). DBStoringCharset=Database charset to store data DBSortingCharset=Database charset to sort data +HostCharset=Host charset ClientCharset=Client charset ClientSortingCharset=Client collation WarningModuleNotActive=Module %s must be enabled @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the NoMaxSizeByPHPLimit=PHP 설정에서 한도가 설정되어 있지 않습니다. MaxSizeForUploadedFiles=Maximum size for uploaded files (0 to disallow any upload) UseCaptchaCode=Use graphical code (CAPTCHA) on login page -AntiVirusCommand= Full path to antivirus command -AntiVirusCommandExample= Example for ClamWin: c:\\Progra~1\\ClamWin\\bin\\clamscan.exe
    Example for ClamAv: /usr/bin/clamscan +AntiVirusCommand=Full path to antivirus command +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= More parameters on command line -AntiVirusParamExample= Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=Accounting module setup UserSetup=User management setup MultiCurrencySetup=Multi-currency setup @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Feature disabled in demo FeatureAvailableOnlyOnStable=Feature only available on official stable versions BoxesDesc=Widgets are components showing some information that you can add to personalize some pages. You can choose between showing the widget or not by selecting target page and clicking 'Activate', or by clicking the trashcan to disable it. OnlyActiveElementsAreShown=Only elements from enabled modules are shown. -ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button (at end of module line) to enable/disable a module/application. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. ModulesMarketPlaceDesc=You can find more modules to download on external websites on the Internet... ModulesDeployDesc=If permissions on your file system allow it, you can use this tool to deploy an external module. The module will then be visible on the tab %s. ModulesMarketPlaces=Find external app/modules @@ -212,6 +213,7 @@ CompatibleUpTo=Compatible with version %s NotCompatible=This module does not seem compatible with your Dolibarr %s (Min %s - Max %s). CompatibleAfterUpdate=This module requires an update to your Dolibarr %s (Min %s - Max %s). SeeInMarkerPlace=See in Market place +SeeSetupOfModule=See setup of module %s Updated=Updated Nouveauté=Novelty AchatTelechargement=Buy / Download @@ -221,6 +223,7 @@ DoliPartnersDesc=List of companies providing custom-developed modules or feature WebSiteDesc=External websites for more add-on (non-core) modules... DevelopYourModuleDesc=Some solutions to develop your own module... URL=URL +RelativeURL=Relative URL BoxesAvailable=Widgets available BoxesActivated=Widgets activated ActivateOn=Activate on @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Checkboxes ExtrafieldCheckBoxFromList=Checkboxes from table ExtrafieldLink=Link to an object ComputedFormula=Computed field -ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Store computed field ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! ExtrafieldParamHelpPassword=Leaving this field blank means this value will be stored without encryption (field must be only hidden with star on screen).
    Set 'auto' to use the default encryption rule to save password into database (then value read will be the hash only, no way to retrieve original value) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Keep empty to use default value DefaultLink=Default link SetAsDefault=Set as default ValueOverwrittenByUserSetup=Warning, this value may be overwritten by user specific setup (each user can set his own clicktodial url) -ExternalModule=External module - Installed into directory %s +ExternalModule=External module +InstalledInto=Installed into directory %s BarcodeInitForthird-parties=Mass barcode init for third-parties BarcodeInitForProductsOrServices=Mass barcode init or reset for products or services CurrentlyNWithoutBarCode=Currently, you have %s record on %s %s without barcode defined. @@ -947,7 +951,7 @@ DictionaryCanton=States/Provinces DictionaryRegion=Regions DictionaryCountry=Countries DictionaryCurrency=Currencies -DictionaryCivility=Title of civility +DictionaryCivility=Honorific titles DictionaryActions=Types of agenda events DictionarySocialContributions=Types of social or fiscal taxes DictionaryVAT=VAT Rates or Sales Tax Rates @@ -988,6 +992,7 @@ VATIsNotUsedDesc=By default the proposed Sales tax is 0 which can be used for ca VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=율 LocalTax1IsNotUsed=Do not use second tax LocalTax1IsUsedDesc=Use a second type of tax (other than first one) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices LocalTax2IsNotUsedDescES=By default the proposed IRPF is 0. End of rule. LocalTax2IsUsedExampleES=In Spain, freelancers and independent professionals who provide services and companies who have chosen the tax system of modules. LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=Reports on local taxes CalcLocaltax1=Sales - Purchases CalcLocaltax1Desc=Local Taxes reports are calculated with the difference between localtaxes sales and localtaxes purchases @@ -1018,6 +1026,7 @@ CalcLocaltax2=Purchases CalcLocaltax2Desc=Local Taxes reports are the total of localtaxes purchases CalcLocaltax3=Sales CalcLocaltax3Desc=Local Taxes reports are the total of localtaxes sales +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=Label used by default if no translation can be found for code LabelOnDocuments=Label on documents LabelOrTranslationKey=Label or translation key @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Expense report to approve Delays_MAIN_DELAY_HOLIDAYS=Leave requests 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. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. SetupDescription5=Other Setup menu entries manage optional parameters. LogEvents=Security audit events Audit=Audit @@ -1128,7 +1137,7 @@ LogEventDesc=Enable logging for specific security events. Administrators the log AreaForAdminOnly=Setup parameters can be set by administrator users only. SystemInfoDesc=System information is miscellaneous technical information you get in read only mode and visible for administrators only. SystemAreaForAdminOnly=This area is available to administrator users only. Dolibarr user permissions cannot change this restriction. -CompanyFundationDesc=Edit the information of the company/entity. Click on "%s" button at the bottom of the page. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. AccountantFileNumber=Accountant code DisplayDesc=Parameters affecting the look and behaviour of Dolibarr can be modified here. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Rules to generate and validate passwords DisableForgetPasswordLinkOnLogonPage=Do not show the "Password Forgotten" link on the Login page UsersSetup=Users module setup UserMailRequired=Email required to create a new user +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### HRMSetup=HRM module setup ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Invoice documents models BillsPDFModulesAccordindToInvoiceType=Invoice documents models according to invoice type PaymentsPDFModules=Payment documents models ForceInvoiceDate=Force invoice date to validation date -SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined for invoice +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice SuggestPaymentByRIBOnAccount=Suggest payment by withdrawal on account SuggestPaymentByChequeToAddress=Suggest payment by check to FreeLegalTextOnInvoices=Free text on invoices @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Vendor payments setup PropalSetup=Commercial proposals module setup ProposalsNumberingModules=Commercial proposal numbering models ProposalsPDFModules=Commercial proposal documents models -SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined for proposal +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal FreeLegalTextOnProposal=Free text on commercial proposals WatermarkOnDraftProposal=Watermark on draft commercial proposals (none if empty) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal @@ -1322,6 +1334,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 ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=Sales Orders management setup OrdersNumberingModules=Orders numbering models OrdersModelModule=Order documents models @@ -1720,7 +1733,7 @@ MultiCompanySetup=Multi-company module setup ##### Suppliers ##### SuppliersSetup=Vendor module setup SuppliersCommandModel=Complete template of Purchase Order -SuppliersCommandModelMuscadet=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) SuppliersInvoiceModel=Complete template of Vendor Invoice SuppliersInvoiceNumberingModel=Vendor invoices numbering models IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Hide images in Top menu LeftMenuBackgroundColor=Background color for Left menu BackgroundTableTitleColor=Background color for Table title line BackgroundTableTitleTextColor=Text color for Table title line +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Background color for odd table lines BackgroundTableLineEvenColor=Background color for even table lines MinimumNoticePeriod=Minimum notice period (Your leave request must be done before this delay) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Dolibarr Reference not found in Message ID FormatZip=Zip MainMenuCode=Menu entry code (mainmenu) ECMAutoTree=Show automatic ECM tree -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. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Opening hours OpeningHoursDesc=Enter here the regular opening hours of your company. ResourceSetup=Configuration of Resource module @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramatical ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export +ImportSetup=Setup of module Import InstanceUniqueID=Unique ID of the instance SmallerThan=Smaller than LargerThan=Larger than @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled EmailTemplate=Template for email EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/ko_KR/bills.lang b/htdocs/langs/ko_KR/bills.lang index 1389aa363a0..8c4825d0a10 100644 --- a/htdocs/langs/ko_KR/bills.lang +++ b/htdocs/langs/ko_KR/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Vendors invoices SupplierBill=Vendor invoice SupplierBills=suppliers invoices Payment=Payment -PaymentBack=Payment back -CustomerInvoicePaymentBack=Payment back +PaymentBack=Refund +CustomerInvoicePaymentBack=Refund Payments=Payments PaymentsBack=Refunds paymentInInvoiceCurrency=in invoices currency PaidBack=Paid back DeletePayment=Delete payment ConfirmDeletePayment=Are you sure you want to delete this payment? -ConfirmConvertToReduc=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. -ConfirmConvertToReducSupplier=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. SupplierPayments=Vendor payments ReceivedPayments=Received payments @@ -209,17 +209,13 @@ NumberOfBillsByMonth=No. of invoices per month AmountOfBills=Amount of invoices AmountOfBillsHT=Amount of invoices (net of tax) AmountOfBillsByMonthHT=Amount of invoices by month (net of tax) -ShowSocialContribution=Show social/fiscal tax -ShowBill=Show invoice -ShowInvoice=Show invoice -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 +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=To pay on %s toPayOn=to pay on %s RetainedWarranty=Retained Warranty @@ -230,7 +226,6 @@ 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 AlreadyPaidNoCreditNotesNoDeposits=Already paid (without credit notes and down payments) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Generated from template invoice %s WarningInvoiceDateInFuture=Warning, the invoice date is higher than current date WarningInvoiceDateTooFarInFuture=Warning, the invoice date is too far from current date ViewAvailableGlobalDiscounts=View available discounts +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=상태 PaymentConditionShortRECEP=Due Upon Receipt @@ -509,7 +505,7 @@ ToMakePayment=Pay ToMakePaymentBack=Pay back ListOfYourUnpaidInvoices=List of unpaid invoices NoteListOfYourUnpaidInvoices=Note: This list contains only invoices for third parties you are linked to as a sale representative. -RevenueStamp=Revenue stamp +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party YouMustCreateStandardInvoiceFirstDesc=You have to create a standard invoice first and convert it to "template" to create a new template invoice @@ -575,3 +571,4 @@ AutoFillDateTo=Set end date for service line with next invoice date AutoFillDateToShort=Set end date MaxNumberOfGenerationReached=Max number of gen. reached BILL_DELETEInDolibarr=Invoice deleted +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/ko_KR/blockedlog.lang b/htdocs/langs/ko_KR/blockedlog.lang index cff8f7d657b..5afae6e9e53 100644 --- a/htdocs/langs/ko_KR/blockedlog.lang +++ b/htdocs/langs/ko_KR/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Unalterable logs ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) DownloadBlockChain=Download fingerprints -KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this re after it was recorded, or has erased the previous archived record (check that line with previous # exists). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. AddedByAuthority=Stored into remote authority diff --git a/htdocs/langs/ko_KR/cashdesk.lang b/htdocs/langs/ko_KR/cashdesk.lang index 511362e9858..503a4395ecf 100644 --- a/htdocs/langs/ko_KR/cashdesk.lang +++ b/htdocs/langs/ko_KR/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Add this article RestartSelling=Go back on sell SellFinished=Sale complete PrintTicket=Print ticket +SendTicket=Send ticket NoProductFound=No article found ProductFound=product found NoArticle=No article @@ -48,6 +49,7 @@ Footer=Footer AmountAtEndOfPeriod=Amount at end of period (day, month or year) TheoricalAmount=Theorical amount RealAmount=Real amount +CashFence=Cash fence CashFenceDone=Cash fence done for the period NbOfInvoices=Nb of invoices Paymentnumpad=Type of Pad to enter payment @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS needs product categories to work OrderNotes=Order Notes CashDeskBankAccountFor=Default account to use for payments in NoPaimementModesDefined=No paiment mode defined in TakePOS configuration -TicketVatGrouped=Group VAT by rate in tickets -AutoPrintTickets=Automatically print tickets +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? @@ -87,7 +90,19 @@ HeadBar=Head Bar SortProductField=Field for sorting products Browser=브라우저 BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/ko_KR/companies.lang b/htdocs/langs/ko_KR/companies.lang index 5cb68afba05..85c206ffc06 100644 --- a/htdocs/langs/ko_KR/companies.lang +++ b/htdocs/langs/ko_KR/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted=회사 "%s"이 (가) 데이터베이스에서 삭제되었습니 ListOfContacts=연락처 / 주소 목록 ListOfContactsAddresses=List of contacts/addresses ListOfThirdParties=List of Third Parties -ShowCompany=Show Third Party ShowContact=연락처 표시 ContactsAllShort=모두 (필터 없음) ContactType=연락처 유형 @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=영업 담당자의 이름 SaleRepresentativeLastname=영업 대표자 성 ErrorThirdpartiesMerge=There was an error when deleting the third parties. Please check the log. Changes have been reverted. NewCustomerSupplierCodeProposed=Customer or Vendor code already used, a new code is suggested +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Payment Type - Customer PaymentTermsCustomer=Payment Terms - Customer diff --git a/htdocs/langs/ko_KR/compta.lang b/htdocs/langs/ko_KR/compta.lang index 9e8160c0704..025d45b7e1e 100644 --- a/htdocs/langs/ko_KR/compta.lang +++ b/htdocs/langs/ko_KR/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=See %sanalysis of payments%s for a calculation on act SeeReportInDueDebtMode=See %sanalysis of invoices%s for a calculation based on known recorded invoices even if they are not yet accounted in Ledger. SeeReportInBookkeepingMode=See %sBookeeping report%s for a calculation on Bookkeeping Ledger table RulesAmountWithTaxIncluded=- Amounts shown are with all taxes included -RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the validation date of invoices and VAT and on the due date for expenses. For salaries defined with Salary module, the value date of payment is used. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- It includes the real payments made on invoices, expenses, VAT and salaries.
    - It is based on the payment dates of the invoices, expenses, VAT and salaries. The donation date for donation. -RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the validation date of these invoices.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    RulesCATotalSaleJournal=It includes all credit lines from the Sale journal. RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Turnover invoiced by sale tax rate TurnoverCollectedbyVatrate=Turnover collected by sale tax rate PurchasebyVatrate=Purchase by sale tax rate LabelToShow=Short label +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/ko_KR/donations.lang b/htdocs/langs/ko_KR/donations.lang index e141edd12e3..598df2a957e 100644 --- a/htdocs/langs/ko_KR/donations.lang +++ b/htdocs/langs/ko_KR/donations.lang @@ -7,7 +7,6 @@ AddDonation=Create a donation NewDonation=New donation DeleteADonation=Delete a donation ConfirmDeleteADonation=Are you sure you want to delete this donation? -ShowDonation=Show donation PublicDonation=Public donation DonationsArea=Donations area DonationStatusPromiseNotValidated=Draft promise @@ -17,6 +16,7 @@ DonationStatusPromiseNotValidatedShort=초안 DonationStatusPromiseValidatedShort=확인 됨 DonationStatusPaidShort=받음 DonationTitle=Donation receipt +DonationDate=Donation date DonationDatePayment=Payment date ValidPromess=Validate promise DonationReceipt=Donation receipt diff --git a/htdocs/langs/ko_KR/errors.lang b/htdocs/langs/ko_KR/errors.lang index 3ffc686e62f..7c67aeca8b5 100644 --- a/htdocs/langs/ko_KR/errors.lang +++ b/htdocs/langs/ko_KR/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=File not received completely by server. ErrorNoTmpDir=Temporary directy %s does not exists. ErrorUploadBlockedByAddon=Upload blocked by a PHP/Apache plugin. ErrorFileSizeTooLarge=File size is too large. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Size too long for int type (%s digits maximum) ErrorSizeTooLongForVarcharType=Size too long for string type (%s chars maximum) ErrorNoValueForSelectType=Please fill value for select list @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # 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/ko_KR/install.lang b/htdocs/langs/ko_KR/install.lang index 20cdefbe16d..34634c92c71 100644 --- a/htdocs/langs/ko_KR/install.lang +++ b/htdocs/langs/ko_KR/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=This PHP supports Curl. PHPSupportCalendar=This PHP supports calendars extensions. PHPSupportUTF8=This PHP supports UTF8 functions. PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=This PHP supports %s functions. PHPMemoryOK=Your PHP max session memory is set to %s. This should be enough. 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. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=Your PHP installation does not support Curl. ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. 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. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. ErrorDirDoesNotExists=Directory %s does not exist. ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=The application tried to self-upgrade, but the in 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. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/ko_KR/interventions.lang b/htdocs/langs/ko_KR/interventions.lang index 7c917866a97..3be481c3ddf 100644 --- a/htdocs/langs/ko_KR/interventions.lang +++ b/htdocs/langs/ko_KR/interventions.lang @@ -41,9 +41,7 @@ InterventionsArea=Interventions area DraftFichinter=Draft interventions LastModifiedInterventions=최신 %s 개입 된 개입 FichinterToProcess=Interventions to process -##### Types de contacts ##### TypeContact_fichinter_external_CUSTOMER=Following-up customer contact -# Modele numérotation PrintProductsOnFichinter=Print also lines of type "product" (not only services) on intervention card PrintProductsOnFichinterDetails=interventions generated from orders UseServicesDurationOnFichinter=Use services duration for interventions generated from orders @@ -53,14 +51,16 @@ InterventionStatistics=Statistics of interventions NbOfinterventions=No. of intervention cards NumberOfInterventionsByMonth=No. of intervention cards by month (date of validation) AmountOfInteventionNotIncludedByDefault=Amount of intervention is not included by default into profit (in most cases, timesheets are used to count time spent). Add option PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT to 1 into home-setup-other to include them. -##### Exports ##### InterId=Intervention id InterRef=Intervention ref. InterDateCreation=Date creation intervention InterDuration=Duration intervention InterStatus=Status intervention InterNote=Note intervention +InterLine=Line of intervention InterLineId=Line id intervention InterLineDate=Line date intervention InterLineDuration=Line duration intervention InterLineDesc=Line description intervention +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/ko_KR/link.lang b/htdocs/langs/ko_KR/link.lang index fdcf07aeff4..1ffcd41a18b 100644 --- a/htdocs/langs/ko_KR/link.lang +++ b/htdocs/langs/ko_KR/link.lang @@ -8,3 +8,4 @@ LinkRemoved=The link %s has been removed ErrorFailedToDeleteLink= Failed to remove link '%s' ErrorFailedToUpdateLink= Failed to update link '%s' URLToLink=URL to link +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/ko_KR/mails.lang b/htdocs/langs/ko_KR/mails.lang index afe98d7ed4b..fb9f072a3a9 100644 --- a/htdocs/langs/ko_KR/mails.lang +++ b/htdocs/langs/ko_KR/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=No contact/address with a category found NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found OutGoingEmailSetup=Outgoing email setup InGoingEmailSetup=Incoming email setup -OutGoingEmailSetupForEmailing=Outgoing email setup (for mass emailing) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Default outgoing email setup Information=Information ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/ko_KR/main.lang b/htdocs/langs/ko_KR/main.lang index 986c5c916be..76bd10ca370 100644 --- a/htdocs/langs/ko_KR/main.lang +++ b/htdocs/langs/ko_KR/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Save and stay SaveAndNew=Save and new TestConnection=연결 테스트 ToClone=클론 +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Choose data you want to clone: NoCloneOptionsSpecified=복제 할 데이터가 없습니다. Of=의 @@ -829,6 +830,8 @@ Gender=성별 Genderman=남자 Genderwoman=여자 ViewList=목록 보기 +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=필수 Hello=안녕하세요 GoodBye=GoodBye @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Select your graph options to build a graph Measures=Measures XAxis=X-Axis YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/ko_KR/modulebuilder.lang b/htdocs/langs/ko_KR/modulebuilder.lang index 00a8c0f9d32..135ac1ae9ec 100644 --- a/htdocs/langs/ko_KR/modulebuilder.lang +++ b/htdocs/langs/ko_KR/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=List of dictionaries entries ListOfPermissionsDefined=List of defined permissions SeeExamples=See examples here EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) -VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update). Using a negative value means field is not shown by default on list but can be selected for viewing). It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty DisplayOnPdf=Display on PDF IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) diff --git a/htdocs/langs/ko_KR/other.lang b/htdocs/langs/ko_KR/other.lang index 24e4152e9ad..d934e284774 100644 --- a/htdocs/langs/ko_KR/other.lang +++ b/htdocs/langs/ko_KR/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Sales order validated Notify_ORDER_SENTBYMAIL=Sales order sent by mail Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=URL of page WEBSITE_TITLE=표제 WEBSITE_DESCRIPTION=기술 WEBSITE_IMAGE=Image -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Keywords LinesToImport=Lines to import diff --git a/htdocs/langs/ko_KR/products.lang b/htdocs/langs/ko_KR/products.lang index ad79ba5ae2b..e7309818946 100644 --- a/htdocs/langs/ko_KR/products.lang +++ b/htdocs/langs/ko_KR/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL MassBarcodeInit=Mass barcode init MassBarcodeInitDesc=This page can be used to initialize a barcode on objects that does not have barcode defined. Check before that setup of module barcode is complete. ProductAccountancyBuyCode=Accounting code (purchase) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Accounting code (sale) ProductAccountancySellIntraCode=Accounting code (sale intra-Community) ProductAccountancySellExportCode=Accounting code (sale export) @@ -165,7 +167,7 @@ SuppliersPrices=Vendor prices SuppliersPricesOfProductsOrServices=Vendor prices (of products or services) CustomCode=Customs / Commodity / HS code CountryOrigin=Origin country -Nature=Nature of produt (material/finished) +Nature=Nature of product (material/finished) ShortLabel=Short label Unit=Unit p=u. diff --git a/htdocs/langs/ko_KR/projects.lang b/htdocs/langs/ko_KR/projects.lang index e5105fe3c87..91a09d7867d 100644 --- a/htdocs/langs/ko_KR/projects.lang +++ b/htdocs/langs/ko_KR/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=which I'm linked to project Time=Time ListOfTasks=List of tasks GoToListOfTimeConsumed=Go to list of time consumed -GoToListOfTasks=Show as list -GoToGanttView=show as Gantt GanttView=Gantt View ListProposalsAssociatedProject=List of the commercial proposals related to the project ListOrdersAssociatedProject=List of sales orders related to the project @@ -188,7 +186,7 @@ PlannedWorkload=Planned workload PlannedWorkloadShort=Workload ProjectReferers=관련 항목 ProjectMustBeValidatedFirst=Project must be validated first -FirstAddRessourceToAllocateTime=Assign a user resource to task to allocate time +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=Input per day InputPerWeek=Input per week InputPerMonth=Input per month @@ -240,6 +238,7 @@ LatestModifiedProjects=Latest %s modified projects OtherFilteredTasks=Other filtered tasks NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=Allow user comments on tasks AllowCommentOnProject=Allow user comments on projects @@ -256,7 +255,7 @@ ServiceToUseOnLines=Service to use on lines InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. ProjectFollowOpportunity=Follow opportunity -ProjectFollowTasks=Follow tasks +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Usage: Opportunity UsageTasks=Usage: Tasks @@ -265,3 +264,4 @@ InvoiceToUse=Draft invoice to use NewInvoice=New invoice OneLinePerTask=One line per task OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/ko_KR/receiptprinter.lang b/htdocs/langs/ko_KR/receiptprinter.lang index 3df49b9fe67..49abd29dafe 100644 --- a/htdocs/langs/ko_KR/receiptprinter.lang +++ b/htdocs/langs/ko_KR/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Dummy Printer CONNECTOR_NETWORK_PRINT=Network Printer CONNECTOR_FILE_PRINT=Local Printer CONNECTOR_WINDOWS_PRINT=Local Windows Printer +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Fake Printer for test, does nothing CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Default Profile PROFILE_SIMPLE=Simple Profile PROFILE_EPOSTEP=Epos Tep Profile @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Invoice month in letters DOL_VALUE_MONTH=Invoice month DOL_VALUE_DAY=Invoice day DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Invoice ref +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=자본 +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/ko_KR/stripe.lang b/htdocs/langs/ko_KR/stripe.lang index 6add4873669..5b2b5f98857 100644 --- a/htdocs/langs/ko_KR/stripe.lang +++ b/htdocs/langs/ko_KR/stripe.lang @@ -32,6 +32,7 @@ VendorName=Name of vendor CSSUrlForPaymentForm=CSS style sheet url for payment form NewStripePaymentReceived=New Stripe payment received NewStripePaymentFailed=New Stripe payment tried but failed +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Secret test key STRIPE_TEST_PUBLISHABLE_KEY=Publishable test key STRIPE_TEST_WEBHOOK_KEY=Webhook test key @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mo 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... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authenticatin rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/ko_KR/users.lang b/htdocs/langs/ko_KR/users.lang index f4dcb5f7033..5fdb9913777 100644 --- a/htdocs/langs/ko_KR/users.lang +++ b/htdocs/langs/ko_KR/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Users and their properties DomainUser=Domain user %s Reactivate=Reactivate CreateInternalUserDesc=This form allows you to create an internal user in your company/organization. To create an external user (customer, vendor etc. ..), use the button 'Create Dolibarr User' from that third-party's contact card. -InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other.

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=Permission granted because inherited from one of a user's group. Inherited=Inherited UserWillBeInternalUser=Created user will be an internal user (because not linked to a particular third party) @@ -110,3 +110,8 @@ UserLogged=User logged DateEmployment=Employment Start Date DateEmploymentEnd=Employment End Date CantDisableYourself=You can't disable your own user record +ForceUserExpenseValidator=Force expense report validator +ForceUserHolidayValidator=Force leave request validator +ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/ko_KR/website.lang b/htdocs/langs/ko_KR/website.lang index 25eaff691b1..87518e26e88 100644 --- a/htdocs/langs/ko_KR/website.lang +++ b/htdocs/langs/ko_KR/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=View page in new tab SetAsHomePage=Set as Home page RealURL=Real URL ViewWebsiteInProduction=View web site using home URLs -SetHereVirtualHost=Use with Apache/NGinx/...
    If you can create, on your web server (Apache, Nginx, ...), a dedicated Virtual Host with PHP enabled and a Root directory on
    %s
    then set the name of the virtual host you have created in the properties of web site, so the preview can be done also using this dedicated web server access instead of the internal Dolibarr server. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS=Use with PHP embedded server
    On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running
    php -S 0.0.0.0:8080 -t %s YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org CheckVirtualHostPerms=Check also that virtual host has permission %s on files into
    %s @@ -56,7 +57,7 @@ NoPageYet=No pages yet YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template SyntaxHelp=Help on specific syntax tips YouCanEditHtmlSourceckeditor=You can edit HTML source code using the "Source" button in editor. -YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Clone page/container CloneSite=Clone site SiteAdded=Website added @@ -76,7 +77,7 @@ BlogPost=Blog post WebsiteAccount=Website account WebsiteAccounts=Website accounts AddWebsiteAccount=Create web site account -BackToListOfThirdParty=Back to list for Third Party +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Disable website first MyContainerTitle=My web site title AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Sorry, this website is currently off line. Please 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 -OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that edits of HTML source will be possible when page content has been initialized by grabbing it from an external page ("Online" editor will NOT be available) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Only edition of HTML source is possible when content was grabbed from an external site GrabImagesInto=Grab also images found into css and page. ImagesShouldBeSavedInto=Images should be saved into directory @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 ch MainLanguage=Main language OtherLanguages=Other languages UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/ko_KR/zapier.lang b/htdocs/langs/ko_KR/zapier.lang new file mode 100644 index 00000000000..6d6eda71313 --- /dev/null +++ b/htdocs/langs/ko_KR/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr module + +# +# Admin page +# +ZapierForDolibarrSetup = Setup of Zapier for Dolibarr diff --git a/htdocs/langs/lo_LA/accountancy.lang b/htdocs/langs/lo_LA/accountancy.lang index 4e594724604..6505792d2df 100644 --- a/htdocs/langs/lo_LA/accountancy.lang +++ b/htdocs/langs/lo_LA/accountancy.lang @@ -121,6 +121,7 @@ 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 +TotalForAccount=Total for accounting account Ventilate=Bind @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Accounting account to register donations ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (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 products sold in EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported 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_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (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_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unkno ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error PaymentsNotLinkedToProduct=Payment not linked to any product / service +OpeningBalance=Opening balance ShowOpeningBalance=Show opening balance HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Group of account PcgtypeDesc=Group 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. +Reconcilable=Reconcilable + TotalVente=Total turnover before tax TotalMarge=Total sales margin @@ -307,11 +317,13 @@ 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Chart of accounts Id ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC OptionModeProductSellExport=Mode sales exported in other countries OptionModeProductBuy=Mode purchases +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries 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. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=Remove accounting code from lines that not exists into charts of account CleanHistory=Reset all bindings for selected year PredefinedGroups=Predefined groups @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Account removed from group SaleLocal=Local sale SaleExport=Export sale SaleEEC=Sale in EEC +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=Range of accounting account diff --git a/htdocs/langs/lo_LA/admin.lang b/htdocs/langs/lo_LA/admin.lang index 73c0b921f6f..5de7dc50ed7 100644 --- a/htdocs/langs/lo_LA/admin.lang +++ b/htdocs/langs/lo_LA/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Web server user/group NoSessionFound=Your PHP configuration seems to not allow listing of active sessions. The directory used to save sessions (%s) may be protected (for example by OS permissions or by PHP directive open_basedir). DBStoringCharset=Database charset to store data DBSortingCharset=Database charset to sort data +HostCharset=Host charset ClientCharset=Client charset ClientSortingCharset=Client collation WarningModuleNotActive=Module %s must be enabled @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the NoMaxSizeByPHPLimit=Note: No limit is set in your PHP configuration MaxSizeForUploadedFiles=Maximum size for uploaded files (0 to disallow any upload) UseCaptchaCode=Use graphical code (CAPTCHA) on login page -AntiVirusCommand= Full path to antivirus command -AntiVirusCommandExample= Example for ClamWin: c:\\Progra~1\\ClamWin\\bin\\clamscan.exe
    Example for ClamAv: /usr/bin/clamscan +AntiVirusCommand=Full path to antivirus command +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= More parameters on command line -AntiVirusParamExample= Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=Accounting module setup UserSetup=User management setup MultiCurrencySetup=Multi-currency setup @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Feature disabled in demo FeatureAvailableOnlyOnStable=Feature only available on official stable versions BoxesDesc=Widgets are components showing some information that you can add to personalize some pages. You can choose between showing the widget or not by selecting target page and clicking 'Activate', or by clicking the trashcan to disable it. OnlyActiveElementsAreShown=Only elements from enabled modules are shown. -ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button (at end of module line) to enable/disable a module/application. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. ModulesMarketPlaceDesc=You can find more modules to download on external websites on the Internet... ModulesDeployDesc=If permissions on your file system allow it, you can use this tool to deploy an external module. The module will then be visible on the tab %s. ModulesMarketPlaces=Find external app/modules @@ -212,6 +213,7 @@ CompatibleUpTo=Compatible with version %s NotCompatible=This module does not seem compatible with your Dolibarr %s (Min %s - Max %s). CompatibleAfterUpdate=This module requires an update to your Dolibarr %s (Min %s - Max %s). SeeInMarkerPlace=See in Market place +SeeSetupOfModule=See setup of module %s Updated=Updated Nouveauté=Novelty AchatTelechargement=Buy / Download @@ -221,6 +223,7 @@ DoliPartnersDesc=List of companies providing custom-developed modules or feature WebSiteDesc=External websites for more add-on (non-core) modules... DevelopYourModuleDesc=Some solutions to develop your own module... URL=URL +RelativeURL=Relative URL BoxesAvailable=Widgets available BoxesActivated=Widgets activated ActivateOn=Activate on @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Checkboxes ExtrafieldCheckBoxFromList=Checkboxes from table ExtrafieldLink=Link to an object ComputedFormula=Computed field -ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Store computed field ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! ExtrafieldParamHelpPassword=Leaving this field blank means this value will be stored without encryption (field must be only hidden with star on screen).
    Set 'auto' to use the default encryption rule to save password into database (then value read will be the hash only, no way to retrieve original value) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Keep empty to use default value DefaultLink=Default link SetAsDefault=Set as default ValueOverwrittenByUserSetup=Warning, this value may be overwritten by user specific setup (each user can set his own clicktodial url) -ExternalModule=External module - Installed into directory %s +ExternalModule=External module +InstalledInto=Installed into directory %s BarcodeInitForthird-parties=Mass barcode init for third-parties BarcodeInitForProductsOrServices=Mass barcode init or reset for products or services CurrentlyNWithoutBarCode=Currently, you have %s record on %s %s without barcode defined. @@ -947,7 +951,7 @@ DictionaryCanton=States/Provinces DictionaryRegion=Regions DictionaryCountry=Countries DictionaryCurrency=Currencies -DictionaryCivility=Title of civility +DictionaryCivility=Honorific titles DictionaryActions=Types of agenda events DictionarySocialContributions=Types of social or fiscal taxes DictionaryVAT=VAT Rates or Sales Tax Rates @@ -988,6 +992,7 @@ VATIsNotUsedDesc=By default the proposed Sales tax is 0 which can be used for ca VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=Rate LocalTax1IsNotUsed=Do not use second tax LocalTax1IsUsedDesc=Use a second type of tax (other than first one) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices LocalTax2IsNotUsedDescES=By default the proposed IRPF is 0. End of rule. LocalTax2IsUsedExampleES=In Spain, freelancers and independent professionals who provide services and companies who have chosen the tax system of modules. LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=Reports on local taxes CalcLocaltax1=Sales - Purchases CalcLocaltax1Desc=Local Taxes reports are calculated with the difference between localtaxes sales and localtaxes purchases @@ -1018,6 +1026,7 @@ CalcLocaltax2=Purchases CalcLocaltax2Desc=Local Taxes reports are the total of localtaxes purchases CalcLocaltax3=Sales CalcLocaltax3Desc=Local Taxes reports are the total of localtaxes sales +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=Label used by default if no translation can be found for code LabelOnDocuments=Label on documents LabelOrTranslationKey=Label or translation key @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Expense report to approve Delays_MAIN_DELAY_HOLIDAYS=Leave requests 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. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. SetupDescription5=Other Setup menu entries manage optional parameters. LogEvents=Security audit events Audit=Audit @@ -1128,7 +1137,7 @@ LogEventDesc=Enable logging for specific security events. Administrators the log AreaForAdminOnly=Setup parameters can be set by administrator users only. SystemInfoDesc=System information is miscellaneous technical information you get in read only mode and visible for administrators only. SystemAreaForAdminOnly=This area is available to administrator users only. Dolibarr user permissions cannot change this restriction. -CompanyFundationDesc=Edit the information of the company/entity. Click on "%s" button at the bottom of the page. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. AccountantFileNumber=Accountant code DisplayDesc=Parameters affecting the look and behaviour of Dolibarr can be modified here. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Rules to generate and validate passwords DisableForgetPasswordLinkOnLogonPage=Do not show the "Password Forgotten" link on the Login page UsersSetup=Users module setup UserMailRequired=Email required to create a new user +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### HRMSetup=HRM module setup ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Invoice documents models BillsPDFModulesAccordindToInvoiceType=Invoice documents models according to invoice type PaymentsPDFModules=Payment documents models ForceInvoiceDate=Force invoice date to validation date -SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined for invoice +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice SuggestPaymentByRIBOnAccount=Suggest payment by withdrawal on account SuggestPaymentByChequeToAddress=Suggest payment by check to FreeLegalTextOnInvoices=Free text on invoices @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Vendor payments setup PropalSetup=Commercial proposals module setup ProposalsNumberingModules=Commercial proposal numbering models ProposalsPDFModules=Commercial proposal documents models -SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined for proposal +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal FreeLegalTextOnProposal=Free text on commercial proposals WatermarkOnDraftProposal=Watermark on draft commercial proposals (none if empty) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal @@ -1322,6 +1334,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 ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=Sales Orders management setup OrdersNumberingModules=Orders numbering models OrdersModelModule=Order documents models @@ -1720,7 +1733,7 @@ MultiCompanySetup=Multi-company module setup ##### Suppliers ##### SuppliersSetup=Vendor module setup SuppliersCommandModel=Complete template of Purchase Order -SuppliersCommandModelMuscadet=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) SuppliersInvoiceModel=Complete template of Vendor Invoice SuppliersInvoiceNumberingModel=Vendor invoices numbering models IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Hide images in Top menu LeftMenuBackgroundColor=Background color for Left menu BackgroundTableTitleColor=Background color for Table title line BackgroundTableTitleTextColor=Text color for Table title line +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Background color for odd table lines BackgroundTableLineEvenColor=Background color for even table lines MinimumNoticePeriod=Minimum notice period (Your leave request must be done before this delay) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Dolibarr Reference not found in Message ID FormatZip=Zip MainMenuCode=Menu entry code (mainmenu) ECMAutoTree=Show automatic ECM tree -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. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Opening hours OpeningHoursDesc=Enter here the regular opening hours of your company. ResourceSetup=Configuration of Resource module @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramatical ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export +ImportSetup=Setup of module Import InstanceUniqueID=Unique ID of the instance SmallerThan=Smaller than LargerThan=Larger than @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled EmailTemplate=Template for email EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/lo_LA/bills.lang b/htdocs/langs/lo_LA/bills.lang index 6d7c61784f7..9f11d8ecf87 100644 --- a/htdocs/langs/lo_LA/bills.lang +++ b/htdocs/langs/lo_LA/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Vendors invoices SupplierBill=Vendor invoice SupplierBills=suppliers invoices Payment=Payment -PaymentBack=Payment back -CustomerInvoicePaymentBack=Payment back +PaymentBack=Refund +CustomerInvoicePaymentBack=Refund Payments=Payments PaymentsBack=Refunds paymentInInvoiceCurrency=in invoices currency PaidBack=Paid back DeletePayment=Delete payment ConfirmDeletePayment=Are you sure you want to delete this payment? -ConfirmConvertToReduc=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. -ConfirmConvertToReducSupplier=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. SupplierPayments=Vendor payments ReceivedPayments=Received payments @@ -209,17 +209,13 @@ NumberOfBillsByMonth=No. of invoices per month AmountOfBills=Amount of invoices AmountOfBillsHT=Amount of invoices (net of tax) AmountOfBillsByMonthHT=Amount of invoices by month (net of tax) -ShowSocialContribution=Show social/fiscal tax -ShowBill=Show invoice -ShowInvoice=Show invoice -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 +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=To pay on %s toPayOn=to pay on %s RetainedWarranty=Retained Warranty @@ -230,7 +226,6 @@ 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 AlreadyPaidNoCreditNotesNoDeposits=Already paid (without credit notes and down payments) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Generated from template invoice %s WarningInvoiceDateInFuture=Warning, the invoice date is higher than current date WarningInvoiceDateTooFarInFuture=Warning, the invoice date is too far from current date ViewAvailableGlobalDiscounts=View available discounts +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Status PaymentConditionShortRECEP=Due Upon Receipt @@ -509,7 +505,7 @@ ToMakePayment=Pay ToMakePaymentBack=Pay back ListOfYourUnpaidInvoices=List of unpaid invoices NoteListOfYourUnpaidInvoices=Note: This list contains only invoices for third parties you are linked to as a sale representative. -RevenueStamp=Revenue stamp +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party YouMustCreateStandardInvoiceFirstDesc=You have to create a standard invoice first and convert it to "template" to create a new template invoice @@ -575,3 +571,4 @@ AutoFillDateTo=Set end date for service line with next invoice date AutoFillDateToShort=Set end date MaxNumberOfGenerationReached=Max number of gen. reached BILL_DELETEInDolibarr=Invoice deleted +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/lo_LA/blockedlog.lang b/htdocs/langs/lo_LA/blockedlog.lang index cff8f7d657b..5afae6e9e53 100644 --- a/htdocs/langs/lo_LA/blockedlog.lang +++ b/htdocs/langs/lo_LA/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Unalterable logs ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) DownloadBlockChain=Download fingerprints -KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this re after it was recorded, or has erased the previous archived record (check that line with previous # exists). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. AddedByAuthority=Stored into remote authority diff --git a/htdocs/langs/lo_LA/cashdesk.lang b/htdocs/langs/lo_LA/cashdesk.lang index 7ddbc71f3e9..f9f00015840 100644 --- a/htdocs/langs/lo_LA/cashdesk.lang +++ b/htdocs/langs/lo_LA/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Add this article RestartSelling=Go back on sell SellFinished=Sale complete PrintTicket=Print ticket +SendTicket=Send ticket NoProductFound=No article found ProductFound=product found NoArticle=No article @@ -48,6 +49,7 @@ Footer=Footer AmountAtEndOfPeriod=Amount at end of period (day, month or year) TheoricalAmount=Theorical amount RealAmount=Real amount +CashFence=Cash fence CashFenceDone=Cash fence done for the period NbOfInvoices=Nb of invoices Paymentnumpad=Type of Pad to enter payment @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS needs product categories to work OrderNotes=Order Notes CashDeskBankAccountFor=Default account to use for payments in NoPaimementModesDefined=No paiment mode defined in TakePOS configuration -TicketVatGrouped=Group VAT by rate in tickets -AutoPrintTickets=Automatically print tickets +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? @@ -87,7 +90,19 @@ HeadBar=Head Bar SortProductField=Field for sorting products Browser=Browser BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/lo_LA/companies.lang b/htdocs/langs/lo_LA/companies.lang index baead90af58..f9972f0f228 100644 --- a/htdocs/langs/lo_LA/companies.lang +++ b/htdocs/langs/lo_LA/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted=Company "%s" deleted from database. ListOfContacts=List of contacts/addresses ListOfContactsAddresses=List of contacts/addresses ListOfThirdParties=List of Third Parties -ShowCompany=Show Third Party ShowContact=Show contact ContactsAllShort=All (No filter) ContactType=Contact type @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=First name of sales representative SaleRepresentativeLastname=Last name of sales representative ErrorThirdpartiesMerge=There was an error when deleting the third parties. Please check the log. Changes have been reverted. NewCustomerSupplierCodeProposed=Customer or Vendor code already used, a new code is suggested +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Payment Type - Customer PaymentTermsCustomer=Payment Terms - Customer diff --git a/htdocs/langs/lo_LA/compta.lang b/htdocs/langs/lo_LA/compta.lang index c5e026448e8..b4eb327c94d 100644 --- a/htdocs/langs/lo_LA/compta.lang +++ b/htdocs/langs/lo_LA/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=See %sanalysis of payments%s for a calculation on act SeeReportInDueDebtMode=See %sanalysis of invoices%s for a calculation based on known recorded invoices even if they are not yet accounted in Ledger. SeeReportInBookkeepingMode=See %sBookeeping report%s for a calculation on Bookkeeping Ledger table RulesAmountWithTaxIncluded=- Amounts shown are with all taxes included -RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the validation date of invoices and VAT and on the due date for expenses. For salaries defined with Salary module, the value date of payment is used. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- It includes the real payments made on invoices, expenses, VAT and salaries.
    - It is based on the payment dates of the invoices, expenses, VAT and salaries. The donation date for donation. -RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the validation date of these invoices.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    RulesCATotalSaleJournal=It includes all credit lines from the Sale journal. RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Turnover invoiced by sale tax rate TurnoverCollectedbyVatrate=Turnover collected by sale tax rate PurchasebyVatrate=Purchase by sale tax rate LabelToShow=Short label +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/lo_LA/donations.lang b/htdocs/langs/lo_LA/donations.lang index 5edc8d62033..de4bdf68f03 100644 --- a/htdocs/langs/lo_LA/donations.lang +++ b/htdocs/langs/lo_LA/donations.lang @@ -7,7 +7,6 @@ AddDonation=Create a donation NewDonation=New donation DeleteADonation=Delete a donation ConfirmDeleteADonation=Are you sure you want to delete this donation? -ShowDonation=Show donation PublicDonation=Public donation DonationsArea=Donations area DonationStatusPromiseNotValidated=Draft promise @@ -17,6 +16,7 @@ DonationStatusPromiseNotValidatedShort=Draft DonationStatusPromiseValidatedShort=Validated DonationStatusPaidShort=Received DonationTitle=Donation receipt +DonationDate=Donation date DonationDatePayment=Payment date ValidPromess=Validate promise DonationReceipt=Donation receipt diff --git a/htdocs/langs/lo_LA/errors.lang b/htdocs/langs/lo_LA/errors.lang index 3ffc686e62f..7c67aeca8b5 100644 --- a/htdocs/langs/lo_LA/errors.lang +++ b/htdocs/langs/lo_LA/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=File not received completely by server. ErrorNoTmpDir=Temporary directy %s does not exists. ErrorUploadBlockedByAddon=Upload blocked by a PHP/Apache plugin. ErrorFileSizeTooLarge=File size is too large. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Size too long for int type (%s digits maximum) ErrorSizeTooLongForVarcharType=Size too long for string type (%s chars maximum) ErrorNoValueForSelectType=Please fill value for select list @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # 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/lo_LA/install.lang b/htdocs/langs/lo_LA/install.lang index bf9c08c4ba7..f67dff57184 100644 --- a/htdocs/langs/lo_LA/install.lang +++ b/htdocs/langs/lo_LA/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=This PHP supports Curl. PHPSupportCalendar=This PHP supports calendars extensions. PHPSupportUTF8=This PHP supports UTF8 functions. PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=This PHP supports %s functions. PHPMemoryOK=Your PHP max session memory is set to %s. This should be enough. 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. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=Your PHP installation does not support Curl. ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. 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. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. ErrorDirDoesNotExists=Directory %s does not exist. ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=The application tried to self-upgrade, but the in 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. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/lo_LA/interventions.lang b/htdocs/langs/lo_LA/interventions.lang index e7667ef6946..e5936f8246e 100644 --- a/htdocs/langs/lo_LA/interventions.lang +++ b/htdocs/langs/lo_LA/interventions.lang @@ -41,9 +41,7 @@ InterventionsArea=Interventions area DraftFichinter=Draft interventions LastModifiedInterventions=Latest %s modified interventions FichinterToProcess=Interventions to process -##### Types de contacts ##### TypeContact_fichinter_external_CUSTOMER=Following-up customer contact -# Modele numérotation PrintProductsOnFichinter=Print also lines of type "product" (not only services) on intervention card PrintProductsOnFichinterDetails=interventions generated from orders UseServicesDurationOnFichinter=Use services duration for interventions generated from orders @@ -53,14 +51,16 @@ InterventionStatistics=Statistics of interventions NbOfinterventions=No. of intervention cards NumberOfInterventionsByMonth=No. of intervention cards by month (date of validation) AmountOfInteventionNotIncludedByDefault=Amount of intervention is not included by default into profit (in most cases, timesheets are used to count time spent). Add option PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT to 1 into home-setup-other to include them. -##### Exports ##### InterId=Intervention id InterRef=Intervention ref. InterDateCreation=Date creation intervention InterDuration=Duration intervention InterStatus=Status intervention InterNote=Note intervention +InterLine=Line of intervention InterLineId=Line id intervention InterLineDate=Line date intervention InterLineDuration=Line duration intervention InterLineDesc=Line description intervention +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/lo_LA/link.lang b/htdocs/langs/lo_LA/link.lang index fdcf07aeff4..1ffcd41a18b 100644 --- a/htdocs/langs/lo_LA/link.lang +++ b/htdocs/langs/lo_LA/link.lang @@ -8,3 +8,4 @@ LinkRemoved=The link %s has been removed ErrorFailedToDeleteLink= Failed to remove link '%s' ErrorFailedToUpdateLink= Failed to update link '%s' URLToLink=URL to link +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/lo_LA/mails.lang b/htdocs/langs/lo_LA/mails.lang index 8b92cef3103..7b3bfd3852a 100644 --- a/htdocs/langs/lo_LA/mails.lang +++ b/htdocs/langs/lo_LA/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=No contact/address with a category found NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found OutGoingEmailSetup=Outgoing email setup InGoingEmailSetup=Incoming email setup -OutGoingEmailSetupForEmailing=Outgoing email setup (for mass emailing) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Default outgoing email setup Information=Information ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/lo_LA/main.lang b/htdocs/langs/lo_LA/main.lang index 84d0e2276d8..f8dfd03a55c 100644 --- a/htdocs/langs/lo_LA/main.lang +++ b/htdocs/langs/lo_LA/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Save and stay SaveAndNew=Save and new TestConnection=Test connection ToClone=Clone +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Choose data you want to clone: NoCloneOptionsSpecified=No data to clone defined. Of=of @@ -829,6 +830,8 @@ Gender=Gender Genderman=Man Genderwoman=Woman ViewList=List view +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Mandatory Hello=Hello GoodBye=GoodBye @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Select your graph options to build a graph Measures=Measures XAxis=X-Axis YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/lo_LA/modulebuilder.lang b/htdocs/langs/lo_LA/modulebuilder.lang index 00a8c0f9d32..135ac1ae9ec 100644 --- a/htdocs/langs/lo_LA/modulebuilder.lang +++ b/htdocs/langs/lo_LA/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=List of dictionaries entries ListOfPermissionsDefined=List of defined permissions SeeExamples=See examples here EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) -VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update). Using a negative value means field is not shown by default on list but can be selected for viewing). It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty DisplayOnPdf=Display on PDF IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) diff --git a/htdocs/langs/lo_LA/multicurrency.lang b/htdocs/langs/lo_LA/multicurrency.lang new file mode 100644 index 00000000000..bfcbd11fb7c --- /dev/null +++ b/htdocs/langs/lo_LA/multicurrency.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Multi currency +ErrorAddRateFail=Error in added rate +ErrorAddCurrencyFail=Error in added currency +ErrorDeleteCurrencyFail=Error delete fail +multicurrency_syncronize_error=Synchronization error: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Use the date of the document to find the currency rate, instead of using the latest known rate +multicurrency_useOriginTx=When an object is created from another, keep the original rate from the source object (otherwise use the latest known rate) +CurrencyLayerAccount=CurrencyLayer API +CurrencyLayerAccount_help_to_synchronize=You must create an account on website %s to use this functionality.
    Get your API key.
    If you use a free account, you can't change the source currency (USD by default).
    If your main currency is not USD, the application will automatically recalculate it.

    You are limited to 1000 synchronizations per month. +multicurrency_appId=API key +multicurrency_appCurrencySource=Source currency +multicurrency_alternateCurrencySource=Alternate source currency +CurrenciesUsed=Currencies used +CurrenciesUsed_help_to_add=Add the different currencies and rates you need to use on your proposals, orders etc. +rate=rate +MulticurrencyReceived=Received, original currency +MulticurrencyRemainderToTake=Remaining amount, original currency +MulticurrencyPaymentAmount=Payment amount, original currency +AmountToOthercurrency=Amount To (in currency of receiving account) +CurrencyRateSyncSucceed=Currency rate synchronization done successfuly +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Use the currency of the document for online payments diff --git a/htdocs/langs/lo_LA/other.lang b/htdocs/langs/lo_LA/other.lang index ccef8b33fa1..7141983af57 100644 --- a/htdocs/langs/lo_LA/other.lang +++ b/htdocs/langs/lo_LA/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Sales order validated Notify_ORDER_SENTBYMAIL=Sales order sent by mail Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=URL of page WEBSITE_TITLE=Title WEBSITE_DESCRIPTION=Description WEBSITE_IMAGE=Image -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Keywords LinesToImport=Lines to import diff --git a/htdocs/langs/lo_LA/products.lang b/htdocs/langs/lo_LA/products.lang index d88c27272d9..a34414a263d 100644 --- a/htdocs/langs/lo_LA/products.lang +++ b/htdocs/langs/lo_LA/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL MassBarcodeInit=Mass barcode init MassBarcodeInitDesc=This page can be used to initialize a barcode on objects that does not have barcode defined. Check before that setup of module barcode is complete. ProductAccountancyBuyCode=Accounting code (purchase) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Accounting code (sale) ProductAccountancySellIntraCode=Accounting code (sale intra-Community) ProductAccountancySellExportCode=Accounting code (sale export) @@ -165,7 +167,7 @@ SuppliersPrices=Vendor prices SuppliersPricesOfProductsOrServices=Vendor prices (of products or services) CustomCode=Customs / Commodity / HS code CountryOrigin=Origin country -Nature=Nature of produt (material/finished) +Nature=Nature of product (material/finished) ShortLabel=Short label Unit=Unit p=u. diff --git a/htdocs/langs/lo_LA/projects.lang b/htdocs/langs/lo_LA/projects.lang index 67d0d2f744e..45749567b65 100644 --- a/htdocs/langs/lo_LA/projects.lang +++ b/htdocs/langs/lo_LA/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=which I'm linked to project Time=Time ListOfTasks=List of tasks GoToListOfTimeConsumed=Go to list of time consumed -GoToListOfTasks=Show as list -GoToGanttView=show as Gantt GanttView=Gantt View ListProposalsAssociatedProject=List of the commercial proposals related to the project ListOrdersAssociatedProject=List of sales orders related to the project @@ -188,7 +186,7 @@ PlannedWorkload=Planned workload PlannedWorkloadShort=Workload ProjectReferers=Related items ProjectMustBeValidatedFirst=Project must be validated first -FirstAddRessourceToAllocateTime=Assign a user resource to task to allocate time +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=Input per day InputPerWeek=Input per week InputPerMonth=Input per month @@ -240,6 +238,7 @@ LatestModifiedProjects=Latest %s modified projects OtherFilteredTasks=Other filtered tasks NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=Allow user comments on tasks AllowCommentOnProject=Allow user comments on projects @@ -256,7 +255,7 @@ ServiceToUseOnLines=Service to use on lines InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. ProjectFollowOpportunity=Follow opportunity -ProjectFollowTasks=Follow tasks +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Usage: Opportunity UsageTasks=Usage: Tasks @@ -265,3 +264,4 @@ InvoiceToUse=Draft invoice to use NewInvoice=New invoice OneLinePerTask=One line per task OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/lo_LA/receiptprinter.lang b/htdocs/langs/lo_LA/receiptprinter.lang index 3df49b9fe67..896eaa313dd 100644 --- a/htdocs/langs/lo_LA/receiptprinter.lang +++ b/htdocs/langs/lo_LA/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Dummy Printer CONNECTOR_NETWORK_PRINT=Network Printer CONNECTOR_FILE_PRINT=Local Printer CONNECTOR_WINDOWS_PRINT=Local Windows Printer +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Fake Printer for test, does nothing CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Default Profile PROFILE_SIMPLE=Simple Profile PROFILE_EPOSTEP=Epos Tep Profile @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Invoice month in letters DOL_VALUE_MONTH=Invoice month DOL_VALUE_DAY=Invoice day DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Invoice ref +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=Capital +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/lo_LA/stripe.lang b/htdocs/langs/lo_LA/stripe.lang index eb77441d2cd..844762040af 100644 --- a/htdocs/langs/lo_LA/stripe.lang +++ b/htdocs/langs/lo_LA/stripe.lang @@ -32,6 +32,7 @@ VendorName=Name of vendor CSSUrlForPaymentForm=CSS style sheet url for payment form NewStripePaymentReceived=New Stripe payment received NewStripePaymentFailed=New Stripe payment tried but failed +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Secret test key STRIPE_TEST_PUBLISHABLE_KEY=Publishable test key STRIPE_TEST_WEBHOOK_KEY=Webhook test key @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mo 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... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authenticatin rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/lo_LA/users.lang b/htdocs/langs/lo_LA/users.lang index 78fc1a3486d..b6bd125449d 100644 --- a/htdocs/langs/lo_LA/users.lang +++ b/htdocs/langs/lo_LA/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Users and their properties DomainUser=Domain user %s Reactivate=Reactivate CreateInternalUserDesc=This form allows you to create an internal user in your company/organization. To create an external user (customer, vendor etc. ..), use the button 'Create Dolibarr User' from that third-party's contact card. -InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other.

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=Permission granted because inherited from one of a user's group. Inherited=Inherited UserWillBeInternalUser=Created user will be an internal user (because not linked to a particular third party) @@ -110,3 +110,8 @@ UserLogged=User logged DateEmployment=Employment Start Date DateEmploymentEnd=Employment End Date CantDisableYourself=You can't disable your own user record +ForceUserExpenseValidator=Force expense report validator +ForceUserHolidayValidator=Force leave request validator +ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/lo_LA/website.lang b/htdocs/langs/lo_LA/website.lang index 9e5c4ba3ff8..bce2a09fb03 100644 --- a/htdocs/langs/lo_LA/website.lang +++ b/htdocs/langs/lo_LA/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=View page in new tab SetAsHomePage=Set as Home page RealURL=Real URL ViewWebsiteInProduction=View web site using home URLs -SetHereVirtualHost=Use with Apache/NGinx/...
    If you can create, on your web server (Apache, Nginx, ...), a dedicated Virtual Host with PHP enabled and a Root directory on
    %s
    then set the name of the virtual host you have created in the properties of web site, so the preview can be done also using this dedicated web server access instead of the internal Dolibarr server. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS=Use with PHP embedded server
    On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running
    php -S 0.0.0.0:8080 -t %s YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org CheckVirtualHostPerms=Check also that virtual host has permission %s on files into
    %s @@ -56,7 +57,7 @@ NoPageYet=No pages yet YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template SyntaxHelp=Help on specific syntax tips YouCanEditHtmlSourceckeditor=You can edit HTML source code using the "Source" button in editor. -YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Clone page/container CloneSite=Clone site SiteAdded=Website added @@ -76,7 +77,7 @@ BlogPost=Blog post WebsiteAccount=Website account WebsiteAccounts=Website accounts AddWebsiteAccount=Create web site account -BackToListOfThirdParty=Back to list for Third Party +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Disable website first MyContainerTitle=My web site title AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Sorry, this website is currently off line. Please 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 -OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that edits of HTML source will be possible when page content has been initialized by grabbing it from an external page ("Online" editor will NOT be available) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Only edition of HTML source is possible when content was grabbed from an external site GrabImagesInto=Grab also images found into css and page. ImagesShouldBeSavedInto=Images should be saved into directory @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 ch MainLanguage=Main language OtherLanguages=Other languages UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/lo_LA/zapier.lang b/htdocs/langs/lo_LA/zapier.lang new file mode 100644 index 00000000000..6d6eda71313 --- /dev/null +++ b/htdocs/langs/lo_LA/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr module + +# +# Admin page +# +ZapierForDolibarrSetup = Setup of Zapier for Dolibarr diff --git a/htdocs/langs/lt_LT/accountancy.lang b/htdocs/langs/lt_LT/accountancy.lang index a6ea5cd4d4d..d0689dd8625 100644 --- a/htdocs/langs/lt_LT/accountancy.lang +++ b/htdocs/langs/lt_LT/accountancy.lang @@ -121,6 +121,7 @@ InvoiceLinesDone=Priskirtos sąskaitų faktūrų eilutės ExpenseReportLines=Išlaidų ataskaitų eilutės, kurias reikia priskirti ExpenseReportLinesDone=Priskirtos išlaidų ataskaitų eilutės IntoAccount=Priskirta eilutė su apskaitos sąskaita +TotalForAccount=Total for accounting account Ventilate=Priskirti @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Accounting account to register donations ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (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 products sold in EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported 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_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (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_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unkno ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error PaymentsNotLinkedToProduct=Payment not linked to any product / service +OpeningBalance=Opening balance ShowOpeningBalance=Show opening balance HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Group of account PcgtypeDesc=Group 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. +Reconcilable=Reconcilable + TotalVente=Total turnover before tax TotalMarge=Iš viso pardavimų marža @@ -307,11 +317,13 @@ 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Chart of accounts Id ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Rėžimas pardavimas OptionModeProductSellIntra=Mode sales exported in EEC OptionModeProductSellExport=Mode sales exported in other countries OptionModeProductBuy=Rėžimas pirkimai +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries 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. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=Remove accounting code from lines that not exists into charts of account CleanHistory=Reset all bindings for selected year PredefinedGroups=Predefined groups @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Account removed from group SaleLocal=Local sale SaleExport=Export sale SaleEEC=Sale in EEC +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=Range of accounting account diff --git a/htdocs/langs/lt_LT/admin.lang b/htdocs/langs/lt_LT/admin.lang index 5235e157377..dab8c8ed04e 100644 --- a/htdocs/langs/lt_LT/admin.lang +++ b/htdocs/langs/lt_LT/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Tinklo serverio naudotojas/grupė NoSessionFound=Your PHP configuration seems to not allow listing of active sessions. The directory used to save sessions (%s) may be protected (for example by OS permissions or by PHP directive open_basedir). DBStoringCharset=Duomenų bazės simbolių rinkinys duomenų talpinimui DBSortingCharset=Duomenų bazės simbolių rinkinys duomenų rūšiavimui +HostCharset=Host charset ClientCharset=Client charset ClientSortingCharset=Client collation WarningModuleNotActive=%s modulis turi būti įjungtas @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the NoMaxSizeByPHPLimit=PHP konfiguracijoje ribos nepritaikytos MaxSizeForUploadedFiles=Didžiausias įkeliamo failo dydis (0 - uždrausti betkokius įkėlimus) UseCaptchaCode=Prisijungimo puslapyje naudoti grafinį kodą (CAPTCHA) -AntiVirusCommand= Pilnas maršrutas iki antivirusinės programos komandos -AntiVirusCommandExample= ClamWin pavyzdys: c:\\Progra~1\\ClamWin\\bin\\clamscan.exe
    ClamAv pavyzdys: /usr/bin/clamscan +AntiVirusCommand=Pilnas maršrutas iki antivirusinės programos komandos +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= Daugiau parametrų komandinėje eilutėje -AntiVirusParamExample= ClamWin pavyzdys: --database="C:\\Program Files (x86)\\ClamWin\\lib" +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=Apskaitos modulio nustatymai UserSetup=Vartotojo valdymo nustatymai MultiCurrencySetup=Multi-currency setup @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Funkcija išjungta demo versijoje FeatureAvailableOnlyOnStable=Feature only available on official stable versions BoxesDesc=Widgets are components showing some information that you can add to personalize some pages. You can choose between showing the widget or not by selecting target page and clicking 'Activate', or by clicking the trashcan to disable it. OnlyActiveElementsAreShown=Rodomi tik elementai iš leidžiami moduliai. -ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button (at end of module line) to enable/disable a module/application. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. ModulesMarketPlaceDesc=You can find more modules to download on external websites on the Internet... ModulesDeployDesc=If permissions on your file system allow it, you can use this tool to deploy an external module. The module will then be visible on the tab %s. ModulesMarketPlaces=Find external app/modules @@ -212,6 +213,7 @@ CompatibleUpTo=Compatible with version %s NotCompatible=This module does not seem compatible with your Dolibarr %s (Min %s - Max %s). CompatibleAfterUpdate=This module requires an update to your Dolibarr %s (Min %s - Max %s). SeeInMarkerPlace=See in Market place +SeeSetupOfModule=See setup of module %s Updated=Updated Nouveauté=Novelty AchatTelechargement=Buy / Download @@ -221,6 +223,7 @@ DoliPartnersDesc=List of companies providing custom-developed modules or feature WebSiteDesc=External websites for more add-on (non-core) modules... DevelopYourModuleDesc=Some solutions to develop your own module... URL=URL +RelativeURL=Relative URL BoxesAvailable=Widgets available BoxesActivated=Widgets activated ActivateOn=Aktyvavimą įjungti @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Checkboxes ExtrafieldCheckBoxFromList=Checkboxes from table ExtrafieldLink=Nuoroda į objektą, ComputedFormula=Computed field -ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Store computed field ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! ExtrafieldParamHelpPassword=Leaving this field blank means this value will be stored without encryption (field must be only hidden with star on screen).
    Set 'auto' to use the default encryption rule to save password into database (then value read will be the hash only, no way to retrieve original value) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Palikti tuščią norint naudoti reikšmę pagal nutylėji DefaultLink=Nustatytoji nuoroda SetAsDefault=Set as default ValueOverwrittenByUserSetup=Įspėjimas, ši reikšmė gali būti perrašyta pagal vartotojo specifines nuostatas (kiekvienas vartotojas gali nustatyti savo clicktodial URL) -ExternalModule=Išorinis modulis - Įdiegtas kataloge %s +ExternalModule=External module +InstalledInto=Installed into directory %s BarcodeInitForthird-parties=Mass barcode init for third-parties BarcodeInitForProductsOrServices=Masiniss brūkšninių kodų paleidimas arba atstatymas produktams ar paslaugoms CurrentlyNWithoutBarCode=Currently, you have %s record on %s %s without barcode defined. @@ -947,7 +951,7 @@ DictionaryCanton=States/Provinces DictionaryRegion=Regionai DictionaryCountry=Šalys DictionaryCurrency=Valiutos -DictionaryCivility=Title of civility +DictionaryCivility=Honorific titles DictionaryActions=Types of agenda events DictionarySocialContributions=Types of social or fiscal taxes DictionaryVAT=PVM tarifai ar Pardavimo mokesčio tarifai @@ -988,6 +992,7 @@ VATIsNotUsedDesc=By default the proposed Sales tax is 0 which can be used for ca VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=Norma LocalTax1IsNotUsed=Nenaudokite antro mokesčio LocalTax1IsUsedDesc=Use a second type of tax (other than first one) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices LocalTax2IsNotUsedDescES=Pagal nutylėjimą siūloma IRPF yra 0. Taisyklės pabaiga. LocalTax2IsUsedExampleES=Ispanijoje, laisvai samdomi ir nepriklausomi specialistai, kurie teikia paslaugas ir įmonės, kurios pasirinko modulių mokesčių sistemą. LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=Ataskaitos apie vietinius mokesčius CalcLocaltax1=Pardavimai - Pirkimai CalcLocaltax1Desc=Vietinių mokesčių ataskaitos apskaičiuojamas kaip skirtumas tarp pardavimo vietinių mokesčių ir pirkimo vietinių mokesčių @@ -1018,6 +1026,7 @@ CalcLocaltax2=Pirkimai CalcLocaltax2Desc=Vietinių mokesčių ataskaitos yra pirkimo vietinių mokesčių suma iš viso CalcLocaltax3=Pardavimai CalcLocaltax3Desc=Vietinių mokesčių ataskaitos yra pardavimo vietinių mokesčių suma iš viso +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=Etiketė naudojamas pagal nutylėjimą, jei kodui nerandamas vertimas LabelOnDocuments=Dokumentų etiketė LabelOrTranslationKey=Label or translation key @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Expense report to approve Delays_MAIN_DELAY_HOLIDAYS=Leave requests 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. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. SetupDescription5=Other Setup menu entries manage optional parameters. LogEvents=Saugumo audito įvykiai Audit=Auditas @@ -1128,7 +1137,7 @@ LogEventDesc=Enable logging for specific security events. Administrators the log AreaForAdminOnly=Setup parameters can be set by administrator users only. SystemInfoDesc=Sistemos informacija yra įvairi techninė informacija, kurią gausite tik skaitymo režimu, ir bus matoma tik sistemos administratoriams. SystemAreaForAdminOnly=This area is available to administrator users only. Dolibarr user permissions cannot change this restriction. -CompanyFundationDesc=Edit the information of the company/entity. Click on "%s" button at the bottom of the page. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. AccountantFileNumber=Accountant code DisplayDesc=Parameters affecting the look and behaviour of Dolibarr can be modified here. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Rules to generate and validate passwords DisableForgetPasswordLinkOnLogonPage=Do not show the "Password Forgotten" link on the Login page UsersSetup=Vartotojų modulio nuostatos UserMailRequired=Email required to create a new user +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### HRMSetup=HRM module setup ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Sąskaitų-faktūrų dokumentų moduliai BillsPDFModulesAccordindToInvoiceType=Invoice documents models according to invoice type PaymentsPDFModules=Payment documents models ForceInvoiceDate=Sąskaitos-faktūros data įsigalioja patvirtinimo datą -SuggestedPaymentModesIfNotDefinedInInvoice=Siūlomas mokėjimų režimas sąskaitoje-faktūroje pagal nutylėjimą, jei pačioje sąskaitoje nėra apibrėžta kitaip +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice SuggestPaymentByRIBOnAccount=Suggest payment by withdrawal on account SuggestPaymentByChequeToAddress=Suggest payment by check to FreeLegalTextOnInvoices=Laisvos formos tekstas sąskaitoje-faktūroje @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Vendor payments setup PropalSetup=Komercinių pasiūlymų modulio nuostatos ProposalsNumberingModules=Komercinių pasiūlymų numeracijos modeliai ProposalsPDFModules=Komercinio pasiūlymo dokumentų modeliai -SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined for proposal +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal FreeLegalTextOnProposal=Laisvas tekstas komerciniame pasiūlyme WatermarkOnDraftProposal=Vandens ženklas komercinių pasiūlymų projekte (nėra, jei lapas tuščias) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Klausti pasiūlyme esančios banko sąskaitos paskirties @@ -1322,6 +1334,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 ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=Sales Orders management setup OrdersNumberingModules=Užsakymų numeracijos modeliai OrdersModelModule=Užsakymo dokumentų modeliai @@ -1720,7 +1733,7 @@ MultiCompanySetup=Multi-įmonės modulio nustatymas ##### Suppliers ##### SuppliersSetup=Vendor module setup SuppliersCommandModel=Complete template of Purchase Order -SuppliersCommandModelMuscadet=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) SuppliersInvoiceModel=Complete template of Vendor Invoice SuppliersInvoiceNumberingModel=Vendor invoices numbering models IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Hide images in Top menu LeftMenuBackgroundColor=Background color for Left menu BackgroundTableTitleColor=Background color for Table title line BackgroundTableTitleTextColor=Text color for Table title line +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Background color for odd table lines BackgroundTableLineEvenColor=Background color for even table lines MinimumNoticePeriod=Minimum notice period (Your leave request must be done before this delay) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Dolibarr Reference not found in Message ID FormatZip=Pašto kodas MainMenuCode=Menu entry code (mainmenu) ECMAutoTree=Show automatic ECM tree -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. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Opening hours OpeningHoursDesc=Enter here the regular opening hours of your company. ResourceSetup=Configuration of Resource module @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramatical ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export +ImportSetup=Setup of module Import InstanceUniqueID=Unique ID of the instance SmallerThan=Smaller than LargerThan=Larger than @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled EmailTemplate=Template for email EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/lt_LT/bills.lang b/htdocs/langs/lt_LT/bills.lang index 484eff26861..c39c8d7715c 100644 --- a/htdocs/langs/lt_LT/bills.lang +++ b/htdocs/langs/lt_LT/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Vendors invoices SupplierBill=Vendor invoice SupplierBills=tiekėjų sąskaitos-faktūros Payment=Mokėjimas -PaymentBack=Mokėjimas atgal (grąžinimas) -CustomerInvoicePaymentBack=Mokėjimas atgal (grąžinimas) +PaymentBack=Refund +CustomerInvoicePaymentBack=Refund Payments=Mokėjimai PaymentsBack=Refunds paymentInInvoiceCurrency=in invoices currency PaidBack=Sumokėta atgal (grąžinta) DeletePayment=Ištrinti mokėjimą ConfirmDeletePayment=Ar tikrai norite ištrinti šį mokėjimą? -ConfirmConvertToReduc=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. -ConfirmConvertToReducSupplier=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. SupplierPayments=Vendor payments ReceivedPayments=Gauti mokėjimai @@ -209,17 +209,13 @@ NumberOfBillsByMonth=No. of invoices per month AmountOfBills=Sąskaitų-faktūrų suma AmountOfBillsHT=Amount of invoices (net of tax) AmountOfBillsByMonthHT=Sąskaitų-faktūrų suma pagal mėnesius (atskaičius mokesčius) -ShowSocialContribution=Show social/fiscal tax -ShowBill=Rodyti sąskaitą-faktūrą -ShowInvoice=Rodyti sąskaitą-faktūrą -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 +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=To pay on %s toPayOn=to pay on %s RetainedWarranty=Retained Warranty @@ -230,7 +226,6 @@ 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 AlreadyPaidNoCreditNotesNoDeposits=Jau sumokėta (be kreditinių sąskaitų ir pradinės įmokos) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Generated from template invoice %s WarningInvoiceDateInFuture=Warning, the invoice date is higher than current date WarningInvoiceDateTooFarInFuture=Warning, the invoice date is too far from current date ViewAvailableGlobalDiscounts=View available discounts +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Būklė PaymentConditionShortRECEP=Išankstinis mokėjimas @@ -509,7 +505,7 @@ ToMakePayment=Mokėti ToMakePaymentBack=Grąžinti ListOfYourUnpaidInvoices=Sąrašas neapmokėtų sąskaitų-faktūrų NoteListOfYourUnpaidInvoices=Pastaba: Šis sąrašas rodo tik sąskaitas trečiosioms šalims, su kuriom Jūs susijęs kaip prekybos atstovas. -RevenueStamp=Įplaukų rūšis +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party YouMustCreateStandardInvoiceFirstDesc=You have to create a standard invoice first and convert it to "template" to create a new template invoice @@ -575,3 +571,4 @@ AutoFillDateTo=Nustatykite paslaugų eilutės pabaigos datą su kita sąskaitos AutoFillDateToShort=Nustatykite pabaigos datą MaxNumberOfGenerationReached=Max number of gen. reached BILL_DELETEInDolibarr=Invoice deleted +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/lt_LT/blockedlog.lang b/htdocs/langs/lt_LT/blockedlog.lang index a24007b6783..0bb5b261bc1 100644 --- a/htdocs/langs/lt_LT/blockedlog.lang +++ b/htdocs/langs/lt_LT/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Unalterable logs ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) DownloadBlockChain=Download fingerprints -KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this re after it was recorded, or has erased the previous archived record (check that line with previous # exists). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. AddedByAuthority=Stored into remote authority diff --git a/htdocs/langs/lt_LT/cashdesk.lang b/htdocs/langs/lt_LT/cashdesk.lang index 09f43efab79..c78fbe486a8 100644 --- a/htdocs/langs/lt_LT/cashdesk.lang +++ b/htdocs/langs/lt_LT/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Pridėti šią prekę RestartSelling=Eiti atgal į pardavimą SellFinished=Pardavimas baigtas PrintTicket=Spausdinti užsakymą +SendTicket=Send ticket NoProductFound=Prekė nerasta ProductFound=Produktas rastas NoArticle=Nėra prekės @@ -48,6 +49,7 @@ Footer=Footer AmountAtEndOfPeriod=Amount at end of period (day, month or year) TheoricalAmount=Theorical amount RealAmount=Real amount +CashFence=Cash fence CashFenceDone=Cash fence done for the period NbOfInvoices=Sąskaitų-faktūrų skaičius Paymentnumpad=Type of Pad to enter payment @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS needs product categories to work OrderNotes=Order Notes CashDeskBankAccountFor=Default account to use for payments in NoPaimementModesDefined=No paiment mode defined in TakePOS configuration -TicketVatGrouped=Group VAT by rate in tickets -AutoPrintTickets=Automatically print tickets +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? @@ -87,7 +90,19 @@ HeadBar=Head Bar SortProductField=Field for sorting products Browser=Naršyklė BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/lt_LT/companies.lang b/htdocs/langs/lt_LT/companies.lang index 0a2959a9409..15368db9c20 100644 --- a/htdocs/langs/lt_LT/companies.lang +++ b/htdocs/langs/lt_LT/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted=Įmonė "%s" ištrinta iš duomenų bazės. ListOfContacts=Kontaktų/adresų sąrašas ListOfContactsAddresses=Kontaktų/adresų sąrašas ListOfThirdParties=List of Third Parties -ShowCompany=Show Third Party ShowContact=Rodyti kontaktus ContactsAllShort=Visi (nėra filtro) ContactType=Kontakto tipas @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=First name of sales representative SaleRepresentativeLastname=Last name of sales representative ErrorThirdpartiesMerge=There was an error when deleting the third parties. Please check the log. Changes have been reverted. NewCustomerSupplierCodeProposed=Customer or Vendor code already used, a new code is suggested +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Payment Type - Customer PaymentTermsCustomer=Payment Terms - Customer diff --git a/htdocs/langs/lt_LT/compta.lang b/htdocs/langs/lt_LT/compta.lang index 96ffced295c..d645b4e329e 100644 --- a/htdocs/langs/lt_LT/compta.lang +++ b/htdocs/langs/lt_LT/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=See %sanalysis of payments%s for a calculation on act SeeReportInDueDebtMode=See %sanalysis of invoices%s for a calculation based on known recorded invoices even if they are not yet accounted in Ledger. SeeReportInBookkeepingMode=See %sBookeeping report%s for a calculation on Bookkeeping Ledger table RulesAmountWithTaxIncluded=- Sumos rodomos su įtrauktais mokesčiais -RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the validation date of invoices and VAT and on the due date for expenses. For salaries defined with Salary module, the value date of payment is used. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- It includes the real payments made on invoices, expenses, VAT and salaries.
    - It is based on the payment dates of the invoices, expenses, VAT and salaries. The donation date for donation. -RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the validation date of these invoices.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    RulesCATotalSaleJournal=It includes all credit lines from the Sale journal. RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Turnover invoiced by sale tax rate TurnoverCollectedbyVatrate=Turnover collected by sale tax rate PurchasebyVatrate=Purchase by sale tax rate LabelToShow=Short label +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/lt_LT/donations.lang b/htdocs/langs/lt_LT/donations.lang index e23b0061f4c..e5d41a26e63 100644 --- a/htdocs/langs/lt_LT/donations.lang +++ b/htdocs/langs/lt_LT/donations.lang @@ -7,7 +7,6 @@ AddDonation=Create a donation NewDonation=Nauja auka DeleteADonation=Delete a donation ConfirmDeleteADonation=Are you sure you want to delete this donation? -ShowDonation=Rodyti auką PublicDonation=Viešos aukos DonationsArea=Aukų sritis DonationStatusPromiseNotValidated=Pažado projektas @@ -17,6 +16,7 @@ DonationStatusPromiseNotValidatedShort=Projektas/apmatai DonationStatusPromiseValidatedShort=Pripažintas galiojančiu DonationStatusPaidShort=Gautas DonationTitle=Aukos įplaukos +DonationDate=Donation date DonationDatePayment=Mokėjimo data ValidPromess=Pažadą pripažinti galiojančiu DonationReceipt=Aukos įplaukos diff --git a/htdocs/langs/lt_LT/errors.lang b/htdocs/langs/lt_LT/errors.lang index ac450e42bec..f1e9b03723b 100644 --- a/htdocs/langs/lt_LT/errors.lang +++ b/htdocs/langs/lt_LT/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=Failas pilnai negautas serveryje. ErrorNoTmpDir=Laikinas aplankas %s neegzistuoja. ErrorUploadBlockedByAddon=Įkėlimas užblokuotas PHP/Apache įskiepio. ErrorFileSizeTooLarge=Failo dydis yra per didelis. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Per didelis vidiniam tipui (maksimalus skaitmenų kiekis %s) ErrorSizeTooLongForVarcharType=Per didelis eilutės tipui (maksimalus simbolių skaičius %s) ErrorNoValueForSelectType=Prašome užpildyti reikšmę pasirinkitam sąrašui @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # 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/lt_LT/install.lang b/htdocs/langs/lt_LT/install.lang index 5ad9f6bfb01..aee5facec48 100644 --- a/htdocs/langs/lt_LT/install.lang +++ b/htdocs/langs/lt_LT/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=This PHP supports Curl. PHPSupportCalendar=This PHP supports calendars extensions. PHPSupportUTF8=This PHP supports UTF8 functions. PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=This PHP supports %s functions. PHPMemoryOK=Jūsų PHP maksimali sesijos atmintis yra nustatyta į %s. To turėtų būti pakankamai. 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. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=Your PHP installation does not support Curl. ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. 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. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. ErrorDirDoesNotExists=Katalogas %s neegzistuoja. ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=The application tried to self-upgrade, but the in 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. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/lt_LT/interventions.lang b/htdocs/langs/lt_LT/interventions.lang index 3e84e690840..12016151c84 100644 --- a/htdocs/langs/lt_LT/interventions.lang +++ b/htdocs/langs/lt_LT/interventions.lang @@ -41,9 +41,7 @@ InterventionsArea=Interventions area DraftFichinter=Draft interventions LastModifiedInterventions=Latest %s modified interventions FichinterToProcess=Interventions to process -##### Types de contacts ##### TypeContact_fichinter_external_CUSTOMER=Sekantis kiento kontaktas -# Modele numérotation PrintProductsOnFichinter=Print also lines of type "product" (not only services) on intervention card PrintProductsOnFichinterDetails=interventions generated from orders UseServicesDurationOnFichinter=Use services duration for interventions generated from orders @@ -53,14 +51,16 @@ InterventionStatistics=Statistics of interventions NbOfinterventions=No. of intervention cards NumberOfInterventionsByMonth=No. of intervention cards by month (date of validation) AmountOfInteventionNotIncludedByDefault=Amount of intervention is not included by default into profit (in most cases, timesheets are used to count time spent). Add option PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT to 1 into home-setup-other to include them. -##### Exports ##### InterId=Intervention id InterRef=Intervention ref. InterDateCreation=Date creation intervention InterDuration=Duration intervention InterStatus=Status intervention InterNote=Note intervention +InterLine=Line of intervention InterLineId=Line id intervention InterLineDate=Line date intervention InterLineDuration=Line duration intervention InterLineDesc=Line description intervention +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/lt_LT/link.lang b/htdocs/langs/lt_LT/link.lang index b798330c3e2..c9e19c70173 100644 --- a/htdocs/langs/lt_LT/link.lang +++ b/htdocs/langs/lt_LT/link.lang @@ -8,3 +8,4 @@ LinkRemoved=The link %s has been removed ErrorFailedToDeleteLink= Failed to remove link '%s' ErrorFailedToUpdateLink= Nesėkmingas sąsajos '%s' atnaujinimas URLToLink=URL to link +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/lt_LT/mails.lang b/htdocs/langs/lt_LT/mails.lang index 87a8dea5bab..ac1348c61ed 100644 --- a/htdocs/langs/lt_LT/mails.lang +++ b/htdocs/langs/lt_LT/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=No contact/address with a category found NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found OutGoingEmailSetup=Outgoing email setup InGoingEmailSetup=Incoming email setup -OutGoingEmailSetupForEmailing=Outgoing email setup (for mass emailing) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Default outgoing email setup Information=Informacija ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/lt_LT/main.lang b/htdocs/langs/lt_LT/main.lang index 558131a942e..a102b3af53d 100644 --- a/htdocs/langs/lt_LT/main.lang +++ b/htdocs/langs/lt_LT/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Save and stay SaveAndNew=Save and new TestConnection=Bandyti sujungimą ToClone=Klonuoti +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Choose data you want to clone: NoCloneOptionsSpecified=Nėra apibrėžtų duomenų klonavimui. Of=iš @@ -829,6 +830,8 @@ Gender=Gender Genderman=Vyras Genderwoman=Moteris ViewList=Sąrašo vaizdas +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Mandatory Hello=Sveiki ! GoodBye=GoodBye @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Select your graph options to build a graph Measures=Measures XAxis=X-Axis YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/lt_LT/modulebuilder.lang b/htdocs/langs/lt_LT/modulebuilder.lang index 00a8c0f9d32..135ac1ae9ec 100644 --- a/htdocs/langs/lt_LT/modulebuilder.lang +++ b/htdocs/langs/lt_LT/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=List of dictionaries entries ListOfPermissionsDefined=List of defined permissions SeeExamples=See examples here EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) -VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update). Using a negative value means field is not shown by default on list but can be selected for viewing). It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty DisplayOnPdf=Display on PDF IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) diff --git a/htdocs/langs/lt_LT/multicurrency.lang b/htdocs/langs/lt_LT/multicurrency.lang new file mode 100644 index 00000000000..bfcbd11fb7c --- /dev/null +++ b/htdocs/langs/lt_LT/multicurrency.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Multi currency +ErrorAddRateFail=Error in added rate +ErrorAddCurrencyFail=Error in added currency +ErrorDeleteCurrencyFail=Error delete fail +multicurrency_syncronize_error=Synchronization error: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Use the date of the document to find the currency rate, instead of using the latest known rate +multicurrency_useOriginTx=When an object is created from another, keep the original rate from the source object (otherwise use the latest known rate) +CurrencyLayerAccount=CurrencyLayer API +CurrencyLayerAccount_help_to_synchronize=You must create an account on website %s to use this functionality.
    Get your API key.
    If you use a free account, you can't change the source currency (USD by default).
    If your main currency is not USD, the application will automatically recalculate it.

    You are limited to 1000 synchronizations per month. +multicurrency_appId=API key +multicurrency_appCurrencySource=Source currency +multicurrency_alternateCurrencySource=Alternate source currency +CurrenciesUsed=Currencies used +CurrenciesUsed_help_to_add=Add the different currencies and rates you need to use on your proposals, orders etc. +rate=rate +MulticurrencyReceived=Received, original currency +MulticurrencyRemainderToTake=Remaining amount, original currency +MulticurrencyPaymentAmount=Payment amount, original currency +AmountToOthercurrency=Amount To (in currency of receiving account) +CurrencyRateSyncSucceed=Currency rate synchronization done successfuly +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Use the currency of the document for online payments diff --git a/htdocs/langs/lt_LT/other.lang b/htdocs/langs/lt_LT/other.lang index 7a2750bca0b..eb5f8859117 100644 --- a/htdocs/langs/lt_LT/other.lang +++ b/htdocs/langs/lt_LT/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Sales order validated Notify_ORDER_SENTBYMAIL=Sales order sent by mail Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=URL of page WEBSITE_TITLE=Pavadinimas WEBSITE_DESCRIPTION=Aprašymas WEBSITE_IMAGE=Image -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Keywords LinesToImport=Lines to import diff --git a/htdocs/langs/lt_LT/products.lang b/htdocs/langs/lt_LT/products.lang index 1fb2dbf4c7c..1a0255b9370 100644 --- a/htdocs/langs/lt_LT/products.lang +++ b/htdocs/langs/lt_LT/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL MassBarcodeInit=Masinė brūkšninio kodo inicializacija MassBarcodeInitDesc=Šis puslapis gali būti naudojamas inicijuoti brūkšninį kodą ant objektų, kurie neturi apibrėžto brūkšninio kodo. Patikrinti, ar modulio brūkšninio kodo nustatymai pilni. ProductAccountancyBuyCode=Accounting code (purchase) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Accounting code (sale) ProductAccountancySellIntraCode=Accounting code (sale intra-Community) ProductAccountancySellExportCode=Accounting code (sale export) @@ -165,7 +167,7 @@ SuppliersPrices=Vendor prices SuppliersPricesOfProductsOrServices=Vendor prices (of products or services) CustomCode=Customs / Commodity / HS code CountryOrigin=Kilmės šalis -Nature=Nature of produt (material/finished) +Nature=Nature of product (material/finished) ShortLabel=Short label Unit=Vienetas p=u. diff --git a/htdocs/langs/lt_LT/projects.lang b/htdocs/langs/lt_LT/projects.lang index 34c35aeaf26..074a445c738 100644 --- a/htdocs/langs/lt_LT/projects.lang +++ b/htdocs/langs/lt_LT/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=which I'm linked to project Time=Laikas ListOfTasks=List of tasks GoToListOfTimeConsumed=Go to list of time consumed -GoToListOfTasks=Show as list -GoToGanttView=show as Gantt GanttView=Gantt View ListProposalsAssociatedProject=List of the commercial proposals related to the project ListOrdersAssociatedProject=List of sales orders related to the project @@ -188,7 +186,7 @@ PlannedWorkload=Planuojamas darbo krūvis PlannedWorkloadShort=Darbo krūvis ProjectReferers=Related items ProjectMustBeValidatedFirst=Projektas turi būti pirmiausia patvirtintas -FirstAddRessourceToAllocateTime=Assign a user resource to task to allocate time +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=Įvesčių per dieną InputPerWeek=Įvesčių per savaitę InputPerMonth=Input per month @@ -240,6 +238,7 @@ LatestModifiedProjects=Latest %s modified projects OtherFilteredTasks=Other filtered tasks NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=Allow user comments on tasks AllowCommentOnProject=Allow user comments on projects @@ -256,7 +255,7 @@ ServiceToUseOnLines=Service to use on lines InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. ProjectFollowOpportunity=Follow opportunity -ProjectFollowTasks=Follow tasks +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Usage: Opportunity UsageTasks=Usage: Tasks @@ -265,3 +264,4 @@ InvoiceToUse=Draft invoice to use NewInvoice=Nauja sąskaita-faktūra OneLinePerTask=One line per task OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/lt_LT/receiptprinter.lang b/htdocs/langs/lt_LT/receiptprinter.lang index 5b050642681..23e9083da13 100644 --- a/htdocs/langs/lt_LT/receiptprinter.lang +++ b/htdocs/langs/lt_LT/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Dummy Printer CONNECTOR_NETWORK_PRINT=Network Printer CONNECTOR_FILE_PRINT=Local Printer CONNECTOR_WINDOWS_PRINT=Local Windows Printer +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Fake Printer for test, does nothing CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Default Profile PROFILE_SIMPLE=Simple Profile PROFILE_EPOSTEP=Epos Tep Profile @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Invoice month in letters DOL_VALUE_MONTH=Invoice month DOL_VALUE_DAY=Invoice day DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Sąskaitos-faktūros nuoroda +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=Kapitalas +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/lt_LT/stripe.lang b/htdocs/langs/lt_LT/stripe.lang index e5888b8ede4..4efacc34103 100644 --- a/htdocs/langs/lt_LT/stripe.lang +++ b/htdocs/langs/lt_LT/stripe.lang @@ -32,6 +32,7 @@ VendorName=Paravėjo vardas CSSUrlForPaymentForm=CSS stiliaus lapo URL mokėjimo formai NewStripePaymentReceived=New Stripe payment received NewStripePaymentFailed=New Stripe payment tried but failed +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Secret test key STRIPE_TEST_PUBLISHABLE_KEY=Publishable test key STRIPE_TEST_WEBHOOK_KEY=Webhook test key @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mo 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... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authenticatin rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/lt_LT/users.lang b/htdocs/langs/lt_LT/users.lang index c82858ffed6..9bafc72c0b5 100644 --- a/htdocs/langs/lt_LT/users.lang +++ b/htdocs/langs/lt_LT/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Users and their properties DomainUser=Domeno Vartotojas %s Reactivate=Atgaivinti CreateInternalUserDesc=This form allows you to create an internal user in your company/organization. To create an external user (customer, vendor etc. ..), use the button 'Create Dolibarr User' from that third-party's contact card. -InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other.

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=Leidimas suteiktas, nes paveldėtas iš vieno grupės vartotojų Inherited=Paveldėtas UserWillBeInternalUser=Sukurtas vartotojas bus vidinis vartotojas (nes nėra susietas su konkrečia trečiąja šalimi) @@ -110,3 +110,8 @@ UserLogged=User logged DateEmployment=Employment Start Date DateEmploymentEnd=Employment End Date CantDisableYourself=You can't disable your own user record +ForceUserExpenseValidator=Force expense report validator +ForceUserHolidayValidator=Force leave request validator +ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/lt_LT/website.lang b/htdocs/langs/lt_LT/website.lang index 41607804802..579db61e1ce 100644 --- a/htdocs/langs/lt_LT/website.lang +++ b/htdocs/langs/lt_LT/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=View page in new tab SetAsHomePage=Set as Home page RealURL=Real URL ViewWebsiteInProduction=View web site using home URLs -SetHereVirtualHost=Use with Apache/NGinx/...
    If you can create, on your web server (Apache, Nginx, ...), a dedicated Virtual Host with PHP enabled and a Root directory on
    %s
    then set the name of the virtual host you have created in the properties of web site, so the preview can be done also using this dedicated web server access instead of the internal Dolibarr server. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS=Use with PHP embedded server
    On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running
    php -S 0.0.0.0:8080 -t %s YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org CheckVirtualHostPerms=Check also that virtual host has permission %s on files into
    %s @@ -56,7 +57,7 @@ NoPageYet=No pages yet YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template SyntaxHelp=Help on specific syntax tips YouCanEditHtmlSourceckeditor=You can edit HTML source code using the "Source" button in editor. -YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Clone page/container CloneSite=Clone site SiteAdded=Website added @@ -76,7 +77,7 @@ BlogPost=Blog post WebsiteAccount=Website account WebsiteAccounts=Website accounts AddWebsiteAccount=Create web site account -BackToListOfThirdParty=Back to list for Third Party +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Disable website first MyContainerTitle=My web site title AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Sorry, this website is currently off line. Please 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 -OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that edits of HTML source will be possible when page content has been initialized by grabbing it from an external page ("Online" editor will NOT be available) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Only edition of HTML source is possible when content was grabbed from an external site GrabImagesInto=Grab also images found into css and page. ImagesShouldBeSavedInto=Images should be saved into directory @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 ch MainLanguage=Main language OtherLanguages=Other languages UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/lt_LT/zapier.lang b/htdocs/langs/lt_LT/zapier.lang new file mode 100644 index 00000000000..6d6eda71313 --- /dev/null +++ b/htdocs/langs/lt_LT/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr module + +# +# Admin page +# +ZapierForDolibarrSetup = Setup of Zapier for Dolibarr diff --git a/htdocs/langs/lv_LV/accountancy.lang b/htdocs/langs/lv_LV/accountancy.lang index 63c215f1588..637831a8f1f 100644 --- a/htdocs/langs/lv_LV/accountancy.lang +++ b/htdocs/langs/lv_LV/accountancy.lang @@ -121,6 +121,7 @@ InvoiceLinesDone=Iesaistīto rēķinu līnijas ExpenseReportLines=Izdevumu atskaites līnijas, kas saistītas ExpenseReportLinesDone=Saistītās izdevumu pārskatu līnijas IntoAccount=Bind line ar grāmatvedības kontu +TotalForAccount=Total for accounting account Ventilate=Saistīt @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Accounting account to register donations ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Grāmatvedības konts, lai reģistrētu abonementus ACCOUNTING_PRODUCT_BUY_ACCOUNT=Nopirkto produktu grāmatvedības konts pēc noklusējuma (tiek izmantots, ja tas nav definēts produktu lapā) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Grāmatvedības konts pēc noklusējuma nopirktajiem produktiem EEK (lietots, ja nav definēts produktu lapā) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Grāmatvedības konts pēc noklusējuma nopirktajiem produktiem un importētajiem no EEK (izmantots, ja tas nav noteikts produkta lapā) ACCOUNTING_PRODUCT_SOLD_ACCOUNT=Grāmatvedības konts pēc noklusējuma pārdotajiem produktiem (izmanto, ja produkta lapā nav noteikts). ACCOUNTING_PRODUCT_SOLD_INTRA_ACCOUNT=Grāmatvedības konts pēc noklusējuma ražojumiem, ko pārdod EEK (izmanto, ja nav definēts produktu lapā) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Grāmatvedības konts pēc noklusējuma produktiem, kas pārdoti un eksportēti no EEK (izmantots, ja tas nav noteikts produkta lapā) + ACCOUNTING_SERVICE_BUY_ACCOUNT=Grāmatvedības konts pēc noklusējuma par nopirktajiem pakalpojumiem (lieto, ja tas nav noteikts pakalpojuma lapā) +ACCOUNTING_SERVICE_BUY_INTRA_ACCOUNT=Grāmatvedības konts pēc noklusējuma nopirktajiem pakalpojumiem EEK (izmantots, ja pakalpojuma lapā nav noteikts) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Grāmatvedības konts pēc noklusējuma par nopirktajiem pakalpojumiem un ievestajiem no EEK (tiek izmantots, ja pakalpojuma lapā tas nav noteikts) ACCOUNTING_SERVICE_SOLD_ACCOUNT=Grāmatvedības konts pēc noklusējuma pārdotajiem pakalpojumiem (izmanto, ja tas nav noteikts pakalpojuma lapā) ACCOUNTING_SERVICE_SOLD_INTRA_ACCOUNT=Grāmatvedības konts pēc noklusējuma par pakalpojumiem, kas pārdoti EEK (izmantots, ja nav definēts pakalpojumu lapā) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Grāmatvedības konts pēc noklusējuma par pakalpojumiem, kas pārdoti un eksportēti no EEK (tiek izmantoti, ja tie nav definēti pakalpojumu lapā) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Trešā puse nav ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Trešās puses konts nav definēts vai trešā persona nav zināma. Bloķēšanas kļūda. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Nav noteikts nezināms trešās puses konts un gaidīšanas konts. Bloķēšanas kļūda PaymentsNotLinkedToProduct=Maksājums nav saistīts ar kādu produktu / pakalpojumu +OpeningBalance=Opening balance ShowOpeningBalance=Rādīt sākuma atlikumu HideOpeningBalance=Slēpt sākuma atlikumu +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Kontu grupa PcgtypeDesc=Kontu grupa tiek izmantota kā iepriekš definēti “filtra” un “grupēšanas” kritēriji dažiem grāmatvedības pārskatiem. Piemēram, “IENĀKUMS” vai “IZDEVUMI” tiek izmantoti kā produktu uzskaites kontu grupas, lai izveidotu izdevumu / ienākumu pārskatu. +Reconcilable=Samierināms + TotalVente=Kopējais apgrozījums pirms nodokļu nomaksas TotalMarge=Kopējā pārdošanas starpība @@ -307,11 +317,13 @@ 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=Eksports LD Compta (v9 un jaunākiem) (pārbaude) +Modelcsv_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Eksports LD Compta (v10 un jaunākiem) Modelcsv_openconcerto=Eksportēt OpenConcerto (tests) Modelcsv_configurable=Eksportēt CSV konfigurējamu Modelcsv_FEC=Eksporta FEC Modelcsv_Sage50_Swiss=Eksports uz Sage 50 Šveici +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Kontu konts. Id ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Mode pārdošana OptionModeProductSellIntra=Pārdošanas veids, ko eksportē EEK OptionModeProductSellExport=Pārdošanas režīms citās valstīs OptionModeProductBuy=Mode pirkumi +OptionModeProductBuyIntra=Režīma pirkumi, kas importēti EEK +OptionModeProductBuyExport=Režīms, kas iegādāts importēts no citām valstīm OptionModeProductSellDesc=Parādiet visus produktus ar grāmatvedības kontu pārdošanai. OptionModeProductSellIntraDesc=Rādīt visus produktus ar grāmatvedības kontu pārdošanai EEK. OptionModeProductSellExportDesc=Rādīt visus produktus ar grāmatvedības kontu citiem ārvalstu pārdošanas darījumiem. OptionModeProductBuyDesc=Parādiet visus produktus ar grāmatvedības kontu pirkumiem. +OptionModeProductBuyIntraDesc=Rādīt visus produktus ar grāmatvedības kontu pirkumiem EEK. +OptionModeProductBuyExportDesc=Rādīt visus produktus ar grāmatvedības kontu citiem ārvalstu pirkumiem. CleanFixHistory=Noņemiet grāmatvedības kodu no rindām, kas nav konta diagrammās CleanHistory=Atiestatīt visas saistītās vērtības izvēlētajam gadam PredefinedGroups=Iepriekš definētas grupas @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Konts ir noņemts no grupas SaleLocal=Vietējā pārdošana SaleExport=Eksporta pārdošana SaleEEC=Pārdošana EEK +SaleEECWithVAT=Pārdošana EEK ar PVN nav spēkā, tāpēc domājams, ka tā NAV iekšējā tirdzniecība, un ieteiktais konts ir standarta produkta konts. +SaleEECWithoutVATNumber=Pārdošana EEK bez PVN, bet trešās puses PVN ID nav definēts. Mēs atteicamies no standarta produkta standarta konta. Ja nepieciešams, varat salabot trešās personas PVN ID vai produkta kontu. ## Dictionary Range=Grāmatvedības konta diapazons diff --git a/htdocs/langs/lv_LV/admin.lang b/htdocs/langs/lv_LV/admin.lang index d9ca5d4a47d..c06873de562 100644 --- a/htdocs/langs/lv_LV/admin.lang +++ b/htdocs/langs/lv_LV/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Web servera lietotājs/grupa NoSessionFound=Šķiet, ka jūsu PHP konfigurācija neļauj iekļaut aktīvās sesijas. Direktorija, kuru izmanto sesiju saglabāšanai (%s), var būt aizsargāta (piemēram, ar OS atļaujām vai PHP direktīvu open_basedir). DBStoringCharset=Datu bāzes kodējuma datu uzglabāšanai DBSortingCharset=Datu bāzes rakstzīmju kopa, lai kārtotu datus +HostCharset=Host charset ClientCharset=Klienta kodējums ClientSortingCharset=Klientu salīdzināšana WarningModuleNotActive=Modulim %s ir jābūt aktivizētam @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Piezīme: jūsu PHP konfigurācija pašlaik ierob NoMaxSizeByPHPLimit=Piezīme: Nav limits tiek noteikts jūsu PHP konfigurācijā MaxSizeForUploadedFiles=Maksimālais augšupielādējamo failu izmērs (0 nepieļaut failu augšupielādi) UseCaptchaCode=Izmantot grafisko kodu (CAPTCHA) pieteikšanās lapā -AntiVirusCommand= Pilns ceļš antivīrusa komandai -AntiVirusCommandExample= Piemēram ClamWin: C:\\PROGRA~1\\ClamWin\\bin\\clamscan.exe
    Piemēram ClamAV: /usr/bin/clamscan +AntiVirusCommand=Pilns ceļš antivīrusa komandai +AntiVirusCommandExample=ClamAv Daemon piemērs (nepieciešams clamav-daemon): / usr / bin / clamdscan
    ClamWin piemērs (ļoti ļoti lēns): c: \\ Progra ~ 1 \\ ClamWin \\ bin \\ clamscan.exe AntiVirusParam= Papildus komandrindas parametri -AntiVirusParamExample= Piemērs ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" +AntiVirusParamExample=ClamAv Daemon piemērs: --fdpass
    ClamWin piemērs: --database = "C: \\ Program Files (x86) \\ ClamWin \\ lib" ComptaSetup=Uzskaites moduļa iestatīšana UserSetup=Lietotāju pārvaldības iestatīšana MultiCurrencySetup=Daudzvalūtu iestatījumi @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Iespēja bloķēta demo versijā FeatureAvailableOnlyOnStable=Funkcija ir pieejama tikai oficiālajā stabilā versijā BoxesDesc=Logrīki ir sastāvdaļas, kas parāda informāciju, kuru varat pievienot, lai personalizētu dažas lapas. Varat izvēlēties starp widget parādīšanu, izvēloties mērķa lapu un noklikšķinot uz Aktivizēt, vai noklikšķinot uz atkritnes, lai to atspējotu. OnlyActiveElementsAreShown=Tikai elementi no iespējotiem moduļiem tiek rādīti. -ModulesDesc=Moduļi / lietojumprogrammas nosaka, kādas funkcijas ir pieejamas programmatūrā. Daži moduļi pieprasa atļauju lietotājiem pēc moduļa aktivizēšanas. Noklikšķiniet uz ieslēgšanas / izslēgšanas pogas (moduļa beigās), lai iespējotu / atspējotu moduli / programmu. +ModulesDesc=Moduļi / lietojumprogrammas nosaka, kuras funkcijas ir pieejamas programmatūrā. Dažiem moduļiem pēc moduļa aktivizēšanas lietotājiem ir jāpiešķir atļaujas. Lai ieslēgtu vai deaktivizētu moduli / lietojumprogrammu, noklikšķiniet uz ieslēgšanas / izslēgšanas pogas %s . ModulesMarketPlaceDesc=Jūs varat atrast vairāk moduļu, lai lejupielādētu ārējās tīmekļa vietnēs internetā ... ModulesDeployDesc=Ja atļaujas jūsu failu sistēmā to atļauj, varat izmantot šo rīku, lai izvietotu ārēju moduli. Tad modulis būs redzams cilnē %s . ModulesMarketPlaces=Atrastt ārējo lietotni / moduļus @@ -212,6 +213,7 @@ CompatibleUpTo=Savietojams ar versiju %s NotCompatible=Šis modulis, šķiet, nav savietojams ar jūsu Dolibarr %s (Min %s - Max %s). CompatibleAfterUpdate=Šis modulis prasa atjaunināt Dolibarr %s (Min %s - Maks %s). SeeInMarkerPlace=Skatiet Marketplace +SeeSetupOfModule=See setup of module %s Updated=Atjaunots Nouveauté=Jaunums AchatTelechargement=Pirkt / lejupielādēt @@ -221,6 +223,7 @@ DoliPartnersDesc=Uzņēmumi, kas piedāvā pielāgotus izstrādātus moduļus va WebSiteDesc=Ārējās vietnes vairākiem papildinājumiem (bez kodols) moduļiem ... DevelopYourModuleDesc=Daži risinājumi, lai izstrādātu savu moduli ... URL=URL +RelativeURL=Relatīvais URL BoxesAvailable=Pieejamie logrīki BoxesActivated=Logrīki aktivizēti ActivateOn=Aktivizēt @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Izvēles rūtiņas ExtrafieldCheckBoxFromList=Izvēles rūtiņas no tabulas ExtrafieldLink=Saite uz objektu ComputedFormula=Aprēķinātais lauks -ComputedFormulaDesc=Šeit varat ievadīt formulu, izmantojot citas objekta īpašības vai jebkuru PHP kodējumu, lai iegūtu dinamisku aprēķināto vērtību. Jūs varat izmantot jebkuru PHP saderīgu formulu, ieskaitot "?" stāvokļa operators un šāds globāls objekts: $ db, $ conf, $ langs, $ mysoc, $ user, $ object .
    BRĪDINĀJUMS : tikai daži $ $ rekvizīti objekts var būt pieejams. Ja jums nav vajadzīgo īpašību, vienkārši ielādējiet objektu savā formulā, piemēram, otrajā piemērā.
    Izmantojot aprēķināto lauku, jūs nevarat ievadīt sev nekādu vērtību no saskarnes. Arī tad, ja ir sintakses kļūda, formula nevar atgriezties neko.

    Piemērs formulas:
    $ object-> id <10? apaļa ($ object-> id / 2, 2): ($ object-> id + 2 * $ user-> id) * (int) substr ($ mysoc-> zip, 1, 2)

    Piemērs, lai ielādētu objektu
    (($ reloadedobj = jauns Societe ($ db)) & & ($ reloadedobj-> ielādēt ($ obj-> id? $ Obj-> id: ($ obj-> rowid? $ Obj-> rowid: $ object-> id))> 0))? $ reloadedobj-> array_options ['options_extrafieldkey'] * $ reloadedobj-> capital / 5: '-1'

    Cits piemērs formulas, lai piespiestu objektu slodzi un tā mātes objektu:
    (($ reloadedobj = jauns uzdevums ($ db)) && ($ reloadedobj-> fetch ($ object-> id)> 0) & & ($ secondloadedobj = jauns projekts ($ db)) & & ($ secondloadedobj-> fetch ($ reloadedobj-> fk_project )> 0))? $ secondloadedobj-> ref: 'Vecāku projekts nav atrasts' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Veikt aprēķinātu lauku ComputedpersistentDesc=Aprēķinātie papildu lauki tiks saglabāti datubāzē, taču vērtība tiks pārrēķināta tikai tad, kad mainīsies šī lauka objekts. Ja aprēķinātais lauks ir atkarīgs no citiem objektiem vai globāliem datiem, šī vērtība var būt nepareiza! ExtrafieldParamHelpPassword=Atstājot šo lauku tukšu, tas nozīmē, ka šī vērtība tiks saglabāta bez šifrēšanas (laukam jābūt paslēptai tikai ar zvaigznīti uz ekrāna).
    Iestatiet 'auto', lai izmantotu noklusējuma šifrēšanas kārtulu, lai saglabātu paroli datubāzē (pēc tam vērtība lasīt būs ashh tikai, nav iespējams izgūt sākotnējo vērtību) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Saglabājiet tukšu, lai izmantotu noklusēto vērtību DefaultLink=Noklusējuma saite SetAsDefault=Iestatīt kā noklusējumu ValueOverwrittenByUserSetup=Uzmanību, šī vērtība var pārrakstīt ar lietotāja konkrētu uzstādīšanu (katrs lietotājs var iestatīt savu klikšķini lai zvanītu URL) -ExternalModule=Ārējais modulis - Instalēts direktorijā %s +ExternalModule=Ārējais modulis +InstalledInto=Instalēta direktorijā %s BarcodeInitForthird-parties=Masveida svītru kodu veidošana trešajām personām BarcodeInitForProductsOrServices=Masveida svītrkodu veidošana produktu vai pakalpojumu atiestatīšana CurrentlyNWithoutBarCode=Pašlaik jums ir %s ierakstu %s %s bez definēta svītrukoda. @@ -947,7 +951,7 @@ DictionaryCanton=Valstis/provinces DictionaryRegion=Reģions DictionaryCountry=Valstis DictionaryCurrency=Valūtas -DictionaryCivility=Pilsonības nosaukums +DictionaryCivility=Goda tituli DictionaryActions=Darba kārtības pasākumu veidi DictionarySocialContributions=Sociālo vai nodokļu nodokļu veidi DictionaryVAT=PVN likmes vai pārdošanas procentu likmes @@ -988,6 +992,7 @@ VATIsNotUsedDesc=Pēc noklusējuma piedāvātais pārdošanas nodoklis ir 0, ko VATIsUsedExampleFR=Francijā tas nozīmē uzņēmumus vai organizācijas, kurām ir reāla fiskālā sistēma (vienkāršota reāla vai reāla). Sistēma, kurā izmanto PVN. VATIsNotUsedExampleFR=Francijā tas nozīmē asociācijas, kas nav deklarētas par tirdzniecības nodokli, vai uzņēmumi, organizācijas vai brīvās profesijas, kas izvēlējušās mikrouzņēmumu fiskālo sistēmu (pārdošanas nodoklis franšīzē) un samaksājuši franšīzes pārdošanas nodokli bez pārdošanas nodokļa deklarācijas. Ar šo izvēli rēķinos būs redzama atsauce "Nav piemērojams pārdošanas nodoklis - CGI 293.B pants". ##### Local Taxes ##### +TypeOfSaleTaxes=Tirdzniecības nodokļa veids LTRate=Likme LocalTax1IsNotUsed=Nelietot otru nodokli LocalTax1IsUsedDesc=Izmantojiet otra veida nodokļus (izņemot pirmo) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=IRPF likme pēc noklusējuma, veidojot izredzes, rēķinus LocalTax2IsNotUsedDescES=Pēc noklusējuma ierosinātā IRPF ir 0. Beigas varu. LocalTax2IsUsedExampleES=Spānijā, ārštata un neatkarīgi profesionāļi, kas sniedz pakalpojumus un uzņēmumiem, kuri ir izvēlējušies nodokļu sistēmu moduļus. LocalTax2IsNotUsedExampleES=Spānijā šie uzņēmumi nav pakļauti moduļu nodokļu sistēmai. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Izmantojiet nodokļu zīmogu +UseRevenueStampExample=Nodokļu markas vērtību pēc noklusējuma definē vārdnīcu iestatīšanā (%s - %s - %s) CalcLocaltax=Ziņojumi par vietējiem nodokļiem CalcLocaltax1=Pārdošana - pirkumi CalcLocaltax1Desc=Local Taxes reports are calculated with the difference between localtaxes sales and localtaxes purchases @@ -1018,6 +1026,7 @@ CalcLocaltax2=Pirkumi CalcLocaltax2Desc=Local Taxes reports are the total of localtaxes purchases CalcLocaltax3=Pārdošanas CalcLocaltax3Desc=Local Taxes reports are the total of localtaxes sales +NoLocalTaxXForThisCountry=Saskaņā ar nodokļu iestatīšanu (sk. %s - %s - %s), jūsu valstij šāda veida nodokļi nav jāizmanto. LabelUsedByDefault=Label izmantots pēc noklusējuma, ja nav tulkojuma var atrast kodu LabelOnDocuments=Dokumentu marķējums LabelOrTranslationKey=Uzlīme vai tulkošanas taustiņš @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Izdevumu pārskats kurš jāapstiprina Delays_MAIN_DELAY_HOLIDAYS=Atstājiet lūgumus apstiprināt SetupDescription1=Pirms sākat lietot Dolibarr, jānosaka daži sākotnējie parametri un moduļi ir iespējoti / konfigurēti. SetupDescription2=Šīs divas sadaļas ir obligātas (divi pirmie ieraksti iestatīšanas izvēlnē): -SetupDescription3=  %s -> %s
    Pamata parametri, ko izmanto, lai pielāgotu lietojumprogrammas noklusējuma uzvedību (piem., Valstij raksturīgās funkcijas). -SetupDescription4=  %s -> %s
    Šī programmatūra ir daudzu moduļu / programmu komplekts, kas ir vairāk vai mazāk neatkarīgi. Moduļiem, kas atbilst jūsu vajadzībām, jābūt iespējotiem un konfigurētiem. Jaunie vienumi / opcijas tiek pievienotas izvēlnēm, aktivizējot moduli. +SetupDescription3=  %s -> %s

    Pamata parametri, ko izmanto, lai pielāgotu ar jūsu lietojumprogrammu saistīto noklusējuma uzvedību (piemēram, valstij). +SetupDescription4=  %s -> %s

    Šī programmatūra ir daudzu moduļu / lietojumprogrammu komplekts. Ar jūsu vajadzībām saistītajiem moduļiem jābūt iespējotiem un konfigurētiem. Parādīsies izvēlnes ieraksti, aktivizējot šos moduļus. SetupDescription5=Citi iestatījumu izvēlnes ieraksti pārvalda izvēles parametrus. LogEvents=Drošības audita notikumi Audit=Audits @@ -1128,7 +1137,7 @@ LogEventDesc=Iespējot konkrētu drošības notikumu reģistrēšanu. Administra AreaForAdminOnly=Iestatīšanas parametrus var iestatīt tikai administratora lietotāji . SystemInfoDesc=Sistēmas informācija ir dažādi tehniskā informācija jums tikai lasīšanas režīmā un redzama tikai administratoriem. SystemAreaForAdminOnly=Šī sadaļa ir pieejama tikai administratora lietotājiem. Dolibarr lietotāja atļaujas nevar mainīt šo ierobežojumu. -CompanyFundationDesc=Rediģējiet uzņēmuma / vienības informāciju. Lapas apakšā noklikšķiniet uz pogas "%s". +CompanyFundationDesc=Rediģējiet sava uzņēmuma / organizācijas informāciju. Kad tas ir izdarīts, noklikšķiniet uz pogas "%s" lapas apakšā. AccountantDesc=Ja jums ir ārējais grāmatvedis / grāmatvedis, varat rediģēt šeit savu informāciju. AccountantFileNumber=Grāmatveža kods DisplayDesc=Šeit var mainīt parametrus, kas ietekmē Dolibarr izskatu un uzvedību. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Noteikumi paroļu ģenerēšanai un apstiprināšanai DisableForgetPasswordLinkOnLogonPage=Nerādīt saiti "Aizmirsta parole" pieteikšanās lapā UsersSetup=Lietotāju moduļa uzstādīšana UserMailRequired=Lai izveidotu jaunu lietotāju, nepieciešams e-pasts +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Dokumentu veidnes dokumentiem, kas ģenerēti no lietotāja ieraksta +GroupsDocModules=Dokumentu veidnes dokumentiem, kas ģenerēti no grupas ieraksta ##### HRM setup ##### HRMSetup=HRM moduļa iestatīšana ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Rēķina dokumentu modeļi BillsPDFModulesAccordindToInvoiceType=Rēķinu dokumentu modeļi atbilstoši rēķina veidam PaymentsPDFModules=Maksājumu dokumentu paraugi ForceInvoiceDate=Force rēķina datumu apstiprināšanas datuma -SuggestedPaymentModesIfNotDefinedInInvoice=Ieteicamie maksājumi režīmā rēķinā pēc noklusējuma, ja nav definēts rēķins +SuggestedPaymentModesIfNotDefinedInInvoice=Ierosinātais maksājuma režīms rēķinā pēc noklusējuma, ja tas nav definēts rēķinā SuggestPaymentByRIBOnAccount=Iesakiet norēķinu ar norēķinu kontu SuggestPaymentByChequeToAddress=Ieteikt maksājumu ar čeku uz FreeLegalTextOnInvoices=Brīvs teksts uz rēķiniem @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Pārdevēja maksājumu iestatīšana PropalSetup=Commercial priekšlikumi modulis uzstādīšana ProposalsNumberingModules=Komerciālie priekšlikumu numerācijas 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 +SuggestedPaymentModesIfNotDefinedInProposal=Piedāvāto maksājumu režīms pēc noklusējuma, ja tas nav definēts priekšlikumā FreeLegalTextOnProposal=Brīvais teksts komerciālajos priekšlikumos WatermarkOnDraftProposal=Ūdenszīme projektu komerciālo priekšlikumu (none ja tukšs) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal @@ -1322,6 +1334,7 @@ WAREHOUSE_ASK_WAREHOUSE_DURING_ORDER=Pieprasīt noliktavas avotu pasūtīšanai ##### Suppliers Orders ##### BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_ORDER=Pieprasiet bankas konta galamērķi pirkuma pasūtījumā ##### Orders ##### +SuggestedPaymentModesIfNotDefinedInOrder=Ieteiktais maksājuma režīms pārdošanas pasūtījumā pēc noklusējuma, ja tas pasūtījumā nav definēts OrdersSetup=Pārdošanas pasūtījumu pārvaldības iestatīšana OrdersNumberingModules=Pasūtījumu numerācijas modeļi OrdersModelModule=Pasūtīt dokumenti modeļi @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Slēpt attēlus augšējā izvēlnē LeftMenuBackgroundColor=Fona krāsa kreisajai izvēlnei BackgroundTableTitleColor=Fona krāsa tabulas virsraksta līnijai BackgroundTableTitleTextColor=Teksta krāsa tabulas virsraksta rindai +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Background color for odd table lines BackgroundTableLineEvenColor=Background color for even table lines MinimumNoticePeriod=Minimum notice period (Your leave request must be done before this delay) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Ziņojuma ID nav atrasta Dolibarr atsauce FormatZip=Pasta indekss MainMenuCode=Izvēlnes ievades kods (mainmenu) ECMAutoTree=Rādīt automātisko ECM koku -OperationParamDesc=Definējiet vērtības, kas izmantojamas darbībai vai kā iegūt vērtības. Piemēram:
    objproperty1 = SET: abc
    objproperty1 = SET: vērtība, aizvietojot __objproperty1__
    objproperty3 = SETIFEMPTY: abc
    objproperty4 = EXTRACT: HEADER: X-Myheaderkey. * [^ s] + (. *)
    options_myextrafield = EKSTRAKTS: TEMATI: ([^ s] *)
    object.objproperty5 = EXTRACT: ĶERMEŅA: Mans uzņēmuma nosaukums ir ([^ s] *)

    Lieto ; atdalīt, lai iegūtu vai iestatītu vairākas īpašības. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Darba laiks OpeningHoursDesc=Ievadiet šeit sava uzņēmuma pastāvīgo darba laiku. ResourceSetup=Resursu moduļa konfigurēšana @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Brīdinājums, augstākas vērtības pa ModuleActivated=Modulis %s ir aktivizēts un palēnina saskarni EXPORTS_SHARE_MODELS=Eksporta modeļi ir kopīgi ar visiem ExportSetup=Moduļa Eksportēšana iestatīšana +ImportSetup=Moduļa importēšanas iestatīšana InstanceUniqueID=Unikāls gadījuma ID SmallerThan=Mazāks nekā LargerThan=Lielāks nekā @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Izveidojiet anonīmu Ping '+1' Dolibarr pamata serverim (to ve FeatureNotAvailableWithReceptionModule=Funkcija nav pieejama, ja ir iespējota moduļa uztveršana EmailTemplate=E-pasta veidne EMailsWillHaveMessageID=E-pastam būs tags “Atsauces”, kas atbilst šai sintaksei -PDF_USE_ALSO_LANGUAGE_CODE=Ja vēlaties, lai jūsu PDF failā kāds teksta nosaukums tiktu dublēts 2 dažādās valodās tajā pašā ģenerētajā PDF failā, jums šeit ir jāiestata šī otrā valoda, lai ģenerētais PDF saturētu vienā un tajā pašā lappusē 2 dažādas valodas, vienu izvēloties, ģenerējot PDF, un šo, vienu (tikai dažas PDF veidnes to atbalsta). Vienā PDF formātā atstājiet tukšumu 1 valodā. +PDF_USE_ALSO_LANGUAGE_CODE=Ja vēlaties, lai daži PDF faili tiktu dublēti 2 dažādās valodās tajā pašā ģenerētajā PDF failā, jums šeit ir jāiestata šī otrā valoda, lai ģenerētais PDF saturētu vienā un tajā pašā lappusē 2 dažādas valodas, vienu izvēloties, ģenerējot PDF, un šo ( tikai dažas PDF veidnes to atbalsta). Vienā PDF formātā atstājiet tukšumu 1 valodā. FafaIconSocialNetworksDesc=Šeit ievadiet FontAwesome ikonas kodu. Ja jūs nezināt, kas ir FontAwesome, varat izmantot vispārīgo vērtību fa-adrešu grāmata. +RssNote=Piezīme. Katra RSS plūsmas definīcija nodrošina logrīku, kas jums jāiespējo, lai tas būtu pieejams informācijas panelī +JumpToBoxes=Pāriet uz Iestatīšana -> logrīki +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/lv_LV/bills.lang b/htdocs/langs/lv_LV/bills.lang index 3e9b4eec377..ec1e589cc9e 100644 --- a/htdocs/langs/lv_LV/bills.lang +++ b/htdocs/langs/lv_LV/bills.lang @@ -59,16 +59,16 @@ SupplierBill=Piegādātāja rēķins SupplierBills=piegādātāju rēķini Payment=Maksājums PaymentBack=Atmaksa -CustomerInvoicePaymentBack=Maksājumu atpakaļ +CustomerInvoicePaymentBack=Atmaksa Payments=Maksājumi PaymentsBack=Atmaksas paymentInInvoiceCurrency=rēķinu valūtā PaidBack=Atmaksāts atpakaļ DeletePayment=Izdzēst maksājumu ConfirmDeletePayment=Vai tiešām vēlaties dzēst šo maksājumu? -ConfirmConvertToReduc=Vai vēlaties konvertēt šo %s par absolūto atlaidi? +ConfirmConvertToReduc=Vai vēlaties pārveidot šo %s par pieejamu kredītu? ConfirmConvertToReduc2=Summa tiks saglabāta starp visām atlaidēm un to var izmantot kā atlaidi pašreizējam vai nākotnes rēķinam par šo klientu. -ConfirmConvertToReducSupplier=Vai vēlaties konvertēt šo %s par absolūto atlaidi? +ConfirmConvertToReducSupplier=Vai vēlaties pārveidot šo %s par pieejamu kredītu? ConfirmConvertToReducSupplier2=Summa tiks saglabāta starp visām atlaidēm un to var izmantot kā atlaidi pašreizējam vai nākamajam rēķinam par šo pārdevēju. SupplierPayments=Pārdevēja maksājumi ReceivedPayments=Saņemtie maksājumi @@ -209,17 +209,13 @@ 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=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=Parādiet maksājuma rēķinu -ShowInvoiceSituation=Rādīt situāciju rēķinu UseSituationInvoices=Atļaut rēķinu par situāciju UseSituationInvoicesCreditNote=Atļaut situācijas rēķina kredītvēstuli Retainedwarranty=Saglabāta garantija +AllowedInvoiceForRetainedWarranty=Saglabātā garantija, kas izmantojama šāda veida rēķinos RetainedwarrantyDefaultPercent=Saglabātais garantijas noklusējuma procents +RetainedwarrantyOnlyForSituation=Padariet “saglabāto garantiju” pieejamu tikai faktūrrēķiniem +RetainedwarrantyOnlyForSituationFinal=Situācijas faktūrrēķinos globālo “ieturētās garantijas” atskaitījumu piemēro tikai galīgajai situācijai ToPayOn=Maksāt %s toPayOn=maksāt pa tālruni %s RetainedWarranty=Saglabātā garantija @@ -230,7 +226,6 @@ setretainedwarranty=Iestatiet saglabāto garantiju setretainedwarrantyDateLimit=Iestatiet saglabātā garantijas datuma ierobežojumu RetainedWarrantyDateLimit=Saglabātais garantijas termiņš RetainedWarrantyNeed100Percent=Situācijas rēķinam jābūt 100%% gaitai, lai tas tiktu parādīts PDF formātā -ShowPayment=Rādīt maksājumu AlreadyPaid=Jau samaksāts AlreadyPaidBack=Jau atgriezta nauda AlreadyPaidNoCreditNotesNoDeposits=Jau samaksāts (bez kredīta piezīmes un noguldījumiem) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Izveidots no veidnes rēķina %s WarningInvoiceDateInFuture=Brīdinājums! Rēķina datums ir lielāks par pašreizējo datumu WarningInvoiceDateTooFarInFuture=Brīdinājums, rēķina datums ir pārāk tālu no pašreizējā datuma ViewAvailableGlobalDiscounts=Skatīt pieejamās atlaides +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Statuss PaymentConditionShortRECEP=Pienākas pēc saņemšanas @@ -509,7 +505,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ņēmumu zīmogs +RevenueStamp=Nodokļa 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 @@ -575,3 +571,4 @@ AutoFillDateTo=Iestatīt pakalpojuma līnijas beigu datumu ar nākamo rēķina d AutoFillDateToShort=Iestatīt beigu datumu MaxNumberOfGenerationReached=Maksimālais gen. sasniedza BILL_DELETEInDolibarr=Rēķins dzēsts +BILL_SUPPLIER_DELETEInDolibarr=Piegādātāja rēķins ir izdzēsts diff --git a/htdocs/langs/lv_LV/blockedlog.lang b/htdocs/langs/lv_LV/blockedlog.lang index c4b286ab723..237dac224bc 100644 --- a/htdocs/langs/lv_LV/blockedlog.lang +++ b/htdocs/langs/lv_LV/blockedlog.lang @@ -5,10 +5,10 @@ Fingerprints=Arhivēti notikumi un pirkstu nospiedumi FingerprintsDesc=Šis ir rīks, lai pārlūkotu vai izvelētu nemainīgus žurnālus. Nemaināmie žurnāli tiek ģenerēti un lokāli arhivēti īpašajā tabulā, reāllaikā, kad ieraksta biznesa notikumu. Varat izmantot šo rīku, lai eksportētu šo arhīvu un saglabātu to ārējam atbalstam (dažas valstis, piemēram, Francija, lūdz jums to darīt katru gadu). Ņemiet vērā, ka šī žurnāla tīrīšana nav funkcija, un visas izmaiņas, kas tika mēģināt izdarīt tieši šajā žurnālā (piemēram, hacker), tiek ziņotas ar nederīgu pirkstu nospiedumu. Ja jums patiešām ir jāiztīra šī tabula, jo izmantojāt savu pieteikumu demonstrācijas / pārbaudes nolūkam un vēlaties tīrīt savus datus, lai sāktu savu produkciju, varat lūgt savam tālākpārdevējam vai integratoram atjaunot datu bāzi (visas jūsu dati tiks noņemti). CompanyInitialKey=Uzņēmuma sākotnējā atslēga (ģeēzijas bloks) BrowseBlockedLog=Nepārveidojami žurnāli -ShowAllFingerPrintsMightBeTooLong=Rādīt visus arhivētos žurnālus (var būt garš) +ShowAllFingerPrintsMightBeTooLong=Rādīt visus arhivētos žurnālus (var būt daudz) ShowAllFingerPrintsErrorsMightBeTooLong=Rādīt visus nederīgos arhīva žurnālus (var būt garš) DownloadBlockChain=Lejupielādējiet pirkstu nospiedumus -KoCheckFingerprintValidity=Arhivēts žurnāla ieraksts nav derīgs. Tas nozīmē, ka kāds (hakeris?) Pēc tam, kad tas tika ierakstīts, ir mainījis dažus datus, vai arī ir izdzēsis iepriekšējo arhivēto ierakstu (pārbaudiet, vai līnija ir ar iepriekšējo #). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Arhivēts žurnāla ieraksts ir derīgs. Dati par šo līniju netika mainīti un ieraksts seko iepriekšējam. OkCheckFingerprintValidityButChainIsKo=Arhivētais žurnāls šķiet derīgs salīdzinājumā ar iepriekšējo, bet ķēde agrāk tika bojāta. AddedByAuthority=Uzglabāti tālvadības iestādē diff --git a/htdocs/langs/lv_LV/cashdesk.lang b/htdocs/langs/lv_LV/cashdesk.lang index fa71099764a..690e8e84d6f 100644 --- a/htdocs/langs/lv_LV/cashdesk.lang +++ b/htdocs/langs/lv_LV/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Pievienot šo preci RestartSelling=Iet atpakaļ uz pārdošanu SellFinished=Pārdošana pabeigta PrintTicket=Drukāt biļeti +SendTicket=Send ticket NoProductFound=Raksts nav atrasts ProductFound=Produkts atrasts NoArticle=Nav preču @@ -48,6 +49,7 @@ Footer=Kājene AmountAtEndOfPeriod=Summa perioda beigās (diena, mēnesis vai gads) TheoricalAmount=Teorētiskā summa RealAmount=Reālā summa +CashFence=Cash fence CashFenceDone=Naudas žogs veikts par periodu NbOfInvoices=Rēķinu skaits Paymentnumpad=Padeves veids maksājuma ievadīšanai @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS ir nepieciešama produktu kategorija OrderNotes=Pasūtījuma piezīmes CashDeskBankAccountFor=Noklusējuma konts, ko izmantot maksājumiem NoPaimementModesDefined=TakePOS konfigurācijā nav definēts paiment režīms -TicketVatGrouped=Grupējiet PVN pēc likmes biļetēs -AutoPrintTickets=Automātiski drukāt biļetes +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Iespējot bāra vai restorāna funkcijas ConfirmDeletionOfThisPOSSale=Vai jūsu apstiprinājums ir šīs pašreizējās pārdošanas dzēšana? ConfirmDiscardOfThisPOSSale=Vai vēlaties atmest šo pašreizējo izpārdošanu? @@ -87,7 +90,19 @@ HeadBar=Galvene SortProductField=Lauks produktu šķirošanai Browser=Pārlūkprogramma BrowserMethodDescription=Vienkārša un ērta kvīts drukāšana. Tikai daži parametri, lai konfigurētu kvīti. Drukājiet, izmantojot pārlūku. -TakeposConnectorMethodDescription=Ārējs modulis ar papildu funkcijām. Iespēja drukāt no mākoņa. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Drukas metode ReceiptPrinterMethodDescription=Jaudīga metode ar daudziem parametriem. Pilnībā pielāgojams ar veidnēm. Nevar izdrukāt no mākoņa. ByTerminal=Ar termināli +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/lv_LV/companies.lang b/htdocs/langs/lv_LV/companies.lang index 9d1a5d84bce..5f304f004e7 100644 --- a/htdocs/langs/lv_LV/companies.lang +++ b/htdocs/langs/lv_LV/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted=Kompānija "%s" dzēsta no datubāzes. ListOfContacts=Kontaktu / adrešu saraksts ListOfContactsAddresses=Kontaktu/adrešu saraksts ListOfThirdParties=Trešo personu saraksts -ShowCompany=Rādīt trešo personu ShowContact=Rādīt kontaktu ContactsAllShort=Visi (Bez filtra) ContactType=Kontakta veids @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=Tirdzniecības pārstāvja vārds SaleRepresentativeLastname=Tirdzniecības pārstāvja uzvārds ErrorThirdpartiesMerge=Pašalot trešās puses, radās kļūda. Lūdzu, pārbaudiet žurnālu. Izmaiņas ir atgrieztas. NewCustomerSupplierCodeProposed=Klienta vai pārdevēja kods jau ir izmantots, tiek piedāvāts jauns kods +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Maksājuma veids - Klients PaymentTermsCustomer=Maksājuma noteikumi - Klients diff --git a/htdocs/langs/lv_LV/compta.lang b/htdocs/langs/lv_LV/compta.lang index fd3f7210d76..7df0adea9f6 100644 --- a/htdocs/langs/lv_LV/compta.lang +++ b/htdocs/langs/lv_LV/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=Skatīt %s maksājumu analīzi %s, lai aprēķinātu SeeReportInDueDebtMode=Skatīt %srēķinu analīzi %s, lai aprēķiniem izmantotu zināmos reģistrētos rēķinus, pat ja tie vēl nav uzskaitīti Virsgrāmatā. SeeReportInBookkeepingMode=Lai skatītu Grāmatvedības grāmatvedības tabulu , skatiet %sBookBooking report%s RulesAmountWithTaxIncluded=- Uzrādītas summas ir ar visiem ieskaitot nodokļus -RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the validation date of invoices and VAT and on the due date for expenses. For salaries defined with Salary module, the value date of payment is used. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- It includes the real payments made on invoices, expenses, VAT and salaries.
    - It is based on the payment dates of the invoices, expenses, VAT and salaries. The donation date for donation. -RulesCADue=- Tas ietver klienta rēķinus par to, vai tie ir samaksāti vai nē.
    - Tas ir balstīts uz šo rēķinu apstiprināšanas datumu.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- Tas ietver visus no klientiem saņemto rēķinu faktiskos maksājumus.
    - Tas ir balstīts uz šo rēķinu apmaksas datumu RulesCATotalSaleJournal=Tas ietver visas kredītlīnijas no pārdošanas žurnāla. RulesAmountOnInOutBookkeepingRecord=Tas ietver jūsu Ledger ierakstu ar grāmatvedības kontiem, kuriem ir grupa "IZDEVUMS" vai "IENĀKUMS" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Apgrozījums, par kuru tiek aprēķināta pārdošanas nodokļ TurnoverCollectedbyVatrate=Apgrozījums, kas iegūts, pārdodot nodokli PurchasebyVatrate=Iegāde pēc pārdošanas nodokļa likmes LabelToShow=Īsais nosaukums +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/lv_LV/errors.lang b/htdocs/langs/lv_LV/errors.lang index e60b9218837..91d0f6444b2 100644 --- a/htdocs/langs/lv_LV/errors.lang +++ b/htdocs/langs/lv_LV/errors.lang @@ -59,6 +59,7 @@ 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. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Izmērs ir pārāk garš int tipam (%s cipari maksimums) ErrorSizeTooLongForVarcharType=Izmērs ir pārāk garš (%s simboli maksimums) ErrorNoValueForSelectType=Lūdzu izvēlieties vērtību no saraksta @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Kļūda, tulkotās lapas valoda ErrorBatchNoFoundForProductInWarehouse=Noliktavā "%s" nav atrasta partija / sērija produktam "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=Šai partijai/sērijai nav pietiekams daudzums produkta "%s" noliktavā "%s". ErrorOnlyOneFieldForGroupByIsPossible=“Grupēt pēc” ir iespējams tikai 1 lauks (citi tiek atmesti) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # Warnings WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Jūsu PHP parametrs upload_max_filesize (%s) ir augstāks nekā PHP parametrs post_max_size (%s). Šī nav konsekventa iestatīšana. 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/lv_LV/install.lang b/htdocs/langs/lv_LV/install.lang index 4d25eef8309..13f5ab1e7fc 100644 --- a/htdocs/langs/lv_LV/install.lang +++ b/htdocs/langs/lv_LV/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=Šis PHP atbalsta Curl. PHPSupportCalendar=Šis PHP atbalsta kalendāru paplašinājumus. PHPSupportUTF8=Šis PHP atbalsta UTF8 funkcijas. PHPSupportIntl=Šī PHP atbalsta Intl funkcijas. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=Šis PHP atbalsta %s funkcijas. PHPMemoryOK=Jūsu PHP maksimālā sesijas atmiņa ir iestatīts uz %s. Tas ir pietiekami. PHPMemoryTooLow=Jūsu PHP max sesijas atmiņa ir iestatīta uz %s baitiem. Tas ir pārāk zems. Mainiet php.ini, lai iestatītu memory_limit parametru vismaz %s baitiem. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=Jūsu PHP instalācija neatbalsta Curl. ErrorPHPDoesNotSupportCalendar=Jūsu PHP instalācija neatbalsta php kalendāra paplašinājumus. ErrorPHPDoesNotSupportUTF8=Jūsu PHP instalācija neatbalsta UTF8 funkcijas. Dolibarr nevar darboties pareizi. Atrisiniet to pirms Dolibarr instalēšanas. ErrorPHPDoesNotSupportIntl=Jūsu PHP instalācija neatbalsta Intl funkcijas. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Jūsu PHP instalācija neatbalsta %s funkcijas. ErrorDirDoesNotExists=Katalogs %s neeksistē. ErrorGoBackAndCorrectParameters=Atgriezieties un pārbaudiet/labojiet parametrus. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=Pieteikums mēģināja pašupjaunināt, bet insta YouTryInstallDisabledByFileLock=Lietojumprogramma mēģināja pašatjaunināties, bet instalēšanas/atjaunināšanas lapas tika bloķētas drošībai (ar bloķēšanas failu install.lock Dolibarr dokumentu direktorijā).
    ClickHereToGoToApp=Noklikšķiniet šeit, lai pārietu uz savu pieteikumu ClickOnLinkOrRemoveManualy=Noklikšķiniet uz šīs saites. Ja jūs vienmēr redzat šo pašu lapu, dokumenta direktorijā ir jāizņem / jānomaina faila instal.lock. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/lv_LV/link.lang b/htdocs/langs/lv_LV/link.lang index 2f249ac15cf..e649eb2874b 100644 --- a/htdocs/langs/lv_LV/link.lang +++ b/htdocs/langs/lv_LV/link.lang @@ -7,4 +7,5 @@ ErrorFileNotLinked=Failu nevar salinkot LinkRemoved=Saite %s tika dzēsta ErrorFailedToDeleteLink= Kļūda dzēšot saiti '%s' ErrorFailedToUpdateLink= Kļūda atjaunojot saiti '%s' -URLToLink=URL to link +URLToLink=Saites uz URL +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/lv_LV/mails.lang b/htdocs/langs/lv_LV/mails.lang index 0155c024f92..f9c3b411857 100644 --- a/htdocs/langs/lv_LV/mails.lang +++ b/htdocs/langs/lv_LV/mails.lang @@ -18,7 +18,7 @@ MailCCC=Kešatmiņas kopija MailTopic=E-pasta tēma MailText=Ziņa MailFile=Pievienotie faili -MailMessage=E-pasta ķermenis +MailMessage=E-pasta saturs SubjectNotIn=Nav priekšmetā BodyNotIn=Nav ķermenī ShowEMailing=Rādīt e-pastus @@ -97,7 +97,7 @@ SendingFromWebInterfaceIsNotAllowed=Sūtīšana no tīmekļa saskarnes nav atļa LineInFile=Līnija %s failā RecipientSelectionModules=Definētie pieprasījumi saņēmēja izvēles MailSelectedRecipients=Atlasītie saņēmēji -MailingArea=Emailings platība +MailingArea=E-pastu nosūtīšanas sadaļa LastMailings=Jaunākie %s e-pasta ziņojumi TargetsStatistics=Mērķu statistika NbOfCompaniesContacts=Unikālie kontakti/adreses @@ -116,10 +116,10 @@ NbOfEMailingsReceived=Masu emailings saņemti NbOfEMailingsSend=Masveida e-pasts izsūtīts IdRecord=Ieraksta ID DeliveryReceipt=Delivery Ack. -YouCanUseCommaSeparatorForSeveralRecipients=Jūs varat izmantot komatu atdalītāju, lai norādītu vairākus adresātus. +YouCanUseCommaSeparatorForSeveralRecipients=Jūs varat izmantot komatu kā atdalītāju, lai norādītu vairākus adresātus. TagCheckMail=Izsekot pasta atvēršanu TagUnsubscribe=Atrakstīšanās saite -TagSignature=Nosūtītāja lietotāja paraksts +TagSignature=Nosūtītāja paraksts EMailRecipient=Adresāta e-pasts TagMailtoEmail=Saņēmēja e-pasta adrese (ieskaitot html "mailto:" saiti) NoEmailSentBadSenderOrRecipientEmail=No email sent. Bad sender or recipient email. Verify user profile. @@ -164,7 +164,7 @@ NoContactWithCategoryFound=Nav kontaktpersonas / adreses ar atrastu kategoriju NoContactLinkedToThirdpartieWithCategoryFound=Nav kontaktpersonas / adreses ar atrastu kategoriju OutGoingEmailSetup=Izejošā e-pasta iestatīšana InGoingEmailSetup=Ienākošā e-pasta iestatīšana -OutGoingEmailSetupForEmailing=Izejošā e-pasta iestatīšana (masveida e-pasta sūtīšanai) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Noklusējuma izejošā e-pasta iestatīšana Information=Informācija ContactsWithThirdpartyFilter=Kontakti ar trešās puses filtru diff --git a/htdocs/langs/lv_LV/main.lang b/htdocs/langs/lv_LV/main.lang index b9c4d8fdbcf..ddd5125278a 100644 --- a/htdocs/langs/lv_LV/main.lang +++ b/htdocs/langs/lv_LV/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Saglabājiet un palieciet SaveAndNew=Saglabāt un jaunu TestConnection=Savienojuma pārbaude ToClone=Klonēt +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Izvēlieties datus, kurus vēlaties klonēt: NoCloneOptionsSpecified=Nav datu klons noteikts. Of=no @@ -829,6 +830,8 @@ Gender=Dzimums Genderman=Vīrietis Genderwoman=Sieviete ViewList=List view +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Mandatory Hello=Labdien GoodBye=Uz redzēšanos @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Izvēlieties diagrammas opcijas, lai izveidotu diagr Measures=Pasākumi XAxis=X ass YAxis=Y ass +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/lv_LV/modulebuilder.lang b/htdocs/langs/lv_LV/modulebuilder.lang index 88e0c5b2dc9..ed5c37a00ea 100644 --- a/htdocs/langs/lv_LV/modulebuilder.lang +++ b/htdocs/langs/lv_LV/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=Vārdnīcu ierakstu saraksts ListOfPermissionsDefined=Noteikto atļauju saraksts SeeExamples=Skatiet piemērus šeit EnabledDesc=Nosacījums, lai šis lauks būtu aktīvs (piemēri: 1 vai $ conf-> globāla-> MYMODULE_MYOPTION) -VisibleDesc=Vai lauks ir redzams? (Piemēri: 0 = nekad nav redzams, 1 = redzams sarakstā un izveidojiet / atjauniniet / skatiet veidlapas, 2 = ir redzams tikai sarakstā, 3 = ir redzams tikai izveides / atjaunināšanas / skata formā (nav sarakstā), 4 = ir redzams sarakstā un tikai atjaunināt / skatīt formu (neveidot), 5 = redzama tikai saraksta beigu skata formā (neveidot, ne atjaunināt.) Negatīvas vērtības līdzekļu lauka izmantošana pēc noklusējuma netiek parādīta sarakstā, bet to var atlasīt apskatei. Tas var būt izteiciens, piemēram:
    preg_match ('/ public /', $ _SERVER ['PHP_SELF'])? 0: 1
    ($ user-> rights-> holiday-> define_holiday? 1: 0) -DisplayOnPdfDesc=Parādiet šo lauku saderīgos PDF dokumentos. Varat pārvaldīt pozīciju ar lauku "Position".
    Pašlaik zināmie saderīgie PDF modeļi ir: eratosteēns +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Parādiet šo lauku saderīgos PDF dokumentos. Varat pārvaldīt pozīciju ar lauku "Position".
    Pašlaik zināms savietojamie PDF modeļi ir: Eratostens (rīkojums), Espadon (kuģis), sūkli (rēķini), ciāna (propal / citāts), Cornas (piegādātājs rīkojums)

    Par dokumenta:
    0 = nav redzams
    1 = displejs
    2 = parādīt tikai tad, ja nav iztukšot

    dokumentu līnijas:
    0 = nav redzama
    1 = parādīti kolonnā
    3 = displeja līnija apraksta slejā pēc apraksta
    4 = displeja apraksta ailē pēc tam, kad apraksts tikai tad, ja nav tukšs DisplayOnPdf=Displejs PDF formātā IsAMeasureDesc=Vai lauka vērtību var uzkrāties, lai kopsumma tiktu iekļauta sarakstā? (Piemēri: 1 vai 0) SearchAllDesc=Vai laukums tiek izmantots, lai veiktu meklēšanu no ātrās meklēšanas rīka? (Piemēri: 1 vai 0) diff --git a/htdocs/langs/lv_LV/multicurrency.lang b/htdocs/langs/lv_LV/multicurrency.lang index db7d0aaacdb..cb7103d1f51 100644 --- a/htdocs/langs/lv_LV/multicurrency.lang +++ b/htdocs/langs/lv_LV/multicurrency.lang @@ -18,3 +18,5 @@ MulticurrencyReceived=Saņemta oriģinālā valūta MulticurrencyRemainderToTake=Atlikušā summa, oriģināla valūta MulticurrencyPaymentAmount=Maksājuma summa, oriģinālajā valūtā AmountToOthercurrency=Summa līdz (konta saņemšanas valūtā) +CurrencyRateSyncSucceed=Valūtas kursa sinhronizācija ir veiksmīga +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Maksājumiem tiešsaistē izmantojiet dokumenta valūtu diff --git a/htdocs/langs/lv_LV/orders.lang b/htdocs/langs/lv_LV/orders.lang index 06afd8afee1..9c6ca231797 100644 --- a/htdocs/langs/lv_LV/orders.lang +++ b/htdocs/langs/lv_LV/orders.lang @@ -141,7 +141,7 @@ OrderByEMail=E-pasts OrderByWWW=Online OrderByPhone=Telefons # Documents models -PDFEinsteinDescription=Pilns pasūtījuma modelis (Eratosthene veidnes vecā ieviešana) +PDFEinsteinDescription=Pilns pasūtījuma modelis PDFEratostheneDescription=Pilns pasūtījuma modelis PDFEdisonDescription=Vienkāršs pasūtīt modeli PDFProformaDescription=Pilnīga Proforma rēķina veidne diff --git a/htdocs/langs/lv_LV/other.lang b/htdocs/langs/lv_LV/other.lang index b66f727ad00..53968217348 100644 --- a/htdocs/langs/lv_LV/other.lang +++ b/htdocs/langs/lv_LV/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grafika ir ierobežota ar %s mērījumiem rež OnlyOneFieldForXAxisIsPossible=Šobrīd kā X ass ir iespējams tikai 1 lauks. Ir atlasīts tikai pirmais atlasītais lauks. AtLeastOneMeasureIsRequired=Nepieciešams vismaz 1 lauks mērīšanai AtLeastOneXAxisIsRequired=X-asij ir nepieciešams vismaz 1 lauks - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Pārdošanas pasūtījums apstiprināts Notify_ORDER_SENTBYMAIL=Pārdošanas pasūtījums nosūtīts pa pastu Notify_ORDER_SUPPLIER_SENTBYMAIL=Pirkuma pasūtījums, kas nosūtīts pa e-pastu @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=Lapas URL WEBSITE_TITLE=Virsraksts WEBSITE_DESCRIPTION=Apraksts WEBSITE_IMAGE=Attēls -WEBSITE_IMAGEDesc=Attēlu nesēja relatīvais ceļš. Varat to atstāt tukšu, jo tas tiek reti izmantots (dinamiskais saturs to var izmantot, lai parādītu sīktēlu emuāru ziņu sarakstā). Ceļā izmantojiet __WEBSITEKEY__, ja ceļš ir atkarīgs no vietnes nosaukuma. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Atslēgas vārdi LinesToImport=Importējamās līnijas diff --git a/htdocs/langs/lv_LV/products.lang b/htdocs/langs/lv_LV/products.lang index d7f71d183c1..ee734ef9376 100644 --- a/htdocs/langs/lv_LV/products.lang +++ b/htdocs/langs/lv_LV/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=Šis rīks atjaunina PVN likmi, kas noteikta ALL< MassBarcodeInit=Masveida svītru kodu izveidošana MassBarcodeInitDesc=This page can be used to initialize a barcode on objects that does not have barcode defined. Check before that setup of module barcode is complete. ProductAccountancyBuyCode=Grāmatvedības kods (iegāde) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Grāmatvedības kods (tirdzniecība) ProductAccountancySellIntraCode=Grāmatvedības kods (pārdošana Kopienas iekšienē) ProductAccountancySellExportCode=Grāmatvedības kods (pārdošanas eksports) @@ -165,7 +167,7 @@ SuppliersPrices=Pārdevēja cenas SuppliersPricesOfProductsOrServices=Pārdevēja cenas (produktiem vai pakalpojumiem) CustomCode=Muita / Prece / HS kods CountryOrigin=Izcelsmes valsts -Nature=Izstrādājuma veids (materiāls/gatavs) +Nature=Nature of product (material/finished) ShortLabel=Īsais nosaukums Unit=Vienība p=u. diff --git a/htdocs/langs/lv_LV/projects.lang b/htdocs/langs/lv_LV/projects.lang index e1dde57cbc3..d0fa1eae9a8 100644 --- a/htdocs/langs/lv_LV/projects.lang +++ b/htdocs/langs/lv_LV/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=kuru esmu piesaistījis projektam Time=Laiks ListOfTasks=Uzdevumu saraksts GoToListOfTimeConsumed=Pāriet uz patērētā laika sarakstu -GoToListOfTasks=Rādīt kā sarakstu -GoToGanttView=parādīt kā Gants GanttView=Ganta skats ListProposalsAssociatedProject=Ar projektu saistīto komerciālo priekšlikumu saraksts ListOrdersAssociatedProject=Ar projektu saistīto pārdošanas pasūtījumu saraksts @@ -188,7 +186,7 @@ PlannedWorkload=Plānotais darba apjoms PlannedWorkloadShort=Darba slodze ProjectReferers=Saistītās vienības ProjectMustBeValidatedFirst=Projektu vispirms jāpārbauda -FirstAddRessourceToAllocateTime=Piešķiriet lietotājam resursus, lai piešķirtu laiku +FirstAddRessourceToAllocateTime=Piešķiriet lietotāja resursam kā projekta kontaktpersonai laika piešķiršanai InputPerDay=Ievades dienā InputPerWeek=Ievades nedēļā InputPerMonth=Ievade mēnesī @@ -240,6 +238,7 @@ LatestModifiedProjects=Jaunākie %s labotie projekti OtherFilteredTasks=Citi filtrētie uzdevumi NoAssignedTasks=Nekādi piešķirtie uzdevumi nav atrasti (piešķiriet projektu / uzdevumus pašreizējam lietotājam no augšējā atlases lodziņa, lai ievadītu laiku tajā) ThirdPartyRequiredToGenerateInvoice=Lai varētu to izrēķināt, projektā ir jādefinē trešā persona. +ChooseANotYetAssignedTask=Izvēlieties uzdevumu, kas jums vēl nav uzticēts # Comments trans AllowCommentOnTask=Atļaut lietotāju komentārus par uzdevumiem AllowCommentOnProject=Atļaut lietotājam komentēt projektus @@ -256,7 +255,7 @@ ServiceToUseOnLines=Pakalpojums, ko izmantot līnijās InvoiceGeneratedFromTimeSpent=Rēķins %s ir radīts no projekta pavadīta laika ProjectBillTimeDescription=Pārbaudiet, vai projekta uzdevumos ievadāt laika kontrolsarakstu UN Plānojat no laika kontrolsaraksta ģenerēt rēķinu (rēķinus), lai projekta klientam izrakstītu rēķinu (nepārbaudiet, vai plānojat izveidot rēķinu, kas nav balstīts uz ievadītajām laika kontrollapām). Piezīme. Lai ģenerētu rēķinu, dodieties uz projekta cilni “Pavadītais laiks” un atlasiet iekļaujamās līnijas. ProjectFollowOpportunity=Izmantojiet iespēju -ProjectFollowTasks=Izpildiet uzdevumus +ProjectFollowTasks=Follow tasks or time spent Usage=Lietošana UsageOpportunity=Lietošana: Iespēja UsageTasks=Lietošana: uzdevumi @@ -265,3 +264,4 @@ InvoiceToUse=Izmantojamais rēķina projekts NewInvoice=Jauns rēķins OneLinePerTask=Viena rinda katram uzdevumam OneLinePerPeriod=Viena rindiņa vienam periodam +RefTaskParent=Ref. Vecāku uzdevums diff --git a/htdocs/langs/lv_LV/receiptprinter.lang b/htdocs/langs/lv_LV/receiptprinter.lang index 86c55dc6292..cea2b075d45 100644 --- a/htdocs/langs/lv_LV/receiptprinter.lang +++ b/htdocs/langs/lv_LV/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Viltots printeris CONNECTOR_NETWORK_PRINT=Tīkla printeris CONNECTOR_FILE_PRINT=Lokālais printeris CONNECTOR_WINDOWS_PRINT=Lokālais Windows printeris +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Viltus printeris testiem, nedara neko CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Noklusētais profils PROFILE_SIMPLE=Vienāršais profils PROFILE_EPOSTEP=Epos Tep Profile @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Rēķina mēnesis vēstulēs DOL_VALUE_MONTH=Rēķina mēnesis DOL_VALUE_DAY=Rēķina diena DOL_VALUE_DAY_LETTERS=Rēķina diena vēstulēs +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Rēķina ref +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=Kapitāls +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/lv_LV/stripe.lang b/htdocs/langs/lv_LV/stripe.lang index f9d235eba7d..36d4116396d 100644 --- a/htdocs/langs/lv_LV/stripe.lang +++ b/htdocs/langs/lv_LV/stripe.lang @@ -32,6 +32,7 @@ VendorName=Pārdevēja nosaukums CSSUrlForPaymentForm=CSS stila lapas url maksājuma formu NewStripePaymentReceived=Saņemta jauna josla maksājums NewStripePaymentFailed=New Stripe maksājums tika izmēģināts, bet neizdevās +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Slepena testa atslēga STRIPE_TEST_PUBLISHABLE_KEY=Publicējamais testa taustiņš STRIPE_TEST_WEBHOOK_KEY=Webhooka testa atslēga @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Saite uz iestatījumu Stripe WebHook, lai izsauktu IP ToOfferALinkForLiveWebhook=Saite uz iestatījumu Stripe WebHook, lai izsauktu IPN (tiešraides režīms) PaymentWillBeRecordedForNextPeriod=Maksājums tiks reģistrēts par nākamo periodu. ClickHereToTryAgain=Noklikšķiniet šeit, lai mēģinātu vēlreiz ... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Sakarā ar stingriem klientu autentifikācijas noteikumiem, karte jāizveido no Stripe biroja. Jūs varat noklikšķināt šeit, lai ieslēgtu Stripe klientu ierakstu: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/lv_LV/users.lang b/htdocs/langs/lv_LV/users.lang index 84e74c12322..7f18b0e8a20 100644 --- a/htdocs/langs/lv_LV/users.lang +++ b/htdocs/langs/lv_LV/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Lietotāji un to īpašības DomainUser=Domēna lietotājs %s Reactivate=Aktivizēt CreateInternalUserDesc=Šī veidlapa ļauj izveidot iekšējo lietotāju savā uzņēmumā/organizācijā. Lai izveidotu ārēju lietotāju (klientu, pārdevēju utt.), Izmantojiet trešās puses kontakta kartītes pogu “Izveidot Dolibarr lietotāju”. -InternalExternalDesc= iekšējais lietotājs ir lietotājs, kas ir daļa no jūsu uzņēmuma / organizācijas.
    Ārējais lietotājs ir klients, pārdevējs vai cits.

    abos gadījumos atļaujas definē tiesības uz Dolibarr, arī ārējam lietotājam var būt atšķirīgs izvēlņu pārvaldnieks nekā iekšējais lietotājs (sk. Mājas - iestatīšana - displejs) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=Atļauja piešķirta, jo mantojis no viena lietotāja grupai. Inherited=Iedzimta UserWillBeInternalUser=Izveidots lietotājs būs iekšējā lietotāja (jo nav saistīta ar konkrētu trešajai personai) @@ -110,3 +110,8 @@ UserLogged=Lietotājs pieteicies DateEmployment=Nodarbinātības sākuma datums DateEmploymentEnd=Nodarbinātības beigu datums CantDisableYourself=Jūs nevarat atspējot savu lietotāja ierakstu +ForceUserExpenseValidator=Spēka izdevumu pārskata apstiprinātājs +ForceUserHolidayValidator=Piespiedu atvaļinājuma pieprasījuma validētājs +ValidatorIsSupervisorByDefault=Pēc noklusējuma validētājs ir lietotāja uzraugs. Lai saglabātu šo uzvedību, atstājiet tukšu. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/lv_LV/website.lang b/htdocs/langs/lv_LV/website.lang index 929fe13f660..a082a305ac6 100644 --- a/htdocs/langs/lv_LV/website.lang +++ b/htdocs/langs/lv_LV/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=Skatīt lapu jaunā cilnē SetAsHomePage=Iestatīt kā mājas lapu RealURL=Reāls URL ViewWebsiteInProduction=Apskatīt vietni, izmantojot mājas URL -SetHereVirtualHost= Lietošana ar Apache / NGinx / ...
    Ja jūs savā tīmekļa serverī (Apache, Nginx, ...) varat izveidot īpašu virtuālo resursdatoru ar iespējotu PHP un saknes direktoriju
    %s
    pēc tam iestatiet virtuālā uzņēmēja nosaukumu, kuru esat izveidojis tīmekļa vietnes īpašībās, tāpēc priekšskatījumu var izdarīt arī, izmantojot šo īpašo tīmekļa servera piekļuvi vietējā Dolibarr vietā serveri. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Piemērs izmantošanai Apache virtuālā resursdatora iestatīšanā: YouCanAlsoTestWithPHPS= Izmantojiet ar PHP serveri.
    Izstrādājot vidi, jūs varat izvēlēties testēt vietni ar PHP tīmekļa serveri (nepieciešams PHP 5.5), palaižot
    php -S 0.0. 0.0 8080-t %s YouCanAlsoDeployToAnotherWHP=Izmantojiet savu vietni kopā ar citu Dolibarr mitināšanas pakalpojumu sniedzēju
    Ja jums nav pieejams tāds interneta serveris kā Apache vai NGinx, varat eksportēt un importēt savu vietni citā Dolibarr instancē, kuru nodrošina cits Dolibarr mitināšanas pakalpojumu sniedzējs un kas nodrošina pilnīgu integrāciju ar vietnes moduli. Dažu Dolibarr mitināšanas pakalpojumu sniedzēju sarakstu varat atrast vietnē https://saas.dolibarr.org CheckVirtualHostPerms=Pārbaudiet arī to, vai virtuālajam serverim ir atļauja %s failiem vietnē
    %s @@ -56,7 +57,7 @@ NoPageYet=Vēl nav nevienas lapas YouCanCreatePageOrImportTemplate=Jūs varat izveidot jaunu lapu vai importēt pilnu vietnes veidni SyntaxHelp=Palīdzība par konkrētiem sintakses padomiem YouCanEditHtmlSourceckeditor=Jūs varat rediģēt HTML avota kodu, izmantojot redaktorā pogu "Avots". -YouCanEditHtmlSource=
    Šajā avotā varat iekļaut PHP kodu, izmantojot tagus <? Php?> . Ir pieejami šādi globālie mainīgie: $ conf, $ db, $ mysoc, $ user, $ website, $ websitepage, $ weblangs.

    Varat arī iekļaut citas lapas / konteinera saturu ar šādu sintaksi:
    <? php includeContainer ('alias_of_container_to_include'); ?>

    Jūs varat veikt novirzīšanu uz citu lapu / konteineru ar šādu sintaksi (piezīme: pirms novirzīšanas neizvadiet saturu):
    <? php redirectToContainer ('alias_of_container_to_redirect_to'); ?>

    Lai pievienotu saiti citai lapai, izmantojiet sintakse:
    <a href="alias_of_page_to_link_to.php"> mana saite <a>

    Lai iekļautu saiti dokumentu direktorijā saglabāta faila lejupielādei , izmantojiet iesaiņojumu document.php :
    Piemēram, failam dokumentos / ecm (nepieciešams reģistrēties) sintakse ir:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/>faila nosaukums.ext">
    Failam dokumentos / plašsaziņas līdzekļos (atvērts direktorijs publiskai piekļuvei) sintakse ir:
    <a href="/document.php?modulepart=medias&file=[relative_dir/ ]faila nosaukums.ext">
    Failam, kas koplietots ar koplietošanas saiti (atvērta piekļuve, izmantojot faila koplietošanas hash atslēgu), sintakse ir šāda:
    <a href="/document.php?hashp=publicsharekeyoffile">

    Lai iekļautu attēlu saglabāto uz dokumentu direktoriju, izmantojiet viewimage.php iesaiņojums:
    Piemērs attēlam dokumentos / datu nesējos (atvērts direktorijs publiskai piekļuvei) sintakse ir:
    <img src = "/ viewimage.php? modulepart = medias & file = [relia_dir /] filename.ext">

    Vairāk HTML vai dinamiskā koda piemēru, kas pieejami wiki dokumentācijā
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Klonēt lapu / konteineru CloneSite=Klonēt vietni SiteAdded=Tīmekļa vietne ir pievienota @@ -76,7 +77,7 @@ BlogPost=Emuāra ziņa WebsiteAccount=Tīmekļa vietnes konts WebsiteAccounts=Tīmekļa vietnes konti AddWebsiteAccount=Izveidot mājas lapas kontu -BackToListOfThirdParty=Atpakaļ uz trešo pušu sarakstu +BackToListForThirdParty=Atpakaļ uz trešo personu sarakstu DisableSiteFirst=Vispirms atspējojiet vietni MyContainerTitle=Manas tīmekļa vietnes virsraksts AnotherContainer=Šis ir veids, kā iekļaut citas lapas / konteinera saturu (šeit, iespējams, iespējot dinamisko kodu, iespējams, ir kļūda, jo iegultais apakštvertne, iespējams, neeksistē) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Diemžēl šī vietne pašlaik nav pieejama. Lūd WEBSITE_USE_WEBSITE_ACCOUNTS=Iespējot tīmekļa vietnes kontu tabulu WEBSITE_USE_WEBSITE_ACCOUNTSTooltip=Ļauj tabulai saglabāt tīmekļa vietņu kontus (pieteikšanās / caurlaide) katrai vietnei / trešajai pusei YouMustDefineTheHomePage=Vispirms ir jādefinē noklusējuma sākumlapa -OnlyEditionOfSourceForGrabbedContentFuture=Brīdinājums: Web lapas izveide, importējot ārēju tīmekļa lapu, ir paredzēta pieredzējušiem lietotājiem. Atkarībā no avota lapas sarežģītības importa rezultāts var atšķirties no oriģināla. Arī tad, ja avota lapa izmanto kopējus CSS stilus vai konfliktējošu javascript, tas, ja strādājat šajā lapā, var izjaukt tīmekļa vietnes redaktora izskatu vai funkcijas. Šī metode ir ātrāks veids, kā izveidot lapu, bet ir ieteicams izveidot jaunu lapu no nulles vai no ieteicamās lapas veidnes. no ārējās lapas ("Online" redaktors NAV pieejams) +OnlyEditionOfSourceForGrabbedContentFuture=Brīdinājums: Web lapas izveidošana, importējot ārēju Web lapu, ir paredzēta pieredzējušiem lietotājiem. Atkarībā no avota lapas sarežģītības importēšanas rezultāts var atšķirties no oriģināla. Arī tad, ja avota lapā tiek izmantoti parastie CSS stili vai konfliktējošais javascript, strādājot ar šo lapu, tas var sabojāt vietnes redaktora izskatu vai funkcijas. Šī metode ir ātrāks veids, kā izveidot lapu, taču ieteicams jauno lapu izveidot no nulles vai no ieteiktās lapas veidnes.
    Ņemiet vērā arī to, ka iebūvētais redaktors, iespējams, nedarbosies pareizi, ja to izmanto satvertā ārējā lapā. OnlyEditionOfSourceForGrabbedContent=Tikai HTML avota izdevums ir pieejams, ja saturs tiek satverts no ārējas vietnes GrabImagesInto=Grab arī attēlus, kas atrodami CSS un lapā. ImagesShouldBeSavedInto=Attēli jāuzglabā mapē @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=Lai iegūtu labu SEO praksi, izmantojiet tekstu no 5 l MainLanguage=Galvenā valoda OtherLanguages=Citas valodas UseManifest=Norādiet failu manifest.json +PublicAuthorAlias=Publiskā autora pseidonīms +AvailableLanguagesAreDefinedIntoWebsiteProperties=Pieejamās valodas tiek definētas vietņu īpašumos +ReplacementDoneInXPages=Aizvietošana veikta %s lappusēs vai konteineros diff --git a/htdocs/langs/lv_LV/zapier.lang b/htdocs/langs/lv_LV/zapier.lang new file mode 100644 index 00000000000..918fcac049e --- /dev/null +++ b/htdocs/langs/lv_LV/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier priekš Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Par zapier Dolibarr moduli + +# +# Admin page +# +ZapierForDolibarrSetup = Zapier iestatīšana Dolibarr diff --git a/htdocs/langs/mk_MK/accountancy.lang b/htdocs/langs/mk_MK/accountancy.lang index 9065ad63188..e28fa585d99 100644 --- a/htdocs/langs/mk_MK/accountancy.lang +++ b/htdocs/langs/mk_MK/accountancy.lang @@ -121,6 +121,7 @@ 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 +TotalForAccount=Total for accounting account Ventilate=Bind @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Accounting account to register donations ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (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 products sold in EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported 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_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (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_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unkno ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error PaymentsNotLinkedToProduct=Payment not linked to any product / service +OpeningBalance=Opening balance ShowOpeningBalance=Show opening balance HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Group of account PcgtypeDesc=Group 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. +Reconcilable=Reconcilable + TotalVente=Total turnover before tax TotalMarge=Total sales margin @@ -307,11 +317,13 @@ 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Chart of accounts Id ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC OptionModeProductSellExport=Mode sales exported in other countries OptionModeProductBuy=Mode purchases +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries 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. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=Remove accounting code from lines that not exists into charts of account CleanHistory=Reset all bindings for selected year PredefinedGroups=Predefined groups @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Account removed from group SaleLocal=Local sale SaleExport=Export sale SaleEEC=Sale in EEC +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=Range of accounting account diff --git a/htdocs/langs/mk_MK/admin.lang b/htdocs/langs/mk_MK/admin.lang index 053ff8484b3..a95d988c6e5 100644 --- a/htdocs/langs/mk_MK/admin.lang +++ b/htdocs/langs/mk_MK/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Web server user/group NoSessionFound=Your PHP configuration seems to not allow listing of active sessions. The directory used to save sessions (%s) may be protected (for example by OS permissions or by PHP directive open_basedir). DBStoringCharset=Database charset to store data DBSortingCharset=Database charset to sort data +HostCharset=Host charset ClientCharset=Client charset ClientSortingCharset=Client collation WarningModuleNotActive=Module %s must be enabled @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the NoMaxSizeByPHPLimit=Note: No limit is set in your PHP configuration MaxSizeForUploadedFiles=Maximum size for uploaded files (0 to disallow any upload) UseCaptchaCode=Use graphical code (CAPTCHA) on login page -AntiVirusCommand= Full path to antivirus command -AntiVirusCommandExample= Example for ClamWin: c:\\Progra~1\\ClamWin\\bin\\clamscan.exe
    Example for ClamAv: /usr/bin/clamscan +AntiVirusCommand=Full path to antivirus command +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= More parameters on command line -AntiVirusParamExample= Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=Accounting module setup UserSetup=User management setup MultiCurrencySetup=Multi-currency setup @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Feature disabled in demo FeatureAvailableOnlyOnStable=Feature only available on official stable versions BoxesDesc=Widgets are components showing some information that you can add to personalize some pages. You can choose between showing the widget or not by selecting target page and clicking 'Activate', or by clicking the trashcan to disable it. OnlyActiveElementsAreShown=Only elements from enabled modules are shown. -ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button (at end of module line) to enable/disable a module/application. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. ModulesMarketPlaceDesc=You can find more modules to download on external websites on the Internet... ModulesDeployDesc=If permissions on your file system allow it, you can use this tool to deploy an external module. The module will then be visible on the tab %s. ModulesMarketPlaces=Find external app/modules @@ -212,6 +213,7 @@ CompatibleUpTo=Compatible with version %s NotCompatible=This module does not seem compatible with your Dolibarr %s (Min %s - Max %s). CompatibleAfterUpdate=This module requires an update to your Dolibarr %s (Min %s - Max %s). SeeInMarkerPlace=See in Market place +SeeSetupOfModule=See setup of module %s Updated=Updated Nouveauté=Novelty AchatTelechargement=Buy / Download @@ -221,6 +223,7 @@ DoliPartnersDesc=List of companies providing custom-developed modules or feature WebSiteDesc=External websites for more add-on (non-core) modules... DevelopYourModuleDesc=Some solutions to develop your own module... URL=URL +RelativeURL=Relative URL BoxesAvailable=Widgets available BoxesActivated=Widgets activated ActivateOn=Activate on @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Checkboxes ExtrafieldCheckBoxFromList=Checkboxes from table ExtrafieldLink=Link to an object ComputedFormula=Computed field -ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Store computed field ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! ExtrafieldParamHelpPassword=Leaving this field blank means this value will be stored without encryption (field must be only hidden with star on screen).
    Set 'auto' to use the default encryption rule to save password into database (then value read will be the hash only, no way to retrieve original value) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Keep empty to use default value DefaultLink=Default link SetAsDefault=Set as default ValueOverwrittenByUserSetup=Warning, this value may be overwritten by user specific setup (each user can set his own clicktodial url) -ExternalModule=External module - Installed into directory %s +ExternalModule=External module +InstalledInto=Installed into directory %s BarcodeInitForthird-parties=Mass barcode init for third-parties BarcodeInitForProductsOrServices=Mass barcode init or reset for products or services CurrentlyNWithoutBarCode=Currently, you have %s record on %s %s without barcode defined. @@ -947,7 +951,7 @@ DictionaryCanton=States/Provinces DictionaryRegion=Regions DictionaryCountry=Countries DictionaryCurrency=Currencies -DictionaryCivility=Title of civility +DictionaryCivility=Honorific titles DictionaryActions=Types of agenda events DictionarySocialContributions=Types of social or fiscal taxes DictionaryVAT=VAT Rates or Sales Tax Rates @@ -988,6 +992,7 @@ VATIsNotUsedDesc=By default the proposed Sales tax is 0 which can be used for ca VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=Rate LocalTax1IsNotUsed=Do not use second tax LocalTax1IsUsedDesc=Use a second type of tax (other than first one) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices LocalTax2IsNotUsedDescES=By default the proposed IRPF is 0. End of rule. LocalTax2IsUsedExampleES=In Spain, freelancers and independent professionals who provide services and companies who have chosen the tax system of modules. LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=Reports on local taxes CalcLocaltax1=Sales - Purchases CalcLocaltax1Desc=Local Taxes reports are calculated with the difference between localtaxes sales and localtaxes purchases @@ -1018,6 +1026,7 @@ CalcLocaltax2=Purchases CalcLocaltax2Desc=Local Taxes reports are the total of localtaxes purchases CalcLocaltax3=Sales CalcLocaltax3Desc=Local Taxes reports are the total of localtaxes sales +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=Label used by default if no translation can be found for code LabelOnDocuments=Label on documents LabelOrTranslationKey=Label or translation key @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Expense report to approve Delays_MAIN_DELAY_HOLIDAYS=Leave requests 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. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. SetupDescription5=Other Setup menu entries manage optional parameters. LogEvents=Security audit events Audit=Audit @@ -1128,7 +1137,7 @@ LogEventDesc=Enable logging for specific security events. Administrators the log AreaForAdminOnly=Setup parameters can be set by administrator users only. SystemInfoDesc=System information is miscellaneous technical information you get in read only mode and visible for administrators only. SystemAreaForAdminOnly=This area is available to administrator users only. Dolibarr user permissions cannot change this restriction. -CompanyFundationDesc=Edit the information of the company/entity. Click on "%s" button at the bottom of the page. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. AccountantFileNumber=Accountant code DisplayDesc=Parameters affecting the look and behaviour of Dolibarr can be modified here. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Rules to generate and validate passwords DisableForgetPasswordLinkOnLogonPage=Do not show the "Password Forgotten" link on the Login page UsersSetup=Users module setup UserMailRequired=Email required to create a new user +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### HRMSetup=HRM module setup ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Invoice documents models BillsPDFModulesAccordindToInvoiceType=Invoice documents models according to invoice type PaymentsPDFModules=Payment documents models ForceInvoiceDate=Force invoice date to validation date -SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined for invoice +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice SuggestPaymentByRIBOnAccount=Suggest payment by withdrawal on account SuggestPaymentByChequeToAddress=Suggest payment by check to FreeLegalTextOnInvoices=Free text on invoices @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Vendor payments setup PropalSetup=Commercial proposals module setup ProposalsNumberingModules=Commercial proposal numbering models ProposalsPDFModules=Commercial proposal documents models -SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined for proposal +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal FreeLegalTextOnProposal=Free text on commercial proposals WatermarkOnDraftProposal=Watermark on draft commercial proposals (none if empty) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal @@ -1322,6 +1334,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 ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=Sales Orders management setup OrdersNumberingModules=Orders numbering models OrdersModelModule=Order documents models @@ -1720,7 +1733,7 @@ MultiCompanySetup=Multi-company module setup ##### Suppliers ##### SuppliersSetup=Vendor module setup SuppliersCommandModel=Complete template of Purchase Order -SuppliersCommandModelMuscadet=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) SuppliersInvoiceModel=Complete template of Vendor Invoice SuppliersInvoiceNumberingModel=Vendor invoices numbering models IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Hide images in Top menu LeftMenuBackgroundColor=Background color for Left menu BackgroundTableTitleColor=Background color for Table title line BackgroundTableTitleTextColor=Text color for Table title line +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Background color for odd table lines BackgroundTableLineEvenColor=Background color for even table lines MinimumNoticePeriod=Minimum notice period (Your leave request must be done before this delay) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Dolibarr Reference not found in Message ID FormatZip=Zip MainMenuCode=Menu entry code (mainmenu) ECMAutoTree=Show automatic ECM tree -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. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Opening hours OpeningHoursDesc=Enter here the regular opening hours of your company. ResourceSetup=Configuration of Resource module @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramatical ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export +ImportSetup=Setup of module Import InstanceUniqueID=Unique ID of the instance SmallerThan=Smaller than LargerThan=Larger than @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled EmailTemplate=Template for email EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/mk_MK/bills.lang b/htdocs/langs/mk_MK/bills.lang index 3c1e29b2920..8754c8f2ce5 100644 --- a/htdocs/langs/mk_MK/bills.lang +++ b/htdocs/langs/mk_MK/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Vendors invoices SupplierBill=Vendor invoice SupplierBills=suppliers invoices Payment=Payment -PaymentBack=Payment back -CustomerInvoicePaymentBack=Payment back +PaymentBack=Refund +CustomerInvoicePaymentBack=Refund Payments=Payments PaymentsBack=Refunds paymentInInvoiceCurrency=in invoices currency PaidBack=Paid back DeletePayment=Delete payment ConfirmDeletePayment=Are you sure you want to delete this payment? -ConfirmConvertToReduc=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. -ConfirmConvertToReducSupplier=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. SupplierPayments=Vendor payments ReceivedPayments=Received payments @@ -209,17 +209,13 @@ NumberOfBillsByMonth=No. of invoices per month AmountOfBills=Amount of invoices AmountOfBillsHT=Amount of invoices (net of tax) AmountOfBillsByMonthHT=Amount of invoices by month (net of tax) -ShowSocialContribution=Show social/fiscal tax -ShowBill=Show invoice -ShowInvoice=Show invoice -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 +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=To pay on %s toPayOn=to pay on %s RetainedWarranty=Retained Warranty @@ -230,7 +226,6 @@ 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 AlreadyPaidNoCreditNotesNoDeposits=Already paid (without credit notes and down payments) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Generated from template invoice %s WarningInvoiceDateInFuture=Warning, the invoice date is higher than current date WarningInvoiceDateTooFarInFuture=Warning, the invoice date is too far from current date ViewAvailableGlobalDiscounts=View available discounts +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Status PaymentConditionShortRECEP=Due Upon Receipt @@ -509,7 +505,7 @@ ToMakePayment=Pay ToMakePaymentBack=Pay back ListOfYourUnpaidInvoices=List of unpaid invoices NoteListOfYourUnpaidInvoices=Note: This list contains only invoices for third parties you are linked to as a sale representative. -RevenueStamp=Revenue stamp +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party YouMustCreateStandardInvoiceFirstDesc=You have to create a standard invoice first and convert it to "template" to create a new template invoice @@ -575,3 +571,4 @@ AutoFillDateTo=Set end date for service line with next invoice date AutoFillDateToShort=Set end date MaxNumberOfGenerationReached=Max number of gen. reached BILL_DELETEInDolibarr=Invoice deleted +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/mk_MK/blockedlog.lang b/htdocs/langs/mk_MK/blockedlog.lang index cff8f7d657b..5afae6e9e53 100644 --- a/htdocs/langs/mk_MK/blockedlog.lang +++ b/htdocs/langs/mk_MK/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Unalterable logs ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) DownloadBlockChain=Download fingerprints -KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this re after it was recorded, or has erased the previous archived record (check that line with previous # exists). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. AddedByAuthority=Stored into remote authority diff --git a/htdocs/langs/mk_MK/cashdesk.lang b/htdocs/langs/mk_MK/cashdesk.lang index 7ddbc71f3e9..f9f00015840 100644 --- a/htdocs/langs/mk_MK/cashdesk.lang +++ b/htdocs/langs/mk_MK/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Add this article RestartSelling=Go back on sell SellFinished=Sale complete PrintTicket=Print ticket +SendTicket=Send ticket NoProductFound=No article found ProductFound=product found NoArticle=No article @@ -48,6 +49,7 @@ Footer=Footer AmountAtEndOfPeriod=Amount at end of period (day, month or year) TheoricalAmount=Theorical amount RealAmount=Real amount +CashFence=Cash fence CashFenceDone=Cash fence done for the period NbOfInvoices=Nb of invoices Paymentnumpad=Type of Pad to enter payment @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS needs product categories to work OrderNotes=Order Notes CashDeskBankAccountFor=Default account to use for payments in NoPaimementModesDefined=No paiment mode defined in TakePOS configuration -TicketVatGrouped=Group VAT by rate in tickets -AutoPrintTickets=Automatically print tickets +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? @@ -87,7 +90,19 @@ HeadBar=Head Bar SortProductField=Field for sorting products Browser=Browser BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/mk_MK/companies.lang b/htdocs/langs/mk_MK/companies.lang index e9b3002b886..2d140b0d23f 100644 --- a/htdocs/langs/mk_MK/companies.lang +++ b/htdocs/langs/mk_MK/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted=Company "%s" deleted from database. ListOfContacts=List of contacts/addresses ListOfContactsAddresses=List of contacts/addresses ListOfThirdParties=List of Third Parties -ShowCompany=Show Third Party ShowContact=Show contact ContactsAllShort=All (No filter) ContactType=Contact type @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=First name of sales representative SaleRepresentativeLastname=Last name of sales representative ErrorThirdpartiesMerge=There was an error when deleting the third parties. Please check the log. Changes have been reverted. NewCustomerSupplierCodeProposed=Customer or Vendor code already used, a new code is suggested +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Payment Type - Customer PaymentTermsCustomer=Payment Terms - Customer diff --git a/htdocs/langs/mk_MK/compta.lang b/htdocs/langs/mk_MK/compta.lang index 1de030a1905..6cd046c5607 100644 --- a/htdocs/langs/mk_MK/compta.lang +++ b/htdocs/langs/mk_MK/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=See %sanalysis of payments%s for a calculation on act SeeReportInDueDebtMode=See %sanalysis of invoices%s for a calculation based on known recorded invoices even if they are not yet accounted in Ledger. SeeReportInBookkeepingMode=See %sBookeeping report%s for a calculation on Bookkeeping Ledger table RulesAmountWithTaxIncluded=- Amounts shown are with all taxes included -RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the validation date of invoices and VAT and on the due date for expenses. For salaries defined with Salary module, the value date of payment is used. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- It includes the real payments made on invoices, expenses, VAT and salaries.
    - It is based on the payment dates of the invoices, expenses, VAT and salaries. The donation date for donation. -RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the validation date of these invoices.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    RulesCATotalSaleJournal=It includes all credit lines from the Sale journal. RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Turnover invoiced by sale tax rate TurnoverCollectedbyVatrate=Turnover collected by sale tax rate PurchasebyVatrate=Purchase by sale tax rate LabelToShow=Short label +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/mk_MK/donations.lang b/htdocs/langs/mk_MK/donations.lang index 5edc8d62033..ef16fd82b38 100644 --- a/htdocs/langs/mk_MK/donations.lang +++ b/htdocs/langs/mk_MK/donations.lang @@ -7,16 +7,16 @@ AddDonation=Create a donation NewDonation=New donation DeleteADonation=Delete a donation ConfirmDeleteADonation=Are you sure you want to delete this donation? -ShowDonation=Show donation PublicDonation=Public donation DonationsArea=Donations area DonationStatusPromiseNotValidated=Draft promise DonationStatusPromiseValidated=Validated promise DonationStatusPaid=Donation received DonationStatusPromiseNotValidatedShort=Draft -DonationStatusPromiseValidatedShort=Validated +DonationStatusPromiseValidatedShort=Валидирано DonationStatusPaidShort=Received DonationTitle=Donation receipt +DonationDate=Donation date DonationDatePayment=Payment date ValidPromess=Validate promise DonationReceipt=Donation receipt diff --git a/htdocs/langs/mk_MK/errors.lang b/htdocs/langs/mk_MK/errors.lang index 3ffc686e62f..7c67aeca8b5 100644 --- a/htdocs/langs/mk_MK/errors.lang +++ b/htdocs/langs/mk_MK/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=File not received completely by server. ErrorNoTmpDir=Temporary directy %s does not exists. ErrorUploadBlockedByAddon=Upload blocked by a PHP/Apache plugin. ErrorFileSizeTooLarge=File size is too large. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Size too long for int type (%s digits maximum) ErrorSizeTooLongForVarcharType=Size too long for string type (%s chars maximum) ErrorNoValueForSelectType=Please fill value for select list @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # 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/mk_MK/install.lang b/htdocs/langs/mk_MK/install.lang index d56298cab0e..40f452de628 100644 --- a/htdocs/langs/mk_MK/install.lang +++ b/htdocs/langs/mk_MK/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=This PHP supports Curl. PHPSupportCalendar=This PHP supports calendars extensions. PHPSupportUTF8=This PHP supports UTF8 functions. PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=This PHP supports %s functions. PHPMemoryOK=Your PHP max session memory is set to %s. This should be enough. 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. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=Your PHP installation does not support Curl. ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. 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. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. ErrorDirDoesNotExists=Directory %s does not exist. ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=The application tried to self-upgrade, but the in 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. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/mk_MK/interventions.lang b/htdocs/langs/mk_MK/interventions.lang index e7667ef6946..e5936f8246e 100644 --- a/htdocs/langs/mk_MK/interventions.lang +++ b/htdocs/langs/mk_MK/interventions.lang @@ -41,9 +41,7 @@ InterventionsArea=Interventions area DraftFichinter=Draft interventions LastModifiedInterventions=Latest %s modified interventions FichinterToProcess=Interventions to process -##### Types de contacts ##### TypeContact_fichinter_external_CUSTOMER=Following-up customer contact -# Modele numérotation PrintProductsOnFichinter=Print also lines of type "product" (not only services) on intervention card PrintProductsOnFichinterDetails=interventions generated from orders UseServicesDurationOnFichinter=Use services duration for interventions generated from orders @@ -53,14 +51,16 @@ InterventionStatistics=Statistics of interventions NbOfinterventions=No. of intervention cards NumberOfInterventionsByMonth=No. of intervention cards by month (date of validation) AmountOfInteventionNotIncludedByDefault=Amount of intervention is not included by default into profit (in most cases, timesheets are used to count time spent). Add option PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT to 1 into home-setup-other to include them. -##### Exports ##### InterId=Intervention id InterRef=Intervention ref. InterDateCreation=Date creation intervention InterDuration=Duration intervention InterStatus=Status intervention InterNote=Note intervention +InterLine=Line of intervention InterLineId=Line id intervention InterLineDate=Line date intervention InterLineDuration=Line duration intervention InterLineDesc=Line description intervention +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/mk_MK/link.lang b/htdocs/langs/mk_MK/link.lang index fdcf07aeff4..1ffcd41a18b 100644 --- a/htdocs/langs/mk_MK/link.lang +++ b/htdocs/langs/mk_MK/link.lang @@ -8,3 +8,4 @@ LinkRemoved=The link %s has been removed ErrorFailedToDeleteLink= Failed to remove link '%s' ErrorFailedToUpdateLink= Failed to update link '%s' URLToLink=URL to link +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/mk_MK/mails.lang b/htdocs/langs/mk_MK/mails.lang index 8b92cef3103..6708fce5b2c 100644 --- a/htdocs/langs/mk_MK/mails.lang +++ b/htdocs/langs/mk_MK/mails.lang @@ -33,7 +33,7 @@ CreateMailing=Create emailing TestMailing=Test email ValidMailing=Valid emailing MailingStatusDraft=Draft -MailingStatusValidated=Validated +MailingStatusValidated=Валидирано MailingStatusSent=Sent MailingStatusSentPartialy=Sent partially MailingStatusSentCompletely=Sent completely @@ -164,7 +164,7 @@ NoContactWithCategoryFound=No contact/address with a category found NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found OutGoingEmailSetup=Outgoing email setup InGoingEmailSetup=Incoming email setup -OutGoingEmailSetupForEmailing=Outgoing email setup (for mass emailing) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Default outgoing email setup Information=Information ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/mk_MK/main.lang b/htdocs/langs/mk_MK/main.lang index 97be38cfce4..d4e5709f606 100644 --- a/htdocs/langs/mk_MK/main.lang +++ b/htdocs/langs/mk_MK/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Save and stay SaveAndNew=Save and new TestConnection=Test connection ToClone=Clone +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Choose data you want to clone: NoCloneOptionsSpecified=No data to clone defined. Of=of @@ -829,6 +830,8 @@ Gender=Gender Genderman=Man Genderwoman=Woman ViewList=List view +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Mandatory Hello=Hello GoodBye=GoodBye @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Select your graph options to build a graph Measures=Measures XAxis=X-Axis YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/mk_MK/modulebuilder.lang b/htdocs/langs/mk_MK/modulebuilder.lang index 00a8c0f9d32..135ac1ae9ec 100644 --- a/htdocs/langs/mk_MK/modulebuilder.lang +++ b/htdocs/langs/mk_MK/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=List of dictionaries entries ListOfPermissionsDefined=List of defined permissions SeeExamples=See examples here EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) -VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update). Using a negative value means field is not shown by default on list but can be selected for viewing). It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty DisplayOnPdf=Display on PDF IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) diff --git a/htdocs/langs/mk_MK/multicurrency.lang b/htdocs/langs/mk_MK/multicurrency.lang new file mode 100644 index 00000000000..bfcbd11fb7c --- /dev/null +++ b/htdocs/langs/mk_MK/multicurrency.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Multi currency +ErrorAddRateFail=Error in added rate +ErrorAddCurrencyFail=Error in added currency +ErrorDeleteCurrencyFail=Error delete fail +multicurrency_syncronize_error=Synchronization error: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Use the date of the document to find the currency rate, instead of using the latest known rate +multicurrency_useOriginTx=When an object is created from another, keep the original rate from the source object (otherwise use the latest known rate) +CurrencyLayerAccount=CurrencyLayer API +CurrencyLayerAccount_help_to_synchronize=You must create an account on website %s to use this functionality.
    Get your API key.
    If you use a free account, you can't change the source currency (USD by default).
    If your main currency is not USD, the application will automatically recalculate it.

    You are limited to 1000 synchronizations per month. +multicurrency_appId=API key +multicurrency_appCurrencySource=Source currency +multicurrency_alternateCurrencySource=Alternate source currency +CurrenciesUsed=Currencies used +CurrenciesUsed_help_to_add=Add the different currencies and rates you need to use on your proposals, orders etc. +rate=rate +MulticurrencyReceived=Received, original currency +MulticurrencyRemainderToTake=Remaining amount, original currency +MulticurrencyPaymentAmount=Payment amount, original currency +AmountToOthercurrency=Amount To (in currency of receiving account) +CurrencyRateSyncSucceed=Currency rate synchronization done successfuly +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Use the currency of the document for online payments diff --git a/htdocs/langs/mk_MK/other.lang b/htdocs/langs/mk_MK/other.lang index 00259d976bc..ba85f51e739 100644 --- a/htdocs/langs/mk_MK/other.lang +++ b/htdocs/langs/mk_MK/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Sales order validated Notify_ORDER_SENTBYMAIL=Sales order sent by mail Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=URL of page WEBSITE_TITLE=Title WEBSITE_DESCRIPTION=Description WEBSITE_IMAGE=Image -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Keywords LinesToImport=Lines to import diff --git a/htdocs/langs/mk_MK/products.lang b/htdocs/langs/mk_MK/products.lang index 79c3351caf9..8cf00847a11 100644 --- a/htdocs/langs/mk_MK/products.lang +++ b/htdocs/langs/mk_MK/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL MassBarcodeInit=Mass barcode init MassBarcodeInitDesc=This page can be used to initialize a barcode on objects that does not have barcode defined. Check before that setup of module barcode is complete. ProductAccountancyBuyCode=Accounting code (purchase) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Accounting code (sale) ProductAccountancySellIntraCode=Accounting code (sale intra-Community) ProductAccountancySellExportCode=Accounting code (sale export) @@ -165,7 +167,7 @@ SuppliersPrices=Vendor prices SuppliersPricesOfProductsOrServices=Vendor prices (of products or services) CustomCode=Customs / Commodity / HS code CountryOrigin=Origin country -Nature=Nature of produt (material/finished) +Nature=Nature of product (material/finished) ShortLabel=Short label Unit=Unit p=u. diff --git a/htdocs/langs/mk_MK/projects.lang b/htdocs/langs/mk_MK/projects.lang index 94e440f9ab9..bb42bff3c87 100644 --- a/htdocs/langs/mk_MK/projects.lang +++ b/htdocs/langs/mk_MK/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=which I'm linked to project Time=Time ListOfTasks=List of tasks GoToListOfTimeConsumed=Go to list of time consumed -GoToListOfTasks=Show as list -GoToGanttView=show as Gantt GanttView=Gantt View ListProposalsAssociatedProject=List of the commercial proposals related to the project ListOrdersAssociatedProject=List of sales orders related to the project @@ -188,7 +186,7 @@ PlannedWorkload=Planned workload PlannedWorkloadShort=Workload ProjectReferers=Related items ProjectMustBeValidatedFirst=Project must be validated first -FirstAddRessourceToAllocateTime=Assign a user resource to task to allocate time +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=Input per day InputPerWeek=Input per week InputPerMonth=Input per month @@ -240,6 +238,7 @@ LatestModifiedProjects=Latest %s modified projects OtherFilteredTasks=Other filtered tasks NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=Allow user comments on tasks AllowCommentOnProject=Allow user comments on projects @@ -256,7 +255,7 @@ ServiceToUseOnLines=Service to use on lines InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. ProjectFollowOpportunity=Follow opportunity -ProjectFollowTasks=Follow tasks +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Usage: Opportunity UsageTasks=Usage: Tasks @@ -265,3 +264,4 @@ InvoiceToUse=Draft invoice to use NewInvoice=New invoice OneLinePerTask=One line per task OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/mk_MK/receiptprinter.lang b/htdocs/langs/mk_MK/receiptprinter.lang index 3df49b9fe67..82387cf5703 100644 --- a/htdocs/langs/mk_MK/receiptprinter.lang +++ b/htdocs/langs/mk_MK/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Dummy Printer CONNECTOR_NETWORK_PRINT=Network Printer CONNECTOR_FILE_PRINT=Local Printer CONNECTOR_WINDOWS_PRINT=Local Windows Printer +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Fake Printer for test, does nothing CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Default Profile PROFILE_SIMPLE=Simple Profile PROFILE_EPOSTEP=Epos Tep Profile @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Invoice month in letters DOL_VALUE_MONTH=Invoice month DOL_VALUE_DAY=Invoice day DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Фактура број +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=Capital +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/mk_MK/stripe.lang b/htdocs/langs/mk_MK/stripe.lang index eb77441d2cd..844762040af 100644 --- a/htdocs/langs/mk_MK/stripe.lang +++ b/htdocs/langs/mk_MK/stripe.lang @@ -32,6 +32,7 @@ VendorName=Name of vendor CSSUrlForPaymentForm=CSS style sheet url for payment form NewStripePaymentReceived=New Stripe payment received NewStripePaymentFailed=New Stripe payment tried but failed +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Secret test key STRIPE_TEST_PUBLISHABLE_KEY=Publishable test key STRIPE_TEST_WEBHOOK_KEY=Webhook test key @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mo 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... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authenticatin rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/mk_MK/users.lang b/htdocs/langs/mk_MK/users.lang index 43fa5342da3..aea4e7676e4 100644 --- a/htdocs/langs/mk_MK/users.lang +++ b/htdocs/langs/mk_MK/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Users and their properties DomainUser=Domain user %s Reactivate=Reactivate CreateInternalUserDesc=This form allows you to create an internal user in your company/organization. To create an external user (customer, vendor etc. ..), use the button 'Create Dolibarr User' from that third-party's contact card. -InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other.

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=Permission granted because inherited from one of a user's group. Inherited=Inherited UserWillBeInternalUser=Created user will be an internal user (because not linked to a particular third party) @@ -110,3 +110,8 @@ UserLogged=User logged DateEmployment=Employment Start Date DateEmploymentEnd=Employment End Date CantDisableYourself=You can't disable your own user record +ForceUserExpenseValidator=Force expense report validator +ForceUserHolidayValidator=Force leave request validator +ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/mk_MK/website.lang b/htdocs/langs/mk_MK/website.lang index 9e5c4ba3ff8..bce2a09fb03 100644 --- a/htdocs/langs/mk_MK/website.lang +++ b/htdocs/langs/mk_MK/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=View page in new tab SetAsHomePage=Set as Home page RealURL=Real URL ViewWebsiteInProduction=View web site using home URLs -SetHereVirtualHost=Use with Apache/NGinx/...
    If you can create, on your web server (Apache, Nginx, ...), a dedicated Virtual Host with PHP enabled and a Root directory on
    %s
    then set the name of the virtual host you have created in the properties of web site, so the preview can be done also using this dedicated web server access instead of the internal Dolibarr server. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS=Use with PHP embedded server
    On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running
    php -S 0.0.0.0:8080 -t %s YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org CheckVirtualHostPerms=Check also that virtual host has permission %s on files into
    %s @@ -56,7 +57,7 @@ NoPageYet=No pages yet YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template SyntaxHelp=Help on specific syntax tips YouCanEditHtmlSourceckeditor=You can edit HTML source code using the "Source" button in editor. -YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Clone page/container CloneSite=Clone site SiteAdded=Website added @@ -76,7 +77,7 @@ BlogPost=Blog post WebsiteAccount=Website account WebsiteAccounts=Website accounts AddWebsiteAccount=Create web site account -BackToListOfThirdParty=Back to list for Third Party +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Disable website first MyContainerTitle=My web site title AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Sorry, this website is currently off line. Please 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 -OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that edits of HTML source will be possible when page content has been initialized by grabbing it from an external page ("Online" editor will NOT be available) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Only edition of HTML source is possible when content was grabbed from an external site GrabImagesInto=Grab also images found into css and page. ImagesShouldBeSavedInto=Images should be saved into directory @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 ch MainLanguage=Main language OtherLanguages=Other languages UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/mk_MK/zapier.lang b/htdocs/langs/mk_MK/zapier.lang new file mode 100644 index 00000000000..6d6eda71313 --- /dev/null +++ b/htdocs/langs/mk_MK/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr module + +# +# Admin page +# +ZapierForDolibarrSetup = Setup of Zapier for Dolibarr diff --git a/htdocs/langs/mn_MN/accountancy.lang b/htdocs/langs/mn_MN/accountancy.lang index 1f9382137ea..b8ce37a0956 100644 --- a/htdocs/langs/mn_MN/accountancy.lang +++ b/htdocs/langs/mn_MN/accountancy.lang @@ -121,6 +121,7 @@ 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 +TotalForAccount=Total for accounting account Ventilate=Bind @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Accounting account to register donations ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (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 products sold in EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported 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_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (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_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unkno ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error PaymentsNotLinkedToProduct=Payment not linked to any product / service +OpeningBalance=Opening balance ShowOpeningBalance=Show opening balance HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Group of account PcgtypeDesc=Group 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. +Reconcilable=Reconcilable + TotalVente=Total turnover before tax TotalMarge=Total sales margin @@ -307,11 +317,13 @@ 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Chart of accounts Id ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC OptionModeProductSellExport=Mode sales exported in other countries OptionModeProductBuy=Mode purchases +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries 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. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=Remove accounting code from lines that not exists into charts of account CleanHistory=Reset all bindings for selected year PredefinedGroups=Predefined groups @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Account removed from group SaleLocal=Local sale SaleExport=Export sale SaleEEC=Sale in EEC +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=Range of accounting account diff --git a/htdocs/langs/mn_MN/admin.lang b/htdocs/langs/mn_MN/admin.lang index 2f36c876c1a..7eb67d7a4ab 100644 --- a/htdocs/langs/mn_MN/admin.lang +++ b/htdocs/langs/mn_MN/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Web server user/group NoSessionFound=Your PHP configuration seems to not allow listing of active sessions. The directory used to save sessions (%s) may be protected (for example by OS permissions or by PHP directive open_basedir). DBStoringCharset=Database charset to store data DBSortingCharset=Database charset to sort data +HostCharset=Host charset ClientCharset=Client charset ClientSortingCharset=Client collation WarningModuleNotActive=Module %s must be enabled @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the NoMaxSizeByPHPLimit=Note: No limit is set in your PHP configuration MaxSizeForUploadedFiles=Maximum size for uploaded files (0 to disallow any upload) UseCaptchaCode=Use graphical code (CAPTCHA) on login page -AntiVirusCommand= Full path to antivirus command -AntiVirusCommandExample= Example for ClamWin: c:\\Progra~1\\ClamWin\\bin\\clamscan.exe
    Example for ClamAv: /usr/bin/clamscan +AntiVirusCommand=Full path to antivirus command +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= More parameters on command line -AntiVirusParamExample= Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=Accounting module setup UserSetup=User management setup MultiCurrencySetup=Multi-currency setup @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Feature disabled in demo FeatureAvailableOnlyOnStable=Feature only available on official stable versions BoxesDesc=Widgets are components showing some information that you can add to personalize some pages. You can choose between showing the widget or not by selecting target page and clicking 'Activate', or by clicking the trashcan to disable it. OnlyActiveElementsAreShown=Only elements from enabled modules are shown. -ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button (at end of module line) to enable/disable a module/application. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. ModulesMarketPlaceDesc=You can find more modules to download on external websites on the Internet... ModulesDeployDesc=If permissions on your file system allow it, you can use this tool to deploy an external module. The module will then be visible on the tab %s. ModulesMarketPlaces=Find external app/modules @@ -212,6 +213,7 @@ CompatibleUpTo=Compatible with version %s NotCompatible=This module does not seem compatible with your Dolibarr %s (Min %s - Max %s). CompatibleAfterUpdate=This module requires an update to your Dolibarr %s (Min %s - Max %s). SeeInMarkerPlace=See in Market place +SeeSetupOfModule=See setup of module %s Updated=Updated Nouveauté=Novelty AchatTelechargement=Buy / Download @@ -221,6 +223,7 @@ DoliPartnersDesc=List of companies providing custom-developed modules or feature WebSiteDesc=External websites for more add-on (non-core) modules... DevelopYourModuleDesc=Some solutions to develop your own module... URL=URL +RelativeURL=Relative URL BoxesAvailable=Widgets available BoxesActivated=Widgets activated ActivateOn=Activate on @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Checkboxes ExtrafieldCheckBoxFromList=Checkboxes from table ExtrafieldLink=Link to an object ComputedFormula=Computed field -ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Store computed field ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! ExtrafieldParamHelpPassword=Leaving this field blank means this value will be stored without encryption (field must be only hidden with star on screen).
    Set 'auto' to use the default encryption rule to save password into database (then value read will be the hash only, no way to retrieve original value) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Keep empty to use default value DefaultLink=Default link SetAsDefault=Set as default ValueOverwrittenByUserSetup=Warning, this value may be overwritten by user specific setup (each user can set his own clicktodial url) -ExternalModule=External module - Installed into directory %s +ExternalModule=External module +InstalledInto=Installed into directory %s BarcodeInitForthird-parties=Mass barcode init for third-parties BarcodeInitForProductsOrServices=Mass barcode init or reset for products or services CurrentlyNWithoutBarCode=Currently, you have %s record on %s %s without barcode defined. @@ -947,7 +951,7 @@ DictionaryCanton=States/Provinces DictionaryRegion=Regions DictionaryCountry=Countries DictionaryCurrency=Currencies -DictionaryCivility=Title of civility +DictionaryCivility=Honorific titles DictionaryActions=Types of agenda events DictionarySocialContributions=Types of social or fiscal taxes DictionaryVAT=VAT Rates or Sales Tax Rates @@ -988,6 +992,7 @@ VATIsNotUsedDesc=By default the proposed Sales tax is 0 which can be used for ca VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=Rate LocalTax1IsNotUsed=Do not use second tax LocalTax1IsUsedDesc=Use a second type of tax (other than first one) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices LocalTax2IsNotUsedDescES=By default the proposed IRPF is 0. End of rule. LocalTax2IsUsedExampleES=In Spain, freelancers and independent professionals who provide services and companies who have chosen the tax system of modules. LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=Reports on local taxes CalcLocaltax1=Sales - Purchases CalcLocaltax1Desc=Local Taxes reports are calculated with the difference between localtaxes sales and localtaxes purchases @@ -1018,6 +1026,7 @@ CalcLocaltax2=Purchases CalcLocaltax2Desc=Local Taxes reports are the total of localtaxes purchases CalcLocaltax3=Sales CalcLocaltax3Desc=Local Taxes reports are the total of localtaxes sales +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=Label used by default if no translation can be found for code LabelOnDocuments=Label on documents LabelOrTranslationKey=Label or translation key @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Expense report to approve Delays_MAIN_DELAY_HOLIDAYS=Leave requests 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. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. SetupDescription5=Other Setup menu entries manage optional parameters. LogEvents=Security audit events Audit=Audit @@ -1128,7 +1137,7 @@ LogEventDesc=Enable logging for specific security events. Administrators the log AreaForAdminOnly=Setup parameters can be set by administrator users only. SystemInfoDesc=System information is miscellaneous technical information you get in read only mode and visible for administrators only. SystemAreaForAdminOnly=This area is available to administrator users only. Dolibarr user permissions cannot change this restriction. -CompanyFundationDesc=Edit the information of the company/entity. Click on "%s" button at the bottom of the page. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. AccountantFileNumber=Accountant code DisplayDesc=Parameters affecting the look and behaviour of Dolibarr can be modified here. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Rules to generate and validate passwords DisableForgetPasswordLinkOnLogonPage=Do not show the "Password Forgotten" link on the Login page UsersSetup=Users module setup UserMailRequired=Email required to create a new user +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### HRMSetup=HRM module setup ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Invoice documents models BillsPDFModulesAccordindToInvoiceType=Invoice documents models according to invoice type PaymentsPDFModules=Payment documents models ForceInvoiceDate=Force invoice date to validation date -SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined for invoice +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice SuggestPaymentByRIBOnAccount=Suggest payment by withdrawal on account SuggestPaymentByChequeToAddress=Suggest payment by check to FreeLegalTextOnInvoices=Free text on invoices @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Vendor payments setup PropalSetup=Commercial proposals module setup ProposalsNumberingModules=Commercial proposal numbering models ProposalsPDFModules=Commercial proposal documents models -SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined for proposal +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal FreeLegalTextOnProposal=Free text on commercial proposals WatermarkOnDraftProposal=Watermark on draft commercial proposals (none if empty) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal @@ -1322,6 +1334,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 ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=Sales Orders management setup OrdersNumberingModules=Orders numbering models OrdersModelModule=Order documents models @@ -1720,7 +1733,7 @@ MultiCompanySetup=Multi-company module setup ##### Suppliers ##### SuppliersSetup=Vendor module setup SuppliersCommandModel=Complete template of Purchase Order -SuppliersCommandModelMuscadet=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) SuppliersInvoiceModel=Complete template of Vendor Invoice SuppliersInvoiceNumberingModel=Vendor invoices numbering models IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Hide images in Top menu LeftMenuBackgroundColor=Background color for Left menu BackgroundTableTitleColor=Background color for Table title line BackgroundTableTitleTextColor=Text color for Table title line +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Background color for odd table lines BackgroundTableLineEvenColor=Background color for even table lines MinimumNoticePeriod=Minimum notice period (Your leave request must be done before this delay) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Dolibarr Reference not found in Message ID FormatZip=Zip MainMenuCode=Menu entry code (mainmenu) ECMAutoTree=Show automatic ECM tree -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. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Opening hours OpeningHoursDesc=Enter here the regular opening hours of your company. ResourceSetup=Configuration of Resource module @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramatical ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export +ImportSetup=Setup of module Import InstanceUniqueID=Unique ID of the instance SmallerThan=Smaller than LargerThan=Larger than @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled EmailTemplate=Template for email EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/mn_MN/bills.lang b/htdocs/langs/mn_MN/bills.lang index 6d7c61784f7..9f11d8ecf87 100644 --- a/htdocs/langs/mn_MN/bills.lang +++ b/htdocs/langs/mn_MN/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Vendors invoices SupplierBill=Vendor invoice SupplierBills=suppliers invoices Payment=Payment -PaymentBack=Payment back -CustomerInvoicePaymentBack=Payment back +PaymentBack=Refund +CustomerInvoicePaymentBack=Refund Payments=Payments PaymentsBack=Refunds paymentInInvoiceCurrency=in invoices currency PaidBack=Paid back DeletePayment=Delete payment ConfirmDeletePayment=Are you sure you want to delete this payment? -ConfirmConvertToReduc=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. -ConfirmConvertToReducSupplier=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. SupplierPayments=Vendor payments ReceivedPayments=Received payments @@ -209,17 +209,13 @@ NumberOfBillsByMonth=No. of invoices per month AmountOfBills=Amount of invoices AmountOfBillsHT=Amount of invoices (net of tax) AmountOfBillsByMonthHT=Amount of invoices by month (net of tax) -ShowSocialContribution=Show social/fiscal tax -ShowBill=Show invoice -ShowInvoice=Show invoice -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 +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=To pay on %s toPayOn=to pay on %s RetainedWarranty=Retained Warranty @@ -230,7 +226,6 @@ 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 AlreadyPaidNoCreditNotesNoDeposits=Already paid (without credit notes and down payments) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Generated from template invoice %s WarningInvoiceDateInFuture=Warning, the invoice date is higher than current date WarningInvoiceDateTooFarInFuture=Warning, the invoice date is too far from current date ViewAvailableGlobalDiscounts=View available discounts +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Status PaymentConditionShortRECEP=Due Upon Receipt @@ -509,7 +505,7 @@ ToMakePayment=Pay ToMakePaymentBack=Pay back ListOfYourUnpaidInvoices=List of unpaid invoices NoteListOfYourUnpaidInvoices=Note: This list contains only invoices for third parties you are linked to as a sale representative. -RevenueStamp=Revenue stamp +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party YouMustCreateStandardInvoiceFirstDesc=You have to create a standard invoice first and convert it to "template" to create a new template invoice @@ -575,3 +571,4 @@ AutoFillDateTo=Set end date for service line with next invoice date AutoFillDateToShort=Set end date MaxNumberOfGenerationReached=Max number of gen. reached BILL_DELETEInDolibarr=Invoice deleted +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/mn_MN/blockedlog.lang b/htdocs/langs/mn_MN/blockedlog.lang index cff8f7d657b..5afae6e9e53 100644 --- a/htdocs/langs/mn_MN/blockedlog.lang +++ b/htdocs/langs/mn_MN/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Unalterable logs ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) DownloadBlockChain=Download fingerprints -KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this re after it was recorded, or has erased the previous archived record (check that line with previous # exists). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. AddedByAuthority=Stored into remote authority diff --git a/htdocs/langs/mn_MN/cashdesk.lang b/htdocs/langs/mn_MN/cashdesk.lang index 7ddbc71f3e9..f9f00015840 100644 --- a/htdocs/langs/mn_MN/cashdesk.lang +++ b/htdocs/langs/mn_MN/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Add this article RestartSelling=Go back on sell SellFinished=Sale complete PrintTicket=Print ticket +SendTicket=Send ticket NoProductFound=No article found ProductFound=product found NoArticle=No article @@ -48,6 +49,7 @@ Footer=Footer AmountAtEndOfPeriod=Amount at end of period (day, month or year) TheoricalAmount=Theorical amount RealAmount=Real amount +CashFence=Cash fence CashFenceDone=Cash fence done for the period NbOfInvoices=Nb of invoices Paymentnumpad=Type of Pad to enter payment @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS needs product categories to work OrderNotes=Order Notes CashDeskBankAccountFor=Default account to use for payments in NoPaimementModesDefined=No paiment mode defined in TakePOS configuration -TicketVatGrouped=Group VAT by rate in tickets -AutoPrintTickets=Automatically print tickets +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? @@ -87,7 +90,19 @@ HeadBar=Head Bar SortProductField=Field for sorting products Browser=Browser BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/mn_MN/companies.lang b/htdocs/langs/mn_MN/companies.lang index c569a48c84a..f8b3d0354e2 100644 --- a/htdocs/langs/mn_MN/companies.lang +++ b/htdocs/langs/mn_MN/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted=Company "%s" deleted from database. ListOfContacts=List of contacts/addresses ListOfContactsAddresses=List of contacts/addresses ListOfThirdParties=List of Third Parties -ShowCompany=Show Third Party ShowContact=Show contact ContactsAllShort=All (No filter) ContactType=Contact type @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=First name of sales representative SaleRepresentativeLastname=Last name of sales representative ErrorThirdpartiesMerge=There was an error when deleting the third parties. Please check the log. Changes have been reverted. NewCustomerSupplierCodeProposed=Customer or Vendor code already used, a new code is suggested +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Payment Type - Customer PaymentTermsCustomer=Payment Terms - Customer diff --git a/htdocs/langs/mn_MN/compta.lang b/htdocs/langs/mn_MN/compta.lang index 1de030a1905..6cd046c5607 100644 --- a/htdocs/langs/mn_MN/compta.lang +++ b/htdocs/langs/mn_MN/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=See %sanalysis of payments%s for a calculation on act SeeReportInDueDebtMode=See %sanalysis of invoices%s for a calculation based on known recorded invoices even if they are not yet accounted in Ledger. SeeReportInBookkeepingMode=See %sBookeeping report%s for a calculation on Bookkeeping Ledger table RulesAmountWithTaxIncluded=- Amounts shown are with all taxes included -RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the validation date of invoices and VAT and on the due date for expenses. For salaries defined with Salary module, the value date of payment is used. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- It includes the real payments made on invoices, expenses, VAT and salaries.
    - It is based on the payment dates of the invoices, expenses, VAT and salaries. The donation date for donation. -RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the validation date of these invoices.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    RulesCATotalSaleJournal=It includes all credit lines from the Sale journal. RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Turnover invoiced by sale tax rate TurnoverCollectedbyVatrate=Turnover collected by sale tax rate PurchasebyVatrate=Purchase by sale tax rate LabelToShow=Short label +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/mn_MN/donations.lang b/htdocs/langs/mn_MN/donations.lang index 5edc8d62033..de4bdf68f03 100644 --- a/htdocs/langs/mn_MN/donations.lang +++ b/htdocs/langs/mn_MN/donations.lang @@ -7,7 +7,6 @@ AddDonation=Create a donation NewDonation=New donation DeleteADonation=Delete a donation ConfirmDeleteADonation=Are you sure you want to delete this donation? -ShowDonation=Show donation PublicDonation=Public donation DonationsArea=Donations area DonationStatusPromiseNotValidated=Draft promise @@ -17,6 +16,7 @@ DonationStatusPromiseNotValidatedShort=Draft DonationStatusPromiseValidatedShort=Validated DonationStatusPaidShort=Received DonationTitle=Donation receipt +DonationDate=Donation date DonationDatePayment=Payment date ValidPromess=Validate promise DonationReceipt=Donation receipt diff --git a/htdocs/langs/mn_MN/errors.lang b/htdocs/langs/mn_MN/errors.lang index 3ffc686e62f..7c67aeca8b5 100644 --- a/htdocs/langs/mn_MN/errors.lang +++ b/htdocs/langs/mn_MN/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=File not received completely by server. ErrorNoTmpDir=Temporary directy %s does not exists. ErrorUploadBlockedByAddon=Upload blocked by a PHP/Apache plugin. ErrorFileSizeTooLarge=File size is too large. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Size too long for int type (%s digits maximum) ErrorSizeTooLongForVarcharType=Size too long for string type (%s chars maximum) ErrorNoValueForSelectType=Please fill value for select list @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # 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/mn_MN/install.lang b/htdocs/langs/mn_MN/install.lang index bf9c08c4ba7..f67dff57184 100644 --- a/htdocs/langs/mn_MN/install.lang +++ b/htdocs/langs/mn_MN/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=This PHP supports Curl. PHPSupportCalendar=This PHP supports calendars extensions. PHPSupportUTF8=This PHP supports UTF8 functions. PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=This PHP supports %s functions. PHPMemoryOK=Your PHP max session memory is set to %s. This should be enough. 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. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=Your PHP installation does not support Curl. ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. 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. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. ErrorDirDoesNotExists=Directory %s does not exist. ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=The application tried to self-upgrade, but the in 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. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/mn_MN/interventions.lang b/htdocs/langs/mn_MN/interventions.lang index e7667ef6946..e5936f8246e 100644 --- a/htdocs/langs/mn_MN/interventions.lang +++ b/htdocs/langs/mn_MN/interventions.lang @@ -41,9 +41,7 @@ InterventionsArea=Interventions area DraftFichinter=Draft interventions LastModifiedInterventions=Latest %s modified interventions FichinterToProcess=Interventions to process -##### Types de contacts ##### TypeContact_fichinter_external_CUSTOMER=Following-up customer contact -# Modele numérotation PrintProductsOnFichinter=Print also lines of type "product" (not only services) on intervention card PrintProductsOnFichinterDetails=interventions generated from orders UseServicesDurationOnFichinter=Use services duration for interventions generated from orders @@ -53,14 +51,16 @@ InterventionStatistics=Statistics of interventions NbOfinterventions=No. of intervention cards NumberOfInterventionsByMonth=No. of intervention cards by month (date of validation) AmountOfInteventionNotIncludedByDefault=Amount of intervention is not included by default into profit (in most cases, timesheets are used to count time spent). Add option PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT to 1 into home-setup-other to include them. -##### Exports ##### InterId=Intervention id InterRef=Intervention ref. InterDateCreation=Date creation intervention InterDuration=Duration intervention InterStatus=Status intervention InterNote=Note intervention +InterLine=Line of intervention InterLineId=Line id intervention InterLineDate=Line date intervention InterLineDuration=Line duration intervention InterLineDesc=Line description intervention +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/mn_MN/link.lang b/htdocs/langs/mn_MN/link.lang index fdcf07aeff4..1ffcd41a18b 100644 --- a/htdocs/langs/mn_MN/link.lang +++ b/htdocs/langs/mn_MN/link.lang @@ -8,3 +8,4 @@ LinkRemoved=The link %s has been removed ErrorFailedToDeleteLink= Failed to remove link '%s' ErrorFailedToUpdateLink= Failed to update link '%s' URLToLink=URL to link +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/mn_MN/mails.lang b/htdocs/langs/mn_MN/mails.lang index 8b92cef3103..7b3bfd3852a 100644 --- a/htdocs/langs/mn_MN/mails.lang +++ b/htdocs/langs/mn_MN/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=No contact/address with a category found NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found OutGoingEmailSetup=Outgoing email setup InGoingEmailSetup=Incoming email setup -OutGoingEmailSetupForEmailing=Outgoing email setup (for mass emailing) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Default outgoing email setup Information=Information ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/mn_MN/main.lang b/htdocs/langs/mn_MN/main.lang index 0681c294748..9cf03c8bfdb 100644 --- a/htdocs/langs/mn_MN/main.lang +++ b/htdocs/langs/mn_MN/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Save and stay SaveAndNew=Save and new TestConnection=Test connection ToClone=Clone +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Choose data you want to clone: NoCloneOptionsSpecified=No data to clone defined. Of=of @@ -829,6 +830,8 @@ Gender=Gender Genderman=Man Genderwoman=Woman ViewList=List view +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Mandatory Hello=Hello GoodBye=GoodBye @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Select your graph options to build a graph Measures=Measures XAxis=X-Axis YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/mn_MN/modulebuilder.lang b/htdocs/langs/mn_MN/modulebuilder.lang index 00a8c0f9d32..135ac1ae9ec 100644 --- a/htdocs/langs/mn_MN/modulebuilder.lang +++ b/htdocs/langs/mn_MN/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=List of dictionaries entries ListOfPermissionsDefined=List of defined permissions SeeExamples=See examples here EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) -VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update). Using a negative value means field is not shown by default on list but can be selected for viewing). It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty DisplayOnPdf=Display on PDF IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) diff --git a/htdocs/langs/mn_MN/multicurrency.lang b/htdocs/langs/mn_MN/multicurrency.lang new file mode 100644 index 00000000000..bfcbd11fb7c --- /dev/null +++ b/htdocs/langs/mn_MN/multicurrency.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Multi currency +ErrorAddRateFail=Error in added rate +ErrorAddCurrencyFail=Error in added currency +ErrorDeleteCurrencyFail=Error delete fail +multicurrency_syncronize_error=Synchronization error: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Use the date of the document to find the currency rate, instead of using the latest known rate +multicurrency_useOriginTx=When an object is created from another, keep the original rate from the source object (otherwise use the latest known rate) +CurrencyLayerAccount=CurrencyLayer API +CurrencyLayerAccount_help_to_synchronize=You must create an account on website %s to use this functionality.
    Get your API key.
    If you use a free account, you can't change the source currency (USD by default).
    If your main currency is not USD, the application will automatically recalculate it.

    You are limited to 1000 synchronizations per month. +multicurrency_appId=API key +multicurrency_appCurrencySource=Source currency +multicurrency_alternateCurrencySource=Alternate source currency +CurrenciesUsed=Currencies used +CurrenciesUsed_help_to_add=Add the different currencies and rates you need to use on your proposals, orders etc. +rate=rate +MulticurrencyReceived=Received, original currency +MulticurrencyRemainderToTake=Remaining amount, original currency +MulticurrencyPaymentAmount=Payment amount, original currency +AmountToOthercurrency=Amount To (in currency of receiving account) +CurrencyRateSyncSucceed=Currency rate synchronization done successfuly +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Use the currency of the document for online payments diff --git a/htdocs/langs/mn_MN/other.lang b/htdocs/langs/mn_MN/other.lang index 00259d976bc..ba85f51e739 100644 --- a/htdocs/langs/mn_MN/other.lang +++ b/htdocs/langs/mn_MN/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Sales order validated Notify_ORDER_SENTBYMAIL=Sales order sent by mail Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=URL of page WEBSITE_TITLE=Title WEBSITE_DESCRIPTION=Description WEBSITE_IMAGE=Image -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Keywords LinesToImport=Lines to import diff --git a/htdocs/langs/mn_MN/products.lang b/htdocs/langs/mn_MN/products.lang index d8a3192551f..a31243a07b6 100644 --- a/htdocs/langs/mn_MN/products.lang +++ b/htdocs/langs/mn_MN/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL MassBarcodeInit=Mass barcode init MassBarcodeInitDesc=This page can be used to initialize a barcode on objects that does not have barcode defined. Check before that setup of module barcode is complete. ProductAccountancyBuyCode=Accounting code (purchase) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Accounting code (sale) ProductAccountancySellIntraCode=Accounting code (sale intra-Community) ProductAccountancySellExportCode=Accounting code (sale export) @@ -165,7 +167,7 @@ SuppliersPrices=Vendor prices SuppliersPricesOfProductsOrServices=Vendor prices (of products or services) CustomCode=Customs / Commodity / HS code CountryOrigin=Origin country -Nature=Nature of produt (material/finished) +Nature=Nature of product (material/finished) ShortLabel=Short label Unit=Unit p=u. diff --git a/htdocs/langs/mn_MN/projects.lang b/htdocs/langs/mn_MN/projects.lang index 94e440f9ab9..bb42bff3c87 100644 --- a/htdocs/langs/mn_MN/projects.lang +++ b/htdocs/langs/mn_MN/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=which I'm linked to project Time=Time ListOfTasks=List of tasks GoToListOfTimeConsumed=Go to list of time consumed -GoToListOfTasks=Show as list -GoToGanttView=show as Gantt GanttView=Gantt View ListProposalsAssociatedProject=List of the commercial proposals related to the project ListOrdersAssociatedProject=List of sales orders related to the project @@ -188,7 +186,7 @@ PlannedWorkload=Planned workload PlannedWorkloadShort=Workload ProjectReferers=Related items ProjectMustBeValidatedFirst=Project must be validated first -FirstAddRessourceToAllocateTime=Assign a user resource to task to allocate time +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=Input per day InputPerWeek=Input per week InputPerMonth=Input per month @@ -240,6 +238,7 @@ LatestModifiedProjects=Latest %s modified projects OtherFilteredTasks=Other filtered tasks NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=Allow user comments on tasks AllowCommentOnProject=Allow user comments on projects @@ -256,7 +255,7 @@ ServiceToUseOnLines=Service to use on lines InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. ProjectFollowOpportunity=Follow opportunity -ProjectFollowTasks=Follow tasks +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Usage: Opportunity UsageTasks=Usage: Tasks @@ -265,3 +264,4 @@ InvoiceToUse=Draft invoice to use NewInvoice=New invoice OneLinePerTask=One line per task OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/mn_MN/receiptprinter.lang b/htdocs/langs/mn_MN/receiptprinter.lang index 3df49b9fe67..896eaa313dd 100644 --- a/htdocs/langs/mn_MN/receiptprinter.lang +++ b/htdocs/langs/mn_MN/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Dummy Printer CONNECTOR_NETWORK_PRINT=Network Printer CONNECTOR_FILE_PRINT=Local Printer CONNECTOR_WINDOWS_PRINT=Local Windows Printer +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Fake Printer for test, does nothing CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Default Profile PROFILE_SIMPLE=Simple Profile PROFILE_EPOSTEP=Epos Tep Profile @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Invoice month in letters DOL_VALUE_MONTH=Invoice month DOL_VALUE_DAY=Invoice day DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Invoice ref +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=Capital +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/mn_MN/stripe.lang b/htdocs/langs/mn_MN/stripe.lang index eb77441d2cd..844762040af 100644 --- a/htdocs/langs/mn_MN/stripe.lang +++ b/htdocs/langs/mn_MN/stripe.lang @@ -32,6 +32,7 @@ VendorName=Name of vendor CSSUrlForPaymentForm=CSS style sheet url for payment form NewStripePaymentReceived=New Stripe payment received NewStripePaymentFailed=New Stripe payment tried but failed +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Secret test key STRIPE_TEST_PUBLISHABLE_KEY=Publishable test key STRIPE_TEST_WEBHOOK_KEY=Webhook test key @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mo 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... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authenticatin rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/mn_MN/users.lang b/htdocs/langs/mn_MN/users.lang index 43fa5342da3..aea4e7676e4 100644 --- a/htdocs/langs/mn_MN/users.lang +++ b/htdocs/langs/mn_MN/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Users and their properties DomainUser=Domain user %s Reactivate=Reactivate CreateInternalUserDesc=This form allows you to create an internal user in your company/organization. To create an external user (customer, vendor etc. ..), use the button 'Create Dolibarr User' from that third-party's contact card. -InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other.

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=Permission granted because inherited from one of a user's group. Inherited=Inherited UserWillBeInternalUser=Created user will be an internal user (because not linked to a particular third party) @@ -110,3 +110,8 @@ UserLogged=User logged DateEmployment=Employment Start Date DateEmploymentEnd=Employment End Date CantDisableYourself=You can't disable your own user record +ForceUserExpenseValidator=Force expense report validator +ForceUserHolidayValidator=Force leave request validator +ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/mn_MN/website.lang b/htdocs/langs/mn_MN/website.lang index 9e5c4ba3ff8..bce2a09fb03 100644 --- a/htdocs/langs/mn_MN/website.lang +++ b/htdocs/langs/mn_MN/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=View page in new tab SetAsHomePage=Set as Home page RealURL=Real URL ViewWebsiteInProduction=View web site using home URLs -SetHereVirtualHost=Use with Apache/NGinx/...
    If you can create, on your web server (Apache, Nginx, ...), a dedicated Virtual Host with PHP enabled and a Root directory on
    %s
    then set the name of the virtual host you have created in the properties of web site, so the preview can be done also using this dedicated web server access instead of the internal Dolibarr server. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS=Use with PHP embedded server
    On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running
    php -S 0.0.0.0:8080 -t %s YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org CheckVirtualHostPerms=Check also that virtual host has permission %s on files into
    %s @@ -56,7 +57,7 @@ NoPageYet=No pages yet YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template SyntaxHelp=Help on specific syntax tips YouCanEditHtmlSourceckeditor=You can edit HTML source code using the "Source" button in editor. -YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Clone page/container CloneSite=Clone site SiteAdded=Website added @@ -76,7 +77,7 @@ BlogPost=Blog post WebsiteAccount=Website account WebsiteAccounts=Website accounts AddWebsiteAccount=Create web site account -BackToListOfThirdParty=Back to list for Third Party +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Disable website first MyContainerTitle=My web site title AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Sorry, this website is currently off line. Please 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 -OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that edits of HTML source will be possible when page content has been initialized by grabbing it from an external page ("Online" editor will NOT be available) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Only edition of HTML source is possible when content was grabbed from an external site GrabImagesInto=Grab also images found into css and page. ImagesShouldBeSavedInto=Images should be saved into directory @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 ch MainLanguage=Main language OtherLanguages=Other languages UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/mn_MN/zapier.lang b/htdocs/langs/mn_MN/zapier.lang new file mode 100644 index 00000000000..6d6eda71313 --- /dev/null +++ b/htdocs/langs/mn_MN/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr module + +# +# Admin page +# +ZapierForDolibarrSetup = Setup of Zapier for Dolibarr diff --git a/htdocs/langs/nb_NO/accountancy.lang b/htdocs/langs/nb_NO/accountancy.lang index 96dbc561dd8..7a21d725e36 100644 --- a/htdocs/langs/nb_NO/accountancy.lang +++ b/htdocs/langs/nb_NO/accountancy.lang @@ -121,6 +121,7 @@ InvoiceLinesDone=Bundne fakturalinjer ExpenseReportLines=Utgiftsrapport-linjer som skal bindes ExpenseReportLinesDone=Bundne utgiftsrapport-linjer IntoAccount=Bind linje med regnskapskonto +TotalForAccount=Total for accounting account Ventilate=Bind @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Regnskapskonto for registrering av donasjoner ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Regnskapskonto for å registrere abonnementer ACCOUNTING_PRODUCT_BUY_ACCOUNT=Regnskapskonto som standard for de kjøpte varene (brukt hvis ikke definert i produktarket) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Regnskapskonto som standard for kjøpte produkter i EU (brukt hvis ikke definert i produktarket) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Regnskapskonto som standard for kjøpte produkter og importert ut av EU (brukt hvis ikke definert i produktarket) ACCOUNTING_PRODUCT_SOLD_ACCOUNT=Standard regnskapskonto for solgte varer (brukt hvis ikke definert på varekortet) ACCOUNTING_PRODUCT_SOLD_INTRA_ACCOUNT=Regnskapskonto som standard for varene som selges i EU (brukt hvis ikke definert i varearket) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Regnskapskonto som standard for produktene som er solgt og eksportert ut av EU (brukt hvis ikke definert i varearket) + ACCOUNTING_SERVICE_BUY_ACCOUNT=Standard regnskapskonto for kjøpte tjenester (brukt hvis ikke definert på tjenestekortet) +ACCOUNTING_SERVICE_BUY_INTRA_ACCOUNT=Regnskapskonto som standard for kjøpte tjenester i EU (brukt hvis ikke definert i tjenestearket) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Regnskapskonto som standard for kjøpte tjenester og importert ut av EU (brukt hvis ikke definert i tjenestearket) ACCOUNTING_SERVICE_SOLD_ACCOUNT=Standard regnskapskonto for solgte tjenester (brukt hvis ikke definert på tjenestekortet) ACCOUNTING_SERVICE_SOLD_INTRA_ACCOUNT=Regnskapskonto som standard for tjenestene som selges i EU (brukes hvis ikke definert i tjenestearket) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Regnskapskonto som standard for tjenestene som er solgt og eksportert ut av EU (brukt hvis ikke definert i tjenestearket) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Tredjepart ukjent ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Tredjepartskonto ikke definert eller tredjepart ukjent. Blokkeringsfeil. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Ukjent tredjepartskonto og ventekonto ikke definert. Blokkeringsfeil PaymentsNotLinkedToProduct=Betaling ikke knyttet til noen vare/tjeneste +OpeningBalance=Opening balance ShowOpeningBalance=Vis åpningsbalanse HideOpeningBalance=Skjul åpningsbalansen +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Kontogruppe PcgtypeDesc=Kontogruppe brukes som forhåndsdefinerte 'filter' og 'gruppering' kriterier for noen regnskapsrapporter. For eksempel blir 'INNTEKT' eller 'UTGIFT' brukt som grupper for regnskapsføring av varer for å lage utgifts-/inntektsrapporten. +Reconcilable=Kan avstemmes + TotalVente=Total omsetning før skatt TotalMarge=Total salgsmargin @@ -307,11 +317,13 @@ Modelcsv_quadratus=Eksport til Quadratus QuadraCompta Modelcsv_ebp=Eksport tilEBP Modelcsv_cogilog=Eksport til Cogilog Modelcsv_agiris=Eksport til Agiris -Modelcsv_LDCompta=Eksporter for LD Compta (v9 og høyere) (Test) +Modelcsv_LDCompta=Eksport for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Eksporter for LD Compta (v10 og høyere) Modelcsv_openconcerto=Eksport for OpenConcerto (Test) Modelcsv_configurable=Eksport CSV Konfigurerbar Modelcsv_FEC=Eksporter FEC Modelcsv_Sage50_Swiss=Eksport for Sage 50 Switzerland +Modelcsv_winfic=Eksporter Winfic - eWinfic - WinSis Compta ChartofaccountsId=Kontoplan ID ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Salgsmodus OptionModeProductSellIntra=Modussalg eksportert i EU OptionModeProductSellExport=Modussalg eksportert i andre land OptionModeProductBuy=Innkjøpsmodus +OptionModeProductBuyIntra=Moduskjøp importert i EU +OptionModeProductBuyExport=Moduskjøp importert fra andre land OptionModeProductSellDesc=Vis alle varer for salg, med regnskapskonto OptionModeProductSellIntraDesc=Vis alle varer med regnskapskonto for salg innen EU OptionModeProductSellExportDesc=Vis alle varer med regnskapskonto for andre internasjonale salg. OptionModeProductBuyDesc=Vis alle varer for kjøp, med regnskapskonto +OptionModeProductBuyIntraDesc=Vis alle produkter med regnskapskonto for kjøp i EU. +OptionModeProductBuyExportDesc=Vis alle produkter med regnskapskonto for andre utenlandske kjøp. CleanFixHistory=Fjern regnskapskode fra linjer som ikke finnes i kontooversikt CleanHistory=Nullstill alle bindinger for valgt år PredefinedGroups=Forhåndsdefinerte grupper @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Kontoen er fjernet fra gruppen SaleLocal=Lokalt salg SaleExport=Eksportsalg SaleEEC=Salg i EU +SaleEECWithVAT=Salg i EU med mva som ikke er null, så vi antar at dette IKKE er et intra-EU salg og den foreslåtte kontoen er standard produktkonto. +SaleEECWithoutVATNumber=Salg i EU uten mva, men mva-ID for tredjepart er ikke definert. Vi faller tilbake på produktkontoen for standard salg. Du kan fikse mva-ID for tredjepart eller produktkonto om nødvendig. ## Dictionary Range= Oversikt over regnskapskonto diff --git a/htdocs/langs/nb_NO/admin.lang b/htdocs/langs/nb_NO/admin.lang index 07a50a0c31f..30532f0de69 100644 --- a/htdocs/langs/nb_NO/admin.lang +++ b/htdocs/langs/nb_NO/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Webserver bruker/gruppe NoSessionFound=Din PHP-konfigurasjon ser ut til å ikke tillate oppføring av aktive økter. Mappen som brukes til å lagre økter ( %s ) kan være beskyttet (for eksempel av operativsystemer eller ved hjelp av PHP-direktivet open_basedir). DBStoringCharset=Databasetegnsett for lagring av data DBSortingCharset=Databasetegnsett for sortering av data +HostCharset=Host charset ClientCharset=Klien karaktersett ClientSortingCharset=Klientsammenstilling WarningModuleNotActive=Modulen %s må være slått på @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Merk: din PHP-konfigurasjon begrenser for øyeb NoMaxSizeByPHPLimit=Merk: Det er ikke satt noen begrensninger i din PHP-konfigurasjon på denne serveren MaxSizeForUploadedFiles=Maksimal filstørrelse for opplasting av filer (0 for å ikke tillate opplasting) UseCaptchaCode=Bruk Capthca på innloggingsside -AntiVirusCommand= Full sti til antivirus kommandoen -AntiVirusCommandExample= Eksempel på ClamWin: c:\\Progra~1\\ClamWin\\bin\\clamscan.exe
    Eksempel på ClamAV: /usr/bin/clamscan +AntiVirusCommand=Full sti til antivirus kommandoen +AntiVirusCommandExample=Eksempel for ClamAv Daemon (krever clamav-daemon): /usr/bin/clamdscan
    Eksempel på ClamWin (veldig veldig treg): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= Flere parametre på kommandolinjen -AntiVirusParamExample= Eksempel på ClamWin: - database = "C:\\Program Files (x86)\\ClamWin\\ lib" +AntiVirusParamExample=Eksempel for ClamAv Daemon: --fdpass
    Eksempel for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=Oppsett av regnskapsmodul UserSetup=Oppsett av brukere MultiCurrencySetup=Oppsett av fler-valuta @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Funksjonen er slått av i demo FeatureAvailableOnlyOnStable=Egenskapen er kun tilgjengelig på offisielle, stabile versjoner BoxesDesc=Widgets er komponenter som viser litt informasjon du kan legge til for å tilpasse noen sider. Du kan velge mellom å vise widgeten eller ikke ved å velge målside og klikke på "Aktiver", eller ved å klikke på papirkurven for å deaktivere den. OnlyActiveElementsAreShown=Bare elementer fra aktiverte moduler vises. -ModulesDesc=Modulene/programmene bestemmer hvilke funksjoner som er tilgjengelige i programvaren. Noen moduler krever at brukere får tillatelser etter at modulen er aktivert. Klikk på på/av-knappen (på slutten av modullinjen) for å aktivere/deaktivere en modul/applikasjon. +ModulesDesc=Modulene/applikasjonene bestemmer hvilke funksjoner som er tilgjengelige i programvaren. Noen moduler krever at tillatelse gis til brukere etter at modulen er aktivert. Klikk på/av-knappen%s for hver modul for å aktivere eller deaktivere en modul/applikasjon. ModulesMarketPlaceDesc=Du kan finne flere moduler for nedlasting på eksterne nettsteder. ModulesDeployDesc=Hvis tillatelser for filsystemet tillater det, kan du bruke dette verktøyet til å distribuere en ekstern modul. Modulen vil da være synlig under fanen %s. ModulesMarketPlaces=Finn eksterne apper/moduler @@ -212,6 +213,7 @@ CompatibleUpTo=Kompatibel med versjon %s NotCompatible=Denne modulenser ikke ut til å være kompatibel med Dolibarr %s (Min %s - Max %s). CompatibleAfterUpdate=Denne modulen krever en oppdatering av Dolibarr %s (Min %s - Max %s). SeeInMarkerPlace=Se på Markedsplass +SeeSetupOfModule=Se oppsett av modul %s Updated=Oppdatert Nouveauté=Nyhet AchatTelechargement=Kjøp/Last ned @@ -221,6 +223,7 @@ DoliPartnersDesc=Liste over selskaper som tilbyr spesialutviklede moduler eller WebSiteDesc=Eksterne nettsteder for flere tilleggs- (ikke-kjerne) moduler ... DevelopYourModuleDesc=Noen løsninger for å utvikle din egen modul... URL=URL +RelativeURL=Relativ URL BoxesAvailable=Tilgjengelige widgeter BoxesActivated=Aktiverte widgeter ActivateOn=Aktivert på @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Sjekkbokser ExtrafieldCheckBoxFromList=Avkrysningsbokser fra tabell ExtrafieldLink=Lenke til et objekt ComputedFormula=Beregnet felt -ComputedFormulaDesc=Her kan du skrive inn en formel ved hjelp av andre objektegenskaper eller PHP-koding for å få en dynamisk beregningnet verdi. Du kan bruke PHP-kompatible formler, inkludert "?" operator og følgende globale objekt: $db, $conf, $langs, $mysoc, $user, $objekt .

    ADVARSEL : Kanskje bare noen egenskaper på $objekt er tilgjengelig. Hvis du trenger egenskaper som ikke er lastet, kan du bare hente objektet i formelen din som i det andre eksempelet.
    Ved å bruke et beregnet felt betyr det at du ikke selv kan angi noen verdi fra grensesnittet. Også, hvis det er en syntaksfeil, kan det hende formelen ikke returnerer noe.

    Eksempel på formel:
    $objekt->id<10? round ($object->id / 2, 2) : ($object-> id + 2 *$user->id) * (int) substr($mysoc->zip, 1, 2)

    Eksempel på å ny innlasting av objekt
    (($reloadedobj = new Societe ($db)) && ($reloadedobj->fetch($obj-> id? $ obj-> id: ($obj-> rowid? $obj-> rowid: $object-> id))> 0))? $reloadedobj-> array_options ['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Annet eksempel på formel for å tvinge lasting av objekt og dets overordnede objekt:
    (($reloadedobj = Ny oppgave ($db)) && ($reloadedobj->fetch($objekt->id)> 0) && ($secondloadedobj = nytt prosjekt ($db)) && ($secondloadedobj->fetch($reloadedobj-> fk_project )> 0))? $secondloadedobj-> ref: 'Foreldreprosjekt ikke funnet' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Lagre beregnede felt ComputedpersistentDesc=Beregnede ekstrafelt vil bli lagret i databasen, men verdien blir bare omregnet når objektet til dette feltet endres. Hvis det beregnede feltet avhenger av andre objekter eller globale data, kan denne verdien være feil! ExtrafieldParamHelpPassword=Hvis dette feltet er tomt, vil denne verdien bli lagret uten kryptering (feltet må bare skjules med stjerne på skjermen).
    Angi 'auto' for å bruke standard krypteringsregel for å lagre passordet i databasen (da vil verdiavlesning være bare hash, uten noen måte å hente opprinnelig verdi på) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Hold tomt for å bruke standardverdien DefaultLink=Standard kobling SetAsDefault=Sett som standard ValueOverwrittenByUserSetup=Advarsel, denne verdien kan bli overskrevet av brukerspesifikke oppsett (hver bruker kan sette sitt eget clicktodial url) -ExternalModule=Ekstern modul - Installert i katalog %s +ExternalModule=Ekstern modul +InstalledInto=Installert i mappen %s BarcodeInitForthird-parties=Masseinitiering av strekkoder for tredjeparter BarcodeInitForProductsOrServices=Masseinitiering eller sletting av strekkoder for varer og tjenester CurrentlyNWithoutBarCode=For øyeblikket har du %s poster på %s %s uten strekkode. @@ -947,7 +951,7 @@ DictionaryCanton=Stater/provinser DictionaryRegion=Region DictionaryCountry=Land DictionaryCurrency=Valutaer -DictionaryCivility=Tittel +DictionaryCivility=Ærestittel DictionaryActions=Typer agendahendelser DictionarySocialContributions=Typer av sosiale avgifter og skatter DictionaryVAT=MVA satser @@ -988,6 +992,7 @@ VATIsNotUsedDesc=Foreslått MVA er som standard 0. Den kan brukes mot foreninger VATIsUsedExampleFR=I Frankrike betyr det at bedrifter eller organisasjoner har et reelt finanssystem (forenklet reell eller normal reell). Et system hvor MVA er erklært. VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. ##### Local Taxes ##### +TypeOfSaleTaxes=Type omsetningsavgift LTRate=Rate LocalTax1IsNotUsed=Ikke bruk andre skatter LocalTax1IsUsedDesc=Bruk en annen type skatt (annet enn den første) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=Standard RE-sats når du oppretter prospekter, fakturaer, LocalTax2IsNotUsedDescES=Som standard er den foreslåtte IRPF er 0. Slutt på regelen. LocalTax2IsUsedExampleES=I Spania, for frilansere og selvstendige som leverer tjenester, og bedrifter som har valgt moduler for skattesystem. LocalTax2IsNotUsedExampleES=I Spania er de bedrifter som ikke er ikke skattepliktige +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Bruk et avgiftsstempel +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=Rapport over lokale avgifter CalcLocaltax1=Salg - Innkjøp CalcLocaltax1Desc=Lokale skatter-rapporter kalkuleres med forskjellen mellom kjøp og salg @@ -1018,6 +1026,7 @@ CalcLocaltax2=Innkjøp CalcLocaltax2Desc=Lokale skatter-rapportene viser totalt kjøp CalcLocaltax3=Salg CalcLocaltax3Desc=Lokale skatter-rapportene viser totalt salg +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=Etiketten som brukes som standard hvis ingen oversettelse kan bli funnet for kode LabelOnDocuments=Etiketten på dokumenter LabelOrTranslationKey=Etikett eller oversettelsessnøkkel @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Utgiftsrapporter for godkjenning Delays_MAIN_DELAY_HOLIDAYS=Legg igjen forespørsler for godkjenning SetupDescription1=Før du begynner å bruke Dolibarr, må noen innledende parametere defineres og moduler aktiveres/konfigureres. SetupDescription2=Følgende to seksjoner er obligatoriske (de to første oppføringene i oppsettmenyen): -SetupDescription3=  %s -> %s
    Grunnparametere som brukes til å tilpasse standardoppførelsen til applikasjonen din (for eksempel landrelaterte funksjoner). -SetupDescription4=  %s -> %s
    Denne programvaren er en serie av mange moduler/applikasjoner, alle mer eller mindre uavhengige. Modulene som er relevante for dine behov, må aktiveres og konfigureres. Nye elementer/alternativer legges til menyer ved aktivering av en modul. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. SetupDescription5=Annet oppsett menyoppføringer styrer valgfrie parametere. LogEvents=Hendelser relatert til sikkerhet Audit=Revisjon @@ -1128,7 +1137,7 @@ LogEventDesc=Aktiver logging av bestemte sikkerhetshendelser. Administratorer n AreaForAdminOnly=Oppsettparametere kan bare angis av administratorbrukere . SystemInfoDesc=Systeminformasjon er diverse teknisk informasjon som kun vises i skrivebeskyttet modus, og som kun er synlig for administratorer. SystemAreaForAdminOnly=Dette området er kun tilgjengelig for administratorbrukere. Dolibarr brukerrettigheter kan ikke endre denne begrensningen. -CompanyFundationDesc=Rediger informasjonen til selskapet/enheten. Klikk på knappen "%s" nederst på siden. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. AccountantDesc=Hvis du har en ekstern revisor/regnskapsholder, kan du endre dennes informasjon her. AccountantFileNumber=Regnskapsførerkode DisplayDesc=Parametre som påvirker utseende og oppførsel av Dolibarr kan endres her. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Regler for å generere og validere passord DisableForgetPasswordLinkOnLogonPage=Ikke vis koblingen "Glemt passord" på innloggingssiden UsersSetup=Oppsett av brukermodulen UserMailRequired=E-postadresse kreves for å opprette en ny bruker +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Dokumentmaler for dokumenter generert fra brukerpost +GroupsDocModules=Dokumentmaler for dokumenter generert fra en gruppeoppføring ##### HRM setup ##### HRMSetup=Oppsett av HRM-modul ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Fakturamaler BillsPDFModulesAccordindToInvoiceType=Faktura-dokumentmodeller etter fakturatype PaymentsPDFModules=Betalingsdokumentmodeller ForceInvoiceDate=Tving fakturadato til godkjenningsdato -SuggestedPaymentModesIfNotDefinedInInvoice=Foreslått betalingsmåte på fakturaer når annet ikke er angitt +SuggestedPaymentModesIfNotDefinedInInvoice=Foreslått betalingsmodus på faktura som standard hvis den ikke er definert på fakturaen SuggestPaymentByRIBOnAccount=Foreslå betaling trukket fra konto SuggestPaymentByChequeToAddress=Foreslå betaling med sjekk til FreeLegalTextOnInvoices=Fritekst på fakturaer @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Oppsett av leverandørbetaling PropalSetup=Oppsett av modulen Tilbud ProposalsNumberingModules=Nummereringsmodul for tilbud ProposalsPDFModules=Tilbudsmaler -SuggestedPaymentModesIfNotDefinedInProposal=Foreslått standard betalingsmodus på tilbud, hvis valg ikke er gjort +SuggestedPaymentModesIfNotDefinedInProposal=Forslag til betalingsmodus på tilbud som standard hvis ikke definert i tilbudet FreeLegalTextOnProposal=Fritekst på tilbud WatermarkOnDraftProposal=Vannmerke på tilbudskladder (ingen hvis tom) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Be om bankkonto for tilbudet @@ -1322,6 +1334,7 @@ WAREHOUSE_ASK_WAREHOUSE_DURING_ORDER=Spør om Lagerkilde for ordre ##### Suppliers Orders ##### BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_ORDER=Be om bankkonto destinasjon for innkjøpsordre ##### Orders ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=Salgsordreoppsett OrdersNumberingModules=Nummereringsmodul for ordre OrdersModelModule=Ordremaler @@ -1720,7 +1733,7 @@ MultiCompanySetup=Oppsett av multi-selskap-modulen ##### Suppliers ##### SuppliersSetup=Oppsett av leverandørmodul SuppliersCommandModel=Komplett mal for innkjøpsordre -SuppliersCommandModelMuscadet=Komplett mal for innkjøpsordre +SuppliersCommandModelMuscadet=Komplett mal for innkjøpsordre (gammel implementering av cornas mal) SuppliersInvoiceModel=Komplett mal for leverandørfaktura SuppliersInvoiceNumberingModel=Leverandørfaktura nummereringsmodeller IfSetToYesDontForgetPermission=Hvis satt til en ikke-nullverdi, ikke glem å gi tillatelser til grupper eller brukere som er tillatt for den andre godkjenningen @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Skjul bilder i toppmeny LeftMenuBackgroundColor=Bakgrunnsfarge for venstre meny BackgroundTableTitleColor=Bakgrunnsfarge for tittellinje i tabellen BackgroundTableTitleTextColor=Tekstfarge for tabellens tittellinje +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Bakgrunnsfarge for oddetalls-tabellinjer BackgroundTableLineEvenColor=Bakgrunnsfarge for partalls-tabellinjer MinimumNoticePeriod=Frist for beskjed (Feriesøknaden må sendes inn før denne fristen) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Dolibarr referanse ikke funnet i Meldings-ID FormatZip=Postnummer MainMenuCode=Meny-oppføringskode (hovedmeny) ECMAutoTree=Vis ECM-tre automatisk  -OperationParamDesc=Definer verdier som skal brukes til handlinger, eller hvordan du trekker ut verdier. For eksempel:
    objproperty1=SET:abc
    objproperty1=SET: en verdi med erstatning for __objproperty1__
    objproperty3=SETIFEMPTY:abc
    objproperty4=EXTRACT:HEADER:.X-Myheaderkey.*[^\\s]+(*).
    options_myextrafield=EXTRACT:SUBJECT:([^\\s]*)
    object.objproperty5=EXTRACT:BODY:Mitt firmanavn er\\s([^\\s]*)

    Bruk semikolon som separator for å trekke ut eller sette flere egenskaper. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Åpningstider OpeningHoursDesc=Skriv inn de vanlige åpningstidene for bedriften din. ResourceSetup=Konfigurasjon av ressursmodulen @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Advarsel, høyere verdier reduserer res ModuleActivated=Modul %s er aktivert og bremser grensesnittet EXPORTS_SHARE_MODELS=Eksportmodellene er delt med alle ExportSetup=Oppsett av modul Eksport +ImportSetup=Oppsett av importmodul InstanceUniqueID=Unik ID for forekomsten SmallerThan=Mindre enn LargerThan=Større enn @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Utfør et anonymt Ping '+1' til Dolibarr foundation-serveren ( FeatureNotAvailableWithReceptionModule=Funksjonen er ikke tilgjengelig når modulen Mottak er aktivert EmailTemplate=Mal for e-post EMailsWillHaveMessageID=E-postmeldinger vil være merket 'Referanser' som samsvarer med denne syntaksen -PDF_USE_ALSO_LANGUAGE_CODE=Hvis du vil ha en teksttittel i PDF-en din på to forskjellige språk i samme genererte PDF, må du angi andrespråket her. Det som er valgt når du genererer PDF, og dette (bare få PDF-maler støtter dette). Hold tomt for kun ett språk per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Skriv inn koden til et FontAwesome-ikon. Hvis du ikke vet hva som er FontAwesome, kan du bruke den generelle verdien fa-adresseboken. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Gå til Setup -> Widgets +MeasuringUnitTypeDesc=Bruk en verdi som "størrelse", "overflate", "volum", "vekt", "tid" +MeasuringScaleDesc=Skalaen er antall steder du må flytte kommaet for å samsvare med standard referansenhet. For enhetstypen "tid" er det antall sekunder. Verdier mellom 80 og 99 er reserverte verdier. diff --git a/htdocs/langs/nb_NO/bills.lang b/htdocs/langs/nb_NO/bills.lang index b4d0757bc79..39a212a6f30 100644 --- a/htdocs/langs/nb_NO/bills.lang +++ b/htdocs/langs/nb_NO/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Leverandørfakturaer SupplierBill=Leverandørfaktura SupplierBills=Leverandørfakturaer Payment=Betaling -PaymentBack=Tilbakebetaling -CustomerInvoicePaymentBack=Tilbakebetalinger +PaymentBack=Refusjon +CustomerInvoicePaymentBack=Refusjon Payments=Betalinger PaymentsBack=Refusjoner paymentInInvoiceCurrency=i faktura-valuta PaidBack=Tilbakebetalt DeletePayment=Slett betaling ConfirmDeletePayment=Er du sikker på at du vil slette denne betalingen? -ConfirmConvertToReduc=Vil du konvertere denne %s til en absolutt rabatt? +ConfirmConvertToReduc=Vil du konvertere denne %s til en tilgjengelig kreditt? ConfirmConvertToReduc2=Beløpet vil bli lagret blant alle rabatter og kan brukes som en rabatt for en nåværende eller fremtidig faktura for denne kunden. -ConfirmConvertToReducSupplier=Vil du konvertere denne %s til en absolutt rabatt? +ConfirmConvertToReducSupplier=Vil du konvertere denne %s til en tilgjengelig kreditt? ConfirmConvertToReducSupplier2=Beløpet vil bli lagret blant alle rabatter og kan brukes som en rabatt for en nåværende eller en fremtidig faktura for denne leverandøren. SupplierPayments=Leverandørbetalinger ReceivedPayments=Mottatte betalinger @@ -209,17 +209,13 @@ NumberOfBillsByMonth=Antall fakturaer pr. måned AmountOfBills=Totalbeløp fakturaer AmountOfBillsHT=Sum fakturaer pr. mnd (eks. MVA) AmountOfBillsByMonthHT=Sum fakturaer pr. mnd (eks. MVA) -ShowSocialContribution=Vis skatter og avgifter -ShowBill=Vis faktura -ShowInvoice=Vis faktura -ShowInvoiceReplace=Vis erstatningsfaktura -ShowInvoiceAvoir=Vis kreditnota -ShowInvoiceDeposit=Vis nedbetalingsfaktura -ShowInvoiceSituation=Vis delfaktura UseSituationInvoices=Tillat delfaktura UseSituationInvoicesCreditNote=Tillat delfaktura kreditnota Retainedwarranty=Tilbakehold +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Tilbakehold standardprosent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=Å betale på %s toPayOn=å betale på %s RetainedWarranty=Tilbakehold @@ -230,7 +226,6 @@ setretainedwarranty=Sett tilbakehold setretainedwarrantyDateLimit=Sett tilbakehold frist RetainedWarrantyDateLimit=Tilbakehold frist RetainedWarrantyNeed100Percent=Delfakturaen må være på 100%% fremdrift for å vises på PDF -ShowPayment=Vis betaling AlreadyPaid=Allerede betalt AlreadyPaidBack=Allerede tilbakebetalt AlreadyPaidNoCreditNotesNoDeposits=Allerede betalt (uten kreditnotater og nedbetalinger) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Generert fra fakturamal %s WarningInvoiceDateInFuture=Advarsel, fakturadato er høyere enn dagens dato WarningInvoiceDateTooFarInFuture=Advarsel, er fakturadato for langt fra dagens dato ViewAvailableGlobalDiscounts=Vis tilgjengelige rabatter +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Status PaymentConditionShortRECEP=Forfall ved mottak @@ -509,7 +505,7 @@ ToMakePayment=Betal ToMakePaymentBack=Tilbakebetal ListOfYourUnpaidInvoices=Liste over ubetalte fakturaer NoteListOfYourUnpaidInvoices=Denne listen inneholder kun fakturaer for tredjeparter du er koblet til som salgsrepresentant. -RevenueStamp=Stempelmerke +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=Dette alternativet er bare tilgjengelig når du oppretter faktura fra kategorien "kunde" under tredjepart YouMustCreateInvoiceFromSupplierThird=Dette alternativet er bare tilgjengelig når du oppretter faktura fra kategorien "leverandør" under tredjepart YouMustCreateStandardInvoiceFirstDesc=Du må først lage en standardfaktura og så konvertere den til "mal" for å lage en ny fakturamal @@ -575,3 +571,4 @@ AutoFillDateTo=Angi sluttdato for tjenestelinje med neste faktura dato AutoFillDateToShort=Angi sluttdato MaxNumberOfGenerationReached=Maks ant. genereringer nådd BILL_DELETEInDolibarr=Faktura slettet +BILL_SUPPLIER_DELETEInDolibarr=Leverandørfaktura slettet diff --git a/htdocs/langs/nb_NO/blockedlog.lang b/htdocs/langs/nb_NO/blockedlog.lang index abac55b8269..1f7280e6ab8 100644 --- a/htdocs/langs/nb_NO/blockedlog.lang +++ b/htdocs/langs/nb_NO/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Uforanderlige logger ShowAllFingerPrintsMightBeTooLong=Vis alle arkiverte logger (kan være lang) ShowAllFingerPrintsErrorsMightBeTooLong=Vis alle ikke-gyldige arkivlogger (kan være lang) DownloadBlockChain=Last ned fingeravtrykk -KoCheckFingerprintValidity=Arkivert logg er ikke gyldig. Det betyr at noen (en hacker?) har endret noen data i den arkiverte loggen etter at den ble registrert, eller har slettet den forrige arkiverte posten (sjekk at linjen med tidligere # eksisterer). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Arkivert logg er gyldig. Det betyr at ingen data på denne linjen ble endret og posten følger den forrige. OkCheckFingerprintValidityButChainIsKo=Arkivert logg ser ut til å være gyldig i forhold til den forrige, men kjeden var ødelagt tidligere. AddedByAuthority=Lagret hos ekstern myndighet diff --git a/htdocs/langs/nb_NO/cashdesk.lang b/htdocs/langs/nb_NO/cashdesk.lang index 4c8f57ff9c3..de444112b59 100644 --- a/htdocs/langs/nb_NO/cashdesk.lang +++ b/htdocs/langs/nb_NO/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Legg til denne artikkelen RestartSelling=Gå tilbake på salg SellFinished=Salg fullført PrintTicket=Skriv kvittering +SendTicket=Send ticket NoProductFound=Ingen artikler funnet ProductFound=vare funnet NoArticle=Ingen artikkel @@ -48,6 +49,7 @@ Footer=Bunntekst AmountAtEndOfPeriod=Beløp ved periodens slutt (dag, måned eller år) TheoricalAmount=Teoretisk beløp RealAmount=Virkelig beløp +CashFence=Cash fence CashFenceDone=Kontantoppgjør ferdig for perioden NbOfInvoices=Ant. fakturaer Paymentnumpad=Tastaturtype for å legge inn betaling @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS trenger varekategorier for å fungere OrderNotes=Ordrenotater CashDeskBankAccountFor=Standardkonto for bruk for betalinger i NoPaimementModesDefined=Ingen betalingsmodus definert i TakePOS-konfigurasjonen -TicketVatGrouped=Grupper MVA etter sats i kvitteringer -AutoPrintTickets=Skriv ut kvitteringer automatisk +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Aktiver funksjoner for Bar eller Restaurant ConfirmDeletionOfThisPOSSale=Bekrefter du slettingen av pågående salg? ConfirmDiscardOfThisPOSSale=Ønsker du å forkaste dette nåværende salget? @@ -87,7 +90,19 @@ HeadBar=Toppmeny SortProductField=Felt for sortering av produkter Browser=Nettleser BrowserMethodDescription=Enkel kvitteringsutskrift. Kun noen få parametere for å konfigurere kvitteringen. Skriv ut via nettleser. -TakeposConnectorMethodDescription=Ekstern modul med ekstra funksjoner. Mulighet for å skrive ut fra skyen. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Utskriftsmetode ReceiptPrinterMethodDescription=Metode med mange parametere. Full tilpassbar med maler. Kan ikke skrive ut fra skyen. ByTerminal=Med terminal +TakeposNumpadUsePaymentIcon=Bruk betalingsikonet på numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start et nytt parallellsalg +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/nb_NO/companies.lang b/htdocs/langs/nb_NO/companies.lang index 5f0f0675601..319030bfc9e 100644 --- a/htdocs/langs/nb_NO/companies.lang +++ b/htdocs/langs/nb_NO/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted=Firma "%s" er slettet fra databasen. ListOfContacts=Oversikt over kontaktpersoner ListOfContactsAddresses=Oversikt over kontaktpersoner ListOfThirdParties=Liste over tredjeparter -ShowCompany=Vis tredjepart ShowContact=Vis kontaktperson ContactsAllShort=Alle (ingen filter) ContactType=Kontaktperson type @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=Selgers fornavn SaleRepresentativeLastname=Selgers etternavn ErrorThirdpartiesMerge=Det oppsto en feil ved sletting av tredjepart. Vennligst sjekk loggen. Endringer er blitt tilbakestilt. NewCustomerSupplierCodeProposed=Kunde eller leverandørkode er allerede brukt, en ny kode blir foreslått +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Betalingstype - Kunde PaymentTermsCustomer=Betalingsbetingelser - Kunde diff --git a/htdocs/langs/nb_NO/compta.lang b/htdocs/langs/nb_NO/compta.lang index f59c7921d87..0268b80d861 100644 --- a/htdocs/langs/nb_NO/compta.lang +++ b/htdocs/langs/nb_NO/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=Se %sanalyse av betalinger%s for en beregning av fakt SeeReportInDueDebtMode=Se %sanalyse av fakturaer%s for en beregning basert på kjente registrerte fakturaer, selv om de ennå ikke er regnskapsført i hovedboken. SeeReportInBookkeepingMode=Se %sRegnskapsrapport%s for en beregning på Hovedbokstabell RulesAmountWithTaxIncluded=- Viste beløp er inkludert alle avgifter -RulesResultDue=- Inkluderer utestående fakturaer, utgifter, MVA og donasjoner, enten de er betalt eller ikke. Inkluderer også utbetalt lønn.
    - Basert på valideringsdato for fakturaer og MVA og på forfallsdato for utgifter. For lønn definert med Lønn-modulen, benyttes utbetalingstidspunktet. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- Inkluderer betalinger gjort mot fakturaer, utgifter, MVA og lønn.
    Basert på betalingsdato. Donasjonsdato for donasjoner -RulesCADue=- Inkluderer kundens forfalte fakturaer, enten de er betalt eller ikke.
    Basert på valideringsdatoen til disse fakturaene.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- Inkluderer alle betalinger av fakturaer mottatt fra klienter.
    - Er basert på betalingsdatoen for disse fakturaene
    RulesCATotalSaleJournal=Den inkluderer alle kredittlinjer fra salgsjournalen. RulesAmountOnInOutBookkeepingRecord=Inkluderer poster i hovedboken med regnskapskontoer som har gruppen "UTGIFTER" eller "INNTEKT" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Omsetning fakturert etter MVA-sats TurnoverCollectedbyVatrate=Omsetning etter MVA-sats PurchasebyVatrate=Innkjøp etter MVA-sats LabelToShow=Kort etikett +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/nb_NO/errors.lang b/htdocs/langs/nb_NO/errors.lang index 6dba399c656..8ec753e1705 100644 --- a/htdocs/langs/nb_NO/errors.lang +++ b/htdocs/langs/nb_NO/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=Filen ble ikke fullstendig mottatt av server. ErrorNoTmpDir=Midlertidig mappe %s finnes ikke. ErrorUploadBlockedByAddon=Opplastning blokkert av en PHP/Apache plugin. ErrorFileSizeTooLarge=Filstørrelsen er for stor. +ErrorFieldTooLong=Felt %s er for langt. ErrorSizeTooLongForIntType=Størrelse for lang for int-type (%s sifre maksimum) ErrorSizeTooLongForVarcharType=Størrelse for lang for streng-type (%s tegn maksimum) ErrorNoValueForSelectType=Sett inn verdi for å velge liste @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Feil, språket på oversatt side ErrorBatchNoFoundForProductInWarehouse=Ingen partier/serier funnet for produktet "%s" i lageret "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=Ikke nok mengde for dette partiet/serien for produktet "%s" i lageret "%s". ErrorOnlyOneFieldForGroupByIsPossible=Bare ett felt for 'Grupper etter' er mulig (andre blir forkastet) -ErrorTooManyDifferentValueForSelectedGroupBy=Fant for mange forskjellige verdier (mer enn %s ) for feltet ' %s ', så vi kan ikke bruke det som grafikk. Feltet 'Grupper etter' er fjernet. Kan det være du ønsket å bruke den som X-akse? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # Warnings WarningParamUploadMaxFileSizeHigherThanPostMaxSize=PHP-parameteren upload_max_filesize (%s) er høyere enn PHP-parameteren post_max_size (%s). Dette er ikke et konsistent oppsett. 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. diff --git a/htdocs/langs/nb_NO/install.lang b/htdocs/langs/nb_NO/install.lang index 70b583c7caa..33d72b19f03 100644 --- a/htdocs/langs/nb_NO/install.lang +++ b/htdocs/langs/nb_NO/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=Denne PHP støtter Curl. PHPSupportCalendar=Denne PHP støtter kalenderutvidelser. PHPSupportUTF8=Denne PHP støtter UTF8 funksjoner. PHPSupportIntl=Dette PHP støtter Intl funksjoner. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=Denne PHP støtter %s-funksjoner. PHPMemoryOK=Din PHP økt-minne er satt til maks.%s bytes. Dette bør være nok. PHPMemoryTooLow=Din PHP max økter-minnet er satt til %s bytes. Dette er for lavt. Endre php.ini å sette memory_limit parameter til minst %s byte. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=Din PHP-installasjon støtter ikke Curl. ErrorPHPDoesNotSupportCalendar=PHP-installasjonen din støtter ikke php-kalenderutvidelser. ErrorPHPDoesNotSupportUTF8=Din PHP installasjon har ikke støtte for UTF8-funksjoner. Dolibarr vil ikke fungere riktig. Løs dette før du installerer Dolibarr. ErrorPHPDoesNotSupportIntl=PHP-installasjonen støtter ikke Intl-funksjoner. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=PHP-installasjonen din støtter ikke %s-funksjoner. ErrorDirDoesNotExists=Mappen %s finnes ikke. ErrorGoBackAndCorrectParameters=Gå tilbake og sjekk/korrigér parametrene. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=Programmet prøvde å oppgradere selv, men instal YouTryInstallDisabledByFileLock=Programmet prøvde å oppgradere selv, men installerings- / oppgraderingssidene er deaktivert for sikkerhet (ved eksistensen av en låsfil install.lock i dolibarr-dokumenter katalogen).
    ClickHereToGoToApp=Klikk her for å gå til din applikasjon ClickOnLinkOrRemoveManualy=Klikk på følgende lenke. Hvis du alltid ser denne samme siden, må du fjerne/endre navn på filen install.lock i dokumentmappen. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/nb_NO/link.lang b/htdocs/langs/nb_NO/link.lang index 3719cf4a7dc..d8f4d669605 100644 --- a/htdocs/langs/nb_NO/link.lang +++ b/htdocs/langs/nb_NO/link.lang @@ -8,3 +8,4 @@ LinkRemoved=Koblingen til %s ble fjernet ErrorFailedToDeleteLink= Klarte ikke å fjerne kobling'%s' ErrorFailedToUpdateLink= Klarte ikke å oppdatere koblingen til '%s' URLToLink=URL til link +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/nb_NO/mails.lang b/htdocs/langs/nb_NO/mails.lang index 3c29bd69e86..415ecec5f1a 100644 --- a/htdocs/langs/nb_NO/mails.lang +++ b/htdocs/langs/nb_NO/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=Ingen kontakter/adresser med kategori funnet NoContactLinkedToThirdpartieWithCategoryFound=Ingen kontakter/adresser med kategori funnet OutGoingEmailSetup=Oppsett for utgående epost InGoingEmailSetup=Oppsett for innkommende epost -OutGoingEmailSetupForEmailing=Oppsett av utgående e-post (for masse-e-post) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Standard utgående e-postoppsett Information=Informasjon ContactsWithThirdpartyFilter=Kontakter med tredjepartsfilter diff --git a/htdocs/langs/nb_NO/main.lang b/htdocs/langs/nb_NO/main.lang index 7896ac6e5fc..b90db6eb455 100644 --- a/htdocs/langs/nb_NO/main.lang +++ b/htdocs/langs/nb_NO/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Lagre og bli SaveAndNew=Lagre og ny TestConnection=Test tilkobling ToClone=Klon +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Velg hvilke data du vil klone: NoCloneOptionsSpecified=Det er ikke valgt noen data å klone. Of=av @@ -829,6 +830,8 @@ Gender=Kjønn Genderman=Mann Genderwoman=Kvinne ViewList=Listevisning +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Obligatorisk Hello=Hei GoodBye=Farvel @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Velg alternativer for å lage en graf Measures=Målinger XAxis=X-akse YAxis=Y-akse +StatusOfRefMustBe=Status for %s må være %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/nb_NO/modulebuilder.lang b/htdocs/langs/nb_NO/modulebuilder.lang index 49a54bc0533..5dd4c5c3623 100644 --- a/htdocs/langs/nb_NO/modulebuilder.lang +++ b/htdocs/langs/nb_NO/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=Liste over ordbokinnføringer ListOfPermissionsDefined=Liste over definerte tillatelser SeeExamples=Se eksempler her EnabledDesc=Betingelse for å ha dette feltet aktivt (Eksempler: 1 eller $conf->global->MYMODULE_MYOPTION) -VisibleDesc=Er feltet synlig? (Eksempler: 0=Aldri synlig, 1=Synlig på liste og opprett/oppdater/vis skjemaer, 2=Synlig bare på liste, 3=Synlig bare på opprett/oppdater/vis skjema (ikke liste), 4=Synlig bare på liste og oppdaterings-/visningsskjema (ikke opprett), 5=Synlig på listens sluttformular (ikke opprett, ikke oppdatering). Bruk av negativ verdi betyr at feltet ikke vises som standard på listen, men kan velges for visning). Det kan være et uttrykk, for eksempel:
    preg_match ('public/',$_SERVER['PHP_SELF'])?0:1
    ($ user->rights->holiday>define_holiday ? 1: 0) -DisplayOnPdfDesc=Vis dette feltet på kompatible PDF-dokumenter, du kan endre posisjon med "Posisjon" -feltet.
    For øyeblikket er kjente kompatible PDF-modeller: eratostene +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Vis dette feltet på kompatible PDF-dokumenter, du kan administrere posisjon med "Posisjon" -feltet.
    Kjente kompatible PDF-modeller er: Eratosthenes (Ordre), espadon (Forsendelse), sponge (Fakturaer), cyan (Tilbud), cornas (Leverandørordre)

    For dokument:
    0 = Vises ikke
    1 = Vises
    2 = Vises bare hvis ikke tom

    For dokumentlinjer:
    0 = Vises ikke
    1 = Vises i en kolonne
    3 = vises i linje etter beskrivelsen
    4 = vises etter beskrivelse hvis ikke tom DisplayOnPdf=Vis på PDF IsAMeasureDesc=Kan verdien av feltet bli kumulert for å få en total i listen? (Eksempler: 1 eller 0) SearchAllDesc=Er feltet brukt til å søke fra hurtigsøkingsverktøyet? (Eksempler: 1 eller 0) diff --git a/htdocs/langs/nb_NO/multicurrency.lang b/htdocs/langs/nb_NO/multicurrency.lang index 1363f65f8b7..37e020c3028 100644 --- a/htdocs/langs/nb_NO/multicurrency.lang +++ b/htdocs/langs/nb_NO/multicurrency.lang @@ -18,3 +18,5 @@ MulticurrencyReceived=Mottatt, originalvaluta MulticurrencyRemainderToTake=Resterende beløp, opprinnelig valuta MulticurrencyPaymentAmount=Beløp, original valuta AmountToOthercurrency=Beløp til (i valuta for mottakskonto) +CurrencyRateSyncSucceed=Valutakurssynkronisering vellykket +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Bruk dokumentets valuta for online betalinger diff --git a/htdocs/langs/nb_NO/other.lang b/htdocs/langs/nb_NO/other.lang index 444b6345cbd..4c894695c78 100644 --- a/htdocs/langs/nb_NO/other.lang +++ b/htdocs/langs/nb_NO/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grafikk er begrenset til %s-mål i 'Barer' -mod OnlyOneFieldForXAxisIsPossible=Bare ett felt er for øyeblikket mulig som X-Akse. Bare det første valgte feltet er valgt. AtLeastOneMeasureIsRequired=Det kreves minst ett felt for mål AtLeastOneXAxisIsRequired=Minst ett felt for X-akse er påkrevd - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Salgsordre validert Notify_ORDER_SENTBYMAIL=Salgsordre sendt via epost Notify_ORDER_SUPPLIER_SENTBYMAIL=Innkjøpsordre sendt via e-post @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=Side-URL WEBSITE_TITLE=Tittel WEBSITE_DESCRIPTION=Beskrivelse WEBSITE_IMAGE=Bilde -WEBSITE_IMAGEDesc=Relativ bane for bildemediet. Du kan holde dette tomt da dette sjelden blir brukt (det kan brukes av dynamisk innhold for å vise et miniatyrbilde i en liste over blogginnlegg). Bruk __WEBSITEKEY__ i banen hvis banen avhenger av nettstedets navn. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Nøkkelord LinesToImport=Linjer å importere diff --git a/htdocs/langs/nb_NO/products.lang b/htdocs/langs/nb_NO/products.lang index e0280204dba..ec59a80ddcc 100644 --- a/htdocs/langs/nb_NO/products.lang +++ b/htdocs/langs/nb_NO/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=Dette verktøyet oppdaterer MVA-verdien som er definert MassBarcodeInit=Masse strekkode-endring MassBarcodeInitDesc=Denne siden kan brukes til å lage strekkoder for objekter som ikke har dette. Kontroller at oppsett av modulen Strekkoder er fullført. ProductAccountancyBuyCode=Regnskapskode (kjøp) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Regnskapskode (salg) ProductAccountancySellIntraCode=Regnskapskode (salg intra-community) ProductAccountancySellExportCode=Regnskapskode (salgseksport) @@ -165,7 +167,7 @@ SuppliersPrices=Leverandørpriser SuppliersPricesOfProductsOrServices=Leverandørpriser (av varer eller tjenester) CustomCode=Toll / vare / HS-kode CountryOrigin=Opprinnelsesland -Nature=Varens art (materiale/ferdig) +Nature=Nature of product (material/finished) ShortLabel=Kort etikett Unit=Enhet p= stk diff --git a/htdocs/langs/nb_NO/projects.lang b/htdocs/langs/nb_NO/projects.lang index 07be0df9725..563ac6d01d5 100644 --- a/htdocs/langs/nb_NO/projects.lang +++ b/htdocs/langs/nb_NO/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=som jeg er knyttet til prosjektet Time=Tid ListOfTasks=Oppgaveliste GoToListOfTimeConsumed=Gå til liste for tidsbruk -GoToListOfTasks=Vis som liste -GoToGanttView=vis som Gantt GanttView=Gantt visning ListProposalsAssociatedProject=Liste over tilbud knyttet til prosjektet ListOrdersAssociatedProject=Liste over salgsordre knyttet til prosjektet @@ -188,7 +186,7 @@ PlannedWorkload=Planlagt arbeidsmengde PlannedWorkloadShort=Arbeidsmengde ProjectReferers=Relaterte elementer ProjectMustBeValidatedFirst=Prosjektet må valideres først -FirstAddRessourceToAllocateTime=Tilknytt brukerressurs til oppgave for å tildele tid +FirstAddRessourceToAllocateTime=Tildel en brukerressurs som kontakt for prosjektet for å fordele tid InputPerDay=Tidsbruk pr. dag InputPerWeek=Tidsbruk pr. uke InputPerMonth=Forbruk pr. måned @@ -240,6 +238,7 @@ LatestModifiedProjects=Siste %s endrede prosjekter OtherFilteredTasks=Andre filtrerte oppgaver NoAssignedTasks=Ingen tildelte oppgaver funnet (tilordne prosjekt/oppgaver til den nåværende brukeren fra den øverste valgboksen for å legge inn tid på den) ThirdPartyRequiredToGenerateInvoice=En tredjepart må defineres på prosjektet for å kunne fakturere det. +ChooseANotYetAssignedTask=Velg en oppgave som du ennå ikke er tildelt # Comments trans AllowCommentOnTask=Tillat brukerkommentarer på oppgaver AllowCommentOnProject=Tillat brukerkommentarer på prosjekter @@ -256,7 +255,7 @@ ServiceToUseOnLines=Tjeneste for bruk på linjer InvoiceGeneratedFromTimeSpent=Faktura %s er generert fra tid brukt på prosjekt ProjectBillTimeDescription=Sjekk om du legger inn timeliste på prosjektoppgaver, OG planlegger å generere faktura (er) fra timelisten for å fakturere kunden til prosjektet (ikke kryss av om du planlegger å opprette faktura som ikke er basert på innlagte timelister). Merk: For å generere faktura, gå til fanen 'Tidsbruk' av prosjektet og velg linjer du vil inkludere. ProjectFollowOpportunity=Følg mulighet -ProjectFollowTasks=Følg oppgaver +ProjectFollowTasks=Follow tasks or time spent Usage=Bruk UsageOpportunity=Bruk: Mulighet UsageTasks=Bruk: Oppgaver @@ -265,3 +264,4 @@ InvoiceToUse=Fakturamal som skal brukes NewInvoice=Ny faktura OneLinePerTask=Én linje per oppgave OneLinePerPeriod=Én linje per periode +RefTaskParent=Ref. forelderoppgave diff --git a/htdocs/langs/nb_NO/receiptprinter.lang b/htdocs/langs/nb_NO/receiptprinter.lang index c908ba6387a..8a3ea66f89a 100644 --- a/htdocs/langs/nb_NO/receiptprinter.lang +++ b/htdocs/langs/nb_NO/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Dummyskriver CONNECTOR_NETWORK_PRINT=Nettverksskriver CONNECTOR_FILE_PRINT=Lokal skriver CONNECTOR_WINDOWS_PRINT=Lokal Windowsskriver +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Dummyskriver for test. Gjør ingenting CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Standardprofil PROFILE_SIMPLE=Enkel profil PROFILE_EPOSTEP=Epos Tep-profil @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Fakturamåned med bokstaver DOL_VALUE_MONTH=Fakturamåned DOL_VALUE_DAY=Fakturadag DOL_VALUE_DAY_LETTERS=Fakturadag med bokstaver +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Fakturareferanse +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intracommunity number of VAT (ikke i Norge) +DOL_VALUE_MYSOC_CAPITAL=Kapital +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/nb_NO/stripe.lang b/htdocs/langs/nb_NO/stripe.lang index bef1913f7ca..b4e05cb5e8a 100644 --- a/htdocs/langs/nb_NO/stripe.lang +++ b/htdocs/langs/nb_NO/stripe.lang @@ -32,6 +32,7 @@ VendorName=Navn på leverandøren CSSUrlForPaymentForm=URL til CSS-stilark for betalingsskjema NewStripePaymentReceived=Ny Stripe betaling mottatt NewStripePaymentFailed=Ny Stripe betaling prøvd men mislyktes +FailedToChargeCard=Kunne ikke lade kortet STRIPE_TEST_SECRET_KEY=Hemmelig testnøkkel STRIPE_TEST_PUBLISHABLE_KEY=Publiserbar testnøkkel STRIPE_TEST_WEBHOOK_KEY=Webhook testnøkkel @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Link til oppsett av Stripe WebHook for oppkall av IPN ToOfferALinkForLiveWebhook=Link til oppsett av Stripe WebHook for oppkall av IPN (live-modus) PaymentWillBeRecordedForNextPeriod=Betalingen blir registrert for neste periode. ClickHereToTryAgain=Klikk her for å prøve igjen ... -CreationOfPaymentModeMustBeDoneFromStripeInterface=På grunn av sterke regler for autentisering av kunder, må opprettelse av et kort gjøres fra Stripe backoffice. Du kan klikke her for å slå på Stripe kundeoppføring: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/nb_NO/users.lang b/htdocs/langs/nb_NO/users.lang index 5ebfbaf8511..9afc41913f8 100644 --- a/htdocs/langs/nb_NO/users.lang +++ b/htdocs/langs/nb_NO/users.lang @@ -12,7 +12,7 @@ PasswordChangedTo=Passordet er endret til : %s SubjectNewPassword=Ditt nye passord til %s GroupRights=Grupperettigheter UserRights=Brukerrettigheter -UserGUISetup=User Display Setup +UserGUISetup=Brukerens visningsoppsett DisableUser=Deaktiver DisableAUser=Deaktiver en bruker DeleteUser=Slett @@ -34,8 +34,8 @@ ListOfUsers=Brukeroversikt SuperAdministrator=Super Administrator SuperAdministratorDesc=Administrator med alle rettigheter AdministratorDesc=Administrator -DefaultRights=Default Permissions -DefaultRightsDesc=Define here the default permissions that are automatically granted to a new user (to modify permissions for existing users, go to the user card). +DefaultRights=Standard tillatelser +DefaultRightsDesc=Her defineres standard tillatelser som automatisk tildeles en ny bruker (for å endre tillatelser for eksisterende brukere, gå til brukerkortet). DolibarrUsers=Dolibarrbrukere LastName=Etternavn FirstName=Fornavn @@ -66,11 +66,11 @@ CreateDolibarrThirdParty=Lag en tredjepart LoginAccountDisableInDolibarr=Kontoen er deaktivert i Dolibarr. UsePersonalValue=Bruk personlig verdi InternalUser=Intern bruker -ExportDataset_user_1=Users and their properties +ExportDataset_user_1=Brukere og deres egenskaper DomainUser=Domenebruker %s Reactivate=Reaktiver -CreateInternalUserDesc=This form allows you to create an internal user in your company/organization. To create an external user (customer, vendor etc. ..), use the button 'Create Dolibarr User' from that third-party's contact card. -InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other.

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +CreateInternalUserDesc=Dette skjemaet gir deg mulighet til å opprette en intern bruker til din bedrift/organisasjon. For å opprette en ekstern bruker (kunde, leverandør, ...), bruk knappen "Opprett Dolibarr-bruker" fra tredjeparts kontaktkort. +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=Rettigheter innvilget fordi de er arvet av en brukegruppe. Inherited=Arvet UserWillBeInternalUser=Opprettet bruker vil være en intern bruker (fordi ikke knyttet til en bestemt tredjepart) @@ -92,8 +92,8 @@ LoginToCreate=Brukernavn å opprette NameToCreate=Navn på tredjepart til å lage YourRole=Dine roller YourQuotaOfUsersIsReached=Din kvote på aktive brukere er nådd! -NbOfUsers=No. of users -NbOfPermissions=No. of permissions +NbOfUsers=Antall brukere +NbOfPermissions=Antall tillatelser DontDowngradeSuperAdmin=Bare en superadmin kan nedgradere en superadmin HierarchicalResponsible=Veileder HierarchicView=Hierarkisk visning @@ -107,6 +107,11 @@ DisabledInMonoUserMode=Deaktivert i vedlikeholds-modus UserAccountancyCode=Bruker regnskapskode UserLogoff=Brukerutlogging UserLogged=Bruker innlogget -DateEmployment=Employment Start Date -DateEmploymentEnd=Employment End Date -CantDisableYourself=You can't disable your own user record +DateEmployment=Ansettelse startdato +DateEmploymentEnd=Ansettelse sluttdato +CantDisableYourself=Du kan ikke deaktivere din egen brukeroppføring +ForceUserExpenseValidator=Tvunget utgiftsrapport-validator +ForceUserHolidayValidator=Tvunget friforespørsel-validator +ValidatorIsSupervisorByDefault=Som standard er validatoren veileder for brukeren. Hold tom for å beholde denne oppførselen. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/nb_NO/website.lang b/htdocs/langs/nb_NO/website.lang index 173ee33b996..9137f31703f 100644 --- a/htdocs/langs/nb_NO/website.lang +++ b/htdocs/langs/nb_NO/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=Vis side i ny fane SetAsHomePage=Sett som startside RealURL=Virkelig URL ViewWebsiteInProduction=Vis webside ved hjelp av hjemme-URL -SetHereVirtualHost=  Bruk med Apache/NGinx/...
    Hvis du kan opprette, på webserveren din (Apache, Nginx, ...), en dedikert Virtuell Vert med PHP-aktivert og en Root-katalog på
    %s
    deretter satt navnet på den virtuelle verten du har opprettet i egenskapene til nettstedet, slik at forhåndsvisningen kan gjøres også ved hjelp av denne dedikerte webservertilgangen i stedet for den interne Dolibarr-serveren. +SetHereVirtualHost=Bruk med Apache/NGinx/...
    Opprett på webserveren din (Apache, Nginx, ...) en dedikert virtuell vert med PHP aktivert og en rotkatalog på
    %s +ExampleToUseInApacheVirtualHostConfig=Eksempel på Apache virtuelt vertsoppsett: YouCanAlsoTestWithPHPS=  Bruk med PHP-innebygd server
    I utviklingsmiljø kan du foretrekke å teste nettstedet med PHP-innebygd webserver (PHP 5.5 nødvendig) ved å kjøre
    php -S 0.0.0.0:8080 -t %s YouCanAlsoDeployToAnotherWHP=Kjør nettstedet ditt med en annen leverandør av Dolibarr Hosting
    Hvis du ikke har en webserver som Apache eller NGinx tilgjengelig på internett, kan du eksportere og importere nettstedet til en annen Dolibarr-forekomst levert av en annen Dolibarr-leverandør som gir full integrasjon med nettstedsmodulen. Du kan finne en liste over noen Dolibarr-vertsleverandører på https://saas.dolibarr.org CheckVirtualHostPerms=Sjekk også at virtuell vert har tillatelse %s på filer til
    %s @@ -56,7 +57,7 @@ NoPageYet=Ingen sider ennå YouCanCreatePageOrImportTemplate=Du kan opprette en ny side eller importere en full nettsidemal SyntaxHelp=Hjelp med spesifikke syntakstips YouCanEditHtmlSourceckeditor=Du kan redigere HTML kildekode ved hjelp av "Kilde" -knappen i redigeringsprogrammet. -YouCanEditHtmlSource=
    Du kan inkludere PHP-kode i denne kilden ved å bruke tagger <? Php?> . Følgende globale variabler er tilgjengelige: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    Du kan også ta med innhold av en annen side/container med følgende syntaks:
    <?php includeContainer ('alias_of_container_to_include'); ?>

    Du kan lage en viderekobling til en annen side/container med følgende syntaks (Merk: ikke send ut noe innhold før en viderekobling):
    <? php redirectToContainer ('alias_of_container_to_redirect_to'); ?>

    Hvis du vil legge til en kobling til en annen side, bruker du syntaks:
    <a href="quot;alias_of_page_to_link_to.php">mylink <a>

    Hvis du vil inkludere en kobling for å laste ned en fil som er lagret i dokumentkatalogen , bruker du wrapper til document.php :
    For eksempel, for en fil til dokumenter / ecm (må loggføres), er syntaks:
    <a href="/document.php?modulepart=ecm&file=??relative_dir/??filename.ext&">
    For en fil i dokumenter / medier (åpen katalog for offentlig tilgang) er syntaks:
    <a href="/document.php?modulepart=medias&file=??relative_dir/??filename.ext">
    For en fil som er delt med en delelink (åpen tilgang ved å bruke hash-nøkkelen til filen), er syntaks:
    <a href="/document.php?hashp=publicsharekeyoffile">

    Hvis du vil ta med et bilde som er lagret i dokumentkatalogen , bruker du innpakningen viewimage.php :
    For eksempel, for et bilde i dokumenter / medier (åpen katalog for offentlig tilgang), er syntaks:
    <img src="/ viewimage.php? modulepart = medias & file = [relative_dir /] filnavn.ext">

    Flere eksempler på HTML eller dynamisk kode er tilgjengelige i wikidokumentasjonen
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Klon side/container CloneSite=Klon side SiteAdded=Nettsted lagt til @@ -76,7 +77,7 @@ BlogPost=Blogg post WebsiteAccount=Nettstedskonto WebsiteAccounts=Nettstedskontoer AddWebsiteAccount=Opprett nettsidekonto -BackToListOfThirdParty=Tilbake til listen over tredjeparter +BackToListForThirdParty=Tilbake til listen for tredjepart DisableSiteFirst=Deaktiver nettsted først MyContainerTitle=Mitt nettsteds tittel AnotherContainer=Slik inkluderer du innhold på en annen side/container (du kan ha en feil her hvis du aktiverer dynamisk kode fordi den innebygde undercontaineren kanskje ikke eksisterer) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Beklager, dette nettstedet er for øyeblikket off WEBSITE_USE_WEBSITE_ACCOUNTS=Aktiver nettstedkontotabellen WEBSITE_USE_WEBSITE_ACCOUNTSTooltip=Aktiver tabellen for å lagre nettstedkontoer (innlogging/pass) for hvert nettsted/tredjepart YouMustDefineTheHomePage=Du må først definere standard startside -OnlyEditionOfSourceForGrabbedContentFuture=Advarsel: Å opprette en nettside ved å importere en ekstern nettside er for erfarne brukere. Avhengig av kompleksiteten til kildesiden, kan resultatet av importen avvike fra originalen. Også hvis kildesiden bruker vanlige CSS-stiler eller motstridende javascript, kan det ødelegge utseendet eller funksjonene til nettsideeditoren når du arbeider på denne siden. Denne metoden er en raskere måte å opprette en side på, men det anbefales å lage din nye side fra grunnen av eller fra en foreslått sidemal.
    Vær også oppmerksom på at endringer i HTML-kilden vil være mulig når sideinnholdet er initialisert ved å ta det fra en ekstern side ("Online" editor vil IKKE være tilgjengelig) +OnlyEditionOfSourceForGrabbedContentFuture=Advarsel: Å opprette en webside ved å importere en ekstern webside er forbeholdt erfarne brukere. Avhengig av kompleksiteten på kildesiden, kan resultatet av importen avvike fra originalen. Også hvis kildesiden bruker vanlige CSS-stiler eller motstridende javascript, kan det ødelegge utseendet eller funksjonene til nettstedredigereren når du jobber med denne siden. Denne metoden er en raskere måte å opprette en side på, men det anbefales å opprette den nye siden fra bunnen av eller fra en foreslått sidemal.
    Merk også at inline-redigeringsprogrammet ikke fungerer korrekt når det brukes på en ekstern side. OnlyEditionOfSourceForGrabbedContent=Kun HTML-kilde er mulig når innholdet ble tatt fra et eksternt nettsted GrabImagesInto=Hent bilder som er funnet i css og side også. ImagesShouldBeSavedInto=Bilder bør lagres i katalogen @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=For god SEO-praksis, bruk en tekst mellom 5 og 70 tegn MainLanguage=Hovedspråk OtherLanguages=Andre språk UseManifest=Oppgi en manifest.json-fil +PublicAuthorAlias=Offentlig forfatter alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Tilgjengelige språk er definert i nettstedegenskaper +ReplacementDoneInXPages=Utskifting utført på %s sider eller containere diff --git a/htdocs/langs/nb_NO/zapier.lang b/htdocs/langs/nb_NO/zapier.lang new file mode 100644 index 00000000000..7793dff866f --- /dev/null +++ b/htdocs/langs/nb_NO/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr-modul + +# +# Admin page +# +ZapierForDolibarrSetup = Oppsett av Zapier for Dolibarr diff --git a/htdocs/langs/ne_NP/accountancy.lang b/htdocs/langs/ne_NP/accountancy.lang new file mode 100644 index 00000000000..b8ce37a0956 --- /dev/null +++ b/htdocs/langs/ne_NP/accountancy.lang @@ -0,0 +1,382 @@ +# Dolibarr language file - en_US - Accountancy (Double entries) +Accountancy=Accountancy +Accounting=Accounting +ACCOUNTING_EXPORT_SEPARATORCSV=Column separator for export file +ACCOUNTING_EXPORT_DATE=Date format for export file +ACCOUNTING_EXPORT_PIECE=Export the number of piece +ACCOUNTING_EXPORT_GLOBAL_ACCOUNT=Export with global account +ACCOUNTING_EXPORT_LABEL=Export label +ACCOUNTING_EXPORT_AMOUNT=Export amount +ACCOUNTING_EXPORT_DEVISE=Export currency +Selectformat=Select the format for the file +ACCOUNTING_EXPORT_FORMAT=Select the format for the file +ACCOUNTING_EXPORT_ENDLINE=Select the carriage return type +ACCOUNTING_EXPORT_PREFIX_SPEC=Specify the prefix for the file name +ThisService=This service +ThisProduct=This product +DefaultForService=Default for service +DefaultForProduct=Default for product +CantSuggest=Can't suggest +AccountancySetupDoneFromAccountancyMenu=Most setup of the accountancy is done from the menu %s +ConfigAccountingExpert=Configuration of the module accounting expert +Journalization=Journalization +Journaux=Journals +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 +OtherInfo=Other information +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 + +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 + +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... + +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 + +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. + +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. + +AccountancyAreaDescClosePeriod=STEP %s: Close period so we can't make modification in a future. + +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 +AccountAccountingShort=Account +SubledgerAccount=Subledger account +SubledgerAccountLabel=Subledger account label +ShowAccountingAccount=Show accounting account +ShowAccountingJournal=Show accounting journal +AccountAccountingSuggest=Accounting account suggested +MenuDefaultAccounts=Default accounts +MenuBankAccounts=Bank accounts +MenuVatAccounts=Vat accounts +MenuTaxAccounts=Tax accounts +MenuExpenseReportAccounts=Expense report accounts +MenuLoanAccounts=Loan accounts +MenuProductsAccounts=Product accounts +MenuClosureAccounts=Closure accounts +MenuAccountancyClosure=Closure +MenuAccountancyValidationMovements=Validate movements +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 +TotalForAccount=Total for accounting account + + +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 + +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_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=Length of the third-party accounting accounts (If you set value to 6 here, the account '401' will appear like '401000' on screen) +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_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_RESULT_PROFIT=Result accounting account (Profit) +ACCOUNTING_RESULT_LOSS=Result accounting account (Loss) +ACCOUNTING_CLOSURE_DEFAULT_JOURNAL=Journal of closure + +ACCOUNTING_ACCOUNT_TRANSFER_CASH=Accounting account of transitional bank transfer +TransitionalAccount=Transitional bank transfer account + +ACCOUNTING_ACCOUNT_SUSPENSE=Accounting account of wait +DONATION_ACCOUNTINGACCOUNT=Accounting account to register donations +ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions + +ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (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 products sold in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported 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_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (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_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) + +Doctype=Type of document +Docdate=Date +Docref=Reference +LabelAccount=Label account +LabelOperation=Label operation +Sens=Sens +LetteringCode=Lettering code +Lettering=Lettering +Codejournal=Journal +JournalLabel=Journal label +NumPiece=Piece number +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=By year +NotMatch=Not Set +DeleteMvt=Delete Ledger lines +DelMonth=Month to delete +DelYear=Year to delete +DelJournal=Journal to delete +ConfirmDeleteMvt=This will delete all lines of the Ledger for the year/month and/or from a specific journal (At least one criterion is required). You will have to reuse the feature 'Registration in accounting' to have the deleted record back in the ledger. +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=Third-party account +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=List third-party account +DescThirdPartyReport=Consult here the list of third-party customers and vendors and their accounting accounts +ListAccounts=List of the accounting accounts +UnknownAccountForThirdparty=Unknown third-party account. We will use %s +UnknownAccountForThirdpartyBlocking=Unknown third-party account. Blocking error +ThirdpartyAccountNotDefinedOrThirdPartyUnknown=Third-party account not defined or third party unknown. We will use %s +ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unknown and subledger not defined on the payment. We will keep the subledger account value empty. +ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. +UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error +PaymentsNotLinkedToProduct=Payment not linked to any product / service +OpeningBalance=Opening balance +ShowOpeningBalance=Show opening balance +HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group + +Pcgtype=Group of account +PcgtypeDesc=Group 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. + +Reconcilable=Reconcilable + +TotalVente=Total turnover before tax +TotalMarge=Total sales margin + +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: +Vide=- +DescVentilSupplier=Consult here the list of vendor invoice lines bound or not yet bound to a product accounting account (only record not already transfered in accountancy are visible) +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 + +DescClosure=Consult here the number of movements by month who are not validated & fiscal years already open +OverviewOfMovementsNotValidated=Step 1/ Overview of movements not validated. (Necessary to close a fiscal year) +ValidateMovements=Validate movements +DescValidateMovements=Any modification or deletion of writing, lettering and deletes will be prohibited. All entries for an exercise must be validated otherwise closing will not be possible +SelectMonthAndValidate=Select month and validate movements + +ValidateHistory=Bind Automatically +AutomaticBindingDone=Automatic binding done + +ErrorAccountancyCodeIsAlreadyUse=Error, you cannot delete this accounting account because it is used +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 +ShowTutorial=Show Tutorial +NotReconciled=Not reconciled + +## Admin +ApplyMassCategories=Apply mass categories +AddAccountFromBookKeepingWithNoCategories=Available account not yet in the personalized group +CategoryDeleted=Category for the accounting account has been removed +AccountingJournals=Accounting journals +AccountingJournal=Accounting journal +NewAccountingJournal=New accounting journal +ShowAccountingJournal=Show accounting journal +NatureOfJournal=Nature of Journal +AccountingJournalType1=Miscellaneous operations +AccountingJournalType2=Sales +AccountingJournalType3=Purchases +AccountingJournalType4=Bank +AccountingJournalType5=Expenses report +AccountingJournalType8=Inventory +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 + +## 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) +Modelcsv_openconcerto=Export for OpenConcerto (Test) +Modelcsv_configurable=Export CSV Configurable +Modelcsv_FEC=Export FEC +Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta +ChartofaccountsId=Chart of accounts Id + +## 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 used for accounting closures. +Options=Options +OptionModeProductSell=Mode sales +OptionModeProductSellIntra=Mode sales exported in EEC +OptionModeProductSellExport=Mode sales exported in other countries +OptionModeProductBuy=Mode purchases +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries +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. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign 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 +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. + +## Dictionary +Range=Range of accounting account +Calculated=Calculated +Formula=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 + +## 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 diff --git a/htdocs/langs/ne_NP/admin.lang b/htdocs/langs/ne_NP/admin.lang new file mode 100644 index 00000000000..7eb67d7a4ab --- /dev/null +++ b/htdocs/langs/ne_NP/admin.lang @@ -0,0 +1,2002 @@ +# Dolibarr language file - Source file is en_US - admin +Foundation=Foundation +Version=Version +Publisher=Publisher +VersionProgram=Version program +VersionLastInstall=Initial install version +VersionLastUpgrade=Latest version upgrade +VersionExperimental=Experimental +VersionDevelopment=Development +VersionUnknown=Unknown +VersionRecommanded=Recommended +FileCheck=Fileset Integrity Checks +FileCheckDesc=This tool allows you to check the integrity of files and the setup of your application, comparing each file with the official one. The value of some setup constants may also be checked. You can use this tool to determine if any files have been modified (e.g by a hacker). +FileIntegrityIsStrictlyConformedWithReference=Files integrity is strictly conformed with the reference. +FileIntegrityIsOkButFilesWereAdded=Files integrity check has passed, however some new files have been added. +FileIntegritySomeFilesWereRemovedOrModified=Files integrity check has failed. Some files were modified, removed or added. +GlobalChecksum=Global checksum +MakeIntegrityAnalysisFrom=Make integrity analysis of application files from +LocalSignature=Embedded local signature (less reliable) +RemoteSignature=Remote distant signature (more reliable) +FilesMissing=Missing Files +FilesUpdated=Updated Files +FilesModified=Modified Files +FilesAdded=Added Files +FileCheckDolibarr=Check integrity of application files +AvailableOnlyOnPackagedVersions=The local file for integrity checking is only available when the application is installed from an official package +XmlNotFound=Xml Integrity File of application not found +SessionId=Session ID +SessionSaveHandler=Handler to save sessions +SessionSavePath=Session save location +PurgeSessions=Purge of sessions +ConfirmPurgeSessions=Do you really want to purge all sessions? This will disconnect every user (except yourself). +NoSessionListWithThisHandler=Save session handler configured in your PHP does not allow listing all running sessions. +LockNewSessions=Lock new connections +ConfirmLockNewSessions=Are you sure you want to restrict any new Dolibarr connection to yourself? Only user %s will be able to connect after that. +UnlockNewSessions=Remove connection lock +YourSession=Your session +Sessions=Users Sessions +WebUserGroup=Web server user/group +NoSessionFound=Your PHP configuration seems to not allow listing of active sessions. The directory used to save sessions (%s) may be protected (for example by OS permissions or by PHP directive open_basedir). +DBStoringCharset=Database charset to store data +DBSortingCharset=Database charset to sort data +HostCharset=Host charset +ClientCharset=Client charset +ClientSortingCharset=Client collation +WarningModuleNotActive=Module %s must be enabled +WarningOnlyPermissionOfActivatedModules=Only permissions related to activated modules are shown here. You can activate other modules in the Home->Setup->Modules page. +DolibarrSetup=Dolibarr install or upgrade +InternalUser=Internal user +ExternalUser=External user +InternalUsers=Internal users +ExternalUsers=External users +GUISetup=Display +SetupArea=Setup +UploadNewTemplate=Upload new template(s) +FormToTestFileUploadForm=Form to test file upload (according to setup) +IfModuleEnabled=Note: yes is effective only if module %s is enabled +RemoveLock=Remove/rename file %s if it exists, to allow usage of the Update/Install tool. +RestoreLock=Restore file %s, with read permission only, to disable any further use of the Update/Install tool. +SecuritySetup=Security setup +SecurityFilesDesc=Define here options related to security about uploading files. +ErrorModuleRequirePHPVersion=Error, this module requires PHP version %s or higher +ErrorModuleRequireDolibarrVersion=Error, this module requires Dolibarr version %s or higher +ErrorDecimalLargerThanAreForbidden=Error, a precision higher than %s is not supported. +DictionarySetup=Dictionary setup +Dictionary=Dictionaries +ErrorReservedTypeSystemSystemAuto=Value 'system' and 'systemauto' for type is reserved. You can use 'user' as value to add your own record +ErrorCodeCantContainZero=Code can't contain value 0 +DisableJavascript=Disable JavaScript and Ajax functions +DisableJavascriptNote=Note: For test or debug purpose. For optimization for blind person or text browsers, you may prefer to use the setup on the profile of user +UseSearchToSelectCompanyTooltip=Also if you have a large number of third parties (> 100 000), you can increase speed by setting constant COMPANY_DONOTSEARCH_ANYWHERE to 1 in Setup->Other. Search will then be limited to start of string. +UseSearchToSelectContactTooltip=Also if you have a large number of third parties (> 100 000), you can increase speed by setting constant CONTACT_DONOTSEARCH_ANYWHERE to 1 in Setup->Other. Search will then be limited to start of string. +DelaiedFullListToSelectCompany=Wait until a key is pressed before loading content of Third Parties combo list.
    This may increase performance if you have a large number of third parties, but it is less convenient. +DelaiedFullListToSelectContact=Wait until a key is pressed before loading content of Contact combo list.
    This may increase performance if you have a large number of contacts, but it is less convenient) +NumberOfKeyToSearch=Number of characters to trigger search: %s +NumberOfBytes=Number of Bytes +SearchString=Search string +NotAvailableWhenAjaxDisabled=Not available when Ajax disabled +AllowToSelectProjectFromOtherCompany=On document of a third party, can choose a project linked to another third party +JavascriptDisabled=JavaScript disabled +UsePreviewTabs=Use preview tabs +ShowPreview=Show preview +PreviewNotAvailable=Preview not available +ThemeCurrentlyActive=Theme currently active +CurrentTimeZone=TimeZone PHP (server) +MySQLTimeZone=TimeZone MySql (database) +TZHasNoEffect=Dates are stored and returned by database server as if they were kept as submitted string. The timezone has effect only when using the UNIX_TIMESTAMP function (that should not be used by Dolibarr, so database TZ should have no effect, even if changed after data was entered). +Space=Space +Table=Table +Fields=Fields +Index=Index +Mask=Mask +NextValue=Next value +NextValueForInvoices=Next value (invoices) +NextValueForCreditNotes=Next value (credit notes) +NextValueForDeposit=Next value (down payment) +NextValueForReplacements=Next value (replacements) +MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the maximum filesize for upload to %s %s, irrespective of the value of this parameter +NoMaxSizeByPHPLimit=Note: No limit is set in your PHP configuration +MaxSizeForUploadedFiles=Maximum size for uploaded files (0 to disallow any upload) +UseCaptchaCode=Use graphical code (CAPTCHA) on login page +AntiVirusCommand=Full path to antivirus command +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe +AntiVirusParam= More parameters on command line +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" +ComptaSetup=Accounting module setup +UserSetup=User management setup +MultiCurrencySetup=Multi-currency setup +MenuLimits=Limits and accuracy +MenuIdParent=Parent menu ID +DetailMenuIdParent=ID of parent menu (empty for a top menu) +DetailPosition=Sort number to define menu position +AllMenus=All +NotConfigured=Module/Application not configured +Active=Active +SetupShort=Setup +OtherOptions=Other options +OtherSetup=Other Setup +CurrentValueSeparatorDecimal=Decimal separator +CurrentValueSeparatorThousand=Thousand separator +Destination=Destination +IdModule=Module ID +IdPermissions=Permissions ID +LanguageBrowserParameter=Parameter %s +LocalisationDolibarrParameters=Localization parameters +ClientTZ=Client Time Zone (user) +ClientHour=Client time (user) +OSTZ=Server OS Time Zone +PHPTZ=PHP server Time Zone +DaylingSavingTime=Daylight saving time +CurrentHour=PHP Time (server) +CurrentSessionTimeOut=Current session timeout +YouCanEditPHPTZ=To set a different PHP timezone (not required), you can try to add a .htaccess file with a line like this "SetEnv TZ Europe/Paris" +HoursOnThisPageAreOnServerTZ=Warning, in contrary of other screens, hours on this page are not in your local timezone, but of the timezone of the server. +Box=Widget +Boxes=Widgets +MaxNbOfLinesForBoxes=Max. number of lines for widgets +AllWidgetsWereEnabled=All available widgets are enabled +PositionByDefault=Default order +Position=Position +MenusDesc=Menu managers set content of the two menu bars (horizontal and vertical). +MenusEditorDesc=The menu editor allows you to define custom menu entries. Use it carefully to avoid instability and permanently unreachable menu entries.
    Some modules add menu entries (in menu All mostly). If you remove some of these entries by mistake, you can restore them disabling and reenabling the module. +MenuForUsers=Menu for users +LangFile=.lang file +Language_en_US_es_MX_etc=Language (en_US, es_MX, ...) +System=System +SystemInfo=System information +SystemToolsArea=System tools area +SystemToolsAreaDesc=This area provides administration functions. Use the menu to choose the required feature. +Purge=Purge +PurgeAreaDesc=This page allows you to delete all files generated or stored by Dolibarr (temporary files or all files in %s directory). Using this feature is not normally necessary. It is provided as a workaround for users whose Dolibarr is hosted by a provider that does not offer permissions to delete files generated by the web server. +PurgeDeleteLogFile=Delete log files, including %s defined for Syslog module (no risk of losing data) +PurgeDeleteTemporaryFiles=Delete all temporary files (no risk of losing data). Note: Deletion is done only if the temp directory was created 24 hours ago. +PurgeDeleteTemporaryFilesShort=Delete temporary files +PurgeDeleteAllFilesInDocumentsDir=Delete all files in directory: %s.
    This will delete all generated documents related to elements (third parties, invoices etc...), files uploaded into the ECM module, database backup dumps and temporary files. +PurgeRunNow=Purge now +PurgeNothingToDelete=No directory or files to delete. +PurgeNDirectoriesDeleted=%s files or directories deleted. +PurgeNDirectoriesFailed=Failed to delete %s files or directories. +PurgeAuditEvents=Purge all security events +ConfirmPurgeAuditEvents=Are you sure you want to purge all security events? All security logs will be deleted, no other data will be removed. +GenerateBackup=Generate backup +Backup=Backup +Restore=Restore +RunCommandSummary=Backup has been launched with the following command +BackupResult=Backup result +BackupFileSuccessfullyCreated=Backup file successfully generated +YouCanDownloadBackupFile=The generated file can now be downloaded +NoBackupFileAvailable=No backup files available. +ExportMethod=Export method +ImportMethod=Import method +ToBuildBackupFileClickHere=To build a backup file, click here. +ImportMySqlDesc=To import a MySQL backup file, you may use phpMyAdmin via your hosting or use the mysql command from the Command line.
    For example: +ImportPostgreSqlDesc=To import a backup file, you must use pg_restore command from command line: +ImportMySqlCommand=%s %s < mybackupfile.sql +ImportPostgreSqlCommand=%s %s mybackupfile.sql +FileNameToGenerate=Filename for backup: +Compression=Compression +CommandsToDisableForeignKeysForImport=Command to disable foreign keys on import +CommandsToDisableForeignKeysForImportWarning=Mandatory if you want to be able to restore your sql dump later +ExportCompatibility=Compatibility of generated export file +ExportUseMySQLQuickParameter=Use the --quick parameter +ExportUseMySQLQuickParameterHelp=The '--quick' parameter helps limit RAM consumption for large tables. +MySqlExportParameters=MySQL export parameters +PostgreSqlExportParameters= PostgreSQL export parameters +UseTransactionnalMode=Use transactional mode +FullPathToMysqldumpCommand=Full path to mysqldump command +FullPathToPostgreSQLdumpCommand=Full path to pg_dump command +AddDropDatabase=Add DROP DATABASE command +AddDropTable=Add DROP TABLE command +ExportStructure=Structure +NameColumn=Name columns +ExtendedInsert=Extended INSERT +NoLockBeforeInsert=No lock commands around INSERT +DelayedInsert=Delayed insert +EncodeBinariesInHexa=Encode binary data in hexadecimal +IgnoreDuplicateRecords=Ignore errors of duplicate record (INSERT IGNORE) +AutoDetectLang=Autodetect (browser language) +FeatureDisabledInDemo=Feature disabled in demo +FeatureAvailableOnlyOnStable=Feature only available on official stable versions +BoxesDesc=Widgets are components showing some information that you can add to personalize some pages. You can choose between showing the widget or not by selecting target page and clicking 'Activate', or by clicking the trashcan to disable it. +OnlyActiveElementsAreShown=Only elements from enabled modules are shown. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. +ModulesMarketPlaceDesc=You can find more modules to download on external websites on the Internet... +ModulesDeployDesc=If permissions on your file system allow it, you can use this tool to deploy an external module. The module will then be visible on the tab %s. +ModulesMarketPlaces=Find external app/modules +ModulesDevelopYourModule=Develop your own app/modules +ModulesDevelopDesc=You may also develop your own module or find a partner to develop one for you. +DOLISTOREdescriptionLong=Instead of switching on www.dolistore.com web site to find an external module, you can use this embedded tool that will perform the search on the external market place for you (may be slow, need an internet access)... +NewModule=New +FreeModule=Free +CompatibleUpTo=Compatible with version %s +NotCompatible=This module does not seem compatible with your Dolibarr %s (Min %s - Max %s). +CompatibleAfterUpdate=This module requires an update to your Dolibarr %s (Min %s - Max %s). +SeeInMarkerPlace=See in Market place +SeeSetupOfModule=See setup of module %s +Updated=Updated +Nouveauté=Novelty +AchatTelechargement=Buy / Download +GoModuleSetupArea=To deploy/install a new module, go to the Module setup area: %s. +DoliStoreDesc=DoliStore, the official market place for Dolibarr ERP/CRM external modules +DoliPartnersDesc=List of companies providing custom-developed modules or features.
    Note: since Dolibarr is an open source application, anyone experienced in PHP programming may develop a module. +WebSiteDesc=External websites for more add-on (non-core) modules... +DevelopYourModuleDesc=Some solutions to develop your own module... +URL=URL +RelativeURL=Relative URL +BoxesAvailable=Widgets available +BoxesActivated=Widgets activated +ActivateOn=Activate on +ActiveOn=Activated on +SourceFile=Source file +AvailableOnlyIfJavascriptAndAjaxNotDisabled=Available only if JavaScript is not disabled +Required=Required +UsedOnlyWithTypeOption=Used by some agenda option only +Security=Security +Passwords=Passwords +DoNotStoreClearPassword=Encrypt passwords stored in database (NOT as plain-text). It is strongly recommended to activate this option. +MainDbPasswordFileConfEncrypted=Encrypt database password stored in conf.php. It is strongly recommended to activate this option. +InstrucToEncodePass=To have password encoded into the conf.php file, replace the line
    $dolibarr_main_db_pass="...";
    by
    $dolibarr_main_db_pass="crypted:%s"; +InstrucToClearPass=To have password decoded (clear) into the conf.php file, replace the line
    $dolibarr_main_db_pass="crypted:...";
    by
    $dolibarr_main_db_pass="%s"; +ProtectAndEncryptPdfFiles=Protect generated PDF files. This is NOT recommended as it breaks bulk PDF generation. +ProtectAndEncryptPdfFilesDesc=Protection of a PDF document keeps it available to read and print with any PDF browser. However, editing and copying is not possible anymore. Note that using this feature makes building of a global merged PDFs not working. +Feature=Feature +DolibarrLicense=License +Developpers=Developers/contributors +OfficialWebSite=Dolibarr official web site +OfficialWebSiteLocal=Local web site (%s) +OfficialWiki=Dolibarr documentation / Wiki +OfficialDemo=Dolibarr online demo +OfficialMarketPlace=Official market place for external modules/addons +OfficialWebHostingService=Referenced web hosting services (Cloud hosting) +ReferencedPreferredPartners=Preferred Partners +OtherResources=Other resources +ExternalResources=External Resources +SocialNetworks=Social Networks +ForDocumentationSeeWiki=For user or developer documentation (Doc, FAQs...),
    take a look at the Dolibarr Wiki:
    %s +ForAnswersSeeForum=For any other questions/help, you can use the Dolibarr forum:
    %s +HelpCenterDesc1=Here are some resources for getting help and support with Dolibarr. +HelpCenterDesc2=Some of these resources are only available in english. +CurrentMenuHandler=Current menu handler +MeasuringUnit=Measuring unit +LeftMargin=Left margin +TopMargin=Top margin +PaperSize=Paper type +Orientation=Orientation +SpaceX=Space X +SpaceY=Space Y +FontSize=Font size +Content=Content +NoticePeriod=Notice period +NewByMonth=New by month +Emails=Emails +EMailsSetup=Emails setup +EMailsDesc=This page allows you to override your default PHP parameters for email sending. In most cases on Unix/Linux OS, the PHP setup is correct and these parameters are unnecessary. +EmailSenderProfiles=Emails sender profiles +EMailsSenderProfileDesc=You can keep this section empty. If you enter some emails here, they will be added to the list of possible senders into the combobox when your write a new email. +MAIN_MAIL_SMTP_PORT=SMTP/SMTPS Port (default value in php.ini: %s) +MAIN_MAIL_SMTP_SERVER=SMTP/SMTPS Host (default value in php.ini: %s) +MAIN_MAIL_SMTP_PORT_NotAvailableOnLinuxLike=SMTP/SMTPS Port (Not defined into PHP on Unix-like systems) +MAIN_MAIL_SMTP_SERVER_NotAvailableOnLinuxLike=SMTP/SMTPS Host (Not defined into PHP on Unix-like systems) +MAIN_MAIL_EMAIL_FROM=Sender email for automatic emails (default value in php.ini: %s) +MAIN_MAIL_ERRORS_TO=Email used for error returns emails (fields 'Errors-To' in emails sent) +MAIN_MAIL_AUTOCOPY_TO= Copy (Bcc) all sent emails to +MAIN_DISABLE_ALL_MAILS=Disable all email sending (for test purposes or demos) +MAIN_MAIL_FORCE_SENDTO=Send all emails to (instead of real recipients, for test purposes) +MAIN_MAIL_ENABLED_USER_DEST_SELECT=Suggest emails of employees (if defined) into the list of predefined recipient when writing a new email +MAIN_MAIL_SENDMODE=Email sending method +MAIN_MAIL_SMTPS_ID=SMTP ID (if sending server requires authentication) +MAIN_MAIL_SMTPS_PW=SMTP Password (if sending server requires authentication) +MAIN_MAIL_EMAIL_TLS=Use TLS (SSL) encryption +MAIN_MAIL_EMAIL_STARTTLS=Use TLS (STARTTLS) encryption +MAIN_MAIL_EMAIL_DKIM_ENABLED=Use DKIM to generate email signature +MAIN_MAIL_EMAIL_DKIM_DOMAIN=Email Domain for use with dkim +MAIN_MAIL_EMAIL_DKIM_SELECTOR=Name of dkim selector +MAIN_MAIL_EMAIL_DKIM_PRIVATE_KEY=Private key for dkim signing +MAIN_DISABLE_ALL_SMS=Disable all SMS sending (for test purposes or demos) +MAIN_SMS_SENDMODE=Method to use to send SMS +MAIN_MAIL_SMS_FROM=Default sender phone number for SMS sending +MAIN_MAIL_DEFAULT_FROMTYPE=Default sender email for manual sending (User email or Company email) +UserEmail=User email +CompanyEmail=Company Email +FeatureNotAvailableOnLinux=Feature not available on Unix like systems. Test your sendmail program locally. +SubmitTranslation=If the translation for this language is not complete or you find errors, you can correct this by editing files in directory langs/%s and submit your change to www.transifex.com/dolibarr-association/dolibarr/ +SubmitTranslationENUS=If translation for this language is not complete or you find errors, you can correct this by editing files into directory langs/%s and submit modified files on dolibarr.org/forum or for developers on github.com/Dolibarr/dolibarr. +ModuleSetup=Module setup +ModulesSetup=Modules/Application setup +ModuleFamilyBase=System +ModuleFamilyCrm=Customer Relationship Management (CRM) +ModuleFamilySrm=Vendor Relationship Management (VRM) +ModuleFamilyProducts=Product Management (PM) +ModuleFamilyHr=Human Resource Management (HR) +ModuleFamilyProjects=Projects/Collaborative work +ModuleFamilyOther=Other +ModuleFamilyTechnic=Multi-modules tools +ModuleFamilyExperimental=Experimental modules +ModuleFamilyFinancial=Financial Modules (Accounting/Treasury) +ModuleFamilyECM=Electronic Content Management (ECM) +ModuleFamilyPortal=Websites and other frontal application +ModuleFamilyInterface=Interfaces with external systems +MenuHandlers=Menu handlers +MenuAdmin=Menu editor +DoNotUseInProduction=Do not use in production +ThisIsProcessToFollow=Upgrade procedure: +ThisIsAlternativeProcessToFollow=This is an alternative setup to process manually: +StepNb=Step %s +FindPackageFromWebSite=Find a package that provides the features you need (for example on the official web site %s). +DownloadPackageFromWebSite=Download package (for example from the official web site %s). +UnpackPackageInDolibarrRoot=Unpack/unzip the packaged files into your Dolibarr server directory: %s +UnpackPackageInModulesRoot=To deploy/install an external module, unpack/unzip the packaged files into the server directory dedicated to external modules:
    %s +SetupIsReadyForUse=Module deployment is finished. You must however enable and setup the module in your application by going to the page setup modules: %s. +NotExistsDirect=The alternative root directory is not defined to an existing directory.
    +InfDirAlt=Since version 3, it is possible to define an alternative root directory. This allows you to store, into a dedicated directory, plug-ins and custom templates.
    Just create a directory at the root of Dolibarr (eg: custom).
    +InfDirExample=
    Then declare it in the file conf.php
    $dolibarr_main_url_root_alt='/custom'
    $dolibarr_main_document_root_alt='/path/of/dolibarr/htdocs/custom'
    If these lines are commented with "#", to enable them, just uncomment by removing the "#" character. +YouCanSubmitFile=You can upload the .zip file of module package from here: +CurrentVersion=Dolibarr current version +CallUpdatePage=Browse to the page that updates the database structure and data: %s. +LastStableVersion=Latest stable version +LastActivationDate=Latest activation date +LastActivationAuthor=Latest activation author +LastActivationIP=Latest activation IP +UpdateServerOffline=Update server offline +WithCounter=Manage a counter +GenericMaskCodes=You may enter any numbering mask. In this mask, the following tags could be used:
    {000000} corresponds to a number which will be incremented on each %s. Enter as many zeros as the desired length of the counter. The counter will be completed by zeros from the left in order to have as many zeros as the mask.
    {000000+000} same as previous but an offset corresponding to the number to the right of the + sign is applied starting on first %s.
    {000000@x} same as previous but the counter is reset to zero when month x is reached (x between 1 and 12, or 0 to use the early months of fiscal year defined in your configuration, or 99 to reset to zero every month). If this option is used and x is 2 or higher, then sequence {yy}{mm} or {yyyy}{mm} is also required.
    {dd} day (01 to 31).
    {mm} month (01 to 12).
    {yy}, {yyyy} or {y} year over 2, 4 or 1 numbers.
    +GenericMaskCodes2={cccc} the client code on n characters
    {cccc000} the client code on n characters is followed by a counter dedicated for customer. This counter dedicated to customer is reset at same time than global counter.
    {tttt} The code of third party type on n characters (see menu Home - Setup - Dictionary - Types of third parties). If you add this tag, the counter will be different for each type of third party.
    +GenericMaskCodes3=All other characters in the mask will remain intact.
    Spaces are not allowed.
    +GenericMaskCodes4a=Example on the 99th %s of the third party TheCompany, with date 2007-01-31:
    +GenericMaskCodes4b=Example on third party created on 2007-03-01:
    +GenericMaskCodes4c=Example on product created on 2007-03-01:
    +GenericMaskCodes5=ABC{yy}{mm}-{000000} will give ABC0701-000099
    {0000+100@1}-ZZZ/{dd}/XXX will give 0199-ZZZ/31/XXX
    IN{yy}{mm}-{0000}-{t} will give IN0701-0099-A if the type of company is 'Responsable Inscripto' with code for type that is 'A_RI' +GenericNumRefModelDesc=Returns a customizable number according to a defined mask. +ServerAvailableOnIPOrPort=Server is available at address %s on port %s +ServerNotAvailableOnIPOrPort=Server is not available at address %s on port %s +DoTestServerAvailability=Test server connectivity +DoTestSend=Test sending +DoTestSendHTML=Test sending HTML +ErrorCantUseRazIfNoYearInMask=Error, can't use option @ to reset counter each year if sequence {yy} or {yyyy} is not in mask. +ErrorCantUseRazInStartedYearIfNoYearMonthInMask=Error, can't use option @ if sequence {yy}{mm} or {yyyy}{mm} is not in mask. +UMask=UMask parameter for new files on Unix/Linux/BSD/Mac file system. +UMaskExplanation=This parameter allow you to define permissions set by default on files created by Dolibarr on server (during upload for example).
    It must be the octal value (for example, 0666 means read and write for everyone).
    This parameter is useless on a Windows server. +SeeWikiForAllTeam=Take a look at the Wiki page for a list of contributors and their organization +UseACacheDelay= Delay for caching export response in seconds (0 or empty for no cache) +DisableLinkToHelpCenter=Hide link "Need help or support" on login page +DisableLinkToHelp=Hide link to online help "%s" +AddCRIfTooLong=There is no automatic text wrapping, text that is too long will not display on documents. Please add carriage returns in the text area if needed. +ConfirmPurge=Are you sure you want to execute this purge?
    This will permanently delete all your data files with no way to restore them (ECM files, attached files...). +MinLength=Minimum length +LanguageFilesCachedIntoShmopSharedMemory=Files .lang loaded in shared memory +LanguageFile=Language file +ExamplesWithCurrentSetup=Examples with current configuration +ListOfDirectories=List of OpenDocument templates directories +ListOfDirectoriesForModelGenODT=List of directories containing templates files with OpenDocument format.

    Put here full path of directories.
    Add a carriage return between eah 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. +NumberOfModelFilesFound=Number of ODT/ODS template files found in these directories +ExampleOfDirectoriesForModelGen=Examples of syntax:
    c:\\mydir
    /home/mydir
    DOL_DATA_ROOT/ecm/ecmdir +FollowingSubstitutionKeysCanBeUsed=
    To know how to create your odt document templates, before storing them in those directories, read wiki documentation: +FullListOnOnlineDocumentation=http://wiki.dolibarr.org/index.php/Create_an_ODT_document_template +FirstnameNamePosition=Position of Name/Lastname +DescWeather=The following images will be shown on the dashboard when the number of late actions reach the following values: +KeyForWebServicesAccess=Key to use Web Services (parameter "dolibarrkey" in webservices) +TestSubmitForm=Input test form +ThisForceAlsoTheme=Using this menu manager will also use its own theme whatever the user choice. Also this menu manager specialized for smartphones does not work on all smartphone. Use another menu manager if you experience problems with yours. +ThemeDir=Skins directory +ConnectionTimeout=Connection timeout +ResponseTimeout=Response timeout +SmsTestMessage=Test message from __PHONEFROM__ to __PHONETO__ +ModuleMustBeEnabledFirst=Module %s must be enabled first if you need this feature. +SecurityToken=Key to secure URLs +NoSmsEngine=No SMS sender manager available. A SMS sender manager is not installed with the default distribution because they depend on an external vendor, but you can find some on %s +PDF=PDF +PDFDesc=Global options for PDF generation. +PDFAddressForging=Rules for address boxes +HideAnyVATInformationOnPDF=Hide all information related to Sales Tax / VAT +PDFRulesForSalesTax=Rules for Sales Tax / VAT +PDFLocaltax=Rules for %s +HideLocalTaxOnPDF=Hide %s rate in column Tax Sale +HideDescOnPDF=Hide products description +HideRefOnPDF=Hide products ref. +HideDetailsOnPDF=Hide product lines details +PlaceCustomerAddressToIsoLocation=Use french standard position (La Poste) for customer address position +Library=Library +UrlGenerationParameters=Parameters to secure URLs +SecurityTokenIsUnique=Use a unique securekey parameter for each URL +EnterRefToBuildUrl=Enter reference for object %s +GetSecuredUrl=Get calculated URL +ButtonHideUnauthorized=Hide buttons for non-admin users for unauthorized actions instead of showing greyed disabled buttons +OldVATRates=Old VAT rate +NewVATRates=New VAT rate +PriceBaseTypeToChange=Modify on prices with base reference value defined on +MassConvert=Launch bulk conversion +PriceFormatInCurrentLanguage=Price Format In Current Language +String=String +TextLong=Long text +HtmlText=Html text +Int=Integer +Float=Float +DateAndTime=Date and hour +Unique=Unique +Boolean=Boolean (one checkbox) +ExtrafieldPhone = Phone +ExtrafieldPrice = Price +ExtrafieldMail = Email +ExtrafieldUrl = Url +ExtrafieldSelect = Select list +ExtrafieldSelectList = Select from table +ExtrafieldSeparator=Separator (not a field) +ExtrafieldPassword=Password +ExtrafieldRadio=Radio buttons (one choice only) +ExtrafieldCheckBox=Checkboxes +ExtrafieldCheckBoxFromList=Checkboxes from table +ExtrafieldLink=Link to an object +ComputedFormula=Computed field +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +Computedpersistent=Store computed field +ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! +ExtrafieldParamHelpPassword=Leaving this field blank means this value will be stored without encryption (field must be only hidden with star on screen).
    Set 'auto' to use the default encryption rule to save password into database (then value read will be the hash only, no way to retrieve original value) +ExtrafieldParamHelpselect=List of values must be lines with format key,value (where key can't be '0')

    for example:
    1,value1
    2,value2
    code3,value3
    ...

    In order to have the list depending on another complementary attribute list:
    1,value1|options_parent_list_code:parent_key
    2,value2|options_parent_list_code:parent_key

    In order to have the list depending on another list:
    1,value1|parent_list_code:parent_key
    2,value2|parent_list_code:parent_key +ExtrafieldParamHelpcheckbox=List of values must be lines with format key,value (where key can't be '0')

    for example:
    1,value1
    2,value2
    3,value3
    ... +ExtrafieldParamHelpradio=List of values must be lines with format key,value (where key can't be '0')

    for example:
    1,value1
    2,value2
    3,value3
    ... +ExtrafieldParamHelpsellist=List of values comes from a table
    Syntax: table_name:label_field:id_field::filter
    Example: c_typent:libelle:id::filter

    - idfilter is necessarly a primary int key
    - filter can be a simple test (eg active=1) to display only active value
    You can also use $ID$ in filter witch is the current id of current object
    To do a SELECT in filter use $SEL$
    if you want to filter on extrafields use syntax extra.fieldcode=... (where field code is the code of extrafield)

    In order to have the list depending on another complementary attribute list:
    c_typent:libelle:id:options_parent_list_code|parent_column:filter

    In order to have the list depending on another list:
    c_typent:libelle:id:parent_list_code|parent_column:filter +ExtrafieldParamHelpchkbxlst=List of values comes from a table
    Syntax: table_name:label_field:id_field::filter
    Example: c_typent:libelle:id::filter

    filter can be a simple test (eg active=1) to display only active value
    You can also use $ID$ in filter witch is the current id of current object
    To do a SELECT in filter use $SEL$
    if you want to filter on extrafields use syntax extra.fieldcode=... (where field code is the code of extrafield)

    In order to have the list depending on another complementary attribute list:
    c_typent:libelle:id:options_parent_list_code|parent_column:filter

    In order to have the list depending on another list:
    c_typent:libelle:id:parent_list_code|parent_column:filter +ExtrafieldParamHelplink=Parameters must be ObjectName:Classpath
    Syntax: ObjectName:Classpath
    Examples:
    Societe:societe/class/societe.class.php
    Contact:contact/class/contact.class.php +ExtrafieldParamHelpSeparator=Keep empty for a simple separator
    Set this to 1 for a collapsing separator (open by default for new session, then status is kept for each user session)
    Set this to 2 for a collapsing separator (collapsed by default for new session, then status is kept fore each user session) +LibraryToBuildPDF=Library used for PDF generation +LocalTaxDesc=Some countries may apply two or three taxes on each invoice line. If this is the case, choose the type for the second and third tax and its rate. Possible type are:
    1: local tax apply on products and services without vat (localtax is calculated on amount without tax)
    2: local tax apply on products and services including vat (localtax is calculated on amount + main tax)
    3: local tax apply on products without vat (localtax is calculated on amount without tax)
    4: local tax apply on products including vat (localtax is calculated on amount + main vat)
    5: local tax apply on services without vat (localtax is calculated on amount without tax)
    6: local tax apply on services including vat (localtax is calculated on amount + tax) +SMS=SMS +LinkToTestClickToDial=Enter a phone number to call to show a link to test the ClickToDial url for user %s +RefreshPhoneLink=Refresh link +LinkToTest=Clickable link generated for user %s (click phone number to test) +KeepEmptyToUseDefault=Keep empty to use default value +DefaultLink=Default link +SetAsDefault=Set as default +ValueOverwrittenByUserSetup=Warning, this value may be overwritten by user specific setup (each user can set his own clicktodial url) +ExternalModule=External module +InstalledInto=Installed into directory %s +BarcodeInitForthird-parties=Mass barcode init for third-parties +BarcodeInitForProductsOrServices=Mass barcode init or reset for products or services +CurrentlyNWithoutBarCode=Currently, you have %s record on %s %s without barcode defined. +InitEmptyBarCode=Init value for next %s empty records +EraseAllCurrentBarCode=Erase all current barcode values +ConfirmEraseAllCurrentBarCode=Are you sure you want to erase all current barcode values? +AllBarcodeReset=All barcode values have been removed +NoBarcodeNumberingTemplateDefined=No numbering barcode template enabled in the Barcode module setup. +EnableFileCache=Enable file cache +ShowDetailsInPDFPageFoot=Add more details into footer, such as company address or manager names (in addition to professional ids, company capital and VAT number). +NoDetails=No additional details in footer +DisplayCompanyInfo=Display company address +DisplayCompanyManagers=Display manager names +DisplayCompanyInfoAndManagers=Display company address and manager names +EnableAndSetupModuleCron=If you want to have this recurring invoice generated automatically, module *%s* must be enabled and correctly setup. Otherwise, generation of invoices must be done manually from this template using the *Create* button. Note that even if you enabled automatic generation, you can still safely launch manual generation. Generation of duplicates for the same period is not possible. +ModuleCompanyCodeCustomerAquarium=%s followed by customer code for a customer accounting code +ModuleCompanyCodeSupplierAquarium=%s followed by vendor code for a vendor accounting code +ModuleCompanyCodePanicum=Return an empty accounting code. +ModuleCompanyCodeDigitaria=Returns a compound accounting code according to the name of the third party. The code consists of a prefix that can be defined in the first position followed by the number of characters defined in the third party code. +ModuleCompanyCodeCustomerDigitaria=%s followed by the truncated customer name by the number of characters: %s for the customer accounting code. +ModuleCompanyCodeSupplierDigitaria=%s followed by the truncated supplier name by the number of characters: %s for the supplier accounting code. +Use3StepsApproval=By default, Purchase Orders need to be created and approved by 2 different users (one step/user to create and one step/user to approve. Note that if user has both permission to create and approve, one step/user will be enough). You can ask with this option to introduce a third step/user approval, if amount is higher than a dedicated value (so 3 steps will be necessary: 1=validation, 2=first approval and 3=second approval if amount is enough).
    Set this to empty if one approval (2 steps) is enough, set it to a very low value (0.1) if a second approval (3 steps) is always required. +UseDoubleApproval=Use a 3 steps approval when amount (without tax) is higher than... +WarningPHPMail=WARNING: It is often better to setup outgoing emails to use the email server of your provider instead of the default setup. Some email providers (like Yahoo) do not allow you to send an email from another server than their own server. Your current setup uses the server of the application to send email and not the server of your email provider, so some recipients (the one compatible with the restrictive DMARC protocol), will ask your email provider if they can accept your email and some email providers (like Yahoo) may respond "no" because the server is not theirs, so few of your sent Emails may not be accepted (be careful also of your email provider's sending quota).
    If your Email provider (like Yahoo) has this restriction, you must change Email setup to choose the other method "SMTP server" and enter the SMTP server and credentials provided by your Email provider. +WarningPHPMail2=If your email SMTP provider need to restrict email client to some IP addresses (very rare), this is the IP address of the mail user agent (MUA) for your ERP CRM application: %s. +WarningPHPMailSPF=If the domain name in your sender email address is protected by SPF (ask you email provider), you must include the following IPs in the SPF record of the DNS of your domain: %s. +ClickToShowDescription=Click to show description +DependsOn=This module needs the module(s) +RequiredBy=This module is required by module(s) +TheKeyIsTheNameOfHtmlField=This is the name of the HTML field. Technical knowledge is required to read the content of the HTML page to get the key name of a field. +PageUrlForDefaultValues=You must enter the relative path of the page URL. If you include parameters in URL, the default values will be effective if all parameters are set to same value. +PageUrlForDefaultValuesCreate=
    Example:
    For the form to create a new third party, it is %s.
    For URL of external modules installed into custom directory, do not include the "custom/", so use path like mymodule/mypage.php and not custom/mymodule/mypage.php.
    If you want default value only if url has some parameter, you can use %s +PageUrlForDefaultValuesList=
    Example:
    For the page that lists third parties, it is %s.
    For URL of external modules installed into custom directory, do not include the "custom/" so use a path like mymodule/mypagelist.php and not custom/mymodule/mypagelist.php.
    If you want default value only if url has some parameter, you can use %s +AlsoDefaultValuesAreEffectiveForActionCreate=Also note that overwritting default values for form creation works only for pages that were correctly designed (so with parameter action=create or presend...) +EnableDefaultValues=Enable customization of default values +EnableOverwriteTranslation=Enable usage of overwritten translation +GoIntoTranslationMenuToChangeThis=A translation has been found for the key with this code. To change this value, you must edit it from Home-Setup-translation. +WarningSettingSortOrder=Warning, setting a default sort order may result in a technical error when going on the list page if field is an unknown field. If you experience such an error, come back to this page to remove the default sort order and restore default behavior. +Field=Field +ProductDocumentTemplates=Document templates to generate product document +FreeLegalTextOnExpenseReports=Free legal text on expense reports +WatermarkOnDraftExpenseReports=Watermark on draft expense reports +AttachMainDocByDefault=Set this to 1 if you want to attach main document to email by default (if applicable) +FilesAttachedToEmail=Attach file +SendEmailsReminders=Send agenda reminders by emails +davDescription=Setup a WebDAV server +DAVSetup=Setup of module DAV +DAV_ALLOW_PRIVATE_DIR=Enable the generic private directory (WebDAV dedicated directory named "private" - login required) +DAV_ALLOW_PRIVATE_DIRTooltip=The generic private directory is a WebDAV directory anybody can access with its application login/pass. +DAV_ALLOW_PUBLIC_DIR=Enable the generic public directory (WebDAV dedicated directory named "public" - no login required) +DAV_ALLOW_PUBLIC_DIRTooltip=The generic public directory is a WebDAV directory anybody can access (in read and write mode), with no authorization required (login/password account). +DAV_ALLOW_ECM_DIR=Enable the DMS/ECM private directory (root directory of the DMS/ECM module - login required) +DAV_ALLOW_ECM_DIRTooltip=The root directory where all files are manually uploaded when using the DMS/ECM module. Similarly as access from the web interface, you will need a valid login/password with adecuate permissions to access it. +# Modules +Module0Name=Users & Groups +Module0Desc=Users / Employees and Groups management +Module1Name=Third Parties +Module1Desc=Companies and contacts management (customers, prospects...) +Module2Name=Commercial +Module2Desc=Commercial management +Module10Name=Accounting (simplified) +Module10Desc=Simple accounting reports (journals, turnover) based on database content. Does not use any ledger table. +Module20Name=Proposals +Module20Desc=Commercial proposal management +Module22Name=Mass Emailings +Module22Desc=Manage bulk emailing +Module23Name=Energy +Module23Desc=Monitoring the consumption of energies +Module25Name=Sales Orders +Module25Desc=Sales order management +Module30Name=Invoices +Module30Desc=Management of invoices and credit notes for customers. Management of invoices and credit notes for suppliers +Module40Name=Vendors +Module40Desc=Vendors and purchase management (purchase orders and billing of supplier invoices) +Module42Name=Debug Logs +Module42Desc=Logging facilities (file, syslog, ...). Such logs are for technical/debug purposes. +Module49Name=Editors +Module49Desc=Editor management +Module50Name=Products +Module50Desc=Management of Products +Module51Name=Mass mailings +Module51Desc=Mass paper mailing management +Module52Name=Stocks +Module52Desc=Stock management +Module53Name=Services +Module53Desc=Management of Services +Module54Name=Contracts/Subscriptions +Module54Desc=Management of contracts (services or recurring subscriptions) +Module55Name=Barcodes +Module55Desc=Barcode management +Module56Name=Telephony +Module56Desc=Telephony integration +Module57Name=Bank Direct Debit payments +Module57Desc=Management of Direct Debit payment orders. It includes generation of SEPA file for European countries. +Module58Name=ClickToDial +Module58Desc=Integration of a ClickToDial system (Asterisk, ...) +Module59Name=Bookmark4u +Module59Desc=Add function to generate Bookmark4u account from a Dolibarr account +Module60Name=Stickers +Module60Desc=Management of stickers +Module70Name=Interventions +Module70Desc=Intervention management +Module75Name=Expense and trip notes +Module75Desc=Expense and trip notes management +Module80Name=Shipments +Module80Desc=Shipments and delivery note management +Module85Name=Banks & Cash +Module85Desc=Management of bank or cash accounts +Module100Name=External Site +Module100Desc=Add a link to an external website as a main menu icon. Website is shown in a frame under the top menu. +Module105Name=Mailman and SPIP +Module105Desc=Mailman or SPIP interface for member module +Module200Name=LDAP +Module200Desc=LDAP directory synchronization +Module210Name=PostNuke +Module210Desc=PostNuke integration +Module240Name=Data exports +Module240Desc=Tool to export Dolibarr data (with assistance) +Module250Name=Data imports +Module250Desc=Tool to import data into Dolibarr (with assistance) +Module310Name=Members +Module310Desc=Foundation members management +Module320Name=RSS Feed +Module320Desc=Add a RSS feed to Dolibarr pages +Module330Name=Bookmarks & Shortcuts +Module330Desc=Create shortcuts, always accessible, to the internal or external pages to which you frequently access +Module400Name=Projects or Leads +Module400Desc=Management of projects, leads/opportunities and/or tasks. You can also assign any element (invoice, order, proposal, intervention, ...) to a project and get a transversal view from the project view. +Module410Name=Webcalendar +Module410Desc=Webcalendar integration +Module500Name=Taxes & Special Expenses +Module500Desc=Management of other expenses (sale taxes, social or fiscal taxes, dividends, ...) +Module510Name=Salaries +Module510Desc=Record and track employee payments +Module520Name=Loans +Module520Desc=Management of loans +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 +Module610Desc=Creation of product variants (color, size etc.) +Module700Name=Donations +Module700Desc=Donation management +Module770Name=Expense Reports +Module770Desc=Manage expense reports claims (transportation, meal, ...) +Module1120Name=Vendor Commercial Proposals +Module1120Desc=Request vendor commercial proposal and prices +Module1200Name=Mantis +Module1200Desc=Mantis integration +Module1520Name=Document Generation +Module1520Desc=Mass email document generation +Module1780Name=Tags/Categories +Module1780Desc=Create tags/category (products, customers, suppliers, contacts or members) +Module2000Name=WYSIWYG editor +Module2000Desc=Allow text fields to be edited/formatted using CKEditor (html) +Module2200Name=Dynamic Prices +Module2200Desc=Use maths expressions for auto-generation of prices +Module2300Name=Scheduled jobs +Module2300Desc=Scheduled jobs management (alias cron or chrono table) +Module2400Name=Events/Agenda +Module2400Desc=Track events. Log automatic events for tracking purposes or record manual events or meetings. This is the principal module for good Customer or Vendor Relationship Management. +Module2500Name=DMS / ECM +Module2500Desc=Document Management System / Electronic Content Management. Automatic organization of your generated or stored documents. Share them when you need. +Module2600Name=API/Web services (SOAP server) +Module2600Desc=Enable the Dolibarr SOAP server providing API services +Module2610Name=API/Web services (REST server) +Module2610Desc=Enable the Dolibarr REST server providing API services +Module2660Name=Call WebServices (SOAP client) +Module2660Desc=Enable the Dolibarr web services client (Can be used to push data/requests to external servers. Only Purchase orders are currently supported.) +Module2700Name=Gravatar +Module2700Desc=Use online Gravatar service (www.gravatar.com) to show photo of users/members (found with their emails). Needs Internet access +Module2800Desc=FTP Client +Module2900Name=GeoIPMaxmind +Module2900Desc=GeoIP Maxmind conversions capabilities +Module3200Name=Unalterable Archives +Module3200Desc=Enable an unalterable log of business events. Events are archived in real-time. The log is a read-only table of chained events that can be exported. This module may be mandatory for some countries. +Module4000Name=HRM +Module4000Desc=Human resources management (management of department, employee contracts and feelings) +Module5000Name=Multi-company +Module5000Desc=Allows you to manage multiple companies +Module6000Name=Workflow +Module6000Desc=Workflow management (automatic creation of object and/or automatic status change) +Module10000Name=Websites +Module10000Desc=Create websites (public) with a WYSIWYG editor. This is a webmaster or developer oriented CMS (it is better to know HTML and CSS language). Just setup your web server (Apache, Nginx, ...) to point to the dedicated Dolibarr directory to have it online on the internet with your own domain name. +Module20000Name=Leave Request Management +Module20000Desc=Define and track employee leave requests +Module39000Name=Product Lots +Module39000Desc=Lots, serial numbers, eat-by/sell-by date management for products +Module40000Name=Multicurrency +Module40000Desc=Use alternative currencies in prices and documents +Module50000Name=PayBox +Module50000Desc=Offer customers a PayBox online payment page (credit/debit cards). This can be used to allow your customers to make ad-hoc payments or payments related to a specific Dolibarr object (invoice, order etc...) +Module50100Name=POS SimplePOS +Module50100Desc=Point of Sale module SimplePOS (simple POS). +Module50150Name=POS TakePOS +Module50150Desc=Point of Sale module TakePOS (touchscreen POS, for shops, bars or restaurants). +Module50200Name=Paypal +Module50200Desc=Offer customers a PayPal online payment page (PayPal account or credit/debit cards). This can be used to allow your customers to make ad-hoc payments or payments related to a specific Dolibarr object (invoice, order etc...) +Module50300Name=Stripe +Module50300Desc=Offer customers a Stripe online payment page (credit/debit cards). This can be used to allow your customers to make ad-hoc payments or payments related to a specific Dolibarr object (invoice, order etc...) +Module50400Name=Accounting (double entry) +Module50400Desc=Accounting management (double entries, support general and auxiliary ledgers). Export the ledger in several other accounting software formats. +Module54000Name=PrintIPP +Module54000Desc=Direct print (without opening the documents) using Cups IPP interface (Printer must be visible from server, and CUPS must be installed on server). +Module55000Name=Poll, Survey or Vote +Module55000Desc=Create online polls, surveys or votes (like Doodle, Studs, RDVz etc...) +Module59000Name=Margins +Module59000Desc=Module to manage margins +Module60000Name=Commissions +Module60000Desc=Module to manage commissions +Module62000Name=Incoterms +Module62000Desc=Add features to manage Incoterms +Module63000Name=Resources +Module63000Desc=Manage resources (printers, cars, rooms, ...) for allocating to events +Permission11=Read customer invoices +Permission12=Create/modify customer invoices +Permission13=Unvalidate customer invoices +Permission14=Validate customer invoices +Permission15=Send customer invoices by email +Permission16=Create payments for customer invoices +Permission19=Delete customer invoices +Permission21=Read commercial proposals +Permission22=Create/modify commercial proposals +Permission24=Validate commercial proposals +Permission25=Send commercial proposals +Permission26=Close commercial proposals +Permission27=Delete commercial proposals +Permission28=Export commercial proposals +Permission31=Read products +Permission32=Create/modify products +Permission34=Delete products +Permission36=See/manage hidden products +Permission38=Export products +Permission41=Read projects and tasks (shared project and projects I'm contact for). Can also enter time consumed, for me or my hierarchy, on assigned tasks (Timesheet) +Permission42=Create/modify projects (shared project and projects I'm contact for). Can also create tasks and assign users to project and tasks +Permission44=Delete projects (shared project and projects I'm contact for) +Permission45=Export projects +Permission61=Read interventions +Permission62=Create/modify interventions +Permission64=Delete interventions +Permission67=Export interventions +Permission71=Read members +Permission72=Create/modify members +Permission74=Delete members +Permission75=Setup types of membership +Permission76=Export data +Permission78=Read subscriptions +Permission79=Create/modify subscriptions +Permission81=Read customers orders +Permission82=Create/modify customers orders +Permission84=Validate customers orders +Permission86=Send customers orders +Permission87=Close customers orders +Permission88=Cancel customers orders +Permission89=Delete customers orders +Permission91=Read social or fiscal taxes and vat +Permission92=Create/modify social or fiscal taxes and vat +Permission93=Delete social or fiscal taxes and vat +Permission94=Export social or fiscal taxes +Permission95=Read reports +Permission101=Read sendings +Permission102=Create/modify sendings +Permission104=Validate sendings +Permission106=Export sendings +Permission109=Delete sendings +Permission111=Read financial accounts +Permission112=Create/modify/delete and compare transactions +Permission113=Setup financial accounts (create, manage categories) +Permission114=Reconcile transactions +Permission115=Export transactions and account statements +Permission116=Transfers between accounts +Permission117=Manage checks dispatching +Permission121=Read third parties linked to user +Permission122=Create/modify third parties linked to user +Permission125=Delete third parties linked to user +Permission126=Export third parties +Permission141=Read all projects and tasks (also private projects for which I am not a contact) +Permission142=Create/modify all projects and tasks (also private projects for which I am not a contact) +Permission144=Delete all projects and tasks (also private projects i am not contact for) +Permission146=Read providers +Permission147=Read stats +Permission151=Read direct debit payment orders +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=Read contracts/subscriptions +Permission162=Create/modify contracts/subscriptions +Permission163=Activate a service/subscription of a contract +Permission164=Disable a service/subscription of a contract +Permission165=Delete contracts/subscriptions +Permission167=Export contracts +Permission171=Read trips and expenses (yours and your subordinates) +Permission172=Create/modify trips and expenses +Permission173=Delete trips and expenses +Permission174=Read all trips and expenses +Permission178=Export trips and expenses +Permission180=Read suppliers +Permission181=Read purchase orders +Permission182=Create/modify purchase orders +Permission183=Validate purchase orders +Permission184=Approve purchase orders +Permission185=Order or cancel purchase orders +Permission186=Receive purchase orders +Permission187=Close purchase orders +Permission188=Cancel purchase orders +Permission192=Create lines +Permission193=Cancel lines +Permission194=Read the bandwidth lines +Permission202=Create ADSL connections +Permission203=Order connections orders +Permission204=Order connections +Permission205=Manage connections +Permission206=Read connections +Permission211=Read Telephony +Permission212=Order lines +Permission213=Activate line +Permission214=Setup Telephony +Permission215=Setup providers +Permission221=Read emailings +Permission222=Create/modify emailings (topic, recipients...) +Permission223=Validate emailings (allows sending) +Permission229=Delete emailings +Permission237=View recipients and info +Permission238=Manually send mailings +Permission239=Delete mailings after validation or sent +Permission241=Read categories +Permission242=Create/modify categories +Permission243=Delete categories +Permission244=See the contents of the hidden categories +Permission251=Read other users and groups +PermissionAdvanced251=Read other users +Permission252=Read permissions of other users +Permission253=Create/modify other users, groups and permissions +PermissionAdvanced253=Create/modify internal/external users and permissions +Permission254=Create/modify external users only +Permission255=Modify other users password +Permission256=Delete or disable other users +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). +Permission271=Read CA +Permission272=Read invoices +Permission273=Issue invoices +Permission281=Read contacts +Permission282=Create/modify contacts +Permission283=Delete contacts +Permission286=Export contacts +Permission291=Read tariffs +Permission292=Set permissions on the tariffs +Permission293=Modify customer's tariffs +Permission300=Read barcodes +Permission301=Create/modify barcodes +Permission302=Delete barcodes +Permission311=Read services +Permission312=Assign service/subscription to contract +Permission331=Read bookmarks +Permission332=Create/modify bookmarks +Permission333=Delete bookmarks +Permission341=Read its own permissions +Permission342=Create/modify his own user information +Permission343=Modify his own password +Permission344=Modify its own permissions +Permission351=Read groups +Permission352=Read groups permissions +Permission353=Create/modify groups +Permission354=Delete or disable groups +Permission358=Export users +Permission401=Read discounts +Permission402=Create/modify discounts +Permission403=Validate discounts +Permission404=Delete discounts +Permission430=Use Debug Bar +Permission511=Read payments of salaries +Permission512=Create/modify payments of salaries +Permission514=Delete payments of salaries +Permission517=Export salaries +Permission520=Read Loans +Permission522=Create/modify loans +Permission524=Delete loans +Permission525=Access loan calculator +Permission527=Export loans +Permission531=Read services +Permission532=Create/modify services +Permission534=Delete services +Permission536=See/manage hidden services +Permission538=Export services +Permission650=Read Bills of Materials +Permission651=Create/Update Bills of Materials +Permission652=Delete Bills of Materials +Permission701=Read donations +Permission702=Create/modify donations +Permission703=Delete donations +Permission771=Read expense reports (yours and your subordinates) +Permission772=Create/modify expense reports +Permission773=Delete expense reports +Permission774=Read all expense reports (even for user not subordinates) +Permission775=Approve expense reports +Permission776=Pay expense reports +Permission779=Export expense reports +Permission1001=Read stocks +Permission1002=Create/modify warehouses +Permission1003=Delete warehouses +Permission1004=Read stock movements +Permission1005=Create/modify stock movements +Permission1101=Read delivery receipts +Permission1102=Create/modify delivery receipts +Permission1104=Validate delivery receipts +Permission1109=Delete delivery receipts +Permission1121=Read supplier proposals +Permission1122=Create/modify supplier proposals +Permission1123=Validate supplier proposals +Permission1124=Send supplier proposals +Permission1125=Delete supplier proposals +Permission1126=Close supplier price requests +Permission1181=Read suppliers +Permission1182=Read purchase orders +Permission1183=Create/modify purchase orders +Permission1184=Validate purchase orders +Permission1185=Approve purchase orders +Permission1186=Order purchase orders +Permission1187=Acknowledge receipt of purchase orders +Permission1188=Delete purchase orders +Permission1190=Approve (second approval) purchase orders +Permission1201=Get result of an export +Permission1202=Create/Modify an export +Permission1231=Read vendor invoices +Permission1232=Create/modify vendor invoices +Permission1233=Validate vendor invoices +Permission1234=Delete vendor invoices +Permission1235=Send vendor invoices by email +Permission1236=Export vendor invoices, attributes and payments +Permission1237=Export purchase orders and their details +Permission1251=Run mass imports of external data into database (data load) +Permission1321=Export customer invoices, attributes and payments +Permission1322=Reopen a paid bill +Permission1421=Export sales orders and attributes +Permission2401=Read actions (events or tasks) linked to his user account (if owner of event or just assigned to) +Permission2402=Create/modify actions (events or tasks) linked to his user account (if owner of event) +Permission2403=Delete actions (events or tasks) linked to his user account (if owner of event) +Permission2411=Read actions (events or tasks) of others +Permission2412=Create/modify actions (events or tasks) of others +Permission2413=Delete actions (events or tasks) of others +Permission2414=Export actions/tasks of others +Permission2501=Read/Download documents +Permission2502=Download documents +Permission2503=Submit or delete documents +Permission2515=Setup documents directories +Permission2801=Use FTP client in read mode (browse and download only) +Permission2802=Use FTP client in write mode (delete or upload files) +Permission3200=Read archived events and fingerprints +Permission4001=See employees +Permission4002=Create employees +Permission4003=Delete employees +Permission4004=Export employees +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. +Permission10005=Delete website content +Permission20001=Read leave requests (your leave and those of your subordinates) +Permission20002=Create/modify your leave requests (your leave and those of your subordinates) +Permission20003=Delete leave requests +Permission20004=Read all leave requests (even of user not subordinates) +Permission20005=Create/modify leave requests for everybody (even of user not subordinates) +Permission20006=Admin leave requests (setup and update balance) +Permission20007=Approve leave requests +Permission23001=Read Scheduled job +Permission23002=Create/update Scheduled job +Permission23003=Delete Scheduled job +Permission23004=Execute Scheduled job +Permission50101=Use Point of Sale +Permission50201=Read transactions +Permission50202=Import transactions +Permission50401=Bind products and invoices with accounting accounts +Permission50411=Read operations in ledger +Permission50412=Write/Edit operations in ledger +Permission50414=Delete operations in ledger +Permission50415=Delete all operations by year and journal in ledger +Permission50418=Export operations of the ledger +Permission50420=Report and export reports (turnover, balance, journals, ledger) +Permission50430=Define fiscal periods. Validate transactions and close fiscal periods. +Permission50440=Manage chart of accounts, setup of accountancy +Permission51001=Read assets +Permission51002=Create/Update assets +Permission51003=Delete assets +Permission51005=Setup types of asset +Permission54001=Print +Permission55001=Read polls +Permission55002=Create/modify polls +Permission59001=Read commercial margins +Permission59002=Define commercial margins +Permission59003=Read every user margin +Permission63001=Read resources +Permission63002=Create/modify resources +Permission63003=Delete resources +Permission63004=Link resources to agenda events +DictionaryCompanyType=Third-party types +DictionaryCompanyJuridicalType=Third-party legal entities +DictionaryProspectLevel=Prospect potential +DictionaryCanton=States/Provinces +DictionaryRegion=Regions +DictionaryCountry=Countries +DictionaryCurrency=Currencies +DictionaryCivility=Honorific titles +DictionaryActions=Types of agenda events +DictionarySocialContributions=Types of social or fiscal taxes +DictionaryVAT=VAT Rates or Sales Tax Rates +DictionaryRevenueStamp=Amount of tax stamps +DictionaryPaymentConditions=Payment Terms +DictionaryPaymentModes=Payment Modes +DictionaryTypeContact=Contact/Address types +DictionaryTypeOfContainer=Website - Type of website pages/containers +DictionaryEcotaxe=Ecotax (WEEE) +DictionaryPaperFormat=Paper formats +DictionaryFormatCards=Card formats +DictionaryFees=Expense report - Types of expense report lines +DictionarySendingMethods=Shipping methods +DictionaryStaff=Number of Employees +DictionaryAvailability=Delivery delay +DictionaryOrderMethods=Ordering methods +DictionarySource=Origin of proposals/orders +DictionaryAccountancyCategory=Personalized groups for reports +DictionaryAccountancysystem=Models for chart of accounts +DictionaryAccountancyJournal=Accounting journals +DictionaryEMailTemplates=Email Templates +DictionaryUnits=Units +DictionaryMeasuringUnits=Measuring Units +DictionarySocialNetworks=Social Networks +DictionaryProspectStatus=Prospect status +DictionaryHolidayTypes=Types of leave +DictionaryOpportunityStatus=Lead status for project/lead +DictionaryExpenseTaxCat=Expense report - Transportation categories +DictionaryExpenseTaxRange=Expense report - Range by transportation category +SetupSaved=Setup saved +SetupNotSaved=Setup not saved +BackToModuleList=Back to Module list +BackToDictionaryList=Back to Dictionaries list +TypeOfRevenueStamp=Type of tax stamp +VATManagement=Sales Tax Management +VATIsUsedDesc=By default when creating prospects, invoices, orders etc. the Sales Tax rate follows the active standard rule:
    If the seller is not subject to Sales tax, then Sales tax defaults to 0. End of rule.
    If the (seller's country = buyer's country), then the Sales tax by default equals the Sales tax of the product in the seller's country. End of rule.
    If the seller and buyer are both in the European Community and goods are transport-related products (haulage, shipping, airline), the default VAT is 0. This rule is dependant on the seller's country - please consult with your accountant. The VAT should be paid by the buyer to the customs office in their country and not to the seller. End of rule.
    If the seller and buyer are both in the European Community and the buyer is not a company (with a registered intra-Community VAT number) then the VAT defaults to the VAT rate of the seller's country. End of rule.
    If the seller and buyer are both in the European Community and the buyer is a company (with a registered intra-Community VAT number), then the VAT is 0 by default. End of rule.
    In any other case the proposed default is Sales tax=0. End of rule. +VATIsNotUsedDesc=By default the proposed Sales tax is 0 which can be used for cases like associations, individuals or small companies. +VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. +VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. +##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax +LTRate=Rate +LocalTax1IsNotUsed=Do not use second tax +LocalTax1IsUsedDesc=Use a second type of tax (other than first one) +LocalTax1IsNotUsedDesc=Do not use other type of tax (other than first one) +LocalTax1Management=Second type of tax +LocalTax1IsUsedExample= +LocalTax1IsNotUsedExample= +LocalTax2IsNotUsed=Do not use third tax +LocalTax2IsUsedDesc=Use a third type of tax (other than first one) +LocalTax2IsNotUsedDesc=Do not use other type of tax (other than first one) +LocalTax2Management=Third type of tax +LocalTax2IsUsedExample= +LocalTax2IsNotUsedExample= +LocalTax1ManagementES=RE Management +LocalTax1IsUsedDescES=The RE rate by default when creating prospects, invoices, orders etc. follow the active standard rule:
    If the buyer is not subjected to RE, RE by default=0. End of rule.
    If the buyer is subjected to RE then the RE by default. End of rule.
    +LocalTax1IsNotUsedDescES=By default the proposed RE is 0. End of rule. +LocalTax1IsUsedExampleES=In Spain they are professionals subject to some specific sections of the Spanish IAE. +LocalTax1IsNotUsedExampleES=In Spain they are professional and societies and subject to certain sections of the Spanish IAE. +LocalTax2ManagementES=IRPF Management +LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices, orders etc. follow the active standard rule:
    If the seller is not subjected to IRPF, then IRPF by default=0. End of rule.
    If the seller is subjected to IRPF then the IRPF by default. End of rule.
    +LocalTax2IsNotUsedDescES=By default the proposed IRPF is 0. End of rule. +LocalTax2IsUsedExampleES=In Spain, freelancers and independent professionals who provide services and companies who have chosen the tax system of modules. +LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) +CalcLocaltax=Reports on local taxes +CalcLocaltax1=Sales - Purchases +CalcLocaltax1Desc=Local Taxes reports are calculated with the difference between localtaxes sales and localtaxes purchases +CalcLocaltax2=Purchases +CalcLocaltax2Desc=Local Taxes reports are the total of localtaxes purchases +CalcLocaltax3=Sales +CalcLocaltax3Desc=Local Taxes reports are the total of localtaxes sales +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax +LabelUsedByDefault=Label used by default if no translation can be found for code +LabelOnDocuments=Label on documents +LabelOrTranslationKey=Label or translation key +ValueOfConstantKey=Value of a configuration constant +NbOfDays=No. of days +AtEndOfMonth=At end of month +CurrentNext=Current/Next +Offset=Offset +AlwaysActive=Always active +Upgrade=Upgrade +MenuUpgrade=Upgrade / Extend +AddExtensionThemeModuleOrOther=Deploy/install external app/module +WebServer=Web server +DocumentRootServer=Web server's root directory +DataRootServer=Data files directory +IP=IP +Port=Port +VirtualServerName=Virtual server name +OS=OS +PhpWebLink=Web-Php link +Server=Server +Database=Database +DatabaseServer=Database host +DatabaseName=Database name +DatabasePort=Database port +DatabaseUser=Database user +DatabasePassword=Database password +Tables=Tables +TableName=Table name +NbOfRecord=No. of records +Host=Server +DriverType=Driver type +SummarySystem=System information summary +SummaryConst=List of all Dolibarr setup parameters +MenuCompanySetup=Company/Organization +DefaultMenuManager= Standard menu manager +DefaultMenuSmartphoneManager=Smartphone menu manager +Skin=Skin theme +DefaultSkin=Default skin theme +MaxSizeList=Max length for list +DefaultMaxSizeList=Default max length for lists +DefaultMaxSizeShortList=Default max length for short lists (i.e. in customer card) +MessageOfDay=Message of the day +MessageLogin=Login page message +LoginPage=Login page +BackgroundImageLogin=Background image +PermanentLeftSearchForm=Permanent search form on left menu +DefaultLanguage=Default language +EnableMultilangInterface=Enable multilanguage support +EnableShowLogo=Show the company logo in the menu +CompanyInfo=Company/Organization +CompanyIds=Company/Organization identities +CompanyName=Name +CompanyAddress=Address +CompanyZip=Zip +CompanyTown=Town +CompanyCountry=Country +CompanyCurrency=Main currency +CompanyObject=Object of the company +IDCountry=ID country +Logo=Logo +LogoDesc=Main logo of company. Will be used into generated documents (PDF, ...) +LogoSquarred=Logo (squarred) +LogoSquarredDesc=Must be a squarred icon (width = height). This logo will be used as the favorite icon or other need like for the top menu bar (if not disabled into display setup). +DoNotSuggestPaymentMode=Do not suggest +NoActiveBankAccountDefined=No active bank account defined +OwnerOfBankAccount=Owner of bank account %s +BankModuleNotActive=Bank accounts module not enabled +ShowBugTrackLink=Show link "%s" +Alerts=Alerts +DelaysOfToleranceBeforeWarning=Delay before displaying a warning alert for: +DelaysOfToleranceDesc=Set the delay before an alert icon %s is shown onscreen for the late element. +Delays_MAIN_DELAY_ACTIONS_TODO=Planned events (agenda events) not completed +Delays_MAIN_DELAY_PROJECT_TO_CLOSE=Project not closed in time +Delays_MAIN_DELAY_TASKS_TODO=Planned task (project tasks) not completed +Delays_MAIN_DELAY_ORDERS_TO_PROCESS=Order not processed +Delays_MAIN_DELAY_SUPPLIER_ORDERS_TO_PROCESS=Purchase order not processed +Delays_MAIN_DELAY_PROPALS_TO_CLOSE=Proposal not closed +Delays_MAIN_DELAY_PROPALS_TO_BILL=Proposal not billed +Delays_MAIN_DELAY_NOT_ACTIVATED_SERVICES=Service to activate +Delays_MAIN_DELAY_RUNNING_SERVICES=Expired service +Delays_MAIN_DELAY_SUPPLIER_BILLS_TO_PAY=Unpaid vendor invoice +Delays_MAIN_DELAY_CUSTOMER_BILLS_UNPAYED=Unpaid customer invoice +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 +Delays_MAIN_DELAY_HOLIDAYS=Leave requests 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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. +SetupDescription5=Other Setup menu entries manage optional parameters. +LogEvents=Security audit events +Audit=Audit +InfoDolibarr=About Dolibarr +InfoBrowser=About Browser +InfoOS=About OS +InfoWebServer=About Web Server +InfoDatabase=About Database +InfoPHP=About PHP +InfoPerf=About Performances +BrowserName=Browser name +BrowserOS=Browser OS +ListOfSecurityEvents=List of Dolibarr security events +SecurityEventsPurged=Security events purged +LogEventDesc=Enable logging for specific security events. Administrators the log via menu %s - %s. Warning, this feature can generate a large amount of data in the database. +AreaForAdminOnly=Setup parameters can be set by administrator users only. +SystemInfoDesc=System information is miscellaneous technical information you get in read only mode and visible for administrators only. +SystemAreaForAdminOnly=This area is available to administrator users only. Dolibarr user permissions cannot change this restriction. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. +AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. +AccountantFileNumber=Accountant code +DisplayDesc=Parameters affecting the look and behaviour of Dolibarr can be modified here. +AvailableModules=Available app/modules +ToActivateModule=To activate modules, go on setup Area (Home->Setup->Modules). +SessionTimeOut=Time out for session +SessionExplanation=This number guarantees that the session will never expire before this delay, if the session cleaner is done by Internal PHP session cleaner (and nothing else). Internal PHP session cleaner does not guarantee that the session will expire after this delay. It will expire, after this delay, and when the session cleaner is run, so every %s/%s access, but only during access made by other sessions (if value is 0, it means clearing of session is done only by an external process).
    Note: on some servers with an external session cleaning mechanism (cron under debian, ubuntu ...), the sessions can be destroyed after a period defined by an external setup, no matter what the value entered here is. +TriggersAvailable=Available triggers +TriggersDesc=Triggers are files that will modify the behavior of Dolibarr workflow once copied into the directory htdocs/core/triggers. They realize new actions, activated on Dolibarr events (new company creation, invoice validation, ...). +TriggerDisabledByName=Triggers in this file are disabled by the -NORUN suffix in their name. +TriggerDisabledAsModuleDisabled=Triggers in this file are disabled as module %s is disabled. +TriggerAlwaysActive=Triggers in this file are always active, whatever are the activated Dolibarr modules. +TriggerActiveAsModuleActive=Triggers in this file are active as module %s is enabled. +GeneratedPasswordDesc=Choose the method to be used for auto-generated passwords. +DictionaryDesc=Insert all reference data. You can add your values to the default. +ConstDesc=This page allows you to edit (override) parameters not available in other pages. These are mostly reserved parameters for developers/advanced troubleshooting only. +MiscellaneousDesc=All other security related parameters are defined here. +LimitsSetup=Limits/Precision setup +LimitsDesc=You can define limits, precisions and optimizations used by Dolibarr here +MAIN_MAX_DECIMALS_UNIT=Max. decimals for unit prices +MAIN_MAX_DECIMALS_TOT=Max. decimals for total prices +MAIN_MAX_DECIMALS_SHOWN=Max. decimals for prices shown on screen. Add an ellipsis ... after this parameter (e.g. "2...") if you want to see "..." suffixed to the truncated price. +MAIN_ROUNDING_RULE_TOT=Step of rounding range (for countries where rounding is done on something other than base 10. For example, put 0.05 if rounding is done by 0.05 steps) +UnitPriceOfProduct=Net unit price of a product +TotalPriceAfterRounding=Total price (excl/vat/incl tax) after rounding +ParameterActiveForNextInputOnly=Parameter effective for next input only +NoEventOrNoAuditSetup=No security event has been logged. This is normal if Audit has not been enabled in the "Setup - Security - Events" page. +NoEventFoundWithCriteria=No security event has been found for this search criteria. +SeeLocalSendMailSetup=See your local sendmail setup +BackupDesc=A complete backup of a Dolibarr installation requires two steps. +BackupDesc2=Backup the contents of the "documents" directory (%s) containing all uploaded and generated files. This will also include all the dump files generated in Step 1. This operation may last several minutes. +BackupDesc3=Backup the structure and contents of your database (%s) into a dump file. For this, you can use the following assistant. +BackupDescX=The archived directory should be stored in a secure place. +BackupDescY=The generated dump file should be stored in a secure place. +BackupPHPWarning=Backup cannot be guaranteed with this method. Previous one recommended. +RestoreDesc=To restore a Dolibarr backup, two steps are required. +RestoreDesc2=Restore the backup file (zip file for example) of the "documents" directory to a new Dolibarr installation or into this current documents directory (%s). +RestoreDesc3=Restore the database structure and data from a backup dump file into the database of the new Dolibarr installation or into the database of this current installation (%s). Warning, once the restore is complete, you must use a login/password, that existed from the backup time/installation to connect again.
    To restore a backup database into this current installation, you can follow this assistant. +RestoreMySQL=MySQL import +ForcedToByAModule= This rule is forced to %s by an activated module +PreviousDumpFiles=Existing backup files +PreviousArchiveFiles=Existing archive files +WeekStartOnDay=First day of the week +RunningUpdateProcessMayBeRequired=Running the upgrade process seems to be required (Program version %s differs from Database version %s) +YouMustRunCommandFromCommandLineAfterLoginToUser=You must run this command from command line after login to a shell with user %s or you must add -W option at end of command line to provide %s password. +YourPHPDoesNotHaveSSLSupport=SSL functions not available in your PHP +DownloadMoreSkins=More skins to download +SimpleNumRefModelDesc=Returns the reference number with format %syymm-nnnn where yy is year, mm is month and nnnn is sequential with no reset +ShowProfIdInAddress=Show professional id with addresses +ShowVATIntaInAddress=Hide intra-Community VAT number with addresses +TranslationUncomplete=Partial translation +MAIN_DISABLE_METEO=Disable meteorological view +MeteoStdMod=Standard mode +MeteoStdModEnabled=Standard mode enabled +MeteoPercentageMod=Percentage mode +MeteoPercentageModEnabled=Percentage mode enabled +MeteoUseMod=Click to use %s +TestLoginToAPI=Test login to API +ProxyDesc=Some features of Dolibarr require internet access. Define here the internet connection parameters such as access through a proxy server if necessary. +ExternalAccess=External/Internet Access +MAIN_PROXY_USE=Use a proxy server (otherwise access is direct to the internet) +MAIN_PROXY_HOST=Proxy server: Name/Address +MAIN_PROXY_PORT=Proxy server: Port +MAIN_PROXY_USER=Proxy server: Login/User +MAIN_PROXY_PASS=Proxy server: Password +DefineHereComplementaryAttributes=Define here any additional/custom attributes that you want to be included for: %s +ExtraFields=Complementary attributes +ExtraFieldsLines=Complementary attributes (lines) +ExtraFieldsLinesRec=Complementary attributes (templates invoices lines) +ExtraFieldsSupplierOrdersLines=Complementary attributes (order lines) +ExtraFieldsSupplierInvoicesLines=Complementary attributes (invoice lines) +ExtraFieldsThirdParties=Complementary attributes (third party) +ExtraFieldsContacts=Complementary attributes (contacts/address) +ExtraFieldsMember=Complementary attributes (member) +ExtraFieldsMemberType=Complementary attributes (member type) +ExtraFieldsCustomerInvoices=Complementary attributes (invoices) +ExtraFieldsCustomerInvoicesRec=Complementary attributes (templates invoices) +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). +PathToDocuments=Path to documents +PathDirectory=Directory +SendmailOptionMayHurtBuggedMTA=Feature to send mails using method "PHP mail direct" will generate a mail message that might not be parsed correctly by some receiving mail servers. The result is that some mails can't be read by people hosted by those bugged platforms. This is the case for some Internet providers (Ex: Orange in France). This is not a problem with Dolibarr or PHP but with the receiving mail server. You can however add an option MAIN_FIX_FOR_BUGGED_MTA to 1 in Setup - Other to modify Dolibarr to avoid this. However, you may experience problems with other servers that strictly use the SMTP standard. The other solution (recommended) is to use the method "SMTP socket library" which has no disadvantages. +TranslationSetup=Setup of translation +TranslationKeySearch=Search a translation key or string +TranslationOverwriteKey=Overwrite a translation string +TranslationDesc=How to set the display language:
    * Default/Systemwide: menu Home -> Setup -> Display
    * Per user: Click on the username at the top of the screen and modify the User Display Setup tab on the user card. +TranslationOverwriteDesc=You can also override strings filling the following table. Choose your language from "%s" dropdown, insert the translation key string into "%s" and your new translation into "%s" +TranslationOverwriteDesc2=You can use the other tab to help you know which translation key to use +TranslationString=Translation string +CurrentTranslationString=Current translation string +WarningAtLeastKeyOrTranslationRequired=A search criteria is required at least for key or translation string +NewTranslationStringToShow=New translation string to show +OriginalValueWas=The original translation is overwritten. Original value was:

    %s +TransKeyWithoutOriginalValue=You forced a new translation for the translation key '%s' that does not exist in any language files +TotalNumberOfActivatedModules=Activated application/modules: %s / %s +YouMustEnableOneModule=You must at least enable 1 module +ClassNotFoundIntoPathWarning=Class %s not found in PHP path +YesInSummer=Yes in summer +OnlyFollowingModulesAreOpenedToExternalUsers=Note, only the following modules are available to external users (irrespective of the permissions of such users) and only if permissions are granted:
    +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. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. +SearchOptim=Search optimization +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. +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. +FieldEdition=Edition of field %s +FillThisOnlyIfRequired=Example: +2 (fill only if timezone offset problems are experienced) +GetBarCode=Get barcode +NumberingModules=Numbering models +##### Module password generation +PasswordGenerationStandard=Return a password generated according to internal Dolibarr algorithm: 8 characters containing shared numbers and characters in lowercase. +PasswordGenerationNone=Do not suggest a generated password. Password must be typed in manually. +PasswordGenerationPerso=Return a password according to your personally defined configuration. +SetupPerso=According to your configuration +PasswordPatternDesc=Password pattern description +##### Users setup ##### +RuleForGeneratedPasswords=Rules to generate and validate passwords +DisableForgetPasswordLinkOnLogonPage=Do not show the "Password Forgotten" link on the Login page +UsersSetup=Users module setup +UserMailRequired=Email required to create a new user +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record +##### HRM setup ##### +HRMSetup=HRM module setup +##### Company setup ##### +CompanySetup=Companies module setup +CompanyCodeChecker=Options for automatic generation of customer/vendor codes +AccountCodeManager=Options for automatic generation of customer/vendor accounting codes +NotificationsDesc=Email notifications can be sent automatically for some Dolibarr events.
    Recipients of notifications can be defined: +NotificationsDescUser=* per user, one user at a time. +NotificationsDescContact=* per third-party contacts (customers or vendors), one contact at a time. +NotificationsDescGlobal=* or by setting global email addresses in this setup page. +ModelModules=Document Templates +DocumentModelOdt=Generate documents from OpenDocument templates (.ODT / .ODS files from LibreOffice, OpenOffice, KOffice, TextEdit,...) +WatermarkOnDraft=Watermark on draft document +JSOnPaimentBill=Activate feature to autofill payment lines on payment form +CompanyIdProfChecker=Rules for Professional IDs +MustBeUnique=Must be unique? +MustBeMandatory=Mandatory to create third parties (if VAT number or type of company defined) ? +MustBeInvoiceMandatory=Mandatory to validate invoices? +TechnicalServicesProvided=Technical services provided +#####DAV ##### +WebDAVSetupDesc=This is the link to access the WebDAV directory. It contains a "public" dir open to any user knowing the URL (if public directory access allowed) and a "private" directory that needs an existing login account/password for access. +WebDavServer=Root URL of %s server: %s +##### Webcal setup ##### +WebCalUrlForVCalExport=An export link to %s format is available at following link: %s +##### Invoices ##### +BillsSetup=Invoices module setup +BillsNumberingModule=Invoices and credit notes numbering model +BillsPDFModules=Invoice documents models +BillsPDFModulesAccordindToInvoiceType=Invoice documents models according to invoice type +PaymentsPDFModules=Payment documents models +ForceInvoiceDate=Force invoice date to validation date +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice +SuggestPaymentByRIBOnAccount=Suggest payment by withdrawal on account +SuggestPaymentByChequeToAddress=Suggest payment by check to +FreeLegalTextOnInvoices=Free text on invoices +WatermarkOnDraftInvoices=Watermark on draft invoices (none if empty) +PaymentsNumberingModule=Payments numbering model +SuppliersPayment=Vendor payments +SupplierPaymentSetup=Vendor payments setup +##### Proposals ##### +PropalSetup=Commercial proposals module setup +ProposalsNumberingModules=Commercial proposal numbering models +ProposalsPDFModules=Commercial proposal documents models +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal +FreeLegalTextOnProposal=Free text on commercial proposals +WatermarkOnDraftProposal=Watermark on draft commercial proposals (none if empty) +BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal +##### SupplierProposal ##### +SupplierProposalSetup=Price requests suppliers module setup +SupplierProposalNumberingModules=Price requests suppliers numbering models +SupplierProposalPDFModules=Price requests suppliers documents models +FreeLegalTextOnSupplierProposal=Free text on price requests suppliers +WatermarkOnDraftSupplierProposal=Watermark on draft price requests suppliers (none if empty) +BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_PROPOSAL=Ask for bank account destination of price request +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 ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order +OrdersSetup=Sales Orders management setup +OrdersNumberingModules=Orders numbering models +OrdersModelModule=Order documents models +FreeLegalTextOnOrders=Free text on orders +WatermarkOnDraftOrders=Watermark on draft orders (none if empty) +ShippableOrderIconInList=Add an icon in Orders list which indicate if order is shippable +BANK_ASK_PAYMENT_BANK_DURING_ORDER=Ask for bank account destination of order +##### Interventions ##### +InterventionsSetup=Interventions module setup +FreeLegalTextOnInterventions=Free text on intervention documents +FicheinterNumberingModules=Intervention numbering models +TemplatePDFInterventions=Intervention card documents models +WatermarkOnDraftInterventionCards=Watermark on intervention card documents (none if empty) +##### Contracts ##### +ContractsSetup=Contracts/Subscriptions module setup +ContractsNumberingModules=Contracts numbering modules +TemplatePDFContracts=Contracts documents models +FreeLegalTextOnContracts=Free text on contracts +WatermarkOnDraftContractCards=Watermark on draft contracts (none if empty) +##### Members ##### +MembersSetup=Members module setup +MemberMainOptions=Main options +AdherentLoginRequired= Manage a Login for each member +AdherentMailRequired=Email required to create a new member +MemberSendInformationByMailByDefault=Checkbox to send mail confirmation to members (validation or new subscription) is on by default +VisitorCanChooseItsPaymentMode=Visitor can choose from available payment modes +MEMBER_REMINDER_EMAIL=Enable automatic reminder by email of expired subscriptions. Note: Module %s must be enabled and correctly setup to send reminders. +##### LDAP setup ##### +LDAPSetup=LDAP Setup +LDAPGlobalParameters=Global parameters +LDAPUsersSynchro=Users +LDAPGroupsSynchro=Groups +LDAPContactsSynchro=Contacts +LDAPMembersSynchro=Members +LDAPMembersTypesSynchro=Members types +LDAPSynchronization=LDAP synchronisation +LDAPFunctionsNotAvailableOnPHP=LDAP functions are not available on your PHP +LDAPToDolibarr=LDAP -> Dolibarr +DolibarrToLDAP=Dolibarr -> LDAP +LDAPNamingAttribute=Key in LDAP +LDAPSynchronizeUsers=Organization of users in LDAP +LDAPSynchronizeGroups=Organization of groups in LDAP +LDAPSynchronizeContacts=Organization of contacts in LDAP +LDAPSynchronizeMembers=Organization of foundation's members in LDAP +LDAPSynchronizeMembersTypes=Organization of foundation's members types in LDAP +LDAPPrimaryServer=Primary server +LDAPSecondaryServer=Secondary server +LDAPServerPort=Server port +LDAPServerPortExample=Default port: 389 +LDAPServerProtocolVersion=Protocol version +LDAPServerUseTLS=Use TLS +LDAPServerUseTLSExample=Your LDAP server use TLS +LDAPServerDn=Server DN +LDAPAdminDn=Administrator DN +LDAPAdminDnExample=Complete DN (ex: cn=admin,dc=example,dc=com or cn=Administrator,cn=Users,dc=example,dc=com for active directory) +LDAPPassword=Administrator password +LDAPUserDn=Users' DN +LDAPUserDnExample=Complete DN (ex: ou=users,dc=example,dc=com) +LDAPGroupDn=Groups' DN +LDAPGroupDnExample=Complete DN (ex: ou=groups,dc=example,dc=com) +LDAPServerExample=Server address (ex: localhost, 192.168.0.2, ldaps://ldap.example.com/) +LDAPServerDnExample=Complete DN (ex: dc=example,dc=com) +LDAPDnSynchroActive=Users and groups synchronization +LDAPDnSynchroActiveExample=LDAP to Dolibarr or Dolibarr to LDAP synchronization +LDAPDnContactActive=Contacts' synchronization +LDAPDnContactActiveExample=Activated/Unactivated synchronization +LDAPDnMemberActive=Members' synchronization +LDAPDnMemberActiveExample=Activated/Unactivated synchronization +LDAPDnMemberTypeActive=Members types' synchronization +LDAPDnMemberTypeActiveExample=Activated/Unactivated synchronization +LDAPContactDn=Dolibarr contacts' DN +LDAPContactDnExample=Complete DN (ex: ou=contacts,dc=example,dc=com) +LDAPMemberDn=Dolibarr members DN +LDAPMemberDnExample=Complete DN (ex: ou=members,dc=example,dc=com) +LDAPMemberObjectClassList=List of objectClass +LDAPMemberObjectClassListExample=List of objectClass defining record attributes (ex: top,inetOrgPerson or top,user for active directory) +LDAPMemberTypeDn=Dolibarr members types DN +LDAPMemberTypepDnExample=Complete DN (ex: ou=memberstypes,dc=example,dc=com) +LDAPMemberTypeObjectClassList=List of objectClass +LDAPMemberTypeObjectClassListExample=List of objectClass defining record attributes (ex: top,groupOfUniqueNames) +LDAPUserObjectClassList=List of objectClass +LDAPUserObjectClassListExample=List of objectClass defining record attributes (ex: top,inetOrgPerson or top,user for active directory) +LDAPGroupObjectClassList=List of objectClass +LDAPGroupObjectClassListExample=List of objectClass defining record attributes (ex: top,groupOfUniqueNames) +LDAPContactObjectClassList=List of objectClass +LDAPContactObjectClassListExample=List of objectClass defining record attributes (ex: top,inetOrgPerson or top,user for active directory) +LDAPTestConnect=Test LDAP connection +LDAPTestSynchroContact=Test contacts synchronization +LDAPTestSynchroUser=Test user synchronization +LDAPTestSynchroGroup=Test group synchronization +LDAPTestSynchroMember=Test member synchronization +LDAPTestSynchroMemberType=Test member type synchronization +LDAPTestSearch= Test a LDAP search +LDAPSynchroOK=Synchronization test successful +LDAPSynchroKO=Failed synchronization test +LDAPSynchroKOMayBePermissions=Failed synchronization test. Check that the connection to the server is correctly configured and allows LDAP updates +LDAPTCPConnectOK=TCP connect to LDAP server successful (Server=%s, Port=%s) +LDAPTCPConnectKO=TCP connect to LDAP server failed (Server=%s, Port=%s) +LDAPBindOK=Connect/Authenticate to LDAP server successful (Server=%s, Port=%s, Admin=%s, Password=%s) +LDAPBindKO=Connect/Authenticate to LDAP server failed (Server=%s, Port=%s, Admin=%s, Password=%s) +LDAPSetupForVersion3=LDAP server configured for version 3 +LDAPSetupForVersion2=LDAP server configured for version 2 +LDAPDolibarrMapping=Dolibarr Mapping +LDAPLdapMapping=LDAP Mapping +LDAPFieldLoginUnix=Login (unix) +LDAPFieldLoginExample=Example: uid +LDAPFilterConnection=Search filter +LDAPFilterConnectionExample=Example: &(objectClass=inetOrgPerson) +LDAPFieldLoginSamba=Login (samba, activedirectory) +LDAPFieldLoginSambaExample=Example: samaccountname +LDAPFieldFullname=Full name +LDAPFieldFullnameExample=Example: cn +LDAPFieldPasswordNotCrypted=Password not encrypted +LDAPFieldPasswordCrypted=Password encrypted +LDAPFieldPasswordExample=Example: userPassword +LDAPFieldCommonNameExample=Example: cn +LDAPFieldName=Name +LDAPFieldNameExample=Example: sn +LDAPFieldFirstName=First name +LDAPFieldFirstNameExample=Example: givenName +LDAPFieldMail=Email address +LDAPFieldMailExample=Example: mail +LDAPFieldPhone=Professional phone number +LDAPFieldPhoneExample=Example: telephonenumber +LDAPFieldHomePhone=Personal phone number +LDAPFieldHomePhoneExample=Example: homephone +LDAPFieldMobile=Cellular phone +LDAPFieldMobileExample=Example: mobile +LDAPFieldFax=Fax number +LDAPFieldFaxExample=Example: facsimiletelephonenumber +LDAPFieldAddress=Street +LDAPFieldAddressExample=Example: street +LDAPFieldZip=Zip +LDAPFieldZipExample=Example: postalcode +LDAPFieldTown=Town +LDAPFieldTownExample=Example: l +LDAPFieldCountry=Country +LDAPFieldDescription=Description +LDAPFieldDescriptionExample=Example: description +LDAPFieldNotePublic=Public Note +LDAPFieldNotePublicExample=Example: publicnote +LDAPFieldGroupMembers= Group members +LDAPFieldGroupMembersExample= Example: uniqueMember +LDAPFieldBirthdate=Birthdate +LDAPFieldCompany=Company +LDAPFieldCompanyExample=Example: o +LDAPFieldSid=SID +LDAPFieldSidExample=Example: objectsid +LDAPFieldEndLastSubscription=Date of subscription end +LDAPFieldTitle=Job position +LDAPFieldTitleExample=Example: title +LDAPFieldGroupid=Group id +LDAPFieldGroupidExample=Exemple : gidnumber +LDAPFieldUserid=User id +LDAPFieldUseridExample=Exemple : uidnumber +LDAPFieldHomedirectory=Home directory +LDAPFieldHomedirectoryExample=Exemple : homedirectory +LDAPFieldHomedirectoryprefix=Home directory prefix +LDAPSetupNotComplete=LDAP setup not complete (go on others tabs) +LDAPNoUserOrPasswordProvidedAccessIsReadOnly=No administrator or password provided. LDAP access will be anonymous and in read only mode. +LDAPDescContact=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr contacts. +LDAPDescUsers=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr users. +LDAPDescGroups=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr groups. +LDAPDescMembers=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr members module. +LDAPDescMembersTypes=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr members types. +LDAPDescValues=Example values are designed for OpenLDAP with following loaded schemas: core.schema, cosine.schema, inetorgperson.schema). If you use thoose values and OpenLDAP, modify your LDAP config file slapd.conf to have all thoose schemas loaded. +ForANonAnonymousAccess=For an authenticated access (for a write access for example) +PerfDolibarr=Performance setup/optimizing report +YouMayFindPerfAdviceHere=This page provides some checks or advice related to performance. +NotInstalled=Not installed, so your server is not slowed down by this. +ApplicativeCache=Applicative cache +MemcachedNotAvailable=No applicative cache found. You can enhance performance by installing a cache server Memcached and a module able to use this cache server.
    More information here http://wiki.dolibarr.org/index.php/Module_MemCached_EN.
    Note that a lot of web hosting provider does not provide such cache server. +MemcachedModuleAvailableButNotSetup=Module memcached for applicative cache found but setup of module is not complete. +MemcachedAvailableAndSetup=Module memcached dedicated to use memcached server is enabled. +OPCodeCache=OPCode cache +NoOPCodeCacheFound=No OPCode cache found. Maybe you are using an OPCode cache other than XCache or eAccelerator (good), or maybe you don't have OPCode cache (very bad). +HTTPCacheStaticResources=HTTP cache for static resources (css, img, javascript) +FilesOfTypeCached=Files of type %s are cached by HTTP server +FilesOfTypeNotCached=Files of type %s are not cached by HTTP server +FilesOfTypeCompressed=Files of type %s are compressed by HTTP server +FilesOfTypeNotCompressed=Files of type %s are not compressed by HTTP server +CacheByServer=Cache by server +CacheByServerDesc=For example using the Apache directive "ExpiresByType image/gif A2592000" +CacheByClient=Cache by browser +CompressionOfResources=Compression of HTTP responses +CompressionOfResourcesDesc=For example using the Apache directive "AddOutputFilterByType DEFLATE" +TestNotPossibleWithCurrentBrowsers=Such an automatic detection is not possible with current browsers +DefaultValuesDesc=Here you may define the default value you wish to use when creating a new record, and/or default filters or the sort order when you list records. +DefaultCreateForm=Default values (to use on forms) +DefaultSearchFilters=Default search filters +DefaultSortOrder=Default sort orders +DefaultFocus=Default focus fields +DefaultMandatory=Mandatory form fields +##### Products ##### +ProductSetup=Products module setup +ServiceSetup=Services module setup +ProductServiceSetup=Products and Services modules setup +NumberOfProductShowInSelect=Maximum number of products to show in combo select lists (0=no limit) +ViewProductDescInFormAbility=Display product descriptions in forms (otherwise shown in a tooltip popup) +MergePropalProductCard=Activate in product/service Attached Files tab an option to merge product PDF document to proposal PDF azur if product/service is in the proposal +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=Default barcode type to use for products +SetDefaultBarcodeTypeThirdParties=Default barcode type to use for third parties +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= Product / Service configuration +IsNotADir=is not a directory! +##### Syslog ##### +SyslogSetup=Logs module setup +SyslogOutput=Logs outputs +SyslogFacility=Facility +SyslogLevel=Level +SyslogFilename=File name and path +YouCanUseDOL_DATA_ROOT=You can use DOL_DATA_ROOT/dolibarr.log for a log file in Dolibarr "documents" directory. You can set a different path to store this file. +ErrorUnknownSyslogConstant=Constant %s is not a known Syslog constant +OnlyWindowsLOG_USER=Windows only supports LOG_USER +CompressSyslogs=Compression and backup of debug log files (generated by module Log for debug) +SyslogFileNumberOfSaves=Log backups +ConfigureCleaningCronjobToSetFrequencyOfSaves=Configure cleaning scheduled job to set log backup frequency +##### Donations ##### +DonationsSetup=Donation module setup +DonationsReceiptModel=Template of donation receipt +##### Barcode ##### +BarcodeSetup=Barcode setup +PaperFormatModule=Print format module +BarcodeEncodeModule=Barcode encoding type +CodeBarGenerator=Barcode generator +ChooseABarCode=No generator defined +FormatNotSupportedByGenerator=Format not supported by this generator +BarcodeDescEAN8=Barcode of type EAN8 +BarcodeDescEAN13=Barcode of type EAN13 +BarcodeDescUPC=Barcode of type UPC +BarcodeDescISBN=Barcode of type ISBN +BarcodeDescC39=Barcode of type C39 +BarcodeDescC128=Barcode of type C128 +BarcodeDescDATAMATRIX=Barcode of type Datamatrix +BarcodeDescQRCODE=Barcode of type QR code +GenbarcodeLocation=Bar code generation command line tool (used by internal engine for some bar code types). Must be compatible with "genbarcode".
    For example: /usr/local/bin/genbarcode +BarcodeInternalEngine=Internal engine +BarCodeNumberManager=Manager to auto define barcode numbers +##### Prelevements ##### +WithdrawalsSetup=Setup of module Direct Debit payments +##### ExternalRSS ##### +ExternalRSSSetup=External RSS imports setup +NewRSS=New RSS Feed +RSSUrl=RSS URL +RSSUrlExample=An interesting RSS feed +##### Mailing ##### +MailingSetup=EMailing module setup +MailingEMailFrom=Sender email (From) for emails sent by emailing module +MailingEMailError=Return Email (Errors-to) for emails with errors +MailingDelay=Seconds to wait after sending next message +##### Notification ##### +NotificationSetup=Email Notification module setup +NotificationEMailFrom=Sender email (From) for emails sent by the Notifications module +FixedEmailTarget=Recipient +##### Sendings ##### +SendingsSetup=Shipping module setup +SendingsReceiptModel=Sending receipt model +SendingsNumberingModules=Sendings numbering modules +SendingsAbility=Support shipping sheets for customer deliveries +NoNeedForDeliveryReceipts=In most cases, shipping sheets are used both as sheets for customer deliveries (list of products to send) and sheets that are received and signed by customer. Hence the product deliveries receipt is a duplicated feature and is rarely activated. +FreeLegalTextOnShippings=Free text on shipments +##### Deliveries ##### +DeliveryOrderNumberingModules=Products deliveries receipt numbering module +DeliveryOrderModel=Products deliveries receipt model +DeliveriesOrderAbility=Support products deliveries receipts +FreeLegalTextOnDeliveryReceipts=Free text on delivery receipts +##### FCKeditor ##### +AdvancedEditor=Advanced editor +ActivateFCKeditor=Activate advanced editor for: +FCKeditorForCompany=WYSIWIG creation/edition of elements description and note (except products/services) +FCKeditorForProduct=WYSIWIG creation/edition of products/services description and note +FCKeditorForProductDetails=WYSIWIG creation/edition of products details lines for all entities (proposals, orders, invoices, etc...). Warning: Using this option for this case is seriously not recommended as it can create problems with special characters and page formatting when building PDF files. +FCKeditorForMailing= WYSIWIG creation/edition for mass eMailings (Tools->eMailing) +FCKeditorForUserSignature=WYSIWIG creation/edition of user signature +FCKeditorForMail=WYSIWIG creation/edition for all mail (except Tools->eMailing) +FCKeditorForTicket=WYSIWIG creation/edition for tickets +##### Stock ##### +StockSetup=Stock module setup +IfYouUsePointOfSaleCheckModule=If you use the Point of Sale module (POS) provided by default or an external module, this setup may be ignored by your POS module. Most POS modules are designed by default to create an invoice immediately and decrease stock irrespective of the options here. So if you need or not to have a stock decrease when registering a sale from your POS, check also your POS module setup. +##### Menu ##### +MenuDeleted=Menu deleted +Menus=Menus +TreeMenuPersonalized=Personalized menus +NotTopTreeMenuPersonalized=Personalized menus not linked to a top menu entry +NewMenu=New menu +Menu=Selection of menu +MenuHandler=Menu handler +MenuModule=Source module +HideUnauthorizedMenu= Hide unauthorized menus (gray) +DetailId=Id menu +DetailMenuHandler=Menu handler where to show new menu +DetailMenuModule=Module name if menu entry come from a module +DetailType=Type of menu (top or left) +DetailTitre=Menu label or label code for translation +DetailUrl=URL where menu send you (Absolute URL link or external link with http://) +DetailEnabled=Condition to show or not entry +DetailRight=Condition to display unauthorized grey menus +DetailLangs=Lang file name for label code translation +DetailUser=Intern / Extern / All +Target=Target +DetailTarget=Target for links (_blank top opens a new window) +DetailLevel=Level (-1:top menu, 0:header menu, >0 menu and sub menu) +ModifMenu=Menu change +DeleteMenu=Delete menu entry +ConfirmDeleteMenu=Are you sure you want to delete menu entry %s? +FailedToInitializeMenu=Failed to initialize menu +##### Tax ##### +TaxSetup=Taxes, social or fiscal taxes and dividends module setup +OptionVatMode=VAT due +OptionVATDefault=Standard basis +OptionVATDebitOption=Accrual basis +OptionVatDefaultDesc=VAT is due:
    - on delivery of goods (based on invoice date)
    - on payments for services +OptionVatDebitOptionDesc=VAT is due:
    - on delivery of goods (based on invoice date)
    - on invoice (debit) for services +OptionPaymentForProductAndServices=Cash basis for products and services +OptionPaymentForProductAndServicesDesc=VAT is due:
    - on payment for goods
    - on payments for services +SummaryOfVatExigibilityUsedByDefault=Time of VAT eligibility by default according to chosen option: +OnDelivery=On delivery +OnPayment=On payment +OnInvoice=On invoice +SupposedToBePaymentDate=Payment date used +SupposedToBeInvoiceDate=Invoice date used +Buy=Buy +Sell=Sell +InvoiceDateUsed=Invoice date used +YourCompanyDoesNotUseVAT=Your company has been defined to not use VAT (Home - Setup - Company/Organization), so there is no VAT options to setup. +AccountancyCode=Accounting Code +AccountancyCodeSell=Sale account. code +AccountancyCodeBuy=Purchase account. code +##### Agenda ##### +AgendaSetup=Events and agenda module setup +PasswordTogetVCalExport=Key to authorize export link +PastDelayVCalExport=Do not export event older than +AGENDA_USE_EVENT_TYPE=Use events types (managed in menu Setup -> Dictionaries -> Type of agenda events) +AGENDA_USE_EVENT_TYPE_DEFAULT=Automatically set this default value for type of event in event create form +AGENDA_DEFAULT_FILTER_TYPE=Automatically set this type of event in search filter of agenda view +AGENDA_DEFAULT_FILTER_STATUS=Automatically set this status for events in search filter of agenda view +AGENDA_DEFAULT_VIEW=Which tab do you want to open by default when selecting menu Agenda +AGENDA_REMINDER_EMAIL=Enable event reminder by emails (remind option/delay can be defined on each event). Note: Module %s must be enabled and correctly setup to have reminder sent at the correct frequency. +AGENDA_REMINDER_BROWSER=Enable event reminder on user's browser (when event date is reached, each user is able to refuse this from the browser confirmation question) +AGENDA_REMINDER_BROWSER_SOUND=Enable sound notification +AGENDA_SHOW_LINKED_OBJECT=Show linked object into agenda view +##### Clicktodial ##### +ClickToDialSetup=Click To Dial module setup +ClickToDialUrlDesc=Url called when a click on phone picto is done. In URL, you can use tags
    __PHONETO__ that will be replaced with the phone number of person to call
    __PHONEFROM__ that will be replaced with phone number of calling person (yours)
    __LOGIN__ that will be replaced with clicktodial login (defined on user card)
    __PASS__ that will be replaced with clicktodial password (defined on user card). +ClickToDialDesc=This module makea phone numbers clickable links. A click on the icon will make your phone call the number. This can be used to call a call-center system from Dolibarr that can call the phone number on a SIP system for example. +ClickToDialUseTelLink=Use just a link "tel:" on phone numbers +ClickToDialUseTelLinkDesc=Use this method if your users have a softphone or a software interface installed on the same computer as the browser, and called when you click on a link in your browser that starts with "tel:". If you need a full server solution (no need of local software installation), you must set this to "No" and fill next field. +##### Point Of Sale (CashDesk) ##### +CashDesk=Point of Sale +CashDeskSetup=Point of Sales module setup +CashDeskThirdPartyForSell=Default generic third party to use for sales +CashDeskBankAccountForSell=Default account to use to receive cash payments +CashDeskBankAccountForCheque=Default account to use to receive payments by check +CashDeskBankAccountForCB=Default account to use to receive payments by credit cards +CashDeskBankAccountForSumup=Default bank account to use to receive payments by SumUp +CashDeskDoNotDecreaseStock=Disable stock decrease when a sale is done from Point of Sale (if "no", stock decrease is done for each sale done from POS, irrespective of the option set in module Stock). +CashDeskIdWareHouse=Force and restrict warehouse to use for stock decrease +StockDecreaseForPointOfSaleDisabled=Stock decrease from Point of Sale disabled +StockDecreaseForPointOfSaleDisabledbyBatch=Stock decrease in POS is not compatible with module Serial/Lot management (currently active) so stock decrease is disabled. +CashDeskYouDidNotDisableStockDecease=You did not disable stock decrease when making a sale from Point of Sale. Hence a warehouse is required. +CashDeskForceDecreaseStockLabel=Stock decrease for batch products was forced. +CashDeskForceDecreaseStockDesc=Decrease first by the oldest eatby and sellby dates. +CashDeskReaderKeyCodeForEnter=Key code for "Enter" defined in barcode reader (Example: 13) +##### Bookmark ##### +BookmarkSetup=Bookmark module setup +BookmarkDesc=This module allows you to manage bookmarks. You can also add shortcuts to any Dolibarr pages or external web sites on your left menu. +NbOfBoomarkToShow=Maximum number of bookmarks to show in left menu +##### WebServices ##### +WebServicesSetup=Webservices module setup +WebServicesDesc=By enabling this module, Dolibarr become a web service server to provide miscellaneous web services. +WSDLCanBeDownloadedHere=WSDL descriptor files of provided services can be download here +EndPointIs=SOAP clients must send their requests to the Dolibarr endpoint available at URL +##### API #### +ApiSetup=API module setup +ApiDesc=By enabling this module, Dolibarr become a REST server to provide miscellaneous web services. +ApiProductionMode=Enable production mode (this will activate use of a cache for services management) +ApiExporerIs=You can explore and test the APIs at URL +OnlyActiveElementsAreExposed=Only elements from enabled modules are exposed +ApiKey=Key for API +WarningAPIExplorerDisabled=The API explorer has been disabled. API explorer is not required to provide API services. It is a tool for developer to find/test REST APIs. If you need this tool, go into setup of module API REST to activate it. +##### Bank ##### +BankSetupModule=Bank module setup +FreeLegalTextOnChequeReceipts=Free text on check receipts +BankOrderShow=Display order of bank accounts for countries using "detailed bank number" +BankOrderGlobal=General +BankOrderGlobalDesc=General display order +BankOrderES=Spanish +BankOrderESDesc=Spanish display order +ChequeReceiptsNumberingModule=Check Receipts Numbering Module +##### Multicompany ##### +MultiCompanySetup=Multi-company module setup +##### Suppliers ##### +SuppliersSetup=Vendor module setup +SuppliersCommandModel=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) +SuppliersInvoiceModel=Complete template of Vendor Invoice +SuppliersInvoiceNumberingModel=Vendor invoices numbering models +IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval +##### GeoIPMaxmind ##### +GeoIPMaxmindSetup=GeoIP Maxmind module setup +PathToGeoIPMaxmindCountryDataFile=Path to file containing Maxmind ip to country translation.
    Examples:
    /usr/local/share/GeoIP/GeoIP.dat
    /usr/share/GeoIP/GeoIP.dat
    /usr/share/GeoIP/GeoLite2-Country.mmdb +NoteOnPathLocation=Note that your ip to country data file must be inside a directory your PHP can read (Check your PHP open_basedir setup and filesystem permissions). +YouCanDownloadFreeDatFileTo=You can download a free demo version of the Maxmind GeoIP country file at %s. +YouCanDownloadAdvancedDatFileTo=You can also download a more complete version, with updates, of the Maxmind GeoIP country file at %s. +TestGeoIPResult=Test of a conversion IP -> country +##### Projects ##### +ProjectsNumberingModules=Projects numbering module +ProjectsSetup=Project module setup +ProjectsModelModule=Project reports document model +TasksNumberingModules=Tasks numbering module +TaskModelModule=Tasks reports document model +UseSearchToSelectProject=Wait until a key is pressed before loading content of Project combo list.
    This may improve performance if you have a large number of projects, but it is less convenient. +##### ECM (GED) ##### +##### Fiscal Year ##### +AccountingPeriods=Accounting periods +AccountingPeriodCard=Accounting period +NewFiscalYear=New accounting period +OpenFiscalYear=Open accounting period +CloseFiscalYear=Close accounting period +DeleteFiscalYear=Delete accounting period +ConfirmDeleteFiscalYear=Are you sure to delete this accounting period? +ShowFiscalYear=Show accounting period +AlwaysEditable=Can always be edited +MAIN_APPLICATION_TITLE=Force visible name of application (warning: setting your own name here may break autofill login feature when using DoliDroid mobile application) +NbMajMin=Minimum number of uppercase characters +NbNumMin=Minimum number of numeric characters +NbSpeMin=Minimum number of special characters +NbIteConsecutive=Maximum number of repeating same characters +NoAmbiCaracAutoGeneration=Do not use ambiguous characters ("1","l","i","|","0","O") for automatic generation +SalariesSetup=Setup of module salaries +SortOrder=Sort order +Format=Format +TypePaymentDesc=0:Customer payment type, 1:Vendor payment type, 2:Both customers and suppliers payment type +IncludePath=Include path (defined into variable %s) +ExpenseReportsSetup=Setup of module Expense Reports +TemplatePDFExpenseReports=Document templates to generate expense report document +ExpenseReportsIkSetup=Setup of module Expense Reports - Milles index +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 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 to the tab "Notifications" of a third party to add or remove notifications for contacts/addresses +Threshold=Threshold +BackupDumpWizard=Wizard to build the database dump file +BackupZipWizard=Wizard to build the archive of documents directory +SomethingMakeInstallFromWebNotPossible=Installation of external module is not possible from the web interface for the following reason: +SomethingMakeInstallFromWebNotPossible2=For this reason, process to upgrade described here is a manual process only a privileged user may perform. +InstallModuleFromWebHasBeenDisabledByFile=Install of external module from application has been disabled by your administrator. You must ask him to remove the file %s to allow this feature. +ConfFileMustContainCustom=Installing or building an external module from application need to save the module files into directory %s. To have this directory processed by Dolibarr, you must setup your conf/conf.php to add the 2 directive lines:
    $dolibarr_main_url_root_alt='/custom';
    $dolibarr_main_document_root_alt='%s/custom'; +HighlightLinesOnMouseHover=Highlight table lines when mouse move passes over +HighlightLinesColor=Highlight color of the line when the mouse passes over (use 'ffffff' for no highlight) +HighlightLinesChecked=Highlight color of the line when it is checked (use 'ffffff' for no highlight) +TextTitleColor=Text color of Page title +LinkColor=Color of links +PressF5AfterChangingThis=Press CTRL+F5 on keyboard or clear your browser cache after changing this value to have it effective +NotSupportedByAllThemes=Will works with core themes, may not be supported by external themes +BackgroundColor=Background color +TopMenuBackgroundColor=Background color for Top menu +TopMenuDisableImages=Hide images in Top menu +LeftMenuBackgroundColor=Background color for Left menu +BackgroundTableTitleColor=Background color for Table title line +BackgroundTableTitleTextColor=Text color for Table title line +BackgroundTableTitleTextlinkColor=Text color for Table title link line +BackgroundTableLineOddColor=Background color for odd table lines +BackgroundTableLineEvenColor=Background color for even table lines +MinimumNoticePeriod=Minimum notice period (Your leave request must be done before this delay) +NbAddedAutomatically=Number of days added to counters of users (automatically) each month +EnterAnyCode=This field contains a reference to identify line. Enter any value of your choice, but without special characters. +Enter0or1=Enter 0 or 1 +UnicodeCurrency=Enter here between braces, list of byte number that represent the currency symbol. For example: for $, enter [36] - for brazil real R$ [82,36] - for €, enter [8364] +ColorFormat=The RGB color is in HEX format, eg: FF0000 +PositionIntoComboList=Position of line into combo lists +SellTaxRate=Sale tax rate +RecuperableOnly=Yes for VAT "Not Perceived but Recoverable" dedicated for some state in France. Keep value to "No" in all other cases. +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=Type of template +TemplateIsVisibleByOwnerOnly=Template is visible to owner only +VisibleEverywhere=Visible everywhere +VisibleNowhere=Visible nowhere +FixTZ=TimeZone fix +FillFixTZOnlyIfRequired=Example: +2 (fill only if problem experienced) +ExpectedChecksum=Expected Checksum +CurrentChecksum=Current Checksum +ExpectedSize=Expected size +CurrentSize=Current size +ForcedConstants=Required constant values +MailToSendProposal=Customer proposals +MailToSendOrder=Sales orders +MailToSendInvoice=Customer invoices +MailToSendShipment=Shipments +MailToSendIntervention=Interventions +MailToSendSupplierRequestForQuotation=Quotation request +MailToSendSupplierOrder=Purchase orders +MailToSendSupplierInvoice=Vendor invoices +MailToSendContract=Contracts +MailToThirdparty=Third parties +MailToMember=Members +MailToUser=Users +MailToProject=Projects page +ByDefaultInList=Show by default on list view +YouUseLastStableVersion=You use the latest stable version +TitleExampleForMajorRelease=Example of message you can use to announce this major release (feel free to use it on your web sites) +TitleExampleForMaintenanceRelease=Example of message you can use to announce this maintenance release (feel free to use it on your web sites) +ExampleOfNewsMessageForMajorRelease=Dolibarr ERP & CRM %s is available. Version %s is a major release with a lot of new features for both users and developers. You can download it from the download area of https://www.dolibarr.org portal (subdirectory Stable versions). You can read ChangeLog for complete list of changes. +ExampleOfNewsMessageForMaintenanceRelease=Dolibarr ERP & CRM %s is available. Version %s is a maintenance version, so contains only bug fixes. We recommend all users to upgrade to this version. A maintenance release does not introduce new features or changes to the database. You may download it from the download area of https://www.dolibarr.org portal (subdirectory Stable versions). You can read the ChangeLog for complete list of changes. +MultiPriceRuleDesc=When option "Several levels of prices per product/service" is enabled, you can define different prices (one per price level) for each product. To save you time, here you may enter a rule to autocalculate a price for each level based on the price of the first level, so you will have to only enter a price for the first level for each product. This page is designed to save you time but is useful only if your prices for each level are relative to first level. You can ignore this page in most cases. +ModelModulesProduct=Templates for product documents +ToGenerateCodeDefineAutomaticRuleFirst=To be able to generate codes automatically, you must first define a manager to auto-define the barcode number. +SeeSubstitutionVars=See * note for list of possible substitution variables +SeeChangeLog=See ChangeLog file (english only) +AllPublishers=All publishers +UnknownPublishers=Unknown publishers +AddRemoveTabs=Add or remove tabs +AddDataTables=Add object tables +AddDictionaries=Add dictionaries tables +AddData=Add objects or dictionaries data +AddBoxes=Add widgets +AddSheduledJobs=Add scheduled jobs +AddHooks=Add hooks +AddTriggers=Add triggers +AddMenus=Add menus +AddPermissions=Add permissions +AddExportProfiles=Add export profiles +AddImportProfiles=Add import profiles +AddOtherPagesOrServices=Add other pages or services +AddModels=Add document or numbering templates +AddSubstitutions=Add keys substitutions +DetectionNotPossible=Detection not possible +UrlToGetKeyToUseAPIs=Url to get token to use API (once token has been received it is saved in database user table and must be provided on each API call) +ListOfAvailableAPIs=List of available APIs +activateModuleDependNotSatisfied=Module "%s" depends on module "%s", that is missing, so module "%1$s" may not work correctly. Please install module "%2$s" or disable module "%1$s" if you want to be safe from any surprise +CommandIsNotInsideAllowedCommands=The command you are trying to run is not in the list of allowed commands defined in parameter $dolibarr_main_restrict_os_commands in the conf.php file. +LandingPage=Landing page +SamePriceAlsoForSharedCompanies=If you use a multicompany module, with the choice "Single price", the price will also be the same for all companies if products are shared between environments +ModuleEnabledAdminMustCheckRights=Module has been activated. Permissions for activated module(s) were given to admin users only. You may need to grant permissions to other users or groups manually if necessary. +UserHasNoPermissions=This user has no permissions defined +TypeCdr=Use "None" if the date of payment term is date of invoice plus a delta in days (delta is field "%s")
    Use "At end of month", if, after delta, the date must be increased to reach the end of month (+ an optional "%s" in days)
    Use "Current/Next" to have payment term date being the first Nth of the month after delta (delta is field "%s", N is stored into field "%s") +BaseCurrency=Reference currency of the company (go into setup of company to change this) +WarningNoteModuleInvoiceForFrenchLaw=This module %s is compliant with French laws (Loi Finance 2016). +WarningNoteModulePOSForFrenchLaw=This module %s is compliant with French laws (Loi Finance 2016) because module Non Reversible Logs is automatically activated. +WarningInstallationMayBecomeNotCompliantWithLaw=You are trying to install module %s that is an external module. Activating an external module means you trust the publisher of that module and that you are sure that this module does not adversely impact the behavior of your application, and is compliant with laws of your country (%s). If the module introduces an illegal feature, you become responsible for the use of illegal software. +MAIN_PDF_MARGIN_LEFT=Left margin on PDF +MAIN_PDF_MARGIN_RIGHT=Right margin on PDF +MAIN_PDF_MARGIN_TOP=Top margin on PDF +MAIN_PDF_MARGIN_BOTTOM=Bottom margin on PDF +NothingToSetup=There is no specific setup required for this module. +SetToYesIfGroupIsComputationOfOtherGroups=Set this to yes if this group is a computation of other groups +EnterCalculationRuleIfPreviousFieldIsYes=Enter calculation rule if previous field was set to Yes (For example 'CODEGRP1+CODEGRP2') +SeveralLangugeVariatFound=Several language variants found +RemoveSpecialChars=Remove special characters +COMPANY_AQUARIUM_CLEAN_REGEX=Regex filter to clean value (COMPANY_AQUARIUM_CLEAN_REGEX) +COMPANY_DIGITARIA_CLEAN_REGEX=Regex filter to clean value (COMPANY_DIGITARIA_CLEAN_REGEX) +COMPANY_DIGITARIA_UNIQUE_CODE=Duplicate not allowed +GDPRContact=Data Protection Officer (DPO, Data Privacy or GDPR contact) +GDPRContactDesc=If you store data about European companies/citizens, you can name the contact who is responsible for the General Data Protection Regulation here +HelpOnTooltip=Help text to show on tooltip +HelpOnTooltipDesc=Put text or a translation key here for the text to show in a tooltip when this field appears in a form +YouCanDeleteFileOnServerWith=You can delete this file on the server with Command Line:
    %s +ChartLoaded=Chart of account loaded +SocialNetworkSetup=Setup of module Social Networks +EnableFeatureFor=Enable features for %s +VATIsUsedIsOff=Note: The option to use Sales Tax or VAT has been set to Off in the menu %s - %s, so Sales tax or Vat used will always be 0 for sales. +SwapSenderAndRecipientOnPDF=Swap sender and recipient address position on PDF documents +FeatureSupportedOnTextFieldsOnly=Warning, feature supported on text fields only. Also an URL parameter action=create or action=edit must be set OR page name must end with 'new.php' to trigger this feature. +EmailCollector=Email collector +EmailCollectorDescription=Add a scheduled job and a setup page to scan regularly email boxes (using IMAP protocol) and record emails received into your application, at the right place and/or create some records automatically (like leads). +NewEmailCollector=New Email Collector +EMailHost=Host of email IMAP server +MailboxSourceDirectory=Mailbox source directory +MailboxTargetDirectory=Mailbox target directory +EmailcollectorOperations=Operations to do by collector +MaxEmailCollectPerCollect=Max number of emails collected per collect +CollectNow=Collect now +ConfirmCloneEmailCollector=Are you sure you want to clone the Email collector %s ? +DateLastCollectResult=Date latest collect tried +DateLastcollectResultOk=Date latest collect successfull +LastResult=Latest result +EmailCollectorConfirmCollectTitle=Email collect confirmation +EmailCollectorConfirmCollect=Do you want to run the collection for this collector now ? +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) +CodeLastResult=Latest result code +NbOfEmailsInInbox=Number of emails in source directory +LoadThirdPartyFromName=Load third party searching on %s (load only) +LoadThirdPartyFromNameOrCreate=Load third party searching on %s (create if not found) +WithDolTrackingID=Dolibarr Reference found in Message ID +WithoutDolTrackingID=Dolibarr Reference not found in Message ID +FormatZip=Zip +MainMenuCode=Menu entry code (mainmenu) +ECMAutoTree=Show automatic ECM tree +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. +OpeningHours=Opening hours +OpeningHoursDesc=Enter here the regular opening hours of your company. +ResourceSetup=Configuration of Resource module +UseSearchToSelectResource=Use a search form to choose a resource (rather than a drop-down list). +DisabledResourceLinkUser=Disable feature to link a resource to users +DisabledResourceLinkContact=Disable feature to link a resource to contacts +EnableResourceUsedInEventCheck=Enable feature to check if a resource is in use in an event +ConfirmUnactivation=Confirm module reset +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. +RootCategoryForProductsToSell=Root category of products to sell +RootCategoryForProductsToSellDesc=If defined, only products inside this category or childs of this category will be available in the Point Of Sale +DebugBar=Debug Bar +DebugBarDesc=Toolbar that comes with a plenty of tools to simplify debugging +DebugBarSetup=DebugBar Setup +GeneralOptions=General Options +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 +ModuleActivated=Module %s is activated and slows the interface +EXPORTS_SHARE_MODELS=Export models are share with everybody +ExportSetup=Setup of module Export +ImportSetup=Setup of module Import +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/. +EmailCollectorTargetDir=It may be a desired behaviour to move the email into another tag/directory when it was processed successfully. Just set a value here to use this feature. Note that you must also use a read/write login account. +EmailCollectorLoadThirdPartyHelp=You can use this action to use the email content to find and load an existing thirdparty in your database. The found (or created) thirdparty will be used for following actions that need it. In the parameter field you can use for example 'EXTRACT:BODY:Name:\\s([^\\s]*)' if you want to extract the name of the thirdparty from a string 'Name: name to find' found into the body. +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 +RESTRICT_ON_IP=Allow access to some host IP only (wildcard not allowed, use space between values). Empty means every hosts can access. +IPListExample=127.0.0.1 192.168.0.2 [::1] +BaseOnSabeDavVersion=Based on the library SabreDAV version +NotAPublicIp=Not a public IP +MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server (done 1 time only after installation) to allow the foundation to count the number of Dolibarr installation. +FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled +EmailTemplate=Template for email +EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/ne_NP/agenda.lang b/htdocs/langs/ne_NP/agenda.lang new file mode 100644 index 00000000000..2031241d2c9 --- /dev/null +++ b/htdocs/langs/ne_NP/agenda.lang @@ -0,0 +1,154 @@ +# Dolibarr language file - Source file is en_US - agenda +IdAgenda=ID event +Actions=Events +Agenda=Agenda +TMenuAgenda=Agenda +Agendas=Agendas +LocalAgenda=Internal calendar +ActionsOwnedBy=Event owned by +ActionsOwnedByShort=Owner +AffectedTo=Assigned to +Event=Event +Events=Events +EventsNb=Number of events +ListOfActions=List of events +EventReports=Event reports +Location=Location +ToUserOfGroup=To any user in group +EventOnFullDay=Event on all day(s) +MenuToDoActions=All incomplete events +MenuDoneActions=All terminated events +MenuToDoMyActions=My incomplete events +MenuDoneMyActions=My terminated events +ListOfEvents=List of events (internal calendar) +ActionsAskedBy=Events reported by +ActionsToDoBy=Events assigned to +ActionsDoneBy=Events done by +ActionAssignedTo=Event assigned to +ViewCal=Month view +ViewDay=Day view +ViewWeek=Week view +ViewPerUser=Per user view +ViewPerType=Per type view +AutoActions= Automatic filling +AgendaAutoActionDesc= Here you may define events which you want Dolibarr to create automatically in Agenda. If nothing is checked, only manual actions will be included in logs and displayed in Agenda. Automatic tracking of business actions done on objects (validation, status change) will not be saved. +AgendaSetupOtherDesc= This page provides options to allow the export of your Dolibarr events into an external calendar (Thunderbird, Google Calendar etc...) +AgendaExtSitesDesc=This page allows to declare external sources of calendars to see their events into Dolibarr agenda. +ActionsEvents=Events for which Dolibarr will create an action in agenda automatically +EventRemindersByEmailNotEnabled=Event reminders by email was not enabled into %s module setup. +##### Agenda event labels ##### +NewCompanyToDolibarr=Third party %s created +COMPANY_DELETEInDolibarr=Third party %s deleted +ContractValidatedInDolibarr=Contract %s validated +CONTRACT_DELETEInDolibarr=Contract %s deleted +PropalClosedSignedInDolibarr=Proposal %s signed +PropalClosedRefusedInDolibarr=Proposal %s refused +PropalValidatedInDolibarr=Proposal %s validated +PropalClassifiedBilledInDolibarr=Proposal %s classified billed +InvoiceValidatedInDolibarr=Invoice %s validated +InvoiceValidatedInDolibarrFromPos=Invoice %s validated from POS +InvoiceBackToDraftInDolibarr=Invoice %s go back to draft status +InvoiceDeleteDolibarr=Invoice %s deleted +InvoicePaidInDolibarr=Invoice %s changed to paid +InvoiceCanceledInDolibarr=Invoice %s canceled +MemberValidatedInDolibarr=Member %s validated +MemberModifiedInDolibarr=Member %s modified +MemberResiliatedInDolibarr=Member %s terminated +MemberDeletedInDolibarr=Member %s deleted +MemberSubscriptionAddedInDolibarr=Subscription %s for member %s added +MemberSubscriptionModifiedInDolibarr=Subscription %s for member %s modified +MemberSubscriptionDeletedInDolibarr=Subscription %s for member %s deleted +ShipmentValidatedInDolibarr=Shipment %s validated +ShipmentClassifyClosedInDolibarr=Shipment %s classified billed +ShipmentUnClassifyCloseddInDolibarr=Shipment %s classified re-open +ShipmentBackToDraftInDolibarr=Shipment %s go back to draft status +ShipmentDeletedInDolibarr=Shipment %s deleted +OrderCreatedInDolibarr=Order %s created +OrderValidatedInDolibarr=Order %s validated +OrderDeliveredInDolibarr=Order %s classified delivered +OrderCanceledInDolibarr=Order %s canceled +OrderBilledInDolibarr=Order %s classified billed +OrderApprovedInDolibarr=Order %s approved +OrderRefusedInDolibarr=Order %s refused +OrderBackToDraftInDolibarr=Order %s go back to draft status +ProposalSentByEMail=Commercial proposal %s sent by email +ContractSentByEMail=Contract %s sent by email +OrderSentByEMail=Sales order %s sent by email +InvoiceSentByEMail=Customer invoice %s sent by email +SupplierOrderSentByEMail=Purchase order %s sent by email +ORDER_SUPPLIER_DELETEInDolibarr=Purchase order %s deleted +SupplierInvoiceSentByEMail=Vendor invoice %s sent by email +ShippingSentByEMail=Shipment %s sent by email +ShippingValidated= Shipment %s validated +InterventionSentByEMail=Intervention %s sent by email +ProposalDeleted=Proposal deleted +OrderDeleted=Order deleted +InvoiceDeleted=Invoice deleted +DraftInvoiceDeleted=Draft invoice deleted +PRODUCT_CREATEInDolibarr=Product %s created +PRODUCT_MODIFYInDolibarr=Product %s modified +PRODUCT_DELETEInDolibarr=Product %s deleted +HOLIDAY_CREATEInDolibarr=Request for leave %s created +HOLIDAY_MODIFYInDolibarr=Request for leave %s modified +HOLIDAY_APPROVEInDolibarr=Request for leave %s approved +HOLIDAY_VALIDATEInDolibarr=Request for leave %s validated +HOLIDAY_DELETEInDolibarr=Request for leave %s deleted +EXPENSE_REPORT_CREATEInDolibarr=Expense report %s created +EXPENSE_REPORT_VALIDATEInDolibarr=Expense report %s validated +EXPENSE_REPORT_APPROVEInDolibarr=Expense report %s approved +EXPENSE_REPORT_DELETEInDolibarr=Expense report %s deleted +EXPENSE_REPORT_REFUSEDInDolibarr=Expense report %s refused +PROJECT_CREATEInDolibarr=Project %s created +PROJECT_MODIFYInDolibarr=Project %s modified +PROJECT_DELETEInDolibarr=Project %s deleted +TICKET_CREATEInDolibarr=Ticket %s created +TICKET_MODIFYInDolibarr=Ticket %s modified +TICKET_ASSIGNEDInDolibarr=Ticket %s assigned +TICKET_CLOSEInDolibarr=Ticket %s closed +TICKET_DELETEInDolibarr=Ticket %s deleted +BOM_VALIDATEInDolibarr=BOM validated +BOM_UNVALIDATEInDolibarr=BOM unvalidated +BOM_CLOSEInDolibarr=BOM disabled +BOM_REOPENInDolibarr=BOM reopen +BOM_DELETEInDolibarr=BOM deleted +MRP_MO_VALIDATEInDolibarr=MO validated +MRP_MO_PRODUCEDInDolibarr=MO produced +MRP_MO_DELETEInDolibarr=MO deleted +##### End agenda events ##### +AgendaModelModule=Document templates for event +DateActionStart=Start date +DateActionEnd=End date +AgendaUrlOptions1=You can also add following parameters to filter output: +AgendaUrlOptions3=logina=%s to restrict output to actions owned by a user %s. +AgendaUrlOptionsNotAdmin=logina=!%s to restrict output to actions not owned by user %s. +AgendaUrlOptions4=logint=%s to restrict output to actions assigned to user %s (owner and others). +AgendaUrlOptionsProject=project=__PROJECT_ID__ to restrict output to actions linked to project __PROJECT_ID__. +AgendaUrlOptionsNotAutoEvent=notactiontype=systemauto to exclude automatic events. +AgendaUrlOptionsIncludeHolidays=includeholidays=1 to include events of holidays. +AgendaShowBirthdayEvents=Show birthdays of contacts +AgendaHideBirthdayEvents=Hide birthdays of contacts +Busy=Busy +ExportDataset_event1=List of agenda events +DefaultWorkingDays=Default working days range in week (Example: 1-5, 1-6) +DefaultWorkingHours=Default working hours in day (Example: 9-18) +# External Sites ical +ExportCal=Export calendar +ExtSites=Import external calendars +ExtSitesEnableThisTool=Show external calendars (defined in global setup) in Agenda. Does not affect external calendars defined by users. +ExtSitesNbOfAgenda=Number of calendars +AgendaExtNb=Calendar no. %s +ExtSiteUrlAgenda=URL to access .ical file +ExtSiteNoLabel=No Description +VisibleTimeRange=Visible time range +VisibleDaysRange=Visible days range +AddEvent=Create event +MyAvailability=My availability +ActionType=Event type +DateActionBegin=Start event date +ConfirmCloneEvent=Are you sure you want to clone the event %s? +RepeatEvent=Repeat event +EveryWeek=Every week +EveryMonth=Every month +DayOfMonth=Day of month +DayOfWeek=Day of week +DateStartPlusOne=Date start + 1 hour diff --git a/htdocs/langs/ne_NP/assets.lang b/htdocs/langs/ne_NP/assets.lang new file mode 100644 index 00000000000..ef04723c6c2 --- /dev/null +++ b/htdocs/langs/ne_NP/assets.lang @@ -0,0 +1,65 @@ +# Copyright (C) 2018 Alexandre Spangaro +# +# 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 . + +# +# Generic +# +Assets = Assets +NewAsset = New asset +AccountancyCodeAsset = Accounting code (asset) +AccountancyCodeDepreciationAsset = Accounting code (depreciation asset account) +AccountancyCodeDepreciationExpense = Accounting code (depreciation expense account) +NewAssetType=New asset type +AssetsTypeSetup=Asset type setup +AssetTypeModified=Asset type modified +AssetType=Asset type +AssetsLines=Assets +DeleteType=Delete +DeleteAnAssetType=Delete an asset type +ConfirmDeleteAssetType=Are you sure you want to delete this asset type? +ShowTypeCard=Show type '%s' + +# Module label 'ModuleAssetsName' +ModuleAssetsName = Assets +# Module description 'ModuleAssetsDesc' +ModuleAssetsDesc = Assets description + +# +# Admin page +# +AssetsSetup = Assets setup +Settings = Settings +AssetsSetupPage = Assets setup page +ExtraFieldsAssetsType = Complementary attributes (Asset type) +AssetsType=Asset type +AssetsTypeId=Asset type id +AssetsTypeLabel=Asset type label +AssetsTypes=Assets types + +# +# Menu +# +MenuAssets = Assets +MenuNewAsset = New asset +MenuTypeAssets = Type assets +MenuListAssets = List +MenuNewTypeAssets = New +MenuListTypeAssets = List + +# +# Module +# +NewAssetType=New asset type +NewAsset=New asset diff --git a/htdocs/langs/ne_NP/banks.lang b/htdocs/langs/ne_NP/banks.lang new file mode 100644 index 00000000000..e54239e9fb2 --- /dev/null +++ b/htdocs/langs/ne_NP/banks.lang @@ -0,0 +1,175 @@ +# Dolibarr language file - Source file is en_US - banks +Bank=Bank +MenuBankCash=Banks | Cash +MenuVariousPayment=Miscellaneous payments +MenuNewVariousPayment=New Miscellaneous payment +BankName=Bank name +FinancialAccount=Account +BankAccount=Bank account +BankAccounts=Bank accounts +BankAccountsAndGateways=Bank accounts | Gateways +ShowAccount=Show Account +AccountRef=Financial account ref +AccountLabel=Financial account label +CashAccount=Cash account +CashAccounts=Cash accounts +CurrentAccounts=Current accounts +SavingAccounts=Savings accounts +ErrorBankLabelAlreadyExists=Financial account label already exists +BankBalance=Balance +BankBalanceBefore=Balance before +BankBalanceAfter=Balance after +BalanceMinimalAllowed=Minimum allowed balance +BalanceMinimalDesired=Minimum desired balance +InitialBankBalance=Initial balance +EndBankBalance=End balance +CurrentBalance=Current balance +FutureBalance=Future balance +ShowAllTimeBalance=Show balance from start +AllTime=From start +Reconciliation=Reconciliation +RIB=Bank Account Number +IBAN=IBAN number +BIC=BIC/SWIFT code +SwiftValid=BIC/SWIFT valid +SwiftVNotalid=BIC/SWIFT not valid +IbanValid=BAN valid +IbanNotValid=BAN not valid +StandingOrders=Direct Debit orders +StandingOrder=Direct debit order +AccountStatement=Account statement +AccountStatementShort=Statement +AccountStatements=Account statements +LastAccountStatements=Last account statements +IOMonthlyReporting=Monthly reporting +BankAccountDomiciliation=Bank address +BankAccountCountry=Account country +BankAccountOwner=Account owner name +BankAccountOwnerAddress=Account owner address +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=Create account +NewBankAccount=New account +NewFinancialAccount=New financial account +MenuNewFinancialAccount=New financial account +EditFinancialAccount=Edit account +LabelBankCashAccount=Bank or cash label +AccountType=Account type +BankType0=Savings account +BankType1=Current or credit card account +BankType2=Cash account +AccountsArea=Accounts area +AccountCard=Account card +DeleteAccount=Delete account +ConfirmDeleteAccount=Are you sure you want to delete this account? +Account=Account +BankTransactionByCategories=Bank entries by categories +BankTransactionForCategory=Bank entries for category %s +RemoveFromRubrique=Remove link with category +RemoveFromRubriqueConfirm=Are you sure you want to remove link between the entry and the category? +ListBankTransactions=List of bank entries +IdTransaction=Transaction ID +BankTransactions=Bank entries +BankTransaction=Bank entry +ListTransactions=List entries +ListTransactionsByCategory=List entries/category +TransactionsToConciliate=Entries to reconcile +TransactionsToConciliateShort=To reconcile +Conciliable=Can be reconciled +Conciliate=Reconcile +Conciliation=Reconciliation +SaveStatementOnly=Save statement only +ReconciliationLate=Reconciliation late +IncludeClosedAccount=Include closed accounts +OnlyOpenedAccount=Only open accounts +AccountToCredit=Account to credit +AccountToDebit=Account to debit +DisableConciliation=Disable reconciliation feature for this account +ConciliationDisabled=Reconciliation feature disabled +LinkedToAConciliatedTransaction=Linked to a conciliated entry +StatusAccountOpened=Open +StatusAccountClosed=Closed +AccountIdShort=Number +LineRecord=Transaction +AddBankRecord=Add entry +AddBankRecordLong=Add entry manually +Conciliated=Reconciled +ConciliatedBy=Reconciled by +DateConciliating=Reconcile date +BankLineConciliated=Entry reconciled with bank receipt +Reconciled=Reconciled +NotReconciled=Not reconciled +CustomerInvoicePayment=Customer payment +SupplierInvoicePayment=Vendor payment +SubscriptionPayment=Subscription payment +WithdrawalPayment=Debit payment order +SocialContributionPayment=Social/fiscal tax payment +BankTransfer=Bank transfer +BankTransfers=Bank transfers +MenuBankInternalTransfer=Internal transfer +TransferDesc=Transfer from one account to another, Dolibarr will write two records (a debit in source account and a credit in target account). The same amount (except sign), label and date will be used for this transaction) +TransferFrom=From +TransferTo=To +TransferFromToDone=A transfer from %s to %s of %s %s has been recorded. +CheckTransmitter=Transmitter +ValidateCheckReceipt=Validate this check receipt? +ConfirmValidateCheckReceipt=Are you sure you want to validate this check receipt, no change will be possible once this is done? +DeleteCheckReceipt=Delete this check receipt? +ConfirmDeleteCheckReceipt=Are you sure you want to delete this check receipt? +BankChecks=Bank checks +BankChecksToReceipt=Checks awaiting deposit +BankChecksToReceiptShort=Checks awaiting deposit +ShowCheckReceipt=Show check deposit receipt +NumberOfCheques=No. of check +DeleteTransaction=Delete entry +ConfirmDeleteTransaction=Are you sure you want to delete this entry? +ThisWillAlsoDeleteBankRecord=This will also delete generated bank entry +BankMovements=Movements +PlannedTransactions=Planned entries +Graph=Graphics +ExportDataset_banque_1=Bank entries and account statement +ExportDataset_banque_2=Deposit slip +TransactionOnTheOtherAccount=Transaction on the other account +PaymentNumberUpdateSucceeded=Payment number updated successfully +PaymentNumberUpdateFailed=Payment number could not be updated +PaymentDateUpdateSucceeded=Payment date updated successfully +PaymentDateUpdateFailed=Payment date could not be updated +Transactions=Transactions +BankTransactionLine=Bank entry +AllAccounts=All bank and cash accounts +BackToAccount=Back to account +ShowAllAccounts=Show for all accounts +FutureTransaction=Future transaction. Unable to reconcile. +SelectChequeTransactionAndGenerate=Select/filter checks to include in the check deposit receipt and click on "Create". +InputReceiptNumber=Choose the bank statement related with the conciliation. Use a sortable numeric value: YYYYMM or YYYYMMDD +EventualyAddCategory=Eventually, specify a category in which to classify the records +ToConciliate=To reconcile? +ThenCheckLinesAndConciliate=Then, check the lines present in the bank statement and click +DefaultRIB=Default BAN +AllRIB=All BAN +LabelRIB=BAN Label +NoBANRecord=No BAN record +DeleteARib=Delete BAN record +ConfirmDeleteRib=Are you sure you want to delete this BAN record? +RejectCheck=Check returned +ConfirmRejectCheck=Are you sure you want to mark this check as rejected? +RejectCheckDate=Date the check was returned +CheckRejected=Check returned +CheckRejectedAndInvoicesReopened=Check returned and invoices re-open +BankAccountModelModule=Document templates for bank accounts +DocumentModelSepaMandate=Template of SEPA mandate. Useful for European countries in EEC only. +DocumentModelBan=Template to print a page with BAN information. +NewVariousPayment=New miscellaneous payment +VariousPayment=Miscellaneous payment +VariousPayments=Miscellaneous payments +ShowVariousPayment=Show miscellaneous payment +AddVariousPayment=Add miscellaneous payment +SEPAMandate=SEPA mandate +YourSEPAMandate=Your SEPA mandate +FindYourSEPAMandate=This is your SEPA mandate to authorize our company to make direct debit order to your bank. Return it signed (scan of the signed document) or send it by mail to +AutoReportLastAccountStatement=Automatically fill the field 'number of bank statement' with last statement number when making reconciliation +CashControl=POS cash fence +NewCashFence=New cash fence +BankColorizeMovement=Colorize movements +BankColorizeMovementDesc=If this function is enable, you can choose specific background color for debit or credit movements +BankColorizeMovementName1=Background color for debit movement +BankColorizeMovementName2=Background color for credit movement diff --git a/htdocs/langs/ne_NP/bills.lang b/htdocs/langs/ne_NP/bills.lang new file mode 100644 index 00000000000..9f11d8ecf87 --- /dev/null +++ b/htdocs/langs/ne_NP/bills.lang @@ -0,0 +1,574 @@ +# Dolibarr language file - Source file is en_US - bills +Bill=Invoice +Bills=Invoices +BillsCustomers=Customer invoices +BillsCustomer=Customer invoice +BillsSuppliers=Vendor invoices +BillsCustomersUnpaid=Unpaid customer invoices +BillsCustomersUnpaidForCompany=Unpaid customer invoices for %s +BillsSuppliersUnpaid=Unpaid vendor invoices +BillsSuppliersUnpaidForCompany=Unpaid vendors invoices for %s +BillsLate=Late payments +BillsStatistics=Customers invoices statistics +BillsStatisticsSuppliers=Vendors invoices statistics +DisabledBecauseDispatchedInBookkeeping=Disabled because invoice was dispatched into bookkeeping +DisabledBecauseNotLastInvoice=Disabled because invoice is not erasable. Some invoices were recorded after this one and it will create holes in the counter. +DisabledBecauseNotErasable=Disabled because cannot be erased +InvoiceStandard=Standard invoice +InvoiceStandardAsk=Standard invoice +InvoiceStandardDesc=This kind of invoice is the common invoice. +InvoiceDeposit=Down payment invoice +InvoiceDepositAsk=Down payment invoice +InvoiceDepositDesc=This kind of invoice is done when a down payment has been received. +InvoiceProForma=Proforma invoice +InvoiceProFormaAsk=Proforma invoice +InvoiceProFormaDesc=Proforma invoice is an image of a true invoice but has no accountancy value. +InvoiceReplacement=Replacement invoice +InvoiceReplacementAsk=Replacement invoice for invoice +InvoiceReplacementDesc=Replacement invoice is used to completely replace an invoice with no payment already received.

    Note: Only invoices with no payment on it can be replaced. If the invoice you replace is not yet closed, it will be automatically closed to 'abandoned'. +InvoiceAvoir=Credit note +InvoiceAvoirAsk=Credit note to correct invoice +InvoiceAvoirDesc=The credit note is a negative invoice used to correct the fact that an invoice shows an amount that differs from the amount actually paid (eg the customer paid too much by mistake, or will not pay the complete amount since some products were returned). +invoiceAvoirWithLines=Create Credit Note with lines from the origin invoice +invoiceAvoirWithPaymentRestAmount=Create Credit Note with remaining unpaid of origin invoice +invoiceAvoirLineWithPaymentRestAmount=Credit Note for remaining unpaid amount +ReplaceInvoice=Replace invoice %s +ReplacementInvoice=Replacement invoice +ReplacedByInvoice=Replaced by invoice %s +ReplacementByInvoice=Replaced by invoice +CorrectInvoice=Correct invoice %s +CorrectionInvoice=Correction invoice +UsedByInvoice=Used to pay invoice %s +ConsumedBy=Consumed by +NotConsumed=Not consumed +NoReplacableInvoice=No replaceable invoices +NoInvoiceToCorrect=No invoice to correct +InvoiceHasAvoir=Was source of one or several credit notes +CardBill=Invoice card +PredefinedInvoices=Predefined Invoices +Invoice=Invoice +PdfInvoiceTitle=Invoice +Invoices=Invoices +InvoiceLine=Invoice line +InvoiceCustomer=Customer invoice +CustomerInvoice=Customer invoice +CustomersInvoices=Customers invoices +SupplierInvoice=Vendor invoice +SuppliersInvoices=Vendors invoices +SupplierBill=Vendor invoice +SupplierBills=suppliers invoices +Payment=Payment +PaymentBack=Refund +CustomerInvoicePaymentBack=Refund +Payments=Payments +PaymentsBack=Refunds +paymentInInvoiceCurrency=in invoices currency +PaidBack=Paid back +DeletePayment=Delete payment +ConfirmDeletePayment=Are you sure you want to delete this payment? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? +ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? +ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. +SupplierPayments=Vendor payments +ReceivedPayments=Received payments +ReceivedCustomersPayments=Payments received from customers +PayedSuppliersPayments=Payments paid to vendors +ReceivedCustomersPaymentsToValid=Received customers payments to validate +PaymentsReportsForYear=Payments reports for %s +PaymentsReports=Payments reports +PaymentsAlreadyDone=Payments already done +PaymentsBackAlreadyDone=Refunds already done +PaymentRule=Payment rule +PaymentMode=Payment Type +PaymentTypeDC=Debit/Credit Card +PaymentTypePP=PayPal +IdPaymentMode=Payment Type (id) +CodePaymentMode=Payment Type (code) +LabelPaymentMode=Payment Type (label) +PaymentModeShort=Payment Type +PaymentTerm=Payment Term +PaymentConditions=Payment Terms +PaymentConditionsShort=Payment Terms +PaymentAmount=Payment amount +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' +ClassifyUnBilled=Classify 'Unbilled' +CreateBill=Create Invoice +CreateCreditNote=Create credit note +AddBill=Create invoice or credit note +AddToDraftInvoices=Add to draft invoice +DeleteBill=Delete invoice +SearchACustomerInvoice=Search for a customer invoice +SearchASupplierInvoice=Search for a vendor invoice +CancelBill=Cancel an invoice +SendRemindByMail=Send reminder by email +DoPayment=Enter payment +DoPaymentBack=Enter refund +ConvertToReduc=Mark as credit available +ConvertExcessReceivedToReduc=Convert excess received into available credit +ConvertExcessPaidToReduc=Convert excess paid into available discount +EnterPaymentReceivedFromCustomer=Enter payment received from customer +EnterPaymentDueToCustomer=Make payment due to customer +DisabledBecauseRemainderToPayIsZero=Disabled because remaining unpaid is zero +PriceBase=Price base +BillStatus=Invoice status +StatusOfGeneratedInvoices=Status of generated invoices +BillStatusDraft=Draft (needs to be validated) +BillStatusPaid=Paid +BillStatusPaidBackOrConverted=Credit note refund or marked as credit available +BillStatusConverted=Paid (ready for consumption in final invoice) +BillStatusCanceled=Abandoned +BillStatusValidated=Validated (needs to be paid) +BillStatusStarted=Started +BillStatusNotPaid=Not paid +BillStatusNotRefunded=Not refunded +BillStatusClosedUnpaid=Closed (unpaid) +BillStatusClosedPaidPartially=Paid (partially) +BillShortStatusDraft=Draft +BillShortStatusPaid=Paid +BillShortStatusPaidBackOrConverted=Refunded or converted +Refunded=Refunded +BillShortStatusConverted=Paid +BillShortStatusCanceled=Abandoned +BillShortStatusValidated=Validated +BillShortStatusStarted=Started +BillShortStatusNotPaid=Not paid +BillShortStatusNotRefunded=Not refunded +BillShortStatusClosedUnpaid=Closed +BillShortStatusClosedPaidPartially=Paid (partially) +PaymentStatusToValidShort=To validate +ErrorVATIntraNotConfigured=Intra-Community VAT number not yet defined +ErrorNoPaiementModeConfigured=No default payment type defined. Go to Invoice module setup to fix this. +ErrorCreateBankAccount=Create a bank account, then go to Setup panel of Invoice module to define payment types +ErrorBillNotFound=Invoice %s does not exist +ErrorInvoiceAlreadyReplaced=Error, you tried to validate an invoice to replace invoice %s. But this one has already been replaced by invoice %s. +ErrorDiscountAlreadyUsed=Error, discount already used +ErrorInvoiceAvoirMustBeNegative=Error, correct invoice must have a negative amount +ErrorInvoiceOfThisTypeMustBePositive=Error, this type of invoice must have an amount excluding tax positive (or null) +ErrorCantCancelIfReplacementInvoiceNotValidated=Error, can't cancel an invoice that has been replaced by another invoice that is still in draft status +ErrorThisPartOrAnotherIsAlreadyUsedSoDiscountSerieCantBeRemoved=This part or another is already used so discount series cannot be removed. +BillFrom=From +BillTo=To +ActionsOnBill=Actions on invoice +RecurringInvoiceTemplate=Template / Recurring invoice +NoQualifiedRecurringInvoiceTemplateFound=No recurring template invoice qualified for generation. +FoundXQualifiedRecurringInvoiceTemplate=Found %s recurring template invoice(s) qualified for generation. +NotARecurringInvoiceTemplate=Not a recurring template invoice +NewBill=New invoice +LastBills=Latest %s invoices +LatestTemplateInvoices=Latest %s template invoices +LatestCustomerTemplateInvoices=Latest %s customer template invoices +LatestSupplierTemplateInvoices=Latest %s vendor template invoices +LastCustomersBills=Latest %s customer invoices +LastSuppliersBills=Latest %s vendor invoices +AllBills=All invoices +AllCustomerTemplateInvoices=All template invoices +OtherBills=Other invoices +DraftBills=Draft invoices +CustomersDraftInvoices=Customer draft invoices +SuppliersDraftInvoices=Vendor draft invoices +Unpaid=Unpaid +ErrorNoPaymentDefined=Error No payment defined +ConfirmDeleteBill=Are you sure you want to delete this invoice? +ConfirmValidateBill=Are you sure you want to validate this invoice with reference %s? +ConfirmUnvalidateBill=Are you sure you want to change invoice %s to draft status? +ConfirmClassifyPaidBill=Are you sure you want to change invoice %s to status paid? +ConfirmCancelBill=Are you sure you want to cancel invoice %s? +ConfirmCancelBillQuestion=Why do you want to classify this invoice 'abandoned'? +ConfirmClassifyPaidPartially=Are you sure you want to change invoice %s to status paid? +ConfirmClassifyPaidPartiallyQuestion=This invoice has not been paid completely. What is the reason for closing this invoice? +ConfirmClassifyPaidPartiallyReasonAvoir=Remaining unpaid (%s %s) is a discount granted because payment was made before term. I regularize the VAT with a credit note. +ConfirmClassifyPaidPartiallyReasonDiscount=Remaining unpaid (%s %s) is a discount granted because payment was made before term. +ConfirmClassifyPaidPartiallyReasonDiscountNoVat=Remaining unpaid (%s %s) is a discount granted because payment was made before term. I accept to lose the VAT on this discount. +ConfirmClassifyPaidPartiallyReasonDiscountVat=Remaining unpaid (%s %s) is a discount granted because payment was made before term. I recover the VAT on this discount without a credit note. +ConfirmClassifyPaidPartiallyReasonBadCustomer=Bad customer +ConfirmClassifyPaidPartiallyReasonProductReturned=Products partially returned +ConfirmClassifyPaidPartiallyReasonOther=Amount abandoned for other reason +ConfirmClassifyPaidPartiallyReasonDiscountNoVatDesc=This choice is possible if your invoice has been provided with suitable comments. (Example «Only the tax corresponding to the price that has been actually paid gives rights to deduction») +ConfirmClassifyPaidPartiallyReasonDiscountVatDesc=In some countries, this choice might be possible only if your invoice contains correct notes. +ConfirmClassifyPaidPartiallyReasonAvoirDesc=Use this choice if all other does not suit +ConfirmClassifyPaidPartiallyReasonBadCustomerDesc=A bad customer is a customer that refuses to pay his debt. +ConfirmClassifyPaidPartiallyReasonProductReturnedDesc=This choice is used when payment is not complete because some of products were returned +ConfirmClassifyPaidPartiallyReasonOtherDesc=Use this choice if all others are not suitable, for example in following situation:
    - payment not complete because some products were shipped back
    - amount claimed too important because a discount was forgotten
    In all cases, amount over-claimed must be corrected in accountancy system by creating a credit note. +ConfirmClassifyAbandonReasonOther=Other +ConfirmClassifyAbandonReasonOtherDesc=This choice will be used in all other cases. For example because you plan to create a replacing invoice. +ConfirmCustomerPayment=Do you confirm this payment input for %s %s? +ConfirmSupplierPayment=Do you confirm this payment input for %s %s? +ConfirmValidatePayment=Are you sure you want to validate this payment? No change can be made once payment is validated. +ValidateBill=Validate invoice +UnvalidateBill=Unvalidate invoice +NumberOfBills=No. of invoices +NumberOfBillsByMonth=No. of invoices per month +AmountOfBills=Amount of invoices +AmountOfBillsHT=Amount of invoices (net of tax) +AmountOfBillsByMonthHT=Amount of invoices by month (net of tax) +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices +RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation +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 +AlreadyPaid=Already paid +AlreadyPaidBack=Already paid back +AlreadyPaidNoCreditNotesNoDeposits=Already paid (without credit notes and down payments) +Abandoned=Abandoned +RemainderToPay=Remaining unpaid +RemainderToTake=Remaining amount to take +RemainderToPayBack=Remaining amount to refund +Rest=Pending +AmountExpected=Amount claimed +ExcessReceived=Excess received +ExcessPaid=Excess paid +EscompteOffered=Discount offered (payment before term) +EscompteOfferedShort=Discount +SendBillRef=Submission of invoice %s +SendReminderBillRef=Submission of invoice %s (reminder) +StandingOrders=Direct debit orders +StandingOrder=Direct debit order +NoDraftBills=No draft invoices +NoOtherDraftBills=No other draft invoices +NoDraftInvoices=No draft invoices +RefBill=Invoice ref +ToBill=To bill +RemainderToBill=Remainder to bill +SendBillByMail=Send invoice by email +SendReminderBillByMail=Send reminder by email +RelatedCommercialProposals=Related commercial proposals +RelatedRecurringCustomerInvoices=Related recurring customer invoices +MenuToValid=To valid +DateMaxPayment=Payment due on +DateInvoice=Invoice date +DatePointOfTax=Point of tax +NoInvoice=No invoice +ClassifyBill=Classify invoice +SupplierBillsToPay=Unpaid vendor invoices +CustomerBillsUnpaid=Unpaid customer invoices +NonPercuRecuperable=Non-recoverable +SetConditions=Set Payment Terms +SetMode=Set Payment Type +SetRevenuStamp=Set revenue stamp +Billed=Billed +RecurringInvoices=Recurring invoices +RepeatableInvoice=Template invoice +RepeatableInvoices=Template invoices +Repeatable=Template +Repeatables=Templates +ChangeIntoRepeatableInvoice=Convert into template invoice +CreateRepeatableInvoice=Create template invoice +CreateFromRepeatableInvoice=Create from template invoice +CustomersInvoicesAndInvoiceLines=Customer invoices and invoice details +CustomersInvoicesAndPayments=Customer invoices and payments +ExportDataset_invoice_1=Customer invoices and invoice details +ExportDataset_invoice_2=Customer invoices and payments +ProformaBill=Proforma Bill: +Reduction=Reduction +ReductionShort=Disc. +Reductions=Reductions +ReductionsShort=Disc. +Discounts=Discounts +AddDiscount=Create discount +AddRelativeDiscount=Create relative discount +EditRelativeDiscount=Edit relative discount +AddGlobalDiscount=Create absolute discount +EditGlobalDiscounts=Edit absolute discounts +AddCreditNote=Create credit note +ShowDiscount=Show discount +ShowReduc=Show the discount +ShowSourceInvoice=Show the source invoice +RelativeDiscount=Relative discount +GlobalDiscount=Global discount +CreditNote=Credit note +CreditNotes=Credit notes +CreditNotesOrExcessReceived=Credit notes or excess received +Deposit=Down payment +Deposits=Down payments +DiscountFromCreditNote=Discount from credit note %s +DiscountFromDeposit=Down payments from invoice %s +DiscountFromExcessReceived=Payments in excess of invoice %s +DiscountFromExcessPaid=Payments in excess of invoice %s +AbsoluteDiscountUse=This kind of credit can be used on invoice before its validation +CreditNoteDepositUse=Invoice must be validated to use this kind of credits +NewGlobalDiscount=New absolute discount +NewRelativeDiscount=New relative discount +DiscountType=Discount type +NoteReason=Note/Reason +ReasonDiscount=Reason +DiscountOfferedBy=Granted by +DiscountStillRemaining=Discounts or credits available +DiscountAlreadyCounted=Discounts or credits already consumed +CustomerDiscounts=Customer discounts +SupplierDiscounts=Vendors discounts +BillAddress=Bill address +HelpEscompte=This discount is a discount granted to customer because payment was made before term. +HelpAbandonBadCustomer=This amount has been abandoned (customer said to be a bad customer) and is considered as an exceptional loss. +HelpAbandonOther=This amount has been abandoned since it was an error (wrong customer or invoice replaced by another for example) +IdSocialContribution=Social/fiscal tax payment id +PaymentId=Payment id +PaymentRef=Payment ref. +InvoiceId=Invoice id +InvoiceRef=Invoice ref. +InvoiceDateCreation=Invoice creation date +InvoiceStatus=Invoice status +InvoiceNote=Invoice note +InvoicePaid=Invoice paid +InvoicePaidCompletely=Paid completely +InvoicePaidCompletelyHelp=Invoice that are paid completely. This excludes invoices that are paid partially. To get list of all 'Closed' or non 'Closed' invoices, prefer to use a filter on the invoice status. +OrderBilled=Order billed +DonationPaid=Donation paid +PaymentNumber=Payment number +RemoveDiscount=Remove discount +WatermarkOnDraftBill=Watermark on draft invoices (nothing if empty) +InvoiceNotChecked=No invoice selected +ConfirmCloneInvoice=Are you sure you want to clone this invoice %s? +DisabledBecauseReplacedInvoice=Action disabled because invoice has been replaced +DescTaxAndDividendsArea=This area presents a summary of all payments made for special expenses. Only records with payments during the fixed year are included here. +NbOfPayments=No. of payments +SplitDiscount=Split discount in two +ConfirmSplitDiscount=Are you sure you want to split this discount of %s %s into two smaller discounts? +TypeAmountOfEachNewDiscount=Input amount for each of two parts: +TotalOfTwoDiscountMustEqualsOriginal=The total of the two new discounts must be equal to the original discount amount. +ConfirmRemoveDiscount=Are you sure you want to remove this discount? +RelatedBill=Related invoice +RelatedBills=Related invoices +RelatedCustomerInvoices=Related customer invoices +RelatedSupplierInvoices=Related vendor invoices +LatestRelatedBill=Latest related invoice +WarningBillExist=Warning, one or more invoices already exist +MergingPDFTool=Merging PDF tool +AmountPaymentDistributedOnInvoice=Payment amount distributed on invoice +PaymentOnDifferentThirdBills=Allow payments on different third parties bills but same parent company +PaymentNote=Payment note +ListOfPreviousSituationInvoices=List of previous situation invoices +ListOfNextSituationInvoices=List of next situation invoices +ListOfSituationInvoices=List of situation invoices +CurrentSituationTotal=Total current situation +DisabledBecauseNotEnouthCreditNote=To remove a situation invoice from cycle, this invoice's credit note total must cover this invoice total +RemoveSituationFromCycle=Remove this invoice from cycle +ConfirmRemoveSituationFromCycle=Remove this invoice %s from cycle ? +ConfirmOuting=Confirm outing +FrequencyPer_d=Every %s days +FrequencyPer_m=Every %s months +FrequencyPer_y=Every %s years +FrequencyUnit=Frequency unit +toolTipFrequency=Examples:
    Set 7, Day: give a new invoice every 7 days
    Set 3, Month: give a new invoice every 3 month +NextDateToExecution=Date for next invoice generation +NextDateToExecutionShort=Date next gen. +DateLastGeneration=Date of latest generation +DateLastGenerationShort=Date latest gen. +MaxPeriodNumber=Max. number of invoice generation +NbOfGenerationDone=Number of invoice generation already done +NbOfGenerationDoneShort=Number of generation done +MaxGenerationReached=Maximum number of generations reached +InvoiceAutoValidate=Validate invoices automatically +GeneratedFromRecurringInvoice=Generated from template recurring invoice %s +DateIsNotEnough=Date not reached yet +InvoiceGeneratedFromTemplate=Invoice %s generated from recurring template invoice %s +GeneratedFromTemplate=Generated from template invoice %s +WarningInvoiceDateInFuture=Warning, the invoice date is higher than current date +WarningInvoiceDateTooFarInFuture=Warning, the invoice date is too far from current date +ViewAvailableGlobalDiscounts=View available discounts +GroupPaymentsByModOnReports=Group payments by mode on reports +# PaymentConditions +Statut=Status +PaymentConditionShortRECEP=Due Upon Receipt +PaymentConditionRECEP=Due Upon Receipt +PaymentConditionShort30D=30 days +PaymentCondition30D=30 days +PaymentConditionShort30DENDMONTH=30 days of month-end +PaymentCondition30DENDMONTH=Within 30 days following the end of the month +PaymentConditionShort60D=60 days +PaymentCondition60D=60 days +PaymentConditionShort60DENDMONTH=60 days of month-end +PaymentCondition60DENDMONTH=Within 60 days following the end of the month +PaymentConditionShortPT_DELIVERY=Delivery +PaymentConditionPT_DELIVERY=On delivery +PaymentConditionShortPT_ORDER=Order +PaymentConditionPT_ORDER=On order +PaymentConditionShortPT_5050=50-50 +PaymentConditionPT_5050=50%% in advance, 50%% on delivery +PaymentConditionShort10D=10 days +PaymentCondition10D=10 days +PaymentConditionShort10DENDMONTH=10 days of month-end +PaymentCondition10DENDMONTH=Within 10 days following the end of the month +PaymentConditionShort14D=14 days +PaymentCondition14D=14 days +PaymentConditionShort14DENDMONTH=14 days of month-end +PaymentCondition14DENDMONTH=Within 14 days following the end of the month +FixAmount=Fixed amount - 1 line with label '%s' +VarAmount=Variable amount (%% tot.) +VarAmountOneLine=Variable amount (%% tot.) - 1 line with label '%s' +VarAmountAllLines=Variable amount (%% tot.) - all same lines +# PaymentType +PaymentTypeVIR=Bank transfer +PaymentTypeShortVIR=Bank transfer +PaymentTypePRE=Direct debit payment order +PaymentTypeShortPRE=Debit payment order +PaymentTypeLIQ=Cash +PaymentTypeShortLIQ=Cash +PaymentTypeCB=Credit card +PaymentTypeShortCB=Credit card +PaymentTypeCHQ=Check +PaymentTypeShortCHQ=Check +PaymentTypeTIP=TIP (Documents against Payment) +PaymentTypeShortTIP=TIP Payment +PaymentTypeVAD=Online payment +PaymentTypeShortVAD=Online payment +PaymentTypeTRA=Bank draft +PaymentTypeShortTRA=Draft +PaymentTypeFAC=Factor +PaymentTypeShortFAC=Factor +BankDetails=Bank details +BankCode=Bank code +DeskCode=Branch code +BankAccountNumber=Account number +BankAccountNumberKey=Checksum +Residence=Address +IBANNumber=IBAN account number +IBAN=IBAN +BIC=BIC/SWIFT +BICNumber=BIC/SWIFT code +ExtraInfos=Extra infos +RegulatedOn=Regulated on +ChequeNumber=Check N° +ChequeOrTransferNumber=Check/Transfer N° +ChequeBordereau=Check schedule +ChequeMaker=Check/Transfer transmitter +ChequeBank=Bank of Check +CheckBank=Check +NetToBePaid=Net to be paid +PhoneNumber=Tel +FullPhoneNumber=Telephone +TeleFax=Fax +PrettyLittleSentence=Accept the amount of payments due by checks issued in my name as a Member of an accounting association approved by the Fiscal Administration. +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=sent to +PaymentByTransferOnThisBankAccount=Payment by transfer to the following bank account +VATIsNotUsedForInvoice=* Non applicable VAT art-293B of CGI +LawApplicationPart1=By application of the law 80.335 of 12/05/80 +LawApplicationPart2=the goods remain the property of +LawApplicationPart3=the seller until full payment of +LawApplicationPart4=their price. +LimitedLiabilityCompanyCapital=SARL with Capital of +UseLine=Apply +UseDiscount=Use discount +UseCredit=Use credit +UseCreditNoteInInvoicePayment=Reduce amount to pay with this credit +MenuChequeDeposits=Check Deposits +MenuCheques=Checks +MenuChequesReceipts=Check receipts +NewChequeDeposit=New deposit +ChequesReceipts=Check receipts +ChequesArea=Check deposits area +ChequeDeposits=Check deposits +Cheques=Checks +DepositId=Id deposit +NbCheque=Number of checks +CreditNoteConvertedIntoDiscount=This %s has been converted into %s +UsBillingContactAsIncoiveRecipientIfExist=Use contact/address with type 'billing contact' instead of third-party address as recipient for invoices +ShowUnpaidAll=Show all unpaid invoices +ShowUnpaidLateOnly=Show late unpaid invoices only +PaymentInvoiceRef=Payment invoice %s +ValidateInvoice=Validate invoice +ValidateInvoices=Validate invoices +Cash=Cash +Reported=Delayed +DisabledBecausePayments=Not possible since there are some payments +CantRemovePaymentWithOneInvoicePaid=Can't remove payment since there is at least one invoice classified paid +ExpectedToPay=Expected payment +CantRemoveConciliatedPayment=Can't remove reconciled payment +PayedByThisPayment=Paid by this payment +ClosePaidInvoicesAutomatically=Classify automatically all standard, down payment or replacement invoices as "Paid" when payment is done entirely. +ClosePaidCreditNotesAutomatically=Classify automatically all credit notes as "Paid" when refund is done entirely. +ClosePaidContributionsAutomatically=Classify automatically all social or fiscal contributions as "Paid" when payment is done entirely. +AllCompletelyPayedInvoiceWillBeClosed=All invoices with no remainder to pay will be automatically closed with status "Paid". +ToMakePayment=Pay +ToMakePaymentBack=Pay back +ListOfYourUnpaidInvoices=List of unpaid invoices +NoteListOfYourUnpaidInvoices=Note: This list contains only invoices for third parties you are linked to as a sale representative. +RevenueStamp=Tax stamp +YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party +YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party +YouMustCreateStandardInvoiceFirstDesc=You have to create a standard invoice first and convert it to "template" to create a new template invoice +PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template (old implementation of Sponge template) +PDFSpongeDescription=Invoice PDF template Sponge. A complete invoice template +PDFCrevetteDescription=Invoice PDF template Crevette. A complete invoice template for situation invoices +TerreNumRefModelDesc1=Return number with format %syymm-nnnn for standard invoices and %syymm-nnnn for credit notes where yy is year, mm is month and nnnn is a sequence with no break and no return to 0 +MarsNumRefModelDesc1=Return number with format %syymm-nnnn for standard invoices, %syymm-nnnn for replacement invoices, %syymm-nnnn for down payment invoices and %syymm-nnnn for credit notes where yy is year, mm is month and nnnn is a sequence with no break and no return to 0 +TerreNumRefModelError=A bill starting with $syymm already exists and is not compatible with this model of sequence. Remove it or rename it to activate this module. +CactusNumRefModelDesc1=Return number with format %syymm-nnnn for standard invoices, %syymm-nnnn for credit notes and %syymm-nnnn for down payment invoices where yy is year, mm is month and nnnn is a sequence with no break and no return to 0 +EarlyClosingReason=Early closing reason +EarlyClosingComment=Early closing note +##### Types de contacts ##### +TypeContact_facture_internal_SALESREPFOLL=Representative following-up customer invoice +TypeContact_facture_external_BILLING=Customer invoice contact +TypeContact_facture_external_SHIPPING=Customer shipping contact +TypeContact_facture_external_SERVICE=Customer service contact +TypeContact_invoice_supplier_internal_SALESREPFOLL=Representative following-up vendor invoice +TypeContact_invoice_supplier_external_BILLING=Vendor invoice contact +TypeContact_invoice_supplier_external_SHIPPING=Vendor shipping contact +TypeContact_invoice_supplier_external_SERVICE=Vendor service contact +# Situation invoices +InvoiceFirstSituationAsk=First situation invoice +InvoiceFirstSituationDesc=The situation invoices are tied to situations related to a progression, for example the progression of a construction. Each situation is tied to an invoice. +InvoiceSituation=Situation invoice +InvoiceSituationAsk=Invoice following the situation +InvoiceSituationDesc=Create a new situation following an already existing one +SituationAmount=Situation invoice amount(net) +SituationDeduction=Situation subtraction +ModifyAllLines=Modify all lines +CreateNextSituationInvoice=Create next situation +ErrorFindNextSituationInvoice=Error unable to find next situation cycle ref +ErrorOutingSituationInvoiceOnUpdate=Unable to outing this situation invoice. +ErrorOutingSituationInvoiceCreditNote=Unable to outing linked credit note. +NotLastInCycle=This invoice is not the latest in cycle and must not be modified. +DisabledBecauseNotLastInCycle=The next situation already exists. +DisabledBecauseFinal=This situation is final. +situationInvoiceShortcode_AS=AS +situationInvoiceShortcode_S=S +CantBeLessThanMinPercent=The progress can't be smaller than its value in the previous situation. +NoSituations=No open situations +InvoiceSituationLast=Final and general invoice +PDFCrevetteSituationNumber=Situation N°%s +PDFCrevetteSituationInvoiceLineDecompte=Situation invoice - COUNT +PDFCrevetteSituationInvoiceTitle=Situation invoice +PDFCrevetteSituationInvoiceLine=Situation N°%s: Inv. N°%s on %s +TotalSituationInvoice=Total situation +invoiceLineProgressError=Invoice line progress can't be greater than or equal to the next invoice line +updatePriceNextInvoiceErrorUpdateline=Error: update price on invoice line: %s +ToCreateARecurringInvoice=To create a recurring invoice for this contract, first create this draft invoice, then convert it into an invoice template and define the frequency for generation of future invoices. +ToCreateARecurringInvoiceGene=To generate future invoices regularly and manually, just go on menu %s - %s - %s. +ToCreateARecurringInvoiceGeneAuto=If you need to have such invoices generated automatically, ask your administrator to enable and setup module %s. Note that both methods (manual and automatic) can be used together with no risk of duplication. +DeleteRepeatableInvoice=Delete template invoice +ConfirmDeleteRepeatableInvoice=Are your sure you want to delete the template invoice? +CreateOneBillByThird=Create one invoice per third party (otherwise, one invoice per order) +BillCreated=%s bill(s) created +StatusOfGeneratedDocuments=Status of document generation +DoNotGenerateDoc=Do not generate document file +AutogenerateDoc=Auto generate document file +AutoFillDateFrom=Set start date for service line with invoice date +AutoFillDateFromShort=Set start date +AutoFillDateTo=Set end date for service line with next invoice date +AutoFillDateToShort=Set end date +MaxNumberOfGenerationReached=Max number of gen. reached +BILL_DELETEInDolibarr=Invoice deleted +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/ne_NP/blockedlog.lang b/htdocs/langs/ne_NP/blockedlog.lang new file mode 100644 index 00000000000..5afae6e9e53 --- /dev/null +++ b/htdocs/langs/ne_NP/blockedlog.lang @@ -0,0 +1,54 @@ +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). +CompanyInitialKey=Company initial key (hash of genesis block) +BrowseBlockedLog=Unalterable logs +ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) +ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) +DownloadBlockChain=Download fingerprints +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). +OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. +OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. +AddedByAuthority=Stored into remote authority +NotAddedByAuthorityYet=Not yet stored into remote authority +ShowDetails=Show stored details +logPAYMENT_VARIOUS_CREATE=Payment (not assigned to an invoice) created +logPAYMENT_VARIOUS_MODIFY=Payment (not assigned to an invoice) modified +logPAYMENT_VARIOUS_DELETE=Payment (not assigned to an invoice) logical deletion +logPAYMENT_ADD_TO_BANK=Payment added to bank +logPAYMENT_CUSTOMER_CREATE=Customer payment created +logPAYMENT_CUSTOMER_DELETE=Customer payment logical deletion +logDONATION_PAYMENT_CREATE=Donation payment created +logDONATION_PAYMENT_DELETE=Donation payment logical deletion +logBILL_PAYED=Customer invoice paid +logBILL_UNPAYED=Customer invoice set unpaid +logBILL_VALIDATE=Customer invoice validated +logBILL_SENTBYMAIL=Customer invoice send by mail +logBILL_DELETE=Customer invoice logically deleted +logMODULE_RESET=Module BlockedLog was disabled +logMODULE_SET=Module BlockedLog was enabled +logDON_VALIDATE=Donation validated +logDON_MODIFY=Donation modified +logDON_DELETE=Donation logical deletion +logMEMBER_SUBSCRIPTION_CREATE=Member subscription created +logMEMBER_SUBSCRIPTION_MODIFY=Member subscription modified +logMEMBER_SUBSCRIPTION_DELETE=Member subscription logical deletion +logCASHCONTROL_VALIDATE=Cash fence recording +BlockedLogBillDownload=Customer invoice download +BlockedLogBillPreview=Customer invoice preview +BlockedlogInfoDialog=Log Details +ListOfTrackedEvents=List of tracked events +Fingerprint=Fingerprint +DownloadLogCSV=Export archived logs (CSV) +logDOC_PREVIEW=Preview of a validated document in order to print or download +logDOC_DOWNLOAD=Download of a validated document in order to print or send +DataOfArchivedEvent=Full datas of archived event +ImpossibleToReloadObject=Original object (type %s, id %s) not linked (see 'Full datas' column to get unalterable saved data) +BlockedLogAreRequiredByYourCountryLegislation=Unalterable Logs module may be required by the legislation of your country. Disabling this module may render any future transactions invalid with respect to the law and the use of legal software as they can not be validated by a tax audit. +BlockedLogActivatedBecauseRequiredByYourCountryLegislation=Unalterable Logs module was activated because of the legislation of your country. Disabling this module may render any future transactions invalid with respect to the law and the use of legal software as they cannot be validated by a tax audit. +BlockedLogDisableNotAllowedForCountry=List of countries where usage of this module is mandatory (just to prevent to disable the module by error, if your country is in this list, disable of module is not possible without editing this list first. Note also that enabling/disabling this module will keep a track into the unalterable log). +OnlyNonValid=Non-valid +TooManyRecordToScanRestrictFilters=Too many records to scan/analyze. Please restrict list with more restrictive filters. +RestrictYearToExport=Restrict month / year to export diff --git a/htdocs/langs/ne_NP/bookmarks.lang b/htdocs/langs/ne_NP/bookmarks.lang new file mode 100644 index 00000000000..87466cadcfa --- /dev/null +++ b/htdocs/langs/ne_NP/bookmarks.lang @@ -0,0 +1,21 @@ +# Dolibarr language file - Source file is en_US - marque pages +AddThisPageToBookmarks=Add current page to bookmarks +Bookmark=Bookmark +Bookmarks=Bookmarks +ListOfBookmarks=List of bookmarks +EditBookmarks=List/edit bookmarks +NewBookmark=New bookmark +ShowBookmark=Show bookmark +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=Create bookmark +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=Bookmarks management +BookmarksMenuShortCut=Ctrl + shift + m diff --git a/htdocs/langs/ne_NP/boxes.lang b/htdocs/langs/ne_NP/boxes.lang new file mode 100644 index 00000000000..bd62684421a --- /dev/null +++ b/htdocs/langs/ne_NP/boxes.lang @@ -0,0 +1,102 @@ +# Dolibarr language file - Source file is en_US - boxes +BoxLoginInformation=Login Information +BoxLastRssInfos=RSS Information +BoxLastProducts=Latest %s Products/Services +BoxProductsAlertStock=Stock alerts for products +BoxLastProductsInContract=Latest %s contracted products/services +BoxLastSupplierBills=Latest Vendor invoices +BoxLastCustomerBills=Latest Customer invoices +BoxOldestUnpaidCustomerBills=Oldest unpaid customer invoices +BoxOldestUnpaidSupplierBills=Oldest unpaid vendor invoices +BoxLastProposals=Latest commercial proposals +BoxLastProspects=Latest modified prospects +BoxLastCustomers=Latest modified customers +BoxLastSuppliers=Latest modified suppliers +BoxLastCustomerOrders=Latest sales orders +BoxLastActions=Latest actions +BoxLastContracts=Latest contracts +BoxLastContacts=Latest contacts/addresses +BoxLastMembers=Latest members +BoxFicheInter=Latest interventions +BoxCurrentAccounts=Open accounts balance +BoxTitleMemberNextBirthdays=Birthdays of this month (members) +BoxTitleLastRssInfos=Latest %s news from %s +BoxTitleLastProducts=Products/Services: last %s modified +BoxTitleProductsAlertStock=Products: stock alert +BoxTitleLastSuppliers=Latest %s recorded suppliers +BoxTitleLastModifiedSuppliers=Vendors: last %s modified +BoxTitleLastModifiedCustomers=Customers: last %s modified +BoxTitleLastCustomersOrProspects=Latest %s customers or prospects +BoxTitleLastCustomerBills=Latest %s modified Customer invoices +BoxTitleLastSupplierBills=Latest %s modified Vendor invoices +BoxTitleLastModifiedProspects=Prospects: last %s modified +BoxTitleLastModifiedMembers=Latest %s members +BoxTitleLastFicheInter=Latest %s modified interventions +BoxTitleOldestUnpaidCustomerBills=Customer Invoices: oldest %s unpaid +BoxTitleOldestUnpaidSupplierBills=Vendor Invoices: oldest %s unpaid +BoxTitleCurrentAccounts=Open Accounts: balances +BoxTitleSupplierOrdersAwaitingReception=Supplier orders awaiting reception +BoxTitleLastModifiedContacts=Contacts/Addresses: last %s modified +BoxMyLastBookmarks=Bookmarks: latest %s +BoxOldestExpiredServices=Oldest active expired services +BoxLastExpiredServices=Latest %s oldest contacts with active expired services +BoxTitleLastActionsToDo=Latest %s actions to do +BoxTitleLastContracts=Latest %s modified contracts +BoxTitleLastModifiedDonations=Latest %s modified donations +BoxTitleLastModifiedExpenses=Latest %s modified expense reports +BoxTitleLatestModifiedBoms=Latest %s modified BOMs +BoxTitleLatestModifiedMos=Latest %s modified Manufacturing Orders +BoxGlobalActivity=Global activity (invoices, proposals, orders) +BoxGoodCustomers=Good customers +BoxTitleGoodCustomers=%s Good customers +FailedToRefreshDataInfoNotUpToDate=Failed to refresh RSS flux. Latest successful refresh date: %s +LastRefreshDate=Latest refresh date +NoRecordedBookmarks=No bookmarks defined. +ClickToAdd=Click here to add. +NoRecordedCustomers=No recorded customers +NoRecordedContacts=No recorded contacts +NoActionsToDo=No actions to do +NoRecordedOrders=No recorded sales orders +NoRecordedProposals=No recorded proposals +NoRecordedInvoices=No recorded customer invoices +NoUnpaidCustomerBills=No unpaid customer invoices +NoUnpaidSupplierBills=No unpaid vendor invoices +NoModifiedSupplierBills=No recorded vendor invoices +NoRecordedProducts=No recorded products/services +NoRecordedProspects=No recorded prospects +NoContractedProducts=No products/services contracted +NoRecordedContracts=No recorded contracts +NoRecordedInterventions=No recorded interventions +BoxLatestSupplierOrders=Latest purchase orders +BoxLatestSupplierOrdersAwaitingReception=Latest Purchase Orders (with a pending reception) +NoSupplierOrder=No recorded purchase order +BoxCustomersInvoicesPerMonth=Customer Invoices per month +BoxSuppliersInvoicesPerMonth=Vendor Invoices per month +BoxCustomersOrdersPerMonth=Sales Orders per month +BoxSuppliersOrdersPerMonth=Vendor Orders per month +BoxProposalsPerMonth=Proposals per month +NoTooLowStockProducts=No products are under the low stock limit +BoxProductDistribution=Products/Services Distribution +ForObject=On %s +BoxTitleLastModifiedSupplierBills=Vendor Invoices: last %s modified +BoxTitleLatestModifiedSupplierOrders=Vendor Orders: last %s modified +BoxTitleLastModifiedCustomerBills=Customer Invoices: last %s modified +BoxTitleLastModifiedCustomerOrders=Sales Orders: last %s modified +BoxTitleLastModifiedPropals=Latest %s modified proposals +ForCustomersInvoices=Customers invoices +ForCustomersOrders=Customers orders +ForProposals=Proposals +LastXMonthRolling=The latest %s month rolling +ChooseBoxToAdd=Add widget to your dashboard +BoxAdded=Widget was added in your dashboard +BoxTitleUserBirthdaysOfMonth=Birthdays of this month (users) +BoxLastManualEntries=Last manual entries in accountancy +BoxTitleLastManualEntries=%s latest manual entries +NoRecordedManualEntries=No manual entries record in accountancy +BoxSuspenseAccount=Count accountancy operation with suspense account +BoxTitleSuspenseAccount=Number of unallocated lines +NumberOfLinesInSuspenseAccount=Number of line in suspense account +SuspenseAccountNotDefined=Suspense account isn't defined +BoxLastCustomerShipments=Last customer shipments +BoxTitleLastCustomerShipments=Latest %s customer shipments +NoRecordedShipments=No recorded customer shipment diff --git a/htdocs/langs/ne_NP/cashdesk.lang b/htdocs/langs/ne_NP/cashdesk.lang new file mode 100644 index 00000000000..0903a3d10bc --- /dev/null +++ b/htdocs/langs/ne_NP/cashdesk.lang @@ -0,0 +1,110 @@ +# Language file - Source file is en_US - cashdesk +CashDeskMenu=Point of sale +CashDesk=Point of sale +CashDeskBankCash=Bank account (cash) +CashDeskBankCB=Bank account (card) +CashDeskBankCheque=Bank account (cheque) +CashDeskWarehouse=Warehouse +CashdeskShowServices=Selling services +CashDeskProducts=Products +CashDeskStock=Stock +CashDeskOn=on +CashDeskThirdParty=Third party +ShoppingCart=Shopping cart +NewSell=New sell +AddThisArticle=Add this article +RestartSelling=Go back on sell +SellFinished=Sale complete +PrintTicket=Print ticket +SendTicket=Send ticket +NoProductFound=No article found +ProductFound=product found +NoArticle=No article +Identification=Identification +Article=Article +Difference=Difference +TotalTicket=Total ticket +NoVAT=No VAT for this sale +Change=Excess received +BankToPay=Account for payment +ShowCompany=Show company +ShowStock=Show warehouse +DeleteArticle=Click to remove this article +FilterRefOrLabelOrBC=Search (Ref/Label) +UserNeedPermissionToEditStockToUsePos=You ask to decrease stock on invoice creation, so user that uses POS needs to have permission to edit stock. +DolibarrReceiptPrinter=Dolibarr Receipt Printer +PointOfSale=Point of Sale +PointOfSaleShort=POS +CloseBill=Close Bill +Floors=Floors +Floor=Floor +AddTable=Add table +Place=Place +TakeposConnectorNecesary='TakePOS Connector' required +OrderPrinters=Order printers +SearchProduct=Search product +Receipt=Receipt +Header=Header +Footer=Footer +AmountAtEndOfPeriod=Amount at end of period (day, month or year) +TheoricalAmount=Theorical amount +RealAmount=Real amount +CashFence=Cash fence +CashFenceDone=Cash fence done for the period +NbOfInvoices=Nb of invoices +Paymentnumpad=Type of Pad to enter payment +Numberspad=Numbers Pad +BillsCoinsPad=Coins and banknotes Pad +DolistorePosCategory=TakePOS modules and other POS solutions for Dolibarr +TakeposNeedsCategories=TakePOS needs product categories to work +OrderNotes=Order Notes +CashDeskBankAccountFor=Default account to use for payments in +NoPaimementModesDefined=No paiment mode defined in TakePOS configuration +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts +EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant +ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? +ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? +History=History +ValidateAndClose=Validate and close +Terminal=Terminal +NumberOfTerminals=Number of Terminals +TerminalSelect=Select terminal you want to use: +POSTicket=POS Ticket +POSTerminal=POS Terminal +POSModule=POS Module +BasicPhoneLayout=Use basic layout for phones +SetupOfTerminalNotComplete=Setup of terminal %s is not complete +DirectPayment=Direct payment +DirectPaymentButton=Direct cash payment button +InvoiceIsAlreadyValidated=Invoice is already validated +NoLinesToBill=No lines to bill +CustomReceipt=Custom Receipt +ReceiptName=Receipt Name +ProductSupplements=Product Supplements +SupplementCategory=Supplement category +ColorTheme=Color theme +Colorful=Colorful +HeadBar=Head Bar +SortProductField=Field for sorting products +Browser=Browser +BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. +PrintMethod=Print method +ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. +ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for POS sales +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use +BarRestaurant=Bar Restaurant +AutoOrder=Customer auto order diff --git a/htdocs/langs/ne_NP/categories.lang b/htdocs/langs/ne_NP/categories.lang new file mode 100644 index 00000000000..30bace0574c --- /dev/null +++ b/htdocs/langs/ne_NP/categories.lang @@ -0,0 +1,89 @@ +# Dolibarr language file - Source file is en_US - categories +Rubrique=Tag/Category +Rubriques=Tags/Categories +RubriquesTransactions=Tags/Categories of transactions +categories=tags/categories +NoCategoryYet=No tag/category of this type created +In=In +AddIn=Add in +modify=modify +Classify=Classify +CategoriesArea=Tags/Categories area +ProductsCategoriesArea=Products/Services tags/categories area +SuppliersCategoriesArea=Vendors tags/categories area +CustomersCategoriesArea=Customers tags/categories area +MembersCategoriesArea=Members tags/categories area +ContactsCategoriesArea=Contacts tags/categories area +AccountsCategoriesArea=Accounts tags/categories area +ProjectsCategoriesArea=Projects tags/categories area +UsersCategoriesArea=Users tags/categories area +SubCats=Sub-categories +CatList=List of tags/categories +NewCategory=New tag/category +ModifCat=Modify tag/category +CatCreated=Tag/category created +CreateCat=Create tag/category +CreateThisCat=Create this tag/category +NoSubCat=No subcategory. +SubCatOf=Subcategory +FoundCats=Found tags/categories +ImpossibleAddCat=Impossible to add the tag/category %s +WasAddedSuccessfully=%s was added successfully. +ObjectAlreadyLinkedToCategory=Element is already linked to this tag/category. +ProductIsInCategories=Product/service is linked to following tags/categories +CompanyIsInCustomersCategories=This third party is linked to following customers/prospects tags/categories +CompanyIsInSuppliersCategories=This third party is linked to following vendors tags/categories +MemberIsInCategories=This member is linked to following members tags/categories +ContactIsInCategories=This contact is linked to following contacts tags/categories +ProductHasNoCategory=This product/service is not in any tags/categories +CompanyHasNoCategory=This third party is not in any tags/categories +MemberHasNoCategory=This member is not in any tags/categories +ContactHasNoCategory=This contact is not in any tags/categories +ProjectHasNoCategory=This project is not in any tags/categories +ClassifyInCategory=Add to tag/category +NotCategorized=Without tag/category +CategoryExistsAtSameLevel=This category already exists with this ref +ContentsVisibleByAllShort=Contents visible by all +ContentsNotVisibleByAllShort=Contents not visible by all +DeleteCategory=Delete tag/category +ConfirmDeleteCategory=Are you sure you want to delete this tag/category? +NoCategoriesDefined=No tag/category defined +SuppliersCategoryShort=Vendors tag/category +CustomersCategoryShort=Customers tag/category +ProductsCategoryShort=Products tag/category +MembersCategoryShort=Members tag/category +SuppliersCategoriesShort=Vendors tags/categories +CustomersCategoriesShort=Customers tags/categories +ProspectsCategoriesShort=Prospects tags/categories +CustomersProspectsCategoriesShort=Cust./Prosp. tags/categories +ProductsCategoriesShort=Products tags/categories +MembersCategoriesShort=Members tags/categories +ContactCategoriesShort=Contacts tags/categories +AccountsCategoriesShort=Accounts tags/categories +ProjectsCategoriesShort=Projects tags/categories +UsersCategoriesShort=Users tags/categories +StockCategoriesShort=Warehouse tags/categories +ThisCategoryHasNoItems=This category does not contain any items. +CategId=Tag/category id +CatSupList=List of vendor tags/categories +CatCusList=List of customer/prospect tags/categories +CatProdList=List of products tags/categories +CatMemberList=List of members tags/categories +CatContactList=List of contact tags/categories +CatSupLinks=Links between suppliers and tags/categories +CatCusLinks=Links between customers/prospects and tags/categories +CatContactsLinks=Links between contacts/addresses and tags/categories +CatProdLinks=Links between products/services and tags/categories +CatProJectLinks=Links between projects and tags/categories +DeleteFromCat=Remove from tags/category +ExtraFieldsCategories=Complementary attributes +CategoriesSetup=Tags/categories setup +CategorieRecursiv=Link with parent tag/category automatically +CategorieRecursivHelp=If option is on, when you add a product into a subcategory, product will also be added into the parent category. +AddProductServiceIntoCategory=Add the following product/service +ShowCategory=Show tag/category +ByDefaultInList=By default in list +ChooseCategory=Choose category +StocksCategoriesArea=Warehouses Categories Area +ActionCommCategoriesArea=Events Categories Area +UseOrOperatorForCategories=Use or operator for categories diff --git a/htdocs/langs/ne_NP/commercial.lang b/htdocs/langs/ne_NP/commercial.lang new file mode 100644 index 00000000000..10c536e0d48 --- /dev/null +++ b/htdocs/langs/ne_NP/commercial.lang @@ -0,0 +1,80 @@ +# Dolibarr language file - Source file is en_US - commercial +Commercial=Commerce +CommercialArea=Commerce area +Customer=Customer +Customers=Customers +Prospect=Prospect +Prospects=Prospects +DeleteAction=Delete an event +NewAction=New event +AddAction=Create event +AddAnAction=Create an event +AddActionRendezVous=Create a Rendez-vous event +ConfirmDeleteAction=Are you sure you want to delete this event? +CardAction=Event card +ActionOnCompany=Related company +ActionOnContact=Related contact +TaskRDVWith=Meeting with %s +ShowTask=Show task +ShowAction=Show event +ActionsReport=Events report +ThirdPartiesOfSaleRepresentative=Third parties with sales representative +SaleRepresentativesOfThirdParty=Sales representatives of third party +SalesRepresentative=Sales representative +SalesRepresentatives=Sales representatives +SalesRepresentativeFollowUp=Sales representative (follow-up) +SalesRepresentativeSignature=Sales representative (signature) +NoSalesRepresentativeAffected=No particular sales representative assigned +ShowCustomer=Show customer +ShowProspect=Show prospect +ListOfProspects=List of prospects +ListOfCustomers=List of customers +LastDoneTasks=Latest %s completed actions +LastActionsToDo=Oldest %s not completed actions +DoneAndToDoActions=Completed and To do events +DoneActions=Completed events +ToDoActions=Incomplete events +SendPropalRef=Submission of commercial proposal %s +SendOrderRef=Submission of order %s +StatusNotApplicable=Not applicable +StatusActionToDo=To do +StatusActionDone=Complete +StatusActionInProcess=In process +TasksHistoryForThisContact=Events for this contact +LastProspectDoNotContact=Do not contact +LastProspectNeverContacted=Never contacted +LastProspectToContact=To contact +LastProspectContactInProcess=Contact in process +LastProspectContactDone=Contact done +ActionAffectedTo=Event assigned to +ActionDoneBy=Event done by +ActionAC_TEL=Phone call +ActionAC_FAX=Send fax +ActionAC_PROP=Send proposal by mail +ActionAC_EMAIL=Send Email +ActionAC_EMAIL_IN=Reception of Email +ActionAC_RDV=Meetings +ActionAC_INT=Intervention on site +ActionAC_FAC=Send customer invoice by mail +ActionAC_REL=Send customer invoice by mail (reminder) +ActionAC_CLO=Close +ActionAC_EMAILING=Send mass email +ActionAC_COM=Send sales order by mail +ActionAC_SHIP=Send shipping by mail +ActionAC_SUP_ORD=Send purchase order by mail +ActionAC_SUP_INV=Send vendor invoice by mail +ActionAC_OTH=Other +ActionAC_OTH_AUTO=Automatically inserted events +ActionAC_MANUAL=Manually inserted events +ActionAC_AUTO=Automatically inserted events +ActionAC_OTH_AUTOShort=Auto +Stats=Sales statistics +StatusProsp=Prospect status +DraftPropals=Draft commercial proposals +NoLimit=No limit +ToOfferALinkForOnlineSignature=Link for online signature +WelcomeOnOnlineSignaturePage=Welcome to the page to accept commercial proposals from %s +ThisScreenAllowsYouToSignDocFrom=This screen allow you to accept and sign, or refuse, a quote/commercial proposal +ThisIsInformationOnDocumentToSign=This is information on document to accept or refuse +SignatureProposalRef=Signature of quote/commercial proposal %s +FeatureOnlineSignDisabled=Feature for online signing disabled or document generated before the feature was enabled diff --git a/htdocs/langs/ne_NP/companies.lang b/htdocs/langs/ne_NP/companies.lang new file mode 100644 index 00000000000..0fad58c9389 --- /dev/null +++ b/htdocs/langs/ne_NP/companies.lang @@ -0,0 +1,458 @@ +# Dolibarr language file - Source file is en_US - companies +ErrorCompanyNameAlreadyExists=Company name %s already exists. Choose another one. +ErrorSetACountryFirst=Set the country first +SelectThirdParty=Select a third party +ConfirmDeleteCompany=Are you sure you want to delete this company and all inherited information? +DeleteContact=Delete a contact/address +ConfirmDeleteContact=Are you sure you want to delete this contact and all inherited information? +MenuNewThirdParty=New Third Party +MenuNewCustomer=New Customer +MenuNewProspect=New Prospect +MenuNewSupplier=New Vendor +MenuNewPrivateIndividual=New private individual +NewCompany=New company (prospect, customer, vendor) +NewThirdParty=New Third Party (prospect, customer, vendor) +CreateDolibarrThirdPartySupplier=Create a third party (vendor) +CreateThirdPartyOnly=Create third party +CreateThirdPartyAndContact=Create a third party + a child contact +ProspectionArea=Prospection area +IdThirdParty=Id third party +IdCompany=Company Id +IdContact=Contact Id +Contacts=Contacts/Addresses +ThirdPartyContacts=Third-party contacts +ThirdPartyContact=Third-party contact/address +Company=Company +CompanyName=Company name +AliasNames=Alias name (commercial, trademark, ...) +AliasNameShort=Alias Name +Companies=Companies +CountryIsInEEC=Country is inside the European Economic Community +PriceFormatInCurrentLanguage=Price display format in the current language and currency +ThirdPartyName=Third-party name +ThirdPartyEmail=Third-party email +ThirdParty=Third-party +ThirdParties=Third-parties +ThirdPartyProspects=Prospects +ThirdPartyProspectsStats=Prospects +ThirdPartyCustomers=Customers +ThirdPartyCustomersStats=Customers +ThirdPartyCustomersWithIdProf12=Customers with %s or %s +ThirdPartySuppliers=Vendors +ThirdPartyType=Third-party type +Individual=Private individual +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=Parent company +Subsidiaries=Subsidiaries +ReportByMonth=Report by month +ReportByCustomers=Report by customer +ReportByQuarter=Report by rate +CivilityCode=Civility code +RegisteredOffice=Registered office +Lastname=Last name +Firstname=First name +PostOrFunction=Job position +UserTitle=Title +NatureOfThirdParty=Nature of Third party +NatureOfContact=Nature of Contact +Address=Address +State=State/Province +StateCode=State/Province code +StateShort=State +Region=Region +Region-State=Region - State +Country=Country +CountryCode=Country code +CountryId=Country id +Phone=Phone +PhoneShort=Phone +Skype=Skype +Call=Call +Chat=Chat +PhonePro=Prof. phone +PhonePerso=Pers. phone +PhoneMobile=Mobile +No_Email=Refuse bulk emailings +Fax=Fax +Zip=Zip Code +Town=City +Web=Web +Poste= Position +DefaultLang=Language default +VATIsUsed=Sales tax used +VATIsUsedWhenSelling=This defines if this third party includes a sale tax or not when it makes an invoice to its own customers +VATIsNotUsed=Sales tax is not used +CopyAddressFromSoc=Copy address from third-party details +ThirdpartyNotCustomerNotSupplierSoNoRef=Third party neither customer nor vendor, no available referring objects +ThirdpartyIsNeitherCustomerNorClientSoCannotHaveDiscounts=Third party neither customer nor vendor, discounts are not available +PaymentBankAccount=Payment bank account +OverAllProposals=Proposals +OverAllOrders=Orders +OverAllInvoices=Invoices +OverAllSupplierProposals=Price requests +##### Local Taxes ##### +LocalTax1IsUsed=Use second tax +LocalTax1IsUsedES= RE is used +LocalTax1IsNotUsedES= RE is not used +LocalTax2IsUsed=Use third tax +LocalTax2IsUsedES= IRPF is used +LocalTax2IsNotUsedES= IRPF is not used +WrongCustomerCode=Customer code invalid +WrongSupplierCode=Vendor code invalid +CustomerCodeModel=Customer code model +SupplierCodeModel=Vendor code model +Gencod=Barcode +##### Professional ID ##### +ProfId1Short=Prof. id 1 +ProfId2Short=Prof. id 2 +ProfId3Short=Prof. id 3 +ProfId4Short=Prof. id 4 +ProfId5Short=Prof. id 5 +ProfId6Short=Prof. id 6 +ProfId1=Professional ID 1 +ProfId2=Professional ID 2 +ProfId3=Professional ID 3 +ProfId4=Professional ID 4 +ProfId5=Professional ID 5 +ProfId6=Professional ID 6 +ProfId1AR=Prof Id 1 (CUIT/CUIL) +ProfId2AR=Prof Id 2 (Revenu brutes) +ProfId3AR=- +ProfId4AR=- +ProfId5AR=- +ProfId6AR=- +ProfId1AT=Prof Id 1 (USt.-IdNr) +ProfId2AT=Prof Id 2 (USt.-Nr) +ProfId3AT=Prof Id 3 (Handelsregister-Nr.) +ProfId4AT=- +ProfId5AT=- +ProfId6AT=- +ProfId1AU=Prof Id 1 (ABN) +ProfId2AU=- +ProfId3AU=- +ProfId4AU=- +ProfId5AU=- +ProfId6AU=- +ProfId1BE=Prof Id 1 (Professional number) +ProfId2BE=- +ProfId3BE=- +ProfId4BE=- +ProfId5BE=- +ProfId6BE=- +ProfId1BR=- +ProfId2BR=IE (Inscricao Estadual) +ProfId3BR=IM (Inscricao Municipal) +ProfId4BR=CPF +#ProfId5BR=CNAE +#ProfId6BR=INSS +ProfId1CH=- +ProfId2CH=- +ProfId3CH=Prof Id 1 (Federal number) +ProfId4CH=Prof Id 2 (Commercial Record number) +ProfId5CH=- +ProfId6CH=- +ProfId1CL=Prof Id 1 (R.U.T.) +ProfId2CL=- +ProfId3CL=- +ProfId4CL=- +ProfId5CL=- +ProfId6CL=- +ProfId1CO=Prof Id 1 (R.U.T.) +ProfId2CO=- +ProfId3CO=- +ProfId4CO=- +ProfId5CO=- +ProfId6CO=- +ProfId1DE=Prof Id 1 (USt.-IdNr) +ProfId2DE=Prof Id 2 (USt.-Nr) +ProfId3DE=Prof Id 3 (Handelsregister-Nr.) +ProfId4DE=- +ProfId5DE=- +ProfId6DE=- +ProfId1ES=Prof Id 1 (CIF/NIF) +ProfId2ES=Prof Id 2 (Social security number) +ProfId3ES=Prof Id 3 (CNAE) +ProfId4ES=Prof Id 4 (Collegiate number) +ProfId5ES=- +ProfId6ES=- +ProfId1FR=Prof Id 1 (SIREN) +ProfId2FR=Prof Id 2 (SIRET) +ProfId3FR=Prof Id 3 (NAF, old APE) +ProfId4FR=Prof Id 4 (RCS/RM) +ProfId5FR=- +ProfId6FR=- +ProfId1GB=Registration Number +ProfId2GB=- +ProfId3GB=SIC +ProfId4GB=- +ProfId5GB=- +ProfId6GB=- +ProfId1HN=Id prof. 1 (RTN) +ProfId2HN=- +ProfId3HN=- +ProfId4HN=- +ProfId5HN=- +ProfId6HN=- +ProfId1IN=Prof Id 1 (TIN) +ProfId2IN=Prof Id 2 (PAN) +ProfId3IN=Prof Id 3 (SRVC TAX) +ProfId4IN=Prof Id 4 +ProfId5IN=Prof Id 5 +ProfId6IN=- +ProfId1LU=Id. prof. 1 (R.C.S. Luxembourg) +ProfId2LU=Id. prof. 2 (Business permit) +ProfId3LU=- +ProfId4LU=- +ProfId5LU=- +ProfId6LU=- +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=Id. prof. 5 (I.C.E.) +ProfId6MA=- +ProfId1MX=Prof Id 1 (R.F.C). +ProfId2MX=Prof Id 2 (R..P. IMSS) +ProfId3MX=Prof Id 3 (Profesional Charter) +ProfId4MX=- +ProfId5MX=- +ProfId6MX=- +ProfId1NL=KVK nummer +ProfId2NL=- +ProfId3NL=- +ProfId4NL=Burgerservicenummer (BSN) +ProfId5NL=- +ProfId6NL=- +ProfId1PT=Prof Id 1 (NIPC) +ProfId2PT=Prof Id 2 (Social security number) +ProfId3PT=Prof Id 3 (Commercial Record number) +ProfId4PT=Prof Id 4 (Conservatory) +ProfId5PT=- +ProfId6PT=- +ProfId1SN=RC +ProfId2SN=NINEA +ProfId3SN=- +ProfId4SN=- +ProfId5SN=- +ProfId6SN=- +ProfId1TN=Prof Id 1 (RC) +ProfId2TN=Prof Id 2 (Fiscal matricule) +ProfId3TN=Prof Id 3 (Douane code) +ProfId4TN=Prof Id 4 (BAN) +ProfId5TN=- +ProfId6TN=- +ProfId1US=Prof Id (FEIN) +ProfId2US=- +ProfId3US=- +ProfId4US=- +ProfId5US=- +ProfId6US=- +ProfId1RO=Prof Id 1 (CUI) +ProfId2RO=Prof Id 2 (Nr. Înmatriculare) +ProfId3RO=Prof Id 3 (CAEN) +ProfId4RO=- +ProfId5RO=Prof Id 5 (EUID) +ProfId6RO=- +ProfId1RU=Prof Id 1 (OGRN) +ProfId2RU=Prof Id 2 (INN) +ProfId3RU=Prof Id 3 (KPP) +ProfId4RU=Prof Id 4 (OKPO) +ProfId5RU=- +ProfId6RU=- +ProfId1DZ=RC +ProfId2DZ=Art. +ProfId3DZ=NIF +ProfId4DZ=NIS +VATIntra=VAT ID +VATIntraShort=VAT ID +VATIntraSyntaxIsValid=Syntax is valid +VATReturn=VAT return +ProspectCustomer=Prospect / Customer +Prospect=Prospect +CustomerCard=Customer Card +Customer=Customer +CustomerRelativeDiscount=Relative customer discount +SupplierRelativeDiscount=Relative vendor discount +CustomerRelativeDiscountShort=Relative discount +CustomerAbsoluteDiscountShort=Absolute discount +CompanyHasRelativeDiscount=This customer has a default discount of %s%% +CompanyHasNoRelativeDiscount=This customer has no relative discount by default +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 +CompanyHasDownPaymentOrCommercialDiscount=This customer has discounts available (commercial, down payments) for %s %s +CompanyHasCreditNote=This customer still has credit notes for %s %s +HasNoAbsoluteDiscountFromSupplier=You have no discount credit available from this vendor +HasAbsoluteDiscountFromSupplier=You have discounts available (credits notes or down payments) for %s %s from this vendor +HasDownPaymentOrCommercialDiscountFromSupplier=You have discounts available (commercial, down payments) for %s %s from this vendor +HasCreditNoteFromSupplier=You have credit notes for %s %s from this vendor +CompanyHasNoAbsoluteDiscount=This customer has no discount credit available +CustomerAbsoluteDiscountAllUsers=Absolute customer discounts (granted by all users) +CustomerAbsoluteDiscountMy=Absolute customer discounts (granted by yourself) +SupplierAbsoluteDiscountAllUsers=Absolute vendor discounts (entered by all users) +SupplierAbsoluteDiscountMy=Absolute vendor discounts (entered by yourself) +DiscountNone=None +Vendor=Vendor +Supplier=Vendor +AddContact=Create contact +AddContactAddress=Create contact/address +EditContact=Edit contact +EditContactAddress=Edit contact/address +Contact=Contact +ContactId=Contact id +ContactsAddresses=Contacts/Addresses +FromContactName=Name: +NoContactDefinedForThirdParty=No contact defined for this third party +NoContactDefined=No contact defined +DefaultContact=Default contact/address +ContactByDefaultFor=Default contact/address for +AddThirdParty=Create third party +DeleteACompany=Delete a company +PersonalInformations=Personal data +AccountancyCode=Accounting account +CustomerCode=Customer Code +SupplierCode=Vendor Code +CustomerCodeShort=Customer Code +SupplierCodeShort=Vendor Code +CustomerCodeDesc=Customer Code, unique for all customers +SupplierCodeDesc=Vendor Code, unique for all vendors +RequiredIfCustomer=Required if third party is a customer or prospect +RequiredIfSupplier=Required if third party is a vendor +ValidityControledByModule=Validity controlled by module +ThisIsModuleRules=Rules for this module +ProspectToContact=Prospect to contact +CompanyDeleted=Company "%s" deleted from database. +ListOfContacts=List of contacts/addresses +ListOfContactsAddresses=List of contacts/addresses +ListOfThirdParties=List of Third Parties +ShowCompany=Third Party +ShowContact=Contact-Address +ContactsAllShort=All (No filter) +ContactType=Contact type +ContactForOrders=Order's contact +ContactForOrdersOrShipments=Order's or shipment's contact +ContactForProposals=Proposal's contact +ContactForContracts=Contract's contact +ContactForInvoices=Invoice's contact +NoContactForAnyOrder=This contact is not a contact for any order +NoContactForAnyOrderOrShipments=This contact is not a contact for any order or shipment +NoContactForAnyProposal=This contact is not a contact for any commercial proposal +NoContactForAnyContract=This contact is not a contact for any contract +NoContactForAnyInvoice=This contact is not a contact for any invoice +NewContact=New contact +NewContactAddress=New Contact/Address +MyContacts=My contacts +Capital=Capital +CapitalOf=Capital of %s +EditCompany=Edit company +ThisUserIsNot=This user is not a prospect, customer or vendor +VATIntraCheck=Check +VATIntraCheckDesc=The VAT ID must include the country prefix. The link %s uses the European VAT checker service (VIES) which requires internet access from the Dolibarr server. +VATIntraCheckURL=http://ec.europa.eu/taxation_customs/vies/vieshome.do +VATIntraCheckableOnEUSite=Check the intra-Community VAT ID on the European Commission website +VATIntraManualCheck=You can also check manually on the European Commission website %s +ErrorVATCheckMS_UNAVAILABLE=Check not possible. Check service is not provided by the member state (%s). +NorProspectNorCustomer=Not prospect, nor customer +JuridicalStatus=Legal Entity Type +Staff=Employees +ProspectLevelShort=Potential +ProspectLevel=Prospect potential +ContactPrivate=Private +ContactPublic=Shared +ContactVisibility=Visibility +ContactOthers=Other +OthersNotLinkedToThirdParty=Others, not linked to a third party +ProspectStatus=Prospect status +PL_NONE=None +PL_UNKNOWN=Unknown +PL_LOW=Low +PL_MEDIUM=Medium +PL_HIGH=High +TE_UNKNOWN=- +TE_STARTUP=Startup +TE_GROUP=Large company +TE_MEDIUM=Medium company +TE_ADMIN=Governmental +TE_SMALL=Small company +TE_RETAIL=Retailer +TE_WHOLE=Wholesaler +TE_PRIVATE=Private individual +TE_OTHER=Other +StatusProspect-1=Do not contact +StatusProspect0=Never contacted +StatusProspect1=To be contacted +StatusProspect2=Contact in process +StatusProspect3=Contact done +ChangeDoNotContact=Change status to 'Do not contact' +ChangeNeverContacted=Change status to 'Never contacted' +ChangeToContact=Change status to 'To be contacted' +ChangeContactInProcess=Change status to 'Contact in process' +ChangeContactDone=Change status to 'Contact done' +ProspectsByStatus=Prospects by status +NoParentCompany=None +ExportCardToFormat=Export card to format +ContactNotLinkedToCompany=Contact not linked to any third party +DolibarrLogin=Dolibarr login +NoDolibarrAccess=No Dolibarr access +ExportDataset_company_1=Third-parties (companies/foundations/physical people) and their properties +ExportDataset_company_2=Contacts and their properties +ImportDataset_company_1=Third-parties and their properties +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) +PriceLevel=Price Level +PriceLevelLabels=Price Level Labels +DeliveryAddress=Delivery address +AddAddress=Add address +SupplierCategory=Vendor category +JuridicalStatus200=Independent +DeleteFile=Delete file +ConfirmDeleteFile=Are you sure you want to delete this file? +AllocateCommercial=Assigned to sales representative +Organization=Organization +FiscalYearInformation=Fiscal Year +FiscalMonthStart=Starting month of the fiscal year +SocialNetworksInformation=Social networks +SocialNetworksFacebookURL=Facebook URL +SocialNetworksTwitterURL=Twitter URL +SocialNetworksLinkedinURL=Linkedin URL +SocialNetworksInstagramURL=Instagram URL +SocialNetworksYoutubeURL=Youtube URL +SocialNetworksGithubURL=Github URL +YouMustAssignUserMailFirst=You must create an email for this user prior to being able to add an email notification. +YouMustCreateContactFirst=To be able to add email notifications, you must first define contacts with valid emails for the third party +ListSuppliersShort=List of Vendors +ListProspectsShort=List of Prospects +ListCustomersShort=List of Customers +ThirdPartiesArea=Third Parties/Contacts +LastModifiedThirdParties=Last %s modified Third Parties +UniqueThirdParties=Total of Third Parties +InActivity=Open +ActivityCeased=Closed +ThirdPartyIsClosed=Third party is closed +ProductsIntoElements=List of products/services into %s +CurrentOutstandingBill=Current outstanding bill +OutstandingBill=Max. for outstanding bill +OutstandingBillReached=Max. for outstanding bill reached +OrderMinAmount=Minimum amount for order +MonkeyNumRefModelDesc=Return a number with the format %syymm-nnnn for the customer code and %syymm-nnnn for the vendor code where yy is year, mm is month and nnnn is a sequence with no break and no return to 0. +LeopardNumRefModelDesc=The code is free. This code can be modified at any time. +ManagingDirectors=Manager(s) name (CEO, director, president...) +MergeOriginThirdparty=Duplicate third party (third party you want to delete) +MergeThirdparties=Merge third parties +ConfirmMergeThirdparties=Are you sure you want to merge this third party into the current one? All linked objects (invoices, orders, ...) will be moved to current third party, then the third party will be deleted. +ThirdpartiesMergeSuccess=Third parties have been merged +SaleRepresentativeLogin=Login of sales representative +SaleRepresentativeFirstname=First name of sales representative +SaleRepresentativeLastname=Last name of sales representative +ErrorThirdpartiesMerge=There was an error when deleting the third parties. Please check the log. Changes have been reverted. +NewCustomerSupplierCodeProposed=Customer or Vendor code already used, a new code is suggested +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address +#Imports +PaymentTypeCustomer=Payment Type - Customer +PaymentTermsCustomer=Payment Terms - Customer +PaymentTypeSupplier=Payment Type - Vendor +PaymentTermsSupplier=Payment Term - Vendor +PaymentTypeBoth=Payment Type - Customer and Vendor +MulticurrencyUsed=Use Multicurrency +MulticurrencyCurrency=Currency diff --git a/htdocs/langs/ne_NP/compta.lang b/htdocs/langs/ne_NP/compta.lang new file mode 100644 index 00000000000..8a8c837ac87 --- /dev/null +++ b/htdocs/langs/ne_NP/compta.lang @@ -0,0 +1,266 @@ +# Dolibarr language file - Source file is en_US - compta +MenuFinancial=Billing | Payment +TaxModuleSetupToModifyRules=Go to Taxes module setup to modify rules for calculation +TaxModuleSetupToModifyRulesLT=Go to Company setup to modify rules for calculation +OptionMode=Option for accountancy +OptionModeTrue=Option Incomes-Expenses +OptionModeVirtual=Option Claims-Debts +OptionModeTrueDesc=In this context, the turnover is calculated over payments (date of payments). The validity of the figures is assured only if the book-keeping is scrutinized through the input/output on the accounts via invoices. +OptionModeVirtualDesc=In this context, the turnover is calculated over invoices (date of validation). When these invoices are due, whether they have been paid or not, they are listed in the turnover output. +FeatureIsSupportedInInOutModeOnly=Feature only available in CREDITS-DEBTS accountancy mode (See Accountancy module configuration) +VATReportBuildWithOptionDefinedInModule=Amounts shown here are calculated using rules defined by Tax module setup. +LTReportBuildWithOptionDefinedInModule=Amounts shown here are calculated using rules defined by Company setup. +Param=Setup +RemainingAmountPayment=Amount payment remaining: +Account=Account +Accountparent=Parent account +Accountsparent=Parent accounts +Income=Income +Outcome=Expense +MenuReportInOut=Income / Expense +ReportInOut=Balance of income and expenses +ReportTurnover=Turnover invoiced +ReportTurnoverCollected=Turnover collected +PaymentsNotLinkedToInvoice=Payments not linked to any invoice, so not linked to any third party +PaymentsNotLinkedToUser=Payments not linked to any user +Profit=Profit +AccountingResult=Accounting result +BalanceBefore=Balance (before) +Balance=Balance +Debit=Debit +Credit=Credit +Piece=Accounting Doc. +AmountHTVATRealReceived=Net collected +AmountHTVATRealPaid=Net paid +VATToPay=Tax sales +VATReceived=Tax received +VATToCollect=Tax purchases +VATSummary=Tax monthly +VATBalance=Tax Balance +VATPaid=Tax paid +LT1Summary=Tax 2 summary +LT2Summary=Tax 3 summary +LT1SummaryES=RE Balance +LT2SummaryES=IRPF Balance +LT1SummaryIN=CGST Balance +LT2SummaryIN=SGST Balance +LT1Paid=Tax 2 paid +LT2Paid=Tax 3 paid +LT1PaidES=RE Paid +LT2PaidES=IRPF Paid +LT1PaidIN=CGST Paid +LT2PaidIN=SGST Paid +LT1Customer=Tax 2 sales +LT1Supplier=Tax 2 purchases +LT1CustomerES=RE sales +LT1SupplierES=RE purchases +LT1CustomerIN=CGST sales +LT1SupplierIN=CGST purchases +LT2Customer=Tax 3 sales +LT2Supplier=Tax 3 purchases +LT2CustomerES=IRPF sales +LT2SupplierES=IRPF purchases +LT2CustomerIN=SGST sales +LT2SupplierIN=SGST purchases +VATCollected=VAT collected +StatusToPay=To pay +SpecialExpensesArea=Area for all special payments +SocialContribution=Social or fiscal tax +SocialContributions=Social or fiscal taxes +SocialContributionsDeductibles=Deductible social or fiscal taxes +SocialContributionsNondeductibles=Nondeductible social or fiscal taxes +LabelContrib=Label contribution +TypeContrib=Type contribution +MenuSpecialExpenses=Special expenses +MenuTaxAndDividends=Taxes and dividends +MenuSocialContributions=Social/fiscal taxes +MenuNewSocialContribution=New social/fiscal tax +NewSocialContribution=New social/fiscal tax +AddSocialContribution=Add social/fiscal tax +ContributionsToPay=Social/fiscal taxes to pay +AccountancyTreasuryArea=Billing and payment area +NewPayment=New payment +PaymentCustomerInvoice=Customer invoice payment +PaymentSupplierInvoice=vendor invoice payment +PaymentSocialContribution=Social/fiscal tax payment +PaymentVat=VAT payment +ListPayment=List of payments +ListOfCustomerPayments=List of customer payments +ListOfSupplierPayments=List of vendor payments +DateStartPeriod=Date start period +DateEndPeriod=Date end period +newLT1Payment=New tax 2 payment +newLT2Payment=New tax 3 payment +LT1Payment=Tax 2 payment +LT1Payments=Tax 2 payments +LT2Payment=Tax 3 payment +LT2Payments=Tax 3 payments +newLT1PaymentES=New RE payment +newLT2PaymentES=New IRPF payment +LT1PaymentES=RE Payment +LT1PaymentsES=RE Payments +LT2PaymentES=IRPF Payment +LT2PaymentsES=IRPF Payments +VATPayment=Sales tax payment +VATPayments=Sales tax payments +VATRefund=Sales tax refund +NewVATPayment=New sales tax payment +NewLocalTaxPayment=New tax %s payment +Refund=Refund +SocialContributionsPayments=Social/fiscal taxes payments +ShowVatPayment=Show VAT payment +TotalToPay=Total to pay +BalanceVisibilityDependsOnSortAndFilters=Balance is visible in this list only if table is sorted ascending on %s and filtered for 1 bank account +CustomerAccountancyCode=Customer accounting code +SupplierAccountancyCode=Vendor accounting code +CustomerAccountancyCodeShort=Cust. account. code +SupplierAccountancyCodeShort=Sup. account. code +AccountNumber=Account number +NewAccountingAccount=New account +Turnover=Turnover invoiced +TurnoverCollected=Turnover collected +SalesTurnoverMinimum=Minimum turnover +ByExpenseIncome=By expenses & incomes +ByThirdParties=By third parties +ByUserAuthorOfInvoice=By invoice author +CheckReceipt=Check deposit +CheckReceiptShort=Check deposit +LastCheckReceiptShort=Latest %s check receipts +NewCheckReceipt=New discount +NewCheckDeposit=New check deposit +NewCheckDepositOn=Create receipt for deposit on account: %s +NoWaitingChecks=No checks awaiting deposit. +DateChequeReceived=Check reception date +NbOfCheques=No. of checks +PaySocialContribution=Pay a social/fiscal tax +ConfirmPaySocialContribution=Are you sure you want to classify this social or fiscal tax as paid? +DeleteSocialContribution=Delete a social or fiscal tax payment +ConfirmDeleteSocialContribution=Are you sure you want to delete this social/fiscal tax payment? +ExportDataset_tax_1=Social and fiscal taxes and payments +CalcModeVATDebt=Mode %sVAT on commitment accounting%s. +CalcModeVATEngagement=Mode %sVAT on incomes-expenses%s. +CalcModeDebt=Analysis of known recorded invoices even if they are not yet accounted in ledger. +CalcModeEngagement=Analysis of known recorded payments, even if they are not yet accounted in Ledger. +CalcModeBookkeeping=Analysis of data journalized in Bookkeeping Ledger table. +CalcModeLT1= Mode %sRE on customer invoices - suppliers invoices%s +CalcModeLT1Debt=Mode %sRE on customer invoices%s +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=Balance of income and expenses, annual summary +AnnualSummaryInputOutputMode=Balance of income and expenses, annual summary +AnnualByCompanies=Balance of income and expenses, by predefined groups of account +AnnualByCompaniesDueDebtMode=Balance of income and expenses, detail by predefined groups, mode %sClaims-Debts%s said Commitment accounting. +AnnualByCompaniesInputOutputMode=Balance of income and expenses, detail by predefined groups, mode %sIncomes-Expenses%s said cash accounting. +SeeReportInInputOutputMode=See %sanalysis of payments%s for a calculation on actual payments made even if they are not yet accounted in Ledger. +SeeReportInDueDebtMode=See %sanalysis of invoices%s for a calculation based on known recorded invoices even if they are not yet accounted in Ledger. +SeeReportInBookkeepingMode=See %sBookeeping report%s for a calculation on Bookkeeping Ledger table +RulesAmountWithTaxIncluded=- Amounts shown are with all taxes included +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. +RulesResultInOut=- It includes the real payments made on invoices, expenses, VAT and salaries.
    - It is based on the payment dates of the invoices, expenses, VAT and salaries. The donation date for donation. +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    +RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    +RulesCATotalSaleJournal=It includes all credit lines from the Sale journal. +RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" +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 +DepositsAreIncluded=- Down payment invoices are included +LT1ReportByCustomers=Report tax 2 by third party +LT2ReportByCustomers=Report tax 3 by third party +LT1ReportByCustomersES=Report by third party RE +LT2ReportByCustomersES=Report by third party IRPF +VATReport=Sale tax report +VATReportByPeriods=Sale tax report by period +VATReportByRates=Sale tax report by rates +VATReportByThirdParties=Sale tax report by third parties +VATReportByCustomers=Sale tax report by customer +VATReportByCustomersInInputOutputMode=Report by the customer VAT collected and paid +VATReportByQuartersInInputOutputMode=Report by Sale tax rate of the tax collected and paid +LT1ReportByQuarters=Report tax 2 by rate +LT2ReportByQuarters=Report tax 3 by rate +LT1ReportByQuartersES=Report by RE rate +LT2ReportByQuartersES=Report by IRPF rate +SeeVATReportInInputOutputMode=See report %sVAT encasement%s for a standard calculation +SeeVATReportInDueDebtMode=See report %sVAT on flow%s for a calculation with an option on the flow +RulesVATInServices=- For services, the report includes the VAT regulations actually received or issued on the basis of the date of payment. +RulesVATInProducts=- For material assets, the report includes the VAT received or issued on the basis of the date of payment. +RulesVATDueServices=- For services, the report includes VAT invoices due, paid or not, based on the invoice date. +RulesVATDueProducts=- For material assets, the report includes the VAT invoices, based on the invoice date. +OptionVatInfoModuleComptabilite=Note: For material assets, it should use the date of delivery to be more fair. +ThisIsAnEstimatedValue=This is a preview, based on business events and not from the final ledger table, so final results may differ from this preview values +PercentOfInvoice=%%/invoice +NotUsedForGoods=Not used on goods +ProposalStats=Statistics on proposals +OrderStats=Statistics on orders +InvoiceStats=Statistics on bills +Dispatch=Dispatching +Dispatched=Dispatched +ToDispatch=To dispatch +ThirdPartyMustBeEditAsCustomer=Third party must be defined as a customer +SellsJournal=Sales Journal +PurchasesJournal=Purchases Journal +DescSellsJournal=Sales Journal +DescPurchasesJournal=Purchases Journal +CodeNotDef=Not defined +WarningDepositsNotIncluded=Down payment invoices are not included in this version with this accountancy module. +DatePaymentTermCantBeLowerThanObjectDate=Payment term date can't be lower than object date. +Pcg_version=Chart of accounts models +Pcg_type=Pcg type +Pcg_subtype=Pcg subtype +InvoiceLinesToDispatch=Invoice lines to dispatch +ByProductsAndServices=By product and service +RefExt=External ref +ToCreateAPredefinedInvoice=To create a template invoice, create a standard invoice, then, without validating it, click onto button "%s". +LinkedOrder=Link to order +Mode1=Method 1 +Mode2=Method 2 +CalculationRuleDesc=To calculate total VAT, there is two methods:
    Method 1 is rounding vat on each line, then summing them.
    Method 2 is summing all vat on each line, then rounding result.
    Final result may differs from few cents. Default mode is mode %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. +CalculationMode=Calculation mode +AccountancyJournal=Accounting code journal +ACCOUNTING_VAT_SOLD_ACCOUNT=Accounting account by default for VAT on sales (used if not defined on VAT dictionary setup) +ACCOUNTING_VAT_BUY_ACCOUNT=Accounting account by default for VAT on purchases (used if not defined on VAT dictionary setup) +ACCOUNTING_VAT_PAY_ACCOUNT=Accounting account by default for paying VAT +ACCOUNTING_ACCOUNT_CUSTOMER=Accounting account used for customer third parties +ACCOUNTING_ACCOUNT_CUSTOMER_Desc=The dedicated accounting account defined on third party card will be used for Subledger accounting only. This one will be used for General Ledger and as default value of Subledger accounting if dedicated customer accounting account on third party is not defined. +ACCOUNTING_ACCOUNT_SUPPLIER=Accounting account used for vendor third parties +ACCOUNTING_ACCOUNT_SUPPLIER_Desc=The dedicated accounting account defined on third party card will be used for Subledger accounting only. This one will be used for General Ledger and as default value of Subledger accounting if dedicated vendor accounting account on third party is not defined. +ConfirmCloneTax=Confirm the clone of a social/fiscal tax +CloneTaxForNextMonth=Clone it for next month +SimpleReport=Simple report +AddExtraReport=Extra reports (add foreign and national customer report) +OtherCountriesCustomersReport=Foreign customers report +BasedOnTwoFirstLettersOfVATNumberBeingDifferentFromYourCompanyCountry=Based on the two first letters of the VAT number being different from your own company's country code +SameCountryCustomersWithVAT=National customers report +BasedOnTwoFirstLettersOfVATNumberBeingTheSameAsYourCompanyCountry=Based on the two first letters of the VAT number being the same as your own company's country code +LinkedFichinter=Link to an intervention +ImportDataset_tax_contrib=Social/fiscal taxes +ImportDataset_tax_vat=Vat payments +ErrorBankAccountNotFound=Error: Bank account not found +FiscalPeriod=Accounting period +ListSocialContributionAssociatedProject=List of social contributions associated with the project +DeleteFromCat=Remove from accounting group +AccountingAffectation=Accounting assignment +LastDayTaxIsRelatedTo=Last day of period the tax is related to +VATDue=Sale tax claimed +ClaimedForThisPeriod=Claimed for the period +PaidDuringThisPeriod=Paid during this period +ByVatRate=By sale tax rate +TurnoverbyVatrate=Turnover invoiced by sale tax rate +TurnoverCollectedbyVatrate=Turnover collected by sale tax rate +PurchasebyVatrate=Purchase by sale tax rate +LabelToShow=Short label +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected +IncludeVarpaysInResults = Include various payments in reports +IncludeLoansInResults = Include loans in reports diff --git a/htdocs/langs/ne_NP/contracts.lang b/htdocs/langs/ne_NP/contracts.lang new file mode 100644 index 00000000000..47572c355ab --- /dev/null +++ b/htdocs/langs/ne_NP/contracts.lang @@ -0,0 +1,101 @@ +# Dolibarr language file - Source file is en_US - contracts +ContractsArea=Contracts area +ListOfContracts=List of contracts +AllContracts=All contracts +ContractCard=Contract card +ContractStatusNotRunning=Not running +ContractStatusDraft=Draft +ContractStatusValidated=Validated +ContractStatusClosed=Closed +ServiceStatusInitial=Not running +ServiceStatusRunning=Running +ServiceStatusNotLate=Running, not expired +ServiceStatusNotLateShort=Not expired +ServiceStatusLate=Running, expired +ServiceStatusLateShort=Expired +ServiceStatusClosed=Closed +ShowContractOfService=Show contract of service +Contracts=Contracts +ContractsSubscriptions=Contracts/Subscriptions +ContractsAndLine=Contracts and line of contracts +Contract=Contract +ContractLine=Contract line +Closing=Closing +NoContracts=No contracts +MenuServices=Services +MenuInactiveServices=Services not active +MenuRunningServices=Running services +MenuExpiredServices=Expired services +MenuClosedServices=Closed services +NewContract=New contract +NewContractSubscription=New contract/subscription +AddContract=Create contract +DeleteAContract=Delete a contract +ActivateAllOnContract=Activate all services +CloseAContract=Close a contract +ConfirmDeleteAContract=Are you sure you want to delete this contract and all its services? +ConfirmValidateContract=Are you sure you want to validate this contract under name %s? +ConfirmActivateAllOnContract=This will open all services (not yet active). Are you sure you want to open all services? +ConfirmCloseContract=This will close all services (active or not). Are you sure you want to close this contract? +ConfirmCloseService=Are you sure you want to close this service with date %s? +ValidateAContract=Validate a contract +ActivateService=Activate service +ConfirmActivateService=Are you sure you want to activate this service with date %s? +RefContract=Contract reference +DateContract=Contract date +DateServiceActivate=Service activation date +ListOfServices=List of services +ListOfInactiveServices=List of not active services +ListOfExpiredServices=List of expired active services +ListOfClosedServices=List of closed services +ListOfRunningServices=List of running services +NotActivatedServices=Inactive services (among validated contracts) +BoardNotActivatedServices=Services to activate among validated contracts +BoardNotActivatedServicesShort=Services to activate +LastContracts=Latest %s contracts +LastModifiedServices=Latest %s modified services +ContractStartDate=Start date +ContractEndDate=End date +DateStartPlanned=Planned start date +DateStartPlannedShort=Planned start date +DateEndPlanned=Planned end date +DateEndPlannedShort=Planned end date +DateStartReal=Real start date +DateStartRealShort=Real start date +DateEndReal=Real end date +DateEndRealShort=Real end date +CloseService=Close service +BoardRunningServices=Services running +BoardRunningServicesShort=Services running +BoardExpiredServices=Services expired +BoardExpiredServicesShort=Services expired +ServiceStatus=Status of service +DraftContracts=Drafts contracts +CloseRefusedBecauseOneServiceActive=Contract can't be closed as there is at least one open service on it +ActivateAllContracts=Activate all contract lines +CloseAllContracts=Close all contract lines +DeleteContractLine=Delete a contract line +ConfirmDeleteContractLine=Are you sure you want to delete this contract line? +MoveToAnotherContract=Move service into another contract. +ConfirmMoveToAnotherContract=I choosed new target contract and confirm I want to move this service into this contract. +ConfirmMoveToAnotherContractQuestion=Choose in which existing contract (of same third party), you want to move this service to? +PaymentRenewContractId=Renew contract line (number %s) +ExpiredSince=Expiration date +NoExpiredServices=No expired active services +ListOfServicesToExpireWithDuration=List of Services to expire in %s days +ListOfServicesToExpireWithDurationNeg=List of Services expired from more than %s days +ListOfServicesToExpire=List of Services to expire +NoteListOfYourExpiredServices=This list contains only services of contracts for third parties you are linked to as a sale representative. +StandardContractsTemplate=Standard contracts template +ContactNameAndSignature=For %s, name and signature: +OnlyLinesWithTypeServiceAreUsed=Only lines with type "Service" will be cloned. +ConfirmCloneContract=Are you sure you want to clone the contract %s? +LowerDateEndPlannedShort=Lower planned end date of active services +SendContractRef=Contract information __REF__ +OtherContracts=Other contracts +##### Types de contacts ##### +TypeContact_contrat_internal_SALESREPSIGN=Sales representative signing contract +TypeContact_contrat_internal_SALESREPFOLL=Sales representative following-up contract +TypeContact_contrat_external_BILLING=Billing customer contact +TypeContact_contrat_external_CUSTOMER=Follow-up customer contact +TypeContact_contrat_external_SALESREPSIGN=Signing contract customer contact diff --git a/htdocs/langs/ne_NP/cron.lang b/htdocs/langs/ne_NP/cron.lang new file mode 100644 index 00000000000..1de1251831a --- /dev/null +++ b/htdocs/langs/ne_NP/cron.lang @@ -0,0 +1,84 @@ +# Dolibarr language file - Source file is en_US - cron +# About page +# Right +Permission23101 = Read Scheduled job +Permission23102 = Create/update Scheduled job +Permission23103 = Delete Scheduled job +Permission23104 = Execute Scheduled job +# Admin +CronSetup=Scheduled job management setup +URLToLaunchCronJobs=URL to check and launch qualified cron jobs +OrToLaunchASpecificJob=Or to check and launch a specific job +KeyForCronAccess=Security key for URL to launch cron jobs +FileToLaunchCronJobs=Command line to check and launch qualified cron jobs +CronExplainHowToRunUnix=On Unix environment you should use the following crontab entry to run the command line each 5 minutes +CronExplainHowToRunWin=On Microsoft(tm) Windows environment you can use Scheduled Task tools to run the command line each 5 minutes +CronMethodDoesNotExists=Class %s does not contains any method %s +CronJobDefDesc=Cron job profiles are defined into the module descriptor file. When module is activated, they are loaded and available so you can administer the jobs from the admin tools menu %s. +CronJobProfiles=List of predefined cron job profiles +# Menu +EnabledAndDisabled=Enabled and disabled +# Page list +CronLastOutput=Latest run output +CronLastResult=Latest result code +CronCommand=Command +CronList=Scheduled jobs +CronDelete=Delete scheduled jobs +CronConfirmDelete=Are you sure you want to delete these scheduled jobs? +CronExecute=Launch scheduled job +CronConfirmExecute=Are you sure you want to execute these scheduled jobs now? +CronInfo=Scheduled job module allows to schedule jobs to execute them automatically. Jobs can also be started manually. +CronTask=Job +CronNone=None +CronDtStart=Not before +CronDtEnd=Not after +CronDtNextLaunch=Next execution +CronDtLastLaunch=Start date of latest execution +CronDtLastResult=End date of latest execution +CronFrequency=Frequency +CronClass=Class +CronMethod=Method +CronModule=Module +CronNoJobs=No jobs registered +CronPriority=Priority +CronLabel=Label +CronNbRun=Number of launches +CronMaxRun=Maximum number of launches +CronEach=Every +JobFinished=Job launched and finished +#Page card +CronAdd= Add jobs +CronEvery=Execute job each +CronObject=Instance/Object to create +CronArgs=Parameters +CronSaveSucess=Save successfully +CronNote=Comment +CronFieldMandatory=Fields %s is mandatory +CronErrEndDateStartDt=End date cannot be before start date +StatusAtInstall=Status at module installation +CronStatusActiveBtn=Enable +CronStatusInactiveBtn=Disable +CronTaskInactive=This job is disabled +CronId=Id +CronClassFile=Filename with class +CronModuleHelp=Name of Dolibarr module directory (also work with external Dolibarr module).
    For example to call the fetch method of Dolibarr Product object /htdocs/product/class/product.class.php, the value for module is
    product +CronClassFileHelp=The relative path and file name to load (path is relative to web server root directory).
    For example to call the fetch method of Dolibarr Product object htdocs/product/class/product.class.php, the value for class file name is
    product/class/product.class.php +CronObjectHelp=The object name to load.
    For example to call the fetch method of Dolibarr Product object /htdocs/product/class/product.class.php, the value for class file name is
    Product +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=The system command line to execute. +CronCreateJob=Create new Scheduled Job +CronFrom=From +# Info +# Common +CronType=Job type +CronType_method=Call method of a PHP Class +CronType_command=Shell command +CronCannotLoadClass=Cannot load class file %s (to use class %s) +CronCannotLoadObject=Class file %s was loaded, but object %s was not found into it +UseMenuModuleToolsToAddCronJobs=Go into menu "Home - Admin tools - Scheduled jobs" to see and edit scheduled jobs. +JobDisabled=Job disabled +MakeLocalDatabaseDumpShort=Local database backup +MakeLocalDatabaseDump=Create a local database dump. Parameters are: compression ('gz' or 'bz' or 'none'), backup type ('mysql', 'pgsql', 'auto'), 1, 'auto' or filename to build, number of backup files to keep +WarningCronDelayed=Attention, for performance purpose, whatever is next date of execution of enabled jobs, your jobs may be delayed to a maximum of %s hours, before being run. +DATAPOLICYJob=Data cleaner and anonymizer diff --git a/htdocs/langs/ne_NP/deliveries.lang b/htdocs/langs/ne_NP/deliveries.lang new file mode 100644 index 00000000000..1f48c01de75 --- /dev/null +++ b/htdocs/langs/ne_NP/deliveries.lang @@ -0,0 +1,31 @@ +# Dolibarr language file - Source file is en_US - deliveries +Delivery=Delivery +DeliveryRef=Ref Delivery +DeliveryCard=Receipt card +DeliveryOrder=Delivery receipt +DeliveryDate=Delivery date +CreateDeliveryOrder=Generate delivery receipt +DeliveryStateSaved=Delivery state saved +SetDeliveryDate=Set shipping date +ValidateDeliveryReceipt=Validate delivery receipt +ValidateDeliveryReceiptConfirm=Are you sure you want to validate this delivery receipt? +DeleteDeliveryReceipt=Delete delivery receipt +DeleteDeliveryReceiptConfirm=Are you sure you want to delete delivery receipt %s? +DeliveryMethod=Delivery method +TrackingNumber=Tracking number +DeliveryNotValidated=Delivery not validated +StatusDeliveryCanceled=Canceled +StatusDeliveryDraft=Draft +StatusDeliveryValidated=Received +# merou PDF model +NameAndSignature=Name and Signature: +ToAndDate=To___________________________________ on ____/_____/__________ +GoodStatusDeclaration=Have received the goods above in good condition, +Deliverer=Deliverer: +Sender=Sender +Recipient=Recipient +ErrorStockIsNotEnough=There's not enough stock +Shippable=Shippable +NonShippable=Not Shippable +ShowReceiving=Show delivery receipt +NonExistentOrder=Nonexistent order diff --git a/htdocs/langs/ne_NP/dict.lang b/htdocs/langs/ne_NP/dict.lang new file mode 100644 index 00000000000..ec315d97142 --- /dev/null +++ b/htdocs/langs/ne_NP/dict.lang @@ -0,0 +1,359 @@ +# Dolibarr language file - Source file is en_US - dict +CountryFR=France +CountryBE=Belgium +CountryIT=Italy +CountryES=Spain +CountryDE=Germany +CountryCH=Switzerland +# Warning, country code GB is for United Kingdom. UK Does not exists as country code in ISO standard. +CountryGB=United Kingdom +CountryUK=United Kingdom +CountryIE=Ireland +CountryCN=China +CountryTN=Tunisia +CountryUS=United States +CountryMA=Morocco +CountryDZ=Algeria +CountryCA=Canada +CountryTG=Togo +CountryGA=Gabon +CountryNL=Netherlands +CountryHU=Hungary +CountryRU=Russia +CountrySE=Sweden +CountryCI=Ivoiry Coast +CountrySN=Senegal +CountryAR=Argentina +CountryCM=Cameroon +CountryPT=Portugal +CountrySA=Saudi Arabia +CountryMC=Monaco +CountryAU=Australia +CountrySG=Singapore +CountryAF=Afghanistan +CountryAX=Åland Islands +CountryAL=Albania +CountryAS=American Samoa +CountryAD=Andorra +CountryAO=Angola +CountryAI=Anguilla +CountryAQ=Antarctica +CountryAG=Antigua and Barbuda +CountryAM=Armenia +CountryAW=Aruba +CountryAT=Austria +CountryAZ=Azerbaijan +CountryBS=Bahamas +CountryBH=Bahrain +CountryBD=Bangladesh +CountryBB=Barbados +CountryBY=Belarus +CountryBZ=Belize +CountryBJ=Benin +CountryBM=Bermuda +CountryBT=Bhutan +CountryBO=Bolivia +CountryBA=Bosnia and Herzegovina +CountryBW=Botswana +CountryBV=Bouvet Island +CountryBR=Brazil +CountryIO=British Indian Ocean Territory +CountryBN=Brunei Darussalam +CountryBG=Bulgaria +CountryBF=Burkina Faso +CountryBI=Burundi +CountryKH=Cambodia +CountryCV=Cape Verde +CountryKY=Cayman Islands +CountryCF=Central African Republic +CountryTD=Chad +CountryCL=Chile +CountryCX=Christmas Island +CountryCC=Cocos (Keeling) Islands +CountryCO=Colombia +CountryKM=Comoros +CountryCG=Congo +CountryCD=Congo, The Democratic Republic of the +CountryCK=Cook Islands +CountryCR=Costa Rica +CountryHR=Croatia +CountryCU=Cuba +CountryCY=Cyprus +CountryCZ=Czech Republic +CountryDK=Denmark +CountryDJ=Djibouti +CountryDM=Dominica +CountryDO=Dominican Republic +CountryEC=Ecuador +CountryEG=Egypt +CountrySV=El Salvador +CountryGQ=Equatorial Guinea +CountryER=Eritrea +CountryEE=Estonia +CountryET=Ethiopia +CountryFK=Falkland Islands +CountryFO=Faroe Islands +CountryFJ=Fiji Islands +CountryFI=Finland +CountryGF=French Guiana +CountryPF=French Polynesia +CountryTF=French Southern Territories +CountryGM=Gambia +CountryGE=Georgia +CountryGH=Ghana +CountryGI=Gibraltar +CountryGR=Greece +CountryGL=Greenland +CountryGD=Grenada +CountryGP=Guadeloupe +CountryGU=Guam +CountryGT=Guatemala +CountryGN=Guinea +CountryGW=Guinea-Bissau +CountryGY=Guyana +CountryHT=Haïti +CountryHM=Heard Island and McDonald +CountryVA=Holy See (Vatican City State) +CountryHN=Honduras +CountryHK=Hong Kong +CountryIS=Iceland +CountryIN=India +CountryID=Indonesia +CountryIR=Iran +CountryIQ=Iraq +CountryIL=Israel +CountryJM=Jamaica +CountryJP=Japan +CountryJO=Jordan +CountryKZ=Kazakhstan +CountryKE=Kenya +CountryKI=Kiribati +CountryKP=North Korea +CountryKR=South Korea +CountryKW=Kuwait +CountryKG=Kyrgyzstan +CountryLA=Lao +CountryLV=Latvia +CountryLB=Lebanon +CountryLS=Lesotho +CountryLR=Liberia +CountryLY=Libyan +CountryLI=Liechtenstein +CountryLT=Lithuania +CountryLU=Luxembourg +CountryMO=Macao +CountryMK=Macedonia, the former Yugoslav of +CountryMG=Madagascar +CountryMW=Malawi +CountryMY=Malaysia +CountryMV=Maldives +CountryML=Mali +CountryMT=Malta +CountryMH=Marshall Islands +CountryMQ=Martinique +CountryMR=Mauritania +CountryMU=Mauritius +CountryYT=Mayotte +CountryMX=Mexico +CountryFM=Micronesia +CountryMD=Moldova +CountryMN=Mongolia +CountryMS=Monserrat +CountryMZ=Mozambique +CountryMM=Myanmar (Burma) +CountryNA=Namibia +CountryNR=Nauru +CountryNP=Nepal +CountryAN=Netherlands Antilles +CountryNC=New Caledonia +CountryNZ=New Zealand +CountryNI=Nicaragua +CountryNE=Niger +CountryNG=Nigeria +CountryNU=Niue +CountryNF=Norfolk Island +CountryMP=Northern Mariana Islands +CountryNO=Norway +CountryOM=Oman +CountryPK=Pakistan +CountryPW=Palau +CountryPS=Palestinian Territory, Occupied +CountryPA=Panama +CountryPG=Papua New Guinea +CountryPY=Paraguay +CountryPE=Peru +CountryPH=Philippines +CountryPN=Pitcairn Islands +CountryPL=Poland +CountryPR=Puerto Rico +CountryQA=Qatar +CountryRE=Reunion +CountryRO=Romania +CountryRW=Rwanda +CountrySH=Saint Helena +CountryKN=Saint Kitts and Nevis +CountryLC=Saint Lucia +CountryPM=Saint Pierre and Miquelon +CountryVC=Saint Vincent and Grenadines +CountryWS=Samoa +CountrySM=San Marino +CountryST=Sao Tome and Principe +CountryRS=Serbia +CountrySC=Seychelles +CountrySL=Sierra Leone +CountrySK=Slovakia +CountrySI=Slovenia +CountrySB=Solomon Islands +CountrySO=Somalia +CountryZA=South Africa +CountryGS=South Georgia and the South Sandwich Islands +CountryLK=Sri Lanka +CountrySD=Sudan +CountrySR=Suriname +CountrySJ=Svalbard and Jan Mayen +CountrySZ=Swaziland +CountrySY=Syrian +CountryTW=Taiwan +CountryTJ=Tajikistan +CountryTZ=Tanzania +CountryTH=Thailand +CountryTL=Timor-Leste +CountryTK=Tokelau +CountryTO=Tonga +CountryTT=Trinidad and Tobago +CountryTR=Turkey +CountryTM=Turkmenistan +CountryTC=Turks and Caicos Islands +CountryTV=Tuvalu +CountryUG=Uganda +CountryUA=Ukraine +CountryAE=United Arab Emirates +CountryUM=United States Minor Outlying Islands +CountryUY=Uruguay +CountryUZ=Uzbekistan +CountryVU=Vanuatu +CountryVE=Venezuela +CountryVN=Viet Nam +CountryVG=Virgin Islands, British +CountryVI=Virgin Islands, U.S. +CountryWF=Wallis and Futuna +CountryEH=Western Sahara +CountryYE=Yemen +CountryZM=Zambia +CountryZW=Zimbabwe +CountryGG=Guernsey +CountryIM=Isle of Man +CountryJE=Jersey +CountryME=Montenegro +CountryBL=Saint Barthelemy +CountryMF=Saint Martin + +##### Civilities ##### +CivilityMME=Mrs. +CivilityMR=Mr. +CivilityMLE=Ms. +CivilityMTRE=Master +CivilityDR=Doctor +##### Currencies ##### +Currencyeuros=Euros +CurrencyAUD=AU Dollars +CurrencySingAUD=AU Dollar +CurrencyCAD=CAN Dollars +CurrencySingCAD=CAN Dollar +CurrencyCHF=Swiss Francs +CurrencySingCHF=Swiss Franc +CurrencyEUR=Euros +CurrencySingEUR=Euro +CurrencyFRF=French Francs +CurrencySingFRF=French Franc +CurrencyGBP=GB Pounds +CurrencySingGBP=GB Pound +CurrencyINR=Indian rupees +CurrencySingINR=Indian rupee +CurrencyMAD=Dirham +CurrencySingMAD=Dirham +CurrencyMGA=Ariary +CurrencySingMGA=Ariary +CurrencyMUR=Mauritius rupees +CurrencySingMUR=Mauritius rupee +CurrencyNOK=Norwegian krones +CurrencySingNOK=Norwegian kronas +CurrencyTND=Tunisian dinars +CurrencySingTND=Tunisian dinar +CurrencyUSD=US Dollars +CurrencySingUSD=US Dollar +CurrencyUAH=Hryvnia +CurrencySingUAH=Hryvnia +CurrencyXAF=CFA Francs BEAC +CurrencySingXAF=CFA Franc BEAC +CurrencyXOF=CFA Francs BCEAO +CurrencySingXOF=CFA Franc BCEAO +CurrencyXPF=CFP Francs +CurrencySingXPF=CFP Franc +CurrencyCentEUR=cents +CurrencyCentSingEUR=cent +CurrencyCentINR=paisa +CurrencyCentSingINR=paise +CurrencyThousandthSingTND=thousandth +#### Input reasons ##### +DemandReasonTypeSRC_INTE=Internet +DemandReasonTypeSRC_CAMP_MAIL=Mailing campaign +DemandReasonTypeSRC_CAMP_EMAIL=EMailing campaign +DemandReasonTypeSRC_CAMP_PHO=Phone campaign +DemandReasonTypeSRC_CAMP_FAX=Fax campaign +DemandReasonTypeSRC_COMM=Commercial contact +DemandReasonTypeSRC_SHOP=Shop contact +DemandReasonTypeSRC_WOM=Word of mouth +DemandReasonTypeSRC_PARTNER=Partner +DemandReasonTypeSRC_EMPLOYEE=Employee +DemandReasonTypeSRC_SPONSORING=Sponsorship +DemandReasonTypeSRC_SRC_CUSTOMER=Incoming contact of a customer +#### Paper formats #### +PaperFormatEU4A0=Format 4A0 +PaperFormatEU2A0=Format 2A0 +PaperFormatEUA0=Format A0 +PaperFormatEUA1=Format A1 +PaperFormatEUA2=Format A2 +PaperFormatEUA3=Format A3 +PaperFormatEUA4=Format A4 +PaperFormatEUA5=Format A5 +PaperFormatEUA6=Format A6 +PaperFormatUSLETTER=Format Letter US +PaperFormatUSLEGAL=Format Legal US +PaperFormatUSEXECUTIVE=Format Executive US +PaperFormatUSLEDGER=Format Ledger/Tabloid +PaperFormatCAP1=Format P1 Canada +PaperFormatCAP2=Format P2 Canada +PaperFormatCAP3=Format P3 Canada +PaperFormatCAP4=Format P4 Canada +PaperFormatCAP5=Format P5 Canada +PaperFormatCAP6=Format P6 Canada +#### Expense report categories #### +ExpAutoCat=Car +ExpCycloCat=Moped +ExpMotoCat=Motorbike +ExpAuto3CV=3 CV +ExpAuto4CV=4 CV +ExpAuto5CV=5 CV +ExpAuto6CV=6 CV +ExpAuto7CV=7 CV +ExpAuto8CV=8 CV +ExpAuto9CV=9 CV +ExpAuto10CV=10 CV +ExpAuto11CV=11 CV +ExpAuto12CV=12 CV +ExpAuto3PCV=3 CV and more +ExpAuto4PCV=4 CV and more +ExpAuto5PCV=5 CV and more +ExpAuto6PCV=6 CV and more +ExpAuto7PCV=7 CV and more +ExpAuto8PCV=8 CV and more +ExpAuto9PCV=9 CV and more +ExpAuto10PCV=10 CV and more +ExpAuto11PCV=11 CV and more +ExpAuto12PCV=12 CV and more +ExpAuto13PCV=13 CV and more +ExpCyclo=Capacity lower to 50cm3 +ExpMoto12CV=Motorbike 1 or 2 CV +ExpMoto345CV=Motorbike 3, 4 or 5 CV +ExpMoto5PCV=Motorbike 5 CV and more diff --git a/htdocs/langs/ne_NP/donations.lang b/htdocs/langs/ne_NP/donations.lang new file mode 100644 index 00000000000..de4bdf68f03 --- /dev/null +++ b/htdocs/langs/ne_NP/donations.lang @@ -0,0 +1,34 @@ +# Dolibarr language file - Source file is en_US - donations +Donation=Donation +Donations=Donations +DonationRef=Donation ref. +Donor=Donor +AddDonation=Create a donation +NewDonation=New donation +DeleteADonation=Delete a donation +ConfirmDeleteADonation=Are you sure you want to delete this donation? +PublicDonation=Public donation +DonationsArea=Donations area +DonationStatusPromiseNotValidated=Draft promise +DonationStatusPromiseValidated=Validated promise +DonationStatusPaid=Donation received +DonationStatusPromiseNotValidatedShort=Draft +DonationStatusPromiseValidatedShort=Validated +DonationStatusPaidShort=Received +DonationTitle=Donation receipt +DonationDate=Donation date +DonationDatePayment=Payment date +ValidPromess=Validate promise +DonationReceipt=Donation receipt +DonationsModels=Documents models for donation receipts +LastModifiedDonations=Latest %s modified donations +DonationRecipient=Donation recipient +IConfirmDonationReception=The recipient declare reception, as a donation, of the following amount +MinimumAmount=Minimum amount is %s +FreeTextOnDonations=Free text to show in footer +FrenchOptions=Options for France +DONATION_ART200=Show article 200 from CGI if you are concerned +DONATION_ART238=Show article 238 from CGI if you are concerned +DONATION_ART885=Show article 885 from CGI if you are concerned +DonationPayment=Donation payment +DonationValidated=Donation %s validated diff --git a/htdocs/langs/ne_NP/ecm.lang b/htdocs/langs/ne_NP/ecm.lang new file mode 100644 index 00000000000..369ac6dfdfa --- /dev/null +++ b/htdocs/langs/ne_NP/ecm.lang @@ -0,0 +1,52 @@ +# Dolibarr language file - Source file is en_US - ecm +ECMNbOfDocs=No. of documents in directory +ECMSection=Directory +ECMSectionManual=Manual directory +ECMSectionAuto=Automatic directory +ECMSectionsManual=Manual tree +ECMSectionsAuto=Automatic tree +ECMSections=Directories +ECMRoot=ECM Root +ECMNewSection=New directory +ECMAddSection=Add directory +ECMCreationDate=Creation date +ECMNbOfFilesInDir=Number of files in directory +ECMNbOfSubDir=Number of sub-directories +ECMNbOfFilesInSubDir=Number of files in sub-directories +ECMCreationUser=Creator +ECMArea=DMS/ECM area +ECMAreaDesc=The DMS/ECM (Document Management System / Electronic Content Management) area allows you to save, share and search quickly all kind of documents in Dolibarr. +ECMAreaDesc2=* Automatic directories are filled automatically when adding documents from card of an element.
    * Manual directories can be used to save documents not linked to a particular element. +ECMSectionWasRemoved=Directory %s has been deleted. +ECMSectionWasCreated=Directory %s has been created. +ECMSearchByKeywords=Search by keywords +ECMSearchByEntity=Search by object +ECMSectionOfDocuments=Directories of documents +ECMTypeAuto=Automatic +ECMDocsBySocialContributions=Documents linked to social or fiscal taxes +ECMDocsByThirdParties=Documents linked to third parties +ECMDocsByProposals=Documents linked to proposals +ECMDocsByOrders=Documents linked to customers orders +ECMDocsByContracts=Documents linked to contracts +ECMDocsByInvoices=Documents linked to customers invoices +ECMDocsByProducts=Documents linked to products +ECMDocsByProjects=Documents linked to projects +ECMDocsByUsers=Documents linked to users +ECMDocsByInterventions=Documents linked to interventions +ECMDocsByExpenseReports=Documents linked to expense reports +ECMDocsByHolidays=Documents linked to holidays +ECMDocsBySupplierProposals=Documents linked to vendor proposals +ECMNoDirectoryYet=No directory created +ShowECMSection=Show directory +DeleteSection=Remove directory +ConfirmDeleteSection=Can you confirm you want to delete the directory %s? +ECMDirectoryForFiles=Relative directory for files +CannotRemoveDirectoryContainsFilesOrDirs=Removal not possible because it contains some files or sub-directories +CannotRemoveDirectoryContainsFiles=Removal not possible because it contains some files +ECMFileManager=File manager +ECMSelectASection=Select a directory in the tree... +DirNotSynchronizedSyncFirst=This directory seems to be created or modified outside ECM module. You must click on "Resync" button first to synchronize disk and database to get content of this directory. +ReSyncListOfDir=Resync list of directories +HashOfFileContent=Hash of file content +NoDirectoriesFound=No directories found +FileNotYetIndexedInDatabase=File not yet indexed into database (try to re-upload it) diff --git a/htdocs/langs/ne_NP/errors.lang b/htdocs/langs/ne_NP/errors.lang new file mode 100644 index 00000000000..7c67aeca8b5 --- /dev/null +++ b/htdocs/langs/ne_NP/errors.lang @@ -0,0 +1,265 @@ +# Dolibarr language file - Source file is en_US - errors + +# No errors +NoErrorCommitIsDone=No error, we commit +# Errors +ErrorButCommitIsDone=Errors found but we validate despite this +ErrorBadEMail=Email %s is wrong +ErrorBadUrl=Url %s is wrong +ErrorBadValueForParamNotAString=Bad value for your parameter. It appends generally when translation is missing. +ErrorLoginAlreadyExists=Login %s already exists. +ErrorGroupAlreadyExists=Group %s already exists. +ErrorRecordNotFound=Record not found. +ErrorFailToCopyFile=Failed to copy file '%s' into '%s'. +ErrorFailToCopyDir=Failed to copy directory '%s' into '%s'. +ErrorFailToRenameFile=Failed to rename file '%s' into '%s'. +ErrorFailToDeleteFile=Failed to remove file '%s'. +ErrorFailToCreateFile=Failed to create file '%s'. +ErrorFailToRenameDir=Failed to rename directory '%s' into '%s'. +ErrorFailToCreateDir=Failed to create directory '%s'. +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=This bank account is a cash account, so it accepts payments of type cash only. +ErrorFromToAccountsMustDiffers=Source and targets bank accounts must be different. +ErrorBadThirdPartyName=Bad value for third-party name +ErrorProdIdIsMandatory=The %s is mandatory +ErrorBadCustomerCodeSyntax=Bad syntax for customer code +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. +ErrorCustomerCodeRequired=Customer code required +ErrorBarCodeRequired=Barcode required +ErrorCustomerCodeAlreadyUsed=Customer code already used +ErrorBarCodeAlreadyUsed=Barcode already used +ErrorPrefixRequired=Prefix required +ErrorBadSupplierCodeSyntax=Bad syntax for vendor code +ErrorSupplierCodeRequired=Vendor code required +ErrorSupplierCodeAlreadyUsed=Vendor code already used +ErrorBadParameters=Bad parameters +ErrorBadValueForParameter=Wrong value '%s' for parameter '%s' +ErrorBadImageFormat=Image file has not a supported format (Your PHP does not support functions to convert images of this format) +ErrorBadDateFormat=Value '%s' has wrong date format +ErrorWrongDate=Date is not correct! +ErrorFailedToWriteInDir=Failed to write in directory %s +ErrorFoundBadEmailInFile=Found incorrect email syntax for %s lines in file (example line %s with email=%s) +ErrorUserCannotBeDelete=User cannot be deleted. Maybe it is associated to Dolibarr entities. +ErrorFieldsRequired=Some required fields were not filled. +ErrorSubjectIsRequired=The email topic is required +ErrorFailedToCreateDir=Failed to create a directory. Check that Web server user has permissions to write into Dolibarr documents directory. If parameter safe_mode is enabled on this PHP, check that Dolibarr php files owns to web server user (or group). +ErrorNoMailDefinedForThisUser=No mail defined for this user +ErrorFeatureNeedJavascript=This feature need javascript to be activated to work. Change this in setup - display. +ErrorTopMenuMustHaveAParentWithId0=A menu of type 'Top' can't have a parent menu. Put 0 in parent menu or choose a menu of type 'Left'. +ErrorLeftMenuMustHaveAParentId=A menu of type 'Left' must have a parent id. +ErrorFileNotFound=File %s not found (Bad path, wrong permissions or access denied by PHP openbasedir or safe_mode parameter) +ErrorDirNotFound=Directory %s not found (Bad path, wrong permissions or access denied by PHP openbasedir or safe_mode parameter) +ErrorFunctionNotAvailableInPHP=Function %s is required for this feature but is not available in this version/setup of PHP. +ErrorDirAlreadyExists=A directory with this name already exists. +ErrorFileAlreadyExists=A file with this name already exists. +ErrorPartialFile=File not received completely by server. +ErrorNoTmpDir=Temporary directy %s does not exists. +ErrorUploadBlockedByAddon=Upload blocked by a PHP/Apache plugin. +ErrorFileSizeTooLarge=File size is too large. +ErrorFieldTooLong=Field %s is too long. +ErrorSizeTooLongForIntType=Size too long for int type (%s digits maximum) +ErrorSizeTooLongForVarcharType=Size too long for string type (%s chars maximum) +ErrorNoValueForSelectType=Please fill value for select list +ErrorNoValueForCheckBoxType=Please fill value for checkbox list +ErrorNoValueForRadioType=Please fill value for radio list +ErrorBadFormatValueList=The list value cannot have more than one comma: %s, but need at least one: key,value +ErrorFieldCanNotContainSpecialCharacters=The field %s must not contains special characters. +ErrorFieldCanNotContainSpecialNorUpperCharacters=The field %s must not contain special characters, nor upper case characters and cannot contain only numbers. +ErrorFieldMustHaveXChar=The field %s must have at least %s characters. +ErrorNoAccountancyModuleLoaded=No accountancy module activated +ErrorExportDuplicateProfil=This profile name already exists for this export set. +ErrorLDAPSetupNotComplete=Dolibarr-LDAP matching is not complete. +ErrorLDAPMakeManualTest=A .ldif file has been generated in directory %s. Try to load it manually from command line to have more information on errors. +ErrorCantSaveADoneUserWithZeroPercentage=Can't save an action with "status not started" if field "done by" is also filled. +ErrorRefAlreadyExists=Ref used for creation already exists. +ErrorPleaseTypeBankTransactionReportName=Please enter the bank statement name where the entry has to be reported (Format YYYYMM or YYYYMMDD) +ErrorRecordHasChildren=Failed to delete record since it has some child records. +ErrorRecordHasAtLeastOneChildOfType=Object has at least one child of type %s +ErrorRecordIsUsedCantDelete=Can't delete record. It is already used or included into another object. +ErrorModuleRequireJavascript=Javascript must not be disabled to have this feature working. To enable/disable Javascript, go to menu Home->Setup->Display. +ErrorPasswordsMustMatch=Both typed passwords must match each other +ErrorContactEMail=A technical error occured. Please, contact administrator to following email %s and provide the error code %s in your message, or add a screen copy of this page. +ErrorWrongValueForField=Field %s: '%s' does not match regex rule %s +ErrorFieldValueNotIn=Field %s: '%s' is not a value found in field %s of %s +ErrorFieldRefNotIn=Field %s: '%s' is not a %s existing ref +ErrorsOnXLines=%s errors found +ErrorFileIsInfectedWithAVirus=The antivirus program was not able to validate the file (file might be infected by a virus) +ErrorSpecialCharNotAllowedForField=Special characters are not allowed for field "%s" +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 %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 +ErrorMaxNumberReachForThisMask=Maximum number reached for this mask +ErrorCounterMustHaveMoreThan3Digits=Counter must have more than 3 digits +ErrorSelectAtLeastOne=Error, select at least one entry. +ErrorDeleteNotPossibleLineIsConsolidated=Delete not possible because record is linked to a bank transaction that is conciliated +ErrorProdIdAlreadyExist=%s is assigned to another third +ErrorFailedToSendPassword=Failed to send password +ErrorFailedToLoadRSSFile=Fails to get RSS feed. Try to add constant MAIN_SIMPLEXMLLOAD_DEBUG if error messages does not provide enough information. +ErrorForbidden=Access denied.
    You try to access to a page, area or feature of a disabled module or without being in an authenticated session or that is not allowed to your user. +ErrorForbidden2=Permission for this login can be defined by your Dolibarr administrator from menu %s->%s. +ErrorForbidden3=It seems that Dolibarr is not used through an authenticated session. Take a look at Dolibarr setup documentation to know how to manage authentications (htaccess, mod_auth or other...). +ErrorNoImagickReadimage=Class Imagick is not found in this PHP. No preview can be available. Administrators can disable this tab from menu Setup - Display. +ErrorRecordAlreadyExists=Record already exists +ErrorLabelAlreadyExists=This label already exists +ErrorCantReadFile=Failed to read file '%s' +ErrorCantReadDir=Failed to read directory '%s' +ErrorBadLoginPassword=Bad value for login or password +ErrorLoginDisabled=Your account has been disabled +ErrorFailedToRunExternalCommand=Failed to run external command. Check it is available and runnable by your PHP server. If PHP Safe Mode is enabled, check that command is inside a directory defined by parameter safe_mode_exec_dir. +ErrorFailedToChangePassword=Failed to change password +ErrorLoginDoesNotExists=User with login %s could not be found. +ErrorLoginHasNoEmail=This user has no email address. Process aborted. +ErrorBadValueForCode=Bad value for security code. Try again with new value... +ErrorBothFieldCantBeNegative=Fields %s and %s can't be both negative +ErrorFieldCantBeNegativeOnInvoice=Field %s cannot be negative on this type of invoice. If you need to add a discount line, just create the discount first (from field '%s' in thirdparty card) and apply it to the invoice. +ErrorLinesCantBeNegativeForOneVATRate=Total of lines can't be negative for a given VAT rate. +ErrorLinesCantBeNegativeOnDeposits=Lines can't be negative in a deposit. You will face problems when you will need to consume the deposit in final invoice if you do so. +ErrorQtyForCustomerInvoiceCantBeNegative=Quantity for line into customer invoices can't be negative +ErrorWebServerUserHasNotPermission=User account %s used to execute web server has no permission for that +ErrorNoActivatedBarcode=No barcode type activated +ErrUnzipFails=Failed to unzip %s with ZipArchive +ErrNoZipEngine=No engine to zip/unzip %s file in this PHP +ErrorFileMustBeADolibarrPackage=The file %s must be a Dolibarr zip package +ErrorModuleFileRequired=You must select a Dolibarr module package file +ErrorPhpCurlNotInstalled=The PHP CURL is not installed, this is essential to talk with Paypal +ErrorFailedToAddToMailmanList=Failed to add record %s to Mailman list %s or SPIP base +ErrorFailedToRemoveToMailmanList=Failed to remove record %s to Mailman list %s or SPIP base +ErrorNewValueCantMatchOldValue=New value can't be equal to old one +ErrorFailedToValidatePasswordReset=Failed to reinit password. May be the reinit was already done (this link can be used only one time). If not, try to restart the reinit process. +ErrorToConnectToMysqlCheckInstance=Connect to database fails. Check database server is running (for example, with mysql/mariadb, you can launch it from command line with 'sudo service mysql start'). +ErrorFailedToAddContact=Failed to add contact +ErrorDateMustBeBeforeToday=The date cannot be greater than today +ErrorPaymentModeDefinedToWithoutSetup=A payment mode was set to type %s but setup of module Invoice was not completed to define information to show for this payment mode. +ErrorPHPNeedModule=Error, your PHP must have module %s installed to use this feature. +ErrorOpenIDSetupNotComplete=You setup Dolibarr config file to allow OpenID authentication, but URL of OpenID service is not defined into constant %s +ErrorWarehouseMustDiffers=Source and target warehouses must differs +ErrorBadFormat=Bad format! +ErrorMemberNotLinkedToAThirpartyLinkOrCreateFirst=Error, this member is not yet linked to any third party. Link member to an existing third party or create a new third party before creating subscription with invoice. +ErrorThereIsSomeDeliveries=Error, there is some deliveries linked to this shipment. Deletion refused. +ErrorCantDeletePaymentReconciliated=Can't delete a payment that had generated a bank entry that was reconciled +ErrorCantDeletePaymentSharedWithPayedInvoice=Can't delete a payment shared by at least one invoice with status Paid +ErrorPriceExpression1=Cannot assign to constant '%s' +ErrorPriceExpression2=Cannot redefine built-in function '%s' +ErrorPriceExpression3=Undefined variable '%s' in function definition +ErrorPriceExpression4=Illegal character '%s' +ErrorPriceExpression5=Unexpected '%s' +ErrorPriceExpression6=Wrong number of arguments (%s given, %s expected) +ErrorPriceExpression8=Unexpected operator '%s' +ErrorPriceExpression9=An unexpected error occured +ErrorPriceExpression10=Operator '%s' lacks operand +ErrorPriceExpression11=Expecting '%s' +ErrorPriceExpression14=Division by zero +ErrorPriceExpression17=Undefined variable '%s' +ErrorPriceExpression19=Expression not found +ErrorPriceExpression20=Empty expression +ErrorPriceExpression21=Empty result '%s' +ErrorPriceExpression22=Negative result '%s' +ErrorPriceExpression23=Unknown or non set variable '%s' in %s +ErrorPriceExpression24=Variable '%s' exists but has no value +ErrorPriceExpressionInternal=Internal error '%s' +ErrorPriceExpressionUnknown=Unknown error '%s' +ErrorSrcAndTargetWarehouseMustDiffers=Source and target warehouses must differs +ErrorTryToMakeMoveOnProductRequiringBatchData=Error, trying to make a stock movement without lot/serial information, on product '%s' requiring lot/serial information +ErrorCantSetReceptionToTotalDoneWithReceptionToApprove=All recorded receptions must first be verified (approved or denied) before being allowed to do this action +ErrorCantSetReceptionToTotalDoneWithReceptionDenied=All recorded receptions must first be verified (approved) before being allowed to do this action +ErrorGlobalVariableUpdater0=HTTP request failed with error '%s' +ErrorGlobalVariableUpdater1=Invalid JSON format '%s' +ErrorGlobalVariableUpdater2=Missing parameter '%s' +ErrorGlobalVariableUpdater3=The requested data was not found in result +ErrorGlobalVariableUpdater4=SOAP client failed with error '%s' +ErrorGlobalVariableUpdater5=No global variable selected +ErrorFieldMustBeANumeric=Field %s must be a numeric value +ErrorMandatoryParametersNotProvided=Mandatory parameter(s) not provided +ErrorOppStatusRequiredIfAmount=You set an estimated amount for this lead. So you must also enter it's status. +ErrorFailedToLoadModuleDescriptorForXXX=Failed to load module descriptor class for %s +ErrorBadDefinitionOfMenuArrayInModuleDescriptor=Bad Definition Of Menu Array In Module Descriptor (bad value for key fk_menu) +ErrorSavingChanges=An error has occurred when saving the changes +ErrorWarehouseRequiredIntoShipmentLine=Warehouse is required on the line to ship +ErrorFileMustHaveFormat=File must have format %s +ErrorSupplierCountryIsNotDefined=Country for this vendor is not defined. Correct this first. +ErrorsThirdpartyMerge=Failed to merge the two records. Request canceled. +ErrorStockIsNotEnoughToAddProductOnOrder=Stock is not enough for product %s to add it into a new order. +ErrorStockIsNotEnoughToAddProductOnInvoice=Stock is not enough for product %s to add it into a new invoice. +ErrorStockIsNotEnoughToAddProductOnShipment=Stock is not enough for product %s to add it into a new shipment. +ErrorStockIsNotEnoughToAddProductOnProposal=Stock is not enough for product %s to add it into a new proposal. +ErrorFailedToLoadLoginFileForMode=Failed to get the login key for mode '%s'. +ErrorModuleNotFound=File of module was not found. +ErrorFieldAccountNotDefinedForBankLine=Value for Accounting account not defined for source line id %s (%s) +ErrorFieldAccountNotDefinedForInvoiceLine=Value for Accounting account not defined for invoice id %s (%s) +ErrorFieldAccountNotDefinedForLine=Value for Accounting account not defined for the line (%s) +ErrorBankStatementNameMustFollowRegex=Error, bank statement name must follow the following syntax rule %s +ErrorPhpMailDelivery=Check that you don't use a too high number of recipients and that your email content is not similar to a Spam. Ask also your administrator to check firewall and server logs files for a more complete information. +ErrorUserNotAssignedToTask=User must be assigned to task to be able to enter time consumed. +ErrorTaskAlreadyAssigned=Task already assigned to user +ErrorModuleFileSeemsToHaveAWrongFormat=The module package seems to have a wrong format. +ErrorModuleFileSeemsToHaveAWrongFormat2=At least one mandatory directory must exists into zip of module: %s or %s +ErrorFilenameDosNotMatchDolibarrPackageRules=The name of the module package (%s) does not match expected name syntax: %s +ErrorDuplicateTrigger=Error, duplicate trigger name %s. Already loaded from %s. +ErrorNoWarehouseDefined=Error, no warehouses defined. +ErrorBadLinkSourceSetButBadValueForRef=The link you use is not valid. A 'source' for payment is defined, but value for 'ref' is not valid. +ErrorTooManyErrorsProcessStopped=Too many errors. Process was stopped. +ErrorMassValidationNotAllowedWhenStockIncreaseOnAction=Mass validation is not possible when option to increase/decrease stock is set on this action (you must validate one by one so you can define the warehouse to increase/decrease) +ErrorObjectMustHaveStatusDraftToBeValidated=Object %s must have status 'Draft' to be validated. +ErrorObjectMustHaveLinesToBeValidated=Object %s must have lines to be validated. +ErrorOnlyInvoiceValidatedCanBeSentInMassAction=Only validated invoices can be sent using the "Send by email" mass action. +ErrorChooseBetweenFreeEntryOrPredefinedProduct=You must choose if article is a predefined product or not +ErrorDiscountLargerThanRemainToPaySplitItBefore=The discount you try to apply is larger than remain to pay. Split the discount in 2 smaller discounts before. +ErrorFileNotFoundWithSharedLink=File was not found. May be the share key was modified or file was removed recently. +ErrorProductBarCodeAlreadyExists=The product barcode %s already exists on another product reference. +ErrorNoteAlsoThatSubProductCantBeFollowedByLot=Note also that using virtual product to have auto increase/decrease of subproducts is not possible when at least one subproduct (or subproduct of subproducts) needs a serial/lot number. +ErrorDescRequiredForFreeProductLines=Description is mandatory for lines with free product +ErrorAPageWithThisNameOrAliasAlreadyExists=The page/container %s has the same name or alternative alias that the one your try to use +ErrorDuringChartLoad=Error when loading chart of accounts. If few accounts were not loaded, you can still enter them manually. +ErrorBadSyntaxForParamKeyForContent=Bad syntax for param keyforcontent. Must have a value starting with %s or %s +ErrorVariableKeyForContentMustBeSet=Error, the constant with name %s (with text content to show) or %s (with external url to show) must be set. +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. +ErrorObjectMustHaveStatusActiveToBeDisabled=Objects must have status 'Active' to be disabled +ErrorObjectMustHaveStatusDraftOrDisabledToBeActivated=Objects must have status 'Draft' or 'Disabled' to be enabled +ErrorNoFieldWithAttributeShowoncombobox=No fields has property 'showoncombobox' into definition of object '%s'. No way to show the combolist. +ErrorFieldRequiredForProduct=Field '%s' is required for product %s +ProblemIsInSetupOfTerminal=Problem is in setup of terminal %s. +ErrorAddAtLeastOneLineFirst=Add at least one line first +ErrorRecordAlreadyInAccountingDeletionNotPossible=Error, record is already transferred in accounting, deletion is not possible. +ErrorLanguageMandatoryIfPageSetAsTranslationOfAnother=Error, language is mandatory if you set the page as a translation of another one. +ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated page is same than this one. +ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". +ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". +ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty +# 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 +WarningSafeModeOnCheckExecDir=Warning, PHP option safe_mode is on so command must be stored inside a directory declared by php parameter safe_mode_exec_dir. +WarningBookmarkAlreadyExists=A bookmark with this title or this target (URL) already exists. +WarningPassIsEmpty=Warning, database password is empty. This is a security hole. You should add a password to your database and change your conf.php file to reflect this. +WarningConfFileMustBeReadOnly=Warning, your config file (htdocs/conf/conf.php) can be overwritten by the web server. This is a serious security hole. Modify permissions on file to be in read only mode for operating system user used by Web server. If you use Windows and FAT format for your disk, you must know that this file system does not allow to add permissions on file, so can't be completely safe. +WarningsOnXLines=Warnings on %s source record(s) +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). +WarningCloseAlways=Warning, closing is done even if amount differs between source and target elements. Enable this feature with caution. +WarningUsingThisBoxSlowDown=Warning, using this box slow down seriously all pages showing the box. +WarningClickToDialUserSetupNotComplete=Setup of ClickToDial information for your user are not complete (see tab ClickToDial onto your user card). +WarningFeatureDisabledWithDisplayOptimizedForBlindNoJs=Feature disabled when display setup is optimized for blind person or text browsers. +WarningPaymentDateLowerThanInvoiceDate=Payment date (%s) is earlier than invoice date (%s) for invoice %s. +WarningTooManyDataPleaseUseMoreFilters=Too many data (more than %s lines). Please use more filters or set the constant %s to a higher limit. +WarningSomeLinesWithNullHourlyRate=Some times were recorded by some users while their hourly rate was not defined. A value of 0 %s per hour was used but this may result in wrong valuation of time spent. +WarningYourLoginWasModifiedPleaseLogin=Your login was modified. For security purpose you will have to login with your new login before next action. +WarningAnEntryAlreadyExistForTransKey=An entry already exists for the translation key for this language +WarningNumberOfRecipientIsRestrictedInMassAction=Warning, number of different recipient is limited to %s when using the mass actions on lists +WarningDateOfLineMustBeInExpenseReportRange=Warning, the date of line is not in the range of the expense report +WarningProjectClosed=Project is closed. You must re-open it first. +WarningSomeBankTransactionByChequeWereRemovedAfter=Some bank transaction were removed after that the receipt including them were generated. So nb of cheques and total of receipt may differ from number and total in list. diff --git a/htdocs/langs/ne_NP/exports.lang b/htdocs/langs/ne_NP/exports.lang new file mode 100644 index 00000000000..3549e3f8b23 --- /dev/null +++ b/htdocs/langs/ne_NP/exports.lang @@ -0,0 +1,135 @@ +# Dolibarr language file - Source file is en_US - exports +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 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 your selections as an export profile/template (for reuse). +SaveImportModel=Save this import profile (for reuse) ... +ExportModelName=Export profile name +ExportModelSaved=Export profile saved as %s. +ExportableFields=Exportable fields +ExportedFields=Exported fields +ImportModelName=Import profile name +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 the file format in the combo box and click on "Generate" to build the export file... +AvailableFormats=Available Formats +LibraryShort=Library +ExportCsvSeparator=Csv caracter separator +ImportCsvSeparator=Csv caracter separator +Step=Step +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 extract data +LineId=Id of line +LineLabel=Label of line +LineDescription=Description of line +LineUnitPrice=Unit price of line +LineVATRate=VAT Rate of line +LineQty=Quantity for line +LineTotalHT=Amount excl. tax for line +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 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) +Field=Field +NoFields=No fields +MoveField=Move field column number %s +ExampleOfImportFile=Example_of_import_file +SaveImportProfile=Save this import profile +ErrorImportDuplicateProfil=Failed to save this import profile with this name. An existing profile already exists with this name. +TablesTarget=Targeted tables +FieldsTarget=Targeted fields +FieldTarget=Targeted field +FieldSource=Source field +NbOfSourceLines=Number of lines in source file +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=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 correct all errors before running the definitive import. +FileWasImported=File was imported with number %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 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 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 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 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 +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=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 +ComputedField=Computed field +## filters +SelectFilterFields=If you want to filter on some values, just input values here. +FilteredFields=Filtered fields +FilteredFieldsValues=Value for filter +FormatControlRule=Format control rule +## imports updates +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/ne_NP/externalsite.lang b/htdocs/langs/ne_NP/externalsite.lang new file mode 100644 index 00000000000..da4853df0df --- /dev/null +++ b/htdocs/langs/ne_NP/externalsite.lang @@ -0,0 +1,5 @@ +# Dolibarr language file - Source file is en_US - externalsite +ExternalSiteSetup=Setup link to external website +ExternalSiteURL=External Site URL +ExternalSiteModuleNotComplete=Module ExternalSite was not configured properly. +ExampleMyMenuEntry=My menu entry diff --git a/htdocs/langs/ne_NP/ftp.lang b/htdocs/langs/ne_NP/ftp.lang new file mode 100644 index 00000000000..d80b87c2715 --- /dev/null +++ b/htdocs/langs/ne_NP/ftp.lang @@ -0,0 +1,14 @@ +# Dolibarr language file - Source file is en_US - ftp +FTPClientSetup=FTP Client module setup +NewFTPClient=New FTP connection setup +FTPArea=FTP Area +FTPAreaDesc=This screen shows a view of an FTP server. +SetupOfFTPClientModuleNotComplete=The setup of the FTP client module seems to be incomplete +FTPFeatureNotSupportedByYourPHP=Your PHP does not support FTP functions +FailedToConnectToFTPServer=Failed to connect to FTP server (server %s, port %s) +FailedToConnectToFTPServerWithCredentials=Failed to login to FTP server with defined login/password +FTPFailedToRemoveFile=Failed to remove file %s. +FTPFailedToRemoveDir=Failed to remove directory %s: check permissions and that the directory is empty. +FTPPassiveMode=Passive mode +ChooseAFTPEntryIntoMenu=Choose a FTP site from the menu... +FailedToGetFile=Failed to get files %s diff --git a/htdocs/langs/ne_NP/help.lang b/htdocs/langs/ne_NP/help.lang new file mode 100644 index 00000000000..048de16d3c0 --- /dev/null +++ b/htdocs/langs/ne_NP/help.lang @@ -0,0 +1,23 @@ +# Dolibarr language file - Source file is en_US - help +CommunitySupport=Forum/Wiki support +EMailSupport=Emails support +RemoteControlSupport=Online real-time / remote support +OtherSupport=Other support +ToSeeListOfAvailableRessources=To contact/see available resources: +HelpCenter=Help Center +DolibarrHelpCenter=Dolibarr Help and Support Center +ToGoBackToDolibarr=Otherwise, click here to continue to use Dolibarr. +TypeOfSupport=Type of support +TypeSupportCommunauty=Community (free) +TypeSupportCommercial=Commercial +TypeOfHelp=Type +NeedHelpCenter=Need help or support? +Efficiency=Efficiency +TypeHelpOnly=Help only +TypeHelpDev=Help+Development +TypeHelpDevForm=Help+Development+Training +BackToHelpCenter=Otherwise, go back to Help center home page. +LinkToGoldMember=You can call one of the trainers preselected by Dolibarr for your language (%s) by clicking their Widget (status and maximum price are automatically updated): +PossibleLanguages=Supported languages +SubscribeToFoundation=Help the Dolibarr project, subscribe to the foundation +SeeOfficalSupport=For official Dolibarr support in your language:
    %s diff --git a/htdocs/langs/ne_NP/holiday.lang b/htdocs/langs/ne_NP/holiday.lang new file mode 100644 index 00000000000..82de49f9c5f --- /dev/null +++ b/htdocs/langs/ne_NP/holiday.lang @@ -0,0 +1,133 @@ +# Dolibarr language file - Source file is en_US - holiday +HRM=HRM +Holidays=Leave +CPTitreMenu=Leave +MenuReportMonth=Monthly statement +MenuAddCP=New leave request +NotActiveModCP=You must enable the module Leave to view this page. +AddCP=Make a leave request +DateDebCP=Start date +DateFinCP=End date +DraftCP=Draft +ToReviewCP=Awaiting approval +ApprovedCP=Approved +CancelCP=Canceled +RefuseCP=Refused +ValidatorCP=Approbator +ListeCP=List of leave +LeaveId=Leave ID +ReviewedByCP=Will be approved by +UserID=User ID +UserForApprovalID=User for approval ID +UserForApprovalFirstname=First name of approval user +UserForApprovalLastname=Last name of approval user +UserForApprovalLogin=Login of approval user +DescCP=Description +SendRequestCP=Create leave request +DelayToRequestCP=Leave requests must be made at least %s day(s) before them. +MenuConfCP=Balance of leave +SoldeCPUser=Leave balance is %s days. +ErrorEndDateCP=You must select an end date greater than the start date. +ErrorSQLCreateCP=An SQL error occurred during the creation: +ErrorIDFicheCP=An error has occurred, the leave request does not exist. +ReturnCP=Return to previous page +ErrorUserViewCP=You are not authorized to read this leave request. +InfosWorkflowCP=Information Workflow +RequestByCP=Requested by +TitreRequestCP=Leave request +TypeOfLeaveId=Type of leave ID +TypeOfLeaveCode=Type of leave code +TypeOfLeaveLabel=Type of leave label +NbUseDaysCP=Number of days of vacation consumed +NbUseDaysCPHelp=The calculation takes into account the non working days and the holidays defined in the dictionary. +NbUseDaysCPShort=Days consumed +NbUseDaysCPShortInMonth=Days consumed in month +DayIsANonWorkingDay=%s is a non working day +DateStartInMonth=Start date in month +DateEndInMonth=End date in month +EditCP=Edit +DeleteCP=Delete +ActionRefuseCP=Refuse +ActionCancelCP=Cancel +StatutCP=Status +TitleDeleteCP=Delete the leave request +ConfirmDeleteCP=Confirm the deletion of this leave request? +ErrorCantDeleteCP=Error you don't have the right to delete this leave request. +CantCreateCP=You don't have the right to make leave requests. +InvalidValidatorCP=You must choose an approbator to your leave request. +NoDateDebut=You must select a start date. +NoDateFin=You must select an end date. +ErrorDureeCP=Your leave request does not contain working day. +TitleValidCP=Approve the leave request +ConfirmValidCP=Are you sure you want to approve the leave request? +DateValidCP=Date approved +TitleToValidCP=Send leave request +ConfirmToValidCP=Are you sure you want to send the leave request? +TitleRefuseCP=Refuse the leave request +ConfirmRefuseCP=Are you sure you want to refuse the leave request? +NoMotifRefuseCP=You must choose a reason for refusing the request. +TitleCancelCP=Cancel the leave request +ConfirmCancelCP=Are you sure you want to cancel the leave request? +DetailRefusCP=Reason for refusal +DateRefusCP=Date of refusal +DateCancelCP=Date of cancellation +DefineEventUserCP=Assign an exceptional leave for a user +addEventToUserCP=Assign leave +NotTheAssignedApprover=You are not the assigned approver +MotifCP=Reason +UserCP=User +ErrorAddEventToUserCP=An error occurred while adding the exceptional leave. +AddEventToUserOkCP=The addition of the exceptional leave has been completed. +MenuLogCP=View change logs +LogCP=Log of updates of available vacation days +ActionByCP=Performed by +UserUpdateCP=For the user +PrevSoldeCP=Previous Balance +NewSoldeCP=New Balance +alreadyCPexist=A leave request has already been done on this period. +FirstDayOfHoliday=First day of vacation +LastDayOfHoliday=Last day of vacation +BoxTitleLastLeaveRequests=Latest %s modified leave requests +HolidaysMonthlyUpdate=Monthly update +ManualUpdate=Manual update +HolidaysCancelation=Leave request cancelation +EmployeeLastname=Employee last name +EmployeeFirstname=Employee first name +TypeWasDisabledOrRemoved=Leave type (id %s) was disabled or removed +LastHolidays=Latest %s leave requests +AllHolidays=All leave requests +HalfDay=Half day +NotTheAssignedApprover=You are not the assigned approver +LEAVE_PAID=Paid vacation +LEAVE_SICK=Sick leave +LEAVE_OTHER=Other leave +LEAVE_PAID_FR=Paid vacation +## Configuration du Module ## +LastUpdateCP=Latest automatic update of leave allocation +MonthOfLastMonthlyUpdate=Month of latest automatic update of leave allocation +UpdateConfCPOK=Updated successfully. +Module27130Name= Management of leave requests +Module27130Desc= Management of leave requests +ErrorMailNotSend=An error occurred while sending email: +NoticePeriod=Notice period +#Messages +HolidaysToValidate=Validate leave requests +HolidaysToValidateBody=Below is a leave request to validate +HolidaysToValidateDelay=This leave request will take place within a period of less than %s days. +HolidaysToValidateAlertSolde=The user who made this leave request does not have enough available days. +HolidaysValidated=Validated leave requests +HolidaysValidatedBody=Your leave request for %s to %s has been validated. +HolidaysRefused=Request denied +HolidaysRefusedBody=Your leave request for %s to %s has been denied for the following reason: +HolidaysCanceled=Canceled leaved request +HolidaysCanceledBody=Your leave request for %s to %s has been canceled. +FollowedByACounter=1: This type of leave need to be followed by a counter. Counter is incremented manually or automatically and when a leave request is validated, counter is decremented.
    0: Not followed by a counter. +NoLeaveWithCounterDefined=There is no leave types defined that need to be followed by a counter +GoIntoDictionaryHolidayTypes=Go into Home - Setup - Dictionaries - Type of leave to setup the different types of leaves. +HolidaySetup=Setup of module Holiday +HolidaysNumberingModules=Leave requests numbering models +TemplatePDFHolidays=Template for leave requests PDF +FreeLegalTextOnHolidays=Free text on PDF +WatermarkOnDraftHolidayCards=Watermarks on draft leave requests +HolidaysToApprove=Holidays to approve +NobodyHasPermissionToValidateHolidays=Nobody has permission to validate holidays diff --git a/htdocs/langs/ne_NP/hrm.lang b/htdocs/langs/ne_NP/hrm.lang new file mode 100644 index 00000000000..3697c47e30d --- /dev/null +++ b/htdocs/langs/ne_NP/hrm.lang @@ -0,0 +1,18 @@ +# Dolibarr language file - en_US - hrm +# Admin +HRM_EMAIL_EXTERNAL_SERVICE=Email to prevent HRM external service +Establishments=Establishments +Establishment=Establishment +NewEstablishment=New establishment +DeleteEstablishment=Delete establishment +ConfirmDeleteEstablishment=Are you sure you wish to delete this establishment? +OpenEtablishment=Open establishment +CloseEtablishment=Close establishment +# Dictionary +DictionaryPublicHolidays=HRM - Public holidays +DictionaryDepartment=HRM - Department list +DictionaryFunction=HRM - Function list +# Module +Employees=Employees +Employee=Employee +NewEmployee=New employee diff --git a/htdocs/langs/ne_NP/install.lang b/htdocs/langs/ne_NP/install.lang new file mode 100644 index 00000000000..f67dff57184 --- /dev/null +++ b/htdocs/langs/ne_NP/install.lang @@ -0,0 +1,223 @@ +# Dolibarr language file - Source file is en_US - install +InstallEasy=Just follow the instructions step by step. +MiscellaneousChecks=Prerequisites check +ConfFileExists=Configuration file %s exists. +ConfFileDoesNotExistsAndCouldNotBeCreated=Configuration file %s does not exist and could not be created! +ConfFileCouldBeCreated=Configuration file %s could be created. +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=Configuration file %s is writable. +ConfFileMustBeAFileNotADir=Configuration file %s must be a file, not a directory. +ConfFileReload=Reloading parameters from configuration file. +PHPSupportSessions=This PHP supports sessions. +PHPSupportPOSTGETOk=This PHP supports variables POST and 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. +PHPSupportCalendar=This PHP supports calendars extensions. +PHPSupportUTF8=This PHP supports UTF8 functions. +PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. +PHPSupport=This PHP supports %s functions. +PHPMemoryOK=Your PHP max session memory is set to %s. This should be enough. +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. +ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. +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. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. +ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. +ErrorDirDoesNotExists=Directory %s does not exist. +ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. +ErrorWrongValueForParameter=You may have typed a wrong value for parameter '%s'. +ErrorFailedToCreateDatabase=Failed to create database '%s'. +ErrorFailedToConnectToDatabase=Failed to connect to database '%s'. +ErrorDatabaseVersionTooLow=Database version (%s) too old. Version %s or higher is required. +ErrorPHPVersionTooLow=PHP version too old. Version %s is required. +ErrorConnectedButDatabaseNotFound=Connection to server successful but database '%s' not found. +ErrorDatabaseAlreadyExists=Database '%s' already exists. +IfDatabaseNotExistsGoBackAndUncheckCreate=If the database does not exist, go back and check option "Create database". +IfDatabaseExistsGoBackAndCheckCreate=If database already exists, go back and uncheck "Create database" option. +WarningBrowserTooOld=Version of browser is too old. Upgrading your browser to a recent version of Firefox, Chrome or Opera is highly recommended. +PHPVersion=PHP Version +License=Using license +ConfigurationFile=Configuration file +WebPagesDirectory=Directory where web pages are stored +DocumentsDirectory=Directory to store uploaded and generated documents +URLRoot=URL Root +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=Driver type +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. +DatabaseServer=Database server +DatabaseName=Database name +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=Password for Dolibarr database owner. +CreateDatabase=Create database +CreateUser=Create user account or grant user account permission on the Dolibarr database +DatabaseSuperUserAccess=Database server - Superuser access +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 +ServerConnection=Server connection +DatabaseCreation=Database creation +CreateDatabaseObjects=Database objects creation +ReferenceDataLoading=Reference data loading +TablesAndPrimaryKeysCreation=Tables and Primary keys creation +CreateTableAndPrimaryKey=Create table %s +CreateOtherKeysForTable=Create foreign keys and indexes for table %s +OtherKeysCreation=Foreign keys and indexes creation +FunctionsCreation=Functions creation +AdminAccountCreation=Administrator login creation +PleaseTypePassword=Please type a password, empty passwords are not allowed! +PleaseTypeALogin=Please type a login! +PasswordsMismatch=Passwords differs, please try again! +SetupEnd=End of setup +SystemIsInstalled=This installation is complete. +SystemIsUpgraded=Dolibarr has been upgraded successfully. +YouNeedToPersonalizeSetup=You need to configure Dolibarr to suit your needs (appearance, features, ...). To do this, please follow the link below: +AdminLoginCreatedSuccessfuly=Dolibarr administrator login '%s' created successfully. +GoToDolibarr=Go to Dolibarr +GoToSetupArea=Go to Dolibarr (setup area) +MigrationNotFinished=The database version is not completely up to date: run the upgrade process again. +GoToUpgradePage=Go to upgrade page again +WithNoSlashAtTheEnd=Without the slash "/" at the end +DirectoryRecommendation=IMPORTANT: You must use a directory that is outside of the web pages (so do not use a subdirectory of previous parameter). +LoginAlreadyExists=Already exists +DolibarrAdminLogin=Dolibarr admin login +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 +ChoosedMigrateScript=Choose migration script +DataMigration=Database migration (data) +DatabaseMigration=Database migration (structure + some data) +ProcessMigrateScript=Script processing +ChooseYourSetupMode=Choose your setup mode and click "Start"... +FreshInstall=Fresh install +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=Upgrade +UpgradeDesc=Use this mode if you have replaced old Dolibarr files with files from a newer version. This will upgrade your database and data. +Start=Start +InstallNotAllowed=Setup not allowed by conf.php permissions +YouMustCreateWithPermission=You must create file %s and set write permissions on it for the web server during install process. +CorrectProblemAndReloadPage=Please fix the problem and press F5 to reload the page. +AlreadyDone=Already migrated +DatabaseVersion=Database version +ServerVersion=Database server version +YouMustCreateItAndAllowServerToWrite=You must create this directory and allow for the web server to write into it. +DBSortingCollation=Character sorting order +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. +OrphelinsPaymentsDetectedByMethod=Orphans payment detected by method %s +RemoveItManuallyAndPressF5ToContinue=Remove it manually and press F5 to continue. +FieldRenamed=Field renamed +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=Recommended choice to install version %s from your current version %s +InstallChoiceSuggested=Install choice suggested by installer. +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=If this name is correct and that database does not exist yet, you must check option "Create database". +OpenBaseDir=PHP openbasedir parameter +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 +MigrationShippingDelivery=Upgrade storage of shipping +MigrationShippingDelivery2=Upgrade storage of shipping 2 +MigrationFinished=Migration finished +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. +ActivateModule=Activate module %s +ShowEditTechnicalParameters=Click here to show/edit advanced parameters (expert mode) +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 +######### +# upgrade +MigrationFixData=Fix for denormalized data +MigrationOrder=Data migration for customer's orders +MigrationSupplierOrder=Data migration for vendor's orders +MigrationProposal=Data migration for commercial proposals +MigrationInvoice=Data migration for customer's invoices +MigrationContract=Data migration for contracts +MigrationSuccessfullUpdate=Upgrade successful +MigrationUpdateFailed=Failed upgrade process +MigrationRelationshipTables=Data migration for relationship tables (%s) +MigrationPaymentsUpdate=Payment data correction +MigrationPaymentsNumberToUpdate=%s payment(s) to update +MigrationProcessPaymentUpdate=Update payment(s) %s +MigrationPaymentsNothingToUpdate=No more things to do +MigrationPaymentsNothingUpdatable=No more payments that can be corrected +MigrationContractsUpdate=Contract data correction +MigrationContractsNumberToUpdate=%s contract(s) to update +MigrationContractsLineCreation=Create contract line for contract ref %s +MigrationContractsNothingToUpdate=No more things to do +MigrationContractsFieldDontExist=Field fk_facture does not exist anymore. Nothing to do. +MigrationContractsEmptyDatesUpdate=Contract empty date correction +MigrationContractsEmptyDatesUpdateSuccess=Contract empty date correction done successfully +MigrationContractsEmptyDatesNothingToUpdate=No contract empty date to correct +MigrationContractsEmptyCreationDatesNothingToUpdate=No contract creation date to correct +MigrationContractsInvalidDatesUpdate=Bad value date contract correction +MigrationContractsInvalidDateFix=Correct contract %s (Contract date=%s, Starting service date min=%s) +MigrationContractsInvalidDatesNumber=%s contracts modified +MigrationContractsInvalidDatesNothingToUpdate=No date with bad value to correct +MigrationContractsIncoherentCreationDateUpdate=Bad value contract creation date correction +MigrationContractsIncoherentCreationDateUpdateSuccess=Bad value contract creation date correction done successfully +MigrationContractsIncoherentCreationDateNothingToUpdate=No bad value for contract creation date to correct +MigrationReopeningContracts=Open contract closed by error +MigrationReopenThisContract=Reopen contract %s +MigrationReopenedContractsNumber=%s contracts modified +MigrationReopeningContractsNothingToUpdate=No closed contract to open +MigrationBankTransfertsUpdate=Update links between bank entry and a bank transfer +MigrationBankTransfertsNothingToUpdate=All links are up to date +MigrationShipmentOrderMatching=Sendings receipt update +MigrationDeliveryOrderMatching=Delivery receipt update +MigrationDeliveryDetail=Delivery update +MigrationStockDetail=Update stock value of products +MigrationMenusDetail=Update dynamic menus tables +MigrationDeliveryAddress=Update delivery address in shipments +MigrationProjectTaskActors=Data migration for table llx_projet_task_actors +MigrationProjectUserResp=Data migration field fk_user_resp of llx_projet to llx_element_contact +MigrationProjectTaskTime=Update time spent in seconds +MigrationActioncommElement=Update data on actions +MigrationPaymentMode=Data migration for payment type +MigrationCategorieAssociation=Migration of categories +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 +MigrationFieldsSocialNetworks=Migration of users fields social networks (%s) +MigrationReloadModule=Reload module %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. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/ne_NP/interventions.lang b/htdocs/langs/ne_NP/interventions.lang new file mode 100644 index 00000000000..e5936f8246e --- /dev/null +++ b/htdocs/langs/ne_NP/interventions.lang @@ -0,0 +1,66 @@ +# Dolibarr language file - Source file is en_US - interventions +Intervention=Intervention +Interventions=Interventions +InterventionCard=Intervention card +NewIntervention=New intervention +AddIntervention=Create intervention +ChangeIntoRepeatableIntervention=Change to repeatable intervention +ListOfInterventions=List of interventions +ActionsOnFicheInter=Actions on intervention +LastInterventions=Latest %s interventions +AllInterventions=All interventions +CreateDraftIntervention=Create draft +InterventionContact=Intervention contact +DeleteIntervention=Delete intervention +ValidateIntervention=Validate intervention +ModifyIntervention=Modify intervention +DeleteInterventionLine=Delete intervention line +ConfirmDeleteIntervention=Are you sure you want to delete this intervention? +ConfirmValidateIntervention=Are you sure you want to validate this intervention under name %s? +ConfirmModifyIntervention=Are you sure you want to modify this intervention? +ConfirmDeleteInterventionLine=Are you sure you want to delete this intervention line? +ConfirmCloneIntervention=Are you sure you want to clone this intervention? +NameAndSignatureOfInternalContact=Name and signature of intervening: +NameAndSignatureOfExternalContact=Name and signature of customer: +DocumentModelStandard=Standard document model for interventions +InterventionCardsAndInterventionLines=Interventions and lines of interventions +InterventionClassifyBilled=Classify "Billed" +InterventionClassifyUnBilled=Classify "Unbilled" +InterventionClassifyDone=Classify "Done" +StatusInterInvoiced=Billed +SendInterventionRef=Submission of intervention %s +SendInterventionByMail=Send intervention by email +InterventionCreatedInDolibarr=Intervention %s created +InterventionValidatedInDolibarr=Intervention %s validated +InterventionModifiedInDolibarr=Intervention %s modified +InterventionClassifiedBilledInDolibarr=Intervention %s set as billed +InterventionClassifiedUnbilledInDolibarr=Intervention %s set as unbilled +InterventionSentByEMail=Intervention %s sent by email +InterventionDeletedInDolibarr=Intervention %s deleted +InterventionsArea=Interventions area +DraftFichinter=Draft interventions +LastModifiedInterventions=Latest %s modified interventions +FichinterToProcess=Interventions to process +TypeContact_fichinter_external_CUSTOMER=Following-up customer contact +PrintProductsOnFichinter=Print also lines of type "product" (not only services) on intervention card +PrintProductsOnFichinterDetails=interventions generated from orders +UseServicesDurationOnFichinter=Use services duration for interventions generated from orders +UseDurationOnFichinter=Hides the duration field for intervention records +UseDateWithoutHourOnFichinter=Hides hours and minutes off the date field for intervention records +InterventionStatistics=Statistics of interventions +NbOfinterventions=No. of intervention cards +NumberOfInterventionsByMonth=No. of intervention cards by month (date of validation) +AmountOfInteventionNotIncludedByDefault=Amount of intervention is not included by default into profit (in most cases, timesheets are used to count time spent). Add option PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT to 1 into home-setup-other to include them. +InterId=Intervention id +InterRef=Intervention ref. +InterDateCreation=Date creation intervention +InterDuration=Duration intervention +InterStatus=Status intervention +InterNote=Note intervention +InterLine=Line of intervention +InterLineId=Line id intervention +InterLineDate=Line date intervention +InterLineDuration=Line duration intervention +InterLineDesc=Line description intervention +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/ne_NP/languages.lang b/htdocs/langs/ne_NP/languages.lang new file mode 100644 index 00000000000..6185183161b --- /dev/null +++ b/htdocs/langs/ne_NP/languages.lang @@ -0,0 +1,89 @@ +# Dolibarr language file - Source file is en_US - languages +Language_ar_AR=Arabic +Language_ar_EG=Arabic (Egypt) +Language_ar_SA=Arabic +Language_bn_BD=Bengali +Language_bg_BG=Bulgarian +Language_bs_BA=Bosnian +Language_ca_ES=Catalan +Language_cs_CZ=Czech +Language_da_DA=Danish +Language_da_DK=Danish +Language_de_DE=German +Language_de_AT=German (Austria) +Language_de_CH=German (Switzerland) +Language_el_GR=Greek +Language_el_CY=Greek (Cyprus) +Language_en_AU=English (Australia) +Language_en_CA=English (Canada) +Language_en_GB=English (United Kingdom) +Language_en_IN=English (India) +Language_en_NZ=English (New Zealand) +Language_en_SA=English (Saudi Arabia) +Language_en_US=English (United States) +Language_en_ZA=English (South Africa) +Language_es_ES=Spanish +Language_es_AR=Spanish (Argentina) +Language_es_BO=Spanish (Bolivia) +Language_es_CL=Spanish (Chile) +Language_es_CO=Spanish (Colombia) +Language_es_DO=Spanish (Dominican Republic) +Language_es_EC=Spanish (Ecuador) +Language_es_HN=Spanish (Honduras) +Language_es_MX=Spanish (Mexico) +Language_es_PA=Spanish (Panama) +Language_es_PY=Spanish (Paraguay) +Language_es_PE=Spanish (Peru) +Language_es_PR=Spanish (Puerto Rico) +Language_es_UY=Spanish (Uruguay) +Language_es_VE=Spanish (Venezuela) +Language_et_EE=Estonian +Language_eu_ES=Basque +Language_fa_IR=Persian +Language_fi_FI=Finnish +Language_fr_BE=French (Belgium) +Language_fr_CA=French (Canada) +Language_fr_CH=French (Switzerland) +Language_fr_FR=French +Language_fr_NC=French (New Caledonia) +Language_fy_NL=Frisian +Language_he_IL=Hebrew +Language_hr_HR=Croatian +Language_hu_HU=Hungarian +Language_id_ID=Indonesian +Language_is_IS=Icelandic +Language_it_IT=Italian +Language_ja_JP=Japanese +Language_ka_GE=Georgian +Language_km_KH=Khmer +Language_kn_IN=Kannada +Language_ko_KR=Korean +Language_lo_LA=Lao +Language_lt_LT=Lithuanian +Language_lv_LV=Latvian +Language_mk_MK=Macedonian +Language_mn_MN=Mongolian +Language_nb_NO=Norwegian (Bokmål) +Language_nl_BE=Dutch (Belgium) +Language_nl_NL=Dutch +Language_pl_PL=Polish +Language_pt_BR=Portuguese (Brazil) +Language_pt_PT=Portuguese +Language_ro_RO=Romanian +Language_ru_RU=Russian +Language_ru_UA=Russian (Ukraine) +Language_tr_TR=Turkish +Language_sl_SI=Slovenian +Language_sv_SV=Swedish +Language_sv_SE=Swedish +Language_sq_AL=Albanian +Language_sk_SK=Slovakian +Language_sr_RS=Serbian +Language_sw_SW=Kiswahili +Language_th_TH=Thai +Language_uk_UA=Ukrainian +Language_uz_UZ=Uzbek +Language_vi_VN=Vietnamese +Language_zh_CN=Chinese +Language_zh_TW=Chinese (Traditional) +Language_bh_MY=Malay diff --git a/htdocs/langs/ne_NP/ldap.lang b/htdocs/langs/ne_NP/ldap.lang new file mode 100644 index 00000000000..8b6f0864215 --- /dev/null +++ b/htdocs/langs/ne_NP/ldap.lang @@ -0,0 +1,27 @@ +# Dolibarr language file - Source file is en_US - ldap +YouMustChangePassNextLogon=Password for user %s on the domain %s must be changed. +UserMustChangePassNextLogon=User must change password on the domain %s +LDAPInformationsForThisContact=Information in LDAP database for this contact +LDAPInformationsForThisUser=Information in LDAP database for this user +LDAPInformationsForThisGroup=Information in LDAP database for this group +LDAPInformationsForThisMember=Information in LDAP database for this member +LDAPInformationsForThisMemberType=Information in LDAP database for this member type +LDAPAttributes=LDAP attributes +LDAPCard=LDAP card +LDAPRecordNotFound=Record not found in LDAP database +LDAPUsers=Users in LDAP database +LDAPFieldStatus=Status +LDAPFieldFirstSubscriptionDate=First subscription date +LDAPFieldFirstSubscriptionAmount=First subscription amount +LDAPFieldLastSubscriptionDate=Latest subscription date +LDAPFieldLastSubscriptionAmount=Latest subscription amount +LDAPFieldSkype=Skype id +LDAPFieldSkypeExample=Example: skypeName +UserSynchronized=User synchronized +GroupSynchronized=Group synchronized +MemberSynchronized=Member synchronized +MemberTypeSynchronized=Member type synchronized +ContactSynchronized=Contact synchronized +ForceSynchronize=Force synchronizing Dolibarr -> LDAP +ErrorFailedToReadLDAP=Failed to read LDAP database. Check LDAP module setup and database accessibility. +PasswordOfUserInLDAP=Password of user in LDAP diff --git a/htdocs/langs/ne_NP/link.lang b/htdocs/langs/ne_NP/link.lang new file mode 100644 index 00000000000..1ffcd41a18b --- /dev/null +++ b/htdocs/langs/ne_NP/link.lang @@ -0,0 +1,11 @@ +# Dolibarr language file - Source file is en_US - languages +LinkANewFile=Link a new file/document +LinkedFiles=Linked files and documents +NoLinkFound=No registered links +LinkComplete=The file has been linked successfully +ErrorFileNotLinked=The file could not be linked +LinkRemoved=The link %s has been removed +ErrorFailedToDeleteLink= Failed to remove link '%s' +ErrorFailedToUpdateLink= Failed to update link '%s' +URLToLink=URL to link +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/ne_NP/loan.lang b/htdocs/langs/ne_NP/loan.lang new file mode 100644 index 00000000000..534dee08867 --- /dev/null +++ b/htdocs/langs/ne_NP/loan.lang @@ -0,0 +1,31 @@ +# Dolibarr language file - Source file is en_US - loan +Loan=Loan +Loans=Loans +NewLoan=New Loan +ShowLoan=Show Loan +PaymentLoan=Loan payment +LoanPayment=Loan payment +ShowLoanPayment=Show Loan Payment +LoanCapital=Capital +Insurance=Insurance +Interest=Interest +Nbterms=Number of terms +Term=Term +LoanAccountancyCapitalCode=Accounting account capital +LoanAccountancyInsuranceCode=Accounting account insurance +LoanAccountancyInterestCode=Accounting account interest +ConfirmDeleteLoan=Confirm deleting this loan +LoanDeleted=Loan Deleted Successfully +ConfirmPayLoan=Confirm classify paid this loan +LoanPaid=Loan Paid +ListLoanAssociatedProject=List of loan associated with the project +AddLoan=Create loan +FinancialCommitment=Financial commitment +InterestAmount=Interest +CapitalRemain=Capital remain +# Admin +ConfigLoan=Configuration of the module loan +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 diff --git a/htdocs/langs/ne_NP/mailmanspip.lang b/htdocs/langs/ne_NP/mailmanspip.lang new file mode 100644 index 00000000000..bab4b3576b4 --- /dev/null +++ b/htdocs/langs/ne_NP/mailmanspip.lang @@ -0,0 +1,27 @@ +# Dolibarr language file - Source file is en_US - mailmanspip +MailmanSpipSetup=Mailman and SPIP module Setup +MailmanTitle=Mailman mailing list system +TestSubscribe=To test subscription to Mailman lists +TestUnSubscribe=To test unsubscribe from Mailman lists +MailmanCreationSuccess=Subscription test was executed successfully +MailmanDeletionSuccess=Unsubscription test was executed successfully +SynchroMailManEnabled=A Mailman update will be performed +SynchroSpipEnabled=A Spip update will be performed +DescADHERENT_MAILMAN_ADMINPW=Mailman administrator password +DescADHERENT_MAILMAN_URL=URL for Mailman subscriptions +DescADHERENT_MAILMAN_UNSUB_URL=URL for Mailman unsubscriptions +DescADHERENT_MAILMAN_LISTS=List(s) for automatic inscription of new members (separated by a comma) +SPIPTitle=SPIP Content Management System +DescADHERENT_SPIP_SERVEUR=SPIP Server +DescADHERENT_SPIP_DB=SPIP database name +DescADHERENT_SPIP_USER=SPIP database login +DescADHERENT_SPIP_PASS=SPIP database password +AddIntoSpip=Add into SPIP +AddIntoSpipConfirmation=Are you sure you want to add this member into SPIP? +AddIntoSpipError=Failed to add the user in SPIP +DeleteIntoSpip=Remove from SPIP +DeleteIntoSpipConfirmation=Are you sure you want to remove this member from SPIP? +DeleteIntoSpipError=Failed to suppress the user from SPIP +SPIPConnectionFailed=Failed to connect to SPIP +SuccessToAddToMailmanList=%s successfully added to mailman list %s or SPIP database +SuccessToRemoveToMailmanList=%s successfully removed from mailman list %s or SPIP database diff --git a/htdocs/langs/ne_NP/mails.lang b/htdocs/langs/ne_NP/mails.lang new file mode 100644 index 00000000000..7b3bfd3852a --- /dev/null +++ b/htdocs/langs/ne_NP/mails.lang @@ -0,0 +1,170 @@ +# Dolibarr language file - Source file is en_US - mails +Mailing=EMailing +EMailing=EMailing +EMailings=EMailings +AllEMailings=All eMailings +MailCard=EMailing card +MailRecipients=Recipients +MailRecipient=Recipient +MailTitle=Description +MailFrom=Sender +MailErrorsTo=Errors to +MailReply=Reply to +MailTo=Receiver(s) +MailToUsers=To user(s) +MailCC=Copy to +MailToCCUsers=Copy to users(s) +MailCCC=Cached copy to +MailTopic=Email topic +MailText=Message +MailFile=Attached files +MailMessage=Email body +SubjectNotIn=Not in Subject +BodyNotIn=Not in Body +ShowEMailing=Show emailing +ListOfEMailings=List of emailings +NewMailing=New emailing +EditMailing=Edit emailing +ResetMailing=Resend emailing +DeleteMailing=Delete emailing +DeleteAMailing=Delete an emailing +PreviewMailing=Preview emailing +CreateMailing=Create emailing +TestMailing=Test email +ValidMailing=Valid emailing +MailingStatusDraft=Draft +MailingStatusValidated=Validated +MailingStatusSent=Sent +MailingStatusSentPartialy=Sent partially +MailingStatusSentCompletely=Sent completely +MailingStatusError=Error +MailingStatusNotSent=Not sent +MailSuccessfulySent=Email (from %s to %s) successfully accepted for delivery +MailingSuccessfullyValidated=EMailing successfully validated +MailUnsubcribe=Unsubscribe +MailingStatusNotContact=Don't contact anymore +MailingStatusReadAndUnsubscribe=Read and unsubscribe +ErrorMailRecipientIsEmpty=Email recipient is empty +WarningNoEMailsAdded=No new Email to add to recipient's list. +ConfirmValidMailing=Are you sure you want to validate this emailing? +ConfirmResetMailing=Warning, by re-initializing emailing %s, you will allow the re-sending this email in a bulk mailing. Are you sure you want to do this? +ConfirmDeleteMailing=Are you sure you want to delete this emailing? +NbOfUniqueEMails=No. of unique emails +NbOfEMails=No. of EMails +TotalNbOfDistinctRecipients=Number of distinct recipients +NoTargetYet=No recipients defined yet (Go on tab 'Recipients') +NoRecipientEmail=No recipient email for %s +RemoveRecipient=Remove recipient +YouCanAddYourOwnPredefindedListHere=To create your email selector module, see htdocs/core/modules/mailings/README. +EMailTestSubstitutionReplacedByGenericValues=When using test mode, substitutions variables are replaced by generic values +MailingAddFile=Attach this file +NoAttachedFiles=No attached files +BadEMail=Bad value for Email +ConfirmCloneEMailing=Are you sure you want to clone this emailing? +CloneContent=Clone message +CloneReceivers=Cloner recipients +DateLastSend=Date of latest sending +DateSending=Date sending +SentTo=Sent to %s +MailingStatusRead=Read +YourMailUnsubcribeOK=The email %s is correctly unsubscribe from mailing list +ActivateCheckReadKey=Key used to encrypt URL used for "Read Receipt" and "Unsubscribe" feature +EMailSentToNRecipients=Email sent to %s recipients. +EMailSentForNElements=Email sent for %s elements. +XTargetsAdded=%s recipients added into target list +OnlyPDFattachmentSupported=If the PDF documents were already generated for the objects to send, they will be attached to email. If not, no email will be sent (also, note that only pdf documents are supported as attachments in mass sending in this version). +AllRecipientSelected=The recipients of the %s record selected (if their email is known). +GroupEmails=Group emails +OneEmailPerRecipient=One email per recipient (by default, one email per record selected) +WarningIfYouCheckOneRecipientPerEmail=Warning, if you check this box, it means only one email will be sent for several different record selected, so, if your message contains substitution variables that refers to data of a record, it becomes not possible to replace them. +ResultOfMailSending=Result of mass Email sending +NbSelected=Number selected +NbIgnored=Number ignored +NbSent=Number sent +SentXXXmessages=%s message(s) sent. +ConfirmUnvalidateEmailing=Are you sure you want to change email %s to draft status? +MailingModuleDescContactsWithThirdpartyFilter=Contact with customer filters +MailingModuleDescContactsByCompanyCategory=Contacts by third-party category +MailingModuleDescContactsByCategory=Contacts by categories +MailingModuleDescContactsByFunction=Contacts by position +MailingModuleDescEmailsFromFile=Emails from file +MailingModuleDescEmailsFromUser=Emails input by user +MailingModuleDescDolibarrUsers=Users with Emails +MailingModuleDescThirdPartiesByCategories=Third parties (by categories) +SendingFromWebInterfaceIsNotAllowed=Sending from web interface is not allowed. + +# Libelle des modules de liste de destinataires mailing +LineInFile=Line %s in file +RecipientSelectionModules=Defined requests for recipient's selection +MailSelectedRecipients=Selected recipients +MailingArea=EMailings area +LastMailings=Latest %s emailings +TargetsStatistics=Targets statistics +NbOfCompaniesContacts=Unique contacts/addresses +MailNoChangePossible=Recipients for validated emailing can't be changed +SearchAMailing=Search mailing +SendMailing=Send emailing +SentBy=Sent by +MailingNeedCommand=Sending an emailing can be performed from command line. Ask your server administrator to launch the following command to send the emailing to all recipients: +MailingNeedCommand2=You can however send them online by adding parameter MAILING_LIMIT_SENDBYWEB with value of max number of emails you want to send by session. For this, go on Home - Setup - Other. +ConfirmSendingEmailing=If you want to send emailing directly from this screen, please confirm you are sure you want to send emailing now from your browser ? +LimitSendingEmailing=Note: Sending of emailings from web interface is done in several times for security and timeout reasons, %s recipients at a time for each sending session. +TargetsReset=Clear list +ToClearAllRecipientsClickHere=Click here to clear the recipient list for this emailing +ToAddRecipientsChooseHere=Add recipients by choosing from the lists +NbOfEMailingsReceived=Mass emailings received +NbOfEMailingsSend=Mass emailings sent +IdRecord=ID record +DeliveryReceipt=Delivery Ack. +YouCanUseCommaSeparatorForSeveralRecipients=You can use the comma separator to specify several recipients. +TagCheckMail=Track mail opening +TagUnsubscribe=Unsubscribe link +TagSignature=Signature of sending user +EMailRecipient=Recipient Email +TagMailtoEmail=Recipient Email (including html "mailto:" link) +NoEmailSentBadSenderOrRecipientEmail=No email sent. Bad sender or recipient email. Verify user profile. +# Module Notifications +Notifications=Notifications +NoNotificationsWillBeSent=No email notifications are planned for this event and company +ANotificationsWillBeSent=1 notification will be sent by email +SomeNotificationsWillBeSent=%s notifications will be sent by email +AddNewNotification=Activate a new email notification target/event +ListOfActiveNotifications=List all active targets/events for email notification +ListOfNotificationsDone=List all email notifications sent +MailSendSetupIs=Configuration of email sending has been setup to '%s'. This mode can't be used to send mass emailing. +MailSendSetupIs2=You must first go, with an admin account, into menu %sHome - Setup - EMails%s to change parameter '%s' to use mode '%s'. With this mode, you can enter setup of the SMTP server provided by your Internet Service Provider and use Mass emailing feature. +MailSendSetupIs3=If you have any questions on how to setup your SMTP server, you can ask to %s. +YouCanAlsoUseSupervisorKeyword=You can also add the keyword __SUPERVISOREMAIL__ to have email being sent to the supervisor of user (works only if an email is defined for this supervisor) +NbOfTargetedContacts=Current number of targeted contact emails +UseFormatFileEmailToTarget=Imported file must have format email;name;firstname;other +UseFormatInputEmailToTarget=Enter a string with format email;name;firstname;other +MailAdvTargetRecipients=Recipients (advanced selection) +AdvTgtTitle=Fill input fields to preselect the third parties or contacts/addresses to target +AdvTgtSearchTextHelp=Use %% as wildcards. For example to find all item like jean, joe, jim, you can input j%%, you can also use ; as separator for value, and use ! for except this value. For example jean;joe;jim%%;!jimo;!jima% will target all jean, joe, start with jim but not jimo and not everything that starts with jima +AdvTgtSearchIntHelp=Use interval to select int or float value +AdvTgtMinVal=Minimum value +AdvTgtMaxVal=Maximum value +AdvTgtSearchDtHelp=Use interval to select date value +AdvTgtStartDt=Start dt. +AdvTgtEndDt=End dt. +AdvTgtTypeOfIncudeHelp=Target Email of third party and email of contact of the third party, or just third-party email or just contact email +AdvTgtTypeOfIncude=Type of targeted email +AdvTgtContactHelp=Use only if you target contact into "Type of targeted email" +AddAll=Add all +RemoveAll=Remove all +ItemsCount=Item(s) +AdvTgtNameTemplate=Filter name +AdvTgtAddContact=Add emails according to criteria +AdvTgtLoadFilter=Load filter +AdvTgtDeleteFilter=Delete filter +AdvTgtSaveFilter=Save filter +AdvTgtCreateFilter=Create filter +AdvTgtOrCreateNewFilter=Name of new filter +NoContactWithCategoryFound=No contact/address with a category found +NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found +OutGoingEmailSetup=Outgoing email setup +InGoingEmailSetup=Incoming email setup +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) +DefaultOutgoingEmailSetup=Default outgoing email setup +Information=Information +ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/ne_NP/main.lang b/htdocs/langs/ne_NP/main.lang new file mode 100644 index 00000000000..824a5e495b8 --- /dev/null +++ b/htdocs/langs/ne_NP/main.lang @@ -0,0 +1,1035 @@ +# Dolibarr language file - Source file is en_US - main +DIRECTION=ltr +# Note for Chinese: +# msungstdlight or cid0ct are for traditional Chinese (traditional does not render with Ubuntu pdf reader) +# stsongstdlight or cid0cs are for simplified Chinese +# To read Chinese pdf with Linux: sudo apt-get install poppler-data +FONTFORPDF=helvetica +FONTSIZEFORPDF=10 +SeparatorDecimal=. +SeparatorThousand=, +FormatDateShort=%m/%d/%Y +FormatDateShortInput=%m/%d/%Y +FormatDateShortJava=MM/dd/yyyy +FormatDateShortJavaInput=MM/dd/yyyy +FormatDateShortJQuery=mm/dd/yy +FormatDateShortJQueryInput=mm/dd/yy +FormatHourShortJQuery=HH:MI +FormatHourShort=%I:%M %p +FormatHourShortDuration=%H:%M +FormatDateTextShort=%b %d, %Y +FormatDateText=%B %d, %Y +FormatDateHourShort=%m/%d/%Y %I:%M %p +FormatDateHourSecShort=%m/%d/%Y %I:%M:%S %p +FormatDateHourTextShort=%b %d, %Y, %I:%M %p +FormatDateHourText=%B %d, %Y, %I:%M %p +DatabaseConnection=Database connection +NoTemplateDefined=No template available for this email type +AvailableVariables=Available substitution variables +NoTranslation=No translation +Translation=Translation +EmptySearchString=Enter a non empty search string +NoRecordFound=No record found +NoRecordDeleted=No record deleted +NotEnoughDataYet=Not enough data +NoError=No error +Error=Error +Errors=Errors +ErrorFieldRequired=Field '%s' is required +ErrorFieldFormat=Field '%s' has a bad value +ErrorFileDoesNotExists=File %s does not exist +ErrorFailedToOpenFile=Failed to open file %s +ErrorCanNotCreateDir=Cannot create dir %s +ErrorCanNotReadDir=Cannot read dir %s +ErrorConstantNotDefined=Parameter %s not defined +ErrorUnknown=Unknown error +ErrorSQL=SQL Error +ErrorLogoFileNotFound=Logo file '%s' was not found +ErrorGoToGlobalSetup=Go to 'Company/Organization' setup to fix this +ErrorGoToModuleSetup=Go to Module setup to fix this +ErrorFailedToSendMail=Failed to send mail (sender=%s, receiver=%s) +ErrorFileNotUploaded=File was not uploaded. Check that size does not exceed maximum allowed, that free space is available on disk and that there is not already a file with same name in this directory. +ErrorInternalErrorDetected=Error detected +ErrorWrongHostParameter=Wrong host parameter +ErrorYourCountryIsNotDefined=Your country is not defined. Go to Home-Setup-Edit and post the form again. +ErrorRecordIsUsedByChild=Failed to delete this record. This record is used by at least one child record. +ErrorWrongValue=Wrong value +ErrorWrongValueForParameterX=Wrong value for parameter %s +ErrorNoRequestInError=No request in error +ErrorServiceUnavailableTryLater=Service not available at the moment. Try again later. +ErrorDuplicateField=Duplicate value in a unique field +ErrorSomeErrorWereFoundRollbackIsDone=Some errors were found. Changes have been rolled back. +ErrorConfigParameterNotDefined=Parameter %s is not defined in the Dolibarr config file conf.php. +ErrorCantLoadUserFromDolibarrDatabase=Failed to find user %s in Dolibarr database. +ErrorNoVATRateDefinedForSellerCountry=Error, no vat rates defined for country '%s'. +ErrorNoSocialContributionForSellerCountry=Error, no social/fiscal taxes type defined for country '%s'. +ErrorFailedToSaveFile=Error, failed to save file. +ErrorCannotAddThisParentWarehouse=You are trying to add a parent warehouse which is already a child of a existing warehouse +MaxNbOfRecordPerPage=Max. number of records per page +NotAuthorized=You are not authorized to do that. +SetDate=Set date +SelectDate=Select a date +SeeAlso=See also %s +SeeHere=See here +ClickHere=Click here +Here=Here +Apply=Apply +BackgroundColorByDefault=Default background color +FileRenamed=The file was successfully renamed +FileGenerated=The file was successfully generated +FileSaved=The file was successfully saved +FileUploaded=The file was successfully uploaded +FileTransferComplete=File(s) uploaded successfully +FilesDeleted=File(s) successfully deleted +FileWasNotUploaded=A file is selected for attachment but was not yet uploaded. Click on "Attach file" for this. +NbOfEntries=No. of entries +GoToWikiHelpPage=Read online help (Internet access needed) +GoToHelpPage=Read help +RecordSaved=Record saved +RecordDeleted=Record deleted +RecordGenerated=Record generated +LevelOfFeature=Level of features +NotDefined=Not defined +DolibarrInHttpAuthenticationSoPasswordUseless=Dolibarr authentication mode is set to %s in configuration file conf.php.
    This means that the password database is external to Dolibarr, so changing this field may have no effect. +Administrator=Administrator +Undefined=Undefined +PasswordForgotten=Password forgotten? +NoAccount=No account? +SeeAbove=See above +HomeArea=Home +LastConnexion=Last login +PreviousConnexion=Previous login +PreviousValue=Previous value +ConnectedOnMultiCompany=Connected on environment +ConnectedSince=Connected since +AuthenticationMode=Authentication mode +RequestedUrl=Requested URL +DatabaseTypeManager=Database type manager +RequestLastAccessInError=Latest database access request error +ReturnCodeLastAccessInError=Return code for latest database access request error +InformationLastAccessInError=Information for latest database access request error +DolibarrHasDetectedError=Dolibarr has detected a technical error +YouCanSetOptionDolibarrMainProdToZero=You can read log file or set option $dolibarr_main_prod to '0' in your config file to get more information. +InformationToHelpDiagnose=This information can be useful for diagnostic purposes (you can set option $dolibarr_main_prod to '1' to remove such notices) +MoreInformation=More information +TechnicalInformation=Technical information +TechnicalID=Technical ID +LineID=Line ID +NotePublic=Note (public) +NotePrivate=Note (private) +PrecisionUnitIsLimitedToXDecimals=Dolibarr was setup to limit precision of unit prices to %s decimals. +DoTest=Test +ToFilter=Filter +NoFilter=No filter +WarningYouHaveAtLeastOneTaskLate=Warning, you have at least one element that has exceeded the tolerance time. +yes=yes +Yes=Yes +no=no +No=No +All=All +Home=Home +Help=Help +OnlineHelp=Online help +PageWiki=Wiki page +MediaBrowser=Media browser +Always=Always +Never=Never +Under=under +Period=Period +PeriodEndDate=End date for period +SelectedPeriod=Selected period +PreviousPeriod=Previous period +Activate=Activate +Activated=Activated +Closed=Closed +Closed2=Closed +NotClosed=Not closed +Enabled=Enabled +Enable=Enable +Deprecated=Deprecated +Disable=Disable +Disabled=Disabled +Add=Add +AddLink=Add link +RemoveLink=Remove link +AddToDraft=Add to draft +Update=Update +Close=Close +CloseBox=Remove widget from your dashboard +Confirm=Confirm +ConfirmSendCardByMail=Do you really want to send the content of this card by mail to %s? +Delete=Delete +Remove=Remove +Resiliate=Terminate +Cancel=Cancel +Modify=Modify +Edit=Edit +Validate=Validate +ValidateAndApprove=Validate and Approve +ToValidate=To validate +NotValidated=Not validated +Save=Save +SaveAs=Save As +SaveAndStay=Save and stay +SaveAndNew=Save and new +TestConnection=Test connection +ToClone=Clone +ConfirmCloneAsk=Are you sure you want to clone the object %s? +ConfirmClone=Choose data you want to clone: +NoCloneOptionsSpecified=No data to clone defined. +Of=of +Go=Go +Run=Run +CopyOf=Copy of +Show=Show +Hide=Hide +ShowCardHere=Show card +Search=Search +SearchOf=Search +SearchMenuShortCut=Ctrl + shift + f +Valid=Valid +Approve=Approve +Disapprove=Disapprove +ReOpen=Re-Open +Upload=Upload +ToLink=Link +Select=Select +Choose=Choose +Resize=Resize +ResizeOrCrop=Resize or Crop +Recenter=Recenter +Author=Author +User=User +Users=Users +Group=Group +Groups=Groups +NoUserGroupDefined=No user group defined +Password=Password +PasswordRetype=Retype your password +NoteSomeFeaturesAreDisabled=Note that a lot of features/modules are disabled in this demonstration. +Name=Name +NameSlashCompany=Name / Company +Person=Person +Parameter=Parameter +Parameters=Parameters +Value=Value +PersonalValue=Personal value +NewObject=New %s +NewValue=New value +CurrentValue=Current value +Code=Code +Type=Type +Language=Language +MultiLanguage=Multi-language +Note=Note +Title=Title +Label=Label +RefOrLabel=Ref. or label +Info=Log +Family=Family +Description=Description +Designation=Description +DescriptionOfLine=Description of line +DateOfLine=Date of line +DurationOfLine=Duration of line +Model=Doc template +DefaultModel=Default doc template +Action=Event +About=About +Number=Number +NumberByMonth=Number by month +AmountByMonth=Amount by month +Numero=Number +Limit=Limit +Limits=Limits +Logout=Logout +NoLogoutProcessWithAuthMode=No applicative disconnect feature with authentication mode %s +Connection=Login +Setup=Setup +Alert=Alert +MenuWarnings=Alerts +Previous=Previous +Next=Next +Cards=Cards +Card=Card +Now=Now +HourStart=Start hour +Date=Date +DateAndHour=Date and hour +DateToday=Today's date +DateReference=Reference date +DateStart=Start date +DateEnd=End date +DateCreation=Creation date +DateCreationShort=Creat. date +DateModification=Modification date +DateModificationShort=Modif. date +DateLastModification=Latest modification date +DateValidation=Validation date +DateClosing=Closing date +DateDue=Due date +DateValue=Value date +DateValueShort=Value date +DateOperation=Operation date +DateOperationShort=Oper. Date +DateLimit=Limit date +DateRequest=Request date +DateProcess=Process date +DateBuild=Report build date +DatePayment=Date of payment +DateApprove=Approving date +DateApprove2=Approving date (second approval) +RegistrationDate=Registration date +UserCreation=Creation user +UserModification=Modification user +UserValidation=Validation user +UserCreationShort=Creat. user +UserModificationShort=Modif. user +UserValidationShort=Valid. user +DurationYear=year +DurationMonth=month +DurationWeek=week +DurationDay=day +DurationYears=years +DurationMonths=months +DurationWeeks=weeks +DurationDays=days +Year=Year +Month=Month +Week=Week +WeekShort=Week +Day=Day +Hour=Hour +Minute=Minute +Second=Second +Years=Years +Months=Months +Days=Days +days=days +Hours=Hours +Minutes=Minutes +Seconds=Seconds +Weeks=Weeks +Today=Today +Yesterday=Yesterday +Tomorrow=Tomorrow +Morning=Morning +Afternoon=Afternoon +Quadri=Quadri +MonthOfDay=Month of the day +HourShort=H +MinuteShort=mn +Rate=Rate +CurrencyRate=Currency conversion rate +UseLocalTax=Include tax +Bytes=Bytes +KiloBytes=Kilobytes +MegaBytes=Megabytes +GigaBytes=Gigabytes +TeraBytes=Terabytes +UserAuthor=User of creation +UserModif=User of last update +b=b. +Kb=Kb +Mb=Mb +Gb=Gb +Tb=Tb +Cut=Cut +Copy=Copy +Paste=Paste +Default=Default +DefaultValue=Default value +DefaultValues=Default values/filters/sorting +Price=Price +PriceCurrency=Price (currency) +UnitPrice=Unit price +UnitPriceHT=Unit price (excl.) +UnitPriceHTCurrency=Unit price (excl.) (currency) +UnitPriceTTC=Unit price +PriceU=U.P. +PriceUHT=U.P. (net) +PriceUHTCurrency=U.P (currency) +PriceUTTC=U.P. (inc. tax) +Amount=Amount +AmountInvoice=Invoice amount +AmountInvoiced=Amount invoiced +AmountInvoicedHT=Amount invoiced (incl. tax) +AmountInvoicedTTC=Amount invoiced (excl. tax) +AmountPayment=Payment amount +AmountHTShort=Amount (excl.) +AmountTTCShort=Amount (inc. tax) +AmountHT=Amount (excl. tax) +AmountTTC=Amount (inc. tax) +AmountVAT=Amount tax +MulticurrencyAlreadyPaid=Already paid, original currency +MulticurrencyRemainderToPay=Remain to pay, original currency +MulticurrencyPaymentAmount=Payment amount, original currency +MulticurrencyAmountHT=Amount (excl. tax), original currency +MulticurrencyAmountTTC=Amount (inc. of tax), original currency +MulticurrencyAmountVAT=Amount tax, original currency +AmountLT1=Amount tax 2 +AmountLT2=Amount tax 3 +AmountLT1ES=Amount RE +AmountLT2ES=Amount IRPF +AmountTotal=Total amount +AmountAverage=Average amount +PriceQtyMinHT=Price quantity min. (excl. tax) +PriceQtyMinHTCurrency=Price quantity min. (excl. tax) (currency) +Percentage=Percentage +Total=Total +SubTotal=Subtotal +TotalHTShort=Total (excl.) +TotalHT100Short=Total 100%% (excl.) +TotalHTShortCurrency=Total (excl. in currency) +TotalTTCShort=Total (inc. tax) +TotalHT=Total (excl. tax) +TotalHTforthispage=Total (excl. tax) for this page +Totalforthispage=Total for this page +TotalTTC=Total (inc. tax) +TotalTTCToYourCredit=Total (inc. tax) to your credit +TotalVAT=Total tax +TotalVATIN=Total IGST +TotalLT1=Total tax 2 +TotalLT2=Total tax 3 +TotalLT1ES=Total RE +TotalLT2ES=Total IRPF +TotalLT1IN=Total CGST +TotalLT2IN=Total SGST +HT=Excl. tax +TTC=Inc. tax +INCVATONLY=Inc. VAT +INCT=Inc. all taxes +VAT=Sales tax +VATIN=IGST +VATs=Sales taxes +VATINs=IGST taxes +LT1=Sales tax 2 +LT1Type=Sales tax 2 type +LT2=Sales tax 3 +LT2Type=Sales tax 3 type +LT1ES=RE +LT2ES=IRPF +LT1IN=CGST +LT2IN=SGST +LT1GC=Additionnal cents +VATRate=Tax Rate +VATCode=Tax Rate code +VATNPR=Tax Rate NPR +DefaultTaxRate=Default tax rate +Average=Average +Sum=Sum +Delta=Delta +StatusToPay=To pay +RemainToPay=Remain to pay +Module=Module/Application +Modules=Modules/Applications +Option=Option +List=List +FullList=Full list +FullConversation=Full conversation +Statistics=Statistics +OtherStatistics=Other statistics +Status=Status +Favorite=Favorite +ShortInfo=Info. +Ref=Ref. +ExternalRef=Ref. extern +RefSupplier=Ref. vendor +RefPayment=Ref. payment +CommercialProposalsShort=Commercial proposals +Comment=Comment +Comments=Comments +ActionsToDo=Events to do +ActionsToDoShort=To do +ActionsDoneShort=Done +ActionNotApplicable=Not applicable +ActionRunningNotStarted=To start +ActionRunningShort=In progress +ActionDoneShort=Finished +ActionUncomplete=Incomplete +LatestLinkedEvents=Latest %s linked events +CompanyFoundation=Company/Organization +Accountant=Accountant +ContactsForCompany=Contacts for this third party +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 +ToDo=To do +Completed=Completed +Running=In progress +RequestAlreadyDone=Request already recorded +Filter=Filter +FilterOnInto=Search criteria '%s' into fields %s +RemoveFilter=Remove filter +ChartGenerated=Chart generated +ChartNotGenerated=Chart not generated +GeneratedOn=Build on %s +Generate=Generate +Duration=Duration +TotalDuration=Total duration +Summary=Summary +DolibarrStateBoard=Database Statistics +DolibarrWorkBoard=Open Items +NoOpenedElementToProcess=No open element to process +Available=Available +NotYetAvailable=Not yet available +NotAvailable=Not available +Categories=Tags/categories +Category=Tag/category +By=By +From=From +FromLocation=From +to=to +To=to +and=and +or=or +Other=Other +Others=Others +OtherInformations=Other information +Quantity=Quantity +Qty=Qty +ChangedBy=Changed by +ApprovedBy=Approved by +ApprovedBy2=Approved by (second approval) +Approved=Approved +Refused=Refused +ReCalculate=Recalculate +ResultKo=Failure +Reporting=Reporting +Reportings=Reporting +Draft=Draft +Drafts=Drafts +StatusInterInvoiced=Invoiced +Validated=Validated +Opened=Open +OpenAll=Open (All) +ClosedAll=Closed (All) +New=New +Discount=Discount +Unknown=Unknown +General=General +Size=Size +OriginalSize=Original size +Received=Received +Paid=Paid +Topic=Subject +ByCompanies=By third parties +ByUsers=By user +Links=Links +Link=Link +Rejects=Rejects +Preview=Preview +NextStep=Next step +Datas=Data +None=None +NoneF=None +NoneOrSeveral=None or several +Late=Late +LateDesc=An item is defined as Delayed as per the system configuration in menu Home - Setup - Alerts. +NoItemLate=No late item +Photo=Picture +Photos=Pictures +AddPhoto=Add picture +DeletePicture=Picture delete +ConfirmDeletePicture=Confirm picture deletion? +Login=Login +LoginEmail=Login (email) +LoginOrEmail=Login or Email +CurrentLogin=Current login +EnterLoginDetail=Enter login details +January=January +February=February +March=March +April=April +May=May +June=June +July=July +August=August +September=September +October=October +November=November +December=December +Month01=January +Month02=February +Month03=March +Month04=April +Month05=May +Month06=June +Month07=July +Month08=August +Month09=September +Month10=October +Month11=November +Month12=December +MonthShort01=Jan +MonthShort02=Feb +MonthShort03=Mar +MonthShort04=Apr +MonthShort05=May +MonthShort06=Jun +MonthShort07=Jul +MonthShort08=Aug +MonthShort09=Sep +MonthShort10=Oct +MonthShort11=Nov +MonthShort12=Dec +MonthVeryShort01=J +MonthVeryShort02=F +MonthVeryShort03=M +MonthVeryShort04=A +MonthVeryShort05=M +MonthVeryShort06=J +MonthVeryShort07=J +MonthVeryShort08=A +MonthVeryShort09=S +MonthVeryShort10=O +MonthVeryShort11=N +MonthVeryShort12=D +AttachedFiles=Attached files and documents +JoinMainDoc=Join main document +DateFormatYYYYMM=YYYY-MM +DateFormatYYYYMMDD=YYYY-MM-DD +DateFormatYYYYMMDDHHMM=YYYY-MM-DD HH:SS +ReportName=Report name +ReportPeriod=Report period +ReportDescription=Description +Report=Report +Keyword=Keyword +Origin=Origin +Legend=Legend +Fill=Fill +Reset=Reset +File=File +Files=Files +NotAllowed=Not allowed +ReadPermissionNotAllowed=Read permission not allowed +AmountInCurrency=Amount in %s currency +Example=Example +Examples=Examples +NoExample=No example +FindBug=Report a bug +NbOfThirdParties=Number of third parties +NbOfLines=Number of lines +NbOfObjects=Number of objects +NbOfObjectReferers=Number of related items +Referers=Related items +TotalQuantity=Total quantity +DateFromTo=From %s to %s +DateFrom=From %s +DateUntil=Until %s +Check=Check +Uncheck=Uncheck +Internal=Internal +External=External +Internals=Internal +Externals=External +Warning=Warning +Warnings=Warnings +BuildDoc=Build Doc +Entity=Environment +Entities=Entities +CustomerPreview=Customer preview +SupplierPreview=Vendor preview +ShowCustomerPreview=Show customer preview +ShowSupplierPreview=Show vendor preview +RefCustomer=Ref. customer +Currency=Currency +InfoAdmin=Information for administrators +Undo=Undo +Redo=Redo +ExpandAll=Expand all +UndoExpandAll=Undo expand +SeeAll=See all +Reason=Reason +FeatureNotYetSupported=Feature not yet supported +CloseWindow=Close window +Response=Response +Priority=Priority +SendByMail=Send by email +MailSentBy=Email sent by +TextUsedInTheMessageBody=Email body +SendAcknowledgementByMail=Send confirmation email +SendMail=Send email +Email=Email +NoEMail=No email +AlreadyRead=Already read +NotRead=Not read +NoMobilePhone=No mobile phone +Owner=Owner +FollowingConstantsWillBeSubstituted=The following constants will be replaced with the corresponding value. +Refresh=Refresh +BackToList=Back to list +GoBack=Go back +CanBeModifiedIfOk=Can be modified if valid +CanBeModifiedIfKo=Can be modified if not valid +ValueIsValid=Value is valid +ValueIsNotValid=Value is not valid +RecordCreatedSuccessfully=Record created successfully +RecordModifiedSuccessfully=Record modified successfully +RecordsModified=%s record(s) modified +RecordsDeleted=%s record(s) deleted +RecordsGenerated=%s record(s) generated +AutomaticCode=Automatic code +FeatureDisabled=Feature disabled +MoveBox=Move widget +Offered=Offered +NotEnoughPermissions=You don't have permission for this action +SessionName=Session name +Method=Method +Receive=Receive +CompleteOrNoMoreReceptionExpected=Complete or nothing more expected +ExpectedValue=Expected Value +PartialWoman=Partial +TotalWoman=Total +NeverReceived=Never received +Canceled=Canceled +YouCanChangeValuesForThisListFromDictionarySetup=You can change values for this list from menu Setup - Dictionaries +YouCanChangeValuesForThisListFrom=You can change values for this list from menu %s +YouCanSetDefaultValueInModuleSetup=You can set the default value used when creating a new record in module setup +Color=Color +Documents=Linked files +Documents2=Documents +UploadDisabled=Upload disabled +MenuAccountancy=Accounting +MenuECM=Documents +MenuAWStats=AWStats +MenuMembers=Members +MenuAgendaGoogle=Google agenda +ThisLimitIsDefinedInSetup=Dolibarr limit (Menu home-setup-security): %s Kb, PHP limit: %s Kb +NoFileFound=No documents saved in this directory +CurrentUserLanguage=Current language +CurrentTheme=Current theme +CurrentMenuManager=Current menu manager +Browser=Browser +Layout=Layout +Screen=Screen +DisabledModules=Disabled modules +For=For +ForCustomer=For customer +Signature=Signature +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 +AddNewLine=Add new line +AddFile=Add file +FreeZone=Not a predefined product/service +FreeLineOfType=Free-text item, type: +CloneMainAttributes=Clone object with its main attributes +ReGeneratePDF=Re-generate PDF +PDFMerge=PDF Merge +Merge=Merge +DocumentModelStandardPDF=Standard PDF template +PrintContentArea=Show page to print main content area +MenuManager=Menu manager +WarningYouAreInMaintenanceMode=Warning, you are in maintenance mode: only login %s is allowed to use the application in this mode. +CoreErrorTitle=System error +CoreErrorMessage=Sorry, an error occurred. Contact your system administrator to check the logs or disable $dolibarr_main_prod=1 to get more information. +CreditCard=Credit card +ValidatePayment=Validate payment +CreditOrDebitCard=Credit or debit card +FieldsWithAreMandatory=Fields with %s are mandatory +FieldsWithIsForPublic=Fields with %s are shown in public list of members. If you don't want this, uncheck the "public" box. +AccordingToGeoIPDatabase=(according to GeoIP conversion) +Line=Line +NotSupported=Not supported +RequiredField=Required field +Result=Result +ToTest=Test +ValidateBefore=Item must be validated before using this feature +Visibility=Visibility +Totalizable=Totalizable +TotalizableDesc=This field is totalizable in list +Private=Private +Hidden=Hidden +Resources=Resources +Source=Source +Prefix=Prefix +Before=Before +After=After +IPAddress=IP address +Frequency=Frequency +IM=Instant messaging +NewAttribute=New attribute +AttributeCode=Attribute code +URLPhoto=URL of photo/logo +SetLinkToAnotherThirdParty=Link to another third party +LinkTo=Link to +LinkToProposal=Link to proposal +LinkToOrder=Link to order +LinkToInvoice=Link to invoice +LinkToTemplateInvoice=Link to template invoice +LinkToSupplierOrder=Link to purchase order +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 +ClickToRefresh=Click to refresh +EditWithEditor=Edit with CKEditor +EditWithTextEditor=Edit with Text editor +EditHTMLSource=Edit HTML Source +ObjectDeleted=Object %s deleted +ByCountry=By country +ByTown=By town +ByDate=By date +ByMonthYear=By month/year +ByYear=By year +ByMonth=By month +ByDay=By day +BySalesRepresentative=By sales representative +LinkedToSpecificUsers=Linked to a particular user contact +NoResults=No results +AdminTools=Admin Tools +SystemTools=System tools +ModulesSystemTools=Modules tools +Test=Test +Element=Element +NoPhotoYet=No pictures available yet +Dashboard=Dashboard +MyDashboard=My Dashboard +Deductible=Deductible +from=from +toward=toward +Access=Access +SelectAction=Select action +SelectTargetUser=Select target user/employee +HelpCopyToClipboard=Use Ctrl+C to copy to clipboard +SaveUploadedFileWithMask=Save file on server with name "%s" (otherwise "%s") +OriginFileName=Original filename +SetDemandReason=Set source +SetBankAccount=Define Bank Account +AccountCurrency=Account currency +ViewPrivateNote=View notes +XMoreLines=%s line(s) hidden +ShowMoreLines=Show more/less lines +PublicUrl=Public URL +AddBox=Add box +SelectElementAndClick=Select an element and click %s +PrintFile=Print File %s +ShowTransaction=Show entry on bank account +ShowIntervention=Show intervention +ShowContract=Show contract +GoIntoSetupToChangeLogo=Go to Home - Setup - Company to change logo or go to Home - Setup - Display to hide. +Deny=Deny +Denied=Denied +ListOf=List of %s +ListOfTemplates=List of templates +Gender=Gender +Genderman=Man +Genderwoman=Woman +ViewList=List view +ViewGantt=Gantt view +ViewKanban=Kanban view +Mandatory=Mandatory +Hello=Hello +GoodBye=GoodBye +Sincerely=Sincerely +ConfirmDeleteObject=Are you sure you want to delete this object? +DeleteLine=Delete line +ConfirmDeleteLine=Are you sure you want to delete this line? +NoPDFAvailableForDocGenAmongChecked=No PDF were available for the document generation among checked record +TooManyRecordForMassAction=Too many records selected for mass action. The action is restricted to a list of %s records. +NoRecordSelected=No record selected +MassFilesArea=Area for files built by mass actions +ShowTempMassFilesArea=Show area of files built by mass actions +ConfirmMassDeletion=Bulk Delete confirmation +ConfirmMassDeletionQuestion=Are you sure you want to delete the %s selected record(s)? +RelatedObjects=Related Objects +ClassifyBilled=Classify billed +ClassifyUnbilled=Classify unbilled +Progress=Progress +ProgressShort=Progr. +FrontOffice=Front office +BackOffice=Back office +Submit=Submit +View=View +Export=Export +Exports=Exports +ExportFilteredList=Export filtered list +ExportList=Export list +ExportOptions=Export Options +IncludeDocsAlreadyExported=Include docs already exported +ExportOfPiecesAlreadyExportedIsEnable=Export of pieces already exported is enable +ExportOfPiecesAlreadyExportedIsDisable=Export of pieces already exported is disable +AllExportedMovementsWereRecordedAsExported=All exported movements were recorded as exported +NotAllExportedMovementsCouldBeRecordedAsExported=Not all exported movements could be recorded as exported +Miscellaneous=Miscellaneous +Calendar=Calendar +GroupBy=Group by... +ViewFlatList=View flat list +RemoveString=Remove string '%s' +SomeTranslationAreUncomplete=Some of the languages offered may be only partially translated or may contain errors. Please help to correct your language by registering at https://transifex.com/projects/p/dolibarr/ to add your improvements. +DirectDownloadLink=Direct download link (public/external) +DirectDownloadInternalLink=Direct download link (need to be logged and need permissions) +Download=Download +DownloadDocument=Download document +ActualizeCurrency=Update currency rate +Fiscalyear=Fiscal year +ModuleBuilder=Module and Application Builder +SetMultiCurrencyCode=Set currency +BulkActions=Bulk actions +ClickToShowHelp=Click to show tooltip help +WebSite=Website +WebSites=Websites +WebSiteAccounts=Website accounts +ExpenseReport=Expense report +ExpenseReports=Expense reports +HR=HR +HRAndBank=HR and Bank +AutomaticallyCalculated=Automatically calculated +TitleSetToDraft=Go back to draft +ConfirmSetToDraft=Are you sure you want to go back to Draft status? +ImportId=Import id +Events=Events +EMailTemplates=Email templates +FileNotShared=File not shared to external public +Project=Project +Projects=Projects +LeadOrProject=Lead | Project +LeadsOrProjects=Leads | Projects +Lead=Lead +Leads=Leads +ListOpenLeads=List open leads +ListOpenProjects=List open projects +NewLeadOrProject=New lead or project +Rights=Permissions +LineNb=Line no. +IncotermLabel=Incoterms +TabLetteringCustomer=Customer lettering +TabLetteringSupplier=Vendor lettering +Monday=Monday +Tuesday=Tuesday +Wednesday=Wednesday +Thursday=Thursday +Friday=Friday +Saturday=Saturday +Sunday=Sunday +MondayMin=Mo +TuesdayMin=Tu +WednesdayMin=We +ThursdayMin=Th +FridayMin=Fr +SaturdayMin=Sa +SundayMin=Su +Day1=Monday +Day2=Tuesday +Day3=Wednesday +Day4=Thursday +Day5=Friday +Day6=Saturday +Day0=Sunday +ShortMonday=M +ShortTuesday=T +ShortWednesday=W +ShortThursday=T +ShortFriday=F +ShortSaturday=S +ShortSunday=S +SelectMailModel=Select an email template +SetRef=Set ref +Select2ResultFoundUseArrows=Some results found. Use arrows to select. +Select2NotFound=No result found +Select2Enter=Enter +Select2MoreCharacter=or more character +Select2MoreCharacters=or more characters +Select2MoreCharactersMore=Search syntax:
    | OR (a|b)
    * Any character (a*b)
    ^ Start with (^ab)
    $ End with (ab$)
    +Select2LoadingMoreResults=Loading more results... +Select2SearchInProgress=Search in progress... +SearchIntoThirdparties=Third parties +SearchIntoContacts=Contacts +SearchIntoMembers=Members +SearchIntoUsers=Users +SearchIntoProductsOrServices=Products or services +SearchIntoProjects=Projects +SearchIntoMO=Manufacturing Orders +SearchIntoTasks=Tasks +SearchIntoCustomerInvoices=Customer invoices +SearchIntoSupplierInvoices=Vendor invoices +SearchIntoCustomerOrders=Sales orders +SearchIntoSupplierOrders=Purchase orders +SearchIntoCustomerProposals=Commercial proposals +SearchIntoSupplierProposals=Vendor proposals +SearchIntoInterventions=Interventions +SearchIntoContracts=Contracts +SearchIntoCustomerShipments=Customer shipments +SearchIntoExpenseReports=Expense reports +SearchIntoLeaves=Leave +SearchIntoTickets=Tickets +CommentLink=Comments +NbComments=Number of comments +CommentPage=Comments space +CommentAdded=Comment added +CommentDeleted=Comment deleted +Everybody=Everybody +PayedBy=Paid by +PayedTo=Paid to +Monthly=Monthly +Quarterly=Quarterly +Annual=Annual +Local=Local +Remote=Remote +LocalAndRemote=Local and Remote +KeyboardShortcut=Keyboard shortcut +AssignedTo=Assigned to +Deletedraft=Delete draft +ConfirmMassDraftDeletion=Draft mass delete confirmation +FileSharedViaALink=File shared via a link +SelectAThirdPartyFirst=Select a third party first... +YouAreCurrentlyInSandboxMode=You are currently in the %s "sandbox" mode +Inventory=Inventory +AnalyticCode=Analytic code +TMenuMRP=MRP +ShowMoreInfos=Show More Infos +NoFilesUploadedYet=Please upload a document first +SeePrivateNote=See private note +PaymentInformation=Payment information +ValidFrom=Valid from +ValidUntil=Valid until +NoRecordedUsers=No users +ToClose=To close +ToProcess=To process +ToApprove=To approve +GlobalOpenedElemView=Global view +NoArticlesFoundForTheKeyword=No article found for the keyword '%s' +NoArticlesFoundForTheCategory=No article found for the category +ToAcceptRefuse=To accept | refuse +ContactDefault_agenda=Event +ContactDefault_commande=Order +ContactDefault_contrat=Contract +ContactDefault_facture=Invoice +ContactDefault_fichinter=Intervention +ContactDefault_invoice_supplier=Supplier Invoice +ContactDefault_order_supplier=Purchase Order +ContactDefault_project=Project +ContactDefault_project_task=Task +ContactDefault_propal=Proposal +ContactDefault_supplier_proposal=Supplier Proposal +ContactDefault_ticket=Ticket +ContactAddedAutomatically=Contact added from contact thirdparty roles +More=More +ShowDetails=Show details +CustomReports=Custom reports +StatisticsOn=Statistics on +SelectYourGraphOptionsFirst=Select your graph options to build a graph +Measures=Measures +XAxis=X-Axis +YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? +ShowOtherLanguages=Show other languages +SwitchInEditModeToAddTranslation=Switch in edit mode to add translations for this language +NotUsedForThisCustomer=Not used for this customer diff --git a/htdocs/langs/ne_NP/margins.lang b/htdocs/langs/ne_NP/margins.lang new file mode 100644 index 00000000000..76ea8ad5c4d --- /dev/null +++ b/htdocs/langs/ne_NP/margins.lang @@ -0,0 +1,45 @@ +# Dolibarr language file - Source file is en_US - marges + +Margin=Margin +Margins=Margins +TotalMargin=Total Margin +MarginOnProducts=Margin / Products +MarginOnServices=Margin / Services +MarginRate=Margin rate +MarkRate=Mark rate +DisplayMarginRates=Display margin rates +DisplayMarkRates=Display mark rates +InputPrice=Input price +margin=Profit margins management +margesSetup=Profit margins management setup +MarginDetails=Margin details +ProductMargins=Product margins +CustomerMargins=Customer margins +SalesRepresentativeMargins=Sales representative margins +ContactOfInvoice=Contact of invoice +UserMargins=User margins +ProductService=Product or Service +AllProducts=All products and services +ChooseProduct/Service=Choose product or service +ForceBuyingPriceIfNull=Force buying/cost price to selling price if not defined +ForceBuyingPriceIfNullDetails=If buying/cost price not defined, and this option "ON", margin will be zero on line (buying/cost price = selling price), otherwise ("OFF"), marge will be equal to suggested default. +MARGIN_METHODE_FOR_DISCOUNT=Margin method for global discounts +UseDiscountAsProduct=As a product +UseDiscountAsService=As a service +UseDiscountOnTotal=On subtotal +MARGIN_METHODE_FOR_DISCOUNT_DETAILS=Defines if a global discount is treated as a product, a service, or only on subtotal for margin calculation. +MARGIN_TYPE=Buying/Cost price suggested by default for margin calculation +MargeType1=Margin on Best vendor price +MargeType2=Margin on Weighted Average Price (WAP) +MargeType3=Margin on Cost Price +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=Cost price +UnitCharges=Unit charges +Charges=Charges +AgentContactType=Commercial agent contact type +AgentContactTypeDetails=Define what contact type (linked on invoices) will be used for margin report per contact/address. Note that reading statistics on a contact is not reliable since in most cases the contact may not be defined explicitely on the invoices. +rateMustBeNumeric=Rate must be a numeric value +markRateShouldBeLesserThan100=Mark rate should be lower than 100 +ShowMarginInfos=Show margin infos +CheckMargins=Margins detail +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/ne_NP/members.lang b/htdocs/langs/ne_NP/members.lang new file mode 100644 index 00000000000..dd0a5bf49e2 --- /dev/null +++ b/htdocs/langs/ne_NP/members.lang @@ -0,0 +1,204 @@ +# Dolibarr language file - Source file is en_US - members +MembersArea=Members area +MemberCard=Member card +SubscriptionCard=Subscription card +Member=Member +Members=Members +ShowMember=Show member card +UserNotLinkedToMember=User not linked to a member +ThirdpartyNotLinkedToMember=Third party not linked to a member +MembersTickets=Members Tickets +FundationMembers=Foundation members +ListOfValidatedPublicMembers=List of validated public members +ErrorThisMemberIsNotPublic=This member is not public +ErrorMemberIsAlreadyLinkedToThisThirdParty=Another member (name: %s, login: %s) is already linked to a third party %s. Remove this link first because a third party can't be linked to only a member (and vice versa). +ErrorUserPermissionAllowsToLinksToItselfOnly=For security reasons, you must be granted permissions to edit all users to be able to link a member to a user that is not yours. +SetLinkToUser=Link to a Dolibarr user +SetLinkToThirdParty=Link to a Dolibarr third party +MembersCards=Members business cards +MembersList=List of members +MembersListToValid=List of draft members (to be validated) +MembersListValid=List of valid members +MembersListUpToDate=List of valid members with up to date subscription +MembersListNotUpToDate=List of valid members with subscription out of date +MembersListResiliated=List of terminated members +MembersListQualified=List of qualified members +MenuMembersToValidate=Draft members +MenuMembersValidated=Validated members +MenuMembersUpToDate=Up to date members +MenuMembersNotUpToDate=Out of date members +MenuMembersResiliated=Terminated members +MembersWithSubscriptionToReceive=Members with subscription to receive +MembersWithSubscriptionToReceiveShort=Subscription to receive +DateSubscription=Subscription date +DateEndSubscription=Subscription end date +EndSubscription=End subscription +SubscriptionId=Subscription id +MemberId=Member id +NewMember=New member +MemberType=Member type +MemberTypeId=Member type id +MemberTypeLabel=Member type label +MembersTypes=Members types +MemberStatusDraft=Draft (needs to be validated) +MemberStatusDraftShort=Draft +MemberStatusActive=Validated (waiting subscription) +MemberStatusActiveShort=Validated +MemberStatusActiveLate=Subscription expired +MemberStatusActiveLateShort=Expired +MemberStatusPaid=Subscription up to date +MemberStatusPaidShort=Up to date +MemberStatusResiliated=Terminated member +MemberStatusResiliatedShort=Terminated +MembersStatusToValid=Draft members +MembersStatusResiliated=Terminated members +MemberStatusNoSubscription=Validated (no subscription needed) +MemberStatusNoSubscriptionShort=Validated +SubscriptionNotNeeded=No subscription needed +NewCotisation=New contribution +PaymentSubscription=New contribution payment +SubscriptionEndDate=Subscription's end date +MembersTypeSetup=Members type setup +MemberTypeModified=Member type modified +DeleteAMemberType=Delete a member type +ConfirmDeleteMemberType=Are you sure you want to delete this member type? +MemberTypeDeleted=Member type deleted +MemberTypeCanNotBeDeleted=Member type can not be deleted +NewSubscription=New subscription +NewSubscriptionDesc=This form allows you to record your subscription as a new member of the foundation. If you want to renew your subscription (if already a member), please contact foundation board instead by email %s. +Subscription=Subscription +Subscriptions=Subscriptions +SubscriptionLate=Late +SubscriptionNotReceived=Subscription never received +ListOfSubscriptions=List of subscriptions +SendCardByMail=Send card by email +AddMember=Create member +NoTypeDefinedGoToSetup=No member types defined. Go to menu "Members types" +NewMemberType=New member type +WelcomeEMail=Welcome email +SubscriptionRequired=Subscription required +DeleteType=Delete +VoteAllowed=Vote allowed +Physical=Physical +Moral=Moral +MorPhy=Moral/Physical +Reenable=Reenable +ResiliateMember=Terminate a member +ConfirmResiliateMember=Are you sure you want to terminate this member? +DeleteMember=Delete a member +ConfirmDeleteMember=Are you sure you want to delete this member (Deleting a member will delete all his subscriptions)? +DeleteSubscription=Delete a subscription +ConfirmDeleteSubscription=Are you sure you want to delete this subscription? +Filehtpasswd=htpasswd file +ValidateMember=Validate a member +ConfirmValidateMember=Are you sure you want to validate this member? +FollowingLinksArePublic=The following links are open pages not protected by any Dolibarr permission. They are not formatted pages, provided as example to show how to list members database. +PublicMemberList=Public member list +BlankSubscriptionForm=Public self-subscription form +BlankSubscriptionFormDesc=Dolibarr can provide you a public URL/website to allow external visitors to ask to subscribe to the foundation. If an online payment module is enabled, a payment form may also be automatically provided. +EnablePublicSubscriptionForm=Enable the public website with self-subscription form +ForceMemberType=Force the member type +ExportDataset_member_1=Members and subscriptions +ImportDataset_member_1=Members +LastMembersModified=Latest %s modified members +LastSubscriptionsModified=Latest %s modified subscriptions +String=String +Text=Text +Int=Int +DateAndTime=Date and time +PublicMemberCard=Member public card +SubscriptionNotRecorded=Subscription not recorded +AddSubscription=Create subscription +ShowSubscription=Show subscription +# Label of email templates +SendingAnEMailToMember=Sending information email to member +SendingEmailOnAutoSubscription=Sending email on auto registration +SendingEmailOnMemberValidation=Sending email on new member validation +SendingEmailOnNewSubscription=Sending email on new subscription +SendingReminderForExpiredSubscription=Sending reminder for expired subscriptions +SendingEmailOnCancelation=Sending email on cancelation +# Topic of email templates +YourMembershipRequestWasReceived=Your membership was received. +YourMembershipWasValidated=Your membership was validated +YourSubscriptionWasRecorded=Your new subscription was recorded +SubscriptionReminderEmail=Subscription reminder +YourMembershipWasCanceled=Your membership was canceled +CardContent=Content of your member card +# Text of email templates +ThisIsContentOfYourMembershipRequestWasReceived=We want to let you know that your membership request was received.

    +ThisIsContentOfYourMembershipWasValidated=We want to let you know that your membership was validated with the following information:

    +ThisIsContentOfYourSubscriptionWasRecorded=We want to let you know that your new subscription was recorded.

    +ThisIsContentOfSubscriptionReminderEmail=We want to let you know that your subscription is about to expire or has already expired (__MEMBER_LAST_SUBSCRIPTION_DATE_END__). We hope you will renew it.

    +ThisIsContentOfYourCard=This is a summary of the information we have about you. Please contact us if anything is incorrect.

    +DescADHERENT_AUTOREGISTER_NOTIF_MAIL_SUBJECT=Subject of the notification email received in case of auto-inscription of a guest +DescADHERENT_AUTOREGISTER_NOTIF_MAIL=Content of the notification email received in case of auto-inscription of a guest +DescADHERENT_EMAIL_TEMPLATE_AUTOREGISTER=Email template to use to send email to a member on member autosubscription +DescADHERENT_EMAIL_TEMPLATE_MEMBER_VALIDATION=Email template to use to send email to a member on member validation +DescADHERENT_EMAIL_TEMPLATE_SUBSCRIPTION=Email template to use to send email to a member on new subscription recording +DescADHERENT_EMAIL_TEMPLATE_REMIND_EXPIRATION=Email template to use to send email reminder when subscription is about to expire +DescADHERENT_EMAIL_TEMPLATE_CANCELATION=Email template to use to send email to a member on member cancelation +DescADHERENT_MAIL_FROM=Sender Email for automatic emails +DescADHERENT_ETIQUETTE_TYPE=Format of labels page +DescADHERENT_ETIQUETTE_TEXT=Text printed on member address sheets +DescADHERENT_CARD_TYPE=Format of cards page +DescADHERENT_CARD_HEADER_TEXT=Text printed on top of member cards +DescADHERENT_CARD_TEXT=Text printed on member cards (align on left) +DescADHERENT_CARD_TEXT_RIGHT=Text printed on member cards (align on right) +DescADHERENT_CARD_FOOTER_TEXT=Text printed on bottom of member cards +ShowTypeCard=Show type '%s' +HTPasswordExport=htpassword file generation +NoThirdPartyAssociatedToMember=No third party associated to this member +MembersAndSubscriptions= Members and Subscriptions +MoreActions=Complementary action on recording +MoreActionsOnSubscription=Complementary action, suggested by default when recording a subscription +MoreActionBankDirect=Create a direct entry on bank account +MoreActionBankViaInvoice=Create an invoice, and a payment on bank account +MoreActionInvoiceOnly=Create an invoice with no payment +LinkToGeneratedPages=Generate visit cards +LinkToGeneratedPagesDesc=This screen allows you to generate PDF files with business cards for all your members or a particular member. +DocForAllMembersCards=Generate business cards for all members +DocForOneMemberCards=Generate business cards for a particular member +DocForLabels=Generate address sheets +SubscriptionPayment=Subscription payment +LastSubscriptionDate=Date of latest subscription payment +LastSubscriptionAmount=Amount of latest subscription +MembersStatisticsByCountries=Members statistics by country +MembersStatisticsByState=Members statistics by state/province +MembersStatisticsByTown=Members statistics by town +MembersStatisticsByRegion=Members statistics by region +NbOfMembers=Number of members +NoValidatedMemberYet=No validated members found +MembersByCountryDesc=This screen show you statistics on members by countries. Graphic depends however on Google online graph service and is available only if an internet connection is is working. +MembersByStateDesc=This screen show you statistics on members by state/provinces/canton. +MembersByTownDesc=This screen show you statistics on members by town. +MembersStatisticsDesc=Choose statistics you want to read... +MenuMembersStats=Statistics +LastMemberDate=Latest member date +LatestSubscriptionDate=Latest subscription date +MemberNature=Nature of member +Public=Information are public +NewMemberbyWeb=New member added. Awaiting approval +NewMemberForm=New member form +SubscriptionsStatistics=Statistics on subscriptions +NbOfSubscriptions=Number of subscriptions +AmountOfSubscriptions=Amount of subscriptions +TurnoverOrBudget=Turnover (for a company) or Budget (for a foundation) +DefaultAmount=Default amount of subscription +CanEditAmount=Visitor can choose/edit amount of its subscription +MEMBER_NEWFORM_PAYONLINE=Jump on integrated online payment page +ByProperties=By nature +MembersStatisticsByProperties=Members statistics by nature +MembersByNature=This screen show you statistics on members by nature. +MembersByRegion=This screen show you statistics on members by region. +VATToUseForSubscriptions=VAT rate to use for subscriptions +NoVatOnSubscription=No VAT for subscriptions +ADHERENT_PRODUCT_ID_FOR_SUBSCRIPTIONS=Product used for subscription line into invoice: %s +NameOrCompany=Name or company +SubscriptionRecorded=Subscription recorded +NoEmailSentToMember=No email sent to member +EmailSentToMember=Email sent to member at %s +SendReminderForExpiredSubscriptionTitle=Send reminder by email for expired subscription +SendReminderForExpiredSubscription=Send reminder by email to members when subscription is about to expire (parameter is number of days before end of subscription to send the remind. It can be a list of days separated by a semicolon, for example '10;5;0;-5') +MembershipPaid=Membership paid for current period (until %s) +YouMayFindYourInvoiceInThisEmail=You may find your invoice attached to this email +XMembersClosed=%s member(s) closed diff --git a/htdocs/langs/ne_NP/modulebuilder.lang b/htdocs/langs/ne_NP/modulebuilder.lang new file mode 100644 index 00000000000..135ac1ae9ec --- /dev/null +++ b/htdocs/langs/ne_NP/modulebuilder.lang @@ -0,0 +1,141 @@ +# Dolibarr language file - Source file is en_US - loan +ModuleBuilderDesc=This tool must be used only by experienced users or developers. It provides utilities to build or edit your own module. Documentation for alternative manual development is here. +EnterNameOfModuleDesc=Enter name of the module/application to create with no spaces. Use uppercase to separate words (For example: MyModule, EcommerceForShop, SyncWithMySystem...) +EnterNameOfObjectDesc=Enter name of the object to create with no spaces. Use uppercase to separate words (For example: MyObject, Student, Teacher...). The CRUD class file, but also API file, pages to list/add/edit/delete object and SQL files will be generated. +ModuleBuilderDesc2=Path where modules are generated/edited (first directory for external modules defined into %s): %s +ModuleBuilderDesc3=Generated/editable modules found: %s +ModuleBuilderDesc4=A module is detected as 'editable' when the file %s exists in root of module directory +NewModule=New module +NewObjectInModulebuilder=New object +ModuleKey=Module key +ObjectKey=Object key +ModuleInitialized=Module initialized +FilesForObjectInitialized=Files for new object '%s' initialized +FilesForObjectUpdated=Files for object '%s' updated (.sql files and .class.php file) +ModuleBuilderDescdescription=Enter here all general information that describe your module. +ModuleBuilderDescspecifications=You can enter here a detailed description of the specifications of your module that is not already structured into other tabs. So you have within easy reach all the rules to develop. Also this text content will be included into the generated documentation (see last tab). You can use Markdown format, but it is recommended to use Asciidoc format (comparison between .md and .asciidoc: http://asciidoctor.org/docs/user-manual/#compared-to-markdown). +ModuleBuilderDescobjects=Define here the objects you want to manage with your module. A CRUD DAO class, SQL files, page to list record of objects, to create/edit/view a record and an API will be generated. +ModuleBuilderDescmenus=This tab is dedicated to define menu entries provided by your module. +ModuleBuilderDescpermissions=This tab is dedicated to define the new permissions you want to provide with your module. +ModuleBuilderDesctriggers=This is the view of triggers provided by your module. To include code executed when a triggered business event is launched, just edit this file. +ModuleBuilderDeschooks=This tab is dedicated to hooks. +ModuleBuilderDescwidgets=This tab is dedicated to manage/build widgets. +ModuleBuilderDescbuildpackage=You can generate here a "ready to distribute" package file (a normalized .zip file) of your module and a "ready to distribute" documentation file. Just click on button to build the package or documentation file. +EnterNameOfModuleToDeleteDesc=You can delete your module. WARNING: All coding files of module (generated or created manually) AND structured data and documentation will be deleted! +EnterNameOfObjectToDeleteDesc=You can delete an object. WARNING: All coding files (generated or created manually) related to object will be deleted! +DangerZone=Danger zone +BuildPackage=Build package +BuildPackageDesc=You can generate a zip package of your application so your are ready to distribute it on any Dolibarr. You can also distribute it or sell it on marketplace like DoliStore.com. +BuildDocumentation=Build documentation +ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: +ModuleIsLive=This module has been activated. Any change may break a current live feature. +DescriptionLong=Long description +EditorName=Name of editor +EditorUrl=URL of editor +DescriptorFile=Descriptor file of module +ClassFile=File for PHP DAO CRUD class +ApiClassFile=File for PHP API class +PageForList=PHP page for list of record +PageForCreateEditView=PHP page to create/edit/view a record +PageForAgendaTab=PHP page for event tab +PageForDocumentTab=PHP page for document tab +PageForNoteTab=PHP page for note tab +PathToModulePackage=Path to zip of module/application package +PathToModuleDocumentation=Path to file of module/application documentation (%s) +SpaceOrSpecialCharAreNotAllowed=Spaces or special characters are not allowed. +FileNotYetGenerated=File not yet generated +RegenerateClassAndSql=Force update of .class and .sql files +RegenerateMissingFiles=Generate missing files +SpecificationFile=File of documentation +LanguageFile=File for language +ObjectProperties=Object Properties +ConfirmDeleteProperty=Are you sure you want to delete the property %s? This will change code in PHP class but also remove column from table definition of object. +NotNull=Not NULL +NotNullDesc=1=Set database to NOT NULL. -1=Allow null values and force value to NULL if empty ('' or 0). +SearchAll=Used for 'search all' +DatabaseIndex=Database index +FileAlreadyExists=File %s already exists +TriggersFile=File for triggers code +HooksFile=File for hooks code +ArrayOfKeyValues=Array of key-val +ArrayOfKeyValuesDesc=Array of keys and values if field is a combo list with fixed values +WidgetFile=Widget file +CSSFile=CSS file +JSFile=Javascript file +ReadmeFile=Readme file +ChangeLog=ChangeLog file +TestClassFile=File for PHP Unit Test class +SqlFile=Sql file +PageForLib=File for the common PHP library +PageForObjLib=File for the PHP library dedicated to object +SqlFileExtraFields=Sql file for complementary attributes +SqlFileKey=Sql file for keys +SqlFileKeyExtraFields=Sql file for keys of complementary attributes +AnObjectAlreadyExistWithThisNameAndDiffCase=An object already exists with this name and a different case +UseAsciiDocFormat=You can use Markdown format, but it is recommended to use Asciidoc format (omparison between .md and .asciidoc: http://asciidoctor.org/docs/user-manual/#compared-to-markdown) +IsAMeasure=Is a measure +DirScanned=Directory scanned +NoTrigger=No trigger +NoWidget=No widget +GoToApiExplorer=Go to API explorer +ListOfMenusEntries=List of menu entries +ListOfDictionariesEntries=List of dictionaries entries +ListOfPermissionsDefined=List of defined permissions +SeeExamples=See examples here +EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty +DisplayOnPdf=Display on PDF +IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) +SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) +SpecDefDesc=Enter here all documentation you want to provide with your module that is not already defined by other tabs. You can use .md or better, the rich .asciidoc syntax. +LanguageDefDesc=Enter in this files, all the key and the translation for each language file. +MenusDefDesc=Define here the menus provided by your module +DictionariesDefDesc=Define here the dictionaries provided by your module +PermissionsDefDesc=Define here the new permissions provided by your module +MenusDefDescTooltip=The menus provided by your module/application are defined into the array $this->menus into the module descriptor file. You can edit manually this file or use the embedded editor.

    Note: Once defined (and module re-activated), menus are also visible into the menu editor available to administrator users on %s. +DictionariesDefDescTooltip=The dictionaries provided by your module/application are defined into the array $this->dictionaries into the module descriptor file. You can edit manually this file or use the embedded editor.

    Note: Once defined (and module re-activated), dictionaries are also visible into the setup area to administrator users on %s. +PermissionsDefDescTooltip=The permissions provided by your module/application are defined into the array $this->rights into the module descriptor file. You can edit manually this file or use the embedded editor.

    Note: Once defined (and module re-activated), permissions are visible into the default permissions setup %s. +HooksDefDesc=Define in the module_parts['hooks'] property, in the module descriptor, the context of hooks you want to manage (list of contexts can be found by a search on 'initHooks(' in core code).
    Edit the hook file to add code of your hooked functions (hookable functions can be found by a search on 'executeHooks' in core code). +TriggerDefDesc=Define in the trigger file the code you want to execute for each business event executed. +SeeIDsInUse=See IDs in use in your installation +SeeReservedIDsRangeHere=See range of reserved IDs +ToolkitForDevelopers=Toolkit for Dolibarr developers +TryToUseTheModuleBuilder=If you have knowledge of SQL and PHP, you may use the native module builder wizard.
    Enable the module %s and use the wizard by clicking the on the top right menu.
    Warning: This is an advanced developer feature, do not experiment on your production site! +SeeTopRightMenu=See on the top right menu +AddLanguageFile=Add language file +YouCanUseTranslationKey=You can use here a key that is the translation key found into language file (see tab "Languages") +DropTableIfEmpty=(Delete table if empty) +TableDoesNotExists=The table %s does not exists +TableDropped=Table %s deleted +InitStructureFromExistingTable=Build the structure array string of an existing table +UseAboutPage=Disable the about page +UseDocFolder=Disable the documentation folder +UseSpecificReadme=Use a specific ReadMe +ContentOfREADMECustomized=Note: The content of the README.md file has been replaced with the specific value defined into setup of ModuleBuilder. +RealPathOfModule=Real path of module +ContentCantBeEmpty=Content of file can't be empty +WidgetDesc=You can generate and edit here the widgets that will be embedded with your module. +CSSDesc=You can generate and edit here a file with personalized CSS embedded with your module. +JSDesc=You can generate and edit here a file with personalized Javascript embedded with your module. +CLIDesc=You can generate here some command line scripts you want to provide with your module. +CLIFile=CLI File +NoCLIFile=No CLI files +UseSpecificEditorName = Use a specific editor name +UseSpecificEditorURL = Use a specific editor URL +UseSpecificFamily = Use a specific family +UseSpecificAuthor = Use a specific author +UseSpecificVersion = Use a specific initial version +ModuleMustBeEnabled=The module/application must be enabled first +IncludeRefGeneration=The reference of object must be generated automatically +IncludeRefGenerationHelp=Check this if you want to include code to manage the generation automatically of the reference +IncludeDocGeneration=I want to generate some documents from the object +IncludeDocGenerationHelp=If you check this, some code will be generated to add a "Generate document" box on the record. +ShowOnCombobox=Show value into combobox +KeyForTooltip=Key for tooltip +CSSClass=CSS Class +NotEditable=Not editable +ForeignKey=Foreign key +TypeOfFieldsHelp=Type of fields:
    varchar(99), double(24,8), real, text, html, datetime, timestamp, integer, integer:ClassName:relativepath/to/classfile.class.php[:1[:filter]] ('1' means we add a + button after the combo to create the record, 'filter' can be 'status=1 AND fk_user = __USER_ID AND entity IN (__SHARED_ENTITIES__)' for example) +AsciiToHtmlConverter=Ascii to HTML converter +AsciiToPdfConverter=Ascii to PDF converter diff --git a/htdocs/langs/ne_NP/mrp.lang b/htdocs/langs/ne_NP/mrp.lang new file mode 100644 index 00000000000..d3c4d3253c6 --- /dev/null +++ b/htdocs/langs/ne_NP/mrp.lang @@ -0,0 +1,76 @@ +Mrp=Manufacturing Orders +MO=Manufacturing Order +MRPDescription=Module to manage production and Manufacturing Orders (MO). +MRPArea=MRP Area +MrpSetupPage=Setup of module MRP +MenuBOM=Bills of material +LatestBOMModified=Latest %s Bills of materials modified +LatestMOModified=Latest %s Manufacturing Orders modified +Bom=Bills of Material +BillOfMaterials=Bill of Material +BOMsSetup=Setup of module BOM +ListOfBOMs=List of bills of material - BOM +ListOfManufacturingOrders=List of Manufacturing Orders +NewBOM=New bill of material +ProductBOMHelp=Product to create with this BOM.
    Note: Products with the property 'Nature of product' = 'Raw material' are not visible into this list. +BOMsNumberingModules=BOM numbering templates +BOMsModelModule=BOM document templates +MOsNumberingModules=MO numbering templates +MOsModelModule=MO document templates +FreeLegalTextOnBOMs=Free text on document of BOM +WatermarkOnDraftBOMs=Watermark on draft BOM +FreeLegalTextOnMOs=Free text on document of MO +WatermarkOnDraftMOs=Watermark on draft MO +ConfirmCloneBillOfMaterials=Are you sure you want to clone the bill of material %s ? +ConfirmCloneMo=Are you sure you want to clone the Manufacturing Order %s ? +ManufacturingEfficiency=Manufacturing efficiency +ConsumptionEfficiency=Consumption efficiency +ValueOfMeansLoss=Value of 0.95 means an average of 5%% of loss during the production +ValueOfMeansLossForProductProduced=Value of 0.95 means an average of 5%% of loss of produced product +DeleteBillOfMaterials=Delete Bill Of Materials +DeleteMo=Delete Manufacturing Order +ConfirmDeleteBillOfMaterials=Are you sure you want to delete this Bill Of Material? +ConfirmDeleteMo=Are you sure you want to delete this Bill Of Material? +MenuMRP=Manufacturing Orders +NewMO=New Manufacturing Order +QtyToProduce=Qty to produce +DateStartPlannedMo=Date start planned +DateEndPlannedMo=Date end planned +KeepEmptyForAsap=Empty means 'As Soon As Possible' +EstimatedDuration=Estimated duration +EstimatedDurationDesc=Estimated duration to manufacture this product using this BOM +ConfirmValidateBom=Are you sure you want to validate the BOM with the reference %s (you will be able to use it to build new Manufacturing Orders) +ConfirmCloseBom=Are you sure you want to cancel this BOM (you won't be able to use it to build new Manufacturing Orders anymore) ? +ConfirmReopenBom=Are you sure you want to re-open this BOM (you will be able to use it to build new Manufacturing Orders) +StatusMOProduced=Produced +QtyFrozen=Frozen Qty +QuantityFrozen=Frozen Quantity +QuantityConsumedInvariable=When this flag is set, the quantity consumed is always the value defined and is not relative to the quantity produced. +DisableStockChange=Stock change disabled +DisableStockChangeHelp=When this flag is set, there is no stock change on this product, whatever is the quantity consumed +BomAndBomLines=Bills Of Material and lines +BOMLine=Line of BOM +WarehouseForProduction=Warehouse for production +CreateMO=Create MO +ToConsume=To consume +ToProduce=To produce +QtyAlreadyConsumed=Qty already consumed +QtyAlreadyProduced=Qty already produced +QtyRequiredIfNoLoss=Qty required if there is no loss (Manufacturing efficiency is 100%%) +ConsumeOrProduce=Consume or Produce +ConsumeAndProduceAll=Consume and Produce All +Manufactured=Manufactured +TheProductXIsAlreadyTheProductToProduce=The product to add is already the product to produce. +ForAQuantityOf=For a quantity to produce of %s +ConfirmValidateMo=Are you sure you want to validate this Manufacturing Order? +ConfirmProductionDesc=By clicking on '%s', you will validate the consumption and/or production for the quantities set. This will also update the stock and record stock movements. +ProductionForRef=Production of %s +AutoCloseMO=Close automatically the Manufacturing Order if quantities to consume and to produce are reached +NoStockChangeOnServices=No stock change on services +ProductQtyToConsumeByMO=Product quantity still to consume by open MO +ProductQtyToProduceByMO=Product quentity still to produce by open MO +AddNewConsumeLines=Add new line to consume +ProductsToConsume=Products to consume +ProductsToProduce=Products to produce +UnitCost=Unit cost +TotalCost=Total cost diff --git a/htdocs/langs/ne_NP/multicurrency.lang b/htdocs/langs/ne_NP/multicurrency.lang new file mode 100644 index 00000000000..bfcbd11fb7c --- /dev/null +++ b/htdocs/langs/ne_NP/multicurrency.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Multi currency +ErrorAddRateFail=Error in added rate +ErrorAddCurrencyFail=Error in added currency +ErrorDeleteCurrencyFail=Error delete fail +multicurrency_syncronize_error=Synchronization error: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Use the date of the document to find the currency rate, instead of using the latest known rate +multicurrency_useOriginTx=When an object is created from another, keep the original rate from the source object (otherwise use the latest known rate) +CurrencyLayerAccount=CurrencyLayer API +CurrencyLayerAccount_help_to_synchronize=You must create an account on website %s to use this functionality.
    Get your API key.
    If you use a free account, you can't change the source currency (USD by default).
    If your main currency is not USD, the application will automatically recalculate it.

    You are limited to 1000 synchronizations per month. +multicurrency_appId=API key +multicurrency_appCurrencySource=Source currency +multicurrency_alternateCurrencySource=Alternate source currency +CurrenciesUsed=Currencies used +CurrenciesUsed_help_to_add=Add the different currencies and rates you need to use on your proposals, orders etc. +rate=rate +MulticurrencyReceived=Received, original currency +MulticurrencyRemainderToTake=Remaining amount, original currency +MulticurrencyPaymentAmount=Payment amount, original currency +AmountToOthercurrency=Amount To (in currency of receiving account) +CurrencyRateSyncSucceed=Currency rate synchronization done successfuly +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Use the currency of the document for online payments diff --git a/htdocs/langs/ne_NP/oauth.lang b/htdocs/langs/ne_NP/oauth.lang new file mode 100644 index 00000000000..075ff49a895 --- /dev/null +++ b/htdocs/langs/ne_NP/oauth.lang @@ -0,0 +1,32 @@ +# 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 credentials with your OAuth provider: +ListOfSupportedOauthProviders=Enter the credentials provided by your OAuth2 provider. Only supported OAuth2 providers are listedd here. These services 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 to 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 to this page then "Register a new application" to create OAuth credentials +OAUTH_STRIPE_TEST_NAME=OAuth Stripe Test +OAUTH_STRIPE_LIVE_NAME=OAuth Stripe Live diff --git a/htdocs/langs/ne_NP/opensurvey.lang b/htdocs/langs/ne_NP/opensurvey.lang new file mode 100644 index 00000000000..7d26151fa16 --- /dev/null +++ b/htdocs/langs/ne_NP/opensurvey.lang @@ -0,0 +1,61 @@ +# Dolibarr language file - Source file is en_US - opensurvey +Survey=Poll +Surveys=Polls +OrganizeYourMeetingEasily=Organize your meetings and polls easily. First select the type of poll... +NewSurvey=New poll +OpenSurveyArea=Polls area +AddACommentForPoll=You can add a comment into poll... +AddComment=Add comment +CreatePoll=Create poll +PollTitle=Poll title +ToReceiveEMailForEachVote=Receive an email for each vote +TypeDate=Type date +TypeClassic=Type standard +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=Remove all days +CopyHoursOfFirstDay=Copy hours of first day +RemoveAllHours=Remove all hours +SelectedDays=Selected days +TheBestChoice=The best choice currently is +TheBestChoices=The best choices currently are +with=with +OpenSurveyHowTo=If you agree to vote in this poll, you have to give your name, choose the values that fit best for you and validate with the plus button at the end of the line. +CommentsOfVoters=Comments of voters +ConfirmRemovalOfPoll=Are you sure you want to remove this poll (and all votes) +RemovePoll=Remove poll +UrlForSurvey=URL to communicate to get a direct access to poll +PollOnChoice=You are creating a poll to make a multi-choice for a poll. First enter all possible choices for your poll: +CreateSurveyDate=Create a date poll +CreateSurveyStandard=Create a standard poll +CheckBox=Simple checkbox +YesNoList=List (empty/yes/no) +PourContreList=List (empty/for/against) +AddNewColumn=Add new column +TitleChoice=Choice label +ExportSpreadsheet=Export result spreadsheet +ExpireDate=Limit date +NbOfSurveys=Number of polls +NbOfVoters=No. of voters +SurveyResults=Results +PollAdminDesc=You are allowed to change all vote lines of this poll with button "Edit". You can, as well, remove a column or a line with %s. You can also add a new column with %s. +5MoreChoices=5 more choices +Against=Against +YouAreInivitedToVote=You are invited to vote for this poll +VoteNameAlreadyExists=This name was already used for this poll +AddADate=Add a date +AddStartHour=Add start hour +AddEndHour=Add end hour +votes=vote(s) +NoCommentYet=No comments have been posted for this poll yet +CanComment=Voters can comment in the poll +CanSeeOthersVote=Voters can see other people's vote +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=Back to current month +ErrorOpenSurveyFillFirstSection=You haven't filled the first section of the poll creation +ErrorOpenSurveyOneChoice=Enter at least one choice +ErrorInsertingComment=There was an error while inserting your comment +MoreChoices=Enter more choices for the voters +SurveyExpiredInfo=The poll has been closed or voting delay has expired. +EmailSomeoneVoted=%s has filled a line.\nYou can find your poll at the link: \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 diff --git a/htdocs/langs/ne_NP/orders.lang b/htdocs/langs/ne_NP/orders.lang new file mode 100644 index 00000000000..ad91e1eef63 --- /dev/null +++ b/htdocs/langs/ne_NP/orders.lang @@ -0,0 +1,189 @@ +# Dolibarr language file - Source file is en_US - orders +OrdersArea=Customers orders area +SuppliersOrdersArea=Purchase orders area +OrderCard=Order card +OrderId=Order Id +Order=Order +PdfOrderTitle=Order +Orders=Orders +OrderLine=Order line +OrderDate=Order date +OrderDateShort=Order date +OrderToProcess=Order to process +NewOrder=New order +NewOrderSupplier=New Purchase Order +ToOrder=Make order +MakeOrder=Make order +SupplierOrder=Purchase order +SuppliersOrders=Purchase orders +SuppliersOrdersRunning=Current purchase orders +CustomerOrder=Sales Order +CustomersOrders=Sales Orders +CustomersOrdersRunning=Current sales orders +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 +SuppliersOrdersAwaitingReception=Purchase orders awaiting reception +AwaitingReception=Awaiting reception +StatusOrderCanceledShort=Canceled +StatusOrderDraftShort=Draft +StatusOrderValidatedShort=Validated +StatusOrderSentShort=In process +StatusOrderSent=Shipment in process +StatusOrderOnProcessShort=Ordered +StatusOrderProcessedShort=Processed +StatusOrderDelivered=Delivered +StatusOrderDeliveredShort=Delivered +StatusOrderToBillShort=Delivered +StatusOrderApprovedShort=Approved +StatusOrderRefusedShort=Refused +StatusOrderToProcessShort=To process +StatusOrderReceivedPartiallyShort=Partially received +StatusOrderReceivedAllShort=Products received +StatusOrderCanceled=Canceled +StatusOrderDraft=Draft (needs to be validated) +StatusOrderValidated=Validated +StatusOrderOnProcess=Ordered - Standby reception +StatusOrderOnProcessWithValidation=Ordered - Standby reception or validation +StatusOrderProcessed=Processed +StatusOrderToBill=Delivered +StatusOrderApproved=Approved +StatusOrderRefused=Refused +StatusOrderReceivedPartially=Partially received +StatusOrderReceivedAll=All products received +ShippingExist=A shipment exists +QtyOrdered=Qty ordered +ProductQtyInDraft=Product quantity into draft orders +ProductQtyInDraftOrWaitingApproved=Product quantity into draft or approved orders, not yet ordered +MenuOrdersToBill=Orders delivered +MenuOrdersToBill2=Billable orders +ShipProduct=Ship product +CreateOrder=Create Order +RefuseOrder=Refuse order +ApproveOrder=Approve order +Approve2Order=Approve order (second level) +ValidateOrder=Validate order +UnvalidateOrder=Unvalidate order +DeleteOrder=Delete order +CancelOrder=Cancel order +OrderReopened= Order %s re-open +AddOrder=Create order +AddPurchaseOrder=Create purchase order +AddToDraftOrders=Add to draft order +ShowOrder=Show order +OrdersOpened=Orders to process +NoDraftOrders=No draft orders +NoOrder=No order +NoSupplierOrder=No purchase order +LastOrders=Latest %s sales orders +LastCustomerOrders=Latest %s sales orders +LastSupplierOrders=Latest %s purchase orders +LastModifiedOrders=Latest %s modified orders +AllOrders=All orders +NbOfOrders=Number of orders +OrdersStatistics=Order's statistics +OrdersStatisticsSuppliers=Purchase order statistics +NumberOfOrdersByMonth=Number of orders by month +AmountOfOrdersByMonthHT=Amount of orders by month (excl. tax) +ListOfOrders=List of orders +CloseOrder=Close order +ConfirmCloseOrder=Are you sure you want to set this order to delivered? Once an order is delivered, it can be set to billed. +ConfirmDeleteOrder=Are you sure you want to delete this order? +ConfirmValidateOrder=Are you sure you want to validate this order under name %s? +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=Generate invoice +ClassifyShipped=Classify delivered +DraftOrders=Draft orders +DraftSuppliersOrders=Draft purchase orders +OnProcessOrders=In process orders +RefOrder=Ref. order +RefCustomerOrder=Ref. order for customer +RefOrderSupplier=Ref. order for vendor +RefOrderSupplierShort=Ref. order vendor +SendOrderByMail=Send order by mail +ActionsOnOrder=Events on order +NoArticleOfTypeProduct=No article of type 'product' so no shippable article for this order +OrderMode=Order method +AuthorRequest=Request author +UserWithApproveOrderGrant=Users granted with "approve orders" permission. +PaymentOrderRef=Payment of order %s +ConfirmCloneOrder=Are you sure you want to clone this order %s? +DispatchSupplierOrder=Receiving purchase order %s +FirstApprovalAlreadyDone=First approval already done +SecondApprovalAlreadyDone=Second approval already done +SupplierOrderReceivedInDolibarr=Purchase Order %s received %s +SupplierOrderSubmitedInDolibarr=Purchase Order %s submitted +SupplierOrderClassifiedBilled=Purchase Order %s set billed +OtherOrders=Other orders +##### Types de contacts ##### +TypeContact_commande_internal_SALESREPFOLL=Representative following-up sales order +TypeContact_commande_internal_SHIPPING=Representative following-up shipping +TypeContact_commande_external_BILLING=Customer invoice contact +TypeContact_commande_external_SHIPPING=Customer shipping contact +TypeContact_commande_external_CUSTOMER=Customer contact following-up order +TypeContact_order_supplier_internal_SALESREPFOLL=Representative following-up purchase order +TypeContact_order_supplier_internal_SHIPPING=Representative following-up shipping +TypeContact_order_supplier_external_BILLING=Vendor invoice contact +TypeContact_order_supplier_external_SHIPPING=Vendor shipping contact +TypeContact_order_supplier_external_CUSTOMER=Vendor contact following-up order +Error_COMMANDE_SUPPLIER_ADDON_NotDefined=Constant COMMANDE_SUPPLIER_ADDON not defined +Error_COMMANDE_ADDON_NotDefined=Constant COMMANDE_ADDON not defined +Error_OrderNotChecked=No orders to invoice selected +# Order modes (how we receive order). Not the "why" are keys stored into dict.lang +OrderByMail=Mail +OrderByFax=Fax +OrderByEMail=Email +OrderByWWW=Online +OrderByPhone=Phone +# Documents models +PDFEinsteinDescription=A complete order model (old implementation of Eratosthene template) +PDFEratostheneDescription=A complete order model +PDFEdisonDescription=A simple order model +PDFProformaDescription=A complete Proforma invoice template +CreateInvoiceForThisCustomer=Bill orders +CreateInvoiceForThisSupplier=Bill orders +NoOrdersToInvoice=No orders billable +CloseProcessedOrdersAutomatically=Classify "Processed" all selected orders. +OrderCreation=Order creation +Ordered=Ordered +OrderCreated=Your orders have been created +OrderFail=An error happened during your orders creation +CreateOrders=Create orders +ToBillSeveralOrderSelectCustomer=To create an invoice for several orders, click first onto customer, then choose "%s". +OptionToSetOrderBilledNotEnabled=Option from module Workflow, to set order to 'Billed' automatically when invoice is validated, is not enabled, so you will have to set the status of orders to 'Billed' manually after the invoice has been generated. +IfValidateInvoiceIsNoOrderStayUnbilled=If invoice validation is 'No', the order will remain to status 'Unbilled' until the invoice is validated. +CloseReceivedSupplierOrdersAutomatically=Close order to status "%s" automatically if all products are received. +SetShippingMode=Set shipping mode +WithReceptionFinished=With reception finished +#### supplier orders status +StatusSupplierOrderCanceledShort=Canceled +StatusSupplierOrderDraftShort=Draft +StatusSupplierOrderValidatedShort=Validated +StatusSupplierOrderSentShort=In process +StatusSupplierOrderSent=Shipment in process +StatusSupplierOrderOnProcessShort=Ordered +StatusSupplierOrderProcessedShort=Processed +StatusSupplierOrderDelivered=Delivered +StatusSupplierOrderDeliveredShort=Delivered +StatusSupplierOrderToBillShort=Delivered +StatusSupplierOrderApprovedShort=Approved +StatusSupplierOrderRefusedShort=Refused +StatusSupplierOrderToProcessShort=To process +StatusSupplierOrderReceivedPartiallyShort=Partially received +StatusSupplierOrderReceivedAllShort=Products received +StatusSupplierOrderCanceled=Canceled +StatusSupplierOrderDraft=Draft (needs to be validated) +StatusSupplierOrderValidated=Validated +StatusSupplierOrderOnProcess=Ordered - Standby reception +StatusSupplierOrderOnProcessWithValidation=Ordered - Standby reception or validation +StatusSupplierOrderProcessed=Processed +StatusSupplierOrderToBill=Delivered +StatusSupplierOrderApproved=Approved +StatusSupplierOrderRefused=Refused +StatusSupplierOrderReceivedPartially=Partially received +StatusSupplierOrderReceivedAll=All products received diff --git a/htdocs/langs/ne_NP/other.lang b/htdocs/langs/ne_NP/other.lang new file mode 100644 index 00000000000..ba85f51e739 --- /dev/null +++ b/htdocs/langs/ne_NP/other.lang @@ -0,0 +1,286 @@ +# Dolibarr language file - Source file is en_US - other +SecurityCode=Security code +NumberingShort=N° +Tools=Tools +TMenuTools=Tools +ToolsDesc=All tools not included in other menu entries are grouped here.
    All the tools can be accessed via the left menu. +Birthday=Birthday +BirthdayDate=Birthday date +DateToBirth=Birth date +BirthdayAlertOn=birthday alert active +BirthdayAlertOff=birthday alert inactive +TransKey=Translation of the key TransKey +MonthOfInvoice=Month (number 1-12) of invoice date +TextMonthOfInvoice=Month (text) of invoice date +PreviousMonthOfInvoice=Previous month (number 1-12) of invoice date +TextPreviousMonthOfInvoice=Previous month (text) of invoice date +NextMonthOfInvoice=Following month (number 1-12) of invoice date +TextNextMonthOfInvoice=Following month (text) of invoice date +ZipFileGeneratedInto=Zip file generated into %s. +DocFileGeneratedInto=Doc file generated into %s. +JumpToLogin=Disconnected. Go to login page... +MessageForm=Message on online payment form +MessageOK=Message on the return page for a validated payment +MessageKO=Message on the return page for a canceled payment +ContentOfDirectoryIsNotEmpty=Content of this directory is not empty. +DeleteAlsoContentRecursively=Check to delete all content recursively +PoweredBy=Powered by +YearOfInvoice=Year of invoice date +PreviousYearOfInvoice=Previous year of invoice date +NextYearOfInvoice=Following year of invoice date +DateNextInvoiceBeforeGen=Date of next invoice (before generation) +DateNextInvoiceAfterGen=Date of next invoice (after generation) +GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mode. The mode 'Lines' was automatically selected instead. +OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. +AtLeastOneMeasureIsRequired=At least 1 field for measure is required +AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required +LatestBlogPosts=Latest Blog Posts +Notify_ORDER_VALIDATE=Sales order validated +Notify_ORDER_SENTBYMAIL=Sales order sent by mail +Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email +Notify_ORDER_SUPPLIER_VALIDATE=Purchase order recorded +Notify_ORDER_SUPPLIER_APPROVE=Purchase order approved +Notify_ORDER_SUPPLIER_REFUSE=Purchase order refused +Notify_PROPAL_VALIDATE=Customer proposal validated +Notify_PROPAL_CLOSE_SIGNED=Customer proposal closed signed +Notify_PROPAL_CLOSE_REFUSED=Customer proposal closed refused +Notify_PROPAL_SENTBYMAIL=Commercial proposal sent by mail +Notify_WITHDRAW_TRANSMIT=Transmission withdrawal +Notify_WITHDRAW_CREDIT=Credit withdrawal +Notify_WITHDRAW_EMIT=Perform withdrawal +Notify_COMPANY_CREATE=Third party created +Notify_COMPANY_SENTBYMAIL=Mails sent from third party card +Notify_BILL_VALIDATE=Customer invoice validated +Notify_BILL_UNVALIDATE=Customer invoice unvalidated +Notify_BILL_PAYED=Customer invoice paid +Notify_BILL_CANCEL=Customer invoice canceled +Notify_BILL_SENTBYMAIL=Customer invoice sent by mail +Notify_BILL_SUPPLIER_VALIDATE=Vendor invoice validated +Notify_BILL_SUPPLIER_PAYED=Vendor invoice paid +Notify_BILL_SUPPLIER_SENTBYMAIL=Vendor invoice sent by mail +Notify_BILL_SUPPLIER_CANCELED=Vendor invoice cancelled +Notify_CONTRACT_VALIDATE=Contract validated +Notify_FICHINTER_VALIDATE=Intervention validated +Notify_FICHINTER_ADD_CONTACT=Added contact to Intervention +Notify_FICHINTER_SENTBYMAIL=Intervention sent by mail +Notify_SHIPPING_VALIDATE=Shipping validated +Notify_SHIPPING_SENTBYMAIL=Shipping sent by mail +Notify_MEMBER_VALIDATE=Member validated +Notify_MEMBER_MODIFY=Member modified +Notify_MEMBER_SUBSCRIPTION=Member subscribed +Notify_MEMBER_RESILIATE=Member terminated +Notify_MEMBER_DELETE=Member deleted +Notify_PROJECT_CREATE=Project creation +Notify_TASK_CREATE=Task created +Notify_TASK_MODIFY=Task modified +Notify_TASK_DELETE=Task deleted +Notify_EXPENSE_REPORT_VALIDATE=Expense report validated (approval required) +Notify_EXPENSE_REPORT_APPROVE=Expense report approved +Notify_HOLIDAY_VALIDATE=Leave request validated (approval required) +Notify_HOLIDAY_APPROVE=Leave request approved +SeeModuleSetup=See setup of module %s +NbOfAttachedFiles=Number of attached files/documents +TotalSizeOfAttachedFiles=Total size of attached files/documents +MaxSize=Maximum size +AttachANewFile=Attach a new file/document +LinkedObject=Linked object +NbOfActiveNotifications=Number of notifications (no. of recipient emails) +PredefinedMailTest=__(Hello)__\nThis is a test mail sent to __EMAIL__.\nThe two lines are separated by a carriage return.\n\n__USER_SIGNATURE__ +PredefinedMailTestHtml=__(Hello)__\nThis is a test 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__ +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__ +PredefinedMailContentSendSupplierProposal=__(Hello)__\n\nPlease find price request __REF__ attached\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ +PredefinedMailContentSendOrder=__(Hello)__\n\nPlease find order __REF__ attached\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ +PredefinedMailContentSendSupplierOrder=__(Hello)__\n\nPlease find our order __REF__ attached\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ +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__ +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 is a compact ERP/CRM supporting several business modules. A demo showcasing all modules makes no sense as this scenario never occurs (several hundred available). So, several demo profiles are available. +ChooseYourDemoProfil=Choose the demo profile that best suits your needs... +ChooseYourDemoProfilMore=...or build your own profile
    (manual module selection) +DemoFundation=Manage members of a foundation +DemoFundation2=Manage members and bank account of a foundation +DemoCompanyServiceOnly=Company or freelance selling service only +DemoCompanyShopWithCashDesk=Manage a shop with a cash desk +DemoCompanyProductAndStocks=Shop selling products with Point Of Sales +DemoCompanyManufacturing=Company manufacturing products +DemoCompanyAll=Company with multiple activities (all main modules) +CreatedBy=Created by %s +ModifiedBy=Modified by %s +ValidatedBy=Validated by %s +ClosedBy=Closed by %s +CreatedById=User id who created +ModifiedById=User id who made latest change +ValidatedById=User id who validated +CanceledById=User id who canceled +ClosedById=User id who closed +CreatedByLogin=User login who created +ModifiedByLogin=User login who made latest change +ValidatedByLogin=User login who validated +CanceledByLogin=User login who canceled +ClosedByLogin=User login who closed +FileWasRemoved=File %s was removed +DirWasRemoved=Directory %s was removed +FeatureNotYetAvailable=Feature not yet available in the current version +FeaturesSupported=Supported features +Width=Width +Height=Height +Depth=Depth +Top=Top +Bottom=Bottom +Left=Left +Right=Right +CalculatedWeight=Calculated weight +CalculatedVolume=Calculated volume +Weight=Weight +WeightUnitton=tonne +WeightUnitkg=kg +WeightUnitg=g +WeightUnitmg=mg +WeightUnitpound=pound +WeightUnitounce=ounce +Length=Length +LengthUnitm=m +LengthUnitdm=dm +LengthUnitcm=cm +LengthUnitmm=mm +Surface=Area +SurfaceUnitm2=m² +SurfaceUnitdm2=dm² +SurfaceUnitcm2=cm² +SurfaceUnitmm2=mm² +SurfaceUnitfoot2=ft² +SurfaceUnitinch2=in² +Volume=Volume +VolumeUnitm3=m³ +VolumeUnitdm3=dm³ (L) +VolumeUnitcm3=cm³ (ml) +VolumeUnitmm3=mm³ (µl) +VolumeUnitfoot3=ft³ +VolumeUnitinch3=in³ +VolumeUnitounce=ounce +VolumeUnitlitre=litre +VolumeUnitgallon=gallon +SizeUnitm=m +SizeUnitdm=dm +SizeUnitcm=cm +SizeUnitmm=mm +SizeUnitinch=inch +SizeUnitfoot=foot +SizeUnitpoint=point +BugTracker=Bug tracker +SendNewPasswordDesc=This form allows you to request a new password. It will be sent to your email address.
    Change will become effective once you click on the confirmation link in the email.
    Check your inbox. +BackToLoginPage=Back to login page +AuthenticationDoesNotAllowSendNewPassword=Authentication mode is %s.
    In this mode, Dolibarr can't know nor change your password.
    Contact your system administrator if you want to change your password. +EnableGDLibraryDesc=Install or enable GD library on your PHP installation to use this option. +ProfIdShortDesc=Prof Id %s is an information depending on third party country.
    For example, for country %s, it's code %s. +DolibarrDemo=Dolibarr ERP/CRM demo +StatsByNumberOfUnits=Statistics for sum of qty of products/services +StatsByNumberOfEntities=Statistics in number of referring entities (no. of invoice, or order...) +NumberOfProposals=Number of proposals +NumberOfCustomerOrders=Number of sales orders +NumberOfCustomerInvoices=Number of customer invoices +NumberOfSupplierProposals=Number of vendor proposals +NumberOfSupplierOrders=Number of purchase orders +NumberOfSupplierInvoices=Number of vendor invoices +NumberOfContracts=Number of contracts +NumberOfMos=Number of manufacturing orders +NumberOfUnitsProposals=Number of units on proposals +NumberOfUnitsCustomerOrders=Number of units on sales orders +NumberOfUnitsCustomerInvoices=Number of units on customer invoices +NumberOfUnitsSupplierProposals=Number of units on vendor proposals +NumberOfUnitsSupplierOrders=Number of units on purchase orders +NumberOfUnitsSupplierInvoices=Number of units on vendor invoices +NumberOfUnitsContracts=Number of units on contracts +NumberOfUnitsMos=Number of units to produce in manufacturing orders +EMailTextInterventionAddedContact=A new intervention %s has been assigned to you. +EMailTextInterventionValidated=The intervention %s has been validated. +EMailTextInvoiceValidated=Invoice %s has been validated. +EMailTextInvoicePayed=Invoice %s has been paid. +EMailTextProposalValidated=Proposal %s has been validated. +EMailTextProposalClosedSigned=Proposal %s has been closed signed. +EMailTextOrderValidated=Order %s has been validated. +EMailTextOrderApproved=Order %s has been approved. +EMailTextOrderValidatedBy=Order %s has been recorded by %s. +EMailTextOrderApprovedBy=Order %s has been approved by %s. +EMailTextOrderRefused=Order %s has been refused. +EMailTextOrderRefusedBy=Order %s has been refused by %s. +EMailTextExpeditionValidated=Shipping %s has been validated. +EMailTextExpenseReportValidated=Expense report %s has been validated. +EMailTextExpenseReportApproved=Expense report %s has been approved. +EMailTextHolidayValidated=Leave request %s has been validated. +EMailTextHolidayApproved=Leave request %s has been approved. +ImportedWithSet=Importation data set +DolibarrNotification=Automatic notification +ResizeDesc=Enter new width OR new height. Ratio will be kept during resizing... +NewLength=New width +NewHeight=New height +NewSizeAfterCropping=New size after cropping +DefineNewAreaToPick=Define new area on image to pick (left click on image then drag until you reach the opposite corner) +CurrentInformationOnImage=This tool was designed to help you to resize or crop an image. This is the information on the current edited image +ImageEditor=Image editor +YouReceiveMailBecauseOfNotification=You receive this message because your email has been added to list of targets to be informed of particular events into %s software of %s. +YouReceiveMailBecauseOfNotification2=This event is the following: +ThisIsListOfModules=This is a list of modules preselected by this demo profile (only most common modules are visible in this demo). Edit this to have a more personalized demo and click on "Start". +UseAdvancedPerms=Use the advanced permissions of some modules +FileFormat=File format +SelectAColor=Choose a color +AddFiles=Add Files +StartUpload=Start upload +CancelUpload=Cancel upload +FileIsTooBig=Files is too big +PleaseBePatient=Please be patient... +NewPassword=New password +ResetPassword=Reset password +RequestToResetPasswordReceived=A request to change your password has been received. +NewKeyIs=This is your new keys to login +NewKeyWillBe=Your new key to login to software will be +ClickHereToGoTo=Click here to go to %s +YouMustClickToChange=You must however first click on the following link to validate this password change +ForgetIfNothing=If you didn't request this change, just forget this email. Your credentials are kept safe. +IfAmountHigherThan=If amount higher than %s +SourcesRepository=Repository for sources +Chart=Chart +PassEncoding=Password encoding +PermissionsAdd=Permissions added +PermissionsDelete=Permissions removed +YourPasswordMustHaveAtLeastXChars=Your password must have at least %s chars +YourPasswordHasBeenReset=Your password has been reset successfully +ApplicantIpAddress=IP address of applicant +SMSSentTo=SMS sent to %s +MissingIds=Missing ids +ThirdPartyCreatedByEmailCollector=Third party created by email collector from email MSGID %s +ContactCreatedByEmailCollector=Contact/address created by email collector from email MSGID %s +ProjectCreatedByEmailCollector=Project created by email collector from email MSGID %s +TicketCreatedByEmailCollector=Ticket created by email collector from email MSGID %s +OpeningHoursFormatDesc=Use a - to separate opening and closing hours.
    Use a space to enter different ranges.
    Example: 8-12 14-18 + +##### Export ##### +ExportsArea=Exports area +AvailableFormats=Available formats +LibraryUsed=Library used +LibraryVersion=Library version +ExportableDatas=Exportable data +NoExportableData=No exportable data (no modules with exportable data loaded, or missing permissions) +##### External sites ##### +WebsiteSetup=Setup of module website +WEBSITE_PAGEURL=URL of page +WEBSITE_TITLE=Title +WEBSITE_DESCRIPTION=Description +WEBSITE_IMAGE=Image +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). +WEBSITE_KEYWORDS=Keywords +LinesToImport=Lines to import + +MemoryUsage=Memory usage +RequestDuration=Duration of request +PopuProp=Products/Services by popularity in Proposals +PopuCom=Products/Services by popularity in Orders +ProductStatistics=Products/Services Statistics +NbOfQtyInOrders=Qty in orders diff --git a/htdocs/langs/ne_NP/paybox.lang b/htdocs/langs/ne_NP/paybox.lang new file mode 100644 index 00000000000..1bbbef4017b --- /dev/null +++ b/htdocs/langs/ne_NP/paybox.lang @@ -0,0 +1,31 @@ +# Dolibarr language file - Source file is en_US - paybox +PayBoxSetup=PayBox module setup +PayBoxDesc=This module offer pages to allow payment on Paybox by customers. This can be used for a free payment or for a payment on a particular Dolibarr object (invoice, order, ...) +FollowingUrlAreAvailableToMakePayments=Following URLs are available to offer a page to a customer to make a payment on Dolibarr objects +PaymentForm=Payment form +WelcomeOnPaymentPage=Welcome to our online payment service +ThisScreenAllowsYouToPay=This screen allow you to make an online payment to %s. +ThisIsInformationOnPayment=This is information on payment to do +ToComplete=To complete +YourEMail=Email to receive payment confirmation +Creditor=Creditor +PaymentCode=Payment code +PayBoxDoPayment=Pay with Paybox +YouWillBeRedirectedOnPayBox=You will be redirected on secured Paybox page to input you credit card information +Continue=Next +SetupPayBoxToHavePaymentCreatedAutomatically=Setup your Paybox with url %s to have payment created automatically when validated by Paybox. +YourPaymentHasBeenRecorded=This page confirms that your payment has been recorded. Thank you. +YourPaymentHasNotBeenRecorded=Your payment has NOT been recorded and the transaction has been canceled. Thank you. +AccountParameter=Account parameters +UsageParameter=Usage parameters +InformationToFindParameters=Help to find your %s account information +PAYBOX_CGI_URL_V2=Url of Paybox CGI module for payment +VendorName=Name of vendor +CSSUrlForPaymentForm=CSS style sheet url for payment form +NewPayboxPaymentReceived=New Paybox payment received +NewPayboxPaymentFailed=New Paybox payment tried but failed +PAYBOX_PAYONLINE_SENDEMAIL=Email notification after payment attempt (success or fail) +PAYBOX_PBX_SITE=Value for PBX SITE +PAYBOX_PBX_RANG=Value for PBX Rang +PAYBOX_PBX_IDENTIFIANT=Value for PBX ID +PAYBOX_HMAC_KEY=HMAC key diff --git a/htdocs/langs/ne_NP/paypal.lang b/htdocs/langs/ne_NP/paypal.lang new file mode 100644 index 00000000000..5eb5f389445 --- /dev/null +++ b/htdocs/langs/ne_NP/paypal.lang @@ -0,0 +1,36 @@ +# Dolibarr language file - Source file is en_US - paypal +PaypalSetup=PayPal module setup +PaypalDesc=This module allows payment by customers via PayPal. This can be used for a ad-hoc payment or for a payment related to a Dolibarr object (invoice, order, ...) +PaypalOrCBDoPayment=Pay with PayPal (Card or PayPal) +PaypalDoPayment=Pay with PayPal +PAYPAL_API_SANDBOX=Mode test/sandbox +PAYPAL_API_USER=API username +PAYPAL_API_PASSWORD=API password +PAYPAL_API_SIGNATURE=API signature +PAYPAL_SSLVERSION=Curl SSL Version +PAYPAL_API_INTEGRAL_OR_PAYPALONLY=Offer "integral" payment (Credit card+PayPal) or "PayPal" only +PaypalModeIntegral=Integral +PaypalModeOnlyPaypal=PayPal only +ONLINE_PAYMENT_CSS_URL=Optional URL of CSS stylesheet on online payment page +ThisIsTransactionId=This is id of transaction: %s +PAYPAL_ADD_PAYMENT_URL=Include the PayPal payment url when you send a document by email +NewOnlinePaymentReceived=New online payment received +NewOnlinePaymentFailed=New online payment tried but failed +ONLINE_PAYMENT_SENDEMAIL=Email address for notifications after each payment attempt (for success and fail) +ReturnURLAfterPayment=Return URL after payment +ValidationOfOnlinePaymentFailed=Validation of online payment failed +PaymentSystemConfirmPaymentPageWasCalledButFailed=Payment confirmation page was called by payment system returned an error +SetExpressCheckoutAPICallFailed=SetExpressCheckout API call failed. +DoExpressCheckoutPaymentAPICallFailed=DoExpressCheckoutPayment API call failed. +DetailedErrorMessage=Detailed Error Message +ShortErrorMessage=Short Error Message +ErrorCode=Error Code +ErrorSeverityCode=Error Severity Code +OnlinePaymentSystem=Online payment system +PaypalLiveEnabled=PayPal "live" mode enabled (otherwise test/sandbox mode) +PaypalImportPayment=Import PayPal payments +PostActionAfterPayment=Post actions after payments +ARollbackWasPerformedOnPostActions=A rollback was performed on all Post actions. You must complete post actions manually if they are necessary. +ValidationOfPaymentFailed=Validation of payment has failed +CardOwner=Card holder +PayPalBalance=Paypal credit diff --git a/htdocs/langs/ne_NP/printing.lang b/htdocs/langs/ne_NP/printing.lang new file mode 100644 index 00000000000..16494583550 --- /dev/null +++ b/htdocs/langs/ne_NP/printing.lang @@ -0,0 +1,54 @@ +# Dolibarr language file - Source file is en_US - printing +Module64000Name=Direct Printing +Module64000Desc=Enable Direct Printing System +PrintingSetup=Setup of Direct Printing System +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=Direct Printing jobs +DirectPrint=Direct print +PrintingDriverDesc=Configuration variables for printing driver. +ListDrivers=List of drivers +PrintTestDesc=List of Printers. +FileWasSentToPrinter=File %s was sent to printer +ViaModule=via the module +NoActivePrintingModuleFound=No active driver to print document. Check setup of module %s. +PleaseSelectaDriverfromList=Please select a driver from list. +PleaseConfigureDriverfromList=Please configure the selected driver from list. +SetupDriver=Driver setup +TargetedPrinter=Targeted printer +UserConf=Setup per user +PRINTGCP_INFO=Google OAuth API setup +PRINTGCP_AUTHLINK=Authentication +PRINTGCP_TOKEN_ACCESS=Google Cloud Print OAuth Token +PrintGCPDesc=This driver allows sending documents directly to a printer using Google Cloud Print. +GCP_Name=Name +GCP_displayName=Display Name +GCP_Id=Printer Id +GCP_OwnerName=Owner Name +GCP_State=Printer State +GCP_connectionStatus=Online State +GCP_Type=Printer Type +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=Login +PRINTIPP_PASSWORD=Password +NoDefaultPrinterDefined=No default printer defined +DefaultPrinter=Default printer +Printer=Printer +IPP_Uri=Printer Uri +IPP_Name=Printer Name +IPP_State=Printer State +IPP_State_reason=State reason +IPP_State_reason1=State reason1 +IPP_BW=BW +IPP_Color=Color +IPP_Device=Device +IPP_Media=Printer media +IPP_Supported=Type of media +DirectPrintingJobsDesc=This page lists printing jobs found for available printers. +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/ne_NP/productbatch.lang b/htdocs/langs/ne_NP/productbatch.lang new file mode 100644 index 00000000000..54270c4a23b --- /dev/null +++ b/htdocs/langs/ne_NP/productbatch.lang @@ -0,0 +1,24 @@ +# ProductBATCH language file - en_US - ProductBATCH +ManageLotSerial=Use lot/serial number +ProductStatusOnBatch=Yes (lot/serial required) +ProductStatusNotOnBatch=No (lot/serial not used) +ProductStatusOnBatchShort=Yes +ProductStatusNotOnBatchShort=No +Batch=Lot/Serial +atleast1batchfield=Eat-by date or Sell-by date or Lot/Serial number +batch_number=Lot/Serial number +BatchNumberShort=Lot/Serial +EatByDate=Eat-by date +SellByDate=Sell-by date +DetailBatchNumber=Lot/Serial details +printBatch=Lot/Serial: %s +printEatby=Eat-by: %s +printSellby=Sell-by: %s +printQty=Qty: %d +AddDispatchBatchLine=Add a line for Shelf Life dispatching +WhenProductBatchModuleOnOptionAreForced=When module Lot/Serial is on, automatic stock decrease is forced to 'Decrease real stocks on shipping validation' and automatic increase mode is forced to 'Increase real stocks on manual dispatching into warehouses' and can't be edited. Other options can be defined as you want. +ProductDoesNotUseBatchSerial=This product does not use lot/serial number +ProductLotSetup=Setup of module lot/serial +ShowCurrentStockOfLot=Show current stock for couple product/lot +ShowLogOfMovementIfLot=Show log of movements for couple product/lot +StockDetailPerBatch=Stock detail per lot diff --git a/htdocs/langs/ne_NP/products.lang b/htdocs/langs/ne_NP/products.lang new file mode 100644 index 00000000000..a31243a07b6 --- /dev/null +++ b/htdocs/langs/ne_NP/products.lang @@ -0,0 +1,385 @@ +# Dolibarr language file - Source file is en_US - products +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 +TMenuProducts=Products +TMenuServices=Services +Products=Products +Services=Services +Product=Product +Service=Service +ProductId=Product/service id +Create=Create +Reference=Reference +NewProduct=New product +NewService=New service +ProductVatMassChange=Global VAT Update +ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL products and services! +MassBarcodeInit=Mass barcode init +MassBarcodeInitDesc=This page can be used to initialize a barcode on objects that does not have barcode defined. Check before that setup of module barcode is complete. +ProductAccountancyBuyCode=Accounting code (purchase) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) +ProductAccountancySellCode=Accounting code (sale) +ProductAccountancySellIntraCode=Accounting code (sale intra-Community) +ProductAccountancySellExportCode=Accounting code (sale export) +ProductOrService=Product or Service +ProductsAndServices=Products and Services +ProductsOrServices=Products or Services +ProductsPipeServices=Products | Services +ProductsOnSale=Products for sale +ProductsOnPurchase=Products for purchase +ProductsOnSaleOnly=Products for sale only +ProductsOnPurchaseOnly=Products for purchase only +ProductsNotOnSell=Products not for sale and not for purchase +ProductsOnSellAndOnBuy=Products for sale and for purchase +ServicesOnSale=Services for sale +ServicesOnPurchase=Services for purchase +ServicesOnSaleOnly=Services for sale only +ServicesOnPurchaseOnly=Services for purchase only +ServicesNotOnSell=Services not for sale and not for purchase +ServicesOnSellAndOnBuy=Services for sale and for purchase +LastModifiedProductsAndServices=Last %s modified products/services +LastRecordedProducts=Latest %s recorded products +LastRecordedServices=Latest %s recorded services +CardProduct0=Product +CardProduct1=Service +Stock=Stock +MenuStocks=Stocks +Stocks=Stocks and location (warehouse) of products +Movements=Movements +Sell=Sell +Buy=Purchase +OnSell=For sale +OnBuy=For purchase +NotOnSell=Not for sale +ProductStatusOnSell=For sale +ProductStatusNotOnSell=Not for sale +ProductStatusOnSellShort=For sale +ProductStatusNotOnSellShort=Not for sale +ProductStatusOnBuy=For purchase +ProductStatusNotOnBuy=Not for purchase +ProductStatusOnBuyShort=For purchase +ProductStatusNotOnBuyShort=Not for purchase +UpdateVAT=Update vat +UpdateDefaultPrice=Update default price +UpdateLevelPrices=Update prices for each level +AppliedPricesFrom=Applied from +SellingPrice=Selling price +SellingPriceHT=Selling price (excl. tax) +SellingPriceTTC=Selling price (inc. tax) +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. +CostPriceUsage=This value could be used for margin calculation. +SoldAmount=Sold amount +PurchasedAmount=Purchased amount +NewPrice=New price +MinPrice=Min. sell price +EditSellingPriceLabel=Edit selling price label +CantBeLessThanMinPrice=The selling price can't be lower than minimum allowed for this product (%s without tax). This message can also appears if you type a too important discount. +ContractStatusClosed=Closed +ErrorProductAlreadyExists=A product with reference %s already exists. +ErrorProductBadRefOrLabel=Wrong value for reference or label. +ErrorProductClone=There was a problem while trying to clone the product or service. +ErrorPriceCantBeLowerThanMinPrice=Error, price can't be lower than minimum price. +Suppliers=Vendors +SupplierRef=Vendor SKU +ShowProduct=Show product +ShowService=Show service +ProductsAndServicesArea=Product and Services area +ProductsArea=Product area +ServicesArea=Services area +ListOfStockMovements=List of stock movements +BuyingPrice=Buying price +PriceForEachProduct=Products with specific prices +SupplierCard=Vendor card +PriceRemoved=Price removed +BarCode=Barcode +BarcodeType=Barcode type +SetDefaultBarcodeType=Set barcode type +BarcodeValue=Barcode value +NoteNotVisibleOnBill=Note (not visible on invoices, proposals...) +ServiceLimitedDuration=If product is a service with limited duration: +MultiPricesAbility=Multiple price segments per product/service (each customer is in one price segment) +MultiPricesNumPrices=Number of prices +AssociatedProductsAbility=Activate virtual products (kits) +AssociatedProducts=Virtual products +AssociatedProductsNumber=Number of products composing this virtual product +ParentProductsNumber=Number of parent packaging product +ParentProducts=Parent products +IfZeroItIsNotAVirtualProduct=If 0, this product is not a virtual product +IfZeroItIsNotUsedByVirtualProduct=If 0, this product is not used by any virtual product +KeywordFilter=Keyword filter +CategoryFilter=Category filter +ProductToAddSearch=Search product to add +NoMatchFound=No match found +ListOfProductsServices=List of products/services +ProductAssociationList=List of products/services that are component(s) of this virtual product/kit +ProductParentList=List of virtual products/services with this product as a component +ErrorAssociationIsFatherOfThis=One of selected product is parent with current product +DeleteProduct=Delete a product/service +ConfirmDeleteProduct=Are you sure you want to delete this product/service? +ProductDeleted=Product/Service "%s" deleted from database. +ExportDataset_produit_1=Products +ExportDataset_service_1=Services +ImportDataset_produit_1=Products +ImportDataset_service_1=Services +DeleteProductLine=Delete product line +ConfirmDeleteProductLine=Are you sure you want to delete this product line? +ProductSpecial=Special +QtyMin=Min. purchase quantity +PriceQtyMin=Price quantity min. +PriceQtyMinCurrency=Price (currency) for this qty. (no discount) +VATRateForSupplierProduct=VAT Rate (for this vendor/product) +DiscountQtyMin=Discount for this qty. +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=Predefined products/services to sell +PredefinedProductsToPurchase=Predefined product to purchase +PredefinedServicesToPurchase=Predefined services to purchase +PredefinedProductsAndServicesToPurchase=Predefined products/services to purchase +NotPredefinedProducts=Not predefined products/services +GenerateThumb=Generate thumb +ServiceNb=Service #%s +ListProductServiceByPopularity=List of products/services by popularity +ListProductByPopularity=List of products by popularity +ListServiceByPopularity=List of services by popularity +Finished=Manufactured product +RowMaterial=Raw Material +ConfirmCloneProduct=Are you sure you want to clone product or service %s? +CloneContentProduct=Clone all main information of product/service +ClonePricesProduct=Clone prices +CloneCategoriesProduct=Clone tags/categories linked +CloneCompositionProduct=Clone virtual product/service +CloneCombinationsProduct=Clone product variants +ProductIsUsed=This product is used +NewRefForClone=Ref. of new product/service +SellingPrices=Selling prices +BuyingPrices=Buying prices +CustomerPrices=Customer prices +SuppliersPrices=Vendor prices +SuppliersPricesOfProductsOrServices=Vendor prices (of products or services) +CustomCode=Customs / Commodity / HS code +CountryOrigin=Origin country +Nature=Nature of product (material/finished) +ShortLabel=Short label +Unit=Unit +p=u. +set=set +se=set +second=second +s=s +hour=hour +h=h +day=day +d=d +kilogram=kilogram +kg=Kg +gram=gram +g=g +meter=meter +m=m +lm=lm +m2=m² +m3=m³ +liter=liter +l=L +unitP=Piece +unitSET=Set +unitS=Second +unitH=Hour +unitD=Day +unitG=Gram +unitM=Meter +unitLM=Linear meter +unitM2=Square meter +unitM3=Cubic meter +unitL=Liter +unitT=ton +unitKG=kg +unitG=Gram +unitMG=mg +unitLB=pound +unitOZ=ounce +unitM=Meter +unitDM=dm +unitCM=cm +unitMM=mm +unitFT=ft +unitIN=in +unitM2=Square meter +unitDM2=dm² +unitCM2=cm² +unitMM2=mm² +unitFT2=ft² +unitIN2=in² +unitM3=Cubic meter +unitDM3=dm³ +unitCM3=cm³ +unitMM3=mm³ +unitFT3=ft³ +unitIN3=in³ +unitOZ3=ounce +unitgallon=gallon +ProductCodeModel=Product ref template +ServiceCodeModel=Service ref template +CurrentProductPrice=Current price +AlwaysUseNewPrice=Always use current price of product/service +AlwaysUseFixedPrice=Use the fixed price +PriceByQuantity=Different prices by quantity +DisablePriceByQty=Disable prices by quantity +PriceByQuantityRange=Quantity range +MultipriceRules=Price segment rules +UseMultipriceRules=Use price segment rules (defined into product module setup) to auto calculate prices of all other segments according to first segment +PercentVariationOver=%% variation over %s +PercentDiscountOver=%% discount over %s +KeepEmptyForAutoCalculation=Keep empty to have this calculated automatically from weight or volume of products +VariantRefExample=Examples: COL, SIZE +VariantLabelExample=Examples: Color, Size +### composition fabrication +Build=Produce +ProductsMultiPrice=Products and prices for each price segment +ProductsOrServiceMultiPrice=Customer prices (of products or services, multi-prices) +ProductSellByQuarterHT=Products turnover quarterly before tax +ServiceSellByQuarterHT=Services turnover quarterly before tax +Quarter1=1st. Quarter +Quarter2=2nd. Quarter +Quarter3=3rd. Quarter +Quarter4=4th. Quarter +BarCodePrintsheet=Print barcode +PageToGenerateBarCodeSheets=With this tool, you can print sheets of barcode stickers. Choose format of your sticker page, type of barcode and value of barcode, then click on button %s. +NumberOfStickers=Number of stickers to print on page +PrintsheetForOneBarCode=Print several stickers for one barcode +BuildPageToPrint=Generate page to print +FillBarCodeTypeAndValueManually=Fill barcode type and value manually. +FillBarCodeTypeAndValueFromProduct=Fill barcode type and value from barcode of a product. +FillBarCodeTypeAndValueFromThirdParty=Fill barcode type and value from barcode of a third party. +DefinitionOfBarCodeForProductNotComplete=Definition of type or value of barcode not complete for product %s. +DefinitionOfBarCodeForThirdpartyNotComplete=Definition of type or value of barcode non complete for third party %s. +BarCodeDataForProduct=Barcode information of product %s: +BarCodeDataForThirdparty=Barcode information of third party %s: +ResetBarcodeForAllRecords=Define barcode value for all record (this will also reset barcode value already defined with new values) +PriceByCustomer=Different prices for each customer +PriceCatalogue=A single sell price per product/service +PricingRule=Rules for selling prices +AddCustomerPrice=Add price by customer +ForceUpdateChildPriceSoc=Set same price on customer subsidiaries +PriceByCustomerLog=Log of previous customer prices +MinimumPriceLimit=Minimum price can't be lower then %s +MinimumRecommendedPrice=Minimum recommended price is: %s +PriceExpressionEditor=Price expression editor +PriceExpressionSelected=Selected price expression +PriceExpressionEditorHelp1="price = 2 + 2" or "2 + 2" for setting the price. Use ; to separate expressions +PriceExpressionEditorHelp2=You can access ExtraFields with variables like #extrafield_myextrafieldkey# and global variables with #global_mycode# +PriceExpressionEditorHelp3=In both product/service and vendor prices there are these variables available:
    #tva_tx# #localtax1_tx# #localtax2_tx# #weight# #length# #surface# #price_min# +PriceExpressionEditorHelp4=In product/service price only: #supplier_min_price#
    In vendor prices only: #supplier_quantity# and #supplier_tva_tx# +PriceExpressionEditorHelp5=Available global values: +PriceMode=Price mode +PriceNumeric=Number +DefaultPrice=Default price +ComposedProductIncDecStock=Increase/Decrease stock on parent change +ComposedProduct=Child products +MinSupplierPrice=Minimum buying price +MinCustomerPrice=Minimum selling price +DynamicPriceConfiguration=Dynamic price configuration +DynamicPriceDesc=You may define mathematical formulae to calculate Customer or Vendor prices. Such formulas can use all mathematical operators, some constants and variables. You can define here the variables you wish to use. If the variable needs an automatic update, you may define the external URL to allow Dolibarr to update the value automatically. +AddVariable=Add Variable +AddUpdater=Add Updater +GlobalVariables=Global variables +VariableToUpdate=Variable to update +GlobalVariableUpdaters=External updaters for variables +GlobalVariableUpdaterType0=JSON data +GlobalVariableUpdaterHelp0=Parses JSON data from specified URL, VALUE specifies the location of relevant value, +GlobalVariableUpdaterHelpFormat0=Format for request {"URL": "http://example.com/urlofjson", "VALUE": "array1,array2,targetvalue"} +GlobalVariableUpdaterType1=WebService data +GlobalVariableUpdaterHelp1=Parses WebService data from specified URL, NS specifies the namespace, VALUE specifies the location of relevant value, DATA should contain the data to send and METHOD is the calling WS method +GlobalVariableUpdaterHelpFormat1=Format for request is {"URL": "http://example.com/urlofws", "VALUE": "array,targetvalue", "NS": "http://example.com/urlofns", "METHOD": "myWSMethod", "DATA": {"your": "data", "to": "send"}} +UpdateInterval=Update interval (minutes) +LastUpdated=Latest update +CorrectlyUpdated=Correctly updated +PropalMergePdfProductActualFile=Files use to add into PDF Azur are/is +PropalMergePdfProductChooseFile=Select PDF files +IncludingProductWithTag=Including product/service with tag +DefaultPriceRealPriceMayDependOnCustomer=Default price, real price may depend on customer +WarningSelectOneDocument=Please select at least one document +DefaultUnitToShow=Unit +NbOfQtyInProposals=Qty in proposals +ClinkOnALinkOfColumn=Click on a link of column %s to get a detailed view... +ProductsOrServicesTranslations=Products/Services translations +TranslatedLabel=Translated label +TranslatedDescription=Translated description +TranslatedNote=Translated notes +ProductWeight=Weight for 1 product +ProductVolume=Volume for 1 product +WeightUnits=Weight unit +VolumeUnits=Volume unit +WidthUnits=Width unit +LengthUnits=Length unit +HeightUnits=Height unit +SurfaceUnits=Surface unit +SizeUnits=Size unit +DeleteProductBuyPrice=Delete buying price +ConfirmDeleteProductBuyPrice=Are you sure you want to delete this buying price? +SubProduct=Sub product +ProductSheet=Product sheet +ServiceSheet=Service sheet +PossibleValues=Possible values +GoOnMenuToCreateVairants=Go on menu %s - %s to prepare attribute variants (like colors, size, ...) +UseProductFournDesc=Add a feature to define the descriptions of products defined by the vendors in addition to descriptions for customers +ProductSupplierDescription=Vendor description for the product +UseProductSupplierPackaging=Use packaging on supplier prices (recalculate quantities according to packaging set on supplier price when adding/updating line in supplier documents) +PackagingForThisProduct=Packaging +QtyRecalculatedWithPackaging=The quantity of the line were recalculated according to supplier packaging + +#Attributes +VariantAttributes=Variant attributes +ProductAttributes=Variant attributes for products +ProductAttributeName=Variant attribute %s +ProductAttribute=Variant attribute +ProductAttributeDeleteDialog=Are you sure you want to delete this attribute? All values will be deleted +ProductAttributeValueDeleteDialog=Are you sure you want to delete the value "%s" with reference "%s" of this attribute? +ProductCombinationDeleteDialog=Are you sure want to delete the variant of the product "%s"? +ProductCombinationAlreadyUsed=There was an error while deleting the variant. Please check it is not being used in any object +ProductCombinations=Variants +PropagateVariant=Propagate variants +HideProductCombinations=Hide products variant in the products selector +ProductCombination=Variant +NewProductCombination=New variant +EditProductCombination=Editing variant +NewProductCombinations=New variants +EditProductCombinations=Editing variants +SelectCombination=Select combination +ProductCombinationGenerator=Variants generator +Features=Features +PriceImpact=Price impact +WeightImpact=Weight impact +NewProductAttribute=New attribute +NewProductAttributeValue=New attribute value +ErrorCreatingProductAttributeValue=There was an error while creating the attribute value. It could be because there is already an existing value with that reference +ProductCombinationGeneratorWarning=If you continue, before generating new variants, all previous ones will be DELETED. Already existing ones will be updated with the new values +TooMuchCombinationsWarning=Generating lots of variants may result in high CPU, memory usage and Dolibarr not able to create them. Enabling the option "%s" may help reduce memory usage. +DoNotRemovePreviousCombinations=Do not remove previous variants +UsePercentageVariations=Use percentage variations +PercentageVariation=Percentage variation +ErrorDeletingGeneratedProducts=There was an error while trying to delete existing product variants +NbOfDifferentValues=No. of different values +NbProducts=Number of products +ParentProduct=Parent product +HideChildProducts=Hide variant products +ShowChildProducts=Show variant products +NoEditVariants=Go to Parent product card and edit variants price impact in the variants tab +ConfirmCloneProductCombinations=Would you like to copy all the product variants to the other parent product with the given reference? +CloneDestinationReference=Destination product reference +ErrorCopyProductCombinations=There was an error while copying the product variants +ErrorDestinationProductNotFound=Destination product not found +ErrorProductCombinationNotFound=Product variant not found +ActionAvailableOnVariantProductOnly=Action only available on the variant of product +ProductsPricePerCustomer=Product prices per customers +ProductSupplierExtraFields=Additional Attributes (Supplier Prices) +DeleteLinkedProduct=Delete the child product linked to the combination diff --git a/htdocs/langs/ne_NP/projects.lang b/htdocs/langs/ne_NP/projects.lang new file mode 100644 index 00000000000..bb42bff3c87 --- /dev/null +++ b/htdocs/langs/ne_NP/projects.lang @@ -0,0 +1,267 @@ +# Dolibarr language file - Source file is en_US - projects +RefProject=Ref. project +ProjectRef=Project ref. +ProjectId=Project Id +ProjectLabel=Project label +ProjectsArea=Projects Area +ProjectStatus=Project status +SharedProject=Everybody +PrivateProject=Project contacts +ProjectsImContactFor=Projects for I am explicitly a contact +AllAllowedProjects=All project I can read (mine + public) +AllProjects=All projects +MyProjectsDesc=This view is limited to projects you are a contact for +ProjectsPublicDesc=This view presents all projects you are allowed to read. +TasksOnProjectsPublicDesc=This view presents all tasks on projects you are allowed to read. +ProjectsPublicTaskDesc=This view presents all projects and tasks you are allowed to read. +ProjectsDesc=This view presents all projects (your user permissions grant you permission to view everything). +TasksOnProjectsDesc=This view presents all tasks on all projects (your user permissions grant you permission to view everything). +MyTasksDesc=This view is limited to projects or tasks you are a contact for +OnlyOpenedProject=Only open projects are visible (projects in draft or closed status are not visible). +ClosedProjectsAreHidden=Closed projects are not visible. +TasksPublicDesc=This view presents all projects and tasks you are allowed to read. +TasksDesc=This view presents all projects and tasks (your user permissions grant you permission to view everything). +AllTaskVisibleButEditIfYouAreAssigned=All tasks for qualified projects are visible, but you can enter time only for task assigned to selected user. Assign task if you need to enter time on it. +OnlyYourTaskAreVisible=Only tasks assigned to you are visible. Assign task to yourself if it is not visible and you need to enter time on it. +ImportDatasetTasks=Tasks of projects +ProjectCategories=Project tags/categories +NewProject=New project +AddProject=Create project +DeleteAProject=Delete a project +DeleteATask=Delete a task +ConfirmDeleteAProject=Are you sure you want to delete this project? +ConfirmDeleteATask=Are you sure you want to delete this task? +OpenedProjects=Open projects +OpenedTasks=Open tasks +OpportunitiesStatusForOpenedProjects=Leads amount of open projects by status +OpportunitiesStatusForProjects=Leads amount of projects by status +ShowProject=Show project +ShowTask=Show task +SetProject=Set project +NoProject=No project defined or owned +NbOfProjects=Number of projects +NbOfTasks=Number of tasks +TimeSpent=Time spent +TimeSpentByYou=Time spent by you +TimeSpentByUser=Time spent by user +TimesSpent=Time spent +TaskId=Task ID +RefTask=Task ref. +LabelTask=Task label +TaskTimeSpent=Time spent on tasks +TaskTimeUser=User +TaskTimeNote=Note +TaskTimeDate=Date +TasksOnOpenedProject=Tasks on open projects +WorkloadNotDefined=Workload not defined +NewTimeSpent=Time spent +MyTimeSpent=My time spent +BillTime=Bill the time spent +BillTimeShort=Bill time +TimeToBill=Time not billed +TimeBilled=Time billed +Tasks=Tasks +Task=Task +TaskDateStart=Task start date +TaskDateEnd=Task end date +TaskDescription=Task description +NewTask=New task +AddTask=Create task +AddTimeSpent=Create time spent +AddHereTimeSpentForDay=Add here time spent for this day/task +AddHereTimeSpentForWeek=Add here time spent for this week/task +Activity=Activity +Activities=Tasks/activities +MyActivities=My tasks/activities +MyProjects=My projects +MyProjectsArea=My projects Area +DurationEffective=Effective duration +ProgressDeclared=Declared progress +TaskProgressSummary=Task progress +CurentlyOpenedTasks=Curently open tasks +TheReportedProgressIsLessThanTheCalculatedProgressionByX=The declared progress is less %s than the calculated progression +TheReportedProgressIsMoreThanTheCalculatedProgressionByX=The declared progress is more %s than the calculated progression +ProgressCalculated=Calculated progress +WhichIamLinkedTo=which I'm linked to +WhichIamLinkedToProject=which I'm linked to project +Time=Time +ListOfTasks=List of tasks +GoToListOfTimeConsumed=Go to list of time consumed +GanttView=Gantt View +ListProposalsAssociatedProject=List of the commercial proposals related to the project +ListOrdersAssociatedProject=List of sales orders related to the project +ListInvoicesAssociatedProject=List of customer invoices related to the project +ListPredefinedInvoicesAssociatedProject=List of customer template invoices related to the project +ListSupplierOrdersAssociatedProject=List of purchase orders related to the project +ListSupplierInvoicesAssociatedProject=List of vendor invoices related to the project +ListContractAssociatedProject=List of contracts related to the project +ListShippingAssociatedProject=List of shippings related to the project +ListFichinterAssociatedProject=List of interventions related to the project +ListExpenseReportsAssociatedProject=List of expense reports related to the project +ListDonationsAssociatedProject=List of donations related to the project +ListVariousPaymentsAssociatedProject=List of miscellaneous payments related to the project +ListSalariesAssociatedProject=List of payments of salaries related to the project +ListActionsAssociatedProject=List of events related to the project +ListMOAssociatedProject=List of manufacturing orders related to the project +ListTaskTimeUserProject=List of time consumed on tasks of project +ListTaskTimeForTask=List of time consumed on task +ActivityOnProjectToday=Activity on project today +ActivityOnProjectYesterday=Activity on project yesterday +ActivityOnProjectThisWeek=Activity on project this week +ActivityOnProjectThisMonth=Activity on project this month +ActivityOnProjectThisYear=Activity on project this year +ChildOfProjectTask=Child of project/task +ChildOfTask=Child of task +TaskHasChild=Task has child +NotOwnerOfProject=Not owner of this private project +AffectedTo=Allocated to +CantRemoveProject=This project can't be removed as it is referenced by some other objects (invoice, orders or other). See referers tab. +ValidateProject=Validate projet +ConfirmValidateProject=Are you sure you want to validate this project? +CloseAProject=Close project +ConfirmCloseAProject=Are you sure you want to close this project? +AlsoCloseAProject=Also close project (keep it open if you still need to follow production tasks on it) +ReOpenAProject=Open project +ConfirmReOpenAProject=Are you sure you want to re-open this project? +ProjectContact=Contacts of project +TaskContact=Task contacts +ActionsOnProject=Events on project +YouAreNotContactOfProject=You are not a contact of this private project +UserIsNotContactOfProject=User is not a contact of this private project +DeleteATimeSpent=Delete time spent +ConfirmDeleteATimeSpent=Are you sure you want to delete this time spent? +DoNotShowMyTasksOnly=See also tasks not assigned to me +ShowMyTasksOnly=View only tasks assigned to me +TaskRessourceLinks=Contacts of task +ProjectsDedicatedToThisThirdParty=Projects dedicated to this third party +NoTasks=No tasks for this project +LinkedToAnotherCompany=Linked to other third party +TaskIsNotAssignedToUser=Task not assigned to user. Use button '%s' to assign task now. +ErrorTimeSpentIsEmpty=Time spent is empty +ThisWillAlsoRemoveTasks=This action will also delete all tasks of project (%s tasks at the moment) and all inputs of time spent. +IfNeedToUseOtherObjectKeepEmpty=If some objects (invoice, order, ...), belonging to another third party, must be linked to the project to create, keep this empty to have the project being multi third parties. +CloneTasks=Clone tasks +CloneContacts=Clone contacts +CloneNotes=Clone notes +CloneProjectFiles=Clone project joined files +CloneTaskFiles=Clone task(s) joined files (if task(s) cloned) +CloneMoveDate=Update project/tasks dates from now? +ConfirmCloneProject=Are you sure to clone this project? +ProjectReportDate=Change task dates according to new project start date +ErrorShiftTaskDate=Impossible to shift task date according to new project start date +ProjectsAndTasksLines=Projects and tasks +ProjectCreatedInDolibarr=Project %s created +ProjectValidatedInDolibarr=Project %s validated +ProjectModifiedInDolibarr=Project %s modified +TaskCreatedInDolibarr=Task %s created +TaskModifiedInDolibarr=Task %s modified +TaskDeletedInDolibarr=Task %s deleted +OpportunityStatus=Lead status +OpportunityStatusShort=Lead status +OpportunityProbability=Lead probability +OpportunityProbabilityShort=Lead probab. +OpportunityAmount=Lead amount +OpportunityAmountShort=Lead amount +OpportunityWeightedAmount=Opportunity weighted amount +OpportunityWeightedAmountShort=Opp. weighted amount +OpportunityAmountAverageShort=Average lead amount +OpportunityAmountWeigthedShort=Weighted lead amount +WonLostExcluded=Won/Lost excluded +##### Types de contacts ##### +TypeContact_project_internal_PROJECTLEADER=Project leader +TypeContact_project_external_PROJECTLEADER=Project leader +TypeContact_project_internal_PROJECTCONTRIBUTOR=Contributor +TypeContact_project_external_PROJECTCONTRIBUTOR=Contributor +TypeContact_project_task_internal_TASKEXECUTIVE=Task executive +TypeContact_project_task_external_TASKEXECUTIVE=Task executive +TypeContact_project_task_internal_TASKCONTRIBUTOR=Contributor +TypeContact_project_task_external_TASKCONTRIBUTOR=Contributor +SelectElement=Select element +AddElement=Link to element +# Documents models +DocumentModelBeluga=Project document template for linked objects overview +DocumentModelBaleine=Project document template for tasks +DocumentModelTimeSpent=Project report template for time spent +PlannedWorkload=Planned workload +PlannedWorkloadShort=Workload +ProjectReferers=Related items +ProjectMustBeValidatedFirst=Project must be validated first +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time +InputPerDay=Input per day +InputPerWeek=Input per week +InputPerMonth=Input per month +InputDetail=Input detail +TimeAlreadyRecorded=This is time spent already recorded for this task/day and user %s +ProjectsWithThisUserAsContact=Projects with this user as contact +TasksWithThisUserAsContact=Tasks assigned to this user +ResourceNotAssignedToProject=Not assigned to project +ResourceNotAssignedToTheTask=Not assigned to the task +NoUserAssignedToTheProject=No users assigned to this project +TimeSpentBy=Time spent by +TasksAssignedTo=Tasks assigned to +AssignTaskToMe=Assign task to me +AssignTaskToUser=Assign task to %s +SelectTaskToAssign=Select task to assign... +AssignTask=Assign +ProjectOverview=Overview +ManageTasks=Use projects to follow tasks and/or report time spent (timesheets) +ManageOpportunitiesStatus=Use projects to follow leads/opportinuties +ProjectNbProjectByMonth=No. of created projects by month +ProjectNbTaskByMonth=No. of created tasks by month +ProjectOppAmountOfProjectsByMonth=Amount of leads by month +ProjectWeightedOppAmountOfProjectsByMonth=Weighted amount of leads by month +ProjectOpenedProjectByOppStatus=Open project/lead by lead status +ProjectsStatistics=Statistics on projects/leads +TasksStatistics=Statistics on project/lead tasks +TaskAssignedToEnterTime=Task assigned. Entering time on this task should be possible. +IdTaskTime=Id task time +YouCanCompleteRef=If you want to complete the ref with some suffix, it is recommanded to add a - character to separate it, so the automatic numbering will still work correctly for next projects. For example %s-MYSUFFIX +OpenedProjectsByThirdparties=Open projects by third parties +OnlyOpportunitiesShort=Only leads +OpenedOpportunitiesShort=Open leads +NotOpenedOpportunitiesShort=Not an open lead +NotAnOpportunityShort=Not a lead +OpportunityTotalAmount=Total amount of leads +OpportunityPonderatedAmount=Weighted amount of leads +OpportunityPonderatedAmountDesc=Leads amount weighted with probability +OppStatusPROSP=Prospection +OppStatusQUAL=Qualification +OppStatusPROPO=Proposal +OppStatusNEGO=Negociation +OppStatusPENDING=Pending +OppStatusWON=Won +OppStatusLOST=Lost +Budget=Budget +AllowToLinkFromOtherCompany=Allow to link project from other company

    Supported values:
    - Keep empty: Can link any project of the company (default)
    - "all": Can link any projects, even projects of other companies
    - A list of third-party ids separated by commas: can link all projects of these third partys (Example: 123,4795,53)
    +LatestProjects=Latest %s projects +LatestModifiedProjects=Latest %s modified projects +OtherFilteredTasks=Other filtered tasks +NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) +ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you +# Comments trans +AllowCommentOnTask=Allow user comments on tasks +AllowCommentOnProject=Allow user comments on projects +DontHavePermissionForCloseProject=You do not have permissions to close the project %s +DontHaveTheValidateStatus=The project %s must be open to be closed +RecordsClosed=%s project(s) closed +SendProjectRef=Information project %s +ModuleSalaryToDefineHourlyRateMustBeEnabled=Module 'Salaries' must be enabled to define employee hourly rate to have time spent valorized +NewTaskRefSuggested=Task ref already used, a new task ref is required +TimeSpentInvoiced=Time spent billed +TimeSpentForInvoice=Time spent +OneLinePerUser=One line per user +ServiceToUseOnLines=Service to use on lines +InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project +ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. +ProjectFollowOpportunity=Follow opportunity +ProjectFollowTasks=Follow tasks or time spent +Usage=Usage +UsageOpportunity=Usage: Opportunity +UsageTasks=Usage: Tasks +UsageBillTimeShort=Usage: Bill time +InvoiceToUse=Draft invoice to use +NewInvoice=New invoice +OneLinePerTask=One line per task +OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/ne_NP/propal.lang b/htdocs/langs/ne_NP/propal.lang new file mode 100644 index 00000000000..71d6857c909 --- /dev/null +++ b/htdocs/langs/ne_NP/propal.lang @@ -0,0 +1,86 @@ +# Dolibarr language file - Source file is en_US - propal +Proposals=Commercial proposals +Proposal=Commercial proposal +ProposalShort=Proposal +ProposalsDraft=Draft commercial proposals +ProposalsOpened=Open commercial proposals +CommercialProposal=Commercial proposal +PdfCommercialProposalTitle=Commercial proposal +ProposalCard=Proposal card +NewProp=New commercial proposal +NewPropal=New proposal +Prospect=Prospect +DeleteProp=Delete commercial proposal +ValidateProp=Validate commercial proposal +AddProp=Create proposal +ConfirmDeleteProp=Are you sure you want to delete this commercial proposal? +ConfirmValidateProp=Are you sure you want to validate this commercial proposal under name %s? +LastPropals=Latest %s proposals +LastModifiedProposals=Latest %s modified proposals +AllPropals=All proposals +SearchAProposal=Search a proposal +NoProposal=No proposal +ProposalsStatistics=Commercial proposal's statistics +NumberOfProposalsByMonth=Number by month +AmountOfProposalsByMonthHT=Amount by month (excl. tax) +NbOfProposals=Number of commercial proposals +ShowPropal=Show proposal +PropalsDraft=Drafts +PropalsOpened=Open +PropalStatusDraft=Draft (needs to be validated) +PropalStatusValidated=Validated (proposal is open) +PropalStatusSigned=Signed (needs billing) +PropalStatusNotSigned=Not signed (closed) +PropalStatusBilled=Billed +PropalStatusDraftShort=Draft +PropalStatusValidatedShort=Validated (open) +PropalStatusClosedShort=Closed +PropalStatusSignedShort=Signed +PropalStatusNotSignedShort=Not signed +PropalStatusBilledShort=Billed +PropalsToClose=Commercial proposals to close +PropalsToBill=Signed commercial proposals to bill +ListOfProposals=List of commercial proposals +ActionsOnPropal=Events on proposal +RefProposal=Commercial proposal ref +SendPropalByMail=Send commercial proposal by mail +DatePropal=Date of proposal +DateEndPropal=Validity ending date +ValidityDuration=Validity duration +CloseAs=Set status to +SetAcceptedRefused=Set accepted/refused +ErrorPropalNotFound=Propal %s not found +AddToDraftProposals=Add to draft proposal +NoDraftProposals=No draft proposals +CopyPropalFrom=Create commercial proposal by copying existing proposal +CreateEmptyPropal=Create empty commercial proposal or from list of products/services +DefaultProposalDurationValidity=Default commercial proposal validity duration (in days) +UseCustomerContactAsPropalRecipientIfExist=Use contact/address with type 'Contact following-up proposal' if defined instead of third party address as proposal recipient address +ConfirmClonePropal=Are you sure you want to clone the commercial proposal %s? +ConfirmReOpenProp=Are you sure you want to open back the commercial proposal %s? +ProposalsAndProposalsLines=Commercial proposal and lines +ProposalLine=Proposal line +AvailabilityPeriod=Availability delay +SetAvailability=Set availability delay +AfterOrder=after order +OtherProposals=Other proposals +##### Availability ##### +AvailabilityTypeAV_NOW=Immediate +AvailabilityTypeAV_1W=1 week +AvailabilityTypeAV_2W=2 weeks +AvailabilityTypeAV_3W=3 weeks +AvailabilityTypeAV_1M=1 month +##### Types de contacts ##### +TypeContact_propal_internal_SALESREPFOLL=Representative following-up proposal +TypeContact_propal_external_BILLING=Customer invoice contact +TypeContact_propal_external_CUSTOMER=Customer contact following-up proposal +TypeContact_propal_external_SHIPPING=Customer contact for delivery +# Document models +DocModelAzurDescription=A complete proposal model (old implementation of Cyan template) +DocModelCyanDescription=A complete proposal model +DefaultModelPropalCreate=Default model creation +DefaultModelPropalToBill=Default template when closing a business proposal (to be invoiced) +DefaultModelPropalClosed=Default template when closing a business proposal (unbilled) +ProposalCustomerSignature=Written acceptance, company stamp, date and signature +ProposalsStatisticsSuppliers=Vendor proposals statistics +CaseFollowedBy=Case followed by diff --git a/htdocs/langs/ne_NP/receiptprinter.lang b/htdocs/langs/ne_NP/receiptprinter.lang new file mode 100644 index 00000000000..896eaa313dd --- /dev/null +++ b/htdocs/langs/ne_NP/receiptprinter.lang @@ -0,0 +1,95 @@ +# Dolibarr language file - Source file is en_US - receiptprinter +ReceiptPrinterSetup=Setup of module ReceiptPrinter +PrinterAdded=Printer %s added +PrinterUpdated=Printer %s updated +PrinterDeleted=Printer %s deleted +TestSentToPrinter=Test Sent To Printer %s +ReceiptPrinter=Receipt printers +ReceiptPrinterDesc=Setup of receipt printers +ReceiptPrinterTemplateDesc=Setup of Templates +ReceiptPrinterTypeDesc=Description of Receipt Printer's type +ReceiptPrinterProfileDesc=Description of Receipt Printer's Profile +ListPrinters=List of Printers +SetupReceiptTemplate=Template Setup +CONNECTOR_DUMMY=Dummy Printer +CONNECTOR_NETWORK_PRINT=Network Printer +CONNECTOR_FILE_PRINT=Local Printer +CONNECTOR_WINDOWS_PRINT=Local Windows Printer +CONNECTOR_CUPS_PRINT=Cups Printer +CONNECTOR_DUMMY_HELP=Fake Printer for test, does nothing +CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 +CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 +CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L +PROFILE_DEFAULT=Default Profile +PROFILE_SIMPLE=Simple Profile +PROFILE_EPOSTEP=Epos Tep Profile +PROFILE_P822D=P822D Profile +PROFILE_STAR=Star Profile +PROFILE_DEFAULT_HELP=Default Profile suitable for Epson printers +PROFILE_SIMPLE_HELP=Simple Profile No Graphics +PROFILE_EPOSTEP_HELP=Epos Tep Profile +PROFILE_P822D_HELP=P822D Profile No Graphics +PROFILE_STAR_HELP=Star Profile +DOL_LINE_FEED=Skip line +DOL_ALIGN_LEFT=Left align text +DOL_ALIGN_CENTER=Center text +DOL_ALIGN_RIGHT=Right align text +DOL_USE_FONT_A=Use font A of printer +DOL_USE_FONT_B=Use font B of printer +DOL_USE_FONT_C=Use font C of printer +DOL_PRINT_BARCODE=Print barcode +DOL_PRINT_BARCODE_CUSTOMER_ID=Print barcode customer id +DOL_CUT_PAPER_FULL=Cut ticket completely +DOL_CUT_PAPER_PARTIAL=Cut ticket partially +DOL_OPEN_DRAWER=Open cash drawer +DOL_ACTIVATE_BUZZER=Activate buzzer +DOL_PRINT_QRCODE=Print QR Code +DOL_PRINT_LOGO=Print logo of my company +DOL_PRINT_LOGO_OLD=Print logo of my company (old printers) +DOL_BOLD=Bold +DOL_BOLD_DISABLED=Disable bold +DOL_DOUBLE_HEIGHT=Double height size +DOL_DOUBLE_WIDTH=Double width size +DOL_DEFAULT_HEIGHT_WIDTH=Default height and width size +DOL_UNDERLINE=Enable underline +DOL_UNDERLINE_DISABLED=Disable underline +DOL_BEEP=Beed sound +DOL_PRINT_TEXT=Print text +DOL_VALUE_DATE=Invoice date +DOL_VALUE_DATE_TIME=Invoice date and time +DOL_VALUE_YEAR=Invoice year +DOL_VALUE_MONTH_LETTERS=Invoice month in letters +DOL_VALUE_MONTH=Invoice month +DOL_VALUE_DAY=Invoice day +DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Invoice ref +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=Capital +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/ne_NP/receptions.lang b/htdocs/langs/ne_NP/receptions.lang new file mode 100644 index 00000000000..010a7521846 --- /dev/null +++ b/htdocs/langs/ne_NP/receptions.lang @@ -0,0 +1,45 @@ +# Dolibarr language file - Source file is en_US - receptions +ReceptionsSetup=Product Reception setup +RefReception=Ref. reception +Reception=Reception +Receptions=Receptions +AllReceptions=All Receptions +Reception=Reception +Receptions=Receptions +ShowReception=Show Receptions +ReceptionsArea=Receptions area +ListOfReceptions=List of receptions +ReceptionMethod=Reception method +LastReceptions=Latest %s receptions +StatisticsOfReceptions=Statistics for receptions +NbOfReceptions=Number of receptions +NumberOfReceptionsByMonth=Number of receptions by month +ReceptionCard=Reception card +NewReception=New reception +CreateReception=Create reception +QtyInOtherReceptions=Qty in other receptions +OtherReceptionsForSameOrder=Other receptions for this order +ReceptionsAndReceivingForSameOrder=Receptions and receipts for this order +ReceptionsToValidate=Receptions to validate +StatusReceptionCanceled=Canceled +StatusReceptionDraft=Draft +StatusReceptionValidated=Validated (products to ship or already shipped) +StatusReceptionProcessed=Processed +StatusReceptionDraftShort=Draft +StatusReceptionValidatedShort=Validated +StatusReceptionProcessedShort=Processed +ReceptionSheet=Reception sheet +ConfirmDeleteReception=Are you sure you want to delete this reception? +ConfirmValidateReception=Are you sure you want to validate this reception with reference %s? +ConfirmCancelReception=Are you sure you want to cancel this reception? +StatsOnReceptionsOnlyValidated=Statistics conducted on receptions only validated. Date used is date of validation of reception (planed delivery date is not always known). +SendReceptionByEMail=Send reception by email +SendReceptionRef=Submission of reception %s +ActionsOnReception=Events on reception +ReceptionCreationIsDoneFromOrder=For the moment, creation of a new reception is done from the order card. +ReceptionLine=Reception line +ProductQtyInReceptionAlreadySent=Product quantity from open sales order already sent +ProductQtyInSuppliersReceptionAlreadyRecevied=Product quantity from open supplier order already received +ValidateOrderFirstBeforeReception=You must first validate the order before being able to make receptions. +ReceptionsNumberingModules=Numbering module for receptions +ReceptionsReceiptModel=Document templates for receptions diff --git a/htdocs/langs/ne_NP/resource.lang b/htdocs/langs/ne_NP/resource.lang new file mode 100644 index 00000000000..e8574dc680f --- /dev/null +++ b/htdocs/langs/ne_NP/resource.lang @@ -0,0 +1,39 @@ +# Dolibarr language file - Source file is en_US - resource +MenuResourceIndex=Resources +MenuResourceAdd=New resource +DeleteResource=Delete resource +ConfirmDeleteResourceElement=Confirm delete the resource for this element +NoResourceInDatabase=No resource in database. +NoResourceLinked=No resource linked +ActionsOnResource=Events about this resource +ResourcePageIndex=Resources list +ResourceSingular=Resource +ResourceCard=Resource card +AddResource=Create a resource +ResourceFormLabel_ref=Resource name +ResourceType=Resource type +ResourceFormLabel_description=Resource description + +ResourcesLinkedToElement=Resources linked to element + +ShowResource=Show resource + +ResourceElementPage=Element resources +ResourceCreatedWithSuccess=Resource successfully created +RessourceLineSuccessfullyDeleted=Resource line successfully deleted +RessourceLineSuccessfullyUpdated=Resource line successfully updated +ResourceLinkedWithSuccess=Resource linked with success + +ConfirmDeleteResource=Confirm to delete this resource +RessourceSuccessfullyDeleted=Resource successfully deleted +DictionaryResourceType=Type of resources + +SelectResource=Select resource + +IdResource=Id resource +AssetNumber=Serial number +ResourceTypeCode=Resource type code +ImportDataset_resource_1=Resources + +ErrorResourcesAlreadyInUse=Some resources are in use +ErrorResourceUseInEvent=%s used in %s event diff --git a/htdocs/langs/ne_NP/salaries.lang b/htdocs/langs/ne_NP/salaries.lang new file mode 100644 index 00000000000..7c3c08a65bd --- /dev/null +++ b/htdocs/langs/ne_NP/salaries.lang @@ -0,0 +1,21 @@ +# Dolibarr language file - Source file is en_US - salaries +SALARIES_ACCOUNTING_ACCOUNT_PAYMENT=Accounting account used for user third parties +SALARIES_ACCOUNTING_ACCOUNT_PAYMENT_Desc=The dedicated accounting account defined on user card will be used for Subledger accounting only. This one will be used for General Ledger and as default value of Subledger accounting if dedicated user accounting account on user is not defined. +SALARIES_ACCOUNTING_ACCOUNT_CHARGE=Accounting account by default for wage payments +Salary=Salary +Salaries=Salaries +NewSalaryPayment=New salary payment +AddSalaryPayment=Add salary payment +SalaryPayment=Salary payment +SalariesPayments=Salaries payments +ShowSalaryPayment=Show salary payment +THM=Average hourly rate +TJM=Average daily rate +CurrentSalary=Current salary +THMDescription=This value may be used to calculate the cost of time consumed on a project entered by users if module project is used +TJMDescription=This value is currently for information only and is not used for any calculation +LastSalaries=Latest %s salary payments +AllSalaries=All salary payments +SalariesStatistics=Salary statistics +# Export +SalariesAndPayments=Salaries and payments diff --git a/htdocs/langs/ne_NP/sendings.lang b/htdocs/langs/ne_NP/sendings.lang new file mode 100644 index 00000000000..5ce3b7f67e9 --- /dev/null +++ b/htdocs/langs/ne_NP/sendings.lang @@ -0,0 +1,74 @@ +# Dolibarr language file - Source file is en_US - sendings +RefSending=Ref. shipment +Sending=Shipment +Sendings=Shipments +AllSendings=All Shipments +Shipment=Shipment +Shipments=Shipments +ShowSending=Show Shipments +Receivings=Delivery Receipts +SendingsArea=Shipments area +ListOfSendings=List of shipments +SendingMethod=Shipping method +LastSendings=Latest %s shipments +StatisticsOfSendings=Statistics for shipments +NbOfSendings=Number of shipments +NumberOfShipmentsByMonth=Number of shipments by month +SendingCard=Shipment card +NewSending=New shipment +CreateShipment=Create shipment +QtyShipped=Qty shipped +QtyShippedShort=Qty ship. +QtyPreparedOrShipped=Qty prepared or shipped +QtyToShip=Qty to ship +QtyToReceive=Qty to receive +QtyReceived=Qty received +QtyInOtherShipments=Qty in other shipments +KeepToShip=Remain to ship +KeepToShipShort=Remain +OtherSendingsForSameOrder=Other shipments for this order +SendingsAndReceivingForSameOrder=Shipments and receipts for this order +SendingsToValidate=Shipments to validate +StatusSendingCanceled=Canceled +StatusSendingDraft=Draft +StatusSendingValidated=Validated (products to ship or already shipped) +StatusSendingProcessed=Processed +StatusSendingDraftShort=Draft +StatusSendingValidatedShort=Validated +StatusSendingProcessedShort=Processed +SendingSheet=Shipment sheet +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=Warning, no products waiting to be shipped. +StatsOnShipmentsOnlyValidated=Statistics conducted on shipments only validated. Date used is date of validation of shipment (planed delivery date is not always known). +DateDeliveryPlanned=Planned date of delivery +RefDeliveryReceipt=Ref delivery receipt +StatusReceipt=Status delivery receipt +DateReceived=Date delivery received +ClassifyReception=Classify reception +SendShippingByEMail=Send shipment by email +SendShippingRef=Submission of shipment %s +ActionsOnShipping=Events on shipment +LinkToTrackYourPackage=Link to track your package +ShipmentCreationIsDoneFromOrder=For the moment, creation of a new shipment is done from the order card. +ShipmentLine=Shipment line +ProductQtyInCustomersOrdersRunning=Product quantity from open sales orders +ProductQtyInSuppliersOrdersRunning=Product quantity from open purchase orders +ProductQtyInShipmentAlreadySent=Product quantity from open sales order already sent +ProductQtyInSuppliersShipmentAlreadyRecevied=Product quantity from open purchase orders already received +NoProductToShipFoundIntoStock=No product to ship found in warehouse %s. Correct stock or go back to choose another warehouse. +WeightVolShort=Weight/Vol. +ValidateOrderFirstBeforeShipment=You must first validate the order before being able to make shipments. + +# Sending methods +# ModelDocument +DocumentModelTyphon=More complete document model for delivery receipts (logo...) +Error_EXPEDITION_ADDON_NUMBER_NotDefined=Constant EXPEDITION_ADDON_NUMBER not defined +SumOfProductVolumes=Sum of product volumes +SumOfProductWeights=Sum of product weights + +# warehouse details +DetailWarehouseNumber= Warehouse details +DetailWarehouseFormat= W:%s (Qty: %d) diff --git a/htdocs/langs/ne_NP/sms.lang b/htdocs/langs/ne_NP/sms.lang new file mode 100644 index 00000000000..055085eb16a --- /dev/null +++ b/htdocs/langs/ne_NP/sms.lang @@ -0,0 +1,51 @@ +# Dolibarr language file - Source file is en_US - sms +Sms=Sms +SmsSetup=SMS setup +SmsDesc=This page allows you to define global options on SMS features +SmsCard=SMS Card +AllSms=All SMS campaigns +SmsTargets=Targets +SmsRecipients=Targets +SmsRecipient=Target +SmsTitle=Description +SmsFrom=Sender +SmsTo=Target +SmsTopic=Topic of SMS +SmsText=Message +SmsMessage=SMS Message +ShowSms=Show SMS +ListOfSms=List SMS campaigns +NewSms=New SMS campaign +EditSms=Edit SMS +ResetSms=New sending +DeleteSms=Delete SMS campaign +DeleteASms=Remove a SMS campaign +PreviewSms=Previuw SMS +PrepareSms=Prepare SMS +CreateSms=Create SMS +SmsResult=Result of SMS sending +TestSms=Test SMS +ValidSms=Validate SMS +ApproveSms=Approve SMS +SmsStatusDraft=Draft +SmsStatusValidated=Validated +SmsStatusApproved=Approved +SmsStatusSent=Sent +SmsStatusSentPartialy=Sent partially +SmsStatusSentCompletely=Sent completely +SmsStatusError=Error +SmsStatusNotSent=Not sent +SmsSuccessfulySent=SMS correctly sent (from %s to %s) +ErrorSmsRecipientIsEmpty=Number of target is empty +WarningNoSmsAdded=No new phone number to add to target list +ConfirmValidSms=Do you confirm validation of this campaign? +NbOfUniqueSms=No. of unique phone numbers +NbOfSms=No. of phone numbers +ThisIsATestMessage=This is a test message +SendSms=Send SMS +SmsInfoCharRemain=No. of remaining characters +SmsInfoNumero= (international format i.e.: +33899701761) +DelayBeforeSending=Delay before sending (minutes) +SmsNoPossibleSenderFound=No sender available. Check setup of your SMS provider. +SmsNoPossibleRecipientFound=No target available. Check setup of your SMS provider. +DisableStopIfSupported=Disable STOP message (if supported) diff --git a/htdocs/langs/ne_NP/stocks.lang b/htdocs/langs/ne_NP/stocks.lang new file mode 100644 index 00000000000..9856649b834 --- /dev/null +++ b/htdocs/langs/ne_NP/stocks.lang @@ -0,0 +1,220 @@ +# Dolibarr language file - Source file is en_US - stocks +WarehouseCard=Warehouse card +Warehouse=Warehouse +Warehouses=Warehouses +ParentWarehouse=Parent warehouse +NewWarehouse=New warehouse / Stock Location +WarehouseEdit=Modify warehouse +MenuNewWarehouse=New warehouse +WarehouseSource=Source warehouse +WarehouseSourceNotDefined=No warehouse defined, +AddWarehouse=Create warehouse +AddOne=Add one +DefaultWarehouse=Default warehouse +WarehouseTarget=Target warehouse +ValidateSending=Delete sending +CancelSending=Cancel sending +DeleteSending=Delete sending +Stock=Stock +Stocks=Stocks +StocksByLotSerial=Stocks by lot/serial +LotSerial=Lots/Serials +LotSerialList=List of lot/serials +Movements=Movements +ErrorWarehouseRefRequired=Warehouse reference name is required +ListOfWarehouses=List of warehouses +ListOfStockMovements=List of stock movements +ListOfInventories=List of inventories +MovementId=Movement ID +StockMovementForId=Movement ID %d +ListMouvementStockProject=List of stock movements associated to project +StocksArea=Warehouses area +AllWarehouses=All warehouses +IncludeAlsoDraftOrders=Include also draft orders +Location=Location +LocationSummary=Short name location +NumberOfDifferentProducts=Number of different products +NumberOfProducts=Total number of products +LastMovement=Latest movement +LastMovements=Latest movements +Units=Units +Unit=Unit +StockCorrection=Stock correction +CorrectStock=Correct stock +StockTransfer=Stock transfer +TransferStock=Transfer stock +MassStockTransferShort=Mass stock transfer +StockMovement=Stock movement +StockMovements=Stock movements +NumberOfUnit=Number of units +UnitPurchaseValue=Unit purchase price +StockTooLow=Stock too low +StockLowerThanLimit=Stock lower than alert limit (%s) +EnhancedValue=Value +PMPValue=Weighted average price +PMPValueShort=WAP +EnhancedValueOfWarehouses=Warehouses value +UserWarehouseAutoCreate=Create a user warehouse automatically when creating a user +AllowAddLimitStockByWarehouse=Manage also value for minimum and desired stock per pairing (product-warehouse) in addition to the value for minimum and desired stock per product +IndependantSubProductStock=Product stock and subproduct stock are independent +QtyDispatched=Quantity dispatched +QtyDispatchedShort=Qty dispatched +QtyToDispatchShort=Qty to dispatch +OrderDispatch=Item receipts +RuleForStockManagementDecrease=Choose Rule for automatic stock decrease (manual decrease is always possible, even if an automatic decrease rule is activated) +RuleForStockManagementIncrease=Choose Rule for automatic stock increase (manual increase is always possible, even if an automatic increase rule is activated) +DeStockOnBill=Decrease real stocks on validation of customer invoice/credit note +DeStockOnValidateOrder=Decrease real stocks on validation of sales order +DeStockOnShipment=Decrease real stocks on shipping validation +DeStockOnShipmentOnClosing=Decrease real stocks when shipping is set to closed +ReStockOnBill=Increase real stocks on validation of vendor invoice/credit note +ReStockOnValidateOrder=Increase real stocks on purchase order approval +ReStockOnDispatchOrder=Increase real stocks on manual dispatching into warehouse, after purchase order receipt of goods +StockOnReception=Increase real stocks on validation of reception +StockOnReceptionOnClosing=Increase real stocks when reception is set to closed +OrderStatusNotReadyToDispatch=Order has not yet or no more a status that allows dispatching of products in stock warehouses. +StockDiffPhysicTeoric=Explanation for difference between physical and virtual stock +NoPredefinedProductToDispatch=No predefined products for this object. So no dispatching in stock is required. +DispatchVerb=Dispatch +StockLimitShort=Limit for alert +StockLimit=Stock limit for alert +StockLimitDesc=(empty) means no warning.
    0 can be used for a warning as soon as stock is empty. +PhysicalStock=Physical Stock +RealStock=Real Stock +RealStockDesc=Physical/real stock is the stock currently in the warehouses. +RealStockWillAutomaticallyWhen=The real stock will be modified according to this rule (as defined in the Stock module): +VirtualStock=Virtual stock +VirtualStockDesc=Virtual stock is the calculated stock available once all open/pending actions (that affect stocks) are closed (purchase orders received, sales orders shipped etc.) +IdWarehouse=Id warehouse +DescWareHouse=Description warehouse +LieuWareHouse=Localisation warehouse +WarehousesAndProducts=Warehouses and products +WarehousesAndProductsBatchDetail=Warehouses and products (with detail per lot/serial) +AverageUnitPricePMPShort=Weighted average input price +AverageUnitPricePMP=Weighted average input price +SellPriceMin=Selling Unit Price +EstimatedStockValueSellShort=Value for sell +EstimatedStockValueSell=Value for sell +EstimatedStockValueShort=Input stock value +EstimatedStockValue=Input stock value +DeleteAWarehouse=Delete a warehouse +ConfirmDeleteWarehouse=Are you sure you want to delete the warehouse %s? +PersonalStock=Personal stock %s +ThisWarehouseIsPersonalStock=This warehouse represents personal stock of %s %s +SelectWarehouseForStockDecrease=Choose warehouse to use for stock decrease +SelectWarehouseForStockIncrease=Choose warehouse to use for stock increase +NoStockAction=No stock action +DesiredStock=Desired Stock +DesiredStockDesc=This stock amount will be the value used to fill the stock by replenishment feature. +StockToBuy=To order +Replenishment=Replenishment +ReplenishmentOrders=Replenishment orders +VirtualDiffersFromPhysical=According to increase/decrease stock options, physical stock and virtual stock (physical + current orders) may differ +UseVirtualStockByDefault=Use virtual stock by default, instead of physical stock, for replenishment feature +UseVirtualStock=Use virtual stock +UsePhysicalStock=Use physical stock +CurentSelectionMode=Current selection mode +CurentlyUsingVirtualStock=Virtual stock +CurentlyUsingPhysicalStock=Physical stock +RuleForStockReplenishment=Rule for stocks replenishment +SelectProductWithNotNullQty=Select at least one product with a qty not null and a vendor +AlertOnly= Alerts only +WarehouseForStockDecrease=The warehouse %s will be used for stock decrease +WarehouseForStockIncrease=The warehouse %s will be used for stock increase +ForThisWarehouse=For this warehouse +ReplenishmentStatusDesc=This is a list of all products with a stock lower than desired stock (or lower than alert value if checkbox "alert only" is checked). Using the checkbox, you can create purchase orders to fill the difference. +ReplenishmentOrdersDesc=This is a list of all open purchase orders including predefined products. Only open orders with predefined products, so orders that may affect stocks, are visible here. +Replenishments=Replenishments +NbOfProductBeforePeriod=Quantity of product %s in stock before selected period (< %s) +NbOfProductAfterPeriod=Quantity of product %s in stock after selected period (> %s) +MassMovement=Mass movement +SelectProductInAndOutWareHouse=Select a product, a quantity, a source warehouse and a target warehouse, then click "%s". Once this is done for all required movements, click onto "%s". +RecordMovement=Record transfer +ReceivingForSameOrder=Receipts for this order +StockMovementRecorded=Stock movements recorded +RuleForStockAvailability=Rules on stock requirements +StockMustBeEnoughForInvoice=Stock level must be enough to add product/service to invoice (check is done on current real stock when adding a line into invoice whatever the rule for automatic stock change) +StockMustBeEnoughForOrder=Stock level must be enough to add product/service to order (check is done on current real stock when adding a line into order whatever the rule for automatic stock change) +StockMustBeEnoughForShipment= Stock level must be enough to add product/service to shipment (check is done on current real stock when adding a line into shipment whatever the rule for automatic stock change) +MovementLabel=Label of movement +TypeMovement=Type of movement +DateMovement=Date of movement +InventoryCode=Movement or inventory code +IsInPackage=Contained into package +WarehouseAllowNegativeTransfer=Stock can be negative +qtyToTranferIsNotEnough=You don't have enough stock from your source warehouse and your setup does not allow negative stocks. +qtyToTranferLotIsNotEnough=You don't have enough stock, for this lot number, from your source warehouse and your setup does not allow negative stocks (Qty for product '%s' with lot '%s' is %s in warehouse '%s'). +ShowWarehouse=Show warehouse +MovementCorrectStock=Stock correction for product %s +MovementTransferStock=Stock transfer of product %s into another warehouse +InventoryCodeShort=Inv./Mov. code +NoPendingReceptionOnSupplierOrder=No pending reception due to open purchase order +ThisSerialAlreadyExistWithDifferentDate=This lot/serial number (%s) already exists but with different eatby or sellby date (found %s but you enter %s). +OpenAll=Open for all actions +OpenInternal=Open only for internal actions +UseDispatchStatus=Use a dispatch status (approve/refuse) for product lines on purchase order reception +OptionMULTIPRICESIsOn=Option "several prices per segment" is on. It means a product has several selling price so value for sell can't be calculated +ProductStockWarehouseCreated=Stock limit for alert and desired optimal stock correctly created +ProductStockWarehouseUpdated=Stock limit for alert and desired optimal stock correctly updated +ProductStockWarehouseDeleted=Stock limit for alert and desired optimal stock correctly deleted +AddNewProductStockWarehouse=Set new limit for alert and desired optimal stock +AddStockLocationLine=Decrease quantity then click to add another warehouse for this product +InventoryDate=Inventory date +NewInventory=New inventory +inventorySetup = Inventory Setup +inventoryCreatePermission=Create new inventory +inventoryReadPermission=View inventories +inventoryWritePermission=Update inventories +inventoryValidatePermission=Validate inventory +inventoryTitle=Inventory +inventoryListTitle=Inventories +inventoryListEmpty=No inventory in progress +inventoryCreateDelete=Create/Delete inventory +inventoryCreate=Create new +inventoryEdit=Edit +inventoryValidate=Validated +inventoryDraft=Running +inventorySelectWarehouse=Warehouse choice +inventoryConfirmCreate=Create +inventoryOfWarehouse=Inventory for warehouse: %s +inventoryErrorQtyAdd=Error: one quantity is less than zero +inventoryMvtStock=By inventory +inventoryWarningProductAlreadyExists=This product is already into list +SelectCategory=Category filter +SelectFournisseur=Vendor filter +inventoryOnDate=Inventory +INVENTORY_DISABLE_VIRTUAL=Virtual product (kit): do not decrement stock of a child product +INVENTORY_USE_MIN_PA_IF_NO_LAST_PA=Use the buy price if no last buy price can be found +INVENTORY_USE_INVENTORY_DATE_FOR_DATE_OF_MVT=Stock movements will have the date of inventory (instead of the date of inventory validation) +inventoryChangePMPPermission=Allow to change PMP value for a product +ColumnNewPMP=New unit PMP +OnlyProdsInStock=Do not add product without stock +TheoricalQty=Theorique qty +TheoricalValue=Theorique qty +LastPA=Last BP +CurrentPA=Curent BP +RecordedQty=Recorded Qty +RealQty=Real Qty +RealValue=Real Value +RegulatedQty=Regulated Qty +AddInventoryProduct=Add product to inventory +AddProduct=Add +ApplyPMP=Apply PMP +FlushInventory=Flush inventory +ConfirmFlushInventory=Do you confirm this action? +InventoryFlushed=Inventory flushed +ExitEditMode=Exit edition +inventoryDeleteLine=Delete line +RegulateStock=Regulate Stock +ListInventory=List +StockSupportServices=Stock management supports Services +StockSupportServicesDesc=By default, you can stock only products of type "product". You may also stock a product of type "service" if both module Services and this option are enabled. +ReceiveProducts=Receive items +StockIncreaseAfterCorrectTransfer=Increase by correction/transfer +StockDecreaseAfterCorrectTransfer=Decrease by correction/transfer +StockIncrease=Stock increase +StockDecrease=Stock decrease +InventoryForASpecificWarehouse=Inventory for a specific warehouse +InventoryForASpecificProduct=Inventory for a specific product +StockIsRequiredToChooseWhichLotToUse=Stock is required to choose which lot to use +ForceTo=Force to diff --git a/htdocs/langs/ne_NP/stripe.lang b/htdocs/langs/ne_NP/stripe.lang new file mode 100644 index 00000000000..844762040af --- /dev/null +++ b/htdocs/langs/ne_NP/stripe.lang @@ -0,0 +1,72 @@ +# Dolibarr language file - Source file is en_US - stripe +StripeSetup=Stripe module setup +StripeDesc=Offer customers a Stripe online payment page for payments with credit/cebit cards via Stripe. This can be used to allow your customers to make ad-hoc payments or for payments related to a particular Dolibarr object (invoice, order, ...) +StripeOrCBDoPayment=Pay with credit card or Stripe +FollowingUrlAreAvailableToMakePayments=Following URLs are available to offer a page to a customer to make a payment on Dolibarr objects +PaymentForm=Payment form +WelcomeOnPaymentPage=Welcome to our online payment service +ThisScreenAllowsYouToPay=This screen allow you to make an online payment to %s. +ThisIsInformationOnPayment=This is information on payment to do +ToComplete=To complete +YourEMail=Email to receive payment confirmation +STRIPE_PAYONLINE_SENDEMAIL=Email notification after a payment attempt (success or fail) +Creditor=Creditor +PaymentCode=Payment code +StripeDoPayment=Pay with Stripe +YouWillBeRedirectedOnStripe=You will be redirected on secured Stripe page to input you credit card information +Continue=Next +ToOfferALinkForOnlinePayment=URL for %s payment +ToOfferALinkForOnlinePaymentOnOrder=URL to offer a %s online payment page for a sales order +ToOfferALinkForOnlinePaymentOnInvoice=URL to offer a %s online payment page for a customer invoice +ToOfferALinkForOnlinePaymentOnContractLine=URL to offer a %s online payment page for a contract line +ToOfferALinkForOnlinePaymentOnFreeAmount=URL to offer a %s online payment page of any amount with no existing object +ToOfferALinkForOnlinePaymentOnMemberSubscription=URL to offer a %s online payment page for a member subscription +ToOfferALinkForOnlinePaymentOnDonation=URL to offer a %s online payment page for payment of a donation +YouCanAddTagOnUrl=You can also add url parameter &tag=value to any of those URL (mandatory only for payment not linked to an object) to add your own payment comment tag.
    For the URL of payments with no existing object, you may also add the parameter &noidempotency=1 so the same link with same tag can be used several times (some payment mode may limit the payment to 1 for each different link without this parameter) +SetupStripeToHavePaymentCreatedAutomatically=Setup your Stripe with url %s to have payment created automatically when validated by Stripe. +AccountParameter=Account parameters +UsageParameter=Usage parameters +InformationToFindParameters=Help to find your %s account information +STRIPE_CGI_URL_V2=Url of Stripe CGI module for payment +VendorName=Name of vendor +CSSUrlForPaymentForm=CSS style sheet url for payment form +NewStripePaymentReceived=New Stripe payment received +NewStripePaymentFailed=New Stripe payment tried but failed +FailedToChargeCard=Failed to charge card +STRIPE_TEST_SECRET_KEY=Secret test key +STRIPE_TEST_PUBLISHABLE_KEY=Publishable test key +STRIPE_TEST_WEBHOOK_KEY=Webhook test key +STRIPE_LIVE_SECRET_KEY=Secret live key +STRIPE_LIVE_PUBLISHABLE_KEY=Publishable live key +STRIPE_LIVE_WEBHOOK_KEY=Webhook live key +ONLINE_PAYMENT_WAREHOUSE=Stock to use for stock decrease when online payment is done
    (TODO When option to decrease stock is done on an action on invoice and the online payment generate itself the invoice ?) +StripeLiveEnabled=Stripe live enabled (otherwise test/sandbox mode) +StripeImportPayment=Import Stripe payments +ExampleOfTestCreditCard=Example of credit card for test: %s => valid, %s => error CVC, %s => expired, %s => charge fails +StripeGateways=Stripe gateways +OAUTH_STRIPE_TEST_ID=Stripe Connect Client ID (ca_...) +OAUTH_STRIPE_LIVE_ID=Stripe Connect Client ID (ca_...) +BankAccountForBankTransfer=Bank account for fund payouts +StripeAccount=Stripe account +StripeChargeList=List of Stripe charges +StripeTransactionList=List of Stripe transactions +StripeCustomerId=Stripe customer id +StripePaymentModes=Stripe payment modes +LocalID=Local ID +StripeID=Stripe ID +NameOnCard=Name on card +CardNumber=Card Number +ExpiryDate=Expiry Date +CVN=CVN +DeleteACard=Delete Card +ConfirmDeleteCard=Are you sure you want to delete this Credit or Debit card? +CreateCustomerOnStripe=Create customer on Stripe +CreateCardOnStripe=Create card on Stripe +ShowInStripe=Show in Stripe +StripeUserAccountForActions=User account to use for email notification of some Stripe events (Stripe payouts) +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... +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/ne_NP/supplier_proposal.lang b/htdocs/langs/ne_NP/supplier_proposal.lang new file mode 100644 index 00000000000..ce5bdf0425a --- /dev/null +++ b/htdocs/langs/ne_NP/supplier_proposal.lang @@ -0,0 +1,54 @@ +# Dolibarr language file - Source file is en_US - supplier_proposal +SupplierProposal=Vendor commercial proposals +supplier_proposalDESC=Manage price requests to suppliers +SupplierProposalNew=New price request +CommRequest=Price request +CommRequests=Price requests +SearchRequest=Find a request +DraftRequests=Draft requests +SupplierProposalsDraft=Draft vendor proposals +LastModifiedRequests=Latest %s modified price requests +RequestsOpened=Open price requests +SupplierProposalArea=Vendor proposals area +SupplierProposalShort=Vendor proposal +SupplierProposals=Vendor proposals +SupplierProposalsShort=Vendor proposals +NewAskPrice=New price request +ShowSupplierProposal=Show price request +AddSupplierProposal=Create a price request +SupplierProposalRefFourn=Vendor ref +SupplierProposalDate=Delivery date +SupplierProposalRefFournNotice=Before closing to "Accepted", think to grasp suppliers references. +ConfirmValidateAsk=Are you sure you want to validate this price request under name %s? +DeleteAsk=Delete request +ValidateAsk=Validate request +SupplierProposalStatusDraft=Draft (needs to be validated) +SupplierProposalStatusValidated=Validated (request is open) +SupplierProposalStatusClosed=Closed +SupplierProposalStatusSigned=Accepted +SupplierProposalStatusNotSigned=Refused +SupplierProposalStatusDraftShort=Draft +SupplierProposalStatusValidatedShort=Validated +SupplierProposalStatusClosedShort=Closed +SupplierProposalStatusSignedShort=Accepted +SupplierProposalStatusNotSignedShort=Refused +CopyAskFrom=Create a price request by copying an existing request +CreateEmptyAsk=Create blank request +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=Send price request by mail +SendAskRef=Sending the price request %s +SupplierProposalCard=Request card +ConfirmDeleteAsk=Are you sure you want to delete this price request %s? +ActionsOnSupplierProposal=Events on price request +DocModelAuroreDescription=A complete request model (logo...) +CommercialAsk=Price request +DefaultModelSupplierProposalCreate=Default model creation +DefaultModelSupplierProposalToBill=Default template when closing a price request (accepted) +DefaultModelSupplierProposalClosed=Default template when closing a price request (refused) +ListOfSupplierProposals=List of vendor proposal requests +ListSupplierProposalsAssociatedProject=List of vendor proposals associated with project +SupplierProposalsToClose=Vendor proposals to close +SupplierProposalsToProcess=Vendor proposals to process +LastSupplierProposals=Latest %s price requests +AllPriceRequests=All requests diff --git a/htdocs/langs/ne_NP/suppliers.lang b/htdocs/langs/ne_NP/suppliers.lang new file mode 100644 index 00000000000..b69b11272b4 --- /dev/null +++ b/htdocs/langs/ne_NP/suppliers.lang @@ -0,0 +1,47 @@ +# Dolibarr language file - Source file is en_US - vendors +Suppliers=Vendors +SuppliersInvoice=Vendor invoice +ShowSupplierInvoice=Show Vendor Invoice +NewSupplier=New vendor +History=History +ListOfSuppliers=List of vendors +ShowSupplier=Show vendor +OrderDate=Order date +BuyingPriceMin=Best buying price +BuyingPriceMinShort=Best buying price +TotalBuyingPriceMinShort=Total of subproducts buying prices +TotalSellingPriceMinShort=Total of subproducts selling prices +SomeSubProductHaveNoPrices=Some sub-products have no price defined +AddSupplierPrice=Add buying price +ChangeSupplierPrice=Change buying price +SupplierPrices=Vendor prices +ReferenceSupplierIsAlreadyAssociatedWithAProduct=This vendor reference is already associated with a product: %s +NoRecordedSuppliers=No vendor recorded +SupplierPayment=Vendor payment +SuppliersArea=Vendor area +RefSupplierShort=Ref. vendor +Availability=Availability +ExportDataset_fournisseur_1=Vendor invoices and invoice details +ExportDataset_fournisseur_2=Vendor invoices and payments +ExportDataset_fournisseur_3=Purchase orders and order details +ApproveThisOrder=Approve this order +ConfirmApproveThisOrder=Are you sure you want to approve order %s? +DenyingThisOrder=Deny this order +ConfirmDenyingThisOrder=Are you sure you want to deny this order %s? +ConfirmCancelThisOrder=Are you sure you want to cancel this order %s? +AddSupplierOrder=Create Purchase Order +AddSupplierInvoice=Create vendor invoice +ListOfSupplierProductForSupplier=List of products and prices for vendor %s +SentToSuppliers=Sent to vendors +ListOfSupplierOrders=List of purchase orders +MenuOrdersSupplierToBill=Purchase orders to invoice +NbDaysToDelivery=Delivery delay (days) +DescNbDaysToDelivery=The longest delivery delay of the products from this order +SupplierReputation=Vendor reputation +DoNotOrderThisProductToThisSupplier=Do not order +NotTheGoodQualitySupplier=Low quality +ReputationForThisProduct=Reputation +BuyerName=Buyer name +AllProductServicePrices=All product / service prices +AllProductReferencesOfSupplier=All product / service references of vendor +BuyingPriceNumShort=Vendor prices diff --git a/htdocs/langs/ne_NP/ticket.lang b/htdocs/langs/ne_NP/ticket.lang new file mode 100644 index 00000000000..80518c3401a --- /dev/null +++ b/htdocs/langs/ne_NP/ticket.lang @@ -0,0 +1,305 @@ +# en_US lang file for module ticket +# Copyright (C) 2013 Jean-François FERRY +# +# 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 . + +# +# Generic +# + +Module56000Name=Tickets +Module56000Desc=Ticket system for issue or request management + +Permission56001=See tickets +Permission56002=Modify tickets +Permission56003=Delete tickets +Permission56004=Manage tickets +Permission56005=See tickets of all third parties (not effective for external users, always be limited to the third party they depend on) + +TicketDictType=Ticket - Types +TicketDictCategory=Ticket - Groupes +TicketDictSeverity=Ticket - Severities +TicketDictResolution=Ticket - Resolution +TicketTypeShortBUGSOFT=Dysfonctionnement logiciel +TicketTypeShortBUGHARD=Dysfonctionnement matériel +TicketTypeShortCOM=Commercial question + +TicketTypeShortHELP=Request for functionnal help +TicketTypeShortISSUE=Issue, bug or problem +TicketTypeShortREQUEST=Change or enhancement request +TicketTypeShortPROJET=Project +TicketTypeShortOTHER=Other + +TicketSeverityShortLOW=Low +TicketSeverityShortNORMAL=Normal +TicketSeverityShortHIGH=High +TicketSeverityShortBLOCKING=Critical/Blocking + +ErrorBadEmailAddress=Field '%s' incorrect +MenuTicketMyAssign=My tickets +MenuTicketMyAssignNonClosed=My open tickets +MenuListNonClosed=Open tickets + +TypeContact_ticket_internal_CONTRIBUTOR=Contributor +TypeContact_ticket_internal_SUPPORTTEC=Assigned user +TypeContact_ticket_external_SUPPORTCLI=Customer contact / incident tracking +TypeContact_ticket_external_CONTRIBUTOR=External contributor + +OriginEmail=Email source +Notify_TICKET_SENTBYMAIL=Send ticket message by email + +# Status +NotRead=Not read +Read=Read +Assigned=Assigned +InProgress=In progress +NeedMoreInformation=Waiting for information +Answered=Answered +Waiting=Waiting +Closed=Closed +Deleted=Deleted + +# Dict +Type=Type +Category=Analytic code +Severity=Severity + +# Email templates +MailToSendTicketMessage=To send email from ticket message + +# +# Admin page +# +TicketSetup=Ticket module setup +TicketSettings=Settings +TicketSetupPage= +TicketPublicAccess=A public interface requiring no identification is available at the following url +TicketSetupDictionaries=The type of ticket, severity and analytic codes are configurable from dictionaries +TicketParamModule=Module variable setup +TicketParamMail=Email setup +TicketEmailNotificationFrom=Notification email from +TicketEmailNotificationFromHelp=Used into ticket message answer by example +TicketEmailNotificationTo=Notifications email to +TicketEmailNotificationToHelp=Send email notifications to this address. +TicketNewEmailBodyLabel=Text message sent after creating a ticket +TicketNewEmailBodyHelp=The text specified here will be inserted into the email confirming the creation of a new ticket from the public interface. Information on the consultation of the ticket are automatically added. +TicketParamPublicInterface=Public interface setup +TicketsEmailMustExist=Require an existing email address to create a ticket +TicketsEmailMustExistHelp=In the public interface, the email address should already be filled in the database to create a new ticket. +PublicInterface=Public interface +TicketUrlPublicInterfaceLabelAdmin=Alternative URL for public interface +TicketUrlPublicInterfaceHelpAdmin=It is possible to define an alias to the web server and thus make available the public interface with another URL (the server must act as a proxy on this new URL) +TicketPublicInterfaceTextHomeLabelAdmin=Welcome text of the public interface +TicketPublicInterfaceTextHome=You can create a support ticket or view existing from its identifier tracking ticket. +TicketPublicInterfaceTextHomeHelpAdmin=The text defined here will appear on the home page of the public interface. +TicketPublicInterfaceTopicLabelAdmin=Interface title +TicketPublicInterfaceTopicHelp=This text will appear as the title of the public interface. +TicketPublicInterfaceTextHelpMessageLabelAdmin=Help text to the message entry +TicketPublicInterfaceTextHelpMessageHelpAdmin=This text will appear above the message input area of the user. +ExtraFieldsTicket=Extra attributes +TicketCkEditorEmailNotActivated=HTML editor is not activated. Please put FCKEDITOR_ENABLE_MAIL content to 1 to get it. +TicketsDisableEmail=Do not send emails for ticket creation or message recording +TicketsDisableEmailHelp=By default, emails are sent when new tickets or messages created. Enable this option to disable *all* email notifications +TicketsLogEnableEmail=Enable log by email +TicketsLogEnableEmailHelp=At each change, an email will be sent **to each contact** associated with the ticket. +TicketParams=Params +TicketsShowModuleLogo=Display the logo of the module in the public interface +TicketsShowModuleLogoHelp=Enable this option to hide the logo module in the pages of the public interface +TicketsShowCompanyLogo=Display the logo of the company in the public interface +TicketsShowCompanyLogoHelp=Enable this option to hide the logo of the main company in the pages of the public interface +TicketsEmailAlsoSendToMainAddress=Also send notification to main email address +TicketsEmailAlsoSendToMainAddressHelp=Enable this option to send an email to "Notification email from" address (see setup below) +TicketsLimitViewAssignedOnly=Restrict the display to tickets assigned to the current user (not effective for external users, always be limited to the third party they depend on) +TicketsLimitViewAssignedOnlyHelp=Only tickets assigned to the current user will be visible. Does not apply to a user with tickets management rights. +TicketsActivatePublicInterface=Activate public interface +TicketsActivatePublicInterfaceHelp=Public interface allow any visitors to create tickets. +TicketsAutoAssignTicket=Automatically assign the user who created the ticket +TicketsAutoAssignTicketHelp=When creating a ticket, the user can be automatically assigned to the ticket. +TicketNumberingModules=Tickets numbering module +TicketNotifyTiersAtCreation=Notify third party at creation +TicketGroup=Group +TicketsDisableCustomerEmail=Always disable emails when a ticket is created from public interface +# +# Index & list page +# +TicketsIndex=Tickets area +TicketList=List of tickets +TicketAssignedToMeInfos=This page display ticket list created by or assigned to current user +NoTicketsFound=No ticket found +NoUnreadTicketsFound=No unread ticket found +TicketViewAllTickets=View all tickets +TicketViewNonClosedOnly=View only open tickets +TicketStatByStatus=Tickets by status +OrderByDateAsc=Sort by ascending date +OrderByDateDesc=Sort by descending date +ShowAsConversation=Show as conversation list +MessageListViewType=Show as table list + +# +# Ticket card +# +Ticket=Ticket +TicketCard=Ticket card +CreateTicket=Create ticket +EditTicket=Edit ticket +TicketsManagement=Tickets Management +CreatedBy=Created by +NewTicket=New Ticket +SubjectAnswerToTicket=Ticket answer +TicketTypeRequest=Request type +TicketCategory=Analytic code +SeeTicket=See ticket +TicketMarkedAsRead=Ticket has been marked as read +TicketReadOn=Read on +TicketCloseOn=Closing date +MarkAsRead=Mark ticket as read +TicketHistory=Ticket history +AssignUser=Assign to user +TicketAssigned=Ticket is now assigned +TicketChangeType=Change type +TicketChangeCategory=Change analytic code +TicketChangeSeverity=Change severity +TicketAddMessage=Add a message +AddMessage=Add a message +MessageSuccessfullyAdded=Ticket added +TicketMessageSuccessfullyAdded=Message successfully added +TicketMessagesList=Message list +NoMsgForThisTicket=No message for this ticket +Properties=Classification +LatestNewTickets=Latest %s newest tickets (not read) +TicketSeverity=Severity +ShowTicket=See ticket +RelatedTickets=Related tickets +TicketAddIntervention=Create intervention +CloseTicket=Close ticket +CloseATicket=Close a ticket +ConfirmCloseAticket=Confirm ticket closing +ConfirmDeleteTicket=Please confirm ticket deleting +TicketDeletedSuccess=Ticket deleted with success +TicketMarkedAsClosed=Ticket marked as closed +TicketDurationAuto=Calculated duration +TicketDurationAutoInfos=Duration calculated automatically from intervention related +TicketUpdated=Ticket updated +SendMessageByEmail=Send message by email +TicketNewMessage=New message +ErrorMailRecipientIsEmptyForSendTicketMessage=Recipient is empty. No email send +TicketGoIntoContactTab=Please go into "Contacts" tab to select them +TicketMessageMailIntro=Introduction +TicketMessageMailIntroHelp=This text is added only at the beginning of the email and will not be saved. +TicketMessageMailIntroLabelAdmin=Introduction to the message when sending email +TicketMessageMailIntroText=Hello,
    A new response was sent on a ticket that you contact. Here is the message:
    +TicketMessageMailIntroHelpAdmin=This text will be inserted before the text of the response to a ticket. +TicketMessageMailSignature=Signature +TicketMessageMailSignatureHelp=This text is added only at the end of the email and will not be saved. +TicketMessageMailSignatureText=

    Sincerely,

    --

    +TicketMessageMailSignatureLabelAdmin=Signature of response email +TicketMessageMailSignatureHelpAdmin=This text will be inserted after the response message. +TicketMessageHelp=Only this text will be saved in the message list on ticket card. +TicketMessageSubstitutionReplacedByGenericValues=Substitutions variables are replaced by generic values. +TimeElapsedSince=Time elapsed since +TicketTimeToRead=Time elapsed before read +TicketContacts=Contacts ticket +TicketDocumentsLinked=Documents linked to ticket +ConfirmReOpenTicket=Confirm reopen this ticket ? +TicketMessageMailIntroAutoNewPublicMessage=A new message was posted on the ticket with the subject %s: +TicketAssignedToYou=Ticket assigned +TicketAssignedEmailBody=You have been assigned the ticket #%s by %s +MarkMessageAsPrivate=Mark message as private +TicketMessagePrivateHelp=This message will not display to external users +TicketEmailOriginIssuer=Issuer at origin of the tickets +InitialMessage=Initial Message +LinkToAContract=Link to a contract +TicketPleaseSelectAContract=Select a contract +UnableToCreateInterIfNoSocid=Can not create an intervention when no third party is defined +TicketMailExchanges=Mail exchanges +TicketInitialMessageModified=Initial message modified +TicketMessageSuccesfullyUpdated=Message successfully updated +TicketChangeStatus=Change status +TicketConfirmChangeStatus=Confirm the status change: %s ? +TicketLogStatusChanged=Status changed: %s to %s +TicketNotNotifyTiersAtCreate=Not notify company at create +Unread=Unread +TicketNotCreatedFromPublicInterface=Not available. Ticket was not created from public interface. +PublicInterfaceNotEnabled=Public interface was not enabled +ErrorTicketRefRequired=Ticket reference name is required + +# +# Logs +# +TicketLogMesgReadBy=Ticket %s read by %s +NoLogForThisTicket=No log for this ticket yet +TicketLogAssignedTo=Ticket %s assigned to %s +TicketLogPropertyChanged=Ticket %s modified: classification from %s to %s +TicketLogClosedBy=Ticket %s closed by %s +TicketLogReopen=Ticket %s re-open + +# +# Public pages +# +TicketSystem=Ticket system +ShowListTicketWithTrackId=Display ticket list from track ID +ShowTicketWithTrackId=Display ticket from track ID +TicketPublicDesc=You can create a support ticket or check from an existing ID. +YourTicketSuccessfullySaved=Ticket has been successfully saved! +MesgInfosPublicTicketCreatedWithTrackId=A new ticket has been created with ID %s and Ref %s. +PleaseRememberThisId=Please keep the tracking number that we might ask you later. +TicketNewEmailSubject=Ticket creation confirmation - Ref %s (public ticket ID %s) +TicketNewEmailSubjectCustomer=New support ticket +TicketNewEmailBody=This is an automatic email to confirm you have registered a new ticket. +TicketNewEmailBodyCustomer=This is an automatic email to confirm a new ticket has just been created into your account. +TicketNewEmailBodyInfosTicket=Information for monitoring the ticket +TicketNewEmailBodyInfosTrackId=Ticket tracking number: %s +TicketNewEmailBodyInfosTrackUrl=You can view the progress of the ticket by clicking the link above. +TicketNewEmailBodyInfosTrackUrlCustomer=You can view the progress of the ticket in the specific interface by clicking the following link +TicketEmailPleaseDoNotReplyToThisEmail=Please do not reply directly to this email! Use the link to reply into the interface. +TicketPublicInfoCreateTicket=This form allows you to record a support ticket in our management system. +TicketPublicPleaseBeAccuratelyDescribe=Please accurately describe the problem. Provide the most information possible to allow us to correctly identify your request. +TicketPublicMsgViewLogIn=Please enter ticket tracking ID +TicketTrackId=Public Tracking ID +OneOfTicketTrackId=One of your tracking ID +ErrorTicketNotFound=Ticket with tracking ID %s not found! +Subject=Subject +ViewTicket=View ticket +ViewMyTicketList=View my ticket list +ErrorEmailMustExistToCreateTicket=Error: email address not found in our database +TicketNewEmailSubjectAdmin=New ticket created - Ref %s (public ticket ID %s) +TicketNewEmailBodyAdmin=

    Ticket has just been created with ID #%s, see information:

    +SeeThisTicketIntomanagementInterface=See ticket in management interface +TicketPublicInterfaceForbidden=The public interface for the tickets was not enabled +ErrorEmailOrTrackingInvalid=Bad value for tracking ID or email +OldUser=Old user +NewUser=New user +NumberOfTicketsByMonth=Number of tickets per month +NbOfTickets=Number of tickets +# notifications +TicketNotificationEmailSubject=Ticket %s updated +TicketNotificationEmailBody=This is an automatic message to notify you that ticket %s has just been updated +TicketNotificationRecipient=Notification recipient +TicketNotificationLogMessage=Log message +TicketNotificationEmailBodyInfosTrackUrlinternal=View ticket into interface +TicketNotificationNumberEmailSent=Notification email sent: %s + +ActionsOnTicket=Events on ticket + +# +# Boxes +# +BoxLastTicket=Latest created tickets +BoxLastTicketDescription=Latest %s created tickets +BoxLastTicketContent= +BoxLastTicketNoRecordedTickets=No recent unread tickets +BoxLastModifiedTicket=Latest modified tickets +BoxLastModifiedTicketDescription=Latest %s modified tickets +BoxLastModifiedTicketContent= +BoxLastModifiedTicketNoRecordedTickets=No recent modified tickets diff --git a/htdocs/langs/ne_NP/trips.lang b/htdocs/langs/ne_NP/trips.lang new file mode 100644 index 00000000000..654f14d6bf7 --- /dev/null +++ b/htdocs/langs/ne_NP/trips.lang @@ -0,0 +1,151 @@ +# Dolibarr language file - Source file is en_US - trips +ShowExpenseReport=Show expense report +Trips=Expense reports +TripsAndExpenses=Expenses reports +TripsAndExpensesStatistics=Expense reports statistics +TripCard=Expense report card +AddTrip=Create expense report +ListOfTrips=List of expense reports +ListOfFees=List of fees +TypeFees=Types of fees +ShowTrip=Show expense report +NewTrip=New expense report +LastExpenseReports=Latest %s expense reports +AllExpenseReports=All expense reports +CompanyVisited=Company/organization visited +FeesKilometersOrAmout=Amount or kilometers +DeleteTrip=Delete expense report +ConfirmDeleteTrip=Are you sure you want to delete this expense report? +ListTripsAndExpenses=List of expense reports +ListToApprove=Waiting for approval +ExpensesArea=Expense reports area +ClassifyRefunded=Classify 'Refunded' +ExpenseReportWaitingForApproval=A new expense report has been submitted for approval +ExpenseReportWaitingForApprovalMessage=A new expense report has been submitted and is waiting for approval.
    - User: %s
    - Period: %s
    Click here to validate: %s +ExpenseReportWaitingForReApproval=An expense report has been submitted for re-approval +ExpenseReportWaitingForReApprovalMessage=An expense report has been submitted and is waiting for re-approval.
    The %s, you refused to approve the expense report for this reason: %s.
    A new version has been proposed and waiting for your approval.
    - User: %s
    - Period: %s
    Click here to validate: %s +ExpenseReportApproved=An expense report was approved +ExpenseReportApprovedMessage=The expense report %s was approved.
    - User: %s
    - Approved by: %s
    Click here to show the expense report: %s +ExpenseReportRefused=An expense report was refused +ExpenseReportRefusedMessage=The expense report %s was refused.
    - User: %s
    - Refused by: %s
    - Motive for refusal: %s
    Click here to show the expense report: %s +ExpenseReportCanceled=An expense report was canceled +ExpenseReportCanceledMessage=The expense report %s was canceled.
    - User: %s
    - Canceled by: %s
    - Motive for cancellation: %s
    Click here to show the expense report: %s +ExpenseReportPaid=An expense report was paid +ExpenseReportPaidMessage=The expense report %s was paid.
    - User: %s
    - Paid by: %s
    Click here to show the expense report: %s +TripId=Id expense report +AnyOtherInThisListCanValidate=Person to inform for validation. +TripSociete=Information company +TripNDF=Informations expense report +PDFStandardExpenseReports=Standard template to generate a PDF document for expense report +ExpenseReportLine=Expense report line +TF_OTHER=Other +TF_TRIP=Transportation +TF_LUNCH=Lunch +TF_METRO=Metro +TF_TRAIN=Train +TF_BUS=Bus +TF_CAR=Car +TF_PEAGE=Toll +TF_ESSENCE=Fuel +TF_HOTEL=Hotel +TF_TAXI=Taxi +EX_KME=Mileage costs +EX_FUE=Fuel CV +EX_HOT=Hotel +EX_PAR=Parking CV +EX_TOL=Toll CV +EX_TAX=Various Taxes +EX_IND=Indemnity transportation subscription +EX_SUM=Maintenance supply +EX_SUO=Office supplies +EX_CAR=Car rental +EX_DOC=Documentation +EX_CUR=Customers receiving +EX_OTR=Other receiving +EX_POS=Postage +EX_CAM=CV maintenance and repair +EX_EMM=Employees meal +EX_GUM=Guests meal +EX_BRE=Breakfast +EX_FUE_VP=Fuel PV +EX_TOL_VP=Toll PV +EX_PAR_VP=Parking PV +EX_CAM_VP=PV maintenance and repair +DefaultCategoryCar=Default transportation mode +DefaultRangeNumber=Default range number +UploadANewFileNow=Upload a new document now +Error_EXPENSEREPORT_ADDON_NotDefined=Error, the rule for expense report numbering ref was not defined into setup of module 'Expense Report' +ErrorDoubleDeclaration=You have declared another expense report into a similar date range. +AucuneLigne=There is no expense report declared yet +ModePaiement=Payment mode +VALIDATOR=User responsible for approval +VALIDOR=Approved by +AUTHOR=Recorded by +AUTHORPAIEMENT=Paid by +REFUSEUR=Denied by +CANCEL_USER=Deleted by +MOTIF_REFUS=Reason +MOTIF_CANCEL=Reason +DATE_REFUS=Deny date +DATE_SAVE=Validation date +DATE_CANCEL=Cancelation date +DATE_PAIEMENT=Payment date +BROUILLONNER=Reopen +ExpenseReportRef=Ref. expense report +ValidateAndSubmit=Validate and submit for approval +ValidatedWaitingApproval=Validated (waiting for approval) +NOT_AUTHOR=You are not the author of this expense report. Operation cancelled. +ConfirmRefuseTrip=Are you sure you want to deny this expense report? +ValideTrip=Approve expense report +ConfirmValideTrip=Are you sure you want to approve this expense report? +PaidTrip=Pay an expense report +ConfirmPaidTrip=Are you sure you want to change status of this expense report to "Paid"? +ConfirmCancelTrip=Are you sure you want to cancel this expense report? +BrouillonnerTrip=Move back expense report to status "Draft" +ConfirmBrouillonnerTrip=Are you sure you want to move this expense report to status "Draft"? +SaveTrip=Validate expense report +ConfirmSaveTrip=Are you sure you want to validate this expense report? +NoTripsToExportCSV=No expense report to export for this period. +ExpenseReportPayment=Expense report payment +ExpenseReportsToApprove=Expense reports to approve +ExpenseReportsToPay=Expense reports to pay +ConfirmCloneExpenseReport=Are you sure you want to clone this expense report ? +ExpenseReportsIk=Expense report milles index +ExpenseReportsRules=Expense report rules +ExpenseReportIkDesc=You can modify the calculation of kilometers expense by category and range who they are previously defined. d is the distance in kilometers +ExpenseReportRulesDesc=You can create or update any rules of calculation. This part will be used when user will create a new expense report +expenseReportOffset=Offset +expenseReportCoef=Coefficient +expenseReportTotalForFive=Example with d = 5 +expenseReportRangeFromTo=from %d to %d +expenseReportRangeMoreThan=more than %d +expenseReportCoefUndefined=(value not defined) +expenseReportCatDisabled=Category disabled - see the c_exp_tax_cat dictionary +expenseReportRangeDisabled=Range disabled - see the c_exp_tax_range dictionay +expenseReportPrintExample=offset + (d x coef) = %s +ExpenseReportApplyTo=Apply to +ExpenseReportDomain=Domain to apply +ExpenseReportLimitOn=Limit on +ExpenseReportDateStart=Date start +ExpenseReportDateEnd=Date end +ExpenseReportLimitAmount=Limite amount +ExpenseReportRestrictive=Restrictive +AllExpenseReport=All type of expense report +OnExpense=Expense line +ExpenseReportRuleSave=Expense report rule saved +ExpenseReportRuleErrorOnSave=Error: %s +RangeNum=Range %d +ExpenseReportConstraintViolationError=Constraint violation id [%s]: %s is superior to %s %s +byEX_DAY=by day (limitation to %s) +byEX_MON=by month (limitation to %s) +byEX_YEA=by year (limitation to %s) +byEX_EXP=by line (limitation to %s) +ExpenseReportConstraintViolationWarning=Constraint violation id [%s]: %s is superior to %s %s +nolimitbyEX_DAY=by day (no limitation) +nolimitbyEX_MON=by month (no limitation) +nolimitbyEX_YEA=by year (no limitation) +nolimitbyEX_EXP=by line (no limitation) +CarCategory=Category of car +ExpenseRangeOffset=Offset amount: %s +RangeIk=Mileage range +AttachTheNewLineToTheDocument=Attach the line to an uploaded document diff --git a/htdocs/langs/ne_NP/users.lang b/htdocs/langs/ne_NP/users.lang new file mode 100644 index 00000000000..41a5ebd0981 --- /dev/null +++ b/htdocs/langs/ne_NP/users.lang @@ -0,0 +1,118 @@ +# Dolibarr language file - Source file is en_US - users +HRMArea=HRM area +UserCard=User card +GroupCard=Group card +Permission=Permission +Permissions=Permissions +EditPassword=Edit password +SendNewPassword=Regenerate and send password +SendNewPasswordLink=Send link to reset password +ReinitPassword=Regenerate password +PasswordChangedTo=Password changed to: %s +SubjectNewPassword=Your new password for %s +GroupRights=Group permissions +UserRights=User permissions +UserGUISetup=User Display Setup +DisableUser=Disable +DisableAUser=Disable a user +DeleteUser=Delete +DeleteAUser=Delete a user +EnableAUser=Enable a user +DeleteGroup=Delete +DeleteAGroup=Delete a group +ConfirmDisableUser=Are you sure you want to disable user %s? +ConfirmDeleteUser=Are you sure you want to delete user %s? +ConfirmDeleteGroup=Are you sure you want to delete group %s? +ConfirmEnableUser=Are you sure you want to enable user %s? +ConfirmReinitPassword=Are you sure you want to generate a new password for user %s? +ConfirmSendNewPassword=Are you sure you want to generate and send new password for user %s? +NewUser=New user +CreateUser=Create user +LoginNotDefined=Login is not defined. +NameNotDefined=Name is not defined. +ListOfUsers=List of users +SuperAdministrator=Super Administrator +SuperAdministratorDesc=Global administrator +AdministratorDesc=Administrator +DefaultRights=Default Permissions +DefaultRightsDesc=Define here the default permissions that are automatically granted to a new user (to modify permissions for existing users, go to the user card). +DolibarrUsers=Dolibarr users +LastName=Last name +FirstName=First name +ListOfGroups=List of groups +NewGroup=New group +CreateGroup=Create group +RemoveFromGroup=Remove from group +PasswordChangedAndSentTo=Password changed and sent to %s. +PasswordChangeRequest=Request to change password for %s +PasswordChangeRequestSent=Request to change password for %s sent to %s. +ConfirmPasswordReset=Confirm password reset +MenuUsersAndGroups=Users & Groups +LastGroupsCreated=Latest %s groups created +LastUsersCreated=Latest %s users created +ShowGroup=Show group +ShowUser=Show user +NonAffectedUsers=Non assigned users +UserModified=User modified successfully +PhotoFile=Photo file +ListOfUsersInGroup=List of users in this group +ListOfGroupsForUser=List of groups for this user +LinkToCompanyContact=Link to third party / contact +LinkedToDolibarrMember=Link to member +LinkedToDolibarrUser=Link to Dolibarr user +LinkedToDolibarrThirdParty=Link to Dolibarr third party +CreateDolibarrLogin=Create a user +CreateDolibarrThirdParty=Create a third party +LoginAccountDisableInDolibarr=Account disabled in Dolibarr. +UsePersonalValue=Use personal value +InternalUser=Internal user +ExportDataset_user_1=Users and their properties +DomainUser=Domain user %s +Reactivate=Reactivate +CreateInternalUserDesc=This form allows you to create an internal user in your company/organization. To create an external user (customer, vendor etc. ..), use the button 'Create Dolibarr User' from that third-party's contact card. +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +PermissionInheritedFromAGroup=Permission granted because inherited from one of a user's group. +Inherited=Inherited +UserWillBeInternalUser=Created user will be an internal user (because not linked to a particular third party) +UserWillBeExternalUser=Created user will be an external user (because linked to a particular third party) +IdPhoneCaller=Id phone caller +NewUserCreated=User %s created +NewUserPassword=Password change for %s +NewPasswordValidated=Your new password have been validated and must be used now to login. +EventUserModified=User %s modified +UserDisabled=User %s disabled +UserEnabled=User %s activated +UserDeleted=User %s removed +NewGroupCreated=Group %s created +GroupModified=Group %s modified +GroupDeleted=Group %s removed +ConfirmCreateContact=Are you sure you want to create a Dolibarr account for this contact? +ConfirmCreateLogin=Are you sure you want to create a Dolibarr account for this member? +ConfirmCreateThirdParty=Are you sure you want to create a third party for this member? +LoginToCreate=Login to create +NameToCreate=Name of third party to create +YourRole=Your roles +YourQuotaOfUsersIsReached=Your quota of active users is reached ! +NbOfUsers=No. of users +NbOfPermissions=No. of permissions +DontDowngradeSuperAdmin=Only a superadmin can downgrade a superadmin +HierarchicalResponsible=Supervisor +HierarchicView=Hierarchical view +UseTypeFieldToChange=Use field Type to change +OpenIDURL=OpenID URL +LoginUsingOpenID=Use OpenID to login +WeeklyHours=Hours worked (per week) +ExpectedWorkedHours=Expected worked hours per week +ColorUser=Color of the user +DisabledInMonoUserMode=Disabled in maintenance mode +UserAccountancyCode=User accounting code +UserLogoff=User logout +UserLogged=User logged +DateEmployment=Employment Start Date +DateEmploymentEnd=Employment End Date +CantDisableYourself=You can't disable your own user record +ForceUserExpenseValidator=Force expense report validator +ForceUserHolidayValidator=Force leave request validator +ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/ne_NP/website.lang b/htdocs/langs/ne_NP/website.lang new file mode 100644 index 00000000000..bce2a09fb03 --- /dev/null +++ b/htdocs/langs/ne_NP/website.lang @@ -0,0 +1,130 @@ +# Dolibarr language file - Source file is en_US - website +Shortname=Code +WebsiteSetupDesc=Create here the websites you wish to use. Then go into menu Websites to edit them. +DeleteWebsite=Delete website +ConfirmDeleteWebsite=Are you sure you want to delete this web site? All its pages and content will also be removed. The files uploaded (like into the medias directory, the ECM module, ...) will remain. +WEBSITE_TYPE_CONTAINER=Type of page/container +WEBSITE_PAGE_EXAMPLE=Web page to use as example +WEBSITE_PAGENAME=Page name/alias +WEBSITE_ALIASALT=Alternative page names/aliases +WEBSITE_ALIASALTDesc=Use here list of other name/aliases so the page can also be accessed using this other names/aliases (for example the old name after renaming the alias to keep backlink on old link/name working). Syntax is:
    alternativename1, alternativename2, ... +WEBSITE_CSS_URL=URL of external CSS file +WEBSITE_CSS_INLINE=CSS file content (common to all pages) +WEBSITE_JS_INLINE=Javascript file content (common to all pages) +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. +MediaFiles=Media library +EditCss=Edit website properties +EditMenu=Edit menu +EditMedias=Edit medias +EditPageMeta=Edit page/container properties +EditInLine=Edit inline +AddWebsite=Add website +Webpage=Web page/container +AddPage=Add page/container +HomePage=Home Page +PageContainer=Page/container +PreviewOfSiteNotYetAvailable=Preview of your website %s not yet available. You must first 'Import a full website template' or just 'Add a page/container'. +RequestedPageHasNoContentYet=Requested page with id %s has no content yet, or cache file .tpl.php was removed. Edit content of the page to solve this. +SiteDeleted=Web site '%s' deleted +PageContent=Page/Contenair +PageDeleted=Page/Contenair '%s' of website %s deleted +PageAdded=Page/Contenair '%s' added +ViewSiteInNewTab=View site in new tab +ViewPageInNewTab=View page in new tab +SetAsHomePage=Set as Home page +RealURL=Real URL +ViewWebsiteInProduction=View web site using home URLs +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: +YouCanAlsoTestWithPHPS=Use with PHP embedded server
    On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running
    php -S 0.0.0.0:8080 -t %s +YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org +CheckVirtualHostPerms=Check also that virtual host has permission %s on files into
    %s +ReadPerm=Read +WritePerm=Write +TestDeployOnWeb=Test/deploy on web +PreviewSiteServedByWebServer=Preview %s in a new tab.

    The %s will be served by an external web server (like Apache, Nginx, IIS). You must install and setup this server before to point to directory:
    %s
    URL served by external server:
    %s +PreviewSiteServedByDolibarr=Preview %s in a new tab.

    The %s will be served by Dolibarr server so it does not need any extra web server (like Apache, Nginx, IIS) to be installed.
    The inconvenient is that URL of pages are not user friendly and start with path of your Dolibarr.
    URL served by Dolibarr:
    %s

    To use your own external web server to serve this web site, create a virtual host on your web server that point on directory
    %s
    then enter the name of this virtual server and click on the other preview button. +VirtualHostUrlNotDefined=URL of the virtual host served by external web server not defined +NoPageYet=No pages yet +YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template +SyntaxHelp=Help on specific syntax tips +YouCanEditHtmlSourceckeditor=You can edit HTML source code using the "Source" button in editor. +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +ClonePage=Clone page/container +CloneSite=Clone site +SiteAdded=Website added +ConfirmClonePage=Please enter code/alias of new page and if it is a translation of the cloned page. +PageIsANewTranslation=The new page is a translation of the current page ? +LanguageMustNotBeSameThanClonedPage=You clone a page as a translation. The language of the new page must be different than language of source page. +ParentPageId=Parent page ID +WebsiteId=Website ID +CreateByFetchingExternalPage=Create page/container by fetching page from external URL... +OrEnterPageInfoManually=Or create page from scratch or from a page template... +FetchAndCreate=Fetch and Create +ExportSite=Export website +ImportSite=Import website template +IDOfPage=Id of page +Banner=Banner +BlogPost=Blog post +WebsiteAccount=Website account +WebsiteAccounts=Website accounts +AddWebsiteAccount=Create web site account +BackToListForThirdParty=Back to list for the third-party +DisableSiteFirst=Disable website first +MyContainerTitle=My web site title +AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) +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 +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. +OnlyEditionOfSourceForGrabbedContent=Only edition of HTML source is possible when content was grabbed from an external site +GrabImagesInto=Grab also images found into css and page. +ImagesShouldBeSavedInto=Images should be saved into directory +WebsiteRootOfImages=Root directory for website images +SubdirOfPage=Sub-directory dedicated to page +AliasPageAlreadyExists=Alias page %s already exists +CorporateHomePage=Corporate Home page +EmptyPage=Empty page +ExternalURLMustStartWithHttp=External URL must start with http:// or https:// +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 +ThisPageHasTranslationPages=This page/container has translation +NoWebSiteCreateOneFirst=No website has been created yet. Create one first. +GoTo=Go to +DynamicPHPCodeContainsAForbiddenInstruction=You add dynamic PHP code that contains the PHP instruction '%s' that is forbidden by default as dynamic content (see hidden options WEBSITE_PHP_ALLOW_xxx to increase list of allowed commands). +NotAllowedToAddDynamicContent=You don't have permission to add or edit PHP dynamic content in websites. Ask permission or just keep code into php tags unmodified. +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 +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. +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. +Dynamiccontent=Sample of a page with dynamic content +ImportSite=Import website template +EditInLineOnOff=Mode 'Edit inline' is %s +ShowSubContainersOnOff=Mode to execute 'dynamic content' is %s +GlobalCSSorJS=Global CSS/JS/Header file of web site +BackToHomePage=Back to home page... +TranslationLinks=Translation links +YouTryToAccessToAFileThatIsNotAWebsitePage=You try to access to a page that is not a website page +UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 characters +MainLanguage=Main language +OtherLanguages=Other languages +UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/ne_NP/withdrawals.lang b/htdocs/langs/ne_NP/withdrawals.lang new file mode 100644 index 00000000000..b1d6e30e329 --- /dev/null +++ b/htdocs/langs/ne_NP/withdrawals.lang @@ -0,0 +1,119 @@ +# Dolibarr language file - Source file is en_US - withdrawals +CustomersStandingOrdersArea=Direct debit payment orders area +SuppliersStandingOrdersArea=Direct credit payment orders area +StandingOrdersPayment=Direct debit payment orders +StandingOrderPayment=Direct debit payment order +NewStandingOrder=New direct debit order +StandingOrderToProcess=To process +WithdrawalsReceipts=Direct debit orders +WithdrawalReceipt=Direct debit order +LastWithdrawalReceipts=Latest %s direct debit files +WithdrawalsLines=Direct debit order lines +RequestStandingOrderToTreat=Request for direct debit payment order to process +RequestStandingOrderTreated=Request for direct debit payment order processed +NotPossibleForThisStatusOfWithdrawReceiptORLine=Not yet possible. Withdraw status must be set to 'credited' before declaring reject on specific lines. +NbOfInvoiceToWithdraw=No. of qualified invoice with waiting direct debit order +NbOfInvoiceToWithdrawWithInfo=No. of customer invoice with direct debit payment orders having defined bank account information +InvoiceWaitingWithdraw=Invoice waiting for direct debit +AmountToWithdraw=Amount to withdraw +WithdrawsRefused=Direct debit refused +NoInvoiceToWithdraw=No customer invoice with open 'Direct debit requests' is waiting. Go on tab '%s' on invoice card to make a request. +ResponsibleUser=User Responsible +WithdrawalsSetup=Direct debit payment setup +WithdrawStatistics=Direct debit payment statistics +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 +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=Classify credited +ClassCreditedConfirm=Are you sure you want to classify this withdrawal receipt as credited on your bank account? +TransData=Transmission date +TransMetod=Transmission method +Send=Send +Lines=Lines +StandingOrderReject=Issue a rejection +WithdrawalRefused=Withdrawal refused +WithdrawalRefusedConfirm=Are you sure you want to enter a withdrawal rejection for society +RefusedData=Date of rejection +RefusedReason=Reason for rejection +RefusedInvoicing=Billing the rejection +NoInvoiceRefused=Do not charge the rejection +InvoiceRefused=Invoice refused (Charge the rejection to customer) +StatusDebitCredit=Status debit/credit +StatusWaiting=Waiting +StatusTrans=Sent +StatusCredited=Credited +StatusRefused=Refused +StatusMotif0=Unspecified +StatusMotif1=Insufficient funds +StatusMotif2=Request contested +StatusMotif3=No direct debit payment order +StatusMotif4=Sales Order +StatusMotif5=RIB unusable +StatusMotif6=Account without balance +StatusMotif7=Judicial Decision +StatusMotif8=Other reason +CreateForSepaFRST=Create direct debit file (SEPA FRST) +CreateForSepaRCUR=Create direct debit file (SEPA RCUR) +CreateAll=Create direct debit file (all) +CreateGuichet=Only office +CreateBanque=Only bank +OrderWaiting=Waiting for treatment +NotifyTransmision=Withdrawal Transmission +NotifyCredit=Withdrawal Credit +NumeroNationalEmetter=National Transmitter Number +WithBankUsingRIB=For bank accounts using RIB +WithBankUsingBANBIC=For bank accounts using IBAN/BIC/SWIFT +BankToReceiveWithdraw=Receiving Bank Account +CreditDate=Credit on +WithdrawalFileNotCapable=Unable to generate withdrawal receipt file for your country %s (Your country is not supported) +ShowWithdraw=Show Direct Debit Order +IfInvoiceNeedOnWithdrawPaymentWontBeClosed=However, if invoice has at least one direct debit payment order not yet processed, it won't be set as paid to allow prior withdrawal 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 payment order is closed, payment on invoice will be automatically recorded, and invoice closed if remainder to pay is null. +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 +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) +WithdrawRequestAmount=Amount of Direct debit request: +WithdrawRequestErrorNilAmount=Unable to create direct debit request for empty amount. +SepaMandate=SEPA Direct Debit Mandate +SepaMandateShort=SEPA Mandate +PleaseReturnMandate=Please return this mandate form by email to %s or by mail to +SEPALegalText=By signing this mandate form, you authorize (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. +CreditorIdentifier=Creditor Identifier +CreditorName=Creditor Name +SEPAFillForm=(B) Please complete all the fields marked * +SEPAFormYourName=Your name +SEPAFormYourBAN=Your Bank Account Name (IBAN) +SEPAFormYourBIC=Your Bank Identifier Code (BIC) +SEPAFrstOrRecur=Type of payment +ModeRECUR=Recurring payment +ModeFRST=One-off payment +PleaseCheckOne=Please check one only +DirectDebitOrderCreated=Direct debit order %s created +AmountRequested=Amount requested +SEPARCUR=SEPA CUR +SEPAFRST=SEPA FRST +ExecutionDate=Execution date +CreateForSepa=Create direct debit file +ICS=Creditor Identifier CI +END_TO_END="EndToEndId" SEPA XML tag - Unique id assigned per transaction +USTRD="Unstructured" SEPA XML tag +ADDDAYS=Add days to Execution Date + +### Notifications +InfoCreditSubject=Payment of direct debit payment order %s by the bank +InfoCreditMessage=The direct debit payment order %s has been paid by the bank
    Data of payment: %s +InfoTransSubject=Transmission of direct debit payment order %s to bank +InfoTransMessage=The direct debit payment order %s has been sent to bank by %s %s.

    +InfoTransData=Amount: %s
    Method: %s
    Date: %s +InfoRejectSubject=Direct debit payment order refused +InfoRejectMessage=Hello,

    the direct debit payment order of invoice %s related to the company %s, with an amount of %s has been refused by the bank.

    --
    %s +ModeWarning=Option for real mode was not set, we stop after this simulation diff --git a/htdocs/langs/ne_NP/workflow.lang b/htdocs/langs/ne_NP/workflow.lang new file mode 100644 index 00000000000..be126eef0f4 --- /dev/null +++ b/htdocs/langs/ne_NP/workflow.lang @@ -0,0 +1,20 @@ +# Dolibarr language file - Source file is en_US - workflow +WorkflowSetup=Workflow module setup +WorkflowDesc=This module provides some automatic actions. By default, the workflow is open (you can do things in the order you want) but here you can activate some automatic actions. +ThereIsNoWorkflowToModify=There is no workflow modifications available with the activated modules. +# Autocreate +descWORKFLOW_PROPAL_AUTOCREATE_ORDER=Automatically create a sales order after a commercial proposal is signed (the new order will have same amount as the proposal) +descWORKFLOW_PROPAL_AUTOCREATE_INVOICE=Automatically create a customer invoice after a commercial proposal is signed (the new invoice will have same amount as the proposal) +descWORKFLOW_CONTRACT_AUTOCREATE_INVOICE=Automatically create a customer invoice after a contract is validated +descWORKFLOW_ORDER_AUTOCREATE_INVOICE=Automatically create a customer invoice after a sales order is closed (the new invoice will have same amount as the order) +# Autoclassify customer proposal or order +descWORKFLOW_ORDER_CLASSIFY_BILLED_PROPAL=Classify linked source proposal as billed when sales order is set to billed (and if the amount of the order is the same as the total amount of the signed linked proposal) +descWORKFLOW_INVOICE_CLASSIFY_BILLED_PROPAL=Classify linked source proposal as billed when customer invoice is validated (and if the amount of the invoice is the same as the total amount of the signed linked proposal) +descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_ORDER=Classify linked source sales order as billed when customer invoice is validated (and if the amount of the invoice is the same as the total amount of the linked order) +descWORKFLOW_INVOICE_CLASSIFY_BILLED_ORDER=Classify linked source sales order as billed when customer invoice is set to paid (and if the amount of the invoice is the same as the total amount of the linked order) +descWORKFLOW_ORDER_CLASSIFY_SHIPPED_SHIPPING=Classify linked source sales order as shipped when a shipment is validated (and if the quantity shipped by all shipments is the same as in the order to update) +# Autoclassify purchase order +descWORKFLOW_ORDER_CLASSIFY_BILLED_SUPPLIER_PROPOSAL=Classify linked source vendor proposal as billed when vendor invoice is validated (and if the amount of the invoice is the same as the total amount of the linked proposal) +descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Classify linked source purchase order as billed when vendor invoice is validated (and if the amount of the invoice is the same as the total amount of the linked order) +AutomaticCreation=Automatic creation +AutomaticClassification=Automatic classification diff --git a/htdocs/langs/ne_NP/zapier.lang b/htdocs/langs/ne_NP/zapier.lang new file mode 100644 index 00000000000..6d6eda71313 --- /dev/null +++ b/htdocs/langs/ne_NP/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr module + +# +# Admin page +# +ZapierForDolibarrSetup = Setup of Zapier for Dolibarr diff --git a/htdocs/langs/nl_BE/admin.lang b/htdocs/langs/nl_BE/admin.lang index 8de85c22445..4606f2d05f1 100644 --- a/htdocs/langs/nl_BE/admin.lang +++ b/htdocs/langs/nl_BE/admin.lang @@ -60,7 +60,6 @@ ExportStructure=Struktuur NameColumn=Kollomennaam FeatureAvailableOnlyOnStable=Functie alleen beschikbaar op officiële stabiele versies BoxesDesc=Widgets zijn componenten die informatie tonen die u kunt toevoegen om sommige pagina's te personaliseren. U kunt kiezen tussen het weergeven van de widget of niet door de doelpagina te selecteren en op 'Activeren' te klikken, of door op de prullenbak te klikken om deze uit te schakelen. -ModulesDesc=De modules / applicaties bepalen welke functies beschikbaar zijn in de software. Sommige modules vereisen dat machtigingen worden verleend aan gebruikers na het activeren van de module. Klik op de aan / uitknop (aan het einde van de moduleregel) om een module / toepassing in of uit te schakelen. ModulesMarketPlaceDesc=Je kan meer modules vinden door te zoeken op andere externe websites, waar je ze kan downloaden ModulesMarketPlaces=Zoek externe app / modules ModulesDevelopYourModule=Ontwikkel je eigen app / modules @@ -163,13 +162,10 @@ Module1780Name=Labels/Categorien Module1780Desc=Label/categorie maken (producten, klanten, leveranciers, contacten of leden) Permission1004=Bekijk voorraadmutaties Permission1005=Creëren / wijzigen voorraadmutaties -ValueOfConstantKey=Value of a configuration constant InfoWebServer=Over webserver InfoDatabase=Over de database AccountantFileNumber=Code voor boekhouder AvailableModules=Beschikbare app / modules -SuppliersCommandModel=Complete template of Purchase Order -SuppliersInvoiceModel=Complete template of Vendor Invoice SalariesSetup=Setup van module salarissen MailToSendProposal=Klant voorstellen MailToSendInvoice=Klantfacturen diff --git a/htdocs/langs/nl_BE/agenda.lang b/htdocs/langs/nl_BE/agenda.lang index f439accb022..fc56ebd9bba 100644 --- a/htdocs/langs/nl_BE/agenda.lang +++ b/htdocs/langs/nl_BE/agenda.lang @@ -25,7 +25,6 @@ ProposalDeleted=Offerte verwijderd HOLIDAY_CREATEInDolibarr=Verzoek om verlof %s gemaakt HOLIDAY_MODIFYInDolibarr=Verzoek om verlof %s gewijzigd HOLIDAY_APPROVEInDolibarr=Verzoek om verlof %s goedgekeurd -HOLIDAY_VALIDATEDInDolibarr=Verzoek om verlof %s gevalideerd HOLIDAY_DELETEInDolibarr=Verzoek om verlof %s verwijderd EXPENSE_REPORT_CREATEInDolibarr=Onkostenrapport %s aangemaakt EXPENSE_REPORT_VALIDATEInDolibarr=Onkostenrapport %s gevalideerd diff --git a/htdocs/langs/nl_BE/bills.lang b/htdocs/langs/nl_BE/bills.lang index 342d138fb72..7d08e4fdf03 100644 --- a/htdocs/langs/nl_BE/bills.lang +++ b/htdocs/langs/nl_BE/bills.lang @@ -4,6 +4,8 @@ BillsCustomer=Klantfactuur BillsCustomersUnpaid=Onbetaalde klantfacturen BillsCustomersUnpaidForCompany=Onbetaalde afnemersfacturen voor %s DisabledBecauseNotErasable=Niet mogelijk omdat het niet kan worden gewist +PaymentBack=Teruggave +CustomerInvoicePaymentBack=Teruggave CreateCreditNote=Aanmaak krediet nota DoPayment=Doe een betaling DoPaymentBack=Doe een terugbetaling @@ -13,7 +15,6 @@ BillShortStatusClosedUnpaid=Afgesloten ErrorVATIntraNotConfigured=Intracommunautair btw-nummer nog niet gedefinieerd LastCustomersBills=Laatste %s klantfacturen AmountOfBillsByMonthHT=Factuurbedrag per maand (ex BTW) -ShowInvoiceSituation=Toon situatie factuur RemainderToBill=Nog te factureren GlobalDiscount=Globale korting PaymentRef=Betalingsref. @@ -35,6 +36,7 @@ PaymentTypeTRA=Bank cheque ChequeMaker=Cheque / Transfer uitvoerder DepositId=Id storting ShowUnpaidAll=Bekijk alle onbetaalde facturen +PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template TypeContact_facture_external_BILLING=Klant contact NotLastInCycle=Deze factuur is niet de laatste in de rij en mag niet worden aangepast. PDFCrevetteSituationInvoiceLineDecompte=Situatie factuur - AANTAL diff --git a/htdocs/langs/nl_BE/compta.lang b/htdocs/langs/nl_BE/compta.lang index c811b8fa19c..26787bfc20f 100644 --- a/htdocs/langs/nl_BE/compta.lang +++ b/htdocs/langs/nl_BE/compta.lang @@ -24,7 +24,6 @@ ConfirmDeleteSocialContribution=Bent u zeker dat u deze sociale bijdrage/belasti ExportDataset_tax_1=sociale bijdragen/belastingen en betalingen CalcModeLT1Debt=Modus %sRE op afnemersfacturen%s CalcModeLT1Rec=Modus %sRE op leveranciersfacturen%s -RulesResultDue=- Dit omvat openstaande facturen, uitgaven, BTW, donaties, zowel betaald als niet. Dit omvat eveneens betaalde lonen.
    - Dit is gebaseerd op de validatiedatum van facturen, BTW en de vervaldatum voor uitgaven. Voor lonen die gedefinieerd zijn in de Salaris-module is de datum van betaling gebruikt. RulesResultInOut=- Dit omvat alle betalingen van facturen, uitgaven, BTW en lonen.
    - Dit is gebaseerd op de betalingsdata van de facturen, uitgaven, BTW en lonen. De donatiedatum voor donaties. PurchasesJournal=Inkoopdagboek DescPurchasesJournal=Inkoopdagboek diff --git a/htdocs/langs/nl_BE/donations.lang b/htdocs/langs/nl_BE/donations.lang new file mode 100644 index 00000000000..213d8fc18ac --- /dev/null +++ b/htdocs/langs/nl_BE/donations.lang @@ -0,0 +1,4 @@ +# Dolibarr language file - Source file is en_US - donations +ConfirmDeleteADonation=Bent u zeker dat u deze donatie wilt verwijderen? +LastModifiedDonations=Laatste %s gewijzigde donaties +DonationValidated=Donatie %s gevalideerd diff --git a/htdocs/langs/nl_BE/main.lang b/htdocs/langs/nl_BE/main.lang index 1baa044da70..c833cf05a1f 100644 --- a/htdocs/langs/nl_BE/main.lang +++ b/htdocs/langs/nl_BE/main.lang @@ -63,7 +63,6 @@ UserModif=Gebruiker van laatste update PriceUHTCurrency=UP (valuta) AmountHT=Bedrag (excl. BTW) MulticurrencyRemainderToPay=Blijf betalen, oorspronkelijke valuta -MulticurrencyPaymentAmount=Betalingsbedrag, oorspronkelijke valuta MulticurrencyAmountHT=Bedrag (excl. Btw), oorspronkelijke valuta MulticurrencyAmountTTC=Bedrag (incl. Btw), oorspronkelijke valuta MulticurrencyAmountVAT=Bedragsbelasting, oorspronkelijke valuta diff --git a/htdocs/langs/nl_BE/modulebuilder.lang b/htdocs/langs/nl_BE/modulebuilder.lang new file mode 100644 index 00000000000..8bbcc78a506 --- /dev/null +++ b/htdocs/langs/nl_BE/modulebuilder.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - modulebuilder +ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: diff --git a/htdocs/langs/nl_BE/multicurrency.lang b/htdocs/langs/nl_BE/multicurrency.lang new file mode 100644 index 00000000000..f257fd39f88 --- /dev/null +++ b/htdocs/langs/nl_BE/multicurrency.lang @@ -0,0 +1,2 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MulticurrencyPaymentAmount=Betalingsbedrag, oorspronkelijke valuta diff --git a/htdocs/langs/nl_BE/other.lang b/htdocs/langs/nl_BE/other.lang index 5bdc98b4c0b..1ffbb0bb385 100644 --- a/htdocs/langs/nl_BE/other.lang +++ b/htdocs/langs/nl_BE/other.lang @@ -3,5 +3,4 @@ Notify_COMPANY_CREATE=Third party aangemaakt FileIsTooBig=Bestanden zijn te groot WebsiteSetup=Setup van de module website WEBSITE_PAGEURL=URL van de pagina -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. WEBSITE_KEYWORDS=Trefwoorden diff --git a/htdocs/langs/nl_BE/products.lang b/htdocs/langs/nl_BE/products.lang index d9fbabf7d93..e7993aa1b39 100644 --- a/htdocs/langs/nl_BE/products.lang +++ b/htdocs/langs/nl_BE/products.lang @@ -6,7 +6,6 @@ OnBuy=Te koop NotOnSell=Niet meer beschikbaar ProductStatusNotOnSell=Niet meer verkrijgbaar ProductStatusOnSellShort=Te koop -Suppliers=Verkoper ListOfStockMovements=Voorradenlijst ProductSellByQuarterHT=Bruto omzetcijfer per trimester ServiceSellByQuarterHT=Bruto omzetcijfer per trimester diff --git a/htdocs/langs/nl_BE/suppliers.lang b/htdocs/langs/nl_BE/suppliers.lang new file mode 100644 index 00000000000..edf3c39315a --- /dev/null +++ b/htdocs/langs/nl_BE/suppliers.lang @@ -0,0 +1,3 @@ +# Dolibarr language file - Source file is en_US - suppliers +Suppliers=Verkoper +ApproveThisOrder=Opdracht goedkeuren diff --git a/htdocs/langs/nl_BE/users.lang b/htdocs/langs/nl_BE/users.lang index 83e85755523..161657b3cc9 100644 --- a/htdocs/langs/nl_BE/users.lang +++ b/htdocs/langs/nl_BE/users.lang @@ -12,7 +12,6 @@ LastGroupsCreated=Nieuwste %s groepen gemaakt LastUsersCreated=Laatste %s gemaakte gebruikers CreateDolibarrThirdParty=Maak Derden CreateInternalUserDesc=Met dit formulier kunt u een interne gebruiker in uw bedrijf / organisatie maken. Om een externe gebruiker (klant, leverancier enz.) Aan te maken, gebruikt u de knop 'Maak Dolibarr Gebruiker aan' van de contactkaart van die partij. -InternalExternalDesc=Een interne gebruiker is een gebruiker die deel uitmaakt van uw bedrijf / organisatie.
    Een externe gebruiker is een klant, verkoper of andere.

    In beide gevallen definieert machtiging rechten op Dolibarr, ook kan de externe gebruiker een ander menu-manager hebben dan de interne gebruiker (zie Home - Setup - Display) ConfirmCreateContact=Weet u zeker dat u een Dolibarr account wilt maken voor deze contactpersoon? ConfirmCreateThirdParty=Weet u zeker dat u een 'derde' wilt maken voor dit lid? NbOfPermissions=Aantal toestemmingen diff --git a/htdocs/langs/nl_NL/accountancy.lang b/htdocs/langs/nl_NL/accountancy.lang index eef07f16977..a25671bd5da 100644 --- a/htdocs/langs/nl_NL/accountancy.lang +++ b/htdocs/langs/nl_NL/accountancy.lang @@ -121,6 +121,7 @@ InvoiceLinesDone=Gekoppelde factuurregels ExpenseReportLines=Te koppelen kostenboekingen ExpenseReportLinesDone=Gekoppelde kostenboekingen IntoAccount=Koppel regel aan grootboekrekening +TotalForAccount=Totaal grootboekrekening Ventilate=Koppelen @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Grootboeknummer voor donaties ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Grootboekrekening om abonnementen te registreren ACCOUNTING_PRODUCT_BUY_ACCOUNT=Standaard grootboekrekening voor de gekochte producten (gebruikt indien niet gedefinieerd in de productfiche) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Grootboekrekening standaard voor de gekochte producten in de EEG (gebruikt indien niet gedefinieerd in het productblad) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Grootboekrekening standaard voor de gekochte producten en geïmporteerd uit de EEG (gebruikt indien niet gedefinieerd in het productblad) ACCOUNTING_PRODUCT_SOLD_ACCOUNT=Standaard grootboekrekening omzet producten (indien niet opgegeven bij productgegevens) ACCOUNTING_PRODUCT_SOLD_INTRA_ACCOUNT=Standaard grootboekrekening voor de in EEG verkochte producten (gebruikt indien niet gedefinieerd bij de productgegevens) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Standaard boekhoudrekening voor de producten die worden verkocht en uitgevoerd uit de EEG (gebruikt indien niet gedefinieerd bij de productgegevens) + ACCOUNTING_SERVICE_BUY_ACCOUNT=Standaard grootboekrekening inkoop diensten (indien niet opgegeven bij dienstgegevens) +ACCOUNTING_SERVICE_BUY_INTRA_ACCOUNT=Grootboekrekening standaard voor de gekochte services in EEC (gebruikt indien niet gedefinieerd in het serviceblad) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Standaard grootboekrekening voor de gekochte services en geïmporteerd uit EEC (gebruikt indien niet gedefinieerd in het serviceblad) ACCOUNTING_SERVICE_SOLD_ACCOUNT=Standaard grootboekrekening omzet diensten (indien niet opgegeven bij dienstgegevens) ACCOUNTING_SERVICE_SOLD_INTRA_ACCOUNT=Standaard grootboekrekening voor de in EEG verkochte diensten (gebruikt indien niet gedefinieerd bij de servicegegevens) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Standaard grootboekrekening voor de diensten die worden verkocht en geëxporteerd uit EEG (gebruikt indien niet gedefinieerd in het serviceblad) @@ -228,11 +234,15 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Onbekende relatie ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Tegenrekening relatie niet gedefinieerd of relatie onbekend. Blokkeringsfout. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Onbekend account van derden en wachtaccount niet gedefinieerd. Blokkeerfout PaymentsNotLinkedToProduct=Betaling niet gekoppeld aan een product / dienst +OpeningBalance=Begin balans ShowOpeningBalance=Toon beginsaldo HideOpeningBalance=Verberg beginsaldo +ShowSubtotalByGroup=Totaal per groep Pcgtype=Rekening hoofdgroep -PcgtypeDesc=Group 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. +PcgtypeDesc=Cluster grootboekrekeningen welke gebruikt worden als vooraf gedefinieerde 'filter'- en' groepeer'-criteria voor sommige boekhoudrapporten. 'INKOMEN' of 'UITGAVEN' worden bijvoorbeeld gebruikt als groepen voor boekhoudrekeningen van producten om het kosten- / inkomstenrapport samen te stellen. + +Reconcilable=Samentrekken TotalVente=Total turnover before tax TotalMarge=Total sales margin @@ -307,11 +317,13 @@ Modelcsv_quadratus=Exporteren naar Quadratus QuadraCompta Modelcsv_ebp=Exporteren naar EBP Modelcsv_cogilog=Exporteren naar Cogilog Modelcsv_agiris=Exporteren naar Agiris -Modelcsv_LDCompta=Exporteren naar LD Compta (v9 en hoger) (test) +Modelcsv_LDCompta=Exporteren voor LD Compta (v9) (test) +Modelcsv_LDCompta10=Exporteren voor LD Compta (v10 en hoger) Modelcsv_openconcerto=Exporteren voor OpenConcerto (test) Modelcsv_configurable=Configureerbare CSV export Modelcsv_FEC=FEC exporteren Modelcsv_Sage50_Swiss=Export voor Sage 50 Zwitserland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Rekeningschema Id ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Instellingen verkopen OptionModeProductSellIntra=Mode verkoop uitgevoerd in EEG OptionModeProductSellExport=Mode-verkopen geëxporteerd naar andere landen OptionModeProductBuy=Instellingen inkopen +OptionModeProductBuyIntra=Modus voor aankopen geïmporteerd in EEC +OptionModeProductBuyExport=Modus voor gekocht geïmporteerd uit andere landen OptionModeProductSellDesc=Omzet grootboekrekening bij producten OptionModeProductSellIntraDesc=Toon alle producten met boekhoudaccount voor verkoop in de EEG. OptionModeProductSellExportDesc=Toon alle producten met een rekening voor overige buitenlandse verkopen. OptionModeProductBuyDesc=Inkoop grootboekrekening bij producten +OptionModeProductBuyIntraDesc=Toon alle producten met grootboekrekening voor aankopen in de EEG. +OptionModeProductBuyExportDesc=Toon alle producten met grootboekrekening voor andere buitenlandse aankopen. CleanFixHistory=Verwijder tegenrekening van regels welke niet voorkomen in het rekeningschema CleanHistory=Verwijder alle koppelingen van gekozen boekjaar, PredefinedGroups=Voorgedefinieerde groepen @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Rekening uit groep verwijderd. SaleLocal=Lokale verkoop SaleExport=Verkoop buitenland SaleEEC=Verkoop binnen EEG +SaleEECWithVAT=Verkoop in de EEG met een btw die niet nul is, dus we veronderstellen dat dit GEEN intracommunautaire verkoop is en de voorgestelde grootboekrekening het standaardproductaccount is. +SaleEECWithoutVATNumber=Verkoop in de EEG zonder btw, maar het btw-nummer van een derde partij is niet gedefinieerd. Voor standaardverkoop vallen we terug op het product-grootboekrekening. U kunt indien nodig het btw-nummer van een derde partij of het productaccount aanpassen. ## Dictionary Range=Grootboeknummer van/tot diff --git a/htdocs/langs/nl_NL/admin.lang b/htdocs/langs/nl_NL/admin.lang index 7875a74a1c2..9d99e689e2e 100644 --- a/htdocs/langs/nl_NL/admin.lang +++ b/htdocs/langs/nl_NL/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Webserver gebruiker / groep NoSessionFound=Uw PHP-configuratie lijkt geen lijst van actieve sessies toe te staan. De map die wordt gebruikt om sessies op te slaan ( %s ) kan worden beschermd (bijvoorbeeld door OS-machtigingen of door PHP-richtlijn open_basedir). DBStoringCharset=Database karakterset voor het opslaan van gegevens DBSortingCharset=Database karakterset voor het sorteren van gegevens +HostCharset=Host-tekenset ClientCharset=Cliënt tekenset ClientSortingCharset=Cliënt vergelijking WarningModuleNotActive=Module %s dient te worden ingeschakeld @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Opmerking: uw PHP-configuratie beperkt momenteel NoMaxSizeByPHPLimit=Opmerking: Geen limiet ingesteld in uw PHP instellingen MaxSizeForUploadedFiles=Maximale grootte voor geüploade bestanden (0 om uploaden niet toe te staan) UseCaptchaCode=Gebruik een grafische code (CAPTCHA) op de aanmeldingspagina (SPAM preventie) -AntiVirusCommand= Het volledige pad naar het antiviruscommando -AntiVirusCommandExample= Voorbeeld voor ClamWin: c:\\Program Files (x86)\\ClamWin\\bin\\clamscan.exe
    Voorbeeld voor ClamAv: /usr/bin/clamscan +AntiVirusCommand=Het volledige pad naar het antiviruscommando +AntiVirusCommandExample=Voorbeeld voor ClamAv Daemon (vereist clamav-daemon): / usr / bin / clamdscan
    Voorbeeld voor ClamWin (erg langzaam): c: \\ Progra ~ 1 \\ ClamWin \\ bin \\ clamscan.exe AntiVirusParam= Aanvullende parameters op de opdrachtregel -AntiVirusParamExample= Voorbeeld voor ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" +AntiVirusParamExample=Voorbeeld voor ClamAv Daemon: --fdpass
    Voorbeeld voor ClamWin: --database = "C: \\ Program Files (x86) \\ ClamWin \\ lib" ComptaSetup=Instellingen van de boekhoudkundige module UserSetup=Gebruikersbeheer instellingen MultiCurrencySetup=Setup meerdere valuta's @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Functionaliteit uitgeschakeld in de demonstratie FeatureAvailableOnlyOnStable=Functie alleen beschikbaar bij officiële stabiele versies BoxesDesc=Widgets zijn componenten die informatie tonen die u kunt toevoegen om sommige pagina's te personaliseren. U kunt kiezen of u de widget wilt weergeven of niet door de doelpagina te selecteren en op 'Activeren' te klikken of door op de prullenbak te klikken om deze uit te schakelen. OnlyActiveElementsAreShown=Alleen elementen van ingeschakelde modules worden getoond. -ModulesDesc=De modules / applicaties bepalen welke functies beschikbaar zijn in de software. Sommige modules vereisen dat machtigingen worden verleend aan gebruikers na het activeren van de module. Klik op de aan / uit knop (aan het einde van de module lijn) aan / uit te schakelen een module / applicatie. +ModulesDesc=De modules / applicaties bepalen welke features beschikbaar zijn in de software. Voor sommige modules moet toestemming worden verleend aan gebruikers na het activeren van de module. Klik op de aan / uitknop %s van elke module om een module / applicatie in of uit te schakelen. ModulesMarketPlaceDesc=U kunt meer modules downloaden van externe websites op het internet... ModulesDeployDesc=Als machtigingen op uw bestandssysteem dit toestaan, kunt u dit hulpprogramma gebruiken om een externe module te implementeren. De module is dan zichtbaar op het tabblad %s . ModulesMarketPlaces=Vind externe apps of modules @@ -212,6 +213,7 @@ CompatibleUpTo=Compatibel met versie %s NotCompatible=Deze module lijkt niet compatibel met uw Dolibarr %s (Min %s - Max %s). CompatibleAfterUpdate=Deze module vereist een update van uw Dolibarr %s (Min %s - Max %s). SeeInMarkerPlace=Zie op de Marktplaats +SeeSetupOfModule=Zie setup van module%s Updated=Bijgewerkt Nouveauté=Nieuwigheid AchatTelechargement=Kopen/Downloaden @@ -221,6 +223,7 @@ DoliPartnersDesc=Lijst van bedrijven die op maat ontwikkelde modules of functies WebSiteDesc=Externe websites voor meer add-on (niet-core) modules ... DevelopYourModuleDesc=Enkele oplossingen om uw eigen module te ontwikkelen ... URL=URL +RelativeURL=Relatieve URL BoxesAvailable=Beschikbare widgets BoxesActivated=Widgets geactiveerd ActivateOn=Activeren op @@ -328,7 +331,7 @@ SetupIsReadyForUse=Module-implementatie is voltooid. U moet de module in uw toep NotExistsDirect=De alternatieve hoofdmap is niet gedefinieerd in een bestaande map.
    InfDirAlt=Vanaf versie 3 is het mogelijk om een alternatieve root directory te definiëren. Dit stelt je in staat om op dezelfde plaats zowel plug-ins als eigen templates te bewaren.
    Maak gewoon een directory op het niveau van de root van Dolibarr (bv met de naam: aanpassing).
    InfDirExample=
    Leg dit vast in het bestand conf.php
    $dolibarr_main_url_root_alt='/custom'
    $dolibarr_main_document_root_alt='/path/of/dolibarr/htdocs/custom'
    Als deze lijnen zijn inactief gemaakt met een "#" teken, verwijder dit teken dan om ze te activeren. -YouCanSubmitFile=You can upload the .zip file of module package from here: +YouCanSubmitFile=U kunt het .zip-bestand van het modulepakket vanaf hier uploaden: CurrentVersion=Huidige versie van Dolibarr CallUpdatePage=Blader naar de pagina die de databasestructuur en gegevens bijwerkt: %s. LastStableVersion=Laatste stabiele versie @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Checkboxen ExtrafieldCheckBoxFromList=Checkboxen uit tabel ExtrafieldLink=Link naar een object ComputedFormula=Berekend veld -ComputedFormulaDesc=U kunt hier een formule invoeren met andere eigenschappen van het object of een willekeurige PHP-codering om een dynamische berekende waarde te krijgen. U kunt alle PHP-compatibele formules gebruiken, inclusief de "?" voorwaarde-operator en het volgende globale object: $ db, $ conf, $ langs, $ mysoc, $ user, $ object .
    WAARSCHUWING : Mogelijk zijn slechts enkele eigenschappen van $ object beschikbaar. Als u eigenschappen nodig hebt die niet zijn geladen, haalt u het object gewoon in uw formule op zoals in het tweede voorbeeld.
    Als u een berekend veld gebruikt, kunt u geen waarde invoeren via de interface. Als er een syntaxisfout is, kan de formule ook niets retourneren.

    Voorbeeld van formule:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Voorbeeld om een object opnieuw te laden
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Ander voorbeeld van een formule om de belasting van het object en het bovenliggende object te forceren:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +ComputedFormulaDesc=U kunt hier een formule invoeren met andere eigenschappen van het object of een PHP-codering om een dynamisch berekende waarde te krijgen. U kunt alle PHP-compatibele formules gebruiken, inclusief de "?" condition operator en volgend globaal object: $ db, $ conf, $ langs, $ mysoc, $ user, $ object .
    WAARSCHUWING : Mogelijk zijn slechts enkele eigenschappen van $ object beschikbaar. Als je eigenschappen nodig hebt die niet zijn geladen, haal dan gewoon het object in je formule zoals in het tweede voorbeeld.
    Als u een berekend veld gebruikt, betekent dit dat u geen enkele waarde uit de interface kunt invoeren. Als er een syntaxisfout is, retourneert de formule mogelijk ook niets.

    Voorbeeld van formule:
    $ object-> id < 10 ? round($object-> id / 2, 2): ($ object-> id + 2 * $ user-> id) * (int) substr ($ mysoc-> zip, 1, 2 )

    Voorbeeld om object
    (($ $ reloadedobj = new Societe ($ db)) && ($ reloadedobj-> fetchNoCompute ($ obj-> id? $ obj-> id> ($ obj-> id: ($ obj-)) te herladen > rowid: $ object-> id))> 0))? $ reloadedobj-> array_options ['options_extrafieldkey'] * $ reloadedobj-> capital / 5: '-1'

    Ander voorbeeld van formule om het laden van een object en het bovenliggende object te forceren:
    (($ reloadedbj0) )) && ($ reloadedobj-> fetchNoCompute ($ object-> id)> 0) && ($ secondloadedobj = nieuw project ($ db)) && ($ secondloadedobj-> fetchNoCompute ($ reloadedobj-> fk_project)> 0))? $ secondloadedobj-> ref: 'Parent project not found' Computedpersistent=Berekend veld opslaan ComputedpersistentDesc=Berekende extra velden worden opgeslagen in de database, maar de waarde wordt alleen opnieuw berekend als het object van dit veld wordt gewijzigd. Als het berekende veld afhankelijk is van andere objecten of algemene gegevens, kan deze waarde onjuist zijn !! ExtrafieldParamHelpPassword=Dit veld leeg laten betekent dat deze waarde zonder codering wordt opgeslagen (veld mag alleen worden verborgen met een ster op het scherm).
    Stel 'auto' in om de standaard coderingsregel te gebruiken om het wachtwoord in de database op te slaan (waarde lezen is dan alleen de hash, geen manier om de oorspronkelijke waarde op te halen) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Laat leeg om standaardwaarde te gebruiken DefaultLink=Standaard link SetAsDefault=Gebruik standaard ValueOverwrittenByUserSetup=Waarschuwing, deze waarde kan worden overschreven door de gebruiker specifieke setup (elke gebruiker kan zijn eigen ClickToDial url ingestellen) -ExternalModule=Externe module - geïnstalleerd in map %s +ExternalModule=Externe module +InstalledInto=Geïnstalleerd in directory %s BarcodeInitForthird-parties=Massa streepjescode initialisatie relaties BarcodeInitForProductsOrServices=Mass barcode init of reset voor producten of diensten CurrentlyNWithoutBarCode=Momenteel hebt u een %s record op %s%s zonder gedefinieerde streepjescode. @@ -642,7 +646,7 @@ Module50000Desc=Bied klanten een PayBox online betaalpagina (credit / debit card Module50100Name=POS SimplePOS Module50100Desc=Point of Sale-module SimplePOS (eenvoudige POS). Module50150Name=POS TakePOS -Module50150Desc=Point of Sale module TakePOS (touchscreen POS, for shops, bars or restaurants). +Module50150Desc=Point of Sale module TakePOS (touchscreen POS, voor winkels, bars of restaurants). Module50200Name=Paypal Module50200Desc=Bied klanten een PayPal-online betaalpagina (PayPal-account of credit- / debetkaarten). Dit kan worden gebruikt om uw klanten toe te staan ad-hocbetalingen te doen of betalingen gerelateerd aan een specifiek Dolibarr-object (factuur, bestelling, enz ...) Module50300Name=Stripe @@ -947,7 +951,7 @@ DictionaryCanton=Staten / Provincies DictionaryRegion=Regio DictionaryCountry=Landen DictionaryCurrency=Valuta -DictionaryCivility=Titel van de beleefdheid +DictionaryCivility=Eervolle titels DictionaryActions=Agenda evenementen DictionarySocialContributions=Soorten sociale of fiscale belastingen DictionaryVAT=BTW-tarieven of Verkoop Tax tarieven @@ -988,6 +992,7 @@ VATIsNotUsedDesc=Standaard is de voorgestelde BTW 0. Dit kan gebruikt worden in VATIsUsedExampleFR=In Frankrijk betekent dit dat bedrijven of organisaties een echt fiscaal systeem hebben (Vereenvoudigd echt of normaal echt). Een systeem waarin btw wordt aangegeven. VATIsNotUsedExampleFR=In Frankrijk betekent dit verenigingen die niet-omzetbelasting zijn aangegeven of bedrijven, organisaties of vrije beroepen die hebben gekozen voor het micro-onderneming fiscale systeem (omzetbelasting in franchise) en een franchise omzetbelasting hebben betaald zonder aangifte omzetbelasting. Bij deze keuze wordt de verwijzing "Niet van toepassing omzetbelasting - art-293B van CGI" op facturen weergegeven. ##### Local Taxes ##### +TypeOfSaleTaxes=Soort omzetbelasting LTRate=Tarief LocalTax1IsNotUsed=Gebruik geen tweede belasting LocalTax1IsUsedDesc=Gebruik een tweede type belasting (anders dan de eerste) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=Het IRPF-tarief standaard bij het maken van prospects, fac LocalTax2IsNotUsedDescES=Standaard is de voorgestelde IRPF 0. Einde van de regel. LocalTax2IsUsedExampleES=In Spanje, freelancers en onafhankelijke professionals die diensten aanbieden alsmede bedrijven die voor het belastingsysteem van modules hebben gekozen. LocalTax2IsNotUsedExampleES=In Spanje zijn het bedrijven die niet onderworpen zijn aan het belastingstelsel van modules. +RevenueStampDesc=De "belastingzegel" of "opbrengstzegel" is een vaste belasting die u per factuur betaalt (deze is niet afhankelijk van het factuurbedrag). Het kan ook een procentuele belasting zijn, maar het gebruik van het tweede of derde type belasting is beter voor procentuele belastingen, omdat belastingzegels geen rapportage bieden. Slechts enkele landen gebruiken dit type belasting. +UseRevenueStamp=Gebruik een belastingzegel +UseRevenueStampExample=De waarde van het belastingzegel wordt standaard gedefinieerd in de instelling van woordenboeken (%s-%s-%s) CalcLocaltax=Rapporten over lokale belastingen CalcLocaltax1=Verkopen - Aankopen CalcLocaltax1Desc=Lokale belastings rapporten worden berekend met het verschil tussen verkopen en aankopen @@ -1018,6 +1026,7 @@ CalcLocaltax2=Aankopen CalcLocaltax2Desc=Lokale Belastingen rapporten zijn het totaal van balastingen aankopen CalcLocaltax3=Verkopen CalcLocaltax3Desc=Lokale Belastingen rapporten zijn het totaal van belastingen verkoop +NoLocalTaxXForThisCountry=Volgens de instelling van belastingen (Zie %s - %s - %s), wordt deze in uw land niet gebruikt. LabelUsedByDefault=Standaard te gebruiken label indien er geen vertaling kan worden gevonden voor de code LabelOnDocuments=Etiket op documenten LabelOrTranslationKey=Label- of vertaalsleutel @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Onkostendeclaratie ter goedkeuring Delays_MAIN_DELAY_HOLIDAYS=Verzoek voor goedkeuring SetupDescription1=Voordat u Dolibarr begint te gebruiken, moeten enkele beginparameters worden gedefinieerd en modules ingeschakeld / geconfigureerd. SetupDescription2=De volgende twee secties zijn verplicht (de twee eerste vermeldingen in het Setup-menu): -SetupDescription3=%s -> %s
    Basisparameters die worden gebruikt om het standaardgedrag van uw toepassing aan te passen (bijvoorbeeld voor landgerelateerde functies). -SetupDescription4=%s -> %s
    Deze software is een pakket van vele modules / applicaties, allemaal min of meer onafhankelijk. De modules die relevant zijn voor uw behoeften, moeten worden ingeschakeld en geconfigureerd. Nieuwe items / opties worden toegevoegd aan menu's met de activering van een module. +SetupDescription3=  %s -> %s

    Basisparameters die worden gebruikt om het standaardgedrag van uw toepassing aan te passen (bijvoorbeeld voor landgerelateerde functies). +SetupDescription4=  %s -> %s

    Dit programma is een samenstelling van vele modules / applicaties. De modules die betrekking hebben op uw behoeften moeten worden ingeschakeld en geconfigureerd. Menu-items verschijnen met de activering van deze modules. SetupDescription5=Andere items in het Setup-menu beheren optionele parameters. LogEvents=Veiligheidsauditgebeurtenissen Audit=Audit @@ -1128,7 +1137,7 @@ LogEventDesc=Schakel logboekregistratie in voor specifieke beveiligingsgebeurten AreaForAdminOnly=Setup functies kunnen alleen door Administrator gebruikers worden ingesteld SystemInfoDesc=Systeeminformatie is technische informatie welke u in alleen-lezen modus krijgt en alleen door beheerders is in te zien. SystemAreaForAdminOnly=Dit gebied is alleen beschikbaar voor beheerders. Gebruikersrechten van Dolibarr kunnen deze beperking niet wijzigen. -CompanyFundationDesc=Bewerk de informatie van het bedrijf / de entiteit. Klik op de knop "%s" onderaan de pagina. +CompanyFundationDesc=Bewerk de gegevens van uw bedrijf / organisatie. Klik op de knop "%s" onderaan de pagina als u klaar bent. AccountantDesc=Als u een externe accountant / boekhouder hebt, kunt u hier de informatie bewerken. AccountantFileNumber=Accountant code DisplayDesc=Parameters die het uiterlijk en gedrag van Dolibarr beïnvloeden, kunnen hier worden gewijzigd. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Regels om wachtwoorden te genereren en te valideren DisableForgetPasswordLinkOnLogonPage=De link "Wachtwoord vergeten" niet weergeven op de aanmeldingspagina UsersSetup=Gebruikersmoduleinstellingen UserMailRequired=E-mail vereist om een nieuwe gebruiker te maken +UserHideInactive=Verberg inactieve gebruikers uit alle combinatielijsten van gebruikers (niet aanbevolen: dit kan betekenen dat u op sommige pagina's niet kunt filteren of zoeken op oude gebruikers) +UsersDocModules=Documentsjablonen voor documenten die zijn gegenereerd op basis van een gebruikersrecord +GroupsDocModules=Documentsjablonen voor documenten die zijn gegenereerd op basis van een groepsrecord ##### HRM setup ##### HRMSetup=Instellingen HRM module ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Factuur documentsjablonen BillsPDFModulesAccordindToInvoiceType=Factuur documenteert modellen volgens factuurtype PaymentsPDFModules=Modellen betaal documenten ForceInvoiceDate=Forceer factuurdatum naar validatiedatum -SuggestedPaymentModesIfNotDefinedInInvoice=Voorgestelde betaalwijze standaard op de factuur, indien niet ingesteld voor de betreffende factuur +SuggestedPaymentModesIfNotDefinedInInvoice=Voorgestelde betaalmethode op factuur standaard indien niet gedefinieerd op de factuur SuggestPaymentByRIBOnAccount=Stel de betaling voor door opname op rekening SuggestPaymentByChequeToAddress=Stel betaling per cheque voor aan FreeLegalTextOnInvoices=Vrije tekst op facturen @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Instelling leveranciersbetalingen PropalSetup=Offertemoduleinstellingen ProposalsNumberingModules=Offertenummeringmodules ProposalsPDFModules=Offertedocumentsjablonen -SuggestedPaymentModesIfNotDefinedInProposal=Voorgestelde betalingsmodus op voorstel standaard indien niet gedefinieerd voor voorstel +SuggestedPaymentModesIfNotDefinedInProposal=Voorgestelde betaalmethode als standaard indien niet gedefinieerd in het voorstel FreeLegalTextOnProposal=Vrije tekst op Offertes WatermarkOnDraftProposal=Watermerk op ontwerp offertes (geen indien leeg) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Vraag naar bankrekening bestemming van het voorstel @@ -1322,6 +1334,7 @@ WAREHOUSE_ASK_WAREHOUSE_DURING_ORDER=Vraag te gebruiken magazijn bij order ##### Suppliers Orders ##### BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_ORDER=Vraag naar bankrekeningbestemming van bestelling ##### Orders ##### +SuggestedPaymentModesIfNotDefinedInOrder=Voorgestelde betaalmethode voor standaard verkooporder indien niet gedefinieerd in de bestelling OrdersSetup=Beheer van verkooporders OrdersNumberingModules=Opdrachtennummeringmodules OrdersModelModule=Oprachtendocumentsjablonen @@ -1686,9 +1699,9 @@ CashDeskIdWareHouse=Kies magazijn te gebruiken voor voorraad daling StockDecreaseForPointOfSaleDisabled=Voorraadafname vanaf verkooppunt uitgeschakeld StockDecreaseForPointOfSaleDisabledbyBatch=Voorraadafname in POS is niet compatibel met module Serieel / Lotbeheer (momenteel actief), dus voorraadafname is uitgeschakeld. CashDeskYouDidNotDisableStockDecease=U hebt de voorraaddaling niet uitgeschakeld bij een verkoop vanuit het verkooppunt. Daarom is een magazijn vereist. -CashDeskForceDecreaseStockLabel=Stock decrease for batch products was forced. -CashDeskForceDecreaseStockDesc=Decrease first by the oldest eatby and sellby dates. -CashDeskReaderKeyCodeForEnter=Key code for "Enter" defined in barcode reader (Example: 13) +CashDeskForceDecreaseStockLabel=Afname van voorraad voor batchproducten werd geforceerd. +CashDeskForceDecreaseStockDesc=Verlaag eerst met de oudste eet- en verkoopdata. +CashDeskReaderKeyCodeForEnter=Code voor "Enter" gedefinieerd in barcodescanner (Voorbeeld: 13) ##### Bookmark ##### BookmarkSetup=Weblinkmoduleinstellingen BookmarkDesc=Met deze module kunt u bladwijzers beheren. U kunt ook snelkoppelingen toevoegen aan Dolibarr-pagina's of externe websites in het linkermenu. @@ -1720,7 +1733,7 @@ MultiCompanySetup=Multi-Bedrijfmoduleinstellingen ##### Suppliers ##### SuppliersSetup=Installatie van leveranciersmodule SuppliersCommandModel=Volledige sjabloon van bestelling -SuppliersCommandModelMuscadet=Volledige sjabloon van bestelling +SuppliersCommandModelMuscadet=Volledige sjabloon van bestelling (oude implementatie van cornas-sjabloon) SuppliersInvoiceModel=Volledige sjabloon van leveranciersfactuur SuppliersInvoiceNumberingModel=Nummeringsmodellen voor leveranciersfacturen IfSetToYesDontForgetPermission=Als deze is ingesteld op een niet-nulwaarde, vergeet dan niet om machtigingen te verstrekken aan groepen of gebruikers die zijn toegestaan voor de tweede goedkeuring @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Verberg afbeeldingen in Top menu LeftMenuBackgroundColor=Achtergrondkleur voor linkermenu BackgroundTableTitleColor=Achtergrondkleur voor tabeltitelregel BackgroundTableTitleTextColor=Tekstkleur voor tabeltitelregel +BackgroundTableTitleTextlinkColor=Tekstkleur linkregel tabeltitel BackgroundTableLineOddColor=Achtergrondkleur voor oneven tabellijnen BackgroundTableLineEvenColor=Achtergrondkleur voor gelijkmatige tabellijnen MinimumNoticePeriod=Minimale opzegtermijn (uw verlofaanvraag moet vóór deze vertraging worden gedaan) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Dolibarr Reference niet gevonden in Message ID FormatZip=Zip MainMenuCode=Menu toegangscode (hoofdmenu) ECMAutoTree=Toon automatische ECM-structuur -OperationParamDesc=Definieer waarden die moeten worden gebruikt voor actie of hoe waarden worden geëxtraheerd. Bijvoorbeeld:
    objproperty1 = SET: abc
    objproperty1 = SET: een waarde met vervanging van __objproperty1__
    objproperty3 = SETIFEMPTY: abc
    objproperty4 = EXTRACT: HEADER. (. *) X-Myheaderkey * [^ \\ s] +
    options_myextrafield = EXTRACT: BETREFT: ([^ \\ s] *)
    object.objproperty5 = EXTRACT: BODY: Mijn bedrijfsnaam is \\ s ([^ \\ s] *)

    Gebruik een ; char als scheidingsteken om meerdere eigenschappen te extraheren of in te stellen. +OperationParamDesc=Definieer de waarden die u wilt gebruiken voor het object van de actie of hoe u waarden kunt extraheren. Bijvoorbeeld:
    objproperty1 = SET: de waarde om
    objproperty2 = SET in te stellen: een waarde met vervanging van __objproperty1__
    objproperty3 = SETIFEMPTY:waarde gebruikt als objproperty3 is niet EX4: a2 = a0: ([^ \\ s] *)
    options_myextrafield1 = EXTRACT: SUBJECT: ([^ & # 92; n] *)
    object.objproperty5 = EXTRACT: BODY: Mijn bedrijfsnaam is \\ s ([^ \\ s] *) a0342ff
    Gebruik het ; char als scheidingsteken om verschillende eigenschappen te extraheren of in te stellen. OpeningHours=Openingstijden OpeningHoursDesc=Voer hier de reguliere openingstijden van uw bedrijf in. ResourceSetup=Configuratie van bronmodule @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Waarschuwing, hogere waarden vertragen ModuleActivated=Module %s is geactiveerd en vertraagt de interface EXPORTS_SHARE_MODELS=Exportmodellen zijn met iedereen te delen ExportSetup=Installatie van exportmodule +ImportSetup=Instellen van module Import InstanceUniqueID=Uniek ID van de instantie SmallerThan=Kleiner dan LargerThan=Groter dan @@ -1972,12 +1987,16 @@ ConfirmDeleteEmailCollector=Weet je zeker dat je deze e-mailverzamelaar wilt ver RecipientEmailsWillBeReplacedWithThisValue=E-mails van ontvangers worden altijd vervangen door deze waarde AtLeastOneDefaultBankAccountMandatory=Er moet minimaal 1 standaardbankrekening worden gedefinieerd RESTRICT_ON_IP=Alleen toegang tot bepaalde host-IP's toestaan (jokerteken niet toegestaan, gebruik ruimte tussen waarden). Leeg betekent dat elke gastheer toegang heeft. -IPListExample=127.0.0.1 192.168.0.2 [::1] +IPListExample=127.0.0.1 192.168.0.2 [:: 1] BaseOnSabeDavVersion=Gebaseerd op de SabreDAV-versie van de bibliotheek NotAPublicIp=Geen openbaar IP MakeAnonymousPing=Maak een anonieme ping '+1' naar de Dolibarr-funderingsserver (1 keer alleen gedaan na installatie) zodat de stichting het aantal Dolibarr-installaties kan tellen. FeatureNotAvailableWithReceptionModule=Functie niet beschikbaar wanneer module-ontvangst is ingeschakeld EmailTemplate=Sjabloon voor e-mail EMailsWillHaveMessageID=E-mails hebben een tag 'Verwijzingen' die overeenkomen met deze syntaxis -PDF_USE_ALSO_LANGUAGE_CODE=Als u een bepaalde teksttitel in uw PDF wilt dupliceren in 2 verschillende talen in dezelfde PDF, moet u hier deze tweede taal instellen, zodat de gegenereerde PDF 2 verschillende talen op dezelfde pagina bevat, de taal die is gekozen bij het genereren van PDF en deze (slechts enkele PDF-sjablonen ondersteunen dit). Voor 1 taal per PDF laat u dit leeg. -FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +PDF_USE_ALSO_LANGUAGE_CODE=Als u wilt dat sommige teksten in uw PDF worden gedupliceerd in 2 verschillende talen in dezelfde gegenereerde PDF, moet u hier deze tweede taal instellen, zodat de gegenereerde PDF 2 verschillende talen op dezelfde pagina bevat, degene die is gekozen bij het genereren van PDF en deze ( slechts enkele PDF-sjablonen ondersteunen dit). Voor 1 taal per pdf leeg houden. +FafaIconSocialNetworksDesc=Voer hier de code van een FontAwesome-pictogram in. Als je niet weet wat FontAwesome is, kun je het generieke waarde fa-adresboek gebruiken. +RssNote=Opmerking: elke RSS-feeddefinitie biedt een widget die u moet inschakelen om deze beschikbaar te hebben in het dashboard +JumpToBoxes=Ga naar Setup -> Widgets +MeasuringUnitTypeDesc=Gebruik hier een waarde als "grootte", "oppervlakte", "volume", "gewicht", "tijd" +MeasuringScaleDesc=De schaal is het aantal plaatsen dat u nodig heeft om het decimale gedeelte te verplaatsen zodat het overeenkomt met de standaard referentie-eenheid. Voor het type "tijd" is dit het aantal seconden. Waarden tussen 80 en 99 zijn gereserveerde waarden. diff --git a/htdocs/langs/nl_NL/bills.lang b/htdocs/langs/nl_NL/bills.lang index 7b5dd51d05f..ecbaf1f36d6 100644 --- a/htdocs/langs/nl_NL/bills.lang +++ b/htdocs/langs/nl_NL/bills.lang @@ -66,9 +66,9 @@ paymentInInvoiceCurrency=Factuur valuta PaidBack=Terugbetaald DeletePayment=Betaling verwijderen ConfirmDeletePayment=Weet u zeker dat u deze betaling wilt verwijderen? -ConfirmConvertToReduc=Wilt u deze %s omzetten in een korting? +ConfirmConvertToReduc=Wilt u deze %s omzetten in een beschikbaar tegoed? ConfirmConvertToReduc2=Het bedrag wordt opgeslagen bij alle kortingen en kan worden gebruikt als korting voor een huidige of toekomstige factuur voor deze klant. -ConfirmConvertToReducSupplier=Wilt u deze %s omzetten in een korting? +ConfirmConvertToReducSupplier=Wilt u deze %s omzetten in een beschikbaar tegoed? ConfirmConvertToReducSupplier2=Het bedrag wordt opgeslagen bij alle kortingen en kan worden gebruikt als korting voor een huidige of toekomstige factuur voor deze leverancier. SupplierPayments=Leveranciersbetalingen ReceivedPayments=Ontvangen betalingen @@ -209,17 +209,13 @@ NumberOfBillsByMonth=Aantal facturen per maand AmountOfBills=Bedrag van de facturen AmountOfBillsHT=Bedrag van facturen (excl. BTW) AmountOfBillsByMonthHT=Totaal aan facturen per maand (excl. belasting) -ShowSocialContribution=Toon sociale/fiscale belasting -ShowBill=Toon factuur -ShowInvoice=Toon factuur -ShowInvoiceReplace=Toon vervangingsfactuur -ShowInvoiceAvoir=Toon creditnota -ShowInvoiceDeposit=Bekijk factuurbetalingen -ShowInvoiceSituation=Situatie factuur weergeven UseSituationInvoices=Situatiefactuur toestaan UseSituationInvoicesCreditNote=Toestaan factuur creditnota Retainedwarranty=Ingehouden garantie +AllowedInvoiceForRetainedWarranty=Behouden garantie bruikbaar op de volgende soorten facturen RetainedwarrantyDefaultPercent=Standaardgarantiepercentage behouden +RetainedwarrantyOnlyForSituation=Maak "bewaarde garantie" alleen beschikbaar voor situatie facturen +RetainedwarrantyOnlyForSituationFinal=Op facturen van situaties wordt de globale aftrek voor "behouden garantie" alleen toegepast op de eindsituatie ToPayOn=Te betalen op %s toPayOn=te betalen op %s RetainedWarranty=Ingehouden garantie @@ -230,7 +226,6 @@ setretainedwarranty=Set behouden garantie setretainedwarrantyDateLimit=Stel de bewaarde garantiedatumlimiet in RetainedWarrantyDateLimit=Behouden garantiedatum limiet RetainedWarrantyNeed100Percent=De situatiefactuur moet 100%% zijn om op de PDF te worden weergegeven -ShowPayment=Toon betaling AlreadyPaid=Reeds betaald AlreadyPaidBack=Reeds terugbetaald AlreadyPaidNoCreditNotesNoDeposits=Reeds betaald (zonder creditnota's en stortingen's) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Gegenereerd van sjabloonfactuur %s WarningInvoiceDateInFuture=Waarschuwing, de factuurdatum ligt hoger dan de huidige datum WarningInvoiceDateTooFarInFuture=Waarschuwing, de factuurdatum ligt te ver van de huidige datum ViewAvailableGlobalDiscounts=Bekijk beschikbare kortingen +GroupPaymentsByModOnReports=Groepeer betalingen per modus op rapporten # PaymentConditions Statut=Status PaymentConditionShortRECEP=Vervalt bij ontvangst @@ -509,11 +505,11 @@ ToMakePayment=Betaal ToMakePaymentBack=Terugbetalen ListOfYourUnpaidInvoices=Lijst van onbetaalde facturen NoteListOfYourUnpaidInvoices=Nota: deze lijst bevat enkel facturen voor derde partijen waarvoor je als verkoopsvertegenwoordiger aangegeven bent. -RevenueStamp=Taxzegel +RevenueStamp=Belastingzegel YouMustCreateInvoiceFromThird=Deze optie is alleen beschikbaar wanneer u een factuur maakt op het tabblad "Klant" van een relatie YouMustCreateInvoiceFromSupplierThird=Deze optie is alleen beschikbaar bij het maken van een factuur op het tabblad "Leverancier" bij relatie YouMustCreateStandardInvoiceFirstDesc=Maak eerst een standaard factuur en converteer naar een sjabloon om deze als sjabloon te gebruiken -PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template (old implementation of Sponge template) +PDFCrabeDescription=Factuur PDF-sjabloon Crabe. Een volledig factuursjabloon (oude implementatie van Sponge-sjabloon) PDFSpongeDescription=Factuur PDF-sjabloon Sponge. Een complete sjabloon voor een factuur PDFCrevetteDescription=Factuur PDF-sjabloon 'Crevette'. Een compleet sjabloon voor facturen TerreNumRefModelDesc1=Geeft een getal in de vorm van %syymm-nnnn voor standaard facturen en %syymm-nnnn voor creditnota's, met yy voor jaar, mm voor maand en nnnn als opeenvolgende getallenreeks die niet terug op 0 komt @@ -575,3 +571,4 @@ AutoFillDateTo=Stel de einddatum in voor de servicelijn met de volgende factuur- AutoFillDateToShort=Tot datum MaxNumberOfGenerationReached=Max aantal gegenereerd bereikt BILL_DELETEInDolibarr=Factuur verwijderd +BILL_SUPPLIER_DELETEInDolibarr=Leverancierfactuur verwijderd diff --git a/htdocs/langs/nl_NL/blockedlog.lang b/htdocs/langs/nl_NL/blockedlog.lang index 296cc06c956..f455e80d1d6 100644 --- a/htdocs/langs/nl_NL/blockedlog.lang +++ b/htdocs/langs/nl_NL/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Niet aanpasbare logboeken ShowAllFingerPrintsMightBeTooLong=Toon alle gearchiveerde logs (kunnen lang zijn) ShowAllFingerPrintsErrorsMightBeTooLong=Toon alle ongeldige archieflogboeken (kunnen lang zijn) DownloadBlockChain=Vingerafdrukken downloaden -KoCheckFingerprintValidity=Gearchiveerde logboekinvoer is niet geldig. Het betekent dat iemand (een hacker?) Sommige gegevens van deze opname heeft gewijzigd nadat deze is opgenomen, of de vorige gearchiveerde record heeft gewist (controleer of die regel met vorige # bestaat). +KoCheckFingerprintValidity=Gearchiveerde logboekinvoer is niet geldig. Het betekent dat iemand (een hacker?) Sommige gegevens van dit record heeft gewijzigd nadat het is opgenomen of het vorige gearchiveerde record heeft gewist (controleer of die regel met het vorige # bestaat). OkCheckFingerprintValidity=Gearchiveerde logboekrecord is geldig. De gegevens op deze regel zijn niet gewijzigd en de invoer volgt op de vorige. OkCheckFingerprintValidityButChainIsKo=Gearchiveerd log lijkt geldig in vergelijking met de vorige, maar de ketting was eerder beschadigd. AddedByAuthority=Opgeslagen in autoriteit op afstand diff --git a/htdocs/langs/nl_NL/boxes.lang b/htdocs/langs/nl_NL/boxes.lang index a15f7a40511..a2134a6df91 100644 --- a/htdocs/langs/nl_NL/boxes.lang +++ b/htdocs/langs/nl_NL/boxes.lang @@ -27,8 +27,8 @@ BoxTitleLastSuppliers=Laatste %s opgenomen leveranciers BoxTitleLastModifiedSuppliers=Verkopers: laatste %s gewijzigd BoxTitleLastModifiedCustomers=Klanten: laatste %s gewijzigd BoxTitleLastCustomersOrProspects=Laatste %s klanten of prospects -BoxTitleLastCustomerBills=Laatste %s Klantfacturen -BoxTitleLastSupplierBills=Laatste %s Leveranciersfacturen +BoxTitleLastCustomerBills=Laatste %s gewijzigde klantfacturen +BoxTitleLastSupplierBills=Laatste %s gewijzigde leveranciersfacturen BoxTitleLastModifiedProspects=Vooruitzichten: laatste %s gewijzigd BoxTitleLastModifiedMembers=Laatste %s leden BoxTitleLastFicheInter=Laatste %s aangepaste interventies diff --git a/htdocs/langs/nl_NL/cashdesk.lang b/htdocs/langs/nl_NL/cashdesk.lang index 0b39ffc7cc6..cbb692314ea 100644 --- a/htdocs/langs/nl_NL/cashdesk.lang +++ b/htdocs/langs/nl_NL/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Voeg dit artikel RestartSelling=Ga terug op de verkopen SellFinished=Verkoop gereed PrintTicket=Print bon +SendTicket=Bon versturen NoProductFound=Geen artikel gevonden ProductFound=product gevonden NoArticle=Geen artikel @@ -48,6 +49,7 @@ Footer=Voetnoot AmountAtEndOfPeriod=Bedrag aan het einde van de periode (dag, maand of jaar) TheoricalAmount=Theoretisch bedrag RealAmount=Aanwezig bedrag +CashFence=Cash hek CashFenceDone=Kas te ontvangen voor de periode NbOfInvoices=Aantal facturen Paymentnumpad=Soort betaling om de betaling in te voeren @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS heeft product-categorieën nodig om te werken OrderNotes=Verkoop notities CashDeskBankAccountFor=Standaardrekening voor betalingen NoPaimementModesDefined=Geen betaalmethode gedefinieerd in TakePOS-configuratie -TicketVatGrouped=Groeps BTW per tarief in bonnen -AutoPrintTickets=Bonnen automatisch afdrukken +TicketVatGrouped=Groep BTW op tarief in tickets | kwitanties +AutoPrintTickets=Print automatisch tickets | bonnen +PrintCustomerOnReceipts=Druk klant af op tickets | kwitanties EnableBarOrRestaurantFeatures=Functies inschakelen voor Bar of Restaurant ConfirmDeletionOfThisPOSSale=Bevestig je de verwijdering van deze huidige verkoop? ConfirmDiscardOfThisPOSSale=Wilt u deze huidige verkoop weggooien? @@ -84,10 +87,24 @@ SupplementCategory=Toevoeging categorie ColorTheme=Kleur thema Colorful=Kleurrijk HeadBar=Hoofdbalk -SortProductField=Field for sorting products +SortProductField=Veld voor het sorteren van producten Browser=Browser -BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. -PrintMethod=Print method -ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. -ByTerminal=By terminal +BrowserMethodDescription=Eenvoudig en gemakkelijk afdrukken van bonnen. Slechts een paar parameters om de bon te configureren. Afdrukken via browser. +TakeposConnectorMethodDescription=Externe module met extra functies. Mogelijkheid om vanuit de cloud af te drukken. +PrintMethod=Afdrukmethode +ReceiptPrinterMethodDescription=Krachtige methode met veel parameters. Volledig aanpasbaar met sjablonen. Kan niet afdrukken vanuit de cloud. +ByTerminal=Per terminal +TakeposNumpadUsePaymentIcon=Gebruik betalingspictogram op numpad +CashDeskRefNumberingModules=Nummeringsmodule voor POS-verkoop +CashDeskGenericMaskCodes6 =  
    {TN} tag wordt gebruikt om het terminalnummer toe te voegen +TakeposGroupSameProduct=Groepeer dezelfde productlijnen +StartAParallelSale=Start een nieuwe parallelle verkoop +ControlCashOpening=Controle kassa bij opening pos +CloseCashFence=Sluit de kassa +CashReport=Kassa verslag +MainPrinterToUse=Hoofdprinter om te gebruiken +OrderPrinterToUse=Bestel printer om te gebruiken +MainTemplateToUse=Hoofdsjabloon om te gebruiken +OrderTemplateToUse=Bestelsjabloon te gebruiken +BarRestaurant=Bar Restaurant +AutoOrder=Automatische bestelling van klant diff --git a/htdocs/langs/nl_NL/categories.lang b/htdocs/langs/nl_NL/categories.lang index 505de75929f..c7f89fd4180 100644 --- a/htdocs/langs/nl_NL/categories.lang +++ b/htdocs/langs/nl_NL/categories.lang @@ -63,13 +63,7 @@ AccountsCategoriesShort=Labels/categorieën rekeningen ProjectsCategoriesShort=Labels/categorieën projecten UsersCategoriesShort=Gebruikers tags / categorieën StockCategoriesShort=Magazijn-tags / categorieën -ThisCategoryHasNoProduct=Deze categorie bevat geen producten. -ThisCategoryHasNoSupplier=Deze categorie bevat geen leveranciers. -ThisCategoryHasNoCustomer=Deze categorie bevat geen enkele afnemer. -ThisCategoryHasNoMember=Deze categorie bevat geen enkel lid. -ThisCategoryHasNoContact=Deze categorie bevat geen enkel contact. -ThisCategoryHasNoAccount=Deze categorie bevat geen account. -ThisCategoryHasNoProject=Deze categorie bevat geen project. +ThisCategoryHasNoItems=Deze categorie bevat geen items. CategId=Label/categorie id CatSupList=Lijst met leverancierslabels/categorieën CatCusList=Lijst van de klant/prospect kenmerken/categorieën @@ -78,7 +72,7 @@ CatMemberList=Lijst leden kenmerken/categorieën CatContactList=Lijst met contactpersoon labels/-categorieën CatSupLinks=Koppelingen tussen leveranciers en kenmerken/categorieën CatCusLinks=Koppelingen tussen klanten/prospects en labels/categorieën -CatContactsLinks=Links between contacts/addresses and tags/categories +CatContactsLinks=Koppelingen tussen contacten / adressen en tags / categorieën CatProdLinks=Koppelingen tussen producten/diensten en labels/categorieën CatProJectLinks=Koppelingen tussen projecten en labels/categorieën DeleteFromCat=Verwijderen uit labels/categorie diff --git a/htdocs/langs/nl_NL/companies.lang b/htdocs/langs/nl_NL/companies.lang index 116a2b34dc0..77adb7a1898 100644 --- a/htdocs/langs/nl_NL/companies.lang +++ b/htdocs/langs/nl_NL/companies.lang @@ -325,8 +325,8 @@ CompanyDeleted=Bedrijf '%s' verwijderd uit de database. ListOfContacts=Contactpersonen- / adressenlijst ListOfContactsAddresses=Contactpersonen- / adressenlijst ListOfThirdParties=Lijst van derden -ShowCompany=Derde partij weergeven -ShowContact=Toon contactpersoon +ShowCompany=Relatie +ShowContact=Contact adres ContactsAllShort=Alle (Geen filter) ContactType=Type contactpersoon ContactForOrders=Opdrachtencontactpersoon @@ -447,6 +447,7 @@ SaleRepresentativeFirstname=Vertegenwoordiger voornaam SaleRepresentativeLastname=Vertegenwoordiger achternaam ErrorThirdpartiesMerge=Er is een fout opgetreden bij het verwijderen van de relatie. Controleer het log. Wijzigingen zijn ongedaan gemaakt. NewCustomerSupplierCodeProposed=Klant- of leverancierscode die al wordt gebruikt, wordt een nieuwe code voorgesteld +KeepEmptyIfGenericAddress=Houd dit veld leeg als dit adres het standaard adres is #Imports PaymentTypeCustomer=Betalingswijze - Klant PaymentTermsCustomer=Betalingsvoorwaarden - Klant diff --git a/htdocs/langs/nl_NL/compta.lang b/htdocs/langs/nl_NL/compta.lang index 52f8a29e7ff..e1bc8bc0087 100644 --- a/htdocs/langs/nl_NL/compta.lang +++ b/htdocs/langs/nl_NL/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=Zie %sanalyse van betalingen%s voor een berekening va SeeReportInDueDebtMode=Zie %sanalyse van facturen%s voor een berekening op basis van bekende geregistreerde facturen, zelfs als deze nog niet in Ledger zijn geregistreerd. SeeReportInBookkeepingMode=Zie %s Boekhoudverslag%s voor een berekening op de boekhoudboekentabel RulesAmountWithTaxIncluded=- Bedragen zijn inclusief alle belastingen -RulesResultDue=- Het omvat openstaande facturen, uitgaven, btw, donaties, of ze nu zijn betaald of niet. Is ook inclusief betaalde salarissen.
    - Het is gebaseerd op de validatiedatum van facturen en btw en op de vervaldatum voor uitgaven. Voor salarissen die zijn gedefinieerd met de module Salaris, wordt de valutadatum gebruikt. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- Het omvat de echte betalingen op facturen, uitgaven, btw en salarissen.
    - Het is gebaseerd op de betalingsdatums van de facturen, uitgaven, btw en salarissen. De donatiedatum voor donatie. -RulesCADue=- Het omvat de verschuldigde facturen van de klant, ongeacht of deze zijn betaald of niet.
    - Het is gebaseerd op de validatiedatum van deze facturen.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- Het omvat alle effectieve betalingen van facturen ontvangen van klanten.
    - Het is gebaseerd op de betaaldatum van deze facturen
    RulesCATotalSaleJournal=Het omvat alle kredietlijnen uit het verkoopdagboek. RulesAmountOnInOutBookkeepingRecord=Het bevat een record in uw grootboek met boekhoudrekeningen met de groep "KOSTEN" of "INKOMSTEN" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Omzet gefactureerd per omzetbelasting-tarief TurnoverCollectedbyVatrate=Omzet per BTW tarief PurchasebyVatrate=Aankoop bij verkoop belastingtarief LabelToShow=Kort label +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/nl_NL/errors.lang b/htdocs/langs/nl_NL/errors.lang index df860672f08..87185fbba02 100644 --- a/htdocs/langs/nl_NL/errors.lang +++ b/htdocs/langs/nl_NL/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=Het bestand is niet volledig ontvangen door de server. ErrorNoTmpDir=Tijdelijke map %s bestaat niet. ErrorUploadBlockedByAddon=Upload geblokkeerd door een PHP- en / of Apache-plugin. ErrorFileSizeTooLarge=Bestand is te groot. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Grootte te lang voor int type (%s cijfers maximum) ErrorSizeTooLongForVarcharType=Grootte te lang voor string type (%s tekens maximum) ErrorNoValueForSelectType=Vul waarde in voor selectielijst @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # Warnings WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Uw PHP-parameter upload_max_filesize (%s) is hoger dan PHP-parameter post_max_size (%s). Dit is geen consistente opstelling. 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. diff --git a/htdocs/langs/nl_NL/install.lang b/htdocs/langs/nl_NL/install.lang index d86854df90c..2bd6574b9fd 100644 --- a/htdocs/langs/nl_NL/install.lang +++ b/htdocs/langs/nl_NL/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=Deze PHP ondersteunt Curl. PHPSupportCalendar=Deze PHP ondersteunt kalendersextensies. PHPSupportUTF8=Deze PHP ondersteunt UTF8-functies. PHPSupportIntl=Deze PHP ondersteunt Intl-functies. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=Deze PHP ondersteunt %s-functies. PHPMemoryOK=Het maximale sessiegeheugen van deze PHP installatie is ingesteld op %s. Dit zou genoeg moeten zijn. PHPMemoryTooLow=Uw PHP max sessie-geheugen is ingesteld op %s bytes. Dit is te laag. Wijzig uw php.ini om de parameter memory_limit in te stellen op ten minste %s bytes. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=Uw PHP versie ondersteunt geen Curl. ErrorPHPDoesNotSupportCalendar=Uw PHP-installatie ondersteunt geen php-agenda-extensies. ErrorPHPDoesNotSupportUTF8=Uw PHP-installatie ondersteunt geen UTF8-functies. Dolibarr kan niet correct werken. Los dit op voordat u Dolibarr installeert. ErrorPHPDoesNotSupportIntl=Uw PHP-installatie ondersteunt geen Intl-functies. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Uw PHP-installatie ondersteunt geen %s-functies. ErrorDirDoesNotExists=De map %s bestaat niet. ErrorGoBackAndCorrectParameters=Ga terug en controleer / corrigeer de parameters. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=De toepassing probeerde zelf te upgraden, maar de YouTryInstallDisabledByFileLock=De applicatie probeerde zelf te upgraden, maar de installatie / upgrade-pagina's zijn om veiligheidsredenen uitgeschakeld (door het bestaan van een slotbestand install.lock in de dolibarr-documentenmap).
    ClickHereToGoToApp=Klik hier om naar uw toepassing te gaan ClickOnLinkOrRemoveManualy=Klik op de volgende link. Als u altijd dezelfde pagina ziet, moet u het bestand install.lock verwijderen / hernoemen in de documentenmap. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/nl_NL/link.lang b/htdocs/langs/nl_NL/link.lang index 511af212552..b7a45ea8938 100644 --- a/htdocs/langs/nl_NL/link.lang +++ b/htdocs/langs/nl_NL/link.lang @@ -8,3 +8,4 @@ LinkRemoved=De koppeling %s is verwijderd ErrorFailedToDeleteLink= Kon de verbinding '%s' niet verwijderen ErrorFailedToUpdateLink= Kon verbinding '%s' niet bijwerken URLToLink=URL naar link +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/nl_NL/mails.lang b/htdocs/langs/nl_NL/mails.lang index 1f5a3213894..2897086d4bb 100644 --- a/htdocs/langs/nl_NL/mails.lang +++ b/htdocs/langs/nl_NL/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=Geen contact / adres met een categorie gevonden NoContactLinkedToThirdpartieWithCategoryFound=Geen contact / adres met een categorie gevonden OutGoingEmailSetup=Instellingen uitgaande e-mail InGoingEmailSetup=Instellingen inkomende e-mail -OutGoingEmailSetupForEmailing=Instelling uitgaande e-mail (voor massale e-mail) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Standaard uitgaande e-mail instellen Information=Informatie ContactsWithThirdpartyFilter=Contacten met filter van derden diff --git a/htdocs/langs/nl_NL/main.lang b/htdocs/langs/nl_NL/main.lang index 1c75753876c..eec6c8d732b 100644 --- a/htdocs/langs/nl_NL/main.lang +++ b/htdocs/langs/nl_NL/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Opslaan en blijven SaveAndNew=Opslaan en nieuw TestConnection=Test verbinding ToClone=Klonen +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Kies gegevens die u wilt klonen: NoCloneOptionsSpecified=Geen gegevens om te klonen gedefinieerd. Of=van @@ -829,6 +830,8 @@ Gender=Geslacht Genderman=Man Genderwoman=Vrouw ViewList=Bekijk lijst +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Verplicht Hello=Hallo GoodBye=Tot ziens @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Selecteer opties voor deze grafiek Measures=Maten XAxis=X-as YAxis=Y-as +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/nl_NL/modulebuilder.lang b/htdocs/langs/nl_NL/modulebuilder.lang index a3a40cb1ca9..4ad2497172a 100644 --- a/htdocs/langs/nl_NL/modulebuilder.lang +++ b/htdocs/langs/nl_NL/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=Lijst met woordenboekingangen ListOfPermissionsDefined=Lijst met gedefinieerde machtigingen SeeExamples=Zie hier voorbeelden EnabledDesc=Voorwaarde om dit veld actief te hebben (voorbeelden: 1 of $ conf-> global-> MYMODULE_MYOPTION) -VisibleDesc=Is het veld zichtbaar? (Voorbeelden: 0 = Nooit zichtbaar, 1 = Zichtbaar op lijst en formulieren maken / bijwerken / bekijken, 2 = Alleen zichtbaar op lijst, 3 = Zichtbaar op alleen formulier maken / bijwerken / bekijken (niet lijst), 4 = Zichtbaar op lijst en update / weergave alleen formulier (niet aanmaken), 5 = Alleen zichtbaar op lijst eindweergave formulier (niet maken, niet bijwerken) Het gebruik van een negatief waarde betekent dat veld niet standaard wordt weergegeven in de lijst, maar kan worden geselecteerd voor weergave). Het kan een uitdrukking zijn, bijvoorbeeld:
    preg_match ('/ public /', $ _SERVER ['PHP_SELF'])? 0: 1
    ($ user-> rights-> holiday-> define_holiday? 1: 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty DisplayOnPdf=Display on PDF IsAMeasureDesc=Kan de waarde van het veld worden gecumuleerd om een totaal in de lijst te krijgen? (Voorbeelden: 1 of 0) SearchAllDesc=Wordt het veld gebruikt om een zoekopdracht uit het snelzoekprogramma te doen? (Voorbeelden: 1 of 0) diff --git a/htdocs/langs/nl_NL/multicurrency.lang b/htdocs/langs/nl_NL/multicurrency.lang new file mode 100644 index 00000000000..1d9c124018f --- /dev/null +++ b/htdocs/langs/nl_NL/multicurrency.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Meerdere valuta +ErrorAddRateFail=Fout in toegevoegde koers +ErrorAddCurrencyFail=Fout in toegevoegde valuta +ErrorDeleteCurrencyFail=Verwijderen fout mislukt +multicurrency_syncronize_error=Synchronisatiefout: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Gebruik de datum van het document om de wisselkoers te vinden, in plaats van de laatst bekende koers te gebruiken +multicurrency_useOriginTx=Wanneer een object van een ander wordt gemaakt, moet u de oorspronkelijke koers van het bronobject behouden (gebruik anders de laatst bekende koers) +CurrencyLayerAccount=CurrencyLayer API +CurrencyLayerAccount_help_to_synchronize=U moet een account maken op de website %s om deze functionaliteit te gebruiken.
    Download uw API-sleutel .
    Als je een gratis account gebruikt, kunt u de bron (USD standaard) niet veranderen.
    Als uw hoofdvaluta geen USD is, zal de toepassing deze automatisch opnieuw berekenen.

    U bent beperkt tot 1000 synchronisaties per maand. +multicurrency_appId=API key +multicurrency_appCurrencySource=Bron valuta +multicurrency_alternateCurrencySource=Alternatieve bron valuta +CurrenciesUsed=Gebruikte valuta's +CurrenciesUsed_help_to_add=Voeg de verschillende valuta's en koersen toe die u moet gebruiken voor uw voorstellen, bestellingen enz. +rate=koers +MulticurrencyReceived=Ontvangen, originele valuta +MulticurrencyRemainderToTake=Resterend bedrag, oorspronkelijke valuta +MulticurrencyPaymentAmount=Betalingsbedrag, originele valuta +AmountToOthercurrency=Bedrag in (in valuta van ontvangende account) +CurrencyRateSyncSucceed=Currency rate synchronization done successfuly +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Use the currency of the document for online payments diff --git a/htdocs/langs/nl_NL/other.lang b/htdocs/langs/nl_NL/other.lang index 87d1f135159..8ef2166b14e 100644 --- a/htdocs/langs/nl_NL/other.lang +++ b/htdocs/langs/nl_NL/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Klantorder gevalideerd Notify_ORDER_SENTBYMAIL=Klantorder verzonden per post Notify_ORDER_SUPPLIER_SENTBYMAIL=Aankooporder verzonden per e-mail @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=URL van pagina WEBSITE_TITLE=Titel WEBSITE_DESCRIPTION=Omschrijving WEBSITE_IMAGE=Beeld -WEBSITE_IMAGEDesc=Relatief pad van de beeldmedia. Je kunt dit leeg laten, omdat dit zelden wordt gebruikt (het kan door dynamische inhoud worden gebruikt om een miniatuur in een lijst met blogberichten weer te geven). Gebruik __WEBSITEKEY__ in het pad als pad afhankelijk is van de naam van de website. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Sleutelwoorden LinesToImport=Regels om te importeren diff --git a/htdocs/langs/nl_NL/products.lang b/htdocs/langs/nl_NL/products.lang index ab4b6fca55a..845fb659988 100644 --- a/htdocs/langs/nl_NL/products.lang +++ b/htdocs/langs/nl_NL/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=Deze tool werkt het btw-tarief bij dat op ALLEKlik hier om het opnieuw te proberen ... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authenticatin rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/nl_NL/users.lang b/htdocs/langs/nl_NL/users.lang index dffce964525..459a72f5c90 100644 --- a/htdocs/langs/nl_NL/users.lang +++ b/htdocs/langs/nl_NL/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Gebruikers en hun eigenschappen DomainUser=Domeingebruikersaccount %s Reactivate=Reactiveren CreateInternalUserDesc=Met dit formulier kunt u een interne gebruiker in uw bedrijf / organisatie maken. Om een externe gebruiker (klant, leverancier etc. ..) aan te maken, gebruikt u de knop "Aanmaken Dolibarr gebruiker" van de contactkaart van die relatie. -InternalExternalDesc=Een interne gebruiker is een gebruiker die deel uitmaakt van uw bedrijf / organisatie.
    Een externe gebruiker is een klant, verkoper of andere.

    In beide gevallen definieert machtiging rechten op Dolibarr, ook kan de externe gebruiker een ander menu-manager hebben dan de interne gebruiker (zie Home - Instellingen - Beeld) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=Toestemming verleend, omdat geërfd van een bepaalde gebruikersgroep. Inherited=Overgeërfd UserWillBeInternalUser=Gemaakt gebruiker een interne gebruiker te zijn (want niet gekoppeld aan een bepaalde derde partij) @@ -113,3 +113,5 @@ CantDisableYourself=U kunt uw eigen gebruikersrecord niet uitschakelen ForceUserExpenseValidator=Validatierapport valideren ForceUserHolidayValidator=Forceer verlofaanvraag validator ValidatorIsSupervisorByDefault=Standaard is de validator de supervisor van de gebruiker. Blijf leeg om dit gedrag te behouden. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/nl_NL/website.lang b/htdocs/langs/nl_NL/website.lang index 4d89f3a1ddd..3634c2a4331 100644 --- a/htdocs/langs/nl_NL/website.lang +++ b/htdocs/langs/nl_NL/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=Bekijk pagina in nieuw tabblad SetAsHomePage=Als startpagina instellen RealURL=Echte URL ViewWebsiteInProduction=Bekijk website met behulp van eigen URL's -SetHereVirtualHost=Gebruik met Apache / NGinx / ...
    Als u op uw webserver (Apache, Nginx, ...) een speciale virtuele host met PHP ingeschakeld en een hoofddirectory op
    %s
    stel vervolgens de naam in van de virtuele host die u hebt gemaakt in de eigenschappen van de website, zodat de preview ook kan worden gedaan met behulp van deze speciale webservertoegang in plaats van de interne Dolibarr-server. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS=Gebruik met PHP embedded server
    In een ontwikkelomgeving kunt u de site het liefst testen met de ingebouwde PHP-webserver (PHP 5.5 vereist)
    php -S 0.0.0.0:8080 -t %s YouCanAlsoDeployToAnotherWHP=Beheer uw website met een andere Dolibarr Hosting-provider
    Als u geen webserver zoals Apache of NGinx beschikbaar heeft op internet, kunt u uw website exporteren en importeren in een ander Dolibarr-exemplaar van een andere Dolibarr-hostingprovider die volledige integratie met de websitemodule biedt. U kunt een lijst met sommige Dolibarr-hostingproviders vinden op https://saas.dolibarr.org CheckVirtualHostPerms=Controleer ook of virtuele host toestemming %s heeft voor bestanden in
    %s @@ -56,7 +57,7 @@ NoPageYet=Nog geen pagina's YouCanCreatePageOrImportTemplate=U kunt een nieuwe pagina maken of een volledige websitesjabloon importeren SyntaxHelp=Help bij specifieke syntax-tips YouCanEditHtmlSourceckeditor=U kunt HTML-broncode bewerken met de knop "Bron" in de editor. -YouCanEditHtmlSource=
    U kunt PHP-code in deze bron opnemen met behulp van tags <? Php?> . De volgende globale variabelen zijn beschikbaar: $ conf, $ db, $ mysoc, $ user, $ website, $ websitepage, $ weblangs.

    U kunt ook inhoud van een andere pagina / container met de volgende syntaxis opnemen:
    <? php includeContainer ('alias_of_container_to_include'); ?>

    U kunt een omleiding maken naar een andere pagina / container met de volgende syntaxis (Opmerking: voer geen inhoud uit vóór een omleiding):
    <? php redirectToContainer ('alias_of_container_to_redirect_to'); ?>

    Gebruik de syntaxis om een link naar een andere pagina toe te voegen:
    <a href="alias_of_page_to_link_to.php"> mylink <a>

    Gebruik de document.php wrapper om een link op te nemen om een bestand te downloaden dat is opgeslagen in de documentenmap :
    Voor een bestand in documenten / ecm (moet worden vastgelegd) is de syntaxis:
    <a href="/document.php?modulepart=ecm&file= cialisrelative_dir/Buchfilename.ext">
    Voor een bestand in documenten / media (map openen voor openbare toegang) is syntaxis:
    <a href="/document.php?modulepart=medias&file= cialisrelative_dir/Buchfilename.ext">
    Voor een bestand dat wordt gedeeld met een deellink (open toegang met de gedeelde hash-sleutel van het bestand), is de syntaxis:
    <a href="/document.php?hashp=publicsharekeyoffile">

    Gebruik de viewimage.php wrapper om een afbeelding op te nemen die is opgeslagen in de documentenmap :
    Voor een afbeelding in documenten / media (open directory voor openbare toegang) is de syntaxis:
    <img src = ";/ viewimage.php? modulepart = medias & file = [relative_dir /] bestandsnaam.ext">

    Meer voorbeelden van HTML of dynamische code beschikbaar in de wikidocumentatie
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Kloon pagina/container CloneSite=Klonen site SiteAdded=Website toegevoegd @@ -76,7 +77,7 @@ BlogPost=Blogpost WebsiteAccount=Website account WebsiteAccounts=Website accounts AddWebsiteAccount=Maak een website-account -BackToListOfThirdParty=Terug naar lijst voor relatie +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Schakel website eerst uit MyContainerTitle=De titel van mijn website AnotherContainer=Zo neemt u inhoud van een andere pagina / container op (mogelijk hebt u hier een foutmelding als u dynamische code inschakelt omdat de ingesloten subcontainer mogelijk niet bestaat) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Sorry, deze website is momenteel offline. Kom lat WEBSITE_USE_WEBSITE_ACCOUNTS=Schakel de website-accounttabel in WEBSITE_USE_WEBSITE_ACCOUNTSTooltip=Schakel de tabel in om websiteaccounts (login/wachtwoord) voor elke website/relatie op te slaan YouMustDefineTheHomePage=U moet eerst de standaard startpagina definiëren -OnlyEditionOfSourceForGrabbedContentFuture=Pas op: het maken van een webpagina door een externe webpagina te importeren is voorbehouden aan ervaren gebruikers. Afhankelijk van de complexiteit van de bronpagina, kan het resultaat van de import verschillen van het origineel. Ook als de bronpagina gemeenschappelijke CSS-stijlen of conflicterende javascript gebruikt, kan het uiterlijk of de functies van de Website-editor corrupt raken wanneer u op deze pagina werkt. Deze methode is een snellere manier om een pagina te maken, maar het wordt aanbevolen om uw nieuwe pagina helemaal opnieuw te maken of op basis van een voorgestelde paginasjabloon.
    Merk ook op dat bewerkingen van HTML-bron mogelijk zijn wanneer pagina-inhoud is geïnitialiseerd door deze van een externe pagina te halen ("Online" -editor is NIET beschikbaar) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Alleen de HTML-bronversie is mogelijk wanneer inhoud van een externe site is opgehaald GrabImagesInto=Importeer ook afbeeldingen gevonden in css en pagina. ImagesShouldBeSavedInto=Afbeeldingen moeten worden opgeslagen in de directory @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=Gebruik voor goede SEO-praktijken een tekst tussen 5 e MainLanguage=Main language OtherLanguages=Other languages UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/nl_NL/zapier.lang b/htdocs/langs/nl_NL/zapier.lang new file mode 100644 index 00000000000..41961119393 --- /dev/null +++ b/htdocs/langs/nl_NL/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier voor Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier voor Dolibarr-module + +# +# Admin page +# +ZapierForDolibarrSetup = Installatie van Zapier voor Dolibarr diff --git a/htdocs/langs/pl_PL/accountancy.lang b/htdocs/langs/pl_PL/accountancy.lang index f7e6bdb765f..9fb5af3c472 100644 --- a/htdocs/langs/pl_PL/accountancy.lang +++ b/htdocs/langs/pl_PL/accountancy.lang @@ -16,7 +16,7 @@ ThisService=Ta usługa ThisProduct=Ten produkt DefaultForService=Domyślny dla usługi DefaultForProduct=Domyślny dla produktu -CantSuggest=Nie można zaproponować +CantSuggest=Nie mogę zasugerować AccountancySetupDoneFromAccountancyMenu=Most setup of the accountancy is done from the menu %s ConfigAccountingExpert=Konfiguracja modułu eksperta księgowego Journalization=Dokumentowanie @@ -97,8 +97,8 @@ MenuTaxAccounts=Konta podatkowe MenuExpenseReportAccounts=Konta raportu kosztów MenuLoanAccounts=Konta kredytowe MenuProductsAccounts=Konta produktów -MenuClosureAccounts=Closure accounts -MenuAccountancyClosure=Closure +MenuClosureAccounts=Zamknięte konta +MenuAccountancyClosure=Zamknięte MenuAccountancyValidationMovements=Validate movements ProductsBinding=Konta produktów TransferInAccounting=Transfer in accounting @@ -121,6 +121,7 @@ InvoiceLinesDone=Bound lines of invoices ExpenseReportLines=Linie raportów kosztów do dowiązania ExpenseReportLinesDone=Bound lines of expense reports IntoAccount=Bind line with the accounting account +TotalForAccount=Total for accounting account Ventilate=Powiąż @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Konto księgowe dla zarejestrowanych dotatcji ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_ACCOUNT=Konto księgowe używane domyślnie dla sprzedanych produktów (używane jeżeli nie zdefiniowano konta w arkuszu produktu) ACCOUNTING_PRODUCT_SOLD_INTRA_ACCOUNT=Accounting account by default for the products sold in EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported out of EEC (used if not defined in the product sheet) + ACCOUNTING_SERVICE_BUY_ACCOUNT=Konto księgowe używane domyślnie dla kupionych usług (używane jeżeli nie zdefiniowano konta w arkuszu produktu) +ACCOUNTING_SERVICE_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_ACCOUNT=Konto księgowe używane domyślnie dla sprzedanych usług (używane jeżeli nie zdefiniowano konta w arkuszu produktu) ACCOUNTING_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unkno ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error PaymentsNotLinkedToProduct=Payment not linked to any product / service +OpeningBalance=Opening balance ShowOpeningBalance=Show opening balance HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Grupa konta PcgtypeDesc=Group 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. +Reconcilable=Reconcilable + TotalVente=Łączny obrót przed opodatkowaniem TotalMarge=Całkowita marża sprzedaży @@ -307,11 +317,13 @@ 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Chart of accounts Id ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Tryb sprzedaży OptionModeProductSellIntra=Mode sales exported in EEC OptionModeProductSellExport=Mode sales exported in other countries OptionModeProductBuy=Tryb zakupów +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries OptionModeProductSellDesc=Pokaż wszystkie produkty z kontem księgowym dla sprzedaży OptionModeProductSellIntraDesc=Show all products with accounting account for sales in EEC. OptionModeProductSellExportDesc=Show all products with accounting account for other foreign sales. OptionModeProductBuyDesc=Pokaż wszystkie produkty z kontem księgowym dla zakupów +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=Remove accounting code from lines that not exists into charts of account CleanHistory=Resetuj wszystkie dowiązania dla wybranego roku PredefinedGroups=Predefined groups @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Account removed from group SaleLocal=Local sale SaleExport=Export sale SaleEEC=Sale in EEC +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=Zakres konta księgowego diff --git a/htdocs/langs/pl_PL/admin.lang b/htdocs/langs/pl_PL/admin.lang index 6d2ed8fac9c..12cc4230876 100644 --- a/htdocs/langs/pl_PL/admin.lang +++ b/htdocs/langs/pl_PL/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Serwer sieci Web użytkownik / grupa NoSessionFound=Your PHP configuration seems to not allow listing of active sessions. The directory used to save sessions (%s) may be protected (for example by OS permissions or by PHP directive open_basedir). DBStoringCharset=Kodowanie bazy danych do przechowywania danych DBSortingCharset=Kodowanie bazy danych by sortować dane +HostCharset=Host charset ClientCharset=Client charset ClientSortingCharset=Zestawienie klienta WarningModuleNotActive=Moduł %s musi być aktywny @@ -67,8 +68,8 @@ ErrorReservedTypeSystemSystemAuto=Wartość "System" i "systemauto" dla typu jes ErrorCodeCantContainZero=Kod nie może zawierać wartości "0" DisableJavascript=Wyłączanie funkcji JavaScript i Ajax DisableJavascriptNote=Note: For test or debug purpose. For optimization for blind person or text browsers, you may prefer to use the setup on the profile of user -UseSearchToSelectCompanyTooltip=Także jeśli masz dużą liczbę osób trzecich (> 100 000), można zwiększyć prędkość przez ustawienie stałej COMPANY_DONOTSEARCH_ANYWHERE do 1 w Setup-> Inne. Szukaj zostaną ograniczone do początku łańcucha. -UseSearchToSelectContactTooltip=Także jeśli masz dużą liczbę osób trzecich (> 100 000), można zwiększyć prędkość przez ustawienie stałej CONTACT_DONOTSEARCH_ANYWHERE do 1 w Setup-> Inne. Szukaj zostaną ograniczone do początku łańcucha. +UseSearchToSelectCompanyTooltip=Jeśli masz dużą liczbę kontrahentów (> 100 000), można zwiększyć prędkość przez ustawienie stałej COMPANY_DONOTSEARCH_ANYWHERE na 1 w Ustawienia -> Inne. Wyszukiwanie będzie wtedy ograniczone do rozpoczęcia ciągu znaków. +UseSearchToSelectContactTooltip=Jeśli masz dużą liczbę kontrahentów (> 100 000), można zwiększyć prędkość przez ustawienie stałej COMPANY_DONOTSEARCH_ANYWHERE na 1 w Ustawienia -> Inne. Wyszukiwanie będzie wtedy ograniczone do rozpoczęcia ciągu znaków. DelaiedFullListToSelectCompany=Wait until a key is pressed before loading content of Third Parties combo list.
    This may increase performance if you have a large number of third parties, but it is less convenient. DelaiedFullListToSelectContact=Wait until a key is pressed before loading content of Contact combo list.
    This may increase performance if you have a large number of contacts, but it is less convenient) NumberOfKeyToSearch=Number of characters to trigger search: %s @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the NoMaxSizeByPHPLimit=Uwaga: Brak ustawionego limitu w twojej konfiguracji PHP MaxSizeForUploadedFiles=Maksymalny rozmiar dla twoich przesyłanych plików (0 by zabronić jego przesyłanie/upload) UseCaptchaCode=Użyj graficzny kod (CAPTCHA) na stronie logowania -AntiVirusCommand= Pełna ścieżka do poleceń antivirusa -AntiVirusCommandExample= ClamWin przykład: c:\\Program Files (x86)\\ClamWin\\bin\\ clamscan.exe
    Przykład dla ClamAV: /usr/bin/clamscan +AntiVirusCommand=Pełna ścieżka do poleceń antivirusa +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= Więcej parametrów w linii poleceń -AntiVirusParamExample= Przykład dla ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=Konfiguracja modułu rachunkowości UserSetup=Zarządzanie konfiguracją użytkowników MultiCurrencySetup=Konfiguracja multi-walut @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Funkcja niedostępna w wersji demo FeatureAvailableOnlyOnStable=Funkcjonalność dostępna tylko w oficjalnej stabilnej wersji BoxesDesc=Widgets are components showing some information that you can add to personalize some pages. You can choose between showing the widget or not by selecting target page and clicking 'Activate', or by clicking the trashcan to disable it. OnlyActiveElementsAreShown=Tylko elementy z aktywnych modułów są widoczne. -ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button (at end of module line) to enable/disable a module/application. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. ModulesMarketPlaceDesc=Możesz znaleźć więcej modułów do pobrania na zewnętrznych stronach internetowych... ModulesDeployDesc=If permissions on your file system allow it, you can use this tool to deploy an external module. The module will then be visible on the tab %s. ModulesMarketPlaces=Znajdź dodatkowe aplikacje / moduły @@ -212,6 +213,7 @@ CompatibleUpTo=Kompatybilne z wersją %s NotCompatible=ten moduł nie jest kompatybilny z twoją wersją Dolibarr %s (Min %s - Max %s). CompatibleAfterUpdate=This module requires an update to your Dolibarr %s (Min %s - Max %s). SeeInMarkerPlace=See in Market place +SeeSetupOfModule=Zobacz konfigurację modułu %s Updated=Zaktualizowane Nouveauté=Nowość AchatTelechargement=Kup / Pobierz @@ -221,6 +223,7 @@ DoliPartnersDesc=List of companies providing custom-developed modules or feature WebSiteDesc=External websites for more add-on (non-core) modules... DevelopYourModuleDesc=Some solutions to develop your own module... URL=URL +RelativeURL=Relative URL BoxesAvailable=Dostępne widgety BoxesActivated=Widgety aktywowane ActivateOn=Uaktywnij @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Pola wyboru ExtrafieldCheckBoxFromList=Checkboxes from table ExtrafieldLink=Link do obiektu ComputedFormula=Obliczone pole -ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Store computed field ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! ExtrafieldParamHelpPassword=Leaving this field blank means this value will be stored without encryption (field must be only hidden with star on screen).
    Set 'auto' to use the default encryption rule to save password into database (then value read will be the hash only, no way to retrieve original value) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Zostaw puste by używać domyślnych wartości DefaultLink=Domyślny link SetAsDefault=Ustaw jako domyślny ValueOverwrittenByUserSetup=Uwaga, ta wartość może być zastąpiona przez specyficzną konfiguracją użytkownika (każdy użytkownik może ustawić własny clicktodial url) -ExternalModule=Moduł zewnętrzny - Zainstalowane w katalogu% s +ExternalModule=External module +InstalledInto=Installed into directory %s BarcodeInitForthird-parties=Mass barcode init for third-parties BarcodeInitForProductsOrServices=Masowe generowanie kodów lub reset kodów kreskowych dla usług i produktów CurrentlyNWithoutBarCode=Currently, you have %s record on %s %s without barcode defined. @@ -947,7 +951,7 @@ DictionaryCanton=States/Provinces DictionaryRegion=Regiony DictionaryCountry=Kraje DictionaryCurrency=Waluty -DictionaryCivility=Title of civility +DictionaryCivility=Honorific titles DictionaryActions=Typy zdarzeń w agendzie DictionarySocialContributions=Types of social or fiscal taxes DictionaryVAT=Stawki VAT lub stawki podatku od sprzedaży @@ -988,6 +992,7 @@ VATIsNotUsedDesc=By default the proposed Sales tax is 0 which can be used for ca VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=Stawka LocalTax1IsNotUsed=Nie należy używać drugiego podatku LocalTax1IsUsedDesc=Use a second type of tax (other than first one) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices LocalTax2IsNotUsedDescES=Domyślnie proponowany IRPF wynosi 0. Koniec zasady. LocalTax2IsUsedExampleES=W Hiszpanii, freelancerów i przedstawicieli wolnych zawodów, którzy świadczą usługi i przedsiębiorstwa, którzy wybrali system podatkowy modułów. LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=Raporty odnośnie podatków lokalnych CalcLocaltax1=Sprzedaż - Zakupy CalcLocaltax1Desc=Lokalne raporty Podatki są obliczane z różnicy między sprzedażą localtaxes i localtaxes zakupów @@ -1018,6 +1026,7 @@ CalcLocaltax2=Zakupy CalcLocaltax2Desc=Lokalne raporty Podatki są łącznie localtaxes zakupów CalcLocaltax3=Sprzedaż CalcLocaltax3Desc=Lokalne raporty Podatki są za łączną sprzedaży localtaxes +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=Wytwórnia używany domyślnie, jeśli nie można znaleźć tłumaczenie dla kodu LabelOnDocuments=Etykieta na dokumenty LabelOrTranslationKey=Label or translation key @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Expense report to approve Delays_MAIN_DELAY_HOLIDAYS=Leave requests 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. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. SetupDescription5=Other Setup menu entries manage optional parameters. LogEvents=Zdarzenia audytu bezpieczeństwa Audit=Audyt @@ -1128,7 +1137,7 @@ LogEventDesc=Enable logging for specific security events. Administrators the log AreaForAdminOnly=Parametry mogą być ustawiane tylko przez użytkowników z prawami administratora. SystemInfoDesc=System informacji jest różne informacje techniczne można uzyskać w trybie tylko do odczytu i widoczne tylko dla administratorów. SystemAreaForAdminOnly=This area is available to administrator users only. Dolibarr user permissions cannot change this restriction. -CompanyFundationDesc=Edit the information of the company/entity. Click on "%s" button at the bottom of the page. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. AccountantFileNumber=Accountant code DisplayDesc=Parameters affecting the look and behaviour of Dolibarr can be modified here. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Rules to generate and validate passwords DisableForgetPasswordLinkOnLogonPage=Do not show the "Password Forgotten" link on the Login page UsersSetup=Użytkownicy modułu konfiguracji UserMailRequired=Email required to create a new user +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### HRMSetup=Ustawianie modułu HR ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Faktura dokumentów modele BillsPDFModulesAccordindToInvoiceType=Invoice documents models according to invoice type PaymentsPDFModules=Payment documents models ForceInvoiceDate=Siły daty wystawienia faktury do walidacji daty -SuggestedPaymentModesIfNotDefinedInInvoice=Sugerowane tryb płatności na fakturze domyślnie jeśli nie jest zdefiniowane w fakturze +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice SuggestPaymentByRIBOnAccount=Suggest payment by withdrawal on account SuggestPaymentByChequeToAddress=Suggest payment by check to FreeLegalTextOnInvoices=Wolny tekst na fakturach @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Vendor payments setup PropalSetup=Konfiguracja modułu ofert handlowych ProposalsNumberingModules=Commercial wniosku numeracji modules ProposalsPDFModules=Commercial wniosku dokumenty modeli -SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined for proposal +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal FreeLegalTextOnProposal=Darmowy tekstu propozycji WatermarkOnDraftProposal=Znak wodny projektów wniosków komercyjnych (brak jeśli pusty) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Zapytaj o rachunku bankowego przeznaczenia propozycji @@ -1322,6 +1334,7 @@ WAREHOUSE_ASK_WAREHOUSE_DURING_ORDER=Zapytaj o magazyn źródłowy dla zamówien ##### Suppliers Orders ##### BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_ORDER=Ask for bank account destination of purchase order ##### Orders ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=Sales Orders management setup OrdersNumberingModules=Zamówienia numeracji modules OrdersModelModule=Zamów dokumenty modeli @@ -1720,7 +1733,7 @@ MultiCompanySetup=Firma Multi-Moduł konfiguracji ##### Suppliers ##### SuppliersSetup=Vendor module setup SuppliersCommandModel=Complete template of Purchase Order -SuppliersCommandModelMuscadet=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) SuppliersInvoiceModel=Complete template of Vendor Invoice SuppliersInvoiceNumberingModel=Vendor invoices numbering models IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Ukryj obrazki górnego menu LeftMenuBackgroundColor=Kolor tła bocznego menu BackgroundTableTitleColor=Kolor tła nagłówka tabeli BackgroundTableTitleTextColor=Text color for Table title line +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Kolor tła pozostałych lini tabeli BackgroundTableLineEvenColor=Kolor tła dla równomiernych lini tabeli MinimumNoticePeriod=Minimum notice period (Your leave request must be done before this delay) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Dolibarr Reference not found in Message ID FormatZip=Kod pocztowy MainMenuCode=Menu entry code (mainmenu) ECMAutoTree=Show automatic ECM tree -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. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Opening hours OpeningHoursDesc=Enter here the regular opening hours of your company. ResourceSetup=Configuration of Resource module @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramatical ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export +ImportSetup=Setup of module Import InstanceUniqueID=Unique ID of the instance SmallerThan=Smaller than LargerThan=Larger than @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled EmailTemplate=Template for email EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/pl_PL/bills.lang b/htdocs/langs/pl_PL/bills.lang index ce9dbccea41..9e1721d67a2 100644 --- a/htdocs/langs/pl_PL/bills.lang +++ b/htdocs/langs/pl_PL/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Vendors invoices SupplierBill=Faktura dostawcy SupplierBills=Faktury Dostawców Payment=Płatność -PaymentBack=Zwrot płatności -CustomerInvoicePaymentBack=Zwrot płatności +PaymentBack=Zwrot +CustomerInvoicePaymentBack=Zwrot Payments=Płatności PaymentsBack=Refunds paymentInInvoiceCurrency=in invoices currency PaidBack=Spłacona DeletePayment=Usuń płatności ConfirmDeletePayment=Czy jesteś pewien, że chcesz usunąć tą płatność? -ConfirmConvertToReduc=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. -ConfirmConvertToReducSupplier=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. SupplierPayments=Vendor payments ReceivedPayments=Otrzymane płatności @@ -209,17 +209,13 @@ NumberOfBillsByMonth=No. of invoices per month AmountOfBills=Kwota faktury AmountOfBillsHT=Amount of invoices (net of tax) AmountOfBillsByMonthHT=Kwota faktur przez miesiąc (netto) -ShowSocialContribution=Pokaż składkę ZUS/podatek -ShowBill=Pokaż fakturę -ShowInvoice=Pokaż fakturę -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 +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=To pay on %s toPayOn=to pay on %s RetainedWarranty=Retained Warranty @@ -230,7 +226,6 @@ 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 AlreadyPaidNoCreditNotesNoDeposits=Already paid (without credit notes and down payments) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Generated from template invoice %s WarningInvoiceDateInFuture=Warning, the invoice date is higher than current date WarningInvoiceDateTooFarInFuture=Warning, the invoice date is too far from current date ViewAvailableGlobalDiscounts=Pokaż dostępne zniżki +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Status PaymentConditionShortRECEP=Due Upon Receipt @@ -509,7 +505,7 @@ ToMakePayment=Płacić ToMakePaymentBack=Spłacać ListOfYourUnpaidInvoices=Lista niezapłaconych faktur NoteListOfYourUnpaidInvoices=Uwaga: Ta lista zawiera tylko faktury dla osób trzecich jesteś powiązanych jako przedstawiciel sprzedaży. -RevenueStamp=Znaczek skarbowy +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party YouMustCreateStandardInvoiceFirstDesc=You have to create a standard invoice first and convert it to "template" to create a new template invoice @@ -575,3 +571,4 @@ AutoFillDateTo=Set end date for service line with next invoice date AutoFillDateToShort=Set end date MaxNumberOfGenerationReached=Max number of gen. reached BILL_DELETEInDolibarr=Faktura usunięta +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/pl_PL/blockedlog.lang b/htdocs/langs/pl_PL/blockedlog.lang index 68bd518eded..8ca78fd8046 100644 --- a/htdocs/langs/pl_PL/blockedlog.lang +++ b/htdocs/langs/pl_PL/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Unalterable logs ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) DownloadBlockChain=Download fingerprints -KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this re after it was recorded, or has erased the previous archived record (check that line with previous # exists). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. AddedByAuthority=Stored into remote authority diff --git a/htdocs/langs/pl_PL/cashdesk.lang b/htdocs/langs/pl_PL/cashdesk.lang index 830d06ed5f6..364ed5404c1 100644 --- a/htdocs/langs/pl_PL/cashdesk.lang +++ b/htdocs/langs/pl_PL/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Dodaj ten artykuł RestartSelling=Wróć na sprzedaż SellFinished=Sprzedaż zakończona PrintTicket=Bilet do druku +SendTicket=Send ticket NoProductFound=Artykuł nie znaleziony ProductFound=Znaleziono produkt NoArticle=Brak artykułu @@ -48,6 +49,7 @@ Footer=Footer AmountAtEndOfPeriod=Amount at end of period (day, month or year) TheoricalAmount=Theorical amount RealAmount=Real amount +CashFence=Cash fence CashFenceDone=Cash fence done for the period NbOfInvoices=Ilość faktur Paymentnumpad=Type of Pad to enter payment @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS needs product categories to work OrderNotes=Order Notes CashDeskBankAccountFor=Default account to use for payments in NoPaimementModesDefined=No paiment mode defined in TakePOS configuration -TicketVatGrouped=Group VAT by rate in tickets -AutoPrintTickets=Automatically print tickets +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? @@ -87,7 +90,19 @@ HeadBar=Head Bar SortProductField=Field for sorting products Browser=Przeglądarka BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/pl_PL/companies.lang b/htdocs/langs/pl_PL/companies.lang index 68d0f5cdc9c..a20144ad9b0 100644 --- a/htdocs/langs/pl_PL/companies.lang +++ b/htdocs/langs/pl_PL/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted=Firma " %s" usunięta z bazy danych. ListOfContacts=Lista kontaktów/adresów ListOfContactsAddresses=Lista kontaktów/adresów ListOfThirdParties=List of Third Parties -ShowCompany=Show Third Party ShowContact=Pokaż kontakt ContactsAllShort=Wszystkie (bez filtra) ContactType=Typ kontaktu @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=Imię przedstawiciela handlowego SaleRepresentativeLastname=Nazwisko przedstawiciela handlowego ErrorThirdpartiesMerge=There was an error when deleting the third parties. Please check the log. Changes have been reverted. NewCustomerSupplierCodeProposed=Customer or Vendor code already used, a new code is suggested +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Payment Type - Customer PaymentTermsCustomer=Payment Terms - Customer diff --git a/htdocs/langs/pl_PL/compta.lang b/htdocs/langs/pl_PL/compta.lang index 601a0312dd6..87f0a968943 100644 --- a/htdocs/langs/pl_PL/compta.lang +++ b/htdocs/langs/pl_PL/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=See %sanalysis of payments%s for a calculation on act SeeReportInDueDebtMode=See %sanalysis of invoices%s for a calculation based on known recorded invoices even if they are not yet accounted in Ledger. SeeReportInBookkeepingMode=See %sBookeeping report%s for a calculation on Bookkeeping Ledger table RulesAmountWithTaxIncluded=- Kwoty podane są łącznie z podatkami -RulesResultDue=- Obejmuje zaległe faktury, koszty, podatek VAT, darowizny niezaleznie czy zostały one zapłacone. Obejmuje również wypłacane pensje.
    - Podstawą jest data zatwierdzania faktur i VAT oraz terminów płatności za wydatki. Dla wynagrodzeń określonych w module wynagrodzeń brana jest pod uwagę data wypłaty wynagrodzeń. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- Obejmuje rzeczywiste płatności dokonywane za faktury, koszty, podatek VAT oraz wynagrodzenia.
    Opiera się na datach płatności faktur, wygenerowania kosztów, podatku VAT oraz wynagrodzeń. Dla darowizn brana jest pod uwagę data przekazania darowizny. -RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the validation date of these invoices.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    RulesCATotalSaleJournal=It includes all credit lines from the Sale journal. RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Turnover invoiced by sale tax rate TurnoverCollectedbyVatrate=Turnover collected by sale tax rate PurchasebyVatrate=Purchase by sale tax rate LabelToShow=Krótka etykieta +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/pl_PL/donations.lang b/htdocs/langs/pl_PL/donations.lang index 787d44a37e2..9223bd5affa 100644 --- a/htdocs/langs/pl_PL/donations.lang +++ b/htdocs/langs/pl_PL/donations.lang @@ -7,7 +7,6 @@ AddDonation=Tworzenie darowizny NewDonation=Nowa darowizna DeleteADonation=Usuń darowiznę ConfirmDeleteADonation=Czy jesteś pewien, że chcesz usunąć tą dotację? -ShowDonation=Pokaż darowizny PublicDonation=Publiczna dotacja DonationsArea=Obszar dotacji DonationStatusPromiseNotValidated=Projekt obietnicy @@ -17,6 +16,7 @@ DonationStatusPromiseNotValidatedShort=Szkic DonationStatusPromiseValidatedShort=Zatwierdzona DonationStatusPaidShort=Odebrano DonationTitle=Otrzymanie darowizny +DonationDate=Donation date DonationDatePayment=Data płatności ValidPromess=Sprawdź obietnicy DonationReceipt=Otrzymanie darowizny @@ -31,4 +31,4 @@ DONATION_ART200=Pokaż artykuł 200 z CGI, jeśli obawiasz DONATION_ART238=Pokaż artykuł 238 z CGI, jeśli obawiasz DONATION_ART885=Pokaż artykuł 885 z CGI, jeśli obawiasz DonationPayment=Płatności Darowizna -DonationValidated=Donation %s validated +DonationValidated=Dotacja %s zatwierdzona diff --git a/htdocs/langs/pl_PL/errors.lang b/htdocs/langs/pl_PL/errors.lang index 662d89577fb..7782b651a07 100644 --- a/htdocs/langs/pl_PL/errors.lang +++ b/htdocs/langs/pl_PL/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=Plik nieodebrany w całości przez serwer. ErrorNoTmpDir=Tymczasowy directy %s nie istnieje. ErrorUploadBlockedByAddon=Prześlij zablokowane / PHP wtyczki Apache. ErrorFileSizeTooLarge=Rozmiar pliku jest zbyt duży. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Rozmiar zbyt długi dal typu int (max %s cyfr) ErrorSizeTooLongForVarcharType=Za dużo znaków dla tego typu (maksymalnie %s znaków) ErrorNoValueForSelectType=Proszę wypełnić wartości dla listy wyboru @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # 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. diff --git a/htdocs/langs/pl_PL/install.lang b/htdocs/langs/pl_PL/install.lang index 9b531c90fab..0a10dd12033 100644 --- a/htdocs/langs/pl_PL/install.lang +++ b/htdocs/langs/pl_PL/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=This PHP supports Curl. PHPSupportCalendar=This PHP supports calendars extensions. PHPSupportUTF8=This PHP supports UTF8 functions. PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=This PHP supports %s functions. PHPMemoryOK=Maksymalna ilość pamięci sesji PHP ustawiona jest na %s. Powinno wystarczyć. 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. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=Twoja instalacja PHP nie wspiera Curl. ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. 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. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. ErrorDirDoesNotExists=Katalog %s nie istnieje. ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=The application tried to self-upgrade, but the in 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. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/pl_PL/interventions.lang b/htdocs/langs/pl_PL/interventions.lang index 895256f21f6..130ddc8c964 100644 --- a/htdocs/langs/pl_PL/interventions.lang +++ b/htdocs/langs/pl_PL/interventions.lang @@ -41,9 +41,7 @@ InterventionsArea=Obszar interwencji DraftFichinter=Szkic interwencji LastModifiedInterventions=Ostatnie %s zmodyfikowane interwencje FichinterToProcess=Interwencje do przetworzenia -##### Types de contacts ##### TypeContact_fichinter_external_CUSTOMER=W ślad za kontakt z klientem -# Modele numérotation PrintProductsOnFichinter=Wydrukuj również linie typu "produkt" (nie tylko usługi) na karcie interwencji PrintProductsOnFichinterDetails=Interwencje generowane z zamówień UseServicesDurationOnFichinter=Użyj czasu trwania usług dla interwencji generowanych przez zamówienia @@ -53,14 +51,16 @@ InterventionStatistics=Statystyki interwencji NbOfinterventions=Ilość kart interwencji NumberOfInterventionsByMonth=Ilość kart interwencji w miesiącu (data potwierdzenia) AmountOfInteventionNotIncludedByDefault=Ilość interwencji nie jest domyślnie uwzględniana w zysku (w większości przypadków do obliczania czasu wykorzystano karty czasu pracy). Ustaw opcję PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT na 1 w konfiguracji domowej - inne, aby je uwzględnić. -##### Exports ##### InterId=ID interwencji InterRef=Numer referencyjny interwencji InterDateCreation=Data stworzenia interwencji InterDuration=Czas trwania interwencji InterStatus=Status interwencji InterNote=Nota interwencji +InterLine=Line of intervention InterLineId=Linia ID interwencji InterLineDate=Linia daty interwencji InterLineDuration=Linia czasu trwania interwencji InterLineDesc=Lini aopisu interwencji +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/pl_PL/link.lang b/htdocs/langs/pl_PL/link.lang index 4da60227bfa..29ff5e2a6b2 100644 --- a/htdocs/langs/pl_PL/link.lang +++ b/htdocs/langs/pl_PL/link.lang @@ -8,3 +8,4 @@ LinkRemoved=Link %s został usunięty ErrorFailedToDeleteLink= Niemożna usunąc linku '%s' ErrorFailedToUpdateLink= Niemożna uaktualnić linku '%s' URLToLink=Adres URL linka +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/pl_PL/mails.lang b/htdocs/langs/pl_PL/mails.lang index 26161193ec3..70e3426dcdb 100644 --- a/htdocs/langs/pl_PL/mails.lang +++ b/htdocs/langs/pl_PL/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=No contact/address with a category found NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found OutGoingEmailSetup=Outgoing email setup InGoingEmailSetup=Incoming email setup -OutGoingEmailSetupForEmailing=Outgoing email setup (for mass emailing) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Default outgoing email setup Information=Informacja ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/pl_PL/main.lang b/htdocs/langs/pl_PL/main.lang index bbd0c051546..8842026e3aa 100644 --- a/htdocs/langs/pl_PL/main.lang +++ b/htdocs/langs/pl_PL/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Save and stay SaveAndNew=Save and new TestConnection=Test połączenia ToClone=Duplikuj +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Choose data you want to clone: NoCloneOptionsSpecified=Brak zdefiniowanych danych do zduplikowania. Of=z @@ -829,6 +830,8 @@ Gender=Płeć Genderman=Mężczyzna Genderwoman=Kobieta ViewList=Widok listy +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Zleceniobiorca Hello=Witam GoodBye=Do widzenia @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Select your graph options to build a graph Measures=Measures XAxis=X-Axis YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/pl_PL/modulebuilder.lang b/htdocs/langs/pl_PL/modulebuilder.lang index 5d15c004229..c8761c676dc 100644 --- a/htdocs/langs/pl_PL/modulebuilder.lang +++ b/htdocs/langs/pl_PL/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=List of dictionaries entries ListOfPermissionsDefined=List of defined permissions SeeExamples=See examples here EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) -VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update). Using a negative value means field is not shown by default on list but can be selected for viewing). It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty DisplayOnPdf=Display on PDF IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) diff --git a/htdocs/langs/pl_PL/other.lang b/htdocs/langs/pl_PL/other.lang index 2a5656c5024..b496de9d07e 100644 --- a/htdocs/langs/pl_PL/other.lang +++ b/htdocs/langs/pl_PL/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Sales order validated Notify_ORDER_SENTBYMAIL=Sales order sent by mail Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=Link strony WEBSITE_TITLE=Tytuł WEBSITE_DESCRIPTION=Opis WEBSITE_IMAGE=Image -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Słowa kluczowe LinesToImport=Lines to import diff --git a/htdocs/langs/pl_PL/products.lang b/htdocs/langs/pl_PL/products.lang index 058010e7791..188bfd5ff09 100644 --- a/htdocs/langs/pl_PL/products.lang +++ b/htdocs/langs/pl_PL/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL MassBarcodeInit=Masowa inicjalizacja kodów kreskowych MassBarcodeInitDesc=Strona ta może być używana do wygenerowania kodu kreskowego dla obiektów nie posiadających zdefiniowanego kodu. Sprawdź wcześniej, czy ustawienia modułu kodu kreskowego jest kompletna. ProductAccountancyBuyCode=Kod księgowy (zakup) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Kod księgowy (sprzedaż) ProductAccountancySellIntraCode=Accounting code (sale intra-Community) ProductAccountancySellExportCode=Accounting code (sale export) @@ -165,7 +167,7 @@ SuppliersPrices=Ceny dostawców SuppliersPricesOfProductsOrServices=Vendor prices (of products or services) CustomCode=Customs / Commodity / HS code CountryOrigin=Kraj pochodzenia -Nature=Nature of produt (material/finished) +Nature=Nature of product (material/finished) ShortLabel=Krótka etykieta Unit=Jednostka p=jedn. diff --git a/htdocs/langs/pl_PL/projects.lang b/htdocs/langs/pl_PL/projects.lang index f03a7e40d56..901ef507521 100644 --- a/htdocs/langs/pl_PL/projects.lang +++ b/htdocs/langs/pl_PL/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=which I'm linked to project Time=Czas ListOfTasks=Lista zadań GoToListOfTimeConsumed=Go to list of time consumed -GoToListOfTasks=Show as list -GoToGanttView=show as Gantt GanttView=Gantt View ListProposalsAssociatedProject=List of the commercial proposals related to the project ListOrdersAssociatedProject=List of sales orders related to the project @@ -188,7 +186,7 @@ PlannedWorkload=Planowany nakład pracy PlannedWorkloadShort=Nakład pracy ProjectReferers=Powiązane elementy ProjectMustBeValidatedFirst=Projekt musi być najpierw zatwierdzony -FirstAddRessourceToAllocateTime=Assign a user resource to task to allocate time +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=Wejścia na dzień InputPerWeek=Wejścia w tygodniu InputPerMonth=Input per month @@ -240,6 +238,7 @@ LatestModifiedProjects=Latest %s modified projects OtherFilteredTasks=Other filtered tasks NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=Allow user comments on tasks AllowCommentOnProject=Allow user comments on projects @@ -256,7 +255,7 @@ ServiceToUseOnLines=Service to use on lines InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. ProjectFollowOpportunity=Follow opportunity -ProjectFollowTasks=Follow tasks +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Usage: Opportunity UsageTasks=Usage: Tasks @@ -265,3 +264,4 @@ InvoiceToUse=Draft invoice to use NewInvoice=Nowa faktura OneLinePerTask=One line per task OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/pl_PL/receiptprinter.lang b/htdocs/langs/pl_PL/receiptprinter.lang index 09e767f4d34..5da4c9a5a4e 100644 --- a/htdocs/langs/pl_PL/receiptprinter.lang +++ b/htdocs/langs/pl_PL/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Atrapa drukarki CONNECTOR_NETWORK_PRINT=Drukarka sieciowa CONNECTOR_FILE_PRINT=Drukarka lokalna CONNECTOR_WINDOWS_PRINT=Lokalna drukarka Windowsowa +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Fałszywe Drukarka do testu, nie robi nic CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://użytkownik:tajny@nazwa_komputera/grupa_robocza/drukarka +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Profil domyślny PROFILE_SIMPLE=Profil prosty PROFILE_EPOSTEP=Profil Epos Tep @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Invoice month in letters DOL_VALUE_MONTH=Invoice month DOL_VALUE_DAY=Invoice day DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Nr referencyjny faktury +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=Kapitał +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/pl_PL/receptions.lang b/htdocs/langs/pl_PL/receptions.lang index 4b07088e8d7..c57de4ca1fe 100644 --- a/htdocs/langs/pl_PL/receptions.lang +++ b/htdocs/langs/pl_PL/receptions.lang @@ -22,10 +22,10 @@ OtherReceptionsForSameOrder=Other receptions for this order ReceptionsAndReceivingForSameOrder=Receptions and receipts for this order ReceptionsToValidate=Receptions to validate StatusReceptionCanceled=Anulowany -StatusReceptionDraft=Projekt +StatusReceptionDraft=Szkic StatusReceptionValidated=Zatwierdzone (produkty do wysyłki lub już wysłane) StatusReceptionProcessed=Przetwarzany -StatusReceptionDraftShort=Projekt +StatusReceptionDraftShort=Szkic StatusReceptionValidatedShort=Zatwierdzony StatusReceptionProcessedShort=Przetwarzany ReceptionSheet=Reception sheet diff --git a/htdocs/langs/pl_PL/stripe.lang b/htdocs/langs/pl_PL/stripe.lang index d0a7f958f5a..2583d38db89 100644 --- a/htdocs/langs/pl_PL/stripe.lang +++ b/htdocs/langs/pl_PL/stripe.lang @@ -32,6 +32,7 @@ VendorName=Nazwa dostawcy CSSUrlForPaymentForm=Arkusz styli CSS dla formularza płatności NewStripePaymentReceived=Nowa płatność Stripe otrzymana NewStripePaymentFailed=Próbowano wykonać płatność Stripe, ale nie powiodła się +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Secret test key STRIPE_TEST_PUBLISHABLE_KEY=Publishable test key STRIPE_TEST_WEBHOOK_KEY=Webhook test key @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mo 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... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authenticatin rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/pl_PL/users.lang b/htdocs/langs/pl_PL/users.lang index 45dd6b658ba..19dd2de7727 100644 --- a/htdocs/langs/pl_PL/users.lang +++ b/htdocs/langs/pl_PL/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Users and their properties DomainUser=Domena użytkownika %s Reactivate=Przywraca CreateInternalUserDesc=This form allows you to create an internal user in your company/organization. To create an external user (customer, vendor etc. ..), use the button 'Create Dolibarr User' from that third-party's contact card. -InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other.

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=Zezwolenie udzielone ponieważ odziedziczył od jednego z użytkowników grupy. Inherited=Odziedziczone UserWillBeInternalUser=Utworzony użytkownik będzie wewnętrzny użytkownik (ponieważ nie związane z konkretnym trzeciej) @@ -110,3 +110,8 @@ UserLogged=Użytkownik zalogowany DateEmployment=Employment Start Date DateEmploymentEnd=Employment End Date CantDisableYourself=You can't disable your own user record +ForceUserExpenseValidator=Force expense report validator +ForceUserHolidayValidator=Force leave request validator +ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/pl_PL/website.lang b/htdocs/langs/pl_PL/website.lang index 3be18159200..d74de4c3978 100644 --- a/htdocs/langs/pl_PL/website.lang +++ b/htdocs/langs/pl_PL/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=Zobacz stronę w nowej zakładce SetAsHomePage=Ustaw jako stronę domową RealURL=Prawdziwy adres URL ViewWebsiteInProduction=Zobacz stronę używając linków ze strony głównej -SetHereVirtualHost=Gdy Twój rzeczywisty web serwer to Apache/NGinx/...
    Jeśli na Twym rzeczywistym web serwerze masz uprawnienia do tworzenia wirtualnego web serwera (Virtual Host), to utwórz go i odpowiednio skonfiguruj - np. włącz obsługę PHP, wskaż katalog Root na
    %s
    , ustaw kontrolę dostępu. Następnie, jego URL podaj w Dolibarr jako wartość właściwości Virtualhost witryny, przez co podgląd witryny będzie możliwy również poprzez ten dedykowany web serwerze, a nie tylko przez wewnętrzny web serwer w Dolibarr. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS= Używaj z wbudowanym serwerem PHP
    Gdy w środowisku rozwojowym preferujesz testowanie web strony z web serwerem wbudowanym w PHP (wymagane PHP 5.5 lub nowsze), to uruchamiaj
    php -S 0.0.0.0:8080 -t %s YouCanAlsoDeployToAnotherWHP=Uruchom swoją witrynę u innego dostawcy wystąpień Dolibarr
    Jeśli nie masz dostępnego w internecie web serwera, takiego jak Apache lub NGinx, to możesz eksportować i importować swoją witrynę do innego wystąpienia Dolibarr u kogoś oferującego wystąpienia Dolibarr mające moduł Website w pełni zintegrowany z web serwerem. Listę niektórych dostawców wystąpień Dolibarr znajdziesz w https://saas.dolibarr.org CheckVirtualHostPerms=Sprawdź także, czy host wirtualny ma uprawnienia %s do plików
    %s @@ -56,7 +57,7 @@ NoPageYet=Brak stron YouCanCreatePageOrImportTemplate=Możesz utworzyć nową stronę albo załadować pełny szablon witryny SyntaxHelp=Pomoc na temat określonych wskazówek dotyczących składni YouCanEditHtmlSourceckeditor=Możesz edytować kod źródłowy HTML używając przycisku „Źródło” w edytorze. -YouCanEditHtmlSource=
    Możesz dołączyć kod PHP do tego źródła używając znaczników <?php ?>. Dostępne są następujące zmienne globalne: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    Możesz także dołączyć zawartość innej web strony/pojemnika o następującej składni:
    <?php includeContainer('alias_of_container_to_include'); ?>

    Można zrobić przekierowanie do innej web strony/pojemnika z następującą składnią (Uwaga: nie wyprowadzaj jakiejkolwiek zawartości przed przekierowaniem):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    Aby dodać link do innej web strony użyj składni:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    Aby umieścić odsyłacz do pobrania pliku przechowywanego w katalogu documents, użyj funkcji opakowującej document.php :
    Na przykład, dla pliku w documents/ecm składnia to:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    Dla pliku w documents/medias (katalog otwarty na dostęp publiczny) składnia to:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    By dołączyć obraz przechowywany w katalogu documents użyj funkcji opakowującej viewimage.php:
    Na przykład, dla obrazu w documents/medias (katalog otwarty na dostęp publiczny) składnia to:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    Więcej przykładów HTML lub kodu dynamicznego dostępnych jest wdokumentacji typu wiki
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Powiel stronę/pojemnik CloneSite=Duplikuj stronę SiteAdded=Dodano witrynę @@ -76,7 +77,7 @@ BlogPost=Post na blogu WebsiteAccount=Konto witryny WebsiteAccounts=Konta witryny AddWebsiteAccount=Utwórz konto witryny -BackToListOfThirdParty=Wróć do listy Stron Trzecich +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Najpierw wyłącz witrynę MyContainerTitle=Tytuł mojej witryny AnotherContainer=W ten sposób można dołączyć zawartość innej web strony/pojemnika (może pojawić się błąd, gdy włączysz obsługę kodu dynamicznego a wbudowany podrzędny pojemnik nie istnieje) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Przepraszamy, ta witryna jest obecnie niedostępn WEBSITE_USE_WEBSITE_ACCOUNTS=Włącz tabelę kont witryny WEBSITE_USE_WEBSITE_ACCOUNTSTooltip=Włącz tabelę kont witryny (login/hasło) dla każdej witryny/strony trzeciej YouMustDefineTheHomePage=Najpierw musisz zdefiniować domyślną stronę główną -OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that edits of HTML source will be possible when page content has been initialized by grabbing it from an external page ("Online" editor will NOT be available) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Po zaciągnięciu zawartości z zewnętrznej web witryny możliwa jest jedynie edycja kodu źródłowego HTML GrabImagesInto=Przechwyć także obrazy znalezione w CSS i na stronie. ImagesShouldBeSavedInto=Obrazy powinny być zapisane w katalogu @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=Aby uzyskać dobre praktyki SEO, użyj tekstu od 5 do MainLanguage=Main language OtherLanguages=Other languages UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/pl_PL/zapier.lang b/htdocs/langs/pl_PL/zapier.lang new file mode 100644 index 00000000000..6d6eda71313 --- /dev/null +++ b/htdocs/langs/pl_PL/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr module + +# +# Admin page +# +ZapierForDolibarrSetup = Setup of Zapier for Dolibarr diff --git a/htdocs/langs/pt_BR/admin.lang b/htdocs/langs/pt_BR/admin.lang index 9a0d6096705..2b1b7cdef65 100644 --- a/htdocs/langs/pt_BR/admin.lang +++ b/htdocs/langs/pt_BR/admin.lang @@ -82,9 +82,7 @@ NoMaxSizeByPHPLimit=Nenhum limite foi configurado no seu PHP MaxSizeForUploadedFiles=Tamanho Máximo para uploads de arquivos ('0' para proibir o carregamento) UseCaptchaCode=Usar captcha para login (recomendado se os usuários tiverem acesso ao Dolibarr pela internet) AntiVirusCommand=Caminho completo para antivirus -AntiVirusCommandExample=Exemplo com o ClamWin: c:\\Progra~1\\ClamWin\\bin\\clamscan.exe
    Exemplo com o ClamAv: /usr/bin/clamscan (UNIX) AntiVirusParam=Mais parâmetros em linha de comando (CLI) -AntiVirusParamExample=Exemplo com o ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=Conf. do Módulo Contabilidade UserSetup=Conf. do Gestor de usuários MultiCurrencySetup=Configuração de múltiplas moedas @@ -170,9 +168,11 @@ FreeModule=Grátis NotCompatible=Este módulo não parece ser compatível com o seu Dolibarr %s (Mín %s - Máx %s). CompatibleAfterUpdate=Este módulo exige uma atualização do seu Dolibarr %s (Mín %s - Máx %s). SeeInMarkerPlace=Ver na Loja Virtual +SeeSetupOfModule=Veja configuração do módulo %s GoModuleSetupArea=Para implantar/instalar um novo módulo, vá para a área de configuração do módulo: %s . DoliStoreDesc=DoliStore, o site oficial para baixar módulos externos. DevelopYourModuleDesc=Algumas soluções para o desenvolvimento do seu próprio módulo... +RelativeURL=URL relativo BoxesAvailable=Widgets disponíveis BoxesActivated=Widgets ativados ActivateOn=Ativar @@ -337,7 +337,6 @@ KeepEmptyToUseDefault=Deixe em branco para usar o valor padrão DefaultLink=Link padrão SetAsDefault=Definir como padrão ValueOverwrittenByUserSetup=Aviso, esse valor pode ser substituido pela configuração especifícada pelo usuário (cada usuário pode ter seu propria URL CliqueParaDiscar) -ExternalModule=Módulo externo - Instalado no diretório BarcodeInitForProductsOrServices=Inicialização de código de barras em massa ou redefinir de produtos ou serviços CurrentlyNWithoutBarCode=Atualmente, você tem %s registro(s) no %s %s sem um código de barras definido. InitEmptyBarCode=Valor Init para o próximo registros vazios @@ -354,10 +353,13 @@ DisplayCompanyInfoAndManagers=Exibir o endereço da empresa e os nomes dos geren ModuleCompanyCodeSupplierAquarium=%s seguido pelo código do fornecedor para um código de contabilidade do fornecedor ModuleCompanyCodePanicum=Retornar um código contábil vazio ModuleCompanyCodeDigitaria=Retorna um código contábil composto de acordo com nome de terceiros. O código consiste em um prefixo que pode ser definido na primeira posição, seguido pelo número de caracteres definidos no código de terceiros. +ModuleCompanyCodeCustomerDigitaria=%s seguido pelo nome do cliente truncado pelo número de caracteres: %s para o código contábil do cliente. +ModuleCompanyCodeSupplierDigitaria=%s seguido pelo nome do fornecedor truncado pelo número de caracteres: %s para o código contábil do fornecedor. Use3StepsApproval=Por padrão, os Pedidos de Compra necessitam ser criados e aprovados por 2 usuários diferentes (uma etapa para a criação e a outra etapa para a aprovação. Note que se o usuário possui ambas permissões para criar e aprovar, uma única etapa por usuário será suficiente). Você pode pedir, com esta opção, para introduzir uma terceira etapa para aprovação por outro usuário, se o montante for superior a um determinado valor (assim 3 etapas serão necessárias : 1=validação, 2=primeira aprovação e 3=segunda aprovação se o montante for suficiente).
    Defina como vazio se uma aprovação (2 etapas) é suficiente, defina com um valor muito baixo (0.1) se uma segunda aprovação (3 etapas) é sempre exigida. UseDoubleApproval=Usar uma aprovação de 3 etapas quando o valor (sem taxa) é maior do que ... WarningPHPMail=AVISO: Muitas vezes, é melhor configurar e-mails enviados para usar o servidor de e-mail do seu provedor, em vez da configuração padrão. Alguns provedores de e-mail (como o Yahoo) não permitem que você envie um e-mail de outro servidor além do seu próprio servidor. Sua configuração atual usa o servidor do aplicativo para enviar e-mail e não o servidor do seu provedor de e-mail, então alguns destinatários (aquele compatível com o protocolo restritivo do DMARC) perguntarão ao seu provedor de e-mail se eles podem aceitar seu e-mail e alguns provedores de e-mail (como o Yahoo) pode responder "não" porque o servidor não é deles, portanto poucos dos seus e-mails enviados podem não ser aceitos (tome cuidado também com a cota de envio do seu provedor de e-mail).
    Se o seu provedor de e-mail (como o Yahoo) tiver essa restrição, você deve alterar a configuração de e-mail para escolher o outro método "servidor SMTP" e inserir o servidor SMTP e as credenciais fornecidas pelo seu provedor de e-mail. WarningPHPMail2=Se o seu provedor SMTP de e-mail precisar restringir o cliente de e-mail a alguns endereços IP (muito raro), esse é o endereço IP do agente de usuário de e-mail (MUA) para seu aplicativo ERP CRM: %s. +WarningPHPMailSPF=Se o nome de domínio no endereço de email do remetente estiver protegido pelo SPF (pergunte ao seu provedor de email), você deverá incluir os seguintes IPs no registro SPF do DNS do seu domínio: %s . ClickToShowDescription=Clique para exibir a descrição 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. @@ -754,7 +756,6 @@ DictionaryCompanyJuridicalType=Entidades jurídicas de terceiros DictionaryProspectLevel=Possível cliente DictionaryCanton=Estados / Cidades DictionaryRegion=Regiões -DictionaryCivility=Título da civilidade DictionaryActions=Tipos de eventos na agenda DictionarySocialContributions=Tipos de impostos sociais ou fiscais DictionaryVAT=Taxas de VAT ou imposto sobre vendas de moeda @@ -870,8 +871,6 @@ Delays_MAIN_DELAY_CHEQUES_TO_DEPOSIT=Cheque depósito não feito Delays_MAIN_DELAY_EXPENSEREPORTS=Relatório de despesas para aprovar Delays_MAIN_DELAY_HOLIDAYS=Solicitações de Licenças para aprovar SetupDescription2=As duas seções a seguir são obrigatórias (as duas primeiras entradas no menu de configuração): -SetupDescription3=%s -> %s
    Parâmetros básicos usados para personalizar o comportamento padrão do seu aplicativo (por exemplo, para recursos relacionados ao país). -SetupDescription4=%s -> %s
    Este software é um conjunto de muitos módulos/aplicativos, todos mais ou menos independentes. Os módulos relevantes para suas necessidades devem ser ativados e configurados. Novos itens/opções são adicionados aos menus com a ativação de um módulo. SetupDescription5=Outras entradas do menu de configuração gerenciam parâmetros opcionais. LogEvents=Auditoría de segurança dos eventos Audit=Auditoría @@ -911,6 +910,7 @@ ParameterActiveForNextInputOnly=Parâmetro efetivo somente para a próxima entra NoEventOrNoAuditSetup=Nenhum evento de segurança foi registrado. Isso é normal se a Auditoria não tiver sido ativada na página "Configuração - Segurança - Eventos". SeeLocalSendMailSetup=Ver sua configuração local de envio de correspondência BackupDesc=Um backup completo de uma instalação do Dolibarr requer duas etapas. +BackupDesc2=Faça backup do conteúdo do diretório "documentos" (%s) que contém todos os arquivos carregados e gerados. Isso também incluirá todos os arquivos de despejo gerados na Etapa 1. Essa operação pode durar vários minutos. BackupDesc3=Faça backup da estrutura e do conteúdo do banco de dados ( %s ) em um arquivo de despejo. Para isso, você pode usar o assistente a seguir. BackupDescX=O diretório arquivado deve ser armazenado em um local seguro. BackupDescY=O arquivo de despeja gerado deverá ser armazenado em um local seguro. @@ -969,7 +969,9 @@ OnlyFollowingModulesAreOpenedToExternalUsers=Observe que apenas os módulos a se 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. +NbOfObjectIsLowerThanNoPb=Você tem apenas %s %s no banco de dados. Isso não requer nenhuma otimização específica. SearchOptim=Procurar Otimização +YouHaveXObjectAndSearchOptimOn=Você tem %s %s no banco de dados e a constante %s é definida como 1 em Home - Setup - Other PHPModuleLoaded=O componente PHP 1 %s está carregado PreloadOPCode=O OPCode pré-carregado está em uso 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.". @@ -1005,7 +1007,6 @@ BillsNumberingModule=Faturas e notas de crédito no modelo de numeração BillsPDFModules=Modelos de documentos da fatura PaymentsPDFModules=Modelos dos documentos de pagamento ForceInvoiceDate=Forçar data de fatura para data de validação -SuggestedPaymentModesIfNotDefinedInInvoice=Sugerir formas de pagamentos na fatura por default se não estiver definida na fatura SuggestPaymentByRIBOnAccount=Sugerir pagamento por retirada na conta SuggestPaymentByChequeToAddress=Sugerir pagamento por cheque para FreeLegalTextOnInvoices=Texto livre nas fatura @@ -1016,7 +1017,6 @@ SupplierPaymentSetup=Configuração de pagamentos do fornecedor PropalSetup=Configurações do módulo de orçamentos ProposalsNumberingModules=Modelos de numeração de orçamentos ProposalsPDFModules=Modelos de documentos para Orçamentos -SuggestedPaymentModesIfNotDefinedInProposal=Modo de pagamentos sugeridos na proposta por padrão, se não definido para proposta FreeLegalTextOnProposal=Texto livre em orçamentos WatermarkOnDraftProposal=Marca d'água no rascunho de orçamentos (nenhum se vazio) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Informar conta bancária de destino da proposta diff --git a/htdocs/langs/pt_BR/agenda.lang b/htdocs/langs/pt_BR/agenda.lang index 9eb2efd346c..3a8de6667d0 100644 --- a/htdocs/langs/pt_BR/agenda.lang +++ b/htdocs/langs/pt_BR/agenda.lang @@ -70,7 +70,6 @@ PRODUCT_DELETEInDolibarr=Produto%s exluído HOLIDAY_CREATEInDolibarr=Solicitação de licença %s criada HOLIDAY_MODIFYInDolibarr=Solicitação de licença %s alterada HOLIDAY_APPROVEInDolibarr=Solicitação de licença %s aprovada -HOLIDAY_VALIDATEDInDolibarr=Solicitação de licença %s validada HOLIDAY_DELETEInDolibarr=Solicitação de licença %s excluída EXPENSE_REPORT_CREATEInDolibarr=Relatório de despesas %s criado EXPENSE_REPORT_VALIDATEInDolibarr=relatório de despesas %s validado diff --git a/htdocs/langs/pt_BR/bills.lang b/htdocs/langs/pt_BR/bills.lang index 093e7db169b..093a461809a 100644 --- a/htdocs/langs/pt_BR/bills.lang +++ b/htdocs/langs/pt_BR/bills.lang @@ -45,15 +45,15 @@ SupplierInvoice=Fatura do fornecedores SuppliersInvoices=Faturas de fornecedores SupplierBill=Fatura do fornecedores SupplierBills=Faturas de fornecedores -PaymentBack=Reembolso de pagamento -CustomerInvoicePaymentBack=Reembolso de pagamento +PaymentBack=Reembolso +CustomerInvoicePaymentBack=Reembolso PaymentsBack=Reembolsos PaidBack=Reembolso pago DeletePayment=Deletar pagamento ConfirmDeletePayment=Você tem certeza que deseja excluir este pagamento? -ConfirmConvertToReduc=Deseja converter este %s em um desconto absoluto? +ConfirmConvertToReduc=Deseja converter este %s em um crédito disponível? ConfirmConvertToReduc2=O valor será salvo junto a todos os descontos e poderá ser usado como desconto em uma fatura atual ou futura deste cliente. -ConfirmConvertToReducSupplier=Deseja converter este %s em um desconto absoluto? +ConfirmConvertToReducSupplier=Deseja converter este %s em um crédito disponível? ConfirmConvertToReducSupplier2=O valor será salvo junto a todos os descontos e poderá ser usado como desconto em uma fatura atual ou futura deste fornecedor. SupplierPayments=Pagamentos do fornecedor ReceivedCustomersPayments=Pagamentos recebidos de cliente @@ -163,13 +163,6 @@ NumberOfBills=Nº. de faturas NumberOfBillsByMonth=Nº. de faturas por mês AmountOfBills=Quantidade de faturas AmountOfBillsByMonthHT=Quantidade de faturas por mês (líquido de taxa) -ShowSocialContribution=Mostrar contribuição social -ShowBill=Mostrar fatura -ShowInvoice=Mostrar fatura -ShowInvoiceReplace=Mostrar fatura de substituição -ShowInvoiceAvoir=Mostrar nota de crédito -ShowInvoiceDeposit=Mostrar fatura de pagamento -ShowInvoiceSituation=Exibir a situação da fatura UseSituationInvoices=Permitir fatura de situação UseSituationInvoicesCreditNote=Permitir nota de crédito da fatura da situação Retainedwarranty=Garantia retida @@ -349,11 +342,10 @@ ClosePaidContributionsAutomatically=Classifique automaticamente todas as contrib AllCompletelyPayedInvoiceWillBeClosed=Todas as faturas sem saldo a pagar serão fechadas automaticamente com o status "Pago". ToMakePaymentBack=Pagar de volta NoteListOfYourUnpaidInvoices=Nota: Essa lista contém faturas de terceiros que você está a ligado como representante de vendas. -RevenueStamp=Selo de receita YouMustCreateInvoiceFromThird=Esta opção só está disponível ao criar uma fatura na guia "Cliente" de terceiros YouMustCreateInvoiceFromSupplierThird=Essa opção só está disponível ao criar uma fatura na guia "Fornecedor" de terceiros YouMustCreateStandardInvoiceFirstDesc=Você deve criar antes uma fatura padrão e convertê-la em um "tema" para criar um novo tema de fatura -PDFCrabeDescription=Modelo de fatura PDF Crabe. Um modelo de fatura completo (implementação antiga do modelo Sponge) +PDFCrabeDescription=Modelo de fatura PDF Crabe. Um modelo de fatura completo PDFCrevetteDescription=Tema Crevette para fatura em PDF. Um tema completo para a situação das faturas TerreNumRefModelDesc1=Retorna número com formato %syymm-nnnn para padrão de faturas e %syymm-nnnn para notas de crédito onde yy é ano, mm é mês e nnnn é uma sequência numérica sem quebra e sem retorno para 0 MarsNumRefModelDesc1=Número de retorno com o formato %syymm-nnnn para faturas padrão, %syymm-nnnn para faturas de substituição, %syymm-nnnn para faturas de adiantamento e %syymm-nnnn para notas de crédito onde yy é ano, mm é mês e nnnn é uma seqüência sem interrupção e não retornar para 0 diff --git a/htdocs/langs/pt_BR/blockedlog.lang b/htdocs/langs/pt_BR/blockedlog.lang index 52d033bd36e..390258dcf55 100644 --- a/htdocs/langs/pt_BR/blockedlog.lang +++ b/htdocs/langs/pt_BR/blockedlog.lang @@ -8,7 +8,6 @@ BrowseBlockedLog=Logs nao modificaveis ShowAllFingerPrintsMightBeTooLong=Mostrar todos os Logs Arquivados (pode ser demorado) ShowAllFingerPrintsErrorsMightBeTooLong=Mostrar todos os arquivos de log inválidos (pode demorar) DownloadBlockChain=Baixar impressoes digitais -KoCheckFingerprintValidity=A entrada de log arquivada não é válida. Isso significa que alguém (um hacker?) Modificou alguns dados desse arquivo depois que foi gravado ou apagou o registro arquivado anterior (verifique se a linha com o número anterior existe). OkCheckFingerprintValidity=O registro de log arquivado é válido. Os dados nesta linha não foram modificados e a entrada segue a anterior. OkCheckFingerprintValidityButChainIsKo=O log arquivado parece válido em comparação com o anterior, mas a cadeia foi previamente corrompida. AddedByAuthority=Salvo na autoridade remota diff --git a/htdocs/langs/pt_BR/cashdesk.lang b/htdocs/langs/pt_BR/cashdesk.lang index 7af01359574..eefa64d6102 100644 --- a/htdocs/langs/pt_BR/cashdesk.lang +++ b/htdocs/langs/pt_BR/cashdesk.lang @@ -34,8 +34,8 @@ TakeposNeedsCategories=TakePOS precisa de categorias de produtos para funcionar OrderNotes=Notas de pedidos CashDeskBankAccountFor=Conta padrão a ser usada para pagamentos em NoPaimementModesDefined=Nenhum modo de embalagem definido na configuração do TakePOS -TicketVatGrouped=Grupo de IVA por taxa em tickets -AutoPrintTickets=Imprimir automaticamente os tickets +TicketVatGrouped=Agrupar IVA por taxa em tickets | recibos +AutoPrintTickets=Imprimir automaticamente tickets | recibos EnableBarOrRestaurantFeatures=Ativar recursos para Bar ou Restaurante ConfirmDeletionOfThisPOSSale=Você confirma a exclusão desta venda atual? ConfirmDiscardOfThisPOSSale=Deseja descartar esta venda atual? diff --git a/htdocs/langs/pt_BR/categories.lang b/htdocs/langs/pt_BR/categories.lang index 4d6beb8961b..732f54fd2b3 100644 --- a/htdocs/langs/pt_BR/categories.lang +++ b/htdocs/langs/pt_BR/categories.lang @@ -58,12 +58,6 @@ AccountsCategoriesShort=Tags/categorias Contas ProjectsCategoriesShort=Projetos tags/categorias UsersCategoriesShort=Tags / categorias de usuários StockCategoriesShort=Tags / categorias de armazém -ThisCategoryHasNoProduct=Esta categoria não contém nenhum produto. -ThisCategoryHasNoSupplier=Esta categoria não contém nenhum fornecedor -ThisCategoryHasNoCustomer=Esta categoria não contém a nenhum cliente. -ThisCategoryHasNoMember=Esta categoria nao contem nenhum membro. -ThisCategoryHasNoContact=Esta categoria nao contem nenhum contato. -ThisCategoryHasNoProject=Esta categoria nao contem nenhum projeto. CategId=ID Tag / categoria CatSupList=Lista de tags / categorias de fornecedores CatCusList=Lista de cliente / perspectivas de tags / categorias diff --git a/htdocs/langs/pt_BR/compta.lang b/htdocs/langs/pt_BR/compta.lang index 3c0487dbe73..a5d7c9bb26f 100644 --- a/htdocs/langs/pt_BR/compta.lang +++ b/htdocs/langs/pt_BR/compta.lang @@ -118,9 +118,7 @@ AnnualByCompanies=Saldo de receitas e despesas, por grupos de conta predefinidos AnnualByCompaniesDueDebtMode=Saldo de receitas e despesas, detalhe por grupos predefinidos, modo %sClaims-Debts%s disse Contabilidade de Compromisso . AnnualByCompaniesInputOutputMode=Saldo de receitas e despesas, detalhe por grupos predefinidos, modo %sIncomes-Expenses%s chamada fluxo de caixa . RulesAmountWithTaxIncluded=- Valores apresentados estão com todos os impostos incluídos -RulesResultDue=- Isto inclui as faturas vencidas, despesas, ICMS (VAT), doações, pagas ou não. Isto também inclui os salários pagos.
    - Isto isto baseado na data de validação das faturas e ICMS (VAT) e nas datas devidas para as despesas. Para os salários definidos com o módulo Salário, é usado o valor da data do pagamento. RulesResultInOut=- Isto inclui os pagamentos reais feitos nas faturas, despesas, ICMS (VAT) e salários.
    - Isto é baseado nas datas de pagamento das faturas, despesas, ICMS (VAT) e salários. A data de doação para a doação. -RulesCADue=- Inclui as faturas do cliente, sejam elas pagas ou não.
    - É baseado na data de validação dessas faturas.
    RulesCAIn=- Inclui todos os pagamentos efetivos de faturas recebidas de clientes.
    - É baseado na data de pagamento dessas faturas
    RulesAmountOnInOutBookkeepingRecord=Inclui registro em seu Ledger com contas contábeis que tem o grupo "DESPESAS" ou "RENDIMENTO" RulesResultBookkeepingPredefined=Inclui registro em seu Ledger com contas contábeis que tem o grupo "DESPESAS" ou "RENDIMENTO" diff --git a/htdocs/langs/pt_BR/donations.lang b/htdocs/langs/pt_BR/donations.lang index b6ffd6a8653..023e3e72172 100644 --- a/htdocs/langs/pt_BR/donations.lang +++ b/htdocs/langs/pt_BR/donations.lang @@ -6,7 +6,6 @@ AddDonation=Criar uma doação NewDonation=Nova doação DeleteADonation=Excluir uma doação ConfirmDeleteADonation=Tem certeza que quer remover esta doacao? -ShowDonation=Mostrar doação PublicDonation=Doação pública DonationsArea=Área de doações DonationStatusPromiseNotValidated=Promessa não validada @@ -16,7 +15,6 @@ DonationStatusPromiseValidatedShort=Validada DonationTitle=Recibo de doação DonationReceipt=Recibo de doação DonationsModels=Modelo de documento de recepção de Doação -LastModifiedDonations=Últimas %s doações modificadas DonationRecipient=Recipiente doaçaõ IConfirmDonationReception=O beneficiário declara ter recebido, como doação, o seguinte montante MinimumAmount=O montante mínimo é de %s diff --git a/htdocs/langs/pt_BR/errors.lang b/htdocs/langs/pt_BR/errors.lang index 19ed3e2fa27..4b5f972e55f 100644 --- a/htdocs/langs/pt_BR/errors.lang +++ b/htdocs/langs/pt_BR/errors.lang @@ -95,6 +95,7 @@ ErrorLoginDoesNotExists=Não existe um usuário com login %s. ErrorLoginHasNoEmail=Este usuário não tem endereço de e-mail. Processo abortado. ErrorBadValueForCode=Valor inadequado para código de segurança. Tente novamente com um novo valor... ErrorBothFieldCantBeNegative=Os campos %s e %s não podem ser ambos negativos +ErrorLinesCantBeNegativeForOneVATRate=O total de linhas não pode ser negativo para uma determinada taxa de IVA. ErrorLinesCantBeNegativeOnDeposits=As linhas não podem ser negativas em um depósito. Você terá problemas quando precisar apagar o depósito na fatura final, se o fizer. ErrorQtyForCustomerInvoiceCantBeNegative=A quantidade nas linhas das notas de clientes não pode ser negativa ErrorWebServerUserHasNotPermission=A conta de usuário %s usada para executar o servidor web não possui permissão para isto diff --git a/htdocs/langs/pt_BR/link.lang b/htdocs/langs/pt_BR/link.lang index eb57e8c3b2e..f86a13d83c3 100644 --- a/htdocs/langs/pt_BR/link.lang +++ b/htdocs/langs/pt_BR/link.lang @@ -4,6 +4,7 @@ LinkedFiles=Arquivos vinculados e documentos NoLinkFound=Não há links registrados LinkComplete=O arquivo foi associada com sucesso ErrorFileNotLinked=O arquivo não pôde ser vinculado +LinkRemoved=A ligação %s foi removida ErrorFailedToDeleteLink=Falha ao remover link '%s' ErrorFailedToUpdateLink=Falha ao atualizar link '%s' URLToLink=URL para link diff --git a/htdocs/langs/pt_BR/mails.lang b/htdocs/langs/pt_BR/mails.lang index 6a462d11f01..773a06e5e08 100644 --- a/htdocs/langs/pt_BR/mails.lang +++ b/htdocs/langs/pt_BR/mails.lang @@ -96,6 +96,5 @@ NoContactWithCategoryFound=Nenhum foi encontrado nenhum contato/endereço com um NoContactLinkedToThirdpartieWithCategoryFound=Nenhum foi encontrado nenhum contato/endereço com uma categoria OutGoingEmailSetup=Configuração de e-mail de saída InGoingEmailSetup=Configuração de e-mail de entrada -OutGoingEmailSetupForEmailing=Configuração de e-mail de saída (para envio em massa) DefaultOutgoingEmailSetup=Configuração de e-mail de saída padrão ContactsWithThirdpartyFilter=Contatos com filtro de terceiros diff --git a/htdocs/langs/pt_BR/mrp.lang b/htdocs/langs/pt_BR/mrp.lang index 20a3e9f60ed..c6203bd824e 100644 --- a/htdocs/langs/pt_BR/mrp.lang +++ b/htdocs/langs/pt_BR/mrp.lang @@ -58,7 +58,6 @@ ConsumeOrProduce=Consumir ou Produzir ConsumeAndProduceAll=Consumir e produzir todos Manufactured=Fabricado TheProductXIsAlreadyTheProductToProduce=O produto a ser adicionado já é o produto a ser produzido. -ForAQuantityOf1=Para uma quantidade a produzir de 1 ConfirmValidateMo=Tem certeza de que deseja validar esta ordem de fabricação? ConfirmProductionDesc=Ao clicar em '%s', você validará o consumo e / ou produção para as quantidades definidas. Isso também atualizará o estoque e registrará movimentos de estoque. ProductionForRef=Produção de %s diff --git a/htdocs/langs/pt_BR/orders.lang b/htdocs/langs/pt_BR/orders.lang index 275ed444a69..79cde2cf111 100644 --- a/htdocs/langs/pt_BR/orders.lang +++ b/htdocs/langs/pt_BR/orders.lang @@ -111,7 +111,7 @@ TypeContact_order_supplier_external_SHIPPING=Contato de remessa do fornecedor TypeContact_order_supplier_external_CUSTOMER=Ordem de acompanhamento de contato do fornecedor Error_OrderNotChecked=Nenhum pedido seleçionado para se faturar OrderByEMail=E-mail -PDFEinsteinDescription=Modelo de pedido completo (implementação antiga do modelo Eratosthene) +PDFEinsteinDescription=Modelo de pedido completo PDFEratostheneDescription=Modelo completo de pedidos PDFEdisonDescription=O modelo simplificado do pedido PDFProformaDescription=Modelo completo de fatura Proforma diff --git a/htdocs/langs/pt_BR/other.lang b/htdocs/langs/pt_BR/other.lang index 00661f29a01..36349482923 100644 --- a/htdocs/langs/pt_BR/other.lang +++ b/htdocs/langs/pt_BR/other.lang @@ -168,7 +168,7 @@ LibraryUsed=Biblioteca usada ExportableDatas=dados exportáveis NoExportableData=não existe dados exportáveis (sem módulos com dados exportáveis gastodos, necessitam de permissões) WebsiteSetup=Configuração do módulo website -WEBSITE_IMAGEDesc=Caminho relativo da mídia de imagem. Você pode mantê-lo vazio, pois raramente é usado (ele pode ser usado pelo conteúdo dinâmico para mostrar uma miniatura em uma lista de postagens do blog). Use __WEBSITEKEY__ no caminho se o caminho depender do nome do site. +WEBSITE_IMAGEDesc=Caminho relativo da mídia de imagem. Você pode mantê-lo vazio, pois raramente é usado (ele pode ser usado pelo conteúdo dinâmico para mostrar uma miniatura em uma lista de postagens do blog). Use __WEBSITE_KEY__ no caminho se o caminho depender do nome do site (por exemplo: image / __ WEBSITE_KEY __ / stories / myimage.png). LinesToImport=Linhas para importar MemoryUsage=Uso de memória RequestDuration=Duração do pedido diff --git a/htdocs/langs/pt_BR/products.lang b/htdocs/langs/pt_BR/products.lang index 9df938bca07..9d61b0be2e5 100644 --- a/htdocs/langs/pt_BR/products.lang +++ b/htdocs/langs/pt_BR/products.lang @@ -103,7 +103,6 @@ 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 diff --git a/htdocs/langs/pt_BR/projects.lang b/htdocs/langs/pt_BR/projects.lang index a752065eea8..21553851201 100644 --- a/htdocs/langs/pt_BR/projects.lang +++ b/htdocs/langs/pt_BR/projects.lang @@ -56,8 +56,6 @@ ProgressCalculated=calculado do progresso WhichIamLinkedTo=ao qual estou ligado WhichIamLinkedToProject=ao qual estou vinculado ao projeto GoToListOfTimeConsumed=Ir para a lista de dispêndios de tempo -GoToListOfTasks=Exibir como lista -GoToGanttView=mostrar como Gantt ListOrdersAssociatedProject=Lista de pedidos de vendas relacionadas ao projeto ListSupplierOrdersAssociatedProject=Lista de ordens de compra relacionadas ao projeto ListSupplierInvoicesAssociatedProject=Lista de faturas do fornec. relacionadas ao projeto @@ -114,7 +112,6 @@ SelectElement=Selecionar componente AddElement=Link para componente PlannedWorkload=carga horária planejada ProjectMustBeValidatedFirst=O projeto tem que primeiramente ser validado -FirstAddRessourceToAllocateTime=Atribuir o recurso de um usuário à tarefa para alocação do tempo ProjectsWithThisUserAsContact=Projetos com este usuário como contato TasksWithThisUserAsContact=As tarefas atribuídas a esse usuário ProjectOverview=Visão geral diff --git a/htdocs/langs/pt_BR/stripe.lang b/htdocs/langs/pt_BR/stripe.lang index 19d2d32ccec..fcb44212d4c 100644 --- a/htdocs/langs/pt_BR/stripe.lang +++ b/htdocs/langs/pt_BR/stripe.lang @@ -36,4 +36,3 @@ StripePayoutList=Lista de pagamentos do Stripe ToOfferALinkForTestWebhook=Link para configurar o Stripe WebHook para chamar o IPN (modo de teste) ToOfferALinkForLiveWebhook=Link para configurar Stripe WebHook para chamar o IPN (modo ao vivo) PaymentWillBeRecordedForNextPeriod=O pagamento será registrado para o próximo período. -CreationOfPaymentModeMustBeDoneFromStripeInterface=Devido às regras de autenticação forte do cliente, a criação de um cartão deve ser feita no backoffice do Stripe. Você pode clicar aqui para ativar o registro de cliente do Stripe: %s diff --git a/htdocs/langs/pt_BR/users.lang b/htdocs/langs/pt_BR/users.lang index b74be4d91f4..b6ba00dce9a 100644 --- a/htdocs/langs/pt_BR/users.lang +++ b/htdocs/langs/pt_BR/users.lang @@ -60,7 +60,7 @@ LoginAccountDisableInDolibarr=A conta está desativada no Dolibarr ExportDataset_user_1=Usuários e suas propriedades DomainUser=Usuário de Domínio CreateInternalUserDesc=Este formulário permite que você crie um usuário interno em sua empresa / organização. Para criar um usuário externo (cliente, fornecedor, etc.), use o botão 'Criar usuário Dolibarr' do cartão de contato de terceiros. -InternalExternalDesc=Um usuário interno é um usuário que faz parte de sua empresa/organização.
    Um usuário externo é um cliente, fornecedor ou outro.

    Em ambos os casos, permissões definem direitos no Dolibarr, também o usuário externo pode ter um gerenciador de menu diferente do usuário interno (Veja Início - Configurações - Exibir) +InternalExternalDesc=Usuário interno é um usuário que faz parte da sua empresa / organização.
    Usuário externo é um cliente, fornecedor ou outro (a criação de um usuário externo para terceiros pode ser feita a partir do registro de contatos de terceiros).

    Nos dois casos, as permissões definem os direitos no Dolibarr, também o usuário externo pode ter um gerenciador de menu diferente do usuário interno (consulte Página inicial - Configuração - Tela) PermissionInheritedFromAGroup=A permissão dá-se já que o herda de um grupo ao qual pertence o usuário. UserWillBeInternalUser=Usuario criado sera um usuario interno (porque nao esta conectado a um particular terceiro) UserWillBeExternalUser=Usuario criado sera um usuario externo (porque esta conectado a um particular terceiro) @@ -96,3 +96,6 @@ UserLogged=Usuário Conectado DateEmployment=Data de Início do Emprego DateEmploymentEnd=Data de término do emprego CantDisableYourself=Você não pode desativar seu próprio registro de usuário +ForceUserExpenseValidator=Forçar validação do relatório de despesas +ForceUserHolidayValidator=Forçar validação da solicitação de licença +ValidatorIsSupervisorByDefault=Por padrão, a validação é feita pelo supervisor do usuário. Mantenha vazio para continuar desta maneira. diff --git a/htdocs/langs/pt_BR/website.lang b/htdocs/langs/pt_BR/website.lang index a69e817c29a..13dbbd3b7e6 100644 --- a/htdocs/langs/pt_BR/website.lang +++ b/htdocs/langs/pt_BR/website.lang @@ -30,7 +30,6 @@ ViewPageInNewTab=Visualizar página numa nova aba SetAsHomePage=Definir com Página Inicial RealURL=URL real ViewWebsiteInProduction=Visualizar website usando origem URLs -SetHereVirtualHost=Use com o Apache / NGinx / ...
    Se você puder criar, no seu servidor web (Apache, Nginx, ...), um Host Virtual dedicado com PHP habilitado e um diretório Root no
    %s
    em seguida, defina o nome do host virtual que você criou nas propriedades do site, para que a visualização possa ser feita também usando esse acesso ao servidor web dedicado, em vez do servidor Dolibarr interno. YouCanAlsoTestWithPHPS= Usar com servidor embutido em PHP
    No ambiente de desenvolvimento, você pode preferir testar o site com o servidor da Web incorporado em PHP (o PHP 5.5 é necessário) executando o php -S 0.0. 0,0: 8080 -t %s TestDeployOnWeb=Testar / implementar na web PreviewSiteServedByWebServer= Visualize %s em uma nova guia.

    O %s será servido por um servidor web externo (como Apache, Nginx, IIS). Você deve instalar e configurar este servidor antes de apontar para o diretório:
    %s
    URL servido por servidor externo:
    %s @@ -48,7 +47,6 @@ FetchAndCreate=Procure e comece a criar BlogPost=Postagem do blog WebsiteAccounts=Conta do website AddWebsiteAccount=Criar conta do site -BackToListOfThirdParty=Voltar à lista para Terceiros DisableSiteFirst=Desativar o site primeiro MyContainerTitle=Título do meu site AnotherContainer=É assim que se inclui o conteúdo de outra página / contêiner (você pode ter um erro aqui se ativar o código dinâmico porque o subcontêiner incorporado pode não existir) @@ -56,7 +54,6 @@ SorryWebsiteIsCurrentlyOffLine=Desculpe, este site está off-line. Volte mais ta WEBSITE_USE_WEBSITE_ACCOUNTS=Habilitar a tabela da conta do site WEBSITE_USE_WEBSITE_ACCOUNTSTooltip=Ative a tabela para armazenar contas do site (login / senha) para cada site / terceiros YouMustDefineTheHomePage=Você deve primeiro definir a Home page padrão -OnlyEditionOfSourceForGrabbedContentFuture=Atenção: A criação de uma página da web através da importação de uma página web externa é reservada para usuários experientes. Dependendo da complexidade da página de origem, o resultado da importação pode diferir do original. Além disso, se a página de origem usar estilos CSS comuns ou javascript conflitante, isso poderá quebrar a aparência ou os recursos do editor de site ao trabalhar nesta página. Esse método é uma maneira mais rápida de criar uma página, mas é recomendável criar sua nova página a partir do zero ou de um modelo de página sugerido.
    Note também que as edições de fontes HTML serão possíveis quando o conteúdo da página for inicializado, editando a partir de uma página externa (o editor 'Online' NÃO estará disponível) OnlyEditionOfSourceForGrabbedContent=Apenas uma edição de fonte HTML é possível quando o conteúdo foi extraído de um site externo GrabImagesInto=Pegue também imagens encontradas no css e na página. WebsiteRootOfImages=Diretório raiz para imagens do site diff --git a/htdocs/langs/pt_BR/zapier.lang b/htdocs/langs/pt_BR/zapier.lang new file mode 100644 index 00000000000..a89605c4809 --- /dev/null +++ b/htdocs/langs/pt_BR/zapier.lang @@ -0,0 +1,4 @@ +# Dolibarr language file - Source file is en_US - zapier +ModuleZapierForDolibarrName =Zapier para Dolibarr +ModuleZapierForDolibarrDesc =Módulo Zapier para Dolibarr +ZapierForDolibarrSetup =Configurações do Zapier para Dolibarr diff --git a/htdocs/langs/pt_PT/accountancy.lang b/htdocs/langs/pt_PT/accountancy.lang index f779449974d..7718a78ead4 100644 --- a/htdocs/langs/pt_PT/accountancy.lang +++ b/htdocs/langs/pt_PT/accountancy.lang @@ -121,6 +121,7 @@ InvoiceLinesDone=Linhas vinculadas de faturas ExpenseReportLines=Linhas de relatórios de despesas para vincular ExpenseReportLinesDone=Linhas vinculadas de relatórios de despesas IntoAccount=Vincular linha com a conta contabilística +TotalForAccount=Total for accounting account Ventilate=Vincular @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Conta contabilística para registar donativos ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_ACCOUNT=Conta contabilística padrão para produtos vendidos (utilizada se não for definida na folha de produto) ACCOUNTING_PRODUCT_SOLD_INTRA_ACCOUNT=Accounting account by default for the products sold in EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported out of EEC (used if not defined in the product sheet) + ACCOUNTING_SERVICE_BUY_ACCOUNT=Conta contabilística padrão para compra de serviços (usada se não for definida na folha de serviço) +ACCOUNTING_SERVICE_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_ACCOUNT=Conta contabilística padrão para serviços vendidos (usada se não for definida na folha de serviço) ACCOUNTING_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unkno ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error PaymentsNotLinkedToProduct=Pagamento não vinculado a nenhum produto / serviço +OpeningBalance=Opening balance ShowOpeningBalance=Show opening balance HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Grupo de conta PcgtypeDesc=Group 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. +Reconcilable=Reconcilable + TotalVente=Total de volume de negócios sem impostos TotalMarge=Margem total de vendas @@ -307,11 +317,13 @@ 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Exportar CSV configurável Modelcsv_FEC=Export FEC Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=ID de plano de contas ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Modo de vendas OptionModeProductSellIntra=Mode sales exported in EEC OptionModeProductSellExport=Mode sales exported in other countries OptionModeProductBuy=Modo de compras +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries OptionModeProductSellDesc=Mostrar todos os produtos com conta contabilística para as vendas. OptionModeProductSellIntraDesc=Show all products with accounting account for sales in EEC. OptionModeProductSellExportDesc=Show all products with accounting account for other foreign sales. OptionModeProductBuyDesc=Mostrar todos os produtos com conta contabilística para as compras. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=Remover o código contábil das linhas que não existem nos gráficos de contas CleanHistory=Repor todas as vinculações para o ano selecionado PredefinedGroups=Grupos pré-definidos @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Account removed from group SaleLocal=Local sale SaleExport=Export sale SaleEEC=Sale in EEC +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=Gama da conta contabilística diff --git a/htdocs/langs/pt_PT/admin.lang b/htdocs/langs/pt_PT/admin.lang index 8924d7d7e5d..691132ea152 100644 --- a/htdocs/langs/pt_PT/admin.lang +++ b/htdocs/langs/pt_PT/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Utilizador/grupo do servidor da Web NoSessionFound=Your PHP configuration seems to not allow listing of active sessions. The directory used to save sessions (%s) may be protected (for example by OS permissions or by PHP directive open_basedir). DBStoringCharset=Conjunto de carateres da base de dados para guardar os dados DBSortingCharset=Conjunto de carateres da base de dados para ordenar os dados +HostCharset=Host charset ClientCharset=Jogo de caráter Cliente ClientSortingCharset=Colação de clientes WarningModuleNotActive=O módulo %s deve estar ativado @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the NoMaxSizeByPHPLimit=Nota: não está definido nenhum limite na sua configuração do PHP MaxSizeForUploadedFiles=Tamanho máximo para os ficheiros enviados (0 para rejeitar qualquer envio) UseCaptchaCode=Utilizar código gráfico (CAPTCHA) na página de iniciar a sessão -AntiVirusCommand= Caminho completo para o comando de antivírus -AntiVirusCommandExample= Exemplo para ClamWin: c:\\Progra~1\\ClamWin\\bin\\clamscan.exe
    Exemplo para ClamAV: /usr/bin/clamscan +AntiVirusCommand=Caminho completo para o comando de antivírus +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= Mais parâmetros na linha de comando -AntiVirusParamExample= Exemplo para ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=Configuração do módulo de "Contabilidade" UserSetup=Configuração e gestão dos utilizadores MultiCurrencySetup=Configuração da utilização de várias moedas @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Opção desativada em demo FeatureAvailableOnlyOnStable=Funcionalidade apenas disponível em versões estáveis ​​oficiais BoxesDesc=Widgets são componentes que mostram algumas informações que você pode adicionar para personalizar algumas páginas. Você pode escolher entre mostrar o widget ou não selecionando a página de destino e clicando em "Ativar" ou clicando na lixeira para desativá-la. OnlyActiveElementsAreShown=Só são mostrados os elementos de módulos ativos. -ModulesDesc=Os módulos / aplicativos determinam quais recursos estão disponíveis no software. Alguns módulos requerem permissões para serem concedidos aos usuários depois de ativar o módulo. Clique no botão on / off (no final da linha do módulo) para ativar / desativar um módulo / aplicativo. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. ModulesMarketPlaceDesc=Pode encontrar mais módulos para descarregar noutros sites da internet... ModulesDeployDesc=Se as permissões em seu sistema de arquivos permitirem, você poderá usar essa ferramenta para implantar um módulo externo. O módulo ficará visível na aba %s . ModulesMarketPlaces=Procurar aplicações/módulos externos @@ -212,6 +213,7 @@ CompatibleUpTo=Compatível com a versão %s NotCompatible=Este módulo não parece compatível com o seu Dolibarr %s (Min%s - Max%s). CompatibleAfterUpdate=Este módulo requer uma atualização para o seu Dolibarr %s(Min%s-Max%s). SeeInMarkerPlace=Veja no mercado de modulos +SeeSetupOfModule=Veja a configuração do módulo %s Updated=Atualizado Nouveauté=Novidade AchatTelechargement=Comprar / Download @@ -221,6 +223,7 @@ DoliPartnersDesc=Lista de empresas que fornecem módulos ou recursos desenvolvid WebSiteDesc=Sites externos para módulos adicionais (não principais) ... DevelopYourModuleDesc=Algumas soluções para desenvolver seu próprio módulo ... URL=URL +RelativeURL=Relative URL BoxesAvailable=Aplicativos disponíveis BoxesActivated=Aplicativos ativados ActivateOn=Ativar sobre @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Caixas de marcação ExtrafieldCheckBoxFromList=Caixas de marcação da tabela ExtrafieldLink=Vincular a um objeto ComputedFormula=Campo calculado -ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Store computed field ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! ExtrafieldParamHelpPassword=Deixar esse campo em branco significa que esse valor será armazenado sem criptografia (o campo deve ser oculto apenas com estrela na tela).
    Defina 'auto' para usar a regra de criptografia padrão para salvar a senha no banco de dados (o valor lido será o hash apenas, nenhuma maneira de recuperar o valor original) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Deixar em branco para usar o valor por omissão DefaultLink=Hiperligação predefinida SetAsDefault=Definir como predefinição ValueOverwrittenByUserSetup=Aviso: Este valor pode ter sido modificado pela configuração específica de um utilizador (cada utilizador pode definir o seu próprio link ClickToDial) -ExternalModule=Módulo externo - Instalado no diretório %s +ExternalModule=External module +InstalledInto=Installed into directory %s BarcodeInitForthird-parties=Código de barras em massa init para terceiros BarcodeInitForProductsOrServices=Inicialização ou reposição de códigos de barras em massa para produtos ou serviços CurrentlyNWithoutBarCode=Atualmente, você tem o registo %s em %s %s sem o código de barras definido. @@ -947,7 +951,7 @@ DictionaryCanton=States/Provinces DictionaryRegion=Distritos DictionaryCountry=Países DictionaryCurrency=Moedas -DictionaryCivility=Title of civility +DictionaryCivility=Honorific titles DictionaryActions=Tipos de eventos da agenda DictionarySocialContributions=Types of social or fiscal taxes DictionaryVAT=Taxa de IVA @@ -988,6 +992,7 @@ VATIsNotUsedDesc=By default the proposed Sales tax is 0 which can be used for ca VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=Taxa LocalTax1IsNotUsed=Não utilizar um segundo imposto LocalTax1IsUsedDesc=Use um segundo tipo de imposto (diferente do primeiro) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=A taxa de IRPF por padrão ao criar prospetos, faturas, or LocalTax2IsNotUsedDescES=Por defeito, o IRS proposto é 0. Fim da regra. LocalTax2IsUsedExampleES=Em Espanha, os freelancers e profissionais liberais que prestam serviços e empresas que escolheram o regime fiscal dos módulos. LocalTax2IsNotUsedExampleES=Em Espanha, são empresas não sujeitas ao sistema fiscal de módulos. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=Relatórios sobre impostos locais CalcLocaltax1=Vendas - Compras CalcLocaltax1Desc=Os relatórios de impostos locais são calculados através da diferença entre as vendas de impostos locais e as compras de impostos locais @@ -1018,6 +1026,7 @@ CalcLocaltax2=Compras CalcLocaltax2Desc=Os relatórios de impostos locais são o total de compras de impostos locais CalcLocaltax3=Vendas CalcLocaltax3Desc=Os relatórios de impostos locais são o total de vendas de impostos locais +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=Etiqueta que será utilizada por defeito se não for encontrada tradução para este código LabelOnDocuments=Etiqueta sobre documentos LabelOrTranslationKey=Etiqueta ou chave de tradução @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Expense report to approve Delays_MAIN_DELAY_HOLIDAYS=Leave requests to approve SetupDescription1=Antes de começar a usar o Dolibarr, alguns parâmetros iniciais devem ser definidos e módulos ativados / configurados. 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. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. SetupDescription5=Other Setup menu entries manage optional parameters. LogEvents=Eventos de auditoria da segurança Audit=Auditoria @@ -1128,7 +1137,7 @@ LogEventDesc=Enable logging for specific security events. Administrators the log AreaForAdminOnly=Os parâmetros de configuração só podem ser definidos pelos utilizadores administradores. SystemInfoDesc=Esta informação do sistema é uma informação técnica acessível só para leitura dos administradores. SystemAreaForAdminOnly=This area is available to administrator users only. Dolibarr user permissions cannot change this restriction. -CompanyFundationDesc=Edit the information of the company/entity. Click on "%s" button at the bottom of the page. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. AccountantFileNumber=Accountant code DisplayDesc=Parameters affecting the look and behaviour of Dolibarr can be modified here. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Rules to generate and validate passwords DisableForgetPasswordLinkOnLogonPage=Do not show the "Password Forgotten" link on the Login page UsersSetup=Configuração do módulo "Utilizadores" UserMailRequired=Email required to create a new user +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### HRMSetup=Configuração do módulo "GRH" ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Modelo de documentos de faturas BillsPDFModulesAccordindToInvoiceType=Modelos de documentos de faturas de acordo com o tipo de fatura PaymentsPDFModules=Modelos de documentos de pagamento ForceInvoiceDate=Forçar a data de fatura para a data de validação -SuggestedPaymentModesIfNotDefinedInInvoice=Formas de pagamento sugeridas para faturas por defeito, se não estiverem definidas explicitamente +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice SuggestPaymentByRIBOnAccount=Suggest payment by withdrawal on account SuggestPaymentByChequeToAddress=Suggest payment by check to FreeLegalTextOnInvoices=Texto livre em faturas @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Vendor payments setup PropalSetup=Configuração do módulo de orçamentos ProposalsNumberingModules=Modelos de numeração do orçamento ProposalsPDFModules=Modelos de documentos de orçamento -SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined for proposal +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal FreeLegalTextOnProposal=Texto livre nos orçamentos WatermarkOnDraftProposal=Marca de água nos orçamentos rascunhos (nenhuma, se vazio) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Pedir por conta bancária do destino do orçamento @@ -1322,6 +1334,7 @@ WAREHOUSE_ASK_WAREHOUSE_DURING_ORDER=Pedir qual o armazém origem para a encomen ##### Suppliers Orders ##### BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_ORDER=Pedir conta bancária destinatária para encomendas a fornecedores ##### Orders ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=Sales Orders management setup OrdersNumberingModules=Modelos de numeração de encomendas OrdersModelModule=Modelos de documentos de encomendas @@ -1720,7 +1733,7 @@ MultiCompanySetup=Configuração do módulo "Multi-empresa" ##### Suppliers ##### SuppliersSetup=Vendor module setup SuppliersCommandModel=Complete template of Purchase Order -SuppliersCommandModelMuscadet=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) SuppliersInvoiceModel=Complete template of Vendor Invoice SuppliersInvoiceNumberingModel=Vendor invoices numbering models IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Ocultar imagens no menu do topo LeftMenuBackgroundColor=Cor de fundo para o menu à esquerda BackgroundTableTitleColor=A cor do fundo para a linha de título das tabelas BackgroundTableTitleTextColor=Cor do texto para a linha de título da tabela +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=A cor do fundo para as linhas ímpares da tabela BackgroundTableLineEvenColor=Cor de fundo para linhas pares da tabela MinimumNoticePeriod=Período mínimo de notificação (o seu pedido de licença deve ser feito antes deste período) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Dolibarr Reference not found in Message ID FormatZip=Código postal MainMenuCode=Menu entry code (mainmenu) ECMAutoTree=Show automatic ECM tree -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. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Opening hours OpeningHoursDesc=Enter here the regular opening hours of your company. ResourceSetup=Configuration of Resource module @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramatical ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export +ImportSetup=Setup of module Import InstanceUniqueID=Unique ID of the instance SmallerThan=Smaller than LargerThan=Larger than @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled EmailTemplate=Template for email EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/pt_PT/bills.lang b/htdocs/langs/pt_PT/bills.lang index ce64ef91892..0aeb6ee5df7 100644 --- a/htdocs/langs/pt_PT/bills.lang +++ b/htdocs/langs/pt_PT/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Vendors invoices SupplierBill=Fatura de fornecedor SupplierBills=faturas de fornecedores Payment=Pagamento -PaymentBack=Reembolso -CustomerInvoicePaymentBack=Reembolso +PaymentBack=Refund +CustomerInvoicePaymentBack=Refund Payments=Pagamentos PaymentsBack=Refunds paymentInInvoiceCurrency=na moeda das faturas PaidBack=Reembolsada DeletePayment=Eliminar pagamento ConfirmDeletePayment=Tem a certeza que deseja eliminar este pagamento? -ConfirmConvertToReduc=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. -ConfirmConvertToReducSupplier=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. SupplierPayments=Vendor payments ReceivedPayments=Pagamentos recebidos @@ -209,17 +209,13 @@ NumberOfBillsByMonth=N.ª de faturas por mês AmountOfBills=Montante das faturas AmountOfBillsHT=Quantidade de faturas (líquidas de imposto) AmountOfBillsByMonthHT=Quantidade de faturas por mês (sem IVA) -ShowSocialContribution=Mostrar imposto social/fiscal -ShowBill=Ver fatura -ShowInvoice=Ver fatura -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 +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=To pay on %s toPayOn=to pay on %s RetainedWarranty=Retained Warranty @@ -230,7 +226,6 @@ 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 AlreadyPaidNoCreditNotesNoDeposits=Já pago (sem notas de crédito e adiantamentos) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Generated from template invoice %s WarningInvoiceDateInFuture=Atenção, a data da fatura é maior que a data atual WarningInvoiceDateTooFarInFuture=Atenção, a data da fatura está muito longe da data atual ViewAvailableGlobalDiscounts=Ver descontos disponíveis +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Estado PaymentConditionShortRECEP=Pronto Pagamento @@ -509,7 +505,7 @@ ToMakePayment=Pagar ToMakePaymentBack=Reembolsar ListOfYourUnpaidInvoices=Lista de faturas não pagas NoteListOfYourUnpaidInvoices=Nota: Esta lista apenas contém fatura de terceiros dos quais você está definido como representante de vendas. -RevenueStamp=Selo fiscal +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party YouMustCreateStandardInvoiceFirstDesc=Você precisa criar uma fatura padrão primeiro e convertê-la em "modelo" para criar uma nova fatura modelo @@ -575,3 +571,4 @@ AutoFillDateTo=Definir data final para a linha de serviço com a próxima data d AutoFillDateToShort=Definir data final MaxNumberOfGenerationReached=Número máximo de gen. alcançado BILL_DELETEInDolibarr=Fatura eliminada +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/pt_PT/blockedlog.lang b/htdocs/langs/pt_PT/blockedlog.lang index fced720f550..d50a1d77f48 100644 --- a/htdocs/langs/pt_PT/blockedlog.lang +++ b/htdocs/langs/pt_PT/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Logs inalteráveis ShowAllFingerPrintsMightBeTooLong=Mostrar todos os logs arquivados (podem ser longos) ShowAllFingerPrintsErrorsMightBeTooLong=Mostrar todos os logs de arquivo não válidos (podem ser longos) DownloadBlockChain=Baixe impressões digitais -KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this re after it was recorded, or has erased the previous archived record (check that line with previous # exists). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. OkCheckFingerprintValidityButChainIsKo=O log arquivado parece válido em comparação com o anterior, mas a cadeia foi corrompida anteriormente. AddedByAuthority=Armazenado em autoridade remota diff --git a/htdocs/langs/pt_PT/cashdesk.lang b/htdocs/langs/pt_PT/cashdesk.lang index d7da654dbc5..43080da1bfc 100644 --- a/htdocs/langs/pt_PT/cashdesk.lang +++ b/htdocs/langs/pt_PT/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Adicionar este artigo RestartSelling=Voltar para vendas SellFinished=Venda efetuada PrintTicket=Imprimir recibo +SendTicket=Send ticket NoProductFound=Nenhum artigo encontrado ProductFound=produto encontrado NoArticle=Nenhum artigo @@ -48,6 +49,7 @@ Footer=Footer AmountAtEndOfPeriod=Amount at end of period (day, month or year) TheoricalAmount=Theorical amount RealAmount=Real amount +CashFence=Cash fence CashFenceDone=Cash fence done for the period NbOfInvoices=Nº de faturas Paymentnumpad=Type of Pad to enter payment @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS needs product categories to work OrderNotes=Order Notes CashDeskBankAccountFor=Default account to use for payments in NoPaimementModesDefined=No paiment mode defined in TakePOS configuration -TicketVatGrouped=Group VAT by rate in tickets -AutoPrintTickets=Automatically print tickets +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? @@ -87,7 +90,19 @@ HeadBar=Head Bar SortProductField=Field for sorting products Browser=Navegador BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/pt_PT/companies.lang b/htdocs/langs/pt_PT/companies.lang index f858136653d..79d4c087127 100644 --- a/htdocs/langs/pt_PT/companies.lang +++ b/htdocs/langs/pt_PT/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted=A Empresa "%s" foi Eliminada ListOfContacts=Lista de Contactos ListOfContactsAddresses=Lista de Contactos ListOfThirdParties=Lista de Terceiros -ShowCompany=Mostrar terceiros ShowContact=Mostrar Contacto ContactsAllShort=Todos (sem filtro) ContactType=Tipo de Contacto @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=Primeiro nome do representante de vendas SaleRepresentativeLastname=Último nome do representante de vendas ErrorThirdpartiesMerge=Houve um erro ao eliminar os terceiros. Por favor, verifique o registo. As alterações foram revertidas. NewCustomerSupplierCodeProposed=Customer or Vendor code already used, a new code is suggested +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Payment Type - Customer PaymentTermsCustomer=Payment Terms - Customer diff --git a/htdocs/langs/pt_PT/compta.lang b/htdocs/langs/pt_PT/compta.lang index 3a29e054498..c19fc1ec380 100644 --- a/htdocs/langs/pt_PT/compta.lang +++ b/htdocs/langs/pt_PT/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=Consulte %sanálise de payments%s para um cálculo de SeeReportInDueDebtMode=Consulte %sanálise de invoices%s para um cálculo baseado em faturas registradas conhecidas, mesmo que elas ainda não tenham sido contabilizadas no Ledger. SeeReportInBookkeepingMode=Consulte %sRelatório de reservas%s para um cálculo na tabela Razão da contabilidade RulesAmountWithTaxIncluded=- Os montantes exibidos contêm todas as taxas incluídas -RulesResultDue=- Inclui faturas pendentes, despesas, IVA, doações, sejam elas pagas ou não. Inclui também salários pagos.
    - Baseia-se na data de validação das faturas e do IVA e na data de vencimento das despesas. Para os salários definidos com o módulo Salário, a data-valor do pagamento é utilizada. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- Inclui os pagamentos reais feitos em faturas, despesas, IVA e salários.
    - Baseia-se nas datas de pagamento das faturas, despesas, IVA e salários. A data de doação para doação. -RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the validation date of these invoices.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    RulesCATotalSaleJournal=Inclui todas as linhas de crédito do diário de venda. RulesAmountOnInOutBookkeepingRecord=Inclui registro em seu livro contábil com contas contábeis que tem o grupo "DESPESA" ou "LUCRO" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Volume de negócios faturado por taxa de imposto sobre vendas TurnoverCollectedbyVatrate=Volume de negócios cobrado pela taxa de imposto sobre vendas PurchasebyVatrate=Compra por taxa de imposto sobre vendas LabelToShow=Short label +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/pt_PT/donations.lang b/htdocs/langs/pt_PT/donations.lang index e913dcbe1e2..4eb12222791 100644 --- a/htdocs/langs/pt_PT/donations.lang +++ b/htdocs/langs/pt_PT/donations.lang @@ -4,10 +4,9 @@ Donations=Donativos DonationRef=Ref. do donativo Donor=Doador AddDonation=Crie uma donativo -NewDonation=Novo Donativo +NewDonation=Novo donativo DeleteADonation=Eliminar um donativo ConfirmDeleteADonation=Tem a certeza de que deseja eliminar este donativo? -ShowDonation=Mostrar Donativo PublicDonation=Donativo Público DonationsArea=Área de Donativos DonationStatusPromiseNotValidated=Promessa em rascunho @@ -17,11 +16,12 @@ DonationStatusPromiseNotValidatedShort=Rascunho DonationStatusPromiseValidatedShort=Validado DonationStatusPaidShort=Recebido DonationTitle=Recibo do donativo +DonationDate=Donation date DonationDatePayment=Data de pagamento ValidPromess=Validar promessa DonationReceipt=Recibo do Donativo DonationsModels=Modelos de documentos dos recibos de donativos -LastModifiedDonations=%s Últimas doações modificadas +LastModifiedDonations=Últimas %s doações modificadas DonationRecipient=Destinatário do Donativo IConfirmDonationReception=O destinatário declarou a receção, como um donativo, do seguinte montante MinimumAmount=O montante mínimo é %s diff --git a/htdocs/langs/pt_PT/errors.lang b/htdocs/langs/pt_PT/errors.lang index ae9275ab0c3..b86e65b680a 100644 --- a/htdocs/langs/pt_PT/errors.lang +++ b/htdocs/langs/pt_PT/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=Arquivo não foi recebido completamente pelo servidor. ErrorNoTmpDir=directorio Temporário %s não existe. ErrorUploadBlockedByAddon=Upload bloqueado por um plugin PHP Apache /. ErrorFileSizeTooLarge=O tamanho do arquivo é muito grande. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Tamanho demasiado longo para o tipo int (%s máximo dígitos) ErrorSizeTooLongForVarcharType=Tamanho demasiado longo para o tipo string (%s máximo chars) ErrorNoValueForSelectType=Por favor, preencha o valor para lista de selecção @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # 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. diff --git a/htdocs/langs/pt_PT/install.lang b/htdocs/langs/pt_PT/install.lang index 9b836cf1158..a13fa7eba64 100644 --- a/htdocs/langs/pt_PT/install.lang +++ b/htdocs/langs/pt_PT/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=Este PHP suporta o Curl. PHPSupportCalendar=This PHP supports calendars extensions. PHPSupportUTF8=Este PHP suporta funções UTF8. PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=This PHP supports %s functions. PHPMemoryOK=A sua memória máxima da sessão PHP está definida para %s. Isto deverá ser suficiente. PHPMemoryTooLow=Sua memória de sessão do PHP max está configurada para %s bytes. Isso é muito baixo. Altere seu php.ini para definir o parâmetro memory_limit para pelo menos %s bytes. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=A sua instalação PHP não suporta Curl. ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. ErrorPHPDoesNotSupportUTF8=Sua instalação do PHP não suporta funções UTF8. Dolibarr não pode funcionar corretamente. Resolva isso antes de instalar o Dolibarr. ErrorPHPDoesNotSupportIntl=Your PHP installation does not support Intl functions. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. ErrorDirDoesNotExists=A diretoria %s não existe. ErrorGoBackAndCorrectParameters=Volte e verifique / corrija os parâmetros. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=O aplicativo tentou fazer o upgrade automático, YouTryInstallDisabledByFileLock=O aplicativo tentou fazer o upgrade automático, mas as páginas de instalação / atualização foram desativadas para segurança (pela existência de um arquivo de bloqueio install.lock no diretório de documentos dolibarr). ClickHereToGoToApp=Clique aqui para ir ao seu aplicativo ClickOnLinkOrRemoveManualy=Clique no link a seguir. Se você sempre vê esta mesma página, você deve remover / renomear o arquivo install.lock no diretório de documentos. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/pt_PT/interventions.lang b/htdocs/langs/pt_PT/interventions.lang index f6cc216b282..00fd605bc8a 100644 --- a/htdocs/langs/pt_PT/interventions.lang +++ b/htdocs/langs/pt_PT/interventions.lang @@ -41,9 +41,7 @@ InterventionsArea=Área de Intervenções DraftFichinter=Intervenções rascunho LastModifiedInterventions=Últimas %s intervenções modificadas FichinterToProcess=Intervenções a processar -##### Types de contacts ##### TypeContact_fichinter_external_CUSTOMER=Contacto do cliente do seguimiento da intervenção -# Modele numérotation PrintProductsOnFichinter=Imprimir também linhas do tipo "produto" (não apenas serviços) na ficha de intervenção PrintProductsOnFichinterDetails=intervenções geradas a partir de encomendas UseServicesDurationOnFichinter=Utilizar a duração do serviço para as intervenções geradas a partir de encomendas @@ -53,14 +51,16 @@ InterventionStatistics=Estatísticas das intervenções NbOfinterventions=No. of intervention cards NumberOfInterventionsByMonth=No. of intervention cards by month (date of validation) AmountOfInteventionNotIncludedByDefault=O montante da intervenção não é incluído, por defeito, no lucro (na maioria dos casos, os quadros de horários são usados ​​para contar o tempo gasto). Adicione a opção PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT com o valor 1 em Inicio->Configurações->Outras configurações para incluí-los. -##### Exports ##### InterId=ID da intervenção InterRef=Ref. da intervenção InterDateCreation=Data de criação da intervenção InterDuration=Duração da intervenção InterStatus=Estado da intervenção InterNote=Nota da intervenção +InterLine=Line of intervention InterLineId=ID da intervenção na linha InterLineDate=Data da intervenção na linha InterLineDuration=Duração da intervenção na linha InterLineDesc=Descrição da intervenção na linha +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/pt_PT/link.lang b/htdocs/langs/pt_PT/link.lang index 7ff3b74a22c..49a5aaaef43 100644 --- a/htdocs/langs/pt_PT/link.lang +++ b/htdocs/langs/pt_PT/link.lang @@ -8,3 +8,4 @@ LinkRemoved=A hiperligação %s foi removida ErrorFailedToDeleteLink= falhou a remoção da ligação '%s' ErrorFailedToUpdateLink= Falha na atualização de ligação '%s' URLToLink=URL para hiperligação +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/pt_PT/mails.lang b/htdocs/langs/pt_PT/mails.lang index 24ce7015897..e742b00fd45 100644 --- a/htdocs/langs/pt_PT/mails.lang +++ b/htdocs/langs/pt_PT/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=Nenhum contato / endereço com uma categoria encontra NoContactLinkedToThirdpartieWithCategoryFound=Nenhum contato / endereço com uma categoria encontrada OutGoingEmailSetup=Configuração de email de saída InGoingEmailSetup=Configuração de email de entrada -OutGoingEmailSetupForEmailing=Configuração de email de saída (para envio em massa) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Configuração de email de saída padrão Information=Informação ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/pt_PT/main.lang b/htdocs/langs/pt_PT/main.lang index 273f77e31c6..0b8162089a5 100644 --- a/htdocs/langs/pt_PT/main.lang +++ b/htdocs/langs/pt_PT/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Save and stay SaveAndNew=Save and new TestConnection=Testar conexão ToClone=Clonar +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Choose data you want to clone: NoCloneOptionsSpecified=Não existem dados definidos para clonar. Of=de @@ -829,6 +830,8 @@ Gender=Género Genderman=Homem Genderwoman=Mulher ViewList=Ver Lista +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Obrigatório Hello=Olá GoodBye=Adeus @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Select your graph options to build a graph Measures=Measures XAxis=X-Axis YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/pt_PT/modulebuilder.lang b/htdocs/langs/pt_PT/modulebuilder.lang index 893002e52c2..8fde0ce0fc6 100644 --- a/htdocs/langs/pt_PT/modulebuilder.lang +++ b/htdocs/langs/pt_PT/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=List of dictionaries entries ListOfPermissionsDefined=Lista de permissões definidas SeeExamples=Veja exemplos aqui EnabledDesc=Condição para ter este campo ativo (Exemplos: 1 ou $ conf-> global-> MYMODULE_MYOPTION) -VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update). Using a negative value means field is not shown by default on list but can be selected for viewing). It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty DisplayOnPdf=Display on PDF IsAMeasureDesc=O valor do campo pode ser acumulado para obter um total na lista? (Exemplos: 1 ou 0) SearchAllDesc=O campo é usado para fazer uma pesquisa a partir da ferramenta de pesquisa rápida? (Exemplos: 1 ou 0) diff --git a/htdocs/langs/pt_PT/other.lang b/htdocs/langs/pt_PT/other.lang index 1822aec2da0..0a33852c36e 100644 --- a/htdocs/langs/pt_PT/other.lang +++ b/htdocs/langs/pt_PT/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Sales order validated Notify_ORDER_SENTBYMAIL=Sales order sent by mail Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=URL da página WEBSITE_TITLE=Título WEBSITE_DESCRIPTION=Descrição WEBSITE_IMAGE=Imagem -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Palavras-chave LinesToImport=Linhas a importar diff --git a/htdocs/langs/pt_PT/products.lang b/htdocs/langs/pt_PT/products.lang index 59c7166cd74..ed279a0744a 100644 --- a/htdocs/langs/pt_PT/products.lang +++ b/htdocs/langs/pt_PT/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL MassBarcodeInit=Inicialização por código de barras em massa MassBarcodeInitDesc=Esta página pode ser usada para inicializar um código de barras em objetos que não possuem código de barras definido. Verifique antes que a configuração do código de barras do módulo esteja concluída. ProductAccountancyBuyCode=Código de contabilidade (compra) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Código de contabilidade (venda) ProductAccountancySellIntraCode=Código contábil (venda intracomunitária) ProductAccountancySellExportCode=Código de contabilidade (venda exportação) @@ -165,7 +167,7 @@ SuppliersPrices=Preços de fornecedor SuppliersPricesOfProductsOrServices=Vendor prices (of products or services) CustomCode=Código Aduaneiro / Commodity / HS CountryOrigin=País de origem -Nature=Nature of produt (material/finished) +Nature=Nature of product (material/finished) ShortLabel=Rótulo curto Unit=Unidade p=você. diff --git a/htdocs/langs/pt_PT/projects.lang b/htdocs/langs/pt_PT/projects.lang index 73ad2b0c810..7720b8f1c77 100644 --- a/htdocs/langs/pt_PT/projects.lang +++ b/htdocs/langs/pt_PT/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=which I'm linked to project Time=Tempo ListOfTasks=Lista de tarefas GoToListOfTimeConsumed=Ir para a lista de tempo consumido -GoToListOfTasks=Show as list -GoToGanttView=show as Gantt GanttView=Vista de Gantt ListProposalsAssociatedProject=Lista das propostas comerciais relacionadas ao projeto ListOrdersAssociatedProject=List of sales orders related to the project @@ -188,7 +186,7 @@ PlannedWorkload=Carga de trabalho prevista PlannedWorkloadShort=Carga de trabalho ProjectReferers=Itens relacionados ProjectMustBeValidatedFirst=Primeiro deve validar o projeto -FirstAddRessourceToAllocateTime=Atribuir um recurso do usuário à tarefa para alocar tempo +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=Entrada por dia InputPerWeek=Entrada por semana InputPerMonth=Input per month @@ -240,6 +238,7 @@ LatestModifiedProjects=Últimos %s projetos modificados OtherFilteredTasks=Outras tarefas filtradas NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=Permitir comentários de usuários sobre tarefas AllowCommentOnProject=Permitir comentários de usuários em projetos @@ -256,7 +255,7 @@ ServiceToUseOnLines=Service to use on lines InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. ProjectFollowOpportunity=Follow opportunity -ProjectFollowTasks=Follow tasks +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Usage: Opportunity UsageTasks=Usage: Tasks @@ -265,3 +264,4 @@ InvoiceToUse=Draft invoice to use NewInvoice=Nova fatura OneLinePerTask=One line per task OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/pt_PT/receiptprinter.lang b/htdocs/langs/pt_PT/receiptprinter.lang index 0a295c55579..b786db547bb 100644 --- a/htdocs/langs/pt_PT/receiptprinter.lang +++ b/htdocs/langs/pt_PT/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Impressora de Teste CONNECTOR_NETWORK_PRINT=Impressora de Rede CONNECTOR_FILE_PRINT=Impressora Local CONNECTOR_WINDOWS_PRINT=Impressora do Windows Local +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Impressora de Teste para testar, não faz nada CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Perfil Predefinido PROFILE_SIMPLE=Perfil Simples PROFILE_EPOSTEP=Epos Tep Profile @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Invoice month in letters DOL_VALUE_MONTH=Invoice month DOL_VALUE_DAY=Invoice day DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Ref. fatura +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=Capital +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/pt_PT/stripe.lang b/htdocs/langs/pt_PT/stripe.lang index cc9e30cffc6..ee0f48cc59a 100644 --- a/htdocs/langs/pt_PT/stripe.lang +++ b/htdocs/langs/pt_PT/stripe.lang @@ -32,6 +32,7 @@ VendorName=Nome do fornecedor CSSUrlForPaymentForm=CSS url folha de estilo para forma de pagamento NewStripePaymentReceived=Novo pagamento Stripe recebido NewStripePaymentFailed=Nova tentativa de pagamento Stripo, mas falhou +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Chave de teste secreta STRIPE_TEST_PUBLISHABLE_KEY=Chave de teste publicável STRIPE_TEST_WEBHOOK_KEY=Chave de teste Webhook @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mo 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... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authenticatin rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/pt_PT/users.lang b/htdocs/langs/pt_PT/users.lang index b200b42a58a..a5e87314b36 100644 --- a/htdocs/langs/pt_PT/users.lang +++ b/htdocs/langs/pt_PT/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Users and their properties DomainUser=Utilizador de Domínio %s Reactivate=Reativar CreateInternalUserDesc=This form allows you to create an internal user in your company/organization. To create an external user (customer, vendor etc. ..), use the button 'Create Dolibarr User' from that third-party's contact card. -InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other.

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=A permissão dá-se já que o herda de um grupo ao qual pertenece o utilizador. Inherited=Herdado UserWillBeInternalUser=O utilizador criado irá ser um utilizador interno (porque não está interligado com um terceiro em particular) @@ -110,3 +110,8 @@ UserLogged=Utilizador conectado DateEmployment=Employment Start Date DateEmploymentEnd=Employment End Date CantDisableYourself=You can't disable your own user record +ForceUserExpenseValidator=Force expense report validator +ForceUserHolidayValidator=Force leave request validator +ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/pt_PT/website.lang b/htdocs/langs/pt_PT/website.lang index 5f3112d92c8..db1c9d13c3a 100644 --- a/htdocs/langs/pt_PT/website.lang +++ b/htdocs/langs/pt_PT/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=Ver página no novo separador SetAsHomePage=Definir como página de 'Início' RealURL=URL Real ViewWebsiteInProduction=Ver site da Web utilizando URLs de início -SetHereVirtualHost=Use with Apache/NGinx/...
    If you can create, on your web server (Apache, Nginx, ...), a dedicated Virtual Host with PHP enabled and a Root directory on
    %s
    then set the name of the virtual host you have created in the properties of web site, so the preview can be done also using this dedicated web server access instead of the internal Dolibarr server. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS= Usar com servidor embutido em PHP
    No ambiente de desenvolvimento, você pode preferir testar o site com o servidor da Web incorporado em PHP (requer PHP 5.5) executando php -S 0.0. 0,0: 8080 -t %s YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org CheckVirtualHostPerms=Verifique também se o host virtual tem permissão %s em arquivos para o %s @@ -56,7 +57,7 @@ NoPageYet=Ainda sem páginas YouCanCreatePageOrImportTemplate=Você pode criar uma nova página ou importar um modelo de site completo SyntaxHelp=Ajuda em dicas de sintaxe específicas YouCanEditHtmlSourceckeditor=Você pode editar o código-fonte HTML usando o botão "Fonte" no editor. -YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Página / contêiner clone CloneSite=Site clone SiteAdded=Website adicionado @@ -76,7 +77,7 @@ BlogPost=Postagem no blog WebsiteAccount=Conta do site WebsiteAccounts=Contas do site AddWebsiteAccount=Crie uma conta do site -BackToListOfThirdParty=Voltar para lista de terceiros +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Desativar primeiro site MyContainerTitle=Meu título do site AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Sorry, this website is currently off line. Please WEBSITE_USE_WEBSITE_ACCOUNTS=Ativar a tabela de contas do site WEBSITE_USE_WEBSITE_ACCOUNTSTooltip=Enable the table to store web site accounts (login/pass) for each website / third party YouMustDefineTheHomePage=Primeiro deve definir a página de Início predefinida -OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that edits of HTML source will be possible when page content has been initialized by grabbing it from an external page ("Online" editor will NOT be available) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Somente edição de fonte HTML é possível quando o conteúdo foi obtido de um site externo GrabImagesInto=Pegue também imagens encontradas em css e página. ImagesShouldBeSavedInto=As imagens devem ser salvas no diretório @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 ch MainLanguage=Main language OtherLanguages=Other languages UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/pt_PT/zapier.lang b/htdocs/langs/pt_PT/zapier.lang new file mode 100644 index 00000000000..db32d03ccc0 --- /dev/null +++ b/htdocs/langs/pt_PT/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier para o módulo Dolibarr + +# +# Admin page +# +ZapierForDolibarrSetup = Configuração do Zapier para Dolibarr diff --git a/htdocs/langs/ro_RO/accountancy.lang b/htdocs/langs/ro_RO/accountancy.lang index a112e86b8ef..3f2c550facb 100644 --- a/htdocs/langs/ro_RO/accountancy.lang +++ b/htdocs/langs/ro_RO/accountancy.lang @@ -121,6 +121,7 @@ InvoiceLinesDone=Asociaza liniile facturii ExpenseReportLines=Linii de rapoarte de cheltuieli de asociat ExpenseReportLinesDone=Linii asociate de rapoarte de cheltuieli IntoAccount=Asociaza linia cu contul contabil +TotalForAccount=Total for accounting account Ventilate=Asociaza @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Contul contabil pentru a înregistra donații ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Contul Contabilitate pentru a înregistra abonamente ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_ACCOUNT=Cont contabil implicit pentru produsele vândute (utilizate dacă nu este definit în fișa produsului) ACCOUNTING_PRODUCT_SOLD_INTRA_ACCOUNT=Accounting account by default for the products sold in EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported out of EEC (used if not defined in the product sheet) + ACCOUNTING_SERVICE_BUY_ACCOUNT=Contul contabil implicit pentru serviciile cumpărate (utilizat dacă nu este definit în fișa serviciului) +ACCOUNTING_SERVICE_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_ACCOUNT=Contul contabil implicit pentru serviciile vândute (utilizat dacă nu este definit în fișa de servicii) ACCOUNTING_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Terț necunoscut ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Contul terț nu este definit sau este necunoscut. Eroare de blocare. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Conturile terț și de așteptare necunoscute nu sunt definite. Eroare de blocare PaymentsNotLinkedToProduct=Plata nu legată de vreun produs/serviciu +OpeningBalance=Opening balance ShowOpeningBalance=Afişează soldurile de deschidere HideOpeningBalance=Ascunde soldurile de deschidere +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Grup de conturi PcgtypeDesc=Group 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. +Reconcilable=Reconcilable + TotalVente=Cifra de afaceri totală înainte de impozitare TotalMarge=Total Marje vânzări @@ -307,11 +317,13 @@ Modelcsv_quadratus=Export pentru Quadratus QuadraCompta Modelcsv_ebp=Export pentru EBP Modelcsv_cogilog=Export pentru Cogilog Modelcsv_agiris=Export pentru Agiris -Modelcsv_LDCompta=Export pentru LD Compta (v9 & superior) (Test) +Modelcsv_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Export pentru OpenConcerto (Test) Modelcsv_configurable=Exportați CSV configurabil Modelcsv_FEC=Exportă fişier FEC Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Id-ul listei de conturi ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Mod vanzari OptionModeProductSellIntra=Mod vânzări export în CEE OptionModeProductSellExport=Mod vânzări export în alte ţări OptionModeProductBuy=Mod cumparari +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries OptionModeProductSellDesc=Afișați toate produsele ce au cont contabil pentru vânzări. OptionModeProductSellIntraDesc=Afișează toate produsele cu cont contabil pentru vânzările în CEE. OptionModeProductSellExportDesc=Afișează toate produsele cu cont contabil pentru vânzările în alte ţări. OptionModeProductBuyDesc=Afișați toate produsele ce au cont contabil pentru achiziții. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=Eliminați codul contabil din linii care nu există în diagramele de cont CleanHistory=Resetați toate asocierile pentru anul selectat PredefinedGroups=Grupuri predefinite @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Cont contabil eliminat din grupă SaleLocal=Vânzare locală SaleExport=Vânzare la export SaleEEC=Vânzări în CEE +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=Rang cont contabil diff --git a/htdocs/langs/ro_RO/admin.lang b/htdocs/langs/ro_RO/admin.lang index 8f60b7aa1f2..9118285a109 100644 --- a/htdocs/langs/ro_RO/admin.lang +++ b/htdocs/langs/ro_RO/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Web Server utilizator / grup NoSessionFound=Configurația dvs. PHP pare să nu permită listarea sesiunilor active. Directorul utilizat pentru salvarea sesiunilor ( %s ) ar putea fi protejat (de exemplu prin permisiuni ale sistemului de operare sau prin directiva PHP open_basedir). DBStoringCharset=Set caractere al bazei de date pentru stocarea datelor DBSortingCharset=Set caractereal bazei de date pentru sortarea datelor +HostCharset=Host charset ClientCharset=Set de caractere client ClientSortingCharset=Compararea clienților WarningModuleNotActive=Modulul %s trebuie să fie activat @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Notă: configurația dvs. PHP limitează în p NoMaxSizeByPHPLimit=Notă: Nicio limită setată în configuraţia dvs. PHP MaxSizeForUploadedFiles=Mărimea maximă pentru fişierele încărcate (0 pentru a interzice orice încărcare) UseCaptchaCode=Utilizaţi codul grafic (CAPTCHA) pe pagina de login -AntiVirusCommand= Calea completă la comanda antivirus -AntiVirusCommandExample= Exemplu pentru ClamWin: c:\\Progra~1\\ClamWin\\bin\\clamscan.exe
    Examplu pentru ClamAv: /usr/bin/clamscan +AntiVirusCommand=Calea completă la comanda antivirus +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= Mai multe despre parametrii în linia de comandă -AntiVirusParamExample= Exemplu pentru ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=Setări Modul Contabilitate UserSetup=Setări Modul Utilizatori MultiCurrencySetup=Setarea în mai multe valute @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Funcţonalitate dezactivată în demo FeatureAvailableOnlyOnStable=Funcție disponibilă numai pe versiuni oficiale stabile BoxesDesc=Widgeturile sunt componente care prezintă unele informații pe care le puteți adăuga pentru a personaliza unele pagini. Puteți alege între afișarea sau neafișarea widget-ului , selectând pagina țintă și dând clic pe "Activați" sau făcând clic pe coșul de gunoi pentru a o dezactiva. OnlyActiveElementsAreShown=Numai elementele din module activate sunt afişate. -ModulesDesc=Modulele / aplicațiile determină care caracteristici sunt disponibile în software. Unele module necesită permisiuni pentru a fi acordate utilizatorilor după activarea modulului. Faceți clic pe butonul on/off (la sfârșitul liniei de module) pentru a activa/dezactiva un modul/aplicație. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. ModulesMarketPlaceDesc=Puteți descărca mai multe module de pe site-uri externe de pe Internet ... ModulesDeployDesc=Dacă permisiunile sistemului dvs. de fișiere permit acest lucru, puteți utiliza acest instrument pentru a implementa un modul extern. Modulul va fi apoi vizibil în tab %s . ModulesMarketPlaces=Găsiți aplicația / modulele externe @@ -212,6 +213,7 @@ CompatibleUpTo=Compatibil cu versiunea %s NotCompatible=Acest modul nu pare compatibil cu Dolibarr %s (Min %s - Max %s). CompatibleAfterUpdate=Acest modul necesită o actualizare la Dolibarr %s (Min %s - Max %s). SeeInMarkerPlace=Consultați Market place +SeeSetupOfModule=Vezi setare modul %s Updated=Updatat Nouveauté=Noutate AchatTelechargement=Cumpărați / Descărcați @@ -221,6 +223,7 @@ DoliPartnersDesc=Lista companiilor care oferă module sau caracteristici dezvolt WebSiteDesc=Site-uri externe pentru module suplimentare (non-core) ... DevelopYourModuleDesc=Unele soluții pentru a vă dezvolta propriul modul ... URL=URL +RelativeURL=Relative URL BoxesAvailable=Widgeturi disponibile BoxesActivated=Widgeturile activate ActivateOn=Activaţi pe @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Casetele de selectare ExtrafieldCheckBoxFromList=Căsuțele de selectare din tabel ExtrafieldLink=Link către un obiect ComputedFormula=Câmp calculat -ComputedFormulaDesc=Puteți introduce aici o formulă care utilizează alte proprietăți ale obiectului sau orice codare PHP pentru a obține o valoare dinamică calculată. Puteți utiliza orice formule compatibile PHP, inclusiv operatorul de stare "?" și următorul obiect global:$db, $conf, $langs, $mysoc, $user, $object .
    AVERTISMENT Doar unele proprietăţi ale $obiect pot fi disponibile. Dacă aveți nevoie de proprietăți care nu sunt încărcate, trebuie doar să vă aduceți obiectul în formula dvs. ca în cel de-al doilea exemplu.
    Utilizarea unui câmp calculat înseamnă că nu vă puteți introduce nici o valoare din interfață. De asemenea, dacă există o eroare de sintaxă, formula poate să nu redea nimic.

    Exemplul formulei:
    $object->id < 10? round($object-> id / 2, 2): ($object->id + 2 * $user-> id) * (int) substr($mysoc->zip, 1, 2)

    Exemplu de reîncărcare a obiectului
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ?$reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Alt exemplu de formula pentru forțarea încărcării obiectului și a obiectului său părinte:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: "Proiectul părinte nu a fost găsit" +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Stocați câmpul calculat ComputedpersistentDesc=Câmpurile suplimentare computerizate vor fi stocate în baza de date, cu toate acestea, valoarea va fi recalculată numai atunci când obiectul acestui câmp este modificat. Dacă câmpul calculat depinde de alte obiecte sau date globale, această valoare ar putea fi greșită !! ExtrafieldParamHelpPassword=Lăsând acest câmp necompletat înseamnă că această valoare va fi stocată fără criptare (câmpul trebuie ascuns numai cu stea pe ecran).
    Setarea "auto" pentru utilizarea regulii de criptare implicită pentru a salva parola în baza de date (atunci valoarea citită va fi hash numai, nici o şansă de a recupera valoarea inițială) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Lasă gol pentru utilizarea valorii implicite DefaultLink=Link implicit SetAsDefault=Setați ca implicit ValueOverwrittenByUserSetup=Atenție, această valoare poate fi suprascrisă de setările specifice utilizatorului (fiecare utilizator poate seta propriul url clicktodial) -ExternalModule=Modul extern - instalat în directorul %s +ExternalModule=External module +InstalledInto=Installed into directory %s BarcodeInitForthird-parties=Cod de bare de masă pentru terți BarcodeInitForProductsOrServices=Init sau reset cod de bare în masă pentru produse şi servicii CurrentlyNWithoutBarCode=În prezent, aveti %s inregistrari pe %s %s fără cod de bare definit. @@ -947,7 +951,7 @@ DictionaryCanton=State/Provincii DictionaryRegion=Regiuni DictionaryCountry=Ţări DictionaryCurrency=Monede -DictionaryCivility=Titlul de politețe +DictionaryCivility=Honorific titles DictionaryActions=Tipuri evenimente agenda DictionarySocialContributions=Tipuri de taxe sociale si fiscale DictionaryVAT=Cote TVA sau Cote Taxe Vanzări @@ -988,6 +992,7 @@ VATIsNotUsedDesc=Implicit, taxa de vânzare propusă este 0, ea poate fi utiliza VATIsUsedExampleFR=În Franța, înseamnă companii sau organizații care au un sistem fiscal real (Simplificat real sau normal real). Un sistem în care TVA este declarată . VATIsNotUsedExampleFR=În Franța, înseamnă că sunt declarate asociații care nu sunt plătitoare de taxe sau societăți, organizații sau profesii liberale care au ales sistemul fiscal micro intreprindere (taxe de vânzări în franciză) şi plătesc taxe de vânzare de franciză fără nicio declarație de taxe de vânzare. Această opțiune va afișa referinţa "Vânzări cu taxe neaplicabile - art-293B de CGI" pe facturi. ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=Rată LocalTax1IsNotUsed=Nu utilizează taxa secundă LocalTax1IsUsedDesc=Utilizați un al doilea tip de taxă (alta decât prima) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=Rata IRPF în mod implicit când se creează perspective, LocalTax2IsNotUsedDescES=În mod implicit propus IRPF este 0. Sfârşitul regulă. LocalTax2IsUsedExampleES=În Spania, liber profesionişti şi specialişti independenţi, care presta servicii şi companiile care au ales sistemul de impozitare de module. LocalTax2IsNotUsedExampleES=În Spania, sunt întreprinderi care nu sunt supuse sistemului de taxare pe module. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=Rapoarte pe taxe locale CalcLocaltax1=Vânzări - Cumpârări CalcLocaltax1Desc=Rapoarte Taxe Locale este calcult ca diferenţă dintre taxele locale de vanzare şi taxele locale de cumparare @@ -1018,6 +1026,7 @@ CalcLocaltax2=Achiziţii CalcLocaltax2Desc=Rapoarte Taxe Locale este totalul taxelor locale de cumpărare CalcLocaltax3=Vânzări CalcLocaltax3Desc=Rapoarte Taxe Locale este totalul taxelor locale de vanzare +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=Eticheta utilizat în mod implicit în cazul în care nu poate fi găsit de traducere pentru codul LabelOnDocuments=Eticheta de pe documente LabelOrTranslationKey=Etichetă sau cheie de traducere @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Raportul de cheltuieli pentru aprobare Delays_MAIN_DELAY_HOLIDAYS=Leave requests to approve SetupDescription1=Înainte de a începe să utilizați Dolibarr, unii parametri inițiali trebuie să fie definiți and modulele activate/configurate. SetupDescription2=Următoarele două secțiuni sunt obligatorii (primele două intrări din meniul de configurare) -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. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. SetupDescription5=Alte intrări în meniul de configurare gestionează parametrii opționali. LogEvents=Audit de securitate evenimente Audit=Audit @@ -1128,7 +1137,7 @@ LogEventDesc=Activați autentificarea pentru anumite evenimente de securitate. A AreaForAdminOnly=Parametrii de configurare pot fi setați numai de utilizatorii administratori . SystemInfoDesc=Sistemul de informare este diverse informaţii tehnice ai citit doar în modul şi vizibil doar pentru administratori. SystemAreaForAdminOnly=Acest zonă este disponibilă numai administratori. Permisiunile utilizatorilor Dolibarr nu pot modifica această restricție -CompanyFundationDesc=Edit the information of the company/entity. Click on "%s" button at the bottom of the page. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. AccountantFileNumber=Accountant code DisplayDesc=Parametrii care afectează aspectul şi comportamentul Dolibarr pot fi modificaţi aici. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Reguli pentru generarea și validarea parolelor DisableForgetPasswordLinkOnLogonPage=Nu afișați link-ul "Parola uitată" pe pagina de autentificare UsersSetup=Utilizatorii modul de configurare UserMailRequired=E-mailul necesar pentru a crea un utilizator nou +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### HRMSetup=Configurare Modul HRM ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Factura modele de documente BillsPDFModulesAccordindToInvoiceType=Modele de documente de facturare în funcție de tipul de factură PaymentsPDFModules=Modele de documente de plată ForceInvoiceDate=Vigoare la data facturii de validare data -SuggestedPaymentModesIfNotDefinedInInvoice=Sugestii cu privire la modul de plata facturii, în mod implicit, dacă nu este definit de factură +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice SuggestPaymentByRIBOnAccount=Sugerați plata prin retragere din cont SuggestPaymentByChequeToAddress=Sugerați plata de prin cec către FreeLegalTextOnInvoices=Free text pe facturi @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Configurarea plăților furnizorului PropalSetup=Modul configurare Oferte Comerciale ProposalsNumberingModules=Modele numerotare Oferte Comerciale ProposalsPDFModules=Modele documente Oferte Comerciale -SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined for proposal +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal FreeLegalTextOnProposal=Text liber pe ofertele comerciale WatermarkOnDraftProposal=Filigranul pe ofertele comerciale schiţă (niciunul daca e gol) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Cere contul bancar destinație al ofertei @@ -1322,6 +1334,7 @@ WAREHOUSE_ASK_WAREHOUSE_DURING_ORDER=Cereţi sursa depozitului pentru comandă ##### Suppliers Orders ##### BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_ORDER=Cereţi contul bancar al beneficiarului unei comenzi de achiziție ##### Orders ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=Setări pentru gestionarea comenzilor de vânzări OrdersNumberingModules=Ordinele de numerotare module OrdersModelModule=Ordinul modele de documente @@ -1720,7 +1733,7 @@ MultiCompanySetup=Multi-societate modul setup ##### Suppliers ##### SuppliersSetup=Configurarea modulului furnizor SuppliersCommandModel=Complete template of Purchase Order -SuppliersCommandModelMuscadet=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) SuppliersInvoiceModel=Complete template of Vendor Invoice SuppliersInvoiceNumberingModel=Modele de numerotare a facturilor furnizorilor IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Ascundeți imaginile în meniul de deasupra LeftMenuBackgroundColor=Culoare Background pentru Left menu BackgroundTableTitleColor=Culoarea de fundal pentru linia de titlul a tabelului BackgroundTableTitleTextColor=Culoarea textului pentru linia de titlul a tabelului +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Culoarea de fundal pentru liniile impare ale tabelului BackgroundTableLineEvenColor=Culoarea de fundal pentru liniile pare ale tabelului MinimumNoticePeriod=Perioada minimă de preaviz (cererea dvs. de concediu trebuie făcută înainte de această întârziere) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Dolibarr Reference not found in Message ID FormatZip=Zip MainMenuCode=Codul de introducere a meniului (meniu principal) ECMAutoTree=Afișați arborele ECM automat -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. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Ore de program OpeningHoursDesc=Introduceți aici orele de program normale ale companiei dvs. ResourceSetup=Configurarea modulului Resurse @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramatical ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export +ImportSetup=Setup of module Import InstanceUniqueID=Unique ID of the instance SmallerThan=Smaller than LargerThan=Larger than @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled EmailTemplate=Template for email EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/ro_RO/bills.lang b/htdocs/langs/ro_RO/bills.lang index c973f37860a..29729435af0 100644 --- a/htdocs/langs/ro_RO/bills.lang +++ b/htdocs/langs/ro_RO/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Facturi Furnizori SupplierBill=Factura furnizorului SupplierBills=Facturi Furnizori Payment=Plată -PaymentBack=Restituire Plată -CustomerInvoicePaymentBack=Restituire Plată +PaymentBack=Rambursare +CustomerInvoicePaymentBack=Rambursare Payments=Plăţi PaymentsBack=Refunds paymentInInvoiceCurrency=in moneda facturii PaidBack=Restituit DeletePayment=Ştergere plată ConfirmDeletePayment=Sunteţi sigur că doriţi să ştergeţi această plată? -ConfirmConvertToReduc=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. -ConfirmConvertToReducSupplier=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. SupplierPayments=Plățile furnizorului ReceivedPayments=Încasări primite @@ -209,17 +209,13 @@ NumberOfBillsByMonth=Nr. de facturi pe lună AmountOfBills=Valoare facturi AmountOfBillsHT=Suma facturilor (fără impozit) AmountOfBillsByMonthHT=Valoarea facturilor pe luni (fără tva) -ShowSocialContribution=Afisează taxa sociala/fiscala -ShowBill=Afisează factura -ShowInvoice=Afisează factura -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 +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=To pay on %s toPayOn=to pay on %s RetainedWarranty=Retained Warranty @@ -230,7 +226,6 @@ 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ă AlreadyPaidNoCreditNotesNoDeposits=Plătit deja (fără note de credit și plăți în avans) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Generated from template invoice %s WarningInvoiceDateInFuture=Avertisment, data facturii este mai mare decât data curentă WarningInvoiceDateTooFarInFuture=Avertisment, data facturii este prea departe de data curentă ViewAvailableGlobalDiscounts=Vedeți reducerile disponibile +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Status PaymentConditionShortRECEP=Scadentă la primire @@ -509,7 +505,7 @@ ToMakePayment=Plăteşte ToMakePaymentBack=Rambursează ListOfYourUnpaidInvoices=Lista facturilor neplătite NoteListOfYourUnpaidInvoices=Notă: Această listă conține numai facturile pentru partenerii la care sunteţi reprezentant de vânzării. -RevenueStamp=Timbru fiscal +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=Această opțiune este disponibilă numai când creați o factură din fila "Client" al unui terț YouMustCreateInvoiceFromSupplierThird=Această opțiune este disponibilă numai când creați o factură din fila "Furnizor" al unui terț YouMustCreateStandardInvoiceFirstDesc=Intai se poate crea o factură standard si se transforma in model pentru a avea un nou model de factura. @@ -575,3 +571,4 @@ AutoFillDateTo=Setați data de încheiere pentru linia de servicii cu data urmă AutoFillDateToShort=Setați data de încheiere MaxNumberOfGenerationReached=Numărul maxim de gen. atins BILL_DELETEInDolibarr=Factură ştearsă +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/ro_RO/blockedlog.lang b/htdocs/langs/ro_RO/blockedlog.lang index 8606592e234..854459a81da 100644 --- a/htdocs/langs/ro_RO/blockedlog.lang +++ b/htdocs/langs/ro_RO/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Înregistrări nemodificate ShowAllFingerPrintsMightBeTooLong=Arată toate jurnalele arhivate (ar putea fi lungi) ShowAllFingerPrintsErrorsMightBeTooLong=Arată toate jurnalele de arhivă nevalide (ar putea fi lungi) DownloadBlockChain=Descărcați amprentele digitale -KoCheckFingerprintValidity=Intrarea în jurnal arhivată nu este validă. Aceasta înseamnă că cineva (un hacker?) a modificat unele date ale acestei inregistrări după ce a fost înregistrată sau a șters înregistrarea arhivată precedentă (verifică că linia cu # anterior există). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Intrarea în jurnal arhivată este validă. Datele de pe această linie nu au fost modificate şi intrarea urmează cele precedente. OkCheckFingerprintValidityButChainIsKo=Jurnalul arhivat pare valabil în comparație cu cel precedent, dar lanțul a fost corupt anterior. AddedByAuthority=Stocată în autoritate la distanţă diff --git a/htdocs/langs/ro_RO/cashdesk.lang b/htdocs/langs/ro_RO/cashdesk.lang index d22a54f9e2a..785065d2cf1 100644 --- a/htdocs/langs/ro_RO/cashdesk.lang +++ b/htdocs/langs/ro_RO/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Adauga acest articol RestartSelling=Du-te inapoi la vânzare SellFinished=Vanzare completa PrintTicket=Print bon +SendTicket=Send ticket NoProductFound=Niciun articol gasit ProductFound=produs găsit NoArticle=Niciun articol @@ -48,6 +49,7 @@ Footer=Subsol AmountAtEndOfPeriod=Valoare la sfârșitul perioadei (zi, lună sau an) TheoricalAmount=Valoare teoretică RealAmount=Sumă reală +CashFence=Cash fence CashFenceDone=Limita de bani realizată pentru perioada NbOfInvoices=Nr facturi Paymentnumpad=Type of Pad to enter payment @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS are nevoie de categorii de produse pentru a lucra OrderNotes=Note de comandă CashDeskBankAccountFor=Default account to use for payments in NoPaimementModesDefined=No paiment mode defined in TakePOS configuration -TicketVatGrouped=Group VAT by rate in tickets -AutoPrintTickets=Automatically print tickets +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? @@ -87,7 +90,19 @@ HeadBar=Head Bar SortProductField=Field for sorting products Browser=Browser BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/ro_RO/companies.lang b/htdocs/langs/ro_RO/companies.lang index 0e79c39d744..0f27f96698a 100644 --- a/htdocs/langs/ro_RO/companies.lang +++ b/htdocs/langs/ro_RO/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted=Societatea " %s" a fost ştearsă din baza de date. ListOfContacts=Lista Contacte ListOfContactsAddresses=Lista Contacte ListOfThirdParties=Lista terților -ShowCompany=Arată terțul ShowContact=Afişeză contact ContactsAllShort=Toate (fără filtru) ContactType=Tip Contact @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=Numele reprezentantului vânzări SaleRepresentativeLastname=Prenumele reprezentantului vânzări ErrorThirdpartiesMerge=A apărut o eroare la ștergerea terților Verificați jurnalul. S-a revenit la setarile anterioare. NewCustomerSupplierCodeProposed=Codul clientului sau furnizorului utilizat deja, este sugerat un nou cod +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Tip de plată - Client PaymentTermsCustomer=Conditii de plata - Client diff --git a/htdocs/langs/ro_RO/compta.lang b/htdocs/langs/ro_RO/compta.lang index 3793fa21abe..5a9926309ff 100644 --- a/htdocs/langs/ro_RO/compta.lang +++ b/htdocs/langs/ro_RO/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=Vedeți %sanaliza plăților%s pentru un calcul al pl SeeReportInDueDebtMode=Vedeți %sanaliza facturilor%s pentru un calcul bazat pe facturi înregistrate cunoscute, chiar dacă acestea nu sunt încă înregistrate în registru. SeeReportInBookkeepingMode=Vedeți %sraportul contabil%s pentru un calcul la Tabelul registrului contabil RulesAmountWithTaxIncluded=- Valoarea afişată este cu toate taxele incluse -RulesResultDue=- Include facturi deschise, cheltuieli, TVA, donații, indiferent dacă sunt plătite sau nu. Include, de asemenea, salariile plătite
    - Se ia în calcul data de validare a facturilor pentru TVA și data scadentă pentru cheltuieli. Pentru salarii definite cu modulul Salarii, este utilizată data plății. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- Include plățile efective pe facturi, cheltuieli,TVA și salarii.
    - Se ia în calcul data plăţii facturilor, cheltuielilor, TVA-ului și salariilor . -RulesCADue=- include facturile de plată ale clientului, indiferent dacă sunt plătite sau nu.
    - Se bazează pe data de validare a acestor facturi.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- include toate plățile efective ale facturilor primite de la clienți.
    - se bazează pe data de plată a acestor facturi
    RulesCATotalSaleJournal=Acesta include toate liniile de credit din jurnalul de vânzare. RulesAmountOnInOutBookkeepingRecord=Acesta include înregistrarea în registrul dvs. cu conturi contabile care are grupul "CHELTUIELI" sau "VENIT" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Cifra de afaceri facturată prin rata impozitului pe vânzare TurnoverCollectedbyVatrate=Cifra de afaceri colectată prin rata impozitului pe vânzare PurchasebyVatrate=Cumpărare prin rata de impozitare a vânzării LabelToShow=Etichetă scurta +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/ro_RO/donations.lang b/htdocs/langs/ro_RO/donations.lang index fb515fd9943..61a0548379c 100644 --- a/htdocs/langs/ro_RO/donations.lang +++ b/htdocs/langs/ro_RO/donations.lang @@ -7,7 +7,6 @@ AddDonation=Crează o donaţie NewDonation=Donaţie nouă DeleteADonation=Şterge o donaţie ConfirmDeleteADonation=Sunteți sigur că doriți să ștergeți această donație? -ShowDonation=Afişează donaţia PublicDonation=Donaţie Publică DonationsArea=Donaţii DonationStatusPromiseNotValidated=Promisiune schiţă @@ -17,6 +16,7 @@ DonationStatusPromiseNotValidatedShort=Schiţă DonationStatusPromiseValidatedShort=Validată DonationStatusPaidShort=Plătită DonationTitle=Chitanţă donaţie +DonationDate=Donation date DonationDatePayment=Data Plata ValidPromess=Validează promisiune DonationReceipt=Chitanţă donaţie @@ -31,4 +31,4 @@ DONATION_ART200=Afiseaza articolului 200 din CGI dacă sunteți îngrijorat DONATION_ART238=Afiseaza articolului 238 din CGI dacă sunteți îngrijorat DONATION_ART885=Afiseaza articol 885 din CGI dacă sunteți îngrijorat DonationPayment=Plată donaţie -DonationValidated=Donation %s validated +DonationValidated=Donaţie%s validata diff --git a/htdocs/langs/ro_RO/errors.lang b/htdocs/langs/ro_RO/errors.lang index e4087e004cb..81bd2acc725 100644 --- a/htdocs/langs/ro_RO/errors.lang +++ b/htdocs/langs/ro_RO/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=Fişierul nu a primit complet de server. ErrorNoTmpDir=Temporare directy %s nu există. ErrorUploadBlockedByAddon=Încărcaţi blocat de un PHP / Apache plug-in. ErrorFileSizeTooLarge=Dimensiunea fişierului este prea mare. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Prea mult timp pentru tipul int (%s cifre maxim) Dimensiune ErrorSizeTooLongForVarcharType=Prea mult timp pentru tipul de coarde (%s de caractere maxim) Dimensiune ErrorNoValueForSelectType=Completaţi valorile pentru lista de selecţie @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # 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. diff --git a/htdocs/langs/ro_RO/install.lang b/htdocs/langs/ro_RO/install.lang index 1dbbc1fd370..ed434445473 100644 --- a/htdocs/langs/ro_RO/install.lang +++ b/htdocs/langs/ro_RO/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=Acest PHP suportă Curl. PHPSupportCalendar=This PHP supports calendars extensions. PHPSupportUTF8=Acest PHP suportă functiile UTF8. PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=This PHP supports %s functions. PHPMemoryOK=PHP max memorie sesiune este setată la %s. Acest lucru ar trebui să fie suficient. PHPMemoryTooLow=Memoria sesiunii PHP max este setată la %s octeți. Această valoare este prea mică. Schimbați-vă php.ini pentru a seta parametrul memory_limit la cel puțin %s octeți. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=Instalarea dvs. PHP nu suportă Curl. ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. ErrorPHPDoesNotSupportUTF8=Instalarea dvs. de PHP nu suportă funcții UTF8. Dolibarr nu poate funcționa corect. Rezolvați acest lucru înainte de a instala Dolibarr. ErrorPHPDoesNotSupportIntl=Your PHP installation does not support Intl functions. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. ErrorDirDoesNotExists=Directorul %s nu există. ErrorGoBackAndCorrectParameters=Întoarceți-vă și verificați/corectați parametrii. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=Aplicația a încercat să se autoactualizeze, î YouTryInstallDisabledByFileLock=Aplicația a încercat să se autoactualizeze, însă paginile de instalare / upgrade au fost dezactivate pentru securitate (prin existența unui fișier de blocare install.lock în directorul de documente Dolibarr).
    ClickHereToGoToApp=Faceți clic aici pentru a merge la aplicația dvs. ClickOnLinkOrRemoveManualy=Faceți clic pe următorul link. Dacă vedeți întotdeauna aceeași pagină, trebuie să eliminați / redenumiți fișierul install.lock din directorul de documente. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/ro_RO/interventions.lang b/htdocs/langs/ro_RO/interventions.lang index d3dedb91c0e..7e5c62016e6 100644 --- a/htdocs/langs/ro_RO/interventions.lang +++ b/htdocs/langs/ro_RO/interventions.lang @@ -41,9 +41,7 @@ InterventionsArea=Intervenţii DraftFichinter=Intervenții schita LastModifiedInterventions=Ultimele %s intervenţii modificate FichinterToProcess=Intervenții la proces -##### Types de contacts ##### TypeContact_fichinter_external_CUSTOMER=Contact client urmărire intervenţie -# Modele numérotation PrintProductsOnFichinter=Printează si liniile de tip ''produs''( nu numai serviciile) pe fişa intervenţiei PrintProductsOnFichinterDetails=intervenții generate din comenzi UseServicesDurationOnFichinter=Utilizați durata serviciilor pentru intervențiile generate din comenzi @@ -53,14 +51,16 @@ InterventionStatistics=Statistici intervenţii NbOfinterventions=Numărul cardurilor de intervenție NumberOfInterventionsByMonth=Numărul cardurilor de intervenție pe lună (data validării) AmountOfInteventionNotIncludedByDefault=Suma de intervenție nu este inclusă implicit în profit (în majoritatea cazurilor, foile de pontaj sunt utilizate pentru a calcula timpul petrecut). Adăugați opțiunea PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT la 1 în acasa-gestionare-altul pentru a-l include. -##### Exports ##### InterId=Id Intervenţie InterRef=Ref. Intervenţie InterDateCreation=Data crearea Intervenție InterDuration=Durată Intervenție InterStatus=Status Intervenție InterNote=Nota interventie +InterLine=Line of intervention InterLineId=Id linie Intervenţie InterLineDate=Data linie interventie InterLineDuration=Durată linie Intervenție InterLineDesc=Descriere linie Intervenţie +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/ro_RO/link.lang b/htdocs/langs/ro_RO/link.lang index 05dc60d8abc..9087a2eec65 100644 --- a/htdocs/langs/ro_RO/link.lang +++ b/htdocs/langs/ro_RO/link.lang @@ -8,3 +8,4 @@ LinkRemoved=Linkul %s a fost înlăturat ErrorFailedToDeleteLink= Eşec la înlăturarea linkului '%s' ErrorFailedToUpdateLink= Eşec la modificarea linkului '%s' URLToLink=URL la link +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/ro_RO/mails.lang b/htdocs/langs/ro_RO/mails.lang index 6a37037c8c4..e660aa77eb3 100644 --- a/htdocs/langs/ro_RO/mails.lang +++ b/htdocs/langs/ro_RO/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=Nu s-a găsit niciun contact / adresă cu o categorie NoContactLinkedToThirdpartieWithCategoryFound=Nu s-a găsit niciun contact / adresă cu o categorie OutGoingEmailSetup=Setarea emailului de ieșire InGoingEmailSetup=Configurarea emailului de primire -OutGoingEmailSetupForEmailing=Setarea emailului de ieșire (pentru trimiterea de emailuri în masă) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Configurarea implicită a emailurilor de ieșire Information=Informatie ContactsWithThirdpartyFilter=Contacte cu filtrul terț diff --git a/htdocs/langs/ro_RO/main.lang b/htdocs/langs/ro_RO/main.lang index fa38056f25f..b9026ccd039 100644 --- a/htdocs/langs/ro_RO/main.lang +++ b/htdocs/langs/ro_RO/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Save and stay SaveAndNew=Save and new TestConnection=Test conexiune ToClone=Clonează +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Alegeți datele pe care doriți să le clonați: NoCloneOptionsSpecified=Nu există date definite pentru a clona . Of=de @@ -829,6 +830,8 @@ Gender=Gen Genderman=Barbat Genderwoman=Femeie ViewList=Vedere listă +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Obligatoriu Hello=Salut GoodBye=La revedere @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Select your graph options to build a graph Measures=Measures XAxis=X-Axis YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/ro_RO/modulebuilder.lang b/htdocs/langs/ro_RO/modulebuilder.lang index e7042514986..948fc3c28ca 100644 --- a/htdocs/langs/ro_RO/modulebuilder.lang +++ b/htdocs/langs/ro_RO/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=List of dictionaries entries ListOfPermissionsDefined=Lista permisiunilor definite SeeExamples=Vedeți aici exemple EnabledDesc=Condiție de activare a acestui câmp (Exemple: 1 sau $ conf-> global-> MYMODULE_MYOPTION) -VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update). Using a negative value means field is not shown by default on list but can be selected for viewing). It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty DisplayOnPdf=Display on PDF IsAMeasureDesc=Poate fi cumulata valoarea câmpului pentru a obține un total în listă? (Exemple: 1 sau 0) SearchAllDesc=Este câmpul folosit pentru a face o căutare din instrumentul de căutare rapidă? (Exemple: 1 sau 0) diff --git a/htdocs/langs/ro_RO/multicurrency.lang b/htdocs/langs/ro_RO/multicurrency.lang new file mode 100644 index 00000000000..9e55663db90 --- /dev/null +++ b/htdocs/langs/ro_RO/multicurrency.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Mai multe valute +ErrorAddRateFail=Eroare în rata adăugată +ErrorAddCurrencyFail=Eroare în valuta adăugată +ErrorDeleteCurrencyFail=Eroare la ștergere +multicurrency_syncronize_error=Eroare de sincronizare: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Utilizați data documentului pentru a găsi rata valutei, în loc să utilizați cea mai recentă rată cunoscută +multicurrency_useOriginTx=Când un obiect este creat din altul, păstrați rata inițială din obiectul sursă (altfel utilizați ultima rată cunoscută) +CurrencyLayerAccount=CurrencyLayer API +CurrencyLayerAccount_help_to_synchronize=You must create an account on website %s to use this functionality.
    Get your API key.
    If you use a free account, you can't change the source currency (USD by default).
    If your main currency is not USD, the application will automatically recalculate it.

    You are limited to 1000 synchronizations per month. +multicurrency_appId=Cheia API +multicurrency_appCurrencySource=Source currency +multicurrency_alternateCurrencySource=Alternate source currency +CurrenciesUsed=Valute utilizate +CurrenciesUsed_help_to_add=Adăugați diferitele valute și ratele pe care trebuie să le utilizați pentru propunerile dvs. , ordine etc. +rate=rată +MulticurrencyReceived=Primite, valuta inițială +MulticurrencyRemainderToTake=Valoarea rămasă, moneda inițială +MulticurrencyPaymentAmount=Suma plății, moneda inițială +AmountToOthercurrency=Suma pentru (în moneda contului de primire) +CurrencyRateSyncSucceed=Currency rate synchronization done successfuly +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Use the currency of the document for online payments diff --git a/htdocs/langs/ro_RO/other.lang b/htdocs/langs/ro_RO/other.lang index cf65af8725e..f528c846026 100644 --- a/htdocs/langs/ro_RO/other.lang +++ b/htdocs/langs/ro_RO/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Comanda vânzărilor validată Notify_ORDER_SENTBYMAIL=Comanda vânzărilor a fost trimisă prin poștă Notify_ORDER_SUPPLIER_SENTBYMAIL=Comanda de cumparare trimisa prin e-mail @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=URL pagina WEBSITE_TITLE=Titlu WEBSITE_DESCRIPTION=Descriere WEBSITE_IMAGE=Imagine -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Cuvânt cheie LinesToImport=Linii de import diff --git a/htdocs/langs/ro_RO/products.lang b/htdocs/langs/ro_RO/products.lang index e1bfc320a42..90896e14ae9 100644 --- a/htdocs/langs/ro_RO/products.lang +++ b/htdocs/langs/ro_RO/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=Acest instrument actualizează rata TVA definită pe < MassBarcodeInit=Init cod de bare în masă MassBarcodeInitDesc=Această pagină poate fi utilizată pentru a inițializa un cod de bare pe obiectele care nu au coduri de bare definit. Verificați înainte dacă modulul cod de bare este complet configurat. ProductAccountancyBuyCode=Codul contabil (achiziție) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Codul contabil (vânzare) ProductAccountancySellIntraCode=Codul contabil (vânzarea intracomunitară) ProductAccountancySellExportCode=Codul contabil (export de vânzare) @@ -165,7 +167,7 @@ SuppliersPrices=Prețurile furnizorului SuppliersPricesOfProductsOrServices=Prețurile furnizorilor (de produse sau servicii) CustomCode=Cod Vamal / Marfă / SA CountryOrigin=Ţara de origine -Nature=Nature of produt (material/finished) +Nature=Nature of product (material/finished) ShortLabel=Etichetă scurta Unit=Unit p=u. diff --git a/htdocs/langs/ro_RO/projects.lang b/htdocs/langs/ro_RO/projects.lang index e7fef439144..3bad4179a7e 100644 --- a/htdocs/langs/ro_RO/projects.lang +++ b/htdocs/langs/ro_RO/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=which I'm linked to project Time=Timp ListOfTasks=Lista de sarcini GoToListOfTimeConsumed=Accesați lista de timp consumată -GoToListOfTasks=Show as list -GoToGanttView=show as Gantt GanttView=Vizualizare Gantt ListProposalsAssociatedProject=Lista propunerilor comerciale aferente proiectului ListOrdersAssociatedProject=Lista comenzilor de vânzări aferente proiectului @@ -188,7 +186,7 @@ PlannedWorkload=Volum de lucru Planificat PlannedWorkloadShort=Volum de muncă ProjectReferers=Obiecte asociate ProjectMustBeValidatedFirst=Proiectul trebuie validat mai întâi -FirstAddRessourceToAllocateTime=Atribuiți o resursă de utilizator sarcinii de a aloca timp +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=Intrare pe zi InputPerWeek=Intrare pe saptamana InputPerMonth=Input per month @@ -240,6 +238,7 @@ LatestModifiedProjects=Ultimele %s proiecte modificate OtherFilteredTasks=Alte sarcini filtrate NoAssignedTasks=Nu au fost găsite sarcini atribuite (atribuiți proiectul / sarcinile utilizatorului curent din caseta de selectare superioară pentru a introduce ora pe acesta) ThirdPartyRequiredToGenerateInvoice=Un terț trebuie definit pe proiect pentru a putea să fie facturat. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=Permiteți comentariile utilizatorilor pe sarcini AllowCommentOnProject=Permiteți comentariile utilizatorilor pe proiecte @@ -256,7 +255,7 @@ ServiceToUseOnLines=Serviciu de utilizare pe linii InvoiceGeneratedFromTimeSpent=Factura %s a fost generată din timpul petrecut pe proiect ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. ProjectFollowOpportunity=Follow opportunity -ProjectFollowTasks=Follow tasks +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Usage: Opportunity UsageTasks=Usage: Tasks @@ -265,3 +264,4 @@ InvoiceToUse=Draft invoice to use NewInvoice=Factură nouă OneLinePerTask=One line per task OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/ro_RO/receiptprinter.lang b/htdocs/langs/ro_RO/receiptprinter.lang index e232e0a289e..046a9c068d1 100644 --- a/htdocs/langs/ro_RO/receiptprinter.lang +++ b/htdocs/langs/ro_RO/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Dummy Printer CONNECTOR_NETWORK_PRINT=Imprimanta Retea CONNECTOR_FILE_PRINT=Imprimanta locala CONNECTOR_WINDOWS_PRINT=Imprimanta locala Windows +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Imprimantă falsă de test, nu face nimic CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb: // FooUser: secret @ computername / workgroup / Printer Receipt +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Default Profil PROFILE_SIMPLE=Simplu Profil PROFILE_EPOSTEP=Epos Tep Profil @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Invoice month in letters DOL_VALUE_MONTH=Invoice month DOL_VALUE_DAY=Invoice day DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Ref Factură +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Cod de identificare TVA intracomunitar +DOL_VALUE_MYSOC_CAPITAL=Capital +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/ro_RO/stripe.lang b/htdocs/langs/ro_RO/stripe.lang index c4cd14aabde..9646bb98cf7 100644 --- a/htdocs/langs/ro_RO/stripe.lang +++ b/htdocs/langs/ro_RO/stripe.lang @@ -32,6 +32,7 @@ VendorName=Numele vânzătorului CSSUrlForPaymentForm=CSS foaie de URL-ul de stil pentru forma de plată NewStripePaymentReceived=Plata noua Stripe incasata NewStripePaymentFailed=Plata noua Stripe incercata dar esuata +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Cheie de testare secreta STRIPE_TEST_PUBLISHABLE_KEY=Cheia de test publicabilă STRIPE_TEST_WEBHOOK_KEY=Cheia de test Webhook @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mo 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... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authenticatin rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/ro_RO/users.lang b/htdocs/langs/ro_RO/users.lang index f6bcf41b04b..efe38577914 100644 --- a/htdocs/langs/ro_RO/users.lang +++ b/htdocs/langs/ro_RO/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Utilizatorii și proprietățile acestora DomainUser=Domeniu utilizatorul %s Reactivate=Reactivaţi CreateInternalUserDesc=Acest formular vă permite să creați un utilizator intern în compania / organizația dvs. Pentru a crea un utilizator extern (client, furnizor etc.), utilizați butonul "Creare utilizator Dolibarr" de pe cartela de contact a terțului. -InternalExternalDesc=Un utilizator intern este un utilizator care face parte din compania / organizația dvs.
    Un utilizator extern este un client, un furnizor sau altul.

    În ambele cazuri, permisiunile definesc drepturile asupra Dolibarr, de asemenea, utilizatorul extern poate avea un manager de meniu diferit de cel al utilizatorului intern (consultați Home - Setup - Display) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=Permisiunea acordată deoarece moştenită de la un utilizator al unui grup. Inherited=Moştenit UserWillBeInternalUser=De utilizator creat va fi un utilizator intern (pentru că nu este legată de o parte terţă) @@ -113,3 +113,5 @@ CantDisableYourself=Nu vă puteți dezactiva propria înregistrare de utilizator ForceUserExpenseValidator=Forţează validarea raportului de cheltuieli ForceUserHolidayValidator=Forţează validarea cererii de concediu ValidatorIsSupervisorByDefault= În mod implicit, validatorul este superviser-rul utilizatorului. Nu completaţi pentru a păstra acest comportament. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/ro_RO/website.lang b/htdocs/langs/ro_RO/website.lang index 985c2e2f7b4..79d81ac3deb 100644 --- a/htdocs/langs/ro_RO/website.lang +++ b/htdocs/langs/ro_RO/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=Afișați pagina în fila nouă SetAsHomePage=Seteaza ca pagina Home RealURL=Real URL ViewWebsiteInProduction=Vizualizați site-ul web utilizând URL-urile de home -SetHereVirtualHost=  Utilizați cu Apache / NGinx / ...
    Dacă puteți crea, pe serverul dvs. de web (Apache, Nginx, ...), un gazdă dedicat cu PHP activat și un director Root pe
    %s
    apoi setați numele gazdei virtuale pe care ați creat-o în proprietățile site-ului web, astfel încât previzualizarea poate fi făcută și utilizând acest acces dedicat serverului web în loc de serverul intern Dolibarr. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS= Utilizarea cu serverul încorporat PHP
    În mediul de dezvoltare, puteți prefera să testați site-ul cu serverul web încorporat PHP (PHP 5.5 necesar) executând
    php -S 0.0.0.0:8080 -t %s YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org CheckVirtualHostPerms=Verificați, de asemenea, că gazda virtuală are permisiunea %s pe fișiere în
    %s @@ -56,7 +57,7 @@ NoPageYet=Nici o pagină YouCanCreatePageOrImportTemplate=Puteți să creați o pagină nouă sau să importați un șablon de site complet SyntaxHelp=Ajutor pe sfaturile de sintaxă specifice YouCanEditHtmlSourceckeditor=Puteți edita codul sursă HTML folosind butonul "Sursă" din editor. -YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Clona pagina/container CloneSite=Clonează site-ul SiteAdded=Site adăugat @@ -76,7 +77,7 @@ BlogPost=Postare pe blog WebsiteAccount=Contul site-ului WebsiteAccounts=Conturi de site AddWebsiteAccount=Creați un cont de site web -BackToListOfThirdParty=Înapoi la listă pentru terți +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Dezactivați mai întâi site-ul web MyContainerTitle=Titlul site-ului meu web AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Sorry, this website is currently off line. Please WEBSITE_USE_WEBSITE_ACCOUNTS=Activați tabelul contului site-ului web WEBSITE_USE_WEBSITE_ACCOUNTSTooltip=Activați tabelul pentru a stoca conturile site-urilor web (Autentificare/parola) pentru fiecare site / terț YouMustDefineTheHomePage=Mai întâi trebuie să definiți pagina de Home implicită -OnlyEditionOfSourceForGrabbedContentFuture=Avertisment: Crearea unei pagini web prin importarea unei pagini web externe este rezervată utilizatorilor experimentați. În funcție de complexitatea paginii sursă, rezultatul importului poate diferi de original. De asemenea, în cazul în care pagina sursă utilizează stiluri CSS comune sau javascript conflictual, este posibil să se spargă aspectul sau caracteristicile editorului de site Web atunci când lucrează pe această pagină. Această metodă reprezintă o modalitate mai rapidă de a crea o pagină, dar este recomandat să creați noua pagină de la zero sau dintr-un șablon de pagină sugerat.
    Rețineți, de asemenea, că modificările sursei HTML vor fi posibile atunci când conținutul paginii a fost inițializat prin preluarea de pe o pagină externă (editorul "Online" NU va fi disponibil) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Numai ediția sursei HTML este posibilă atunci când conținutul a fost preluat de pe un site extern GrabImagesInto=Luați și imaginile găsite în CSS și pagină. ImagesShouldBeSavedInto=Imaginile trebuie salvate în director @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 ch MainLanguage=Main language OtherLanguages=Other languages UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/ro_RO/zapier.lang b/htdocs/langs/ro_RO/zapier.lang new file mode 100644 index 00000000000..6d6eda71313 --- /dev/null +++ b/htdocs/langs/ro_RO/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr module + +# +# Admin page +# +ZapierForDolibarrSetup = Setup of Zapier for Dolibarr diff --git a/htdocs/langs/ru_RU/accountancy.lang b/htdocs/langs/ru_RU/accountancy.lang index 90e9f9db172..63bb878fc0a 100644 --- a/htdocs/langs/ru_RU/accountancy.lang +++ b/htdocs/langs/ru_RU/accountancy.lang @@ -121,6 +121,7 @@ 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 +TotalForAccount=Total for accounting account Ventilate=Привязка @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Accounting account to register donations ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (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 products sold in EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported 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_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (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_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unkno ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error PaymentsNotLinkedToProduct=Payment not linked to any product / service +OpeningBalance=Opening balance ShowOpeningBalance=Show opening balance HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Group of account PcgtypeDesc=Group 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. +Reconcilable=Reconcilable + TotalVente=Total turnover before tax TotalMarge=Итоговая наценка на продажи @@ -307,11 +317,13 @@ 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Chart of accounts Id ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC OptionModeProductSellExport=Mode sales exported in other countries OptionModeProductBuy=Mode purchases +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries 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. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=Remove accounting code from lines that not exists into charts of account CleanHistory=Reset all bindings for selected year PredefinedGroups=Predefined groups @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Account removed from group SaleLocal=Local sale SaleExport=Export sale SaleEEC=Sale in EEC +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=Range of accounting account diff --git a/htdocs/langs/ru_RU/admin.lang b/htdocs/langs/ru_RU/admin.lang index 063c10ed781..bf30360fb44 100644 --- a/htdocs/langs/ru_RU/admin.lang +++ b/htdocs/langs/ru_RU/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Пользователь / группа Web-сервера NoSessionFound=Кажется, ваша конфигурация PHP не позволяет отображать активные сеансы. Каталог, используемый для сохранения сеансов ( %s ), может быть защищен (например, разрешениями ОС или директивой PHP open_basedir). DBStoringCharset=Кодировка базы данных для хранения данных DBSortingCharset=Кодировка базы данных для сортировки данных +HostCharset=Host charset ClientCharset=Клиентская кодировка ClientSortingCharset=Сопоставление клиентов WarningModuleNotActive=Модуль %s должен быть включен @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Примечание: ваша конфигура NoMaxSizeByPHPLimit=Примечание: в вашей конфигурации PHP установлено no limit MaxSizeForUploadedFiles=Максимальный размер загружаемых файлов (0 для запрещения каких-либо загрузок) UseCaptchaCode=Использовать графический код (CAPTCHA) на странице входа -AntiVirusCommand= Полный путь к антивирусной команде -AntiVirusCommandExample= Пример для ClamWin: C: \\ Program Files (x86) \\ ClamWin \\ Bin \\ clamscan.exe
    Пример для ClamAV: / USR / BIN / clamscan +AntiVirusCommand=Полный путь к антивирусной команде +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= Дополнительные параметры командной строки -AntiVirusParamExample= Пример для ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=Настройка модуля бухгалтерского учета UserSetup=Настройка управления пользователями MultiCurrencySetup=Многовалютная настройка @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Функция отключена в демо - FeatureAvailableOnlyOnStable=Функция доступна только в официальных стабильных версиях BoxesDesc=Виджеты - это компоненты, показывающие некоторую информацию, которую можно добавить для персонализации некоторых страниц. Вы можете выбрать отображать или нет виджет, выбрав целевую страницу и нажав «Активировать», или щелкнув корзину, чтобы отключить ее. OnlyActiveElementsAreShown=Показаны только элементы из включенных модулей -ModulesDesc=Модули/приложения определяют, какие функции доступны в программном обеспечении. Некоторые модули требуют предоставления разрешений пользователям после активации модуля. Нажмите кнопку включения/выключения (в конце строки модуля), чтобы включить/отключить модуль/приложение. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. ModulesMarketPlaceDesc=В интернете вы можете найти больше модулей для загрузки... ModulesDeployDesc=Если разрешения вашей файловой системе позволяют, вы можете использовать этот инструмент для развертывания внешнего модуля. Модуль будет виден на вкладке %s . ModulesMarketPlaces=Поиск внешних приложений/модулей @@ -212,6 +213,7 @@ CompatibleUpTo=Совместимость с версией %s NotCompatible=Этот модуль не совместим с вашим Dolibarr%s (Min%s - Max%s). CompatibleAfterUpdate=Этот модуль требует обновления вашего Dolibarr%s (Min%s - Max%s). SeeInMarkerPlace=См. На рынке +SeeSetupOfModule=Посмотреть настройку модуля %s Updated=Обновлено Nouveauté=Новое AchatTelechargement=Купить/Скачать @@ -221,6 +223,7 @@ DoliPartnersDesc=Список компаний, предоставляющих WebSiteDesc=Внешние веб-сайты для дополнительных модулей (неосновных) ... DevelopYourModuleDesc=Некоторые решения для разработки собственного модуля ... URL=URL +RelativeURL=Relative URL BoxesAvailable=Доступные виджеты BoxesActivated=Включенные виджеты ActivateOn=Активировать @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Флажок ExtrafieldCheckBoxFromList=Флажки из таблицы ExtrafieldLink=Ссылка на объект ComputedFormula=Вычисленное поле -ComputedFormulaDesc=Вы можете ввести здесь формулу, используя другие свойства объекта или любую кодировку PHP, чтобы получить динамически вычисленное значение. Вы можете использовать любые PHP-совместимые формулы, включая "?" оператор условия и следующий глобальный объект: 1$db, $conf, $langs, $mysoc, $user, $object1 . 2 3ВНИМАНИЕ3 : могут быть доступны только некоторые свойства $object. Если нужные вам свойства не загружены, просто извлеките объект в формулу, как во втором примере.
    Использование вычисляемого поля означает, что вы не можете ввести себе любое значение из интерфейса. Также, если есть синтаксическая ошибка, формула может ничего не возвращать.

    Пример формулы:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Пример для перезагрузки объекта
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Другой пример формулы для принудительной загрузки объекта и его родительского объекта:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Родительский проект не найден' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Сохранить вычисленное поле ComputedpersistentDesc=Вычисленные дополнительные поля будут сохранены в базе данных, однако значение будет пересчитано только при изменении объекта этого поля. Если вычисляемое поле зависит от других объектов или глобальных данных, это значение может быть неправильным!! ExtrafieldParamHelpPassword=Оставьте это поле пустым, чтобы значение хранилось без шифрования (поле должно быть скрыто только звездочкой на экране).
    Установите 'auto', чтобы использовать правило шифрования по умолчанию для сохранения пароля в базе данных (тогда считываемое значение будет только хешем, никакой возможности восстановить исходное значение) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Оставьте пустым для использова DefaultLink=Ссылка по умолчанию SetAsDefault=Установить по умолчанию ValueOverwrittenByUserSetup=Предупреждение: это значение может быть перезаписано в настройках пользователя (каждый пользователь может задать свои настройки ссылки ClickToDial) -ExternalModule=Внешний модуль - установлен в директорию %s +ExternalModule=External module +InstalledInto=Installed into directory %s BarcodeInitForthird-parties=Массовая инициализация штрих-кода для контрагентов BarcodeInitForProductsOrServices=Массовое создание или удаление штрих-кода для Товаров или Услуг CurrentlyNWithoutBarCode=В настоящее время у вас есть %sзапись на %s%s без определенного штрих-кода. @@ -947,7 +951,7 @@ DictionaryCanton=Штат/Провинция DictionaryRegion=Регионы DictionaryCountry=Страны DictionaryCurrency=Валюты -DictionaryCivility=Обращение +DictionaryCivility=Honorific titles DictionaryActions=Тип мероприятия DictionarySocialContributions=Типы социальных или налоговых сборов DictionaryVAT=Значения НДС или налога с продаж @@ -988,6 +992,7 @@ VATIsNotUsedDesc=По умолчанию предлагаемый налог с VATIsUsedExampleFR=Во Франции это означает компании или организации, имеющие реальную фискальную систему (упрощенная реальная или обычная реальная). Система, в которой декларируется НДС. VATIsNotUsedExampleFR=Во Франции это означает ассоциации, которые не декларируют НДС, или компании, организации или либеральные профессии, которые выбрали фискальную систему микропредприятий (НДС во франшизе) и уплатили налог на франшизу без какой-либо декларации НДС. При выборе этого варианта в счетах будет отображаться ссылка "Non applicable Sales tax - art-293B of CGI" («НДС не применяется - art-293B CGI»). ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=Ставка LocalTax1IsNotUsed=Не использовать второй налог LocalTax1IsUsedDesc=Используйте второй тип налога (кроме первого) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=Ставка IRPF (подоходный налог для LocalTax2IsNotUsedDescES=По умолчанию предлагается IRPF 0. Конец правления. LocalTax2IsUsedExampleES=В Испании работают фрилансеры и независимые профессионалы, предлагающие услуги, и компании, которые выбрали налоговую систему модулей. LocalTax2IsNotUsedExampleES=В Испании это предприятия, не подпадающие под налоговую систему модулей. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=Отчеты о местных налогах CalcLocaltax1=Продажи-Покупки CalcLocaltax1Desc=Отчёты о местных налогах - это разница между местными налогами с продаж и покупок @@ -1018,6 +1026,7 @@ CalcLocaltax2=Покупки CalcLocaltax2Desc=Отчёты о местных налогах - это итог местных налогов с покупок CalcLocaltax3=Продажи CalcLocaltax3Desc=Отчёты о местных налогах - это итог местных налогов с продаж +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=Метки, используемые по умолчанию, если нет перевода можно найти код LabelOnDocuments=Этикетка на документах LabelOrTranslationKey=Метка или ключ перевода @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Отчет о расходах для утве Delays_MAIN_DELAY_HOLIDAYS=Leave requests to approve SetupDescription1=Перед началом использования Dolibarr необходимо определить параметры и включить/настроить модули. SetupDescription2=Следующие два раздела являются обязательными (две первые записи в меню настройки): -SetupDescription3=%s -> %s
    Основные параметры, используемые для настройки поведения вашего приложения по умолчанию (например, для функций, связанных со страной). -SetupDescription4=%s -> %s
    Это программное обеспечение представляет собой набор из множества модулей/приложений, все более или менее независимые. Модули, соответствующие вашим потребностям, должны быть включены и настроены. Новые пункты/опции добавляются в меню при активации модуля. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. SetupDescription5=Другие пункты меню настройки управляют дополнительными параметрами. LogEvents=Безопасность ревизии события Audit=Аудит @@ -1128,7 +1137,7 @@ LogEventDesc=Включите ведение журнала для опреде AreaForAdminOnly=Параметры настройки могут быть установлены только пользователем администратора . SystemInfoDesc=Система информации разного техническую информацию Вы получите в режиме только для чтения и видимые только для администраторов. SystemAreaForAdminOnly=Эта область доступна только для администраторов. Пользовательские разрешения Dolibarr не могут изменить это ограничение. -CompanyFundationDesc=Edit the information of the company/entity. Click on "%s" button at the bottom of the page. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. AccountantDesc=Если у вас есть внешний бухгалтер/бухгалтер, вы можете отредактировать здесь эту информацию. AccountantFileNumber=Код бухгалтера DisplayDesc=Параметры, влияющие на внешний вид и поведение Dolibarr, могут быть изменены здесь. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Правила генерации и проверки DisableForgetPasswordLinkOnLogonPage=Не показывать ссылку «Забыли пароль» на странице входа UsersSetup=Настройка модуля пользователя UserMailRequired=Требуется электронная почта для создания нового пользователя +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### HRMSetup=Настройка модуля HRM (Отдела кадров) ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Модели счетов-фактур BillsPDFModulesAccordindToInvoiceType=Модели документов счета в соответствии с типом счета PaymentsPDFModules=Модели платежных документов ForceInvoiceDate=Принудительно приравнять дату выставления счета к дате проверки -SuggestedPaymentModesIfNotDefinedInInvoice=Предложенный способ оплаты по умолчанию, если иной не определен в счете +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice SuggestPaymentByRIBOnAccount=Предложить оплату выводом средств на счет SuggestPaymentByChequeToAddress=Предложить оплату чеком на FreeLegalTextOnInvoices=Свободный текст на счетах-фактурах @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Настройка платежей поставщику PropalSetup=Настройка модуля Коммерческих предложений ProposalsNumberingModules=Модели нумерации Коммерческих предложений ProposalsPDFModules=Модели документов Коммерческого предложения -SuggestedPaymentModesIfNotDefinedInProposal=Предлагаемый способ оплаты по предложению по умолчанию, если иной не определено предложением +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal FreeLegalTextOnProposal=Свободный текст на Коммерческих предложениях WatermarkOnDraftProposal=Водяные знаки на черновиках Коммерческих предложений ("Нет" если пусто) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Запрос банковского счёта для предложения @@ -1322,6 +1334,7 @@ WAREHOUSE_ASK_WAREHOUSE_DURING_ORDER=Попросите источник скл ##### Suppliers Orders ##### BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_ORDER=Запросить адрес банковского счета для заказа на поставку ##### Orders ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=Настройка управления заказами на продажу OrdersNumberingModules=Модели нумерации заказов OrdersModelModule=Заказ документов моделей @@ -1720,7 +1733,7 @@ MultiCompanySetup=Настройка модуля Корпорация ##### Suppliers ##### SuppliersSetup=Настройка модуля Поставщика SuppliersCommandModel=Complete template of Purchase Order -SuppliersCommandModelMuscadet=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) SuppliersInvoiceModel=Complete template of Vendor Invoice SuppliersInvoiceNumberingModel=Vendor invoices numbering models IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Скрыть изображения в верхнем ме LeftMenuBackgroundColor=Цвет фона для меню слева BackgroundTableTitleColor=Цвет фона для заголовка таблицы BackgroundTableTitleTextColor=Цвет текста для заголовка таблицы +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Цвет фона для нечетных строк таблицы BackgroundTableLineEvenColor=Цвет фона для четных строк таблицы MinimumNoticePeriod=Минимальный период уведомления (ваш запрос на отпуск должен быть выполнен до этой задержки) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Dolibarr Reference not found in Message ID FormatZip=Индекс MainMenuCode=Menu entry code (mainmenu) ECMAutoTree=Show automatic ECM tree -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. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Opening hours OpeningHoursDesc=Enter here the regular opening hours of your company. ResourceSetup=Конфигурация модуля Ресурсов @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramatical ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export +ImportSetup=Setup of module Import InstanceUniqueID=Unique ID of the instance SmallerThan=Smaller than LargerThan=Larger than @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled EmailTemplate=Template for email EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/ru_RU/bills.lang b/htdocs/langs/ru_RU/bills.lang index bf31ff2450f..1ec19dd54c1 100644 --- a/htdocs/langs/ru_RU/bills.lang +++ b/htdocs/langs/ru_RU/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Vendors invoices SupplierBill=Vendor invoice SupplierBills=счета-фактуры Поставщиков Payment=Платеж -PaymentBack=Возврат платежа -CustomerInvoicePaymentBack=Возврат платежа +PaymentBack=Refund +CustomerInvoicePaymentBack=Refund Payments=Платежи PaymentsBack=Refunds paymentInInvoiceCurrency=in invoices currency PaidBack=Возврат платежа DeletePayment=Удалить платеж ConfirmDeletePayment=Are you sure you want to delete this payment? -ConfirmConvertToReduc=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. -ConfirmConvertToReducSupplier=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. SupplierPayments=Платежи поставщику ReceivedPayments=Полученные платежи @@ -209,17 +209,13 @@ NumberOfBillsByMonth=No. of invoices per month AmountOfBills=Сумма счетов-фактур AmountOfBillsHT=Amount of invoices (net of tax) AmountOfBillsByMonthHT=Сумма счетов-фактур за месяц (за вычетом налога) -ShowSocialContribution=Show social/fiscal tax -ShowBill=Показать счет-фактуру -ShowInvoice=Показать счет-фактуру -ShowInvoiceReplace=Показать заменяющий счет-фактуру -ShowInvoiceAvoir=Показать кредитое авизо -ShowInvoiceDeposit=Show down payment invoice -ShowInvoiceSituation=Show situation invoice UseSituationInvoices=Allow situation invoice UseSituationInvoicesCreditNote=Allow situation invoice credit note Retainedwarranty=Retained warranty +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=To pay on %s toPayOn=to pay on %s RetainedWarranty=Retained Warranty @@ -230,7 +226,6 @@ 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 AlreadyPaidNoCreditNotesNoDeposits=Already paid (without credit notes and down payments) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Generated from template invoice %s WarningInvoiceDateInFuture=Warning, the invoice date is higher than current date WarningInvoiceDateTooFarInFuture=Warning, the invoice date is too far from current date ViewAvailableGlobalDiscounts=View available discounts +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Статус PaymentConditionShortRECEP=Due Upon Receipt @@ -509,7 +505,7 @@ ToMakePayment=Платить ToMakePaymentBack=Возврат платежа ListOfYourUnpaidInvoices=Список неоплаченных счетов NoteListOfYourUnpaidInvoices=Примечание: Этот список содержит счета только тех контрагентов, которые связаны с нами, как представители по сбыту. -RevenueStamp=Штамп о уплате налогов +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party YouMustCreateStandardInvoiceFirstDesc=You have to create a standard invoice first and convert it to "template" to create a new template invoice @@ -575,3 +571,4 @@ AutoFillDateTo=Set end date for service line with next invoice date AutoFillDateToShort=Set end date MaxNumberOfGenerationReached=Max number of gen. reached BILL_DELETEInDolibarr=Счёт удалён +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/ru_RU/blockedlog.lang b/htdocs/langs/ru_RU/blockedlog.lang index 25d4540bff2..99bf472eed0 100644 --- a/htdocs/langs/ru_RU/blockedlog.lang +++ b/htdocs/langs/ru_RU/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Unalterable logs ShowAllFingerPrintsMightBeTooLong=Показать все архивные логи (может быть долго) ShowAllFingerPrintsErrorsMightBeTooLong=Показать все недействительные архивные логи (может быть долго) DownloadBlockChain=Download fingerprints -KoCheckFingerprintValidity=Архивные записи недействительна. Это значит, что кто-то (хакер?) изменил некоторые данные этого после того, как они были записаны, или удалил предыдущую архивную запись (проверьте, что строка с предыдущим # существует). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Архивная запись в журнале действительна. Данные в этой строке не были изменены, и запись следует за предыдущей. OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. AddedByAuthority=Stored into remote authority diff --git a/htdocs/langs/ru_RU/cashdesk.lang b/htdocs/langs/ru_RU/cashdesk.lang index 6d6a4ce119c..23bb45edead 100644 --- a/htdocs/langs/ru_RU/cashdesk.lang +++ b/htdocs/langs/ru_RU/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Добавить эту статью RestartSelling=Вернитесь на продажу SellFinished=Продажа завершена PrintTicket=Печать билетов +SendTicket=Send ticket NoProductFound=Ни одна статья найдены ProductFound=продукт найден NoArticle=Ни одна статья @@ -48,6 +49,7 @@ Footer=Нижний колонтитул AmountAtEndOfPeriod=Сумма на конец периода (день, месяц или год) TheoricalAmount=Теоретическая сумма RealAmount=Действительная сумма +CashFence=Cash fence CashFenceDone=Cash fence done for the period NbOfInvoices=Кол-во счетов-фактур Paymentnumpad=Type of Pad to enter payment @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS needs product categories to work OrderNotes=Order Notes CashDeskBankAccountFor=Default account to use for payments in NoPaimementModesDefined=No paiment mode defined in TakePOS configuration -TicketVatGrouped=Group VAT by rate in tickets -AutoPrintTickets=Automatically print tickets +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant ConfirmDeletionOfThisPOSSale=Подтверждаете ли вы удаление этой продажи? ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? @@ -87,7 +90,19 @@ HeadBar=Head Bar SortProductField=Field for sorting products Browser=Браузер BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/ru_RU/companies.lang b/htdocs/langs/ru_RU/companies.lang index 2b688e7cb51..86a3fe13b24 100644 --- a/htdocs/langs/ru_RU/companies.lang +++ b/htdocs/langs/ru_RU/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted=Компания " %s" удалена из базы данных. ListOfContacts=Список контактов/адресов ListOfContactsAddresses=Список контактов/адресов ListOfThirdParties=Список контрагентов -ShowCompany=Показать контрагента ShowContact=Показать контакт ContactsAllShort=Все (без фильтра) ContactType=Вид контакт @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=Имя торгового представителя SaleRepresentativeLastname=Фамилия торгового представителя ErrorThirdpartiesMerge=При удалении третьих сторон произошла ошибка. Проверьте журнал. Изменения были отменены. NewCustomerSupplierCodeProposed=Код Клиента или Поставщика уже используется, предлагается новый код +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Тип оплаты - Клиент PaymentTermsCustomer=Условия оплаты - Клиент diff --git a/htdocs/langs/ru_RU/compta.lang b/htdocs/langs/ru_RU/compta.lang index 1123381eec9..393e05bc995 100644 --- a/htdocs/langs/ru_RU/compta.lang +++ b/htdocs/langs/ru_RU/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=See %sanalysis of payments%s for a calculation on act SeeReportInDueDebtMode=See %sanalysis of invoices%s for a calculation based on known recorded invoices even if they are not yet accounted in Ledger. SeeReportInBookkeepingMode=See %sBookeeping report%s for a calculation on Bookkeeping Ledger table RulesAmountWithTaxIncluded= - Суммы даны с учётом всех налогов -RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the validation date of invoices and VAT and on the due date for expenses. For salaries defined with Salary module, the value date of payment is used. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- It includes the real payments made on invoices, expenses, VAT and salaries.
    - It is based on the payment dates of the invoices, expenses, VAT and salaries. The donation date for donation. -RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the validation date of these invoices.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    RulesCATotalSaleJournal=It includes all credit lines from the Sale journal. RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Turnover invoiced by sale tax rate TurnoverCollectedbyVatrate=Turnover collected by sale tax rate PurchasebyVatrate=Purchase by sale tax rate LabelToShow=Короткая метка +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/ru_RU/donations.lang b/htdocs/langs/ru_RU/donations.lang index 108a50827bf..5e28ad37810 100644 --- a/htdocs/langs/ru_RU/donations.lang +++ b/htdocs/langs/ru_RU/donations.lang @@ -7,7 +7,6 @@ AddDonation=Создать пожертование NewDonation=Новое пожертвование DeleteADonation=Удалить пожертование ConfirmDeleteADonation=Вы уверены, что хотите удалить это пожертвование? -ShowDonation=Показать пожертование PublicDonation=Общественное пожертвование DonationsArea=Пожертвования DonationStatusPromiseNotValidated=Проект обещания @@ -17,6 +16,7 @@ DonationStatusPromiseNotValidatedShort=Проект DonationStatusPromiseValidatedShort=Подтверждено DonationStatusPaidShort=Получено DonationTitle=Получатель пожертования +DonationDate=Donation date DonationDatePayment=Дата платежа ValidPromess=Подтвердить обещание DonationReceipt=Получатель пожертования diff --git a/htdocs/langs/ru_RU/errors.lang b/htdocs/langs/ru_RU/errors.lang index dae49432ec1..b1594465426 100644 --- a/htdocs/langs/ru_RU/errors.lang +++ b/htdocs/langs/ru_RU/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=Файл не получил полностью на серве ErrorNoTmpDir=Временная директория %s не существует. ErrorUploadBlockedByAddon=Добавить заблокирован PHP / Apache плагин. ErrorFileSizeTooLarge=Размер файла слишком велик. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Размер слишком долго для целого типа (%s цифр максимум) ErrorSizeTooLongForVarcharType=Размер слишком долго для струнного типа (%s символов максимум) ErrorNoValueForSelectType=Пожалуйста, заполните значение для выпадающего списка @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # 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/ru_RU/install.lang b/htdocs/langs/ru_RU/install.lang index edfd3a9f826..926bf70b7f7 100644 --- a/htdocs/langs/ru_RU/install.lang +++ b/htdocs/langs/ru_RU/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=This PHP supports Curl. PHPSupportCalendar=This PHP supports calendars extensions. PHPSupportUTF8=This PHP supports UTF8 functions. PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=This PHP supports %s functions. PHPMemoryOK= Максимально допустимый размер памяти для сессии установлен в %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. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=Ваша установка PHP не поддержи ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. 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. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. ErrorDirDoesNotExists=Каталог %s не существует. ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=The application tried to self-upgrade, but the in 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=Нажмите здесь, чтобы перейти к вашей заявке 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. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/ru_RU/interventions.lang b/htdocs/langs/ru_RU/interventions.lang index c053d723ca3..9cd51055196 100644 --- a/htdocs/langs/ru_RU/interventions.lang +++ b/htdocs/langs/ru_RU/interventions.lang @@ -41,9 +41,7 @@ InterventionsArea=Interventions area DraftFichinter=Draft interventions LastModifiedInterventions=Latest %s modified interventions FichinterToProcess=Interventions to process -##### Types de contacts ##### TypeContact_fichinter_external_CUSTOMER=После деятельность заказчика контакт -# Modele numérotation PrintProductsOnFichinter=Print also lines of type "product" (not only services) on intervention card PrintProductsOnFichinterDetails=interventions generated from orders UseServicesDurationOnFichinter=Use services duration for interventions generated from orders @@ -53,14 +51,16 @@ InterventionStatistics=Statistics of interventions NbOfinterventions=No. of intervention cards NumberOfInterventionsByMonth=No. of intervention cards by month (date of validation) AmountOfInteventionNotIncludedByDefault=Amount of intervention is not included by default into profit (in most cases, timesheets are used to count time spent). Add option PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT to 1 into home-setup-other to include them. -##### Exports ##### InterId=Intervention id InterRef=Intervention ref. InterDateCreation=Date creation intervention InterDuration=Duration intervention InterStatus=Status intervention InterNote=Note intervention +InterLine=Line of intervention InterLineId=Line id intervention InterLineDate=Line date intervention InterLineDuration=Line duration intervention InterLineDesc=Line description intervention +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/ru_RU/link.lang b/htdocs/langs/ru_RU/link.lang index 8e02c8350b7..6ec241979e2 100644 --- a/htdocs/langs/ru_RU/link.lang +++ b/htdocs/langs/ru_RU/link.lang @@ -8,3 +8,4 @@ LinkRemoved=Ссылка на файл %s удалена ErrorFailedToDeleteLink= При удалении ссылки на файл '%s' возникла ошибка ErrorFailedToUpdateLink= При обновлении ссылки на файл '%s' возникла ошибка URLToLink=URL to link +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/ru_RU/mails.lang b/htdocs/langs/ru_RU/mails.lang index b059b4ada96..938569bc947 100644 --- a/htdocs/langs/ru_RU/mails.lang +++ b/htdocs/langs/ru_RU/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=No contact/address with a category found NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found OutGoingEmailSetup=Outgoing email setup InGoingEmailSetup=Incoming email setup -OutGoingEmailSetupForEmailing=Outgoing email setup (for mass emailing) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Default outgoing email setup Information=Информация ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/ru_RU/main.lang b/htdocs/langs/ru_RU/main.lang index f325f268aab..a284a80792b 100644 --- a/htdocs/langs/ru_RU/main.lang +++ b/htdocs/langs/ru_RU/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Save and stay SaveAndNew=Save and new TestConnection=Проверка подключения ToClone=Дублировать +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Выберите данные для клонирования: NoCloneOptionsSpecified=Данные для дублирования не определены. Of=из @@ -829,6 +830,8 @@ Gender=Пол Genderman=Мужчина Genderwoman=Женщина ViewList=Посмотреть список +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Обязательно Hello=Здравствуйте GoodBye=До свидания @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Select your graph options to build a graph Measures=Measures XAxis=X-Axis YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/ru_RU/modulebuilder.lang b/htdocs/langs/ru_RU/modulebuilder.lang index 00a8c0f9d32..135ac1ae9ec 100644 --- a/htdocs/langs/ru_RU/modulebuilder.lang +++ b/htdocs/langs/ru_RU/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=List of dictionaries entries ListOfPermissionsDefined=List of defined permissions SeeExamples=See examples here EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) -VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update). Using a negative value means field is not shown by default on list but can be selected for viewing). It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty DisplayOnPdf=Display on PDF IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) diff --git a/htdocs/langs/ru_RU/other.lang b/htdocs/langs/ru_RU/other.lang index d229559ec81..6e128840716 100644 --- a/htdocs/langs/ru_RU/other.lang +++ b/htdocs/langs/ru_RU/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Sales order validated Notify_ORDER_SENTBYMAIL=Sales order sent by mail Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=URL of page WEBSITE_TITLE=Название WEBSITE_DESCRIPTION=Описание WEBSITE_IMAGE=Image -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Keywords LinesToImport=Lines to import diff --git a/htdocs/langs/ru_RU/products.lang b/htdocs/langs/ru_RU/products.lang index dc669d9b69d..371b5e9c53f 100644 --- a/htdocs/langs/ru_RU/products.lang +++ b/htdocs/langs/ru_RU/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL MassBarcodeInit=Массовое создание штрих-кода MassBarcodeInitDesc=Эта страница может быть использована для создания штрих-кодов для объектов, у которых нет штрих-кода. Проверьте перед выполнением настройки модуля штрих-кодов. ProductAccountancyBuyCode=Учетный код (покупка) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Учетный код (продажа) ProductAccountancySellIntraCode=Accounting code (sale intra-Community) ProductAccountancySellExportCode=Учетный код (экспорт) @@ -165,7 +167,7 @@ SuppliersPrices=Vendor prices SuppliersPricesOfProductsOrServices=Vendor prices (of products or services) CustomCode=Таможенный / Товарный / HS код CountryOrigin=Страна происхождения -Nature=Nature of produt (material/finished) +Nature=Nature of product (material/finished) ShortLabel=Короткая метка Unit=Единица p=u. diff --git a/htdocs/langs/ru_RU/projects.lang b/htdocs/langs/ru_RU/projects.lang index c233f1d4a67..cd7d1bd6cec 100644 --- a/htdocs/langs/ru_RU/projects.lang +++ b/htdocs/langs/ru_RU/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=which I'm linked to project Time=Время ListOfTasks=List of tasks GoToListOfTimeConsumed=Go to list of time consumed -GoToListOfTasks=Show as list -GoToGanttView=show as Gantt GanttView=Gantt View ListProposalsAssociatedProject=List of the commercial proposals related to the project ListOrdersAssociatedProject=List of sales orders related to the project @@ -188,7 +186,7 @@ PlannedWorkload=Запланированная нагрузка PlannedWorkloadShort=Рабочая нагрузка ProjectReferers=Связанные элементы ProjectMustBeValidatedFirst=Проект должен быть сначала подтверждён -FirstAddRessourceToAllocateTime=Assign a user resource to task to allocate time +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=Ввод по дням InputPerWeek=Ввод по неделе InputPerMonth=Input per month @@ -240,6 +238,7 @@ LatestModifiedProjects=Latest %s modified projects OtherFilteredTasks=Other filtered tasks NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=Allow user comments on tasks AllowCommentOnProject=Allow user comments on projects @@ -256,7 +255,7 @@ ServiceToUseOnLines=Service to use on lines InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. ProjectFollowOpportunity=Follow opportunity -ProjectFollowTasks=Follow tasks +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Usage: Opportunity UsageTasks=Usage: Tasks @@ -265,3 +264,4 @@ InvoiceToUse=Draft invoice to use NewInvoice=Новый счёт OneLinePerTask=One line per task OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/ru_RU/receiptprinter.lang b/htdocs/langs/ru_RU/receiptprinter.lang index 5fcf8b3f605..db6b24e5bb4 100644 --- a/htdocs/langs/ru_RU/receiptprinter.lang +++ b/htdocs/langs/ru_RU/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Dummy Printer CONNECTOR_NETWORK_PRINT=Network Printer CONNECTOR_FILE_PRINT=Local Printer CONNECTOR_WINDOWS_PRINT=Local Windows Printer +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Fake Printer for test, does nothing CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Default Profile PROFILE_SIMPLE=Simple Profile PROFILE_EPOSTEP=Epos Tep Profile @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Invoice month in letters DOL_VALUE_MONTH=Invoice month DOL_VALUE_DAY=Invoice day DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Референс Счета-фактуры +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=Капитал +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/ru_RU/stripe.lang b/htdocs/langs/ru_RU/stripe.lang index 402a8c57df3..7f3d995c77b 100644 --- a/htdocs/langs/ru_RU/stripe.lang +++ b/htdocs/langs/ru_RU/stripe.lang @@ -32,6 +32,7 @@ VendorName=Имя поставщика CSSUrlForPaymentForm=CSS-стилей URL для оплаты форме NewStripePaymentReceived=New Stripe payment received NewStripePaymentFailed=New Stripe payment tried but failed +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Secret test key STRIPE_TEST_PUBLISHABLE_KEY=Publishable test key STRIPE_TEST_WEBHOOK_KEY=Webhook test key @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mo 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... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authenticatin rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/ru_RU/users.lang b/htdocs/langs/ru_RU/users.lang index 8fc8b5d136c..888fc7191ae 100644 --- a/htdocs/langs/ru_RU/users.lang +++ b/htdocs/langs/ru_RU/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Пользователи и их свойства DomainUser=Домен пользователя %s Reactivate=Возобновить CreateInternalUserDesc=Эта форма позволяет вам создать внутреннего пользователя в вашей компании. Чтобы создать внешнего пользователя (клиента, поставщика и т.д.), используйте кнопку «Создать пользователя Dolibarr» из карточки контакта этого контрагента. -InternalExternalDesc=Внутренний пользователь - это пользователь, который является частью вашей компании.
    Внешний пользователь - это клиент, продавец или кто-то другой.

    В обоих случаях права доступа определяют права в Dolibarr, также внешний пользователь может иметь менеджер меню, отличный от внутреннего пользователя (см. Главная - Настройка - Внешний вид). +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=Разрешение предоставляется, поскольку унаследовал от одного из пользователей в группы. Inherited=Унаследованный UserWillBeInternalUser=Созданный пользователь будет внутреннего пользователя (потому что не связаны с определенным третьим лицам) @@ -110,3 +110,8 @@ UserLogged=Пользователь вошел DateEmployment=Дата начала трудоустройства DateEmploymentEnd=Дата окончания занятости CantDisableYourself=Вы не можете отключить свою собственную запись пользователя +ForceUserExpenseValidator=Force expense report validator +ForceUserHolidayValidator=Force leave request validator +ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/ru_RU/website.lang b/htdocs/langs/ru_RU/website.lang index 0b410a27fbd..9b629ca755c 100644 --- a/htdocs/langs/ru_RU/website.lang +++ b/htdocs/langs/ru_RU/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=View page in new tab SetAsHomePage=Set as Home page RealURL=Real URL ViewWebsiteInProduction=View web site using home URLs -SetHereVirtualHost=Use with Apache/NGinx/...
    If you can create, on your web server (Apache, Nginx, ...), a dedicated Virtual Host with PHP enabled and a Root directory on
    %s
    then set the name of the virtual host you have created in the properties of web site, so the preview can be done also using this dedicated web server access instead of the internal Dolibarr server. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS=Use with PHP embedded server
    On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running
    php -S 0.0.0.0:8080 -t %s YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org CheckVirtualHostPerms=Check also that virtual host has permission %s on files into
    %s @@ -56,7 +57,7 @@ NoPageYet=No pages yet YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template SyntaxHelp=Help on specific syntax tips YouCanEditHtmlSourceckeditor=You can edit HTML source code using the "Source" button in editor. -YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Clone page/container CloneSite=Clone site SiteAdded=Website added @@ -76,7 +77,7 @@ BlogPost=Blog post WebsiteAccount=Website account WebsiteAccounts=Аккаунты сайта AddWebsiteAccount=Create web site account -BackToListOfThirdParty=Back to list for Third Party +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Disable website first MyContainerTitle=My web site title AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Sorry, this website is currently off line. Please 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 -OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that edits of HTML source will be possible when page content has been initialized by grabbing it from an external page ("Online" editor will NOT be available) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Only edition of HTML source is possible when content was grabbed from an external site GrabImagesInto=Grab also images found into css and page. ImagesShouldBeSavedInto=Images should be saved into directory @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 ch MainLanguage=Main language OtherLanguages=Other languages UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/ru_RU/zapier.lang b/htdocs/langs/ru_RU/zapier.lang new file mode 100644 index 00000000000..6d6eda71313 --- /dev/null +++ b/htdocs/langs/ru_RU/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr module + +# +# Admin page +# +ZapierForDolibarrSetup = Setup of Zapier for Dolibarr diff --git a/htdocs/langs/sk_SK/accountancy.lang b/htdocs/langs/sk_SK/accountancy.lang index 51cbbf4d809..cfafddf1d87 100644 --- a/htdocs/langs/sk_SK/accountancy.lang +++ b/htdocs/langs/sk_SK/accountancy.lang @@ -121,6 +121,7 @@ InvoiceLinesDone=Viazané riadky faktúr ExpenseReportLines=Lines of expense reports to bind ExpenseReportLinesDone=Bound lines of expense reports IntoAccount=Priradiť riadok k účnovnému účtu +TotalForAccount=Total for accounting account Ventilate=Priradiť @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Účtovný účet na registráciu darov ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_ACCOUNT=Účtovný účet štandardne pre predané produkty (použité, ak nie sú definované v produktovom liste) ACCOUNTING_PRODUCT_SOLD_INTRA_ACCOUNT=Accounting account by default for the products sold in EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported out of EEC (used if not defined in the product sheet) + ACCOUNTING_SERVICE_BUY_ACCOUNT=Účtovný účet predvolene pre zakúpené služby (používa sa, ak nie je definovaný v služobnom liste) +ACCOUNTING_SERVICE_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_ACCOUNT=Účtovný účet predvolene pre predané služby (používa sa, ak nie je definovaný v služobnom liste) ACCOUNTING_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unkno ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error PaymentsNotLinkedToProduct=Payment not linked to any product / service +OpeningBalance=Opening balance ShowOpeningBalance=Show opening balance HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Group of account PcgtypeDesc=Group 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. +Reconcilable=Reconcilable + TotalVente=Celkový obrat pred zdanením TotalMarge=Celkové predajné rozpätie @@ -307,11 +317,13 @@ 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Chart of accounts Id ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Mód predaja OptionModeProductSellIntra=Mode sales exported in EEC OptionModeProductSellExport=Mode sales exported in other countries OptionModeProductBuy=Mód nákupu +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries OptionModeProductSellDesc=Zobraziť všetky produkty s účtovným účtom pre predaj. OptionModeProductSellIntraDesc=Show all products with accounting account for sales in EEC. OptionModeProductSellExportDesc=Show all products with accounting account for other foreign sales. OptionModeProductBuyDesc=Zobraziť všetky produkty s účtovným účtom pre nákupy. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=Remove accounting code from lines that not exists into charts of account CleanHistory=Resetovať všetky priradenia pre zvolený rok PredefinedGroups=Predefined groups @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Account removed from group SaleLocal=Local sale SaleExport=Export sale SaleEEC=Sale in EEC +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=Rozsah účtovného účtu diff --git a/htdocs/langs/sk_SK/admin.lang b/htdocs/langs/sk_SK/admin.lang index b61fb750c2b..8e080ed435e 100644 --- a/htdocs/langs/sk_SK/admin.lang +++ b/htdocs/langs/sk_SK/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Webový server užívateľ / skupina NoSessionFound=Your PHP configuration seems to not allow listing of active sessions. The directory used to save sessions (%s) may be protected (for example by OS permissions or by PHP directive open_basedir). DBStoringCharset=Znaková sada dát uložených v databáze DBSortingCharset=Znaková sada databázy pre radenie dát +HostCharset=Host charset ClientCharset=Client charset ClientSortingCharset=Client collation WarningModuleNotActive=Modul %s musí byť povolený @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the NoMaxSizeByPHPLimit=Poznámka: No limit je nastavený v konfigurácii PHP MaxSizeForUploadedFiles=Maximálna veľkosť nahraných súborov (0, aby tak zabránil akejkoľvek odosielanie) UseCaptchaCode=Pomocou grafického kód (CAPTCHA) na prihlasovacej stránke -AntiVirusCommand= Úplná cesta k antivírusovej príkazu -AntiVirusCommandExample= Príklad pre ClamWin: C: \\ PROGRA ~ 1 \\ ClamWin \\ bin \\ clamscan.exe
    Príklad pre ClamAV: / usr / bin / clamscan +AntiVirusCommand=Úplná cesta k antivírusovej príkazu +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= Ďalšie parametre príkazového riadka -AntiVirusParamExample= Príklad ClamWin: - databáza = "C: \\ Program Files (x86) \\ ClamWin \\ lib" +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=Účtovné modul nastavenia UserSetup=Správa užívateľov Nastavenie MultiCurrencySetup=Multi-currency setup @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Funkcia zakázaný v demo FeatureAvailableOnlyOnStable=Táto možnosť je dostupná iba v oficiálnej stabilnej verzií BoxesDesc=Widgets are components showing some information that you can add to personalize some pages. You can choose between showing the widget or not by selecting target page and clicking 'Activate', or by clicking the trashcan to disable it. OnlyActiveElementsAreShown=Iba prvky z povolených modulov sú uvedené. -ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button (at end of module line) to enable/disable a module/application. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. ModulesMarketPlaceDesc=Viac modulov na stiahnutie môžete nájst na internete ModulesDeployDesc=If permissions on your file system allow it, you can use this tool to deploy an external module. The module will then be visible on the tab %s. ModulesMarketPlaces=Find external app/modules @@ -212,6 +213,7 @@ CompatibleUpTo=Compatible with version %s NotCompatible=This module does not seem compatible with your Dolibarr %s (Min %s - Max %s). CompatibleAfterUpdate=This module requires an update to your Dolibarr %s (Min %s - Max %s). SeeInMarkerPlace=See in Market place +SeeSetupOfModule=See setup of module %s Updated=Updated Nouveauté=Novelty AchatTelechargement=Buy / Download @@ -221,6 +223,7 @@ DoliPartnersDesc=List of companies providing custom-developed modules or feature WebSiteDesc=External websites for more add-on (non-core) modules... DevelopYourModuleDesc=Some solutions to develop your own module... URL=URL +RelativeURL=Relative URL BoxesAvailable=Dostupné doplnky BoxesActivated=Aktivované doplnky ActivateOn=Aktivácia na @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Checkboxes ExtrafieldCheckBoxFromList=Checkboxes from table ExtrafieldLink=Odkaz na objekt ComputedFormula=Computed field -ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Store computed field ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! ExtrafieldParamHelpPassword=Leaving this field blank means this value will be stored without encryption (field must be only hidden with star on screen).
    Set 'auto' to use the default encryption rule to save password into database (then value read will be the hash only, no way to retrieve original value) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Majte prázdny použiť predvolené hodnoty DefaultLink=Východiskový odkaz SetAsDefault=Nastaviť ako predvolené ValueOverwrittenByUserSetup=Pozor, táto hodnota môže byť prepísaná užívateľom špecifické nastavenia (každý užívateľ môže nastaviť vlastné clicktodial url) -ExternalModule=Externý modul - inštalovaný do adresára %s +ExternalModule=External module +InstalledInto=Installed into directory %s BarcodeInitForthird-parties=Mass barcode init for third-parties BarcodeInitForProductsOrServices=Masové načítanie čiarových kódov alebo reset pre produkty alebo služby CurrentlyNWithoutBarCode=Currently, you have %s record on %s %s without barcode defined. @@ -947,7 +951,7 @@ DictionaryCanton=States/Provinces DictionaryRegion=Okres DictionaryCountry=Štáty DictionaryCurrency=Platobné meny -DictionaryCivility=Title of civility +DictionaryCivility=Honorific titles DictionaryActions=Typy udalostí agendy DictionarySocialContributions=Types of social or fiscal taxes DictionaryVAT=Sadzby DPH alebo Sociálnej dane @@ -988,6 +992,7 @@ VATIsNotUsedDesc=By default the proposed Sales tax is 0 which can be used for ca VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=Rate LocalTax1IsNotUsed=Nepoužívajte druhá daň LocalTax1IsUsedDesc=Use a second type of tax (other than first one) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices LocalTax2IsNotUsedDescES=V predvolenom nastavení je navrhovaná IRPF je 0. Koniec vlády. LocalTax2IsUsedExampleES=V Španielsku, na voľnej nohe a nezávislí odborníci, ktorí poskytujú služby a firmy, ktorí sa rozhodli daňového systému modulov. LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=Vypisy lokálnej dane CalcLocaltax1=Predaj - Platba CalcLocaltax1Desc=Local Taxes reports are calculated with the difference between localtaxes sales and localtaxes purchases @@ -1018,6 +1026,7 @@ CalcLocaltax2=Platby CalcLocaltax2Desc=Local Taxes reports are the total of localtaxes purchases CalcLocaltax3=Predaje CalcLocaltax3Desc=Local Taxes reports are the total of localtaxes sales +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=Label používa v predvolenom nastavení, pokiaľ nie je preklad možno nájsť kód LabelOnDocuments=Štítok na dokumenty LabelOrTranslationKey=Label or translation key @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Expense report to approve Delays_MAIN_DELAY_HOLIDAYS=Leave requests 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. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. SetupDescription5=Other Setup menu entries manage optional parameters. LogEvents=Udalosti bezpečnostný audit Audit=Audit @@ -1128,7 +1137,7 @@ LogEventDesc=Enable logging for specific security events. Administrators the log AreaForAdminOnly=Setup parameters can be set by administrator users only. SystemInfoDesc=Systémové informácie je rôzne technické informácie získate v režime iba pre čítanie a viditeľné len pre správcov. SystemAreaForAdminOnly=This area is available to administrator users only. Dolibarr user permissions cannot change this restriction. -CompanyFundationDesc=Edit the information of the company/entity. Click on "%s" button at the bottom of the page. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. AccountantFileNumber=Accountant code DisplayDesc=Parameters affecting the look and behaviour of Dolibarr can be modified here. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Rules to generate and validate passwords DisableForgetPasswordLinkOnLogonPage=Do not show the "Password Forgotten" link on the Login page UsersSetup=Užívatelia modul nastavenia UserMailRequired=Email required to create a new user +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### HRMSetup=HRM module setup ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Fakturačné doklady modely BillsPDFModulesAccordindToInvoiceType=Invoice documents models according to invoice type PaymentsPDFModules=Payment documents models ForceInvoiceDate=Force faktúry dátum Dátum overenia -SuggestedPaymentModesIfNotDefinedInInvoice=Navrhované platby režime na faktúre v predvolenom nastavení, ak nie je definovaný pre faktúry +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice SuggestPaymentByRIBOnAccount=Suggest payment by withdrawal on account SuggestPaymentByChequeToAddress=Suggest payment by check to FreeLegalTextOnInvoices=Voľný text na faktúrach @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Vendor payments setup PropalSetup=Obchodné návrhy modul nastavenia ProposalsNumberingModules=Komerčné návrh číslovanie modely ProposalsPDFModules=Komerčné návrh doklady modely -SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined for proposal +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal FreeLegalTextOnProposal=Voľný text o obchodných návrhov WatermarkOnDraftProposal=Vodoznak na predlôh návrhov komerčných (none ak prázdny) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal @@ -1322,6 +1334,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 ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=Sales Orders management setup OrdersNumberingModules=Objednávky číslovanie modelov OrdersModelModule=Objednať dokumenty modely @@ -1720,7 +1733,7 @@ MultiCompanySetup=Spoločnosť Multi-modul nastavenia ##### Suppliers ##### SuppliersSetup=Vendor module setup SuppliersCommandModel=Complete template of Purchase Order -SuppliersCommandModelMuscadet=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) SuppliersInvoiceModel=Complete template of Vendor Invoice SuppliersInvoiceNumberingModel=Vendor invoices numbering models IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Skryť obrázky vo vrchnom menu LeftMenuBackgroundColor=Farba pozadia pre ľavé menu BackgroundTableTitleColor=Farba pozadia pre riadok s názvom BackgroundTableTitleTextColor=Text color for Table title line +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Farba pozadia pre nepárne riadky tabuľky BackgroundTableLineEvenColor=Farba pozadia pre párne riadky tabuľky MinimumNoticePeriod=Minimálny oznamovací čas ( Vaša požiadávka musi byť zaznamenaná pred týmto časom ) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Dolibarr Reference not found in Message ID FormatZip=Zips MainMenuCode=Menu entry code (mainmenu) ECMAutoTree=Show automatic ECM tree -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. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Opening hours OpeningHoursDesc=Enter here the regular opening hours of your company. ResourceSetup=Configuration of Resource module @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramatical ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export +ImportSetup=Setup of module Import InstanceUniqueID=Unique ID of the instance SmallerThan=Smaller than LargerThan=Larger than @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled EmailTemplate=Template for email EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/sk_SK/bills.lang b/htdocs/langs/sk_SK/bills.lang index 3f27a2822d7..c1bbc4e9d9c 100644 --- a/htdocs/langs/sk_SK/bills.lang +++ b/htdocs/langs/sk_SK/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Vendors invoices SupplierBill=Vendor invoice SupplierBills=dodávatelia faktúry Payment=Platba -PaymentBack=Platba späť -CustomerInvoicePaymentBack=Platba späť +PaymentBack=Refund +CustomerInvoicePaymentBack=Refund Payments=Platby PaymentsBack=Refunds paymentInInvoiceCurrency=in invoices currency PaidBack=Platené späť DeletePayment=Odstrániť platby ConfirmDeletePayment=Are you sure you want to delete this payment? -ConfirmConvertToReduc=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. -ConfirmConvertToReducSupplier=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. SupplierPayments=Vendor payments ReceivedPayments=Prijaté platby @@ -209,17 +209,13 @@ NumberOfBillsByMonth=No. of invoices per month AmountOfBills=Výška faktúr AmountOfBillsHT=Amount of invoices (net of tax) AmountOfBillsByMonthHT=Výška faktúr mesačne (bez dane) -ShowSocialContribution=Zobrazit sociálnu/fiškálnu daň -ShowBill=Zobraziť faktúru -ShowInvoice=Zobraziť faktúru -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 +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=To pay on %s toPayOn=to pay on %s RetainedWarranty=Retained Warranty @@ -230,7 +226,6 @@ 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 AlreadyPaidNoCreditNotesNoDeposits=Already paid (without credit notes and down payments) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Generated from template invoice %s WarningInvoiceDateInFuture=Warning, the invoice date is higher than current date WarningInvoiceDateTooFarInFuture=Warning, the invoice date is too far from current date ViewAvailableGlobalDiscounts=View available discounts +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Postavenie PaymentConditionShortRECEP=Due Upon Receipt @@ -509,7 +505,7 @@ ToMakePayment=Zaplatiť ToMakePaymentBack=Oplatiť ListOfYourUnpaidInvoices=Zoznam nezaplatených faktúr NoteListOfYourUnpaidInvoices=Poznámka: Tento zoznam obsahuje iba faktúry pre tretie strany si sú prepojené ako obchodného zástupcu. -RevenueStamp=Kolek +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party YouMustCreateStandardInvoiceFirstDesc=You have to create a standard invoice first and convert it to "template" to create a new template invoice @@ -575,3 +571,4 @@ AutoFillDateTo=Set end date for service line with next invoice date AutoFillDateToShort=Set end date MaxNumberOfGenerationReached=Max number of gen. reached BILL_DELETEInDolibarr=Faktúra zmazaná +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/sk_SK/blockedlog.lang b/htdocs/langs/sk_SK/blockedlog.lang index 4aa4b7616f7..bce0ea3bd25 100644 --- a/htdocs/langs/sk_SK/blockedlog.lang +++ b/htdocs/langs/sk_SK/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Unalterable logs ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) DownloadBlockChain=Download fingerprints -KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this re after it was recorded, or has erased the previous archived record (check that line with previous # exists). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. AddedByAuthority=Stored into remote authority diff --git a/htdocs/langs/sk_SK/cashdesk.lang b/htdocs/langs/sk_SK/cashdesk.lang index 44096e6bc4d..aabc1f6d1ef 100644 --- a/htdocs/langs/sk_SK/cashdesk.lang +++ b/htdocs/langs/sk_SK/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Pridať tento článok RestartSelling=Vráťte sa na predaj SellFinished=Predaj ukončený PrintTicket=Tlač vstupeniek +SendTicket=Send ticket NoProductFound=Žiadny článok nájdených ProductFound=výrobky, ktoré sa NoArticle=Žiadny článok @@ -48,6 +49,7 @@ Footer=Footer AmountAtEndOfPeriod=Amount at end of period (day, month or year) TheoricalAmount=Theorical amount RealAmount=Real amount +CashFence=Cash fence CashFenceDone=Cash fence done for the period NbOfInvoices=Nb faktúr Paymentnumpad=Type of Pad to enter payment @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS needs product categories to work OrderNotes=Order Notes CashDeskBankAccountFor=Default account to use for payments in NoPaimementModesDefined=No paiment mode defined in TakePOS configuration -TicketVatGrouped=Group VAT by rate in tickets -AutoPrintTickets=Automatically print tickets +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? @@ -87,7 +90,19 @@ HeadBar=Head Bar SortProductField=Field for sorting products Browser=Prehliadač BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/sk_SK/companies.lang b/htdocs/langs/sk_SK/companies.lang index ba91a15b328..01282f4f853 100644 --- a/htdocs/langs/sk_SK/companies.lang +++ b/htdocs/langs/sk_SK/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted=Spoločnosť "%s" vymazaný z databázy. ListOfContacts=Zoznam kontaktov adries / ListOfContactsAddresses=Zoznam kontaktov adries / ListOfThirdParties=List of Third Parties -ShowCompany=Show Third Party ShowContact=Zobraziť kontakt ContactsAllShort=Všetko (Bez filtra) ContactType=Kontaktujte typ @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=First name of sales representative SaleRepresentativeLastname=Last name of sales representative ErrorThirdpartiesMerge=There was an error when deleting the third parties. Please check the log. Changes have been reverted. NewCustomerSupplierCodeProposed=Customer or Vendor code already used, a new code is suggested +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Payment Type - Customer PaymentTermsCustomer=Payment Terms - Customer diff --git a/htdocs/langs/sk_SK/compta.lang b/htdocs/langs/sk_SK/compta.lang index 859d3e5ae70..49dc4cebc1c 100644 --- a/htdocs/langs/sk_SK/compta.lang +++ b/htdocs/langs/sk_SK/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=See %sanalysis of payments%s for a calculation on act SeeReportInDueDebtMode=See %sanalysis of invoices%s for a calculation based on known recorded invoices even if they are not yet accounted in Ledger. SeeReportInBookkeepingMode=See %sBookeeping report%s for a calculation on Bookkeeping Ledger table RulesAmountWithTaxIncluded=- Uvedené sumy sú so všetkými daňami -RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the validation date of invoices and VAT and on the due date for expenses. For salaries defined with Salary module, the value date of payment is used. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- It includes the real payments made on invoices, expenses, VAT and salaries.
    - It is based on the payment dates of the invoices, expenses, VAT and salaries. The donation date for donation. -RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the validation date of these invoices.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    RulesCATotalSaleJournal=It includes all credit lines from the Sale journal. RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Turnover invoiced by sale tax rate TurnoverCollectedbyVatrate=Turnover collected by sale tax rate PurchasebyVatrate=Purchase by sale tax rate LabelToShow=Krátky názov +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/sk_SK/donations.lang b/htdocs/langs/sk_SK/donations.lang index 3cd6387dda7..a399ace9462 100644 --- a/htdocs/langs/sk_SK/donations.lang +++ b/htdocs/langs/sk_SK/donations.lang @@ -7,7 +7,6 @@ AddDonation=Create a donation NewDonation=Nový darcovstvo DeleteADonation=Delete a donation ConfirmDeleteADonation=Are you sure you want to delete this donation? -ShowDonation=Zobraziť dar PublicDonation=Verejné dar DonationsArea=Dary oblasť DonationStatusPromiseNotValidated=Návrh sľub @@ -17,6 +16,7 @@ DonationStatusPromiseNotValidatedShort=Návrh DonationStatusPromiseValidatedShort=Overené DonationStatusPaidShort=Prijaté DonationTitle=Darovanie príjem +DonationDate=Donation date DonationDatePayment=Dátum platby ValidPromess=Overiť sľub DonationReceipt=Darovanie príjem diff --git a/htdocs/langs/sk_SK/errors.lang b/htdocs/langs/sk_SK/errors.lang index e75d00a8928..2f24a7664d6 100644 --- a/htdocs/langs/sk_SK/errors.lang +++ b/htdocs/langs/sk_SK/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=Súbor nedostali úplne servera. ErrorNoTmpDir=Dočasné direct %s neexistuje. ErrorUploadBlockedByAddon=Pridať zablokovaný PHP / Apache pluginu. ErrorFileSizeTooLarge=Súbor je príliš veľký. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Veľkosť príliš dlhá pre typ int (%s číslice maximum) ErrorSizeTooLongForVarcharType=Veľkosť príliš dlho typu string (%s znakov maximum) ErrorNoValueForSelectType=Vyplňte, prosím, hodnotu zoznamu vyberte @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # 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/sk_SK/install.lang b/htdocs/langs/sk_SK/install.lang index acefbcaba3c..d635526db59 100644 --- a/htdocs/langs/sk_SK/install.lang +++ b/htdocs/langs/sk_SK/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=This PHP supports Curl. PHPSupportCalendar=This PHP supports calendars extensions. PHPSupportUTF8=This PHP supports UTF8 functions. PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=This PHP supports %s functions. PHPMemoryOK=Maximálna pamäť pre relácie v PHP je nastavená na %s. To by malo stačiť. 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. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=Vaše nainštalované PHP nepodporuje Curl ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. 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. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. ErrorDirDoesNotExists=Adresár %s neexistuje. ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=The application tried to self-upgrade, but the in 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. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/sk_SK/interventions.lang b/htdocs/langs/sk_SK/interventions.lang index 4093c66d98c..24b6496bfaa 100644 --- a/htdocs/langs/sk_SK/interventions.lang +++ b/htdocs/langs/sk_SK/interventions.lang @@ -41,9 +41,7 @@ InterventionsArea=Interventions area DraftFichinter=Draft interventions LastModifiedInterventions=Najnovšie %s upravené zásahy FichinterToProcess=Interventions to process -##### Types de contacts ##### TypeContact_fichinter_external_CUSTOMER=V nadväznosti kontakt so zákazníkom -# Modele numérotation PrintProductsOnFichinter=Print also lines of type "product" (not only services) on intervention card PrintProductsOnFichinterDetails=Zásahy vytvorené z objednávok UseServicesDurationOnFichinter=Use services duration for interventions generated from orders @@ -53,14 +51,16 @@ InterventionStatistics=Statistics of interventions NbOfinterventions=No. of intervention cards NumberOfInterventionsByMonth=No. of intervention cards by month (date of validation) AmountOfInteventionNotIncludedByDefault=Amount of intervention is not included by default into profit (in most cases, timesheets are used to count time spent). Add option PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT to 1 into home-setup-other to include them. -##### Exports ##### InterId=Intervention id InterRef=Intervention ref. InterDateCreation=Date creation intervention InterDuration=Duration intervention InterStatus=Status intervention InterNote=Note intervention +InterLine=Line of intervention InterLineId=Line id intervention InterLineDate=Line date intervention InterLineDuration=Line duration intervention InterLineDesc=Line description intervention +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/sk_SK/link.lang b/htdocs/langs/sk_SK/link.lang index fdcf07aeff4..1ffcd41a18b 100644 --- a/htdocs/langs/sk_SK/link.lang +++ b/htdocs/langs/sk_SK/link.lang @@ -8,3 +8,4 @@ LinkRemoved=The link %s has been removed ErrorFailedToDeleteLink= Failed to remove link '%s' ErrorFailedToUpdateLink= Failed to update link '%s' URLToLink=URL to link +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/sk_SK/mails.lang b/htdocs/langs/sk_SK/mails.lang index 2235e30da51..fc8cb12b03f 100644 --- a/htdocs/langs/sk_SK/mails.lang +++ b/htdocs/langs/sk_SK/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=No contact/address with a category found NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found OutGoingEmailSetup=Outgoing email setup InGoingEmailSetup=Incoming email setup -OutGoingEmailSetupForEmailing=Outgoing email setup (for mass emailing) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Default outgoing email setup Information=Informácie ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/sk_SK/main.lang b/htdocs/langs/sk_SK/main.lang index 2cf453311ea..f288b52c783 100644 --- a/htdocs/langs/sk_SK/main.lang +++ b/htdocs/langs/sk_SK/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Save and stay SaveAndNew=Save and new TestConnection=Skúšobné pripojenie ToClone=Klon +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Choose data you want to clone: NoCloneOptionsSpecified=Žiadne údaje nie sú k klonovať definovaný. Of=z @@ -829,6 +830,8 @@ Gender=Gender Genderman=Man Genderwoman=Woman ViewList=Zobrazenie zoznamu +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Mandatory Hello=Ahoj GoodBye=GoodBye @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Select your graph options to build a graph Measures=Measures XAxis=X-Axis YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/sk_SK/modulebuilder.lang b/htdocs/langs/sk_SK/modulebuilder.lang index 00a8c0f9d32..135ac1ae9ec 100644 --- a/htdocs/langs/sk_SK/modulebuilder.lang +++ b/htdocs/langs/sk_SK/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=List of dictionaries entries ListOfPermissionsDefined=List of defined permissions SeeExamples=See examples here EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) -VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update). Using a negative value means field is not shown by default on list but can be selected for viewing). It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty DisplayOnPdf=Display on PDF IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) diff --git a/htdocs/langs/sk_SK/multicurrency.lang b/htdocs/langs/sk_SK/multicurrency.lang new file mode 100644 index 00000000000..bfcbd11fb7c --- /dev/null +++ b/htdocs/langs/sk_SK/multicurrency.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Multi currency +ErrorAddRateFail=Error in added rate +ErrorAddCurrencyFail=Error in added currency +ErrorDeleteCurrencyFail=Error delete fail +multicurrency_syncronize_error=Synchronization error: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Use the date of the document to find the currency rate, instead of using the latest known rate +multicurrency_useOriginTx=When an object is created from another, keep the original rate from the source object (otherwise use the latest known rate) +CurrencyLayerAccount=CurrencyLayer API +CurrencyLayerAccount_help_to_synchronize=You must create an account on website %s to use this functionality.
    Get your API key.
    If you use a free account, you can't change the source currency (USD by default).
    If your main currency is not USD, the application will automatically recalculate it.

    You are limited to 1000 synchronizations per month. +multicurrency_appId=API key +multicurrency_appCurrencySource=Source currency +multicurrency_alternateCurrencySource=Alternate source currency +CurrenciesUsed=Currencies used +CurrenciesUsed_help_to_add=Add the different currencies and rates you need to use on your proposals, orders etc. +rate=rate +MulticurrencyReceived=Received, original currency +MulticurrencyRemainderToTake=Remaining amount, original currency +MulticurrencyPaymentAmount=Payment amount, original currency +AmountToOthercurrency=Amount To (in currency of receiving account) +CurrencyRateSyncSucceed=Currency rate synchronization done successfuly +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Use the currency of the document for online payments diff --git a/htdocs/langs/sk_SK/other.lang b/htdocs/langs/sk_SK/other.lang index ad1fb336b1f..af9a401705e 100644 --- a/htdocs/langs/sk_SK/other.lang +++ b/htdocs/langs/sk_SK/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Sales order validated Notify_ORDER_SENTBYMAIL=Sales order sent by mail Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=URL of page WEBSITE_TITLE=Názov WEBSITE_DESCRIPTION=Popis WEBSITE_IMAGE=Image -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Keywords LinesToImport=Lines to import diff --git a/htdocs/langs/sk_SK/products.lang b/htdocs/langs/sk_SK/products.lang index ec2e1a7a291..503c6d5da77 100644 --- a/htdocs/langs/sk_SK/products.lang +++ b/htdocs/langs/sk_SK/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL MassBarcodeInit=Hromadné načítanie čiarového kódu MassBarcodeInitDesc=Tu môžete načítať čiarový kód pre produkt kde nie je definovaný. Skontroluje pred načítaním modulu čiarového kódu ProductAccountancyBuyCode=Accounting code (purchase) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Accounting code (sale) ProductAccountancySellIntraCode=Accounting code (sale intra-Community) ProductAccountancySellExportCode=Accounting code (sale export) @@ -165,7 +167,7 @@ SuppliersPrices=Vendor prices SuppliersPricesOfProductsOrServices=Vendor prices (of products or services) CustomCode=Customs / Commodity / HS code CountryOrigin=Krajina pôvodu -Nature=Nature of produt (material/finished) +Nature=Nature of product (material/finished) ShortLabel=Krátky názov Unit=Jednotka p=u. diff --git a/htdocs/langs/sk_SK/projects.lang b/htdocs/langs/sk_SK/projects.lang index 6151c06cbb8..293e24952ac 100644 --- a/htdocs/langs/sk_SK/projects.lang +++ b/htdocs/langs/sk_SK/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=which I'm linked to project Time=Čas ListOfTasks=List of tasks GoToListOfTimeConsumed=Go to list of time consumed -GoToListOfTasks=Show as list -GoToGanttView=show as Gantt GanttView=Gantt View ListProposalsAssociatedProject=List of the commercial proposals related to the project ListOrdersAssociatedProject=List of sales orders related to the project @@ -188,7 +186,7 @@ PlannedWorkload=Plánované zaťaženie PlannedWorkloadShort=Workload ProjectReferers=Related items ProjectMustBeValidatedFirst=Project must be validated first -FirstAddRessourceToAllocateTime=Assign a user resource to task to allocate time +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=Input per day InputPerWeek=Input per week InputPerMonth=Input per month @@ -240,6 +238,7 @@ LatestModifiedProjects=Latest %s modified projects OtherFilteredTasks=Other filtered tasks NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=Allow user comments on tasks AllowCommentOnProject=Allow user comments on projects @@ -256,7 +255,7 @@ ServiceToUseOnLines=Service to use on lines InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. ProjectFollowOpportunity=Follow opportunity -ProjectFollowTasks=Follow tasks +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Usage: Opportunity UsageTasks=Usage: Tasks @@ -265,3 +264,4 @@ InvoiceToUse=Draft invoice to use NewInvoice=Nová faktúra OneLinePerTask=One line per task OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/sk_SK/receiptprinter.lang b/htdocs/langs/sk_SK/receiptprinter.lang index 4b6b0f8b42c..bb556776a93 100644 --- a/htdocs/langs/sk_SK/receiptprinter.lang +++ b/htdocs/langs/sk_SK/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Fiktívna tlačiareň CONNECTOR_NETWORK_PRINT=Sieťová tlačiareň CONNECTOR_FILE_PRINT=Lokálna tlačiareň CONNECTOR_WINDOWS_PRINT=Lokálna Windows tlačiareň +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Testovacia tlačiareň, nič nerobí CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Základný profil PROFILE_SIMPLE=Jednoduchý profil PROFILE_EPOSTEP=Epos Tep Profil @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Invoice month in letters DOL_VALUE_MONTH=Invoice month DOL_VALUE_DAY=Invoice day DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Faktúra ref +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=Kapitál +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/sk_SK/stripe.lang b/htdocs/langs/sk_SK/stripe.lang index b8fc19af2e8..dca68cf8cda 100644 --- a/htdocs/langs/sk_SK/stripe.lang +++ b/htdocs/langs/sk_SK/stripe.lang @@ -32,6 +32,7 @@ VendorName=Názov dodávateľa CSSUrlForPaymentForm=CSS štýlov url platobného formulára NewStripePaymentReceived=New Stripe payment received NewStripePaymentFailed=New Stripe payment tried but failed +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Secret test key STRIPE_TEST_PUBLISHABLE_KEY=Publishable test key STRIPE_TEST_WEBHOOK_KEY=Webhook test key @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mo 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... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authenticatin rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/sk_SK/users.lang b/htdocs/langs/sk_SK/users.lang index 866513bc538..a5c18482b77 100644 --- a/htdocs/langs/sk_SK/users.lang +++ b/htdocs/langs/sk_SK/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Users and their properties DomainUser=Užívateľ domény %s Reactivate=Reaktivácia CreateInternalUserDesc=This form allows you to create an internal user in your company/organization. To create an external user (customer, vendor etc. ..), use the button 'Create Dolibarr User' from that third-party's contact card. -InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other.

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=Povolenie udelené, pretože dedia z jednej zo skupiny užívateľov. Inherited=Zdedený UserWillBeInternalUser=Vytvorený užívateľ bude interný užívateľ (pretože nie je spojený s určitou treťou stranou) @@ -110,3 +110,8 @@ UserLogged=Užívateľ prihlásený DateEmployment=Employment Start Date DateEmploymentEnd=Employment End Date CantDisableYourself=You can't disable your own user record +ForceUserExpenseValidator=Force expense report validator +ForceUserHolidayValidator=Force leave request validator +ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/sk_SK/website.lang b/htdocs/langs/sk_SK/website.lang index 6881e75021b..def2580fd58 100644 --- a/htdocs/langs/sk_SK/website.lang +++ b/htdocs/langs/sk_SK/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=Zobraziť stránku na novej karte SetAsHomePage=Nastaviť ako domovskú stránku RealURL=Skutočná URL ViewWebsiteInProduction=Zobraziť web stránku použitím domovskej URL -SetHereVirtualHost=Use with Apache/NGinx/...
    If you can create, on your web server (Apache, Nginx, ...), a dedicated Virtual Host with PHP enabled and a Root directory on
    %s
    then set the name of the virtual host you have created in the properties of web site, so the preview can be done also using this dedicated web server access instead of the internal Dolibarr server. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS=Use with PHP embedded server
    On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running
    php -S 0.0.0.0:8080 -t %s YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org CheckVirtualHostPerms=Check also that virtual host has permission %s on files into
    %s @@ -56,7 +57,7 @@ NoPageYet=No pages yet YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template SyntaxHelp=Help on specific syntax tips YouCanEditHtmlSourceckeditor=You can edit HTML source code using the "Source" button in editor. -YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Clone page/container CloneSite=Clone site SiteAdded=Website added @@ -76,7 +77,7 @@ BlogPost=Blog post WebsiteAccount=Website account WebsiteAccounts=Website accounts AddWebsiteAccount=Create web site account -BackToListOfThirdParty=Back to list for Third Party +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Disable website first MyContainerTitle=My web site title AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Sorry, this website is currently off line. Please 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 -OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that edits of HTML source will be possible when page content has been initialized by grabbing it from an external page ("Online" editor will NOT be available) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Only edition of HTML source is possible when content was grabbed from an external site GrabImagesInto=Grab also images found into css and page. ImagesShouldBeSavedInto=Images should be saved into directory @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 ch MainLanguage=Main language OtherLanguages=Other languages UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/sk_SK/zapier.lang b/htdocs/langs/sk_SK/zapier.lang new file mode 100644 index 00000000000..6d6eda71313 --- /dev/null +++ b/htdocs/langs/sk_SK/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr module + +# +# Admin page +# +ZapierForDolibarrSetup = Setup of Zapier for Dolibarr diff --git a/htdocs/langs/sl_SI/accountancy.lang b/htdocs/langs/sl_SI/accountancy.lang index b1872aeca0c..a362c24efda 100644 --- a/htdocs/langs/sl_SI/accountancy.lang +++ b/htdocs/langs/sl_SI/accountancy.lang @@ -121,6 +121,7 @@ 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 +TotalForAccount=Total for accounting account Ventilate=Bind @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Accounting account to register donations ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (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 products sold in EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported 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_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (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_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unkno ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error PaymentsNotLinkedToProduct=Payment not linked to any product / service +OpeningBalance=Opening balance ShowOpeningBalance=Show opening balance HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Group of account PcgtypeDesc=Group 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. +Reconcilable=Reconcilable + TotalVente=Total turnover before tax TotalMarge=Skupaj prodajna marža @@ -307,11 +317,13 @@ 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Chart of accounts Id ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC OptionModeProductSellExport=Mode sales exported in other countries OptionModeProductBuy=Mode purchases +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries 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. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=Remove accounting code from lines that not exists into charts of account CleanHistory=Reset all bindings for selected year PredefinedGroups=Predefined groups @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Account removed from group SaleLocal=Local sale SaleExport=Export sale SaleEEC=Sale in EEC +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=Range of accounting account diff --git a/htdocs/langs/sl_SI/admin.lang b/htdocs/langs/sl_SI/admin.lang index 23ec165b087..d6589945d4a 100644 --- a/htdocs/langs/sl_SI/admin.lang +++ b/htdocs/langs/sl_SI/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Spletni strežnik uporabnik / skupina NoSessionFound=Your PHP configuration seems to not allow listing of active sessions. The directory used to save sessions (%s) may be protected (for example by OS permissions or by PHP directive open_basedir). DBStoringCharset=Nabor znakov v bazi podatkov za shranjevanje podatkov DBSortingCharset=Nabor znakov v bazi podatkov za sortiranje podatkov +HostCharset=Host charset ClientCharset=Client charset ClientSortingCharset=Client collation WarningModuleNotActive=Modul %s mora biti omogočen @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the NoMaxSizeByPHPLimit=Opomba: V vaši PHP konfiguraciji ni nastavljenih omejitev MaxSizeForUploadedFiles=Največja velikost prenesene datoteke (0 za prepoved vseh prenosov) UseCaptchaCode=Na prijavni strani uporabi grafično kodo (CAPTCHA) -AntiVirusCommand= Celotna pot za antivirusno ukazno vrstico -AntiVirusCommandExample= Primer za ClamWin: c:\\Program Files (x86)\\ClamWin\\bin\\clamscan.exe
    Primer za ClamAv: /usr/bin/clamscan +AntiVirusCommand=Celotna pot za antivirusno ukazno vrstico +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= Več parametrov v ukazni vrstici -AntiVirusParamExample= Primer za ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=Nastavitve računovodskega modula UserSetup=Nastavitve upravljanja uporabnikov MultiCurrencySetup=Multi-currency setup @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Funkcija onemogočena v demo različici FeatureAvailableOnlyOnStable=Feature only available on official stable versions BoxesDesc=Widgets are components showing some information that you can add to personalize some pages. You can choose between showing the widget or not by selecting target page and clicking 'Activate', or by clicking the trashcan to disable it. OnlyActiveElementsAreShown=Prikazani so samo elementi omogočenih modulov . -ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button (at end of module line) to enable/disable a module/application. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. ModulesMarketPlaceDesc=You can find more modules to download on external websites on the Internet... ModulesDeployDesc=If permissions on your file system allow it, you can use this tool to deploy an external module. The module will then be visible on the tab %s. ModulesMarketPlaces=Find external app/modules @@ -212,6 +213,7 @@ CompatibleUpTo=Compatible with version %s NotCompatible=This module does not seem compatible with your Dolibarr %s (Min %s - Max %s). CompatibleAfterUpdate=This module requires an update to your Dolibarr %s (Min %s - Max %s). SeeInMarkerPlace=See in Market place +SeeSetupOfModule=Glejte nastavitev modula %s Updated=Updated Nouveauté=Novelty AchatTelechargement=Buy / Download @@ -221,6 +223,7 @@ DoliPartnersDesc=List of companies providing custom-developed modules or feature WebSiteDesc=External websites for more add-on (non-core) modules... DevelopYourModuleDesc=Some solutions to develop your own module... URL=URL +RelativeURL=Relative URL BoxesAvailable=Widgets available BoxesActivated=Widgets activated ActivateOn=Aktiviran na @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Checkboxes ExtrafieldCheckBoxFromList=Checkboxes from table ExtrafieldLink=Poveži z objektom ComputedFormula=Computed field -ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Store computed field ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! ExtrafieldParamHelpPassword=Leaving this field blank means this value will be stored without encryption (field must be only hidden with star on screen).
    Set 'auto' to use the default encryption rule to save password into database (then value read will be the hash only, no way to retrieve original value) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Pusti prazno za uporabo privzete vrednosti DefaultLink=Privzeta povezava SetAsDefault=Set as default ValueOverwrittenByUserSetup=Pozor, ta vrednost bo morda prepisana s specifično nastavitvijo uporabnika (vsak uporabnik lahko nastavi lastno povezavo za klic s klikom) -ExternalModule=Zunanji modul - nameščen v mapo %s +ExternalModule=External module +InstalledInto=Installed into directory %s BarcodeInitForthird-parties=Mass barcode init for third-parties BarcodeInitForProductsOrServices=Vzpostavitev ali resetiranje masovne črtne kode za proizvode in storitve CurrentlyNWithoutBarCode=Currently, you have %s record on %s %s without barcode defined. @@ -947,7 +951,7 @@ DictionaryCanton=States/Provinces DictionaryRegion=Regije DictionaryCountry=Države DictionaryCurrency=Valute -DictionaryCivility=Title of civility +DictionaryCivility=Honorific titles DictionaryActions=Types of agenda events DictionarySocialContributions=Types of social or fiscal taxes DictionaryVAT=Stopnje DDV ali davkov @@ -988,6 +992,7 @@ VATIsNotUsedDesc=By default the proposed Sales tax is 0 which can be used for ca VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=Stopnja LocalTax1IsNotUsed=Ne uporabi drugega davka LocalTax1IsUsedDesc=Use a second type of tax (other than first one) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices LocalTax2IsNotUsedDescES=Privzeto predlagani IRPF je 0. Konec pravila. LocalTax2IsUsedExampleES=V Španiji, samostojnimi in neodvisni strokovnjaki, ki opravljajo storitve in podjetja, ki so se odločili davčni sistem modulov. LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=Poročila o lokalnih davkih CalcLocaltax1=Prodaja - Nabava CalcLocaltax1Desc=Poročila o lokalnih davkih so izračunana kot razlika med nabavnimi in prodajnimi davki @@ -1018,6 +1026,7 @@ CalcLocaltax2=Nabava CalcLocaltax2Desc=Poročila o lokalnih davkih so seštevek nabavnih davkov CalcLocaltax3=Prodaja CalcLocaltax3Desc=Poročila o lokalnih davkih so seštevek prodajnih davkov +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=Privzet naziv, če za kodo ne obstaja prevod LabelOnDocuments=Naslov na dokumentu LabelOrTranslationKey=Label or translation key @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Expense report to approve Delays_MAIN_DELAY_HOLIDAYS=Leave requests 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. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. SetupDescription5=Other Setup menu entries manage optional parameters. LogEvents=Dogodki v zvezi z nadzorovanjem varnosti Audit=Nadzor @@ -1128,7 +1137,7 @@ LogEventDesc=Enable logging for specific security events. Administrators the log AreaForAdminOnly=Setup parameters can be set by administrator users only. SystemInfoDesc=Sistemske informacije so raznovrstne tehnične informacije, ki so na voljo samo v bralnem načinu in jih vidi samo administrator. SystemAreaForAdminOnly=This area is available to administrator users only. Dolibarr user permissions cannot change this restriction. -CompanyFundationDesc=Edit the information of the company/entity. Click on "%s" button at the bottom of the page. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. AccountantFileNumber=Accountant code DisplayDesc=Parameters affecting the look and behaviour of Dolibarr can be modified here. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Rules to generate and validate passwords DisableForgetPasswordLinkOnLogonPage=Do not show the "Password Forgotten" link on the Login page UsersSetup=Nastavitve modula uporabnikov UserMailRequired=Email required to create a new user +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### HRMSetup=HRM module setup ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Modeli obrazcev računov BillsPDFModulesAccordindToInvoiceType=Invoice documents models according to invoice type PaymentsPDFModules=Payment documents models ForceInvoiceDate=Vsili datum računa kot datum potrditve -SuggestedPaymentModesIfNotDefinedInInvoice=Privzet predlagan način plačila na računu, če ni definiran drugačen način +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice SuggestPaymentByRIBOnAccount=Suggest payment by withdrawal on account SuggestPaymentByChequeToAddress=Suggest payment by check to FreeLegalTextOnInvoices=Poljubno besedilo na računu @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Vendor payments setup PropalSetup=Nastavitve modula za komercialne ponudbe ProposalsNumberingModules=Moduli za številčenje komercialnih ponudb ProposalsPDFModules=Modeli obrazcev komercialnih ponudb -SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined for proposal +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal FreeLegalTextOnProposal=Poljubno besedilo na komercialni ponudbi WatermarkOnDraftProposal=Vodni tisk na osnutkih komercialnih ponudb (brez, če je prazno) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Vprašajte za ciljni bančni račun ponudbe @@ -1322,6 +1334,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 ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=Sales Orders management setup OrdersNumberingModules=Moduli za številčenje naročil OrdersModelModule=Modeli obrazcev naročil @@ -1720,7 +1733,7 @@ MultiCompanySetup=Nastavitev modula za več podjetij ##### Suppliers ##### SuppliersSetup=Vendor module setup SuppliersCommandModel=Complete template of Purchase Order -SuppliersCommandModelMuscadet=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) SuppliersInvoiceModel=Complete template of Vendor Invoice SuppliersInvoiceNumberingModel=Vendor invoices numbering models IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Hide images in Top menu LeftMenuBackgroundColor=Barva ozadja za levi meni BackgroundTableTitleColor=Background color for Table title line BackgroundTableTitleTextColor=Text color for Table title line +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Barva ozadja za lihe vrstice tabele BackgroundTableLineEvenColor=Barva ozadja za sode vrstice tabele MinimumNoticePeriod=Minimalni rok za obvestilo (Vaš zahtevek za odsotnost mora biti podan pred tem rokom) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Dolibarr Reference not found in Message ID FormatZip=Zip MainMenuCode=Menu entry code (mainmenu) ECMAutoTree=Show automatic ECM tree -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. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Opening hours OpeningHoursDesc=Enter here the regular opening hours of your company. ResourceSetup=Configuration of Resource module @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramatical ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export +ImportSetup=Setup of module Import InstanceUniqueID=Unique ID of the instance SmallerThan=Smaller than LargerThan=Larger than @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled EmailTemplate=Template for email EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/sl_SI/bills.lang b/htdocs/langs/sl_SI/bills.lang index 2f982841f8b..719c6d19426 100644 --- a/htdocs/langs/sl_SI/bills.lang +++ b/htdocs/langs/sl_SI/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Vendors invoices SupplierBill=Vendor invoice SupplierBills=Računi dobaviteljev Payment=Plačilo -PaymentBack=Vrnitev plačila -CustomerInvoicePaymentBack=Vrnitev plačila +PaymentBack=Refund +CustomerInvoicePaymentBack=Refund Payments=Plačila PaymentsBack=Refunds paymentInInvoiceCurrency=in invoices currency PaidBack=Vrnjeno plačilo DeletePayment=Brisanje plačila ConfirmDeletePayment=Are you sure you want to delete this payment? -ConfirmConvertToReduc=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. -ConfirmConvertToReducSupplier=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. SupplierPayments=Vendor payments ReceivedPayments=Prejeta plačila @@ -209,17 +209,13 @@ NumberOfBillsByMonth=No. of invoices per month AmountOfBills=Znesek račuov AmountOfBillsHT=Amount of invoices (net of tax) AmountOfBillsByMonthHT=Znesek računov po mesecih (brez DDV) -ShowSocialContribution=Prikaži socialni/fiskalni davek -ShowBill=Prikaži račun -ShowInvoice=Prikaži račun -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 +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=To pay on %s toPayOn=to pay on %s RetainedWarranty=Retained Warranty @@ -230,7 +226,6 @@ 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 AlreadyPaidNoCreditNotesNoDeposits=Already paid (without credit notes and down payments) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Generated from template invoice %s WarningInvoiceDateInFuture=Warning, the invoice date is higher than current date WarningInvoiceDateTooFarInFuture=Warning, the invoice date is too far from current date ViewAvailableGlobalDiscounts=View available discounts +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Status PaymentConditionShortRECEP=Due Upon Receipt @@ -509,7 +505,7 @@ ToMakePayment=Plačati ToMakePaymentBack=Vrniti plačilo ListOfYourUnpaidInvoices=Seznam neplačanih računov NoteListOfYourUnpaidInvoices=Opomba: Ta seznam vsebuje samo račune za partnerje, ki so povezani z referentom. -RevenueStamp=Žig prihodka +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party YouMustCreateStandardInvoiceFirstDesc=You have to create a standard invoice first and convert it to "template" to create a new template invoice @@ -575,3 +571,4 @@ AutoFillDateTo=Set end date for service line with next invoice date AutoFillDateToShort=Set end date MaxNumberOfGenerationReached=Max number of gen. reached BILL_DELETEInDolibarr=Invoice deleted +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/sl_SI/blockedlog.lang b/htdocs/langs/sl_SI/blockedlog.lang index 45943d31b76..84dc7eb9c06 100644 --- a/htdocs/langs/sl_SI/blockedlog.lang +++ b/htdocs/langs/sl_SI/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Unalterable logs ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) DownloadBlockChain=Download fingerprints -KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this re after it was recorded, or has erased the previous archived record (check that line with previous # exists). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. AddedByAuthority=Stored into remote authority diff --git a/htdocs/langs/sl_SI/cashdesk.lang b/htdocs/langs/sl_SI/cashdesk.lang index c837cdf5f5d..8238cbd78d0 100644 --- a/htdocs/langs/sl_SI/cashdesk.lang +++ b/htdocs/langs/sl_SI/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Dodaj ta proizvod RestartSelling=Vrni se na prodajo SellFinished=Sale complete PrintTicket=Natisni račun +SendTicket=Send ticket NoProductFound=Proizvod ne obstaja ProductFound=Najden proizvod NoArticle=Ni proizvoda @@ -48,6 +49,7 @@ Footer=Footer AmountAtEndOfPeriod=Amount at end of period (day, month or year) TheoricalAmount=Theorical amount RealAmount=Real amount +CashFence=Cash fence CashFenceDone=Cash fence done for the period NbOfInvoices=Število računov Paymentnumpad=Type of Pad to enter payment @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS needs product categories to work OrderNotes=Order Notes CashDeskBankAccountFor=Default account to use for payments in NoPaimementModesDefined=No paiment mode defined in TakePOS configuration -TicketVatGrouped=Group VAT by rate in tickets -AutoPrintTickets=Automatically print tickets +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? @@ -87,7 +90,19 @@ HeadBar=Head Bar SortProductField=Field for sorting products Browser=Iskalnik BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/sl_SI/companies.lang b/htdocs/langs/sl_SI/companies.lang index 4ae82256d89..912b2494f8e 100644 --- a/htdocs/langs/sl_SI/companies.lang +++ b/htdocs/langs/sl_SI/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted=Podjetje "%s" izbrisano iz baze. ListOfContacts=Seznam kontaktov ListOfContactsAddresses=Seznam kontaktov ListOfThirdParties=List of Third Parties -ShowCompany=Show Third Party ShowContact=Pokaži kontakt ContactsAllShort=Vsi (brez filtra) ContactType=Vrsta kontakta @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=First name of sales representative SaleRepresentativeLastname=Last name of sales representative ErrorThirdpartiesMerge=There was an error when deleting the third parties. Please check the log. Changes have been reverted. NewCustomerSupplierCodeProposed=Customer or Vendor code already used, a new code is suggested +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Payment Type - Customer PaymentTermsCustomer=Payment Terms - Customer diff --git a/htdocs/langs/sl_SI/compta.lang b/htdocs/langs/sl_SI/compta.lang index f10f0569bd5..4af0e6f6512 100644 --- a/htdocs/langs/sl_SI/compta.lang +++ b/htdocs/langs/sl_SI/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=See %sanalysis of payments%s for a calculation on act SeeReportInDueDebtMode=See %sanalysis of invoices%s for a calculation based on known recorded invoices even if they are not yet accounted in Ledger. SeeReportInBookkeepingMode=See %sBookeeping report%s for a calculation on Bookkeeping Ledger table RulesAmountWithTaxIncluded=- Prikazane vrednosti vključujejo vse davke -RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the validation date of invoices and VAT and on the due date for expenses. For salaries defined with Salary module, the value date of payment is used. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- It includes the real payments made on invoices, expenses, VAT and salaries.
    - It is based on the payment dates of the invoices, expenses, VAT and salaries. The donation date for donation. -RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the validation date of these invoices.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    RulesCATotalSaleJournal=It includes all credit lines from the Sale journal. RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Turnover invoiced by sale tax rate TurnoverCollectedbyVatrate=Turnover collected by sale tax rate PurchasebyVatrate=Purchase by sale tax rate LabelToShow=Kratek naziv +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/sl_SI/donations.lang b/htdocs/langs/sl_SI/donations.lang index 8e71e0b6a57..c118b281e75 100644 --- a/htdocs/langs/sl_SI/donations.lang +++ b/htdocs/langs/sl_SI/donations.lang @@ -7,7 +7,6 @@ AddDonation=Ustvari donacijo NewDonation=Nova donacija DeleteADonation=Zbriši donacijo ConfirmDeleteADonation=Are you sure you want to delete this donation? -ShowDonation=Prikaži donacijo PublicDonation=Javna donacija DonationsArea=Področje donacij DonationStatusPromiseNotValidated=Osnutek obljube @@ -17,6 +16,7 @@ DonationStatusPromiseNotValidatedShort=Osnutek DonationStatusPromiseValidatedShort=Potrjena DonationStatusPaidShort=Prejeta DonationTitle=Prejem donacije +DonationDate=Donation date DonationDatePayment=Datum plačila ValidPromess=Potrjena obljuba DonationReceipt=Prejem donacije diff --git a/htdocs/langs/sl_SI/errors.lang b/htdocs/langs/sl_SI/errors.lang index 276aa6fc50e..58c06bd93f3 100644 --- a/htdocs/langs/sl_SI/errors.lang +++ b/htdocs/langs/sl_SI/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=V strežnik ni bila prenešena celotna datoteka. ErrorNoTmpDir=Začasna mapa %s ne obstaja. ErrorUploadBlockedByAddon=PHP/Apache vtičnik je blokiral nalaganje. ErrorFileSizeTooLarge=Datoteka je prevelika. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Velikost predolgo int tip (%s številke največ) ErrorSizeTooLongForVarcharType=Velikost predolgo za tip za nize (%s znakov največ) ErrorNoValueForSelectType=Please fill value for select list @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # 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/sl_SI/install.lang b/htdocs/langs/sl_SI/install.lang index 32184850fbb..6c3e9d43d0d 100644 --- a/htdocs/langs/sl_SI/install.lang +++ b/htdocs/langs/sl_SI/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=This PHP supports Curl. PHPSupportCalendar=This PHP supports calendars extensions. PHPSupportUTF8=This PHP supports UTF8 functions. PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=This PHP supports %s functions. PHPMemoryOK=Maksimalni spomin za sejo vašega PHP je nastavljen na %s. To bi moralo zadoščati. 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. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=Your PHP installation does not support Curl. ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. 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. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. ErrorDirDoesNotExists=Mapa %s ne obstaja. ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=The application tried to self-upgrade, but the in 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. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/sl_SI/interventions.lang b/htdocs/langs/sl_SI/interventions.lang index 65cfb11131f..5690b096a51 100644 --- a/htdocs/langs/sl_SI/interventions.lang +++ b/htdocs/langs/sl_SI/interventions.lang @@ -41,9 +41,7 @@ InterventionsArea=Interventions area DraftFichinter=Draft interventions LastModifiedInterventions=Zadnje %s spremenjene intervencije FichinterToProcess=Interventions to process -##### Types de contacts ##### TypeContact_fichinter_external_CUSTOMER=Kontakt za nadaljnjo obravnavo pri kupcu -# Modele numérotation PrintProductsOnFichinter=Print also lines of type "product" (not only services) on intervention card PrintProductsOnFichinterDetails=intervencije na osnovi naročil UseServicesDurationOnFichinter=Use services duration for interventions generated from orders @@ -53,14 +51,16 @@ InterventionStatistics=Statistics of interventions NbOfinterventions=No. of intervention cards NumberOfInterventionsByMonth=No. of intervention cards by month (date of validation) AmountOfInteventionNotIncludedByDefault=Amount of intervention is not included by default into profit (in most cases, timesheets are used to count time spent). Add option PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT to 1 into home-setup-other to include them. -##### Exports ##### InterId=Intervention id InterRef=Intervention ref. InterDateCreation=Date creation intervention InterDuration=Duration intervention InterStatus=Status intervention InterNote=Note intervention +InterLine=Line of intervention InterLineId=Line id intervention InterLineDate=Line date intervention InterLineDuration=Line duration intervention InterLineDesc=Line description intervention +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/sl_SI/link.lang b/htdocs/langs/sl_SI/link.lang index 3a10359abad..0e71c159759 100644 --- a/htdocs/langs/sl_SI/link.lang +++ b/htdocs/langs/sl_SI/link.lang @@ -8,3 +8,4 @@ LinkRemoved=Povezava %s je bila odstranjena ErrorFailedToDeleteLink= Napaka pri odstranitvi povezave '%s'. ErrorFailedToUpdateLink= Napaka pri posodobitvi povezave '%s'. URLToLink=URL to link +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/sl_SI/mails.lang b/htdocs/langs/sl_SI/mails.lang index ba9d3b65e69..aa37bd15448 100644 --- a/htdocs/langs/sl_SI/mails.lang +++ b/htdocs/langs/sl_SI/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=No contact/address with a category found NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found OutGoingEmailSetup=Outgoing email setup InGoingEmailSetup=Incoming email setup -OutGoingEmailSetupForEmailing=Outgoing email setup (for mass emailing) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Default outgoing email setup Information=Informacija ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/sl_SI/main.lang b/htdocs/langs/sl_SI/main.lang index a8d2be54027..1f758fda89b 100644 --- a/htdocs/langs/sl_SI/main.lang +++ b/htdocs/langs/sl_SI/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Save and stay SaveAndNew=Save and new TestConnection=Test povezave ToClone=Kloniraj +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Choose data you want to clone: NoCloneOptionsSpecified=Ni definiranih podatkov za kloniranje. Of=od @@ -829,6 +830,8 @@ Gender=Spol Genderman=Moški Genderwoman=Ženska ViewList=Glej seznam +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Obvezno Hello=Pozdravljeni GoodBye=GoodBye @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Select your graph options to build a graph Measures=Measures XAxis=X-Axis YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/sl_SI/modulebuilder.lang b/htdocs/langs/sl_SI/modulebuilder.lang index 00a8c0f9d32..135ac1ae9ec 100644 --- a/htdocs/langs/sl_SI/modulebuilder.lang +++ b/htdocs/langs/sl_SI/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=List of dictionaries entries ListOfPermissionsDefined=List of defined permissions SeeExamples=See examples here EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) -VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update). Using a negative value means field is not shown by default on list but can be selected for viewing). It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty DisplayOnPdf=Display on PDF IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) diff --git a/htdocs/langs/sl_SI/multicurrency.lang b/htdocs/langs/sl_SI/multicurrency.lang new file mode 100644 index 00000000000..bfcbd11fb7c --- /dev/null +++ b/htdocs/langs/sl_SI/multicurrency.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Multi currency +ErrorAddRateFail=Error in added rate +ErrorAddCurrencyFail=Error in added currency +ErrorDeleteCurrencyFail=Error delete fail +multicurrency_syncronize_error=Synchronization error: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Use the date of the document to find the currency rate, instead of using the latest known rate +multicurrency_useOriginTx=When an object is created from another, keep the original rate from the source object (otherwise use the latest known rate) +CurrencyLayerAccount=CurrencyLayer API +CurrencyLayerAccount_help_to_synchronize=You must create an account on website %s to use this functionality.
    Get your API key.
    If you use a free account, you can't change the source currency (USD by default).
    If your main currency is not USD, the application will automatically recalculate it.

    You are limited to 1000 synchronizations per month. +multicurrency_appId=API key +multicurrency_appCurrencySource=Source currency +multicurrency_alternateCurrencySource=Alternate source currency +CurrenciesUsed=Currencies used +CurrenciesUsed_help_to_add=Add the different currencies and rates you need to use on your proposals, orders etc. +rate=rate +MulticurrencyReceived=Received, original currency +MulticurrencyRemainderToTake=Remaining amount, original currency +MulticurrencyPaymentAmount=Payment amount, original currency +AmountToOthercurrency=Amount To (in currency of receiving account) +CurrencyRateSyncSucceed=Currency rate synchronization done successfuly +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Use the currency of the document for online payments diff --git a/htdocs/langs/sl_SI/other.lang b/htdocs/langs/sl_SI/other.lang index 6c6f44e83e2..96dee868c4e 100644 --- a/htdocs/langs/sl_SI/other.lang +++ b/htdocs/langs/sl_SI/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Sales order validated Notify_ORDER_SENTBYMAIL=Sales order sent by mail Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=URL of page WEBSITE_TITLE=Naziv WEBSITE_DESCRIPTION=Opis WEBSITE_IMAGE=Image -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Keywords LinesToImport=Lines to import diff --git a/htdocs/langs/sl_SI/products.lang b/htdocs/langs/sl_SI/products.lang index 1f35bae2caf..876f92df779 100644 --- a/htdocs/langs/sl_SI/products.lang +++ b/htdocs/langs/sl_SI/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL MassBarcodeInit=Vzpostavitev masovne črtne kode MassBarcodeInitDesc=Na tej strani lahko vzpostavite črtno kodo za objekte, ki črtne kode nimajo določene. Pred tem preverite, da je zaključena nastavitev modula za črtne kode. ProductAccountancyBuyCode=Accounting code (purchase) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Accounting code (sale) ProductAccountancySellIntraCode=Accounting code (sale intra-Community) ProductAccountancySellExportCode=Accounting code (sale export) @@ -165,7 +167,7 @@ SuppliersPrices=Vendor prices SuppliersPricesOfProductsOrServices=Vendor prices (of products or services) CustomCode=Customs / Commodity / HS code CountryOrigin=Država porekla -Nature=Nature of produt (material/finished) +Nature=Nature of product (material/finished) ShortLabel=Kratek naziv Unit=Enota p=e. diff --git a/htdocs/langs/sl_SI/projects.lang b/htdocs/langs/sl_SI/projects.lang index 2234b08a74c..2ab9a1552ea 100644 --- a/htdocs/langs/sl_SI/projects.lang +++ b/htdocs/langs/sl_SI/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=which I'm linked to project Time=Čas ListOfTasks=List of tasks GoToListOfTimeConsumed=Go to list of time consumed -GoToListOfTasks=Show as list -GoToGanttView=show as Gantt GanttView=Gantt View ListProposalsAssociatedProject=List of the commercial proposals related to the project ListOrdersAssociatedProject=List of sales orders related to the project @@ -188,7 +186,7 @@ PlannedWorkload=Planirana delovna obremenitev PlannedWorkloadShort=Workload ProjectReferers=Related items ProjectMustBeValidatedFirst=Projekt mora biti najprej potrjen -FirstAddRessourceToAllocateTime=Assign a user resource to task to allocate time +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=Input per day InputPerWeek=Input per week InputPerMonth=Input per month @@ -240,6 +238,7 @@ LatestModifiedProjects=Latest %s modified projects OtherFilteredTasks=Other filtered tasks NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=Allow user comments on tasks AllowCommentOnProject=Allow user comments on projects @@ -256,7 +255,7 @@ ServiceToUseOnLines=Service to use on lines InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. ProjectFollowOpportunity=Follow opportunity -ProjectFollowTasks=Follow tasks +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Usage: Opportunity UsageTasks=Usage: Tasks @@ -265,3 +264,4 @@ InvoiceToUse=Draft invoice to use NewInvoice=Nov račun OneLinePerTask=One line per task OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/sl_SI/receiptprinter.lang b/htdocs/langs/sl_SI/receiptprinter.lang index 0f6086b22fb..406600eff5d 100644 --- a/htdocs/langs/sl_SI/receiptprinter.lang +++ b/htdocs/langs/sl_SI/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Dummy Printer CONNECTOR_NETWORK_PRINT=Network Printer CONNECTOR_FILE_PRINT=Local Printer CONNECTOR_WINDOWS_PRINT=Local Windows Printer +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Fake Printer for test, does nothing CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Default Profile PROFILE_SIMPLE=Simple Profile PROFILE_EPOSTEP=Epos Tep Profile @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Invoice month in letters DOL_VALUE_MONTH=Invoice month DOL_VALUE_DAY=Invoice day DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Referenca računa +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=Kapital +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/sl_SI/stripe.lang b/htdocs/langs/sl_SI/stripe.lang index 3793e15c016..71e190cf1fa 100644 --- a/htdocs/langs/sl_SI/stripe.lang +++ b/htdocs/langs/sl_SI/stripe.lang @@ -32,6 +32,7 @@ VendorName=Ime prodajalca CSSUrlForPaymentForm=url CSS vzorca obrazca plačila NewStripePaymentReceived=New Stripe payment received NewStripePaymentFailed=New Stripe payment tried but failed +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Secret test key STRIPE_TEST_PUBLISHABLE_KEY=Publishable test key STRIPE_TEST_WEBHOOK_KEY=Webhook test key @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mo 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... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authenticatin rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/sl_SI/users.lang b/htdocs/langs/sl_SI/users.lang index e9c0d301d11..2851c76fc90 100644 --- a/htdocs/langs/sl_SI/users.lang +++ b/htdocs/langs/sl_SI/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Users and their properties DomainUser=Uporabnik domene %s Reactivate=Ponovno aktiviraj CreateInternalUserDesc=This form allows you to create an internal user in your company/organization. To create an external user (customer, vendor etc. ..), use the button 'Create Dolibarr User' from that third-party's contact card. -InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other.

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=Dovoljenje dodeljeno zaradi podedovanja od druge uporabniške skupine. Inherited=Podedovan UserWillBeInternalUser=Kreiran uporabnik bo interni uporabnik (ker ni povezan z določenim partnerjem) @@ -110,3 +110,8 @@ UserLogged=User logged DateEmployment=Employment Start Date DateEmploymentEnd=Employment End Date CantDisableYourself=You can't disable your own user record +ForceUserExpenseValidator=Force expense report validator +ForceUserHolidayValidator=Force leave request validator +ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/sl_SI/website.lang b/htdocs/langs/sl_SI/website.lang index 4fda52e2721..9eb86dfd086 100644 --- a/htdocs/langs/sl_SI/website.lang +++ b/htdocs/langs/sl_SI/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=View page in new tab SetAsHomePage=Set as Home page RealURL=Real URL ViewWebsiteInProduction=View web site using home URLs -SetHereVirtualHost=Use with Apache/NGinx/...
    If you can create, on your web server (Apache, Nginx, ...), a dedicated Virtual Host with PHP enabled and a Root directory on
    %s
    then set the name of the virtual host you have created in the properties of web site, so the preview can be done also using this dedicated web server access instead of the internal Dolibarr server. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS=Use with PHP embedded server
    On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running
    php -S 0.0.0.0:8080 -t %s YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org CheckVirtualHostPerms=Check also that virtual host has permission %s on files into
    %s @@ -56,7 +57,7 @@ NoPageYet=No pages yet YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template SyntaxHelp=Help on specific syntax tips YouCanEditHtmlSourceckeditor=You can edit HTML source code using the "Source" button in editor. -YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Clone page/container CloneSite=Clone site SiteAdded=Website added @@ -76,7 +77,7 @@ BlogPost=Blog post WebsiteAccount=Website account WebsiteAccounts=Website accounts AddWebsiteAccount=Create web site account -BackToListOfThirdParty=Back to list for Third Party +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Disable website first MyContainerTitle=My web site title AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Sorry, this website is currently off line. Please 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 -OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that edits of HTML source will be possible when page content has been initialized by grabbing it from an external page ("Online" editor will NOT be available) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Only edition of HTML source is possible when content was grabbed from an external site GrabImagesInto=Grab also images found into css and page. ImagesShouldBeSavedInto=Images should be saved into directory @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 ch MainLanguage=Main language OtherLanguages=Other languages UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/sl_SI/zapier.lang b/htdocs/langs/sl_SI/zapier.lang new file mode 100644 index 00000000000..6d6eda71313 --- /dev/null +++ b/htdocs/langs/sl_SI/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr module + +# +# Admin page +# +ZapierForDolibarrSetup = Setup of Zapier for Dolibarr diff --git a/htdocs/langs/sq_AL/accountancy.lang b/htdocs/langs/sq_AL/accountancy.lang index 13a9459f015..9179719767b 100644 --- a/htdocs/langs/sq_AL/accountancy.lang +++ b/htdocs/langs/sq_AL/accountancy.lang @@ -121,6 +121,7 @@ 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 +TotalForAccount=Total for accounting account Ventilate=Lidh @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Accounting account to register donations ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (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 products sold in EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported 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_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (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_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unkno ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error PaymentsNotLinkedToProduct=Payment not linked to any product / service +OpeningBalance=Opening balance ShowOpeningBalance=Show opening balance HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Group of account PcgtypeDesc=Group 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. +Reconcilable=Reconcilable + TotalVente=Total turnover before tax TotalMarge=Total sales margin @@ -307,11 +317,13 @@ 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Chart of accounts Id ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC OptionModeProductSellExport=Mode sales exported in other countries OptionModeProductBuy=Mode purchases +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries 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. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=Remove accounting code from lines that not exists into charts of account CleanHistory=Reset all bindings for selected year PredefinedGroups=Predefined groups @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Account removed from group SaleLocal=Local sale SaleExport=Export sale SaleEEC=Sale in EEC +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=Range of accounting account diff --git a/htdocs/langs/sq_AL/admin.lang b/htdocs/langs/sq_AL/admin.lang index e83fede6fe0..f9e3a441b08 100644 --- a/htdocs/langs/sq_AL/admin.lang +++ b/htdocs/langs/sq_AL/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Web server user/group NoSessionFound=Your PHP configuration seems to not allow listing of active sessions. The directory used to save sessions (%s) may be protected (for example by OS permissions or by PHP directive open_basedir). DBStoringCharset=Database charset to store data DBSortingCharset=Database charset to sort data +HostCharset=Host charset ClientCharset=Client charset ClientSortingCharset=Client collation WarningModuleNotActive=Module %s must be enabled @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the NoMaxSizeByPHPLimit=Note: No limit is set in your PHP configuration MaxSizeForUploadedFiles=Maximum size for uploaded files (0 to disallow any upload) UseCaptchaCode=Use graphical code (CAPTCHA) on login page -AntiVirusCommand= Full path to antivirus command -AntiVirusCommandExample= Example for ClamWin: c:\\Progra~1\\ClamWin\\bin\\clamscan.exe
    Example for ClamAv: /usr/bin/clamscan +AntiVirusCommand=Full path to antivirus command +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= More parameters on command line -AntiVirusParamExample= Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=Accounting module setup UserSetup=User management setup MultiCurrencySetup=Multi-currency setup @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Feature disabled in demo FeatureAvailableOnlyOnStable=Feature only available on official stable versions BoxesDesc=Widgets are components showing some information that you can add to personalize some pages. You can choose between showing the widget or not by selecting target page and clicking 'Activate', or by clicking the trashcan to disable it. OnlyActiveElementsAreShown=Only elements from enabled modules are shown. -ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button (at end of module line) to enable/disable a module/application. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. ModulesMarketPlaceDesc=You can find more modules to download on external websites on the Internet... ModulesDeployDesc=If permissions on your file system allow it, you can use this tool to deploy an external module. The module will then be visible on the tab %s. ModulesMarketPlaces=Find external app/modules @@ -212,6 +213,7 @@ CompatibleUpTo=Compatible with version %s NotCompatible=This module does not seem compatible with your Dolibarr %s (Min %s - Max %s). CompatibleAfterUpdate=This module requires an update to your Dolibarr %s (Min %s - Max %s). SeeInMarkerPlace=See in Market place +SeeSetupOfModule=See setup of module %s Updated=Updated Nouveauté=Novelty AchatTelechargement=Bli / Shkarko @@ -221,6 +223,7 @@ DoliPartnersDesc=List of companies providing custom-developed modules or feature WebSiteDesc=External websites for more add-on (non-core) modules... DevelopYourModuleDesc=Some solutions to develop your own module... URL=URL +RelativeURL=Relative URL BoxesAvailable=Widgets available BoxesActivated=Widgets activated ActivateOn=Activate on @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Checkboxes ExtrafieldCheckBoxFromList=Checkboxes from table ExtrafieldLink=Link to an object ComputedFormula=Computed field -ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Store computed field ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! ExtrafieldParamHelpPassword=Leaving this field blank means this value will be stored without encryption (field must be only hidden with star on screen).
    Set 'auto' to use the default encryption rule to save password into database (then value read will be the hash only, no way to retrieve original value) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Keep empty to use default value DefaultLink=Default link SetAsDefault=Set as default ValueOverwrittenByUserSetup=Warning, this value may be overwritten by user specific setup (each user can set his own clicktodial url) -ExternalModule=External module - Installed into directory %s +ExternalModule=External module +InstalledInto=Installed into directory %s BarcodeInitForthird-parties=Mass barcode init for third-parties BarcodeInitForProductsOrServices=Mass barcode init or reset for products or services CurrentlyNWithoutBarCode=Currently, you have %s record on %s %s without barcode defined. @@ -947,7 +951,7 @@ DictionaryCanton=States/Provinces DictionaryRegion=Regions DictionaryCountry=Countries DictionaryCurrency=Currencies -DictionaryCivility=Title of civility +DictionaryCivility=Honorific titles DictionaryActions=Types of agenda events DictionarySocialContributions=Types of social or fiscal taxes DictionaryVAT=VAT Rates or Sales Tax Rates @@ -988,6 +992,7 @@ VATIsNotUsedDesc=By default the proposed Sales tax is 0 which can be used for ca VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=Rate LocalTax1IsNotUsed=Do not use second tax LocalTax1IsUsedDesc=Use a second type of tax (other than first one) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices LocalTax2IsNotUsedDescES=By default the proposed IRPF is 0. End of rule. LocalTax2IsUsedExampleES=In Spain, freelancers and independent professionals who provide services and companies who have chosen the tax system of modules. LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=Reports on local taxes CalcLocaltax1=Sales - Purchases CalcLocaltax1Desc=Local Taxes reports are calculated with the difference between localtaxes sales and localtaxes purchases @@ -1018,6 +1026,7 @@ CalcLocaltax2=Purchases CalcLocaltax2Desc=Local Taxes reports are the total of localtaxes purchases CalcLocaltax3=Sales CalcLocaltax3Desc=Local Taxes reports are the total of localtaxes sales +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=Label used by default if no translation can be found for code LabelOnDocuments=Label on documents LabelOrTranslationKey=Label or translation key @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Expense report to approve Delays_MAIN_DELAY_HOLIDAYS=Leave requests 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. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. SetupDescription5=Other Setup menu entries manage optional parameters. LogEvents=Security audit events Audit=Audit @@ -1128,7 +1137,7 @@ LogEventDesc=Enable logging for specific security events. Administrators the log AreaForAdminOnly=Setup parameters can be set by administrator users only. SystemInfoDesc=System information is miscellaneous technical information you get in read only mode and visible for administrators only. SystemAreaForAdminOnly=This area is available to administrator users only. Dolibarr user permissions cannot change this restriction. -CompanyFundationDesc=Edit the information of the company/entity. Click on "%s" button at the bottom of the page. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. AccountantFileNumber=Accountant code DisplayDesc=Parameters affecting the look and behaviour of Dolibarr can be modified here. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Rules to generate and validate passwords DisableForgetPasswordLinkOnLogonPage=Do not show the "Password Forgotten" link on the Login page UsersSetup=Users module setup UserMailRequired=Email required to create a new user +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### HRMSetup=HRM module setup ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Invoice documents models BillsPDFModulesAccordindToInvoiceType=Invoice documents models according to invoice type PaymentsPDFModules=Payment documents models ForceInvoiceDate=Force invoice date to validation date -SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined for invoice +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice SuggestPaymentByRIBOnAccount=Suggest payment by withdrawal on account SuggestPaymentByChequeToAddress=Suggest payment by check to FreeLegalTextOnInvoices=Free text on invoices @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Vendor payments setup PropalSetup=Commercial proposals module setup ProposalsNumberingModules=Commercial proposal numbering models ProposalsPDFModules=Commercial proposal documents models -SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined for proposal +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal FreeLegalTextOnProposal=Free text on commercial proposals WatermarkOnDraftProposal=Watermark on draft commercial proposals (none if empty) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal @@ -1322,6 +1334,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 ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=Sales Orders management setup OrdersNumberingModules=Orders numbering models OrdersModelModule=Order documents models @@ -1720,7 +1733,7 @@ MultiCompanySetup=Multi-company module setup ##### Suppliers ##### SuppliersSetup=Vendor module setup SuppliersCommandModel=Complete template of Purchase Order -SuppliersCommandModelMuscadet=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) SuppliersInvoiceModel=Complete template of Vendor Invoice SuppliersInvoiceNumberingModel=Vendor invoices numbering models IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Hide images in Top menu LeftMenuBackgroundColor=Background color for Left menu BackgroundTableTitleColor=Background color for Table title line BackgroundTableTitleTextColor=Text color for Table title line +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Background color for odd table lines BackgroundTableLineEvenColor=Background color for even table lines MinimumNoticePeriod=Minimum notice period (Your leave request must be done before this delay) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Dolibarr Reference not found in Message ID FormatZip=Zip MainMenuCode=Menu entry code (mainmenu) ECMAutoTree=Show automatic ECM tree -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. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Opening hours OpeningHoursDesc=Enter here the regular opening hours of your company. ResourceSetup=Configuration of Resource module @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramatical ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export +ImportSetup=Setup of module Import InstanceUniqueID=Unique ID of the instance SmallerThan=Smaller than LargerThan=Larger than @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled EmailTemplate=Template for email EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/sq_AL/bills.lang b/htdocs/langs/sq_AL/bills.lang index ab5c2a41c39..920879641ca 100644 --- a/htdocs/langs/sq_AL/bills.lang +++ b/htdocs/langs/sq_AL/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Vendors invoices SupplierBill=Vendor invoice SupplierBills=suppliers invoices Payment=Payment -PaymentBack=Payment back -CustomerInvoicePaymentBack=Payment back +PaymentBack=Refund +CustomerInvoicePaymentBack=Refund Payments=Payments PaymentsBack=Refunds paymentInInvoiceCurrency=in invoices currency PaidBack=Paid back DeletePayment=Delete payment ConfirmDeletePayment=Are you sure you want to delete this payment? -ConfirmConvertToReduc=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. -ConfirmConvertToReducSupplier=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. SupplierPayments=Vendor payments ReceivedPayments=Received payments @@ -209,17 +209,13 @@ NumberOfBillsByMonth=No. of invoices per month AmountOfBills=Amount of invoices AmountOfBillsHT=Amount of invoices (net of tax) AmountOfBillsByMonthHT=Amount of invoices by month (net of tax) -ShowSocialContribution=Show social/fiscal tax -ShowBill=Show invoice -ShowInvoice=Show invoice -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 +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=To pay on %s toPayOn=to pay on %s RetainedWarranty=Retained Warranty @@ -230,7 +226,6 @@ 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 AlreadyPaidNoCreditNotesNoDeposits=Already paid (without credit notes and down payments) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Generated from template invoice %s WarningInvoiceDateInFuture=Warning, the invoice date is higher than current date WarningInvoiceDateTooFarInFuture=Warning, the invoice date is too far from current date ViewAvailableGlobalDiscounts=View available discounts +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Statusi PaymentConditionShortRECEP=Due Upon Receipt @@ -509,7 +505,7 @@ ToMakePayment=Pay ToMakePaymentBack=Pay back ListOfYourUnpaidInvoices=Lista e faturave të papaguara NoteListOfYourUnpaidInvoices=Note: This list contains only invoices for third parties you are linked to as a sale representative. -RevenueStamp=Revenue stamp +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party YouMustCreateStandardInvoiceFirstDesc=You have to create a standard invoice first and convert it to "template" to create a new template invoice @@ -575,3 +571,4 @@ AutoFillDateTo=Set end date for service line with next invoice date AutoFillDateToShort=Set end date MaxNumberOfGenerationReached=Max number of gen. reached BILL_DELETEInDolibarr=Invoice deleted +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/sq_AL/blockedlog.lang b/htdocs/langs/sq_AL/blockedlog.lang index cff8f7d657b..5afae6e9e53 100644 --- a/htdocs/langs/sq_AL/blockedlog.lang +++ b/htdocs/langs/sq_AL/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Unalterable logs ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) DownloadBlockChain=Download fingerprints -KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this re after it was recorded, or has erased the previous archived record (check that line with previous # exists). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. AddedByAuthority=Stored into remote authority diff --git a/htdocs/langs/sq_AL/cashdesk.lang b/htdocs/langs/sq_AL/cashdesk.lang index 24afe7ea7ad..71618eff28b 100644 --- a/htdocs/langs/sq_AL/cashdesk.lang +++ b/htdocs/langs/sq_AL/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Add this article RestartSelling=Go back on sell SellFinished=Sale complete PrintTicket=Print ticket +SendTicket=Send ticket NoProductFound=No article found ProductFound=product found NoArticle=No article @@ -48,6 +49,7 @@ Footer=Footer AmountAtEndOfPeriod=Amount at end of period (day, month or year) TheoricalAmount=Theorical amount RealAmount=Real amount +CashFence=Cash fence CashFenceDone=Cash fence done for the period NbOfInvoices=Nb of invoices Paymentnumpad=Type of Pad to enter payment @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS needs product categories to work OrderNotes=Order Notes CashDeskBankAccountFor=Default account to use for payments in NoPaimementModesDefined=No paiment mode defined in TakePOS configuration -TicketVatGrouped=Group VAT by rate in tickets -AutoPrintTickets=Automatically print tickets +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? @@ -87,7 +90,19 @@ HeadBar=Head Bar SortProductField=Field for sorting products Browser=Browser BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/sq_AL/companies.lang b/htdocs/langs/sq_AL/companies.lang index 2aac2fc23b4..514473dbd97 100644 --- a/htdocs/langs/sq_AL/companies.lang +++ b/htdocs/langs/sq_AL/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted=Company "%s" deleted from database. ListOfContacts=List of contacts/addresses ListOfContactsAddresses=List of contacts/addresses ListOfThirdParties=List of Third Parties -ShowCompany=Show Third Party ShowContact=Show contact ContactsAllShort=All (No filter) ContactType=Contact type @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=First name of sales representative SaleRepresentativeLastname=Last name of sales representative ErrorThirdpartiesMerge=There was an error when deleting the third parties. Please check the log. Changes have been reverted. NewCustomerSupplierCodeProposed=Customer or Vendor code already used, a new code is suggested +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Payment Type - Customer PaymentTermsCustomer=Payment Terms - Customer diff --git a/htdocs/langs/sq_AL/compta.lang b/htdocs/langs/sq_AL/compta.lang index 7bea59962f2..6d530dd3923 100644 --- a/htdocs/langs/sq_AL/compta.lang +++ b/htdocs/langs/sq_AL/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=See %sanalysis of payments%s for a calculation on act SeeReportInDueDebtMode=See %sanalysis of invoices%s for a calculation based on known recorded invoices even if they are not yet accounted in Ledger. SeeReportInBookkeepingMode=See %sBookeeping report%s for a calculation on Bookkeeping Ledger table RulesAmountWithTaxIncluded=- Amounts shown are with all taxes included -RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the validation date of invoices and VAT and on the due date for expenses. For salaries defined with Salary module, the value date of payment is used. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- It includes the real payments made on invoices, expenses, VAT and salaries.
    - It is based on the payment dates of the invoices, expenses, VAT and salaries. The donation date for donation. -RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the validation date of these invoices.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    RulesCATotalSaleJournal=It includes all credit lines from the Sale journal. RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Turnover invoiced by sale tax rate TurnoverCollectedbyVatrate=Turnover collected by sale tax rate PurchasebyVatrate=Purchase by sale tax rate LabelToShow=Short label +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/sq_AL/donations.lang b/htdocs/langs/sq_AL/donations.lang index 74887916bc0..741d37b1ee9 100644 --- a/htdocs/langs/sq_AL/donations.lang +++ b/htdocs/langs/sq_AL/donations.lang @@ -7,7 +7,6 @@ AddDonation=Krijo nje dhurim NewDonation=Dhurim i ri DeleteADonation=Delete a donation ConfirmDeleteADonation=Are you sure you want to delete this donation? -ShowDonation=Shfaq dhurim PublicDonation=Dhurim publik DonationsArea=Donations area DonationStatusPromiseNotValidated=Draft promise @@ -17,6 +16,7 @@ DonationStatusPromiseNotValidatedShort=Draft DonationStatusPromiseValidatedShort=Validated DonationStatusPaidShort=Received DonationTitle=Donation receipt +DonationDate=Donation date DonationDatePayment=Payment date ValidPromess=Validate promise DonationReceipt=Donation receipt diff --git a/htdocs/langs/sq_AL/errors.lang b/htdocs/langs/sq_AL/errors.lang index 3ffc686e62f..7c67aeca8b5 100644 --- a/htdocs/langs/sq_AL/errors.lang +++ b/htdocs/langs/sq_AL/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=File not received completely by server. ErrorNoTmpDir=Temporary directy %s does not exists. ErrorUploadBlockedByAddon=Upload blocked by a PHP/Apache plugin. ErrorFileSizeTooLarge=File size is too large. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Size too long for int type (%s digits maximum) ErrorSizeTooLongForVarcharType=Size too long for string type (%s chars maximum) ErrorNoValueForSelectType=Please fill value for select list @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # 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/sq_AL/install.lang b/htdocs/langs/sq_AL/install.lang index ca3ac621bd7..686f2884cca 100644 --- a/htdocs/langs/sq_AL/install.lang +++ b/htdocs/langs/sq_AL/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=This PHP supports Curl. PHPSupportCalendar=This PHP supports calendars extensions. PHPSupportUTF8=This PHP supports UTF8 functions. PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=This PHP supports %s functions. PHPMemoryOK=Your PHP max session memory is set to %s. This should be enough. 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. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=Your PHP installation does not support Curl. ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. 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. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. ErrorDirDoesNotExists=Directory %s does not exist. ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=The application tried to self-upgrade, but the in 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. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/sq_AL/interventions.lang b/htdocs/langs/sq_AL/interventions.lang index e7667ef6946..e5936f8246e 100644 --- a/htdocs/langs/sq_AL/interventions.lang +++ b/htdocs/langs/sq_AL/interventions.lang @@ -41,9 +41,7 @@ InterventionsArea=Interventions area DraftFichinter=Draft interventions LastModifiedInterventions=Latest %s modified interventions FichinterToProcess=Interventions to process -##### Types de contacts ##### TypeContact_fichinter_external_CUSTOMER=Following-up customer contact -# Modele numérotation PrintProductsOnFichinter=Print also lines of type "product" (not only services) on intervention card PrintProductsOnFichinterDetails=interventions generated from orders UseServicesDurationOnFichinter=Use services duration for interventions generated from orders @@ -53,14 +51,16 @@ InterventionStatistics=Statistics of interventions NbOfinterventions=No. of intervention cards NumberOfInterventionsByMonth=No. of intervention cards by month (date of validation) AmountOfInteventionNotIncludedByDefault=Amount of intervention is not included by default into profit (in most cases, timesheets are used to count time spent). Add option PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT to 1 into home-setup-other to include them. -##### Exports ##### InterId=Intervention id InterRef=Intervention ref. InterDateCreation=Date creation intervention InterDuration=Duration intervention InterStatus=Status intervention InterNote=Note intervention +InterLine=Line of intervention InterLineId=Line id intervention InterLineDate=Line date intervention InterLineDuration=Line duration intervention InterLineDesc=Line description intervention +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/sq_AL/link.lang b/htdocs/langs/sq_AL/link.lang index fdcf07aeff4..1ffcd41a18b 100644 --- a/htdocs/langs/sq_AL/link.lang +++ b/htdocs/langs/sq_AL/link.lang @@ -8,3 +8,4 @@ LinkRemoved=The link %s has been removed ErrorFailedToDeleteLink= Failed to remove link '%s' ErrorFailedToUpdateLink= Failed to update link '%s' URLToLink=URL to link +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/sq_AL/mails.lang b/htdocs/langs/sq_AL/mails.lang index 5edad1a7673..7d0a2626fb9 100644 --- a/htdocs/langs/sq_AL/mails.lang +++ b/htdocs/langs/sq_AL/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=No contact/address with a category found NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found OutGoingEmailSetup=Outgoing email setup InGoingEmailSetup=Incoming email setup -OutGoingEmailSetupForEmailing=Outgoing email setup (for mass emailing) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Default outgoing email setup Information=Information ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/sq_AL/main.lang b/htdocs/langs/sq_AL/main.lang index 824703a6761..998a733182b 100644 --- a/htdocs/langs/sq_AL/main.lang +++ b/htdocs/langs/sq_AL/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Save and stay SaveAndNew=Save and new TestConnection=Test connection ToClone=Clone +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Choose data you want to clone: NoCloneOptionsSpecified=No data to clone defined. Of=of @@ -829,6 +830,8 @@ Gender=Gjinia Genderman=Man Genderwoman=Woman ViewList=List view +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Mandatory Hello=Hello GoodBye=GoodBye @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Select your graph options to build a graph Measures=Measures XAxis=X-Axis YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/sq_AL/modulebuilder.lang b/htdocs/langs/sq_AL/modulebuilder.lang index 00a8c0f9d32..135ac1ae9ec 100644 --- a/htdocs/langs/sq_AL/modulebuilder.lang +++ b/htdocs/langs/sq_AL/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=List of dictionaries entries ListOfPermissionsDefined=List of defined permissions SeeExamples=See examples here EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) -VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update). Using a negative value means field is not shown by default on list but can be selected for viewing). It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty DisplayOnPdf=Display on PDF IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) diff --git a/htdocs/langs/sq_AL/multicurrency.lang b/htdocs/langs/sq_AL/multicurrency.lang new file mode 100644 index 00000000000..bfcbd11fb7c --- /dev/null +++ b/htdocs/langs/sq_AL/multicurrency.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Multi currency +ErrorAddRateFail=Error in added rate +ErrorAddCurrencyFail=Error in added currency +ErrorDeleteCurrencyFail=Error delete fail +multicurrency_syncronize_error=Synchronization error: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Use the date of the document to find the currency rate, instead of using the latest known rate +multicurrency_useOriginTx=When an object is created from another, keep the original rate from the source object (otherwise use the latest known rate) +CurrencyLayerAccount=CurrencyLayer API +CurrencyLayerAccount_help_to_synchronize=You must create an account on website %s to use this functionality.
    Get your API key.
    If you use a free account, you can't change the source currency (USD by default).
    If your main currency is not USD, the application will automatically recalculate it.

    You are limited to 1000 synchronizations per month. +multicurrency_appId=API key +multicurrency_appCurrencySource=Source currency +multicurrency_alternateCurrencySource=Alternate source currency +CurrenciesUsed=Currencies used +CurrenciesUsed_help_to_add=Add the different currencies and rates you need to use on your proposals, orders etc. +rate=rate +MulticurrencyReceived=Received, original currency +MulticurrencyRemainderToTake=Remaining amount, original currency +MulticurrencyPaymentAmount=Payment amount, original currency +AmountToOthercurrency=Amount To (in currency of receiving account) +CurrencyRateSyncSucceed=Currency rate synchronization done successfuly +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Use the currency of the document for online payments diff --git a/htdocs/langs/sq_AL/other.lang b/htdocs/langs/sq_AL/other.lang index 78d91f32b94..ea794014393 100644 --- a/htdocs/langs/sq_AL/other.lang +++ b/htdocs/langs/sq_AL/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Sales order validated Notify_ORDER_SENTBYMAIL=Sales order sent by mail Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=URL of page WEBSITE_TITLE=Title WEBSITE_DESCRIPTION=Përshkrimi WEBSITE_IMAGE=Image -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Keywords LinesToImport=Lines to import diff --git a/htdocs/langs/sq_AL/products.lang b/htdocs/langs/sq_AL/products.lang index 6f49421dacc..f3aea3ae0f5 100644 --- a/htdocs/langs/sq_AL/products.lang +++ b/htdocs/langs/sq_AL/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL MassBarcodeInit=Mass barcode init MassBarcodeInitDesc=This page can be used to initialize a barcode on objects that does not have barcode defined. Check before that setup of module barcode is complete. ProductAccountancyBuyCode=Accounting code (purchase) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Accounting code (sale) ProductAccountancySellIntraCode=Accounting code (sale intra-Community) ProductAccountancySellExportCode=Accounting code (sale export) @@ -165,7 +167,7 @@ SuppliersPrices=Vendor prices SuppliersPricesOfProductsOrServices=Vendor prices (of products or services) CustomCode=Customs / Commodity / HS code CountryOrigin=Origin country -Nature=Nature of produt (material/finished) +Nature=Nature of product (material/finished) ShortLabel=Short label Unit=Unit p=u. diff --git a/htdocs/langs/sq_AL/projects.lang b/htdocs/langs/sq_AL/projects.lang index e51bf91ad44..54a20abd8c0 100644 --- a/htdocs/langs/sq_AL/projects.lang +++ b/htdocs/langs/sq_AL/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=which I'm linked to project Time=Time ListOfTasks=List of tasks GoToListOfTimeConsumed=Go to list of time consumed -GoToListOfTasks=Show as list -GoToGanttView=show as Gantt GanttView=Gantt View ListProposalsAssociatedProject=List of the commercial proposals related to the project ListOrdersAssociatedProject=List of sales orders related to the project @@ -188,7 +186,7 @@ PlannedWorkload=Planned workload PlannedWorkloadShort=Workload ProjectReferers=Related items ProjectMustBeValidatedFirst=Project must be validated first -FirstAddRessourceToAllocateTime=Assign a user resource to task to allocate time +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=Input per day InputPerWeek=Input per week InputPerMonth=Input per month @@ -240,6 +238,7 @@ LatestModifiedProjects=Latest %s modified projects OtherFilteredTasks=Other filtered tasks NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=Allow user comments on tasks AllowCommentOnProject=Allow user comments on projects @@ -256,7 +255,7 @@ ServiceToUseOnLines=Service to use on lines InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. ProjectFollowOpportunity=Follow opportunity -ProjectFollowTasks=Follow tasks +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Usage: Opportunity UsageTasks=Usage: Tasks @@ -265,3 +264,4 @@ InvoiceToUse=Draft invoice to use NewInvoice=New invoice OneLinePerTask=One line per task OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/sq_AL/receiptprinter.lang b/htdocs/langs/sq_AL/receiptprinter.lang index c615b6619d6..0e7cb8a8d7a 100644 --- a/htdocs/langs/sq_AL/receiptprinter.lang +++ b/htdocs/langs/sq_AL/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Dummy Printer CONNECTOR_NETWORK_PRINT=Printer rrjeti CONNECTOR_FILE_PRINT=Printer lokal CONNECTOR_WINDOWS_PRINT=Printer lokal Windows +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Pritner falso pёr test, s'bёn asgjё CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Default Profile PROFILE_SIMPLE=Simple Profile PROFILE_EPOSTEP=Epos Tep Profile @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Invoice month in letters DOL_VALUE_MONTH=Invoice month DOL_VALUE_DAY=Invoice day DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Invoice ref +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=Capital +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/sq_AL/stripe.lang b/htdocs/langs/sq_AL/stripe.lang index 74d3e35e22c..a40c8e67339 100644 --- a/htdocs/langs/sq_AL/stripe.lang +++ b/htdocs/langs/sq_AL/stripe.lang @@ -32,6 +32,7 @@ VendorName=Name of vendor CSSUrlForPaymentForm=CSS style sheet url for payment form NewStripePaymentReceived=New Stripe payment received NewStripePaymentFailed=New Stripe payment tried but failed +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Secret test key STRIPE_TEST_PUBLISHABLE_KEY=Publishable test key STRIPE_TEST_WEBHOOK_KEY=Webhook test key @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mo 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... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authenticatin rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/sq_AL/users.lang b/htdocs/langs/sq_AL/users.lang index 84bc13176ae..de230588802 100644 --- a/htdocs/langs/sq_AL/users.lang +++ b/htdocs/langs/sq_AL/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Users and their properties DomainUser=Domain user %s Reactivate=Reactivate CreateInternalUserDesc=This form allows you to create an internal user in your company/organization. To create an external user (customer, vendor etc. ..), use the button 'Create Dolibarr User' from that third-party's contact card. -InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other.

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=Permission granted because inherited from one of a user's group. Inherited=Inherited UserWillBeInternalUser=Created user will be an internal user (because not linked to a particular third party) @@ -110,3 +110,8 @@ UserLogged=User logged DateEmployment=Employment Start Date DateEmploymentEnd=Employment End Date CantDisableYourself=You can't disable your own user record +ForceUserExpenseValidator=Force expense report validator +ForceUserHolidayValidator=Force leave request validator +ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/sq_AL/website.lang b/htdocs/langs/sq_AL/website.lang index 9e5c4ba3ff8..bce2a09fb03 100644 --- a/htdocs/langs/sq_AL/website.lang +++ b/htdocs/langs/sq_AL/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=View page in new tab SetAsHomePage=Set as Home page RealURL=Real URL ViewWebsiteInProduction=View web site using home URLs -SetHereVirtualHost=Use with Apache/NGinx/...
    If you can create, on your web server (Apache, Nginx, ...), a dedicated Virtual Host with PHP enabled and a Root directory on
    %s
    then set the name of the virtual host you have created in the properties of web site, so the preview can be done also using this dedicated web server access instead of the internal Dolibarr server. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS=Use with PHP embedded server
    On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running
    php -S 0.0.0.0:8080 -t %s YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org CheckVirtualHostPerms=Check also that virtual host has permission %s on files into
    %s @@ -56,7 +57,7 @@ NoPageYet=No pages yet YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template SyntaxHelp=Help on specific syntax tips YouCanEditHtmlSourceckeditor=You can edit HTML source code using the "Source" button in editor. -YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Clone page/container CloneSite=Clone site SiteAdded=Website added @@ -76,7 +77,7 @@ BlogPost=Blog post WebsiteAccount=Website account WebsiteAccounts=Website accounts AddWebsiteAccount=Create web site account -BackToListOfThirdParty=Back to list for Third Party +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Disable website first MyContainerTitle=My web site title AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Sorry, this website is currently off line. Please 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 -OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that edits of HTML source will be possible when page content has been initialized by grabbing it from an external page ("Online" editor will NOT be available) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Only edition of HTML source is possible when content was grabbed from an external site GrabImagesInto=Grab also images found into css and page. ImagesShouldBeSavedInto=Images should be saved into directory @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 ch MainLanguage=Main language OtherLanguages=Other languages UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/sq_AL/zapier.lang b/htdocs/langs/sq_AL/zapier.lang new file mode 100644 index 00000000000..6d6eda71313 --- /dev/null +++ b/htdocs/langs/sq_AL/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr module + +# +# Admin page +# +ZapierForDolibarrSetup = Setup of Zapier for Dolibarr diff --git a/htdocs/langs/sr_RS/accountancy.lang b/htdocs/langs/sr_RS/accountancy.lang index 219a63914a5..0b5e8090eaa 100644 --- a/htdocs/langs/sr_RS/accountancy.lang +++ b/htdocs/langs/sr_RS/accountancy.lang @@ -121,6 +121,7 @@ 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 +TotalForAccount=Total for accounting account Ventilate=Bind @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Accounting account to register donations ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (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 products sold in EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported 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_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (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_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unkno ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error PaymentsNotLinkedToProduct=Payment not linked to any product / service +OpeningBalance=Opening balance ShowOpeningBalance=Show opening balance HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Group of account PcgtypeDesc=Group 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. +Reconcilable=Reconcilable + TotalVente=Ukupni obrt pre poreza TotalMarge=Ukupna prodajna marža @@ -307,11 +317,13 @@ 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Chart of accounts Id ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Vrsta prodaje OptionModeProductSellIntra=Mode sales exported in EEC OptionModeProductSellExport=Mode sales exported in other countries OptionModeProductBuy=Vrsta kupovine +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries 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. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=Remove accounting code from lines that not exists into charts of account CleanHistory=Reset all bindings for selected year PredefinedGroups=Predefined groups @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Account removed from group SaleLocal=Local sale SaleExport=Export sale SaleEEC=Sale in EEC +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=Opseg knjižnih računa diff --git a/htdocs/langs/sr_RS/admin.lang b/htdocs/langs/sr_RS/admin.lang index 6f1b3c1b0c3..30555386b54 100644 --- a/htdocs/langs/sr_RS/admin.lang +++ b/htdocs/langs/sr_RS/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Web server korisnik/grupa NoSessionFound=Your PHP configuration seems to not allow listing of active sessions. The directory used to save sessions (%s) may be protected (for example by OS permissions or by PHP directive open_basedir). DBStoringCharset=Database charset to store data DBSortingCharset=Database charset to sort data +HostCharset=Host charset ClientCharset=Client charset ClientSortingCharset=Client collation WarningModuleNotActive=Module %s must be enabled @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the NoMaxSizeByPHPLimit=Note: No limit is set in your PHP configuration MaxSizeForUploadedFiles=Maximum size for uploaded files (0 to disallow any upload) UseCaptchaCode=Use graphical code (CAPTCHA) on login page -AntiVirusCommand= Full path to antivirus command -AntiVirusCommandExample= Example for ClamWin: c:\\Progra~1\\ClamWin\\bin\\clamscan.exe
    Example for ClamAv: /usr/bin/clamscan +AntiVirusCommand=Full path to antivirus command +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= More parameters on command line -AntiVirusParamExample= Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=Accounting module setup UserSetup=User management setup MultiCurrencySetup=Multi-currency setup @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Feature disabled in demo FeatureAvailableOnlyOnStable=Feature only available on official stable versions BoxesDesc=Widgets are components showing some information that you can add to personalize some pages. You can choose between showing the widget or not by selecting target page and clicking 'Activate', or by clicking the trashcan to disable it. OnlyActiveElementsAreShown=Only elements from enabled modules are shown. -ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button (at end of module line) to enable/disable a module/application. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. ModulesMarketPlaceDesc=You can find more modules to download on external websites on the Internet... ModulesDeployDesc=If permissions on your file system allow it, you can use this tool to deploy an external module. The module will then be visible on the tab %s. ModulesMarketPlaces=Find external app/modules @@ -212,6 +213,7 @@ CompatibleUpTo=Compatible with version %s NotCompatible=This module does not seem compatible with your Dolibarr %s (Min %s - Max %s). CompatibleAfterUpdate=This module requires an update to your Dolibarr %s (Min %s - Max %s). SeeInMarkerPlace=See in Market place +SeeSetupOfModule=Vidi podešavanja modula %s Updated=Updated Nouveauté=Novelty AchatTelechargement=Buy / Download @@ -221,6 +223,7 @@ DoliPartnersDesc=List of companies providing custom-developed modules or feature WebSiteDesc=External websites for more add-on (non-core) modules... DevelopYourModuleDesc=Some solutions to develop your own module... URL=URL +RelativeURL=Relative URL BoxesAvailable=Widgets available BoxesActivated=Widgets activated ActivateOn=Activate on @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Checkboxes ExtrafieldCheckBoxFromList=Checkboxes from table ExtrafieldLink=Link to an object ComputedFormula=Computed field -ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Store computed field ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! ExtrafieldParamHelpPassword=Leaving this field blank means this value will be stored without encryption (field must be only hidden with star on screen).
    Set 'auto' to use the default encryption rule to save password into database (then value read will be the hash only, no way to retrieve original value) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Keep empty to use default value DefaultLink=Default link SetAsDefault=Set as default ValueOverwrittenByUserSetup=Warning, this value may be overwritten by user specific setup (each user can set his own clicktodial url) -ExternalModule=External module - Installed into directory %s +ExternalModule=External module +InstalledInto=Installed into directory %s BarcodeInitForthird-parties=Mass barcode init for third-parties BarcodeInitForProductsOrServices=Mass barcode init or reset for products or services CurrentlyNWithoutBarCode=Currently, you have %s record on %s %s without barcode defined. @@ -947,7 +951,7 @@ DictionaryCanton=States/Provinces DictionaryRegion=Regions DictionaryCountry=Countries DictionaryCurrency=Currencies -DictionaryCivility=Title of civility +DictionaryCivility=Honorific titles DictionaryActions=Types of agenda events DictionarySocialContributions=Types of social or fiscal taxes DictionaryVAT=VAT Rates or Sales Tax Rates @@ -988,6 +992,7 @@ VATIsNotUsedDesc=By default the proposed Sales tax is 0 which can be used for ca VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=Rate LocalTax1IsNotUsed=Do not use second tax LocalTax1IsUsedDesc=Use a second type of tax (other than first one) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices LocalTax2IsNotUsedDescES=By default the proposed IRPF is 0. End of rule. LocalTax2IsUsedExampleES=In Spain, freelancers and independent professionals who provide services and companies who have chosen the tax system of modules. LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=Reports on local taxes CalcLocaltax1=Sales - Purchases CalcLocaltax1Desc=Local Taxes reports are calculated with the difference between localtaxes sales and localtaxes purchases @@ -1018,6 +1026,7 @@ CalcLocaltax2=Purchases CalcLocaltax2Desc=Local Taxes reports are the total of localtaxes purchases CalcLocaltax3=Sales CalcLocaltax3Desc=Local Taxes reports are the total of localtaxes sales +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=Label used by default if no translation can be found for code LabelOnDocuments=Label on documents LabelOrTranslationKey=Label or translation key @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Expense report to approve Delays_MAIN_DELAY_HOLIDAYS=Leave requests 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. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. SetupDescription5=Other Setup menu entries manage optional parameters. LogEvents=Security audit events Audit=Audit @@ -1128,7 +1137,7 @@ LogEventDesc=Enable logging for specific security events. Administrators the log AreaForAdminOnly=Setup parameters can be set by administrator users only. SystemInfoDesc=System information is miscellaneous technical information you get in read only mode and visible for administrators only. SystemAreaForAdminOnly=This area is available to administrator users only. Dolibarr user permissions cannot change this restriction. -CompanyFundationDesc=Edit the information of the company/entity. Click on "%s" button at the bottom of the page. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. AccountantFileNumber=Accountant code DisplayDesc=Parameters affecting the look and behaviour of Dolibarr can be modified here. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Rules to generate and validate passwords DisableForgetPasswordLinkOnLogonPage=Do not show the "Password Forgotten" link on the Login page UsersSetup=Users module setup UserMailRequired=Email required to create a new user +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### HRMSetup=Podešavanja HRM modula ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Invoice documents models BillsPDFModulesAccordindToInvoiceType=Invoice documents models according to invoice type PaymentsPDFModules=Payment documents models ForceInvoiceDate=Force invoice date to validation date -SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined for invoice +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice SuggestPaymentByRIBOnAccount=Suggest payment by withdrawal on account SuggestPaymentByChequeToAddress=Suggest payment by check to FreeLegalTextOnInvoices=Free text on invoices @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Vendor payments setup PropalSetup=Commercial proposals module setup ProposalsNumberingModules=Commercial proposal numbering models ProposalsPDFModules=Commercial proposal documents models -SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined for proposal +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal FreeLegalTextOnProposal=Free text on commercial proposals WatermarkOnDraftProposal=Watermark on draft commercial proposals (none if empty) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal @@ -1322,6 +1334,7 @@ WAREHOUSE_ASK_WAREHOUSE_DURING_ORDER=Pitaj za izvorni magacin za narudžbinu ##### Suppliers Orders ##### BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_ORDER=Ask for bank account destination of purchase order ##### Orders ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=Sales Orders management setup OrdersNumberingModules=Orders numbering models OrdersModelModule=Order documents models @@ -1720,7 +1733,7 @@ MultiCompanySetup=Multi-company module setup ##### Suppliers ##### SuppliersSetup=Vendor module setup SuppliersCommandModel=Complete template of Purchase Order -SuppliersCommandModelMuscadet=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) SuppliersInvoiceModel=Complete template of Vendor Invoice SuppliersInvoiceNumberingModel=Vendor invoices numbering models IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Hide images in Top menu LeftMenuBackgroundColor=Background color for Left menu BackgroundTableTitleColor=Pozadinska boja za naslovnu liniju tabela BackgroundTableTitleTextColor=Text color for Table title line +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Background color for odd table lines BackgroundTableLineEvenColor=Background color for even table lines MinimumNoticePeriod=Minimum notice period (Your leave request must be done before this delay) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Dolibarr Reference not found in Message ID FormatZip=Zip MainMenuCode=Menu entry code (mainmenu) ECMAutoTree=Show automatic ECM tree -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. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Opening hours OpeningHoursDesc=Enter here the regular opening hours of your company. ResourceSetup=Configuration of Resource module @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramatical ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export +ImportSetup=Setup of module Import InstanceUniqueID=Unique ID of the instance SmallerThan=Smaller than LargerThan=Larger than @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled EmailTemplate=Template for email EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/sr_RS/assets.lang b/htdocs/langs/sr_RS/assets.lang new file mode 100644 index 00000000000..642d73d7794 --- /dev/null +++ b/htdocs/langs/sr_RS/assets.lang @@ -0,0 +1,65 @@ +# Copyright (C) 2018 Alexandre Spangaro +# +# 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 . + +# +# Generic +# +Assets = Assets +NewAsset = New asset +AccountancyCodeAsset = Accounting code (asset) +AccountancyCodeDepreciationAsset = Accounting code (depreciation asset account) +AccountancyCodeDepreciationExpense = Accounting code (depreciation expense account) +NewAssetType=New asset type +AssetsTypeSetup=Asset type setup +AssetTypeModified=Asset type modified +AssetType=Asset type +AssetsLines=Assets +DeleteType=Obriši +DeleteAnAssetType=Delete an asset type +ConfirmDeleteAssetType=Are you sure you want to delete this asset type? +ShowTypeCard=Prikaži tim "%s" + +# Module label 'ModuleAssetsName' +ModuleAssetsName = Assets +# Module description 'ModuleAssetsDesc' +ModuleAssetsDesc = Assets description + +# +# Admin page +# +AssetsSetup = Assets setup +Settings = Settings +AssetsSetupPage = Assets setup page +ExtraFieldsAssetsType = Complementary attributes (Asset type) +AssetsType=Asset type +AssetsTypeId=Asset type id +AssetsTypeLabel=Asset type label +AssetsTypes=Assets types + +# +# Menu +# +MenuAssets = Assets +MenuNewAsset = New asset +MenuTypeAssets = Type assets +MenuListAssets = Lista +MenuNewTypeAssets = Novo +MenuListTypeAssets = Lista + +# +# Module +# +NewAssetType=New asset type +NewAsset=New asset diff --git a/htdocs/langs/sr_RS/bills.lang b/htdocs/langs/sr_RS/bills.lang index c2348e4b581..6dfcbf5e48f 100644 --- a/htdocs/langs/sr_RS/bills.lang +++ b/htdocs/langs/sr_RS/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Vendors invoices SupplierBill=Vendor invoice SupplierBills=računi dobavljača Payment=Plaćanje -PaymentBack=Refundiranje -CustomerInvoicePaymentBack=Refundiranje +PaymentBack=Povraćaj +CustomerInvoicePaymentBack=Povraćaj Payments=Plaćanja PaymentsBack=Refunds paymentInInvoiceCurrency=in invoices currency PaidBack=Refundirano DeletePayment=Obriši plaćanje ConfirmDeletePayment=Da li ste sigurni da želite da obrišete ovu uplatu? -ConfirmConvertToReduc=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. -ConfirmConvertToReducSupplier=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. SupplierPayments=Vendor payments ReceivedPayments=Primljene uplate @@ -209,17 +209,13 @@ NumberOfBillsByMonth=No. of invoices per month AmountOfBills=Amount of invoices AmountOfBillsHT=Amount of invoices (net of tax) AmountOfBillsByMonthHT=Amount of invoices by month (net of tax) -ShowSocialContribution=Show social/fiscal tax -ShowBill=Show invoice -ShowInvoice=Show invoice -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 +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=To pay on %s toPayOn=to pay on %s RetainedWarranty=Retained Warranty @@ -230,7 +226,6 @@ 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 AlreadyPaidNoCreditNotesNoDeposits=Already paid (without credit notes and down payments) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Generated from template invoice %s WarningInvoiceDateInFuture=Warning, the invoice date is higher than current date WarningInvoiceDateTooFarInFuture=Warning, the invoice date is too far from current date ViewAvailableGlobalDiscounts=View available discounts +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Status PaymentConditionShortRECEP=Dospeva na plaćanje po prijemu računa @@ -509,7 +505,7 @@ ToMakePayment=Pay ToMakePaymentBack=Pay back ListOfYourUnpaidInvoices=List of unpaid invoices NoteListOfYourUnpaidInvoices=Note: This list contains only invoices for third parties you are linked to as a sale representative. -RevenueStamp=Revenue stamp +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party YouMustCreateStandardInvoiceFirstDesc=You have to create a standard invoice first and convert it to "template" to create a new template invoice @@ -575,3 +571,4 @@ AutoFillDateTo=Set end date for service line with next invoice date AutoFillDateToShort=Set end date MaxNumberOfGenerationReached=Max number of gen. reached BILL_DELETEInDolibarr=Invoice deleted +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/sr_RS/blockedlog.lang b/htdocs/langs/sr_RS/blockedlog.lang new file mode 100644 index 00000000000..9be5b672696 --- /dev/null +++ b/htdocs/langs/sr_RS/blockedlog.lang @@ -0,0 +1,54 @@ +BlockedLog=Unalterable Logs +Field=Polje +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). +CompanyInitialKey=Company initial key (hash of genesis block) +BrowseBlockedLog=Unalterable logs +ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) +ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) +DownloadBlockChain=Download fingerprints +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). +OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. +OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. +AddedByAuthority=Stored into remote authority +NotAddedByAuthorityYet=Not yet stored into remote authority +ShowDetails=Show stored details +logPAYMENT_VARIOUS_CREATE=Payment (not assigned to an invoice) created +logPAYMENT_VARIOUS_MODIFY=Payment (not assigned to an invoice) modified +logPAYMENT_VARIOUS_DELETE=Payment (not assigned to an invoice) logical deletion +logPAYMENT_ADD_TO_BANK=Payment added to bank +logPAYMENT_CUSTOMER_CREATE=Customer payment created +logPAYMENT_CUSTOMER_DELETE=Customer payment logical deletion +logDONATION_PAYMENT_CREATE=Donation payment created +logDONATION_PAYMENT_DELETE=Donation payment logical deletion +logBILL_PAYED=Customer invoice paid +logBILL_UNPAYED=Customer invoice set unpaid +logBILL_VALIDATE=Račun klijenta je potvrđen +logBILL_SENTBYMAIL=Customer invoice send by mail +logBILL_DELETE=Customer invoice logically deleted +logMODULE_RESET=Module BlockedLog was disabled +logMODULE_SET=Module BlockedLog was enabled +logDON_VALIDATE=Donation validated +logDON_MODIFY=Donation modified +logDON_DELETE=Donation logical deletion +logMEMBER_SUBSCRIPTION_CREATE=Member subscription created +logMEMBER_SUBSCRIPTION_MODIFY=Member subscription modified +logMEMBER_SUBSCRIPTION_DELETE=Member subscription logical deletion +logCASHCONTROL_VALIDATE=Cash fence recording +BlockedLogBillDownload=Customer invoice download +BlockedLogBillPreview=Customer invoice preview +BlockedlogInfoDialog=Log Details +ListOfTrackedEvents=List of tracked events +Fingerprint=Fingerprint +DownloadLogCSV=Export archived logs (CSV) +logDOC_PREVIEW=Preview of a validated document in order to print or download +logDOC_DOWNLOAD=Download of a validated document in order to print or send +DataOfArchivedEvent=Full datas of archived event +ImpossibleToReloadObject=Original object (type %s, id %s) not linked (see 'Full datas' column to get unalterable saved data) +BlockedLogAreRequiredByYourCountryLegislation=Unalterable Logs module may be required by the legislation of your country. Disabling this module may render any future transactions invalid with respect to the law and the use of legal software as they can not be validated by a tax audit. +BlockedLogActivatedBecauseRequiredByYourCountryLegislation=Unalterable Logs module was activated because of the legislation of your country. Disabling this module may render any future transactions invalid with respect to the law and the use of legal software as they cannot be validated by a tax audit. +BlockedLogDisableNotAllowedForCountry=List of countries where usage of this module is mandatory (just to prevent to disable the module by error, if your country is in this list, disable of module is not possible without editing this list first. Note also that enabling/disabling this module will keep a track into the unalterable log). +OnlyNonValid=Non-valid +TooManyRecordToScanRestrictFilters=Too many records to scan/analyze. Please restrict list with more restrictive filters. +RestrictYearToExport=Restrict month / year to export diff --git a/htdocs/langs/sr_RS/cashdesk.lang b/htdocs/langs/sr_RS/cashdesk.lang index 33f7cac33cb..120721fcf9b 100644 --- a/htdocs/langs/sr_RS/cashdesk.lang +++ b/htdocs/langs/sr_RS/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Dodaj ovaj artikal RestartSelling=Vrati se nazad na prodaju SellFinished=Prodaja završena PrintTicket=Štampaj kartu +SendTicket=Send ticket NoProductFound=Artikal nije pronađen ProductFound=proizvod pronađen NoArticle=Nema artikla @@ -48,6 +49,7 @@ Footer=Footer AmountAtEndOfPeriod=Amount at end of period (day, month or year) TheoricalAmount=Theorical amount RealAmount=Real amount +CashFence=Cash fence CashFenceDone=Cash fence done for the period NbOfInvoices=Nb of invoices Paymentnumpad=Type of Pad to enter payment @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS needs product categories to work OrderNotes=Order Notes CashDeskBankAccountFor=Default account to use for payments in NoPaimementModesDefined=No paiment mode defined in TakePOS configuration -TicketVatGrouped=Group VAT by rate in tickets -AutoPrintTickets=Automatically print tickets +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? @@ -87,7 +90,19 @@ HeadBar=Head Bar SortProductField=Field for sorting products Browser=Browser BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/sr_RS/companies.lang b/htdocs/langs/sr_RS/companies.lang index b3dc0d176c8..d210f745fe3 100644 --- a/htdocs/langs/sr_RS/companies.lang +++ b/htdocs/langs/sr_RS/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted=Kompanija "%s" je obrisana iz baze. ListOfContacts=Lista kontakta/adresa ListOfContactsAddresses=Lista kontakta/adresa ListOfThirdParties=List of Third Parties -ShowCompany=Show Third Party ShowContact=Prikaži kontakt ContactsAllShort=Sve (Bez filtera) ContactType=Tip kontakta @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=First name of sales representative SaleRepresentativeLastname=Last name of sales representative ErrorThirdpartiesMerge=There was an error when deleting the third parties. Please check the log. Changes have been reverted. NewCustomerSupplierCodeProposed=Customer or Vendor code already used, a new code is suggested +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Payment Type - Customer PaymentTermsCustomer=Payment Terms - Customer diff --git a/htdocs/langs/sr_RS/compta.lang b/htdocs/langs/sr_RS/compta.lang index 6c862fdd0cc..6e3b7c3777d 100644 --- a/htdocs/langs/sr_RS/compta.lang +++ b/htdocs/langs/sr_RS/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=See %sanalysis of payments%s for a calculation on act SeeReportInDueDebtMode=See %sanalysis of invoices%s for a calculation based on known recorded invoices even if they are not yet accounted in Ledger. SeeReportInBookkeepingMode=See %sBookeeping report%s for a calculation on Bookkeeping Ledger table RulesAmountWithTaxIncluded=- Prikazani su bruto iznosi -RulesResultDue=- Sadrži sve račune, troškove, PDV, donacije, bez obzira da li su uplaćene ili ne. Takođe sadrži isplaćene zarade
    - Zasniva se na datumu potvrde računa i PDV-a i na zadatom datumu troškova. Za zarade definisane u modulu Zarade se koristi vrednosni datum isplate. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- Sadrži realne uplate računa, troškova, PDV-a i zarada.
    - Zasniva se na datumima isplate računa, troškova, PDV-a i zarada. Za donacije se zasniva na datumu donacije. -RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the validation date of these invoices.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    RulesCATotalSaleJournal=It includes all credit lines from the Sale journal. RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Turnover invoiced by sale tax rate TurnoverCollectedbyVatrate=Turnover collected by sale tax rate PurchasebyVatrate=Purchase by sale tax rate LabelToShow=Kratak naziv +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/sr_RS/donations.lang b/htdocs/langs/sr_RS/donations.lang index b4b9fabdf57..a94f53ade74 100644 --- a/htdocs/langs/sr_RS/donations.lang +++ b/htdocs/langs/sr_RS/donations.lang @@ -7,7 +7,6 @@ AddDonation=Kreiraj donaciju NewDonation=Nova donacija DeleteADonation=Obriši donaciju ConfirmDeleteADonation=Are you sure you want to delete this donation? -ShowDonation=Pokaži donaciju PublicDonation=Javna donacija DonationsArea=Oblast donacije DonationStatusPromiseNotValidated=Draft obećanje @@ -17,6 +16,7 @@ DonationStatusPromiseNotValidatedShort=Draft DonationStatusPromiseValidatedShort=Odobreno DonationStatusPaidShort=Primljeno DonationTitle=Priznanica donacije +DonationDate=Donation date DonationDatePayment=Datum uplate ValidPromess=Odobri obećanje DonationReceipt=Priznaica donacije diff --git a/htdocs/langs/sr_RS/errors.lang b/htdocs/langs/sr_RS/errors.lang index 0a117fcfffc..9d7c709b7d6 100644 --- a/htdocs/langs/sr_RS/errors.lang +++ b/htdocs/langs/sr_RS/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=Fajl nije u celosti primljen na server. ErrorNoTmpDir=Privremeni folder %s ne postoji. ErrorUploadBlockedByAddon=Upload blokiran PHP/Apache pluginom. ErrorFileSizeTooLarge=Fajl je preveliki. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Predugačka vrednost za int tip (%s cifara maksimum) ErrorSizeTooLongForVarcharType=Predugačka vrednost za string tip (%s karaktera maksimum) ErrorNoValueForSelectType=Molimo izaberite vrednost u select listi @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # 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. diff --git a/htdocs/langs/sr_RS/hrm.lang b/htdocs/langs/sr_RS/hrm.lang new file mode 100644 index 00000000000..96ef12f23bc --- /dev/null +++ b/htdocs/langs/sr_RS/hrm.lang @@ -0,0 +1,18 @@ +# Dolibarr language file - en_US - hrm +# Admin +HRM_EMAIL_EXTERNAL_SERVICE=Email za blokiranje eksternog HR servisa +Establishments=Ogranci +Establishment=Ogranak +NewEstablishment=Novi ogranak +DeleteEstablishment=Obriši ogranak +ConfirmDeleteEstablishment=Are you sure you wish to delete this establishment? +OpenEtablishment=Otvori ogranak +CloseEtablishment=Zatvori ogranak +# Dictionary +DictionaryPublicHolidays=HRM - Public holidays +DictionaryDepartment=HR - Lista odeljenja +DictionaryFunction=HR - Lista funkcija +# Module +Employees=Zaposleni +Employee=Zaposleni +NewEmployee=Novi zaposleni diff --git a/htdocs/langs/sr_RS/install.lang b/htdocs/langs/sr_RS/install.lang index b5dc57a6069..62075489dad 100644 --- a/htdocs/langs/sr_RS/install.lang +++ b/htdocs/langs/sr_RS/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=This PHP supports Curl. PHPSupportCalendar=This PHP supports calendars extensions. PHPSupportUTF8=This PHP supports UTF8 functions. PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=This PHP supports %s functions. PHPMemoryOK=Maksimalna memorija za sesije je %s. To bi trebalo biti dovoljno. 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. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=Your PHP installation does not support Curl. ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. 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. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. ErrorDirDoesNotExists=Folder %s ne postoji. ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=The application tried to self-upgrade, but the in 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. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/sr_RS/interventions.lang b/htdocs/langs/sr_RS/interventions.lang index 4e5c2c19735..b1bc27aa9e7 100644 --- a/htdocs/langs/sr_RS/interventions.lang +++ b/htdocs/langs/sr_RS/interventions.lang @@ -41,9 +41,7 @@ InterventionsArea=Intervencije DraftFichinter=Draft intervencije LastModifiedInterventions=Latest %s modified interventions FichinterToProcess=Interventions to process -##### Types de contacts ##### TypeContact_fichinter_external_CUSTOMER=Kontakt klijenta koji prat intervenciju -# Modele numérotation PrintProductsOnFichinter=Print also lines of type "product" (not only services) on intervention card PrintProductsOnFichinterDetails=Intervencije generisane iz narudžbina UseServicesDurationOnFichinter=Use services duration for interventions generated from orders @@ -53,14 +51,16 @@ InterventionStatistics=Statistika intervencija NbOfinterventions=No. of intervention cards NumberOfInterventionsByMonth=No. of intervention cards by month (date of validation) AmountOfInteventionNotIncludedByDefault=Amount of intervention is not included by default into profit (in most cases, timesheets are used to count time spent). Add option PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT to 1 into home-setup-other to include them. -##### Exports ##### InterId=Id intervencije InterRef=Ref. intervencije InterDateCreation=Datum kreiranja intervencije InterDuration=Trajanje intervencije InterStatus=Status intervencije InterNote=Napomena intervencije +InterLine=Line of intervention InterLineId=Id linije intervencije InterLineDate=Datum linije intervencije InterLineDuration=Trajanje linije intervencije InterLineDesc=Opis linije intervencije +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/sr_RS/link.lang b/htdocs/langs/sr_RS/link.lang index 81f23a8b366..36e3aaf6aea 100644 --- a/htdocs/langs/sr_RS/link.lang +++ b/htdocs/langs/sr_RS/link.lang @@ -8,3 +8,4 @@ LinkRemoved=Link %s je uklonjen ErrorFailedToDeleteLink= Greška prilikom uklanjanja linka '%s' ErrorFailedToUpdateLink= Greška prilikom ažuriranja linka '%s' URLToLink=URL za link +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/sr_RS/mails.lang b/htdocs/langs/sr_RS/mails.lang index f218481df16..e5c1eb91c6a 100644 --- a/htdocs/langs/sr_RS/mails.lang +++ b/htdocs/langs/sr_RS/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=No contact/address with a category found NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found OutGoingEmailSetup=Outgoing email setup InGoingEmailSetup=Incoming email setup -OutGoingEmailSetupForEmailing=Outgoing email setup (for mass emailing) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Default outgoing email setup Information=Informacija ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/sr_RS/main.lang b/htdocs/langs/sr_RS/main.lang index 3c34cb00fe6..5d825d7454e 100644 --- a/htdocs/langs/sr_RS/main.lang +++ b/htdocs/langs/sr_RS/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Save and stay SaveAndNew=Save and new TestConnection=Testiraj konekciju ToClone=Kloniraj +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Choose data you want to clone: NoCloneOptionsSpecified=Podaci za dupliranje nisu definisani: Of=od @@ -829,6 +830,8 @@ Gender=Pol Genderman=Muško Genderwoman=Žensko ViewList=Prikaz liste +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Obavezno Hello=Zdravo GoodBye=GoodBye @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Select your graph options to build a graph Measures=Measures XAxis=X-Axis YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/sr_RS/modulebuilder.lang b/htdocs/langs/sr_RS/modulebuilder.lang new file mode 100644 index 00000000000..135ac1ae9ec --- /dev/null +++ b/htdocs/langs/sr_RS/modulebuilder.lang @@ -0,0 +1,141 @@ +# Dolibarr language file - Source file is en_US - loan +ModuleBuilderDesc=This tool must be used only by experienced users or developers. It provides utilities to build or edit your own module. Documentation for alternative manual development is here. +EnterNameOfModuleDesc=Enter name of the module/application to create with no spaces. Use uppercase to separate words (For example: MyModule, EcommerceForShop, SyncWithMySystem...) +EnterNameOfObjectDesc=Enter name of the object to create with no spaces. Use uppercase to separate words (For example: MyObject, Student, Teacher...). The CRUD class file, but also API file, pages to list/add/edit/delete object and SQL files will be generated. +ModuleBuilderDesc2=Path where modules are generated/edited (first directory for external modules defined into %s): %s +ModuleBuilderDesc3=Generated/editable modules found: %s +ModuleBuilderDesc4=A module is detected as 'editable' when the file %s exists in root of module directory +NewModule=New module +NewObjectInModulebuilder=New object +ModuleKey=Module key +ObjectKey=Object key +ModuleInitialized=Module initialized +FilesForObjectInitialized=Files for new object '%s' initialized +FilesForObjectUpdated=Files for object '%s' updated (.sql files and .class.php file) +ModuleBuilderDescdescription=Enter here all general information that describe your module. +ModuleBuilderDescspecifications=You can enter here a detailed description of the specifications of your module that is not already structured into other tabs. So you have within easy reach all the rules to develop. Also this text content will be included into the generated documentation (see last tab). You can use Markdown format, but it is recommended to use Asciidoc format (comparison between .md and .asciidoc: http://asciidoctor.org/docs/user-manual/#compared-to-markdown). +ModuleBuilderDescobjects=Define here the objects you want to manage with your module. A CRUD DAO class, SQL files, page to list record of objects, to create/edit/view a record and an API will be generated. +ModuleBuilderDescmenus=This tab is dedicated to define menu entries provided by your module. +ModuleBuilderDescpermissions=This tab is dedicated to define the new permissions you want to provide with your module. +ModuleBuilderDesctriggers=This is the view of triggers provided by your module. To include code executed when a triggered business event is launched, just edit this file. +ModuleBuilderDeschooks=This tab is dedicated to hooks. +ModuleBuilderDescwidgets=This tab is dedicated to manage/build widgets. +ModuleBuilderDescbuildpackage=You can generate here a "ready to distribute" package file (a normalized .zip file) of your module and a "ready to distribute" documentation file. Just click on button to build the package or documentation file. +EnterNameOfModuleToDeleteDesc=You can delete your module. WARNING: All coding files of module (generated or created manually) AND structured data and documentation will be deleted! +EnterNameOfObjectToDeleteDesc=You can delete an object. WARNING: All coding files (generated or created manually) related to object will be deleted! +DangerZone=Danger zone +BuildPackage=Build package +BuildPackageDesc=You can generate a zip package of your application so your are ready to distribute it on any Dolibarr. You can also distribute it or sell it on marketplace like DoliStore.com. +BuildDocumentation=Build documentation +ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: +ModuleIsLive=This module has been activated. Any change may break a current live feature. +DescriptionLong=Long description +EditorName=Name of editor +EditorUrl=URL of editor +DescriptorFile=Descriptor file of module +ClassFile=File for PHP DAO CRUD class +ApiClassFile=File for PHP API class +PageForList=PHP page for list of record +PageForCreateEditView=PHP page to create/edit/view a record +PageForAgendaTab=PHP page for event tab +PageForDocumentTab=PHP page for document tab +PageForNoteTab=PHP page for note tab +PathToModulePackage=Path to zip of module/application package +PathToModuleDocumentation=Path to file of module/application documentation (%s) +SpaceOrSpecialCharAreNotAllowed=Spaces or special characters are not allowed. +FileNotYetGenerated=File not yet generated +RegenerateClassAndSql=Force update of .class and .sql files +RegenerateMissingFiles=Generate missing files +SpecificationFile=File of documentation +LanguageFile=File for language +ObjectProperties=Object Properties +ConfirmDeleteProperty=Are you sure you want to delete the property %s? This will change code in PHP class but also remove column from table definition of object. +NotNull=Not NULL +NotNullDesc=1=Set database to NOT NULL. -1=Allow null values and force value to NULL if empty ('' or 0). +SearchAll=Used for 'search all' +DatabaseIndex=Database index +FileAlreadyExists=File %s already exists +TriggersFile=File for triggers code +HooksFile=File for hooks code +ArrayOfKeyValues=Array of key-val +ArrayOfKeyValuesDesc=Array of keys and values if field is a combo list with fixed values +WidgetFile=Widget file +CSSFile=CSS file +JSFile=Javascript file +ReadmeFile=Readme file +ChangeLog=ChangeLog file +TestClassFile=File for PHP Unit Test class +SqlFile=Sql file +PageForLib=File for the common PHP library +PageForObjLib=File for the PHP library dedicated to object +SqlFileExtraFields=Sql file for complementary attributes +SqlFileKey=Sql file for keys +SqlFileKeyExtraFields=Sql file for keys of complementary attributes +AnObjectAlreadyExistWithThisNameAndDiffCase=An object already exists with this name and a different case +UseAsciiDocFormat=You can use Markdown format, but it is recommended to use Asciidoc format (omparison between .md and .asciidoc: http://asciidoctor.org/docs/user-manual/#compared-to-markdown) +IsAMeasure=Is a measure +DirScanned=Directory scanned +NoTrigger=No trigger +NoWidget=No widget +GoToApiExplorer=Go to API explorer +ListOfMenusEntries=List of menu entries +ListOfDictionariesEntries=List of dictionaries entries +ListOfPermissionsDefined=List of defined permissions +SeeExamples=See examples here +EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty +DisplayOnPdf=Display on PDF +IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) +SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) +SpecDefDesc=Enter here all documentation you want to provide with your module that is not already defined by other tabs. You can use .md or better, the rich .asciidoc syntax. +LanguageDefDesc=Enter in this files, all the key and the translation for each language file. +MenusDefDesc=Define here the menus provided by your module +DictionariesDefDesc=Define here the dictionaries provided by your module +PermissionsDefDesc=Define here the new permissions provided by your module +MenusDefDescTooltip=The menus provided by your module/application are defined into the array $this->menus into the module descriptor file. You can edit manually this file or use the embedded editor.

    Note: Once defined (and module re-activated), menus are also visible into the menu editor available to administrator users on %s. +DictionariesDefDescTooltip=The dictionaries provided by your module/application are defined into the array $this->dictionaries into the module descriptor file. You can edit manually this file or use the embedded editor.

    Note: Once defined (and module re-activated), dictionaries are also visible into the setup area to administrator users on %s. +PermissionsDefDescTooltip=The permissions provided by your module/application are defined into the array $this->rights into the module descriptor file. You can edit manually this file or use the embedded editor.

    Note: Once defined (and module re-activated), permissions are visible into the default permissions setup %s. +HooksDefDesc=Define in the module_parts['hooks'] property, in the module descriptor, the context of hooks you want to manage (list of contexts can be found by a search on 'initHooks(' in core code).
    Edit the hook file to add code of your hooked functions (hookable functions can be found by a search on 'executeHooks' in core code). +TriggerDefDesc=Define in the trigger file the code you want to execute for each business event executed. +SeeIDsInUse=See IDs in use in your installation +SeeReservedIDsRangeHere=See range of reserved IDs +ToolkitForDevelopers=Toolkit for Dolibarr developers +TryToUseTheModuleBuilder=If you have knowledge of SQL and PHP, you may use the native module builder wizard.
    Enable the module %s and use the wizard by clicking the on the top right menu.
    Warning: This is an advanced developer feature, do not experiment on your production site! +SeeTopRightMenu=See on the top right menu +AddLanguageFile=Add language file +YouCanUseTranslationKey=You can use here a key that is the translation key found into language file (see tab "Languages") +DropTableIfEmpty=(Delete table if empty) +TableDoesNotExists=The table %s does not exists +TableDropped=Table %s deleted +InitStructureFromExistingTable=Build the structure array string of an existing table +UseAboutPage=Disable the about page +UseDocFolder=Disable the documentation folder +UseSpecificReadme=Use a specific ReadMe +ContentOfREADMECustomized=Note: The content of the README.md file has been replaced with the specific value defined into setup of ModuleBuilder. +RealPathOfModule=Real path of module +ContentCantBeEmpty=Content of file can't be empty +WidgetDesc=You can generate and edit here the widgets that will be embedded with your module. +CSSDesc=You can generate and edit here a file with personalized CSS embedded with your module. +JSDesc=You can generate and edit here a file with personalized Javascript embedded with your module. +CLIDesc=You can generate here some command line scripts you want to provide with your module. +CLIFile=CLI File +NoCLIFile=No CLI files +UseSpecificEditorName = Use a specific editor name +UseSpecificEditorURL = Use a specific editor URL +UseSpecificFamily = Use a specific family +UseSpecificAuthor = Use a specific author +UseSpecificVersion = Use a specific initial version +ModuleMustBeEnabled=The module/application must be enabled first +IncludeRefGeneration=The reference of object must be generated automatically +IncludeRefGenerationHelp=Check this if you want to include code to manage the generation automatically of the reference +IncludeDocGeneration=I want to generate some documents from the object +IncludeDocGenerationHelp=If you check this, some code will be generated to add a "Generate document" box on the record. +ShowOnCombobox=Show value into combobox +KeyForTooltip=Key for tooltip +CSSClass=CSS Class +NotEditable=Not editable +ForeignKey=Foreign key +TypeOfFieldsHelp=Type of fields:
    varchar(99), double(24,8), real, text, html, datetime, timestamp, integer, integer:ClassName:relativepath/to/classfile.class.php[:1[:filter]] ('1' means we add a + button after the combo to create the record, 'filter' can be 'status=1 AND fk_user = __USER_ID AND entity IN (__SHARED_ENTITIES__)' for example) +AsciiToHtmlConverter=Ascii to HTML converter +AsciiToPdfConverter=Ascii to PDF converter diff --git a/htdocs/langs/sr_RS/mrp.lang b/htdocs/langs/sr_RS/mrp.lang new file mode 100644 index 00000000000..d3c4d3253c6 --- /dev/null +++ b/htdocs/langs/sr_RS/mrp.lang @@ -0,0 +1,76 @@ +Mrp=Manufacturing Orders +MO=Manufacturing Order +MRPDescription=Module to manage production and Manufacturing Orders (MO). +MRPArea=MRP Area +MrpSetupPage=Setup of module MRP +MenuBOM=Bills of material +LatestBOMModified=Latest %s Bills of materials modified +LatestMOModified=Latest %s Manufacturing Orders modified +Bom=Bills of Material +BillOfMaterials=Bill of Material +BOMsSetup=Setup of module BOM +ListOfBOMs=List of bills of material - BOM +ListOfManufacturingOrders=List of Manufacturing Orders +NewBOM=New bill of material +ProductBOMHelp=Product to create with this BOM.
    Note: Products with the property 'Nature of product' = 'Raw material' are not visible into this list. +BOMsNumberingModules=BOM numbering templates +BOMsModelModule=BOM document templates +MOsNumberingModules=MO numbering templates +MOsModelModule=MO document templates +FreeLegalTextOnBOMs=Free text on document of BOM +WatermarkOnDraftBOMs=Watermark on draft BOM +FreeLegalTextOnMOs=Free text on document of MO +WatermarkOnDraftMOs=Watermark on draft MO +ConfirmCloneBillOfMaterials=Are you sure you want to clone the bill of material %s ? +ConfirmCloneMo=Are you sure you want to clone the Manufacturing Order %s ? +ManufacturingEfficiency=Manufacturing efficiency +ConsumptionEfficiency=Consumption efficiency +ValueOfMeansLoss=Value of 0.95 means an average of 5%% of loss during the production +ValueOfMeansLossForProductProduced=Value of 0.95 means an average of 5%% of loss of produced product +DeleteBillOfMaterials=Delete Bill Of Materials +DeleteMo=Delete Manufacturing Order +ConfirmDeleteBillOfMaterials=Are you sure you want to delete this Bill Of Material? +ConfirmDeleteMo=Are you sure you want to delete this Bill Of Material? +MenuMRP=Manufacturing Orders +NewMO=New Manufacturing Order +QtyToProduce=Qty to produce +DateStartPlannedMo=Date start planned +DateEndPlannedMo=Date end planned +KeepEmptyForAsap=Empty means 'As Soon As Possible' +EstimatedDuration=Estimated duration +EstimatedDurationDesc=Estimated duration to manufacture this product using this BOM +ConfirmValidateBom=Are you sure you want to validate the BOM with the reference %s (you will be able to use it to build new Manufacturing Orders) +ConfirmCloseBom=Are you sure you want to cancel this BOM (you won't be able to use it to build new Manufacturing Orders anymore) ? +ConfirmReopenBom=Are you sure you want to re-open this BOM (you will be able to use it to build new Manufacturing Orders) +StatusMOProduced=Produced +QtyFrozen=Frozen Qty +QuantityFrozen=Frozen Quantity +QuantityConsumedInvariable=When this flag is set, the quantity consumed is always the value defined and is not relative to the quantity produced. +DisableStockChange=Stock change disabled +DisableStockChangeHelp=When this flag is set, there is no stock change on this product, whatever is the quantity consumed +BomAndBomLines=Bills Of Material and lines +BOMLine=Line of BOM +WarehouseForProduction=Warehouse for production +CreateMO=Create MO +ToConsume=To consume +ToProduce=To produce +QtyAlreadyConsumed=Qty already consumed +QtyAlreadyProduced=Qty already produced +QtyRequiredIfNoLoss=Qty required if there is no loss (Manufacturing efficiency is 100%%) +ConsumeOrProduce=Consume or Produce +ConsumeAndProduceAll=Consume and Produce All +Manufactured=Manufactured +TheProductXIsAlreadyTheProductToProduce=The product to add is already the product to produce. +ForAQuantityOf=For a quantity to produce of %s +ConfirmValidateMo=Are you sure you want to validate this Manufacturing Order? +ConfirmProductionDesc=By clicking on '%s', you will validate the consumption and/or production for the quantities set. This will also update the stock and record stock movements. +ProductionForRef=Production of %s +AutoCloseMO=Close automatically the Manufacturing Order if quantities to consume and to produce are reached +NoStockChangeOnServices=No stock change on services +ProductQtyToConsumeByMO=Product quantity still to consume by open MO +ProductQtyToProduceByMO=Product quentity still to produce by open MO +AddNewConsumeLines=Add new line to consume +ProductsToConsume=Products to consume +ProductsToProduce=Products to produce +UnitCost=Unit cost +TotalCost=Total cost diff --git a/htdocs/langs/sr_RS/multicurrency.lang b/htdocs/langs/sr_RS/multicurrency.lang new file mode 100644 index 00000000000..bfcbd11fb7c --- /dev/null +++ b/htdocs/langs/sr_RS/multicurrency.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Multi currency +ErrorAddRateFail=Error in added rate +ErrorAddCurrencyFail=Error in added currency +ErrorDeleteCurrencyFail=Error delete fail +multicurrency_syncronize_error=Synchronization error: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Use the date of the document to find the currency rate, instead of using the latest known rate +multicurrency_useOriginTx=When an object is created from another, keep the original rate from the source object (otherwise use the latest known rate) +CurrencyLayerAccount=CurrencyLayer API +CurrencyLayerAccount_help_to_synchronize=You must create an account on website %s to use this functionality.
    Get your API key.
    If you use a free account, you can't change the source currency (USD by default).
    If your main currency is not USD, the application will automatically recalculate it.

    You are limited to 1000 synchronizations per month. +multicurrency_appId=API key +multicurrency_appCurrencySource=Source currency +multicurrency_alternateCurrencySource=Alternate source currency +CurrenciesUsed=Currencies used +CurrenciesUsed_help_to_add=Add the different currencies and rates you need to use on your proposals, orders etc. +rate=rate +MulticurrencyReceived=Received, original currency +MulticurrencyRemainderToTake=Remaining amount, original currency +MulticurrencyPaymentAmount=Payment amount, original currency +AmountToOthercurrency=Amount To (in currency of receiving account) +CurrencyRateSyncSucceed=Currency rate synchronization done successfuly +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Use the currency of the document for online payments diff --git a/htdocs/langs/sr_RS/oauth.lang b/htdocs/langs/sr_RS/oauth.lang new file mode 100644 index 00000000000..c5b772af121 --- /dev/null +++ b/htdocs/langs/sr_RS/oauth.lang @@ -0,0 +1,32 @@ +# 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=Nema tokena u lokalnoj bazi +HasAccessToken=Token je generisan i sačuvan u lokalnoj bazi +NewTokenStored=Token received and saved +ToCheckDeleteTokenOnProvider=Click here to check/delete authorization saved by %s OAuth provider +TokenDeleted=Token obrisan +RequestAccess=Kliknite ovde da biste tražili/obnovili pristup i primili novi token za čuvanje +DeleteAccess=Kliknite ovde da obrišete token +UseTheFollowingUrlAsRedirectURI=Use the following URL as the Redirect URI when creating your credentials with your OAuth provider: +ListOfSupportedOauthProviders=Enter the credentials provided by your OAuth2 provider. Only supported OAuth2 providers are listedd here. These services 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 ističe +TOKEN_DELETE=Obriši sačuvani token +OAUTH_GOOGLE_NAME=OAuth Google service +OAUTH_GOOGLE_ID=OAuth Google Id +OAUTH_GOOGLE_SECRET=OAuth Google Secret +OAUTH_GOOGLE_DESC=Go to 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 to this page then "Register a new application" to create OAuth credentials +OAUTH_STRIPE_TEST_NAME=OAuth Stripe Test +OAUTH_STRIPE_LIVE_NAME=OAuth Stripe Live diff --git a/htdocs/langs/sr_RS/other.lang b/htdocs/langs/sr_RS/other.lang index 30bd32cca66..e5f9f4c63ed 100644 --- a/htdocs/langs/sr_RS/other.lang +++ b/htdocs/langs/sr_RS/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Sales order validated Notify_ORDER_SENTBYMAIL=Sales order sent by mail Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=URL stranice WEBSITE_TITLE=Naslov WEBSITE_DESCRIPTION=Opis WEBSITE_IMAGE=Image -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Ključne reči LinesToImport=Lines to import diff --git a/htdocs/langs/sr_RS/products.lang b/htdocs/langs/sr_RS/products.lang index 8db9e1111a7..c48e11cd93e 100644 --- a/htdocs/langs/sr_RS/products.lang +++ b/htdocs/langs/sr_RS/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL MassBarcodeInit=Masivna inicijalizacija bar code-a. MassBarcodeInitDesc=Na ovoj strani možete inicijalizovati bar kod za objekte koji još uvek nemaju definisan kod. Prethodno proverite da li je završeno podešavanje modula bar kod. ProductAccountancyBuyCode=Accounting code (purchase) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Accounting code (sale) ProductAccountancySellIntraCode=Accounting code (sale intra-Community) ProductAccountancySellExportCode=Accounting code (sale export) @@ -165,7 +167,7 @@ SuppliersPrices=Vendor prices SuppliersPricesOfProductsOrServices=Vendor prices (of products or services) CustomCode=Customs / Commodity / HS code CountryOrigin=Zemlja porekla -Nature=Nature of produt (material/finished) +Nature=Nature of product (material/finished) ShortLabel=Kratak naziv Unit=Jedinica p=j. diff --git a/htdocs/langs/sr_RS/projects.lang b/htdocs/langs/sr_RS/projects.lang index ce609997c1e..d849eea5e71 100644 --- a/htdocs/langs/sr_RS/projects.lang +++ b/htdocs/langs/sr_RS/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=which I'm linked to project Time=Vreme ListOfTasks=Lista zadataka GoToListOfTimeConsumed=Idi na listu utrošenog vremena -GoToListOfTasks=Show as list -GoToGanttView=show as Gantt GanttView=Gantt View ListProposalsAssociatedProject=List of the commercial proposals related to the project ListOrdersAssociatedProject=List of sales orders related to the project @@ -188,7 +186,7 @@ PlannedWorkload=Planirano utrošeno vreme PlannedWorkloadShort=Utrošeno vreme ProjectReferers=Related items ProjectMustBeValidatedFirst=Projekat prvo mora biti odobren -FirstAddRessourceToAllocateTime=Assign a user resource to task to allocate time +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=Ulaz po danu InputPerWeek=Ulaz po nedelji InputPerMonth=Input per month @@ -240,6 +238,7 @@ LatestModifiedProjects=Latest %s modified projects OtherFilteredTasks=Other filtered tasks NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=Allow user comments on tasks AllowCommentOnProject=Allow user comments on projects @@ -256,7 +255,7 @@ ServiceToUseOnLines=Service to use on lines InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. ProjectFollowOpportunity=Follow opportunity -ProjectFollowTasks=Follow tasks +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Usage: Opportunity UsageTasks=Usage: Tasks @@ -265,3 +264,4 @@ InvoiceToUse=Draft invoice to use NewInvoice=Novi račun OneLinePerTask=One line per task OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/sr_RS/receiptprinter.lang b/htdocs/langs/sr_RS/receiptprinter.lang new file mode 100644 index 00000000000..450cd4e3ca5 --- /dev/null +++ b/htdocs/langs/sr_RS/receiptprinter.lang @@ -0,0 +1,95 @@ +# Dolibarr language file - Source file is en_US - receiptprinter +ReceiptPrinterSetup=Pdešavanje modula Štampača računa +PrinterAdded=Štampač %s je dodat +PrinterUpdated=Štampač %s je ažuriran +PrinterDeleted=Štampač %s je obrisan +TestSentToPrinter=Test je poslat na štampač %s +ReceiptPrinter=Štampači računa +ReceiptPrinterDesc=Podešavanje štampača +ReceiptPrinterTemplateDesc=Podešavanje template-a +ReceiptPrinterTypeDesc=Opis tipa štampača računa +ReceiptPrinterProfileDesc=Opis profila štampača računa +ListPrinters=Lista štampača +SetupReceiptTemplate=Podešavanje template-a +CONNECTOR_DUMMY=Fiktivni štampač +CONNECTOR_NETWORK_PRINT=Mrežni štampač +CONNECTOR_FILE_PRINT=Lokalni štampač +CONNECTOR_WINDOWS_PRINT=Lokalni Windows štampač +CONNECTOR_CUPS_PRINT=Cups Printer +CONNECTOR_DUMMY_HELP=Fiktivni štampač za testiranje +CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 +CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 +CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L +PROFILE_DEFAULT=Default profil +PROFILE_SIMPLE=Jednostavan profil +PROFILE_EPOSTEP=Eops Tep profil +PROFILE_P822D=P822D profil +PROFILE_STAR=Star profil +PROFILE_DEFAULT_HELP=Default profil namenjen Epson štampačima +PROFILE_SIMPLE_HELP=Jednostavan profil bez grafike +PROFILE_EPOSTEP_HELP=Eops Tep profil +PROFILE_P822D_HELP=P822D profil bez grafike +PROFILE_STAR_HELP=Star profil +DOL_LINE_FEED=Skip line +DOL_ALIGN_LEFT=Levo poravnanje teksta +DOL_ALIGN_CENTER=Centriranje teksta +DOL_ALIGN_RIGHT=Desno poravnanje teksta +DOL_USE_FONT_A=Korišćenje fonta A za štampač +DOL_USE_FONT_B=Korišćenje fonta B za štampač +DOL_USE_FONT_C=Korišćenje fonta C za štampač +DOL_PRINT_BARCODE=Štampanje bar koda +DOL_PRINT_BARCODE_CUSTOMER_ID=Štampanje bar koda za ID klijenta +DOL_CUT_PAPER_FULL=Potpuno sečenje tiketa +DOL_CUT_PAPER_PARTIAL=Delimično sečenje tiketa +DOL_OPEN_DRAWER=Otvaranje kase +DOL_ACTIVATE_BUZZER=Aktivacija alarma +DOL_PRINT_QRCODE=Štampanje QR koda +DOL_PRINT_LOGO=Print logo of my company +DOL_PRINT_LOGO_OLD=Print logo of my company (old printers) +DOL_BOLD=Bold +DOL_BOLD_DISABLED=Disable bold +DOL_DOUBLE_HEIGHT=Double height size +DOL_DOUBLE_WIDTH=Double width size +DOL_DEFAULT_HEIGHT_WIDTH=Default height and width size +DOL_UNDERLINE=Enable underline +DOL_UNDERLINE_DISABLED=Disable underline +DOL_BEEP=Beed sound +DOL_PRINT_TEXT=Print text +DOL_VALUE_DATE=Invoice date +DOL_VALUE_DATE_TIME=Invoice date and time +DOL_VALUE_YEAR=Invoice year +DOL_VALUE_MONTH_LETTERS=Invoice month in letters +DOL_VALUE_MONTH=Invoice month +DOL_VALUE_DAY=Invoice day +DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Invoice ref +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=Kapital +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/sr_RS/receptions.lang b/htdocs/langs/sr_RS/receptions.lang new file mode 100644 index 00000000000..40061426993 --- /dev/null +++ b/htdocs/langs/sr_RS/receptions.lang @@ -0,0 +1,45 @@ +# Dolibarr language file - Source file is en_US - receptions +ReceptionsSetup=Product Reception setup +RefReception=Ref. reception +Reception=Reception +Receptions=Receptions +AllReceptions=All Receptions +Reception=Reception +Receptions=Receptions +ShowReception=Show Receptions +ReceptionsArea=Receptions area +ListOfReceptions=List of receptions +ReceptionMethod=Reception method +LastReceptions=Latest %s receptions +StatisticsOfReceptions=Statistics for receptions +NbOfReceptions=Number of receptions +NumberOfReceptionsByMonth=Number of receptions by month +ReceptionCard=Reception card +NewReception=New reception +CreateReception=Create reception +QtyInOtherReceptions=Qty in other receptions +OtherReceptionsForSameOrder=Other receptions for this order +ReceptionsAndReceivingForSameOrder=Receptions and receipts for this order +ReceptionsToValidate=Receptions to validate +StatusReceptionCanceled=Poništeno +StatusReceptionDraft=Nacrt +StatusReceptionValidated=Potvrđeno (proizvodi za isporuku ili već isporučeni) +StatusReceptionProcessed=Procesuirano +StatusReceptionDraftShort=Nacrt +StatusReceptionValidatedShort=Potvrđen +StatusReceptionProcessedShort=Procesuirano +ReceptionSheet=Reception sheet +ConfirmDeleteReception=Are you sure you want to delete this reception? +ConfirmValidateReception=Are you sure you want to validate this reception with reference %s? +ConfirmCancelReception=Are you sure you want to cancel this reception? +StatsOnReceptionsOnlyValidated=Statistics conducted on receptions only validated. Date used is date of validation of reception (planed delivery date is not always known). +SendReceptionByEMail=Send reception by email +SendReceptionRef=Submission of reception %s +ActionsOnReception=Events on reception +ReceptionCreationIsDoneFromOrder=For the moment, creation of a new reception is done from the order card. +ReceptionLine=Reception line +ProductQtyInReceptionAlreadySent=Product quantity from open sales order already sent +ProductQtyInSuppliersReceptionAlreadyRecevied=Product quantity from open supplier order already received +ValidateOrderFirstBeforeReception=You must first validate the order before being able to make receptions. +ReceptionsNumberingModules=Numbering module for receptions +ReceptionsReceiptModel=Document templates for receptions diff --git a/htdocs/langs/sr_RS/stripe.lang b/htdocs/langs/sr_RS/stripe.lang new file mode 100644 index 00000000000..a80639d92a7 --- /dev/null +++ b/htdocs/langs/sr_RS/stripe.lang @@ -0,0 +1,72 @@ +# Dolibarr language file - Source file is en_US - stripe +StripeSetup=Stripe module setup +StripeDesc=Offer customers a Stripe online payment page for payments with credit/cebit cards via Stripe. This can be used to allow your customers to make ad-hoc payments or for payments related to a particular Dolibarr object (invoice, order, ...) +StripeOrCBDoPayment=Pay with credit card or Stripe +FollowingUrlAreAvailableToMakePayments=Sledeći URL-ovi mogu omogućiti klijentu da izvrši uplatu na Dolibarr objekte +PaymentForm=Forma za uplatu +WelcomeOnPaymentPage=Welcome to our online payment service +ThisScreenAllowsYouToPay=Ovaj ekran vam omogućava da izvršite online uplatu u korist %s +ThisIsInformationOnPayment=Ovo su informacije o uplati +ToComplete=Popuniti +YourEMail=Email za potvrdu uplate +STRIPE_PAYONLINE_SENDEMAIL=Email notification after a payment attempt (success or fail) +Creditor=Kreditor +PaymentCode=Kod uplate +StripeDoPayment=Pay with Stripe +YouWillBeRedirectedOnStripe=You will be redirected on secured Stripe page to input you credit card information +Continue=Dalje +ToOfferALinkForOnlinePayment=URL za %s uplatu +ToOfferALinkForOnlinePaymentOnOrder=URL to offer a %s online payment page for a sales order +ToOfferALinkForOnlinePaymentOnInvoice=URL to offer a %s online payment page for a customer invoice +ToOfferALinkForOnlinePaymentOnContractLine=URL to offer a %s online payment page for a contract line +ToOfferALinkForOnlinePaymentOnFreeAmount=URL to offer a %s online payment page of any amount with no existing object +ToOfferALinkForOnlinePaymentOnMemberSubscription=URL to offer a %s online payment page for a member subscription +ToOfferALinkForOnlinePaymentOnDonation=URL to offer a %s online payment page for payment of a donation +YouCanAddTagOnUrl=You can also add url parameter &tag=value to any of those URL (mandatory only for payment not linked to an object) to add your own payment comment tag.
    For the URL of payments with no existing object, you may also add the parameter &noidempotency=1 so the same link with same tag can be used several times (some payment mode may limit the payment to 1 for each different link without this parameter) +SetupStripeToHavePaymentCreatedAutomatically=Setup your Stripe with url %s to have payment created automatically when validated by Stripe. +AccountParameter=Parametri naloga +UsageParameter=Parametri korišćenja +InformationToFindParameters=Pomoć za pronalaženje informacije o Vašem %s nalogu +STRIPE_CGI_URL_V2=Url of Stripe CGI module for payment +VendorName=Ime prodavca +CSSUrlForPaymentForm=CSS url za formu za plaćanje +NewStripePaymentReceived=New Stripe payment received +NewStripePaymentFailed=New Stripe payment tried but failed +FailedToChargeCard=Failed to charge card +STRIPE_TEST_SECRET_KEY=Secret test key +STRIPE_TEST_PUBLISHABLE_KEY=Publishable test key +STRIPE_TEST_WEBHOOK_KEY=Webhook test key +STRIPE_LIVE_SECRET_KEY=Secret live key +STRIPE_LIVE_PUBLISHABLE_KEY=Publishable live key +STRIPE_LIVE_WEBHOOK_KEY=Webhook live key +ONLINE_PAYMENT_WAREHOUSE=Stock to use for stock decrease when online payment is done
    (TODO When option to decrease stock is done on an action on invoice and the online payment generate itself the invoice ?) +StripeLiveEnabled=Stripe live enabled (otherwise test/sandbox mode) +StripeImportPayment=Import Stripe payments +ExampleOfTestCreditCard=Example of credit card for test: %s => valid, %s => error CVC, %s => expired, %s => charge fails +StripeGateways=Stripe gateways +OAUTH_STRIPE_TEST_ID=Stripe Connect Client ID (ca_...) +OAUTH_STRIPE_LIVE_ID=Stripe Connect Client ID (ca_...) +BankAccountForBankTransfer=Bank account for fund payouts +StripeAccount=Stripe account +StripeChargeList=List of Stripe charges +StripeTransactionList=List of Stripe transactions +StripeCustomerId=Stripe customer id +StripePaymentModes=Stripe payment modes +LocalID=Local ID +StripeID=Stripe ID +NameOnCard=Name on card +CardNumber=Card Number +ExpiryDate=Expiry Date +CVN=CVN +DeleteACard=Delete Card +ConfirmDeleteCard=Are you sure you want to delete this Credit or Debit card? +CreateCustomerOnStripe=Create customer on Stripe +CreateCardOnStripe=Create card on Stripe +ShowInStripe=Show in Stripe +StripeUserAccountForActions=User account to use for email notification of some Stripe events (Stripe payouts) +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... +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/sr_RS/supplier_proposal.lang b/htdocs/langs/sr_RS/supplier_proposal.lang new file mode 100644 index 00000000000..d3857cc2787 --- /dev/null +++ b/htdocs/langs/sr_RS/supplier_proposal.lang @@ -0,0 +1,54 @@ +# Dolibarr language file - Source file is en_US - supplier_proposal +SupplierProposal=Vendor commercial proposals +supplier_proposalDESC=Updavljanje zahtevima za cene dobavljača +SupplierProposalNew=Novi zahtev za cenu +CommRequest=Zahtev za cenu +CommRequests=Zahtevi za cenu +SearchRequest=Pronađi zahtev +DraftRequests=Draft zahtevi +SupplierProposalsDraft=Draft vendor proposals +LastModifiedRequests=Najnoviji %s promenjeni zahtevi za cenu +RequestsOpened=Otvori zahteve za cenu +SupplierProposalArea=Vendor proposals area +SupplierProposalShort=Vendor proposal +SupplierProposals=Vendor proposals +SupplierProposalsShort=Vendor proposals +NewAskPrice=Novi zahtev za cenu +ShowSupplierProposal=Prikaži zahtev za cenu +AddSupplierProposal=Kreiraj zahtev za cenu +SupplierProposalRefFourn=Vendor ref +SupplierProposalDate=Datum isporuke +SupplierProposalRefFournNotice=Pre prelaska na "Prihvaćeno", zabeležte reference dobavljača. +ConfirmValidateAsk=Da li ste sigurni da želite da potvrdite ovaj zahtev za cenu pod imenom %s? +DeleteAsk=Obriši zahtev +ValidateAsk=Potvrdi zahtev +SupplierProposalStatusDraft=Nacrt (čeka na potvrdu) +SupplierProposalStatusValidated=Potvrđen (zahtev je otvoren) +SupplierProposalStatusClosed=Zatvoren +SupplierProposalStatusSigned=Prihvaćen +SupplierProposalStatusNotSigned=Odbijen +SupplierProposalStatusDraftShort=Nacrt +SupplierProposalStatusValidatedShort=Potvrđen +SupplierProposalStatusClosedShort=Zatvoren +SupplierProposalStatusSignedShort=Prihvaćen +SupplierProposalStatusNotSignedShort=Odbijen +CopyAskFrom=Create a price request by copying an existing request +CreateEmptyAsk=Kreiraj prazan zahtev +ConfirmCloneAsk=Da li ste sigurni da želite da napravite kopiju zahteva za cenu %s? +ConfirmReOpenAsk=Da li ste sigurni da želite da ponovo otvorite zahtev za cenu %s? +SendAskByMail=Pošalji zahtev za cenu mailom +SendAskRef=Slanje zahteva za cenu %s +SupplierProposalCard=Kartica zahteva +ConfirmDeleteAsk=Da li ste sigurni da želite da obrišete ovaj upit za cenu %s? +ActionsOnSupplierProposal=Događaji na zahtevu za cenu +DocModelAuroreDescription=Kompletan model zahteva (logo...) +CommercialAsk=Zahtev za cenu +DefaultModelSupplierProposalCreate=Default model za kreiranje +DefaultModelSupplierProposalToBill=Default template prilikom zatvaranja zahteva za cenu (prihvaćen) +DefaultModelSupplierProposalClosed=Default template prilikom zatvaranja zahteva za cenu (odbijen) +ListOfSupplierProposals=List of vendor proposal requests +ListSupplierProposalsAssociatedProject=List of vendor proposals associated with project +SupplierProposalsToClose=Vendor proposals to close +SupplierProposalsToProcess=Vendor proposals to process +LastSupplierProposals=Najnoviji %s upiti za cenu +AllPriceRequests=Svi zahtevi diff --git a/htdocs/langs/sr_RS/ticket.lang b/htdocs/langs/sr_RS/ticket.lang new file mode 100644 index 00000000000..9de7c3fceb3 --- /dev/null +++ b/htdocs/langs/sr_RS/ticket.lang @@ -0,0 +1,305 @@ +# en_US lang file for module ticket +# Copyright (C) 2013 Jean-François FERRY +# +# 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 . + +# +# Generic +# + +Module56000Name=Tickets +Module56000Desc=Ticket system for issue or request management + +Permission56001=See tickets +Permission56002=Modify tickets +Permission56003=Delete tickets +Permission56004=Manage tickets +Permission56005=See tickets of all third parties (not effective for external users, always be limited to the third party they depend on) + +TicketDictType=Ticket - Types +TicketDictCategory=Ticket - Groupes +TicketDictSeverity=Ticket - Severities +TicketDictResolution=Ticket - Resolution +TicketTypeShortBUGSOFT=Dysfonctionnement logiciel +TicketTypeShortBUGHARD=Dysfonctionnement matériel +TicketTypeShortCOM=Commercial question + +TicketTypeShortHELP=Request for functionnal help +TicketTypeShortISSUE=Issue, bug or problem +TicketTypeShortREQUEST=Change or enhancement request +TicketTypeShortPROJET=Projekat +TicketTypeShortOTHER=Drugo + +TicketSeverityShortLOW=Nizak +TicketSeverityShortNORMAL=Normal +TicketSeverityShortHIGH=Visok +TicketSeverityShortBLOCKING=Critical/Blocking + +ErrorBadEmailAddress=Field '%s' incorrect +MenuTicketMyAssign=My tickets +MenuTicketMyAssignNonClosed=My open tickets +MenuListNonClosed=Open tickets + +TypeContact_ticket_internal_CONTRIBUTOR=Saradnik +TypeContact_ticket_internal_SUPPORTTEC=Assigned user +TypeContact_ticket_external_SUPPORTCLI=Customer contact / incident tracking +TypeContact_ticket_external_CONTRIBUTOR=External contributor + +OriginEmail=Email source +Notify_TICKET_SENTBYMAIL=Send ticket message by email + +# Status +NotRead=Not read +Read=Pročitaj +Assigned=Assigned +InProgress=In progress +NeedMoreInformation=Waiting for information +Answered=Answered +Waiting=Na čekanju +Closed=Zatvoreno +Deleted=Deleted + +# Dict +Type=Tip +Category=Analytic code +Severity=Severity + +# Email templates +MailToSendTicketMessage=To send email from ticket message + +# +# Admin page +# +TicketSetup=Ticket module setup +TicketSettings=Settings +TicketSetupPage= +TicketPublicAccess=A public interface requiring no identification is available at the following url +TicketSetupDictionaries=The type of ticket, severity and analytic codes are configurable from dictionaries +TicketParamModule=Module variable setup +TicketParamMail=Email setup +TicketEmailNotificationFrom=Notification email from +TicketEmailNotificationFromHelp=Used into ticket message answer by example +TicketEmailNotificationTo=Notifications email to +TicketEmailNotificationToHelp=Send email notifications to this address. +TicketNewEmailBodyLabel=Text message sent after creating a ticket +TicketNewEmailBodyHelp=The text specified here will be inserted into the email confirming the creation of a new ticket from the public interface. Information on the consultation of the ticket are automatically added. +TicketParamPublicInterface=Public interface setup +TicketsEmailMustExist=Require an existing email address to create a ticket +TicketsEmailMustExistHelp=In the public interface, the email address should already be filled in the database to create a new ticket. +PublicInterface=Public interface +TicketUrlPublicInterfaceLabelAdmin=Alternative URL for public interface +TicketUrlPublicInterfaceHelpAdmin=It is possible to define an alias to the web server and thus make available the public interface with another URL (the server must act as a proxy on this new URL) +TicketPublicInterfaceTextHomeLabelAdmin=Welcome text of the public interface +TicketPublicInterfaceTextHome=You can create a support ticket or view existing from its identifier tracking ticket. +TicketPublicInterfaceTextHomeHelpAdmin=The text defined here will appear on the home page of the public interface. +TicketPublicInterfaceTopicLabelAdmin=Interface title +TicketPublicInterfaceTopicHelp=This text will appear as the title of the public interface. +TicketPublicInterfaceTextHelpMessageLabelAdmin=Help text to the message entry +TicketPublicInterfaceTextHelpMessageHelpAdmin=This text will appear above the message input area of the user. +ExtraFieldsTicket=Extra attributes +TicketCkEditorEmailNotActivated=HTML editor is not activated. Please put FCKEDITOR_ENABLE_MAIL content to 1 to get it. +TicketsDisableEmail=Do not send emails for ticket creation or message recording +TicketsDisableEmailHelp=By default, emails are sent when new tickets or messages created. Enable this option to disable *all* email notifications +TicketsLogEnableEmail=Enable log by email +TicketsLogEnableEmailHelp=At each change, an email will be sent **to each contact** associated with the ticket. +TicketParams=Params +TicketsShowModuleLogo=Display the logo of the module in the public interface +TicketsShowModuleLogoHelp=Enable this option to hide the logo module in the pages of the public interface +TicketsShowCompanyLogo=Display the logo of the company in the public interface +TicketsShowCompanyLogoHelp=Enable this option to hide the logo of the main company in the pages of the public interface +TicketsEmailAlsoSendToMainAddress=Also send notification to main email address +TicketsEmailAlsoSendToMainAddressHelp=Enable this option to send an email to "Notification email from" address (see setup below) +TicketsLimitViewAssignedOnly=Restrict the display to tickets assigned to the current user (not effective for external users, always be limited to the third party they depend on) +TicketsLimitViewAssignedOnlyHelp=Only tickets assigned to the current user will be visible. Does not apply to a user with tickets management rights. +TicketsActivatePublicInterface=Activate public interface +TicketsActivatePublicInterfaceHelp=Public interface allow any visitors to create tickets. +TicketsAutoAssignTicket=Automatically assign the user who created the ticket +TicketsAutoAssignTicketHelp=When creating a ticket, the user can be automatically assigned to the ticket. +TicketNumberingModules=Tickets numbering module +TicketNotifyTiersAtCreation=Notify third party at creation +TicketGroup=Grupa +TicketsDisableCustomerEmail=Always disable emails when a ticket is created from public interface +# +# Index & list page +# +TicketsIndex=Tickets area +TicketList=List of tickets +TicketAssignedToMeInfos=This page display ticket list created by or assigned to current user +NoTicketsFound=No ticket found +NoUnreadTicketsFound=No unread ticket found +TicketViewAllTickets=View all tickets +TicketViewNonClosedOnly=View only open tickets +TicketStatByStatus=Tickets by status +OrderByDateAsc=Sort by ascending date +OrderByDateDesc=Sort by descending date +ShowAsConversation=Show as conversation list +MessageListViewType=Show as table list + +# +# Ticket card +# +Ticket=Ticket +TicketCard=Ticket card +CreateTicket=Create ticket +EditTicket=Edit ticket +TicketsManagement=Tickets Management +CreatedBy=Created by +NewTicket=New Ticket +SubjectAnswerToTicket=Ticket answer +TicketTypeRequest=Request type +TicketCategory=Analytic code +SeeTicket=See ticket +TicketMarkedAsRead=Ticket has been marked as read +TicketReadOn=Read on +TicketCloseOn=Datum zatvaranja +MarkAsRead=Mark ticket as read +TicketHistory=Ticket history +AssignUser=Assign to user +TicketAssigned=Ticket is now assigned +TicketChangeType=Change type +TicketChangeCategory=Change analytic code +TicketChangeSeverity=Change severity +TicketAddMessage=Add a message +AddMessage=Add a message +MessageSuccessfullyAdded=Ticket added +TicketMessageSuccessfullyAdded=Message successfully added +TicketMessagesList=Message list +NoMsgForThisTicket=No message for this ticket +Properties=Classification +LatestNewTickets=Latest %s newest tickets (not read) +TicketSeverity=Severity +ShowTicket=See ticket +RelatedTickets=Related tickets +TicketAddIntervention=Kreiraj intervenciju +CloseTicket=Close ticket +CloseATicket=Close a ticket +ConfirmCloseAticket=Confirm ticket closing +ConfirmDeleteTicket=Please confirm ticket deleting +TicketDeletedSuccess=Ticket deleted with success +TicketMarkedAsClosed=Ticket marked as closed +TicketDurationAuto=Calculated duration +TicketDurationAutoInfos=Duration calculated automatically from intervention related +TicketUpdated=Ticket updated +SendMessageByEmail=Send message by email +TicketNewMessage=New message +ErrorMailRecipientIsEmptyForSendTicketMessage=Recipient is empty. No email send +TicketGoIntoContactTab=Please go into "Contacts" tab to select them +TicketMessageMailIntro=Introduction +TicketMessageMailIntroHelp=This text is added only at the beginning of the email and will not be saved. +TicketMessageMailIntroLabelAdmin=Introduction to the message when sending email +TicketMessageMailIntroText=Hello,
    A new response was sent on a ticket that you contact. Here is the message:
    +TicketMessageMailIntroHelpAdmin=This text will be inserted before the text of the response to a ticket. +TicketMessageMailSignature=Potpis +TicketMessageMailSignatureHelp=This text is added only at the end of the email and will not be saved. +TicketMessageMailSignatureText=

    Sincerely,

    --

    +TicketMessageMailSignatureLabelAdmin=Signature of response email +TicketMessageMailSignatureHelpAdmin=This text will be inserted after the response message. +TicketMessageHelp=Only this text will be saved in the message list on ticket card. +TicketMessageSubstitutionReplacedByGenericValues=Substitutions variables are replaced by generic values. +TimeElapsedSince=Time elapsed since +TicketTimeToRead=Time elapsed before read +TicketContacts=Contacts ticket +TicketDocumentsLinked=Documents linked to ticket +ConfirmReOpenTicket=Confirm reopen this ticket ? +TicketMessageMailIntroAutoNewPublicMessage=A new message was posted on the ticket with the subject %s: +TicketAssignedToYou=Ticket assigned +TicketAssignedEmailBody=You have been assigned the ticket #%s by %s +MarkMessageAsPrivate=Mark message as private +TicketMessagePrivateHelp=This message will not display to external users +TicketEmailOriginIssuer=Issuer at origin of the tickets +InitialMessage=Initial Message +LinkToAContract=Link to a contract +TicketPleaseSelectAContract=Select a contract +UnableToCreateInterIfNoSocid=Can not create an intervention when no third party is defined +TicketMailExchanges=Mail exchanges +TicketInitialMessageModified=Initial message modified +TicketMessageSuccesfullyUpdated=Message successfully updated +TicketChangeStatus=Change status +TicketConfirmChangeStatus=Confirm the status change: %s ? +TicketLogStatusChanged=Status changed: %s to %s +TicketNotNotifyTiersAtCreate=Not notify company at create +Unread=Unread +TicketNotCreatedFromPublicInterface=Not available. Ticket was not created from public interface. +PublicInterfaceNotEnabled=Public interface was not enabled +ErrorTicketRefRequired=Ticket reference name is required + +# +# Logs +# +TicketLogMesgReadBy=Ticket %s read by %s +NoLogForThisTicket=No log for this ticket yet +TicketLogAssignedTo=Ticket %s assigned to %s +TicketLogPropertyChanged=Ticket %s modified: classification from %s to %s +TicketLogClosedBy=Ticket %s closed by %s +TicketLogReopen=Ticket %s re-open + +# +# Public pages +# +TicketSystem=Ticket system +ShowListTicketWithTrackId=Display ticket list from track ID +ShowTicketWithTrackId=Display ticket from track ID +TicketPublicDesc=You can create a support ticket or check from an existing ID. +YourTicketSuccessfullySaved=Ticket has been successfully saved! +MesgInfosPublicTicketCreatedWithTrackId=A new ticket has been created with ID %s and Ref %s. +PleaseRememberThisId=Please keep the tracking number that we might ask you later. +TicketNewEmailSubject=Ticket creation confirmation - Ref %s (public ticket ID %s) +TicketNewEmailSubjectCustomer=New support ticket +TicketNewEmailBody=This is an automatic email to confirm you have registered a new ticket. +TicketNewEmailBodyCustomer=This is an automatic email to confirm a new ticket has just been created into your account. +TicketNewEmailBodyInfosTicket=Information for monitoring the ticket +TicketNewEmailBodyInfosTrackId=Ticket tracking number: %s +TicketNewEmailBodyInfosTrackUrl=You can view the progress of the ticket by clicking the link above. +TicketNewEmailBodyInfosTrackUrlCustomer=You can view the progress of the ticket in the specific interface by clicking the following link +TicketEmailPleaseDoNotReplyToThisEmail=Please do not reply directly to this email! Use the link to reply into the interface. +TicketPublicInfoCreateTicket=This form allows you to record a support ticket in our management system. +TicketPublicPleaseBeAccuratelyDescribe=Please accurately describe the problem. Provide the most information possible to allow us to correctly identify your request. +TicketPublicMsgViewLogIn=Please enter ticket tracking ID +TicketTrackId=Public Tracking ID +OneOfTicketTrackId=One of your tracking ID +ErrorTicketNotFound=Ticket with tracking ID %s not found! +Subject=Objekat +ViewTicket=View ticket +ViewMyTicketList=View my ticket list +ErrorEmailMustExistToCreateTicket=Error: email address not found in our database +TicketNewEmailSubjectAdmin=New ticket created - Ref %s (public ticket ID %s) +TicketNewEmailBodyAdmin=

    Ticket has just been created with ID #%s, see information:

    +SeeThisTicketIntomanagementInterface=See ticket in management interface +TicketPublicInterfaceForbidden=The public interface for the tickets was not enabled +ErrorEmailOrTrackingInvalid=Bad value for tracking ID or email +OldUser=Old user +NewUser=Novi korisnik +NumberOfTicketsByMonth=Number of tickets per month +NbOfTickets=Number of tickets +# notifications +TicketNotificationEmailSubject=Ticket %s updated +TicketNotificationEmailBody=This is an automatic message to notify you that ticket %s has just been updated +TicketNotificationRecipient=Notification recipient +TicketNotificationLogMessage=Log message +TicketNotificationEmailBodyInfosTrackUrlinternal=View ticket into interface +TicketNotificationNumberEmailSent=Notification email sent: %s + +ActionsOnTicket=Events on ticket + +# +# Boxes +# +BoxLastTicket=Latest created tickets +BoxLastTicketDescription=Latest %s created tickets +BoxLastTicketContent= +BoxLastTicketNoRecordedTickets=No recent unread tickets +BoxLastModifiedTicket=Latest modified tickets +BoxLastModifiedTicketDescription=Latest %s modified tickets +BoxLastModifiedTicketContent= +BoxLastModifiedTicketNoRecordedTickets=No recent modified tickets diff --git a/htdocs/langs/sr_RS/users.lang b/htdocs/langs/sr_RS/users.lang index 122c5389901..29da9e8dd7e 100644 --- a/htdocs/langs/sr_RS/users.lang +++ b/htdocs/langs/sr_RS/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Users and their properties DomainUser=Korisnik domena %s Reactivate=Reaktiviraj CreateInternalUserDesc=This form allows you to create an internal user in your company/organization. To create an external user (customer, vendor etc. ..), use the button 'Create Dolibarr User' from that third-party's contact card. -InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other.

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=Prava su dodeljena jer su nasleđena od jedne od korisnikovih grupa. Inherited=Nasleđeno UserWillBeInternalUser=Kreirani korisnik će biti interni korisnik (jer nije vezan za određeni subjekat) @@ -110,3 +110,8 @@ UserLogged=User logged DateEmployment=Employment Start Date DateEmploymentEnd=Employment End Date CantDisableYourself=You can't disable your own user record +ForceUserExpenseValidator=Force expense report validator +ForceUserHolidayValidator=Force leave request validator +ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/sr_RS/website.lang b/htdocs/langs/sr_RS/website.lang new file mode 100644 index 00000000000..eccc473274a --- /dev/null +++ b/htdocs/langs/sr_RS/website.lang @@ -0,0 +1,130 @@ +# Dolibarr language file - Source file is en_US - website +Shortname=Kod +WebsiteSetupDesc=Create here the websites you wish to use. Then go into menu Websites to edit them. +DeleteWebsite=Obrisati Web Sajt +ConfirmDeleteWebsite=Are you sure you want to delete this web site? All its pages and content will also be removed. The files uploaded (like into the medias directory, the ECM module, ...) will remain. +WEBSITE_TYPE_CONTAINER=Type of page/container +WEBSITE_PAGE_EXAMPLE=Web page to use as example +WEBSITE_PAGENAME=Page name/alias +WEBSITE_ALIASALT=Alternative page names/aliases +WEBSITE_ALIASALTDesc=Use here list of other name/aliases so the page can also be accessed using this other names/aliases (for example the old name after renaming the alias to keep backlink on old link/name working). Syntax is:
    alternativename1, alternativename2, ... +WEBSITE_CSS_URL=URL of external CSS file +WEBSITE_CSS_INLINE=CSS file content (common to all pages) +WEBSITE_JS_INLINE=Javascript file content (common to all pages) +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. +MediaFiles=Media library +EditCss=Edit website properties +EditMenu=Edit menu +EditMedias=Edit medias +EditPageMeta=Edit page/container properties +EditInLine=Edit inline +AddWebsite=Add website +Webpage=Web page/container +AddPage=Add page/container +HomePage=Home Page +PageContainer=Page/container +PreviewOfSiteNotYetAvailable=Preview of your website %s not yet available. You must first 'Import a full website template' or just 'Add a page/container'. +RequestedPageHasNoContentYet=Requested page with id %s has no content yet, or cache file .tpl.php was removed. Edit content of the page to solve this. +SiteDeleted=Web site '%s' deleted +PageContent=Page/Contenair +PageDeleted=Page/Contenair '%s' of website %s deleted +PageAdded=Page/Contenair '%s' added +ViewSiteInNewTab=View site in new tab +ViewPageInNewTab=View page in new tab +SetAsHomePage=Set as Home page +RealURL=Real URL +ViewWebsiteInProduction=View web site using home URLs +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: +YouCanAlsoTestWithPHPS=Use with PHP embedded server
    On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running
    php -S 0.0.0.0:8080 -t %s +YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org +CheckVirtualHostPerms=Check also that virtual host has permission %s on files into
    %s +ReadPerm=Pročitaj +WritePerm=Write +TestDeployOnWeb=Test/deploy on web +PreviewSiteServedByWebServer=Preview %s in a new tab.

    The %s will be served by an external web server (like Apache, Nginx, IIS). You must install and setup this server before to point to directory:
    %s
    URL served by external server:
    %s +PreviewSiteServedByDolibarr=Preview %s in a new tab.

    The %s will be served by Dolibarr server so it does not need any extra web server (like Apache, Nginx, IIS) to be installed.
    The inconvenient is that URL of pages are not user friendly and start with path of your Dolibarr.
    URL served by Dolibarr:
    %s

    To use your own external web server to serve this web site, create a virtual host on your web server that point on directory
    %s
    then enter the name of this virtual server and click on the other preview button. +VirtualHostUrlNotDefined=URL of the virtual host served by external web server not defined +NoPageYet=No pages yet +YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template +SyntaxHelp=Help on specific syntax tips +YouCanEditHtmlSourceckeditor=You can edit HTML source code using the "Source" button in editor. +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +ClonePage=Clone page/container +CloneSite=Clone site +SiteAdded=Website added +ConfirmClonePage=Please enter code/alias of new page and if it is a translation of the cloned page. +PageIsANewTranslation=The new page is a translation of the current page ? +LanguageMustNotBeSameThanClonedPage=You clone a page as a translation. The language of the new page must be different than language of source page. +ParentPageId=Parent page ID +WebsiteId=Website ID +CreateByFetchingExternalPage=Create page/container by fetching page from external URL... +OrEnterPageInfoManually=Or create page from scratch or from a page template... +FetchAndCreate=Fetch and Create +ExportSite=Export website +ImportSite=Import website template +IDOfPage=Id of page +Banner=Banner +BlogPost=Blog post +WebsiteAccount=Website account +WebsiteAccounts=Website accounts +AddWebsiteAccount=Create web site account +BackToListForThirdParty=Back to list for the third-party +DisableSiteFirst=Disable website first +MyContainerTitle=My web site title +AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) +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 +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. +OnlyEditionOfSourceForGrabbedContent=Only edition of HTML source is possible when content was grabbed from an external site +GrabImagesInto=Grab also images found into css and page. +ImagesShouldBeSavedInto=Images should be saved into directory +WebsiteRootOfImages=Root directory for website images +SubdirOfPage=Sub-directory dedicated to page +AliasPageAlreadyExists=Alias page %s already exists +CorporateHomePage=Corporate Home page +EmptyPage=Empty page +ExternalURLMustStartWithHttp=External URL must start with http:// or https:// +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 +ThisPageHasTranslationPages=This page/container has translation +NoWebSiteCreateOneFirst=No website has been created yet. Create one first. +GoTo=Go to +DynamicPHPCodeContainsAForbiddenInstruction=You add dynamic PHP code that contains the PHP instruction '%s' that is forbidden by default as dynamic content (see hidden options WEBSITE_PHP_ALLOW_xxx to increase list of allowed commands). +NotAllowedToAddDynamicContent=You don't have permission to add or edit PHP dynamic content in websites. Ask permission or just keep code into php tags unmodified. +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 +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. +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. +Dynamiccontent=Sample of a page with dynamic content +ImportSite=Import website template +EditInLineOnOff=Mode 'Edit inline' is %s +ShowSubContainersOnOff=Mode to execute 'dynamic content' is %s +GlobalCSSorJS=Global CSS/JS/Header file of web site +BackToHomePage=Back to home page... +TranslationLinks=Translation links +YouTryToAccessToAFileThatIsNotAWebsitePage=You try to access to a page that is not a website page +UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 characters +MainLanguage=Main language +OtherLanguages=Other languages +UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/sr_RS/zapier.lang b/htdocs/langs/sr_RS/zapier.lang new file mode 100644 index 00000000000..6d6eda71313 --- /dev/null +++ b/htdocs/langs/sr_RS/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr module + +# +# Admin page +# +ZapierForDolibarrSetup = Setup of Zapier for Dolibarr diff --git a/htdocs/langs/sv_SE/accountancy.lang b/htdocs/langs/sv_SE/accountancy.lang index b7fe55b406e..3d220a365ab 100644 --- a/htdocs/langs/sv_SE/accountancy.lang +++ b/htdocs/langs/sv_SE/accountancy.lang @@ -121,6 +121,7 @@ InvoiceLinesDone=Bundet linjer med fakturor ExpenseReportLines=Kostnadsberäkningar rapporterar att förbinda ExpenseReportLinesDone=Förbundna utgiftsrapporter IntoAccount=Bind rad med bokföringskonto +TotalForAccount=Total for accounting account Ventilate=Binda @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Redovisningskonto för att registrera donationer ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Redovisningskonto för att registrera prenumerationer ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_ACCOUNT=Bokföringskonto som standard för de sålda produkterna (används om de inte anges i produktbladet) ACCOUNTING_PRODUCT_SOLD_INTRA_ACCOUNT=Accounting account by default for the products sold in EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported out of EEC (used if not defined in the product sheet) + ACCOUNTING_SERVICE_BUY_ACCOUNT=Bokföringskonto som standard för de köpta tjänsterna (används om det inte anges i servicebladet) +ACCOUNTING_SERVICE_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_ACCOUNT=Redovisningskonto som standard för de sålda tjänsterna (används om de inte anges i servicebladet) ACCOUNTING_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unkno ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Okänt tredje part konto och väntande konto inte definierat. Blockeringsfel PaymentsNotLinkedToProduct=Betalning som inte är kopplad till någon produkt / tjänst +OpeningBalance=Opening balance ShowOpeningBalance=Show opening balance HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Grupp av konto PcgtypeDesc=Group 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. +Reconcilable=Reconcilable + TotalVente=Total turnover before tax TotalMarge=Total försäljning marginal @@ -307,11 +317,13 @@ 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Exportera CSV konfigurerbar Modelcsv_FEC=Export FEC Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Diagram över konton Id ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Mode försäljning OptionModeProductSellIntra=Mode sales exported in EEC OptionModeProductSellExport=Mode sales exported in other countries OptionModeProductBuy=Mode inköp +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries OptionModeProductSellDesc=Visa alla produkter med bokföringskonto för försäljning. OptionModeProductSellIntraDesc=Show all products with accounting account for sales in EEC. OptionModeProductSellExportDesc=Show all products with accounting account for other foreign sales. OptionModeProductBuyDesc=Visa alla produkter med bokföringskonto för inköp. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=Ta bort bokföringskoden från rader som inte finns i kontoplaner CleanHistory=Återställ alla bindningar för valt år PredefinedGroups=Fördefinierade grupper @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Konto borttaget från grupp SaleLocal=Local sale SaleExport=Export sale SaleEEC=Sale in EEC +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=Räckvidd av bokföringskonto diff --git a/htdocs/langs/sv_SE/admin.lang b/htdocs/langs/sv_SE/admin.lang index 18b2269d80c..6327c33d771 100644 --- a/htdocs/langs/sv_SE/admin.lang +++ b/htdocs/langs/sv_SE/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Webbserver användare / grupp NoSessionFound=Din PHP-konfiguration verkar inte tillåta att du registrerar aktiva sessioner. Den katalog som används för att spara sessioner ( %s ) kan skyddas (till exempel av operatörsbehörigheter eller genom PHP-direktivet open_basedir). DBStoringCharset=Databas charset för att lagra data DBSortingCharset=Databas charset att sortera data +HostCharset=Host charset ClientCharset=Klientcharset ClientSortingCharset=Klientsamling WarningModuleNotActive=Modul %s måste vara aktiverat @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Obs! din konfiguration för PHP begränsar för NoMaxSizeByPHPLimit=Obs: Ingen gräns som anges i din PHP konfiguration MaxSizeForUploadedFiles=Maximala storleken för uppladdade filer (0 att förkasta varje uppladdning) UseCaptchaCode=Använd grafisk kod (CAPTCHA) på inloggningssidan -AntiVirusCommand= Fullständiga sökvägen till antivirus kommandot -AntiVirusCommandExample= Exempel för ClamWin: C: \\ Program Files (x86) \\ ClamWin \\ bin \\ clamscan.exe
    Exempel för clamav: / usr / bin / clamscan +AntiVirusCommand=Fullständiga sökvägen till antivirus kommandot +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= Fler parametrar på kommandoraden -AntiVirusParamExample= Exempel för ClamWin - databas = "C: \\ Program Files (x86) \\ ClamWin \\ lib" +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=Redovisning modul inställning UserSetup=Användarens hantering inställning MultiCurrencySetup=Multi-valuta inställning @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Funktion avstängd i demo FeatureAvailableOnlyOnStable=Funktionen är endast tillgänglig på officiella stabila versioner BoxesDesc=Widgets är komponenter som visar lite information som du kan lägga till för att anpassa vissa sidor. Du kan välja mellan att visa widgeten eller inte, genom att välja målsida och klicka på "Aktivera", eller genom att klicka på papperskorgen för att inaktivera den. OnlyActiveElementsAreShown=Endast delar av aktiverade moduler visas. -ModulesDesc=Modulerna / programmen bestämmer vilka funktioner som finns i programvaran. Vissa moduler kräver att behörigheter beviljas användare efter aktivering av modulen. Klicka på på / av-knappen (vid slutet av modullinjen) för att aktivera / inaktivera en modul / applikation. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. ModulesMarketPlaceDesc=Du kan hitta fler moduler att ladda ner på externa webbplatser på Internet ... ModulesDeployDesc=Om behörigheter i ditt filsystem tillåter det kan du använda det här verktyget för att distribuera en extern modul. Modulen kommer då att visas på fliken %s . ModulesMarketPlaces=Hitta externa app / moduler @@ -212,6 +213,7 @@ CompatibleUpTo=Kompatibel med version %s NotCompatible=Den här modulen verkar inte vara kompatibel med din Dolibarr %s (Min %s - Max %s). CompatibleAfterUpdate=Den här modulen kräver en uppdatering av din Dolibarr %s (Min %s - Max %s). SeeInMarkerPlace=Se på marknaden +SeeSetupOfModule=See setup of module %s Updated=Uppdaterad Nouveauté=Nyhet AchatTelechargement=Köp / Hämta @@ -221,6 +223,7 @@ DoliPartnersDesc=Lista över företag som tillhandahåller anpassade moduler ell WebSiteDesc=Externa webbplatser för fler moduler utan tillägg... DevelopYourModuleDesc=Några lösningar för att utveckla din egen modul ... URL=URL +RelativeURL=Relative URL BoxesAvailable=Widgets tillgängliga BoxesActivated=Widgets aktiverade ActivateOn=Aktivera på @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Kryssrutor ExtrafieldCheckBoxFromList=Kryssrutor från bordet ExtrafieldLink=Länk till ett objekt ComputedFormula=Beräknat fält -ComputedFormulaDesc=Du kan ange här en formel med andra objektegenskaper eller någon PHP-kodning för att få ett dynamiskt beräknat värde. Du kan använda alla PHP-kompatibla formler inklusive "?" tillståndsoperatör och följande globala objekt: $ db, $ conf, $ längd, $ mysoc, $ user, $ object .
    VARNING : Endast vissa egenskaper på $ -objekt kan vara tillgängliga. Om du behöver en egenskap inte laddad, hämta bara objektet i din formel som i det andra exemplet.
    Med ett beräknat fält kan du inte ange något värde från gränssnittet själv. Om det också finns ett syntaxfel kan inte formeln returnera någonting.

    Exempel på formel:
    $ objekt-> id < 10 ? round($object-> id / 2, 2): ($ objekt-> id + 2 * $ användar-> id) * (int) substr ($ mysoc-> zip, 1, 2 )

    Exempel på att ladda objektet
    (($ reloadedobj = new Societe ($ db)) && ($ reloadedobj-> hämta ($ obj-> id? $ Obj-> id: ($ obj-> rowid? $ Obj- > rowid: $ object-> id))> 0))? $ reloadedobj-> array_options ['options_extrafieldkey'] * $ reloadedobj-> kapital / 5: '-1'

    Ett annat exempel på formel för att tvinga belastning av objekt och dess moderobjekt:
    (($ reloadedobj = new Task ($ db )) && ($ reloadedobj-> hämta ($ object-> id)> 0) && ($ secondloadedobj = nytt projekt ($ db)) && ($ secondloadedobj-> hämta ($ reloadedobj-> fk_project)> 0))? $ secondloadedobj-> ref: 'Föräldraprojekt hittades inte' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Store computed field ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! ExtrafieldParamHelpPassword=Om du lämnar fältet tomt betyder det att detta värde kommer att sparas utan kryptering (fältet måste bara döljas med stjärnan på skärmen).
    Ange 'auto' för att använda standardkrypteringsregeln för att spara lösenord i databasen (då är läsningsvärde endast ett hash, inget sätt att hämta originalvärdet) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Lämna tom för standardvärde DefaultLink=Standardlänk SetAsDefault=Ange som standard ValueOverwrittenByUserSetup=Varning, kan detta värde skrivas över av användarspecifik installation (varje användare kan ställa in sin egen clicktodial url) -ExternalModule=Extern modul - Installerad i katalogen %s +ExternalModule=External module +InstalledInto=Installed into directory %s BarcodeInitForthird-parties=Mass streckkod init för tredje part BarcodeInitForProductsOrServices=Mass streckkod init eller återställning efter produkter eller tjänster CurrentlyNWithoutBarCode=För närvarande har du %s rader på %s %s utan steckkod angett. @@ -947,7 +951,7 @@ DictionaryCanton=Stater / Provinser DictionaryRegion=Regioner DictionaryCountry=Länder DictionaryCurrency=Valutor -DictionaryCivility=Behörighetens namn +DictionaryCivility=Honorific titles DictionaryActions=Typer av agendahändelser DictionarySocialContributions=Typer av sociala eller skattemässiga skatter DictionaryVAT=Moms Priser och Sales Tax Rates @@ -988,6 +992,7 @@ VATIsNotUsedDesc=Den föreslagna försäljningsskatten är som standard 0 som ka VATIsUsedExampleFR=I Frankrike betyder det att företag eller organisationer har ett riktigt finanssystem (förenklad verklig eller normal verklig). Ett system där momsen deklareras. VATIsNotUsedExampleFR=I Frankrike betyder det föreningar som inte är Försäljningsskatt deklarerade eller företag, organisationer eller liberala yrken som har valt mikroföretagets skattesystem (Försäljningsskatt i franchise) och betalat en franchise Försäkringsskatt utan någon momsdeklaration. Detta val kommer att visa referensen "Ej tillämplig Försäljningsskatt - art-293B av CGI" på fakturor. ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=Betyg LocalTax1IsNotUsed=Använd inte andra skatte LocalTax1IsUsedDesc=Använd en andra typ av skatt (annan än den första) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=IRPF-räntan som standard när du skapar prospekt, fakturo LocalTax2IsNotUsedDescES=Som standard föreslås IRPF är 0. Slut på regeln. LocalTax2IsUsedExampleES=I Spanien, frilansare och oberoende yrkesutövare som tillhandahåller tjänster och företag som har valt skattesystemet i moduler. LocalTax2IsNotUsedExampleES=I Spanien är de företag som inte omfattas av skattesystem för moduler. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=Rapporter om lokala skatter CalcLocaltax1=Försäljning - Inköp CalcLocaltax1Desc=Lokala skatter rapporter beräknas med skillnaden mellan localtaxes försäljning och localtaxes inköp @@ -1018,6 +1026,7 @@ CalcLocaltax2=Inköp CalcLocaltax2Desc=Lokala skatter rapporter är summan av localtaxes inköp CalcLocaltax3=Försäljning CalcLocaltax3Desc=Lokala skatter rapporter är summan av localtaxes försäljning +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=Etikett som används som standard om ingen översättning kan hittas för kod LabelOnDocuments=Etikett på dokument LabelOrTranslationKey=Etikett eller översättningstangent @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Utläggsrapport att godkänna Delays_MAIN_DELAY_HOLIDAYS=Leave requests to approve SetupDescription1=Innan du börjar använda Dolibarr måste vissa initialparametrar definieras och moduler aktiveras / konfigureras. SetupDescription2=Följande två avsnitt är obligatoriska (de två första inmatningarna i inställningsmenyn): -SetupDescription3=  %s -> %s
    Grundläggande parametrar som används för att anpassa standardbeteendet för din applikation (t.ex. för landrelaterade funktioner). -SetupDescription4=  %s -> %s
    Denna programvara är en serie med många moduler / applikationer, allt mer eller mindre oberoende. Modulerna som är relevanta för dina behov måste aktiveras och konfigureras. Nya objekt / alternativ läggs till i menyer med aktivering av en modul. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. SetupDescription5=Andra inställningsmenyposter hanterar valfria parametrar. LogEvents=Säkerhetsgranskning evenemang Audit=Revision @@ -1128,7 +1137,7 @@ LogEventDesc=Aktivera loggning för specifika säkerhetshändelser. Administrat AreaForAdminOnly=Inställningsparametrar kan ställas in av endast administratörs användare . SystemInfoDesc=System information diverse teknisk information får du i skrivskyddad läge och synlig för administratörer bara. SystemAreaForAdminOnly=Det här området är endast tillgängligt för administratörsanvändare. Dolibarr användarbehörigheter kan inte ändra denna begränsning. -CompanyFundationDesc=Edit the information of the company/entity. Click on "%s" button at the bottom of the page. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. AccountantFileNumber=Accountant code DisplayDesc=Parametrar som påverkar utseende och beteende hos Dolibarr kan ändras här. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Regler för att generera och bekräfta lösenord DisableForgetPasswordLinkOnLogonPage=Visa inte länken "Glömt lösenord" på sidan Inloggning UsersSetup=Användare modul inställning UserMailRequired=E-post krävs för att skapa en ny användare +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### HRMSetup=Inställning av HRM-modulen ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Faktura dokument modeller BillsPDFModulesAccordindToInvoiceType=Faktura dokumentmodeller enligt fakturatyp PaymentsPDFModules=Betalningsdokumentmodeller ForceInvoiceDate=Force fakturadatum till giltighetsdatum -SuggestedPaymentModesIfNotDefinedInInvoice=Föreslagna betalningar läge på faktura som standard om inte definierat för faktura +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice SuggestPaymentByRIBOnAccount=Föreslå betalning genom uttag på konto SuggestPaymentByChequeToAddress=Föreslå betalning med check till FreeLegalTextOnInvoices=Fri text på fakturor @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Inställningar för leverantörsbetalningar PropalSetup=Kommersiella förslag modul inställning ProposalsNumberingModules=Kommersiella förslag numrering moduler ProposalsPDFModules=Kommersiella förslag dokument modeller -SuggestedPaymentModesIfNotDefinedInProposal=Förslag till betalningsläge på förslag som standard om det inte är definierat för förslag +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal FreeLegalTextOnProposal=Fri text på affärsförslag WatermarkOnDraftProposal=Vattenstämpel på utkast till affärsförslag (ingen om tom) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Be om bankkonto destination förslag @@ -1322,6 +1334,7 @@ WAREHOUSE_ASK_WAREHOUSE_DURING_ORDER=Be om lagerkälla för order ##### Suppliers Orders ##### BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_ORDER=Be om kontokortdestination för inköpsorder ##### Orders ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=Försäljningsorderhanteringsinställningar OrdersNumberingModules=Beställningar numrering moduler OrdersModelModule=Beställ dokument modeller @@ -1720,7 +1733,7 @@ MultiCompanySetup=Multi-bolag modul inställning ##### Suppliers ##### SuppliersSetup=Inställning av leverantörsmodul SuppliersCommandModel=Complete template of Purchase Order -SuppliersCommandModelMuscadet=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) SuppliersInvoiceModel=Complete template of Vendor Invoice SuppliersInvoiceNumberingModel=Leverantörsfakturor nummereringsmodeller IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Dölj bilder i toppmenyn LeftMenuBackgroundColor=Bakgrundsfärg för vänstermenyn BackgroundTableTitleColor=Bakgrundsfärg för tabellens titellinje BackgroundTableTitleTextColor=Textfärg för tabellens titellinje +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Bakgrundsfärg för udda bords linjer BackgroundTableLineEvenColor=Bakgrundsfärg för ännu bords linjer MinimumNoticePeriod=Minsta varseltid (Din ledighet begäran måste göras innan denna försening) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Dolibarr Reference not found in Message ID FormatZip=Zip MainMenuCode=Menyinmatningskod (huvudmeny) ECMAutoTree=Visa automatiskt ECM-träd -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. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Öppettider OpeningHoursDesc=Ange här företagets vanliga öppettider. ResourceSetup=Konfiguration av resursmodulen @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Varning, högre värden sänker dramati ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Exportmodeller delas med alla ExportSetup=Inställning av modul Export +ImportSetup=Setup of module Import InstanceUniqueID=Unikt ID för förekomsten SmallerThan=Mindre än LargerThan=Större än @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled EmailTemplate=Template for email EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/sv_SE/bills.lang b/htdocs/langs/sv_SE/bills.lang index d802fcefff9..2cd69dd8394 100644 --- a/htdocs/langs/sv_SE/bills.lang +++ b/htdocs/langs/sv_SE/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Leverantörer fakturor SupplierBill=Leverantörsfaktura SupplierBills=leverantörer fakturor Payment=Betalning -PaymentBack=Betalning tillbaka -CustomerInvoicePaymentBack=Betalning tillbaka +PaymentBack=Refund +CustomerInvoicePaymentBack=Refund Payments=Betalningar PaymentsBack=Refunds paymentInInvoiceCurrency=i faktura valuta PaidBack=Återbetald DeletePayment=Radera betalning ConfirmDeletePayment=Är du säker på att du vill radera denna betalning? -ConfirmConvertToReduc=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. -ConfirmConvertToReducSupplier=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. SupplierPayments=Leverantörsbetalningar ReceivedPayments=Mottagna betalningar @@ -209,17 +209,13 @@ NumberOfBillsByMonth=Antal fakturor per månad AmountOfBills=Belopp för fakturor AmountOfBillsHT=Mängden fakturor (utan skatt) AmountOfBillsByMonthHT=Mängd av fakturor per månad (netto efter skatt) -ShowSocialContribution=Visa social / skattemässig skatt -ShowBill=Visa faktura -ShowInvoice=Visa faktura -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 +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=To pay on %s toPayOn=to pay on %s RetainedWarranty=Retained Warranty @@ -230,7 +226,6 @@ 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 AlreadyPaidNoCreditNotesNoDeposits=Redan betalad (utan kreditnoteringar och nedbetalningar) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Generated from template invoice %s WarningInvoiceDateInFuture=Varning, fakturadatumet är högre än aktuellt datum WarningInvoiceDateTooFarInFuture=Varning, fakturadatumet är för långt från det aktuella datumet ViewAvailableGlobalDiscounts=Visa lediga rabatter +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Status PaymentConditionShortRECEP=Förfaller vid kvitto @@ -509,7 +505,7 @@ ToMakePayment=Betala ToMakePaymentBack=Återbetala ListOfYourUnpaidInvoices=Lista över obetalda fakturor NoteListOfYourUnpaidInvoices=OBS: Denna lista innehåller bara fakturor för tredje parti som du är kopplade till som en försäljning representant. -RevenueStamp=Intäkt stämpel +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=Det här alternativet är endast tillgängligt när du skapar en faktura från fliken "Kund" från tredje part YouMustCreateInvoiceFromSupplierThird=Det här alternativet är endast tillgängligt när du skapar en faktura från fliken "Leverantör" till tredje part YouMustCreateStandardInvoiceFirstDesc=Du måste först skapa en standardfaktura och konvertera den till "mall" för att skapa en ny mallfaktura @@ -575,3 +571,4 @@ AutoFillDateTo=Ange slutdatum för servicelinje med nästa fakturadatum AutoFillDateToShort=Ange slutdatum MaxNumberOfGenerationReached=Max antal gen. nådde BILL_DELETEInDolibarr=Faktura deleted +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/sv_SE/blockedlog.lang b/htdocs/langs/sv_SE/blockedlog.lang index 192f1020baa..480f38a923d 100644 --- a/htdocs/langs/sv_SE/blockedlog.lang +++ b/htdocs/langs/sv_SE/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Oföränderliga loggar ShowAllFingerPrintsMightBeTooLong=Visa alla arkiverade loggar (kan vara långa) ShowAllFingerPrintsErrorsMightBeTooLong=Visa alla icke-giltiga arkivloggar (kan vara långa) DownloadBlockChain=Ladda ner fingeravtryck -KoCheckFingerprintValidity=Arkiverad loggpost är inte giltig. Det betyder att någon (en hackare?) Har ändrat vissa data av det här reet efter det har spelats in eller har raderat den tidigare arkiverade posten (kontrollera den raden med tidigare # existerar). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Arkiverad loggpost är giltig. Uppgifterna på den här raden ändrades inte och posten följer den föregående. OkCheckFingerprintValidityButChainIsKo=Arkiverad logg verkar giltig jämfört med tidigare men kedjan förstördes tidigare. AddedByAuthority=Lagras i fjärrmyndighet diff --git a/htdocs/langs/sv_SE/cashdesk.lang b/htdocs/langs/sv_SE/cashdesk.lang index 37ff85fd139..9db8feed413 100644 --- a/htdocs/langs/sv_SE/cashdesk.lang +++ b/htdocs/langs/sv_SE/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Lägg till den här artikeln RestartSelling=Gå tillbaka på sälj SellFinished=Försäljning avslutad PrintTicket=Skriv ut biljetten +SendTicket=Send ticket NoProductFound=Ingen artikel hittades ProductFound=Produkt hittad NoArticle=Ingen artikel @@ -48,6 +49,7 @@ Footer=sidfot AmountAtEndOfPeriod=Belopp vid periodens utgång (dag, månad eller år) TheoricalAmount=Teoretisk mängd RealAmount=Verklig mängd +CashFence=Cash fence CashFenceDone=Kassaskydd gjord för perioden NbOfInvoices=Antal av fakturor Paymentnumpad=Typ av kudde för att komma in i betalningen @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS behöver produktkategorier för att fungera OrderNotes=Beställ anteckningar CashDeskBankAccountFor=Standardkonto som ska användas för betalningar i NoPaimementModesDefined=Inget paimentläge definierat i TakePOS-konfiguration -TicketVatGrouped=Grupp moms enligt sats i biljetter -AutoPrintTickets=Skriv ut biljetter automatiskt +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Aktivera funktioner för bar eller restaurang ConfirmDeletionOfThisPOSSale=Bekräftar du att du har raderat den aktuella försäljningen? ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? @@ -87,7 +90,19 @@ HeadBar=Head Bar SortProductField=Field for sorting products Browser=Webbläsare BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/sv_SE/companies.lang b/htdocs/langs/sv_SE/companies.lang index 1061325c921..28d99141d05 100644 --- a/htdocs/langs/sv_SE/companies.lang +++ b/htdocs/langs/sv_SE/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted=Företaget "%s" raderad från databasen. ListOfContacts=Lista med kontakter / adresser ListOfContactsAddresses=Lista med kontakter / adresser ListOfThirdParties=Förteckning över tredjeparter -ShowCompany=Visa tredjepart ShowContact=Visa kontakt ContactsAllShort=Alla (inget filter) ContactType=Kontakttyp @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=Förnamn på försäljningsrepresentant SaleRepresentativeLastname=Efternamn för försäljare ErrorThirdpartiesMerge=Ett fel uppstod vid borttagning av tredjepart. Kontrollera loggen. Ändringar har återställts. NewCustomerSupplierCodeProposed=Kunder eller leverantörskod som redan används, föreslås en ny kod +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Betalningstyp - Kund PaymentTermsCustomer=Betalningsvillkor - Kund diff --git a/htdocs/langs/sv_SE/compta.lang b/htdocs/langs/sv_SE/compta.lang index 18229edd1cf..defa9852e23 100644 --- a/htdocs/langs/sv_SE/compta.lang +++ b/htdocs/langs/sv_SE/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=Se %sanalys av payments%s för en beräkning av fakti SeeReportInDueDebtMode=Se %sanalys av fakturor%s för en beräkning baserad på kända inspelade fakturor, även om de ännu inte är redovisade i huvudboken. SeeReportInBookkeepingMode=Se %sBokföringsrapport%s för en beräkning på Bokföring huvudboken tabell RulesAmountWithTaxIncluded=- Belopp som visas är med alla skatter inkluderade -RulesResultDue=- Det inkluderar utestående fakturor, utgifter, moms, donationer om de betalas eller inte. Ingår även betalda löner.
    - Det baseras på datum för bekräftande för fakturor och moms och på förfallodagen för utgifter. För löner som definieras med lönemodul används värdet för betalningen. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- Det inkluderar de reala betalningarna på fakturor, utgifter, moms och löner.
    - Det baseras på fakturadatum för fakturor, utgifter, moms och löner. Donationsdatum för donation. -RulesCADue=- Det inkluderar kundens fakturaer om de betalas eller inte.
    - Det baseras på bekräftandesdatumet för dessa fakturor.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- Det inkluderar alla effektiva betalningar av fakturor som mottagits från kunder.
    - Det är baserat på betalningsdatum för dessa fakturor
    RulesCATotalSaleJournal=Den innehåller alla kreditlinjer från försäljningsloggboken. RulesAmountOnInOutBookkeepingRecord=Det innehåller post i din huvudboken med bokföringskonto som har gruppen "EXPENSE" eller "INCOME" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Omsättning fakturerad med försäljningsskattesats TurnoverCollectedbyVatrate=Omsättning upptagen med försäljningsskattesats PurchasebyVatrate=Inköp med försäljningsskattesats LabelToShow=Short label +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/sv_SE/donations.lang b/htdocs/langs/sv_SE/donations.lang index 7d01404238c..902ed742443 100644 --- a/htdocs/langs/sv_SE/donations.lang +++ b/htdocs/langs/sv_SE/donations.lang @@ -5,23 +5,23 @@ DonationRef=Donation ref. Donor=Givare AddDonation=Skapa en donation NewDonation=Ny donation -DeleteADonation=Delete a donation -ConfirmDeleteADonation=Are you sure you want to delete this donation? -ShowDonation=Visa donation +DeleteADonation=Ta bort en gåva +ConfirmDeleteADonation=Är du säker att du vill ta bort denna gåva? PublicDonation=Offentliga donation DonationsArea=Donationer område DonationStatusPromiseNotValidated=Förslag löfte -DonationStatusPromiseValidated=Validerad löfte +DonationStatusPromiseValidated=Bekräftat löfte DonationStatusPaid=Donation fått DonationStatusPromiseNotValidatedShort=Förslag -DonationStatusPromiseValidatedShort=Validerad +DonationStatusPromiseValidatedShort=Bekräftat DonationStatusPaidShort=Mottagna DonationTitle=Donation kvitto +DonationDate=Donation date DonationDatePayment=Betalningsdag -ValidPromess=Validate löfte +ValidPromess=Bekräfta löfte DonationReceipt=Donation kvitto DonationsModels=Dokument modeller för donation kvitton -LastModifiedDonations=Latest %s modified donations +LastModifiedDonations=Senast %s ändrade gåvor DonationRecipient=Donation mottagaren IConfirmDonationReception=Mottagaren förklarar mottagning, som en donation, av följande belopp MinimumAmount=Minsta belopp är% s @@ -30,5 +30,5 @@ FrenchOptions=Alternativ för Frankrike DONATION_ART200=Visar artikel 200 från CGI om du är orolig DONATION_ART238=Visar artikel 238 från CGI om du är orolig DONATION_ART885=Visar artikel 885 från CGI om du är orolig -DonationPayment=Donation payment -DonationValidated=Donation %s validated +DonationPayment=Donation +DonationValidated=Gåva %s bekräftad diff --git a/htdocs/langs/sv_SE/errors.lang b/htdocs/langs/sv_SE/errors.lang index 86bfc3d9a3d..b96d1461a0e 100644 --- a/htdocs/langs/sv_SE/errors.lang +++ b/htdocs/langs/sv_SE/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=Handlingar den mottagit inte helt av server. ErrorNoTmpDir=Tillfälliga directy %s inte existerar. ErrorUploadBlockedByAddon=Ladda upp blockeras av en PHP / Apache plugin. ErrorFileSizeTooLarge=Filen är för stor. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Storlek för lång för int typ (%s siffror max) ErrorSizeTooLongForVarcharType=Storlek för lång för sträng typ (%s tecken max) ErrorNoValueForSelectType=Vänligen fyll i värde för utvald lista @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # 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. diff --git a/htdocs/langs/sv_SE/install.lang b/htdocs/langs/sv_SE/install.lang index 491874ee286..cdce0b03cda 100644 --- a/htdocs/langs/sv_SE/install.lang +++ b/htdocs/langs/sv_SE/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=Detta PHP stöder Curl. PHPSupportCalendar=This PHP supports calendars extensions. PHPSupportUTF8=Detta PHP stöder UTF8 funktioner. PHPSupportIntl=Detta PHP stöder Intl-funktioner. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=This PHP supports %s functions. PHPMemoryOK=Din PHP max session minne är inställt på %s. Detta bör vara nog. PHPMemoryTooLow=Ditt PHP max-sessionminne är inställt på %s bytes. Detta är för lågt. Ändra din php.ini för att ställa in memory_limit parameter till minst %s bytes. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=Din PHP-installation stöder inte Curl. ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. ErrorPHPDoesNotSupportUTF8=Din PHP-installation stöder inte UTF8-funktioner. Dolibarr kan inte fungera korrekt. Lös det här innan du installerar Dolibarr. ErrorPHPDoesNotSupportIntl=Din PHP-installation stöder inte Intl-funktioner. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. ErrorDirDoesNotExists=Nummer %s finns inte. ErrorGoBackAndCorrectParameters=Gå tillbaka och kontrollera / korrigera parametrarna. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=Applikationen försökte självuppgradera, men in YouTryInstallDisabledByFileLock=Applikationen försökte självuppgradera, men installations- / uppgraderingssidorna har inaktiverats för säkerhet (genom att det finns en låsfil install.lock i katalogen dolibarr documents).
    ClickHereToGoToApp=Klicka här för att gå till din ansökan ClickOnLinkOrRemoveManualy=Klicka på följande länk. Om du alltid ser samma sida måste du ta bort / byta namn på filen install.lock i dokumentkatalogen. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/sv_SE/interventions.lang b/htdocs/langs/sv_SE/interventions.lang index 80a62cd5fd6..82dedf51bb9 100644 --- a/htdocs/langs/sv_SE/interventions.lang +++ b/htdocs/langs/sv_SE/interventions.lang @@ -12,11 +12,11 @@ AllInterventions=Alla insatser CreateDraftIntervention=Skapa utkast InterventionContact=Insatskontakt DeleteIntervention=Ta bort insats -ValidateIntervention=Validera insats +ValidateIntervention=Bekräfta insats ModifyIntervention=Ändra insats DeleteInterventionLine=Ta bort insats linje ConfirmDeleteIntervention=Är du säker på att du vill radera detta insats? -ConfirmValidateIntervention=Är du säker på att du vill validera detta insats under namnet %s ? +ConfirmValidateIntervention=Är du säker på att du vill bekräfta detta insats under namnet %s ? ConfirmModifyIntervention=Är du säker på att du vill ändra detta insats? ConfirmDeleteInterventionLine=Är du säker på att du vill ta bort denna interventionslinje? ConfirmCloneIntervention=Är du säker på att du vill klona detta insats? @@ -24,14 +24,14 @@ NameAndSignatureOfInternalContact=Namn och underskrift av intervenient: NameAndSignatureOfExternalContact=Kundens namn och underskrift: DocumentModelStandard=Standarddokument modell för insatser InterventionCardsAndInterventionLines=Insats och linjer av interventioner -InterventionClassifyBilled=Klassificera "Fakturerad" +InterventionClassifyBilled=Märk "Fakturerad" InterventionClassifyUnBilled=Classify "ofakturerade" -InterventionClassifyDone=Klassificera "klar" +InterventionClassifyDone=Märk "klar" StatusInterInvoiced=Fakturerade SendInterventionRef=Inlämning av insats %s SendInterventionByMail=Skicka insats via e-post InterventionCreatedInDolibarr=Insats %s skapad -InterventionValidatedInDolibarr=Insats %s validerade +InterventionValidatedInDolibarr=Insats %s bekräftades InterventionModifiedInDolibarr=Insats %s modifierade InterventionClassifiedBilledInDolibarr=Insats %s uppsättning som faktureras InterventionClassifiedUnbilledInDolibarr=Insats %s uppsättning som ofakturerade @@ -41,9 +41,7 @@ InterventionsArea=Insatssområde DraftFichinter=Utkast till ingripanden LastModifiedInterventions=Senaste %s modifierade interventioner FichinterToProcess=Insatser för att bearbeta -##### Types de contacts ##### TypeContact_fichinter_external_CUSTOMER=Uppföljning kundkontakt -# Modele numérotation PrintProductsOnFichinter=Skriv även rader av typen "produkt" (inte bara tjänster) på interventionskortet PrintProductsOnFichinterDetails=Insatser skapade utifrån order UseServicesDurationOnFichinter=Använd tjänstens varaktighet för interventioner som genereras av order @@ -51,16 +49,18 @@ UseDurationOnFichinter=Döljer varaktighetsfältet för interventionsposter UseDateWithoutHourOnFichinter=Döljer timmar och minuter från datumfältet för interventionsrekord InterventionStatistics=Statistik över interventioner NbOfinterventions=Antal interventionskort -NumberOfInterventionsByMonth=Antal interventionskort per månad (datum för validering) +NumberOfInterventionsByMonth=Antal interventionskort per månad (datum för bekräftande) AmountOfInteventionNotIncludedByDefault=Antalet ingripanden ingår inte som standard i vinst (i de flesta fall används tidtabeller för att räkna upp tid). Lägg till alternativ PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT till 1 i heminställningar-andra för att inkludera dem. -##### Exports ##### InterId=Insatss id InterRef=Insatss ref. InterDateCreation=Datum skapande insats InterDuration=Varaktighetsintervention InterStatus=Statusintervention InterNote=Observera insats +InterLine=Line of intervention InterLineId=Line id insats InterLineDate=Linjedatumintervention InterLineDuration=Linjens längdintervention InterLineDesc=Linjebeskrivningsintervention +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/sv_SE/link.lang b/htdocs/langs/sv_SE/link.lang index 2abbb488f14..123ec53d089 100644 --- a/htdocs/langs/sv_SE/link.lang +++ b/htdocs/langs/sv_SE/link.lang @@ -8,3 +8,4 @@ LinkRemoved=Länken %s har tagits bort ErrorFailedToDeleteLink= Det gick inte att ta bort länk '%s' ErrorFailedToUpdateLink= Det gick inte att uppdatera länken '%s' URLToLink=URL för länk +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/sv_SE/mails.lang b/htdocs/langs/sv_SE/mails.lang index b9b24d111c8..0ba4ba088f7 100644 --- a/htdocs/langs/sv_SE/mails.lang +++ b/htdocs/langs/sv_SE/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=Ingen kontakt / adress med en kategori hittad NoContactLinkedToThirdpartieWithCategoryFound=Ingen kontakt / adress med en kategori hittad OutGoingEmailSetup=Utgående e-postinstallation InGoingEmailSetup=Inkommande e-postinstallation -OutGoingEmailSetupForEmailing=Utgående e-postuppsättning (för massmailing) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Standard utgående e-postinstallation Information=Information ContactsWithThirdpartyFilter=Kontakter med filter från tredje part diff --git a/htdocs/langs/sv_SE/main.lang b/htdocs/langs/sv_SE/main.lang index 0e50639d12d..96783492da5 100644 --- a/htdocs/langs/sv_SE/main.lang +++ b/htdocs/langs/sv_SE/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Save and stay SaveAndNew=Save and new TestConnection=Testa anslutning ToClone=Klon +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Välj data du vill klona: NoCloneOptionsSpecified=Inga uppgifter att klona definierade. Of=av @@ -829,6 +830,8 @@ Gender=Kön Genderman=Man Genderwoman=Kvinna ViewList=Visa lista +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Obligatorisk Hello=Hallå GoodBye=Adjö @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Select your graph options to build a graph Measures=Measures XAxis=X-Axis YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/sv_SE/modulebuilder.lang b/htdocs/langs/sv_SE/modulebuilder.lang index f44ffbf299a..389bdf6fbf1 100644 --- a/htdocs/langs/sv_SE/modulebuilder.lang +++ b/htdocs/langs/sv_SE/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=List of dictionaries entries ListOfPermissionsDefined=Lista över definierade behörigheter SeeExamples=Se exempel här EnabledDesc=Villkor att ha detta fält aktivt (Exempel: 1 eller $ conf-> global-> MYMODULE_MYOPTION) -VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update). Using a negative value means field is not shown by default on list but can be selected for viewing). It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty DisplayOnPdf=Display on PDF IsAMeasureDesc=Kan värdet av fält ackumuleras för att få en total i listan? (Exempel: 1 eller 0) SearchAllDesc=Är fältet används för att göra en sökning från snabbsökningsverktyget? (Exempel: 1 eller 0) diff --git a/htdocs/langs/sv_SE/multicurrency.lang b/htdocs/langs/sv_SE/multicurrency.lang new file mode 100644 index 00000000000..979b14693c6 --- /dev/null +++ b/htdocs/langs/sv_SE/multicurrency.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Flera valutor +ErrorAddRateFail=Fel i tilläggspris +ErrorAddCurrencyFail=Fel i tilläggsvaluta +ErrorDeleteCurrencyFail=Radering misslyckades +multicurrency_syncronize_error=Synkroniseringsfel: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Använd datumet för dokumentet för att hitta valutakursen istället för att använda den senast kända kursen +multicurrency_useOriginTx=När ett objekt skapas från en annan, behåll originalfrekvensen från källobjektet (använd annars den senast kända kursen) +CurrencyLayerAccount=CurrencyLayer API +CurrencyLayerAccount_help_to_synchronize=You must create an account on website %s to use this functionality.
    Get your API key.
    If you use a free account, you can't change the source currency (USD by default).
    If your main currency is not USD, the application will automatically recalculate it.

    You are limited to 1000 synchronizations per month. +multicurrency_appId=API-nyckel +multicurrency_appCurrencySource=Source currency +multicurrency_alternateCurrencySource=Alternate source currency +CurrenciesUsed=Valutor som används +CurrenciesUsed_help_to_add=Lägg till de olika valutorna och priserna du behöver använda på dina förslag , beställer etc. +rate=Betygsätta +MulticurrencyReceived=Mottagen, ursprunglig valuta +MulticurrencyRemainderToTake=Återstående belopp, ursprunglig valuta +MulticurrencyPaymentAmount=Betalningsbelopp, ursprunglig valuta +AmountToOthercurrency=Belopp till (i valuta för mottagande konto) +CurrencyRateSyncSucceed=Currency rate synchronization done successfuly +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Use the currency of the document for online payments diff --git a/htdocs/langs/sv_SE/other.lang b/htdocs/langs/sv_SE/other.lang index 9eeffcccdb4..f26e71b3a70 100644 --- a/htdocs/langs/sv_SE/other.lang +++ b/htdocs/langs/sv_SE/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Försäljningsorder bekräftat Notify_ORDER_SENTBYMAIL=Försäljningsorder skickad via post Notify_ORDER_SUPPLIER_SENTBYMAIL=Beställningsorder skickad via e-post @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=Webbadressen WEBSITE_TITLE=Titel WEBSITE_DESCRIPTION=Beskrivning WEBSITE_IMAGE=Bild -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Nyckelord LinesToImport=Rader att importera diff --git a/htdocs/langs/sv_SE/products.lang b/htdocs/langs/sv_SE/products.lang index b6d4440a3e5..8e916fcbdf3 100644 --- a/htdocs/langs/sv_SE/products.lang +++ b/htdocs/langs/sv_SE/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=Detta verktyg uppdaterar mervärdesskattesatsen som def MassBarcodeInit=Massvis streckkodinitiering MassBarcodeInitDesc=Denna sida kan användas för att initialisera en streckkod på objekt som inte har någon streckkod definierad. Kontrollera först att streckkodsmodulen har fullständiga inställningar. ProductAccountancyBuyCode=Redovisningskod (köp) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Redovisningskod (försäljning) ProductAccountancySellIntraCode=Redovisningskod (försäljning inom gemenskapen) ProductAccountancySellExportCode=Redovisningskod (försäljningsexport) @@ -165,7 +167,7 @@ SuppliersPrices=Leverantörspriser SuppliersPricesOfProductsOrServices=Leverantörspriser (av produkter eller tjänster) CustomCode=Tull / Varu / HS-kod CountryOrigin=Ursprungsland -Nature=Nature of produt (material/finished) +Nature=Nature of product (material/finished) ShortLabel=Kort etikett Unit=Enhet p=u. diff --git a/htdocs/langs/sv_SE/projects.lang b/htdocs/langs/sv_SE/projects.lang index 1b943aef3cc..2e85ebe40ef 100644 --- a/htdocs/langs/sv_SE/projects.lang +++ b/htdocs/langs/sv_SE/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=which I'm linked to project Time=Tid ListOfTasks=Lista över uppgifter GoToListOfTimeConsumed=Gå till listan över tidskrävt -GoToListOfTasks=Show as list -GoToGanttView=show as Gantt GanttView=Gantt View ListProposalsAssociatedProject=Förteckning över de kommersiella förslagen relaterade till projektet ListOrdersAssociatedProject=Förteckning över försäljningsorder relaterade till projektet @@ -188,7 +186,7 @@ PlannedWorkload=Planerad arbetsbelastning PlannedWorkloadShort=Arbetsbelastning ProjectReferers=Relaterade saker ProjectMustBeValidatedFirst=Projekt måste bekräftas först -FirstAddRessourceToAllocateTime=Tilldela en användarresurs till uppgift för att allokera tid +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=Ingång per dag InputPerWeek=Ingång per vecka InputPerMonth=Input per month @@ -240,6 +238,7 @@ LatestModifiedProjects=Senaste %s modifierade projekten OtherFilteredTasks=Andra filtrerade uppgifter NoAssignedTasks=Inga tilldelade uppgifter hittades (tilldela projekt / uppgifter till den nuvarande användaren från den övre väljrutan för att ange tid på det) ThirdPartyRequiredToGenerateInvoice=En tredje part måste definieras på projekt för att kunna fakturera det. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=Tillåt användar kommentarer på uppgifter AllowCommentOnProject=Tillåt användar kommentarer på projekt @@ -256,7 +255,7 @@ ServiceToUseOnLines=Service att använda på linjer InvoiceGeneratedFromTimeSpent=Faktura %s har genererats från tid till projekt ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. ProjectFollowOpportunity=Follow opportunity -ProjectFollowTasks=Follow tasks +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Usage: Opportunity UsageTasks=Usage: Tasks @@ -265,3 +264,4 @@ InvoiceToUse=Draft invoice to use NewInvoice=Ny faktura OneLinePerTask=One line per task OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/sv_SE/receiptprinter.lang b/htdocs/langs/sv_SE/receiptprinter.lang index 50c2ff73257..b4e931e94a2 100644 --- a/htdocs/langs/sv_SE/receiptprinter.lang +++ b/htdocs/langs/sv_SE/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Dummy-skrivare CONNECTOR_NETWORK_PRINT=Nätverksskrivare CONNECTOR_FILE_PRINT=Lokal skrivare CONNECTOR_WINDOWS_PRINT=Lokal Windows-skrivare +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Fake Printer för test, gör ingenting CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x: 9100 CONNECTOR_FILE_PRINT_HELP=/ dev / usb / lp0, / dev / usb / lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb: // FooUser: hemligt @ datornamn / arbetsgrupp / mottagningsskrivare +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Standardprofil PROFILE_SIMPLE=Enkel profil PROFILE_EPOSTEP=Epos Tep Profile @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Invoice month in letters DOL_VALUE_MONTH=Invoice month DOL_VALUE_DAY=Invoice day DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Faktura ref +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=Kapital +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/sv_SE/stripe.lang b/htdocs/langs/sv_SE/stripe.lang index 7d7cd49c57f..e4e1a522be6 100644 --- a/htdocs/langs/sv_SE/stripe.lang +++ b/htdocs/langs/sv_SE/stripe.lang @@ -32,6 +32,7 @@ VendorName=Namn på leverantör CSSUrlForPaymentForm=CSS-formatmall URL för inbetalningskort NewStripePaymentReceived=Ny Stripbetalning mottagen NewStripePaymentFailed=Ny Stripbetalning försökte men misslyckades +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Hemlig testnyckel STRIPE_TEST_PUBLISHABLE_KEY=Publicerbar testnyckel STRIPE_TEST_WEBHOOK_KEY=Webhook testnyckel @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mo 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... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authenticatin rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/sv_SE/users.lang b/htdocs/langs/sv_SE/users.lang index 7c65184e1da..36c4c77529d 100644 --- a/htdocs/langs/sv_SE/users.lang +++ b/htdocs/langs/sv_SE/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Användare och deras egenskaper DomainUser=Domän användare %s Reactivate=Återaktivera CreateInternalUserDesc=I det här formuläret kan du skapa en intern användare i ditt företag / organisation. För att skapa en extern användare (kund, leverantör etc.), använd knappen "Create Dolibarr User" från den tredje partens kontaktkort. -InternalExternalDesc=En intern användare är en användare som ingår i ditt företag / organisation.
    En extern användare är en kund, leverantör eller annan.

    I båda fallen definierar behörigheter rättigheter på Dolibarr, även extern användare kan ha en annan menyhanterare än intern användare (Se Hem - Inställning - Display) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=Tillstånd beviljas, eftersom ärvt från en av en användares grupp. Inherited=Ärvda UserWillBeInternalUser=Skapad användare kommer att vara en intern användare (eftersom inte kopplade till en viss tredje part) @@ -109,4 +109,9 @@ UserLogoff=Användarutloggning UserLogged=Användare loggad DateEmployment=Anställningens startdatum DateEmploymentEnd=Anställningens slutdatum -CantDisableYourself=You can't disable your own user record +CantDisableYourself=Du kan inte inaktivera din egen användarrekord +ForceUserExpenseValidator=Force expense report validator +ForceUserHolidayValidator=Force leave request validator +ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/sv_SE/website.lang b/htdocs/langs/sv_SE/website.lang index 9f7c08790bb..4c5b8940623 100644 --- a/htdocs/langs/sv_SE/website.lang +++ b/htdocs/langs/sv_SE/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=Visa sida i ny flik SetAsHomePage=Sätt som hemsida RealURL=Verklig URL ViewWebsiteInProduction=Visa webbplats med hjälp av hemadresser -SetHereVirtualHost= Använd med Apache / NGinx / ...
    Om du kan skapa, på din webbserver (Apache, Nginx, ...), en dedikerad Virtual Host med PHP aktiverad och en Root-katalog på
    %s
    sedan ställa in namnet på den virtuella värd som du har skapat i egenskaperna hos webbplatsen, så förhandsgranskningen kan också göras med hjälp av den här dedicerade webbserveråtkomsten i stället för den interna Dolibarr-servern. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS=  Använd med PHP-inbäddad server
    På utvecklingsmiljö kan du föredra att testa webbplatsen med PHP-inbäddad webbserver (PHP 5.5 krävs) genom att köra
    php -S 0.0.0.0:8080 -t %s YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org CheckVirtualHostPerms=Kontrollera också att virtuell värd har tillstånd %s på filer i
    %s @@ -56,7 +57,7 @@ NoPageYet=Inga sidor ännu YouCanCreatePageOrImportTemplate=Du kan skapa en ny sida eller importera en fullständig webbplatsmall SyntaxHelp=Hjälp med specifika syntaxtips YouCanEditHtmlSourceckeditor=Du kan redigera HTML-källkod med knappen "Källa" i redigeraren. -YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Klona sida / behållare CloneSite=Klona webbplatsen SiteAdded=Webbplats tillagd @@ -76,7 +77,7 @@ BlogPost=Blogginlägg WebsiteAccount=Webbsida konto WebsiteAccounts=Webbsida konton AddWebsiteAccount=Skapa webbplatskonto -BackToListOfThirdParty=Tillbaka till listan för tredje part +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Inaktivera webbplats först MyContainerTitle=Min webbplatstitel AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Sorry, this website is currently off line. Please WEBSITE_USE_WEBSITE_ACCOUNTS=Aktivera webbsidokontotabellen WEBSITE_USE_WEBSITE_ACCOUNTSTooltip=Aktivera tabellen för att lagra webbplatskonton (inloggning / överföring) för varje webbplats / tredje part YouMustDefineTheHomePage=Du måste först definiera standard startsida -OnlyEditionOfSourceForGrabbedContentFuture=Varning: Skapa en webbsida genom att importera en extern webbsida är reserverad för erfarna användare. Beroende på källsidans komplexitet kan resultatet av importen skilja sig från originalet. Även om källsidan använder vanliga CSS-format eller motstridigt javascript kan det bryta utseendet eller funktionerna på webbplatsredigeraren när du arbetar på den här sidan. Den här metoden är ett snabbare sätt att skapa en sida men det rekommenderas att du skapar din nya sida från början eller från en föreslagen sidmall.
    Observera att redigeringar av HTML-källan kommer att vara möjliga när sidinnehållet har initierats genom att ta tag i det från en extern sida ("Online" -redigeraren kommer INTE att vara tillgänglig) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Endast upplagan av HTML-källan är möjlig när innehållet greppades från en extern webbplats GrabImagesInto=Ta även bilder som finns i css och sidan. ImagesShouldBeSavedInto=Bilder ska sparas i katalogen @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 ch MainLanguage=Main language OtherLanguages=Other languages UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/sv_SE/zapier.lang b/htdocs/langs/sv_SE/zapier.lang new file mode 100644 index 00000000000..6d6eda71313 --- /dev/null +++ b/htdocs/langs/sv_SE/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr module + +# +# Admin page +# +ZapierForDolibarrSetup = Setup of Zapier for Dolibarr diff --git a/htdocs/langs/sw_SW/accountancy.lang b/htdocs/langs/sw_SW/accountancy.lang index 1f9382137ea..b8ce37a0956 100644 --- a/htdocs/langs/sw_SW/accountancy.lang +++ b/htdocs/langs/sw_SW/accountancy.lang @@ -121,6 +121,7 @@ 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 +TotalForAccount=Total for accounting account Ventilate=Bind @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Accounting account to register donations ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (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 products sold in EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported 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_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (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_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unkno ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error PaymentsNotLinkedToProduct=Payment not linked to any product / service +OpeningBalance=Opening balance ShowOpeningBalance=Show opening balance HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Group of account PcgtypeDesc=Group 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. +Reconcilable=Reconcilable + TotalVente=Total turnover before tax TotalMarge=Total sales margin @@ -307,11 +317,13 @@ 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Chart of accounts Id ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC OptionModeProductSellExport=Mode sales exported in other countries OptionModeProductBuy=Mode purchases +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries 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. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=Remove accounting code from lines that not exists into charts of account CleanHistory=Reset all bindings for selected year PredefinedGroups=Predefined groups @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Account removed from group SaleLocal=Local sale SaleExport=Export sale SaleEEC=Sale in EEC +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=Range of accounting account diff --git a/htdocs/langs/sw_SW/admin.lang b/htdocs/langs/sw_SW/admin.lang index 2f36c876c1a..7eb67d7a4ab 100644 --- a/htdocs/langs/sw_SW/admin.lang +++ b/htdocs/langs/sw_SW/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Web server user/group NoSessionFound=Your PHP configuration seems to not allow listing of active sessions. The directory used to save sessions (%s) may be protected (for example by OS permissions or by PHP directive open_basedir). DBStoringCharset=Database charset to store data DBSortingCharset=Database charset to sort data +HostCharset=Host charset ClientCharset=Client charset ClientSortingCharset=Client collation WarningModuleNotActive=Module %s must be enabled @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the NoMaxSizeByPHPLimit=Note: No limit is set in your PHP configuration MaxSizeForUploadedFiles=Maximum size for uploaded files (0 to disallow any upload) UseCaptchaCode=Use graphical code (CAPTCHA) on login page -AntiVirusCommand= Full path to antivirus command -AntiVirusCommandExample= Example for ClamWin: c:\\Progra~1\\ClamWin\\bin\\clamscan.exe
    Example for ClamAv: /usr/bin/clamscan +AntiVirusCommand=Full path to antivirus command +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= More parameters on command line -AntiVirusParamExample= Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=Accounting module setup UserSetup=User management setup MultiCurrencySetup=Multi-currency setup @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Feature disabled in demo FeatureAvailableOnlyOnStable=Feature only available on official stable versions BoxesDesc=Widgets are components showing some information that you can add to personalize some pages. You can choose between showing the widget or not by selecting target page and clicking 'Activate', or by clicking the trashcan to disable it. OnlyActiveElementsAreShown=Only elements from enabled modules are shown. -ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button (at end of module line) to enable/disable a module/application. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. ModulesMarketPlaceDesc=You can find more modules to download on external websites on the Internet... ModulesDeployDesc=If permissions on your file system allow it, you can use this tool to deploy an external module. The module will then be visible on the tab %s. ModulesMarketPlaces=Find external app/modules @@ -212,6 +213,7 @@ CompatibleUpTo=Compatible with version %s NotCompatible=This module does not seem compatible with your Dolibarr %s (Min %s - Max %s). CompatibleAfterUpdate=This module requires an update to your Dolibarr %s (Min %s - Max %s). SeeInMarkerPlace=See in Market place +SeeSetupOfModule=See setup of module %s Updated=Updated Nouveauté=Novelty AchatTelechargement=Buy / Download @@ -221,6 +223,7 @@ DoliPartnersDesc=List of companies providing custom-developed modules or feature WebSiteDesc=External websites for more add-on (non-core) modules... DevelopYourModuleDesc=Some solutions to develop your own module... URL=URL +RelativeURL=Relative URL BoxesAvailable=Widgets available BoxesActivated=Widgets activated ActivateOn=Activate on @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Checkboxes ExtrafieldCheckBoxFromList=Checkboxes from table ExtrafieldLink=Link to an object ComputedFormula=Computed field -ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Store computed field ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! ExtrafieldParamHelpPassword=Leaving this field blank means this value will be stored without encryption (field must be only hidden with star on screen).
    Set 'auto' to use the default encryption rule to save password into database (then value read will be the hash only, no way to retrieve original value) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Keep empty to use default value DefaultLink=Default link SetAsDefault=Set as default ValueOverwrittenByUserSetup=Warning, this value may be overwritten by user specific setup (each user can set his own clicktodial url) -ExternalModule=External module - Installed into directory %s +ExternalModule=External module +InstalledInto=Installed into directory %s BarcodeInitForthird-parties=Mass barcode init for third-parties BarcodeInitForProductsOrServices=Mass barcode init or reset for products or services CurrentlyNWithoutBarCode=Currently, you have %s record on %s %s without barcode defined. @@ -947,7 +951,7 @@ DictionaryCanton=States/Provinces DictionaryRegion=Regions DictionaryCountry=Countries DictionaryCurrency=Currencies -DictionaryCivility=Title of civility +DictionaryCivility=Honorific titles DictionaryActions=Types of agenda events DictionarySocialContributions=Types of social or fiscal taxes DictionaryVAT=VAT Rates or Sales Tax Rates @@ -988,6 +992,7 @@ VATIsNotUsedDesc=By default the proposed Sales tax is 0 which can be used for ca VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=Rate LocalTax1IsNotUsed=Do not use second tax LocalTax1IsUsedDesc=Use a second type of tax (other than first one) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices LocalTax2IsNotUsedDescES=By default the proposed IRPF is 0. End of rule. LocalTax2IsUsedExampleES=In Spain, freelancers and independent professionals who provide services and companies who have chosen the tax system of modules. LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=Reports on local taxes CalcLocaltax1=Sales - Purchases CalcLocaltax1Desc=Local Taxes reports are calculated with the difference between localtaxes sales and localtaxes purchases @@ -1018,6 +1026,7 @@ CalcLocaltax2=Purchases CalcLocaltax2Desc=Local Taxes reports are the total of localtaxes purchases CalcLocaltax3=Sales CalcLocaltax3Desc=Local Taxes reports are the total of localtaxes sales +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=Label used by default if no translation can be found for code LabelOnDocuments=Label on documents LabelOrTranslationKey=Label or translation key @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Expense report to approve Delays_MAIN_DELAY_HOLIDAYS=Leave requests 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. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. SetupDescription5=Other Setup menu entries manage optional parameters. LogEvents=Security audit events Audit=Audit @@ -1128,7 +1137,7 @@ LogEventDesc=Enable logging for specific security events. Administrators the log AreaForAdminOnly=Setup parameters can be set by administrator users only. SystemInfoDesc=System information is miscellaneous technical information you get in read only mode and visible for administrators only. SystemAreaForAdminOnly=This area is available to administrator users only. Dolibarr user permissions cannot change this restriction. -CompanyFundationDesc=Edit the information of the company/entity. Click on "%s" button at the bottom of the page. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. AccountantFileNumber=Accountant code DisplayDesc=Parameters affecting the look and behaviour of Dolibarr can be modified here. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Rules to generate and validate passwords DisableForgetPasswordLinkOnLogonPage=Do not show the "Password Forgotten" link on the Login page UsersSetup=Users module setup UserMailRequired=Email required to create a new user +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### HRMSetup=HRM module setup ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Invoice documents models BillsPDFModulesAccordindToInvoiceType=Invoice documents models according to invoice type PaymentsPDFModules=Payment documents models ForceInvoiceDate=Force invoice date to validation date -SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined for invoice +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice SuggestPaymentByRIBOnAccount=Suggest payment by withdrawal on account SuggestPaymentByChequeToAddress=Suggest payment by check to FreeLegalTextOnInvoices=Free text on invoices @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Vendor payments setup PropalSetup=Commercial proposals module setup ProposalsNumberingModules=Commercial proposal numbering models ProposalsPDFModules=Commercial proposal documents models -SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined for proposal +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal FreeLegalTextOnProposal=Free text on commercial proposals WatermarkOnDraftProposal=Watermark on draft commercial proposals (none if empty) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal @@ -1322,6 +1334,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 ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=Sales Orders management setup OrdersNumberingModules=Orders numbering models OrdersModelModule=Order documents models @@ -1720,7 +1733,7 @@ MultiCompanySetup=Multi-company module setup ##### Suppliers ##### SuppliersSetup=Vendor module setup SuppliersCommandModel=Complete template of Purchase Order -SuppliersCommandModelMuscadet=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) SuppliersInvoiceModel=Complete template of Vendor Invoice SuppliersInvoiceNumberingModel=Vendor invoices numbering models IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Hide images in Top menu LeftMenuBackgroundColor=Background color for Left menu BackgroundTableTitleColor=Background color for Table title line BackgroundTableTitleTextColor=Text color for Table title line +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Background color for odd table lines BackgroundTableLineEvenColor=Background color for even table lines MinimumNoticePeriod=Minimum notice period (Your leave request must be done before this delay) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Dolibarr Reference not found in Message ID FormatZip=Zip MainMenuCode=Menu entry code (mainmenu) ECMAutoTree=Show automatic ECM tree -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. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Opening hours OpeningHoursDesc=Enter here the regular opening hours of your company. ResourceSetup=Configuration of Resource module @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramatical ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export +ImportSetup=Setup of module Import InstanceUniqueID=Unique ID of the instance SmallerThan=Smaller than LargerThan=Larger than @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled EmailTemplate=Template for email EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/sw_SW/assets.lang b/htdocs/langs/sw_SW/assets.lang new file mode 100644 index 00000000000..ef04723c6c2 --- /dev/null +++ b/htdocs/langs/sw_SW/assets.lang @@ -0,0 +1,65 @@ +# Copyright (C) 2018 Alexandre Spangaro +# +# 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 . + +# +# Generic +# +Assets = Assets +NewAsset = New asset +AccountancyCodeAsset = Accounting code (asset) +AccountancyCodeDepreciationAsset = Accounting code (depreciation asset account) +AccountancyCodeDepreciationExpense = Accounting code (depreciation expense account) +NewAssetType=New asset type +AssetsTypeSetup=Asset type setup +AssetTypeModified=Asset type modified +AssetType=Asset type +AssetsLines=Assets +DeleteType=Delete +DeleteAnAssetType=Delete an asset type +ConfirmDeleteAssetType=Are you sure you want to delete this asset type? +ShowTypeCard=Show type '%s' + +# Module label 'ModuleAssetsName' +ModuleAssetsName = Assets +# Module description 'ModuleAssetsDesc' +ModuleAssetsDesc = Assets description + +# +# Admin page +# +AssetsSetup = Assets setup +Settings = Settings +AssetsSetupPage = Assets setup page +ExtraFieldsAssetsType = Complementary attributes (Asset type) +AssetsType=Asset type +AssetsTypeId=Asset type id +AssetsTypeLabel=Asset type label +AssetsTypes=Assets types + +# +# Menu +# +MenuAssets = Assets +MenuNewAsset = New asset +MenuTypeAssets = Type assets +MenuListAssets = List +MenuNewTypeAssets = New +MenuListTypeAssets = List + +# +# Module +# +NewAssetType=New asset type +NewAsset=New asset diff --git a/htdocs/langs/sw_SW/bills.lang b/htdocs/langs/sw_SW/bills.lang index 6d7c61784f7..9f11d8ecf87 100644 --- a/htdocs/langs/sw_SW/bills.lang +++ b/htdocs/langs/sw_SW/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Vendors invoices SupplierBill=Vendor invoice SupplierBills=suppliers invoices Payment=Payment -PaymentBack=Payment back -CustomerInvoicePaymentBack=Payment back +PaymentBack=Refund +CustomerInvoicePaymentBack=Refund Payments=Payments PaymentsBack=Refunds paymentInInvoiceCurrency=in invoices currency PaidBack=Paid back DeletePayment=Delete payment ConfirmDeletePayment=Are you sure you want to delete this payment? -ConfirmConvertToReduc=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. -ConfirmConvertToReducSupplier=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. SupplierPayments=Vendor payments ReceivedPayments=Received payments @@ -209,17 +209,13 @@ NumberOfBillsByMonth=No. of invoices per month AmountOfBills=Amount of invoices AmountOfBillsHT=Amount of invoices (net of tax) AmountOfBillsByMonthHT=Amount of invoices by month (net of tax) -ShowSocialContribution=Show social/fiscal tax -ShowBill=Show invoice -ShowInvoice=Show invoice -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 +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=To pay on %s toPayOn=to pay on %s RetainedWarranty=Retained Warranty @@ -230,7 +226,6 @@ 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 AlreadyPaidNoCreditNotesNoDeposits=Already paid (without credit notes and down payments) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Generated from template invoice %s WarningInvoiceDateInFuture=Warning, the invoice date is higher than current date WarningInvoiceDateTooFarInFuture=Warning, the invoice date is too far from current date ViewAvailableGlobalDiscounts=View available discounts +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Status PaymentConditionShortRECEP=Due Upon Receipt @@ -509,7 +505,7 @@ ToMakePayment=Pay ToMakePaymentBack=Pay back ListOfYourUnpaidInvoices=List of unpaid invoices NoteListOfYourUnpaidInvoices=Note: This list contains only invoices for third parties you are linked to as a sale representative. -RevenueStamp=Revenue stamp +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party YouMustCreateStandardInvoiceFirstDesc=You have to create a standard invoice first and convert it to "template" to create a new template invoice @@ -575,3 +571,4 @@ AutoFillDateTo=Set end date for service line with next invoice date AutoFillDateToShort=Set end date MaxNumberOfGenerationReached=Max number of gen. reached BILL_DELETEInDolibarr=Invoice deleted +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/sw_SW/blockedlog.lang b/htdocs/langs/sw_SW/blockedlog.lang new file mode 100644 index 00000000000..5afae6e9e53 --- /dev/null +++ b/htdocs/langs/sw_SW/blockedlog.lang @@ -0,0 +1,54 @@ +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). +CompanyInitialKey=Company initial key (hash of genesis block) +BrowseBlockedLog=Unalterable logs +ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) +ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) +DownloadBlockChain=Download fingerprints +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). +OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. +OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. +AddedByAuthority=Stored into remote authority +NotAddedByAuthorityYet=Not yet stored into remote authority +ShowDetails=Show stored details +logPAYMENT_VARIOUS_CREATE=Payment (not assigned to an invoice) created +logPAYMENT_VARIOUS_MODIFY=Payment (not assigned to an invoice) modified +logPAYMENT_VARIOUS_DELETE=Payment (not assigned to an invoice) logical deletion +logPAYMENT_ADD_TO_BANK=Payment added to bank +logPAYMENT_CUSTOMER_CREATE=Customer payment created +logPAYMENT_CUSTOMER_DELETE=Customer payment logical deletion +logDONATION_PAYMENT_CREATE=Donation payment created +logDONATION_PAYMENT_DELETE=Donation payment logical deletion +logBILL_PAYED=Customer invoice paid +logBILL_UNPAYED=Customer invoice set unpaid +logBILL_VALIDATE=Customer invoice validated +logBILL_SENTBYMAIL=Customer invoice send by mail +logBILL_DELETE=Customer invoice logically deleted +logMODULE_RESET=Module BlockedLog was disabled +logMODULE_SET=Module BlockedLog was enabled +logDON_VALIDATE=Donation validated +logDON_MODIFY=Donation modified +logDON_DELETE=Donation logical deletion +logMEMBER_SUBSCRIPTION_CREATE=Member subscription created +logMEMBER_SUBSCRIPTION_MODIFY=Member subscription modified +logMEMBER_SUBSCRIPTION_DELETE=Member subscription logical deletion +logCASHCONTROL_VALIDATE=Cash fence recording +BlockedLogBillDownload=Customer invoice download +BlockedLogBillPreview=Customer invoice preview +BlockedlogInfoDialog=Log Details +ListOfTrackedEvents=List of tracked events +Fingerprint=Fingerprint +DownloadLogCSV=Export archived logs (CSV) +logDOC_PREVIEW=Preview of a validated document in order to print or download +logDOC_DOWNLOAD=Download of a validated document in order to print or send +DataOfArchivedEvent=Full datas of archived event +ImpossibleToReloadObject=Original object (type %s, id %s) not linked (see 'Full datas' column to get unalterable saved data) +BlockedLogAreRequiredByYourCountryLegislation=Unalterable Logs module may be required by the legislation of your country. Disabling this module may render any future transactions invalid with respect to the law and the use of legal software as they can not be validated by a tax audit. +BlockedLogActivatedBecauseRequiredByYourCountryLegislation=Unalterable Logs module was activated because of the legislation of your country. Disabling this module may render any future transactions invalid with respect to the law and the use of legal software as they cannot be validated by a tax audit. +BlockedLogDisableNotAllowedForCountry=List of countries where usage of this module is mandatory (just to prevent to disable the module by error, if your country is in this list, disable of module is not possible without editing this list first. Note also that enabling/disabling this module will keep a track into the unalterable log). +OnlyNonValid=Non-valid +TooManyRecordToScanRestrictFilters=Too many records to scan/analyze. Please restrict list with more restrictive filters. +RestrictYearToExport=Restrict month / year to export diff --git a/htdocs/langs/sw_SW/cashdesk.lang b/htdocs/langs/sw_SW/cashdesk.lang index 7ddbc71f3e9..f9f00015840 100644 --- a/htdocs/langs/sw_SW/cashdesk.lang +++ b/htdocs/langs/sw_SW/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Add this article RestartSelling=Go back on sell SellFinished=Sale complete PrintTicket=Print ticket +SendTicket=Send ticket NoProductFound=No article found ProductFound=product found NoArticle=No article @@ -48,6 +49,7 @@ Footer=Footer AmountAtEndOfPeriod=Amount at end of period (day, month or year) TheoricalAmount=Theorical amount RealAmount=Real amount +CashFence=Cash fence CashFenceDone=Cash fence done for the period NbOfInvoices=Nb of invoices Paymentnumpad=Type of Pad to enter payment @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS needs product categories to work OrderNotes=Order Notes CashDeskBankAccountFor=Default account to use for payments in NoPaimementModesDefined=No paiment mode defined in TakePOS configuration -TicketVatGrouped=Group VAT by rate in tickets -AutoPrintTickets=Automatically print tickets +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? @@ -87,7 +90,19 @@ HeadBar=Head Bar SortProductField=Field for sorting products Browser=Browser BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/sw_SW/companies.lang b/htdocs/langs/sw_SW/companies.lang index c569a48c84a..f8b3d0354e2 100644 --- a/htdocs/langs/sw_SW/companies.lang +++ b/htdocs/langs/sw_SW/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted=Company "%s" deleted from database. ListOfContacts=List of contacts/addresses ListOfContactsAddresses=List of contacts/addresses ListOfThirdParties=List of Third Parties -ShowCompany=Show Third Party ShowContact=Show contact ContactsAllShort=All (No filter) ContactType=Contact type @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=First name of sales representative SaleRepresentativeLastname=Last name of sales representative ErrorThirdpartiesMerge=There was an error when deleting the third parties. Please check the log. Changes have been reverted. NewCustomerSupplierCodeProposed=Customer or Vendor code already used, a new code is suggested +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Payment Type - Customer PaymentTermsCustomer=Payment Terms - Customer diff --git a/htdocs/langs/sw_SW/compta.lang b/htdocs/langs/sw_SW/compta.lang index 1de030a1905..6cd046c5607 100644 --- a/htdocs/langs/sw_SW/compta.lang +++ b/htdocs/langs/sw_SW/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=See %sanalysis of payments%s for a calculation on act SeeReportInDueDebtMode=See %sanalysis of invoices%s for a calculation based on known recorded invoices even if they are not yet accounted in Ledger. SeeReportInBookkeepingMode=See %sBookeeping report%s for a calculation on Bookkeeping Ledger table RulesAmountWithTaxIncluded=- Amounts shown are with all taxes included -RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the validation date of invoices and VAT and on the due date for expenses. For salaries defined with Salary module, the value date of payment is used. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- It includes the real payments made on invoices, expenses, VAT and salaries.
    - It is based on the payment dates of the invoices, expenses, VAT and salaries. The donation date for donation. -RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the validation date of these invoices.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    RulesCATotalSaleJournal=It includes all credit lines from the Sale journal. RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Turnover invoiced by sale tax rate TurnoverCollectedbyVatrate=Turnover collected by sale tax rate PurchasebyVatrate=Purchase by sale tax rate LabelToShow=Short label +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/sw_SW/donations.lang b/htdocs/langs/sw_SW/donations.lang index 5edc8d62033..de4bdf68f03 100644 --- a/htdocs/langs/sw_SW/donations.lang +++ b/htdocs/langs/sw_SW/donations.lang @@ -7,7 +7,6 @@ AddDonation=Create a donation NewDonation=New donation DeleteADonation=Delete a donation ConfirmDeleteADonation=Are you sure you want to delete this donation? -ShowDonation=Show donation PublicDonation=Public donation DonationsArea=Donations area DonationStatusPromiseNotValidated=Draft promise @@ -17,6 +16,7 @@ DonationStatusPromiseNotValidatedShort=Draft DonationStatusPromiseValidatedShort=Validated DonationStatusPaidShort=Received DonationTitle=Donation receipt +DonationDate=Donation date DonationDatePayment=Payment date ValidPromess=Validate promise DonationReceipt=Donation receipt diff --git a/htdocs/langs/sw_SW/errors.lang b/htdocs/langs/sw_SW/errors.lang index 3ffc686e62f..7c67aeca8b5 100644 --- a/htdocs/langs/sw_SW/errors.lang +++ b/htdocs/langs/sw_SW/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=File not received completely by server. ErrorNoTmpDir=Temporary directy %s does not exists. ErrorUploadBlockedByAddon=Upload blocked by a PHP/Apache plugin. ErrorFileSizeTooLarge=File size is too large. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Size too long for int type (%s digits maximum) ErrorSizeTooLongForVarcharType=Size too long for string type (%s chars maximum) ErrorNoValueForSelectType=Please fill value for select list @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # 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/sw_SW/hrm.lang b/htdocs/langs/sw_SW/hrm.lang new file mode 100644 index 00000000000..3697c47e30d --- /dev/null +++ b/htdocs/langs/sw_SW/hrm.lang @@ -0,0 +1,18 @@ +# Dolibarr language file - en_US - hrm +# Admin +HRM_EMAIL_EXTERNAL_SERVICE=Email to prevent HRM external service +Establishments=Establishments +Establishment=Establishment +NewEstablishment=New establishment +DeleteEstablishment=Delete establishment +ConfirmDeleteEstablishment=Are you sure you wish to delete this establishment? +OpenEtablishment=Open establishment +CloseEtablishment=Close establishment +# Dictionary +DictionaryPublicHolidays=HRM - Public holidays +DictionaryDepartment=HRM - Department list +DictionaryFunction=HRM - Function list +# Module +Employees=Employees +Employee=Employee +NewEmployee=New employee diff --git a/htdocs/langs/sw_SW/install.lang b/htdocs/langs/sw_SW/install.lang index bf9c08c4ba7..f67dff57184 100644 --- a/htdocs/langs/sw_SW/install.lang +++ b/htdocs/langs/sw_SW/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=This PHP supports Curl. PHPSupportCalendar=This PHP supports calendars extensions. PHPSupportUTF8=This PHP supports UTF8 functions. PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=This PHP supports %s functions. PHPMemoryOK=Your PHP max session memory is set to %s. This should be enough. 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. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=Your PHP installation does not support Curl. ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. 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. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. ErrorDirDoesNotExists=Directory %s does not exist. ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=The application tried to self-upgrade, but the in 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. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/sw_SW/interventions.lang b/htdocs/langs/sw_SW/interventions.lang index e7667ef6946..e5936f8246e 100644 --- a/htdocs/langs/sw_SW/interventions.lang +++ b/htdocs/langs/sw_SW/interventions.lang @@ -41,9 +41,7 @@ InterventionsArea=Interventions area DraftFichinter=Draft interventions LastModifiedInterventions=Latest %s modified interventions FichinterToProcess=Interventions to process -##### Types de contacts ##### TypeContact_fichinter_external_CUSTOMER=Following-up customer contact -# Modele numérotation PrintProductsOnFichinter=Print also lines of type "product" (not only services) on intervention card PrintProductsOnFichinterDetails=interventions generated from orders UseServicesDurationOnFichinter=Use services duration for interventions generated from orders @@ -53,14 +51,16 @@ InterventionStatistics=Statistics of interventions NbOfinterventions=No. of intervention cards NumberOfInterventionsByMonth=No. of intervention cards by month (date of validation) AmountOfInteventionNotIncludedByDefault=Amount of intervention is not included by default into profit (in most cases, timesheets are used to count time spent). Add option PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT to 1 into home-setup-other to include them. -##### Exports ##### InterId=Intervention id InterRef=Intervention ref. InterDateCreation=Date creation intervention InterDuration=Duration intervention InterStatus=Status intervention InterNote=Note intervention +InterLine=Line of intervention InterLineId=Line id intervention InterLineDate=Line date intervention InterLineDuration=Line duration intervention InterLineDesc=Line description intervention +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/sw_SW/link.lang b/htdocs/langs/sw_SW/link.lang index fdcf07aeff4..1ffcd41a18b 100644 --- a/htdocs/langs/sw_SW/link.lang +++ b/htdocs/langs/sw_SW/link.lang @@ -8,3 +8,4 @@ LinkRemoved=The link %s has been removed ErrorFailedToDeleteLink= Failed to remove link '%s' ErrorFailedToUpdateLink= Failed to update link '%s' URLToLink=URL to link +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/sw_SW/mails.lang b/htdocs/langs/sw_SW/mails.lang index 8b92cef3103..7b3bfd3852a 100644 --- a/htdocs/langs/sw_SW/mails.lang +++ b/htdocs/langs/sw_SW/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=No contact/address with a category found NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found OutGoingEmailSetup=Outgoing email setup InGoingEmailSetup=Incoming email setup -OutGoingEmailSetupForEmailing=Outgoing email setup (for mass emailing) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Default outgoing email setup Information=Information ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/sw_SW/main.lang b/htdocs/langs/sw_SW/main.lang index 686f3ac1849..2082506c405 100644 --- a/htdocs/langs/sw_SW/main.lang +++ b/htdocs/langs/sw_SW/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Save and stay SaveAndNew=Save and new TestConnection=Test connection ToClone=Clone +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Choose data you want to clone: NoCloneOptionsSpecified=No data to clone defined. Of=of @@ -829,6 +830,8 @@ Gender=Gender Genderman=Man Genderwoman=Woman ViewList=List view +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Mandatory Hello=Hello GoodBye=GoodBye @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Select your graph options to build a graph Measures=Measures XAxis=X-Axis YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/sw_SW/modulebuilder.lang b/htdocs/langs/sw_SW/modulebuilder.lang new file mode 100644 index 00000000000..135ac1ae9ec --- /dev/null +++ b/htdocs/langs/sw_SW/modulebuilder.lang @@ -0,0 +1,141 @@ +# Dolibarr language file - Source file is en_US - loan +ModuleBuilderDesc=This tool must be used only by experienced users or developers. It provides utilities to build or edit your own module. Documentation for alternative manual development is here. +EnterNameOfModuleDesc=Enter name of the module/application to create with no spaces. Use uppercase to separate words (For example: MyModule, EcommerceForShop, SyncWithMySystem...) +EnterNameOfObjectDesc=Enter name of the object to create with no spaces. Use uppercase to separate words (For example: MyObject, Student, Teacher...). The CRUD class file, but also API file, pages to list/add/edit/delete object and SQL files will be generated. +ModuleBuilderDesc2=Path where modules are generated/edited (first directory for external modules defined into %s): %s +ModuleBuilderDesc3=Generated/editable modules found: %s +ModuleBuilderDesc4=A module is detected as 'editable' when the file %s exists in root of module directory +NewModule=New module +NewObjectInModulebuilder=New object +ModuleKey=Module key +ObjectKey=Object key +ModuleInitialized=Module initialized +FilesForObjectInitialized=Files for new object '%s' initialized +FilesForObjectUpdated=Files for object '%s' updated (.sql files and .class.php file) +ModuleBuilderDescdescription=Enter here all general information that describe your module. +ModuleBuilderDescspecifications=You can enter here a detailed description of the specifications of your module that is not already structured into other tabs. So you have within easy reach all the rules to develop. Also this text content will be included into the generated documentation (see last tab). You can use Markdown format, but it is recommended to use Asciidoc format (comparison between .md and .asciidoc: http://asciidoctor.org/docs/user-manual/#compared-to-markdown). +ModuleBuilderDescobjects=Define here the objects you want to manage with your module. A CRUD DAO class, SQL files, page to list record of objects, to create/edit/view a record and an API will be generated. +ModuleBuilderDescmenus=This tab is dedicated to define menu entries provided by your module. +ModuleBuilderDescpermissions=This tab is dedicated to define the new permissions you want to provide with your module. +ModuleBuilderDesctriggers=This is the view of triggers provided by your module. To include code executed when a triggered business event is launched, just edit this file. +ModuleBuilderDeschooks=This tab is dedicated to hooks. +ModuleBuilderDescwidgets=This tab is dedicated to manage/build widgets. +ModuleBuilderDescbuildpackage=You can generate here a "ready to distribute" package file (a normalized .zip file) of your module and a "ready to distribute" documentation file. Just click on button to build the package or documentation file. +EnterNameOfModuleToDeleteDesc=You can delete your module. WARNING: All coding files of module (generated or created manually) AND structured data and documentation will be deleted! +EnterNameOfObjectToDeleteDesc=You can delete an object. WARNING: All coding files (generated or created manually) related to object will be deleted! +DangerZone=Danger zone +BuildPackage=Build package +BuildPackageDesc=You can generate a zip package of your application so your are ready to distribute it on any Dolibarr. You can also distribute it or sell it on marketplace like DoliStore.com. +BuildDocumentation=Build documentation +ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: +ModuleIsLive=This module has been activated. Any change may break a current live feature. +DescriptionLong=Long description +EditorName=Name of editor +EditorUrl=URL of editor +DescriptorFile=Descriptor file of module +ClassFile=File for PHP DAO CRUD class +ApiClassFile=File for PHP API class +PageForList=PHP page for list of record +PageForCreateEditView=PHP page to create/edit/view a record +PageForAgendaTab=PHP page for event tab +PageForDocumentTab=PHP page for document tab +PageForNoteTab=PHP page for note tab +PathToModulePackage=Path to zip of module/application package +PathToModuleDocumentation=Path to file of module/application documentation (%s) +SpaceOrSpecialCharAreNotAllowed=Spaces or special characters are not allowed. +FileNotYetGenerated=File not yet generated +RegenerateClassAndSql=Force update of .class and .sql files +RegenerateMissingFiles=Generate missing files +SpecificationFile=File of documentation +LanguageFile=File for language +ObjectProperties=Object Properties +ConfirmDeleteProperty=Are you sure you want to delete the property %s? This will change code in PHP class but also remove column from table definition of object. +NotNull=Not NULL +NotNullDesc=1=Set database to NOT NULL. -1=Allow null values and force value to NULL if empty ('' or 0). +SearchAll=Used for 'search all' +DatabaseIndex=Database index +FileAlreadyExists=File %s already exists +TriggersFile=File for triggers code +HooksFile=File for hooks code +ArrayOfKeyValues=Array of key-val +ArrayOfKeyValuesDesc=Array of keys and values if field is a combo list with fixed values +WidgetFile=Widget file +CSSFile=CSS file +JSFile=Javascript file +ReadmeFile=Readme file +ChangeLog=ChangeLog file +TestClassFile=File for PHP Unit Test class +SqlFile=Sql file +PageForLib=File for the common PHP library +PageForObjLib=File for the PHP library dedicated to object +SqlFileExtraFields=Sql file for complementary attributes +SqlFileKey=Sql file for keys +SqlFileKeyExtraFields=Sql file for keys of complementary attributes +AnObjectAlreadyExistWithThisNameAndDiffCase=An object already exists with this name and a different case +UseAsciiDocFormat=You can use Markdown format, but it is recommended to use Asciidoc format (omparison between .md and .asciidoc: http://asciidoctor.org/docs/user-manual/#compared-to-markdown) +IsAMeasure=Is a measure +DirScanned=Directory scanned +NoTrigger=No trigger +NoWidget=No widget +GoToApiExplorer=Go to API explorer +ListOfMenusEntries=List of menu entries +ListOfDictionariesEntries=List of dictionaries entries +ListOfPermissionsDefined=List of defined permissions +SeeExamples=See examples here +EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty +DisplayOnPdf=Display on PDF +IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) +SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) +SpecDefDesc=Enter here all documentation you want to provide with your module that is not already defined by other tabs. You can use .md or better, the rich .asciidoc syntax. +LanguageDefDesc=Enter in this files, all the key and the translation for each language file. +MenusDefDesc=Define here the menus provided by your module +DictionariesDefDesc=Define here the dictionaries provided by your module +PermissionsDefDesc=Define here the new permissions provided by your module +MenusDefDescTooltip=The menus provided by your module/application are defined into the array $this->menus into the module descriptor file. You can edit manually this file or use the embedded editor.

    Note: Once defined (and module re-activated), menus are also visible into the menu editor available to administrator users on %s. +DictionariesDefDescTooltip=The dictionaries provided by your module/application are defined into the array $this->dictionaries into the module descriptor file. You can edit manually this file or use the embedded editor.

    Note: Once defined (and module re-activated), dictionaries are also visible into the setup area to administrator users on %s. +PermissionsDefDescTooltip=The permissions provided by your module/application are defined into the array $this->rights into the module descriptor file. You can edit manually this file or use the embedded editor.

    Note: Once defined (and module re-activated), permissions are visible into the default permissions setup %s. +HooksDefDesc=Define in the module_parts['hooks'] property, in the module descriptor, the context of hooks you want to manage (list of contexts can be found by a search on 'initHooks(' in core code).
    Edit the hook file to add code of your hooked functions (hookable functions can be found by a search on 'executeHooks' in core code). +TriggerDefDesc=Define in the trigger file the code you want to execute for each business event executed. +SeeIDsInUse=See IDs in use in your installation +SeeReservedIDsRangeHere=See range of reserved IDs +ToolkitForDevelopers=Toolkit for Dolibarr developers +TryToUseTheModuleBuilder=If you have knowledge of SQL and PHP, you may use the native module builder wizard.
    Enable the module %s and use the wizard by clicking the on the top right menu.
    Warning: This is an advanced developer feature, do not experiment on your production site! +SeeTopRightMenu=See on the top right menu +AddLanguageFile=Add language file +YouCanUseTranslationKey=You can use here a key that is the translation key found into language file (see tab "Languages") +DropTableIfEmpty=(Delete table if empty) +TableDoesNotExists=The table %s does not exists +TableDropped=Table %s deleted +InitStructureFromExistingTable=Build the structure array string of an existing table +UseAboutPage=Disable the about page +UseDocFolder=Disable the documentation folder +UseSpecificReadme=Use a specific ReadMe +ContentOfREADMECustomized=Note: The content of the README.md file has been replaced with the specific value defined into setup of ModuleBuilder. +RealPathOfModule=Real path of module +ContentCantBeEmpty=Content of file can't be empty +WidgetDesc=You can generate and edit here the widgets that will be embedded with your module. +CSSDesc=You can generate and edit here a file with personalized CSS embedded with your module. +JSDesc=You can generate and edit here a file with personalized Javascript embedded with your module. +CLIDesc=You can generate here some command line scripts you want to provide with your module. +CLIFile=CLI File +NoCLIFile=No CLI files +UseSpecificEditorName = Use a specific editor name +UseSpecificEditorURL = Use a specific editor URL +UseSpecificFamily = Use a specific family +UseSpecificAuthor = Use a specific author +UseSpecificVersion = Use a specific initial version +ModuleMustBeEnabled=The module/application must be enabled first +IncludeRefGeneration=The reference of object must be generated automatically +IncludeRefGenerationHelp=Check this if you want to include code to manage the generation automatically of the reference +IncludeDocGeneration=I want to generate some documents from the object +IncludeDocGenerationHelp=If you check this, some code will be generated to add a "Generate document" box on the record. +ShowOnCombobox=Show value into combobox +KeyForTooltip=Key for tooltip +CSSClass=CSS Class +NotEditable=Not editable +ForeignKey=Foreign key +TypeOfFieldsHelp=Type of fields:
    varchar(99), double(24,8), real, text, html, datetime, timestamp, integer, integer:ClassName:relativepath/to/classfile.class.php[:1[:filter]] ('1' means we add a + button after the combo to create the record, 'filter' can be 'status=1 AND fk_user = __USER_ID AND entity IN (__SHARED_ENTITIES__)' for example) +AsciiToHtmlConverter=Ascii to HTML converter +AsciiToPdfConverter=Ascii to PDF converter diff --git a/htdocs/langs/sw_SW/mrp.lang b/htdocs/langs/sw_SW/mrp.lang new file mode 100644 index 00000000000..d3c4d3253c6 --- /dev/null +++ b/htdocs/langs/sw_SW/mrp.lang @@ -0,0 +1,76 @@ +Mrp=Manufacturing Orders +MO=Manufacturing Order +MRPDescription=Module to manage production and Manufacturing Orders (MO). +MRPArea=MRP Area +MrpSetupPage=Setup of module MRP +MenuBOM=Bills of material +LatestBOMModified=Latest %s Bills of materials modified +LatestMOModified=Latest %s Manufacturing Orders modified +Bom=Bills of Material +BillOfMaterials=Bill of Material +BOMsSetup=Setup of module BOM +ListOfBOMs=List of bills of material - BOM +ListOfManufacturingOrders=List of Manufacturing Orders +NewBOM=New bill of material +ProductBOMHelp=Product to create with this BOM.
    Note: Products with the property 'Nature of product' = 'Raw material' are not visible into this list. +BOMsNumberingModules=BOM numbering templates +BOMsModelModule=BOM document templates +MOsNumberingModules=MO numbering templates +MOsModelModule=MO document templates +FreeLegalTextOnBOMs=Free text on document of BOM +WatermarkOnDraftBOMs=Watermark on draft BOM +FreeLegalTextOnMOs=Free text on document of MO +WatermarkOnDraftMOs=Watermark on draft MO +ConfirmCloneBillOfMaterials=Are you sure you want to clone the bill of material %s ? +ConfirmCloneMo=Are you sure you want to clone the Manufacturing Order %s ? +ManufacturingEfficiency=Manufacturing efficiency +ConsumptionEfficiency=Consumption efficiency +ValueOfMeansLoss=Value of 0.95 means an average of 5%% of loss during the production +ValueOfMeansLossForProductProduced=Value of 0.95 means an average of 5%% of loss of produced product +DeleteBillOfMaterials=Delete Bill Of Materials +DeleteMo=Delete Manufacturing Order +ConfirmDeleteBillOfMaterials=Are you sure you want to delete this Bill Of Material? +ConfirmDeleteMo=Are you sure you want to delete this Bill Of Material? +MenuMRP=Manufacturing Orders +NewMO=New Manufacturing Order +QtyToProduce=Qty to produce +DateStartPlannedMo=Date start planned +DateEndPlannedMo=Date end planned +KeepEmptyForAsap=Empty means 'As Soon As Possible' +EstimatedDuration=Estimated duration +EstimatedDurationDesc=Estimated duration to manufacture this product using this BOM +ConfirmValidateBom=Are you sure you want to validate the BOM with the reference %s (you will be able to use it to build new Manufacturing Orders) +ConfirmCloseBom=Are you sure you want to cancel this BOM (you won't be able to use it to build new Manufacturing Orders anymore) ? +ConfirmReopenBom=Are you sure you want to re-open this BOM (you will be able to use it to build new Manufacturing Orders) +StatusMOProduced=Produced +QtyFrozen=Frozen Qty +QuantityFrozen=Frozen Quantity +QuantityConsumedInvariable=When this flag is set, the quantity consumed is always the value defined and is not relative to the quantity produced. +DisableStockChange=Stock change disabled +DisableStockChangeHelp=When this flag is set, there is no stock change on this product, whatever is the quantity consumed +BomAndBomLines=Bills Of Material and lines +BOMLine=Line of BOM +WarehouseForProduction=Warehouse for production +CreateMO=Create MO +ToConsume=To consume +ToProduce=To produce +QtyAlreadyConsumed=Qty already consumed +QtyAlreadyProduced=Qty already produced +QtyRequiredIfNoLoss=Qty required if there is no loss (Manufacturing efficiency is 100%%) +ConsumeOrProduce=Consume or Produce +ConsumeAndProduceAll=Consume and Produce All +Manufactured=Manufactured +TheProductXIsAlreadyTheProductToProduce=The product to add is already the product to produce. +ForAQuantityOf=For a quantity to produce of %s +ConfirmValidateMo=Are you sure you want to validate this Manufacturing Order? +ConfirmProductionDesc=By clicking on '%s', you will validate the consumption and/or production for the quantities set. This will also update the stock and record stock movements. +ProductionForRef=Production of %s +AutoCloseMO=Close automatically the Manufacturing Order if quantities to consume and to produce are reached +NoStockChangeOnServices=No stock change on services +ProductQtyToConsumeByMO=Product quantity still to consume by open MO +ProductQtyToProduceByMO=Product quentity still to produce by open MO +AddNewConsumeLines=Add new line to consume +ProductsToConsume=Products to consume +ProductsToProduce=Products to produce +UnitCost=Unit cost +TotalCost=Total cost diff --git a/htdocs/langs/sw_SW/multicurrency.lang b/htdocs/langs/sw_SW/multicurrency.lang new file mode 100644 index 00000000000..bfcbd11fb7c --- /dev/null +++ b/htdocs/langs/sw_SW/multicurrency.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Multi currency +ErrorAddRateFail=Error in added rate +ErrorAddCurrencyFail=Error in added currency +ErrorDeleteCurrencyFail=Error delete fail +multicurrency_syncronize_error=Synchronization error: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Use the date of the document to find the currency rate, instead of using the latest known rate +multicurrency_useOriginTx=When an object is created from another, keep the original rate from the source object (otherwise use the latest known rate) +CurrencyLayerAccount=CurrencyLayer API +CurrencyLayerAccount_help_to_synchronize=You must create an account on website %s to use this functionality.
    Get your API key.
    If you use a free account, you can't change the source currency (USD by default).
    If your main currency is not USD, the application will automatically recalculate it.

    You are limited to 1000 synchronizations per month. +multicurrency_appId=API key +multicurrency_appCurrencySource=Source currency +multicurrency_alternateCurrencySource=Alternate source currency +CurrenciesUsed=Currencies used +CurrenciesUsed_help_to_add=Add the different currencies and rates you need to use on your proposals, orders etc. +rate=rate +MulticurrencyReceived=Received, original currency +MulticurrencyRemainderToTake=Remaining amount, original currency +MulticurrencyPaymentAmount=Payment amount, original currency +AmountToOthercurrency=Amount To (in currency of receiving account) +CurrencyRateSyncSucceed=Currency rate synchronization done successfuly +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Use the currency of the document for online payments diff --git a/htdocs/langs/sw_SW/oauth.lang b/htdocs/langs/sw_SW/oauth.lang new file mode 100644 index 00000000000..075ff49a895 --- /dev/null +++ b/htdocs/langs/sw_SW/oauth.lang @@ -0,0 +1,32 @@ +# 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 credentials with your OAuth provider: +ListOfSupportedOauthProviders=Enter the credentials provided by your OAuth2 provider. Only supported OAuth2 providers are listedd here. These services 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 to 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 to this page then "Register a new application" to create OAuth credentials +OAUTH_STRIPE_TEST_NAME=OAuth Stripe Test +OAUTH_STRIPE_LIVE_NAME=OAuth Stripe Live diff --git a/htdocs/langs/sw_SW/other.lang b/htdocs/langs/sw_SW/other.lang index 00259d976bc..ba85f51e739 100644 --- a/htdocs/langs/sw_SW/other.lang +++ b/htdocs/langs/sw_SW/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Sales order validated Notify_ORDER_SENTBYMAIL=Sales order sent by mail Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=URL of page WEBSITE_TITLE=Title WEBSITE_DESCRIPTION=Description WEBSITE_IMAGE=Image -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Keywords LinesToImport=Lines to import diff --git a/htdocs/langs/sw_SW/products.lang b/htdocs/langs/sw_SW/products.lang index d8a3192551f..a31243a07b6 100644 --- a/htdocs/langs/sw_SW/products.lang +++ b/htdocs/langs/sw_SW/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL MassBarcodeInit=Mass barcode init MassBarcodeInitDesc=This page can be used to initialize a barcode on objects that does not have barcode defined. Check before that setup of module barcode is complete. ProductAccountancyBuyCode=Accounting code (purchase) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Accounting code (sale) ProductAccountancySellIntraCode=Accounting code (sale intra-Community) ProductAccountancySellExportCode=Accounting code (sale export) @@ -165,7 +167,7 @@ SuppliersPrices=Vendor prices SuppliersPricesOfProductsOrServices=Vendor prices (of products or services) CustomCode=Customs / Commodity / HS code CountryOrigin=Origin country -Nature=Nature of produt (material/finished) +Nature=Nature of product (material/finished) ShortLabel=Short label Unit=Unit p=u. diff --git a/htdocs/langs/sw_SW/projects.lang b/htdocs/langs/sw_SW/projects.lang index 94e440f9ab9..bb42bff3c87 100644 --- a/htdocs/langs/sw_SW/projects.lang +++ b/htdocs/langs/sw_SW/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=which I'm linked to project Time=Time ListOfTasks=List of tasks GoToListOfTimeConsumed=Go to list of time consumed -GoToListOfTasks=Show as list -GoToGanttView=show as Gantt GanttView=Gantt View ListProposalsAssociatedProject=List of the commercial proposals related to the project ListOrdersAssociatedProject=List of sales orders related to the project @@ -188,7 +186,7 @@ PlannedWorkload=Planned workload PlannedWorkloadShort=Workload ProjectReferers=Related items ProjectMustBeValidatedFirst=Project must be validated first -FirstAddRessourceToAllocateTime=Assign a user resource to task to allocate time +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=Input per day InputPerWeek=Input per week InputPerMonth=Input per month @@ -240,6 +238,7 @@ LatestModifiedProjects=Latest %s modified projects OtherFilteredTasks=Other filtered tasks NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=Allow user comments on tasks AllowCommentOnProject=Allow user comments on projects @@ -256,7 +255,7 @@ ServiceToUseOnLines=Service to use on lines InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. ProjectFollowOpportunity=Follow opportunity -ProjectFollowTasks=Follow tasks +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Usage: Opportunity UsageTasks=Usage: Tasks @@ -265,3 +264,4 @@ InvoiceToUse=Draft invoice to use NewInvoice=New invoice OneLinePerTask=One line per task OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/sw_SW/receiptprinter.lang b/htdocs/langs/sw_SW/receiptprinter.lang new file mode 100644 index 00000000000..896eaa313dd --- /dev/null +++ b/htdocs/langs/sw_SW/receiptprinter.lang @@ -0,0 +1,95 @@ +# Dolibarr language file - Source file is en_US - receiptprinter +ReceiptPrinterSetup=Setup of module ReceiptPrinter +PrinterAdded=Printer %s added +PrinterUpdated=Printer %s updated +PrinterDeleted=Printer %s deleted +TestSentToPrinter=Test Sent To Printer %s +ReceiptPrinter=Receipt printers +ReceiptPrinterDesc=Setup of receipt printers +ReceiptPrinterTemplateDesc=Setup of Templates +ReceiptPrinterTypeDesc=Description of Receipt Printer's type +ReceiptPrinterProfileDesc=Description of Receipt Printer's Profile +ListPrinters=List of Printers +SetupReceiptTemplate=Template Setup +CONNECTOR_DUMMY=Dummy Printer +CONNECTOR_NETWORK_PRINT=Network Printer +CONNECTOR_FILE_PRINT=Local Printer +CONNECTOR_WINDOWS_PRINT=Local Windows Printer +CONNECTOR_CUPS_PRINT=Cups Printer +CONNECTOR_DUMMY_HELP=Fake Printer for test, does nothing +CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 +CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 +CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L +PROFILE_DEFAULT=Default Profile +PROFILE_SIMPLE=Simple Profile +PROFILE_EPOSTEP=Epos Tep Profile +PROFILE_P822D=P822D Profile +PROFILE_STAR=Star Profile +PROFILE_DEFAULT_HELP=Default Profile suitable for Epson printers +PROFILE_SIMPLE_HELP=Simple Profile No Graphics +PROFILE_EPOSTEP_HELP=Epos Tep Profile +PROFILE_P822D_HELP=P822D Profile No Graphics +PROFILE_STAR_HELP=Star Profile +DOL_LINE_FEED=Skip line +DOL_ALIGN_LEFT=Left align text +DOL_ALIGN_CENTER=Center text +DOL_ALIGN_RIGHT=Right align text +DOL_USE_FONT_A=Use font A of printer +DOL_USE_FONT_B=Use font B of printer +DOL_USE_FONT_C=Use font C of printer +DOL_PRINT_BARCODE=Print barcode +DOL_PRINT_BARCODE_CUSTOMER_ID=Print barcode customer id +DOL_CUT_PAPER_FULL=Cut ticket completely +DOL_CUT_PAPER_PARTIAL=Cut ticket partially +DOL_OPEN_DRAWER=Open cash drawer +DOL_ACTIVATE_BUZZER=Activate buzzer +DOL_PRINT_QRCODE=Print QR Code +DOL_PRINT_LOGO=Print logo of my company +DOL_PRINT_LOGO_OLD=Print logo of my company (old printers) +DOL_BOLD=Bold +DOL_BOLD_DISABLED=Disable bold +DOL_DOUBLE_HEIGHT=Double height size +DOL_DOUBLE_WIDTH=Double width size +DOL_DEFAULT_HEIGHT_WIDTH=Default height and width size +DOL_UNDERLINE=Enable underline +DOL_UNDERLINE_DISABLED=Disable underline +DOL_BEEP=Beed sound +DOL_PRINT_TEXT=Print text +DOL_VALUE_DATE=Invoice date +DOL_VALUE_DATE_TIME=Invoice date and time +DOL_VALUE_YEAR=Invoice year +DOL_VALUE_MONTH_LETTERS=Invoice month in letters +DOL_VALUE_MONTH=Invoice month +DOL_VALUE_DAY=Invoice day +DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Invoice ref +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=Capital +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/sw_SW/receptions.lang b/htdocs/langs/sw_SW/receptions.lang new file mode 100644 index 00000000000..010a7521846 --- /dev/null +++ b/htdocs/langs/sw_SW/receptions.lang @@ -0,0 +1,45 @@ +# Dolibarr language file - Source file is en_US - receptions +ReceptionsSetup=Product Reception setup +RefReception=Ref. reception +Reception=Reception +Receptions=Receptions +AllReceptions=All Receptions +Reception=Reception +Receptions=Receptions +ShowReception=Show Receptions +ReceptionsArea=Receptions area +ListOfReceptions=List of receptions +ReceptionMethod=Reception method +LastReceptions=Latest %s receptions +StatisticsOfReceptions=Statistics for receptions +NbOfReceptions=Number of receptions +NumberOfReceptionsByMonth=Number of receptions by month +ReceptionCard=Reception card +NewReception=New reception +CreateReception=Create reception +QtyInOtherReceptions=Qty in other receptions +OtherReceptionsForSameOrder=Other receptions for this order +ReceptionsAndReceivingForSameOrder=Receptions and receipts for this order +ReceptionsToValidate=Receptions to validate +StatusReceptionCanceled=Canceled +StatusReceptionDraft=Draft +StatusReceptionValidated=Validated (products to ship or already shipped) +StatusReceptionProcessed=Processed +StatusReceptionDraftShort=Draft +StatusReceptionValidatedShort=Validated +StatusReceptionProcessedShort=Processed +ReceptionSheet=Reception sheet +ConfirmDeleteReception=Are you sure you want to delete this reception? +ConfirmValidateReception=Are you sure you want to validate this reception with reference %s? +ConfirmCancelReception=Are you sure you want to cancel this reception? +StatsOnReceptionsOnlyValidated=Statistics conducted on receptions only validated. Date used is date of validation of reception (planed delivery date is not always known). +SendReceptionByEMail=Send reception by email +SendReceptionRef=Submission of reception %s +ActionsOnReception=Events on reception +ReceptionCreationIsDoneFromOrder=For the moment, creation of a new reception is done from the order card. +ReceptionLine=Reception line +ProductQtyInReceptionAlreadySent=Product quantity from open sales order already sent +ProductQtyInSuppliersReceptionAlreadyRecevied=Product quantity from open supplier order already received +ValidateOrderFirstBeforeReception=You must first validate the order before being able to make receptions. +ReceptionsNumberingModules=Numbering module for receptions +ReceptionsReceiptModel=Document templates for receptions diff --git a/htdocs/langs/sw_SW/stripe.lang b/htdocs/langs/sw_SW/stripe.lang new file mode 100644 index 00000000000..844762040af --- /dev/null +++ b/htdocs/langs/sw_SW/stripe.lang @@ -0,0 +1,72 @@ +# Dolibarr language file - Source file is en_US - stripe +StripeSetup=Stripe module setup +StripeDesc=Offer customers a Stripe online payment page for payments with credit/cebit cards via Stripe. This can be used to allow your customers to make ad-hoc payments or for payments related to a particular Dolibarr object (invoice, order, ...) +StripeOrCBDoPayment=Pay with credit card or Stripe +FollowingUrlAreAvailableToMakePayments=Following URLs are available to offer a page to a customer to make a payment on Dolibarr objects +PaymentForm=Payment form +WelcomeOnPaymentPage=Welcome to our online payment service +ThisScreenAllowsYouToPay=This screen allow you to make an online payment to %s. +ThisIsInformationOnPayment=This is information on payment to do +ToComplete=To complete +YourEMail=Email to receive payment confirmation +STRIPE_PAYONLINE_SENDEMAIL=Email notification after a payment attempt (success or fail) +Creditor=Creditor +PaymentCode=Payment code +StripeDoPayment=Pay with Stripe +YouWillBeRedirectedOnStripe=You will be redirected on secured Stripe page to input you credit card information +Continue=Next +ToOfferALinkForOnlinePayment=URL for %s payment +ToOfferALinkForOnlinePaymentOnOrder=URL to offer a %s online payment page for a sales order +ToOfferALinkForOnlinePaymentOnInvoice=URL to offer a %s online payment page for a customer invoice +ToOfferALinkForOnlinePaymentOnContractLine=URL to offer a %s online payment page for a contract line +ToOfferALinkForOnlinePaymentOnFreeAmount=URL to offer a %s online payment page of any amount with no existing object +ToOfferALinkForOnlinePaymentOnMemberSubscription=URL to offer a %s online payment page for a member subscription +ToOfferALinkForOnlinePaymentOnDonation=URL to offer a %s online payment page for payment of a donation +YouCanAddTagOnUrl=You can also add url parameter &tag=value to any of those URL (mandatory only for payment not linked to an object) to add your own payment comment tag.
    For the URL of payments with no existing object, you may also add the parameter &noidempotency=1 so the same link with same tag can be used several times (some payment mode may limit the payment to 1 for each different link without this parameter) +SetupStripeToHavePaymentCreatedAutomatically=Setup your Stripe with url %s to have payment created automatically when validated by Stripe. +AccountParameter=Account parameters +UsageParameter=Usage parameters +InformationToFindParameters=Help to find your %s account information +STRIPE_CGI_URL_V2=Url of Stripe CGI module for payment +VendorName=Name of vendor +CSSUrlForPaymentForm=CSS style sheet url for payment form +NewStripePaymentReceived=New Stripe payment received +NewStripePaymentFailed=New Stripe payment tried but failed +FailedToChargeCard=Failed to charge card +STRIPE_TEST_SECRET_KEY=Secret test key +STRIPE_TEST_PUBLISHABLE_KEY=Publishable test key +STRIPE_TEST_WEBHOOK_KEY=Webhook test key +STRIPE_LIVE_SECRET_KEY=Secret live key +STRIPE_LIVE_PUBLISHABLE_KEY=Publishable live key +STRIPE_LIVE_WEBHOOK_KEY=Webhook live key +ONLINE_PAYMENT_WAREHOUSE=Stock to use for stock decrease when online payment is done
    (TODO When option to decrease stock is done on an action on invoice and the online payment generate itself the invoice ?) +StripeLiveEnabled=Stripe live enabled (otherwise test/sandbox mode) +StripeImportPayment=Import Stripe payments +ExampleOfTestCreditCard=Example of credit card for test: %s => valid, %s => error CVC, %s => expired, %s => charge fails +StripeGateways=Stripe gateways +OAUTH_STRIPE_TEST_ID=Stripe Connect Client ID (ca_...) +OAUTH_STRIPE_LIVE_ID=Stripe Connect Client ID (ca_...) +BankAccountForBankTransfer=Bank account for fund payouts +StripeAccount=Stripe account +StripeChargeList=List of Stripe charges +StripeTransactionList=List of Stripe transactions +StripeCustomerId=Stripe customer id +StripePaymentModes=Stripe payment modes +LocalID=Local ID +StripeID=Stripe ID +NameOnCard=Name on card +CardNumber=Card Number +ExpiryDate=Expiry Date +CVN=CVN +DeleteACard=Delete Card +ConfirmDeleteCard=Are you sure you want to delete this Credit or Debit card? +CreateCustomerOnStripe=Create customer on Stripe +CreateCardOnStripe=Create card on Stripe +ShowInStripe=Show in Stripe +StripeUserAccountForActions=User account to use for email notification of some Stripe events (Stripe payouts) +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... +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/sw_SW/supplier_proposal.lang b/htdocs/langs/sw_SW/supplier_proposal.lang new file mode 100644 index 00000000000..ce5bdf0425a --- /dev/null +++ b/htdocs/langs/sw_SW/supplier_proposal.lang @@ -0,0 +1,54 @@ +# Dolibarr language file - Source file is en_US - supplier_proposal +SupplierProposal=Vendor commercial proposals +supplier_proposalDESC=Manage price requests to suppliers +SupplierProposalNew=New price request +CommRequest=Price request +CommRequests=Price requests +SearchRequest=Find a request +DraftRequests=Draft requests +SupplierProposalsDraft=Draft vendor proposals +LastModifiedRequests=Latest %s modified price requests +RequestsOpened=Open price requests +SupplierProposalArea=Vendor proposals area +SupplierProposalShort=Vendor proposal +SupplierProposals=Vendor proposals +SupplierProposalsShort=Vendor proposals +NewAskPrice=New price request +ShowSupplierProposal=Show price request +AddSupplierProposal=Create a price request +SupplierProposalRefFourn=Vendor ref +SupplierProposalDate=Delivery date +SupplierProposalRefFournNotice=Before closing to "Accepted", think to grasp suppliers references. +ConfirmValidateAsk=Are you sure you want to validate this price request under name %s? +DeleteAsk=Delete request +ValidateAsk=Validate request +SupplierProposalStatusDraft=Draft (needs to be validated) +SupplierProposalStatusValidated=Validated (request is open) +SupplierProposalStatusClosed=Closed +SupplierProposalStatusSigned=Accepted +SupplierProposalStatusNotSigned=Refused +SupplierProposalStatusDraftShort=Draft +SupplierProposalStatusValidatedShort=Validated +SupplierProposalStatusClosedShort=Closed +SupplierProposalStatusSignedShort=Accepted +SupplierProposalStatusNotSignedShort=Refused +CopyAskFrom=Create a price request by copying an existing request +CreateEmptyAsk=Create blank request +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=Send price request by mail +SendAskRef=Sending the price request %s +SupplierProposalCard=Request card +ConfirmDeleteAsk=Are you sure you want to delete this price request %s? +ActionsOnSupplierProposal=Events on price request +DocModelAuroreDescription=A complete request model (logo...) +CommercialAsk=Price request +DefaultModelSupplierProposalCreate=Default model creation +DefaultModelSupplierProposalToBill=Default template when closing a price request (accepted) +DefaultModelSupplierProposalClosed=Default template when closing a price request (refused) +ListOfSupplierProposals=List of vendor proposal requests +ListSupplierProposalsAssociatedProject=List of vendor proposals associated with project +SupplierProposalsToClose=Vendor proposals to close +SupplierProposalsToProcess=Vendor proposals to process +LastSupplierProposals=Latest %s price requests +AllPriceRequests=All requests diff --git a/htdocs/langs/sw_SW/ticket.lang b/htdocs/langs/sw_SW/ticket.lang new file mode 100644 index 00000000000..80518c3401a --- /dev/null +++ b/htdocs/langs/sw_SW/ticket.lang @@ -0,0 +1,305 @@ +# en_US lang file for module ticket +# Copyright (C) 2013 Jean-François FERRY +# +# 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 . + +# +# Generic +# + +Module56000Name=Tickets +Module56000Desc=Ticket system for issue or request management + +Permission56001=See tickets +Permission56002=Modify tickets +Permission56003=Delete tickets +Permission56004=Manage tickets +Permission56005=See tickets of all third parties (not effective for external users, always be limited to the third party they depend on) + +TicketDictType=Ticket - Types +TicketDictCategory=Ticket - Groupes +TicketDictSeverity=Ticket - Severities +TicketDictResolution=Ticket - Resolution +TicketTypeShortBUGSOFT=Dysfonctionnement logiciel +TicketTypeShortBUGHARD=Dysfonctionnement matériel +TicketTypeShortCOM=Commercial question + +TicketTypeShortHELP=Request for functionnal help +TicketTypeShortISSUE=Issue, bug or problem +TicketTypeShortREQUEST=Change or enhancement request +TicketTypeShortPROJET=Project +TicketTypeShortOTHER=Other + +TicketSeverityShortLOW=Low +TicketSeverityShortNORMAL=Normal +TicketSeverityShortHIGH=High +TicketSeverityShortBLOCKING=Critical/Blocking + +ErrorBadEmailAddress=Field '%s' incorrect +MenuTicketMyAssign=My tickets +MenuTicketMyAssignNonClosed=My open tickets +MenuListNonClosed=Open tickets + +TypeContact_ticket_internal_CONTRIBUTOR=Contributor +TypeContact_ticket_internal_SUPPORTTEC=Assigned user +TypeContact_ticket_external_SUPPORTCLI=Customer contact / incident tracking +TypeContact_ticket_external_CONTRIBUTOR=External contributor + +OriginEmail=Email source +Notify_TICKET_SENTBYMAIL=Send ticket message by email + +# Status +NotRead=Not read +Read=Read +Assigned=Assigned +InProgress=In progress +NeedMoreInformation=Waiting for information +Answered=Answered +Waiting=Waiting +Closed=Closed +Deleted=Deleted + +# Dict +Type=Type +Category=Analytic code +Severity=Severity + +# Email templates +MailToSendTicketMessage=To send email from ticket message + +# +# Admin page +# +TicketSetup=Ticket module setup +TicketSettings=Settings +TicketSetupPage= +TicketPublicAccess=A public interface requiring no identification is available at the following url +TicketSetupDictionaries=The type of ticket, severity and analytic codes are configurable from dictionaries +TicketParamModule=Module variable setup +TicketParamMail=Email setup +TicketEmailNotificationFrom=Notification email from +TicketEmailNotificationFromHelp=Used into ticket message answer by example +TicketEmailNotificationTo=Notifications email to +TicketEmailNotificationToHelp=Send email notifications to this address. +TicketNewEmailBodyLabel=Text message sent after creating a ticket +TicketNewEmailBodyHelp=The text specified here will be inserted into the email confirming the creation of a new ticket from the public interface. Information on the consultation of the ticket are automatically added. +TicketParamPublicInterface=Public interface setup +TicketsEmailMustExist=Require an existing email address to create a ticket +TicketsEmailMustExistHelp=In the public interface, the email address should already be filled in the database to create a new ticket. +PublicInterface=Public interface +TicketUrlPublicInterfaceLabelAdmin=Alternative URL for public interface +TicketUrlPublicInterfaceHelpAdmin=It is possible to define an alias to the web server and thus make available the public interface with another URL (the server must act as a proxy on this new URL) +TicketPublicInterfaceTextHomeLabelAdmin=Welcome text of the public interface +TicketPublicInterfaceTextHome=You can create a support ticket or view existing from its identifier tracking ticket. +TicketPublicInterfaceTextHomeHelpAdmin=The text defined here will appear on the home page of the public interface. +TicketPublicInterfaceTopicLabelAdmin=Interface title +TicketPublicInterfaceTopicHelp=This text will appear as the title of the public interface. +TicketPublicInterfaceTextHelpMessageLabelAdmin=Help text to the message entry +TicketPublicInterfaceTextHelpMessageHelpAdmin=This text will appear above the message input area of the user. +ExtraFieldsTicket=Extra attributes +TicketCkEditorEmailNotActivated=HTML editor is not activated. Please put FCKEDITOR_ENABLE_MAIL content to 1 to get it. +TicketsDisableEmail=Do not send emails for ticket creation or message recording +TicketsDisableEmailHelp=By default, emails are sent when new tickets or messages created. Enable this option to disable *all* email notifications +TicketsLogEnableEmail=Enable log by email +TicketsLogEnableEmailHelp=At each change, an email will be sent **to each contact** associated with the ticket. +TicketParams=Params +TicketsShowModuleLogo=Display the logo of the module in the public interface +TicketsShowModuleLogoHelp=Enable this option to hide the logo module in the pages of the public interface +TicketsShowCompanyLogo=Display the logo of the company in the public interface +TicketsShowCompanyLogoHelp=Enable this option to hide the logo of the main company in the pages of the public interface +TicketsEmailAlsoSendToMainAddress=Also send notification to main email address +TicketsEmailAlsoSendToMainAddressHelp=Enable this option to send an email to "Notification email from" address (see setup below) +TicketsLimitViewAssignedOnly=Restrict the display to tickets assigned to the current user (not effective for external users, always be limited to the third party they depend on) +TicketsLimitViewAssignedOnlyHelp=Only tickets assigned to the current user will be visible. Does not apply to a user with tickets management rights. +TicketsActivatePublicInterface=Activate public interface +TicketsActivatePublicInterfaceHelp=Public interface allow any visitors to create tickets. +TicketsAutoAssignTicket=Automatically assign the user who created the ticket +TicketsAutoAssignTicketHelp=When creating a ticket, the user can be automatically assigned to the ticket. +TicketNumberingModules=Tickets numbering module +TicketNotifyTiersAtCreation=Notify third party at creation +TicketGroup=Group +TicketsDisableCustomerEmail=Always disable emails when a ticket is created from public interface +# +# Index & list page +# +TicketsIndex=Tickets area +TicketList=List of tickets +TicketAssignedToMeInfos=This page display ticket list created by or assigned to current user +NoTicketsFound=No ticket found +NoUnreadTicketsFound=No unread ticket found +TicketViewAllTickets=View all tickets +TicketViewNonClosedOnly=View only open tickets +TicketStatByStatus=Tickets by status +OrderByDateAsc=Sort by ascending date +OrderByDateDesc=Sort by descending date +ShowAsConversation=Show as conversation list +MessageListViewType=Show as table list + +# +# Ticket card +# +Ticket=Ticket +TicketCard=Ticket card +CreateTicket=Create ticket +EditTicket=Edit ticket +TicketsManagement=Tickets Management +CreatedBy=Created by +NewTicket=New Ticket +SubjectAnswerToTicket=Ticket answer +TicketTypeRequest=Request type +TicketCategory=Analytic code +SeeTicket=See ticket +TicketMarkedAsRead=Ticket has been marked as read +TicketReadOn=Read on +TicketCloseOn=Closing date +MarkAsRead=Mark ticket as read +TicketHistory=Ticket history +AssignUser=Assign to user +TicketAssigned=Ticket is now assigned +TicketChangeType=Change type +TicketChangeCategory=Change analytic code +TicketChangeSeverity=Change severity +TicketAddMessage=Add a message +AddMessage=Add a message +MessageSuccessfullyAdded=Ticket added +TicketMessageSuccessfullyAdded=Message successfully added +TicketMessagesList=Message list +NoMsgForThisTicket=No message for this ticket +Properties=Classification +LatestNewTickets=Latest %s newest tickets (not read) +TicketSeverity=Severity +ShowTicket=See ticket +RelatedTickets=Related tickets +TicketAddIntervention=Create intervention +CloseTicket=Close ticket +CloseATicket=Close a ticket +ConfirmCloseAticket=Confirm ticket closing +ConfirmDeleteTicket=Please confirm ticket deleting +TicketDeletedSuccess=Ticket deleted with success +TicketMarkedAsClosed=Ticket marked as closed +TicketDurationAuto=Calculated duration +TicketDurationAutoInfos=Duration calculated automatically from intervention related +TicketUpdated=Ticket updated +SendMessageByEmail=Send message by email +TicketNewMessage=New message +ErrorMailRecipientIsEmptyForSendTicketMessage=Recipient is empty. No email send +TicketGoIntoContactTab=Please go into "Contacts" tab to select them +TicketMessageMailIntro=Introduction +TicketMessageMailIntroHelp=This text is added only at the beginning of the email and will not be saved. +TicketMessageMailIntroLabelAdmin=Introduction to the message when sending email +TicketMessageMailIntroText=Hello,
    A new response was sent on a ticket that you contact. Here is the message:
    +TicketMessageMailIntroHelpAdmin=This text will be inserted before the text of the response to a ticket. +TicketMessageMailSignature=Signature +TicketMessageMailSignatureHelp=This text is added only at the end of the email and will not be saved. +TicketMessageMailSignatureText=

    Sincerely,

    --

    +TicketMessageMailSignatureLabelAdmin=Signature of response email +TicketMessageMailSignatureHelpAdmin=This text will be inserted after the response message. +TicketMessageHelp=Only this text will be saved in the message list on ticket card. +TicketMessageSubstitutionReplacedByGenericValues=Substitutions variables are replaced by generic values. +TimeElapsedSince=Time elapsed since +TicketTimeToRead=Time elapsed before read +TicketContacts=Contacts ticket +TicketDocumentsLinked=Documents linked to ticket +ConfirmReOpenTicket=Confirm reopen this ticket ? +TicketMessageMailIntroAutoNewPublicMessage=A new message was posted on the ticket with the subject %s: +TicketAssignedToYou=Ticket assigned +TicketAssignedEmailBody=You have been assigned the ticket #%s by %s +MarkMessageAsPrivate=Mark message as private +TicketMessagePrivateHelp=This message will not display to external users +TicketEmailOriginIssuer=Issuer at origin of the tickets +InitialMessage=Initial Message +LinkToAContract=Link to a contract +TicketPleaseSelectAContract=Select a contract +UnableToCreateInterIfNoSocid=Can not create an intervention when no third party is defined +TicketMailExchanges=Mail exchanges +TicketInitialMessageModified=Initial message modified +TicketMessageSuccesfullyUpdated=Message successfully updated +TicketChangeStatus=Change status +TicketConfirmChangeStatus=Confirm the status change: %s ? +TicketLogStatusChanged=Status changed: %s to %s +TicketNotNotifyTiersAtCreate=Not notify company at create +Unread=Unread +TicketNotCreatedFromPublicInterface=Not available. Ticket was not created from public interface. +PublicInterfaceNotEnabled=Public interface was not enabled +ErrorTicketRefRequired=Ticket reference name is required + +# +# Logs +# +TicketLogMesgReadBy=Ticket %s read by %s +NoLogForThisTicket=No log for this ticket yet +TicketLogAssignedTo=Ticket %s assigned to %s +TicketLogPropertyChanged=Ticket %s modified: classification from %s to %s +TicketLogClosedBy=Ticket %s closed by %s +TicketLogReopen=Ticket %s re-open + +# +# Public pages +# +TicketSystem=Ticket system +ShowListTicketWithTrackId=Display ticket list from track ID +ShowTicketWithTrackId=Display ticket from track ID +TicketPublicDesc=You can create a support ticket or check from an existing ID. +YourTicketSuccessfullySaved=Ticket has been successfully saved! +MesgInfosPublicTicketCreatedWithTrackId=A new ticket has been created with ID %s and Ref %s. +PleaseRememberThisId=Please keep the tracking number that we might ask you later. +TicketNewEmailSubject=Ticket creation confirmation - Ref %s (public ticket ID %s) +TicketNewEmailSubjectCustomer=New support ticket +TicketNewEmailBody=This is an automatic email to confirm you have registered a new ticket. +TicketNewEmailBodyCustomer=This is an automatic email to confirm a new ticket has just been created into your account. +TicketNewEmailBodyInfosTicket=Information for monitoring the ticket +TicketNewEmailBodyInfosTrackId=Ticket tracking number: %s +TicketNewEmailBodyInfosTrackUrl=You can view the progress of the ticket by clicking the link above. +TicketNewEmailBodyInfosTrackUrlCustomer=You can view the progress of the ticket in the specific interface by clicking the following link +TicketEmailPleaseDoNotReplyToThisEmail=Please do not reply directly to this email! Use the link to reply into the interface. +TicketPublicInfoCreateTicket=This form allows you to record a support ticket in our management system. +TicketPublicPleaseBeAccuratelyDescribe=Please accurately describe the problem. Provide the most information possible to allow us to correctly identify your request. +TicketPublicMsgViewLogIn=Please enter ticket tracking ID +TicketTrackId=Public Tracking ID +OneOfTicketTrackId=One of your tracking ID +ErrorTicketNotFound=Ticket with tracking ID %s not found! +Subject=Subject +ViewTicket=View ticket +ViewMyTicketList=View my ticket list +ErrorEmailMustExistToCreateTicket=Error: email address not found in our database +TicketNewEmailSubjectAdmin=New ticket created - Ref %s (public ticket ID %s) +TicketNewEmailBodyAdmin=

    Ticket has just been created with ID #%s, see information:

    +SeeThisTicketIntomanagementInterface=See ticket in management interface +TicketPublicInterfaceForbidden=The public interface for the tickets was not enabled +ErrorEmailOrTrackingInvalid=Bad value for tracking ID or email +OldUser=Old user +NewUser=New user +NumberOfTicketsByMonth=Number of tickets per month +NbOfTickets=Number of tickets +# notifications +TicketNotificationEmailSubject=Ticket %s updated +TicketNotificationEmailBody=This is an automatic message to notify you that ticket %s has just been updated +TicketNotificationRecipient=Notification recipient +TicketNotificationLogMessage=Log message +TicketNotificationEmailBodyInfosTrackUrlinternal=View ticket into interface +TicketNotificationNumberEmailSent=Notification email sent: %s + +ActionsOnTicket=Events on ticket + +# +# Boxes +# +BoxLastTicket=Latest created tickets +BoxLastTicketDescription=Latest %s created tickets +BoxLastTicketContent= +BoxLastTicketNoRecordedTickets=No recent unread tickets +BoxLastModifiedTicket=Latest modified tickets +BoxLastModifiedTicketDescription=Latest %s modified tickets +BoxLastModifiedTicketContent= +BoxLastModifiedTicketNoRecordedTickets=No recent modified tickets diff --git a/htdocs/langs/sw_SW/users.lang b/htdocs/langs/sw_SW/users.lang index 43fa5342da3..aea4e7676e4 100644 --- a/htdocs/langs/sw_SW/users.lang +++ b/htdocs/langs/sw_SW/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Users and their properties DomainUser=Domain user %s Reactivate=Reactivate CreateInternalUserDesc=This form allows you to create an internal user in your company/organization. To create an external user (customer, vendor etc. ..), use the button 'Create Dolibarr User' from that third-party's contact card. -InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other.

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=Permission granted because inherited from one of a user's group. Inherited=Inherited UserWillBeInternalUser=Created user will be an internal user (because not linked to a particular third party) @@ -110,3 +110,8 @@ UserLogged=User logged DateEmployment=Employment Start Date DateEmploymentEnd=Employment End Date CantDisableYourself=You can't disable your own user record +ForceUserExpenseValidator=Force expense report validator +ForceUserHolidayValidator=Force leave request validator +ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/sw_SW/website.lang b/htdocs/langs/sw_SW/website.lang new file mode 100644 index 00000000000..bce2a09fb03 --- /dev/null +++ b/htdocs/langs/sw_SW/website.lang @@ -0,0 +1,130 @@ +# Dolibarr language file - Source file is en_US - website +Shortname=Code +WebsiteSetupDesc=Create here the websites you wish to use. Then go into menu Websites to edit them. +DeleteWebsite=Delete website +ConfirmDeleteWebsite=Are you sure you want to delete this web site? All its pages and content will also be removed. The files uploaded (like into the medias directory, the ECM module, ...) will remain. +WEBSITE_TYPE_CONTAINER=Type of page/container +WEBSITE_PAGE_EXAMPLE=Web page to use as example +WEBSITE_PAGENAME=Page name/alias +WEBSITE_ALIASALT=Alternative page names/aliases +WEBSITE_ALIASALTDesc=Use here list of other name/aliases so the page can also be accessed using this other names/aliases (for example the old name after renaming the alias to keep backlink on old link/name working). Syntax is:
    alternativename1, alternativename2, ... +WEBSITE_CSS_URL=URL of external CSS file +WEBSITE_CSS_INLINE=CSS file content (common to all pages) +WEBSITE_JS_INLINE=Javascript file content (common to all pages) +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. +MediaFiles=Media library +EditCss=Edit website properties +EditMenu=Edit menu +EditMedias=Edit medias +EditPageMeta=Edit page/container properties +EditInLine=Edit inline +AddWebsite=Add website +Webpage=Web page/container +AddPage=Add page/container +HomePage=Home Page +PageContainer=Page/container +PreviewOfSiteNotYetAvailable=Preview of your website %s not yet available. You must first 'Import a full website template' or just 'Add a page/container'. +RequestedPageHasNoContentYet=Requested page with id %s has no content yet, or cache file .tpl.php was removed. Edit content of the page to solve this. +SiteDeleted=Web site '%s' deleted +PageContent=Page/Contenair +PageDeleted=Page/Contenair '%s' of website %s deleted +PageAdded=Page/Contenair '%s' added +ViewSiteInNewTab=View site in new tab +ViewPageInNewTab=View page in new tab +SetAsHomePage=Set as Home page +RealURL=Real URL +ViewWebsiteInProduction=View web site using home URLs +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: +YouCanAlsoTestWithPHPS=Use with PHP embedded server
    On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running
    php -S 0.0.0.0:8080 -t %s +YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org +CheckVirtualHostPerms=Check also that virtual host has permission %s on files into
    %s +ReadPerm=Read +WritePerm=Write +TestDeployOnWeb=Test/deploy on web +PreviewSiteServedByWebServer=Preview %s in a new tab.

    The %s will be served by an external web server (like Apache, Nginx, IIS). You must install and setup this server before to point to directory:
    %s
    URL served by external server:
    %s +PreviewSiteServedByDolibarr=Preview %s in a new tab.

    The %s will be served by Dolibarr server so it does not need any extra web server (like Apache, Nginx, IIS) to be installed.
    The inconvenient is that URL of pages are not user friendly and start with path of your Dolibarr.
    URL served by Dolibarr:
    %s

    To use your own external web server to serve this web site, create a virtual host on your web server that point on directory
    %s
    then enter the name of this virtual server and click on the other preview button. +VirtualHostUrlNotDefined=URL of the virtual host served by external web server not defined +NoPageYet=No pages yet +YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template +SyntaxHelp=Help on specific syntax tips +YouCanEditHtmlSourceckeditor=You can edit HTML source code using the "Source" button in editor. +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +ClonePage=Clone page/container +CloneSite=Clone site +SiteAdded=Website added +ConfirmClonePage=Please enter code/alias of new page and if it is a translation of the cloned page. +PageIsANewTranslation=The new page is a translation of the current page ? +LanguageMustNotBeSameThanClonedPage=You clone a page as a translation. The language of the new page must be different than language of source page. +ParentPageId=Parent page ID +WebsiteId=Website ID +CreateByFetchingExternalPage=Create page/container by fetching page from external URL... +OrEnterPageInfoManually=Or create page from scratch or from a page template... +FetchAndCreate=Fetch and Create +ExportSite=Export website +ImportSite=Import website template +IDOfPage=Id of page +Banner=Banner +BlogPost=Blog post +WebsiteAccount=Website account +WebsiteAccounts=Website accounts +AddWebsiteAccount=Create web site account +BackToListForThirdParty=Back to list for the third-party +DisableSiteFirst=Disable website first +MyContainerTitle=My web site title +AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) +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 +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. +OnlyEditionOfSourceForGrabbedContent=Only edition of HTML source is possible when content was grabbed from an external site +GrabImagesInto=Grab also images found into css and page. +ImagesShouldBeSavedInto=Images should be saved into directory +WebsiteRootOfImages=Root directory for website images +SubdirOfPage=Sub-directory dedicated to page +AliasPageAlreadyExists=Alias page %s already exists +CorporateHomePage=Corporate Home page +EmptyPage=Empty page +ExternalURLMustStartWithHttp=External URL must start with http:// or https:// +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 +ThisPageHasTranslationPages=This page/container has translation +NoWebSiteCreateOneFirst=No website has been created yet. Create one first. +GoTo=Go to +DynamicPHPCodeContainsAForbiddenInstruction=You add dynamic PHP code that contains the PHP instruction '%s' that is forbidden by default as dynamic content (see hidden options WEBSITE_PHP_ALLOW_xxx to increase list of allowed commands). +NotAllowedToAddDynamicContent=You don't have permission to add or edit PHP dynamic content in websites. Ask permission or just keep code into php tags unmodified. +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 +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. +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. +Dynamiccontent=Sample of a page with dynamic content +ImportSite=Import website template +EditInLineOnOff=Mode 'Edit inline' is %s +ShowSubContainersOnOff=Mode to execute 'dynamic content' is %s +GlobalCSSorJS=Global CSS/JS/Header file of web site +BackToHomePage=Back to home page... +TranslationLinks=Translation links +YouTryToAccessToAFileThatIsNotAWebsitePage=You try to access to a page that is not a website page +UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 characters +MainLanguage=Main language +OtherLanguages=Other languages +UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/sw_SW/zapier.lang b/htdocs/langs/sw_SW/zapier.lang new file mode 100644 index 00000000000..6d6eda71313 --- /dev/null +++ b/htdocs/langs/sw_SW/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr module + +# +# Admin page +# +ZapierForDolibarrSetup = Setup of Zapier for Dolibarr diff --git a/htdocs/langs/th_TH/accountancy.lang b/htdocs/langs/th_TH/accountancy.lang index 7839fc21d24..35f86f621b2 100644 --- a/htdocs/langs/th_TH/accountancy.lang +++ b/htdocs/langs/th_TH/accountancy.lang @@ -121,6 +121,7 @@ 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 +TotalForAccount=Total for accounting account Ventilate=Bind @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Accounting account to register donations ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (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 products sold in EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported 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_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (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_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unkno ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error PaymentsNotLinkedToProduct=Payment not linked to any product / service +OpeningBalance=Opening balance ShowOpeningBalance=Show opening balance HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Group of account PcgtypeDesc=Group 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. +Reconcilable=Reconcilable + TotalVente=Total turnover before tax TotalMarge=อัตรากำไรขั้นต้นรวมยอดขาย @@ -307,11 +317,13 @@ 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Chart of accounts Id ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC OptionModeProductSellExport=Mode sales exported in other countries OptionModeProductBuy=Mode purchases +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries 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. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=Remove accounting code from lines that not exists into charts of account CleanHistory=Reset all bindings for selected year PredefinedGroups=Predefined groups @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Account removed from group SaleLocal=Local sale SaleExport=Export sale SaleEEC=Sale in EEC +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=Range of accounting account diff --git a/htdocs/langs/th_TH/admin.lang b/htdocs/langs/th_TH/admin.lang index a5ff9a413ac..16c6dba398c 100644 --- a/htdocs/langs/th_TH/admin.lang +++ b/htdocs/langs/th_TH/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=ผู้ใช้เว็บเซิร์ฟเวอร์ / NoSessionFound=Your PHP configuration seems to not allow listing of active sessions. The directory used to save sessions (%s) may be protected (for example by OS permissions or by PHP directive open_basedir). DBStoringCharset=ฐานข้อมูล charset ในการเก็บข้อมูล DBSortingCharset=ฐานข้อมูล charset ในการจัดเรียงข้อมูล +HostCharset=Host charset ClientCharset=Client charset ClientSortingCharset=Client collation WarningModuleNotActive=% s โมดูลต้องเปิดใช้งาน @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the NoMaxSizeByPHPLimit=หมายเหตุ: ไม่ จำกัด มีการตั้งค่าในการกำหนดค่าของ PHP MaxSizeForUploadedFiles=ขนาดสูงสุดของไฟล์ที่อัปโหลด (0 ไม่อนุญาตให้อัปโหลดใด ๆ ) UseCaptchaCode=ใช้รหัสแบบกราฟิก (CAPTCHA) บนหน้าเข้าสู่ระบบ -AntiVirusCommand= เส้นทางแบบเต็มคำสั่งป้องกันไวรัส -AntiVirusCommandExample= ตัวอย่าง ClamWin: c: \\ Progra ~ 1 \\ ClamWin \\ bin \\ clamscan.exe
    ตัวอย่าง ClamAV: / usr / bin / clamscan +AntiVirusCommand=เส้นทางแบบเต็มคำสั่งป้องกันไวรัส +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= พารามิเตอร์เพิ่มเติมเกี่ยวกับบรรทัดคำสั่ง -AntiVirusParamExample= ตัวอย่าง ClamWin: --database = "C: \\ Program Files (x86) \\ ClamWin \\ lib" +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=บัญชีการติดตั้งโมดูล UserSetup=การตั้งค่าการจัดการผู้ใช้ MultiCurrencySetup=Multi-currency setup @@ -199,7 +200,7 @@ FeatureDisabledInDemo=ปิดใช้งานคุณลักษณะใ FeatureAvailableOnlyOnStable=Feature only available on official stable versions BoxesDesc=Widgets are components showing some information that you can add to personalize some pages. You can choose between showing the widget or not by selecting target page and clicking 'Activate', or by clicking the trashcan to disable it. OnlyActiveElementsAreShown=องค์ประกอบเฉพาะจาก โมดูลที่เปิดใช้งาน จะแสดง -ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button (at end of module line) to enable/disable a module/application. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. ModulesMarketPlaceDesc=You can find more modules to download on external websites on the Internet... ModulesDeployDesc=If permissions on your file system allow it, you can use this tool to deploy an external module. The module will then be visible on the tab %s. ModulesMarketPlaces=Find external app/modules @@ -212,6 +213,7 @@ CompatibleUpTo=Compatible with version %s NotCompatible=This module does not seem compatible with your Dolibarr %s (Min %s - Max %s). CompatibleAfterUpdate=This module requires an update to your Dolibarr %s (Min %s - Max %s). SeeInMarkerPlace=See in Market place +SeeSetupOfModule=ดูการตั้งค่าของโมดูล% s Updated=Updated Nouveauté=Novelty AchatTelechargement=Buy / Download @@ -221,6 +223,7 @@ DoliPartnersDesc=List of companies providing custom-developed modules or feature WebSiteDesc=External websites for more add-on (non-core) modules... DevelopYourModuleDesc=Some solutions to develop your own module... URL=URL +RelativeURL=Relative URL BoxesAvailable=Widgets available BoxesActivated=Widgets activated ActivateOn=เปิดใช้งานบน @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Checkboxes ExtrafieldCheckBoxFromList=Checkboxes from table ExtrafieldLink=เชื่อมโยงไปยังวัตถุ ComputedFormula=Computed field -ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Store computed field ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! ExtrafieldParamHelpPassword=Leaving this field blank means this value will be stored without encryption (field must be only hidden with star on screen).
    Set 'auto' to use the default encryption rule to save password into database (then value read will be the hash only, no way to retrieve original value) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=ให้ว่างเพื่อใช้ค่าเ DefaultLink=เริ่มต้นการเชื่อมโยง SetAsDefault=Set as default ValueOverwrittenByUserSetup=คำเตือนค่านี้อาจถูกเขียนทับโดยการตั้งค่าของผู้ใช้เฉพาะ (ผู้ใช้แต่ละคนสามารถตั้งค่า URL clicktodial ของตัวเอง) -ExternalModule=โมดูลภายนอก - ติดตั้งลงในไดเรกทอรี% s +ExternalModule=External module +InstalledInto=Installed into directory %s BarcodeInitForthird-parties=Mass barcode init for third-parties BarcodeInitForProductsOrServices=init บาร์โค้ดมวลหรือตั้งค่าสำหรับผลิตภัณฑ์หรือบริการ CurrentlyNWithoutBarCode=Currently, you have %s record on %s %s without barcode defined. @@ -947,7 +951,7 @@ DictionaryCanton=States/Provinces DictionaryRegion=ภูมิภาค DictionaryCountry=ประเทศ DictionaryCurrency=สกุลเงิน -DictionaryCivility=Title of civility +DictionaryCivility=Honorific titles DictionaryActions=Types of agenda events DictionarySocialContributions=Types of social or fiscal taxes DictionaryVAT=ภาษีมูลค่าเพิ่มราคาหรืออัตราภาษีการขาย @@ -988,6 +992,7 @@ VATIsNotUsedDesc=By default the proposed Sales tax is 0 which can be used for ca VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=ประเมิน LocalTax1IsNotUsed=อย่าใช้ภาษีที่สอง LocalTax1IsUsedDesc=Use a second type of tax (other than first one) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices LocalTax2IsNotUsedDescES=โดยค่าเริ่มต้น IRPF เสนอคือ 0 สิ้นสุดของการปกครอง LocalTax2IsUsedExampleES=ในสเปนมือปืนรับจ้างและอาชีพอิสระที่ให้บริการและ บริษัท ที่ได้รับเลือกให้ระบบภาษีของโมดูล LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=รายงานเกี่ยวกับภาษีท้องถิ่น CalcLocaltax1=ขาย - ซื้อ CalcLocaltax1Desc=รายงานภาษีท้องถิ่นที่มีการคำนวณมีความแตกต่างระหว่างการขายและการซื้อ localtaxes localtaxes @@ -1018,6 +1026,7 @@ CalcLocaltax2=การสั่งซื้อสินค้า CalcLocaltax2Desc=รายงานภาษีท้องถิ่นรวมของการซื้อ localtaxes CalcLocaltax3=ขาย CalcLocaltax3Desc=รายงานภาษีท้องถิ่นรวมของยอดขาย localtaxes +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=ฉลากใช้โดยเริ่มต้นถ้าแปลไม่สามารถพบได้สำหรับรหัส LabelOnDocuments=ป้ายเกี่ยวกับเอกสาร LabelOrTranslationKey=Label or translation key @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Expense report to approve Delays_MAIN_DELAY_HOLIDAYS=Leave requests 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. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. SetupDescription5=Other Setup menu entries manage optional parameters. LogEvents=ตรวจสอบเหตุการณ์การรักษาความปลอดภัย Audit=การตรวจสอบบัญชี @@ -1128,7 +1137,7 @@ LogEventDesc=Enable logging for specific security events. Administrators the log AreaForAdminOnly=Setup parameters can be set by administrator users only. SystemInfoDesc=ข้อมูลระบบข้อมูลทางด้านเทคนิคอื่น ๆ ที่คุณได้รับในโหมดอ่านอย่างเดียวและมองเห็นสำหรับผู้ดูแลระบบเท่านั้น SystemAreaForAdminOnly=This area is available to administrator users only. Dolibarr user permissions cannot change this restriction. -CompanyFundationDesc=Edit the information of the company/entity. Click on "%s" button at the bottom of the page. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. AccountantFileNumber=Accountant code DisplayDesc=Parameters affecting the look and behaviour of Dolibarr can be modified here. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Rules to generate and validate passwords DisableForgetPasswordLinkOnLogonPage=Do not show the "Password Forgotten" link on the Login page UsersSetup=ผู้ใช้ติดตั้งโมดูล UserMailRequired=Email required to create a new user +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### HRMSetup=HRM module setup ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=รูปแบบเอกสารใบแจ้งหนี BillsPDFModulesAccordindToInvoiceType=Invoice documents models according to invoice type PaymentsPDFModules=Payment documents models ForceInvoiceDate=วันที่ใบแจ้งหนี้กองทัพวันที่ตรวจสอบ -SuggestedPaymentModesIfNotDefinedInInvoice=โหมดการชำระเงินในใบแจ้งหนี้ที่แนะนำโดยค่าเริ่มต้นหากไม่ได้กำหนดไว้สำหรับใบแจ้งหนี้ +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice SuggestPaymentByRIBOnAccount=Suggest payment by withdrawal on account SuggestPaymentByChequeToAddress=Suggest payment by check to FreeLegalTextOnInvoices=ข้อความฟรีในใบแจ้งหนี้ @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Vendor payments setup PropalSetup=ข้อเสนอเชิงพาณิชย์การติดตั้งโมดูล ProposalsNumberingModules=จำนวนข้อเสนอในเชิงพาณิชย์รุ่น ProposalsPDFModules=เอกสารข้อเสนอในเชิงพาณิชย์รุ่น -SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined for proposal +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal FreeLegalTextOnProposal=ข้อความฟรีเกี่ยวกับข้อเสนอในเชิงพาณิชย์ WatermarkOnDraftProposal=ลายน้ำในร่างข้อเสนอในเชิงพาณิชย์ (ไม่มีถ้าว่างเปล่า) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=ขอปลายทางบัญชีธนาคารของข้อเสนอ @@ -1322,6 +1334,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 ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=Sales Orders management setup OrdersNumberingModules=สั่งซื้อจำนวนรุ่น OrdersModelModule=เอกสารการสั่งซื้อรุ่น @@ -1720,7 +1733,7 @@ MultiCompanySetup=หลาย บริษัท ติดตั้งโมด ##### Suppliers ##### SuppliersSetup=Vendor module setup SuppliersCommandModel=Complete template of Purchase Order -SuppliersCommandModelMuscadet=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) SuppliersInvoiceModel=Complete template of Vendor Invoice SuppliersInvoiceNumberingModel=Vendor invoices numbering models IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Hide images in Top menu LeftMenuBackgroundColor=สีพื้นหลังสำหรับเมนูด้านซ้าย BackgroundTableTitleColor=Background color for Table title line BackgroundTableTitleTextColor=Text color for Table title line +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=สีพื้นหลังสำหรับสายตารางแปลก BackgroundTableLineEvenColor=สีพื้นหลังสำหรับแม้แต่เส้นตาราง MinimumNoticePeriod=ระยะเวลาการแจ้งให้ทราบล่วงหน้าขั้นต่ำ (ตามคำขอลาของคุณจะต้องทำก่อนการหน่วงเวลานี้) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Dolibarr Reference not found in Message ID FormatZip=ไปรษณีย์ MainMenuCode=Menu entry code (mainmenu) ECMAutoTree=Show automatic ECM tree -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. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Opening hours OpeningHoursDesc=Enter here the regular opening hours of your company. ResourceSetup=Configuration of Resource module @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramatical ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export +ImportSetup=Setup of module Import InstanceUniqueID=Unique ID of the instance SmallerThan=Smaller than LargerThan=Larger than @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled EmailTemplate=Template for email EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/th_TH/bills.lang b/htdocs/langs/th_TH/bills.lang index 61606afb95b..98fa07d56b7 100644 --- a/htdocs/langs/th_TH/bills.lang +++ b/htdocs/langs/th_TH/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Vendors invoices SupplierBill=Vendor invoice SupplierBills=ซัพพลายเออร์ใบแจ้งหนี้ Payment=การชำระเงิน -PaymentBack=การชำระเงินกลับ -CustomerInvoicePaymentBack=การชำระเงินกลับ +PaymentBack=Refund +CustomerInvoicePaymentBack=Refund Payments=วิธีการชำระเงิน PaymentsBack=Refunds paymentInInvoiceCurrency=in invoices currency PaidBack=จ่ายคืน DeletePayment=ลบการชำระเงิน ConfirmDeletePayment=Are you sure you want to delete this payment? -ConfirmConvertToReduc=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. -ConfirmConvertToReducSupplier=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. SupplierPayments=Vendor payments ReceivedPayments=การชำระเงินที่ได้รับ @@ -209,17 +209,13 @@ NumberOfBillsByMonth=No. of invoices per month AmountOfBills=จำนวนเงินของใบแจ้งหนี้ AmountOfBillsHT=Amount of invoices (net of tax) AmountOfBillsByMonthHT=จำนวนเงินของใบแจ้งหนี้ตามเดือน (สุทธิจากภาษี) -ShowSocialContribution=แสดงทางสังคม / ภาษีการคลัง -ShowBill=แสดงใบแจ้งหนี้ -ShowInvoice=แสดงใบแจ้งหนี้ -ShowInvoiceReplace=แสดงการเปลี่ยนใบแจ้งหนี้ -ShowInvoiceAvoir=แสดงใบลดหนี้ -ShowInvoiceDeposit=Show down payment invoice -ShowInvoiceSituation=Show situation invoice UseSituationInvoices=Allow situation invoice UseSituationInvoicesCreditNote=Allow situation invoice credit note Retainedwarranty=Retained warranty +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=To pay on %s toPayOn=to pay on %s RetainedWarranty=Retained Warranty @@ -230,7 +226,6 @@ 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=Already paid (without credit notes and down payments) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Generated from template invoice %s WarningInvoiceDateInFuture=Warning, the invoice date is higher than current date WarningInvoiceDateTooFarInFuture=Warning, the invoice date is too far from current date ViewAvailableGlobalDiscounts=View available discounts +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=สถานะ PaymentConditionShortRECEP=Due Upon Receipt @@ -509,7 +505,7 @@ ToMakePayment=จ่ายเงิน ToMakePaymentBack=คืนทุน ListOfYourUnpaidInvoices=รายการของใบแจ้งหนี้ที่ค้างชำระ NoteListOfYourUnpaidInvoices=หมายเหตุ: รายการนี​​้จะมีใบแจ้งหนี้เฉพาะบุคคลที่สามคุณจะเชื่อมโยงกับการเป็นตัวแทนขาย -RevenueStamp=อากรแสตมป์ +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party YouMustCreateStandardInvoiceFirstDesc=You have to create a standard invoice first and convert it to "template" to create a new template invoice @@ -575,3 +571,4 @@ AutoFillDateTo=Set end date for service line with next invoice date AutoFillDateToShort=Set end date MaxNumberOfGenerationReached=Max number of gen. reached BILL_DELETEInDolibarr=Invoice deleted +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/th_TH/blockedlog.lang b/htdocs/langs/th_TH/blockedlog.lang index b7e41472b88..88511cd5fbd 100644 --- a/htdocs/langs/th_TH/blockedlog.lang +++ b/htdocs/langs/th_TH/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Unalterable logs ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) DownloadBlockChain=Download fingerprints -KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this re after it was recorded, or has erased the previous archived record (check that line with previous # exists). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. AddedByAuthority=Stored into remote authority diff --git a/htdocs/langs/th_TH/cashdesk.lang b/htdocs/langs/th_TH/cashdesk.lang index e128eaefc3a..37114cb5d8f 100644 --- a/htdocs/langs/th_TH/cashdesk.lang +++ b/htdocs/langs/th_TH/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=เพิ่มบทความนี้ RestartSelling=กลับไปขาย SellFinished=Sale complete PrintTicket=ตั๋วพิมพ์ +SendTicket=Send ticket NoProductFound=บทความไม่พบ ProductFound=สินค้าที่พบ NoArticle=บทความไม่มี @@ -48,6 +49,7 @@ Footer=Footer AmountAtEndOfPeriod=Amount at end of period (day, month or year) TheoricalAmount=Theorical amount RealAmount=Real amount +CashFence=Cash fence CashFenceDone=Cash fence done for the period NbOfInvoices=nb ของใบแจ้งหนี้ Paymentnumpad=Type of Pad to enter payment @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS needs product categories to work OrderNotes=Order Notes CashDeskBankAccountFor=Default account to use for payments in NoPaimementModesDefined=No paiment mode defined in TakePOS configuration -TicketVatGrouped=Group VAT by rate in tickets -AutoPrintTickets=Automatically print tickets +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? @@ -87,7 +90,19 @@ HeadBar=Head Bar SortProductField=Field for sorting products Browser=เบราว์เซอร์ BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/th_TH/companies.lang b/htdocs/langs/th_TH/companies.lang index 7bfd0bcff28..3cb75476145 100644 --- a/htdocs/langs/th_TH/companies.lang +++ b/htdocs/langs/th_TH/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted=บริษัท "% s" ลบออกจากฐานข้ ListOfContacts=รายชื่อผู้ติดต่อ / ที่อยู่ ListOfContactsAddresses=รายชื่อผู้ติดต่อ / ที่อยู่ ListOfThirdParties=List of Third Parties -ShowCompany=Show Third Party ShowContact=แสดงรายชื่อผู้ติดต่อ ContactsAllShort=ทั้งหมด (ไม่กรอง) ContactType=ประเภทติดต่อ @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=First name of sales representative SaleRepresentativeLastname=Last name of sales representative ErrorThirdpartiesMerge=There was an error when deleting the third parties. Please check the log. Changes have been reverted. NewCustomerSupplierCodeProposed=Customer or Vendor code already used, a new code is suggested +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Payment Type - Customer PaymentTermsCustomer=Payment Terms - Customer diff --git a/htdocs/langs/th_TH/compta.lang b/htdocs/langs/th_TH/compta.lang index 5d8340365f7..9b30b80baca 100644 --- a/htdocs/langs/th_TH/compta.lang +++ b/htdocs/langs/th_TH/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=See %sanalysis of payments%s for a calculation on act SeeReportInDueDebtMode=See %sanalysis of invoices%s for a calculation based on known recorded invoices even if they are not yet accounted in Ledger. SeeReportInBookkeepingMode=See %sBookeeping report%s for a calculation on Bookkeeping Ledger table RulesAmountWithTaxIncluded=- จํานวนเงินที่แสดงเป็นกับภาษีรวมทั้งหมด -RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the validation date of invoices and VAT and on the due date for expenses. For salaries defined with Salary module, the value date of payment is used. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- It includes the real payments made on invoices, expenses, VAT and salaries.
    - It is based on the payment dates of the invoices, expenses, VAT and salaries. The donation date for donation. -RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the validation date of these invoices.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    RulesCATotalSaleJournal=It includes all credit lines from the Sale journal. RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Turnover invoiced by sale tax rate TurnoverCollectedbyVatrate=Turnover collected by sale tax rate PurchasebyVatrate=Purchase by sale tax rate LabelToShow=ป้ายสั้น +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/th_TH/donations.lang b/htdocs/langs/th_TH/donations.lang index e0b8d33217f..71a67dc9758 100644 --- a/htdocs/langs/th_TH/donations.lang +++ b/htdocs/langs/th_TH/donations.lang @@ -7,7 +7,6 @@ AddDonation=สร้างการบริจาค NewDonation=บริจาคใหม่ DeleteADonation=ลบบริจาค ConfirmDeleteADonation=Are you sure you want to delete this donation? -ShowDonation=แสดงบริจาค PublicDonation=เงินบริจาคของประชาชน DonationsArea=พื้นที่บริจาค DonationStatusPromiseNotValidated=ร่างสัญญา @@ -17,6 +16,7 @@ DonationStatusPromiseNotValidatedShort=ร่าง DonationStatusPromiseValidatedShort=ผ่านการตรวจสอบ DonationStatusPaidShort=ที่ได้รับ DonationTitle=ใบเสร็จรับเงินบริจาค +DonationDate=Donation date DonationDatePayment=วันที่ชำระเงิน ValidPromess=ตรวจสอบสัญญา DonationReceipt=ใบเสร็จรับเงินบริจาค diff --git a/htdocs/langs/th_TH/errors.lang b/htdocs/langs/th_TH/errors.lang index fa3e3db00dd..a300df92288 100644 --- a/htdocs/langs/th_TH/errors.lang +++ b/htdocs/langs/th_TH/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=ไฟล์ไม่ได้รับอย่างสมบ ErrorNoTmpDir=ชั่วคราวโดยตรงได้% s ไม่ได้มีอยู่ ErrorUploadBlockedByAddon=อัพโหลดบล็อกโดย PHP / ปลั๊กอินอาปาเช่ ErrorFileSizeTooLarge=ขนาดไฟล์มีขนาดใหญ่เกินไป +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=ขนาดยาวเกินไปสำหรับประเภท int (s% ตัวเลขสูงสุด) ErrorSizeTooLongForVarcharType=ขนาดยาวเกินไปสำหรับประเภทสตริง (% s ตัวอักษรสูงสุด) ErrorNoValueForSelectType=กรุณากรอกค่าส​​ำหรับรายการเลือก @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # 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/th_TH/install.lang b/htdocs/langs/th_TH/install.lang index 91b703ed8fa..cd4c2c1f6cb 100644 --- a/htdocs/langs/th_TH/install.lang +++ b/htdocs/langs/th_TH/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=This PHP supports Curl. PHPSupportCalendar=This PHP supports calendars extensions. PHPSupportUTF8=This PHP supports UTF8 functions. PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=This PHP supports %s 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. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=Your PHP installation does not support Curl. ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. 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. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. ErrorDirDoesNotExists=สารบบ% s ไม่ได้อยู่ ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=The application tried to self-upgrade, but the in 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. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/th_TH/interventions.lang b/htdocs/langs/th_TH/interventions.lang index f15fc776b73..dd10bf804e4 100644 --- a/htdocs/langs/th_TH/interventions.lang +++ b/htdocs/langs/th_TH/interventions.lang @@ -41,9 +41,7 @@ InterventionsArea=Interventions area DraftFichinter=Draft interventions LastModifiedInterventions=Latest %s modified interventions FichinterToProcess=Interventions to process -##### Types de contacts ##### TypeContact_fichinter_external_CUSTOMER=ติดตามการติดต่อกับลูกค้า -# Modele numérotation PrintProductsOnFichinter=Print also lines of type "product" (not only services) on intervention card PrintProductsOnFichinterDetails=การแทรกแซงที่เกิดจากคำสั่งซื้อ UseServicesDurationOnFichinter=Use services duration for interventions generated from orders @@ -53,14 +51,16 @@ InterventionStatistics=Statistics of interventions NbOfinterventions=No. of intervention cards NumberOfInterventionsByMonth=No. of intervention cards by month (date of validation) AmountOfInteventionNotIncludedByDefault=Amount of intervention is not included by default into profit (in most cases, timesheets are used to count time spent). Add option PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT to 1 into home-setup-other to include them. -##### Exports ##### InterId=Intervention id InterRef=Intervention ref. InterDateCreation=Date creation intervention InterDuration=Duration intervention InterStatus=Status intervention InterNote=Note intervention +InterLine=Line of intervention InterLineId=Line id intervention InterLineDate=Line date intervention InterLineDuration=Line duration intervention InterLineDesc=Line description intervention +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/th_TH/link.lang b/htdocs/langs/th_TH/link.lang index 1d7f7021311..7a1e16ba362 100644 --- a/htdocs/langs/th_TH/link.lang +++ b/htdocs/langs/th_TH/link.lang @@ -8,3 +8,4 @@ LinkRemoved=การเชื่อมโยง% s ได้ถูกลบอ ErrorFailedToDeleteLink= ล้มเหลวในการลบการเชื่อมโยง '% s' ErrorFailedToUpdateLink= ล้มเหลวในการปรับปรุงการเชื่อมโยง '% s' URLToLink=URL to link +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/th_TH/mails.lang b/htdocs/langs/th_TH/mails.lang index 74c88d35808..e880ef23289 100644 --- a/htdocs/langs/th_TH/mails.lang +++ b/htdocs/langs/th_TH/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=No contact/address with a category found NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found OutGoingEmailSetup=Outgoing email setup InGoingEmailSetup=Incoming email setup -OutGoingEmailSetupForEmailing=Outgoing email setup (for mass emailing) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Default outgoing email setup Information=ข้อมูล ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/th_TH/main.lang b/htdocs/langs/th_TH/main.lang index b1b92cb459a..9951363424e 100644 --- a/htdocs/langs/th_TH/main.lang +++ b/htdocs/langs/th_TH/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Save and stay SaveAndNew=Save and new TestConnection=ทดสอบการเชื่อมต่อ ToClone=โคลน +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Choose data you want to clone: NoCloneOptionsSpecified=ไม่มีข้อมูลที่จะโคลนที่กำหนดไว้ Of=ของ @@ -829,6 +830,8 @@ Gender=Gender Genderman=คน Genderwoman=หญิง ViewList=มุมมองรายการ +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Mandatory Hello=สวัสดี GoodBye=GoodBye @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Select your graph options to build a graph Measures=Measures XAxis=X-Axis YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/th_TH/modulebuilder.lang b/htdocs/langs/th_TH/modulebuilder.lang index 00a8c0f9d32..135ac1ae9ec 100644 --- a/htdocs/langs/th_TH/modulebuilder.lang +++ b/htdocs/langs/th_TH/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=List of dictionaries entries ListOfPermissionsDefined=List of defined permissions SeeExamples=See examples here EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) -VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update). Using a negative value means field is not shown by default on list but can be selected for viewing). It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty DisplayOnPdf=Display on PDF IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) diff --git a/htdocs/langs/th_TH/other.lang b/htdocs/langs/th_TH/other.lang index 2bc5e24fb97..3852fa08125 100644 --- a/htdocs/langs/th_TH/other.lang +++ b/htdocs/langs/th_TH/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Sales order validated Notify_ORDER_SENTBYMAIL=Sales order sent by mail Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=URL of page WEBSITE_TITLE=ชื่อเรื่อง WEBSITE_DESCRIPTION=ลักษณะ WEBSITE_IMAGE=Image -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Keywords LinesToImport=Lines to import diff --git a/htdocs/langs/th_TH/products.lang b/htdocs/langs/th_TH/products.lang index f5768cbb3c5..25d33c1d271 100644 --- a/htdocs/langs/th_TH/products.lang +++ b/htdocs/langs/th_TH/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL MassBarcodeInit=init บาร์โค้ดมวล MassBarcodeInitDesc=หน้านี้สามารถนำมาใช้ในการเริ่มต้นบาร์โค้ดบนวัตถุที่ไม่ได้มีการกำหนดบาร์โค้ด ก่อนที่จะตรวจสอบการตั้งค่าของบาร์โค้ดโมดูลที่เสร็จสมบูรณ์ ProductAccountancyBuyCode=Accounting code (purchase) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Accounting code (sale) ProductAccountancySellIntraCode=Accounting code (sale intra-Community) ProductAccountancySellExportCode=Accounting code (sale export) @@ -165,7 +167,7 @@ SuppliersPrices=Vendor prices SuppliersPricesOfProductsOrServices=Vendor prices (of products or services) CustomCode=Customs / Commodity / HS code CountryOrigin=ประเทศแหล่งกำเนิดสินค้า -Nature=Nature of produt (material/finished) +Nature=Nature of product (material/finished) ShortLabel=ป้ายสั้น Unit=หน่วย p=ยู diff --git a/htdocs/langs/th_TH/projects.lang b/htdocs/langs/th_TH/projects.lang index c9975018266..b07c8503eaa 100644 --- a/htdocs/langs/th_TH/projects.lang +++ b/htdocs/langs/th_TH/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=which I'm linked to project Time=เวลา ListOfTasks=List of tasks GoToListOfTimeConsumed=Go to list of time consumed -GoToListOfTasks=Show as list -GoToGanttView=show as Gantt GanttView=Gantt View ListProposalsAssociatedProject=List of the commercial proposals related to the project ListOrdersAssociatedProject=List of sales orders related to the project @@ -188,7 +186,7 @@ PlannedWorkload=ภาระงานที่วางแผนไว้ PlannedWorkloadShort=จำนวนงาน ProjectReferers=Related items ProjectMustBeValidatedFirst=โครงการจะต้องผ่านการตรวจสอบครั้งแรก -FirstAddRessourceToAllocateTime=Assign a user resource to task to allocate time +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=การป้อนข้อมูลต่อวัน InputPerWeek=การป้อนข้อมูลต่อสัปดาห์ InputPerMonth=Input per month @@ -240,6 +238,7 @@ LatestModifiedProjects=Latest %s modified projects OtherFilteredTasks=Other filtered tasks NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=Allow user comments on tasks AllowCommentOnProject=Allow user comments on projects @@ -256,7 +255,7 @@ ServiceToUseOnLines=Service to use on lines InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. ProjectFollowOpportunity=Follow opportunity -ProjectFollowTasks=Follow tasks +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Usage: Opportunity UsageTasks=Usage: Tasks @@ -265,3 +264,4 @@ InvoiceToUse=Draft invoice to use NewInvoice=ใบแจ้งหนี้ใหม่ OneLinePerTask=One line per task OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/th_TH/receiptprinter.lang b/htdocs/langs/th_TH/receiptprinter.lang index 6585fbf8b0e..4c11334a70d 100644 --- a/htdocs/langs/th_TH/receiptprinter.lang +++ b/htdocs/langs/th_TH/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Dummy Printer CONNECTOR_NETWORK_PRINT=Network Printer CONNECTOR_FILE_PRINT=Local Printer CONNECTOR_WINDOWS_PRINT=Local Windows Printer +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Fake Printer for test, does nothing CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Default Profile PROFILE_SIMPLE=Simple Profile PROFILE_EPOSTEP=Epos Tep Profile @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Invoice month in letters DOL_VALUE_MONTH=Invoice month DOL_VALUE_DAY=Invoice day DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=อ้างอิงใบแจ้งหนี้ +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=เมืองหลวง +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/th_TH/stripe.lang b/htdocs/langs/th_TH/stripe.lang index bd13d3c44da..4da17697604 100644 --- a/htdocs/langs/th_TH/stripe.lang +++ b/htdocs/langs/th_TH/stripe.lang @@ -32,6 +32,7 @@ VendorName=ชื่อของผู้ขาย CSSUrlForPaymentForm=รูปแบบ CSS url ของแผ่นสำหรับรูปแบบการชำระเงิน NewStripePaymentReceived=New Stripe payment received NewStripePaymentFailed=New Stripe payment tried but failed +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Secret test key STRIPE_TEST_PUBLISHABLE_KEY=Publishable test key STRIPE_TEST_WEBHOOK_KEY=Webhook test key @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mo 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... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authenticatin rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/th_TH/users.lang b/htdocs/langs/th_TH/users.lang index d2daca778b2..8bee6d24478 100644 --- a/htdocs/langs/th_TH/users.lang +++ b/htdocs/langs/th_TH/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Users and their properties DomainUser=โดเมนของผู้ใช้% s Reactivate=ฟื้นฟู CreateInternalUserDesc=This form allows you to create an internal user in your company/organization. To create an external user (customer, vendor etc. ..), use the button 'Create Dolibarr User' from that third-party's contact card. -InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other.

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=ได้รับอนุญาตเพราะรับมาจากหนึ่งในกลุ่มของผู้ใช้ Inherited=ที่สืบทอด UserWillBeInternalUser=ผู้ใช้ที่สร้างจะเป็นผู้ใช้งานภายใน (เพราะไม่เชื่อมโยงกับบุคคลที่สามโดยเฉพาะ) @@ -110,3 +110,8 @@ UserLogged=User logged DateEmployment=Employment Start Date DateEmploymentEnd=Employment End Date CantDisableYourself=You can't disable your own user record +ForceUserExpenseValidator=Force expense report validator +ForceUserHolidayValidator=Force leave request validator +ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/th_TH/website.lang b/htdocs/langs/th_TH/website.lang index b23ac9dce8a..0fee45ead93 100644 --- a/htdocs/langs/th_TH/website.lang +++ b/htdocs/langs/th_TH/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=View page in new tab SetAsHomePage=Set as Home page RealURL=Real URL ViewWebsiteInProduction=View web site using home URLs -SetHereVirtualHost=Use with Apache/NGinx/...
    If you can create, on your web server (Apache, Nginx, ...), a dedicated Virtual Host with PHP enabled and a Root directory on
    %s
    then set the name of the virtual host you have created in the properties of web site, so the preview can be done also using this dedicated web server access instead of the internal Dolibarr server. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS=Use with PHP embedded server
    On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running
    php -S 0.0.0.0:8080 -t %s YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org CheckVirtualHostPerms=Check also that virtual host has permission %s on files into
    %s @@ -56,7 +57,7 @@ NoPageYet=No pages yet YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template SyntaxHelp=Help on specific syntax tips YouCanEditHtmlSourceckeditor=You can edit HTML source code using the "Source" button in editor. -YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Clone page/container CloneSite=Clone site SiteAdded=Website added @@ -76,7 +77,7 @@ BlogPost=Blog post WebsiteAccount=Website account WebsiteAccounts=Website accounts AddWebsiteAccount=Create web site account -BackToListOfThirdParty=Back to list for Third Party +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Disable website first MyContainerTitle=My web site title AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Sorry, this website is currently off line. Please 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 -OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that edits of HTML source will be possible when page content has been initialized by grabbing it from an external page ("Online" editor will NOT be available) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Only edition of HTML source is possible when content was grabbed from an external site GrabImagesInto=Grab also images found into css and page. ImagesShouldBeSavedInto=Images should be saved into directory @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 ch MainLanguage=Main language OtherLanguages=Other languages UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/th_TH/zapier.lang b/htdocs/langs/th_TH/zapier.lang new file mode 100644 index 00000000000..6d6eda71313 --- /dev/null +++ b/htdocs/langs/th_TH/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr module + +# +# Admin page +# +ZapierForDolibarrSetup = Setup of Zapier for Dolibarr diff --git a/htdocs/langs/tr_TR/accountancy.lang b/htdocs/langs/tr_TR/accountancy.lang index b9b246b7831..932d6b1f5d1 100644 --- a/htdocs/langs/tr_TR/accountancy.lang +++ b/htdocs/langs/tr_TR/accountancy.lang @@ -121,6 +121,7 @@ InvoiceLinesDone=Bağlı fatura satırları ExpenseReportLines=Bağlanacak gider raporu satırları ExpenseReportLinesDone=Bağlanmış gider raporları satırları IntoAccount=Satırı muhasebe hesabına bağla +TotalForAccount=Total for accounting account Ventilate=Bağla @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Accounting account to register donations ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_ACCOUNT=Satılan ürünler için varsayılan muhasebe hesabı (ürün kartlarında tanımlanmışsa) ACCOUNTING_PRODUCT_SOLD_INTRA_ACCOUNT=Accounting account by default for the products sold in EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported out of EEC (used if not defined in the product sheet) + ACCOUNTING_SERVICE_BUY_ACCOUNT=Satınalınan hizmetler için varsayılan muhasebe hesabı (ürün kartlarında tanımlanmışsa) +ACCOUNTING_SERVICE_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_ACCOUNT=Satılan hizmetler için varsayılan muhasebe kodu (hizmet sayfasında tanımlanmamışsa) ACCOUNTING_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) @@ -192,8 +198,8 @@ AccountingCategory=Kişiselleştirilmiş gruplar 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 +ByPredefinedAccountGroups=Önceden tanımlanmış gruplar tarafından +ByPersonalizedAccountGroups=Kişiselleştirilmiş gruplar tarafından ByYear=Yıla göre NotMatch=Ayarlanmamış DeleteMvt=Büyük defter satırlarını sil @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unkno ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error PaymentsNotLinkedToProduct=Payment not linked to any product / service +OpeningBalance=Opening balance ShowOpeningBalance=Show opening balance HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Hesap grubu PcgtypeDesc=Group 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. +Reconcilable=Reconcilable + TotalVente=Vergi öncesi toplam gelir TotalMarge=Toplam satışlar kar oranı @@ -307,11 +317,13 @@ 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Hesap planı Id ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Satış modu OptionModeProductSellIntra=Mode sales exported in EEC OptionModeProductSellExport=Mode sales exported in other countries OptionModeProductBuy=Satınalma modu +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries 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. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=Remove accounting code from lines that not exists into charts of account CleanHistory=Reset all bindings for selected year PredefinedGroups=Önceden tanımlanmış gruplar @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Account removed from group SaleLocal=Local sale SaleExport=Export sale SaleEEC=Sale in EEC +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=Muhasebe hesabı aralığı diff --git a/htdocs/langs/tr_TR/admin.lang b/htdocs/langs/tr_TR/admin.lang index ec470f8f06f..a4b05dfe3b1 100644 --- a/htdocs/langs/tr_TR/admin.lang +++ b/htdocs/langs/tr_TR/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Web sunucusu kullanıcısı/grubu NoSessionFound=PHP yapılandırmanız aktif oturumların listelenmesine izin vermiyor gibi görünüyor. Oturumları kaydetmek için kullanılan dizin (%s) korunuyor olabilir (örneğin, İşletim Sistemi izinleri veya open_basedir PHP direkti tarafından). DBStoringCharset=Veri depolamak için veri tabanı karakter seti DBSortingCharset=Veri sıralamak için veri tabanı karakter seti +HostCharset=Host charset ClientCharset=İstemci karakter seti ClientSortingCharset=İstemci karşılaştırma WarningModuleNotActive=%s modülü etkin olmalıdır @@ -69,8 +70,8 @@ DisableJavascript=Javascript ve Ajax fonksiyonlarını engelle DisableJavascriptNote=Not: Test veya hata ayıklama amaçlıdır. Görme engelli kişiler veya metin tarayıcılara yönelik optimizasyon için kullanıcı profilinde yer alan ayarları kullanmayı tercih edebilirsiniz. UseSearchToSelectCompanyTooltip=Ayrıca çok fazla sayıda üçüncü partiye sahipseniz (>100.000), Ayarlar->Diğer Ayarlar menüsünden COMPANY_DONOTSEARCH_ANYWHERE sabitini 1 olarak ayarlayarak hızı arttırabilirsiniz. Bu durumda, arama dizenin başlangıcıyla sınırlı olacaktır. UseSearchToSelectContactTooltip=Ayrıca çok fazla sayıda üçüncü partiye sahipseniz (>100.000), Ayarlar->Diğer Ayarlar menüsünden CONTACT_DONOTSEARCH_ANYWHERE sabitini 1 olarak ayarlayarak hızı arttırabilirsiniz. Bu durumda, arama dizenin başlangıcıyla sınırlı olacaktır. -DelaiedFullListToSelectCompany=Wait until a key is pressed before loading content of Third Parties combo list.
    This may increase performance if you have a large number of third parties, but it is less convenient. -DelaiedFullListToSelectContact=Wait until a key is pressed before loading content of Contact combo list.
    This may increase performance if you have a large number of contacts, but it is less convenient) +DelaiedFullListToSelectCompany=Aşağı açılır listeden Üçüncü Parti içeriği listelemeden önce bir tuşa basarak arama yapmanızı bekler.
    Çok sayıda üçüncü parti mevcutsa bu performansı artırabilir, fakat daha az kullanışlıdır +DelaiedFullListToSelectContact=Aşağı açılır listeden Kişi içeriği listelemeden önce bir tuşa basarak arama yapmanızı bekler.
    Çok sayıda kişi mevcutsa bu performansı artırabilir, fakat daha az kullanışlıdır NumberOfKeyToSearch=Aramayı tetikleyecek karakter sayısı: %s NumberOfBytes=Bayt Sayısı SearchString=Arama dizisi @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Not: Mevcut PHP yapılandırmanız yükleme için NoMaxSizeByPHPLimit=Not: PHP yapılandırmanızda hiç sınır ayarlanmamış MaxSizeForUploadedFiles=Yüklenen dosyalar için maksimum boyut (herhangi bir yüklemeye izin vermemek için 0 olarak ayarlayın) UseCaptchaCode=Oturum açma sayfasında grafiksel kod (CAPTCHA) kullan -AntiVirusCommand= Antivirüs komutu tam yolu -AntiVirusCommandExample= ClamWin için örnek: c:\\Progra~1\\ClamWin\\bin\\clamscan.exe
    ClamAv için örnek: /usr/bin/clamscan +AntiVirusCommand=Antivirüs komutu tam yolu +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= Komut satırında daha çok parametre -AntiVirusParamExample= ClamWin için örnek: --database="C:\\Program Files (x86)\\ClamWin\\lib" +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=Muhasebe modülü ayarları UserSetup=Kullanıcı yönetimi ayarları MultiCurrencySetup=Çoklu para birimi ayarları @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Özellik demoda devre dışıdır FeatureAvailableOnlyOnStable=Özellik sadece resmi olarak kararlı sürümlerde kullanılabilir BoxesDesc=Ekran etiketleri, bazı sayfaları özelleştirmek için ekleyebileceğiniz çeşitli bilgileri gösteren bileşenlerdir. Hedef sayfayı seçip 'Etkinleştir' seçeneğini tıklayarak ekran etiketini göstermeyi veya çöp kutusuna tıklayarak devre dışı bırakıp göstermemeyi seçebilirsiniz. OnlyActiveElementsAreShown=Yalnızca etkinleştirilmiş modüllerin öğeleri gösterilir. -ModulesDesc=Modüller/Uygulamalar, hangi özelliklerin yazılımda mevcut olduğunu belirler. Bazı modüller, modülü etkinleştirdikten sonra kullanıcılara izin verilmesini gerektirir. Açma/kapama butonuna (modül satırının sonunda yer alır) tıklayarak ilgili modülü etkinleştirebilir veya devre dışı bırakabilirsiniz. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. ModulesMarketPlaceDesc=Internette dış web sitelerinde indirmek için daha çok modül bulabilirsiniz... ModulesDeployDesc=Dosya sisteminizdeki izinler imkan veriyorsa harici bir modül kurmak için bu aracı kullanabilirsiniz. Modül daha sonra %s sekmede görünecektir. ModulesMarketPlaces=Dış uygulama/modül bul @@ -212,6 +213,7 @@ CompatibleUpTo=%ssürümü ile uyumlu NotCompatible=Bu modül Dolibarr'ınızla uyumlu görünmüyor %s (Min %s - Maks %s). CompatibleAfterUpdate=This module requires an update to your Dolibarr %s (Min %s - Max %s). SeeInMarkerPlace=Market place alanına bakın +SeeSetupOfModule=%s modülü kurulumuna bak Updated=Güncellendi Nouveauté=Novelty AchatTelechargement=Satın Al / Yükle @@ -221,6 +223,7 @@ DoliPartnersDesc=Özel olarak geliştirilmiş modüller veya özellikler sağlay WebSiteDesc=Daha fazla eklenti modülleri (ana yazılımda bulunmayan) için harici web siteleri DevelopYourModuleDesc=Kendi modülünüzü geliştirmek için bazı çözümler... URL=URL +RelativeURL=Relative URL BoxesAvailable=Mevcut ekran etiketleri BoxesActivated=Etkin ekran etiketleri ActivateOn=Etkinleştirme açık @@ -270,7 +273,7 @@ Emails=E-postalar EMailsSetup=E-posta kurulumları EMailsDesc=Bu sayfa, e-posta gönderimi için varsayılan PHP parametrelerinizin üzerine yazma imkanı verir. Unix/Linux OS sistemindeki çoğu durumda PHP kurulumu doğrudur ve bu parametreler gereksizdir. EmailSenderProfiles=E-posta gönderici profilleri -EMailsSenderProfileDesc=You can keep this section empty. If you enter some emails here, they will be added to the list of possible senders into the combobox when your write a new email. +EMailsSenderProfileDesc=Bu bölümü boş bırakabilirsiniz. Buraya gireceğiniz e-posta adresleri, yeni bir e-posta adresi yazdığınızda comboboxtaki olası gönderenler listesine eklenecekler. MAIN_MAIL_SMTP_PORT=SMTP/SMTPS Portu (php.ini içinde varsayılan değer: %s) MAIN_MAIL_SMTP_SERVER=SMTP/SMTPS Sunucusu (php.ini içinde varsayılan değer: %s) MAIN_MAIL_SMTP_PORT_NotAvailableOnLinuxLike=SMTP/SMTPS Portu (Unix benzeri sistemlerdeki PHP'de tanımlanmamış) @@ -356,7 +359,7 @@ UMask=Unix/Linux/BSD dosya sisteminde yeni dosyalar için Umask parametresi. UMaskExplanation=Bu parametre Dolibarr tarafından sunucuda oluşturulan dosyaların izinlerini varsayılan olarak tanımlamanıza (örneğin yükleme sırasında) izin verir.
    Bu sekizli değer olmalıdır (örneğin, 0666 herkes için okuma ve yazma anlamına gelir).
    Bu parametre Windows sunucusunda kullanılmaz. SeeWikiForAllTeam=Katkıda bulunanlar ve kuruluşlarının bir listesi için Wiki sayfasına göz atın UseACacheDelay= Saniye olarak önbellek aktarması tepki gecikmesi (hiç önbellek yoksa 0 ya da boş) -DisableLinkToHelpCenter=oturum açma sayfasında "Yardım ya da destek gerekli" bağlantısını gizle +DisableLinkToHelpCenter=Oturum açma sayfasında "Yardım ya da destek gerekli" bağlantısını gizle DisableLinkToHelp=Çevrimiçi yardım bağlantısını gizle "%s" AddCRIfTooLong=Otomatik metin kaydırma özelliği olmadığı çok uzun metinlerdeki taşmalar belgeler üzerinde gösterilmeyecektir. Lütfen gerekirse metin alanına satır başı ekleyin. ConfirmPurge=Bu temizleme işlemini çalıştırmak istediğinizden emin misiniz?
    Bu işlem tüm veri dosyalarınızı bir daha geri alınamayacak şekilde kalıcı olarak silecektir (ECM dosyaları, ekli dosyalar…). @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Onay kutuları ExtrafieldCheckBoxFromList=Tablodan onay kutuları ExtrafieldLink=Bir nesneye bağlantı ComputedFormula=Hesaplanmış alan -ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Store computed field ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! ExtrafieldParamHelpPassword=Leaving this field blank means this value will be stored without encryption (field must be only hidden with star on screen).
    Set 'auto' to use the default encryption rule to save password into database (then value read will be the hash only, no way to retrieve original value) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Varsayılan değeri kullanmak için boş bırak DefaultLink=Varsayılan bağlantı SetAsDefault=Varsayılan olarak ayarla ValueOverwrittenByUserSetup=Uyarı, bu değer kullanıcıya özel kurulum ile üzerine yazılabilir (her kullanıcı kendine ait clicktodial url ayarlayabilir) -ExternalModule=Dış modül - %s dizinine kurulmuştur +ExternalModule=External module +InstalledInto=Installed into directory %s BarcodeInitForthird-parties=Üçüncü partiler için toplu barkod girişi BarcodeInitForProductsOrServices=Ürünler ve hizmetler için toplu barkod başlatma ve sıfırlama CurrentlyNWithoutBarCode=Şu anda, bazı %s kayıtlarınızda %s %s tanımlı barkod bulunmamaktadır. @@ -605,7 +609,7 @@ Module2000Desc=CKEditor (html) kullanarak metin alanlarının düzenlenmesine/bi Module2200Name=Dinamik Fiyatlar Module2200Desc=Otomatik fiyat üretimi için matematiksel ifadeler kullanın Module2300Name=Planlı İşler -Module2300Desc=Scheduled jobs management (alias cron or chrono table) +Module2300Desc=Zamanlanmış iş yönetimi (alias cron veya chrono tablosu) Module2400Name=Etkinlik/Gündem Module2400Desc=Etkinlikleri takip edin. İzleme amacıyla otomatik etkinlikleri günlüğe geçirin veya manuel etkinlikleri ya da toplantıları kaydedin. Bu, iyi bir Müşteri veya Tedarikçi İlişkileri Yönetimi için temel modüldür. Module2500Name=DMS / ECM @@ -947,7 +951,7 @@ DictionaryCanton=İller Listesi DictionaryRegion=Bölgeler DictionaryCountry=Ülkeler DictionaryCurrency=Para birimleri -DictionaryCivility=Mesleki ünvanlar +DictionaryCivility=Honorific titles DictionaryActions=Gündem etkinlik türleri DictionarySocialContributions=Sosyal veya mali vergi türleri DictionaryVAT=KDV Oranları veya Satış Vergisi Oranları @@ -988,6 +992,7 @@ VATIsNotUsedDesc=Dernekler, şahıslar veya küçük şirketler söz konusu oldu VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=Oran LocalTax1IsNotUsed=İkinci vergiyi kullanma LocalTax1IsUsedDesc=İkinci bir vergi türü kullanın (birinci dışında) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices LocalTax2IsNotUsedDescES=Varsayılan olarak önerilen IRPF 0. Kural sonu. LocalTax2IsUsedExampleES=İspanya'da, hizmet işleri yapan serbest meslek sahipleri ve bağımsız uzmanlar ile bu vergi sistemini seçen firmalardır. LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=Yerel vergi raporları CalcLocaltax1=Satışlar - Alışlar CalcLocaltax1Desc=Yerel Vergi raporları, yerel satış vergileri ile yerel alış vergileri farkı olarak hesaplanır @@ -1018,6 +1026,7 @@ CalcLocaltax2=Alışlar CalcLocaltax2Desc=Yerel Vergi raporları alımların yerel vergileri toplamıdır CalcLocaltax3=Satışlar CalcLocaltax3Desc=Yerel Vergi raporları satışların yerel vergileri toplamıdır +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=Hiçbir çeviri kodu bulunmuyorsa varsayılan olarak kullanılan etiket LabelOnDocuments=Belgeler üzerindeki etiket LabelOrTranslationKey=Etiket veya çeviri anahtarı @@ -1067,7 +1076,7 @@ BackgroundImageLogin=Arka plan görüntüsü PermanentLeftSearchForm=Sol menüdeki sabit arama formu DefaultLanguage=Varsayılan dil EnableMultilangInterface=Çoklu dil desteğini etkinleştir -EnableShowLogo=Show the company logo in the menu +EnableShowLogo=Şirket logosunu menüde göster CompanyInfo=Şirket/Kuruluş CompanyIds=Şirket/Kuruluş kimlik bilgileri CompanyName=Adı @@ -1076,11 +1085,11 @@ CompanyZip=Posta Kodu CompanyTown=İlçesi CompanyCountry=Ülkesi CompanyCurrency=Ana para birimi -CompanyObject=Firmaya ait öğe +CompanyObject=Şirketin amacı IDCountry=ID country Logo=Logo LogoDesc=Main logo of company. Will be used into generated documents (PDF, ...) -LogoSquarred=Logo (squarred) +LogoSquarred=Logo (kare) LogoSquarredDesc=Must be a squarred icon (width = height). This logo will be used as the favorite icon or other need like for the top menu bar (if not disabled into display setup). DoNotSuggestPaymentMode=Önerme NoActiveBankAccountDefined=Tanımlı etkin banka hesabı yok @@ -1105,11 +1114,11 @@ Delays_MAIN_DELAY_TRANSACTIONS_TO_CONCILIATE=Bekleyen banka mutabakatı Delays_MAIN_DELAY_MEMBERS=Gecikmiş üyelik ücreti Delays_MAIN_DELAY_CHEQUES_TO_DEPOSIT=Yapılmayan çek ödemesi Delays_MAIN_DELAY_EXPENSEREPORTS=Onaylanacak gider raporu -Delays_MAIN_DELAY_HOLIDAYS=Leave requests to approve +Delays_MAIN_DELAY_HOLIDAYS=Onaylanacak izin istekleri SetupDescription1=Dolibarr yazılımını kullanmaya başlamadan önce bazı başlangıç parametreleri tanımlanmalı, gerekli modüller etkinleştirilip/yapılandırılmalıdır. SetupDescription2=Aşağıdaki iki bölümün kurulumu zorunludur (Ayarlar menüsündeki ilk iki kayıt) -SetupDescription3=%s -> %s
    Uygulamanızın varsayılan davranışını özelleştirmek için kullanılan temel parametreler (örneğin ülkeyle ilişkili özellikler). -SetupDescription4=%s -> %s
    Bu yazılım, tamamı hemen hemen bağımsız olan birçok modül ve uygulamanın paket halidir. İhtiyaçlarınıza uygun olan modüller etkinleştirilmiş ve yapılandırılmış olmalıdır. Bir modülün etkinleştirilmesi ile yeni öğe ve seçenekler menülere eklenir. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. SetupDescription5=Ayarlar menüsündeki diğer girişler isteğe bağlı parametreleri yönetmenizi sağlar. LogEvents=Güvenlik denetimi etkinlikleri Audit=Denetim @@ -1128,7 +1137,7 @@ LogEventDesc=Belirli güvenlik etkinlikleri için günlüğe kaydetmeyi etkinle AreaForAdminOnly=Kurulum parametreleri sadece yönetici olan kullanıcılar tarafından ayarlanabilir. SystemInfoDesc=Sistem bilgileri sadece okuma modunda ve yöneticiler için görüntülenen çeşitli teknik bilgilerdir. SystemAreaForAdminOnly=Bu alan yalnızca yönetici kullanıcılar tarafından kullanılabilir. Dolibarr kullanıcı izinleri bu kısıtlamayı değiştiremez. -CompanyFundationDesc=Edit the information of the company/entity. Click on "%s" button at the bottom of the page. +CompanyFundationDesc=Şirketinizin/kuruluşunuzun bilgilerini düzenleyebilirsiniz. İşiniz bittiğinde sayfanın altındaki "%s" butonuna tıklayarak işleminizi tamamlayın. AccountantDesc=Harici bir muhasebeciniz/saymanınız varsa, onun bilgilerini burada düzenleyebilirsiniz. AccountantFileNumber=Muhasebeci kodu DisplayDesc=Dolibarr'ın görünümünü ve davranışını etkileyen parametreler buradan özelleştirilebilir. @@ -1144,7 +1153,7 @@ TriggerAlwaysActive=Bu dosyadaki tetikleyiciler, etkin Dolibarr modülleri ne ol TriggerActiveAsModuleActive=Bu dosyadaki tetikleyiciler %s modülü etkinleştirildiğinde etkin olur. GeneratedPasswordDesc=Otomatik olarak oluşturulan şifreler için kullanılacak yöntemi seçin. DictionaryDesc=Bütün referans verisini ekleyin. Değerlerinizi varsayılana ekleyebilirsiniz. -ConstDesc=This page allows you to edit (override) parameters not available in other pages. These are mostly reserved parameters for developers/advanced troubleshooting only. +ConstDesc=Bu sayfa, diğer sayfalarda bulunmayan parametreleri düzenlemenizi (üzerine yazmanızı) sağlar. Bunlar çoğunlukla sadece geliştiriciler/gelişmiş sorun giderme için ayrılmış parametrelerdir. MiscellaneousDesc=Burada güvenlik ile ilgili diğer tüm parametreler tanımlanır. LimitsSetup=Sınırlar/Doğruluk kurulumu LimitsDesc=Dolibarr tarafından kullanılan limitleri, hassasiyetleri ve iyileştirmeleri buradan tanımlayabilirsiniz @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Parola oluşturma ve doğrulama kuralları DisableForgetPasswordLinkOnLogonPage=Oturum açma sayfasında “Parolanızı mı unuttunuz?” bağlantısını gösterme UsersSetup=Kullanıcılar modülü kurulumu UserMailRequired=Yeni bir kullanıcı oluşturmak için e-posta gerekli +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### HRMSetup=İK modülü ayarları ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Fatura belgesi modelleri BillsPDFModulesAccordindToInvoiceType=Fatura türüne göre fatura döküman modelleri PaymentsPDFModules=Ödeme belge modelleri ForceInvoiceDate=Fatura tarihini fatura doğrulama tarihine zorla -SuggestedPaymentModesIfNotDefinedInInvoice=Varsayılan olarak faturada tanımlanmamışsa önerilen ödeme biçimi +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice SuggestPaymentByRIBOnAccount=Suggest payment by withdrawal on account SuggestPaymentByChequeToAddress=Suggest payment by check to FreeLegalTextOnInvoices=Faturada serbest metin @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Tedarikçi ödemesi ayarları PropalSetup=Teklif modülü kurulumu ProposalsNumberingModules=Teklif numaralandırma modülü ProposalsPDFModules=Teklif belge modelleri -SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined for proposal +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal FreeLegalTextOnProposal=Teklifler üzerinde serbest metin WatermarkOnDraftProposal=Taslak tekliflerde filigran (boşsa yoktur) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Teklif için banka hesabı iste @@ -1322,6 +1334,7 @@ WAREHOUSE_ASK_WAREHOUSE_DURING_ORDER=Sipariş için Kaynak Depo iste ##### Suppliers Orders ##### BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_ORDER=Ask for bank account destination of purchase order ##### Orders ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=Müşteri Siparişleri yönetim ayarları OrdersNumberingModules=Sipariş numaralandırma modülü OrdersModelModule=Sipariş belgesi modelleri @@ -1523,8 +1536,8 @@ NumberOfProductShowInSelect=Aşağı açılan seçim listelerinde gösterilecek ViewProductDescInFormAbility=Ürün açıklamalarını formlarda göster (aksi takdirde araç ipucu penceresinde gösterilir) MergePropalProductCard=Eğer ürün/hizmet teklifte varsa Ekli Dosyalar sekmesinde ürün/hizmet seçeneğini etkinleştirin, böylece ürün PDF belgesini PDF azur teklifine birleştirirsiniz ViewProductDescInThirdpartyLanguageAbility=Ürün açıklamalarını üçün partinin dilinde görüntüle -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) +UseSearchToSelectProductTooltip=Ayrıca çok fazla sayıda ürüne sahipseniz (>100.000), Ayarlar->Diğer Ayarlar menüsünden PRODUCT_DONOTSEARCH_ANYWHERE sabitini 1 olarak ayarlayarak hızı arttırabilirsiniz. Bu durumda, arama dizenin başlangıcıyla sınırlı olacaktır. +UseSearchToSelectProduct=Aşağı açılır listeden ürün içeriği listelemeden önce bir tuşa basarak arama yapmanızı bekler (Çok sayıda ürününüz varsa bu performansı artırabilir, fakat daha az kullanışlıdır) SetDefaultBarcodeTypeProducts=Ürünler için kullanılacak varsayılan barkod türü SetDefaultBarcodeTypeThirdParties=Üçüncü partiler için kullanılacak varsayılan barkod tipi UseUnits=Sipariş, teklif ya da fatura satırlarının yazımı sırasında kullanmak üzere Miktar için bir ölçü birimi tanımlayın @@ -1601,7 +1614,7 @@ FCKeditorForProductDetails=WYSIWIG creation/edition of products details lines fo FCKeditorForMailing= Toplu e-postalar için WYSIWIG oluşturma/düzenleme (Araçlar->E-postalamalar) FCKeditorForUserSignature=Kullanıcı imzasının WYSIWIG olarak oluşturulması/düzenlenmesi FCKeditorForMail=Tüm mailler için WYSIWIG oluşturma/düzenleme (Araçlar->E-postalamalar hariç) -FCKeditorForTicket=WYSIWIG creation/edition for tickets +FCKeditorForTicket=Destek bildirimleri için WYSIWIG oluşturma/düzenleme ##### Stock ##### StockSetup=Stok modülü kurulumu IfYouUsePointOfSaleCheckModule=If you use the Point of Sale module (POS) provided by default or an external module, this setup may be ignored by your POS module. Most POS modules are designed by default to create an invoice immediately and decrease stock irrespective of the options here. So if you need or not to have a stock decrease when registering a sale from your POS, check also your POS module setup. @@ -1720,7 +1733,7 @@ MultiCompanySetup=Çoklu şirket modülü kurulumu ##### Suppliers ##### SuppliersSetup=Tedarikçi modülü ayarları SuppliersCommandModel=Complete template of Purchase Order -SuppliersCommandModelMuscadet=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) SuppliersInvoiceModel=Complete template of Vendor Invoice SuppliersInvoiceNumberingModel=Tedarikçi faturaları numaralandırma modelleri IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval @@ -1737,7 +1750,7 @@ ProjectsSetup=Proje modülü kurulumu ProjectsModelModule=Proje raporu belge modeli TasksNumberingModules=Görev numaralandırma modülü TaskModelModule=Görev raporu belge modeli -UseSearchToSelectProject=Wait until a key is pressed before loading content of Project combo list.
    This may improve performance if you have a large number of projects, but it is less convenient. +UseSearchToSelectProject=Aşağı açılır listeden Proje içeriği listelemeden önce bir tuşa basarak arama yapmanızı bekler.
    Çok sayıda projeniz mevcutsa bu performansı artırabilir, fakat daha az kullanışlıdır ##### ECM (GED) ##### ##### Fiscal Year ##### AccountingPeriods=Muhasebe dönemleri @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Üst menüdeki görüntüleri gizle LeftMenuBackgroundColor=Sol menü için arka plan rengi BackgroundTableTitleColor=Tablo satırı başlığı için arka plan rengi BackgroundTableTitleTextColor=Tablo satırı başlığı için metin rengi +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Tabloda tek satırlar için arka plan rengi BackgroundTableLineEvenColor=Tabloda çift satırlar için arka plan rengi MinimumNoticePeriod=Enaz bildirim süresi (İzin isteğiniz bu süreden önce yapılmalı) @@ -1885,7 +1899,7 @@ COMPANY_AQUARIUM_CLEAN_REGEX=Regex filter to clean value (COMPANY_AQUARIUM_CLEAN COMPANY_DIGITARIA_CLEAN_REGEX=Regex filter to clean value (COMPANY_DIGITARIA_CLEAN_REGEX) COMPANY_DIGITARIA_UNIQUE_CODE=Duplicate not allowed GDPRContact=Veri Koruma Görevlisi (DPO, Veri Gizliliği veya GDPR kişisi) -GDPRContactDesc=If you store data about European companies/citizens, you can name the contact who is responsible for the General Data Protection Regulation here +GDPRContactDesc=Avrupalı şirketler veya vatandaşlar hakkında veri depoluyorsanız Genel Veri Koruma Yönetmeliği'nden (GDPR) sorumlu kişiyi burada adlandırabilirsiniz HelpOnTooltip=Araç ipucunda gösterilecek yardım metni HelpOnTooltipDesc=Put text or a translation key here for the text to show in a tooltip when this field appears in a form YouCanDeleteFileOnServerWith=You can delete this file on the server with Command Line:
    %s @@ -1893,7 +1907,7 @@ ChartLoaded=Chart of account loaded SocialNetworkSetup=Sosyal Ağlar modülünün kurulumu EnableFeatureFor=%s için özellikleri etkinleştir VATIsUsedIsOff=Note: The option to use Sales Tax or VAT has been set to Off in the menu %s - %s, so Sales tax or Vat used will always be 0 for sales. -SwapSenderAndRecipientOnPDF=Swap sender and recipient address position on PDF documents +SwapSenderAndRecipientOnPDF=PDF üzerindeki gönderen ve alıcı adreslerinin yerini birbiriyle değiştir FeatureSupportedOnTextFieldsOnly=Uyarı: Bu özellik yalnızca metin alanlarında desteklenir. Bu özelliği tetiklemek için ayrıca bir URL parametresi action=create ya da action=edit ayarlanmalı VEYA sayfa adı 'new.php' ile bitmelidir. EmailCollector=Email collector EmailCollectorDescription=Add a scheduled job and a setup page to scan regularly email boxes (using IMAP protocol) and record emails received into your application, at the right place and/or create some records automatically (like leads). @@ -1925,9 +1939,9 @@ WithoutDolTrackingID=Dolibarr Reference not found in Message ID FormatZip=Posta Kodu MainMenuCode=Menu entry code (mainmenu) ECMAutoTree=Otomatik ECM ağacını göster -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. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Açılış saatleri -OpeningHoursDesc=Enter here the regular opening hours of your company. +OpeningHoursDesc=Buraya şirketinizin normal çalışma saatlerini girin. ResourceSetup=Configuration of Resource module UseSearchToSelectResource=Use a search form to choose a resource (rather than a drop-down list). DisabledResourceLinkUser=Disable feature to link a resource to users @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramatical 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 +ImportSetup=Setup of module Import InstanceUniqueID=Unique ID of the instance SmallerThan=Smaller than LargerThan=Larger than @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled EmailTemplate=Template for email EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/tr_TR/bills.lang b/htdocs/langs/tr_TR/bills.lang index 14f091f6081..f6b11557d8e 100644 --- a/htdocs/langs/tr_TR/bills.lang +++ b/htdocs/langs/tr_TR/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Tedarikçi faturaları SupplierBill=Tedarikçi faturası SupplierBills=tedarikçi faturaları Payment=Ödeme -PaymentBack=Geri ödeme -CustomerInvoicePaymentBack=Geri ödeme +PaymentBack=İade +CustomerInvoicePaymentBack=İade Payments=Ödemeler PaymentsBack=Refunds paymentInInvoiceCurrency=fatura para biriminde PaidBack=Geri ödenen DeletePayment=Ödeme sil ConfirmDeletePayment=Bu ödemeyi silmek istediğinizden emin misiniz? -ConfirmConvertToReduc=Bu %s öğesini mutlak bir indirime dönüştürmek ister misiniz? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. -ConfirmConvertToReducSupplier=Bu %s öğesini mutlak bir indirime dönüştürmek ister misiniz? +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. SupplierPayments=Tedarikçi ödemeleri ReceivedPayments=Alınan ödemeler @@ -209,17 +209,13 @@ NumberOfBillsByMonth=Aylık fatura sayısı AmountOfBills=Faturaların tutarı AmountOfBillsHT=Fatura tutarı (vergisiz net) AmountOfBillsByMonthHT=Aylık fatura tutarı (vergisiz net) -ShowSocialContribution=Sosyal/mali vergi göster -ShowBill=Fatura göster -ShowInvoice=Fatura göster -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 +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=To pay on %s toPayOn=to pay on %s RetainedWarranty=Retained Warranty @@ -230,7 +226,6 @@ 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ş AlreadyPaidNoCreditNotesNoDeposits=Zaten ödenmiş (alacak dekontu veya peşinatlar olmadan) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Generated from template invoice %s WarningInvoiceDateInFuture=Uyarı: fatura tarihi şu anki tarihten daha yüksek WarningInvoiceDateTooFarInFuture=Uyarı, fatura tarihi şu anki tarihten çok uzak ViewAvailableGlobalDiscounts=Mevcut indirimleri görüntüle +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Durumu PaymentConditionShortRECEP=Teslimatta peşin @@ -509,7 +505,7 @@ ToMakePayment=Öde ToMakePaymentBack=Geri öde ListOfYourUnpaidInvoices=Ödenmemiş fatura listesi NoteListOfYourUnpaidInvoices=Not: Bu liste, satış temsilcisi olarak bağlı olduğunuz üçüncü partilere ait faturaları içerir. -RevenueStamp=Bandrol +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party YouMustCreateStandardInvoiceFirstDesc=Yeni bir fatura şablonu oluşturmak için önce bir standart fatura oluşturmalı ve onu "şablona" dönüştürmelisiniz @@ -575,3 +571,4 @@ AutoFillDateTo=Set end date for service line with next invoice date AutoFillDateToShort=Bitiş tarihini ayarla MaxNumberOfGenerationReached=Max number of gen. reached BILL_DELETEInDolibarr=Fatura silindi +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/tr_TR/blockedlog.lang b/htdocs/langs/tr_TR/blockedlog.lang index 7797a0814fd..072bf60a6d8 100644 --- a/htdocs/langs/tr_TR/blockedlog.lang +++ b/htdocs/langs/tr_TR/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Unalterable logs ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) DownloadBlockChain=Download fingerprints -KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this re after it was recorded, or has erased the previous archived record (check that line with previous # exists). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. AddedByAuthority=Stored into remote authority diff --git a/htdocs/langs/tr_TR/cashdesk.lang b/htdocs/langs/tr_TR/cashdesk.lang index dfc653aa7bb..552521dd61a 100644 --- a/htdocs/langs/tr_TR/cashdesk.lang +++ b/htdocs/langs/tr_TR/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Bu malı ekle RestartSelling=Satışa geri dön SellFinished=Satış tamamlandı PrintTicket=Fiş yazdır +SendTicket=Destek bildirimini gönder NoProductFound=Hiç mal bulunamadı ProductFound=ürün bulundu NoArticle=Mal yok @@ -48,6 +49,7 @@ Footer=Footer AmountAtEndOfPeriod=Amount at end of period (day, month or year) TheoricalAmount=Teorik tutar RealAmount=Gerçek tutar +CashFence=Cash fence CashFenceDone=Cash fence done for the period NbOfInvoices=Fatura sayısı Paymentnumpad=Type of Pad to enter payment @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS needs product categories to work OrderNotes=Sipariş Notları CashDeskBankAccountFor=Default account to use for payments in NoPaimementModesDefined=No paiment mode defined in TakePOS configuration -TicketVatGrouped=Group VAT by rate in tickets -AutoPrintTickets=Destek bildirimlerini otomatik olarak yazdır +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? @@ -87,7 +90,19 @@ HeadBar=Head Bar SortProductField=Field for sorting products Browser=Tarayıcı BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/tr_TR/companies.lang b/htdocs/langs/tr_TR/companies.lang index ba12f3799a1..56cd0f70353 100644 --- a/htdocs/langs/tr_TR/companies.lang +++ b/htdocs/langs/tr_TR/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted="%s" Firması veritabanından silindi. ListOfContacts=Kişi/adres listesi ListOfContactsAddresses=Kişi/adres listesi ListOfThirdParties=Üçüncü Partilerin Listesi -ShowCompany=Üçüncü Partiyi Göster ShowContact=Kişi göster ContactsAllShort=Hepsi (süzmeden) ContactType=Kişi tipi @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=Satış temsilcisinin adı SaleRepresentativeLastname=Satış temsilcisinin soyadı ErrorThirdpartiesMerge=Üçüncü partiler silinirken bir hata oluştu. Lütfen günlüğü denetleyin. Değişiklikler geri alındı. NewCustomerSupplierCodeProposed=Müşteri veya Tedarikçi kodu zaten kullanılmış, yeni bir kod önerilir +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Ödeme Türü - Müşteri PaymentTermsCustomer=Ödeme Koşulları - Müşteri diff --git a/htdocs/langs/tr_TR/compta.lang b/htdocs/langs/tr_TR/compta.lang index 8f49b0d36b6..925d1926f02 100644 --- a/htdocs/langs/tr_TR/compta.lang +++ b/htdocs/langs/tr_TR/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=See %sanalysis of payments%s for a calculation on act SeeReportInDueDebtMode=See %sanalysis of invoices%s for a calculation based on known recorded invoices even if they are not yet accounted in Ledger. SeeReportInBookkeepingMode=See %sBookeeping report%s for a calculation on Bookkeeping Ledger table RulesAmountWithTaxIncluded=- Gösterilen tutarlara tüm vergiler dahildir -RulesResultDue=- Ödenmemiş faturaları, giderleri ve KDV ni, ödenmiş ya da ödenmemiş bağışları içerir. Aynı zamanda ödenmiş maaşları da içerir.
    - Faturaların ve KDV nin doğrulanma tarihleri ve giderlerin ödenme tarihleri baz alınır. Ücretler Maaş modülünde tanımlanır, ödeme tarihi değeri kullanılır. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- Faturalarda, giderlerde, KDV inde ve maaşlarda yapılan gerçek ödemeleri içerir.
    - Faturaların, giderleri, KDV nin ve maaşların ödeme tarihleri baz alınır. Bağışlar için bağış tarihi. -RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the validation date of these invoices.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    RulesCATotalSaleJournal=It includes all credit lines from the Sale journal. RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Turnover invoiced by sale tax rate TurnoverCollectedbyVatrate=Turnover collected by sale tax rate PurchasebyVatrate=Purchase by sale tax rate LabelToShow=Kısa etiket +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/tr_TR/errors.lang b/htdocs/langs/tr_TR/errors.lang index 762f5e44590..96c1a4b6e2a 100644 --- a/htdocs/langs/tr_TR/errors.lang +++ b/htdocs/langs/tr_TR/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=Dosya sunucu tarafından tamamen alınmadı. ErrorNoTmpDir=Geçici %s dizini yok. ErrorUploadBlockedByAddon=Dosya gönderme PHP/Apache eklentisi tarafından bloke edilmiş. ErrorFileSizeTooLarge=Dosya boyutu çok büyük. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Tam sayı türü için boyut çok uzun (ençok %s ondalık) ErrorSizeTooLongForVarcharType=Dize türü için boyut çok uzun (ençok %s karakter) ErrorNoValueForSelectType=Değer gir ya da liste seç @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # Warnings WarningParamUploadMaxFileSizeHigherThanPostMaxSize=PHP'nizdeki upload_max_filesize (%s) parametresi, post_max_size (%s) PHP parametresinden daha yüksek. Bu tutarlı bir kurulum değil. 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. diff --git a/htdocs/langs/tr_TR/install.lang b/htdocs/langs/tr_TR/install.lang index 83da2e22b2a..f06e9617411 100644 --- a/htdocs/langs/tr_TR/install.lang +++ b/htdocs/langs/tr_TR/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=Bu PHP, Curl'u destekliyor. PHPSupportCalendar=This PHP supports calendars extensions. PHPSupportUTF8=Bu PHP, UTF8 işlevlerini destekliyor. PHPSupportIntl=Bu PHP, Intl fonksiyonlarını destekliyor. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=This PHP supports %s functions. PHPMemoryOK=PHP nizin ençok oturum belleği %s olarak ayarlanmış. Bu yeterli olacaktır. 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. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=PHP kurulumunuz Curl. desteklemiyor ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. ErrorPHPDoesNotSupportUTF8=PHP kurulumunuz UTF8 işlevlerini desteklemiyor. Dolibarr düzgün çalışamaz. Dolibarr'ı yüklemeden önce bunu çözün. ErrorPHPDoesNotSupportIntl=PHP kurulumunuz Intl fonksiyonlarını desteklemiyor. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. ErrorDirDoesNotExists=%s Dizini yoktur. ErrorGoBackAndCorrectParameters=Geri gidin ve parametreleri kontrol edin/düzeltin. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=The application tried to self-upgrade, but the in 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=Uygulamanıza gitmek için buraya tıklayın 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. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/tr_TR/interventions.lang b/htdocs/langs/tr_TR/interventions.lang index e3fff435d06..f29757a0b21 100644 --- a/htdocs/langs/tr_TR/interventions.lang +++ b/htdocs/langs/tr_TR/interventions.lang @@ -41,9 +41,7 @@ InterventionsArea=Müdahaleler alanı DraftFichinter=Taslak müdahale LastModifiedInterventions=Değiştirilen son %s müdahale FichinterToProcess=İşlenecek müdahaleler -##### Types de contacts ##### TypeContact_fichinter_external_CUSTOMER=Müşteri izleme yetkilisi -# Modele numérotation PrintProductsOnFichinter=Müdahale kartında "ürün" türü (yalnızca hizmetleri değil) satırını da yazdır. PrintProductsOnFichinterDetails=Siparişlerden oluşturulan müdahaleler UseServicesDurationOnFichinter=Siparişlerden oluşturulan müdahaleler için hizmet sürelerini kullan @@ -53,14 +51,16 @@ InterventionStatistics=Müdahale istatistikleri NbOfinterventions=Müdahale kartlarının sayısı NumberOfInterventionsByMonth=Aya göre müdahale kartlarının sayısı (doğrulama tarihi) AmountOfInteventionNotIncludedByDefault=Amount of intervention is not included by default into profit (in most cases, timesheets are used to count time spent). Add option PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT to 1 into home-setup-other to include them. -##### Exports ##### InterId=Müdahale kimliği InterRef=Müdahele ref. InterDateCreation=Müdahele oluşturma tarihi InterDuration=Müdahale süresi InterStatus=Müdahele durumu InterNote=Müdahele notu +InterLine=Line of intervention InterLineId=Müdahele satır kimliği InterLineDate=Müdahele satır tarihi InterLineDuration=Müdahele satır süresi InterLineDesc=Müdahele satır açıklaması +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/tr_TR/link.lang b/htdocs/langs/tr_TR/link.lang index 244396b0e8f..daaf0291ac3 100644 --- a/htdocs/langs/tr_TR/link.lang +++ b/htdocs/langs/tr_TR/link.lang @@ -8,3 +8,4 @@ LinkRemoved=%s bağlantısı kaldırıldı ErrorFailedToDeleteLink= '%s' bağlantısı kaldırılamadı ErrorFailedToUpdateLink= '%s' bağlantısı güncellenemedi URLToLink=Bağlantılanalıcak URL +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/tr_TR/mails.lang b/htdocs/langs/tr_TR/mails.lang index 4ae97915eae..0787f4873f1 100644 --- a/htdocs/langs/tr_TR/mails.lang +++ b/htdocs/langs/tr_TR/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=Kategorisi olan hiç bir kişi/adres bulunamadı NoContactLinkedToThirdpartieWithCategoryFound=Kategorisi olan hiç bir kişi/adres bulunamadı OutGoingEmailSetup=Giden e-posta kurulumu InGoingEmailSetup=Gelen e-posta kurulumu -OutGoingEmailSetupForEmailing=Giden e-posta kurulumu (toplu e-posta için) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Varsayılan giden e-posta kurulumu Information=Bilgi ContactsWithThirdpartyFilter=Üçüncü parti filtreli kişiler diff --git a/htdocs/langs/tr_TR/main.lang b/htdocs/langs/tr_TR/main.lang index 83574648634..291b24e3c1b 100644 --- a/htdocs/langs/tr_TR/main.lang +++ b/htdocs/langs/tr_TR/main.lang @@ -4,8 +4,8 @@ DIRECTION=ltr # msungstdlight or cid0ct are for traditional Chinese (traditional does not render with Ubuntu pdf reader) # stsongstdlight or cid0cs are for simplified Chinese # To read Chinese pdf with Linux: sudo apt-get install poppler-data -FONTFORPDF=DejaVuSans -FONTSIZEFORPDF=8 +FONTFORPDF=helvetica +FONTSIZEFORPDF=10 SeparatorDecimal=, SeparatorThousand=. FormatDateShort=%d/%m/%Y @@ -28,7 +28,7 @@ NoTemplateDefined=Bu e-posta türü için mevcut şablon yok AvailableVariables=Mevcut yedek değişkenler NoTranslation=Çeviri yok Translation=Çeviri -EmptySearchString=Enter a non empty search string +EmptySearchString=Boş olmayan bir arama dizesi girin NoRecordFound=Kayıt bulunamadı NoRecordDeleted=Hiç kayıt silinmedi NotEnoughDataYet=Yeterli bilgi yok @@ -174,6 +174,7 @@ SaveAndStay=Kaydet ve kal SaveAndNew=Save and new TestConnection=Deneme bağlantısı ToClone=Kopyasını oluştur +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Kopyasını oluşturmak istediğiniz verileri seçin: NoCloneOptionsSpecified=Kopyası oluşturulacak hiçbir veri tanımlanmamış. Of=ile ilgili @@ -535,7 +536,7 @@ Photos=Resimler AddPhoto=Resim ekle DeletePicture=Resim sil ConfirmDeletePicture=Resim silmeyi onayla -Login=Oturum açma +Login=Kullanıcı adı LoginEmail=Giriş (e-posta) LoginOrEmail=Oturum açma adı veya E-posta adresi CurrentLogin=Geçerli kullanıcı @@ -771,7 +772,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 +LinkToTicket=Destek bildirimine bağlantı CreateDraft=Taslak oluştur SetToDraft=Taslağa geri dön ClickToEdit=Düzenlemek için tıklayın @@ -829,6 +830,8 @@ Gender=Cinsiyet Genderman=Adam Genderwoman=Kadın ViewList=Liste görünümü +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Zorunlu Hello=Merhaba GoodBye=Güle güle @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Select your graph options to build a graph Measures=Measures XAxis=X-Axis YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/tr_TR/modulebuilder.lang b/htdocs/langs/tr_TR/modulebuilder.lang index 3bc8febcdb3..693338ec65f 100644 --- a/htdocs/langs/tr_TR/modulebuilder.lang +++ b/htdocs/langs/tr_TR/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=Sözlük girişlerinin listesi ListOfPermissionsDefined=Tanımlanan izinlerin listesi SeeExamples=Burada örneklere bakın EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) -VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update). Using a negative value means field is not shown by default on list but can be selected for viewing). It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty DisplayOnPdf=Display on PDF IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) diff --git a/htdocs/langs/tr_TR/other.lang b/htdocs/langs/tr_TR/other.lang index 8e39c3c450b..1033709c7a1 100644 --- a/htdocs/langs/tr_TR/other.lang +++ b/htdocs/langs/tr_TR/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Müşteri siparişi doğrulandı Notify_ORDER_SENTBYMAIL=Müşteri siparişi e-posta ile gönderildi Notify_ORDER_SUPPLIER_SENTBYMAIL=Tedarikçi siparişi e-posta ile gönderildi @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=Sayfanın URL si WEBSITE_TITLE=Unvan WEBSITE_DESCRIPTION=Açıklama WEBSITE_IMAGE=Görüntü -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Anahtar kelimeler LinesToImport=Lines to import diff --git a/htdocs/langs/tr_TR/products.lang b/htdocs/langs/tr_TR/products.lang index 53c71e2f9f1..d79bf8cc61c 100644 --- a/htdocs/langs/tr_TR/products.lang +++ b/htdocs/langs/tr_TR/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=Bu araç TÜM ürün ve hizmetler üzerin MassBarcodeInit=Toplu barkod başlatma MassBarcodeInitDesc=Bu sayfa, barkod tanımlanmamış nesneler üzerinde barkod başlatmak için kullanılabilir. Önce barkod modülü kurulumunun tamamlandığını denetleyin. ProductAccountancyBuyCode=Muhasebe kodu (satın alma) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Muhasebe kodu (satış) ProductAccountancySellIntraCode=Muhasebe kodu (Topluluk içi satış) ProductAccountancySellExportCode=Muhasebe kodu (ihracat) @@ -153,7 +155,7 @@ RowMaterial=Ham madde ConfirmCloneProduct=%s ürünü ve siparişinin kopyasını oluşturmak istediğinizden emin misiniz? CloneContentProduct=Ürün/hizmet ile ilgili tüm temel bilgilerin kopyasını oluştur ClonePricesProduct=Fiyatların kopyasını oluştur -CloneCategoriesProduct=Clone tags/categories linked +CloneCategoriesProduct=Bağlı etiketleri/kategorileri kopyala CloneCompositionProduct=Sanal ürünü/hizmetin kopyasını oluştur CloneCombinationsProduct=Ürün değişkenlerinin kopyasını oluştur ProductIsUsed=Bu ürün kullanılır. @@ -165,7 +167,7 @@ SuppliersPrices=Tedarikçi fiyatları SuppliersPricesOfProductsOrServices=Tedarikçi fiyatları (ürün veya hizmetlerin) CustomCode=G.T.İ.P Numarası CountryOrigin=Menşei ülke -Nature=Ürün yapısı (ham madde/bitmiş ürün) +Nature=Nature of product (material/finished) ShortLabel=Kısa etiket Unit=Birim p=Adet @@ -238,8 +240,8 @@ UseMultipriceRules=İlk segmente göre diğer tüm segmentlerin fiyatlarını ot PercentVariationOver=%s üzerindeki %% değişim PercentDiscountOver=%s üzerindeki %% indirim KeepEmptyForAutoCalculation=Bunun ürünlerin ağırlık veya hacimlerinden otomatik olarak hesaplanması için boş bırakın. -VariantRefExample=Examples: COL, SIZE -VariantLabelExample=Examples: Color, Size +VariantRefExample=Örnek: RENK, EBAT +VariantLabelExample=Örnek: Renk, Ebat ### composition fabrication Build=Üret ProductsMultiPrice=Her fiyat düzeyi için ürünler ve fiyatlar @@ -317,10 +319,10 @@ ProductWeight=1 ürün ağırlığı ProductVolume=1 ürün hacmi WeightUnits=Ağırlık birimi VolumeUnits=Hacim birimi -WidthUnits=Width unit -LengthUnits=Length unit -HeightUnits=Height unit -SurfaceUnits=Surface unit +WidthUnits=Genişlik birimi +LengthUnits=Uzunluk birimi +HeightUnits=Yükseklik birimi +SurfaceUnits=Yüzey birimi SizeUnits=Boyut birimi DeleteProductBuyPrice=Satınalma fiyatı sil ConfirmDeleteProductBuyPrice=Bu satınalma fiyatını silmek istediğinizden emin misiniz? @@ -332,7 +334,7 @@ GoOnMenuToCreateVairants=Nitelik varyantlarını hazırlamak için (renk, boyut UseProductFournDesc=Müşterilere yönelik açıklamalara ek olarak, tedarikçiler tarafından belirlenen ürün açıklamalarını tanımlamak için bir özellik ekleyin ProductSupplierDescription=Ürün için tedarikçi açıklaması UseProductSupplierPackaging=Use packaging on supplier prices (recalculate quantities according to packaging set on supplier price when adding/updating line in supplier documents) -PackagingForThisProduct=Packaging +PackagingForThisProduct=Paketleme QtyRecalculatedWithPackaging=The quantity of the line were recalculated according to supplier packaging #Attributes @@ -367,7 +369,7 @@ UsePercentageVariations=Yüzde varyasyonlarını kullan PercentageVariation=Yüzde varyasyonu ErrorDeletingGeneratedProducts=Mevcut ürün varyantlarını silmeye çalışırken bir hata oluştu NbOfDifferentValues=Farklı değerlerin sayısı -NbProducts=Number of products +NbProducts=Ürün sayısı ParentProduct=Ana ürün HideChildProducts=Değişken ürünleri sakla ShowChildProducts=Varyant ürünlerini göster @@ -379,5 +381,5 @@ ErrorDestinationProductNotFound=Hedef ürün bulunamadı ErrorProductCombinationNotFound=Ürün değişkeni bulunamadı ActionAvailableOnVariantProductOnly=Eylem yalnızca ürün değişkeninde mevcuttur ProductsPricePerCustomer=Müşteri başına ürün fiyatları -ProductSupplierExtraFields=Additional Attributes (Supplier Prices) -DeleteLinkedProduct=Delete the child product linked to the combination +ProductSupplierExtraFields=Ek Nitelikler (Tedarikçi Fiyatları) +DeleteLinkedProduct=Kombinasyonla bağlantılı alt ürünü silin diff --git a/htdocs/langs/tr_TR/projects.lang b/htdocs/langs/tr_TR/projects.lang index a37d8e3050e..6ed953ea615 100644 --- a/htdocs/langs/tr_TR/projects.lang +++ b/htdocs/langs/tr_TR/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=which I'm linked to project Time=Süre ListOfTasks=Görevler listesi GoToListOfTimeConsumed=Tüketilen süre listesine git -GoToListOfTasks=Show as list -GoToGanttView=show as Gantt GanttView=Gantt View ListProposalsAssociatedProject=List of the commercial proposals related to the project ListOrdersAssociatedProject=Proje ile ilgili müşteri siparişlerinin listesi @@ -188,7 +186,7 @@ PlannedWorkload=Planlı işyükü PlannedWorkloadShort=İşyükü ProjectReferers=İlgili öğeler ProjectMustBeValidatedFirst=Projeler önce doğrulanmalıdır -FirstAddRessourceToAllocateTime=Zaman tahsisi için göreve bir kullanıcı kaynağı ilişkilendir +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=Günlük giriş InputPerWeek=Haftalık giriş InputPerMonth=Input per month @@ -240,6 +238,7 @@ LatestModifiedProjects=Değiştirilen son %s proje OtherFilteredTasks=Diğer filtrelenmiş görevler NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=Görevlere kullanıcı yorumlarına izin ver AllowCommentOnProject=Projelerde kullanıcı yorumlarına izin ver @@ -256,7 +255,7 @@ ServiceToUseOnLines=Service to use on lines InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. ProjectFollowOpportunity=Follow opportunity -ProjectFollowTasks=Follow tasks +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Usage: Opportunity UsageTasks=Usage: Tasks @@ -265,3 +264,4 @@ InvoiceToUse=Draft invoice to use NewInvoice=Yeni fatura OneLinePerTask=One line per task OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/tr_TR/receiptprinter.lang b/htdocs/langs/tr_TR/receiptprinter.lang index 775969b454e..0fdd7f993a5 100644 --- a/htdocs/langs/tr_TR/receiptprinter.lang +++ b/htdocs/langs/tr_TR/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Yardımcı Yazıcı CONNECTOR_NETWORK_PRINT=Ağ Yazıcısı CONNECTOR_FILE_PRINT=Yerel Yazıcı CONNECTOR_WINDOWS_PRINT=Yerel Windows Yazıcısı +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Deneme için Sahte Yazıcı, hiçbir şey yapmaz CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Varsayılan profil PROFILE_SIMPLE=Basit profil PROFILE_EPOSTEP=Epos Tep Profili @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Invoice month in letters DOL_VALUE_MONTH=Invoice month DOL_VALUE_DAY=Invoice day DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Fatura ref +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Topluluk İçi Vergi Numarası +DOL_VALUE_MYSOC_CAPITAL=Sermaye +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/tr_TR/stripe.lang b/htdocs/langs/tr_TR/stripe.lang index 97dc7ae5661..faabde173b6 100644 --- a/htdocs/langs/tr_TR/stripe.lang +++ b/htdocs/langs/tr_TR/stripe.lang @@ -32,6 +32,7 @@ VendorName=Satıcının Adı CSSUrlForPaymentForm=Ödeme formu için CSS stil sayfası url'si NewStripePaymentReceived=Yeni Stripe ödemesi alındı NewStripePaymentFailed=Yeni Stripe ödemesi denendi ancak başarısız oldu +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Gizli test anahtarı STRIPE_TEST_PUBLISHABLE_KEY=Yayımlanabilir test anahtarı STRIPE_TEST_WEBHOOK_KEY=Webhook test key @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mo ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) PaymentWillBeRecordedForNextPeriod=Ödeme gelecek dönem için kaydedilecektir. ClickHereToTryAgain=Tekrar denemek için burayı tıklayın... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authenticatin rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/tr_TR/users.lang b/htdocs/langs/tr_TR/users.lang index 50b800b2d52..2ca8694ed66 100644 --- a/htdocs/langs/tr_TR/users.lang +++ b/htdocs/langs/tr_TR/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Kullanıcılar ve özellikleri DomainUser=Etki alanı kullanıcısı %s Reactivate=Yeniden etkinleştir CreateInternalUserDesc=Bu form, şirketiniz/kuruluşunuz içinde bir iç kullanıcı oluşturmanıza olanak tanır. Bir dış kullanıcı oluşturmak için (müşteri, tedarikçi, vb ...), üçüncü parti kişi kartından 'Dolibarr Kullanıcısı Oluştur' butonunu kullanın. -InternalExternalDesc=Bir İç kullanıcı, şirketinizin/kuruluşunuzun parçası olan bir kullanıcıdır.
    Bir Dış kullanıcı ise, müşteri, tedarikçi veya buna benzer bir kullanıcıdır.

    Her iki durumda da, verilen izinler Dolibarr üzerindeki hakları tanımlar. Bunun yanı sıra dış kullanıcı, iç kullanıcıdan farklı bir menü yöneticisine sahip olabilir (Giriş - Ayarlar - Ekran bölümüne bakın). +InternalExternalDesc=Bir İç kullanıcı, şirketinizin/kuruluşunuzun parçası olan bir kullanıcıdır.
    Bir Dış kullanıcı ise, müşteri, tedarikçi veya diğer (Bir üçüncü parti için dış kullanıcı oluşturmak isteniyorsa, oluşturulmak istenen kişinin sayfasında "Bir kullanıcı oluştur" butonu kullanılabilir) bir kullanıcıdır.

    Her iki durumda da, verilen izinler Dolibarr üzerindeki hakları tanımlar. Bunun yanı sıra dış kullanıcı, iç kullanıcıdan farklı bir menü yöneticisine sahip olabilir (Giriş - Ayarlar - Ekran bölümüne bakın). PermissionInheritedFromAGroup=İzin hak tanındı çünkü bir kullanıcının grubundan intikal etti. Inherited=İntikal eden UserWillBeInternalUser=Oluşturulacak kullanıcı bir iç kullanıcı olacaktır (çünkü belirli bir üçüncü parti ile bağlantılı değildir) @@ -105,8 +105,13 @@ ExpectedWorkedHours=Haftalık beklenen çalışma saatleri ColorUser=Kullanıcı rengi DisabledInMonoUserMode=Bakım modunda devre dışıdır UserAccountancyCode=Kullanıcı muhasebe kodu -UserLogoff=Kullanıcı çıktı -UserLogged=Kullanıcı bağlandı +UserLogoff=Kullanıcı çıkış yaptı +UserLogged=Kullanıcı giriş yaptı DateEmployment=İşe Başlama Tarihi DateEmploymentEnd=İşi Bırakma Tarihi CantDisableYourself=Kendi kullanıcı kaydınızı devre dışı bırakamazsınız +ForceUserExpenseValidator=Gider raporu doğrulayıcısını zorla +ForceUserHolidayValidator=İzin isteği doğrulayıcısını zorla +ValidatorIsSupervisorByDefault=Varsayılan olarak, doğrulayıcı kullanıcının denetimcisidir. Bu durumu korumak için boş bırakın. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/tr_TR/website.lang b/htdocs/langs/tr_TR/website.lang index 28380e99411..99c7f17168c 100644 --- a/htdocs/langs/tr_TR/website.lang +++ b/htdocs/langs/tr_TR/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=Siteyi yeni sekmede izle SetAsHomePage=Giriş Sayfası olarak ayarla RealURL=Gerçek URL ViewWebsiteInProduction=Web sitesini giriş URL si kullanarak izle -SetHereVirtualHost=Use with Apache/NGinx/...
    If you can create, on your web server (Apache, Nginx, ...), a dedicated Virtual Host with PHP enabled and a Root directory on
    %s
    then set the name of the virtual host you have created in the properties of web site, so the preview can be done also using this dedicated web server access instead of the internal Dolibarr server. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS=PHP gömülü sunucu ile kullanın
    Geliştirme ortamında, siteyi PHP gömülü web sunucusu ile test etmeyi tercih edebilirsiniz (PHP 5.5 gerekli)
    php -S 0.0.0.0:8080 -t%s YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org CheckVirtualHostPerms=Check also that virtual host has permission %s on files into
    %s @@ -56,7 +57,7 @@ NoPageYet=Henüz hiç sayfa yok YouCanCreatePageOrImportTemplate=Yeni bir sayfa oluşturabilir veya tam bir web sitesi şablonunu içe aktarabilirsiniz SyntaxHelp=Belirli sözdizimi ipuçları hakkında yardım YouCanEditHtmlSourceckeditor=Düzenleyicideki "Kaynak" düğmesini kullanarak HTML kaynak kodunu düzenleyebilirsiniz -YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Sayfa/kapsayıcı kopyasını oluştur CloneSite=Sitenin kopyasını oluştur SiteAdded=Web sitesi eklendi @@ -76,7 +77,7 @@ BlogPost=Blog yazısı WebsiteAccount=Web sitesi hesabı WebsiteAccounts=Web sitesi hesapları AddWebsiteAccount=Web sitesi hesabı oluştur -BackToListOfThirdParty=Üçüncü Parti listesine geri dön +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Önce web sitesini devre dışı bırak MyContainerTitle=Web sitemin başlığı AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Sorry, this website is currently off line. Please WEBSITE_USE_WEBSITE_ACCOUNTS=Web sitesi hesap tablosunu etkinleştir WEBSITE_USE_WEBSITE_ACCOUNTSTooltip=Enable the table to store web site accounts (login/pass) for each website / third party YouMustDefineTheHomePage=Öncelikle varsayılan Giriş sayfasını tanımlamanız gerekir -OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that edits of HTML source will be possible when page content has been initialized by grabbing it from an external page ("Online" editor will NOT be available) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Only edition of HTML source is possible when content was grabbed from an external site GrabImagesInto=Grab also images found into css and page. ImagesShouldBeSavedInto=Görüntüler dizine kaydedilmelidir @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 ch MainLanguage=Main language OtherLanguages=Other languages UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/tr_TR/zapier.lang b/htdocs/langs/tr_TR/zapier.lang new file mode 100644 index 00000000000..c1f64887a9a --- /dev/null +++ b/htdocs/langs/tr_TR/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Dolibarr için Zapier +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Dolibarr modülü için Zapier + +# +# Admin page +# +ZapierForDolibarrSetup = Dolibarr için Zapier ayarları diff --git a/htdocs/langs/uk_UA/accountancy.lang b/htdocs/langs/uk_UA/accountancy.lang index 9bf0f16ab8f..c3f5802b92a 100644 --- a/htdocs/langs/uk_UA/accountancy.lang +++ b/htdocs/langs/uk_UA/accountancy.lang @@ -121,6 +121,7 @@ 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 +TotalForAccount=Total for accounting account Ventilate=Bind @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Accounting account to register donations ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (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 products sold in EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported 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_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (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_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unkno ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error PaymentsNotLinkedToProduct=Payment not linked to any product / service +OpeningBalance=Opening balance ShowOpeningBalance=Show opening balance HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Group of account PcgtypeDesc=Group 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. +Reconcilable=Reconcilable + TotalVente=Total turnover before tax TotalMarge=Total sales margin @@ -307,11 +317,13 @@ 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Chart of accounts Id ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC OptionModeProductSellExport=Mode sales exported in other countries OptionModeProductBuy=Mode purchases +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries 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. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=Remove accounting code from lines that not exists into charts of account CleanHistory=Reset all bindings for selected year PredefinedGroups=Predefined groups @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Account removed from group SaleLocal=Local sale SaleExport=Export sale SaleEEC=Sale in EEC +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=Range of accounting account diff --git a/htdocs/langs/uk_UA/admin.lang b/htdocs/langs/uk_UA/admin.lang index 17b0f823011..77db823c815 100644 --- a/htdocs/langs/uk_UA/admin.lang +++ b/htdocs/langs/uk_UA/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Web server user/group NoSessionFound=Your PHP configuration seems to not allow listing of active sessions. The directory used to save sessions (%s) may be protected (for example by OS permissions or by PHP directive open_basedir). DBStoringCharset=Database charset to store data DBSortingCharset=Database charset to sort data +HostCharset=Host charset ClientCharset=Client charset ClientSortingCharset=Client collation WarningModuleNotActive=Модуль %s повинен бути активованим @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the NoMaxSizeByPHPLimit=Note: No limit is set in your PHP configuration MaxSizeForUploadedFiles=Maximum size for uploaded files (0 to disallow any upload) UseCaptchaCode=Use graphical code (CAPTCHA) on login page -AntiVirusCommand= Full path to antivirus command -AntiVirusCommandExample= Example for ClamWin: c:\\Progra~1\\ClamWin\\bin\\clamscan.exe
    Example for ClamAv: /usr/bin/clamscan +AntiVirusCommand=Full path to antivirus command +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= More parameters on command line -AntiVirusParamExample= Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=Accounting module setup UserSetup=User management setup MultiCurrencySetup=Multi-currency setup @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Feature disabled in demo FeatureAvailableOnlyOnStable=Feature only available on official stable versions BoxesDesc=Widgets are components showing some information that you can add to personalize some pages. You can choose between showing the widget or not by selecting target page and clicking 'Activate', or by clicking the trashcan to disable it. OnlyActiveElementsAreShown=Only elements from enabled modules are shown. -ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button (at end of module line) to enable/disable a module/application. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. ModulesMarketPlaceDesc=You can find more modules to download on external websites on the Internet... ModulesDeployDesc=If permissions on your file system allow it, you can use this tool to deploy an external module. The module will then be visible on the tab %s. ModulesMarketPlaces=Find external app/modules @@ -212,6 +213,7 @@ CompatibleUpTo=Compatible with version %s NotCompatible=This module does not seem compatible with your Dolibarr %s (Min %s - Max %s). CompatibleAfterUpdate=This module requires an update to your Dolibarr %s (Min %s - Max %s). SeeInMarkerPlace=See in Market place +SeeSetupOfModule=See setup of module %s Updated=Updated Nouveauté=Novelty AchatTelechargement=Buy / Download @@ -221,6 +223,7 @@ DoliPartnersDesc=List of companies providing custom-developed modules or feature WebSiteDesc=External websites for more add-on (non-core) modules... DevelopYourModuleDesc=Some solutions to develop your own module... URL=URL +RelativeURL=Relative URL BoxesAvailable=Widgets available BoxesActivated=Widgets activated ActivateOn=Activate on @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Checkboxes ExtrafieldCheckBoxFromList=Checkboxes from table ExtrafieldLink=Link to an object ComputedFormula=Computed field -ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Store computed field ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! ExtrafieldParamHelpPassword=Leaving this field blank means this value will be stored without encryption (field must be only hidden with star on screen).
    Set 'auto' to use the default encryption rule to save password into database (then value read will be the hash only, no way to retrieve original value) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Keep empty to use default value DefaultLink=Default link SetAsDefault=Set as default ValueOverwrittenByUserSetup=Warning, this value may be overwritten by user specific setup (each user can set his own clicktodial url) -ExternalModule=External module - Installed into directory %s +ExternalModule=External module +InstalledInto=Installed into directory %s BarcodeInitForthird-parties=Mass barcode init for third-parties BarcodeInitForProductsOrServices=Mass barcode init or reset for products or services CurrentlyNWithoutBarCode=Currently, you have %s record on %s %s without barcode defined. @@ -947,7 +951,7 @@ DictionaryCanton=States/Provinces DictionaryRegion=Regions DictionaryCountry=Countries DictionaryCurrency=Currencies -DictionaryCivility=Title of civility +DictionaryCivility=Honorific titles DictionaryActions=Types of agenda events DictionarySocialContributions=Types of social or fiscal taxes DictionaryVAT=VAT Rates or Sales Tax Rates @@ -988,6 +992,7 @@ VATIsNotUsedDesc=By default the proposed Sales tax is 0 which can be used for ca VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=Rate LocalTax1IsNotUsed=Do not use second tax LocalTax1IsUsedDesc=Use a second type of tax (other than first one) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices LocalTax2IsNotUsedDescES=By default the proposed IRPF is 0. End of rule. LocalTax2IsUsedExampleES=In Spain, freelancers and independent professionals who provide services and companies who have chosen the tax system of modules. LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=Reports on local taxes CalcLocaltax1=Sales - Purchases CalcLocaltax1Desc=Local Taxes reports are calculated with the difference between localtaxes sales and localtaxes purchases @@ -1018,6 +1026,7 @@ CalcLocaltax2=Purchases CalcLocaltax2Desc=Local Taxes reports are the total of localtaxes purchases CalcLocaltax3=Sales CalcLocaltax3Desc=Local Taxes reports are the total of localtaxes sales +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=Label used by default if no translation can be found for code LabelOnDocuments=Label on documents LabelOrTranslationKey=Label or translation key @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Expense report to approve Delays_MAIN_DELAY_HOLIDAYS=Leave requests 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. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. SetupDescription5=Other Setup menu entries manage optional parameters. LogEvents=Security audit events Audit=Audit @@ -1128,7 +1137,7 @@ LogEventDesc=Enable logging for specific security events. Administrators the log AreaForAdminOnly=Setup parameters can be set by administrator users only. SystemInfoDesc=System information is miscellaneous technical information you get in read only mode and visible for administrators only. SystemAreaForAdminOnly=This area is available to administrator users only. Dolibarr user permissions cannot change this restriction. -CompanyFundationDesc=Edit the information of the company/entity. Click on "%s" button at the bottom of the page. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. AccountantFileNumber=Accountant code DisplayDesc=Parameters affecting the look and behaviour of Dolibarr can be modified here. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Rules to generate and validate passwords DisableForgetPasswordLinkOnLogonPage=Do not show the "Password Forgotten" link on the Login page UsersSetup=Users module setup UserMailRequired=Email required to create a new user +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### HRMSetup=HRM module setup ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Invoice documents models BillsPDFModulesAccordindToInvoiceType=Invoice documents models according to invoice type PaymentsPDFModules=Payment documents models ForceInvoiceDate=Force invoice date to validation date -SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined for invoice +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice SuggestPaymentByRIBOnAccount=Suggest payment by withdrawal on account SuggestPaymentByChequeToAddress=Suggest payment by check to FreeLegalTextOnInvoices=Free text on invoices @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Vendor payments setup PropalSetup=Commercial proposals module setup ProposalsNumberingModules=Commercial proposal numbering models ProposalsPDFModules=Commercial proposal documents models -SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined for proposal +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal FreeLegalTextOnProposal=Free text on commercial proposals WatermarkOnDraftProposal=Watermark on draft commercial proposals (none if empty) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal @@ -1322,6 +1334,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 ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=Sales Orders management setup OrdersNumberingModules=Orders numbering models OrdersModelModule=Order documents models @@ -1720,7 +1733,7 @@ MultiCompanySetup=Multi-company module setup ##### Suppliers ##### SuppliersSetup=Vendor module setup SuppliersCommandModel=Complete template of Purchase Order -SuppliersCommandModelMuscadet=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) SuppliersInvoiceModel=Complete template of Vendor Invoice SuppliersInvoiceNumberingModel=Vendor invoices numbering models IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Hide images in Top menu LeftMenuBackgroundColor=Background color for Left menu BackgroundTableTitleColor=Background color for Table title line BackgroundTableTitleTextColor=Text color for Table title line +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Background color for odd table lines BackgroundTableLineEvenColor=Background color for even table lines MinimumNoticePeriod=Minimum notice period (Your leave request must be done before this delay) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Dolibarr Reference not found in Message ID FormatZip=Zip MainMenuCode=Menu entry code (mainmenu) ECMAutoTree=Show automatic ECM tree -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. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Opening hours OpeningHoursDesc=Enter here the regular opening hours of your company. ResourceSetup=Configuration of Resource module @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramatical ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export +ImportSetup=Setup of module Import InstanceUniqueID=Unique ID of the instance SmallerThan=Smaller than LargerThan=Larger than @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled EmailTemplate=Template for email EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/uk_UA/bills.lang b/htdocs/langs/uk_UA/bills.lang index 4fc90ffb4fa..f33892e06aa 100644 --- a/htdocs/langs/uk_UA/bills.lang +++ b/htdocs/langs/uk_UA/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Vendors invoices SupplierBill=Vendor invoice SupplierBills=рахунки-фактури постачальників Payment=Платіж -PaymentBack=Повернення платежу -CustomerInvoicePaymentBack=Повернення платежу +PaymentBack=Refund +CustomerInvoicePaymentBack=Refund Payments=Платежі PaymentsBack=Refunds paymentInInvoiceCurrency=in invoices currency PaidBack=Повернення платежу DeletePayment=Видалити платіж ConfirmDeletePayment=Are you sure you want to delete this payment? -ConfirmConvertToReduc=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. -ConfirmConvertToReducSupplier=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. SupplierPayments=Vendor payments ReceivedPayments=Отримані платежі @@ -209,17 +209,13 @@ NumberOfBillsByMonth=No. of invoices per month AmountOfBills=Сума рахунків-фактур AmountOfBillsHT=Amount of invoices (net of tax) AmountOfBillsByMonthHT=Сума рахунків-фактур за місяць (за вирахуванням податку) -ShowSocialContribution=Show social/fiscal tax -ShowBill=Показати рахунок-фактуру -ShowInvoice=Показати рахунок-фактуру -ShowInvoiceReplace=Показати замінюючий рахунок-фактуру -ShowInvoiceAvoir=Показати кредитое авізо -ShowInvoiceDeposit=Show down payment invoice -ShowInvoiceSituation=Show situation invoice UseSituationInvoices=Allow situation invoice UseSituationInvoicesCreditNote=Allow situation invoice credit note Retainedwarranty=Retained warranty +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=To pay on %s toPayOn=to pay on %s RetainedWarranty=Retained Warranty @@ -230,7 +226,6 @@ 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 AlreadyPaidNoCreditNotesNoDeposits=Already paid (without credit notes and down payments) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Generated from template invoice %s WarningInvoiceDateInFuture=Warning, the invoice date is higher than current date WarningInvoiceDateTooFarInFuture=Warning, the invoice date is too far from current date ViewAvailableGlobalDiscounts=View available discounts +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Status PaymentConditionShortRECEP=Due Upon Receipt @@ -509,7 +505,7 @@ ToMakePayment=Pay ToMakePaymentBack=Повернення платежу ListOfYourUnpaidInvoices=Список неоплачених рахунків NoteListOfYourUnpaidInvoices=Note: This list contains only invoices for third parties you are linked to as a sale representative. -RevenueStamp=Revenue stamp +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party YouMustCreateStandardInvoiceFirstDesc=You have to create a standard invoice first and convert it to "template" to create a new template invoice @@ -575,3 +571,4 @@ AutoFillDateTo=Set end date for service line with next invoice date AutoFillDateToShort=Set end date MaxNumberOfGenerationReached=Max number of gen. reached BILL_DELETEInDolibarr=Invoice deleted +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/uk_UA/blockedlog.lang b/htdocs/langs/uk_UA/blockedlog.lang index cff8f7d657b..5afae6e9e53 100644 --- a/htdocs/langs/uk_UA/blockedlog.lang +++ b/htdocs/langs/uk_UA/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Unalterable logs ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) DownloadBlockChain=Download fingerprints -KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this re after it was recorded, or has erased the previous archived record (check that line with previous # exists). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. AddedByAuthority=Stored into remote authority diff --git a/htdocs/langs/uk_UA/cashdesk.lang b/htdocs/langs/uk_UA/cashdesk.lang index 72238fe1fed..05314c6dd09 100644 --- a/htdocs/langs/uk_UA/cashdesk.lang +++ b/htdocs/langs/uk_UA/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Add this article RestartSelling=Go back on sell SellFinished=Sale complete PrintTicket=Print ticket +SendTicket=Send ticket NoProductFound=No article found ProductFound=product found NoArticle=No article @@ -48,6 +49,7 @@ Footer=Footer AmountAtEndOfPeriod=Amount at end of period (day, month or year) TheoricalAmount=Theorical amount RealAmount=Real amount +CashFence=Cash fence CashFenceDone=Cash fence done for the period NbOfInvoices=К-ть рахунків-фактур Paymentnumpad=Type of Pad to enter payment @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS needs product categories to work OrderNotes=Order Notes CashDeskBankAccountFor=Default account to use for payments in NoPaimementModesDefined=No paiment mode defined in TakePOS configuration -TicketVatGrouped=Group VAT by rate in tickets -AutoPrintTickets=Automatically print tickets +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? @@ -87,7 +90,19 @@ HeadBar=Head Bar SortProductField=Field for sorting products Browser=Browser BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/uk_UA/companies.lang b/htdocs/langs/uk_UA/companies.lang index b4ff027e4df..64082ef929a 100644 --- a/htdocs/langs/uk_UA/companies.lang +++ b/htdocs/langs/uk_UA/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted=Company "%s" deleted from database. ListOfContacts=List of contacts/addresses ListOfContactsAddresses=List of contacts/addresses ListOfThirdParties=List of Third Parties -ShowCompany=Show Third Party ShowContact=Show contact ContactsAllShort=All (No filter) ContactType=Contact type @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=First name of sales representative SaleRepresentativeLastname=Last name of sales representative ErrorThirdpartiesMerge=There was an error when deleting the third parties. Please check the log. Changes have been reverted. NewCustomerSupplierCodeProposed=Customer or Vendor code already used, a new code is suggested +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Payment Type - Customer PaymentTermsCustomer=Payment Terms - Customer diff --git a/htdocs/langs/uk_UA/compta.lang b/htdocs/langs/uk_UA/compta.lang index db4c2fecf25..25d9f2b34e4 100644 --- a/htdocs/langs/uk_UA/compta.lang +++ b/htdocs/langs/uk_UA/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=See %sanalysis of payments%s for a calculation on act SeeReportInDueDebtMode=See %sanalysis of invoices%s for a calculation based on known recorded invoices even if they are not yet accounted in Ledger. SeeReportInBookkeepingMode=See %sBookeeping report%s for a calculation on Bookkeeping Ledger table RulesAmountWithTaxIncluded=- Amounts shown are with all taxes included -RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the validation date of invoices and VAT and on the due date for expenses. For salaries defined with Salary module, the value date of payment is used. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- It includes the real payments made on invoices, expenses, VAT and salaries.
    - It is based on the payment dates of the invoices, expenses, VAT and salaries. The donation date for donation. -RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the validation date of these invoices.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    RulesCATotalSaleJournal=It includes all credit lines from the Sale journal. RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Turnover invoiced by sale tax rate TurnoverCollectedbyVatrate=Turnover collected by sale tax rate PurchasebyVatrate=Purchase by sale tax rate LabelToShow=Short label +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/uk_UA/donations.lang b/htdocs/langs/uk_UA/donations.lang index db25a36744c..8ceb3f02a07 100644 --- a/htdocs/langs/uk_UA/donations.lang +++ b/htdocs/langs/uk_UA/donations.lang @@ -7,7 +7,6 @@ AddDonation=Create a donation NewDonation=New donation DeleteADonation=Delete a donation ConfirmDeleteADonation=Are you sure you want to delete this donation? -ShowDonation=Show donation PublicDonation=Public donation DonationsArea=Donations area DonationStatusPromiseNotValidated=Draft promise @@ -17,6 +16,7 @@ DonationStatusPromiseNotValidatedShort=Проект DonationStatusPromiseValidatedShort=Підтверджений DonationStatusPaidShort=Received DonationTitle=Donation receipt +DonationDate=Donation date DonationDatePayment=Дата платежу ValidPromess=Validate promise DonationReceipt=Donation receipt diff --git a/htdocs/langs/uk_UA/errors.lang b/htdocs/langs/uk_UA/errors.lang index 3ffc686e62f..7c67aeca8b5 100644 --- a/htdocs/langs/uk_UA/errors.lang +++ b/htdocs/langs/uk_UA/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=File not received completely by server. ErrorNoTmpDir=Temporary directy %s does not exists. ErrorUploadBlockedByAddon=Upload blocked by a PHP/Apache plugin. ErrorFileSizeTooLarge=File size is too large. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Size too long for int type (%s digits maximum) ErrorSizeTooLongForVarcharType=Size too long for string type (%s chars maximum) ErrorNoValueForSelectType=Please fill value for select list @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # 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/uk_UA/install.lang b/htdocs/langs/uk_UA/install.lang index bf9c08c4ba7..f67dff57184 100644 --- a/htdocs/langs/uk_UA/install.lang +++ b/htdocs/langs/uk_UA/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=This PHP supports Curl. PHPSupportCalendar=This PHP supports calendars extensions. PHPSupportUTF8=This PHP supports UTF8 functions. PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=This PHP supports %s functions. PHPMemoryOK=Your PHP max session memory is set to %s. This should be enough. 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. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=Your PHP installation does not support Curl. ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. 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. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. ErrorDirDoesNotExists=Directory %s does not exist. ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=The application tried to self-upgrade, but the in 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. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/uk_UA/interventions.lang b/htdocs/langs/uk_UA/interventions.lang index 59f2cb4dc60..69872dae7de 100644 --- a/htdocs/langs/uk_UA/interventions.lang +++ b/htdocs/langs/uk_UA/interventions.lang @@ -41,9 +41,7 @@ InterventionsArea=Interventions area DraftFichinter=Draft interventions LastModifiedInterventions=Latest %s modified interventions FichinterToProcess=Interventions to process -##### Types de contacts ##### TypeContact_fichinter_external_CUSTOMER=Following-up customer contact -# Modele numérotation PrintProductsOnFichinter=Print also lines of type "product" (not only services) on intervention card PrintProductsOnFichinterDetails=interventions generated from orders UseServicesDurationOnFichinter=Use services duration for interventions generated from orders @@ -53,14 +51,16 @@ InterventionStatistics=Statistics of interventions NbOfinterventions=No. of intervention cards NumberOfInterventionsByMonth=No. of intervention cards by month (date of validation) AmountOfInteventionNotIncludedByDefault=Amount of intervention is not included by default into profit (in most cases, timesheets are used to count time spent). Add option PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT to 1 into home-setup-other to include them. -##### Exports ##### InterId=Intervention id InterRef=Intervention ref. InterDateCreation=Date creation intervention InterDuration=Duration intervention InterStatus=Status intervention InterNote=Note intervention +InterLine=Line of intervention InterLineId=Line id intervention InterLineDate=Line date intervention InterLineDuration=Line duration intervention InterLineDesc=Line description intervention +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/uk_UA/link.lang b/htdocs/langs/uk_UA/link.lang index fdcf07aeff4..1ffcd41a18b 100644 --- a/htdocs/langs/uk_UA/link.lang +++ b/htdocs/langs/uk_UA/link.lang @@ -8,3 +8,4 @@ LinkRemoved=The link %s has been removed ErrorFailedToDeleteLink= Failed to remove link '%s' ErrorFailedToUpdateLink= Failed to update link '%s' URLToLink=URL to link +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/uk_UA/mails.lang b/htdocs/langs/uk_UA/mails.lang index 5650dbb3967..8b1cb50fe79 100644 --- a/htdocs/langs/uk_UA/mails.lang +++ b/htdocs/langs/uk_UA/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=No contact/address with a category found NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found OutGoingEmailSetup=Outgoing email setup InGoingEmailSetup=Incoming email setup -OutGoingEmailSetupForEmailing=Outgoing email setup (for mass emailing) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Default outgoing email setup Information=Information ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/uk_UA/main.lang b/htdocs/langs/uk_UA/main.lang index 29fc4f2f58c..4a8db0781af 100644 --- a/htdocs/langs/uk_UA/main.lang +++ b/htdocs/langs/uk_UA/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Save and stay SaveAndNew=Save and new TestConnection=Test connection ToClone=Clone +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Choose data you want to clone: NoCloneOptionsSpecified=No data to clone defined. Of=of @@ -829,6 +830,8 @@ Gender=Gender Genderman=Man Genderwoman=Woman ViewList=List view +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Mandatory Hello=Hello GoodBye=GoodBye @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Select your graph options to build a graph Measures=Measures XAxis=X-Axis YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/uk_UA/modulebuilder.lang b/htdocs/langs/uk_UA/modulebuilder.lang index 00a8c0f9d32..135ac1ae9ec 100644 --- a/htdocs/langs/uk_UA/modulebuilder.lang +++ b/htdocs/langs/uk_UA/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=List of dictionaries entries ListOfPermissionsDefined=List of defined permissions SeeExamples=See examples here EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) -VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update). Using a negative value means field is not shown by default on list but can be selected for viewing). It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty DisplayOnPdf=Display on PDF IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) diff --git a/htdocs/langs/uk_UA/multicurrency.lang b/htdocs/langs/uk_UA/multicurrency.lang new file mode 100644 index 00000000000..bfcbd11fb7c --- /dev/null +++ b/htdocs/langs/uk_UA/multicurrency.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Multi currency +ErrorAddRateFail=Error in added rate +ErrorAddCurrencyFail=Error in added currency +ErrorDeleteCurrencyFail=Error delete fail +multicurrency_syncronize_error=Synchronization error: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Use the date of the document to find the currency rate, instead of using the latest known rate +multicurrency_useOriginTx=When an object is created from another, keep the original rate from the source object (otherwise use the latest known rate) +CurrencyLayerAccount=CurrencyLayer API +CurrencyLayerAccount_help_to_synchronize=You must create an account on website %s to use this functionality.
    Get your API key.
    If you use a free account, you can't change the source currency (USD by default).
    If your main currency is not USD, the application will automatically recalculate it.

    You are limited to 1000 synchronizations per month. +multicurrency_appId=API key +multicurrency_appCurrencySource=Source currency +multicurrency_alternateCurrencySource=Alternate source currency +CurrenciesUsed=Currencies used +CurrenciesUsed_help_to_add=Add the different currencies and rates you need to use on your proposals, orders etc. +rate=rate +MulticurrencyReceived=Received, original currency +MulticurrencyRemainderToTake=Remaining amount, original currency +MulticurrencyPaymentAmount=Payment amount, original currency +AmountToOthercurrency=Amount To (in currency of receiving account) +CurrencyRateSyncSucceed=Currency rate synchronization done successfuly +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Use the currency of the document for online payments diff --git a/htdocs/langs/uk_UA/other.lang b/htdocs/langs/uk_UA/other.lang index 00259d976bc..ba85f51e739 100644 --- a/htdocs/langs/uk_UA/other.lang +++ b/htdocs/langs/uk_UA/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Sales order validated Notify_ORDER_SENTBYMAIL=Sales order sent by mail Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=URL of page WEBSITE_TITLE=Title WEBSITE_DESCRIPTION=Description WEBSITE_IMAGE=Image -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Keywords LinesToImport=Lines to import diff --git a/htdocs/langs/uk_UA/products.lang b/htdocs/langs/uk_UA/products.lang index 21d7b5eaca1..ae0f5ef2874 100644 --- a/htdocs/langs/uk_UA/products.lang +++ b/htdocs/langs/uk_UA/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL MassBarcodeInit=Mass barcode init MassBarcodeInitDesc=This page can be used to initialize a barcode on objects that does not have barcode defined. Check before that setup of module barcode is complete. ProductAccountancyBuyCode=Accounting code (purchase) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Accounting code (sale) ProductAccountancySellIntraCode=Accounting code (sale intra-Community) ProductAccountancySellExportCode=Accounting code (sale export) @@ -165,7 +167,7 @@ SuppliersPrices=Vendor prices SuppliersPricesOfProductsOrServices=Vendor prices (of products or services) CustomCode=Customs / Commodity / HS code CountryOrigin=Origin country -Nature=Nature of produt (material/finished) +Nature=Nature of product (material/finished) ShortLabel=Short label Unit=Unit p=u. diff --git a/htdocs/langs/uk_UA/projects.lang b/htdocs/langs/uk_UA/projects.lang index 7e9b2dca54e..c719a049380 100644 --- a/htdocs/langs/uk_UA/projects.lang +++ b/htdocs/langs/uk_UA/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=which I'm linked to project Time=Time ListOfTasks=List of tasks GoToListOfTimeConsumed=Go to list of time consumed -GoToListOfTasks=Show as list -GoToGanttView=show as Gantt GanttView=Gantt View ListProposalsAssociatedProject=List of the commercial proposals related to the project ListOrdersAssociatedProject=List of sales orders related to the project @@ -188,7 +186,7 @@ PlannedWorkload=Planned workload PlannedWorkloadShort=Workload ProjectReferers=Related items ProjectMustBeValidatedFirst=Project must be validated first -FirstAddRessourceToAllocateTime=Assign a user resource to task to allocate time +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=Input per day InputPerWeek=Input per week InputPerMonth=Input per month @@ -240,6 +238,7 @@ LatestModifiedProjects=Latest %s modified projects OtherFilteredTasks=Other filtered tasks NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=Allow user comments on tasks AllowCommentOnProject=Allow user comments on projects @@ -256,7 +255,7 @@ ServiceToUseOnLines=Service to use on lines InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. ProjectFollowOpportunity=Follow opportunity -ProjectFollowTasks=Follow tasks +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Usage: Opportunity UsageTasks=Usage: Tasks @@ -265,3 +264,4 @@ InvoiceToUse=Draft invoice to use NewInvoice=Новий рахунок-фактура OneLinePerTask=One line per task OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/uk_UA/receiptprinter.lang b/htdocs/langs/uk_UA/receiptprinter.lang index 9681691ae48..807a476009d 100644 --- a/htdocs/langs/uk_UA/receiptprinter.lang +++ b/htdocs/langs/uk_UA/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Dummy Printer CONNECTOR_NETWORK_PRINT=Network Printer CONNECTOR_FILE_PRINT=Local Printer CONNECTOR_WINDOWS_PRINT=Local Windows Printer +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Fake Printer for test, does nothing CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Default Profile PROFILE_SIMPLE=Simple Profile PROFILE_EPOSTEP=Epos Tep Profile @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Invoice month in letters DOL_VALUE_MONTH=Invoice month DOL_VALUE_DAY=Invoice day DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Invoice ref +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=Capital +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/uk_UA/stripe.lang b/htdocs/langs/uk_UA/stripe.lang index eb77441d2cd..844762040af 100644 --- a/htdocs/langs/uk_UA/stripe.lang +++ b/htdocs/langs/uk_UA/stripe.lang @@ -32,6 +32,7 @@ VendorName=Name of vendor CSSUrlForPaymentForm=CSS style sheet url for payment form NewStripePaymentReceived=New Stripe payment received NewStripePaymentFailed=New Stripe payment tried but failed +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Secret test key STRIPE_TEST_PUBLISHABLE_KEY=Publishable test key STRIPE_TEST_WEBHOOK_KEY=Webhook test key @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mo 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... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authenticatin rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/uk_UA/users.lang b/htdocs/langs/uk_UA/users.lang index 43fa5342da3..aea4e7676e4 100644 --- a/htdocs/langs/uk_UA/users.lang +++ b/htdocs/langs/uk_UA/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Users and their properties DomainUser=Domain user %s Reactivate=Reactivate CreateInternalUserDesc=This form allows you to create an internal user in your company/organization. To create an external user (customer, vendor etc. ..), use the button 'Create Dolibarr User' from that third-party's contact card. -InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other.

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=Permission granted because inherited from one of a user's group. Inherited=Inherited UserWillBeInternalUser=Created user will be an internal user (because not linked to a particular third party) @@ -110,3 +110,8 @@ UserLogged=User logged DateEmployment=Employment Start Date DateEmploymentEnd=Employment End Date CantDisableYourself=You can't disable your own user record +ForceUserExpenseValidator=Force expense report validator +ForceUserHolidayValidator=Force leave request validator +ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/uk_UA/website.lang b/htdocs/langs/uk_UA/website.lang index 7fe18b58621..e2d360bc4c8 100644 --- a/htdocs/langs/uk_UA/website.lang +++ b/htdocs/langs/uk_UA/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=View page in new tab SetAsHomePage=Set as Home page RealURL=Real URL ViewWebsiteInProduction=View web site using home URLs -SetHereVirtualHost=Use with Apache/NGinx/...
    If you can create, on your web server (Apache, Nginx, ...), a dedicated Virtual Host with PHP enabled and a Root directory on
    %s
    then set the name of the virtual host you have created in the properties of web site, so the preview can be done also using this dedicated web server access instead of the internal Dolibarr server. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS=Use with PHP embedded server
    On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running
    php -S 0.0.0.0:8080 -t %s YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org CheckVirtualHostPerms=Check also that virtual host has permission %s on files into
    %s @@ -56,7 +57,7 @@ NoPageYet=No pages yet YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template SyntaxHelp=Help on specific syntax tips YouCanEditHtmlSourceckeditor=You can edit HTML source code using the "Source" button in editor. -YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Clone page/container CloneSite=Clone site SiteAdded=Website added @@ -76,7 +77,7 @@ BlogPost=Blog post WebsiteAccount=Website account WebsiteAccounts=Website accounts AddWebsiteAccount=Create web site account -BackToListOfThirdParty=Back to list for Third Party +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Disable website first MyContainerTitle=My web site title AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Sorry, this website is currently off line. Please 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 -OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that edits of HTML source will be possible when page content has been initialized by grabbing it from an external page ("Online" editor will NOT be available) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Only edition of HTML source is possible when content was grabbed from an external site GrabImagesInto=Grab also images found into css and page. ImagesShouldBeSavedInto=Images should be saved into directory @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 ch MainLanguage=Main language OtherLanguages=Other languages UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/uk_UA/zapier.lang b/htdocs/langs/uk_UA/zapier.lang new file mode 100644 index 00000000000..6d6eda71313 --- /dev/null +++ b/htdocs/langs/uk_UA/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr module + +# +# Admin page +# +ZapierForDolibarrSetup = Setup of Zapier for Dolibarr diff --git a/htdocs/langs/uz_UZ/accountancy.lang b/htdocs/langs/uz_UZ/accountancy.lang index 1f9382137ea..b8ce37a0956 100644 --- a/htdocs/langs/uz_UZ/accountancy.lang +++ b/htdocs/langs/uz_UZ/accountancy.lang @@ -121,6 +121,7 @@ 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 +TotalForAccount=Total for accounting account Ventilate=Bind @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Accounting account to register donations ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (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 products sold in EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported 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_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (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_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unkno ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error PaymentsNotLinkedToProduct=Payment not linked to any product / service +OpeningBalance=Opening balance ShowOpeningBalance=Show opening balance HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Group of account PcgtypeDesc=Group 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. +Reconcilable=Reconcilable + TotalVente=Total turnover before tax TotalMarge=Total sales margin @@ -307,11 +317,13 @@ 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=Chart of accounts Id ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC OptionModeProductSellExport=Mode sales exported in other countries OptionModeProductBuy=Mode purchases +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries 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. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=Remove accounting code from lines that not exists into charts of account CleanHistory=Reset all bindings for selected year PredefinedGroups=Predefined groups @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Account removed from group SaleLocal=Local sale SaleExport=Export sale SaleEEC=Sale in EEC +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=Range of accounting account diff --git a/htdocs/langs/uz_UZ/admin.lang b/htdocs/langs/uz_UZ/admin.lang index 2f36c876c1a..7eb67d7a4ab 100644 --- a/htdocs/langs/uz_UZ/admin.lang +++ b/htdocs/langs/uz_UZ/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Web server user/group NoSessionFound=Your PHP configuration seems to not allow listing of active sessions. The directory used to save sessions (%s) may be protected (for example by OS permissions or by PHP directive open_basedir). DBStoringCharset=Database charset to store data DBSortingCharset=Database charset to sort data +HostCharset=Host charset ClientCharset=Client charset ClientSortingCharset=Client collation WarningModuleNotActive=Module %s must be enabled @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the NoMaxSizeByPHPLimit=Note: No limit is set in your PHP configuration MaxSizeForUploadedFiles=Maximum size for uploaded files (0 to disallow any upload) UseCaptchaCode=Use graphical code (CAPTCHA) on login page -AntiVirusCommand= Full path to antivirus command -AntiVirusCommandExample= Example for ClamWin: c:\\Progra~1\\ClamWin\\bin\\clamscan.exe
    Example for ClamAv: /usr/bin/clamscan +AntiVirusCommand=Full path to antivirus command +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= More parameters on command line -AntiVirusParamExample= Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=Accounting module setup UserSetup=User management setup MultiCurrencySetup=Multi-currency setup @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Feature disabled in demo FeatureAvailableOnlyOnStable=Feature only available on official stable versions BoxesDesc=Widgets are components showing some information that you can add to personalize some pages. You can choose between showing the widget or not by selecting target page and clicking 'Activate', or by clicking the trashcan to disable it. OnlyActiveElementsAreShown=Only elements from enabled modules are shown. -ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button (at end of module line) to enable/disable a module/application. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. ModulesMarketPlaceDesc=You can find more modules to download on external websites on the Internet... ModulesDeployDesc=If permissions on your file system allow it, you can use this tool to deploy an external module. The module will then be visible on the tab %s. ModulesMarketPlaces=Find external app/modules @@ -212,6 +213,7 @@ CompatibleUpTo=Compatible with version %s NotCompatible=This module does not seem compatible with your Dolibarr %s (Min %s - Max %s). CompatibleAfterUpdate=This module requires an update to your Dolibarr %s (Min %s - Max %s). SeeInMarkerPlace=See in Market place +SeeSetupOfModule=See setup of module %s Updated=Updated Nouveauté=Novelty AchatTelechargement=Buy / Download @@ -221,6 +223,7 @@ DoliPartnersDesc=List of companies providing custom-developed modules or feature WebSiteDesc=External websites for more add-on (non-core) modules... DevelopYourModuleDesc=Some solutions to develop your own module... URL=URL +RelativeURL=Relative URL BoxesAvailable=Widgets available BoxesActivated=Widgets activated ActivateOn=Activate on @@ -425,7 +428,7 @@ ExtrafieldCheckBox=Checkboxes ExtrafieldCheckBoxFromList=Checkboxes from table ExtrafieldLink=Link to an object ComputedFormula=Computed field -ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Store computed field ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! ExtrafieldParamHelpPassword=Leaving this field blank means this value will be stored without encryption (field must be only hidden with star on screen).
    Set 'auto' to use the default encryption rule to save password into database (then value read will be the hash only, no way to retrieve original value) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Keep empty to use default value DefaultLink=Default link SetAsDefault=Set as default ValueOverwrittenByUserSetup=Warning, this value may be overwritten by user specific setup (each user can set his own clicktodial url) -ExternalModule=External module - Installed into directory %s +ExternalModule=External module +InstalledInto=Installed into directory %s BarcodeInitForthird-parties=Mass barcode init for third-parties BarcodeInitForProductsOrServices=Mass barcode init or reset for products or services CurrentlyNWithoutBarCode=Currently, you have %s record on %s %s without barcode defined. @@ -947,7 +951,7 @@ DictionaryCanton=States/Provinces DictionaryRegion=Regions DictionaryCountry=Countries DictionaryCurrency=Currencies -DictionaryCivility=Title of civility +DictionaryCivility=Honorific titles DictionaryActions=Types of agenda events DictionarySocialContributions=Types of social or fiscal taxes DictionaryVAT=VAT Rates or Sales Tax Rates @@ -988,6 +992,7 @@ VATIsNotUsedDesc=By default the proposed Sales tax is 0 which can be used for ca VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=Rate LocalTax1IsNotUsed=Do not use second tax LocalTax1IsUsedDesc=Use a second type of tax (other than first one) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices LocalTax2IsNotUsedDescES=By default the proposed IRPF is 0. End of rule. LocalTax2IsUsedExampleES=In Spain, freelancers and independent professionals who provide services and companies who have chosen the tax system of modules. LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=Reports on local taxes CalcLocaltax1=Sales - Purchases CalcLocaltax1Desc=Local Taxes reports are calculated with the difference between localtaxes sales and localtaxes purchases @@ -1018,6 +1026,7 @@ CalcLocaltax2=Purchases CalcLocaltax2Desc=Local Taxes reports are the total of localtaxes purchases CalcLocaltax3=Sales CalcLocaltax3Desc=Local Taxes reports are the total of localtaxes sales +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=Label used by default if no translation can be found for code LabelOnDocuments=Label on documents LabelOrTranslationKey=Label or translation key @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Expense report to approve Delays_MAIN_DELAY_HOLIDAYS=Leave requests 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. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. SetupDescription5=Other Setup menu entries manage optional parameters. LogEvents=Security audit events Audit=Audit @@ -1128,7 +1137,7 @@ LogEventDesc=Enable logging for specific security events. Administrators the log AreaForAdminOnly=Setup parameters can be set by administrator users only. SystemInfoDesc=System information is miscellaneous technical information you get in read only mode and visible for administrators only. SystemAreaForAdminOnly=This area is available to administrator users only. Dolibarr user permissions cannot change this restriction. -CompanyFundationDesc=Edit the information of the company/entity. Click on "%s" button at the bottom of the page. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. AccountantFileNumber=Accountant code DisplayDesc=Parameters affecting the look and behaviour of Dolibarr can be modified here. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Rules to generate and validate passwords DisableForgetPasswordLinkOnLogonPage=Do not show the "Password Forgotten" link on the Login page UsersSetup=Users module setup UserMailRequired=Email required to create a new user +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### HRMSetup=HRM module setup ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Invoice documents models BillsPDFModulesAccordindToInvoiceType=Invoice documents models according to invoice type PaymentsPDFModules=Payment documents models ForceInvoiceDate=Force invoice date to validation date -SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined for invoice +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice SuggestPaymentByRIBOnAccount=Suggest payment by withdrawal on account SuggestPaymentByChequeToAddress=Suggest payment by check to FreeLegalTextOnInvoices=Free text on invoices @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Vendor payments setup PropalSetup=Commercial proposals module setup ProposalsNumberingModules=Commercial proposal numbering models ProposalsPDFModules=Commercial proposal documents models -SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined for proposal +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal FreeLegalTextOnProposal=Free text on commercial proposals WatermarkOnDraftProposal=Watermark on draft commercial proposals (none if empty) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal @@ -1322,6 +1334,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 ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=Sales Orders management setup OrdersNumberingModules=Orders numbering models OrdersModelModule=Order documents models @@ -1720,7 +1733,7 @@ MultiCompanySetup=Multi-company module setup ##### Suppliers ##### SuppliersSetup=Vendor module setup SuppliersCommandModel=Complete template of Purchase Order -SuppliersCommandModelMuscadet=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) SuppliersInvoiceModel=Complete template of Vendor Invoice SuppliersInvoiceNumberingModel=Vendor invoices numbering models IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval @@ -1792,6 +1805,7 @@ TopMenuDisableImages=Hide images in Top menu LeftMenuBackgroundColor=Background color for Left menu BackgroundTableTitleColor=Background color for Table title line BackgroundTableTitleTextColor=Text color for Table title line +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Background color for odd table lines BackgroundTableLineEvenColor=Background color for even table lines MinimumNoticePeriod=Minimum notice period (Your leave request must be done before this delay) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Dolibarr Reference not found in Message ID FormatZip=Zip MainMenuCode=Menu entry code (mainmenu) ECMAutoTree=Show automatic ECM tree -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. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Opening hours OpeningHoursDesc=Enter here the regular opening hours of your company. ResourceSetup=Configuration of Resource module @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramatical ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export +ImportSetup=Setup of module Import InstanceUniqueID=Unique ID of the instance SmallerThan=Smaller than LargerThan=Larger than @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled EmailTemplate=Template for email EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/uz_UZ/assets.lang b/htdocs/langs/uz_UZ/assets.lang new file mode 100644 index 00000000000..ef04723c6c2 --- /dev/null +++ b/htdocs/langs/uz_UZ/assets.lang @@ -0,0 +1,65 @@ +# Copyright (C) 2018 Alexandre Spangaro +# +# 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 . + +# +# Generic +# +Assets = Assets +NewAsset = New asset +AccountancyCodeAsset = Accounting code (asset) +AccountancyCodeDepreciationAsset = Accounting code (depreciation asset account) +AccountancyCodeDepreciationExpense = Accounting code (depreciation expense account) +NewAssetType=New asset type +AssetsTypeSetup=Asset type setup +AssetTypeModified=Asset type modified +AssetType=Asset type +AssetsLines=Assets +DeleteType=Delete +DeleteAnAssetType=Delete an asset type +ConfirmDeleteAssetType=Are you sure you want to delete this asset type? +ShowTypeCard=Show type '%s' + +# Module label 'ModuleAssetsName' +ModuleAssetsName = Assets +# Module description 'ModuleAssetsDesc' +ModuleAssetsDesc = Assets description + +# +# Admin page +# +AssetsSetup = Assets setup +Settings = Settings +AssetsSetupPage = Assets setup page +ExtraFieldsAssetsType = Complementary attributes (Asset type) +AssetsType=Asset type +AssetsTypeId=Asset type id +AssetsTypeLabel=Asset type label +AssetsTypes=Assets types + +# +# Menu +# +MenuAssets = Assets +MenuNewAsset = New asset +MenuTypeAssets = Type assets +MenuListAssets = List +MenuNewTypeAssets = New +MenuListTypeAssets = List + +# +# Module +# +NewAssetType=New asset type +NewAsset=New asset diff --git a/htdocs/langs/uz_UZ/bills.lang b/htdocs/langs/uz_UZ/bills.lang index 6d7c61784f7..9f11d8ecf87 100644 --- a/htdocs/langs/uz_UZ/bills.lang +++ b/htdocs/langs/uz_UZ/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Vendors invoices SupplierBill=Vendor invoice SupplierBills=suppliers invoices Payment=Payment -PaymentBack=Payment back -CustomerInvoicePaymentBack=Payment back +PaymentBack=Refund +CustomerInvoicePaymentBack=Refund Payments=Payments PaymentsBack=Refunds paymentInInvoiceCurrency=in invoices currency PaidBack=Paid back DeletePayment=Delete payment ConfirmDeletePayment=Are you sure you want to delete this payment? -ConfirmConvertToReduc=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. -ConfirmConvertToReducSupplier=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. SupplierPayments=Vendor payments ReceivedPayments=Received payments @@ -209,17 +209,13 @@ NumberOfBillsByMonth=No. of invoices per month AmountOfBills=Amount of invoices AmountOfBillsHT=Amount of invoices (net of tax) AmountOfBillsByMonthHT=Amount of invoices by month (net of tax) -ShowSocialContribution=Show social/fiscal tax -ShowBill=Show invoice -ShowInvoice=Show invoice -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 +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=To pay on %s toPayOn=to pay on %s RetainedWarranty=Retained Warranty @@ -230,7 +226,6 @@ 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 AlreadyPaidNoCreditNotesNoDeposits=Already paid (without credit notes and down payments) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Generated from template invoice %s WarningInvoiceDateInFuture=Warning, the invoice date is higher than current date WarningInvoiceDateTooFarInFuture=Warning, the invoice date is too far from current date ViewAvailableGlobalDiscounts=View available discounts +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Status PaymentConditionShortRECEP=Due Upon Receipt @@ -509,7 +505,7 @@ ToMakePayment=Pay ToMakePaymentBack=Pay back ListOfYourUnpaidInvoices=List of unpaid invoices NoteListOfYourUnpaidInvoices=Note: This list contains only invoices for third parties you are linked to as a sale representative. -RevenueStamp=Revenue stamp +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party YouMustCreateStandardInvoiceFirstDesc=You have to create a standard invoice first and convert it to "template" to create a new template invoice @@ -575,3 +571,4 @@ AutoFillDateTo=Set end date for service line with next invoice date AutoFillDateToShort=Set end date MaxNumberOfGenerationReached=Max number of gen. reached BILL_DELETEInDolibarr=Invoice deleted +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/uz_UZ/blockedlog.lang b/htdocs/langs/uz_UZ/blockedlog.lang new file mode 100644 index 00000000000..5afae6e9e53 --- /dev/null +++ b/htdocs/langs/uz_UZ/blockedlog.lang @@ -0,0 +1,54 @@ +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). +CompanyInitialKey=Company initial key (hash of genesis block) +BrowseBlockedLog=Unalterable logs +ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) +ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) +DownloadBlockChain=Download fingerprints +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). +OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. +OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. +AddedByAuthority=Stored into remote authority +NotAddedByAuthorityYet=Not yet stored into remote authority +ShowDetails=Show stored details +logPAYMENT_VARIOUS_CREATE=Payment (not assigned to an invoice) created +logPAYMENT_VARIOUS_MODIFY=Payment (not assigned to an invoice) modified +logPAYMENT_VARIOUS_DELETE=Payment (not assigned to an invoice) logical deletion +logPAYMENT_ADD_TO_BANK=Payment added to bank +logPAYMENT_CUSTOMER_CREATE=Customer payment created +logPAYMENT_CUSTOMER_DELETE=Customer payment logical deletion +logDONATION_PAYMENT_CREATE=Donation payment created +logDONATION_PAYMENT_DELETE=Donation payment logical deletion +logBILL_PAYED=Customer invoice paid +logBILL_UNPAYED=Customer invoice set unpaid +logBILL_VALIDATE=Customer invoice validated +logBILL_SENTBYMAIL=Customer invoice send by mail +logBILL_DELETE=Customer invoice logically deleted +logMODULE_RESET=Module BlockedLog was disabled +logMODULE_SET=Module BlockedLog was enabled +logDON_VALIDATE=Donation validated +logDON_MODIFY=Donation modified +logDON_DELETE=Donation logical deletion +logMEMBER_SUBSCRIPTION_CREATE=Member subscription created +logMEMBER_SUBSCRIPTION_MODIFY=Member subscription modified +logMEMBER_SUBSCRIPTION_DELETE=Member subscription logical deletion +logCASHCONTROL_VALIDATE=Cash fence recording +BlockedLogBillDownload=Customer invoice download +BlockedLogBillPreview=Customer invoice preview +BlockedlogInfoDialog=Log Details +ListOfTrackedEvents=List of tracked events +Fingerprint=Fingerprint +DownloadLogCSV=Export archived logs (CSV) +logDOC_PREVIEW=Preview of a validated document in order to print or download +logDOC_DOWNLOAD=Download of a validated document in order to print or send +DataOfArchivedEvent=Full datas of archived event +ImpossibleToReloadObject=Original object (type %s, id %s) not linked (see 'Full datas' column to get unalterable saved data) +BlockedLogAreRequiredByYourCountryLegislation=Unalterable Logs module may be required by the legislation of your country. Disabling this module may render any future transactions invalid with respect to the law and the use of legal software as they can not be validated by a tax audit. +BlockedLogActivatedBecauseRequiredByYourCountryLegislation=Unalterable Logs module was activated because of the legislation of your country. Disabling this module may render any future transactions invalid with respect to the law and the use of legal software as they cannot be validated by a tax audit. +BlockedLogDisableNotAllowedForCountry=List of countries where usage of this module is mandatory (just to prevent to disable the module by error, if your country is in this list, disable of module is not possible without editing this list first. Note also that enabling/disabling this module will keep a track into the unalterable log). +OnlyNonValid=Non-valid +TooManyRecordToScanRestrictFilters=Too many records to scan/analyze. Please restrict list with more restrictive filters. +RestrictYearToExport=Restrict month / year to export diff --git a/htdocs/langs/uz_UZ/cashdesk.lang b/htdocs/langs/uz_UZ/cashdesk.lang index 7ddbc71f3e9..f9f00015840 100644 --- a/htdocs/langs/uz_UZ/cashdesk.lang +++ b/htdocs/langs/uz_UZ/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Add this article RestartSelling=Go back on sell SellFinished=Sale complete PrintTicket=Print ticket +SendTicket=Send ticket NoProductFound=No article found ProductFound=product found NoArticle=No article @@ -48,6 +49,7 @@ Footer=Footer AmountAtEndOfPeriod=Amount at end of period (day, month or year) TheoricalAmount=Theorical amount RealAmount=Real amount +CashFence=Cash fence CashFenceDone=Cash fence done for the period NbOfInvoices=Nb of invoices Paymentnumpad=Type of Pad to enter payment @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS needs product categories to work OrderNotes=Order Notes CashDeskBankAccountFor=Default account to use for payments in NoPaimementModesDefined=No paiment mode defined in TakePOS configuration -TicketVatGrouped=Group VAT by rate in tickets -AutoPrintTickets=Automatically print tickets +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? @@ -87,7 +90,19 @@ HeadBar=Head Bar SortProductField=Field for sorting products Browser=Browser BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/uz_UZ/companies.lang b/htdocs/langs/uz_UZ/companies.lang index c569a48c84a..f8b3d0354e2 100644 --- a/htdocs/langs/uz_UZ/companies.lang +++ b/htdocs/langs/uz_UZ/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted=Company "%s" deleted from database. ListOfContacts=List of contacts/addresses ListOfContactsAddresses=List of contacts/addresses ListOfThirdParties=List of Third Parties -ShowCompany=Show Third Party ShowContact=Show contact ContactsAllShort=All (No filter) ContactType=Contact type @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=First name of sales representative SaleRepresentativeLastname=Last name of sales representative ErrorThirdpartiesMerge=There was an error when deleting the third parties. Please check the log. Changes have been reverted. NewCustomerSupplierCodeProposed=Customer or Vendor code already used, a new code is suggested +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Payment Type - Customer PaymentTermsCustomer=Payment Terms - Customer diff --git a/htdocs/langs/uz_UZ/compta.lang b/htdocs/langs/uz_UZ/compta.lang index 1de030a1905..6cd046c5607 100644 --- a/htdocs/langs/uz_UZ/compta.lang +++ b/htdocs/langs/uz_UZ/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=See %sanalysis of payments%s for a calculation on act SeeReportInDueDebtMode=See %sanalysis of invoices%s for a calculation based on known recorded invoices even if they are not yet accounted in Ledger. SeeReportInBookkeepingMode=See %sBookeeping report%s for a calculation on Bookkeeping Ledger table RulesAmountWithTaxIncluded=- Amounts shown are with all taxes included -RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the validation date of invoices and VAT and on the due date for expenses. For salaries defined with Salary module, the value date of payment is used. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- It includes the real payments made on invoices, expenses, VAT and salaries.
    - It is based on the payment dates of the invoices, expenses, VAT and salaries. The donation date for donation. -RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the validation date of these invoices.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    RulesCATotalSaleJournal=It includes all credit lines from the Sale journal. RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Turnover invoiced by sale tax rate TurnoverCollectedbyVatrate=Turnover collected by sale tax rate PurchasebyVatrate=Purchase by sale tax rate LabelToShow=Short label +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/uz_UZ/donations.lang b/htdocs/langs/uz_UZ/donations.lang index 5edc8d62033..de4bdf68f03 100644 --- a/htdocs/langs/uz_UZ/donations.lang +++ b/htdocs/langs/uz_UZ/donations.lang @@ -7,7 +7,6 @@ AddDonation=Create a donation NewDonation=New donation DeleteADonation=Delete a donation ConfirmDeleteADonation=Are you sure you want to delete this donation? -ShowDonation=Show donation PublicDonation=Public donation DonationsArea=Donations area DonationStatusPromiseNotValidated=Draft promise @@ -17,6 +16,7 @@ DonationStatusPromiseNotValidatedShort=Draft DonationStatusPromiseValidatedShort=Validated DonationStatusPaidShort=Received DonationTitle=Donation receipt +DonationDate=Donation date DonationDatePayment=Payment date ValidPromess=Validate promise DonationReceipt=Donation receipt diff --git a/htdocs/langs/uz_UZ/errors.lang b/htdocs/langs/uz_UZ/errors.lang index 3ffc686e62f..7c67aeca8b5 100644 --- a/htdocs/langs/uz_UZ/errors.lang +++ b/htdocs/langs/uz_UZ/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=File not received completely by server. ErrorNoTmpDir=Temporary directy %s does not exists. ErrorUploadBlockedByAddon=Upload blocked by a PHP/Apache plugin. ErrorFileSizeTooLarge=File size is too large. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Size too long for int type (%s digits maximum) ErrorSizeTooLongForVarcharType=Size too long for string type (%s chars maximum) ErrorNoValueForSelectType=Please fill value for select list @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # 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/uz_UZ/hrm.lang b/htdocs/langs/uz_UZ/hrm.lang new file mode 100644 index 00000000000..3697c47e30d --- /dev/null +++ b/htdocs/langs/uz_UZ/hrm.lang @@ -0,0 +1,18 @@ +# Dolibarr language file - en_US - hrm +# Admin +HRM_EMAIL_EXTERNAL_SERVICE=Email to prevent HRM external service +Establishments=Establishments +Establishment=Establishment +NewEstablishment=New establishment +DeleteEstablishment=Delete establishment +ConfirmDeleteEstablishment=Are you sure you wish to delete this establishment? +OpenEtablishment=Open establishment +CloseEtablishment=Close establishment +# Dictionary +DictionaryPublicHolidays=HRM - Public holidays +DictionaryDepartment=HRM - Department list +DictionaryFunction=HRM - Function list +# Module +Employees=Employees +Employee=Employee +NewEmployee=New employee diff --git a/htdocs/langs/uz_UZ/install.lang b/htdocs/langs/uz_UZ/install.lang index bf9c08c4ba7..f67dff57184 100644 --- a/htdocs/langs/uz_UZ/install.lang +++ b/htdocs/langs/uz_UZ/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=This PHP supports Curl. PHPSupportCalendar=This PHP supports calendars extensions. PHPSupportUTF8=This PHP supports UTF8 functions. PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=This PHP supports %s functions. PHPMemoryOK=Your PHP max session memory is set to %s. This should be enough. 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. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=Your PHP installation does not support Curl. ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. 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. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. ErrorDirDoesNotExists=Directory %s does not exist. ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=The application tried to self-upgrade, but the in 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. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/uz_UZ/interventions.lang b/htdocs/langs/uz_UZ/interventions.lang index e7667ef6946..e5936f8246e 100644 --- a/htdocs/langs/uz_UZ/interventions.lang +++ b/htdocs/langs/uz_UZ/interventions.lang @@ -41,9 +41,7 @@ InterventionsArea=Interventions area DraftFichinter=Draft interventions LastModifiedInterventions=Latest %s modified interventions FichinterToProcess=Interventions to process -##### Types de contacts ##### TypeContact_fichinter_external_CUSTOMER=Following-up customer contact -# Modele numérotation PrintProductsOnFichinter=Print also lines of type "product" (not only services) on intervention card PrintProductsOnFichinterDetails=interventions generated from orders UseServicesDurationOnFichinter=Use services duration for interventions generated from orders @@ -53,14 +51,16 @@ InterventionStatistics=Statistics of interventions NbOfinterventions=No. of intervention cards NumberOfInterventionsByMonth=No. of intervention cards by month (date of validation) AmountOfInteventionNotIncludedByDefault=Amount of intervention is not included by default into profit (in most cases, timesheets are used to count time spent). Add option PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT to 1 into home-setup-other to include them. -##### Exports ##### InterId=Intervention id InterRef=Intervention ref. InterDateCreation=Date creation intervention InterDuration=Duration intervention InterStatus=Status intervention InterNote=Note intervention +InterLine=Line of intervention InterLineId=Line id intervention InterLineDate=Line date intervention InterLineDuration=Line duration intervention InterLineDesc=Line description intervention +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/uz_UZ/link.lang b/htdocs/langs/uz_UZ/link.lang index fdcf07aeff4..1ffcd41a18b 100644 --- a/htdocs/langs/uz_UZ/link.lang +++ b/htdocs/langs/uz_UZ/link.lang @@ -8,3 +8,4 @@ LinkRemoved=The link %s has been removed ErrorFailedToDeleteLink= Failed to remove link '%s' ErrorFailedToUpdateLink= Failed to update link '%s' URLToLink=URL to link +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/uz_UZ/mails.lang b/htdocs/langs/uz_UZ/mails.lang index 8b92cef3103..7b3bfd3852a 100644 --- a/htdocs/langs/uz_UZ/mails.lang +++ b/htdocs/langs/uz_UZ/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=No contact/address with a category found NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found OutGoingEmailSetup=Outgoing email setup InGoingEmailSetup=Incoming email setup -OutGoingEmailSetupForEmailing=Outgoing email setup (for mass emailing) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Default outgoing email setup Information=Information ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/uz_UZ/main.lang b/htdocs/langs/uz_UZ/main.lang index 0b31a6d85e2..e571f74d43e 100644 --- a/htdocs/langs/uz_UZ/main.lang +++ b/htdocs/langs/uz_UZ/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Save and stay SaveAndNew=Save and new TestConnection=Test connection ToClone=Clone +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Choose data you want to clone: NoCloneOptionsSpecified=No data to clone defined. Of=of @@ -829,6 +830,8 @@ Gender=Gender Genderman=Man Genderwoman=Woman ViewList=List view +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Mandatory Hello=Hello GoodBye=GoodBye @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Select your graph options to build a graph Measures=Measures XAxis=X-Axis YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/uz_UZ/modulebuilder.lang b/htdocs/langs/uz_UZ/modulebuilder.lang new file mode 100644 index 00000000000..135ac1ae9ec --- /dev/null +++ b/htdocs/langs/uz_UZ/modulebuilder.lang @@ -0,0 +1,141 @@ +# Dolibarr language file - Source file is en_US - loan +ModuleBuilderDesc=This tool must be used only by experienced users or developers. It provides utilities to build or edit your own module. Documentation for alternative manual development is here. +EnterNameOfModuleDesc=Enter name of the module/application to create with no spaces. Use uppercase to separate words (For example: MyModule, EcommerceForShop, SyncWithMySystem...) +EnterNameOfObjectDesc=Enter name of the object to create with no spaces. Use uppercase to separate words (For example: MyObject, Student, Teacher...). The CRUD class file, but also API file, pages to list/add/edit/delete object and SQL files will be generated. +ModuleBuilderDesc2=Path where modules are generated/edited (first directory for external modules defined into %s): %s +ModuleBuilderDesc3=Generated/editable modules found: %s +ModuleBuilderDesc4=A module is detected as 'editable' when the file %s exists in root of module directory +NewModule=New module +NewObjectInModulebuilder=New object +ModuleKey=Module key +ObjectKey=Object key +ModuleInitialized=Module initialized +FilesForObjectInitialized=Files for new object '%s' initialized +FilesForObjectUpdated=Files for object '%s' updated (.sql files and .class.php file) +ModuleBuilderDescdescription=Enter here all general information that describe your module. +ModuleBuilderDescspecifications=You can enter here a detailed description of the specifications of your module that is not already structured into other tabs. So you have within easy reach all the rules to develop. Also this text content will be included into the generated documentation (see last tab). You can use Markdown format, but it is recommended to use Asciidoc format (comparison between .md and .asciidoc: http://asciidoctor.org/docs/user-manual/#compared-to-markdown). +ModuleBuilderDescobjects=Define here the objects you want to manage with your module. A CRUD DAO class, SQL files, page to list record of objects, to create/edit/view a record and an API will be generated. +ModuleBuilderDescmenus=This tab is dedicated to define menu entries provided by your module. +ModuleBuilderDescpermissions=This tab is dedicated to define the new permissions you want to provide with your module. +ModuleBuilderDesctriggers=This is the view of triggers provided by your module. To include code executed when a triggered business event is launched, just edit this file. +ModuleBuilderDeschooks=This tab is dedicated to hooks. +ModuleBuilderDescwidgets=This tab is dedicated to manage/build widgets. +ModuleBuilderDescbuildpackage=You can generate here a "ready to distribute" package file (a normalized .zip file) of your module and a "ready to distribute" documentation file. Just click on button to build the package or documentation file. +EnterNameOfModuleToDeleteDesc=You can delete your module. WARNING: All coding files of module (generated or created manually) AND structured data and documentation will be deleted! +EnterNameOfObjectToDeleteDesc=You can delete an object. WARNING: All coding files (generated or created manually) related to object will be deleted! +DangerZone=Danger zone +BuildPackage=Build package +BuildPackageDesc=You can generate a zip package of your application so your are ready to distribute it on any Dolibarr. You can also distribute it or sell it on marketplace like DoliStore.com. +BuildDocumentation=Build documentation +ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: +ModuleIsLive=This module has been activated. Any change may break a current live feature. +DescriptionLong=Long description +EditorName=Name of editor +EditorUrl=URL of editor +DescriptorFile=Descriptor file of module +ClassFile=File for PHP DAO CRUD class +ApiClassFile=File for PHP API class +PageForList=PHP page for list of record +PageForCreateEditView=PHP page to create/edit/view a record +PageForAgendaTab=PHP page for event tab +PageForDocumentTab=PHP page for document tab +PageForNoteTab=PHP page for note tab +PathToModulePackage=Path to zip of module/application package +PathToModuleDocumentation=Path to file of module/application documentation (%s) +SpaceOrSpecialCharAreNotAllowed=Spaces or special characters are not allowed. +FileNotYetGenerated=File not yet generated +RegenerateClassAndSql=Force update of .class and .sql files +RegenerateMissingFiles=Generate missing files +SpecificationFile=File of documentation +LanguageFile=File for language +ObjectProperties=Object Properties +ConfirmDeleteProperty=Are you sure you want to delete the property %s? This will change code in PHP class but also remove column from table definition of object. +NotNull=Not NULL +NotNullDesc=1=Set database to NOT NULL. -1=Allow null values and force value to NULL if empty ('' or 0). +SearchAll=Used for 'search all' +DatabaseIndex=Database index +FileAlreadyExists=File %s already exists +TriggersFile=File for triggers code +HooksFile=File for hooks code +ArrayOfKeyValues=Array of key-val +ArrayOfKeyValuesDesc=Array of keys and values if field is a combo list with fixed values +WidgetFile=Widget file +CSSFile=CSS file +JSFile=Javascript file +ReadmeFile=Readme file +ChangeLog=ChangeLog file +TestClassFile=File for PHP Unit Test class +SqlFile=Sql file +PageForLib=File for the common PHP library +PageForObjLib=File for the PHP library dedicated to object +SqlFileExtraFields=Sql file for complementary attributes +SqlFileKey=Sql file for keys +SqlFileKeyExtraFields=Sql file for keys of complementary attributes +AnObjectAlreadyExistWithThisNameAndDiffCase=An object already exists with this name and a different case +UseAsciiDocFormat=You can use Markdown format, but it is recommended to use Asciidoc format (omparison between .md and .asciidoc: http://asciidoctor.org/docs/user-manual/#compared-to-markdown) +IsAMeasure=Is a measure +DirScanned=Directory scanned +NoTrigger=No trigger +NoWidget=No widget +GoToApiExplorer=Go to API explorer +ListOfMenusEntries=List of menu entries +ListOfDictionariesEntries=List of dictionaries entries +ListOfPermissionsDefined=List of defined permissions +SeeExamples=See examples here +EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty +DisplayOnPdf=Display on PDF +IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) +SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) +SpecDefDesc=Enter here all documentation you want to provide with your module that is not already defined by other tabs. You can use .md or better, the rich .asciidoc syntax. +LanguageDefDesc=Enter in this files, all the key and the translation for each language file. +MenusDefDesc=Define here the menus provided by your module +DictionariesDefDesc=Define here the dictionaries provided by your module +PermissionsDefDesc=Define here the new permissions provided by your module +MenusDefDescTooltip=The menus provided by your module/application are defined into the array $this->menus into the module descriptor file. You can edit manually this file or use the embedded editor.

    Note: Once defined (and module re-activated), menus are also visible into the menu editor available to administrator users on %s. +DictionariesDefDescTooltip=The dictionaries provided by your module/application are defined into the array $this->dictionaries into the module descriptor file. You can edit manually this file or use the embedded editor.

    Note: Once defined (and module re-activated), dictionaries are also visible into the setup area to administrator users on %s. +PermissionsDefDescTooltip=The permissions provided by your module/application are defined into the array $this->rights into the module descriptor file. You can edit manually this file or use the embedded editor.

    Note: Once defined (and module re-activated), permissions are visible into the default permissions setup %s. +HooksDefDesc=Define in the module_parts['hooks'] property, in the module descriptor, the context of hooks you want to manage (list of contexts can be found by a search on 'initHooks(' in core code).
    Edit the hook file to add code of your hooked functions (hookable functions can be found by a search on 'executeHooks' in core code). +TriggerDefDesc=Define in the trigger file the code you want to execute for each business event executed. +SeeIDsInUse=See IDs in use in your installation +SeeReservedIDsRangeHere=See range of reserved IDs +ToolkitForDevelopers=Toolkit for Dolibarr developers +TryToUseTheModuleBuilder=If you have knowledge of SQL and PHP, you may use the native module builder wizard.
    Enable the module %s and use the wizard by clicking the on the top right menu.
    Warning: This is an advanced developer feature, do not experiment on your production site! +SeeTopRightMenu=See on the top right menu +AddLanguageFile=Add language file +YouCanUseTranslationKey=You can use here a key that is the translation key found into language file (see tab "Languages") +DropTableIfEmpty=(Delete table if empty) +TableDoesNotExists=The table %s does not exists +TableDropped=Table %s deleted +InitStructureFromExistingTable=Build the structure array string of an existing table +UseAboutPage=Disable the about page +UseDocFolder=Disable the documentation folder +UseSpecificReadme=Use a specific ReadMe +ContentOfREADMECustomized=Note: The content of the README.md file has been replaced with the specific value defined into setup of ModuleBuilder. +RealPathOfModule=Real path of module +ContentCantBeEmpty=Content of file can't be empty +WidgetDesc=You can generate and edit here the widgets that will be embedded with your module. +CSSDesc=You can generate and edit here a file with personalized CSS embedded with your module. +JSDesc=You can generate and edit here a file with personalized Javascript embedded with your module. +CLIDesc=You can generate here some command line scripts you want to provide with your module. +CLIFile=CLI File +NoCLIFile=No CLI files +UseSpecificEditorName = Use a specific editor name +UseSpecificEditorURL = Use a specific editor URL +UseSpecificFamily = Use a specific family +UseSpecificAuthor = Use a specific author +UseSpecificVersion = Use a specific initial version +ModuleMustBeEnabled=The module/application must be enabled first +IncludeRefGeneration=The reference of object must be generated automatically +IncludeRefGenerationHelp=Check this if you want to include code to manage the generation automatically of the reference +IncludeDocGeneration=I want to generate some documents from the object +IncludeDocGenerationHelp=If you check this, some code will be generated to add a "Generate document" box on the record. +ShowOnCombobox=Show value into combobox +KeyForTooltip=Key for tooltip +CSSClass=CSS Class +NotEditable=Not editable +ForeignKey=Foreign key +TypeOfFieldsHelp=Type of fields:
    varchar(99), double(24,8), real, text, html, datetime, timestamp, integer, integer:ClassName:relativepath/to/classfile.class.php[:1[:filter]] ('1' means we add a + button after the combo to create the record, 'filter' can be 'status=1 AND fk_user = __USER_ID AND entity IN (__SHARED_ENTITIES__)' for example) +AsciiToHtmlConverter=Ascii to HTML converter +AsciiToPdfConverter=Ascii to PDF converter diff --git a/htdocs/langs/uz_UZ/mrp.lang b/htdocs/langs/uz_UZ/mrp.lang new file mode 100644 index 00000000000..d3c4d3253c6 --- /dev/null +++ b/htdocs/langs/uz_UZ/mrp.lang @@ -0,0 +1,76 @@ +Mrp=Manufacturing Orders +MO=Manufacturing Order +MRPDescription=Module to manage production and Manufacturing Orders (MO). +MRPArea=MRP Area +MrpSetupPage=Setup of module MRP +MenuBOM=Bills of material +LatestBOMModified=Latest %s Bills of materials modified +LatestMOModified=Latest %s Manufacturing Orders modified +Bom=Bills of Material +BillOfMaterials=Bill of Material +BOMsSetup=Setup of module BOM +ListOfBOMs=List of bills of material - BOM +ListOfManufacturingOrders=List of Manufacturing Orders +NewBOM=New bill of material +ProductBOMHelp=Product to create with this BOM.
    Note: Products with the property 'Nature of product' = 'Raw material' are not visible into this list. +BOMsNumberingModules=BOM numbering templates +BOMsModelModule=BOM document templates +MOsNumberingModules=MO numbering templates +MOsModelModule=MO document templates +FreeLegalTextOnBOMs=Free text on document of BOM +WatermarkOnDraftBOMs=Watermark on draft BOM +FreeLegalTextOnMOs=Free text on document of MO +WatermarkOnDraftMOs=Watermark on draft MO +ConfirmCloneBillOfMaterials=Are you sure you want to clone the bill of material %s ? +ConfirmCloneMo=Are you sure you want to clone the Manufacturing Order %s ? +ManufacturingEfficiency=Manufacturing efficiency +ConsumptionEfficiency=Consumption efficiency +ValueOfMeansLoss=Value of 0.95 means an average of 5%% of loss during the production +ValueOfMeansLossForProductProduced=Value of 0.95 means an average of 5%% of loss of produced product +DeleteBillOfMaterials=Delete Bill Of Materials +DeleteMo=Delete Manufacturing Order +ConfirmDeleteBillOfMaterials=Are you sure you want to delete this Bill Of Material? +ConfirmDeleteMo=Are you sure you want to delete this Bill Of Material? +MenuMRP=Manufacturing Orders +NewMO=New Manufacturing Order +QtyToProduce=Qty to produce +DateStartPlannedMo=Date start planned +DateEndPlannedMo=Date end planned +KeepEmptyForAsap=Empty means 'As Soon As Possible' +EstimatedDuration=Estimated duration +EstimatedDurationDesc=Estimated duration to manufacture this product using this BOM +ConfirmValidateBom=Are you sure you want to validate the BOM with the reference %s (you will be able to use it to build new Manufacturing Orders) +ConfirmCloseBom=Are you sure you want to cancel this BOM (you won't be able to use it to build new Manufacturing Orders anymore) ? +ConfirmReopenBom=Are you sure you want to re-open this BOM (you will be able to use it to build new Manufacturing Orders) +StatusMOProduced=Produced +QtyFrozen=Frozen Qty +QuantityFrozen=Frozen Quantity +QuantityConsumedInvariable=When this flag is set, the quantity consumed is always the value defined and is not relative to the quantity produced. +DisableStockChange=Stock change disabled +DisableStockChangeHelp=When this flag is set, there is no stock change on this product, whatever is the quantity consumed +BomAndBomLines=Bills Of Material and lines +BOMLine=Line of BOM +WarehouseForProduction=Warehouse for production +CreateMO=Create MO +ToConsume=To consume +ToProduce=To produce +QtyAlreadyConsumed=Qty already consumed +QtyAlreadyProduced=Qty already produced +QtyRequiredIfNoLoss=Qty required if there is no loss (Manufacturing efficiency is 100%%) +ConsumeOrProduce=Consume or Produce +ConsumeAndProduceAll=Consume and Produce All +Manufactured=Manufactured +TheProductXIsAlreadyTheProductToProduce=The product to add is already the product to produce. +ForAQuantityOf=For a quantity to produce of %s +ConfirmValidateMo=Are you sure you want to validate this Manufacturing Order? +ConfirmProductionDesc=By clicking on '%s', you will validate the consumption and/or production for the quantities set. This will also update the stock and record stock movements. +ProductionForRef=Production of %s +AutoCloseMO=Close automatically the Manufacturing Order if quantities to consume and to produce are reached +NoStockChangeOnServices=No stock change on services +ProductQtyToConsumeByMO=Product quantity still to consume by open MO +ProductQtyToProduceByMO=Product quentity still to produce by open MO +AddNewConsumeLines=Add new line to consume +ProductsToConsume=Products to consume +ProductsToProduce=Products to produce +UnitCost=Unit cost +TotalCost=Total cost diff --git a/htdocs/langs/uz_UZ/multicurrency.lang b/htdocs/langs/uz_UZ/multicurrency.lang new file mode 100644 index 00000000000..bfcbd11fb7c --- /dev/null +++ b/htdocs/langs/uz_UZ/multicurrency.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Multi currency +ErrorAddRateFail=Error in added rate +ErrorAddCurrencyFail=Error in added currency +ErrorDeleteCurrencyFail=Error delete fail +multicurrency_syncronize_error=Synchronization error: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Use the date of the document to find the currency rate, instead of using the latest known rate +multicurrency_useOriginTx=When an object is created from another, keep the original rate from the source object (otherwise use the latest known rate) +CurrencyLayerAccount=CurrencyLayer API +CurrencyLayerAccount_help_to_synchronize=You must create an account on website %s to use this functionality.
    Get your API key.
    If you use a free account, you can't change the source currency (USD by default).
    If your main currency is not USD, the application will automatically recalculate it.

    You are limited to 1000 synchronizations per month. +multicurrency_appId=API key +multicurrency_appCurrencySource=Source currency +multicurrency_alternateCurrencySource=Alternate source currency +CurrenciesUsed=Currencies used +CurrenciesUsed_help_to_add=Add the different currencies and rates you need to use on your proposals, orders etc. +rate=rate +MulticurrencyReceived=Received, original currency +MulticurrencyRemainderToTake=Remaining amount, original currency +MulticurrencyPaymentAmount=Payment amount, original currency +AmountToOthercurrency=Amount To (in currency of receiving account) +CurrencyRateSyncSucceed=Currency rate synchronization done successfuly +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Use the currency of the document for online payments diff --git a/htdocs/langs/uz_UZ/oauth.lang b/htdocs/langs/uz_UZ/oauth.lang new file mode 100644 index 00000000000..075ff49a895 --- /dev/null +++ b/htdocs/langs/uz_UZ/oauth.lang @@ -0,0 +1,32 @@ +# 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 credentials with your OAuth provider: +ListOfSupportedOauthProviders=Enter the credentials provided by your OAuth2 provider. Only supported OAuth2 providers are listedd here. These services 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 to 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 to this page then "Register a new application" to create OAuth credentials +OAUTH_STRIPE_TEST_NAME=OAuth Stripe Test +OAUTH_STRIPE_LIVE_NAME=OAuth Stripe Live diff --git a/htdocs/langs/uz_UZ/other.lang b/htdocs/langs/uz_UZ/other.lang index 00259d976bc..ba85f51e739 100644 --- a/htdocs/langs/uz_UZ/other.lang +++ b/htdocs/langs/uz_UZ/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Sales order validated Notify_ORDER_SENTBYMAIL=Sales order sent by mail Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=URL of page WEBSITE_TITLE=Title WEBSITE_DESCRIPTION=Description WEBSITE_IMAGE=Image -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Keywords LinesToImport=Lines to import diff --git a/htdocs/langs/uz_UZ/products.lang b/htdocs/langs/uz_UZ/products.lang index d8a3192551f..a31243a07b6 100644 --- a/htdocs/langs/uz_UZ/products.lang +++ b/htdocs/langs/uz_UZ/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL MassBarcodeInit=Mass barcode init MassBarcodeInitDesc=This page can be used to initialize a barcode on objects that does not have barcode defined. Check before that setup of module barcode is complete. ProductAccountancyBuyCode=Accounting code (purchase) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Accounting code (sale) ProductAccountancySellIntraCode=Accounting code (sale intra-Community) ProductAccountancySellExportCode=Accounting code (sale export) @@ -165,7 +167,7 @@ SuppliersPrices=Vendor prices SuppliersPricesOfProductsOrServices=Vendor prices (of products or services) CustomCode=Customs / Commodity / HS code CountryOrigin=Origin country -Nature=Nature of produt (material/finished) +Nature=Nature of product (material/finished) ShortLabel=Short label Unit=Unit p=u. diff --git a/htdocs/langs/uz_UZ/projects.lang b/htdocs/langs/uz_UZ/projects.lang index 94e440f9ab9..bb42bff3c87 100644 --- a/htdocs/langs/uz_UZ/projects.lang +++ b/htdocs/langs/uz_UZ/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=which I'm linked to project Time=Time ListOfTasks=List of tasks GoToListOfTimeConsumed=Go to list of time consumed -GoToListOfTasks=Show as list -GoToGanttView=show as Gantt GanttView=Gantt View ListProposalsAssociatedProject=List of the commercial proposals related to the project ListOrdersAssociatedProject=List of sales orders related to the project @@ -188,7 +186,7 @@ PlannedWorkload=Planned workload PlannedWorkloadShort=Workload ProjectReferers=Related items ProjectMustBeValidatedFirst=Project must be validated first -FirstAddRessourceToAllocateTime=Assign a user resource to task to allocate time +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=Input per day InputPerWeek=Input per week InputPerMonth=Input per month @@ -240,6 +238,7 @@ LatestModifiedProjects=Latest %s modified projects OtherFilteredTasks=Other filtered tasks NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=Allow user comments on tasks AllowCommentOnProject=Allow user comments on projects @@ -256,7 +255,7 @@ ServiceToUseOnLines=Service to use on lines InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. ProjectFollowOpportunity=Follow opportunity -ProjectFollowTasks=Follow tasks +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Usage: Opportunity UsageTasks=Usage: Tasks @@ -265,3 +264,4 @@ InvoiceToUse=Draft invoice to use NewInvoice=New invoice OneLinePerTask=One line per task OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/uz_UZ/receiptprinter.lang b/htdocs/langs/uz_UZ/receiptprinter.lang new file mode 100644 index 00000000000..896eaa313dd --- /dev/null +++ b/htdocs/langs/uz_UZ/receiptprinter.lang @@ -0,0 +1,95 @@ +# Dolibarr language file - Source file is en_US - receiptprinter +ReceiptPrinterSetup=Setup of module ReceiptPrinter +PrinterAdded=Printer %s added +PrinterUpdated=Printer %s updated +PrinterDeleted=Printer %s deleted +TestSentToPrinter=Test Sent To Printer %s +ReceiptPrinter=Receipt printers +ReceiptPrinterDesc=Setup of receipt printers +ReceiptPrinterTemplateDesc=Setup of Templates +ReceiptPrinterTypeDesc=Description of Receipt Printer's type +ReceiptPrinterProfileDesc=Description of Receipt Printer's Profile +ListPrinters=List of Printers +SetupReceiptTemplate=Template Setup +CONNECTOR_DUMMY=Dummy Printer +CONNECTOR_NETWORK_PRINT=Network Printer +CONNECTOR_FILE_PRINT=Local Printer +CONNECTOR_WINDOWS_PRINT=Local Windows Printer +CONNECTOR_CUPS_PRINT=Cups Printer +CONNECTOR_DUMMY_HELP=Fake Printer for test, does nothing +CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 +CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 +CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L +PROFILE_DEFAULT=Default Profile +PROFILE_SIMPLE=Simple Profile +PROFILE_EPOSTEP=Epos Tep Profile +PROFILE_P822D=P822D Profile +PROFILE_STAR=Star Profile +PROFILE_DEFAULT_HELP=Default Profile suitable for Epson printers +PROFILE_SIMPLE_HELP=Simple Profile No Graphics +PROFILE_EPOSTEP_HELP=Epos Tep Profile +PROFILE_P822D_HELP=P822D Profile No Graphics +PROFILE_STAR_HELP=Star Profile +DOL_LINE_FEED=Skip line +DOL_ALIGN_LEFT=Left align text +DOL_ALIGN_CENTER=Center text +DOL_ALIGN_RIGHT=Right align text +DOL_USE_FONT_A=Use font A of printer +DOL_USE_FONT_B=Use font B of printer +DOL_USE_FONT_C=Use font C of printer +DOL_PRINT_BARCODE=Print barcode +DOL_PRINT_BARCODE_CUSTOMER_ID=Print barcode customer id +DOL_CUT_PAPER_FULL=Cut ticket completely +DOL_CUT_PAPER_PARTIAL=Cut ticket partially +DOL_OPEN_DRAWER=Open cash drawer +DOL_ACTIVATE_BUZZER=Activate buzzer +DOL_PRINT_QRCODE=Print QR Code +DOL_PRINT_LOGO=Print logo of my company +DOL_PRINT_LOGO_OLD=Print logo of my company (old printers) +DOL_BOLD=Bold +DOL_BOLD_DISABLED=Disable bold +DOL_DOUBLE_HEIGHT=Double height size +DOL_DOUBLE_WIDTH=Double width size +DOL_DEFAULT_HEIGHT_WIDTH=Default height and width size +DOL_UNDERLINE=Enable underline +DOL_UNDERLINE_DISABLED=Disable underline +DOL_BEEP=Beed sound +DOL_PRINT_TEXT=Print text +DOL_VALUE_DATE=Invoice date +DOL_VALUE_DATE_TIME=Invoice date and time +DOL_VALUE_YEAR=Invoice year +DOL_VALUE_MONTH_LETTERS=Invoice month in letters +DOL_VALUE_MONTH=Invoice month +DOL_VALUE_DAY=Invoice day +DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Invoice ref +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=Capital +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/uz_UZ/receptions.lang b/htdocs/langs/uz_UZ/receptions.lang new file mode 100644 index 00000000000..010a7521846 --- /dev/null +++ b/htdocs/langs/uz_UZ/receptions.lang @@ -0,0 +1,45 @@ +# Dolibarr language file - Source file is en_US - receptions +ReceptionsSetup=Product Reception setup +RefReception=Ref. reception +Reception=Reception +Receptions=Receptions +AllReceptions=All Receptions +Reception=Reception +Receptions=Receptions +ShowReception=Show Receptions +ReceptionsArea=Receptions area +ListOfReceptions=List of receptions +ReceptionMethod=Reception method +LastReceptions=Latest %s receptions +StatisticsOfReceptions=Statistics for receptions +NbOfReceptions=Number of receptions +NumberOfReceptionsByMonth=Number of receptions by month +ReceptionCard=Reception card +NewReception=New reception +CreateReception=Create reception +QtyInOtherReceptions=Qty in other receptions +OtherReceptionsForSameOrder=Other receptions for this order +ReceptionsAndReceivingForSameOrder=Receptions and receipts for this order +ReceptionsToValidate=Receptions to validate +StatusReceptionCanceled=Canceled +StatusReceptionDraft=Draft +StatusReceptionValidated=Validated (products to ship or already shipped) +StatusReceptionProcessed=Processed +StatusReceptionDraftShort=Draft +StatusReceptionValidatedShort=Validated +StatusReceptionProcessedShort=Processed +ReceptionSheet=Reception sheet +ConfirmDeleteReception=Are you sure you want to delete this reception? +ConfirmValidateReception=Are you sure you want to validate this reception with reference %s? +ConfirmCancelReception=Are you sure you want to cancel this reception? +StatsOnReceptionsOnlyValidated=Statistics conducted on receptions only validated. Date used is date of validation of reception (planed delivery date is not always known). +SendReceptionByEMail=Send reception by email +SendReceptionRef=Submission of reception %s +ActionsOnReception=Events on reception +ReceptionCreationIsDoneFromOrder=For the moment, creation of a new reception is done from the order card. +ReceptionLine=Reception line +ProductQtyInReceptionAlreadySent=Product quantity from open sales order already sent +ProductQtyInSuppliersReceptionAlreadyRecevied=Product quantity from open supplier order already received +ValidateOrderFirstBeforeReception=You must first validate the order before being able to make receptions. +ReceptionsNumberingModules=Numbering module for receptions +ReceptionsReceiptModel=Document templates for receptions diff --git a/htdocs/langs/uz_UZ/stripe.lang b/htdocs/langs/uz_UZ/stripe.lang new file mode 100644 index 00000000000..844762040af --- /dev/null +++ b/htdocs/langs/uz_UZ/stripe.lang @@ -0,0 +1,72 @@ +# Dolibarr language file - Source file is en_US - stripe +StripeSetup=Stripe module setup +StripeDesc=Offer customers a Stripe online payment page for payments with credit/cebit cards via Stripe. This can be used to allow your customers to make ad-hoc payments or for payments related to a particular Dolibarr object (invoice, order, ...) +StripeOrCBDoPayment=Pay with credit card or Stripe +FollowingUrlAreAvailableToMakePayments=Following URLs are available to offer a page to a customer to make a payment on Dolibarr objects +PaymentForm=Payment form +WelcomeOnPaymentPage=Welcome to our online payment service +ThisScreenAllowsYouToPay=This screen allow you to make an online payment to %s. +ThisIsInformationOnPayment=This is information on payment to do +ToComplete=To complete +YourEMail=Email to receive payment confirmation +STRIPE_PAYONLINE_SENDEMAIL=Email notification after a payment attempt (success or fail) +Creditor=Creditor +PaymentCode=Payment code +StripeDoPayment=Pay with Stripe +YouWillBeRedirectedOnStripe=You will be redirected on secured Stripe page to input you credit card information +Continue=Next +ToOfferALinkForOnlinePayment=URL for %s payment +ToOfferALinkForOnlinePaymentOnOrder=URL to offer a %s online payment page for a sales order +ToOfferALinkForOnlinePaymentOnInvoice=URL to offer a %s online payment page for a customer invoice +ToOfferALinkForOnlinePaymentOnContractLine=URL to offer a %s online payment page for a contract line +ToOfferALinkForOnlinePaymentOnFreeAmount=URL to offer a %s online payment page of any amount with no existing object +ToOfferALinkForOnlinePaymentOnMemberSubscription=URL to offer a %s online payment page for a member subscription +ToOfferALinkForOnlinePaymentOnDonation=URL to offer a %s online payment page for payment of a donation +YouCanAddTagOnUrl=You can also add url parameter &tag=value to any of those URL (mandatory only for payment not linked to an object) to add your own payment comment tag.
    For the URL of payments with no existing object, you may also add the parameter &noidempotency=1 so the same link with same tag can be used several times (some payment mode may limit the payment to 1 for each different link without this parameter) +SetupStripeToHavePaymentCreatedAutomatically=Setup your Stripe with url %s to have payment created automatically when validated by Stripe. +AccountParameter=Account parameters +UsageParameter=Usage parameters +InformationToFindParameters=Help to find your %s account information +STRIPE_CGI_URL_V2=Url of Stripe CGI module for payment +VendorName=Name of vendor +CSSUrlForPaymentForm=CSS style sheet url for payment form +NewStripePaymentReceived=New Stripe payment received +NewStripePaymentFailed=New Stripe payment tried but failed +FailedToChargeCard=Failed to charge card +STRIPE_TEST_SECRET_KEY=Secret test key +STRIPE_TEST_PUBLISHABLE_KEY=Publishable test key +STRIPE_TEST_WEBHOOK_KEY=Webhook test key +STRIPE_LIVE_SECRET_KEY=Secret live key +STRIPE_LIVE_PUBLISHABLE_KEY=Publishable live key +STRIPE_LIVE_WEBHOOK_KEY=Webhook live key +ONLINE_PAYMENT_WAREHOUSE=Stock to use for stock decrease when online payment is done
    (TODO When option to decrease stock is done on an action on invoice and the online payment generate itself the invoice ?) +StripeLiveEnabled=Stripe live enabled (otherwise test/sandbox mode) +StripeImportPayment=Import Stripe payments +ExampleOfTestCreditCard=Example of credit card for test: %s => valid, %s => error CVC, %s => expired, %s => charge fails +StripeGateways=Stripe gateways +OAUTH_STRIPE_TEST_ID=Stripe Connect Client ID (ca_...) +OAUTH_STRIPE_LIVE_ID=Stripe Connect Client ID (ca_...) +BankAccountForBankTransfer=Bank account for fund payouts +StripeAccount=Stripe account +StripeChargeList=List of Stripe charges +StripeTransactionList=List of Stripe transactions +StripeCustomerId=Stripe customer id +StripePaymentModes=Stripe payment modes +LocalID=Local ID +StripeID=Stripe ID +NameOnCard=Name on card +CardNumber=Card Number +ExpiryDate=Expiry Date +CVN=CVN +DeleteACard=Delete Card +ConfirmDeleteCard=Are you sure you want to delete this Credit or Debit card? +CreateCustomerOnStripe=Create customer on Stripe +CreateCardOnStripe=Create card on Stripe +ShowInStripe=Show in Stripe +StripeUserAccountForActions=User account to use for email notification of some Stripe events (Stripe payouts) +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... +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/uz_UZ/supplier_proposal.lang b/htdocs/langs/uz_UZ/supplier_proposal.lang new file mode 100644 index 00000000000..ce5bdf0425a --- /dev/null +++ b/htdocs/langs/uz_UZ/supplier_proposal.lang @@ -0,0 +1,54 @@ +# Dolibarr language file - Source file is en_US - supplier_proposal +SupplierProposal=Vendor commercial proposals +supplier_proposalDESC=Manage price requests to suppliers +SupplierProposalNew=New price request +CommRequest=Price request +CommRequests=Price requests +SearchRequest=Find a request +DraftRequests=Draft requests +SupplierProposalsDraft=Draft vendor proposals +LastModifiedRequests=Latest %s modified price requests +RequestsOpened=Open price requests +SupplierProposalArea=Vendor proposals area +SupplierProposalShort=Vendor proposal +SupplierProposals=Vendor proposals +SupplierProposalsShort=Vendor proposals +NewAskPrice=New price request +ShowSupplierProposal=Show price request +AddSupplierProposal=Create a price request +SupplierProposalRefFourn=Vendor ref +SupplierProposalDate=Delivery date +SupplierProposalRefFournNotice=Before closing to "Accepted", think to grasp suppliers references. +ConfirmValidateAsk=Are you sure you want to validate this price request under name %s? +DeleteAsk=Delete request +ValidateAsk=Validate request +SupplierProposalStatusDraft=Draft (needs to be validated) +SupplierProposalStatusValidated=Validated (request is open) +SupplierProposalStatusClosed=Closed +SupplierProposalStatusSigned=Accepted +SupplierProposalStatusNotSigned=Refused +SupplierProposalStatusDraftShort=Draft +SupplierProposalStatusValidatedShort=Validated +SupplierProposalStatusClosedShort=Closed +SupplierProposalStatusSignedShort=Accepted +SupplierProposalStatusNotSignedShort=Refused +CopyAskFrom=Create a price request by copying an existing request +CreateEmptyAsk=Create blank request +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=Send price request by mail +SendAskRef=Sending the price request %s +SupplierProposalCard=Request card +ConfirmDeleteAsk=Are you sure you want to delete this price request %s? +ActionsOnSupplierProposal=Events on price request +DocModelAuroreDescription=A complete request model (logo...) +CommercialAsk=Price request +DefaultModelSupplierProposalCreate=Default model creation +DefaultModelSupplierProposalToBill=Default template when closing a price request (accepted) +DefaultModelSupplierProposalClosed=Default template when closing a price request (refused) +ListOfSupplierProposals=List of vendor proposal requests +ListSupplierProposalsAssociatedProject=List of vendor proposals associated with project +SupplierProposalsToClose=Vendor proposals to close +SupplierProposalsToProcess=Vendor proposals to process +LastSupplierProposals=Latest %s price requests +AllPriceRequests=All requests diff --git a/htdocs/langs/uz_UZ/ticket.lang b/htdocs/langs/uz_UZ/ticket.lang new file mode 100644 index 00000000000..80518c3401a --- /dev/null +++ b/htdocs/langs/uz_UZ/ticket.lang @@ -0,0 +1,305 @@ +# en_US lang file for module ticket +# Copyright (C) 2013 Jean-François FERRY +# +# 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 . + +# +# Generic +# + +Module56000Name=Tickets +Module56000Desc=Ticket system for issue or request management + +Permission56001=See tickets +Permission56002=Modify tickets +Permission56003=Delete tickets +Permission56004=Manage tickets +Permission56005=See tickets of all third parties (not effective for external users, always be limited to the third party they depend on) + +TicketDictType=Ticket - Types +TicketDictCategory=Ticket - Groupes +TicketDictSeverity=Ticket - Severities +TicketDictResolution=Ticket - Resolution +TicketTypeShortBUGSOFT=Dysfonctionnement logiciel +TicketTypeShortBUGHARD=Dysfonctionnement matériel +TicketTypeShortCOM=Commercial question + +TicketTypeShortHELP=Request for functionnal help +TicketTypeShortISSUE=Issue, bug or problem +TicketTypeShortREQUEST=Change or enhancement request +TicketTypeShortPROJET=Project +TicketTypeShortOTHER=Other + +TicketSeverityShortLOW=Low +TicketSeverityShortNORMAL=Normal +TicketSeverityShortHIGH=High +TicketSeverityShortBLOCKING=Critical/Blocking + +ErrorBadEmailAddress=Field '%s' incorrect +MenuTicketMyAssign=My tickets +MenuTicketMyAssignNonClosed=My open tickets +MenuListNonClosed=Open tickets + +TypeContact_ticket_internal_CONTRIBUTOR=Contributor +TypeContact_ticket_internal_SUPPORTTEC=Assigned user +TypeContact_ticket_external_SUPPORTCLI=Customer contact / incident tracking +TypeContact_ticket_external_CONTRIBUTOR=External contributor + +OriginEmail=Email source +Notify_TICKET_SENTBYMAIL=Send ticket message by email + +# Status +NotRead=Not read +Read=Read +Assigned=Assigned +InProgress=In progress +NeedMoreInformation=Waiting for information +Answered=Answered +Waiting=Waiting +Closed=Closed +Deleted=Deleted + +# Dict +Type=Type +Category=Analytic code +Severity=Severity + +# Email templates +MailToSendTicketMessage=To send email from ticket message + +# +# Admin page +# +TicketSetup=Ticket module setup +TicketSettings=Settings +TicketSetupPage= +TicketPublicAccess=A public interface requiring no identification is available at the following url +TicketSetupDictionaries=The type of ticket, severity and analytic codes are configurable from dictionaries +TicketParamModule=Module variable setup +TicketParamMail=Email setup +TicketEmailNotificationFrom=Notification email from +TicketEmailNotificationFromHelp=Used into ticket message answer by example +TicketEmailNotificationTo=Notifications email to +TicketEmailNotificationToHelp=Send email notifications to this address. +TicketNewEmailBodyLabel=Text message sent after creating a ticket +TicketNewEmailBodyHelp=The text specified here will be inserted into the email confirming the creation of a new ticket from the public interface. Information on the consultation of the ticket are automatically added. +TicketParamPublicInterface=Public interface setup +TicketsEmailMustExist=Require an existing email address to create a ticket +TicketsEmailMustExistHelp=In the public interface, the email address should already be filled in the database to create a new ticket. +PublicInterface=Public interface +TicketUrlPublicInterfaceLabelAdmin=Alternative URL for public interface +TicketUrlPublicInterfaceHelpAdmin=It is possible to define an alias to the web server and thus make available the public interface with another URL (the server must act as a proxy on this new URL) +TicketPublicInterfaceTextHomeLabelAdmin=Welcome text of the public interface +TicketPublicInterfaceTextHome=You can create a support ticket or view existing from its identifier tracking ticket. +TicketPublicInterfaceTextHomeHelpAdmin=The text defined here will appear on the home page of the public interface. +TicketPublicInterfaceTopicLabelAdmin=Interface title +TicketPublicInterfaceTopicHelp=This text will appear as the title of the public interface. +TicketPublicInterfaceTextHelpMessageLabelAdmin=Help text to the message entry +TicketPublicInterfaceTextHelpMessageHelpAdmin=This text will appear above the message input area of the user. +ExtraFieldsTicket=Extra attributes +TicketCkEditorEmailNotActivated=HTML editor is not activated. Please put FCKEDITOR_ENABLE_MAIL content to 1 to get it. +TicketsDisableEmail=Do not send emails for ticket creation or message recording +TicketsDisableEmailHelp=By default, emails are sent when new tickets or messages created. Enable this option to disable *all* email notifications +TicketsLogEnableEmail=Enable log by email +TicketsLogEnableEmailHelp=At each change, an email will be sent **to each contact** associated with the ticket. +TicketParams=Params +TicketsShowModuleLogo=Display the logo of the module in the public interface +TicketsShowModuleLogoHelp=Enable this option to hide the logo module in the pages of the public interface +TicketsShowCompanyLogo=Display the logo of the company in the public interface +TicketsShowCompanyLogoHelp=Enable this option to hide the logo of the main company in the pages of the public interface +TicketsEmailAlsoSendToMainAddress=Also send notification to main email address +TicketsEmailAlsoSendToMainAddressHelp=Enable this option to send an email to "Notification email from" address (see setup below) +TicketsLimitViewAssignedOnly=Restrict the display to tickets assigned to the current user (not effective for external users, always be limited to the third party they depend on) +TicketsLimitViewAssignedOnlyHelp=Only tickets assigned to the current user will be visible. Does not apply to a user with tickets management rights. +TicketsActivatePublicInterface=Activate public interface +TicketsActivatePublicInterfaceHelp=Public interface allow any visitors to create tickets. +TicketsAutoAssignTicket=Automatically assign the user who created the ticket +TicketsAutoAssignTicketHelp=When creating a ticket, the user can be automatically assigned to the ticket. +TicketNumberingModules=Tickets numbering module +TicketNotifyTiersAtCreation=Notify third party at creation +TicketGroup=Group +TicketsDisableCustomerEmail=Always disable emails when a ticket is created from public interface +# +# Index & list page +# +TicketsIndex=Tickets area +TicketList=List of tickets +TicketAssignedToMeInfos=This page display ticket list created by or assigned to current user +NoTicketsFound=No ticket found +NoUnreadTicketsFound=No unread ticket found +TicketViewAllTickets=View all tickets +TicketViewNonClosedOnly=View only open tickets +TicketStatByStatus=Tickets by status +OrderByDateAsc=Sort by ascending date +OrderByDateDesc=Sort by descending date +ShowAsConversation=Show as conversation list +MessageListViewType=Show as table list + +# +# Ticket card +# +Ticket=Ticket +TicketCard=Ticket card +CreateTicket=Create ticket +EditTicket=Edit ticket +TicketsManagement=Tickets Management +CreatedBy=Created by +NewTicket=New Ticket +SubjectAnswerToTicket=Ticket answer +TicketTypeRequest=Request type +TicketCategory=Analytic code +SeeTicket=See ticket +TicketMarkedAsRead=Ticket has been marked as read +TicketReadOn=Read on +TicketCloseOn=Closing date +MarkAsRead=Mark ticket as read +TicketHistory=Ticket history +AssignUser=Assign to user +TicketAssigned=Ticket is now assigned +TicketChangeType=Change type +TicketChangeCategory=Change analytic code +TicketChangeSeverity=Change severity +TicketAddMessage=Add a message +AddMessage=Add a message +MessageSuccessfullyAdded=Ticket added +TicketMessageSuccessfullyAdded=Message successfully added +TicketMessagesList=Message list +NoMsgForThisTicket=No message for this ticket +Properties=Classification +LatestNewTickets=Latest %s newest tickets (not read) +TicketSeverity=Severity +ShowTicket=See ticket +RelatedTickets=Related tickets +TicketAddIntervention=Create intervention +CloseTicket=Close ticket +CloseATicket=Close a ticket +ConfirmCloseAticket=Confirm ticket closing +ConfirmDeleteTicket=Please confirm ticket deleting +TicketDeletedSuccess=Ticket deleted with success +TicketMarkedAsClosed=Ticket marked as closed +TicketDurationAuto=Calculated duration +TicketDurationAutoInfos=Duration calculated automatically from intervention related +TicketUpdated=Ticket updated +SendMessageByEmail=Send message by email +TicketNewMessage=New message +ErrorMailRecipientIsEmptyForSendTicketMessage=Recipient is empty. No email send +TicketGoIntoContactTab=Please go into "Contacts" tab to select them +TicketMessageMailIntro=Introduction +TicketMessageMailIntroHelp=This text is added only at the beginning of the email and will not be saved. +TicketMessageMailIntroLabelAdmin=Introduction to the message when sending email +TicketMessageMailIntroText=Hello,
    A new response was sent on a ticket that you contact. Here is the message:
    +TicketMessageMailIntroHelpAdmin=This text will be inserted before the text of the response to a ticket. +TicketMessageMailSignature=Signature +TicketMessageMailSignatureHelp=This text is added only at the end of the email and will not be saved. +TicketMessageMailSignatureText=

    Sincerely,

    --

    +TicketMessageMailSignatureLabelAdmin=Signature of response email +TicketMessageMailSignatureHelpAdmin=This text will be inserted after the response message. +TicketMessageHelp=Only this text will be saved in the message list on ticket card. +TicketMessageSubstitutionReplacedByGenericValues=Substitutions variables are replaced by generic values. +TimeElapsedSince=Time elapsed since +TicketTimeToRead=Time elapsed before read +TicketContacts=Contacts ticket +TicketDocumentsLinked=Documents linked to ticket +ConfirmReOpenTicket=Confirm reopen this ticket ? +TicketMessageMailIntroAutoNewPublicMessage=A new message was posted on the ticket with the subject %s: +TicketAssignedToYou=Ticket assigned +TicketAssignedEmailBody=You have been assigned the ticket #%s by %s +MarkMessageAsPrivate=Mark message as private +TicketMessagePrivateHelp=This message will not display to external users +TicketEmailOriginIssuer=Issuer at origin of the tickets +InitialMessage=Initial Message +LinkToAContract=Link to a contract +TicketPleaseSelectAContract=Select a contract +UnableToCreateInterIfNoSocid=Can not create an intervention when no third party is defined +TicketMailExchanges=Mail exchanges +TicketInitialMessageModified=Initial message modified +TicketMessageSuccesfullyUpdated=Message successfully updated +TicketChangeStatus=Change status +TicketConfirmChangeStatus=Confirm the status change: %s ? +TicketLogStatusChanged=Status changed: %s to %s +TicketNotNotifyTiersAtCreate=Not notify company at create +Unread=Unread +TicketNotCreatedFromPublicInterface=Not available. Ticket was not created from public interface. +PublicInterfaceNotEnabled=Public interface was not enabled +ErrorTicketRefRequired=Ticket reference name is required + +# +# Logs +# +TicketLogMesgReadBy=Ticket %s read by %s +NoLogForThisTicket=No log for this ticket yet +TicketLogAssignedTo=Ticket %s assigned to %s +TicketLogPropertyChanged=Ticket %s modified: classification from %s to %s +TicketLogClosedBy=Ticket %s closed by %s +TicketLogReopen=Ticket %s re-open + +# +# Public pages +# +TicketSystem=Ticket system +ShowListTicketWithTrackId=Display ticket list from track ID +ShowTicketWithTrackId=Display ticket from track ID +TicketPublicDesc=You can create a support ticket or check from an existing ID. +YourTicketSuccessfullySaved=Ticket has been successfully saved! +MesgInfosPublicTicketCreatedWithTrackId=A new ticket has been created with ID %s and Ref %s. +PleaseRememberThisId=Please keep the tracking number that we might ask you later. +TicketNewEmailSubject=Ticket creation confirmation - Ref %s (public ticket ID %s) +TicketNewEmailSubjectCustomer=New support ticket +TicketNewEmailBody=This is an automatic email to confirm you have registered a new ticket. +TicketNewEmailBodyCustomer=This is an automatic email to confirm a new ticket has just been created into your account. +TicketNewEmailBodyInfosTicket=Information for monitoring the ticket +TicketNewEmailBodyInfosTrackId=Ticket tracking number: %s +TicketNewEmailBodyInfosTrackUrl=You can view the progress of the ticket by clicking the link above. +TicketNewEmailBodyInfosTrackUrlCustomer=You can view the progress of the ticket in the specific interface by clicking the following link +TicketEmailPleaseDoNotReplyToThisEmail=Please do not reply directly to this email! Use the link to reply into the interface. +TicketPublicInfoCreateTicket=This form allows you to record a support ticket in our management system. +TicketPublicPleaseBeAccuratelyDescribe=Please accurately describe the problem. Provide the most information possible to allow us to correctly identify your request. +TicketPublicMsgViewLogIn=Please enter ticket tracking ID +TicketTrackId=Public Tracking ID +OneOfTicketTrackId=One of your tracking ID +ErrorTicketNotFound=Ticket with tracking ID %s not found! +Subject=Subject +ViewTicket=View ticket +ViewMyTicketList=View my ticket list +ErrorEmailMustExistToCreateTicket=Error: email address not found in our database +TicketNewEmailSubjectAdmin=New ticket created - Ref %s (public ticket ID %s) +TicketNewEmailBodyAdmin=

    Ticket has just been created with ID #%s, see information:

    +SeeThisTicketIntomanagementInterface=See ticket in management interface +TicketPublicInterfaceForbidden=The public interface for the tickets was not enabled +ErrorEmailOrTrackingInvalid=Bad value for tracking ID or email +OldUser=Old user +NewUser=New user +NumberOfTicketsByMonth=Number of tickets per month +NbOfTickets=Number of tickets +# notifications +TicketNotificationEmailSubject=Ticket %s updated +TicketNotificationEmailBody=This is an automatic message to notify you that ticket %s has just been updated +TicketNotificationRecipient=Notification recipient +TicketNotificationLogMessage=Log message +TicketNotificationEmailBodyInfosTrackUrlinternal=View ticket into interface +TicketNotificationNumberEmailSent=Notification email sent: %s + +ActionsOnTicket=Events on ticket + +# +# Boxes +# +BoxLastTicket=Latest created tickets +BoxLastTicketDescription=Latest %s created tickets +BoxLastTicketContent= +BoxLastTicketNoRecordedTickets=No recent unread tickets +BoxLastModifiedTicket=Latest modified tickets +BoxLastModifiedTicketDescription=Latest %s modified tickets +BoxLastModifiedTicketContent= +BoxLastModifiedTicketNoRecordedTickets=No recent modified tickets diff --git a/htdocs/langs/uz_UZ/users.lang b/htdocs/langs/uz_UZ/users.lang index 43fa5342da3..aea4e7676e4 100644 --- a/htdocs/langs/uz_UZ/users.lang +++ b/htdocs/langs/uz_UZ/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Users and their properties DomainUser=Domain user %s Reactivate=Reactivate CreateInternalUserDesc=This form allows you to create an internal user in your company/organization. To create an external user (customer, vendor etc. ..), use the button 'Create Dolibarr User' from that third-party's contact card. -InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other.

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=Permission granted because inherited from one of a user's group. Inherited=Inherited UserWillBeInternalUser=Created user will be an internal user (because not linked to a particular third party) @@ -110,3 +110,8 @@ UserLogged=User logged DateEmployment=Employment Start Date DateEmploymentEnd=Employment End Date CantDisableYourself=You can't disable your own user record +ForceUserExpenseValidator=Force expense report validator +ForceUserHolidayValidator=Force leave request validator +ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/uz_UZ/website.lang b/htdocs/langs/uz_UZ/website.lang new file mode 100644 index 00000000000..bce2a09fb03 --- /dev/null +++ b/htdocs/langs/uz_UZ/website.lang @@ -0,0 +1,130 @@ +# Dolibarr language file - Source file is en_US - website +Shortname=Code +WebsiteSetupDesc=Create here the websites you wish to use. Then go into menu Websites to edit them. +DeleteWebsite=Delete website +ConfirmDeleteWebsite=Are you sure you want to delete this web site? All its pages and content will also be removed. The files uploaded (like into the medias directory, the ECM module, ...) will remain. +WEBSITE_TYPE_CONTAINER=Type of page/container +WEBSITE_PAGE_EXAMPLE=Web page to use as example +WEBSITE_PAGENAME=Page name/alias +WEBSITE_ALIASALT=Alternative page names/aliases +WEBSITE_ALIASALTDesc=Use here list of other name/aliases so the page can also be accessed using this other names/aliases (for example the old name after renaming the alias to keep backlink on old link/name working). Syntax is:
    alternativename1, alternativename2, ... +WEBSITE_CSS_URL=URL of external CSS file +WEBSITE_CSS_INLINE=CSS file content (common to all pages) +WEBSITE_JS_INLINE=Javascript file content (common to all pages) +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. +MediaFiles=Media library +EditCss=Edit website properties +EditMenu=Edit menu +EditMedias=Edit medias +EditPageMeta=Edit page/container properties +EditInLine=Edit inline +AddWebsite=Add website +Webpage=Web page/container +AddPage=Add page/container +HomePage=Home Page +PageContainer=Page/container +PreviewOfSiteNotYetAvailable=Preview of your website %s not yet available. You must first 'Import a full website template' or just 'Add a page/container'. +RequestedPageHasNoContentYet=Requested page with id %s has no content yet, or cache file .tpl.php was removed. Edit content of the page to solve this. +SiteDeleted=Web site '%s' deleted +PageContent=Page/Contenair +PageDeleted=Page/Contenair '%s' of website %s deleted +PageAdded=Page/Contenair '%s' added +ViewSiteInNewTab=View site in new tab +ViewPageInNewTab=View page in new tab +SetAsHomePage=Set as Home page +RealURL=Real URL +ViewWebsiteInProduction=View web site using home URLs +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: +YouCanAlsoTestWithPHPS=Use with PHP embedded server
    On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running
    php -S 0.0.0.0:8080 -t %s +YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org +CheckVirtualHostPerms=Check also that virtual host has permission %s on files into
    %s +ReadPerm=Read +WritePerm=Write +TestDeployOnWeb=Test/deploy on web +PreviewSiteServedByWebServer=Preview %s in a new tab.

    The %s will be served by an external web server (like Apache, Nginx, IIS). You must install and setup this server before to point to directory:
    %s
    URL served by external server:
    %s +PreviewSiteServedByDolibarr=Preview %s in a new tab.

    The %s will be served by Dolibarr server so it does not need any extra web server (like Apache, Nginx, IIS) to be installed.
    The inconvenient is that URL of pages are not user friendly and start with path of your Dolibarr.
    URL served by Dolibarr:
    %s

    To use your own external web server to serve this web site, create a virtual host on your web server that point on directory
    %s
    then enter the name of this virtual server and click on the other preview button. +VirtualHostUrlNotDefined=URL of the virtual host served by external web server not defined +NoPageYet=No pages yet +YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template +SyntaxHelp=Help on specific syntax tips +YouCanEditHtmlSourceckeditor=You can edit HTML source code using the "Source" button in editor. +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +ClonePage=Clone page/container +CloneSite=Clone site +SiteAdded=Website added +ConfirmClonePage=Please enter code/alias of new page and if it is a translation of the cloned page. +PageIsANewTranslation=The new page is a translation of the current page ? +LanguageMustNotBeSameThanClonedPage=You clone a page as a translation. The language of the new page must be different than language of source page. +ParentPageId=Parent page ID +WebsiteId=Website ID +CreateByFetchingExternalPage=Create page/container by fetching page from external URL... +OrEnterPageInfoManually=Or create page from scratch or from a page template... +FetchAndCreate=Fetch and Create +ExportSite=Export website +ImportSite=Import website template +IDOfPage=Id of page +Banner=Banner +BlogPost=Blog post +WebsiteAccount=Website account +WebsiteAccounts=Website accounts +AddWebsiteAccount=Create web site account +BackToListForThirdParty=Back to list for the third-party +DisableSiteFirst=Disable website first +MyContainerTitle=My web site title +AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) +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 +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. +OnlyEditionOfSourceForGrabbedContent=Only edition of HTML source is possible when content was grabbed from an external site +GrabImagesInto=Grab also images found into css and page. +ImagesShouldBeSavedInto=Images should be saved into directory +WebsiteRootOfImages=Root directory for website images +SubdirOfPage=Sub-directory dedicated to page +AliasPageAlreadyExists=Alias page %s already exists +CorporateHomePage=Corporate Home page +EmptyPage=Empty page +ExternalURLMustStartWithHttp=External URL must start with http:// or https:// +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 +ThisPageHasTranslationPages=This page/container has translation +NoWebSiteCreateOneFirst=No website has been created yet. Create one first. +GoTo=Go to +DynamicPHPCodeContainsAForbiddenInstruction=You add dynamic PHP code that contains the PHP instruction '%s' that is forbidden by default as dynamic content (see hidden options WEBSITE_PHP_ALLOW_xxx to increase list of allowed commands). +NotAllowedToAddDynamicContent=You don't have permission to add or edit PHP dynamic content in websites. Ask permission or just keep code into php tags unmodified. +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 +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. +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. +Dynamiccontent=Sample of a page with dynamic content +ImportSite=Import website template +EditInLineOnOff=Mode 'Edit inline' is %s +ShowSubContainersOnOff=Mode to execute 'dynamic content' is %s +GlobalCSSorJS=Global CSS/JS/Header file of web site +BackToHomePage=Back to home page... +TranslationLinks=Translation links +YouTryToAccessToAFileThatIsNotAWebsitePage=You try to access to a page that is not a website page +UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 characters +MainLanguage=Main language +OtherLanguages=Other languages +UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/uz_UZ/zapier.lang b/htdocs/langs/uz_UZ/zapier.lang new file mode 100644 index 00000000000..6d6eda71313 --- /dev/null +++ b/htdocs/langs/uz_UZ/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr module + +# +# Admin page +# +ZapierForDolibarrSetup = Setup of Zapier for Dolibarr diff --git a/htdocs/langs/vi_VN/accountancy.lang b/htdocs/langs/vi_VN/accountancy.lang index a043f3b64ca..f979bc9b1a3 100644 --- a/htdocs/langs/vi_VN/accountancy.lang +++ b/htdocs/langs/vi_VN/accountancy.lang @@ -121,6 +121,7 @@ InvoiceLinesDone=Giới hạn dòng hóa đơn ExpenseReportLines=Dòng báo cáo chi phí để ràng buộc ExpenseReportLinesDone=Giới hạn dòng của báo cáo chi phí IntoAccount=Ràng buộc dòng với tài khoản kế toán +TotalForAccount=Total for accounting account Ventilate=Ràng buộc @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=Tài khoản kế toán cho đăng ký quyên góp. ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Tài khoản kế toán để đăng ký tham gia ACCOUNTING_PRODUCT_BUY_ACCOUNT=Tài khoản kế toán theo mặc định cho các sản phẩm đã mua (được sử dụng nếu không được xác định trong bảng sản phẩm) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Tài khoản kế toán theo mặc định cho các sản phẩm đã mua trong EEC (được sử dụng nếu không được xác định trong bảng sản phẩm) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Tài khoản kế toán theo mặc định cho các sản phẩm đã mua và được nhập ra khỏi EEC (được sử dụng nếu không được xác định trong bảng sản phẩm) ACCOUNTING_PRODUCT_SOLD_ACCOUNT=Tài khoản kế toán theo mặc định cho các sản phẩm đã bán (được sử dụng nếu không được xác định trong bảng sản phẩm) ACCOUNTING_PRODUCT_SOLD_INTRA_ACCOUNT=Tài khoản kế toán theo mặc định cho các sản phẩm được bán trong EEC (được sử dụng nếu không được xác định trong bảng sản phẩm) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Tài khoản kế toán theo mặc định cho các sản phẩm được bán và xuất ra khỏi EEC (được sử dụng nếu không được xác định trong bảng sản phẩm) + ACCOUNTING_SERVICE_BUY_ACCOUNT=Tài khoản kế toán theo mặc định cho các dịch vụ đã mua (được sử dụng nếu không được xác định trong bảng dịch vụ) +ACCOUNTING_SERVICE_BUY_INTRA_ACCOUNT=Tài khoản kế toán theo mặc định cho các dịch vụ đã mua trong EEC (được sử dụng nếu không được xác định trong bảng dịch vụ) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Tài khoản kế toán theo mặc định cho các dịch vụ đã mua và được nhập ra khỏi EEC (được sử dụng nếu không được xác định trong bảng dịch vụ) ACCOUNTING_SERVICE_SOLD_ACCOUNT=Tài khoản kế toán theo mặc định cho các dịch vụ đã bán (được sử dụng nếu không được xác định trong bảng dịch vụ) ACCOUNTING_SERVICE_SOLD_INTRA_ACCOUNT=Tài khoản kế toán theo mặc định cho các dịch vụ được bán trong EEC (được sử dụng nếu không được xác định trong bảng dịch vụ) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Tài khoản kế toán theo mặc định cho các dịch vụ được bán và xuất ra khỏi EEC (được sử dụng nếu không được xác định trong bảng dịch vụ) @@ -224,15 +230,19 @@ ListAccounts=Danh sách các tài khoản kế toán UnknownAccountForThirdparty=Không biết tài khoản bên thứ ba. Chúng ta sẽ sử dụng %s UnknownAccountForThirdpartyBlocking=Không biết tài khoản bên thứ ba. Lỗi chặn ThirdpartyAccountNotDefinedOrThirdPartyUnknown=Tài khoản bên thứ ba không được xác định hoặc không biết bên thứ ba. Chúng ta sẽ sử dụng %s -ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unknown and subledger not defined on the payment. We will keep the subledger account value empty. +ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Bên thứ ba không xác định và người đăng ký không được xác định trên thanh toán. Chúng tôi sẽ giữ giá trị tài khoản subledger trống. ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Tài khoản bên thứ ba không được xác định hoặc không biết bên thứ ba. Lỗi chặn. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Không biết tài khoản bên thứ ba và tài khoản đang chờ không xác định. Lỗi chặn PaymentsNotLinkedToProduct=Thanh toán không được liên kết với bất kỳ sản phẩm/ dịch vụ nào -ShowOpeningBalance=Show opening balance -HideOpeningBalance=Hide opening balance +OpeningBalance=Opening balance +ShowOpeningBalance=Xem số dư +HideOpeningBalance=Ẩn số dư +ShowSubtotalByGroup=Show subtotal by group Pcgtype=Nhóm tài khoản -PcgtypeDesc=Group 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. +PcgtypeDesc=Nhóm tài khoản được sử dụng làm tiêu chí 'bộ lọc' và 'nhóm' được xác định trước cho một số báo cáo kế toán. Ví dụ: 'THU NHẬP' hoặc 'CHI PHÍ' được sử dụng làm nhóm cho tài khoản kế toán của các sản phẩm để xây dựng báo cáo chi phí / thu nhập. + +Reconcilable=Đối soát lại TotalVente=Tổng doanh thu trước thuế TotalMarge=Tổng lợi nhuận bán hàng @@ -307,11 +317,13 @@ Modelcsv_quadratus=Xuất dữ liệu cho Quadratus QuadraCompta Modelcsv_ebp=Xuất dữ liệu cho EBP Modelcsv_cogilog=Xuất dữ liệu Cogilog Modelcsv_agiris=Xuất dữ liệu cho Agiris -Modelcsv_LDCompta=Xuất dữ liệu cho LD Compta (v9 trở lên) (Kiểm tra) +Modelcsv_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Xuất cho chuẩn LD Compta (v10 hoặc cao hơn) Modelcsv_openconcerto=Xuất dữ liệu cho OpenConcerto (Kiểm tra) Modelcsv_configurable=Xuất dữ liệu cấu hình CSV Modelcsv_FEC=Xuất dữ liệu FEC Modelcsv_Sage50_Swiss=Xuất dữ liệu cho Sage 50 Thụy Sĩ +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=ID Hệ thống tài khoản ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=Chế độ bán hàng OptionModeProductSellIntra=Chế độ bán hàng xuất khẩu trong EEC OptionModeProductSellExport=Chế độ bán hàng xuất khẩu ở các nước khác OptionModeProductBuy=Chế độ mua hàng +OptionModeProductBuyIntra=Mẫu mua hàng được nhập trong EEC +OptionModeProductBuyExport=Mẫu mua hàng được nhập từ các quốc gia khác OptionModeProductSellDesc=Hiển thị tất cả các sản phẩm có tài khoản kế toán để bán hàng. OptionModeProductSellIntraDesc=Hiển thị tất cả các sản phẩm có tài khoản kế toán để bán hàng trong EEC. OptionModeProductSellExportDesc=Hiển thị tất cả các sản phẩm có tài khoản kế toán để bán hàng nước ngoài khác. OptionModeProductBuyDesc=Hiển thị tất cả các sản phẩm có tài khoản kế toán để mua hàng. +OptionModeProductBuyIntraDesc=Hiển thị tất cả các sản phẩm có tài khoản kế toán để mua hàng trong EEC. +OptionModeProductBuyExportDesc=Hiển thị tất cả các sản phẩm có tài khoản kế toán cho mua hàng nước ngoài khác. CleanFixHistory=Xóa mã kế toán khỏi các dòng không tồn tại trong hệ thống tài khoản CleanHistory=Đặt lại tất cả các ràng buộc cho năm đã chọn PredefinedGroups=Các nhóm được xác định trước @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Tài khoản bị xóa khỏi nhóm SaleLocal=Bán địa phương SaleExport=Bán hàng xuất khẩu SaleEEC=Bán trong EEC +SaleEECWithVAT=Bán trong EEC với VAT không phải là null, vì vậy chúng tôi cho rằng đây KHÔNG phải là bán hàng nội bộ và tài khoản được đề xuất là tài khoản sản phẩm tiêu chuẩn. +SaleEECWithoutVATNumber=Bán trong EEC không có VAT nhưng ID VAT của bên thứ ba không được xác định. Chúng tôi dự phòng tài khoản sản phẩm để bán hàng tiêu chuẩn. Bạn có thể sửa ID VAT của bên thứ ba hoặc tài khoản sản phẩm nếu cần. ## Dictionary Range=Phạm vi tài khoản kế toán diff --git a/htdocs/langs/vi_VN/admin.lang b/htdocs/langs/vi_VN/admin.lang index af3b098f54f..5a41044e730 100644 --- a/htdocs/langs/vi_VN/admin.lang +++ b/htdocs/langs/vi_VN/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Người dùng/nhóm trên máy chủ NoSessionFound=Cấu hình PHP của bạn dường như không cho phép liệt kê các phiên hoạt động. Thư mục được sử dụng để lưu phiên ( %s ) có thể được bảo vệ (ví dụ: bằng quyền của hệ điều hành hoặc bằng lệnh open_basingir của PHP). DBStoringCharset=Cơ sở dữ liệu bộ ký tự để lưu trữ dữ liệu DBSortingCharset=Cơ sở dữ liệu bộ ký tự để sắp xếp dữ liệu +HostCharset=Host charset ClientCharset=Charset máy khách ClientSortingCharset=Đối chiếu máy khách WarningModuleNotActive=Module %s phải được mở @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Lưu ý: cấu hình PHP của bạn hiện giớ NoMaxSizeByPHPLimit=Ghi chú: Không có giới hạn được chỉnh sửa trong phần chỉnh sửa PHP MaxSizeForUploadedFiles=Kích thước tối đa của tập tin được tải lên (0 sẽ tắt chế độ tải lên) UseCaptchaCode=Sử dụng mã xác nhận (CAPTCHA) ở trang đăng nhập -AntiVirusCommand= Đường dẫn đầy đủ để thi hành việc quét virus -AntiVirusCommandExample= Thí dụ dành cho ClamWin: c:\\Progra~1\\ClamWin\\bin\\clamscan.exe
    Thí dụ cho ClamAv: /usr/bin/clamscan +AntiVirusCommand=Đường dẫn đầy đủ để thi hành việc quét virus +AntiVirusCommandExample=Ví dụ cho ClamAv Daemon (yêu cầu clamav-daemon): / usr / bin / clamdscan
    Example cho ClamWin (rất rất chậm): c: \\ Progra ~ 1 \\ ClamWin \\ bin \\ clamscan.exe AntiVirusParam= Nhiều thông số trên dòng lệnh -AntiVirusParamExample= Thí dụ với ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" +AntiVirusParamExample=Ví dụ cho ClamAv Daemon: --fdpass
    Ví dụ cho ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=Cài đặt module kế toán UserSetup=Cài đặt quản lý người dùng MultiCurrencySetup=Thiết lập đa tiền tệ @@ -199,7 +200,7 @@ FeatureDisabledInDemo=Tính năng đã vô hiệu hóa trong bản demo FeatureAvailableOnlyOnStable=Tính năng chỉ khả dụng trên các phiên bản ổn định chính thức BoxesDesc=Widget là các thành phần hiển thị một số thông tin mà bạn có thể thêm để cá nhân hóa một số trang. Bạn có thể chọn giữa hiển thị tiện ích hoặc không bằng cách chọn trang đích và nhấp vào 'Kích hoạt' hoặc bằng cách nhấp vào thùng rác để tắt nó. OnlyActiveElementsAreShown=Chỉ có các yếu tố từ module kích hoạt được hiển thị. -ModulesDesc=Các mô-đun / ứng dụng xác định các tính năng có sẵn trong phần mềm. Một số mô-đun yêu cầu quyền được cấp cho người dùng sau khi kích hoạt mô-đun. Nhấp vào nút bật / tắt (ở cuối dòng mô-đun) để bật / tắt mô-đun / ứng dụng. +ModulesDesc=Các mô-đun / ứng dụng xác định các tính năng có sẵn trong phần mềm. Một số mô-đun yêu cầu quyền được cấp cho người dùng sau khi kích hoạt mô-đun.. Bấm nút bật/tắt %scủa từng module để cho phép hoặc tắt một mô-đun / ứng dụng ModulesMarketPlaceDesc=Bạn có thể tìm thấy nhiều mô-đun để tải về ở các websites trên Internet ... ModulesDeployDesc=Nếu quyền trên hệ thống tệp của bạn cho phép, bạn có thể sử dụng công cụ này để triển khai mô-đun bên ngoài. Mô-đun sau đó sẽ hiển thị trên tab %s . ModulesMarketPlaces=Tìm ứng dụng bên ngoài/ mô-đun @@ -212,6 +213,7 @@ CompatibleUpTo=Tương thích với phiên bản %s NotCompatible=Mô-đun này dường như không tương thích với Dolibarr %s của bạn (Min %s - Max %s). CompatibleAfterUpdate=Mô-đun này yêu cầu cập nhật lên Dolibarr %s của bạn (Min %s - Max %s). SeeInMarkerPlace=Xem ở chợ +SeeSetupOfModule=Xem thiết lập mô-đun %s Updated=Đã cập nhật Nouveauté=Mới lạ AchatTelechargement=Mua / Tải xuống @@ -221,6 +223,7 @@ DoliPartnersDesc=Danh sách các công ty cung cấp các mô-đun hoặc tính WebSiteDesc=Các trang web bên ngoài để có thêm các mô-đun bổ sung (không lõi) ... DevelopYourModuleDesc=Một số giải pháp để phát triển mô-đun của riêng bạn ... URL=URL +RelativeURL=URL liên quan BoxesAvailable=Widgets có sẵn BoxesActivated=Widgets được kích hoạt ActivateOn=Kích hoạt trên @@ -328,7 +331,7 @@ SetupIsReadyForUse=Triển khai mô-đun kết thúc. Tuy nhiên, bạn phải b NotExistsDirect=Thư mục gốc thay thế không được xác định cho một thư mục hiện có.
    InfDirAlt=Kể từ phiên bản 3, có thể xác định một thư mục gốc thay thế. Điều này cho phép bạn lưu trữ, vào một thư mục chuyên dụng, các trình cắm và các mẫu tùy chỉnh.
    Chỉ cần tạo một thư mục ở thư mục gốc của Dolibarr (ví dụ: tùy chỉnh).
    InfDirExample=
    Sau đó khai báo nó trong tập tin conf.php
    $ dolibarr_main_url_root_alt='/custom'
    $dolibarr_main_document_root_alt='/path/of/dolibarr/htdocs/custom'
    Nếu những dòng này được nhận xét bằng '#', để kích hoạt chúng, chỉ cần bỏ ghi chú bằng cách xóa ký tự '#'. -YouCanSubmitFile=You can upload the .zip file of module package from here: +YouCanSubmitFile=Bạn có thể upload file .zip của gói module vào đây: CurrentVersion=Phiên bản hiện tại Dolibarr CallUpdatePage=Duyệt đến trang cập nhật cấu trúc cơ sở dữ liệu và dữ liệu: %s. LastStableVersion=Phiên bản ổn định mới nhất @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=Giữ trống để sử dụng giá trị mặc định DefaultLink=Liên kết mặc định SetAsDefault=Đặt làm mặc định ValueOverwrittenByUserSetup=Cảnh báo, giá trị này có thể được ghi đè bởi các thiết lập cụ thể người sử dụng (mỗi người dùng có thể thiết lập url clicktodial riêng của mình) -ExternalModule=Module bên ngoài được cài đặt vào thư mục %s +ExternalModule=Module bên ngoài +InstalledInto=Đã cài đặt vào thư mục %s BarcodeInitForthird-parties=Khởi tạo mã vạch hàng loạt cho bên thứ ba BarcodeInitForProductsOrServices=Mass barcode init or reset for products or services CurrentlyNWithoutBarCode=Hiện tại, bạn có %s bản ghi %s %s không xác định được mã vạch @@ -472,7 +476,7 @@ Use3StepsApproval=Theo mặc định, Đơn đặt hàng cần được tạo v UseDoubleApproval=Sử dụng phê duyệt 3 bước khi số tiền (chưa có thuế) cao hơn ... WarningPHPMail=CẢNH BÁO: Thông thường tốt hơn là thiết lập các email gửi đi để sử dụng máy chủ email của nhà cung cấp của bạn thay vì thiết lập mặc định. Một số nhà cung cấp email (như Yahoo) không cho phép bạn gửi email từ máy chủ khác ngoài máy chủ của họ. Thiết lập hiện tại của bạn sử dụng máy chủ của ứng dụng để gửi email chứ không phải máy chủ của nhà cung cấp email của bạn, vì vậy một số người nhận (tương thích với giao thức DMARC hạn chế), sẽ hỏi nhà cung cấp email của bạn nếu họ có thể chấp nhận email của bạn và một số nhà cung cấp email (như Yahoo) có thể trả lời "không" vì máy chủ không phải là của họ, vì vậy rất ít Email đã gửi của bạn có thể không được chấp nhận (hãy cẩn thận với hạn ngạch gửi của nhà cung cấp email của bạn).
    Nếu nhà cung cấp Email của bạn (như Yahoo) có hạn chế này, bạn phải thay đổi thiết lập Email để chọn phương thức khác "Máy chủ SMTP" và nhập máy chủ SMTP và thông tin đăng nhập do nhà cung cấp Email của bạn cung cấp. WarningPHPMail2=Nếu nhà cung cấp dịch vụ email email của bạn cần hạn chế ứng dụng email khách đến một số địa chỉ IP (rất hiếm), thì đây là địa chỉ IP của tác nhân người dùng thư (MUA) cho ứng dụng ERP CRM của bạn: %s . -WarningPHPMailSPF=If the domain name in your sender email address is protected by SPF (ask you email provider), you must include the following IPs in the SPF record of the DNS of your domain: %s. +WarningPHPMailSPF=Nếu tên miền trong địa chỉ email người gửi của bạn được bảo vệ bởi SPF (yêu cầu nhà cung cấp email của bạn), bạn phải bao gồm các IP sau trong bản ghi SPF của DNS của tên miền của bạn:%s. ClickToShowDescription=Nhấn vào đây để hiển thị mô tả DependsOn=Mô-đun này cần (các) mô-đun RequiredBy=Mô-đun này được yêu cầu bởi (các) mô-đun @@ -520,7 +524,7 @@ Module25Desc=Quản lý đơn hàng bán Module30Name=Hoá đơn Module30Desc=Quản lý hóa đơn và ghi chú tín dụng cho khách hàng. Quản lý hóa đơn và ghi chú tín dụng cho nhà cung cấp Module40Name=Nhà cung cấp -Module40Desc=Vendors and purchase management (purchase orders and billing of supplier invoices) +Module40Desc=Quản lý nhà cung cấp và mua hàng (Đơn mua và hóa đơn mua hàng) Module42Name=Nhật ký gỡ lỗi Module42Desc=Phương tiện ghi nhật ký (tệp, syslog, ...). Nhật ký như vậy là cho mục đích kỹ thuật / gỡ lỗi. Module49Name=Biên tập @@ -545,8 +549,8 @@ Module58Name=ClickToDial Module58Desc=Integration of a ClickToDial system (Asterisk, ...) Module59Name=Bookmark4u Module59Desc=Thêm chức năng để tạo ra tài khoản Bookmark4u từ một tài khoản Dolibarr -Module60Name=Stickers -Module60Desc=Management of stickers +Module60Name=Hình vui nhộn +Module60Desc=Quản lý hình vui nhộn Module70Name=Interventions Module70Desc=Quản lý Intervention Module75Name=Phiếu công tác phí @@ -564,9 +568,9 @@ Module200Desc=Đồng bộ hóa thư mục LDAP Module210Name=PostNuke Module210Desc=Tích hợp PostNuke Module240Name=Xuất dữ liệu -Module240Desc=Tool to export Dolibarr data (with assistance) +Module240Desc=Công cụ xuất dữ liệu Dolibarr (có trợ lý) Module250Name=Nhập dữ liệu -Module250Desc=Tool to import data into Dolibarr (with assistance) +Module250Desc=Công cụ nhập liệu vào Dolibarr (với trợ lý) Module310Name=Thành viên Module310Desc=Quản lý thành viên của tổ chức Module320Name=RSS Feed @@ -642,7 +646,7 @@ Module50000Desc=Đề nghị cho khách hàng một trang thanh toán trực tuy Module50100Name=POS SimplePOS Module50100Desc=Mô-đun điểm bán hàng SimplePOS (POS đơn giản). Module50150Name=POS TakePOS -Module50150Desc=Point of Sale module TakePOS (touchscreen POS, for shops, bars or restaurants). +Module50150Desc=Mô-đun điểm bán hàng TakePOS (màn hình cảm ứng POS, cho cửa hàng, nhà hàng, bars). Module50200Name=Paypal Module50200Desc=Đề nghị cho khách hàng một trang thanh toán trực tuyến PayPal (tài khoản PayPal hoặc thẻ tín dụng / thẻ ghi nợ). Điều này có thể được sử dụng để cho phép khách hàng của bạn thực hiện thanh toán đột xuất hoặc thanh toán liên quan đến một đối tượng Dolibarr cụ thể (hóa đơn, đơn đặt hàng, v.v.) Module50300Name=Cổng thanh toán Stripe @@ -881,7 +885,7 @@ Permission1251=Chạy nhập dữ liệu khối cho dữ liệu bên ngoài vào Permission1321=Xuất dữ liệu Hóa đơn khách hàng, các thuộc tính và thanh toán Permission1322=Mở lại một hóa đơn thanh toán Permission1421=Xuất dữ liệu đơn đặt hàng và các thuộc tính -Permission2401=Read actions (events or tasks) linked to his user account (if owner of event or just assigned to) +Permission2401=Đọc các hành động (sự kiện hoặc tác vụ) được liên kết với tài khoản người dùng của anh ấy (nếu là chủ sở hữu của sự kiện hoặc chỉ được giao cho) Permission2402=Tạo / sửa đổi các hành động (sự kiện hoặc tác vụ) được liên kết với tài khoản người dùng của họ (nếu là chủ sở hữu của sự kiện) Permission2403=Xóa các hành động (sự kiện hoặc tác vụ) được liên kết với tài khoản người dùng của họ (nếu là chủ sở hữu của sự kiện) Permission2411=Xem hành động (sự kiện hay tác vụ) của người khác @@ -947,7 +951,7 @@ DictionaryCanton=Bang / Tỉnh DictionaryRegion=Vùng DictionaryCountry=Quốc gia DictionaryCurrency=Tiền tệ -DictionaryCivility=Chức vụ +DictionaryCivility=Honorific titles DictionaryActions=Các loại sự kiện chương trình nghị sự DictionarySocialContributions=Các loại thuế xã hội hoặc tài chính DictionaryVAT=Tỉ suất VAT hoặc Tỉ xuất thuế bán hàng @@ -988,6 +992,7 @@ VATIsNotUsedDesc=Theo mặc định, thuế Bán hàng được đề xuất là VATIsUsedExampleFR=Ở Pháp, nó có nghĩa là các công ty hoặc tổ chức có một hệ thống tài chính thực sự (Đơn giản hóa thực tế hoặc thực tế bình thường). Một hệ thống trong đó VAT được khai báo. VATIsNotUsedExampleFR=Ở Pháp, điều đó có nghĩa là các hiệp hội không khai thuế bán hàng hoặc các công ty, tổ chức hoặc ngành nghề tự do đã chọn hệ thống tài chính doanh nghiệp siêu nhỏ (Thuế bán hàng trong nhượng quyền thương mại) và nộp thuế nhượng quyền Thuế bán hàng mà không cần khai báo thuế Bán hàng. Lựa chọn này sẽ hiển thị tham chiếu "Thuế bán hàng không áp dụng - art-293B của CGI" trên hóa đơn. ##### Local Taxes ##### +TypeOfSaleTaxes=Loại thuế bán hàng LTRate=Tỷ suất LocalTax1IsNotUsed=Do not use second tax LocalTax1IsUsedDesc=Sử dụng loại thuế thứ hai (không phải loại thứ nhất) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=Tỷ lệ IRPF theo mặc định khi tạo khách hàng t LocalTax2IsNotUsedDescES=By default the proposed IRPF is 0. End of rule. LocalTax2IsUsedExampleES=In Spain, freelancers and independent professionals who provide services and companies who have chosen the tax system of modules. LocalTax2IsNotUsedExampleES=Ở Tây Ban Nha, họ là các doanh nghiệp không phải chịu hệ thống thuế của các mô-đun. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Sử dụng một tem thuế +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=Báo cáo thuế địa phương CalcLocaltax1=Bán - Mua CalcLocaltax1Desc=Báo cáo Thuế địa phương được tính toán với sự khác biệt giữa localtaxes bán hàng và mua hàng localtaxes @@ -1018,10 +1026,11 @@ CalcLocaltax2=Mua CalcLocaltax2Desc=Báo cáo Thuế địa phương là tổng của localtaxes mua CalcLocaltax3=Bán CalcLocaltax3Desc=Báo cáo Thuế địa phương là tổng của localtaxes bán hàng +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=Nhãn được sử dụng bởi mặc định nếu không có bản dịch có thể được tìm thấy với code đó LabelOnDocuments=Nhãn trên các tài liệu LabelOrTranslationKey=Nhãn hoặc từ khóa dịch -ValueOfConstantKey=Value of a configuration constant +ValueOfConstantKey=Giá trị của hằng số NbOfDays=Số ngày AtEndOfMonth=Vào cuối tháng CurrentNext=Hiện tại / Tiếp theo @@ -1108,7 +1117,7 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Báo cáo chi phí để phê duyệt Delays_MAIN_DELAY_HOLIDAYS=Yêu cầu nghỉ phép để phê duyệt SetupDescription1=Trước khi bắt đầu sử dụng Dolibarr, một số tham số ban đầu phải được xác định và các mô-đun được kích hoạt/ định cấu hình. SetupDescription2=Hai phần sau đây là bắt buộc (hai mục đầu tiên trong menu Cài đặt): -SetupDescription3=%s -> %s
    Các tham số cơ bản được sử dụng để tùy chỉnh hành vi mặc định của ứng dụng của bạn (ví dụ: đối với các tính năng liên quan đến quốc gia). +SetupDescription3=%s -> %s

    Basic parameters used to customize the default behavior of your application (e.g for country-related features). SetupDescription4=%s -> %s
    Phần mềm này là một bộ gồm nhiều mô-đun/ứng dụng, tất cả đều ít nhiều độc lập nhau. Các mô-đun liên quan đến nhu cầu của bạn phải được kích hoạt và cấu hình. Các mục/tùy chọn sẽ được thêm vào menu với sự kích hoạt của một mô-đun. SetupDescription5=Các menu thiết lập khác quản lý các tham số tùy chọn. LogEvents=Sự kiện kiểm toán bảo mật @@ -1159,7 +1168,7 @@ NoEventOrNoAuditSetup=Không có sự kiện bảo mật đã được ghi vào NoEventFoundWithCriteria=Không có sự kiện bảo mật được tìm thấy cho tiêu chí tìm kiếm này. SeeLocalSendMailSetup=Xem thiết lập sendmail địa phương của bạn BackupDesc=Một bản sao lưu hoàn chỉnh của bản cài đặt Dolibarr yêu cầu hai bước. -BackupDesc2=Backup the contents of the "documents" directory (%s) containing all uploaded and generated files. This will also include all the dump files generated in Step 1. This operation may last several minutes. +BackupDesc2=Sao lưu nội dung của thư mục "documents" ( %s ) có chứa tất cả các tệp được tải lên và tạo ra. Điều này cũng sẽ bao gồm tất cả các tệp kết xuất được tạo trong Bước 1. Việc này có thể tốn vài phút BackupDesc3=Sao lưu cấu trúc và nội dung của cơ sở dữ liệu của bạn ( %s ) vào một tệp kết xuất. Đối với điều này, bạn có thể sử dụng theo các trợ lý. BackupDescX=Thư mục lưu trữ nên được lưu trữ ở một nơi an toàn. BackupDescY=Tạo ra các tập tin dump nên được lưu trữ ở một nơi an toàn. @@ -1170,7 +1179,7 @@ RestoreDesc3=Khôi phục cấu trúc cơ sở dữ liệu và dữ liệu từ RestoreMySQL=MySQL nhập dữ liệu ForcedToByAModule= Quy luật này buộc %s bởi một mô-đun được kích hoạt PreviousDumpFiles=Các tập tin sao lưu hiện có -PreviousArchiveFiles=Existing archive files +PreviousArchiveFiles=Các tập tin sao lưu hiện có WeekStartOnDay=Ngày đầu tiên trong tuần RunningUpdateProcessMayBeRequired=Quá trình chạy nâng cấp dường như là bắt buộc (Phiên bản chương trình %s khác với phiên bản Cơ sở dữ liệu %s) YouMustRunCommandFromCommandLineAfterLoginToUser=You must run this command from command line after login to a shell with user %s or you must add -W option at end of command line to provide %s password. @@ -1252,7 +1261,7 @@ AskForPreferredShippingMethod=Yêu cầu phương thức vận chuyển ưa thí FieldEdition=Biên soạn của trường %s FillThisOnlyIfRequired=Example: +2 (fill only if timezone offset problems are experienced) GetBarCode=Nhận mã vạch -NumberingModules=Numbering models +NumberingModules=Kiểu thiết lập số ##### Module password generation PasswordGenerationStandard=Quay trở lại một mật khẩu được tạo ra theo thuật toán Dolibarr nội bộ: 8 ký tự có chứa số chia sẻ và ký tự trong chữ thường. PasswordGenerationNone=Không có gợi ý tạo mật khẩu. Mật khẩu phải được nhập bằng tay. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Quy tắc tạo và xác thực mật khẩu DisableForgetPasswordLinkOnLogonPage=Không hiển thị liên kết "Quên mật khẩu" trên trang Đăng nhập UsersSetup=Thiết lập module người dùng UserMailRequired=Yêu cầu email để tạo người dùng mới +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Mẫu tài liệu cho tài liệu được tạo từ hồ sơ người dùng +GroupsDocModules=Mẫu tài liệu cho các tài liệu được tạo từ một bản ghi nhóm ##### HRM setup ##### HRMSetup=Thiết lập mô-đun Nhân sự ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=Mô hình chứng từ hóa đơn BillsPDFModulesAccordindToInvoiceType=Mẫu chứng từ hóa đơn theo loại hóa đơn PaymentsPDFModules=Mẫu chứng từ thanh toán ForceInvoiceDate=Buộc ngày hóa đơn là ngày xác nhận -SuggestedPaymentModesIfNotDefinedInInvoice=Đề nghị chế độ thanh toán trên hoá đơn theo mặc định nếu không được xác định cho hóa đơn +SuggestedPaymentModesIfNotDefinedInInvoice=Chế độ thanh toán được đề xuất trên hóa đơn theo mặc định nếu không được xác định trên hóa đơn SuggestPaymentByRIBOnAccount=Đề nghị thanh toán bằng cách rút tiền trên tài khoản SuggestPaymentByChequeToAddress=Đề nghị thanh toán bằng séc FreeLegalTextOnInvoices=Free text on invoices @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Thiết lập thanh toán của nhà cung cấp PropalSetup=Cài đặt module đơn hàng đề xuất ProposalsNumberingModules=Mô hình đánh số đơn hàng đề xuất ProposalsPDFModules=Mô hình chứng từ đơn hàng đề xuất -SuggestedPaymentModesIfNotDefinedInProposal=Chế độ thanh toán được gợi ý theo đề xuất theo mặc định nếu không có định nghĩa cho đề xuất +SuggestedPaymentModesIfNotDefinedInProposal=Chế độ thanh toán được đề xuất theo đề xuất theo mặc định nếu không được xác định trên đề xuất FreeLegalTextOnProposal=Free text on commercial proposals WatermarkOnDraftProposal=Watermark on draft commercial proposals (none if empty) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Yêu cầu tài khoản ngân hàng của đơn hàng đề xuất @@ -1322,6 +1334,7 @@ WAREHOUSE_ASK_WAREHOUSE_DURING_ORDER=Hỏi nguồn kho để đặt hàng ##### Suppliers Orders ##### BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_ORDER=Hỏi tài khoản ngân hàng đích của đơn đặt hàng mua ##### Orders ##### +SuggestedPaymentModesIfNotDefinedInOrder=Chế độ thanh toán được đề xuất theo đơn đặt hàng theo mặc định nếu không được xác định trên đơn đặt hàng OrdersSetup=Thiết lập quản lý đơn đặt hàng OrdersNumberingModules=Mô hình đánh số đơn hàng OrdersModelModule=Mô hình chứng từ đơn hàng @@ -1686,9 +1699,9 @@ CashDeskIdWareHouse=Buộc và hạn chế kho hàng để sử dụng cho giả StockDecreaseForPointOfSaleDisabled=Giảm tồn kho từ Điểm bán hàng bị vô hiệu hóa StockDecreaseForPointOfSaleDisabledbyBatch=Giảm tồn kho trong POS không tương thích với mô-đun Quản lý Sê-ri/lô (hiện đang hoạt động) nên việc giảm tồn kho bị vô hiệu hóa. CashDeskYouDidNotDisableStockDecease=Bạn đã không vô hiệu hóa giảm tồn kho khi thực hiện bán hàng từ Điểm bán hàng. Do đó có một kho được yêu cầu. -CashDeskForceDecreaseStockLabel=Stock decrease for batch products was forced. +CashDeskForceDecreaseStockLabel=Giảm tồn kho cho các lô sản phẩm đã bị buộc. CashDeskForceDecreaseStockDesc=Decrease first by the oldest eatby and sellby dates. -CashDeskReaderKeyCodeForEnter=Key code for "Enter" defined in barcode reader (Example: 13) +CashDeskReaderKeyCodeForEnter=Mã khóa cho "Enter" được xác định trong đầu đọc mã vạch (Ví dụ: 13) ##### Bookmark ##### BookmarkSetup=Cài đặt module Bookmark BookmarkDesc=Mô-đun này cho phép bạn quản lý dấu trang. Bạn cũng có thể thêm lối tắt vào bất kỳ trang Dolibarr hoặc các trang web bên ngoài trên menu bên trái của bạn. @@ -1719,9 +1732,9 @@ ChequeReceiptsNumberingModule=Kiểm tra mô-đun đánh số biên nhận séc MultiCompanySetup=Thiết lập mô-đun đa công ty ##### Suppliers ##### SuppliersSetup=Thiết lập mô-đun nhà cung cấp -SuppliersCommandModel=Complete template of Purchase Order -SuppliersCommandModelMuscadet=Complete template of Purchase Order -SuppliersInvoiceModel=Complete template of Vendor Invoice +SuppliersCommandModel=Mẫu hoàn chỉnh của đơn mua hàng +SuppliersCommandModelMuscadet=Mẫu hoàn chỉnh của Đơn đặt hàng (triển khai cũ của mẫu cornas) +SuppliersInvoiceModel=Mẫu hoàn chỉnh của Hóa đơn mua hàng SuppliersInvoiceNumberingModel=Mô hình đánh số hóa đơn nhà cung cấp IfSetToYesDontForgetPermission=Nếu được đặt thành giá trị không null, đừng quên cung cấp quyền cho các nhóm hoặc người dùng được phép phê duyệt lần thứ hai ##### GeoIPMaxmind ##### @@ -1771,10 +1784,10 @@ ListOfNotificationsPerUser=Danh sách thông báo tự động cho mỗi ngườ ListOfNotificationsPerUserOrContact=Danh sách các thông báo tự động có thể có (về sự kiện kinh doanh) có sẵn cho mỗi người dùng * hoặc mỗi liên lạc ** ListOfFixedNotifications=Danh sách thông báo cố định tự động GoOntoUserCardToAddMore=Chuyển đến tab "Thông báo" của người dùng để thêm hoặc xóa thông báo cho người dùng -GoOntoContactCardToAddMore=Go to the tab "Notifications" of a third party to add or remove notifications for contacts/addresses +GoOntoContactCardToAddMore=Chuyển đến tab "Thông báo" của bên thứ ba để thêm hoặc xóa thông báo cho các liên hệ / địa chỉ Threshold=Threshold -BackupDumpWizard=Wizard to build the database dump file -BackupZipWizard=Wizard to build the archive of documents directory +BackupDumpWizard=Hướng dẫn cách dump file dữ liệu +BackupZipWizard=Hướng dẫn tạo lưu trữ của thư mục hồ sơ SomethingMakeInstallFromWebNotPossible=Cài đặt module bên ngoài là không thể từ giao diện web với các lý do sau: SomethingMakeInstallFromWebNotPossible2=Vì lý do này, quá trình nâng cấp được mô tả ở đây là quy trình thủ công chỉ người dùng đặc quyền mới có thể thực hiện. InstallModuleFromWebHasBeenDisabledByFile=Cài đặt các module bên ngoài từ các ứng dụng đã bị vô hiệu bởi quản trị viên của bạn. Bạn phải yêu cầu ông phải loại bỏ các tập tin %s để cho phép tính năng này. @@ -1792,12 +1805,13 @@ TopMenuDisableImages=Ẩn hình ảnh trong menu trên cùng LeftMenuBackgroundColor=Màu nền của menu Trái BackgroundTableTitleColor=Màu nền cho tiêu đề của Table BackgroundTableTitleTextColor=Màu văn bản cho dòng tiêu đề Bảng +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=Màu nền của hàng lẻ BackgroundTableLineEvenColor=Màu nền của hàng chẵn MinimumNoticePeriod=Thời gian thông báo tối thiểu (Yêu cầu nghỉ phép của bạn phải được thực hiện trước khi trì hoãn này) NbAddedAutomatically=Số ngày được thêm vào bộ đếm của người dùng (tự động) mỗi tháng EnterAnyCode=Trường này chứa một tham chiếu để xác định dòng. Nhập bất kỳ giá trị nào bạn chọn, nhưng không có ký tự đặc biệt. -Enter0or1=Enter 0 or 1 +Enter0or1=Lỗi 0 hoặc 1 UnicodeCurrency=Nhập vào đây giữa các dấu ngoặc nhọn, danh sách số byte đại diện cho ký hiệu tiền tệ. Ví dụ: với $, nhập [36] - đối với brazil real R $ [82,36] - với €, nhập [8364] ColorFormat=Màu RGB ở định dạng HEX, ví dụ: FF0000 PositionIntoComboList=Vị trí của dòng ở trong danh sách kết hợp @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Tham chiếu Dolibarr không tìm thấy trong ID tin nhắ FormatZip=Zip MainMenuCode=Mã mục nhập menu (mainmenu) ECMAutoTree=Hiển thị cây ECM tự động -OperationParamDesc=Xác định các giá trị để sử dụng cho hành động hoặc cách trích xuất các giá trị. Ví dụ:
    objproperty1=SET:abc
    objproperty1=SET: một giá trị thay thế của __objproperty1__
    objproperty3=SETIFEMPTY: abc
    objproperty4=EXTRACT:HEADER:X-Myheaderkey.*[^\\s]+(.*)
    Options_myextrafield=EXTRACT:SUBJECT:([^\\s]*)
    object.objproperty5=EXTRACT:BODY: Tên công ty của tôi là \\s([^\\s]*)

    Sử dụng một ký tự ; như dấu phân cách để trích xuất hoặc thiết lập một số thuộc tính. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Giờ mở cửa OpeningHoursDesc=Nhập vào đây giờ mở cửa thường xuyên của công ty bạn. ResourceSetup=Cấu hình của mô-đun tài nguyên @@ -1959,13 +1973,14 @@ WarningValueHigherSlowsDramaticalyOutput=Cảnh báo, giá trị cao hơn làm c ModuleActivated=Mô-đun %s được kích hoạt và làm chậm giao diện EXPORTS_SHARE_MODELS=Mô hình xuất dữ liệu được chia sẻ với mọi người ExportSetup=Thiết lập mô-đun Xuất dữ liệu +ImportSetup=Thiết lập module nhập liệu InstanceUniqueID=ID duy nhất của đối tượng SmallerThan=Nhỏ hơn LargerThan=Lớn hơn IfTrackingIDFoundEventWillBeLinked=Lưu ý rằng nếu tìm thấy ID theo dõi trong email đến, sự kiện sẽ được tự động liên kết với các đối tượng liên quan. WithGMailYouCanCreateADedicatedPassword=Với tài khoản GMail, nếu bạn đã bật xác thực 2 bước, bạn nên tạo mật khẩu thứ hai dành riêng cho ứng dụng thay vì sử dụng mật khẩu tài khoản của riêng bạn từ https://myaccount.google.com/. -EmailCollectorTargetDir=It may be a desired behaviour to move the email into another tag/directory when it was processed successfully. Just set a value here to use this feature. Note that you must also use a read/write login account. -EmailCollectorLoadThirdPartyHelp=You can use this action to use the email content to find and load an existing thirdparty in your database. The found (or created) thirdparty will be used for following actions that need it. In the parameter field you can use for example 'EXTRACT:BODY:Name:\\s([^\\s]*)' if you want to extract the name of the thirdparty from a string 'Name: name to find' found into the body. +EmailCollectorTargetDir=Nó có thể là một hành vi mong muốn để di chuyển email vào một thẻ / thư mục khác khi nó được xử lý thành công. Chỉ cần đặt một giá trị ở đây để sử dụng tính năng này. Lưu ý rằng bạn cũng phải sử dụng tài khoản đăng nhập đọc / ghi. +EmailCollectorLoadThirdPartyHelp=Bạn có thể sử dụng hành động này để sử dụng nội dung email để tìm và tải một bên thứ ba hiện có trong cơ sở dữ liệu của bạn. Phần thứ ba được tìm thấy (hoặc được tạo) sẽ được sử dụng cho các hành động sau đây cần nó. Trong trường tham số, bạn có thể sử dụng ví dụ 'EXTRACT: BODY: Name: \\ s ([^ \\ s] *)' nếu bạn muốn trích xuất tên của bên thứ ba từ một chuỗi 'Name: name to find' được tìm thấy trong phần nội dung EndPointFor=Điểm kết thúc cho %s: %s DeleteEmailCollector=Xóa trình thu thập email ConfirmDeleteEmailCollector=Bạn có chắc chắn muốn xóa trình thu thập email này? @@ -1978,6 +1993,10 @@ NotAPublicIp=Không phải IP công cộng MakeAnonymousPing=Tạo một Ping ẩn danh '+1' cho máy chủ nền tảng Dolibarr (chỉ được thực hiện 1 lần sau khi cài đặt) để cho phép nền tảng đếm số lượng cài đặt Dolibarr. FeatureNotAvailableWithReceptionModule=Tính năng không khả dụng khi mô-đun Tiếp nhận được bật EmailTemplate=Mẫu cho email -EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. -FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +EMailsWillHaveMessageID=Email sẽ có thẻ 'Tài liệu tham khảo' khớp với cú pháp này +PDF_USE_ALSO_LANGUAGE_CODE=Nếu bạn muốn có text trong PDF của mình bằng 2 ngôn ngữ khác nhau trong cùng một tệp PDF được tạo, bạn phải đặt ở đây ngôn ngữ thứ hai này để PDF được tạo sẽ chứa 2 ngôn ngữ khác nhau trong cùng một trang, một ngôn ngữ được chọn khi tạo PDF và ngôn ngữ này ( chỉ có vài mẫu PDF hỗ trợ này). Giữ trống cho 1 ngôn ngữ trên mỗi PDF. +FafaIconSocialNetworksDesc=Nhập vào đây mã của biểu tượng FontAwgie. Nếu bạn không biết FontAwgie là gì, bạn có thể sử dụng fa-address-book +RssNote=Lưu ý: Mỗi nguồn cấp RSS cung cấp một tiện ích mà bạn phải kích hoạt để có sẵn trong bảng điều khiển +JumpToBoxes=Chuyển tới Thiết lập --> Widgets +MeasuringUnitTypeDesc=Sử dụng ở đây một giá trị như "kích thước", "diện tích", "khối lượng", "trọng lượng", "thời gian" +MeasuringScaleDesc=Thang đo là số vị trí bạn phải di chuyển phần thập phân để khớp với đơn vị tham chiếu mặc định. Đối với loại đơn vị "thời gian", đó là số giây. Giá trị từ 80 đến 99 là giá trị dành riêng. diff --git a/htdocs/langs/vi_VN/bills.lang b/htdocs/langs/vi_VN/bills.lang index 1d1d40bd268..4012e188c09 100644 --- a/htdocs/langs/vi_VN/bills.lang +++ b/htdocs/langs/vi_VN/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Hóa đơn nhà cung cấp SupplierBill=Hóa đơn nhà cung cấp SupplierBills=Hóa đơn nhà cung cấp Payment=Thanh toán -PaymentBack=Thanh toán lại -CustomerInvoicePaymentBack=Thanh toán lại +PaymentBack=Hoàn thuế +CustomerInvoicePaymentBack=Hoàn thuế Payments=Thanh toán -PaymentsBack=Refunds +PaymentsBack=Thanh toán lại paymentInInvoiceCurrency=tiền tệ trên hóa đơn PaidBack=Đã trả lại DeletePayment=Xóa thanh toán ConfirmDeletePayment=Bạn có chắc chắn muốn xóa khoản thanh toán này? -ConfirmConvertToReduc=Bạn có muốn chuyển đổi %s này thành giảm giá tuyệt đối không? +ConfirmConvertToReduc=Bạn có muốn chuyển %sthành lượng giảm giá không? ConfirmConvertToReduc2=Số tiền sẽ được lưu trong số tất cả các khoản giảm giá và có thể được sử dụng làm khoản giảm giá cho hóa đơn hiện tại hoặc tương lai cho khách hàng này. -ConfirmConvertToReducSupplier=Bạn có muốn chuyển đổi %s này thành giảm giá tuyệt đối không? +ConfirmConvertToReducSupplier=Bạn có muốn chuyển %sthành lượng giảm giá không? ConfirmConvertToReducSupplier2=Số tiền sẽ được lưu trong số tất cả các khoản giảm giá và có thể được sử dụng làm khoản giảm giá cho hóa đơn hiện tại hoặc tương lai cho nhà cung cấp này. SupplierPayments=Thanh toán của nhà cung cấp ReceivedPayments=Đã nhận thanh toán @@ -78,7 +78,7 @@ ReceivedCustomersPaymentsToValid=Đã nhận thanh toán khách hàng để xác PaymentsReportsForYear=Báo cáo thanh toán cho %s PaymentsReports=Báo cáo thanh toán PaymentsAlreadyDone=Đã thanh toán -PaymentsBackAlreadyDone=Refunds already done +PaymentsBackAlreadyDone=Đã thanh toán lại PaymentRule=Quy tắc thanh toán PaymentMode=Hình thức thanh toán PaymentTypeDC=Thẻ tín dụng/Ghi nợ @@ -209,17 +209,13 @@ NumberOfBillsByMonth=Số lượng hóa đơn mỗi tháng AmountOfBills=Số tiền của hóa đơn AmountOfBillsHT=Số tiền hóa đơn (thuế ròng) AmountOfBillsByMonthHT=Số tiền của hóa đơn theo tháng (có thuế) -ShowSocialContribution=Hiển thị thuế xã hội / tài chính -ShowBill=Hiện thị hóa đơn -ShowInvoice=Hiển thị hóa đơn -ShowInvoiceReplace=Hiển thị hóa đơn thay thế -ShowInvoiceAvoir=Xem giấy báo có -ShowInvoiceDeposit=Hiển thị hóa đơn thanh toán tiền cọc -ShowInvoiceSituation=Xem hóa đơn tình huống UseSituationInvoices=Cho phép hóa đơn tình huống UseSituationInvoicesCreditNote=Cho phép ghi chú tín dụng hóa đơn tình huống Retainedwarranty=Giữ lại bảo hành +AllowedInvoiceForRetainedWarranty=Bảo lãnh bảo hành không sử dụng với các loại hoá đơn RetainedwarrantyDefaultPercent=Giữ lại phần trăm mặc định bảo hành +RetainedwarrantyOnlyForSituation=Tạo bảo lãnh bảo hành chỉ áp dụng với hoá đơn bán hàng +RetainedwarrantyOnlyForSituationFinal=Hóa don chuẩn của "bảo lãnh bảo hành" chỉ được áp dụng vào hóa đơn cuối cùng ToPayOn=Thanh toán trên %s toPayOn=thanh toán trên %s RetainedWarranty=Giữ lại bảo hành @@ -230,7 +226,6 @@ setretainedwarranty=Thiết lập bảo hành giữ lại setretainedwarrantyDateLimit=Thiết lập ngày giới hạn bảo hành được giữ lại RetainedWarrantyDateLimit=Giới hạn ngày giữ lại bảo hành RetainedWarrantyNeed100Percent=Hóa đơn tình huống cần có ở tiến trình 100%% để được hiển thị trên PDF -ShowPayment=Hiển thị thanh toán AlreadyPaid=Đã trả AlreadyPaidBack=Đã trả lại AlreadyPaidNoCreditNotesNoDeposits=Đã thanh toán (không có ghi chú tín dụng và giảm thanh toán) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Được tạo từ hóa đơn mẫu %s WarningInvoiceDateInFuture=Cảnh báo, ngày hóa đơn cao hơn ngày hiện tại WarningInvoiceDateTooFarInFuture=Cảnh báo, ngày hóa đơn quá xa so với ngày hiện tại ViewAvailableGlobalDiscounts=Xem giảm giá có sẵn +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=Trạng thái PaymentConditionShortRECEP=Đến khi nhận @@ -416,10 +412,10 @@ PaymentConditionShort14D=14 ngày PaymentCondition14D=14 ngày PaymentConditionShort14DENDMONTH=14 ngày cuối tháng PaymentCondition14DENDMONTH=Trong vòng 14 ngày sau khi kết thúc tháng -FixAmount=Fixed amount - 1 line with label '%s' +FixAmount=Số tiền không đổi -1 dòng với nhãn là '%s' VarAmount=Số tiền thay đổi (%% tot.) VarAmountOneLine=Số tiền thay đổi (%% tot.) - 1 dòng có nhãn '%s' -VarAmountAllLines=Variable amount (%% tot.) - all same lines +VarAmountAllLines=Số lượng sai khác (%%trên tổng) - tất cả các dòng giống nhau # PaymentType PaymentTypeVIR=Chuyển khoản ngân hàng PaymentTypeShortVIR=Chuyển khoản ngân hàng @@ -509,19 +505,19 @@ ToMakePayment=Trả ToMakePaymentBack=Trả lại ListOfYourUnpaidInvoices=Danh sách các hoá đơn chưa trả NoteListOfYourUnpaidInvoices=Ghi chú: Danh sách này chỉ chứa các hoá đơn cho bên thứ ba mà bạn liên quan như là một đại diện bán hàng. -RevenueStamp=Doanh thu đóng dấu +RevenueStamp=Tem thuế YouMustCreateInvoiceFromThird=Tùy chọn này chỉ khả dụng khi tạo hóa đơn từ tab "Khách hàng" của bên thứ ba YouMustCreateInvoiceFromSupplierThird=Tùy chọn này chỉ khả dụng khi tạo hóa đơn từ tab "Nhà cung cấp" của bên thứ ba YouMustCreateStandardInvoiceFirstDesc=Trước tiên, bạn phải tạo hóa đơn chuẩn và chuyển đổi thành "mẫu" để tạo hóa đơn mẫu mới -PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template (old implementation of Sponge template) +PDFCrabeDescription=Hóa đơn mẫu PDF Crabe. Một mẫu hóa đơn đầy đủ (mẫu đề nghị) PDFSpongeDescription=Hóa đơn PDF mẫu Sponge. Một mẫu hóa đơn hoàn chỉnh PDFCrevetteDescription=Hóa đơn PDF mẫu Crevette. Mẫu hóa đơn hoàn chỉnh cho hóa đơn tình huống TerreNumRefModelDesc1=Quay về số với định dạng %ssyymm-nnnn cho hóa đơn chuẩn và %syymm-nnnn cho các giấy báo có nơi mà yy là năm, mm là tháng và nnnn là một chuỗi ngắt và không trở về 0 MarsNumRefModelDesc1=Trả về số có định dạng %syymm-nnnn cho hóa đơn tiêu chuẩn, %syymm-nnnn cho hóa đơn thay thế, %syymm-nnn cho thanh toán giảm và %syymm-nnnn cho ghi chú tín dụng khi yy là năm, mm là tháng và nnnn là chuỗi không ngăn cách và không trả về 0 TerreNumRefModelError=Bắt đầu ra một hóa đơn với $syymm mà đã tồn tại thì không tương thích với mô hình này của chuỗi. Xóa bỏ nó hoặc đổi tên nó để kích hoạt module này. CactusNumRefModelDesc1=Số trả về có định dạng %syymm-nnnn cho các hóa đơn tiêu chuẩn, %syymm-nnnn cho các ghi chú tín dụng và %syymm-nnnn cho giảm thanh toán các hóa đơn khi yy là năm, mm là tháng và nnnn là chuỗi không phân cách và không trả về 0 -EarlyClosingReason=Early closing reason -EarlyClosingComment=Early closing note +EarlyClosingReason=Lý do đóng sớm +EarlyClosingComment=Ghi chú lý do đóng sớm ##### Types de contacts ##### TypeContact_facture_internal_SALESREPFOLL=Đại diện theo dõi hóa đơn khách hàng TypeContact_facture_external_BILLING=Liên lạc hóa đơn khách hàng @@ -575,3 +571,4 @@ AutoFillDateTo=Đặt ngày kết thúc cho dòng dịch vụ với ngày hóa AutoFillDateToShort=Đặt ngày kết thúc MaxNumberOfGenerationReached=Số lượng tạo ra đạt tối đa BILL_DELETEInDolibarr=Hóa đơn đã bị xóa +BILL_SUPPLIER_DELETEInDolibarr=Hoá đơn Nhà cung cấp đã được xoá diff --git a/htdocs/langs/vi_VN/blockedlog.lang b/htdocs/langs/vi_VN/blockedlog.lang index 96ec346012a..d0ed0570da4 100644 --- a/htdocs/langs/vi_VN/blockedlog.lang +++ b/htdocs/langs/vi_VN/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Nhật ký không thể thay đổi ShowAllFingerPrintsMightBeTooLong=Hiển thị tất cả các nhật ký lưu trữ (có thể dài) ShowAllFingerPrintsErrorsMightBeTooLong=Hiển thị tất cả các nhật ký lưu trữ không hợp lệ (có thể dài) DownloadBlockChain=Tải dấu vân tay -KoCheckFingerprintValidity=Lưu trữ nhật ký không hợp lệ. Nó có nghĩa là ai đó (một hacker?) Đã sửa đổi một số dữ liệu của lần này sau khi nó được ghi lại hoặc đã xóa bản ghi lưu trữ trước đó (kiểm tra dòng đó với # tồn tại trước đó). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Bản ghi nhật ký lưu trữ là hợp lệ. Dữ liệu trên dòng này không được sửa đổi và mục nhập theo sau. OkCheckFingerprintValidityButChainIsKo=Nhật ký lưu trữ có vẻ hợp lệ so với trước đó nhưng chuỗi đã bị hỏng trước đó. AddedByAuthority=Lưu trữ vào ủy quyền từ xa diff --git a/htdocs/langs/vi_VN/cashdesk.lang b/htdocs/langs/vi_VN/cashdesk.lang index 3e7a9e7d3bd..ccfe1669ae1 100644 --- a/htdocs/langs/vi_VN/cashdesk.lang +++ b/htdocs/langs/vi_VN/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=Thêm bài viết này RestartSelling=Quay trở lại trên bán SellFinished=Hoàn thành bán hàng PrintTicket=In vé +SendTicket=Send ticket NoProductFound=Không có bài viết được tìm thấy ProductFound=sản phẩm tìm thấy NoArticle=Không có bài viết @@ -48,6 +49,7 @@ Footer=Chân trang AmountAtEndOfPeriod=Số tiền cuối kỳ (ngày, tháng hoặc năm) TheoricalAmount=Số lượng lý thuyết RealAmount=Số tiền thực tế +CashFence=Cash fence CashFenceDone=Rào cản tiền mặt được thực hiện trong kỳ NbOfInvoices=Nb của hoá đơn Paymentnumpad=Loại Bảng để nhập thanh toán @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS cần các danh mục sản phẩm để hoạt OrderNotes=Ghi chú đơn hàng CashDeskBankAccountFor=Tài khoản mặc định được sử dụng để thanh toán trong NoPaimementModesDefined=Không có chế độ thanh toán được xác định trong cấu hình TakePOS -TicketVatGrouped=Nhóm VAT theo tỷ lệ trong vé -AutoPrintTickets=Tự động in vé +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Cho phép tính năng cho Bar hoặc Restaurant ConfirmDeletionOfThisPOSSale=Bạn có xác nhận việc xóa bán hàng hiện tại này không? ConfirmDiscardOfThisPOSSale=Bạn có muốn loại bỏ bán hàng hiện tại này? @@ -87,7 +90,19 @@ HeadBar=Head Bar SortProductField=Field for sorting products Browser=Trình duyệt BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/vi_VN/companies.lang b/htdocs/langs/vi_VN/companies.lang index 63225bdbd93..f5be2da418e 100644 --- a/htdocs/langs/vi_VN/companies.lang +++ b/htdocs/langs/vi_VN/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted=Công ty "%s" đã xóa khỏi cơ sở dữ liệu. ListOfContacts=Danh sách liên lạc/địa chỉ ListOfContactsAddresses=Danh sách liên lạc/địa chỉ ListOfThirdParties=Danh sách các bên thứ ba -ShowCompany=Hiển thị bên thứ ba ShowContact=Hiện liên lạc ContactsAllShort=Tất cả (không lọc) ContactType=Loại liên lạc @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=Tên đại diện bán hàng SaleRepresentativeLastname=Họ của đại diện bán hàng ErrorThirdpartiesMerge=Có lỗi khi xóa các bên thứ ba. Vui lòng kiểm tra nhật ký. Những thay đổi đã được hoàn nguyên. NewCustomerSupplierCodeProposed=Mã khách hàng hoặc nhà cung cấp đã được sử dụng, một mã mới được đề xuất +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Loại thanh toán - Khách hàng PaymentTermsCustomer=Điều khoản thanh toán - Khách hàng diff --git a/htdocs/langs/vi_VN/compta.lang b/htdocs/langs/vi_VN/compta.lang index c6b810a1adb..7ac83c9969b 100644 --- a/htdocs/langs/vi_VN/compta.lang +++ b/htdocs/langs/vi_VN/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=Xem %s Phân tích thanh toán %s để biết tính SeeReportInDueDebtMode=Xem %s phân tích hóa đơn%s để biết cách tính toán dựa trên hóa đơn đã ghi ngay cả khi chúng chưa được hạch toán vào Sổ cái. SeeReportInBookkeepingMode=Xem %s Sổ sách báo cáo %s để biết tính toán trên bảng Sổ sách kế toán RulesAmountWithTaxIncluded=- Các khoản hiển thị là với tất cả các loại thuế bao gồm -RulesResultDue=- Nó bao gồm hóa đơn chưa thanh toán, chi phí, VAT, đóng góp cho dù chúng có được thanh toán hay không. Nó cũng bao gồm tiền lương được trả.
    - Nó được dựa trên ngày xác nhận của hóa đơn và VAT và vào ngày đáo hạn cho các chi phí. Đối với mức lương được xác định với mô-đun Lương, giá trị ngày thanh toán được sử dụng. +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- Nó bao gồm các khoản thanh toán thực tế được thực hiện trên hóa đơn, chi phí, VAT và tiền lương.
    - Nó dựa trên ngày thanh toán của hóa đơn, chi phí, VAT và tiền lương. Ngày quyên góp. -RulesCADue=- Nó bao gồm hóa đơn đáo hạn của khách hàng cho dù họ có được thanh toán hay không.
    - Nó được dựa trên ngày xác nhận của các hóa đơn này.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- Nó bao gồm tất cả các khoản thanh toán hiệu quả của hóa đơn nhận được từ khách hàng.
    - Nó được dựa trên ngày thanh toán của các hóa đơn này
    RulesCATotalSaleJournal=Nó bao gồm tất cả các hạn mức tín dụng từ nhật ký Bán hàng. RulesAmountOnInOutBookkeepingRecord=Nó bao gồm bản ghi trong Sổ cái của bạn với các tài khoản kế toán có nhóm "CHI PHÍ" hoặc "THU NHẬP" @@ -255,3 +255,10 @@ TurnoverbyVatrate=Doanh thu được lập hóa đơn theo thuế suất bán h TurnoverCollectedbyVatrate=Doanh thu được thu thập theo thuế suất bán hàng PurchasebyVatrate=Mua theo thuế suất bán hàng LabelToShow=Nhãn ngắn +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/vi_VN/errors.lang b/htdocs/langs/vi_VN/errors.lang index 58d85ee7758..fb14daeeb4d 100644 --- a/htdocs/langs/vi_VN/errors.lang +++ b/htdocs/langs/vi_VN/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=File không nhận được hoàn toàn bởi máy chủ. ErrorNoTmpDir=Directy tạm thời% s không tồn tại. ErrorUploadBlockedByAddon=Tải bị chặn bởi một plugin PHP / Apache. ErrorFileSizeTooLarge=Kích thước quá lớn. +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=Kích thước quá dài cho kiểu int (tối đa số% s) ErrorSizeTooLongForVarcharType=Kích thước quá dài cho kiểu chuỗi (ký tự tối đa% s) ErrorNoValueForSelectType=Xin vui lòng điền giá trị so với danh sách lựa chọn @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # Warnings WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Tham số PHP của bạn upload_max_filesize (%s) cao hơn tham số PHP post_max_size (%s). Đây không phải là một thiết lập phù hợp. WarningPasswordSetWithNoAccount=Một mật khẩu đã được đặt cho thành viên này. Tuy nhiên, không có tài khoản người dùng nào được tạo. Vì vậy, mật khẩu này được lưu trữ nhưng không thể được sử dụng để đăng nhập vào Dolibarr. Nó có thể được sử dụng bởi một mô-đun / giao diện bên ngoài nhưng nếu bạn không cần xác định bất kỳ thông tin đăng nhập hay mật khẩu nào cho thành viên, bạn có thể tắt tùy chọn "Quản lý đăng nhập cho từng thành viên" từ thiết lập mô-đun Thành viên. Nếu bạn cần quản lý thông tin đăng nhập nhưng không cần bất kỳ mật khẩu nào, bạn có thể để trống trường này để tránh cảnh báo này. Lưu ý: Email cũng có thể được sử dụng làm thông tin đăng nhập nếu thành viên được liên kết với người dùng. diff --git a/htdocs/langs/vi_VN/install.lang b/htdocs/langs/vi_VN/install.lang index 2a187d73221..2653ffb9df1 100644 --- a/htdocs/langs/vi_VN/install.lang +++ b/htdocs/langs/vi_VN/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=PHP này hỗ trợ Curl. PHPSupportCalendar=PHP này hỗ trợ các lịch phần mở rộng. PHPSupportUTF8=PHP này hỗ trợ các chức năng UTF8. PHPSupportIntl=PHP này hỗ trợ các chức năng Intl. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=This PHP supports %s functions. PHPMemoryOK=PHP bộ nhớ phiên tối đa của bạn được thiết lập %s. Điều này là đủ. PHPMemoryTooLow=Bộ nhớ phiên tối đa PHP của bạn được đặt thành %s byte. Điều này là quá thấp. Thay đổi php.ini của bạn để đặt tham số memory_limit thành ít nhất %s byte. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=Cài đặt PHP của bạn không hỗ trợ Curl. ErrorPHPDoesNotSupportCalendar=Cài đặt PHP của bạn không hỗ trợ các phần mở rộng lịch php. ErrorPHPDoesNotSupportUTF8=Cài đặt PHP của bạn không hỗ trợ các chức năng UTF8. Dolibarr không thể hoạt động chính xác. Giải quyết điều này trước khi cài đặt Dolibarr. ErrorPHPDoesNotSupportIntl=Cài đặt PHP của bạn không hỗ trợ các chức năng Intl. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. ErrorDirDoesNotExists=Thư mục %s không tồn tại. ErrorGoBackAndCorrectParameters=Quay lại và kiểm tra / sửa các tham số. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=Ứng dụng đã cố gắng tự nâng cấp, n YouTryInstallDisabledByFileLock=Ứng dụng đã cố gắng tự nâng cấp, nhưng các trang cài đặt / nâng cấp đã bị vô hiệu hóa để bảo mật (bởi sự tồn tại của tệp khóa install.lock trong thư mục tài liệu dolibarr).
    ClickHereToGoToApp=Nhấn vào đây để đi đến ứng dụng của bạn ClickOnLinkOrRemoveManualy=Nhấp vào liên kết sau. Nếu bạn luôn thấy cùng trang này, bạn phải xóa / đổi tên tệp install.lock trong thư mục tài liệu. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/vi_VN/link.lang b/htdocs/langs/vi_VN/link.lang index d47c82a361d..bacbeaf98e2 100644 --- a/htdocs/langs/vi_VN/link.lang +++ b/htdocs/langs/vi_VN/link.lang @@ -8,3 +8,4 @@ LinkRemoved=Liên kết %s đã bị xóa ErrorFailedToDeleteLink= Không thể xóa liên kết ' %s ' ErrorFailedToUpdateLink= Không thể cập nhật liên kết ' %s ' URLToLink=URL để liên kết +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/vi_VN/mails.lang b/htdocs/langs/vi_VN/mails.lang index 7a8f92ec982..2ebdc7e1185 100644 --- a/htdocs/langs/vi_VN/mails.lang +++ b/htdocs/langs/vi_VN/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=Không có liên lạc/địa chỉ với một danh NoContactLinkedToThirdpartieWithCategoryFound=Không có liên lạc/địa chỉ với một danh mục được tìm thấy OutGoingEmailSetup=Thiết lập email đi InGoingEmailSetup=Thiết lập email đến -OutGoingEmailSetupForEmailing=Thiết lập email gửi đi (để gửi email hàng loạt) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=Thiết lập email gửi đi mặc định Information=Thông tin ContactsWithThirdpartyFilter=Danh bạ với bộ lọc của bên thứ ba diff --git a/htdocs/langs/vi_VN/main.lang b/htdocs/langs/vi_VN/main.lang index b8c2d319e12..ab5388d128d 100644 --- a/htdocs/langs/vi_VN/main.lang +++ b/htdocs/langs/vi_VN/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Lưu và ở lại SaveAndNew=Lưu và tạo mới TestConnection=Kiểm tra kết nối ToClone=Nhân bản +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Chọn dữ liệu bạn muốn sao chép: NoCloneOptionsSpecified=Không có dữ liệu nhân bản được xác định. Of=của @@ -829,6 +830,8 @@ Gender=Giới tính Genderman=Nam Genderwoman=Nữ ViewList=Danh sách xem +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=Bắt buộc Hello=Xin chào GoodBye=Tạm biệt @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Select your graph options to build a graph Measures=Measures XAxis=X-Axis YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/vi_VN/modulebuilder.lang b/htdocs/langs/vi_VN/modulebuilder.lang index 04fc2ac7f0c..455ce16e8bb 100644 --- a/htdocs/langs/vi_VN/modulebuilder.lang +++ b/htdocs/langs/vi_VN/modulebuilder.lang @@ -83,9 +83,9 @@ ListOfDictionariesEntries=Danh sách các mục từ điển ListOfPermissionsDefined=Danh sách các quyền được định nghĩa SeeExamples=Xem ví dụ ở đây EnabledDesc=Điều kiện để có trường này hoạt động (Ví dụ: 1 hoặc $conf-> golobal->MYMODULE_MYOPTION) -VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update). Using a negative value means field is not shown by default on list but can be selected for viewing). It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene -DisplayOnPdf=Display on PDF +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty +DisplayOnPdf=Hiển thị trên file PDF IsAMeasureDesc=Giá trị của trường có thể được tích lũy để có được tổng số vào danh sách không? (Ví dụ: 1 hoặc 0) SearchAllDesc=Là trường được sử dụng để thực hiện tìm kiếm từ công cụ tìm kiếm nhanh? (Ví dụ: 1 hoặc 0) SpecDefDesc=Nhập vào đây tất cả tài liệu bạn muốn cung cấp với mô-đun chưa được xác định bởi các tab khác. Bạn có thể sử dụng .md hoặc tốt hơn, cú pháp .asciidoc đầy đủ. @@ -137,5 +137,5 @@ CSSClass=Lớp CSS NotEditable=Không thể chỉnh sửa ForeignKey=Khóa ngoại TypeOfFieldsHelp=Kiểu trường:
    varchar (99), double (24,8), real, text, html, datetime, timestamp, integer, integer:ClassName:relativepath/to/classfile.class.php[:1[:filter]] ('1' có nghĩa là chúng ta thêm nút + sau khi kết hợp để tạo bản ghi, ví dụ 'bộ lọc' có thể là 'status=1 AND fk_user = __USER_ID AND entity IN (__SHARED_ENTEER__)') -AsciiToHtmlConverter=Ascii to HTML converter -AsciiToPdfConverter=Ascii to PDF converter +AsciiToHtmlConverter=Chuyển mã ASCII sang HTML +AsciiToPdfConverter=Chuyển ASCII sang PDF diff --git a/htdocs/langs/vi_VN/multicurrency.lang b/htdocs/langs/vi_VN/multicurrency.lang new file mode 100644 index 00000000000..c5650585f4d --- /dev/null +++ b/htdocs/langs/vi_VN/multicurrency.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Đa tiền tệ +ErrorAddRateFail=Xảy ra lỗi trong thêm tỷ lệ +ErrorAddCurrencyFail=Xảy ra lỗi trong thêm tiền tệ +ErrorDeleteCurrencyFail=Lỗi xóa thất bại +multicurrency_syncronize_error=Lỗi đồng bộ hóa: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Sử dụng ngày của tài liệu để tìm tỷ giá tiền tệ, thay vì sử dụng tỷ giá mới nhất được biết +multicurrency_useOriginTx=Khi một đối tượng được tạo từ đối tượng khác, hãy giữ tỷ lệ ban đầu từ đối tượng nguồn (nếu không sử dụng tỷ lệ đã biết mới nhất) +CurrencyLayerAccount=CurrencyLayer API +CurrencyLayerAccount_help_to_synchronize=Bạn phải tạo một tài khoản trên trang web %s để sử dụng chức năng này.
    Nhận khóa API của bạn.
    Nếu bạn sử dụng tài khoản miễn phí, bạn không thể thay đổi loại tiền tệ (USD theo mặc định).
    Nếu loại tiền chính của bạn không phải là USD, ứng dụng sẽ tự động tính toán lại.

    Bạn bị giới hạn ở 1000 đồng bộ hóa mỗi tháng. +multicurrency_appId=Khóa API +multicurrency_appCurrencySource=Nguồn tiền tệ +multicurrency_alternateCurrencySource=Nguồn tiền tệ thay thế +CurrenciesUsed=Tiền tệ được sử dụng +CurrenciesUsed_help_to_add=Thêm các loại tiền tệ và tỷ lệ khác nhau mà bạn cần sử dụng cho các đề xuất , đơn đặt hàng , v.v. +rate=tỷ lệ +MulticurrencyReceived=Đã nhận, nguyên tệ +MulticurrencyRemainderToTake=Số tiền còn lại, nguyên tệ +MulticurrencyPaymentAmount=Số tiền thanh toán, nguyên tệ +AmountToOthercurrency=Số tiền chuyển (bằng tiền tệ tài khoản nhận) +CurrencyRateSyncSucceed=Tỷ giá được đồng bộ thành công +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Sử dụng tiền tệ cho hồ sơ thanh toán trực tuyến diff --git a/htdocs/langs/vi_VN/other.lang b/htdocs/langs/vi_VN/other.lang index b353e8230d4..bb29fddc9fe 100644 --- a/htdocs/langs/vi_VN/other.lang +++ b/htdocs/langs/vi_VN/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Đơn đặt hàng bán đã được xác nhận Notify_ORDER_SENTBYMAIL=Đơn đặt hàng bán được gửi email Notify_ORDER_SUPPLIER_SENTBYMAIL=Đơn đặt hàng mua được gửi qua email @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=URL của trang WEBSITE_TITLE=Tiêu đề WEBSITE_DESCRIPTION=Mô tả WEBSITE_IMAGE=Hình ảnh -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=Từ khóa LinesToImport=Dòng để nhập diff --git a/htdocs/langs/vi_VN/products.lang b/htdocs/langs/vi_VN/products.lang index 5759b620e26..1e367dc6db9 100644 --- a/htdocs/langs/vi_VN/products.lang +++ b/htdocs/langs/vi_VN/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=Công cụ này cập nhật thuế suất VAT được MassBarcodeInit=Mass barcode init MassBarcodeInitDesc=Trang này có thể được sử dụng để khởi tạo một mã vạch trên các đối tượng mà không có mã vạch xác định. Kiểm tra xem trước đó thiết lập các mô-đun mã vạch hoàn tất chưa. ProductAccountancyBuyCode=Mã tài khoản kế toán (thu mua) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=Mã tài khoản kế toán (bán) ProductAccountancySellIntraCode=Mã tài khoản kế toán (bán nội bộ) ProductAccountancySellExportCode=Mã tài khoản kế toán (xuất khẩu) @@ -165,7 +167,7 @@ SuppliersPrices=Giá nhà cung cấp SuppliersPricesOfProductsOrServices=Giá nhà cung cấp (của sản phẩm hoặc dịch vụ) CustomCode=Hải quan / Hàng hóa / HS code CountryOrigin=Nước xuất xứ -Nature=Bản chất của sản phẩm (nguyên liệu/ thành phẩm) +Nature=Nature of product (material/finished) ShortLabel=Nhãn ngắn Unit=Đơn vị p=u. diff --git a/htdocs/langs/vi_VN/projects.lang b/htdocs/langs/vi_VN/projects.lang index de89d17291b..ac2d9e2f49c 100644 --- a/htdocs/langs/vi_VN/projects.lang +++ b/htdocs/langs/vi_VN/projects.lang @@ -39,8 +39,8 @@ ShowProject=Hiển thị dự án ShowTask=Hiện tác vụ SetProject=Lập dự án NoProject=Không có dự án được xác định hoặc tự tạo -NbOfProjects=Number of projects -NbOfTasks=Number of tasks +NbOfProjects=Số dự án +NbOfTasks=Số công việc TimeSpent=Thời gian đã qua TimeSpentByYou=Thời gian đã qua bởi bạn TimeSpentByUser=Thời gian đã qua bởi người dùng @@ -69,7 +69,7 @@ NewTask=Tác vụ mới AddTask=Tạo tác vụ AddTimeSpent=Tạo thời gian đã qua AddHereTimeSpentForDay=Thêm vào đây thời gian dành cho ngày/ nhiệm vụ này -AddHereTimeSpentForWeek=Add here time spent for this week/task +AddHereTimeSpentForWeek=Thêm vào đây thời gian đã làm cho công việc của tuần này Activity=Hoạt động Activities=Tác vụ/hoạt động MyActivities=Tác vụ/hoạt động của tôi @@ -78,7 +78,7 @@ MyProjectsArea=Khu vực dự án của tôi DurationEffective=Thời hạn hiệu lực ProgressDeclared=Tiến độ công bố TaskProgressSummary=Tiến độ công việc -CurentlyOpenedTasks=Curently open tasks +CurentlyOpenedTasks=Công việc còn mở TheReportedProgressIsLessThanTheCalculatedProgressionByX=Tiến độ khai báo ít hơn %s so với tiến độ tính toán TheReportedProgressIsMoreThanTheCalculatedProgressionByX=Tiến độ khai báo là nhiều hơn %s so với tiến độ tính toán ProgressCalculated=Tiến độ được tính toán @@ -87,8 +87,6 @@ WhichIamLinkedToProject=cái mà tôi liên kết với dự án Time=Thời gian ListOfTasks=Danh sách nhiệm vụ GoToListOfTimeConsumed=Tới danh sách thời gian tiêu thụ -GoToListOfTasks=Hiển thị dưới dạng danh sách -GoToGanttView=hiển thị dưới dạng Gantt GanttView=Chế độ xem Gantt ListProposalsAssociatedProject=Danh sách các đề xuất thương mại liên quan đến dự án ListOrdersAssociatedProject=Danh sách các đơn đặt hàng bán liên quan đến dự án @@ -104,7 +102,7 @@ ListDonationsAssociatedProject=Danh sách quyên góp liên quan đến dự án ListVariousPaymentsAssociatedProject=Danh sách các khoản thanh toán khác liên quan đến dự án ListSalariesAssociatedProject=Danh sách các khoản thanh toán tiền lương liên quan đến dự án ListActionsAssociatedProject=Danh sách các sự kiện liên quan đến dự án -ListMOAssociatedProject=List of manufacturing orders related to the project +ListMOAssociatedProject=Danh sách đơn sản xuất liên quan dự án ListTaskTimeUserProject=Danh sách thời gian tiêu thụ cho các nhiệm vụ của dự án ListTaskTimeForTask=Danh sách thời gian tiêu thụ cho nhiệm vụ ActivityOnProjectToday=Hoạt động trong dự án hôm nay @@ -164,8 +162,8 @@ OpportunityProbability=Xác suất tiềm năng OpportunityProbabilityShort=Xác suất tiềm năng OpportunityAmount=Số tiền tiềm năng OpportunityAmountShort=Số tiền tiềm năng -OpportunityWeightedAmount=Opportunity weighted amount -OpportunityWeightedAmountShort=Opp. weighted amount +OpportunityWeightedAmount=Tổng trị giá cơ hội +OpportunityWeightedAmountShort=Tổng trị giá cơ hội OpportunityAmountAverageShort=Số tiền tiềm năng trung bình OpportunityAmountWeigthedShort=Số tiền tiềm năng thận trọng WonLostExcluded=Không gồm Thắng/ thua @@ -188,10 +186,10 @@ PlannedWorkload=Khối lượng công việc dự tính PlannedWorkloadShort=Khối lượng công việc ProjectReferers=Những thứ có liên quan ProjectMustBeValidatedFirst=Dự án phải được xác nhận trước -FirstAddRessourceToAllocateTime=Chỉ định tài nguyên người dùng cho nhiệm vụ để phân bổ thời gian +FirstAddRessourceToAllocateTime=Chỉ định tài nguyên người dùng làm liên hệ của dự án để phân bổ thời gian InputPerDay=Đầu vào mỗi ngày InputPerWeek=Đầu vào mỗi tuần -InputPerMonth=Input per month +InputPerMonth=Lượng nhập liệu theo tháng InputDetail=Chi tiết đầu vào TimeAlreadyRecorded=Đây là thời gian đã qua được ghi nhận cho nhiệm vụ/ ngày này và người dùng %s ProjectsWithThisUserAsContact=Dự án với người dùng này là người liên lạc @@ -240,6 +238,7 @@ LatestModifiedProjects=Dự án sửa đổi %s mới nhất OtherFilteredTasks=Các nhiệm vụ được lọc khác NoAssignedTasks=Không tìm thấy nhiệm vụ được giao (chỉ định dự án / nhiệm vụ cho người dùng hiện tại từ hộp chọn trên cùng để nhập thời gian vào nó) ThirdPartyRequiredToGenerateInvoice=Một bên thứ ba phải được xác định trong dự án để có thể lập hóa đơn. +ChooseANotYetAssignedTask=Chọn một cônng việc chưa gán cho bạn # Comments trans AllowCommentOnTask=Cho phép người dùng nhận xét về các nhiệm vụ AllowCommentOnProject=Cho phép người dùng nhận xét về các dự án @@ -254,14 +253,15 @@ TimeSpentForInvoice=Thời gian đã qua OneLinePerUser=Một dòng trên mỗi người dùng ServiceToUseOnLines=Dịch vụ được sử dụng trên các dòng InvoiceGeneratedFromTimeSpent=Hóa đơn %s đã được tạo từ thời gian dành đã qua trên dự án -ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. +ProjectBillTimeDescription=Kiểm tra xem bạn nhập bảng thời gian vào các nhiệm vụ của dự án VÀ bạn có kế hoạch tạo (các) hóa đơn từ bảng chấm công để lập hóa đơn cho khách hàng của dự án (không kiểm tra xem bạn có kế hoạch tạo hóa đơn không dựa trên bảng thời gian đã nhập không). Lưu ý: Để tạo hóa đơn, hãy chuyển đến tab 'Thời gian sử dụng' của dự án và chọn các dòng để đưa vào. ProjectFollowOpportunity=Theo dõi cơ hội -ProjectFollowTasks=Theo dõi các nhiệm vụ -Usage=Usage +ProjectFollowTasks=Follow tasks or time spent +Usage=Chức năng UsageOpportunity=Cách dùng: Cơ hội UsageTasks=Cách dùng: Nhiệm vụ UsageBillTimeShort=Cách dùng: Hóa đơn thời gian -InvoiceToUse=Draft invoice to use +InvoiceToUse=Hoá đơn dự thảo sử dụng NewInvoice=Hóa đơn mới -OneLinePerTask=One line per task -OneLinePerPeriod=One line per period +OneLinePerTask=Dòng dòng một công việc +OneLinePerPeriod=Một dòng cho một khoảng thời gian +RefTaskParent=Tham chiếu công việc cấp cha diff --git a/htdocs/langs/vi_VN/receiptprinter.lang b/htdocs/langs/vi_VN/receiptprinter.lang index a7bf9271929..1e516ff0f89 100644 --- a/htdocs/langs/vi_VN/receiptprinter.lang +++ b/htdocs/langs/vi_VN/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=Máy in giả CONNECTOR_NETWORK_PRINT=Máy in mạng CONNECTOR_FILE_PRINT=Máy in cục bộ CONNECTOR_WINDOWS_PRINT=Máy in Windows cục bộ +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=Máy in giả để kiểm tra, không làm gì cả CONNECTOR_NETWORK_PRINT_HELP=10.xxx:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=Hồ sơ mặc định PROFILE_SIMPLE=Hồ sơ đơn giản PROFILE_EPOSTEP=Hồ sơ Epose Tep @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Invoice month in letters DOL_VALUE_MONTH=Invoice month DOL_VALUE_DAY=Invoice day DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Hóa đơn tham chiếu +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=ID VAT Nội bộ Cộng đồng +DOL_VALUE_MYSOC_CAPITAL=Vốn +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/vi_VN/stripe.lang b/htdocs/langs/vi_VN/stripe.lang index 0e1d2c75412..5d18304fdef 100644 --- a/htdocs/langs/vi_VN/stripe.lang +++ b/htdocs/langs/vi_VN/stripe.lang @@ -32,6 +32,7 @@ VendorName=Tên nhà cung cấp CSSUrlForPaymentForm=CSS style sheet Url cho hình thức thanh toán NewStripePaymentReceived=Đã nhận thanh toán Stripe mới NewStripePaymentFailed=Thanh toán Stripe mới đã thử nhưng không thành công +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=Khóa kiểm tra bí mật STRIPE_TEST_PUBLISHABLE_KEY=Khóa kiểm tra có thể xuất bản STRIPE_TEST_WEBHOOK_KEY=Khóa kiểm tra webhook @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Liên kết để thiết lập Stripe WebHook để ToOfferALinkForLiveWebhook=Liên kết để thiết lập Stripe WebHook để gọi IPN (chế độ trực tiếp) PaymentWillBeRecordedForNextPeriod=Thanh toán sẽ được ghi lại cho giai đoạn tiếp theo. ClickHereToTryAgain=Bấm vào đây để thử lại... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authenticatin rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/vi_VN/users.lang b/htdocs/langs/vi_VN/users.lang index 33e533443af..97c911d59d0 100644 --- a/htdocs/langs/vi_VN/users.lang +++ b/htdocs/langs/vi_VN/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=Người dùng và các tính chất của họ DomainUser=Domain người dùng %s Reactivate=Kích hoạt lại CreateInternalUserDesc=Biểu mẫu này cho phép bạn tạo một người dùng nội bộ trong công ty/ tổ chức của bạn. Để tạo người dùng bên ngoài (khách hàng, nhà cung cấp, v.v.), hãy sử dụng nút 'Tạo Người dùng Dolibarr' từ thẻ liên lạc của bên thứ ba đó. -InternalExternalDesc=Người dùng nội bộ là người dùng là một phần của công ty/ tổ chức của bạn.
    Một người dùng bên ngoài là một khách hàng, nhà cung cấp hoặc người khác.

    Trong cả hai trường hợp, quyền để phân quyền trên Dolibarr, người dùng bên ngoài cũng có thể có trình quản lý menu khác với người dùng nội bộ (Xem Trang chủ - Cài đặt - Hiển thị) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=Quyền được cấp bởi vì được thừa hưởng từ một trong những nhóm của người dùng. Inherited=Được thừa kế UserWillBeInternalUser=Người dùng tạo ra sẽ là một người dùng nội bộ (vì không liên kết với một bên thứ ba cụ thể) @@ -113,3 +113,5 @@ CantDisableYourself=Bạn không thể vô hiệu hóa hồ sơ người dùng c ForceUserExpenseValidator=Thúc phê duyệt báo cáo chi phí ForceUserHolidayValidator=Thúc phê duyệt báo cáo chi phí ValidatorIsSupervisorByDefault=Theo mặc định, việc xác nhận là người giám sát của người dùng. Giữ trống để giữ hành vi này. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/vi_VN/website.lang b/htdocs/langs/vi_VN/website.lang index 68db7fce100..7bf4ff832ce 100644 --- a/htdocs/langs/vi_VN/website.lang +++ b/htdocs/langs/vi_VN/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=Xem trang trong tab mới SetAsHomePage=Đặt làm trang chủ RealURL=URL thật ViewWebsiteInProduction=Xem trang web bằng URL nhà -SetHereVirtualHost=Sử dụng với Apache / NGinx / ...
    Nếu bạn có thể tạo, trên máy chủ web của bạn (Apache, Nginx, ...), Máy chủ ảo chuyên dụng có bật PHP và thư mục Root trên
    %s
    sau đó đặt tên của máy chủ ảo mà bạn đã tạo trong các thuộc tính của trang web, do đó, việc xem trước cũng có thể được thực hiện bằng cách sử dụng quyền truy cập máy chủ web chuyên dụng này thay vì máy chủ Dolibarr nội bộ. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS=Sử dụng với máy chủ nhúng PHP
    Trên môi trường phát triển, bạn có thể muốn kiểm tra trang web với máy chủ web nhúng PHP (yêu cầu PHP 5.5) bằng cách chạy
    php -S 0.0.0.0:8080 -t %s YouCanAlsoDeployToAnotherWHP=Chạy trang web của bạn với một nhà cung cấp Dolibarr Hosting khác
    Nếu bạn không có máy chủ web như Apache hoặc NGinx có sẵn trên internet, bạn có thể xuất và nhập trang web của mình vào một phiên bản Dolibarr khác được cung cấp bởi một nhà cung cấp dịch vụ lưu trữ Dolibarr khác cung cấp tích hợp đầy đủ với mô-đun Trang web. Bạn có thể tìm thấy danh sách một số nhà cung cấp dịch vụ lưu trữ Dolibarr trên https://saas.dolibarr.org CheckVirtualHostPerms=Kiểm tra xem máy chủ ảo có quyền %s trên các tệp vào
    %s @@ -56,7 +57,7 @@ NoPageYet=Chưa có trang nào YouCanCreatePageOrImportTemplate=Bạn có thể tạo một trang mới hoặc nhập một mẫu trang web đầy đủ SyntaxHelp=Trợ giúp về các mẹo cú pháp cụ thể YouCanEditHtmlSourceckeditor=Bạn có thể chỉnh sửa mã nguồn HTML bằng nút "Nguồn" trong trình chỉnh sửa. -YouCanEditHtmlSource=
    Bạn có thể đưa mã PHP vào nguồn này bằng cách sử dụng thẻ ; . Các biến toàn cục sau đây có sẵn: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    Bạn cũng có thể bao gồm nội dung của Trang / Vùng chứa khác với cú pháp sau:


    Bạn có thể thực hiện chuyển hướng đến Trang / Vùng chứa khác theo cú pháp sau (Lưu ý: không xuất bất kỳ nội dung nào trước khi chuyển hướng):


    Để thêm một liên kết đến một trang khác, sử dụng cú pháp:
    mylink

    Để bao gồm một liên kết để tải xuống một tệp được lưu trữ trong thư mục tài liệu , hãy sử dụng trình bao bọc document.php :
    Ví dụ, đối với một tệp thành tài liệu /ecm (cần phải đăng nhập), cú pháp là:

    Đối với một tệp thành tài liệu / phương tiện (thư mục mở để truy cập công khai), cú pháp là:

    Đối với tệp được chia sẻ với liên kết chia sẻ (truy cập mở bằng khóa băm chia sẻ của tệp), cú pháp là:


    Để bao gồm một hình ảnh được lưu trữ trong thư mục tài liệu , hãy sử dụng trình bao bọc viewimage.php :
    Ví dụ, đối với một hình ảnh thành tài liệu / phương tiện (thư mục mở để truy cập công khai), cú pháp là:


    Các ví dụ khác về HTML hoặc mã động có sẵn trên
    tài liệu wiki
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=Nhân bản Trang / vùng chứa CloneSite=Nhân bản trang web SiteAdded=Đã thêm trang web @@ -76,7 +77,7 @@ BlogPost=Bài viết trên blog WebsiteAccount=Tài khoản trang web WebsiteAccounts=Tài khoản trang web AddWebsiteAccount=Tạo tài khoản trang web -BackToListOfThirdParty=Quay lại danh sách cho bên thứ ba +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=Vô hiệu hóa trang web đầu tiên MyContainerTitle=Tiêu đề trang web của tôi AnotherContainer=Đây là cách bao gồm nội dung của trang / vùng chứa khác (bạn có thể gặp lỗi ở đây nếu bạn bật mã động vì nhà cung cấp phụ được nhúng có thể không tồn tại) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Xin lỗi, trang web này hiện đang tắt. Vui WEBSITE_USE_WEBSITE_ACCOUNTS=Kích hoạt bảng tài khoản trang web WEBSITE_USE_WEBSITE_ACCOUNTSTooltip=Cho phép bảng để lưu trữ tài khoản trang web (đăng nhập / mật khẩu) cho mỗi trang web / bên thứ ba YouMustDefineTheHomePage=Trước tiên bạn phải xác định Trang chủ mặc định -OnlyEditionOfSourceForGrabbedContentFuture=Cảnh báo: Tạo trang web bằng cách nhập trang web bên ngoài được dành riêng cho người dùng có kinh nghiệm. Tùy thuộc vào độ phức tạp của trang nguồn, kết quả nhập có thể khác với trang gốc. Ngoài ra, nếu trang nguồn sử dụng các kiểu CSS phổ biến hoặc javascript xung đột, nó có thể phá vỡ giao diện hoặc tính năng của trình chỉnh sửa Trang web khi làm việc trên trang này. Phương pháp này là một cách nhanh hơn để tạo một trang nhưng bạn nên tạo trang mới của mình từ đầu hoặc từ một mẫu trang được đề xuất.
    Cũng lưu ý rằng có thể chỉnh sửa nguồn HTML khi nội dung trang đã được khởi tạo bằng cách lấy nó từ một trang bên ngoài (trình chỉnh sửa "Trực tuyến" sẽ KHÔNG khả dụng) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=Chỉ có phiên bản nguồn HTML khi nội dung được lấy từ một trang bên ngoài GrabImagesInto=Lấy hình ảnh cũng được tìm thấy trong css và trang. ImagesShouldBeSavedInto=Hình ảnh nên được lưu vào thư mục @@ -121,6 +122,9 @@ BackToHomePage=Quay lại trang chủ... TranslationLinks=Liên kết dịch YouTryToAccessToAFileThatIsNotAWebsitePage=Bạn cố gắng truy cập vào một trang không phải là trang web UseTextBetween5And70Chars=Để thực hành SEO tốt, hãy sử dụng văn bản có từ 5 đến 70 ký tự -MainLanguage=Main language -OtherLanguages=Other languages -UseManifest=Provide a manifest.json file +MainLanguage=Ngôn ngữ chính +OtherLanguages=Ngôn ngữ khác +UseManifest=Cung cấp một file manifest.json +PublicAuthorAlias=Tên tác giả công khai +AvailableLanguagesAreDefinedIntoWebsiteProperties=Các ngôn ngữ hiện hữu để thiết lập vào thuộc tính website +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/vi_VN/zapier.lang b/htdocs/langs/vi_VN/zapier.lang new file mode 100644 index 00000000000..33d5ee1fd5a --- /dev/null +++ b/htdocs/langs/vi_VN/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier cho Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Mô-đun Zapier cho Dolibarr + +# +# Admin page +# +ZapierForDolibarrSetup = Thiết lập Zapier cho Dolibarr diff --git a/htdocs/langs/zh_CN/accountancy.lang b/htdocs/langs/zh_CN/accountancy.lang index be64eed4ec2..4cd78fc7e6d 100644 --- a/htdocs/langs/zh_CN/accountancy.lang +++ b/htdocs/langs/zh_CN/accountancy.lang @@ -121,6 +121,7 @@ InvoiceLinesDone=已绑定的发票行 ExpenseReportLines=要绑定的费用行报告 ExpenseReportLinesDone=已绑定的费用报告行 IntoAccount=用会计科目绑定行 +TotalForAccount=Total for accounting account Ventilate=绑定 @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=会计科目-登记捐款 ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_ACCOUNT=销售产品的默认会计科目(如果未在产品说明书中定义,则使用) ACCOUNTING_PRODUCT_SOLD_INTRA_ACCOUNT=Accounting account by default for the products sold in EEC (used if not defined in the product sheet) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported out of EEC (used if not defined in the product sheet) + ACCOUNTING_SERVICE_BUY_ACCOUNT=已购买服务的默认会计科目(如果未在服务单中定义,则使用) +ACCOUNTING_SERVICE_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_ACCOUNT=默认情况下,已售出服务的会计科目(如果未在服务单中定义,则使用) ACCOUNTING_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unkno ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error PaymentsNotLinkedToProduct=付款未与任何产品/服务相关联 +OpeningBalance=Opening balance ShowOpeningBalance=Show opening balance HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group Pcgtype=帐户组 PcgtypeDesc=Group 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. +Reconcilable=Reconcilable + TotalVente=Total turnover before tax TotalMarge=总销售利润率 @@ -307,11 +317,13 @@ 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=导出CSV可配置 Modelcsv_FEC=Export FEC Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta ChartofaccountsId=会计科目表ID ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=销售模式 OptionModeProductSellIntra=Mode sales exported in EEC OptionModeProductSellExport=Mode sales exported in other countries OptionModeProductBuy=采购模式 +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries OptionModeProductSellDesc=显示所有具有销售会计帐户的产品。 OptionModeProductSellIntraDesc=Show all products with accounting account for sales in EEC. OptionModeProductSellExportDesc=Show all products with accounting account for other foreign sales. OptionModeProductBuyDesc=显示所有带有会计帐户的产品。 +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign purchases. CleanFixHistory=将不存在于会计科目表中的行删除科目代码 CleanHistory=重置所选年份的所有绑定 PredefinedGroups=预定义的组 @@ -338,6 +354,8 @@ AccountRemovedFromGroup=Account removed from group SaleLocal=Local sale SaleExport=Export sale SaleEEC=Sale in EEC +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. ## Dictionary Range=会计科目范围 diff --git a/htdocs/langs/zh_CN/admin.lang b/htdocs/langs/zh_CN/admin.lang index 5afa44d00c2..abb3d411bfc 100644 --- a/htdocs/langs/zh_CN/admin.lang +++ b/htdocs/langs/zh_CN/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=Web 服务器用户/组 NoSessionFound=Your PHP configuration seems to not allow listing of active sessions. The directory used to save sessions (%s) may be protected (for example by OS permissions or by PHP directive open_basedir). DBStoringCharset=数据库保存数据的字符编码 DBSortingCharset=数据库排序数据的字符编码 +HostCharset=Host charset ClientCharset=客户端的字符编码 ClientSortingCharset=客户核对 WarningModuleNotActive= %s 模块必须启用 @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the NoMaxSizeByPHPLimit=注:您的 PHP 配置参数中没有设置限制 MaxSizeForUploadedFiles=上传文件的最大尺寸(0表示不允许上传) UseCaptchaCode=登陆页面启用图形验证码 -AntiVirusCommand= 防毒命令的完整路径 -AntiVirusCommandExample= ClamWin 示例:c:\\Progra~1\\ClamWin\\bin\\clamscan.exe
    ClamAv 实例:/usr/bin/clamscan +AntiVirusCommand=防毒命令的完整路径 +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= 更多命令行参数 -AntiVirusParamExample= ClamWin的示例: - database =“C:\\ Program Files(x86)\\ ClamWin \\ lib” +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=会计模块设置 UserSetup=用户管理设置 MultiCurrencySetup=多币种设置 @@ -199,7 +200,7 @@ FeatureDisabledInDemo=功能在演示版中已禁用 FeatureAvailableOnlyOnStable=功能仅适用于官方稳定版本 BoxesDesc=资讯框是一些页面中显示信息的屏幕区域。你可以选择目标页面并点击“启用”或垃圾桶按钮来显示或禁用这些信息域。 OnlyActiveElementsAreShown=仅显示 已启用模块 的元素。 -ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button (at end of module line) to enable/disable a module/application. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. ModulesMarketPlaceDesc=你能在外部互联网查找到并下载更多的功能模块... ModulesDeployDesc=If permissions on your file system allow it, you can use this tool to deploy an external module. The module will then be visible on the tab %s. ModulesMarketPlaces=更多模块... @@ -212,6 +213,7 @@ CompatibleUpTo=与版本%s兼容 NotCompatible=此模块似乎与您的Dolibarr %s(Min %s - Max %s)不兼容。 CompatibleAfterUpdate=此模块需要更新Dolibarr %s(Min %s - Max %s)。 SeeInMarkerPlace=在市场上看到 +SeeSetupOfModule=参见模块设置 %s Updated=已更新 Nouveauté=新颖 AchatTelechargement=购买/下载 @@ -221,6 +223,7 @@ DoliPartnersDesc=List of companies providing custom-developed modules or feature WebSiteDesc=参考网址查找更多模块... DevelopYourModuleDesc=一些开发自己模块的解决方案...... URL=网址 +RelativeURL=Relative URL BoxesAvailable=插件可用 BoxesActivated=插件已启用 ActivateOn=启用 @@ -425,7 +428,7 @@ ExtrafieldCheckBox=复选框 ExtrafieldCheckBoxFromList=表格中的复选框 ExtrafieldLink=连接到对象 ComputedFormula=计算字段 -ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' Computedpersistent=Store computed field ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! ExtrafieldParamHelpPassword=Leaving this field blank means this value will be stored without encryption (field must be only hidden with star on screen).
    Set 'auto' to use the default encryption rule to save password into database (then value read will be the hash only, no way to retrieve original value) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=不填表示使用默认值 DefaultLink=默认链接 SetAsDefault=设为默认 ValueOverwrittenByUserSetup=警告,此设置可能被用户设置所覆盖(用户可以设置各自的网络电话链接) -ExternalModule=附加模块 - 安装于 %s 目录下 +ExternalModule=External module +InstalledInto=Installed into directory %s BarcodeInitForthird-parties=Mass barcode init for third-parties BarcodeInitForProductsOrServices=产品或服务条码批量初始化或重置 CurrentlyNWithoutBarCode=目前,您在 %s %s上没有定义条形码时有 %s 记录。 @@ -947,7 +951,7 @@ DictionaryCanton=States/Provinces DictionaryRegion=地区 DictionaryCountry=国家 DictionaryCurrency=货币 -DictionaryCivility=Title of civility +DictionaryCivility=Honorific titles DictionaryActions=活动议程类型 DictionarySocialContributions=Types of social or fiscal taxes DictionaryVAT=增值税率和消费税率 @@ -988,6 +992,7 @@ VATIsNotUsedDesc=By default the proposed Sales tax is 0 which can be used for ca VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. ##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax LTRate=税率 LocalTax1IsNotUsed=不使用第二税率 LocalTax1IsUsedDesc=Use a second type of tax (other than first one) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices LocalTax2IsNotUsedDescES=默认情况下,建议IRPF为0。规则结束。 LocalTax2IsUsedExampleES=在西班牙,提供服务的自由职业者和独立专业人士以及选择模块税制的公司。 LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) CalcLocaltax=地税报表 CalcLocaltax1=销售 - 采购 CalcLocaltax1Desc=地税报表已经分别计算了在销售和采购时所产生的不同税。 @@ -1018,6 +1026,7 @@ CalcLocaltax2=采购 CalcLocaltax2Desc=地税报表是采购总计 CalcLocaltax3=销售 CalcLocaltax3Desc=地税报表是销售总计 +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax LabelUsedByDefault=如果代码没有翻译则默认使用以下标签 LabelOnDocuments=文档中的标签 LabelOrTranslationKey=Label or translation key @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=Expense report to approve Delays_MAIN_DELAY_HOLIDAYS=Leave requests 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. +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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. SetupDescription5=Other Setup menu entries manage optional parameters. LogEvents=安全稽核事件 Audit=安全稽核 @@ -1128,7 +1137,7 @@ LogEventDesc=Enable logging for specific security events. Administrators the log AreaForAdminOnly=此功能仅供管理员用户 使用。 SystemInfoDesc=系统信息指以只读方式显示的其它技术信息,只对系统管理员可见。 SystemAreaForAdminOnly=This area is available to administrator users only. Dolibarr user permissions cannot change this restriction. -CompanyFundationDesc=Edit the information of the company/entity. Click on "%s" button at the bottom of the page. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. AccountantFileNumber=Accountant code DisplayDesc=Parameters affecting the look and behaviour of Dolibarr can be modified here. @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=Rules to generate and validate passwords DisableForgetPasswordLinkOnLogonPage=Do not show the "Password Forgotten" link on the Login page UsersSetup=用户模块设置 UserMailRequired=Email required to create a new user +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record ##### HRM setup ##### HRMSetup=人力资源管理模块设置 ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=发票文档模板 BillsPDFModulesAccordindToInvoiceType=Invoice documents models according to invoice type PaymentsPDFModules=付款文件模型 ForceInvoiceDate=强制发票中的日期为确认日期 -SuggestedPaymentModesIfNotDefinedInInvoice=如果发票中未设置付款方式,设置一个默认值付款方式。 +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice SuggestPaymentByRIBOnAccount=Suggest payment by withdrawal on account SuggestPaymentByChequeToAddress=Suggest payment by check to FreeLegalTextOnInvoices=发票中的额外说明文本 @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=Vendor payments setup PropalSetup=报价单模块设置 ProposalsNumberingModules=报价单编号模块 ProposalsPDFModules=报价单文档模板 -SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined for proposal +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal FreeLegalTextOnProposal=报价单中的额外说明文本 WatermarkOnDraftProposal=为商业计划书草案添加水印(无则留空) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=询问银行账户 @@ -1322,6 +1334,7 @@ WAREHOUSE_ASK_WAREHOUSE_DURING_ORDER=要求仓库来源订购 ##### Suppliers Orders ##### BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_ORDER=询问采购订单的银行帐户目的地 ##### Orders ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order OrdersSetup=Sales Orders management setup OrdersNumberingModules=订单编号模块 OrdersModelModule=订单文档模板 @@ -1720,7 +1733,7 @@ MultiCompanySetup=多公司模块设置 ##### Suppliers ##### SuppliersSetup=Vendor module setup SuppliersCommandModel=Complete template of Purchase Order -SuppliersCommandModelMuscadet=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) SuppliersInvoiceModel=Complete template of Vendor Invoice SuppliersInvoiceNumberingModel=Vendor invoices numbering models IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval @@ -1792,6 +1805,7 @@ TopMenuDisableImages=隐藏顶部菜单图片 LeftMenuBackgroundColor=左侧菜单背景颜色 BackgroundTableTitleColor=清单表格表头背景颜色 BackgroundTableTitleTextColor=表标题行的文本颜色 +BackgroundTableTitleTextlinkColor=Text color for Table title link line BackgroundTableLineOddColor=表格奇数背景颜色 BackgroundTableLineEvenColor=表格偶数背景颜色 MinimumNoticePeriod=最小通知间隔 @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=Dolibarr Reference not found in Message ID FormatZip=邮编 MainMenuCode=Menu entry code (mainmenu) ECMAutoTree=Show automatic ECM tree -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. +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=Opening hours OpeningHoursDesc=Enter here the regular opening hours of your company. ResourceSetup=Configuration of Resource module @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramatical ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export +ImportSetup=Setup of module Import InstanceUniqueID=Unique ID of the instance SmallerThan=Smaller than LargerThan=Larger than @@ -1979,5 +1994,9 @@ MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled EmailTemplate=Template for email EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax -PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some text title in your PDF duplicated in 2 different languages in the same generate PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/zh_CN/bills.lang b/htdocs/langs/zh_CN/bills.lang index 866a4c523d0..2e40a958f6f 100644 --- a/htdocs/langs/zh_CN/bills.lang +++ b/htdocs/langs/zh_CN/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=Vendors invoices SupplierBill=Vendor invoice SupplierBills=供应商发票 Payment=付款 -PaymentBack=付款 -CustomerInvoicePaymentBack=付款 +PaymentBack=Refund +CustomerInvoicePaymentBack=Refund Payments=付款 PaymentsBack=Refunds paymentInInvoiceCurrency=在发票货币 PaidBack=已退款 DeletePayment=删除付款 ConfirmDeletePayment=您确定要删除此付款吗? -ConfirmConvertToReduc=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. -ConfirmConvertToReducSupplier=Do you want to convert this %s into an absolute discount? +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. SupplierPayments=Vendor payments ReceivedPayments=收到的付款 @@ -209,17 +209,13 @@ NumberOfBillsByMonth=No. of invoices per month AmountOfBills=发票金额 AmountOfBillsHT=Amount of invoices (net of tax) AmountOfBillsByMonthHT=按月发票金额 (税后) -ShowSocialContribution=显示财政税/增值税 -ShowBill=显示发票 -ShowInvoice=显示发票 -ShowInvoiceReplace=显示替换发票 -ShowInvoiceAvoir=显示信用记录 -ShowInvoiceDeposit=显示付款发票 -ShowInvoiceSituation=显示情况发票 UseSituationInvoices=Allow situation invoice UseSituationInvoicesCreditNote=Allow situation invoice credit note Retainedwarranty=Retained warranty +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation ToPayOn=To pay on %s toPayOn=to pay on %s RetainedWarranty=Retained Warranty @@ -230,7 +226,6 @@ 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=已经支付(没有信用票据和预付款) @@ -390,6 +385,7 @@ GeneratedFromTemplate=Generated from template invoice %s WarningInvoiceDateInFuture=警告,发票日期高于当前日期 WarningInvoiceDateTooFarInFuture=警告,发票日期与当前日期相差太远 ViewAvailableGlobalDiscounts=查看可用折扣 +GroupPaymentsByModOnReports=Group payments by mode on reports # PaymentConditions Statut=状态 PaymentConditionShortRECEP=由于收到 @@ -509,7 +505,7 @@ ToMakePayment=支付 ToMakePaymentBack=支付 ListOfYourUnpaidInvoices=未付发票清单 NoteListOfYourUnpaidInvoices=注:此清单只包含链接到指派给您作为销售代表的合作方发票。 -RevenueStamp=印花税票 +RevenueStamp=Tax stamp YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party YouMustCreateStandardInvoiceFirstDesc=您必须先创建标准发票并将其转换为“模板”以创建新模板发票 @@ -575,3 +571,4 @@ AutoFillDateTo=使用下一个发票日期设置服务项目的结束日期 AutoFillDateToShort=设置结束日期 MaxNumberOfGenerationReached=最大数量。到达 BILL_DELETEInDolibarr=发票已删除 +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/zh_CN/blockedlog.lang b/htdocs/langs/zh_CN/blockedlog.lang index 7b122b28452..ce7718f76c4 100644 --- a/htdocs/langs/zh_CN/blockedlog.lang +++ b/htdocs/langs/zh_CN/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=Unalterable logs ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) DownloadBlockChain=Download fingerprints -KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this re after it was recorded, or has erased the previous archived record (check that line with previous # exists). +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. AddedByAuthority=Stored into remote authority diff --git a/htdocs/langs/zh_CN/cashdesk.lang b/htdocs/langs/zh_CN/cashdesk.lang index c2fd056546a..92be0b9ad8a 100644 --- a/htdocs/langs/zh_CN/cashdesk.lang +++ b/htdocs/langs/zh_CN/cashdesk.lang @@ -16,6 +16,7 @@ AddThisArticle=添加项目 RestartSelling=回去就卖 SellFinished=销售完成 PrintTicket=打印零售记录 +SendTicket=Send ticket NoProductFound=空空如也——没有找到项目 ProductFound=找到产品 NoArticle=没有项目 @@ -48,6 +49,7 @@ Footer=Footer AmountAtEndOfPeriod=Amount at end of period (day, month or year) TheoricalAmount=Theorical amount RealAmount=Real amount +CashFence=Cash fence CashFenceDone=Cash fence done for the period NbOfInvoices=发票数 Paymentnumpad=Type of Pad to enter payment @@ -58,8 +60,9 @@ TakeposNeedsCategories=TakePOS needs product categories to work OrderNotes=Order Notes CashDeskBankAccountFor=Default account to use for payments in NoPaimementModesDefined=No paiment mode defined in TakePOS configuration -TicketVatGrouped=Group VAT by rate in tickets -AutoPrintTickets=Automatically print tickets +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? @@ -87,7 +90,19 @@ HeadBar=Head Bar SortProductField=Field for sorting products Browser=浏览器 BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. PrintMethod=Print method ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for cash desk +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use diff --git a/htdocs/langs/zh_CN/companies.lang b/htdocs/langs/zh_CN/companies.lang index 8f920f891d1..3491674f194 100644 --- a/htdocs/langs/zh_CN/companies.lang +++ b/htdocs/langs/zh_CN/companies.lang @@ -325,7 +325,6 @@ CompanyDeleted=公司“%的”从数据库中删除。 ListOfContacts=联系人列表 ListOfContactsAddresses=联系人列表 ListOfThirdParties=List of Third Parties -ShowCompany=Show Third Party ShowContact=显示联系人 ContactsAllShort=全部 (不筛选) ContactType=联系人类型 @@ -447,6 +446,7 @@ SaleRepresentativeFirstname=销售代表的名字 SaleRepresentativeLastname=销售代表的姓氏 ErrorThirdpartiesMerge=删除第三方时出错。请检查日志。变更已被恢复。 NewCustomerSupplierCodeProposed=Customer or Vendor code already used, a new code is suggested +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address #Imports PaymentTypeCustomer=Payment Type - Customer PaymentTermsCustomer=Payment Terms - Customer diff --git a/htdocs/langs/zh_CN/compta.lang b/htdocs/langs/zh_CN/compta.lang index af8ca4a19e6..a861221bd87 100644 --- a/htdocs/langs/zh_CN/compta.lang +++ b/htdocs/langs/zh_CN/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=有关实际付款的计算,请参阅%s of payments SeeReportInDueDebtMode=请参阅%s对invoices%s的分析,以便根据已知的记录发票进行计算,即使它们尚未计入分类帐。 SeeReportInBookkeepingMode=有关簿记分类帐表的计算,请参阅 %sBookeeping report%s RulesAmountWithTaxIncluded=- 所示金额均含税 -RulesResultDue=- 它包括未付的发票,费用,增值税和捐款。还包括带薪工资。
    - 它基于发票和增值税的确认日期以及费用到期日。对于使用Salary模块定义的工资,使用付款的起息日期。 +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. RulesResultInOut=- 它包括发票,费用,增值税和工资的实际付款。
    - 它基于发票,费用,增值税和工资的付款日期。捐赠的捐赠日期。 -RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the validation date of these invoices.
    +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    RulesCATotalSaleJournal=它包括Sale日常报表中的所有信用额度。 RulesAmountOnInOutBookkeepingRecord=它包括在您的账目中记录具有“EXPENSE”或“INCOME”组的会计科目 @@ -255,3 +255,10 @@ TurnoverbyVatrate=营业税按销售税率开具 TurnoverCollectedbyVatrate=按销售税率收取的营业额 PurchasebyVatrate=按销售税率购买 LabelToShow=标签别名 +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected diff --git a/htdocs/langs/zh_CN/donations.lang b/htdocs/langs/zh_CN/donations.lang index 74050e572c2..ba7103cc726 100644 --- a/htdocs/langs/zh_CN/donations.lang +++ b/htdocs/langs/zh_CN/donations.lang @@ -6,8 +6,7 @@ Donor=捐赠者 AddDonation=新建捐赠 NewDonation=新捐赠 DeleteADonation=删除捐赠 -ConfirmDeleteADonation=Are you sure you want to delete this donation? -ShowDonation=显示捐赠 +ConfirmDeleteADonation=您确定要删除此捐款吗? PublicDonation=市民捐款 DonationsArea=捐赠区 DonationStatusPromiseNotValidated=草案承诺 @@ -17,6 +16,7 @@ DonationStatusPromiseNotValidatedShort=草稿 DonationStatusPromiseValidatedShort=验证 DonationStatusPaidShort=收稿 DonationTitle=捐款收据 +DonationDate=Donation date DonationDatePayment=付款日期 ValidPromess=验证承诺 DonationReceipt=捐款收据 @@ -31,4 +31,4 @@ DONATION_ART200=从CGI显示200笔 DONATION_ART238=从CGI显示238笔 DONATION_ART885=从CGI显示885笔 DonationPayment=捐赠付款 -DonationValidated=Donation %s validated +DonationValidated=捐赠%s经过验证 diff --git a/htdocs/langs/zh_CN/errors.lang b/htdocs/langs/zh_CN/errors.lang index 2205f13963c..ba3f2328466 100644 --- a/htdocs/langs/zh_CN/errors.lang +++ b/htdocs/langs/zh_CN/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=文件未收到了完全由服务器。 ErrorNoTmpDir=临时的说明书%s不存在。 ErrorUploadBlockedByAddon=上传封锁一个PHP / Apache的插件。 ErrorFileSizeTooLarge=文件大小是太大。 +ErrorFieldTooLong=Field %s is too long. ErrorSizeTooLongForIntType=尺寸int类型的长(%s最大位数) ErrorSizeTooLongForVarcharType=尺寸长字符串类型(%s字符最大) ErrorNoValueForSelectType=请填写选取列表值 @@ -234,7 +235,8 @@ ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated pa ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # 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。它可以由外部模块/接口使用,但如果您不需要为成员定义任何登录名或密码,则可以从成员模块设置中禁用“管理每个成员的登录名”选项。如果您需要管理登录但不需要任何密码,则可以将此字段保留为空以避免此警告。注意:如果成员链接到用户,则电子邮件也可用作登录。 diff --git a/htdocs/langs/zh_CN/install.lang b/htdocs/langs/zh_CN/install.lang index a45a7907320..49e1a98b5d8 100644 --- a/htdocs/langs/zh_CN/install.lang +++ b/htdocs/langs/zh_CN/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=This PHP supports Curl. PHPSupportCalendar=This PHP supports calendars extensions. PHPSupportUTF8=This PHP supports UTF8 functions. PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=This PHP supports %s functions. PHPMemoryOK=您的PHP最大session会话内存设置为%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. @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=你的PHP服务器不支持Curl。 ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. 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. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. ErrorDirDoesNotExists=目录 %s 不存在。 ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=The application tried to self-upgrade, but the in 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=点击此处转到您的申请 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. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/zh_CN/interventions.lang b/htdocs/langs/zh_CN/interventions.lang index 2df4889401a..cdeaceb4571 100644 --- a/htdocs/langs/zh_CN/interventions.lang +++ b/htdocs/langs/zh_CN/interventions.lang @@ -41,9 +41,7 @@ InterventionsArea=干预区 DraftFichinter=干预草稿 LastModifiedInterventions=最近变更的 %s 干预 FichinterToProcess=要处理的干预措施 -##### Types de contacts ##### TypeContact_fichinter_external_CUSTOMER=随访客户联系 -# Modele numérotation PrintProductsOnFichinter=在干预卡上也打印“产品”类型(不仅是服务) PrintProductsOnFichinterDetails=从订单生成干预 UseServicesDurationOnFichinter=使用服务持续时间从订单生成干预 @@ -53,14 +51,16 @@ InterventionStatistics=干预统计 NbOfinterventions=No. of intervention cards NumberOfInterventionsByMonth=No. of intervention cards by month (date of validation) AmountOfInteventionNotIncludedByDefault=默认情况下,干预金额不包括在利润中(在大多数情况下,时间表用于计算花费的时间)。将选项PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT添加到1到home-setup-other以包含它们。 -##### Exports ##### InterId=干预身份 InterRef=干预编号 InterDateCreation=日期创建干预 InterDuration=持续干预 InterStatus=现状干预 InterNote=注意干预 +InterLine=Line of intervention InterLineId=线路ID干预 InterLineDate=行日期干预 InterLineDuration=线路持续时间干预 InterLineDesc=线描述干预 +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/zh_CN/link.lang b/htdocs/langs/zh_CN/link.lang index 390f4fcaf81..3c715594202 100644 --- a/htdocs/langs/zh_CN/link.lang +++ b/htdocs/langs/zh_CN/link.lang @@ -8,3 +8,4 @@ LinkRemoved=链接 %s 已移除 ErrorFailedToDeleteLink= 移除链接失败 '%s' ErrorFailedToUpdateLink= 更新链接失败 '%s' URLToLink=URL网址超链接 +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/zh_CN/mails.lang b/htdocs/langs/zh_CN/mails.lang index bada6e2d7be..127a61c350d 100644 --- a/htdocs/langs/zh_CN/mails.lang +++ b/htdocs/langs/zh_CN/mails.lang @@ -164,7 +164,7 @@ NoContactWithCategoryFound=分类没有联系人/地址 NoContactLinkedToThirdpartieWithCategoryFound=分类没有联系人/地址 OutGoingEmailSetup=发件服务器设置 InGoingEmailSetup=传入电子邮件设置 -OutGoingEmailSetupForEmailing=外发电子邮件设置(用于群发电子邮件) +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) DefaultOutgoingEmailSetup=默认外发电子邮件设置 Information=信息 ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/zh_CN/main.lang b/htdocs/langs/zh_CN/main.lang index 63080052051..7fd64d81418 100644 --- a/htdocs/langs/zh_CN/main.lang +++ b/htdocs/langs/zh_CN/main.lang @@ -174,6 +174,7 @@ SaveAndStay=Save and stay SaveAndNew=Save and new TestConnection=测试连接 ToClone=复制 +ConfirmCloneAsk=Are you sure you want to clone the object %s? ConfirmClone=Choose data you want to clone: NoCloneOptionsSpecified=未定义可复制数据 Of=的 @@ -829,6 +830,8 @@ Gender=性别 Genderman=男人 Genderwoman=女人 ViewList=列表视图 +ViewGantt=Gantt view +ViewKanban=Kanban view Mandatory=强制性 Hello=你好 GoodBye=再见 @@ -1022,3 +1025,6 @@ SelectYourGraphOptionsFirst=Select your graph options to build a graph Measures=Measures XAxis=X-Axis YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? diff --git a/htdocs/langs/zh_CN/modulebuilder.lang b/htdocs/langs/zh_CN/modulebuilder.lang index 259d3ee7b08..3b202541f01 100644 --- a/htdocs/langs/zh_CN/modulebuilder.lang +++ b/htdocs/langs/zh_CN/modulebuilder.lang @@ -83,8 +83,8 @@ ListOfDictionariesEntries=List of dictionaries entries ListOfPermissionsDefined=已定义权限的列表 SeeExamples=见这里的例子 EnabledDesc=激活此字段的条件(示例:1 或 $conf->global->MYMODULE_MYOPTION) -VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update). Using a negative value means field is not shown by default on list but can be selected for viewing). It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty DisplayOnPdf=Display on PDF IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) diff --git a/htdocs/langs/zh_CN/other.lang b/htdocs/langs/zh_CN/other.lang index 1d4465eb6fd..c966cf74cde 100644 --- a/htdocs/langs/zh_CN/other.lang +++ b/htdocs/langs/zh_CN/other.lang @@ -34,7 +34,7 @@ GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mo OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. AtLeastOneMeasureIsRequired=At least 1 field for measure is required AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=Sales order validated Notify_ORDER_SENTBYMAIL=Sales order sent by mail Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=页面URL地址 WEBSITE_TITLE=标题 WEBSITE_DESCRIPTION=描述 WEBSITE_IMAGE=Image -WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITEKEY__ in the path if path depends on website name. +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). WEBSITE_KEYWORDS=关键字 LinesToImport=要导入的行 diff --git a/htdocs/langs/zh_CN/products.lang b/htdocs/langs/zh_CN/products.lang index 1726d77971c..54bafe71412 100644 --- a/htdocs/langs/zh_CN/products.lang +++ b/htdocs/langs/zh_CN/products.lang @@ -22,6 +22,8 @@ ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL MassBarcodeInit=批量条码初始化 MassBarcodeInitDesc=此页面可用于初始化未定义条形码的对象上的条形码。在模块条形码设置完成之前检查。 ProductAccountancyBuyCode=科目代码(采购) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) ProductAccountancySellCode=科目代码(销售) ProductAccountancySellIntraCode=Accounting code (sale intra-Community) ProductAccountancySellExportCode=科目代码(销售导出) @@ -165,7 +167,7 @@ SuppliersPrices=供应商价格 SuppliersPricesOfProductsOrServices=Vendor prices (of products or services) CustomCode=海关/商品/ HS编码 CountryOrigin=产地国 -Nature=Nature of produt (material/finished) +Nature=Nature of product (material/finished) ShortLabel=标签别名 Unit=单位 p=u. diff --git a/htdocs/langs/zh_CN/projects.lang b/htdocs/langs/zh_CN/projects.lang index 477b06658ca..004d16e024c 100644 --- a/htdocs/langs/zh_CN/projects.lang +++ b/htdocs/langs/zh_CN/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=which I'm linked to project Time=时间 ListOfTasks=任务列表 GoToListOfTimeConsumed=转到消耗的时间列表 -GoToListOfTasks=Show as list -GoToGanttView=show as Gantt GanttView=甘特视图 ListProposalsAssociatedProject=List of the commercial proposals related to the project ListOrdersAssociatedProject=List of sales orders related to the project @@ -188,7 +186,7 @@ PlannedWorkload=计划的工作量 PlannedWorkloadShort=工作量 ProjectReferers=关联物料 ProjectMustBeValidatedFirst=项目首先必须认证 -FirstAddRessourceToAllocateTime=将用户资源分配给任务以分配时间 +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time InputPerDay=输入天数 InputPerWeek=输入周数 InputPerMonth=Input per month @@ -240,6 +238,7 @@ LatestModifiedProjects=最新的%s编辑过的项目 OtherFilteredTasks=其他过滤任务 NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you # Comments trans AllowCommentOnTask=允许用户对任务发表评论 AllowCommentOnProject=允许用户对项目发表评论 @@ -256,7 +255,7 @@ ServiceToUseOnLines=Service to use on lines InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. ProjectFollowOpportunity=Follow opportunity -ProjectFollowTasks=Follow tasks +ProjectFollowTasks=Follow tasks or time spent Usage=Usage UsageOpportunity=Usage: Opportunity UsageTasks=Usage: Tasks @@ -265,3 +264,4 @@ InvoiceToUse=Draft invoice to use NewInvoice=新建发票 OneLinePerTask=One line per task OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/zh_CN/receiptprinter.lang b/htdocs/langs/zh_CN/receiptprinter.lang index d475890c290..f52af233aac 100644 --- a/htdocs/langs/zh_CN/receiptprinter.lang +++ b/htdocs/langs/zh_CN/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=虚拟打印机 CONNECTOR_NETWORK_PRINT=网络打印机 CONNECTOR_FILE_PRINT=本地打印机 CONNECTOR_WINDOWS_PRINT=本地Windows打印机 +CONNECTOR_CUPS_PRINT=Cups Printer CONNECTOR_DUMMY_HELP=伪造测试打印,啥也不做的 CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L PROFILE_DEFAULT=默认配置 PROFILE_SIMPLE=简单配置 PROFILE_EPOSTEP=Epos Tep配置 @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=Invoice month in letters DOL_VALUE_MONTH=Invoice month DOL_VALUE_DAY=Invoice day DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=发票号 +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=注册资金 +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/zh_CN/stripe.lang b/htdocs/langs/zh_CN/stripe.lang index 3ed146a77a1..31131a72634 100644 --- a/htdocs/langs/zh_CN/stripe.lang +++ b/htdocs/langs/zh_CN/stripe.lang @@ -32,6 +32,7 @@ VendorName=供应商名称 CSSUrlForPaymentForm=付款方式的CSS样式表的URL NewStripePaymentReceived=收到新Stripe付款 NewStripePaymentFailed=新Stripe付款尝试但失败了 +FailedToChargeCard=Failed to charge card STRIPE_TEST_SECRET_KEY=秘密测试密钥 STRIPE_TEST_PUBLISHABLE_KEY=可发布的测试密钥 STRIPE_TEST_WEBHOOK_KEY=Webhook测试密钥 @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mo 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... -CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authenticatin rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/zh_CN/users.lang b/htdocs/langs/zh_CN/users.lang index 366bb926d9e..d84917431eb 100644 --- a/htdocs/langs/zh_CN/users.lang +++ b/htdocs/langs/zh_CN/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=用户及属性 DomainUser=域用户%s Reactivate=重新激活 CreateInternalUserDesc=This form allows you to create an internal user in your company/organization. To create an external user (customer, vendor etc. ..), use the button 'Create Dolibarr User' from that third-party's contact card. -InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other.

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) PermissionInheritedFromAGroup=因为从权限授予一个用户的一组继承。 Inherited=遗传 UserWillBeInternalUser=创建的用户将是一个内部用户(因为没有联系到一个特定的合伙人) @@ -110,3 +110,8 @@ UserLogged=用户登录 DateEmployment=Employment Start Date DateEmploymentEnd=Employment End Date CantDisableYourself=You can't disable your own user record +ForceUserExpenseValidator=Force expense report validator +ForceUserHolidayValidator=Force leave request validator +ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/zh_CN/website.lang b/htdocs/langs/zh_CN/website.lang index 3ec26dc1c61..b62d4664b83 100644 --- a/htdocs/langs/zh_CN/website.lang +++ b/htdocs/langs/zh_CN/website.lang @@ -42,7 +42,8 @@ ViewPageInNewTab=在新标签页查看页面 SetAsHomePage=设为首页 RealURL=真实URL地址 ViewWebsiteInProduction=使用主页URL网址查看网页 -SetHereVirtualHost=Use with Apache/NGinx/...
    If you can create, on your web server (Apache, Nginx, ...), a dedicated Virtual Host with PHP enabled and a Root directory on
    %s
    then set the name of the virtual host you have created in the properties of web site, so the preview can be done also using this dedicated web server access instead of the internal Dolibarr server. +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: YouCanAlsoTestWithPHPS=Use with PHP embedded server
    On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running
    php -S 0.0.0.0:8080 -t %s YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org CheckVirtualHostPerms=还要检查虚拟主机是否有权限 %s 将文件转换为
    %s @@ -56,7 +57,7 @@ NoPageYet=还没有页面 YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template SyntaxHelp=有关特定语法提示的帮助 YouCanEditHtmlSourceckeditor=您可以使用编辑器中的“源”按钮编辑HTML源代码。 -YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=克隆页面/容器 CloneSite=克隆网站 SiteAdded=Website added @@ -76,7 +77,7 @@ BlogPost=博客文章 WebsiteAccount=Website account WebsiteAccounts=Website accounts AddWebsiteAccount=创建网站帐户 -BackToListOfThirdParty=返回合伙人列表 +BackToListForThirdParty=Back to list for the third-party DisableSiteFirst=首先停用网站 MyContainerTitle=我的网站标题 AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=Sorry, this website is currently off line. Please WEBSITE_USE_WEBSITE_ACCOUNTS=启用网站帐户表 WEBSITE_USE_WEBSITE_ACCOUNTSTooltip=Enable the table to store web site accounts (login/pass) for each website / third party YouMustDefineTheHomePage=您必须先定义默认主页 -OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that edits of HTML source will be possible when page content has been initialized by grabbing it from an external page ("Online" editor will NOT be available) +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. OnlyEditionOfSourceForGrabbedContent=当从外部站点获取内容时,只能使用HTML源代码 GrabImagesInto=抓住发现到css和页面的图像。 ImagesShouldBeSavedInto=图像应保存到目录中 @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 ch MainLanguage=Main language OtherLanguages=Other languages UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/zh_CN/zapier.lang b/htdocs/langs/zh_CN/zapier.lang new file mode 100644 index 00000000000..6d6eda71313 --- /dev/null +++ b/htdocs/langs/zh_CN/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr module + +# +# Admin page +# +ZapierForDolibarrSetup = Setup of Zapier for Dolibarr diff --git a/htdocs/langs/zh_HK/accountancy.lang b/htdocs/langs/zh_HK/accountancy.lang new file mode 100644 index 00000000000..b8ce37a0956 --- /dev/null +++ b/htdocs/langs/zh_HK/accountancy.lang @@ -0,0 +1,382 @@ +# Dolibarr language file - en_US - Accountancy (Double entries) +Accountancy=Accountancy +Accounting=Accounting +ACCOUNTING_EXPORT_SEPARATORCSV=Column separator for export file +ACCOUNTING_EXPORT_DATE=Date format for export file +ACCOUNTING_EXPORT_PIECE=Export the number of piece +ACCOUNTING_EXPORT_GLOBAL_ACCOUNT=Export with global account +ACCOUNTING_EXPORT_LABEL=Export label +ACCOUNTING_EXPORT_AMOUNT=Export amount +ACCOUNTING_EXPORT_DEVISE=Export currency +Selectformat=Select the format for the file +ACCOUNTING_EXPORT_FORMAT=Select the format for the file +ACCOUNTING_EXPORT_ENDLINE=Select the carriage return type +ACCOUNTING_EXPORT_PREFIX_SPEC=Specify the prefix for the file name +ThisService=This service +ThisProduct=This product +DefaultForService=Default for service +DefaultForProduct=Default for product +CantSuggest=Can't suggest +AccountancySetupDoneFromAccountancyMenu=Most setup of the accountancy is done from the menu %s +ConfigAccountingExpert=Configuration of the module accounting expert +Journalization=Journalization +Journaux=Journals +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 +OtherInfo=Other information +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 + +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 + +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... + +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 + +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. + +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. + +AccountancyAreaDescClosePeriod=STEP %s: Close period so we can't make modification in a future. + +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 +AccountAccountingShort=Account +SubledgerAccount=Subledger account +SubledgerAccountLabel=Subledger account label +ShowAccountingAccount=Show accounting account +ShowAccountingJournal=Show accounting journal +AccountAccountingSuggest=Accounting account suggested +MenuDefaultAccounts=Default accounts +MenuBankAccounts=Bank accounts +MenuVatAccounts=Vat accounts +MenuTaxAccounts=Tax accounts +MenuExpenseReportAccounts=Expense report accounts +MenuLoanAccounts=Loan accounts +MenuProductsAccounts=Product accounts +MenuClosureAccounts=Closure accounts +MenuAccountancyClosure=Closure +MenuAccountancyValidationMovements=Validate movements +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 +TotalForAccount=Total for accounting account + + +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 + +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_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=Length of the third-party accounting accounts (If you set value to 6 here, the account '401' will appear like '401000' on screen) +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_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_RESULT_PROFIT=Result accounting account (Profit) +ACCOUNTING_RESULT_LOSS=Result accounting account (Loss) +ACCOUNTING_CLOSURE_DEFAULT_JOURNAL=Journal of closure + +ACCOUNTING_ACCOUNT_TRANSFER_CASH=Accounting account of transitional bank transfer +TransitionalAccount=Transitional bank transfer account + +ACCOUNTING_ACCOUNT_SUSPENSE=Accounting account of wait +DONATION_ACCOUNTINGACCOUNT=Accounting account to register donations +ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions + +ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for the bought products (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=Accounting account by default for the bought products in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought products and imported out of EEC (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 products sold in EEC (used if not defined in the product sheet) +ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the products sold and exported 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_BUY_INTRA_ACCOUNT=Accounting account by default for the bought services in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=Accounting account by default for the bought services and imported out of EEC (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_SERVICE_SOLD_INTRA_ACCOUNT=Accounting account by default for the services sold in EEC (used if not defined in the service sheet) +ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=Accounting account by default for the services sold and exported out of EEC (used if not defined in the service sheet) + +Doctype=Type of document +Docdate=Date +Docref=Reference +LabelAccount=Label account +LabelOperation=Label operation +Sens=Sens +LetteringCode=Lettering code +Lettering=Lettering +Codejournal=Journal +JournalLabel=Journal label +NumPiece=Piece number +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=By year +NotMatch=Not Set +DeleteMvt=Delete Ledger lines +DelMonth=Month to delete +DelYear=Year to delete +DelJournal=Journal to delete +ConfirmDeleteMvt=This will delete all lines of the Ledger for the year/month and/or from a specific journal (At least one criterion is required). You will have to reuse the feature 'Registration in accounting' to have the deleted record back in the ledger. +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=Third-party account +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=List third-party account +DescThirdPartyReport=Consult here the list of third-party customers and vendors and their accounting accounts +ListAccounts=List of the accounting accounts +UnknownAccountForThirdparty=Unknown third-party account. We will use %s +UnknownAccountForThirdpartyBlocking=Unknown third-party account. Blocking error +ThirdpartyAccountNotDefinedOrThirdPartyUnknown=Third-party account not defined or third party unknown. We will use %s +ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=Third-party unknown and subledger not defined on the payment. We will keep the subledger account value empty. +ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. +UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Unknown third-party account and waiting account not defined. Blocking error +PaymentsNotLinkedToProduct=Payment not linked to any product / service +OpeningBalance=Opening balance +ShowOpeningBalance=Show opening balance +HideOpeningBalance=Hide opening balance +ShowSubtotalByGroup=Show subtotal by group + +Pcgtype=Group of account +PcgtypeDesc=Group 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. + +Reconcilable=Reconcilable + +TotalVente=Total turnover before tax +TotalMarge=Total sales margin + +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: +Vide=- +DescVentilSupplier=Consult here the list of vendor invoice lines bound or not yet bound to a product accounting account (only record not already transfered in accountancy are visible) +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 + +DescClosure=Consult here the number of movements by month who are not validated & fiscal years already open +OverviewOfMovementsNotValidated=Step 1/ Overview of movements not validated. (Necessary to close a fiscal year) +ValidateMovements=Validate movements +DescValidateMovements=Any modification or deletion of writing, lettering and deletes will be prohibited. All entries for an exercise must be validated otherwise closing will not be possible +SelectMonthAndValidate=Select month and validate movements + +ValidateHistory=Bind Automatically +AutomaticBindingDone=Automatic binding done + +ErrorAccountancyCodeIsAlreadyUse=Error, you cannot delete this accounting account because it is used +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 +ShowTutorial=Show Tutorial +NotReconciled=Not reconciled + +## Admin +ApplyMassCategories=Apply mass categories +AddAccountFromBookKeepingWithNoCategories=Available account not yet in the personalized group +CategoryDeleted=Category for the accounting account has been removed +AccountingJournals=Accounting journals +AccountingJournal=Accounting journal +NewAccountingJournal=New accounting journal +ShowAccountingJournal=Show accounting journal +NatureOfJournal=Nature of Journal +AccountingJournalType1=Miscellaneous operations +AccountingJournalType2=Sales +AccountingJournalType3=Purchases +AccountingJournalType4=Bank +AccountingJournalType5=Expenses report +AccountingJournalType8=Inventory +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 + +## 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_LDCompta=Export for LD Compta (v9) (Test) +Modelcsv_LDCompta10=Export for LD Compta (v10 & higher) +Modelcsv_openconcerto=Export for OpenConcerto (Test) +Modelcsv_configurable=Export CSV Configurable +Modelcsv_FEC=Export FEC +Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland +Modelcsv_winfic=Export Winfic - eWinfic - WinSis Compta +ChartofaccountsId=Chart of accounts Id + +## 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 used for accounting closures. +Options=Options +OptionModeProductSell=Mode sales +OptionModeProductSellIntra=Mode sales exported in EEC +OptionModeProductSellExport=Mode sales exported in other countries +OptionModeProductBuy=Mode purchases +OptionModeProductBuyIntra=Mode purchases imported in EEC +OptionModeProductBuyExport=Mode purchased imported from other countries +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. +OptionModeProductBuyIntraDesc=Show all products with accounting account for purchases in EEC. +OptionModeProductBuyExportDesc=Show all products with accounting account for other foreign 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 +SaleEECWithVAT=Sale in EEC with a VAT not null, so we suppose this is NOT an intracommunautary sale and the suggested account is the standard product account. +SaleEECWithoutVATNumber=Sale in EEC with no VAT but the VAT ID of thirdparty is not defined. We fallback on the product account for standard sales. You can fix the VAT ID of thirdparty or the product account if needed. + +## Dictionary +Range=Range of accounting account +Calculated=Calculated +Formula=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 + +## 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 diff --git a/htdocs/langs/zh_HK/admin.lang b/htdocs/langs/zh_HK/admin.lang new file mode 100644 index 00000000000..7eb67d7a4ab --- /dev/null +++ b/htdocs/langs/zh_HK/admin.lang @@ -0,0 +1,2002 @@ +# Dolibarr language file - Source file is en_US - admin +Foundation=Foundation +Version=Version +Publisher=Publisher +VersionProgram=Version program +VersionLastInstall=Initial install version +VersionLastUpgrade=Latest version upgrade +VersionExperimental=Experimental +VersionDevelopment=Development +VersionUnknown=Unknown +VersionRecommanded=Recommended +FileCheck=Fileset Integrity Checks +FileCheckDesc=This tool allows you to check the integrity of files and the setup of your application, comparing each file with the official one. The value of some setup constants may also be checked. You can use this tool to determine if any files have been modified (e.g by a hacker). +FileIntegrityIsStrictlyConformedWithReference=Files integrity is strictly conformed with the reference. +FileIntegrityIsOkButFilesWereAdded=Files integrity check has passed, however some new files have been added. +FileIntegritySomeFilesWereRemovedOrModified=Files integrity check has failed. Some files were modified, removed or added. +GlobalChecksum=Global checksum +MakeIntegrityAnalysisFrom=Make integrity analysis of application files from +LocalSignature=Embedded local signature (less reliable) +RemoteSignature=Remote distant signature (more reliable) +FilesMissing=Missing Files +FilesUpdated=Updated Files +FilesModified=Modified Files +FilesAdded=Added Files +FileCheckDolibarr=Check integrity of application files +AvailableOnlyOnPackagedVersions=The local file for integrity checking is only available when the application is installed from an official package +XmlNotFound=Xml Integrity File of application not found +SessionId=Session ID +SessionSaveHandler=Handler to save sessions +SessionSavePath=Session save location +PurgeSessions=Purge of sessions +ConfirmPurgeSessions=Do you really want to purge all sessions? This will disconnect every user (except yourself). +NoSessionListWithThisHandler=Save session handler configured in your PHP does not allow listing all running sessions. +LockNewSessions=Lock new connections +ConfirmLockNewSessions=Are you sure you want to restrict any new Dolibarr connection to yourself? Only user %s will be able to connect after that. +UnlockNewSessions=Remove connection lock +YourSession=Your session +Sessions=Users Sessions +WebUserGroup=Web server user/group +NoSessionFound=Your PHP configuration seems to not allow listing of active sessions. The directory used to save sessions (%s) may be protected (for example by OS permissions or by PHP directive open_basedir). +DBStoringCharset=Database charset to store data +DBSortingCharset=Database charset to sort data +HostCharset=Host charset +ClientCharset=Client charset +ClientSortingCharset=Client collation +WarningModuleNotActive=Module %s must be enabled +WarningOnlyPermissionOfActivatedModules=Only permissions related to activated modules are shown here. You can activate other modules in the Home->Setup->Modules page. +DolibarrSetup=Dolibarr install or upgrade +InternalUser=Internal user +ExternalUser=External user +InternalUsers=Internal users +ExternalUsers=External users +GUISetup=Display +SetupArea=Setup +UploadNewTemplate=Upload new template(s) +FormToTestFileUploadForm=Form to test file upload (according to setup) +IfModuleEnabled=Note: yes is effective only if module %s is enabled +RemoveLock=Remove/rename file %s if it exists, to allow usage of the Update/Install tool. +RestoreLock=Restore file %s, with read permission only, to disable any further use of the Update/Install tool. +SecuritySetup=Security setup +SecurityFilesDesc=Define here options related to security about uploading files. +ErrorModuleRequirePHPVersion=Error, this module requires PHP version %s or higher +ErrorModuleRequireDolibarrVersion=Error, this module requires Dolibarr version %s or higher +ErrorDecimalLargerThanAreForbidden=Error, a precision higher than %s is not supported. +DictionarySetup=Dictionary setup +Dictionary=Dictionaries +ErrorReservedTypeSystemSystemAuto=Value 'system' and 'systemauto' for type is reserved. You can use 'user' as value to add your own record +ErrorCodeCantContainZero=Code can't contain value 0 +DisableJavascript=Disable JavaScript and Ajax functions +DisableJavascriptNote=Note: For test or debug purpose. For optimization for blind person or text browsers, you may prefer to use the setup on the profile of user +UseSearchToSelectCompanyTooltip=Also if you have a large number of third parties (> 100 000), you can increase speed by setting constant COMPANY_DONOTSEARCH_ANYWHERE to 1 in Setup->Other. Search will then be limited to start of string. +UseSearchToSelectContactTooltip=Also if you have a large number of third parties (> 100 000), you can increase speed by setting constant CONTACT_DONOTSEARCH_ANYWHERE to 1 in Setup->Other. Search will then be limited to start of string. +DelaiedFullListToSelectCompany=Wait until a key is pressed before loading content of Third Parties combo list.
    This may increase performance if you have a large number of third parties, but it is less convenient. +DelaiedFullListToSelectContact=Wait until a key is pressed before loading content of Contact combo list.
    This may increase performance if you have a large number of contacts, but it is less convenient) +NumberOfKeyToSearch=Number of characters to trigger search: %s +NumberOfBytes=Number of Bytes +SearchString=Search string +NotAvailableWhenAjaxDisabled=Not available when Ajax disabled +AllowToSelectProjectFromOtherCompany=On document of a third party, can choose a project linked to another third party +JavascriptDisabled=JavaScript disabled +UsePreviewTabs=Use preview tabs +ShowPreview=Show preview +PreviewNotAvailable=Preview not available +ThemeCurrentlyActive=Theme currently active +CurrentTimeZone=TimeZone PHP (server) +MySQLTimeZone=TimeZone MySql (database) +TZHasNoEffect=Dates are stored and returned by database server as if they were kept as submitted string. The timezone has effect only when using the UNIX_TIMESTAMP function (that should not be used by Dolibarr, so database TZ should have no effect, even if changed after data was entered). +Space=Space +Table=Table +Fields=Fields +Index=Index +Mask=Mask +NextValue=Next value +NextValueForInvoices=Next value (invoices) +NextValueForCreditNotes=Next value (credit notes) +NextValueForDeposit=Next value (down payment) +NextValueForReplacements=Next value (replacements) +MustBeLowerThanPHPLimit=Note: your PHP configuration currently limits the maximum filesize for upload to %s %s, irrespective of the value of this parameter +NoMaxSizeByPHPLimit=Note: No limit is set in your PHP configuration +MaxSizeForUploadedFiles=Maximum size for uploaded files (0 to disallow any upload) +UseCaptchaCode=Use graphical code (CAPTCHA) on login page +AntiVirusCommand=Full path to antivirus command +AntiVirusCommandExample=Example for ClamAv Daemon (require clamav-daemon): /usr/bin/clamdscan
    Example for ClamWin (very very slow): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe +AntiVirusParam= More parameters on command line +AntiVirusParamExample=Example for ClamAv Daemon: --fdpass
    Example for ClamWin: --database="C:\\Program Files (x86)\\ClamWin\\lib" +ComptaSetup=Accounting module setup +UserSetup=User management setup +MultiCurrencySetup=Multi-currency setup +MenuLimits=Limits and accuracy +MenuIdParent=Parent menu ID +DetailMenuIdParent=ID of parent menu (empty for a top menu) +DetailPosition=Sort number to define menu position +AllMenus=All +NotConfigured=Module/Application not configured +Active=Active +SetupShort=Setup +OtherOptions=Other options +OtherSetup=Other Setup +CurrentValueSeparatorDecimal=Decimal separator +CurrentValueSeparatorThousand=Thousand separator +Destination=Destination +IdModule=Module ID +IdPermissions=Permissions ID +LanguageBrowserParameter=Parameter %s +LocalisationDolibarrParameters=Localization parameters +ClientTZ=Client Time Zone (user) +ClientHour=Client time (user) +OSTZ=Server OS Time Zone +PHPTZ=PHP server Time Zone +DaylingSavingTime=Daylight saving time +CurrentHour=PHP Time (server) +CurrentSessionTimeOut=Current session timeout +YouCanEditPHPTZ=To set a different PHP timezone (not required), you can try to add a .htaccess file with a line like this "SetEnv TZ Europe/Paris" +HoursOnThisPageAreOnServerTZ=Warning, in contrary of other screens, hours on this page are not in your local timezone, but of the timezone of the server. +Box=Widget +Boxes=Widgets +MaxNbOfLinesForBoxes=Max. number of lines for widgets +AllWidgetsWereEnabled=All available widgets are enabled +PositionByDefault=Default order +Position=Position +MenusDesc=Menu managers set content of the two menu bars (horizontal and vertical). +MenusEditorDesc=The menu editor allows you to define custom menu entries. Use it carefully to avoid instability and permanently unreachable menu entries.
    Some modules add menu entries (in menu All mostly). If you remove some of these entries by mistake, you can restore them disabling and reenabling the module. +MenuForUsers=Menu for users +LangFile=.lang file +Language_en_US_es_MX_etc=Language (en_US, es_MX, ...) +System=System +SystemInfo=System information +SystemToolsArea=System tools area +SystemToolsAreaDesc=This area provides administration functions. Use the menu to choose the required feature. +Purge=Purge +PurgeAreaDesc=This page allows you to delete all files generated or stored by Dolibarr (temporary files or all files in %s directory). Using this feature is not normally necessary. It is provided as a workaround for users whose Dolibarr is hosted by a provider that does not offer permissions to delete files generated by the web server. +PurgeDeleteLogFile=Delete log files, including %s defined for Syslog module (no risk of losing data) +PurgeDeleteTemporaryFiles=Delete all temporary files (no risk of losing data). Note: Deletion is done only if the temp directory was created 24 hours ago. +PurgeDeleteTemporaryFilesShort=Delete temporary files +PurgeDeleteAllFilesInDocumentsDir=Delete all files in directory: %s.
    This will delete all generated documents related to elements (third parties, invoices etc...), files uploaded into the ECM module, database backup dumps and temporary files. +PurgeRunNow=Purge now +PurgeNothingToDelete=No directory or files to delete. +PurgeNDirectoriesDeleted=%s files or directories deleted. +PurgeNDirectoriesFailed=Failed to delete %s files or directories. +PurgeAuditEvents=Purge all security events +ConfirmPurgeAuditEvents=Are you sure you want to purge all security events? All security logs will be deleted, no other data will be removed. +GenerateBackup=Generate backup +Backup=Backup +Restore=Restore +RunCommandSummary=Backup has been launched with the following command +BackupResult=Backup result +BackupFileSuccessfullyCreated=Backup file successfully generated +YouCanDownloadBackupFile=The generated file can now be downloaded +NoBackupFileAvailable=No backup files available. +ExportMethod=Export method +ImportMethod=Import method +ToBuildBackupFileClickHere=To build a backup file, click here. +ImportMySqlDesc=To import a MySQL backup file, you may use phpMyAdmin via your hosting or use the mysql command from the Command line.
    For example: +ImportPostgreSqlDesc=To import a backup file, you must use pg_restore command from command line: +ImportMySqlCommand=%s %s < mybackupfile.sql +ImportPostgreSqlCommand=%s %s mybackupfile.sql +FileNameToGenerate=Filename for backup: +Compression=Compression +CommandsToDisableForeignKeysForImport=Command to disable foreign keys on import +CommandsToDisableForeignKeysForImportWarning=Mandatory if you want to be able to restore your sql dump later +ExportCompatibility=Compatibility of generated export file +ExportUseMySQLQuickParameter=Use the --quick parameter +ExportUseMySQLQuickParameterHelp=The '--quick' parameter helps limit RAM consumption for large tables. +MySqlExportParameters=MySQL export parameters +PostgreSqlExportParameters= PostgreSQL export parameters +UseTransactionnalMode=Use transactional mode +FullPathToMysqldumpCommand=Full path to mysqldump command +FullPathToPostgreSQLdumpCommand=Full path to pg_dump command +AddDropDatabase=Add DROP DATABASE command +AddDropTable=Add DROP TABLE command +ExportStructure=Structure +NameColumn=Name columns +ExtendedInsert=Extended INSERT +NoLockBeforeInsert=No lock commands around INSERT +DelayedInsert=Delayed insert +EncodeBinariesInHexa=Encode binary data in hexadecimal +IgnoreDuplicateRecords=Ignore errors of duplicate record (INSERT IGNORE) +AutoDetectLang=Autodetect (browser language) +FeatureDisabledInDemo=Feature disabled in demo +FeatureAvailableOnlyOnStable=Feature only available on official stable versions +BoxesDesc=Widgets are components showing some information that you can add to personalize some pages. You can choose between showing the widget or not by selecting target page and clicking 'Activate', or by clicking the trashcan to disable it. +OnlyActiveElementsAreShown=Only elements from enabled modules are shown. +ModulesDesc=The modules/applications determine which features are available in the software. Some modules require permissions to be granted to users after activating the module. Click the on/off button %s of each module to enable or disable a module/application. +ModulesMarketPlaceDesc=You can find more modules to download on external websites on the Internet... +ModulesDeployDesc=If permissions on your file system allow it, you can use this tool to deploy an external module. The module will then be visible on the tab %s. +ModulesMarketPlaces=Find external app/modules +ModulesDevelopYourModule=Develop your own app/modules +ModulesDevelopDesc=You may also develop your own module or find a partner to develop one for you. +DOLISTOREdescriptionLong=Instead of switching on www.dolistore.com web site to find an external module, you can use this embedded tool that will perform the search on the external market place for you (may be slow, need an internet access)... +NewModule=New +FreeModule=Free +CompatibleUpTo=Compatible with version %s +NotCompatible=This module does not seem compatible with your Dolibarr %s (Min %s - Max %s). +CompatibleAfterUpdate=This module requires an update to your Dolibarr %s (Min %s - Max %s). +SeeInMarkerPlace=See in Market place +SeeSetupOfModule=See setup of module %s +Updated=Updated +Nouveauté=Novelty +AchatTelechargement=Buy / Download +GoModuleSetupArea=To deploy/install a new module, go to the Module setup area: %s. +DoliStoreDesc=DoliStore, the official market place for Dolibarr ERP/CRM external modules +DoliPartnersDesc=List of companies providing custom-developed modules or features.
    Note: since Dolibarr is an open source application, anyone experienced in PHP programming may develop a module. +WebSiteDesc=External websites for more add-on (non-core) modules... +DevelopYourModuleDesc=Some solutions to develop your own module... +URL=URL +RelativeURL=Relative URL +BoxesAvailable=Widgets available +BoxesActivated=Widgets activated +ActivateOn=Activate on +ActiveOn=Activated on +SourceFile=Source file +AvailableOnlyIfJavascriptAndAjaxNotDisabled=Available only if JavaScript is not disabled +Required=Required +UsedOnlyWithTypeOption=Used by some agenda option only +Security=Security +Passwords=Passwords +DoNotStoreClearPassword=Encrypt passwords stored in database (NOT as plain-text). It is strongly recommended to activate this option. +MainDbPasswordFileConfEncrypted=Encrypt database password stored in conf.php. It is strongly recommended to activate this option. +InstrucToEncodePass=To have password encoded into the conf.php file, replace the line
    $dolibarr_main_db_pass="...";
    by
    $dolibarr_main_db_pass="crypted:%s"; +InstrucToClearPass=To have password decoded (clear) into the conf.php file, replace the line
    $dolibarr_main_db_pass="crypted:...";
    by
    $dolibarr_main_db_pass="%s"; +ProtectAndEncryptPdfFiles=Protect generated PDF files. This is NOT recommended as it breaks bulk PDF generation. +ProtectAndEncryptPdfFilesDesc=Protection of a PDF document keeps it available to read and print with any PDF browser. However, editing and copying is not possible anymore. Note that using this feature makes building of a global merged PDFs not working. +Feature=Feature +DolibarrLicense=License +Developpers=Developers/contributors +OfficialWebSite=Dolibarr official web site +OfficialWebSiteLocal=Local web site (%s) +OfficialWiki=Dolibarr documentation / Wiki +OfficialDemo=Dolibarr online demo +OfficialMarketPlace=Official market place for external modules/addons +OfficialWebHostingService=Referenced web hosting services (Cloud hosting) +ReferencedPreferredPartners=Preferred Partners +OtherResources=Other resources +ExternalResources=External Resources +SocialNetworks=Social Networks +ForDocumentationSeeWiki=For user or developer documentation (Doc, FAQs...),
    take a look at the Dolibarr Wiki:
    %s +ForAnswersSeeForum=For any other questions/help, you can use the Dolibarr forum:
    %s +HelpCenterDesc1=Here are some resources for getting help and support with Dolibarr. +HelpCenterDesc2=Some of these resources are only available in english. +CurrentMenuHandler=Current menu handler +MeasuringUnit=Measuring unit +LeftMargin=Left margin +TopMargin=Top margin +PaperSize=Paper type +Orientation=Orientation +SpaceX=Space X +SpaceY=Space Y +FontSize=Font size +Content=Content +NoticePeriod=Notice period +NewByMonth=New by month +Emails=Emails +EMailsSetup=Emails setup +EMailsDesc=This page allows you to override your default PHP parameters for email sending. In most cases on Unix/Linux OS, the PHP setup is correct and these parameters are unnecessary. +EmailSenderProfiles=Emails sender profiles +EMailsSenderProfileDesc=You can keep this section empty. If you enter some emails here, they will be added to the list of possible senders into the combobox when your write a new email. +MAIN_MAIL_SMTP_PORT=SMTP/SMTPS Port (default value in php.ini: %s) +MAIN_MAIL_SMTP_SERVER=SMTP/SMTPS Host (default value in php.ini: %s) +MAIN_MAIL_SMTP_PORT_NotAvailableOnLinuxLike=SMTP/SMTPS Port (Not defined into PHP on Unix-like systems) +MAIN_MAIL_SMTP_SERVER_NotAvailableOnLinuxLike=SMTP/SMTPS Host (Not defined into PHP on Unix-like systems) +MAIN_MAIL_EMAIL_FROM=Sender email for automatic emails (default value in php.ini: %s) +MAIN_MAIL_ERRORS_TO=Email used for error returns emails (fields 'Errors-To' in emails sent) +MAIN_MAIL_AUTOCOPY_TO= Copy (Bcc) all sent emails to +MAIN_DISABLE_ALL_MAILS=Disable all email sending (for test purposes or demos) +MAIN_MAIL_FORCE_SENDTO=Send all emails to (instead of real recipients, for test purposes) +MAIN_MAIL_ENABLED_USER_DEST_SELECT=Suggest emails of employees (if defined) into the list of predefined recipient when writing a new email +MAIN_MAIL_SENDMODE=Email sending method +MAIN_MAIL_SMTPS_ID=SMTP ID (if sending server requires authentication) +MAIN_MAIL_SMTPS_PW=SMTP Password (if sending server requires authentication) +MAIN_MAIL_EMAIL_TLS=Use TLS (SSL) encryption +MAIN_MAIL_EMAIL_STARTTLS=Use TLS (STARTTLS) encryption +MAIN_MAIL_EMAIL_DKIM_ENABLED=Use DKIM to generate email signature +MAIN_MAIL_EMAIL_DKIM_DOMAIN=Email Domain for use with dkim +MAIN_MAIL_EMAIL_DKIM_SELECTOR=Name of dkim selector +MAIN_MAIL_EMAIL_DKIM_PRIVATE_KEY=Private key for dkim signing +MAIN_DISABLE_ALL_SMS=Disable all SMS sending (for test purposes or demos) +MAIN_SMS_SENDMODE=Method to use to send SMS +MAIN_MAIL_SMS_FROM=Default sender phone number for SMS sending +MAIN_MAIL_DEFAULT_FROMTYPE=Default sender email for manual sending (User email or Company email) +UserEmail=User email +CompanyEmail=Company Email +FeatureNotAvailableOnLinux=Feature not available on Unix like systems. Test your sendmail program locally. +SubmitTranslation=If the translation for this language is not complete or you find errors, you can correct this by editing files in directory langs/%s and submit your change to www.transifex.com/dolibarr-association/dolibarr/ +SubmitTranslationENUS=If translation for this language is not complete or you find errors, you can correct this by editing files into directory langs/%s and submit modified files on dolibarr.org/forum or for developers on github.com/Dolibarr/dolibarr. +ModuleSetup=Module setup +ModulesSetup=Modules/Application setup +ModuleFamilyBase=System +ModuleFamilyCrm=Customer Relationship Management (CRM) +ModuleFamilySrm=Vendor Relationship Management (VRM) +ModuleFamilyProducts=Product Management (PM) +ModuleFamilyHr=Human Resource Management (HR) +ModuleFamilyProjects=Projects/Collaborative work +ModuleFamilyOther=Other +ModuleFamilyTechnic=Multi-modules tools +ModuleFamilyExperimental=Experimental modules +ModuleFamilyFinancial=Financial Modules (Accounting/Treasury) +ModuleFamilyECM=Electronic Content Management (ECM) +ModuleFamilyPortal=Websites and other frontal application +ModuleFamilyInterface=Interfaces with external systems +MenuHandlers=Menu handlers +MenuAdmin=Menu editor +DoNotUseInProduction=Do not use in production +ThisIsProcessToFollow=Upgrade procedure: +ThisIsAlternativeProcessToFollow=This is an alternative setup to process manually: +StepNb=Step %s +FindPackageFromWebSite=Find a package that provides the features you need (for example on the official web site %s). +DownloadPackageFromWebSite=Download package (for example from the official web site %s). +UnpackPackageInDolibarrRoot=Unpack/unzip the packaged files into your Dolibarr server directory: %s +UnpackPackageInModulesRoot=To deploy/install an external module, unpack/unzip the packaged files into the server directory dedicated to external modules:
    %s +SetupIsReadyForUse=Module deployment is finished. You must however enable and setup the module in your application by going to the page setup modules: %s. +NotExistsDirect=The alternative root directory is not defined to an existing directory.
    +InfDirAlt=Since version 3, it is possible to define an alternative root directory. This allows you to store, into a dedicated directory, plug-ins and custom templates.
    Just create a directory at the root of Dolibarr (eg: custom).
    +InfDirExample=
    Then declare it in the file conf.php
    $dolibarr_main_url_root_alt='/custom'
    $dolibarr_main_document_root_alt='/path/of/dolibarr/htdocs/custom'
    If these lines are commented with "#", to enable them, just uncomment by removing the "#" character. +YouCanSubmitFile=You can upload the .zip file of module package from here: +CurrentVersion=Dolibarr current version +CallUpdatePage=Browse to the page that updates the database structure and data: %s. +LastStableVersion=Latest stable version +LastActivationDate=Latest activation date +LastActivationAuthor=Latest activation author +LastActivationIP=Latest activation IP +UpdateServerOffline=Update server offline +WithCounter=Manage a counter +GenericMaskCodes=You may enter any numbering mask. In this mask, the following tags could be used:
    {000000} corresponds to a number which will be incremented on each %s. Enter as many zeros as the desired length of the counter. The counter will be completed by zeros from the left in order to have as many zeros as the mask.
    {000000+000} same as previous but an offset corresponding to the number to the right of the + sign is applied starting on first %s.
    {000000@x} same as previous but the counter is reset to zero when month x is reached (x between 1 and 12, or 0 to use the early months of fiscal year defined in your configuration, or 99 to reset to zero every month). If this option is used and x is 2 or higher, then sequence {yy}{mm} or {yyyy}{mm} is also required.
    {dd} day (01 to 31).
    {mm} month (01 to 12).
    {yy}, {yyyy} or {y} year over 2, 4 or 1 numbers.
    +GenericMaskCodes2={cccc} the client code on n characters
    {cccc000} the client code on n characters is followed by a counter dedicated for customer. This counter dedicated to customer is reset at same time than global counter.
    {tttt} The code of third party type on n characters (see menu Home - Setup - Dictionary - Types of third parties). If you add this tag, the counter will be different for each type of third party.
    +GenericMaskCodes3=All other characters in the mask will remain intact.
    Spaces are not allowed.
    +GenericMaskCodes4a=Example on the 99th %s of the third party TheCompany, with date 2007-01-31:
    +GenericMaskCodes4b=Example on third party created on 2007-03-01:
    +GenericMaskCodes4c=Example on product created on 2007-03-01:
    +GenericMaskCodes5=ABC{yy}{mm}-{000000} will give ABC0701-000099
    {0000+100@1}-ZZZ/{dd}/XXX will give 0199-ZZZ/31/XXX
    IN{yy}{mm}-{0000}-{t} will give IN0701-0099-A if the type of company is 'Responsable Inscripto' with code for type that is 'A_RI' +GenericNumRefModelDesc=Returns a customizable number according to a defined mask. +ServerAvailableOnIPOrPort=Server is available at address %s on port %s +ServerNotAvailableOnIPOrPort=Server is not available at address %s on port %s +DoTestServerAvailability=Test server connectivity +DoTestSend=Test sending +DoTestSendHTML=Test sending HTML +ErrorCantUseRazIfNoYearInMask=Error, can't use option @ to reset counter each year if sequence {yy} or {yyyy} is not in mask. +ErrorCantUseRazInStartedYearIfNoYearMonthInMask=Error, can't use option @ if sequence {yy}{mm} or {yyyy}{mm} is not in mask. +UMask=UMask parameter for new files on Unix/Linux/BSD/Mac file system. +UMaskExplanation=This parameter allow you to define permissions set by default on files created by Dolibarr on server (during upload for example).
    It must be the octal value (for example, 0666 means read and write for everyone).
    This parameter is useless on a Windows server. +SeeWikiForAllTeam=Take a look at the Wiki page for a list of contributors and their organization +UseACacheDelay= Delay for caching export response in seconds (0 or empty for no cache) +DisableLinkToHelpCenter=Hide link "Need help or support" on login page +DisableLinkToHelp=Hide link to online help "%s" +AddCRIfTooLong=There is no automatic text wrapping, text that is too long will not display on documents. Please add carriage returns in the text area if needed. +ConfirmPurge=Are you sure you want to execute this purge?
    This will permanently delete all your data files with no way to restore them (ECM files, attached files...). +MinLength=Minimum length +LanguageFilesCachedIntoShmopSharedMemory=Files .lang loaded in shared memory +LanguageFile=Language file +ExamplesWithCurrentSetup=Examples with current configuration +ListOfDirectories=List of OpenDocument templates directories +ListOfDirectoriesForModelGenODT=List of directories containing templates files with OpenDocument format.

    Put here full path of directories.
    Add a carriage return between eah 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. +NumberOfModelFilesFound=Number of ODT/ODS template files found in these directories +ExampleOfDirectoriesForModelGen=Examples of syntax:
    c:\\mydir
    /home/mydir
    DOL_DATA_ROOT/ecm/ecmdir +FollowingSubstitutionKeysCanBeUsed=
    To know how to create your odt document templates, before storing them in those directories, read wiki documentation: +FullListOnOnlineDocumentation=http://wiki.dolibarr.org/index.php/Create_an_ODT_document_template +FirstnameNamePosition=Position of Name/Lastname +DescWeather=The following images will be shown on the dashboard when the number of late actions reach the following values: +KeyForWebServicesAccess=Key to use Web Services (parameter "dolibarrkey" in webservices) +TestSubmitForm=Input test form +ThisForceAlsoTheme=Using this menu manager will also use its own theme whatever the user choice. Also this menu manager specialized for smartphones does not work on all smartphone. Use another menu manager if you experience problems with yours. +ThemeDir=Skins directory +ConnectionTimeout=Connection timeout +ResponseTimeout=Response timeout +SmsTestMessage=Test message from __PHONEFROM__ to __PHONETO__ +ModuleMustBeEnabledFirst=Module %s must be enabled first if you need this feature. +SecurityToken=Key to secure URLs +NoSmsEngine=No SMS sender manager available. A SMS sender manager is not installed with the default distribution because they depend on an external vendor, but you can find some on %s +PDF=PDF +PDFDesc=Global options for PDF generation. +PDFAddressForging=Rules for address boxes +HideAnyVATInformationOnPDF=Hide all information related to Sales Tax / VAT +PDFRulesForSalesTax=Rules for Sales Tax / VAT +PDFLocaltax=Rules for %s +HideLocalTaxOnPDF=Hide %s rate in column Tax Sale +HideDescOnPDF=Hide products description +HideRefOnPDF=Hide products ref. +HideDetailsOnPDF=Hide product lines details +PlaceCustomerAddressToIsoLocation=Use french standard position (La Poste) for customer address position +Library=Library +UrlGenerationParameters=Parameters to secure URLs +SecurityTokenIsUnique=Use a unique securekey parameter for each URL +EnterRefToBuildUrl=Enter reference for object %s +GetSecuredUrl=Get calculated URL +ButtonHideUnauthorized=Hide buttons for non-admin users for unauthorized actions instead of showing greyed disabled buttons +OldVATRates=Old VAT rate +NewVATRates=New VAT rate +PriceBaseTypeToChange=Modify on prices with base reference value defined on +MassConvert=Launch bulk conversion +PriceFormatInCurrentLanguage=Price Format In Current Language +String=String +TextLong=Long text +HtmlText=Html text +Int=Integer +Float=Float +DateAndTime=Date and hour +Unique=Unique +Boolean=Boolean (one checkbox) +ExtrafieldPhone = Phone +ExtrafieldPrice = Price +ExtrafieldMail = Email +ExtrafieldUrl = Url +ExtrafieldSelect = Select list +ExtrafieldSelectList = Select from table +ExtrafieldSeparator=Separator (not a field) +ExtrafieldPassword=Password +ExtrafieldRadio=Radio buttons (one choice only) +ExtrafieldCheckBox=Checkboxes +ExtrafieldCheckBoxFromList=Checkboxes from table +ExtrafieldLink=Link to an object +ComputedFormula=Computed field +ComputedFormulaDesc=You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object.
    WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example.
    Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing.

    Example of formula:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    Example to reload object
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    Other example of formula to force load of object and its parent object:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetchNoCompute($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetchNoCompute($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: 'Parent project not found' +Computedpersistent=Store computed field +ComputedpersistentDesc=Computed extra fields will be stored in the database, however, the value will only be recalculated when the object of this field is changed. If the computed field depends on other objects or global data this value might be wrong!! +ExtrafieldParamHelpPassword=Leaving this field blank means this value will be stored without encryption (field must be only hidden with star on screen).
    Set 'auto' to use the default encryption rule to save password into database (then value read will be the hash only, no way to retrieve original value) +ExtrafieldParamHelpselect=List of values must be lines with format key,value (where key can't be '0')

    for example:
    1,value1
    2,value2
    code3,value3
    ...

    In order to have the list depending on another complementary attribute list:
    1,value1|options_parent_list_code:parent_key
    2,value2|options_parent_list_code:parent_key

    In order to have the list depending on another list:
    1,value1|parent_list_code:parent_key
    2,value2|parent_list_code:parent_key +ExtrafieldParamHelpcheckbox=List of values must be lines with format key,value (where key can't be '0')

    for example:
    1,value1
    2,value2
    3,value3
    ... +ExtrafieldParamHelpradio=List of values must be lines with format key,value (where key can't be '0')

    for example:
    1,value1
    2,value2
    3,value3
    ... +ExtrafieldParamHelpsellist=List of values comes from a table
    Syntax: table_name:label_field:id_field::filter
    Example: c_typent:libelle:id::filter

    - idfilter is necessarly a primary int key
    - filter can be a simple test (eg active=1) to display only active value
    You can also use $ID$ in filter witch is the current id of current object
    To do a SELECT in filter use $SEL$
    if you want to filter on extrafields use syntax extra.fieldcode=... (where field code is the code of extrafield)

    In order to have the list depending on another complementary attribute list:
    c_typent:libelle:id:options_parent_list_code|parent_column:filter

    In order to have the list depending on another list:
    c_typent:libelle:id:parent_list_code|parent_column:filter +ExtrafieldParamHelpchkbxlst=List of values comes from a table
    Syntax: table_name:label_field:id_field::filter
    Example: c_typent:libelle:id::filter

    filter can be a simple test (eg active=1) to display only active value
    You can also use $ID$ in filter witch is the current id of current object
    To do a SELECT in filter use $SEL$
    if you want to filter on extrafields use syntax extra.fieldcode=... (where field code is the code of extrafield)

    In order to have the list depending on another complementary attribute list:
    c_typent:libelle:id:options_parent_list_code|parent_column:filter

    In order to have the list depending on another list:
    c_typent:libelle:id:parent_list_code|parent_column:filter +ExtrafieldParamHelplink=Parameters must be ObjectName:Classpath
    Syntax: ObjectName:Classpath
    Examples:
    Societe:societe/class/societe.class.php
    Contact:contact/class/contact.class.php +ExtrafieldParamHelpSeparator=Keep empty for a simple separator
    Set this to 1 for a collapsing separator (open by default for new session, then status is kept for each user session)
    Set this to 2 for a collapsing separator (collapsed by default for new session, then status is kept fore each user session) +LibraryToBuildPDF=Library used for PDF generation +LocalTaxDesc=Some countries may apply two or three taxes on each invoice line. If this is the case, choose the type for the second and third tax and its rate. Possible type are:
    1: local tax apply on products and services without vat (localtax is calculated on amount without tax)
    2: local tax apply on products and services including vat (localtax is calculated on amount + main tax)
    3: local tax apply on products without vat (localtax is calculated on amount without tax)
    4: local tax apply on products including vat (localtax is calculated on amount + main vat)
    5: local tax apply on services without vat (localtax is calculated on amount without tax)
    6: local tax apply on services including vat (localtax is calculated on amount + tax) +SMS=SMS +LinkToTestClickToDial=Enter a phone number to call to show a link to test the ClickToDial url for user %s +RefreshPhoneLink=Refresh link +LinkToTest=Clickable link generated for user %s (click phone number to test) +KeepEmptyToUseDefault=Keep empty to use default value +DefaultLink=Default link +SetAsDefault=Set as default +ValueOverwrittenByUserSetup=Warning, this value may be overwritten by user specific setup (each user can set his own clicktodial url) +ExternalModule=External module +InstalledInto=Installed into directory %s +BarcodeInitForthird-parties=Mass barcode init for third-parties +BarcodeInitForProductsOrServices=Mass barcode init or reset for products or services +CurrentlyNWithoutBarCode=Currently, you have %s record on %s %s without barcode defined. +InitEmptyBarCode=Init value for next %s empty records +EraseAllCurrentBarCode=Erase all current barcode values +ConfirmEraseAllCurrentBarCode=Are you sure you want to erase all current barcode values? +AllBarcodeReset=All barcode values have been removed +NoBarcodeNumberingTemplateDefined=No numbering barcode template enabled in the Barcode module setup. +EnableFileCache=Enable file cache +ShowDetailsInPDFPageFoot=Add more details into footer, such as company address or manager names (in addition to professional ids, company capital and VAT number). +NoDetails=No additional details in footer +DisplayCompanyInfo=Display company address +DisplayCompanyManagers=Display manager names +DisplayCompanyInfoAndManagers=Display company address and manager names +EnableAndSetupModuleCron=If you want to have this recurring invoice generated automatically, module *%s* must be enabled and correctly setup. Otherwise, generation of invoices must be done manually from this template using the *Create* button. Note that even if you enabled automatic generation, you can still safely launch manual generation. Generation of duplicates for the same period is not possible. +ModuleCompanyCodeCustomerAquarium=%s followed by customer code for a customer accounting code +ModuleCompanyCodeSupplierAquarium=%s followed by vendor code for a vendor accounting code +ModuleCompanyCodePanicum=Return an empty accounting code. +ModuleCompanyCodeDigitaria=Returns a compound accounting code according to the name of the third party. The code consists of a prefix that can be defined in the first position followed by the number of characters defined in the third party code. +ModuleCompanyCodeCustomerDigitaria=%s followed by the truncated customer name by the number of characters: %s for the customer accounting code. +ModuleCompanyCodeSupplierDigitaria=%s followed by the truncated supplier name by the number of characters: %s for the supplier accounting code. +Use3StepsApproval=By default, Purchase Orders need to be created and approved by 2 different users (one step/user to create and one step/user to approve. Note that if user has both permission to create and approve, one step/user will be enough). You can ask with this option to introduce a third step/user approval, if amount is higher than a dedicated value (so 3 steps will be necessary: 1=validation, 2=first approval and 3=second approval if amount is enough).
    Set this to empty if one approval (2 steps) is enough, set it to a very low value (0.1) if a second approval (3 steps) is always required. +UseDoubleApproval=Use a 3 steps approval when amount (without tax) is higher than... +WarningPHPMail=WARNING: It is often better to setup outgoing emails to use the email server of your provider instead of the default setup. Some email providers (like Yahoo) do not allow you to send an email from another server than their own server. Your current setup uses the server of the application to send email and not the server of your email provider, so some recipients (the one compatible with the restrictive DMARC protocol), will ask your email provider if they can accept your email and some email providers (like Yahoo) may respond "no" because the server is not theirs, so few of your sent Emails may not be accepted (be careful also of your email provider's sending quota).
    If your Email provider (like Yahoo) has this restriction, you must change Email setup to choose the other method "SMTP server" and enter the SMTP server and credentials provided by your Email provider. +WarningPHPMail2=If your email SMTP provider need to restrict email client to some IP addresses (very rare), this is the IP address of the mail user agent (MUA) for your ERP CRM application: %s. +WarningPHPMailSPF=If the domain name in your sender email address is protected by SPF (ask you email provider), you must include the following IPs in the SPF record of the DNS of your domain: %s. +ClickToShowDescription=Click to show description +DependsOn=This module needs the module(s) +RequiredBy=This module is required by module(s) +TheKeyIsTheNameOfHtmlField=This is the name of the HTML field. Technical knowledge is required to read the content of the HTML page to get the key name of a field. +PageUrlForDefaultValues=You must enter the relative path of the page URL. If you include parameters in URL, the default values will be effective if all parameters are set to same value. +PageUrlForDefaultValuesCreate=
    Example:
    For the form to create a new third party, it is %s.
    For URL of external modules installed into custom directory, do not include the "custom/", so use path like mymodule/mypage.php and not custom/mymodule/mypage.php.
    If you want default value only if url has some parameter, you can use %s +PageUrlForDefaultValuesList=
    Example:
    For the page that lists third parties, it is %s.
    For URL of external modules installed into custom directory, do not include the "custom/" so use a path like mymodule/mypagelist.php and not custom/mymodule/mypagelist.php.
    If you want default value only if url has some parameter, you can use %s +AlsoDefaultValuesAreEffectiveForActionCreate=Also note that overwritting default values for form creation works only for pages that were correctly designed (so with parameter action=create or presend...) +EnableDefaultValues=Enable customization of default values +EnableOverwriteTranslation=Enable usage of overwritten translation +GoIntoTranslationMenuToChangeThis=A translation has been found for the key with this code. To change this value, you must edit it from Home-Setup-translation. +WarningSettingSortOrder=Warning, setting a default sort order may result in a technical error when going on the list page if field is an unknown field. If you experience such an error, come back to this page to remove the default sort order and restore default behavior. +Field=Field +ProductDocumentTemplates=Document templates to generate product document +FreeLegalTextOnExpenseReports=Free legal text on expense reports +WatermarkOnDraftExpenseReports=Watermark on draft expense reports +AttachMainDocByDefault=Set this to 1 if you want to attach main document to email by default (if applicable) +FilesAttachedToEmail=Attach file +SendEmailsReminders=Send agenda reminders by emails +davDescription=Setup a WebDAV server +DAVSetup=Setup of module DAV +DAV_ALLOW_PRIVATE_DIR=Enable the generic private directory (WebDAV dedicated directory named "private" - login required) +DAV_ALLOW_PRIVATE_DIRTooltip=The generic private directory is a WebDAV directory anybody can access with its application login/pass. +DAV_ALLOW_PUBLIC_DIR=Enable the generic public directory (WebDAV dedicated directory named "public" - no login required) +DAV_ALLOW_PUBLIC_DIRTooltip=The generic public directory is a WebDAV directory anybody can access (in read and write mode), with no authorization required (login/password account). +DAV_ALLOW_ECM_DIR=Enable the DMS/ECM private directory (root directory of the DMS/ECM module - login required) +DAV_ALLOW_ECM_DIRTooltip=The root directory where all files are manually uploaded when using the DMS/ECM module. Similarly as access from the web interface, you will need a valid login/password with adecuate permissions to access it. +# Modules +Module0Name=Users & Groups +Module0Desc=Users / Employees and Groups management +Module1Name=Third Parties +Module1Desc=Companies and contacts management (customers, prospects...) +Module2Name=Commercial +Module2Desc=Commercial management +Module10Name=Accounting (simplified) +Module10Desc=Simple accounting reports (journals, turnover) based on database content. Does not use any ledger table. +Module20Name=Proposals +Module20Desc=Commercial proposal management +Module22Name=Mass Emailings +Module22Desc=Manage bulk emailing +Module23Name=Energy +Module23Desc=Monitoring the consumption of energies +Module25Name=Sales Orders +Module25Desc=Sales order management +Module30Name=Invoices +Module30Desc=Management of invoices and credit notes for customers. Management of invoices and credit notes for suppliers +Module40Name=Vendors +Module40Desc=Vendors and purchase management (purchase orders and billing of supplier invoices) +Module42Name=Debug Logs +Module42Desc=Logging facilities (file, syslog, ...). Such logs are for technical/debug purposes. +Module49Name=Editors +Module49Desc=Editor management +Module50Name=Products +Module50Desc=Management of Products +Module51Name=Mass mailings +Module51Desc=Mass paper mailing management +Module52Name=Stocks +Module52Desc=Stock management +Module53Name=Services +Module53Desc=Management of Services +Module54Name=Contracts/Subscriptions +Module54Desc=Management of contracts (services or recurring subscriptions) +Module55Name=Barcodes +Module55Desc=Barcode management +Module56Name=Telephony +Module56Desc=Telephony integration +Module57Name=Bank Direct Debit payments +Module57Desc=Management of Direct Debit payment orders. It includes generation of SEPA file for European countries. +Module58Name=ClickToDial +Module58Desc=Integration of a ClickToDial system (Asterisk, ...) +Module59Name=Bookmark4u +Module59Desc=Add function to generate Bookmark4u account from a Dolibarr account +Module60Name=Stickers +Module60Desc=Management of stickers +Module70Name=Interventions +Module70Desc=Intervention management +Module75Name=Expense and trip notes +Module75Desc=Expense and trip notes management +Module80Name=Shipments +Module80Desc=Shipments and delivery note management +Module85Name=Banks & Cash +Module85Desc=Management of bank or cash accounts +Module100Name=External Site +Module100Desc=Add a link to an external website as a main menu icon. Website is shown in a frame under the top menu. +Module105Name=Mailman and SPIP +Module105Desc=Mailman or SPIP interface for member module +Module200Name=LDAP +Module200Desc=LDAP directory synchronization +Module210Name=PostNuke +Module210Desc=PostNuke integration +Module240Name=Data exports +Module240Desc=Tool to export Dolibarr data (with assistance) +Module250Name=Data imports +Module250Desc=Tool to import data into Dolibarr (with assistance) +Module310Name=Members +Module310Desc=Foundation members management +Module320Name=RSS Feed +Module320Desc=Add a RSS feed to Dolibarr pages +Module330Name=Bookmarks & Shortcuts +Module330Desc=Create shortcuts, always accessible, to the internal or external pages to which you frequently access +Module400Name=Projects or Leads +Module400Desc=Management of projects, leads/opportunities and/or tasks. You can also assign any element (invoice, order, proposal, intervention, ...) to a project and get a transversal view from the project view. +Module410Name=Webcalendar +Module410Desc=Webcalendar integration +Module500Name=Taxes & Special Expenses +Module500Desc=Management of other expenses (sale taxes, social or fiscal taxes, dividends, ...) +Module510Name=Salaries +Module510Desc=Record and track employee payments +Module520Name=Loans +Module520Desc=Management of loans +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 +Module610Desc=Creation of product variants (color, size etc.) +Module700Name=Donations +Module700Desc=Donation management +Module770Name=Expense Reports +Module770Desc=Manage expense reports claims (transportation, meal, ...) +Module1120Name=Vendor Commercial Proposals +Module1120Desc=Request vendor commercial proposal and prices +Module1200Name=Mantis +Module1200Desc=Mantis integration +Module1520Name=Document Generation +Module1520Desc=Mass email document generation +Module1780Name=Tags/Categories +Module1780Desc=Create tags/category (products, customers, suppliers, contacts or members) +Module2000Name=WYSIWYG editor +Module2000Desc=Allow text fields to be edited/formatted using CKEditor (html) +Module2200Name=Dynamic Prices +Module2200Desc=Use maths expressions for auto-generation of prices +Module2300Name=Scheduled jobs +Module2300Desc=Scheduled jobs management (alias cron or chrono table) +Module2400Name=Events/Agenda +Module2400Desc=Track events. Log automatic events for tracking purposes or record manual events or meetings. This is the principal module for good Customer or Vendor Relationship Management. +Module2500Name=DMS / ECM +Module2500Desc=Document Management System / Electronic Content Management. Automatic organization of your generated or stored documents. Share them when you need. +Module2600Name=API/Web services (SOAP server) +Module2600Desc=Enable the Dolibarr SOAP server providing API services +Module2610Name=API/Web services (REST server) +Module2610Desc=Enable the Dolibarr REST server providing API services +Module2660Name=Call WebServices (SOAP client) +Module2660Desc=Enable the Dolibarr web services client (Can be used to push data/requests to external servers. Only Purchase orders are currently supported.) +Module2700Name=Gravatar +Module2700Desc=Use online Gravatar service (www.gravatar.com) to show photo of users/members (found with their emails). Needs Internet access +Module2800Desc=FTP Client +Module2900Name=GeoIPMaxmind +Module2900Desc=GeoIP Maxmind conversions capabilities +Module3200Name=Unalterable Archives +Module3200Desc=Enable an unalterable log of business events. Events are archived in real-time. The log is a read-only table of chained events that can be exported. This module may be mandatory for some countries. +Module4000Name=HRM +Module4000Desc=Human resources management (management of department, employee contracts and feelings) +Module5000Name=Multi-company +Module5000Desc=Allows you to manage multiple companies +Module6000Name=Workflow +Module6000Desc=Workflow management (automatic creation of object and/or automatic status change) +Module10000Name=Websites +Module10000Desc=Create websites (public) with a WYSIWYG editor. This is a webmaster or developer oriented CMS (it is better to know HTML and CSS language). Just setup your web server (Apache, Nginx, ...) to point to the dedicated Dolibarr directory to have it online on the internet with your own domain name. +Module20000Name=Leave Request Management +Module20000Desc=Define and track employee leave requests +Module39000Name=Product Lots +Module39000Desc=Lots, serial numbers, eat-by/sell-by date management for products +Module40000Name=Multicurrency +Module40000Desc=Use alternative currencies in prices and documents +Module50000Name=PayBox +Module50000Desc=Offer customers a PayBox online payment page (credit/debit cards). This can be used to allow your customers to make ad-hoc payments or payments related to a specific Dolibarr object (invoice, order etc...) +Module50100Name=POS SimplePOS +Module50100Desc=Point of Sale module SimplePOS (simple POS). +Module50150Name=POS TakePOS +Module50150Desc=Point of Sale module TakePOS (touchscreen POS, for shops, bars or restaurants). +Module50200Name=Paypal +Module50200Desc=Offer customers a PayPal online payment page (PayPal account or credit/debit cards). This can be used to allow your customers to make ad-hoc payments or payments related to a specific Dolibarr object (invoice, order etc...) +Module50300Name=Stripe +Module50300Desc=Offer customers a Stripe online payment page (credit/debit cards). This can be used to allow your customers to make ad-hoc payments or payments related to a specific Dolibarr object (invoice, order etc...) +Module50400Name=Accounting (double entry) +Module50400Desc=Accounting management (double entries, support general and auxiliary ledgers). Export the ledger in several other accounting software formats. +Module54000Name=PrintIPP +Module54000Desc=Direct print (without opening the documents) using Cups IPP interface (Printer must be visible from server, and CUPS must be installed on server). +Module55000Name=Poll, Survey or Vote +Module55000Desc=Create online polls, surveys or votes (like Doodle, Studs, RDVz etc...) +Module59000Name=Margins +Module59000Desc=Module to manage margins +Module60000Name=Commissions +Module60000Desc=Module to manage commissions +Module62000Name=Incoterms +Module62000Desc=Add features to manage Incoterms +Module63000Name=Resources +Module63000Desc=Manage resources (printers, cars, rooms, ...) for allocating to events +Permission11=Read customer invoices +Permission12=Create/modify customer invoices +Permission13=Unvalidate customer invoices +Permission14=Validate customer invoices +Permission15=Send customer invoices by email +Permission16=Create payments for customer invoices +Permission19=Delete customer invoices +Permission21=Read commercial proposals +Permission22=Create/modify commercial proposals +Permission24=Validate commercial proposals +Permission25=Send commercial proposals +Permission26=Close commercial proposals +Permission27=Delete commercial proposals +Permission28=Export commercial proposals +Permission31=Read products +Permission32=Create/modify products +Permission34=Delete products +Permission36=See/manage hidden products +Permission38=Export products +Permission41=Read projects and tasks (shared project and projects I'm contact for). Can also enter time consumed, for me or my hierarchy, on assigned tasks (Timesheet) +Permission42=Create/modify projects (shared project and projects I'm contact for). Can also create tasks and assign users to project and tasks +Permission44=Delete projects (shared project and projects I'm contact for) +Permission45=Export projects +Permission61=Read interventions +Permission62=Create/modify interventions +Permission64=Delete interventions +Permission67=Export interventions +Permission71=Read members +Permission72=Create/modify members +Permission74=Delete members +Permission75=Setup types of membership +Permission76=Export data +Permission78=Read subscriptions +Permission79=Create/modify subscriptions +Permission81=Read customers orders +Permission82=Create/modify customers orders +Permission84=Validate customers orders +Permission86=Send customers orders +Permission87=Close customers orders +Permission88=Cancel customers orders +Permission89=Delete customers orders +Permission91=Read social or fiscal taxes and vat +Permission92=Create/modify social or fiscal taxes and vat +Permission93=Delete social or fiscal taxes and vat +Permission94=Export social or fiscal taxes +Permission95=Read reports +Permission101=Read sendings +Permission102=Create/modify sendings +Permission104=Validate sendings +Permission106=Export sendings +Permission109=Delete sendings +Permission111=Read financial accounts +Permission112=Create/modify/delete and compare transactions +Permission113=Setup financial accounts (create, manage categories) +Permission114=Reconcile transactions +Permission115=Export transactions and account statements +Permission116=Transfers between accounts +Permission117=Manage checks dispatching +Permission121=Read third parties linked to user +Permission122=Create/modify third parties linked to user +Permission125=Delete third parties linked to user +Permission126=Export third parties +Permission141=Read all projects and tasks (also private projects for which I am not a contact) +Permission142=Create/modify all projects and tasks (also private projects for which I am not a contact) +Permission144=Delete all projects and tasks (also private projects i am not contact for) +Permission146=Read providers +Permission147=Read stats +Permission151=Read direct debit payment orders +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=Read contracts/subscriptions +Permission162=Create/modify contracts/subscriptions +Permission163=Activate a service/subscription of a contract +Permission164=Disable a service/subscription of a contract +Permission165=Delete contracts/subscriptions +Permission167=Export contracts +Permission171=Read trips and expenses (yours and your subordinates) +Permission172=Create/modify trips and expenses +Permission173=Delete trips and expenses +Permission174=Read all trips and expenses +Permission178=Export trips and expenses +Permission180=Read suppliers +Permission181=Read purchase orders +Permission182=Create/modify purchase orders +Permission183=Validate purchase orders +Permission184=Approve purchase orders +Permission185=Order or cancel purchase orders +Permission186=Receive purchase orders +Permission187=Close purchase orders +Permission188=Cancel purchase orders +Permission192=Create lines +Permission193=Cancel lines +Permission194=Read the bandwidth lines +Permission202=Create ADSL connections +Permission203=Order connections orders +Permission204=Order connections +Permission205=Manage connections +Permission206=Read connections +Permission211=Read Telephony +Permission212=Order lines +Permission213=Activate line +Permission214=Setup Telephony +Permission215=Setup providers +Permission221=Read emailings +Permission222=Create/modify emailings (topic, recipients...) +Permission223=Validate emailings (allows sending) +Permission229=Delete emailings +Permission237=View recipients and info +Permission238=Manually send mailings +Permission239=Delete mailings after validation or sent +Permission241=Read categories +Permission242=Create/modify categories +Permission243=Delete categories +Permission244=See the contents of the hidden categories +Permission251=Read other users and groups +PermissionAdvanced251=Read other users +Permission252=Read permissions of other users +Permission253=Create/modify other users, groups and permissions +PermissionAdvanced253=Create/modify internal/external users and permissions +Permission254=Create/modify external users only +Permission255=Modify other users password +Permission256=Delete or disable other users +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). +Permission271=Read CA +Permission272=Read invoices +Permission273=Issue invoices +Permission281=Read contacts +Permission282=Create/modify contacts +Permission283=Delete contacts +Permission286=Export contacts +Permission291=Read tariffs +Permission292=Set permissions on the tariffs +Permission293=Modify customer's tariffs +Permission300=Read barcodes +Permission301=Create/modify barcodes +Permission302=Delete barcodes +Permission311=Read services +Permission312=Assign service/subscription to contract +Permission331=Read bookmarks +Permission332=Create/modify bookmarks +Permission333=Delete bookmarks +Permission341=Read its own permissions +Permission342=Create/modify his own user information +Permission343=Modify his own password +Permission344=Modify its own permissions +Permission351=Read groups +Permission352=Read groups permissions +Permission353=Create/modify groups +Permission354=Delete or disable groups +Permission358=Export users +Permission401=Read discounts +Permission402=Create/modify discounts +Permission403=Validate discounts +Permission404=Delete discounts +Permission430=Use Debug Bar +Permission511=Read payments of salaries +Permission512=Create/modify payments of salaries +Permission514=Delete payments of salaries +Permission517=Export salaries +Permission520=Read Loans +Permission522=Create/modify loans +Permission524=Delete loans +Permission525=Access loan calculator +Permission527=Export loans +Permission531=Read services +Permission532=Create/modify services +Permission534=Delete services +Permission536=See/manage hidden services +Permission538=Export services +Permission650=Read Bills of Materials +Permission651=Create/Update Bills of Materials +Permission652=Delete Bills of Materials +Permission701=Read donations +Permission702=Create/modify donations +Permission703=Delete donations +Permission771=Read expense reports (yours and your subordinates) +Permission772=Create/modify expense reports +Permission773=Delete expense reports +Permission774=Read all expense reports (even for user not subordinates) +Permission775=Approve expense reports +Permission776=Pay expense reports +Permission779=Export expense reports +Permission1001=Read stocks +Permission1002=Create/modify warehouses +Permission1003=Delete warehouses +Permission1004=Read stock movements +Permission1005=Create/modify stock movements +Permission1101=Read delivery receipts +Permission1102=Create/modify delivery receipts +Permission1104=Validate delivery receipts +Permission1109=Delete delivery receipts +Permission1121=Read supplier proposals +Permission1122=Create/modify supplier proposals +Permission1123=Validate supplier proposals +Permission1124=Send supplier proposals +Permission1125=Delete supplier proposals +Permission1126=Close supplier price requests +Permission1181=Read suppliers +Permission1182=Read purchase orders +Permission1183=Create/modify purchase orders +Permission1184=Validate purchase orders +Permission1185=Approve purchase orders +Permission1186=Order purchase orders +Permission1187=Acknowledge receipt of purchase orders +Permission1188=Delete purchase orders +Permission1190=Approve (second approval) purchase orders +Permission1201=Get result of an export +Permission1202=Create/Modify an export +Permission1231=Read vendor invoices +Permission1232=Create/modify vendor invoices +Permission1233=Validate vendor invoices +Permission1234=Delete vendor invoices +Permission1235=Send vendor invoices by email +Permission1236=Export vendor invoices, attributes and payments +Permission1237=Export purchase orders and their details +Permission1251=Run mass imports of external data into database (data load) +Permission1321=Export customer invoices, attributes and payments +Permission1322=Reopen a paid bill +Permission1421=Export sales orders and attributes +Permission2401=Read actions (events or tasks) linked to his user account (if owner of event or just assigned to) +Permission2402=Create/modify actions (events or tasks) linked to his user account (if owner of event) +Permission2403=Delete actions (events or tasks) linked to his user account (if owner of event) +Permission2411=Read actions (events or tasks) of others +Permission2412=Create/modify actions (events or tasks) of others +Permission2413=Delete actions (events or tasks) of others +Permission2414=Export actions/tasks of others +Permission2501=Read/Download documents +Permission2502=Download documents +Permission2503=Submit or delete documents +Permission2515=Setup documents directories +Permission2801=Use FTP client in read mode (browse and download only) +Permission2802=Use FTP client in write mode (delete or upload files) +Permission3200=Read archived events and fingerprints +Permission4001=See employees +Permission4002=Create employees +Permission4003=Delete employees +Permission4004=Export employees +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. +Permission10005=Delete website content +Permission20001=Read leave requests (your leave and those of your subordinates) +Permission20002=Create/modify your leave requests (your leave and those of your subordinates) +Permission20003=Delete leave requests +Permission20004=Read all leave requests (even of user not subordinates) +Permission20005=Create/modify leave requests for everybody (even of user not subordinates) +Permission20006=Admin leave requests (setup and update balance) +Permission20007=Approve leave requests +Permission23001=Read Scheduled job +Permission23002=Create/update Scheduled job +Permission23003=Delete Scheduled job +Permission23004=Execute Scheduled job +Permission50101=Use Point of Sale +Permission50201=Read transactions +Permission50202=Import transactions +Permission50401=Bind products and invoices with accounting accounts +Permission50411=Read operations in ledger +Permission50412=Write/Edit operations in ledger +Permission50414=Delete operations in ledger +Permission50415=Delete all operations by year and journal in ledger +Permission50418=Export operations of the ledger +Permission50420=Report and export reports (turnover, balance, journals, ledger) +Permission50430=Define fiscal periods. Validate transactions and close fiscal periods. +Permission50440=Manage chart of accounts, setup of accountancy +Permission51001=Read assets +Permission51002=Create/Update assets +Permission51003=Delete assets +Permission51005=Setup types of asset +Permission54001=Print +Permission55001=Read polls +Permission55002=Create/modify polls +Permission59001=Read commercial margins +Permission59002=Define commercial margins +Permission59003=Read every user margin +Permission63001=Read resources +Permission63002=Create/modify resources +Permission63003=Delete resources +Permission63004=Link resources to agenda events +DictionaryCompanyType=Third-party types +DictionaryCompanyJuridicalType=Third-party legal entities +DictionaryProspectLevel=Prospect potential +DictionaryCanton=States/Provinces +DictionaryRegion=Regions +DictionaryCountry=Countries +DictionaryCurrency=Currencies +DictionaryCivility=Honorific titles +DictionaryActions=Types of agenda events +DictionarySocialContributions=Types of social or fiscal taxes +DictionaryVAT=VAT Rates or Sales Tax Rates +DictionaryRevenueStamp=Amount of tax stamps +DictionaryPaymentConditions=Payment Terms +DictionaryPaymentModes=Payment Modes +DictionaryTypeContact=Contact/Address types +DictionaryTypeOfContainer=Website - Type of website pages/containers +DictionaryEcotaxe=Ecotax (WEEE) +DictionaryPaperFormat=Paper formats +DictionaryFormatCards=Card formats +DictionaryFees=Expense report - Types of expense report lines +DictionarySendingMethods=Shipping methods +DictionaryStaff=Number of Employees +DictionaryAvailability=Delivery delay +DictionaryOrderMethods=Ordering methods +DictionarySource=Origin of proposals/orders +DictionaryAccountancyCategory=Personalized groups for reports +DictionaryAccountancysystem=Models for chart of accounts +DictionaryAccountancyJournal=Accounting journals +DictionaryEMailTemplates=Email Templates +DictionaryUnits=Units +DictionaryMeasuringUnits=Measuring Units +DictionarySocialNetworks=Social Networks +DictionaryProspectStatus=Prospect status +DictionaryHolidayTypes=Types of leave +DictionaryOpportunityStatus=Lead status for project/lead +DictionaryExpenseTaxCat=Expense report - Transportation categories +DictionaryExpenseTaxRange=Expense report - Range by transportation category +SetupSaved=Setup saved +SetupNotSaved=Setup not saved +BackToModuleList=Back to Module list +BackToDictionaryList=Back to Dictionaries list +TypeOfRevenueStamp=Type of tax stamp +VATManagement=Sales Tax Management +VATIsUsedDesc=By default when creating prospects, invoices, orders etc. the Sales Tax rate follows the active standard rule:
    If the seller is not subject to Sales tax, then Sales tax defaults to 0. End of rule.
    If the (seller's country = buyer's country), then the Sales tax by default equals the Sales tax of the product in the seller's country. End of rule.
    If the seller and buyer are both in the European Community and goods are transport-related products (haulage, shipping, airline), the default VAT is 0. This rule is dependant on the seller's country - please consult with your accountant. The VAT should be paid by the buyer to the customs office in their country and not to the seller. End of rule.
    If the seller and buyer are both in the European Community and the buyer is not a company (with a registered intra-Community VAT number) then the VAT defaults to the VAT rate of the seller's country. End of rule.
    If the seller and buyer are both in the European Community and the buyer is a company (with a registered intra-Community VAT number), then the VAT is 0 by default. End of rule.
    In any other case the proposed default is Sales tax=0. End of rule. +VATIsNotUsedDesc=By default the proposed Sales tax is 0 which can be used for cases like associations, individuals or small companies. +VATIsUsedExampleFR=In France, it means companies or organizations having a real fiscal system (Simplified real or normal real). A system in which VAT is declared. +VATIsNotUsedExampleFR=In France, it means associations that are non Sales tax declared or companies, organizations or liberal professions that have chosen the micro enterprise fiscal system (Sales tax in franchise) and paid a franchise Sales tax without any Sales tax declaration. This choice will display the reference "Non applicable Sales tax - art-293B of CGI" on invoices. +##### Local Taxes ##### +TypeOfSaleTaxes=Type of sales tax +LTRate=Rate +LocalTax1IsNotUsed=Do not use second tax +LocalTax1IsUsedDesc=Use a second type of tax (other than first one) +LocalTax1IsNotUsedDesc=Do not use other type of tax (other than first one) +LocalTax1Management=Second type of tax +LocalTax1IsUsedExample= +LocalTax1IsNotUsedExample= +LocalTax2IsNotUsed=Do not use third tax +LocalTax2IsUsedDesc=Use a third type of tax (other than first one) +LocalTax2IsNotUsedDesc=Do not use other type of tax (other than first one) +LocalTax2Management=Third type of tax +LocalTax2IsUsedExample= +LocalTax2IsNotUsedExample= +LocalTax1ManagementES=RE Management +LocalTax1IsUsedDescES=The RE rate by default when creating prospects, invoices, orders etc. follow the active standard rule:
    If the buyer is not subjected to RE, RE by default=0. End of rule.
    If the buyer is subjected to RE then the RE by default. End of rule.
    +LocalTax1IsNotUsedDescES=By default the proposed RE is 0. End of rule. +LocalTax1IsUsedExampleES=In Spain they are professionals subject to some specific sections of the Spanish IAE. +LocalTax1IsNotUsedExampleES=In Spain they are professional and societies and subject to certain sections of the Spanish IAE. +LocalTax2ManagementES=IRPF Management +LocalTax2IsUsedDescES=The IRPF rate by default when creating prospects, invoices, orders etc. follow the active standard rule:
    If the seller is not subjected to IRPF, then IRPF by default=0. End of rule.
    If the seller is subjected to IRPF then the IRPF by default. End of rule.
    +LocalTax2IsNotUsedDescES=By default the proposed IRPF is 0. End of rule. +LocalTax2IsUsedExampleES=In Spain, freelancers and independent professionals who provide services and companies who have chosen the tax system of modules. +LocalTax2IsNotUsedExampleES=In Spain they are businesses not subject to tax system of modules. +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=Use a tax stamp +UseRevenueStampExample=The value of tax stamp is defined by default into the setup of dictionaries (%s - %s - %s) +CalcLocaltax=Reports on local taxes +CalcLocaltax1=Sales - Purchases +CalcLocaltax1Desc=Local Taxes reports are calculated with the difference between localtaxes sales and localtaxes purchases +CalcLocaltax2=Purchases +CalcLocaltax2Desc=Local Taxes reports are the total of localtaxes purchases +CalcLocaltax3=Sales +CalcLocaltax3Desc=Local Taxes reports are the total of localtaxes sales +NoLocalTaxXForThisCountry=According to the setup of taxes (See %s - %s - %s), your country does not need to use such type of tax +LabelUsedByDefault=Label used by default if no translation can be found for code +LabelOnDocuments=Label on documents +LabelOrTranslationKey=Label or translation key +ValueOfConstantKey=Value of a configuration constant +NbOfDays=No. of days +AtEndOfMonth=At end of month +CurrentNext=Current/Next +Offset=Offset +AlwaysActive=Always active +Upgrade=Upgrade +MenuUpgrade=Upgrade / Extend +AddExtensionThemeModuleOrOther=Deploy/install external app/module +WebServer=Web server +DocumentRootServer=Web server's root directory +DataRootServer=Data files directory +IP=IP +Port=Port +VirtualServerName=Virtual server name +OS=OS +PhpWebLink=Web-Php link +Server=Server +Database=Database +DatabaseServer=Database host +DatabaseName=Database name +DatabasePort=Database port +DatabaseUser=Database user +DatabasePassword=Database password +Tables=Tables +TableName=Table name +NbOfRecord=No. of records +Host=Server +DriverType=Driver type +SummarySystem=System information summary +SummaryConst=List of all Dolibarr setup parameters +MenuCompanySetup=Company/Organization +DefaultMenuManager= Standard menu manager +DefaultMenuSmartphoneManager=Smartphone menu manager +Skin=Skin theme +DefaultSkin=Default skin theme +MaxSizeList=Max length for list +DefaultMaxSizeList=Default max length for lists +DefaultMaxSizeShortList=Default max length for short lists (i.e. in customer card) +MessageOfDay=Message of the day +MessageLogin=Login page message +LoginPage=Login page +BackgroundImageLogin=Background image +PermanentLeftSearchForm=Permanent search form on left menu +DefaultLanguage=Default language +EnableMultilangInterface=Enable multilanguage support +EnableShowLogo=Show the company logo in the menu +CompanyInfo=Company/Organization +CompanyIds=Company/Organization identities +CompanyName=Name +CompanyAddress=Address +CompanyZip=Zip +CompanyTown=Town +CompanyCountry=Country +CompanyCurrency=Main currency +CompanyObject=Object of the company +IDCountry=ID country +Logo=Logo +LogoDesc=Main logo of company. Will be used into generated documents (PDF, ...) +LogoSquarred=Logo (squarred) +LogoSquarredDesc=Must be a squarred icon (width = height). This logo will be used as the favorite icon or other need like for the top menu bar (if not disabled into display setup). +DoNotSuggestPaymentMode=Do not suggest +NoActiveBankAccountDefined=No active bank account defined +OwnerOfBankAccount=Owner of bank account %s +BankModuleNotActive=Bank accounts module not enabled +ShowBugTrackLink=Show link "%s" +Alerts=Alerts +DelaysOfToleranceBeforeWarning=Delay before displaying a warning alert for: +DelaysOfToleranceDesc=Set the delay before an alert icon %s is shown onscreen for the late element. +Delays_MAIN_DELAY_ACTIONS_TODO=Planned events (agenda events) not completed +Delays_MAIN_DELAY_PROJECT_TO_CLOSE=Project not closed in time +Delays_MAIN_DELAY_TASKS_TODO=Planned task (project tasks) not completed +Delays_MAIN_DELAY_ORDERS_TO_PROCESS=Order not processed +Delays_MAIN_DELAY_SUPPLIER_ORDERS_TO_PROCESS=Purchase order not processed +Delays_MAIN_DELAY_PROPALS_TO_CLOSE=Proposal not closed +Delays_MAIN_DELAY_PROPALS_TO_BILL=Proposal not billed +Delays_MAIN_DELAY_NOT_ACTIVATED_SERVICES=Service to activate +Delays_MAIN_DELAY_RUNNING_SERVICES=Expired service +Delays_MAIN_DELAY_SUPPLIER_BILLS_TO_PAY=Unpaid vendor invoice +Delays_MAIN_DELAY_CUSTOMER_BILLS_UNPAYED=Unpaid customer invoice +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 +Delays_MAIN_DELAY_HOLIDAYS=Leave requests 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. The modules related to your needs must be enabled and configured. Menu entries will appears with the activation of these modules. +SetupDescription5=Other Setup menu entries manage optional parameters. +LogEvents=Security audit events +Audit=Audit +InfoDolibarr=About Dolibarr +InfoBrowser=About Browser +InfoOS=About OS +InfoWebServer=About Web Server +InfoDatabase=About Database +InfoPHP=About PHP +InfoPerf=About Performances +BrowserName=Browser name +BrowserOS=Browser OS +ListOfSecurityEvents=List of Dolibarr security events +SecurityEventsPurged=Security events purged +LogEventDesc=Enable logging for specific security events. Administrators the log via menu %s - %s. Warning, this feature can generate a large amount of data in the database. +AreaForAdminOnly=Setup parameters can be set by administrator users only. +SystemInfoDesc=System information is miscellaneous technical information you get in read only mode and visible for administrators only. +SystemAreaForAdminOnly=This area is available to administrator users only. Dolibarr user permissions cannot change this restriction. +CompanyFundationDesc=Edit the information of your company/organization. Click on "%s" button at the bottom of the page when done. +AccountantDesc=If you have an external accountant/bookkeeper, you can edit here its information. +AccountantFileNumber=Accountant code +DisplayDesc=Parameters affecting the look and behaviour of Dolibarr can be modified here. +AvailableModules=Available app/modules +ToActivateModule=To activate modules, go on setup Area (Home->Setup->Modules). +SessionTimeOut=Time out for session +SessionExplanation=This number guarantees that the session will never expire before this delay, if the session cleaner is done by Internal PHP session cleaner (and nothing else). Internal PHP session cleaner does not guarantee that the session will expire after this delay. It will expire, after this delay, and when the session cleaner is run, so every %s/%s access, but only during access made by other sessions (if value is 0, it means clearing of session is done only by an external process).
    Note: on some servers with an external session cleaning mechanism (cron under debian, ubuntu ...), the sessions can be destroyed after a period defined by an external setup, no matter what the value entered here is. +TriggersAvailable=Available triggers +TriggersDesc=Triggers are files that will modify the behavior of Dolibarr workflow once copied into the directory htdocs/core/triggers. They realize new actions, activated on Dolibarr events (new company creation, invoice validation, ...). +TriggerDisabledByName=Triggers in this file are disabled by the -NORUN suffix in their name. +TriggerDisabledAsModuleDisabled=Triggers in this file are disabled as module %s is disabled. +TriggerAlwaysActive=Triggers in this file are always active, whatever are the activated Dolibarr modules. +TriggerActiveAsModuleActive=Triggers in this file are active as module %s is enabled. +GeneratedPasswordDesc=Choose the method to be used for auto-generated passwords. +DictionaryDesc=Insert all reference data. You can add your values to the default. +ConstDesc=This page allows you to edit (override) parameters not available in other pages. These are mostly reserved parameters for developers/advanced troubleshooting only. +MiscellaneousDesc=All other security related parameters are defined here. +LimitsSetup=Limits/Precision setup +LimitsDesc=You can define limits, precisions and optimizations used by Dolibarr here +MAIN_MAX_DECIMALS_UNIT=Max. decimals for unit prices +MAIN_MAX_DECIMALS_TOT=Max. decimals for total prices +MAIN_MAX_DECIMALS_SHOWN=Max. decimals for prices shown on screen. Add an ellipsis ... after this parameter (e.g. "2...") if you want to see "..." suffixed to the truncated price. +MAIN_ROUNDING_RULE_TOT=Step of rounding range (for countries where rounding is done on something other than base 10. For example, put 0.05 if rounding is done by 0.05 steps) +UnitPriceOfProduct=Net unit price of a product +TotalPriceAfterRounding=Total price (excl/vat/incl tax) after rounding +ParameterActiveForNextInputOnly=Parameter effective for next input only +NoEventOrNoAuditSetup=No security event has been logged. This is normal if Audit has not been enabled in the "Setup - Security - Events" page. +NoEventFoundWithCriteria=No security event has been found for this search criteria. +SeeLocalSendMailSetup=See your local sendmail setup +BackupDesc=A complete backup of a Dolibarr installation requires two steps. +BackupDesc2=Backup the contents of the "documents" directory (%s) containing all uploaded and generated files. This will also include all the dump files generated in Step 1. This operation may last several minutes. +BackupDesc3=Backup the structure and contents of your database (%s) into a dump file. For this, you can use the following assistant. +BackupDescX=The archived directory should be stored in a secure place. +BackupDescY=The generated dump file should be stored in a secure place. +BackupPHPWarning=Backup cannot be guaranteed with this method. Previous one recommended. +RestoreDesc=To restore a Dolibarr backup, two steps are required. +RestoreDesc2=Restore the backup file (zip file for example) of the "documents" directory to a new Dolibarr installation or into this current documents directory (%s). +RestoreDesc3=Restore the database structure and data from a backup dump file into the database of the new Dolibarr installation or into the database of this current installation (%s). Warning, once the restore is complete, you must use a login/password, that existed from the backup time/installation to connect again.
    To restore a backup database into this current installation, you can follow this assistant. +RestoreMySQL=MySQL import +ForcedToByAModule= This rule is forced to %s by an activated module +PreviousDumpFiles=Existing backup files +PreviousArchiveFiles=Existing archive files +WeekStartOnDay=First day of the week +RunningUpdateProcessMayBeRequired=Running the upgrade process seems to be required (Program version %s differs from Database version %s) +YouMustRunCommandFromCommandLineAfterLoginToUser=You must run this command from command line after login to a shell with user %s or you must add -W option at end of command line to provide %s password. +YourPHPDoesNotHaveSSLSupport=SSL functions not available in your PHP +DownloadMoreSkins=More skins to download +SimpleNumRefModelDesc=Returns the reference number with format %syymm-nnnn where yy is year, mm is month and nnnn is sequential with no reset +ShowProfIdInAddress=Show professional id with addresses +ShowVATIntaInAddress=Hide intra-Community VAT number with addresses +TranslationUncomplete=Partial translation +MAIN_DISABLE_METEO=Disable meteorological view +MeteoStdMod=Standard mode +MeteoStdModEnabled=Standard mode enabled +MeteoPercentageMod=Percentage mode +MeteoPercentageModEnabled=Percentage mode enabled +MeteoUseMod=Click to use %s +TestLoginToAPI=Test login to API +ProxyDesc=Some features of Dolibarr require internet access. Define here the internet connection parameters such as access through a proxy server if necessary. +ExternalAccess=External/Internet Access +MAIN_PROXY_USE=Use a proxy server (otherwise access is direct to the internet) +MAIN_PROXY_HOST=Proxy server: Name/Address +MAIN_PROXY_PORT=Proxy server: Port +MAIN_PROXY_USER=Proxy server: Login/User +MAIN_PROXY_PASS=Proxy server: Password +DefineHereComplementaryAttributes=Define here any additional/custom attributes that you want to be included for: %s +ExtraFields=Complementary attributes +ExtraFieldsLines=Complementary attributes (lines) +ExtraFieldsLinesRec=Complementary attributes (templates invoices lines) +ExtraFieldsSupplierOrdersLines=Complementary attributes (order lines) +ExtraFieldsSupplierInvoicesLines=Complementary attributes (invoice lines) +ExtraFieldsThirdParties=Complementary attributes (third party) +ExtraFieldsContacts=Complementary attributes (contacts/address) +ExtraFieldsMember=Complementary attributes (member) +ExtraFieldsMemberType=Complementary attributes (member type) +ExtraFieldsCustomerInvoices=Complementary attributes (invoices) +ExtraFieldsCustomerInvoicesRec=Complementary attributes (templates invoices) +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). +PathToDocuments=Path to documents +PathDirectory=Directory +SendmailOptionMayHurtBuggedMTA=Feature to send mails using method "PHP mail direct" will generate a mail message that might not be parsed correctly by some receiving mail servers. The result is that some mails can't be read by people hosted by those bugged platforms. This is the case for some Internet providers (Ex: Orange in France). This is not a problem with Dolibarr or PHP but with the receiving mail server. You can however add an option MAIN_FIX_FOR_BUGGED_MTA to 1 in Setup - Other to modify Dolibarr to avoid this. However, you may experience problems with other servers that strictly use the SMTP standard. The other solution (recommended) is to use the method "SMTP socket library" which has no disadvantages. +TranslationSetup=Setup of translation +TranslationKeySearch=Search a translation key or string +TranslationOverwriteKey=Overwrite a translation string +TranslationDesc=How to set the display language:
    * Default/Systemwide: menu Home -> Setup -> Display
    * Per user: Click on the username at the top of the screen and modify the User Display Setup tab on the user card. +TranslationOverwriteDesc=You can also override strings filling the following table. Choose your language from "%s" dropdown, insert the translation key string into "%s" and your new translation into "%s" +TranslationOverwriteDesc2=You can use the other tab to help you know which translation key to use +TranslationString=Translation string +CurrentTranslationString=Current translation string +WarningAtLeastKeyOrTranslationRequired=A search criteria is required at least for key or translation string +NewTranslationStringToShow=New translation string to show +OriginalValueWas=The original translation is overwritten. Original value was:

    %s +TransKeyWithoutOriginalValue=You forced a new translation for the translation key '%s' that does not exist in any language files +TotalNumberOfActivatedModules=Activated application/modules: %s / %s +YouMustEnableOneModule=You must at least enable 1 module +ClassNotFoundIntoPathWarning=Class %s not found in PHP path +YesInSummer=Yes in summer +OnlyFollowingModulesAreOpenedToExternalUsers=Note, only the following modules are available to external users (irrespective of the permissions of such users) and only if permissions are granted:
    +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. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. +SearchOptim=Search optimization +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. +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. +FieldEdition=Edition of field %s +FillThisOnlyIfRequired=Example: +2 (fill only if timezone offset problems are experienced) +GetBarCode=Get barcode +NumberingModules=Numbering models +##### Module password generation +PasswordGenerationStandard=Return a password generated according to internal Dolibarr algorithm: 8 characters containing shared numbers and characters in lowercase. +PasswordGenerationNone=Do not suggest a generated password. Password must be typed in manually. +PasswordGenerationPerso=Return a password according to your personally defined configuration. +SetupPerso=According to your configuration +PasswordPatternDesc=Password pattern description +##### Users setup ##### +RuleForGeneratedPasswords=Rules to generate and validate passwords +DisableForgetPasswordLinkOnLogonPage=Do not show the "Password Forgotten" link on the Login page +UsersSetup=Users module setup +UserMailRequired=Email required to create a new user +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=Document templates for documents generated from user record +GroupsDocModules=Document templates for documents generated from a group record +##### HRM setup ##### +HRMSetup=HRM module setup +##### Company setup ##### +CompanySetup=Companies module setup +CompanyCodeChecker=Options for automatic generation of customer/vendor codes +AccountCodeManager=Options for automatic generation of customer/vendor accounting codes +NotificationsDesc=Email notifications can be sent automatically for some Dolibarr events.
    Recipients of notifications can be defined: +NotificationsDescUser=* per user, one user at a time. +NotificationsDescContact=* per third-party contacts (customers or vendors), one contact at a time. +NotificationsDescGlobal=* or by setting global email addresses in this setup page. +ModelModules=Document Templates +DocumentModelOdt=Generate documents from OpenDocument templates (.ODT / .ODS files from LibreOffice, OpenOffice, KOffice, TextEdit,...) +WatermarkOnDraft=Watermark on draft document +JSOnPaimentBill=Activate feature to autofill payment lines on payment form +CompanyIdProfChecker=Rules for Professional IDs +MustBeUnique=Must be unique? +MustBeMandatory=Mandatory to create third parties (if VAT number or type of company defined) ? +MustBeInvoiceMandatory=Mandatory to validate invoices? +TechnicalServicesProvided=Technical services provided +#####DAV ##### +WebDAVSetupDesc=This is the link to access the WebDAV directory. It contains a "public" dir open to any user knowing the URL (if public directory access allowed) and a "private" directory that needs an existing login account/password for access. +WebDavServer=Root URL of %s server: %s +##### Webcal setup ##### +WebCalUrlForVCalExport=An export link to %s format is available at following link: %s +##### Invoices ##### +BillsSetup=Invoices module setup +BillsNumberingModule=Invoices and credit notes numbering model +BillsPDFModules=Invoice documents models +BillsPDFModulesAccordindToInvoiceType=Invoice documents models according to invoice type +PaymentsPDFModules=Payment documents models +ForceInvoiceDate=Force invoice date to validation date +SuggestedPaymentModesIfNotDefinedInInvoice=Suggested payments mode on invoice by default if not defined on the invoice +SuggestPaymentByRIBOnAccount=Suggest payment by withdrawal on account +SuggestPaymentByChequeToAddress=Suggest payment by check to +FreeLegalTextOnInvoices=Free text on invoices +WatermarkOnDraftInvoices=Watermark on draft invoices (none if empty) +PaymentsNumberingModule=Payments numbering model +SuppliersPayment=Vendor payments +SupplierPaymentSetup=Vendor payments setup +##### Proposals ##### +PropalSetup=Commercial proposals module setup +ProposalsNumberingModules=Commercial proposal numbering models +ProposalsPDFModules=Commercial proposal documents models +SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined on the proposal +FreeLegalTextOnProposal=Free text on commercial proposals +WatermarkOnDraftProposal=Watermark on draft commercial proposals (none if empty) +BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal +##### SupplierProposal ##### +SupplierProposalSetup=Price requests suppliers module setup +SupplierProposalNumberingModules=Price requests suppliers numbering models +SupplierProposalPDFModules=Price requests suppliers documents models +FreeLegalTextOnSupplierProposal=Free text on price requests suppliers +WatermarkOnDraftSupplierProposal=Watermark on draft price requests suppliers (none if empty) +BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_PROPOSAL=Ask for bank account destination of price request +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 ##### +SuggestedPaymentModesIfNotDefinedInOrder=Suggested payments mode on sale order by default if not defined on the order +OrdersSetup=Sales Orders management setup +OrdersNumberingModules=Orders numbering models +OrdersModelModule=Order documents models +FreeLegalTextOnOrders=Free text on orders +WatermarkOnDraftOrders=Watermark on draft orders (none if empty) +ShippableOrderIconInList=Add an icon in Orders list which indicate if order is shippable +BANK_ASK_PAYMENT_BANK_DURING_ORDER=Ask for bank account destination of order +##### Interventions ##### +InterventionsSetup=Interventions module setup +FreeLegalTextOnInterventions=Free text on intervention documents +FicheinterNumberingModules=Intervention numbering models +TemplatePDFInterventions=Intervention card documents models +WatermarkOnDraftInterventionCards=Watermark on intervention card documents (none if empty) +##### Contracts ##### +ContractsSetup=Contracts/Subscriptions module setup +ContractsNumberingModules=Contracts numbering modules +TemplatePDFContracts=Contracts documents models +FreeLegalTextOnContracts=Free text on contracts +WatermarkOnDraftContractCards=Watermark on draft contracts (none if empty) +##### Members ##### +MembersSetup=Members module setup +MemberMainOptions=Main options +AdherentLoginRequired= Manage a Login for each member +AdherentMailRequired=Email required to create a new member +MemberSendInformationByMailByDefault=Checkbox to send mail confirmation to members (validation or new subscription) is on by default +VisitorCanChooseItsPaymentMode=Visitor can choose from available payment modes +MEMBER_REMINDER_EMAIL=Enable automatic reminder by email of expired subscriptions. Note: Module %s must be enabled and correctly setup to send reminders. +##### LDAP setup ##### +LDAPSetup=LDAP Setup +LDAPGlobalParameters=Global parameters +LDAPUsersSynchro=Users +LDAPGroupsSynchro=Groups +LDAPContactsSynchro=Contacts +LDAPMembersSynchro=Members +LDAPMembersTypesSynchro=Members types +LDAPSynchronization=LDAP synchronisation +LDAPFunctionsNotAvailableOnPHP=LDAP functions are not available on your PHP +LDAPToDolibarr=LDAP -> Dolibarr +DolibarrToLDAP=Dolibarr -> LDAP +LDAPNamingAttribute=Key in LDAP +LDAPSynchronizeUsers=Organization of users in LDAP +LDAPSynchronizeGroups=Organization of groups in LDAP +LDAPSynchronizeContacts=Organization of contacts in LDAP +LDAPSynchronizeMembers=Organization of foundation's members in LDAP +LDAPSynchronizeMembersTypes=Organization of foundation's members types in LDAP +LDAPPrimaryServer=Primary server +LDAPSecondaryServer=Secondary server +LDAPServerPort=Server port +LDAPServerPortExample=Default port: 389 +LDAPServerProtocolVersion=Protocol version +LDAPServerUseTLS=Use TLS +LDAPServerUseTLSExample=Your LDAP server use TLS +LDAPServerDn=Server DN +LDAPAdminDn=Administrator DN +LDAPAdminDnExample=Complete DN (ex: cn=admin,dc=example,dc=com or cn=Administrator,cn=Users,dc=example,dc=com for active directory) +LDAPPassword=Administrator password +LDAPUserDn=Users' DN +LDAPUserDnExample=Complete DN (ex: ou=users,dc=example,dc=com) +LDAPGroupDn=Groups' DN +LDAPGroupDnExample=Complete DN (ex: ou=groups,dc=example,dc=com) +LDAPServerExample=Server address (ex: localhost, 192.168.0.2, ldaps://ldap.example.com/) +LDAPServerDnExample=Complete DN (ex: dc=example,dc=com) +LDAPDnSynchroActive=Users and groups synchronization +LDAPDnSynchroActiveExample=LDAP to Dolibarr or Dolibarr to LDAP synchronization +LDAPDnContactActive=Contacts' synchronization +LDAPDnContactActiveExample=Activated/Unactivated synchronization +LDAPDnMemberActive=Members' synchronization +LDAPDnMemberActiveExample=Activated/Unactivated synchronization +LDAPDnMemberTypeActive=Members types' synchronization +LDAPDnMemberTypeActiveExample=Activated/Unactivated synchronization +LDAPContactDn=Dolibarr contacts' DN +LDAPContactDnExample=Complete DN (ex: ou=contacts,dc=example,dc=com) +LDAPMemberDn=Dolibarr members DN +LDAPMemberDnExample=Complete DN (ex: ou=members,dc=example,dc=com) +LDAPMemberObjectClassList=List of objectClass +LDAPMemberObjectClassListExample=List of objectClass defining record attributes (ex: top,inetOrgPerson or top,user for active directory) +LDAPMemberTypeDn=Dolibarr members types DN +LDAPMemberTypepDnExample=Complete DN (ex: ou=memberstypes,dc=example,dc=com) +LDAPMemberTypeObjectClassList=List of objectClass +LDAPMemberTypeObjectClassListExample=List of objectClass defining record attributes (ex: top,groupOfUniqueNames) +LDAPUserObjectClassList=List of objectClass +LDAPUserObjectClassListExample=List of objectClass defining record attributes (ex: top,inetOrgPerson or top,user for active directory) +LDAPGroupObjectClassList=List of objectClass +LDAPGroupObjectClassListExample=List of objectClass defining record attributes (ex: top,groupOfUniqueNames) +LDAPContactObjectClassList=List of objectClass +LDAPContactObjectClassListExample=List of objectClass defining record attributes (ex: top,inetOrgPerson or top,user for active directory) +LDAPTestConnect=Test LDAP connection +LDAPTestSynchroContact=Test contacts synchronization +LDAPTestSynchroUser=Test user synchronization +LDAPTestSynchroGroup=Test group synchronization +LDAPTestSynchroMember=Test member synchronization +LDAPTestSynchroMemberType=Test member type synchronization +LDAPTestSearch= Test a LDAP search +LDAPSynchroOK=Synchronization test successful +LDAPSynchroKO=Failed synchronization test +LDAPSynchroKOMayBePermissions=Failed synchronization test. Check that the connection to the server is correctly configured and allows LDAP updates +LDAPTCPConnectOK=TCP connect to LDAP server successful (Server=%s, Port=%s) +LDAPTCPConnectKO=TCP connect to LDAP server failed (Server=%s, Port=%s) +LDAPBindOK=Connect/Authenticate to LDAP server successful (Server=%s, Port=%s, Admin=%s, Password=%s) +LDAPBindKO=Connect/Authenticate to LDAP server failed (Server=%s, Port=%s, Admin=%s, Password=%s) +LDAPSetupForVersion3=LDAP server configured for version 3 +LDAPSetupForVersion2=LDAP server configured for version 2 +LDAPDolibarrMapping=Dolibarr Mapping +LDAPLdapMapping=LDAP Mapping +LDAPFieldLoginUnix=Login (unix) +LDAPFieldLoginExample=Example: uid +LDAPFilterConnection=Search filter +LDAPFilterConnectionExample=Example: &(objectClass=inetOrgPerson) +LDAPFieldLoginSamba=Login (samba, activedirectory) +LDAPFieldLoginSambaExample=Example: samaccountname +LDAPFieldFullname=Full name +LDAPFieldFullnameExample=Example: cn +LDAPFieldPasswordNotCrypted=Password not encrypted +LDAPFieldPasswordCrypted=Password encrypted +LDAPFieldPasswordExample=Example: userPassword +LDAPFieldCommonNameExample=Example: cn +LDAPFieldName=Name +LDAPFieldNameExample=Example: sn +LDAPFieldFirstName=First name +LDAPFieldFirstNameExample=Example: givenName +LDAPFieldMail=Email address +LDAPFieldMailExample=Example: mail +LDAPFieldPhone=Professional phone number +LDAPFieldPhoneExample=Example: telephonenumber +LDAPFieldHomePhone=Personal phone number +LDAPFieldHomePhoneExample=Example: homephone +LDAPFieldMobile=Cellular phone +LDAPFieldMobileExample=Example: mobile +LDAPFieldFax=Fax number +LDAPFieldFaxExample=Example: facsimiletelephonenumber +LDAPFieldAddress=Street +LDAPFieldAddressExample=Example: street +LDAPFieldZip=Zip +LDAPFieldZipExample=Example: postalcode +LDAPFieldTown=Town +LDAPFieldTownExample=Example: l +LDAPFieldCountry=Country +LDAPFieldDescription=Description +LDAPFieldDescriptionExample=Example: description +LDAPFieldNotePublic=Public Note +LDAPFieldNotePublicExample=Example: publicnote +LDAPFieldGroupMembers= Group members +LDAPFieldGroupMembersExample= Example: uniqueMember +LDAPFieldBirthdate=Birthdate +LDAPFieldCompany=Company +LDAPFieldCompanyExample=Example: o +LDAPFieldSid=SID +LDAPFieldSidExample=Example: objectsid +LDAPFieldEndLastSubscription=Date of subscription end +LDAPFieldTitle=Job position +LDAPFieldTitleExample=Example: title +LDAPFieldGroupid=Group id +LDAPFieldGroupidExample=Exemple : gidnumber +LDAPFieldUserid=User id +LDAPFieldUseridExample=Exemple : uidnumber +LDAPFieldHomedirectory=Home directory +LDAPFieldHomedirectoryExample=Exemple : homedirectory +LDAPFieldHomedirectoryprefix=Home directory prefix +LDAPSetupNotComplete=LDAP setup not complete (go on others tabs) +LDAPNoUserOrPasswordProvidedAccessIsReadOnly=No administrator or password provided. LDAP access will be anonymous and in read only mode. +LDAPDescContact=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr contacts. +LDAPDescUsers=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr users. +LDAPDescGroups=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr groups. +LDAPDescMembers=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr members module. +LDAPDescMembersTypes=This page allows you to define LDAP attributes name in LDAP tree for each data found on Dolibarr members types. +LDAPDescValues=Example values are designed for OpenLDAP with following loaded schemas: core.schema, cosine.schema, inetorgperson.schema). If you use thoose values and OpenLDAP, modify your LDAP config file slapd.conf to have all thoose schemas loaded. +ForANonAnonymousAccess=For an authenticated access (for a write access for example) +PerfDolibarr=Performance setup/optimizing report +YouMayFindPerfAdviceHere=This page provides some checks or advice related to performance. +NotInstalled=Not installed, so your server is not slowed down by this. +ApplicativeCache=Applicative cache +MemcachedNotAvailable=No applicative cache found. You can enhance performance by installing a cache server Memcached and a module able to use this cache server.
    More information here http://wiki.dolibarr.org/index.php/Module_MemCached_EN.
    Note that a lot of web hosting provider does not provide such cache server. +MemcachedModuleAvailableButNotSetup=Module memcached for applicative cache found but setup of module is not complete. +MemcachedAvailableAndSetup=Module memcached dedicated to use memcached server is enabled. +OPCodeCache=OPCode cache +NoOPCodeCacheFound=No OPCode cache found. Maybe you are using an OPCode cache other than XCache or eAccelerator (good), or maybe you don't have OPCode cache (very bad). +HTTPCacheStaticResources=HTTP cache for static resources (css, img, javascript) +FilesOfTypeCached=Files of type %s are cached by HTTP server +FilesOfTypeNotCached=Files of type %s are not cached by HTTP server +FilesOfTypeCompressed=Files of type %s are compressed by HTTP server +FilesOfTypeNotCompressed=Files of type %s are not compressed by HTTP server +CacheByServer=Cache by server +CacheByServerDesc=For example using the Apache directive "ExpiresByType image/gif A2592000" +CacheByClient=Cache by browser +CompressionOfResources=Compression of HTTP responses +CompressionOfResourcesDesc=For example using the Apache directive "AddOutputFilterByType DEFLATE" +TestNotPossibleWithCurrentBrowsers=Such an automatic detection is not possible with current browsers +DefaultValuesDesc=Here you may define the default value you wish to use when creating a new record, and/or default filters or the sort order when you list records. +DefaultCreateForm=Default values (to use on forms) +DefaultSearchFilters=Default search filters +DefaultSortOrder=Default sort orders +DefaultFocus=Default focus fields +DefaultMandatory=Mandatory form fields +##### Products ##### +ProductSetup=Products module setup +ServiceSetup=Services module setup +ProductServiceSetup=Products and Services modules setup +NumberOfProductShowInSelect=Maximum number of products to show in combo select lists (0=no limit) +ViewProductDescInFormAbility=Display product descriptions in forms (otherwise shown in a tooltip popup) +MergePropalProductCard=Activate in product/service Attached Files tab an option to merge product PDF document to proposal PDF azur if product/service is in the proposal +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=Default barcode type to use for products +SetDefaultBarcodeTypeThirdParties=Default barcode type to use for third parties +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= Product / Service configuration +IsNotADir=is not a directory! +##### Syslog ##### +SyslogSetup=Logs module setup +SyslogOutput=Logs outputs +SyslogFacility=Facility +SyslogLevel=Level +SyslogFilename=File name and path +YouCanUseDOL_DATA_ROOT=You can use DOL_DATA_ROOT/dolibarr.log for a log file in Dolibarr "documents" directory. You can set a different path to store this file. +ErrorUnknownSyslogConstant=Constant %s is not a known Syslog constant +OnlyWindowsLOG_USER=Windows only supports LOG_USER +CompressSyslogs=Compression and backup of debug log files (generated by module Log for debug) +SyslogFileNumberOfSaves=Log backups +ConfigureCleaningCronjobToSetFrequencyOfSaves=Configure cleaning scheduled job to set log backup frequency +##### Donations ##### +DonationsSetup=Donation module setup +DonationsReceiptModel=Template of donation receipt +##### Barcode ##### +BarcodeSetup=Barcode setup +PaperFormatModule=Print format module +BarcodeEncodeModule=Barcode encoding type +CodeBarGenerator=Barcode generator +ChooseABarCode=No generator defined +FormatNotSupportedByGenerator=Format not supported by this generator +BarcodeDescEAN8=Barcode of type EAN8 +BarcodeDescEAN13=Barcode of type EAN13 +BarcodeDescUPC=Barcode of type UPC +BarcodeDescISBN=Barcode of type ISBN +BarcodeDescC39=Barcode of type C39 +BarcodeDescC128=Barcode of type C128 +BarcodeDescDATAMATRIX=Barcode of type Datamatrix +BarcodeDescQRCODE=Barcode of type QR code +GenbarcodeLocation=Bar code generation command line tool (used by internal engine for some bar code types). Must be compatible with "genbarcode".
    For example: /usr/local/bin/genbarcode +BarcodeInternalEngine=Internal engine +BarCodeNumberManager=Manager to auto define barcode numbers +##### Prelevements ##### +WithdrawalsSetup=Setup of module Direct Debit payments +##### ExternalRSS ##### +ExternalRSSSetup=External RSS imports setup +NewRSS=New RSS Feed +RSSUrl=RSS URL +RSSUrlExample=An interesting RSS feed +##### Mailing ##### +MailingSetup=EMailing module setup +MailingEMailFrom=Sender email (From) for emails sent by emailing module +MailingEMailError=Return Email (Errors-to) for emails with errors +MailingDelay=Seconds to wait after sending next message +##### Notification ##### +NotificationSetup=Email Notification module setup +NotificationEMailFrom=Sender email (From) for emails sent by the Notifications module +FixedEmailTarget=Recipient +##### Sendings ##### +SendingsSetup=Shipping module setup +SendingsReceiptModel=Sending receipt model +SendingsNumberingModules=Sendings numbering modules +SendingsAbility=Support shipping sheets for customer deliveries +NoNeedForDeliveryReceipts=In most cases, shipping sheets are used both as sheets for customer deliveries (list of products to send) and sheets that are received and signed by customer. Hence the product deliveries receipt is a duplicated feature and is rarely activated. +FreeLegalTextOnShippings=Free text on shipments +##### Deliveries ##### +DeliveryOrderNumberingModules=Products deliveries receipt numbering module +DeliveryOrderModel=Products deliveries receipt model +DeliveriesOrderAbility=Support products deliveries receipts +FreeLegalTextOnDeliveryReceipts=Free text on delivery receipts +##### FCKeditor ##### +AdvancedEditor=Advanced editor +ActivateFCKeditor=Activate advanced editor for: +FCKeditorForCompany=WYSIWIG creation/edition of elements description and note (except products/services) +FCKeditorForProduct=WYSIWIG creation/edition of products/services description and note +FCKeditorForProductDetails=WYSIWIG creation/edition of products details lines for all entities (proposals, orders, invoices, etc...). Warning: Using this option for this case is seriously not recommended as it can create problems with special characters and page formatting when building PDF files. +FCKeditorForMailing= WYSIWIG creation/edition for mass eMailings (Tools->eMailing) +FCKeditorForUserSignature=WYSIWIG creation/edition of user signature +FCKeditorForMail=WYSIWIG creation/edition for all mail (except Tools->eMailing) +FCKeditorForTicket=WYSIWIG creation/edition for tickets +##### Stock ##### +StockSetup=Stock module setup +IfYouUsePointOfSaleCheckModule=If you use the Point of Sale module (POS) provided by default or an external module, this setup may be ignored by your POS module. Most POS modules are designed by default to create an invoice immediately and decrease stock irrespective of the options here. So if you need or not to have a stock decrease when registering a sale from your POS, check also your POS module setup. +##### Menu ##### +MenuDeleted=Menu deleted +Menus=Menus +TreeMenuPersonalized=Personalized menus +NotTopTreeMenuPersonalized=Personalized menus not linked to a top menu entry +NewMenu=New menu +Menu=Selection of menu +MenuHandler=Menu handler +MenuModule=Source module +HideUnauthorizedMenu= Hide unauthorized menus (gray) +DetailId=Id menu +DetailMenuHandler=Menu handler where to show new menu +DetailMenuModule=Module name if menu entry come from a module +DetailType=Type of menu (top or left) +DetailTitre=Menu label or label code for translation +DetailUrl=URL where menu send you (Absolute URL link or external link with http://) +DetailEnabled=Condition to show or not entry +DetailRight=Condition to display unauthorized grey menus +DetailLangs=Lang file name for label code translation +DetailUser=Intern / Extern / All +Target=Target +DetailTarget=Target for links (_blank top opens a new window) +DetailLevel=Level (-1:top menu, 0:header menu, >0 menu and sub menu) +ModifMenu=Menu change +DeleteMenu=Delete menu entry +ConfirmDeleteMenu=Are you sure you want to delete menu entry %s? +FailedToInitializeMenu=Failed to initialize menu +##### Tax ##### +TaxSetup=Taxes, social or fiscal taxes and dividends module setup +OptionVatMode=VAT due +OptionVATDefault=Standard basis +OptionVATDebitOption=Accrual basis +OptionVatDefaultDesc=VAT is due:
    - on delivery of goods (based on invoice date)
    - on payments for services +OptionVatDebitOptionDesc=VAT is due:
    - on delivery of goods (based on invoice date)
    - on invoice (debit) for services +OptionPaymentForProductAndServices=Cash basis for products and services +OptionPaymentForProductAndServicesDesc=VAT is due:
    - on payment for goods
    - on payments for services +SummaryOfVatExigibilityUsedByDefault=Time of VAT eligibility by default according to chosen option: +OnDelivery=On delivery +OnPayment=On payment +OnInvoice=On invoice +SupposedToBePaymentDate=Payment date used +SupposedToBeInvoiceDate=Invoice date used +Buy=Buy +Sell=Sell +InvoiceDateUsed=Invoice date used +YourCompanyDoesNotUseVAT=Your company has been defined to not use VAT (Home - Setup - Company/Organization), so there is no VAT options to setup. +AccountancyCode=Accounting Code +AccountancyCodeSell=Sale account. code +AccountancyCodeBuy=Purchase account. code +##### Agenda ##### +AgendaSetup=Events and agenda module setup +PasswordTogetVCalExport=Key to authorize export link +PastDelayVCalExport=Do not export event older than +AGENDA_USE_EVENT_TYPE=Use events types (managed in menu Setup -> Dictionaries -> Type of agenda events) +AGENDA_USE_EVENT_TYPE_DEFAULT=Automatically set this default value for type of event in event create form +AGENDA_DEFAULT_FILTER_TYPE=Automatically set this type of event in search filter of agenda view +AGENDA_DEFAULT_FILTER_STATUS=Automatically set this status for events in search filter of agenda view +AGENDA_DEFAULT_VIEW=Which tab do you want to open by default when selecting menu Agenda +AGENDA_REMINDER_EMAIL=Enable event reminder by emails (remind option/delay can be defined on each event). Note: Module %s must be enabled and correctly setup to have reminder sent at the correct frequency. +AGENDA_REMINDER_BROWSER=Enable event reminder on user's browser (when event date is reached, each user is able to refuse this from the browser confirmation question) +AGENDA_REMINDER_BROWSER_SOUND=Enable sound notification +AGENDA_SHOW_LINKED_OBJECT=Show linked object into agenda view +##### Clicktodial ##### +ClickToDialSetup=Click To Dial module setup +ClickToDialUrlDesc=Url called when a click on phone picto is done. In URL, you can use tags
    __PHONETO__ that will be replaced with the phone number of person to call
    __PHONEFROM__ that will be replaced with phone number of calling person (yours)
    __LOGIN__ that will be replaced with clicktodial login (defined on user card)
    __PASS__ that will be replaced with clicktodial password (defined on user card). +ClickToDialDesc=This module makea phone numbers clickable links. A click on the icon will make your phone call the number. This can be used to call a call-center system from Dolibarr that can call the phone number on a SIP system for example. +ClickToDialUseTelLink=Use just a link "tel:" on phone numbers +ClickToDialUseTelLinkDesc=Use this method if your users have a softphone or a software interface installed on the same computer as the browser, and called when you click on a link in your browser that starts with "tel:". If you need a full server solution (no need of local software installation), you must set this to "No" and fill next field. +##### Point Of Sale (CashDesk) ##### +CashDesk=Point of Sale +CashDeskSetup=Point of Sales module setup +CashDeskThirdPartyForSell=Default generic third party to use for sales +CashDeskBankAccountForSell=Default account to use to receive cash payments +CashDeskBankAccountForCheque=Default account to use to receive payments by check +CashDeskBankAccountForCB=Default account to use to receive payments by credit cards +CashDeskBankAccountForSumup=Default bank account to use to receive payments by SumUp +CashDeskDoNotDecreaseStock=Disable stock decrease when a sale is done from Point of Sale (if "no", stock decrease is done for each sale done from POS, irrespective of the option set in module Stock). +CashDeskIdWareHouse=Force and restrict warehouse to use for stock decrease +StockDecreaseForPointOfSaleDisabled=Stock decrease from Point of Sale disabled +StockDecreaseForPointOfSaleDisabledbyBatch=Stock decrease in POS is not compatible with module Serial/Lot management (currently active) so stock decrease is disabled. +CashDeskYouDidNotDisableStockDecease=You did not disable stock decrease when making a sale from Point of Sale. Hence a warehouse is required. +CashDeskForceDecreaseStockLabel=Stock decrease for batch products was forced. +CashDeskForceDecreaseStockDesc=Decrease first by the oldest eatby and sellby dates. +CashDeskReaderKeyCodeForEnter=Key code for "Enter" defined in barcode reader (Example: 13) +##### Bookmark ##### +BookmarkSetup=Bookmark module setup +BookmarkDesc=This module allows you to manage bookmarks. You can also add shortcuts to any Dolibarr pages or external web sites on your left menu. +NbOfBoomarkToShow=Maximum number of bookmarks to show in left menu +##### WebServices ##### +WebServicesSetup=Webservices module setup +WebServicesDesc=By enabling this module, Dolibarr become a web service server to provide miscellaneous web services. +WSDLCanBeDownloadedHere=WSDL descriptor files of provided services can be download here +EndPointIs=SOAP clients must send their requests to the Dolibarr endpoint available at URL +##### API #### +ApiSetup=API module setup +ApiDesc=By enabling this module, Dolibarr become a REST server to provide miscellaneous web services. +ApiProductionMode=Enable production mode (this will activate use of a cache for services management) +ApiExporerIs=You can explore and test the APIs at URL +OnlyActiveElementsAreExposed=Only elements from enabled modules are exposed +ApiKey=Key for API +WarningAPIExplorerDisabled=The API explorer has been disabled. API explorer is not required to provide API services. It is a tool for developer to find/test REST APIs. If you need this tool, go into setup of module API REST to activate it. +##### Bank ##### +BankSetupModule=Bank module setup +FreeLegalTextOnChequeReceipts=Free text on check receipts +BankOrderShow=Display order of bank accounts for countries using "detailed bank number" +BankOrderGlobal=General +BankOrderGlobalDesc=General display order +BankOrderES=Spanish +BankOrderESDesc=Spanish display order +ChequeReceiptsNumberingModule=Check Receipts Numbering Module +##### Multicompany ##### +MultiCompanySetup=Multi-company module setup +##### Suppliers ##### +SuppliersSetup=Vendor module setup +SuppliersCommandModel=Complete template of Purchase Order +SuppliersCommandModelMuscadet=Complete template of Purchase Order (old implementation of cornas template) +SuppliersInvoiceModel=Complete template of Vendor Invoice +SuppliersInvoiceNumberingModel=Vendor invoices numbering models +IfSetToYesDontForgetPermission=If set to a non null value, don't forget to provide permissions to groups or users allowed for the second approval +##### GeoIPMaxmind ##### +GeoIPMaxmindSetup=GeoIP Maxmind module setup +PathToGeoIPMaxmindCountryDataFile=Path to file containing Maxmind ip to country translation.
    Examples:
    /usr/local/share/GeoIP/GeoIP.dat
    /usr/share/GeoIP/GeoIP.dat
    /usr/share/GeoIP/GeoLite2-Country.mmdb +NoteOnPathLocation=Note that your ip to country data file must be inside a directory your PHP can read (Check your PHP open_basedir setup and filesystem permissions). +YouCanDownloadFreeDatFileTo=You can download a free demo version of the Maxmind GeoIP country file at %s. +YouCanDownloadAdvancedDatFileTo=You can also download a more complete version, with updates, of the Maxmind GeoIP country file at %s. +TestGeoIPResult=Test of a conversion IP -> country +##### Projects ##### +ProjectsNumberingModules=Projects numbering module +ProjectsSetup=Project module setup +ProjectsModelModule=Project reports document model +TasksNumberingModules=Tasks numbering module +TaskModelModule=Tasks reports document model +UseSearchToSelectProject=Wait until a key is pressed before loading content of Project combo list.
    This may improve performance if you have a large number of projects, but it is less convenient. +##### ECM (GED) ##### +##### Fiscal Year ##### +AccountingPeriods=Accounting periods +AccountingPeriodCard=Accounting period +NewFiscalYear=New accounting period +OpenFiscalYear=Open accounting period +CloseFiscalYear=Close accounting period +DeleteFiscalYear=Delete accounting period +ConfirmDeleteFiscalYear=Are you sure to delete this accounting period? +ShowFiscalYear=Show accounting period +AlwaysEditable=Can always be edited +MAIN_APPLICATION_TITLE=Force visible name of application (warning: setting your own name here may break autofill login feature when using DoliDroid mobile application) +NbMajMin=Minimum number of uppercase characters +NbNumMin=Minimum number of numeric characters +NbSpeMin=Minimum number of special characters +NbIteConsecutive=Maximum number of repeating same characters +NoAmbiCaracAutoGeneration=Do not use ambiguous characters ("1","l","i","|","0","O") for automatic generation +SalariesSetup=Setup of module salaries +SortOrder=Sort order +Format=Format +TypePaymentDesc=0:Customer payment type, 1:Vendor payment type, 2:Both customers and suppliers payment type +IncludePath=Include path (defined into variable %s) +ExpenseReportsSetup=Setup of module Expense Reports +TemplatePDFExpenseReports=Document templates to generate expense report document +ExpenseReportsIkSetup=Setup of module Expense Reports - Milles index +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 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 to the tab "Notifications" of a third party to add or remove notifications for contacts/addresses +Threshold=Threshold +BackupDumpWizard=Wizard to build the database dump file +BackupZipWizard=Wizard to build the archive of documents directory +SomethingMakeInstallFromWebNotPossible=Installation of external module is not possible from the web interface for the following reason: +SomethingMakeInstallFromWebNotPossible2=For this reason, process to upgrade described here is a manual process only a privileged user may perform. +InstallModuleFromWebHasBeenDisabledByFile=Install of external module from application has been disabled by your administrator. You must ask him to remove the file %s to allow this feature. +ConfFileMustContainCustom=Installing or building an external module from application need to save the module files into directory %s. To have this directory processed by Dolibarr, you must setup your conf/conf.php to add the 2 directive lines:
    $dolibarr_main_url_root_alt='/custom';
    $dolibarr_main_document_root_alt='%s/custom'; +HighlightLinesOnMouseHover=Highlight table lines when mouse move passes over +HighlightLinesColor=Highlight color of the line when the mouse passes over (use 'ffffff' for no highlight) +HighlightLinesChecked=Highlight color of the line when it is checked (use 'ffffff' for no highlight) +TextTitleColor=Text color of Page title +LinkColor=Color of links +PressF5AfterChangingThis=Press CTRL+F5 on keyboard or clear your browser cache after changing this value to have it effective +NotSupportedByAllThemes=Will works with core themes, may not be supported by external themes +BackgroundColor=Background color +TopMenuBackgroundColor=Background color for Top menu +TopMenuDisableImages=Hide images in Top menu +LeftMenuBackgroundColor=Background color for Left menu +BackgroundTableTitleColor=Background color for Table title line +BackgroundTableTitleTextColor=Text color for Table title line +BackgroundTableTitleTextlinkColor=Text color for Table title link line +BackgroundTableLineOddColor=Background color for odd table lines +BackgroundTableLineEvenColor=Background color for even table lines +MinimumNoticePeriod=Minimum notice period (Your leave request must be done before this delay) +NbAddedAutomatically=Number of days added to counters of users (automatically) each month +EnterAnyCode=This field contains a reference to identify line. Enter any value of your choice, but without special characters. +Enter0or1=Enter 0 or 1 +UnicodeCurrency=Enter here between braces, list of byte number that represent the currency symbol. For example: for $, enter [36] - for brazil real R$ [82,36] - for €, enter [8364] +ColorFormat=The RGB color is in HEX format, eg: FF0000 +PositionIntoComboList=Position of line into combo lists +SellTaxRate=Sale tax rate +RecuperableOnly=Yes for VAT "Not Perceived but Recoverable" dedicated for some state in France. Keep value to "No" in all other cases. +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=Type of template +TemplateIsVisibleByOwnerOnly=Template is visible to owner only +VisibleEverywhere=Visible everywhere +VisibleNowhere=Visible nowhere +FixTZ=TimeZone fix +FillFixTZOnlyIfRequired=Example: +2 (fill only if problem experienced) +ExpectedChecksum=Expected Checksum +CurrentChecksum=Current Checksum +ExpectedSize=Expected size +CurrentSize=Current size +ForcedConstants=Required constant values +MailToSendProposal=Customer proposals +MailToSendOrder=Sales orders +MailToSendInvoice=Customer invoices +MailToSendShipment=Shipments +MailToSendIntervention=Interventions +MailToSendSupplierRequestForQuotation=Quotation request +MailToSendSupplierOrder=Purchase orders +MailToSendSupplierInvoice=Vendor invoices +MailToSendContract=Contracts +MailToThirdparty=Third parties +MailToMember=Members +MailToUser=Users +MailToProject=Projects page +ByDefaultInList=Show by default on list view +YouUseLastStableVersion=You use the latest stable version +TitleExampleForMajorRelease=Example of message you can use to announce this major release (feel free to use it on your web sites) +TitleExampleForMaintenanceRelease=Example of message you can use to announce this maintenance release (feel free to use it on your web sites) +ExampleOfNewsMessageForMajorRelease=Dolibarr ERP & CRM %s is available. Version %s is a major release with a lot of new features for both users and developers. You can download it from the download area of https://www.dolibarr.org portal (subdirectory Stable versions). You can read ChangeLog for complete list of changes. +ExampleOfNewsMessageForMaintenanceRelease=Dolibarr ERP & CRM %s is available. Version %s is a maintenance version, so contains only bug fixes. We recommend all users to upgrade to this version. A maintenance release does not introduce new features or changes to the database. You may download it from the download area of https://www.dolibarr.org portal (subdirectory Stable versions). You can read the ChangeLog for complete list of changes. +MultiPriceRuleDesc=When option "Several levels of prices per product/service" is enabled, you can define different prices (one per price level) for each product. To save you time, here you may enter a rule to autocalculate a price for each level based on the price of the first level, so you will have to only enter a price for the first level for each product. This page is designed to save you time but is useful only if your prices for each level are relative to first level. You can ignore this page in most cases. +ModelModulesProduct=Templates for product documents +ToGenerateCodeDefineAutomaticRuleFirst=To be able to generate codes automatically, you must first define a manager to auto-define the barcode number. +SeeSubstitutionVars=See * note for list of possible substitution variables +SeeChangeLog=See ChangeLog file (english only) +AllPublishers=All publishers +UnknownPublishers=Unknown publishers +AddRemoveTabs=Add or remove tabs +AddDataTables=Add object tables +AddDictionaries=Add dictionaries tables +AddData=Add objects or dictionaries data +AddBoxes=Add widgets +AddSheduledJobs=Add scheduled jobs +AddHooks=Add hooks +AddTriggers=Add triggers +AddMenus=Add menus +AddPermissions=Add permissions +AddExportProfiles=Add export profiles +AddImportProfiles=Add import profiles +AddOtherPagesOrServices=Add other pages or services +AddModels=Add document or numbering templates +AddSubstitutions=Add keys substitutions +DetectionNotPossible=Detection not possible +UrlToGetKeyToUseAPIs=Url to get token to use API (once token has been received it is saved in database user table and must be provided on each API call) +ListOfAvailableAPIs=List of available APIs +activateModuleDependNotSatisfied=Module "%s" depends on module "%s", that is missing, so module "%1$s" may not work correctly. Please install module "%2$s" or disable module "%1$s" if you want to be safe from any surprise +CommandIsNotInsideAllowedCommands=The command you are trying to run is not in the list of allowed commands defined in parameter $dolibarr_main_restrict_os_commands in the conf.php file. +LandingPage=Landing page +SamePriceAlsoForSharedCompanies=If you use a multicompany module, with the choice "Single price", the price will also be the same for all companies if products are shared between environments +ModuleEnabledAdminMustCheckRights=Module has been activated. Permissions for activated module(s) were given to admin users only. You may need to grant permissions to other users or groups manually if necessary. +UserHasNoPermissions=This user has no permissions defined +TypeCdr=Use "None" if the date of payment term is date of invoice plus a delta in days (delta is field "%s")
    Use "At end of month", if, after delta, the date must be increased to reach the end of month (+ an optional "%s" in days)
    Use "Current/Next" to have payment term date being the first Nth of the month after delta (delta is field "%s", N is stored into field "%s") +BaseCurrency=Reference currency of the company (go into setup of company to change this) +WarningNoteModuleInvoiceForFrenchLaw=This module %s is compliant with French laws (Loi Finance 2016). +WarningNoteModulePOSForFrenchLaw=This module %s is compliant with French laws (Loi Finance 2016) because module Non Reversible Logs is automatically activated. +WarningInstallationMayBecomeNotCompliantWithLaw=You are trying to install module %s that is an external module. Activating an external module means you trust the publisher of that module and that you are sure that this module does not adversely impact the behavior of your application, and is compliant with laws of your country (%s). If the module introduces an illegal feature, you become responsible for the use of illegal software. +MAIN_PDF_MARGIN_LEFT=Left margin on PDF +MAIN_PDF_MARGIN_RIGHT=Right margin on PDF +MAIN_PDF_MARGIN_TOP=Top margin on PDF +MAIN_PDF_MARGIN_BOTTOM=Bottom margin on PDF +NothingToSetup=There is no specific setup required for this module. +SetToYesIfGroupIsComputationOfOtherGroups=Set this to yes if this group is a computation of other groups +EnterCalculationRuleIfPreviousFieldIsYes=Enter calculation rule if previous field was set to Yes (For example 'CODEGRP1+CODEGRP2') +SeveralLangugeVariatFound=Several language variants found +RemoveSpecialChars=Remove special characters +COMPANY_AQUARIUM_CLEAN_REGEX=Regex filter to clean value (COMPANY_AQUARIUM_CLEAN_REGEX) +COMPANY_DIGITARIA_CLEAN_REGEX=Regex filter to clean value (COMPANY_DIGITARIA_CLEAN_REGEX) +COMPANY_DIGITARIA_UNIQUE_CODE=Duplicate not allowed +GDPRContact=Data Protection Officer (DPO, Data Privacy or GDPR contact) +GDPRContactDesc=If you store data about European companies/citizens, you can name the contact who is responsible for the General Data Protection Regulation here +HelpOnTooltip=Help text to show on tooltip +HelpOnTooltipDesc=Put text or a translation key here for the text to show in a tooltip when this field appears in a form +YouCanDeleteFileOnServerWith=You can delete this file on the server with Command Line:
    %s +ChartLoaded=Chart of account loaded +SocialNetworkSetup=Setup of module Social Networks +EnableFeatureFor=Enable features for %s +VATIsUsedIsOff=Note: The option to use Sales Tax or VAT has been set to Off in the menu %s - %s, so Sales tax or Vat used will always be 0 for sales. +SwapSenderAndRecipientOnPDF=Swap sender and recipient address position on PDF documents +FeatureSupportedOnTextFieldsOnly=Warning, feature supported on text fields only. Also an URL parameter action=create or action=edit must be set OR page name must end with 'new.php' to trigger this feature. +EmailCollector=Email collector +EmailCollectorDescription=Add a scheduled job and a setup page to scan regularly email boxes (using IMAP protocol) and record emails received into your application, at the right place and/or create some records automatically (like leads). +NewEmailCollector=New Email Collector +EMailHost=Host of email IMAP server +MailboxSourceDirectory=Mailbox source directory +MailboxTargetDirectory=Mailbox target directory +EmailcollectorOperations=Operations to do by collector +MaxEmailCollectPerCollect=Max number of emails collected per collect +CollectNow=Collect now +ConfirmCloneEmailCollector=Are you sure you want to clone the Email collector %s ? +DateLastCollectResult=Date latest collect tried +DateLastcollectResultOk=Date latest collect successfull +LastResult=Latest result +EmailCollectorConfirmCollectTitle=Email collect confirmation +EmailCollectorConfirmCollect=Do you want to run the collection for this collector now ? +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) +CodeLastResult=Latest result code +NbOfEmailsInInbox=Number of emails in source directory +LoadThirdPartyFromName=Load third party searching on %s (load only) +LoadThirdPartyFromNameOrCreate=Load third party searching on %s (create if not found) +WithDolTrackingID=Dolibarr Reference found in Message ID +WithoutDolTrackingID=Dolibarr Reference not found in Message ID +FormatZip=Zip +MainMenuCode=Menu entry code (mainmenu) +ECMAutoTree=Show automatic ECM tree +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. +OpeningHours=Opening hours +OpeningHoursDesc=Enter here the regular opening hours of your company. +ResourceSetup=Configuration of Resource module +UseSearchToSelectResource=Use a search form to choose a resource (rather than a drop-down list). +DisabledResourceLinkUser=Disable feature to link a resource to users +DisabledResourceLinkContact=Disable feature to link a resource to contacts +EnableResourceUsedInEventCheck=Enable feature to check if a resource is in use in an event +ConfirmUnactivation=Confirm module reset +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. +RootCategoryForProductsToSell=Root category of products to sell +RootCategoryForProductsToSellDesc=If defined, only products inside this category or childs of this category will be available in the Point Of Sale +DebugBar=Debug Bar +DebugBarDesc=Toolbar that comes with a plenty of tools to simplify debugging +DebugBarSetup=DebugBar Setup +GeneralOptions=General Options +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 +ModuleActivated=Module %s is activated and slows the interface +EXPORTS_SHARE_MODELS=Export models are share with everybody +ExportSetup=Setup of module Export +ImportSetup=Setup of module Import +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/. +EmailCollectorTargetDir=It may be a desired behaviour to move the email into another tag/directory when it was processed successfully. Just set a value here to use this feature. Note that you must also use a read/write login account. +EmailCollectorLoadThirdPartyHelp=You can use this action to use the email content to find and load an existing thirdparty in your database. The found (or created) thirdparty will be used for following actions that need it. In the parameter field you can use for example 'EXTRACT:BODY:Name:\\s([^\\s]*)' if you want to extract the name of the thirdparty from a string 'Name: name to find' found into the body. +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 +RESTRICT_ON_IP=Allow access to some host IP only (wildcard not allowed, use space between values). Empty means every hosts can access. +IPListExample=127.0.0.1 192.168.0.2 [::1] +BaseOnSabeDavVersion=Based on the library SabreDAV version +NotAPublicIp=Not a public IP +MakeAnonymousPing=Make an anonymous Ping '+1' to the Dolibarr foundation server (done 1 time only after installation) to allow the foundation to count the number of Dolibarr installation. +FeatureNotAvailableWithReceptionModule=Feature not available when module Reception is enabled +EmailTemplate=Template for email +EMailsWillHaveMessageID=Emails will have a tag 'References' matching this syntax +PDF_USE_ALSO_LANGUAGE_CODE=If you want to have some texts in your PDF duplicated in 2 different languages in the same generated PDF, you must set here this second language so generated PDF will contains 2 different languages in same page, the one chosen when generating PDF and this one (only few PDF templates support this). Keep empty for 1 language per PDF. +FafaIconSocialNetworksDesc=Enter here the code of a FontAwesome icon. If you don't know what is FontAwesome, you can use the generic value fa-address-book. +RssNote=Note: Each RSS feed definition provides a widget that you must enable to have it available in dashboard +JumpToBoxes=Jump to Setup -> Widgets +MeasuringUnitTypeDesc=Use here a value like "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=The scale is the number of places you have to move the decimal part to match the default reference unit. For "time" unit type, it is the number of seconds. Values between 80 and 99 are reserved values. diff --git a/htdocs/langs/zh_HK/agenda.lang b/htdocs/langs/zh_HK/agenda.lang new file mode 100644 index 00000000000..2031241d2c9 --- /dev/null +++ b/htdocs/langs/zh_HK/agenda.lang @@ -0,0 +1,154 @@ +# Dolibarr language file - Source file is en_US - agenda +IdAgenda=ID event +Actions=Events +Agenda=Agenda +TMenuAgenda=Agenda +Agendas=Agendas +LocalAgenda=Internal calendar +ActionsOwnedBy=Event owned by +ActionsOwnedByShort=Owner +AffectedTo=Assigned to +Event=Event +Events=Events +EventsNb=Number of events +ListOfActions=List of events +EventReports=Event reports +Location=Location +ToUserOfGroup=To any user in group +EventOnFullDay=Event on all day(s) +MenuToDoActions=All incomplete events +MenuDoneActions=All terminated events +MenuToDoMyActions=My incomplete events +MenuDoneMyActions=My terminated events +ListOfEvents=List of events (internal calendar) +ActionsAskedBy=Events reported by +ActionsToDoBy=Events assigned to +ActionsDoneBy=Events done by +ActionAssignedTo=Event assigned to +ViewCal=Month view +ViewDay=Day view +ViewWeek=Week view +ViewPerUser=Per user view +ViewPerType=Per type view +AutoActions= Automatic filling +AgendaAutoActionDesc= Here you may define events which you want Dolibarr to create automatically in Agenda. If nothing is checked, only manual actions will be included in logs and displayed in Agenda. Automatic tracking of business actions done on objects (validation, status change) will not be saved. +AgendaSetupOtherDesc= This page provides options to allow the export of your Dolibarr events into an external calendar (Thunderbird, Google Calendar etc...) +AgendaExtSitesDesc=This page allows to declare external sources of calendars to see their events into Dolibarr agenda. +ActionsEvents=Events for which Dolibarr will create an action in agenda automatically +EventRemindersByEmailNotEnabled=Event reminders by email was not enabled into %s module setup. +##### Agenda event labels ##### +NewCompanyToDolibarr=Third party %s created +COMPANY_DELETEInDolibarr=Third party %s deleted +ContractValidatedInDolibarr=Contract %s validated +CONTRACT_DELETEInDolibarr=Contract %s deleted +PropalClosedSignedInDolibarr=Proposal %s signed +PropalClosedRefusedInDolibarr=Proposal %s refused +PropalValidatedInDolibarr=Proposal %s validated +PropalClassifiedBilledInDolibarr=Proposal %s classified billed +InvoiceValidatedInDolibarr=Invoice %s validated +InvoiceValidatedInDolibarrFromPos=Invoice %s validated from POS +InvoiceBackToDraftInDolibarr=Invoice %s go back to draft status +InvoiceDeleteDolibarr=Invoice %s deleted +InvoicePaidInDolibarr=Invoice %s changed to paid +InvoiceCanceledInDolibarr=Invoice %s canceled +MemberValidatedInDolibarr=Member %s validated +MemberModifiedInDolibarr=Member %s modified +MemberResiliatedInDolibarr=Member %s terminated +MemberDeletedInDolibarr=Member %s deleted +MemberSubscriptionAddedInDolibarr=Subscription %s for member %s added +MemberSubscriptionModifiedInDolibarr=Subscription %s for member %s modified +MemberSubscriptionDeletedInDolibarr=Subscription %s for member %s deleted +ShipmentValidatedInDolibarr=Shipment %s validated +ShipmentClassifyClosedInDolibarr=Shipment %s classified billed +ShipmentUnClassifyCloseddInDolibarr=Shipment %s classified re-open +ShipmentBackToDraftInDolibarr=Shipment %s go back to draft status +ShipmentDeletedInDolibarr=Shipment %s deleted +OrderCreatedInDolibarr=Order %s created +OrderValidatedInDolibarr=Order %s validated +OrderDeliveredInDolibarr=Order %s classified delivered +OrderCanceledInDolibarr=Order %s canceled +OrderBilledInDolibarr=Order %s classified billed +OrderApprovedInDolibarr=Order %s approved +OrderRefusedInDolibarr=Order %s refused +OrderBackToDraftInDolibarr=Order %s go back to draft status +ProposalSentByEMail=Commercial proposal %s sent by email +ContractSentByEMail=Contract %s sent by email +OrderSentByEMail=Sales order %s sent by email +InvoiceSentByEMail=Customer invoice %s sent by email +SupplierOrderSentByEMail=Purchase order %s sent by email +ORDER_SUPPLIER_DELETEInDolibarr=Purchase order %s deleted +SupplierInvoiceSentByEMail=Vendor invoice %s sent by email +ShippingSentByEMail=Shipment %s sent by email +ShippingValidated= Shipment %s validated +InterventionSentByEMail=Intervention %s sent by email +ProposalDeleted=Proposal deleted +OrderDeleted=Order deleted +InvoiceDeleted=Invoice deleted +DraftInvoiceDeleted=Draft invoice deleted +PRODUCT_CREATEInDolibarr=Product %s created +PRODUCT_MODIFYInDolibarr=Product %s modified +PRODUCT_DELETEInDolibarr=Product %s deleted +HOLIDAY_CREATEInDolibarr=Request for leave %s created +HOLIDAY_MODIFYInDolibarr=Request for leave %s modified +HOLIDAY_APPROVEInDolibarr=Request for leave %s approved +HOLIDAY_VALIDATEInDolibarr=Request for leave %s validated +HOLIDAY_DELETEInDolibarr=Request for leave %s deleted +EXPENSE_REPORT_CREATEInDolibarr=Expense report %s created +EXPENSE_REPORT_VALIDATEInDolibarr=Expense report %s validated +EXPENSE_REPORT_APPROVEInDolibarr=Expense report %s approved +EXPENSE_REPORT_DELETEInDolibarr=Expense report %s deleted +EXPENSE_REPORT_REFUSEDInDolibarr=Expense report %s refused +PROJECT_CREATEInDolibarr=Project %s created +PROJECT_MODIFYInDolibarr=Project %s modified +PROJECT_DELETEInDolibarr=Project %s deleted +TICKET_CREATEInDolibarr=Ticket %s created +TICKET_MODIFYInDolibarr=Ticket %s modified +TICKET_ASSIGNEDInDolibarr=Ticket %s assigned +TICKET_CLOSEInDolibarr=Ticket %s closed +TICKET_DELETEInDolibarr=Ticket %s deleted +BOM_VALIDATEInDolibarr=BOM validated +BOM_UNVALIDATEInDolibarr=BOM unvalidated +BOM_CLOSEInDolibarr=BOM disabled +BOM_REOPENInDolibarr=BOM reopen +BOM_DELETEInDolibarr=BOM deleted +MRP_MO_VALIDATEInDolibarr=MO validated +MRP_MO_PRODUCEDInDolibarr=MO produced +MRP_MO_DELETEInDolibarr=MO deleted +##### End agenda events ##### +AgendaModelModule=Document templates for event +DateActionStart=Start date +DateActionEnd=End date +AgendaUrlOptions1=You can also add following parameters to filter output: +AgendaUrlOptions3=logina=%s to restrict output to actions owned by a user %s. +AgendaUrlOptionsNotAdmin=logina=!%s to restrict output to actions not owned by user %s. +AgendaUrlOptions4=logint=%s to restrict output to actions assigned to user %s (owner and others). +AgendaUrlOptionsProject=project=__PROJECT_ID__ to restrict output to actions linked to project __PROJECT_ID__. +AgendaUrlOptionsNotAutoEvent=notactiontype=systemauto to exclude automatic events. +AgendaUrlOptionsIncludeHolidays=includeholidays=1 to include events of holidays. +AgendaShowBirthdayEvents=Show birthdays of contacts +AgendaHideBirthdayEvents=Hide birthdays of contacts +Busy=Busy +ExportDataset_event1=List of agenda events +DefaultWorkingDays=Default working days range in week (Example: 1-5, 1-6) +DefaultWorkingHours=Default working hours in day (Example: 9-18) +# External Sites ical +ExportCal=Export calendar +ExtSites=Import external calendars +ExtSitesEnableThisTool=Show external calendars (defined in global setup) in Agenda. Does not affect external calendars defined by users. +ExtSitesNbOfAgenda=Number of calendars +AgendaExtNb=Calendar no. %s +ExtSiteUrlAgenda=URL to access .ical file +ExtSiteNoLabel=No Description +VisibleTimeRange=Visible time range +VisibleDaysRange=Visible days range +AddEvent=Create event +MyAvailability=My availability +ActionType=Event type +DateActionBegin=Start event date +ConfirmCloneEvent=Are you sure you want to clone the event %s? +RepeatEvent=Repeat event +EveryWeek=Every week +EveryMonth=Every month +DayOfMonth=Day of month +DayOfWeek=Day of week +DateStartPlusOne=Date start + 1 hour diff --git a/htdocs/langs/zh_HK/assets.lang b/htdocs/langs/zh_HK/assets.lang new file mode 100644 index 00000000000..ef04723c6c2 --- /dev/null +++ b/htdocs/langs/zh_HK/assets.lang @@ -0,0 +1,65 @@ +# Copyright (C) 2018 Alexandre Spangaro +# +# 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 . + +# +# Generic +# +Assets = Assets +NewAsset = New asset +AccountancyCodeAsset = Accounting code (asset) +AccountancyCodeDepreciationAsset = Accounting code (depreciation asset account) +AccountancyCodeDepreciationExpense = Accounting code (depreciation expense account) +NewAssetType=New asset type +AssetsTypeSetup=Asset type setup +AssetTypeModified=Asset type modified +AssetType=Asset type +AssetsLines=Assets +DeleteType=Delete +DeleteAnAssetType=Delete an asset type +ConfirmDeleteAssetType=Are you sure you want to delete this asset type? +ShowTypeCard=Show type '%s' + +# Module label 'ModuleAssetsName' +ModuleAssetsName = Assets +# Module description 'ModuleAssetsDesc' +ModuleAssetsDesc = Assets description + +# +# Admin page +# +AssetsSetup = Assets setup +Settings = Settings +AssetsSetupPage = Assets setup page +ExtraFieldsAssetsType = Complementary attributes (Asset type) +AssetsType=Asset type +AssetsTypeId=Asset type id +AssetsTypeLabel=Asset type label +AssetsTypes=Assets types + +# +# Menu +# +MenuAssets = Assets +MenuNewAsset = New asset +MenuTypeAssets = Type assets +MenuListAssets = List +MenuNewTypeAssets = New +MenuListTypeAssets = List + +# +# Module +# +NewAssetType=New asset type +NewAsset=New asset diff --git a/htdocs/langs/zh_HK/banks.lang b/htdocs/langs/zh_HK/banks.lang new file mode 100644 index 00000000000..e54239e9fb2 --- /dev/null +++ b/htdocs/langs/zh_HK/banks.lang @@ -0,0 +1,175 @@ +# Dolibarr language file - Source file is en_US - banks +Bank=Bank +MenuBankCash=Banks | Cash +MenuVariousPayment=Miscellaneous payments +MenuNewVariousPayment=New Miscellaneous payment +BankName=Bank name +FinancialAccount=Account +BankAccount=Bank account +BankAccounts=Bank accounts +BankAccountsAndGateways=Bank accounts | Gateways +ShowAccount=Show Account +AccountRef=Financial account ref +AccountLabel=Financial account label +CashAccount=Cash account +CashAccounts=Cash accounts +CurrentAccounts=Current accounts +SavingAccounts=Savings accounts +ErrorBankLabelAlreadyExists=Financial account label already exists +BankBalance=Balance +BankBalanceBefore=Balance before +BankBalanceAfter=Balance after +BalanceMinimalAllowed=Minimum allowed balance +BalanceMinimalDesired=Minimum desired balance +InitialBankBalance=Initial balance +EndBankBalance=End balance +CurrentBalance=Current balance +FutureBalance=Future balance +ShowAllTimeBalance=Show balance from start +AllTime=From start +Reconciliation=Reconciliation +RIB=Bank Account Number +IBAN=IBAN number +BIC=BIC/SWIFT code +SwiftValid=BIC/SWIFT valid +SwiftVNotalid=BIC/SWIFT not valid +IbanValid=BAN valid +IbanNotValid=BAN not valid +StandingOrders=Direct Debit orders +StandingOrder=Direct debit order +AccountStatement=Account statement +AccountStatementShort=Statement +AccountStatements=Account statements +LastAccountStatements=Last account statements +IOMonthlyReporting=Monthly reporting +BankAccountDomiciliation=Bank address +BankAccountCountry=Account country +BankAccountOwner=Account owner name +BankAccountOwnerAddress=Account owner address +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=Create account +NewBankAccount=New account +NewFinancialAccount=New financial account +MenuNewFinancialAccount=New financial account +EditFinancialAccount=Edit account +LabelBankCashAccount=Bank or cash label +AccountType=Account type +BankType0=Savings account +BankType1=Current or credit card account +BankType2=Cash account +AccountsArea=Accounts area +AccountCard=Account card +DeleteAccount=Delete account +ConfirmDeleteAccount=Are you sure you want to delete this account? +Account=Account +BankTransactionByCategories=Bank entries by categories +BankTransactionForCategory=Bank entries for category %s +RemoveFromRubrique=Remove link with category +RemoveFromRubriqueConfirm=Are you sure you want to remove link between the entry and the category? +ListBankTransactions=List of bank entries +IdTransaction=Transaction ID +BankTransactions=Bank entries +BankTransaction=Bank entry +ListTransactions=List entries +ListTransactionsByCategory=List entries/category +TransactionsToConciliate=Entries to reconcile +TransactionsToConciliateShort=To reconcile +Conciliable=Can be reconciled +Conciliate=Reconcile +Conciliation=Reconciliation +SaveStatementOnly=Save statement only +ReconciliationLate=Reconciliation late +IncludeClosedAccount=Include closed accounts +OnlyOpenedAccount=Only open accounts +AccountToCredit=Account to credit +AccountToDebit=Account to debit +DisableConciliation=Disable reconciliation feature for this account +ConciliationDisabled=Reconciliation feature disabled +LinkedToAConciliatedTransaction=Linked to a conciliated entry +StatusAccountOpened=Open +StatusAccountClosed=Closed +AccountIdShort=Number +LineRecord=Transaction +AddBankRecord=Add entry +AddBankRecordLong=Add entry manually +Conciliated=Reconciled +ConciliatedBy=Reconciled by +DateConciliating=Reconcile date +BankLineConciliated=Entry reconciled with bank receipt +Reconciled=Reconciled +NotReconciled=Not reconciled +CustomerInvoicePayment=Customer payment +SupplierInvoicePayment=Vendor payment +SubscriptionPayment=Subscription payment +WithdrawalPayment=Debit payment order +SocialContributionPayment=Social/fiscal tax payment +BankTransfer=Bank transfer +BankTransfers=Bank transfers +MenuBankInternalTransfer=Internal transfer +TransferDesc=Transfer from one account to another, Dolibarr will write two records (a debit in source account and a credit in target account). The same amount (except sign), label and date will be used for this transaction) +TransferFrom=From +TransferTo=To +TransferFromToDone=A transfer from %s to %s of %s %s has been recorded. +CheckTransmitter=Transmitter +ValidateCheckReceipt=Validate this check receipt? +ConfirmValidateCheckReceipt=Are you sure you want to validate this check receipt, no change will be possible once this is done? +DeleteCheckReceipt=Delete this check receipt? +ConfirmDeleteCheckReceipt=Are you sure you want to delete this check receipt? +BankChecks=Bank checks +BankChecksToReceipt=Checks awaiting deposit +BankChecksToReceiptShort=Checks awaiting deposit +ShowCheckReceipt=Show check deposit receipt +NumberOfCheques=No. of check +DeleteTransaction=Delete entry +ConfirmDeleteTransaction=Are you sure you want to delete this entry? +ThisWillAlsoDeleteBankRecord=This will also delete generated bank entry +BankMovements=Movements +PlannedTransactions=Planned entries +Graph=Graphics +ExportDataset_banque_1=Bank entries and account statement +ExportDataset_banque_2=Deposit slip +TransactionOnTheOtherAccount=Transaction on the other account +PaymentNumberUpdateSucceeded=Payment number updated successfully +PaymentNumberUpdateFailed=Payment number could not be updated +PaymentDateUpdateSucceeded=Payment date updated successfully +PaymentDateUpdateFailed=Payment date could not be updated +Transactions=Transactions +BankTransactionLine=Bank entry +AllAccounts=All bank and cash accounts +BackToAccount=Back to account +ShowAllAccounts=Show for all accounts +FutureTransaction=Future transaction. Unable to reconcile. +SelectChequeTransactionAndGenerate=Select/filter checks to include in the check deposit receipt and click on "Create". +InputReceiptNumber=Choose the bank statement related with the conciliation. Use a sortable numeric value: YYYYMM or YYYYMMDD +EventualyAddCategory=Eventually, specify a category in which to classify the records +ToConciliate=To reconcile? +ThenCheckLinesAndConciliate=Then, check the lines present in the bank statement and click +DefaultRIB=Default BAN +AllRIB=All BAN +LabelRIB=BAN Label +NoBANRecord=No BAN record +DeleteARib=Delete BAN record +ConfirmDeleteRib=Are you sure you want to delete this BAN record? +RejectCheck=Check returned +ConfirmRejectCheck=Are you sure you want to mark this check as rejected? +RejectCheckDate=Date the check was returned +CheckRejected=Check returned +CheckRejectedAndInvoicesReopened=Check returned and invoices re-open +BankAccountModelModule=Document templates for bank accounts +DocumentModelSepaMandate=Template of SEPA mandate. Useful for European countries in EEC only. +DocumentModelBan=Template to print a page with BAN information. +NewVariousPayment=New miscellaneous payment +VariousPayment=Miscellaneous payment +VariousPayments=Miscellaneous payments +ShowVariousPayment=Show miscellaneous payment +AddVariousPayment=Add miscellaneous payment +SEPAMandate=SEPA mandate +YourSEPAMandate=Your SEPA mandate +FindYourSEPAMandate=This is your SEPA mandate to authorize our company to make direct debit order to your bank. Return it signed (scan of the signed document) or send it by mail to +AutoReportLastAccountStatement=Automatically fill the field 'number of bank statement' with last statement number when making reconciliation +CashControl=POS cash fence +NewCashFence=New cash fence +BankColorizeMovement=Colorize movements +BankColorizeMovementDesc=If this function is enable, you can choose specific background color for debit or credit movements +BankColorizeMovementName1=Background color for debit movement +BankColorizeMovementName2=Background color for credit movement diff --git a/htdocs/langs/zh_HK/bills.lang b/htdocs/langs/zh_HK/bills.lang new file mode 100644 index 00000000000..9f11d8ecf87 --- /dev/null +++ b/htdocs/langs/zh_HK/bills.lang @@ -0,0 +1,574 @@ +# Dolibarr language file - Source file is en_US - bills +Bill=Invoice +Bills=Invoices +BillsCustomers=Customer invoices +BillsCustomer=Customer invoice +BillsSuppliers=Vendor invoices +BillsCustomersUnpaid=Unpaid customer invoices +BillsCustomersUnpaidForCompany=Unpaid customer invoices for %s +BillsSuppliersUnpaid=Unpaid vendor invoices +BillsSuppliersUnpaidForCompany=Unpaid vendors invoices for %s +BillsLate=Late payments +BillsStatistics=Customers invoices statistics +BillsStatisticsSuppliers=Vendors invoices statistics +DisabledBecauseDispatchedInBookkeeping=Disabled because invoice was dispatched into bookkeeping +DisabledBecauseNotLastInvoice=Disabled because invoice is not erasable. Some invoices were recorded after this one and it will create holes in the counter. +DisabledBecauseNotErasable=Disabled because cannot be erased +InvoiceStandard=Standard invoice +InvoiceStandardAsk=Standard invoice +InvoiceStandardDesc=This kind of invoice is the common invoice. +InvoiceDeposit=Down payment invoice +InvoiceDepositAsk=Down payment invoice +InvoiceDepositDesc=This kind of invoice is done when a down payment has been received. +InvoiceProForma=Proforma invoice +InvoiceProFormaAsk=Proforma invoice +InvoiceProFormaDesc=Proforma invoice is an image of a true invoice but has no accountancy value. +InvoiceReplacement=Replacement invoice +InvoiceReplacementAsk=Replacement invoice for invoice +InvoiceReplacementDesc=Replacement invoice is used to completely replace an invoice with no payment already received.

    Note: Only invoices with no payment on it can be replaced. If the invoice you replace is not yet closed, it will be automatically closed to 'abandoned'. +InvoiceAvoir=Credit note +InvoiceAvoirAsk=Credit note to correct invoice +InvoiceAvoirDesc=The credit note is a negative invoice used to correct the fact that an invoice shows an amount that differs from the amount actually paid (eg the customer paid too much by mistake, or will not pay the complete amount since some products were returned). +invoiceAvoirWithLines=Create Credit Note with lines from the origin invoice +invoiceAvoirWithPaymentRestAmount=Create Credit Note with remaining unpaid of origin invoice +invoiceAvoirLineWithPaymentRestAmount=Credit Note for remaining unpaid amount +ReplaceInvoice=Replace invoice %s +ReplacementInvoice=Replacement invoice +ReplacedByInvoice=Replaced by invoice %s +ReplacementByInvoice=Replaced by invoice +CorrectInvoice=Correct invoice %s +CorrectionInvoice=Correction invoice +UsedByInvoice=Used to pay invoice %s +ConsumedBy=Consumed by +NotConsumed=Not consumed +NoReplacableInvoice=No replaceable invoices +NoInvoiceToCorrect=No invoice to correct +InvoiceHasAvoir=Was source of one or several credit notes +CardBill=Invoice card +PredefinedInvoices=Predefined Invoices +Invoice=Invoice +PdfInvoiceTitle=Invoice +Invoices=Invoices +InvoiceLine=Invoice line +InvoiceCustomer=Customer invoice +CustomerInvoice=Customer invoice +CustomersInvoices=Customers invoices +SupplierInvoice=Vendor invoice +SuppliersInvoices=Vendors invoices +SupplierBill=Vendor invoice +SupplierBills=suppliers invoices +Payment=Payment +PaymentBack=Refund +CustomerInvoicePaymentBack=Refund +Payments=Payments +PaymentsBack=Refunds +paymentInInvoiceCurrency=in invoices currency +PaidBack=Paid back +DeletePayment=Delete payment +ConfirmDeletePayment=Are you sure you want to delete this payment? +ConfirmConvertToReduc=Do you want to convert this %s into an available credit? +ConfirmConvertToReduc2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. +ConfirmConvertToReducSupplier=Do you want to convert this %s into an available credit? +ConfirmConvertToReducSupplier2=The amount will be saved among all discounts and could be used as a discount for a current or a future invoice for this vendor. +SupplierPayments=Vendor payments +ReceivedPayments=Received payments +ReceivedCustomersPayments=Payments received from customers +PayedSuppliersPayments=Payments paid to vendors +ReceivedCustomersPaymentsToValid=Received customers payments to validate +PaymentsReportsForYear=Payments reports for %s +PaymentsReports=Payments reports +PaymentsAlreadyDone=Payments already done +PaymentsBackAlreadyDone=Refunds already done +PaymentRule=Payment rule +PaymentMode=Payment Type +PaymentTypeDC=Debit/Credit Card +PaymentTypePP=PayPal +IdPaymentMode=Payment Type (id) +CodePaymentMode=Payment Type (code) +LabelPaymentMode=Payment Type (label) +PaymentModeShort=Payment Type +PaymentTerm=Payment Term +PaymentConditions=Payment Terms +PaymentConditionsShort=Payment Terms +PaymentAmount=Payment amount +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' +ClassifyUnBilled=Classify 'Unbilled' +CreateBill=Create Invoice +CreateCreditNote=Create credit note +AddBill=Create invoice or credit note +AddToDraftInvoices=Add to draft invoice +DeleteBill=Delete invoice +SearchACustomerInvoice=Search for a customer invoice +SearchASupplierInvoice=Search for a vendor invoice +CancelBill=Cancel an invoice +SendRemindByMail=Send reminder by email +DoPayment=Enter payment +DoPaymentBack=Enter refund +ConvertToReduc=Mark as credit available +ConvertExcessReceivedToReduc=Convert excess received into available credit +ConvertExcessPaidToReduc=Convert excess paid into available discount +EnterPaymentReceivedFromCustomer=Enter payment received from customer +EnterPaymentDueToCustomer=Make payment due to customer +DisabledBecauseRemainderToPayIsZero=Disabled because remaining unpaid is zero +PriceBase=Price base +BillStatus=Invoice status +StatusOfGeneratedInvoices=Status of generated invoices +BillStatusDraft=Draft (needs to be validated) +BillStatusPaid=Paid +BillStatusPaidBackOrConverted=Credit note refund or marked as credit available +BillStatusConverted=Paid (ready for consumption in final invoice) +BillStatusCanceled=Abandoned +BillStatusValidated=Validated (needs to be paid) +BillStatusStarted=Started +BillStatusNotPaid=Not paid +BillStatusNotRefunded=Not refunded +BillStatusClosedUnpaid=Closed (unpaid) +BillStatusClosedPaidPartially=Paid (partially) +BillShortStatusDraft=Draft +BillShortStatusPaid=Paid +BillShortStatusPaidBackOrConverted=Refunded or converted +Refunded=Refunded +BillShortStatusConverted=Paid +BillShortStatusCanceled=Abandoned +BillShortStatusValidated=Validated +BillShortStatusStarted=Started +BillShortStatusNotPaid=Not paid +BillShortStatusNotRefunded=Not refunded +BillShortStatusClosedUnpaid=Closed +BillShortStatusClosedPaidPartially=Paid (partially) +PaymentStatusToValidShort=To validate +ErrorVATIntraNotConfigured=Intra-Community VAT number not yet defined +ErrorNoPaiementModeConfigured=No default payment type defined. Go to Invoice module setup to fix this. +ErrorCreateBankAccount=Create a bank account, then go to Setup panel of Invoice module to define payment types +ErrorBillNotFound=Invoice %s does not exist +ErrorInvoiceAlreadyReplaced=Error, you tried to validate an invoice to replace invoice %s. But this one has already been replaced by invoice %s. +ErrorDiscountAlreadyUsed=Error, discount already used +ErrorInvoiceAvoirMustBeNegative=Error, correct invoice must have a negative amount +ErrorInvoiceOfThisTypeMustBePositive=Error, this type of invoice must have an amount excluding tax positive (or null) +ErrorCantCancelIfReplacementInvoiceNotValidated=Error, can't cancel an invoice that has been replaced by another invoice that is still in draft status +ErrorThisPartOrAnotherIsAlreadyUsedSoDiscountSerieCantBeRemoved=This part or another is already used so discount series cannot be removed. +BillFrom=From +BillTo=To +ActionsOnBill=Actions on invoice +RecurringInvoiceTemplate=Template / Recurring invoice +NoQualifiedRecurringInvoiceTemplateFound=No recurring template invoice qualified for generation. +FoundXQualifiedRecurringInvoiceTemplate=Found %s recurring template invoice(s) qualified for generation. +NotARecurringInvoiceTemplate=Not a recurring template invoice +NewBill=New invoice +LastBills=Latest %s invoices +LatestTemplateInvoices=Latest %s template invoices +LatestCustomerTemplateInvoices=Latest %s customer template invoices +LatestSupplierTemplateInvoices=Latest %s vendor template invoices +LastCustomersBills=Latest %s customer invoices +LastSuppliersBills=Latest %s vendor invoices +AllBills=All invoices +AllCustomerTemplateInvoices=All template invoices +OtherBills=Other invoices +DraftBills=Draft invoices +CustomersDraftInvoices=Customer draft invoices +SuppliersDraftInvoices=Vendor draft invoices +Unpaid=Unpaid +ErrorNoPaymentDefined=Error No payment defined +ConfirmDeleteBill=Are you sure you want to delete this invoice? +ConfirmValidateBill=Are you sure you want to validate this invoice with reference %s? +ConfirmUnvalidateBill=Are you sure you want to change invoice %s to draft status? +ConfirmClassifyPaidBill=Are you sure you want to change invoice %s to status paid? +ConfirmCancelBill=Are you sure you want to cancel invoice %s? +ConfirmCancelBillQuestion=Why do you want to classify this invoice 'abandoned'? +ConfirmClassifyPaidPartially=Are you sure you want to change invoice %s to status paid? +ConfirmClassifyPaidPartiallyQuestion=This invoice has not been paid completely. What is the reason for closing this invoice? +ConfirmClassifyPaidPartiallyReasonAvoir=Remaining unpaid (%s %s) is a discount granted because payment was made before term. I regularize the VAT with a credit note. +ConfirmClassifyPaidPartiallyReasonDiscount=Remaining unpaid (%s %s) is a discount granted because payment was made before term. +ConfirmClassifyPaidPartiallyReasonDiscountNoVat=Remaining unpaid (%s %s) is a discount granted because payment was made before term. I accept to lose the VAT on this discount. +ConfirmClassifyPaidPartiallyReasonDiscountVat=Remaining unpaid (%s %s) is a discount granted because payment was made before term. I recover the VAT on this discount without a credit note. +ConfirmClassifyPaidPartiallyReasonBadCustomer=Bad customer +ConfirmClassifyPaidPartiallyReasonProductReturned=Products partially returned +ConfirmClassifyPaidPartiallyReasonOther=Amount abandoned for other reason +ConfirmClassifyPaidPartiallyReasonDiscountNoVatDesc=This choice is possible if your invoice has been provided with suitable comments. (Example «Only the tax corresponding to the price that has been actually paid gives rights to deduction») +ConfirmClassifyPaidPartiallyReasonDiscountVatDesc=In some countries, this choice might be possible only if your invoice contains correct notes. +ConfirmClassifyPaidPartiallyReasonAvoirDesc=Use this choice if all other does not suit +ConfirmClassifyPaidPartiallyReasonBadCustomerDesc=A bad customer is a customer that refuses to pay his debt. +ConfirmClassifyPaidPartiallyReasonProductReturnedDesc=This choice is used when payment is not complete because some of products were returned +ConfirmClassifyPaidPartiallyReasonOtherDesc=Use this choice if all others are not suitable, for example in following situation:
    - payment not complete because some products were shipped back
    - amount claimed too important because a discount was forgotten
    In all cases, amount over-claimed must be corrected in accountancy system by creating a credit note. +ConfirmClassifyAbandonReasonOther=Other +ConfirmClassifyAbandonReasonOtherDesc=This choice will be used in all other cases. For example because you plan to create a replacing invoice. +ConfirmCustomerPayment=Do you confirm this payment input for %s %s? +ConfirmSupplierPayment=Do you confirm this payment input for %s %s? +ConfirmValidatePayment=Are you sure you want to validate this payment? No change can be made once payment is validated. +ValidateBill=Validate invoice +UnvalidateBill=Unvalidate invoice +NumberOfBills=No. of invoices +NumberOfBillsByMonth=No. of invoices per month +AmountOfBills=Amount of invoices +AmountOfBillsHT=Amount of invoices (net of tax) +AmountOfBillsByMonthHT=Amount of invoices by month (net of tax) +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +AllowedInvoiceForRetainedWarranty=Retained warranty usable on the following types of invoices +RetainedwarrantyDefaultPercent=Retained warranty default percent +RetainedwarrantyOnlyForSituation=Make "retained warranty" available only for situation invoices +RetainedwarrantyOnlyForSituationFinal=On situation invoices the global "retained warranty" deduction is applied only on the final situation +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 +AlreadyPaid=Already paid +AlreadyPaidBack=Already paid back +AlreadyPaidNoCreditNotesNoDeposits=Already paid (without credit notes and down payments) +Abandoned=Abandoned +RemainderToPay=Remaining unpaid +RemainderToTake=Remaining amount to take +RemainderToPayBack=Remaining amount to refund +Rest=Pending +AmountExpected=Amount claimed +ExcessReceived=Excess received +ExcessPaid=Excess paid +EscompteOffered=Discount offered (payment before term) +EscompteOfferedShort=Discount +SendBillRef=Submission of invoice %s +SendReminderBillRef=Submission of invoice %s (reminder) +StandingOrders=Direct debit orders +StandingOrder=Direct debit order +NoDraftBills=No draft invoices +NoOtherDraftBills=No other draft invoices +NoDraftInvoices=No draft invoices +RefBill=Invoice ref +ToBill=To bill +RemainderToBill=Remainder to bill +SendBillByMail=Send invoice by email +SendReminderBillByMail=Send reminder by email +RelatedCommercialProposals=Related commercial proposals +RelatedRecurringCustomerInvoices=Related recurring customer invoices +MenuToValid=To valid +DateMaxPayment=Payment due on +DateInvoice=Invoice date +DatePointOfTax=Point of tax +NoInvoice=No invoice +ClassifyBill=Classify invoice +SupplierBillsToPay=Unpaid vendor invoices +CustomerBillsUnpaid=Unpaid customer invoices +NonPercuRecuperable=Non-recoverable +SetConditions=Set Payment Terms +SetMode=Set Payment Type +SetRevenuStamp=Set revenue stamp +Billed=Billed +RecurringInvoices=Recurring invoices +RepeatableInvoice=Template invoice +RepeatableInvoices=Template invoices +Repeatable=Template +Repeatables=Templates +ChangeIntoRepeatableInvoice=Convert into template invoice +CreateRepeatableInvoice=Create template invoice +CreateFromRepeatableInvoice=Create from template invoice +CustomersInvoicesAndInvoiceLines=Customer invoices and invoice details +CustomersInvoicesAndPayments=Customer invoices and payments +ExportDataset_invoice_1=Customer invoices and invoice details +ExportDataset_invoice_2=Customer invoices and payments +ProformaBill=Proforma Bill: +Reduction=Reduction +ReductionShort=Disc. +Reductions=Reductions +ReductionsShort=Disc. +Discounts=Discounts +AddDiscount=Create discount +AddRelativeDiscount=Create relative discount +EditRelativeDiscount=Edit relative discount +AddGlobalDiscount=Create absolute discount +EditGlobalDiscounts=Edit absolute discounts +AddCreditNote=Create credit note +ShowDiscount=Show discount +ShowReduc=Show the discount +ShowSourceInvoice=Show the source invoice +RelativeDiscount=Relative discount +GlobalDiscount=Global discount +CreditNote=Credit note +CreditNotes=Credit notes +CreditNotesOrExcessReceived=Credit notes or excess received +Deposit=Down payment +Deposits=Down payments +DiscountFromCreditNote=Discount from credit note %s +DiscountFromDeposit=Down payments from invoice %s +DiscountFromExcessReceived=Payments in excess of invoice %s +DiscountFromExcessPaid=Payments in excess of invoice %s +AbsoluteDiscountUse=This kind of credit can be used on invoice before its validation +CreditNoteDepositUse=Invoice must be validated to use this kind of credits +NewGlobalDiscount=New absolute discount +NewRelativeDiscount=New relative discount +DiscountType=Discount type +NoteReason=Note/Reason +ReasonDiscount=Reason +DiscountOfferedBy=Granted by +DiscountStillRemaining=Discounts or credits available +DiscountAlreadyCounted=Discounts or credits already consumed +CustomerDiscounts=Customer discounts +SupplierDiscounts=Vendors discounts +BillAddress=Bill address +HelpEscompte=This discount is a discount granted to customer because payment was made before term. +HelpAbandonBadCustomer=This amount has been abandoned (customer said to be a bad customer) and is considered as an exceptional loss. +HelpAbandonOther=This amount has been abandoned since it was an error (wrong customer or invoice replaced by another for example) +IdSocialContribution=Social/fiscal tax payment id +PaymentId=Payment id +PaymentRef=Payment ref. +InvoiceId=Invoice id +InvoiceRef=Invoice ref. +InvoiceDateCreation=Invoice creation date +InvoiceStatus=Invoice status +InvoiceNote=Invoice note +InvoicePaid=Invoice paid +InvoicePaidCompletely=Paid completely +InvoicePaidCompletelyHelp=Invoice that are paid completely. This excludes invoices that are paid partially. To get list of all 'Closed' or non 'Closed' invoices, prefer to use a filter on the invoice status. +OrderBilled=Order billed +DonationPaid=Donation paid +PaymentNumber=Payment number +RemoveDiscount=Remove discount +WatermarkOnDraftBill=Watermark on draft invoices (nothing if empty) +InvoiceNotChecked=No invoice selected +ConfirmCloneInvoice=Are you sure you want to clone this invoice %s? +DisabledBecauseReplacedInvoice=Action disabled because invoice has been replaced +DescTaxAndDividendsArea=This area presents a summary of all payments made for special expenses. Only records with payments during the fixed year are included here. +NbOfPayments=No. of payments +SplitDiscount=Split discount in two +ConfirmSplitDiscount=Are you sure you want to split this discount of %s %s into two smaller discounts? +TypeAmountOfEachNewDiscount=Input amount for each of two parts: +TotalOfTwoDiscountMustEqualsOriginal=The total of the two new discounts must be equal to the original discount amount. +ConfirmRemoveDiscount=Are you sure you want to remove this discount? +RelatedBill=Related invoice +RelatedBills=Related invoices +RelatedCustomerInvoices=Related customer invoices +RelatedSupplierInvoices=Related vendor invoices +LatestRelatedBill=Latest related invoice +WarningBillExist=Warning, one or more invoices already exist +MergingPDFTool=Merging PDF tool +AmountPaymentDistributedOnInvoice=Payment amount distributed on invoice +PaymentOnDifferentThirdBills=Allow payments on different third parties bills but same parent company +PaymentNote=Payment note +ListOfPreviousSituationInvoices=List of previous situation invoices +ListOfNextSituationInvoices=List of next situation invoices +ListOfSituationInvoices=List of situation invoices +CurrentSituationTotal=Total current situation +DisabledBecauseNotEnouthCreditNote=To remove a situation invoice from cycle, this invoice's credit note total must cover this invoice total +RemoveSituationFromCycle=Remove this invoice from cycle +ConfirmRemoveSituationFromCycle=Remove this invoice %s from cycle ? +ConfirmOuting=Confirm outing +FrequencyPer_d=Every %s days +FrequencyPer_m=Every %s months +FrequencyPer_y=Every %s years +FrequencyUnit=Frequency unit +toolTipFrequency=Examples:
    Set 7, Day: give a new invoice every 7 days
    Set 3, Month: give a new invoice every 3 month +NextDateToExecution=Date for next invoice generation +NextDateToExecutionShort=Date next gen. +DateLastGeneration=Date of latest generation +DateLastGenerationShort=Date latest gen. +MaxPeriodNumber=Max. number of invoice generation +NbOfGenerationDone=Number of invoice generation already done +NbOfGenerationDoneShort=Number of generation done +MaxGenerationReached=Maximum number of generations reached +InvoiceAutoValidate=Validate invoices automatically +GeneratedFromRecurringInvoice=Generated from template recurring invoice %s +DateIsNotEnough=Date not reached yet +InvoiceGeneratedFromTemplate=Invoice %s generated from recurring template invoice %s +GeneratedFromTemplate=Generated from template invoice %s +WarningInvoiceDateInFuture=Warning, the invoice date is higher than current date +WarningInvoiceDateTooFarInFuture=Warning, the invoice date is too far from current date +ViewAvailableGlobalDiscounts=View available discounts +GroupPaymentsByModOnReports=Group payments by mode on reports +# PaymentConditions +Statut=Status +PaymentConditionShortRECEP=Due Upon Receipt +PaymentConditionRECEP=Due Upon Receipt +PaymentConditionShort30D=30 days +PaymentCondition30D=30 days +PaymentConditionShort30DENDMONTH=30 days of month-end +PaymentCondition30DENDMONTH=Within 30 days following the end of the month +PaymentConditionShort60D=60 days +PaymentCondition60D=60 days +PaymentConditionShort60DENDMONTH=60 days of month-end +PaymentCondition60DENDMONTH=Within 60 days following the end of the month +PaymentConditionShortPT_DELIVERY=Delivery +PaymentConditionPT_DELIVERY=On delivery +PaymentConditionShortPT_ORDER=Order +PaymentConditionPT_ORDER=On order +PaymentConditionShortPT_5050=50-50 +PaymentConditionPT_5050=50%% in advance, 50%% on delivery +PaymentConditionShort10D=10 days +PaymentCondition10D=10 days +PaymentConditionShort10DENDMONTH=10 days of month-end +PaymentCondition10DENDMONTH=Within 10 days following the end of the month +PaymentConditionShort14D=14 days +PaymentCondition14D=14 days +PaymentConditionShort14DENDMONTH=14 days of month-end +PaymentCondition14DENDMONTH=Within 14 days following the end of the month +FixAmount=Fixed amount - 1 line with label '%s' +VarAmount=Variable amount (%% tot.) +VarAmountOneLine=Variable amount (%% tot.) - 1 line with label '%s' +VarAmountAllLines=Variable amount (%% tot.) - all same lines +# PaymentType +PaymentTypeVIR=Bank transfer +PaymentTypeShortVIR=Bank transfer +PaymentTypePRE=Direct debit payment order +PaymentTypeShortPRE=Debit payment order +PaymentTypeLIQ=Cash +PaymentTypeShortLIQ=Cash +PaymentTypeCB=Credit card +PaymentTypeShortCB=Credit card +PaymentTypeCHQ=Check +PaymentTypeShortCHQ=Check +PaymentTypeTIP=TIP (Documents against Payment) +PaymentTypeShortTIP=TIP Payment +PaymentTypeVAD=Online payment +PaymentTypeShortVAD=Online payment +PaymentTypeTRA=Bank draft +PaymentTypeShortTRA=Draft +PaymentTypeFAC=Factor +PaymentTypeShortFAC=Factor +BankDetails=Bank details +BankCode=Bank code +DeskCode=Branch code +BankAccountNumber=Account number +BankAccountNumberKey=Checksum +Residence=Address +IBANNumber=IBAN account number +IBAN=IBAN +BIC=BIC/SWIFT +BICNumber=BIC/SWIFT code +ExtraInfos=Extra infos +RegulatedOn=Regulated on +ChequeNumber=Check N° +ChequeOrTransferNumber=Check/Transfer N° +ChequeBordereau=Check schedule +ChequeMaker=Check/Transfer transmitter +ChequeBank=Bank of Check +CheckBank=Check +NetToBePaid=Net to be paid +PhoneNumber=Tel +FullPhoneNumber=Telephone +TeleFax=Fax +PrettyLittleSentence=Accept the amount of payments due by checks issued in my name as a Member of an accounting association approved by the Fiscal Administration. +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=sent to +PaymentByTransferOnThisBankAccount=Payment by transfer to the following bank account +VATIsNotUsedForInvoice=* Non applicable VAT art-293B of CGI +LawApplicationPart1=By application of the law 80.335 of 12/05/80 +LawApplicationPart2=the goods remain the property of +LawApplicationPart3=the seller until full payment of +LawApplicationPart4=their price. +LimitedLiabilityCompanyCapital=SARL with Capital of +UseLine=Apply +UseDiscount=Use discount +UseCredit=Use credit +UseCreditNoteInInvoicePayment=Reduce amount to pay with this credit +MenuChequeDeposits=Check Deposits +MenuCheques=Checks +MenuChequesReceipts=Check receipts +NewChequeDeposit=New deposit +ChequesReceipts=Check receipts +ChequesArea=Check deposits area +ChequeDeposits=Check deposits +Cheques=Checks +DepositId=Id deposit +NbCheque=Number of checks +CreditNoteConvertedIntoDiscount=This %s has been converted into %s +UsBillingContactAsIncoiveRecipientIfExist=Use contact/address with type 'billing contact' instead of third-party address as recipient for invoices +ShowUnpaidAll=Show all unpaid invoices +ShowUnpaidLateOnly=Show late unpaid invoices only +PaymentInvoiceRef=Payment invoice %s +ValidateInvoice=Validate invoice +ValidateInvoices=Validate invoices +Cash=Cash +Reported=Delayed +DisabledBecausePayments=Not possible since there are some payments +CantRemovePaymentWithOneInvoicePaid=Can't remove payment since there is at least one invoice classified paid +ExpectedToPay=Expected payment +CantRemoveConciliatedPayment=Can't remove reconciled payment +PayedByThisPayment=Paid by this payment +ClosePaidInvoicesAutomatically=Classify automatically all standard, down payment or replacement invoices as "Paid" when payment is done entirely. +ClosePaidCreditNotesAutomatically=Classify automatically all credit notes as "Paid" when refund is done entirely. +ClosePaidContributionsAutomatically=Classify automatically all social or fiscal contributions as "Paid" when payment is done entirely. +AllCompletelyPayedInvoiceWillBeClosed=All invoices with no remainder to pay will be automatically closed with status "Paid". +ToMakePayment=Pay +ToMakePaymentBack=Pay back +ListOfYourUnpaidInvoices=List of unpaid invoices +NoteListOfYourUnpaidInvoices=Note: This list contains only invoices for third parties you are linked to as a sale representative. +RevenueStamp=Tax stamp +YouMustCreateInvoiceFromThird=This option is only available when creating an invoice from tab "Customer" of third party +YouMustCreateInvoiceFromSupplierThird=This option is only available when creating an invoice from tab "Vendor" of third party +YouMustCreateStandardInvoiceFirstDesc=You have to create a standard invoice first and convert it to "template" to create a new template invoice +PDFCrabeDescription=Invoice PDF template Crabe. A complete invoice template (old implementation of Sponge template) +PDFSpongeDescription=Invoice PDF template Sponge. A complete invoice template +PDFCrevetteDescription=Invoice PDF template Crevette. A complete invoice template for situation invoices +TerreNumRefModelDesc1=Return number with format %syymm-nnnn for standard invoices and %syymm-nnnn for credit notes where yy is year, mm is month and nnnn is a sequence with no break and no return to 0 +MarsNumRefModelDesc1=Return number with format %syymm-nnnn for standard invoices, %syymm-nnnn for replacement invoices, %syymm-nnnn for down payment invoices and %syymm-nnnn for credit notes where yy is year, mm is month and nnnn is a sequence with no break and no return to 0 +TerreNumRefModelError=A bill starting with $syymm already exists and is not compatible with this model of sequence. Remove it or rename it to activate this module. +CactusNumRefModelDesc1=Return number with format %syymm-nnnn for standard invoices, %syymm-nnnn for credit notes and %syymm-nnnn for down payment invoices where yy is year, mm is month and nnnn is a sequence with no break and no return to 0 +EarlyClosingReason=Early closing reason +EarlyClosingComment=Early closing note +##### Types de contacts ##### +TypeContact_facture_internal_SALESREPFOLL=Representative following-up customer invoice +TypeContact_facture_external_BILLING=Customer invoice contact +TypeContact_facture_external_SHIPPING=Customer shipping contact +TypeContact_facture_external_SERVICE=Customer service contact +TypeContact_invoice_supplier_internal_SALESREPFOLL=Representative following-up vendor invoice +TypeContact_invoice_supplier_external_BILLING=Vendor invoice contact +TypeContact_invoice_supplier_external_SHIPPING=Vendor shipping contact +TypeContact_invoice_supplier_external_SERVICE=Vendor service contact +# Situation invoices +InvoiceFirstSituationAsk=First situation invoice +InvoiceFirstSituationDesc=The situation invoices are tied to situations related to a progression, for example the progression of a construction. Each situation is tied to an invoice. +InvoiceSituation=Situation invoice +InvoiceSituationAsk=Invoice following the situation +InvoiceSituationDesc=Create a new situation following an already existing one +SituationAmount=Situation invoice amount(net) +SituationDeduction=Situation subtraction +ModifyAllLines=Modify all lines +CreateNextSituationInvoice=Create next situation +ErrorFindNextSituationInvoice=Error unable to find next situation cycle ref +ErrorOutingSituationInvoiceOnUpdate=Unable to outing this situation invoice. +ErrorOutingSituationInvoiceCreditNote=Unable to outing linked credit note. +NotLastInCycle=This invoice is not the latest in cycle and must not be modified. +DisabledBecauseNotLastInCycle=The next situation already exists. +DisabledBecauseFinal=This situation is final. +situationInvoiceShortcode_AS=AS +situationInvoiceShortcode_S=S +CantBeLessThanMinPercent=The progress can't be smaller than its value in the previous situation. +NoSituations=No open situations +InvoiceSituationLast=Final and general invoice +PDFCrevetteSituationNumber=Situation N°%s +PDFCrevetteSituationInvoiceLineDecompte=Situation invoice - COUNT +PDFCrevetteSituationInvoiceTitle=Situation invoice +PDFCrevetteSituationInvoiceLine=Situation N°%s: Inv. N°%s on %s +TotalSituationInvoice=Total situation +invoiceLineProgressError=Invoice line progress can't be greater than or equal to the next invoice line +updatePriceNextInvoiceErrorUpdateline=Error: update price on invoice line: %s +ToCreateARecurringInvoice=To create a recurring invoice for this contract, first create this draft invoice, then convert it into an invoice template and define the frequency for generation of future invoices. +ToCreateARecurringInvoiceGene=To generate future invoices regularly and manually, just go on menu %s - %s - %s. +ToCreateARecurringInvoiceGeneAuto=If you need to have such invoices generated automatically, ask your administrator to enable and setup module %s. Note that both methods (manual and automatic) can be used together with no risk of duplication. +DeleteRepeatableInvoice=Delete template invoice +ConfirmDeleteRepeatableInvoice=Are your sure you want to delete the template invoice? +CreateOneBillByThird=Create one invoice per third party (otherwise, one invoice per order) +BillCreated=%s bill(s) created +StatusOfGeneratedDocuments=Status of document generation +DoNotGenerateDoc=Do not generate document file +AutogenerateDoc=Auto generate document file +AutoFillDateFrom=Set start date for service line with invoice date +AutoFillDateFromShort=Set start date +AutoFillDateTo=Set end date for service line with next invoice date +AutoFillDateToShort=Set end date +MaxNumberOfGenerationReached=Max number of gen. reached +BILL_DELETEInDolibarr=Invoice deleted +BILL_SUPPLIER_DELETEInDolibarr=Supplier invoice deleted diff --git a/htdocs/langs/zh_HK/blockedlog.lang b/htdocs/langs/zh_HK/blockedlog.lang new file mode 100644 index 00000000000..5afae6e9e53 --- /dev/null +++ b/htdocs/langs/zh_HK/blockedlog.lang @@ -0,0 +1,54 @@ +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). +CompanyInitialKey=Company initial key (hash of genesis block) +BrowseBlockedLog=Unalterable logs +ShowAllFingerPrintsMightBeTooLong=Show all archived logs (might be long) +ShowAllFingerPrintsErrorsMightBeTooLong=Show all non-valid archive logs (might be long) +DownloadBlockChain=Download fingerprints +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). +OkCheckFingerprintValidity=Archived log record is valid. The data on this line was not modified and the entry follows the previous one. +OkCheckFingerprintValidityButChainIsKo=Archived log seems valid compared to previous one but the chain was corrupted previously. +AddedByAuthority=Stored into remote authority +NotAddedByAuthorityYet=Not yet stored into remote authority +ShowDetails=Show stored details +logPAYMENT_VARIOUS_CREATE=Payment (not assigned to an invoice) created +logPAYMENT_VARIOUS_MODIFY=Payment (not assigned to an invoice) modified +logPAYMENT_VARIOUS_DELETE=Payment (not assigned to an invoice) logical deletion +logPAYMENT_ADD_TO_BANK=Payment added to bank +logPAYMENT_CUSTOMER_CREATE=Customer payment created +logPAYMENT_CUSTOMER_DELETE=Customer payment logical deletion +logDONATION_PAYMENT_CREATE=Donation payment created +logDONATION_PAYMENT_DELETE=Donation payment logical deletion +logBILL_PAYED=Customer invoice paid +logBILL_UNPAYED=Customer invoice set unpaid +logBILL_VALIDATE=Customer invoice validated +logBILL_SENTBYMAIL=Customer invoice send by mail +logBILL_DELETE=Customer invoice logically deleted +logMODULE_RESET=Module BlockedLog was disabled +logMODULE_SET=Module BlockedLog was enabled +logDON_VALIDATE=Donation validated +logDON_MODIFY=Donation modified +logDON_DELETE=Donation logical deletion +logMEMBER_SUBSCRIPTION_CREATE=Member subscription created +logMEMBER_SUBSCRIPTION_MODIFY=Member subscription modified +logMEMBER_SUBSCRIPTION_DELETE=Member subscription logical deletion +logCASHCONTROL_VALIDATE=Cash fence recording +BlockedLogBillDownload=Customer invoice download +BlockedLogBillPreview=Customer invoice preview +BlockedlogInfoDialog=Log Details +ListOfTrackedEvents=List of tracked events +Fingerprint=Fingerprint +DownloadLogCSV=Export archived logs (CSV) +logDOC_PREVIEW=Preview of a validated document in order to print or download +logDOC_DOWNLOAD=Download of a validated document in order to print or send +DataOfArchivedEvent=Full datas of archived event +ImpossibleToReloadObject=Original object (type %s, id %s) not linked (see 'Full datas' column to get unalterable saved data) +BlockedLogAreRequiredByYourCountryLegislation=Unalterable Logs module may be required by the legislation of your country. Disabling this module may render any future transactions invalid with respect to the law and the use of legal software as they can not be validated by a tax audit. +BlockedLogActivatedBecauseRequiredByYourCountryLegislation=Unalterable Logs module was activated because of the legislation of your country. Disabling this module may render any future transactions invalid with respect to the law and the use of legal software as they cannot be validated by a tax audit. +BlockedLogDisableNotAllowedForCountry=List of countries where usage of this module is mandatory (just to prevent to disable the module by error, if your country is in this list, disable of module is not possible without editing this list first. Note also that enabling/disabling this module will keep a track into the unalterable log). +OnlyNonValid=Non-valid +TooManyRecordToScanRestrictFilters=Too many records to scan/analyze. Please restrict list with more restrictive filters. +RestrictYearToExport=Restrict month / year to export diff --git a/htdocs/langs/zh_HK/bookmarks.lang b/htdocs/langs/zh_HK/bookmarks.lang new file mode 100644 index 00000000000..87466cadcfa --- /dev/null +++ b/htdocs/langs/zh_HK/bookmarks.lang @@ -0,0 +1,21 @@ +# Dolibarr language file - Source file is en_US - marque pages +AddThisPageToBookmarks=Add current page to bookmarks +Bookmark=Bookmark +Bookmarks=Bookmarks +ListOfBookmarks=List of bookmarks +EditBookmarks=List/edit bookmarks +NewBookmark=New bookmark +ShowBookmark=Show bookmark +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=Create bookmark +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=Bookmarks management +BookmarksMenuShortCut=Ctrl + shift + m diff --git a/htdocs/langs/zh_HK/boxes.lang b/htdocs/langs/zh_HK/boxes.lang new file mode 100644 index 00000000000..bd62684421a --- /dev/null +++ b/htdocs/langs/zh_HK/boxes.lang @@ -0,0 +1,102 @@ +# Dolibarr language file - Source file is en_US - boxes +BoxLoginInformation=Login Information +BoxLastRssInfos=RSS Information +BoxLastProducts=Latest %s Products/Services +BoxProductsAlertStock=Stock alerts for products +BoxLastProductsInContract=Latest %s contracted products/services +BoxLastSupplierBills=Latest Vendor invoices +BoxLastCustomerBills=Latest Customer invoices +BoxOldestUnpaidCustomerBills=Oldest unpaid customer invoices +BoxOldestUnpaidSupplierBills=Oldest unpaid vendor invoices +BoxLastProposals=Latest commercial proposals +BoxLastProspects=Latest modified prospects +BoxLastCustomers=Latest modified customers +BoxLastSuppliers=Latest modified suppliers +BoxLastCustomerOrders=Latest sales orders +BoxLastActions=Latest actions +BoxLastContracts=Latest contracts +BoxLastContacts=Latest contacts/addresses +BoxLastMembers=Latest members +BoxFicheInter=Latest interventions +BoxCurrentAccounts=Open accounts balance +BoxTitleMemberNextBirthdays=Birthdays of this month (members) +BoxTitleLastRssInfos=Latest %s news from %s +BoxTitleLastProducts=Products/Services: last %s modified +BoxTitleProductsAlertStock=Products: stock alert +BoxTitleLastSuppliers=Latest %s recorded suppliers +BoxTitleLastModifiedSuppliers=Vendors: last %s modified +BoxTitleLastModifiedCustomers=Customers: last %s modified +BoxTitleLastCustomersOrProspects=Latest %s customers or prospects +BoxTitleLastCustomerBills=Latest %s modified Customer invoices +BoxTitleLastSupplierBills=Latest %s modified Vendor invoices +BoxTitleLastModifiedProspects=Prospects: last %s modified +BoxTitleLastModifiedMembers=Latest %s members +BoxTitleLastFicheInter=Latest %s modified interventions +BoxTitleOldestUnpaidCustomerBills=Customer Invoices: oldest %s unpaid +BoxTitleOldestUnpaidSupplierBills=Vendor Invoices: oldest %s unpaid +BoxTitleCurrentAccounts=Open Accounts: balances +BoxTitleSupplierOrdersAwaitingReception=Supplier orders awaiting reception +BoxTitleLastModifiedContacts=Contacts/Addresses: last %s modified +BoxMyLastBookmarks=Bookmarks: latest %s +BoxOldestExpiredServices=Oldest active expired services +BoxLastExpiredServices=Latest %s oldest contacts with active expired services +BoxTitleLastActionsToDo=Latest %s actions to do +BoxTitleLastContracts=Latest %s modified contracts +BoxTitleLastModifiedDonations=Latest %s modified donations +BoxTitleLastModifiedExpenses=Latest %s modified expense reports +BoxTitleLatestModifiedBoms=Latest %s modified BOMs +BoxTitleLatestModifiedMos=Latest %s modified Manufacturing Orders +BoxGlobalActivity=Global activity (invoices, proposals, orders) +BoxGoodCustomers=Good customers +BoxTitleGoodCustomers=%s Good customers +FailedToRefreshDataInfoNotUpToDate=Failed to refresh RSS flux. Latest successful refresh date: %s +LastRefreshDate=Latest refresh date +NoRecordedBookmarks=No bookmarks defined. +ClickToAdd=Click here to add. +NoRecordedCustomers=No recorded customers +NoRecordedContacts=No recorded contacts +NoActionsToDo=No actions to do +NoRecordedOrders=No recorded sales orders +NoRecordedProposals=No recorded proposals +NoRecordedInvoices=No recorded customer invoices +NoUnpaidCustomerBills=No unpaid customer invoices +NoUnpaidSupplierBills=No unpaid vendor invoices +NoModifiedSupplierBills=No recorded vendor invoices +NoRecordedProducts=No recorded products/services +NoRecordedProspects=No recorded prospects +NoContractedProducts=No products/services contracted +NoRecordedContracts=No recorded contracts +NoRecordedInterventions=No recorded interventions +BoxLatestSupplierOrders=Latest purchase orders +BoxLatestSupplierOrdersAwaitingReception=Latest Purchase Orders (with a pending reception) +NoSupplierOrder=No recorded purchase order +BoxCustomersInvoicesPerMonth=Customer Invoices per month +BoxSuppliersInvoicesPerMonth=Vendor Invoices per month +BoxCustomersOrdersPerMonth=Sales Orders per month +BoxSuppliersOrdersPerMonth=Vendor Orders per month +BoxProposalsPerMonth=Proposals per month +NoTooLowStockProducts=No products are under the low stock limit +BoxProductDistribution=Products/Services Distribution +ForObject=On %s +BoxTitleLastModifiedSupplierBills=Vendor Invoices: last %s modified +BoxTitleLatestModifiedSupplierOrders=Vendor Orders: last %s modified +BoxTitleLastModifiedCustomerBills=Customer Invoices: last %s modified +BoxTitleLastModifiedCustomerOrders=Sales Orders: last %s modified +BoxTitleLastModifiedPropals=Latest %s modified proposals +ForCustomersInvoices=Customers invoices +ForCustomersOrders=Customers orders +ForProposals=Proposals +LastXMonthRolling=The latest %s month rolling +ChooseBoxToAdd=Add widget to your dashboard +BoxAdded=Widget was added in your dashboard +BoxTitleUserBirthdaysOfMonth=Birthdays of this month (users) +BoxLastManualEntries=Last manual entries in accountancy +BoxTitleLastManualEntries=%s latest manual entries +NoRecordedManualEntries=No manual entries record in accountancy +BoxSuspenseAccount=Count accountancy operation with suspense account +BoxTitleSuspenseAccount=Number of unallocated lines +NumberOfLinesInSuspenseAccount=Number of line in suspense account +SuspenseAccountNotDefined=Suspense account isn't defined +BoxLastCustomerShipments=Last customer shipments +BoxTitleLastCustomerShipments=Latest %s customer shipments +NoRecordedShipments=No recorded customer shipment diff --git a/htdocs/langs/zh_HK/cashdesk.lang b/htdocs/langs/zh_HK/cashdesk.lang new file mode 100644 index 00000000000..0903a3d10bc --- /dev/null +++ b/htdocs/langs/zh_HK/cashdesk.lang @@ -0,0 +1,110 @@ +# Language file - Source file is en_US - cashdesk +CashDeskMenu=Point of sale +CashDesk=Point of sale +CashDeskBankCash=Bank account (cash) +CashDeskBankCB=Bank account (card) +CashDeskBankCheque=Bank account (cheque) +CashDeskWarehouse=Warehouse +CashdeskShowServices=Selling services +CashDeskProducts=Products +CashDeskStock=Stock +CashDeskOn=on +CashDeskThirdParty=Third party +ShoppingCart=Shopping cart +NewSell=New sell +AddThisArticle=Add this article +RestartSelling=Go back on sell +SellFinished=Sale complete +PrintTicket=Print ticket +SendTicket=Send ticket +NoProductFound=No article found +ProductFound=product found +NoArticle=No article +Identification=Identification +Article=Article +Difference=Difference +TotalTicket=Total ticket +NoVAT=No VAT for this sale +Change=Excess received +BankToPay=Account for payment +ShowCompany=Show company +ShowStock=Show warehouse +DeleteArticle=Click to remove this article +FilterRefOrLabelOrBC=Search (Ref/Label) +UserNeedPermissionToEditStockToUsePos=You ask to decrease stock on invoice creation, so user that uses POS needs to have permission to edit stock. +DolibarrReceiptPrinter=Dolibarr Receipt Printer +PointOfSale=Point of Sale +PointOfSaleShort=POS +CloseBill=Close Bill +Floors=Floors +Floor=Floor +AddTable=Add table +Place=Place +TakeposConnectorNecesary='TakePOS Connector' required +OrderPrinters=Order printers +SearchProduct=Search product +Receipt=Receipt +Header=Header +Footer=Footer +AmountAtEndOfPeriod=Amount at end of period (day, month or year) +TheoricalAmount=Theorical amount +RealAmount=Real amount +CashFence=Cash fence +CashFenceDone=Cash fence done for the period +NbOfInvoices=Nb of invoices +Paymentnumpad=Type of Pad to enter payment +Numberspad=Numbers Pad +BillsCoinsPad=Coins and banknotes Pad +DolistorePosCategory=TakePOS modules and other POS solutions for Dolibarr +TakeposNeedsCategories=TakePOS needs product categories to work +OrderNotes=Order Notes +CashDeskBankAccountFor=Default account to use for payments in +NoPaimementModesDefined=No paiment mode defined in TakePOS configuration +TicketVatGrouped=Group VAT by rate in tickets|receipts +AutoPrintTickets=Automatically print tickets|receipts +PrintCustomerOnReceipts=Print customer on tickets|receipts +EnableBarOrRestaurantFeatures=Enable features for Bar or Restaurant +ConfirmDeletionOfThisPOSSale=Do your confirm the deletion of this current sale ? +ConfirmDiscardOfThisPOSSale=Do you want to discard this current sale ? +History=History +ValidateAndClose=Validate and close +Terminal=Terminal +NumberOfTerminals=Number of Terminals +TerminalSelect=Select terminal you want to use: +POSTicket=POS Ticket +POSTerminal=POS Terminal +POSModule=POS Module +BasicPhoneLayout=Use basic layout for phones +SetupOfTerminalNotComplete=Setup of terminal %s is not complete +DirectPayment=Direct payment +DirectPaymentButton=Direct cash payment button +InvoiceIsAlreadyValidated=Invoice is already validated +NoLinesToBill=No lines to bill +CustomReceipt=Custom Receipt +ReceiptName=Receipt Name +ProductSupplements=Product Supplements +SupplementCategory=Supplement category +ColorTheme=Color theme +Colorful=Colorful +HeadBar=Head Bar +SortProductField=Field for sorting products +Browser=Browser +BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. +TakeposConnectorMethodDescription=External module with extra features. Posibility to print from the cloud. +PrintMethod=Print method +ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. +ByTerminal=By terminal +TakeposNumpadUsePaymentIcon=Use payment icon on numpad +CashDeskRefNumberingModules=Numbering module for POS sales +CashDeskGenericMaskCodes6 =
    {TN} tag is used to add the terminal number +TakeposGroupSameProduct=Group same products lines +StartAParallelSale=Start a new parallel sale +ControlCashOpening=Control cash box at opening pos +CloseCashFence=Close cash fence +CashReport=Cash report +MainPrinterToUse=Main printer to use +OrderPrinterToUse=Order printer to use +MainTemplateToUse=Main template to use +OrderTemplateToUse=Order template to use +BarRestaurant=Bar Restaurant +AutoOrder=Customer auto order diff --git a/htdocs/langs/zh_HK/categories.lang b/htdocs/langs/zh_HK/categories.lang new file mode 100644 index 00000000000..30bace0574c --- /dev/null +++ b/htdocs/langs/zh_HK/categories.lang @@ -0,0 +1,89 @@ +# Dolibarr language file - Source file is en_US - categories +Rubrique=Tag/Category +Rubriques=Tags/Categories +RubriquesTransactions=Tags/Categories of transactions +categories=tags/categories +NoCategoryYet=No tag/category of this type created +In=In +AddIn=Add in +modify=modify +Classify=Classify +CategoriesArea=Tags/Categories area +ProductsCategoriesArea=Products/Services tags/categories area +SuppliersCategoriesArea=Vendors tags/categories area +CustomersCategoriesArea=Customers tags/categories area +MembersCategoriesArea=Members tags/categories area +ContactsCategoriesArea=Contacts tags/categories area +AccountsCategoriesArea=Accounts tags/categories area +ProjectsCategoriesArea=Projects tags/categories area +UsersCategoriesArea=Users tags/categories area +SubCats=Sub-categories +CatList=List of tags/categories +NewCategory=New tag/category +ModifCat=Modify tag/category +CatCreated=Tag/category created +CreateCat=Create tag/category +CreateThisCat=Create this tag/category +NoSubCat=No subcategory. +SubCatOf=Subcategory +FoundCats=Found tags/categories +ImpossibleAddCat=Impossible to add the tag/category %s +WasAddedSuccessfully=%s was added successfully. +ObjectAlreadyLinkedToCategory=Element is already linked to this tag/category. +ProductIsInCategories=Product/service is linked to following tags/categories +CompanyIsInCustomersCategories=This third party is linked to following customers/prospects tags/categories +CompanyIsInSuppliersCategories=This third party is linked to following vendors tags/categories +MemberIsInCategories=This member is linked to following members tags/categories +ContactIsInCategories=This contact is linked to following contacts tags/categories +ProductHasNoCategory=This product/service is not in any tags/categories +CompanyHasNoCategory=This third party is not in any tags/categories +MemberHasNoCategory=This member is not in any tags/categories +ContactHasNoCategory=This contact is not in any tags/categories +ProjectHasNoCategory=This project is not in any tags/categories +ClassifyInCategory=Add to tag/category +NotCategorized=Without tag/category +CategoryExistsAtSameLevel=This category already exists with this ref +ContentsVisibleByAllShort=Contents visible by all +ContentsNotVisibleByAllShort=Contents not visible by all +DeleteCategory=Delete tag/category +ConfirmDeleteCategory=Are you sure you want to delete this tag/category? +NoCategoriesDefined=No tag/category defined +SuppliersCategoryShort=Vendors tag/category +CustomersCategoryShort=Customers tag/category +ProductsCategoryShort=Products tag/category +MembersCategoryShort=Members tag/category +SuppliersCategoriesShort=Vendors tags/categories +CustomersCategoriesShort=Customers tags/categories +ProspectsCategoriesShort=Prospects tags/categories +CustomersProspectsCategoriesShort=Cust./Prosp. tags/categories +ProductsCategoriesShort=Products tags/categories +MembersCategoriesShort=Members tags/categories +ContactCategoriesShort=Contacts tags/categories +AccountsCategoriesShort=Accounts tags/categories +ProjectsCategoriesShort=Projects tags/categories +UsersCategoriesShort=Users tags/categories +StockCategoriesShort=Warehouse tags/categories +ThisCategoryHasNoItems=This category does not contain any items. +CategId=Tag/category id +CatSupList=List of vendor tags/categories +CatCusList=List of customer/prospect tags/categories +CatProdList=List of products tags/categories +CatMemberList=List of members tags/categories +CatContactList=List of contact tags/categories +CatSupLinks=Links between suppliers and tags/categories +CatCusLinks=Links between customers/prospects and tags/categories +CatContactsLinks=Links between contacts/addresses and tags/categories +CatProdLinks=Links between products/services and tags/categories +CatProJectLinks=Links between projects and tags/categories +DeleteFromCat=Remove from tags/category +ExtraFieldsCategories=Complementary attributes +CategoriesSetup=Tags/categories setup +CategorieRecursiv=Link with parent tag/category automatically +CategorieRecursivHelp=If option is on, when you add a product into a subcategory, product will also be added into the parent category. +AddProductServiceIntoCategory=Add the following product/service +ShowCategory=Show tag/category +ByDefaultInList=By default in list +ChooseCategory=Choose category +StocksCategoriesArea=Warehouses Categories Area +ActionCommCategoriesArea=Events Categories Area +UseOrOperatorForCategories=Use or operator for categories diff --git a/htdocs/langs/zh_HK/commercial.lang b/htdocs/langs/zh_HK/commercial.lang new file mode 100644 index 00000000000..10c536e0d48 --- /dev/null +++ b/htdocs/langs/zh_HK/commercial.lang @@ -0,0 +1,80 @@ +# Dolibarr language file - Source file is en_US - commercial +Commercial=Commerce +CommercialArea=Commerce area +Customer=Customer +Customers=Customers +Prospect=Prospect +Prospects=Prospects +DeleteAction=Delete an event +NewAction=New event +AddAction=Create event +AddAnAction=Create an event +AddActionRendezVous=Create a Rendez-vous event +ConfirmDeleteAction=Are you sure you want to delete this event? +CardAction=Event card +ActionOnCompany=Related company +ActionOnContact=Related contact +TaskRDVWith=Meeting with %s +ShowTask=Show task +ShowAction=Show event +ActionsReport=Events report +ThirdPartiesOfSaleRepresentative=Third parties with sales representative +SaleRepresentativesOfThirdParty=Sales representatives of third party +SalesRepresentative=Sales representative +SalesRepresentatives=Sales representatives +SalesRepresentativeFollowUp=Sales representative (follow-up) +SalesRepresentativeSignature=Sales representative (signature) +NoSalesRepresentativeAffected=No particular sales representative assigned +ShowCustomer=Show customer +ShowProspect=Show prospect +ListOfProspects=List of prospects +ListOfCustomers=List of customers +LastDoneTasks=Latest %s completed actions +LastActionsToDo=Oldest %s not completed actions +DoneAndToDoActions=Completed and To do events +DoneActions=Completed events +ToDoActions=Incomplete events +SendPropalRef=Submission of commercial proposal %s +SendOrderRef=Submission of order %s +StatusNotApplicable=Not applicable +StatusActionToDo=To do +StatusActionDone=Complete +StatusActionInProcess=In process +TasksHistoryForThisContact=Events for this contact +LastProspectDoNotContact=Do not contact +LastProspectNeverContacted=Never contacted +LastProspectToContact=To contact +LastProspectContactInProcess=Contact in process +LastProspectContactDone=Contact done +ActionAffectedTo=Event assigned to +ActionDoneBy=Event done by +ActionAC_TEL=Phone call +ActionAC_FAX=Send fax +ActionAC_PROP=Send proposal by mail +ActionAC_EMAIL=Send Email +ActionAC_EMAIL_IN=Reception of Email +ActionAC_RDV=Meetings +ActionAC_INT=Intervention on site +ActionAC_FAC=Send customer invoice by mail +ActionAC_REL=Send customer invoice by mail (reminder) +ActionAC_CLO=Close +ActionAC_EMAILING=Send mass email +ActionAC_COM=Send sales order by mail +ActionAC_SHIP=Send shipping by mail +ActionAC_SUP_ORD=Send purchase order by mail +ActionAC_SUP_INV=Send vendor invoice by mail +ActionAC_OTH=Other +ActionAC_OTH_AUTO=Automatically inserted events +ActionAC_MANUAL=Manually inserted events +ActionAC_AUTO=Automatically inserted events +ActionAC_OTH_AUTOShort=Auto +Stats=Sales statistics +StatusProsp=Prospect status +DraftPropals=Draft commercial proposals +NoLimit=No limit +ToOfferALinkForOnlineSignature=Link for online signature +WelcomeOnOnlineSignaturePage=Welcome to the page to accept commercial proposals from %s +ThisScreenAllowsYouToSignDocFrom=This screen allow you to accept and sign, or refuse, a quote/commercial proposal +ThisIsInformationOnDocumentToSign=This is information on document to accept or refuse +SignatureProposalRef=Signature of quote/commercial proposal %s +FeatureOnlineSignDisabled=Feature for online signing disabled or document generated before the feature was enabled diff --git a/htdocs/langs/zh_HK/companies.lang b/htdocs/langs/zh_HK/companies.lang new file mode 100644 index 00000000000..0fad58c9389 --- /dev/null +++ b/htdocs/langs/zh_HK/companies.lang @@ -0,0 +1,458 @@ +# Dolibarr language file - Source file is en_US - companies +ErrorCompanyNameAlreadyExists=Company name %s already exists. Choose another one. +ErrorSetACountryFirst=Set the country first +SelectThirdParty=Select a third party +ConfirmDeleteCompany=Are you sure you want to delete this company and all inherited information? +DeleteContact=Delete a contact/address +ConfirmDeleteContact=Are you sure you want to delete this contact and all inherited information? +MenuNewThirdParty=New Third Party +MenuNewCustomer=New Customer +MenuNewProspect=New Prospect +MenuNewSupplier=New Vendor +MenuNewPrivateIndividual=New private individual +NewCompany=New company (prospect, customer, vendor) +NewThirdParty=New Third Party (prospect, customer, vendor) +CreateDolibarrThirdPartySupplier=Create a third party (vendor) +CreateThirdPartyOnly=Create third party +CreateThirdPartyAndContact=Create a third party + a child contact +ProspectionArea=Prospection area +IdThirdParty=Id third party +IdCompany=Company Id +IdContact=Contact Id +Contacts=Contacts/Addresses +ThirdPartyContacts=Third-party contacts +ThirdPartyContact=Third-party contact/address +Company=Company +CompanyName=Company name +AliasNames=Alias name (commercial, trademark, ...) +AliasNameShort=Alias Name +Companies=Companies +CountryIsInEEC=Country is inside the European Economic Community +PriceFormatInCurrentLanguage=Price display format in the current language and currency +ThirdPartyName=Third-party name +ThirdPartyEmail=Third-party email +ThirdParty=Third-party +ThirdParties=Third-parties +ThirdPartyProspects=Prospects +ThirdPartyProspectsStats=Prospects +ThirdPartyCustomers=Customers +ThirdPartyCustomersStats=Customers +ThirdPartyCustomersWithIdProf12=Customers with %s or %s +ThirdPartySuppliers=Vendors +ThirdPartyType=Third-party type +Individual=Private individual +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=Parent company +Subsidiaries=Subsidiaries +ReportByMonth=Report by month +ReportByCustomers=Report by customer +ReportByQuarter=Report by rate +CivilityCode=Civility code +RegisteredOffice=Registered office +Lastname=Last name +Firstname=First name +PostOrFunction=Job position +UserTitle=Title +NatureOfThirdParty=Nature of Third party +NatureOfContact=Nature of Contact +Address=Address +State=State/Province +StateCode=State/Province code +StateShort=State +Region=Region +Region-State=Region - State +Country=Country +CountryCode=Country code +CountryId=Country id +Phone=Phone +PhoneShort=Phone +Skype=Skype +Call=Call +Chat=Chat +PhonePro=Prof. phone +PhonePerso=Pers. phone +PhoneMobile=Mobile +No_Email=Refuse bulk emailings +Fax=Fax +Zip=Zip Code +Town=City +Web=Web +Poste= Position +DefaultLang=Language default +VATIsUsed=Sales tax used +VATIsUsedWhenSelling=This defines if this third party includes a sale tax or not when it makes an invoice to its own customers +VATIsNotUsed=Sales tax is not used +CopyAddressFromSoc=Copy address from third-party details +ThirdpartyNotCustomerNotSupplierSoNoRef=Third party neither customer nor vendor, no available referring objects +ThirdpartyIsNeitherCustomerNorClientSoCannotHaveDiscounts=Third party neither customer nor vendor, discounts are not available +PaymentBankAccount=Payment bank account +OverAllProposals=Proposals +OverAllOrders=Orders +OverAllInvoices=Invoices +OverAllSupplierProposals=Price requests +##### Local Taxes ##### +LocalTax1IsUsed=Use second tax +LocalTax1IsUsedES= RE is used +LocalTax1IsNotUsedES= RE is not used +LocalTax2IsUsed=Use third tax +LocalTax2IsUsedES= IRPF is used +LocalTax2IsNotUsedES= IRPF is not used +WrongCustomerCode=Customer code invalid +WrongSupplierCode=Vendor code invalid +CustomerCodeModel=Customer code model +SupplierCodeModel=Vendor code model +Gencod=Barcode +##### Professional ID ##### +ProfId1Short=Prof. id 1 +ProfId2Short=Prof. id 2 +ProfId3Short=Prof. id 3 +ProfId4Short=Prof. id 4 +ProfId5Short=Prof. id 5 +ProfId6Short=Prof. id 6 +ProfId1=Professional ID 1 +ProfId2=Professional ID 2 +ProfId3=Professional ID 3 +ProfId4=Professional ID 4 +ProfId5=Professional ID 5 +ProfId6=Professional ID 6 +ProfId1AR=Prof Id 1 (CUIT/CUIL) +ProfId2AR=Prof Id 2 (Revenu brutes) +ProfId3AR=- +ProfId4AR=- +ProfId5AR=- +ProfId6AR=- +ProfId1AT=Prof Id 1 (USt.-IdNr) +ProfId2AT=Prof Id 2 (USt.-Nr) +ProfId3AT=Prof Id 3 (Handelsregister-Nr.) +ProfId4AT=- +ProfId5AT=- +ProfId6AT=- +ProfId1AU=Prof Id 1 (ABN) +ProfId2AU=- +ProfId3AU=- +ProfId4AU=- +ProfId5AU=- +ProfId6AU=- +ProfId1BE=Prof Id 1 (Professional number) +ProfId2BE=- +ProfId3BE=- +ProfId4BE=- +ProfId5BE=- +ProfId6BE=- +ProfId1BR=- +ProfId2BR=IE (Inscricao Estadual) +ProfId3BR=IM (Inscricao Municipal) +ProfId4BR=CPF +#ProfId5BR=CNAE +#ProfId6BR=INSS +ProfId1CH=- +ProfId2CH=- +ProfId3CH=Prof Id 1 (Federal number) +ProfId4CH=Prof Id 2 (Commercial Record number) +ProfId5CH=- +ProfId6CH=- +ProfId1CL=Prof Id 1 (R.U.T.) +ProfId2CL=- +ProfId3CL=- +ProfId4CL=- +ProfId5CL=- +ProfId6CL=- +ProfId1CO=Prof Id 1 (R.U.T.) +ProfId2CO=- +ProfId3CO=- +ProfId4CO=- +ProfId5CO=- +ProfId6CO=- +ProfId1DE=Prof Id 1 (USt.-IdNr) +ProfId2DE=Prof Id 2 (USt.-Nr) +ProfId3DE=Prof Id 3 (Handelsregister-Nr.) +ProfId4DE=- +ProfId5DE=- +ProfId6DE=- +ProfId1ES=Prof Id 1 (CIF/NIF) +ProfId2ES=Prof Id 2 (Social security number) +ProfId3ES=Prof Id 3 (CNAE) +ProfId4ES=Prof Id 4 (Collegiate number) +ProfId5ES=- +ProfId6ES=- +ProfId1FR=Prof Id 1 (SIREN) +ProfId2FR=Prof Id 2 (SIRET) +ProfId3FR=Prof Id 3 (NAF, old APE) +ProfId4FR=Prof Id 4 (RCS/RM) +ProfId5FR=- +ProfId6FR=- +ProfId1GB=Registration Number +ProfId2GB=- +ProfId3GB=SIC +ProfId4GB=- +ProfId5GB=- +ProfId6GB=- +ProfId1HN=Id prof. 1 (RTN) +ProfId2HN=- +ProfId3HN=- +ProfId4HN=- +ProfId5HN=- +ProfId6HN=- +ProfId1IN=Prof Id 1 (TIN) +ProfId2IN=Prof Id 2 (PAN) +ProfId3IN=Prof Id 3 (SRVC TAX) +ProfId4IN=Prof Id 4 +ProfId5IN=Prof Id 5 +ProfId6IN=- +ProfId1LU=Id. prof. 1 (R.C.S. Luxembourg) +ProfId2LU=Id. prof. 2 (Business permit) +ProfId3LU=- +ProfId4LU=- +ProfId5LU=- +ProfId6LU=- +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=Id. prof. 5 (I.C.E.) +ProfId6MA=- +ProfId1MX=Prof Id 1 (R.F.C). +ProfId2MX=Prof Id 2 (R..P. IMSS) +ProfId3MX=Prof Id 3 (Profesional Charter) +ProfId4MX=- +ProfId5MX=- +ProfId6MX=- +ProfId1NL=KVK nummer +ProfId2NL=- +ProfId3NL=- +ProfId4NL=Burgerservicenummer (BSN) +ProfId5NL=- +ProfId6NL=- +ProfId1PT=Prof Id 1 (NIPC) +ProfId2PT=Prof Id 2 (Social security number) +ProfId3PT=Prof Id 3 (Commercial Record number) +ProfId4PT=Prof Id 4 (Conservatory) +ProfId5PT=- +ProfId6PT=- +ProfId1SN=RC +ProfId2SN=NINEA +ProfId3SN=- +ProfId4SN=- +ProfId5SN=- +ProfId6SN=- +ProfId1TN=Prof Id 1 (RC) +ProfId2TN=Prof Id 2 (Fiscal matricule) +ProfId3TN=Prof Id 3 (Douane code) +ProfId4TN=Prof Id 4 (BAN) +ProfId5TN=- +ProfId6TN=- +ProfId1US=Prof Id (FEIN) +ProfId2US=- +ProfId3US=- +ProfId4US=- +ProfId5US=- +ProfId6US=- +ProfId1RO=Prof Id 1 (CUI) +ProfId2RO=Prof Id 2 (Nr. Înmatriculare) +ProfId3RO=Prof Id 3 (CAEN) +ProfId4RO=- +ProfId5RO=Prof Id 5 (EUID) +ProfId6RO=- +ProfId1RU=Prof Id 1 (OGRN) +ProfId2RU=Prof Id 2 (INN) +ProfId3RU=Prof Id 3 (KPP) +ProfId4RU=Prof Id 4 (OKPO) +ProfId5RU=- +ProfId6RU=- +ProfId1DZ=RC +ProfId2DZ=Art. +ProfId3DZ=NIF +ProfId4DZ=NIS +VATIntra=VAT ID +VATIntraShort=VAT ID +VATIntraSyntaxIsValid=Syntax is valid +VATReturn=VAT return +ProspectCustomer=Prospect / Customer +Prospect=Prospect +CustomerCard=Customer Card +Customer=Customer +CustomerRelativeDiscount=Relative customer discount +SupplierRelativeDiscount=Relative vendor discount +CustomerRelativeDiscountShort=Relative discount +CustomerAbsoluteDiscountShort=Absolute discount +CompanyHasRelativeDiscount=This customer has a default discount of %s%% +CompanyHasNoRelativeDiscount=This customer has no relative discount by default +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 +CompanyHasDownPaymentOrCommercialDiscount=This customer has discounts available (commercial, down payments) for %s %s +CompanyHasCreditNote=This customer still has credit notes for %s %s +HasNoAbsoluteDiscountFromSupplier=You have no discount credit available from this vendor +HasAbsoluteDiscountFromSupplier=You have discounts available (credits notes or down payments) for %s %s from this vendor +HasDownPaymentOrCommercialDiscountFromSupplier=You have discounts available (commercial, down payments) for %s %s from this vendor +HasCreditNoteFromSupplier=You have credit notes for %s %s from this vendor +CompanyHasNoAbsoluteDiscount=This customer has no discount credit available +CustomerAbsoluteDiscountAllUsers=Absolute customer discounts (granted by all users) +CustomerAbsoluteDiscountMy=Absolute customer discounts (granted by yourself) +SupplierAbsoluteDiscountAllUsers=Absolute vendor discounts (entered by all users) +SupplierAbsoluteDiscountMy=Absolute vendor discounts (entered by yourself) +DiscountNone=None +Vendor=Vendor +Supplier=Vendor +AddContact=Create contact +AddContactAddress=Create contact/address +EditContact=Edit contact +EditContactAddress=Edit contact/address +Contact=Contact +ContactId=Contact id +ContactsAddresses=Contacts/Addresses +FromContactName=Name: +NoContactDefinedForThirdParty=No contact defined for this third party +NoContactDefined=No contact defined +DefaultContact=Default contact/address +ContactByDefaultFor=Default contact/address for +AddThirdParty=Create third party +DeleteACompany=Delete a company +PersonalInformations=Personal data +AccountancyCode=Accounting account +CustomerCode=Customer Code +SupplierCode=Vendor Code +CustomerCodeShort=Customer Code +SupplierCodeShort=Vendor Code +CustomerCodeDesc=Customer Code, unique for all customers +SupplierCodeDesc=Vendor Code, unique for all vendors +RequiredIfCustomer=Required if third party is a customer or prospect +RequiredIfSupplier=Required if third party is a vendor +ValidityControledByModule=Validity controlled by module +ThisIsModuleRules=Rules for this module +ProspectToContact=Prospect to contact +CompanyDeleted=Company "%s" deleted from database. +ListOfContacts=List of contacts/addresses +ListOfContactsAddresses=List of contacts/addresses +ListOfThirdParties=List of Third Parties +ShowCompany=Third Party +ShowContact=Contact-Address +ContactsAllShort=All (No filter) +ContactType=Contact type +ContactForOrders=Order's contact +ContactForOrdersOrShipments=Order's or shipment's contact +ContactForProposals=Proposal's contact +ContactForContracts=Contract's contact +ContactForInvoices=Invoice's contact +NoContactForAnyOrder=This contact is not a contact for any order +NoContactForAnyOrderOrShipments=This contact is not a contact for any order or shipment +NoContactForAnyProposal=This contact is not a contact for any commercial proposal +NoContactForAnyContract=This contact is not a contact for any contract +NoContactForAnyInvoice=This contact is not a contact for any invoice +NewContact=New contact +NewContactAddress=New Contact/Address +MyContacts=My contacts +Capital=Capital +CapitalOf=Capital of %s +EditCompany=Edit company +ThisUserIsNot=This user is not a prospect, customer or vendor +VATIntraCheck=Check +VATIntraCheckDesc=The VAT ID must include the country prefix. The link %s uses the European VAT checker service (VIES) which requires internet access from the Dolibarr server. +VATIntraCheckURL=http://ec.europa.eu/taxation_customs/vies/vieshome.do +VATIntraCheckableOnEUSite=Check the intra-Community VAT ID on the European Commission website +VATIntraManualCheck=You can also check manually on the European Commission website %s +ErrorVATCheckMS_UNAVAILABLE=Check not possible. Check service is not provided by the member state (%s). +NorProspectNorCustomer=Not prospect, nor customer +JuridicalStatus=Legal Entity Type +Staff=Employees +ProspectLevelShort=Potential +ProspectLevel=Prospect potential +ContactPrivate=Private +ContactPublic=Shared +ContactVisibility=Visibility +ContactOthers=Other +OthersNotLinkedToThirdParty=Others, not linked to a third party +ProspectStatus=Prospect status +PL_NONE=None +PL_UNKNOWN=Unknown +PL_LOW=Low +PL_MEDIUM=Medium +PL_HIGH=High +TE_UNKNOWN=- +TE_STARTUP=Startup +TE_GROUP=Large company +TE_MEDIUM=Medium company +TE_ADMIN=Governmental +TE_SMALL=Small company +TE_RETAIL=Retailer +TE_WHOLE=Wholesaler +TE_PRIVATE=Private individual +TE_OTHER=Other +StatusProspect-1=Do not contact +StatusProspect0=Never contacted +StatusProspect1=To be contacted +StatusProspect2=Contact in process +StatusProspect3=Contact done +ChangeDoNotContact=Change status to 'Do not contact' +ChangeNeverContacted=Change status to 'Never contacted' +ChangeToContact=Change status to 'To be contacted' +ChangeContactInProcess=Change status to 'Contact in process' +ChangeContactDone=Change status to 'Contact done' +ProspectsByStatus=Prospects by status +NoParentCompany=None +ExportCardToFormat=Export card to format +ContactNotLinkedToCompany=Contact not linked to any third party +DolibarrLogin=Dolibarr login +NoDolibarrAccess=No Dolibarr access +ExportDataset_company_1=Third-parties (companies/foundations/physical people) and their properties +ExportDataset_company_2=Contacts and their properties +ImportDataset_company_1=Third-parties and their properties +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) +PriceLevel=Price Level +PriceLevelLabels=Price Level Labels +DeliveryAddress=Delivery address +AddAddress=Add address +SupplierCategory=Vendor category +JuridicalStatus200=Independent +DeleteFile=Delete file +ConfirmDeleteFile=Are you sure you want to delete this file? +AllocateCommercial=Assigned to sales representative +Organization=Organization +FiscalYearInformation=Fiscal Year +FiscalMonthStart=Starting month of the fiscal year +SocialNetworksInformation=Social networks +SocialNetworksFacebookURL=Facebook URL +SocialNetworksTwitterURL=Twitter URL +SocialNetworksLinkedinURL=Linkedin URL +SocialNetworksInstagramURL=Instagram URL +SocialNetworksYoutubeURL=Youtube URL +SocialNetworksGithubURL=Github URL +YouMustAssignUserMailFirst=You must create an email for this user prior to being able to add an email notification. +YouMustCreateContactFirst=To be able to add email notifications, you must first define contacts with valid emails for the third party +ListSuppliersShort=List of Vendors +ListProspectsShort=List of Prospects +ListCustomersShort=List of Customers +ThirdPartiesArea=Third Parties/Contacts +LastModifiedThirdParties=Last %s modified Third Parties +UniqueThirdParties=Total of Third Parties +InActivity=Open +ActivityCeased=Closed +ThirdPartyIsClosed=Third party is closed +ProductsIntoElements=List of products/services into %s +CurrentOutstandingBill=Current outstanding bill +OutstandingBill=Max. for outstanding bill +OutstandingBillReached=Max. for outstanding bill reached +OrderMinAmount=Minimum amount for order +MonkeyNumRefModelDesc=Return a number with the format %syymm-nnnn for the customer code and %syymm-nnnn for the vendor code where yy is year, mm is month and nnnn is a sequence with no break and no return to 0. +LeopardNumRefModelDesc=The code is free. This code can be modified at any time. +ManagingDirectors=Manager(s) name (CEO, director, president...) +MergeOriginThirdparty=Duplicate third party (third party you want to delete) +MergeThirdparties=Merge third parties +ConfirmMergeThirdparties=Are you sure you want to merge this third party into the current one? All linked objects (invoices, orders, ...) will be moved to current third party, then the third party will be deleted. +ThirdpartiesMergeSuccess=Third parties have been merged +SaleRepresentativeLogin=Login of sales representative +SaleRepresentativeFirstname=First name of sales representative +SaleRepresentativeLastname=Last name of sales representative +ErrorThirdpartiesMerge=There was an error when deleting the third parties. Please check the log. Changes have been reverted. +NewCustomerSupplierCodeProposed=Customer or Vendor code already used, a new code is suggested +KeepEmptyIfGenericAddress=Keep this field empty if this address is a generic address +#Imports +PaymentTypeCustomer=Payment Type - Customer +PaymentTermsCustomer=Payment Terms - Customer +PaymentTypeSupplier=Payment Type - Vendor +PaymentTermsSupplier=Payment Term - Vendor +PaymentTypeBoth=Payment Type - Customer and Vendor +MulticurrencyUsed=Use Multicurrency +MulticurrencyCurrency=Currency diff --git a/htdocs/langs/zh_HK/compta.lang b/htdocs/langs/zh_HK/compta.lang new file mode 100644 index 00000000000..8a8c837ac87 --- /dev/null +++ b/htdocs/langs/zh_HK/compta.lang @@ -0,0 +1,266 @@ +# Dolibarr language file - Source file is en_US - compta +MenuFinancial=Billing | Payment +TaxModuleSetupToModifyRules=Go to Taxes module setup to modify rules for calculation +TaxModuleSetupToModifyRulesLT=Go to Company setup to modify rules for calculation +OptionMode=Option for accountancy +OptionModeTrue=Option Incomes-Expenses +OptionModeVirtual=Option Claims-Debts +OptionModeTrueDesc=In this context, the turnover is calculated over payments (date of payments). The validity of the figures is assured only if the book-keeping is scrutinized through the input/output on the accounts via invoices. +OptionModeVirtualDesc=In this context, the turnover is calculated over invoices (date of validation). When these invoices are due, whether they have been paid or not, they are listed in the turnover output. +FeatureIsSupportedInInOutModeOnly=Feature only available in CREDITS-DEBTS accountancy mode (See Accountancy module configuration) +VATReportBuildWithOptionDefinedInModule=Amounts shown here are calculated using rules defined by Tax module setup. +LTReportBuildWithOptionDefinedInModule=Amounts shown here are calculated using rules defined by Company setup. +Param=Setup +RemainingAmountPayment=Amount payment remaining: +Account=Account +Accountparent=Parent account +Accountsparent=Parent accounts +Income=Income +Outcome=Expense +MenuReportInOut=Income / Expense +ReportInOut=Balance of income and expenses +ReportTurnover=Turnover invoiced +ReportTurnoverCollected=Turnover collected +PaymentsNotLinkedToInvoice=Payments not linked to any invoice, so not linked to any third party +PaymentsNotLinkedToUser=Payments not linked to any user +Profit=Profit +AccountingResult=Accounting result +BalanceBefore=Balance (before) +Balance=Balance +Debit=Debit +Credit=Credit +Piece=Accounting Doc. +AmountHTVATRealReceived=Net collected +AmountHTVATRealPaid=Net paid +VATToPay=Tax sales +VATReceived=Tax received +VATToCollect=Tax purchases +VATSummary=Tax monthly +VATBalance=Tax Balance +VATPaid=Tax paid +LT1Summary=Tax 2 summary +LT2Summary=Tax 3 summary +LT1SummaryES=RE Balance +LT2SummaryES=IRPF Balance +LT1SummaryIN=CGST Balance +LT2SummaryIN=SGST Balance +LT1Paid=Tax 2 paid +LT2Paid=Tax 3 paid +LT1PaidES=RE Paid +LT2PaidES=IRPF Paid +LT1PaidIN=CGST Paid +LT2PaidIN=SGST Paid +LT1Customer=Tax 2 sales +LT1Supplier=Tax 2 purchases +LT1CustomerES=RE sales +LT1SupplierES=RE purchases +LT1CustomerIN=CGST sales +LT1SupplierIN=CGST purchases +LT2Customer=Tax 3 sales +LT2Supplier=Tax 3 purchases +LT2CustomerES=IRPF sales +LT2SupplierES=IRPF purchases +LT2CustomerIN=SGST sales +LT2SupplierIN=SGST purchases +VATCollected=VAT collected +StatusToPay=To pay +SpecialExpensesArea=Area for all special payments +SocialContribution=Social or fiscal tax +SocialContributions=Social or fiscal taxes +SocialContributionsDeductibles=Deductible social or fiscal taxes +SocialContributionsNondeductibles=Nondeductible social or fiscal taxes +LabelContrib=Label contribution +TypeContrib=Type contribution +MenuSpecialExpenses=Special expenses +MenuTaxAndDividends=Taxes and dividends +MenuSocialContributions=Social/fiscal taxes +MenuNewSocialContribution=New social/fiscal tax +NewSocialContribution=New social/fiscal tax +AddSocialContribution=Add social/fiscal tax +ContributionsToPay=Social/fiscal taxes to pay +AccountancyTreasuryArea=Billing and payment area +NewPayment=New payment +PaymentCustomerInvoice=Customer invoice payment +PaymentSupplierInvoice=vendor invoice payment +PaymentSocialContribution=Social/fiscal tax payment +PaymentVat=VAT payment +ListPayment=List of payments +ListOfCustomerPayments=List of customer payments +ListOfSupplierPayments=List of vendor payments +DateStartPeriod=Date start period +DateEndPeriod=Date end period +newLT1Payment=New tax 2 payment +newLT2Payment=New tax 3 payment +LT1Payment=Tax 2 payment +LT1Payments=Tax 2 payments +LT2Payment=Tax 3 payment +LT2Payments=Tax 3 payments +newLT1PaymentES=New RE payment +newLT2PaymentES=New IRPF payment +LT1PaymentES=RE Payment +LT1PaymentsES=RE Payments +LT2PaymentES=IRPF Payment +LT2PaymentsES=IRPF Payments +VATPayment=Sales tax payment +VATPayments=Sales tax payments +VATRefund=Sales tax refund +NewVATPayment=New sales tax payment +NewLocalTaxPayment=New tax %s payment +Refund=Refund +SocialContributionsPayments=Social/fiscal taxes payments +ShowVatPayment=Show VAT payment +TotalToPay=Total to pay +BalanceVisibilityDependsOnSortAndFilters=Balance is visible in this list only if table is sorted ascending on %s and filtered for 1 bank account +CustomerAccountancyCode=Customer accounting code +SupplierAccountancyCode=Vendor accounting code +CustomerAccountancyCodeShort=Cust. account. code +SupplierAccountancyCodeShort=Sup. account. code +AccountNumber=Account number +NewAccountingAccount=New account +Turnover=Turnover invoiced +TurnoverCollected=Turnover collected +SalesTurnoverMinimum=Minimum turnover +ByExpenseIncome=By expenses & incomes +ByThirdParties=By third parties +ByUserAuthorOfInvoice=By invoice author +CheckReceipt=Check deposit +CheckReceiptShort=Check deposit +LastCheckReceiptShort=Latest %s check receipts +NewCheckReceipt=New discount +NewCheckDeposit=New check deposit +NewCheckDepositOn=Create receipt for deposit on account: %s +NoWaitingChecks=No checks awaiting deposit. +DateChequeReceived=Check reception date +NbOfCheques=No. of checks +PaySocialContribution=Pay a social/fiscal tax +ConfirmPaySocialContribution=Are you sure you want to classify this social or fiscal tax as paid? +DeleteSocialContribution=Delete a social or fiscal tax payment +ConfirmDeleteSocialContribution=Are you sure you want to delete this social/fiscal tax payment? +ExportDataset_tax_1=Social and fiscal taxes and payments +CalcModeVATDebt=Mode %sVAT on commitment accounting%s. +CalcModeVATEngagement=Mode %sVAT on incomes-expenses%s. +CalcModeDebt=Analysis of known recorded invoices even if they are not yet accounted in ledger. +CalcModeEngagement=Analysis of known recorded payments, even if they are not yet accounted in Ledger. +CalcModeBookkeeping=Analysis of data journalized in Bookkeeping Ledger table. +CalcModeLT1= Mode %sRE on customer invoices - suppliers invoices%s +CalcModeLT1Debt=Mode %sRE on customer invoices%s +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=Balance of income and expenses, annual summary +AnnualSummaryInputOutputMode=Balance of income and expenses, annual summary +AnnualByCompanies=Balance of income and expenses, by predefined groups of account +AnnualByCompaniesDueDebtMode=Balance of income and expenses, detail by predefined groups, mode %sClaims-Debts%s said Commitment accounting. +AnnualByCompaniesInputOutputMode=Balance of income and expenses, detail by predefined groups, mode %sIncomes-Expenses%s said cash accounting. +SeeReportInInputOutputMode=See %sanalysis of payments%s for a calculation on actual payments made even if they are not yet accounted in Ledger. +SeeReportInDueDebtMode=See %sanalysis of invoices%s for a calculation based on known recorded invoices even if they are not yet accounted in Ledger. +SeeReportInBookkeepingMode=See %sBookeeping report%s for a calculation on Bookkeeping Ledger table +RulesAmountWithTaxIncluded=- Amounts shown are with all taxes included +RulesResultDue=- It includes outstanding invoices, expenses, VAT, donations whether they are paid or not. Is also includes paid salaries.
    - It is based on the billing date of invoices and on the due date for expenses or tax payments. For salaries defined with Salary module, the value date of payment is used. +RulesResultInOut=- It includes the real payments made on invoices, expenses, VAT and salaries.
    - It is based on the payment dates of the invoices, expenses, VAT and salaries. The donation date for donation. +RulesCADue=- It includes the customer's due invoices whether they are paid or not.
    - It is based on the billing date of these invoices.
    +RulesCAIn=- It includes all the effective payments of invoices received from customers.
    - It is based on the payment date of these invoices
    +RulesCATotalSaleJournal=It includes all credit lines from the Sale journal. +RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" +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 +DepositsAreIncluded=- Down payment invoices are included +LT1ReportByCustomers=Report tax 2 by third party +LT2ReportByCustomers=Report tax 3 by third party +LT1ReportByCustomersES=Report by third party RE +LT2ReportByCustomersES=Report by third party IRPF +VATReport=Sale tax report +VATReportByPeriods=Sale tax report by period +VATReportByRates=Sale tax report by rates +VATReportByThirdParties=Sale tax report by third parties +VATReportByCustomers=Sale tax report by customer +VATReportByCustomersInInputOutputMode=Report by the customer VAT collected and paid +VATReportByQuartersInInputOutputMode=Report by Sale tax rate of the tax collected and paid +LT1ReportByQuarters=Report tax 2 by rate +LT2ReportByQuarters=Report tax 3 by rate +LT1ReportByQuartersES=Report by RE rate +LT2ReportByQuartersES=Report by IRPF rate +SeeVATReportInInputOutputMode=See report %sVAT encasement%s for a standard calculation +SeeVATReportInDueDebtMode=See report %sVAT on flow%s for a calculation with an option on the flow +RulesVATInServices=- For services, the report includes the VAT regulations actually received or issued on the basis of the date of payment. +RulesVATInProducts=- For material assets, the report includes the VAT received or issued on the basis of the date of payment. +RulesVATDueServices=- For services, the report includes VAT invoices due, paid or not, based on the invoice date. +RulesVATDueProducts=- For material assets, the report includes the VAT invoices, based on the invoice date. +OptionVatInfoModuleComptabilite=Note: For material assets, it should use the date of delivery to be more fair. +ThisIsAnEstimatedValue=This is a preview, based on business events and not from the final ledger table, so final results may differ from this preview values +PercentOfInvoice=%%/invoice +NotUsedForGoods=Not used on goods +ProposalStats=Statistics on proposals +OrderStats=Statistics on orders +InvoiceStats=Statistics on bills +Dispatch=Dispatching +Dispatched=Dispatched +ToDispatch=To dispatch +ThirdPartyMustBeEditAsCustomer=Third party must be defined as a customer +SellsJournal=Sales Journal +PurchasesJournal=Purchases Journal +DescSellsJournal=Sales Journal +DescPurchasesJournal=Purchases Journal +CodeNotDef=Not defined +WarningDepositsNotIncluded=Down payment invoices are not included in this version with this accountancy module. +DatePaymentTermCantBeLowerThanObjectDate=Payment term date can't be lower than object date. +Pcg_version=Chart of accounts models +Pcg_type=Pcg type +Pcg_subtype=Pcg subtype +InvoiceLinesToDispatch=Invoice lines to dispatch +ByProductsAndServices=By product and service +RefExt=External ref +ToCreateAPredefinedInvoice=To create a template invoice, create a standard invoice, then, without validating it, click onto button "%s". +LinkedOrder=Link to order +Mode1=Method 1 +Mode2=Method 2 +CalculationRuleDesc=To calculate total VAT, there is two methods:
    Method 1 is rounding vat on each line, then summing them.
    Method 2 is summing all vat on each line, then rounding result.
    Final result may differs from few cents. Default mode is mode %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. +CalculationMode=Calculation mode +AccountancyJournal=Accounting code journal +ACCOUNTING_VAT_SOLD_ACCOUNT=Accounting account by default for VAT on sales (used if not defined on VAT dictionary setup) +ACCOUNTING_VAT_BUY_ACCOUNT=Accounting account by default for VAT on purchases (used if not defined on VAT dictionary setup) +ACCOUNTING_VAT_PAY_ACCOUNT=Accounting account by default for paying VAT +ACCOUNTING_ACCOUNT_CUSTOMER=Accounting account used for customer third parties +ACCOUNTING_ACCOUNT_CUSTOMER_Desc=The dedicated accounting account defined on third party card will be used for Subledger accounting only. This one will be used for General Ledger and as default value of Subledger accounting if dedicated customer accounting account on third party is not defined. +ACCOUNTING_ACCOUNT_SUPPLIER=Accounting account used for vendor third parties +ACCOUNTING_ACCOUNT_SUPPLIER_Desc=The dedicated accounting account defined on third party card will be used for Subledger accounting only. This one will be used for General Ledger and as default value of Subledger accounting if dedicated vendor accounting account on third party is not defined. +ConfirmCloneTax=Confirm the clone of a social/fiscal tax +CloneTaxForNextMonth=Clone it for next month +SimpleReport=Simple report +AddExtraReport=Extra reports (add foreign and national customer report) +OtherCountriesCustomersReport=Foreign customers report +BasedOnTwoFirstLettersOfVATNumberBeingDifferentFromYourCompanyCountry=Based on the two first letters of the VAT number being different from your own company's country code +SameCountryCustomersWithVAT=National customers report +BasedOnTwoFirstLettersOfVATNumberBeingTheSameAsYourCompanyCountry=Based on the two first letters of the VAT number being the same as your own company's country code +LinkedFichinter=Link to an intervention +ImportDataset_tax_contrib=Social/fiscal taxes +ImportDataset_tax_vat=Vat payments +ErrorBankAccountNotFound=Error: Bank account not found +FiscalPeriod=Accounting period +ListSocialContributionAssociatedProject=List of social contributions associated with the project +DeleteFromCat=Remove from accounting group +AccountingAffectation=Accounting assignment +LastDayTaxIsRelatedTo=Last day of period the tax is related to +VATDue=Sale tax claimed +ClaimedForThisPeriod=Claimed for the period +PaidDuringThisPeriod=Paid during this period +ByVatRate=By sale tax rate +TurnoverbyVatrate=Turnover invoiced by sale tax rate +TurnoverCollectedbyVatrate=Turnover collected by sale tax rate +PurchasebyVatrate=Purchase by sale tax rate +LabelToShow=Short label +PurchaseTurnover=Purchase turnover +PurchaseTurnoverCollected=Purchase turnover collected +RulesPurchaseTurnoverDue=- It includes the supplier's due invoices whether they are paid or not.
    - It is based on the invoice date of these invoices.
    +RulesPurchaseTurnoverIn=- It includes all the effective payments of invoices done to suppliers.
    - It is based on the payment date of these invoices
    +RulesPurchaseTurnoverTotalPurchaseJournal=It includes all debit lines from the purchase journal. +ReportPurchaseTurnover=Purchase turnover invoiced +ReportPurchaseTurnoverCollected=Purchase turnover collected +IncludeVarpaysInResults = Include various payments in reports +IncludeLoansInResults = Include loans in reports diff --git a/htdocs/langs/zh_HK/contracts.lang b/htdocs/langs/zh_HK/contracts.lang new file mode 100644 index 00000000000..47572c355ab --- /dev/null +++ b/htdocs/langs/zh_HK/contracts.lang @@ -0,0 +1,101 @@ +# Dolibarr language file - Source file is en_US - contracts +ContractsArea=Contracts area +ListOfContracts=List of contracts +AllContracts=All contracts +ContractCard=Contract card +ContractStatusNotRunning=Not running +ContractStatusDraft=Draft +ContractStatusValidated=Validated +ContractStatusClosed=Closed +ServiceStatusInitial=Not running +ServiceStatusRunning=Running +ServiceStatusNotLate=Running, not expired +ServiceStatusNotLateShort=Not expired +ServiceStatusLate=Running, expired +ServiceStatusLateShort=Expired +ServiceStatusClosed=Closed +ShowContractOfService=Show contract of service +Contracts=Contracts +ContractsSubscriptions=Contracts/Subscriptions +ContractsAndLine=Contracts and line of contracts +Contract=Contract +ContractLine=Contract line +Closing=Closing +NoContracts=No contracts +MenuServices=Services +MenuInactiveServices=Services not active +MenuRunningServices=Running services +MenuExpiredServices=Expired services +MenuClosedServices=Closed services +NewContract=New contract +NewContractSubscription=New contract/subscription +AddContract=Create contract +DeleteAContract=Delete a contract +ActivateAllOnContract=Activate all services +CloseAContract=Close a contract +ConfirmDeleteAContract=Are you sure you want to delete this contract and all its services? +ConfirmValidateContract=Are you sure you want to validate this contract under name %s? +ConfirmActivateAllOnContract=This will open all services (not yet active). Are you sure you want to open all services? +ConfirmCloseContract=This will close all services (active or not). Are you sure you want to close this contract? +ConfirmCloseService=Are you sure you want to close this service with date %s? +ValidateAContract=Validate a contract +ActivateService=Activate service +ConfirmActivateService=Are you sure you want to activate this service with date %s? +RefContract=Contract reference +DateContract=Contract date +DateServiceActivate=Service activation date +ListOfServices=List of services +ListOfInactiveServices=List of not active services +ListOfExpiredServices=List of expired active services +ListOfClosedServices=List of closed services +ListOfRunningServices=List of running services +NotActivatedServices=Inactive services (among validated contracts) +BoardNotActivatedServices=Services to activate among validated contracts +BoardNotActivatedServicesShort=Services to activate +LastContracts=Latest %s contracts +LastModifiedServices=Latest %s modified services +ContractStartDate=Start date +ContractEndDate=End date +DateStartPlanned=Planned start date +DateStartPlannedShort=Planned start date +DateEndPlanned=Planned end date +DateEndPlannedShort=Planned end date +DateStartReal=Real start date +DateStartRealShort=Real start date +DateEndReal=Real end date +DateEndRealShort=Real end date +CloseService=Close service +BoardRunningServices=Services running +BoardRunningServicesShort=Services running +BoardExpiredServices=Services expired +BoardExpiredServicesShort=Services expired +ServiceStatus=Status of service +DraftContracts=Drafts contracts +CloseRefusedBecauseOneServiceActive=Contract can't be closed as there is at least one open service on it +ActivateAllContracts=Activate all contract lines +CloseAllContracts=Close all contract lines +DeleteContractLine=Delete a contract line +ConfirmDeleteContractLine=Are you sure you want to delete this contract line? +MoveToAnotherContract=Move service into another contract. +ConfirmMoveToAnotherContract=I choosed new target contract and confirm I want to move this service into this contract. +ConfirmMoveToAnotherContractQuestion=Choose in which existing contract (of same third party), you want to move this service to? +PaymentRenewContractId=Renew contract line (number %s) +ExpiredSince=Expiration date +NoExpiredServices=No expired active services +ListOfServicesToExpireWithDuration=List of Services to expire in %s days +ListOfServicesToExpireWithDurationNeg=List of Services expired from more than %s days +ListOfServicesToExpire=List of Services to expire +NoteListOfYourExpiredServices=This list contains only services of contracts for third parties you are linked to as a sale representative. +StandardContractsTemplate=Standard contracts template +ContactNameAndSignature=For %s, name and signature: +OnlyLinesWithTypeServiceAreUsed=Only lines with type "Service" will be cloned. +ConfirmCloneContract=Are you sure you want to clone the contract %s? +LowerDateEndPlannedShort=Lower planned end date of active services +SendContractRef=Contract information __REF__ +OtherContracts=Other contracts +##### Types de contacts ##### +TypeContact_contrat_internal_SALESREPSIGN=Sales representative signing contract +TypeContact_contrat_internal_SALESREPFOLL=Sales representative following-up contract +TypeContact_contrat_external_BILLING=Billing customer contact +TypeContact_contrat_external_CUSTOMER=Follow-up customer contact +TypeContact_contrat_external_SALESREPSIGN=Signing contract customer contact diff --git a/htdocs/langs/zh_HK/cron.lang b/htdocs/langs/zh_HK/cron.lang new file mode 100644 index 00000000000..1de1251831a --- /dev/null +++ b/htdocs/langs/zh_HK/cron.lang @@ -0,0 +1,84 @@ +# Dolibarr language file - Source file is en_US - cron +# About page +# Right +Permission23101 = Read Scheduled job +Permission23102 = Create/update Scheduled job +Permission23103 = Delete Scheduled job +Permission23104 = Execute Scheduled job +# Admin +CronSetup=Scheduled job management setup +URLToLaunchCronJobs=URL to check and launch qualified cron jobs +OrToLaunchASpecificJob=Or to check and launch a specific job +KeyForCronAccess=Security key for URL to launch cron jobs +FileToLaunchCronJobs=Command line to check and launch qualified cron jobs +CronExplainHowToRunUnix=On Unix environment you should use the following crontab entry to run the command line each 5 minutes +CronExplainHowToRunWin=On Microsoft(tm) Windows environment you can use Scheduled Task tools to run the command line each 5 minutes +CronMethodDoesNotExists=Class %s does not contains any method %s +CronJobDefDesc=Cron job profiles are defined into the module descriptor file. When module is activated, they are loaded and available so you can administer the jobs from the admin tools menu %s. +CronJobProfiles=List of predefined cron job profiles +# Menu +EnabledAndDisabled=Enabled and disabled +# Page list +CronLastOutput=Latest run output +CronLastResult=Latest result code +CronCommand=Command +CronList=Scheduled jobs +CronDelete=Delete scheduled jobs +CronConfirmDelete=Are you sure you want to delete these scheduled jobs? +CronExecute=Launch scheduled job +CronConfirmExecute=Are you sure you want to execute these scheduled jobs now? +CronInfo=Scheduled job module allows to schedule jobs to execute them automatically. Jobs can also be started manually. +CronTask=Job +CronNone=None +CronDtStart=Not before +CronDtEnd=Not after +CronDtNextLaunch=Next execution +CronDtLastLaunch=Start date of latest execution +CronDtLastResult=End date of latest execution +CronFrequency=Frequency +CronClass=Class +CronMethod=Method +CronModule=Module +CronNoJobs=No jobs registered +CronPriority=Priority +CronLabel=Label +CronNbRun=Number of launches +CronMaxRun=Maximum number of launches +CronEach=Every +JobFinished=Job launched and finished +#Page card +CronAdd= Add jobs +CronEvery=Execute job each +CronObject=Instance/Object to create +CronArgs=Parameters +CronSaveSucess=Save successfully +CronNote=Comment +CronFieldMandatory=Fields %s is mandatory +CronErrEndDateStartDt=End date cannot be before start date +StatusAtInstall=Status at module installation +CronStatusActiveBtn=Enable +CronStatusInactiveBtn=Disable +CronTaskInactive=This job is disabled +CronId=Id +CronClassFile=Filename with class +CronModuleHelp=Name of Dolibarr module directory (also work with external Dolibarr module).
    For example to call the fetch method of Dolibarr Product object /htdocs/product/class/product.class.php, the value for module is
    product +CronClassFileHelp=The relative path and file name to load (path is relative to web server root directory).
    For example to call the fetch method of Dolibarr Product object htdocs/product/class/product.class.php, the value for class file name is
    product/class/product.class.php +CronObjectHelp=The object name to load.
    For example to call the fetch method of Dolibarr Product object /htdocs/product/class/product.class.php, the value for class file name is
    Product +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=The system command line to execute. +CronCreateJob=Create new Scheduled Job +CronFrom=From +# Info +# Common +CronType=Job type +CronType_method=Call method of a PHP Class +CronType_command=Shell command +CronCannotLoadClass=Cannot load class file %s (to use class %s) +CronCannotLoadObject=Class file %s was loaded, but object %s was not found into it +UseMenuModuleToolsToAddCronJobs=Go into menu "Home - Admin tools - Scheduled jobs" to see and edit scheduled jobs. +JobDisabled=Job disabled +MakeLocalDatabaseDumpShort=Local database backup +MakeLocalDatabaseDump=Create a local database dump. Parameters are: compression ('gz' or 'bz' or 'none'), backup type ('mysql', 'pgsql', 'auto'), 1, 'auto' or filename to build, number of backup files to keep +WarningCronDelayed=Attention, for performance purpose, whatever is next date of execution of enabled jobs, your jobs may be delayed to a maximum of %s hours, before being run. +DATAPOLICYJob=Data cleaner and anonymizer diff --git a/htdocs/langs/zh_HK/deliveries.lang b/htdocs/langs/zh_HK/deliveries.lang new file mode 100644 index 00000000000..1f48c01de75 --- /dev/null +++ b/htdocs/langs/zh_HK/deliveries.lang @@ -0,0 +1,31 @@ +# Dolibarr language file - Source file is en_US - deliveries +Delivery=Delivery +DeliveryRef=Ref Delivery +DeliveryCard=Receipt card +DeliveryOrder=Delivery receipt +DeliveryDate=Delivery date +CreateDeliveryOrder=Generate delivery receipt +DeliveryStateSaved=Delivery state saved +SetDeliveryDate=Set shipping date +ValidateDeliveryReceipt=Validate delivery receipt +ValidateDeliveryReceiptConfirm=Are you sure you want to validate this delivery receipt? +DeleteDeliveryReceipt=Delete delivery receipt +DeleteDeliveryReceiptConfirm=Are you sure you want to delete delivery receipt %s? +DeliveryMethod=Delivery method +TrackingNumber=Tracking number +DeliveryNotValidated=Delivery not validated +StatusDeliveryCanceled=Canceled +StatusDeliveryDraft=Draft +StatusDeliveryValidated=Received +# merou PDF model +NameAndSignature=Name and Signature: +ToAndDate=To___________________________________ on ____/_____/__________ +GoodStatusDeclaration=Have received the goods above in good condition, +Deliverer=Deliverer: +Sender=Sender +Recipient=Recipient +ErrorStockIsNotEnough=There's not enough stock +Shippable=Shippable +NonShippable=Not Shippable +ShowReceiving=Show delivery receipt +NonExistentOrder=Nonexistent order diff --git a/htdocs/langs/zh_HK/dict.lang b/htdocs/langs/zh_HK/dict.lang new file mode 100644 index 00000000000..ec315d97142 --- /dev/null +++ b/htdocs/langs/zh_HK/dict.lang @@ -0,0 +1,359 @@ +# Dolibarr language file - Source file is en_US - dict +CountryFR=France +CountryBE=Belgium +CountryIT=Italy +CountryES=Spain +CountryDE=Germany +CountryCH=Switzerland +# Warning, country code GB is for United Kingdom. UK Does not exists as country code in ISO standard. +CountryGB=United Kingdom +CountryUK=United Kingdom +CountryIE=Ireland +CountryCN=China +CountryTN=Tunisia +CountryUS=United States +CountryMA=Morocco +CountryDZ=Algeria +CountryCA=Canada +CountryTG=Togo +CountryGA=Gabon +CountryNL=Netherlands +CountryHU=Hungary +CountryRU=Russia +CountrySE=Sweden +CountryCI=Ivoiry Coast +CountrySN=Senegal +CountryAR=Argentina +CountryCM=Cameroon +CountryPT=Portugal +CountrySA=Saudi Arabia +CountryMC=Monaco +CountryAU=Australia +CountrySG=Singapore +CountryAF=Afghanistan +CountryAX=Åland Islands +CountryAL=Albania +CountryAS=American Samoa +CountryAD=Andorra +CountryAO=Angola +CountryAI=Anguilla +CountryAQ=Antarctica +CountryAG=Antigua and Barbuda +CountryAM=Armenia +CountryAW=Aruba +CountryAT=Austria +CountryAZ=Azerbaijan +CountryBS=Bahamas +CountryBH=Bahrain +CountryBD=Bangladesh +CountryBB=Barbados +CountryBY=Belarus +CountryBZ=Belize +CountryBJ=Benin +CountryBM=Bermuda +CountryBT=Bhutan +CountryBO=Bolivia +CountryBA=Bosnia and Herzegovina +CountryBW=Botswana +CountryBV=Bouvet Island +CountryBR=Brazil +CountryIO=British Indian Ocean Territory +CountryBN=Brunei Darussalam +CountryBG=Bulgaria +CountryBF=Burkina Faso +CountryBI=Burundi +CountryKH=Cambodia +CountryCV=Cape Verde +CountryKY=Cayman Islands +CountryCF=Central African Republic +CountryTD=Chad +CountryCL=Chile +CountryCX=Christmas Island +CountryCC=Cocos (Keeling) Islands +CountryCO=Colombia +CountryKM=Comoros +CountryCG=Congo +CountryCD=Congo, The Democratic Republic of the +CountryCK=Cook Islands +CountryCR=Costa Rica +CountryHR=Croatia +CountryCU=Cuba +CountryCY=Cyprus +CountryCZ=Czech Republic +CountryDK=Denmark +CountryDJ=Djibouti +CountryDM=Dominica +CountryDO=Dominican Republic +CountryEC=Ecuador +CountryEG=Egypt +CountrySV=El Salvador +CountryGQ=Equatorial Guinea +CountryER=Eritrea +CountryEE=Estonia +CountryET=Ethiopia +CountryFK=Falkland Islands +CountryFO=Faroe Islands +CountryFJ=Fiji Islands +CountryFI=Finland +CountryGF=French Guiana +CountryPF=French Polynesia +CountryTF=French Southern Territories +CountryGM=Gambia +CountryGE=Georgia +CountryGH=Ghana +CountryGI=Gibraltar +CountryGR=Greece +CountryGL=Greenland +CountryGD=Grenada +CountryGP=Guadeloupe +CountryGU=Guam +CountryGT=Guatemala +CountryGN=Guinea +CountryGW=Guinea-Bissau +CountryGY=Guyana +CountryHT=Haïti +CountryHM=Heard Island and McDonald +CountryVA=Holy See (Vatican City State) +CountryHN=Honduras +CountryHK=Hong Kong +CountryIS=Iceland +CountryIN=India +CountryID=Indonesia +CountryIR=Iran +CountryIQ=Iraq +CountryIL=Israel +CountryJM=Jamaica +CountryJP=Japan +CountryJO=Jordan +CountryKZ=Kazakhstan +CountryKE=Kenya +CountryKI=Kiribati +CountryKP=North Korea +CountryKR=South Korea +CountryKW=Kuwait +CountryKG=Kyrgyzstan +CountryLA=Lao +CountryLV=Latvia +CountryLB=Lebanon +CountryLS=Lesotho +CountryLR=Liberia +CountryLY=Libyan +CountryLI=Liechtenstein +CountryLT=Lithuania +CountryLU=Luxembourg +CountryMO=Macao +CountryMK=Macedonia, the former Yugoslav of +CountryMG=Madagascar +CountryMW=Malawi +CountryMY=Malaysia +CountryMV=Maldives +CountryML=Mali +CountryMT=Malta +CountryMH=Marshall Islands +CountryMQ=Martinique +CountryMR=Mauritania +CountryMU=Mauritius +CountryYT=Mayotte +CountryMX=Mexico +CountryFM=Micronesia +CountryMD=Moldova +CountryMN=Mongolia +CountryMS=Monserrat +CountryMZ=Mozambique +CountryMM=Myanmar (Burma) +CountryNA=Namibia +CountryNR=Nauru +CountryNP=Nepal +CountryAN=Netherlands Antilles +CountryNC=New Caledonia +CountryNZ=New Zealand +CountryNI=Nicaragua +CountryNE=Niger +CountryNG=Nigeria +CountryNU=Niue +CountryNF=Norfolk Island +CountryMP=Northern Mariana Islands +CountryNO=Norway +CountryOM=Oman +CountryPK=Pakistan +CountryPW=Palau +CountryPS=Palestinian Territory, Occupied +CountryPA=Panama +CountryPG=Papua New Guinea +CountryPY=Paraguay +CountryPE=Peru +CountryPH=Philippines +CountryPN=Pitcairn Islands +CountryPL=Poland +CountryPR=Puerto Rico +CountryQA=Qatar +CountryRE=Reunion +CountryRO=Romania +CountryRW=Rwanda +CountrySH=Saint Helena +CountryKN=Saint Kitts and Nevis +CountryLC=Saint Lucia +CountryPM=Saint Pierre and Miquelon +CountryVC=Saint Vincent and Grenadines +CountryWS=Samoa +CountrySM=San Marino +CountryST=Sao Tome and Principe +CountryRS=Serbia +CountrySC=Seychelles +CountrySL=Sierra Leone +CountrySK=Slovakia +CountrySI=Slovenia +CountrySB=Solomon Islands +CountrySO=Somalia +CountryZA=South Africa +CountryGS=South Georgia and the South Sandwich Islands +CountryLK=Sri Lanka +CountrySD=Sudan +CountrySR=Suriname +CountrySJ=Svalbard and Jan Mayen +CountrySZ=Swaziland +CountrySY=Syrian +CountryTW=Taiwan +CountryTJ=Tajikistan +CountryTZ=Tanzania +CountryTH=Thailand +CountryTL=Timor-Leste +CountryTK=Tokelau +CountryTO=Tonga +CountryTT=Trinidad and Tobago +CountryTR=Turkey +CountryTM=Turkmenistan +CountryTC=Turks and Caicos Islands +CountryTV=Tuvalu +CountryUG=Uganda +CountryUA=Ukraine +CountryAE=United Arab Emirates +CountryUM=United States Minor Outlying Islands +CountryUY=Uruguay +CountryUZ=Uzbekistan +CountryVU=Vanuatu +CountryVE=Venezuela +CountryVN=Viet Nam +CountryVG=Virgin Islands, British +CountryVI=Virgin Islands, U.S. +CountryWF=Wallis and Futuna +CountryEH=Western Sahara +CountryYE=Yemen +CountryZM=Zambia +CountryZW=Zimbabwe +CountryGG=Guernsey +CountryIM=Isle of Man +CountryJE=Jersey +CountryME=Montenegro +CountryBL=Saint Barthelemy +CountryMF=Saint Martin + +##### Civilities ##### +CivilityMME=Mrs. +CivilityMR=Mr. +CivilityMLE=Ms. +CivilityMTRE=Master +CivilityDR=Doctor +##### Currencies ##### +Currencyeuros=Euros +CurrencyAUD=AU Dollars +CurrencySingAUD=AU Dollar +CurrencyCAD=CAN Dollars +CurrencySingCAD=CAN Dollar +CurrencyCHF=Swiss Francs +CurrencySingCHF=Swiss Franc +CurrencyEUR=Euros +CurrencySingEUR=Euro +CurrencyFRF=French Francs +CurrencySingFRF=French Franc +CurrencyGBP=GB Pounds +CurrencySingGBP=GB Pound +CurrencyINR=Indian rupees +CurrencySingINR=Indian rupee +CurrencyMAD=Dirham +CurrencySingMAD=Dirham +CurrencyMGA=Ariary +CurrencySingMGA=Ariary +CurrencyMUR=Mauritius rupees +CurrencySingMUR=Mauritius rupee +CurrencyNOK=Norwegian krones +CurrencySingNOK=Norwegian kronas +CurrencyTND=Tunisian dinars +CurrencySingTND=Tunisian dinar +CurrencyUSD=US Dollars +CurrencySingUSD=US Dollar +CurrencyUAH=Hryvnia +CurrencySingUAH=Hryvnia +CurrencyXAF=CFA Francs BEAC +CurrencySingXAF=CFA Franc BEAC +CurrencyXOF=CFA Francs BCEAO +CurrencySingXOF=CFA Franc BCEAO +CurrencyXPF=CFP Francs +CurrencySingXPF=CFP Franc +CurrencyCentEUR=cents +CurrencyCentSingEUR=cent +CurrencyCentINR=paisa +CurrencyCentSingINR=paise +CurrencyThousandthSingTND=thousandth +#### Input reasons ##### +DemandReasonTypeSRC_INTE=Internet +DemandReasonTypeSRC_CAMP_MAIL=Mailing campaign +DemandReasonTypeSRC_CAMP_EMAIL=EMailing campaign +DemandReasonTypeSRC_CAMP_PHO=Phone campaign +DemandReasonTypeSRC_CAMP_FAX=Fax campaign +DemandReasonTypeSRC_COMM=Commercial contact +DemandReasonTypeSRC_SHOP=Shop contact +DemandReasonTypeSRC_WOM=Word of mouth +DemandReasonTypeSRC_PARTNER=Partner +DemandReasonTypeSRC_EMPLOYEE=Employee +DemandReasonTypeSRC_SPONSORING=Sponsorship +DemandReasonTypeSRC_SRC_CUSTOMER=Incoming contact of a customer +#### Paper formats #### +PaperFormatEU4A0=Format 4A0 +PaperFormatEU2A0=Format 2A0 +PaperFormatEUA0=Format A0 +PaperFormatEUA1=Format A1 +PaperFormatEUA2=Format A2 +PaperFormatEUA3=Format A3 +PaperFormatEUA4=Format A4 +PaperFormatEUA5=Format A5 +PaperFormatEUA6=Format A6 +PaperFormatUSLETTER=Format Letter US +PaperFormatUSLEGAL=Format Legal US +PaperFormatUSEXECUTIVE=Format Executive US +PaperFormatUSLEDGER=Format Ledger/Tabloid +PaperFormatCAP1=Format P1 Canada +PaperFormatCAP2=Format P2 Canada +PaperFormatCAP3=Format P3 Canada +PaperFormatCAP4=Format P4 Canada +PaperFormatCAP5=Format P5 Canada +PaperFormatCAP6=Format P6 Canada +#### Expense report categories #### +ExpAutoCat=Car +ExpCycloCat=Moped +ExpMotoCat=Motorbike +ExpAuto3CV=3 CV +ExpAuto4CV=4 CV +ExpAuto5CV=5 CV +ExpAuto6CV=6 CV +ExpAuto7CV=7 CV +ExpAuto8CV=8 CV +ExpAuto9CV=9 CV +ExpAuto10CV=10 CV +ExpAuto11CV=11 CV +ExpAuto12CV=12 CV +ExpAuto3PCV=3 CV and more +ExpAuto4PCV=4 CV and more +ExpAuto5PCV=5 CV and more +ExpAuto6PCV=6 CV and more +ExpAuto7PCV=7 CV and more +ExpAuto8PCV=8 CV and more +ExpAuto9PCV=9 CV and more +ExpAuto10PCV=10 CV and more +ExpAuto11PCV=11 CV and more +ExpAuto12PCV=12 CV and more +ExpAuto13PCV=13 CV and more +ExpCyclo=Capacity lower to 50cm3 +ExpMoto12CV=Motorbike 1 or 2 CV +ExpMoto345CV=Motorbike 3, 4 or 5 CV +ExpMoto5PCV=Motorbike 5 CV and more diff --git a/htdocs/langs/zh_HK/donations.lang b/htdocs/langs/zh_HK/donations.lang new file mode 100644 index 00000000000..de4bdf68f03 --- /dev/null +++ b/htdocs/langs/zh_HK/donations.lang @@ -0,0 +1,34 @@ +# Dolibarr language file - Source file is en_US - donations +Donation=Donation +Donations=Donations +DonationRef=Donation ref. +Donor=Donor +AddDonation=Create a donation +NewDonation=New donation +DeleteADonation=Delete a donation +ConfirmDeleteADonation=Are you sure you want to delete this donation? +PublicDonation=Public donation +DonationsArea=Donations area +DonationStatusPromiseNotValidated=Draft promise +DonationStatusPromiseValidated=Validated promise +DonationStatusPaid=Donation received +DonationStatusPromiseNotValidatedShort=Draft +DonationStatusPromiseValidatedShort=Validated +DonationStatusPaidShort=Received +DonationTitle=Donation receipt +DonationDate=Donation date +DonationDatePayment=Payment date +ValidPromess=Validate promise +DonationReceipt=Donation receipt +DonationsModels=Documents models for donation receipts +LastModifiedDonations=Latest %s modified donations +DonationRecipient=Donation recipient +IConfirmDonationReception=The recipient declare reception, as a donation, of the following amount +MinimumAmount=Minimum amount is %s +FreeTextOnDonations=Free text to show in footer +FrenchOptions=Options for France +DONATION_ART200=Show article 200 from CGI if you are concerned +DONATION_ART238=Show article 238 from CGI if you are concerned +DONATION_ART885=Show article 885 from CGI if you are concerned +DonationPayment=Donation payment +DonationValidated=Donation %s validated diff --git a/htdocs/langs/zh_HK/ecm.lang b/htdocs/langs/zh_HK/ecm.lang new file mode 100644 index 00000000000..369ac6dfdfa --- /dev/null +++ b/htdocs/langs/zh_HK/ecm.lang @@ -0,0 +1,52 @@ +# Dolibarr language file - Source file is en_US - ecm +ECMNbOfDocs=No. of documents in directory +ECMSection=Directory +ECMSectionManual=Manual directory +ECMSectionAuto=Automatic directory +ECMSectionsManual=Manual tree +ECMSectionsAuto=Automatic tree +ECMSections=Directories +ECMRoot=ECM Root +ECMNewSection=New directory +ECMAddSection=Add directory +ECMCreationDate=Creation date +ECMNbOfFilesInDir=Number of files in directory +ECMNbOfSubDir=Number of sub-directories +ECMNbOfFilesInSubDir=Number of files in sub-directories +ECMCreationUser=Creator +ECMArea=DMS/ECM area +ECMAreaDesc=The DMS/ECM (Document Management System / Electronic Content Management) area allows you to save, share and search quickly all kind of documents in Dolibarr. +ECMAreaDesc2=* Automatic directories are filled automatically when adding documents from card of an element.
    * Manual directories can be used to save documents not linked to a particular element. +ECMSectionWasRemoved=Directory %s has been deleted. +ECMSectionWasCreated=Directory %s has been created. +ECMSearchByKeywords=Search by keywords +ECMSearchByEntity=Search by object +ECMSectionOfDocuments=Directories of documents +ECMTypeAuto=Automatic +ECMDocsBySocialContributions=Documents linked to social or fiscal taxes +ECMDocsByThirdParties=Documents linked to third parties +ECMDocsByProposals=Documents linked to proposals +ECMDocsByOrders=Documents linked to customers orders +ECMDocsByContracts=Documents linked to contracts +ECMDocsByInvoices=Documents linked to customers invoices +ECMDocsByProducts=Documents linked to products +ECMDocsByProjects=Documents linked to projects +ECMDocsByUsers=Documents linked to users +ECMDocsByInterventions=Documents linked to interventions +ECMDocsByExpenseReports=Documents linked to expense reports +ECMDocsByHolidays=Documents linked to holidays +ECMDocsBySupplierProposals=Documents linked to vendor proposals +ECMNoDirectoryYet=No directory created +ShowECMSection=Show directory +DeleteSection=Remove directory +ConfirmDeleteSection=Can you confirm you want to delete the directory %s? +ECMDirectoryForFiles=Relative directory for files +CannotRemoveDirectoryContainsFilesOrDirs=Removal not possible because it contains some files or sub-directories +CannotRemoveDirectoryContainsFiles=Removal not possible because it contains some files +ECMFileManager=File manager +ECMSelectASection=Select a directory in the tree... +DirNotSynchronizedSyncFirst=This directory seems to be created or modified outside ECM module. You must click on "Resync" button first to synchronize disk and database to get content of this directory. +ReSyncListOfDir=Resync list of directories +HashOfFileContent=Hash of file content +NoDirectoriesFound=No directories found +FileNotYetIndexedInDatabase=File not yet indexed into database (try to re-upload it) diff --git a/htdocs/langs/zh_HK/errors.lang b/htdocs/langs/zh_HK/errors.lang new file mode 100644 index 00000000000..7c67aeca8b5 --- /dev/null +++ b/htdocs/langs/zh_HK/errors.lang @@ -0,0 +1,265 @@ +# Dolibarr language file - Source file is en_US - errors + +# No errors +NoErrorCommitIsDone=No error, we commit +# Errors +ErrorButCommitIsDone=Errors found but we validate despite this +ErrorBadEMail=Email %s is wrong +ErrorBadUrl=Url %s is wrong +ErrorBadValueForParamNotAString=Bad value for your parameter. It appends generally when translation is missing. +ErrorLoginAlreadyExists=Login %s already exists. +ErrorGroupAlreadyExists=Group %s already exists. +ErrorRecordNotFound=Record not found. +ErrorFailToCopyFile=Failed to copy file '%s' into '%s'. +ErrorFailToCopyDir=Failed to copy directory '%s' into '%s'. +ErrorFailToRenameFile=Failed to rename file '%s' into '%s'. +ErrorFailToDeleteFile=Failed to remove file '%s'. +ErrorFailToCreateFile=Failed to create file '%s'. +ErrorFailToRenameDir=Failed to rename directory '%s' into '%s'. +ErrorFailToCreateDir=Failed to create directory '%s'. +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=This bank account is a cash account, so it accepts payments of type cash only. +ErrorFromToAccountsMustDiffers=Source and targets bank accounts must be different. +ErrorBadThirdPartyName=Bad value for third-party name +ErrorProdIdIsMandatory=The %s is mandatory +ErrorBadCustomerCodeSyntax=Bad syntax for customer code +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. +ErrorCustomerCodeRequired=Customer code required +ErrorBarCodeRequired=Barcode required +ErrorCustomerCodeAlreadyUsed=Customer code already used +ErrorBarCodeAlreadyUsed=Barcode already used +ErrorPrefixRequired=Prefix required +ErrorBadSupplierCodeSyntax=Bad syntax for vendor code +ErrorSupplierCodeRequired=Vendor code required +ErrorSupplierCodeAlreadyUsed=Vendor code already used +ErrorBadParameters=Bad parameters +ErrorBadValueForParameter=Wrong value '%s' for parameter '%s' +ErrorBadImageFormat=Image file has not a supported format (Your PHP does not support functions to convert images of this format) +ErrorBadDateFormat=Value '%s' has wrong date format +ErrorWrongDate=Date is not correct! +ErrorFailedToWriteInDir=Failed to write in directory %s +ErrorFoundBadEmailInFile=Found incorrect email syntax for %s lines in file (example line %s with email=%s) +ErrorUserCannotBeDelete=User cannot be deleted. Maybe it is associated to Dolibarr entities. +ErrorFieldsRequired=Some required fields were not filled. +ErrorSubjectIsRequired=The email topic is required +ErrorFailedToCreateDir=Failed to create a directory. Check that Web server user has permissions to write into Dolibarr documents directory. If parameter safe_mode is enabled on this PHP, check that Dolibarr php files owns to web server user (or group). +ErrorNoMailDefinedForThisUser=No mail defined for this user +ErrorFeatureNeedJavascript=This feature need javascript to be activated to work. Change this in setup - display. +ErrorTopMenuMustHaveAParentWithId0=A menu of type 'Top' can't have a parent menu. Put 0 in parent menu or choose a menu of type 'Left'. +ErrorLeftMenuMustHaveAParentId=A menu of type 'Left' must have a parent id. +ErrorFileNotFound=File %s not found (Bad path, wrong permissions or access denied by PHP openbasedir or safe_mode parameter) +ErrorDirNotFound=Directory %s not found (Bad path, wrong permissions or access denied by PHP openbasedir or safe_mode parameter) +ErrorFunctionNotAvailableInPHP=Function %s is required for this feature but is not available in this version/setup of PHP. +ErrorDirAlreadyExists=A directory with this name already exists. +ErrorFileAlreadyExists=A file with this name already exists. +ErrorPartialFile=File not received completely by server. +ErrorNoTmpDir=Temporary directy %s does not exists. +ErrorUploadBlockedByAddon=Upload blocked by a PHP/Apache plugin. +ErrorFileSizeTooLarge=File size is too large. +ErrorFieldTooLong=Field %s is too long. +ErrorSizeTooLongForIntType=Size too long for int type (%s digits maximum) +ErrorSizeTooLongForVarcharType=Size too long for string type (%s chars maximum) +ErrorNoValueForSelectType=Please fill value for select list +ErrorNoValueForCheckBoxType=Please fill value for checkbox list +ErrorNoValueForRadioType=Please fill value for radio list +ErrorBadFormatValueList=The list value cannot have more than one comma: %s, but need at least one: key,value +ErrorFieldCanNotContainSpecialCharacters=The field %s must not contains special characters. +ErrorFieldCanNotContainSpecialNorUpperCharacters=The field %s must not contain special characters, nor upper case characters and cannot contain only numbers. +ErrorFieldMustHaveXChar=The field %s must have at least %s characters. +ErrorNoAccountancyModuleLoaded=No accountancy module activated +ErrorExportDuplicateProfil=This profile name already exists for this export set. +ErrorLDAPSetupNotComplete=Dolibarr-LDAP matching is not complete. +ErrorLDAPMakeManualTest=A .ldif file has been generated in directory %s. Try to load it manually from command line to have more information on errors. +ErrorCantSaveADoneUserWithZeroPercentage=Can't save an action with "status not started" if field "done by" is also filled. +ErrorRefAlreadyExists=Ref used for creation already exists. +ErrorPleaseTypeBankTransactionReportName=Please enter the bank statement name where the entry has to be reported (Format YYYYMM or YYYYMMDD) +ErrorRecordHasChildren=Failed to delete record since it has some child records. +ErrorRecordHasAtLeastOneChildOfType=Object has at least one child of type %s +ErrorRecordIsUsedCantDelete=Can't delete record. It is already used or included into another object. +ErrorModuleRequireJavascript=Javascript must not be disabled to have this feature working. To enable/disable Javascript, go to menu Home->Setup->Display. +ErrorPasswordsMustMatch=Both typed passwords must match each other +ErrorContactEMail=A technical error occured. Please, contact administrator to following email %s and provide the error code %s in your message, or add a screen copy of this page. +ErrorWrongValueForField=Field %s: '%s' does not match regex rule %s +ErrorFieldValueNotIn=Field %s: '%s' is not a value found in field %s of %s +ErrorFieldRefNotIn=Field %s: '%s' is not a %s existing ref +ErrorsOnXLines=%s errors found +ErrorFileIsInfectedWithAVirus=The antivirus program was not able to validate the file (file might be infected by a virus) +ErrorSpecialCharNotAllowedForField=Special characters are not allowed for field "%s" +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 %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 +ErrorMaxNumberReachForThisMask=Maximum number reached for this mask +ErrorCounterMustHaveMoreThan3Digits=Counter must have more than 3 digits +ErrorSelectAtLeastOne=Error, select at least one entry. +ErrorDeleteNotPossibleLineIsConsolidated=Delete not possible because record is linked to a bank transaction that is conciliated +ErrorProdIdAlreadyExist=%s is assigned to another third +ErrorFailedToSendPassword=Failed to send password +ErrorFailedToLoadRSSFile=Fails to get RSS feed. Try to add constant MAIN_SIMPLEXMLLOAD_DEBUG if error messages does not provide enough information. +ErrorForbidden=Access denied.
    You try to access to a page, area or feature of a disabled module or without being in an authenticated session or that is not allowed to your user. +ErrorForbidden2=Permission for this login can be defined by your Dolibarr administrator from menu %s->%s. +ErrorForbidden3=It seems that Dolibarr is not used through an authenticated session. Take a look at Dolibarr setup documentation to know how to manage authentications (htaccess, mod_auth or other...). +ErrorNoImagickReadimage=Class Imagick is not found in this PHP. No preview can be available. Administrators can disable this tab from menu Setup - Display. +ErrorRecordAlreadyExists=Record already exists +ErrorLabelAlreadyExists=This label already exists +ErrorCantReadFile=Failed to read file '%s' +ErrorCantReadDir=Failed to read directory '%s' +ErrorBadLoginPassword=Bad value for login or password +ErrorLoginDisabled=Your account has been disabled +ErrorFailedToRunExternalCommand=Failed to run external command. Check it is available and runnable by your PHP server. If PHP Safe Mode is enabled, check that command is inside a directory defined by parameter safe_mode_exec_dir. +ErrorFailedToChangePassword=Failed to change password +ErrorLoginDoesNotExists=User with login %s could not be found. +ErrorLoginHasNoEmail=This user has no email address. Process aborted. +ErrorBadValueForCode=Bad value for security code. Try again with new value... +ErrorBothFieldCantBeNegative=Fields %s and %s can't be both negative +ErrorFieldCantBeNegativeOnInvoice=Field %s cannot be negative on this type of invoice. If you need to add a discount line, just create the discount first (from field '%s' in thirdparty card) and apply it to the invoice. +ErrorLinesCantBeNegativeForOneVATRate=Total of lines can't be negative for a given VAT rate. +ErrorLinesCantBeNegativeOnDeposits=Lines can't be negative in a deposit. You will face problems when you will need to consume the deposit in final invoice if you do so. +ErrorQtyForCustomerInvoiceCantBeNegative=Quantity for line into customer invoices can't be negative +ErrorWebServerUserHasNotPermission=User account %s used to execute web server has no permission for that +ErrorNoActivatedBarcode=No barcode type activated +ErrUnzipFails=Failed to unzip %s with ZipArchive +ErrNoZipEngine=No engine to zip/unzip %s file in this PHP +ErrorFileMustBeADolibarrPackage=The file %s must be a Dolibarr zip package +ErrorModuleFileRequired=You must select a Dolibarr module package file +ErrorPhpCurlNotInstalled=The PHP CURL is not installed, this is essential to talk with Paypal +ErrorFailedToAddToMailmanList=Failed to add record %s to Mailman list %s or SPIP base +ErrorFailedToRemoveToMailmanList=Failed to remove record %s to Mailman list %s or SPIP base +ErrorNewValueCantMatchOldValue=New value can't be equal to old one +ErrorFailedToValidatePasswordReset=Failed to reinit password. May be the reinit was already done (this link can be used only one time). If not, try to restart the reinit process. +ErrorToConnectToMysqlCheckInstance=Connect to database fails. Check database server is running (for example, with mysql/mariadb, you can launch it from command line with 'sudo service mysql start'). +ErrorFailedToAddContact=Failed to add contact +ErrorDateMustBeBeforeToday=The date cannot be greater than today +ErrorPaymentModeDefinedToWithoutSetup=A payment mode was set to type %s but setup of module Invoice was not completed to define information to show for this payment mode. +ErrorPHPNeedModule=Error, your PHP must have module %s installed to use this feature. +ErrorOpenIDSetupNotComplete=You setup Dolibarr config file to allow OpenID authentication, but URL of OpenID service is not defined into constant %s +ErrorWarehouseMustDiffers=Source and target warehouses must differs +ErrorBadFormat=Bad format! +ErrorMemberNotLinkedToAThirpartyLinkOrCreateFirst=Error, this member is not yet linked to any third party. Link member to an existing third party or create a new third party before creating subscription with invoice. +ErrorThereIsSomeDeliveries=Error, there is some deliveries linked to this shipment. Deletion refused. +ErrorCantDeletePaymentReconciliated=Can't delete a payment that had generated a bank entry that was reconciled +ErrorCantDeletePaymentSharedWithPayedInvoice=Can't delete a payment shared by at least one invoice with status Paid +ErrorPriceExpression1=Cannot assign to constant '%s' +ErrorPriceExpression2=Cannot redefine built-in function '%s' +ErrorPriceExpression3=Undefined variable '%s' in function definition +ErrorPriceExpression4=Illegal character '%s' +ErrorPriceExpression5=Unexpected '%s' +ErrorPriceExpression6=Wrong number of arguments (%s given, %s expected) +ErrorPriceExpression8=Unexpected operator '%s' +ErrorPriceExpression9=An unexpected error occured +ErrorPriceExpression10=Operator '%s' lacks operand +ErrorPriceExpression11=Expecting '%s' +ErrorPriceExpression14=Division by zero +ErrorPriceExpression17=Undefined variable '%s' +ErrorPriceExpression19=Expression not found +ErrorPriceExpression20=Empty expression +ErrorPriceExpression21=Empty result '%s' +ErrorPriceExpression22=Negative result '%s' +ErrorPriceExpression23=Unknown or non set variable '%s' in %s +ErrorPriceExpression24=Variable '%s' exists but has no value +ErrorPriceExpressionInternal=Internal error '%s' +ErrorPriceExpressionUnknown=Unknown error '%s' +ErrorSrcAndTargetWarehouseMustDiffers=Source and target warehouses must differs +ErrorTryToMakeMoveOnProductRequiringBatchData=Error, trying to make a stock movement without lot/serial information, on product '%s' requiring lot/serial information +ErrorCantSetReceptionToTotalDoneWithReceptionToApprove=All recorded receptions must first be verified (approved or denied) before being allowed to do this action +ErrorCantSetReceptionToTotalDoneWithReceptionDenied=All recorded receptions must first be verified (approved) before being allowed to do this action +ErrorGlobalVariableUpdater0=HTTP request failed with error '%s' +ErrorGlobalVariableUpdater1=Invalid JSON format '%s' +ErrorGlobalVariableUpdater2=Missing parameter '%s' +ErrorGlobalVariableUpdater3=The requested data was not found in result +ErrorGlobalVariableUpdater4=SOAP client failed with error '%s' +ErrorGlobalVariableUpdater5=No global variable selected +ErrorFieldMustBeANumeric=Field %s must be a numeric value +ErrorMandatoryParametersNotProvided=Mandatory parameter(s) not provided +ErrorOppStatusRequiredIfAmount=You set an estimated amount for this lead. So you must also enter it's status. +ErrorFailedToLoadModuleDescriptorForXXX=Failed to load module descriptor class for %s +ErrorBadDefinitionOfMenuArrayInModuleDescriptor=Bad Definition Of Menu Array In Module Descriptor (bad value for key fk_menu) +ErrorSavingChanges=An error has occurred when saving the changes +ErrorWarehouseRequiredIntoShipmentLine=Warehouse is required on the line to ship +ErrorFileMustHaveFormat=File must have format %s +ErrorSupplierCountryIsNotDefined=Country for this vendor is not defined. Correct this first. +ErrorsThirdpartyMerge=Failed to merge the two records. Request canceled. +ErrorStockIsNotEnoughToAddProductOnOrder=Stock is not enough for product %s to add it into a new order. +ErrorStockIsNotEnoughToAddProductOnInvoice=Stock is not enough for product %s to add it into a new invoice. +ErrorStockIsNotEnoughToAddProductOnShipment=Stock is not enough for product %s to add it into a new shipment. +ErrorStockIsNotEnoughToAddProductOnProposal=Stock is not enough for product %s to add it into a new proposal. +ErrorFailedToLoadLoginFileForMode=Failed to get the login key for mode '%s'. +ErrorModuleNotFound=File of module was not found. +ErrorFieldAccountNotDefinedForBankLine=Value for Accounting account not defined for source line id %s (%s) +ErrorFieldAccountNotDefinedForInvoiceLine=Value for Accounting account not defined for invoice id %s (%s) +ErrorFieldAccountNotDefinedForLine=Value for Accounting account not defined for the line (%s) +ErrorBankStatementNameMustFollowRegex=Error, bank statement name must follow the following syntax rule %s +ErrorPhpMailDelivery=Check that you don't use a too high number of recipients and that your email content is not similar to a Spam. Ask also your administrator to check firewall and server logs files for a more complete information. +ErrorUserNotAssignedToTask=User must be assigned to task to be able to enter time consumed. +ErrorTaskAlreadyAssigned=Task already assigned to user +ErrorModuleFileSeemsToHaveAWrongFormat=The module package seems to have a wrong format. +ErrorModuleFileSeemsToHaveAWrongFormat2=At least one mandatory directory must exists into zip of module: %s or %s +ErrorFilenameDosNotMatchDolibarrPackageRules=The name of the module package (%s) does not match expected name syntax: %s +ErrorDuplicateTrigger=Error, duplicate trigger name %s. Already loaded from %s. +ErrorNoWarehouseDefined=Error, no warehouses defined. +ErrorBadLinkSourceSetButBadValueForRef=The link you use is not valid. A 'source' for payment is defined, but value for 'ref' is not valid. +ErrorTooManyErrorsProcessStopped=Too many errors. Process was stopped. +ErrorMassValidationNotAllowedWhenStockIncreaseOnAction=Mass validation is not possible when option to increase/decrease stock is set on this action (you must validate one by one so you can define the warehouse to increase/decrease) +ErrorObjectMustHaveStatusDraftToBeValidated=Object %s must have status 'Draft' to be validated. +ErrorObjectMustHaveLinesToBeValidated=Object %s must have lines to be validated. +ErrorOnlyInvoiceValidatedCanBeSentInMassAction=Only validated invoices can be sent using the "Send by email" mass action. +ErrorChooseBetweenFreeEntryOrPredefinedProduct=You must choose if article is a predefined product or not +ErrorDiscountLargerThanRemainToPaySplitItBefore=The discount you try to apply is larger than remain to pay. Split the discount in 2 smaller discounts before. +ErrorFileNotFoundWithSharedLink=File was not found. May be the share key was modified or file was removed recently. +ErrorProductBarCodeAlreadyExists=The product barcode %s already exists on another product reference. +ErrorNoteAlsoThatSubProductCantBeFollowedByLot=Note also that using virtual product to have auto increase/decrease of subproducts is not possible when at least one subproduct (or subproduct of subproducts) needs a serial/lot number. +ErrorDescRequiredForFreeProductLines=Description is mandatory for lines with free product +ErrorAPageWithThisNameOrAliasAlreadyExists=The page/container %s has the same name or alternative alias that the one your try to use +ErrorDuringChartLoad=Error when loading chart of accounts. If few accounts were not loaded, you can still enter them manually. +ErrorBadSyntaxForParamKeyForContent=Bad syntax for param keyforcontent. Must have a value starting with %s or %s +ErrorVariableKeyForContentMustBeSet=Error, the constant with name %s (with text content to show) or %s (with external url to show) must be set. +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. +ErrorObjectMustHaveStatusActiveToBeDisabled=Objects must have status 'Active' to be disabled +ErrorObjectMustHaveStatusDraftOrDisabledToBeActivated=Objects must have status 'Draft' or 'Disabled' to be enabled +ErrorNoFieldWithAttributeShowoncombobox=No fields has property 'showoncombobox' into definition of object '%s'. No way to show the combolist. +ErrorFieldRequiredForProduct=Field '%s' is required for product %s +ProblemIsInSetupOfTerminal=Problem is in setup of terminal %s. +ErrorAddAtLeastOneLineFirst=Add at least one line first +ErrorRecordAlreadyInAccountingDeletionNotPossible=Error, record is already transferred in accounting, deletion is not possible. +ErrorLanguageMandatoryIfPageSetAsTranslationOfAnother=Error, language is mandatory if you set the page as a translation of another one. +ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated page is same than this one. +ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". +ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". +ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty +# 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 +WarningSafeModeOnCheckExecDir=Warning, PHP option safe_mode is on so command must be stored inside a directory declared by php parameter safe_mode_exec_dir. +WarningBookmarkAlreadyExists=A bookmark with this title or this target (URL) already exists. +WarningPassIsEmpty=Warning, database password is empty. This is a security hole. You should add a password to your database and change your conf.php file to reflect this. +WarningConfFileMustBeReadOnly=Warning, your config file (htdocs/conf/conf.php) can be overwritten by the web server. This is a serious security hole. Modify permissions on file to be in read only mode for operating system user used by Web server. If you use Windows and FAT format for your disk, you must know that this file system does not allow to add permissions on file, so can't be completely safe. +WarningsOnXLines=Warnings on %s source record(s) +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). +WarningCloseAlways=Warning, closing is done even if amount differs between source and target elements. Enable this feature with caution. +WarningUsingThisBoxSlowDown=Warning, using this box slow down seriously all pages showing the box. +WarningClickToDialUserSetupNotComplete=Setup of ClickToDial information for your user are not complete (see tab ClickToDial onto your user card). +WarningFeatureDisabledWithDisplayOptimizedForBlindNoJs=Feature disabled when display setup is optimized for blind person or text browsers. +WarningPaymentDateLowerThanInvoiceDate=Payment date (%s) is earlier than invoice date (%s) for invoice %s. +WarningTooManyDataPleaseUseMoreFilters=Too many data (more than %s lines). Please use more filters or set the constant %s to a higher limit. +WarningSomeLinesWithNullHourlyRate=Some times were recorded by some users while their hourly rate was not defined. A value of 0 %s per hour was used but this may result in wrong valuation of time spent. +WarningYourLoginWasModifiedPleaseLogin=Your login was modified. For security purpose you will have to login with your new login before next action. +WarningAnEntryAlreadyExistForTransKey=An entry already exists for the translation key for this language +WarningNumberOfRecipientIsRestrictedInMassAction=Warning, number of different recipient is limited to %s when using the mass actions on lists +WarningDateOfLineMustBeInExpenseReportRange=Warning, the date of line is not in the range of the expense report +WarningProjectClosed=Project is closed. You must re-open it first. +WarningSomeBankTransactionByChequeWereRemovedAfter=Some bank transaction were removed after that the receipt including them were generated. So nb of cheques and total of receipt may differ from number and total in list. diff --git a/htdocs/langs/zh_HK/exports.lang b/htdocs/langs/zh_HK/exports.lang new file mode 100644 index 00000000000..3549e3f8b23 --- /dev/null +++ b/htdocs/langs/zh_HK/exports.lang @@ -0,0 +1,135 @@ +# Dolibarr language file - Source file is en_US - exports +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 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 your selections as an export profile/template (for reuse). +SaveImportModel=Save this import profile (for reuse) ... +ExportModelName=Export profile name +ExportModelSaved=Export profile saved as %s. +ExportableFields=Exportable fields +ExportedFields=Exported fields +ImportModelName=Import profile name +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 the file format in the combo box and click on "Generate" to build the export file... +AvailableFormats=Available Formats +LibraryShort=Library +ExportCsvSeparator=Csv caracter separator +ImportCsvSeparator=Csv caracter separator +Step=Step +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 extract data +LineId=Id of line +LineLabel=Label of line +LineDescription=Description of line +LineUnitPrice=Unit price of line +LineVATRate=VAT Rate of line +LineQty=Quantity for line +LineTotalHT=Amount excl. tax for line +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 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) +Field=Field +NoFields=No fields +MoveField=Move field column number %s +ExampleOfImportFile=Example_of_import_file +SaveImportProfile=Save this import profile +ErrorImportDuplicateProfil=Failed to save this import profile with this name. An existing profile already exists with this name. +TablesTarget=Targeted tables +FieldsTarget=Targeted fields +FieldTarget=Targeted field +FieldSource=Source field +NbOfSourceLines=Number of lines in source file +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=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 correct all errors before running the definitive import. +FileWasImported=File was imported with number %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 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 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 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 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 +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=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 +ComputedField=Computed field +## filters +SelectFilterFields=If you want to filter on some values, just input values here. +FilteredFields=Filtered fields +FilteredFieldsValues=Value for filter +FormatControlRule=Format control rule +## imports updates +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/zh_HK/externalsite.lang b/htdocs/langs/zh_HK/externalsite.lang new file mode 100644 index 00000000000..da4853df0df --- /dev/null +++ b/htdocs/langs/zh_HK/externalsite.lang @@ -0,0 +1,5 @@ +# Dolibarr language file - Source file is en_US - externalsite +ExternalSiteSetup=Setup link to external website +ExternalSiteURL=External Site URL +ExternalSiteModuleNotComplete=Module ExternalSite was not configured properly. +ExampleMyMenuEntry=My menu entry diff --git a/htdocs/langs/zh_HK/ftp.lang b/htdocs/langs/zh_HK/ftp.lang new file mode 100644 index 00000000000..d80b87c2715 --- /dev/null +++ b/htdocs/langs/zh_HK/ftp.lang @@ -0,0 +1,14 @@ +# Dolibarr language file - Source file is en_US - ftp +FTPClientSetup=FTP Client module setup +NewFTPClient=New FTP connection setup +FTPArea=FTP Area +FTPAreaDesc=This screen shows a view of an FTP server. +SetupOfFTPClientModuleNotComplete=The setup of the FTP client module seems to be incomplete +FTPFeatureNotSupportedByYourPHP=Your PHP does not support FTP functions +FailedToConnectToFTPServer=Failed to connect to FTP server (server %s, port %s) +FailedToConnectToFTPServerWithCredentials=Failed to login to FTP server with defined login/password +FTPFailedToRemoveFile=Failed to remove file %s. +FTPFailedToRemoveDir=Failed to remove directory %s: check permissions and that the directory is empty. +FTPPassiveMode=Passive mode +ChooseAFTPEntryIntoMenu=Choose a FTP site from the menu... +FailedToGetFile=Failed to get files %s diff --git a/htdocs/langs/zh_HK/help.lang b/htdocs/langs/zh_HK/help.lang new file mode 100644 index 00000000000..048de16d3c0 --- /dev/null +++ b/htdocs/langs/zh_HK/help.lang @@ -0,0 +1,23 @@ +# Dolibarr language file - Source file is en_US - help +CommunitySupport=Forum/Wiki support +EMailSupport=Emails support +RemoteControlSupport=Online real-time / remote support +OtherSupport=Other support +ToSeeListOfAvailableRessources=To contact/see available resources: +HelpCenter=Help Center +DolibarrHelpCenter=Dolibarr Help and Support Center +ToGoBackToDolibarr=Otherwise, click here to continue to use Dolibarr. +TypeOfSupport=Type of support +TypeSupportCommunauty=Community (free) +TypeSupportCommercial=Commercial +TypeOfHelp=Type +NeedHelpCenter=Need help or support? +Efficiency=Efficiency +TypeHelpOnly=Help only +TypeHelpDev=Help+Development +TypeHelpDevForm=Help+Development+Training +BackToHelpCenter=Otherwise, go back to Help center home page. +LinkToGoldMember=You can call one of the trainers preselected by Dolibarr for your language (%s) by clicking their Widget (status and maximum price are automatically updated): +PossibleLanguages=Supported languages +SubscribeToFoundation=Help the Dolibarr project, subscribe to the foundation +SeeOfficalSupport=For official Dolibarr support in your language:
    %s diff --git a/htdocs/langs/zh_HK/holiday.lang b/htdocs/langs/zh_HK/holiday.lang new file mode 100644 index 00000000000..82de49f9c5f --- /dev/null +++ b/htdocs/langs/zh_HK/holiday.lang @@ -0,0 +1,133 @@ +# Dolibarr language file - Source file is en_US - holiday +HRM=HRM +Holidays=Leave +CPTitreMenu=Leave +MenuReportMonth=Monthly statement +MenuAddCP=New leave request +NotActiveModCP=You must enable the module Leave to view this page. +AddCP=Make a leave request +DateDebCP=Start date +DateFinCP=End date +DraftCP=Draft +ToReviewCP=Awaiting approval +ApprovedCP=Approved +CancelCP=Canceled +RefuseCP=Refused +ValidatorCP=Approbator +ListeCP=List of leave +LeaveId=Leave ID +ReviewedByCP=Will be approved by +UserID=User ID +UserForApprovalID=User for approval ID +UserForApprovalFirstname=First name of approval user +UserForApprovalLastname=Last name of approval user +UserForApprovalLogin=Login of approval user +DescCP=Description +SendRequestCP=Create leave request +DelayToRequestCP=Leave requests must be made at least %s day(s) before them. +MenuConfCP=Balance of leave +SoldeCPUser=Leave balance is %s days. +ErrorEndDateCP=You must select an end date greater than the start date. +ErrorSQLCreateCP=An SQL error occurred during the creation: +ErrorIDFicheCP=An error has occurred, the leave request does not exist. +ReturnCP=Return to previous page +ErrorUserViewCP=You are not authorized to read this leave request. +InfosWorkflowCP=Information Workflow +RequestByCP=Requested by +TitreRequestCP=Leave request +TypeOfLeaveId=Type of leave ID +TypeOfLeaveCode=Type of leave code +TypeOfLeaveLabel=Type of leave label +NbUseDaysCP=Number of days of vacation consumed +NbUseDaysCPHelp=The calculation takes into account the non working days and the holidays defined in the dictionary. +NbUseDaysCPShort=Days consumed +NbUseDaysCPShortInMonth=Days consumed in month +DayIsANonWorkingDay=%s is a non working day +DateStartInMonth=Start date in month +DateEndInMonth=End date in month +EditCP=Edit +DeleteCP=Delete +ActionRefuseCP=Refuse +ActionCancelCP=Cancel +StatutCP=Status +TitleDeleteCP=Delete the leave request +ConfirmDeleteCP=Confirm the deletion of this leave request? +ErrorCantDeleteCP=Error you don't have the right to delete this leave request. +CantCreateCP=You don't have the right to make leave requests. +InvalidValidatorCP=You must choose an approbator to your leave request. +NoDateDebut=You must select a start date. +NoDateFin=You must select an end date. +ErrorDureeCP=Your leave request does not contain working day. +TitleValidCP=Approve the leave request +ConfirmValidCP=Are you sure you want to approve the leave request? +DateValidCP=Date approved +TitleToValidCP=Send leave request +ConfirmToValidCP=Are you sure you want to send the leave request? +TitleRefuseCP=Refuse the leave request +ConfirmRefuseCP=Are you sure you want to refuse the leave request? +NoMotifRefuseCP=You must choose a reason for refusing the request. +TitleCancelCP=Cancel the leave request +ConfirmCancelCP=Are you sure you want to cancel the leave request? +DetailRefusCP=Reason for refusal +DateRefusCP=Date of refusal +DateCancelCP=Date of cancellation +DefineEventUserCP=Assign an exceptional leave for a user +addEventToUserCP=Assign leave +NotTheAssignedApprover=You are not the assigned approver +MotifCP=Reason +UserCP=User +ErrorAddEventToUserCP=An error occurred while adding the exceptional leave. +AddEventToUserOkCP=The addition of the exceptional leave has been completed. +MenuLogCP=View change logs +LogCP=Log of updates of available vacation days +ActionByCP=Performed by +UserUpdateCP=For the user +PrevSoldeCP=Previous Balance +NewSoldeCP=New Balance +alreadyCPexist=A leave request has already been done on this period. +FirstDayOfHoliday=First day of vacation +LastDayOfHoliday=Last day of vacation +BoxTitleLastLeaveRequests=Latest %s modified leave requests +HolidaysMonthlyUpdate=Monthly update +ManualUpdate=Manual update +HolidaysCancelation=Leave request cancelation +EmployeeLastname=Employee last name +EmployeeFirstname=Employee first name +TypeWasDisabledOrRemoved=Leave type (id %s) was disabled or removed +LastHolidays=Latest %s leave requests +AllHolidays=All leave requests +HalfDay=Half day +NotTheAssignedApprover=You are not the assigned approver +LEAVE_PAID=Paid vacation +LEAVE_SICK=Sick leave +LEAVE_OTHER=Other leave +LEAVE_PAID_FR=Paid vacation +## Configuration du Module ## +LastUpdateCP=Latest automatic update of leave allocation +MonthOfLastMonthlyUpdate=Month of latest automatic update of leave allocation +UpdateConfCPOK=Updated successfully. +Module27130Name= Management of leave requests +Module27130Desc= Management of leave requests +ErrorMailNotSend=An error occurred while sending email: +NoticePeriod=Notice period +#Messages +HolidaysToValidate=Validate leave requests +HolidaysToValidateBody=Below is a leave request to validate +HolidaysToValidateDelay=This leave request will take place within a period of less than %s days. +HolidaysToValidateAlertSolde=The user who made this leave request does not have enough available days. +HolidaysValidated=Validated leave requests +HolidaysValidatedBody=Your leave request for %s to %s has been validated. +HolidaysRefused=Request denied +HolidaysRefusedBody=Your leave request for %s to %s has been denied for the following reason: +HolidaysCanceled=Canceled leaved request +HolidaysCanceledBody=Your leave request for %s to %s has been canceled. +FollowedByACounter=1: This type of leave need to be followed by a counter. Counter is incremented manually or automatically and when a leave request is validated, counter is decremented.
    0: Not followed by a counter. +NoLeaveWithCounterDefined=There is no leave types defined that need to be followed by a counter +GoIntoDictionaryHolidayTypes=Go into Home - Setup - Dictionaries - Type of leave to setup the different types of leaves. +HolidaySetup=Setup of module Holiday +HolidaysNumberingModules=Leave requests numbering models +TemplatePDFHolidays=Template for leave requests PDF +FreeLegalTextOnHolidays=Free text on PDF +WatermarkOnDraftHolidayCards=Watermarks on draft leave requests +HolidaysToApprove=Holidays to approve +NobodyHasPermissionToValidateHolidays=Nobody has permission to validate holidays diff --git a/htdocs/langs/zh_HK/hrm.lang b/htdocs/langs/zh_HK/hrm.lang new file mode 100644 index 00000000000..3697c47e30d --- /dev/null +++ b/htdocs/langs/zh_HK/hrm.lang @@ -0,0 +1,18 @@ +# Dolibarr language file - en_US - hrm +# Admin +HRM_EMAIL_EXTERNAL_SERVICE=Email to prevent HRM external service +Establishments=Establishments +Establishment=Establishment +NewEstablishment=New establishment +DeleteEstablishment=Delete establishment +ConfirmDeleteEstablishment=Are you sure you wish to delete this establishment? +OpenEtablishment=Open establishment +CloseEtablishment=Close establishment +# Dictionary +DictionaryPublicHolidays=HRM - Public holidays +DictionaryDepartment=HRM - Department list +DictionaryFunction=HRM - Function list +# Module +Employees=Employees +Employee=Employee +NewEmployee=New employee diff --git a/htdocs/langs/zh_HK/install.lang b/htdocs/langs/zh_HK/install.lang new file mode 100644 index 00000000000..f67dff57184 --- /dev/null +++ b/htdocs/langs/zh_HK/install.lang @@ -0,0 +1,223 @@ +# Dolibarr language file - Source file is en_US - install +InstallEasy=Just follow the instructions step by step. +MiscellaneousChecks=Prerequisites check +ConfFileExists=Configuration file %s exists. +ConfFileDoesNotExistsAndCouldNotBeCreated=Configuration file %s does not exist and could not be created! +ConfFileCouldBeCreated=Configuration file %s could be created. +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=Configuration file %s is writable. +ConfFileMustBeAFileNotADir=Configuration file %s must be a file, not a directory. +ConfFileReload=Reloading parameters from configuration file. +PHPSupportSessions=This PHP supports sessions. +PHPSupportPOSTGETOk=This PHP supports variables POST and 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. +PHPSupportCalendar=This PHP supports calendars extensions. +PHPSupportUTF8=This PHP supports UTF8 functions. +PHPSupportIntl=This PHP supports Intl functions. +PHPSupportxDebug=This PHP supports extended debug functions. +PHPSupport=This PHP supports %s functions. +PHPMemoryOK=Your PHP max session memory is set to %s. This should be enough. +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. +ErrorPHPDoesNotSupportCalendar=Your PHP installation does not support php calendar extensions. +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. +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. +ErrorPHPDoesNotSupport=Your PHP installation does not support %s functions. +ErrorDirDoesNotExists=Directory %s does not exist. +ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. +ErrorWrongValueForParameter=You may have typed a wrong value for parameter '%s'. +ErrorFailedToCreateDatabase=Failed to create database '%s'. +ErrorFailedToConnectToDatabase=Failed to connect to database '%s'. +ErrorDatabaseVersionTooLow=Database version (%s) too old. Version %s or higher is required. +ErrorPHPVersionTooLow=PHP version too old. Version %s is required. +ErrorConnectedButDatabaseNotFound=Connection to server successful but database '%s' not found. +ErrorDatabaseAlreadyExists=Database '%s' already exists. +IfDatabaseNotExistsGoBackAndUncheckCreate=If the database does not exist, go back and check option "Create database". +IfDatabaseExistsGoBackAndCheckCreate=If database already exists, go back and uncheck "Create database" option. +WarningBrowserTooOld=Version of browser is too old. Upgrading your browser to a recent version of Firefox, Chrome or Opera is highly recommended. +PHPVersion=PHP Version +License=Using license +ConfigurationFile=Configuration file +WebPagesDirectory=Directory where web pages are stored +DocumentsDirectory=Directory to store uploaded and generated documents +URLRoot=URL Root +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=Driver type +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. +DatabaseServer=Database server +DatabaseName=Database name +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=Password for Dolibarr database owner. +CreateDatabase=Create database +CreateUser=Create user account or grant user account permission on the Dolibarr database +DatabaseSuperUserAccess=Database server - Superuser access +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 +ServerConnection=Server connection +DatabaseCreation=Database creation +CreateDatabaseObjects=Database objects creation +ReferenceDataLoading=Reference data loading +TablesAndPrimaryKeysCreation=Tables and Primary keys creation +CreateTableAndPrimaryKey=Create table %s +CreateOtherKeysForTable=Create foreign keys and indexes for table %s +OtherKeysCreation=Foreign keys and indexes creation +FunctionsCreation=Functions creation +AdminAccountCreation=Administrator login creation +PleaseTypePassword=Please type a password, empty passwords are not allowed! +PleaseTypeALogin=Please type a login! +PasswordsMismatch=Passwords differs, please try again! +SetupEnd=End of setup +SystemIsInstalled=This installation is complete. +SystemIsUpgraded=Dolibarr has been upgraded successfully. +YouNeedToPersonalizeSetup=You need to configure Dolibarr to suit your needs (appearance, features, ...). To do this, please follow the link below: +AdminLoginCreatedSuccessfuly=Dolibarr administrator login '%s' created successfully. +GoToDolibarr=Go to Dolibarr +GoToSetupArea=Go to Dolibarr (setup area) +MigrationNotFinished=The database version is not completely up to date: run the upgrade process again. +GoToUpgradePage=Go to upgrade page again +WithNoSlashAtTheEnd=Without the slash "/" at the end +DirectoryRecommendation=IMPORTANT: You must use a directory that is outside of the web pages (so do not use a subdirectory of previous parameter). +LoginAlreadyExists=Already exists +DolibarrAdminLogin=Dolibarr admin login +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 +ChoosedMigrateScript=Choose migration script +DataMigration=Database migration (data) +DatabaseMigration=Database migration (structure + some data) +ProcessMigrateScript=Script processing +ChooseYourSetupMode=Choose your setup mode and click "Start"... +FreshInstall=Fresh install +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=Upgrade +UpgradeDesc=Use this mode if you have replaced old Dolibarr files with files from a newer version. This will upgrade your database and data. +Start=Start +InstallNotAllowed=Setup not allowed by conf.php permissions +YouMustCreateWithPermission=You must create file %s and set write permissions on it for the web server during install process. +CorrectProblemAndReloadPage=Please fix the problem and press F5 to reload the page. +AlreadyDone=Already migrated +DatabaseVersion=Database version +ServerVersion=Database server version +YouMustCreateItAndAllowServerToWrite=You must create this directory and allow for the web server to write into it. +DBSortingCollation=Character sorting order +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. +OrphelinsPaymentsDetectedByMethod=Orphans payment detected by method %s +RemoveItManuallyAndPressF5ToContinue=Remove it manually and press F5 to continue. +FieldRenamed=Field renamed +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=Recommended choice to install version %s from your current version %s +InstallChoiceSuggested=Install choice suggested by installer. +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=If this name is correct and that database does not exist yet, you must check option "Create database". +OpenBaseDir=PHP openbasedir parameter +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 +MigrationShippingDelivery=Upgrade storage of shipping +MigrationShippingDelivery2=Upgrade storage of shipping 2 +MigrationFinished=Migration finished +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. +ActivateModule=Activate module %s +ShowEditTechnicalParameters=Click here to show/edit advanced parameters (expert mode) +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 +######### +# upgrade +MigrationFixData=Fix for denormalized data +MigrationOrder=Data migration for customer's orders +MigrationSupplierOrder=Data migration for vendor's orders +MigrationProposal=Data migration for commercial proposals +MigrationInvoice=Data migration for customer's invoices +MigrationContract=Data migration for contracts +MigrationSuccessfullUpdate=Upgrade successful +MigrationUpdateFailed=Failed upgrade process +MigrationRelationshipTables=Data migration for relationship tables (%s) +MigrationPaymentsUpdate=Payment data correction +MigrationPaymentsNumberToUpdate=%s payment(s) to update +MigrationProcessPaymentUpdate=Update payment(s) %s +MigrationPaymentsNothingToUpdate=No more things to do +MigrationPaymentsNothingUpdatable=No more payments that can be corrected +MigrationContractsUpdate=Contract data correction +MigrationContractsNumberToUpdate=%s contract(s) to update +MigrationContractsLineCreation=Create contract line for contract ref %s +MigrationContractsNothingToUpdate=No more things to do +MigrationContractsFieldDontExist=Field fk_facture does not exist anymore. Nothing to do. +MigrationContractsEmptyDatesUpdate=Contract empty date correction +MigrationContractsEmptyDatesUpdateSuccess=Contract empty date correction done successfully +MigrationContractsEmptyDatesNothingToUpdate=No contract empty date to correct +MigrationContractsEmptyCreationDatesNothingToUpdate=No contract creation date to correct +MigrationContractsInvalidDatesUpdate=Bad value date contract correction +MigrationContractsInvalidDateFix=Correct contract %s (Contract date=%s, Starting service date min=%s) +MigrationContractsInvalidDatesNumber=%s contracts modified +MigrationContractsInvalidDatesNothingToUpdate=No date with bad value to correct +MigrationContractsIncoherentCreationDateUpdate=Bad value contract creation date correction +MigrationContractsIncoherentCreationDateUpdateSuccess=Bad value contract creation date correction done successfully +MigrationContractsIncoherentCreationDateNothingToUpdate=No bad value for contract creation date to correct +MigrationReopeningContracts=Open contract closed by error +MigrationReopenThisContract=Reopen contract %s +MigrationReopenedContractsNumber=%s contracts modified +MigrationReopeningContractsNothingToUpdate=No closed contract to open +MigrationBankTransfertsUpdate=Update links between bank entry and a bank transfer +MigrationBankTransfertsNothingToUpdate=All links are up to date +MigrationShipmentOrderMatching=Sendings receipt update +MigrationDeliveryOrderMatching=Delivery receipt update +MigrationDeliveryDetail=Delivery update +MigrationStockDetail=Update stock value of products +MigrationMenusDetail=Update dynamic menus tables +MigrationDeliveryAddress=Update delivery address in shipments +MigrationProjectTaskActors=Data migration for table llx_projet_task_actors +MigrationProjectUserResp=Data migration field fk_user_resp of llx_projet to llx_element_contact +MigrationProjectTaskTime=Update time spent in seconds +MigrationActioncommElement=Update data on actions +MigrationPaymentMode=Data migration for payment type +MigrationCategorieAssociation=Migration of categories +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 +MigrationFieldsSocialNetworks=Migration of users fields social networks (%s) +MigrationReloadModule=Reload module %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. +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/zh_HK/interventions.lang b/htdocs/langs/zh_HK/interventions.lang new file mode 100644 index 00000000000..e5936f8246e --- /dev/null +++ b/htdocs/langs/zh_HK/interventions.lang @@ -0,0 +1,66 @@ +# Dolibarr language file - Source file is en_US - interventions +Intervention=Intervention +Interventions=Interventions +InterventionCard=Intervention card +NewIntervention=New intervention +AddIntervention=Create intervention +ChangeIntoRepeatableIntervention=Change to repeatable intervention +ListOfInterventions=List of interventions +ActionsOnFicheInter=Actions on intervention +LastInterventions=Latest %s interventions +AllInterventions=All interventions +CreateDraftIntervention=Create draft +InterventionContact=Intervention contact +DeleteIntervention=Delete intervention +ValidateIntervention=Validate intervention +ModifyIntervention=Modify intervention +DeleteInterventionLine=Delete intervention line +ConfirmDeleteIntervention=Are you sure you want to delete this intervention? +ConfirmValidateIntervention=Are you sure you want to validate this intervention under name %s? +ConfirmModifyIntervention=Are you sure you want to modify this intervention? +ConfirmDeleteInterventionLine=Are you sure you want to delete this intervention line? +ConfirmCloneIntervention=Are you sure you want to clone this intervention? +NameAndSignatureOfInternalContact=Name and signature of intervening: +NameAndSignatureOfExternalContact=Name and signature of customer: +DocumentModelStandard=Standard document model for interventions +InterventionCardsAndInterventionLines=Interventions and lines of interventions +InterventionClassifyBilled=Classify "Billed" +InterventionClassifyUnBilled=Classify "Unbilled" +InterventionClassifyDone=Classify "Done" +StatusInterInvoiced=Billed +SendInterventionRef=Submission of intervention %s +SendInterventionByMail=Send intervention by email +InterventionCreatedInDolibarr=Intervention %s created +InterventionValidatedInDolibarr=Intervention %s validated +InterventionModifiedInDolibarr=Intervention %s modified +InterventionClassifiedBilledInDolibarr=Intervention %s set as billed +InterventionClassifiedUnbilledInDolibarr=Intervention %s set as unbilled +InterventionSentByEMail=Intervention %s sent by email +InterventionDeletedInDolibarr=Intervention %s deleted +InterventionsArea=Interventions area +DraftFichinter=Draft interventions +LastModifiedInterventions=Latest %s modified interventions +FichinterToProcess=Interventions to process +TypeContact_fichinter_external_CUSTOMER=Following-up customer contact +PrintProductsOnFichinter=Print also lines of type "product" (not only services) on intervention card +PrintProductsOnFichinterDetails=interventions generated from orders +UseServicesDurationOnFichinter=Use services duration for interventions generated from orders +UseDurationOnFichinter=Hides the duration field for intervention records +UseDateWithoutHourOnFichinter=Hides hours and minutes off the date field for intervention records +InterventionStatistics=Statistics of interventions +NbOfinterventions=No. of intervention cards +NumberOfInterventionsByMonth=No. of intervention cards by month (date of validation) +AmountOfInteventionNotIncludedByDefault=Amount of intervention is not included by default into profit (in most cases, timesheets are used to count time spent). Add option PROJECT_INCLUDE_INTERVENTION_AMOUNT_IN_PROFIT to 1 into home-setup-other to include them. +InterId=Intervention id +InterRef=Intervention ref. +InterDateCreation=Date creation intervention +InterDuration=Duration intervention +InterStatus=Status intervention +InterNote=Note intervention +InterLine=Line of intervention +InterLineId=Line id intervention +InterLineDate=Line date intervention +InterLineDuration=Line duration intervention +InterLineDesc=Line description intervention +RepeatableIntervention=Template of intervention +ToCreateAPredefinedIntervention=To create a predefined or recurring intervention, create a common intervention and convert it into intervention template diff --git a/htdocs/langs/zh_HK/languages.lang b/htdocs/langs/zh_HK/languages.lang new file mode 100644 index 00000000000..6185183161b --- /dev/null +++ b/htdocs/langs/zh_HK/languages.lang @@ -0,0 +1,89 @@ +# Dolibarr language file - Source file is en_US - languages +Language_ar_AR=Arabic +Language_ar_EG=Arabic (Egypt) +Language_ar_SA=Arabic +Language_bn_BD=Bengali +Language_bg_BG=Bulgarian +Language_bs_BA=Bosnian +Language_ca_ES=Catalan +Language_cs_CZ=Czech +Language_da_DA=Danish +Language_da_DK=Danish +Language_de_DE=German +Language_de_AT=German (Austria) +Language_de_CH=German (Switzerland) +Language_el_GR=Greek +Language_el_CY=Greek (Cyprus) +Language_en_AU=English (Australia) +Language_en_CA=English (Canada) +Language_en_GB=English (United Kingdom) +Language_en_IN=English (India) +Language_en_NZ=English (New Zealand) +Language_en_SA=English (Saudi Arabia) +Language_en_US=English (United States) +Language_en_ZA=English (South Africa) +Language_es_ES=Spanish +Language_es_AR=Spanish (Argentina) +Language_es_BO=Spanish (Bolivia) +Language_es_CL=Spanish (Chile) +Language_es_CO=Spanish (Colombia) +Language_es_DO=Spanish (Dominican Republic) +Language_es_EC=Spanish (Ecuador) +Language_es_HN=Spanish (Honduras) +Language_es_MX=Spanish (Mexico) +Language_es_PA=Spanish (Panama) +Language_es_PY=Spanish (Paraguay) +Language_es_PE=Spanish (Peru) +Language_es_PR=Spanish (Puerto Rico) +Language_es_UY=Spanish (Uruguay) +Language_es_VE=Spanish (Venezuela) +Language_et_EE=Estonian +Language_eu_ES=Basque +Language_fa_IR=Persian +Language_fi_FI=Finnish +Language_fr_BE=French (Belgium) +Language_fr_CA=French (Canada) +Language_fr_CH=French (Switzerland) +Language_fr_FR=French +Language_fr_NC=French (New Caledonia) +Language_fy_NL=Frisian +Language_he_IL=Hebrew +Language_hr_HR=Croatian +Language_hu_HU=Hungarian +Language_id_ID=Indonesian +Language_is_IS=Icelandic +Language_it_IT=Italian +Language_ja_JP=Japanese +Language_ka_GE=Georgian +Language_km_KH=Khmer +Language_kn_IN=Kannada +Language_ko_KR=Korean +Language_lo_LA=Lao +Language_lt_LT=Lithuanian +Language_lv_LV=Latvian +Language_mk_MK=Macedonian +Language_mn_MN=Mongolian +Language_nb_NO=Norwegian (Bokmål) +Language_nl_BE=Dutch (Belgium) +Language_nl_NL=Dutch +Language_pl_PL=Polish +Language_pt_BR=Portuguese (Brazil) +Language_pt_PT=Portuguese +Language_ro_RO=Romanian +Language_ru_RU=Russian +Language_ru_UA=Russian (Ukraine) +Language_tr_TR=Turkish +Language_sl_SI=Slovenian +Language_sv_SV=Swedish +Language_sv_SE=Swedish +Language_sq_AL=Albanian +Language_sk_SK=Slovakian +Language_sr_RS=Serbian +Language_sw_SW=Kiswahili +Language_th_TH=Thai +Language_uk_UA=Ukrainian +Language_uz_UZ=Uzbek +Language_vi_VN=Vietnamese +Language_zh_CN=Chinese +Language_zh_TW=Chinese (Traditional) +Language_bh_MY=Malay diff --git a/htdocs/langs/zh_HK/ldap.lang b/htdocs/langs/zh_HK/ldap.lang new file mode 100644 index 00000000000..8b6f0864215 --- /dev/null +++ b/htdocs/langs/zh_HK/ldap.lang @@ -0,0 +1,27 @@ +# Dolibarr language file - Source file is en_US - ldap +YouMustChangePassNextLogon=Password for user %s on the domain %s must be changed. +UserMustChangePassNextLogon=User must change password on the domain %s +LDAPInformationsForThisContact=Information in LDAP database for this contact +LDAPInformationsForThisUser=Information in LDAP database for this user +LDAPInformationsForThisGroup=Information in LDAP database for this group +LDAPInformationsForThisMember=Information in LDAP database for this member +LDAPInformationsForThisMemberType=Information in LDAP database for this member type +LDAPAttributes=LDAP attributes +LDAPCard=LDAP card +LDAPRecordNotFound=Record not found in LDAP database +LDAPUsers=Users in LDAP database +LDAPFieldStatus=Status +LDAPFieldFirstSubscriptionDate=First subscription date +LDAPFieldFirstSubscriptionAmount=First subscription amount +LDAPFieldLastSubscriptionDate=Latest subscription date +LDAPFieldLastSubscriptionAmount=Latest subscription amount +LDAPFieldSkype=Skype id +LDAPFieldSkypeExample=Example: skypeName +UserSynchronized=User synchronized +GroupSynchronized=Group synchronized +MemberSynchronized=Member synchronized +MemberTypeSynchronized=Member type synchronized +ContactSynchronized=Contact synchronized +ForceSynchronize=Force synchronizing Dolibarr -> LDAP +ErrorFailedToReadLDAP=Failed to read LDAP database. Check LDAP module setup and database accessibility. +PasswordOfUserInLDAP=Password of user in LDAP diff --git a/htdocs/langs/zh_HK/link.lang b/htdocs/langs/zh_HK/link.lang new file mode 100644 index 00000000000..1ffcd41a18b --- /dev/null +++ b/htdocs/langs/zh_HK/link.lang @@ -0,0 +1,11 @@ +# Dolibarr language file - Source file is en_US - languages +LinkANewFile=Link a new file/document +LinkedFiles=Linked files and documents +NoLinkFound=No registered links +LinkComplete=The file has been linked successfully +ErrorFileNotLinked=The file could not be linked +LinkRemoved=The link %s has been removed +ErrorFailedToDeleteLink= Failed to remove link '%s' +ErrorFailedToUpdateLink= Failed to update link '%s' +URLToLink=URL to link +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/zh_HK/loan.lang b/htdocs/langs/zh_HK/loan.lang new file mode 100644 index 00000000000..534dee08867 --- /dev/null +++ b/htdocs/langs/zh_HK/loan.lang @@ -0,0 +1,31 @@ +# Dolibarr language file - Source file is en_US - loan +Loan=Loan +Loans=Loans +NewLoan=New Loan +ShowLoan=Show Loan +PaymentLoan=Loan payment +LoanPayment=Loan payment +ShowLoanPayment=Show Loan Payment +LoanCapital=Capital +Insurance=Insurance +Interest=Interest +Nbterms=Number of terms +Term=Term +LoanAccountancyCapitalCode=Accounting account capital +LoanAccountancyInsuranceCode=Accounting account insurance +LoanAccountancyInterestCode=Accounting account interest +ConfirmDeleteLoan=Confirm deleting this loan +LoanDeleted=Loan Deleted Successfully +ConfirmPayLoan=Confirm classify paid this loan +LoanPaid=Loan Paid +ListLoanAssociatedProject=List of loan associated with the project +AddLoan=Create loan +FinancialCommitment=Financial commitment +InterestAmount=Interest +CapitalRemain=Capital remain +# Admin +ConfigLoan=Configuration of the module loan +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 diff --git a/htdocs/langs/zh_HK/mailmanspip.lang b/htdocs/langs/zh_HK/mailmanspip.lang new file mode 100644 index 00000000000..bab4b3576b4 --- /dev/null +++ b/htdocs/langs/zh_HK/mailmanspip.lang @@ -0,0 +1,27 @@ +# Dolibarr language file - Source file is en_US - mailmanspip +MailmanSpipSetup=Mailman and SPIP module Setup +MailmanTitle=Mailman mailing list system +TestSubscribe=To test subscription to Mailman lists +TestUnSubscribe=To test unsubscribe from Mailman lists +MailmanCreationSuccess=Subscription test was executed successfully +MailmanDeletionSuccess=Unsubscription test was executed successfully +SynchroMailManEnabled=A Mailman update will be performed +SynchroSpipEnabled=A Spip update will be performed +DescADHERENT_MAILMAN_ADMINPW=Mailman administrator password +DescADHERENT_MAILMAN_URL=URL for Mailman subscriptions +DescADHERENT_MAILMAN_UNSUB_URL=URL for Mailman unsubscriptions +DescADHERENT_MAILMAN_LISTS=List(s) for automatic inscription of new members (separated by a comma) +SPIPTitle=SPIP Content Management System +DescADHERENT_SPIP_SERVEUR=SPIP Server +DescADHERENT_SPIP_DB=SPIP database name +DescADHERENT_SPIP_USER=SPIP database login +DescADHERENT_SPIP_PASS=SPIP database password +AddIntoSpip=Add into SPIP +AddIntoSpipConfirmation=Are you sure you want to add this member into SPIP? +AddIntoSpipError=Failed to add the user in SPIP +DeleteIntoSpip=Remove from SPIP +DeleteIntoSpipConfirmation=Are you sure you want to remove this member from SPIP? +DeleteIntoSpipError=Failed to suppress the user from SPIP +SPIPConnectionFailed=Failed to connect to SPIP +SuccessToAddToMailmanList=%s successfully added to mailman list %s or SPIP database +SuccessToRemoveToMailmanList=%s successfully removed from mailman list %s or SPIP database diff --git a/htdocs/langs/zh_HK/mails.lang b/htdocs/langs/zh_HK/mails.lang new file mode 100644 index 00000000000..7b3bfd3852a --- /dev/null +++ b/htdocs/langs/zh_HK/mails.lang @@ -0,0 +1,170 @@ +# Dolibarr language file - Source file is en_US - mails +Mailing=EMailing +EMailing=EMailing +EMailings=EMailings +AllEMailings=All eMailings +MailCard=EMailing card +MailRecipients=Recipients +MailRecipient=Recipient +MailTitle=Description +MailFrom=Sender +MailErrorsTo=Errors to +MailReply=Reply to +MailTo=Receiver(s) +MailToUsers=To user(s) +MailCC=Copy to +MailToCCUsers=Copy to users(s) +MailCCC=Cached copy to +MailTopic=Email topic +MailText=Message +MailFile=Attached files +MailMessage=Email body +SubjectNotIn=Not in Subject +BodyNotIn=Not in Body +ShowEMailing=Show emailing +ListOfEMailings=List of emailings +NewMailing=New emailing +EditMailing=Edit emailing +ResetMailing=Resend emailing +DeleteMailing=Delete emailing +DeleteAMailing=Delete an emailing +PreviewMailing=Preview emailing +CreateMailing=Create emailing +TestMailing=Test email +ValidMailing=Valid emailing +MailingStatusDraft=Draft +MailingStatusValidated=Validated +MailingStatusSent=Sent +MailingStatusSentPartialy=Sent partially +MailingStatusSentCompletely=Sent completely +MailingStatusError=Error +MailingStatusNotSent=Not sent +MailSuccessfulySent=Email (from %s to %s) successfully accepted for delivery +MailingSuccessfullyValidated=EMailing successfully validated +MailUnsubcribe=Unsubscribe +MailingStatusNotContact=Don't contact anymore +MailingStatusReadAndUnsubscribe=Read and unsubscribe +ErrorMailRecipientIsEmpty=Email recipient is empty +WarningNoEMailsAdded=No new Email to add to recipient's list. +ConfirmValidMailing=Are you sure you want to validate this emailing? +ConfirmResetMailing=Warning, by re-initializing emailing %s, you will allow the re-sending this email in a bulk mailing. Are you sure you want to do this? +ConfirmDeleteMailing=Are you sure you want to delete this emailing? +NbOfUniqueEMails=No. of unique emails +NbOfEMails=No. of EMails +TotalNbOfDistinctRecipients=Number of distinct recipients +NoTargetYet=No recipients defined yet (Go on tab 'Recipients') +NoRecipientEmail=No recipient email for %s +RemoveRecipient=Remove recipient +YouCanAddYourOwnPredefindedListHere=To create your email selector module, see htdocs/core/modules/mailings/README. +EMailTestSubstitutionReplacedByGenericValues=When using test mode, substitutions variables are replaced by generic values +MailingAddFile=Attach this file +NoAttachedFiles=No attached files +BadEMail=Bad value for Email +ConfirmCloneEMailing=Are you sure you want to clone this emailing? +CloneContent=Clone message +CloneReceivers=Cloner recipients +DateLastSend=Date of latest sending +DateSending=Date sending +SentTo=Sent to %s +MailingStatusRead=Read +YourMailUnsubcribeOK=The email %s is correctly unsubscribe from mailing list +ActivateCheckReadKey=Key used to encrypt URL used for "Read Receipt" and "Unsubscribe" feature +EMailSentToNRecipients=Email sent to %s recipients. +EMailSentForNElements=Email sent for %s elements. +XTargetsAdded=%s recipients added into target list +OnlyPDFattachmentSupported=If the PDF documents were already generated for the objects to send, they will be attached to email. If not, no email will be sent (also, note that only pdf documents are supported as attachments in mass sending in this version). +AllRecipientSelected=The recipients of the %s record selected (if their email is known). +GroupEmails=Group emails +OneEmailPerRecipient=One email per recipient (by default, one email per record selected) +WarningIfYouCheckOneRecipientPerEmail=Warning, if you check this box, it means only one email will be sent for several different record selected, so, if your message contains substitution variables that refers to data of a record, it becomes not possible to replace them. +ResultOfMailSending=Result of mass Email sending +NbSelected=Number selected +NbIgnored=Number ignored +NbSent=Number sent +SentXXXmessages=%s message(s) sent. +ConfirmUnvalidateEmailing=Are you sure you want to change email %s to draft status? +MailingModuleDescContactsWithThirdpartyFilter=Contact with customer filters +MailingModuleDescContactsByCompanyCategory=Contacts by third-party category +MailingModuleDescContactsByCategory=Contacts by categories +MailingModuleDescContactsByFunction=Contacts by position +MailingModuleDescEmailsFromFile=Emails from file +MailingModuleDescEmailsFromUser=Emails input by user +MailingModuleDescDolibarrUsers=Users with Emails +MailingModuleDescThirdPartiesByCategories=Third parties (by categories) +SendingFromWebInterfaceIsNotAllowed=Sending from web interface is not allowed. + +# Libelle des modules de liste de destinataires mailing +LineInFile=Line %s in file +RecipientSelectionModules=Defined requests for recipient's selection +MailSelectedRecipients=Selected recipients +MailingArea=EMailings area +LastMailings=Latest %s emailings +TargetsStatistics=Targets statistics +NbOfCompaniesContacts=Unique contacts/addresses +MailNoChangePossible=Recipients for validated emailing can't be changed +SearchAMailing=Search mailing +SendMailing=Send emailing +SentBy=Sent by +MailingNeedCommand=Sending an emailing can be performed from command line. Ask your server administrator to launch the following command to send the emailing to all recipients: +MailingNeedCommand2=You can however send them online by adding parameter MAILING_LIMIT_SENDBYWEB with value of max number of emails you want to send by session. For this, go on Home - Setup - Other. +ConfirmSendingEmailing=If you want to send emailing directly from this screen, please confirm you are sure you want to send emailing now from your browser ? +LimitSendingEmailing=Note: Sending of emailings from web interface is done in several times for security and timeout reasons, %s recipients at a time for each sending session. +TargetsReset=Clear list +ToClearAllRecipientsClickHere=Click here to clear the recipient list for this emailing +ToAddRecipientsChooseHere=Add recipients by choosing from the lists +NbOfEMailingsReceived=Mass emailings received +NbOfEMailingsSend=Mass emailings sent +IdRecord=ID record +DeliveryReceipt=Delivery Ack. +YouCanUseCommaSeparatorForSeveralRecipients=You can use the comma separator to specify several recipients. +TagCheckMail=Track mail opening +TagUnsubscribe=Unsubscribe link +TagSignature=Signature of sending user +EMailRecipient=Recipient Email +TagMailtoEmail=Recipient Email (including html "mailto:" link) +NoEmailSentBadSenderOrRecipientEmail=No email sent. Bad sender or recipient email. Verify user profile. +# Module Notifications +Notifications=Notifications +NoNotificationsWillBeSent=No email notifications are planned for this event and company +ANotificationsWillBeSent=1 notification will be sent by email +SomeNotificationsWillBeSent=%s notifications will be sent by email +AddNewNotification=Activate a new email notification target/event +ListOfActiveNotifications=List all active targets/events for email notification +ListOfNotificationsDone=List all email notifications sent +MailSendSetupIs=Configuration of email sending has been setup to '%s'. This mode can't be used to send mass emailing. +MailSendSetupIs2=You must first go, with an admin account, into menu %sHome - Setup - EMails%s to change parameter '%s' to use mode '%s'. With this mode, you can enter setup of the SMTP server provided by your Internet Service Provider and use Mass emailing feature. +MailSendSetupIs3=If you have any questions on how to setup your SMTP server, you can ask to %s. +YouCanAlsoUseSupervisorKeyword=You can also add the keyword __SUPERVISOREMAIL__ to have email being sent to the supervisor of user (works only if an email is defined for this supervisor) +NbOfTargetedContacts=Current number of targeted contact emails +UseFormatFileEmailToTarget=Imported file must have format email;name;firstname;other +UseFormatInputEmailToTarget=Enter a string with format email;name;firstname;other +MailAdvTargetRecipients=Recipients (advanced selection) +AdvTgtTitle=Fill input fields to preselect the third parties or contacts/addresses to target +AdvTgtSearchTextHelp=Use %% as wildcards. For example to find all item like jean, joe, jim, you can input j%%, you can also use ; as separator for value, and use ! for except this value. For example jean;joe;jim%%;!jimo;!jima% will target all jean, joe, start with jim but not jimo and not everything that starts with jima +AdvTgtSearchIntHelp=Use interval to select int or float value +AdvTgtMinVal=Minimum value +AdvTgtMaxVal=Maximum value +AdvTgtSearchDtHelp=Use interval to select date value +AdvTgtStartDt=Start dt. +AdvTgtEndDt=End dt. +AdvTgtTypeOfIncudeHelp=Target Email of third party and email of contact of the third party, or just third-party email or just contact email +AdvTgtTypeOfIncude=Type of targeted email +AdvTgtContactHelp=Use only if you target contact into "Type of targeted email" +AddAll=Add all +RemoveAll=Remove all +ItemsCount=Item(s) +AdvTgtNameTemplate=Filter name +AdvTgtAddContact=Add emails according to criteria +AdvTgtLoadFilter=Load filter +AdvTgtDeleteFilter=Delete filter +AdvTgtSaveFilter=Save filter +AdvTgtCreateFilter=Create filter +AdvTgtOrCreateNewFilter=Name of new filter +NoContactWithCategoryFound=No contact/address with a category found +NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found +OutGoingEmailSetup=Outgoing email setup +InGoingEmailSetup=Incoming email setup +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) +DefaultOutgoingEmailSetup=Default outgoing email setup +Information=Information +ContactsWithThirdpartyFilter=Contacts with third-party filter diff --git a/htdocs/langs/zh_HK/main.lang b/htdocs/langs/zh_HK/main.lang new file mode 100644 index 00000000000..824a5e495b8 --- /dev/null +++ b/htdocs/langs/zh_HK/main.lang @@ -0,0 +1,1035 @@ +# Dolibarr language file - Source file is en_US - main +DIRECTION=ltr +# Note for Chinese: +# msungstdlight or cid0ct are for traditional Chinese (traditional does not render with Ubuntu pdf reader) +# stsongstdlight or cid0cs are for simplified Chinese +# To read Chinese pdf with Linux: sudo apt-get install poppler-data +FONTFORPDF=helvetica +FONTSIZEFORPDF=10 +SeparatorDecimal=. +SeparatorThousand=, +FormatDateShort=%m/%d/%Y +FormatDateShortInput=%m/%d/%Y +FormatDateShortJava=MM/dd/yyyy +FormatDateShortJavaInput=MM/dd/yyyy +FormatDateShortJQuery=mm/dd/yy +FormatDateShortJQueryInput=mm/dd/yy +FormatHourShortJQuery=HH:MI +FormatHourShort=%I:%M %p +FormatHourShortDuration=%H:%M +FormatDateTextShort=%b %d, %Y +FormatDateText=%B %d, %Y +FormatDateHourShort=%m/%d/%Y %I:%M %p +FormatDateHourSecShort=%m/%d/%Y %I:%M:%S %p +FormatDateHourTextShort=%b %d, %Y, %I:%M %p +FormatDateHourText=%B %d, %Y, %I:%M %p +DatabaseConnection=Database connection +NoTemplateDefined=No template available for this email type +AvailableVariables=Available substitution variables +NoTranslation=No translation +Translation=Translation +EmptySearchString=Enter a non empty search string +NoRecordFound=No record found +NoRecordDeleted=No record deleted +NotEnoughDataYet=Not enough data +NoError=No error +Error=Error +Errors=Errors +ErrorFieldRequired=Field '%s' is required +ErrorFieldFormat=Field '%s' has a bad value +ErrorFileDoesNotExists=File %s does not exist +ErrorFailedToOpenFile=Failed to open file %s +ErrorCanNotCreateDir=Cannot create dir %s +ErrorCanNotReadDir=Cannot read dir %s +ErrorConstantNotDefined=Parameter %s not defined +ErrorUnknown=Unknown error +ErrorSQL=SQL Error +ErrorLogoFileNotFound=Logo file '%s' was not found +ErrorGoToGlobalSetup=Go to 'Company/Organization' setup to fix this +ErrorGoToModuleSetup=Go to Module setup to fix this +ErrorFailedToSendMail=Failed to send mail (sender=%s, receiver=%s) +ErrorFileNotUploaded=File was not uploaded. Check that size does not exceed maximum allowed, that free space is available on disk and that there is not already a file with same name in this directory. +ErrorInternalErrorDetected=Error detected +ErrorWrongHostParameter=Wrong host parameter +ErrorYourCountryIsNotDefined=Your country is not defined. Go to Home-Setup-Edit and post the form again. +ErrorRecordIsUsedByChild=Failed to delete this record. This record is used by at least one child record. +ErrorWrongValue=Wrong value +ErrorWrongValueForParameterX=Wrong value for parameter %s +ErrorNoRequestInError=No request in error +ErrorServiceUnavailableTryLater=Service not available at the moment. Try again later. +ErrorDuplicateField=Duplicate value in a unique field +ErrorSomeErrorWereFoundRollbackIsDone=Some errors were found. Changes have been rolled back. +ErrorConfigParameterNotDefined=Parameter %s is not defined in the Dolibarr config file conf.php. +ErrorCantLoadUserFromDolibarrDatabase=Failed to find user %s in Dolibarr database. +ErrorNoVATRateDefinedForSellerCountry=Error, no vat rates defined for country '%s'. +ErrorNoSocialContributionForSellerCountry=Error, no social/fiscal taxes type defined for country '%s'. +ErrorFailedToSaveFile=Error, failed to save file. +ErrorCannotAddThisParentWarehouse=You are trying to add a parent warehouse which is already a child of a existing warehouse +MaxNbOfRecordPerPage=Max. number of records per page +NotAuthorized=You are not authorized to do that. +SetDate=Set date +SelectDate=Select a date +SeeAlso=See also %s +SeeHere=See here +ClickHere=Click here +Here=Here +Apply=Apply +BackgroundColorByDefault=Default background color +FileRenamed=The file was successfully renamed +FileGenerated=The file was successfully generated +FileSaved=The file was successfully saved +FileUploaded=The file was successfully uploaded +FileTransferComplete=File(s) uploaded successfully +FilesDeleted=File(s) successfully deleted +FileWasNotUploaded=A file is selected for attachment but was not yet uploaded. Click on "Attach file" for this. +NbOfEntries=No. of entries +GoToWikiHelpPage=Read online help (Internet access needed) +GoToHelpPage=Read help +RecordSaved=Record saved +RecordDeleted=Record deleted +RecordGenerated=Record generated +LevelOfFeature=Level of features +NotDefined=Not defined +DolibarrInHttpAuthenticationSoPasswordUseless=Dolibarr authentication mode is set to %s in configuration file conf.php.
    This means that the password database is external to Dolibarr, so changing this field may have no effect. +Administrator=Administrator +Undefined=Undefined +PasswordForgotten=Password forgotten? +NoAccount=No account? +SeeAbove=See above +HomeArea=Home +LastConnexion=Last login +PreviousConnexion=Previous login +PreviousValue=Previous value +ConnectedOnMultiCompany=Connected on environment +ConnectedSince=Connected since +AuthenticationMode=Authentication mode +RequestedUrl=Requested URL +DatabaseTypeManager=Database type manager +RequestLastAccessInError=Latest database access request error +ReturnCodeLastAccessInError=Return code for latest database access request error +InformationLastAccessInError=Information for latest database access request error +DolibarrHasDetectedError=Dolibarr has detected a technical error +YouCanSetOptionDolibarrMainProdToZero=You can read log file or set option $dolibarr_main_prod to '0' in your config file to get more information. +InformationToHelpDiagnose=This information can be useful for diagnostic purposes (you can set option $dolibarr_main_prod to '1' to remove such notices) +MoreInformation=More information +TechnicalInformation=Technical information +TechnicalID=Technical ID +LineID=Line ID +NotePublic=Note (public) +NotePrivate=Note (private) +PrecisionUnitIsLimitedToXDecimals=Dolibarr was setup to limit precision of unit prices to %s decimals. +DoTest=Test +ToFilter=Filter +NoFilter=No filter +WarningYouHaveAtLeastOneTaskLate=Warning, you have at least one element that has exceeded the tolerance time. +yes=yes +Yes=Yes +no=no +No=No +All=All +Home=Home +Help=Help +OnlineHelp=Online help +PageWiki=Wiki page +MediaBrowser=Media browser +Always=Always +Never=Never +Under=under +Period=Period +PeriodEndDate=End date for period +SelectedPeriod=Selected period +PreviousPeriod=Previous period +Activate=Activate +Activated=Activated +Closed=Closed +Closed2=Closed +NotClosed=Not closed +Enabled=Enabled +Enable=Enable +Deprecated=Deprecated +Disable=Disable +Disabled=Disabled +Add=Add +AddLink=Add link +RemoveLink=Remove link +AddToDraft=Add to draft +Update=Update +Close=Close +CloseBox=Remove widget from your dashboard +Confirm=Confirm +ConfirmSendCardByMail=Do you really want to send the content of this card by mail to %s? +Delete=Delete +Remove=Remove +Resiliate=Terminate +Cancel=Cancel +Modify=Modify +Edit=Edit +Validate=Validate +ValidateAndApprove=Validate and Approve +ToValidate=To validate +NotValidated=Not validated +Save=Save +SaveAs=Save As +SaveAndStay=Save and stay +SaveAndNew=Save and new +TestConnection=Test connection +ToClone=Clone +ConfirmCloneAsk=Are you sure you want to clone the object %s? +ConfirmClone=Choose data you want to clone: +NoCloneOptionsSpecified=No data to clone defined. +Of=of +Go=Go +Run=Run +CopyOf=Copy of +Show=Show +Hide=Hide +ShowCardHere=Show card +Search=Search +SearchOf=Search +SearchMenuShortCut=Ctrl + shift + f +Valid=Valid +Approve=Approve +Disapprove=Disapprove +ReOpen=Re-Open +Upload=Upload +ToLink=Link +Select=Select +Choose=Choose +Resize=Resize +ResizeOrCrop=Resize or Crop +Recenter=Recenter +Author=Author +User=User +Users=Users +Group=Group +Groups=Groups +NoUserGroupDefined=No user group defined +Password=Password +PasswordRetype=Retype your password +NoteSomeFeaturesAreDisabled=Note that a lot of features/modules are disabled in this demonstration. +Name=Name +NameSlashCompany=Name / Company +Person=Person +Parameter=Parameter +Parameters=Parameters +Value=Value +PersonalValue=Personal value +NewObject=New %s +NewValue=New value +CurrentValue=Current value +Code=Code +Type=Type +Language=Language +MultiLanguage=Multi-language +Note=Note +Title=Title +Label=Label +RefOrLabel=Ref. or label +Info=Log +Family=Family +Description=Description +Designation=Description +DescriptionOfLine=Description of line +DateOfLine=Date of line +DurationOfLine=Duration of line +Model=Doc template +DefaultModel=Default doc template +Action=Event +About=About +Number=Number +NumberByMonth=Number by month +AmountByMonth=Amount by month +Numero=Number +Limit=Limit +Limits=Limits +Logout=Logout +NoLogoutProcessWithAuthMode=No applicative disconnect feature with authentication mode %s +Connection=Login +Setup=Setup +Alert=Alert +MenuWarnings=Alerts +Previous=Previous +Next=Next +Cards=Cards +Card=Card +Now=Now +HourStart=Start hour +Date=Date +DateAndHour=Date and hour +DateToday=Today's date +DateReference=Reference date +DateStart=Start date +DateEnd=End date +DateCreation=Creation date +DateCreationShort=Creat. date +DateModification=Modification date +DateModificationShort=Modif. date +DateLastModification=Latest modification date +DateValidation=Validation date +DateClosing=Closing date +DateDue=Due date +DateValue=Value date +DateValueShort=Value date +DateOperation=Operation date +DateOperationShort=Oper. Date +DateLimit=Limit date +DateRequest=Request date +DateProcess=Process date +DateBuild=Report build date +DatePayment=Date of payment +DateApprove=Approving date +DateApprove2=Approving date (second approval) +RegistrationDate=Registration date +UserCreation=Creation user +UserModification=Modification user +UserValidation=Validation user +UserCreationShort=Creat. user +UserModificationShort=Modif. user +UserValidationShort=Valid. user +DurationYear=year +DurationMonth=month +DurationWeek=week +DurationDay=day +DurationYears=years +DurationMonths=months +DurationWeeks=weeks +DurationDays=days +Year=Year +Month=Month +Week=Week +WeekShort=Week +Day=Day +Hour=Hour +Minute=Minute +Second=Second +Years=Years +Months=Months +Days=Days +days=days +Hours=Hours +Minutes=Minutes +Seconds=Seconds +Weeks=Weeks +Today=Today +Yesterday=Yesterday +Tomorrow=Tomorrow +Morning=Morning +Afternoon=Afternoon +Quadri=Quadri +MonthOfDay=Month of the day +HourShort=H +MinuteShort=mn +Rate=Rate +CurrencyRate=Currency conversion rate +UseLocalTax=Include tax +Bytes=Bytes +KiloBytes=Kilobytes +MegaBytes=Megabytes +GigaBytes=Gigabytes +TeraBytes=Terabytes +UserAuthor=User of creation +UserModif=User of last update +b=b. +Kb=Kb +Mb=Mb +Gb=Gb +Tb=Tb +Cut=Cut +Copy=Copy +Paste=Paste +Default=Default +DefaultValue=Default value +DefaultValues=Default values/filters/sorting +Price=Price +PriceCurrency=Price (currency) +UnitPrice=Unit price +UnitPriceHT=Unit price (excl.) +UnitPriceHTCurrency=Unit price (excl.) (currency) +UnitPriceTTC=Unit price +PriceU=U.P. +PriceUHT=U.P. (net) +PriceUHTCurrency=U.P (currency) +PriceUTTC=U.P. (inc. tax) +Amount=Amount +AmountInvoice=Invoice amount +AmountInvoiced=Amount invoiced +AmountInvoicedHT=Amount invoiced (incl. tax) +AmountInvoicedTTC=Amount invoiced (excl. tax) +AmountPayment=Payment amount +AmountHTShort=Amount (excl.) +AmountTTCShort=Amount (inc. tax) +AmountHT=Amount (excl. tax) +AmountTTC=Amount (inc. tax) +AmountVAT=Amount tax +MulticurrencyAlreadyPaid=Already paid, original currency +MulticurrencyRemainderToPay=Remain to pay, original currency +MulticurrencyPaymentAmount=Payment amount, original currency +MulticurrencyAmountHT=Amount (excl. tax), original currency +MulticurrencyAmountTTC=Amount (inc. of tax), original currency +MulticurrencyAmountVAT=Amount tax, original currency +AmountLT1=Amount tax 2 +AmountLT2=Amount tax 3 +AmountLT1ES=Amount RE +AmountLT2ES=Amount IRPF +AmountTotal=Total amount +AmountAverage=Average amount +PriceQtyMinHT=Price quantity min. (excl. tax) +PriceQtyMinHTCurrency=Price quantity min. (excl. tax) (currency) +Percentage=Percentage +Total=Total +SubTotal=Subtotal +TotalHTShort=Total (excl.) +TotalHT100Short=Total 100%% (excl.) +TotalHTShortCurrency=Total (excl. in currency) +TotalTTCShort=Total (inc. tax) +TotalHT=Total (excl. tax) +TotalHTforthispage=Total (excl. tax) for this page +Totalforthispage=Total for this page +TotalTTC=Total (inc. tax) +TotalTTCToYourCredit=Total (inc. tax) to your credit +TotalVAT=Total tax +TotalVATIN=Total IGST +TotalLT1=Total tax 2 +TotalLT2=Total tax 3 +TotalLT1ES=Total RE +TotalLT2ES=Total IRPF +TotalLT1IN=Total CGST +TotalLT2IN=Total SGST +HT=Excl. tax +TTC=Inc. tax +INCVATONLY=Inc. VAT +INCT=Inc. all taxes +VAT=Sales tax +VATIN=IGST +VATs=Sales taxes +VATINs=IGST taxes +LT1=Sales tax 2 +LT1Type=Sales tax 2 type +LT2=Sales tax 3 +LT2Type=Sales tax 3 type +LT1ES=RE +LT2ES=IRPF +LT1IN=CGST +LT2IN=SGST +LT1GC=Additionnal cents +VATRate=Tax Rate +VATCode=Tax Rate code +VATNPR=Tax Rate NPR +DefaultTaxRate=Default tax rate +Average=Average +Sum=Sum +Delta=Delta +StatusToPay=To pay +RemainToPay=Remain to pay +Module=Module/Application +Modules=Modules/Applications +Option=Option +List=List +FullList=Full list +FullConversation=Full conversation +Statistics=Statistics +OtherStatistics=Other statistics +Status=Status +Favorite=Favorite +ShortInfo=Info. +Ref=Ref. +ExternalRef=Ref. extern +RefSupplier=Ref. vendor +RefPayment=Ref. payment +CommercialProposalsShort=Commercial proposals +Comment=Comment +Comments=Comments +ActionsToDo=Events to do +ActionsToDoShort=To do +ActionsDoneShort=Done +ActionNotApplicable=Not applicable +ActionRunningNotStarted=To start +ActionRunningShort=In progress +ActionDoneShort=Finished +ActionUncomplete=Incomplete +LatestLinkedEvents=Latest %s linked events +CompanyFoundation=Company/Organization +Accountant=Accountant +ContactsForCompany=Contacts for this third party +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 +ToDo=To do +Completed=Completed +Running=In progress +RequestAlreadyDone=Request already recorded +Filter=Filter +FilterOnInto=Search criteria '%s' into fields %s +RemoveFilter=Remove filter +ChartGenerated=Chart generated +ChartNotGenerated=Chart not generated +GeneratedOn=Build on %s +Generate=Generate +Duration=Duration +TotalDuration=Total duration +Summary=Summary +DolibarrStateBoard=Database Statistics +DolibarrWorkBoard=Open Items +NoOpenedElementToProcess=No open element to process +Available=Available +NotYetAvailable=Not yet available +NotAvailable=Not available +Categories=Tags/categories +Category=Tag/category +By=By +From=From +FromLocation=From +to=to +To=to +and=and +or=or +Other=Other +Others=Others +OtherInformations=Other information +Quantity=Quantity +Qty=Qty +ChangedBy=Changed by +ApprovedBy=Approved by +ApprovedBy2=Approved by (second approval) +Approved=Approved +Refused=Refused +ReCalculate=Recalculate +ResultKo=Failure +Reporting=Reporting +Reportings=Reporting +Draft=Draft +Drafts=Drafts +StatusInterInvoiced=Invoiced +Validated=Validated +Opened=Open +OpenAll=Open (All) +ClosedAll=Closed (All) +New=New +Discount=Discount +Unknown=Unknown +General=General +Size=Size +OriginalSize=Original size +Received=Received +Paid=Paid +Topic=Subject +ByCompanies=By third parties +ByUsers=By user +Links=Links +Link=Link +Rejects=Rejects +Preview=Preview +NextStep=Next step +Datas=Data +None=None +NoneF=None +NoneOrSeveral=None or several +Late=Late +LateDesc=An item is defined as Delayed as per the system configuration in menu Home - Setup - Alerts. +NoItemLate=No late item +Photo=Picture +Photos=Pictures +AddPhoto=Add picture +DeletePicture=Picture delete +ConfirmDeletePicture=Confirm picture deletion? +Login=Login +LoginEmail=Login (email) +LoginOrEmail=Login or Email +CurrentLogin=Current login +EnterLoginDetail=Enter login details +January=January +February=February +March=March +April=April +May=May +June=June +July=July +August=August +September=September +October=October +November=November +December=December +Month01=January +Month02=February +Month03=March +Month04=April +Month05=May +Month06=June +Month07=July +Month08=August +Month09=September +Month10=October +Month11=November +Month12=December +MonthShort01=Jan +MonthShort02=Feb +MonthShort03=Mar +MonthShort04=Apr +MonthShort05=May +MonthShort06=Jun +MonthShort07=Jul +MonthShort08=Aug +MonthShort09=Sep +MonthShort10=Oct +MonthShort11=Nov +MonthShort12=Dec +MonthVeryShort01=J +MonthVeryShort02=F +MonthVeryShort03=M +MonthVeryShort04=A +MonthVeryShort05=M +MonthVeryShort06=J +MonthVeryShort07=J +MonthVeryShort08=A +MonthVeryShort09=S +MonthVeryShort10=O +MonthVeryShort11=N +MonthVeryShort12=D +AttachedFiles=Attached files and documents +JoinMainDoc=Join main document +DateFormatYYYYMM=YYYY-MM +DateFormatYYYYMMDD=YYYY-MM-DD +DateFormatYYYYMMDDHHMM=YYYY-MM-DD HH:SS +ReportName=Report name +ReportPeriod=Report period +ReportDescription=Description +Report=Report +Keyword=Keyword +Origin=Origin +Legend=Legend +Fill=Fill +Reset=Reset +File=File +Files=Files +NotAllowed=Not allowed +ReadPermissionNotAllowed=Read permission not allowed +AmountInCurrency=Amount in %s currency +Example=Example +Examples=Examples +NoExample=No example +FindBug=Report a bug +NbOfThirdParties=Number of third parties +NbOfLines=Number of lines +NbOfObjects=Number of objects +NbOfObjectReferers=Number of related items +Referers=Related items +TotalQuantity=Total quantity +DateFromTo=From %s to %s +DateFrom=From %s +DateUntil=Until %s +Check=Check +Uncheck=Uncheck +Internal=Internal +External=External +Internals=Internal +Externals=External +Warning=Warning +Warnings=Warnings +BuildDoc=Build Doc +Entity=Environment +Entities=Entities +CustomerPreview=Customer preview +SupplierPreview=Vendor preview +ShowCustomerPreview=Show customer preview +ShowSupplierPreview=Show vendor preview +RefCustomer=Ref. customer +Currency=Currency +InfoAdmin=Information for administrators +Undo=Undo +Redo=Redo +ExpandAll=Expand all +UndoExpandAll=Undo expand +SeeAll=See all +Reason=Reason +FeatureNotYetSupported=Feature not yet supported +CloseWindow=Close window +Response=Response +Priority=Priority +SendByMail=Send by email +MailSentBy=Email sent by +TextUsedInTheMessageBody=Email body +SendAcknowledgementByMail=Send confirmation email +SendMail=Send email +Email=Email +NoEMail=No email +AlreadyRead=Already read +NotRead=Not read +NoMobilePhone=No mobile phone +Owner=Owner +FollowingConstantsWillBeSubstituted=The following constants will be replaced with the corresponding value. +Refresh=Refresh +BackToList=Back to list +GoBack=Go back +CanBeModifiedIfOk=Can be modified if valid +CanBeModifiedIfKo=Can be modified if not valid +ValueIsValid=Value is valid +ValueIsNotValid=Value is not valid +RecordCreatedSuccessfully=Record created successfully +RecordModifiedSuccessfully=Record modified successfully +RecordsModified=%s record(s) modified +RecordsDeleted=%s record(s) deleted +RecordsGenerated=%s record(s) generated +AutomaticCode=Automatic code +FeatureDisabled=Feature disabled +MoveBox=Move widget +Offered=Offered +NotEnoughPermissions=You don't have permission for this action +SessionName=Session name +Method=Method +Receive=Receive +CompleteOrNoMoreReceptionExpected=Complete or nothing more expected +ExpectedValue=Expected Value +PartialWoman=Partial +TotalWoman=Total +NeverReceived=Never received +Canceled=Canceled +YouCanChangeValuesForThisListFromDictionarySetup=You can change values for this list from menu Setup - Dictionaries +YouCanChangeValuesForThisListFrom=You can change values for this list from menu %s +YouCanSetDefaultValueInModuleSetup=You can set the default value used when creating a new record in module setup +Color=Color +Documents=Linked files +Documents2=Documents +UploadDisabled=Upload disabled +MenuAccountancy=Accounting +MenuECM=Documents +MenuAWStats=AWStats +MenuMembers=Members +MenuAgendaGoogle=Google agenda +ThisLimitIsDefinedInSetup=Dolibarr limit (Menu home-setup-security): %s Kb, PHP limit: %s Kb +NoFileFound=No documents saved in this directory +CurrentUserLanguage=Current language +CurrentTheme=Current theme +CurrentMenuManager=Current menu manager +Browser=Browser +Layout=Layout +Screen=Screen +DisabledModules=Disabled modules +For=For +ForCustomer=For customer +Signature=Signature +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 +AddNewLine=Add new line +AddFile=Add file +FreeZone=Not a predefined product/service +FreeLineOfType=Free-text item, type: +CloneMainAttributes=Clone object with its main attributes +ReGeneratePDF=Re-generate PDF +PDFMerge=PDF Merge +Merge=Merge +DocumentModelStandardPDF=Standard PDF template +PrintContentArea=Show page to print main content area +MenuManager=Menu manager +WarningYouAreInMaintenanceMode=Warning, you are in maintenance mode: only login %s is allowed to use the application in this mode. +CoreErrorTitle=System error +CoreErrorMessage=Sorry, an error occurred. Contact your system administrator to check the logs or disable $dolibarr_main_prod=1 to get more information. +CreditCard=Credit card +ValidatePayment=Validate payment +CreditOrDebitCard=Credit or debit card +FieldsWithAreMandatory=Fields with %s are mandatory +FieldsWithIsForPublic=Fields with %s are shown in public list of members. If you don't want this, uncheck the "public" box. +AccordingToGeoIPDatabase=(according to GeoIP conversion) +Line=Line +NotSupported=Not supported +RequiredField=Required field +Result=Result +ToTest=Test +ValidateBefore=Item must be validated before using this feature +Visibility=Visibility +Totalizable=Totalizable +TotalizableDesc=This field is totalizable in list +Private=Private +Hidden=Hidden +Resources=Resources +Source=Source +Prefix=Prefix +Before=Before +After=After +IPAddress=IP address +Frequency=Frequency +IM=Instant messaging +NewAttribute=New attribute +AttributeCode=Attribute code +URLPhoto=URL of photo/logo +SetLinkToAnotherThirdParty=Link to another third party +LinkTo=Link to +LinkToProposal=Link to proposal +LinkToOrder=Link to order +LinkToInvoice=Link to invoice +LinkToTemplateInvoice=Link to template invoice +LinkToSupplierOrder=Link to purchase order +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 +ClickToRefresh=Click to refresh +EditWithEditor=Edit with CKEditor +EditWithTextEditor=Edit with Text editor +EditHTMLSource=Edit HTML Source +ObjectDeleted=Object %s deleted +ByCountry=By country +ByTown=By town +ByDate=By date +ByMonthYear=By month/year +ByYear=By year +ByMonth=By month +ByDay=By day +BySalesRepresentative=By sales representative +LinkedToSpecificUsers=Linked to a particular user contact +NoResults=No results +AdminTools=Admin Tools +SystemTools=System tools +ModulesSystemTools=Modules tools +Test=Test +Element=Element +NoPhotoYet=No pictures available yet +Dashboard=Dashboard +MyDashboard=My Dashboard +Deductible=Deductible +from=from +toward=toward +Access=Access +SelectAction=Select action +SelectTargetUser=Select target user/employee +HelpCopyToClipboard=Use Ctrl+C to copy to clipboard +SaveUploadedFileWithMask=Save file on server with name "%s" (otherwise "%s") +OriginFileName=Original filename +SetDemandReason=Set source +SetBankAccount=Define Bank Account +AccountCurrency=Account currency +ViewPrivateNote=View notes +XMoreLines=%s line(s) hidden +ShowMoreLines=Show more/less lines +PublicUrl=Public URL +AddBox=Add box +SelectElementAndClick=Select an element and click %s +PrintFile=Print File %s +ShowTransaction=Show entry on bank account +ShowIntervention=Show intervention +ShowContract=Show contract +GoIntoSetupToChangeLogo=Go to Home - Setup - Company to change logo or go to Home - Setup - Display to hide. +Deny=Deny +Denied=Denied +ListOf=List of %s +ListOfTemplates=List of templates +Gender=Gender +Genderman=Man +Genderwoman=Woman +ViewList=List view +ViewGantt=Gantt view +ViewKanban=Kanban view +Mandatory=Mandatory +Hello=Hello +GoodBye=GoodBye +Sincerely=Sincerely +ConfirmDeleteObject=Are you sure you want to delete this object? +DeleteLine=Delete line +ConfirmDeleteLine=Are you sure you want to delete this line? +NoPDFAvailableForDocGenAmongChecked=No PDF were available for the document generation among checked record +TooManyRecordForMassAction=Too many records selected for mass action. The action is restricted to a list of %s records. +NoRecordSelected=No record selected +MassFilesArea=Area for files built by mass actions +ShowTempMassFilesArea=Show area of files built by mass actions +ConfirmMassDeletion=Bulk Delete confirmation +ConfirmMassDeletionQuestion=Are you sure you want to delete the %s selected record(s)? +RelatedObjects=Related Objects +ClassifyBilled=Classify billed +ClassifyUnbilled=Classify unbilled +Progress=Progress +ProgressShort=Progr. +FrontOffice=Front office +BackOffice=Back office +Submit=Submit +View=View +Export=Export +Exports=Exports +ExportFilteredList=Export filtered list +ExportList=Export list +ExportOptions=Export Options +IncludeDocsAlreadyExported=Include docs already exported +ExportOfPiecesAlreadyExportedIsEnable=Export of pieces already exported is enable +ExportOfPiecesAlreadyExportedIsDisable=Export of pieces already exported is disable +AllExportedMovementsWereRecordedAsExported=All exported movements were recorded as exported +NotAllExportedMovementsCouldBeRecordedAsExported=Not all exported movements could be recorded as exported +Miscellaneous=Miscellaneous +Calendar=Calendar +GroupBy=Group by... +ViewFlatList=View flat list +RemoveString=Remove string '%s' +SomeTranslationAreUncomplete=Some of the languages offered may be only partially translated or may contain errors. Please help to correct your language by registering at https://transifex.com/projects/p/dolibarr/ to add your improvements. +DirectDownloadLink=Direct download link (public/external) +DirectDownloadInternalLink=Direct download link (need to be logged and need permissions) +Download=Download +DownloadDocument=Download document +ActualizeCurrency=Update currency rate +Fiscalyear=Fiscal year +ModuleBuilder=Module and Application Builder +SetMultiCurrencyCode=Set currency +BulkActions=Bulk actions +ClickToShowHelp=Click to show tooltip help +WebSite=Website +WebSites=Websites +WebSiteAccounts=Website accounts +ExpenseReport=Expense report +ExpenseReports=Expense reports +HR=HR +HRAndBank=HR and Bank +AutomaticallyCalculated=Automatically calculated +TitleSetToDraft=Go back to draft +ConfirmSetToDraft=Are you sure you want to go back to Draft status? +ImportId=Import id +Events=Events +EMailTemplates=Email templates +FileNotShared=File not shared to external public +Project=Project +Projects=Projects +LeadOrProject=Lead | Project +LeadsOrProjects=Leads | Projects +Lead=Lead +Leads=Leads +ListOpenLeads=List open leads +ListOpenProjects=List open projects +NewLeadOrProject=New lead or project +Rights=Permissions +LineNb=Line no. +IncotermLabel=Incoterms +TabLetteringCustomer=Customer lettering +TabLetteringSupplier=Vendor lettering +Monday=Monday +Tuesday=Tuesday +Wednesday=Wednesday +Thursday=Thursday +Friday=Friday +Saturday=Saturday +Sunday=Sunday +MondayMin=Mo +TuesdayMin=Tu +WednesdayMin=We +ThursdayMin=Th +FridayMin=Fr +SaturdayMin=Sa +SundayMin=Su +Day1=Monday +Day2=Tuesday +Day3=Wednesday +Day4=Thursday +Day5=Friday +Day6=Saturday +Day0=Sunday +ShortMonday=M +ShortTuesday=T +ShortWednesday=W +ShortThursday=T +ShortFriday=F +ShortSaturday=S +ShortSunday=S +SelectMailModel=Select an email template +SetRef=Set ref +Select2ResultFoundUseArrows=Some results found. Use arrows to select. +Select2NotFound=No result found +Select2Enter=Enter +Select2MoreCharacter=or more character +Select2MoreCharacters=or more characters +Select2MoreCharactersMore=Search syntax:
    | OR (a|b)
    * Any character (a*b)
    ^ Start with (^ab)
    $ End with (ab$)
    +Select2LoadingMoreResults=Loading more results... +Select2SearchInProgress=Search in progress... +SearchIntoThirdparties=Third parties +SearchIntoContacts=Contacts +SearchIntoMembers=Members +SearchIntoUsers=Users +SearchIntoProductsOrServices=Products or services +SearchIntoProjects=Projects +SearchIntoMO=Manufacturing Orders +SearchIntoTasks=Tasks +SearchIntoCustomerInvoices=Customer invoices +SearchIntoSupplierInvoices=Vendor invoices +SearchIntoCustomerOrders=Sales orders +SearchIntoSupplierOrders=Purchase orders +SearchIntoCustomerProposals=Commercial proposals +SearchIntoSupplierProposals=Vendor proposals +SearchIntoInterventions=Interventions +SearchIntoContracts=Contracts +SearchIntoCustomerShipments=Customer shipments +SearchIntoExpenseReports=Expense reports +SearchIntoLeaves=Leave +SearchIntoTickets=Tickets +CommentLink=Comments +NbComments=Number of comments +CommentPage=Comments space +CommentAdded=Comment added +CommentDeleted=Comment deleted +Everybody=Everybody +PayedBy=Paid by +PayedTo=Paid to +Monthly=Monthly +Quarterly=Quarterly +Annual=Annual +Local=Local +Remote=Remote +LocalAndRemote=Local and Remote +KeyboardShortcut=Keyboard shortcut +AssignedTo=Assigned to +Deletedraft=Delete draft +ConfirmMassDraftDeletion=Draft mass delete confirmation +FileSharedViaALink=File shared via a link +SelectAThirdPartyFirst=Select a third party first... +YouAreCurrentlyInSandboxMode=You are currently in the %s "sandbox" mode +Inventory=Inventory +AnalyticCode=Analytic code +TMenuMRP=MRP +ShowMoreInfos=Show More Infos +NoFilesUploadedYet=Please upload a document first +SeePrivateNote=See private note +PaymentInformation=Payment information +ValidFrom=Valid from +ValidUntil=Valid until +NoRecordedUsers=No users +ToClose=To close +ToProcess=To process +ToApprove=To approve +GlobalOpenedElemView=Global view +NoArticlesFoundForTheKeyword=No article found for the keyword '%s' +NoArticlesFoundForTheCategory=No article found for the category +ToAcceptRefuse=To accept | refuse +ContactDefault_agenda=Event +ContactDefault_commande=Order +ContactDefault_contrat=Contract +ContactDefault_facture=Invoice +ContactDefault_fichinter=Intervention +ContactDefault_invoice_supplier=Supplier Invoice +ContactDefault_order_supplier=Purchase Order +ContactDefault_project=Project +ContactDefault_project_task=Task +ContactDefault_propal=Proposal +ContactDefault_supplier_proposal=Supplier Proposal +ContactDefault_ticket=Ticket +ContactAddedAutomatically=Contact added from contact thirdparty roles +More=More +ShowDetails=Show details +CustomReports=Custom reports +StatisticsOn=Statistics on +SelectYourGraphOptionsFirst=Select your graph options to build a graph +Measures=Measures +XAxis=X-Axis +YAxis=Y-Axis +StatusOfRefMustBe=Status of %s must be %s +DeleteFileHeader=Confirm file delete +DeleteFileText=Do you really want delete this file? +ShowOtherLanguages=Show other languages +SwitchInEditModeToAddTranslation=Switch in edit mode to add translations for this language +NotUsedForThisCustomer=Not used for this customer diff --git a/htdocs/langs/zh_HK/margins.lang b/htdocs/langs/zh_HK/margins.lang new file mode 100644 index 00000000000..76ea8ad5c4d --- /dev/null +++ b/htdocs/langs/zh_HK/margins.lang @@ -0,0 +1,45 @@ +# Dolibarr language file - Source file is en_US - marges + +Margin=Margin +Margins=Margins +TotalMargin=Total Margin +MarginOnProducts=Margin / Products +MarginOnServices=Margin / Services +MarginRate=Margin rate +MarkRate=Mark rate +DisplayMarginRates=Display margin rates +DisplayMarkRates=Display mark rates +InputPrice=Input price +margin=Profit margins management +margesSetup=Profit margins management setup +MarginDetails=Margin details +ProductMargins=Product margins +CustomerMargins=Customer margins +SalesRepresentativeMargins=Sales representative margins +ContactOfInvoice=Contact of invoice +UserMargins=User margins +ProductService=Product or Service +AllProducts=All products and services +ChooseProduct/Service=Choose product or service +ForceBuyingPriceIfNull=Force buying/cost price to selling price if not defined +ForceBuyingPriceIfNullDetails=If buying/cost price not defined, and this option "ON", margin will be zero on line (buying/cost price = selling price), otherwise ("OFF"), marge will be equal to suggested default. +MARGIN_METHODE_FOR_DISCOUNT=Margin method for global discounts +UseDiscountAsProduct=As a product +UseDiscountAsService=As a service +UseDiscountOnTotal=On subtotal +MARGIN_METHODE_FOR_DISCOUNT_DETAILS=Defines if a global discount is treated as a product, a service, or only on subtotal for margin calculation. +MARGIN_TYPE=Buying/Cost price suggested by default for margin calculation +MargeType1=Margin on Best vendor price +MargeType2=Margin on Weighted Average Price (WAP) +MargeType3=Margin on Cost Price +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=Cost price +UnitCharges=Unit charges +Charges=Charges +AgentContactType=Commercial agent contact type +AgentContactTypeDetails=Define what contact type (linked on invoices) will be used for margin report per contact/address. Note that reading statistics on a contact is not reliable since in most cases the contact may not be defined explicitely on the invoices. +rateMustBeNumeric=Rate must be a numeric value +markRateShouldBeLesserThan100=Mark rate should be lower than 100 +ShowMarginInfos=Show margin infos +CheckMargins=Margins detail +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/zh_HK/members.lang b/htdocs/langs/zh_HK/members.lang new file mode 100644 index 00000000000..dd0a5bf49e2 --- /dev/null +++ b/htdocs/langs/zh_HK/members.lang @@ -0,0 +1,204 @@ +# Dolibarr language file - Source file is en_US - members +MembersArea=Members area +MemberCard=Member card +SubscriptionCard=Subscription card +Member=Member +Members=Members +ShowMember=Show member card +UserNotLinkedToMember=User not linked to a member +ThirdpartyNotLinkedToMember=Third party not linked to a member +MembersTickets=Members Tickets +FundationMembers=Foundation members +ListOfValidatedPublicMembers=List of validated public members +ErrorThisMemberIsNotPublic=This member is not public +ErrorMemberIsAlreadyLinkedToThisThirdParty=Another member (name: %s, login: %s) is already linked to a third party %s. Remove this link first because a third party can't be linked to only a member (and vice versa). +ErrorUserPermissionAllowsToLinksToItselfOnly=For security reasons, you must be granted permissions to edit all users to be able to link a member to a user that is not yours. +SetLinkToUser=Link to a Dolibarr user +SetLinkToThirdParty=Link to a Dolibarr third party +MembersCards=Members business cards +MembersList=List of members +MembersListToValid=List of draft members (to be validated) +MembersListValid=List of valid members +MembersListUpToDate=List of valid members with up to date subscription +MembersListNotUpToDate=List of valid members with subscription out of date +MembersListResiliated=List of terminated members +MembersListQualified=List of qualified members +MenuMembersToValidate=Draft members +MenuMembersValidated=Validated members +MenuMembersUpToDate=Up to date members +MenuMembersNotUpToDate=Out of date members +MenuMembersResiliated=Terminated members +MembersWithSubscriptionToReceive=Members with subscription to receive +MembersWithSubscriptionToReceiveShort=Subscription to receive +DateSubscription=Subscription date +DateEndSubscription=Subscription end date +EndSubscription=End subscription +SubscriptionId=Subscription id +MemberId=Member id +NewMember=New member +MemberType=Member type +MemberTypeId=Member type id +MemberTypeLabel=Member type label +MembersTypes=Members types +MemberStatusDraft=Draft (needs to be validated) +MemberStatusDraftShort=Draft +MemberStatusActive=Validated (waiting subscription) +MemberStatusActiveShort=Validated +MemberStatusActiveLate=Subscription expired +MemberStatusActiveLateShort=Expired +MemberStatusPaid=Subscription up to date +MemberStatusPaidShort=Up to date +MemberStatusResiliated=Terminated member +MemberStatusResiliatedShort=Terminated +MembersStatusToValid=Draft members +MembersStatusResiliated=Terminated members +MemberStatusNoSubscription=Validated (no subscription needed) +MemberStatusNoSubscriptionShort=Validated +SubscriptionNotNeeded=No subscription needed +NewCotisation=New contribution +PaymentSubscription=New contribution payment +SubscriptionEndDate=Subscription's end date +MembersTypeSetup=Members type setup +MemberTypeModified=Member type modified +DeleteAMemberType=Delete a member type +ConfirmDeleteMemberType=Are you sure you want to delete this member type? +MemberTypeDeleted=Member type deleted +MemberTypeCanNotBeDeleted=Member type can not be deleted +NewSubscription=New subscription +NewSubscriptionDesc=This form allows you to record your subscription as a new member of the foundation. If you want to renew your subscription (if already a member), please contact foundation board instead by email %s. +Subscription=Subscription +Subscriptions=Subscriptions +SubscriptionLate=Late +SubscriptionNotReceived=Subscription never received +ListOfSubscriptions=List of subscriptions +SendCardByMail=Send card by email +AddMember=Create member +NoTypeDefinedGoToSetup=No member types defined. Go to menu "Members types" +NewMemberType=New member type +WelcomeEMail=Welcome email +SubscriptionRequired=Subscription required +DeleteType=Delete +VoteAllowed=Vote allowed +Physical=Physical +Moral=Moral +MorPhy=Moral/Physical +Reenable=Reenable +ResiliateMember=Terminate a member +ConfirmResiliateMember=Are you sure you want to terminate this member? +DeleteMember=Delete a member +ConfirmDeleteMember=Are you sure you want to delete this member (Deleting a member will delete all his subscriptions)? +DeleteSubscription=Delete a subscription +ConfirmDeleteSubscription=Are you sure you want to delete this subscription? +Filehtpasswd=htpasswd file +ValidateMember=Validate a member +ConfirmValidateMember=Are you sure you want to validate this member? +FollowingLinksArePublic=The following links are open pages not protected by any Dolibarr permission. They are not formatted pages, provided as example to show how to list members database. +PublicMemberList=Public member list +BlankSubscriptionForm=Public self-subscription form +BlankSubscriptionFormDesc=Dolibarr can provide you a public URL/website to allow external visitors to ask to subscribe to the foundation. If an online payment module is enabled, a payment form may also be automatically provided. +EnablePublicSubscriptionForm=Enable the public website with self-subscription form +ForceMemberType=Force the member type +ExportDataset_member_1=Members and subscriptions +ImportDataset_member_1=Members +LastMembersModified=Latest %s modified members +LastSubscriptionsModified=Latest %s modified subscriptions +String=String +Text=Text +Int=Int +DateAndTime=Date and time +PublicMemberCard=Member public card +SubscriptionNotRecorded=Subscription not recorded +AddSubscription=Create subscription +ShowSubscription=Show subscription +# Label of email templates +SendingAnEMailToMember=Sending information email to member +SendingEmailOnAutoSubscription=Sending email on auto registration +SendingEmailOnMemberValidation=Sending email on new member validation +SendingEmailOnNewSubscription=Sending email on new subscription +SendingReminderForExpiredSubscription=Sending reminder for expired subscriptions +SendingEmailOnCancelation=Sending email on cancelation +# Topic of email templates +YourMembershipRequestWasReceived=Your membership was received. +YourMembershipWasValidated=Your membership was validated +YourSubscriptionWasRecorded=Your new subscription was recorded +SubscriptionReminderEmail=Subscription reminder +YourMembershipWasCanceled=Your membership was canceled +CardContent=Content of your member card +# Text of email templates +ThisIsContentOfYourMembershipRequestWasReceived=We want to let you know that your membership request was received.

    +ThisIsContentOfYourMembershipWasValidated=We want to let you know that your membership was validated with the following information:

    +ThisIsContentOfYourSubscriptionWasRecorded=We want to let you know that your new subscription was recorded.

    +ThisIsContentOfSubscriptionReminderEmail=We want to let you know that your subscription is about to expire or has already expired (__MEMBER_LAST_SUBSCRIPTION_DATE_END__). We hope you will renew it.

    +ThisIsContentOfYourCard=This is a summary of the information we have about you. Please contact us if anything is incorrect.

    +DescADHERENT_AUTOREGISTER_NOTIF_MAIL_SUBJECT=Subject of the notification email received in case of auto-inscription of a guest +DescADHERENT_AUTOREGISTER_NOTIF_MAIL=Content of the notification email received in case of auto-inscription of a guest +DescADHERENT_EMAIL_TEMPLATE_AUTOREGISTER=Email template to use to send email to a member on member autosubscription +DescADHERENT_EMAIL_TEMPLATE_MEMBER_VALIDATION=Email template to use to send email to a member on member validation +DescADHERENT_EMAIL_TEMPLATE_SUBSCRIPTION=Email template to use to send email to a member on new subscription recording +DescADHERENT_EMAIL_TEMPLATE_REMIND_EXPIRATION=Email template to use to send email reminder when subscription is about to expire +DescADHERENT_EMAIL_TEMPLATE_CANCELATION=Email template to use to send email to a member on member cancelation +DescADHERENT_MAIL_FROM=Sender Email for automatic emails +DescADHERENT_ETIQUETTE_TYPE=Format of labels page +DescADHERENT_ETIQUETTE_TEXT=Text printed on member address sheets +DescADHERENT_CARD_TYPE=Format of cards page +DescADHERENT_CARD_HEADER_TEXT=Text printed on top of member cards +DescADHERENT_CARD_TEXT=Text printed on member cards (align on left) +DescADHERENT_CARD_TEXT_RIGHT=Text printed on member cards (align on right) +DescADHERENT_CARD_FOOTER_TEXT=Text printed on bottom of member cards +ShowTypeCard=Show type '%s' +HTPasswordExport=htpassword file generation +NoThirdPartyAssociatedToMember=No third party associated to this member +MembersAndSubscriptions= Members and Subscriptions +MoreActions=Complementary action on recording +MoreActionsOnSubscription=Complementary action, suggested by default when recording a subscription +MoreActionBankDirect=Create a direct entry on bank account +MoreActionBankViaInvoice=Create an invoice, and a payment on bank account +MoreActionInvoiceOnly=Create an invoice with no payment +LinkToGeneratedPages=Generate visit cards +LinkToGeneratedPagesDesc=This screen allows you to generate PDF files with business cards for all your members or a particular member. +DocForAllMembersCards=Generate business cards for all members +DocForOneMemberCards=Generate business cards for a particular member +DocForLabels=Generate address sheets +SubscriptionPayment=Subscription payment +LastSubscriptionDate=Date of latest subscription payment +LastSubscriptionAmount=Amount of latest subscription +MembersStatisticsByCountries=Members statistics by country +MembersStatisticsByState=Members statistics by state/province +MembersStatisticsByTown=Members statistics by town +MembersStatisticsByRegion=Members statistics by region +NbOfMembers=Number of members +NoValidatedMemberYet=No validated members found +MembersByCountryDesc=This screen show you statistics on members by countries. Graphic depends however on Google online graph service and is available only if an internet connection is is working. +MembersByStateDesc=This screen show you statistics on members by state/provinces/canton. +MembersByTownDesc=This screen show you statistics on members by town. +MembersStatisticsDesc=Choose statistics you want to read... +MenuMembersStats=Statistics +LastMemberDate=Latest member date +LatestSubscriptionDate=Latest subscription date +MemberNature=Nature of member +Public=Information are public +NewMemberbyWeb=New member added. Awaiting approval +NewMemberForm=New member form +SubscriptionsStatistics=Statistics on subscriptions +NbOfSubscriptions=Number of subscriptions +AmountOfSubscriptions=Amount of subscriptions +TurnoverOrBudget=Turnover (for a company) or Budget (for a foundation) +DefaultAmount=Default amount of subscription +CanEditAmount=Visitor can choose/edit amount of its subscription +MEMBER_NEWFORM_PAYONLINE=Jump on integrated online payment page +ByProperties=By nature +MembersStatisticsByProperties=Members statistics by nature +MembersByNature=This screen show you statistics on members by nature. +MembersByRegion=This screen show you statistics on members by region. +VATToUseForSubscriptions=VAT rate to use for subscriptions +NoVatOnSubscription=No VAT for subscriptions +ADHERENT_PRODUCT_ID_FOR_SUBSCRIPTIONS=Product used for subscription line into invoice: %s +NameOrCompany=Name or company +SubscriptionRecorded=Subscription recorded +NoEmailSentToMember=No email sent to member +EmailSentToMember=Email sent to member at %s +SendReminderForExpiredSubscriptionTitle=Send reminder by email for expired subscription +SendReminderForExpiredSubscription=Send reminder by email to members when subscription is about to expire (parameter is number of days before end of subscription to send the remind. It can be a list of days separated by a semicolon, for example '10;5;0;-5') +MembershipPaid=Membership paid for current period (until %s) +YouMayFindYourInvoiceInThisEmail=You may find your invoice attached to this email +XMembersClosed=%s member(s) closed diff --git a/htdocs/langs/zh_HK/modulebuilder.lang b/htdocs/langs/zh_HK/modulebuilder.lang new file mode 100644 index 00000000000..135ac1ae9ec --- /dev/null +++ b/htdocs/langs/zh_HK/modulebuilder.lang @@ -0,0 +1,141 @@ +# Dolibarr language file - Source file is en_US - loan +ModuleBuilderDesc=This tool must be used only by experienced users or developers. It provides utilities to build or edit your own module. Documentation for alternative manual development is here. +EnterNameOfModuleDesc=Enter name of the module/application to create with no spaces. Use uppercase to separate words (For example: MyModule, EcommerceForShop, SyncWithMySystem...) +EnterNameOfObjectDesc=Enter name of the object to create with no spaces. Use uppercase to separate words (For example: MyObject, Student, Teacher...). The CRUD class file, but also API file, pages to list/add/edit/delete object and SQL files will be generated. +ModuleBuilderDesc2=Path where modules are generated/edited (first directory for external modules defined into %s): %s +ModuleBuilderDesc3=Generated/editable modules found: %s +ModuleBuilderDesc4=A module is detected as 'editable' when the file %s exists in root of module directory +NewModule=New module +NewObjectInModulebuilder=New object +ModuleKey=Module key +ObjectKey=Object key +ModuleInitialized=Module initialized +FilesForObjectInitialized=Files for new object '%s' initialized +FilesForObjectUpdated=Files for object '%s' updated (.sql files and .class.php file) +ModuleBuilderDescdescription=Enter here all general information that describe your module. +ModuleBuilderDescspecifications=You can enter here a detailed description of the specifications of your module that is not already structured into other tabs. So you have within easy reach all the rules to develop. Also this text content will be included into the generated documentation (see last tab). You can use Markdown format, but it is recommended to use Asciidoc format (comparison between .md and .asciidoc: http://asciidoctor.org/docs/user-manual/#compared-to-markdown). +ModuleBuilderDescobjects=Define here the objects you want to manage with your module. A CRUD DAO class, SQL files, page to list record of objects, to create/edit/view a record and an API will be generated. +ModuleBuilderDescmenus=This tab is dedicated to define menu entries provided by your module. +ModuleBuilderDescpermissions=This tab is dedicated to define the new permissions you want to provide with your module. +ModuleBuilderDesctriggers=This is the view of triggers provided by your module. To include code executed when a triggered business event is launched, just edit this file. +ModuleBuilderDeschooks=This tab is dedicated to hooks. +ModuleBuilderDescwidgets=This tab is dedicated to manage/build widgets. +ModuleBuilderDescbuildpackage=You can generate here a "ready to distribute" package file (a normalized .zip file) of your module and a "ready to distribute" documentation file. Just click on button to build the package or documentation file. +EnterNameOfModuleToDeleteDesc=You can delete your module. WARNING: All coding files of module (generated or created manually) AND structured data and documentation will be deleted! +EnterNameOfObjectToDeleteDesc=You can delete an object. WARNING: All coding files (generated or created manually) related to object will be deleted! +DangerZone=Danger zone +BuildPackage=Build package +BuildPackageDesc=You can generate a zip package of your application so your are ready to distribute it on any Dolibarr. You can also distribute it or sell it on marketplace like DoliStore.com. +BuildDocumentation=Build documentation +ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: +ModuleIsLive=This module has been activated. Any change may break a current live feature. +DescriptionLong=Long description +EditorName=Name of editor +EditorUrl=URL of editor +DescriptorFile=Descriptor file of module +ClassFile=File for PHP DAO CRUD class +ApiClassFile=File for PHP API class +PageForList=PHP page for list of record +PageForCreateEditView=PHP page to create/edit/view a record +PageForAgendaTab=PHP page for event tab +PageForDocumentTab=PHP page for document tab +PageForNoteTab=PHP page for note tab +PathToModulePackage=Path to zip of module/application package +PathToModuleDocumentation=Path to file of module/application documentation (%s) +SpaceOrSpecialCharAreNotAllowed=Spaces or special characters are not allowed. +FileNotYetGenerated=File not yet generated +RegenerateClassAndSql=Force update of .class and .sql files +RegenerateMissingFiles=Generate missing files +SpecificationFile=File of documentation +LanguageFile=File for language +ObjectProperties=Object Properties +ConfirmDeleteProperty=Are you sure you want to delete the property %s? This will change code in PHP class but also remove column from table definition of object. +NotNull=Not NULL +NotNullDesc=1=Set database to NOT NULL. -1=Allow null values and force value to NULL if empty ('' or 0). +SearchAll=Used for 'search all' +DatabaseIndex=Database index +FileAlreadyExists=File %s already exists +TriggersFile=File for triggers code +HooksFile=File for hooks code +ArrayOfKeyValues=Array of key-val +ArrayOfKeyValuesDesc=Array of keys and values if field is a combo list with fixed values +WidgetFile=Widget file +CSSFile=CSS file +JSFile=Javascript file +ReadmeFile=Readme file +ChangeLog=ChangeLog file +TestClassFile=File for PHP Unit Test class +SqlFile=Sql file +PageForLib=File for the common PHP library +PageForObjLib=File for the PHP library dedicated to object +SqlFileExtraFields=Sql file for complementary attributes +SqlFileKey=Sql file for keys +SqlFileKeyExtraFields=Sql file for keys of complementary attributes +AnObjectAlreadyExistWithThisNameAndDiffCase=An object already exists with this name and a different case +UseAsciiDocFormat=You can use Markdown format, but it is recommended to use Asciidoc format (omparison between .md and .asciidoc: http://asciidoctor.org/docs/user-manual/#compared-to-markdown) +IsAMeasure=Is a measure +DirScanned=Directory scanned +NoTrigger=No trigger +NoWidget=No widget +GoToApiExplorer=Go to API explorer +ListOfMenusEntries=List of menu entries +ListOfDictionariesEntries=List of dictionaries entries +ListOfPermissionsDefined=List of defined permissions +SeeExamples=See examples here +EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty +DisplayOnPdf=Display on PDF +IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) +SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) +SpecDefDesc=Enter here all documentation you want to provide with your module that is not already defined by other tabs. You can use .md or better, the rich .asciidoc syntax. +LanguageDefDesc=Enter in this files, all the key and the translation for each language file. +MenusDefDesc=Define here the menus provided by your module +DictionariesDefDesc=Define here the dictionaries provided by your module +PermissionsDefDesc=Define here the new permissions provided by your module +MenusDefDescTooltip=The menus provided by your module/application are defined into the array $this->menus into the module descriptor file. You can edit manually this file or use the embedded editor.

    Note: Once defined (and module re-activated), menus are also visible into the menu editor available to administrator users on %s. +DictionariesDefDescTooltip=The dictionaries provided by your module/application are defined into the array $this->dictionaries into the module descriptor file. You can edit manually this file or use the embedded editor.

    Note: Once defined (and module re-activated), dictionaries are also visible into the setup area to administrator users on %s. +PermissionsDefDescTooltip=The permissions provided by your module/application are defined into the array $this->rights into the module descriptor file. You can edit manually this file or use the embedded editor.

    Note: Once defined (and module re-activated), permissions are visible into the default permissions setup %s. +HooksDefDesc=Define in the module_parts['hooks'] property, in the module descriptor, the context of hooks you want to manage (list of contexts can be found by a search on 'initHooks(' in core code).
    Edit the hook file to add code of your hooked functions (hookable functions can be found by a search on 'executeHooks' in core code). +TriggerDefDesc=Define in the trigger file the code you want to execute for each business event executed. +SeeIDsInUse=See IDs in use in your installation +SeeReservedIDsRangeHere=See range of reserved IDs +ToolkitForDevelopers=Toolkit for Dolibarr developers +TryToUseTheModuleBuilder=If you have knowledge of SQL and PHP, you may use the native module builder wizard.
    Enable the module %s and use the wizard by clicking the on the top right menu.
    Warning: This is an advanced developer feature, do not experiment on your production site! +SeeTopRightMenu=See on the top right menu +AddLanguageFile=Add language file +YouCanUseTranslationKey=You can use here a key that is the translation key found into language file (see tab "Languages") +DropTableIfEmpty=(Delete table if empty) +TableDoesNotExists=The table %s does not exists +TableDropped=Table %s deleted +InitStructureFromExistingTable=Build the structure array string of an existing table +UseAboutPage=Disable the about page +UseDocFolder=Disable the documentation folder +UseSpecificReadme=Use a specific ReadMe +ContentOfREADMECustomized=Note: The content of the README.md file has been replaced with the specific value defined into setup of ModuleBuilder. +RealPathOfModule=Real path of module +ContentCantBeEmpty=Content of file can't be empty +WidgetDesc=You can generate and edit here the widgets that will be embedded with your module. +CSSDesc=You can generate and edit here a file with personalized CSS embedded with your module. +JSDesc=You can generate and edit here a file with personalized Javascript embedded with your module. +CLIDesc=You can generate here some command line scripts you want to provide with your module. +CLIFile=CLI File +NoCLIFile=No CLI files +UseSpecificEditorName = Use a specific editor name +UseSpecificEditorURL = Use a specific editor URL +UseSpecificFamily = Use a specific family +UseSpecificAuthor = Use a specific author +UseSpecificVersion = Use a specific initial version +ModuleMustBeEnabled=The module/application must be enabled first +IncludeRefGeneration=The reference of object must be generated automatically +IncludeRefGenerationHelp=Check this if you want to include code to manage the generation automatically of the reference +IncludeDocGeneration=I want to generate some documents from the object +IncludeDocGenerationHelp=If you check this, some code will be generated to add a "Generate document" box on the record. +ShowOnCombobox=Show value into combobox +KeyForTooltip=Key for tooltip +CSSClass=CSS Class +NotEditable=Not editable +ForeignKey=Foreign key +TypeOfFieldsHelp=Type of fields:
    varchar(99), double(24,8), real, text, html, datetime, timestamp, integer, integer:ClassName:relativepath/to/classfile.class.php[:1[:filter]] ('1' means we add a + button after the combo to create the record, 'filter' can be 'status=1 AND fk_user = __USER_ID AND entity IN (__SHARED_ENTITIES__)' for example) +AsciiToHtmlConverter=Ascii to HTML converter +AsciiToPdfConverter=Ascii to PDF converter diff --git a/htdocs/langs/zh_HK/mrp.lang b/htdocs/langs/zh_HK/mrp.lang new file mode 100644 index 00000000000..d3c4d3253c6 --- /dev/null +++ b/htdocs/langs/zh_HK/mrp.lang @@ -0,0 +1,76 @@ +Mrp=Manufacturing Orders +MO=Manufacturing Order +MRPDescription=Module to manage production and Manufacturing Orders (MO). +MRPArea=MRP Area +MrpSetupPage=Setup of module MRP +MenuBOM=Bills of material +LatestBOMModified=Latest %s Bills of materials modified +LatestMOModified=Latest %s Manufacturing Orders modified +Bom=Bills of Material +BillOfMaterials=Bill of Material +BOMsSetup=Setup of module BOM +ListOfBOMs=List of bills of material - BOM +ListOfManufacturingOrders=List of Manufacturing Orders +NewBOM=New bill of material +ProductBOMHelp=Product to create with this BOM.
    Note: Products with the property 'Nature of product' = 'Raw material' are not visible into this list. +BOMsNumberingModules=BOM numbering templates +BOMsModelModule=BOM document templates +MOsNumberingModules=MO numbering templates +MOsModelModule=MO document templates +FreeLegalTextOnBOMs=Free text on document of BOM +WatermarkOnDraftBOMs=Watermark on draft BOM +FreeLegalTextOnMOs=Free text on document of MO +WatermarkOnDraftMOs=Watermark on draft MO +ConfirmCloneBillOfMaterials=Are you sure you want to clone the bill of material %s ? +ConfirmCloneMo=Are you sure you want to clone the Manufacturing Order %s ? +ManufacturingEfficiency=Manufacturing efficiency +ConsumptionEfficiency=Consumption efficiency +ValueOfMeansLoss=Value of 0.95 means an average of 5%% of loss during the production +ValueOfMeansLossForProductProduced=Value of 0.95 means an average of 5%% of loss of produced product +DeleteBillOfMaterials=Delete Bill Of Materials +DeleteMo=Delete Manufacturing Order +ConfirmDeleteBillOfMaterials=Are you sure you want to delete this Bill Of Material? +ConfirmDeleteMo=Are you sure you want to delete this Bill Of Material? +MenuMRP=Manufacturing Orders +NewMO=New Manufacturing Order +QtyToProduce=Qty to produce +DateStartPlannedMo=Date start planned +DateEndPlannedMo=Date end planned +KeepEmptyForAsap=Empty means 'As Soon As Possible' +EstimatedDuration=Estimated duration +EstimatedDurationDesc=Estimated duration to manufacture this product using this BOM +ConfirmValidateBom=Are you sure you want to validate the BOM with the reference %s (you will be able to use it to build new Manufacturing Orders) +ConfirmCloseBom=Are you sure you want to cancel this BOM (you won't be able to use it to build new Manufacturing Orders anymore) ? +ConfirmReopenBom=Are you sure you want to re-open this BOM (you will be able to use it to build new Manufacturing Orders) +StatusMOProduced=Produced +QtyFrozen=Frozen Qty +QuantityFrozen=Frozen Quantity +QuantityConsumedInvariable=When this flag is set, the quantity consumed is always the value defined and is not relative to the quantity produced. +DisableStockChange=Stock change disabled +DisableStockChangeHelp=When this flag is set, there is no stock change on this product, whatever is the quantity consumed +BomAndBomLines=Bills Of Material and lines +BOMLine=Line of BOM +WarehouseForProduction=Warehouse for production +CreateMO=Create MO +ToConsume=To consume +ToProduce=To produce +QtyAlreadyConsumed=Qty already consumed +QtyAlreadyProduced=Qty already produced +QtyRequiredIfNoLoss=Qty required if there is no loss (Manufacturing efficiency is 100%%) +ConsumeOrProduce=Consume or Produce +ConsumeAndProduceAll=Consume and Produce All +Manufactured=Manufactured +TheProductXIsAlreadyTheProductToProduce=The product to add is already the product to produce. +ForAQuantityOf=For a quantity to produce of %s +ConfirmValidateMo=Are you sure you want to validate this Manufacturing Order? +ConfirmProductionDesc=By clicking on '%s', you will validate the consumption and/or production for the quantities set. This will also update the stock and record stock movements. +ProductionForRef=Production of %s +AutoCloseMO=Close automatically the Manufacturing Order if quantities to consume and to produce are reached +NoStockChangeOnServices=No stock change on services +ProductQtyToConsumeByMO=Product quantity still to consume by open MO +ProductQtyToProduceByMO=Product quentity still to produce by open MO +AddNewConsumeLines=Add new line to consume +ProductsToConsume=Products to consume +ProductsToProduce=Products to produce +UnitCost=Unit cost +TotalCost=Total cost diff --git a/htdocs/langs/zh_HK/multicurrency.lang b/htdocs/langs/zh_HK/multicurrency.lang new file mode 100644 index 00000000000..bfcbd11fb7c --- /dev/null +++ b/htdocs/langs/zh_HK/multicurrency.lang @@ -0,0 +1,22 @@ +# Dolibarr language file - Source file is en_US - multicurrency +MultiCurrency=Multi currency +ErrorAddRateFail=Error in added rate +ErrorAddCurrencyFail=Error in added currency +ErrorDeleteCurrencyFail=Error delete fail +multicurrency_syncronize_error=Synchronization error: %s +MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE=Use the date of the document to find the currency rate, instead of using the latest known rate +multicurrency_useOriginTx=When an object is created from another, keep the original rate from the source object (otherwise use the latest known rate) +CurrencyLayerAccount=CurrencyLayer API +CurrencyLayerAccount_help_to_synchronize=You must create an account on website %s to use this functionality.
    Get your API key.
    If you use a free account, you can't change the source currency (USD by default).
    If your main currency is not USD, the application will automatically recalculate it.

    You are limited to 1000 synchronizations per month. +multicurrency_appId=API key +multicurrency_appCurrencySource=Source currency +multicurrency_alternateCurrencySource=Alternate source currency +CurrenciesUsed=Currencies used +CurrenciesUsed_help_to_add=Add the different currencies and rates you need to use on your proposals, orders etc. +rate=rate +MulticurrencyReceived=Received, original currency +MulticurrencyRemainderToTake=Remaining amount, original currency +MulticurrencyPaymentAmount=Payment amount, original currency +AmountToOthercurrency=Amount To (in currency of receiving account) +CurrencyRateSyncSucceed=Currency rate synchronization done successfuly +MULTICURRENCY_USE_CURRENCY_ON_DOCUMENT=Use the currency of the document for online payments diff --git a/htdocs/langs/zh_HK/oauth.lang b/htdocs/langs/zh_HK/oauth.lang new file mode 100644 index 00000000000..075ff49a895 --- /dev/null +++ b/htdocs/langs/zh_HK/oauth.lang @@ -0,0 +1,32 @@ +# 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 credentials with your OAuth provider: +ListOfSupportedOauthProviders=Enter the credentials provided by your OAuth2 provider. Only supported OAuth2 providers are listedd here. These services 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 to 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 to this page then "Register a new application" to create OAuth credentials +OAUTH_STRIPE_TEST_NAME=OAuth Stripe Test +OAUTH_STRIPE_LIVE_NAME=OAuth Stripe Live diff --git a/htdocs/langs/zh_HK/opensurvey.lang b/htdocs/langs/zh_HK/opensurvey.lang new file mode 100644 index 00000000000..7d26151fa16 --- /dev/null +++ b/htdocs/langs/zh_HK/opensurvey.lang @@ -0,0 +1,61 @@ +# Dolibarr language file - Source file is en_US - opensurvey +Survey=Poll +Surveys=Polls +OrganizeYourMeetingEasily=Organize your meetings and polls easily. First select the type of poll... +NewSurvey=New poll +OpenSurveyArea=Polls area +AddACommentForPoll=You can add a comment into poll... +AddComment=Add comment +CreatePoll=Create poll +PollTitle=Poll title +ToReceiveEMailForEachVote=Receive an email for each vote +TypeDate=Type date +TypeClassic=Type standard +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=Remove all days +CopyHoursOfFirstDay=Copy hours of first day +RemoveAllHours=Remove all hours +SelectedDays=Selected days +TheBestChoice=The best choice currently is +TheBestChoices=The best choices currently are +with=with +OpenSurveyHowTo=If you agree to vote in this poll, you have to give your name, choose the values that fit best for you and validate with the plus button at the end of the line. +CommentsOfVoters=Comments of voters +ConfirmRemovalOfPoll=Are you sure you want to remove this poll (and all votes) +RemovePoll=Remove poll +UrlForSurvey=URL to communicate to get a direct access to poll +PollOnChoice=You are creating a poll to make a multi-choice for a poll. First enter all possible choices for your poll: +CreateSurveyDate=Create a date poll +CreateSurveyStandard=Create a standard poll +CheckBox=Simple checkbox +YesNoList=List (empty/yes/no) +PourContreList=List (empty/for/against) +AddNewColumn=Add new column +TitleChoice=Choice label +ExportSpreadsheet=Export result spreadsheet +ExpireDate=Limit date +NbOfSurveys=Number of polls +NbOfVoters=No. of voters +SurveyResults=Results +PollAdminDesc=You are allowed to change all vote lines of this poll with button "Edit". You can, as well, remove a column or a line with %s. You can also add a new column with %s. +5MoreChoices=5 more choices +Against=Against +YouAreInivitedToVote=You are invited to vote for this poll +VoteNameAlreadyExists=This name was already used for this poll +AddADate=Add a date +AddStartHour=Add start hour +AddEndHour=Add end hour +votes=vote(s) +NoCommentYet=No comments have been posted for this poll yet +CanComment=Voters can comment in the poll +CanSeeOthersVote=Voters can see other people's vote +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=Back to current month +ErrorOpenSurveyFillFirstSection=You haven't filled the first section of the poll creation +ErrorOpenSurveyOneChoice=Enter at least one choice +ErrorInsertingComment=There was an error while inserting your comment +MoreChoices=Enter more choices for the voters +SurveyExpiredInfo=The poll has been closed or voting delay has expired. +EmailSomeoneVoted=%s has filled a line.\nYou can find your poll at the link: \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 diff --git a/htdocs/langs/zh_HK/orders.lang b/htdocs/langs/zh_HK/orders.lang new file mode 100644 index 00000000000..ad91e1eef63 --- /dev/null +++ b/htdocs/langs/zh_HK/orders.lang @@ -0,0 +1,189 @@ +# Dolibarr language file - Source file is en_US - orders +OrdersArea=Customers orders area +SuppliersOrdersArea=Purchase orders area +OrderCard=Order card +OrderId=Order Id +Order=Order +PdfOrderTitle=Order +Orders=Orders +OrderLine=Order line +OrderDate=Order date +OrderDateShort=Order date +OrderToProcess=Order to process +NewOrder=New order +NewOrderSupplier=New Purchase Order +ToOrder=Make order +MakeOrder=Make order +SupplierOrder=Purchase order +SuppliersOrders=Purchase orders +SuppliersOrdersRunning=Current purchase orders +CustomerOrder=Sales Order +CustomersOrders=Sales Orders +CustomersOrdersRunning=Current sales orders +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 +SuppliersOrdersAwaitingReception=Purchase orders awaiting reception +AwaitingReception=Awaiting reception +StatusOrderCanceledShort=Canceled +StatusOrderDraftShort=Draft +StatusOrderValidatedShort=Validated +StatusOrderSentShort=In process +StatusOrderSent=Shipment in process +StatusOrderOnProcessShort=Ordered +StatusOrderProcessedShort=Processed +StatusOrderDelivered=Delivered +StatusOrderDeliveredShort=Delivered +StatusOrderToBillShort=Delivered +StatusOrderApprovedShort=Approved +StatusOrderRefusedShort=Refused +StatusOrderToProcessShort=To process +StatusOrderReceivedPartiallyShort=Partially received +StatusOrderReceivedAllShort=Products received +StatusOrderCanceled=Canceled +StatusOrderDraft=Draft (needs to be validated) +StatusOrderValidated=Validated +StatusOrderOnProcess=Ordered - Standby reception +StatusOrderOnProcessWithValidation=Ordered - Standby reception or validation +StatusOrderProcessed=Processed +StatusOrderToBill=Delivered +StatusOrderApproved=Approved +StatusOrderRefused=Refused +StatusOrderReceivedPartially=Partially received +StatusOrderReceivedAll=All products received +ShippingExist=A shipment exists +QtyOrdered=Qty ordered +ProductQtyInDraft=Product quantity into draft orders +ProductQtyInDraftOrWaitingApproved=Product quantity into draft or approved orders, not yet ordered +MenuOrdersToBill=Orders delivered +MenuOrdersToBill2=Billable orders +ShipProduct=Ship product +CreateOrder=Create Order +RefuseOrder=Refuse order +ApproveOrder=Approve order +Approve2Order=Approve order (second level) +ValidateOrder=Validate order +UnvalidateOrder=Unvalidate order +DeleteOrder=Delete order +CancelOrder=Cancel order +OrderReopened= Order %s re-open +AddOrder=Create order +AddPurchaseOrder=Create purchase order +AddToDraftOrders=Add to draft order +ShowOrder=Show order +OrdersOpened=Orders to process +NoDraftOrders=No draft orders +NoOrder=No order +NoSupplierOrder=No purchase order +LastOrders=Latest %s sales orders +LastCustomerOrders=Latest %s sales orders +LastSupplierOrders=Latest %s purchase orders +LastModifiedOrders=Latest %s modified orders +AllOrders=All orders +NbOfOrders=Number of orders +OrdersStatistics=Order's statistics +OrdersStatisticsSuppliers=Purchase order statistics +NumberOfOrdersByMonth=Number of orders by month +AmountOfOrdersByMonthHT=Amount of orders by month (excl. tax) +ListOfOrders=List of orders +CloseOrder=Close order +ConfirmCloseOrder=Are you sure you want to set this order to delivered? Once an order is delivered, it can be set to billed. +ConfirmDeleteOrder=Are you sure you want to delete this order? +ConfirmValidateOrder=Are you sure you want to validate this order under name %s? +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=Generate invoice +ClassifyShipped=Classify delivered +DraftOrders=Draft orders +DraftSuppliersOrders=Draft purchase orders +OnProcessOrders=In process orders +RefOrder=Ref. order +RefCustomerOrder=Ref. order for customer +RefOrderSupplier=Ref. order for vendor +RefOrderSupplierShort=Ref. order vendor +SendOrderByMail=Send order by mail +ActionsOnOrder=Events on order +NoArticleOfTypeProduct=No article of type 'product' so no shippable article for this order +OrderMode=Order method +AuthorRequest=Request author +UserWithApproveOrderGrant=Users granted with "approve orders" permission. +PaymentOrderRef=Payment of order %s +ConfirmCloneOrder=Are you sure you want to clone this order %s? +DispatchSupplierOrder=Receiving purchase order %s +FirstApprovalAlreadyDone=First approval already done +SecondApprovalAlreadyDone=Second approval already done +SupplierOrderReceivedInDolibarr=Purchase Order %s received %s +SupplierOrderSubmitedInDolibarr=Purchase Order %s submitted +SupplierOrderClassifiedBilled=Purchase Order %s set billed +OtherOrders=Other orders +##### Types de contacts ##### +TypeContact_commande_internal_SALESREPFOLL=Representative following-up sales order +TypeContact_commande_internal_SHIPPING=Representative following-up shipping +TypeContact_commande_external_BILLING=Customer invoice contact +TypeContact_commande_external_SHIPPING=Customer shipping contact +TypeContact_commande_external_CUSTOMER=Customer contact following-up order +TypeContact_order_supplier_internal_SALESREPFOLL=Representative following-up purchase order +TypeContact_order_supplier_internal_SHIPPING=Representative following-up shipping +TypeContact_order_supplier_external_BILLING=Vendor invoice contact +TypeContact_order_supplier_external_SHIPPING=Vendor shipping contact +TypeContact_order_supplier_external_CUSTOMER=Vendor contact following-up order +Error_COMMANDE_SUPPLIER_ADDON_NotDefined=Constant COMMANDE_SUPPLIER_ADDON not defined +Error_COMMANDE_ADDON_NotDefined=Constant COMMANDE_ADDON not defined +Error_OrderNotChecked=No orders to invoice selected +# Order modes (how we receive order). Not the "why" are keys stored into dict.lang +OrderByMail=Mail +OrderByFax=Fax +OrderByEMail=Email +OrderByWWW=Online +OrderByPhone=Phone +# Documents models +PDFEinsteinDescription=A complete order model (old implementation of Eratosthene template) +PDFEratostheneDescription=A complete order model +PDFEdisonDescription=A simple order model +PDFProformaDescription=A complete Proforma invoice template +CreateInvoiceForThisCustomer=Bill orders +CreateInvoiceForThisSupplier=Bill orders +NoOrdersToInvoice=No orders billable +CloseProcessedOrdersAutomatically=Classify "Processed" all selected orders. +OrderCreation=Order creation +Ordered=Ordered +OrderCreated=Your orders have been created +OrderFail=An error happened during your orders creation +CreateOrders=Create orders +ToBillSeveralOrderSelectCustomer=To create an invoice for several orders, click first onto customer, then choose "%s". +OptionToSetOrderBilledNotEnabled=Option from module Workflow, to set order to 'Billed' automatically when invoice is validated, is not enabled, so you will have to set the status of orders to 'Billed' manually after the invoice has been generated. +IfValidateInvoiceIsNoOrderStayUnbilled=If invoice validation is 'No', the order will remain to status 'Unbilled' until the invoice is validated. +CloseReceivedSupplierOrdersAutomatically=Close order to status "%s" automatically if all products are received. +SetShippingMode=Set shipping mode +WithReceptionFinished=With reception finished +#### supplier orders status +StatusSupplierOrderCanceledShort=Canceled +StatusSupplierOrderDraftShort=Draft +StatusSupplierOrderValidatedShort=Validated +StatusSupplierOrderSentShort=In process +StatusSupplierOrderSent=Shipment in process +StatusSupplierOrderOnProcessShort=Ordered +StatusSupplierOrderProcessedShort=Processed +StatusSupplierOrderDelivered=Delivered +StatusSupplierOrderDeliveredShort=Delivered +StatusSupplierOrderToBillShort=Delivered +StatusSupplierOrderApprovedShort=Approved +StatusSupplierOrderRefusedShort=Refused +StatusSupplierOrderToProcessShort=To process +StatusSupplierOrderReceivedPartiallyShort=Partially received +StatusSupplierOrderReceivedAllShort=Products received +StatusSupplierOrderCanceled=Canceled +StatusSupplierOrderDraft=Draft (needs to be validated) +StatusSupplierOrderValidated=Validated +StatusSupplierOrderOnProcess=Ordered - Standby reception +StatusSupplierOrderOnProcessWithValidation=Ordered - Standby reception or validation +StatusSupplierOrderProcessed=Processed +StatusSupplierOrderToBill=Delivered +StatusSupplierOrderApproved=Approved +StatusSupplierOrderRefused=Refused +StatusSupplierOrderReceivedPartially=Partially received +StatusSupplierOrderReceivedAll=All products received diff --git a/htdocs/langs/zh_HK/other.lang b/htdocs/langs/zh_HK/other.lang new file mode 100644 index 00000000000..ba85f51e739 --- /dev/null +++ b/htdocs/langs/zh_HK/other.lang @@ -0,0 +1,286 @@ +# Dolibarr language file - Source file is en_US - other +SecurityCode=Security code +NumberingShort=N° +Tools=Tools +TMenuTools=Tools +ToolsDesc=All tools not included in other menu entries are grouped here.
    All the tools can be accessed via the left menu. +Birthday=Birthday +BirthdayDate=Birthday date +DateToBirth=Birth date +BirthdayAlertOn=birthday alert active +BirthdayAlertOff=birthday alert inactive +TransKey=Translation of the key TransKey +MonthOfInvoice=Month (number 1-12) of invoice date +TextMonthOfInvoice=Month (text) of invoice date +PreviousMonthOfInvoice=Previous month (number 1-12) of invoice date +TextPreviousMonthOfInvoice=Previous month (text) of invoice date +NextMonthOfInvoice=Following month (number 1-12) of invoice date +TextNextMonthOfInvoice=Following month (text) of invoice date +ZipFileGeneratedInto=Zip file generated into %s. +DocFileGeneratedInto=Doc file generated into %s. +JumpToLogin=Disconnected. Go to login page... +MessageForm=Message on online payment form +MessageOK=Message on the return page for a validated payment +MessageKO=Message on the return page for a canceled payment +ContentOfDirectoryIsNotEmpty=Content of this directory is not empty. +DeleteAlsoContentRecursively=Check to delete all content recursively +PoweredBy=Powered by +YearOfInvoice=Year of invoice date +PreviousYearOfInvoice=Previous year of invoice date +NextYearOfInvoice=Following year of invoice date +DateNextInvoiceBeforeGen=Date of next invoice (before generation) +DateNextInvoiceAfterGen=Date of next invoice (after generation) +GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mode. The mode 'Lines' was automatically selected instead. +OnlyOneFieldForXAxisIsPossible=Only 1 field is currently possible as X-Axis. Only the first selected field has been selected. +AtLeastOneMeasureIsRequired=At least 1 field for measure is required +AtLeastOneXAxisIsRequired=At least 1 field for X-Axis is required +LatestBlogPosts=Latest Blog Posts +Notify_ORDER_VALIDATE=Sales order validated +Notify_ORDER_SENTBYMAIL=Sales order sent by mail +Notify_ORDER_SUPPLIER_SENTBYMAIL=Purchase order sent by email +Notify_ORDER_SUPPLIER_VALIDATE=Purchase order recorded +Notify_ORDER_SUPPLIER_APPROVE=Purchase order approved +Notify_ORDER_SUPPLIER_REFUSE=Purchase order refused +Notify_PROPAL_VALIDATE=Customer proposal validated +Notify_PROPAL_CLOSE_SIGNED=Customer proposal closed signed +Notify_PROPAL_CLOSE_REFUSED=Customer proposal closed refused +Notify_PROPAL_SENTBYMAIL=Commercial proposal sent by mail +Notify_WITHDRAW_TRANSMIT=Transmission withdrawal +Notify_WITHDRAW_CREDIT=Credit withdrawal +Notify_WITHDRAW_EMIT=Perform withdrawal +Notify_COMPANY_CREATE=Third party created +Notify_COMPANY_SENTBYMAIL=Mails sent from third party card +Notify_BILL_VALIDATE=Customer invoice validated +Notify_BILL_UNVALIDATE=Customer invoice unvalidated +Notify_BILL_PAYED=Customer invoice paid +Notify_BILL_CANCEL=Customer invoice canceled +Notify_BILL_SENTBYMAIL=Customer invoice sent by mail +Notify_BILL_SUPPLIER_VALIDATE=Vendor invoice validated +Notify_BILL_SUPPLIER_PAYED=Vendor invoice paid +Notify_BILL_SUPPLIER_SENTBYMAIL=Vendor invoice sent by mail +Notify_BILL_SUPPLIER_CANCELED=Vendor invoice cancelled +Notify_CONTRACT_VALIDATE=Contract validated +Notify_FICHINTER_VALIDATE=Intervention validated +Notify_FICHINTER_ADD_CONTACT=Added contact to Intervention +Notify_FICHINTER_SENTBYMAIL=Intervention sent by mail +Notify_SHIPPING_VALIDATE=Shipping validated +Notify_SHIPPING_SENTBYMAIL=Shipping sent by mail +Notify_MEMBER_VALIDATE=Member validated +Notify_MEMBER_MODIFY=Member modified +Notify_MEMBER_SUBSCRIPTION=Member subscribed +Notify_MEMBER_RESILIATE=Member terminated +Notify_MEMBER_DELETE=Member deleted +Notify_PROJECT_CREATE=Project creation +Notify_TASK_CREATE=Task created +Notify_TASK_MODIFY=Task modified +Notify_TASK_DELETE=Task deleted +Notify_EXPENSE_REPORT_VALIDATE=Expense report validated (approval required) +Notify_EXPENSE_REPORT_APPROVE=Expense report approved +Notify_HOLIDAY_VALIDATE=Leave request validated (approval required) +Notify_HOLIDAY_APPROVE=Leave request approved +SeeModuleSetup=See setup of module %s +NbOfAttachedFiles=Number of attached files/documents +TotalSizeOfAttachedFiles=Total size of attached files/documents +MaxSize=Maximum size +AttachANewFile=Attach a new file/document +LinkedObject=Linked object +NbOfActiveNotifications=Number of notifications (no. of recipient emails) +PredefinedMailTest=__(Hello)__\nThis is a test mail sent to __EMAIL__.\nThe two lines are separated by a carriage return.\n\n__USER_SIGNATURE__ +PredefinedMailTestHtml=__(Hello)__\nThis is a test 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__ +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__ +PredefinedMailContentSendSupplierProposal=__(Hello)__\n\nPlease find price request __REF__ attached\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ +PredefinedMailContentSendOrder=__(Hello)__\n\nPlease find order __REF__ attached\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ +PredefinedMailContentSendSupplierOrder=__(Hello)__\n\nPlease find our order __REF__ attached\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ +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__ +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 is a compact ERP/CRM supporting several business modules. A demo showcasing all modules makes no sense as this scenario never occurs (several hundred available). So, several demo profiles are available. +ChooseYourDemoProfil=Choose the demo profile that best suits your needs... +ChooseYourDemoProfilMore=...or build your own profile
    (manual module selection) +DemoFundation=Manage members of a foundation +DemoFundation2=Manage members and bank account of a foundation +DemoCompanyServiceOnly=Company or freelance selling service only +DemoCompanyShopWithCashDesk=Manage a shop with a cash desk +DemoCompanyProductAndStocks=Shop selling products with Point Of Sales +DemoCompanyManufacturing=Company manufacturing products +DemoCompanyAll=Company with multiple activities (all main modules) +CreatedBy=Created by %s +ModifiedBy=Modified by %s +ValidatedBy=Validated by %s +ClosedBy=Closed by %s +CreatedById=User id who created +ModifiedById=User id who made latest change +ValidatedById=User id who validated +CanceledById=User id who canceled +ClosedById=User id who closed +CreatedByLogin=User login who created +ModifiedByLogin=User login who made latest change +ValidatedByLogin=User login who validated +CanceledByLogin=User login who canceled +ClosedByLogin=User login who closed +FileWasRemoved=File %s was removed +DirWasRemoved=Directory %s was removed +FeatureNotYetAvailable=Feature not yet available in the current version +FeaturesSupported=Supported features +Width=Width +Height=Height +Depth=Depth +Top=Top +Bottom=Bottom +Left=Left +Right=Right +CalculatedWeight=Calculated weight +CalculatedVolume=Calculated volume +Weight=Weight +WeightUnitton=tonne +WeightUnitkg=kg +WeightUnitg=g +WeightUnitmg=mg +WeightUnitpound=pound +WeightUnitounce=ounce +Length=Length +LengthUnitm=m +LengthUnitdm=dm +LengthUnitcm=cm +LengthUnitmm=mm +Surface=Area +SurfaceUnitm2=m² +SurfaceUnitdm2=dm² +SurfaceUnitcm2=cm² +SurfaceUnitmm2=mm² +SurfaceUnitfoot2=ft² +SurfaceUnitinch2=in² +Volume=Volume +VolumeUnitm3=m³ +VolumeUnitdm3=dm³ (L) +VolumeUnitcm3=cm³ (ml) +VolumeUnitmm3=mm³ (µl) +VolumeUnitfoot3=ft³ +VolumeUnitinch3=in³ +VolumeUnitounce=ounce +VolumeUnitlitre=litre +VolumeUnitgallon=gallon +SizeUnitm=m +SizeUnitdm=dm +SizeUnitcm=cm +SizeUnitmm=mm +SizeUnitinch=inch +SizeUnitfoot=foot +SizeUnitpoint=point +BugTracker=Bug tracker +SendNewPasswordDesc=This form allows you to request a new password. It will be sent to your email address.
    Change will become effective once you click on the confirmation link in the email.
    Check your inbox. +BackToLoginPage=Back to login page +AuthenticationDoesNotAllowSendNewPassword=Authentication mode is %s.
    In this mode, Dolibarr can't know nor change your password.
    Contact your system administrator if you want to change your password. +EnableGDLibraryDesc=Install or enable GD library on your PHP installation to use this option. +ProfIdShortDesc=Prof Id %s is an information depending on third party country.
    For example, for country %s, it's code %s. +DolibarrDemo=Dolibarr ERP/CRM demo +StatsByNumberOfUnits=Statistics for sum of qty of products/services +StatsByNumberOfEntities=Statistics in number of referring entities (no. of invoice, or order...) +NumberOfProposals=Number of proposals +NumberOfCustomerOrders=Number of sales orders +NumberOfCustomerInvoices=Number of customer invoices +NumberOfSupplierProposals=Number of vendor proposals +NumberOfSupplierOrders=Number of purchase orders +NumberOfSupplierInvoices=Number of vendor invoices +NumberOfContracts=Number of contracts +NumberOfMos=Number of manufacturing orders +NumberOfUnitsProposals=Number of units on proposals +NumberOfUnitsCustomerOrders=Number of units on sales orders +NumberOfUnitsCustomerInvoices=Number of units on customer invoices +NumberOfUnitsSupplierProposals=Number of units on vendor proposals +NumberOfUnitsSupplierOrders=Number of units on purchase orders +NumberOfUnitsSupplierInvoices=Number of units on vendor invoices +NumberOfUnitsContracts=Number of units on contracts +NumberOfUnitsMos=Number of units to produce in manufacturing orders +EMailTextInterventionAddedContact=A new intervention %s has been assigned to you. +EMailTextInterventionValidated=The intervention %s has been validated. +EMailTextInvoiceValidated=Invoice %s has been validated. +EMailTextInvoicePayed=Invoice %s has been paid. +EMailTextProposalValidated=Proposal %s has been validated. +EMailTextProposalClosedSigned=Proposal %s has been closed signed. +EMailTextOrderValidated=Order %s has been validated. +EMailTextOrderApproved=Order %s has been approved. +EMailTextOrderValidatedBy=Order %s has been recorded by %s. +EMailTextOrderApprovedBy=Order %s has been approved by %s. +EMailTextOrderRefused=Order %s has been refused. +EMailTextOrderRefusedBy=Order %s has been refused by %s. +EMailTextExpeditionValidated=Shipping %s has been validated. +EMailTextExpenseReportValidated=Expense report %s has been validated. +EMailTextExpenseReportApproved=Expense report %s has been approved. +EMailTextHolidayValidated=Leave request %s has been validated. +EMailTextHolidayApproved=Leave request %s has been approved. +ImportedWithSet=Importation data set +DolibarrNotification=Automatic notification +ResizeDesc=Enter new width OR new height. Ratio will be kept during resizing... +NewLength=New width +NewHeight=New height +NewSizeAfterCropping=New size after cropping +DefineNewAreaToPick=Define new area on image to pick (left click on image then drag until you reach the opposite corner) +CurrentInformationOnImage=This tool was designed to help you to resize or crop an image. This is the information on the current edited image +ImageEditor=Image editor +YouReceiveMailBecauseOfNotification=You receive this message because your email has been added to list of targets to be informed of particular events into %s software of %s. +YouReceiveMailBecauseOfNotification2=This event is the following: +ThisIsListOfModules=This is a list of modules preselected by this demo profile (only most common modules are visible in this demo). Edit this to have a more personalized demo and click on "Start". +UseAdvancedPerms=Use the advanced permissions of some modules +FileFormat=File format +SelectAColor=Choose a color +AddFiles=Add Files +StartUpload=Start upload +CancelUpload=Cancel upload +FileIsTooBig=Files is too big +PleaseBePatient=Please be patient... +NewPassword=New password +ResetPassword=Reset password +RequestToResetPasswordReceived=A request to change your password has been received. +NewKeyIs=This is your new keys to login +NewKeyWillBe=Your new key to login to software will be +ClickHereToGoTo=Click here to go to %s +YouMustClickToChange=You must however first click on the following link to validate this password change +ForgetIfNothing=If you didn't request this change, just forget this email. Your credentials are kept safe. +IfAmountHigherThan=If amount higher than %s +SourcesRepository=Repository for sources +Chart=Chart +PassEncoding=Password encoding +PermissionsAdd=Permissions added +PermissionsDelete=Permissions removed +YourPasswordMustHaveAtLeastXChars=Your password must have at least %s chars +YourPasswordHasBeenReset=Your password has been reset successfully +ApplicantIpAddress=IP address of applicant +SMSSentTo=SMS sent to %s +MissingIds=Missing ids +ThirdPartyCreatedByEmailCollector=Third party created by email collector from email MSGID %s +ContactCreatedByEmailCollector=Contact/address created by email collector from email MSGID %s +ProjectCreatedByEmailCollector=Project created by email collector from email MSGID %s +TicketCreatedByEmailCollector=Ticket created by email collector from email MSGID %s +OpeningHoursFormatDesc=Use a - to separate opening and closing hours.
    Use a space to enter different ranges.
    Example: 8-12 14-18 + +##### Export ##### +ExportsArea=Exports area +AvailableFormats=Available formats +LibraryUsed=Library used +LibraryVersion=Library version +ExportableDatas=Exportable data +NoExportableData=No exportable data (no modules with exportable data loaded, or missing permissions) +##### External sites ##### +WebsiteSetup=Setup of module website +WEBSITE_PAGEURL=URL of page +WEBSITE_TITLE=Title +WEBSITE_DESCRIPTION=Description +WEBSITE_IMAGE=Image +WEBSITE_IMAGEDesc=Relative path of the image media. You can keep this empty as this is rarely used (it can be used by dynamic content to show a thumbnail in a list of blog posts). Use __WEBSITE_KEY__ in the path if path depends on website name (for example: image/__WEBSITE_KEY__/stories/myimage.png). +WEBSITE_KEYWORDS=Keywords +LinesToImport=Lines to import + +MemoryUsage=Memory usage +RequestDuration=Duration of request +PopuProp=Products/Services by popularity in Proposals +PopuCom=Products/Services by popularity in Orders +ProductStatistics=Products/Services Statistics +NbOfQtyInOrders=Qty in orders diff --git a/htdocs/langs/zh_HK/paybox.lang b/htdocs/langs/zh_HK/paybox.lang new file mode 100644 index 00000000000..1bbbef4017b --- /dev/null +++ b/htdocs/langs/zh_HK/paybox.lang @@ -0,0 +1,31 @@ +# Dolibarr language file - Source file is en_US - paybox +PayBoxSetup=PayBox module setup +PayBoxDesc=This module offer pages to allow payment on Paybox by customers. This can be used for a free payment or for a payment on a particular Dolibarr object (invoice, order, ...) +FollowingUrlAreAvailableToMakePayments=Following URLs are available to offer a page to a customer to make a payment on Dolibarr objects +PaymentForm=Payment form +WelcomeOnPaymentPage=Welcome to our online payment service +ThisScreenAllowsYouToPay=This screen allow you to make an online payment to %s. +ThisIsInformationOnPayment=This is information on payment to do +ToComplete=To complete +YourEMail=Email to receive payment confirmation +Creditor=Creditor +PaymentCode=Payment code +PayBoxDoPayment=Pay with Paybox +YouWillBeRedirectedOnPayBox=You will be redirected on secured Paybox page to input you credit card information +Continue=Next +SetupPayBoxToHavePaymentCreatedAutomatically=Setup your Paybox with url %s to have payment created automatically when validated by Paybox. +YourPaymentHasBeenRecorded=This page confirms that your payment has been recorded. Thank you. +YourPaymentHasNotBeenRecorded=Your payment has NOT been recorded and the transaction has been canceled. Thank you. +AccountParameter=Account parameters +UsageParameter=Usage parameters +InformationToFindParameters=Help to find your %s account information +PAYBOX_CGI_URL_V2=Url of Paybox CGI module for payment +VendorName=Name of vendor +CSSUrlForPaymentForm=CSS style sheet url for payment form +NewPayboxPaymentReceived=New Paybox payment received +NewPayboxPaymentFailed=New Paybox payment tried but failed +PAYBOX_PAYONLINE_SENDEMAIL=Email notification after payment attempt (success or fail) +PAYBOX_PBX_SITE=Value for PBX SITE +PAYBOX_PBX_RANG=Value for PBX Rang +PAYBOX_PBX_IDENTIFIANT=Value for PBX ID +PAYBOX_HMAC_KEY=HMAC key diff --git a/htdocs/langs/zh_HK/paypal.lang b/htdocs/langs/zh_HK/paypal.lang new file mode 100644 index 00000000000..5eb5f389445 --- /dev/null +++ b/htdocs/langs/zh_HK/paypal.lang @@ -0,0 +1,36 @@ +# Dolibarr language file - Source file is en_US - paypal +PaypalSetup=PayPal module setup +PaypalDesc=This module allows payment by customers via PayPal. This can be used for a ad-hoc payment or for a payment related to a Dolibarr object (invoice, order, ...) +PaypalOrCBDoPayment=Pay with PayPal (Card or PayPal) +PaypalDoPayment=Pay with PayPal +PAYPAL_API_SANDBOX=Mode test/sandbox +PAYPAL_API_USER=API username +PAYPAL_API_PASSWORD=API password +PAYPAL_API_SIGNATURE=API signature +PAYPAL_SSLVERSION=Curl SSL Version +PAYPAL_API_INTEGRAL_OR_PAYPALONLY=Offer "integral" payment (Credit card+PayPal) or "PayPal" only +PaypalModeIntegral=Integral +PaypalModeOnlyPaypal=PayPal only +ONLINE_PAYMENT_CSS_URL=Optional URL of CSS stylesheet on online payment page +ThisIsTransactionId=This is id of transaction: %s +PAYPAL_ADD_PAYMENT_URL=Include the PayPal payment url when you send a document by email +NewOnlinePaymentReceived=New online payment received +NewOnlinePaymentFailed=New online payment tried but failed +ONLINE_PAYMENT_SENDEMAIL=Email address for notifications after each payment attempt (for success and fail) +ReturnURLAfterPayment=Return URL after payment +ValidationOfOnlinePaymentFailed=Validation of online payment failed +PaymentSystemConfirmPaymentPageWasCalledButFailed=Payment confirmation page was called by payment system returned an error +SetExpressCheckoutAPICallFailed=SetExpressCheckout API call failed. +DoExpressCheckoutPaymentAPICallFailed=DoExpressCheckoutPayment API call failed. +DetailedErrorMessage=Detailed Error Message +ShortErrorMessage=Short Error Message +ErrorCode=Error Code +ErrorSeverityCode=Error Severity Code +OnlinePaymentSystem=Online payment system +PaypalLiveEnabled=PayPal "live" mode enabled (otherwise test/sandbox mode) +PaypalImportPayment=Import PayPal payments +PostActionAfterPayment=Post actions after payments +ARollbackWasPerformedOnPostActions=A rollback was performed on all Post actions. You must complete post actions manually if they are necessary. +ValidationOfPaymentFailed=Validation of payment has failed +CardOwner=Card holder +PayPalBalance=Paypal credit diff --git a/htdocs/langs/zh_HK/printing.lang b/htdocs/langs/zh_HK/printing.lang new file mode 100644 index 00000000000..16494583550 --- /dev/null +++ b/htdocs/langs/zh_HK/printing.lang @@ -0,0 +1,54 @@ +# Dolibarr language file - Source file is en_US - printing +Module64000Name=Direct Printing +Module64000Desc=Enable Direct Printing System +PrintingSetup=Setup of Direct Printing System +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=Direct Printing jobs +DirectPrint=Direct print +PrintingDriverDesc=Configuration variables for printing driver. +ListDrivers=List of drivers +PrintTestDesc=List of Printers. +FileWasSentToPrinter=File %s was sent to printer +ViaModule=via the module +NoActivePrintingModuleFound=No active driver to print document. Check setup of module %s. +PleaseSelectaDriverfromList=Please select a driver from list. +PleaseConfigureDriverfromList=Please configure the selected driver from list. +SetupDriver=Driver setup +TargetedPrinter=Targeted printer +UserConf=Setup per user +PRINTGCP_INFO=Google OAuth API setup +PRINTGCP_AUTHLINK=Authentication +PRINTGCP_TOKEN_ACCESS=Google Cloud Print OAuth Token +PrintGCPDesc=This driver allows sending documents directly to a printer using Google Cloud Print. +GCP_Name=Name +GCP_displayName=Display Name +GCP_Id=Printer Id +GCP_OwnerName=Owner Name +GCP_State=Printer State +GCP_connectionStatus=Online State +GCP_Type=Printer Type +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=Login +PRINTIPP_PASSWORD=Password +NoDefaultPrinterDefined=No default printer defined +DefaultPrinter=Default printer +Printer=Printer +IPP_Uri=Printer Uri +IPP_Name=Printer Name +IPP_State=Printer State +IPP_State_reason=State reason +IPP_State_reason1=State reason1 +IPP_BW=BW +IPP_Color=Color +IPP_Device=Device +IPP_Media=Printer media +IPP_Supported=Type of media +DirectPrintingJobsDesc=This page lists printing jobs found for available printers. +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/zh_HK/productbatch.lang b/htdocs/langs/zh_HK/productbatch.lang new file mode 100644 index 00000000000..54270c4a23b --- /dev/null +++ b/htdocs/langs/zh_HK/productbatch.lang @@ -0,0 +1,24 @@ +# ProductBATCH language file - en_US - ProductBATCH +ManageLotSerial=Use lot/serial number +ProductStatusOnBatch=Yes (lot/serial required) +ProductStatusNotOnBatch=No (lot/serial not used) +ProductStatusOnBatchShort=Yes +ProductStatusNotOnBatchShort=No +Batch=Lot/Serial +atleast1batchfield=Eat-by date or Sell-by date or Lot/Serial number +batch_number=Lot/Serial number +BatchNumberShort=Lot/Serial +EatByDate=Eat-by date +SellByDate=Sell-by date +DetailBatchNumber=Lot/Serial details +printBatch=Lot/Serial: %s +printEatby=Eat-by: %s +printSellby=Sell-by: %s +printQty=Qty: %d +AddDispatchBatchLine=Add a line for Shelf Life dispatching +WhenProductBatchModuleOnOptionAreForced=When module Lot/Serial is on, automatic stock decrease is forced to 'Decrease real stocks on shipping validation' and automatic increase mode is forced to 'Increase real stocks on manual dispatching into warehouses' and can't be edited. Other options can be defined as you want. +ProductDoesNotUseBatchSerial=This product does not use lot/serial number +ProductLotSetup=Setup of module lot/serial +ShowCurrentStockOfLot=Show current stock for couple product/lot +ShowLogOfMovementIfLot=Show log of movements for couple product/lot +StockDetailPerBatch=Stock detail per lot diff --git a/htdocs/langs/zh_HK/products.lang b/htdocs/langs/zh_HK/products.lang new file mode 100644 index 00000000000..a31243a07b6 --- /dev/null +++ b/htdocs/langs/zh_HK/products.lang @@ -0,0 +1,385 @@ +# Dolibarr language file - Source file is en_US - products +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 +TMenuProducts=Products +TMenuServices=Services +Products=Products +Services=Services +Product=Product +Service=Service +ProductId=Product/service id +Create=Create +Reference=Reference +NewProduct=New product +NewService=New service +ProductVatMassChange=Global VAT Update +ProductVatMassChangeDesc=This tool updates the VAT rate defined on ALL products and services! +MassBarcodeInit=Mass barcode init +MassBarcodeInitDesc=This page can be used to initialize a barcode on objects that does not have barcode defined. Check before that setup of module barcode is complete. +ProductAccountancyBuyCode=Accounting code (purchase) +ProductAccountancyBuyIntraCode=Accounting code (purchase intra-community) +ProductAccountancyBuyExportCode=Accounting code (purchase import) +ProductAccountancySellCode=Accounting code (sale) +ProductAccountancySellIntraCode=Accounting code (sale intra-Community) +ProductAccountancySellExportCode=Accounting code (sale export) +ProductOrService=Product or Service +ProductsAndServices=Products and Services +ProductsOrServices=Products or Services +ProductsPipeServices=Products | Services +ProductsOnSale=Products for sale +ProductsOnPurchase=Products for purchase +ProductsOnSaleOnly=Products for sale only +ProductsOnPurchaseOnly=Products for purchase only +ProductsNotOnSell=Products not for sale and not for purchase +ProductsOnSellAndOnBuy=Products for sale and for purchase +ServicesOnSale=Services for sale +ServicesOnPurchase=Services for purchase +ServicesOnSaleOnly=Services for sale only +ServicesOnPurchaseOnly=Services for purchase only +ServicesNotOnSell=Services not for sale and not for purchase +ServicesOnSellAndOnBuy=Services for sale and for purchase +LastModifiedProductsAndServices=Last %s modified products/services +LastRecordedProducts=Latest %s recorded products +LastRecordedServices=Latest %s recorded services +CardProduct0=Product +CardProduct1=Service +Stock=Stock +MenuStocks=Stocks +Stocks=Stocks and location (warehouse) of products +Movements=Movements +Sell=Sell +Buy=Purchase +OnSell=For sale +OnBuy=For purchase +NotOnSell=Not for sale +ProductStatusOnSell=For sale +ProductStatusNotOnSell=Not for sale +ProductStatusOnSellShort=For sale +ProductStatusNotOnSellShort=Not for sale +ProductStatusOnBuy=For purchase +ProductStatusNotOnBuy=Not for purchase +ProductStatusOnBuyShort=For purchase +ProductStatusNotOnBuyShort=Not for purchase +UpdateVAT=Update vat +UpdateDefaultPrice=Update default price +UpdateLevelPrices=Update prices for each level +AppliedPricesFrom=Applied from +SellingPrice=Selling price +SellingPriceHT=Selling price (excl. tax) +SellingPriceTTC=Selling price (inc. tax) +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. +CostPriceUsage=This value could be used for margin calculation. +SoldAmount=Sold amount +PurchasedAmount=Purchased amount +NewPrice=New price +MinPrice=Min. sell price +EditSellingPriceLabel=Edit selling price label +CantBeLessThanMinPrice=The selling price can't be lower than minimum allowed for this product (%s without tax). This message can also appears if you type a too important discount. +ContractStatusClosed=Closed +ErrorProductAlreadyExists=A product with reference %s already exists. +ErrorProductBadRefOrLabel=Wrong value for reference or label. +ErrorProductClone=There was a problem while trying to clone the product or service. +ErrorPriceCantBeLowerThanMinPrice=Error, price can't be lower than minimum price. +Suppliers=Vendors +SupplierRef=Vendor SKU +ShowProduct=Show product +ShowService=Show service +ProductsAndServicesArea=Product and Services area +ProductsArea=Product area +ServicesArea=Services area +ListOfStockMovements=List of stock movements +BuyingPrice=Buying price +PriceForEachProduct=Products with specific prices +SupplierCard=Vendor card +PriceRemoved=Price removed +BarCode=Barcode +BarcodeType=Barcode type +SetDefaultBarcodeType=Set barcode type +BarcodeValue=Barcode value +NoteNotVisibleOnBill=Note (not visible on invoices, proposals...) +ServiceLimitedDuration=If product is a service with limited duration: +MultiPricesAbility=Multiple price segments per product/service (each customer is in one price segment) +MultiPricesNumPrices=Number of prices +AssociatedProductsAbility=Activate virtual products (kits) +AssociatedProducts=Virtual products +AssociatedProductsNumber=Number of products composing this virtual product +ParentProductsNumber=Number of parent packaging product +ParentProducts=Parent products +IfZeroItIsNotAVirtualProduct=If 0, this product is not a virtual product +IfZeroItIsNotUsedByVirtualProduct=If 0, this product is not used by any virtual product +KeywordFilter=Keyword filter +CategoryFilter=Category filter +ProductToAddSearch=Search product to add +NoMatchFound=No match found +ListOfProductsServices=List of products/services +ProductAssociationList=List of products/services that are component(s) of this virtual product/kit +ProductParentList=List of virtual products/services with this product as a component +ErrorAssociationIsFatherOfThis=One of selected product is parent with current product +DeleteProduct=Delete a product/service +ConfirmDeleteProduct=Are you sure you want to delete this product/service? +ProductDeleted=Product/Service "%s" deleted from database. +ExportDataset_produit_1=Products +ExportDataset_service_1=Services +ImportDataset_produit_1=Products +ImportDataset_service_1=Services +DeleteProductLine=Delete product line +ConfirmDeleteProductLine=Are you sure you want to delete this product line? +ProductSpecial=Special +QtyMin=Min. purchase quantity +PriceQtyMin=Price quantity min. +PriceQtyMinCurrency=Price (currency) for this qty. (no discount) +VATRateForSupplierProduct=VAT Rate (for this vendor/product) +DiscountQtyMin=Discount for this qty. +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=Predefined products/services to sell +PredefinedProductsToPurchase=Predefined product to purchase +PredefinedServicesToPurchase=Predefined services to purchase +PredefinedProductsAndServicesToPurchase=Predefined products/services to purchase +NotPredefinedProducts=Not predefined products/services +GenerateThumb=Generate thumb +ServiceNb=Service #%s +ListProductServiceByPopularity=List of products/services by popularity +ListProductByPopularity=List of products by popularity +ListServiceByPopularity=List of services by popularity +Finished=Manufactured product +RowMaterial=Raw Material +ConfirmCloneProduct=Are you sure you want to clone product or service %s? +CloneContentProduct=Clone all main information of product/service +ClonePricesProduct=Clone prices +CloneCategoriesProduct=Clone tags/categories linked +CloneCompositionProduct=Clone virtual product/service +CloneCombinationsProduct=Clone product variants +ProductIsUsed=This product is used +NewRefForClone=Ref. of new product/service +SellingPrices=Selling prices +BuyingPrices=Buying prices +CustomerPrices=Customer prices +SuppliersPrices=Vendor prices +SuppliersPricesOfProductsOrServices=Vendor prices (of products or services) +CustomCode=Customs / Commodity / HS code +CountryOrigin=Origin country +Nature=Nature of product (material/finished) +ShortLabel=Short label +Unit=Unit +p=u. +set=set +se=set +second=second +s=s +hour=hour +h=h +day=day +d=d +kilogram=kilogram +kg=Kg +gram=gram +g=g +meter=meter +m=m +lm=lm +m2=m² +m3=m³ +liter=liter +l=L +unitP=Piece +unitSET=Set +unitS=Second +unitH=Hour +unitD=Day +unitG=Gram +unitM=Meter +unitLM=Linear meter +unitM2=Square meter +unitM3=Cubic meter +unitL=Liter +unitT=ton +unitKG=kg +unitG=Gram +unitMG=mg +unitLB=pound +unitOZ=ounce +unitM=Meter +unitDM=dm +unitCM=cm +unitMM=mm +unitFT=ft +unitIN=in +unitM2=Square meter +unitDM2=dm² +unitCM2=cm² +unitMM2=mm² +unitFT2=ft² +unitIN2=in² +unitM3=Cubic meter +unitDM3=dm³ +unitCM3=cm³ +unitMM3=mm³ +unitFT3=ft³ +unitIN3=in³ +unitOZ3=ounce +unitgallon=gallon +ProductCodeModel=Product ref template +ServiceCodeModel=Service ref template +CurrentProductPrice=Current price +AlwaysUseNewPrice=Always use current price of product/service +AlwaysUseFixedPrice=Use the fixed price +PriceByQuantity=Different prices by quantity +DisablePriceByQty=Disable prices by quantity +PriceByQuantityRange=Quantity range +MultipriceRules=Price segment rules +UseMultipriceRules=Use price segment rules (defined into product module setup) to auto calculate prices of all other segments according to first segment +PercentVariationOver=%% variation over %s +PercentDiscountOver=%% discount over %s +KeepEmptyForAutoCalculation=Keep empty to have this calculated automatically from weight or volume of products +VariantRefExample=Examples: COL, SIZE +VariantLabelExample=Examples: Color, Size +### composition fabrication +Build=Produce +ProductsMultiPrice=Products and prices for each price segment +ProductsOrServiceMultiPrice=Customer prices (of products or services, multi-prices) +ProductSellByQuarterHT=Products turnover quarterly before tax +ServiceSellByQuarterHT=Services turnover quarterly before tax +Quarter1=1st. Quarter +Quarter2=2nd. Quarter +Quarter3=3rd. Quarter +Quarter4=4th. Quarter +BarCodePrintsheet=Print barcode +PageToGenerateBarCodeSheets=With this tool, you can print sheets of barcode stickers. Choose format of your sticker page, type of barcode and value of barcode, then click on button %s. +NumberOfStickers=Number of stickers to print on page +PrintsheetForOneBarCode=Print several stickers for one barcode +BuildPageToPrint=Generate page to print +FillBarCodeTypeAndValueManually=Fill barcode type and value manually. +FillBarCodeTypeAndValueFromProduct=Fill barcode type and value from barcode of a product. +FillBarCodeTypeAndValueFromThirdParty=Fill barcode type and value from barcode of a third party. +DefinitionOfBarCodeForProductNotComplete=Definition of type or value of barcode not complete for product %s. +DefinitionOfBarCodeForThirdpartyNotComplete=Definition of type or value of barcode non complete for third party %s. +BarCodeDataForProduct=Barcode information of product %s: +BarCodeDataForThirdparty=Barcode information of third party %s: +ResetBarcodeForAllRecords=Define barcode value for all record (this will also reset barcode value already defined with new values) +PriceByCustomer=Different prices for each customer +PriceCatalogue=A single sell price per product/service +PricingRule=Rules for selling prices +AddCustomerPrice=Add price by customer +ForceUpdateChildPriceSoc=Set same price on customer subsidiaries +PriceByCustomerLog=Log of previous customer prices +MinimumPriceLimit=Minimum price can't be lower then %s +MinimumRecommendedPrice=Minimum recommended price is: %s +PriceExpressionEditor=Price expression editor +PriceExpressionSelected=Selected price expression +PriceExpressionEditorHelp1="price = 2 + 2" or "2 + 2" for setting the price. Use ; to separate expressions +PriceExpressionEditorHelp2=You can access ExtraFields with variables like #extrafield_myextrafieldkey# and global variables with #global_mycode# +PriceExpressionEditorHelp3=In both product/service and vendor prices there are these variables available:
    #tva_tx# #localtax1_tx# #localtax2_tx# #weight# #length# #surface# #price_min# +PriceExpressionEditorHelp4=In product/service price only: #supplier_min_price#
    In vendor prices only: #supplier_quantity# and #supplier_tva_tx# +PriceExpressionEditorHelp5=Available global values: +PriceMode=Price mode +PriceNumeric=Number +DefaultPrice=Default price +ComposedProductIncDecStock=Increase/Decrease stock on parent change +ComposedProduct=Child products +MinSupplierPrice=Minimum buying price +MinCustomerPrice=Minimum selling price +DynamicPriceConfiguration=Dynamic price configuration +DynamicPriceDesc=You may define mathematical formulae to calculate Customer or Vendor prices. Such formulas can use all mathematical operators, some constants and variables. You can define here the variables you wish to use. If the variable needs an automatic update, you may define the external URL to allow Dolibarr to update the value automatically. +AddVariable=Add Variable +AddUpdater=Add Updater +GlobalVariables=Global variables +VariableToUpdate=Variable to update +GlobalVariableUpdaters=External updaters for variables +GlobalVariableUpdaterType0=JSON data +GlobalVariableUpdaterHelp0=Parses JSON data from specified URL, VALUE specifies the location of relevant value, +GlobalVariableUpdaterHelpFormat0=Format for request {"URL": "http://example.com/urlofjson", "VALUE": "array1,array2,targetvalue"} +GlobalVariableUpdaterType1=WebService data +GlobalVariableUpdaterHelp1=Parses WebService data from specified URL, NS specifies the namespace, VALUE specifies the location of relevant value, DATA should contain the data to send and METHOD is the calling WS method +GlobalVariableUpdaterHelpFormat1=Format for request is {"URL": "http://example.com/urlofws", "VALUE": "array,targetvalue", "NS": "http://example.com/urlofns", "METHOD": "myWSMethod", "DATA": {"your": "data", "to": "send"}} +UpdateInterval=Update interval (minutes) +LastUpdated=Latest update +CorrectlyUpdated=Correctly updated +PropalMergePdfProductActualFile=Files use to add into PDF Azur are/is +PropalMergePdfProductChooseFile=Select PDF files +IncludingProductWithTag=Including product/service with tag +DefaultPriceRealPriceMayDependOnCustomer=Default price, real price may depend on customer +WarningSelectOneDocument=Please select at least one document +DefaultUnitToShow=Unit +NbOfQtyInProposals=Qty in proposals +ClinkOnALinkOfColumn=Click on a link of column %s to get a detailed view... +ProductsOrServicesTranslations=Products/Services translations +TranslatedLabel=Translated label +TranslatedDescription=Translated description +TranslatedNote=Translated notes +ProductWeight=Weight for 1 product +ProductVolume=Volume for 1 product +WeightUnits=Weight unit +VolumeUnits=Volume unit +WidthUnits=Width unit +LengthUnits=Length unit +HeightUnits=Height unit +SurfaceUnits=Surface unit +SizeUnits=Size unit +DeleteProductBuyPrice=Delete buying price +ConfirmDeleteProductBuyPrice=Are you sure you want to delete this buying price? +SubProduct=Sub product +ProductSheet=Product sheet +ServiceSheet=Service sheet +PossibleValues=Possible values +GoOnMenuToCreateVairants=Go on menu %s - %s to prepare attribute variants (like colors, size, ...) +UseProductFournDesc=Add a feature to define the descriptions of products defined by the vendors in addition to descriptions for customers +ProductSupplierDescription=Vendor description for the product +UseProductSupplierPackaging=Use packaging on supplier prices (recalculate quantities according to packaging set on supplier price when adding/updating line in supplier documents) +PackagingForThisProduct=Packaging +QtyRecalculatedWithPackaging=The quantity of the line were recalculated according to supplier packaging + +#Attributes +VariantAttributes=Variant attributes +ProductAttributes=Variant attributes for products +ProductAttributeName=Variant attribute %s +ProductAttribute=Variant attribute +ProductAttributeDeleteDialog=Are you sure you want to delete this attribute? All values will be deleted +ProductAttributeValueDeleteDialog=Are you sure you want to delete the value "%s" with reference "%s" of this attribute? +ProductCombinationDeleteDialog=Are you sure want to delete the variant of the product "%s"? +ProductCombinationAlreadyUsed=There was an error while deleting the variant. Please check it is not being used in any object +ProductCombinations=Variants +PropagateVariant=Propagate variants +HideProductCombinations=Hide products variant in the products selector +ProductCombination=Variant +NewProductCombination=New variant +EditProductCombination=Editing variant +NewProductCombinations=New variants +EditProductCombinations=Editing variants +SelectCombination=Select combination +ProductCombinationGenerator=Variants generator +Features=Features +PriceImpact=Price impact +WeightImpact=Weight impact +NewProductAttribute=New attribute +NewProductAttributeValue=New attribute value +ErrorCreatingProductAttributeValue=There was an error while creating the attribute value. It could be because there is already an existing value with that reference +ProductCombinationGeneratorWarning=If you continue, before generating new variants, all previous ones will be DELETED. Already existing ones will be updated with the new values +TooMuchCombinationsWarning=Generating lots of variants may result in high CPU, memory usage and Dolibarr not able to create them. Enabling the option "%s" may help reduce memory usage. +DoNotRemovePreviousCombinations=Do not remove previous variants +UsePercentageVariations=Use percentage variations +PercentageVariation=Percentage variation +ErrorDeletingGeneratedProducts=There was an error while trying to delete existing product variants +NbOfDifferentValues=No. of different values +NbProducts=Number of products +ParentProduct=Parent product +HideChildProducts=Hide variant products +ShowChildProducts=Show variant products +NoEditVariants=Go to Parent product card and edit variants price impact in the variants tab +ConfirmCloneProductCombinations=Would you like to copy all the product variants to the other parent product with the given reference? +CloneDestinationReference=Destination product reference +ErrorCopyProductCombinations=There was an error while copying the product variants +ErrorDestinationProductNotFound=Destination product not found +ErrorProductCombinationNotFound=Product variant not found +ActionAvailableOnVariantProductOnly=Action only available on the variant of product +ProductsPricePerCustomer=Product prices per customers +ProductSupplierExtraFields=Additional Attributes (Supplier Prices) +DeleteLinkedProduct=Delete the child product linked to the combination diff --git a/htdocs/langs/zh_HK/projects.lang b/htdocs/langs/zh_HK/projects.lang new file mode 100644 index 00000000000..bb42bff3c87 --- /dev/null +++ b/htdocs/langs/zh_HK/projects.lang @@ -0,0 +1,267 @@ +# Dolibarr language file - Source file is en_US - projects +RefProject=Ref. project +ProjectRef=Project ref. +ProjectId=Project Id +ProjectLabel=Project label +ProjectsArea=Projects Area +ProjectStatus=Project status +SharedProject=Everybody +PrivateProject=Project contacts +ProjectsImContactFor=Projects for I am explicitly a contact +AllAllowedProjects=All project I can read (mine + public) +AllProjects=All projects +MyProjectsDesc=This view is limited to projects you are a contact for +ProjectsPublicDesc=This view presents all projects you are allowed to read. +TasksOnProjectsPublicDesc=This view presents all tasks on projects you are allowed to read. +ProjectsPublicTaskDesc=This view presents all projects and tasks you are allowed to read. +ProjectsDesc=This view presents all projects (your user permissions grant you permission to view everything). +TasksOnProjectsDesc=This view presents all tasks on all projects (your user permissions grant you permission to view everything). +MyTasksDesc=This view is limited to projects or tasks you are a contact for +OnlyOpenedProject=Only open projects are visible (projects in draft or closed status are not visible). +ClosedProjectsAreHidden=Closed projects are not visible. +TasksPublicDesc=This view presents all projects and tasks you are allowed to read. +TasksDesc=This view presents all projects and tasks (your user permissions grant you permission to view everything). +AllTaskVisibleButEditIfYouAreAssigned=All tasks for qualified projects are visible, but you can enter time only for task assigned to selected user. Assign task if you need to enter time on it. +OnlyYourTaskAreVisible=Only tasks assigned to you are visible. Assign task to yourself if it is not visible and you need to enter time on it. +ImportDatasetTasks=Tasks of projects +ProjectCategories=Project tags/categories +NewProject=New project +AddProject=Create project +DeleteAProject=Delete a project +DeleteATask=Delete a task +ConfirmDeleteAProject=Are you sure you want to delete this project? +ConfirmDeleteATask=Are you sure you want to delete this task? +OpenedProjects=Open projects +OpenedTasks=Open tasks +OpportunitiesStatusForOpenedProjects=Leads amount of open projects by status +OpportunitiesStatusForProjects=Leads amount of projects by status +ShowProject=Show project +ShowTask=Show task +SetProject=Set project +NoProject=No project defined or owned +NbOfProjects=Number of projects +NbOfTasks=Number of tasks +TimeSpent=Time spent +TimeSpentByYou=Time spent by you +TimeSpentByUser=Time spent by user +TimesSpent=Time spent +TaskId=Task ID +RefTask=Task ref. +LabelTask=Task label +TaskTimeSpent=Time spent on tasks +TaskTimeUser=User +TaskTimeNote=Note +TaskTimeDate=Date +TasksOnOpenedProject=Tasks on open projects +WorkloadNotDefined=Workload not defined +NewTimeSpent=Time spent +MyTimeSpent=My time spent +BillTime=Bill the time spent +BillTimeShort=Bill time +TimeToBill=Time not billed +TimeBilled=Time billed +Tasks=Tasks +Task=Task +TaskDateStart=Task start date +TaskDateEnd=Task end date +TaskDescription=Task description +NewTask=New task +AddTask=Create task +AddTimeSpent=Create time spent +AddHereTimeSpentForDay=Add here time spent for this day/task +AddHereTimeSpentForWeek=Add here time spent for this week/task +Activity=Activity +Activities=Tasks/activities +MyActivities=My tasks/activities +MyProjects=My projects +MyProjectsArea=My projects Area +DurationEffective=Effective duration +ProgressDeclared=Declared progress +TaskProgressSummary=Task progress +CurentlyOpenedTasks=Curently open tasks +TheReportedProgressIsLessThanTheCalculatedProgressionByX=The declared progress is less %s than the calculated progression +TheReportedProgressIsMoreThanTheCalculatedProgressionByX=The declared progress is more %s than the calculated progression +ProgressCalculated=Calculated progress +WhichIamLinkedTo=which I'm linked to +WhichIamLinkedToProject=which I'm linked to project +Time=Time +ListOfTasks=List of tasks +GoToListOfTimeConsumed=Go to list of time consumed +GanttView=Gantt View +ListProposalsAssociatedProject=List of the commercial proposals related to the project +ListOrdersAssociatedProject=List of sales orders related to the project +ListInvoicesAssociatedProject=List of customer invoices related to the project +ListPredefinedInvoicesAssociatedProject=List of customer template invoices related to the project +ListSupplierOrdersAssociatedProject=List of purchase orders related to the project +ListSupplierInvoicesAssociatedProject=List of vendor invoices related to the project +ListContractAssociatedProject=List of contracts related to the project +ListShippingAssociatedProject=List of shippings related to the project +ListFichinterAssociatedProject=List of interventions related to the project +ListExpenseReportsAssociatedProject=List of expense reports related to the project +ListDonationsAssociatedProject=List of donations related to the project +ListVariousPaymentsAssociatedProject=List of miscellaneous payments related to the project +ListSalariesAssociatedProject=List of payments of salaries related to the project +ListActionsAssociatedProject=List of events related to the project +ListMOAssociatedProject=List of manufacturing orders related to the project +ListTaskTimeUserProject=List of time consumed on tasks of project +ListTaskTimeForTask=List of time consumed on task +ActivityOnProjectToday=Activity on project today +ActivityOnProjectYesterday=Activity on project yesterday +ActivityOnProjectThisWeek=Activity on project this week +ActivityOnProjectThisMonth=Activity on project this month +ActivityOnProjectThisYear=Activity on project this year +ChildOfProjectTask=Child of project/task +ChildOfTask=Child of task +TaskHasChild=Task has child +NotOwnerOfProject=Not owner of this private project +AffectedTo=Allocated to +CantRemoveProject=This project can't be removed as it is referenced by some other objects (invoice, orders or other). See referers tab. +ValidateProject=Validate projet +ConfirmValidateProject=Are you sure you want to validate this project? +CloseAProject=Close project +ConfirmCloseAProject=Are you sure you want to close this project? +AlsoCloseAProject=Also close project (keep it open if you still need to follow production tasks on it) +ReOpenAProject=Open project +ConfirmReOpenAProject=Are you sure you want to re-open this project? +ProjectContact=Contacts of project +TaskContact=Task contacts +ActionsOnProject=Events on project +YouAreNotContactOfProject=You are not a contact of this private project +UserIsNotContactOfProject=User is not a contact of this private project +DeleteATimeSpent=Delete time spent +ConfirmDeleteATimeSpent=Are you sure you want to delete this time spent? +DoNotShowMyTasksOnly=See also tasks not assigned to me +ShowMyTasksOnly=View only tasks assigned to me +TaskRessourceLinks=Contacts of task +ProjectsDedicatedToThisThirdParty=Projects dedicated to this third party +NoTasks=No tasks for this project +LinkedToAnotherCompany=Linked to other third party +TaskIsNotAssignedToUser=Task not assigned to user. Use button '%s' to assign task now. +ErrorTimeSpentIsEmpty=Time spent is empty +ThisWillAlsoRemoveTasks=This action will also delete all tasks of project (%s tasks at the moment) and all inputs of time spent. +IfNeedToUseOtherObjectKeepEmpty=If some objects (invoice, order, ...), belonging to another third party, must be linked to the project to create, keep this empty to have the project being multi third parties. +CloneTasks=Clone tasks +CloneContacts=Clone contacts +CloneNotes=Clone notes +CloneProjectFiles=Clone project joined files +CloneTaskFiles=Clone task(s) joined files (if task(s) cloned) +CloneMoveDate=Update project/tasks dates from now? +ConfirmCloneProject=Are you sure to clone this project? +ProjectReportDate=Change task dates according to new project start date +ErrorShiftTaskDate=Impossible to shift task date according to new project start date +ProjectsAndTasksLines=Projects and tasks +ProjectCreatedInDolibarr=Project %s created +ProjectValidatedInDolibarr=Project %s validated +ProjectModifiedInDolibarr=Project %s modified +TaskCreatedInDolibarr=Task %s created +TaskModifiedInDolibarr=Task %s modified +TaskDeletedInDolibarr=Task %s deleted +OpportunityStatus=Lead status +OpportunityStatusShort=Lead status +OpportunityProbability=Lead probability +OpportunityProbabilityShort=Lead probab. +OpportunityAmount=Lead amount +OpportunityAmountShort=Lead amount +OpportunityWeightedAmount=Opportunity weighted amount +OpportunityWeightedAmountShort=Opp. weighted amount +OpportunityAmountAverageShort=Average lead amount +OpportunityAmountWeigthedShort=Weighted lead amount +WonLostExcluded=Won/Lost excluded +##### Types de contacts ##### +TypeContact_project_internal_PROJECTLEADER=Project leader +TypeContact_project_external_PROJECTLEADER=Project leader +TypeContact_project_internal_PROJECTCONTRIBUTOR=Contributor +TypeContact_project_external_PROJECTCONTRIBUTOR=Contributor +TypeContact_project_task_internal_TASKEXECUTIVE=Task executive +TypeContact_project_task_external_TASKEXECUTIVE=Task executive +TypeContact_project_task_internal_TASKCONTRIBUTOR=Contributor +TypeContact_project_task_external_TASKCONTRIBUTOR=Contributor +SelectElement=Select element +AddElement=Link to element +# Documents models +DocumentModelBeluga=Project document template for linked objects overview +DocumentModelBaleine=Project document template for tasks +DocumentModelTimeSpent=Project report template for time spent +PlannedWorkload=Planned workload +PlannedWorkloadShort=Workload +ProjectReferers=Related items +ProjectMustBeValidatedFirst=Project must be validated first +FirstAddRessourceToAllocateTime=Assign a user resource as contact of project to allocate time +InputPerDay=Input per day +InputPerWeek=Input per week +InputPerMonth=Input per month +InputDetail=Input detail +TimeAlreadyRecorded=This is time spent already recorded for this task/day and user %s +ProjectsWithThisUserAsContact=Projects with this user as contact +TasksWithThisUserAsContact=Tasks assigned to this user +ResourceNotAssignedToProject=Not assigned to project +ResourceNotAssignedToTheTask=Not assigned to the task +NoUserAssignedToTheProject=No users assigned to this project +TimeSpentBy=Time spent by +TasksAssignedTo=Tasks assigned to +AssignTaskToMe=Assign task to me +AssignTaskToUser=Assign task to %s +SelectTaskToAssign=Select task to assign... +AssignTask=Assign +ProjectOverview=Overview +ManageTasks=Use projects to follow tasks and/or report time spent (timesheets) +ManageOpportunitiesStatus=Use projects to follow leads/opportinuties +ProjectNbProjectByMonth=No. of created projects by month +ProjectNbTaskByMonth=No. of created tasks by month +ProjectOppAmountOfProjectsByMonth=Amount of leads by month +ProjectWeightedOppAmountOfProjectsByMonth=Weighted amount of leads by month +ProjectOpenedProjectByOppStatus=Open project/lead by lead status +ProjectsStatistics=Statistics on projects/leads +TasksStatistics=Statistics on project/lead tasks +TaskAssignedToEnterTime=Task assigned. Entering time on this task should be possible. +IdTaskTime=Id task time +YouCanCompleteRef=If you want to complete the ref with some suffix, it is recommanded to add a - character to separate it, so the automatic numbering will still work correctly for next projects. For example %s-MYSUFFIX +OpenedProjectsByThirdparties=Open projects by third parties +OnlyOpportunitiesShort=Only leads +OpenedOpportunitiesShort=Open leads +NotOpenedOpportunitiesShort=Not an open lead +NotAnOpportunityShort=Not a lead +OpportunityTotalAmount=Total amount of leads +OpportunityPonderatedAmount=Weighted amount of leads +OpportunityPonderatedAmountDesc=Leads amount weighted with probability +OppStatusPROSP=Prospection +OppStatusQUAL=Qualification +OppStatusPROPO=Proposal +OppStatusNEGO=Negociation +OppStatusPENDING=Pending +OppStatusWON=Won +OppStatusLOST=Lost +Budget=Budget +AllowToLinkFromOtherCompany=Allow to link project from other company

    Supported values:
    - Keep empty: Can link any project of the company (default)
    - "all": Can link any projects, even projects of other companies
    - A list of third-party ids separated by commas: can link all projects of these third partys (Example: 123,4795,53)
    +LatestProjects=Latest %s projects +LatestModifiedProjects=Latest %s modified projects +OtherFilteredTasks=Other filtered tasks +NoAssignedTasks=No assigned tasks found (assign project/tasks to the current user from the top select box to enter time on it) +ThirdPartyRequiredToGenerateInvoice=A third party must be defined on project to be able to invoice it. +ChooseANotYetAssignedTask=Choose a task not yet assigned to you +# Comments trans +AllowCommentOnTask=Allow user comments on tasks +AllowCommentOnProject=Allow user comments on projects +DontHavePermissionForCloseProject=You do not have permissions to close the project %s +DontHaveTheValidateStatus=The project %s must be open to be closed +RecordsClosed=%s project(s) closed +SendProjectRef=Information project %s +ModuleSalaryToDefineHourlyRateMustBeEnabled=Module 'Salaries' must be enabled to define employee hourly rate to have time spent valorized +NewTaskRefSuggested=Task ref already used, a new task ref is required +TimeSpentInvoiced=Time spent billed +TimeSpentForInvoice=Time spent +OneLinePerUser=One line per user +ServiceToUseOnLines=Service to use on lines +InvoiceGeneratedFromTimeSpent=Invoice %s has been generated from time spent on project +ProjectBillTimeDescription=Check if you enter timesheet on tasks of project AND you plan to generate invoice(s) from the timesheet to bill the customer of the project (do not check if you plan to create invoice that is not based on entered timesheets). Note: To generate invoice, go on tab 'Time spent' of the project and select lines to include. +ProjectFollowOpportunity=Follow opportunity +ProjectFollowTasks=Follow tasks or time spent +Usage=Usage +UsageOpportunity=Usage: Opportunity +UsageTasks=Usage: Tasks +UsageBillTimeShort=Usage: Bill time +InvoiceToUse=Draft invoice to use +NewInvoice=New invoice +OneLinePerTask=One line per task +OneLinePerPeriod=One line per period +RefTaskParent=Ref. Parent Task diff --git a/htdocs/langs/zh_HK/propal.lang b/htdocs/langs/zh_HK/propal.lang new file mode 100644 index 00000000000..71d6857c909 --- /dev/null +++ b/htdocs/langs/zh_HK/propal.lang @@ -0,0 +1,86 @@ +# Dolibarr language file - Source file is en_US - propal +Proposals=Commercial proposals +Proposal=Commercial proposal +ProposalShort=Proposal +ProposalsDraft=Draft commercial proposals +ProposalsOpened=Open commercial proposals +CommercialProposal=Commercial proposal +PdfCommercialProposalTitle=Commercial proposal +ProposalCard=Proposal card +NewProp=New commercial proposal +NewPropal=New proposal +Prospect=Prospect +DeleteProp=Delete commercial proposal +ValidateProp=Validate commercial proposal +AddProp=Create proposal +ConfirmDeleteProp=Are you sure you want to delete this commercial proposal? +ConfirmValidateProp=Are you sure you want to validate this commercial proposal under name %s? +LastPropals=Latest %s proposals +LastModifiedProposals=Latest %s modified proposals +AllPropals=All proposals +SearchAProposal=Search a proposal +NoProposal=No proposal +ProposalsStatistics=Commercial proposal's statistics +NumberOfProposalsByMonth=Number by month +AmountOfProposalsByMonthHT=Amount by month (excl. tax) +NbOfProposals=Number of commercial proposals +ShowPropal=Show proposal +PropalsDraft=Drafts +PropalsOpened=Open +PropalStatusDraft=Draft (needs to be validated) +PropalStatusValidated=Validated (proposal is open) +PropalStatusSigned=Signed (needs billing) +PropalStatusNotSigned=Not signed (closed) +PropalStatusBilled=Billed +PropalStatusDraftShort=Draft +PropalStatusValidatedShort=Validated (open) +PropalStatusClosedShort=Closed +PropalStatusSignedShort=Signed +PropalStatusNotSignedShort=Not signed +PropalStatusBilledShort=Billed +PropalsToClose=Commercial proposals to close +PropalsToBill=Signed commercial proposals to bill +ListOfProposals=List of commercial proposals +ActionsOnPropal=Events on proposal +RefProposal=Commercial proposal ref +SendPropalByMail=Send commercial proposal by mail +DatePropal=Date of proposal +DateEndPropal=Validity ending date +ValidityDuration=Validity duration +CloseAs=Set status to +SetAcceptedRefused=Set accepted/refused +ErrorPropalNotFound=Propal %s not found +AddToDraftProposals=Add to draft proposal +NoDraftProposals=No draft proposals +CopyPropalFrom=Create commercial proposal by copying existing proposal +CreateEmptyPropal=Create empty commercial proposal or from list of products/services +DefaultProposalDurationValidity=Default commercial proposal validity duration (in days) +UseCustomerContactAsPropalRecipientIfExist=Use contact/address with type 'Contact following-up proposal' if defined instead of third party address as proposal recipient address +ConfirmClonePropal=Are you sure you want to clone the commercial proposal %s? +ConfirmReOpenProp=Are you sure you want to open back the commercial proposal %s? +ProposalsAndProposalsLines=Commercial proposal and lines +ProposalLine=Proposal line +AvailabilityPeriod=Availability delay +SetAvailability=Set availability delay +AfterOrder=after order +OtherProposals=Other proposals +##### Availability ##### +AvailabilityTypeAV_NOW=Immediate +AvailabilityTypeAV_1W=1 week +AvailabilityTypeAV_2W=2 weeks +AvailabilityTypeAV_3W=3 weeks +AvailabilityTypeAV_1M=1 month +##### Types de contacts ##### +TypeContact_propal_internal_SALESREPFOLL=Representative following-up proposal +TypeContact_propal_external_BILLING=Customer invoice contact +TypeContact_propal_external_CUSTOMER=Customer contact following-up proposal +TypeContact_propal_external_SHIPPING=Customer contact for delivery +# Document models +DocModelAzurDescription=A complete proposal model (old implementation of Cyan template) +DocModelCyanDescription=A complete proposal model +DefaultModelPropalCreate=Default model creation +DefaultModelPropalToBill=Default template when closing a business proposal (to be invoiced) +DefaultModelPropalClosed=Default template when closing a business proposal (unbilled) +ProposalCustomerSignature=Written acceptance, company stamp, date and signature +ProposalsStatisticsSuppliers=Vendor proposals statistics +CaseFollowedBy=Case followed by diff --git a/htdocs/langs/zh_HK/receiptprinter.lang b/htdocs/langs/zh_HK/receiptprinter.lang new file mode 100644 index 00000000000..896eaa313dd --- /dev/null +++ b/htdocs/langs/zh_HK/receiptprinter.lang @@ -0,0 +1,95 @@ +# Dolibarr language file - Source file is en_US - receiptprinter +ReceiptPrinterSetup=Setup of module ReceiptPrinter +PrinterAdded=Printer %s added +PrinterUpdated=Printer %s updated +PrinterDeleted=Printer %s deleted +TestSentToPrinter=Test Sent To Printer %s +ReceiptPrinter=Receipt printers +ReceiptPrinterDesc=Setup of receipt printers +ReceiptPrinterTemplateDesc=Setup of Templates +ReceiptPrinterTypeDesc=Description of Receipt Printer's type +ReceiptPrinterProfileDesc=Description of Receipt Printer's Profile +ListPrinters=List of Printers +SetupReceiptTemplate=Template Setup +CONNECTOR_DUMMY=Dummy Printer +CONNECTOR_NETWORK_PRINT=Network Printer +CONNECTOR_FILE_PRINT=Local Printer +CONNECTOR_WINDOWS_PRINT=Local Windows Printer +CONNECTOR_CUPS_PRINT=Cups Printer +CONNECTOR_DUMMY_HELP=Fake Printer for test, does nothing +CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 +CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 +CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS printer name, example: HPRT_TP805L +PROFILE_DEFAULT=Default Profile +PROFILE_SIMPLE=Simple Profile +PROFILE_EPOSTEP=Epos Tep Profile +PROFILE_P822D=P822D Profile +PROFILE_STAR=Star Profile +PROFILE_DEFAULT_HELP=Default Profile suitable for Epson printers +PROFILE_SIMPLE_HELP=Simple Profile No Graphics +PROFILE_EPOSTEP_HELP=Epos Tep Profile +PROFILE_P822D_HELP=P822D Profile No Graphics +PROFILE_STAR_HELP=Star Profile +DOL_LINE_FEED=Skip line +DOL_ALIGN_LEFT=Left align text +DOL_ALIGN_CENTER=Center text +DOL_ALIGN_RIGHT=Right align text +DOL_USE_FONT_A=Use font A of printer +DOL_USE_FONT_B=Use font B of printer +DOL_USE_FONT_C=Use font C of printer +DOL_PRINT_BARCODE=Print barcode +DOL_PRINT_BARCODE_CUSTOMER_ID=Print barcode customer id +DOL_CUT_PAPER_FULL=Cut ticket completely +DOL_CUT_PAPER_PARTIAL=Cut ticket partially +DOL_OPEN_DRAWER=Open cash drawer +DOL_ACTIVATE_BUZZER=Activate buzzer +DOL_PRINT_QRCODE=Print QR Code +DOL_PRINT_LOGO=Print logo of my company +DOL_PRINT_LOGO_OLD=Print logo of my company (old printers) +DOL_BOLD=Bold +DOL_BOLD_DISABLED=Disable bold +DOL_DOUBLE_HEIGHT=Double height size +DOL_DOUBLE_WIDTH=Double width size +DOL_DEFAULT_HEIGHT_WIDTH=Default height and width size +DOL_UNDERLINE=Enable underline +DOL_UNDERLINE_DISABLED=Disable underline +DOL_BEEP=Beed sound +DOL_PRINT_TEXT=Print text +DOL_VALUE_DATE=Invoice date +DOL_VALUE_DATE_TIME=Invoice date and time +DOL_VALUE_YEAR=Invoice year +DOL_VALUE_MONTH_LETTERS=Invoice month in letters +DOL_VALUE_MONTH=Invoice month +DOL_VALUE_DAY=Invoice day +DOL_VALUE_DAY_LETTERS=Inovice day in letters +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=Invoice ref +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=Intra-Community VAT ID +DOL_VALUE_MYSOC_CAPITAL=Capital +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/zh_HK/receptions.lang b/htdocs/langs/zh_HK/receptions.lang new file mode 100644 index 00000000000..010a7521846 --- /dev/null +++ b/htdocs/langs/zh_HK/receptions.lang @@ -0,0 +1,45 @@ +# Dolibarr language file - Source file is en_US - receptions +ReceptionsSetup=Product Reception setup +RefReception=Ref. reception +Reception=Reception +Receptions=Receptions +AllReceptions=All Receptions +Reception=Reception +Receptions=Receptions +ShowReception=Show Receptions +ReceptionsArea=Receptions area +ListOfReceptions=List of receptions +ReceptionMethod=Reception method +LastReceptions=Latest %s receptions +StatisticsOfReceptions=Statistics for receptions +NbOfReceptions=Number of receptions +NumberOfReceptionsByMonth=Number of receptions by month +ReceptionCard=Reception card +NewReception=New reception +CreateReception=Create reception +QtyInOtherReceptions=Qty in other receptions +OtherReceptionsForSameOrder=Other receptions for this order +ReceptionsAndReceivingForSameOrder=Receptions and receipts for this order +ReceptionsToValidate=Receptions to validate +StatusReceptionCanceled=Canceled +StatusReceptionDraft=Draft +StatusReceptionValidated=Validated (products to ship or already shipped) +StatusReceptionProcessed=Processed +StatusReceptionDraftShort=Draft +StatusReceptionValidatedShort=Validated +StatusReceptionProcessedShort=Processed +ReceptionSheet=Reception sheet +ConfirmDeleteReception=Are you sure you want to delete this reception? +ConfirmValidateReception=Are you sure you want to validate this reception with reference %s? +ConfirmCancelReception=Are you sure you want to cancel this reception? +StatsOnReceptionsOnlyValidated=Statistics conducted on receptions only validated. Date used is date of validation of reception (planed delivery date is not always known). +SendReceptionByEMail=Send reception by email +SendReceptionRef=Submission of reception %s +ActionsOnReception=Events on reception +ReceptionCreationIsDoneFromOrder=For the moment, creation of a new reception is done from the order card. +ReceptionLine=Reception line +ProductQtyInReceptionAlreadySent=Product quantity from open sales order already sent +ProductQtyInSuppliersReceptionAlreadyRecevied=Product quantity from open supplier order already received +ValidateOrderFirstBeforeReception=You must first validate the order before being able to make receptions. +ReceptionsNumberingModules=Numbering module for receptions +ReceptionsReceiptModel=Document templates for receptions diff --git a/htdocs/langs/zh_HK/resource.lang b/htdocs/langs/zh_HK/resource.lang new file mode 100644 index 00000000000..e8574dc680f --- /dev/null +++ b/htdocs/langs/zh_HK/resource.lang @@ -0,0 +1,39 @@ +# Dolibarr language file - Source file is en_US - resource +MenuResourceIndex=Resources +MenuResourceAdd=New resource +DeleteResource=Delete resource +ConfirmDeleteResourceElement=Confirm delete the resource for this element +NoResourceInDatabase=No resource in database. +NoResourceLinked=No resource linked +ActionsOnResource=Events about this resource +ResourcePageIndex=Resources list +ResourceSingular=Resource +ResourceCard=Resource card +AddResource=Create a resource +ResourceFormLabel_ref=Resource name +ResourceType=Resource type +ResourceFormLabel_description=Resource description + +ResourcesLinkedToElement=Resources linked to element + +ShowResource=Show resource + +ResourceElementPage=Element resources +ResourceCreatedWithSuccess=Resource successfully created +RessourceLineSuccessfullyDeleted=Resource line successfully deleted +RessourceLineSuccessfullyUpdated=Resource line successfully updated +ResourceLinkedWithSuccess=Resource linked with success + +ConfirmDeleteResource=Confirm to delete this resource +RessourceSuccessfullyDeleted=Resource successfully deleted +DictionaryResourceType=Type of resources + +SelectResource=Select resource + +IdResource=Id resource +AssetNumber=Serial number +ResourceTypeCode=Resource type code +ImportDataset_resource_1=Resources + +ErrorResourcesAlreadyInUse=Some resources are in use +ErrorResourceUseInEvent=%s used in %s event diff --git a/htdocs/langs/zh_HK/salaries.lang b/htdocs/langs/zh_HK/salaries.lang new file mode 100644 index 00000000000..7c3c08a65bd --- /dev/null +++ b/htdocs/langs/zh_HK/salaries.lang @@ -0,0 +1,21 @@ +# Dolibarr language file - Source file is en_US - salaries +SALARIES_ACCOUNTING_ACCOUNT_PAYMENT=Accounting account used for user third parties +SALARIES_ACCOUNTING_ACCOUNT_PAYMENT_Desc=The dedicated accounting account defined on user card will be used for Subledger accounting only. This one will be used for General Ledger and as default value of Subledger accounting if dedicated user accounting account on user is not defined. +SALARIES_ACCOUNTING_ACCOUNT_CHARGE=Accounting account by default for wage payments +Salary=Salary +Salaries=Salaries +NewSalaryPayment=New salary payment +AddSalaryPayment=Add salary payment +SalaryPayment=Salary payment +SalariesPayments=Salaries payments +ShowSalaryPayment=Show salary payment +THM=Average hourly rate +TJM=Average daily rate +CurrentSalary=Current salary +THMDescription=This value may be used to calculate the cost of time consumed on a project entered by users if module project is used +TJMDescription=This value is currently for information only and is not used for any calculation +LastSalaries=Latest %s salary payments +AllSalaries=All salary payments +SalariesStatistics=Salary statistics +# Export +SalariesAndPayments=Salaries and payments diff --git a/htdocs/langs/zh_HK/sendings.lang b/htdocs/langs/zh_HK/sendings.lang new file mode 100644 index 00000000000..5ce3b7f67e9 --- /dev/null +++ b/htdocs/langs/zh_HK/sendings.lang @@ -0,0 +1,74 @@ +# Dolibarr language file - Source file is en_US - sendings +RefSending=Ref. shipment +Sending=Shipment +Sendings=Shipments +AllSendings=All Shipments +Shipment=Shipment +Shipments=Shipments +ShowSending=Show Shipments +Receivings=Delivery Receipts +SendingsArea=Shipments area +ListOfSendings=List of shipments +SendingMethod=Shipping method +LastSendings=Latest %s shipments +StatisticsOfSendings=Statistics for shipments +NbOfSendings=Number of shipments +NumberOfShipmentsByMonth=Number of shipments by month +SendingCard=Shipment card +NewSending=New shipment +CreateShipment=Create shipment +QtyShipped=Qty shipped +QtyShippedShort=Qty ship. +QtyPreparedOrShipped=Qty prepared or shipped +QtyToShip=Qty to ship +QtyToReceive=Qty to receive +QtyReceived=Qty received +QtyInOtherShipments=Qty in other shipments +KeepToShip=Remain to ship +KeepToShipShort=Remain +OtherSendingsForSameOrder=Other shipments for this order +SendingsAndReceivingForSameOrder=Shipments and receipts for this order +SendingsToValidate=Shipments to validate +StatusSendingCanceled=Canceled +StatusSendingDraft=Draft +StatusSendingValidated=Validated (products to ship or already shipped) +StatusSendingProcessed=Processed +StatusSendingDraftShort=Draft +StatusSendingValidatedShort=Validated +StatusSendingProcessedShort=Processed +SendingSheet=Shipment sheet +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=Warning, no products waiting to be shipped. +StatsOnShipmentsOnlyValidated=Statistics conducted on shipments only validated. Date used is date of validation of shipment (planed delivery date is not always known). +DateDeliveryPlanned=Planned date of delivery +RefDeliveryReceipt=Ref delivery receipt +StatusReceipt=Status delivery receipt +DateReceived=Date delivery received +ClassifyReception=Classify reception +SendShippingByEMail=Send shipment by email +SendShippingRef=Submission of shipment %s +ActionsOnShipping=Events on shipment +LinkToTrackYourPackage=Link to track your package +ShipmentCreationIsDoneFromOrder=For the moment, creation of a new shipment is done from the order card. +ShipmentLine=Shipment line +ProductQtyInCustomersOrdersRunning=Product quantity from open sales orders +ProductQtyInSuppliersOrdersRunning=Product quantity from open purchase orders +ProductQtyInShipmentAlreadySent=Product quantity from open sales order already sent +ProductQtyInSuppliersShipmentAlreadyRecevied=Product quantity from open purchase orders already received +NoProductToShipFoundIntoStock=No product to ship found in warehouse %s. Correct stock or go back to choose another warehouse. +WeightVolShort=Weight/Vol. +ValidateOrderFirstBeforeShipment=You must first validate the order before being able to make shipments. + +# Sending methods +# ModelDocument +DocumentModelTyphon=More complete document model for delivery receipts (logo...) +Error_EXPEDITION_ADDON_NUMBER_NotDefined=Constant EXPEDITION_ADDON_NUMBER not defined +SumOfProductVolumes=Sum of product volumes +SumOfProductWeights=Sum of product weights + +# warehouse details +DetailWarehouseNumber= Warehouse details +DetailWarehouseFormat= W:%s (Qty: %d) diff --git a/htdocs/langs/zh_HK/sms.lang b/htdocs/langs/zh_HK/sms.lang new file mode 100644 index 00000000000..055085eb16a --- /dev/null +++ b/htdocs/langs/zh_HK/sms.lang @@ -0,0 +1,51 @@ +# Dolibarr language file - Source file is en_US - sms +Sms=Sms +SmsSetup=SMS setup +SmsDesc=This page allows you to define global options on SMS features +SmsCard=SMS Card +AllSms=All SMS campaigns +SmsTargets=Targets +SmsRecipients=Targets +SmsRecipient=Target +SmsTitle=Description +SmsFrom=Sender +SmsTo=Target +SmsTopic=Topic of SMS +SmsText=Message +SmsMessage=SMS Message +ShowSms=Show SMS +ListOfSms=List SMS campaigns +NewSms=New SMS campaign +EditSms=Edit SMS +ResetSms=New sending +DeleteSms=Delete SMS campaign +DeleteASms=Remove a SMS campaign +PreviewSms=Previuw SMS +PrepareSms=Prepare SMS +CreateSms=Create SMS +SmsResult=Result of SMS sending +TestSms=Test SMS +ValidSms=Validate SMS +ApproveSms=Approve SMS +SmsStatusDraft=Draft +SmsStatusValidated=Validated +SmsStatusApproved=Approved +SmsStatusSent=Sent +SmsStatusSentPartialy=Sent partially +SmsStatusSentCompletely=Sent completely +SmsStatusError=Error +SmsStatusNotSent=Not sent +SmsSuccessfulySent=SMS correctly sent (from %s to %s) +ErrorSmsRecipientIsEmpty=Number of target is empty +WarningNoSmsAdded=No new phone number to add to target list +ConfirmValidSms=Do you confirm validation of this campaign? +NbOfUniqueSms=No. of unique phone numbers +NbOfSms=No. of phone numbers +ThisIsATestMessage=This is a test message +SendSms=Send SMS +SmsInfoCharRemain=No. of remaining characters +SmsInfoNumero= (international format i.e.: +33899701761) +DelayBeforeSending=Delay before sending (minutes) +SmsNoPossibleSenderFound=No sender available. Check setup of your SMS provider. +SmsNoPossibleRecipientFound=No target available. Check setup of your SMS provider. +DisableStopIfSupported=Disable STOP message (if supported) diff --git a/htdocs/langs/zh_HK/stocks.lang b/htdocs/langs/zh_HK/stocks.lang new file mode 100644 index 00000000000..9856649b834 --- /dev/null +++ b/htdocs/langs/zh_HK/stocks.lang @@ -0,0 +1,220 @@ +# Dolibarr language file - Source file is en_US - stocks +WarehouseCard=Warehouse card +Warehouse=Warehouse +Warehouses=Warehouses +ParentWarehouse=Parent warehouse +NewWarehouse=New warehouse / Stock Location +WarehouseEdit=Modify warehouse +MenuNewWarehouse=New warehouse +WarehouseSource=Source warehouse +WarehouseSourceNotDefined=No warehouse defined, +AddWarehouse=Create warehouse +AddOne=Add one +DefaultWarehouse=Default warehouse +WarehouseTarget=Target warehouse +ValidateSending=Delete sending +CancelSending=Cancel sending +DeleteSending=Delete sending +Stock=Stock +Stocks=Stocks +StocksByLotSerial=Stocks by lot/serial +LotSerial=Lots/Serials +LotSerialList=List of lot/serials +Movements=Movements +ErrorWarehouseRefRequired=Warehouse reference name is required +ListOfWarehouses=List of warehouses +ListOfStockMovements=List of stock movements +ListOfInventories=List of inventories +MovementId=Movement ID +StockMovementForId=Movement ID %d +ListMouvementStockProject=List of stock movements associated to project +StocksArea=Warehouses area +AllWarehouses=All warehouses +IncludeAlsoDraftOrders=Include also draft orders +Location=Location +LocationSummary=Short name location +NumberOfDifferentProducts=Number of different products +NumberOfProducts=Total number of products +LastMovement=Latest movement +LastMovements=Latest movements +Units=Units +Unit=Unit +StockCorrection=Stock correction +CorrectStock=Correct stock +StockTransfer=Stock transfer +TransferStock=Transfer stock +MassStockTransferShort=Mass stock transfer +StockMovement=Stock movement +StockMovements=Stock movements +NumberOfUnit=Number of units +UnitPurchaseValue=Unit purchase price +StockTooLow=Stock too low +StockLowerThanLimit=Stock lower than alert limit (%s) +EnhancedValue=Value +PMPValue=Weighted average price +PMPValueShort=WAP +EnhancedValueOfWarehouses=Warehouses value +UserWarehouseAutoCreate=Create a user warehouse automatically when creating a user +AllowAddLimitStockByWarehouse=Manage also value for minimum and desired stock per pairing (product-warehouse) in addition to the value for minimum and desired stock per product +IndependantSubProductStock=Product stock and subproduct stock are independent +QtyDispatched=Quantity dispatched +QtyDispatchedShort=Qty dispatched +QtyToDispatchShort=Qty to dispatch +OrderDispatch=Item receipts +RuleForStockManagementDecrease=Choose Rule for automatic stock decrease (manual decrease is always possible, even if an automatic decrease rule is activated) +RuleForStockManagementIncrease=Choose Rule for automatic stock increase (manual increase is always possible, even if an automatic increase rule is activated) +DeStockOnBill=Decrease real stocks on validation of customer invoice/credit note +DeStockOnValidateOrder=Decrease real stocks on validation of sales order +DeStockOnShipment=Decrease real stocks on shipping validation +DeStockOnShipmentOnClosing=Decrease real stocks when shipping is set to closed +ReStockOnBill=Increase real stocks on validation of vendor invoice/credit note +ReStockOnValidateOrder=Increase real stocks on purchase order approval +ReStockOnDispatchOrder=Increase real stocks on manual dispatching into warehouse, after purchase order receipt of goods +StockOnReception=Increase real stocks on validation of reception +StockOnReceptionOnClosing=Increase real stocks when reception is set to closed +OrderStatusNotReadyToDispatch=Order has not yet or no more a status that allows dispatching of products in stock warehouses. +StockDiffPhysicTeoric=Explanation for difference between physical and virtual stock +NoPredefinedProductToDispatch=No predefined products for this object. So no dispatching in stock is required. +DispatchVerb=Dispatch +StockLimitShort=Limit for alert +StockLimit=Stock limit for alert +StockLimitDesc=(empty) means no warning.
    0 can be used for a warning as soon as stock is empty. +PhysicalStock=Physical Stock +RealStock=Real Stock +RealStockDesc=Physical/real stock is the stock currently in the warehouses. +RealStockWillAutomaticallyWhen=The real stock will be modified according to this rule (as defined in the Stock module): +VirtualStock=Virtual stock +VirtualStockDesc=Virtual stock is the calculated stock available once all open/pending actions (that affect stocks) are closed (purchase orders received, sales orders shipped etc.) +IdWarehouse=Id warehouse +DescWareHouse=Description warehouse +LieuWareHouse=Localisation warehouse +WarehousesAndProducts=Warehouses and products +WarehousesAndProductsBatchDetail=Warehouses and products (with detail per lot/serial) +AverageUnitPricePMPShort=Weighted average input price +AverageUnitPricePMP=Weighted average input price +SellPriceMin=Selling Unit Price +EstimatedStockValueSellShort=Value for sell +EstimatedStockValueSell=Value for sell +EstimatedStockValueShort=Input stock value +EstimatedStockValue=Input stock value +DeleteAWarehouse=Delete a warehouse +ConfirmDeleteWarehouse=Are you sure you want to delete the warehouse %s? +PersonalStock=Personal stock %s +ThisWarehouseIsPersonalStock=This warehouse represents personal stock of %s %s +SelectWarehouseForStockDecrease=Choose warehouse to use for stock decrease +SelectWarehouseForStockIncrease=Choose warehouse to use for stock increase +NoStockAction=No stock action +DesiredStock=Desired Stock +DesiredStockDesc=This stock amount will be the value used to fill the stock by replenishment feature. +StockToBuy=To order +Replenishment=Replenishment +ReplenishmentOrders=Replenishment orders +VirtualDiffersFromPhysical=According to increase/decrease stock options, physical stock and virtual stock (physical + current orders) may differ +UseVirtualStockByDefault=Use virtual stock by default, instead of physical stock, for replenishment feature +UseVirtualStock=Use virtual stock +UsePhysicalStock=Use physical stock +CurentSelectionMode=Current selection mode +CurentlyUsingVirtualStock=Virtual stock +CurentlyUsingPhysicalStock=Physical stock +RuleForStockReplenishment=Rule for stocks replenishment +SelectProductWithNotNullQty=Select at least one product with a qty not null and a vendor +AlertOnly= Alerts only +WarehouseForStockDecrease=The warehouse %s will be used for stock decrease +WarehouseForStockIncrease=The warehouse %s will be used for stock increase +ForThisWarehouse=For this warehouse +ReplenishmentStatusDesc=This is a list of all products with a stock lower than desired stock (or lower than alert value if checkbox "alert only" is checked). Using the checkbox, you can create purchase orders to fill the difference. +ReplenishmentOrdersDesc=This is a list of all open purchase orders including predefined products. Only open orders with predefined products, so orders that may affect stocks, are visible here. +Replenishments=Replenishments +NbOfProductBeforePeriod=Quantity of product %s in stock before selected period (< %s) +NbOfProductAfterPeriod=Quantity of product %s in stock after selected period (> %s) +MassMovement=Mass movement +SelectProductInAndOutWareHouse=Select a product, a quantity, a source warehouse and a target warehouse, then click "%s". Once this is done for all required movements, click onto "%s". +RecordMovement=Record transfer +ReceivingForSameOrder=Receipts for this order +StockMovementRecorded=Stock movements recorded +RuleForStockAvailability=Rules on stock requirements +StockMustBeEnoughForInvoice=Stock level must be enough to add product/service to invoice (check is done on current real stock when adding a line into invoice whatever the rule for automatic stock change) +StockMustBeEnoughForOrder=Stock level must be enough to add product/service to order (check is done on current real stock when adding a line into order whatever the rule for automatic stock change) +StockMustBeEnoughForShipment= Stock level must be enough to add product/service to shipment (check is done on current real stock when adding a line into shipment whatever the rule for automatic stock change) +MovementLabel=Label of movement +TypeMovement=Type of movement +DateMovement=Date of movement +InventoryCode=Movement or inventory code +IsInPackage=Contained into package +WarehouseAllowNegativeTransfer=Stock can be negative +qtyToTranferIsNotEnough=You don't have enough stock from your source warehouse and your setup does not allow negative stocks. +qtyToTranferLotIsNotEnough=You don't have enough stock, for this lot number, from your source warehouse and your setup does not allow negative stocks (Qty for product '%s' with lot '%s' is %s in warehouse '%s'). +ShowWarehouse=Show warehouse +MovementCorrectStock=Stock correction for product %s +MovementTransferStock=Stock transfer of product %s into another warehouse +InventoryCodeShort=Inv./Mov. code +NoPendingReceptionOnSupplierOrder=No pending reception due to open purchase order +ThisSerialAlreadyExistWithDifferentDate=This lot/serial number (%s) already exists but with different eatby or sellby date (found %s but you enter %s). +OpenAll=Open for all actions +OpenInternal=Open only for internal actions +UseDispatchStatus=Use a dispatch status (approve/refuse) for product lines on purchase order reception +OptionMULTIPRICESIsOn=Option "several prices per segment" is on. It means a product has several selling price so value for sell can't be calculated +ProductStockWarehouseCreated=Stock limit for alert and desired optimal stock correctly created +ProductStockWarehouseUpdated=Stock limit for alert and desired optimal stock correctly updated +ProductStockWarehouseDeleted=Stock limit for alert and desired optimal stock correctly deleted +AddNewProductStockWarehouse=Set new limit for alert and desired optimal stock +AddStockLocationLine=Decrease quantity then click to add another warehouse for this product +InventoryDate=Inventory date +NewInventory=New inventory +inventorySetup = Inventory Setup +inventoryCreatePermission=Create new inventory +inventoryReadPermission=View inventories +inventoryWritePermission=Update inventories +inventoryValidatePermission=Validate inventory +inventoryTitle=Inventory +inventoryListTitle=Inventories +inventoryListEmpty=No inventory in progress +inventoryCreateDelete=Create/Delete inventory +inventoryCreate=Create new +inventoryEdit=Edit +inventoryValidate=Validated +inventoryDraft=Running +inventorySelectWarehouse=Warehouse choice +inventoryConfirmCreate=Create +inventoryOfWarehouse=Inventory for warehouse: %s +inventoryErrorQtyAdd=Error: one quantity is less than zero +inventoryMvtStock=By inventory +inventoryWarningProductAlreadyExists=This product is already into list +SelectCategory=Category filter +SelectFournisseur=Vendor filter +inventoryOnDate=Inventory +INVENTORY_DISABLE_VIRTUAL=Virtual product (kit): do not decrement stock of a child product +INVENTORY_USE_MIN_PA_IF_NO_LAST_PA=Use the buy price if no last buy price can be found +INVENTORY_USE_INVENTORY_DATE_FOR_DATE_OF_MVT=Stock movements will have the date of inventory (instead of the date of inventory validation) +inventoryChangePMPPermission=Allow to change PMP value for a product +ColumnNewPMP=New unit PMP +OnlyProdsInStock=Do not add product without stock +TheoricalQty=Theorique qty +TheoricalValue=Theorique qty +LastPA=Last BP +CurrentPA=Curent BP +RecordedQty=Recorded Qty +RealQty=Real Qty +RealValue=Real Value +RegulatedQty=Regulated Qty +AddInventoryProduct=Add product to inventory +AddProduct=Add +ApplyPMP=Apply PMP +FlushInventory=Flush inventory +ConfirmFlushInventory=Do you confirm this action? +InventoryFlushed=Inventory flushed +ExitEditMode=Exit edition +inventoryDeleteLine=Delete line +RegulateStock=Regulate Stock +ListInventory=List +StockSupportServices=Stock management supports Services +StockSupportServicesDesc=By default, you can stock only products of type "product". You may also stock a product of type "service" if both module Services and this option are enabled. +ReceiveProducts=Receive items +StockIncreaseAfterCorrectTransfer=Increase by correction/transfer +StockDecreaseAfterCorrectTransfer=Decrease by correction/transfer +StockIncrease=Stock increase +StockDecrease=Stock decrease +InventoryForASpecificWarehouse=Inventory for a specific warehouse +InventoryForASpecificProduct=Inventory for a specific product +StockIsRequiredToChooseWhichLotToUse=Stock is required to choose which lot to use +ForceTo=Force to diff --git a/htdocs/langs/zh_HK/stripe.lang b/htdocs/langs/zh_HK/stripe.lang new file mode 100644 index 00000000000..844762040af --- /dev/null +++ b/htdocs/langs/zh_HK/stripe.lang @@ -0,0 +1,72 @@ +# Dolibarr language file - Source file is en_US - stripe +StripeSetup=Stripe module setup +StripeDesc=Offer customers a Stripe online payment page for payments with credit/cebit cards via Stripe. This can be used to allow your customers to make ad-hoc payments or for payments related to a particular Dolibarr object (invoice, order, ...) +StripeOrCBDoPayment=Pay with credit card or Stripe +FollowingUrlAreAvailableToMakePayments=Following URLs are available to offer a page to a customer to make a payment on Dolibarr objects +PaymentForm=Payment form +WelcomeOnPaymentPage=Welcome to our online payment service +ThisScreenAllowsYouToPay=This screen allow you to make an online payment to %s. +ThisIsInformationOnPayment=This is information on payment to do +ToComplete=To complete +YourEMail=Email to receive payment confirmation +STRIPE_PAYONLINE_SENDEMAIL=Email notification after a payment attempt (success or fail) +Creditor=Creditor +PaymentCode=Payment code +StripeDoPayment=Pay with Stripe +YouWillBeRedirectedOnStripe=You will be redirected on secured Stripe page to input you credit card information +Continue=Next +ToOfferALinkForOnlinePayment=URL for %s payment +ToOfferALinkForOnlinePaymentOnOrder=URL to offer a %s online payment page for a sales order +ToOfferALinkForOnlinePaymentOnInvoice=URL to offer a %s online payment page for a customer invoice +ToOfferALinkForOnlinePaymentOnContractLine=URL to offer a %s online payment page for a contract line +ToOfferALinkForOnlinePaymentOnFreeAmount=URL to offer a %s online payment page of any amount with no existing object +ToOfferALinkForOnlinePaymentOnMemberSubscription=URL to offer a %s online payment page for a member subscription +ToOfferALinkForOnlinePaymentOnDonation=URL to offer a %s online payment page for payment of a donation +YouCanAddTagOnUrl=You can also add url parameter &tag=value to any of those URL (mandatory only for payment not linked to an object) to add your own payment comment tag.
    For the URL of payments with no existing object, you may also add the parameter &noidempotency=1 so the same link with same tag can be used several times (some payment mode may limit the payment to 1 for each different link without this parameter) +SetupStripeToHavePaymentCreatedAutomatically=Setup your Stripe with url %s to have payment created automatically when validated by Stripe. +AccountParameter=Account parameters +UsageParameter=Usage parameters +InformationToFindParameters=Help to find your %s account information +STRIPE_CGI_URL_V2=Url of Stripe CGI module for payment +VendorName=Name of vendor +CSSUrlForPaymentForm=CSS style sheet url for payment form +NewStripePaymentReceived=New Stripe payment received +NewStripePaymentFailed=New Stripe payment tried but failed +FailedToChargeCard=Failed to charge card +STRIPE_TEST_SECRET_KEY=Secret test key +STRIPE_TEST_PUBLISHABLE_KEY=Publishable test key +STRIPE_TEST_WEBHOOK_KEY=Webhook test key +STRIPE_LIVE_SECRET_KEY=Secret live key +STRIPE_LIVE_PUBLISHABLE_KEY=Publishable live key +STRIPE_LIVE_WEBHOOK_KEY=Webhook live key +ONLINE_PAYMENT_WAREHOUSE=Stock to use for stock decrease when online payment is done
    (TODO When option to decrease stock is done on an action on invoice and the online payment generate itself the invoice ?) +StripeLiveEnabled=Stripe live enabled (otherwise test/sandbox mode) +StripeImportPayment=Import Stripe payments +ExampleOfTestCreditCard=Example of credit card for test: %s => valid, %s => error CVC, %s => expired, %s => charge fails +StripeGateways=Stripe gateways +OAUTH_STRIPE_TEST_ID=Stripe Connect Client ID (ca_...) +OAUTH_STRIPE_LIVE_ID=Stripe Connect Client ID (ca_...) +BankAccountForBankTransfer=Bank account for fund payouts +StripeAccount=Stripe account +StripeChargeList=List of Stripe charges +StripeTransactionList=List of Stripe transactions +StripeCustomerId=Stripe customer id +StripePaymentModes=Stripe payment modes +LocalID=Local ID +StripeID=Stripe ID +NameOnCard=Name on card +CardNumber=Card Number +ExpiryDate=Expiry Date +CVN=CVN +DeleteACard=Delete Card +ConfirmDeleteCard=Are you sure you want to delete this Credit or Debit card? +CreateCustomerOnStripe=Create customer on Stripe +CreateCardOnStripe=Create card on Stripe +ShowInStripe=Show in Stripe +StripeUserAccountForActions=User account to use for email notification of some Stripe events (Stripe payouts) +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... +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/zh_HK/supplier_proposal.lang b/htdocs/langs/zh_HK/supplier_proposal.lang new file mode 100644 index 00000000000..ce5bdf0425a --- /dev/null +++ b/htdocs/langs/zh_HK/supplier_proposal.lang @@ -0,0 +1,54 @@ +# Dolibarr language file - Source file is en_US - supplier_proposal +SupplierProposal=Vendor commercial proposals +supplier_proposalDESC=Manage price requests to suppliers +SupplierProposalNew=New price request +CommRequest=Price request +CommRequests=Price requests +SearchRequest=Find a request +DraftRequests=Draft requests +SupplierProposalsDraft=Draft vendor proposals +LastModifiedRequests=Latest %s modified price requests +RequestsOpened=Open price requests +SupplierProposalArea=Vendor proposals area +SupplierProposalShort=Vendor proposal +SupplierProposals=Vendor proposals +SupplierProposalsShort=Vendor proposals +NewAskPrice=New price request +ShowSupplierProposal=Show price request +AddSupplierProposal=Create a price request +SupplierProposalRefFourn=Vendor ref +SupplierProposalDate=Delivery date +SupplierProposalRefFournNotice=Before closing to "Accepted", think to grasp suppliers references. +ConfirmValidateAsk=Are you sure you want to validate this price request under name %s? +DeleteAsk=Delete request +ValidateAsk=Validate request +SupplierProposalStatusDraft=Draft (needs to be validated) +SupplierProposalStatusValidated=Validated (request is open) +SupplierProposalStatusClosed=Closed +SupplierProposalStatusSigned=Accepted +SupplierProposalStatusNotSigned=Refused +SupplierProposalStatusDraftShort=Draft +SupplierProposalStatusValidatedShort=Validated +SupplierProposalStatusClosedShort=Closed +SupplierProposalStatusSignedShort=Accepted +SupplierProposalStatusNotSignedShort=Refused +CopyAskFrom=Create a price request by copying an existing request +CreateEmptyAsk=Create blank request +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=Send price request by mail +SendAskRef=Sending the price request %s +SupplierProposalCard=Request card +ConfirmDeleteAsk=Are you sure you want to delete this price request %s? +ActionsOnSupplierProposal=Events on price request +DocModelAuroreDescription=A complete request model (logo...) +CommercialAsk=Price request +DefaultModelSupplierProposalCreate=Default model creation +DefaultModelSupplierProposalToBill=Default template when closing a price request (accepted) +DefaultModelSupplierProposalClosed=Default template when closing a price request (refused) +ListOfSupplierProposals=List of vendor proposal requests +ListSupplierProposalsAssociatedProject=List of vendor proposals associated with project +SupplierProposalsToClose=Vendor proposals to close +SupplierProposalsToProcess=Vendor proposals to process +LastSupplierProposals=Latest %s price requests +AllPriceRequests=All requests diff --git a/htdocs/langs/zh_HK/suppliers.lang b/htdocs/langs/zh_HK/suppliers.lang new file mode 100644 index 00000000000..b69b11272b4 --- /dev/null +++ b/htdocs/langs/zh_HK/suppliers.lang @@ -0,0 +1,47 @@ +# Dolibarr language file - Source file is en_US - vendors +Suppliers=Vendors +SuppliersInvoice=Vendor invoice +ShowSupplierInvoice=Show Vendor Invoice +NewSupplier=New vendor +History=History +ListOfSuppliers=List of vendors +ShowSupplier=Show vendor +OrderDate=Order date +BuyingPriceMin=Best buying price +BuyingPriceMinShort=Best buying price +TotalBuyingPriceMinShort=Total of subproducts buying prices +TotalSellingPriceMinShort=Total of subproducts selling prices +SomeSubProductHaveNoPrices=Some sub-products have no price defined +AddSupplierPrice=Add buying price +ChangeSupplierPrice=Change buying price +SupplierPrices=Vendor prices +ReferenceSupplierIsAlreadyAssociatedWithAProduct=This vendor reference is already associated with a product: %s +NoRecordedSuppliers=No vendor recorded +SupplierPayment=Vendor payment +SuppliersArea=Vendor area +RefSupplierShort=Ref. vendor +Availability=Availability +ExportDataset_fournisseur_1=Vendor invoices and invoice details +ExportDataset_fournisseur_2=Vendor invoices and payments +ExportDataset_fournisseur_3=Purchase orders and order details +ApproveThisOrder=Approve this order +ConfirmApproveThisOrder=Are you sure you want to approve order %s? +DenyingThisOrder=Deny this order +ConfirmDenyingThisOrder=Are you sure you want to deny this order %s? +ConfirmCancelThisOrder=Are you sure you want to cancel this order %s? +AddSupplierOrder=Create Purchase Order +AddSupplierInvoice=Create vendor invoice +ListOfSupplierProductForSupplier=List of products and prices for vendor %s +SentToSuppliers=Sent to vendors +ListOfSupplierOrders=List of purchase orders +MenuOrdersSupplierToBill=Purchase orders to invoice +NbDaysToDelivery=Delivery delay (days) +DescNbDaysToDelivery=The longest delivery delay of the products from this order +SupplierReputation=Vendor reputation +DoNotOrderThisProductToThisSupplier=Do not order +NotTheGoodQualitySupplier=Low quality +ReputationForThisProduct=Reputation +BuyerName=Buyer name +AllProductServicePrices=All product / service prices +AllProductReferencesOfSupplier=All product / service references of vendor +BuyingPriceNumShort=Vendor prices diff --git a/htdocs/langs/zh_HK/ticket.lang b/htdocs/langs/zh_HK/ticket.lang new file mode 100644 index 00000000000..80518c3401a --- /dev/null +++ b/htdocs/langs/zh_HK/ticket.lang @@ -0,0 +1,305 @@ +# en_US lang file for module ticket +# Copyright (C) 2013 Jean-François FERRY +# +# 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 . + +# +# Generic +# + +Module56000Name=Tickets +Module56000Desc=Ticket system for issue or request management + +Permission56001=See tickets +Permission56002=Modify tickets +Permission56003=Delete tickets +Permission56004=Manage tickets +Permission56005=See tickets of all third parties (not effective for external users, always be limited to the third party they depend on) + +TicketDictType=Ticket - Types +TicketDictCategory=Ticket - Groupes +TicketDictSeverity=Ticket - Severities +TicketDictResolution=Ticket - Resolution +TicketTypeShortBUGSOFT=Dysfonctionnement logiciel +TicketTypeShortBUGHARD=Dysfonctionnement matériel +TicketTypeShortCOM=Commercial question + +TicketTypeShortHELP=Request for functionnal help +TicketTypeShortISSUE=Issue, bug or problem +TicketTypeShortREQUEST=Change or enhancement request +TicketTypeShortPROJET=Project +TicketTypeShortOTHER=Other + +TicketSeverityShortLOW=Low +TicketSeverityShortNORMAL=Normal +TicketSeverityShortHIGH=High +TicketSeverityShortBLOCKING=Critical/Blocking + +ErrorBadEmailAddress=Field '%s' incorrect +MenuTicketMyAssign=My tickets +MenuTicketMyAssignNonClosed=My open tickets +MenuListNonClosed=Open tickets + +TypeContact_ticket_internal_CONTRIBUTOR=Contributor +TypeContact_ticket_internal_SUPPORTTEC=Assigned user +TypeContact_ticket_external_SUPPORTCLI=Customer contact / incident tracking +TypeContact_ticket_external_CONTRIBUTOR=External contributor + +OriginEmail=Email source +Notify_TICKET_SENTBYMAIL=Send ticket message by email + +# Status +NotRead=Not read +Read=Read +Assigned=Assigned +InProgress=In progress +NeedMoreInformation=Waiting for information +Answered=Answered +Waiting=Waiting +Closed=Closed +Deleted=Deleted + +# Dict +Type=Type +Category=Analytic code +Severity=Severity + +# Email templates +MailToSendTicketMessage=To send email from ticket message + +# +# Admin page +# +TicketSetup=Ticket module setup +TicketSettings=Settings +TicketSetupPage= +TicketPublicAccess=A public interface requiring no identification is available at the following url +TicketSetupDictionaries=The type of ticket, severity and analytic codes are configurable from dictionaries +TicketParamModule=Module variable setup +TicketParamMail=Email setup +TicketEmailNotificationFrom=Notification email from +TicketEmailNotificationFromHelp=Used into ticket message answer by example +TicketEmailNotificationTo=Notifications email to +TicketEmailNotificationToHelp=Send email notifications to this address. +TicketNewEmailBodyLabel=Text message sent after creating a ticket +TicketNewEmailBodyHelp=The text specified here will be inserted into the email confirming the creation of a new ticket from the public interface. Information on the consultation of the ticket are automatically added. +TicketParamPublicInterface=Public interface setup +TicketsEmailMustExist=Require an existing email address to create a ticket +TicketsEmailMustExistHelp=In the public interface, the email address should already be filled in the database to create a new ticket. +PublicInterface=Public interface +TicketUrlPublicInterfaceLabelAdmin=Alternative URL for public interface +TicketUrlPublicInterfaceHelpAdmin=It is possible to define an alias to the web server and thus make available the public interface with another URL (the server must act as a proxy on this new URL) +TicketPublicInterfaceTextHomeLabelAdmin=Welcome text of the public interface +TicketPublicInterfaceTextHome=You can create a support ticket or view existing from its identifier tracking ticket. +TicketPublicInterfaceTextHomeHelpAdmin=The text defined here will appear on the home page of the public interface. +TicketPublicInterfaceTopicLabelAdmin=Interface title +TicketPublicInterfaceTopicHelp=This text will appear as the title of the public interface. +TicketPublicInterfaceTextHelpMessageLabelAdmin=Help text to the message entry +TicketPublicInterfaceTextHelpMessageHelpAdmin=This text will appear above the message input area of the user. +ExtraFieldsTicket=Extra attributes +TicketCkEditorEmailNotActivated=HTML editor is not activated. Please put FCKEDITOR_ENABLE_MAIL content to 1 to get it. +TicketsDisableEmail=Do not send emails for ticket creation or message recording +TicketsDisableEmailHelp=By default, emails are sent when new tickets or messages created. Enable this option to disable *all* email notifications +TicketsLogEnableEmail=Enable log by email +TicketsLogEnableEmailHelp=At each change, an email will be sent **to each contact** associated with the ticket. +TicketParams=Params +TicketsShowModuleLogo=Display the logo of the module in the public interface +TicketsShowModuleLogoHelp=Enable this option to hide the logo module in the pages of the public interface +TicketsShowCompanyLogo=Display the logo of the company in the public interface +TicketsShowCompanyLogoHelp=Enable this option to hide the logo of the main company in the pages of the public interface +TicketsEmailAlsoSendToMainAddress=Also send notification to main email address +TicketsEmailAlsoSendToMainAddressHelp=Enable this option to send an email to "Notification email from" address (see setup below) +TicketsLimitViewAssignedOnly=Restrict the display to tickets assigned to the current user (not effective for external users, always be limited to the third party they depend on) +TicketsLimitViewAssignedOnlyHelp=Only tickets assigned to the current user will be visible. Does not apply to a user with tickets management rights. +TicketsActivatePublicInterface=Activate public interface +TicketsActivatePublicInterfaceHelp=Public interface allow any visitors to create tickets. +TicketsAutoAssignTicket=Automatically assign the user who created the ticket +TicketsAutoAssignTicketHelp=When creating a ticket, the user can be automatically assigned to the ticket. +TicketNumberingModules=Tickets numbering module +TicketNotifyTiersAtCreation=Notify third party at creation +TicketGroup=Group +TicketsDisableCustomerEmail=Always disable emails when a ticket is created from public interface +# +# Index & list page +# +TicketsIndex=Tickets area +TicketList=List of tickets +TicketAssignedToMeInfos=This page display ticket list created by or assigned to current user +NoTicketsFound=No ticket found +NoUnreadTicketsFound=No unread ticket found +TicketViewAllTickets=View all tickets +TicketViewNonClosedOnly=View only open tickets +TicketStatByStatus=Tickets by status +OrderByDateAsc=Sort by ascending date +OrderByDateDesc=Sort by descending date +ShowAsConversation=Show as conversation list +MessageListViewType=Show as table list + +# +# Ticket card +# +Ticket=Ticket +TicketCard=Ticket card +CreateTicket=Create ticket +EditTicket=Edit ticket +TicketsManagement=Tickets Management +CreatedBy=Created by +NewTicket=New Ticket +SubjectAnswerToTicket=Ticket answer +TicketTypeRequest=Request type +TicketCategory=Analytic code +SeeTicket=See ticket +TicketMarkedAsRead=Ticket has been marked as read +TicketReadOn=Read on +TicketCloseOn=Closing date +MarkAsRead=Mark ticket as read +TicketHistory=Ticket history +AssignUser=Assign to user +TicketAssigned=Ticket is now assigned +TicketChangeType=Change type +TicketChangeCategory=Change analytic code +TicketChangeSeverity=Change severity +TicketAddMessage=Add a message +AddMessage=Add a message +MessageSuccessfullyAdded=Ticket added +TicketMessageSuccessfullyAdded=Message successfully added +TicketMessagesList=Message list +NoMsgForThisTicket=No message for this ticket +Properties=Classification +LatestNewTickets=Latest %s newest tickets (not read) +TicketSeverity=Severity +ShowTicket=See ticket +RelatedTickets=Related tickets +TicketAddIntervention=Create intervention +CloseTicket=Close ticket +CloseATicket=Close a ticket +ConfirmCloseAticket=Confirm ticket closing +ConfirmDeleteTicket=Please confirm ticket deleting +TicketDeletedSuccess=Ticket deleted with success +TicketMarkedAsClosed=Ticket marked as closed +TicketDurationAuto=Calculated duration +TicketDurationAutoInfos=Duration calculated automatically from intervention related +TicketUpdated=Ticket updated +SendMessageByEmail=Send message by email +TicketNewMessage=New message +ErrorMailRecipientIsEmptyForSendTicketMessage=Recipient is empty. No email send +TicketGoIntoContactTab=Please go into "Contacts" tab to select them +TicketMessageMailIntro=Introduction +TicketMessageMailIntroHelp=This text is added only at the beginning of the email and will not be saved. +TicketMessageMailIntroLabelAdmin=Introduction to the message when sending email +TicketMessageMailIntroText=Hello,
    A new response was sent on a ticket that you contact. Here is the message:
    +TicketMessageMailIntroHelpAdmin=This text will be inserted before the text of the response to a ticket. +TicketMessageMailSignature=Signature +TicketMessageMailSignatureHelp=This text is added only at the end of the email and will not be saved. +TicketMessageMailSignatureText=

    Sincerely,

    --

    +TicketMessageMailSignatureLabelAdmin=Signature of response email +TicketMessageMailSignatureHelpAdmin=This text will be inserted after the response message. +TicketMessageHelp=Only this text will be saved in the message list on ticket card. +TicketMessageSubstitutionReplacedByGenericValues=Substitutions variables are replaced by generic values. +TimeElapsedSince=Time elapsed since +TicketTimeToRead=Time elapsed before read +TicketContacts=Contacts ticket +TicketDocumentsLinked=Documents linked to ticket +ConfirmReOpenTicket=Confirm reopen this ticket ? +TicketMessageMailIntroAutoNewPublicMessage=A new message was posted on the ticket with the subject %s: +TicketAssignedToYou=Ticket assigned +TicketAssignedEmailBody=You have been assigned the ticket #%s by %s +MarkMessageAsPrivate=Mark message as private +TicketMessagePrivateHelp=This message will not display to external users +TicketEmailOriginIssuer=Issuer at origin of the tickets +InitialMessage=Initial Message +LinkToAContract=Link to a contract +TicketPleaseSelectAContract=Select a contract +UnableToCreateInterIfNoSocid=Can not create an intervention when no third party is defined +TicketMailExchanges=Mail exchanges +TicketInitialMessageModified=Initial message modified +TicketMessageSuccesfullyUpdated=Message successfully updated +TicketChangeStatus=Change status +TicketConfirmChangeStatus=Confirm the status change: %s ? +TicketLogStatusChanged=Status changed: %s to %s +TicketNotNotifyTiersAtCreate=Not notify company at create +Unread=Unread +TicketNotCreatedFromPublicInterface=Not available. Ticket was not created from public interface. +PublicInterfaceNotEnabled=Public interface was not enabled +ErrorTicketRefRequired=Ticket reference name is required + +# +# Logs +# +TicketLogMesgReadBy=Ticket %s read by %s +NoLogForThisTicket=No log for this ticket yet +TicketLogAssignedTo=Ticket %s assigned to %s +TicketLogPropertyChanged=Ticket %s modified: classification from %s to %s +TicketLogClosedBy=Ticket %s closed by %s +TicketLogReopen=Ticket %s re-open + +# +# Public pages +# +TicketSystem=Ticket system +ShowListTicketWithTrackId=Display ticket list from track ID +ShowTicketWithTrackId=Display ticket from track ID +TicketPublicDesc=You can create a support ticket or check from an existing ID. +YourTicketSuccessfullySaved=Ticket has been successfully saved! +MesgInfosPublicTicketCreatedWithTrackId=A new ticket has been created with ID %s and Ref %s. +PleaseRememberThisId=Please keep the tracking number that we might ask you later. +TicketNewEmailSubject=Ticket creation confirmation - Ref %s (public ticket ID %s) +TicketNewEmailSubjectCustomer=New support ticket +TicketNewEmailBody=This is an automatic email to confirm you have registered a new ticket. +TicketNewEmailBodyCustomer=This is an automatic email to confirm a new ticket has just been created into your account. +TicketNewEmailBodyInfosTicket=Information for monitoring the ticket +TicketNewEmailBodyInfosTrackId=Ticket tracking number: %s +TicketNewEmailBodyInfosTrackUrl=You can view the progress of the ticket by clicking the link above. +TicketNewEmailBodyInfosTrackUrlCustomer=You can view the progress of the ticket in the specific interface by clicking the following link +TicketEmailPleaseDoNotReplyToThisEmail=Please do not reply directly to this email! Use the link to reply into the interface. +TicketPublicInfoCreateTicket=This form allows you to record a support ticket in our management system. +TicketPublicPleaseBeAccuratelyDescribe=Please accurately describe the problem. Provide the most information possible to allow us to correctly identify your request. +TicketPublicMsgViewLogIn=Please enter ticket tracking ID +TicketTrackId=Public Tracking ID +OneOfTicketTrackId=One of your tracking ID +ErrorTicketNotFound=Ticket with tracking ID %s not found! +Subject=Subject +ViewTicket=View ticket +ViewMyTicketList=View my ticket list +ErrorEmailMustExistToCreateTicket=Error: email address not found in our database +TicketNewEmailSubjectAdmin=New ticket created - Ref %s (public ticket ID %s) +TicketNewEmailBodyAdmin=

    Ticket has just been created with ID #%s, see information:

    +SeeThisTicketIntomanagementInterface=See ticket in management interface +TicketPublicInterfaceForbidden=The public interface for the tickets was not enabled +ErrorEmailOrTrackingInvalid=Bad value for tracking ID or email +OldUser=Old user +NewUser=New user +NumberOfTicketsByMonth=Number of tickets per month +NbOfTickets=Number of tickets +# notifications +TicketNotificationEmailSubject=Ticket %s updated +TicketNotificationEmailBody=This is an automatic message to notify you that ticket %s has just been updated +TicketNotificationRecipient=Notification recipient +TicketNotificationLogMessage=Log message +TicketNotificationEmailBodyInfosTrackUrlinternal=View ticket into interface +TicketNotificationNumberEmailSent=Notification email sent: %s + +ActionsOnTicket=Events on ticket + +# +# Boxes +# +BoxLastTicket=Latest created tickets +BoxLastTicketDescription=Latest %s created tickets +BoxLastTicketContent= +BoxLastTicketNoRecordedTickets=No recent unread tickets +BoxLastModifiedTicket=Latest modified tickets +BoxLastModifiedTicketDescription=Latest %s modified tickets +BoxLastModifiedTicketContent= +BoxLastModifiedTicketNoRecordedTickets=No recent modified tickets diff --git a/htdocs/langs/zh_HK/trips.lang b/htdocs/langs/zh_HK/trips.lang new file mode 100644 index 00000000000..654f14d6bf7 --- /dev/null +++ b/htdocs/langs/zh_HK/trips.lang @@ -0,0 +1,151 @@ +# Dolibarr language file - Source file is en_US - trips +ShowExpenseReport=Show expense report +Trips=Expense reports +TripsAndExpenses=Expenses reports +TripsAndExpensesStatistics=Expense reports statistics +TripCard=Expense report card +AddTrip=Create expense report +ListOfTrips=List of expense reports +ListOfFees=List of fees +TypeFees=Types of fees +ShowTrip=Show expense report +NewTrip=New expense report +LastExpenseReports=Latest %s expense reports +AllExpenseReports=All expense reports +CompanyVisited=Company/organization visited +FeesKilometersOrAmout=Amount or kilometers +DeleteTrip=Delete expense report +ConfirmDeleteTrip=Are you sure you want to delete this expense report? +ListTripsAndExpenses=List of expense reports +ListToApprove=Waiting for approval +ExpensesArea=Expense reports area +ClassifyRefunded=Classify 'Refunded' +ExpenseReportWaitingForApproval=A new expense report has been submitted for approval +ExpenseReportWaitingForApprovalMessage=A new expense report has been submitted and is waiting for approval.
    - User: %s
    - Period: %s
    Click here to validate: %s +ExpenseReportWaitingForReApproval=An expense report has been submitted for re-approval +ExpenseReportWaitingForReApprovalMessage=An expense report has been submitted and is waiting for re-approval.
    The %s, you refused to approve the expense report for this reason: %s.
    A new version has been proposed and waiting for your approval.
    - User: %s
    - Period: %s
    Click here to validate: %s +ExpenseReportApproved=An expense report was approved +ExpenseReportApprovedMessage=The expense report %s was approved.
    - User: %s
    - Approved by: %s
    Click here to show the expense report: %s +ExpenseReportRefused=An expense report was refused +ExpenseReportRefusedMessage=The expense report %s was refused.
    - User: %s
    - Refused by: %s
    - Motive for refusal: %s
    Click here to show the expense report: %s +ExpenseReportCanceled=An expense report was canceled +ExpenseReportCanceledMessage=The expense report %s was canceled.
    - User: %s
    - Canceled by: %s
    - Motive for cancellation: %s
    Click here to show the expense report: %s +ExpenseReportPaid=An expense report was paid +ExpenseReportPaidMessage=The expense report %s was paid.
    - User: %s
    - Paid by: %s
    Click here to show the expense report: %s +TripId=Id expense report +AnyOtherInThisListCanValidate=Person to inform for validation. +TripSociete=Information company +TripNDF=Informations expense report +PDFStandardExpenseReports=Standard template to generate a PDF document for expense report +ExpenseReportLine=Expense report line +TF_OTHER=Other +TF_TRIP=Transportation +TF_LUNCH=Lunch +TF_METRO=Metro +TF_TRAIN=Train +TF_BUS=Bus +TF_CAR=Car +TF_PEAGE=Toll +TF_ESSENCE=Fuel +TF_HOTEL=Hotel +TF_TAXI=Taxi +EX_KME=Mileage costs +EX_FUE=Fuel CV +EX_HOT=Hotel +EX_PAR=Parking CV +EX_TOL=Toll CV +EX_TAX=Various Taxes +EX_IND=Indemnity transportation subscription +EX_SUM=Maintenance supply +EX_SUO=Office supplies +EX_CAR=Car rental +EX_DOC=Documentation +EX_CUR=Customers receiving +EX_OTR=Other receiving +EX_POS=Postage +EX_CAM=CV maintenance and repair +EX_EMM=Employees meal +EX_GUM=Guests meal +EX_BRE=Breakfast +EX_FUE_VP=Fuel PV +EX_TOL_VP=Toll PV +EX_PAR_VP=Parking PV +EX_CAM_VP=PV maintenance and repair +DefaultCategoryCar=Default transportation mode +DefaultRangeNumber=Default range number +UploadANewFileNow=Upload a new document now +Error_EXPENSEREPORT_ADDON_NotDefined=Error, the rule for expense report numbering ref was not defined into setup of module 'Expense Report' +ErrorDoubleDeclaration=You have declared another expense report into a similar date range. +AucuneLigne=There is no expense report declared yet +ModePaiement=Payment mode +VALIDATOR=User responsible for approval +VALIDOR=Approved by +AUTHOR=Recorded by +AUTHORPAIEMENT=Paid by +REFUSEUR=Denied by +CANCEL_USER=Deleted by +MOTIF_REFUS=Reason +MOTIF_CANCEL=Reason +DATE_REFUS=Deny date +DATE_SAVE=Validation date +DATE_CANCEL=Cancelation date +DATE_PAIEMENT=Payment date +BROUILLONNER=Reopen +ExpenseReportRef=Ref. expense report +ValidateAndSubmit=Validate and submit for approval +ValidatedWaitingApproval=Validated (waiting for approval) +NOT_AUTHOR=You are not the author of this expense report. Operation cancelled. +ConfirmRefuseTrip=Are you sure you want to deny this expense report? +ValideTrip=Approve expense report +ConfirmValideTrip=Are you sure you want to approve this expense report? +PaidTrip=Pay an expense report +ConfirmPaidTrip=Are you sure you want to change status of this expense report to "Paid"? +ConfirmCancelTrip=Are you sure you want to cancel this expense report? +BrouillonnerTrip=Move back expense report to status "Draft" +ConfirmBrouillonnerTrip=Are you sure you want to move this expense report to status "Draft"? +SaveTrip=Validate expense report +ConfirmSaveTrip=Are you sure you want to validate this expense report? +NoTripsToExportCSV=No expense report to export for this period. +ExpenseReportPayment=Expense report payment +ExpenseReportsToApprove=Expense reports to approve +ExpenseReportsToPay=Expense reports to pay +ConfirmCloneExpenseReport=Are you sure you want to clone this expense report ? +ExpenseReportsIk=Expense report milles index +ExpenseReportsRules=Expense report rules +ExpenseReportIkDesc=You can modify the calculation of kilometers expense by category and range who they are previously defined. d is the distance in kilometers +ExpenseReportRulesDesc=You can create or update any rules of calculation. This part will be used when user will create a new expense report +expenseReportOffset=Offset +expenseReportCoef=Coefficient +expenseReportTotalForFive=Example with d = 5 +expenseReportRangeFromTo=from %d to %d +expenseReportRangeMoreThan=more than %d +expenseReportCoefUndefined=(value not defined) +expenseReportCatDisabled=Category disabled - see the c_exp_tax_cat dictionary +expenseReportRangeDisabled=Range disabled - see the c_exp_tax_range dictionay +expenseReportPrintExample=offset + (d x coef) = %s +ExpenseReportApplyTo=Apply to +ExpenseReportDomain=Domain to apply +ExpenseReportLimitOn=Limit on +ExpenseReportDateStart=Date start +ExpenseReportDateEnd=Date end +ExpenseReportLimitAmount=Limite amount +ExpenseReportRestrictive=Restrictive +AllExpenseReport=All type of expense report +OnExpense=Expense line +ExpenseReportRuleSave=Expense report rule saved +ExpenseReportRuleErrorOnSave=Error: %s +RangeNum=Range %d +ExpenseReportConstraintViolationError=Constraint violation id [%s]: %s is superior to %s %s +byEX_DAY=by day (limitation to %s) +byEX_MON=by month (limitation to %s) +byEX_YEA=by year (limitation to %s) +byEX_EXP=by line (limitation to %s) +ExpenseReportConstraintViolationWarning=Constraint violation id [%s]: %s is superior to %s %s +nolimitbyEX_DAY=by day (no limitation) +nolimitbyEX_MON=by month (no limitation) +nolimitbyEX_YEA=by year (no limitation) +nolimitbyEX_EXP=by line (no limitation) +CarCategory=Category of car +ExpenseRangeOffset=Offset amount: %s +RangeIk=Mileage range +AttachTheNewLineToTheDocument=Attach the line to an uploaded document diff --git a/htdocs/langs/zh_HK/users.lang b/htdocs/langs/zh_HK/users.lang new file mode 100644 index 00000000000..41a5ebd0981 --- /dev/null +++ b/htdocs/langs/zh_HK/users.lang @@ -0,0 +1,118 @@ +# Dolibarr language file - Source file is en_US - users +HRMArea=HRM area +UserCard=User card +GroupCard=Group card +Permission=Permission +Permissions=Permissions +EditPassword=Edit password +SendNewPassword=Regenerate and send password +SendNewPasswordLink=Send link to reset password +ReinitPassword=Regenerate password +PasswordChangedTo=Password changed to: %s +SubjectNewPassword=Your new password for %s +GroupRights=Group permissions +UserRights=User permissions +UserGUISetup=User Display Setup +DisableUser=Disable +DisableAUser=Disable a user +DeleteUser=Delete +DeleteAUser=Delete a user +EnableAUser=Enable a user +DeleteGroup=Delete +DeleteAGroup=Delete a group +ConfirmDisableUser=Are you sure you want to disable user %s? +ConfirmDeleteUser=Are you sure you want to delete user %s? +ConfirmDeleteGroup=Are you sure you want to delete group %s? +ConfirmEnableUser=Are you sure you want to enable user %s? +ConfirmReinitPassword=Are you sure you want to generate a new password for user %s? +ConfirmSendNewPassword=Are you sure you want to generate and send new password for user %s? +NewUser=New user +CreateUser=Create user +LoginNotDefined=Login is not defined. +NameNotDefined=Name is not defined. +ListOfUsers=List of users +SuperAdministrator=Super Administrator +SuperAdministratorDesc=Global administrator +AdministratorDesc=Administrator +DefaultRights=Default Permissions +DefaultRightsDesc=Define here the default permissions that are automatically granted to a new user (to modify permissions for existing users, go to the user card). +DolibarrUsers=Dolibarr users +LastName=Last name +FirstName=First name +ListOfGroups=List of groups +NewGroup=New group +CreateGroup=Create group +RemoveFromGroup=Remove from group +PasswordChangedAndSentTo=Password changed and sent to %s. +PasswordChangeRequest=Request to change password for %s +PasswordChangeRequestSent=Request to change password for %s sent to %s. +ConfirmPasswordReset=Confirm password reset +MenuUsersAndGroups=Users & Groups +LastGroupsCreated=Latest %s groups created +LastUsersCreated=Latest %s users created +ShowGroup=Show group +ShowUser=Show user +NonAffectedUsers=Non assigned users +UserModified=User modified successfully +PhotoFile=Photo file +ListOfUsersInGroup=List of users in this group +ListOfGroupsForUser=List of groups for this user +LinkToCompanyContact=Link to third party / contact +LinkedToDolibarrMember=Link to member +LinkedToDolibarrUser=Link to Dolibarr user +LinkedToDolibarrThirdParty=Link to Dolibarr third party +CreateDolibarrLogin=Create a user +CreateDolibarrThirdParty=Create a third party +LoginAccountDisableInDolibarr=Account disabled in Dolibarr. +UsePersonalValue=Use personal value +InternalUser=Internal user +ExportDataset_user_1=Users and their properties +DomainUser=Domain user %s +Reactivate=Reactivate +CreateInternalUserDesc=This form allows you to create an internal user in your company/organization. To create an external user (customer, vendor etc. ..), use the button 'Create Dolibarr User' from that third-party's contact card. +InternalExternalDesc=An internal user is a user that is part of your company/organization.
    An external user is a customer, vendor or other (Creating an external user for a third-party can be done from the contact record of the third-party).

    In both cases, permissions defines rights on Dolibarr, also external user can have a different menu manager than internal user (See Home - Setup - Display) +PermissionInheritedFromAGroup=Permission granted because inherited from one of a user's group. +Inherited=Inherited +UserWillBeInternalUser=Created user will be an internal user (because not linked to a particular third party) +UserWillBeExternalUser=Created user will be an external user (because linked to a particular third party) +IdPhoneCaller=Id phone caller +NewUserCreated=User %s created +NewUserPassword=Password change for %s +NewPasswordValidated=Your new password have been validated and must be used now to login. +EventUserModified=User %s modified +UserDisabled=User %s disabled +UserEnabled=User %s activated +UserDeleted=User %s removed +NewGroupCreated=Group %s created +GroupModified=Group %s modified +GroupDeleted=Group %s removed +ConfirmCreateContact=Are you sure you want to create a Dolibarr account for this contact? +ConfirmCreateLogin=Are you sure you want to create a Dolibarr account for this member? +ConfirmCreateThirdParty=Are you sure you want to create a third party for this member? +LoginToCreate=Login to create +NameToCreate=Name of third party to create +YourRole=Your roles +YourQuotaOfUsersIsReached=Your quota of active users is reached ! +NbOfUsers=No. of users +NbOfPermissions=No. of permissions +DontDowngradeSuperAdmin=Only a superadmin can downgrade a superadmin +HierarchicalResponsible=Supervisor +HierarchicView=Hierarchical view +UseTypeFieldToChange=Use field Type to change +OpenIDURL=OpenID URL +LoginUsingOpenID=Use OpenID to login +WeeklyHours=Hours worked (per week) +ExpectedWorkedHours=Expected worked hours per week +ColorUser=Color of the user +DisabledInMonoUserMode=Disabled in maintenance mode +UserAccountancyCode=User accounting code +UserLogoff=User logout +UserLogged=User logged +DateEmployment=Employment Start Date +DateEmploymentEnd=Employment End Date +CantDisableYourself=You can't disable your own user record +ForceUserExpenseValidator=Force expense report validator +ForceUserHolidayValidator=Force leave request validator +ValidatorIsSupervisorByDefault=By default, the validator is the supervisor of the user. Keep empty to keep this behaviour. +UserPersonalEmail=Personal email +UserPersonalMobile=Personal mobile phone diff --git a/htdocs/langs/zh_HK/website.lang b/htdocs/langs/zh_HK/website.lang new file mode 100644 index 00000000000..bce2a09fb03 --- /dev/null +++ b/htdocs/langs/zh_HK/website.lang @@ -0,0 +1,130 @@ +# Dolibarr language file - Source file is en_US - website +Shortname=Code +WebsiteSetupDesc=Create here the websites you wish to use. Then go into menu Websites to edit them. +DeleteWebsite=Delete website +ConfirmDeleteWebsite=Are you sure you want to delete this web site? All its pages and content will also be removed. The files uploaded (like into the medias directory, the ECM module, ...) will remain. +WEBSITE_TYPE_CONTAINER=Type of page/container +WEBSITE_PAGE_EXAMPLE=Web page to use as example +WEBSITE_PAGENAME=Page name/alias +WEBSITE_ALIASALT=Alternative page names/aliases +WEBSITE_ALIASALTDesc=Use here list of other name/aliases so the page can also be accessed using this other names/aliases (for example the old name after renaming the alias to keep backlink on old link/name working). Syntax is:
    alternativename1, alternativename2, ... +WEBSITE_CSS_URL=URL of external CSS file +WEBSITE_CSS_INLINE=CSS file content (common to all pages) +WEBSITE_JS_INLINE=Javascript file content (common to all pages) +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. +MediaFiles=Media library +EditCss=Edit website properties +EditMenu=Edit menu +EditMedias=Edit medias +EditPageMeta=Edit page/container properties +EditInLine=Edit inline +AddWebsite=Add website +Webpage=Web page/container +AddPage=Add page/container +HomePage=Home Page +PageContainer=Page/container +PreviewOfSiteNotYetAvailable=Preview of your website %s not yet available. You must first 'Import a full website template' or just 'Add a page/container'. +RequestedPageHasNoContentYet=Requested page with id %s has no content yet, or cache file .tpl.php was removed. Edit content of the page to solve this. +SiteDeleted=Web site '%s' deleted +PageContent=Page/Contenair +PageDeleted=Page/Contenair '%s' of website %s deleted +PageAdded=Page/Contenair '%s' added +ViewSiteInNewTab=View site in new tab +ViewPageInNewTab=View page in new tab +SetAsHomePage=Set as Home page +RealURL=Real URL +ViewWebsiteInProduction=View web site using home URLs +SetHereVirtualHost=Use with Apache/NGinx/...
    Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on
    %s +ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup: +YouCanAlsoTestWithPHPS=Use with PHP embedded server
    On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running
    php -S 0.0.0.0:8080 -t %s +YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider
    If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org +CheckVirtualHostPerms=Check also that virtual host has permission %s on files into
    %s +ReadPerm=Read +WritePerm=Write +TestDeployOnWeb=Test/deploy on web +PreviewSiteServedByWebServer=Preview %s in a new tab.

    The %s will be served by an external web server (like Apache, Nginx, IIS). You must install and setup this server before to point to directory:
    %s
    URL served by external server:
    %s +PreviewSiteServedByDolibarr=Preview %s in a new tab.

    The %s will be served by Dolibarr server so it does not need any extra web server (like Apache, Nginx, IIS) to be installed.
    The inconvenient is that URL of pages are not user friendly and start with path of your Dolibarr.
    URL served by Dolibarr:
    %s

    To use your own external web server to serve this web site, create a virtual host on your web server that point on directory
    %s
    then enter the name of this virtual server and click on the other preview button. +VirtualHostUrlNotDefined=URL of the virtual host served by external web server not defined +NoPageYet=No pages yet +YouCanCreatePageOrImportTemplate=You can create a new page or import a full website template +SyntaxHelp=Help on specific syntax tips +YouCanEditHtmlSourceckeditor=You can edit HTML source code using the "Source" button in editor. +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . +ClonePage=Clone page/container +CloneSite=Clone site +SiteAdded=Website added +ConfirmClonePage=Please enter code/alias of new page and if it is a translation of the cloned page. +PageIsANewTranslation=The new page is a translation of the current page ? +LanguageMustNotBeSameThanClonedPage=You clone a page as a translation. The language of the new page must be different than language of source page. +ParentPageId=Parent page ID +WebsiteId=Website ID +CreateByFetchingExternalPage=Create page/container by fetching page from external URL... +OrEnterPageInfoManually=Or create page from scratch or from a page template... +FetchAndCreate=Fetch and Create +ExportSite=Export website +ImportSite=Import website template +IDOfPage=Id of page +Banner=Banner +BlogPost=Blog post +WebsiteAccount=Website account +WebsiteAccounts=Website accounts +AddWebsiteAccount=Create web site account +BackToListForThirdParty=Back to list for the third-party +DisableSiteFirst=Disable website first +MyContainerTitle=My web site title +AnotherContainer=This is how to include content of another page/container (you may have an error here if you enable dynamic code because the embedded subcontainer may not exists) +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 +OnlyEditionOfSourceForGrabbedContentFuture=Warning: Creating a web page by importing an external web page is reserved for experienced users. Depending on the complexity of source page, the result of importation may differ from the original. Also if the source page uses common CSS styles or conflicting javascript, it may break the look or features of the Website editor when working on this page. This method is a quicker way to create a page but it is recommended to create your new page from scratch or from a suggested page template.
    Note also that the inline editor may not works correclty when used on a grabbed external page. +OnlyEditionOfSourceForGrabbedContent=Only edition of HTML source is possible when content was grabbed from an external site +GrabImagesInto=Grab also images found into css and page. +ImagesShouldBeSavedInto=Images should be saved into directory +WebsiteRootOfImages=Root directory for website images +SubdirOfPage=Sub-directory dedicated to page +AliasPageAlreadyExists=Alias page %s already exists +CorporateHomePage=Corporate Home page +EmptyPage=Empty page +ExternalURLMustStartWithHttp=External URL must start with http:// or https:// +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 +ThisPageHasTranslationPages=This page/container has translation +NoWebSiteCreateOneFirst=No website has been created yet. Create one first. +GoTo=Go to +DynamicPHPCodeContainsAForbiddenInstruction=You add dynamic PHP code that contains the PHP instruction '%s' that is forbidden by default as dynamic content (see hidden options WEBSITE_PHP_ALLOW_xxx to increase list of allowed commands). +NotAllowedToAddDynamicContent=You don't have permission to add or edit PHP dynamic content in websites. Ask permission or just keep code into php tags unmodified. +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 +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. +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. +Dynamiccontent=Sample of a page with dynamic content +ImportSite=Import website template +EditInLineOnOff=Mode 'Edit inline' is %s +ShowSubContainersOnOff=Mode to execute 'dynamic content' is %s +GlobalCSSorJS=Global CSS/JS/Header file of web site +BackToHomePage=Back to home page... +TranslationLinks=Translation links +YouTryToAccessToAFileThatIsNotAWebsitePage=You try to access to a page that is not a website page +UseTextBetween5And70Chars=For good SEO practices, use a text between 5 and 70 characters +MainLanguage=Main language +OtherLanguages=Other languages +UseManifest=Provide a manifest.json file +PublicAuthorAlias=Public author alias +AvailableLanguagesAreDefinedIntoWebsiteProperties=Available languages are defined into website properties +ReplacementDoneInXPages=Replacement done in %s pages or containers diff --git a/htdocs/langs/zh_HK/withdrawals.lang b/htdocs/langs/zh_HK/withdrawals.lang new file mode 100644 index 00000000000..b1d6e30e329 --- /dev/null +++ b/htdocs/langs/zh_HK/withdrawals.lang @@ -0,0 +1,119 @@ +# Dolibarr language file - Source file is en_US - withdrawals +CustomersStandingOrdersArea=Direct debit payment orders area +SuppliersStandingOrdersArea=Direct credit payment orders area +StandingOrdersPayment=Direct debit payment orders +StandingOrderPayment=Direct debit payment order +NewStandingOrder=New direct debit order +StandingOrderToProcess=To process +WithdrawalsReceipts=Direct debit orders +WithdrawalReceipt=Direct debit order +LastWithdrawalReceipts=Latest %s direct debit files +WithdrawalsLines=Direct debit order lines +RequestStandingOrderToTreat=Request for direct debit payment order to process +RequestStandingOrderTreated=Request for direct debit payment order processed +NotPossibleForThisStatusOfWithdrawReceiptORLine=Not yet possible. Withdraw status must be set to 'credited' before declaring reject on specific lines. +NbOfInvoiceToWithdraw=No. of qualified invoice with waiting direct debit order +NbOfInvoiceToWithdrawWithInfo=No. of customer invoice with direct debit payment orders having defined bank account information +InvoiceWaitingWithdraw=Invoice waiting for direct debit +AmountToWithdraw=Amount to withdraw +WithdrawsRefused=Direct debit refused +NoInvoiceToWithdraw=No customer invoice with open 'Direct debit requests' is waiting. Go on tab '%s' on invoice card to make a request. +ResponsibleUser=User Responsible +WithdrawalsSetup=Direct debit payment setup +WithdrawStatistics=Direct debit payment statistics +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 +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=Classify credited +ClassCreditedConfirm=Are you sure you want to classify this withdrawal receipt as credited on your bank account? +TransData=Transmission date +TransMetod=Transmission method +Send=Send +Lines=Lines +StandingOrderReject=Issue a rejection +WithdrawalRefused=Withdrawal refused +WithdrawalRefusedConfirm=Are you sure you want to enter a withdrawal rejection for society +RefusedData=Date of rejection +RefusedReason=Reason for rejection +RefusedInvoicing=Billing the rejection +NoInvoiceRefused=Do not charge the rejection +InvoiceRefused=Invoice refused (Charge the rejection to customer) +StatusDebitCredit=Status debit/credit +StatusWaiting=Waiting +StatusTrans=Sent +StatusCredited=Credited +StatusRefused=Refused +StatusMotif0=Unspecified +StatusMotif1=Insufficient funds +StatusMotif2=Request contested +StatusMotif3=No direct debit payment order +StatusMotif4=Sales Order +StatusMotif5=RIB unusable +StatusMotif6=Account without balance +StatusMotif7=Judicial Decision +StatusMotif8=Other reason +CreateForSepaFRST=Create direct debit file (SEPA FRST) +CreateForSepaRCUR=Create direct debit file (SEPA RCUR) +CreateAll=Create direct debit file (all) +CreateGuichet=Only office +CreateBanque=Only bank +OrderWaiting=Waiting for treatment +NotifyTransmision=Withdrawal Transmission +NotifyCredit=Withdrawal Credit +NumeroNationalEmetter=National Transmitter Number +WithBankUsingRIB=For bank accounts using RIB +WithBankUsingBANBIC=For bank accounts using IBAN/BIC/SWIFT +BankToReceiveWithdraw=Receiving Bank Account +CreditDate=Credit on +WithdrawalFileNotCapable=Unable to generate withdrawal receipt file for your country %s (Your country is not supported) +ShowWithdraw=Show Direct Debit Order +IfInvoiceNeedOnWithdrawPaymentWontBeClosed=However, if invoice has at least one direct debit payment order not yet processed, it won't be set as paid to allow prior withdrawal 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 payment order is closed, payment on invoice will be automatically recorded, and invoice closed if remainder to pay is null. +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 +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) +WithdrawRequestAmount=Amount of Direct debit request: +WithdrawRequestErrorNilAmount=Unable to create direct debit request for empty amount. +SepaMandate=SEPA Direct Debit Mandate +SepaMandateShort=SEPA Mandate +PleaseReturnMandate=Please return this mandate form by email to %s or by mail to +SEPALegalText=By signing this mandate form, you authorize (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. +CreditorIdentifier=Creditor Identifier +CreditorName=Creditor Name +SEPAFillForm=(B) Please complete all the fields marked * +SEPAFormYourName=Your name +SEPAFormYourBAN=Your Bank Account Name (IBAN) +SEPAFormYourBIC=Your Bank Identifier Code (BIC) +SEPAFrstOrRecur=Type of payment +ModeRECUR=Recurring payment +ModeFRST=One-off payment +PleaseCheckOne=Please check one only +DirectDebitOrderCreated=Direct debit order %s created +AmountRequested=Amount requested +SEPARCUR=SEPA CUR +SEPAFRST=SEPA FRST +ExecutionDate=Execution date +CreateForSepa=Create direct debit file +ICS=Creditor Identifier CI +END_TO_END="EndToEndId" SEPA XML tag - Unique id assigned per transaction +USTRD="Unstructured" SEPA XML tag +ADDDAYS=Add days to Execution Date + +### Notifications +InfoCreditSubject=Payment of direct debit payment order %s by the bank +InfoCreditMessage=The direct debit payment order %s has been paid by the bank
    Data of payment: %s +InfoTransSubject=Transmission of direct debit payment order %s to bank +InfoTransMessage=The direct debit payment order %s has been sent to bank by %s %s.

    +InfoTransData=Amount: %s
    Method: %s
    Date: %s +InfoRejectSubject=Direct debit payment order refused +InfoRejectMessage=Hello,

    the direct debit payment order of invoice %s related to the company %s, with an amount of %s has been refused by the bank.

    --
    %s +ModeWarning=Option for real mode was not set, we stop after this simulation diff --git a/htdocs/langs/zh_HK/workflow.lang b/htdocs/langs/zh_HK/workflow.lang new file mode 100644 index 00000000000..be126eef0f4 --- /dev/null +++ b/htdocs/langs/zh_HK/workflow.lang @@ -0,0 +1,20 @@ +# Dolibarr language file - Source file is en_US - workflow +WorkflowSetup=Workflow module setup +WorkflowDesc=This module provides some automatic actions. By default, the workflow is open (you can do things in the order you want) but here you can activate some automatic actions. +ThereIsNoWorkflowToModify=There is no workflow modifications available with the activated modules. +# Autocreate +descWORKFLOW_PROPAL_AUTOCREATE_ORDER=Automatically create a sales order after a commercial proposal is signed (the new order will have same amount as the proposal) +descWORKFLOW_PROPAL_AUTOCREATE_INVOICE=Automatically create a customer invoice after a commercial proposal is signed (the new invoice will have same amount as the proposal) +descWORKFLOW_CONTRACT_AUTOCREATE_INVOICE=Automatically create a customer invoice after a contract is validated +descWORKFLOW_ORDER_AUTOCREATE_INVOICE=Automatically create a customer invoice after a sales order is closed (the new invoice will have same amount as the order) +# Autoclassify customer proposal or order +descWORKFLOW_ORDER_CLASSIFY_BILLED_PROPAL=Classify linked source proposal as billed when sales order is set to billed (and if the amount of the order is the same as the total amount of the signed linked proposal) +descWORKFLOW_INVOICE_CLASSIFY_BILLED_PROPAL=Classify linked source proposal as billed when customer invoice is validated (and if the amount of the invoice is the same as the total amount of the signed linked proposal) +descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_ORDER=Classify linked source sales order as billed when customer invoice is validated (and if the amount of the invoice is the same as the total amount of the linked order) +descWORKFLOW_INVOICE_CLASSIFY_BILLED_ORDER=Classify linked source sales order as billed when customer invoice is set to paid (and if the amount of the invoice is the same as the total amount of the linked order) +descWORKFLOW_ORDER_CLASSIFY_SHIPPED_SHIPPING=Classify linked source sales order as shipped when a shipment is validated (and if the quantity shipped by all shipments is the same as in the order to update) +# Autoclassify purchase order +descWORKFLOW_ORDER_CLASSIFY_BILLED_SUPPLIER_PROPOSAL=Classify linked source vendor proposal as billed when vendor invoice is validated (and if the amount of the invoice is the same as the total amount of the linked proposal) +descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Classify linked source purchase order as billed when vendor invoice is validated (and if the amount of the invoice is the same as the total amount of the linked order) +AutomaticCreation=Automatic creation +AutomaticClassification=Automatic classification diff --git a/htdocs/langs/zh_HK/zapier.lang b/htdocs/langs/zh_HK/zapier.lang new file mode 100644 index 00000000000..6d6eda71313 --- /dev/null +++ b/htdocs/langs/zh_HK/zapier.lang @@ -0,0 +1,28 @@ +# Copyright (C) 2019 Frédéric FRANCE +# +# 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 . + +# +# Generic +# + +# Module label 'ModuleZapierForDolibarrName' +ModuleZapierForDolibarrName = Zapier for Dolibarr +# Module description 'ModuleZapierForDolibarrDesc' +ModuleZapierForDolibarrDesc = Zapier for Dolibarr module + +# +# Admin page +# +ZapierForDolibarrSetup = Setup of Zapier for Dolibarr diff --git a/htdocs/langs/zh_TW/accountancy.lang b/htdocs/langs/zh_TW/accountancy.lang index 334fa9ec1b9..e328934eda3 100644 --- a/htdocs/langs/zh_TW/accountancy.lang +++ b/htdocs/langs/zh_TW/accountancy.lang @@ -26,7 +26,7 @@ BackToChartofaccounts=回到會計科目表 Chartofaccounts=會計科目表 CurrentDedicatedAccountingAccount=目前的專用帳戶 AssignDedicatedAccountingAccount=新帳戶指派給 -InvoiceLabel=帳單標籤 +InvoiceLabel=發票標籤 OverviewOfAmountOfLinesNotBound=行數金額的概述未綁定到會計帳戶 OverviewOfAmountOfLinesBound=行數金額的概述已綁定到會計帳戶 OtherInfo=其他資訊 @@ -121,6 +121,7 @@ InvoiceLinesDone=已關聯的各式發票 ExpenseReportLines=費用報表關聯數 ExpenseReportLinesDone=已關連的費用報表 IntoAccount=會計項目的關聯 +TotalForAccount=會計科目總計 Ventilate=關聯 @@ -168,10 +169,15 @@ DONATION_ACCOUNTINGACCOUNT=註冊捐款的會計科目 ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=用於註冊訂閱的會計科目 ACCOUNTING_PRODUCT_BUY_ACCOUNT=所購買產品的預設會計科目(如果在產品表中未定義則使用) +ACCOUNTING_PRODUCT_BUY_INTRA_ACCOUNT=預設情況下,在EEC中所購買產品的會計帳戶(如果未在產品單中定義則使用) +ACCOUNTING_PRODUCT_BUY_EXPORT_ACCOUNT=預設情況下,用於在EEC以外購買產品並且輸入產品的會計帳戶(如果在產品表中未定義,則使用) ACCOUNTING_PRODUCT_SOLD_ACCOUNT=所銷售產品的預設會計科目(如果在產品表中未定義則使用) ACCOUNTING_PRODUCT_SOLD_INTRA_ACCOUNT=在歐盟所販賣產品的預設會計科目(如果在產品表中未定義則使用) ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=在歐盟以外地區所販賣產品並且輸出的預設會計科目(如果在產品表中未定義則使用) + ACCOUNTING_SERVICE_BUY_ACCOUNT=委外服務預設會計項目(若沒在服務頁中定義時使用) +ACCOUNTING_SERVICE_BUY_INTRA_ACCOUNT=預設情況下,在EEC中購買服務的會計帳戶(如果未在服務單中定義,則使用) +ACCOUNTING_SERVICE_BUY_EXPORT_ACCOUNT=預設情況下,用於在EEC以外購買服務並且輸入服務的會計帳戶(如果未在服務單中定義,則使用) ACCOUNTING_SERVICE_SOLD_ACCOUNT=服務收入預設會計項目(若沒在服務頁中定義時使用) ACCOUNTING_SERVICE_SOLD_INTRA_ACCOUNT=在歐盟國家中服務收入預設會計項目(若沒在服務頁中定義時使用) ACCOUNTING_SERVICE_SOLD_EXPORT_ACCOUNT=在歐盟以外國家中服務收入預設會計項目(若沒在服務頁中定義時使用) @@ -228,12 +234,16 @@ ThirdpartyAccountNotDefinedOrThirdPartyUnknownSubledgerIgnored=未知合作方 ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=未定義合作方帳戶或未知的合作方。封鎖錯誤。 UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=未定義的未知合作方帳戶和等待帳戶。封鎖錯誤 PaymentsNotLinkedToProduct=付款未連結到任何產品/服務 +OpeningBalance=初期餘額 ShowOpeningBalance=顯示初期餘額 HideOpeningBalance=隱藏初期餘額 +ShowSubtotalByGroup=依組顯示小計 Pcgtype=會計項目大類 PcgtypeDesc=用作某些會計報告的預定義“過濾器”和“分組”標準的科目組。例如“ INCOME”或“ EXPENSE”用作產品的會計科目組,以建立費用/收入報告。 +Reconcilable=可和解 + TotalVente=稅前總周轉 TotalMarge=總銷貨淨利 @@ -307,11 +317,13 @@ Modelcsv_quadratus=匯出為Quadratus QuadraCompta Modelcsv_ebp=匯出為EBP Modelcsv_cogilog=匯出為Cogilog Modelcsv_agiris=匯出到Agiris -Modelcsv_LDCompta=匯出為LD Compta(v9及更高版本)(測試) +Modelcsv_LDCompta=LD Compta(v9)(測試)匯出 +Modelcsv_LDCompta10=LD Compta用之匯出(v10及更高版本) Modelcsv_openconcerto=匯出為OpenConcerto(測試) Modelcsv_configurable=匯出為可設置CSV Modelcsv_FEC=匯出為FEC Modelcsv_Sage50_Swiss=匯出為Sage 50 Switzerland +Modelcsv_winfic=匯出Winfic-eWinfic-WinSis Compta ChartofaccountsId=會計項目表ID ## Tools - Init accounting account on product / service @@ -324,10 +336,14 @@ OptionModeProductSell=銷售模式 OptionModeProductSellIntra=在EEC中的銷售模式已匯出 OptionModeProductSellExport=在其他國家/城市中的銷售模式已匯出 OptionModeProductBuy=採購模式 +OptionModeProductBuyIntra=在EEC中購買輸入模式 +OptionModeProductBuyExport=在EEC以外地區購買輸入模式 OptionModeProductSellDesc=顯示銷售產品的會計項目 OptionModeProductSellIntraDesc=顯示所有在EEC中有銷售會計科目的產品。 OptionModeProductSellExportDesc=顯示所有在除了EEC地區(其他國家)中有銷售會計科目的產品。 OptionModeProductBuyDesc=顯示採購所有產品的會計項目 +OptionModeProductBuyIntraDesc=顯示所有具有在EEC中購買之會計帳戶的產品。 +OptionModeProductBuyExportDesc=顯示所有具有其他國外購買之會計帳戶的產品。 CleanFixHistory=移除會計代號將不再出現在會計項目表中。 CleanHistory=針對選定年度重設全部關聯性 PredefinedGroups=預定義的群組 @@ -338,6 +354,8 @@ AccountRemovedFromGroup=帳戶已從群組中刪除 SaleLocal=本地銷售 SaleExport=出口銷售 SaleEEC=在歐盟銷售 +SaleEECWithVAT=在EEC中具有營業稅的銷售不為空,因此我們認為這不是內部銷售,建議的帳戶是標準產品帳戶。 +SaleEECWithoutVATNumber=在EEC中銷售沒有營業稅但合作方的營業稅ID未定義。我們退回標準銷售的產品帳戶。您可以根據需要修改合作方或產品帳戶的營業稅ID。 ## Dictionary Range=會計項目範圍 diff --git a/htdocs/langs/zh_TW/admin.lang b/htdocs/langs/zh_TW/admin.lang index bfb5d3c2862..5933ccb0a9e 100644 --- a/htdocs/langs/zh_TW/admin.lang +++ b/htdocs/langs/zh_TW/admin.lang @@ -40,6 +40,7 @@ WebUserGroup=網頁伺服器用戶/組別 NoSessionFound=您的PHP設定似乎不允許列出活動程序。用於保存程序的資料夾( %s )可能受到保護(例如,通過OS權限或PHP指令open_basedir)。 DBStoringCharset=儲存資料的資料庫字集 DBSortingCharset=資料排序以資料庫字集 +HostCharset=主機字符集 ClientCharset=客戶端字集 ClientSortingCharset=客戶端整理 WarningModuleNotActive=模組%s必須啓用 @@ -54,8 +55,8 @@ SetupArea=設定 UploadNewTemplate=上傳新的範本 FormToTestFileUploadForm=用於測試檔案上傳的表格(根據設定) IfModuleEnabled=註:若模組%s啓用時,「是的」有效。 -RemoveLock=如果存在%s,刪除/重命名文件,以允許使用更新/安裝工具。 -RestoreLock=以唯讀權限還原檔案%s ,以禁止進一步使用更新/安裝工具。 +RemoveLock=如果存在%s檔案,刪除/重新命名文件以允許使用更新/安裝工具。 +RestoreLock=還原檔案唯讀權限檔案%s ,以禁止使用更新/安裝工具。 SecuritySetup=安全設定 SecurityFilesDesc=在此定義上傳檔案相關的安全設定。 ErrorModuleRequirePHPVersion=錯誤,這個模組需要的PHP版本是 %s 或更高版本 @@ -98,10 +99,10 @@ MustBeLowerThanPHPLimit=注意: 您的 PHP設定目前限制了上傳 NoMaxSizeByPHPLimit=註:你的 PHP 偏好設定為無限制 MaxSizeForUploadedFiles=上傳檔案最大值(0 為禁止上傳) UseCaptchaCode=在登入頁中的使用圖形碼 (CAPTCHA) -AntiVirusCommand= 防毒命令的完整路徑 -AntiVirusCommandExample= 例如 ClamWin 為 c:\\Progra~1\\ClamWin\\bin\\clamscan.exe
    例如 ClamAv 為 /usr/bin/clamscan +AntiVirusCommand=防毒命令的完整路徑 +AntiVirusCommandExample=ClamAv Daemon 的範例(需要 clamav-daemon): / usr / bin / clamdscan
    ClamWin的範例(非常慢): c:\\Progra~1\\ClamWin\\bin\\clamscan.exe AntiVirusParam= 在命令列中更多的參數 -AntiVirusParamExample= 例如 ClamWin 為 --database="C:\\Program Files (x86)\\ClamWin\\lib" +AntiVirusParamExample=ClamAv Daemon 範例: --fdpass
    ClamWin的範例: --database="C:\\Program Files (x86)\\ClamWin\\lib" ComptaSetup=會計模組設定 UserSetup=用戶管理設定 MultiCurrencySetup=多國幣別設定 @@ -199,7 +200,7 @@ FeatureDisabledInDemo=DEMO模式下已禁用功能 FeatureAvailableOnlyOnStable=在官方穩定版本中可用的功能 BoxesDesc=小工具是顯示一些訊息的元件,您可以增加這些訊息來個性化某些頁面。通過選擇目標頁面並點擊“啟用”,或點擊垃圾桶將其禁用,可以選擇顯示小工具或是不顯示小工具。 OnlyActiveElementsAreShown=僅顯示已啟用模組中的元件。 -ModulesDesc=模組/應用程式確定軟體中可用的功能。某些模組需要在啟用模組後授予用戶權限。點擊開啟/關閉按鈕(在模組行的末尾)以啟用/禁用模組/應用程式。 +ModulesDesc=模組/應用程式决定軟體中可用的功能。某些模組需要在啟用模組後授予用戶權限。點擊開啟/關閉按鈕%s以啟用/禁用模組/應用程式。 ModulesMarketPlaceDesc=您可在外部網站中找到更多可下載的模組... ModulesDeployDesc=如果檔案系統權限允許,則可以使用此工具部署外部模組。然後,該模組將在分頁%s上顯示。 ModulesMarketPlaces=找外部 app / 模組 @@ -212,6 +213,7 @@ CompatibleUpTo=與版本%s相容 NotCompatible=此模組似乎不相容您 Dolibarr %s (適用最低版本 %s - 最高版本 %s)。 CompatibleAfterUpdate=此模組需要升級您的 Dolibarr %s (最低版本%s -最高版本 %s)。 SeeInMarkerPlace=在市場可以看到 +SeeSetupOfModule=請參閱模組%s的設定 Updated=升級 Nouveauté=新奇 AchatTelechargement=購買 / 下載 @@ -221,6 +223,7 @@ DoliPartnersDesc=提供訂製開發的模組或功能的公司清單。
    注 WebSiteDesc=外部網站以獲取更多附加(非核心)模組... DevelopYourModuleDesc=一些開發自己模組的解決方案... URL=網址 +RelativeURL=關聯網址 BoxesAvailable=可用小工具 BoxesActivated=小工具已啟用 ActivateOn=啟用 @@ -330,7 +333,7 @@ InfDirAlt=從第3版起,可定義替代根資料夾。此允許您儲存到指 InfDirExample=
    conf.php 檔案宣告
    $dolibarr_main_url_root_alt='/custom'
    $dolibarr_main_document_root_alt='/path/of/dolibarr/htdocs/custom'
    若這幾行已用"#"方式註解了,啟用他,也就是移除 "#"。 YouCanSubmitFile=您可以從此處上傳模組的.zip檔案: CurrentVersion=Dolibarr 目前版本 -CallUpdatePage=瀏覽更新資料庫結構和資料的頁面:%s。 +CallUpdatePage=瀏覽升級資料庫結構和資料的頁面:%s。 LastStableVersion=最新穩定版本 LastActivationDate=最新啟動日期 LastActivationAuthor=最新啟動的作者 @@ -425,7 +428,7 @@ ExtrafieldCheckBox=勾選框 ExtrafieldCheckBoxFromList=表格勾選框 ExtrafieldLink=連結到項目 ComputedFormula=計算欄位 -ComputedFormulaDesc=您可以在此處輸入使用項目的其他屬性或任何PHP編碼的公式,以獲得動態計算值。 您可以使用任何與PHP相容的公式,包括“?” 條件運算符號和後續全域項目: $db, $conf, $langs, $mysoc, $user, $object.
    警告: $ object的僅某些屬性可能可用。 如果您需要一個未載入的屬性,請像第二個範例一樣,將項目自己提取到公式中。
    使用計算欄位表示著您無法從界面輸入任何值。 另外,如果存在語法錯誤,則公式可能不返回任何內容。

    公式範例:
    $object->id < 10 ? round($object->id / 2, 2): ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

    重新載入範例
    (($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id: ($obj->rowid ? $obj->rowid: $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5: '-1'

    強制載入項目及其母項目公式的其他範例:
    (($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref: '找不到母專案' +ComputedFormulaDesc=您可以在此處輸入使用對象的其他屬性或任何PHP編碼的公式,以獲得動態計算值。您可以使用任何與PHP兼容的公式,包括“?”條件運算符和以下全局對象: $ db,$ conf,$ langs,$ mysoc,$ user,$ object
    警告:僅$ object的某些屬性可用。如果需要一個未加載的屬性,則像第二個示例一樣,將對象自己提取到公式中。
    使用計算字段意味著您無法從界面輸入任何值。另外,如果存在語法錯誤,則公式可能不返回任何內容。

    公式示例:
    $ object-> id < 10 ? round($object-> id / 2,2):($ object-> id + 2 * $ user-> id)*(int)substr($ mysoc-> zip,1,2 )

    重新加載對象的示例
    ((($ reloadedobj = new Societe($ db))&&($ reloadedobj-> fetchNoCompute($ obj-> id?$ obj-> id:($ obj-> rowid?$ obj- > rowid:$ object-> id))> 0))嗎? $ reloadedobj-> array_options ['options_extrafieldkey'] * $ reloadedobj-> capital / 5:'-1'

    用於強制加載對象及其父對象的公式的其他示例:
    ((($ reloadedobj = new Task($ ))&&($ reloadedobj-> fetchNoCompute($ object-> id)> 0)&&($ secondloadedobj =新項目($ db))&&($ secondloadedobj-> fetchNoCompute($ reloadedobj-> fk_project)> 0))嗎? $ secondloadedobj-> ref:'未找到父項目' Computedpersistent=儲存已計算欄位 ComputedpersistentDesc=計算出的額外欄位將儲存在資料庫中,但是,僅當更改此欄位的項目時,才會重新計算該值。如果計算欄位依賴於其他項目或全域數據,則該值可能是錯誤的! ExtrafieldParamHelpPassword=將欄位保留為空白表示該值將不加密地儲存(欄位只能在螢幕上以星號隱藏)。
    設定“自動”以使用預設的加密規則將密碼保存到資料庫中(然後讀取的值將僅是哈希值,無法搜索原始值) @@ -446,7 +449,8 @@ KeepEmptyToUseDefault=保留為空白以使用預設值 DefaultLink=預設連結 SetAsDefault=設為預設值 ValueOverwrittenByUserSetup=警告,此值可能會被用戶特定的設定覆蓋(每個用戶都可以設定自己的clicktodial網址) -ExternalModule=外部模組 - 已安裝到資料夾 %s +ExternalModule=外部模組 +InstalledInto=已安裝到 %s 資料夾 BarcodeInitForthird-parties=合作方的批次條碼初始化 BarcodeInitForProductsOrServices=批次條碼初始化或產品或服務重置 CurrentlyNWithoutBarCode=目前您在沒有條碼%s%s中有%s的記錄。 @@ -947,7 +951,7 @@ DictionaryCanton=州/省 DictionaryRegion=地區 DictionaryCountry=國家 DictionaryCurrency=幣別 -DictionaryCivility=文明頭銜 +DictionaryCivility=榮譽稱號 DictionaryActions=行程事件類型 DictionarySocialContributions=社會稅或財政稅類型 DictionaryVAT=營業稅率或銷售稅率 @@ -988,6 +992,7 @@ VATIsNotUsedDesc=預設情況下,建議的營業稅為0,可用於諸如協 VATIsUsedExampleFR=在法國,這表示擁有真實財務系統(簡化的真實貨幣或正常真實貨幣)的公司或組織。申報營業稅的系統。 VATIsNotUsedExampleFR=在法國,它表示非宣告營業稅的協會,或者選擇微型企業財務系統(特許經營營業稅)並繳納特許經營營業稅的公司,組織或自由職業者,而無需任何營業稅申報。此選擇將在發票上顯示參考“不適用的營業稅-CGI的art-293B”。 ##### Local Taxes ##### +TypeOfSaleTaxes=銷售稅類型 LTRate=稅率 LocalTax1IsNotUsed=不使用第二種稅率 LocalTax1IsUsedDesc=使用第二種稅種(第一類除外) @@ -1011,6 +1016,9 @@ LocalTax2IsUsedDescES=建立潛在客戶,發票,訂單等時,預設情況 LocalTax2IsNotUsedDescES=預設情況下,建議的IRPF為0。規則結束。 LocalTax2IsUsedExampleES=在西班牙,自由職業者及提供服務的專業人士及選擇稅務系統模組的公司。 LocalTax2IsNotUsedExampleES=在西班牙,它們是不受模組稅制約束的企業。 +RevenueStampDesc=The "tax stamp" or "revenue stamp" is a fixed tax you per invoice (It does not depend on amount of invoice). It can also be a percent tax but using the second or third type of tax is better for percent taxes as tax stamps does not provide any reporting. Only few countries uses this type of tax. +UseRevenueStamp=使用印花稅 +UseRevenueStampExample=稅票的預設值在字典設置中定義(%s-%s-%s) CalcLocaltax=地方稅收報告 CalcLocaltax1=銷售 - 採購 CalcLocaltax1Desc=地方稅收報告是根據地方稅銷售與地方稅採購之間的差額計算得出的 @@ -1018,6 +1026,7 @@ CalcLocaltax2=採購 CalcLocaltax2Desc=地方稅收報告是地方稅採購的總額 CalcLocaltax3=銷售 CalcLocaltax3Desc=地方稅收報告是地方稅銷售總額 +NoLocalTaxXForThisCountry=根據稅收設置(請參閱%s-%s-%s),您所在的國家不需要使用此類稅種 LabelUsedByDefault=若代號沒有找翻譯字句,則使用預設標籤 LabelOnDocuments=文件標籤 LabelOrTranslationKey=標籤或翻譯秘鑰 @@ -1108,8 +1117,8 @@ Delays_MAIN_DELAY_EXPENSEREPORTS=費用報表批准 Delays_MAIN_DELAY_HOLIDAYS=休假申請批准 SetupDescription1=在開始使用Dolibarr之前,必須定義一些初始參數並啟用/設定模組。 SetupDescription2=以下兩個部分是必需的(“設定”選單中的前兩個項目): -SetupDescription3=%s -> %s
    應用軟體中預設行為,其基本參數是可以客製化的(例如:與國家相關的功能)。 -SetupDescription4=%s-> %s
    此軟體是許多模組/應用程式的套件,或多或少是獨立的。必須啟用和設定與您需求相關的模組。隨著模組的啟動,新項目/選項會增加到選單中。 +SetupDescription3=  %s-> %s

    用於自訂您應用程式默認行為的基本參數(例如 跟國家相關的功能)。 +SetupDescription4=  %s-> %s

    此軟件是許多模塊/應用程序的套件。必須啟用和配置與您的需求相關的模塊。這些模塊的激活將顯示菜單條目。 SetupDescription5=其他設定選單項目管理可選參數。 LogEvents=安全稽核事件 Audit=稽核 @@ -1128,7 +1137,7 @@ LogEventDesc=啟用特定安全事件的日誌記錄。通過選單%s-%s來管理員進行設定。 SystemInfoDesc=僅供系統管理員以唯讀及可見模式取得系統資訊。 SystemAreaForAdminOnly=此區域僅管理員可用。 Dolibarr用戶權限無法更改此限制。 -CompanyFundationDesc=編輯公司/項目的資訊。點擊頁面底部的“ %s”按鈕。 +CompanyFundationDesc=編輯您的 公司/組織 資訊。完成後,點擊頁面底部的“ %s”按鈕。 AccountantDesc=如果您有外部會計師/簿記員,則可以在此處編輯其資訊。 AccountantFileNumber=會計代碼 DisplayDesc=可以在此處修改影響Dolibarr外觀和行為的參數。 @@ -1264,6 +1273,9 @@ RuleForGeneratedPasswords=產生和驗證密碼的規則 DisableForgetPasswordLinkOnLogonPage=不要在登入頁面顯示“忘記密碼”連結 UsersSetup=用戶模組設定 UserMailRequired=建立新用戶需要電子郵件 +UserHideInactive=Hide inactive users from all combo lists of users (Not recommended: this may means you won't be able to filter or search on old users on some pages) +UsersDocModules=文件模板給從使用者紀錄生成的文件 +GroupsDocModules=文件模板給從群組紀錄生成的文件 ##### HRM setup ##### HRMSetup=人資模組設定 ##### Company setup ##### @@ -1295,7 +1307,7 @@ BillsPDFModules=發票文件模型 BillsPDFModulesAccordindToInvoiceType=根據發票類型的發票文件模型 PaymentsPDFModules=付款文件模型 ForceInvoiceDate=強制使用驗證日期為發票日期 -SuggestedPaymentModesIfNotDefinedInInvoice=未定義付款方式發票的預設建議付款方式 +SuggestedPaymentModesIfNotDefinedInInvoice=未定義付款方式發票的預設付款方式 SuggestPaymentByRIBOnAccount=建議以帳戶匯款付款 SuggestPaymentByChequeToAddress=建議以支票付款給 FreeLegalTextOnInvoices=在發票中加註文字 @@ -1307,7 +1319,7 @@ SupplierPaymentSetup=供應商付款設定 PropalSetup=商業提案/建議書模組設定 ProposalsNumberingModules=商業提案/建議書編號模型 ProposalsPDFModules=商業提案/建議書文件模型 -SuggestedPaymentModesIfNotDefinedInProposal=未定義付款方式商業提案/建議書的預設建議付款方式 +SuggestedPaymentModesIfNotDefinedInProposal=預設提案付款方式 FreeLegalTextOnProposal=在商業提案/建議書中加註文字 WatermarkOnDraftProposal=商業提案/建議書草稿上的浮水印(若空白則無) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=詢問提案/建議書的目地的銀行帳戶 @@ -1322,6 +1334,7 @@ WAREHOUSE_ASK_WAREHOUSE_DURING_ORDER=詢問訂單的倉庫來源 ##### Suppliers Orders ##### BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_ORDER=詢問供應商訂單中目的地銀行帳戶 ##### Orders ##### +SuggestedPaymentModesIfNotDefinedInOrder=未定義付款方式發票的預設付款方式 OrdersSetup=銷售訂單管理設定 OrdersNumberingModules=訂單編號模組 OrdersModelModule=訂單文件模型 @@ -1792,6 +1805,7 @@ TopMenuDisableImages=在頂端選單中隱藏圖片 LeftMenuBackgroundColor=左側選單的背景顏色 BackgroundTableTitleColor=表格標題行的背景顏色 BackgroundTableTitleTextColor=表格標題行的文字顏色 +BackgroundTableTitleTextlinkColor=表格標題連結行的文字顏色 BackgroundTableLineOddColor=表格奇數行的背景顏色 BackgroundTableLineEvenColor=表格偶數行的背景色 MinimumNoticePeriod=最短通知期限(您的休假申請必須在此之前完成) @@ -1925,7 +1939,7 @@ WithoutDolTrackingID=在訊息ID中找不到Dolibarr參考 FormatZip=Zip MainMenuCode=選單輸入代碼(主選單) ECMAutoTree=顯示自動ECM樹狀圖 -OperationParamDesc=定義用於操作的值,或如何提取值. 範例:
    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:我的公司名稱為\\s([^\\s]*)

    使用; char作為分隔符號以提取或設定幾個屬性。 +OperationParamDesc=Define the values to use for the object of the action, or how to extract values. For example:
    objproperty1=SET:the value to set
    objproperty2=SET:a value with replacement of __objproperty1__
    objproperty3=SETIFEMPTY:value used if objproperty3 is not already defined
    objproperty4=EXTRACT:HEADER:X-Myheaderkey:\\s*([^\\s]*)
    options_myextrafield1=EXTRACT:SUBJECT:([^\n]*)
    object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

    Use a ; char as separator to extract or set several properties. OpeningHours=營業時間 OpeningHoursDesc=在此處輸入貴公司的正常營業時間。 ResourceSetup=資源模組的設定 @@ -1959,6 +1973,7 @@ WarningValueHigherSlowsDramaticalyOutput=警告,較高的值會嚴重降低輸 ModuleActivated=模組%s已啟動並顯示於界面上 EXPORTS_SHARE_MODELS=匯出模組功能可分享此模組給所有人 ExportSetup=模組匯出設定 +ImportSetup=模組匯入設定 InstanceUniqueID=實例的唯一ID SmallerThan=小於 LargerThan=大於 @@ -1979,5 +1994,9 @@ MakeAnonymousPing=對Dolibarr基金會服務器進行匿名Ping'+1'(僅在安 FeatureNotAvailableWithReceptionModule=啟用接收模組後,此功能不可用 EmailTemplate=電子郵件模板 EMailsWillHaveMessageID=電子郵件將具有與此語法匹配的標籤“參考” -PDF_USE_ALSO_LANGUAGE_CODE=如果要在同一個產生的PDF中以兩種不同的語言複製PDF中的某些文字標題,則必須在此處設置第二種語言,這樣產生的PDF將在同一頁面中包含兩種不同的語言,一種是在產生PDF時選擇的語言,另一種是此種語言(只有少數PDF模板支持此功能)。每個PDF一種語言則保留為空。 +PDF_USE_ALSO_LANGUAGE_CODE=如果您要在生成同一的PDF中以兩種不同的語言複製一些文字,則必須在此處設置第二種語言讓生成的PDF在同一頁中包含兩種不同的語言,選擇的可以用來生成PDF跟另一種語言(只有少數PDF模板支援此功能)。PDF只有一種語言則留空。 FafaIconSocialNetworksDesc=在此處輸入FontAwesome圖示的代碼。如果您不知道什麼是FontAwesome,則可以使用通用值fa-address-book。 +RssNote=注意:每個RSS feed定義都提供一個小部件,您必須啟用該小部件才能使其在儀表板中看到 +JumpToBoxes=跳至設定 -> 小部件 +MeasuringUnitTypeDesc=使用值例如 "size", "surface", "volume", "weight", "time" +MeasuringScaleDesc=比例尺是您必須移動小數部分以匹配默認參考單位的位數。對於“時間”單位類型,它是秒數。 80到99之間的值是保留值。 diff --git a/htdocs/langs/zh_TW/bills.lang b/htdocs/langs/zh_TW/bills.lang index 35563bc4664..9c06b78ff0d 100644 --- a/htdocs/langs/zh_TW/bills.lang +++ b/htdocs/langs/zh_TW/bills.lang @@ -58,17 +58,17 @@ SuppliersInvoices=供應商發票 SupplierBill=供應商發票 SupplierBills=供應商發票 Payment=付款 -PaymentBack=還款 -CustomerInvoicePaymentBack=還款 +PaymentBack=退款 +CustomerInvoicePaymentBack=退款 Payments=付款 PaymentsBack=退回付款 paymentInInvoiceCurrency=發票幣別 PaidBack=退款 DeletePayment=刪除付款 ConfirmDeletePayment=您確定要刪除此付款? -ConfirmConvertToReduc=您是否要將%s轉換為絕對折扣? +ConfirmConvertToReduc=您是否要將%s轉換為可用信用? ConfirmConvertToReduc2=此金額將保存在所有折扣中,並可用作此客戶目前或未來發票的折扣。 -ConfirmConvertToReducSupplier=您是否要將%s轉換為絕對折扣? +ConfirmConvertToReducSupplier=您是否要將%s轉換為可用信用? ConfirmConvertToReducSupplier2=此金額將保存在所有折扣中,並可用作此供應商目前或未來發票的折扣。 SupplierPayments=供應商付款 ReceivedPayments=收到付款 @@ -209,17 +209,13 @@ NumberOfBillsByMonth=每月發票數 AmountOfBills=發票金額 AmountOfBillsHT=發票金額(稅後) AmountOfBillsByMonthHT=每月發票(invoice)金額(稅後) -ShowSocialContribution=顯示社會/財務稅 -ShowBill=顯示發票 -ShowInvoice=顯示發票 -ShowInvoiceReplace=顯示替換發票 -ShowInvoiceAvoir=顯示信用票據(折讓單-credit notes) -ShowInvoiceDeposit=顯示預付款發票 -ShowInvoiceSituation=顯示發票狀況 UseSituationInvoices=允許發票狀況 UseSituationInvoicesCreditNote=允許發票狀況信用票據(折讓單-credit notes) Retainedwarranty=有保修 +AllowedInvoiceForRetainedWarranty=保留保固,可用於以下類型的發票 RetainedwarrantyDefaultPercent=有保修預設百分比 +RetainedwarrantyOnlyForSituation=使“保留保固”僅適用於情況發票 +RetainedwarrantyOnlyForSituationFinal=在情況發票上,全域“保留保固”扣除僅適用於最終情況 ToPayOn=支付%s toPayOn=支付%s RetainedWarranty=保修 @@ -230,7 +226,6 @@ setretainedwarranty=設定保修 setretainedwarrantyDateLimit=設定保修期限制 RetainedWarrantyDateLimit=保修期限制 RetainedWarrantyNeed100Percent=發票情況需要以100%%的進度顯示在PDF上 -ShowPayment=顯示付款 AlreadyPaid=已付款 AlreadyPaidBack=已償還 AlreadyPaidNoCreditNotesNoDeposits=已付款(無信用票據(折讓單-credit notes)和預付款) @@ -390,6 +385,7 @@ GeneratedFromTemplate=已從發票範本%s產生 WarningInvoiceDateInFuture=警告,發票日期大於目前日期 WarningInvoiceDateTooFarInFuture=警告,發票日期與目前日期相距太遠 ViewAvailableGlobalDiscounts=檢視可用折扣 +GroupPaymentsByModOnReports=在報告上依模式分組付款 # PaymentConditions Statut=狀態 PaymentConditionShortRECEP=即時 @@ -509,7 +505,7 @@ ToMakePayment=付款 ToMakePaymentBack=退還款項 ListOfYourUnpaidInvoices=未付款發票清單 NoteListOfYourUnpaidInvoices=注意:此列表僅包含被您連接的銷售代表合作方發票。 -RevenueStamp=印花稅 +RevenueStamp=印花稅票 YouMustCreateInvoiceFromThird=僅當從合作方的“客戶”標籤建立發票時,此選項才可使用 YouMustCreateInvoiceFromSupplierThird=僅當從合作方的“供應商”標籤建立發票時,此選項才可用 YouMustCreateStandardInvoiceFirstDesc=您必須先建立標準發票,然後將其轉換為“範本”才能建立新的發票範本 @@ -575,3 +571,4 @@ AutoFillDateTo=設定服務行的結束日期為下一個發票日期 AutoFillDateToShort=設定結束日期 MaxNumberOfGenerationReached=已達到最大產生數目 BILL_DELETEInDolibarr=發票已刪除 +BILL_SUPPLIER_DELETEInDolibarr=供應商發票已刪除 diff --git a/htdocs/langs/zh_TW/blockedlog.lang b/htdocs/langs/zh_TW/blockedlog.lang index 73993af78d0..98a1bcf5d5c 100644 --- a/htdocs/langs/zh_TW/blockedlog.lang +++ b/htdocs/langs/zh_TW/blockedlog.lang @@ -8,7 +8,7 @@ BrowseBlockedLog=不可更改的日誌 ShowAllFingerPrintsMightBeTooLong=顯示所有存檔的日誌(可能很長) ShowAllFingerPrintsErrorsMightBeTooLong=顯示所有無效的歸檔日誌(可能很長) DownloadBlockChain=下載指紋 -KoCheckFingerprintValidity=歸檔的日誌條目無效。這意味著某人(黑客?)在記錄此記錄後已修改了該記錄的某些數據,或者已刪除了先前的存檔記錄(檢查是否存在具有先前#號的行)。 +KoCheckFingerprintValidity=Archived log entry is not valid. It means someone (a hacker?) has modified some data of this record after it was recorded, or has erased the previous archived record (check that line with previous # exists). OkCheckFingerprintValidity=歸檔日誌記錄有效。此行上的數據未修改,並且該條目位於上一個條目之後。 OkCheckFingerprintValidityButChainIsKo=與以前的日誌相比,已歸檔的日誌似乎有效,但是先前的鏈已損壞。 AddedByAuthority=已儲存到遠端授權中 diff --git a/htdocs/langs/zh_TW/cashdesk.lang b/htdocs/langs/zh_TW/cashdesk.lang index 3c7f249c9d2..5447d2abd79 100644 --- a/htdocs/langs/zh_TW/cashdesk.lang +++ b/htdocs/langs/zh_TW/cashdesk.lang @@ -15,23 +15,24 @@ NewSell=新銷售 AddThisArticle=加入此文章 RestartSelling=回到銷售 SellFinished=銷售完成 -PrintTicket=列印服務單 -NoProductFound=沒有找到文章 +PrintTicket=列印銷售單 +SendTicket=送出銷售單 +NoProductFound=未找到文章 ProductFound=找到產品 -NoArticle=沒有文章 +NoArticle=無文章 Identification=證明 Article=文章 Difference=差異 -TotalTicket=全部服務單 +TotalTicket=全部銷售單 NoVAT=此銷售沒有營業稅 -Change=收到過多 +Change=超額已收到 BankToPay=付款帳戶 ShowCompany=顯示公司 ShowStock=顯示倉庫 DeleteArticle=點擊刪除此文章 FilterRefOrLabelOrBC=搜索(參考/標籤) -UserNeedPermissionToEditStockToUsePos=您要求減少發票建立中的庫存,因此使用POS的用戶需要具有編輯庫存的權限。 -DolibarrReceiptPrinter=Dolibarr收據印表機 +UserNeedPermissionToEditStockToUsePos=您要求減少由發票建立的庫存,所以使用POS的使用者需要具有編輯庫存的權限。 +DolibarrReceiptPrinter=Dolibarr 收據印表機 PointOfSale=銷售點 PointOfSaleShort=POS CloseBill=結帳 @@ -45,21 +46,23 @@ SearchProduct=搜尋商品 Receipt=收據 Header=頁首 Footer=頁尾 -AmountAtEndOfPeriod=期末金額(天,月或年) +AmountAtEndOfPeriod=結束的金額(天,月或年) TheoricalAmount=理論金額 RealAmount=實際金額 +CashFence=現金圍欄 CashFenceDone=本期現金圍欄完成 NbOfInvoices=發票數 Paymentnumpad=輸入付款的便籤類型 Numberspad=號碼便籤 BillsCoinsPad=硬幣和紙幣便籤 DolistorePosCategory=用於Dolibarr的TakePOS模組與其他POS解決方案 -TakeposNeedsCategories=TakePOS需要產品類別才能使用 +TakeposNeedsCategories=TakePOS 需要產品類別才能使用 OrderNotes=訂購須知 CashDeskBankAccountFor=用於付款的預設帳戶 -NoPaimementModesDefined=在TakePOS設定中未定義付款方式 -TicketVatGrouped=在服務單中依營業稅率分組 -AutoPrintTickets=自動列印服務單 +NoPaimementModesDefined=在 TakePOS 設定中未定義付款方式 +TicketVatGrouped=按銷售單中的費率合計營業稅 +AutoPrintTickets=自動列印銷售單|收據 +PrintCustomerOnReceipts=列印客戶在銷售單收據上 EnableBarOrRestaurantFeatures=啟用酒吧或餐廳的功能 ConfirmDeletionOfThisPOSSale=您確認刪除目前銷售嗎? ConfirmDiscardOfThisPOSSale=您是否要放棄目前銷售? @@ -67,27 +70,41 @@ History=歷史紀錄 ValidateAndClose=驗證並關閉 Terminal=終端機 NumberOfTerminals=終端機數 -TerminalSelect=選擇您要使用的站台: -POSTicket=POS服務單 -POSTerminal=POS終端機 -POSModule=POS模組 +TerminalSelect=選擇您要使用的終端機: +POSTicket=POS 銷售單 +POSTerminal=POS 終端機 +POSModule=POS 模組 BasicPhoneLayout=在手機上使用基本佈局 -SetupOfTerminalNotComplete=站台%s的設定未完成 +SetupOfTerminalNotComplete=終端機%s的設定尚未完成 DirectPayment=直接付款 DirectPaymentButton=直接現金付款按鈕 InvoiceIsAlreadyValidated=發票已通過驗證 NoLinesToBill=無計費項目 -CustomReceipt=自定義收據 +CustomReceipt=自訂收據 ReceiptName=收據名稱 ProductSupplements=產品補充 SupplementCategory=補充品類別 ColorTheme=顏色主題 Colorful=彩色 HeadBar=標題欄 -SortProductField=Field for sorting products +SortProductField=產品分類欄位 Browser=瀏覽器 -BrowserMethodDescription=Simple and easy receipt printing. Only a few parameters to configure the receipt. Print via browser. -TakeposConnectorMethodDescription=External module with extra features. Posibility to print from de cloud. -PrintMethod=Print method -ReceiptPrinterMethodDescription=Powerful method with a lot of parameters. Full customizable with templates. Cannot print from the cloud. -ByTerminal=By terminal +BrowserMethodDescription=簡易列印收據。僅需幾個參數即可設定收據。通過瀏覽器打印。 +TakeposConnectorMethodDescription=具有附加功能的外部模組。可以從雲端列印。 +PrintMethod=列印方式 +ReceiptPrinterMethodDescription=具有很多參數的強大方法。完全可定制的模板。無法從雲端列印。 +ByTerminal=依照站台 +TakeposNumpadUsePaymentIcon=在數字鍵上使用付款圖示 +CashDeskRefNumberingModules=POS銷售編號模組 +CashDeskGenericMaskCodes6 =
    {TN} 標籤用於增加站台 +TakeposGroupSameProduct=群組相同產品線 +StartAParallelSale=開啟新的平行銷售 +ControlCashOpening=打開銷售點時控制收銀機 +CloseCashFence=關閉現金圍籬 +CashReport=現金報告 +MainPrinterToUse=要使用的主印表機 +OrderPrinterToUse=要使用的訂單印表機 +MainTemplateToUse=要使用的主要模板 +OrderTemplateToUse=要使用的訂單模板 +BarRestaurant=酒吧餐廳 +AutoOrder=客戶自動下單 diff --git a/htdocs/langs/zh_TW/companies.lang b/htdocs/langs/zh_TW/companies.lang index 7920527ed13..68c65175bd0 100644 --- a/htdocs/langs/zh_TW/companies.lang +++ b/htdocs/langs/zh_TW/companies.lang @@ -325,8 +325,8 @@ CompanyDeleted=已從資料庫中刪除“%s”公司。 ListOfContacts=通訊錄/地址清單 ListOfContactsAddresses=通訊錄/地址清單 ListOfThirdParties=合作方清單 -ShowCompany=顯示合作方 -ShowContact=顯示連絡人 +ShowCompany=合作方 +ShowContact=聯絡人-地址 ContactsAllShort=全部(不過濾) ContactType=連絡型式 ContactForOrders=訂單連絡人 @@ -447,6 +447,7 @@ SaleRepresentativeFirstname=業務代表的名字 SaleRepresentativeLastname=業務代表的姓氏 ErrorThirdpartiesMerge=刪除合作方時發生錯誤。請檢查日誌。原變更已被回復。 NewCustomerSupplierCodeProposed=客戶或供應商代碼已使用,已建議新代碼 +KeepEmptyIfGenericAddress=如果此地址是通用地址,請將此欄位保留為空 #Imports PaymentTypeCustomer=付款方式-客戶 PaymentTermsCustomer=付款條件-客戶 diff --git a/htdocs/langs/zh_TW/compta.lang b/htdocs/langs/zh_TW/compta.lang index cfe4c56d496..c6b1a038bf3 100644 --- a/htdocs/langs/zh_TW/compta.lang +++ b/htdocs/langs/zh_TW/compta.lang @@ -157,9 +157,9 @@ SeeReportInInputOutputMode=有關實際付款(即使尚未在分類帳中實際 SeeReportInDueDebtMode=有關基於已記錄發票(即使尚未在分類帳中進行核算)的計算,請參閱%s發票分析%s。 SeeReportInBookkeepingMode=請參閱%s簿記報告%s了解關於簿記分類帳表的計算 RulesAmountWithTaxIncluded=-顯示的金額包括所有稅費 -RulesResultDue=-包括未結發票,費用,營業稅,捐贈(無論是否付款)。還包括帶薪工資。
    -它基於發票和營業稅的確認日期以及費用的到期日。對於使用“工資”模組定義的工資,將使用付款的起算日。 +RulesResultDue=-包括無論是否付款的未結發票,費用,增值稅,捐贈。還包括已付款薪資。
    -它基於發票的開票日期以及費用或稅款的到期日。對於使用“薪資”模組定義的薪資,將使用付款的起息日。 RulesResultInOut=-它包括發票,費用,營業稅和薪水的實際付款。
    -它基於發票,費用,營業稅和薪水的付款日期。捐贈的捐贈日期。 -RulesCADue=-它包括客戶無論是否已付款的到期發票。
    -它基於這些發票的生效日期。
    +RulesCADue=-它包括客戶的到期發票,無論是否已付款。
    -它基於這些發票的開票日期。
    RulesCAIn=-包括從客戶收到的所有有效發票付款。
    -此基於這些發票的付款日期
    RulesCATotalSaleJournal=它包括“銷售”日記帳中的所有信用額度。 RulesAmountOnInOutBookkeepingRecord=它包括分類帳中具有“ 費用”或“ 收入”組的會計帳戶中的記錄 @@ -255,3 +255,12 @@ TurnoverbyVatrate=依營業稅率開票的營業額 TurnoverCollectedbyVatrate=依營業稅率收取的營業額 PurchasebyVatrate=依銷售購買稅率 LabelToShow=短標籤 +PurchaseTurnover=採購營業額 +PurchaseTurnoverCollected=採購營業額 +RulesPurchaseTurnoverDue=-它包括供應商的到期發票,無論是否已付款。
    -它基於這些發票的發票日期。
    +RulesPurchaseTurnoverIn=-它包括對供應商的所有有效發票付款。
    -此基於這些發票的付款日期
    +RulesPurchaseTurnoverTotalPurchaseJournal=它包括採購日記帳中的所有借方行。 +ReportPurchaseTurnover=已開票營業額 +ReportPurchaseTurnoverCollected=採購營業額 +IncludeVarpaysInResults = 在報告中包括各種付款 +IncludeLoansInResults = 在報告中包括貸款 diff --git a/htdocs/langs/zh_TW/errors.lang b/htdocs/langs/zh_TW/errors.lang index 1a413cdd581..5f3c373da1c 100644 --- a/htdocs/langs/zh_TW/errors.lang +++ b/htdocs/langs/zh_TW/errors.lang @@ -59,6 +59,7 @@ ErrorPartialFile=伺服器未完整的收到檔案。 ErrorNoTmpDir=臨時指示%s不存在。 ErrorUploadBlockedByAddon=PHP / Apache的插件已阻擋上傳。 ErrorFileSizeTooLarge=檔案太大。 +ErrorFieldTooLong=欄位%s太長。 ErrorSizeTooLongForIntType=位數超過int類型(最大位數%s) ErrorSizeTooLongForVarcharType=位數超過字串類型(最大位數%s) ErrorNoValueForSelectType=請填寫所選清單的值 @@ -96,7 +97,7 @@ ErrorBadMaskFailedToLocatePosOfSequence=錯誤,遮罩沒有序列號 ErrorBadMaskBadRazMonth=錯誤,不好的重置值 ErrorMaxNumberReachForThisMask=已達到此遮罩的最大數量 ErrorCounterMustHaveMoreThan3Digits=計數器必須超過3位數字 -ErrorSelectAtLeastOne=Error, select at least one entry. +ErrorSelectAtLeastOne=錯誤,請至少選擇一項。 ErrorDeleteNotPossibleLineIsConsolidated=無法刪除,因為記錄連結到已調解的銀行交易 ErrorProdIdAlreadyExist=%s已被分配到另一個合作方 ErrorFailedToSendPassword=無法傳送密碼 @@ -117,8 +118,8 @@ ErrorLoginDoesNotExists=找不到登入名稱%s的用戶。 ErrorLoginHasNoEmail=這位用戶沒有電子郵件地址。程序中止。 ErrorBadValueForCode=安全代碼有錯誤的值。請嘗試新的值... ErrorBothFieldCantBeNegative=欄位%s和%s不能都為負值 -ErrorFieldCantBeNegativeOnInvoice=Field %s cannot be negative on this type of invoice. If you need to add a discount line, just create the discount first (from field '%s' in thirdparty card) and apply it to the invoice. -ErrorLinesCantBeNegativeForOneVATRate=Total of lines can't be negative for a given VAT rate. +ErrorFieldCantBeNegativeOnInvoice=此類型的發票欄位 %s 不能為負。如果您需要增加折扣行,只需先建立折扣(從合作方卡中的欄位“ %s”開始)並將其使用於發票。 +ErrorLinesCantBeNegativeForOneVATRate=對於給定的營業稅率,行總數不能為負。 ErrorLinesCantBeNegativeOnDeposits=存款中的行數不能為負。如果您需要在最終發票中消耗定金,會遇到問題。 ErrorQtyForCustomerInvoiceCantBeNegative=客戶發票行的數量不能為負值 ErrorWebServerUserHasNotPermission=用戶帳戶%s沒有權限用來執行網頁伺服器 @@ -229,12 +230,13 @@ ErrorFieldRequiredForProduct=產品%s必須有欄位'%s' ProblemIsInSetupOfTerminal=問題在於站台%s的設定。 ErrorAddAtLeastOneLineFirst=請先至少增加一行 ErrorRecordAlreadyInAccountingDeletionNotPossible=錯誤,記錄已在會計中轉移,無法刪除。 -ErrorLanguageMandatoryIfPageSetAsTranslationOfAnother=Error, language is mandatory if you set the page as a translation of another one. -ErrorLanguageOfTranslatedPageIsSameThanThisPage=Error, language of translated page is same than this one. -ErrorBatchNoFoundForProductInWarehouse=No lot/serial found for product "%s" in warehouse "%s". -ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=No enough quantity for this lot/serial for product "%s" in warehouse "%s". -ErrorOnlyOneFieldForGroupByIsPossible=Only 1 field for the 'Group by' is possible (others are discarded) -ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't user it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorLanguageMandatoryIfPageSetAsTranslationOfAnother=錯誤,如果將頁面設定為另一頁面的翻譯,則語言為必填項目。 +ErrorLanguageOfTranslatedPageIsSameThanThisPage=錯誤,翻譯頁面的語言與此相同。 +ErrorBatchNoFoundForProductInWarehouse=在倉庫“ %s”中找不到產品“ %s”的批次/序列。 +ErrorBatchNoFoundEnoughQuantityForProductInWarehouse=倉庫“ %s”中產品“ %s”的此批次/序列沒有足夠的數量。 +ErrorOnlyOneFieldForGroupByIsPossible=“群組依據”只能使用1個欄位(其他欄位則被丟棄) +ErrorTooManyDifferentValueForSelectedGroupBy=Found too many different value (more than %s) for the field '%s', so we can't use it as a 'Group by' for graphics. The field 'Group By' has been removed. May be you wanted to use it as an X-Axis ? +ErrorReplaceStringEmpty=Error, the string to replace into is empty # Warnings WarningParamUploadMaxFileSizeHigherThanPostMaxSize=您的PHP參數upload_max_filesize(%s)高於PHP參數post_max_size(%s)。這不是相同的設定。 WarningPasswordSetWithNoAccount=為此會員設定了密碼。但是,沒有建立用戶帳戶。因此,雖然密碼已儲存,但不能用於登入Dolibarr。外部模組/界面可以使用它,但是如果您不需要為會員定義任何登入名稱或密碼,則可以從會員模組設定中禁用選項“管理每個會員的登入名稱”。如果您需要管理登入名稱但不需要任何密碼,則可以將此欄位保留為空白以避免此警告。注意:如果會員連結到用戶,電子郵件也可以用作登入名稱。 diff --git a/htdocs/langs/zh_TW/install.lang b/htdocs/langs/zh_TW/install.lang index 12a86f20e15..2c284ef7fd7 100644 --- a/htdocs/langs/zh_TW/install.lang +++ b/htdocs/langs/zh_TW/install.lang @@ -16,6 +16,7 @@ PHPSupportCurl=此PHP支援Curl。 PHPSupportCalendar=此PHP支援日曆外掛。 PHPSupportUTF8=此PHP支援UTF8函數。 PHPSupportIntl=此PHP支援Intl函數。 +PHPSupportxDebug=This PHP supports extended debug functions. PHPSupport=此PHP支援%s函數。 PHPMemoryOK=您的PHP最大session記憶體設定為%s 。這應該足夠了。 PHPMemoryTooLow=您的PHP最大session記憶體為%sbytes。這太低了。更改您的php.ini,以將記憶體限制/b>參數設定為至少%sbytes。 @@ -26,6 +27,7 @@ ErrorPHPDoesNotSupportCurl=您的PHP安裝不支援Curl。 ErrorPHPDoesNotSupportCalendar=您的PHP安裝不支援php日曆外掛。 ErrorPHPDoesNotSupportUTF8=您的PHP安裝不支援UTF8函數。 Dolibarr無法正常工作。必須在安裝Dolibarr之前修復此問題。 ErrorPHPDoesNotSupportIntl=您的PHP安裝不支援Intl函數。 +ErrorPHPDoesNotSupportxDebug=Your PHP installation does not support extend debug functions. ErrorPHPDoesNotSupport=您的PHP安裝不支援%s函數。 ErrorDirDoesNotExists=資料夾%s不存在。 ErrorGoBackAndCorrectParameters=返回並檢查/更正參數。 @@ -217,3 +219,5 @@ YouTryInstallDisabledByDirLock=該應用程式嘗試進行自我升級,但是 YouTryInstallDisabledByFileLock=此應用程式嘗試進行自我升級,但是出於安全性考慮,已禁用了安裝/升級頁面(由於dolibarr檔案資料夾中存在鎖定文件install.lock )。
    ClickHereToGoToApp=點擊此處前往您的應用程式 ClickOnLinkOrRemoveManualy=點擊以下連結。如果始終看到同一頁面,則必須在檔案資料夾中刪除/重命名檔案install.lock。 +Loaded=Loaded +FunctionTest=Function test diff --git a/htdocs/langs/zh_TW/link.lang b/htdocs/langs/zh_TW/link.lang index eaf82ee5cf6..23949b86a29 100644 --- a/htdocs/langs/zh_TW/link.lang +++ b/htdocs/langs/zh_TW/link.lang @@ -8,3 +8,4 @@ LinkRemoved=此連線%s已被刪除 ErrorFailedToDeleteLink= 無法刪除連線“ %s ” ErrorFailedToUpdateLink= 無法更新連線' %s' URLToLink=連線網址 +OverwriteIfExists=Overwrite file if exists diff --git a/htdocs/langs/zh_TW/mails.lang b/htdocs/langs/zh_TW/mails.lang index fc28e885056..dbcd1715b72 100644 --- a/htdocs/langs/zh_TW/mails.lang +++ b/htdocs/langs/zh_TW/mails.lang @@ -1,170 +1,170 @@ # Dolibarr language file - Source file is en_US - mails Mailing=發送電子郵件 -EMailing=發送電子郵件 -EMailings=EMailings -AllEMailings=所有eMailings -MailCard=通過電子郵件發送卡 +EMailing=電子郵件 +EMailings=電子郵件 +AllEMailings=所有電子郵件 +MailCard=電子郵件卡片 MailRecipients=收件人 MailRecipient=收件人 MailTitle=描述 MailFrom=寄件人 -MailErrorsTo=誤差的 -MailReply=回復 +MailErrorsTo=錯誤收件箱 +MailReply=回覆 MailTo=收件人 -MailToUsers=給用戶 +MailToUsers=發送給用戶 MailCC=副本 -MailToCCUsers=複製到用戶 -MailCCC=緩存副本 +MailToCCUsers=CC +MailCCC=CCC MailTopic=電子郵件主題 MailText=郵件內容 MailFile=附加檔案 -MailMessage=電子郵件正文 +MailMessage=電子郵件內容 SubjectNotIn=不在主題中 -BodyNotIn=Not in Body +BodyNotIn=不在內容中 ShowEMailing=顯示電子郵件 -ListOfEMailings=名單emailings +ListOfEMailings=電子郵件清單 NewMailing=新電子郵件 EditMailing=編輯電子郵件 ResetMailing=重新發送電子郵件 DeleteMailing=刪除電子郵件 DeleteAMailing=刪除一個電子郵件 PreviewMailing=預覽電子郵件 -CreateMailing=創建電子郵件 -TestMailing=測試的電子郵件 +CreateMailing=建立電子郵件 +TestMailing=測試電子郵件 ValidMailing=有效的電子郵件 MailingStatusDraft=草案 -MailingStatusValidated=驗證 +MailingStatusValidated=已驗證 MailingStatusSent=發送 -MailingStatusSentPartialy=發送部分 -MailingStatusSentCompletely=發送完全 +MailingStatusSentPartialy=部分發送 +MailingStatusSentCompletely=完全發送 MailingStatusError=錯誤 MailingStatusNotSent=不發送 -MailSuccessfulySent=Email (from %s to %s) successfully accepted for delivery -MailingSuccessfullyValidated=EMailing successfully validated +MailSuccessfulySent=已成功接收電子郵件(從%s到%s) +MailingSuccessfullyValidated=電子郵件成功驗證 MailUnsubcribe=退訂 MailingStatusNotContact=不要再聯繫 MailingStatusReadAndUnsubscribe=讀取和退訂 ErrorMailRecipientIsEmpty=電子郵件收件人是空的 -WarningNoEMailsAdded=沒有新的電子郵件添加到收件人的名單。 +WarningNoEMailsAdded=沒有新的電子郵件可增加到收件人清單。 ConfirmValidMailing=您確定要驗證此電子郵件嗎? -ConfirmResetMailing=Warning, by re-initializing emailing %s, you will allow the re-sending this email in a bulk mailing. Are you sure you want to do this? +ConfirmResetMailing=警告,通過重新初始化電子郵件%s ,您可以批次發送此電子郵件。你確定要這麼做嗎? ConfirmDeleteMailing=您確定要刪除此電子郵件嗎? -NbOfUniqueEMails=不重複的電子郵件數 +NbOfUniqueEMails=獨特電子郵件的數量 NbOfEMails=電子郵件數量 -TotalNbOfDistinctRecipients=受助人數目明顯 -NoTargetYet=受助人還沒有確定(走吧標簽'收件人') -NoRecipientEmail=沒有有關%s收件人的電子郵件 +TotalNbOfDistinctRecipients=不重複收件人數量 +NoTargetYet=尚未定義收件人(在“收件人”分頁上) +NoRecipientEmail=沒有有關收件人%s的電子郵件 RemoveRecipient=刪除收件人 -YouCanAddYourOwnPredefindedListHere=要創建您的電子郵件選擇模塊,見htdocs中/包括/模塊/郵寄/自述文件。 -EMailTestSubstitutionReplacedByGenericValues=當使用測試模式,替換變量的值取代通用 +YouCanAddYourOwnPredefindedListHere=要建立您的電子郵件選擇器模組,請參閱htdocs/core/modules/mailings/README。 +EMailTestSubstitutionReplacedByGenericValues=使用測試模式時,替換變數將替換為通用值 MailingAddFile=附加這個文件 NoAttachedFiles=沒有附加檔案 -BadEMail=Bad value for Email +BadEMail=電子郵件地址不正確 ConfirmCloneEMailing=您確定要複製此電子郵件嗎? -CloneContent=克隆消息 -CloneReceivers=克隆者 +CloneContent=複製訊息 +CloneReceivers=複製收件人 DateLastSend=最新發送的日期 DateSending=發送日期 SentTo=發送到%s -MailingStatusRead=閱讀 -YourMailUnsubcribeOK=The email %s is correctly unsubscribe from mailing list -ActivateCheckReadKey=Key used to encrypt URL used for "Read Receipt" and "Unsubscribe" feature -EMailSentToNRecipients=Email sent to %s recipients. -EMailSentForNElements=Email sent for %s elements. -XTargetsAdded=%s recipients added into target list -OnlyPDFattachmentSupported=If the PDF documents were already generated for the objects to send, they will be attached to email. If not, no email will be sent (also, note that only pdf documents are supported as attachments in mass sending in this version). -AllRecipientSelected=The recipients of the %s record selected (if their email is known). -GroupEmails=Group emails -OneEmailPerRecipient=One email per recipient (by default, one email per record selected) -WarningIfYouCheckOneRecipientPerEmail=Warning, if you check this box, it means only one email will be sent for several different record selected, so, if your message contains substitution variables that refers to data of a record, it becomes not possible to replace them. -ResultOfMailSending=Result of mass Email sending -NbSelected=Number selected -NbIgnored=Number ignored -NbSent=Number sent -SentXXXmessages=%s message(s) sent. -ConfirmUnvalidateEmailing=Are you sure you want to change email %s to draft status? -MailingModuleDescContactsWithThirdpartyFilter=Contact with customer filters -MailingModuleDescContactsByCompanyCategory=Contacts by third-party category -MailingModuleDescContactsByCategory=Contacts by categories -MailingModuleDescContactsByFunction=Contacts by position -MailingModuleDescEmailsFromFile=Emails from file -MailingModuleDescEmailsFromUser=Emails input by user -MailingModuleDescDolibarrUsers=Users with Emails -MailingModuleDescThirdPartiesByCategories=Third parties (by categories) -SendingFromWebInterfaceIsNotAllowed=Sending from web interface is not allowed. +MailingStatusRead=讀取 +YourMailUnsubcribeOK=電子郵件%s已正確從郵件清單中退訂 +ActivateCheckReadKey=用於“讀取回條”和“取消訂閱”功能的加密網址密鑰 +EMailSentToNRecipients=電子郵件已發送給%s收件人。 +EMailSentForNElements=已發送有關%s元件的電子郵件。 +XTargetsAdded=%s收件人已增加到目標清單 +OnlyPDFattachmentSupported=如果已經為要發送的項目產生了PDF文件,它們將被附加到電子郵件中。否則,將不會發送電子郵件(也請注意,在此版本的批次發送中,僅支援pdf文件作為附件)。 +AllRecipientSelected=已選擇%s記錄的收件人(如果知道他們的電子郵件)。 +GroupEmails=群組電子郵件 +OneEmailPerRecipient=每位收件人一封電子郵件(預設情況下,每條記錄選擇一封電子郵件) +WarningIfYouCheckOneRecipientPerEmail=警告,如果選中此框,則意味著將為選定的多個不同記錄發送一封電子郵件,因此,如果您的訊息包含引用記錄資料的替換變數,則無法替換它們。 +ResultOfMailSending=批次電子郵件發送的結果 +NbSelected=已選擇數量 +NbIgnored=已忽略數量 +NbSent=已發送數量 +SentXXXmessages=已發送%s訊息 +ConfirmUnvalidateEmailing=您確定要將電子郵件%s更改為草稿狀態嗎? +MailingModuleDescContactsWithThirdpartyFilter=有客戶過濾器的聯絡人 +MailingModuleDescContactsByCompanyCategory=合作方類別的聯絡人 +MailingModuleDescContactsByCategory=依類別聯絡 +MailingModuleDescContactsByFunction=依職位聯絡 +MailingModuleDescEmailsFromFile=來自檔案的電子郵件 +MailingModuleDescEmailsFromUser=用戶輸入的電子郵件 +MailingModuleDescDolibarrUsers=擁有電子郵件的用戶 +MailingModuleDescThirdPartiesByCategories=合作方(依類別) +SendingFromWebInterfaceIsNotAllowed=不允許從Web界面發送。 # Libelle des modules de liste de destinataires mailing -LineInFile=在文件%s的線 -RecipientSelectionModules=為收件人的選擇定義的要求 -MailSelectedRecipients=選擇收件人 -MailingArea=EMailings區 -LastMailings=Latest %s emailings -TargetsStatistics=統計指標 -NbOfCompaniesContacts=公司獨特的接觸 -MailNoChangePossible=為驗證電子郵件收件人無法改變 +LineInFile=在檔案%s的行 +RecipientSelectionModules=已定義收件人的選擇要求 +MailSelectedRecipients=已選擇收件人 +MailingArea=電子郵件區域 +LastMailings=最新%s的電子郵件 +TargetsStatistics=目標統計 +NbOfCompaniesContacts=獨特的聯絡人/地址 +MailNoChangePossible=已驗證電子郵件的收件人無法更改 SearchAMailing=搜尋郵件 -SendMailing=發送電子郵件 -SentBy=發送 -MailingNeedCommand=Sending an emailing can be performed from command line. Ask your server administrator to launch the following command to send the emailing to all recipients: -MailingNeedCommand2=但是您可以發送到網上,加入與最大的電子郵件數量值參數MAILING_LIMIT_SENDBYWEB你要發送的會議。 -ConfirmSendingEmailing=If you want to send emailing directly from this screen, please confirm you are sure you want to send emailing now from your browser ? -LimitSendingEmailing=Note: Sending of emailings from web interface is done in several times for security and timeout reasons, %s recipients at a time for each sending session. -TargetsReset=清除名單 -ToClearAllRecipientsClickHere=點擊這裏以清除此電子郵件的收件人列表 -ToAddRecipientsChooseHere=添加從名單中選擇收件人 -NbOfEMailingsReceived=收到群眾emailings -NbOfEMailingsSend=Mass emailings sent -IdRecord=編號記錄 -DeliveryReceipt=Delivery Ack. +SendMailing=發送郵件 +SentBy=寄件人 +MailingNeedCommand=可以從命令行發送電子郵件。請您的伺服器管理員啟動以下命令,以將電子郵件發送給所有收件人: +MailingNeedCommand2=您可以透過增加MAILING_LIMIT_SENDBYWEB參數並設定每次程序中可發送最大電子郵件數量以在線發送。啟動此功能,請前往首頁-設定-其他。 +ConfirmSendingEmailing=如果要直接從此畫面發送電子郵件,請確認您確定要立即從瀏覽器發送電子郵件嗎? +LimitSendingEmailing=注意:出於安全性和超時的原因,從Web界面多次進行發送電子郵件已完成,每次發送程序皆一個收件人%s 。 +TargetsReset=清除清單 +ToClearAllRecipientsClickHere=點擊這裏以清除此電子郵件的收件人清單 +ToAddRecipientsChooseHere=從清單中增加收件人 +NbOfEMailingsReceived=收到大量電子郵件 +NbOfEMailingsSend=已發送批次電子郵件 +IdRecord=ID記錄 +DeliveryReceipt=已讀取回條。 YouCanUseCommaSeparatorForSeveralRecipients=您可以使用逗號來指定多個收件人。 -TagCheckMail=Track mail opening -TagUnsubscribe=Unsubscribe link -TagSignature=Signature of sending user -EMailRecipient=Recipient Email -TagMailtoEmail=Recipient Email (including html "mailto:" link) -NoEmailSentBadSenderOrRecipientEmail=No email sent. Bad sender or recipient email. Verify user profile. +TagCheckMail=追蹤郵件讀取 +TagUnsubscribe=取消訂閱連結 +TagSignature=發送用戶的簽名 +EMailRecipient=收件人電子郵件 +TagMailtoEmail=收件人電子郵件(包括html“ mailto:”連結) +NoEmailSentBadSenderOrRecipientEmail=沒有發送電子郵件。寄件人或收件人的電子郵件不正確。驗證用戶資料。 # Module Notifications Notifications=通知 -NoNotificationsWillBeSent=沒有電子郵件通知此事件的計劃和公司 -ANotificationsWillBeSent=1通知將通過電子郵件發送 +NoNotificationsWillBeSent=沒有為此事件和公司計畫的電子郵件通知 +ANotificationsWillBeSent=1個通知將通過電子郵件發送 SomeNotificationsWillBeSent=%s的通知將通過電子郵件發送 -AddNewNotification=Activate a new email notification target/event -ListOfActiveNotifications=List all active targets/events for email notification +AddNewNotification=啟動新的電子郵件通知目標/事件 +ListOfActiveNotifications=列出所有活動目標/事件以進行電子郵件通知 ListOfNotificationsDone=列出所有發送電子郵件通知 -MailSendSetupIs=Configuration of email sending has been setup to '%s'. This mode can't be used to send mass emailing. -MailSendSetupIs2=You must first go, with an admin account, into menu %sHome - Setup - EMails%s to change parameter '%s' to use mode '%s'. With this mode, you can enter setup of the SMTP server provided by your Internet Service Provider and use Mass emailing feature. -MailSendSetupIs3=If you have any questions on how to setup your SMTP server, you can ask to %s. -YouCanAlsoUseSupervisorKeyword=You can also add the keyword __SUPERVISOREMAIL__ to have email being sent to the supervisor of user (works only if an email is defined for this supervisor) -NbOfTargetedContacts=Current number of targeted contact emails -UseFormatFileEmailToTarget=Imported file must have format email;name;firstname;other -UseFormatInputEmailToTarget=Enter a string with format email;name;firstname;other -MailAdvTargetRecipients=Recipients (advanced selection) -AdvTgtTitle=Fill input fields to preselect the third parties or contacts/addresses to target -AdvTgtSearchTextHelp=Use %% as wildcards. For example to find all item like jean, joe, jim, you can input j%%, you can also use ; as separator for value, and use ! for except this value. For example jean;joe;jim%%;!jimo;!jima% will target all jean, joe, start with jim but not jimo and not everything that starts with jima -AdvTgtSearchIntHelp=Use interval to select int or float value -AdvTgtMinVal=Minimum value -AdvTgtMaxVal=Maximum value -AdvTgtSearchDtHelp=Use interval to select date value -AdvTgtStartDt=Start dt. -AdvTgtEndDt=End dt. -AdvTgtTypeOfIncudeHelp=Target Email of third party and email of contact of the third party, or just third-party email or just contact email -AdvTgtTypeOfIncude=Type of targeted email -AdvTgtContactHelp=Use only if you target contact into "Type of targeted email" -AddAll=Add all -RemoveAll=Remove all -ItemsCount=Item(s) -AdvTgtNameTemplate=Filter name -AdvTgtAddContact=Add emails according to criteria -AdvTgtLoadFilter=Load filter -AdvTgtDeleteFilter=Delete filter -AdvTgtSaveFilter=Save filter -AdvTgtCreateFilter=Create filter -AdvTgtOrCreateNewFilter=Name of new filter -NoContactWithCategoryFound=No contact/address with a category found -NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found -OutGoingEmailSetup=Outgoing email setup -InGoingEmailSetup=Incoming email setup -OutGoingEmailSetupForEmailing=Outgoing email setup (for mass emailing) -DefaultOutgoingEmailSetup=Default outgoing email setup +MailSendSetupIs=電子郵件發送的設定已設定為“ %s”。此模式不能用於發送批次電子郵件。 +MailSendSetupIs2=您必須先使用管理員帳戶進入選單%s首頁-設定-EMails%s以將參數'%s'更改為使用模式 '%s'。使用此模式 ,您可以輸入Internet服務供應商提供的SMTP伺服器的設定,並使用批次電子郵件功能。 +MailSendSetupIs3=如果對如何設定SMTP伺服器有任何疑問,可以詢問%s。 +YouCanAlsoUseSupervisorKeyword=您還可以增加關鍵字__SUPERVISOREMAIL__以將電子郵件發送給用戶的主管(僅在為此主管定義了電子郵件的情況下有效) +NbOfTargetedContacts=目前目標聯絡人電子郵件的數量 +UseFormatFileEmailToTarget=匯入檔案的格式必須為電子郵件; 姓;名;其他 +UseFormatInputEmailToTarget=輸入字串格式為電子郵件; 姓;名;其他 +MailAdvTargetRecipients=收件人(進階選項) +AdvTgtTitle=填寫輸入欄位以預先選擇合作方或聯絡人/地址 +AdvTgtSearchTextHelp=使用%%作為通用字元。例如,要尋找像是jean,joe,jim的所有項目,可以輸入 j%% ,也可以使用;作為數值的分隔字元,並使用!排除此值。例如 jean;joe;jim%%;!jimo;!jima% 將會指向所有沒有jimo與所有以jima開始的jean,joe +AdvTgtSearchIntHelp=使用空格選擇整數或浮點值 +AdvTgtMinVal=最小值 +AdvTgtMaxVal=最大值 +AdvTgtSearchDtHelp=使用空白選擇日期值 +AdvTgtStartDt=開始目標。 +AdvTgtEndDt=結束目標。 +AdvTgtTypeOfIncudeHelp=合作方的目標電子郵件與合作方的聯絡人電子郵件,或僅合作方電子郵件或僅聯絡人電子郵件 +AdvTgtTypeOfIncude=目標電子郵件類型 +AdvTgtContactHelp=僅用於您將聯絡人定位為“目標電子郵件類型”時使用 +AddAll=全部加入 +RemoveAll=移除全部 +ItemsCount=項目 +AdvTgtNameTemplate=過濾器名稱 +AdvTgtAddContact=根據條件加入電子郵件 +AdvTgtLoadFilter=載入過濾器 +AdvTgtDeleteFilter=刪除過濾器 +AdvTgtSaveFilter=儲存過濾器 +AdvTgtCreateFilter=建立過濾器 +AdvTgtOrCreateNewFilter=新過濾器名稱 +NoContactWithCategoryFound=找不到具有類別的聯絡人/地址 +NoContactLinkedToThirdpartieWithCategoryFound=找不到具有類別的聯絡人/地址 +OutGoingEmailSetup=發送電子郵件設定 +InGoingEmailSetup=接收電子郵件設定 +OutGoingEmailSetupForEmailing=Outgoing email setup (for module %s) +DefaultOutgoingEmailSetup=預設發送電子郵件設定 Information=資訊 -ContactsWithThirdpartyFilter=Contacts with third-party filter +ContactsWithThirdpartyFilter=帶有合作方過濾器的聯絡人 diff --git a/htdocs/langs/zh_TW/main.lang b/htdocs/langs/zh_TW/main.lang index b7bf557b6a8..ee82ff56d58 100644 --- a/htdocs/langs/zh_TW/main.lang +++ b/htdocs/langs/zh_TW/main.lang @@ -8,8 +8,8 @@ FONTFORPDF=msungstdlight FONTSIZEFORPDF=10 SeparatorDecimal=. SeparatorThousand=, -FormatDateShort=%m/%d/%Y -FormatDateShortInput=%m/%d/%Y +FormatDateShort=%m/%d/%Y +FormatDateShortInput=%m/%d/%Y FormatDateShortJava=MM/dd/yyyy FormatDateShortJavaInput=MM/dd/yyyy FormatDateShortJQuery=mm/dd/yy @@ -174,6 +174,7 @@ SaveAndStay=儲存並留下 SaveAndNew=儲存並新增 TestConnection=測試連線 ToClone=複製 +ConfirmCloneAsk=您確定要複製物件 %s? ConfirmClone=選擇您要複製的數據: NoCloneOptionsSpecified=沒有已定義要複製的資料。 Of=的 @@ -425,6 +426,7 @@ Modules=模組/應用程式 Option=選項 List=清單 FullList=全部清單 +FullConversation=全部轉換 Statistics=統計 OtherStatistics=其他統計 Status=狀態 @@ -829,6 +831,8 @@ Gender=性別 Genderman=男 Genderwoman=女 ViewList=檢視清單 +ViewGantt=甘特圖 +ViewKanban=看板圖 Mandatory=必要 Hello=哈囉 GoodBye=再見 @@ -950,12 +954,13 @@ SearchIntoMembers=會員 SearchIntoUsers=用戶 SearchIntoProductsOrServices=產品或服務 SearchIntoProjects=專案 +SearchIntoMO=製造訂單 SearchIntoTasks=任務 SearchIntoCustomerInvoices=客戶發票 SearchIntoSupplierInvoices=供應商發票 SearchIntoCustomerOrders=銷售訂單 SearchIntoSupplierOrders=採購訂單 -SearchIntoCustomerProposals=客戶提案/建議書 +SearchIntoCustomerProposals=商業提案/建議書 SearchIntoSupplierProposals=供應商提案/建議書 SearchIntoInterventions=干預/介入 SearchIntoContracts=合約 @@ -1022,3 +1027,9 @@ SelectYourGraphOptionsFirst=選擇您的圖形選項以建立圖形 Measures=措施 XAxis=X軸 YAxis=Y軸 +StatusOfRefMustBe= %s 的狀態必須是 %s +DeleteFileHeader=確認檔案刪除 +DeleteFileText=您確定要刪除檔案嗎? +ShowOtherLanguages=顯示其他語言 +SwitchInEditModeToAddTranslation=切換到編輯模式以添加該語言的翻譯 +NotUsedForThisCustomer=未用於此客戶 diff --git a/htdocs/langs/zh_TW/modulebuilder.lang b/htdocs/langs/zh_TW/modulebuilder.lang index 0840164f74c..775ac7b66f6 100644 --- a/htdocs/langs/zh_TW/modulebuilder.lang +++ b/htdocs/langs/zh_TW/modulebuilder.lang @@ -1,69 +1,69 @@ # Dolibarr language file - Source file is en_US - loan -ModuleBuilderDesc=此工具只能由有經驗的用戶或開發人員使用。它提供了用於建構或編輯自己的模組的實用程式。替代手動開發的文件在此處。 -EnterNameOfModuleDesc=Enter name of the module/application to create with no spaces. Use uppercase to separate words (For example: MyModule, EcommerceForShop, SyncWithMySystem...) -EnterNameOfObjectDesc=Enter name of the object to create with no spaces. Use uppercase to separate words (For example: MyObject, Student, Teacher...). The CRUD class file, but also API file, pages to list/add/edit/delete object and SQL files will be generated. -ModuleBuilderDesc2=Path where modules are generated/edited (first directory for external modules defined into %s): %s -ModuleBuilderDesc3=Generated/editable modules found: %s -ModuleBuilderDesc4=A module is detected as 'editable' when the file %s exists in root of module directory +ModuleBuilderDesc=此工具只能由有經驗的使用者或開發人員使用。它提供了用於建構或編輯您自己模組。另個手動開發的文件在此處。 +EnterNameOfModuleDesc=輸入要新建的 模組/程式 名稱不留空白。使用大寫字母分隔單詞(例如:example: MyModule, EcommerceForShop, SyncWithMySystem...) +EnterNameOfObjectDesc=輸入要新建的物件名稱不留空白。使用大寫字母分隔單詞(例如:MyObject, Student, Teacher...)。將生成 CRUD class 檔案,以及 API 檔案,頁面用來 列出/新增/編輯/刪除 對象及SQL的檔案將自動生成。 +ModuleBuilderDesc2=已生成/已編輯 模組的路徑(外部模組的首個目錄定義為%s): %s +ModuleBuilderDesc3=已找到 生成的/可編輯的模組: %s +ModuleBuilderDesc4=當模組目錄的根目錄中存在檔案 %s 時,模組被偵測為"可編輯” NewModule=新模組 NewObjectInModulebuilder=新項目 -ModuleKey=Module key -ObjectKey=Object key -ModuleInitialized=Module initialized -FilesForObjectInitialized=Files for new object '%s' initialized -FilesForObjectUpdated=Files for object '%s' updated (.sql files and .class.php file) -ModuleBuilderDescdescription=Enter here all general information that describe your module. -ModuleBuilderDescspecifications=You can enter here a detailed description of the specifications of your module that is not already structured into other tabs. So you have within easy reach all the rules to develop. Also this text content will be included into the generated documentation (see last tab). You can use Markdown format, but it is recommended to use Asciidoc format (comparison between .md and .asciidoc: http://asciidoctor.org/docs/user-manual/#compared-to-markdown). -ModuleBuilderDescobjects=Define here the objects you want to manage with your module. A CRUD DAO class, SQL files, page to list record of objects, to create/edit/view a record and an API will be generated. -ModuleBuilderDescmenus=This tab is dedicated to define menu entries provided by your module. -ModuleBuilderDescpermissions=This tab is dedicated to define the new permissions you want to provide with your module. -ModuleBuilderDesctriggers=This is the view of triggers provided by your module. To include code executed when a triggered business event is launched, just edit this file. -ModuleBuilderDeschooks=This tab is dedicated to hooks. +ModuleKey=模組金鑰 +ObjectKey=項目金鑰 +ModuleInitialized=模組初始化 +FilesForObjectInitialized=初始化新項目'%s'的檔案 +FilesForObjectUpdated=項目'%s'的檔案已更新(.sql檔案和.class.php檔案) +ModuleBuilderDescdescription=在此處輸入描述模組的所有一般資訊。 +ModuleBuilderDescspecifications=您可以在此處輸入尚未在其他標籤中建立的模組特性描述。這樣您就可以輕鬆地開發所有規則。此文字內容還將包含在生成的文件中(請參見最後一個標籤)。您可以使用 Markdown格式,但建議使用 Asciidoc 格式(.md和.asciidoc之間的比較:http://asciidoctor.org/docs/user-manual/#compared-to-markdown)。 +ModuleBuilderDescobjects=在此處定義您要使用模組管理的對象。一個CRUD DAO class,SQL檔案,用於列出對象記錄,建立/編輯/檢視 記錄的頁面以及將會生成一個API 。 +ModuleBuilderDescmenus=此標籤專用於定義您模組提供的選單輸入。 +ModuleBuilderDescpermissions=此標籤專用於定義您要隨模組提供的新權限。 +ModuleBuilderDesctriggers=這是您模組提供的觸發器檢視。當觸發了業務事件時要包含代碼的執行,只需編輯此檔案。 +ModuleBuilderDeschooks=此標籤專用於掛載。 ModuleBuilderDescwidgets=This tab is dedicated to manage/build widgets. ModuleBuilderDescbuildpackage=You can generate here a "ready to distribute" package file (a normalized .zip file) of your module and a "ready to distribute" documentation file. Just click on button to build the package or documentation file. EnterNameOfModuleToDeleteDesc=You can delete your module. WARNING: All coding files of module (generated or created manually) AND structured data and documentation will be deleted! EnterNameOfObjectToDeleteDesc=You can delete an object. WARNING: All coding files (generated or created manually) related to object will be deleted! -DangerZone=Danger zone -BuildPackage=Build package +DangerZone=危險區域 +BuildPackage=建立軟體包 BuildPackageDesc=You can generate a zip package of your application so your are ready to distribute it on any Dolibarr. You can also distribute it or sell it on marketplace like DoliStore.com. -BuildDocumentation=Build documentation +BuildDocumentation=建立文件 ModuleIsNotActive=This module is not activated yet. Go to %s to make it live or click here: ModuleIsLive=This module has been activated. Any change may break a current live feature. -DescriptionLong=Long description +DescriptionLong=詳細描述 EditorName=編輯器名稱 EditorUrl=編輯器網址 DescriptorFile=模組的描述檔案 -ClassFile=File for PHP DAO CRUD class -ApiClassFile=File for PHP API class -PageForList=PHP page for list of record -PageForCreateEditView=PHP page to create/edit/view a record -PageForAgendaTab=PHP page for event tab -PageForDocumentTab=PHP page for document tab -PageForNoteTab=PHP page for note tab +ClassFile=PHP DAO CRUD類別檔案 +ApiClassFile=PHP API類別檔案 +PageForList=記錄列表PHP頁面 +PageForCreateEditView=建立/編輯/檢視記錄PHP頁面 +PageForAgendaTab=事件分頁的PHP頁面 +PageForDocumentTab=文件分頁的PHP頁面 +PageForNoteTab=註記分頁的PHP頁面 PathToModulePackage=Path to zip of module/application package PathToModuleDocumentation=Path to file of module/application documentation (%s) SpaceOrSpecialCharAreNotAllowed=Spaces or special characters are not allowed. -FileNotYetGenerated=File not yet generated +FileNotYetGenerated=尚未產生檔案 RegenerateClassAndSql=Force update of .class and .sql files -RegenerateMissingFiles=Generate missing files +RegenerateMissingFiles=產生遺失的檔案 SpecificationFile=文件檔案 LanguageFile=語言檔案 -ObjectProperties=Object Properties +ObjectProperties=項目屬性 ConfirmDeleteProperty=Are you sure you want to delete the property %s? This will change code in PHP class but also remove column from table definition of object. -NotNull=Not NULL +NotNull=非空白 NotNullDesc=1=Set database to NOT NULL. -1=Allow null values and force value to NULL if empty ('' or 0). SearchAll=Used for 'search all' -DatabaseIndex=Database index -FileAlreadyExists=File %s already exists +DatabaseIndex=資料庫索引 +FileAlreadyExists=檔案%s已存在 TriggersFile=File for triggers code HooksFile=File for hooks code ArrayOfKeyValues=Array of key-val ArrayOfKeyValuesDesc=Array of keys and values if field is a combo list with fixed values -WidgetFile=Widget file -CSSFile=CSS file -JSFile=Javascript file -ReadmeFile=Readme file -ChangeLog=ChangeLog file +WidgetFile=小工具檔案 +CSSFile=CSS檔案 +JSFile=Javascript檔案 +ReadmeFile=Readme檔案 +ChangeLog=ChangeLog檔案 TestClassFile=File for PHP Unit Test class SqlFile=SQL檔案 PageForLib=通用PHP庫的檔案 @@ -76,16 +76,16 @@ UseAsciiDocFormat=You can use Markdown format, but it is recommended to use Asci IsAMeasure=Is a measure DirScanned=資料夾已掃描 NoTrigger=No trigger -NoWidget=No widget -GoToApiExplorer=Go to API explorer -ListOfMenusEntries=List of menu entries -ListOfDictionariesEntries=List of dictionaries entries +NoWidget=沒有小工具 +GoToApiExplorer=前往API資源管理器 +ListOfMenusEntries=選單條目清單 +ListOfDictionariesEntries=分類條目清單 ListOfPermissionsDefined=已定義權限清單 SeeExamples=在這裡查看範例 EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION) -VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update). Using a negative value means field is not shown by default on list but can be selected for viewing). It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) -DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratostene -DisplayOnPdf=Display on PDF +VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).

    Using a negative value means field is not shown by default on list but can be selected for viewing).

    It can be an expression, for example:
    preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
    ($user->rights->holiday->define_holiday ? 1 : 0) +DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
    Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)

    For document :
    0 = not displayed
    1 = display
    2 = display only if not empty

    For document lines :
    0 = not displayed
    1 = displayed in a column
    3 = display in line description column after the description
    4 = display in description column after the description only if not empty +DisplayOnPdf=以PDF顯示 IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0) SearchAllDesc=Is the field used to make a search from the quick search tool? (Examples: 1 or 0) SpecDefDesc=Enter here all documentation you want to provide with your module that is not already defined by other tabs. You can use .md or better, the rich .asciidoc syntax. @@ -135,7 +135,7 @@ ShowOnCombobox=在組合框中顯示數值 KeyForTooltip=Key for tooltip CSSClass=CSS類別 NotEditable=無法編輯 -ForeignKey=Foreign key +ForeignKey=外部金鑰 TypeOfFieldsHelp=Type of fields:
    varchar(99), double(24,8), real, text, html, datetime, timestamp, integer, integer:ClassName:relativepath/to/classfile.class.php[:1[:filter]] ('1' means we add a + button after the combo to create the record, 'filter' can be 'status=1 AND fk_user = __USER_ID AND entity IN (__SHARED_ENTITIES__)' for example) AsciiToHtmlConverter=ASCII到HTML轉換器 AsciiToPdfConverter=ASCII到PDF轉換器 diff --git a/htdocs/langs/zh_TW/other.lang b/htdocs/langs/zh_TW/other.lang index 23bb161f5bd..316388ffb1b 100644 --- a/htdocs/langs/zh_TW/other.lang +++ b/htdocs/langs/zh_TW/other.lang @@ -30,11 +30,11 @@ PreviousYearOfInvoice=發票日期的上一年 NextYearOfInvoice=發票日期的下一年 DateNextInvoiceBeforeGen=下一張發票的日期(產生前) DateNextInvoiceAfterGen=下一張發票的日期(產生後) -GraphInBarsAreLimitedToNMeasures=Grapics are limited to %s measures in 'Bars' mode. The mode 'Lines' was automatically selected instead. +GraphInBarsAreLimitedToNMeasures=於“ Bars”模式下,圖形被限制於%s小段。自動選擇了“行”模式。 OnlyOneFieldForXAxisIsPossible=目前只能將1個欄位用作X軸。僅選擇了第一個選定欄位。 AtLeastOneMeasureIsRequired=至少需要1個測量欄位 AtLeastOneXAxisIsRequired=X軸至少需要1個欄位 - +LatestBlogPosts=Latest Blog Posts Notify_ORDER_VALIDATE=銷售訂單已驗證 Notify_ORDER_SENTBYMAIL=使用郵件寄送的銷售訂單 Notify_ORDER_SUPPLIER_SENTBYMAIL=使用電子郵件寄送的採購訂單 @@ -274,7 +274,7 @@ WEBSITE_PAGEURL=頁面網址 WEBSITE_TITLE=標題 WEBSITE_DESCRIPTION=描述 WEBSITE_IMAGE=圖片 -WEBSITE_IMAGEDesc=影像媒體的相對路徑。您可以將其保留為空,因為它很少使用(動態內容可以使用它在部落格文章清單中顯示縮圖)。如果路徑取決於網站名稱,請在路徑中使用__WEBSITEKEY__。 +WEBSITE_IMAGEDesc=影像媒體的相對路徑。您可以將其保留為空,因為它很少使用(動態內容可以使用它在部落格文章清單中顯示縮圖)。如果路徑取決於網站名稱,請在路徑中使用__WEBSITE_KEY __(例如:image / __ WEBSITE_KEY __ / stories / myimage.png)。 WEBSITE_KEYWORDS=關鍵字 LinesToImport=要匯入的行 diff --git a/htdocs/langs/zh_TW/products.lang b/htdocs/langs/zh_TW/products.lang index 883d3b2869d..a17d6b43bc4 100644 --- a/htdocs/langs/zh_TW/products.lang +++ b/htdocs/langs/zh_TW/products.lang @@ -17,11 +17,13 @@ Create=建立 Reference=參考 NewProduct=新產品 NewService=新服務 -ProductVatMassChange=全球營業稅更新 +ProductVatMassChange=全域營業稅更新 ProductVatMassChangeDesc=此工具將更新所有產品和服務上定義的營業稅率! MassBarcodeInit=批次條碼初始化 MassBarcodeInitDesc=此頁面可用將未定義條碼的項目初始化條碼。在完成模組條碼的設定之前進行檢查。 ProductAccountancyBuyCode=會計代碼(購買) +ProductAccountancyBuyIntraCode=會計代碼(在歐盟內採購) +ProductAccountancyBuyExportCode=會計代碼(採購輸入) ProductAccountancySellCode=會計代碼(銷售) ProductAccountancySellIntraCode=會計代碼(內部銷售) ProductAccountancySellExportCode=會計代碼(出口銷售) @@ -66,7 +68,7 @@ ProductStatusNotOnBuyShort=不可採購 UpdateVAT=更新營業稅 UpdateDefaultPrice=更新預設價格 UpdateLevelPrices=更新每個級別的價格 -AppliedPricesFrom=同意自 +AppliedPricesFrom=報價日期 SellingPrice=售價 SellingPriceHT=售價(不含稅) SellingPriceTTC=售價(含稅) @@ -85,7 +87,7 @@ ErrorProductBadRefOrLabel=錯誤的價值參考或標籤。 ErrorProductClone=嘗試複製產品或服務時出現問題。 ErrorPriceCantBeLowerThanMinPrice=錯誤,價格不能低於最低價格。 Suppliers=供應商 -SupplierRef=供應商SKU(最小庫存單位) +SupplierRef=供應商報價單號 ShowProduct=顯示產品 ShowService=顯示服務 ProductsAndServicesArea=產品和服務區域 @@ -165,7 +167,7 @@ SuppliersPrices=供應商價格 SuppliersPricesOfProductsOrServices=供應商價格(產品或服務) CustomCode=海關/商品/ HS編碼 CountryOrigin=原產地 -Nature=產品的性質(材料/成品) +Nature=產品性質(材料/成品) ShortLabel=短標籤 Unit=單位 p=u. diff --git a/htdocs/langs/zh_TW/projects.lang b/htdocs/langs/zh_TW/projects.lang index 14475c2442b..789835b25ea 100644 --- a/htdocs/langs/zh_TW/projects.lang +++ b/htdocs/langs/zh_TW/projects.lang @@ -87,8 +87,6 @@ WhichIamLinkedToProject=此我已連結到專案 Time=時間 ListOfTasks=任務清單 GoToListOfTimeConsumed=前往工作時間清單 -GoToListOfTasks=顯示清單 -GoToGanttView=顯示甘特圖 GanttView=甘特圖 ListProposalsAssociatedProject=與專案有關的商業建議書清單 ListOrdersAssociatedProject=與專案相關的銷售訂單清單 @@ -188,7 +186,7 @@ PlannedWorkload=計劃的工作量 PlannedWorkloadShort=工作量 ProjectReferers=相關項目 ProjectMustBeValidatedFirst=必須先驗證專案 -FirstAddRessourceToAllocateTime=為任務分配用戶資源以分配時間 +FirstAddRessourceToAllocateTime=分配用戶資源作為專案聯絡人以分配時間 InputPerDay=每天輸入 InputPerWeek=每週輸入 InputPerMonth=每月輸入 @@ -240,6 +238,7 @@ LatestModifiedProjects=最新%s件修改專案 OtherFilteredTasks=其他過濾任務 NoAssignedTasks=找不到分配的任務(從頂部選擇框向目前用戶分配專案/任務以輸入時間) ThirdPartyRequiredToGenerateInvoice=必須在專案上定義合作方才能開立發票。 +ChooseANotYetAssignedTask=選擇一個尚未分配給您的任務 # Comments trans AllowCommentOnTask=允許用戶對任務發表評論 AllowCommentOnProject=允許用戶對專案發表評論 @@ -256,8 +255,8 @@ ServiceToUseOnLines=行上使用的服務 InvoiceGeneratedFromTimeSpent=根據專案花費的時間產生了發票%s ProjectBillTimeDescription=請勾選如果您輸入了有關專案任務的時間表,並計劃從此時間表中產生發票以向此專案的客戶開立帳單(不要勾選如果您打算建立不基於輸入時間表的發票)。注意:要產生發票,請前往專案的“花費時間”分頁上,並選擇要包括的行。 ProjectFollowOpportunity=追蹤機會 -ProjectFollowTasks=追蹤任務 -Usage=Usage +ProjectFollowTasks=追蹤任務或花費的時間 +Usage=使用率 UsageOpportunity=用法:機會 UsageTasks=用法:任務 UsageBillTimeShort=用法:帳單時間 @@ -265,3 +264,4 @@ InvoiceToUse=發票草稿 NewInvoice=新發票 OneLinePerTask=每個任務一行 OneLinePerPeriod=每個週期一行 +RefTaskParent=參考上層任務 diff --git a/htdocs/langs/zh_TW/receiptprinter.lang b/htdocs/langs/zh_TW/receiptprinter.lang index 45a8847db4a..0732468cc3a 100644 --- a/htdocs/langs/zh_TW/receiptprinter.lang +++ b/htdocs/langs/zh_TW/receiptprinter.lang @@ -15,10 +15,12 @@ CONNECTOR_DUMMY=虛擬印表機 CONNECTOR_NETWORK_PRINT=網路印表機 CONNECTOR_FILE_PRINT=本地印表機 CONNECTOR_WINDOWS_PRINT=本地Windows印表機 +CONNECTOR_CUPS_PRINT=Cups 印表機 CONNECTOR_DUMMY_HELP=測試用假印表機,什麼都不做 CONNECTOR_NETWORK_PRINT_HELP=10.x.x.x:9100 CONNECTOR_FILE_PRINT_HELP=/dev/usb/lp0, /dev/usb/lp1 CONNECTOR_WINDOWS_PRINT_HELP=LPT1, COM1, smb://FooUser:secret@computername/workgroup/Receipt Printer +CONNECTOR_CUPS_PRINT_HELP=CUPS 印表機名稱,如:HPRT_TP805L PROFILE_DEFAULT=預設設定文件 PROFILE_SIMPLE=簡易設定文件 PROFILE_EPOSTEP=Epos Tep設定文件 @@ -61,3 +63,33 @@ DOL_VALUE_MONTH_LETTERS=發票月份(以字母為單位) DOL_VALUE_MONTH=發票月份 DOL_VALUE_DAY=發票日 DOL_VALUE_DAY_LETTERS=發票日(以字母為單位) +DOL_LINE_FEED_REVERSE=Line feed reverse +DOL_VALUE_OBJECT_ID=Invoice ID +DOL_VALUE_OBJECT_REF=發票參考 +DOL_PRINT_OBJECT_LINES=Invoice lines +DOL_VALUE_CUSTOMER_FIRSTNAME=Customer first name +DOL_VALUE_CUSTOMER_LASTNAME=Customer last name +DOL_VALUE_CUSTOMER_MAIL=Customer mail +DOL_VALUE_CUSTOMER_PHONE=Customer phone +DOL_VALUE_CUSTOMER_MOBILE=Customer mobile +DOL_VALUE_CUSTOMER_SKYPE=Customer Skype +DOL_VALUE_CUSTOMER_TAX_NUMBER=Customer tax number +DOL_VALUE_CUSTOMER_ACCOUNT_BALANCE=Customer account balance +DOL_VALUE_MYSOC_NAME=Your company name +DOL_VALUE_MYSOC_ADDRESS=Your company address +DOL_VALUE_MYSOC_ZIP=Your zip code +DOL_VALUE_MYSOC_TOWN=Your town +DOL_VALUE_MYSOC_COUNTRY=Your country +DOL_VALUE_MYSOC_IDPROF1=Your IDPROF1 +DOL_VALUE_MYSOC_IDPROF2=Your IDPROF2 +DOL_VALUE_MYSOC_IDPROF3=Your IDPROF3 +DOL_VALUE_MYSOC_IDPROF4=Your IDPROF4 +DOL_VALUE_MYSOC_IDPROF5=Your IDPROF5 +DOL_VALUE_MYSOC_IDPROF6=Your IDPROF6 +DOL_VALUE_MYSOC_TVA_INTRA=歐盟營業稅ID +DOL_VALUE_MYSOC_CAPITAL=資本 +DOL_VALUE_VENDOR_LASTNAME=Vendor last name +DOL_VALUE_VENDOR_FIRSTNAME=Vendor first name +DOL_VALUE_VENDOR_MAIL=Vendor mail +DOL_VALUE_CUSTOMER_POINTS=Customer points +DOL_VALUE_OBJECT_POINTS=Object points diff --git a/htdocs/langs/zh_TW/stripe.lang b/htdocs/langs/zh_TW/stripe.lang index 8341304831b..d5ca122f272 100644 --- a/htdocs/langs/zh_TW/stripe.lang +++ b/htdocs/langs/zh_TW/stripe.lang @@ -32,6 +32,7 @@ VendorName=供應商名稱 CSSUrlForPaymentForm=CSS樣式付款表單網址 NewStripePaymentReceived=收到新的Stripe付款 NewStripePaymentFailed=已嘗試新的Stripe付款但失敗 +FailedToChargeCard=儲值失敗 STRIPE_TEST_SECRET_KEY=秘密測試金鑰 STRIPE_TEST_PUBLISHABLE_KEY=可發布的測試金鑰 STRIPE_TEST_WEBHOOK_KEY=Webhook測試金鑰 @@ -68,4 +69,4 @@ ToOfferALinkForTestWebhook=連結到Stripe WebHook設定以呼叫IPN(測試模 ToOfferALinkForLiveWebhook=連結到Stripe WebHook設定以呼叫IPN(live模式) PaymentWillBeRecordedForNextPeriod=付款將記錄在下一個期間。 ClickHereToTryAgain=點擊此處重試... -CreationOfPaymentModeMustBeDoneFromStripeInterface=根據嚴格的客戶身份驗證規則,必須在Stripe後台建立卡。您可以點擊此處打開Stripe客戶記錄:%s +CreationOfPaymentModeMustBeDoneFromStripeInterface=Due to Strong Customer Authentication rules, creation of a card must be done from Stripe backoffice. You can click here to switch on Stripe customer record: %s diff --git a/htdocs/langs/zh_TW/users.lang b/htdocs/langs/zh_TW/users.lang index 485e7e9db7f..6bfe776b2e0 100644 --- a/htdocs/langs/zh_TW/users.lang +++ b/htdocs/langs/zh_TW/users.lang @@ -70,7 +70,7 @@ ExportDataset_user_1=用戶及其屬性 DomainUser=網域用戶%s Reactivate=重新啟用 CreateInternalUserDesc=此表單使您可以在公司/組織中建立內部用戶。要建立外部用戶(客戶,供應商等),請使用該第三方聯絡卡中的“建立Dolibarr用戶”按鈕。 -InternalExternalDesc=內部用戶是您公司/組織的一部分的用戶。
    外部用戶是客戶,供應商或其他。

    在這兩種情況下,Dolibarr中都已定義了權限,外部用戶也可以具有與內部用戶不同的菜單管理器(請參閱首頁-設定-顯示) +InternalExternalDesc=一位 內部 使用者是您 公司/組織 的一部分。
    一位 外部 使用者是顧客,供應商或是其他 (可從第三方的聯絡人紀錄為第三方建立一位外部使用者)。

    以上兩種情形,在 Dolibarr 權限定義權利,外部使用者可以使用一個跟內部使用者不同的選單管理器 (見 首頁 - 設定 - 顯示) PermissionInheritedFromAGroup=因為從權限授予一個用戶的一組繼承。 Inherited=繼承 UserWillBeInternalUser=建立的用戶將是一個內部用戶(因為沒有連結到一個特定的第三方) @@ -78,6 +78,7 @@ UserWillBeExternalUser=建立的用戶將是外部用戶(因為連結到一個 IdPhoneCaller=手機來電者身份 NewUserCreated=建立用戶%s NewUserPassword=%變動的密碼 +NewPasswordValidated=您的新密碼已通過驗證,必須立即用於登錄。 EventUserModified=用戶%s修改 UserDisabled=用戶%s禁用 UserEnabled=用戶%s啟動 @@ -113,3 +114,5 @@ CantDisableYourself=您不能禁用自己的用戶記錄 ForceUserExpenseValidator=強制使用費用報告表驗證 ForceUserHolidayValidator=強制使用休假請求驗證 ValidatorIsSupervisorByDefault=預設情況下,驗證者是用戶的主管。保持空白狀態以保持這種行為。 +UserPersonalEmail=私人信箱 +UserPersonalMobile=私人手機 diff --git a/htdocs/langs/zh_TW/website.lang b/htdocs/langs/zh_TW/website.lang index 5ed3c336d17..f62509cb79f 100644 --- a/htdocs/langs/zh_TW/website.lang +++ b/htdocs/langs/zh_TW/website.lang @@ -4,7 +4,7 @@ WebsiteSetupDesc=在此處建立您要使用的網站。然後進入選單網站 DeleteWebsite=刪除網站 ConfirmDeleteWebsite=您確定要刪除此網站嗎?其所有頁面和內容也將被刪除。上傳的文件(例如進入medias資料夾,ECM模組等)將保留。 WEBSITE_TYPE_CONTAINER=頁面/容器的類型 -WEBSITE_PAGE_EXAMPLE=範本網頁 +WEBSITE_PAGE_EXAMPLE=當作範例的網頁 WEBSITE_PAGENAME=頁面名稱/別名 WEBSITE_ALIASALT=備用頁面名稱/別名 WEBSITE_ALIASALTDesc=使用此處的其他名稱/別名清單,因此也可以使用此其他名稱/別名來訪問頁面(例如,重命名別名以使舊連結/名稱保持反向連結正常工作後的舊名稱)。語法是:
    Alternativename1,Alternativename2,... @@ -13,9 +13,9 @@ WEBSITE_CSS_INLINE=CSS檔案內容(所有頁面共有) WEBSITE_JS_INLINE=Javascript檔案內容(所有頁面共有) WEBSITE_HTML_HEADER=附加在HTML標頭底部(所有頁面共有) WEBSITE_ROBOT=Robot檔案(robots.txt) -WEBSITE_HTACCESS=網站.htaccess檔案 -WEBSITE_MANIFEST_JSON=網站manifest.json檔案 -WEBSITE_README=README.md檔案 +WEBSITE_HTACCESS=網站 .htaccess 檔案 +WEBSITE_MANIFEST_JSON=網站 manifest.json 檔案 +WEBSITE_README=README.md 檔案 EnterHereLicenseInformation=在此處輸入meta data或許可證資訊以填入README.md檔案。如果您以模板型式發佈網站,則檔案將包含在模板軟體包中。 HtmlHeaderPage=HTML標頭(僅用於此頁面) PageNameAliasHelp=頁面的名稱或別名。
    當從Web伺服器的虛擬主機(如Apacke,Nginx等)執行網站時,此別名還用於偽造SEO網址。使用按鈕“ %s ”編輯此別名。 @@ -24,11 +24,11 @@ MediaFiles=媒體庫 EditCss=編輯網站屬性 EditMenu=編輯選單 EditMedias=編輯媒體 -EditPageMeta=編輯頁面/容器屬性 +EditPageMeta=編輯 頁面/容器 屬性 EditInLine=編輯嵌入 AddWebsite=新增網站 Webpage=網頁/容器 -AddPage=增加頁面/容器 +AddPage=新增 頁面/容器 HomePage=首頁 PageContainer=頁面/容器 PreviewOfSiteNotYetAvailable=您的網站%s預覽尚不可用。您必須先“ 導入完整的網站模板 ”或僅“ 新增頁面/容器 ”。 @@ -42,13 +42,14 @@ ViewPageInNewTab=在新分頁中檢視頁面 SetAsHomePage=設為首頁 RealURL=真實網址 ViewWebsiteInProduction=使用家庭網址檢視網站 -SetHereVirtualHost=如果您會建立請使用Apache/NGinx/...
    , 在您的網站伺服器上 (Apache, Nginx, ...), 已啟用PHP的專用虛擬主機並且根資料夾位於
    %s
    然後在網站的屬性中設定您建立的虛擬主機名稱, 因此也可以預覽此網站伺服器而不是內部Dolibarr伺服器. +SetHereVirtualHost=使用Apache/NGinx/...
    建立您的網頁伺服器 (Apache, Nginx, ...) 啟用了含有PHP的專用虛擬主機並且根目錄資料夾位於
    %s +ExampleToUseInApacheVirtualHostConfig=在Apache虛擬主機設定中使用的範例: YouCanAlsoTestWithPHPS=在開發環境中使用嵌入式PHP伺服器
    , 您也許想要使用
    php -S 0.0.0.0:8080 -t %s 來測試此嵌入式PHP伺服器 (需要PHP 5.5) 的網站 YouCanAlsoDeployToAnotherWHP=在其他Dolibarr網站託管供應商執行您的網站
    如果您在網路上沒有Apache或NGinx之類的Web伺服器,則可以將網站匯出並匯入到另一個由Dolibarr網站託管供應商提供且有完整整合網站模組。您可以在 https://saas.dolibarr.org 上找到一些Dolibarr網站託管服務供應商的清單。 CheckVirtualHostPerms=還要檢查虛擬主機是否具有將 %s 上的許可權轉換為
    %s 的權限 ReadPerm=閱讀 WritePerm=寫入 -TestDeployOnWeb=上線測試/部署 +TestDeployOnWeb=上線 測試/部署 PreviewSiteServedByWebServer=在新分頁中預覽%s。

    %s將由外部Web伺服器(例如Apache,Nginx,IIS)提供服務。您必須先安裝和設定此伺服器,然後再指向目錄:
    %s
    外部伺服器提供的網址:
    %s PreviewSiteServedByDolibarr=在新分頁中預覽%s。

    Dolibarr伺服器將為%s提供服務,因此不需要安裝任何其他Web伺服器(例如Apache,Nginx,IIS)。
    的不便之處在於頁面的URL不友好,並且以Dolibarr的路徑開頭。
    URL由Dolibarr提供:
    %s

    要使用自己的外部Web伺服器來服務於這個網站,在您的Web伺服器上建立一個虛擬主機其指向目錄
    %s
    然後輸入該虛伺服器的名稱然後點擊另一個預覽按鈕。 VirtualHostUrlNotDefined=未定義由外部網站伺服器提供服務的虛擬主機網址 @@ -56,7 +57,7 @@ NoPageYet=暫無頁面 YouCanCreatePageOrImportTemplate=您可以建立一個新頁面或匯入完整的網站模板 SyntaxHelp=有關特定語法提示的幫助 YouCanEditHtmlSourceckeditor=您可以使用編輯器中的“Source”按鈕來編輯HTML源代碼。 -YouCanEditHtmlSource=
    您可以使用標籤將PHP代碼包含到此源中<?php ?>. 以下全域變數可用: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs.

    您還可以使用以下語法包含另一個頁面/容器的內容:
    <?php includeContainer('alias_of_container_to_include'); ?>

    您可以使用以下語法重新定向到另一個頁面/容器(注意:重新定向之前請勿輸出任何內容):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    要增加到另一個頁面的連結,請使用以下語法:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    要包含一個 連結 下載儲存到 文件資料夾, 使用document.php打包器:
    例如, 一個檔案要儲存到documents/ecm (需要紀錄)中, 語法為:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    檔案要儲存到documents/medias (公共權限的資料夾)中, 語法為:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    對於使用共用連結共享的檔案(使用檔案的共用hash鍵進行開放訪問), 語法為:
    <a href="/document.php?hashp=publicsharekeyoffile">

    要包含一個影像 檔案且儲存到documents目錄中, 使用 viewimage.php 打包器:
    例如, 儲存影像到documents/medias (公共權限的資料夾), 語法為:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    更多HTML語法或動態碼可在維基文件中找到
    . +YouCanEditHtmlSource=
    You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.

    You can also include content of another Page/Container with the following syntax:
    <?php includeContainer('alias_of_container_to_include'); ?>

    You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect):
    <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>

    To add a link to another page, use the syntax:
    <a href="alias_of_page_to_link_to.php">mylink<a>

    To include a link to download a file stored into the documents directory, use the document.php wrapper:
    Example, for a file into documents/ecm (need to be logged), syntax is:
    <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext">
    For a file into documents/medias (open directory for public access), syntax is:
    <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext">
    For a file shared with a share link (open access using the sharing hash key of file), syntax is:
    <a href="/document.php?hashp=publicsharekeyoffile">

    To include an image stored into the documents directory, use the viewimage.php wrapper:
    Example, for an image into documents/medias (open directory for public access), syntax is:
    <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">

    More examples of HTML or dynamic code available on the wiki documentation
    . ClonePage=複製頁面/容器 CloneSite=複製網站 SiteAdded=網站已增加 @@ -76,7 +77,7 @@ BlogPost=部落格文章 WebsiteAccount=網站帳號 WebsiteAccounts=網站帳號 AddWebsiteAccount=建立網站帳號 -BackToListOfThirdParty=返回合作方清單 +BackToListForThirdParty=返回第三方清單 DisableSiteFirst=首先停止網站 MyContainerTitle=我的網站標題 AnotherContainer=這是如何包含其他頁面/容器內容的方式(如果啟用動態代碼,則可能會出現錯誤,因為嵌入式子容器可能不存在) @@ -84,7 +85,7 @@ SorryWebsiteIsCurrentlyOffLine=抱歉,此網站目前離線。請稍後再來 WEBSITE_USE_WEBSITE_ACCOUNTS=啟用網站帳戶列表 WEBSITE_USE_WEBSITE_ACCOUNTSTooltip=啟用表格以存儲每個網站/合作方的網站帳戶(登入/通過) YouMustDefineTheHomePage=您必須先定義預設首頁 -OnlyEditionOfSourceForGrabbedContentFuture=警告:通過匯入外部網頁來建立網頁僅供有經驗的用戶使用。根據來源頁面的複雜程度,匯入結果可能與原始結果不同。同樣,如果來源頁面使用常見的CSS樣式或衝突的javascript,則在處理此頁面時,它可能會破壞網站編輯器的外觀或功能。此方法是建立頁面的較快方法,但建議從頭開始或從建議的頁面模板建立新頁面。
    另請注意,通過從外部頁面抓取頁面內容來初始化頁面內容後,將可以對HTML來源代碼進行編輯(“線上”編輯器將不可用) +OnlyEditionOfSourceForGrabbedContentFuture=警告:通過匯入外部網頁來建立網頁僅供有經驗的用戶使用。根據來源頁面的複雜程度,匯入結果可能與原始結果不同。同樣,如果來源頁面使用常見的CSS樣式或衝突的javascript,則在處理此頁面時,它可能會破壞網站編輯器的外觀或功能。此方法是建立頁面的較快方法,但建議從頭開始或從建議的頁面模板建立新頁面。
    另請注意,在抓取的外部頁面上使用時,內聯編輯器可能無法正確工作。 OnlyEditionOfSourceForGrabbedContent=從外部網站獲取內容時,只能使用HTML源代碼版本 GrabImagesInto=抓取圖像到css和頁面。 ImagesShouldBeSavedInto=圖片應儲存到目錄中 @@ -124,3 +125,6 @@ UseTextBetween5And70Chars=為了獲得良好的SEO實踐,請使用5到70個字 MainLanguage=主要語言 OtherLanguages=其他語言 UseManifest=提供manifest.json檔案 +PublicAuthorAlias=公共作者別名 +AvailableLanguagesAreDefinedIntoWebsiteProperties=可用語言已定義到網站屬性中 +ReplacementDoneInXPages=在%s頁面或容器中已完成替換 diff --git a/htdocs/livraison/card.php b/htdocs/livraison/card.php index 82c6521e00f..544593dc16c 100644 --- a/htdocs/livraison/card.php +++ b/htdocs/livraison/card.php @@ -118,18 +118,14 @@ if ($action == 'add') $db->commit(); header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); $db->rollback(); $_GET["commande_id"] = $_POST["commande_id"]; $action = 'create'; } -} - -elseif ($action == 'confirm_valid' && $confirm == 'yes' && +} elseif ($action == 'confirm_valid' && $confirm == 'yes' && ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->expedition->livraison->creer)) || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->expedition->livraison_advance->validate))) ) @@ -166,9 +162,7 @@ if ($action == 'confirm_delete' && $confirm == 'yes' && $user->rights->expeditio if (!empty($backtopage)) header("Location: ".$backtopage); else header("Location: ".DOL_URL_ROOT.'/expedition/list.php?restore_lastsearch_values=1'); exit; - } - else - { + } else { $db->rollback(); } } @@ -261,8 +255,7 @@ $formfile = new FormFile($db); if ($action == 'create') // Create. Seems to no be used { -} -else // View +} else // View { if ($object->id > 0) { @@ -452,9 +445,7 @@ else // View print $form->selectDate($object->date_delivery ? $object->date_delivery : -1, 'liv_', 1, 1, '', "setdate_livraison", 1, 1); print ''; print ''; - } - else - { + } else { print $object->date_delivery ? dol_print_date($object->date_delivery, 'dayhour') : ' '; } print ''; @@ -475,9 +466,7 @@ else // View if ($action != 'editincoterm') { print $form->textwithpicto($object->display_incoterms(), $object->label_incoterms, 1); - } - else - { + } else { print $form->select_incoterms((!empty($object->fk_incoterms) ? $object->fk_incoterms : ''), (!empty($object->location_incoterms) ? $object->location_incoterms : ''), $_SERVER['PHP_SELF'].'?id='.$object->id); } print ''; @@ -574,9 +563,7 @@ else // View } $label = (!empty($product->multilangs[$outputlangs->defaultlang]["label"])) ? $product->multilangs[$outputlangs->defaultlang]["label"] : $object->lines[$i]->product_label; - } - else - { + } else { $label = (!empty($object->lines[$i]->label) ? $object->lines[$i]->label : $object->lines[$i]->product_label); } @@ -596,9 +583,7 @@ else // View { print (!empty($object->lines[$i]->description) && $object->lines[$i]->description != $object->lines[$i]->product_label) ? '
    '.dol_htmlentitiesbr($object->lines[$i]->description) : ''; } - } - else - { + } else { print ""; if ($object->lines[$i]->fk_product_type == 1) $text = img_object($langs->trans('Service'), 'service'); else $text = img_object($langs->trans('Product'), 'product'); @@ -674,9 +659,7 @@ else // View if ($conf->expedition_bon->enabled) { print ''.$langs->trans("Delete").''; - } - else - { + } else { print ''.$langs->trans("Delete").''; } } @@ -719,15 +702,11 @@ else // View // Rien a droite print ''; - } - else - { + } else { /* Expedition non trouvee */ print "Expedition inexistante ou acces refuse"; } - } - else - { + } else { /* Expedition non trouvee */ print "Expedition inexistante ou acces refuse"; } diff --git a/htdocs/livraison/class/livraison.class.php b/htdocs/livraison/class/livraison.class.php index acfe8b29d05..6199bc4ec88 100644 --- a/htdocs/livraison/class/livraison.class.php +++ b/htdocs/livraison/class/livraison.class.php @@ -215,25 +215,19 @@ class Livraison extends CommonObject { $this->db->commit(); return $this->id; - } - else - { + } else { $error++; $this->error = $this->db->lasterror()." - sql=".$this->db->lastqueryerror; $this->db->rollback(); return -3; } - } - else - { + } else { $error++; $this->error = $this->db->lasterror()." - sql=".$this->db->lastqueryerror; $this->db->rollback(); return -2; } - } - else - { + } else { $error++; $this->error = $this->db->lasterror()." - sql=".$this->db->lastqueryerror; $this->db->rollback(); @@ -344,16 +338,12 @@ class Livraison extends CommonObject } return 1; - } - else - { + } else { $this->error = 'Delivery with id '.$id.' not found sql='.$sql; dol_syslog(get_class($this).'::fetch Error '.$this->error, LOG_ERR); return -2; } - } - else - { + } else { $this->error = $this->db->error(); return -1; } @@ -399,9 +389,7 @@ class Livraison extends CommonObject if (preg_match('/^[\(]?PROV/i', $this->ref) || empty($this->ref)) // empty should not happened, but when it occurs, the test save life { $numref = $objMod->livraison_get_num($soc, $this); - } - else - { + } else { $numref = $this->ref; } $this->newref = dol_sanitizeFileName($numref); @@ -500,17 +488,13 @@ class Livraison extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } } } - } - else - { + } else { $this->error = "Non autorise"; dol_syslog(get_class($this)."::valid ".$this->error, LOG_ERR); return -1; @@ -633,9 +617,7 @@ class Livraison extends CommonObject $this->update_price(); return 1; - } - else - { + } else { return 0; } } @@ -704,23 +686,17 @@ class Livraison extends CommonObject // End call triggers return 1; - } - else - { + } else { $this->error = $this->db->lasterror()." - sql=$sql"; $this->db->rollback(); return -3; } - } - else - { + } else { $this->error = $this->db->lasterror()." - sql=$sql"; $this->db->rollback(); return -2; } - } - else - { + } else { $this->error = $this->db->lasterror()." - sql=$sql"; $this->db->rollback(); return -1; @@ -990,16 +966,13 @@ class Livraison extends CommonObject if ($row[0] == $objSourceLine->rowid) { $array[$i]['qty'] = $objSourceLine->qty - $row[1]; - } - else - { + } else { $array[$i]['qty'] = $objSourceLine->qty; } $array[$i]['ref'] = $objSourceLine->ref; $array[$i]['label'] = $objSourceLine->label ? $objSourceLine->label : $objSourceLine->description; - } - elseif ($objSourceLine->qty - $row[1] < 0) + } elseif ($objSourceLine->qty - $row[1] < 0) { $array[$i]['qty'] = $objSourceLine->qty - $row[1]." Erreur livraison !"; $array[$i]['ref'] = $objSourceLine->ref; @@ -1009,9 +982,7 @@ class Livraison extends CommonObject $i++; } return $array; - } - else - { + } else { $this->error = $this->db->error()." - sql=$sqlSourceLine"; return -1; } @@ -1040,15 +1011,11 @@ class Livraison extends CommonObject { $this->date_delivery = $date_livraison; return 1; - } - else - { + } else { $this->error = $this->db->error(); return -1; } - } - else - { + } else { return -2; } } diff --git a/htdocs/loan/card.php b/htdocs/loan/card.php index 47ddfd2b109..8f82e94b8f9 100644 --- a/htdocs/loan/card.php +++ b/htdocs/loan/card.php @@ -68,9 +68,7 @@ if (empty($reshook)) if ($result > 0) { setEventMessages($langs->trans('LoanPaid'), null, 'mesgs'); - } - else - { + } else { setEventMessages($loan->error, null, 'errors'); } } @@ -85,9 +83,7 @@ if (empty($reshook)) setEventMessages($langs->trans('LoanDeleted'), null, 'mesgs'); header("Location: index.php"); exit; - } - else - { + } else { setEventMessages($loan->error, null, 'errors'); } } @@ -153,9 +149,7 @@ if (empty($reshook)) $action = 'create'; } } - } - else - { + } else { header("Location: index.php"); exit(); } @@ -176,9 +170,7 @@ if (empty($reshook)) { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("LoanCapital")), null, 'errors'); $action = 'edit'; - } - else - { + } else { $object->datestart = $datestart; $object->dateend = $dateend; $object->capital = $capital; @@ -201,15 +193,11 @@ if (empty($reshook)) { header("Location: ".$_SERVER["PHP_SELF"]."?id=".$id); exit; - } - else - { + } else { $error++; setEventMessages($object->error, $object->errors, 'errors'); } - } - else - { + } else { header("Location: ".$_SERVER["PHP_SELF"]."?id=".$id); exit; } @@ -253,7 +241,7 @@ if ($action == 'create') //WYSIWYG Editor require_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php'; - print load_fiche_titre($langs->trans("NewLoan"), '', 'title_accountancy.png'); + print load_fiche_titre($langs->trans("NewLoan"), '', 'money-bill-alt'); $datec = dol_mktime(12, 0, 0, GETPOST('remonth', 'int'), GETPOST('reday', 'int'), GETPOST('reyear', 'int')); @@ -274,9 +262,7 @@ if ($action == 'create') print ''.$langs->trans("Account").''; $form->select_comptes(GETPOST("accountid"), "accountid", 0, "courant=1", 1); // Show list of bank account with courant print ''; - } - else - { + } else { print ''.$langs->trans("Account").''; print $langs->trans("NoBankAccountDefined"); print ''; @@ -359,8 +345,7 @@ if ($action == 'create') print ''; print $formaccounting->select_account(GETPOST('accountancy_account_interest') ?GETPOST('accountancy_account_interest') : $conf->global->LOAN_ACCOUNTING_ACCOUNT_INTEREST, 'accountancy_account_interest', 1, '', 1, 1); print ''; - } - else // For external software + } else // For external software { // Accountancy_account_capital print ''.$langs->trans("LoanAccountancyCapitalCode").''; @@ -475,7 +460,7 @@ if ($id > 0) print '
    '; print '
    '; - print ''; + print '
    '; // Capital if ($action == 'edit') @@ -483,9 +468,7 @@ if ($id > 0) print ''; print ''; - } - else - { + } else { print ''; } @@ -495,9 +478,7 @@ if ($id > 0) print ''; print ''; - } - else - { + } else { print ''; } @@ -507,9 +488,7 @@ if ($id > 0) if ($action == 'edit') { print $form->selectDate($object->datestart, 'start', 0, 0, 0, 'update', 1, 0); - } - else - { + } else { print dol_print_date($object->datestart, "day"); } print ""; @@ -520,9 +499,7 @@ if ($id > 0) if ($action == 'edit') { print $form->selectDate($object->dateend, 'end', 0, 0, 0, 'update', 1, 0); - } - else - { + } else { print dol_print_date($object->dateend, "day"); } print ""; @@ -533,9 +510,7 @@ if ($id > 0) if ($action == 'edit') { print ''; - } - else - { + } else { print $object->nbterm; } print ''; @@ -546,9 +521,7 @@ if ($id > 0) if ($action == 'edit') { print '%'; - } - else - { + } else { print price($object->rate).'%'; } print ''; @@ -564,15 +537,11 @@ if ($id > 0) if (!empty($conf->accounting->enabled)) { print $formaccounting->select_account($object->account_capital, 'accountancy_account_capital', 1, '', 1, 1); - } - else - { + } else { print ''; } print ''; - } - else - { + } else { print ''; - } - else - { + } else { print ''; - } - else - { + } else { print '
    '.$langs->trans("LoanCapital").''; print '
    '.$langs->trans("LoanCapital").''.price($object->capital, 0, $outputlangs, 1, -1, -1, $conf->currency).'
    '.$langs->trans("Insurance").''; print '
    '.$langs->trans("Insurance").''.price($object->insurance_amount, 0, $outputlangs, 1, -1, -1, $conf->currency).'
    '; print $langs->trans("LoanAccountancyCapitalCode"); print ''; @@ -602,15 +571,11 @@ if ($id > 0) if (!empty($conf->accounting->enabled)) { print $formaccounting->select_account($object->account_insurance, 'accountancy_account_insurance', 1, '', 1, 1); - } - else - { + } else { print ''; } print ''; print $langs->trans("LoanAccountancyInsuranceCode"); print ''; @@ -640,15 +605,11 @@ if ($id > 0) if (!empty($conf->accounting->enabled)) { print $formaccounting->select_account($object->account_interest, 'accountancy_account_interest', 1, '', 1, 1); - } - else - { + } else { print ''; } print ''; print $langs->trans("LoanAccountancyInterestCode"); print ''; @@ -742,9 +703,7 @@ if ($id > 0) print ''; $db->free($resql); - } - else - { + } else { dol_print_error($db); } @@ -804,9 +763,7 @@ if ($id > 0) print ""; } } - } - else - { + } else { // Loan not found dol_print_error('', $object->error); } diff --git a/htdocs/loan/class/loan.class.php b/htdocs/loan/class/loan.class.php index 340d9dea02a..a072199dc01 100644 --- a/htdocs/loan/class/loan.class.php +++ b/htdocs/loan/class/loan.class.php @@ -44,7 +44,7 @@ class Loan extends CommonObject /** * @var string String with name of icon for myobject. Must be the part after the 'object_' into object_myobject.png */ - public $picto = 'bill'; + public $picto = 'money-bill-alt'; /** * @var int ID @@ -160,15 +160,11 @@ class Loan extends CommonObject $this->db->free($resql); return 1; - } - else - { + } else { $this->db->free($resql); return 0; } - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -258,9 +254,7 @@ class Loan extends CommonObject //dol_syslog("Loans::create this->id=".$this->id); $this->db->commit(); return $this->id; - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -1; @@ -329,9 +323,7 @@ class Loan extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -375,9 +367,7 @@ class Loan extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -1; @@ -501,8 +491,7 @@ class Loan extends CommonObject } $linkclose .= ' title="'.dol_escape_htmltag($label, 1).'"'; $linkclose .= ' class="classfortooltip'.($morecss ? ' '.$morecss : '').'"'; - } - else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); + } else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); $linkstart = ''; @@ -571,9 +560,7 @@ class Loan extends CommonObject $this->db->free($resql); return $amount; - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -618,15 +605,11 @@ class Loan extends CommonObject $this->db->free($result); return 1; - } - else - { + } else { $this->db->free($result); return 0; } - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } diff --git a/htdocs/loan/class/loanschedule.class.php b/htdocs/loan/class/loanschedule.class.php index 3299e810991..7405a63e3b9 100644 --- a/htdocs/loan/class/loanschedule.class.php +++ b/htdocs/loan/class/loanschedule.class.php @@ -170,9 +170,7 @@ class LoanSchedule extends CommonObject if ($resql) { $this->id = $this->db->last_insert_id(MAIN_DB_PREFIX."payment_loan"); - } - else - { + } else { $this->error = $this->db->lasterror(); $error++; } @@ -183,9 +181,7 @@ class LoanSchedule extends CommonObject $this->amount_capital = $totalamount; $this->db->commit(); return $this->id; - } - else - { + } else { $this->errors[] = $this->db->lasterror(); $this->db->rollback(); return -1; @@ -257,9 +253,7 @@ class LoanSchedule extends CommonObject $this->db->free($resql); return 1; - } - else - { + } else { $this->error = "Error ".$this->db->lasterror(); return -1; } @@ -321,9 +315,7 @@ class LoanSchedule extends CommonObject { $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } @@ -363,9 +355,7 @@ class LoanSchedule extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } @@ -450,9 +440,7 @@ class LoanSchedule extends CommonObject } $this->db->free($resql); return 1; - } - else - { + } else { $this->error = "Error ".$this->db->lasterror(); return -1; } diff --git a/htdocs/loan/class/paymentloan.class.php b/htdocs/loan/class/paymentloan.class.php index 485d48dc443..84aca12394d 100644 --- a/htdocs/loan/class/paymentloan.class.php +++ b/htdocs/loan/class/paymentloan.class.php @@ -1,6 +1,6 @@ - * Copyright (C) 2015-2018 Frederic France + * Copyright (C) 2015-2020 Frederic France * * 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 @@ -40,6 +40,11 @@ class PaymentLoan extends CommonObject */ public $table_element = 'payment_loan'; + /** + * @var string String with name of icon for PaymentLoan + */ + public $picto = 'money-bill-alt'; + /** * @var int Loan ID */ @@ -165,9 +170,7 @@ class PaymentLoan extends CommonObject if ($resql) { $this->id = $this->db->last_insert_id(MAIN_DB_PREFIX."payment_loan"); - } - else - { + } else { $this->error = $this->db->lasterror(); $error++; } @@ -178,9 +181,7 @@ class PaymentLoan extends CommonObject $this->amount_capital = $totalamount; $this->db->commit(); return $this->id; - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -1; @@ -254,9 +255,7 @@ class PaymentLoan extends CommonObject $this->db->free($resql); return 1; - } - else - { + } else { $this->error = "Error ".$this->db->lasterror(); return -1; } @@ -326,9 +325,7 @@ class PaymentLoan extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } @@ -379,9 +376,7 @@ class PaymentLoan extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } @@ -459,9 +454,7 @@ class PaymentLoan extends CommonObject $result = $acc->add_url_line($bank_line_id, $fk_loan, DOL_URL_ROOT.'/loan/card.php?id=', ($this->label ? $this->label : ''), 'loan'); if ($result <= 0) dol_print_error($this->db); } - } - else - { + } else { $this->error = $acc->error; $error++; } @@ -470,9 +463,7 @@ class PaymentLoan extends CommonObject if (!$error) { return 1; - } - else - { + } else { return -1; } } @@ -496,9 +487,7 @@ class PaymentLoan extends CommonObject { $this->fk_bank = $id_bank; return 1; - } - else - { + } else { $this->error = $this->db->error(); return 0; } @@ -507,25 +496,39 @@ class PaymentLoan extends CommonObject /** * Return clicable name (with eventually a picto) * - * @param int $withpicto 0=No picto, 1=Include picto into link, 2=No picto - * @param int $maxlen Max length label - * @return string Chaine with URL + * @param int $withpicto 0=No picto, 1=Include picto into link, 2=No picto + * @param int $maxlen Max length label + * @param int $notooltip 1=Disable tooltip + * @param string $moretitle Add more text to title tooltip + * @param int $save_lastsearch_value -1=Auto, 0=No save of lastsearch_values when clicking, 1=Save lastsearch_values whenclicking + * @return string String with URL */ - public function getNomUrl($withpicto = 0, $maxlen = 0) + public function getNomUrl($withpicto = 0, $maxlen = 0, $notooltip = 0, $moretitle = '', $save_lastsearch_value = -1) { - global $langs; + global $langs, $conf; + + if (!empty($conf->dol_no_mouse_hover)) $notooltip = 1; // Force disable tooltips $result = ''; - - if (!empty($this->id)) - { - $link = ''; - $linkend = ''; - - if ($withpicto) $result .= ($link.img_object($langs->trans("ShowPayment").': '.$this->ref, 'payment').$linkend.' '); - if ($withpicto && $withpicto != 2) $result .= ' '; - if ($withpicto != 2) $result .= $link.($maxlen ?dol_trunc($this->ref, $maxlen) : $this->ref).$linkend; + $label = ''.$langs->trans("Loan").''; + if (!empty($this->id)) { + $label .= '
    '.$langs->trans('Ref').': '.$this->id; } + if ($moretitle) $label .= ' - '.$moretitle; + + $url = DOL_URL_ROOT.'/loan/payment/card.php?id='.$this->id; + + $add_save_lastsearch_values = ($save_lastsearch_value == 1 ? 1 : 0); + if ($save_lastsearch_value == -1 && preg_match('/list\.php/', $_SERVER["PHP_SELF"])) $add_save_lastsearch_values = 1; + if ($add_save_lastsearch_values) $url .= '&save_lastsearch_values=1'; + + $linkstart = ''; + $linkend = ''; + + $result .= $linkstart; + if ($withpicto) $result .= img_object(($notooltip ? '' : $label), $this->picto, ($notooltip ? (($withpicto != 2) ? 'class="paddingright"' : '') : 'class="'.(($withpicto != 2) ? 'paddingright ' : '').'classfortooltip"'), 0, 0, $notooltip ? 0 : 1); + if ($withpicto != 2) $result .= $this->ref; + $result .= $linkend; return $result; } diff --git a/htdocs/loan/document.php b/htdocs/loan/document.php index a68ec64f7b1..442f8768390 100644 --- a/htdocs/loan/document.php +++ b/htdocs/loan/document.php @@ -44,13 +44,14 @@ if ($user->socid) $socid = $user->socid; $result = restrictedArea($user, 'loan', $id, '', ''); // Get parameters +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; if (!$sortorder) $sortorder = "ASC"; @@ -157,9 +158,7 @@ if ($object->id) $permtoedit = $user->rights->loan->write; $param = '&id='.$object->id; include_once DOL_DOCUMENT_ROOT.'/core/tpl/document_actions_post_headers.tpl.php'; -} -else -{ +} else { print $langs->trans("ErrorUnknown"); } diff --git a/htdocs/loan/list.php b/htdocs/loan/list.php index 380d475398e..fc0e766ed9b 100644 --- a/htdocs/loan/list.php +++ b/htdocs/loan/list.php @@ -35,7 +35,7 @@ $socid = GETPOST('socid', 'int'); if ($user->socid) $socid = $user->socid; $result = restrictedArea($user, 'loan', '', '', ''); -$limit = GETPOST('limit', 'int') ?GETPOST('limit', 'int') : $conf->liste_limit; +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST('sortfield', 'alpha'); $sortorder = GETPOST('sortorder', 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); @@ -120,9 +120,7 @@ if (empty($conf->global->MAIN_DISABLE_FULL_SCANLIST)) if (is_numeric($nbtotalofrecords) && ($limit > $nbtotalofrecords || empty($limit))) { $num = $nbtotalofrecords; -} -else -{ +} else { if ($limit) $sql .= $db->plimit($limit + 1, $offset); $resql = $db->query($sql); @@ -167,7 +165,7 @@ if ($resql) print ''; print ''; - print_barre_liste($langs->trans("Loans"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, '', $num, $nbtotalofrecords, 'title_accountancy.png', 0, $newcardbutton, '', $limit, 0, 0, 1); + print_barre_liste($langs->trans("Loans"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, '', $num, $nbtotalofrecords, 'money-bill-alt', 0, $newcardbutton, '', $limit, 0, 0, 1); $moreforfilter = ''; @@ -261,9 +259,7 @@ if ($resql) print ''."\n"; $db->free($resql); -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/loan/payment/card.php b/htdocs/loan/payment/card.php index 4798366d087..31619be511b 100644 --- a/htdocs/loan/payment/card.php +++ b/htdocs/loan/payment/card.php @@ -63,9 +63,7 @@ if ($action == 'confirm_delete' && $confirm == 'yes' && $user->rights->loan->del $db->commit(); header("Location: ".DOL_URL_ROOT."/loan/list.php"); exit; - } - else - { + } else { setEventMessages($payment->error, $payment->errors, 'errors'); $db->rollback(); } @@ -101,9 +99,7 @@ if ($action == 'confirm_valide' && $confirm == 'yes' && $user->rights->loan->wri header('Location: card.php?id='.$payment->id); exit; - } - else - { + } else { setEventMessages($payment->error, $payment->errors, 'errors'); $db->rollback(); } @@ -122,7 +118,7 @@ $form = new Form($db); $h = 0; $head[$h][0] = DOL_URL_ROOT.'/loan/payment/card.php?id='.$id; -$head[$h][1] = $langs->trans("Card"); +$head[$h][1] = $langs->trans("PaymentLoan"); $hselected = $h; $h++; @@ -254,9 +250,7 @@ if ($resql) print "
    \n"; $db->free($resql); -} -else -{ +} else { dol_print_error($db); } @@ -286,9 +280,7 @@ if (empty($action) && !empty($user->rights->loan->delete)) if (!$disable_delete) { print ''.$langs->trans('Delete').''; - } - else - { + } else { print ''.$langs->trans('Delete').''; } } diff --git a/htdocs/loan/payment/payment.php b/htdocs/loan/payment/payment.php index ea37a298d49..de5a43220ef 100644 --- a/htdocs/loan/payment/payment.php +++ b/htdocs/loan/payment/payment.php @@ -155,8 +155,7 @@ if ($action == 'add_payment') { setEventMessages($payment->error, $payment->errors, 'errors'); $error++; - } - elseif (isset($line)) + } elseif (isset($line)) { $line->fk_bank = $payment->fk_bank; $line->update($user); @@ -169,9 +168,7 @@ if ($action == 'add_payment') $loc = DOL_URL_ROOT.'/loan/card.php?id='.$chid; header('Location: '.$loc); exit; - } - else - { + } else { $db->rollback(); } } @@ -290,9 +287,7 @@ if ($action == 'create') if ($loan->datestart > 0) { print ''.dol_print_date($loan->datestart, 'day').''; - } - else - { + } else { print '!!!'; } @@ -306,27 +301,21 @@ if ($action == 'create') if ($sumpaid < $loan->capital) { print $langs->trans("LoanCapital").': '; - } - else - { + } else { print '-'; } print '
    '; if ($sumpaid < $loan->capital) { print $langs->trans("Insurance").': '; - } - else - { + } else { print '-'; } print '
    '; if ($sumpaid < $loan->capital) { print $langs->trans("Interest").': '; - } - else - { + } else { print '-'; } print ""; diff --git a/htdocs/loan/schedule.php b/htdocs/loan/schedule.php index fb3cd86ebe3..adcdf4ca049 100644 --- a/htdocs/loan/schedule.php +++ b/htdocs/loan/schedule.php @@ -237,8 +237,7 @@ if ($object->nbterm > 0 && count($echeance->lines) == 0) $i++; $capital = $cap_rest; } -} -elseif (count($echeance->lines) > 0) +} elseif (count($echeance->lines) > 0) { $i = 1; $capital = $object->capital; diff --git a/htdocs/mailmanspip/class/mailmanspip.class.php b/htdocs/mailmanspip/class/mailmanspip.class.php index 41a221a7e72..46e8d017eca 100644 --- a/htdocs/mailmanspip/class/mailmanspip.class.php +++ b/htdocs/mailmanspip/class/mailmanspip.class.php @@ -208,14 +208,10 @@ class MailmanSpip if ($result) { return 1; - } - else $this->error = $mydb->lasterror(); - } - else $this->error = 'Failed to connect to SPIP'; - } - else $this->error = 'BadSPIPConfiguration'; - } - else $this->error = 'SPIPNotEnabled'; + } else $this->error = $mydb->lasterror(); + } else $this->error = 'Failed to connect to SPIP'; + } else $this->error = 'BadSPIPConfiguration'; + } else $this->error = 'SPIPNotEnabled'; return 0; } @@ -249,14 +245,10 @@ class MailmanSpip if ($result) { return 1; - } - else $this->error = $mydb->lasterror(); - } - else $this->error = 'Failed to connect to SPIP'; - } - else $this->error = 'BadSPIPConfiguration'; - } - else $this->error = 'SPIPNotEnabled'; + } else $this->error = $mydb->lasterror(); + } else $this->error = 'Failed to connect to SPIP'; + } else $this->error = 'BadSPIPConfiguration'; + } else $this->error = 'SPIPNotEnabled'; return 0; } @@ -290,25 +282,18 @@ class MailmanSpip // nous avons au moins une reponse $mydb->close($result); return 1; - } - else - { + } else { // nous n'avons pas de reponse => n'existe pas $mydb->close($result); return 0; } - } - else - { + } else { $this->error = $mydb->lasterror(); $mydb->close(); } - } - else $this->error = 'Failed to connect to SPIP'; - } - else $this->error = 'BadSPIPConfiguration'; - } - else $this->error = 'SPIPNotEnabled'; + } else $this->error = 'Failed to connect to SPIP'; + } else $this->error = 'BadSPIPConfiguration'; + } else $this->error = 'SPIPNotEnabled'; return -1; } @@ -373,13 +358,10 @@ class MailmanSpip { $this->mladded_ko[$list] = $object->email; return -2; - } - else $this->mladded_ok[$list] = $object->email; + } else $this->mladded_ok[$list] = $object->email; } return count($lists); - } - else - { + } else { $this->error = "ADHERENT_MAILMAN_URL not defined"; return -1; } @@ -447,13 +429,10 @@ class MailmanSpip { $this->mlremoved_ko[$list] = $object->email; return -2; - } - else $this->mlremoved_ok[$list] = $object->email; + } else $this->mlremoved_ok[$list] = $object->email; } return count($lists); - } - else - { + } else { $this->error = "ADHERENT_MAILMAN_UNSUB_URL not defined"; return -1; } diff --git a/htdocs/main.inc.php b/htdocs/main.inc.php index 965d49de2f7..57e5a421208 100644 --- a/htdocs/main.inc.php +++ b/htdocs/main.inc.php @@ -11,6 +11,7 @@ * Copyright (C) 2012 Christophe Battarel * Copyright (C) 2014-2015 Marcos García * Copyright (C) 2015 Raphaël Doursenaud + * Copyright (C) 2020 Demarest Maxime * * 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 @@ -130,17 +131,13 @@ function analyseVarsForSqlAndScriptsInjection(&$var, $type) if (analyseVarsForSqlAndScriptsInjection($key, $type) && analyseVarsForSqlAndScriptsInjection($value, $type)) { //$var[$key] = $value; // This is useless - } - else - { + } else { print 'Access refused by SQL/Script injection protection in main.inc.php (type='.htmlentities($type).' key='.htmlentities($key).' value='.htmlentities($value).' page='.htmlentities($_SERVER["REQUEST_URI"]).')'; exit; } } return true; - } - else - { + } else { return (testSqlAndScriptInject($var, $type) <= 0); } } @@ -269,14 +266,11 @@ if (!empty($conf->file->main_force_https) && (empty($_SERVER["HTTPS"]) || $_SERV { $newurl = preg_replace('/^http:/i', 'https:', $_SERVER["SCRIPT_URI"]); } - } - else // Check HTTPS environment variable (Apache/mod_ssl only) - { + } else { + // Check HTTPS environment variable (Apache/mod_ssl only) $newurl = preg_replace('/^http:/i', 'https:', DOL_MAIN_URL_ROOT).$_SERVER["REQUEST_URI"]; } - } - else - { + } else { // Check HTTPS environment variable (Apache/mod_ssl only) $newurl = $conf->file->main_force_https.$_SERVER["REQUEST_URI"]; } @@ -287,9 +281,7 @@ if (!empty($conf->file->main_force_https) && (empty($_SERVER["HTTPS"]) || $_SERV dol_syslog("main.inc: dolibarr_main_force_https is on, we make a redirect to ".$newurl); header("Location: ".$newurl); exit; - } - else - { + } else { dol_syslog("main.inc: dolibarr_main_force_https is on but we failed to forge new https url so no redirect is done", LOG_WARNING); } } @@ -316,7 +308,7 @@ if (!defined('NOLOGIN') && !defined('NOIPCHECK') && !empty($dolibarr_main_restri // Loading of additional presentation includes if (!defined('NOREQUIREHTML')) require_once DOL_DOCUMENT_ROOT.'/core/class/html.form.class.php'; // Need 660ko memory (800ko in 2.2) -if (!defined('NOREQUIREAJAX') && $conf->use_javascript_ajax) require_once DOL_DOCUMENT_ROOT.'/core/lib/ajax.lib.php'; // Need 22ko memory +require_once DOL_DOCUMENT_ROOT.'/core/lib/ajax.lib.php'; // Need 22ko memory // If install or upgrade process not done or not completely finished, we call the install page. if (!empty($conf->global->MAIN_NOT_INSTALLED) || !empty($conf->global->MAIN_NOT_UPGRADED)) @@ -431,9 +423,7 @@ if (!defined('NOLOGIN')) if (defined('MAIN_AUTHENTICATION_MODE')) { $dolibarr_main_authentication = constant('MAIN_AUTHENTICATION_MODE'); - } - else - { + } else { // Authentication mode if (empty($dolibarr_main_authentication)) $dolibarr_main_authentication = 'http,dolibarr'; // Authentication mode: forceuser @@ -657,9 +647,7 @@ if (!defined('NOLOGIN')) header('Location: '.DOL_URL_ROOT.'/index.php'.(count($paramsurl) ? '?'.implode('&', $paramsurl) : '')); exit; } - } - else - { + } else { // We are already into an authenticated session $login = $_SESSION["dol_login"]; $entity = $_SESSION["dol_entity"]; @@ -709,9 +697,7 @@ if (!defined('NOLOGIN')) if (GETPOST('lang', 'aZ09')) $paramsurl[] = 'lang='.GETPOST('lang', 'aZ09'); header('Location: '.DOL_URL_ROOT.'/index.php'.(count($paramsurl) ? '?'.implode('&', $paramsurl) : '')); exit; - } - else - { + } else { // Initialize technical object to manage hooks of page. Note that conf->hooks_modules contains array of hook context $hookmanager->initHooks(array('main')); @@ -813,9 +799,7 @@ if (!defined('NOLOGIN')) session_destroy(); dol_print_error($db, 'Error in some triggers USER_LOGIN or in some hooks afterLogin'); exit; - } - else - { + } else { $db->commit(); } @@ -875,14 +859,12 @@ if (!GETPOST('nojs', 'int')) // If javascript was not disabled on URL { $conf->use_javascript_ajax = !$user->conf->MAIN_DISABLE_JAVASCRIPT; } -} -else $conf->use_javascript_ajax = 0; +} else $conf->use_javascript_ajax = 0; // Set MAIN_OPTIMIZEFORTEXTBROWSER if (GETPOST('textbrowser', 'int') || (!empty($conf->browser->name) && $conf->browser->name == 'lynxlinks') || !empty($user->conf->MAIN_OPTIMIZEFORTEXTBROWSER)) // If we must enable text browser { $conf->global->MAIN_OPTIMIZEFORTEXTBROWSER = 1; -} -elseif (!empty($user->conf->MAIN_OPTIMIZEFORTEXTBROWSER)) +} elseif (!empty($user->conf->MAIN_OPTIMIZEFORTEXTBROWSER)) { $conf->global->MAIN_OPTIMIZEFORTEXTBROWSER = $user->conf->MAIN_OPTIMIZEFORTEXTBROWSER; } @@ -985,9 +967,7 @@ if (empty($conf->browser->firefox)) define('ROWS_7', 7); define('ROWS_8', 8); define('ROWS_9', 9); -} -else -{ +} else { define('ROWS_1', 0); define('ROWS_2', 1); define('ROWS_3', 2); @@ -1007,9 +987,8 @@ if (!defined('NOREQUIREMENU')) if (empty($user->socid)) // If internal user or not defined { $conf->standard_menu = (empty($conf->global->MAIN_MENU_STANDARD_FORCED) ? (empty($conf->global->MAIN_MENU_STANDARD) ? 'eldy_menu.php' : $conf->global->MAIN_MENU_STANDARD) : $conf->global->MAIN_MENU_STANDARD_FORCED); - } - else // If external user - { + } else { + // If external user $conf->standard_menu = (empty($conf->global->MAIN_MENUFRONT_STANDARD_FORCED) ? (empty($conf->global->MAIN_MENUFRONT_STANDARD) ? 'eldy_menu.php' : $conf->global->MAIN_MENUFRONT_STANDARD) : $conf->global->MAIN_MENUFRONT_STANDARD_FORCED); } @@ -1152,8 +1131,7 @@ function top_httphead($contenttype = 'text/html', $forcenocache = 0) // default-src http: https: 'unsafe-eval' 'unsafe-inline'; object-src 'none' header("Content-Security-Policy: ".$contentsecuritypolicy); } - } - elseif (constant('FORCECSP')) + } elseif (constant('FORCECSP')) { header("Content-Security-Policy: ".constant('FORCECSP')); } @@ -1208,7 +1186,7 @@ function top_htmlhead($head, $title = '', $disablejs = 0, $disablehead = 0, $arr print ''."\n"; // Favicon - $favicon = DOL_URL_ROOT.'/theme/dolibarr_logo_256x256.png'; + $favicon = DOL_URL_ROOT.'/theme/dolibarr_256x256_color.png'; if (!empty($mysoc->logo_squarred_mini)) $favicon = DOL_URL_ROOT.'/viewimage.php?cache=1&modulepart=mycompany&file='.urlencode('logos/thumbs/'.$mysoc->logo_squarred_mini); if (!empty($conf->global->MAIN_FAVICON_URL)) $favicon = $conf->global->MAIN_FAVICON_URL; if (empty($conf->dol_use_jmobile)) print ''."\n"; // Not required into an Android webview @@ -1332,9 +1310,7 @@ function top_htmlhead($head, $title = '', $disablejs = 0, $disablehead = 0, $arr if (preg_match('/^(http|\/\/)/i', $cssfile)) { $urltofile = $cssfile; - } - else - { + } else { $urltofile = dol_buildpath($cssfile, 1); } print ''."\n".''."\n"; if (!defined('DISABLE_JQUERY_TABLEDND')) print ''."\n"; // jQuery jnotify - if (empty($conf->global->MAIN_DISABLE_JQUERY_JNOTIFY) && !defined('DISABLE_JQUERY_JNOTIFY')) - { + if (empty($conf->global->MAIN_DISABLE_JQUERY_JNOTIFY) && !defined('DISABLE_JQUERY_JNOTIFY')) { print ''."\n"; } // Flot - if (empty($conf->global->MAIN_JS_GRAPH) || $conf->global->MAIN_JS_GRAPH == 'jflot') - { - if (empty($conf->global->MAIN_DISABLE_JQUERY_FLOT) && !defined('DISABLE_JQUERY_FLOT')) - { - if (constant('JS_JQUERY_FLOT')) - { + if (empty($conf->global->MAIN_JS_GRAPH) || $conf->global->MAIN_JS_GRAPH == 'jflot') { + if (empty($conf->global->MAIN_DISABLE_JQUERY_FLOT) && !defined('DISABLE_JQUERY_FLOT')) { + if (constant('JS_JQUERY_FLOT')) { print ''."\n"; print ''."\n"; print ''."\n"; - } - else - { + } else { print ''."\n"; print ''."\n"; print ''."\n"; @@ -1395,14 +1365,12 @@ function top_htmlhead($head, $title = '', $disablejs = 0, $disablehead = 0, $arr } } // Chart - if ($conf->global->MAIN_JS_GRAPH == 'chart') - { + if ($conf->global->MAIN_JS_GRAPH == 'chart') { print ''."\n"; } // jQuery jeditable for Edit In Place features - if (!empty($conf->global->MAIN_USE_JQUERY_JEDITABLE) && !defined('DISABLE_JQUERY_JEDITABLE')) - { + if (!empty($conf->global->MAIN_USE_JQUERY_JEDITABLE) && !defined('DISABLE_JQUERY_JEDITABLE')) { print ''."\n"; print ''."\n"; print ''."\n"; @@ -1421,28 +1389,26 @@ function top_htmlhead($head, $title = '', $disablejs = 0, $disablehead = 0, $arr print ''."\n"; } // jQuery Timepicker - if (!empty($conf->global->MAIN_USE_JQUERY_TIMEPICKER) || defined('REQUIRE_JQUERY_TIMEPICKER')) - { + if (!empty($conf->global->MAIN_USE_JQUERY_TIMEPICKER) || defined('REQUIRE_JQUERY_TIMEPICKER')) { print ''."\n"; print ''."\n"; } - if (!defined('DISABLE_SELECT2') && (!empty($conf->global->MAIN_USE_JQUERY_MULTISELECT) || defined('REQUIRE_JQUERY_MULTISELECT'))) // jQuery plugin "mutiselect", "multiple-select", "select2", ... - { + if (!defined('DISABLE_SELECT2') && (!empty($conf->global->MAIN_USE_JQUERY_MULTISELECT) || defined('REQUIRE_JQUERY_MULTISELECT'))) { + // jQuery plugin "mutiselect", "multiple-select", "select2", ... $tmpplugin = empty($conf->global->MAIN_USE_JQUERY_MULTISELECT) ?constant('REQUIRE_JQUERY_MULTISELECT') : $conf->global->MAIN_USE_JQUERY_MULTISELECT; print ''."\n"; // We include full because we need the support of containerCssClass } } - if (!$disablejs && !empty($conf->use_javascript_ajax)) - { + if (!$disablejs && !empty($conf->use_javascript_ajax)) { // CKEditor if ((!empty($conf->fckeditor->enabled) && (empty($conf->global->FCKEDITOR_EDITORNAME) || $conf->global->FCKEDITOR_EDITORNAME == 'ckeditor') && !defined('DISABLE_CKEDITOR')) || defined('FORCE_CKEDITOR')) { print ''."\n"; $pathckeditor = DOL_URL_ROOT.'/includes/ckeditor/ckeditor/'; $jsckeditor = 'ckeditor.js'; - if (constant('JS_CKEDITOR')) // To use external ckeditor 4 js lib - { + if (constant('JS_CKEDITOR')) { + // To use external ckeditor 4 js lib $pathckeditor = constant('JS_CKEDITOR'); } print ''."\n"; @@ -1504,9 +1468,7 @@ function top_htmlhead($head, $title = '', $disablejs = 0, $disablehead = 0, $arr if (preg_match('/^(http|\/\/)/i', $jsfile)) { print ''."\n"; - } - else - { + } else { print ''."\n"; } } @@ -1587,10 +1549,8 @@ function top_menu($head, $title = '', $target = '', $disablejs = 0, $disablehead if (preg_match('/\d\.\d/', $appli)) { if (!preg_match('/'.preg_quote(DOL_VERSION).'/', $appli)) $appli .= " (".DOL_VERSION.")"; // If new title contains a version that is different than core - } - else $appli .= " ".DOL_VERSION; - } - else $appli .= " ".DOL_VERSION; + } else $appli .= " ".DOL_VERSION; + } else $appli .= " ".DOL_VERSION; if (!empty($conf->global->MAIN_FEATURES_LEVEL)) $appli .= "
    ".$langs->trans("LevelOfFeature").': '.$conf->global->MAIN_FEATURES_LEVEL; @@ -1605,9 +1565,7 @@ function top_menu($head, $title = '', $target = '', $disablejs = 0, $disablehead $logouttext .= ''; $logouttext .= img_picto($langs->trans('Logout'), 'sign-out', '', false, 0, 0, '', 'atoplogin'); $logouttext .= ''; - } - else - { + } else { $logouthtmltext .= $langs->trans("NoLogoutProcessWithAuthMode", $_SESSION["dol_authmode"]); $logouttext .= img_picto($langs->trans('Logout'), 'sign-out', '', false, 0, 0, '', 'atoplogin opacitymedium'); } @@ -1624,11 +1582,10 @@ function top_menu($head, $title = '', $target = '', $disablejs = 0, $disablehead { if ($result == 0) $toprightmenu .= $hookmanager->resPrint; // add - else + else { $toprightmenu = $hookmanager->resPrint; // replace - } - else - { + } + } else { $toprightmenu .= $result; // For backward compatibility } @@ -1721,6 +1678,11 @@ function top_menu($head, $title = '', $target = '', $disablejs = 0, $disablehead $toprightmenu .= top_menu_search(); } + if (!empty($conf->global->MAIN_USE_TOP_MENU_QUICKADD_DROPDOWN)) { + // Add search dropdown + $toprightmenu .= top_menu_quickadd(); + } + // Add bookmark dropdown $toprightmenu .= top_menu_bookmark(); @@ -1764,8 +1726,7 @@ function top_menu_user($hideloginname = 0, $urllogout = '') { $userImage = Form::showphoto('userphoto', $user, 0, 0, 0, 'photouserphoto userphoto', 'small', 0, 1); $userDropDownImage = Form::showphoto('userphoto', $user, 0, 0, 0, 'dropdown-user-image', 'small', 0, 1); - } - else { + } else { $nophoto = '/public/theme/common/user_anonymous.png'; if ($user->gender == 'man') $nophoto = '/public/theme/common/user_man.png'; if ($user->gender == 'woman') $nophoto = '/public/theme/common/user_woman.png'; @@ -1818,8 +1779,7 @@ function top_menu_user($hideloginname = 0, $urllogout = '') { if ($result == 0) { $dropdownBody .= $hookmanager->resPrint; // add - } - else { + } else { $dropdownBody = $hookmanager->resPrint; // replace } } @@ -1845,10 +1805,8 @@ function top_menu_user($hideloginname = 0, $urllogout = '') if (preg_match('/\d\.\d/', $appli)) { if (!preg_match('/'.preg_quote(DOL_VERSION).'/', $appli)) $appli .= " (".DOL_VERSION.")"; // If new title contains a version that is different than core - } - else $appli .= " ".DOL_VERSION; - } - else $appli .= " ".DOL_VERSION; + } else $appli .= " ".DOL_VERSION; + } else $appli .= " ".DOL_VERSION; if (empty($conf->global->MAIN_OPTIMIZEFORTEXTBROWSER)) { $btnUser = ' @@ -1933,6 +1891,224 @@ function top_menu_user($hideloginname = 0, $urllogout = '') return $btnUser; } +/** + * Build the tooltip on top menu quick add + * + * @return string HTML content + */ +function top_menu_quickadd() +{ + global $langs, $conf, $db, $hookmanager, $user; + global $menumanager; + $html = ''; + // Define $dropDownQuickAddHtml + $dropDownQuickAddHtml = ''; + + $dropDownQuickAddHtml.= ''; + + $html.= ' + '; + $html .= ' + + + '; + return $html; +} /** * Build the tooltip on top menu bookmark @@ -2025,7 +2201,7 @@ function top_menu_search() $defaultAction = ''; $buttonList = ''; -} -else -{ +} else { dol_print_error($db); } $db->free($result); diff --git a/htdocs/margin/tabs/productMargins.php b/htdocs/margin/tabs/productMargins.php index d166b990d9b..70cbf6a9e42 100644 --- a/htdocs/margin/tabs/productMargins.php +++ b/htdocs/margin/tabs/productMargins.php @@ -42,13 +42,12 @@ if (empty($user->rights->margins->liretous)) accessforbidden(); $object = new Product($db); -$mesg = ''; - +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; if (!$sortorder) $sortorder = "DESC"; @@ -230,9 +229,7 @@ if ($id > 0 || !empty($ref)) { $marginRate = ($cumul_achat != 0) ?-1 * (100 * $totalMargin / $cumul_achat) : ''; $markRate = ($cumul_vente != 0) ?-1 * (100 * $totalMargin / $cumul_vente) : ''; - } - else - { + } else { $marginRate = ($cumul_achat != 0) ? (100 * $totalMargin / $cumul_achat) : ''; $markRate = ($cumul_vente != 0) ? (100 * $totalMargin / $cumul_vente) : ''; } diff --git a/htdocs/margin/tabs/thirdpartyMargins.php b/htdocs/margin/tabs/thirdpartyMargins.php index 5d7d0039b7a..c9711bd99ef 100644 --- a/htdocs/margin/tabs/thirdpartyMargins.php +++ b/htdocs/margin/tabs/thirdpartyMargins.php @@ -34,13 +34,12 @@ if (!empty($user->socid)) $socid = $user->socid; $result = restrictedArea($user, 'societe', '', ''); -$mesg = ''; - +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; if (!$sortorder) $sortorder = "DESC"; @@ -106,7 +105,7 @@ if ($socid > 0) print ''; } - if (!empty($conf->fournisseur->enabled) && $object->fournisseur && !empty($user->rights->fournisseur->lire)) + if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || ! empty($conf->supplier_order->enabled) || ! empty($conf->supplier_invoice->enabled)) && $object->fournisseur && !empty($user->rights->fournisseur->lire)) { print ''; print $langs->trans('SupplierCode').''; @@ -236,9 +235,7 @@ if ($socid > 0) { $marginRate = ($cumul_achat != 0) ?-1 * (100 * $totalMargin / $cumul_achat) : ''; $markRate = ($cumul_vente != 0) ?-1 * (100 * $totalMargin / $cumul_vente) : ''; - } - else - { + } else { $marginRate = ($cumul_achat != 0) ? (100 * $totalMargin / $cumul_achat) : ''; $markRate = ($cumul_vente != 0) ? (100 * $totalMargin / $cumul_vente) : ''; } @@ -255,9 +252,7 @@ if ($socid > 0) print "".(($markRate === '') ? 'n/a' : price(price2num($markRate, 'MT'))."%")."\n"; print ' '; print "\n"; - } - else - { + } else { dol_print_error($db); } print ""; @@ -265,9 +260,7 @@ if ($socid > 0) print '
    '; $db->free($result); -} -else -{ +} else { dol_print_error('', 'Parameter socid not defined'); } diff --git a/htdocs/master.inc.php b/htdocs/master.inc.php index 4005e6a2ed5..e50539fd05b 100644 --- a/htdocs/master.inc.php +++ b/htdocs/master.inc.php @@ -60,14 +60,14 @@ if (defined('TEST_DB_FORCE_TYPE')) $conf->db->type = constant('TEST_DB_FORCE_TYP // Set properties specific to conf file $conf->file->main_limit_users = $dolibarr_main_limit_users; -$conf->file->mailing_limit_sendbyweb = $dolibarr_mailing_limit_sendbyweb; -$conf->file->mailing_limit_sendbycli = $dolibarr_mailing_limit_sendbycli; +$conf->file->mailing_limit_sendbyweb = $dolibarr_mailing_limit_sendbyweb; +$conf->file->mailing_limit_sendbycli = $dolibarr_mailing_limit_sendbycli; $conf->file->main_authentication = empty($dolibarr_main_authentication) ? '' : $dolibarr_main_authentication; // Identification mode $conf->file->main_force_https = empty($dolibarr_main_force_https) ? '' : $dolibarr_main_force_https; // Force https -$conf->file->strict_mode = empty($dolibarr_strict_mode) ? '' : $dolibarr_strict_mode; // Force php strict mode (for debug) +$conf->file->strict_mode = empty($dolibarr_strict_mode) ? '' : $dolibarr_strict_mode; // Force php strict mode (for debug) $conf->file->instance_unique_id = empty($dolibarr_main_instance_unique_id) ? (empty($dolibarr_main_cookie_cryptkey) ? '' : $dolibarr_main_cookie_cryptkey) : $dolibarr_main_instance_unique_id; // Unique id of instance $conf->file->dol_document_root = array('main' => (string) DOL_DOCUMENT_ROOT); // Define array of document root directories ('/home/htdocs') -$conf->file->dol_url_root = array('main' => (string) DOL_URL_ROOT); // Define array of url root path ('' or '/dolibarr') +$conf->file->dol_url_root = array('main' => (string) DOL_URL_ROOT); // Define array of url root path ('' or '/dolibarr') if (!empty($dolibarr_main_document_root_alt)) { // dolibarr_main_document_root_alt can contains several directories @@ -132,9 +132,7 @@ if (!defined('NOREQUIREDB')) $langs->setDefaultLang('auto'); $langs->load("website"); print $langs->trans("SorryWebsiteIsCurrentlyOffLine"); - } - else - { + } else { print "SorryWebsiteIsCurrentlyOffLine"; } print '
    '; @@ -162,20 +160,17 @@ if (!defined('NOREQUIREUSER')) { */ // By default conf->entity is 1, but we change this if we ask another value. -if (session_id() && !empty($_SESSION["dol_entity"])) // Entity inside an opened session -{ +if (session_id() && !empty($_SESSION["dol_entity"])) { + // Entity inside an opened session $conf->entity = $_SESSION["dol_entity"]; -} -elseif (!empty($_ENV["dol_entity"])) // Entity inside a CLI script -{ +} elseif (!empty($_ENV["dol_entity"])) { + // Entity inside a CLI script $conf->entity = $_ENV["dol_entity"]; -} -elseif (GETPOSTISSET("loginfunction") && GETPOST("entity", 'int')) // Just after a login page -{ +} elseif (GETPOSTISSET("loginfunction") && GETPOST("entity", 'int')) { + // Just after a login page $conf->entity = GETPOST("entity", 'int'); -} -elseif (defined('DOLENTITY') && is_numeric(DOLENTITY)) // For public page with MultiCompany module -{ +} elseif (defined('DOLENTITY') && is_numeric(DOLENTITY)) { + // For public page with MultiCompany module $conf->entity = DOLENTITY; } @@ -225,9 +220,7 @@ if (!empty($conf->global->MAIN_ONLY_LOGIN_ALLOWED)) print 'You are logged with user "'.$_SESSION["dol_login"].'" and only administrator user "'.$conf->global->MAIN_ONLY_LOGIN_ALLOWED.'" is allowed to connect for the moment.'."\n"; $nexturl = DOL_URL_ROOT.'/user/logout.php'; print 'Please try later or click here to disconnect and change login user...'."\n"; - } - else - { + } else { print 'Sorry, your application is offline. Only administrator user "'.$conf->global->MAIN_ONLY_LOGIN_ALLOWED.'" is allowed to connect for the moment.'."\n"; $nexturl = DOL_URL_ROOT.'/'; print 'Please try later or click here to change login user...'."\n"; diff --git a/htdocs/modulebuilder/admin/setup.php b/htdocs/modulebuilder/admin/setup.php index db30c32607f..45f6dd91b66 100644 --- a/htdocs/modulebuilder/admin/setup.php +++ b/htdocs/modulebuilder/admin/setup.php @@ -48,9 +48,7 @@ if ($action == "update") if ($res1 < 0 || $res2 < 0 || $res3 < 0 || $res4 < 0 || $res5 < 0 || $res6 < 0 || $res7 < 0 || $res8 < 0) { setEventMessages('ErrorFailedToSaveDate', null, 'errors'); $db->rollback(); - } - else - { + } else { setEventMessages('RecordModifiedSuccessfully', null, 'mesgs'); $db->commit(); } diff --git a/htdocs/modulebuilder/index.php b/htdocs/modulebuilder/index.php index 5b90f2a8f98..7c867cdf17a 100644 --- a/htdocs/modulebuilder/index.php +++ b/htdocs/modulebuilder/index.php @@ -128,9 +128,8 @@ if ($dirins && $action == 'initmodule' && $modulename) $error++; $langs->load("errors"); setEventMessages($langs->trans("ErrorFailToCopyDir", $srcdir, $destdir), null, 'errors'); - } - else // $result == 0 - { + } else { + // $result == 0 setEventMessages($langs->trans("AllFilesDidAlreadyExist", $srcdir, $destdir), null, 'warnings'); } } @@ -180,8 +179,10 @@ if ($dirins && $action == 'initmodule' && $modulename) dol_delete_file($destdir.'/sql/llx_'.strtolower($modulename).'_myobject.sql'); dol_delete_file($destdir.'/sql/llx_'.strtolower($modulename).'_myobject_extrafields.sql'); dol_delete_file($destdir.'/sql/llx_'.strtolower($modulename).'_myobject.key.sql'); + dol_delete_file($destdir.'/sql/llx_'.strtolower($modulename).'_myobject_extrafields.key.sql'); dol_delete_file($destdir.'/img/object_myobject.png'); dol_delete_file($destdir.'/class/myobject.class.php'); + dol_delete_dir($destdir.'/class'); dol_delete_dir($destdir.'/sql'); } @@ -268,9 +269,7 @@ if ($dirins && $action == 'initapi' && !empty($module)) ); dolReplaceInFile($destfile, $arrayreplacement); - } - else - { + } else { $langs->load("errors"); setEventMessages($langs->trans('ErrorFailToCreateFile', $destfile), null, 'errors'); } @@ -305,15 +304,12 @@ if ($dirins && $action == 'initphpunit' && !empty($module)) ); dolReplaceInFile($destfile, $arrayreplacement); - } - else - { + } else { $langs->load("errors"); setEventMessages($langs->trans('ErrorFailToCreateFile', $destfile), null, 'errors'); } } -if ($dirins && $action == 'initsqlextrafields' && !empty($module)) -{ +if ($dirins && $action == 'initsqlextrafields' && !empty($module)) { $modulename = ucfirst($module); // Force first letter in uppercase $objectname = $tabobj; @@ -351,9 +347,7 @@ if ($dirins && $action == 'initsqlextrafields' && !empty($module)) dolReplaceInFile($destfile1, $arrayreplacement); dolReplaceInFile($destfile2, $arrayreplacement); - } - else - { + } else { $langs->load("errors"); setEventMessages($langs->trans('ErrorFailToCreateFile', ''), null, 'errors'); } @@ -386,9 +380,7 @@ if ($dirins && $action == 'inithook' && !empty($module)) ); dolReplaceInFile($destfile, $arrayreplacement); - } - else - { + } else { $langs->load("errors"); setEventMessages($langs->trans('ErrorFailToCreateFile', $destfile), null, 'errors'); } @@ -420,9 +412,7 @@ if ($dirins && $action == 'inittrigger' && !empty($module)) ); dolReplaceInFile($destfile, $arrayreplacement); - } - else - { + } else { $langs->load("errors"); setEventMessages($langs->trans('ErrorFailToCreateFile', $destfile), null, 'errors'); } @@ -436,8 +426,7 @@ if ($dirins && $action == 'initwidget' && !empty($module)) //var_dump($srcfile);var_dump($destfile); $result = dol_copy($srcfile, $destfile, 0, 0); - if ($result > 0) - { + if ($result > 0) { $modulename = ucfirst($module); // Force first letter in uppercase //var_dump($phpfileval['fullname']); @@ -454,9 +443,7 @@ if ($dirins && $action == 'initwidget' && !empty($module)) ); dolReplaceInFile($destfile, $arrayreplacement); - } - else - { + } else { $langs->load("errors"); setEventMessages($langs->trans('ErrorFailToCreateFile', $destfile), null, 'errors'); } @@ -493,9 +480,7 @@ if ($dirins && $action == 'initcss' && !empty($module)) $srcfile = $dirins.'/'.strtolower($module).'/core/modules/mod'.$module.'.class.php'; $arrayreplacement = array('/\/\/\s*\''.preg_quote('/'.strtolower($module).'/css/'.strtolower($module).'.css.php', '/').'\'/' => '\'/'.strtolower($module).'/css/'.strtolower($module).'.css.php\''); dolReplaceInFile($srcfile, $arrayreplacement, '', 0, 0, 1); - } - else - { + } else { $langs->load("errors"); setEventMessages($langs->trans('ErrorFailToCreateFile', $destfile), null, 'errors'); } @@ -532,9 +517,7 @@ if ($dirins && $action == 'initjs' && !empty($module)) $srcfile = $dirins.'/'.strtolower($module).'/core/modules/mod'.$module.'.class.php'; $arrayreplacement = array('/\/\/\s*\''.preg_quote('/'.strtolower($module).'/js/'.strtolower($module).'.js.php', '/').'\'/' => '\'/'.strtolower($module).'/js/'.strtolower($module).'.js.php\''); dolReplaceInFile($srcfile, $arrayreplacement, '', 0, 0, 1); - } - else - { + } else { $langs->load("errors"); setEventMessages($langs->trans('ErrorFailToCreateFile', $destfile), null, 'errors'); } @@ -571,15 +554,12 @@ if ($dirins && $action == 'initcli' && !empty($module)) ); dolReplaceInFile($destfile, $arrayreplacement); - } - else - { + } else { $langs->load("errors"); setEventMessages($langs->trans('ErrorFailToCreateFile', $destfile), null, 'errors'); } } -if ($dirins && $action == 'initdoc' && !empty($module)) -{ +if ($dirins && $action == 'initdoc' && !empty($module)) { dol_mkdir($dirins.'/'.strtolower($module).'/doc'); $srcdir = DOL_DOCUMENT_ROOT.'/modulebuilder/template'; $srcfile = $srcdir.'/doc/Documentation.asciidoc'; @@ -587,8 +567,7 @@ if ($dirins && $action == 'initdoc' && !empty($module)) //var_dump($srcfile);var_dump($destfile); $result = dol_copy($srcfile, $destfile, 0, 0); - if ($result > 0) - { + if ($result > 0) { $modulename = ucfirst($module); // Force first letter in uppercase $modulelowercase = strtolower($module); @@ -622,9 +601,7 @@ if ($dirins && $action == 'initdoc' && !empty($module)) dol_delete_file($outputfiledoc, 0, 0, 0, null, false, 0); dol_delete_file($outputfiledocpdf, 0, 0, 0, null, false, 0); - } - else - { + } else { $langs->load("errors"); setEventMessages($langs->trans('ErrorFailToCreateFile', $destfile), null, 'errors'); } @@ -668,9 +645,7 @@ if ($dirins && $action == 'initobject' && $module && GETPOST('createtablearray', if (empty($_results)) { setEventMessages($langs->trans("ErrorTableNotFound", $tablename), null, 'errors'); - } - else - { + } else { /** * 'type' if the field format ('integer', 'integer:Class:pathtoclass', 'varchar(x)', 'double(24,8)', 'text', 'html', 'datetime', 'timestamp', 'float') * 'label' the translation key. @@ -879,9 +854,8 @@ if ($dirins && $action == 'initobject' && $module && $objectname) $error++; $langs->load("errors"); setEventMessages($langs->trans("ErrorFailToCopyFile", $srcdir.'/'.$srcfile, $destdir.'/'.$destfile), null, 'errors'); - } - else // $result == 0 - { + } else { + // $result == 0 setEventMessages($langs->trans("FileAlreadyExists", $destfile), null, 'warnings'); } } @@ -1063,15 +1037,11 @@ if ($dirins && ($action == 'droptable' || $action == 'droptableextrafields') && { $nb = $obj->nb; } - } - else - { + } else { if ($db->lasterrno() == 'DB_ERROR_NOSUCHTABLE') { setEventMessages($langs->trans("TableDoesNotExists", $tabletodrop), null, 'warnings'); - } - else - { + } else { dol_print_error($db); } } @@ -1080,8 +1050,7 @@ if ($dirins && ($action == 'droptable' || $action == 'droptableextrafields') && $resql = $db->DDLDropTable($tabletodrop); //var_dump($resql); setEventMessages($langs->trans("TableDropped", $tabletodrop), null, 'mesgs'); - } - elseif ($nb > 0) + } elseif ($nb > 0) { setEventMessages($langs->trans("TableNotEmptyDropCanceled", $tabletodrop), null, 'warnings'); } @@ -1228,9 +1197,7 @@ if ($dirins && $action == 'confirm_deletemodule') if ($result > 0) { setEventMessages($langs->trans("DirWasRemoved", $modulelowercase), null); - } - else - { + } else { setEventMessages($langs->trans("PurgeNothingToDelete"), null, 'warnings'); } } @@ -1288,9 +1255,7 @@ if ($dirins && $action == 'confirm_deleteobject' && $objectname) if ($resultko == 0) { setEventMessages($langs->trans("FilesDeleted"), null); - } - else - { + } else { setEventMessages($langs->trans("ErrorSomeFilesCouldNotBeDeleted"), null, 'warnings'); } } @@ -1317,15 +1282,12 @@ if ($dirins && $action == 'generatepackage') { try { $moduleobj = new $class($db); - } - catch (Exception $e) + } catch (Exception $e) { $error++; dol_print_error($e->getMessage()); } - } - else - { + } else { $error++; $langs->load("errors"); dol_print_error($langs->trans("ErrorFailedToLoadModuleDescriptorForXXX", $module)); @@ -1343,25 +1305,19 @@ if ($dirins && $action == 'generatepackage') { if (!dol_is_dir($dirofmodule)) dol_mkdir($dirofmodule); $result = dol_compress_dir($dir, $outputfilezip, 'zip', '', $modulelowercase); - } - else - { + } else { $result = -1; } if ($result > 0) { setEventMessages($langs->trans("ZipFileGeneratedInto", $outputfilezip), null); - } - else - { + } else { $error++; $langs->load("errors"); setEventMessages($langs->trans("ErrorFailToGenerateFile", $outputfilezip), null, 'errors'); } - } - else - { + } else { $error++; $langs->load("errors"); setEventMessages($langs->trans("ErrorCheckVersionIsDefined"), null, 'errors'); @@ -1379,9 +1335,7 @@ if ($dirins && $action == 'generatedoc') if ($result > 0) { setEventMessages($langs->trans("DocFileGeneratedInto", $dirofmodule), null); - } - else - { + } else { setEventMessages($util->error, $util->errors, 'errors'); } } @@ -1418,14 +1372,10 @@ if ($action == 'savefile' && empty($cancel)) @chmod($pathoffile, octdec($newmask)); setEventMessages($langs->trans("FileSaved"), null); - } - else - { + } else { setEventMessages($langs->trans("ErrorFailedToSaveFile"), null, 'errors'); } - } - else - { + } else { setEventMessages($langs->trans("ContentCantBeEmpty"), null, 'errors'); //$action='editfile'; $error++; @@ -1444,8 +1394,7 @@ if ($action == 'set' && $user->admin) $value = GETPOST('value', 'alpha'); $resarray = activateModule($value); if (!empty($resarray['errors'])) setEventMessages('', $resarray['errors'], 'errors'); - else - { + else { //var_dump($resarray);exit; if ($resarray['nbperms'] > 0) { @@ -1460,8 +1409,7 @@ if ($action == 'set' && $user->admin) $msg = $langs->trans('ModuleEnabledAdminMustCheckRights'); setEventMessages($msg, null, 'warnings'); } - } - else dol_print_error($db); + } else dol_print_error($db); } } header("Location: ".$_SERVER["PHP_SELF"]."?".$param); @@ -1592,9 +1540,7 @@ if (!$dirins) { $message = info_admin($langs->trans("ConfFileMustContainCustom", DOL_DOCUMENT_ROOT.'/custom', DOL_DOCUMENT_ROOT)); $allowfromweb = -1; -} -else -{ +} else { if ($dirins_ok) { if (!is_writable(dol_osencode($dirins))) @@ -1603,9 +1549,7 @@ else $message = info_admin($langs->trans("ErrorFailedToWriteInDir", $dirins)); $allowfromweb = 0; } - } - else - { + } else { $message = info_admin($langs->trans("NotExistsDirect", $dirins).$langs->trans("InfDirAlt").$langs->trans("InfDirExample")); $allowfromweb = 0; } @@ -1636,15 +1580,12 @@ if (!empty($module) && $module != 'initmodule' && $module != 'deletemodule') { try { $moduleobj = new $class($db); - } - catch (Exception $e) + } catch (Exception $e) { $error++; print $e->getMessage(); } - } - else - { + } else { if (empty($forceddirread)) $error++; $langs->load("errors"); print img_warning('').' '.$langs->trans("ErrorFailedToLoadModuleDescriptorForXXX", $module).'
    '; @@ -1700,29 +1641,21 @@ if (is_array($listofmodules) && count($listofmodules) > 0) { { $linktoenabledisable .= ' '.img_picto(ucfirst($page), "setup").''; // print ''.ucfirst($page).' '; - } - else - { + } else { if (preg_match('/^([^@]+)@([^@]+)$/i', $urlpage, $regs)) { $urltouse = dol_buildpath('/'.$regs[2].'/admin/'.$regs[1], 1); $linktoenabledisable .= '   '.img_picto($langs->trans("Setup"), "setup", 'style="padding-right: 6px"').''; - } - else - { + } else { $urltouse = $urlpage; $linktoenabledisable .= '   '.img_picto($langs->trans("Setup"), "setup", 'style="padding-right: 6px"').''; } } } - } - elseif (preg_match('/^([^@]+)@([^@]+)$/i', $objMod->config_page_url, $regs)) - { + } elseif (preg_match('/^([^@]+)@([^@]+)$/i', $objMod->config_page_url, $regs)) { $linktoenabledisable .= '   '.img_picto($langs->trans("Setup"), "setup", 'style="padding-right: 6px"').''; } - } - else - { + } else { $linktoenabledisable .= ''; $linktoenabledisable .= img_picto($langs->trans("ModuleIsNotActive", $urltomodulesetup), 'switch_off', '', false, 0, 0, '', 'classfortooltip', 1); $linktoenabledisable .= "\n"; @@ -1772,9 +1705,7 @@ if ($module == 'initmodule') print '
    '; print ''; -} -elseif ($module == 'deletemodule') -{ +} elseif ($module == 'deletemodule') { print ''."\n"; print '
    '; print ''; @@ -1786,9 +1717,7 @@ elseif ($module == 'deletemodule') print ''; print ''; print '
    '; -} -elseif (!empty($module)) -{ +} elseif (!empty($module)) { // Tabs for module if (!$error) { @@ -1975,9 +1904,7 @@ elseif (!empty($module)) print ''; print ''; - } - else - { + } else { print $langs->trans("ErrorFailedToLoadModuleDescriptorForXXX", $module).'
    '; } @@ -2003,9 +1930,7 @@ elseif (!empty($module)) } dol_fiche_end(); - } - else - { + } else { $fullpathoffile = dol_buildpath($file, 0, 1); // Description - level 2 if ($fullpathoffile) @@ -2036,9 +1961,7 @@ elseif (!empty($module)) print ''; } - } - else - { + } else { dol_fiche_head($head2, $tab, '', -1, ''); // Level 2 } @@ -2075,9 +1998,7 @@ elseif (!empty($module)) print ''; } print ''; - } - else - { + } else { // Edit text language file //print $langs->trans("UseAsciiDocFormat").'
    '; @@ -2122,7 +2043,7 @@ elseif (!empty($module)) print '
    '; print ' '.$langs->trans("DescriptorFile").' : '.$pathtofile.''; - print ' '.img_picto($langs->trans("Edit"), 'edit').''; + print ' '.img_picto($langs->trans("Edit"), 'edit').''; print '
    '; print ' '.$langs->trans("LanguageFile").' :
    '; if (!is_array($dicts) || empty($dicts)) print ''.$langs->trans("NoDictionaries").''; @@ -2205,9 +2126,7 @@ elseif (!empty($module)) print ''; $i++; } - } - else - { + } else { print ''.$langs->trans("None").''; } @@ -2215,9 +2134,7 @@ elseif (!empty($module)) print '
    '; print ''; - } - else - { + } else { $fullpathoffile = dol_buildpath($file, 0); $content = file_get_contents($fullpathoffile); @@ -2321,9 +2238,7 @@ elseif (!empty($module)) print '
    '; print ''; - } - elseif ($tabobj == 'deleteobject') - { + } elseif ($tabobj == 'deleteobject') { // Delete object tab print '
    '; print ''; @@ -2336,9 +2251,8 @@ elseif (!empty($module)) print ''; print ''; print '
    '; - } - else - { // tabobj = module + } else { + // tabobj = module if ($action == 'deleteproperty') { $formconfirm = $form->formconfirm( @@ -2410,14 +2324,10 @@ elseif (!empty($module)) if (empty($conf->global->$const_name)) // If module is not activated { print ''.$langs->trans("GoToApiExplorer").''; - } - else - { + } else { print ''.$langs->trans("GoToApiExplorer").''; } - } - else - { + } else { //print ''.$langs->trans("FileNotYetGenerated").' '; print ''; } @@ -2430,9 +2340,7 @@ elseif (!empty($module)) print ' '.img_picto($langs->trans("Edit"), 'edit').''; print ' '; print ''.img_picto($langs->trans("Delete"), 'delete').''; - } - else - { + } else { //print ''.$langs->trans("FileNotYetGenerated").' '; print ''; } @@ -2468,8 +2376,7 @@ elseif (!empty($module)) print ''.img_picto($langs->trans("Delete"), 'delete').''; print '   '; print ''.$langs->trans("DropTableIfEmpty").''; - } - else { + } else { print ''; } //print '   '.$langs->trans("RunSql").''; @@ -2539,17 +2446,14 @@ elseif (!empty($module)) if (empty($forceddirread)) { $result = dol_include_once($pathtoclass); - } - else - { + } else { $result = @include_once $dirread.'/'.$pathtoclass; } if (class_exists($tabobj)) { try { $tmpobjet = @new $tabobj($db); - } - catch (Exception $e) + } catch (Exception $e) { dol_syslog('Failed to load Constructor of class: '.$e->getMessage(), LOG_WARNING); } @@ -2745,9 +2649,7 @@ elseif (!empty($module)) print ''; } - } - else - { + } else { if ($tab == 'specifications') { if ($action != 'editfile' || empty($file)) @@ -2766,9 +2668,7 @@ elseif (!empty($module)) print ' '.img_picto($langs->trans("Edit"), 'edit').''; print '
    '; } - } - else - { + } else { // Use MD or asciidoc //print $langs->trans("UseAsciiDocFormat").'
    '; @@ -2803,25 +2703,18 @@ elseif (!empty($module)) print ''; print ''; - } - else - { + } else { print ''.$langs->trans('Failed to init the object with the new.').''; } - } - catch (Exception $e) + } catch (Exception $e) { print $e->getMessage(); } - } - else - { + } else { if (empty($forceddirread)) { $fullpathoffile = dol_buildpath($file, 0); - } - else - { + } else { $fullpathoffile = $dirread.'/'.$file; } @@ -2867,7 +2760,7 @@ elseif (!empty($module)) print '
    '; print ' '.$langs->trans("DescriptorFile").' : '.$pathtofile.''; - print ' '.img_picto($langs->trans("Edit"), 'edit').''; + print ' '.img_picto($langs->trans("Edit"), 'edit').''; print '
    '; print '
    '; @@ -2954,19 +2847,15 @@ elseif (!empty($module)) print ''; } - } - else - { - print ''.$langs->trans("None").''; + } else { + print ''.$langs->trans("None").''; } print ''; print ''; print ''; - } - else - { + } else { $fullpathoffile = dol_buildpath($file, 0); $content = file_get_contents($fullpathoffile); @@ -3007,7 +2896,7 @@ elseif (!empty($module)) print '
    '; print ' '.$langs->trans("DescriptorFile").' : '.$pathtofile.''; - print ' '.img_picto($langs->trans("Edit"), 'edit').''; + print ' '.img_picto($langs->trans("Edit"), 'edit').''; print '
    '; print '
    '; @@ -3054,19 +2943,15 @@ elseif (!empty($module)) print ''; } - } - else - { - print ''.$langs->trans("None").''; + } else { + print ''.$langs->trans("None").''; } print ''; print ''; print ''; - } - else - { + } else { $fullpathoffile = dol_buildpath($file, 0); $content = file_get_contents($fullpathoffile); @@ -3099,12 +2984,13 @@ elseif (!empty($module)) print ''.$langs->trans("HooksDefDesc").'
    '; print '
    '; - print ''; + print ''; print ''; - } - else - { + } else { print ''.$langs->trans("FileNotYetGenerated").''; print ''; } print ''; - } - else - { + } else { $fullpathoffile = dol_buildpath($file, 0); $content = file_get_contents($fullpathoffile); @@ -3279,18 +3165,14 @@ elseif (!empty($module)) if (dol_is_file($dirins.'/'.$pathtohook)) { print ''.$pathtohook.''; - print ''; + print ''; print ''; - } - else - { + } else { print ''.$langs->trans("FileNotYetGenerated").''; print ''; } print ''; - } - else - { + } else { $fullpathoffile = dol_buildpath($file, 0); $content = file_get_contents($fullpathoffile); @@ -3335,21 +3217,17 @@ elseif (!empty($module)) $pathtofile = $widget['relpath']; print ''; print ''; } - } - else - { + } else { print ''; } print '
    '; + print ''; $pathtofile = $listofmodules[strtolower($module)]['moduledescriptorrelpath']; + print ''; print ''; - print ''; - } - else - { + print ''; + print ''; + } else { print ''.$langs->trans("FileNotYetGenerated").''; - print ''; + print ''; + print ''; } print ''; - } - else - { + } else { $fullpathoffile = dol_buildpath($file, 0); $content = file_get_contents($fullpathoffile); @@ -3163,6 +3047,14 @@ elseif (!empty($module)) print '
    '; print '
    '; print ' '.$langs->trans("DescriptorFile").' : '.$pathtofile.''; print ''; - print ''.img_picto($langs->trans("Edit"), 'edit').''; + print ''.img_picto($langs->trans("Edit"), 'edit').''; print '
    '; @@ -3113,18 +2999,16 @@ elseif (!empty($module)) if (dol_is_file($dirins.'/'.$pathtohook)) { print ''.$pathtohook.''; - print ''.img_picto($langs->trans("Edit"), 'edit').''.img_picto($langs->trans("Delete"), 'delete').''.img_picto($langs->trans("Edit"), 'edit').' '; + print ''.img_picto($langs->trans("Delete"), 'delete').'
    '; + + $pathtofile = $listofmodules[strtolower($module)]['moduledescriptorrelpath']; + print ''; + if (!empty($triggers)) { foreach ($triggers as $trigger) @@ -3171,22 +3063,20 @@ elseif (!empty($module)) print ''; + print ''; print ''; print ''; } - } - else - { + } else { print ''; + print ''; + print ''; print ''; } + print '
    '; + print ' '.$langs->trans("DescriptorFile").' : '.$pathtofile.''; + print ''; + print ''.img_picto($langs->trans("Edit"), 'edit').''; + print '
    '; print ' '.$langs->trans("TriggersFile").' : '.$pathtofile.''; - print ''.img_picto($langs->trans("Edit"), 'edit').''.img_picto($langs->trans("Edit"), 'edit').''.img_picto($langs->trans("Delete"), 'delete').'
    '; print ' '.$langs->trans("NoTrigger"); - print '
    '; - } - else - { + } else { $fullpathoffile = dol_buildpath($file, 0); $content = file_get_contents($fullpathoffile); @@ -3227,18 +3117,14 @@ elseif (!empty($module)) if (dol_is_file($dirins.'/'.$pathtohook)) { print ''.$pathtohook.''; - print '
    '.img_picto($langs->trans("Edit"), 'edit').''.img_picto($langs->trans("Edit"), 'edit').''.img_picto($langs->trans("Delete"), 'delete').'
    '.img_picto($langs->trans("Edit"), 'edit').''.img_picto($langs->trans("Edit"), 'edit').''.img_picto($langs->trans("Delete"), 'delete').'
    '.$langs->trans("WidgetFile").' : '.$pathtofile.''; - print ''.img_picto($langs->trans("Edit"), 'edit').''; + print ''.img_picto($langs->trans("Edit"), 'edit').''; print ''.img_picto($langs->trans("Delete"), 'delete').'
    '.$langs->trans("NoWidget"); print ''; print '
    '; - } - else - { + } else { $fullpathoffile = dol_buildpath($file, 0); $content = file_get_contents($fullpathoffile); @@ -3425,17 +3303,13 @@ elseif (!empty($module)) print ''.img_picto($langs->trans("Delete"), 'delete').''; print ''; } - } - else - { + } else { print ' '.$langs->trans("NoCLIFile"); print ''; print ''; } print ''; - } - else - { + } else { $fullpathoffile = dol_buildpath($file, 0); $content = file_get_contents($fullpathoffile); @@ -3473,7 +3347,7 @@ elseif (!empty($module)) print '
    '; print ' '.$langs->trans("DescriptorFile").' : '.$pathtofile.''; - print ' '.img_picto($langs->trans("Edit"), 'edit').''; + print ' '.img_picto($langs->trans("Edit"), 'edit').''; print '
    '; print '
    '; @@ -3517,8 +3391,7 @@ elseif (!empty($module)) $texttoshow .= $langs->trans('CronMethod').': '.$cron['method']; $texttoshow .= '
    '.$langs->trans('CronArgs').': '.$cron['parameters']; $texttoshow .= '
    '.$langs->trans('Comment').': '.$langs->trans($cron['comment']); - } - elseif ($cron['jobtype'] == 'command') + } elseif ($cron['jobtype'] == 'command') { $text = $langs->trans('CronCommand'); $texttoshow = $langs->trans('CronCommand').': '.dol_trunc($cron['command']); @@ -3545,9 +3418,7 @@ elseif (!empty($module)) print ''; } - } - else - { + } else { print ''.$langs->trans("None").''; } @@ -3555,9 +3426,7 @@ elseif (!empty($module)) print ''; print ''; - } - else - { + } else { $fullpathoffile = dol_buildpath($file, 0); $content = file_get_contents($fullpathoffile); @@ -3602,22 +3471,18 @@ elseif (!empty($module)) if (preg_match('/\.md$/i', $spec['name'])) $format = 'markdown'; print ''; print ' '.$langs->trans("SpecificationFile").' : '.$pathtofile.''; - print ''.img_picto($langs->trans("Edit"), 'edit').''; + print ''.img_picto($langs->trans("Edit"), 'edit').''; print ''.img_picto($langs->trans("Delete"), 'delete').''; print ''; } - } - else - { + } else { print ''; print ' '.$langs->trans("FileNotYetGenerated"); print ''; print ''; } print ''; - } - else - { + } else { // Use MD or asciidoc //print $langs->trans("UseAsciiDocFormat").'
    '; @@ -3657,7 +3522,7 @@ elseif (!empty($module)) // HTML print ' '.$langs->trans("PathToModuleDocumentation", "HTML").' : '; - if (!dol_is_file($outputfiledoc)) print ''.$langs->trans("FileNotYetGenerated").''; + if (!dol_is_file($outputfiledoc)) print ''.$langs->trans("FileNotYetGenerated").''; else { print ''; print ''; @@ -3670,7 +3535,7 @@ elseif (!empty($module)) // PDF print ' '.$langs->trans("PathToModuleDocumentation", "PDF").' : '; - if (!dol_is_file($outputfiledocpdf)) print ''.$langs->trans("FileNotYetGenerated").''; + if (!dol_is_file($outputfiledocpdf)) print ''.$langs->trans("FileNotYetGenerated").''; else { print ''; print ''; @@ -3719,15 +3584,11 @@ elseif (!empty($module)) { try { $moduleobj = new $class($db); - } - catch (Exception $e) - { + } catch (Exception $e) { $error++; dol_print_error($e->getMessage()); } - } - else - { + } else { $error++; $langs->load("errors"); dol_print_error($langs->trans("ErrorFailedToLoadModuleDescriptorForXXX", $module)); @@ -3744,7 +3605,7 @@ elseif (!empty($module)) print '
    '; print ' '.$langs->trans("PathToModulePackage").' : '; - if (!dol_is_file($outputfilezip)) print ''.$langs->trans("FileNotYetGenerated").''; + if (!dol_is_file($outputfilezip)) print ''.$langs->trans("FileNotYetGenerated").''; else { $relativepath = $modulelowercase.'/bin/'.$FILENAMEZIP; print '
    '.$outputfilezip.''; diff --git a/htdocs/modulebuilder/template/.editorconfig b/htdocs/modulebuilder/template/.editorconfig index 3c4bd7d679d..57184034691 100644 --- a/htdocs/modulebuilder/template/.editorconfig +++ b/htdocs/modulebuilder/template/.editorconfig @@ -2,18 +2,18 @@ # top-most EditorConfig file root = true + # Unix-style newlines with a newline ending every file [*] charset = utf-8 end_of_line = lf insert_final_newline = true -# PHP PSR-2 Coding Standards -# http://www.php-fig.org/psr/psr-2/ [*.php] -indent_style = space +indent_style = tab indent_size = 4 trim_trailing_whitespace = true +insert_final_newline = true [*.js] indent_style = tab [*.css] diff --git a/htdocs/modulebuilder/template/admin/setup.php b/htdocs/modulebuilder/template/admin/setup.php index 05b2c56ffb8..dc48d60d3c6 100644 --- a/htdocs/modulebuilder/template/admin/setup.php +++ b/htdocs/modulebuilder/template/admin/setup.php @@ -115,9 +115,7 @@ if ($action == 'edit') print ''; print '
    '; -} -else -{ +} else { if (!empty($arrayofparameters)) { print ''; @@ -136,9 +134,7 @@ else print '
    '; print ''.$langs->trans("Modify").''; print '
    '; - } - else - { + } else { print '
    '.$langs->trans("NothingToSetup"); } } diff --git a/htdocs/modulebuilder/template/class/actions_mymodule.class.php b/htdocs/modulebuilder/template/class/actions_mymodule.class.php index 91dae82343b..13a2b8e895c 100644 --- a/htdocs/modulebuilder/template/class/actions_mymodule.class.php +++ b/htdocs/modulebuilder/template/class/actions_mymodule.class.php @@ -28,284 +28,285 @@ */ class ActionsMyModule { - /** - * @var DoliDB Database handler. - */ - public $db; + /** + * @var DoliDB Database handler. + */ + public $db; - /** - * @var string Error code (or message) - */ - public $error = ''; + /** + * @var string Error code (or message) + */ + public $error = ''; - /** - * @var array Errors - */ - public $errors = array(); + /** + * @var array Errors + */ + public $errors = array(); - /** - * @var array Hook results. Propagated to $hookmanager->resArray for later reuse - */ - public $results = array(); + /** + * @var array Hook results. Propagated to $hookmanager->resArray for later reuse + */ + public $results = array(); - /** - * @var string String displayed by executeHook() immediately after return - */ - public $resprints; + /** + * @var string String displayed by executeHook() immediately after return + */ + public $resprints; - /** - * Constructor - * - * @param DoliDB $db Database handler - */ - public function __construct($db) - { - $this->db = $db; - } + /** + * Constructor + * + * @param DoliDB $db Database handler + */ + public function __construct($db) + { + $this->db = $db; + } - /** - * Execute action - * - * @param array $parameters Array of parameters - * @param CommonObject $object The object to process (an invoice if you are in invoice module, a propale in propale's module, etc...) - * @param string $action 'add', 'update', 'view' - * @return int <0 if KO, - * =0 if OK but we want to process standard actions too, - * >0 if OK and we want to replace standard actions. - */ - public function getNomUrl($parameters, &$object, &$action) - { - global $db, $langs, $conf, $user; - $this->resprints = ''; - return 0; - } + /** + * Execute action + * + * @param array $parameters Array of parameters + * @param CommonObject $object The object to process (an invoice if you are in invoice module, a propale in propale's module, etc...) + * @param string $action 'add', 'update', 'view' + * @return int <0 if KO, + * =0 if OK but we want to process standard actions too, + * >0 if OK and we want to replace standard actions. + */ + public function getNomUrl($parameters, &$object, &$action) + { + global $db, $langs, $conf, $user; + $this->resprints = ''; + return 0; + } - /** - * Overloading the doActions function : replacing the parent's function with the one below - * - * @param array $parameters Hook metadatas (context, etc...) - * @param CommonObject $object The object to process (an invoice if you are in invoice module, a propale in propale's module, etc...) - * @param string $action Current action (if set). Generally create or edit or null - * @param HookManager $hookmanager Hook manager propagated to allow calling another hook - * @return int < 0 on error, 0 on success, 1 to replace standard code - */ - public function doActions($parameters, &$object, &$action, $hookmanager) - { - global $conf, $user, $langs; + /** + * Overloading the doActions function : replacing the parent's function with the one below + * + * @param array $parameters Hook metadatas (context, etc...) + * @param CommonObject $object The object to process (an invoice if you are in invoice module, a propale in propale's module, etc...) + * @param string $action Current action (if set). Generally create or edit or null + * @param HookManager $hookmanager Hook manager propagated to allow calling another hook + * @return int < 0 on error, 0 on success, 1 to replace standard code + */ + public function doActions($parameters, &$object, &$action, $hookmanager) + { + global $conf, $user, $langs; - $error = 0; // Error counter + $error = 0; // Error counter - /* print_r($parameters); print_r($object); echo "action: " . $action; */ - if (in_array($parameters['currentcontext'], array('somecontext1', 'somecontext2'))) // do something only for the context 'somecontext1' or 'somecontext2' - { - // Do what you want here... - // You can for example call global vars like $fieldstosearchall to overwrite them, or update database depending on $action and $_POST values. - } + /* print_r($parameters); print_r($object); echo "action: " . $action; */ + if (in_array($parameters['currentcontext'], array('somecontext1', 'somecontext2'))) // do something only for the context 'somecontext1' or 'somecontext2' + { + // Do what you want here... + // You can for example call global vars like $fieldstosearchall to overwrite them, or update database depending on $action and $_POST values. + } - if (!$error) { - $this->results = array('myreturn' => 999); - $this->resprints = 'A text to show'; - return 0; // or return 1 to replace standard code - } else { - $this->errors[] = 'Error message'; - return -1; - } - } + if (!$error) { + $this->results = array('myreturn' => 999); + $this->resprints = 'A text to show'; + return 0; // or return 1 to replace standard code + } else { + $this->errors[] = 'Error message'; + return -1; + } + } - /** - * Overloading the doMassActions function : replacing the parent's function with the one below - * - * @param array $parameters Hook metadatas (context, etc...) - * @param CommonObject $object The object to process (an invoice if you are in invoice module, a propale in propale's module, etc...) - * @param string $action Current action (if set). Generally create or edit or null - * @param HookManager $hookmanager Hook manager propagated to allow calling another hook - * @return int < 0 on error, 0 on success, 1 to replace standard code - */ - public function doMassActions($parameters, &$object, &$action, $hookmanager) - { - global $conf, $user, $langs; + /** + * Overloading the doMassActions function : replacing the parent's function with the one below + * + * @param array $parameters Hook metadatas (context, etc...) + * @param CommonObject $object The object to process (an invoice if you are in invoice module, a propale in propale's module, etc...) + * @param string $action Current action (if set). Generally create or edit or null + * @param HookManager $hookmanager Hook manager propagated to allow calling another hook + * @return int < 0 on error, 0 on success, 1 to replace standard code + */ + public function doMassActions($parameters, &$object, &$action, $hookmanager) + { + global $conf, $user, $langs; - $error = 0; // Error counter + $error = 0; // Error counter - /* print_r($parameters); print_r($object); echo "action: " . $action; */ - if (in_array($parameters['currentcontext'], array('somecontext1', 'somecontext2'))) // do something only for the context 'somecontext1' or 'somecontext2' - { - foreach ($parameters['toselect'] as $objectid) - { - // Do action on each object id - } - } + /* print_r($parameters); print_r($object); echo "action: " . $action; */ + if (in_array($parameters['currentcontext'], array('somecontext1', 'somecontext2'))) // do something only for the context 'somecontext1' or 'somecontext2' + { + foreach ($parameters['toselect'] as $objectid) + { + // Do action on each object id + } + } - if (!$error) { - $this->results = array('myreturn' => 999); - $this->resprints = 'A text to show'; - return 0; // or return 1 to replace standard code - } else { - $this->errors[] = 'Error message'; - return -1; - } - } + if (!$error) { + $this->results = array('myreturn' => 999); + $this->resprints = 'A text to show'; + return 0; // or return 1 to replace standard code + } else { + $this->errors[] = 'Error message'; + return -1; + } + } - /** - * Overloading the addMoreMassActions function : replacing the parent's function with the one below - * - * @param array $parameters Hook metadatas (context, etc...) - * @param CommonObject $object The object to process (an invoice if you are in invoice module, a propale in propale's module, etc...) - * @param string $action Current action (if set). Generally create or edit or null - * @param HookManager $hookmanager Hook manager propagated to allow calling another hook - * @return int < 0 on error, 0 on success, 1 to replace standard code - */ - public function addMoreMassActions($parameters, &$object, &$action, $hookmanager) - { - global $conf, $user, $langs; + /** + * Overloading the addMoreMassActions function : replacing the parent's function with the one below + * + * @param array $parameters Hook metadatas (context, etc...) + * @param CommonObject $object The object to process (an invoice if you are in invoice module, a propale in propale's module, etc...) + * @param string $action Current action (if set). Generally create or edit or null + * @param HookManager $hookmanager Hook manager propagated to allow calling another hook + * @return int < 0 on error, 0 on success, 1 to replace standard code + */ + public function addMoreMassActions($parameters, &$object, &$action, $hookmanager) + { + global $conf, $user, $langs; - $error = 0; // Error counter + $error = 0; // Error counter + $disabled = 1; - /* print_r($parameters); print_r($object); echo "action: " . $action; */ - if (in_array($parameters['currentcontext'], array('somecontext1', 'somecontext2'))) // do something only for the context 'somecontext1' or 'somecontext2' - { - $this->resprints = ''; - } + /* print_r($parameters); print_r($object); echo "action: " . $action; */ + if (in_array($parameters['currentcontext'], array('somecontext1', 'somecontext2'))) // do something only for the context 'somecontext1' or 'somecontext2' + { + $this->resprints = ''; + } - if (!$error) { - return 0; // or return 1 to replace standard code - } else { - $this->errors[] = 'Error message'; - return -1; - } - } + if (!$error) { + return 0; // or return 1 to replace standard code + } else { + $this->errors[] = 'Error message'; + return -1; + } + } - /** - * Execute action - * - * @param array $parameters Array of parameters - * @param Object $object Object output on PDF - * @param string $action 'add', 'update', 'view' - * @return int <0 if KO, - * =0 if OK but we want to process standard actions too, - * >0 if OK and we want to replace standard actions. - */ - public function beforePDFCreation($parameters, &$object, &$action) - { - global $conf, $user, $langs; - global $hookmanager; + /** + * Execute action + * + * @param array $parameters Array of parameters + * @param Object $object Object output on PDF + * @param string $action 'add', 'update', 'view' + * @return int <0 if KO, + * =0 if OK but we want to process standard actions too, + * >0 if OK and we want to replace standard actions. + */ + public function beforePDFCreation($parameters, &$object, &$action) + { + global $conf, $user, $langs; + global $hookmanager; - $outputlangs = $langs; + $outputlangs = $langs; - $ret = 0; $deltemp = array(); - dol_syslog(get_class($this).'::executeHooks action='.$action); + $ret = 0; $deltemp = array(); + dol_syslog(get_class($this).'::executeHooks action='.$action); - /* print_r($parameters); print_r($object); echo "action: " . $action; */ - if (in_array($parameters['currentcontext'], array('somecontext1', 'somecontext2'))) // do something only for the context 'somecontext1' or 'somecontext2' - { - } + /* print_r($parameters); print_r($object); echo "action: " . $action; */ + if (in_array($parameters['currentcontext'], array('somecontext1', 'somecontext2'))) // do something only for the context 'somecontext1' or 'somecontext2' + { + } - return $ret; - } + return $ret; + } - /** - * Execute action - * - * @param array $parameters Array of parameters - * @param Object $pdfhandler PDF builder handler - * @param string $action 'add', 'update', 'view' - * @return int <0 if KO, - * =0 if OK but we want to process standard actions too, - * >0 if OK and we want to replace standard actions. - */ - public function afterPDFCreation($parameters, &$pdfhandler, &$action) - { - global $conf, $user, $langs; - global $hookmanager; + /** + * Execute action + * + * @param array $parameters Array of parameters + * @param Object $pdfhandler PDF builder handler + * @param string $action 'add', 'update', 'view' + * @return int <0 if KO, + * =0 if OK but we want to process standard actions too, + * >0 if OK and we want to replace standard actions. + */ + public function afterPDFCreation($parameters, &$pdfhandler, &$action) + { + global $conf, $user, $langs; + global $hookmanager; - $outputlangs = $langs; + $outputlangs = $langs; - $ret = 0; $deltemp = array(); - dol_syslog(get_class($this).'::executeHooks action='.$action); + $ret = 0; $deltemp = array(); + dol_syslog(get_class($this).'::executeHooks action='.$action); - /* print_r($parameters); print_r($object); echo "action: " . $action; */ - if (in_array($parameters['currentcontext'], array('somecontext1', 'somecontext2'))) // do something only for the context 'somecontext1' or 'somecontext2' - { - } + /* print_r($parameters); print_r($object); echo "action: " . $action; */ + if (in_array($parameters['currentcontext'], array('somecontext1', 'somecontext2'))) { + // do something only for the context 'somecontext1' or 'somecontext2' + } - return $ret; - } + return $ret; + } - /** - * Overloading the loadDataForCustomReports function : returns data to complete the customreport tool - * - * @param array $parameters Hook metadatas (context, etc...) - * @param string $action Current action (if set). Generally create or edit or null - * @param HookManager $hookmanager Hook manager propagated to allow calling another hook - * @return int < 0 on error, 0 on success, 1 to replace standard code - */ - public function loadDataForCustomReports($parameters, &$action, $hookmanager) - { - global $conf, $user, $langs; + /** + * Overloading the loadDataForCustomReports function : returns data to complete the customreport tool + * + * @param array $parameters Hook metadatas (context, etc...) + * @param string $action Current action (if set). Generally create or edit or null + * @param HookManager $hookmanager Hook manager propagated to allow calling another hook + * @return int < 0 on error, 0 on success, 1 to replace standard code + */ + public function loadDataForCustomReports($parameters, &$action, $hookmanager) + { + global $conf, $user, $langs; - $langs->load("mymodule@mymodule"); + $langs->load("mymodule@mymodule"); - $this->results = array(); + $this->results = array(); - $head = array(); - $h = 0; + $head = array(); + $h = 0; - if ($parameters['tabfamily'] == 'mymodule') { - $head[$h][0] = dol_buildpath('/module/index.php', 1); - $head[$h][1] = $langs->trans("Home"); - $head[$h][2] = 'home'; - $h++; + if ($parameters['tabfamily'] == 'mymodule') { + $head[$h][0] = dol_buildpath('/module/index.php', 1); + $head[$h][1] = $langs->trans("Home"); + $head[$h][2] = 'home'; + $h++; - $this->results['title'] = $langs->trans("MyModule"); - $this->results['picto'] = 'mymodule@mymodule'; - } + $this->results['title'] = $langs->trans("MyModule"); + $this->results['picto'] = 'mymodule@mymodule'; + } - $head[$h][0] = 'customreports.php?objecttype='.$parameters['objecttype'].(empty($parameters['tabfamily']) ? '' : '&tabfamily='.$parameters['tabfamily']); - $head[$h][1] = $langs->trans("CustomReports"); - $head[$h][2] = 'customreports'; + $head[$h][0] = 'customreports.php?objecttype='.$parameters['objecttype'].(empty($parameters['tabfamily']) ? '' : '&tabfamily='.$parameters['tabfamily']); + $head[$h][1] = $langs->trans("CustomReports"); + $head[$h][2] = 'customreports'; - $this->results['head'] = $head; + $this->results['head'] = $head; - return 1; - } + return 1; + } - /** - * Overloading the restrictedArea function : check permission on an object - * - * @param array $parameters Hook metadatas (context, etc...) - * @param string $action Current action (if set). Generally create or edit or null - * @param HookManager $hookmanager Hook manager propagated to allow calling another hook - * @return int <0 if KO, - * =0 if OK but we want to process standard actions too, - * >0 if OK and we want to replace standard actions. - */ - public function restrictedArea($parameters, &$action, $hookmanager) - { - global $user; + /** + * Overloading the restrictedArea function : check permission on an object + * + * @param array $parameters Hook metadatas (context, etc...) + * @param string $action Current action (if set). Generally create or edit or null + * @param HookManager $hookmanager Hook manager propagated to allow calling another hook + * @return int <0 if KO, + * =0 if OK but we want to process standard actions too, + * >0 if OK and we want to replace standard actions. + */ + public function restrictedArea($parameters, &$action, $hookmanager) + { + global $user; - if ($parameters['features'] == 'myobject') { - if ($user->rights->mymodule->myobject->read) { - $this->results['result'] = 1; - return 1; - } else { - $this->results['result'] = 0; - return 1; - } - } + if ($parameters['features'] == 'myobject') { + if ($user->rights->mymodule->myobject->read) { + $this->results['result'] = 1; + return 1; + } else { + $this->results['result'] = 0; + return 1; + } + } - return 0; - } + return 0; + } - /* Add here any other hooked methods... */ + /* Add here any other hooked methods... */ } diff --git a/htdocs/modulebuilder/template/class/api_mymodule.class.php b/htdocs/modulebuilder/template/class/api_mymodule.class.php index 8477e3efdf6..65998ed4390 100644 --- a/htdocs/modulebuilder/template/class/api_mymodule.class.php +++ b/htdocs/modulebuilder/template/class/api_mymodule.class.php @@ -36,338 +36,336 @@ dol_include_once('/mymodule/class/myobject.class.php'); */ class MyModuleApi extends DolibarrApi { - /** - * @var MyObject $myobject {@type MyObject} - */ - public $myobject; + /** + * @var MyObject $myobject {@type MyObject} + */ + public $myobject; - /** - * Constructor - * - * @url GET / - * - */ - public function __construct() - { - global $db, $conf; - $this->db = $db; - $this->myobject = new MyObject($this->db); - } + /** + * Constructor + * + * @url GET / + * + */ + public function __construct() + { + global $db, $conf; + $this->db = $db; + $this->myobject = new MyObject($this->db); + } - /** - * Get properties of a myobject object - * - * Return an array with myobject informations - * - * @param int $id ID of myobject - * @return array|mixed data without useless information - * - * @url GET myobjects/{id} - * - * @throws RestException - */ - public function get($id) - { - if (!DolibarrApiAccess::$user->rights->mymodule->read) { - throw new RestException(401); - } + /** + * Get properties of a myobject object + * + * Return an array with myobject informations + * + * @param int $id ID of myobject + * @return array|mixed data without useless information + * + * @url GET myobjects/{id} + * + * @throws RestException + */ + public function get($id) + { + if (!DolibarrApiAccess::$user->rights->mymodule->read) { + throw new RestException(401); + } - $result = $this->myobject->fetch($id); - if (!$result) { - throw new RestException(404, 'MyObject not found'); - } + $result = $this->myobject->fetch($id); + if (!$result) { + throw new RestException(404, 'MyObject not found'); + } - if (!DolibarrApi::_checkAccessToResource('myobject', $this->myobject->id, 'mymodule_myobject')) { - throw new RestException(401, 'Access to instance id='.$this->myobject->id.' of object not allowed for login '.DolibarrApiAccess::$user->login); - } + if (!DolibarrApi::_checkAccessToResource('myobject', $this->myobject->id, 'mymodule_myobject')) { + throw new RestException(401, 'Access to instance id='.$this->myobject->id.' of object not allowed for login '.DolibarrApiAccess::$user->login); + } - return $this->_cleanObjectDatas($this->myobject); - } + return $this->_cleanObjectDatas($this->myobject); + } - /** - * List myobjects - * - * Get a list of myobjects - * - * @param string $sortfield Sort field - * @param string $sortorder Sort order - * @param int $limit Limit for list - * @param int $page Page number - * @param string $sqlfilters Other criteria to filter answers separated by a comma. Syntax example "(t.ref:like:'SO-%') and (t.date_creation:<:'20160101')" - * @return array Array of order objects - * - * @throws RestException - * - * @url GET /myobjects/ - */ - public function index($sortfield = "t.rowid", $sortorder = 'ASC', $limit = 100, $page = 0, $sqlfilters = '') - { - global $db, $conf; + /** + * List myobjects + * + * Get a list of myobjects + * + * @param string $sortfield Sort field + * @param string $sortorder Sort order + * @param int $limit Limit for list + * @param int $page Page number + * @param string $sqlfilters Other criteria to filter answers separated by a comma. Syntax example "(t.ref:like:'SO-%') and (t.date_creation:<:'20160101')" + * @return array Array of order objects + * + * @throws RestException + * + * @url GET /myobjects/ + */ + public function index($sortfield = "t.rowid", $sortorder = 'ASC', $limit = 100, $page = 0, $sqlfilters = '') + { + global $db, $conf; - $obj_ret = array(); - $tmpobject = new MyObject($db); + $obj_ret = array(); + $tmpobject = new MyObject($db); - if (!DolibarrApiAccess::$user->rights->bbb->read) { - throw new RestException(401); - } + if (!DolibarrApiAccess::$user->rights->bbb->read) { + throw new RestException(401); + } - $socid = DolibarrApiAccess::$user->socid ? DolibarrApiAccess::$user->socid : ''; + $socid = DolibarrApiAccess::$user->socid ? DolibarrApiAccess::$user->socid : ''; - $restrictonsocid = 0; // Set to 1 if there is a field socid in table of object + $restrictonsocid = 0; // Set to 1 if there is a field socid in table of object - // If the internal user must only see his customers, force searching by him - $search_sale = 0; - if ($restrictonsocid && !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 ($restrictonsocid && !DolibarrApiAccess::$user->rights->societe->client->voir && !$socid) $search_sale = DolibarrApiAccess::$user->id; - $sql = "SELECT t.rowid"; - if ($restrictonsocid && (!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.$tmpobject->table_element." as t"; + $sql = "SELECT t.rowid"; + if ($restrictonsocid && (!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.$tmpobject->table_element." as t"; - if ($restrictonsocid && (!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 - $sql .= " WHERE 1 = 1"; + if ($restrictonsocid && (!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 + $sql .= " WHERE 1 = 1"; - // Example of use $mode - //if ($mode == 1) $sql.= " AND s.client IN (1, 3)"; - //if ($mode == 2) $sql.= " AND s.client IN (2, 3)"; + // Example of use $mode + //if ($mode == 1) $sql.= " AND s.client IN (1, 3)"; + //if ($mode == 2) $sql.= " AND s.client IN (2, 3)"; - if ($tmpobject->ismultientitymanaged) $sql .= ' AND t.entity IN ('.getEntity('myobject').')'; - if ($restrictonsocid && (!DolibarrApiAccess::$user->rights->societe->client->voir && !$socid) || $search_sale > 0) $sql .= " AND t.fk_soc = sc.fk_soc"; - if ($restrictonsocid && $socid) $sql .= " AND t.fk_soc = ".$socid; - if ($restrictonsocid && $search_sale > 0) $sql .= " AND t.rowid = sc.fk_soc"; // Join for the needed table to filter by sale - // Insert sale filter - if ($restrictonsocid && $search_sale > 0) { - $sql .= " AND sc.fk_user = ".$search_sale; - } - 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).")"; - } + if ($tmpobject->ismultientitymanaged) $sql .= ' AND t.entity IN ('.getEntity('myobject').')'; + if ($restrictonsocid && (!DolibarrApiAccess::$user->rights->societe->client->voir && !$socid) || $search_sale > 0) $sql .= " AND t.fk_soc = sc.fk_soc"; + if ($restrictonsocid && $socid) $sql .= " AND t.fk_soc = ".$socid; + if ($restrictonsocid && $search_sale > 0) $sql .= " AND t.rowid = sc.fk_soc"; // Join for the needed table to filter by sale + // Insert sale filter + if ($restrictonsocid && $search_sale > 0) { + $sql .= " AND sc.fk_user = ".$search_sale; + } + 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) - { - $num = $db->num_rows($result); - while ($i < $num) - { - $obj = $db->fetch_object($result); - $myobject_static = new MyObject($db); - if ($myobject_static->fetch($obj->rowid)) { - $obj_ret[] = $this->_cleanObjectDatas($myobject_static); - } - $i++; - } - } - else { - throw new RestException(503, 'Error when retrieving myobject list: '.$db->lasterror()); - } - if (!count($obj_ret)) { - throw new RestException(404, 'No myobject found'); - } - return $obj_ret; - } + $result = $db->query($sql); + $i = 0; + if ($result) + { + $num = $db->num_rows($result); + while ($i < $num) + { + $obj = $db->fetch_object($result); + $myobject_static = new MyObject($db); + if ($myobject_static->fetch($obj->rowid)) { + $obj_ret[] = $this->_cleanObjectDatas($myobject_static); + } + $i++; + } + } else { + throw new RestException(503, 'Error when retrieving myobject list: '.$db->lasterror()); + } + if (!count($obj_ret)) { + throw new RestException(404, 'No myobject found'); + } + return $obj_ret; + } - /** - * Create myobject object - * - * @param array $request_data Request datas - * @return int ID of myobject - * - * @throws RestException - * - * @url POST myobjects/ - */ - public function post($request_data = null) - { - if (!DolibarrApiAccess::$user->rights->mymodule->write) { - throw new RestException(401); - } - // Check mandatory fields - $result = $this->_validate($request_data); + /** + * Create myobject object + * + * @param array $request_data Request datas + * @return int ID of myobject + * + * @throws RestException + * + * @url POST myobjects/ + */ + public function post($request_data = null) + { + if (!DolibarrApiAccess::$user->rights->mymodule->write) { + throw new RestException(401); + } + // Check mandatory fields + $result = $this->_validate($request_data); - foreach ($request_data as $field => $value) { - $this->myobject->$field = $value; - } - if (!$this->myobject->create(DolibarrApiAccess::$user)) { - throw new RestException(500, "Error creating MyObject", array_merge(array($this->myobject->error), $this->myobject->errors)); - } - return $this->myobject->id; - } + foreach ($request_data as $field => $value) { + $this->myobject->$field = $value; + } + if (!$this->myobject->create(DolibarrApiAccess::$user)) { + throw new RestException(500, "Error creating MyObject", array_merge(array($this->myobject->error), $this->myobject->errors)); + } + return $this->myobject->id; + } - /** - * Update myobject - * - * @param int $id Id of myobject to update - * @param array $request_data Datas - * @return int - * - * @throws RestException - * - * @url PUT myobjects/{id} - */ - public function put($id, $request_data = null) - { - if (!DolibarrApiAccess::$user->rights->mymodule->write) { - throw new RestException(401); - } + /** + * Update myobject + * + * @param int $id Id of myobject to update + * @param array $request_data Datas + * @return int + * + * @throws RestException + * + * @url PUT myobjects/{id} + */ + public function put($id, $request_data = null) + { + if (!DolibarrApiAccess::$user->rights->mymodule->write) { + throw new RestException(401); + } - $result = $this->myobject->fetch($id); - if (!$result) { - throw new RestException(404, 'MyObject not found'); - } + $result = $this->myobject->fetch($id); + if (!$result) { + throw new RestException(404, 'MyObject not found'); + } - if (!DolibarrApi::_checkAccessToResource('myobject', $this->myobject->id, 'mymodule_myobject')) { - throw new RestException(401, 'Access to instance id='.$this->myobject->id.' of object not allowed for login '.DolibarrApiAccess::$user->login); - } + if (!DolibarrApi::_checkAccessToResource('myobject', $this->myobject->id, 'mymodule_myobject')) { + throw new RestException(401, 'Access to instance id='.$this->myobject->id.' of object not allowed for login '.DolibarrApiAccess::$user->login); + } - foreach ($request_data as $field => $value) { - if ($field == 'id') continue; - $this->myobject->$field = $value; - } + foreach ($request_data as $field => $value) { + if ($field == 'id') continue; + $this->myobject->$field = $value; + } - if ($this->myobject->update($id, DolibarrApiAccess::$user) > 0) - { - return $this->get($id); - } - else - { - throw new RestException(500, $this->myobject->error); - } - } + if ($this->myobject->update(DolibarrApiAccess::$user, false) > 0) + { + return $this->get($id); + } else { + throw new RestException(500, $this->myobject->error); + } + } - /** - * Delete myobject - * - * @param int $id MyObject ID - * @return array - * - * @throws RestException - * - * @url DELETE myobjects/{id} - */ - public function delete($id) - { - if (!DolibarrApiAccess::$user->rights->mymodule->delete) { - throw new RestException(401); - } - $result = $this->myobject->fetch($id); - if (!$result) { - throw new RestException(404, 'MyObject not found'); - } + /** + * Delete myobject + * + * @param int $id MyObject ID + * @return array + * + * @throws RestException + * + * @url DELETE myobjects/{id} + */ + public function delete($id) + { + if (!DolibarrApiAccess::$user->rights->mymodule->delete) { + throw new RestException(401); + } + $result = $this->myobject->fetch($id); + if (!$result) { + throw new RestException(404, 'MyObject not found'); + } - if (!DolibarrApi::_checkAccessToResource('myobject', $this->myobject->id, 'mymodule_myobject')) { - throw new RestException(401, 'Access to instance id='.$this->myobject->id.' of object not allowed for login '.DolibarrApiAccess::$user->login); - } + if (!DolibarrApi::_checkAccessToResource('myobject', $this->myobject->id, 'mymodule_myobject')) { + throw new RestException(401, 'Access to instance id='.$this->myobject->id.' of object not allowed for login '.DolibarrApiAccess::$user->login); + } - if (!$this->myobject->delete(DolibarrApiAccess::$user)) - { - throw new RestException(500, 'Error when deleting MyObject : '.$this->myobject->error); - } + if (!$this->myobject->delete(DolibarrApiAccess::$user)) + { + throw new RestException(500, 'Error when deleting MyObject : '.$this->myobject->error); + } - return array( - 'success' => array( - 'code' => 200, - 'message' => 'MyObject deleted' - ) - ); - } + return array( + 'success' => array( + 'code' => 200, + 'message' => 'MyObject deleted' + ) + ); + } - // 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->canvas); + unset($object->rowid); + unset($object->canvas); - /*unset($object->name); - unset($object->lastname); - unset($object->firstname); - unset($object->civility_id); - unset($object->statut); - unset($object->state); - unset($object->state_id); - unset($object->state_code); - unset($object->region); - unset($object->region_code); - unset($object->country); - unset($object->country_id); - unset($object->country_code); - unset($object->barcode_type); - unset($object->barcode_type_code); - unset($object->barcode_type_label); - unset($object->barcode_type_coder); - unset($object->total_ht); - unset($object->total_tva); - unset($object->total_localtax1); - unset($object->total_localtax2); - unset($object->total_ttc); - unset($object->fk_account); - unset($object->comments); - unset($object->note); - unset($object->mode_reglement_id); - unset($object->cond_reglement_id); - unset($object->cond_reglement); - unset($object->shipping_method_id); - unset($object->fk_incoterms); - unset($object->label_incoterms); - unset($object->location_incoterms); + /*unset($object->name); + unset($object->lastname); + unset($object->firstname); + unset($object->civility_id); + unset($object->statut); + unset($object->state); + unset($object->state_id); + unset($object->state_code); + unset($object->region); + unset($object->region_code); + unset($object->country); + unset($object->country_id); + unset($object->country_code); + unset($object->barcode_type); + unset($object->barcode_type_code); + unset($object->barcode_type_label); + unset($object->barcode_type_coder); + unset($object->total_ht); + unset($object->total_tva); + unset($object->total_localtax1); + unset($object->total_localtax2); + unset($object->total_ttc); + unset($object->fk_account); + unset($object->comments); + unset($object->note); + unset($object->mode_reglement_id); + unset($object->cond_reglement_id); + unset($object->cond_reglement); + unset($object->shipping_method_id); + unset($object->fk_incoterms); + unset($object->label_incoterms); + unset($object->location_incoterms); */ - // If object has lines, remove $db property - if (isset($object->lines) && is_array($object->lines) && count($object->lines) > 0) { - $nboflines = count($object->lines); - for ($i = 0; $i < $nboflines; $i++) - { - $this->_cleanObjectDatas($object->lines[$i]); + // If object has lines, remove $db property + if (isset($object->lines) && is_array($object->lines) && count($object->lines) > 0) { + $nboflines = count($object->lines); + for ($i = 0; $i < $nboflines; $i++) + { + $this->_cleanObjectDatas($object->lines[$i]); - unset($object->lines[$i]->lines); - unset($object->lines[$i]->note); - } - } + unset($object->lines[$i]->lines); + unset($object->lines[$i]->note); + } + } - return $object; - } + return $object; + } - /** - * Validate fields before create or update object - * - * @param array $data Array of data to validate - * @return array - * - * @throws RestException - */ - private function _validate($data) - { - $myobject = array(); - foreach ($this->myobject->fields as $field => $propfield) { - if (in_array($field, array('rowid', 'entity', 'date_creation', 'tms', 'fk_user_creat')) || $propfield['notnull'] != 1) continue; // Not a mandatory field - if (!isset($data[$field])) - throw new RestException(400, "$field field missing"); - $myobject[$field] = $data[$field]; - } - return $myobject; - } + /** + * Validate fields before create or update object + * + * @param array $data Array of data to validate + * @return array + * + * @throws RestException + */ + private function _validate($data) + { + $myobject = array(); + foreach ($this->myobject->fields as $field => $propfield) { + if (in_array($field, array('rowid', 'entity', 'date_creation', 'tms', 'fk_user_creat')) || $propfield['notnull'] != 1) continue; // Not a mandatory field + if (!isset($data[$field])) + throw new RestException(400, "$field field missing"); + $myobject[$field] = $data[$field]; + } + return $myobject; + } } diff --git a/htdocs/modulebuilder/template/class/myobject.class.php b/htdocs/modulebuilder/template/class/myobject.class.php index 656483d8f18..20a157d7c24 100644 --- a/htdocs/modulebuilder/template/class/myobject.class.php +++ b/htdocs/modulebuilder/template/class/myobject.class.php @@ -83,6 +83,7 @@ class MyObject extends CommonObject * 'showoncombobox' if value of the field must be visible into the label of the combobox that list record * 'disabled' is 1 if we want to have the field locked by a 'disabled' attribute. In most cases, this is never set into the definition of $fields into class, but is set dynamically by some part of code. * 'arraykeyval' to set list of value if type is a list of predefined values. For example: array("0"=>"Draft","1"=>"Active","-1"=>"Cancel") + * 'autofocusoncreate' to have field having the focus on a create form. Only 1 field should have this property set to 1. * 'comment' is not used. You can store here any text of your choice. It is not used by application. * * Note: To have value dynamic, you can set value to 0 in definition and edit the value on the fly into the constructor. @@ -90,16 +91,16 @@ class MyObject extends CommonObject // BEGIN MODULEBUILDER PROPERTIES /** - * @var array Array with all fields and their property. Do not use it as a static var. It may be modified by constructor. - */ + * @var array Array with all fields and their property. Do not use it as a static var. It may be modified by constructor. + */ public $fields = array( - 'rowid' => array('type'=>'integer', 'label'=>'TechnicalID', 'enabled'=>1, 'visible'=>-2, 'noteditable'=>1, 'notnull'=> 1, 'index'=>1, 'position'=>1, 'comment'=>'Id'), + 'rowid' => array('type'=>'integer', 'label'=>'TechnicalID', 'enabled'=>1, 'visible'=>-2, 'noteditable'=>1, 'notnull'=> 1, 'index'=>1, 'position'=>1, 'comment'=>'Id'), 'ref' => array('type'=>'varchar(128)', 'label'=>'Ref', 'enabled'=>1, 'visible'=>1, 'noteditable'=>0, 'default'=>'', 'notnull'=> 1, 'showoncombobox'=>1, 'index'=>1, 'position'=>10, 'searchall'=>1, 'comment'=>'Reference of object'), - 'entity' => array('type'=>'integer', 'label'=>'Entity', 'enabled'=>1, 'visible'=>0, 'notnull'=> 1, 'default'=>1, 'index'=>1, 'position'=>20), - 'label' => array('type'=>'varchar(255)', 'label'=>'Label', 'enabled'=>1, 'visible'=>1, 'position'=>30, 'searchall'=>1, 'css'=>'minwidth200', 'help'=>'Help text', 'showoncombobox'=>1), - 'amount' => array('type'=>'price', 'label'=>'Amount', 'enabled'=>1, 'visible'=>1, 'default'=>'null', 'position'=>40, 'searchall'=>0, 'isameasure'=>1, 'help'=>'Help text for amount'), - 'qty' => array('type'=>'real', 'label'=>'Qty', 'enabled'=>1, 'visible'=>1, 'default'=>'0', 'position'=>45, 'searchall'=>0, 'isameasure'=>1, 'help'=>'Help text for quantity', 'css'=>'maxwidth75imp'), - 'fk_soc' => array('type'=>'integer:Societe:societe/class/societe.class.php:1:status=1 AND entity IN (__SHARED_ENTITIES__)', 'label'=>'ThirdParty', 'visible'=> 1, 'enabled'=>1, 'position'=>50, 'notnull'=>-1, 'index'=>1, 'help'=>'LinkToThirparty'), + 'entity' => array('type'=>'integer', 'label'=>'Entity', 'enabled'=>1, 'visible'=>0, 'notnull'=> 1, 'default'=>1, 'index'=>1, 'position'=>20), + 'label' => array('type'=>'varchar(255)', 'label'=>'Label', 'enabled'=>1, 'visible'=>1, 'position'=>30, 'searchall'=>1, 'css'=>'minwidth200', 'help'=>'Help text', 'showoncombobox'=>1), + 'amount' => array('type'=>'price', 'label'=>'Amount', 'enabled'=>1, 'visible'=>1, 'default'=>'null', 'position'=>40, 'searchall'=>0, 'isameasure'=>1, 'help'=>'Help text for amount'), + 'qty' => array('type'=>'real', 'label'=>'Qty', 'enabled'=>1, 'visible'=>1, 'default'=>'0', 'position'=>45, 'searchall'=>0, 'isameasure'=>1, 'help'=>'Help text for quantity', 'css'=>'maxwidth75imp'), + 'fk_soc' => array('type'=>'integer:Societe:societe/class/societe.class.php:1:status=1 AND entity IN (__SHARED_ENTITIES__)', 'label'=>'ThirdParty', 'visible'=> 1, 'enabled'=>1, 'position'=>50, 'notnull'=>-1, 'index'=>1, 'help'=>'LinkToThirparty'), 'fk_project' => array('type'=>'integer:Project:projet/class/project.class.php:1', 'label'=>'Project', 'enabled'=>1, 'visible'=>-1, 'position'=>52, 'notnull'=>-1, 'index'=>1), 'description' => array('type'=>'text', 'label'=>'Description', 'enabled'=>1, 'visible'=>3, 'position'=>60), 'note_public' => array('type'=>'html', 'label'=>'NotePublic', 'enabled'=>1, 'visible'=>0, 'position'=>61), @@ -112,7 +113,7 @@ class MyObject extends CommonObject //'fk_user_valid' => array('type'=>'integer:User:user/class/user.class.php', 'label'=>'UserValidation', 'enabled'=>1, 'visible'=>-1, 'position'=>512), 'import_key' => array('type'=>'varchar(14)', 'label'=>'ImportId', 'enabled'=>1, 'visible'=>-2, 'notnull'=>-1, 'index'=>0, 'position'=>1000), 'model_pdf' => array('type'=>'varchar(255)', 'label'=>'Model pdf', 'enabled'=>1, 'visible'=>0, 'notnull'=>-1, 'position'=>1010), - 'status' => array('type'=>'smallint', 'label'=>'Status', 'enabled'=>1, 'visible'=>1, 'notnull'=> 1, 'default'=>0, 'index'=>1, 'position'=>1000, 'arrayofkeyval'=>array(0=>'Draft', 1=>'Validated', 9=>'Canceled')), + 'status' => array('type'=>'smallint', 'label'=>'Status', 'enabled'=>1, 'visible'=>1, 'notnull'=> 1, 'default'=>0, 'index'=>1, 'position'=>1000, 'arrayofkeyval'=>array(0=>'Draft', 1=>'Validated', 9=>'Canceled')), ); /** @@ -131,13 +132,13 @@ class MyObject extends CommonObject public $entity; /** - * @var string label - */ - public $label; + * @var string label + */ + public $label; - /** - * @var string amount - */ + /** + * @var string amount + */ public $amount; /** @@ -146,28 +147,28 @@ class MyObject extends CommonObject public $status; /** - * @var integer|string date_creation - */ + * @var integer|string date_creation + */ public $date_creation; /** - * @var integer tms - */ + * @var integer tms + */ public $tms; /** - * @var int ID - */ + * @var int ID + */ public $fk_user_creat; /** - * @var int ID - */ + * @var int ID + */ public $fk_user_modif; /** - * @var string import_key - */ + * @var string import_key + */ public $import_key; // END MODULEBUILDER PROPERTIES @@ -273,86 +274,86 @@ class MyObject extends CommonObject public function createFromClone(User $user, $fromid) { global $langs, $extrafields; - $error = 0; + $error = 0; - dol_syslog(__METHOD__, LOG_DEBUG); + dol_syslog(__METHOD__, LOG_DEBUG); - $object = new self($this->db); + $object = new self($this->db); - $this->db->begin(); + $this->db->begin(); - // Load source object - $result = $object->fetchCommon($fromid); - if ($result > 0 && !empty($object->table_element_line)) $object->fetchLines(); + // Load source object + $result = $object->fetchCommon($fromid); + if ($result > 0 && !empty($object->table_element_line)) $object->fetchLines(); - // get lines so they will be clone - //foreach($this->lines as $line) - // $line->fetch_optionals(); + // get lines so they will be clone + //foreach($this->lines as $line) + // $line->fetch_optionals(); - // Reset some properties - unset($object->id); - unset($object->fk_user_creat); - unset($object->import_key); + // Reset some properties + unset($object->id); + unset($object->fk_user_creat); + unset($object->import_key); - // Clear fields - $object->ref = empty($this->fields['ref']['default']) ? "copy_of_".$object->ref : $this->fields['ref']['default']; - $object->label = empty($this->fields['label']['default']) ? $langs->trans("CopyOf")." ".$object->label : $this->fields['label']['default']; - $object->status = self::STATUS_DRAFT; - // ... - // Clear extrafields that are unique - if (is_array($object->array_options) && count($object->array_options) > 0) - { - $extrafields->fetch_name_optionals_label($this->table_element); - foreach ($object->array_options as $key => $option) - { - $shortkey = preg_replace('/options_/', '', $key); - if (!empty($extrafields->attributes[$this->element]['unique'][$shortkey])) - { - //var_dump($key); var_dump($clonedObj->array_options[$key]); exit; - unset($object->array_options[$key]); - } - } - } + // Clear fields + $object->ref = empty($this->fields['ref']['default']) ? "copy_of_".$object->ref : $this->fields['ref']['default']; + $object->label = empty($this->fields['label']['default']) ? $langs->trans("CopyOf")." ".$object->label : $this->fields['label']['default']; + $object->status = self::STATUS_DRAFT; + // ... + // Clear extrafields that are unique + if (is_array($object->array_options) && count($object->array_options) > 0) + { + $extrafields->fetch_name_optionals_label($this->table_element); + foreach ($object->array_options as $key => $option) + { + $shortkey = preg_replace('/options_/', '', $key); + if (!empty($extrafields->attributes[$this->element]['unique'][$shortkey])) + { + //var_dump($key); var_dump($clonedObj->array_options[$key]); exit; + unset($object->array_options[$key]); + } + } + } - // Create clone + // Create clone $object->context['createfromclone'] = 'createfromclone'; - $result = $object->createCommon($user); - if ($result < 0) { - $error++; - $this->error = $object->error; - $this->errors = $object->errors; - } + $result = $object->createCommon($user); + if ($result < 0) { + $error++; + $this->error = $object->error; + $this->errors = $object->errors; + } - if (!$error) - { - // copy internal contacts - if ($this->copy_linked_contact($object, 'internal') < 0) - { - $error++; - } - } + if (!$error) + { + // copy internal contacts + if ($this->copy_linked_contact($object, 'internal') < 0) + { + $error++; + } + } - if (!$error) - { - // copy external contacts if same company - if (property_exists($this, 'socid') && $this->socid == $object->socid) - { - if ($this->copy_linked_contact($object, 'external') < 0) - $error++; - } - } + if (!$error) + { + // copy external contacts if same company + if (property_exists($this, 'socid') && $this->socid == $object->socid) + { + if ($this->copy_linked_contact($object, 'external') < 0) + $error++; + } + } - unset($object->context['createfromclone']); + unset($object->context['createfromclone']); - // End - if (!$error) { - $this->db->commit(); - return $object; - } else { - $this->db->rollback(); - return -1; - } + // End + if (!$error) { + $this->db->commit(); + return $object; + } else { + $this->db->rollback(); + return -1; + } } /** @@ -413,14 +414,11 @@ class MyObject extends CommonObject foreach ($filter as $key => $value) { if ($key == 't.rowid') { $sqlwhere[] = $key.'='.$value; - } - elseif (strpos($key, 'date') !== false) { + } elseif (strpos($key, 'date') !== false) { $sqlwhere[] = $key.' = \''.$this->db->idate($value).'\''; - } - elseif ($key == 'customsql') { + } elseif ($key == 'customsql') { $sqlwhere[] = $value; - } - else { + } else { $sqlwhere[] = $key.' LIKE \'%'.$this->db->escape($value).'%\''; } } @@ -439,10 +437,10 @@ class MyObject extends CommonObject $resql = $this->db->query($sql); if ($resql) { $num = $this->db->num_rows($resql); - $i = 0; - while ($i < min($limit, $num)) + $i = 0; + while ($i < ($limit ? min($limit, $num) : $num)) { - $obj = $this->db->fetch_object($resql); + $obj = $this->db->fetch_object($resql); $record = new self($this->db); $record->setVarsFromFetchObj($obj); @@ -545,9 +543,7 @@ class MyObject extends CommonObject if (!$error && (preg_match('/^[\(]?PROV/i', $this->ref) || empty($this->ref))) // empty should not happened, but when it occurs, the test save life { $num = $this->getNextNumRef(); - } - else - { + } else { $num = $this->ref; } $this->newref = $num; @@ -630,9 +626,7 @@ class MyObject extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -714,53 +708,52 @@ class MyObject extends CommonObject return $this->setStatusCommon($user, self::STATUS_VALIDATED, $notrigger, 'MYOBJECT_REOPEN'); } - /** - * Return a link to the object card (with optionaly the picto) - * - * @param int $withpicto Include picto in link (0=No picto, 1=Include picto into link, 2=Only picto) - * @param string $option On what the link point to ('nolink', ...) - * @param int $notooltip 1=Disable tooltip - * @param string $morecss Add more css on link - * @param int $save_lastsearch_value -1=Auto, 0=No save of lastsearch_values when clicking, 1=Save lastsearch_values whenclicking - * @return string String with URL - */ - public function getNomUrl($withpicto = 0, $option = '', $notooltip = 0, $morecss = '', $save_lastsearch_value = -1) - { - global $conf, $langs, $hookmanager; + /** + * Return a link to the object card (with optionaly the picto) + * + * @param int $withpicto Include picto in link (0=No picto, 1=Include picto into link, 2=Only picto) + * @param string $option On what the link point to ('nolink', ...) + * @param int $notooltip 1=Disable tooltip + * @param string $morecss Add more css on link + * @param int $save_lastsearch_value -1=Auto, 0=No save of lastsearch_values when clicking, 1=Save lastsearch_values whenclicking + * @return string String with URL + */ + public function getNomUrl($withpicto = 0, $option = '', $notooltip = 0, $morecss = '', $save_lastsearch_value = -1) + { + global $conf, $langs, $hookmanager; - if (!empty($conf->dol_no_mouse_hover)) $notooltip = 1; // Force disable tooltips + if (!empty($conf->dol_no_mouse_hover)) $notooltip = 1; // Force disable tooltips - $result = ''; + $result = ''; - $label = ''.$langs->trans("MyObject").''; - $label .= '
    '; - $label .= ''.$langs->trans('Ref').': '.$this->ref; - if (isset($this->status)) { - $label .= '
    '.$langs->trans("Status").": ".$this->getLibStatut(5); - } + $label = ''.$langs->trans("MyObject").''; + $label .= '
    '; + $label .= ''.$langs->trans('Ref').': '.$this->ref; + if (isset($this->status)) { + $label .= '
    '.$langs->trans("Status").": ".$this->getLibStatut(5); + } - $url = dol_buildpath('/mymodule/myobject_card.php', 1).'?id='.$this->id; + $url = dol_buildpath('/mymodule/myobject_card.php', 1).'?id='.$this->id; - if ($option != 'nolink') - { - // Add param to save lastsearch_values or not - $add_save_lastsearch_values = ($save_lastsearch_value == 1 ? 1 : 0); - if ($save_lastsearch_value == -1 && preg_match('/list\.php/', $_SERVER["PHP_SELF"])) $add_save_lastsearch_values = 1; - if ($add_save_lastsearch_values) $url .= '&save_lastsearch_values=1'; - } + if ($option != 'nolink') + { + // Add param to save lastsearch_values or not + $add_save_lastsearch_values = ($save_lastsearch_value == 1 ? 1 : 0); + if ($save_lastsearch_value == -1 && preg_match('/list\.php/', $_SERVER["PHP_SELF"])) $add_save_lastsearch_values = 1; + if ($add_save_lastsearch_values) $url .= '&save_lastsearch_values=1'; + } - $linkclose = ''; - if (empty($notooltip)) - { - if (!empty($conf->global->MAIN_OPTIMIZEFORTEXTBROWSER)) - { - $label = $langs->trans("ShowMyObject"); - $linkclose .= ' alt="'.dol_escape_htmltag($label, 1).'"'; - } - $linkclose .= ' title="'.dol_escape_htmltag($label, 1).'"'; - $linkclose .= ' class="classfortooltip'.($morecss ? ' '.$morecss : '').'"'; - } - else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); + $linkclose = ''; + if (empty($notooltip)) + { + if (!empty($conf->global->MAIN_OPTIMIZEFORTEXTBROWSER)) + { + $label = $langs->trans("ShowMyObject"); + $linkclose .= ' alt="'.dol_escape_htmltag($label, 1).'"'; + } + $linkclose .= ' title="'.dol_escape_htmltag($label, 1).'"'; + $linkclose .= ' class="classfortooltip'.($morecss ? ' '.$morecss : '').'"'; + } else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); $linkstart = ''; @@ -784,14 +777,12 @@ class MyObject extends CommonObject $pathtophoto = $class.'/'.$this->ref.'/thumbs/'.substr($filename, 0, $pospoint).'_mini'.substr($filename, $pospoint); if (empty($conf->global->{strtoupper($module.'_'.$class).'_FORMATLISTPHOTOSASUSERS'})) { $result .= '
    No photo
    '; - } - else { + } else { $result .= '
    No photo
    '; } $result .= ''; - } - else { + } else { $result .= img_object(($notooltip ? '' : $label), ($this->picto ? $this->picto : 'generic'), ($notooltip ? (($withpicto != 2) ? 'class="paddingright"' : '') : 'class="'.(($withpicto != 2) ? 'paddingright ' : '').'classfortooltip"'), 0, 0, $notooltip ? 0 : 1); } } @@ -810,7 +801,7 @@ class MyObject extends CommonObject else $result .= $hookmanager->resPrint; return $result; - } + } /** * Return label of the status @@ -823,7 +814,7 @@ class MyObject extends CommonObject return $this->LibStatut($this->status, $mode); } - // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps /** * Return the status * @@ -899,9 +890,7 @@ class MyObject extends CommonObject } $this->db->free($result); - } - else - { + } else { dol_print_error($this->db); } } @@ -924,22 +913,20 @@ class MyObject extends CommonObject */ public function getLinesArray() { - $this->lines = array(); + $this->lines = array(); - $objectline = new MyObjectLine($this->db); - $result = $objectline->fetchAll('ASC', 'position', 0, 0, array('customsql'=>'fk_myobject = '.$this->id)); + $objectline = new MyObjectLine($this->db); + $result = $objectline->fetchAll('ASC', 'position', 0, 0, array('customsql'=>'fk_myobject = '.$this->id)); - if (is_numeric($result)) - { - $this->error = $this->error; - $this->errors = $this->errors; - return $result; - } - else - { - $this->lines = $result; - return $this->lines; - } + if (is_numeric($result)) + { + $this->error = $this->error; + $this->errors = $this->errors; + return $result; + } else { + $this->lines = $result; + return $this->lines; + } } /** @@ -986,9 +973,7 @@ class MyObject extends CommonObject if ($numref != '' && $numref != '-1') { return $numref; - } - else - { + } else { $this->error = $obj->error; //dol_print_error($this->db,get_class($this)."::getNextNumRef ".$obj->error); return ""; @@ -997,9 +982,7 @@ class MyObject extends CommonObject print $langs->trans("Error")." ".$langs->trans("ClassNotFound").' '.$classname; return ""; } - } - else - { + } else { print $langs->trans("ErrorNumberingModuleNotSetup", $this->element); return ""; } @@ -1047,10 +1030,10 @@ class MyObject extends CommonObject /** * Action executed by scheduler * CAN BE A CRON TASK. In such a case, parameters come from the schedule job setup field 'Parameters' + * Use public function doScheduledJob($param1, $param2, ...) to get parameters * * @return int 0 if OK, <>0 if KO (this function is used also by cron so only 0 is OK) */ - //public function doScheduledJob($param1, $param2, ...) public function doScheduledJob() { global $conf, $langs; diff --git a/htdocs/modulebuilder/template/core/boxes/mymodulewidget1.php b/htdocs/modulebuilder/template/core/boxes/mymodulewidget1.php index 7b1f49601c3..482455e103d 100644 --- a/htdocs/modulebuilder/template/core/boxes/mymodulewidget1.php +++ b/htdocs/modulebuilder/template/core/boxes/mymodulewidget1.php @@ -1,6 +1,6 @@ - * Copyright (C) 2018-2019 Frédéric France + * Copyright (C) 2018-2020 Frédéric France * Copyright (C) ---Put here your own copyright and developer email--- * * This program is free software: you can redistribute it and/or modify @@ -112,7 +112,7 @@ class mymodulewidget1 extends ModeleBoxes // Use configuration value for max lines count $this->max = $max; - //include_once DOL_DOCUMENT_ROOT . "/mymodule/class/mymodule.class.php"; + //dol_include_once("/mymodule/class/mymodule.class.php"); // Populate the head at runtime $text = $langs->trans("MyModuleBoxDescription", $max); @@ -194,18 +194,18 @@ class mymodulewidget1 extends ModeleBoxes ); } - /** - * Method to show box. Called by Dolibarr eatch time it wants to display the box. - * - * @param array $head Array with properties of box title - * @param array $contents Array with properties of box lines - * @param int $nooutput No print, only return string - * @return void - */ - public function showBox($head = null, $contents = null, $nooutput = 0) - { - // You may make your own code here… - // … or use the parent's class function using the provided head and contents templates - parent::showBox($this->info_box_head, $this->info_box_contents); - } + /** + * Method to show box. Called by Dolibarr eatch time it wants to display the box. + * + * @param array $head Array with properties of box title + * @param array $contents Array with properties of box lines + * @param int $nooutput No print, only return string + * @return void + */ + public function showBox($head = null, $contents = null, $nooutput = 0) + { + // You may make your own code here… + // … or use the parent's class function using the provided head and contents templates + parent::showBox($this->info_box_head, $this->info_box_contents); + } } diff --git a/htdocs/modulebuilder/template/core/modules/mailings/mailinglist_mymodule_myobject.modules.php b/htdocs/modulebuilder/template/core/modules/mailings/mailinglist_mymodule_myobject.modules.php index b6aa0399447..cb6e15695c1 100644 --- a/htdocs/modulebuilder/template/core/modules/mailings/mailinglist_mymodule_myobject.modules.php +++ b/htdocs/modulebuilder/template/core/modules/mailings/mailinglist_mymodule_myobject.modules.php @@ -17,189 +17,187 @@ dol_include_once("/mymodule/class/myobject.class.php"); */ class mailing_mailinglist_mymodule_myobject extends MailingTargets { - // CHANGE THIS: Put here a name not already used - public $name = 'mailinglist_mymodule_myobject'; - // CHANGE THIS: Put here a description of your selector module - public $desc = 'My object emailing target selector'; - // CHANGE THIS: Set to 1 if selector is available for admin users only - public $require_admin = 0; + // CHANGE THIS: Put here a name not already used + public $name = 'mailinglist_mymodule_myobject'; + // CHANGE THIS: Put here a description of your selector module + public $desc = 'My object emailing target selector'; + // CHANGE THIS: Set to 1 if selector is available for admin users only + public $require_admin = 0; - public $enabled = 0; - public $require_module = array(); + public $enabled = 0; + public $require_module = array(); - /** - * @var string String with name of icon for myobject. Must be the part after the 'object_' into object_myobject.png - */ - public $picto = 'mymodule@mymodule'; + /** + * @var string String with name of icon for myobject. Must be the part after the 'object_' into object_myobject.png + */ + public $picto = 'mymodule@mymodule'; - /** - * @var DoliDB Database handler. - */ - public $db; + /** + * @var DoliDB Database handler. + */ + public $db; - /** - * Constructor - * - * @param DoliDB $db Database handler - */ - public function __construct($db) - { - global $conf; + /** + * Constructor + * + * @param DoliDB $db Database handler + */ + public function __construct($db) + { + global $conf; - $this->db = $db; - if (is_array($conf->modules)) - { - $this->enabled = in_array('mymodule', $conf->modules) ? 1 : 0; - } - } + $this->db = $db; + if (is_array($conf->modules)) + { + $this->enabled = in_array('mymodule', $conf->modules) ? 1 : 0; + } + } - /** - * Affiche formulaire de filtre qui apparait dans page de selection des destinataires de mailings - * - * @return string Retourne zone select - */ - public function formFilter() - { - global $langs; - $langs->load("members"); + /** + * Affiche formulaire de filtre qui apparait dans page de selection des destinataires de mailings + * + * @return string Retourne zone select + */ + public function formFilter() + { + global $langs; + $langs->load("members"); - $form = new Form($this->db); + $form = new Form($this->db); - $arraystatus = array(1=>'Option 1', 2=>'Option 2'); + $arraystatus = array(1=>'Option 1', 2=>'Option 2'); - $s = ''; - $s .= $langs->trans("Status").': '; - $s .= ''; - $s .= '
    '; + $s = ''; + $s .= $langs->trans("Status").': '; + $s .= ''; + $s .= '
    '; - return $s; - } + return $s; + } - /** - * Renvoie url lien vers fiche de la source du destinataire du mailing - * - * @param int $id ID - * @return string Url lien - */ - public function url($id) - { - return '
    '.img_object('', "generic").''; - } + /** + * Renvoie url lien vers fiche de la source du destinataire du mailing + * + * @param int $id ID + * @return string Url lien + */ + public function url($id) + { + return ''.img_object('', "generic").''; + } - // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps - /** - * This is the main function that returns the array of emails - * - * @param int $mailing_id Id of emailing - * @return int <0 if error, number of emails added if ok - */ - public function add_to_target($mailing_id) - { - // phpcs:enable - $target = array(); - $j = 0; + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps + /** + * This is the main function that returns the array of emails + * + * @param int $mailing_id Id of emailing + * @return int <0 if error, number of emails added if ok + */ + public function add_to_target($mailing_id) + { + // phpcs:enable + $target = array(); + $j = 0; - $sql = " select rowid as id, email, firstname, lastname, plan, partner"; - $sql .= " from ".MAIN_DB_PREFIX."myobject"; - $sql .= " where email IS NOT NULL AND email != ''"; - if (GETPOSTISSET('filter') && GETPOST('filter', 'alphanohtml') != 'none') $sql .= " AND status = '".$this->db->escape(GETPOST('filter', 'alphanohtml'))."'"; - $sql .= " ORDER BY email"; + $sql = " select rowid as id, email, firstname, lastname, plan, partner"; + $sql .= " from ".MAIN_DB_PREFIX."myobject"; + $sql .= " where email IS NOT NULL AND email != ''"; + if (GETPOSTISSET('filter') && GETPOST('filter', 'alphanohtml') != 'none') $sql .= " AND status = '".$this->db->escape(GETPOST('filter', 'alphanohtml'))."'"; + $sql .= " ORDER BY email"; - // Stocke destinataires dans target - $result = $this->db->query($sql); - if ($result) - { - $num = $this->db->num_rows($result); - $i = 0; + // Stocke destinataires dans target + $result = $this->db->query($sql); + if ($result) + { + $num = $this->db->num_rows($result); + $i = 0; - dol_syslog("mailinglist_mymodule_myobject.modules.php: mailing ".$num." targets found"); + dol_syslog("mailinglist_mymodule_myobject.modules.php: mailing ".$num." targets found"); - $old = ''; - while ($i < $num) - { - $obj = $this->db->fetch_object($result); - if ($old <> $obj->email) - { - $target[$j] = array( - 'email' => $obj->email, - 'name' => $obj->lastname, - 'id' => $obj->id, - 'firstname' => $obj->firstname, - 'other' => $obj->plan.';'.$obj->partner, - 'source_url' => $this->url($obj->id), - 'source_id' => $obj->id, - 'source_type' => 'dolicloud' - ); - $old = $obj->email; - $j++; - } + $old = ''; + while ($i < $num) + { + $obj = $this->db->fetch_object($result); + if ($old <> $obj->email) + { + $target[$j] = array( + 'email' => $obj->email, + 'name' => $obj->lastname, + 'id' => $obj->id, + 'firstname' => $obj->firstname, + 'other' => $obj->plan.';'.$obj->partner, + 'source_url' => $this->url($obj->id), + 'source_id' => $obj->id, + 'source_type' => 'dolicloud' + ); + $old = $obj->email; + $j++; + } - $i++; - } - } - else - { - dol_syslog($this->db->error()); - $this->error = $this->db->error(); - return -1; - } + $i++; + } + } else { + dol_syslog($this->db->error()); + $this->error = $this->db->error(); + return -1; + } - // You must fill the $target array with record like this - // $target[0]=array('email'=>'email_0','name'=>'name_0','firstname'=>'firstname_0'); - // ... - // $target[n]=array('email'=>'email_n','name'=>'name_n','firstname'=>'firstname_n'); + // You must fill the $target array with record like this + // $target[0]=array('email'=>'email_0','name'=>'name_0','firstname'=>'firstname_0'); + // ... + // $target[n]=array('email'=>'email_n','name'=>'name_n','firstname'=>'firstname_n'); - // Example: $target[0]=array('email'=>'myemail@mydomain.com','name'=>'Doe','firstname'=>'John'); + // Example: $target[0]=array('email'=>'myemail@mydomain.com','name'=>'Doe','firstname'=>'John'); - // ----- Your code end here ----- + // ----- Your code end here ----- - return parent::addTargetsToDatabase($mailing_id, $target); - } + return parent::addTargetsToDatabase($mailing_id, $target); + } - /** - * On the main mailing area, there is a box with statistics. - * If you want to add a line in this report you must provide an - * array of SQL request that returns two field: - * One called "label", One called "nb". - * - * @return array - */ - public function getSqlArrayForStats() - { - // CHANGE THIS: Optionnal + /** + * On the main mailing area, there is a box with statistics. + * If you want to add a line in this report you must provide an + * array of SQL request that returns two field: + * One called "label", One called "nb". + * + * @return array + */ + public function getSqlArrayForStats() + { + // CHANGE THIS: Optionnal - //var $statssql=array(); - //$this->statssql[0]="SELECT field1 as label, count(distinct(email)) as nb FROM mytable WHERE email IS NOT NULL"; + //var $statssql=array(); + //$this->statssql[0]="SELECT field1 as label, count(distinct(email)) as nb FROM mytable WHERE email IS NOT NULL"; - return array(); - } + return array(); + } - /** - * Return here number of distinct emails returned by your selector. - * For example if this selector is used to extract 500 different - * emails from a text file, this function must return 500. - * - * @param string $filter Filter - * @param string $option Options - * @return int Nb of recipients or -1 if KO - */ - public function getNbOfRecipients($filter = 1, $option = '') - { - $a = parent::getNbOfRecipients("select count(distinct(email)) as nb from ".MAIN_DB_PREFIX."myobject as p where email IS NOT NULL AND email != ''"); + /** + * Return here number of distinct emails returned by your selector. + * For example if this selector is used to extract 500 different + * emails from a text file, this function must return 500. + * + * @param string $filter Filter + * @param string $option Options + * @return int Nb of recipients or -1 if KO + */ + public function getNbOfRecipients($filter = 1, $option = '') + { + $a = parent::getNbOfRecipients("select count(distinct(email)) as nb from ".MAIN_DB_PREFIX."myobject as p where email IS NOT NULL AND email != ''"); - if ($a < 0) return -1; - return $a; - } + if ($a < 0) return -1; + return $a; + } } diff --git a/htdocs/modulebuilder/template/core/modules/modMyModule.class.php b/htdocs/modulebuilder/template/core/modules/modMyModule.class.php index e51eeb51921..21ede6bfd58 100644 --- a/htdocs/modulebuilder/template/core/modules/modMyModule.class.php +++ b/htdocs/modulebuilder/template/core/modules/modMyModule.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2018-2019 Nicolas ZABOURI - * Copyright (C) 2019 Frédéric France + * Copyright (C) 2019-2020 Frédéric France * Copyright (C) ---Put here your own copyright and developer email--- * * This program is free software; you can redistribute it and/or modify @@ -33,419 +33,419 @@ include_once DOL_DOCUMENT_ROOT.'/core/modules/DolibarrModules.class.php'; */ class modMyModule extends DolibarrModules { - /** - * Constructor. Define names, constants, directories, boxes, permissions - * - * @param DoliDB $db Database handler - */ - public function __construct($db) - { - global $langs, $conf; - $this->db = $db; + /** + * Constructor. Define names, constants, directories, boxes, permissions + * + * @param DoliDB $db Database handler + */ + public function __construct($db) + { + global $langs, $conf; + $this->db = $db; - // Id for module (must be unique). - // Use here a free id (See in Home -> System information -> Dolibarr for list of used modules id). - $this->numero = 500000; // TODO Go on page https://wiki.dolibarr.org/index.php/List_of_modules_id to reserve an id number for your module - // Key text used to identify module (for permissions, menus, etc...) - $this->rights_class = 'mymodule'; - // Family can be 'base' (core modules),'crm','financial','hr','projects','products','ecm','technic' (transverse modules),'interface' (link with external tools),'other','...' - // It is used to group modules by family in module setup page - $this->family = "other"; - // Module position in the family on 2 digits ('01', '10', '20', ...) - $this->module_position = '90'; - // Gives the possibility for the module, to provide his own family info and position of this family (Overwrite $this->family and $this->module_position. Avoid this) - //$this->familyinfo = array('myownfamily' => array('position' => '01', 'label' => $langs->trans("MyOwnFamily"))); - // Module label (no space allowed), used if translation string 'ModuleMyModuleName' not found (MyModule is name of module). - $this->name = preg_replace('/^mod/i', '', get_class($this)); - // Module description, used if translation string 'ModuleMyModuleDesc' not found (MyModule is name of module). - $this->description = "MyModuleDescription"; - // Used only if file README.md and README-LL.md not found. - $this->descriptionlong = "MyModule description (Long)"; - $this->editor_name = 'Editor name'; - $this->editor_url = 'https://www.example.com'; - // Possible values for version are: 'development', 'experimental', 'dolibarr', 'dolibarr_deprecated' or a version string like 'x.y.z' - $this->version = '1.0'; - // Url to the file with your last numberversion of this module - //$this->url_last_version = 'http://www.example.com/versionmodule.txt'; + // Id for module (must be unique). + // Use here a free id (See in Home -> System information -> Dolibarr for list of used modules id). + $this->numero = 500000; // TODO Go on page https://wiki.dolibarr.org/index.php/List_of_modules_id to reserve an id number for your module + // Key text used to identify module (for permissions, menus, etc...) + $this->rights_class = 'mymodule'; + // Family can be 'base' (core modules),'crm','financial','hr','projects','products','ecm','technic' (transverse modules),'interface' (link with external tools),'other','...' + // It is used to group modules by family in module setup page + $this->family = "other"; + // Module position in the family on 2 digits ('01', '10', '20', ...) + $this->module_position = '90'; + // Gives the possibility for the module, to provide his own family info and position of this family (Overwrite $this->family and $this->module_position. Avoid this) + //$this->familyinfo = array('myownfamily' => array('position' => '01', 'label' => $langs->trans("MyOwnFamily"))); + // Module label (no space allowed), used if translation string 'ModuleMyModuleName' not found (MyModule is name of module). + $this->name = preg_replace('/^mod/i', '', get_class($this)); + // Module description, used if translation string 'ModuleMyModuleDesc' not found (MyModule is name of module). + $this->description = "MyModuleDescription"; + // Used only if file README.md and README-LL.md not found. + $this->descriptionlong = "MyModule description (Long)"; + $this->editor_name = 'Editor name'; + $this->editor_url = 'https://www.example.com'; + // Possible values for version are: 'development', 'experimental', 'dolibarr', 'dolibarr_deprecated' or a version string like 'x.y.z' + $this->version = '1.0'; + // Url to the file with your last numberversion of this module + //$this->url_last_version = 'http://www.example.com/versionmodule.txt'; - // Key used in llx_const table to save module status enabled/disabled (where MYMODULE is value of property name of module in uppercase) - $this->const_name = 'MAIN_MODULE_'.strtoupper($this->name); - // Name of image file used for this module. - // If file is in theme/yourtheme/img directory under name object_pictovalue.png, use this->picto='pictovalue' - // If file is in module/img directory under name object_pictovalue.png, use this->picto='pictovalue@module' - $this->picto = 'generic'; - // Define some features supported by module (triggers, login, substitutions, menus, css, etc...) - $this->module_parts = array( - // Set this to 1 if module has its own trigger directory (core/triggers) - 'triggers' => 0, - // Set this to 1 if module has its own login method file (core/login) - 'login' => 0, - // Set this to 1 if module has its own substitution function file (core/substitutions) - 'substitutions' => 0, - // Set this to 1 if module has its own menus handler directory (core/menus) - 'menus' => 0, - // Set this to 1 if module overwrite template dir (core/tpl) - 'tpl' => 0, - // Set this to 1 if module has its own barcode directory (core/modules/barcode) - 'barcode' => 0, - // Set this to 1 if module has its own models directory (core/modules/xxx) - 'models' => 0, - // Set this to 1 if module has its own theme directory (theme) - 'theme' => 0, - // Set this to relative path of css file if module has its own css file - 'css' => array( - // '/mymodule/css/mymodule.css.php', - ), - // Set this to relative path of js file if module must load a js on all pages - 'js' => array( - // '/mymodule/js/mymodule.js.php', - ), - // Set here all hooks context managed by module. To find available hook context, make a "grep -r '>initHooks(' *" on source code. You can also set hook context to 'all' - 'hooks' => array( - // 'data' => array( - // 'hookcontext1', - // 'hookcontext2', - // ), - // 'entity' => '0', - ), - // Set this to 1 if features of module are opened to external users - 'moduleforexternal' => 0, - ); - // Data directories to create when module is enabled. - // Example: this->dirs = array("/mymodule/temp","/mymodule/subdir"); - $this->dirs = array("/mymodule/temp"); - // Config pages. Put here list of php page, stored into mymodule/admin directory, to use to setup module. - $this->config_page_url = array("setup.php@mymodule"); - // Dependencies - // A condition to hide module - $this->hidden = false; - // List of module class names as string that must be enabled if this module is enabled. Example: array('always1'=>'modModuleToEnable1','always2'=>'modModuleToEnable2', 'FR1'=>'modModuleToEnableFR'...) - $this->depends = array(); - $this->requiredby = array(); // List of module class names as string to disable if this one is disabled. Example: array('modModuleToDisable1', ...) - $this->conflictwith = array(); // List of module class names as string this module is in conflict with. Example: array('modModuleToDisable1', ...) - $this->langfiles = array("mymodule@mymodule"); - $this->phpmin = array(5, 5); // Minimum version of PHP required by module - $this->need_dolibarr_version = array(11, -3); // Minimum version of Dolibarr required by module - $this->warnings_activation = array(); // Warning to show when we activate module. array('always'='text') or array('FR'='textfr','ES'='textes'...) - $this->warnings_activation_ext = array(); // Warning to show when we activate an external module. array('always'='text') or array('FR'='textfr','ES'='textes'...) - //$this->automatic_activation = array('FR'=>'MyModuleWasAutomaticallyActivatedBecauseOfYourCountryChoice'); - //$this->always_enabled = true; // If true, can't be disabled + // Key used in llx_const table to save module status enabled/disabled (where MYMODULE is value of property name of module in uppercase) + $this->const_name = 'MAIN_MODULE_'.strtoupper($this->name); + // Name of image file used for this module. + // If file is in theme/yourtheme/img directory under name object_pictovalue.png, use this->picto='pictovalue' + // If file is in module/img directory under name object_pictovalue.png, use this->picto='pictovalue@module' + $this->picto = 'generic'; + // Define some features supported by module (triggers, login, substitutions, menus, css, etc...) + $this->module_parts = array( + // Set this to 1 if module has its own trigger directory (core/triggers) + 'triggers' => 0, + // Set this to 1 if module has its own login method file (core/login) + 'login' => 0, + // Set this to 1 if module has its own substitution function file (core/substitutions) + 'substitutions' => 0, + // Set this to 1 if module has its own menus handler directory (core/menus) + 'menus' => 0, + // Set this to 1 if module overwrite template dir (core/tpl) + 'tpl' => 0, + // Set this to 1 if module has its own barcode directory (core/modules/barcode) + 'barcode' => 0, + // Set this to 1 if module has its own models directory (core/modules/xxx) + 'models' => 0, + // Set this to 1 if module has its own theme directory (theme) + 'theme' => 0, + // Set this to relative path of css file if module has its own css file + 'css' => array( + // '/mymodule/css/mymodule.css.php', + ), + // Set this to relative path of js file if module must load a js on all pages + 'js' => array( + // '/mymodule/js/mymodule.js.php', + ), + // Set here all hooks context managed by module. To find available hook context, make a "grep -r '>initHooks(' *" on source code. You can also set hook context to 'all' + 'hooks' => array( + // 'data' => array( + // 'hookcontext1', + // 'hookcontext2', + // ), + // 'entity' => '0', + ), + // Set this to 1 if features of module are opened to external users + 'moduleforexternal' => 0, + ); + // Data directories to create when module is enabled. + // Example: this->dirs = array("/mymodule/temp","/mymodule/subdir"); + $this->dirs = array("/mymodule/temp"); + // Config pages. Put here list of php page, stored into mymodule/admin directory, to use to setup module. + $this->config_page_url = array("setup.php@mymodule"); + // Dependencies + // A condition to hide module + $this->hidden = false; + // List of module class names as string that must be enabled if this module is enabled. Example: array('always1'=>'modModuleToEnable1','always2'=>'modModuleToEnable2', 'FR1'=>'modModuleToEnableFR'...) + $this->depends = array(); + $this->requiredby = array(); // List of module class names as string to disable if this one is disabled. Example: array('modModuleToDisable1', ...) + $this->conflictwith = array(); // List of module class names as string this module is in conflict with. Example: array('modModuleToDisable1', ...) + $this->langfiles = array("mymodule@mymodule"); + $this->phpmin = array(5, 5); // Minimum version of PHP required by module + $this->need_dolibarr_version = array(11, -3); // Minimum version of Dolibarr required by module + $this->warnings_activation = array(); // Warning to show when we activate module. array('always'='text') or array('FR'='textfr','ES'='textes'...) + $this->warnings_activation_ext = array(); // Warning to show when we activate an external module. array('always'='text') or array('FR'='textfr','ES'='textes'...) + //$this->automatic_activation = array('FR'=>'MyModuleWasAutomaticallyActivatedBecauseOfYourCountryChoice'); + //$this->always_enabled = true; // If true, can't be disabled - // Constants - // List of particular constants to add when module is enabled (key, 'chaine', value, desc, visible, 'current' or 'allentities', deleteonunactive) - // Example: $this->const=array(1 => array('MYMODULE_MYNEWCONST1', 'chaine', 'myvalue', 'This is a constant to add', 1), - // 2 => array('MYMODULE_MYNEWCONST2', 'chaine', 'myvalue', 'This is another constant to add', 0, 'current', 1) - // ); - $this->const = array( - // 1 => array('MYMODULE_MYCONSTANT', 'chaine', 'avalue', 'This is a constant to add', 1, 'allentities', 1) - ); + // Constants + // List of particular constants to add when module is enabled (key, 'chaine', value, desc, visible, 'current' or 'allentities', deleteonunactive) + // Example: $this->const=array(1 => array('MYMODULE_MYNEWCONST1', 'chaine', 'myvalue', 'This is a constant to add', 1), + // 2 => array('MYMODULE_MYNEWCONST2', 'chaine', 'myvalue', 'This is another constant to add', 0, 'current', 1) + // ); + $this->const = array( + // 1 => array('MYMODULE_MYCONSTANT', 'chaine', 'avalue', 'This is a constant to add', 1, 'allentities', 1) + ); - // Some keys to add into the overwriting translation tables - /*$this->overwrite_translation = array( - 'en_US:ParentCompany'=>'Parent company or reseller', - 'fr_FR:ParentCompany'=>'Maison mère ou revendeur' - )*/ + // Some keys to add into the overwriting translation tables + /*$this->overwrite_translation = array( + 'en_US:ParentCompany'=>'Parent company or reseller', + 'fr_FR:ParentCompany'=>'Maison mère ou revendeur' + )*/ - if (!isset($conf->mymodule) || !isset($conf->mymodule->enabled)) { - $conf->mymodule = new stdClass(); - $conf->mymodule->enabled = 0; - } + if (!isset($conf->mymodule) || !isset($conf->mymodule->enabled)) { + $conf->mymodule = new stdClass(); + $conf->mymodule->enabled = 0; + } - // Array to add new pages in new tabs - $this->tabs = array(); - // Example: - // $this->tabs[] = array('data'=>'objecttype:+tabname1:Title1:mylangfile@mymodule:$user->rights->mymodule->read:/mymodule/mynewtab1.php?id=__ID__'); // To add a new tab identified by code tabname1 - // $this->tabs[] = array('data'=>'objecttype:+tabname2:SUBSTITUTION_Title2:mylangfile@mymodule:$user->rights->othermodule->read:/mymodule/mynewtab2.php?id=__ID__', // To add another new tab identified by code tabname2. Label will be result of calling all substitution functions on 'Title2' key. - // $this->tabs[] = array('data'=>'objecttype:-tabname:NU:conditiontoremove'); // To remove an existing tab identified by code tabname - // - // Where objecttype can be - // 'categories_x' to add a tab in category view (replace 'x' by type of category (0=product, 1=supplier, 2=customer, 3=member) - // 'contact' to add a tab in contact view - // 'contract' to add a tab in contract view - // 'group' to add a tab in group view - // 'intervention' to add a tab in intervention view - // 'invoice' to add a tab in customer invoice view - // 'invoice_supplier' to add a tab in supplier invoice view - // 'member' to add a tab in fundation member view - // 'opensurveypoll' to add a tab in opensurvey poll view - // 'order' to add a tab in customer order view - // 'order_supplier' to add a tab in supplier order view - // 'payment' to add a tab in payment view - // 'payment_supplier' to add a tab in supplier payment view - // 'product' to add a tab in product view - // 'propal' to add a tab in propal view - // 'project' to add a tab in project view - // 'stock' to add a tab in stock view - // 'thirdparty' to add a tab in third party view - // 'user' to add a tab in user view + // Array to add new pages in new tabs + $this->tabs = array(); + // Example: + // $this->tabs[] = array('data'=>'objecttype:+tabname1:Title1:mylangfile@mymodule:$user->rights->mymodule->read:/mymodule/mynewtab1.php?id=__ID__'); // To add a new tab identified by code tabname1 + // $this->tabs[] = array('data'=>'objecttype:+tabname2:SUBSTITUTION_Title2:mylangfile@mymodule:$user->rights->othermodule->read:/mymodule/mynewtab2.php?id=__ID__', // To add another new tab identified by code tabname2. Label will be result of calling all substitution functions on 'Title2' key. + // $this->tabs[] = array('data'=>'objecttype:-tabname:NU:conditiontoremove'); // To remove an existing tab identified by code tabname + // + // Where objecttype can be + // 'categories_x' to add a tab in category view (replace 'x' by type of category (0=product, 1=supplier, 2=customer, 3=member) + // 'contact' to add a tab in contact view + // 'contract' to add a tab in contract view + // 'group' to add a tab in group view + // 'intervention' to add a tab in intervention view + // 'invoice' to add a tab in customer invoice view + // 'invoice_supplier' to add a tab in supplier invoice view + // 'member' to add a tab in fundation member view + // 'opensurveypoll' to add a tab in opensurvey poll view + // 'order' to add a tab in customer order view + // 'order_supplier' to add a tab in supplier order view + // 'payment' to add a tab in payment view + // 'payment_supplier' to add a tab in supplier payment view + // 'product' to add a tab in product view + // 'propal' to add a tab in propal view + // 'project' to add a tab in project view + // 'stock' to add a tab in stock view + // 'thirdparty' to add a tab in third party view + // 'user' to add a tab in user view - // Dictionaries - $this->dictionaries = array(); - /* Example: - $this->dictionaries=array( - 'langs'=>'mymodule@mymodule', - // List of tables we want to see into dictonnary editor - 'tabname'=>array(MAIN_DB_PREFIX."table1", MAIN_DB_PREFIX."table2", MAIN_DB_PREFIX."table3"), - // Label of tables - 'tablib'=>array("Table1", "Table2", "Table3"), - // Request to select fields - 'tabsql'=>array('SELECT f.rowid as rowid, f.code, f.label, f.active FROM '.MAIN_DB_PREFIX.'table1 as f', 'SELECT f.rowid as rowid, f.code, f.label, f.active FROM '.MAIN_DB_PREFIX.'table2 as f', 'SELECT f.rowid as rowid, f.code, f.label, f.active FROM '.MAIN_DB_PREFIX.'table3 as f'), - // Sort order - 'tabsqlsort'=>array("label ASC", "label ASC", "label ASC"), - // List of fields (result of select to show dictionary) - 'tabfield'=>array("code,label", "code,label", "code,label"), - // List of fields (list of fields to edit a record) - 'tabfieldvalue'=>array("code,label", "code,label", "code,label"), - // List of fields (list of fields for insert) - 'tabfieldinsert'=>array("code,label", "code,label", "code,label"), - // Name of columns with primary key (try to always name it 'rowid') - 'tabrowid'=>array("rowid", "rowid", "rowid"), - // Condition to show each dictionary - 'tabcond'=>array($conf->mymodule->enabled, $conf->mymodule->enabled, $conf->mymodule->enabled) - ); - */ + // Dictionaries + $this->dictionaries = array(); + /* Example: + $this->dictionaries=array( + 'langs'=>'mymodule@mymodule', + // List of tables we want to see into dictonnary editor + 'tabname'=>array(MAIN_DB_PREFIX."table1", MAIN_DB_PREFIX."table2", MAIN_DB_PREFIX."table3"), + // Label of tables + 'tablib'=>array("Table1", "Table2", "Table3"), + // Request to select fields + 'tabsql'=>array('SELECT f.rowid as rowid, f.code, f.label, f.active FROM '.MAIN_DB_PREFIX.'table1 as f', 'SELECT f.rowid as rowid, f.code, f.label, f.active FROM '.MAIN_DB_PREFIX.'table2 as f', 'SELECT f.rowid as rowid, f.code, f.label, f.active FROM '.MAIN_DB_PREFIX.'table3 as f'), + // Sort order + 'tabsqlsort'=>array("label ASC", "label ASC", "label ASC"), + // List of fields (result of select to show dictionary) + 'tabfield'=>array("code,label", "code,label", "code,label"), + // List of fields (list of fields to edit a record) + 'tabfieldvalue'=>array("code,label", "code,label", "code,label"), + // List of fields (list of fields for insert) + 'tabfieldinsert'=>array("code,label", "code,label", "code,label"), + // Name of columns with primary key (try to always name it 'rowid') + 'tabrowid'=>array("rowid", "rowid", "rowid"), + // Condition to show each dictionary + 'tabcond'=>array($conf->mymodule->enabled, $conf->mymodule->enabled, $conf->mymodule->enabled) + ); + */ - // Boxes/Widgets - // Add here list of php file(s) stored in mymodule/core/boxes that contains a class to show a widget. - $this->boxes = array( - // 0 => array( - // 'file' => 'mymodulewidget1.php@mymodule', - // 'note' => 'Widget provided by MyModule', - // 'enabledbydefaulton' => 'Home', - // ), - // ... - ); + // Boxes/Widgets + // Add here list of php file(s) stored in mymodule/core/boxes that contains a class to show a widget. + $this->boxes = array( + // 0 => array( + // 'file' => 'mymodulewidget1.php@mymodule', + // 'note' => 'Widget provided by MyModule', + // 'enabledbydefaulton' => 'Home', + // ), + // ... + ); - // Cronjobs (List of cron jobs entries to add when module is enabled) - // unit_frequency must be 60 for minute, 3600 for hour, 86400 for day, 604800 for week - $this->cronjobs = array( - // 0 => array( - // 'label' => 'MyJob label', - // 'jobtype' => 'method', - // 'class' => '/mymodule/class/myobject.class.php', - // 'objectname' => 'MyObject', - // 'method' => 'doScheduledJob', - // 'parameters' => '', - // 'comment' => 'Comment', - // 'frequency' => 2, - // 'unitfrequency' => 3600, - // 'status' => 0, - // 'test' => '$conf->mymodule->enabled', - // 'priority' => 50, - // ), - ); - // Example: $this->cronjobs=array( - // 0=>array('label'=>'My label', 'jobtype'=>'method', 'class'=>'/dir/class/file.class.php', 'objectname'=>'MyClass', 'method'=>'myMethod', 'parameters'=>'param1, param2', 'comment'=>'Comment', 'frequency'=>2, 'unitfrequency'=>3600, 'status'=>0, 'test'=>'$conf->mymodule->enabled', 'priority'=>50), - // 1=>array('label'=>'My label', 'jobtype'=>'command', 'command'=>'', 'parameters'=>'param1, param2', 'comment'=>'Comment', 'frequency'=>1, 'unitfrequency'=>3600*24, 'status'=>0, 'test'=>'$conf->mymodule->enabled', 'priority'=>50) - // ); + // Cronjobs (List of cron jobs entries to add when module is enabled) + // unit_frequency must be 60 for minute, 3600 for hour, 86400 for day, 604800 for week + $this->cronjobs = array( + // 0 => array( + // 'label' => 'MyJob label', + // 'jobtype' => 'method', + // 'class' => '/mymodule/class/myobject.class.php', + // 'objectname' => 'MyObject', + // 'method' => 'doScheduledJob', + // 'parameters' => '', + // 'comment' => 'Comment', + // 'frequency' => 2, + // 'unitfrequency' => 3600, + // 'status' => 0, + // 'test' => '$conf->mymodule->enabled', + // 'priority' => 50, + // ), + ); + // Example: $this->cronjobs=array( + // 0=>array('label'=>'My label', 'jobtype'=>'method', 'class'=>'/dir/class/file.class.php', 'objectname'=>'MyClass', 'method'=>'myMethod', 'parameters'=>'param1, param2', 'comment'=>'Comment', 'frequency'=>2, 'unitfrequency'=>3600, 'status'=>0, 'test'=>'$conf->mymodule->enabled', 'priority'=>50), + // 1=>array('label'=>'My label', 'jobtype'=>'command', 'command'=>'', 'parameters'=>'param1, param2', 'comment'=>'Comment', 'frequency'=>1, 'unitfrequency'=>3600*24, 'status'=>0, 'test'=>'$conf->mymodule->enabled', 'priority'=>50) + // ); - // Permissions provided by this module - $this->rights = array(); - $r = 0; - // Add here entries to declare new permissions - /* BEGIN MODULEBUILDER PERMISSIONS */ - $this->rights[$r][0] = $this->numero + $r; // Permission id (must not be already used) - $this->rights[$r][1] = 'Read objects of MyModule'; // Permission label - $this->rights[$r][4] = 'myobject'; // In php code, permission will be checked by test if ($user->rights->mymodule->level1->level2) - $this->rights[$r][5] = 'read'; // In php code, permission will be checked by test if ($user->rights->mymodule->level1->level2) - $r++; - $this->rights[$r][0] = $this->numero + $r; // Permission id (must not be already used) - $this->rights[$r][1] = 'Create/Update objects of MyModule'; // Permission label - $this->rights[$r][4] = 'myobject'; // In php code, permission will be checked by test if ($user->rights->mymodule->level1->level2) - $this->rights[$r][5] = 'write'; // In php code, permission will be checked by test if ($user->rights->mymodule->level1->level2) - $r++; - $this->rights[$r][0] = $this->numero + $r; // Permission id (must not be already used) - $this->rights[$r][1] = 'Delete objects of MyModule'; // Permission label - $this->rights[$r][4] = 'myobject'; // In php code, permission will be checked by test if ($user->rights->mymodule->level1->level2) - $this->rights[$r][5] = 'delete'; // In php code, permission will be checked by test if ($user->rights->mymodule->level1->level2) - $r++; - /* END MODULEBUILDER PERMISSIONS */ + // Permissions provided by this module + $this->rights = array(); + $r = 0; + // Add here entries to declare new permissions + /* BEGIN MODULEBUILDER PERMISSIONS */ + $this->rights[$r][0] = $this->numero + $r; // Permission id (must not be already used) + $this->rights[$r][1] = 'Read objects of MyModule'; // Permission label + $this->rights[$r][4] = 'myobject'; // In php code, permission will be checked by test if ($user->rights->mymodule->level1->level2) + $this->rights[$r][5] = 'read'; // In php code, permission will be checked by test if ($user->rights->mymodule->level1->level2) + $r++; + $this->rights[$r][0] = $this->numero + $r; // Permission id (must not be already used) + $this->rights[$r][1] = 'Create/Update objects of MyModule'; // Permission label + $this->rights[$r][4] = 'myobject'; // In php code, permission will be checked by test if ($user->rights->mymodule->level1->level2) + $this->rights[$r][5] = 'write'; // In php code, permission will be checked by test if ($user->rights->mymodule->level1->level2) + $r++; + $this->rights[$r][0] = $this->numero + $r; // Permission id (must not be already used) + $this->rights[$r][1] = 'Delete objects of MyModule'; // Permission label + $this->rights[$r][4] = 'myobject'; // In php code, permission will be checked by test if ($user->rights->mymodule->level1->level2) + $this->rights[$r][5] = 'delete'; // In php code, permission will be checked by test if ($user->rights->mymodule->level1->level2) + $r++; + /* END MODULEBUILDER PERMISSIONS */ - // Main menu entries to add - $this->menu = array(); - $r = 0; - // Add here entries to declare new menus - /* BEGIN MODULEBUILDER TOPMENU */ - $this->menu[$r++] = array( - 'fk_menu'=>'', // '' if this is a top menu. For left menu, use 'fk_mainmenu=xxx' or 'fk_mainmenu=xxx,fk_leftmenu=yyy' where xxx is mainmenucode and yyy is a leftmenucode - 'type'=>'top', // This is a Top menu entry - 'titre'=>'MyModule', - 'mainmenu'=>'mymodule', - 'leftmenu'=>'', - 'url'=>'/mymodule/mymoduleindex.php', - 'langs'=>'mymodule@mymodule', // Lang file to use (without .lang) by module. File must be in langs/code_CODE/ directory. - 'position'=>1000 + $r, - 'enabled'=>'$conf->mymodule->enabled', // Define condition to show or hide menu entry. Use '$conf->mymodule->enabled' if entry must be visible if module is enabled. - 'perms'=>'$user->rights->mymodule->myobject->read', // Use 'perms'=>'$user->rights->mymodule->level1->level2' if you want your menu with a permission rules - 'target'=>'', - 'user'=>2, // 0=Menu for internal users, 1=external users, 2=both - ); - /* END MODULEBUILDER TOPMENU */ - /* BEGIN MODULEBUILDER LEFTMENU MYOBJECT - $this->menu[$r++]=array( - 'fk_menu'=>'fk_mainmenu=mymodule', // '' if this is a top menu. For left menu, use 'fk_mainmenu=xxx' or 'fk_mainmenu=xxx,fk_leftmenu=yyy' where xxx is mainmenucode and yyy is a leftmenucode - 'type'=>'left', // This is a Top menu entry - 'titre'=>'MyObject', - 'mainmenu'=>'mymodule', - 'leftmenu'=>'myobject', - 'url'=>'/mymodule/mymoduleindex.php', - 'langs'=>'mymodule@mymodule', // Lang file to use (without .lang) by module. File must be in langs/code_CODE/ directory. - 'position'=>1000+$r, - 'enabled'=>'$conf->mymodule->enabled', // Define condition to show or hide menu entry. Use '$conf->mymodule->enabled' if entry must be visible if module is enabled. - 'perms'=>'$user->rights->mymodule->myobject->read', // Use 'perms'=>'$user->rights->mymodule->level1->level2' if you want your menu with a permission rules - 'target'=>'', - 'user'=>2, // 0=Menu for internal users, 1=external users, 2=both - ); - $this->menu[$r++]=array( - 'fk_menu'=>'fk_mainmenu=mymodule,fk_leftmenu=myobject', // '' if this is a top menu. For left menu, use 'fk_mainmenu=xxx' or 'fk_mainmenu=xxx,fk_leftmenu=yyy' where xxx is mainmenucode and yyy is a leftmenucode - 'type'=>'left', // This is a Left menu entry - 'titre'=>'List MyObject', - 'mainmenu'=>'mymodule', - 'leftmenu'=>'mymodule_myobject_list', - 'url'=>'/mymodule/myobject_list.php', - 'langs'=>'mymodule@mymodule', // Lang file to use (without .lang) by module. File must be in langs/code_CODE/ directory. - 'position'=>1000+$r, - 'enabled'=>'$conf->mymodule->enabled', // Define condition to show or hide menu entry. Use '$conf->mymodule->enabled' if entry must be visible if module is enabled. Use '$leftmenu==\'system\'' to show if leftmenu system is selected. - 'perms'=>'$user->rights->mymodule->myobject->read', // Use 'perms'=>'$user->rights->mymodule->level1->level2' if you want your menu with a permission rules - 'target'=>'', - 'user'=>2, // 0=Menu for internal users, 1=external users, 2=both - ); - $this->menu[$r++]=array( - 'fk_menu'=>'fk_mainmenu=mymodule,fk_leftmenu=myobject', // '' if this is a top menu. For left menu, use 'fk_mainmenu=xxx' or 'fk_mainmenu=xxx,fk_leftmenu=yyy' where xxx is mainmenucode and yyy is a leftmenucode - 'type'=>'left', // This is a Left menu entry - 'titre'=>'New MyObject', - 'mainmenu'=>'mymodule', - 'leftmenu'=>'mymodule_myobject_new', - 'url'=>'/mymodule/myobject_page.php?action=create', - 'langs'=>'mymodule@mymodule', // Lang file to use (without .lang) by module. File must be in langs/code_CODE/ directory. - 'position'=>1000+$r, - 'enabled'=>'$conf->mymodule->enabled', // Define condition to show or hide menu entry. Use '$conf->mymodule->enabled' if entry must be visible if module is enabled. Use '$leftmenu==\'system\'' to show if leftmenu system is selected. - 'perms'=>'$user->rights->mymodule->myobject->write', // Use 'perms'=>'$user->rights->mymodule->level1->level2' if you want your menu with a permission rules - 'target'=>'', - 'user'=>2, // 0=Menu for internal users, 1=external users, 2=both - ); - END MODULEBUILDER LEFTMENU MYOBJECT */ + // Main menu entries to add + $this->menu = array(); + $r = 0; + // Add here entries to declare new menus + /* BEGIN MODULEBUILDER TOPMENU */ + $this->menu[$r++] = array( + 'fk_menu'=>'', // '' if this is a top menu. For left menu, use 'fk_mainmenu=xxx' or 'fk_mainmenu=xxx,fk_leftmenu=yyy' where xxx is mainmenucode and yyy is a leftmenucode + 'type'=>'top', // This is a Top menu entry + 'titre'=>'MyModule', + 'mainmenu'=>'mymodule', + 'leftmenu'=>'', + 'url'=>'/mymodule/mymoduleindex.php', + 'langs'=>'mymodule@mymodule', // Lang file to use (without .lang) by module. File must be in langs/code_CODE/ directory. + 'position'=>1000 + $r, + 'enabled'=>'$conf->mymodule->enabled', // Define condition to show or hide menu entry. Use '$conf->mymodule->enabled' if entry must be visible if module is enabled. + 'perms'=>'$user->rights->mymodule->myobject->read', // Use 'perms'=>'$user->rights->mymodule->level1->level2' if you want your menu with a permission rules + 'target'=>'', + 'user'=>2, // 0=Menu for internal users, 1=external users, 2=both + ); + /* END MODULEBUILDER TOPMENU */ + /* BEGIN MODULEBUILDER LEFTMENU MYOBJECT + $this->menu[$r++]=array( + 'fk_menu'=>'fk_mainmenu=mymodule', // '' if this is a top menu. For left menu, use 'fk_mainmenu=xxx' or 'fk_mainmenu=xxx,fk_leftmenu=yyy' where xxx is mainmenucode and yyy is a leftmenucode + 'type'=>'left', // This is a Top menu entry + 'titre'=>'MyObject', + 'mainmenu'=>'mymodule', + 'leftmenu'=>'myobject', + 'url'=>'/mymodule/mymoduleindex.php', + 'langs'=>'mymodule@mymodule', // Lang file to use (without .lang) by module. File must be in langs/code_CODE/ directory. + 'position'=>1000+$r, + 'enabled'=>'$conf->mymodule->enabled', // Define condition to show or hide menu entry. Use '$conf->mymodule->enabled' if entry must be visible if module is enabled. + 'perms'=>'$user->rights->mymodule->myobject->read', // Use 'perms'=>'$user->rights->mymodule->level1->level2' if you want your menu with a permission rules + 'target'=>'', + 'user'=>2, // 0=Menu for internal users, 1=external users, 2=both + ); + $this->menu[$r++]=array( + 'fk_menu'=>'fk_mainmenu=mymodule,fk_leftmenu=myobject', // '' if this is a top menu. For left menu, use 'fk_mainmenu=xxx' or 'fk_mainmenu=xxx,fk_leftmenu=yyy' where xxx is mainmenucode and yyy is a leftmenucode + 'type'=>'left', // This is a Left menu entry + 'titre'=>'List MyObject', + 'mainmenu'=>'mymodule', + 'leftmenu'=>'mymodule_myobject_list', + 'url'=>'/mymodule/myobject_list.php', + 'langs'=>'mymodule@mymodule', // Lang file to use (without .lang) by module. File must be in langs/code_CODE/ directory. + 'position'=>1000+$r, + 'enabled'=>'$conf->mymodule->enabled', // Define condition to show or hide menu entry. Use '$conf->mymodule->enabled' if entry must be visible if module is enabled. Use '$leftmenu==\'system\'' to show if leftmenu system is selected. + 'perms'=>'$user->rights->mymodule->myobject->read', // Use 'perms'=>'$user->rights->mymodule->level1->level2' if you want your menu with a permission rules + 'target'=>'', + 'user'=>2, // 0=Menu for internal users, 1=external users, 2=both + ); + $this->menu[$r++]=array( + 'fk_menu'=>'fk_mainmenu=mymodule,fk_leftmenu=myobject', // '' if this is a top menu. For left menu, use 'fk_mainmenu=xxx' or 'fk_mainmenu=xxx,fk_leftmenu=yyy' where xxx is mainmenucode and yyy is a leftmenucode + 'type'=>'left', // This is a Left menu entry + 'titre'=>'New MyObject', + 'mainmenu'=>'mymodule', + 'leftmenu'=>'mymodule_myobject_new', + 'url'=>'/mymodule/myobject_page.php?action=create', + 'langs'=>'mymodule@mymodule', // Lang file to use (without .lang) by module. File must be in langs/code_CODE/ directory. + 'position'=>1000+$r, + 'enabled'=>'$conf->mymodule->enabled', // Define condition to show or hide menu entry. Use '$conf->mymodule->enabled' if entry must be visible if module is enabled. Use '$leftmenu==\'system\'' to show if leftmenu system is selected. + 'perms'=>'$user->rights->mymodule->myobject->write', // Use 'perms'=>'$user->rights->mymodule->level1->level2' if you want your menu with a permission rules + 'target'=>'', + 'user'=>2, // 0=Menu for internal users, 1=external users, 2=both + ); + END MODULEBUILDER LEFTMENU MYOBJECT */ - // Exports profiles provided by this module - $r = 1; - /* BEGIN MODULEBUILDER EXPORT MYOBJECT */ - /* - $langs->load("mymodule@mymodule"); - $this->export_code[$r]=$this->rights_class.'_'.$r; - $this->export_label[$r]='MyObjectLines'; // Translation key (used only if key ExportDataset_xxx_z not found) - $this->export_icon[$r]='myobject@mymodule'; - // Define $this->export_fields_array, $this->export_TypeFields_array and $this->export_entities_array - $keyforclass = 'MyObject'; $keyforclassfile='/mymobule/class/myobject.class.php'; $keyforelement='myobject@mymodule'; - include DOL_DOCUMENT_ROOT.'/core/commonfieldsinexport.inc.php'; - //$this->export_fields_array[$r]['t.fieldtoadd']='FieldToAdd'; $this->export_TypeFields_array[$r]['t.fieldtoadd']='Text'; - //unset($this->export_fields_array[$r]['t.fieldtoremove']); - //$keyforclass = 'MyObjectLine'; $keyforclassfile='/mymodule/class/myobject.class.php'; $keyforelement='myobjectline@mymodule'; $keyforalias='tl'; + // Exports profiles provided by this module + $r = 1; + /* BEGIN MODULEBUILDER EXPORT MYOBJECT */ + /* + $langs->load("mymodule@mymodule"); + $this->export_code[$r]=$this->rights_class.'_'.$r; + $this->export_label[$r]='MyObjectLines'; // Translation key (used only if key ExportDataset_xxx_z not found) + $this->export_icon[$r]='myobject@mymodule'; + // Define $this->export_fields_array, $this->export_TypeFields_array and $this->export_entities_array + $keyforclass = 'MyObject'; $keyforclassfile='/mymobule/class/myobject.class.php'; $keyforelement='myobject@mymodule'; + include DOL_DOCUMENT_ROOT.'/core/commonfieldsinexport.inc.php'; + //$this->export_fields_array[$r]['t.fieldtoadd']='FieldToAdd'; $this->export_TypeFields_array[$r]['t.fieldtoadd']='Text'; + //unset($this->export_fields_array[$r]['t.fieldtoremove']); + //$keyforclass = 'MyObjectLine'; $keyforclassfile='/mymodule/class/myobject.class.php'; $keyforelement='myobjectline@mymodule'; $keyforalias='tl'; //include DOL_DOCUMENT_ROOT.'/core/commonfieldsinexport.inc.php'; - $keyforselect='myobject'; $keyforaliasextra='extra'; $keyforelement='myobject@mymodule'; - include DOL_DOCUMENT_ROOT.'/core/extrafieldsinexport.inc.php'; - //$keyforselect='myobjectline'; $keyforaliasextra='extraline'; $keyforelement='myobjectline@mymodule'; - //include DOL_DOCUMENT_ROOT.'/core/extrafieldsinexport.inc.php'; - //$this->export_dependencies_array[$r] = array('myobjectline'=>array('tl.rowid','tl.ref')); // To force to activate one or several fields if we select some fields that need same (like to select a unique key if we ask a field of a child to avoid the DISTINCT to discard them, or for computed field than need several other fields) - //$this->export_special_array[$r] = array('t.field'=>'...'); - //$this->export_examplevalues_array[$r] = array('t.field'=>'Example'); - //$this->export_help_array[$r] = array('t.field'=>'FieldDescHelp'); - $this->export_sql_start[$r]='SELECT DISTINCT '; - $this->export_sql_end[$r] =' FROM '.MAIN_DB_PREFIX.'myobject as t'; - //$this->export_sql_end[$r] =' LEFT JOIN '.MAIN_DB_PREFIX.'myobject_line as tl ON tl.fk_myobject = t.rowid'; - $this->export_sql_end[$r] .=' WHERE 1 = 1'; - $this->export_sql_end[$r] .=' AND t.entity IN ('.getEntity('myobject').')'; - $r++; */ - /* END MODULEBUILDER EXPORT MYOBJECT */ + $keyforselect='myobject'; $keyforaliasextra='extra'; $keyforelement='myobject@mymodule'; + include DOL_DOCUMENT_ROOT.'/core/extrafieldsinexport.inc.php'; + //$keyforselect='myobjectline'; $keyforaliasextra='extraline'; $keyforelement='myobjectline@mymodule'; + //include DOL_DOCUMENT_ROOT.'/core/extrafieldsinexport.inc.php'; + //$this->export_dependencies_array[$r] = array('myobjectline'=>array('tl.rowid','tl.ref')); // To force to activate one or several fields if we select some fields that need same (like to select a unique key if we ask a field of a child to avoid the DISTINCT to discard them, or for computed field than need several other fields) + //$this->export_special_array[$r] = array('t.field'=>'...'); + //$this->export_examplevalues_array[$r] = array('t.field'=>'Example'); + //$this->export_help_array[$r] = array('t.field'=>'FieldDescHelp'); + $this->export_sql_start[$r]='SELECT DISTINCT '; + $this->export_sql_end[$r] =' FROM '.MAIN_DB_PREFIX.'myobject as t'; + //$this->export_sql_end[$r] =' LEFT JOIN '.MAIN_DB_PREFIX.'myobject_line as tl ON tl.fk_myobject = t.rowid'; + $this->export_sql_end[$r] .=' WHERE 1 = 1'; + $this->export_sql_end[$r] .=' AND t.entity IN ('.getEntity('myobject').')'; + $r++; */ + /* END MODULEBUILDER EXPORT MYOBJECT */ - // Imports profiles provided by this module - $r = 1; - /* BEGIN MODULEBUILDER IMPORT MYOBJECT */ - /* - $langs->load("mymodule@mymodule"); - $this->export_code[$r]=$this->rights_class.'_'.$r; - $this->export_label[$r]='MyObjectLines'; // Translation key (used only if key ExportDataset_xxx_z not found) - $this->export_icon[$r]='myobject@mymodule'; - $keyforclass = 'MyObject'; $keyforclassfile='/mymobule/class/myobject.class.php'; $keyforelement='myobject@mymodule'; - include DOL_DOCUMENT_ROOT.'/core/commonfieldsinexport.inc.php'; - $keyforselect='myobject'; $keyforaliasextra='extra'; $keyforelement='myobject@mymodule'; - include DOL_DOCUMENT_ROOT.'/core/extrafieldsinexport.inc.php'; - //$this->export_dependencies_array[$r]=array('mysubobject'=>'ts.rowid', 't.myfield'=>array('t.myfield2','t.myfield3')); // To force to activate one or several fields if we select some fields that need same (like to select a unique key if we ask a field of a child to avoid the DISTINCT to discard them, or for computed field than need several other fields) - $this->export_sql_start[$r]='SELECT DISTINCT '; - $this->export_sql_end[$r] =' FROM '.MAIN_DB_PREFIX.'myobject as t'; - $this->export_sql_end[$r] .=' WHERE 1 = 1'; - $this->export_sql_end[$r] .=' AND t.entity IN ('.getEntity('myobject').')'; - $r++; */ - /* END MODULEBUILDER IMPORT MYOBJECT */ - } + // Imports profiles provided by this module + $r = 1; + /* BEGIN MODULEBUILDER IMPORT MYOBJECT */ + /* + $langs->load("mymodule@mymodule"); + $this->export_code[$r]=$this->rights_class.'_'.$r; + $this->export_label[$r]='MyObjectLines'; // Translation key (used only if key ExportDataset_xxx_z not found) + $this->export_icon[$r]='myobject@mymodule'; + $keyforclass = 'MyObject'; $keyforclassfile='/mymobule/class/myobject.class.php'; $keyforelement='myobject@mymodule'; + include DOL_DOCUMENT_ROOT.'/core/commonfieldsinexport.inc.php'; + $keyforselect='myobject'; $keyforaliasextra='extra'; $keyforelement='myobject@mymodule'; + include DOL_DOCUMENT_ROOT.'/core/extrafieldsinexport.inc.php'; + //$this->export_dependencies_array[$r]=array('mysubobject'=>'ts.rowid', 't.myfield'=>array('t.myfield2','t.myfield3')); // To force to activate one or several fields if we select some fields that need same (like to select a unique key if we ask a field of a child to avoid the DISTINCT to discard them, or for computed field than need several other fields) + $this->export_sql_start[$r]='SELECT DISTINCT '; + $this->export_sql_end[$r] =' FROM '.MAIN_DB_PREFIX.'myobject as t'; + $this->export_sql_end[$r] .=' WHERE 1 = 1'; + $this->export_sql_end[$r] .=' AND t.entity IN ('.getEntity('myobject').')'; + $r++; */ + /* END MODULEBUILDER IMPORT MYOBJECT */ + } - /** - * Function called when module is enabled. - * The init function add constants, boxes, permissions and menus (defined in constructor) into Dolibarr database. - * It also creates data directories - * - * @param string $options Options when enabling module ('', 'noboxes') - * @return int 1 if OK, 0 if KO - */ - public function init($options = '') - { - global $conf, $langs; + /** + * Function called when module is enabled. + * The init function add constants, boxes, permissions and menus (defined in constructor) into Dolibarr database. + * It also creates data directories + * + * @param string $options Options when enabling module ('', 'noboxes') + * @return int 1 if OK, 0 if KO + */ + public function init($options = '') + { + global $conf, $langs; - $result = $this->_load_tables('/mymodule/sql/'); - if ($result < 0) return -1; // Do not activate module if error 'not allowed' returned when loading module SQL queries (the _load_table run sql with run_sql with the error allowed parameter set to 'default') + $result = $this->_load_tables('/mymodule/sql/'); + if ($result < 0) return -1; // Do not activate module if error 'not allowed' returned when loading module SQL queries (the _load_table run sql with run_sql with the error allowed parameter set to 'default') - // Create extrafields during init - //include_once DOL_DOCUMENT_ROOT.'/core/class/extrafields.class.php'; - //$extrafields = new ExtraFields($this->db); - //$result1=$extrafields->addExtraField('myattr1', "New Attr 1 label", 'boolean', 1, 3, 'thirdparty', 0, 0, '', '', 1, '', 0, 0, '', '', 'mymodule@mymodule', '$conf->mymodule->enabled'); - //$result2=$extrafields->addExtraField('myattr2', "New Attr 2 label", 'varchar', 1, 10, 'project', 0, 0, '', '', 1, '', 0, 0, '', '', 'mymodule@mymodule', '$conf->mymodule->enabled'); - //$result3=$extrafields->addExtraField('myattr3', "New Attr 3 label", 'varchar', 1, 10, 'bank_account', 0, 0, '', '', 1, '', 0, 0, '', '', 'mymodule@mymodule', '$conf->mymodule->enabled'); - //$result4=$extrafields->addExtraField('myattr4', "New Attr 4 label", 'select', 1, 3, 'thirdparty', 0, 1, '', array('options'=>array('code1'=>'Val1','code2'=>'Val2','code3'=>'Val3')), 1,'', 0, 0, '', '', 'mymodule@mymodule', '$conf->mymodule->enabled'); - //$result5=$extrafields->addExtraField('myattr5', "New Attr 5 label", 'text', 1, 10, 'user', 0, 0, '', '', 1, '', 0, 0, '', '', 'mymodule@mymodule', '$conf->mymodule->enabled'); + // Create extrafields during init + //include_once DOL_DOCUMENT_ROOT.'/core/class/extrafields.class.php'; + //$extrafields = new ExtraFields($this->db); + //$result1=$extrafields->addExtraField('mymodule_myattr1', "New Attr 1 label", 'boolean', 1, 3, 'thirdparty', 0, 0, '', '', 1, '', 0, 0, '', '', 'mymodule@mymodule', '$conf->mymodule->enabled'); + //$result2=$extrafields->addExtraField('mymodule_myattr2', "New Attr 2 label", 'varchar', 1, 10, 'project', 0, 0, '', '', 1, '', 0, 0, '', '', 'mymodule@mymodule', '$conf->mymodule->enabled'); + //$result3=$extrafields->addExtraField('mymodule_myattr3', "New Attr 3 label", 'varchar', 1, 10, 'bank_account', 0, 0, '', '', 1, '', 0, 0, '', '', 'mymodule@mymodule', '$conf->mymodule->enabled'); + //$result4=$extrafields->addExtraField('mymodule_myattr4', "New Attr 4 label", 'select', 1, 3, 'thirdparty', 0, 1, '', array('options'=>array('code1'=>'Val1','code2'=>'Val2','code3'=>'Val3')), 1,'', 0, 0, '', '', 'mymodule@mymodule', '$conf->mymodule->enabled'); + //$result5=$extrafields->addExtraField('mymodule_myattr5', "New Attr 5 label", 'text', 1, 10, 'user', 0, 0, '', '', 1, '', 0, 0, '', '', 'mymodule@mymodule', '$conf->mymodule->enabled'); - // Permissions - $this->remove($options); + // Permissions + $this->remove($options); - $sql = array(); + $sql = array(); - // ODT template - /* - $src=DOL_DOCUMENT_ROOT.'/install/doctemplates/mymodule/template_myobjects.odt'; - $dirodt=DOL_DATA_ROOT.'/doctemplates/mymodule'; - $dest=$dirodt.'/template_myobjects.odt'; + // ODT template + /* + $src=DOL_DOCUMENT_ROOT.'/install/doctemplates/mymodule/template_myobjects.odt'; + $dirodt=DOL_DATA_ROOT.'/doctemplates/mymodule'; + $dest=$dirodt.'/template_myobjects.odt'; - if (file_exists($src) && ! file_exists($dest)) - { - require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; - dol_mkdir($dirodt); - $result=dol_copy($src, $dest, 0, 0); - if ($result < 0) - { - $langs->load("errors"); - $this->error=$langs->trans('ErrorFailToCopyFile', $src, $dest); - return 0; - } - } + if (file_exists($src) && ! file_exists($dest)) + { + require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; + dol_mkdir($dirodt); + $result=dol_copy($src, $dest, 0, 0); + if ($result < 0) + { + $langs->load("errors"); + $this->error=$langs->trans('ErrorFailToCopyFile', $src, $dest); + return 0; + } + } - $sql = array( - "DELETE FROM ".MAIN_DB_PREFIX."document_model WHERE nom = '".$this->db->escape($this->const[0][2])."' AND type = 'mymodule' AND entity = ".$conf->entity, - "INSERT INTO ".MAIN_DB_PREFIX."document_model (nom, type, entity) VALUES('".$this->db->escape($this->const[0][2])."','mymodule',".$conf->entity.")" - ); - */ + $sql = array( + "DELETE FROM ".MAIN_DB_PREFIX."document_model WHERE nom = '".$this->db->escape($this->const[0][2])."' AND type = 'mymodule' AND entity = ".$conf->entity, + "INSERT INTO ".MAIN_DB_PREFIX."document_model (nom, type, entity) VALUES('".$this->db->escape($this->const[0][2])."','mymodule',".$conf->entity.")" + ); + */ - return $this->_init($sql, $options); - } + return $this->_init($sql, $options); + } - /** - * Function called when module is disabled. - * Remove from database constants, boxes and permissions from Dolibarr database. - * Data directories are not deleted - * - * @param string $options Options when enabling module ('', 'noboxes') - * @return int 1 if OK, 0 if KO - */ - public function remove($options = '') - { - $sql = array(); - return $this->_remove($sql, $options); - } + /** + * Function called when module is disabled. + * Remove from database constants, boxes and permissions from Dolibarr database. + * Data directories are not deleted + * + * @param string $options Options when enabling module ('', 'noboxes') + * @return int 1 if OK, 0 if KO + */ + public function remove($options = '') + { + $sql = array(); + return $this->_remove($sql, $options); + } } diff --git a/htdocs/modulebuilder/template/core/modules/mymodule/doc/doc_generic_myobject_odt.modules.php b/htdocs/modulebuilder/template/core/modules/mymodule/doc/doc_generic_myobject_odt.modules.php index 22be3dee4ed..d19ced0d9dc 100644 --- a/htdocs/modulebuilder/template/core/modules/mymodule/doc/doc_generic_myobject_odt.modules.php +++ b/htdocs/modulebuilder/template/core/modules/mymodule/doc/doc_generic_myobject_odt.modules.php @@ -47,14 +47,14 @@ class doc_generic_myobject_odt extends ModelePDFMyObject public $emetteur; /** - * @var array Minimum version of PHP required by module. - * e.g.: PHP ≥ 5.5 = array(5, 5) - */ + * @var array Minimum version of PHP required by module. + * e.g.: PHP ≥ 5.5 = array(5, 5) + */ public $phpmin = array(5, 5); /** - * @var string Dolibarr version of the loaded document - */ + * @var string Dolibarr version of the loaded document + */ public $version = 'dolibarr'; @@ -63,12 +63,12 @@ class doc_generic_myobject_odt extends ModelePDFMyObject * * @param DoliDB $db Database handler */ - public function __construct($db) + public function __construct($db) { global $conf, $langs, $mysoc; // Load translation files required by the page - $langs->loadLangs(array("main", "companies")); + $langs->loadLangs(array("main", "companies")); $this->db = $db; $this->name = "ODT templates"; @@ -108,12 +108,12 @@ class doc_generic_myobject_odt extends ModelePDFMyObject * @param Translate $langs Lang object to use for output * @return string Description */ - public function info($langs) + public function info($langs) { global $conf, $langs; // Load translation files required by the page - $langs->loadLangs(array("errors", "companies")); + $langs->loadLangs(array("errors", "companies")); $form = new Form($this->db); @@ -136,9 +136,9 @@ class doc_generic_myobject_odt extends ModelePDFMyObject if (!$tmpdir) { unset($listofdir[$key]); continue; } - if (!is_dir($tmpdir)) $texttitle .= img_warning($langs->trans("ErrorDirNotFound", $tmpdir), 0); - else - { + if (!is_dir($tmpdir)) { + $texttitle .= img_warning($langs->trans("ErrorDirNotFound", $tmpdir), 0); + } else { $tmpfiles = dol_dir_list($tmpdir, 'files', 0, '\.(ods|odt)'); if (count($tmpfiles)) $listoffiles = array_merge($listoffiles, $tmpfiles); } @@ -170,12 +170,12 @@ class doc_generic_myobject_odt extends ModelePDFMyObject if ($nbofiles) { - $texte .= ''; + $texte .= ''; } $texte .= ''; @@ -191,7 +191,7 @@ class doc_generic_myobject_odt extends ModelePDFMyObject return $texte; } - // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps /** * Function to build a document on disk using the generic odt module. * @@ -203,9 +203,9 @@ class doc_generic_myobject_odt extends ModelePDFMyObject * @param int $hideref Do not show ref * @return int 1 if OK, <=0 if KO */ - public function write_file($object, $outputlangs, $srctemplatepath, $hidedetails = 0, $hidedesc = 0, $hideref = 0) + public function write_file($object, $outputlangs, $srctemplatepath, $hidedetails = 0, $hidedesc = 0, $hideref = 0) { - // phpcs:enable + // phpcs:enable global $user, $langs, $conf, $mysoc, $hookmanager; if (empty($srctemplatepath)) @@ -271,12 +271,10 @@ class doc_generic_myobject_odt extends ModelePDFMyObject $newfileformat = substr($newfile, strrpos($newfile, '.') + 1); if (!empty($conf->global->MAIN_DOC_USE_TIMING)) { - $format = $conf->global->MAIN_DOC_USE_TIMING; - if ($format == '1') $format = '%Y%m%d%H%M%S'; + $format = $conf->global->MAIN_DOC_USE_TIMING; + if ($format == '1') $format = '%Y%m%d%H%M%S'; $filename = $newfiletmp.'-'.dol_print_date(dol_now(), $format).'.'.$newfileformat; - } - else - { + } else { $filename = $newfiletmp.'.'.$newfileformat; } $file = $dir.'/'.$filename; @@ -304,23 +302,21 @@ class doc_generic_myobject_odt extends ModelePDFMyObject // On peut utiliser le nom de la societe du contact if (!empty($conf->global->MAIN_USE_COMPANY_NAME_OF_CONTACT)) $socobject = $object->contact; else { - $socobject = $object->thirdparty; - // if we have a CUSTOMER contact and we dont use it as recipient we store the contact object for later use - $contactobject = $object->contact; - } - } - else - { + $socobject = $object->thirdparty; + // if we have a CUSTOMER contact and we dont use it as recipient we store the contact object for later use + $contactobject = $object->contact; + } + } else { $socobject = $object->thirdparty; } // Make substitution $substitutionarray = array( - '__FROM_NAME__' => $this->emetteur->name, - '__FROM_EMAIL__' => $this->emetteur->email, - '__TOTAL_TTC__' => $object->total_ttc, - '__TOTAL_HT__' => $object->total_ht, - '__TOTAL_VAT__' => $object->total_vat + '__FROM_NAME__' => $this->emetteur->name, + '__FROM_EMAIL__' => $this->emetteur->email, + '__TOTAL_TTC__' => $object->total_ttc, + '__TOTAL_HT__' => $object->total_ht, + '__TOTAL_VAT__' => $object->total_vat ); complete_substitutions_array($substitutionarray, $langs, $object); // Call the ODTSubstitution hook @@ -338,7 +334,7 @@ class doc_generic_myobject_odt extends ModelePDFMyObject // Open and load template require_once ODTPHP_PATH.'odf.php'; try { - $odfHandler = new odf( + $odfHandler = new odf( $srctemplatepath, array( 'PATH_TO_TMP' => $conf->commande->dir_temp, @@ -347,8 +343,7 @@ class doc_generic_myobject_odt extends ModelePDFMyObject 'DELIMITER_RIGHT' => '}' ) ); - } - catch (Exception $e) + } catch (Exception $e) { $this->error = $e->getMessage(); dol_syslog($e->getMessage(), LOG_INFO); @@ -364,10 +359,9 @@ class doc_generic_myobject_odt extends ModelePDFMyObject // Make substitutions into odt of freetext try { $odfHandler->setVars('free_text', $newfreetext, true, 'UTF-8'); - } - catch (OdfException $e) + } catch (OdfException $e) { - dol_syslog($e->getMessage(), LOG_INFO); + dol_syslog($e->getMessage(), LOG_INFO); } // Define substitution array @@ -392,29 +386,25 @@ class doc_generic_myobject_odt extends ModelePDFMyObject foreach ($tmparray as $key=>$value) { try { - if (preg_match('/logo$/', $key)) // Image - { + if (preg_match('/logo$/', $key)) { + // Image if (file_exists($value)) $odfHandler->setImage($key, $value); else $odfHandler->setVars($key, 'ErrorFileNotFound', true, 'UTF-8'); - } - else // Text - { + } else { + // Text $odfHandler->setVars($key, $value, true, 'UTF-8'); } - } - catch (OdfException $e) + } catch (OdfException $e) { - dol_syslog($e->getMessage(), LOG_INFO); + dol_syslog($e->getMessage(), LOG_INFO); } } // Replace tags of lines - try - { + try { $foundtagforlines = 1; try { $listlines = $odfHandler->setSegment('lines'); - } - catch (OdfException $e) + } catch (OdfException $e) { // We may arrive here if tags for lines not present into template $foundtagforlines = 0; @@ -433,25 +423,21 @@ class doc_generic_myobject_odt extends ModelePDFMyObject $reshook = $hookmanager->executeHooks('ODTSubstitutionLine', $parameters, $this, $action); // Note that $action and $object may have been modified by some hooks foreach ($tmparray as $key => $val) { - try - { + try { $listlines->setVars($key, $val, true, 'UTF-8'); - } - catch (OdfException $e) + } catch (OdfException $e) { - dol_syslog($e->getMessage(), LOG_INFO); - } - catch (SegmentException $e) + dol_syslog($e->getMessage(), LOG_INFO); + } catch (SegmentException $e) { - dol_syslog($e->getMessage(), LOG_INFO); + dol_syslog($e->getMessage(), LOG_INFO); } } $listlines->merge(); } $odfHandler->mergeSegment($listlines); } - } - catch (OdfException $e) + } catch (OdfException $e) { $this->error = $e->getMessage(); dol_syslog($this->error, LOG_WARNING); @@ -464,10 +450,9 @@ class doc_generic_myobject_odt extends ModelePDFMyObject { try { $odfHandler->setVars($key, $value, true, 'UTF-8'); - } - catch (OdfException $e) + } catch (OdfException $e) { - dol_syslog($e->getMessage(), LOG_INFO); + dol_syslog($e->getMessage(), LOG_INFO); } } @@ -481,17 +466,16 @@ class doc_generic_myobject_odt extends ModelePDFMyObject try { $odfHandler->exportAsAttachedPDF($file); } catch (Exception $e) { - $this->error = $e->getMessage(); - dol_syslog($e->getMessage(), LOG_INFO); + $this->error = $e->getMessage(); + dol_syslog($e->getMessage(), LOG_INFO); return -1; } - } - else { + } else { try { $odfHandler->saveToDisk($file); } catch (Exception $e) { - $this->error = $e->getMessage(); - dol_syslog($e->getMessage(), LOG_INFO); + $this->error = $e->getMessage(); + dol_syslog($e->getMessage(), LOG_INFO); return -1; } } @@ -507,9 +491,7 @@ class doc_generic_myobject_odt extends ModelePDFMyObject $this->result = array('fullpath'=>$file); return 1; // Success - } - else - { + } else { $this->error = $langs->transnoentities("ErrorCanNotCreateDir", $dir); return -1; } diff --git a/htdocs/modulebuilder/template/core/modules/mymodule/mod_myobject_advanced.php b/htdocs/modulebuilder/template/core/modules/mymodule/mod_myobject_advanced.php index 242ad38c077..ae5f5d1e876 100644 --- a/htdocs/modulebuilder/template/core/modules/mymodule/mod_myobject_advanced.php +++ b/htdocs/modulebuilder/template/core/modules/mymodule/mod_myobject_advanced.php @@ -98,15 +98,15 @@ class mod_myobject_advanced extends ModeleNumRefMyObject */ public function getExample() { - global $conf, $db, $langs, $mysoc; + global $conf, $db, $langs, $mysoc; - $object = new MyObject($db); - $object->initAsSpecimen(); + $object = new MyObject($db); + $object->initAsSpecimen(); /*$old_code_client = $mysoc->code_client; - $old_code_type = $mysoc->typent_code; - $mysoc->code_client = 'CCCCCCCCCC'; - $mysoc->typent_code = 'TTTTTTTTTT';*/ + $old_code_type = $mysoc->typent_code; + $mysoc->code_client = 'CCCCCCCCCC'; + $mysoc->typent_code = 'TTTTTTTTTT';*/ $numExample = $this->getNextValue($object); diff --git a/htdocs/modulebuilder/template/core/modules/mymodule/mod_myobject_standard.php b/htdocs/modulebuilder/template/core/modules/mymodule/mod_myobject_standard.php index 471e09f4f7d..b5e7bccbd49 100644 --- a/htdocs/modulebuilder/template/core/modules/mymodule/mod_myobject_standard.php +++ b/htdocs/modulebuilder/template/core/modules/mymodule/mod_myobject_standard.php @@ -57,7 +57,7 @@ class mod_myobject_standard extends ModeleNumRefMyObject public function info() { global $langs; - return $langs->trans("SimpleNumRefModelDesc", $this->prefix); + return $langs->trans("SimpleNumRefModelDesc", $this->prefix); } @@ -91,8 +91,7 @@ class mod_myobject_standard extends ModeleNumRefMyObject $sql .= " WHERE ref LIKE '".$db->escape($this->prefix)."____-%'"; if ($object->ismultientitymanaged == 1) { $sql .= " AND entity = ".$conf->entity; - } - elseif ($object->ismultientitymanaged == 2) { + } elseif ($object->ismultientitymanaged == 2) { // TODO } @@ -122,15 +121,14 @@ class mod_myobject_standard extends ModeleNumRefMyObject { global $db, $conf; - // D'abord on recupere la valeur max + // First we get the max value $posindice = 9; $sql = "SELECT MAX(CAST(SUBSTRING(ref FROM ".$posindice.") AS SIGNED)) as max"; $sql .= " FROM ".MAIN_DB_PREFIX."mymodule_myobject"; $sql .= " WHERE ref LIKE '".$db->escape($this->prefix)."____-%'"; if ($object->ismultientitymanaged == 1) { $sql .= " AND entity = ".$conf->entity; - } - elseif ($object->ismultientitymanaged == 2) { + } elseif ($object->ismultientitymanaged == 2) { // TODO } @@ -140,9 +138,7 @@ class mod_myobject_standard extends ModeleNumRefMyObject $obj = $db->fetch_object($resql); if ($obj) $max = intval($obj->max); else $max = 0; - } - else - { + } else { dol_syslog("mod_myobject_standard::getNextValue", LOG_DEBUG); return -1; } diff --git a/htdocs/modulebuilder/template/core/tpl/linkedobjectblock_myobject.tpl.php b/htdocs/modulebuilder/template/core/tpl/linkedobjectblock_myobject.tpl.php index 1be39ddde83..06e3498fca0 100644 --- a/htdocs/modulebuilder/template/core/tpl/linkedobjectblock_myobject.tpl.php +++ b/htdocs/modulebuilder/template/core/tpl/linkedobjectblock_myobject.tpl.php @@ -38,17 +38,17 @@ $langs->load("mymodule"); $total = 0; $ilink = 0; foreach ($linkedObjectBlock as $key => $objectlink) { - $ilink++; + $ilink++; - $trclass = 'oddeven'; - if ($ilink == count($linkedObjectBlock) && empty($noMoreLinkedObjectBlockAfter) && count($linkedObjectBlock) <= 1) $trclass .= ' liste_sub_total'; + $trclass = 'oddeven'; + if ($ilink == count($linkedObjectBlock) && empty($noMoreLinkedObjectBlockAfter) && count($linkedObjectBlock) <= 1) $trclass .= ' liste_sub_total'; ?> - - - + + + - + diff --git a/htdocs/modulebuilder/template/core/triggers/interface_99_modMyModule_MyModuleTriggers.class.php b/htdocs/modulebuilder/template/core/triggers/interface_99_modMyModule_MyModuleTriggers.class.php index dcee9eeaea5..4c5951dad70 100644 --- a/htdocs/modulebuilder/template/core/triggers/interface_99_modMyModule_MyModuleTriggers.class.php +++ b/htdocs/modulebuilder/template/core/triggers/interface_99_modMyModule_MyModuleTriggers.class.php @@ -40,278 +40,278 @@ require_once DOL_DOCUMENT_ROOT.'/core/triggers/dolibarrtriggers.class.php'; */ class InterfaceMyModuleTriggers extends DolibarrTriggers { - /** - * @var DoliDB Database handler - */ - protected $db; + /** + * @var DoliDB Database handler + */ + protected $db; - /** - * Constructor - * - * @param DoliDB $db Database handler - */ - public function __construct($db) - { - $this->db = $db; + /** + * Constructor + * + * @param DoliDB $db Database handler + */ + public function __construct($db) + { + $this->db = $db; - $this->name = preg_replace('/^Interface/i', '', get_class($this)); - $this->family = "demo"; - $this->description = "MyModule triggers."; - // 'development', 'experimental', 'dolibarr' or version - $this->version = 'development'; - $this->picto = 'mymodule@mymodule'; - } + $this->name = preg_replace('/^Interface/i', '', get_class($this)); + $this->family = "demo"; + $this->description = "MyModule triggers."; + // 'development', 'experimental', 'dolibarr' or version + $this->version = 'development'; + $this->picto = 'mymodule@mymodule'; + } - /** - * Trigger name - * - * @return string Name of trigger file - */ - public function getName() - { - return $this->name; - } + /** + * Trigger name + * + * @return string Name of trigger file + */ + public function getName() + { + return $this->name; + } - /** - * Trigger description - * - * @return string Description of trigger file - */ - public function getDesc() - { - return $this->description; - } + /** + * Trigger description + * + * @return string Description of trigger file + */ + public function getDesc() + { + return $this->description; + } - /** - * Function called when a Dolibarrr business event is done. - * All functions "runTrigger" are triggered if file - * is inside directory core/triggers - * - * @param string $action Event action code - * @param CommonObject $object Object - * @param User $user Object user - * @param Translate $langs Object langs - * @param Conf $conf Object conf - * @return int <0 if KO, 0 if no triggered ran, >0 if OK - */ - public function runTrigger($action, $object, User $user, Translate $langs, Conf $conf) - { - if (empty($conf->mymodule->enabled)) return 0; // If module is not enabled, we do nothing + /** + * Function called when a Dolibarrr business event is done. + * All functions "runTrigger" are triggered if file + * is inside directory core/triggers + * + * @param string $action Event action code + * @param CommonObject $object Object + * @param User $user Object user + * @param Translate $langs Object langs + * @param Conf $conf Object conf + * @return int <0 if KO, 0 if no triggered ran, >0 if OK + */ + public function runTrigger($action, $object, User $user, Translate $langs, Conf $conf) + { + if (empty($conf->mymodule->enabled)) return 0; // If module is not enabled, we do nothing - // Put here code you want to execute when a Dolibarr business events occurs. - // Data and type of action are stored into $object and $action + // Put here code you want to execute when a Dolibarr business events occurs. + // Data and type of action are stored into $object and $action - switch ($action) { - // Users - //case 'USER_CREATE': - //case 'USER_MODIFY': - //case 'USER_NEW_PASSWORD': - //case 'USER_ENABLEDISABLE': - //case 'USER_DELETE': - //case 'USER_SETINGROUP': - //case 'USER_REMOVEFROMGROUP': + switch ($action) { + // Users + //case 'USER_CREATE': + //case 'USER_MODIFY': + //case 'USER_NEW_PASSWORD': + //case 'USER_ENABLEDISABLE': + //case 'USER_DELETE': + //case 'USER_SETINGROUP': + //case 'USER_REMOVEFROMGROUP': - // Actions - //case 'ACTION_MODIFY': - //case 'ACTION_CREATE': - //case 'ACTION_DELETE': + // Actions + //case 'ACTION_MODIFY': + //case 'ACTION_CREATE': + //case 'ACTION_DELETE': - // Groups - //case 'USERGROUP_CREATE': - //case 'USERGROUP_MODIFY': - //case 'USERGROUP_DELETE': + // Groups + //case 'USERGROUP_CREATE': + //case 'USERGROUP_MODIFY': + //case 'USERGROUP_DELETE': - // Companies - //case 'COMPANY_CREATE': - //case 'COMPANY_MODIFY': - //case 'COMPANY_DELETE': + // Companies + //case 'COMPANY_CREATE': + //case 'COMPANY_MODIFY': + //case 'COMPANY_DELETE': - // Contacts - //case 'CONTACT_CREATE': - //case 'CONTACT_MODIFY': - //case 'CONTACT_DELETE': - //case 'CONTACT_ENABLEDISABLE': + // Contacts + //case 'CONTACT_CREATE': + //case 'CONTACT_MODIFY': + //case 'CONTACT_DELETE': + //case 'CONTACT_ENABLEDISABLE': - // Products - //case 'PRODUCT_CREATE': - //case 'PRODUCT_MODIFY': - //case 'PRODUCT_DELETE': - //case 'PRODUCT_PRICE_MODIFY': - //case 'PRODUCT_SET_MULTILANGS': - //case 'PRODUCT_DEL_MULTILANGS': + // Products + //case 'PRODUCT_CREATE': + //case 'PRODUCT_MODIFY': + //case 'PRODUCT_DELETE': + //case 'PRODUCT_PRICE_MODIFY': + //case 'PRODUCT_SET_MULTILANGS': + //case 'PRODUCT_DEL_MULTILANGS': - //Stock mouvement - //case 'STOCK_MOVEMENT': + //Stock mouvement + //case 'STOCK_MOVEMENT': - //MYECMDIR - //case 'MYECMDIR_CREATE': - //case 'MYECMDIR_MODIFY': - //case 'MYECMDIR_DELETE': + //MYECMDIR + //case 'MYECMDIR_CREATE': + //case 'MYECMDIR_MODIFY': + //case 'MYECMDIR_DELETE': - // Customer orders - //case 'ORDER_CREATE': - //case 'ORDER_MODIFY': - //case 'ORDER_VALIDATE': - //case 'ORDER_DELETE': - //case 'ORDER_CANCEL': - //case 'ORDER_SENTBYMAIL': - //case 'ORDER_CLASSIFY_BILLED': - //case 'ORDER_SETDRAFT': - //case 'LINEORDER_INSERT': - //case 'LINEORDER_UPDATE': - //case 'LINEORDER_DELETE': + // Customer orders + //case 'ORDER_CREATE': + //case 'ORDER_MODIFY': + //case 'ORDER_VALIDATE': + //case 'ORDER_DELETE': + //case 'ORDER_CANCEL': + //case 'ORDER_SENTBYMAIL': + //case 'ORDER_CLASSIFY_BILLED': + //case 'ORDER_SETDRAFT': + //case 'LINEORDER_INSERT': + //case 'LINEORDER_UPDATE': + //case 'LINEORDER_DELETE': - // Supplier orders - //case 'ORDER_SUPPLIER_CREATE': - //case 'ORDER_SUPPLIER_MODIFY': - //case 'ORDER_SUPPLIER_VALIDATE': - //case 'ORDER_SUPPLIER_DELETE': - //case 'ORDER_SUPPLIER_APPROVE': - //case 'ORDER_SUPPLIER_REFUSE': - //case 'ORDER_SUPPLIER_CANCEL': - //case 'ORDER_SUPPLIER_SENTBYMAIL': - //case 'ORDER_SUPPLIER_DISPATCH': - //case 'LINEORDER_SUPPLIER_DISPATCH': - //case 'LINEORDER_SUPPLIER_CREATE': - //case 'LINEORDER_SUPPLIER_UPDATE': - //case 'LINEORDER_SUPPLIER_DELETE': + // Supplier orders + //case 'ORDER_SUPPLIER_CREATE': + //case 'ORDER_SUPPLIER_MODIFY': + //case 'ORDER_SUPPLIER_VALIDATE': + //case 'ORDER_SUPPLIER_DELETE': + //case 'ORDER_SUPPLIER_APPROVE': + //case 'ORDER_SUPPLIER_REFUSE': + //case 'ORDER_SUPPLIER_CANCEL': + //case 'ORDER_SUPPLIER_SENTBYMAIL': + //case 'ORDER_SUPPLIER_DISPATCH': + //case 'LINEORDER_SUPPLIER_DISPATCH': + //case 'LINEORDER_SUPPLIER_CREATE': + //case 'LINEORDER_SUPPLIER_UPDATE': + //case 'LINEORDER_SUPPLIER_DELETE': - // Proposals - //case 'PROPAL_CREATE': - //case 'PROPAL_MODIFY': - //case 'PROPAL_VALIDATE': - //case 'PROPAL_SENTBYMAIL': - //case 'PROPAL_CLOSE_SIGNED': - //case 'PROPAL_CLOSE_REFUSED': - //case 'PROPAL_DELETE': - //case 'LINEPROPAL_INSERT': - //case 'LINEPROPAL_UPDATE': - //case 'LINEPROPAL_DELETE': + // Proposals + //case 'PROPAL_CREATE': + //case 'PROPAL_MODIFY': + //case 'PROPAL_VALIDATE': + //case 'PROPAL_SENTBYMAIL': + //case 'PROPAL_CLOSE_SIGNED': + //case 'PROPAL_CLOSE_REFUSED': + //case 'PROPAL_DELETE': + //case 'LINEPROPAL_INSERT': + //case 'LINEPROPAL_UPDATE': + //case 'LINEPROPAL_DELETE': - // SupplierProposal - //case 'SUPPLIER_PROPOSAL_CREATE': - //case 'SUPPLIER_PROPOSAL_MODIFY': - //case 'SUPPLIER_PROPOSAL_VALIDATE': - //case 'SUPPLIER_PROPOSAL_SENTBYMAIL': - //case 'SUPPLIER_PROPOSAL_CLOSE_SIGNED': - //case 'SUPPLIER_PROPOSAL_CLOSE_REFUSED': - //case 'SUPPLIER_PROPOSAL_DELETE': - //case 'LINESUPPLIER_PROPOSAL_INSERT': - //case 'LINESUPPLIER_PROPOSAL_UPDATE': - //case 'LINESUPPLIER_PROPOSAL_DELETE': + // SupplierProposal + //case 'SUPPLIER_PROPOSAL_CREATE': + //case 'SUPPLIER_PROPOSAL_MODIFY': + //case 'SUPPLIER_PROPOSAL_VALIDATE': + //case 'SUPPLIER_PROPOSAL_SENTBYMAIL': + //case 'SUPPLIER_PROPOSAL_CLOSE_SIGNED': + //case 'SUPPLIER_PROPOSAL_CLOSE_REFUSED': + //case 'SUPPLIER_PROPOSAL_DELETE': + //case 'LINESUPPLIER_PROPOSAL_INSERT': + //case 'LINESUPPLIER_PROPOSAL_UPDATE': + //case 'LINESUPPLIER_PROPOSAL_DELETE': - // Contracts - //case 'CONTRACT_CREATE': - //case 'CONTRACT_MODIFY': - //case 'CONTRACT_ACTIVATE': - //case 'CONTRACT_CANCEL': - //case 'CONTRACT_CLOSE': - //case 'CONTRACT_DELETE': - //case 'LINECONTRACT_INSERT': - //case 'LINECONTRACT_UPDATE': - //case 'LINECONTRACT_DELETE': + // Contracts + //case 'CONTRACT_CREATE': + //case 'CONTRACT_MODIFY': + //case 'CONTRACT_ACTIVATE': + //case 'CONTRACT_CANCEL': + //case 'CONTRACT_CLOSE': + //case 'CONTRACT_DELETE': + //case 'LINECONTRACT_INSERT': + //case 'LINECONTRACT_UPDATE': + //case 'LINECONTRACT_DELETE': - // Bills - //case 'BILL_CREATE': - //case 'BILL_MODIFY': - //case 'BILL_VALIDATE': - //case 'BILL_UNVALIDATE': - //case 'BILL_SENTBYMAIL': - //case 'BILL_CANCEL': - //case 'BILL_DELETE': - //case 'BILL_PAYED': - //case 'LINEBILL_INSERT': - //case 'LINEBILL_UPDATE': - //case 'LINEBILL_DELETE': + // Bills + //case 'BILL_CREATE': + //case 'BILL_MODIFY': + //case 'BILL_VALIDATE': + //case 'BILL_UNVALIDATE': + //case 'BILL_SENTBYMAIL': + //case 'BILL_CANCEL': + //case 'BILL_DELETE': + //case 'BILL_PAYED': + //case 'LINEBILL_INSERT': + //case 'LINEBILL_UPDATE': + //case 'LINEBILL_DELETE': - //Supplier Bill - //case 'BILL_SUPPLIER_CREATE': - //case 'BILL_SUPPLIER_UPDATE': - //case 'BILL_SUPPLIER_DELETE': - //case 'BILL_SUPPLIER_PAYED': - //case 'BILL_SUPPLIER_UNPAYED': - //case 'BILL_SUPPLIER_VALIDATE': - //case 'BILL_SUPPLIER_UNVALIDATE': - //case 'LINEBILL_SUPPLIER_CREATE': - //case 'LINEBILL_SUPPLIER_UPDATE': - //case 'LINEBILL_SUPPLIER_DELETE': + //Supplier Bill + //case 'BILL_SUPPLIER_CREATE': + //case 'BILL_SUPPLIER_UPDATE': + //case 'BILL_SUPPLIER_DELETE': + //case 'BILL_SUPPLIER_PAYED': + //case 'BILL_SUPPLIER_UNPAYED': + //case 'BILL_SUPPLIER_VALIDATE': + //case 'BILL_SUPPLIER_UNVALIDATE': + //case 'LINEBILL_SUPPLIER_CREATE': + //case 'LINEBILL_SUPPLIER_UPDATE': + //case 'LINEBILL_SUPPLIER_DELETE': - // Payments - //case 'PAYMENT_CUSTOMER_CREATE': - //case 'PAYMENT_SUPPLIER_CREATE': - //case 'PAYMENT_ADD_TO_BANK': - //case 'PAYMENT_DELETE': + // Payments + //case 'PAYMENT_CUSTOMER_CREATE': + //case 'PAYMENT_SUPPLIER_CREATE': + //case 'PAYMENT_ADD_TO_BANK': + //case 'PAYMENT_DELETE': - // Online - //case 'PAYMENT_PAYBOX_OK': - //case 'PAYMENT_PAYPAL_OK': - //case 'PAYMENT_STRIPE_OK': + // Online + //case 'PAYMENT_PAYBOX_OK': + //case 'PAYMENT_PAYPAL_OK': + //case 'PAYMENT_STRIPE_OK': - // Donation - //case 'DON_CREATE': - //case 'DON_UPDATE': - //case 'DON_DELETE': + // Donation + //case 'DON_CREATE': + //case 'DON_UPDATE': + //case 'DON_DELETE': - // Interventions - //case 'FICHINTER_CREATE': - //case 'FICHINTER_MODIFY': - //case 'FICHINTER_VALIDATE': - //case 'FICHINTER_DELETE': - //case 'LINEFICHINTER_CREATE': - //case 'LINEFICHINTER_UPDATE': - //case 'LINEFICHINTER_DELETE': + // Interventions + //case 'FICHINTER_CREATE': + //case 'FICHINTER_MODIFY': + //case 'FICHINTER_VALIDATE': + //case 'FICHINTER_DELETE': + //case 'LINEFICHINTER_CREATE': + //case 'LINEFICHINTER_UPDATE': + //case 'LINEFICHINTER_DELETE': - // Members - //case 'MEMBER_CREATE': - //case 'MEMBER_VALIDATE': - //case 'MEMBER_SUBSCRIPTION': - //case 'MEMBER_MODIFY': - //case 'MEMBER_NEW_PASSWORD': - //case 'MEMBER_RESILIATE': - //case 'MEMBER_DELETE': + // Members + //case 'MEMBER_CREATE': + //case 'MEMBER_VALIDATE': + //case 'MEMBER_SUBSCRIPTION': + //case 'MEMBER_MODIFY': + //case 'MEMBER_NEW_PASSWORD': + //case 'MEMBER_RESILIATE': + //case 'MEMBER_DELETE': - // Categories - //case 'CATEGORY_CREATE': - //case 'CATEGORY_MODIFY': - //case 'CATEGORY_DELETE': - //case 'CATEGORY_SET_MULTILANGS': + // Categories + //case 'CATEGORY_CREATE': + //case 'CATEGORY_MODIFY': + //case 'CATEGORY_DELETE': + //case 'CATEGORY_SET_MULTILANGS': - // Projects - //case 'PROJECT_CREATE': - //case 'PROJECT_MODIFY': - //case 'PROJECT_DELETE': + // Projects + //case 'PROJECT_CREATE': + //case 'PROJECT_MODIFY': + //case 'PROJECT_DELETE': - // Project tasks - //case 'TASK_CREATE': - //case 'TASK_MODIFY': - //case 'TASK_DELETE': + // Project tasks + //case 'TASK_CREATE': + //case 'TASK_MODIFY': + //case 'TASK_DELETE': - // Task time spent - //case 'TASK_TIMESPENT_CREATE': - //case 'TASK_TIMESPENT_MODIFY': - //case 'TASK_TIMESPENT_DELETE': - //case 'PROJECT_ADD_CONTACT': - //case 'PROJECT_DELETE_CONTACT': - //case 'PROJECT_DELETE_RESOURCE': + // Task time spent + //case 'TASK_TIMESPENT_CREATE': + //case 'TASK_TIMESPENT_MODIFY': + //case 'TASK_TIMESPENT_DELETE': + //case 'PROJECT_ADD_CONTACT': + //case 'PROJECT_DELETE_CONTACT': + //case 'PROJECT_DELETE_RESOURCE': - // Shipping - //case 'SHIPPING_CREATE': - //case 'SHIPPING_MODIFY': - //case 'SHIPPING_VALIDATE': - //case 'SHIPPING_SENTBYMAIL': - //case 'SHIPPING_BILLED': - //case 'SHIPPING_CLOSED': - //case 'SHIPPING_REOPEN': - //case 'SHIPPING_DELETE': + // Shipping + //case 'SHIPPING_CREATE': + //case 'SHIPPING_MODIFY': + //case 'SHIPPING_VALIDATE': + //case 'SHIPPING_SENTBYMAIL': + //case 'SHIPPING_BILLED': + //case 'SHIPPING_CLOSED': + //case 'SHIPPING_REOPEN': + //case 'SHIPPING_DELETE': - // and more... + // and more... - default: - dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id); - break; - } + default: + dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id); + break; + } - return 0; - } + return 0; + } } diff --git a/htdocs/modulebuilder/template/css/mymodule.css.php b/htdocs/modulebuilder/template/css/mymodule.css.php index 58987d52b83..af1566c0869 100644 --- a/htdocs/modulebuilder/template/css/mymodule.css.php +++ b/htdocs/modulebuilder/template/css/mymodule.css.php @@ -32,6 +32,11 @@ if (!defined('NOLOGIN')) define('NOLOGIN', 1); // File must be accessed if (!defined('NOREQUIREHTML')) define('NOREQUIREHTML', 1); if (!defined('NOREQUIREAJAX')) define('NOREQUIREAJAX', '1'); +session_cache_limiter('public'); +// false or '' = keep cache instruction added by server +// 'public' = remove cache instruction added by server +// and if no cache-control added later, a default cache delay (10800) will be added by PHP. + // Load Dolibarr environment $res = 0; // Try main.inc.php into web root known defined into CONTEXT_DOCUMENT_ROOT (not always defined) @@ -48,14 +53,10 @@ if (!$res) die("Include of main fails"); require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php'; -session_cache_limiter('public'); -// false or '' = keep cache instruction added by server -// 'public' = remove cache instruction added by server and if no cache-control added later, a default cache delay (10800) will be added by PHP. - // Load user to have $user->conf loaded (not done by default here because of NOLOGIN constant defined) and load permission if we need to use them in CSS /*if (empty($user->id) && ! empty($_SESSION['dol_login'])) { - $user->fetch('',$_SESSION['dol_login']); + $user->fetch('',$_SESSION['dol_login']); $user->getrights(); }*/ @@ -70,10 +71,10 @@ else header('Cache-Control: no-cache'); ?> div.mainmenu.mymodule::before { - content: "\f249"; + content: "\f249"; } div.mainmenu.mymodule { - background-image: none; + background-image: none; } .myclasscss { diff --git a/htdocs/modulebuilder/template/mymoduleindex.php b/htdocs/modulebuilder/template/mymoduleindex.php index 2d9bdf2f1e6..4a3356f1d7e 100644 --- a/htdocs/modulebuilder/template/mymoduleindex.php +++ b/htdocs/modulebuilder/template/mymoduleindex.php @@ -88,7 +88,7 @@ if (! empty($conf->mymodule->enabled) && $user->rights->mymodule->read) $langs->load("orders"); $sql = "SELECT c.rowid, c.ref, c.ref_client, c.total_ht, c.tva as total_tva, c.total_ttc, s.rowid as socid, s.nom as name, s.client, s.canvas"; - $sql.= ", s.code_client"; + $sql.= ", s.code_client"; $sql.= " FROM ".MAIN_DB_PREFIX."commande as c"; $sql.= ", ".MAIN_DB_PREFIX."societe as s"; if (! $user->rights->societe->client->voir && ! $socid) $sql.= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; @@ -117,21 +117,21 @@ if (! empty($conf->mymodule->enabled) && $user->rights->mymodule->read) $obj = $db->fetch_object($resql); print ''; + $orderstatic->id=$obj->rowid; + $orderstatic->ref=$obj->ref; + $orderstatic->ref_client=$obj->ref_client; + $orderstatic->total_ht = $obj->total_ht; + $orderstatic->total_tva = $obj->total_tva; + $orderstatic->total_ttc = $obj->total_ttc; + print $orderstatic->getNomUrl(1); + print ''; print ''; print ''; @@ -172,7 +172,7 @@ $max = 3; if (! empty($conf->mymodule->enabled) && $user->rights->mymodule->read) { $sql = "SELECT s.rowid, s.nom as name, s.client, s.datec, s.tms, s.canvas"; - $sql.= ", s.code_client"; + $sql.= ", s.code_client"; $sql.= " FROM ".MAIN_DB_PREFIX."societe as s"; if (! $user->rights->societe->client->voir && ! $socid) $sql.= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; $sql.= " WHERE s.client IN (1, 2, 3)"; @@ -192,7 +192,7 @@ if (! empty($conf->mymodule->enabled) && $user->rights->mymodule->read) print ''; print ''; print ''; @@ -205,9 +205,9 @@ if (! empty($conf->mymodule->enabled) && $user->rights->mymodule->read) $companystatic->id=$objp->rowid; $companystatic->name=$objp->name; $companystatic->client=$objp->client; - $companystatic->code_client = $objp->code_client; - $companystatic->code_fournisseur = $objp->code_fournisseur; - $companystatic->canvas=$objp->canvas; + $companystatic->code_client = $objp->code_client; + $companystatic->code_fournisseur = $objp->code_fournisseur; + $companystatic->canvas=$objp->canvas; print ''; print ''; print ''; } @@ -632,27 +627,27 @@ if ($action == 'create' && $user->rights->projet->creer) if (!empty($conf->global->PROJECT_USE_OPPORTUNITIES)) { // Opportunity status - print ''; + print ''; print ''; // Opportunity probability - print ''; - print ''; + print ''; print ''; // Opportunity amount - print ''; - print ''; + print ''; + print ''; print ''; } // Budget print ''; - print ''; + print ''; print ''; // Description @@ -667,7 +662,7 @@ if ($action == 'create' && $user->rights->projet->creer) print '"; } @@ -690,9 +685,7 @@ if ($action == 'create' && $user->rights->projet->creer) { print '     '; print ''; - } - else - { + } else { print '     '; print ''; } @@ -730,8 +723,7 @@ if ($action == 'create' && $user->rights->projet->creer) }); }); '; -} -elseif ($object->id > 0) +} elseif ($object->id > 0) { /* * Show or edit @@ -833,9 +825,22 @@ elseif ($object->id > 0) print ''; } @@ -884,8 +888,9 @@ elseif ($object->id > 0) if (!empty($conf->global->PROJECT_USE_OPPORTUNITIES)) { + $classfortr = ($object->usage_opportunity ? '' : ' hideobject'); // Opportunity status - print ''; + print ''; print ''; // Opportunity probability - print ''; - print ''; + print ''; print ''; // Opportunity amount - print ''; - print ''; + print ''; + print ''; print ''; } @@ -923,7 +928,7 @@ elseif ($object->id > 0) // Budget print ''; - print ''; + print ''; print ''; // Description @@ -936,14 +941,14 @@ elseif ($object->id > 0) // Tags-Categories if ($conf->categorie->enabled) { - print '"; } @@ -957,9 +962,7 @@ elseif ($object->id > 0) } print '
    trans("MyObject"); ?>getNomUrl(1); ?>trans("MyObject"); ?>getNomUrl(1); ?> date, 'day'); ?> getLibStatut(7); ?> ">transnoentitiesnoconv("RemoveLink"), 'unlink'); ?>
    '; - $orderstatic->id=$obj->rowid; - $orderstatic->ref=$obj->ref; - $orderstatic->ref_client=$obj->ref_client; - $orderstatic->total_ht = $obj->total_ht; - $orderstatic->total_tva = $obj->total_tva; - $orderstatic->total_ttc = $obj->total_ttc; - print $orderstatic->getNomUrl(1); - print ''; $companystatic->id=$obj->socid; $companystatic->name=$obj->name; $companystatic->client=$obj->client; - $companystatic->code_client = $obj->code_client; - $companystatic->code_fournisseur = $obj->code_fournisseur; - $companystatic->canvas=$obj->canvas; + $companystatic->code_client = $obj->code_client; + $companystatic->code_fournisseur = $obj->code_fournisseur; + $companystatic->canvas=$obj->canvas; print $companystatic->getNomUrl(1,'customer',16); print ''.price($obj->total_ttc).'
    '; if (empty($conf->global->SOCIETE_DISABLE_PROSPECTS) && empty($conf->global->SOCIETE_DISABLE_CUSTOMERS)) print $langs->trans("BoxTitleLastCustomersOrProspects",$max); - else if (! empty($conf->global->SOCIETE_DISABLE_CUSTOMERS)) print $langs->trans("BoxTitleLastModifiedProspects",$max); + else if (! empty($conf->global->SOCIETE_DISABLE_CUSTOMERS)) print $langs->trans("BoxTitleLastModifiedProspects",$max); else print $langs->trans("BoxTitleLastModifiedCustomers",$max); print ''.$langs->trans("DateModificationShort").'
    '.$companystatic->getNomUrl(1,'customer',48).''; diff --git a/htdocs/modulebuilder/template/myobject_agenda.php b/htdocs/modulebuilder/template/myobject_agenda.php index 89efa438de9..4da40f0eb9a 100644 --- a/htdocs/modulebuilder/template/myobject_agenda.php +++ b/htdocs/modulebuilder/template/myobject_agenda.php @@ -54,14 +54,11 @@ $action = GETPOST('action', 'alpha'); $cancel = GETPOST('cancel', 'aZ09'); $backtopage = GETPOST('backtopage', 'alpha'); -if (GETPOST('actioncode', 'array')) -{ - $actioncode = GETPOST('actioncode', 'array', 3); - if (!count($actioncode)) $actioncode = '0'; -} -else -{ - $actioncode = GETPOST("actioncode", "alpha", 3) ?GETPOST("actioncode", "alpha", 3) : (GETPOST("actioncode") == '0' ? '0' : (empty($conf->global->AGENDA_DEFAULT_FILTER_TYPE_FOR_OBJECT) ? '' : $conf->global->AGENDA_DEFAULT_FILTER_TYPE_FOR_OBJECT)); +if (GETPOST('actioncode', 'array')) { + $actioncode = GETPOST('actioncode', 'array', 3); + if (!count($actioncode)) $actioncode = '0'; +} else { + $actioncode = GETPOST("actioncode", "alpha", 3) ?GETPOST("actioncode", "alpha", 3) : (GETPOST("actioncode") == '0' ? '0' : (empty($conf->global->AGENDA_DEFAULT_FILTER_TYPE_FOR_OBJECT) ? '' : $conf->global->AGENDA_DEFAULT_FILTER_TYPE_FOR_OBJECT)); } $search_agenda_label = GETPOST('search_agenda_label'); @@ -106,19 +103,19 @@ if ($reshook < 0) setEventMessages($hookmanager->error, $hookmanager->errors, 'e if (empty($reshook)) { - // Cancel - if (GETPOST('cancel', 'alpha') && !empty($backtopage)) - { - header("Location: ".$backtopage); - exit; - } + // Cancel + if (GETPOST('cancel', 'alpha') && !empty($backtopage)) + { + header("Location: ".$backtopage); + exit; + } - // Purge search criteria - if (GETPOST('button_removefilter_x', 'alpha') || GETPOST('button_removefilter.x', 'alpha') || GETPOST('button_removefilter', 'alpha')) // All tests are required to be compatible with all browsers - { - $actioncode = ''; - $search_agenda_label = ''; - } + // Purge search criteria + if (GETPOST('button_removefilter_x', 'alpha') || GETPOST('button_removefilter.x', 'alpha') || GETPOST('button_removefilter', 'alpha')) // All tests are required to be compatible with all browsers + { + $actioncode = ''; + $search_agenda_label = ''; + } } @@ -148,53 +145,51 @@ if ($object->id > 0) $morehtmlref = '
    '; /* - // Ref customer - $morehtmlref.=$form->editfieldkey("RefCustomer", 'ref_client', $object->ref_client, $object, 0, 'string', '', 0, 1); - $morehtmlref.=$form->editfieldval("RefCustomer", 'ref_client', $object->ref_client, $object, 0, 'string', '', null, null, '', 1); - // Thirdparty - $morehtmlref.='
    '.$langs->trans('ThirdParty') . ' : ' . $object->thirdparty->getNomUrl(1); - // Project - if (! empty($conf->projet->enabled)) - { - $langs->load("projects"); - $morehtmlref.='
    '.$langs->trans('Project') . ' '; - if ($permissiontoadd) - { - if ($action != 'classify') - //$morehtmlref.='' . img_edit($langs->transnoentitiesnoconv('SetProject')) . ' : '; - $morehtmlref.=' : '; - if ($action == 'classify') { - //$morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'projectid', 0, 0, 1, 1); - $morehtmlref.='
    '; - $morehtmlref.=''; - $morehtmlref.=''; - $morehtmlref.=$formproject->select_projects($object->socid, $object->fk_project, 'projectid', $maxlength, 0, 1, 0, 1, 0, 0, '', 1); - $morehtmlref.=''; - $morehtmlref.='
    '; - } else { - $morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'none', 0, 0, 0, 1); - } - } else { - if (! empty($object->fk_project)) { - $proj = new Project($db); - $proj->fetch($object->fk_project); - $morehtmlref.=''; - $morehtmlref.=$proj->ref; - $morehtmlref.=''; - } else { - $morehtmlref.=''; - } - } - }*/ + // Ref customer + $morehtmlref.=$form->editfieldkey("RefCustomer", 'ref_client', $object->ref_client, $object, 0, 'string', '', 0, 1); + $morehtmlref.=$form->editfieldval("RefCustomer", 'ref_client', $object->ref_client, $object, 0, 'string', '', null, null, '', 1); + // Thirdparty + $morehtmlref.='
    '.$langs->trans('ThirdParty') . ' : ' . (is_object($object->thirdparty) ? $object->thirdparty->getNomUrl(1) : ''); + // Project + if (! empty($conf->projet->enabled)) + { + $langs->load("projects"); + $morehtmlref.='
    '.$langs->trans('Project') . ' '; + if ($permissiontoadd) + { + if ($action != 'classify') + //$morehtmlref.='' . img_edit($langs->transnoentitiesnoconv('SetProject')) . ' : '; + $morehtmlref.=' : '; + if ($action == 'classify') { + //$morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'projectid', 0, 0, 1, 1); + $morehtmlref.='
    '; + $morehtmlref.=''; + $morehtmlref.=''; + $morehtmlref.=$formproject->select_projects($object->socid, $object->fk_project, 'projectid', $maxlength, 0, 1, 0, 1, 0, 0, '', 1); + $morehtmlref.=''; + $morehtmlref.='
    '; + } else { + $morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'none', 0, 0, 0, 1); + } + } else { + if (! empty($object->fk_project)) { + $proj = new Project($db); + $proj->fetch($object->fk_project); + $morehtmlref .= ': '.$proj->getNomUrl(); + } else { + $morehtmlref .= ''; + } + } + }*/ $morehtmlref .= '
    '; dol_banner_tab($object, 'ref', $linkback, 1, 'ref', 'ref', $morehtmlref); - print '
    '; - print '
    '; + print '
    '; + print '
    '; - $object->info($object->id); + $object->info($object->id); dol_print_object_info($object, 1); print '
    '; @@ -205,54 +200,52 @@ if ($object->id > 0) // Actions buttons - $objthirdparty = $object; - $objcon = new stdClass(); + $objthirdparty = $object; + $objcon = new stdClass(); - $out = '&origin='.$object->element.'&originid='.$object->id; - $permok = $user->rights->agenda->myactions->create; - if ((!empty($objthirdparty->id) || !empty($objcon->id)) && $permok) - { - //$out.='trans("AddAnAction"),'filenew'); - //$out.=""; + $out = '&origin='.$object->element.'&originid='.$object->id; + $permok = $user->rights->agenda->myactions->create; + if ((!empty($objthirdparty->id) || !empty($objcon->id)) && $permok) + { + //$out.='trans("AddAnAction"),'filenew'); + //$out.=""; } print '
    '; - if (!empty($conf->agenda->enabled)) - { - if (!empty($user->rights->agenda->myactions->create) || !empty($user->rights->agenda->allactions->create)) - { - print ''.$langs->trans("AddAction").''; - } - else - { - print ''.$langs->trans("AddAction").''; - } - } + if (!empty($conf->agenda->enabled)) + { + if (!empty($user->rights->agenda->myactions->create) || !empty($user->rights->agenda->allactions->create)) + { + print ''.$langs->trans("AddAction").''; + } else { + print ''.$langs->trans("AddAction").''; + } + } - print '
    '; + print '
    '; - if (!empty($conf->agenda->enabled) && (!empty($user->rights->agenda->myactions->read) || !empty($user->rights->agenda->allactions->read))) - { - $param = '&id='.$object->id.'&socid='.$socid; - if (!empty($contextpage) && $contextpage != $_SERVER["PHP_SELF"]) $param .= '&contextpage='.urlencode($contextpage); - if ($limit > 0 && $limit != $conf->liste_limit) $param .= '&limit='.urlencode($limit); + if (!empty($conf->agenda->enabled) && (!empty($user->rights->agenda->myactions->read) || !empty($user->rights->agenda->allactions->read))) + { + $param = '&id='.$object->id.'&socid='.$socid; + if (!empty($contextpage) && $contextpage != $_SERVER["PHP_SELF"]) $param .= '&contextpage='.urlencode($contextpage); + if ($limit > 0 && $limit != $conf->liste_limit) $param .= '&limit='.urlencode($limit); //print load_fiche_titre($langs->trans("ActionsOnMyObject"), '', ''); - // List of all actions + // List of all actions $filters = array(); - $filters['search_agenda_label'] = $search_agenda_label; + $filters['search_agenda_label'] = $search_agenda_label; - // TODO Replace this with same code than into list.php - show_actions_done($conf, $langs, $db, $object, null, 0, $actioncode, '', $filters, $sortfield, $sortorder); - } + // TODO Replace this with same code than into list.php + show_actions_done($conf, $langs, $db, $object, null, 0, $actioncode, '', $filters, $sortfield, $sortorder); + } } // End of page diff --git a/htdocs/modulebuilder/template/myobject_card.php b/htdocs/modulebuilder/template/myobject_card.php index e299fec88c5..d37cc7f5e05 100644 --- a/htdocs/modulebuilder/template/myobject_card.php +++ b/htdocs/modulebuilder/template/myobject_card.php @@ -127,47 +127,47 @@ if ($reshook < 0) setEventMessages($hookmanager->error, $hookmanager->errors, 'e if (empty($reshook)) { - $error = 0; + $error = 0; - $backurlforlist = dol_buildpath('/mymodule/myobject_list.php', 1); + $backurlforlist = dol_buildpath('/mymodule/myobject_list.php', 1); - if (empty($backtopage) || ($cancel && empty($id))) { - if (empty($backtopage) || ($cancel && strpos($backtopage, '__ID__'))) { - if (empty($id) && (($action != 'add' && $action != 'create') || $cancel)) $backtopage = $backurlforlist; - else $backtopage = dol_buildpath('/mymodule/myobject_card.php', 1).'?id='.($id > 0 ? $id : '__ID__'); - } - } - $triggermodname = 'MYMODULE_MYOBJECT_MODIFY'; // Name of trigger action code to execute when we modify record + if (empty($backtopage) || ($cancel && empty($id))) { + if (empty($backtopage) || ($cancel && strpos($backtopage, '__ID__'))) { + if (empty($id) && (($action != 'add' && $action != 'create') || $cancel)) $backtopage = $backurlforlist; + else $backtopage = dol_buildpath('/mymodule/myobject_card.php', 1).'?id='.($id > 0 ? $id : '__ID__'); + } + } + $triggermodname = 'MYMODULE_MYOBJECT_MODIFY'; // Name of trigger action code to execute when we modify record - // Actions cancel, add, update, update_extras, confirm_validate, confirm_delete, confirm_deleteline, confirm_clone, confirm_close, confirm_setdraft, confirm_reopen - include DOL_DOCUMENT_ROOT.'/core/actions_addupdatedelete.inc.php'; + // Actions cancel, add, update, update_extras, confirm_validate, confirm_delete, confirm_deleteline, confirm_clone, confirm_close, confirm_setdraft, confirm_reopen + include DOL_DOCUMENT_ROOT.'/core/actions_addupdatedelete.inc.php'; - // Actions when linking object each other - include DOL_DOCUMENT_ROOT.'/core/actions_dellink.inc.php'; + // Actions when linking object each other + include DOL_DOCUMENT_ROOT.'/core/actions_dellink.inc.php'; - // Actions when printing a doc from card - include DOL_DOCUMENT_ROOT.'/core/actions_printing.inc.php'; + // Actions when printing a doc from card + include DOL_DOCUMENT_ROOT.'/core/actions_printing.inc.php'; - // Action to move up and down lines of object - //include DOL_DOCUMENT_ROOT.'/core/actions_lineupdown.inc.php'; + // Action to move up and down lines of object + //include DOL_DOCUMENT_ROOT.'/core/actions_lineupdown.inc.php'; - // Action to build doc - include DOL_DOCUMENT_ROOT.'/core/actions_builddoc.inc.php'; + // Action to build doc + include DOL_DOCUMENT_ROOT.'/core/actions_builddoc.inc.php'; - if ($action == 'set_thirdparty' && $permissiontoadd) - { - $object->setValueFrom('fk_soc', GETPOST('fk_soc', 'int'), '', '', 'date', '', $user, 'MYOBJECT_MODIFY'); - } - if ($action == 'classin' && $permissiontoadd) - { - $object->setProject(GETPOST('projectid', 'int')); - } + if ($action == 'set_thirdparty' && $permissiontoadd) + { + $object->setValueFrom('fk_soc', GETPOST('fk_soc', 'int'), '', '', 'date', '', $user, 'MYOBJECT_MODIFY'); + } + if ($action == 'classin' && $permissiontoadd) + { + $object->setProject(GETPOST('projectid', 'int')); + } - // Actions to send emails - $triggersendname = 'MYOBJECT_SENTBYMAIL'; - $autocopy = 'MAIN_MAIL_AUTOCOPY_MYOBJECT_TO'; - $trackid = 'myobject'.$object->id; - include DOL_DOCUMENT_ROOT.'/core/actions_sendmails.inc.php'; + // Actions to send emails + $triggersendname = 'MYOBJECT_SENTBYMAIL'; + $autocopy = 'MAIN_MAIL_AUTOCOPY_MYOBJECT_TO'; + $trackid = 'myobject'.$object->id; + include DOL_DOCUMENT_ROOT.'/core/actions_sendmails.inc.php'; } @@ -182,7 +182,9 @@ if (empty($reshook)) $form = new Form($db); $formfile = new FormFile($db); -llxHeader('', $langs->trans('MyObject'), ''); +$title = $langs->trans("MyObject"); +$help_url = ''; +llxHeader('', $title, $help_url); // Example : Adding jquery code print ''; print '
    '; } if (empty($conf->global->PROJECT_HIDE_TASKS)) @@ -567,7 +563,7 @@ if ($action == 'create' && $user->rights->projet->creer) print $form->textwithpicto($langs->trans("ProjectFollowTasks"), $htmltext); print '
    '; } - if (!empty($conf->global->PROJECT_BILL_TIME_SPENT)) + if (empty($conf->global->PROJECT_HIDE_TASKS) && !empty($conf->global->PROJECT_BILL_TIME_SPENT)) { print ' '; $htmltext = $langs->trans("ProjectBillTimeDescription"); @@ -591,13 +587,12 @@ if ($action == 'create' && $user->rights->projet->creer) print '
    '; $filteronlist = ''; if (!empty($conf->global->PROJECT_FILTER_FOR_THIRDPARTY_LIST)) $filteronlist = $conf->global->PROJECT_FILTER_FOR_THIRDPARTY_LIST; - $text = $form->select_company(GETPOST('socid', 'int'), 'socid', $filteronlist, 'SelectThirdParty', 1, 0, array(), 0, 'minwidth300'); + $text = img_picto('', 'company').$form->select_company(GETPOST('socid', 'int'), 'socid', $filteronlist, 'SelectThirdParty', 1, 0, array(), 0, 'minwidth300 widthcentpercentminusx'); if (empty($conf->global->PROJECT_CAN_ALWAYS_LINK_TO_ALL_SUPPLIERS) && empty($conf->dol_use_jmobile)) { $texthelp = $langs->trans("IfNeedToUseOtherObjectKeepEmpty"); print $form->textwithtooltip($text.' '.img_help(), $texthelp, 1); - } - else print $text; + } else print $text; if (!GETPOSTISSET('backtopage')) print ' '; print '
    '.$langs->trans("OpportunityStatus").'
    '.$langs->trans("OpportunityStatus").''; print $formproject->selectOpportunityStatus('opp_status', GETPOST('opp_status') ?GETPOST('opp_status') : $object->opp_status); print '
    '.$langs->trans("OpportunityProbability").' %'; - print ''; + print '
    '.$langs->trans("OpportunityProbability").' %'; + print ''; print '
    '.$langs->trans("OpportunityAmount").'
    '.$langs->trans("OpportunityAmount").'
    '.$langs->trans("Budget").'
    '.$langs->trans("Categories").''; $cate_arbo = $form->select_all_categories(Categorie::TYPE_PROJECT, '', 'parent', 64, 0, 1); $arrayselected = GETPOST('categories', 'array'); - print $form->multiselectarray('categories', $cate_arbo, $arrayselected, '', 0, '', 0, '100%'); + print img_picto('', 'category').$form->multiselectarray('categories', $cate_arbo, $arrayselected, '', 0, 'quatrevingtpercent widthcentpercentminusx', 0, 0); print "
    '; if (!empty($conf->global->PROJECT_USE_OPPORTUNITIES)) { - print 'usage_opportunity ? ' checked="checked"' : '')).'"> '; + print 'usage_opportunity ? ' checked="checked"' : '')).'"> '; $htmltext = $langs->trans("ProjectFollowOpportunity"); print $form->textwithpicto($langs->trans("ProjectFollowOpportunity"), $htmltext); + print ''; print '
    '; } if (empty($conf->global->PROJECT_HIDE_TASKS)) @@ -845,7 +850,7 @@ elseif ($object->id > 0) print $form->textwithpicto($langs->trans("ProjectFollowTasks"), $htmltext); print '
    '; } - if (!empty($conf->global->PROJECT_BILL_TIME_SPENT)) + if (empty($conf->global->PROJECT_HIDE_TASKS) && !empty($conf->global->PROJECT_BILL_TIME_SPENT)) { print 'usage_bill_time ? ' checked="checked"' : '')).'"> '; $htmltext = $langs->trans("ProjectBillTimeDescription"); @@ -869,8 +874,7 @@ elseif ($object->id > 0) { $texthelp = $langs->trans("IfNeedToUseOtherObjectKeepEmpty"); print $form->textwithtooltip($text.' '.img_help(), $texthelp, 1, 0, '', '', 2); - } - else print $text; + } else print $text; print '
    '.$langs->trans("OpportunityStatus").'
    '.$langs->trans("OpportunityStatus").''; print $formproject->selectOpportunityStatus('opp_status', $object->opp_status, 1, 0, 0, 0, 'inline-block valignmiddle'); print '
    '.$langs->trans("OpportunityProbability").' %'; + print '
    '.$langs->trans("OpportunityProbability").' %'; print ''; print '
    '.$langs->trans("OpportunityAmount").'
    '.$langs->trans("OpportunityAmount").'
    '.$langs->trans("Budget").'
    '.$langs->trans("Categories").''; + print '
    '.$langs->trans("Categories").''; $cate_arbo = $form->select_all_categories(Categorie::TYPE_PROJECT, '', 'parent', 64, 0, 1); $c = new Categorie($db); $cats = $c->containing($object->id, Categorie::TYPE_PROJECT); foreach ($cats as $cat) { $arrayselected[] = $cat->id; } - print $form->multiselectarray('categories', $cate_arbo, $arrayselected, '', 0, '', 0, '100%'); + print img_picto('', 'category').$form->multiselectarray('categories', $cate_arbo, $arrayselected, 0, 0, 'quatrevingtpercent widthcentpercentminusx', 0, '0'); print "
    '; - } - else - { + } else { dol_fiche_head($head, 'project', $langs->trans("Project"), -1, ($object->public ? 'projectpub' : 'project')); // Project card @@ -1212,9 +1215,7 @@ elseif ($object->id > 0) if ($userWrite > 0) { print ''.$langs->trans("Modify").''; - } - else - { + } else { print ''.$langs->trans('Modify').''; } } @@ -1225,9 +1226,7 @@ elseif ($object->id > 0) if ($userWrite > 0) { print ''.$langs->trans("Validate").''; - } - else - { + } else { print ''.$langs->trans('Validate').''; } } @@ -1238,9 +1237,7 @@ elseif ($object->id > 0) if ($userWrite > 0) { print ''.$langs->trans("Close").''; - } - else - { + } else { print ''.$langs->trans('Close').''; } } @@ -1251,9 +1248,7 @@ elseif ($object->id > 0) if ($userWrite > 0) { print ''.$langs->trans("ReOpen").''; - } - else - { + } else { print ''.$langs->trans('ReOpen').''; } } @@ -1319,9 +1314,7 @@ elseif ($object->id > 0) if ($userWrite > 0) { print ''.$langs->trans('ToClone').''; - } - else - { + } else { print ''.$langs->trans('ToClone').''; } } @@ -1332,9 +1325,7 @@ elseif ($object->id > 0) if ($userDelete > 0 || ($object->statut == 0 && $user->rights->projet->creer)) { print ''.$langs->trans("Delete").''; - } - else - { + } else { print ''.$langs->trans('Delete').''; } } @@ -1391,9 +1382,7 @@ elseif ($object->id > 0) // Hook to add more things on page $parameters = array(); $reshook = $hookmanager->executeHooks('mainCardTabAddMore', $parameters, $object, $action); // Note that $action and $object may have been modified by hook -} -else -{ +} else { print $langs->trans("RecordNotFound"); } diff --git a/htdocs/projet/class/api_projects.class.php b/htdocs/projet/class/api_projects.class.php index f8a076c89ee..5ef21879c7f 100644 --- a/htdocs/projet/class/api_projects.class.php +++ b/htdocs/projet/class/api_projects.class.php @@ -171,8 +171,7 @@ class Projects extends DolibarrApi } $i++; } - } - else { + } else { throw new RestException(503, 'Error when retrieve project list : '.$db->lasterror()); } if (!count($obj_ret)) { @@ -452,9 +451,7 @@ class Projects extends DolibarrApi if ($this->project->update(DolibarrApiAccess::$user) >= 0) { return $this->get($id); - } - else - { + } else { throw new RestException(500, $this->project->error); } } diff --git a/htdocs/projet/class/api_tasks.class.php b/htdocs/projet/class/api_tasks.class.php index 65060f4d8ff..084292d0727 100644 --- a/htdocs/projet/class/api_tasks.class.php +++ b/htdocs/projet/class/api_tasks.class.php @@ -173,8 +173,7 @@ class Tasks extends DolibarrApi } $i++; } - } - else { + } else { throw new RestException(503, 'Error when retrieve task list : '.$db->lasterror()); } if (!count($obj_ret)) { @@ -450,9 +449,7 @@ class Tasks extends DolibarrApi if ($this->task->update(DolibarrApiAccess::$user) > 0) { return $this->get($id); - } - else - { + } else { throw new RestException(500, $this->task->error); } } diff --git a/htdocs/projet/class/project.class.php b/htdocs/projet/class/project.class.php index 0e793361d2b..7389af9083c 100644 --- a/htdocs/projet/class/project.class.php +++ b/htdocs/projet/class/project.class.php @@ -34,27 +34,27 @@ require_once DOL_DOCUMENT_ROOT.'/core/class/commonobject.class.php'; class Project extends CommonObject { - /** + /** * @var string ID to identify managed object */ public $element = 'project'; - /** + /** * @var string Name of table without prefix where object is stored */ public $table_element = 'projet'; - /** + /** * @var int Name of subtable line */ public $table_element_line = 'projet_task'; - /** + /** * @var int Name of field date */ public $table_element_date; - /** + /** * @var int Field with ID of parent key if this field has a parent */ public $fk_element = 'fk_projet'; @@ -63,19 +63,19 @@ class Project extends CommonObject * 0=No test on entity, 1=Test with field entity, 2=Test with link by societe * @var int */ - public $ismultientitymanaged = 1; + public $ismultientitymanaged = 1; - /** - * @var string String with name of icon for myobject. Must be the part after the 'object_' into object_myobject.png - */ - public $picto = 'projectpub'; + /** + * @var string String with name of icon for myobject. Must be the part after the 'object_' into object_myobject.png + */ + public $picto = 'project'; - /** - * {@inheritdoc} - */ - protected $table_ref_field = 'ref'; + /** + * {@inheritdoc} + */ + protected $table_ref_field = 'ref'; - /** + /** * @var string description */ public $description; @@ -83,41 +83,41 @@ class Project extends CommonObject /** * @var string */ - public $title; + public $title; - public $date_start; - public $date_end; - public $date_close; + public $date_start; + public $date_end; + public $date_close; - public $socid; // To store id of thirdparty - public $thirdparty_name; // To store name of thirdparty (defined only in some cases) + public $socid; // To store id of thirdparty + public $thirdparty_name; // To store name of thirdparty (defined only in some cases) - public $user_author_id; //!< Id of project creator. Not defined if shared project. + public $user_author_id; //!< Id of project creator. Not defined if shared project. - /** - * @var int user close id - */ - public $fk_user_close; + /** + * @var int user close id + */ + public $fk_user_close; - /** - * @var int user close id - */ + /** + * @var int user close id + */ public $user_close_id; - public $public; //!< Tell if this is a public or private project - public $budget_amount; - public $usage_bill_time; // Is the time spent on project must be invoiced or not + public $public; //!< Tell if this is a public or private project + public $budget_amount; + public $usage_bill_time; // Is the time spent on project must be invoiced or not - public $statuts_short; - public $statuts_long; + public $statuts_short; + public $statuts_long; - public $statut; // 0=draft, 1=opened, 2=closed - public $opp_status; // opportunity status, into table llx_c_lead_status + public $statut; // 0=draft, 1=opened, 2=closed + public $opp_status; // opportunity status, into table llx_c_lead_status public $opp_percent; // opportunity probability - public $oldcopy; + public $oldcopy; - public $weekWorkLoad; // Used to store workload details of a projet - public $weekWorkLoadPerTask; // Used to store workload details of tasks of a projet + public $weekWorkLoad; // Used to store workload details of a projet + public $weekWorkLoadPerTask; // Used to store workload details of tasks of a projet /** * @var int Creation date @@ -164,7 +164,7 @@ class Project extends CommonObject const STATUS_CLOSED = 2; - public $fields = array( + public $fields=array( 'rowid' =>array('type'=>'integer', 'label'=>'ID', 'enabled'=>1, 'visible'=>-1, 'notnull'=>1, 'position'=>10), 'fk_soc' =>array('type'=>'integer', 'label'=>'Fk soc', 'enabled'=>1, 'visible'=>-1, 'position'=>15), 'datec' =>array('type'=>'datetime', 'label'=>'Datec', 'enabled'=>1, 'visible'=>-1, 'position'=>20), @@ -196,441 +196,411 @@ class Project extends CommonObject ); - /** - * Constructor - * - * @param DoliDB $db Database handler - */ - public function __construct($db) - { - $this->db = $db; + /** + * Constructor + * + * @param DoliDB $db Database handler + */ + public function __construct($db) + { + $this->db = $db; - $this->statuts_short = array(0 => 'Draft', 1 => 'Opened', 2 => 'Closed'); - $this->statuts_long = array(0 => 'Draft', 1 => 'Opened', 2 => 'Closed'); - } + $this->statuts_short = array(0 => 'Draft', 1 => 'Opened', 2 => 'Closed'); + $this->statuts_long = array(0 => 'Draft', 1 => 'Opened', 2 => 'Closed'); + } - /** - * Create a project into database - * - * @param User $user User making creation - * @param int $notrigger Disable triggers - * @return int <0 if KO, id of created project if OK - */ - public function create($user, $notrigger = 0) - { - global $conf, $langs; + /** + * Create a project into database + * + * @param User $user User making creation + * @param int $notrigger Disable triggers + * @return int <0 if KO, id of created project if OK + */ + public function create($user, $notrigger = 0) + { + global $conf, $langs; - $error = 0; - $ret = 0; + $error = 0; + $ret = 0; - $now = dol_now(); + $now = dol_now(); - // Clean parameters - $this->note_private = dol_substr($this->note_private, 0, 65535); - $this->note_public = dol_substr($this->note_public, 0, 65535); + // Clean parameters + $this->note_private = dol_substr($this->note_private, 0, 65535); + $this->note_public = dol_substr($this->note_public, 0, 65535); - // Check parameters - if (!trim($this->ref)) - { - $this->error = 'ErrorFieldsRequired'; - dol_syslog(get_class($this)."::create error -1 ref null", LOG_ERR); - return -1; - } - if (!empty($conf->global->PROJECT_THIRDPARTY_REQUIRED) && !($this->socid > 0)) - { - $this->error = 'ErrorFieldsRequired'; - dol_syslog(get_class($this)."::create error -1 thirdparty not defined and option PROJECT_THIRDPARTY_REQUIRED is set", LOG_ERR); - return -1; - } + // Check parameters + if (!trim($this->ref)) + { + $this->error = 'ErrorFieldsRequired'; + dol_syslog(get_class($this)."::create error -1 ref null", LOG_ERR); + return -1; + } + if (!empty($conf->global->PROJECT_THIRDPARTY_REQUIRED) && !($this->socid > 0)) + { + $this->error = 'ErrorFieldsRequired'; + dol_syslog(get_class($this)."::create error -1 thirdparty not defined and option PROJECT_THIRDPARTY_REQUIRED is set", LOG_ERR); + return -1; + } - // Create project - $this->db->begin(); + // Create project + $this->db->begin(); - $sql = "INSERT INTO ".MAIN_DB_PREFIX."projet ("; - $sql .= "ref"; - $sql .= ", title"; - $sql .= ", description"; - $sql .= ", fk_soc"; - $sql .= ", fk_user_creat"; - $sql .= ", fk_statut"; - $sql .= ", fk_opp_status"; - $sql .= ", opp_percent"; - $sql .= ", public"; - $sql .= ", datec"; - $sql .= ", dateo"; - $sql .= ", datee"; - $sql .= ", opp_amount"; - $sql .= ", budget_amount"; - $sql .= ", usage_opportunity"; - $sql .= ", usage_task"; - $sql .= ", usage_bill_time"; - $sql .= ", usage_organize_event"; - $sql .= ", note_private"; - $sql .= ", note_public"; - $sql .= ", entity"; - $sql .= ") VALUES ("; - $sql .= "'".$this->db->escape($this->ref)."'"; - $sql .= ", '".$this->db->escape($this->title)."'"; - $sql .= ", '".$this->db->escape($this->description)."'"; - $sql .= ", ".($this->socid > 0 ? $this->socid : "null"); - $sql .= ", ".$user->id; - $sql .= ", ".(is_numeric($this->statut) ? $this->statut : '0'); - $sql .= ", ".((is_numeric($this->opp_status) && $this->opp_status > 0) ? $this->opp_status : 'NULL'); - $sql .= ", ".(is_numeric($this->opp_percent) ? $this->opp_percent : 'NULL'); - $sql .= ", ".($this->public ? 1 : 0); - $sql .= ", '".$this->db->idate($now)."'"; - $sql .= ", ".($this->date_start != '' ? "'".$this->db->idate($this->date_start)."'" : 'null'); - $sql .= ", ".($this->date_end != '' ? "'".$this->db->idate($this->date_end)."'" : 'null'); - $sql .= ", ".(strcmp($this->opp_amount, '') ? price2num($this->opp_amount) : 'null'); - $sql .= ", ".(strcmp($this->budget_amount, '') ? price2num($this->budget_amount) : 'null'); - $sql .= ", ".($this->usage_opportunity ? 1 : 0); - $sql .= ", ".($this->usage_task ? 1 : 0); - $sql .= ", ".($this->usage_bill_time ? 1 : 0); - $sql .= ", ".($this->usage_organize_event ? 1 : 0); - $sql .= ", ".($this->note_private ? "'".$this->db->escape($this->note_private)."'" : 'null'); - $sql .= ", ".($this->note_public ? "'".$this->db->escape($this->note_public)."'" : 'null'); - $sql .= ", ".$conf->entity; - $sql .= ")"; + $sql = "INSERT INTO ".MAIN_DB_PREFIX."projet ("; + $sql .= "ref"; + $sql .= ", title"; + $sql .= ", description"; + $sql .= ", fk_soc"; + $sql .= ", fk_user_creat"; + $sql .= ", fk_statut"; + $sql .= ", fk_opp_status"; + $sql .= ", opp_percent"; + $sql .= ", public"; + $sql .= ", datec"; + $sql .= ", dateo"; + $sql .= ", datee"; + $sql .= ", opp_amount"; + $sql .= ", budget_amount"; + $sql .= ", usage_opportunity"; + $sql .= ", usage_task"; + $sql .= ", usage_bill_time"; + $sql .= ", usage_organize_event"; + $sql .= ", note_private"; + $sql .= ", note_public"; + $sql .= ", entity"; + $sql .= ") VALUES ("; + $sql .= "'".$this->db->escape($this->ref)."'"; + $sql .= ", '".$this->db->escape($this->title)."'"; + $sql .= ", '".$this->db->escape($this->description)."'"; + $sql .= ", ".($this->socid > 0 ? $this->socid : "null"); + $sql .= ", ".$user->id; + $sql .= ", ".(is_numeric($this->statut) ? $this->statut : '0'); + $sql .= ", ".((is_numeric($this->opp_status) && $this->opp_status > 0) ? $this->opp_status : 'NULL'); + $sql .= ", ".(is_numeric($this->opp_percent) ? $this->opp_percent : 'NULL'); + $sql .= ", ".($this->public ? 1 : 0); + $sql .= ", '".$this->db->idate($now)."'"; + $sql .= ", ".($this->date_start != '' ? "'".$this->db->idate($this->date_start)."'" : 'null'); + $sql .= ", ".($this->date_end != '' ? "'".$this->db->idate($this->date_end)."'" : 'null'); + $sql .= ", ".(strcmp($this->opp_amount, '') ? price2num($this->opp_amount) : 'null'); + $sql .= ", ".(strcmp($this->budget_amount, '') ? price2num($this->budget_amount) : 'null'); + $sql .= ", ".($this->usage_opportunity ? 1 : 0); + $sql .= ", ".($this->usage_task ? 1 : 0); + $sql .= ", ".($this->usage_bill_time ? 1 : 0); + $sql .= ", ".($this->usage_organize_event ? 1 : 0); + $sql .= ", ".($this->note_private ? "'".$this->db->escape($this->note_private)."'" : 'null'); + $sql .= ", ".($this->note_public ? "'".$this->db->escape($this->note_public)."'" : 'null'); + $sql .= ", ".$conf->entity; + $sql .= ")"; - dol_syslog(get_class($this)."::create", LOG_DEBUG); - $resql = $this->db->query($sql); - if ($resql) - { - $this->id = $this->db->last_insert_id(MAIN_DB_PREFIX."projet"); - $ret = $this->id; + dol_syslog(get_class($this)."::create", LOG_DEBUG); + $resql = $this->db->query($sql); + if ($resql) + { + $this->id = $this->db->last_insert_id(MAIN_DB_PREFIX."projet"); + $ret = $this->id; - if (!$notrigger) - { - // Call trigger - $result = $this->call_trigger('PROJECT_CREATE', $user); - if ($result < 0) { $error++; } - // End call triggers - } - } - else - { - $this->error = $this->db->lasterror(); - $this->errno = $this->db->lasterrno(); - $error++; - } + if (!$notrigger) + { + // Call trigger + $result = $this->call_trigger('PROJECT_CREATE', $user); + if ($result < 0) { $error++; } + // End call triggers + } + } else { + $this->error = $this->db->lasterror(); + $this->errno = $this->db->lasterrno(); + $error++; + } - // Update extrafield - if (!$error) { - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used - { - $result = $this->insertExtraFields(); - if ($result < 0) - { - $error++; - } - } - } + // Update extrafield + if (!$error) { + $result = $this->insertExtraFields(); + if ($result < 0) + { + $error++; + } + } - if (!$error && !empty($conf->global->MAIN_DISABLEDRAFTSTATUS)) - { - $res = $this->setValid($user); - if ($res < 0) $error++; - } + if (!$error && !empty($conf->global->MAIN_DISABLEDRAFTSTATUS)) + { + $res = $this->setValid($user); + if ($res < 0) $error++; + } - if (!$error) - { - $this->db->commit(); - return $ret; - } - else - { - $this->db->rollback(); - return -1; - } - } + if (!$error) + { + $this->db->commit(); + return $ret; + } else { + $this->db->rollback(); + return -1; + } + } - /** - * Update a project - * - * @param User $user User object of making update - * @param int $notrigger 1=Disable all triggers - * @return int <=0 if KO, >0 if OK - */ - public function update($user, $notrigger = 0) - { - global $langs, $conf; + /** + * Update a project + * + * @param User $user User object of making update + * @param int $notrigger 1=Disable all triggers + * @return int <=0 if KO, >0 if OK + */ + public function update($user, $notrigger = 0) + { + global $langs, $conf; - $error = 0; + $error = 0; - // Clean parameters - $this->title = trim($this->title); - $this->description = trim($this->description); + // Clean parameters + $this->title = trim($this->title); + $this->description = trim($this->description); if ($this->opp_amount < 0) $this->opp_amount = ''; if ($this->opp_percent < 0) $this->opp_percent = ''; - if ($this->date_end && $this->date_end < $this->date_start) - { - $this->error = $langs->trans("ErrorDateEndLowerThanDateStart"); - $this->errors[] = $this->error; - $this->db->rollback(); - dol_syslog(get_class($this)."::update error -3 ".$this->error, LOG_ERR); - return -3; - } + if ($this->date_end && $this->date_end < $this->date_start) + { + $this->error = $langs->trans("ErrorDateEndLowerThanDateStart"); + $this->errors[] = $this->error; + $this->db->rollback(); + dol_syslog(get_class($this)."::update error -3 ".$this->error, LOG_ERR); + return -3; + } - if (dol_strlen(trim($this->ref)) > 0) - { - $this->db->begin(); + if (dol_strlen(trim($this->ref)) > 0) + { + $this->db->begin(); - $sql = "UPDATE ".MAIN_DB_PREFIX."projet SET"; - $sql .= " ref='".$this->db->escape($this->ref)."'"; - $sql .= ", title = '".$this->db->escape($this->title)."'"; - $sql .= ", description = '".$this->db->escape($this->description)."'"; - $sql .= ", fk_soc = ".($this->socid > 0 ? $this->socid : "null"); - $sql .= ", fk_statut = ".$this->statut; - $sql .= ", fk_opp_status = ".((is_numeric($this->opp_status) && $this->opp_status > 0) ? $this->opp_status : 'null'); + $sql = "UPDATE ".MAIN_DB_PREFIX."projet SET"; + $sql .= " ref='".$this->db->escape($this->ref)."'"; + $sql .= ", title = '".$this->db->escape($this->title)."'"; + $sql .= ", description = '".$this->db->escape($this->description)."'"; + $sql .= ", fk_soc = ".($this->socid > 0 ? $this->socid : "null"); + $sql .= ", fk_statut = ".$this->statut; + $sql .= ", fk_opp_status = ".((is_numeric($this->opp_status) && $this->opp_status > 0) ? $this->opp_status : 'null'); $sql .= ", opp_percent = ".((is_numeric($this->opp_percent) && $this->opp_percent != '') ? $this->opp_percent : 'null'); - $sql .= ", public = ".($this->public ? 1 : 0); - $sql .= ", datec=".($this->date_c != '' ? "'".$this->db->idate($this->date_c)."'" : 'null'); - $sql .= ", dateo=".($this->date_start != '' ? "'".$this->db->idate($this->date_start)."'" : 'null'); - $sql .= ", datee=".($this->date_end != '' ? "'".$this->db->idate($this->date_end)."'" : 'null'); - $sql .= ", date_close=".($this->date_close != '' ? "'".$this->db->idate($this->date_close)."'" : 'null'); - $sql .= ", fk_user_close=".($this->fk_user_close > 0 ? $this->fk_user_close : "null"); - $sql .= ", opp_amount = ".(strcmp($this->opp_amount, '') ? price2num($this->opp_amount) : "null"); - $sql .= ", budget_amount = ".(strcmp($this->budget_amount, '') ? price2num($this->budget_amount) : "null"); - $sql .= ", fk_user_modif = ".$user->id; - $sql .= ", usage_opportunity = ".($this->usage_opportunity ? 1 : 0); - $sql .= ", usage_task = ".($this->usage_task ? 1 : 0); - $sql .= ", usage_bill_time = ".($this->usage_bill_time ? 1 : 0); - $sql .= ", usage_organize_event = ".($this->usage_organize_event ? 1 : 0); - $sql .= " WHERE rowid = ".$this->id; + $sql .= ", public = ".($this->public ? 1 : 0); + $sql .= ", datec=".($this->date_c != '' ? "'".$this->db->idate($this->date_c)."'" : 'null'); + $sql .= ", dateo=".($this->date_start != '' ? "'".$this->db->idate($this->date_start)."'" : 'null'); + $sql .= ", datee=".($this->date_end != '' ? "'".$this->db->idate($this->date_end)."'" : 'null'); + $sql .= ", date_close=".($this->date_close != '' ? "'".$this->db->idate($this->date_close)."'" : 'null'); + $sql .= ", fk_user_close=".($this->fk_user_close > 0 ? $this->fk_user_close : "null"); + $sql .= ", opp_amount = ".(strcmp($this->opp_amount, '') ? price2num($this->opp_amount) : "null"); + $sql .= ", budget_amount = ".(strcmp($this->budget_amount, '') ? price2num($this->budget_amount) : "null"); + $sql .= ", fk_user_modif = ".$user->id; + $sql .= ", usage_opportunity = ".($this->usage_opportunity ? 1 : 0); + $sql .= ", usage_task = ".($this->usage_task ? 1 : 0); + $sql .= ", usage_bill_time = ".($this->usage_bill_time ? 1 : 0); + $sql .= ", usage_organize_event = ".($this->usage_organize_event ? 1 : 0); + $sql .= " WHERE rowid = ".$this->id; - dol_syslog(get_class($this)."::update", LOG_DEBUG); - $resql = $this->db->query($sql); - if ($resql) - { - // Update extrafield - if (!$error) - { - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used - { - $result = $this->insertExtraFields(); - if ($result < 0) - { - $error++; - } - } - } + dol_syslog(get_class($this)."::update", LOG_DEBUG); + $resql = $this->db->query($sql); + if ($resql) + { + // Update extrafield + if (!$error) + { + $result = $this->insertExtraFields(); + if ($result < 0) + { + $error++; + } + } - if (!$error && !$notrigger) - { - // Call trigger - $result = $this->call_trigger('PROJECT_MODIFY', $user); - if ($result < 0) { $error++; } - // End call triggers - } + if (!$error && !$notrigger) + { + // Call trigger + $result = $this->call_trigger('PROJECT_MODIFY', $user); + if ($result < 0) { $error++; } + // End call triggers + } - if (!$error && (is_object($this->oldcopy) && $this->oldcopy->ref !== $this->ref)) - { - // We remove directory - if ($conf->projet->dir_output) - { - $olddir = $conf->projet->dir_output."/".dol_sanitizeFileName($this->oldcopy->ref); - $newdir = $conf->projet->dir_output."/".dol_sanitizeFileName($this->ref); - if (file_exists($olddir)) - { + if (!$error && (is_object($this->oldcopy) && $this->oldcopy->ref !== $this->ref)) + { + // We remove directory + if ($conf->projet->dir_output) + { + $olddir = $conf->projet->dir_output."/".dol_sanitizeFileName($this->oldcopy->ref); + $newdir = $conf->projet->dir_output."/".dol_sanitizeFileName($this->ref); + if (file_exists($olddir)) + { include_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; $res = @rename($olddir, $newdir); if (!$res) - { - $langs->load("errors"); + { + $langs->load("errors"); $this->error = $langs->trans('ErrorFailToRenameDir', $olddir, $newdir); - $error++; - } - } - } - } - if (!$error) - { - $this->db->commit(); - $result = 1; - } - else + $error++; + } + } + } + } + if (!$error) { - $this->db->rollback(); - $result = -1; - } - } - else + $this->db->commit(); + $result = 1; + } else { + $this->db->rollback(); + $result = -1; + } + } else { + $this->error = $this->db->lasterror(); + $this->errors[] = $this->error; + $this->db->rollback(); + if ($this->db->lasterrno() == 'DB_ERROR_RECORD_ALREADY_EXISTS') + { + $result = -4; + } else { + $result = -2; + } + dol_syslog(get_class($this)."::update error ".$result." ".$this->error, LOG_ERR); + } + } else { + dol_syslog(get_class($this)."::update ref null"); + $result = -1; + } + + return $result; + } + + /** + * Get object from database + * + * @param int $id Id of object to load + * @param string $ref Ref of project + * @return int >0 if OK, 0 if not found, <0 if KO + */ + public function fetch($id, $ref = '') + { + global $conf; + + if (empty($id) && empty($ref)) return -1; + + $sql = "SELECT rowid, ref, title, description, public, datec, opp_amount, budget_amount,"; + $sql .= " tms, dateo, datee, date_close, fk_soc, fk_user_creat, fk_user_modif, fk_user_close, fk_statut as status, fk_opp_status, opp_percent,"; + $sql .= " note_private, note_public, model_pdf, usage_opportunity, usage_task, usage_bill_time, usage_organize_event, entity"; + $sql .= " FROM ".MAIN_DB_PREFIX."projet"; + if (!empty($id)) + { + $sql .= " WHERE rowid=".$id; + } elseif (!empty($ref)) + { + $sql .= " WHERE ref='".$this->db->escape($ref)."'"; + $sql .= " AND entity IN (".getEntity('project').")"; + } + + dol_syslog(get_class($this)."::fetch", LOG_DEBUG); + $resql = $this->db->query($sql); + if ($resql) + { + $num_rows = $this->db->num_rows($resql); + + if ($num_rows) { - $this->error = $this->db->lasterror(); - $this->errors[] = $this->error; - $this->db->rollback(); - if ($this->db->lasterrno() == 'DB_ERROR_RECORD_ALREADY_EXISTS') - { - $result = -4; - } - else - { - $result = -2; - } - dol_syslog(get_class($this)."::update error ".$result." ".$this->error, LOG_ERR); - } - } - else - { - dol_syslog(get_class($this)."::update ref null"); - $result = -1; - } + $obj = $this->db->fetch_object($resql); - return $result; - } + $this->id = $obj->rowid; + $this->ref = $obj->ref; + $this->title = $obj->title; + $this->description = $obj->description; + $this->date_c = $this->db->jdate($obj->datec); + $this->datec = $this->db->jdate($obj->datec); // TODO deprecated + $this->date_m = $this->db->jdate($obj->tms); + $this->datem = $this->db->jdate($obj->tms); // TODO deprecated + $this->date_start = $this->db->jdate($obj->dateo); + $this->date_end = $this->db->jdate($obj->datee); + $this->date_close = $this->db->jdate($obj->date_close); + $this->note_private = $obj->note_private; + $this->note_public = $obj->note_public; + $this->socid = $obj->fk_soc; + $this->user_author_id = $obj->fk_user_creat; + $this->user_modification_id = $obj->fk_user_modif; + $this->user_close_id = $obj->fk_user_close; + $this->public = $obj->public; + $this->statut = $obj->status; // deprecated + $this->status = $obj->status; + $this->opp_status = $obj->fk_opp_status; + $this->opp_amount = $obj->opp_amount; + $this->opp_percent = $obj->opp_percent; + $this->budget_amount = $obj->budget_amount; + $this->modelpdf = $obj->model_pdf; + $this->usage_opportunity = (int) $obj->usage_opportunity; + $this->usage_task = (int) $obj->usage_task; + $this->usage_bill_time = (int) $obj->usage_bill_time; + $this->usage_organize_event = (int) $obj->usage_organize_event; + $this->entity = $obj->entity; - /** - * Get object from database - * - * @param int $id Id of object to load - * @param string $ref Ref of project - * @return int >0 if OK, 0 if not found, <0 if KO - */ - public function fetch($id, $ref = '') - { - global $conf; + $this->db->free($resql); - if (empty($id) && empty($ref)) return -1; + // Retreive all extrafield + // fetch optionals attributes and labels + $this->fetch_optionals(); - $sql = "SELECT rowid, ref, title, description, public, datec, opp_amount, budget_amount,"; - $sql .= " tms, dateo, datee, date_close, fk_soc, fk_user_creat, fk_user_modif, fk_user_close, fk_statut as status, fk_opp_status, opp_percent,"; - $sql .= " note_private, note_public, model_pdf, usage_opportunity, usage_task, usage_bill_time, usage_organize_event, entity"; - $sql .= " FROM ".MAIN_DB_PREFIX."projet"; - if (!empty($id)) - { - $sql .= " WHERE rowid=".$id; - } - elseif (!empty($ref)) - { - $sql .= " WHERE ref='".$this->db->escape($ref)."'"; - $sql .= " AND entity IN (".getEntity('project').")"; - } + return 1; + } - dol_syslog(get_class($this)."::fetch", LOG_DEBUG); - $resql = $this->db->query($sql); - if ($resql) - { - $num_rows = $this->db->num_rows($resql); + $this->db->free($resql); - if ($num_rows) - { - $obj = $this->db->fetch_object($resql); + return 0; + } else { + $this->error = $this->db->lasterror(); + return -1; + } + } - $this->id = $obj->rowid; - $this->ref = $obj->ref; - $this->title = $obj->title; - $this->description = $obj->description; - $this->date_c = $this->db->jdate($obj->datec); - $this->datec = $this->db->jdate($obj->datec); // TODO deprecated - $this->date_m = $this->db->jdate($obj->tms); - $this->datem = $this->db->jdate($obj->tms); // TODO deprecated - $this->date_start = $this->db->jdate($obj->dateo); - $this->date_end = $this->db->jdate($obj->datee); - $this->date_close = $this->db->jdate($obj->date_close); - $this->note_private = $obj->note_private; - $this->note_public = $obj->note_public; - $this->socid = $obj->fk_soc; - $this->user_author_id = $obj->fk_user_creat; - $this->user_modification_id = $obj->fk_user_modif; - $this->user_close_id = $obj->fk_user_close; - $this->public = $obj->public; - $this->statut = $obj->status; // deprecated - $this->status = $obj->status; - $this->opp_status = $obj->fk_opp_status; - $this->opp_amount = $obj->opp_amount; - $this->opp_percent = $obj->opp_percent; - $this->budget_amount = $obj->budget_amount; - $this->modelpdf = $obj->model_pdf; - $this->usage_opportunity = (int) $obj->usage_opportunity; - $this->usage_task = (int) $obj->usage_task; - $this->usage_bill_time = (int) $obj->usage_bill_time; - $this->usage_organize_event = (int) $obj->usage_organize_event; - $this->entity = $obj->entity; - - $this->db->free($resql); - - // Retreive all extrafield - // fetch optionals attributes and labels - $this->fetch_optionals(); - - return 1; - } - - $this->db->free($resql); - - return 0; - } - else - { - $this->error = $this->db->lasterror(); - return -1; - } - } - - // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps - /** - * Return list of elements for type, linked to a project - * - * @param string $type 'propal','order','invoice','order_supplier','invoice_supplier',... - * @param string $tablename name of table associated of the type - * @param string $datefieldname name of date field for filter - * @param int $dates Start date - * @param int $datee End date + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps + /** + * Return list of elements for type, linked to a project + * + * @param string $type 'propal','order','invoice','order_supplier','invoice_supplier',... + * @param string $tablename name of table associated of the type + * @param string $datefieldname name of date field for filter + * @param int $dates Start date + * @param int $datee End date * @param string $projectkey Equivalent key to fk_projet for actual type - * @return mixed Array list of object ids linked to project, < 0 or string if error - */ - public function get_element_list($type, $tablename, $datefieldname = '', $dates = '', $datee = '', $projectkey = 'fk_projet') - { - // phpcs:enable - $elements = array(); + * @return mixed Array list of object ids linked to project, < 0 or string if error + */ + public function get_element_list($type, $tablename, $datefieldname = '', $dates = '', $datee = '', $projectkey = 'fk_projet') + { + // phpcs:enable + $elements = array(); - if ($this->id <= 0) return $elements; + if ($this->id <= 0) return $elements; - $ids = $this->id; + $ids = $this->id; if ($type == 'agenda') - { - $sql = "SELECT id as rowid FROM ".MAIN_DB_PREFIX."actioncomm WHERE fk_project IN (".$ids.") AND entity IN (".getEntity('agenda').")"; - } - elseif ($type == 'expensereport') { - $sql = "SELECT ed.rowid FROM ".MAIN_DB_PREFIX."expensereport as e, ".MAIN_DB_PREFIX."expensereport_det as ed WHERE e.rowid = ed.fk_expensereport AND e.entity IN (".getEntity('expensereport').") AND ed.fk_projet IN (".$ids.")"; - } - elseif ($type == 'project_task') + $sql = "SELECT id as rowid FROM ".MAIN_DB_PREFIX."actioncomm WHERE fk_project IN (".$ids.") AND entity IN (".getEntity('agenda').")"; + } elseif ($type == 'expensereport') + { + $sql = "SELECT ed.rowid FROM ".MAIN_DB_PREFIX."expensereport as e, ".MAIN_DB_PREFIX."expensereport_det as ed WHERE e.rowid = ed.fk_expensereport AND e.entity IN (".getEntity('expensereport').") AND ed.fk_projet IN (".$ids.")"; + } elseif ($type == 'project_task') { $sql = "SELECT DISTINCT pt.rowid FROM ".MAIN_DB_PREFIX."projet_task as pt WHERE pt.fk_projet IN (".$ids.")"; - } - elseif ($type == 'project_task_time') // Case we want to duplicate line foreach user + } elseif ($type == 'project_task_time') // Case we want to duplicate line foreach user { $sql = "SELECT DISTINCT pt.rowid, ptt.fk_user FROM ".MAIN_DB_PREFIX."projet_task as pt, ".MAIN_DB_PREFIX."projet_task_time as ptt WHERE pt.rowid = ptt.fk_task AND pt.fk_projet IN (".$ids.")"; - } - elseif ($type == 'stock_mouvement') + } elseif ($type == 'stock_mouvement') { $sql = 'SELECT ms.rowid, ms.fk_user_author as fk_user FROM '.MAIN_DB_PREFIX."stock_mouvement as ms, ".MAIN_DB_PREFIX."entrepot as e WHERE e.rowid = ms.fk_entrepot AND e.entity IN (".getEntity('stock').") AND ms.origintype = 'project' AND ms.fk_origin IN (".$ids.") AND ms.type_mouvement = 1"; - } - elseif ($type == 'loan') - { - $sql = 'SELECT l.rowid, l.fk_user_author as fk_user FROM '.MAIN_DB_PREFIX."loan as l WHERE l.entity IN (".getEntity('loan').") AND l.fk_projet IN (".$ids.")"; - } - else + } elseif ($type == 'loan') { - $sql = "SELECT rowid FROM ".MAIN_DB_PREFIX.$tablename." WHERE ".$projectkey." IN (".$ids.") AND entity IN (".getEntity($type).")"; - } + $sql = 'SELECT l.rowid, l.fk_user_author as fk_user FROM '.MAIN_DB_PREFIX."loan as l WHERE l.entity IN (".getEntity('loan').") AND l.fk_projet IN (".$ids.")"; + } else { + $sql = "SELECT rowid FROM ".MAIN_DB_PREFIX.$tablename." WHERE ".$projectkey." IN (".$ids.") AND entity IN (".getEntity($type).")"; + } - if ($dates > 0 && $type == 'loan') { - $sql .= " AND (dateend > '".$this->db->idate($dates)."' OR dateend IS NULL)"; - } - elseif ($dates > 0 && ($type != 'project_task')) // For table project_taks, we want the filter on date apply on project_time_spent table + if ($dates > 0 && $type == 'loan'){ + $sql .= " AND (dateend > '".$this->db->idate($dates)."' OR dateend IS NULL)"; + } elseif ($dates > 0 && ($type != 'project_task')) // For table project_taks, we want the filter on date apply on project_time_spent table { if (empty($datefieldname) && !empty($this->table_element_date)) $datefieldname = $this->table_element_date; if (empty($datefieldname)) return 'Error this object has no date field defined'; $sql .= " AND (".$datefieldname." >= '".$this->db->idate($dates)."' OR ".$datefieldname." IS NULL)"; } - if ($datee > 0 && $type == 'loan') { - $sql .= " AND (datestart < '".$this->db->idate($datee)."' OR datestart IS NULL)"; - } - elseif ($datee > 0 && ($type != 'project_task')) // For table project_taks, we want the filter on date apply on project_time_spent table + if ($datee > 0 && $type == 'loan'){ + $sql .= " AND (datestart < '".$this->db->idate($datee)."' OR datestart IS NULL)"; + } elseif ($datee > 0 && ($type != 'project_task')) // For table project_taks, we want the filter on date apply on project_time_spent table { if (empty($datefieldname) && !empty($this->table_element_date)) $datefieldname = $this->table_element_date; if (empty($datefieldname)) return 'Error this object has no date field defined'; @@ -638,94 +608,92 @@ class Project extends CommonObject } if (!$sql) return -1; - //print $sql; - dol_syslog(get_class($this)."::get_element_list", LOG_DEBUG); - $result = $this->db->query($sql); - if ($result) - { - $nump = $this->db->num_rows($result); - if ($nump) - { - $i = 0; - while ($i < $nump) - { - $obj = $this->db->fetch_object($result); + //print $sql; + dol_syslog(get_class($this)."::get_element_list", LOG_DEBUG); + $result = $this->db->query($sql); + if ($result) + { + $nump = $this->db->num_rows($result); + if ($nump) + { + $i = 0; + while ($i < $nump) + { + $obj = $this->db->fetch_object($result); - $elements[$i] = $obj->rowid.(empty($obj->fk_user) ? '' : '_'.$obj->fk_user); + $elements[$i] = $obj->rowid.(empty($obj->fk_user) ? '' : '_'.$obj->fk_user); - $i++; - } - $this->db->free($result); - } + $i++; + } + $this->db->free($result); + } - /* Return array even if empty*/ - return $elements; - } - else - { - dol_print_error($this->db); - } - } + /* Return array even if empty*/ + return $elements; + } else { + dol_print_error($this->db); + } + } - /** - * Delete a project from database - * - * @param User $user User - * @param int $notrigger Disable triggers - * @return int <0 if KO, 0 if not possible, >0 if OK - */ - public function delete($user, $notrigger = 0) - { - global $langs, $conf; - require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; + /** + * Delete a project from database + * + * @param User $user User + * @param int $notrigger Disable triggers + * @return int <0 if KO, 0 if not possible, >0 if OK + */ + public function delete($user, $notrigger = 0) + { + global $langs, $conf; + require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; - $error = 0; + $error = 0; - $this->db->begin(); + $this->db->begin(); - if (!$error) - { - // Delete linked contacts - $res = $this->delete_linked_contact(); - if ($res < 0) - { - $this->error = 'ErrorFailToDeleteLinkedContact'; - //$error++; - $this->db->rollback(); - return 0; - } - } + if (!$error) + { + // Delete linked contacts + $res = $this->delete_linked_contact(); + if ($res < 0) + { + $this->error = 'ErrorFailToDeleteLinkedContact'; + //$error++; + $this->db->rollback(); + return 0; + } + } - // Set fk_projet into elements to null - $listoftables = array( - 'propal'=>'fk_projet', 'commande'=>'fk_projet', 'facture'=>'fk_projet', - 'supplier_proposal'=>'fk_projet', 'commande_fournisseur'=>'fk_projet', 'facture_fourn'=>'fk_projet', - 'expensereport_det'=>'fk_projet', 'contrat'=>'fk_projet', 'fichinter'=>'fk_projet', 'don'=>'fk_projet', - 'actioncomm'=>'fk_project', 'mrp_mo'=>'fk_project' - ); - foreach ($listoftables as $key => $value) - { - $sql = "UPDATE ".MAIN_DB_PREFIX.$key." SET ".$value." = NULL where ".$value." = ".$this->id; - $resql = $this->db->query($sql); - if (!$resql) - { - $this->errors[] = $this->db->lasterror(); - $error++; - break; - } - } + // Set fk_projet into elements to null + $listoftables = array( + 'propal'=>'fk_projet', 'commande'=>'fk_projet', 'facture'=>'fk_projet', + 'supplier_proposal'=>'fk_projet', 'commande_fournisseur'=>'fk_projet', 'facture_fourn'=>'fk_projet', + 'expensereport_det'=>'fk_projet', 'contrat'=>'fk_projet', 'fichinter'=>'fk_projet', 'don'=>'fk_projet', + 'actioncomm'=>'fk_project', 'mrp_mo'=>'fk_project' + ); + foreach ($listoftables as $key => $value) + { + $sql = "UPDATE ".MAIN_DB_PREFIX.$key." SET ".$value." = NULL where ".$value." = ".$this->id; + $resql = $this->db->query($sql); + if (!$resql) + { + $this->errors[] = $this->db->lasterror(); + $error++; + break; + } + } - // Remove linked categories. - if (!$error) { - $sql = "DELETE FROM ".MAIN_DB_PREFIX."categorie_project"; - $sql .= " WHERE fk_project = ".$this->id; + // Remove linked categories. + if (!$error) { + $sql = "DELETE FROM ".MAIN_DB_PREFIX."categorie_project"; + $sql .= " WHERE fk_project = ".$this->id; - $result = $this->db->query($sql); - if (!$result) { - $error++; - $this->errors[] = $this->db->lasterror(); - } - } + $result = $this->db->query($sql); + if (!$result) { + $error++; + $this->errors[] = $this->db->lasterror(); + } + } // Fetch tasks $this->getLinesArray($user); @@ -755,581 +723,568 @@ class Project extends CommonObject - // Delete project - if (!$error) - { - $sql = "DELETE FROM ".MAIN_DB_PREFIX."projet"; - $sql .= " WHERE rowid=".$this->id; + // Delete project + if (!$error) + { + $sql = "DELETE FROM ".MAIN_DB_PREFIX."projet"; + $sql .= " WHERE rowid=".$this->id; - $resql = $this->db->query($sql); - if (!$resql) - { - $this->errors[] = $langs->trans("CantRemoveProject"); - $error++; - } - } + $resql = $this->db->query($sql); + if (!$resql) + { + $this->errors[] = $langs->trans("CantRemoveProject", $langs->transnoentitiesnoconv("ProjectOverview")); + $error++; + } + } - if (!$error) - { - $sql = "DELETE FROM ".MAIN_DB_PREFIX."projet_extrafields"; - $sql .= " WHERE fk_object=".$this->id; + if (!$error) + { + $sql = "DELETE FROM ".MAIN_DB_PREFIX."projet_extrafields"; + $sql .= " WHERE fk_object=".$this->id; - $resql = $this->db->query($sql); - if (!$resql) - { - $this->errors[] = $this->db->lasterror(); - $error++; - } - } + $resql = $this->db->query($sql); + if (!$resql) + { + $this->errors[] = $this->db->lasterror(); + $error++; + } + } - if (empty($error)) { - // We remove directory - $projectref = dol_sanitizeFileName($this->ref); - if ($conf->projet->dir_output) { - $dir = $conf->projet->dir_output."/".$projectref; - if (file_exists($dir)) { - $res = @dol_delete_dir_recursive($dir); - if (!$res) { - $this->errors[] = 'ErrorFailToDeleteDir'; - $error++; - } - } - } + if (empty($error)) { + // We remove directory + $projectref = dol_sanitizeFileName($this->ref); + if ($conf->projet->dir_output) { + $dir = $conf->projet->dir_output."/".$projectref; + if (file_exists($dir)) { + $res = @dol_delete_dir_recursive($dir); + if (!$res) { + $this->errors[] = 'ErrorFailToDeleteDir'; + $error++; + } + } + } - if (!$notrigger) - { - // Call trigger - $result = $this->call_trigger('PROJECT_DELETE', $user); + if (!$notrigger) + { + // Call trigger + $result = $this->call_trigger('PROJECT_DELETE', $user); - if ($result < 0) { - $error++; - } - // End call triggers - } - } + if ($result < 0) { + $error++; + } + // End call triggers + } + } - if (empty($error)) - { - $this->db->commit(); - return 1; - } - else - { - foreach ($this->errors as $errmsg) - { + if (empty($error)) + { + $this->db->commit(); + return 1; + } else { + foreach ($this->errors as $errmsg) + { dol_syslog(get_class($this)."::delete ".$errmsg, LOG_ERR); $this->error .= ($this->error ? ', '.$errmsg : $errmsg); } - dol_syslog(get_class($this)."::delete ".$this->error, LOG_ERR); - $this->db->rollback(); - return -1; - } - } + dol_syslog(get_class($this)."::delete ".$this->error, LOG_ERR); + $this->db->rollback(); + return -1; + } + } - /** - * Delete tasks with no children first, then task with children recursively - * - * @param User $user User - * @return int <0 if KO, 1 if OK - */ - public function deleteTasks($user) - { - $countTasks = count($this->lines); - $deleted = false; - if ($countTasks) - { - foreach ($this->lines as $task) - { - if ($task->hasChildren() <= 0) { // If there is no children (or error to detect them) - $deleted = true; - $ret = $task->delete($user); - if ($ret <= 0) - { - $this->errors[] = $this->db->lasterror(); - return -1; - } - } - } - } - $this->getLinesArray($user); - if ($deleted && count($this->lines) < $countTasks) - { - if (count($this->lines)) $this->deleteTasks($this->lines); - } - - return 1; - } - - /** - * Validate a project - * - * @param User $user User that validate - * @param int $notrigger 1=Disable triggers - * @return int <0 if KO, >0 if OK - */ - public function setValid($user, $notrigger = 0) - { - global $langs, $conf; - - $error = 0; - - if ($this->statut != 1) - { - // Check parameters - if (preg_match('/^'.preg_quote($langs->trans("CopyOf").' ').'/', $this->title)) - { - $this->error = $langs->trans("ErrorFieldFormat", $langs->transnoentities("Label")).'. '.$langs->trans('RemoveString', $langs->transnoentitiesnoconv("CopyOf")); - return -1; - } - - $this->db->begin(); - - $sql = "UPDATE ".MAIN_DB_PREFIX."projet"; - $sql .= " SET fk_statut = 1"; - $sql .= " WHERE rowid = ".$this->id; - $sql .= " AND entity = ".$conf->entity; - - dol_syslog(get_class($this)."::setValid", LOG_DEBUG); - $resql = $this->db->query($sql); - if ($resql) - { - // Call trigger - if (empty($notrigger)) - { - $result = $this->call_trigger('PROJECT_VALIDATE', $user); - if ($result < 0) { $error++; } - // End call triggers - } - - if (!$error) - { - $this->statut = 1; - $this->db->commit(); - return 1; - } - else - { - $this->db->rollback(); - $this->error = join(',', $this->errors); - dol_syslog(get_class($this)."::setValid ".$this->error, LOG_ERR); - return -1; - } - } - else - { - $this->db->rollback(); - $this->error = $this->db->lasterror(); - return -1; - } - } - } - - /** - * Close a project - * - * @param User $user User that close project - * @return int <0 if KO, 0 if already closed, >0 if OK - */ - public function setClose($user) - { - global $langs, $conf; - - $now = dol_now(); - - $error = 0; - - if ($this->statut != 2) - { - $this->db->begin(); - - $sql = "UPDATE ".MAIN_DB_PREFIX."projet"; - $sql .= " SET fk_statut = 2, fk_user_close = ".$user->id.", date_close = '".$this->db->idate($now)."'"; - $sql .= " WHERE rowid = ".$this->id; - $sql .= " AND entity = ".$conf->entity; - $sql .= " AND fk_statut = 1"; - - if (!empty($conf->global->PROJECT_USE_OPPORTUNITIES)) - { - // TODO What to do if fk_opp_status is not code 'WON' or 'LOST' - } - - dol_syslog(get_class($this)."::setClose", LOG_DEBUG); - $resql = $this->db->query($sql); - if ($resql) - { - // Call trigger - $result = $this->call_trigger('PROJECT_CLOSE', $user); - if ($result < 0) { $error++; } - // End call triggers - - if (!$error) - { - $this->statut = 2; - $this->db->commit(); - return 1; - } - else - { - $this->db->rollback(); - $this->error = join(',', $this->errors); - dol_syslog(get_class($this)."::setClose ".$this->error, LOG_ERR); - return -1; - } - } - else - { - $this->db->rollback(); - $this->error = $this->db->lasterror(); - return -1; - } - } - - return 0; - } - - /** - * Return status label of object - * - * @param int $mode 0=long label, 1=short label, 2=Picto + short label, 3=Picto, 4=Picto + long label, 5=Short label + Picto - * @return string Label - */ - public function getLibStatut($mode = 0) - { - return $this->LibStatut(isset($this->statut) ? $this->statut : $this->status, $mode); - } - - // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps - /** - * Renvoi status label for a status - * - * @param int $status id status - * @param int $mode 0=long label, 1=short label, 2=Picto + short label, 3=Picto, 4=Picto + long label, 5=Short label + Picto, 6=Long label + Picto - * @return string Label - */ - public function LibStatut($status, $mode = 0) - { - // phpcs:enable - global $langs; - - $statustrans = array( - 0 => 'status0', - 1 => 'status4', - 2 => 'status6', - ); - - $statusClass = 'status0'; - if (!empty($statustrans[$status])) { - $statusClass = $statustrans[$status]; - } - - return dolGetStatus($langs->trans($this->statuts_long[$status]), $langs->trans($this->statuts_short[$status]), '', $statusClass, $mode); - } - - /** - * Return clicable name (with picto eventually) - * - * @param int $withpicto 0=No picto, 1=Include picto into link, 2=Only picto - * @param string $option Variant ('', 'nolink') - * @param int $addlabel 0=Default, 1=Add label into string, >1=Add first chars into string - * @param string $moreinpopup Text to add into popup - * @param string $sep Separator between ref and label if option addlabel is set - * @param int $notooltip 1=Disable tooltip - * @param int $save_lastsearch_value -1=Auto, 0=No save of lastsearch_values when clicking, 1=Save lastsearch_values whenclicking - * @return string String with URL - */ - public function getNomUrl($withpicto = 0, $option = '', $addlabel = 0, $moreinpopup = '', $sep = ' - ', $notooltip = 0, $save_lastsearch_value = -1) - { - global $conf, $langs, $user, $hookmanager; - - if (!empty($conf->dol_no_mouse_hover)) $notooltip = 1; // Force disable tooltips - - $result = ''; - - $label = ''; - if ($option != 'nolink') $label = ''.$langs->trans("Project").''; - $label .= ($label ? '
    ' : '').''.$langs->trans('Ref').': '.$this->ref; // The space must be after the : to not being explode when showing the title in img_picto - $label .= ($label ? '
    ' : '').''.$langs->trans('Label').': '.$this->title; // The space must be after the : to not being explode when showing the title in img_picto - if (isset($this->public)) { - $label .= '
    '.$langs->trans("Visibility").": ".($this->public ? $langs->trans("SharedProject") : $langs->trans("PrivateProject")); - } - if (!empty($this->thirdparty_name)) - $label .= ($label ? '
    ' : '').''.$langs->trans('ThirdParty').': '.$this->thirdparty_name; // The space must be after the : to not being explode when showing the title in img_picto - if (!empty($this->dateo)) - $label .= ($label ? '
    ' : '').''.$langs->trans('DateStart').': '.dol_print_date($this->dateo, 'day'); // The space must be after the : to not being explode when showing the title in img_picto - if (!empty($this->datee)) - $label .= ($label ? '
    ' : '').''.$langs->trans('DateEnd').': '.dol_print_date($this->datee, 'day'); // The space must be after the : to not being explode when showing the title in img_picto - if ($moreinpopup) $label .= '
    '.$moreinpopup; - if (isset($this->status)) { - $label .= '
    '.$langs->trans("Status").": ".$this->getLibStatut(5); - } - - $url = ''; - if ($option != 'nolink') - { - if (preg_match('/\.php$/', $option)) { - $url = dol_buildpath($option, 1).'?id='.$this->id; - } - elseif ($option == 'task') - { - $url = DOL_URL_ROOT.'/projet/tasks.php?id='.$this->id; - } - else - { - $url = DOL_URL_ROOT.'/projet/card.php?id='.$this->id; - } - // Add param to save lastsearch_values or not - $add_save_lastsearch_values = ($save_lastsearch_value == 1 ? 1 : 0); - if ($save_lastsearch_value == -1 && preg_match('/list\.php/', $_SERVER["PHP_SELF"])) $add_save_lastsearch_values = 1; - if ($add_save_lastsearch_values) $url .= '&save_lastsearch_values=1'; - } - - $linkclose = ''; - if (empty($notooltip) && $user->rights->projet->lire) - { - if (!empty($conf->global->MAIN_OPTIMIZEFORTEXTBROWSER)) - { - $label = $langs->trans("ShowProject"); - $linkclose .= ' alt="'.dol_escape_htmltag($label, 1).'"'; - } - $linkclose .= ' title="'.dol_escape_htmltag($label, 1).'"'; - $linkclose .= ' class="classfortooltip"'; - - /* - $hookmanager->initHooks(array('projectdao')); - $parameters=array('id'=>$this->id); - // Note that $action and $object may have been modified by some hooks - $reshook=$hookmanager->executeHooks('getnomurltooltip',$parameters,$this,$action); - if ($reshook > 0) - $linkclose = $hookmanager->resPrint; - */ + /** + * Delete tasks with no children first, then task with children recursively + * + * @param User $user User + * @return int <0 if KO, 1 if OK + */ + public function deleteTasks($user) + { + $countTasks = count($this->lines); + $deleted = false; + if ($countTasks) + { + foreach ($this->lines as $task) + { + if ($task->hasChildren() <= 0) { // If there is no children (or error to detect them) + $deleted = true; + $ret = $task->delete($user); + if ($ret <= 0) + { + $this->errors[] = $this->db->lasterror(); + return -1; + } + } + } + } + $this->getLinesArray($user); + if ($deleted && count($this->lines) < $countTasks) + { + if (count($this->lines)) $this->deleteTasks($this->lines); } - $picto = 'projectpub'; - if (!$this->public) $picto = 'project'; + return 1; + } - $linkstart = ''; - $linkend = ''; + /** + * Validate a project + * + * @param User $user User that validate + * @param int $notrigger 1=Disable triggers + * @return int <0 if KO, >0 if OK + */ + public function setValid($user, $notrigger = 0) + { + global $langs, $conf; - $result .= $linkstart; - if ($withpicto) $result .= img_object(($notooltip ? '' : $label), $picto, ($notooltip ? (($withpicto != 2) ? 'class="paddingright"' : '') : 'class="'.(($withpicto != 2) ? 'paddingright ' : '').'classfortooltip"'), 0, 0, $notooltip ? 0 : 1); - if ($withpicto != 2) $result .= $this->ref; - $result .= $linkend; - if ($withpicto != 2) $result .= (($addlabel && $this->title) ? $sep.dol_trunc($this->title, ($addlabel > 1 ? $addlabel : 0)) : ''); + $error = 0; - global $action; - $hookmanager->initHooks(array('projectdao')); - $parameters = array('id'=>$this->id, 'getnomurl'=>$result); - $reshook = $hookmanager->executeHooks('getNomUrl', $parameters, $this, $action); // Note that $action and $object may have been modified by some hooks - if ($reshook > 0) $result = $hookmanager->resPrint; - else $result .= $hookmanager->resPrint; - - return $result; - } - - /** - * Initialise an instance with random values. - * Used to build previews or test instances. - * id must be 0 if object instance is a specimen. - * - * @return void - */ - public function initAsSpecimen() - { - global $user, $langs, $conf; - - $now = dol_now(); - - // Initialise parameters - $this->id = 0; - $this->ref = 'SPECIMEN'; - $this->specimen = 1; - $this->socid = 1; - $this->date_c = $now; - $this->date_m = $now; - $this->date_start = $now; - $this->date_end = $now + (3600 * 24 * 365); - $this->note_public = 'SPECIMEN'; - $this->fk_ele = 20000; - $this->opp_amount = 20000; - $this->budget_amount = 10000; - - $this->usage_opportunity = 1; - $this->usage_task = 1; - $this->usage_bill_time = 1; - $this->usage_organize_event = 1; - - /* - $nbp = mt_rand(1, 9); - $xnbp = 0; - while ($xnbp < $nbp) - { - $line = new Task($this->db); - $line->fk_project = 0; - $line->label = $langs->trans("Label") . " " . $xnbp; - $line->description = $langs->trans("Description") . " " . $xnbp; - - $this->lines[]=$line; - $xnbp++; - } - */ - } - - /** - * Check if user has permission on current project - * - * @param User $user Object user to evaluate - * @param string $mode Type of permission we want to know: 'read', 'write' - * @return int >0 if user has permission, <0 if user has no permission - */ - public function restrictedProjectArea($user, $mode = 'read') - { - // To verify role of users - $userAccess = 0; - if (($mode == 'read' && !empty($user->rights->projet->all->lire)) || ($mode == 'write' && !empty($user->rights->projet->all->creer)) || ($mode == 'delete' && !empty($user->rights->projet->all->supprimer))) - { - $userAccess = 1; - } - elseif ($this->public && (($mode == 'read' && !empty($user->rights->projet->lire)) || ($mode == 'write' && !empty($user->rights->projet->creer)) || ($mode == 'delete' && !empty($user->rights->projet->supprimer)))) - { - $userAccess = 1; - } - else + if ($this->statut != 1) { - foreach (array('internal', 'external') as $source) - { - $userRole = $this->liste_contact(4, $source); - $num = count($userRole); + // Check parameters + if (preg_match('/^'.preg_quote($langs->trans("CopyOf").' ').'/', $this->title)) + { + $this->error = $langs->trans("ErrorFieldFormat", $langs->transnoentities("Label")).'. '.$langs->trans('RemoveString', $langs->transnoentitiesnoconv("CopyOf")); + return -1; + } - $nblinks = 0; - while ($nblinks < $num) - { - if ($source == 'internal' && preg_match('/^PROJECT/', $userRole[$nblinks]['code']) && $user->id == $userRole[$nblinks]['id']) - { - if ($mode == 'read' && $user->rights->projet->lire) $userAccess++; - if ($mode == 'write' && $user->rights->projet->creer) $userAccess++; - if ($mode == 'delete' && $user->rights->projet->supprimer) $userAccess++; - } - $nblinks++; - } - } - //if (empty($nblinks)) // If nobody has permission, we grant creator - //{ - // if ((!empty($this->user_author_id) && $this->user_author_id == $user->id)) - // { - // $userAccess = 1; - // } - //} - } + $this->db->begin(); - return ($userAccess ? $userAccess : -1); - } + $sql = "UPDATE ".MAIN_DB_PREFIX."projet"; + $sql .= " SET fk_statut = 1"; + $sql .= " WHERE rowid = ".$this->id; + $sql .= " AND entity = ".$conf->entity; - /** - * Return array of projects a user has permission on, is affected to, or all projects - * - * @param User $user User object - * @param int $mode 0=All project I have permission on (assigned to me or public), 1=Projects assigned to me only, 2=Will return list of all projects with no test on contacts - * @param int $list 0=Return array, 1=Return string list - * @param int $socid 0=No filter on third party, id of third party - * @param string $filter additionnal filter on project (statut, ref, ...) - * @return array or string Array of projects id, or string with projects id separated with "," if list is 1 - */ - public function getProjectsAuthorizedForUser($user, $mode = 0, $list = 0, $socid = 0, $filter = '') - { - $projects = array(); - $temp = array(); + dol_syslog(get_class($this)."::setValid", LOG_DEBUG); + $resql = $this->db->query($sql); + if ($resql) + { + // Call trigger + if (empty($notrigger)) + { + $result = $this->call_trigger('PROJECT_VALIDATE', $user); + if ($result < 0) { $error++; } + // End call triggers + } - $sql = "SELECT ".(($mode == 0 || $mode == 1) ? "DISTINCT " : "")."p.rowid, p.ref"; - $sql .= " FROM ".MAIN_DB_PREFIX."projet as p"; - if ($mode == 0) - { - $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."element_contact as ec ON ec.element_id = p.rowid"; - } - elseif ($mode == 1) - { - $sql .= ", ".MAIN_DB_PREFIX."element_contact as ec"; - } - elseif ($mode == 2) - { - // No filter. Use this if user has permission to see all project - } - $sql .= " WHERE p.entity IN (".getEntity('project').")"; - // Internal users must see project he is contact to even if project linked to a third party he can't see. - //if ($socid || ! $user->rights->societe->client->voir) $sql.= " AND (p.fk_soc IS NULL OR p.fk_soc = 0 OR p.fk_soc = ".$socid.")"; - if ($socid > 0) $sql .= " AND (p.fk_soc IS NULL OR p.fk_soc = 0 OR p.fk_soc = ".$socid.")"; + if (!$error) + { + $this->statut = 1; + $this->db->commit(); + return 1; + } else { + $this->db->rollback(); + $this->error = join(',', $this->errors); + dol_syslog(get_class($this)."::setValid ".$this->error, LOG_ERR); + return -1; + } + } else { + $this->db->rollback(); + $this->error = $this->db->lasterror(); + return -1; + } + } + } - // Get id of types of contacts for projects (This list never contains a lot of elements) - $listofprojectcontacttype = array(); - $sql2 = "SELECT ctc.rowid, ctc.code FROM ".MAIN_DB_PREFIX."c_type_contact as ctc"; - $sql2 .= " WHERE ctc.element = '".$this->db->escape($this->element)."'"; - $sql2 .= " AND ctc.source = 'internal'"; - $resql = $this->db->query($sql2); - if ($resql) - { - while ($obj = $this->db->fetch_object($resql)) - { - $listofprojectcontacttype[$obj->rowid] = $obj->code; - } - } - else dol_print_error($this->db); - if (count($listofprojectcontacttype) == 0) $listofprojectcontacttype[0] = '0'; // To avoid syntax error if not found + /** + * Close a project + * + * @param User $user User that close project + * @return int <0 if KO, 0 if already closed, >0 if OK + */ + public function setClose($user) + { + global $langs, $conf; - if ($mode == 0) - { - $sql .= " AND ( p.public = 1"; - $sql .= " OR ( ec.fk_c_type_contact IN (".join(',', array_keys($listofprojectcontacttype)).")"; - $sql .= " AND ec.fk_socpeople = ".$user->id.")"; - $sql .= " )"; - } - elseif ($mode == 1) - { - $sql .= " AND ec.element_id = p.rowid"; - $sql .= " AND ("; - $sql .= " ( ec.fk_c_type_contact IN (".join(',', array_keys($listofprojectcontacttype)).")"; - $sql .= " AND ec.fk_socpeople = ".$user->id.")"; - $sql .= " )"; - } - elseif ($mode == 2) - { - // No filter. Use this if user has permission to see all project - } + $now = dol_now(); - $sql .= $filter; - //print $sql; + $error = 0; - $resql = $this->db->query($sql); - if ($resql) - { - $num = $this->db->num_rows($resql); - $i = 0; - while ($i < $num) - { - $row = $this->db->fetch_row($resql); - $projects[$row[0]] = $row[1]; - $temp[] = $row[0]; - $i++; - } + if ($this->statut != self::STATUS_CLOSED) + { + $this->db->begin(); - $this->db->free($resql); + $sql = "UPDATE ".MAIN_DB_PREFIX."projet"; + $sql .= " SET fk_statut = ".self::STATUS_CLOSED.", fk_user_close = ".$user->id.", date_close = '".$this->db->idate($now)."'"; + $sql .= " WHERE rowid = ".$this->id; + $sql .= " AND fk_statut = ".self::STATUS_VALIDATED; - if ($list) - { - if (empty($temp)) return '0'; - $result = implode(',', $temp); - return $result; - } - } - else - { - dol_print_error($this->db); - } + if (!empty($conf->global->PROJECT_USE_OPPORTUNITIES)) + { + // TODO What to do if fk_opp_status is not code 'WON' or 'LOST' + } - return $projects; - } + dol_syslog(get_class($this)."::setClose", LOG_DEBUG); + $resql = $this->db->query($sql); + if ($resql) + { + // Call trigger + $result = $this->call_trigger('PROJECT_CLOSE', $user); + if ($result < 0) { $error++; } + // End call triggers - /** - * Load an object from its id and create a new one in database + if (!$error) + { + $this->statut = 2; + $this->db->commit(); + return 1; + } else { + $this->db->rollback(); + $this->error = join(',', $this->errors); + dol_syslog(get_class($this)."::setClose ".$this->error, LOG_ERR); + return -1; + } + } else { + $this->db->rollback(); + $this->error = $this->db->lasterror(); + return -1; + } + } + + return 0; + } + + /** + * Return status label of object + * + * @param int $mode 0=long label, 1=short label, 2=Picto + short label, 3=Picto, 4=Picto + long label, 5=Short label + Picto + * @return string Label + */ + public function getLibStatut($mode = 0) + { + return $this->LibStatut(isset($this->statut) ? $this->statut : $this->status, $mode); + } + + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps + /** + * Renvoi status label for a status + * + * @param int $status id status + * @param int $mode 0=long label, 1=short label, 2=Picto + short label, 3=Picto, 4=Picto + long label, 5=Short label + Picto, 6=Long label + Picto + * @return string Label + */ + public function LibStatut($status, $mode = 0) + { + // phpcs:enable + global $langs; + + $statustrans = array( + 0 => 'status0', + 1 => 'status4', + 2 => 'status6', + ); + + $statusClass = 'status0'; + if (!empty($statustrans[$status])) { + $statusClass = $statustrans[$status]; + } + + return dolGetStatus($langs->trans($this->statuts_long[$status]), $langs->trans($this->statuts_short[$status]), '', $statusClass, $mode); + } + + /** + * Return clickable name (with picto eventually) + * + * @param int $withpicto 0=No picto, 1=Include picto into link, 2=Only picto + * @param string $option Variant where the link point to ('', 'nolink') + * @param int $addlabel 0=Default, 1=Add label into string, >1=Add first chars into string + * @param string $moreinpopup Text to add into popup + * @param string $sep Separator between ref and label if option addlabel is set + * @param int $notooltip 1=Disable tooltip + * @param int $save_lastsearch_value -1=Auto, 0=No save of lastsearch_values when clicking, 1=Save lastsearch_values whenclicking + * @param string $morecss More css on a link + * @return string String with URL + */ + public function getNomUrl($withpicto = 0, $option = '', $addlabel = 0, $moreinpopup = '', $sep = ' - ', $notooltip = 0, $save_lastsearch_value = -1, $morecss = '') + { + global $conf, $langs, $user, $hookmanager; + + if (!empty($conf->dol_no_mouse_hover)) $notooltip = 1; // Force disable tooltips + + $result = ''; + if (! empty($conf->global->PROJECT_OPEN_ALWAYS_ON_TAB)) { + $option = $conf->global->PROJECT_OPEN_ALWAYS_ON_TAB; + } + + $label = ''; + if ($option != 'nolink') $label = ''.$langs->trans("Project").''; + $label .= ($label ? '
    ' : '').''.$langs->trans('Ref').': '.$this->ref; // The space must be after the : to not being explode when showing the title in img_picto + $label .= ($label ? '
    ' : '').''.$langs->trans('Label').': '.$this->title; // The space must be after the : to not being explode when showing the title in img_picto + if (isset($this->public)) { + $label .= '
    '.$langs->trans("Visibility").": ".($this->public ? $langs->trans("SharedProject") : $langs->trans("PrivateProject")); + } + if (!empty($this->thirdparty_name)) { + $label .= ($label ? '
    ' : '').''.$langs->trans('ThirdParty').': '.$this->thirdparty_name; // The space must be after the : to not being explode when showing the title in img_picto + } + if (!empty($this->dateo)) { + $label .= ($label ? '
    ' : '').''.$langs->trans('DateStart').': '.dol_print_date($this->dateo, 'day'); // The space must be after the : to not being explode when showing the title in img_picto + } + if (!empty($this->datee)) { + $label .= ($label ? '
    ' : '').''.$langs->trans('DateEnd').': '.dol_print_date($this->datee, 'day'); // The space must be after the : to not being explode when showing the title in img_picto + } + if ($moreinpopup) $label .= '
    '.$moreinpopup; + if (isset($this->status)) { + $label .= '
    '.$langs->trans("Status").": ".$this->getLibStatut(5); + } + + $url = ''; + if ($option != 'nolink') + { + if (preg_match('/\.php$/', $option)) { + $url = dol_buildpath($option, 1).'?id='.$this->id; + } elseif ($option == 'task') + { + $url = DOL_URL_ROOT.'/projet/tasks.php?id='.$this->id; + } elseif ($option == 'preview') + { + $url = DOL_URL_ROOT.'/projet/element.php?id='.$this->id; + } else { + $url = DOL_URL_ROOT.'/projet/card.php?id='.$this->id; + } + // Add param to save lastsearch_values or not + $add_save_lastsearch_values = ($save_lastsearch_value == 1 ? 1 : 0); + if ($save_lastsearch_value == -1 && preg_match('/list\.php/', $_SERVER["PHP_SELF"])) $add_save_lastsearch_values = 1; + if ($add_save_lastsearch_values) $url .= '&save_lastsearch_values=1'; + } + + $linkclose = ''; + if (empty($notooltip) && $user->rights->projet->lire) + { + if (!empty($conf->global->MAIN_OPTIMIZEFORTEXTBROWSER)) + { + $label = $langs->trans("ShowProject"); + $linkclose .= ' alt="'.dol_escape_htmltag($label, 1).'"'; + } + $linkclose .= ' title="'.dol_escape_htmltag($label, 1).'"'; + $linkclose .= ' class="classfortooltip"'; + + /* + $hookmanager->initHooks(array('projectdao')); + $parameters=array('id'=>$this->id); + // Note that $action and $object may have been modified by some hooks + $reshook=$hookmanager->executeHooks('getnomurltooltip',$parameters,$this,$action); + if ($reshook > 0) + $linkclose = $hookmanager->resPrint; + */ + } + + $picto = 'projectpub'; + if (!$this->public) $picto = 'project'; + + $linkstart = ''; + $linkend = ''; + + $result .= $linkstart; + if ($withpicto) $result .= img_object(($notooltip ? '' : $label), $picto, ($notooltip ? (($withpicto != 2) ? 'class="paddingright"' : '') : 'class="'.(($withpicto != 2) ? 'paddingright ' : '').'classfortooltip"'), 0, 0, $notooltip ? 0 : 1); + if ($withpicto != 2) $result .= $this->ref; + $result .= $linkend; + if ($withpicto != 2) $result .= (($addlabel && $this->title) ? $sep.dol_trunc($this->title, ($addlabel > 1 ? $addlabel : 0)) : ''); + + global $action; + $hookmanager->initHooks(array('projectdao')); + $parameters = array('id'=>$this->id, 'getnomurl'=>$result); + $reshook = $hookmanager->executeHooks('getNomUrl', $parameters, $this, $action); // Note that $action and $object may have been modified by some hooks + if ($reshook > 0) $result = $hookmanager->resPrint; + else $result .= $hookmanager->resPrint; + + return $result; + } + + /** + * Initialise an instance with random values. + * Used to build previews or test instances. + * id must be 0 if object instance is a specimen. + * + * @return void + */ + public function initAsSpecimen() + { + global $user, $langs, $conf; + + $now = dol_now(); + + // Initialise parameters + $this->id = 0; + $this->ref = 'SPECIMEN'; + $this->specimen = 1; + $this->socid = 1; + $this->date_c = $now; + $this->date_m = $now; + $this->date_start = $now; + $this->date_end = $now + (3600 * 24 * 365); + $this->note_public = 'SPECIMEN'; + $this->fk_ele = 20000; + $this->opp_amount = 20000; + $this->budget_amount = 10000; + + $this->usage_opportunity = 1; + $this->usage_task = 1; + $this->usage_bill_time = 1; + $this->usage_organize_event = 1; + + /* + $nbp = mt_rand(1, 9); + $xnbp = 0; + while ($xnbp < $nbp) + { + $line = new Task($this->db); + $line->fk_project = 0; + $line->label = $langs->trans("Label") . " " . $xnbp; + $line->description = $langs->trans("Description") . " " . $xnbp; + + $this->lines[]=$line; + $xnbp++; + } + */ + } + + /** + * Check if user has permission on current project + * + * @param User $user Object user to evaluate + * @param string $mode Type of permission we want to know: 'read', 'write' + * @return int >0 if user has permission, <0 if user has no permission + */ + public function restrictedProjectArea($user, $mode = 'read') + { + // To verify role of users + $userAccess = 0; + if (($mode == 'read' && !empty($user->rights->projet->all->lire)) || ($mode == 'write' && !empty($user->rights->projet->all->creer)) || ($mode == 'delete' && !empty($user->rights->projet->all->supprimer))) + { + $userAccess = 1; + } elseif ($this->public && (($mode == 'read' && !empty($user->rights->projet->lire)) || ($mode == 'write' && !empty($user->rights->projet->creer)) || ($mode == 'delete' && !empty($user->rights->projet->supprimer)))) + { + $userAccess = 1; + } else { + foreach (array('internal', 'external') as $source) + { + $userRole = $this->liste_contact(4, $source); + $num = count($userRole); + + $nblinks = 0; + while ($nblinks < $num) + { + if ($source == 'internal' && preg_match('/^PROJECT/', $userRole[$nblinks]['code']) && $user->id == $userRole[$nblinks]['id']) + { + if ($mode == 'read' && $user->rights->projet->lire) $userAccess++; + if ($mode == 'write' && $user->rights->projet->creer) $userAccess++; + if ($mode == 'delete' && $user->rights->projet->supprimer) $userAccess++; + } + $nblinks++; + } + } + //if (empty($nblinks)) // If nobody has permission, we grant creator + //{ + // if ((!empty($this->user_author_id) && $this->user_author_id == $user->id)) + // { + // $userAccess = 1; + // } + //} + } + + return ($userAccess ? $userAccess : -1); + } + + /** + * Return array of projects a user has permission on, is affected to, or all projects + * + * @param User $user User object + * @param int $mode 0=All project I have permission on (assigned to me or public), 1=Projects assigned to me only, 2=Will return list of all projects with no test on contacts + * @param int $list 0=Return array, 1=Return string list + * @param int $socid 0=No filter on third party, id of third party + * @param string $filter additionnal filter on project (statut, ref, ...) + * @return array or string Array of projects id, or string with projects id separated with "," if list is 1 + */ + public function getProjectsAuthorizedForUser($user, $mode = 0, $list = 0, $socid = 0, $filter = '') + { + $projects = array(); + $temp = array(); + + $sql = "SELECT ".(($mode == 0 || $mode == 1) ? "DISTINCT " : "")."p.rowid, p.ref"; + $sql.= " FROM " . MAIN_DB_PREFIX . "projet as p"; + if ($mode == 0) + { + $sql.= " LEFT JOIN " . MAIN_DB_PREFIX . "element_contact as ec ON ec.element_id = p.rowid"; + } elseif ($mode == 1) + { + $sql.= ", " . MAIN_DB_PREFIX . "element_contact as ec"; + } elseif ($mode == 2) + { + // No filter. Use this if user has permission to see all project + } + $sql.= " WHERE p.entity IN (".getEntity('project').")"; + // Internal users must see project he is contact to even if project linked to a third party he can't see. + //if ($socid || ! $user->rights->societe->client->voir) $sql.= " AND (p.fk_soc IS NULL OR p.fk_soc = 0 OR p.fk_soc = ".$socid.")"; + if ($socid > 0) $sql.= " AND (p.fk_soc IS NULL OR p.fk_soc = 0 OR p.fk_soc = " . $socid . ")"; + + // Get id of types of contacts for projects (This list never contains a lot of elements) + $listofprojectcontacttype=array(); + $sql2 = "SELECT ctc.rowid, ctc.code FROM ".MAIN_DB_PREFIX."c_type_contact as ctc"; + $sql2.= " WHERE ctc.element = '" . $this->db->escape($this->element) . "'"; + $sql2.= " AND ctc.source = 'internal'"; + $resql = $this->db->query($sql2); + if ($resql) + { + while ($obj = $this->db->fetch_object($resql)) + { + $listofprojectcontacttype[$obj->rowid]=$obj->code; + } + } else dol_print_error($this->db); + if (count($listofprojectcontacttype) == 0) $listofprojectcontacttype[0]='0'; // To avoid syntax error if not found + + if ($mode == 0) + { + $sql.= " AND ( p.public = 1"; + $sql.= " OR ( ec.fk_c_type_contact IN (".join(',', array_keys($listofprojectcontacttype)).")"; + $sql.= " AND ec.fk_socpeople = ".$user->id.")"; + $sql.= " )"; + } elseif ($mode == 1) + { + $sql.= " AND ec.element_id = p.rowid"; + $sql.= " AND ("; + $sql.= " ( ec.fk_c_type_contact IN (".join(',', array_keys($listofprojectcontacttype)).")"; + $sql.= " AND ec.fk_socpeople = ".$user->id.")"; + $sql.= " )"; + } elseif ($mode == 2) + { + // No filter. Use this if user has permission to see all project + } + + $sql.= $filter; + //print $sql; + + $resql = $this->db->query($sql); + if ($resql) + { + $num = $this->db->num_rows($resql); + $i = 0; + while ($i < $num) + { + $row = $this->db->fetch_row($resql); + $projects[$row[0]] = $row[1]; + $temp[] = $row[0]; + $i++; + } + + $this->db->free($resql); + + if ($list) + { + if (empty($temp)) return '0'; + $result = implode(',', $temp); + return $result; + } + } else { + dol_print_error($this->db); + } + + return $projects; + } + + /** + * Load an object from its id and create a new one in database * * @param User $user User making the clone * @param int $fromid Id of object to clone @@ -1337,14 +1292,14 @@ class Project extends CommonObject * @param bool $clone_task Clone task of project * @param bool $clone_project_file Clone file of project * @param bool $clone_task_file Clone file of task (if task are copied) - * @param bool $clone_note Clone note of project - * @param bool $move_date Move task date on clone - * @param integer $notrigger No trigger flag - * @param int $newthirdpartyid New thirdparty id + * @param bool $clone_note Clone note of project + * @param bool $move_date Move task date on clone + * @param integer $notrigger No trigger flag + * @param int $newthirdpartyid New thirdparty id * @return int New id of clone */ - public function createFromClone(User $user, $fromid, $clone_contact = false, $clone_task = true, $clone_project_file = false, $clone_task_file = false, $clone_note = true, $move_date = true, $notrigger = 0, $newthirdpartyid = 0) - { + public function createFromClone(User $user, $fromid, $clone_contact = false, $clone_task = true, $clone_project_file = false, $clone_task_file = false, $clone_note = true, $move_date = true, $notrigger = 0, $newthirdpartyid = 0) + { global $langs, $conf; $error = 0; @@ -1370,40 +1325,40 @@ class Project extends CommonObject $clone_project->id = 0; if ($move_date) { - $clone_project->date_start = $now; - if (!(empty($clone_project->date_end))) - { - $clone_project->date_end = $clone_project->date_end + ($now - $orign_dt_start); - } + $clone_project->date_start = $now; + if (!(empty($clone_project->date_end))) + { + $clone_project->date_end = $clone_project->date_end + ($now - $orign_dt_start); + } } - $clone_project->datec = $now; + $clone_project->datec = $now; - if (!$clone_note) - { - $clone_project->note_private = ''; - $clone_project->note_public = ''; - } + if (!$clone_note) + { + $clone_project->note_private = ''; + $clone_project->note_public = ''; + } //Generate next ref $defaultref = ''; - $obj = empty($conf->global->PROJECT_ADDON) ? 'mod_project_simple' : $conf->global->PROJECT_ADDON; - // Search template files - $file = ''; $classname = ''; $filefound = 0; - $dirmodels = array_merge(array('/'), (array) $conf->modules_parts['models']); - foreach ($dirmodels as $reldir) - { - $file = dol_buildpath($reldir."core/modules/project/".$obj.'.php', 0); - if (file_exists($file)) - { - $filefound = 1; - dol_include_once($reldir."core/modules/project/".$obj.'.php'); - $modProject = new $obj; - $defaultref = $modProject->getNextValue(is_object($clone_project->thirdparty) ? $clone_project->thirdparty : null, $clone_project); - break; - } - } - if (is_numeric($defaultref) && $defaultref <= 0) $defaultref = ''; + $obj = empty($conf->global->PROJECT_ADDON) ? 'mod_project_simple' : $conf->global->PROJECT_ADDON; + // Search template files + $file = ''; $classname = ''; $filefound = 0; + $dirmodels = array_merge(array('/'), (array) $conf->modules_parts['models']); + foreach ($dirmodels as $reldir) + { + $file = dol_buildpath($reldir."core/modules/project/".$obj.'.php', 0); + if (file_exists($file)) + { + $filefound = 1; + dol_include_once($reldir."core/modules/project/".$obj.'.php'); + $modProject = new $obj; + $defaultref = $modProject->getNextValue(is_object($clone_project->thirdparty) ? $clone_project->thirdparty : null, $clone_project); + break; + } + } + if (is_numeric($defaultref) && $defaultref <= 0) $defaultref = ''; $clone_project->ref = $defaultref; $clone_project->title = $langs->trans("CopyOf").' '.$clone_project->title; @@ -1424,23 +1379,19 @@ class Project extends CommonObject $clone_project_id = $clone_project->id; //Note Update - if (!$clone_note) - { - $clone_project->note_private = ''; - $clone_project->note_public = ''; - } - else - { - $this->db->begin(); + if (!$clone_note) + { + $clone_project->note_private = ''; + $clone_project->note_public = ''; + } else { + $this->db->begin(); $res = $clone_project->update_note(dol_html_entity_decode($clone_project->note_public, ENT_QUOTES), '_public'); if ($res < 0) { $this->error .= $clone_project->error; $error++; $this->db->rollback(); - } - else - { + } else { $this->db->commit(); } @@ -1451,12 +1402,10 @@ class Project extends CommonObject $this->error .= $clone_project->error; $error++; $this->db->rollback(); - } - else - { + } else { $this->db->commit(); } - } + } //Duplicate contact if ($clone_contact) @@ -1476,9 +1425,7 @@ class Project extends CommonObject $langs->load("errors"); $this->error .= $langs->trans("ErrorThisContactIsAlreadyDefinedAsThisType"); $error++; - } - else - { + } else { if ($clone_project->error != '') { $this->error .= $clone_project->error; @@ -1509,9 +1456,7 @@ class Project extends CommonObject $error++; } } - } - else - { + } else { $this->error .= $langs->trans('ErrorInternalErrorDetected').':dol_mkdir'; $error++; } @@ -1520,57 +1465,55 @@ class Project extends CommonObject //Duplicate task if ($clone_task) { - require_once DOL_DOCUMENT_ROOT.'/projet/class/task.class.php'; + require_once DOL_DOCUMENT_ROOT . '/projet/class/task.class.php'; $taskstatic = new Task($this->db); // Security check - $socid = 0; + $socid=0; if ($user->socid > 0) $socid = $user->socid; - $tasksarray = $taskstatic->getTasksArray(0, 0, $fromid, $socid, 0); + $tasksarray=$taskstatic->getTasksArray(0, 0, $fromid, $socid, 0); - $tab_conv_child_parent = array(); + $tab_conv_child_parent=array(); // Loop on each task, to clone it - foreach ($tasksarray as $tasktoclone) - { + foreach ($tasksarray as $tasktoclone) + { $result_clone = $taskstatic->createFromClone($user, $tasktoclone->id, $clone_project_id, $tasktoclone->fk_parent, $move_date, true, false, $clone_task_file, true, false); if ($result_clone <= 0) - { - $this->error .= $result_clone->error; + { + $this->error .= $result_clone->error; $error++; - } - else - { - $new_task_id = $result_clone; - $taskstatic->fetch($tasktoclone->id); + } else { + $new_task_id = $result_clone; + $taskstatic->fetch($tasktoclone->id); - //manage new parent clone task id - // if the current task has child we store the original task id and the equivalent clone task id + //manage new parent clone task id + // if the current task has child we store the original task id and the equivalent clone task id if (($taskstatic->hasChildren()) && !array_key_exists($tasktoclone->id, $tab_conv_child_parent)) { $tab_conv_child_parent[$tasktoclone->id] = $new_task_id; } - } - } + } + } - //Parse all clone node to be sure to update new parent - $tasksarray = $taskstatic->getTasksArray(0, 0, $clone_project_id, $socid, 0); - foreach ($tasksarray as $task_cloned) - { - $taskstatic->fetch($task_cloned->id); - if ($taskstatic->fk_task_parent != 0) - { - $taskstatic->fk_task_parent = $tab_conv_child_parent[$taskstatic->fk_task_parent]; - } - $res = $taskstatic->update($user, $notrigger); - if ($result_clone <= 0) - { - $this->error .= $taskstatic->error; + //Parse all clone node to be sure to update new parent + $tasksarray = $taskstatic->getTasksArray(0, 0, $clone_project_id, $socid, 0); + foreach ($tasksarray as $task_cloned) + { + $taskstatic->fetch($task_cloned->id); + if ($taskstatic->fk_task_parent != 0) + { + $taskstatic->fk_task_parent = $tab_conv_child_parent[$taskstatic->fk_task_parent]; + } + $res = $taskstatic->update($user, $notrigger); + if ($result_clone <= 0) + { + $this->error .= $taskstatic->error; $error++; - } - } + } + } } } @@ -1580,104 +1523,100 @@ class Project extends CommonObject { $this->db->commit(); return $clone_project_id; - } - else - { + } else { $this->db->rollback(); dol_syslog(get_class($this)."::createFromClone nbError: ".$error." error : ".$this->error, LOG_ERR); return -1; } - } + } - /** + /** * Shift project task date from current date to delta * * @param integer $old_project_dt_start Old project start date * @return int 1 if OK or < 0 if KO */ - public function shiftTaskDate($old_project_dt_start) - { + public function shiftTaskDate($old_project_dt_start) + { global $user, $langs, $conf; - $error = 0; + $error=0; $taskstatic = new Task($this->db); // Security check - $socid = 0; + $socid=0; if ($user->socid > 0) $socid = $user->socid; - $tasksarray = $taskstatic->getTasksArray(0, 0, $this->id, $socid, 0); + $tasksarray=$taskstatic->getTasksArray(0, 0, $this->id, $socid, 0); - foreach ($tasksarray as $tasktoshiftdate) - { - $to_update = false; - // Fetch only if update of date will be made - if ((!empty($tasktoshiftdate->date_start)) || (!empty($tasktoshiftdate->date_end))) - { - //dol_syslog(get_class($this)."::shiftTaskDate to_update", LOG_DEBUG); - $to_update = true; - $task = new Task($this->db); - $result = $task->fetch($tasktoshiftdate->id); - if (!$result) - { - $error++; - $this->error .= $task->error; - } - } + foreach ($tasksarray as $tasktoshiftdate) + { + $to_update=false; + // Fetch only if update of date will be made + if ((!empty($tasktoshiftdate->date_start)) || (!empty($tasktoshiftdate->date_end))) + { + //dol_syslog(get_class($this)."::shiftTaskDate to_update", LOG_DEBUG); + $to_update=true; + $task = new Task($this->db); + $result = $task->fetch($tasktoshiftdate->id); + if (!$result) + { + $error++; + $this->error.=$task->error; + } + } //print "$this->date_start + $tasktoshiftdate->date_start - $old_project_dt_start";exit; - //Calcultate new task start date with difference between old proj start date and origin task start date - if (!empty($tasktoshiftdate->date_start)) - { + //Calcultate new task start date with difference between old proj start date and origin task start date + if (!empty($tasktoshiftdate->date_start)) + { $task->date_start = $this->date_start + ($tasktoshiftdate->date_start - $old_project_dt_start); - } + } - //Calcultate new task end date with difference between origin proj end date and origin task end date - if (!empty($tasktoshiftdate->date_end)) - { + //Calcultate new task end date with difference between origin proj end date and origin task end date + if (!empty($tasktoshiftdate->date_end)) + { $task->date_end = $this->date_start + ($tasktoshiftdate->date_end - $old_project_dt_start); - } + } if ($to_update) { - $result = $task->update($user); - if (!$result) - { - $error++; - $this->error .= $task->error; - } + $result = $task->update($user); + if (!$result) + { + $error++; + $this->error .= $task->error; + } } - } - if ($error != 0) - { - return -1; - } - return $result; + } + if ($error != 0) + { + return -1; + } + return $result; } - // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps /** * Associate element to a project * * @param string $tableName Table of the element to update * @param int $elementSelectId Key-rowid of the line of the element to update * @return int 1 if OK or < 0 if KO - */ + */ public function update_element($tableName, $elementSelectId) { - // phpcs:enable + // phpcs:enable $sql = "UPDATE ".MAIN_DB_PREFIX.$tableName; if ($tableName == "actioncomm") { $sql .= " SET fk_project=".$this->id; $sql .= " WHERE id=".$elementSelectId; - } - else - { + } else { $sql .= " SET fk_projet=".$this->id; $sql .= " WHERE rowid=".$elementSelectId; } @@ -1692,27 +1631,26 @@ class Project extends CommonObject } } - // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps /** * Associate element to a project * * @param string $tableName Table of the element to update * @param int $elementSelectId Key-rowid of the line of the element to update * @param string $projectfield The column name that stores the link with the project - * + * * @return int 1 if OK or < 0 if KO */ public function remove_element($tableName, $elementSelectId, $projectfield = 'fk_projet') { - // phpcs:enable + // phpcs:enable $sql = "UPDATE ".MAIN_DB_PREFIX.$tableName; if ($tableName == "actioncomm") { $sql .= " SET fk_project=NULL"; $sql .= " WHERE id=".$elementSelectId; - } else - { + } else { $sql .= " SET ".$projectfield."=NULL"; $sql .= " WHERE rowid=".$elementSelectId; } @@ -1739,16 +1677,16 @@ class Project extends CommonObject */ public function generateDocument($modele, $outputlangs, $hidedetails = 0, $hidedesc = 0, $hideref = 0) { - global $conf, $langs; + global $conf,$langs; $langs->load("projects"); - if (!dol_strlen($modele)) { + if (! dol_strlen($modele)) { $modele = 'baleine'; if ($this->modelpdf) { $modele = $this->modelpdf; - } elseif (!empty($conf->global->PROJECT_ADDON_PDF)) { + } elseif (! empty($conf->global->PROJECT_ADDON_PDF)) { $modele = $conf->global->PROJECT_ADDON_PDF; } } @@ -1768,60 +1706,57 @@ class Project extends CommonObject * @param int $userid Time spent by a particular user * @return int <0 if OK, >0 if KO */ - public function loadTimeSpent($datestart, $taskid = 0, $userid = 0) - { - $error = 0; + public function loadTimeSpent($datestart, $taskid = 0, $userid = 0) + { + $error=0; - $this->weekWorkLoad = array(); - $this->weekWorkLoadPerTask = array(); + $this->weekWorkLoad=array(); + $this->weekWorkLoadPerTask=array(); - if (empty($datestart)) dol_print_error('', 'Error datestart parameter is empty'); + if (empty($datestart)) dol_print_error('', 'Error datestart parameter is empty'); - $sql = "SELECT ptt.rowid as taskid, ptt.task_duration, ptt.task_date, ptt.task_datehour, ptt.fk_task"; - $sql .= " FROM ".MAIN_DB_PREFIX."projet_task_time AS ptt, ".MAIN_DB_PREFIX."projet_task as pt"; - $sql .= " WHERE ptt.fk_task = pt.rowid"; - $sql .= " AND pt.fk_projet = ".$this->id; - $sql .= " AND (ptt.task_date >= '".$this->db->idate($datestart)."' "; - $sql .= " AND ptt.task_date <= '".$this->db->idate(dol_time_plus_duree($datestart, 1, 'w') - 1)."')"; - if ($taskid) $sql .= " AND ptt.fk_task=".$taskid; - if (is_numeric($userid)) $sql .= " AND ptt.fk_user=".$userid; + $sql = "SELECT ptt.rowid as taskid, ptt.task_duration, ptt.task_date, ptt.task_datehour, ptt.fk_task"; + $sql.= " FROM ".MAIN_DB_PREFIX."projet_task_time AS ptt, ".MAIN_DB_PREFIX."projet_task as pt"; + $sql.= " WHERE ptt.fk_task = pt.rowid"; + $sql.= " AND pt.fk_projet = ".$this->id; + $sql.= " AND (ptt.task_date >= '".$this->db->idate($datestart)."' "; + $sql.= " AND ptt.task_date <= '".$this->db->idate(dol_time_plus_duree($datestart, 1, 'w') - 1)."')"; + if ($taskid) $sql.= " AND ptt.fk_task=".$taskid; + if (is_numeric($userid)) $sql.= " AND ptt.fk_user=".$userid; - //print $sql; - $resql = $this->db->query($sql); - if ($resql) - { - $daylareadyfound = array(); + //print $sql; + $resql=$this->db->query($sql); + if ($resql) + { + $daylareadyfound=array(); - $num = $this->db->num_rows($resql); - $i = 0; - // Loop on each record found, so each couple (project id, task id) + $num = $this->db->num_rows($resql); + $i = 0; + // Loop on each record found, so each couple (project id, task id) while ($i < $num) - { - $obj = $this->db->fetch_object($resql); - $day = $this->db->jdate($obj->task_date); // task_date is date without hours + { + $obj=$this->db->fetch_object($resql); + $day=$this->db->jdate($obj->task_date); // task_date is date without hours if (empty($daylareadyfound[$day])) - { + { $this->weekWorkLoad[$day] = $obj->task_duration; $this->weekWorkLoadPerTask[$day][$obj->fk_task] = $obj->task_duration; - } - else - { + } else { $this->weekWorkLoad[$day] += $obj->task_duration; $this->weekWorkLoadPerTask[$day][$obj->fk_task] += $obj->task_duration; } - $daylareadyfound[$day] = 1; - $i++; + $daylareadyfound[$day]=1; + $i++; } - $this->db->free($resql); - return 1; - } - else - { - $this->error = "Error ".$this->db->lasterror(); - dol_syslog(get_class($this)."::fetch ".$this->error, LOG_ERR); - return -1; - } - } + $this->db->free($resql); + return 1; + } else { + $this->error = "Error ".$this->db->lasterror(); + dol_syslog(get_class($this)."::fetch ".$this->error, LOG_ERR); + return -1; + } + } + /** * Load time spent into this->weekWorkLoad and this->weekWorkLoadPerTask for all day of a week of project. * Note: array weekWorkLoad and weekWorkLoadPerTask are reset and filled at each call. @@ -1869,9 +1804,7 @@ class Project extends CommonObject { $this->monthWorkLoad[$week_number] = $obj->task_duration; $this->monthWorkLoadPerTask[$week_number][$obj->fk_task] = $obj->task_duration; - } - else - { + } else { $this->monthWorkLoad[$week_number] += $obj->task_duration; $this->monthWorkLoadPerTask[$week_number][$obj->fk_task] += $obj->task_duration; } @@ -1880,9 +1813,7 @@ class Project extends CommonObject } $this->db->free($resql); return 1; - } - else - { + } else { $this->error = "Error ".$this->db->lasterror(); dol_syslog(get_class($this)."::fetch ".$this->error, LOG_ERR); return -1; @@ -1890,74 +1821,72 @@ class Project extends CommonObject } - // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps - /** - * Load indicators for dashboard (this->nbtodo and this->nbtodolate) - * - * @param User $user Objet user - * @return WorkboardResponse|int <0 if KO, WorkboardResponse if OK - */ - public function load_board($user) - { - // phpcs:enable - global $conf, $langs; + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps + /** + * Load indicators for dashboard (this->nbtodo and this->nbtodolate) + * + * @param User $user Objet user + * @return WorkboardResponse|int <0 if KO, WorkboardResponse if OK + */ + public function load_board($user) + { + // phpcs:enable + global $conf, $langs; - // For external user, no check is done on company because readability is managed by public status of project and assignement. - //$socid=$user->socid; + // For external user, no check is done on company because readability is managed by public status of project and assignement. + //$socid=$user->socid; $projectsListId = null; - if (!$user->rights->projet->all->lire) $projectsListId = $this->getProjectsAuthorizedForUser($user, 0, 1); + if (!$user->rights->projet->all->lire) $projectsListId = $this->getProjectsAuthorizedForUser($user, 0, 1); - $sql = "SELECT p.rowid, p.fk_statut as status, p.fk_opp_status, p.datee as datee"; - $sql .= " FROM (".MAIN_DB_PREFIX."projet as p"; - $sql .= ")"; - $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."societe as s on p.fk_soc = s.rowid"; - // For external user, no check is done on company permission because readability is managed by public status of project and assignement. - //if (! $user->rights->societe->client->voir && ! $socid) $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."societe_commerciaux as sc ON sc.fk_soc = s.rowid"; - $sql .= " WHERE p.fk_statut = 1"; - $sql .= " AND p.entity IN (".getEntity('project').')'; - if (!empty($projectsListId)) $sql .= " AND p.rowid IN (".$projectsListId.")"; - // No need to check company, as filtering of projects must be done by getProjectsAuthorizedForUser - //if ($socid || ! $user->rights->societe->client->voir) $sql.= " AND (p.fk_soc IS NULL OR p.fk_soc = 0 OR p.fk_soc = ".$socid.")"; - // For external user, no check is done on company permission because readability is managed by public status of project and assignement. - //if (! $user->rights->societe->client->voir && ! $socid) $sql.= " AND ((s.rowid = sc.fk_soc AND sc.fk_user = " .$user->id.") OR (s.rowid IS NULL))"; + $sql = "SELECT p.rowid, p.fk_statut as status, p.fk_opp_status, p.datee as datee"; + $sql .= " FROM (".MAIN_DB_PREFIX."projet as p"; + $sql .= ")"; + $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."societe as s on p.fk_soc = s.rowid"; + // For external user, no check is done on company permission because readability is managed by public status of project and assignement. + //if (! $user->rights->societe->client->voir && ! $socid) $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."societe_commerciaux as sc ON sc.fk_soc = s.rowid"; + $sql .= " WHERE p.fk_statut = 1"; + $sql .= " AND p.entity IN (".getEntity('project').')'; + if (!empty($projectsListId)) $sql .= " AND p.rowid IN (".$projectsListId.")"; + // No need to check company, as filtering of projects must be done by getProjectsAuthorizedForUser + //if ($socid || ! $user->rights->societe->client->voir) $sql.= " AND (p.fk_soc IS NULL OR p.fk_soc = 0 OR p.fk_soc = ".$socid.")"; + // For external user, no check is done on company permission because readability is managed by public status of project and assignement. + //if (! $user->rights->societe->client->voir && ! $socid) $sql.= " AND ((s.rowid = sc.fk_soc AND sc.fk_user = " .$user->id.") OR (s.rowid IS NULL))"; - //print $sql; - $resql = $this->db->query($sql); - if ($resql) - { - $project_static = new Project($this->db); + //print $sql; + $resql = $this->db->query($sql); + if ($resql) + { + $project_static = new Project($this->db); - $response = new WorkboardResponse(); - $response->warning_delay = $conf->projet->warning_delay / 60 / 60 / 24; - $response->label = $langs->trans("OpenedProjects"); - $response->labelShort = $langs->trans("Opened"); - if ($user->rights->projet->all->lire) $response->url = DOL_URL_ROOT.'/projet/list.php?search_status=1&mainmenu=project'; - else $response->url = DOL_URL_ROOT.'/projet/list.php?search_project_user=-1&search_status=1&mainmenu=project'; - $response->img = img_object('', "projectpub"); + $response = new WorkboardResponse(); + $response->warning_delay = $conf->projet->warning_delay / 60 / 60 / 24; + $response->label = $langs->trans("OpenedProjects"); + $response->labelShort = $langs->trans("Opened"); + if ($user->rights->projet->all->lire) $response->url = DOL_URL_ROOT.'/projet/list.php?search_status=1&mainmenu=project'; + else $response->url = DOL_URL_ROOT.'/projet/list.php?search_project_user=-1&search_status=1&mainmenu=project'; + $response->img = img_object('', "projectpub"); - // This assignment in condition is not a bug. It allows walking the results. - while ($obj = $this->db->fetch_object($resql)) - { - $response->nbtodo++; + // This assignment in condition is not a bug. It allows walking the results. + while ($obj = $this->db->fetch_object($resql)) + { + $response->nbtodo++; - $project_static->statut = $obj->status; - $project_static->opp_status = $obj->opp_status; - $project_static->datee = $this->db->jdate($obj->datee); + $project_static->statut = $obj->status; + $project_static->opp_status = $obj->opp_status; + $project_static->datee = $this->db->jdate($obj->datee); - if ($project_static->hasDelay()) { - $response->nbtodolate++; - } - } + if ($project_static->hasDelay()) { + $response->nbtodolate++; + } + } - return $response; - } - else - { - $this->error = $this->db->error(); - return -1; - } - } + return $response; + } else { + $this->error = $this->db->error(); + return -1; + } + } /** @@ -1978,7 +1907,7 @@ class Project extends CommonObject } - // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps /** * Charge indicateurs this->nb pour le tableau de bord * @@ -1986,37 +1915,35 @@ class Project extends CommonObject */ public function load_state_board() { - // phpcs:enable - global $user; + // phpcs:enable + global $user; - $this->nb = array(); + $this->nb = array(); - $sql = "SELECT count(p.rowid) as nb"; - $sql .= " FROM ".MAIN_DB_PREFIX."projet as p"; - $sql .= " WHERE"; - $sql .= " p.entity IN (".getEntity('project').")"; + $sql = "SELECT count(p.rowid) as nb"; + $sql .= " FROM ".MAIN_DB_PREFIX."projet as p"; + $sql .= " WHERE"; + $sql .= " p.entity IN (".getEntity('project').")"; if (!$user->rights->projet->all->lire) { $projectsListId = $this->getProjectsAuthorizedForUser($user, 0, 1); $sql .= "AND p.rowid IN (".$projectsListId.")"; } - $resql = $this->db->query($sql); - if ($resql) - { - while ($obj = $this->db->fetch_object($resql)) - { - $this->nb["projects"] = $obj->nb; - } - $this->db->free($resql); - return 1; - } - else - { - dol_print_error($this->db); - $this->error = $this->db->error(); - return -1; - } + $resql = $this->db->query($sql); + if ($resql) + { + while ($obj = $this->db->fetch_object($resql)) + { + $this->nb["projects"] = $obj->nb; + } + $this->db->free($resql); + return 1; + } else { + dol_print_error($this->db); + $this->error = $this->db->error(); + return -1; + } } @@ -2027,14 +1954,14 @@ class Project extends CommonObject */ public function hasDelay() { - global $conf; + global $conf; - if (!($this->statut == self::STATUS_VALIDATED)) return false; - if (!$this->datee && !$this->date_end) return false; + if (!($this->statut == self::STATUS_VALIDATED)) return false; + if (!$this->datee && !$this->date_end) return false; - $now = dol_now(); + $now = dol_now(); - return ($this->datee ? $this->datee : $this->date_end) < ($now - $conf->projet->warning_delay); + return ($this->datee ? $this->datee : $this->date_end) < ($now - $conf->projet->warning_delay); } @@ -2046,43 +1973,41 @@ class Project extends CommonObject */ public function info($id) { - $sql = 'SELECT c.rowid, datec as datec, tms as datem,'; - $sql .= ' date_close as datecloture,'; - $sql .= ' fk_user_creat as fk_user_author, fk_user_close as fk_use_cloture'; - $sql .= ' FROM '.MAIN_DB_PREFIX.'projet as c'; - $sql .= ' WHERE c.rowid = '.$id; - $result = $this->db->query($sql); - if ($result) - { - if ($this->db->num_rows($result)) - { - $obj = $this->db->fetch_object($result); - $this->id = $obj->rowid; - if ($obj->fk_user_author) - { - $cuser = new User($this->db); - $cuser->fetch($obj->fk_user_author); - $this->user_creation = $cuser; - } + $sql = 'SELECT c.rowid, datec as datec, tms as datem,'; + $sql .= ' date_close as datecloture,'; + $sql .= ' fk_user_creat as fk_user_author, fk_user_close as fk_use_cloture'; + $sql .= ' FROM '.MAIN_DB_PREFIX.'projet as c'; + $sql .= ' WHERE c.rowid = '.$id; + $result = $this->db->query($sql); + if ($result) + { + if ($this->db->num_rows($result)) + { + $obj = $this->db->fetch_object($result); + $this->id = $obj->rowid; + if ($obj->fk_user_author) + { + $cuser = new User($this->db); + $cuser->fetch($obj->fk_user_author); + $this->user_creation = $cuser; + } - if ($obj->fk_user_cloture) - { - $cluser = new User($this->db); - $cluser->fetch($obj->fk_user_cloture); - $this->user_cloture = $cluser; - } + if ($obj->fk_user_cloture) + { + $cluser = new User($this->db); + $cluser->fetch($obj->fk_user_cloture); + $this->user_cloture = $cluser; + } - $this->date_creation = $this->db->jdate($obj->datec); - $this->date_modification = $this->db->jdate($obj->datem); - $this->date_cloture = $this->db->jdate($obj->datecloture); - } + $this->date_creation = $this->db->jdate($obj->datec); + $this->date_modification = $this->db->jdate($obj->datem); + $this->date_cloture = $this->db->jdate($obj->datecloture); + } - $this->db->free($result); - } - else - { - dol_print_error($this->db); - } + $this->db->free($result); + } else { + dol_print_error($this->db); + } } /** @@ -2093,7 +2018,7 @@ class Project extends CommonObject * Existing categories are left untouch. * * @param int[]|int $categories Category or categories IDs - * @return void + * @return void */ public function setCategories($categories) { @@ -2152,9 +2077,9 @@ class Project extends CommonObject */ public function getLinesArray($user) { - require_once DOL_DOCUMENT_ROOT.'/projet/class/task.class.php'; - $taskstatic = new Task($this->db); + require_once DOL_DOCUMENT_ROOT.'/projet/class/task.class.php'; + $taskstatic = new Task($this->db); - $this->lines = $taskstatic->getTasksArray(0, $user, $this->id, 0, 0); + $this->lines = $taskstatic->getTasksArray(0, $user, $this->id, 0, 0); } } diff --git a/htdocs/projet/class/projectstats.class.php b/htdocs/projet/class/projectstats.class.php index 22868e96899..cb6150b6dc7 100644 --- a/htdocs/projet/class/projectstats.class.php +++ b/htdocs/projet/class/projectstats.class.php @@ -92,9 +92,7 @@ class ProjectStats extends Stats $label.' ('.price(price2num($row[0], 'MT'), 1, $langs, 1, -1, -1, $conf->currency).')', $row[0] ); - } - else - $other += $row[1]; + } else $other += $row[1]; $i++; } if ($num > $limit) @@ -281,9 +279,7 @@ class ProjectStats extends Stats $foundintocache = 1; $this->lastfetchdate[get_class($this).'_'.__FUNCTION__] = $filedate; - } - else - { + } else { dol_syslog(get_class($this).'::'.__FUNCTION__." cache file ".$newpathofdestfile." is not found or older than now - cachedelay (".$nowgmt." - ".$cachedelay.") so we can't use it."); } } @@ -293,9 +289,7 @@ class ProjectStats extends Stats { dol_syslog(get_class($this).'::'.__FUNCTION__." read data from cache file ".$newpathofdestfile." ".$filedate."."); $data = json_decode(file_get_contents($newpathofdestfile), true); - } - else - { + } else { $year = $startyear; while ($year <= $endyear) { @@ -329,8 +323,7 @@ class ProjectStats extends Stats fclose($fp); if (!empty($conf->global->MAIN_UMASK)) $newmask = $conf->global->MAIN_UMASK; @chmod($newpathofdestfile, octdec($newmask)); - } - else dol_syslog("Failed to write cache file", LOG_ERR); + } else dol_syslog("Failed to write cache file", LOG_ERR); $this->lastfetchdate[get_class($this).'_'.__FUNCTION__] = $nowgmt; } diff --git a/htdocs/projet/class/task.class.php b/htdocs/projet/class/task.class.php index 6136198fd5e..10f5a36d67f 100644 --- a/htdocs/projet/class/task.class.php +++ b/htdocs/projet/class/task.class.php @@ -26,6 +26,7 @@ */ require_once DOL_DOCUMENT_ROOT.'/core/class/commonobject.class.php'; +require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php'; /** @@ -204,7 +205,7 @@ class Task extends CommonObject // Update extrafield if (!$error) { - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + if (!$error) { $result = $this->insertExtraFields(); if ($result < 0) @@ -224,9 +225,7 @@ class Task extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return $this->id; } @@ -327,9 +326,7 @@ class Task extends CommonObject } else { return 0; } - } - else - { + } else { $this->error = "Error ".$this->db->lasterror(); return -1; } @@ -383,7 +380,7 @@ class Task extends CommonObject // Update extrafield if (!$error) { - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + if (!$error) { $result = $this->insertExtraFields(); if ($result < 0) @@ -438,9 +435,7 @@ class Task extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } @@ -542,9 +537,7 @@ class Task extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { //Delete associated link file if ($conf->projet->dir_output) { @@ -588,9 +581,7 @@ class Task extends CommonObject dol_syslog(get_class($this)."::hasChildren", LOG_DEBUG); $resql = $this->db->query($sql); - if (!$resql) { $error++; $this->errors[] = "Error ".$this->db->lasterror(); } - else - { + if (!$resql) { $error++; $this->errors[] = "Error ".$this->db->lasterror(); } else { $obj = $this->db->fetch_object($resql); if ($obj) $ret = $obj->nb; $this->db->free($resql); @@ -599,9 +590,7 @@ class Task extends CommonObject if (!$error) { return $ret; - } - else - { + } else { return -1; } } @@ -622,9 +611,7 @@ class Task extends CommonObject dol_syslog(get_class($this)."::hasTimeSpent", LOG_DEBUG); $resql = $this->db->query($sql); - if (!$resql) { $error++; $this->errors[] = "Error ".$this->db->lasterror(); } - else - { + if (!$resql) { $error++; $this->errors[] = "Error ".$this->db->lasterror(); } else { $obj = $this->db->fetch_object($resql); if ($obj) $ret = $obj->nb; $this->db->free($resql); @@ -633,9 +620,7 @@ class Task extends CommonObject if (!$error) { return $ret; - } - else - { + } else { return -1; } } @@ -798,8 +783,7 @@ class Task extends CommonObject $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."projet_task_extrafields as efpt ON (t.rowid = efpt.fk_object)"; $sql .= " WHERE p.entity IN (".getEntity('project').")"; $sql .= " AND t.fk_projet = p.rowid"; - } - elseif ($mode == 1) + } elseif ($mode == 1) { if ($filteronprojuser > 0) { @@ -815,9 +799,7 @@ class Task extends CommonObject } $sql .= ", ".MAIN_DB_PREFIX."element_contact as ec2"; $sql .= ", ".MAIN_DB_PREFIX."c_type_contact as ctc2"; - } - else - { + } else { $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."projet_task as t on t.fk_projet = p.rowid"; if ($includebilltime) { @@ -826,8 +808,7 @@ class Task extends CommonObject } $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."projet_task_extrafields as efpt ON (t.rowid = efpt.fk_object)"; $sql .= " WHERE p.entity IN (".getEntity('project').")"; - } - else return 'BadValueForParameterMode'; + } else return 'BadValueForParameterMode'; if ($filteronprojuser > 0) { @@ -973,9 +954,7 @@ class Task extends CommonObject $i++; } $this->db->free($resql); - } - else - { + } else { dol_print_error($this->db); } @@ -1053,9 +1032,7 @@ class Task extends CommonObject $i++; } $this->db->free($resql); - } - else - { + } else { dol_print_error($this->db); } @@ -1079,7 +1056,7 @@ class Task extends CommonObject while ($i < $num) { if ($source == 'thirdparty') $contactAlreadySelected[$i] = $tab[$i]['socid']; - else $contactAlreadySelected[$i] = $tab[$i]['id']; + else $contactAlreadySelected[$i] = $tab[$i]['id']; $i++; } return $contactAlreadySelected; @@ -1146,9 +1123,7 @@ class Task extends CommonObject if ($result < 0) { $ret = -1; } // End call triggers } - } - else - { + } else { $this->error = $this->db->lasterror(); $ret = -1; } @@ -1183,9 +1158,7 @@ class Task extends CommonObject if ($ret > 0) { $this->db->commit(); - } - else - { + } else { $this->db->rollback(); } return $ret; @@ -1245,9 +1218,7 @@ class Task extends CommonObject $this->timespent_nblines = ($obj->nblines ? $obj->nblines : 0); $this->db->free($resql); - } - else - { + } else { dol_print_error($this->db); } return $result; @@ -1302,9 +1273,7 @@ class Task extends CommonObject $this->db->free($resql); return $result; - } - else - { + } else { dol_print_error($this->db); return $result; } @@ -1355,9 +1324,7 @@ class Task extends CommonObject $this->db->free($resql); return 1; - } - else - { + } else { $this->error = "Error ".$this->db->lasterror(); return -1; } @@ -1442,9 +1409,7 @@ class Task extends CommonObject } $this->db->free($resql); - } - else - { + } else { dol_print_error($this->db); $this->error = "Error ".$this->db->lasterror(); return -1; @@ -1504,14 +1469,10 @@ class Task extends CommonObject { $this->db->rollback(); $ret = -1; - } - else $ret = 1; + } else $ret = 1; // End call triggers - } - else $ret = 1; - } - else - { + } else $ret = 1; + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); $ret = -1; @@ -1581,9 +1542,7 @@ class Task extends CommonObject if ($this->db->query($sql)) { $result = 0; - } - else - { + } else { $this->error = $this->db->lasterror(); $result = -2; } @@ -1599,9 +1558,7 @@ class Task extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } @@ -1713,9 +1670,7 @@ class Task extends CommonObject { $clone_task->note_private = ''; $clone_task->note_public = ''; - } - else - { + } else { $this->db->begin(); $res = $clone_task->update_note(dol_html_entity_decode($clone_task->note_public, ENT_QUOTES), '_public'); if ($res < 0) @@ -1723,9 +1678,7 @@ class Task extends CommonObject $this->error .= $clone_task->error; $error++; $this->db->rollback(); - } - else - { + } else { $this->db->commit(); } @@ -1736,9 +1689,7 @@ class Task extends CommonObject $this->error .= $clone_task->error; $error++; $this->db->rollback(); - } - else - { + } else { $this->db->commit(); } } @@ -1757,9 +1708,7 @@ class Task extends CommonObject { $projectstatic->fetch($project_id); $clone_project_ref = $projectstatic->ref; - } - else - { + } else { $clone_project_ref = $ori_project_ref; } @@ -1806,9 +1755,7 @@ class Task extends CommonObject $langs->load("errors"); $this->error .= $langs->trans("ErrorThisContactIsAlreadyDefinedAsThisType"); $error++; - } - else - { + } else { if ($clone_task->error != '') { $this->error .= $clone_task->error; @@ -1832,9 +1779,7 @@ class Task extends CommonObject { $this->db->commit(); return $clone_task_id; - } - else - { + } else { $this->db->rollback(); dol_syslog(get_class($this)."::createFromClone nbError: ".$error." error : ".$this->error, LOG_ERR); return -1; @@ -1881,12 +1826,10 @@ class Task extends CommonObject if ($mode == 0) { return $langs->trans($this->statuts[$status]); - } - elseif ($mode == 1) + } elseif ($mode == 1) { return $langs->trans($this->statuts_short[$status]); - } - elseif ($mode == 2) + } elseif ($mode == 2) { if ($status == 0) return img_picto($langs->trans($this->statuts_short[$status]), 'statut0').' '.$langs->trans($this->statuts_short[$status]); elseif ($status == 1) return img_picto($langs->trans($this->statuts_short[$status]), 'statut1').' '.$langs->trans($this->statuts_short[$status]); @@ -1894,8 +1837,7 @@ class Task extends CommonObject elseif ($status == 3) return img_picto($langs->trans($this->statuts_short[$status]), 'statut6').' '.$langs->trans($this->statuts_short[$status]); elseif ($status == 4) return img_picto($langs->trans($this->statuts_short[$status]), 'statut6').' '.$langs->trans($this->statuts_short[$status]); elseif ($status == 5) return img_picto($langs->trans($this->statuts_short[$status]), 'statut5').' '.$langs->trans($this->statuts_short[$status]); - } - elseif ($mode == 3) + } elseif ($mode == 3) { if ($status == 0) return img_picto($langs->trans($this->statuts_short[$status]), 'statut0'); elseif ($status == 1) return img_picto($langs->trans($this->statuts_short[$status]), 'statut1'); @@ -1903,8 +1845,7 @@ class Task extends CommonObject elseif ($status == 3) return img_picto($langs->trans($this->statuts_short[$status]), 'statut6'); elseif ($status == 4) return img_picto($langs->trans($this->statuts_short[$status]), 'statut6'); elseif ($status == 5) return img_picto($langs->trans($this->statuts_short[$status]), 'statut5'); - } - elseif ($mode == 4) + } elseif ($mode == 4) { if ($status == 0) return img_picto($langs->trans($this->statuts_short[$status]), 'statut0').' '.$langs->trans($this->statuts[$status]); elseif ($status == 1) return img_picto($langs->trans($this->statuts_short[$status]), 'statut1').' '.$langs->trans($this->statuts[$status]); @@ -1912,8 +1853,7 @@ class Task extends CommonObject elseif ($status == 3) return img_picto($langs->trans($this->statuts_short[$status]), 'statut6').' '.$langs->trans($this->statuts[$status]); elseif ($status == 4) return img_picto($langs->trans($this->statuts_short[$status]), 'statut6').' '.$langs->trans($this->statuts[$status]); elseif ($status == 5) return img_picto($langs->trans($this->statuts_short[$status]), 'statut5').' '.$langs->trans($this->statuts[$status]); - } - elseif ($mode == 5) + } elseif ($mode == 5) { /*if ($status==0) return $langs->trans($this->statuts_short[$status]).' '.img_picto($langs->trans($this->statuts_short[$status]),'statut0'); elseif ($status==1) return $langs->trans($this->statuts_short[$status]).' '.img_picto($langs->trans($this->statuts_short[$status]),'statut1'); @@ -1924,8 +1864,7 @@ class Task extends CommonObject */ //else return $this->progress.' %'; return ' '; - } - elseif ($mode == 6) + } elseif ($mode == 6) { /*if ($status==0) return $langs->trans($this->statuts[$status]).' '.img_picto($langs->trans($this->statuts_short[$status]),'statut0'); elseif ($status==1) return $langs->trans($this->statuts[$status]).' '.img_picto($langs->trans($this->statuts_short[$status]),'statut1'); @@ -2037,9 +1976,7 @@ class Task extends CommonObject } return $response; - } - else - { + } else { $this->error = $this->db->error(); return -1; } @@ -2086,9 +2023,7 @@ class Task extends CommonObject } $this->db->free($resql); return 1; - } - else - { + } else { dol_print_error($this->db); $this->error = $this->db->error(); return -1; diff --git a/htdocs/projet/class/taskstats.class.php b/htdocs/projet/class/taskstats.class.php index 12d6395af66..722736fe9b8 100644 --- a/htdocs/projet/class/taskstats.class.php +++ b/htdocs/projet/class/taskstats.class.php @@ -82,9 +82,7 @@ class TaskStats extends Stats $row[1], $row[0] ); - } - else - $other += $row[1]; + } else $other += $row[1]; $i++; } if ($num > $limit) diff --git a/htdocs/projet/comment.php b/htdocs/projet/comment.php index d16dca5ceb1..04e306f9dfb 100644 --- a/htdocs/projet/comment.php +++ b/htdocs/projet/comment.php @@ -123,8 +123,7 @@ print ''; // Visibility print ''; // Date start - end diff --git a/htdocs/projet/contact.php b/htdocs/projet/contact.php index 93ced9392c4..b8f1a24013d 100644 --- a/htdocs/projet/contact.php +++ b/htdocs/projet/contact.php @@ -73,16 +73,12 @@ if ($action == 'addcontact' && $user->rights->projet->creer) { header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else - { + } else { if ($object->error == 'DB_ERROR_RECORD_ALREADY_EXISTS') { $langs->load("errors"); setEventMessages($langs->trans("ErrorThisContactIsAlreadyDefinedAsThisType"), null, 'errors'); - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -94,9 +90,7 @@ if ($action == 'swapstatut' && $user->rights->projet->creer) if ($object->fetch($id)) { $result = $object->swapContactStatus(GETPOST('ligne', 'int')); - } - else - { + } else { dol_print_error($db); } } @@ -111,9 +105,7 @@ if (($action == 'deleteline' || $action == 'deletecontact') && $user->rights->pr { header("Location: contact.php?id=".$object->id); exit; - } - else - { + } else { dol_print_error($db); } } diff --git a/htdocs/projet/document.php b/htdocs/projet/document.php index e3dafef1246..9015ef0d4d4 100644 --- a/htdocs/projet/document.php +++ b/htdocs/projet/document.php @@ -55,11 +55,12 @@ if ($id > 0 || !empty($ref)) { } // Get parameters +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; @@ -156,9 +157,7 @@ if ($object->id > 0) $permission = ($userWrite > 0); $permtoedit = ($userWrite > 0); include_once DOL_DOCUMENT_ROOT.'/core/tpl/document_actions_post_headers.tpl.php'; -} -else -{ +} else { dol_print_error('', 'NoRecordFound'); } diff --git a/htdocs/projet/element.php b/htdocs/projet/element.php index 34dace09e93..84612ef76ce 100644 --- a/htdocs/projet/element.php +++ b/htdocs/projet/element.php @@ -526,6 +526,32 @@ $listofreferent = array( */ ); +// Change rules for benefit calculation +if (! empty($conf->global->PROJECT_ELEMENTS_FOR_PLUS_MARGIN)) { + foreach ($listofreferent as $key => $element) { + if ($listofreferent[$key]['margin'] == 'add') { + unset($listofreferent[$key]['margin']); + } + } + $newelementforplusmargin = explode(',', $conf->global->PROJECT_ELEMENTS_FOR_PLUS_MARGIN); + foreach ($newelementforplusmargin as $value) { + $listofreferent[$value]['margin']='add'; + } +} +if (! empty($conf->global->PROJECT_ELEMENTS_FOR_MINUS_MARGIN)) { + foreach ($listofreferent as $key => $element) { + if ($listofreferent[$key]['margin'] == 'add') { + unset($listofreferent[$key]['margin']); + } + } + $newelementforplusmargin = explode(',', $conf->global->PROJECT_ELEMENTS_FOR_MINUS_MARGIN); + foreach ($newelementforplusmargin as $value) { + $listofreferent[$value]['margin']='minus'; + } +} + + + $parameters = array('listofreferent'=>$listofreferent); $resHook = $hookmanager->executeHooks('completeListOfReferent', $parameters, $object, $action); @@ -542,8 +568,7 @@ if ($action == "addelement") { setEventMessages($object->error, $object->errors, 'errors'); } -} -elseif ($action == "unlink") +} elseif ($action == "unlink") { $tablename = GETPOST("tablename", "aZ09"); $projectField = GETPOSTISSET('projectfield') ? GETPOST('projectfield', 'aZ09') : 'fk_projet'; @@ -659,19 +684,15 @@ foreach ($listofreferent as $key => $value) { $tmp = $element->getSumOfAmount($elementuser, $dates, $datee); $total_ht_by_line = price2num($tmp['amount'], 'MT'); - } - else - { + } else { $tmp = $element->getSumOfAmount('', $dates, $datee); $total_ht_by_line = price2num($tmp['amount'], 'MT'); } - } - elseif ($key == 'loan') { + } elseif ($key == 'loan') { if ((empty($dates) && empty($datee)) || (intval($dates) <= $element->datestart && intval($datee) >= $element->dateend)) { // Get total loan $total_ht_by_line = -$element->capital; - } - else { + } else { // Get loan schedule according to date filter $total_ht_by_line = 0; $loanScheduleStatic = new LoanSchedule($element->db); @@ -690,8 +711,7 @@ foreach ($listofreferent as $key => $value) } } } - } - else $total_ht_by_line = $element->total_ht; + } else $total_ht_by_line = $element->total_ht; // Define $total_ttc_by_line if ($tablename == 'don' || $tablename == 'chargesociales' || $tablename == 'payment_various' || $tablename == 'payment_salary') $total_ttc_by_line = $element->amount; @@ -701,11 +721,9 @@ foreach ($listofreferent as $key => $value) { $defaultvat = get_default_tva($mysoc, $mysoc); $total_ttc_by_line = price2num($total_ht_by_line * (1 + ($defaultvat / 100)), 'MT'); - } - elseif ($key == 'loan') { + } elseif ($key == 'loan') { $total_ttc_by_line = $total_ht_by_line; // For loan there is actually no taxe managed in Dolibarr - } - else $total_ttc_by_line = $element->total_ttc; + } else $total_ttc_by_line = $element->total_ttc; // Change sign of $total_ht_by_line and $total_ttc_by_line for some cases if ($tablename == 'payment_various') @@ -819,8 +837,7 @@ foreach ($listofreferent as $key => $value) if ($selectList < 0) { setEventMessages($formproject->error, $formproject->errors, 'errors'); - } - elseif ($selectList) + } elseif ($selectList) { // Define form with the combo list of elements to link $addform .= '
    '; @@ -926,9 +943,7 @@ foreach ($listofreferent as $key => $value) if ($tablename != 'expensereport_det') { if (method_exists($element, 'fetch_thirdparty')) $element->fetch_thirdparty(); - } - else - { + } else { $expensereport = new ExpenseReport($db); $expensereport->fetch($element->fk_expensereport); } @@ -973,20 +988,16 @@ foreach ($listofreferent as $key => $value) if ($tablename == 'expensereport_det') { print $expensereport->getNomUrl(1); - } - else - { + } else { // Show ref with link if ($element instanceof Task) { print $element->getNomUrl(1, 'withproject', 'time'); print ' - '.dol_trunc($element->label, 48); - } - elseif ($key == 'loan') { + } elseif ($key == 'loan') { print $element->getNomUrl(1); print ' - '.dol_trunc($element->label, 48); - } - else print $element->getNomUrl(1); + } else print $element->getNomUrl(1); $element_doc = $element->element; $filename = dol_sanitizeFileName($element->ref); @@ -995,8 +1006,7 @@ foreach ($listofreferent as $key => $value) if ($element_doc === 'order_supplier') { $element_doc = 'commande_fournisseur'; $filedir = $conf->fournisseur->commande->multidir_output[$element->entity].'/'.dol_sanitizeFileName($element->ref); - } - elseif ($element_doc === 'invoice_supplier') { + } elseif ($element_doc === 'invoice_supplier') { $element_doc = 'facture_fournisseur'; $filename = get_exdir($element->id, 2, 0, 0, $element, 'product').dol_sanitizeFileName($element->ref); $filedir = $conf->fournisseur->facture->multidir_output[$element->entity].'/'.get_exdir($element->id, 2, 0, 0, $element, 'invoice_supplier').dol_sanitizeFileName($element->ref); @@ -1024,12 +1034,10 @@ foreach ($listofreferent as $key => $value) if ($tablename == 'commande_fournisseur' || $tablename == 'supplier_order') { $date = ($element->date_commande ? $element->date_commande : $element->date_valid); - } - elseif ($tablename == 'supplier_proposal') $date = $element->date_validation; // There is no other date for this + } elseif ($tablename == 'supplier_proposal') $date = $element->date_validation; // There is no other date for this elseif ($tablename == 'fichinter') $date = $element->datev; // There is no other date for this elseif ($tablename == 'projet_task') $date = ''; // We show no date. Showing date of beginning of task make user think it is date of time consumed - else - { + else { $date = $element->date; // invoice, ... if (empty($date)) $date = $element->date_contrat; if (empty($date)) $date = $element->datev; @@ -1037,8 +1045,7 @@ foreach ($listofreferent as $key => $value) $date = $element->$datefieldname; } } - } - elseif ($key == 'loan') { + } elseif ($key == 'loan') { $date = $element->datestart; } @@ -1047,16 +1054,14 @@ foreach ($listofreferent as $key => $value) { print dol_print_date($element->datep, 'dayhour'); if ($element->datef && $element->datef > $element->datep) print " - ".dol_print_date($element->datef, 'dayhour'); - } - elseif (in_array($tablename, array('projet_task'))) + } elseif (in_array($tablename, array('projet_task'))) { $tmpprojtime = $element->getSumOfAmount($elementuser, $dates, $datee); // $element is a task. $elementuser may be empty print ''; print convertSecondToTime($tmpprojtime['nbseconds'], 'allhourmin'); print ''; $total_time_by_line = $tmpprojtime['nbseconds']; - } - else print dol_print_date($date, 'day'); + } else print dol_print_date($date, 'day'); print ''; // Third party or user @@ -1067,14 +1072,12 @@ foreach ($listofreferent as $key => $value) $tmpuser = new User($db); $tmpuser->fetch($expensereport->fk_user_author); print $tmpuser->getNomUrl(1, '', 48); - } - elseif ($tablename == 'payment_salary') + } elseif ($tablename == 'payment_salary') { $tmpuser = new User($db); $tmpuser->fetch($element->fk_user); print $tmpuser->getNomUrl(1, '', 48); - } - elseif ($tablename == 'don' || $tablename == 'stock_mouvement') + } elseif ($tablename == 'don' || $tablename == 'stock_mouvement') { if ($element->fk_user_author > 0) { @@ -1082,8 +1085,7 @@ foreach ($listofreferent as $key => $value) $tmpuser2->fetch($element->fk_user_author); print $tmpuser2->getNomUrl(1, '', 48); } - } - elseif ($tablename == 'projet_task' && $key == 'project_task_time') // if $key == 'project_task', we don't want details per user + } elseif ($tablename == 'projet_task' && $key == 'project_task_time') // if $key == 'project_task', we don't want details per user { print $elementuser->getNomUrl(1); } @@ -1118,15 +1120,11 @@ foreach ($listofreferent as $key => $value) $langs->load("errors"); $warning = $langs->trans("WarningSomeLinesWithNullHourlyRate", $conf->currency); } - } - else - { + } else { $othermessage = $form->textwithpicto($langs->trans("NotAvailable"), $langs->trans("ModuleSalaryToDefineHourlyRateMustBeEnabled")); } - } - elseif ($key == 'loan') $total_ht_by_line = $element->capital; - else - { + } elseif ($key == 'loan') $total_ht_by_line = $element->capital; + else { $total_ht_by_line = $element->total_ht; } @@ -1149,8 +1147,7 @@ foreach ($listofreferent as $key => $value) } if ($warning) print ' '.img_warning($warning); print ''; - } - else print '
    '; + } else print ''; // Amount inc tax if (empty($value['disableamount'])) @@ -1166,15 +1163,11 @@ foreach ($listofreferent as $key => $value) // TODO Permission to read daily rate $defaultvat = get_default_tva($mysoc, $mysoc); $total_ttc_by_line = price2num($total_ht_by_line * (1 + ($defaultvat / 100)), 'MT'); - } - else - { + } else { $othermessage = $form->textwithpicto($langs->trans("NotAvailable"), $langs->trans("ModuleSalaryToDefineHourlyRateMustBeEnabled")); } - } - elseif ($key == 'loan') $total_ttc_by_line = $element->capital - $element->getSumPayment(); - else - { + } elseif ($key == 'loan') $total_ttc_by_line = $element->capital - $element->getSumPayment(); + else { $total_ttc_by_line = $element->total_ttc; } @@ -1197,33 +1190,27 @@ foreach ($listofreferent as $key => $value) } if ($warning) print ' '.img_warning($warning); print ''; - } - else print ''; + } else print ''; // Status print ''; @@ -1297,9 +1284,7 @@ foreach ($listofreferent as $key => $value) print ''; print ''; print ''; - } - else - { + } else { if (!is_array($elementarray)) // error { print $elementarray; diff --git a/htdocs/projet/ganttchart.inc.php b/htdocs/projet/ganttchart.inc.php index babacbd27bf..457345d2fe3 100644 --- a/htdocs/projet/ganttchart.inc.php +++ b/htdocs/projet/ganttchart.inc.php @@ -195,9 +195,7 @@ function constructGanttLine($tarr, $task, $task_dependencies, $level = 0, $proje if ($project_id && $level < 0) { $parent = '-'.$project_id; - } - else - { + } else { $parent = $task["task_parent_alternate_id"]; //$parent = $task["task_parent"]; } @@ -208,9 +206,7 @@ function constructGanttLine($tarr, $task, $task_dependencies, $level = 0, $proje { //$link=DOL_URL_ROOT.'/projet/tasks.php?withproject=1&id='.abs($task["task_id"]); $link = ''; - } - else - { + } else { $link = DOL_URL_ROOT.'/projet/tasks/contact.php?withproject=1&id='.$task["task_id"]; } diff --git a/htdocs/projet/ganttview.php b/htdocs/projet/ganttview.php index 314f945e604..d578f372777 100644 --- a/htdocs/projet/ganttview.php +++ b/htdocs/projet/ganttview.php @@ -281,8 +281,7 @@ if (count($tasksarray) > 0) $tasks[$taskcursor]['task_is_group'] = 1; $tasks[$taskcursor]['task_css'] = 'ggroupblack'; //$tasks[$taskcursor]['task_css'] = 'gtaskblue'; - } - elseif ($task->hasChildren() > 0) { + } elseif ($task->hasChildren() > 0) { $tasks[$taskcursor]['task_is_group'] = 1; //$tasks[$taskcursor]['task_is_group'] = 0; $tasks[$taskcursor]['task_css'] = 'ggroupblack'; @@ -379,15 +378,11 @@ if (count($tasksarray) > 0) print ''."\n"; print ''; - } - else - { + } else { $langs->load("admin"); print $langs->trans("AvailableOnlyIfJavascriptAndAjaxNotDisabled"); } -} -else -{ +} else { print '
    '.$langs->trans("NoTasks").'
    '; } diff --git a/htdocs/projet/graph_opportunities.inc.php b/htdocs/projet/graph_opportunities.inc.php index 8d0e7bb1e02..a18b2dc54a5 100644 --- a/htdocs/projet/graph_opportunities.inc.php +++ b/htdocs/projet/graph_opportunities.inc.php @@ -98,9 +98,7 @@ if (!empty($conf->global->PROJECT_USE_OPPORTUNITIES)) print ""; print "
    "; - } - else - { + } else { dol_print_error($db); } } diff --git a/htdocs/projet/index.php b/htdocs/projet/index.php index df6d5b3a13f..f4edfdea548 100644 --- a/htdocs/projet/index.php +++ b/htdocs/projet/index.php @@ -89,8 +89,7 @@ $morehtml .= 'rights->projet->all->lire) && !$socid) $tooltiphelp = $langs->trans("ProjectsDesc"); else $tooltiphelp = $langs->trans("ProjectsPublicDesc"); } @@ -116,7 +115,7 @@ if ($resql) $listofoppstatus[$objp->rowid] = $objp->percent; $listofopplabel[$objp->rowid] = $objp->label; $listofoppcode[$objp->rowid] = $objp->code; - switch($objp->code) { + switch ($objp->code) { case 'PROSP': $colorseries[$objp->rowid] = "-".$badgeStatus0; break; @@ -141,8 +140,7 @@ if ($resql) } $i++; } -} -else dol_print_error($db); +} else dol_print_error($db); //var_dump($listofoppcode); @@ -273,8 +271,7 @@ if ($resql) } } print "
    '.$langs->trans("Visibility").''; if ($object->public) print $langs->trans('SharedProject'); -else - print $langs->trans('PrivateProject'); +else print $langs->trans('PrivateProject'); print '
    '; if ($tablename == 'expensereport_det') { print $expensereport->getLibStatut(5); - } - elseif ($element instanceof CommonInvoice) + } elseif ($element instanceof CommonInvoice) { //This applies for Facture and FactureFournisseur print $element->getLibStatut(5, $element->getSommePaiement()); - } - elseif ($element instanceof Task) + } elseif ($element instanceof Task) { if ($element->progress != '') { print $element->progress.' %'; } - } - elseif ($tablename == 'stock_mouvement') + } elseif ($tablename == 'stock_mouvement') { print $element->getLibStatut(3); - } - else - { + } else { print $element->getLibStatut(5); } print ' 

    "; -} -else dol_print_error($db); +} else dol_print_error($db); $companystatic = new Societe($db); // We need a clean new object for next loop because current one has some properties set. @@ -318,7 +315,7 @@ if ($resql) } print ''; - print ''; + print ''; if ($obj->socid) { $companystatic->id = $obj->socid; @@ -327,9 +324,7 @@ if ($resql) $companystatic->status = $obj->status; print $companystatic->getNomUrl(1); - } - else - { + } else { print $langs->trans("OthersNotLinkedToThirdParty"); } print ''; @@ -353,9 +348,7 @@ if ($resql) } $db->free($resql); -} -else -{ +} else { dol_print_error($db); } print ""; diff --git a/htdocs/projet/info.php b/htdocs/projet/info.php index 0058a5a94dd..6c73d2cfc8b 100644 --- a/htdocs/projet/info.php +++ b/htdocs/projet/info.php @@ -52,9 +52,7 @@ if (GETPOST('actioncode', 'array')) { $actioncode = GETPOST('actioncode', 'array', 3); if (!count($actioncode)) $actioncode = '0'; -} -else -{ +} else { $actioncode = GETPOST("actioncode", "alpha", 3) ?GETPOST("actioncode", "alpha", 3) : (GETPOST("actioncode") == '0' ? '0' : (empty($conf->global->AGENDA_DEFAULT_FILTER_TYPE_FOR_OBJECT) ? '' : $conf->global->AGENDA_DEFAULT_FILTER_TYPE_FOR_OBJECT)); } $search_agenda_label = GETPOST('search_agenda_label'); diff --git a/htdocs/projet/list.php b/htdocs/projet/list.php index 26b00bae2a9..70ad0f61e96 100644 --- a/htdocs/projet/list.php +++ b/htdocs/projet/list.php @@ -233,9 +233,7 @@ if (empty($reshook)) } else { setEventMessages($langs->trans("DontHaveTheValidateStatus", $objecttmp->ref), null, 'warnings'); } - } - else - { + } else { setEventMessages($objecttmp->error, $objecttmp->errors, 'errors'); $error++; break; @@ -247,9 +245,7 @@ if (empty($reshook)) if ($nbok > 1) setEventMessages($langs->trans("RecordsClosed", $nbok), null, 'mesgs'); else setEventMessages($langs->trans("RecordsClosed", $nbok), null, 'mesgs'); $db->commit(); - } - else - { + } else { $db->rollback(); } } @@ -284,8 +280,7 @@ if ($resql) { $listofprojectcontacttype[$obj->rowid] = $obj->code; } -} -else dol_print_error($db); +} else dol_print_error($db); if (count($listofprojectcontacttype) == 0) $listofprojectcontacttype[0] = '0'; // To avoid sql syntax error if not found $distinct = 'DISTINCT'; // We add distinct until we are added a protection to be sure a contact of a project and task is only once. @@ -459,8 +454,7 @@ print ''; // Show description of content $texthelp = ''; if ($search_project_user == $user->id) $texthelp .= $langs->trans("MyProjectsDesc"); -else -{ +else { if ($user->rights->projet->all->lire && !$socid) $texthelp .= $langs->trans("ProjectsDesc"); else $texthelp .= $langs->trans("ProjectsPublicDesc"); } @@ -713,7 +707,7 @@ while ($i < min($num, $limit)) $object->public = $obj->public; $object->ref = $obj->ref; $object->datee = $db->jdate($obj->date_end); - $object->statut = $obj->status; // deprecated + $object->statut = $obj->status; // deprecated $object->status = $obj->status; $object->public = $obj->public; $object->opp_status = $obj->fk_opp_status; @@ -752,9 +746,7 @@ while ($i < min($num, $limit)) if ($obj->socid) { print $socstatic->getNomUrl(1); - } - else - { + } else { print ' '; } print ''; @@ -773,8 +765,7 @@ while ($i < min($num, $limit)) if ($nbofsalesrepresentative > 3) // We print only number { print $nbofsalesrepresentative; - } - elseif ($nbofsalesrepresentative > 0) + } elseif ($nbofsalesrepresentative > 0) { $userstatic = new User($db); $j = 0; @@ -794,9 +785,7 @@ while ($i < min($num, $limit)) } } //else print $langs->trans("NoSalesRepresentativeAffected"); - } - else - { + } else { print ' '; } print ''; @@ -919,7 +908,7 @@ while ($i < min($num, $limit)) // 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, 'totalarray'=>&$totalarray); $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/projet/stats/index.php b/htdocs/projet/stats/index.php index 38d12081b4f..6d56b2088e9 100644 --- a/htdocs/projet/stats/index.php +++ b/htdocs/projet/stats/index.php @@ -350,8 +350,7 @@ print ''; print '
    '; $stringtoshow .= ''; @@ -613,8 +598,7 @@ if ($action == 'create' && $user->rights->projet->creer && (empty($object->third print ''; } -} -elseif ($id > 0 || !empty($ref)) +} elseif ($id > 0 || !empty($ref)) { $selectedfields = $form->multiSelectArrayWithCheckbox('selectedfields', $arrayfields, $varpage); // This also change content of $arrayfields @@ -811,9 +795,7 @@ elseif ($id > 0 || !empty($ref)) // Show all lines in taskarray (recursive function to go down on tree) $j = 0; $level = 0; $nboftaskshown = projectLinesa($j, 0, $tasksarray, $level, true, 0, $tasksrole, $object->id, 1, $object->id, $filterprogresscalc, ($object->usage_bill_time ? 1 : 0), $arrayfields); - } - else - { + } else { $colspan = 10; if ($object->usage_bill_time) $colspan += 2; print ''; @@ -836,9 +818,7 @@ elseif ($id > 0 || !empty($ref)) include_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php'; cleanCorruptedTree($db, 'projet_task', 'fk_task_parent'); } - } - else - { + } else { if ($nboftaskshown < count($tasksarray) && !GETPOST('search_user_id', 'int')) { include_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php'; diff --git a/htdocs/projet/tasks/comment.php b/htdocs/projet/tasks/comment.php index 82b4d8fdc10..e8a4ae93168 100644 --- a/htdocs/projet/tasks/comment.php +++ b/htdocs/projet/tasks/comment.php @@ -74,9 +74,7 @@ if (!empty($project_ref) && !empty($withproject)) if (count($objectsarray) > 0) { $id = $objectsarray[0]->id; - } - else - { + } else { header("Location: ".DOL_URL_ROOT.'/projet/tasks.php?id='.$projectstatic->id.(empty($mode) ? '' : '&mode='.$mode)); } } @@ -280,8 +278,7 @@ if ($id > 0 || !empty($ref)) { $projectsListId = $projectstatic->getProjectsAuthorizedForUser($user, 0, 1); $object->next_prev_filter = " fk_projet in (".$projectsListId.")"; - } - else $object->next_prev_filter = " fk_projet = ".$projectstatic->id; + } else $object->next_prev_filter = " fk_projet = ".$projectstatic->id; $morehtmlref = ''; diff --git a/htdocs/projet/tasks/contact.php b/htdocs/projet/tasks/contact.php index 0c9a09b37c0..2c3737c6788 100644 --- a/htdocs/projet/tasks/contact.php +++ b/htdocs/projet/tasks/contact.php @@ -68,18 +68,14 @@ if ($action == 'addcontact' && $user->rights->projet->creer) if ($result <= 0) { dol_print_error($db, $projectstatic->error, $projectstatic->errors); - } - else - { + } else { $contactsofproject = $projectstatic->getListContactId('internal'); foreach ($contactsofproject as $key => $val) { $result = $object->add_contact($val, GETPOST("type"), GETPOST("source")); } } - } - else - { + } else { $result = $object->add_contact($idfortaskuser, GETPOST("type"), GETPOST("source")); } } @@ -88,16 +84,12 @@ if ($action == 'addcontact' && $user->rights->projet->creer) { header("Location: ".$_SERVER["PHP_SELF"]."?id=".$object->id.($withproject ? '&withproject=1' : '')); exit; - } - else - { + } else { if ($object->error == 'DB_ERROR_RECORD_ALREADY_EXISTS') { $langs->load("errors"); setEventMessages($langs->trans("ErrorThisContactIsAlreadyDefinedAsThisType"), null, 'errors'); - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -109,9 +101,7 @@ if ($action == 'swapstatut' && $user->rights->projet->creer) if ($object->fetch($id, $ref)) { $result = $object->swapContactStatus(GETPOST('ligne')); - } - else - { + } else { dol_print_error($db); } } @@ -126,9 +116,7 @@ if ($action == 'deleteline' && $user->rights->projet->creer) { header("Location: ".$_SERVER["PHP_SELF"]."?id=".$object->id.($withproject ? '&withproject=1' : '')); exit; - } - else - { + } else { dol_print_error($db); } } @@ -142,9 +130,7 @@ if (!empty($project_ref) && !empty($withproject)) if (count($tasksarray) > 0) { $id = $tasksarray[0]->id; - } - else - { + } else { header("Location: ".DOL_URL_ROOT.'/projet/tasks.php?id='.$projectstatic->id.($withproject ? '&withproject=1' : '').(empty($mode) ? '' : '&mode='.$mode)); exit; } @@ -325,8 +311,7 @@ if ($id > 0 || !empty($ref)) { $projectsListId = $projectstatic->getProjectsAuthorizedForUser($user, 0, 1); $object->next_prev_filter = " fk_projet in (".$projectsListId.")"; - } - else $object->next_prev_filter = " fk_projet = ".$projectstatic->id; + } else $object->next_prev_filter = " fk_projet = ".$projectstatic->id; $morehtmlref = ''; @@ -395,11 +380,11 @@ if ($id > 0 || !empty($ref)) print img_object('', 'user').' '.$langs->trans("Users"); print ''; - print ''; - print ''; - print ''; - print ''; @@ -545,9 +530,7 @@ if ($id > 0 || !empty($ref)) } } print "
    '; -if ($mesg) { print $mesg; } -else { +if ($mesg) { print $mesg; } else { $stringtoshow .= $px1->show(); $stringtoshow .= "
    \n"; if (!empty($conf->global->PROJECT_USE_OPPORTUNITIES)) diff --git a/htdocs/projet/tasks.php b/htdocs/projet/tasks.php index cb004bc33a0..f395a4ee27a 100644 --- a/htdocs/projet/tasks.php +++ b/htdocs/projet/tasks.php @@ -236,8 +236,7 @@ if ($action == 'createtask' && $user->rights->projet->creer) setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("Label")), null, 'errors'); $action = 'create'; $error++; - } - elseif (empty($_POST['task_parent'])) + } elseif (empty($_POST['task_parent'])) { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("ChildOfProjectTask")), null, 'errors'); $action = 'create'; @@ -273,17 +272,13 @@ if ($action == 'createtask' && $user->rights->projet->creer) if ($taskid > 0) { $result = $task->add_contact($_POST["userid"], 'TASKEXECUTIVE', 'internal'); - } - else - { + } else { if ($db->lasterrno() == 'DB_ERROR_RECORD_ALREADY_EXISTS') { $langs->load("projects"); setEventMessages($langs->trans('NewTaskRefSuggested'), '', 'warnings'); $duplicate_code_error = true; - } - else - { + } else { setEventMessages($task->error, $task->errors, 'errors'); } $action = 'create'; @@ -297,23 +292,19 @@ if ($action == 'createtask' && $user->rights->projet->creer) { header("Location: ".$backtopage); exit; - } - elseif (empty($projectid)) + } elseif (empty($projectid)) { header("Location: ".DOL_URL_ROOT.'/projet/tasks/list.php'.(empty($mode) ? '' : '?mode='.$mode)); exit; } $id = $projectid; } - } - else - { + } else { if (!empty($backtopage)) { header("Location: ".$backtopage); exit; - } - elseif (empty($id)) + } elseif (empty($id)) { // We go back on task list header("Location: ".DOL_URL_ROOT.'/projet/tasks/list.php'.(empty($mode) ? '' : '?mode='.$mode)); @@ -499,7 +490,7 @@ if ($action == 'create' && $user->rights->projet->creer && (empty($object->third { if ($id > 0 || !empty($ref)) print '
    '; - print load_fiche_titre($langs->trans("NewTask"), '', 'project'); + print load_fiche_titre($langs->trans("NewTask"), '', 'projecttask'); if ($object->statut == Project::STATUS_CLOSED) { @@ -507,9 +498,7 @@ if ($action == 'create' && $user->rights->projet->creer && (empty($object->third $langs->load("errors"); print $langs->trans("WarningProjectClosed"); print ''; - } - else - { + } else { print '
    '; print ''; print ''; @@ -536,9 +525,7 @@ if ($action == 'create' && $user->rights->projet->creer && (empty($object->third if (empty($duplicate_code_error)) { print (GETPOSTISSET("ref") ?GETPOST("ref", 'alpha') : $defaultref); - } - else - { + } else { print $defaultref; } print ''; @@ -558,9 +545,7 @@ if ($action == 'create' && $user->rights->projet->creer && (empty($object->third if (is_array($contactsofproject) && count($contactsofproject)) { print $form->select_dolusers($user->id, 'userid', 0, '', 0, '', $contactsofproject, 0, 0, 0, '', 0, '', 'maxwidth300'); - } - else - { + } else { print $langs->trans("NoUserAssignedToTheProject"); } print '
    '.$langs->trans("NoTasks").'
    '; + print ''; print $conf->global->MAIN_INFO_SOCIETE_NOM; print ''; + print ''; // On recupere les id des users deja selectionnes if ($object->project->public) $contactsofproject = ''; // Everybody else $contactsofproject = $projectstatic->getListContactId('internal'); @@ -430,13 +415,13 @@ if ($id > 0 || !empty($ref)) print img_object('', 'contact').' '.$langs->trans("ThirdPartyContacts"); print ''; + print ''; $thirdpartyofproject = $projectstatic->getListContactId('thirdparty'); $selectedCompany = isset($_GET["newcompany"]) ? $_GET["newcompany"] : $projectstatic->socid; $selectedCompany = $formcompany->selectCompaniesForNewContact($object, 'id', $selectedCompany, 'newcompany', $thirdpartyofproject, 0, '&withproject='.$withproject); print ''; + print ''; $contactofproject = $projectstatic->getListContactId('external'); $nbofcontacts = $form->select_contacts($selectedCompany, '', 'contactid', 0, '', $contactofproject); print '
    "; - } - else - { + } else { print "ErrorRecordNotFound"; } } diff --git a/htdocs/projet/tasks/document.php b/htdocs/projet/tasks/document.php index 8febad854b7..1493542c5ed 100644 --- a/htdocs/projet/tasks/document.php +++ b/htdocs/projet/tasks/document.php @@ -51,11 +51,12 @@ $socid = 0; if (!$user->rights->projet->lire) accessforbidden(); // Get parameters +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; if (!$sortorder) $sortorder = "ASC"; @@ -78,9 +79,7 @@ if (!empty($project_ref) && !empty($withproject)) { $id = $tasksarray[0]->id; $object->fetch($id); - } - else - { + } else { header("Location: ".DOL_URL_ROOT.'/projet/tasks.php?id='.$projectstatic->id.($withproject ? '&withproject=1' : '').(empty($mode) ? '' : '&mode='.$mode)); exit; } @@ -102,9 +101,7 @@ if ($id > 0 || !empty($ref)) $object->project = clone $projectstatic; $upload_dir = $conf->projet->dir_output.'/'.dol_sanitizeFileName($projectstatic->ref).'/'.dol_sanitizeFileName($object->ref); - } - else - { + } else { dol_print_error($db); } } @@ -270,8 +267,7 @@ if ($object->id > 0) { $projectsListId = $projectstatic->getProjectsAuthorizedForUser($user, 0, 1); $object->next_prev_filter = " fk_projet in (".$projectsListId.")"; - } - else $object->next_prev_filter = " fk_projet = ".$projectstatic->id; + } else $object->next_prev_filter = " fk_projet = ".$projectstatic->id; $morehtmlref = ''; @@ -317,9 +313,7 @@ if ($object->id > 0) $permtoedit = $user->rights->projet->creer; $relativepathwithnofile = dol_sanitizeFileName($projectstatic->ref).'/'.dol_sanitizeFileName($object->ref).'/'; include_once DOL_DOCUMENT_ROOT.'/core/tpl/document_actions_post_headers.tpl.php'; -} -else -{ +} else { header('Location: index.php'); exit; } diff --git a/htdocs/projet/tasks/list.php b/htdocs/projet/tasks/list.php index 67131c29ef4..8930220f6ec 100644 --- a/htdocs/projet/tasks/list.php +++ b/htdocs/projet/tasks/list.php @@ -45,12 +45,14 @@ $id = GETPOST('id', 'int'); $search_all = trim((GETPOST('search_all', 'alphanohtml') != '') ?GETPOST('search_all', 'alphanohtml') : GETPOST('sall', 'alphanohtml')); $search_categ = GETPOST("search_categ", 'alpha'); $search_project = GETPOST('search_project'); -if (!isset($_GET['search_projectstatus']) && !isset($_POST['search_projectstatus'])) + +$search_projectstatus = GETPOST('search_projectstatus'); +if (!isset($search_projectstatus) || $search_projectstatus === '') { if ($search_all != '') $search_projectstatus = -1; else $search_projectstatus = 1; } -else $search_projectstatus = GETPOST('search_projectstatus'); + $search_project_ref = GETPOST('search_project_ref'); $search_project_title = GETPOST('search_project_title'); $search_task_ref = GETPOST('search_task_ref'); @@ -243,8 +245,7 @@ if ($resql) { $listofprojectcontacttype[$obj->rowid] = $obj->code; } -} -else dol_print_error($db); +} else dol_print_error($db); if (count($listofprojectcontacttype) == 0) $listofprojectcontacttype[0] = '0'; // To avoid sql syntax error if not found // Get id of types of contacts for tasks (This list never contains a lot of elements) $listoftaskcontacttype = array(); @@ -258,8 +259,7 @@ if ($resql) { $listoftaskcontacttype[$obj->rowid] = $obj->code; } -} -else dol_print_error($db); +} else dol_print_error($db); if (count($listoftaskcontacttype) == 0) $listoftaskcontacttype[0] = '0'; // To avoid sql syntax error if not found $distinct = 'DISTINCT'; // We add distinct until we are added a protection to be sure a contact of a project and task is assigned only once. @@ -435,13 +435,12 @@ print ''; // Show description of content $texthelp = ''; if ($search_task_user == $user->id) $texthelp .= $langs->trans("MyTasksDesc"); -else -{ +else { if ($user->rights->projet->all->lire && !$socid) $texthelp .= $langs->trans("TasksOnProjectsDesc"); else $texthelp .= $langs->trans("TasksOnProjectsPublicDesc"); } -print_barre_liste($form->textwithpicto($title, $texthelp), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'project', 0, $newcardbutton, '', $limit, 0, 0, 1); +print_barre_liste($form->textwithpicto($title, $texthelp), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'projecttask', 0, $newcardbutton, '', $limit, 0, 0, 1); $topicmail = "Information"; $modelmail = "task"; @@ -751,9 +750,7 @@ while ($i < min($num, $limit)) $socstatic->id = $obj->socid; $socstatic->name = $obj->name; print $socstatic->getNomUrl(1); - } - else - { + } else { print ' '; } print ''; @@ -854,9 +851,7 @@ while ($i < min($num, $limit)) print convertSecondToTime($obj->tobill, 'allhourmin'); $totalarray['val']['t.tobill'] += $obj->tobill; $totalarray['totaltobill'] += $obj->tobill; - } - else - { + } else { print ''.$langs->trans("NA").''; } print ''; @@ -873,9 +868,7 @@ while ($i < min($num, $limit)) print convertSecondToTime($obj->billed, 'allhourmin'); $totalarray['val']['t.billed'] += $obj->billed; $totalarray['totalbilled'] += $obj->billed; - } - else - { + } else { print ''.$langs->trans("NA").''; } print ''; @@ -886,7 +879,7 @@ while ($i < min($num, $limit)) // 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, 'totalarray'=>&$totalarray); $reshook = $hookmanager->executeHooks('printFieldListValue', $parameters); // Note that $action and $object may have been modified by hook print $hookmanager->resPrint; // Date creation @@ -940,8 +933,7 @@ if (isset($totalarray['totaldurationeffectivefield']) || isset($totalarray['tota { if ($num < $limit && empty($offset)) print ''.$langs->trans("Total").''; else print ''.$langs->trans("Totalforthispage").''; - } - elseif ($totalarray['totalplannedworkloadfield'] == $i) print ''.convertSecondToTime($totalarray['totalplannedworkload'], $plannedworkloadoutputformat).''; + } elseif ($totalarray['totalplannedworkloadfield'] == $i) print ''.convertSecondToTime($totalarray['totalplannedworkload'], $plannedworkloadoutputformat).''; elseif ($totalarray['totaldurationeffectivefield'] == $i) print ''.convertSecondToTime($totalarray['totaldurationeffective'], $timespentoutputformat).''; elseif ($totalarray['totalprogress_calculatedfield'] == $i) print ''.($totalarray['totalplannedworkload'] > 0 ? round(100 * $totalarray['totaldurationeffective'] / $totalarray['totalplannedworkload'], 2).' %' : '').''; elseif ($totalarray['totalprogress_declaredfield'] == $i) print ''.($totalarray['totalplannedworkload'] > 0 ? round(100 * $totalarray['totaldurationdeclared'] / $totalarray['totalplannedworkload'], 2).' %' : '').''; diff --git a/htdocs/projet/tasks/note.php b/htdocs/projet/tasks/note.php index 4967257570e..7af9bbbacef 100644 --- a/htdocs/projet/tasks/note.php +++ b/htdocs/projet/tasks/note.php @@ -57,9 +57,7 @@ if ($id > 0 || !empty($ref)) if (!empty($projectstatic->socid)) $projectstatic->fetch_thirdparty(); $object->project = clone $projectstatic; - } - else - { + } else { dol_print_error($db); } } @@ -75,9 +73,7 @@ if (!empty($project_ref) && !empty($withproject)) { $id = $tasksarray[0]->id; $object->fetch($id); - } - else - { + } else { header("Location: ".DOL_URL_ROOT.'/projet/tasks.php?id='.$projectstatic->id.(empty($mode) ? '' : '&mode='.$mode)); } } @@ -243,8 +239,7 @@ if ($object->id > 0) { $projectsListId = $projectstatic->getProjectsAuthorizedForUser($user, 0, 1); $object->next_prev_filter = " fk_projet in (".$projectsListId.")"; - } - else $object->next_prev_filter = " fk_projet = ".$projectstatic->id; + } else $object->next_prev_filter = " fk_projet = ".$projectstatic->id; $morehtmlref = ''; diff --git a/htdocs/projet/tasks/stats/index.php b/htdocs/projet/tasks/stats/index.php index c758664d2c6..a0bf33b34ba 100644 --- a/htdocs/projet/tasks/stats/index.php +++ b/htdocs/projet/tasks/stats/index.php @@ -67,7 +67,7 @@ llxHeader('', $langs->trans('Tasks')); $title = $langs->trans("TasksStatistics"); $dir = $conf->projet->dir_output.'/temp'; -print load_fiche_titre($title, '', 'project'); +print load_fiche_titre($title, '', 'projecttask'); dol_mkdir($dir); @@ -199,8 +199,7 @@ print '
    '; print '
    '; $stringtoshow .= ''; // Other attributes @@ -605,9 +595,7 @@ if ($id > 0 || !empty($ref)) if ($user->rights->projet->creer) { print ''.$langs->trans('Modify').''; - } - else - { + } else { print ''.$langs->trans('Modify').''; } @@ -617,14 +605,10 @@ if ($id > 0 || !empty($ref)) if (!$object->hasChildren() && !$object->hasTimeSpent()) { print ''.$langs->trans('Delete').''; - } - else - { + } else { print ''.$langs->trans('Delete').''; } - } - else - { + } else { print ''.$langs->trans('Delete').''; } diff --git a/htdocs/projet/tasks/time.php b/htdocs/projet/tasks/time.php index ea74482b4a1..6c482264bbf 100644 --- a/htdocs/projet/tasks/time.php +++ b/htdocs/projet/tasks/time.php @@ -154,17 +154,13 @@ if ($action == 'addtimespent' && $user->rights->projet->lire) if ($id || $ref) { $object->fetch($id, $ref); - } - else - { + } else { if (!GETPOST('taskid', 'int') || GETPOST('taskid', 'int') < 0) { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("Task")), null, 'errors'); $action = 'createtime'; $error++; - } - else - { + } else { $object->fetch(GETPOST('taskid', 'int')); } } @@ -178,9 +174,7 @@ if ($action == 'addtimespent' && $user->rights->projet->lire) setEventMessages($langs->trans("ProjectMustBeValidatedFirst"), null, 'errors'); $action = 'createtime'; $error++; - } - else - { + } else { $object->timespent_note = $_POST["timespent_note"]; if (GETPOST('progress', 'int') > 0) $object->progress = GETPOST('progress', 'int'); // If progress is -1 (not defined), we do not change value $object->timespent_duration = $_POST["timespent_durationhour"] * 60 * 60; // We store duration in seconds @@ -189,9 +183,7 @@ if ($action == 'addtimespent' && $user->rights->projet->lire) { $object->timespent_date = dol_mktime(GETPOST("timehour"), GETPOST("timemin"), 0, GETPOST("timemonth"), GETPOST("timeday"), GETPOST("timeyear")); $object->timespent_withhour = 1; - } - else - { + } else { $object->timespent_date = dol_mktime(12, 0, 0, GETPOST("timemonth"), GETPOST("timeday"), GETPOST("timeyear")); } $object->timespent_fk_user = $_POST["userid"]; @@ -199,17 +191,13 @@ if ($action == 'addtimespent' && $user->rights->projet->lire) if ($result >= 0) { setEventMessages($langs->trans("RecordSaved"), null, 'mesgs'); - } - else - { + } else { setEventMessages($langs->trans($object->error), null, 'errors'); $error++; } } } - } - else - { + } else { if (empty($id)) $action = 'createtime'; else $action = 'createtime'; } @@ -244,9 +232,7 @@ if (($action == 'updateline' || $action == 'updatesplitline') && !$_POST["cancel { $object->timespent_date = dol_mktime(GETPOST("timelinehour"), GETPOST("timelinemin"), 0, GETPOST("timelinemonth"), GETPOST("timelineday"), GETPOST("timelineyear")); $object->timespent_withhour = 1; - } - else - { + } else { $object->timespent_date = dol_mktime(12, 0, 0, GETPOST("timelinemonth"), GETPOST("timelineday"), GETPOST("timelineyear")); } $object->timespent_fk_user = $_POST["userid_line"]; @@ -254,15 +240,11 @@ if (($action == 'updateline' || $action == 'updatesplitline') && !$_POST["cancel if ($result >= 0) { setEventMessages($langs->trans("RecordSaved"), null, 'mesgs'); - } - else - { + } else { setEventMessages($langs->trans($object->error), null, 'errors'); $error++; } - } - else - { + } else { $object->fetch($id, $ref); // TODO Check that ($task_time->fk_user == $user->id || in_array($task_time->fk_user, $childids)) @@ -270,14 +252,12 @@ if (($action == 'updateline' || $action == 'updatesplitline') && !$_POST["cancel $object->timespent_note = $_POST["timespent_note_line"]; $object->timespent_old_duration = $_POST["old_duration"]; $object->timespent_duration = $_POST["new_durationhour"] * 60 * 60; // We store duration in seconds - $object->timespent_duration += $_POST["new_durationmin"] * 60; // We store duration in seconds + $object->timespent_duration += ($_POST["new_durationmin"] ? $_POST["new_durationmin"] : 0) * 60; // We store duration in seconds if (GETPOST("timelinehour") != '' && GETPOST("timelinehour") >= 0) // If hour was entered { $object->timespent_date = dol_mktime(GETPOST("timelinehour"), GETPOST("timelinemin"), 0, GETPOST("timelinemonth"), GETPOST("timelineday"), GETPOST("timelineyear")); $object->timespent_withhour = 1; - } - else - { + } else { $object->timespent_date = dol_mktime(12, 0, 0, GETPOST("timelinemonth"), GETPOST("timelineday"), GETPOST("timelineyear")); } $object->timespent_fk_user = $_POST["userid_line"]; @@ -286,16 +266,12 @@ if (($action == 'updateline' || $action == 'updatesplitline') && !$_POST["cancel if ($result >= 0) { setEventMessages($langs->trans("RecordSaved"), null, 'mesgs'); - } - else - { + } else { setEventMessages($langs->trans($object->error), null, 'errors'); $error++; } } - } - else - { + } else { $action = ''; } } @@ -312,9 +288,7 @@ if ($action == 'confirm_delete' && $confirm == "yes" && $user->rights->projet->l setEventMessages($langs->trans($object->error), null, 'errors'); $error++; $action = ''; - } - else - { + } else { setEventMessages($langs->trans("RecordDeleted"), null, 'mesgs'); } } @@ -328,9 +302,7 @@ if (!empty($project_ref) && !empty($withproject)) if (count($tasksarray) > 0) { $id = $tasksarray[0]->id; - } - else - { + } else { header("Location: ".DOL_URL_ROOT.'/projet/tasks.php?id='.$projectstatic->id.($withproject ? '&withproject=1' : '').(empty($mode) ? '' : '&mode='.$mode)); exit; } @@ -346,14 +318,12 @@ if (GETPOST('projectid', 'int') > 0) $result = $projectstatic->fetch($projectidforalltimes); if (!empty($projectstatic->socid)) $projectstatic->fetch_thirdparty(); $res = $projectstatic->fetch_optionals(); -} -elseif (GETPOST('project_ref', 'alpha')) +} elseif (GETPOST('project_ref', 'alpha')) { $projectstatic->fetch(0, GETPOST('project_ref', 'alpha')); $projectidforalltimes = $projectstatic->id; $withproject = 1; -} -elseif ($id > 0) +} elseif ($id > 0) { $object->fetch($id); $result = $projectstatic->fetch($object->fk_project); @@ -367,9 +337,7 @@ if ($action == 'confirm_generateinvoice') if (!($projectstatic->thirdparty->id > 0)) { setEventMessages($langs->trans("ThirdPartyRequiredToGenerateInvoice"), null, 'errors'); - } - else - { + } else { include_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php'; include_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php'; include_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php'; @@ -407,9 +375,7 @@ if ($action == 'confirm_generateinvoice') $txtva = $dataforprice['tva_tx']; $localtax1 = $dataforprice['localtax1']; $localtax2 = $dataforprice['localtax2']; - } - else - { + } else { $pu_ht = 0; $txtva = get_default_tva($mysoc, $projectstatic->thirdparty); $localtax1 = get_default_localtax($mysoc, $projectstatic->thirdparty, 1); @@ -422,8 +388,7 @@ if ($action == 'confirm_generateinvoice') if ($invoiceToUse) { $tmpinvoice->fetch($invoiceToUse); - } - else { + } else { $result = $tmpinvoice->create($user); if ($result <= 0) { @@ -474,8 +439,7 @@ if ($action == 'confirm_generateinvoice') break; } } - } - elseif ($generateinvoicemode == 'onelineperperiod') { + } elseif ($generateinvoicemode == 'onelineperperiod') { $arrayoftasks = array(); foreach ($toselect as $key => $value) { @@ -518,8 +482,7 @@ if ($action == 'confirm_generateinvoice') break; } } - } - elseif ($generateinvoicemode == 'onelinepertask') { + } elseif ($generateinvoicemode == 'onelinepertask') { $arrayoftasks = array(); foreach ($toselect as $key => $value) { @@ -569,9 +532,7 @@ if ($action == 'confirm_generateinvoice') //var_dump($tmpinvoice); $db->commit(); - } - else - { + } else { $db->rollback(); } } @@ -601,8 +562,7 @@ if (($id > 0 || !empty($ref)) || $projectidforalltimes > 0) $result = $projectstatic->fetch($projectidforalltimes); if (!empty($projectstatic->socid)) $projectstatic->fetch_thirdparty(); $res = $projectstatic->fetch_optionals(); - } - elseif ($object->fetch($id, $ref) >= 0) + } elseif ($object->fetch($id, $ref) >= 0) { if (!empty($conf->global->PROJECT_ALLOW_COMMENT_ON_TASK) && method_exists($object, 'fetchComments') && empty($object->comments)) $object->fetchComments(); $result = $projectstatic->fetch($object->fk_project); @@ -759,15 +719,12 @@ if (($id > 0 || !empty($ref)) || $projectidforalltimes > 0) { $backtourl = $_SERVER['PHP_SELF'].'?projectid='.$projectstatic->id.($withproject ? '&withproject=1' : ''); $linktocreatetimeUrl = $_SERVER['PHP_SELF'].'?'.($withproject ? 'withproject=1' : '').'&projectid='.$projectstatic->id.'&action=createtime'.$param.'&backtopage='.urlencode($backtourl); - } - else // We are on tab 'Time Spent' of task + } else // We are on tab 'Time Spent' of task { $backtourl = $_SERVER['PHP_SELF'].'?id='.$object->id.($withproject ? '&withproject=1' : ''); $linktocreatetimeUrl = $_SERVER['PHP_SELF'].'?'.($withproject ? 'withproject=1' : '').($object->id > 0 ? '&id='.$object->id : '&projectid='.$projectstatic->id).'&action=createtime'.$param.'&backtopage='.urlencode($backtourl); } - } - else - { + } else { $linktocreatetimeBtnStatus = -2; $linktocreatetimeHelpText = $langs->trans("NotOwnerOfProject"); } @@ -806,8 +763,7 @@ if (($id > 0 || !empty($ref)) || $projectidforalltimes > 0) { $projectsListId = $projectstatic->getProjectsAuthorizedForUser($user, 0, 1); $object->next_prev_filter = " fk_projet in (".$projectsListId.")"; - } - else $object->next_prev_filter = " fk_projet = ".$projectstatic->id; + } else $object->next_prev_filter = " fk_projet = ".$projectstatic->id; $morehtmlref = ''; @@ -873,8 +829,7 @@ if (($id > 0 || !empty($ref)) || $projectidforalltimes > 0) $tmparray = $object->getSummaryOfTimeSpent(); if ($tmparray['total_duration'] > 0) print round($tmparray['total_duration'] / $object->planned_workload * 100, 2).' %'; else print '0 %'; - } - else print ''.$langs->trans("WorkloadNotDefined").''; + } else print ''.$langs->trans("WorkloadNotDefined").''; print ''; print ''; @@ -1069,9 +1024,7 @@ if (($id > 0 || !empty($ref)) || $projectidforalltimes > 0) if (is_numeric($nbtotalofrecords) && $limit > $nbtotalofrecords) { $num = $nbtotalofrecords; - } - else - { + } else { $sql .= $db->plimit($limit + 1, $offset); $resql = $db->query($sql); @@ -1093,9 +1046,7 @@ if (($id > 0 || !empty($ref)) || $projectidforalltimes > 0) $title = $langs->trans("ListTaskTimeUserProject"); print_barre_liste($title, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'generic', 0, $linktocreatetime, '', $limit); - } - else - { + } else { print ''."\n"; $title = $langs->trans("ListTaskTimeForTask"); @@ -1111,9 +1062,7 @@ if (($id > 0 || !empty($ref)) || $projectidforalltimes > 0) $i++; } $db->free($resql); - } - else - { + } else { dol_print_error($db); } @@ -1171,9 +1120,7 @@ if (($id > 0 || !empty($ref)) || $projectidforalltimes > 0) if ($projectstatic->public) $contactsofproject = array(); print $form->select_dolusers((GETPOST('userid', 'int') ? GETPOST('userid', 'int') : $userid), 'userid', 0, '', 0, '', $contactsofproject, 0, 0, 0, '', 0, $langs->trans("ResourceNotAssignedToProject"), 'maxwidth200'); - } - else - { + } else { if ($nboftasks) { print img_error($langs->trans('FirstAddRessourceToAllocateTime')).' '.$langs->trans('FirstAddRessourceToAllocateTime'); } @@ -1332,11 +1279,8 @@ if (($id > 0 || !empty($ref)) || $projectidforalltimes > 0) if (empty($task_time->task_date_withhour)) { print $form->selectDate(($date2 ? $date2 : $date1), 'timeline', 3, 3, 2, "timespent_date", 1, 0); - } - else print $form->selectDate(($date2 ? $date2 : $date1), 'timeline', 1, 1, 2, "timespent_date", 1, 0); - } - else - { + } else print $form->selectDate(($date2 ? $date2 : $date1), 'timeline', 1, 1, 2, "timespent_date", 1, 0); + } else { print dol_print_date(($date2 ? $date2 : $date1), ($task_time->task_date_withhour ? 'dayhour' : 'day')); } print ''; @@ -1352,9 +1296,7 @@ if (($id > 0 || !empty($ref)) || $projectidforalltimes > 0) if ($action == 'editline' && $_GET['lineid'] == $task_time->rowid) { $formproject->selectTasks(-1, GETPOST('taskid', 'int') ?GETPOST('taskid', 'int') : $task_time->fk_task, 'taskid', 0, 0, 1, 1, 0, 0, 'maxwidth300', $projectstatic->id, ''); - } - else - { + } else { $tasktmp->id = $task_time->fk_task; $tasktmp->ref = $task_time->ref; $tasktmp->label = $task_time->label; @@ -1377,10 +1319,10 @@ if (($id > 0 || !empty($ref)) || $projectidforalltimes > 0) } } - // User + // By User if (!empty($arrayfields['author']['checked'])) { - print ''; if (!$i) $totalarray['nbfield']++; - } - elseif ($action == 'editline' && $_GET['lineid'] == $task_time->rowid) + } elseif ($action == 'editline' && $_GET['lineid'] == $task_time->rowid) { print ''; } @@ -1436,9 +1373,7 @@ if (($id > 0 || !empty($ref)) || $projectidforalltimes > 0) { print ''; print $form->select_duration('new_duration', $task_time->task_duration, 0, 'text'); - } - else - { + } else { print convertSecondToTime($task_time->task_duration, 'allhourmin'); } print ''; @@ -1452,7 +1387,7 @@ if (($id > 0 || !empty($ref)) || $projectidforalltimes > 0) // Value spent if (!empty($arrayfields['value']['checked'])) { - print ''; @@ -1478,14 +1413,10 @@ if (($id > 0 || !empty($ref)) || $projectidforalltimes > 0) { print $tmpinvoice->getNomUrl(1); } - } - else - { + } else { print $langs->trans("No"); } - } - else - { + } else { print ''.$langs->trans("NA").''; } } @@ -1501,7 +1432,7 @@ if (($id > 0 || !empty($ref)) || $projectidforalltimes > 0) */ // Fields from hook - $parameters = array('arrayfields'=>$arrayfields, 'obj'=>$task_time); + $parameters = array('arrayfields'=>$arrayfields, 'obj'=>$task_time, 'i'=>$i, 'totalarray'=>&$totalarray); $reshook = $hookmanager->executeHooks('printFieldListValue', $parameters); // Note that $action and $object may have been modified by hook print $hookmanager->resPrint; @@ -1513,8 +1444,7 @@ if (($id > 0 || !empty($ref)) || $projectidforalltimes > 0) print ''; print '
    '; print ''; - } - elseif ($user->rights->projet->lire || $user->rights->projet->all->creer) // Read project and enter time consumed on assigned tasks + } elseif ($user->rights->projet->lire || $user->rights->projet->all->creer) // Read project and enter time consumed on assigned tasks { if ($task_time->fk_user == $user->id || in_array($task_time->fk_user, $childids) || $user->rights->projet->all->creer) { @@ -1566,11 +1496,8 @@ if (($id > 0 || !empty($ref)) || $projectidforalltimes > 0) if (empty($task_time->task_date_withhour)) { print $form->selectDate(($date2 ? $date2 : $date1), 'timeline', 3, 3, 2, "timespent_date", 1, 0); - } - else print $form->selectDate(($date2 ? $date2 : $date1), 'timeline', 1, 1, 2, "timespent_date", 1, 0); - } - else - { + } else print $form->selectDate(($date2 ? $date2 : $date1), 'timeline', 1, 1, 2, "timespent_date", 1, 0); + } else { print dol_print_date(($date2 ? $date2 : $date1), ($task_time->task_date_withhour ? 'dayhour' : 'day')); } print ''; @@ -1618,9 +1545,7 @@ if (($id > 0 || !empty($ref)) || $projectidforalltimes > 0) } else { print img_error($langs->trans('FirstAddRessourceToAllocateTime')).$langs->trans('FirstAddRessourceToAllocateTime'); } - } - else - { + } else { $userstatic->id = $task_time->fk_user; $userstatic->lastname = $task_time->lastname; $userstatic->firstname = $task_time->firstname; @@ -1638,14 +1563,11 @@ if (($id > 0 || !empty($ref)) || $projectidforalltimes > 0) if ($action == 'splitline' && $_GET['lineid'] == $task_time->rowid) { print ''; - } - else - { + } else { print dol_nl2br($task_time->note); } print ''; - } - elseif ($action == 'splitline' && $_GET['lineid'] == $task_time->rowid) + } elseif ($action == 'splitline' && $_GET['lineid'] == $task_time->rowid) { print ''; } @@ -1658,9 +1580,7 @@ if (($id > 0 || !empty($ref)) || $projectidforalltimes > 0) { print ''; print $form->select_duration('new_duration', $task_time->task_duration, 0, 'text'); - } - else - { + } else { print convertSecondToTime($task_time->task_duration, 'allhourmin'); } print ''; @@ -1714,11 +1634,8 @@ if (($id > 0 || !empty($ref)) || $projectidforalltimes > 0) if (empty($task_time->task_date_withhour)) { print $form->selectDate(($date2 ? $date2 : $date1), 'timeline_2', 3, 3, 2, "timespent_date", 1, 0); - } - else print $form->selectDate(($date2 ? $date2 : $date1), 'timeline_2', 1, 1, 2, "timespent_date", 1, 0); - } - else - { + } else print $form->selectDate(($date2 ? $date2 : $date1), 'timeline_2', 1, 1, 2, "timespent_date", 1, 0); + } else { print dol_print_date(($date2 ? $date2 : $date1), ($task_time->task_date_withhour ? 'dayhour' : 'day')); } print ''; @@ -1766,9 +1683,7 @@ if (($id > 0 || !empty($ref)) || $projectidforalltimes > 0) } else { print img_error($langs->trans('FirstAddRessourceToAllocateTime')).$langs->trans('FirstAddRessourceToAllocateTime'); } - } - else - { + } else { $userstatic->id = $task_time->fk_user; $userstatic->lastname = $task_time->lastname; $userstatic->firstname = $task_time->firstname; @@ -1786,14 +1701,11 @@ if (($id > 0 || !empty($ref)) || $projectidforalltimes > 0) if ($action == 'splitline' && $_GET['lineid'] == $task_time->rowid) { print ''; - } - else - { + } else { print dol_nl2br($task_time->note); } print ''; - } - elseif ($action == 'splitline' && $_GET['lineid'] == $task_time->rowid) + } elseif ($action == 'splitline' && $_GET['lineid'] == $task_time->rowid) { print ''; } @@ -1806,9 +1718,7 @@ if (($id > 0 || !empty($ref)) || $projectidforalltimes > 0) { print ''; print $form->select_duration('new_duration_2', 0, 0, 'text'); - } - else - { + } else { print convertSecondToTime($task_time->task_duration, 'allhourmin'); } print ''; @@ -1865,8 +1775,7 @@ if (($id > 0 || !empty($ref)) || $projectidforalltimes > 0) { if ($num < $limit && empty($offset)) print ''; else print ''; - } - elseif ($totalarray['totaldurationfield'] == $i) print ''; + } elseif ($totalarray['totaldurationfield'] == $i) print ''; elseif ($totalarray['totalvaluefield'] == $i) print ''; //elseif ($totalarray['totalvaluebilledfield'] == $i) print ''; else print ''; diff --git a/htdocs/public/agenda/agendaexport.php b/htdocs/public/agenda/agendaexport.php index a7eef6c2ede..9530757b283 100644 --- a/htdocs/public/agenda/agendaexport.php +++ b/htdocs/public/agenda/agendaexport.php @@ -109,8 +109,7 @@ if ($reshook < 0) { print '
    '.$hookmanager->error.'
    '; } llxFooterVierge(); -} -elseif (empty($reshook)) { +} elseif (empty($reshook)) { // Check exportkey if (empty($_GET["exportkey"]) || $conf->global->MAIN_AGENDA_XCAL_EXPORTKEY != $_GET["exportkey"]) { $user->getrights(); @@ -188,9 +187,7 @@ if ($format == 'ical' || $format == 'vcal') //header("Location: ".DOL_URL_ROOT.'/document.php?modulepart=agenda&file='.urlencode($filename)); exit; - } - else - { + } else { print 'Error '.$agenda->error; exit; @@ -226,9 +223,7 @@ if ($format == 'rss') // header("Location: ".DOL_URL_ROOT.'/document.php?modulepart=agenda&file='.urlencode($filename)); exit; - } - else - { + } else { print 'Error '.$agenda->error; exit; diff --git a/htdocs/public/cron/cron_run_jobs.php b/htdocs/public/cron/cron_run_jobs.php index 1cfe1d4b0b3..9eb0579680a 100644 --- a/htdocs/public/cron/cron_run_jobs.php +++ b/htdocs/public/cron/cron_run_jobs.php @@ -90,9 +90,7 @@ if ($result < 0) echo "User Error:".$user->error; dol_syslog("cron_run_jobs.php:: User Error:".$user->error, LOG_ERR); exit; -} -else -{ +} else { if (empty($user->id)) { echo " User login:".$userlogin." do not exists"; @@ -167,9 +165,7 @@ if (is_array($qualifiedjobs) && (count($qualifiedjobs) > 0)) echo "\nUser Error: ".$user->error."\n"; dol_syslog("cron_run_jobs.php:: User Error:".$user->error, LOG_ERR); exit(-1); - } - else - { + } else { if ($result == 0) { echo "\nUser login: ".$userlogin." does not exists for entity ".$conf->entity."\n"; @@ -206,9 +202,7 @@ if (is_array($qualifiedjobs) && (count($qualifiedjobs) > 0)) echo "You can also enable module Log if not yet enabled, run again and take a look into dolibarr.log file\n"; dol_syslog("cron_run_jobs.php::run_jobs Error".$cronjob->error, LOG_ERR); $nbofjobslaunchedko++; - } - else - { + } else { $nbofjobslaunchedok++; } @@ -225,9 +219,7 @@ if (is_array($qualifiedjobs) && (count($qualifiedjobs) > 0)) } echo " - reprogrammed\n"; - } - else - { + } else { echo " - not qualified\n"; dol_syslog("cron_run_jobs.php job not qualified line->datenextrun:".dol_print_date($line->datenextrun, 'dayhourrfc')." line->datestart:".dol_print_date($line->datestart, 'dayhourrfc')." line->dateend:".dol_print_date($line->dateend, 'dayhourrfc')." now:".dol_print_date($now, 'dayhourrfc')); @@ -237,9 +229,7 @@ if (is_array($qualifiedjobs) && (count($qualifiedjobs) > 0)) $conf = $savconf; echo "Result: ".($nbofjobs)." jobs - ".($nbofjobslaunchedok + $nbofjobslaunchedko)." launched = ".$nbofjobslaunchedok." OK + ".$nbofjobslaunchedko." KO"; -} -else -{ +} else { echo "Result: No active jobs found."; } diff --git a/htdocs/public/demo/demo.css b/htdocs/public/demo/demo.css index 9328a8ecd1b..b185f8c933f 100644 --- a/htdocs/public/demo/demo.css +++ b/htdocs/public/demo/demo.css @@ -105,8 +105,11 @@ img.demothumb { object-fit: contain; height: 140px; background-position-y: bottom; + background-position-x: right; +} +.demologo { + width: 200px; } - @media only screen and (max-width: 767px) { diff --git a/htdocs/public/demo/index.php b/htdocs/public/demo/index.php index c470055dbce..768b7d42392 100644 --- a/htdocs/public/demo/index.php +++ b/htdocs/public/demo/index.php @@ -144,17 +144,14 @@ foreach ($modulesdir as $dir) if ($modName) { - try - { + try { include_once $dir.$file; $objMod = new $modName($db); if ($objMod->numero > 0) { $j = $objMod->numero; - } - else - { + } else { $j = 1000 + $i; } @@ -175,8 +172,7 @@ foreach ($modulesdir as $dir) $j++; $i++; } - } - catch (Exception $e) + } catch (Exception $e) { dol_syslog("Failed to load ".$dir.$file." ".$e->getMessage(), LOG_ERR); } @@ -274,13 +270,13 @@ print "\n"; print '
    '; print '
    '; -print ''; +print ''; print '
    '; print '
    '; print '
    '; print '
    '; -print '
    '.$langs->trans("DemoDesc").'

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

    '; print '
    '.$langs->trans("ChooseYourDemoProfil").'
    '; print '
    '; print '
    '; @@ -380,9 +376,7 @@ foreach ($demoprofiles as $profilearray) { print "\n".''; print ''; - } - else - { + } else { $modulo = ($j % $nbcolsmod); //if ($modulo == 0) print ''; print ''; @@ -434,9 +428,7 @@ if (!empty($conf->google->enabled) && !empty($conf->global->MAIN_GOOGLE_AD_CLIEN print 'src="http://pagead2.googlesyndication.com/pagead/show_ads.js">'."\n"; print ''."\n"; print ''."\n"; - } - else - { + } else { print ''."\n"; } } diff --git a/htdocs/public/donations/donateurs_code.php b/htdocs/public/donations/donateurs_code.php index c92108d7723..49114b89f46 100644 --- a/htdocs/public/donations/donateurs_code.php +++ b/htdocs/public/donations/donateurs_code.php @@ -87,9 +87,7 @@ if ($resql) if ($objp->public) { print "\n"; - } - else - { + } else { print "\n"; } print "\n"; @@ -98,14 +96,10 @@ if ($resql) $i++; } print "
    '; -if ($mesg) { print $mesg; } -else { +if ($mesg) { print $mesg; } else { $stringtoshow .= $px1->show(); $stringtoshow .= "
    \n"; } diff --git a/htdocs/projet/tasks/task.php b/htdocs/projet/tasks/task.php index da15a73f66f..7a109eb1f50 100644 --- a/htdocs/projet/tasks/task.php +++ b/htdocs/projet/tasks/task.php @@ -113,9 +113,7 @@ if ($action == 'update' && !$_POST["cancel"] && $user->rights->projet->creer) setEventMessages($object->error, $object->errors, 'errors'); } } - } - else - { + } else { $action = 'edit'; } } @@ -131,9 +129,7 @@ if ($action == 'confirm_delete' && $confirm == "yes" && $user->rights->projet->s { header('Location: '.DOL_URL_ROOT.'/projet/tasks.php?restore_lastsearch_values=1&id='.$projectstatic->id.($withproject ? '&withproject=1' : '')); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); $action = ''; } @@ -149,9 +145,7 @@ if (!empty($project_ref) && !empty($withproject)) if (count($tasksarray) > 0) { $id = $tasksarray[0]->id; - } - else - { + } else { header("Location: ".DOL_URL_ROOT.'/projet/tasks.php?id='.$projectstatic->id.(empty($mode) ? '' : '&mode='.$mode)); } } @@ -462,9 +456,7 @@ if ($id > 0 || !empty($ref)) print ''; print ''; - } - else - { + } else { /* * Fiche tache en mode visu */ @@ -482,8 +474,7 @@ if ($id > 0 || !empty($ref)) { $projectsListId = $projectstatic->getProjectsAuthorizedForUser($user, 0, 1); $object->next_prev_filter = " fk_projet in (".$projectsListId.")"; - } - else $object->next_prev_filter = " fk_projet = ".$projectstatic->id; + } else $object->next_prev_filter = " fk_projet = ".$projectstatic->id; $morehtmlref = ''; @@ -567,8 +558,7 @@ if ($id > 0 || !empty($ref)) $tmparray = $object->getSummaryOfTimeSpent(); if ($tmparray['total_duration'] > 0 && !empty($object->planned_workload)) print round($tmparray['total_duration'] / $object->planned_workload * 100, 2).' %'; else print '0 %'; - } - else print ''.$langs->trans("WorkloadNotDefined").''; + } else print ''.$langs->trans("WorkloadNotDefined").''; print '
    '; + print ''; if ($action == 'editline' && $_GET['lineid'] == $task_time->rowid) { if (empty($object->id)) $object->fetch($id); @@ -1390,13 +1332,11 @@ if (($id > 0 || !empty($ref)) || $projectidforalltimes > 0) } if (count($contactsoftask) > 0) { print img_object('', 'user', 'class="hideonsmartphone"'); - print $form->select_dolusers($task_time->fk_user, 'userid_line', 0, '', 0, '', $contactsoftask); + print $form->select_dolusers($task_time->fk_user, 'userid_line', 0, '', 0, '', $contactsoftask, '0', 0, 0, '', 0, '', 'maxwidth200'); } else { print img_error($langs->trans('FirstAddRessourceToAllocateTime')).$langs->trans('FirstAddRessourceToAllocateTime'); } - } - else - { + } else { $userstatic->id = $task_time->fk_user; $userstatic->lastname = $task_time->lastname; $userstatic->firstname = $task_time->firstname; @@ -1415,15 +1355,12 @@ if (($id > 0 || !empty($ref)) || $projectidforalltimes > 0) if ($action == 'editline' && $_GET['lineid'] == $task_time->rowid) { print ''; - } - else - { + } else { print dol_nl2br($task_time->note); } print ''; + print ''; $value = price2num($task_time->thm * $task_time->task_duration / 3600); print price($value, 1, $langs, 1, -1, -1, $conf->currency); print ''.$langs->trans("Total").''.$langs->trans("Totalforthispage").''.convertSecondToTime($totalarray['totalduration'], 'allhourmin').''.convertSecondToTime($totalarray['totalduration'], 'allhourmin').''.price($totalarray['totalvalue']).''.price($totalarray['totalvaluebilled']).'
    ".dolGetFirstLastname($objp->firstname, $objp->lastname)." ".$objp->societe."Anonyme Anonyme".dol_print_date($db->jdate($objp->datedon))."
    "; - } - else - { + } else { print "Aucun don publique"; } -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/public/members/new.php b/htdocs/public/members/new.php index 5b456893bf9..7eb45f008e6 100644 --- a/htdocs/public/members/new.php +++ b/htdocs/public/members/new.php @@ -107,15 +107,13 @@ function llxHeaderVierge($title, $head = "", $disablejs = 0, $disablehead = 0, $ { $urllogo = DOL_URL_ROOT.'/viewimage.php?cache=1&modulepart=mycompany&file='.urlencode('logos/thumbs/'.$mysoc->logo_small); $width = 150; - } - elseif (!empty($mysoc->logo) && is_readable($conf->mycompany->dir_output.'/logos/'.$mysoc->logo)) + } elseif (!empty($mysoc->logo) && is_readable($conf->mycompany->dir_output.'/logos/'.$mysoc->logo)) { $urllogo = DOL_URL_ROOT.'/viewimage.php?cache=1&modulepart=mycompany&file='.urlencode('logos/'.$mysoc->logo); $width = 150; - } - elseif (is_readable(DOL_DOCUMENT_ROOT.'/theme/dolibarr_logo.png')) + } elseif (is_readable(DOL_DOCUMENT_ROOT.'/theme/dolibarr_logo.svg')) { - $urllogo = DOL_URL_ROOT.'/theme/dolibarr_logo.png'; + $urllogo = DOL_URL_ROOT.'/theme/dolibarr_logo.svg'; $width = 150; } @@ -130,7 +128,7 @@ function llxHeaderVierge($title, $head = "", $disablejs = 0, $disablehead = 0, $ print '>'; print '
    '; if (empty($conf->global->MAIN_HIDE_POWERED_BY)) { - print ''; + print ''; } print '
    '; } @@ -343,10 +341,8 @@ if ($action == 'add') if (preg_match('/\d\.\d/', $appli)) { if (!preg_match('/'.preg_quote(DOL_VERSION).'/', $appli)) $appli .= " (".DOL_VERSION.")"; // If new title contains a version that is different than core - } - else $appli .= " ".DOL_VERSION; - } - else $appli .= " ".DOL_VERSION; + } else $appli .= " ".DOL_VERSION; + } else $appli .= " ".DOL_VERSION; $to = $adh->makeSubstitution($conf->global->MAIN_INFO_SOCIETE_MAIL); $from = $conf->global->ADHERENT_MAIL_FROM; @@ -375,8 +371,7 @@ if ($action == 'add') { $urlback = $conf->global->MEMBER_URL_REDIRECT_SUBSCRIPTION; // TODO Make replacement of __AMOUNT__, etc... - } - else $urlback = $_SERVER["PHP_SELF"]."?action=added"; + } else $urlback = $_SERVER["PHP_SELF"]."?action=added"; if (!empty($conf->global->MEMBER_NEWFORM_PAYONLINE) && $conf->global->MEMBER_NEWFORM_PAYONLINE != '-1') { @@ -390,14 +385,11 @@ if ($action == 'add') if (!empty($conf->global->PAYMENT_SECURITY_TOKEN_UNIQUE)) { $urlback .= '&securekey='.urlencode(dol_hash($conf->global->PAYMENT_SECURITY_TOKEN.'membersubscription'.$adh->ref, 2)); - } - else - { + } else { $urlback .= '&securekey='.urlencode($conf->global->PAYMENT_SECURITY_TOKEN); } } - } - elseif ($conf->global->MEMBER_NEWFORM_PAYONLINE == 'paybox') + } elseif ($conf->global->MEMBER_NEWFORM_PAYONLINE == 'paybox') { $urlback = DOL_MAIN_URL_ROOT.'/public/paybox/newpayment.php?from=membernewform&source=membersubscription&ref='.urlencode($adh->ref); if (price2num(GETPOST('amount', 'alpha'))) $urlback .= '&amount='.price2num(GETPOST('amount', 'alpha')); @@ -407,14 +399,11 @@ if ($action == 'add') if (!empty($conf->global->PAYMENT_SECURITY_TOKEN_UNIQUE)) { $urlback .= '&securekey='.urlencode(dol_hash($conf->global->PAYMENT_SECURITY_TOKEN.'membersubscription'.$adh->ref, 2)); - } - else - { + } else { $urlback .= '&securekey='.urlencode($conf->global->PAYMENT_SECURITY_TOKEN); } } - } - elseif ($conf->global->MEMBER_NEWFORM_PAYONLINE == 'paypal') + } elseif ($conf->global->MEMBER_NEWFORM_PAYONLINE == 'paypal') { $urlback = DOL_MAIN_URL_ROOT.'/public/paypal/newpayment.php?from=membernewform&source=membersubscription&ref='.urlencode($adh->ref); if (price2num(GETPOST('amount', 'alpha'))) $urlback .= '&amount='.price2num(GETPOST('amount', 'alpha')); @@ -424,14 +413,11 @@ if ($action == 'add') if (!empty($conf->global->PAYMENT_SECURITY_TOKEN_UNIQUE)) { $urlback .= '&securekey='.urlencode(dol_hash($conf->global->PAYMENT_SECURITY_TOKEN.'membersubscription'.$adh->ref, 2)); - } - else - { + } else { $urlback .= '&securekey='.urlencode($conf->global->PAYMENT_SECURITY_TOKEN); } } - } - elseif ($conf->global->MEMBER_NEWFORM_PAYONLINE == 'stripe') + } elseif ($conf->global->MEMBER_NEWFORM_PAYONLINE == 'stripe') { $urlback = DOL_MAIN_URL_ROOT.'/public/stripe/newpayment.php?from=membernewform&source=membersubscription&ref='.$adh->ref; if (price2num(GETPOST('amount', 'alpha'))) $urlback .= '&amount='.price2num(GETPOST('amount', 'alpha')); @@ -441,15 +427,11 @@ if ($action == 'add') if (!empty($conf->global->PAYMENT_SECURITY_TOKEN_UNIQUE)) { $urlback .= '&securekey='.urlencode(dol_hash($conf->global->PAYMENT_SECURITY_TOKEN.'membersubscription'.$adh->ref, 2)); - } - else - { + } else { $urlback .= '&securekey='.urlencode($conf->global->PAYMENT_SECURITY_TOKEN); } } - } - else - { + } else { dol_print_error('', "Autosubscribe form is setup to ask an online payment for a not managed online payment"); exit; } @@ -457,9 +439,7 @@ if ($action == 'add') if (!empty($entity)) $urlback .= '&entity='.$entity; dol_syslog("member ".$adh->ref." was created, we redirect to ".$urlback); - } - else - { + } else { $error++; $errmsg .= join('
    ', $adh->errors); } @@ -471,9 +451,7 @@ if ($action == 'add') Header("Location: ".$urlback); exit; - } - else - { + } else { $db->rollback(); } } @@ -574,9 +552,7 @@ if (empty($conf->global->MEMBER_NEWFORM_FORCETYPE)) print ''.$langs->trans("Type").' *'; print $form->selectarray("type", $adht->liste_array(), GETPOST('type') ?GETPOST('type') : $defaulttype, $isempty); print ''."\n"; -} -else -{ +} else { $adht->fetch($conf->global->MEMBER_NEWFORM_FORCETYPE); print ''; } @@ -588,9 +564,7 @@ if (empty($conf->global->MEMBER_NEWFORM_FORCEMORPHY)) print ''.$langs->trans('MemberNature').' *'."\n"; print $form->selectarray("morphy", $morphys, GETPOST('morphy'), 1); print ''."\n"; -} -else -{ +} else { print $morphys[$conf->global->MEMBER_NEWFORM_FORCEMORPHY]; print ''; } @@ -732,9 +706,7 @@ if (!empty($conf->global->MEMBER_NEWFORM_AMOUNT) if (!empty($conf->global->MEMBER_NEWFORM_EDITAMOUNT)) { print ''; - } - else - { + } else { print ''; print ''; } diff --git a/htdocs/public/members/public_card.php b/htdocs/public/members/public_card.php index 195a7560631..c1677b2902b 100644 --- a/htdocs/public/members/public_card.php +++ b/htdocs/public/members/public_card.php @@ -66,7 +66,7 @@ $extrafields = new ExtraFields($db); $morehead = ''; if (!empty($conf->global->MEMBER_PUBLIC_CSS)) $morehead = ''; -else $morehead = ''; +else $morehead = ''; llxHeaderVierge($langs->trans("MemberCard"), $morehead); @@ -84,9 +84,7 @@ if ($id > 0) if (empty($object->public)) { print $langs->trans("ErrorThisMemberIsNotPublic"); - } - else - { + } else { print ''; print '\n"; diff --git a/htdocs/public/members/public_list.php b/htdocs/public/members/public_list.php index 0514c5ad565..cb5b9308ed4 100644 --- a/htdocs/public/members/public_list.php +++ b/htdocs/public/members/public_list.php @@ -101,7 +101,7 @@ $form = new Form($db); $morehead = ''; if (!empty($conf->global->MEMBER_PUBLIC_CSS)) $morehead = ''; -else $morehead = ''; +else $morehead = ''; llxHeaderVierge($langs->trans("ListOfValidatedPublicMembers"), $morehead); @@ -152,18 +152,14 @@ if ($result) print ''."\n"; - } - else - { + } else { print "\n"; } print ""; $i++; } print "
    '.$langs->trans("Type").''.$object->type."
    '; print $form->showphoto('memberphoto', $objp, 64); print ' 
    "; -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/public/notice.php b/htdocs/public/notice.php index 626aba2cd32..a86b8c68e42 100644 --- a/htdocs/public/notice.php +++ b/htdocs/public/notice.php @@ -38,9 +38,7 @@ if (!GETPOST('transkey', 'alphanohtml') && !GETPOST('transphrase', 'alphanohtml' { print 'Sorry, it seems your internet connexion is off.
    '; print 'You need to be connected to network to use this software.
    '; -} -else -{ +} else { $langs->load("error"); $langs->load("other"); diff --git a/htdocs/public/onlinesign/newonlinesign.php b/htdocs/public/onlinesign/newonlinesign.php index 83e757b78f8..2031c11a3ad 100644 --- a/htdocs/public/onlinesign/newonlinesign.php +++ b/htdocs/public/onlinesign/newonlinesign.php @@ -174,8 +174,7 @@ if (!empty($logosmall) && is_readable($conf->mycompany->dir_output.'/logos/thumb $urllogo = DOL_URL_ROOT.'/viewimage.php?modulepart=mycompany&entity='.$conf->entity.'&file='.urlencode('logos/thumbs/'.$logosmall); $urllogofull = $dolibarr_main_url_root.'/viewimage.php?modulepart=mycompany&entity='.$conf->entity.'&file='.urlencode('logos/thumbs/'.$logosmall); $width = 150; -} -elseif (!empty($logo) && is_readable($conf->mycompany->dir_output.'/logos/'.$logo)) +} elseif (!empty($logo) && is_readable($conf->mycompany->dir_output.'/logos/'.$logo)) { $urllogo = DOL_URL_ROOT.'/viewimage.php?modulepart=mycompany&entity='.$conf->entity.'&file='.urlencode('logos/'.$logo); $urllogofull = $dolibarr_main_url_root.'/viewimage.php?modulepart=mycompany&entity='.$conf->entity.'&file='.urlencode('logos/'.$logo); @@ -191,7 +190,7 @@ if ($urllogo) print '>'; print ''; if (empty($conf->global->MAIN_HIDE_POWERED_BY)) { - print ''; + print ''; } print ''; } @@ -235,9 +234,7 @@ if ($source == 'proposal') { $mesg = $proposal->error; $error++; - } - else - { + } else { $result = $proposal->fetch_thirdparty($proposal->socid); } @@ -276,14 +273,10 @@ if ($action != 'dosign') { if ($found && !$error) // We are in a management option and no error { - } - else - { + } else { dol_print_error_email('ERRORNEWONLINESIGN'); } -} -else -{ +} else { // Print } diff --git a/htdocs/public/opensurvey/studs.php b/htdocs/public/opensurvey/studs.php index ef5458456c5..4f437c07740 100644 --- a/htdocs/public/opensurvey/studs.php +++ b/htdocs/public/opensurvey/studs.php @@ -108,12 +108,10 @@ if (GETPOST("boutonp") || GETPOST("boutonp.x") || GETPOST("boutonp_x")) // bout if (isset($_POST["choix$i"]) && $_POST["choix$i"] == '1') { $nouveauchoix .= "1"; - } - elseif (isset($_POST["choix$i"]) && $_POST["choix$i"] == '2') + } elseif (isset($_POST["choix$i"]) && $_POST["choix$i"] == '2') { $nouveauchoix .= "2"; - } - else { // sinon c'est 0 + } else { // sinon c'est 0 $nouveauchoix .= "0"; } } @@ -132,9 +130,7 @@ if (GETPOST("boutonp") || GETPOST("boutonp.x") || GETPOST("boutonp_x")) // bout { setEventMessages($langs->trans("VoteNameAlreadyExists"), null, 'errors'); $error++; - } - else - { + } else { $sql = 'INSERT INTO '.MAIN_DB_PREFIX.'opensurvey_user_studs (nom, id_sondage, reponses)'; $sql .= " VALUES ('".$db->escape($nom)."', '".$db->escape($numsondage)."','".$db->escape($nouveauchoix)."')"; $resql = $db->query($sql); @@ -169,12 +165,9 @@ if (GETPOST("boutonp") || GETPOST("boutonp.x") || GETPOST("boutonp_x")) // bout $result = $cmailfile->sendfile(); } } - } - else dol_print_error($db); + } else dol_print_error($db); } - } - else - { + } else { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("Name")), null, 'errors'); } } @@ -210,12 +203,10 @@ if ($testmodifier) if (isset($_POST["choix".$i]) && $_POST["choix".$i] == '1') { $nouveauchoix .= "1"; - } - elseif (isset($_POST["choix".$i]) && $_POST["choix".$i] == '2') + } elseif (isset($_POST["choix".$i]) && $_POST["choix".$i] == '2') { $nouveauchoix .= "2"; - } - else { // sinon c'est 0 + } else { // sinon c'est 0 $nouveauchoix .= "0"; } } @@ -391,9 +382,7 @@ if ($object->format == "D") print ''."\n"; } -} -else -{ +} else { //display of survey topics print ''."\n"; print ''."\n"; @@ -480,9 +469,7 @@ while ($compteur < $num) if (((string) $car) == "0") $sumagainst[$i]++; } } - } - else - { + } else { //sinon on remplace les choix de l'utilisateur par une ligne de checkbox pour recuperer de nouvelles valeurs if ($compteur == $ligneamodifier) { @@ -508,9 +495,7 @@ while ($compteur < $num) } print ''."\n"; } - } - else - { + } else { for ($i = 0; $i < $nbcolonnes; $i++) { $car = substr($ensemblereponses, $i, 1); @@ -690,13 +675,11 @@ if ($object->allow_spy) { if (strpos($toutsujet[$i], '@') !== false) { $toutsujetdate = explode("@", $toutsujet[$i]); - $meilleursujet .= dol_print_date($toutsujetdate[0], 'daytext').' ('.dol_print_date($toutsujetdate[0], '%A').')'.' - '.$toutsujetdate[1]; + $meilleursujet .= dol_print_date($toutsujetdate[0], 'daytext').' ('.dol_print_date($toutsujetdate[0], '%A').') - '.$toutsujetdate[1]; } else { $meilleursujet .= dol_print_date($toutsujet[$i], 'daytext').' ('.dol_print_date($toutsujet[$i], '%A').')'; } - } - else - { + } else { $tmps = explode('@', $toutsujet[$i]); $meilleursujet .= dol_htmlentities($tmps[0]); } diff --git a/htdocs/public/payment/newpayment.php b/htdocs/public/payment/newpayment.php index c3e6553cf92..746fcffcfa4 100644 --- a/htdocs/public/payment/newpayment.php +++ b/htdocs/public/payment/newpayment.php @@ -210,9 +210,7 @@ if (!empty($conf->global->PAYMENT_SECURITY_TOKEN)) { if ($source && $REF) $token = dol_hash($conf->global->PAYMENT_SECURITY_TOKEN.$source.$REF, 2); // Use the source in the hash to avoid duplicates if the references are identical else $token = dol_hash($conf->global->PAYMENT_SECURITY_TOKEN, 2); - } - else - { + } else { $token = $conf->global->PAYMENT_SECURITY_TOKEN; } if ($SECUREKEY != $token) @@ -371,8 +369,7 @@ if ($action == 'dopayment') if ($paymentmethod == 'stripe') { if (GETPOST('newamount', 'alpha')) $amount = price2num(GETPOST('newamount', 'alpha'), 'MT'); - else - { + else { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("Amount")), null, 'errors'); $action = ''; } @@ -468,9 +465,7 @@ if ($action == 'charge' && !empty($conf->stripe->enabled)) dol_syslog('Failed to create card record', LOG_WARNING, 0, '_stripe'); setEventMessages('Failed to create card record', null, 'errors'); $action = ''; - } - else - { + } else { if (!empty($FULLTAG)) $metadata["FULLTAG"] = $FULLTAG; if (!empty($dol_id)) $metadata["dol_id"] = $dol_id; if (!empty($dol_type)) $metadata["dol_type"] = $dol_type; @@ -496,9 +491,7 @@ if ($action == 'charge' && !empty($conf->stripe->enabled)) } } } - } - else - { + } else { $vatcleaned = $vatnumber ? $vatnumber : null; /*$taxinfo = array('type'=>'vat'); @@ -652,8 +645,7 @@ if ($action == 'charge' && !empty($conf->stripe->enabled)) } else { $paymentintent = \Stripe\PaymentIntent::retrieve($paymentintent_id, array("stripe_account" => $stripeacc)); } - } - catch (Exception $e) + } catch (Exception $e) { $error++; $errormessage = "CantRetreivePaymentIntent ".$e->getMessage(); @@ -669,9 +661,7 @@ if ($action == 'charge' && !empty($conf->stripe->enabled)) dol_syslog($errormessage, LOG_WARNING, 0, '_stripe'); setEventMessages($paymentintent->status, null, 'errors'); $action = ''; - } - else - { + } else { // TODO We can alse record the payment mode into llx_societe_rib with stripe $paymentintent->payment_method // Note that with other old Stripe architecture (using Charge API), the payment mode was not recorded, so it is not mandatory to do it here. //dol_syslog("Create payment_method for ".$paymentintent->payment_method, LOG_DEBUG, 0, '_stripe'); @@ -700,9 +690,7 @@ if ($action == 'charge' && !empty($conf->stripe->enabled)) { header("Location: ".$urlko); exit; - } - else - { + } else { header("Location: ".$urlok); exit; } @@ -775,8 +763,7 @@ if (!empty($logosmall) && is_readable($conf->mycompany->dir_output.'/logos/thumb $urllogo = DOL_URL_ROOT.'/viewimage.php?modulepart=mycompany&entity='.$conf->entity.'&file='.urlencode('logos/thumbs/'.$logosmall); $urllogofull = $dolibarr_main_url_root.'/viewimage.php?modulepart=mycompany&entity='.$conf->entity.'&file='.urlencode('logos/thumbs/'.$logosmall); $width = 150; -} -elseif (!empty($logo) && is_readable($conf->mycompany->dir_output.'/logos/'.$logo)) +} elseif (!empty($logo) && is_readable($conf->mycompany->dir_output.'/logos/'.$logo)) { $urllogo = DOL_URL_ROOT.'/viewimage.php?modulepart=mycompany&entity='.$conf->entity.'&file='.urlencode('logos/'.$logo); $urllogofull = $dolibarr_main_url_root.'/viewimage.php?modulepart=mycompany&entity='.$conf->entity.'&file='.urlencode('logos/'.$logo); @@ -793,7 +780,7 @@ if ($urllogo) print '>'; print ''; if (empty($conf->global->MAIN_HIDE_POWERED_BY)) { - print ''; + print ''; } print ''; } @@ -876,8 +863,7 @@ if (!$source) { print ''; print ''; - } - else { + } else { print ''.price($amount).''; print ''; print ''; @@ -913,9 +899,7 @@ if ($source == 'order') { $mesg = $order->error; $error++; - } - else - { + } else { $result = $order->fetch_thirdparty($order->socid); } $object = $order; @@ -971,8 +955,7 @@ if ($source == 'order') { print ''; print ''; - } - else { + } else { print ''.price($amount).''; print ''; print ''; @@ -1008,9 +991,7 @@ if ($source == 'order') print ''."\n"; print ''."\n"; print ''."\n"; - } - else - { + } else { print ''."\n"; } if (is_object($order->thirdparty)) print ''."\n"; @@ -1036,9 +1017,7 @@ if ($source == 'invoice') { $mesg = $invoice->error; $error++; - } - else - { + } else { $result = $invoice->fetch_thirdparty($invoice->socid); } $object = $invoice; @@ -1096,15 +1075,12 @@ if ($source == 'invoice') { print ''; print ''; - } - else { + } else { print ''.price($amount).''; print ''; print ''; } - } - else - { + } else { print ''.price($object->total_ttc, 1, $langs).''; } // Currency @@ -1138,9 +1114,7 @@ if ($source == 'invoice') print ''."\n"; print ''."\n"; print ''."\n"; - } - else - { + } else { print ''."\n"; } if (is_object($invoice->thirdparty)) print ''."\n"; @@ -1167,24 +1141,18 @@ if ($source == 'contractline') { $mesg = $contractline->error; $error++; - } - else - { + } else { if ($contractline->fk_contrat > 0) { $result = $contract->fetch($contractline->fk_contrat); if ($result > 0) { $result = $contract->fetch_thirdparty($contract->socid); - } - else - { + } else { $mesg = $contract->error; $error++; } - } - else - { + } else { $mesg = 'ErrorRecordNotFound'; $error++; } @@ -1206,9 +1174,7 @@ if ($source == 'contractline') $pu_ht = $product->multiprices[$contract->thirdparty->price_level]; $pu_ttc = $product->multiprices_ttc[$contract->thirdparty->price_level]; $price_base_type = $product->multiprices_base_type[$contract->thirdparty->price_level]; - } - else - { + } else { $pu_ht = $product->price; $pu_ttc = $product->price_ttc; $price_base_type = $product->price_base_type; @@ -1293,9 +1259,7 @@ if ($source == 'contractline') if ($contractline->product->duration_value > 1) { $dur = array("h"=>$langs->trans("Hours"), "d"=>$langs->trans("DurationDays"), "w"=>$langs->trans("DurationWeeks"), "m"=>$langs->trans("DurationMonths"), "y"=>$langs->trans("DurationYears")); - } - else - { + } else { $dur = array("h"=>$langs->trans("Hour"), "d"=>$langs->trans("DurationDay"), "w"=>$langs->trans("DurationWeek"), "m"=>$langs->trans("DurationMonth"), "y"=>$langs->trans("DurationYear")); } $duration = $contractline->product->duration_value.' '.$dur[$contractline->product->duration_unit]; @@ -1314,8 +1278,7 @@ if ($source == 'contractline') { print ''; print ''; - } - else { + } else { print ''.price($amount).''; print ''; print ''; @@ -1351,9 +1314,7 @@ if ($source == 'contractline') print ''."\n"; print ''."\n"; print ''."\n"; - } - else - { + } else { print ''."\n"; } if (is_object($contract->thirdparty)) print ''."\n"; @@ -1379,9 +1340,7 @@ if ($source == 'membersubscription') { $mesg = $member->error; $error++; - } - else - { + } else { $member->fetch_thirdparty(); $subscription = new Subscription($db); } @@ -1468,8 +1427,7 @@ if ($source == 'membersubscription') if (!empty($conf->global->MEMBER_NEWFORM_AMOUNT)) { $valtoshow = $conf->global->MEMBER_NEWFORM_AMOUNT; } - } - else { + } else { if (!empty($conf->global->MEMBER_NEWFORM_AMOUNT)) { $amount = $conf->global->MEMBER_NEWFORM_AMOUNT; } @@ -1482,8 +1440,7 @@ if ($source == 'membersubscription') if (!empty($conf->global->MEMBER_MIN_AMOUNT) && $valtoshow) $valtoshow = max($conf->global->MEMBER_MIN_AMOUNT, $valtoshow); print ''; print ''; - } - else { + } else { $valtoshow = $amount; if (!empty($conf->global->MEMBER_MIN_AMOUNT) && $valtoshow) $valtoshow = max($conf->global->MEMBER_MIN_AMOUNT, $valtoshow); print ''.price($valtoshow).''; @@ -1522,9 +1479,7 @@ if ($source == 'membersubscription') print ''."\n"; print ''."\n"; print ''."\n"; - } - else - { + } else { print ''."\n"; } if (is_object($member->thirdparty)) print ''."\n"; @@ -1548,9 +1503,7 @@ if ($source == 'donation') { $mesg = $don->error; $error++; - } - else - { + } else { $don->fetch_thirdparty(); } $object = $don; @@ -1613,8 +1566,7 @@ if ($source == 'donation') if (!empty($conf->global->MEMBER_NEWFORM_AMOUNT)) { $valtoshow = $conf->global->MEMBER_NEWFORM_AMOUNT; } - } - else { + } else { if (!empty($conf->global->MEMBER_NEWFORM_AMOUNT)) { $amount = $conf->global->MEMBER_NEWFORM_AMOUNT; } @@ -1627,8 +1579,7 @@ if ($source == 'donation') if (!empty($conf->global->MEMBER_MIN_AMOUNT) && $valtoshow) $valtoshow = max($conf->global->MEMBER_MIN_AMOUNT, $valtoshow); print ''; print ''; - } - else { + } else { $valtoshow = $amount; if (!empty($conf->global->MEMBER_MIN_AMOUNT) && $valtoshow) $valtoshow = max($conf->global->MEMBER_MIN_AMOUNT, $valtoshow); print ''.price($valtoshow).''; @@ -1667,9 +1618,7 @@ if ($source == 'donation') print ''."\n"; print ''."\n"; print ''."\n"; - } - else - { + } else { print ''."\n"; } if (is_object($don->thirdparty)) print ''."\n"; @@ -1696,17 +1645,13 @@ if ($action != 'dopayment') if ($source == 'order' && $object->billed) { print '

    '.$langs->trans("OrderBilled").''; - } - elseif ($source == 'invoice' && $object->paye) + } elseif ($source == 'invoice' && $object->paye) { print '

    '.$langs->trans("InvoicePaid").''; - } - elseif ($source == 'donation' && $object->paid) + } elseif ($source == 'donation' && $object->paid) { print '

    '.$langs->trans("DonationPaid").''; - } - else - { + } else { // Membership can be paid and we still allow to make renewal if ($source == 'membersubscription' && $object->datefin > dol_now()) { @@ -1719,7 +1664,7 @@ if ($action != 'dopayment') if ((empty($paymentmethod) || $paymentmethod == 'paybox') && !empty($conf->paybox->enabled)) { - print '
    '; + print '
    '; print '
    '; print ''.$langs->trans("CreditOrDebitCard").''; print '
    '; @@ -1739,7 +1684,7 @@ if ($action != 'dopayment') if ((empty($paymentmethod) || $paymentmethod == 'stripe') && !empty($conf->stripe->enabled)) { - print '
    '; + print '
    '; print ''; print '
    '; print ''.$langs->trans("CreditOrDebitCard").''; @@ -1763,7 +1708,11 @@ if ($action != 'dopayment') { if (empty($conf->global->PAYPAL_API_INTEGRAL_OR_PAYPALONLY)) $conf->global->PAYPAL_API_INTEGRAL_OR_PAYPALONLY = 'integral'; - print '
    '; + print '
    '; + if ($conf->global->PAYPAL_API_INTEGRAL_OR_PAYPALONLY != 'integral') { + print '
     
    '; + } + print ' '; if ($conf->global->PAYPAL_API_INTEGRAL_OR_PAYPALONLY == 'integral') { print '
    '; @@ -1791,14 +1740,10 @@ if ($action != 'dopayment') '; } } - } - else - { + } else { dol_print_error_email('ERRORNEWPAYMENT'); } -} -else -{ +} else { // Print } @@ -1924,7 +1869,7 @@ if (preg_match('/^dopayment/', $action)) // If we choosed/click on the payment print '
    '; print ''; - print ''; + print ''; print ''; print ''; @@ -1935,9 +1880,7 @@ if (preg_match('/^dopayment/', $action)) // If we choosed/click on the payment if (empty($paymentintent)) { print '
    '.$langs->trans("Error").'
    '; - } - else - { + } else { print ''; //$_SESSION["paymentintent_id"] = $paymentintent->id; } @@ -1951,9 +1894,7 @@ if (preg_match('/^dopayment/', $action)) // If we choosed/click on the payment { $langs->load("errors"); print info_admin($langs->trans("ErrorModuleSetupNotComplete", $langs->transnoentitiesnoconv("Stripe")), 0, 0, 'error'); - } - else - { + } else { print ''; print ''."\n"; print ''."\n"; @@ -2015,8 +1956,7 @@ if (preg_match('/^dopayment/', $action)) // If we choosed/click on the payment $_SESSION['ipaddress'] = ($remoteip ? $remoteip : 'unknown'); // Payer ip $_SESSION['payerID'] = is_object($stripecu) ? $stripecu->id : ''; $_SESSION['TRANSACTIONID'] = $sessionstripe->id; - } - catch (Exception $e) + } catch (Exception $e) { print $e->getMessage(); } @@ -2064,8 +2004,7 @@ if (preg_match('/^dopayment/', $action)) // If we choosed/click on the payment global->STRIPE_USE_INTENT_WITH_AUTOMATIC_CONFIRMATION)) + } elseif (!empty($conf->global->STRIPE_USE_INTENT_WITH_AUTOMATIC_CONFIRMATION)) { ?> // Code for payment with option STRIPE_USE_INTENT_WITH_AUTOMATIC_CONFIRMATION set @@ -2168,8 +2107,7 @@ if (preg_match('/^dopayment/', $action)) // If we choosed/click on the payment }); // Old code for payment with option STRIPE_USE_INTENT_WITH_AUTOMATIC_CONFIRMATION off and STRIPE_USE_NEW_CHECKOUT off @@ -2236,8 +2174,7 @@ if (preg_match('/^dopayment/', $action)) // If we choosed/click on the payment } }); /* Use 3DS source */ diff --git a/htdocs/public/payment/paymentko.php b/htdocs/public/payment/paymentko.php index 2610219d69d..c42677d8b21 100644 --- a/htdocs/public/payment/paymentko.php +++ b/htdocs/public/payment/paymentko.php @@ -77,9 +77,7 @@ if (empty($paymentmethod)) { dol_print_error(null, 'The back url does not contains a parameter fulltag that should help us to find the payment method used'); exit; -} -else -{ +} else { dol_syslog("paymentmethod=".$paymentmethod); } @@ -159,10 +157,8 @@ if (!empty($_SESSION['ipaddress'])) // To avoid to make action twice if (preg_match('/\d\.\d/', $appli)) { if (!preg_match('/'.preg_quote(DOL_VERSION).'/', $appli)) $appli .= " (".DOL_VERSION.")"; // If new title contains a version that is different than core - } - else $appli .= " ".DOL_VERSION; - } - else $appli .= " ".DOL_VERSION; + } else $appli .= " ".DOL_VERSION; + } else $appli .= " ".DOL_VERSION; $urlback = $_SERVER["REQUEST_URI"]; $topic = '['.$appli.'] '.$companylangs->transnoentitiesnoconv("NewOnlinePaymentFailed"); @@ -186,9 +182,7 @@ if (!empty($_SESSION['ipaddress'])) // To avoid to make action twice if ($result) { dol_syslog("EMail sent to ".$sendto, LOG_DEBUG, 0, '_payment'); - } - else - { + } else { dol_syslog("Failed to send EMail to ".$sendto, LOG_ERR, 0, '_payment'); } } @@ -227,8 +221,7 @@ if (!empty($logosmall) && is_readable($conf->mycompany->dir_output.'/logos/thumb $urllogo = DOL_URL_ROOT.'/viewimage.php?modulepart=mycompany&entity='.$conf->entity.'&file='.urlencode('logos/thumbs/'.$logosmall); $urllogofull = $dolibarr_main_url_root.'/viewimage.php?modulepart=mycompany&entity='.$conf->entity.'&file='.urlencode('logos/thumbs/'.$logosmall); $width = 150; -} -elseif (!empty($logo) && is_readable($conf->mycompany->dir_output.'/logos/'.$logo)) +} elseif (!empty($logo) && is_readable($conf->mycompany->dir_output.'/logos/'.$logo)) { $urllogo = DOL_URL_ROOT.'/viewimage.php?modulepart=mycompany&entity='.$conf->entity.'&file='.urlencode('logos/'.$logo); $urllogofull = $dolibarr_main_url_root.'/viewimage.php?modulepart=mycompany&entity='.$conf->entity.'&file='.urlencode('logos/'.$logo); @@ -245,7 +238,7 @@ if ($urllogo) print '>'; print '
    '; if (empty($conf->global->MAIN_HIDE_POWERED_BY)) { - print ''; + print ''; } print '
    '; } diff --git a/htdocs/public/payment/paymentok.php b/htdocs/public/payment/paymentok.php index 6b7805cf473..4bb899b930e 100644 --- a/htdocs/public/payment/paymentok.php +++ b/htdocs/public/payment/paymentok.php @@ -163,8 +163,7 @@ if (!empty($logosmall) && is_readable($conf->mycompany->dir_output.'/logos/thumb $urllogo = DOL_URL_ROOT.'/viewimage.php?modulepart=mycompany&entity='.$conf->entity.'&file='.urlencode('logos/thumbs/'.$logosmall); $urllogofull = $dolibarr_main_url_root.'/viewimage.php?modulepart=mycompany&entity='.$conf->entity.'&file='.urlencode('logos/thumbs/'.$logosmall); $width = 150; -} -elseif (!empty($logo) && is_readable($conf->mycompany->dir_output.'/logos/'.$logo)) +} elseif (!empty($logo) && is_readable($conf->mycompany->dir_output.'/logos/'.$logo)) { $urllogo = DOL_URL_ROOT.'/viewimage.php?modulepart=mycompany&entity='.$conf->entity.'&file='.urlencode('logos/'.$logo); $urllogofull = $dolibarr_main_url_root.'/viewimage.php?modulepart=mycompany&entity='.$conf->entity.'&file='.urlencode('logos/'.$logo); @@ -181,7 +180,7 @@ if ($urllogo) print '>'; print '
    '; if (empty($conf->global->MAIN_HIDE_POWERED_BY)) { - print ''; + print ''; } print '
    '; } @@ -221,9 +220,7 @@ if (!empty($conf->paypal->enabled)) { // Nothing to do dol_syslog("Call to GetExpressCheckoutDetails return ".$ack, LOG_DEBUG, 0, '_payment'); - } - else - { + } else { dol_syslog("Call to GetExpressCheckoutDetails return error: ".json_encode($resArray), LOG_WARNING, '_payment'); } @@ -250,9 +247,7 @@ if (!empty($conf->paypal->enabled)) $NOTE = urldecode($resArray2["NOTE"]); $ispaymentok = true; - } - else - { + } else { dol_syslog("Call to DoExpressCheckoutPayment return error: ".json_encode($resArray2), LOG_WARNING, 0, '_payment'); //Display a user friendly Error on the page using any of the following error information returned by PayPal @@ -261,14 +256,10 @@ if (!empty($conf->paypal->enabled)) $ErrorLongMsg = urldecode($resArray2["L_LONGMESSAGE0"]); $ErrorSeverityCode = urldecode($resArray2["L_SEVERITYCODE0"]); } - } - else - { + } else { dol_print_error('', 'Session expired'); } - } - else - { + } else { dol_print_error('', '$PAYPALTOKEN not defined'); } } @@ -419,9 +410,7 @@ if ($ispaymentok) $errmsg = $object->error; $postactionmessages[] = $errmsg; $ispostactionok = -1; - } - else - { + } else { $postactionmessages[] = 'Subscription created'; $ispostactionok = 1; } @@ -442,9 +431,7 @@ if ($ispaymentok) $postactionmessages[] = $object->error; $postactionmessages = array_merge($postactionmessages, $object->errors); $ispostactionok = -1; - } - else - { + } else { if ($option == 'bankviainvoice') { $postactionmessages[] = 'Invoice, payment and bank record created'; @@ -508,8 +495,7 @@ if ($ispaymentok) $postactionmessages[] = $errmsg; $ispostactionok = -1; } - } - catch (Exception $e) { + } catch (Exception $e) { $error++; $errmsg = 'Failed to save customer stripe id in database ; '.$e->getMessage(); $postactionmessages[] = $errmsg; @@ -522,9 +508,7 @@ if ($ispaymentok) if (!$error) { $db->commit(); - } - else - { + } else { $db->rollback(); } @@ -589,9 +573,7 @@ if ($ispaymentok) $errmsg = $object->error; $postactionmessages[] = $errmsg; $ispostactionok = -1; - } - else - { + } else { if ($file) $postactionmessages[] = 'Email sent to member (with invoice document attached)'; else $postactionmessages[] = 'Email sent to member (without any attached document)'; @@ -599,20 +581,15 @@ if ($ispaymentok) } } } - } - else - { + } else { $postactionmessages[] = 'Failed to get a valid value for "amount paid" or "payment type" to record the payment of subscription for member '.$tmptag['MEM'].'. May be payment was already recorded.'; $ispostactionok = -1; } - } - else - { + } else { $postactionmessages[] = 'Member '.$tmptag['MEM'].' for subscription payed was not found'; $ispostactionok = -1; } - } - elseif (array_key_exists('INV', $tmptag) && $tmptag['INV'] > 0) + } elseif (array_key_exists('INV', $tmptag) && $tmptag['INV'] > 0) { // Record payment include_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php'; @@ -647,9 +624,7 @@ if ($ispaymentok) if ($currencyCodeType == $conf->currency) { $paiement->amounts = array($invoice->id => $FinalPaymentAmt); // Array with all payments dispatching with invoice id - } - else - { + } else { $paiement->multicurrency_amounts = array($invoice->id => $FinalPaymentAmt); // Array with all payments dispatching $postactionmessages[] = 'Payment was done in a different currency that currency expected of company'; @@ -671,9 +646,7 @@ if ($ispaymentok) $postactionmessages[] = $paiement->error.' '.join("
    \n", $paiement->errors); $ispostactionok = -1; $error++; - } - else - { + } else { $postactionmessages[] = 'Payment created'; $ispostactionok = 1; } @@ -696,15 +669,11 @@ if ($ispaymentok) $postactionmessages[] = $paiement->error.' '.join("
    \n", $paiement->errors); $ispostactionok = -1; $error++; - } - else - { + } else { $postactionmessages[] = 'Bank transaction of payment created'; $ispostactionok = 1; } - } - else - { + } else { $postactionmessages[] = 'Setup of bank account to use in module '.$paymentmethod.' was not set. No way to record the payment.'; $ispostactionok = -1; $error++; @@ -714,26 +683,18 @@ if ($ispaymentok) if (!$error) { $db->commit(); - } - else - { + } else { $db->rollback(); } - } - else - { + } else { $postactionmessages[] = 'Failed to get a valid value for "amount paid" ('.$FinalPaymentAmt.') or "payment type" ('.$paymentType.') to record the payment of invoice '.$tmptag['INV'].'. May be payment was already recorded.'; $ispostactionok = -1; } - } - else - { + } else { $postactionmessages[] = 'Invoice payed '.$tmptag['INV'].' was not found'; $ispostactionok = -1; } - } - else - { + } else { // Nothing done } } @@ -788,10 +749,8 @@ if ($ispaymentok) if (preg_match('/\d\.\d/', $appli)) { if (!preg_match('/'.preg_quote(DOL_VERSION).'/', $appli)) $appli .= " (".DOL_VERSION.")"; // If new title contains a version that is different than core - } - else $appli .= " ".DOL_VERSION; - } - else $appli .= " ".DOL_VERSION; + } else $appli .= " ".DOL_VERSION; + } else $appli .= " ".DOL_VERSION; $urlback = $_SERVER["REQUEST_URI"]; $topic = '['.$appli.'] '.$companylangs->transnoentitiesnoconv("NewOnlinePaymentReceived"); @@ -802,17 +761,14 @@ if ($ispaymentok) $content .= ''.$companylangs->trans("PaymentSubscription")."

    \n"; $content .= $companylangs->trans("MemberId").': '.$tmptag['MEM']."
    \n"; $content .= $companylangs->trans("Link").': '.$url.''."
    \n"; - } - elseif (array_key_exists('INV', $tmptag)) + } elseif (array_key_exists('INV', $tmptag)) { $url = $urlwithroot."/compta/facture/card.php?id=".$tmptag['INV']; $content .= ''.$companylangs->trans("Payment")."

    \n"; $content .= $companylangs->trans("InvoiceId").': '.$tmptag['INV']."
    \n"; //$content.=$companylangs->trans("ThirdPartyId").': '.$tmptag['CUS']."
    \n"; $content .= $companylangs->trans("Link").': '.$url.''."
    \n"; - } - else - { + } else { $content .= $companylangs->transnoentitiesnoconv("NewOnlinePaymentReceived")."
    \n"; } $content .= $companylangs->transnoentities("PostActionAfterPayment").' : '; @@ -820,13 +776,10 @@ if ($ispaymentok) { //$topic.=' ('.$companylangs->transnoentitiesnoconv("Status").' '.$companylangs->transnoentitiesnoconv("OK").')'; $content .= ''.$companylangs->transnoentitiesnoconv("OK").''; - } - elseif ($ispostactionok == 0) + } elseif ($ispostactionok == 0) { $content .= $companylangs->transnoentitiesnoconv("None"); - } - else - { + } else { $topic .= ($ispostactionok ? '' : ' ('.$companylangs->trans("WarningPostActionErrorAfterPayment").')'); $content .= ''.$companylangs->transnoentitiesnoconv("Error").''; } @@ -864,16 +817,12 @@ if ($ispaymentok) { dol_syslog("EMail sent to ".$sendto, LOG_DEBUG, 0, '_payment'); //dol_syslog("EMail sent to ".$sendto, LOG_DEBUG, 0); - } - else - { + } else { dol_syslog("Failed to send EMail to ".$sendto, LOG_ERR, 0, '_payment'); //dol_syslog("Failed to send EMail to ".$sendto, LOG_ERR, 0); } } -} -else -{ +} else { // Get on url call $onlinetoken = empty($PAYPALTOKEN) ? $_SESSION['onlinetoken'] : $PAYPALTOKEN; $payerID = empty($PAYPALPAYERID) ? $_SESSION['payerID'] : $PAYPALPAYERID; @@ -924,10 +873,8 @@ else if (preg_match('/\d\.\d/', $appli)) { if (!preg_match('/'.preg_quote(DOL_VERSION).'/', $appli)) $appli .= " (".DOL_VERSION.")"; // If new title contains a version that is different than core - } - else $appli .= " ".DOL_VERSION; - } - else $appli .= " ".DOL_VERSION; + } else $appli .= " ".DOL_VERSION; + } else $appli .= " ".DOL_VERSION; $urlback = $_SERVER["REQUEST_URI"]; $topic = '['.$appli.'] '.$companylangs->transnoentitiesnoconv("ValidationOfPaymentFailed"); @@ -951,9 +898,7 @@ else if ($result) { dol_syslog("EMail sent to ".$sendto, LOG_DEBUG, 0, '_payment'); - } - else - { + } else { dol_syslog("Failed to send EMail to ".$sendto, LOG_ERR, 0, '_payment'); } } diff --git a/htdocs/public/stripe/confirm_payment.php b/htdocs/public/stripe/confirm_payment.php index 25cb358ccea..683a537fe69 100644 --- a/htdocs/public/stripe/confirm_payment.php +++ b/htdocs/public/stripe/confirm_payment.php @@ -48,23 +48,18 @@ if (isset($_GET['connect'])) $endpoint_secret = $conf->global->STRIPE_TEST_WEBHOOK_CONNECT_KEY; $service = 'StripeTest'; $servicestatus = 0; - } - else - { + } else { $endpoint_secret = $conf->global->STRIPE_LIVE_WEBHOOK_CONNECT_KEY; $service = 'StripeLive'; $servicestatus = 1; } -} -else { +} else { if (isset($_GET['test'])) { $endpoint_secret = $conf->global->STRIPE_TEST_WEBHOOK_KEY; $service = 'StripeTest'; $servicestatus = 0; - } - else - { + } else { $endpoint_secret = $conf->global->STRIPE_LIVE_WEBHOOK_KEY; $service = 'StripeLive'; $servicestatus = 1; @@ -129,8 +124,8 @@ try { )); } -/* - * generate payment response +/** + * Generate payment response * * @param \Stripe\PaymentIntent $intent PaymentIntent * @return void diff --git a/htdocs/public/stripe/ipn.php b/htdocs/public/stripe/ipn.php index 8a3bb00e765..d3a9521bf25 100644 --- a/htdocs/public/stripe/ipn.php +++ b/htdocs/public/stripe/ipn.php @@ -48,23 +48,18 @@ if (isset($_GET['connect'])) $endpoint_secret = $conf->global->STRIPE_TEST_WEBHOOK_CONNECT_KEY; $service = 'StripeTest'; $servicestatus = 0; - } - else - { + } else { $endpoint_secret = $conf->global->STRIPE_LIVE_WEBHOOK_CONNECT_KEY; $service = 'StripeLive'; $servicestatus = 1; } -} -else { +} else { if (isset($_GET['test'])) { $endpoint_secret = $conf->global->STRIPE_TEST_WEBHOOK_KEY; $service = 'StripeTest'; $servicestatus = 0; - } - else - { + } else { $endpoint_secret = $conf->global->STRIPE_LIVE_WEBHOOK_KEY; $service = 'StripeLive'; $servicestatus = 1; @@ -91,8 +86,7 @@ $error = 0; try { $event = \Stripe\Webhook::constructEvent($payload, $sig_header, $endpoint_secret); -} -catch (\UnexpectedValueException $e) { +} catch (\UnexpectedValueException $e) { // Invalid payload http_response_code(400); // PHP 5.4 or greater exit(); @@ -111,54 +105,52 @@ $user = new User($db); $user->fetch($conf->global->STRIPE_USER_ACCOUNT_FOR_ACTIONS); $user->getrights(); -if (! empty($conf->multicompany->enabled) && ! empty($conf->stripeconnect->enabled) && is_object($mc)) +if (!empty($conf->multicompany->enabled) && !empty($conf->stripeconnect->enabled) && is_object($mc)) { $sql = "SELECT entity"; - $sql.= " FROM ".MAIN_DB_PREFIX."oauth_token"; - $sql.= " WHERE service = '".$db->escape($service)."' and tokenstring = '%".$db->escape($event->account)."%'"; + $sql .= " FROM ".MAIN_DB_PREFIX."oauth_token"; + $sql .= " WHERE service = '".$db->escape($service)."' and tokenstring = '%".$db->escape($event->account)."%'"; - dol_syslog(get_class($db) . "::fetch", LOG_DEBUG); + dol_syslog(get_class($db)."::fetch", LOG_DEBUG); $result = $db->query($sql); if ($result) { if ($db->num_rows($result)) { $obj = $db->fetch_object($result); - $key=$obj->entity; - } - else { - $key=1; + $key = $obj->entity; + } else { + $key = 1; } + } else { + $key = 1; } - else { - $key=1; - } - $ret=$mc->switchEntity($key); - if (! $res && file_exists("../../main.inc.php")) $res=@include "../../main.inc.php"; - if (! $res) die("Include of main fails"); + $ret = $mc->switchEntity($key); + if (!$res && file_exists("../../main.inc.php")) $res = @include "../../main.inc.php"; + if (!$res) die("Include of main fails"); } // list of action -$stripe=new Stripe($db); +$stripe = new Stripe($db); // Subject $societeName = $conf->global->MAIN_INFO_SOCIETE_NOM; -if (! empty($conf->global->MAIN_APPLICATION_TITLE)) $societeName = $conf->global->MAIN_APPLICATION_TITLE; +if (!empty($conf->global->MAIN_APPLICATION_TITLE)) $societeName = $conf->global->MAIN_APPLICATION_TITLE; dol_syslog("***** Stripe IPN was called with event->type = ".$event->type); if ($event->type == 'payout.created') { - $error=0; + $error = 0; - $result=dolibarr_set_const($db, $service."_NEXTPAYOUT", date('Y-m-d H:i:s', $event->data->object->arrival_date), 'chaine', 0, '', $conf->entity); + $result = dolibarr_set_const($db, $service."_NEXTPAYOUT", date('Y-m-d H:i:s', $event->data->object->arrival_date), 'chaine', 0, '', $conf->entity); if ($result > 0) { $subject = $societeName.' - [NOTIFICATION] Stripe payout scheduled'; if (!empty($user->email)) { - $sendto = dolGetFirstLastname($user->firstname, $user->lastname) . " <".$user->email.">"; + $sendto = dolGetFirstLastname($user->firstname, $user->lastname)." <".$user->email.">"; } else { $sendto = $conf->global->MAIN_INFO_SOCIETE_MAIL.'" <'.$conf->global->MAIN_INFO_SOCIETE_MAIL.'>'; } @@ -188,15 +180,12 @@ if ($event->type == 'payout.created') { http_response_code(200); // PHP 5.4 or greater return 1; - } - else - { + } else { $error++; http_response_code(500); // PHP 5.4 or greater return -1; } -} -elseif ($event->type == 'payout.paid') { +} elseif ($event->type == 'payout.paid') { global $conf; $error = 0; $result = dolibarr_set_const($db, $service."_NEXTPAYOUT", null, 'chaine', 0, '', $conf->entity); @@ -269,42 +258,32 @@ elseif ($event->type == 'payout.paid') { http_response_code(200); // PHP 5.4 or greater return 1; - } - else - { + } else { $error++; http_response_code(500); // PHP 5.4 or greater return -1; } -} -elseif ($event->type == 'customer.source.created') { +} elseif ($event->type == 'customer.source.created') { //TODO: save customer's source -} -elseif ($event->type == 'customer.source.updated') { +} elseif ($event->type == 'customer.source.updated') { //TODO: update customer's source -} -elseif ($event->type == 'customer.source.delete') { +} elseif ($event->type == 'customer.source.delete') { //TODO: delete customer's source -} -elseif ($event->type == 'customer.deleted') { +} elseif ($event->type == 'customer.deleted') { $db->begin(); $sql = "DELETE FROM ".MAIN_DB_PREFIX."societe_account WHERE key_account = '".$db->escape($event->data->object->id)."' and site='stripe'"; $db->query($sql); $db->commit(); -} -elseif ($event->type == 'payment_intent.succeeded') { // Called when making payment with PaymentIntent method ($conf->global->STRIPE_USE_NEW_CHECKOUT is on). +} elseif ($event->type == 'payment_intent.succeeded') { // Called when making payment with PaymentIntent method ($conf->global->STRIPE_USE_NEW_CHECKOUT is on). // TODO: create fees // TODO: Redirect to paymentok.php -} -elseif ($event->type == 'payment_intent.payment_failed') { +} elseif ($event->type == 'payment_intent.payment_failed') { // TODO: Redirect to paymentko.php -} -elseif ($event->type == 'checkout.session.completed') // Called when making payment with new Checkout method ($conf->global->STRIPE_USE_NEW_CHECKOUT is on). +} elseif ($event->type == 'checkout.session.completed') // Called when making payment with new Checkout method ($conf->global->STRIPE_USE_NEW_CHECKOUT is on). { // TODO: create fees // TODO: Redirect to paymentok.php -} -elseif ($event->type == 'payment_method.attached') { +} elseif ($event->type == 'payment_method.attached') { require_once DOL_DOCUMENT_ROOT.'/societe/class/companypaymentmode.class.php'; require_once DOL_DOCUMENT_ROOT.'/societe/class/societeaccount.class.php'; $societeaccount = new SocieteAccount($db); @@ -343,14 +322,11 @@ elseif ($event->type == 'payment_method.attached') { if (!$error) { $db->commit(); - } - else - { + } else { $db->rollback(); } } -} -elseif ($event->type == 'payment_method.updated') { +} elseif ($event->type == 'payment_method.updated') { require_once DOL_DOCUMENT_ROOT.'/societe/class/companypaymentmode.class.php'; $companypaymentmode = new CompanyPaymentMode($db); $companypaymentmode->fetch(0, '', 0, '', " AND stripe_card_ref = '".$db->escape($event->data->object->id)."'"); @@ -380,26 +356,20 @@ elseif ($event->type == 'payment_method.updated') { if (!$error) { $db->commit(); - } - else - { + } else { $db->rollback(); } -} -elseif ($event->type == 'payment_method.detached') { +} elseif ($event->type == 'payment_method.detached') { $db->begin(); $sql = "DELETE FROM ".MAIN_DB_PREFIX."societe_rib WHERE ref = '".$db->escape($event->data->object->id)."' and status = ".$servicestatus; $db->query($sql); $db->commit(); -} -elseif ($event->type == 'charge.succeeded') { +} elseif ($event->type == 'charge.succeeded') { // TODO: create fees // TODO: Redirect to paymentok.php -} -elseif ($event->type == 'charge.failed') { +} elseif ($event->type == 'charge.failed') { // TODO: Redirect to paymentko.php -} -elseif (($event->type == 'source.chargeable') && ($event->data->object->type == 'three_d_secure') && ($event->data->object->three_d_secure->authenticated == true)) { +} elseif (($event->type == 'source.chargeable') && ($event->data->object->type == 'three_d_secure') && ($event->data->object->three_d_secure->authenticated == true)) { // This event is deprecated. } diff --git a/htdocs/public/test/test_arrays.php b/htdocs/public/test/test_arrays.php index c326b4a6bd2..ffa4b24fc59 100644 --- a/htdocs/public/test/test_arrays.php +++ b/htdocs/public/test/test_arrays.php @@ -45,9 +45,7 @@ if (empty($usedolheader)) trans("ErrorFieldRequired", $langs->transnoentities("TicketEmailNotificationFrom")).'
    '; print $langs->trans("ErrorModuleSetupNotComplete", $langs->transnoentities("Ticket")); print '
    '; - } - else { + } else { print '
    '.$langs->trans('TicketPublicInfoCreateTicket').'
    '; $formticket->showForm(); } diff --git a/htdocs/public/ticket/list.php b/htdocs/public/ticket/list.php index 881f6c05691..40e6e55cb33 100644 --- a/htdocs/public/ticket/list.php +++ b/htdocs/public/ticket/list.php @@ -235,7 +235,7 @@ if ($action == "view_ticketlist") if (is_array($extrafields->attributes[$object->table_element]['label']) && count($extrafields->attributes[$object->table_element]['label'])) { foreach ($extrafields->attributes[$object->table_element]['label'] as $key => $val) { if ($extrafields->attributes[$object->table_element]['type'][$key] != 'separate') { - $arrayfields["ef.".$key] = array('label' => $extrafields->attributes[$object->table_element]['label'][$key], 'checked' => $extrafields->attributes[$object->table_element]['list'][$key], 'position' => $extrafields->attributes[$object->table_element]['pos'][$key], 'enabled' => $extrafields->attributes[$object->table_element]['perms'][$key]); + $arrayfields["ef.".$key] = array('label' => $extrafields->attributes[$object->table_element]['label'][$key], 'checked' => ($extrafields->attributes[$object->table_element]['list'][$key] < 0) ? 0 : 1, 'position' => $extrafields->attributes[$object->table_element]['pos'][$key], 'enabled' =>(abs($extrafields->attributes[$object->table_element]['list'][$key]) != 3) && $extrafields->attributes[$object->table_element]['perms'][$key]); } } } diff --git a/htdocs/public/ticket/view.php b/htdocs/public/ticket/view.php index 1938c68de3e..2b9ab94c5b1 100644 --- a/htdocs/public/ticket/view.php +++ b/htdocs/public/ticket/view.php @@ -187,9 +187,7 @@ if ($action == "view_ticket" || $action == "presend" || $action == "close" || $a if ($action == "add_message") { $action = 'presend'; - } - else - { + } else { $action = ''; } } @@ -370,11 +368,9 @@ if ($action == "view_ticket" || $action == "presend" || $action == "close" || $a } // Message list - print load_fiche_titre($langs->trans('TicketMessagesList'), '', 'messages@ticket'); + print load_fiche_titre($langs->trans('TicketMessagesList'), '', 'object_conversation'); $object->viewTicketMessages(false, true, $object->dao); - } - else - { + } else { print ''; } } else { diff --git a/htdocs/public/website/index.php b/htdocs/public/website/index.php index 95f2efa492a..d09b8e10012 100644 --- a/htdocs/public/website/index.php +++ b/htdocs/public/website/index.php @@ -95,8 +95,7 @@ if (empty($pageid)) if ($result > 0) { $pageid = $objectpage->id; - } - elseif ($result == 0) + } elseif ($result == 0) { // Page not found from ref=pageurl, we try using alternative alias $result = $objectpage->fetch(0, $object->id, null, $pageref); @@ -105,9 +104,7 @@ if (empty($pageid)) $pageid = $objectpage->id; } } - } - else - { + } else { if ($object->fk_default_home > 0) { $result = $objectpage->fetch($object->fk_default_home); @@ -164,9 +161,7 @@ if ($pageid == 'css') // No more used ? //else header('Cache-Control: no-cache'); $original_file = $dolibarr_main_data_root.'/website/'.$websitekey.'/styles.css.php'; -} -else -{ +} else { $original_file = $dolibarr_main_data_root.'/website/'.$websitekey.'/page'.$pageid.'.tpl.php'; } diff --git a/htdocs/public/website/styles.css.php b/htdocs/public/website/styles.css.php index ce416bdd7b6..8854c13ea52 100644 --- a/htdocs/public/website/styles.css.php +++ b/htdocs/public/website/styles.css.php @@ -77,9 +77,7 @@ if (empty($pageid)) { $object->fetch($websiteid); $website = $object->ref; - } - else - { + } else { $object->fetch(0, $website); } diff --git a/htdocs/reception/card.php b/htdocs/reception/card.php index 85ff3715b73..7bc99977943 100644 --- a/htdocs/reception/card.php +++ b/htdocs/reception/card.php @@ -79,7 +79,7 @@ else { $result = restrictedArea($user, 'reception'); if ($origin == 'supplierorder') { if (empty($user->rights->fournisseur->commande->lire) && empty($user->rights->fournisseur->commande->read)) accessforbidden(); - }elseif (empty($user->rights->{$origin}->lire) && empty($user->rights->{$origin}->read)) accessforbidden(); + } elseif (empty($user->rights->{$origin}->lire) && empty($user->rights->{$origin}->read)) accessforbidden(); } $action = GETPOST('action', 'alpha'); @@ -186,30 +186,25 @@ if (empty($reshook)) if ($action == 'update_extras') { - // Fill array 'array_options' with data from update form - $ret = $extrafields->setOptionalsFromPost(null, $object, GETPOST('attribute')); - if ($ret < 0) $error++; + $object->oldcopy = dol_clone($object); - if (!$error) - { - // Actions on extra fields (by external module or standard code) - // TODO le hook fait double emploi avec le trigger !! - $hookmanager->initHooks(array('receptiondao')); - $parameters = array('id' => $object->id); - $reshook = $hookmanager->executeHooks('insertExtraFields', $parameters, $object, $action); // Note that $action and $object may have been modified by some hooks - if (empty($reshook)) { - $result = $object->insertExtraFields(); - if ($result < 0) - { - setEventMessages($object->error, $object->errors, 'errors'); - $error++; - } - } elseif ($reshook < 0) - $error++; - } + // Fill array 'array_options' with data from update form + $ret = $extrafields->setOptionalsFromPost(null, $object, GETPOST('attribute', 'none')); + if ($ret < 0) $error++; - if ($error) - $action = 'edit_extras'; + if (!$error) + { + // Actions on extra fields + $result = $object->insertExtraFields('RECEPTION_MODIFY'); + if ($result < 0) + { + setEventMessages($object->error, $object->errors, 'errors'); + $error++; + } + } + + if ($error) + $action = 'edit_extras'; } // Create reception @@ -238,8 +233,7 @@ if (empty($reshook)) if ($object->origin == "supplierorder") $classname = 'CommandeFournisseur'; - else - $classname = ucfirst($object->origin); + else $classname = ucfirst($object->origin); $objectsrc = new $classname($db); $objectsrc->fetch($object->origin_id); @@ -307,7 +301,7 @@ if (empty($reshook)) { $lineToTest = ''; foreach ($objectsrc->lines as $linesrc) { - if ($linesrc->id == GETPOST($idl, 'int'))$lineToTest = $linesrc; + if ($linesrc->id == GETPOST($idl, 'int')) $lineToTest = $linesrc; } $qty = "qtyl".$i; $comment = "comment".$i; @@ -315,8 +309,6 @@ if (empty($reshook)) $sellby = "dluo".$i; $batch = "batch".$i; - - $timeFormat = '%d/%m/%Y'; if (GETPOST($qty, 'int') > 0 || (GETPOST($qty, 'int') == 0 && $conf->global->RECEPTION_GETS_ALL_ORDER_PRODUCTS)) @@ -360,9 +352,7 @@ if (empty($reshook)) $error++; } } - } - else - { + } else { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("QtyToReceive").'/'.$langs->transnoentitiesnoconv("Warehouse")), null, 'errors'); $error++; } @@ -372,16 +362,12 @@ if (empty($reshook)) $db->commit(); header("Location: card.php?id=".$object->id); exit; - } - else - { + } else { $db->rollback(); $_GET["commande_id"] = GETPOST('commande_id', 'int'); $action = 'create'; } - } - - elseif ($action == 'confirm_valid' && $confirm == 'yes' && + } elseif ($action == 'confirm_valid' && $confirm == 'yes' && ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->reception->creer)) || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->reception->reception_advance->validate))) ) @@ -394,9 +380,7 @@ if (empty($reshook)) { $langs->load("errors"); setEventMessages($langs->trans($object->error), null, 'errors'); - } - else - { + } else { // Define output language if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) { @@ -415,18 +399,14 @@ if (empty($reshook)) if ($result < 0) dol_print_error($db, $result); } } - } - - elseif ($action == 'confirm_delete' && $confirm == 'yes' && $user->rights->reception->supprimer) + } elseif ($action == 'confirm_delete' && $confirm == 'yes' && $user->rights->reception->supprimer) { $result = $object->delete($user); if ($result > 0) { header("Location: ".DOL_URL_ROOT.'/reception/index.php'); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -524,9 +504,7 @@ if (empty($reshook)) $ret = dol_delete_file($file, 0, 0, 0, $object); if ($ret) setEventMessages($langs->trans("FileWasRemoved", GETPOST('urlfile')), null, 'mesgs'); else setEventMessages($langs->trans("ErrorFailToDeleteFile", GETPOST('urlfile')), null, 'errors'); - } - - elseif ($action == 'classifybilled') + } elseif ($action == 'classifybilled') { $object->fetch($id); $result = $object->set_billed(); @@ -534,9 +512,7 @@ if (empty($reshook)) header('Location: '.$_SERVER["PHP_SELF"].'?id='.$object->id); exit(); } - } - - elseif ($action == 'classifyclosed') + } elseif ($action == 'classifyclosed') { $object->fetch($id); $result = $object->setClosed(); @@ -573,9 +549,7 @@ if (empty($reshook)) if (!$error) { header('Location: '.$_SERVER["PHP_SELF"].'?id='.$object->id); exit(); - } - else - { + } else { setEventMessages($line->error, $line->errors, 'errors'); } } @@ -637,8 +611,7 @@ if (empty($reshook)) setEventMessages($line->error, $line->errors, 'errors'); $error++; } - } - else // Product no predefined + } else // Product no predefined { $qty = "qtyl".$line_id; $line->id = $line_id; @@ -673,9 +646,7 @@ if (empty($reshook)) $ret = $object->fetch($object->id); // Reload to get new records $object->generateDocument($object->modelpdf, $outputlangs, $hidedetails, $hidedesc, $hideref); } - } - else - { + } else { header('Location: '.$_SERVER['PHP_SELF'].'?id='.$object->id); // Pour reaffichage de la fiche en cours d'edition exit(); } @@ -713,8 +684,9 @@ $warehousestatic = new Entrepot($db); if ($action == 'create2') { - print load_fiche_titre($langs->trans("CreateReception")).'
    '; - print $langs->trans("ReceptionCreationIsDoneFromOrder"); + print load_fiche_titre($langs->trans("CreateReception"), '', 'dollyrevert'); + + print '
    '.$langs->trans("ReceptionCreationIsDoneFromOrder"); $action = ''; $id = ''; $ref = ''; } @@ -1054,9 +1026,7 @@ if ($action == 'create') } print ''; - } - else - { + } else { print ""; if ($type == 1) $text = img_object($langs->trans('Service'), 'service'); else $text = img_object($langs->trans('Product'), 'product'); @@ -1094,9 +1064,7 @@ if ($action == 'create') if ($line->product_type == 1 && empty($conf->global->STOCK_SUPPORTS_SERVICES)) { $quantityToBeDelivered = 0; - } - else - { + } else { $quantityToBeDelivered = $dispatchLines[$indiceAsked]['qty']; } $warehouse_id = $dispatchLines[$indiceAsked]['ent']; @@ -1117,8 +1085,7 @@ if ($action == 'create') if (GETPOST('qtyl'.$indiceAsked, 'int')) $defaultqty = GETPOST('qtyl'.$indiceAsked, 'int'); print ''; print ''; - } - else print $langs->trans("NA"); + } else print $langs->trans("NA"); print ''; // Stock @@ -1136,9 +1103,7 @@ if ($action == 'create') print ''; print $formproduct->selectWarehouses($tmpentrepot_id, 'entl'.$indiceAsked, '', 0, 0, $line->fk_product, '', 1); } - } - else - { + } else { print $langs->trans("Service"); } print ''; @@ -1155,8 +1120,7 @@ if ($action == 'create') print ''; print $form->selectDate($dispatchLines[$indiceAsked]['DLUO'], 'dluo'.$indiceAsked, '', '', 1, ""); print ''; - } - else { + } else { print ''; } } @@ -1200,14 +1164,11 @@ if ($action == 'create') print ''; print '
    '; - } - else - { + } else { dol_print_error($db); } } -} -elseif ($id || $ref) +} elseif ($id || $ref) /* *************************************************************************** */ /* */ /* Edit and view mode */ @@ -1235,7 +1196,7 @@ elseif ($id || $ref) $res = $object->fetch_optionals(); $head = reception_prepare_head($object); - dol_fiche_head($head, 'reception', $langs->trans("Reception"), -1, 'reception'); + dol_fiche_head($head, 'reception', $langs->trans("Reception"), -1, 'dollyrevert'); $formconfirm = ''; @@ -1252,9 +1213,7 @@ elseif ($id || $ref) if ($objectref == 'PROV') { $numref = $object->getNextNumRef($soc); - } - else - { + } else { $numref = $object->ref; } @@ -1418,9 +1377,7 @@ elseif ($id || $ref) print $form->selectDate($object->date_delivery ? $object->date_delivery : -1, 'liv_', 1, 1, '', "setdate_livraison", 1, 0); print ''; print ''; - } - else - { + } else { print $object->date_delivery ? dol_print_date($object->date_delivery, 'dayhour') : ' '; } print ''; @@ -1442,9 +1399,7 @@ elseif ($id || $ref) print ' '; print ' '; print ''; - } - else - { + } else { print $object->trueWeight; print ($object->trueWeight && $object->weight_units != '') ? ' '.measuringUnitString(0, "weight", $object->weight_units) : ''; } @@ -1477,9 +1432,7 @@ elseif ($id || $ref) print ' '; print ' '; print ''; - } - else - { + } else { print $object->trueHeight; print ($object->trueHeight && $object->height_units != '') ? ' '.measuringUnitString(0, "size", $object->height_units) : ''; } @@ -1510,8 +1463,7 @@ elseif ($id || $ref) if ($volumeUnit < 50) { print showDimensionInBestUnit($calculatedVolume, $volumeUnit, "volume", $langs, isset($conf->global->MAIN_VOLUME_DEFAULT_ROUND) ? $conf->global->MAIN_VOLUME_DEFAULT_ROUND : -1, isset($conf->global->MAIN_VOLUME_DEFAULT_UNIT) ? $conf->global->MAIN_VOLUME_DEFAULT_UNIT : 'no'); - } - else print $calculatedVolume.' '.measuringUnitString(0, "volume", $volumeUnit); + } else print $calculatedVolume.' '.measuringUnitString(0, "volume", $volumeUnit); } if ($totalVolume > 0) { @@ -1556,9 +1508,7 @@ elseif ($id || $ref) if ($user->admin) print info_admin($langs->trans("YouCanChangeValuesForThisListFromDictionarySetup"), 1); print ''; print ''; - } - else - { + } else { if ($object->shipping_method_id > 0) { // Get code using getLabelFromKey @@ -1590,9 +1540,7 @@ elseif ($id || $ref) if ($action != 'editincoterm') { print $form->textwithpicto($object->display_incoterms(), $object->label_incoterms, 1); - } - else - { + } else { print $form->select_incoterms((!empty($object->fk_incoterms) ? $object->fk_incoterms : ''), (!empty($object->location_incoterms) ? $object->location_incoterms : ''), $_SERVER['PHP_SELF'].'?id='.$object->id); } print ''; @@ -1645,9 +1593,7 @@ elseif ($id || $ref) if ($object->statut <= 1) { print $langs->trans("QtyToReceive").' - '; - } - else - { + } else { print $langs->trans("QtyReceived").' - '; } if (!empty($conf->stock->enabled)) @@ -1659,15 +1605,11 @@ elseif ($id || $ref) print $langs->trans("Batch"); } print ''; - } - else - { + } else { if ($object->statut <= 1) { print ''.$langs->trans("QtyToReceive").''; - } - else - { + } else { print ''.$langs->trans("QtyReceived").''; } if (!empty($conf->stock->enabled)) @@ -1774,9 +1716,7 @@ elseif ($id || $ref) $prod = new Product($db); $prod->fetch($lines[$i]->fk_product); $label = (!empty($prod->multilangs[$outputlangs->defaultlang]["label"])) ? $prod->multilangs[$outputlangs->defaultlang]["label"] : $lines[$i]->product->label; - } - else - $label = (!empty($lines[$i]->product->label) ? $lines[$i]->product->label : $lines[$i]->product->product_label); + } else $label = (!empty($lines[$i]->product->label) ? $lines[$i]->product->label : $lines[$i]->product->product_label); print ''; @@ -1790,9 +1730,7 @@ elseif ($id || $ref) print (!empty($lines[$i]->product->description) && $lines[$i]->description != $lines[$i]->product->description) ? '
    '.dol_htmlentitiesbr($lines[$i]->description) : ''; } print "\n"; - } - else - { + } else { print ""; if ($lines[$i]->product_type == Product::TYPE_SERVICE) $text = img_object($langs->trans('Service'), 'service'); else $text = img_object($langs->trans('Product'), 'product'); @@ -1811,9 +1749,7 @@ elseif ($id || $ref) if ($action == 'editline' && $lines[$i]->id == $line_id) { print ''; - } - else - { + } else { print ''.$lines[$i]->comment.''; } @@ -1864,7 +1800,7 @@ elseif ($id || $ref) print ''; print ''; // Qty to receive or received - print ''.''.''; + print ''; // Warehouse source print ''.$formproduct->selectWarehouses($lines[$i]->fk_entrepot, 'entl'.$line_id, '', 1, 0, $lines[$i]->fk_product, '', 1).''; // Batch number managment @@ -1878,24 +1814,20 @@ elseif ($id || $ref) print ''; } print ''; - } - else - { + } else { print ''; print ''; // Qty to receive or received - print ''.''.''; + print ''; // Warehouse source - print ''.''; + print ''; // Batch number managment - print ''.''; + print ''; print ''; } } print ''; - } - else - { + } else { // Qty to receive or received print ''.$lines[$i]->qty.''; @@ -1931,9 +1863,7 @@ elseif ($id || $ref) $detail .= '
    '; print $form->textwithtooltip(img_picto('', 'object_barcode').' '.$langs->trans("DetailBatchNumber"), $detail); - } - else - { + } else { print $langs->trans("NA"); } print ''; @@ -1961,8 +1891,7 @@ elseif ($id || $ref) print ''; print '
    '; print '
    '; - } - elseif ($object->statut == Reception::STATUS_DRAFT) + } elseif ($object->statut == Reception::STATUS_DRAFT) { // edit-delete buttons print ''; @@ -1993,9 +1922,7 @@ elseif ($id || $ref) if ($action == 'editline' && $lines[$i]->id == $line_id) { print $line->showOptionals($extrafields, 'edit', array('colspan'=>$colspan), $indiceAsked); - } - else - { + } else { print $line->showOptionals($extrafields, 'view', array('colspan'=>$colspan), $indiceAsked); } } @@ -2032,9 +1959,7 @@ elseif ($id || $ref) || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->reception->reception_advance->validate))) { print ''.$langs->trans("Validate").''; - } - else - { + } else { print ''.$langs->trans("Validate").''; } } @@ -2050,9 +1975,7 @@ elseif ($id || $ref) if (!empty($conf->facture->enabled) && !empty($conf->global->WORKFLOW_BILL_ON_RECEPTION)) // Quand l'option est on, il faut avoir le bouton en plus et non en remplacement du Close ? { print ''.$langs->trans("ClassifyUnbilled").''; - } - else - { + } else { print ''.$langs->trans("ReOpen").''; } } @@ -2064,8 +1987,7 @@ elseif ($id || $ref) if (empty($conf->global->MAIN_USE_ADVANCED_PERMS) || $user->rights->reception->reception_advance->send) { print ''.$langs->trans('SendByMail').''; - } - else print ''.$langs->trans('SendByMail').''; + } else print ''.$langs->trans('SendByMail').''; } } diff --git a/htdocs/reception/class/reception.class.php b/htdocs/reception/class/reception.class.php index 81c4854a4bf..f4cbb08ee9e 100644 --- a/htdocs/reception/class/reception.class.php +++ b/htdocs/reception/class/reception.class.php @@ -52,7 +52,7 @@ class Reception extends CommonObject /** * @var string String with name of icon for myobject. Must be the part after the 'object_' into object_myobject.png */ - public $picto = 'reception'; + public $picto = 'dollyrevert'; public $socid; public $ref_supplier; @@ -178,15 +178,11 @@ class Reception extends CommonObject if ($numref != "") { return $numref; - } - else - { + } else { dol_print_error($this->db, get_class($this)."::getNextNumRef ".$obj->error); return ""; } - } - else - { + } else { print $langs->trans("Error")." ".$langs->trans("Error_RECEPTION_ADDON_NUMBER_NotDefined"); return ""; } @@ -305,24 +301,12 @@ class Reception extends CommonObject } } - // Actions on extra fields (by external module or standard code) - // TODO le hook fait double emploi avec le trigger !! - $action = 'add'; - $hookmanager->initHooks(array('receptiondao')); - $parameters = array('socid'=>$this->id); - $reshook = $hookmanager->executeHooks('insertExtraFields', $parameters, $this, $action); // Note that $action and $object may have been modified by some hooks - if (empty($reshook)) + // Create extrafields + if (!$error) { - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used - { - $result = $this->insertExtraFields(); - if ($result < 0) - { - $error++; - } - } + $result = $this->insertExtraFields(); + if ($result < 0) $error++; } - elseif ($reshook < 0) $error++; if (!$error && !$notrigger) { @@ -330,41 +314,28 @@ class Reception extends CommonObject $result = $this->call_trigger('RECEPTION_CREATE', $user); if ($result < 0) { $error++; } // End call triggers + } - if (!$error) - { - $this->db->commit(); - return $this->id; - } - else - { - foreach ($this->errors as $errmsg) - { - dol_syslog(get_class($this)."::create ".$errmsg, LOG_ERR); - $this->error .= ($this->error ? ', '.$errmsg : $errmsg); - } - $this->db->rollback(); - return -1 * $error; - } - } - else + if (!$error) { - $error++; - $this->error = $this->db->lasterror()." - sql=$sql"; + $this->db->commit(); + return $this->id; + } else { + foreach ($this->errors as $errmsg) + { + dol_syslog(get_class($this)."::create ".$errmsg, LOG_ERR); + $this->error .= ($this->error ? ', '.$errmsg : $errmsg); + } $this->db->rollback(); - return -3; + return -1 * $error; } - } - else - { + } else { $error++; $this->error = $this->db->lasterror()." - sql=$sql"; $this->db->rollback(); return -2; } - } - else - { + } else { $error++; $this->error = $this->db->error()." - sql=$sql"; $this->db->rollback(); @@ -491,16 +462,12 @@ class Reception extends CommonObject } return 1; - } - else - { + } else { dol_syslog(get_class($this).'::Fetch no reception found', LOG_ERR); $this->error = 'Delivery with id '.$id.' not found'; return 0; } - } - else - { + } else { $this->error = $this->db->error(); return -1; } @@ -549,8 +516,7 @@ class Reception extends CommonObject if (!$error && (preg_match('/^[\(]?PROV/i', $this->ref) || empty($this->ref))) // empty should not happened, but when it occurs, the test save life { $numref = $this->getNextNumRef($soc); - } - else { + } else { $numref = $this->ref; } @@ -620,9 +586,7 @@ class Reception extends CommonObject $this->errors = array_merge($this->errors, $mouvS->errors); break; } - } - else - { + } else { // line with batch detail // We decrement stock of product (and sub-products) -> update table llx_product_stock (key of this table is fk_product+fk_entrepot) and add a movement record. @@ -636,9 +600,7 @@ class Reception extends CommonObject } } } - } - else - { + } else { $this->db->rollback(); $this->error = $this->db->error(); return -2; @@ -712,9 +674,7 @@ class Reception extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { foreach ($this->errors as $errmsg) { dol_syslog(get_class($this)."::valid ".$errmsg, LOG_ERR); @@ -769,8 +729,13 @@ class Reception extends CommonObject } // extrafields - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED) && is_array($array_options) && count($array_options) > 0) // For avoid conflicts if trigger used - $line->array_options = $array_options; + $line->array_options = $supplierorderline->array_options; + if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED) && is_array($array_options) && count($array_options) > 0) + { + foreach ($array_options as $key => $value) { + $line->array_options[$key] = $value; + } + } $line->fk_product = $fk_product; $line->fk_commande = $supplierorderline->fk_commande; @@ -880,9 +845,7 @@ class Reception extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } @@ -935,19 +898,21 @@ class Reception extends CommonObject $result = $mouvS->livraison($user, $obj->fk_product, $obj->fk_entrepot, $obj->qty, 0, $langs->trans("ReceptionDeletedInDolibarr", $this->ref), '', $obj->eatby, $obj->sellby, $obj->batch); // Price is set to 0, because we don't want to see WAP changed } - } - else - { + } else { $error++; $this->errors[] = "Error ".$this->db->lasterror(); } } if (!$error) { + $main = MAIN_DB_PREFIX.'commande_fournisseur_dispatch'; + $ef = $main."_extrafields"; + $sqlef = "DELETE FROM $ef WHERE fk_object IN (SELECT rowid FROM $main WHERE fk_reception = ".$this->id.")"; + $sql = "DELETE FROM ".MAIN_DB_PREFIX."commande_fournisseur_dispatch"; $sql .= " WHERE fk_reception = ".$this->id; - if ($this->db->query($sql)) + if ($this->db->query($sqlef) && $this->db->query($sql)) { // Delete linked object $res = $this->deleteObjectLinked(); @@ -1009,36 +974,26 @@ class Reception extends CommonObject } return 1; - } - else - { + } else { $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = $this->db->lasterror()." - sql=$sql"; $this->db->rollback(); return -3; } - } - else - { + } else { $this->error = $this->db->lasterror()." - sql=$sql"; $this->db->rollback(); return -2; } - } - else - { + } else { $this->error = $this->db->lasterror()." - sql=$sql"; $this->db->rollback(); return -1; } - } - else - { + } else { $this->db->rollback(); return -1; } @@ -1096,8 +1051,7 @@ class Reception extends CommonObject } return 1; - } - else { + } else { return -1; } } @@ -1116,7 +1070,7 @@ class Reception extends CommonObject { global $conf, $langs; $result = ''; - $label = ''.$langs->trans("ShowReception").''; + $label = ''.$langs->trans("Reception").''; $label .= '
    '.$langs->trans('Ref').': '.$this->ref; $label .= '
    '.$langs->trans('RefSupplier').': '.($this->ref_supplier ? $this->ref_supplier : $this->ref_client); @@ -1129,19 +1083,18 @@ class Reception extends CommonObject { if (!empty($conf->global->MAIN_OPTIMIZEFORTEXTBROWSER)) { - $label = $langs->trans("ShowReception"); + $label = $langs->trans("Reception"); $linkclose .= ' alt="'.dol_escape_htmltag($label, 1).'"'; } $linkclose .= ' title="'.dol_escape_htmltag($label, 1).'"'; $linkclose .= ' class="classfortooltip"'; } - $linkstart = ''; + $linkstart = ''; $linkend = ''; - $picto = 'sending'; - - if ($withpicto) $result .= ($linkstart.img_object(($notooltip ? '' : $label), $picto, ($notooltip ? '' : 'class="classfortooltip"'), 0, 0, $notooltip ? 0 : 1).$linkend); + if ($withpicto) $result .= ($linkstart.img_object(($notooltip ? '' : $label), $this->picto, ($notooltip ? '' : 'class="classfortooltip"'), 0, 0, $notooltip ? 0 : 1).$linkend); if ($withpicto && $withpicto != 2) $result .= ' '; $result .= $linkstart.$this->ref.$linkend; return $result; @@ -1284,15 +1237,11 @@ class Reception extends CommonObject { $this->date_delivery = $date_livraison; return 1; - } - else - { + } else { $this->error = $this->db->error(); return -1; } - } - else - { + } else { return -2; } } @@ -1375,9 +1324,7 @@ class Reception extends CommonObject $sql = "INSERT INTO ".MAIN_DB_PREFIX."c_shipment_mode (code, libelle, description, tracking)"; $sql .= " VALUES ('".$this->db->escape($this->update['code'])."','".$this->db->escape($this->update['libelle'])."','".$this->db->escape($this->update['description'])."','".$this->db->escape($this->update['tracking'])."')"; $resql = $this->db->query($sql); - } - else - { + } else { $sql = "UPDATE ".MAIN_DB_PREFIX."c_shipment_mode SET"; $sql .= " code='".$this->db->escape($this->update['code'])."'"; $sql .= ",libelle='".$this->db->escape($this->update['libelle'])."'"; @@ -1452,9 +1399,7 @@ class Reception extends CommonObject { $url = str_replace('{TRACKID}', $value, $tracking); $this->tracking_url = sprintf(''.($value ? $value : 'url').'', $url, $url); - } - else - { + } else { $this->tracking_url = $value; } } @@ -1555,9 +1500,7 @@ class Reception extends CommonObject $this->errors = $mouvS->errors; $error++; break; } - } - else - { + } else { // line with batch detail // We decrement stock of product (and sub-products) -> update table llx_product_stock (key of this table is fk_product+fk_entrepot) and add a movement record @@ -1570,9 +1513,7 @@ class Reception extends CommonObject } } } - } - else - { + } else { $this->error = $this->db->lasterror(); $error++; } @@ -1586,9 +1527,7 @@ class Reception extends CommonObject $error++; } } - } - else - { + } else { dol_print_error($this->db); $error++; } @@ -1597,9 +1536,7 @@ class Reception extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -1643,9 +1580,7 @@ class Reception extends CommonObject if (empty($error)) { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -1720,9 +1655,7 @@ class Reception extends CommonObject $this->errors = $mouvS->errors; $error++; break; } - } - else - { + } else { // line with batch detail // We decrement stock of product (and sub-products) -> update table llx_product_stock (key of this table is fk_product+fk_entrepot) and add a movement record @@ -1734,9 +1667,7 @@ class Reception extends CommonObject } } } - } - else - { + } else { $this->error = $this->db->lasterror(); $error++; } @@ -1765,9 +1696,7 @@ class Reception extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -1856,9 +1785,7 @@ class Reception extends CommonObject $error++; break; } - } - else - { + } else { // line with batch detail // We decrement stock of product (and sub-products) -> update table llx_product_stock (key of this table is fk_product+fk_entrepot) and add a movement record @@ -1870,9 +1797,7 @@ class Reception extends CommonObject } } } - } - else - { + } else { $this->error = $this->db->lasterror(); $error++; } @@ -1922,9 +1847,7 @@ class Reception extends CommonObject $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -1; diff --git a/htdocs/reception/contact.php b/htdocs/reception/contact.php index 7dd0bec2b38..4e8605ac74a 100644 --- a/htdocs/reception/contact.php +++ b/htdocs/reception/contact.php @@ -90,9 +90,7 @@ if ($action == 'addcontact' && $user->rights->reception->creer) { header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else - { + } else { if ($objectsrc->error == 'DB_ERROR_RECORD_ALREADY_EXISTS') { $langs->load("errors"); @@ -120,8 +118,7 @@ elseif ($action == 'deletecontact' && $user->rights->reception->creer) { header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else { + } else { dol_print_error($db); } } @@ -158,7 +155,7 @@ if ($id > 0 || !empty($ref)) $langs->trans("OrderCard"); $head = reception_prepare_head($object); - dol_fiche_head($head, 'contact', $langs->trans("Reception"), -1, 'sending'); + dol_fiche_head($head, 'contact', $langs->trans("Reception"), -1, 'dollyrevert'); // Reception card diff --git a/htdocs/reception/index.php b/htdocs/reception/index.php index c615017ad37..e3951458e40 100644 --- a/htdocs/reception/index.php +++ b/htdocs/reception/index.php @@ -47,7 +47,7 @@ $reception = new Reception($db); $helpurl = 'EN:Module_Receptions|FR:Module_Receptions|ES:Módulo_Receptiones'; llxHeader('', $langs->trans("Reception"), $helpurl); -print load_fiche_titre($langs->trans("ReceptionsArea")); +print load_fiche_titre($langs->trans("ReceptionsArea"), '', 'dollyrevert'); print '
    '; @@ -120,8 +120,7 @@ if ($resql) print ''; $i++; } - } - else { + } else { print ''.$langs->trans("None").''; } @@ -182,16 +181,14 @@ if ($resql) $orderstatic->id = $obj->commande_fournisseur_id; $orderstatic->ref = $obj->commande_fournisseur_ref; print $orderstatic->getNomUrl(1); - } - else print ' '; + } else print ' '; print ''; $i++; } print "

    "; } $db->free($resql); -} -else dol_print_error($db); +} else dol_print_error($db); diff --git a/htdocs/reception/list.php b/htdocs/reception/list.php index f370c9ed9cf..93aba12eb00 100644 --- a/htdocs/reception/list.php +++ b/htdocs/reception/list.php @@ -192,8 +192,7 @@ if (empty($reshook)) $object->add_object_linked('reception', $value); // add supplier order linked object } } - } - else { + } else { $object->socid = $rcp->socid; $object->type = FactureFournisseur::TYPE_STANDARD; $object->cond_reglement_id = $rcp->thirdparty->cond_reglement_supplier_id; @@ -278,16 +277,12 @@ if (empty($reshook)) { $result = $object->insert_discount($discountid); //$result=$discount->link_to_invoice($lineid,$id); - } - else - { + } else { setEventMessages($discount->error, $discount->errors, 'errors'); $error++; break; } - } - else - { + } else { // Positive line $product_type = ($lines[$i]->product_type ? $lines[$i]->product_type : 0); // Date start @@ -334,9 +329,7 @@ if (empty($reshook)) if ($result > 0) { $lineid = $result; - } - else - { + } else { $lineid = 0; $error++; break; @@ -390,9 +383,7 @@ if (empty($reshook)) { $db->commit(); setEventMessage($langs->trans('BillCreated', $nb_bills_created)); - } - else - { + } else { $db->rollback(); $action = 'create'; $_GET["origin"] = $_POST["origin"]; @@ -547,11 +538,10 @@ if ($resql) print ''; print ''; print ''; - print ''; print ''; print ''; - print_barre_liste($langs->trans('ListOfReceptions'), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, '', 0, '', '', $limit); + print_barre_liste($langs->trans('ListOfReceptions'), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'dollyrevert', 0, '', '', $limit, 0, 0, 1); if ($massaction == 'createbills') @@ -585,9 +575,7 @@ if ($resql) { print $form->selectyesno('validate_invoices', 0, 1, 1); print ' ('.$langs->trans("AutoValidationNotPossibleWhenStockIsDecreasedOnInvoiceValidation").')'; - } - else - { + } else { print $form->selectyesno('validate_invoices', 0, 1); } print ''; @@ -885,7 +873,7 @@ if ($resql) 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, 'totalarray'=>&$totalarray); $reshook = $hookmanager->executeHooks('printFieldListValue', $parameters); // Note that $action and $object may have been modified by hook print $hookmanager->resPrint; // Date creation @@ -937,9 +925,7 @@ if ($resql) print "
    "; print ''; $db->free($resql); -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/reception/note.php b/htdocs/reception/note.php index 0bec9f8c9e2..9e9b6c20f92 100644 --- a/htdocs/reception/note.php +++ b/htdocs/reception/note.php @@ -98,7 +98,7 @@ $form = new Form($db); if ($id > 0 || !empty($ref)) { $head = reception_prepare_head($object); - dol_fiche_head($head, 'note', $langs->trans("Reception"), -1, 'sending'); + dol_fiche_head($head, 'note', $langs->trans("Reception"), -1, 'dollyrevert'); // Reception card diff --git a/htdocs/reception/stats/index.php b/htdocs/reception/stats/index.php index a93003b0ef9..5079671dafd 100644 --- a/htdocs/reception/stats/index.php +++ b/htdocs/reception/stats/index.php @@ -61,7 +61,7 @@ $form = new Form($db); llxHeader(); -print load_fiche_titre($langs->trans("StatisticsOfReceptions"), $mesg); +print load_fiche_titre($langs->trans("StatisticsOfReceptions"), '', 'dollyrevert'); dol_mkdir($dir); @@ -77,9 +77,7 @@ $data = $stats->getNbByMonthWithPrevYear($endyear, $startyear); if (!$user->rights->societe->client->voir || $user->socid) { $filenamenb = $dir.'/receptionsnbinyear-'.$user->id.'-'.$year.'.png'; -} -else -{ +} else { $filenamenb = $dir.'/receptionsnbinyear-'.$year.'.png'; } @@ -200,7 +198,7 @@ if (!count($arrayyears)) $arrayyears[$nowyear] = $nowyear; $h = 0; $head = array(); -$head[$h][0] = DOL_URL_ROOT.'/commande/stats/index.php'; +$head[$h][0] = DOL_URL_ROOT.'/reception/stats/index.php'; $head[$h][1] = $langs->trans("ByMonthYear"); $head[$h][2] = 'byyear'; $h++; @@ -290,8 +288,7 @@ print '
    '; // Show graphs print ''; } -} -else -{ +} else { $colspan = 1; foreach ($arrayfields as $key => $val) { if (!empty($val['checked'])) $colspan++; } print ''; diff --git a/htdocs/salaries/admin/salaries.php b/htdocs/salaries/admin/salaries.php index 29e3c325ee0..a824a7d8eee 100644 --- a/htdocs/salaries/admin/salaries.php +++ b/htdocs/salaries/admin/salaries.php @@ -62,9 +62,7 @@ if ($action == 'update') if (!$error) { setEventMessages($langs->trans("SetupSaved"), null, 'mesgs'); - } - else - { + } else { setEventMessages($langs->trans("Error"), null, 'errors'); } } @@ -114,9 +112,7 @@ foreach ($list as $key) if (!empty($conf->accounting->enabled)) { print $formaccounting->select_account($conf->global->$key, $key, 1, '', 1, 1); - } - else - { + } else { print ''; } print ''; diff --git a/htdocs/salaries/card.php b/htdocs/salaries/card.php index ac1c08f2948..94add08291c 100644 --- a/htdocs/salaries/card.php +++ b/htdocs/salaries/card.php @@ -158,9 +158,7 @@ if ($action == 'add' && empty($cancel)) header("Location: list.php"); exit; } - } - else - { + } else { $db->rollback(); setEventMessages($object->error, $object->errors, 'errors'); $action = "create"; @@ -193,22 +191,16 @@ if ($action == 'delete') $db->commit(); header("Location: ".DOL_URL_ROOT.'/salaries/list.php'); exit; - } - else - { + } else { $object->error = $accountline->error; $db->rollback(); setEventMessages($object->error, $object->errors, 'errors'); } - } - else - { + } else { $db->rollback(); setEventMessages($object->error, $object->errors, 'errors'); } - } - else - { + } else { setEventMessages('Error try do delete a line linked to a conciliated bank transaction', null, 'errors'); } } @@ -264,7 +256,7 @@ if ($action == 'create') print ''; print ''; - print load_fiche_titre($langs->trans("NewSalaryPayment"), '', 'title_accountancy.png'); + print load_fiche_titre($langs->trans("NewSalaryPayment"), '', 'object_payment'); dol_fiche_head('', ''); @@ -493,14 +485,10 @@ if ($id) if (!empty($user->rights->salaries->delete)) { print ''; - } - else - { + } else { print ''; } - } - else - { + } else { print ''; } print ""; diff --git a/htdocs/salaries/class/paymentsalary.class.php b/htdocs/salaries/class/paymentsalary.class.php index 44c25b09a13..34b58a5c0e4 100644 --- a/htdocs/salaries/class/paymentsalary.class.php +++ b/htdocs/salaries/class/paymentsalary.class.php @@ -160,7 +160,7 @@ class PaymentSalary extends CommonObject // Update extrafield if (!$error) { - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + if (!$error) { $result = $this->insertExtraFields(); if ($result < 0) @@ -182,9 +182,7 @@ class PaymentSalary extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -263,9 +261,7 @@ class PaymentSalary extends CommonObject $this->db->free($resql); return 1; - } - else - { + } else { $this->error = "Error ".$this->db->lasterror(); return -1; } @@ -449,7 +445,7 @@ class PaymentSalary extends CommonObject // Update extrafield if (!$error) { - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + if (!$error) { $result = $this->insertExtraFields(); if ($result < 0) @@ -480,9 +476,7 @@ class PaymentSalary extends CommonObject if ($bank_line_id > 0) { $this->update_fk_bank($bank_line_id); - } - else - { + } else { $this->error = $acc->error; $error++; } @@ -524,22 +518,17 @@ class PaymentSalary extends CommonObject $result = $this->call_trigger('PAYMENT_SALARY_CREATE', $user); if ($result < 0) $error++; // End call triggers - } - else $error++; + } else $error++; if (!$error) { $this->db->commit(); return $this->id; - } - else - { + } else { $this->db->rollback(); return -2; } - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -1; @@ -562,9 +551,7 @@ class PaymentSalary extends CommonObject if ($result) { return 1; - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -622,8 +609,7 @@ class PaymentSalary extends CommonObject $reshook=$hookmanager->executeHooks('getnomurltooltip',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks if ($reshook > 0) $linkclose = $hookmanager->resPrint; */ - } - else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); + } else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); $linkstart = ''; @@ -675,9 +661,7 @@ class PaymentSalary extends CommonObject $this->date_creation = $this->db->jdate($obj->datec); } $this->db->free($result); - } - else - { + } else { dol_print_error($this->db); } } diff --git a/htdocs/salaries/document.php b/htdocs/salaries/document.php index c8de93c0786..69680df6a2a 100644 --- a/htdocs/salaries/document.php +++ b/htdocs/salaries/document.php @@ -50,11 +50,12 @@ $result = restrictedArea($user, 'salaries', '', '', ''); // Get parameters +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST('sortfield', 'alpha'); $sortorder = GETPOST('sortorder', 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; if (!$sortorder) $sortorder = "ASC"; @@ -127,9 +128,7 @@ if ($object->id) $permission = $user->rights->salaries->write; $param = '&id='.$object->id; include_once DOL_DOCUMENT_ROOT.'/core/tpl/document_actions_post_headers.tpl.php'; -} -else -{ +} else { print $langs->trans("ErrorUnknown"); } diff --git a/htdocs/salaries/list.php b/htdocs/salaries/list.php index 259547ae8ff..6c4ee37a979 100644 --- a/htdocs/salaries/list.php +++ b/htdocs/salaries/list.php @@ -49,16 +49,16 @@ $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; if (!$sortfield) $sortfield = "s.datep,s.rowid"; if (!$sortorder) $sortorder = "DESC,DESC"; $optioncss = GETPOST('optioncss', 'alpha'); -$filtre = $_GET["filtre"]; +$filtre = GETPOST("filtre", 'none'); -if (empty($_REQUEST['typeid'])) +if (!GETPOST('typeid', 'int')) { $newfiltre = str_replace('filtre=', '', $filtre); $filterarray = explode('-', $newfiltre); @@ -67,10 +67,8 @@ if (empty($_REQUEST['typeid'])) $part = explode(':', $val); if ($part[0] == 's.fk_typepayment') $typeid = $part[1]; } -} -else -{ - $typeid = $_REQUEST['typeid']; +} else { + $typeid = GETPOST('typeid', 'int'); } @@ -141,6 +139,7 @@ if ($result) } $sql .= $db->plimit($limit + 1, $offset); + $result = $db->query($sql); if ($result) { @@ -167,9 +166,8 @@ if ($result) print ''; print ''; print ''; - print ''; - print_barre_liste($langs->trans("SalariesPayments"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, '', $num, $totalnboflines, 'title_accountancy.png', 0, $newcardbutton, '', $limit); + print_barre_liste($langs->trans("SalariesPayments"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, '', $num, $totalnboflines, 'object_payment', 0, $newcardbutton, '', $limit, 0, 0, 1); print '
    '; print '
    '; -if ($mesg) { print $mesg; } -else { +if ($mesg) { print $mesg; } else { print $px1->show(); print "
    \n"; /*print $px2->show(); diff --git a/htdocs/resource/agenda.php b/htdocs/resource/agenda.php index 1035d17d5f9..72d055da41d 100644 --- a/htdocs/resource/agenda.php +++ b/htdocs/resource/agenda.php @@ -48,9 +48,7 @@ if (GETPOST('actioncode', 'array')) { $actioncode = GETPOST('actioncode', 'array', 3); if (!count($actioncode)) $actioncode = '0'; -} -else -{ +} else { $actioncode = GETPOST("actioncode", "alpha", 3) ?GETPOST("actioncode", "alpha", 3) : (GETPOST("actioncode") == '0' ? '0' : (empty($conf->global->AGENDA_DEFAULT_FILTER_TYPE_FOR_OBJECT) ? '' : $conf->global->AGENDA_DEFAULT_FILTER_TYPE_FOR_OBJECT)); } $search_agenda_label = GETPOST('search_agenda_label'); diff --git a/htdocs/resource/card.php b/htdocs/resource/card.php index b403c0516f9..8d965c69c2c 100644 --- a/htdocs/resource/card.php +++ b/htdocs/resource/card.php @@ -99,9 +99,7 @@ if (empty($reshook)) { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("Ref")), null, 'errors'); $action = 'create'; - } - else - { + } else { $object->ref = $ref; $object->description = $description; $object->fk_code_type_resource = $fk_code_type_resource; @@ -118,17 +116,13 @@ if (empty($reshook)) setEventMessages($langs->trans('ResourceCreatedWithSuccess'), null, 'mesgs'); Header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else - { + } else { // Creation KO setEventMessages($object->error, $object->errors, 'errors'); $action = 'create'; } } - } - else - { + } else { Header("Location: list.php"); exit; } @@ -165,15 +159,11 @@ if (empty($reshook)) { Header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); $error++; } - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); $error++; } @@ -197,14 +187,10 @@ if (empty($reshook)) setEventMessages($langs->trans('RessourceSuccessfullyDeleted'), null, 'mesgs'); Header('Location: '.DOL_URL_ROOT.'/resource/list.php'); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -227,9 +213,7 @@ if ($action == 'create' || $object->fetch($id, $ref) > 0) { print load_fiche_titre($title, '', 'object_resource'); dol_fiche_head(''); - } - else - { + } else { $head = resource_prepare_head($object); dol_fiche_head($head, 'resource', $title, -1, 'resource'); } @@ -291,9 +275,7 @@ if ($action == 'create' || $object->fetch($id, $ref) > 0) print ''; print ''; - } - else - { + } else { $formconfirm = ''; // Confirm deleting resource line @@ -393,8 +375,7 @@ if ($action == 'create' || $object->fetch($id, $ref) > 0) } } print ''; -} -else { +} else { dol_print_error(); } diff --git a/htdocs/resource/class/dolresource.class.php b/htdocs/resource/class/dolresource.class.php index 75c6e50dec3..294f36e5589 100644 --- a/htdocs/resource/class/dolresource.class.php +++ b/htdocs/resource/class/dolresource.class.php @@ -136,7 +136,7 @@ class Dolresource extends CommonObject $action = 'create'; // Actions on extra fields - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + if (!$error) { $result = $this->insertExtraFields(); if ($result < 0) @@ -164,9 +164,7 @@ class Dolresource extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return $this->id; } @@ -223,9 +221,7 @@ class Dolresource extends CommonObject $this->db->free($resql); return $this->id; - } - else - { + } else { $this->error = "Error ".$this->db->lasterror(); dol_syslog(get_class($this)."::fetch ".$this->error, LOG_ERR); return -1; @@ -309,7 +305,7 @@ class Dolresource extends CommonObject $action = 'update'; // Actions on extra fields - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + if (!$error) { $result = $this->insertExtraFields(); if ($result < 0) @@ -329,9 +325,7 @@ class Dolresource extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } @@ -388,9 +382,7 @@ class Dolresource extends CommonObject $this->db->free($resql); return $this->id; - } - else - { + } else { $this->error = "Error ".$this->db->lasterror(); return -1; } @@ -427,9 +419,7 @@ class Dolresource extends CommonObject $this->error = $this->db->lasterror(); $error++; } - } - else - { + } else { $this->error = $this->db->lasterror(); $error++; } @@ -475,9 +465,7 @@ class Dolresource extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -522,11 +510,9 @@ class Dolresource extends CommonObject foreach ($filter as $key => $value) { if (strpos($key, 'date')) { $sql .= ' AND '.$key.' = \''.$this->db->idate($value).'\''; - } - elseif (strpos($key, 'ef.') !== false) { + } elseif (strpos($key, 'ef.') !== false) { $sql .= $value; - } - else { + } else { $sql .= ' AND '.$key.' LIKE \'%'.$this->db->escape($value).'%\''; } } @@ -567,9 +553,7 @@ class Dolresource extends CommonObject $this->db->free($resql); } return $num; - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -608,8 +592,7 @@ class Dolresource extends CommonObject foreach ($filter as $key => $value) { if (strpos($key, 'date')) { $sql .= ' AND '.$key.' = \''.$this->db->idate($value).'\''; - } - else { + } else { $sql .= ' AND '.$key.' LIKE \'%'.$this->db->escape($value).'%\''; } } @@ -645,9 +628,7 @@ class Dolresource extends CommonObject $this->db->free($resql); } return $num; - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -690,8 +671,7 @@ class Dolresource extends CommonObject foreach ($filter as $key => $value) { if (strpos($key, 'date')) { $sql .= ' AND '.$key.' = \''.$this->db->idate($value).'\''; - } - else { + } else { $sql .= ' AND '.$key.' LIKE \'%'.$this->db->escape($value).'%\''; } } @@ -724,9 +704,7 @@ class Dolresource extends CommonObject $this->db->free($resql); } return $num; - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -816,9 +794,7 @@ class Dolresource extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } @@ -871,10 +847,12 @@ class Dolresource extends CommonObject return $resources; } - /* + /** * Return an int number of resources linked to the element * - * @return int + * @param string $element Element type + * @param int $element_id Element id + * @return int Nb of resources loaded */ public function fetchElementResources($element, $element_id) { @@ -922,9 +900,7 @@ class Dolresource extends CommonObject $i++; } return $num; - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -976,8 +952,7 @@ class Dolresource extends CommonObject } $linkclose .= ' title="'.dol_escape_htmltag($label, 1).'"'; $linkclose .= ' class="classfortooltip'.($morecss ? ' '.$morecss : '').'"'; - } - else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); + } else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); $linkstart = ''; diff --git a/htdocs/resource/class/html.formresource.class.php b/htdocs/resource/class/html.formresource.class.php index 3c0bb36116e..451ca9922b1 100644 --- a/htdocs/resource/class/html.formresource.class.php +++ b/htdocs/resource/class/html.formresource.class.php @@ -74,9 +74,10 @@ class FormResource * @param string $filterkey Filter on key value * @param int $outputmode 0=HTML select string, 1=Array, 2=without form tag * @param int $limit Limit number of answers + * @param string $morecss More css * @return string HTML string with */ - public function select_resource_list($selected = '', $htmlname = 'fk_resource', $filter = '', $showempty = 0, $showtype = 0, $forcecombo = 0, $event = array(), $filterkey = '', $outputmode = 0, $limit = 20) + public function select_resource_list($selected = '', $htmlname = 'fk_resource', $filter = '', $showempty = 0, $showtype = 0, $forcecombo = 0, $event = array(), $filterkey = '', $outputmode = 0, $limit = 20, $morecss = '') { // phpcs:enable global $conf, $user, $langs; @@ -100,10 +101,12 @@ class FormResource { //$minLength = (is_numeric($conf->global->RESOURCE_USE_SEARCH_TO_SELECT)?$conf->global->RESOURCE_USE_SEARCH_TO_SELECT:2); $out .= ajax_combobox($htmlname, $event, $conf->global->RESOURCE_USE_SEARCH_TO_SELECT); + } else { + $out .= ajax_combobox($htmlname); } // Construct $out and $outarray - $out .= ''."\n"; if ($showempty) $out .= ''."\n"; $num = 0; @@ -123,9 +126,7 @@ class FormResource if ($selected > 0 && $selected == $resourcestat->lines[$i]->id) { $out .= ''; - } - else - { + } else { $out .= ''; } @@ -136,7 +137,6 @@ class FormResource } } $out .= ''."\n"; - $out .= ajax_combobox($htmlname); if ($outputmode != 2) { @@ -144,9 +144,7 @@ class FormResource $out .= ''; } - } - else - { + } else { dol_print_error($this->db); } diff --git a/htdocs/resource/contact.php b/htdocs/resource/contact.php index cbc94c2e843..ee20d918648 100644 --- a/htdocs/resource/contact.php +++ b/htdocs/resource/contact.php @@ -62,9 +62,7 @@ if ($action == 'addcontact' && $user->rights->resource->write) { header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else - { + } else { if ($object->error == 'DB_ERROR_RECORD_ALREADY_EXISTS') { $langs->load("errors"); $mesg = $langs->trans("ErrorThisContactIsAlreadyDefinedAsThisType"); @@ -91,8 +89,7 @@ elseif ($action == 'deletecontact' && $user->rights->resource->write) { header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else { + } else { dol_print_error($db); } } diff --git a/htdocs/resource/document.php b/htdocs/resource/document.php index 5f053be4321..077430cf4bb 100644 --- a/htdocs/resource/document.php +++ b/htdocs/resource/document.php @@ -49,11 +49,12 @@ $result = restrictedArea($user, 'resource', $id, 'resource'); // Get parameters +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST('sortfield', 'alpha'); $sortorder = GETPOST('sortorder', 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; if (!$sortorder) $sortorder = "ASC"; @@ -135,9 +136,7 @@ if ($object->id > 0) $permission = $user->rights->resource->write; include_once DOL_DOCUMENT_ROOT.'/core/tpl/document_actions_post_headers.tpl.php'; -} -else -{ +} else { print $langs->trans("ErrorUnknown"); } diff --git a/htdocs/resource/element_resource.php b/htdocs/resource/element_resource.php index 1ce3957071a..dd3a02e18e3 100644 --- a/htdocs/resource/element_resource.php +++ b/htdocs/resource/element_resource.php @@ -97,9 +97,7 @@ if (empty($reshook)) $error++; setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("Resource")), null, 'errors'); $action = ''; - } - else - { + } else { $objstat = fetchObjectByElement($element_id, $element, $element_ref); $objstat->element = $element; // For externals module, we need to keep @xx @@ -169,8 +167,7 @@ if (empty($reshook)) setEventMessages($langs->trans('ResourceLinkedWithSuccess'), null, 'mesgs'); header("Location: ".$_SERVER['PHP_SELF'].'?element='.$element.'&element_id='.$objstat->id); exit; - } - elseif ($objstat) + } elseif ($objstat) { setEventMessages($objstat->error, $objstat->errors, 'errors'); } @@ -265,9 +262,7 @@ if (empty($reshook)) setEventMessages($langs->trans('RessourceLineSuccessfullyDeleted'), null, 'mesgs'); header("Location: ".$_SERVER['PHP_SELF']."?element=".$element."&element_id=".$element_id); exit; - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -297,9 +292,7 @@ if ($ret == -1) { } if (!$ret) { print '
    '.$langs->trans('NoResourceInDatabase').'
    '; -} -else -{ +} else { // Confirmation suppression resource line if ($action == 'delete_resource') { @@ -411,9 +404,7 @@ else } } $_SESSION['assignedtouser'] = json_encode($listofuserid); - } - else - { + } else { if (!empty($_SESSION['assignedtouser'])) { $listofuserid = json_decode($_SESSION['assignedtouser'], true); @@ -600,9 +591,7 @@ else if (file_exists(dol_buildpath($reldir.'/resource_'.$element_prop['element'].'_add.tpl.php'))) { $tpl = dol_buildpath($reldir.'/resource_'.$element_prop['element'].'_add.tpl.php'); - } - else - { + } else { $tpl = DOL_DOCUMENT_ROOT.$reldir.'/resource_add.tpl.php'; } if (empty($conf->file->strict_mode)) { @@ -620,9 +609,7 @@ else if (file_exists(dol_buildpath($reldir.'/resource_'.$element_prop['element'].'_view.tpl.php'))) { $tpl = dol_buildpath($reldir.'/resource_'.$element_prop['element'].'_view.tpl.php'); - } - else - { + } else { $tpl = DOL_DOCUMENT_ROOT.$reldir.'/resource_view.tpl.php'; } if (empty($conf->file->strict_mode)) { diff --git a/htdocs/resource/list.php b/htdocs/resource/list.php index 033d49ae8c8..4dca64b47a6 100644 --- a/htdocs/resource/list.php +++ b/htdocs/resource/list.php @@ -281,9 +281,7 @@ if ($ret) print '
    '.$langs->trans("NoRecordFound").'
    '."\n"; @@ -288,8 +286,7 @@ if ($result) } $accountstatic->label = $obj->blabel; print $accountstatic->getNomUrl(1); - } - else print ' '; + } else print ' '; print ''; if (!$i) $totalarray['nbfield']++; } @@ -317,9 +314,7 @@ if ($result) print ''; $db->free($result); -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/salaries/stats/index.php b/htdocs/salaries/stats/index.php index 33082a4ad91..06beda8ce41 100644 --- a/htdocs/salaries/stats/index.php +++ b/htdocs/salaries/stats/index.php @@ -60,7 +60,7 @@ llxHeader(); $title = $langs->trans("SalariesStatistics"); $dir = $conf->salaries->dir_temp; -print load_fiche_titre($title, $mesg); +print load_fiche_titre($title, '', 'object_payment'); dol_mkdir($dir); @@ -256,8 +256,7 @@ print '
    '; // Show graphs print '
    \n"; - } - else - { + } else { $disabled = (!empty($conf->multicompany->enabled) && (is_object($mc) && !empty($mc->sharings['referent']) && $mc->sharings['referent'] != $conf->entity) ? true : false); print ''; - } - else - { + } else { print ''; @@ -537,9 +501,7 @@ if ($resql) array_push($def, $array[0]); $i++; } -} -else -{ +} else { dol_print_error($db); } @@ -569,8 +531,7 @@ foreach ($dirsociete as $dirroot) try { dol_include_once($dirroot.'doc/'.$file); - } - catch (Exception $e) + } catch (Exception $e) { dol_syslog($e->getMessage(), LOG_ERR); } @@ -607,17 +568,13 @@ foreach ($dirsociete as $dirroot) // print img_picto($langs->trans("Enabled"),'on'); //} print ""; - } - else - { + } else { if (versioncompare($module->phpmin, versionphparray()) > 0) { print ""; - } - else - { + } else { print ""; @@ -643,9 +600,7 @@ foreach ($dirsociete as $dirroot) if ($module->type == 'pdf') { $linkspec = ''.img_object($langs->trans("Preview"), 'bill').''; - } - else - { + } else { $linkspec = img_object($langs->trans("PreviewNotAvailable"), 'generic'); } print $linkspec; @@ -714,9 +669,7 @@ foreach ($profid as $key => $val) print ''; - } - else - { + } else { print ''; @@ -727,9 +680,7 @@ foreach ($profid as $key => $val) print ''; - } - else - { + } else { print ''; @@ -740,9 +691,7 @@ foreach ($profid as $key => $val) print ''; - } - else - { + } else { print ''; @@ -783,9 +732,7 @@ if (!$conf->use_javascript_ajax) print '"; -} -else -{ +} else { print '"; -} -else -{ +} else { print ''; - } - elseif ($mysoc->localtax1_assuj == "1") + } elseif ($mysoc->localtax1_assuj == "1") { $this->tpl['localtax'] .= ''; - } - elseif ($mysoc->localtax2_assuj == "1") + } elseif ($mysoc->localtax2_assuj == "1") { $this->tpl['localtax'] .= ''; } } - } - else - { + } else { $head = societe_prepare_head($this->object); $this->tpl['showhead'] = dol_get_fiche_head($head, 'card', '', 0, 'company'); @@ -307,8 +303,7 @@ abstract class ActionsCardCommon if ($nbofsalesrepresentative > 3) // We print only number { $this->tpl['sales_representatives'] .= $nbofsalesrepresentative; - } - elseif ($nbofsalesrepresentative > 0) + } elseif ($nbofsalesrepresentative > 0) { $userstatic = new User($this->db); $i = 0; @@ -321,8 +316,7 @@ abstract class ActionsCardCommon $i++; if ($i < $nbofsalesrepresentative) $this->tpl['sales_representatives'] .= ', '; } - } - else $this->tpl['sales_representatives'] .= $langs->trans("NoSalesRepresentativeAffected"); + } else $this->tpl['sales_representatives'] .= $langs->trans("NoSalesRepresentativeAffected"); // Linked member if (!empty($conf->adherent->enabled)) @@ -334,9 +328,7 @@ abstract class ActionsCardCommon { $adh->ref = $adh->getFullName($langs); $this->tpl['linked_member'] = $adh->getNomUrl(1); - } - else - { + } else { $this->tpl['linked_member'] = $langs->trans("ThirdpartyNotLinkedToMember"); } } @@ -353,13 +345,11 @@ abstract class ActionsCardCommon $this->tpl['localtax'] .= ''; $this->tpl['localtax'] .= ''; $this->tpl['localtax'] .= ''; - } - elseif ($mysoc->localtax1_assuj == "1") + } elseif ($mysoc->localtax1_assuj == "1") { $this->tpl['localtax'] .= ''; $this->tpl['localtax'] .= ''; - } - elseif ($mysoc->localtax2_assuj == "1") + } elseif ($mysoc->localtax2_assuj == "1") { $this->tpl['localtax'] .= ''; $this->tpl['localtax'] .= ''; diff --git a/htdocs/societe/canvas/company/actions_card_company.class.php b/htdocs/societe/canvas/company/actions_card_company.class.php index 0601760e34a..73453aff62e 100644 --- a/htdocs/societe/canvas/company/actions_card_company.class.php +++ b/htdocs/societe/canvas/company/actions_card_company.class.php @@ -134,19 +134,13 @@ class ActionsCardCompany extends ActionsCardCommon { $s .= ''.$langs->trans("VATIntraCheck").''; $this->tpl['tva_intra'] = $form->textwithpicto($s, $langs->trans("VATIntraCheckDesc", $langs->transnoentitiesnoconv("VATIntraCheck")), 1); - } - else - { + } else { $this->tpl['tva_intra'] = $s.'object->country_id).'" target="_blank">'.img_picto($langs->trans("VATIntraCheckableOnEUSite"), 'help').''; } - } - else - { + } else { $this->tpl['tva_intra'] = $s; } - } - else - { + } else { // Confirm delete third party if ($action == 'delete') { @@ -173,19 +167,13 @@ class ActionsCardCompany extends ActionsCardCommon { $s .= ''.$langs->trans("VATIntraCheck").''; $this->tpl['tva_intra'] = $form->textwithpicto($s, $langs->trans("VATIntraCheckDesc", $langs->transnoentitiesnoconv("VATIntraCheck")), 1); - } - else - { + } else { $this->tpl['tva_intra'] = $s.'object->country_id).'" target="_blank">'.img_picto($langs->trans("VATIntraCheckableOnEUSite"), 'help').''; } - } - else - { + } else { $this->tpl['tva_intra'] = $s; } - } - else - { + } else { $this->tpl['tva_intra'] = ' '; } @@ -196,9 +184,7 @@ class ActionsCardCompany extends ActionsCardCommon $socm->fetch($this->object->parent); $this->tpl['parent_company'] = $socm->getNomUrl(1).' '.($socm->code_client ? "(".$socm->code_client.")" : ""); $this->tpl['parent_company'] .= ($socm->town ? ' - '.$socm->town : ''); - } - else - { + } else { $this->tpl['parent_company'] = $langs->trans("NoParentCompany"); } } diff --git a/htdocs/societe/canvas/individual/actions_card_individual.class.php b/htdocs/societe/canvas/individual/actions_card_individual.class.php index 9f236c8015e..3abb9e9b6f7 100644 --- a/htdocs/societe/canvas/individual/actions_card_individual.class.php +++ b/htdocs/societe/canvas/individual/actions_card_individual.class.php @@ -110,9 +110,7 @@ class ActionsCardIndividual extends ActionsCardCommon if ($action == 'create' || $action == 'edit') { $this->tpl['select_civility'] = $formcompany->select_civility(GETPOST('civility_id')); - } - else - { + } else { // Confirm delete third party if ($action == 'delete' || $conf->use_javascript_ajax) { diff --git a/htdocs/societe/card.php b/htdocs/societe/card.php index 20ada9bfbaf..f468f4f63ce 100644 --- a/htdocs/societe/card.php +++ b/htdocs/societe/card.php @@ -136,9 +136,7 @@ if (empty($reshook)) { $langs->load('errors'); setEventMessages($langs->trans('ErrorThirdPartyIdIsMandatory', $langs->transnoentitiesnoconv('MergeOriginThirdparty')), null, 'errors'); - } - else - { + } else { if (!$error && $soc_origin->fetch($soc_origin_id) < 1) { setEventMessages($langs->trans('ErrorRecordNotFound'), null, 'errors'); @@ -301,9 +299,7 @@ if (empty($reshook)) { setEventMessages($langs->trans('ThirdpartiesMergeSuccess'), null, 'mesgs'); $db->commit(); - } - else - { + } else { $langs->load("errors"); setEventMessages($langs->trans('ErrorsThirdpartyMerge'), null, 'errors'); $db->rollback(); @@ -391,8 +387,7 @@ if (empty($reshook)) { $ret = $object->fetch($socid); $object->oldcopy = clone $object; - } - else $object->canvas = $canvas; + } else $object->canvas = $canvas; if (GETPOST("private", 'int') == 1) // Ask to create a contact { @@ -403,9 +398,7 @@ if (empty($reshook)) // Add non official properties $object->name_bis = GETPOST('name', 'alpha'); $object->firstname = GETPOST('firstname', 'alpha'); - } - else - { + } else { $object->name = GETPOST('name', 'alpha'); } $object->entity = (GETPOSTISSET('entity') ?GETPOST('entity', 'int') : $conf->entity); @@ -608,17 +601,13 @@ if (empty($reshook)) if (!$result > 0) { $errors[] = "ErrorFailedToSaveFile"; - } - else - { + } else { // Create thumbs $object->addThumbs($newfile); } } } - } - else - { + } else { switch ($_FILES['photo']['error']) { case 1: //uploaded file exceeds the upload_max_filesize directive in php.ini @@ -631,9 +620,7 @@ if (empty($reshook)) } } // Gestion du logo de la société - } - else - { + } else { if ($db->lasterrno() == 'DB_ERROR_RECORD_ALREADY_EXISTS') // TODO Sometime errors on duplicate on profid and not on code, so we must manage this case { $duplicate_code_error = true; @@ -655,9 +642,7 @@ if (empty($reshook)) if (preg_match('/\?/', $backtopage)) $backtopage .= '&socid='.$object->id; // Old method header("Location: ".$backtopage); exit; - } - else - { + } else { $url = $_SERVER["PHP_SELF"]."?socid=".$object->id; // Old method if (($object->client == 1 || $object->client == 3) && empty($conf->global->SOCIETE_DISABLE_CUSTOMERS)) $url = DOL_URL_ROOT."/comm/card.php?socid=".$object->id; elseif ($object->fournisseur == 1) $url = DOL_URL_ROOT."/fourn/card.php?socid=".$object->id; @@ -665,9 +650,7 @@ if (empty($reshook)) header("Location: ".$url); exit; } - } - else - { + } else { $db->rollback(); $action = 'create'; } @@ -683,9 +666,7 @@ if (empty($reshook)) { header("Location: ".$backtopage); exit; - } - else - { + } else { header("Location: ".$_SERVER["PHP_SELF"]."?socid=".$socid); exit; } @@ -759,9 +740,7 @@ if (empty($reshook)) if (!$result > 0) { $errors[] = "ErrorFailedToSaveFile"; - } - else - { + } else { // Create thumbs $object->addThumbs($newfile); @@ -776,14 +755,10 @@ if (empty($reshook)) } } } - } - else - { + } else { $errors[] = "ErrorBadImageFormat"; } - } - else - { + } else { switch ($_FILES['photo']['error']) { case 1: //uploaded file exceeds the upload_max_filesize directive in php.ini @@ -817,22 +792,16 @@ if (empty($reshook)) { header("Location: ".$backtopage); exit; - } - else - { + } else { header("Location: ".$_SERVER["PHP_SELF"]."?socid=".$socid); exit; } - } - else - { + } else { $object->id = $socid; $action = "edit"; } } - } - else - { + } else { $action = ($action == 'add' ? 'create' : 'edit'); } } @@ -848,9 +817,7 @@ if (empty($reshook)) { header("Location: ".DOL_URL_ROOT."/societe/list.php?restore_lastsearch_values=1&delsoc=".urlencode($object->name)); exit; - } - else - { + } else { $langs->load("errors"); setEventMessages($object->error, $object->errors, 'errors'); $error++; @@ -919,9 +886,7 @@ if (is_object($objcanvas) && $objcanvas->displayCanvasExists($action)) // ----------------------------------------- $objcanvas->assign_values($action, $object->id, $object->ref); // Set value for templates $objcanvas->display_canvas($action); // Show template -} -else -{ +} else { // ----------------------------------------- // When used in standard mode // ----------------------------------------- @@ -989,8 +954,7 @@ else $object->code_client = GETPOST('customer_code', 'alpha'); $object->fournisseur = GETPOST('fournisseur') ?GETPOST('fournisseur') : $object->fournisseur; $object->code_fournisseur = GETPOST('supplier_code', 'alpha'); - } - else { + } else { setEventMessages($langs->trans('NewCustomerSupplierCodeProposed'), '', 'warnings'); } @@ -1061,9 +1025,7 @@ else if (!$result > 0) { $errors[] = "ErrorFailedToSaveFile"; - } - else - { + } else { // Create thumbs $object->addThumbs($newfile); } @@ -1204,9 +1166,7 @@ else if ($object->particulier || $private) { print ''.$langs->trans('ThirdPartyName').' / '.$langs->trans('LastName', 'name').''; - } - else - { + } else { print ''.$form->editfieldkey('ThirdPartyName', 'name', '', $object, 0).''; } print 'global->SOCIETE_USEPREFIX) ? ' colspan="3"' : '').'>'; @@ -1330,7 +1290,8 @@ else // Country print ''; @@ -1340,9 +1301,7 @@ else if (!empty($conf->global->MAIN_SHOW_REGION_IN_STATE_SELECT) && ($conf->global->MAIN_SHOW_REGION_IN_STATE_SELECT == 1 || $conf->global->MAIN_SHOW_REGION_IN_STATE_SELECT == 2)) { print ''; - print ''; + print 'browser->layout == 'phone' ? ' colspan="3"': '').'>'.img_picto('', 'object_phoning').' '; if ($conf->browser->layout == 'phone') print ''; print ''; - print ''; + print 'browser->layout == 'phone' ? ' colspan="3"': '').'>'.img_picto('', 'object_phoning_fax').' '; // Email / Web print ''; - print ''; + print ''; print ''; - print ''; + print ''; if (!empty($conf->socialnetworks->enabled)) { foreach ($socialnetworks as $key => $value) { @@ -1379,42 +1338,6 @@ else } } - // if (! empty($conf->socialnetworks->enabled)) - // { - // // Skype - // if (! empty($conf->global->SOCIALNETWORKS_SKYPE)) - // { - // print ''; - // print ''; - // } - // // Twitter - // if (! empty($conf->global->SOCIALNETWORKS_TWITTER)) - // { - // print ''; - // print ''; - // } - // // Facebook - // if (! empty($conf->global->SOCIALNETWORKS_FACEBOOK)) - // { - // print ''; - // print ''; - // } - // // LinkedIn - // if (! empty($conf->global->SOCIALNETWORKS_LINKEDIN)) - // { - // print ''; - // print ''; - // } - // } - // Prof ids $i = 1; $j = 0; $NBCOLS = ($conf->browser->layout == 'phone' ? 1 : 2); while ($i <= 6) @@ -1431,12 +1354,12 @@ else print $formcompany->get_input_id_prof($i, $key, $object->$key, $object->country_code); print ''; - if (($j % 2) == 1) print ''; + if (($j % $NBCOLS) == ($NBCOLS - 1)) print ''; $j++; } $i++; } - if ($j % 2 == 1) print ''; + if ($NBCOLS > 1 && ($j % 2 == 1)) print ''; // Vat is used print ''; @@ -1466,9 +1389,7 @@ else print "\n"; $s .= ''.$langs->trans("VATIntraCheck").''; $s = $form->textwithpicto($s, $langs->trans("VATIntraCheckDesc", $langs->transnoentitiesnoconv("VATIntraCheck")), 1); - } - else - { + } else { $s .= 'country_id).'" target="_blank">'.img_picto($langs->trans("VATIntraCheckableOnEUSite"), 'help').''; } } @@ -1482,17 +1403,17 @@ else { print ''; + if ($conf->browser->layout == 'phone') print ''; + print ''; - } - elseif ($mysoc->localtax1_assuj == "1") + } elseif ($mysoc->localtax1_assuj == "1") { print ''; - } - elseif ($mysoc->localtax2_assuj == "1") + } elseif ($mysoc->localtax2_assuj == "1") { print ''; if ($conf->browser->layout == 'phone') print ''; - print ''; @@ -1517,9 +1438,7 @@ else if ($object->country_id) { print $formcompany->select_juridicalstatus($object->forme_juridique_code, $object->country_code, '', 'forme_juridique_code'); - } - else - { + } else { print $countrynotdefined; } print ''; @@ -1611,17 +1530,14 @@ else { print '     '; print ''; - } - else - { + } else { print '     '; print ''; } print ''."\n"; print ''."\n"; - } - elseif ($action == 'edit') + } elseif ($action == 'edit') { //print load_fiche_titre($langs->trans("EditCompany")); @@ -1869,9 +1785,7 @@ else { print ''; print $object->prefix_comm; - } - else - { + } else { print ''; } print ''; @@ -1882,6 +1796,7 @@ else print ''; + if ($conf->browser->layout == 'phone') print ''; print '\n"; } - } - else - { + } else { $colspan = 9; if ($user->rights->produit->supprimer || $user->rights->service->supprimer) $colspan += 1; print ''; diff --git a/htdocs/societe/societecontact.php b/htdocs/societe/societecontact.php index 5ff86ff0064..1369f29a185 100644 --- a/htdocs/societe/societecontact.php +++ b/htdocs/societe/societecontact.php @@ -78,16 +78,12 @@ if ($action == 'addcontact' && $user->rights->societe->creer) { header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else - { + } else { if ($object->error == 'DB_ERROR_RECORD_ALREADY_EXISTS') { $langs->load("errors"); $mesg = '
    '.$langs->trans("ErrorThisContactIsAlreadyDefinedAsThisType").'
    '; - } - else - { + } else { $mesg = '
    '.$object->error.'
    '; } } @@ -99,9 +95,7 @@ elseif ($action == 'swapstatut' && $user->rights->societe->creer) if ($object->fetch($id)) { $result = $object->swapContactStatus(GETPOST('ligne')); - } - else - { + } else { dol_print_error($db); } } @@ -116,8 +110,7 @@ elseif ($action == 'deletecontact' && $user->rights->societe->creer) { header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else { + } else { dol_print_error($db); } } @@ -327,17 +320,13 @@ if ($id > 0 || !empty($ref)) print " ".img_warning($langs->trans("SubscriptionLate")); } print ''; - } - else - { + } else { print ''; @@ -350,9 +339,7 @@ if ($id > 0 || !empty($ref)) } } } - } - else - { + } else { // Contrat non trouve print "ErrorRecordNotFound"; } diff --git a/htdocs/societe/tpl/linesalesrepresentative.tpl.php b/htdocs/societe/tpl/linesalesrepresentative.tpl.php index 11b2d033b69..8ee338fba44 100644 --- a/htdocs/societe/tpl/linesalesrepresentative.tpl.php +++ b/htdocs/societe/tpl/linesalesrepresentative.tpl.php @@ -48,6 +48,5 @@ if ($nbofsalesrepresentative > 0) print $userstatic->getNomUrl(-1); print ' '; } -} -else print ''.$langs->trans("NoSalesRepresentativeAffected").''; +} else print ''.$langs->trans("NoSalesRepresentativeAffected").''; print ''; diff --git a/htdocs/societe/website.php b/htdocs/societe/website.php index 7b3bf774a68..e7ebae374e2 100644 --- a/htdocs/societe/website.php +++ b/htdocs/societe/website.php @@ -449,6 +449,8 @@ while ($i < min($num, $limit)) // Store properties in $object $objectwebsiteaccount->id = $obj->rowid; + $objectwebsiteaccount->login = $obj->login; + $objectwebsiteaccount->ref = $obj->login; foreach ($objectwebsiteaccount->fields as $key => $val) { if (property_exists($obj, $key)) $object->$key = $obj->$key; @@ -481,7 +483,7 @@ while ($i < min($num, $limit)) // 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, 'totalarray'=>&$totalarray); $reshook = $hookmanager->executeHooks('printFieldListValue', $parameters, $objectwebsiteaccount); // Note that $action and $object may have been modified by hook print $hookmanager->resPrint; // Action column diff --git a/htdocs/stripe/admin/stripe.php b/htdocs/stripe/admin/stripe.php index a8bca51dda3..728c076d1c8 100644 --- a/htdocs/stripe/admin/stripe.php +++ b/htdocs/stripe/admin/stripe.php @@ -136,9 +136,7 @@ if ($action == "setlive") $res = dolibarr_set_const($db, "STRIPE_LIVE", $liveenable, 'yesno', 0, '', $conf->entity); if ($res > 0) { setEventMessages($langs->trans("SetupSaved"), null, 'mesgs'); - } - else - { + } else { setEventMessages($langs->trans("Error"), null, 'errors'); } } @@ -237,16 +235,12 @@ if (empty($conf->stripeconnect->enabled)) { print ''; print img_picto($langs->trans("Activated"), 'switch_on'); - } - else - { + } else { print ''; print img_picto($langs->trans("Disabled"), 'switch_off'); } //print $endpoint; - } - else - { + } else { print img_picto($langs->trans("inactive"), 'statut5'); } } @@ -310,23 +304,17 @@ if (empty($conf->stripeconnect->enabled)) { print ''; print img_picto($langs->trans("Activated"), 'switch_on'); - } - else - { + } else { print ''; print img_picto($langs->trans("Disabled"), 'switch_off'); } //print $endpoint; - } - else - { + } else { print img_picto($langs->trans("inactive"), 'statut5'); } } print ''; -} -else -{ +} else { print ''; print ''; } diff --git a/htdocs/stripe/charge.php b/htdocs/stripe/charge.php index f765a2a3ec1..5672176168a 100644 --- a/htdocs/stripe/charge.php +++ b/htdocs/stripe/charge.php @@ -36,13 +36,13 @@ $socid = GETPOST("socid", "int"); if ($user->socid) $socid = $user->socid; //$result = restrictedArea($user, 'salaries', '', '', ''); -$limit = GETPOST('limit', 'int') ?GETPOST('limit', 'int') : $conf->liste_limit; +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $rowid = GETPOST("rowid", 'alpha'); $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; @@ -65,9 +65,7 @@ if (!empty($conf->stripe->enabled) && (empty($conf->global->STRIPE_LIVE) || GETP $service = 'StripeTest'; $servicestatus = '0'; dol_htmloutput_mesg($langs->trans('YouAreCurrentlyInSandboxMode', 'Stripe'), '', 'warning'); -} -else -{ +} else { $service = 'StripeLive'; $servicestatus = '1'; } @@ -85,9 +83,7 @@ if (!$rowid) if ($stripeacc) { $list = \Stripe\Charge::all($option, array("stripe_account" => $stripeacc)); - } - else - { + } else { $list = \Stripe\Charge::all($option); } @@ -179,21 +175,16 @@ if (!$rowid) if (!empty($tmparray['CUS']) && $tmparray['CUS'] > 0) { $societestatic->fetch($tmparray['CUS']); - } - elseif (!empty($charge->metadata->dol_thirdparty_id) && $charge->metadata->dol_thirdparty_id > 0) + } elseif (!empty($charge->metadata->dol_thirdparty_id) && $charge->metadata->dol_thirdparty_id > 0) { $societestatic->fetch($charge->metadata->dol_thirdparty_id); - } - else - { + } else { $societestatic->id = 0; } if (!empty($tmparray['MEM']) && $tmparray['MEM'] > 0) { $memberstatic->fetch($tmparray['MEM']); - } - else - { + } else { $memberstatic->id = 0; } @@ -231,8 +222,7 @@ if (!$rowid) if ($societestatic->id > 0) { print $societestatic->getNomUrl(1); - } - elseif ($memberstatic->id > 0) + } elseif ($memberstatic->id > 0) { print $memberstatic->getNomUrl(1); } diff --git a/htdocs/stripe/class/actions_stripe.class.php b/htdocs/stripe/class/actions_stripe.class.php index 33b19384085..2fafe09a693 100644 --- a/htdocs/stripe/class/actions_stripe.class.php +++ b/htdocs/stripe/class/actions_stripe.class.php @@ -75,9 +75,7 @@ class ActionsStripeconnect { $service = 'StripeTest'; dol_htmloutput_mesg($langs->trans('YouAreCurrentlyInSandboxMode', 'Stripe'), '', 'warning'); - } - else - { + } else { $service = 'StripeLive'; } @@ -104,13 +102,11 @@ class ActionsStripeconnect if ($stripe->getStripeAccount($service) && $object->client != 0) { $customer = $stripe->customerStripe($object, $stripe->getStripeAccount($service)); $this->resprints .= $customer->id; - } - else { + } else { $this->resprints .= $langs->trans("NoStripe"); } $this->resprints .= ''; - } - elseif (is_object($object) && $object->element == 'member') { + } elseif (is_object($object) && $object->element == 'member') { $this->resprints .= '
    '; -if ($mesg) { print $mesg; } -else { +if ($mesg) { print $mesg; } else { print $px1->show(); print "
    \n"; print $px2->show(); diff --git a/htdocs/societe/admin/societe.php b/htdocs/societe/admin/societe.php index fb6663be951..21ee679292a 100644 --- a/htdocs/societe/admin/societe.php +++ b/htdocs/societe/admin/societe.php @@ -53,9 +53,7 @@ if ($action == 'setcodeclient') { header("Location: ".$_SERVER["PHP_SELF"]); exit; - } - else - { + } else { dol_print_error($db); } } @@ -66,9 +64,7 @@ if ($action == 'setcodecompta') { header("Location: ".$_SERVER["PHP_SELF"]); exit; - } - else - { + } else { dol_print_error($db); } } @@ -83,9 +79,7 @@ if ($action == 'updateoptions') if (!$error) { setEventMessages($langs->trans("SetupSaved"), null, 'mesgs'); - } - else - { + } else { setEventMessages($langs->trans("Error"), null, 'errors'); } } @@ -98,9 +92,7 @@ if ($action == 'updateoptions') if (!$error) { setEventMessages($langs->trans("SetupSaved"), null, 'mesgs'); - } - else - { + } else { setEventMessages($langs->trans("Error"), null, 'errors'); } } @@ -113,9 +105,7 @@ if ($action == 'updateoptions') if (!$error) { setEventMessages($langs->trans("SetupSaved"), null, 'mesgs'); - } - else - { + } else { setEventMessages($langs->trans("Error"), null, 'errors'); } } @@ -177,9 +167,7 @@ if ($action == 'setdoc') if ($result1 && $result2) { $db->commit(); - } - else - { + } else { $db->rollback(); } } @@ -192,9 +180,7 @@ if ($action == "setaddrefinlist") { if (!$error) { setEventMessages($langs->trans("SetupSaved"), null, 'mesgs'); - } - else - { + } else { setEventMessages($langs->trans("Error"), null, 'errors'); } } @@ -207,9 +193,7 @@ if ($action == "setaddadressinlist") { if (!$error) { setEventMessages($langs->trans("SetupSaved"), null, 'mesgs'); - } - else - { + } else { setEventMessages($langs->trans("Error"), null, 'errors'); } } @@ -222,9 +206,7 @@ if ($action == "setaskforshippingmet") { if (!$error) { setEventMessages($langs->trans("SetupSaved"), null, 'mesgs'); - } - else - { + } else { setEventMessages($langs->trans("Error"), null, 'errors'); } } @@ -237,9 +219,7 @@ if ($action == "setdisableprospectcustomer") { if (!$error) { setEventMessages($langs->trans("SetupSaved"), null, 'mesgs'); - } - else - { + } else { setEventMessages($langs->trans("Error"), null, 'errors'); } } @@ -254,9 +234,7 @@ if ($action == 'setprofid') { //header("Location: ".$_SERVER["PHP_SELF"]); //exit; - } - else - { + } else { dol_print_error($db); } } @@ -271,9 +249,7 @@ if ($action == 'setprofidmandatory') { //header("Location: ".$_SERVER["PHP_SELF"]); //exit; - } - else - { + } else { dol_print_error($db); } } @@ -288,9 +264,7 @@ if ($action == 'setprofidinvoicemandatory') { //header("Location: ".$_SERVER["PHP_SELF"]); //exit; - } - else - { + } else { dol_print_error($db); } } @@ -304,9 +278,7 @@ if ($action == 'sethideinactivethirdparty') { header("Location: ".$_SERVER["PHP_SELF"]); exit; - } - else - { + } else { dol_print_error($db); } } @@ -317,9 +289,7 @@ if ($action == 'setonsearchandlistgooncustomerorsuppliercard') { if (!$error) { setEventMessages($langs->trans("SetupSaved"), null, 'mesgs'); - } - else - { + } else { setEventMessages($langs->trans("Error"), null, 'errors'); } } @@ -378,8 +348,7 @@ foreach ($dirsociete as $dirroot) try { dol_include_once($dirroot.$file.'.php'); - } - catch (Exception $e) + } catch (Exception $e) { dol_syslog($e->getMessage(), LOG_ERR); } @@ -411,9 +380,7 @@ foreach ($arrayofmodules as $file => $modCodeTiers) print '
    '."\n"; print img_picto($langs->trans("Activated"), 'switch_on'); print "'; if (!$disabled) print ''; @@ -466,8 +433,7 @@ foreach ($dirsociete as $dirroot) try { dol_include_once($dirroot.$file.'.php'); - } - catch (Exception $e) + } catch (Exception $e) { dol_syslog($e->getMessage(), LOG_ERR); } @@ -497,9 +463,7 @@ foreach ($arrayofmodules as $file => $modCodeCompta) print ''; print img_picto($langs->trans("Activated"), 'switch_on'); print ''; print img_picto($langs->trans("Disabled"), 'switch_off'); print '\n"; print img_picto(dol_escape_htmltag($langs->trans("ErrorModuleRequirePHPVersion", join('.', $module->phpmin))), 'switch_off'); print "\n"; print 'scandir.'&label='.urlencode($module->name).'">'.img_picto($langs->trans("Disabled"), 'switch_off').''; print "'; print img_picto($langs->trans("Activated"), 'switch_on'); print ''; print img_picto($langs->trans("Disabled"), 'switch_off'); print ''; print img_picto($langs->trans("Activated"), 'switch_on'); print ''; print img_picto($langs->trans("Disabled"), 'switch_off'); print ''; print img_picto($langs->trans("Activated"), 'switch_on'); print ''; print img_picto($langs->trans("Disabled"), 'switch_off'); print ''; print $langs->trans("NotAvailableWhenAjaxDisabled"); print "'; $arrval = array('0'=>$langs->trans("No"), '1'=>$langs->trans("Yes").' ('.$langs->trans("NumberOfKeyToSearch", 1).')', @@ -807,9 +754,7 @@ if (!$conf->use_javascript_ajax) print ''; print $langs->trans("NotAvailableWhenAjaxDisabled"); print "'; $arrval = array('0'=>$langs->trans("No"), '1'=>$langs->trans("Yes").' ('.$langs->trans("NumberOfKeyToSearch", 1).')', @@ -833,9 +778,7 @@ if (!empty($conf->global->SOCIETE_ADD_REF_IN_LIST)) { print ''; print img_picto($langs->trans("Activated"), 'switch_on'); -} -else -{ +} else { print ''; print img_picto($langs->trans("Disabled"), 'switch_off'); } @@ -850,9 +793,7 @@ if (!empty($conf->global->COMPANY_SHOW_ADDRESS_SELECTLIST)) { print ''; print img_picto($langs->trans("Activated"), 'switch_on'); -} -else -{ +} else { print ''; print img_picto($langs->trans("Disabled"), 'switch_off'); } @@ -869,9 +810,7 @@ if (!empty($conf->global->SOCIETE_ASK_FOR_SHIPPING_METHOD)) { print ''; print img_picto($langs->trans("Activated"), 'switch_on'); -} -else -{ +} else { print ''; print img_picto($langs->trans("Disabled"), 'switch_off'); } @@ -887,9 +826,7 @@ if (!empty($conf->global->SOCIETE_DISABLE_PROSPECTSCUSTOMERS)) { print ''; print img_picto($langs->trans("Activated"), 'switch_on'); -} -else -{ +} else { print ''; print img_picto($langs->trans("Disabled"), 'switch_off'); } diff --git a/htdocs/societe/agenda.php b/htdocs/societe/agenda.php index dba483c52eb..61d473f5c43 100644 --- a/htdocs/societe/agenda.php +++ b/htdocs/societe/agenda.php @@ -38,9 +38,7 @@ if (GETPOST('actioncode', 'array')) { $actioncode = GETPOST('actioncode', 'array', 3); if (!count($actioncode)) $actioncode = '0'; -} -else -{ +} else { $actioncode = GETPOST("actioncode", "alpha", 3) ?GETPOST("actioncode", "alpha", 3) : (GETPOST("actioncode") == '0' ? '0' : (empty($conf->global->AGENDA_DEFAULT_FILTER_TYPE_FOR_OBJECT) ? '' : $conf->global->AGENDA_DEFAULT_FILTER_TYPE_FOR_OBJECT)); } $search_agenda_label = GETPOST('search_agenda_label'); diff --git a/htdocs/societe/ajax/company.php b/htdocs/societe/ajax/company.php index 4fe737ca31c..dc2d60df5e6 100644 --- a/htdocs/societe/ajax/company.php +++ b/htdocs/societe/ajax/company.php @@ -67,9 +67,7 @@ if (!empty($action) && $action == 'fetch' && !empty($id)) } echo json_encode($outjson); -} -else -{ +} else { require_once DOL_DOCUMENT_ROOT.'/core/class/html.form.class.php'; $langs->load("companies"); diff --git a/htdocs/societe/ajaxcompanies.php b/htdocs/societe/ajaxcompanies.php index dcf0b1a4483..b98a5f75d5b 100644 --- a/htdocs/societe/ajaxcompanies.php +++ b/htdocs/societe/ajaxcompanies.php @@ -71,9 +71,7 @@ if (GETPOST('newcompany') || GETPOST('socid', 'int') || GETPOST('id_fourn')) $sql .= "nom LIKE '".$db->escape($socid)."%'"; $sql .= " OR code_client LIKE '".$db->escape($socid)."%'"; $sql .= " OR code_fournisseur LIKE '".$db->escape($socid)."%'"; - } - else - { + } else { $sql .= "nom LIKE '%".$db->escape($socid)."%'"; $sql .= " OR code_client LIKE '%".$db->escape($socid)."%'"; $sql .= " OR code_fournisseur LIKE '%".$db->escape($socid)."%'"; @@ -100,13 +98,9 @@ if (GETPOST('newcompany') || GETPOST('socid', 'int') || GETPOST('id_fourn')) } echo json_encode($return_arr); - } - else - { + } else { echo json_encode(array('nom'=>'Error', 'label'=>'Error', 'key'=>'Error', 'value'=>'Error')); } -} -else -{ +} else { echo json_encode(array('nom'=>'ErrorBadParameter', 'label'=>'ErrorBadParameter', 'key'=>'ErrorBadParameter', 'value'=>'ErrorBadParameter')); } diff --git a/htdocs/societe/canvas/actions_card_common.class.php b/htdocs/societe/canvas/actions_card_common.class.php index 70ac0577cb9..fa650a4e1fd 100644 --- a/htdocs/societe/canvas/actions_card_common.class.php +++ b/htdocs/societe/canvas/actions_card_common.class.php @@ -244,23 +244,19 @@ abstract class ActionsCardCommon $this->tpl['localtax'] .= ''.$langs->trans("LocalTax2IsUsedES").''; $this->tpl['localtax'] .= $form->selectyesno('localtax2assuj_value', $this->object->localtax1_assuj, 1); $this->tpl['localtax'] .= '
    '.$langs->trans("LocalTax1IsUsedES").''; $this->tpl['localtax'] .= $form->selectyesno('localtax1assuj_value', $this->object->localtax1_assuj, 1); $this->tpl['localtax'] .= '
    '.$langs->trans("LocalTax2IsUsedES").''; $this->tpl['localtax'] .= $form->selectyesno('localtax2assuj_value', $this->object->localtax1_assuj, 1); $this->tpl['localtax'] .= '
    '.yn($this->object->localtax1_assuj).''.$langs->trans("LocalTax2IsUsedES").''.yn($this->object->localtax2_assuj).'
    '.$langs->trans("LocalTax1IsUsedES").''.yn($this->object->localtax1_assuj).'
    '.$langs->trans("LocalTax2IsUsedES").''.yn($this->object->localtax2_assuj).'
    '.$form->editfieldkey('Country', 'selectcountry_id', '', $object, 0).''; - print $form->select_country((GETPOST('country_id') != '' ?GETPOST('country_id') : $object->country_id)); + print img_picto('', 'globe-americas', 'class="paddingrightonly"'); + print $form->select_country((GETPOST('country_id') != '' ? GETPOST('country_id') : $object->country_id), 'country_id', '', 0, 'minwidth300 widthcentpercentminusx'); if ($user->admin) print info_admin($langs->trans("YouCanChangeValuesForThisListFromDictionarySetup"), 1); print '
    '.$form->editfieldkey('Region-State', 'state_id', '', $object, 0).''; - } - else - { + } else { print '
    '.$form->editfieldkey('State', 'state_id', '', $object, 0).''; } @@ -1353,16 +1312,16 @@ else // Phone / Fax print '
    '.$form->editfieldkey('Phone', 'phone', '', $object, 0).''.img_picto('', 'object_phoning').'
    '.$form->editfieldkey('Fax', 'fax', '', $object, 0).''.img_picto('', 'object_phoning_fax').'
    '.$form->editfieldkey('EMail', 'email', '', $object, 0, 'string', '', $conf->global->SOCIETE_EMAIL_MANDATORY).''.img_picto('', 'object_email').'
    '.img_picto('', 'object_email').'
    '.$form->editfieldkey('Web', 'url', '', $object, 0).''.img_picto('', 'globe').'
    '.img_picto('', 'globe').'
    '.$form->editfieldkey('Skype', 'skype', '', $object, 0).''; - // print 'skype).'">'; - // print '
    '.$form->editfieldkey('Twitter', 'twitter', '', $object, 0).''; - // print 'twitter).'">'; - // print '
    '.$form->editfieldkey('Facebook', 'facebook', '', $object, 0).''; - // print 'facebook).'">'; - // print '
    '.$form->editfieldkey('LinkedIn', 'linkedin', '', $object, 0).''; - // print 'linkedin).'">'; - // print '
    '.$form->editfieldkey('VATIsUsed', 'assujtva_value', '', $object, 0).'
    '.$langs->transcountry("LocalTax1IsUsed", $mysoc->country_code).''; print $form->selectyesno('localtax1assuj_value', (isset($conf->global->THIRDPARTY_DEFAULT_USELOCALTAX1) ? $conf->global->THIRDPARTY_DEFAULT_USELOCALTAX1 : 0), 1); - print ''.$langs->transcountry("LocalTax2IsUsed", $mysoc->country_code).''; + print '
    '.$langs->transcountry("LocalTax2IsUsed", $mysoc->country_code).''; print $form->selectyesno('localtax2assuj_value', (isset($conf->global->THIRDPARTY_DEFAULT_USELOCALTAX2) ? $conf->global->THIRDPARTY_DEFAULT_USELOCALTAX2 : 0), 1); print '
    '.$langs->transcountry("LocalTax1IsUsed", $mysoc->country_code).''; print $form->selectyesno('localtax1assuj_value', (isset($conf->global->THIRDPARTY_DEFAULT_USELOCALTAX1) ? $conf->global->THIRDPARTY_DEFAULT_USELOCALTAX1 : 0), 1); print '
    '.$langs->transcountry("LocalTax2IsUsed", $mysoc->country_code).''; print $form->selectyesno('localtax2assuj_value', (isset($conf->global->THIRDPARTY_DEFAULT_USELOCALTAX2) ? $conf->global->THIRDPARTY_DEFAULT_USELOCALTAX2 : 0), 1); @@ -1500,13 +1421,13 @@ else } // Type - Size - print '
    '.$form->editfieldkey('ThirdPartyType', 'typent_id', '', $object, 0).''."\n"; + print '
    '.$form->editfieldkey('ThirdPartyType', 'typent_id', '', $object, 0).'browser->layout == 'phone' ? ' colspan="3"': '').'>'."\n"; $sortparam = (empty($conf->global->SOCIETE_SORT_ON_TYPEENT) ? 'ASC' : $conf->global->SOCIETE_SORT_ON_TYPEENT); // NONE means we keep sort of original array, so we sort on position. ASC, means next function will sort on label. print $form->selectarray("typent_id", $formcompany->typent_array(0), $object->typent_id, 0, 0, 0, '', 0, 0, 0, $sortparam); if ($user->admin) print ' '.info_admin($langs->trans("YouCanChangeValuesForThisListFromDictionarySetup"), 1); print '
    '.$form->editfieldkey('Staff', 'effectif_id', '', $object, 0).''; + print ''.$form->editfieldkey('Staff', 'effectif_id', '', $object, 0).'browser->layout == 'phone' ? ' colspan="3"': '').'>'; print $form->selectarray("effectif_id", $formcompany->effectif_array(0), $object->effectif_id); if ($user->admin) print ' '.info_admin($langs->trans("YouCanChangeValuesForThisListFromDictionarySetup"), 1); print '
    '; print $formcompany->selectProspectCustomerType($object->client); print '
    '.$form->editfieldkey('CustomerCode', 'customer_code', '', $object, 0).''; print ''; - print ''; + print ''; + if ($conf->browser->layout == 'phone') print ''; print ''; + print ''; // Default print ''; @@ -1547,13 +1488,11 @@ if ($socid && $action != 'edit' && $action != 'create' && $action != 'editcard' print ''; } print "
    '; @@ -1891,13 +1806,10 @@ else if (empty($tmpcode) && !empty($object->oldcopy->code_client)) $tmpcode = $object->oldcopy->code_client; // When there is an error to update a thirdparty, the number for supplier and customer code is kept to old value. if (empty($tmpcode) && !empty($modCodeClient->code_auto)) $tmpcode = $modCodeClient->getNextValue($object, 0); print ''; - } - elseif ($object->codeclient_modifiable()) + } elseif ($object->codeclient_modifiable()) { print ''; - } - else - { + } else { print $object->code_client; print ''; } @@ -1913,15 +1825,18 @@ else || (!empty($conf->supplier_proposal->enabled) && !empty($user->rights->supplier_proposal->lire))) { print '
    '.$form->editfieldkey('Supplier', 'fournisseur', '', $object, 0, 'string', '', 1).''; + print ''.$form->editfieldkey('Supplier', 'fournisseur', '', $object, 0, 'string', '', 1).''; print $form->selectyesno("fournisseur", $object->fournisseur, 1); print '
    '; if (!empty($conf->fournisseur->enabled) && !empty($user->rights->fournisseur->lire)) { print $form->editfieldkey('SupplierCode', 'supplier_code', '', $object, 0); } - print ''; + print ''; print ''; + if ($conf->browser->layout == 'phone') print ''; + print ''; // Country print ''; @@ -1987,9 +1902,7 @@ else if (!empty($conf->global->MAIN_SHOW_REGION_IN_STATE_SELECT) && ($conf->global->MAIN_SHOW_REGION_IN_STATE_SELECT == 1 || $conf->global->MAIN_SHOW_REGION_IN_STATE_SELECT == 2)) { print ''; - print ''; + print ''; + if ($conf->browser->layout == 'phone') print ''; print ''; - print ''; + print ''; // EMail / Web print ''; - print ''; + print ''; print ''; - print ''; + print ''; if (!empty($conf->socialnetworks->enabled)) { foreach ($socialnetworks as $key => $value) { @@ -2023,36 +1937,9 @@ else } } } - // if (! empty($conf->socialnetworks->enabled)) - // { - // // Skype - // if (! empty($conf->global->SOCIALNETWORKS_SKYPE)) - // { - // print ''; - // print ''; - // } - // // Twitter - // if (! empty($conf->global->SOCIALNETWORKS_TWITTER)) - // { - // print ''; - // print ''; - // } - // // Facebook - // if (! empty($conf->global->SOCIALNETWORKS_FACEBOOK)) - // { - // print ''; - // print ''; - // } - // // LinkedIn - // if (! empty($conf->global->SOCIALNETWORKS_LINKEDIN)) - // { - // print ''; - // print ''; - // } - // } // Prof ids - $i = 1; $j = 0; + $i = 1; $j = 0; $NBCOLS = ($conf->browser->layout == 'phone' ? 1 : 2); while ($i <= 6) { $idprof = $langs->transcountry('ProfId'.$i, $object->country_code); @@ -2060,18 +1947,18 @@ else { $key = 'idprof'.$i; - if (($j % 2) == 0) print ''; + if (($j % $NBCOLS) == 0) print ''; $idprof_mandatory = 'SOCIETE_IDPROF'.($i).'_MANDATORY'; print ''; - if (($j % 2) == 1) print ''; + if (($j % $NBCOLS) == ($NBCOLS - 1)) print ''; $j++; } $i++; } - if ($j % 2 == 1) print ''; + if ($NBCOLS > 0 && $j % 2 == 1) print ''; // VAT is used print ''; - + if ($conf->browser->layout == 'phone') print ''; print ''; - } - elseif ($mysoc->localtax1_assuj == "1" && $mysoc->localtax2_assuj != "1") + } elseif ($mysoc->localtax1_assuj == "1" && $mysoc->localtax2_assuj != "1") { print ''; - } - elseif ($mysoc->localtax2_assuj == "1" && $mysoc->localtax1_assuj != "1") + } elseif ($mysoc->localtax2_assuj == "1" && $mysoc->localtax1_assuj != "1") { print ''; + if ($conf->browser->layout == 'phone') print ''; print ''; - } - else - { + } else { print ''; } print ''; @@ -2478,8 +2358,7 @@ else } print ''; } - } - elseif ($mysoc->localtax1_assuj == "1" && $mysoc->localtax2_assuj != "1") + } elseif ($mysoc->localtax1_assuj == "1" && $mysoc->localtax2_assuj != "1") { print ''; } - } - elseif ($mysoc->localtax2_assuj == "1" && $mysoc->localtax1_assuj != "1") + } elseif ($mysoc->localtax2_assuj == "1" && $mysoc->localtax1_assuj != "1") { print ''; @@ -2636,9 +2510,7 @@ else if ($action != 'editincoterm') { print $form->textwithpicto($object->display_incoterms(), $object->label_incoterms, 1); - } - else - { + } else { print $form->select_incoterms((!empty($object->fk_incoterms) ? $object->fk_incoterms : ''), (!empty($object->location_incoterms) ? $object->location_incoterms : ''), $_SERVER['PHP_SELF'].'?socid='.$object->id); } print ''; @@ -2671,9 +2543,7 @@ else if ($action == 'editparentcompany') { $form->form_thirdparty($_SERVER['PHP_SELF'].'?socid='.$object->id, $object->parent, 'editparentcompany', 's.rowid <> '.$object->id, 1); - } - else - { + } else { $form->form_thirdparty($_SERVER['PHP_SELF'].'?socid='.$object->id, $object->parent, 'none', 's.rowid <> '.$object->id, 1); } print ''; @@ -2695,9 +2565,7 @@ else { $adh->ref = $adh->getFullName($langs); print $adh->getNomUrl(1); - } - else - { + } else { print ''.$langs->trans("ThirdpartyNotLinkedToMember").''; } print ''; @@ -2746,9 +2614,7 @@ else { $langs->load("mails"); print ''.$langs->trans('SendMail').''; - } - else - { + } else { $langs->load("mails"); print ''.$langs->trans('SendMail').''; } @@ -2779,9 +2645,7 @@ else if ($conf->use_javascript_ajax && empty($conf->dol_use_jmobile)) // We can't use preloaded confirm form with jmobile { print ''.$langs->trans('Delete').''."\n"; - } - else - { + } else { print ''.$langs->trans('Delete').''."\n"; } } @@ -2824,7 +2688,7 @@ else $MAXEVENT = 10; - $morehtmlright = dolGetButtonTitle($langs->trans('SeeAll'), '', 'fa fa-list-alt', DOL_URL_ROOT.'/societe/agenda.php?socid='.$object->id); + $morehtmlright = dolGetButtonTitle($langs->trans('SeeAll'), '', 'fa fa-list-alt imgforviewmode', DOL_URL_ROOT.'/societe/agenda.php?socid='.$object->id); // List of actions on element include_once DOL_DOCUMENT_ROOT.'/core/class/html.formactions.class.php'; diff --git a/htdocs/societe/checkvat/checkVatPopup.php b/htdocs/societe/checkvat/checkVatPopup.php index 8d004fa4c79..725cab96065 100644 --- a/htdocs/societe/checkvat/checkVatPopup.php +++ b/htdocs/societe/checkvat/checkVatPopup.php @@ -28,13 +28,12 @@ require_once NUSOAP_PATH.'/nusoap.php'; $langs->load("companies"); //http://ec.europa.eu/taxation_customs/vies/checkVatService.wsdl -$WS_DOL_URL = 'http://ec.europa.eu/taxation_customs/vies/services/checkVatService'; +$WS_DOL_URL = 'https://ec.europa.eu/taxation_customs/vies/services/checkVatService'; //$WS_DOL_URL_WSDL=$WS_DOL_URL.'?wsdl'; -$WS_DOL_URL_WSDL = 'http://ec.europa.eu/taxation_customs/vies/checkVatService.wsdl'; +$WS_DOL_URL_WSDL = 'https://ec.europa.eu/taxation_customs/vies/checkVatService.wsdl'; $WS_METHOD = 'checkVat'; - $conf->dol_hide_topmenu = 1; $conf->dol_hide_leftmenu = 1; @@ -50,9 +49,7 @@ if (!$vatNumber) { print '
    '; print ''.$langs->transnoentities("ErrorFieldRequired", $langs->trans("VATIntraShort")).'
    '; -} -else -{ +} else { $vatNumber = preg_replace('/\^\w/', '', $vatNumber); $vatNumber = str_replace(array(' ', '.'), '', $vatNumber); $countryCode = substr($vatNumber, 0, 2); @@ -103,18 +100,15 @@ else { print ''.$langs->trans("ErrorServiceUnavailableTryLater").'
    '; $messagetoshow = $soapclient->response; - } - elseif (preg_match('/TIMEOUT/i', $result['faultstring'])) + } elseif (preg_match('/TIMEOUT/i', $result['faultstring'])) { print ''.$langs->trans("ErrorServiceUnavailableTryLater").'
    '; $messagetoshow = $soapclient->response; - } - elseif (preg_match('/SERVER_BUSY/i', $result['faultstring'])) + } elseif (preg_match('/SERVER_BUSY/i', $result['faultstring'])) { print ''.$langs->trans("ErrorServiceUnavailableTryLater").'
    '; $messagetoshow = $soapclient->response; - } - elseif ($result['faultstring']) + } elseif ($result['faultstring']) { print ''.$langs->trans("Error").'
    '; $messagetoshow = $result['faultstring']; @@ -127,9 +121,7 @@ else print $langs->trans("VATIntraSyntaxIsValid").': '.$langs->trans("No").' (Might be a non europeen VAT)
    '; print $langs->trans("ValueIsValid").': '.$langs->trans("No").' (Might be a non europeen VAT)
    '; //$messagetoshow=$soapclient->response; - } - else - { + } else { // Syntaxe ok if ($result['requestDate']) print $langs->trans("Date").': '.$result['requestDate'].'
    '; print $langs->trans("VATIntraSyntaxIsValid").': '.$langs->trans("Yes").'
    '; @@ -137,18 +129,14 @@ else if (preg_match('/MS_UNAVAILABLE/i', $result['faultstring'])) { print ''.$langs->trans("ErrorVATCheckMS_UNAVAILABLE", $countryCode).'
    '; - } - else - { + } else { if (!empty($result['valid']) && ($result['valid'] == 1 || $result['valid'] == 'true')) { print ''.$langs->trans("Yes").''; print '
    '; print $langs->trans("Name").': '.$result['name'].'
    '; print $langs->trans("Address").': '.$result['address'].'
    '; - } - else - { + } else { print ''.$langs->trans("No").''; print '
    '."\n"; } diff --git a/htdocs/societe/class/api_contacts.class.php b/htdocs/societe/class/api_contacts.class.php index bfaed41f21b..37d9239265f 100644 --- a/htdocs/societe/class/api_contacts.class.php +++ b/htdocs/societe/class/api_contacts.class.php @@ -208,8 +208,7 @@ class Contacts extends DolibarrApi $i++; } - } - else { + } else { throw new RestException(503, 'Error when retrieve contacts : '.$sql); } if (!count($obj_ret)) diff --git a/htdocs/societe/class/api_thirdparties.class.php b/htdocs/societe/class/api_thirdparties.class.php index 1100432c854..ca3e4385837 100644 --- a/htdocs/societe/class/api_thirdparties.class.php +++ b/htdocs/societe/class/api_thirdparties.class.php @@ -129,7 +129,7 @@ class Thirdparties extends DolibarrApi $sql .= " FROM ".MAIN_DB_PREFIX."societe as t"; if ($category > 0) { if ($mode != 4) $sql .= ", ".MAIN_DB_PREFIX."categorie_societe as c"; - if (!in_array($mode, array(1,2,3))) $sql .= ", ".MAIN_DB_PREFIX."categorie_fournisseur as cc"; + if (!in_array($mode, array(1, 2, 3))) $sql .= ", ".MAIN_DB_PREFIX."categorie_fournisseur as cc"; } if ((!DolibarrApiAccess::$user->rights->societe->client->voir && !$socids) || $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 $sql .= ", ".MAIN_DB_PREFIX."c_stcomm as st"; @@ -143,9 +143,7 @@ class Thirdparties extends DolibarrApi // Select thirdparties of given category if ($category > 0) { - if (!empty($mode) && $mode != 4) { $sql .= " AND c.fk_categorie = ".$db->escape($category)." AND c.fk_soc = t.rowid"; } - elseif (!empty($mode) && $mode == 4) { $sql .= " AND cc.fk_categorie = ".$db->escape($category)." AND cc.fk_soc = t.rowid"; } - else { $sql .= " AND ((c.fk_categorie = ".$db->escape($category)." AND c.fk_soc = t.rowid) OR (cc.fk_categorie = ".$db->escape($category)." AND cc.fk_soc = t.rowid))"; } + if (!empty($mode) && $mode != 4) { $sql .= " AND c.fk_categorie = ".$db->escape($category)." AND c.fk_soc = t.rowid"; } elseif (!empty($mode) && $mode == 4) { $sql .= " AND cc.fk_categorie = ".$db->escape($category)." AND cc.fk_soc = t.rowid"; } else { $sql .= " AND ((c.fk_categorie = ".$db->escape($category)." AND c.fk_soc = t.rowid) OR (cc.fk_categorie = ".$db->escape($category)." AND cc.fk_soc = t.rowid))"; } } if ((!DolibarrApiAccess::$user->rights->societe->client->voir && !$socids) || $search_sale > 0) $sql .= " AND t.rowid = sc.fk_soc"; @@ -195,8 +193,7 @@ class Thirdparties extends DolibarrApi } $i++; } - } - else { + } else { throw new RestException(503, 'Error when retrieve thirdparties : '.$db->lasterror()); } if (!count($obj_ret)) { @@ -466,9 +463,7 @@ class Thirdparties extends DolibarrApi $db->rollback(); throw new RestException(500, 'Error failed to merged thirdparty '.$this->companytoremove->id.' into '.$id.'. Enable and read log file for more information.'); - } - else - { + } else { $db->commit(); } @@ -1105,8 +1100,7 @@ class Thirdparties extends DolibarrApi } $i++; } - } - else { + } else { throw new RestException(404, 'Account not found'); } @@ -1312,9 +1306,7 @@ class Thirdparties extends DolibarrApi } $i++; } - } - else - { + } else { throw new RestException(404, 'Bank account not found'); } @@ -1330,9 +1322,7 @@ class Thirdparties extends DolibarrApi if ($result > 0) { return array("success" => $result); - } - else - { + } else { throw new RestException(500); } } diff --git a/htdocs/societe/class/client.class.php b/htdocs/societe/class/client.class.php index 06c56b027cd..3b289547f8d 100644 --- a/htdocs/societe/class/client.class.php +++ b/htdocs/societe/class/client.class.php @@ -83,9 +83,7 @@ class Client extends Societe } $this->db->free($resql); return 1; - } - else - { + } else { dol_print_error($this->db); $this->error = $this->db->lasterror(); return -1; diff --git a/htdocs/societe/class/companybankaccount.class.php b/htdocs/societe/class/companybankaccount.class.php index 7211802721e..283c32573e0 100644 --- a/htdocs/societe/class/companybankaccount.class.php +++ b/htdocs/societe/class/companybankaccount.class.php @@ -111,20 +111,14 @@ class CompanyBankAccount extends Account if (!$error) { return 1; - } - else - { + } else { return 0; } - } - else - { + } else { return 1; } } - } - else - { + } else { print $this->db->error(); return 0; } @@ -167,8 +161,7 @@ class CompanyBankAccount extends Account } if (trim($this->label) != '') $sql .= ",label = '".$this->db->escape($this->label)."'"; - else - $sql .= ",label = NULL"; + else $sql .= ",label = NULL"; $sql .= " WHERE rowid = ".$this->id; $result = $this->db->query($sql); @@ -183,19 +176,13 @@ class CompanyBankAccount extends Account if (!$error) { return 1; - } - else - { + } else { return -1; } - } - else - { + } else { return 1; } - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -258,9 +245,7 @@ class CompanyBankAccount extends Account $this->db->free($resql); return 1; - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -307,9 +292,7 @@ class CompanyBankAccount extends Account { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1 * $error; } @@ -354,9 +337,7 @@ class CompanyBankAccount extends Account if ($this->db->num_rows($result1) == 0) { return 0; - } - else - { + } else { $obj = $this->db->fetch_object($result1); $this->db->begin(); @@ -376,16 +357,12 @@ class CompanyBankAccount extends Account dol_print_error($this->db); $this->db->rollback(); return -1; - } - else - { + } else { $this->db->commit(); return 1; } } - } - else - { + } else { dol_print_error($this->db); return -1; } diff --git a/htdocs/societe/class/companypaymentmode.class.php b/htdocs/societe/class/companypaymentmode.class.php index 5ba268f6687..93f0d13b498 100644 --- a/htdocs/societe/class/companypaymentmode.class.php +++ b/htdocs/societe/class/companypaymentmode.class.php @@ -404,8 +404,7 @@ class CompanyPaymentMode extends CommonObject } $linkclose .= ' title="'.dol_escape_htmltag($label, 1).'"'; $linkclose .= ' class="classfortooltip'.($morecss ? ' '.$morecss : '').'"'; - } - else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); + } else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); $linkstart = ''; @@ -439,9 +438,7 @@ class CompanyPaymentMode extends CommonObject if ($this->db->num_rows($result1) == 0) { return 0; - } - else - { + } else { $obj = $this->db->fetch_object($result1); $type = ''; @@ -466,16 +463,12 @@ class CompanyPaymentMode extends CommonObject dol_print_error($this->db); $this->db->rollback(); return -1; - } - else - { + } else { $this->db->commit(); return 1; } } - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -565,9 +558,7 @@ class CompanyPaymentMode extends CommonObject } $this->db->free($result); - } - else - { + } else { dol_print_error($this->db); } } diff --git a/htdocs/societe/class/societe.class.php b/htdocs/societe/class/societe.class.php index ea175c13c6a..03290f1581d 100644 --- a/htdocs/societe/class/societe.class.php +++ b/htdocs/societe/class/societe.class.php @@ -818,40 +818,31 @@ class Societe extends CommonObject $result = $this->call_trigger('COMPANY_CREATE', $user); if ($result < 0) $error++; // End call triggers - } - else $error++; + } else $error++; if (!$error) { dol_syslog(get_class($this)."::Create success id=".$this->id); $this->db->commit(); return $this->id; - } - else - { + } else { dol_syslog(get_class($this)."::Create echec update ".$this->error." ".join(',', $this->errors), LOG_ERR); $this->db->rollback(); return -4; } - } - else - { + } else { if ($this->db->lasterrno() == 'DB_ERROR_RECORD_ALREADY_EXISTS') { $this->error = $langs->trans("ErrorCompanyNameAlreadyExists", $this->name); // duplicate on a field (code or profid or ...) $result = -1; - } - else - { + } else { $this->error = $this->db->lasterror(); $result = -2; } $this->db->rollback(); return $result; } - } - else - { + } else { $this->db->rollback(); dol_syslog(get_class($this)."::Create fails verify ".join(',', $this->errors), LOG_WARNING); return -3; @@ -929,16 +920,13 @@ class Societe extends CommonObject if ($rescode == -1) { $this->errors[] = 'ErrorBadCustomerCodeSyntax'; - } - elseif ($rescode == -2) + } elseif ($rescode == -2) { $this->errors[] = 'ErrorCustomerCodeRequired'; - } - elseif ($rescode == -3) + } elseif ($rescode == -3) { $this->errors[] = 'ErrorCustomerCodeAlreadyUsed'; - } - elseif ($rescode == -4) + } elseif ($rescode == -4) { $this->errors[] = 'ErrorPrefixRequired'; } @@ -954,16 +942,13 @@ class Societe extends CommonObject if ($rescode == -1) { $this->errors[] = 'ErrorBadSupplierCodeSyntax'; - } - elseif ($rescode == -2) + } elseif ($rescode == -2) { $this->errors[] = 'ErrorSupplierCodeRequired'; - } - elseif ($rescode == -3) + } elseif ($rescode == -3) { $this->errors[] = 'ErrorSupplierCodeAlreadyUsed'; - } - elseif ($rescode == -5) + } elseif ($rescode == -5) { $this->errors[] = 'ErrorPrefixRequired'; } @@ -1006,9 +991,7 @@ class Societe extends CommonObject $this->errors[] = $langs->transcountry('ProfId'.$i, $this->country_code)." ".$langs->trans("ErrorProdIdAlreadyExist", $vallabel).' ('.$langs->trans("ForbiddenBySetupRules").')'; } } - } - else - { + } else { //var_dump($conf->global->SOCIETE_EMAIL_UNIQUE); //var_dump($conf->global->SOCIETE_EMAIL_MANDATORY); if ($key == 'EMAIL') @@ -1253,20 +1236,16 @@ class Societe extends CommonObject if ($this->localtax1_value != '') { $sql .= ",localtax1_value =".$this->localtax1_value; - } - else $sql .= ",localtax1_value =0.000"; - } - else $sql .= ",localtax1_value =0.000"; + } else $sql .= ",localtax1_value =0.000"; + } else $sql .= ",localtax1_value =0.000"; if ($this->localtax2_assuj == 1) { if ($this->localtax2_value != '') { $sql .= ",localtax2_value =".$this->localtax2_value; - } - else $sql .= ",localtax2_value =0.000"; - } - else $sql .= ",localtax2_value =0.000"; + } else $sql .= ",localtax2_value =0.000"; + } else $sql .= ",localtax2_value =0.000"; $sql .= ",capital = ".($this->capital == '' ? "null" : $this->capital); @@ -1336,9 +1315,7 @@ class Societe extends CommonObject unset($this->state_code); unset($this->state); } - } - else - { + } else { unset($this->country_code); // We clean this, in the doubt, because it may have been changed after an update of country_id unset($this->country); unset($this->state_code); @@ -1381,8 +1358,7 @@ class Societe extends CommonObject dol_syslog(get_class($this)."::update ".$this->error, LOG_ERR); $error++; } - } - elseif ($result < 0) + } elseif ($result < 0) { $this->error = $lmember->error; $error++; @@ -1393,7 +1369,7 @@ class Societe extends CommonObject $action = 'update'; // Actions on extra fields - if (!$error && empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + if (!$error) { $result = $this->insertExtraFields(); if ($result < 0) @@ -1424,32 +1400,24 @@ class Societe extends CommonObject dol_syslog(get_class($this)."::Update success"); $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } - } - else - { + } else { if ($this->db->errno() == 'DB_ERROR_RECORD_ALREADY_EXISTS') { // Doublon $this->error = $langs->trans("ErrorDuplicateField"); $result = -1; - } - else - { + } else { $this->error = $this->db->lasterror(); $result = -2; } $this->db->rollback(); return $result; } - } - else - { + } else { $this->db->rollback(); dol_syslog(get_class($this)."::Update fails verify ".join(',', $this->errors), LOG_WARNING); return -3; @@ -1541,8 +1509,7 @@ class Societe extends CommonObject $this->error = 'Fetch found several records. Rename one of thirdparties to avoid duplicate.'; dol_syslog($this->error, LOG_ERR); $result = -2; - } - elseif ($num) // $num = 1 + } elseif ($num) // $num = 1 { $obj = $this->db->fetch_object($resql); @@ -1674,16 +1641,12 @@ class Societe extends CommonObject // fetch optionals attributes and labels $this->fetch_optionals(); - } - else - { + } else { $result = 0; } $this->db->free($resql); - } - else - { + } else { $this->error = $this->db->lasterror(); $result = -3; } @@ -1771,7 +1734,7 @@ class Societe extends CommonObject } // Removed extrafields - if ((!$error) && (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED))) // For avoid conflicts if trigger used + if (!$error) { $result = $this->deleteExtraFields(); if ($result < 0) @@ -1821,15 +1784,12 @@ class Societe extends CommonObject } return 1; - } - else - { + } else { dol_syslog($this->error, LOG_ERR); $this->db->rollback(); return -1; } - } - else dol_syslog("Can't remove thirdparty with id ".$id.". There is ".$objectisused." childs", LOG_WARNING); + } else dol_syslog("Can't remove thirdparty with id ".$id.". There is ".$objectisused." childs", LOG_WARNING); return 0; } @@ -1855,8 +1815,7 @@ class Societe extends CommonObject { $this->client = $newclient; return 1; - } - else return -1; + } else return -1; } return 0; } @@ -2050,14 +2009,11 @@ class Societe extends CommonObject if ($result > 0) { return $result; - } - else - { + } else { $this->error = $discount->error; return -3; } - } - else return 0; + } else return 0; } /** @@ -2078,9 +2034,7 @@ class Societe extends CommonObject if ($result >= 0) { return $result; - } - else - { + } else { $this->error = $discountstatic->error; return -1; } @@ -2107,9 +2061,7 @@ class Societe extends CommonObject $sql .= " WHERE ((ug.fk_user = sc.fk_user"; $sql .= " AND ug.entity = ".$conf->entity.")"; $sql .= " OR u.admin = 1)"; - } - else - $sql .= " WHERE entity in (0, ".$conf->entity.")"; + } else $sql .= " WHERE entity in (0, ".$conf->entity.")"; $sql .= " AND u.rowid = sc.fk_user AND sc.fk_soc = ".$this->id; @@ -2135,16 +2087,13 @@ class Societe extends CommonObject $reparray[$i]['entity'] = $obj->entity; $reparray[$i]['login'] = $obj->login; $reparray[$i]['photo'] = $obj->photo; - } - else - { + } else { $reparray[] = $obj->rowid; } $i++; } return $reparray; - } - else { + } else { dol_print_error($this->db); return -1; } @@ -2248,9 +2197,7 @@ class Societe extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -2334,9 +2281,7 @@ class Societe extends CommonObject if ($conf->global->SOCIETE_ADD_REF_IN_LIST == 1) { $name = $code.' '.$name; - } - else - { + } else { $name = $code; } } @@ -2351,8 +2296,7 @@ class Societe extends CommonObject $label .= '
    '; $label .= Form::showphoto('societe', $this, 0, 40, 0, '', 'mini', 0); // Important, we must force height so image will have height tags and if image is inside a tooltip, the tooltip manager can calculate height and position correctly the tooltip. $label .= '
    '; - } - elseif (!empty($this->logo_squarred) && class_exists('Form')) + } elseif (!empty($this->logo_squarred) && class_exists('Form')) { /*$label.= '
    '; $label.= Form::showphoto('societe', $this, 0, 40, 0, 'photowithmargin', 'mini', 0); // Important, we must force height so image will have height tags and if image is inside a tooltip, the tooltip manager can calculate height and position correctly the tooltip. @@ -2365,38 +2309,31 @@ class Societe extends CommonObject { $label .= ''.$langs->trans("ShowCustomer").''; $linkstart = ''; $linkstart = ''; $linkstart = ''; $linkstart = ''; $linkstart = ''; $linkstart = ''; $linkstart = ''; $linkstart = 'poste : "").(($mode != 'poste' && $property) ? " ".$sepa.$property.$sepb : ''); - } - else - { + } else { $contact_property[$obj->rowid] = trim(dolGetFirstLastname($obj->firstname, $obj->lastname)).(($mode != 'poste' && $property) ? " ".$sepa.$property.$sepb : ''); } } $i++; } } - } - else - { + } else { dol_print_error($this->db); } return $contact_property; @@ -2672,9 +2605,7 @@ class Societe extends CommonObject $i++; } } - } - else - { + } else { dol_print_error($this->db); } return $contacts; @@ -2709,9 +2640,7 @@ class Societe extends CommonObject $i++; } } - } - else - { + } else { dol_print_error($this->db); } return $contacts; @@ -2749,9 +2678,7 @@ class Societe extends CommonObject elseif ($mode == 'mobile') $contact_property = $obj->phone_mobile; } return $contact_property; - } - else - { + } else { dol_print_error($this->db); } } @@ -2775,8 +2702,7 @@ class Societe extends CommonObject if ($mode == 'label') { return $bac->getRibLabel(true); - } - elseif ($mode == 'rum') + } elseif ($mode == 'rum') { if (empty($bac->rum)) { @@ -2786,8 +2712,7 @@ class Societe extends CommonObject $bac->rum = $prelevement->buildRumNumber($bac->thirdparty->code_client, $bac->datec, $bac->id); } return $bac->rum; - } - elseif ($mode == 'format') + } elseif ($mode == 'format') { return $bac->frstrecur; } @@ -2917,9 +2842,7 @@ class Societe extends CommonObject if ($mod->code_modifiable_invalide && $this->check_codeclient() < 0) return 1; if ($mod->code_modifiable) return 1; // A mettre en dernier return 0; - } - else - { + } else { return 0; } } @@ -2953,9 +2876,7 @@ class Societe extends CommonObject if ($mod->code_modifiable_invalide && $this->check_codefournisseur() < 0) return 1; if ($mod->code_modifiable) return 1; // A mettre en dernier return 0; - } - else - { + } else { return 0; } } @@ -2991,9 +2912,7 @@ class Societe extends CommonObject dol_syslog(get_class($this)."::check_codeclient code_client=".$this->code_client." module=".$module); $result = $mod->verif($this->db, $this->code_client, $this, 0); return $result; - } - else - { + } else { return 0; } } @@ -3028,9 +2947,7 @@ class Societe extends CommonObject dol_syslog(get_class($this)."::check_codefournisseur code_fournisseur=".$this->code_fournisseur." module=".$module); $result = $mod->verif($this->db, $this->code_fournisseur, $this, 1); return $result; - } - else - { + } else { return 0; } } @@ -3071,15 +2988,11 @@ class Societe extends CommonObject elseif ($type == 'supplier') $this->code_compta_fournisseur = $mod->code; return $result; - } - else - { + } else { $this->error = 'ErrorAccountancyCodeNotDefined'; return -1; } - } - else - { + } else { if ($type == 'customer') $this->code_compta = ''; elseif ($type == 'supplier') $this->code_compta_fournisseur = ''; @@ -3108,13 +3021,10 @@ class Societe extends CommonObject { $this->parent = $id; return 1; - } - else - { + } else { return -1; } - } - else return -1; + } else return -1; } // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps @@ -3204,9 +3114,7 @@ class Societe extends CommonObject { $obj = $this->db->fetch_object($resql); $count = $obj->idprof; - } - else - { + } else { $count = 0; print $this->db->error(); } @@ -3306,8 +3214,7 @@ class Societe extends CommonObject if (preg_match('/(^[0-9]{8}[A-Z]{1}$)/', $string)) if ($num[8] == substr('TRWAGMYFPDXBNJZSQVHLCKE', substr($string, 0, 8) % 23, 1)) return 1; - else - return -1; + else return -1; //algorithm checking type code CIF $sum = $num[2] + $num[4] + $num[6]; @@ -3319,29 +3226,25 @@ class Societe extends CommonObject if (preg_match('/^[KLM]{1}/', $string)) if ($num[8] == chr(64 + $n) || $num[8] == substr('TRWAGMYFPDXBNJZSQVHLCKE', substr($string, 1, 8) % 23, 1)) return 1; - else - return -1; + else return -1; //Check CIF if (preg_match('/^[ABCDEFGHJNPQRSUVW]{1}/', $string)) if ($num[8] == chr(64 + $n) || $num[8] == substr($n, strlen($n) - 1, 1)) return 2; - else - return -2; + else return -2; //Check NIE T if (preg_match('/^[T]{1}/', $string)) if ($num[8] == preg_match('/^[T]{1}[A-Z0-9]{8}$/', $string)) return 3; - else - return -3; + else return -3; //Check NIE XYZ if (preg_match('/^[XYZ]{1}/', $string)) if ($num[8] == substr('TRWAGMYFPDXBNJZSQVHLCKE', substr(str_replace(array('X', 'Y', 'Z'), array('0', '1', '2'), $string), 0, 8) % 23, 1)) return 3; - else - return -3; + else return -3; //Can not be verified return -4; @@ -3361,8 +3264,7 @@ class Societe extends CommonObject //Check NIF if (preg_match('/(^[0-9]{9}$)/', $string)) { return 1; - } - else { + } else { return -1; } } @@ -3416,8 +3318,7 @@ class Societe extends CommonObject if ($url) { return ''.$langs->trans("Check").''; } - } - else { + } else { return $hookmanager->resPrint; } @@ -3439,9 +3340,7 @@ class Societe extends CommonObject { $obj = $this->db->fetch_object($resql); $count = $obj->numproj; - } - else - { + } else { $count = 0; print $this->db->error(); } @@ -3490,9 +3389,7 @@ class Societe extends CommonObject } $this->db->free($result); - } - else - { + } else { dol_print_error($this->db); } } @@ -3510,11 +3407,9 @@ class Societe extends CommonObject $isacompany = empty($conf->global->MAIN_UNKNOWN_CUSTOMERS_ARE_COMPANIES) ? 0 : 1; // 0 by default if (!empty($this->tva_intra)) { $isacompany = 1; - } - elseif (!empty($this->idprof1) || !empty($this->idprof2) || !empty($this->idprof3) || !empty($this->idprof4) || !empty($this->idprof5) || !empty($this->idprof6)) { + } elseif (!empty($this->idprof1) || !empty($this->idprof2) || !empty($this->idprof3) || !empty($this->idprof4) || !empty($this->idprof5) || !empty($this->idprof6)) { $isacompany = 1; - } - elseif (!empty($this->typent_code) && $this->typent_code != 'TE_UNKNOWN') + } elseif (!empty($this->typent_code) && $this->typent_code != 'TE_UNKNOWN') { // TODO Add a field is_a_company into dictionary if (preg_match('/^TE_PRIVATE/', $this->typent_code)) $isacompany = 0; @@ -3557,9 +3452,7 @@ class Societe extends CommonObject $this->SupplierCategories[$obj->rowid] = $obj->label; } return 0; - } - else - { + } else { return -1; } } @@ -3580,9 +3473,7 @@ class Societe extends CommonObject $sql .= " VALUES (".$categorie_id.", ".$this->id.")"; if ($resql = $this->db->query($sql)) return 0; - } - else - { + } else { return 0; } return -1; @@ -3623,7 +3514,7 @@ class Societe extends CommonObject $this->phone = $member->phone; // Prof phone $this->email = $member->email; $this->socialnetworks = $member->socialnetworks; - $this->entity=$member->entity; + $this->entity = $member->entity; $this->client = 1; // A member is a customer by default $this->code_client = ($customercode ? $customercode : -1); @@ -3644,17 +3535,13 @@ class Societe extends CommonObject { $this->db->commit(); return $this->id; - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -1; } - } - else - { + } else { // $this->error deja positionne dol_syslog(get_class($this)."::create_from_member - 2 - ".$this->error." - ".join(',', $this->errors), LOG_ERR); @@ -3695,8 +3582,7 @@ class Societe extends CommonObject { $country_code = $tmp[1]; $country_label = $tmp[2]; - } - else // For backward compatibility + } else // For backward compatibility { dol_syslog("Your country setup use an old syntax. Reedit it using setup area.", LOG_WARNING); include_once DOL_DOCUMENT_ROOT.'/core/lib/company.lib.php'; @@ -3720,8 +3606,7 @@ class Societe extends CommonObject { $state_code = $tmp[1]; $state_label = $tmp[2]; - } - else // For backward compatibility + } else // For backward compatibility { dol_syslog("Your state setup use an old syntax. Reedit it using setup area.", LOG_ERR); include_once DOL_DOCUMENT_ROOT.'/core/lib/company.lib.php'; @@ -3745,6 +3630,13 @@ class Societe extends CommonObject $this->instagram_url = empty($conf->global->MAIN_INFO_SOCIETE_INSTAGRAM_URL) ? '' : $conf->global->MAIN_INFO_SOCIETE_INSTAGRAM_URL; $this->youtube_url = empty($conf->global->MAIN_INFO_SOCIETE_YOUTUBE_URL) ? '' : $conf->global->MAIN_INFO_SOCIETE_YOUTUBE_URL; $this->github_url = empty($conf->global->MAIN_INFO_SOCIETE_GITHUB_URL) ? '' : $conf->global->MAIN_INFO_SOCIETE_GITHUB_URL; + $this->socialnetworks = array(); + if (! empty($this->facebook_url)) $this->socialnetworks['facebook'] = $this->facebook_url; + if (! empty($this->twitter_url)) $this->socialnetworks['twitter'] = $this->twitter_url; + if (! empty($this->linkedin_url)) $this->socialnetworks['linkedin'] = $this->linkedin_url; + if (! empty($this->instagram_url)) $this->socialnetworks['instagram'] = $this->instagram_url; + if (! empty($this->youtube_url)) $this->socialnetworks['youtube'] = $this->youtube_url; + if (! empty($this->github_url)) $this->socialnetworks['github'] = $this->github_url; // Id prof generiques $this->idprof1 = empty($conf->global->MAIN_INFO_SIREN) ? '' : $conf->global->MAIN_INFO_SIREN; @@ -3852,8 +3744,7 @@ class Societe extends CommonObject if ($resql) { return ($this->db->num_rows($resql) > 0); - } - else return false; + } else return false; } /** @@ -3873,8 +3764,7 @@ class Societe extends CommonObject if ($resql) { return ($this->db->num_rows($resql) > 0); - } - else return false; + } else return false; } /** @@ -3896,9 +3786,7 @@ class Societe extends CommonObject { $obj = $this->db->fetch_object($resql); return (($obj->nb > 0) ?true:false); - } - else - { + } else { $this->error = $this->db->lasterror(); return false; } @@ -3984,8 +3872,7 @@ class Societe extends CommonObject elseif ($status == '1' || $status == 'ST_TODO') return img_action($langs->trans("StatusProspect1"), 1).' '.$langs->trans("StatusProspect1"); elseif ($status == '2' || $status == 'ST_PEND') return img_action($langs->trans("StatusProspect2"), 2).' '.$langs->trans("StatusProspect2"); elseif ($status == '3' || $status == 'ST_DONE') return img_action($langs->trans("StatusProspect3"), 3).' '.$langs->trans("StatusProspect3"); - else - { + else { return img_action(($langs->trans("StatusProspect".$status) != "StatusProspect".$status) ? $langs->trans("StatusProspect".$status) : $label, 0).' '.(($langs->trans("StatusProspect".$status) != "StatusProspect".$status) ? $langs->trans("StatusProspect".$status) : $label); } } @@ -3996,8 +3883,7 @@ class Societe extends CommonObject elseif ($status == '1' || $status == 'ST_TODO') return img_action($langs->trans("StatusProspect1"), 1); elseif ($status == '2' || $status == 'ST_PEND') return img_action($langs->trans("StatusProspect2"), 2); elseif ($status == '3' || $status == 'ST_DONE') return img_action($langs->trans("StatusProspect3"), 3); - else - { + else { return img_action(($langs->trans("StatusProspect".$status) != "StatusProspect".$status) ? $langs->trans("StatusProspect".$status) : $label, 0); } } @@ -4008,8 +3894,7 @@ class Societe extends CommonObject elseif ($status == '1' || $status == 'ST_TODO') return img_action($langs->trans("StatusProspect1"), 1).' '.$langs->trans("StatusProspect1"); elseif ($status == '2' || $status == 'ST_PEND') return img_action($langs->trans("StatusProspect2"), 2).' '.$langs->trans("StatusProspect2"); elseif ($status == '3' || $status == 'ST_DONE') return img_action($langs->trans("StatusProspect3"), 3).' '.$langs->trans("StatusProspect3"); - else - { + else { return img_action(($langs->trans("StatusProspect".$status) != "StatusProspect".$status) ? $langs->trans("StatusProspect".$status) : $label, 0).' '.(($langs->trans("StatusProspect".$status) != "StatusProspect".$status) ? $langs->trans("StatusProspect".$status) : $label); } } @@ -4066,9 +3951,7 @@ class Societe extends CommonObject } } return array('opened'=>$outstandingOpened, 'total_ht'=>$outstandingTotal, 'total_ttc'=>$outstandingTotalIncTax); // 'opened' is 'incl taxes' - } - else - return array(); + } else return array(); } /** @@ -4106,9 +3989,7 @@ class Societe extends CommonObject } } return array('opened'=>$outstandingOpened, 'total_ht'=>$outstandingTotal, 'total_ttc'=>$outstandingTotalIncTax); // 'opened' is 'incl taxes' - } - else - return array(); + } else return array(); } /** @@ -4149,9 +4030,7 @@ class Societe extends CommonObject { require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php'; $tmpobject = new FactureFournisseur($this->db); - } - else - { + } else { require_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php'; $tmpobject = new Facture($this->db); } @@ -4186,9 +4065,7 @@ class Societe extends CommonObject } } return array('opened'=>$outstandingOpened, 'total_ht'=>$outstandingTotal, 'total_ttc'=>$outstandingTotalIncTax); // 'opened' is 'incl taxes' - } - else - { + } else { return array(); } } @@ -4247,18 +4124,14 @@ class Societe extends CommonObject $result = $companybankaccount->fetch($moreparams['use_companybankid']); if (!$result) dol_print_error($this->db, $companybankaccount->error, $companybankaccount->errors); $result = $companybankaccount->commonGenerateDocument($modelpath, $modele, $outputlangs, $hidedetails, $hidedesc, $hideref, $moreparams); - } - else - { + } else { // Positionne le modele sur le nom du modele a utiliser if (!dol_strlen($modele)) { if (!empty($conf->global->COMPANY_ADDON_PDF)) { $modele = $conf->global->COMPANY_ADDON_PDF; - } - else - { + } else { print $langs->trans("Error")." ".$langs->trans("Error_COMPANY_ADDON_PDF_NotDefined"); return 0; } diff --git a/htdocs/societe/class/societeaccount.class.php b/htdocs/societe/class/societeaccount.class.php index f90cb17c230..ba32086cc4d 100644 --- a/htdocs/societe/class/societeaccount.class.php +++ b/htdocs/societe/class/societeaccount.class.php @@ -79,15 +79,15 @@ class SocieteAccount extends CommonObject public $fields = array( 'rowid' => array('type'=>'integer', 'label'=>'TechnicalID', 'visible'=>-2, 'enabled'=>1, 'position'=>1, 'notnull'=>1, 'index'=>1, 'comment'=>'Id',), 'entity' => array('type'=>'integer', 'label'=>'Entity', 'visible'=>0, 'enabled'=>1, 'position'=>5, 'default'=>1), - 'key_account' => array('type'=>'varchar(128)', 'label'=>'KeyAccount', 'visible'=>1, 'enabled'=>1, 'position'=>10, 'notnull'=>1, 'index'=>1, 'searchall'=>1, 'comment'=>'Key account',), - 'login' => array('type'=>'varchar(64)', 'label'=>'Login', 'visible'=>1, 'enabled'=>1, 'position'=>10), + 'login' => array('type'=>'varchar(64)', 'label'=>'Login', 'visible'=>1, 'enabled'=>1, 'notnull'=>1, 'position'=>10, 'showoncombobox'=>1), 'pass_encoding' => array('type'=>'varchar(24)', 'label'=>'PassEncoding', 'visible'=>0, 'enabled'=>1, 'position'=>30), 'pass_crypted' => array('type'=>'varchar(128)', 'label'=>'Password', 'visible'=>1, 'enabled'=>1, 'position'=>31, 'notnull'=>1), 'pass_temp' => array('type'=>'varchar(128)', 'label'=>'Temp', 'visible'=>0, 'enabled'=>0, 'position'=>32, 'notnull'=>-1,), 'fk_soc' => array('type'=>'integer:Societe:societe/class/societe.class.php', 'label'=>'ThirdParty', 'visible'=>1, 'enabled'=>1, 'position'=>40, 'notnull'=>-1, 'index'=>1), - 'site' => array('type'=>'varchar(128)', 'label'=>'Site', 'visible'=>-1, 'enabled'=>1, 'position'=>41), - 'site_account' => array('type'=>'varchar(128)', 'label'=>'SiteAccount', 'visible'=>-1, 'enabled'=>1, 'position'=>42, 'help'=>'A key to identify the account on external web site'), - 'fk_website' => array('type'=>'integer:Website:website/class/website.class.php', 'label'=>'WebSite', 'visible'=>1, 'enabled'=>1, 'position'=>43, 'notnull'=>-1, 'index'=>1), + 'fk_website' => array('type'=>'integer:Website:website/class/website.class.php', 'label'=>'WebSite', 'visible'=>1, 'enabled'=>1, 'position'=>42, 'notnull'=>-1, 'index'=>1), + 'site' => array('type'=>'varchar(128)', 'label'=>'ExternalSite', 'visible'=>0, 'enabled'=>1, 'position'=>43, 'help'=>'Name of the website or service if this is account on an external website or service'), + 'site_account' => array('type'=>'varchar(128)', 'label'=>'ExternalSiteAccount', 'visible'=>0, 'enabled'=>1, 'position'=>44, 'help'=>'A key to identify the account on external web site if this is an account on an external website'), + 'key_account' => array('type'=>'varchar(128)', 'label'=>'KeyAccount', 'visible'=>0, 'enabled'=>1, 'position'=>48, 'notnull'=>0, 'index'=>1, 'searchall'=>1, 'comment'=>'The id of third party in the external web site (for site_account if site_account defined)',), 'date_last_login' => array('type'=>'datetime', 'label'=>'LastConnexion', 'visible'=>2, 'enabled'=>1, 'position'=>50, 'notnull'=>0,), 'date_previous_login' => array('type'=>'datetime', 'label'=>'PreviousConnexion', 'visible'=>2, 'enabled'=>1, 'position'=>51, 'notnull'=>0,), //'note_public' => array('type'=>'text', 'label'=>'NotePublic', 'visible'=>-1, 'enabled'=>1, 'position'=>45, 'notnull'=>-1,), @@ -405,11 +405,10 @@ class SocieteAccount extends CommonObject if (!empty($conf->dol_no_mouse_hover)) $notooltip = 1; // Force disable tooltips $result = ''; - $companylink = ''; $this->ref = $this->login; - $label = ''.$langs->trans("SocieteAccount").''; + $label = ''.$langs->trans("WebsiteAccount").''; $label .= '
    '; $label .= ''.$langs->trans('Login').': '.$this->ref; //$label.= '' . $langs->trans('WebSite') . ': ' . $this->ref; @@ -429,13 +428,12 @@ class SocieteAccount extends CommonObject { if (!empty($conf->global->MAIN_OPTIMIZEFORTEXTBROWSER)) { - $label = $langs->trans("ShowsocieteAccount"); + $label = $langs->trans("WebsiteAccount"); $linkclose .= ' alt="'.dol_escape_htmltag($label, 1).'"'; } $linkclose .= ' title="'.dol_escape_htmltag($label, 1).'"'; $linkclose .= ' class="classfortooltip'.($morecss ? ' '.$morecss : '').'"'; - } - else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); + } else $linkclose = ($morecss ? ' class="'.$morecss.'"' : ''); $linkstart = ''; @@ -478,33 +476,27 @@ class SocieteAccount extends CommonObject $prefix = ''; if ($status == 1) return $langs->trans('Enabled'); elseif ($status == 0) return $langs->trans('Disabled'); - } - elseif ($mode == 1) + } elseif ($mode == 1) { if ($status == 1) return $langs->trans('Enabled'); elseif ($status == 0) return $langs->trans('Disabled'); - } - elseif ($mode == 2) + } elseif ($mode == 2) { if ($status == 1) return img_picto($langs->trans('Enabled'), 'statut4').' '.$langs->trans('Enabled'); elseif ($status == 0) return img_picto($langs->trans('Disabled'), 'statut5').' '.$langs->trans('Disabled'); - } - elseif ($mode == 3) + } elseif ($mode == 3) { if ($status == 1) return img_picto($langs->trans('Enabled'), 'statut4'); elseif ($status == 0) return img_picto($langs->trans('Disabled'), 'statut5'); - } - elseif ($mode == 4) + } elseif ($mode == 4) { if ($status == 1) return img_picto($langs->trans('Enabled'), 'statut4').' '.$langs->trans('Enabled'); elseif ($status == 0) return img_picto($langs->trans('Disabled'), 'statut5').' '.$langs->trans('Disabled'); - } - elseif ($mode == 5) + } elseif ($mode == 5) { if ($status == 1) return $langs->trans('Enabled').' '.img_picto($langs->trans('Enabled'), 'statut4'); elseif ($status == 0) return $langs->trans('Disabled').' '.img_picto($langs->trans('Disabled'), 'statut5'); - } - elseif ($mode == 6) + } elseif ($mode == 6) { if ($status == 1) return $langs->trans('Enabled').' '.img_picto($langs->trans('Enabled'), 'statut4'); elseif ($status == 0) return $langs->trans('Disabled').' '.img_picto($langs->trans('Disabled'), 'statut5'); @@ -557,9 +549,7 @@ class SocieteAccount extends CommonObject } $this->db->free($result); - } - else - { + } else { dol_print_error($this->db); } } diff --git a/htdocs/societe/consumption.php b/htdocs/societe/consumption.php index ad7383d81af..312835e1a80 100644 --- a/htdocs/societe/consumption.php +++ b/htdocs/societe/consumption.php @@ -427,9 +427,7 @@ if ($sql_select) if ($type_element == 'contract') { print $documentstaticline->getLibStatut(2); - } - else - { + } else { print $documentstatic->getLibStatut(2); } print ''; @@ -471,9 +469,7 @@ if ($sql_select) } $label = (!empty($prod->multilangs[$outputlangs->defaultlang]["label"])) ? $prod->multilangs[$outputlangs->defaultlang]["label"] : $objp->product_label; - } - else - { + } else { $label = $objp->product_label; } @@ -507,29 +503,23 @@ if ($sql_select) $discount = new DiscountAbsolute($db); $discount->fetch($objp->fk_remise_except); echo ($txt ? ' - ' : '').$langs->transnoentities("DiscountFromExcessReceived", $discount->getNomUrl(0)); - } - elseif ($objp->description == '(EXCESS PAID)' && $objp->fk_remise_except > 0) + } elseif ($objp->description == '(EXCESS PAID)' && $objp->fk_remise_except > 0) { $discount = new DiscountAbsolute($db); $discount->fetch($objp->fk_remise_except); echo ($txt ? ' - ' : '').$langs->transnoentities("DiscountFromExcessPaid", $discount->getNomUrl(0)); - } - elseif ($objp->description == '(DEPOSIT)' && $objp->fk_remise_except > 0) + } elseif ($objp->description == '(DEPOSIT)' && $objp->fk_remise_except > 0) { $discount = new DiscountAbsolute($db); $discount->fetch($objp->fk_remise_except); echo ($txt ? ' - ' : '').$langs->transnoentities("DiscountFromDeposit", $discount->getNomUrl(0)); // Add date of deposit if (!empty($conf->global->INVOICE_ADD_DEPOSIT_DATE)) echo ' ('.dol_print_date($discount->datec).')'; - } - else - { + } else { echo ($txt ? ' - ' : '').dol_htmlentitiesbr($objp->description); } } - } - else - { + } else { if ($objp->fk_product > 0) { echo $form->textwithtooltip($text, $description, 3, '', '', $i, 0, ''); @@ -607,8 +597,7 @@ if ($sql_select) print_barre_liste('', $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, '', $num); } $db->free($resql); -} -elseif (empty($type_element) || $type_element == -1) +} elseif (empty($type_element) || $type_element == -1) { print_barre_liste($langs->trans('ProductsIntoElements').' '.$typeElementString.' '.$button, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, '', $num, '', ''); @@ -625,8 +614,7 @@ elseif (empty($type_element) || $type_element == -1) print '
    '; print "
    '; if ((!$object->code_fournisseur || $object->code_fournisseur == -1) && $modCodeFournisseur->code_auto) { @@ -1929,13 +1844,10 @@ else if (empty($tmpcode) && !empty($object->oldcopy->code_fournisseur)) $tmpcode = $object->oldcopy->code_fournisseur; // When there is an error to update a thirdparty, the number for supplier and customer code is kept to old value. if (empty($tmpcode) && !empty($modCodeFournisseur->code_auto)) $tmpcode = $modCodeFournisseur->getNextValue($object, 1); print ''; - } - elseif ($object->codefournisseur_modifiable()) + } elseif ($object->codefournisseur_modifiable()) { print ''; - } - else - { + } else { print $object->code_fournisseur; print ''; } @@ -1970,14 +1882,17 @@ else // Zip / Town print '
    '.$form->editfieldkey('Zip', 'zipcode', '', $object, 0).''; print $formcompany->select_ziptown($object->zip, 'zipcode', array('town', 'selectcountry_id', 'state_id'), 0, 0, '', 'maxwidth50onsmartphone'); - print ''.$form->editfieldkey('Town', 'town', '', $object, 0).''; + print '
    '.$form->editfieldkey('Town', 'town', '', $object, 0).''; print $formcompany->select_ziptown($object->town, 'town', array('zipcode', 'selectcountry_id', 'state_id')); print $form->widgetForTranslation("town", $object, $permissiontoadd, 'string', 'alphanohtml', 'maxwidth100 quatrevingtpercent'); print '
    '.$form->editfieldkey('Country', 'selectcounty_id', '', $object, 0).''; - print $form->select_country((GETPOSTISSET('country_id') ? GETPOST('country_id') : $object->country_id), 'country_id'); + print img_picto('', 'globe-americas', 'class="paddingrightonly"'); + print $form->select_country((GETPOSTISSET('country_id') ? GETPOST('country_id') : $object->country_id), 'country_id', '', 0, 'minwidth300 widthcentpercentminusx'); if ($user->admin) print info_admin($langs->trans("YouCanChangeValuesForThisListFromDictionarySetup"), 1); print '
    '.$form->editfieldkey('Region-State', 'state_id', '', $object, 0).''; - } - else - { + } else { print '
    '.$form->editfieldkey('State', 'state_id', '', $object, 0).''; } @@ -1999,15 +1912,16 @@ else // Phone / Fax print '
    '.$form->editfieldkey('Phone', 'phone', GETPOST('phone', 'alpha'), $object, 0).''.img_picto('', 'object_phoning').' '.img_picto('', 'object_phoning').'
    '.$form->editfieldkey('Fax', 'fax', GETPOST('fax', 'alpha'), $object, 0).''.img_picto('', 'object_phoning_fax').'
    '.img_picto('', 'object_phoning_fax').'
    '.$form->editfieldkey('EMail', 'email', GETPOST('email', 'alpha'), $object, 0, 'string', '', (!empty($conf->global->SOCIETE_EMAIL_MANDATORY))).''.img_picto('', 'object_email').'
    '.img_picto('', 'object_email').'
    '.$form->editfieldkey('Web', 'url', GETPOST('url', 'alpha'), $object, 0).''.img_picto('', 'globe').'
    '.img_picto('', 'globe').'
    '.$form->editfieldkey('Skype', 'skype', '', $object, 0).'
    '.$form->editfieldkey('Twitter', 'twitter', '', $object, 0).'
    '.$form->editfieldkey('Facebook', 'facebook', '', $object, 0).'
    '.$form->editfieldkey('LinkedIn', 'linkedin', '', $object, 0).'
    '.$form->editfieldkey($idprof, $key, '', $object, 0, 'string', '', !(empty($conf->global->$idprof_mandatory) || !$object->isACompany())).''; print $formcompany->get_input_id_prof($i, $key, $object->$key, $object->country_code); print '
    '.$form->editfieldkey('VATIsUsed', 'assujtva_value', '', $object, 0).''; @@ -2091,7 +1978,7 @@ else print ''; } print '
    '.$form->editfieldkey($langs->transcountry("LocalTax2IsUsed", $mysoc->country_code), 'localtax2assuj_value', '', $object, 0).''; print $form->selectyesno('localtax2assuj_value', $object->localtax2_assuj, 1); if (!isOnlyOneLocalTax(2)) @@ -2101,8 +1988,7 @@ else print ''; } print '
    '.$form->editfieldkey($langs->transcountry("LocalTax1IsUsed", $mysoc->country_code), 'localtax1assuj_value', '', $object, 0).''; print $form->selectyesno('localtax1assuj_value', $object->localtax1_assuj, 1); @@ -2113,8 +1999,7 @@ else print ''; } print '
    '.$form->editfieldkey($langs->transcountry("LocalTax2IsUsed", $mysoc->country_code), 'localtax2assuj_value', '', $object, 0).''; print $form->selectyesno('localtax2assuj_value', $object->localtax2_assuj, 1); @@ -2150,9 +2035,7 @@ else print "\n"; $s .= ''.$langs->trans("VATIntraCheck").''; $s = $form->textwithpicto($s, $langs->trans("VATIntraCheckDesc", $langs->transnoentitiesnoconv("VATIntraCheck")), 1); - } - else - { + } else { $s .= 'country_id).'" class="hideonsmartphone" target="_blank">'.img_picto($langs->trans("VATIntraCheckableOnEUSite"), 'help').''; } } @@ -2165,6 +2048,7 @@ else print $form->selectarray("typent_id", $formcompany->typent_array(0), $object->typent_id, 0, 0, 0, '', 0, 0, 0, (empty($conf->global->SOCIETE_SORT_ON_TYPEENT) ? 'ASC' : $conf->global->SOCIETE_SORT_ON_TYPEENT)); if ($user->admin) print info_admin($langs->trans("YouCanChangeValuesForThisListFromDictionarySetup"), 1); print '
    '.$form->editfieldkey('Staff', 'effectif_id', '', $object, 0).''; print $form->selectarray("effectif_id", $formcompany->effectif_array(0), $object->effectif_id); if ($user->admin) print info_admin($langs->trans("YouCanChangeValuesForThisListFromDictionarySetup"), 1); @@ -2293,9 +2177,7 @@ else print ''; } - } - else - { + } else { /* * View */ @@ -2456,9 +2338,7 @@ else print ''; $formcompany->select_localtax(1, $object->localtax1_value, "lt1"); print ''.$object->localtax1_value.'
    '.$langs->transcountry("LocalTax1IsUsed", $mysoc->country_code).''; print yn($object->localtax1_assuj); @@ -2499,8 +2378,7 @@ else } print '
    '.$langs->transcountry("LocalTax2IsUsed", $mysoc->country_code).''; print yn($object->localtax2_assuj); @@ -2550,16 +2428,12 @@ else print "\n"; $s .= ''.$langs->trans("VATIntraCheck").''; $s = $form->textwithpicto($s, $langs->trans("VATIntraCheckDesc", $langs->transnoentitiesnoconv("VATIntraCheck")), 1); - } - else - { + } else { $s .= 'country_id).'" class="hideonsmartphone" target="_blank">'.img_picto($langs->trans("VATIntraCheckableOnEUSite"), 'help').''; } } print $s; - } - else - { + } else { print ' '; } print '
    '.$langs->trans("SelectElementAndClick", $langs->transnoentitiesnoconv("Search")).'
    "; -} -else { +} else { print_barre_liste($langs->trans('ProductsIntoElements').' '.$typeElementString.' '.$button, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, '', $num, '', ''); print ''."\n"; diff --git a/htdocs/societe/document.php b/htdocs/societe/document.php index f22fb1ec5b6..ba0241a90f7 100644 --- a/htdocs/societe/document.php +++ b/htdocs/societe/document.php @@ -48,11 +48,12 @@ if ($user->socid > 0) $result = restrictedArea($user, 'societe', $id, '&societe'); // Get parameters +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; @@ -165,9 +166,7 @@ if ($object->id) $permtoedit = $user->rights->societe->creer; $param = '&id='.$object->id; include_once DOL_DOCUMENT_ROOT.'/core/tpl/document_actions_post_headers.tpl.php'; -} -else -{ +} else { accessforbidden('', 0, 0); } diff --git a/htdocs/societe/index.php b/htdocs/societe/index.php index fdd7c24f280..85c27a29b7e 100644 --- a/htdocs/societe/index.php +++ b/htdocs/societe/index.php @@ -95,8 +95,7 @@ if ($result) if (!empty($conf->societe->enabled) && $objp->client == 0 && $objp->fournisseur == 0) { $found = 1; $third['other']++; } if ($found) $total++; } -} -else dol_print_error($db); +} else dol_print_error($db); print '
    '; print '
    '."\n"; @@ -119,9 +118,7 @@ if (!empty($conf->use_javascript_ajax) && ((round($third['prospect']) ? 1 : 0) + $dolgraph->draw('idgraphthirdparties'); print $dolgraph->show(); print ''."\n"; -} -else -{ +} else { if (!empty($conf->societe->enabled) && $user->rights->societe->lire && empty($conf->global->SOCIETE_DISABLE_PROSPECTS) && empty($conf->global->SOCIETE_DISABLE_PROSPECTS_STATS)) { $statstring = ""; @@ -134,7 +131,7 @@ else $statstring .= ''; $statstring .= ""; } - if (!empty($conf->fournisseur->enabled) && empty($conf->global->SOCIETE_DISABLE_SUPPLIERS_STATS) && $user->rights->fournisseur->lire) + if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)) && empty($conf->global->SOCIETE_DISABLE_SUPPLIERS_STATS) && $user->rights->fournisseur->lire) { $statstring2 = ""; $statstring2 .= ''; @@ -185,9 +182,7 @@ if (!empty($conf->categorie->enabled) && !empty($conf->global->CATEGORY_GRAPHSTA if ($i < $nbmax) { $dataseries[] = array($obj->label, round($obj->nb)); - } - else - { + } else { $rest += $obj->nb; } $total += $obj->nb; @@ -206,9 +201,7 @@ if (!empty($conf->categorie->enabled) && !empty($conf->global->CATEGORY_GRAPHSTA $dolgraph->setHeight('200'); $dolgraph->draw('idgraphcateg'); print $dolgraph->show(); - } - else - { + } else { while ($i < $num) { $obj = $db->fetch_object($result); @@ -310,7 +303,7 @@ if ($result) $thirdparty_static->name = $langs->trans("Prospect"); print $thirdparty_static->getNomUrl(0, 'prospect', 0, 1); } - if (!empty($conf->fournisseur->enabled) && $thirdparty_static->fournisseur) + if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)) && $thirdparty_static->fournisseur) { if ($thirdparty_static->client) print " / "; $thirdparty_static->name = $langs->trans("Supplier"); @@ -334,9 +327,7 @@ if ($result) print ''; print "\n"; } -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/societe/list.php b/htdocs/societe/list.php index 3d72fb1cdd3..4ead540eb8b 100644 --- a/htdocs/societe/list.php +++ b/htdocs/societe/list.php @@ -179,9 +179,9 @@ $arrayfields = array( 's.name_alias'=>array('label'=>"AliasNameShort", 'position'=>3, 'checked'=>1), 's.barcode'=>array('label'=>"Gencod", 'position'=>5, 'checked'=>1, 'enabled'=>(!empty($conf->barcode->enabled))), 's.code_client'=>array('label'=>"CustomerCodeShort", 'position'=>10, 'checked'=>$checkedcustomercode), - 's.code_fournisseur'=>array('label'=>"SupplierCodeShort", 'position'=>11, 'checked'=>$checkedsuppliercode, 'enabled'=>(!empty($conf->fournisseur->enabled))), + 's.code_fournisseur'=>array('label'=>"SupplierCodeShort", 'position'=>11, 'checked'=>$checkedsuppliercode, 'enabled'=>(!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled))), 's.code_compta'=>array('label'=>"CustomerAccountancyCodeShort", 'position'=>13, 'checked'=>$checkedcustomeraccountcode), - 's.code_compta_fournisseur'=>array('label'=>"SupplierAccountancyCodeShort", 'position'=>14, 'checked'=>$checkedsupplieraccountcode, 'enabled'=>(!empty($conf->fournisseur->enabled))), + 's.code_compta_fournisseur'=>array('label'=>"SupplierAccountancyCodeShort", 'position'=>14, 'checked'=>$checkedsupplieraccountcode, 'enabled'=>(!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled))), 's.town'=>array('label'=>"Town", 'position'=>20, 'checked'=>1), 's.zip'=>array('label'=>"Zip", 'position'=>21, 'checked'=>1), 'state.nom'=>array('label'=>"State", 'position'=>22, 'checked'=>0), @@ -386,8 +386,7 @@ if ($resql) if ($level == $obj->code) $level = $langs->trans($obj->label); $tab_level[$obj->code] = $level; } -} -else dol_print_error($db); +} else dol_print_error($db); $sql = "SELECT s.rowid, s.nom as name, s.name_alias, s.barcode, s.town, s.zip, s.datec, s.code_client, s.code_fournisseur, s.logo,"; $sql .= " s.entity,"; @@ -1049,9 +1048,7 @@ while ($i < min($num, $limit)) if ($contextpage == 'poslist') { print $obj->name; - } - else - { + } else { print $companystatic->getNomUrl(1, '', 100, 0, 1); } print "\n"; @@ -1153,12 +1150,12 @@ while ($i < min($num, $limit)) } if (!empty($arrayfields['s.phone']['checked'])) { - print "\n"; + print "\n"; if (!$i) $totalarray['nbfield']++; } if (!empty($arrayfields['s.fax']['checked'])) { - print "\n"; + print "\n"; if (!$i) $totalarray['nbfield']++; } if (!empty($arrayfields['s.url']['checked'])) @@ -1225,7 +1222,7 @@ while ($i < min($num, $limit)) $companystatic->name_alias = ''; $s .= $companystatic->getNomUrl(0, 'prospect', 0, 1); } - if ((!empty($conf->fournisseur->enabled) || !empty($conf->supplier_proposal->enabled)) && $obj->fournisseur) + if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)) && $obj->fournisseur) { if ($s) $s .= ", "; $companystatic->name = $langs->trans("Supplier"); @@ -1276,7 +1273,7 @@ while ($i < min($num, $limit)) // 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, 'totalarray'=>&$totalarray); $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/societe/note.php b/htdocs/societe/note.php index 2e3e3ec4532..866a0e0964f 100644 --- a/htdocs/societe/note.php +++ b/htdocs/societe/note.php @@ -122,9 +122,7 @@ if ($object->id > 0) include DOL_DOCUMENT_ROOT.'/core/tpl/notes.tpl.php'; dol_fiche_end(); -} -else -{ +} else { $langs->load("errors"); print $langs->trans("ErrorRecordNotFound"); } diff --git a/htdocs/societe/notify/card.php b/htdocs/societe/notify/card.php index 191f9c4bb2c..2a0d2603e5b 100644 --- a/htdocs/societe/notify/card.php +++ b/htdocs/societe/notify/card.php @@ -104,18 +104,14 @@ if (empty($reshook)) $error++; dol_print_error($db); } - } - else - { + } else { dol_print_error($db); } if (!$error) { $db->commit(); - } - else - { + } else { $db->rollback(); } } @@ -263,9 +259,7 @@ if ($result > 0) print ''; print ''; print ''; - } - else - { + } else { print ''; @@ -293,9 +287,7 @@ if ($result > 0) if ($resql) { $num = $db->num_rows($resql); - } - else - { + } else { dol_print_error($db); } @@ -333,9 +325,7 @@ if ($result > 0) if (isValidEmail($obj->email)) { print ' <'.$obj->email.'>'; - } - else - { + } else { $langs->load("errors"); print '   '.img_warning().' '.$langs->trans("ErrorBadEMail", $obj->email); } @@ -443,9 +433,7 @@ if ($result > 0) if ($resql) { $num = $db->num_rows($resql); - } - else - { + } else { dol_print_error($db); } @@ -493,9 +481,7 @@ if ($result > 0) $contactstatic->firstname = $obj->firstname; print $contactstatic->getNomUrl(1); print $obj->email ? ' <'.$obj->email.'>' : $langs->trans("NoMail"); - } - else - { + } else { print $obj->email; } print ''; @@ -529,8 +515,7 @@ if ($result > 0) print '
    '.$langs->trans("Customers").''.round($third['customer']).'
    '.$langs->trans("Suppliers").''.round($third['supplier']).'".dol_print_phone($obj->phone, $obj->country_code, 0, $obj->rowid)."".dol_print_phone($obj->phone, $obj->country_code, 0, $obj->rowid, 'AC_TEL')."".dol_print_phone($obj->fax, $obj->country_code, 0, $obj->rowid)."".dol_print_phone($obj->fax, $obj->country_code, 0, $obj->rowid, 'AC_TEL')."
    '; print $langs->trans("YouMustCreateContactFirst"); print '
    '; print ''; -} -else dol_print_error('', 'RecordNotFound'); +} else dol_print_error('', 'RecordNotFound'); // End of page llxFooter(); diff --git a/htdocs/societe/paymentmodes.php b/htdocs/societe/paymentmodes.php index d440930bbf5..fa01e2db095 100644 --- a/htdocs/societe/paymentmodes.php +++ b/htdocs/societe/paymentmodes.php @@ -175,9 +175,7 @@ if (empty($reshook)) if (!$result) { setEventMessages($companybankaccount->error, $companybankaccount->errors, 'errors'); - } - else - { + } else { // If this account is the default bank account, we disable others if ($companybankaccount->default_rib) { @@ -230,9 +228,7 @@ if (empty($reshook)) if (!$result) { setEventMessages($companypaymentmode->error, $companypaymentmode->errors, 'errors'); - } - else - { + } else { // If this account is the default bank account, we disable others if ($companypaymentmode->default_rib) { @@ -338,9 +334,7 @@ if (empty($reshook)) $url = $_SERVER["PHP_SELF"].'?socid='.$object->id; header('Location: '.$url); exit; - } - else - { + } else { $db->rollback(); } } @@ -407,9 +401,7 @@ if (empty($reshook)) $url = $_SERVER["PHP_SELF"].'?socid='.$object->id; header('Location: '.$url); exit; - } - else - { + } else { $db->rollback(); } } @@ -424,9 +416,7 @@ if (empty($reshook)) $url = DOL_URL_ROOT.'/societe/paymentmodes.php?socid='.$object->id; header('Location: '.$url); exit; - } - else - { + } else { setEventMessages($db->lasterror, null, 'errors'); } } @@ -451,14 +441,10 @@ if (empty($reshook)) $url = $_SERVER['PHP_SELF']."?socid=".$object->id; header('Location: '.$url); exit; - } - else - { + } else { setEventMessages($companypaymentmode->error, $companypaymentmode->errors, 'errors'); } - } - else - { + } else { setEventMessages($companypaymentmode->error, $companypaymentmode->errors, 'errors'); } } @@ -473,14 +459,10 @@ if (empty($reshook)) $url = $_SERVER['PHP_SELF']."?socid=".$object->id; header('Location: '.$url); exit; - } - else - { + } else { setEventMessages($companybankaccount->error, $companybankaccount->errors, 'errors'); } - } - else - { + } else { setEventMessages($companybankaccount->error, $companybankaccount->errors, 'errors'); } } @@ -515,18 +497,14 @@ if (empty($reshook)) { $error++; setEventMessages('ThisThirdpartyIsNotACustomer', null, 'errors'); - } - else - { + } else { // Creation of Stripe customer + update of societe_account $cu = $stripe->customerStripe($object, $stripeacc, $servicestatus, 1); if (!$cu) { $error++; setEventMessages($stripe->error, $stripe->errors, 'errors'); - } - else - { + } else { $stripecu = $cu->id; } } @@ -540,9 +518,7 @@ if (empty($reshook)) { $error++; setEventMessages('ThisPaymentModeIsNotACard', null, 'errors'); - } - else - { + } else { // Get the Stripe customer $cu = $stripe->customerStripe($object, $stripeacc, $servicestatus); if (!$cu) @@ -612,9 +588,7 @@ if (empty($reshook)) { $stripecu = $newcu; $db->commit(); - } - else - { + } else { $db->rollback(); } } @@ -669,9 +643,7 @@ if (empty($reshook)) { $stripesupplieracc = $newsup; $db->commit(); - } - else - { + } else { $db->rollback(); } } @@ -684,23 +656,19 @@ if (empty($reshook)) $url = DOL_URL_ROOT.'/societe/paymentmodes.php?socid='.$object->id; header('Location: '.$url); exit; - } - catch (Exception $e) + } catch (Exception $e) { $error++; setEventMessages($e->getMessage(), null, 'errors'); } - } - elseif ($action == 'setassourcedefault') // Set as default when payment mode defined remotely only + } elseif ($action == 'setassourcedefault') // Set as default when payment mode defined remotely only { try { $cu = $stripe->customerStripe($object, $stripeacc, $servicestatus); if (preg_match('/pm_/', $source)) { $cu->invoice_settings->default_payment_method = (string) $source; // New - } - else - { + } else { $cu->default_source = (string) $source; // Old } $result = $cu->save(); @@ -708,14 +676,12 @@ if (empty($reshook)) $url = DOL_URL_ROOT.'/societe/paymentmodes.php?socid='.$object->id; header('Location: '.$url); exit; - } - catch (Exception $e) + } catch (Exception $e) { $error++; setEventMessages($e->getMessage(), null, 'errors'); } - } - elseif ($action == 'deletecard' && $source) + } elseif ($action == 'deletecard' && $source) { try { if (preg_match('/pm_/', $source)) @@ -725,9 +691,7 @@ if (empty($reshook)) { $payment_method->detach(); } - } - else - { + } else { $cu = $stripe->customerStripe($object, $stripeacc, $servicestatus); $card = $cu->sources->retrieve("$source"); if ($card) { @@ -743,8 +707,7 @@ if (empty($reshook)) $url = DOL_URL_ROOT.'/societe/paymentmodes.php?socid='.$object->id; header('Location: '.$url); exit; - } - catch (Exception $e) + } catch (Exception $e) { $error++; setEventMessages($e->getMessage(), null, 'errors'); @@ -782,9 +745,7 @@ if (!$id) { $companybankaccount->fetch(0, $object->id); $companypaymentmode->fetch(0, null, $object->id, 'card'); -} -else -{ +} else { $companybankaccount->fetch($id); $companypaymentmode->fetch($id); } @@ -975,9 +936,7 @@ if ($socid && $action != 'edit' && $action != 'create' && $action != 'editcard' if (empty($conf->global->STRIPE_USE_INTENT_WITH_AUTOMATIC_CONFIRMATION)) { $listofsources = $customerstripe->sources->data; - } - else - { + } else { $service = 'StripeTest'; $servicestatus = 0; if (!empty($conf->global->STRIPE_LIVE) && !GETPOST('forcesandbox', 'alpha')) @@ -998,16 +957,14 @@ if ($socid && $action != 'edit' && $action != 'create' && $action != 'editcard' } $listofsources = $paymentmethodobjs->data; - } - catch (Exception $e) + } catch (Exception $e) { $error++; setEventMessages($e->getMessage(), null, 'errors'); } } } - } - catch (Exception $e) + } catch (Exception $e) { dol_syslog("Error when searching/loading Stripe customer for thirdparty id =".$object->id); } @@ -1104,8 +1061,7 @@ if ($socid && $action != 'edit' && $action != 'create' && $action != 'editcard' $img = picto_from_langcode($companypaymentmodetemp->country_code); print $img ? $img.' ' : ''; print getCountry($companypaymentmodetemp->country_code, 1); - } - else print img_warning().' '.$langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("CompanyCountry")).''; + } else print img_warning().' '.$langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("CompanyCountry")).''; print '
    '; @@ -1138,11 +1094,11 @@ if ($socid && $action != 'edit' && $action != 'create' && $action != 'editcard' print ''.$langs->trans("CreateCardOnStripe").''; } - print ''; + print ''; print img_picto($langs->trans("Modify"), 'edit'); print ''; print ' '; - print ''; // source='.$companypaymentmodetemp->stripe_card_ref.'& + print ''; // source='.$companypaymentmodetemp->stripe_card_ref.'& print img_picto($langs->trans("Delete"), 'delete'); print ''; } @@ -1152,8 +1108,7 @@ if ($socid && $action != 'edit' && $action != 'create' && $action != 'editcard' $i++; } } - } - else dol_print_error($db); + } else dol_print_error($db); } // Show remote sources (not already shown as local source) @@ -1193,20 +1148,16 @@ if ($socid && $action != 'edit' && $action != 'create' && $action != 'editcard' if ($src->object == 'card') { print img_credit_card($src->brand); - } - elseif ($src->object == 'source' && $src->type == 'card') + } elseif ($src->object == 'source' && $src->type == 'card') { print img_credit_card($src->card->brand); - } - elseif ($src->object == 'source' && $src->type == 'sepa_debit') + } elseif ($src->object == 'source' && $src->type == 'sepa_debit') { print ''; - } - elseif ($src->object == 'payment_method' && $src->type == 'card') + } elseif ($src->object == 'payment_method' && $src->type == 'card') { print img_credit_card($src->card->brand); - } - elseif ($src->object == 'payment_method' && $src->type == 'sepa_debit') + } elseif ($src->object == 'payment_method' && $src->type == 'sepa_debit') { print ''; } @@ -1222,10 +1173,8 @@ if ($socid && $action != 'edit' && $action != 'create' && $action != 'editcard' $img = picto_from_langcode($src->country); print $img ? $img.' ' : ''; print getCountry($src->country, 1); - } - else print img_warning().' '.$langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("CompanyCountry")).''; - } - elseif ($src->object == 'source' && $src->type == 'card') + } else print img_warning().' '.$langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("CompanyCountry")).''; + } elseif ($src->object == 'source' && $src->type == 'card') { print ''.$src->owner->name.'
    ....'.$src->card->last4.' - '.$src->card->exp_month.'/'.$src->card->exp_year.''; print '
    '; @@ -1235,10 +1184,8 @@ if ($socid && $action != 'edit' && $action != 'create' && $action != 'editcard' $img = picto_from_langcode($src->card->country); print $img ? $img.' ' : ''; print getCountry($src->card->country, 1); - } - else print img_warning().' '.$langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("CompanyCountry")).''; - } - elseif ($src->object == 'source' && $src->type == 'sepa_debit') + } else print img_warning().' '.$langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("CompanyCountry")).''; + } elseif ($src->object == 'source' && $src->type == 'sepa_debit') { print 'SEPA debit'; print ''; @@ -1247,10 +1194,8 @@ if ($socid && $action != 'edit' && $action != 'create' && $action != 'editcard' $img = picto_from_langcode($src->sepa_debit->country); print $img ? $img.' ' : ''; print getCountry($src->sepa_debit->country, 1); - } - else print img_warning().' '.$langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("CompanyCountry")).''; - } - elseif ($src->object == 'payment_method' && $src->type == 'card') + } else print img_warning().' '.$langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("CompanyCountry")).''; + } elseif ($src->object == 'payment_method' && $src->type == 'card') { print ''.$src->billing_details->name.'
    ....'.$src->card->last4.' - '.$src->card->exp_month.'/'.$src->card->exp_year.''; print '
    '; @@ -1260,10 +1205,8 @@ if ($socid && $action != 'edit' && $action != 'create' && $action != 'editcard' $img = picto_from_langcode($src->card->country); print $img ? $img.' ' : ''; print getCountry($src->card->country, 1); - } - else print img_warning().' '.$langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("CompanyCountry")).''; - } - elseif ($src->object == 'payment_method' && $src->type == 'sepa_debit') + } else print img_warning().' '.$langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("CompanyCountry")).''; + } elseif ($src->object == 'payment_method' && $src->type == 'sepa_debit') { print 'SEPA debit'; print ''; @@ -1272,10 +1215,8 @@ if ($socid && $action != 'edit' && $action != 'create' && $action != 'editcard' $img = picto_from_langcode($src->sepa_debit->country); print $img ? $img.' ' : ''; print getCountry($src->sepa_debit->country, 1); - } - else print img_warning().' '.$langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("CompanyCountry")).''; - } - else { + } else print img_warning().' '.$langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("CompanyCountry")).''; + } else { print ''; } print ''; if ($user->rights->societe->creer) { - print ''; + print ''; print img_picto($langs->trans("Modify"), 'edit'); print ''; - print ' '; - - print ''; + print ''; print img_picto($langs->trans("Delete"), 'delete'); print ''; } diff --git a/htdocs/societe/price.php b/htdocs/societe/price.php index 6d69e692a96..278a85fa7f5 100644 --- a/htdocs/societe/price.php +++ b/htdocs/societe/price.php @@ -466,18 +466,14 @@ if (!empty($conf->global->PRODUIT_CUSTOMER_PRICES)) { print '
    "; - } - else - { + } else { print $langs->trans('None'); } print "\n".'
    '."\n"; print ''; print "\n

    \n"; - } - else - { + } else { // View mode /* ************************************************************************** */ @@ -590,9 +586,7 @@ if (!empty($conf->global->PRODUIT_CUSTOMER_PRICES)) { print "
    '.$langs->trans('None').'
    '; if ($objp->subscription == 'yes') { print $langs->trans("SubscriptionNotReceived"); if ($objp->statut > 0) print " ".img_warning(); - } - else - { + } else { print ' '; } print '
    '.$langs->trans("StripeConnect").''.$langs->trans("StripeConnect_Mode").'
    '; $this->resprints .= ''; print "
    '; $this->resprints .= $langs->trans('StripeCustomer'); @@ -208,25 +204,19 @@ class ActionsStripeconnect { $langs->load("withdrawals"); print ''.$langs->trans("StripeConnectPay").''; - } - else - { + } else { print ''.$langs->trans("StripeConnectPay").''; } - } - elseif ($resteapayer == 0) + } elseif ($resteapayer == 0) { print ''.$langs->trans("StripeConnectPay").''; } - } - else { + } else { print ''.$langs->trans("StripeConnectPay").''; } - } - elseif (is_object($object) && $object->element == 'invoice_supplier') { + } elseif (is_object($object) && $object->element == 'invoice_supplier') { print ''.$langs->trans("StripeConnectPay").''; - } - elseif (is_object($object) && $object->element == 'member') { + } elseif (is_object($object) && $object->element == 'member') { print ''.$langs->trans("StripeAutoSubscription").''; } return 0; diff --git a/htdocs/stripe/class/stripe.class.php b/htdocs/stripe/class/stripe.class.php index a72e5291f58..f3bb30d7efb 100644 --- a/htdocs/stripe/class/stripe.class.php +++ b/htdocs/stripe/class/stripe.class.php @@ -95,8 +95,7 @@ class Stripe extends CommonObject $sql .= " AND service = '".$mode."'"; if ($fk_soc > 0) { $sql .= " AND fk_soc = ".$fk_soc; - } - else { + } else { $sql .= " AND fk_soc IS NULL"; } $sql .= " AND fk_user IS NULL AND fk_adherent IS NULL"; @@ -113,8 +112,7 @@ class Stripe extends CommonObject } else { $tokenstring = ''; } - } - else { + } else { dol_print_error($this->db); } @@ -189,14 +187,12 @@ class Stripe extends CommonObject } else { $customer = \Stripe\Customer::retrieve("$tiers", array("stripe_account" => $key)); } - } - catch (Exception $e) + } catch (Exception $e) { // For exemple, we may have error: 'No such customer: cus_XXXXX; a similar object exists in live mode, but a test mode key was used to make this request.' $this->error = $e->getMessage(); } - } - elseif ($createifnotlinkedtostripe) + } elseif ($createifnotlinkedtostripe) { $ipaddress = getUserRemoteIP(); @@ -254,15 +250,12 @@ class Stripe extends CommonObject { $this->error = $this->db->lasterror(); } - } - catch (Exception $e) + } catch (Exception $e) { $this->error = $e->getMessage(); } } - } - else - { + } else { dol_print_error($this->db); } @@ -290,8 +283,7 @@ class Stripe extends CommonObject } else { $stripepaymentmethod = \Stripe\PaymentMethod::retrieve(''.$paymentmethod->id.'', array("stripe_account" => $key)); } - } - catch (Exception $e) + } catch (Exception $e) { $this->error = $e->getMessage(); } @@ -481,8 +473,7 @@ class Stripe extends CommonObject $obj = $this->db->fetch_object($resql); if ($obj) $paymentintentalreadyexists++; } - } - else dol_print_error($this->db); + } else dol_print_error($this->db); // If not, we create it. if (!$paymentintentalreadyexists) @@ -498,20 +489,16 @@ class Stripe extends CommonObject dol_syslog(get_class($this)."::PaymentIntent failed to insert paymentintent with id=".$paymentintent->id." into database."); } } - } - else - { + } else { $_SESSION["stripe_payment_intent"] = $paymentintent; } - } - catch (Stripe\Error\Card $e) + } catch (Stripe\Error\Card $e) { $error++; $this->error = $e->getMessage(); $this->code = $e->getStripeCode(); $this->declinecode = $e->getDeclineCode(); - } - catch (Exception $e) + } catch (Exception $e) { /*var_dump($dataforintent); var_dump($description); @@ -531,9 +518,7 @@ class Stripe extends CommonObject if (!$error) { return $paymentintent; - } - else - { + } else { return null; } } @@ -657,8 +642,7 @@ class Stripe extends CommonObject { $_SESSION["stripe_setup_intent"] = $setupintent; }*/ - } - catch (Exception $e) + } catch (Exception $e) { /*var_dump($dataforintent); var_dump($description); @@ -674,9 +658,7 @@ class Stripe extends CommonObject { dol_syslog("getSetupIntent ".(is_object($setupintent) ? $setupintent->id : ''), LOG_INFO, -1); return $setupintent; - } - else - { + } else { dol_syslog("getSetupIntent return error=".$error, LOG_INFO, -1); return null; } @@ -720,9 +702,7 @@ class Stripe extends CommonObject if (!preg_match('/^pm_/', $cardref)) { $card = $cu->sources->retrieve($cardref); - } - else - { + } else { $card = \Stripe\PaymentMethod::retrieve($cardref); } } else { @@ -730,20 +710,17 @@ class Stripe extends CommonObject { //$card = $cu->sources->retrieve($cardref, array("stripe_account" => $stripeacc)); // this API fails when array stripe_account is provided $card = $cu->sources->retrieve($cardref); - } - else { + } else { //$card = \Stripe\PaymentMethod::retrieve($cardref, array("stripe_account" => $stripeacc)); // Don't know if this works $card = \Stripe\PaymentMethod::retrieve($cardref); } } - } - catch (Exception $e) + } catch (Exception $e) { $this->error = $e->getMessage(); dol_syslog($this->error, LOG_WARNING); } - } - elseif ($createifnotlinkedtostripe) + } elseif ($createifnotlinkedtostripe) { $exp_date_month = $obj->exp_date_month; $exp_date_year = $obj->exp_date_year; @@ -768,9 +745,7 @@ class Stripe extends CommonObject { $this->error = 'Creation of card on Stripe has failed'; } - } - else - { + } else { $connect = ''; if (!empty($stripeacc)) $connect = $stripeacc.'/'; $url = 'https://dashboard.stripe.com/'.$connect.'test/customers/'.$cu->id; @@ -792,9 +767,7 @@ class Stripe extends CommonObject { $this->error = 'Creation of card on Stripe has failed'; } - } - else - { + } else { $connect = ''; if (!empty($stripeacc)) $connect = $stripeacc.'/'; $url = 'https://dashboard.stripe.com/'.$connect.'test/customers/'.$cu->id; @@ -823,17 +796,14 @@ class Stripe extends CommonObject $this->error = $this->db->lasterror(); } } - } - catch (Exception $e) + } catch (Exception $e) { $this->error = $e->getMessage(); dol_syslog($this->error, LOG_WARNING); } } } - } - else - { + } else { dol_print_error($this->db); } @@ -943,9 +913,7 @@ class Stripe extends CommonObject if ($paymentintent->status == 'succeeded') { $charge->status = 'ok'; - } - else - { + } else { $charge->status = 'failed'; $charge->failure_code = $stripe->code; $charge->failure_message = $stripe->error; @@ -954,8 +922,7 @@ class Stripe extends CommonObject $stripefailuremessage = $stripe->error; $stripefailuredeclinecode = $stripe->declinecode; } - } - elseif (preg_match('/acct_/i', $source)) + } elseif (preg_match('/acct_/i', $source)) { $charge = \Stripe\Charge::create(array( "amount" => "$stripeamount", @@ -1038,17 +1005,13 @@ class Stripe extends CommonObject { $charge->status = 'ok'; $charge->id = $paymentintent->id; - } - else - { + } else { $charge->status = 'failed'; $charge->failure_code = $stripe->code; $charge->failure_message = $stripe->error; $charge->failure_declinecode = $stripe->declinecode; } - } - else - { + } else { $charge = \Stripe\Charge::create($paymentarray, array("idempotency_key" => "$description", "stripe_account" => "$account")); } } @@ -1060,9 +1023,7 @@ class Stripe extends CommonObject if (preg_match('/pm_/i', $source)) { $return->message = 'Payment retreived by card status = '.$charge->status; - } - else - { + } else { if ($charge->source->type == 'card') { $return->message = $charge->source->card->brand." ....".$charge->source->card->last4; } elseif ($charge->source->type == 'three_d_secure') { diff --git a/htdocs/stripe/config.php b/htdocs/stripe/config.php index 730203245f4..e6dc75c04ec 100644 --- a/htdocs/stripe/config.php +++ b/htdocs/stripe/config.php @@ -47,9 +47,7 @@ $stripearrayofkeys = array(); if (empty($conf->global->STRIPE_LIVE) || GETPOST('forcesandbox', 'alpha')) { $stripearrayofkeys = $stripearrayofkeysbyenv[0]; // Test -} -else -{ +} else { $stripearrayofkeys = $stripearrayofkeysbyenv[1]; // Live } diff --git a/htdocs/stripe/payout.php b/htdocs/stripe/payout.php index 10316ec2ece..6823c32c0b7 100644 --- a/htdocs/stripe/payout.php +++ b/htdocs/stripe/payout.php @@ -36,13 +36,13 @@ $socid = GETPOST("socid", "int"); if ($user->socid) $socid = $user->socid; //$result = restrictedArea($user, 'salaries', '', '', ''); -$limit = GETPOST('limit', 'int') ?GETPOST('limit', 'int') : $conf->liste_limit; +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $rowid = GETPOST("rowid", 'alpha'); $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; @@ -64,9 +64,7 @@ if (!empty($conf->stripe->enabled) && (empty($conf->global->STRIPE_LIVE) || GETP $service = 'StripeTest'; $servicestatus = '0'; dol_htmloutput_mesg($langs->trans('YouAreCurrentlyInSandboxMode', 'Stripe'), '', 'warning'); -} -else -{ +} else { $service = 'StripeLive'; $servicestatus = '1'; } @@ -114,9 +112,7 @@ if (!$rowid) { if ($stripeacc) { $payout = \Stripe\Payout::all(array("limit" => $limit), array("stripe_account" => $stripeacc)); - } - else - { + } else { $payout = \Stripe\Payout::all(array("limit" => $limit)); } diff --git a/htdocs/stripe/transaction.php b/htdocs/stripe/transaction.php index 59858a69262..6f74d1a48c0 100644 --- a/htdocs/stripe/transaction.php +++ b/htdocs/stripe/transaction.php @@ -36,13 +36,13 @@ $socid = GETPOST("socid", "int"); if ($user->socid) $socid = $user->socid; //$result = restrictedArea($user, 'salaries', '', '', ''); -$limit = GETPOST('limit', 'int') ?GETPOST('limit', 'int') : $conf->liste_limit; +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $rowid = GETPOST("rowid", 'alpha'); $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; @@ -65,9 +65,7 @@ if (!empty($conf->stripe->enabled) && (empty($conf->global->STRIPE_LIVE) || GETP $service = 'StripeTest'; $servicestatus = '0'; dol_htmloutput_mesg($langs->trans('YouAreCurrentlyInSandboxMode', 'Stripe'), '', 'warning'); -} -else -{ +} else { $service = 'StripeLive'; $servicestatus = '1'; } @@ -113,9 +111,7 @@ if (!$rowid) { if ($stripeacc) { $txn = \Stripe\BalanceTransaction::all(array("limit" => $limit), array("stripe_account" => $stripeacc)); - } - else - { + } else { $txn = \Stripe\BalanceTransaction::all(array("limit" => $limit)); } diff --git a/htdocs/supplier_proposal/card.php b/htdocs/supplier_proposal/card.php index 5910f77a819..dc696dcea90 100644 --- a/htdocs/supplier_proposal/card.php +++ b/htdocs/supplier_proposal/card.php @@ -133,17 +133,13 @@ if (empty($reshook)) if (1 == 0 && !GETPOST('clone_content') && !GETPOST('clone_receivers')) { setEventMessages($langs->trans("NoCloneOptionsSpecified"), null, 'errors'); - } - else - { + } else { if ($object->id > 0) { $result = $object->createFromClone($user, $socid); if ($result > 0) { header("Location: ".$_SERVER['PHP_SELF'].'?id='.$result); exit(); - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); $action = ''; } @@ -221,9 +217,7 @@ if (empty($reshook)) if (count($object->errors) > 0) setEventMessages($object->error, $object->errors, 'errors'); else setEventMessages($langs->trans($object->error), null, 'errors'); } - } - - elseif ($action == 'setdate_livraison' && $user->rights->supplier_proposal->creer) + } elseif ($action == 'setdate_livraison' && $user->rights->supplier_proposal->creer) { $result = $object->set_date_livraison($user, dol_mktime(12, 0, 0, $_POST['liv_month'], $_POST['liv_day'], $_POST['liv_year'])); if ($result < 0) @@ -353,7 +347,7 @@ if (empty($reshook)) } // Extrafields - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED) && method_exists($lines[$i], 'fetch_optionals')) { + if (method_exists($lines[$i], 'fetch_optionals')) { $lines[$i]->fetch_optionals(); $array_options = $lines[$i]->array_options; } @@ -411,8 +405,7 @@ if (empty($reshook)) $error++; } } // Standard creation - else - { + else { $id = $object->create($user); } @@ -442,15 +435,11 @@ if (empty($reshook)) header('Location: '.$_SERVER["PHP_SELF"].'?id='.$id); exit(); - } - else - { + } else { $db->rollback(); $action = 'create'; } - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); $db->rollback(); $action = 'create'; @@ -520,9 +509,7 @@ if (empty($reshook)) $ret = $object->fetch($id); // Reload to get new records $object->generateDocument($object->modelpdf, $outputlangs, $hidedetails, $hidedesc, $hideref); } - } - - elseif ($action == "setabsolutediscount" && $user->rights->supplier_proposal->creer) { + } elseif ($action == "setabsolutediscount" && $user->rights->supplier_proposal->creer) { if ($_POST["remise_id"]) { if ($object->id > 0) { $result = $object->insert_discount($_POST["remise_id"]); @@ -551,9 +538,7 @@ if (empty($reshook)) $idprod = 0; $price_ht = GETPOST('price_ht'); $tva_tx = (GETPOST('tva_tx') ? GETPOST('tva_tx') : 0); - } - else - { + } else { $idprod = GETPOST('idprod', 'int'); $price_ht = ''; $tva_tx = ''; @@ -621,14 +606,11 @@ if (empty($reshook)) { $productsupplier->ref_supplier = ''; } - } - else - { + } else { $fksoctosearch = $object->thirdparty->id; $productsupplier->get_buyprice(0, -1, $idprod, 'none', $fksoctosearch); // We force qty to -1 to be sure to find if a supplier price exist } - } - elseif (GETPOST('idprodfournprice', 'alpha') > 0) + } elseif (GETPOST('idprodfournprice', 'alpha') > 0) { //$qtytosearch=$qty; // Just to see if a price exists for the quantity. Not used to found vat. $qtytosearch = -1; // We force qty to -1 to be sure to find if the supplier price that exists @@ -715,8 +697,7 @@ if (empty($reshook)) $langs->load("errors"); setEventMessages($langs->trans("ErrorQtyTooLowForThisSupplier"), null, 'errors'); } - } - elseif ((GETPOST('price_ht') !== '' || GETPOST('price_ttc') !== '' || GETPOST('multicurrency_price_ht') != '') && empty($error)) // Free product. // $price_ht is already set + } elseif ((GETPOST('price_ht') !== '' || GETPOST('price_ttc') !== '' || GETPOST('multicurrency_price_ht') != '') && empty($error)) // Free product. // $price_ht is already set { $pu_ht = price2num($price_ht, 'MU'); $pu_ttc = price2num(GETPOST('price_ttc'), 'MU'); @@ -737,9 +718,7 @@ if (empty($reshook)) if ($price_ht !== '') { $pu_ht = price2num($price_ht, 'MU'); // $pu_ht must be rounded according to settings - } - else - { + } else { $pu_ttc = price2num(GETPOST('price_ttc'), 'MU'); $pu_ht = price2num($pu_ttc / (1 + ($tva_tx / 100)), 'MU'); // $pu_ht must be rounded according to settings } @@ -834,9 +813,7 @@ if (empty($reshook)) unset($_POST['date_endday']); unset($_POST['date_endmonth']); unset($_POST['date_endyear']); - } - else - { + } else { $db->rollback(); setEventMessages($object->error, $object->errors, 'errors'); @@ -1011,9 +988,7 @@ if (empty($reshook)) setEventMessages($object->error, $object->errors, 'errors'); } } - } - - elseif ($action == 'updateline' && $user->rights->supplier_proposal->creer && GETPOST('cancel', 'alpha') == $langs->trans('Cancel')) { + } elseif ($action == 'updateline' && $user->rights->supplier_proposal->creer && GETPOST('cancel', 'alpha') == $langs->trans('Cancel')) { header('Location: '.$_SERVER['PHP_SELF'].'?id='.$object->id); // Pour reaffichage de la fiche en cours d'edition exit(); } @@ -1031,13 +1006,9 @@ if (empty($reshook)) // Terms of payments elseif ($action == 'setconditions' && $user->rights->supplier_proposal->creer) { $result = $object->setPaymentTerms(GETPOST('cond_reglement_id', 'int')); - } - - elseif ($action == 'setremisepercent' && $user->rights->supplier_proposal->creer) { + } elseif ($action == 'setremisepercent' && $user->rights->supplier_proposal->creer) { $result = $object->set_remise_percent($user, $_POST['remise_percent']); - } - - elseif ($action == 'setremiseabsolue' && $user->rights->supplier_proposal->creer) { + } elseif ($action == 'setremiseabsolue' && $user->rights->supplier_proposal->creer) { $result = $object->set_remise_absolue($user, $_POST['remise_absolue']); } @@ -1054,9 +1025,7 @@ if (empty($reshook)) // Multicurrency rate elseif ($action == 'setmulticurrencyrate' && $user->rights->supplier_proposal->creer) { $result = $object->setMulticurrencyRate(price2num(GETPOST('multicurrency_tx'))); - } - - elseif ($action == 'update_extras') { + } elseif ($action == 'update_extras') { $object->oldcopy = dol_clone($object); // Fill array 'array_options' with data from update form @@ -1098,7 +1067,7 @@ if ($action == 'create') { $currency_code = $conf->currency; - print load_fiche_titre($langs->trans("NewAskPrice")); + print load_fiche_titre($langs->trans("NewAskPrice"), '', 'supplier_proposal'); $soc = new Societe($db); if ($socid > 0) @@ -1138,9 +1107,7 @@ if ($action == 'create') if (!empty($objectsrc->multicurrency_code)) $currency_code = $objectsrc->multicurrency_code; if (!empty($conf->global->MULTICURRENCY_USE_ORIGIN_TX) && !empty($objectsrc->multicurrency_tx)) $currency_tx = $objectsrc->multicurrency_tx; } - } - else - { + } else { $cond_reglement_id = $soc->cond_reglement_supplier_id; $mode_reglement_id = $soc->mode_reglement_supplier_id; if (!empty($conf->multicurrency->enabled) && !empty($soc->multicurrency_code)) $currency_code = $soc->multicurrency_code; @@ -1895,8 +1862,7 @@ if ($action == 'create') if ($object->statut == SupplierProposal::STATUS_VALIDATED || $object->statut == SupplierProposal::STATUS_SIGNED) { if (empty($conf->global->MAIN_USE_ADVANCED_PERMS) || $user->rights->supplier_proposal->send_advance) { print ''; - } else - print ''; + } else print ''; } } diff --git a/htdocs/supplier_proposal/class/api_supplier_proposals.class.php b/htdocs/supplier_proposal/class/api_supplier_proposals.class.php index 3fbe3afa021..3eea10bdf13 100644 --- a/htdocs/supplier_proposal/class/api_supplier_proposals.class.php +++ b/htdocs/supplier_proposal/class/api_supplier_proposals.class.php @@ -160,8 +160,7 @@ class Supplierproposals extends DolibarrApi } $i++; } - } - else { + } else { throw new RestException(503, 'Error when retrieving supplier proposal list : '.$db->lasterror()); } if (!count($obj_ret)) { diff --git a/htdocs/supplier_proposal/class/supplier_proposal.class.php b/htdocs/supplier_proposal/class/supplier_proposal.class.php index 3e69fbc167f..907a741c288 100644 --- a/htdocs/supplier_proposal/class/supplier_proposal.class.php +++ b/htdocs/supplier_proposal/class/supplier_proposal.class.php @@ -273,9 +273,7 @@ class SupplierProposal extends CommonObject if ($conf->global->PRODUIT_MULTIPRICES && $this->thirdparty->price_level) { $price = $prod->multiprices[$this->thirdparty->price_level]; - } - else - { + } else { $price = $prod->price; } @@ -346,22 +344,16 @@ class SupplierProposal extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = $supplier_proposalligne->error; $this->db->rollback(); return -2; } - } - else - { + } else { $this->db->rollback(); return -2; } @@ -430,9 +422,7 @@ class SupplierProposal extends CommonObject if ($price_base_type == 'HT') { $pu = $pu_ht; - } - else - { + } else { $pu = $pu_ttc; } @@ -492,17 +482,13 @@ class SupplierProposal extends CommonObject dol_syslog(get_class($this)."::addline result=".$result." - ".$this->error, LOG_ERR); return -1; } - } - else - { + } else { $this->error = $prod->error; $this->db->rollback(); return -1; } } - } - else - { + } else { $product_type = $type; } @@ -622,23 +608,17 @@ class SupplierProposal extends CommonObject { $this->db->commit(); return $this->line->id; - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = $this->line->error; $this->db->rollback(); return -2; } - } - else - { + } else { $this->error = 'BadStatusOfObjectToAddLine'; return -5; } @@ -808,16 +788,12 @@ class SupplierProposal extends CommonObject $this->db->commit(); return $result; - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -1; } - } - else - { + } else { dol_syslog(get_class($this)."::updateline Erreur -2 SupplierProposal en mode incompatible pour cette action"); return -2; } @@ -844,14 +820,10 @@ class SupplierProposal extends CommonObject $this->update_price(1); return 1; - } - else - { + } else { return -1; } - } - else - { + } else { return -2; } } @@ -1063,7 +1035,7 @@ class SupplierProposal extends CommonObject $action = 'update'; // Actions on extra fields - if (!$error && empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) + if (!$error) { $result = $this->insertExtraFields(); if ($result < 0) @@ -1079,16 +1051,12 @@ class SupplierProposal extends CommonObject if ($result < 0) { $error++; } // End call triggers } - } - else - { + } else { $this->error = $this->db->lasterror(); $error++; } } - } - else - { + } else { $this->error = $this->db->lasterror(); $error++; } @@ -1098,15 +1066,11 @@ class SupplierProposal extends CommonObject $this->db->commit(); dol_syslog(get_class($this)."::create done id=".$this->id); return $this->id; - } - else - { + } else { $this->db->rollback(); return -2; } - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -1; @@ -1167,9 +1131,7 @@ class SupplierProposal extends CommonObject } // TODO Change product price if multi-prices - } - else - { + } else { $objsoc->fetch($this->socid); } @@ -1217,9 +1179,7 @@ class SupplierProposal extends CommonObject { $this->db->commit(); return $this->id; - } - else - { + } else { $this->db->rollback(); return -1; } @@ -1410,9 +1370,7 @@ class SupplierProposal extends CommonObject $i++; } $this->db->free($result); - } - else - { + } else { $this->error = $this->db->error(); return -1; } @@ -1426,9 +1384,7 @@ class SupplierProposal extends CommonObject $this->error = "Record Not Found"; return 0; - } - else - { + } else { $this->error = $this->db->error(); return -1; } @@ -1463,9 +1419,7 @@ class SupplierProposal extends CommonObject if (!$error && (preg_match('/^[\(]?PROV/i', $this->ref) || empty($this->ref))) // empty should not happened, but when it occurs, the test save life { $num = $this->getNextNumRef($soc); - } - else - { + } else { $num = $this->ref; } $this->newref = dol_sanitizeFileName($num); @@ -1538,15 +1492,11 @@ class SupplierProposal extends CommonObject $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } - } - else - { + } else { dol_syslog("You don't have permission to validate supplier proposal", LOG_WARNING); return -2; } @@ -1573,9 +1523,7 @@ class SupplierProposal extends CommonObject { $this->date_livraison = $date_livraison; return 1; - } - else - { + } else { $this->error = $this->db->error(); dol_syslog(get_class($this)."::set_date_livraison Erreur SQL"); return -1; @@ -1608,9 +1556,7 @@ class SupplierProposal extends CommonObject $this->remise_percent = $remise; $this->update_price(1); return 1; - } - else - { + } else { $this->error = $this->db->error(); return -1; } @@ -1644,9 +1590,7 @@ class SupplierProposal extends CommonObject $this->remise_absolue = $remise; $this->update_price(1); return 1; - } - else - { + } else { $this->error = $this->db->error(); return -1; } @@ -1708,9 +1652,7 @@ class SupplierProposal extends CommonObject } $this->db->rollback(); return -1 * $error; - } - else - { + } else { $this->db->commit(); return 1; } @@ -1782,15 +1724,11 @@ class SupplierProposal extends CommonObject { $this->db->commit(); return 1; - } - else - { + } else { $this->db->rollback(); return -1; } - } - else - { + } else { $this->error = $this->db->lasterror(); $this->errors[] = $this->db->lasterror(); $this->db->rollback(); @@ -1892,8 +1830,7 @@ class SupplierProposal extends CommonObject $values[] = $product->multicurrency_subprice; $values[] = $product->multicurrency_total_ht; $values[] = $multicurrency->rate->rate; - } - else { + } else { for ($i = 0; $i < 5; $i++) $values[] = 'NULL'; } } @@ -1957,9 +1894,7 @@ class SupplierProposal extends CommonObject $this->db->rollback(); return -1; } - } - else - { + } else { return -1; } } @@ -2019,13 +1954,10 @@ class SupplierProposal extends CommonObject if ($shortlist == 1) { $ga[$obj->supplier_proposalid] = $obj->ref; - } - elseif ($shortlist == 2) + } elseif ($shortlist == 2) { $ga[$obj->supplier_proposalid] = $obj->ref.' ('.$obj->name.')'; - } - else - { + } else { $ga[$i]['id'] = $obj->supplier_proposalid; $ga[$i]['ref'] = $obj->ref; $ga[$i]['name'] = $obj->name; @@ -2035,9 +1967,7 @@ class SupplierProposal extends CommonObject } } return $ga; - } - else - { + } else { dol_print_error($this->db); return -1; } @@ -2069,11 +1999,14 @@ class SupplierProposal extends CommonObject if (!$error) { + $main = MAIN_DB_PREFIX.'supplier_proposaldet'; + $ef = $main."_extrafields"; + $sqlef = "DELETE FROM $ef WHERE fk_object IN (SELECT rowid FROM $main WHERE fk_supplier_proposal = ".$this->id.")"; $sql = "DELETE FROM ".MAIN_DB_PREFIX."supplier_proposaldet WHERE fk_supplier_proposal = ".$this->id; if ($this->db->query($sql)) { $sql = "DELETE FROM ".MAIN_DB_PREFIX."supplier_proposal WHERE rowid = ".$this->id; - if ($this->db->query($sql)) + if ($this->db->query($sqlef) && $this->db->query($sql)) { // Delete linked object $res = $this->deleteObjectLinked(); @@ -2116,16 +2049,13 @@ class SupplierProposal extends CommonObject // Removed extrafields if (!$error) { - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used - { - $result = $this->deleteExtraFields(); - if ($result < 0) - { - $error++; - $errorflag = -4; - dol_syslog(get_class($this)."::delete erreur ".$errorflag." ".$this->error, LOG_ERR); - } - } + $result = $this->deleteExtraFields(); + if ($result < 0) + { + $error++; + $errorflag = -4; + dol_syslog(get_class($this)."::delete erreur ".$errorflag." ".$this->error, LOG_ERR); + } } if (!$error) @@ -2133,30 +2063,22 @@ class SupplierProposal extends CommonObject dol_syslog(get_class($this)."::delete ".$this->id." by ".$user->id, LOG_DEBUG); $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return 0; } - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -3; } - } - else - { + } else { $this->error = $this->db->lasterror(); $this->db->rollback(); return -2; } - } - else - { + } else { $this->db->rollback(); return -1; } @@ -2209,9 +2131,7 @@ class SupplierProposal extends CommonObject } } $this->db->free($result); - } - else - { + } else { dol_print_error($this->db); } } @@ -2340,9 +2260,7 @@ class SupplierProposal extends CommonObject // if ($mode == 'signed' && ! count($this->FactureListeArray($obj->rowid))) $this->nbtodolate++; } return $response; - } - else - { + } else { $this->error = $this->db->lasterror(); return -1; } @@ -2409,9 +2327,7 @@ class SupplierProposal extends CommonObject $line->total_ttc = 59.8; $line->total_tva = 9.8; $line->remise_percent = 50; - } - else - { + } else { $line->total_ht = 100; $line->total_ttc = 119.6; $line->total_tva = 19.6; @@ -2465,13 +2381,11 @@ class SupplierProposal extends CommonObject // This assignment in condition is not a bug. It allows walking the results. while ($obj = $this->db->fetch_object($resql)) { - $this->nb["askprice"] = $obj->nb; + $this->nb["supplier_proposals"] = $obj->nb; } $this->db->free($resql); return 1; - } - else - { + } else { dol_print_error($this->db); $this->error = $this->db->lasterror(); return -1; @@ -2520,15 +2434,11 @@ class SupplierProposal extends CommonObject if ($numref != "") { return $numref; - } - else - { + } else { $this->error = $obj->error; return ""; } - } - else - { + } else { $langs->load("errors"); print $langs->trans("Error")." ".$langs->trans("ErrorModuleSetupNotComplete", $langs->transnoentitiesnoconv("SupplierProposal")); return ""; @@ -2698,9 +2608,7 @@ class SupplierProposal extends CommonObject $this->db->free($resql); return 1; - } - else - { + } else { $this->error = $this->db->error(); return -1; } @@ -2994,9 +2902,7 @@ class SupplierProposalLine extends CommonObjectLine $this->fk_unit = $objp->fk_unit; $this->db->free($result); - } - else - { + } else { dol_print_error($this->db); } } @@ -3041,9 +2947,7 @@ class SupplierProposalLine extends CommonObjectLine if (($result = $this->defineBuyPrice($this->subprice, $this->remise_percent, $this->fk_product)) < 0) { return $result; - } - else - { + } else { $this->pa_ht = $result; } } @@ -3106,7 +3010,7 @@ class SupplierProposalLine extends CommonObjectLine { $this->id = $this->db->last_insert_id(MAIN_DB_PREFIX.'supplier_proposaldet'); - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + if (!$error) { $result = $this->insertExtraFields(); if ($result < 0) @@ -3129,9 +3033,7 @@ class SupplierProposalLine extends CommonObjectLine $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->error()." sql=".$sql; $this->db->rollback(); return -1; @@ -3155,7 +3057,7 @@ class SupplierProposalLine extends CommonObjectLine if ($this->db->query($sql)) { // Remove extrafields - if ((!$error) && (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED))) // For avoid conflicts if trigger used + if (!$error) { $result = $this->deleteExtraFields(); if ($result < 0) @@ -3177,9 +3079,7 @@ class SupplierProposalLine extends CommonObjectLine $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->error()." sql=".$sql; $this->db->rollback(); return -1; @@ -3224,9 +3124,7 @@ class SupplierProposalLine extends CommonObjectLine if (($result = $this->defineBuyPrice($this->subprice, $this->remise_percent, $this->fk_product)) < 0) { return $result; - } - else - { + } else { $this->pa_ht = $result; } } @@ -3277,7 +3175,7 @@ class SupplierProposalLine extends CommonObjectLine $resql = $this->db->query($sql); if ($resql) { - if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used + if (!$error) { $result = $this->insertExtraFields(); if ($result < 0) @@ -3300,9 +3198,7 @@ class SupplierProposalLine extends CommonObjectLine $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -2; @@ -3335,9 +3231,7 @@ class SupplierProposalLine extends CommonObjectLine { $this->db->commit(); return 1; - } - else - { + } else { $this->error = $this->db->error(); $this->db->rollback(); return -2; diff --git a/htdocs/supplier_proposal/contact.php b/htdocs/supplier_proposal/contact.php index 43c9b91f563..4bd027299fa 100644 --- a/htdocs/supplier_proposal/contact.php +++ b/htdocs/supplier_proposal/contact.php @@ -65,16 +65,12 @@ if ($action == 'addcontact' && $permissiontoedit) { header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else - { + } else { if ($object->error == 'DB_ERROR_RECORD_ALREADY_EXISTS') { $langs->load("errors"); setEventMessages($langs->trans("ErrorThisContactIsAlreadyDefinedAsThisType"), null, 'errors'); - } - else - { + } else { setEventMessages($object->error, $object->errors, 'errors'); } } @@ -86,9 +82,7 @@ elseif ($action == 'swapstatut' && $permissiontoedit) if ($object->fetch($id)) { $result = $object->swapContactStatus(GETPOST('ligne')); - } - else - { + } else { dol_print_error($db); } } @@ -103,8 +97,7 @@ elseif ($action == 'deletecontact' && $permissiontoedit) { header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; - } - else { + } else { dol_print_error($db); } } @@ -194,9 +187,7 @@ if ($id > 0 || !empty($ref)) // Contacts lines include DOL_DOCUMENT_ROOT.'/core/tpl/contacts.tpl.php'; - } - else - { + } else { // Contact not found print "ErrorRecordNotFound"; } diff --git a/htdocs/supplier_proposal/document.php b/htdocs/supplier_proposal/document.php index 8a6ec8f1bab..5b58c7de461 100644 --- a/htdocs/supplier_proposal/document.php +++ b/htdocs/supplier_proposal/document.php @@ -52,11 +52,12 @@ if (!empty($user->socid)) $result = restrictedArea($user, 'supplier_proposal', $id); // Get parameters +$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'alpha'); $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int'); if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 -$offset = $conf->liste_limit * $page; +$offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; if (!$sortorder) $sortorder = "ASC"; @@ -165,9 +166,7 @@ if ($object->id > 0) $permtoedit = $user->rights->supplier_proposal->creer; $param = '&id='.$object->id; include_once DOL_DOCUMENT_ROOT.'/core/tpl/document_actions_post_headers.tpl.php'; -} -else -{ +} else { print $langs->trans("ErrorUnknown"); } diff --git a/htdocs/supplier_proposal/index.php b/htdocs/supplier_proposal/index.php index e337f11dfe9..6ba425f323a 100644 --- a/htdocs/supplier_proposal/index.php +++ b/htdocs/supplier_proposal/index.php @@ -58,14 +58,12 @@ $help_url = "EN:Module_Ask_Price_Supplier|FR:Module_Demande_de_prix_fournisseur" llxHeader("", $langs->trans("SupplierProposalArea"), $help_url); -print load_fiche_titre($langs->trans("SupplierProposalArea"), '', 'commercial'); +print load_fiche_titre($langs->trans("SupplierProposalArea"), '', 'supplier_proposal'); print '
    '; -/* - * Search form - */ +// Search form if (!empty($conf->global->MAIN_SEARCH_FORM_ON_HOME_AREAS)) // This is useless due to the global search combo { @@ -81,9 +79,7 @@ if (!empty($conf->global->MAIN_SEARCH_FORM_ON_HOME_AREAS)) // This is useles } -/* - * Statistics - */ +// Statistics $sql = "SELECT count(p.rowid), p.fk_statut"; $sql .= " FROM ".MAIN_DB_PREFIX."societe as s"; @@ -166,9 +162,7 @@ if ($resql) print '
    '.$langs->trans("Total").''.$total.'

    "; -} -else -{ +} else { dol_print_error($db); } @@ -298,8 +292,7 @@ if ($resql) } } print "

    "; -} -else dol_print_error($db); +} else dol_print_error($db); /* @@ -380,16 +373,13 @@ if (!empty($conf->supplier_proposal->enabled) && $user->rights->supplier_proposa if ($num > $nbofloop) { print ''.$langs->trans("XMoreLines", ($num - $nbofloop)).""; - } - elseif ($total > 0) + } elseif ($total > 0) { print ''.$langs->trans("Total").''.price($total)." "; } print "

    "; } - } - else - { + } else { dol_print_error($db); } } diff --git a/htdocs/supplier_proposal/list.php b/htdocs/supplier_proposal/list.php index 28dbc3e12b8..d0ea3a2b625 100644 --- a/htdocs/supplier_proposal/list.php +++ b/htdocs/supplier_proposal/list.php @@ -358,9 +358,7 @@ if ($resql) $soc = new Societe($db); $soc->fetch($socid); $title = $langs->trans('ListOfSupplierProposals').' - '.$soc->name; - } - else - { + } else { $title = $langs->trans('ListOfSupplierProposals'); } @@ -431,7 +429,7 @@ if ($resql) print ''; print ''; - print_barre_liste($title, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'commercial', 0, $newcardbutton, '', $limit, 0, 0, 1); + print_barre_liste($title, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'supplier_proposal', 0, $newcardbutton, '', $limit, 0, 0, 1); $topicmail = "SendSupplierProposalRef"; $modelmail = "supplier_proposal_send"; @@ -534,7 +532,7 @@ if ($resql) // Date if (!empty($arrayfields['sp.date_valid']['checked'])) { - print ''; + print ''; //print $langs->trans('Month').': '; print ''; //print ' '.$langs->trans('Year').': '; @@ -545,7 +543,7 @@ if ($resql) // Date if (!empty($arrayfields['sp.date_livraison']['checked'])) { - print ''; + print ''; //print $langs->trans('Month').': '; print ''; //print ' '.$langs->trans('Year').': '; @@ -878,7 +876,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, 'totalarray'=>&$totalarray); $reshook = $hookmanager->executeHooks('printFieldListValue', $parameters); // Note that $action and $object may have been modified by hook print $hookmanager->resPrint; // Date creation @@ -950,9 +948,7 @@ if ($resql) $delallowed = $user->rights->supplier_proposal->creer; print $formfile->showdocuments('massfilesarea_supplier_proposal', '', $filedir, $urlsource, 0, $delallowed, '', 1, 1, 0, 48, 1, $param, $title, '', '', '', null, $hidegeneratedfilelistifempty); -} -else -{ +} else { dol_print_error($db); } diff --git a/htdocs/support/inc.php b/htdocs/support/inc.php index c12526bbe85..43077495238 100644 --- a/htdocs/support/inc.php +++ b/htdocs/support/inc.php @@ -66,87 +66,83 @@ if (!file_exists($conffile)) // Load conf file if it is already defined -if (! defined('DONOTLOADCONF') && file_exists($conffile) && filesize($conffile) > 8) // Test on filesize is to ensure that conf file is more that an empty template with just 8) // Test on filesize is to ensure that conf file is more that an empty template with just global->MAIN_LOGTOHTML = 1; // Define prefix -if (! isset($dolibarr_main_db_prefix) || ! $dolibarr_main_db_prefix) $dolibarr_main_db_prefix='llx_'; -define('MAIN_DB_PREFIX', (isset($dolibarr_main_db_prefix)?$dolibarr_main_db_prefix:'')); +if (!isset($dolibarr_main_db_prefix) || !$dolibarr_main_db_prefix) $dolibarr_main_db_prefix = 'llx_'; +define('MAIN_DB_PREFIX', (isset($dolibarr_main_db_prefix) ? $dolibarr_main_db_prefix : '')); -define('DOL_CLASS_PATH', 'class/'); // Filsystem path to class dir -define('DOL_DATA_ROOT', (isset($dolibarr_main_data_root)?$dolibarr_main_data_root:'')); -define('DOL_MAIN_URL_ROOT', (isset($dolibarr_main_url_root)?$dolibarr_main_url_root:'')); // URL relative root -$uri=preg_replace('/^http(s?):\/\//i', '', constant('DOL_MAIN_URL_ROOT')); // $uri contains url without http* -$suburi = strstr($uri, '/'); // $suburi contains url without domain -if ($suburi == '/') $suburi = ''; // If $suburi is /, it is now '' -define('DOL_URL_ROOT', $suburi); // URL relative root ('', '/dolibarr', ...) +define('DOL_CLASS_PATH', 'class/'); // Filsystem path to class dir +define('DOL_DATA_ROOT', (isset($dolibarr_main_data_root) ? $dolibarr_main_data_root : '')); +define('DOL_MAIN_URL_ROOT', (isset($dolibarr_main_url_root) ? $dolibarr_main_url_root : '')); // URL relative root +$uri = preg_replace('/^http(s?):\/\//i', '', constant('DOL_MAIN_URL_ROOT')); // $uri contains url without http* +$suburi = strstr($uri, '/'); // $suburi contains url without domain +if ($suburi == '/') $suburi = ''; // If $suburi is /, it is now '' +define('DOL_URL_ROOT', $suburi); // URL relative root ('', '/dolibarr', ...) -if (empty($character_set_client)) $character_set_client="UTF-8"; -$conf->file->character_set_client=strtoupper($character_set_client); -if (empty($dolibarr_main_db_character_set)) $dolibarr_main_db_character_set=($conf->db->type=='mysql'?'latin1':''); // Old installation -$conf->db->character_set=$dolibarr_main_db_character_set; -if (empty($dolibarr_main_db_collation)) $dolibarr_main_db_collation=($conf->db->type=='mysql'?'latin1_swedish_ci':''); // Old installation -$conf->db->dolibarr_main_db_collation=$dolibarr_main_db_collation; -if (empty($dolibarr_main_db_encryption)) $dolibarr_main_db_encryption=0; +if (empty($character_set_client)) $character_set_client = "UTF-8"; +$conf->file->character_set_client = strtoupper($character_set_client); +if (empty($dolibarr_main_db_character_set)) $dolibarr_main_db_character_set = ($conf->db->type == 'mysql' ? 'latin1' : ''); // Old installation +$conf->db->character_set = $dolibarr_main_db_character_set; +if (empty($dolibarr_main_db_collation)) $dolibarr_main_db_collation = ($conf->db->type == 'mysql' ? 'latin1_swedish_ci' : ''); // Old installation +$conf->db->dolibarr_main_db_collation = $dolibarr_main_db_collation; +if (empty($dolibarr_main_db_encryption)) $dolibarr_main_db_encryption = 0; $conf->db->dolibarr_main_db_encryption = $dolibarr_main_db_encryption; -if (empty($dolibarr_main_db_cryptkey)) $dolibarr_main_db_cryptkey=''; +if (empty($dolibarr_main_db_cryptkey)) $dolibarr_main_db_cryptkey = ''; $conf->db->dolibarr_main_db_cryptkey = $dolibarr_main_db_cryptkey; -if (empty($conf->db->user)) $conf->db->user=''; +if (empty($conf->db->user)) $conf->db->user = ''; // Defini objet langs diff --git a/htdocs/takepos/admin/bar.php b/htdocs/takepos/admin/bar.php new file mode 100644 index 00000000000..81eaf319295 --- /dev/null +++ b/htdocs/takepos/admin/bar.php @@ -0,0 +1,176 @@ + + * Copyright (C) 2011-2017 Juanjo Menent + * + * 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/takepos/admin/bar.php + * \ingroup takepos + * \brief Setup page for TakePos module - Bar Restaurant features + */ + +require '../../main.inc.php'; // Load $user and permissions +require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/product/class/html.formproduct.class.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/pdf.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php'; +require_once DOL_DOCUMENT_ROOT."/core/lib/takepos.lib.php"; + +// Security check +if (!$user->admin) accessforbidden(); + +$langs->loadLangs(array("admin", "cashdesk", "printing")); + +global $db; + +/* + * Actions + */ + +if (GETPOST('action', 'alpha') == 'set') +{ + $db->begin(); + + dol_syslog("admin/cashdesk: level ".GETPOST('level', 'alpha')); + + if (!$res > 0) $error++; + + if (!$error) + { + $db->commit(); + setEventMessages($langs->trans("SetupSaved"), null, 'mesgs'); + } else { + $db->rollback(); + setEventMessages($langs->trans("Error"), null, 'errors'); + } +} + + +/* + * View + */ + +$form = new Form($db); +$formproduct = new FormProduct($db); + +llxHeader('', $langs->trans("CashDeskSetup")); + +$linkback = '
    '.$langs->trans("BackToModuleList").''; +print load_fiche_titre($langs->trans("CashDeskSetup").' (TakePOS)', $linkback, 'title_setup'); +$head = takepos_prepare_head(); +dol_fiche_head($head, 'bar', 'TakePOS', -1); +print '
    '; + + +// Mode +print '
    '; +print ''; +print ''; + +print '
    '; +print ''; +print ''; +print ''; +print "\n"; + +if ($conf->global->TAKEPOS_BAR_RESTAURANT && $conf->global->TAKEPOS_PRINT_METHOD != "browser") { + print ''; + + print ''; +} + +print ''; + +print ''; + +if ($conf->global->TAKEPOS_SUPPLEMENTS) +{ + print '\n"; +} + +print ''; + + +print '
    '.$langs->trans("Parameters").''.$langs->trans("Value").'
    '; + print $langs->trans("OrderPrinters").' ('.$langs->trans("Setup").')'; + print ''; + print ajax_constantonoff("TAKEPOS_ORDER_PRINTERS", array(), $conf->entity, 0, 0, 1, 0); + //print $form->selectyesno("TAKEPOS_ORDER_PRINTERS", $conf->global->TAKEPOS_ORDER_PRINTERS, 1); + print '
    '; + print $langs->trans("OrderNotes"); + print ''; + print ajax_constantonoff("TAKEPOS_ORDER_NOTES", array(), $conf->entity, 0, 0, 1, 0); + //print $form->selectyesno("TAKEPOS_ORDER_NOTES", $conf->global->TAKEPOS_ORDER_NOTES, 1); + print '
    '; +print $langs->trans("BasicPhoneLayout"); +print ''; +//print $form->selectyesno("TAKEPOS_PHONE_BASIC_LAYOUT", $conf->global->TAKEPOS_PHONE_BASIC_LAYOUT, 1); +print ajax_constantonoff("TAKEPOS_PHONE_BASIC_LAYOUT", array(), $conf->entity, 0, 0, 1, 0); +print '
    '; +print $langs->trans("ProductSupplements"); +print ''; +//print $form->selectyesno("TAKEPOS_SUPPLEMENTS", $conf->global->TAKEPOS_SUPPLEMENTS, 1); +print ajax_constantonoff("TAKEPOS_SUPPLEMENTS", array(), $conf->entity, 0, 0, 1, 0); +print '
    '; + print $langs->trans("SupplementCategory"); + print ''; + print $form->select_all_categories(Categorie::TYPE_PRODUCT, $conf->global->TAKEPOS_SUPPLEMENTS_CATEGORY, 'TAKEPOS_SUPPLEMENTS_CATEGORY', 64, 0, 0); + print ajax_combobox('TAKEPOS_SUPPLEMENTS_CATEGORY'); + print "
    '; +print $langs->trans("AutoOrder"); +print ''; +print ajax_constantonoff("TAKEPOS_AUTO_ORDER", array(), $conf->entity, 0, 0, 1, 0); +print '
    '; + +if ($conf->global->TAKEPOS_AUTO_ORDER) +{ + print '
    '; + print ''; + print ''; + print ''; + print "\n"; + + //global $dolibarr_main_url_root; + $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 + $sql = "SELECT rowid, entity, label, leftpos, toppos, floor FROM ".MAIN_DB_PREFIX."takepos_floor_tables"; + $resql = $db->query($sql); + $rows = array(); + while ($row = $db->fetch_array($resql)) { + print ''; + } + + print '
    '.$langs->trans("Table").''.$langs->trans("URL").''.$langs->trans("QR").'
    '; + print $langs->trans("Table")." ".$row['label']; + print ''; + print "".$urlwithroot."/takepos/public/auto_order.php?key=".dol_encode($row['rowid']).""; + print ''; + print ""; + print '
    '; +} + +print '
    '; + +print '
    '; + +print '
    '; + +print "
    \n"; + +print '
    '; + +llxFooter(); +$db->close(); diff --git a/htdocs/takepos/admin/orderprinters.php b/htdocs/takepos/admin/orderprinters.php index 566f18ac1a4..79a16d77861 100644 --- a/htdocs/takepos/admin/orderprinters.php +++ b/htdocs/takepos/admin/orderprinters.php @@ -72,17 +72,39 @@ if ($action == "SavePrinter2") { $categstatic = new Categorie($db); $form = new Form($db); -if ($type == Categorie::TYPE_PRODUCT) { $title = $langs->trans("ProductsCategoriesArea"); $typetext = 'product'; } -elseif ($type == Categorie::TYPE_SUPPLIER) { $title = $langs->trans("SuppliersCategoriesArea"); $typetext = 'supplier'; } -elseif ($type == Categorie::TYPE_CUSTOMER) { $title = $langs->trans("CustomersCategoriesArea"); $typetext = 'customer'; } -elseif ($type == Categorie::TYPE_MEMBER) { $title = $langs->trans("MembersCategoriesArea"); $typetext = 'member'; } -elseif ($type == Categorie::TYPE_CONTACT) { $title = $langs->trans("ContactsCategoriesArea"); $typetext = 'contact'; } -elseif ($type == Categorie::TYPE_ACCOUNT) { $title = $langs->trans("AccountsCategoriesArea"); $typetext = 'bank_account'; } -elseif ($type == Categorie::TYPE_PROJECT) { $title = $langs->trans("ProjectsCategoriesArea"); $typetext = 'project'; } -elseif ($type == Categorie::TYPE_USER) { $title = $langs->trans("UsersCategoriesArea"); $typetext = 'user'; } -else { $title = $langs->trans("CategoriesArea"); $typetext = 'unknown'; } +if ($type == Categorie::TYPE_PRODUCT) { + $title = $langs->trans("ProductsCategoriesArea"); + $typetext = 'product'; +} elseif ($type == Categorie::TYPE_SUPPLIER) { + $title = $langs->trans("SuppliersCategoriesArea"); + $typetext = 'supplier'; +} elseif ($type == Categorie::TYPE_CUSTOMER) { + $title = $langs->trans("CustomersCategoriesArea"); + $typetext = 'customer'; +} elseif ($type == Categorie::TYPE_MEMBER) { + $title = $langs->trans("MembersCategoriesArea"); + $typetext = 'member'; +} elseif ($type == Categorie::TYPE_CONTACT) { + $title = $langs->trans("ContactsCategoriesArea"); + $typetext = 'contact'; +} elseif ($type == Categorie::TYPE_ACCOUNT) { + $title = $langs->trans("AccountsCategoriesArea"); + $typetext = 'bank_account'; +} elseif ($type == Categorie::TYPE_PROJECT) { + $title = $langs->trans("ProjectsCategoriesArea"); + $typetext = 'project'; +} elseif ($type == Categorie::TYPE_USER) { + $title = $langs->trans("UsersCategoriesArea"); + $typetext = 'user'; +} else { + $title = $langs->trans("CategoriesArea"); + $typetext = 'unknown'; +} -$arrayofjs = array('/includes/jquery/plugins/jquerytreeview/jquery.treeview.js', '/includes/jquery/plugins/jquerytreeview/lib/jquery.cookie.js'); +$arrayofjs = array( + '/includes/jquery/plugins/jquerytreeview/jquery.treeview.js', + '/includes/jquery/plugins/jquerytreeview/lib/jquery.cookie.js', +); $arrayofcss = array('/includes/jquery/plugins/jquerytreeview/jquery.treeview.css'); llxHeader('', $title, '', '', 0, 0, $arrayofjs, $arrayofcss); @@ -146,9 +168,7 @@ if ($nbofentries > 0) if ($row["fk_menu"] == 0) print ''.$row["label"].'
    '; } print ''; -} -else -{ +} else { print ''; print ''; print ''; -} -else -{ +} else { print ''; print ''; @@ -264,7 +258,7 @@ if ($conf->global->TAKEPOS_PRINT_METHOD == "receiptprinter") { print ''; print ''; // Numbering module diff --git a/htdocs/takepos/ajax/ajax.php b/htdocs/takepos/ajax/ajax.php index f3b5ba15716..7c4471b0ec8 100644 --- a/htdocs/takepos/ajax/ajax.php +++ b/htdocs/takepos/ajax/ajax.php @@ -64,13 +64,10 @@ if ($action == 'getProducts') { } } echo json_encode($prods); - } - else - { + } else { echo 'Failed to load category with id='.$category; } -} -elseif ($action == 'search' && $term != '') { +} elseif ($action == 'search' && $term != '') { // Define $filteroncategids, the filter on category ID if there is a Root category defined. $filteroncategids = ''; if ($conf->global->TAKEPOS_ROOT_CATEGORY_ID > 0) { // A root category is defined, we must filter on products inside this category tree @@ -109,8 +106,7 @@ elseif ($action == 'search' && $term != '') { ); } echo json_encode($rows); - } - else { + } else { echo 'Failed to search product : '.$db->lasterror(); } } elseif ($action == "opendrawer" && $term != '') { @@ -142,4 +138,10 @@ elseif ($action == 'search' && $term != '') { } echo json_encode($object); +} elseif ($action == 'thecheck') { + $place = GETPOST('place', 'alpha'); + require_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php'; + require_once DOL_DOCUMENT_ROOT.'/core/class/dolreceiptprinter.class.php'; + $printer = new dolReceiptPrinter($db); + $printer->sendToPrinter($object, $conf->global->{'TAKEPOS_TEMPLATE_TO_USE_FOR_INVOICES'.$term}, $conf->global->{'TAKEPOS_PRINTER_TO_USE'.$term}); } diff --git a/htdocs/takepos/css/phone.css b/htdocs/takepos/css/phone.css index 49d833ade17..37434cfc707 100644 --- a/htdocs/takepos/css/phone.css +++ b/htdocs/takepos/css/phone.css @@ -4,6 +4,7 @@ html,body { margin:0; height:100%; width:100%; + background-color: #FFF !important; } .container{ @@ -17,14 +18,14 @@ html,body { .phonerow1{ margin: 0 auto; width: 100%; - height: 40%; + height: auto; min-height: 40%; } .phonerow2{ margin: 0 auto; width: 100%; - height: 40%; + height: auto; } .phonebuttonsrow{ @@ -79,3 +80,120 @@ button.phonebutton { height:90%; font-weight: bold; } + +button.publicphonebutton { + display: inline-block; + position: relative; + padding: 0; + line-height: normal; + cursor: pointer; + vertical-align: middle; + text-align: center; + overflow: visible; /* removes extra width in IE */ + width:33%; + height:50px; + font-weight: bold; + color: #fff; +} + +.phoneblue{ + color: #fff; + background-color: #428bca; + border-color: #357ebd; +} + +.phonegreen{ + color: #fff; + background-color: #5cb85c; + border-color: #4cae4c; + font-size:20px; + text-align:center; + width:20px; +} + +.phonetable{ + width:130px; +} + +.phoneqty{ + font-size:24px; + font-weight: bold; + + +} + +.phonered{ + color: #fff; + background-color: #dc3545; + border-color: #dc3545; + font-size:20px; + text-align:center; + width:20px; +} + +.phoneorange{ + color: #fff; + background-color: #f0ad4e; + border-color: #eea236; +} + +.total{ + width:100% !important; + font-size:24px; +} + +.width24{ + font-size:24px; +} + +.leftcat{ + margin-top:15px; + float:left; + width: 50%; + text-align:center; + height:150px;; + overflow:hidden; + margin-bottom:5px; + font-size:18px; + color:#5B5858; + font-weight: bold; +} + +button.publicphonebutton2 { + display: inline-block; + position: relative; + padding: 0; + line-height: normal; + cursor: pointer; + vertical-align: middle; + text-align: center; + overflow: visible; /* removes extra width in IE */ + width:33%; + font-weight: bold; + padding: 8px 16px; +} + +.div-table-responsive-no-min{ + margin-top:20px; +} + +.comment { + float: left; + width: 100%; + height: auto; +} + +.comment-text-area { + float: left; + width: 80%; + height: auto; +} + +.textinput { + float: left; + width: 100%; + min-height: 75px; + outline: none; + resize: none; + border: 1px solid grey; +} \ No newline at end of file diff --git a/htdocs/takepos/css/pos.css.php b/htdocs/takepos/css/pos.css.php index 5f0006d24fe..6871fcbd68b 100644 --- a/htdocs/takepos/css/pos.css.php +++ b/htdocs/takepos/css/pos.css.php @@ -591,6 +591,9 @@ div#moreinfo, div#infowarehouse { height: calc(45% - 100px); } + div#moreinfo, div#infowarehouse { + padding: 0 5px 0 5px; + } div.div1 { padding-bottom: 0; diff --git a/htdocs/takepos/genimg/index.php b/htdocs/takepos/genimg/index.php index a5686054193..9ec730bfad8 100644 --- a/htdocs/takepos/genimg/index.php +++ b/htdocs/takepos/genimg/index.php @@ -25,7 +25,7 @@ if (!defined('NOREQUIREMENU')) define('NOREQUIREMENU', '1'); if (!defined('NOREQUIREHTML')) define('NOREQUIREHTML', '1'); if (!defined('NOREQUIREAJAX')) define('NOREQUIREAJAX', '1'); -require '../../main.inc.php'; // Load $user and permissions +if (!defined('INCLUDE_PHONEPAGE_FROM_PUBLIC_PAGE')) require '../../main.inc.php'; // Load $user and permissions $id = GETPOST('id', 'int'); $w = GETPOST('w', 'int'); @@ -55,32 +55,34 @@ if ($query == "cat") if ($obj['photo_vignette']) { $filename = $obj['photo_vignette']; - } - else - { + } else { $filename = $obj['photo']; } - $file = DOL_URL_ROOT.'/viewimage.php?cache=1&modulepart=category&entity='.$object->entity.'&file='.urlencode($pdir.$filename); + $file = DOL_URL_ROOT.'/viewimage.php?cache=1&publictakepos=1&modulepart=category&entity='.$object->entity.'&file='.urlencode($pdir.$filename); header('Location: '.$file); exit; } header('Location: ../../public/theme/common/nophoto.png'); -} -elseif ($query == "pro") +} elseif ($query == "pro") { require_once DOL_DOCUMENT_ROOT."/product/class/product.class.php"; $objProd = new Product($db); $objProd->fetch($id); - $image = $objProd->show_photos('product', $conf->product->multidir_output[$entity], 'small', 1); + $image = $objProd->show_photos('product', $conf->product->multidir_output[$objProd->entity], 'small', 1); preg_match('@src="([^"]+)"@', $image, $match); $file = array_pop($match); - if ($file == "") header('Location: ../../public/theme/common/nophoto.png'); - else header('Location: '.$file.'&cache=1'); -} -else -{ + if ($file == "") { + header('Location: ../../public/theme/common/nophoto.png'); + } else { + if (!defined('INCLUDE_PHONEPAGE_FROM_PUBLIC_PAGE')) { + header('Location: '.$file.'&cache=1'); + } else { + header('Location: '.$file.'&cache=1&publictakepos=1&modulepart=product'); + } + } +} else { // TODO We don't need this. Size of image must be defined on HTML page, image must NOT be resize when downloaded. // The file diff --git a/htdocs/takepos/genimg/qr.php b/htdocs/takepos/genimg/qr.php new file mode 100644 index 00000000000..3aca3b22ebf --- /dev/null +++ b/htdocs/takepos/genimg/qr.php @@ -0,0 +1,36 @@ + + * + * 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 . + */ + +if (!defined("NOLOGIN")) define("NOLOGIN", '1'); // If this page is public (can be called outside logged session) +if (!defined('NOIPCHECK')) define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip +if (!defined('NOREQUIRESOC')) define('NOREQUIRESOC', '1'); +if (!defined('NOCSRFCHECK')) define('NOCSRFCHECK', '1'); +if (!defined('NOTOKENRENEWAL')) define('NOTOKENRENEWAL', '1'); +if (!defined('NOREQUIREMENU')) define('NOREQUIREMENU', '1'); +if (!defined('NOREQUIREHTML')) define('NOREQUIREHTML', '1'); +if (!defined('NOREQUIREAJAX')) define('NOREQUIREAJAX', '1'); + +require '../../main.inc.php'; // Load $user and permissions +require '../../core/modules/barcode/doc/tcpdfbarcode.modules.php'; + +$key = GETPOST('key'); + +$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 + +$module = new modTcpdfbarcode(); +$result = $module->buildBarCode($urlwithroot."/takepos/public/auto_order.php?key=".dol_encode($key), 'QRCODE', 'Y'); diff --git a/htdocs/takepos/index.php b/htdocs/takepos/index.php index 0688d4a8584..4091e5fff90 100644 --- a/htdocs/takepos/index.php +++ b/htdocs/takepos/index.php @@ -134,9 +134,7 @@ foreach ($categories as $key => $categorycursor) if ($categorycursor['level'] == $levelofmaincategories) { $maincategories[$key] = $categorycursor; - } - else - { + } else { $subcategories[$key] = $categorycursor; } } @@ -756,8 +754,13 @@ if (empty($conf->global->TAKEPOS_HIDE_HEAD_BAR)) {
    -
    - trans("Terminal")." "; +
    '; print ''; } +elseif ($mobilepage == "invoice") print ''; print "\n"; @@ -885,12 +874,14 @@ if ($_SESSION["basiclayout"] == 1) $categories = $categorie->get_full_arbo('product'); $htmlforlines = ''; foreach ($categories as $row) { - $htmlforlines .= ''; - $htmlforlines .= ''; - $htmlforlines .= ''."\n"; + if (defined('INCLUDE_PHONEPAGE_FROM_PUBLIC_PAGE')) $htmlforlines .= ''."\n"; + else $htmlforlines .= ''."\n"; } $htmlforlines .= '
    '.img_picto_common('', 'treemenu/branchbottom.gif').''; @@ -176,9 +196,7 @@ if ($nbofentries > 0) if ($row["fk_menu"] == 0) print ''.$row["label"].'
    '; } print '
    '; print '\n"; @@ -121,9 +116,7 @@ if ($conf->receiptprinter->enabled) { if ($conf->global->TAKEPOS_PRINT_METHOD == "receiptprinter") { print img_picto($langs->trans("Activated"), 'switch_on'); - } - else - { + } else { print ''.img_picto($langs->trans("Disabled"), 'switch_off').''; } print "\n"; @@ -138,9 +131,7 @@ print '\n"; @@ -175,9 +166,7 @@ if ($conf->global->TAKEPOS_PRINT_METHOD == "browser" || $conf->global->TAKEPOS_P if (empty($conf->global->PDF_ALLOW_HTML_FOR_FREE_TEXT)) { print ''; - } - else - { + } else { include_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php'; $doleditor = new DolEditor($variablename, $conf->global->$variablename, '', 80, 'dolibarr_notes'); print $doleditor->Create(); @@ -191,9 +180,7 @@ if ($conf->global->TAKEPOS_PRINT_METHOD == "browser" || $conf->global->TAKEPOS_P if (empty($conf->global->PDF_ALLOW_HTML_FOR_FREE_TEXT)) { print ''; - } - else - { + } else { include_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php'; $doleditor = new DolEditor($variablename, $conf->global->$variablename, '', 80, 'dolibarr_notes'); print $doleditor->Create(); diff --git a/htdocs/takepos/admin/setup.php b/htdocs/takepos/admin/setup.php index bf5c4671b13..541c34e4e12 100644 --- a/htdocs/takepos/admin/setup.php +++ b/htdocs/takepos/admin/setup.php @@ -96,9 +96,7 @@ if ($action == 'set') if (!$error) { $db->commit(); - } - else - { + } else { $db->rollback(); } } elseif ($action == 'updateMask') { @@ -133,7 +131,7 @@ llxHeader('', $langs->trans("CashDeskSetup")); $linkback = ''.$langs->trans("BackToModuleList").''; print load_fiche_titre($langs->trans("CashDeskSetup").' (TakePOS)', $linkback, 'title_setup'); $head = takepos_prepare_head(); -dol_fiche_head($head, 'setup', 'TakePOS', -1); +dol_fiche_head($head, 'setup', 'TakePOS', -1, 'cash-register'); // Numbering modules $now = dol_now(); @@ -195,9 +193,7 @@ foreach ($dirmodels as $reldir) if ($conf->global->TAKEPOS_REF_ADDON == "$file") { print img_picto($langs->trans("Activated"), 'switch_on'); - } - else - { + } else { print ''; print img_picto($langs->trans("Disabled"), 'switch_off'); print ''; @@ -274,7 +270,7 @@ if (!empty($conf->service->enabled)) print '\n"; @@ -362,7 +358,7 @@ if (is_array($formmail->lines_model)) { if (!empty($arrayofmessagename[$modelmail->label])) { $moreonlabel = ' ('.$langs->trans("SeveralLangugeVariatFound").')'; } - $arrayofmessagename[$modelmail->label] = $langs->trans(preg_replace('/\(|\)/', '', $modelmail->label)).$moreonlabel; + $arrayofmessagename[$modelmail->id] = $langs->trans(preg_replace('/\(|\)/', '', $modelmail->topic)).$moreonlabel; } } //var_dump($arraydefaultmessage); @@ -434,19 +430,6 @@ print "\n"; //print $form->selectarray('TAKEPOS_ADDON', $array, (empty($conf->global->TAKEPOS_ADDON) ? '0' : $conf->global->TAKEPOS_ADDON), 0); //print "\n"; -print '
    '.img_picto_common('', 'treemenu/branchbottom.gif').''; diff --git a/htdocs/takepos/admin/other.php b/htdocs/takepos/admin/other.php index cbb22c94f90..902bcfc81d4 100644 --- a/htdocs/takepos/admin/other.php +++ b/htdocs/takepos/admin/other.php @@ -111,7 +111,7 @@ llxHeader('', $langs->trans("CashDeskSetup")); $linkback = ''.$langs->trans("BackToModuleList").''; print load_fiche_titre($langs->trans("CashDeskSetup").' (TakePOS)', $linkback, 'title_setup'); $head = takepos_prepare_head(); -dol_fiche_head($head, 'other', 'TakePOS', -1); +dol_fiche_head($head, 'other', 'TakePOS', -1, 'cash-register'); print '
    '; diff --git a/htdocs/takepos/admin/receipt.php b/htdocs/takepos/admin/receipt.php index 83b31569a7b..567c8ca5aff 100644 --- a/htdocs/takepos/admin/receipt.php +++ b/htdocs/takepos/admin/receipt.php @@ -57,14 +57,11 @@ if (GETPOST('action', 'alpha') == 'set') { $db->commit(); setEventMessages($langs->trans("SetupSaved"), null, 'mesgs'); - } - else - { + } else { $db->rollback(); setEventMessages($langs->trans("Error"), null, 'errors'); } -} -elseif (GETPOST('action', 'alpha') == 'setmethod') +} elseif (GETPOST('action', 'alpha') == 'setmethod') { dolibarr_set_const($db, "TAKEPOS_PRINT_METHOD", GETPOST('value', 'alpha'), 'chaine', 0, '', $conf->entity); } @@ -82,7 +79,7 @@ llxHeader('', $langs->trans("CashDeskSetup")); $linkback = ''.$langs->trans("BackToModuleList").''; print load_fiche_titre($langs->trans("CashDeskSetup").' (TakePOS)', $linkback, 'title_setup'); $head = takepos_prepare_head(); -dol_fiche_head($head, 'receipt', 'TakePOS', -1); +dol_fiche_head($head, 'receipt', 'TakePOS', -1, 'cash-register'); print '
    '; print ''; @@ -104,9 +101,7 @@ print '
    '; if ($conf->global->TAKEPOS_PRINT_METHOD == "browser") { print img_picto($langs->trans("Activated"), 'switch_on'); -} -else -{ +} else { print ''.img_picto($langs->trans("Disabled"), 'switch_off').''; } print "
    '; if ($conf->global->TAKEPOS_PRINT_METHOD == "takeposconnector") { print img_picto($langs->trans("Activated"), 'switch_on'); -} -else -{ +} else { print ''.img_picto($langs->trans("Disabled"), 'switch_off').''; } print "
    '; print $form->textwithpicto($langs->trans("RootCategoryForProductsToSell"), $langs->trans("RootCategoryForProductsToSellDesc")); print ''; -print $form->select_all_categories(Categorie::TYPE_PRODUCT, $conf->global->TAKEPOS_ROOT_CATEGORY_ID, 'TAKEPOS_ROOT_CATEGORY_ID', 64, 0, 0); +print img_object('', 'category', 'class="paddingright"').$form->select_all_categories(Categorie::TYPE_PRODUCT, $conf->global->TAKEPOS_ROOT_CATEGORY_ID, 'TAKEPOS_ROOT_CATEGORY_ID', 64, 0, 0); print ajax_combobox('TAKEPOS_ROOT_CATEGORY_ID'); print "
    '; -print ''; - -print '
    '; - -// Bar Restaurant mode -print '
    '; -print ''; - -print ''; -print ''; -print "\n"; - print ''; @@ -455,48 +438,6 @@ print ajax_constantonoff("TAKEPOS_BAR_RESTAURANT", array(), $conf->entity, 0, 0, //print $form->selectyesno("TAKEPOS_BAR_RESTAURANT", $conf->global->TAKEPOS_BAR_RESTAURANT, 1); print "\n"; -if ($conf->global->TAKEPOS_BAR_RESTAURANT && $conf->global->TAKEPOS_PRINT_METHOD != "browser") { - print ''; - - print ''; -} - -if ($conf->global->TAKEPOS_BAR_RESTAURANT) -{ - print ''; - - print ''; - - if ($conf->global->TAKEPOS_SUPPLEMENTS) - { - print '\n"; - } -} print '
    '.$langs->trans("Other").''.$langs->trans("Value").'
    '; print $langs->trans("EnableBarOrRestaurantFeatures"); print '
    '; - print $langs->trans("OrderPrinters").' ('.$langs->trans("Setup").')'; - print ''; - print ajax_constantonoff("TAKEPOS_ORDER_PRINTERS", array(), $conf->entity, 0, 0, 1, 0); - //print $form->selectyesno("TAKEPOS_ORDER_PRINTERS", $conf->global->TAKEPOS_ORDER_PRINTERS, 1); - print '
    '; - print $langs->trans("OrderNotes"); - print ''; - print ajax_constantonoff("TAKEPOS_ORDER_NOTES", array(), $conf->entity, 0, 0, 1, 0); - //print $form->selectyesno("TAKEPOS_ORDER_NOTES", $conf->global->TAKEPOS_ORDER_NOTES, 1); - print '
    '; - print $langs->trans("BasicPhoneLayout"); - print ''; - //print $form->selectyesno("TAKEPOS_PHONE_BASIC_LAYOUT", $conf->global->TAKEPOS_PHONE_BASIC_LAYOUT, 1); - print ajax_constantonoff("TAKEPOS_PHONE_BASIC_LAYOUT", array(), $conf->entity, 0, 0, 1, 0); - print '
    '; - print $langs->trans("ProductSupplements"); - print ''; - //print $form->selectyesno("TAKEPOS_SUPPLEMENTS", $conf->global->TAKEPOS_SUPPLEMENTS, 1); - print ajax_constantonoff("TAKEPOS_SUPPLEMENTS", array(), $conf->entity, 0, 0, 1, 0); - print '
    '; - print $langs->trans("SupplementCategory"); - print ''; - print $form->select_all_categories(Categorie::TYPE_PRODUCT, $conf->global->TAKEPOS_SUPPLEMENTS_CATEGORY, 'TAKEPOS_SUPPLEMENTS_CATEGORY', 64, 0, 0); - print ajax_combobox('TAKEPOS_SUPPLEMENTS_CATEGORY'); - print "
    '; print '
    '; diff --git a/htdocs/takepos/admin/terminal.php b/htdocs/takepos/admin/terminal.php index 10a679615a9..6f042d7f10e 100644 --- a/htdocs/takepos/admin/terminal.php +++ b/htdocs/takepos/admin/terminal.php @@ -102,9 +102,7 @@ if (GETPOST('action', 'alpha') == 'set') { $db->commit(); setEventMessages($langs->trans("SetupSaved"), null, 'mesgs'); - } - else - { + } else { $db->rollback(); setEventMessages($langs->trans("Error"), null, 'errors'); } @@ -123,7 +121,7 @@ llxHeader('', $langs->trans("CashDeskSetup")); $linkback = ''.$langs->trans("BackToModuleList").''; print load_fiche_titre($langs->trans("CashDeskSetup").' (TakePOS)', $linkback, 'title_setup'); $head = takepos_prepare_head(); -dol_fiche_head($head, 'terminal'.$terminal, 'TakePOS', -1); +dol_fiche_head($head, 'terminal'.$terminal, 'TakePOS', -1, 'cash-register'); print '
    '; @@ -187,9 +185,7 @@ if (!empty($conf->stock->enabled)) print '
    '; if (empty($conf->productbatch->enabled) || !empty($conf->global->CASHDESK_FORCE_DECREASE_STOCK)) { print $form->selectyesno('CASHDESK_NO_DECREASE_STOCK'.$terminal, $conf->global->{'CASHDESK_NO_DECREASE_STOCK'.$terminal}, 1); - } - else - { + } else { if (!$conf->global->{'CASHDESK_NO_DECREASE_STOCK'.$terminal}) { $res = dolibarr_set_const($db, "CASHDESK_NO_DECREASE_STOCK".$terminal, 1, 'chaine', 0, '', $conf->entity); } @@ -207,9 +203,7 @@ if (!empty($conf->stock->enabled)) { print $formproduct->selectWarehouses($conf->global->{'CASHDESK_ID_WAREHOUSE'.$terminal}, 'CASHDESK_ID_WAREHOUSE'.$terminal, '', 1, $disabled); print ' '; - } - else - { + } else { print ''.$langs->trans("StockDecreaseForPointOfSaleDisabled").''; } print '
    '.$langs->trans('CashDeskReaderKeyCodeForEnter').''; -print ''; +print ''; print '
    '.$langs->trans('Qty').''.$langs->trans('TotalTTCShort').''.$langs->trans('Qty').'
    '; + if (defined('INCLUDE_PHONEPAGE_FROM_PUBLIC_PAGE')) $htmlforlines .= '
    '; + else $htmlforlines .= '
    '; $htmlforlines .= $row['label']; - $htmlforlines .= '
    '; $htmlforlines .= ''; @@ -906,12 +897,20 @@ if ($_SESSION["basiclayout"] == 1) $prods = $object->getObjectsInCateg("product"); $htmlforlines = ''; foreach ($prods as $row) { - $htmlforlines .= 'id.')">'; - $htmlforlines .= ''; - $htmlforlines .= $row->label; - $htmlforlines .= ''; - $htmlforlines .= ''."\n"; + if (defined('INCLUDE_PHONEPAGE_FROM_PUBLIC_PAGE')) { + $htmlforlines .= '
    '; + $htmlforlines .= $row->label.''.price($row->price_ttc, 1, $langs, 1, -1, -1, $conf->currency); + $htmlforlines .= '
    '."\n"; + } + else { + $htmlforlines .= ''; + $htmlforlines .= $row->label; + $htmlforlines .= '
    '.price($row->price_ttc, 1, $langs, 1, -1, -1, $conf->currency).'
    '; + $htmlforlines .= ''."\n"; + } } $htmlforlines .= ''; print $htmlforlines; @@ -963,9 +962,7 @@ if ($placeid > 0) if ($firstline != $line->desc) { $htmlsupplements[$line->fk_parent_line] .= $form->textwithpicto(dolGetFirstLineOfText($line->desc), $line->desc); - } - else - { + } else { $htmlsupplements[$line->fk_parent_line] .= $line->desc; } } @@ -987,7 +984,7 @@ if ($placeid > 0) } $htmlforlines .= '" id="'.$line->id.'">'; $htmlforlines .= ''; - //if ($line->product_label) $htmlforlines.= ''.$line->product_label.''; + if ($_SESSION["basiclayout"] == 1) $htmlforlines .= ''.$line->qty." x "; if (isset($line->product_type)) { if (empty($line->product_type)) $htmlforlines .= img_object('', 'product').' '; @@ -1013,15 +1010,14 @@ if ($placeid > 0) if ($firstline != $line->desc) { $htmlforlines .= $form->textwithpicto(dolGetFirstLineOfText($line->desc), $line->desc); - } - else - { + } else { $htmlforlines .= $line->desc; } } } if (!empty($line->array_options['options_order_notes'])) $htmlforlines .= "
    (".$line->array_options['options_order_notes'].")"; - if ($_SESSION["basiclayout"] != 1) + if ($_SESSION["basiclayout"] == 1) $htmlforlines .= '  '; + if ($_SESSION["basiclayout"] != 1) { $moreinfo = ''; $moreinfo .= $langs->transcountry("TotalHT", $mysoc->country_code).': '.price($line->total_ht); @@ -1042,13 +1038,10 @@ if ($placeid > 0) print $htmlforlines; } - } - else - { + } else { print ''.$langs->trans("Empty").''; } -} -else { // No invoice generated yet +} else { // No invoice generated yet print ''.$langs->trans("Empty").''; } diff --git a/htdocs/takepos/pay.php b/htdocs/takepos/pay.php index b2534272ae2..95bb9118b48 100644 --- a/htdocs/takepos/pay.php +++ b/htdocs/takepos/pay.php @@ -51,9 +51,7 @@ $invoice = new Facture($db); if ($invoiceid > 0) { $invoice->fetch($invoiceid); -} -else -{ +} else { $sql = "SELECT rowid FROM ".MAIN_DB_PREFIX."facture where ref='(PROV-POS".$_SESSION["takeposterminal"]."-".$place.")'"; $resql = $db->query($sql); $obj = $db->fetch_object($resql); @@ -64,9 +62,7 @@ else if (!$invoiceid) { $invoiceid = 0; // Invoice does not exist yet - } - else - { + } else { $invoice->fetch($invoiceid); } } diff --git a/htdocs/takepos/phone.php b/htdocs/takepos/phone.php index b2526ef885e..2fd2beec15d 100644 --- a/htdocs/takepos/phone.php +++ b/htdocs/takepos/phone.php @@ -31,15 +31,21 @@ if (!defined('NOREQUIREMENU')) define('NOREQUIREMENU', '1'); if (!defined('NOREQUIREHTML')) define('NOREQUIREHTML', '1'); if (!defined('NOREQUIREAJAX')) define('NOREQUIREAJAX', '1'); -require '../main.inc.php'; // Load $user and permissions +if (!defined('INCLUDE_PHONEPAGE_FROM_PUBLIC_PAGE')) require '../main.inc.php'; require_once DOL_DOCUMENT_ROOT.'/core/class/html.formother.class.php'; require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php'; require_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php'; require_once DOL_DOCUMENT_ROOT.'/core/class/hookmanager.class.php'; -$place = (GETPOST('place', 'aZ09') ? GETPOST('place', 'aZ09') : 0); // $place is id of table for Ba or Restaurant +if (defined('INCLUDE_PHONEPAGE_FROM_PUBLIC_PAGE')) { + // Decode place if it is an order from customer phone + $place = GETPOSTISSET("key") ? dol_decode(GETPOST('key')) : GETPOST('place', 'aZ09'); +} else { + $place = (GETPOST('place', 'aZ09') ? GETPOST('place', 'aZ09') : 0); // $place is id of table for Ba or Restaurant +} $action = GETPOST('action', 'alpha'); $setterminal = GETPOST('setterminal', 'int'); +$idproduct = GETPOST('idproduct', 'int'); if ($setterminal > 0) { @@ -48,66 +54,131 @@ if ($setterminal > 0) $langs->loadLangs(array("bills", "orders", "commercial", "cashdesk", "receiptprinter")); -if (empty($user->rights->takepos->run)) { +if (empty($user->rights->takepos->run) && !defined('INCLUDE_PHONEPAGE_FROM_PUBLIC_PAGE')) { accessforbidden(); } - /* * View */ -// Title -$title = 'TakePOS - Dolibarr '.DOL_VERSION; -if (!empty($conf->global->MAIN_APPLICATION_TITLE)) $title = 'TakePOS - '.$conf->global->MAIN_APPLICATION_TITLE; -$head = ' +if ($action == "productinfo") { + $prod = new Product($db); + $prod->fetch($idproduct); + print ''; + print "
    ".$prod->label."
    "; + print ''; + print "
    ".$prod->description; + print "
    ".price($prod->price_ttc, 1, $langs, 1, -1, -1, $conf->currency).""; + print '
    '; +} elseif ($action == "publicpreorder") { + print ''; + print "

    "; + print '
    + +
    '; + print '
    '; +} elseif ($action == "publicpayment") { + $langs->loadLangs(array("orders")); + print '

    '.$langs->trans('StatusOrderDelivered').'

    '; + print ''; + print '
    '; +} +elseif ($action == "checkplease") { + if (GETPOSTISSET("payment")) { + print '

    '.$langs->trans('StatusOrderDelivered').'

    '; + require_once DOL_DOCUMENT_ROOT.'/core/class/dolreceiptprinter.class.php'; + require_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php'; + $printer = new dolReceiptPrinter($db); + $printer->initPrinter($conf->global->{'TAKEPOS_PRINTER_TO_USE'.$_SESSION["takeposterminal"]}); + $printer->printer->feed(); + $printer->printer->feed(); + $printer->printer->text($langs->trans('IM')); + $printer->printer->feed(); + $printer->printer->text($langs->trans('Place').": ".$place); + $printer->printer->feed(); + $printer->printer->text($langs->trans('Payment').": ".$langs->trans(GETPOST('payment', 'alpha'))); + $printer->printer->feed(); + $printer->printer->feed(); + $printer->printer->feed(); + $printer->printer->feed(); + $printer->printer->feed(); + $printer->close(); + } else { + print ''; + print ''; + print '
    '; + } +} elseif ($action == "editline") { + $placeid = GETPOST('placeid', 'int'); + $selectedline = GETPOST('selectedline', 'int'); + $invoice = new Facture($db); + $invoice->fetch($placeid); + foreach ($invoice->lines as $line) + { + if ($line->id == $selectedline) + { + $prod = new Product($db); + $prod->fetch($line->fk_product); + print "".$prod->label."
    "; + print ''; + print "
    ".$prod->description; + print "
    ".price($prod->price_ttc, 1, $langs, 1, -1, -1, $conf->currency).""; + print '
    '; + print ''; + print ''; + print ''; + } + } +} else { + // Title + $title = 'TakePOS - Dolibarr '.DOL_VERSION; + if (!empty($conf->global->MAIN_APPLICATION_TITLE)) $title = 'TakePOS - '.$conf->global->MAIN_APPLICATION_TITLE; + $head = ' '; -top_htmlhead($head, $title, $disablejs, $disablehead, $arrayofjs, $arrayofcss); - -?> - + $arrayofcss = array('/takepos/css/phone.css'); + top_htmlhead($head, $title, $disablejs, $disablehead, $arrayofjs, $arrayofcss); + ?> - -global->TAKEPOS_NUM_TERMINALS != "1" && $_SESSION["takeposterminal"] == "") print '
    '.$langs->trans('TerminalSelect').'
    '; -?> + + global->TAKEPOS_NUM_TERMINALS != "1" && $_SESSION["takeposterminal"] == "") print '
    '.$langs->trans('TerminalSelect').'
    '; + ?>
    - - - - + '.strtoupper(substr($langs->trans('Floors'), 0, 3)).''; + print ''; + print ''; + print ''; + } + else { + print ''; + print ''; + print ''; + } + ?>
    -
    -
    -
    -
    +
    +
    +
    +
    - + * + * 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/takepos/public/auto_order.php + * \ingroup takepos + * \brief Public orders for customers + */ + +if (!defined("NOLOGIN")) define("NOLOGIN", '1'); // If this page is public (can be called outside logged session) +if (!defined('NOIPCHECK')) define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip + +require '../../main.inc.php'; + +if (!$conf->global->TAKEPOS_AUTO_ORDER) accessforbidden(); // If Auto Order is disabled never allow NO LOGIN access + +$_SESSION["basiclayout"] = 1; +$_SESSION["takeposterminal"] = 1; + +define('INCLUDE_PHONEPAGE_FROM_PUBLIC_PAGE', 1); +if (GETPOSTISSET("mobilepage")) require '../invoice.php'; +elseif (GETPOSTISSET("genimg")) require DOL_DOCUMENT_ROOT.'/takepos/genimg/index.php'; +else require '../phone.php'; diff --git a/htdocs/takepos/receipt.php b/htdocs/takepos/receipt.php index c025f504d73..90b3a5c1fee 100644 --- a/htdocs/takepos/receipt.php +++ b/htdocs/takepos/receipt.php @@ -25,7 +25,7 @@ * \brief Page to show a receipt. */ -require '../main.inc.php'; // Load $user and permissions +if (!isset($action)) require '../main.inc.php'; // If this file is called from send.php avoid load again include_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php'; $langs->loadLangs(array("main", "cashdesk", "companies")); diff --git a/htdocs/takepos/reduction.php b/htdocs/takepos/reduction.php index 7be5ee85938..e882957ad14 100644 --- a/htdocs/takepos/reduction.php +++ b/htdocs/takepos/reduction.php @@ -51,9 +51,7 @@ $invoice = new Facture($db); if ($invoiceid > 0) { $invoice->fetch($invoiceid); -} -else -{ +} else { $sql = "SELECT rowid FROM ".MAIN_DB_PREFIX."facture where ref='(PROV-POS".$_SESSION["takeposterminal"]."-".$place.")'"; $resql = $db->query($sql); $obj = $db->fetch_object($resql); @@ -64,9 +62,7 @@ else if (!$invoiceid) { $invoiceid = 0; // Invoice does not exist yet - } - else - { + } else { $invoice->fetch($invoiceid); } } diff --git a/htdocs/takepos/send.php b/htdocs/takepos/send.php index 5774c9bbaf1..3f59d4069b5 100644 --- a/htdocs/takepos/send.php +++ b/htdocs/takepos/send.php @@ -1,5 +1,6 @@ +/* Copyright (C) 2019 Thibault FOUCART + * Copyright (C) 2020 Andreu Bisquerra Gaya * * 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 @@ -35,123 +36,73 @@ require '../main.inc.php'; // Load $user and permissions require_once DOL_DOCUMENT_ROOT.'/core/lib/company.lib.php'; require_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php'; -$invoiceid = GETPOST('facid', 'int'); +$facid = GETPOST('facid', 'int'); +$action = GETPOST('action', 'alpha'); +$email = GETPOST('email', 'alpha'); if (empty($user->rights->takepos->run)) { accessforbidden(); } - -/* - * View - */ - -$invoice = new Facture($db); -if ($invoiceid > 0) -{ - $invoice->fetch($invoiceid); -} -else -{ - $sql = "SELECT rowid FROM ".MAIN_DB_PREFIX."facture where ref='(PROV-POS".$_SESSION["takeposterminal"]."-".$place.")'"; - $resql = $db->query($sql); - $obj = $db->fetch_object($resql); - if ($obj) - { - $invoiceid = $obj->rowid; - } - if (!$invoiceid) - { - $invoiceid = 0; // Invoice does not exist yet - } - else - { - $invoice->fetch($invoiceid); - } -} - $langs->loadLangs(array("main", "bills", "cashdesk")); +$invoice = new Facture($db); +$invoice->fetch($facid); +$customer = new Societe($db); +$customer->fetch($invoice->socid); + +if ($action=="send") +{ + include_once DOL_DOCUMENT_ROOT.'/core/class/CMailFile.class.php'; + include_once DOL_DOCUMENT_ROOT.'/core/class/html.formmail.class.php'; + $formmail = new FormMail($db); + $outputlangs = new Translate('', $conf); + $model_id = $conf->global->TAKEPOS_EMAIL_TEMPLATE_INVOICE; + $arraydefaultmessage = $formmail->getEMailTemplate($db, 'facture_send', $user, $outputlangs, $model_id); + $subject = $arraydefaultmessage->topic; + ob_start(); // turn on output receipt + include 'receipt.php'; + $receipt = ob_get_contents(); // get the contents of the output buffer + ob_end_clean(); + $msg="".$arraydefaultmessage->content."
    ".$receipt.""; + $sendto=$email; + $from=$mysoc->email; + $mail = new CMailFile($subject, $sendto, $from, $msg, array(), array(), array(), '', '', 0, 1); + if ($mail->error || $mail->errors) { + setEventMessages($mail->error, $mail->errors, 'errors'); + } else { + $result = $mail->sendfile(); + } + exit; +} +$arrayofcss = array('/takepos/css/pos.css.php'); +$arrayofjs = array(); +top_htmlhead($head, $title, $disablejs, $disablehead, $arrayofjs, $arrayofcss); ?> -
    -
    +
    +

    - +
    diff --git a/htdocs/theme/dolibarr.png b/htdocs/theme/dolibarr.png index 1ef6b77d4ca..3f7c35b6cf8 100644 Binary files a/htdocs/theme/dolibarr.png and b/htdocs/theme/dolibarr.png differ diff --git a/htdocs/theme/dolibarr_256x256_color.png b/htdocs/theme/dolibarr_256x256_color.png new file mode 100644 index 00000000000..417387d6a27 Binary files /dev/null and b/htdocs/theme/dolibarr_256x256_color.png differ diff --git a/htdocs/theme/dolibarr_512x512_white.png b/htdocs/theme/dolibarr_512x512_white.png new file mode 100644 index 00000000000..06e69ad8b7b Binary files /dev/null and b/htdocs/theme/dolibarr_512x512_white.png differ diff --git a/htdocs/theme/dolibarr_logo.jpg b/htdocs/theme/dolibarr_logo.jpg new file mode 100644 index 00000000000..a4a0611067d Binary files /dev/null and b/htdocs/theme/dolibarr_logo.jpg differ diff --git a/htdocs/theme/dolibarr_logo.png b/htdocs/theme/dolibarr_logo.png old mode 100644 new mode 100755 index 77c21461910..9a0781ce2ea Binary files a/htdocs/theme/dolibarr_logo.png and b/htdocs/theme/dolibarr_logo.png differ diff --git a/htdocs/theme/dolibarr_logo.svg b/htdocs/theme/dolibarr_logo.svg index 44f6c07ece5..9c9259d0b33 100644 --- a/htdocs/theme/dolibarr_logo.svg +++ b/htdocs/theme/dolibarr_logo.svg @@ -23,94 +23,6 @@ id="title3072">Logo Dolibarr ERP-CRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Dolibarr - - - - - Dolibarr - - - - @@ -418,18 +188,18 @@ ERP/CRM + + + + Logo Dolibarr ERP-CRM + + + + + + + + + + + image/svg+xml + + Logo Dolibarr ERP-CRM + + + + Laurent Destailleur + + + + + Laurent Destailleur + + + + + + + + + + + + + + + Store + + + + + + + diff --git a/htdocs/theme/eldy/dropdown.inc.php b/htdocs/theme/eldy/dropdown.inc.php index 49f910f50da..479bb3f889b 100644 --- a/htdocs/theme/eldy/dropdown.inc.php +++ b/htdocs/theme/eldy/dropdown.inc.php @@ -9,7 +9,7 @@ button.dropdown-item.global-search-item { outline: none; } -.open>.dropdown-search, .open>.dropdown-bookmark, .open>.dropdown-menu, .dropdown dd ul.open { +.open>.dropdown-search, .open>.dropdown-bookmark, .open>.dropdown-quickadd, .open>.dropdown-menu, .dropdown dd ul.open { display: block; } @@ -59,6 +59,29 @@ button.dropdown-item.global-search-item { -webkit-box-shadow: 0 6px 12px rgba(0,0,0,.175); box-shadow: 0 6px 12px rgba(0,0,0,.175); } +.dropdown-quickadd { + border-color: #eee; + + position: absolute; + top: 100%; + left: 0; + z-index: 1000; + display: none; + float: left; + min-width: 240px; + margin: 2px 0 0; + font-size: 14px; + text-align: left; + list-style: none; + background-color: #fff; + -webkit-background-clip: padding-box; + background-clip: padding-box; + border: 1px solid #ccc; + border: 1px solid rgba(0,0,0,.15); + border-radius: 4px; + -webkit-box-shadow: 0 6px 12px rgba(0,0,0,.175); + box-shadow: 0 6px 12px rgba(0,0,0,.175); +} .dropdown-menu { border-color: #eee; @@ -163,7 +186,7 @@ button.dropdown-item.global-search-item { max-width: 100%; } -div#topmenu-global-search-dropdown, div#topmenu-bookmark-dropdown { +div#topmenu-global-search-dropdown, div#topmenu-bookmark-dropdown, div#topmenu-quickadd-dropdown { global->THEME_TOPMENU_DISABLE_IMAGE)) { ?> line-height: 46px; @@ -383,6 +406,58 @@ a.top-menu-dropdown-link { display: none !important; } +/* + * QUICK ADD + */ +#topmenu-quickadd-dropdown .dropdown-menu { + width: 300px !important; + color: #444; +} + +.quickadd-header { + color: #444 !important; +} + +div.quickadd { + display: -ms-flexbox; + display: -webkit-flex; + display: flex; + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + -webkit-justify-content: center; + -ms-flex-pack: center; + justify-content: center; + -webkit-align-content: center; + -ms-flex-line-pack: center; + align-content: center; + -webkit-align-items: flex-start; + -ms-flex-align: start; + align-items: flex-start; +} + +div.quickadd a { + color: #444; +} + +div.quickadd a:hover, div.quickadd a:active { + color: #000000; +} + +div.quickaddblock { + width: 80px; + display: block ruby; +} + +div.quickaddblock:hover, +div.quickaddblock:active, +div.quickaddblock:focus { + background: ; +} + /* smartphone */ @media only screen and (max-width: 767px) { diff --git a/htdocs/theme/eldy/global.inc.php b/htdocs/theme/eldy/global.inc.php index d46bd839958..fa423f676f2 100644 --- a/htdocs/theme/eldy/global.inc.php +++ b/htdocs/theme/eldy/global.inc.php @@ -17,8 +17,10 @@ --colorbacklinepair2: rgb(); --colorbacklinepairhover: rgb(); --colorbacklinepairchecked: rgb(); + --colorbacklinebreak: rgb(); --colorbackbody: rgb(); --colortexttitlenotab: rgb(); + --colortexttitlenotab2: rgb(); --colortexttitle: rgb(); --colortext: rgb(); --colortextlink: rgb(); @@ -30,7 +32,7 @@ --tooltipbgcolor: ; --tooltipfontcolor : ; --oddevencolor: #202020; - --colorboxstatsborder: #ddd; + --colorboxstatsborder: #e0e0e0; --dolgraphbg: rgba(255,255,255,0); --fieldrequiredcolor: #000055; --colortextbacktab: #; @@ -61,6 +63,7 @@ if (!empty($conf->global->MAIN_THEME_DARKMODEENABLED)) { --colorbackbody: #1d1e20; --tooltipbgcolor: #2b2d2f; --colortexttitlenotab: rgb(220,220,220); + --colortexttitlenotab2: rgb(220,220,220); --colortexttitle: rgb(220,220,220); --colortext: rgb(220,220,220); --colortextlink: #4390dc; @@ -149,7 +152,7 @@ input[name=duration_value] { margin-right: 4px; } -input[type=submit] { +input[type=submit], input[type=submit]:hover { margin-left: 5px; } input, input.flat, form.flat select, select, select.flat, .dataTables_length label select { @@ -210,7 +213,9 @@ textarea.cke_source:focus { box-shadow: none; } - +div#cke_dp_desc { + margin-top: 5px; +} textarea { border-radius: 0; border-top:solid 1px rgba(0,0,0,.2); @@ -238,6 +243,8 @@ input.buttongen { input.buttonpayment, button.buttonpayment, div.buttonpayment { min-width: 290px; margin-bottom: 15px; + margin-top: 15px; + height: 60px; background-image: none; line-height: 24px; padding: 8px; @@ -249,6 +256,8 @@ input.buttonpayment, button.buttonpayment, div.buttonpayment { box-shadow: 1px 1px 4px #bbb; color: #fff; border-radius: 4px; + cursor: pointer; + max-width: 350px; } div.buttonpayment input:focus { color: #008; @@ -409,7 +418,7 @@ div#moretabsList, div#moretabsListaction { hr { border: 0; border-top: 1px solid #ccc; } .tabBar hr { margin-top: 20px; margin-bottom: 17px; } -.button:not(.bordertransp), .buttonDelete:not(.bordertransp) { +.button:not(.bordertransp):not(.buttonpayment), .buttonDelete:not(.bordertransp):not(.buttonpayment) { margin-bottom: 0; margin-top: 0; margin-left: 5px; @@ -536,6 +545,9 @@ textarea.centpercent { color: #777; } +.flip { + transform: scaleX(-1); +} .center { text-align: center; margin: 0px auto; @@ -655,13 +667,15 @@ body[class*="colorblind-"] .text-success{ color : } -.editfielda span.fa-pencil-alt, .editfielda span.fa-trash, .editfieldlang { +.editfielda span.fa-pencil-alt, .editfielda span.fa-pencil-ruler, .editfielda span.fa-trash, .editfieldlang { color: #ccc !important; } -.editfielda span.fa-pencil-alt:hover, .editfielda span.fa-trash:hover, .editfieldlang:hover { +.editfielda span.fa-pencil-alt:hover, .editfielda span.fa-pencil-ruler:hover, .editfielda span.fa-trash:hover, .editfieldlang:hover { color: var(--colortexttitle) !important; } - +.fawidth30 { + width: 20px; +} .floatnone { float: none !important; } @@ -869,7 +883,7 @@ select.flat.selectlimit { max-width: 0; overflow: auto; } -.divintdwithtwolinesmax { +.divintowithtwolinesmax { width: 75px; display: -webkit-box; -webkit-box-orient: vertical; @@ -1015,9 +1029,11 @@ table[summary="list_of_modules"] .fa-cog { .clearboth { clear:both; } .hideobject { display: none; } .minwidth50 { min-width: 50px; } +.minwidth75 { min-width: 75px; } /* rule for not too small screen only */ @media only screen and (min-width: global->THEME_ELDY_WITDHOFFSET_FOR_REDUC3) ? round($nbtopmenuentries * 47, 0) + 130 : $conf->global->THEME_ELDY_WITDHOFFSET_FOR_REDUC3; ?>px) { + .width20 { width: 20px; } .width25 { width: 25px; } .width50 { width: 50px; } .width75 { width: 75px; } @@ -1039,6 +1055,7 @@ table[summary="list_of_modules"] .fa-cog { .minwidth500imp { min-width: 500px !important; } } .widthauto { width: auto; } +.width20 { width: 20px; } .width25 { width: 25px; } .width50 { width: 50px; } .width75 { width: 75px; } @@ -1123,6 +1140,22 @@ table[summary="list_of_modules"] .fa-cog { padding-left: 5px; padding-right: 5px; } + + .hideonsmartphone { display: none; } + .hideonsmartphoneimp { display: none !important; } + + span.pictotitle { + margin-: 0 !important; + } + div.fiche>table.table-fiche-title { + margin-top: 7px !important; + margin-bottom: 15px !important; + } + + select.minwidth100imp, select.minwidth100, select.minwidth200, .widthcentpercentminusx { + width: calc(100% - 30px) !important; + display: inline-block; + } } /* Force values for small screen 570 */ @@ -1131,6 +1164,10 @@ table[summary="list_of_modules"] .fa-cog { body { font-size: ; } + + .box-flex-item { + margin: 3px 2px 3px 2px !important; + } div.refidno { font-size: !important; } @@ -1154,6 +1191,18 @@ table[summary="list_of_modules"] .fa-cog { text-overflow: ellipsis; white-space: nowrap; } + .tdoverflowmax100onsmartphone { /* For tdoverflow, the max-midth become a minimum ! */ + max-width: 100px; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; + } + .tdoverflowmax150onsmartphone { /* For tdoverflow, the max-midth become a minimum ! */ + max-width: 100px; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; + } .border tbody tr, .border tbody tr td, div.tabBar table.border tr, div.tabBar table.border tr td, div.tabBar div.border .table-border-row, div.tabBar div.border .table-key-border-col, div.tabBar div.border .table-val-border-col { height: 40px !important; } @@ -1180,8 +1229,6 @@ table[summary="list_of_modules"] .fa-cog { max-width: 138px; /* length of input text in the quick search box when using a smartphone and without dolidroid */ } - .hideonsmartphone { display: none; } - .hideonsmartphoneimp { display: none !important; } .noenlargeonsmartphone { width : 50px !important; display: inline !important; } .maxwidthonsmartphone, #search_newcompany.ui-autocomplete-input { max-width: 100px; } .maxwidth50onsmartphone { max-width: 40px; } @@ -1294,7 +1341,7 @@ td.showDragHandle { #id-left { padding-top: 20px; padding-bottom: 5px; - global->MAIN_USE_TOP_MENU_SEARCH_DROPDOWN)) { ?> + global->MAIN_USE_TOP_MENU_SEARCH_DROPDOWN) && ! empty($conf->global->MAIN_USE_TOP_MENU_QUICKADD_DROPDOWN)) { ?> padding-top: 8px; } @@ -1460,10 +1507,10 @@ body.onlinepaymentbody div.fiche { /* For online payment page */ margin: 20px !important; } div.fiche>table:first-child { - margin-bottom: 15px !important; + margin-bottom: 15px; } div.fiche>table.table-fiche-title { - margin-bottom: 7px !important; + margin-bottom: 7px; } div.fichecenter { width: 100%; @@ -1579,7 +1626,7 @@ div.nopadding { } td.nobordernopadding.widthpictotitle.col-picto { - color: var(--colortexttitlenotab); + color: #bbb; opacity: 0.85; } .table-list-of-attached-files .col-picto, .table-list-of-links .col-picto { @@ -1591,16 +1638,21 @@ td.nobordernopadding.widthpictotitle.col-picto { width: unset; color: #999; } + +span.widthpictotitle.pictotitle { + /* background: rgba(70, 3, 62, 0.5); */ + background: var(--colortexttitlenotab); + opacity: 0.8; + color: #fff !important; + padding: 7px; + border-radius: 2px; + min-width: 30px; + text-align: center; +} .pictotitle { margin-: 8px; /* margin-bottom: 4px; */ } -@media only screen and (max-width: 767px) -{ - span.pictotitle { - margin-: 0 !important; - } -} .pictoobjectwidth { width: 14px; } @@ -1681,6 +1733,7 @@ div.statusref { margin-top: 8px; margin-bottom: 10px; clear: both; + text-align: right; } div.statusref img { padding-left: 8px; @@ -1724,7 +1777,7 @@ img.photorefnoborder { border-bottom: px solid rgb(); /* border-bottom: 2px solid var(--colorbackhmenu1); */ } -.trextrafieldseparator td { +.trextrafieldseparator td, .trextrafields_collapse_last td { /* border-bottom: 2px solid var(--colorbackhmenu1) !important; */ border-bottom: 2px solid rgb() !important; } @@ -1874,8 +1927,8 @@ div.tmenuleft } div.tmenucenter { - padding-left: 0px; - padding-right: 3px; + padding-left: 2px; + padding-right: 2px; padding-top: 8px; height: 26px; @@ -2068,9 +2121,7 @@ a.tmenuimage:hover{ print 'div.mainmenu.'.$val.'::before { content: "\f249"; }'."\n"; - } - else - { + } else { print "/* A mainmenu entry was found but img file ".$val.".png not found (check /".$val."/img/".$val.".png), so we use a generic one */\n"; $url = dol_buildpath($path.'/theme/'.$theme.'/img/menus/generic'.(min($generic, 4))."_over.png", 1); print "div.mainmenu.".$val." {\n"; @@ -2078,9 +2129,7 @@ a.tmenuimage:hover{ print "}\n"; } $generic++; - } - else - { + } else { print "div.mainmenu.".$val." {\n"; print " background-image: url(".$url.");\n"; print "}\n"; @@ -2637,7 +2686,7 @@ div.tabBar.tabBarNoTop { /* tabBar used for creation/update/send forms */ div.tabBarWithBottom { padding-bottom: 18px; - border-bottom: 1px solid #aaa; + border-bottom: 1px solid #bbb; } div.tabBarWithBottom tr { background: unset !important; @@ -2696,9 +2745,15 @@ a.tabTitle { text-decoration: none; white-space: nowrap; } +.tabTitleText { + display: none; +} .imgTabTitle { max-height: 14px; } +div.tabs div.tabsElem:first-of-type a.tab { + margin-left: 0px !important; +} a.tabunactive { color: var(--colortextlink) !important; @@ -3262,7 +3317,7 @@ td.evenodd, tr.nohoverpair td, #trlinefordates td { .trforbreak td { font-weight: 500; border-bottom: 1pt solid black !important; - /* background-color: # !important; */ + background-color: var(--colorbacklinebreak) !important; } .trforbreak.nobold td a, .trforbreak.nobold span.secondary { font-weight: normal !important; @@ -3355,6 +3410,7 @@ tr.liste_titre th, th.liste_titre, tr.liste_titre td, td.liste_titre, form.liste } tr.liste_titre th a, th.liste_titre a, tr.liste_titre td a, td.liste_titre a, form.liste_titre div a, div.liste_titre a { text-shadow: none !important; + color: rgb(); } tr.liste_titre_topborder td { border-top-width: px; @@ -3530,7 +3586,7 @@ ul.noborder li:nth-child(even):not(.liste_titre) { background: var(--colorbackbody); border: 1px solid var(--colorboxstatsborder); border-left: 6px solid var(--colorboxstatsborder); - box-shadow: 1px 1px 8px var(--colorboxstatsborder); + /* box-shadow: 1px 1px 8px var(--colorboxstatsborder); */ border-radius: 0px; } .boxstats, .boxstats130, .boxstatscontent { @@ -3572,8 +3628,25 @@ ul.noborder li:nth-child(even):not(.liste_titre) { margin-right: 8px; } + @media only screen and (max-width: 767px) { + div.tabs { + padding-left: 0 !important; + padding-right: 0!important; + margin-left: 0 !important; + margin-right: 0 !important; + } + + a.tab:link, a.tab:visited, a.tab:hover, a.tab#active { + padding: 12px 12px 13px; + } + a.tmenu:link, a.tmenu:visited, a.tmenu:hover, a.tmenu:active { + padding: 0px 0px 0px 0px; + } + a.tmenusel:link, a.tmenusel:visited, a.tmenusel:hover, a.tmenusel:active { + padding: 0px 0px 0px 0px; + } .boxstats, .boxstats130 { margin: 3px; } @@ -3609,7 +3682,7 @@ ul.noborder li:nth-child(even):not(.liste_titre) { box-shadow: 0px 0px 8px 0px rgba(0,0,0,0.20); } span.boxstatstext { - opacity: 0.7; + opacity: 0.5; line-height: 18px; color: var(--colortext); } @@ -3766,7 +3839,7 @@ div.info { padding-bottom: 8px; margin: 1em 0em 1em 0em; background: #eff8fc; - color: #666; + color: #558; } /* Warning message */ @@ -3842,7 +3915,7 @@ div.boximport { .fieldrequired { font-weight: bold; color: var(--fieldrequiredcolor); } -.widthpictotitle { width: 26px; text-align: ; } +td.widthpictotitle { width: 26px; text-align: ; } span.widthpictotitle { font-size: 1.7em; }; .dolgraphtitle { margin-top: 6px; margin-bottom: 4px; } @@ -3906,9 +3979,14 @@ div.titre { padding-top: 5px; padding-bottom: 5px; } -div.titre, .secondary { - font-family: ; - color: var(--colortexttitlenotab); +.secondary, div.titre { + color: var(--colortexttitlenotab); +} +.tertiary { + color: var(--colortexttitlenotab2); +} +table.table-fiche-title:first-of-type div { + color: var(--colortexttitlenotab); } table.table-fiche-title .col-title div.titre{ @@ -4856,7 +4934,7 @@ ul.ecmjqft li { ul.ecmjqft a { line-height: 24px; vertical-align: middle; - color: #333; + color: unset; padding: 0px 0px; font-weight:normal; display: inline-block !important; @@ -6298,7 +6376,9 @@ div.tabsElem a.tab { div.login_block_user, div.login_block_other { clear: both; } .atoplogin, .atoplogin:hover { - color: #000 !important; + color:unset !important; + padding-left: 4px; + padding-right: 4px; } .login_block_elem { padding: 0 !important; @@ -6332,7 +6412,6 @@ div.tabsElem a.tab { word-break: break-word; } .badge { - line-height: 1.2em; min-width: auto; font-size: 12px; } diff --git a/htdocs/theme/eldy/img/object_geoip.png b/htdocs/theme/eldy/img/object_geoip.png new file mode 100644 index 00000000000..dcf80a67e65 Binary files /dev/null and b/htdocs/theme/eldy/img/object_geoip.png differ diff --git a/htdocs/theme/eldy/info-box.inc.php b/htdocs/theme/eldy/info-box.inc.php index 0473cb15584..2b734f037b3 100644 --- a/htdocs/theme/eldy/info-box.inc.php +++ b/htdocs/theme/eldy/info-box.inc.php @@ -6,14 +6,20 @@ if (!defined('ISLOADEDBYSTEELSHEET')) die('Must be call by steelsheet'); ?> * Component: Info Box * ------------------- */ + +.info-box-module-external span.info-box-icon-version { + background: #bbb; +} + .info-box { display: block; position: relative; min-height: 90px; - background: #fff; + /* background: #fff; */ width: 100%; - box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.2), 0px 0px 2px rgba(0, 0, 0, 0.1); - border-radius: 2px; + box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.1); + border-radius: 2px; + border: 1px solid #eee; margin-bottom: 15px; } .info-box.info-box-sm{ @@ -62,22 +68,25 @@ if (!defined('ISLOADEDBYSTEELSHEET')) die('Must be call by steelsheet'); ?> text-align: center; font-size: 45px; line-height: 90px; - background: rgba(0, 0, 0, 0.2); + background: rgba(0, 0, 0, 0.08) !important } .info-box-sm .info-box-icon { height: 80px; width: 80px; font-size: 25px; + line-height: 100px; +} +.opened-dash-board-wrap .info-box-sm .info-box-icon { line-height: 80px; } .info-box-module .info-box-icon { - height: 106px; + height: 107px; } .info-box-icon > img { max-width: 100%; } .info-box-module .info-box-icon > img { - max-width: 55%; + max-width: 60%; } .info-box-icon-text{ @@ -166,6 +175,7 @@ if (!defined('ISLOADEDBYSTEELSHEET')) die('Must be call by steelsheet'); ?> .info-box-title{ text-transform: uppercase; font-weight: bold; + padding-bottom: 4px; } .info-box-text{ font-size: 0.92em; @@ -194,12 +204,11 @@ if (!empty($conf->global->THEME_INFOBOX_COLOR_ON_BACKGROUND)) $prefix = 'backgro if (!isset($conf->global->THEME_AGRESSIVENESS_RATIO) && $prefix) $conf->global->THEME_AGRESSIVENESS_RATIO = -50; if (GETPOSTISSET('THEME_AGRESSIVENESS_RATIO')) $conf->global->THEME_AGRESSIVENESS_RATIO = GETPOST('THEME_AGRESSIVENESS_RATIO', 'int'); //var_dump($conf->global->THEME_AGRESSIVENESS_RATIO); + ?> .info-box-icon { color: #fff !important; - - background-color: #eee !important; opacity: 0.95; } @@ -226,7 +235,7 @@ if (GETPOSTISSET('THEME_AGRESSIVENESS_RATIO')) $conf->global->THEME_AGRESSIVENES .bg-infobox-bank_account{ color: global->THEME_AGRESSIVENESS_RATIO); ?> !important; } -.bg-infobox-adherent{ +.bg-infobox-adherent, .bg-infobox-member { color: global->THEME_AGRESSIVENESS_RATIO); ?> !important; } .bg-infobox-expensereport{ @@ -264,7 +273,7 @@ if (GETPOSTISSET('THEME_AGRESSIVENESS_RATIO')) $conf->global->THEME_AGRESSIVENES .fa-dol-bank_account:before { content: "\f19c"; } -.fa-dol-adherent:before { +.fa-dol-member:before { content: "\f0c0"; } .fa-dol-expensereport:before { @@ -305,8 +314,8 @@ if (GETPOSTISSET('THEME_AGRESSIVENESS_RATIO')) $conf->global->THEME_AGRESSIVENES display: flex; /* or inline-flex */ flex-direction: row; flex-wrap: wrap; - width: 100%; - margin: 0 0 0 -8px; + width: calc(100% + 14px); + margin: 0 -8px 0 -8px; /*justify-content: space-between;*/ } @@ -339,7 +348,8 @@ if (GETPOSTISSET('THEME_AGRESSIVENESS_RATIO')) $conf->global->THEME_AGRESSIVENES @media only screen and (max-width: 767px) { .box-flex-container { - margin: 0 0 0 0 !important; + margin: 0 0 0 0px !important; + width: 100% !important; } .info-box-module { diff --git a/htdocs/theme/eldy/main_menu_fa_icons.inc.php b/htdocs/theme/eldy/main_menu_fa_icons.inc.php index e2cd9d339c5..c344838458d 100644 --- a/htdocs/theme/eldy/main_menu_fa_icons.inc.php +++ b/htdocs/theme/eldy/main_menu_fa_icons.inc.php @@ -8,7 +8,7 @@ font-style: normal; font-variant: normal; text-rendering: auto; - line-height: 26px; + line-height: 23px; font-size: ; -webkit-font-smoothing: antialiased; text-align:center; @@ -145,7 +145,7 @@ div.mainmenu.generic4::before { /* Define color of some picto */ -.fa-phone, .fa-fax { +.fa-phone, .fa-mobile-alt, .fa-fax { opacity: 0.5; color: #440; } diff --git a/htdocs/theme/eldy/manifest.json.php b/htdocs/theme/eldy/manifest.json.php index a4fc5c3618e..bc6262d1a92 100644 --- a/htdocs/theme/eldy/manifest.json.php +++ b/htdocs/theme/eldy/manifest.json.php @@ -46,7 +46,7 @@ if (!empty($conf->global->MAIN_APPLICATION_TITLE)) $appli = $conf->global->MAIN_ "name": "", "icons": [ { - "src": "", + "src": "", "sizes": "256x256", "type": "image/png" } diff --git a/htdocs/theme/eldy/progress.inc.php b/htdocs/theme/eldy/progress.inc.php index b0bd96df1d2..71f25ff35ba 100644 --- a/htdocs/theme/eldy/progress.inc.php +++ b/htdocs/theme/eldy/progress.inc.php @@ -123,7 +123,7 @@ if (!defined('ISLOADEDBYSTEELSHEET')) die('Must be call by steelsheet'); ?> width: 3px; } .progress-group .progress-text { - font-weight: 600; + /* font-weight: 600; */ } .progress-group .progress-number { float: right; diff --git a/htdocs/theme/eldy/style.css.php b/htdocs/theme/eldy/style.css.php index 39fcd003335..fa6ce2caa08 100644 --- a/htdocs/theme/eldy/style.css.php +++ b/htdocs/theme/eldy/style.css.php @@ -128,6 +128,7 @@ $colorbacklinebreak = empty($user->conf->THEME_ELDY_ENABLE_PERSONALIZED) ? (emp $colorbackbody = empty($user->conf->THEME_ELDY_ENABLE_PERSONALIZED) ? (empty($conf->global->THEME_ELDY_BACKBODY) ? $colorbackbody : $conf->global->THEME_ELDY_BACKBODY) : (empty($user->conf->THEME_ELDY_BACKBODY) ? $colorbackbody : $user->conf->THEME_ELDY_BACKBODY); $colortexttitlenotab = empty($user->conf->THEME_ELDY_ENABLE_PERSONALIZED) ? (empty($conf->global->THEME_ELDY_TEXTTITLENOTAB) ? $colortexttitlenotab : $conf->global->THEME_ELDY_TEXTTITLENOTAB) : (empty($user->conf->THEME_ELDY_TEXTTITLENOTAB) ? $colortexttitlenotab : $user->conf->THEME_ELDY_TEXTTITLENOTAB); $colortexttitle = empty($user->conf->THEME_ELDY_ENABLE_PERSONALIZED) ? (empty($conf->global->THEME_ELDY_TEXTTITLE) ? $colortexttitle : $conf->global->THEME_ELDY_TEXTTITLE) : (empty($user->conf->THEME_ELDY_TEXTTITLE) ? $colortexttitle : $user->conf->THEME_ELDY_TEXTTITLE); +$colortexttitlelink = empty($user->conf->THEME_ELDY_ENABLE_PERSONALIZED) ? (empty($conf->global->THEME_ELDY_TEXTTITLELINK) ? $colortexttitlelink : $conf->global->THEME_ELDY_TEXTTITLELINK) : (empty($user->conf->THEME_ELDY_TEXTTITLELINK) ? $colortexttitlelink : $user->conf->THEME_ELDY_TEXTTITLELINK); $colortext = empty($user->conf->THEME_ELDY_ENABLE_PERSONALIZED) ? (empty($conf->global->THEME_ELDY_TEXT) ? $colortext : $conf->global->THEME_ELDY_TEXT) : (empty($user->conf->THEME_ELDY_TEXT) ? $colortext : $user->conf->THEME_ELDY_TEXT); $colortextlink = empty($user->conf->THEME_ELDY_ENABLE_PERSONALIZED) ? (empty($conf->global->THEME_ELDY_TEXTLINK) ? $colortextlink : $conf->global->THEME_ELDY_TEXTLINK) : (empty($user->conf->THEME_ELDY_TEXTLINK) ? $colortextlink : $user->conf->THEME_ELDY_TEXTLINK); $fontsize = empty($user->conf->THEME_ELDY_ENABLE_PERSONALIZED) ? (empty($conf->global->THEME_ELDY_FONT_SIZE1) ? $fontsize : $conf->global->THEME_ELDY_FONT_SIZE1) : (empty($user->conf->THEME_ELDY_FONT_SIZE1) ? $fontsize : $user->conf->THEME_ELDY_FONT_SIZE1); @@ -153,24 +154,20 @@ else $colortextbackhmenu = '000000'; $colorbackvmenu1 = join(',', colorStringToArray($colorbackvmenu1)); // Normalize value to 'x,y,z' $tmppart = explode(',', $colorbackvmenu1); $tmpval = (!empty($tmppart[0]) ? $tmppart[0] : 0) + (!empty($tmppart[1]) ? $tmppart[1] : 0) + (!empty($tmppart[2]) ? $tmppart[2] : 0); -if ($tmpval <= 460) { $colortextbackvmenu = 'FFFFFF'; } -else { $colortextbackvmenu = '000000'; } +if ($tmpval <= 460) { $colortextbackvmenu = 'FFFFFF'; } else { $colortextbackvmenu = '000000'; } $colorbacktitle1 = join(',', colorStringToArray($colorbacktitle1)); // Normalize value to 'x,y,z' $tmppart = explode(',', $colorbacktitle1); if ($colortexttitle == '') { $tmpval = (!empty($tmppart[0]) ? $tmppart[0] : 0) + (!empty($tmppart[1]) ? $tmppart[1] : 0) + (!empty($tmppart[2]) ? $tmppart[2] : 0); - if ($tmpval <= 460) { $colortexttitle = 'FFFFFF'; $colorshadowtitle = '888888'; } - else { $colortexttitle = '000000'; $colorshadowtitle = 'FFFFFF'; } -} -else $colorshadowtitle = '888888'; + if ($tmpval <= 460) { $colortexttitle = 'FFFFFF'; $colorshadowtitle = '888888'; } else { $colortexttitle = '000000'; $colorshadowtitle = 'FFFFFF'; } +} else $colorshadowtitle = '888888'; $colorbacktabcard1 = join(',', colorStringToArray($colorbacktabcard1)); // Normalize value to 'x,y,z' $tmppart = explode(',', $colorbacktabcard1); $tmpval = (!empty($tmppart[0]) ? $tmppart[0] : 0) + (!empty($tmppart[1]) ? $tmppart[1] : 0) + (!empty($tmppart[2]) ? $tmppart[2] : 0); -if ($tmpval <= 460) { $colortextbacktab = 'FFFFFF'; } -else { $colortextbacktab = '000000'; } +if ($tmpval <= 460) { $colortextbacktab = 'FFFFFF'; } else { $colortextbacktab = '000000'; } // Format color value to match expected format (may be 'FFFFFF' or '255,255,255') @@ -202,7 +199,7 @@ $disableimages = 0; $maxwidthloginblock = 180; if (!empty($conf->global->THEME_TOPMENU_DISABLE_IMAGE)) { $disableimages = 1; $maxwidthloginblock = $maxwidthloginblock + 50; $minwidthtmenu = 0; } - +if (!empty($conf->global->MAIN_USE_TOP_MENU_QUICKADD_DROPDOWN)) { $maxwidthloginblock = $maxwidthloginblock + 55; } if (!empty($conf->global->MAIN_USE_TOP_MENU_SEARCH_DROPDOWN)) { $maxwidthloginblock = $maxwidthloginblock + 55; } if (!empty($conf->bookmark->enabled)) { $maxwidthloginblock = $maxwidthloginblock + 55; } diff --git a/htdocs/theme/eldy/theme_vars.inc.php b/htdocs/theme/eldy/theme_vars.inc.php index f6324f0146f..5d7cc0faa18 100644 --- a/htdocs/theme/eldy/theme_vars.inc.php +++ b/htdocs/theme/eldy/theme_vars.inc.php @@ -40,9 +40,7 @@ if (!defined('ISLOADEDBYSTEELSHEET')) // File is run after an include of a php p 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 - { + } 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)); } @@ -53,7 +51,7 @@ $theme_bgcolor = array(hexdec('F4'), hexdec('F4'), hexdec('F4')); $theme_bgcoloronglet = array(hexdec('DE'), hexdec('E7'), hexdec('EC')); // Colors -$colorbackhmenu1 = '55,61,90'; // topmenu +$colorbackhmenu1 = '38,60,92'; // topmenu $colorbackvmenu1 = '250,250,250'; // vmenu $colortopbordertitle1 = '215,215,215'; // top border of title $colorbacktitle1 = '233,234,237'; // title of tables,list @@ -65,22 +63,24 @@ $colorbacklinepair1 = '251,251,251'; // line pair $colorbacklinepair2 = '251,251,251'; // line pair $colorbacklinepairhover = '230,237,244'; // line hover $colorbacklinepairchecked = '230,237,244'; // line checked -$colorbacklinebreak = '233,228,230'; // line break +$colorbacklinebreak = '248,247,244'; // line break $colorbackbody = '255,255,255'; -$colortexttitlenotab = '0,113,120'; // 150,90,121 140,80,10 or 10,140,80 #875a7b green=0,113,120, violet: 0,50,120 +$colortexttitlenotab = '0,123,140'; // 150,90,121 140,80,10 or 10,140,80 #875a7b green=0,113,120, violet: 0,50,120 +$colortexttitlenotab2 = '100,0,100'; // 150,90,121 140,80,10 or 10,140,80 #875a7b green=0,113,120, violet: 0,50,120 $colortexttitle = '0,0,0'; +$colortexttitlelink = '10, 20, 100'; $colortext = '0,0,0'; $colortextlink = '10, 20, 100'; $fontsize = '0.86em'; $fontsizesmaller = '0.75em'; -$topMenuFontSize = '1.2em'; +$topMenuFontSize = '1.1em'; $toolTipBgColor = 'rgba(255, 255, 255, 0.96)'; $toolTipFontColor = '#333'; // text color $textSuccess = '#28a745'; $colorblind_deuteranopes_textSuccess = '#37de5d'; -$textWarning = '#a37c0d'; // See $badgeWarning +$textWarning = '#bc9526'; // See $badgeWarning $textDanger = '#9f4705'; // See $badgeDanger $colorblind_deuteranopes_textWarning = $textWarning; // currently not tested with a color blind people so use default color @@ -89,7 +89,7 @@ $colorblind_deuteranopes_textWarning = $textWarning; // currently not tested wit $badgePrimary = '#007bff'; $badgeSecondary = '#cccccc'; $badgeSuccess = '#55a580'; -$badgeWarning = '#a37c0d'; // See $textDanger bc9526 +$badgeWarning = '#bc9526'; // See $textWarning bc9526 $badgeDanger = '#9f4705'; // See $textDanger $badgeInfo = '#aaaabb'; $badgeDark = '#343a40'; diff --git a/htdocs/theme/eldy/thumb.png b/htdocs/theme/eldy/thumb.png index 47ddbfe36d1..6d385ae4c03 100644 Binary files a/htdocs/theme/eldy/thumb.png and b/htdocs/theme/eldy/thumb.png differ diff --git a/htdocs/theme/eldy/timeline.inc.php b/htdocs/theme/eldy/timeline.inc.php index 21e683e42f0..eb13821c221 100644 --- a/htdocs/theme/eldy/timeline.inc.php +++ b/htdocs/theme/eldy/timeline.inc.php @@ -154,7 +154,7 @@ a.timeline-btn:hover border-radius: 50%; text-align: center; left: 18px; - top: 0; + top: 5px; } .timeline > .time-label > span { font-weight: 600; diff --git a/htdocs/theme/md/img/object_geoip.png b/htdocs/theme/md/img/object_geoip.png new file mode 100644 index 00000000000..dcf80a67e65 Binary files /dev/null and b/htdocs/theme/md/img/object_geoip.png differ diff --git a/htdocs/theme/md/info-box.inc.php b/htdocs/theme/md/info-box.inc.php index d9b467f130b..f2a2a8b810d 100644 --- a/htdocs/theme/md/info-box.inc.php +++ b/htdocs/theme/md/info-box.inc.php @@ -2,23 +2,68 @@ if (!defined('ISLOADEDBYSTEELSHEET')) die('Must be call by steelsheet'); ?> /*